<?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>127382</bug_id>
          
          <creation_ts>2014-01-21 16:35:43 -0800</creation_ts>
          <short_desc>Remove CSS Custom Filters code and tests</short_desc>
          <delta_ts>2014-01-23 14:26:54 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Max Vujovic">mvujovic</reporter>
          <assigned_to name="Max Vujovic">mvujovic</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>benjamin</cc>
    
    <cc>bunhere</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>dstockwell</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>japhet</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>luiz</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>noam</cc>
    
    <cc>rakuco</cc>
    
    <cc>roger_fong</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>zeno</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>970477</commentid>
    <comment_count>0</comment_count>
    <who name="Max Vujovic">mvujovic</who>
    <bug_when>2014-01-21 16:35:43 -0800</bug_when>
    <thetext>Context: https://lists.webkit.org/pipermail/webkit-dev/2014-January/026098.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970480</commentid>
    <comment_count>1</comment_count>
      <attachid>221807</attachid>
    <who name="Max Vujovic">mvujovic</who>
    <bug_when>2014-01-21 16:38:55 -0800</bug_when>
    <thetext>Created attachment 221807
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970719</commentid>
    <comment_count>2</comment_count>
      <attachid>221870</attachid>
    <who name="Max Vujovic">mvujovic</who>
    <bug_when>2014-01-22 09:45:51 -0800</bug_when>
    <thetext>Created attachment 221870
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970901</commentid>
    <comment_count>3</comment_count>
      <attachid>221913</attachid>
    <who name="Max Vujovic">mvujovic</who>
    <bug_when>2014-01-22 15:12:11 -0800</bug_when>
    <thetext>Created attachment 221913
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970933</commentid>
    <comment_count>4</comment_count>
      <attachid>221922</attachid>
    <who name="Max Vujovic">mvujovic</who>
    <bug_when>2014-01-22 16:36:07 -0800</bug_when>
    <thetext>Created attachment 221922
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971244</commentid>
    <comment_count>5</comment_count>
      <attachid>222006</attachid>
    <who name="Max Vujovic">mvujovic</who>
    <bug_when>2014-01-23 11:14:31 -0800</bug_when>
    <thetext>Created attachment 222006
Patch

Rebased. Added ChangeLog. One more run through the bots. efl-wk2 failure looks unrelated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971328</commentid>
    <comment_count>6</comment_count>
      <attachid>222006</attachid>
    <who name="Max Vujovic">mvujovic</who>
    <bug_when>2014-01-23 13:53:14 -0800</bug_when>
    <thetext>Comment on attachment 222006
Patch

Setting cq+. efl-wk2 looks good now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971340</commentid>
    <comment_count>7</comment_count>
      <attachid>222006</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-23 14:26:50 -0800</bug_when>
    <thetext>Comment on attachment 222006
Patch

Clearing flags on attachment: 222006

Committed r162644: &lt;http://trac.webkit.org/changeset/162644&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971341</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-23 14:26:54 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221807</attachid>
            <date>2014-01-21 16:38:55 -0800</date>
            <delta_ts>2014-01-22 09:45:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>127382-1.patch</filename>
            <type>text/plain</type>
            <size>1338826</size>
            <attacher name="Max Vujovic">mvujovic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10
ZXN0LWhlbHBlcnMuanMgYi9MYXlvdXRUZXN0cy9hbmltYXRpb25zL3Jlc291cmNlcy9hbmltYXRp
b24tdGVzdC1oZWxwZXJzLmpzCmluZGV4IDgxZmFmODAuLmE3MjNiNGEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10ZXN0LWhlbHBlcnMuanMK
KysrIGIvTGF5b3V0VGVzdHMvYW5pbWF0aW9ucy9yZXNvdXJjZXMvYW5pbWF0aW9uLXRlc3QtaGVs
cGVycy5qcwpAQCAtMTQ3LDE4ICsxNDcsMTMgQEAgZnVuY3Rpb24gcGFyc2VGaWx0ZXJJbWFnZShz
KQogCiBmdW5jdGlvbiBwYXJzZUZpbHRlckZ1bmN0aW9uTGlzdChzKQogewotICAgIHZhciByZWcg
PSAvXCkqXHMqKGJsdXJ8YnJpZ2h0bmVzc3xjb250cmFzdHxjdXN0b218ZHJvcFwtc2hhZG93fGdy
YXlzY2FsZXxodWVcLXJvdGF0ZXxpbnZlcnR8b3BhY2l0eXxzYXR1cmF0ZXxzZXBpYXx1cmwpXCgv
CisgICAgdmFyIHJlZyA9IC9cKSpccyooYmx1cnxicmlnaHRuZXNzfGNvbnRyYXN0fGRyb3BcLXNo
YWRvd3xncmF5c2NhbGV8aHVlXC1yb3RhdGV8aW52ZXJ0fG9wYWNpdHl8c2F0dXJhdGV8c2VwaWF8
dXJsKVwoLwogICAgIHZhciBtYXRjaGVzID0gcy5zcGxpdChyZWcpOwogCiAgICAgLy8gRmlyc3Qg
aXRlbSBtdXN0IGJlIGVtcHR5LiBBbGwgb3RoZXIgaXRlbXMgYXJlIG9mIGZ1bmN0aW9uTmFtZSwg
ZnVuY3Rpb25WYWx1ZS4KICAgICBpZiAoIW1hdGNoZXMgfHwgbWF0Y2hlcy5zaGlmdCgpICE9ICIi
KQogICAgICAgICByZXR1cm4gbnVsbDsKIAotICAgIC8vIFJlZ0V4IGFib3ZlIGNhbiBub3QgaGFu
ZGxlIGRlcHJlY2F0ZWQgY3VzdG9tKCkgZnVuY3Rpb24KLSAgICB2YXIgY3VzdG9tUG9zID0gbWF0
Y2hlcy5pbmRleE9mKCJjdXN0b20iKTsKLSAgICBpZiAoY3VzdG9tUG9zID49IDAgJiYgbWF0Y2hl
c1tjdXN0b21Qb3MrMV0gPT09ICIiKQotICAgICAgICByZXR1cm4gcGFyc2VEZXByZWNhdGVkQ3Vz
dG9tRmlsdGVyRnVuY3Rpb24ocyk7Ci0KICAgICAvLyBPZGQgaXRlbXMgYXJlIHRoZSBmdW5jdGlv
biBuYW1lLCBldmVuIGl0ZW1zIHRoZSBmdW5jdGlvbiB2YWx1ZS4KICAgICBpZiAoIW1hdGNoZXMu
bGVuZ3RoIHx8IG1hdGNoZXMubGVuZ3RoICUgMikKICAgICAgICAgcmV0dXJuIG51bGw7CkBAIC0x
NzIsMzggKzE2NywxMiBAQCBmdW5jdGlvbiBwYXJzZUZpbHRlckZ1bmN0aW9uTGlzdChzKQogICAg
ICAgICAgICAgLy8gRklYTUU6IFN1cHBvcnQgcGFyc2luZyBvZiBkcm9wLXNoYWRvdy4KICAgICAg
ICAgICAgIGZ1bmN0aW9uTGlzdC5wdXNoKGZ1bmN0aW9uVmFsdWUpOwogICAgICAgICAgICAgY29u
dGludWU7Ci0gICAgICAgIH0gZWxzZSBpZiAoZnVuY3Rpb25OYW1lID09ICJjdXN0b20iKSB7Ci0g
ICAgICAgICAgICB2YXIgZmlsdGVyUGFyYW1zOwotICAgICAgICAgICAgaWYgKCF3aW5kb3cuZ2V0
Q3VzdG9tRmlsdGVyUGFyYW1ldGVycykKLSAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3Io
ImdldEN1c3RvbUZpbHRlclBhcmFtZXRlcnMgbm90IGZvdW5kLiBEaWQgeW91IGluY2x1ZGUgY3Vz
dG9tLWZpbHRlci1wYXJzZXIuanM/Iik7Ci0gICAgICAgICAgICB2YXIgZmlsdGVyUGFyYW1zID0g
Z2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhmdW5jdGlvblZhbHVlKTsKLSAgICAgICAgICAgIGlm
ICghZmlsdGVyUGFyYW1zKSB7Ci0gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcigiRXJyb3Ig
b24gcGFyc2luZyBjdXN0b20gZmlsdGVyIHBhcmFtZXRlcnMgIiwgZnVuY3Rpb25WYWx1ZSk7Ci0g
ICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBm
dW5jdGlvbkxpc3QucHVzaChmaWx0ZXJQYXJhbXMpOwotICAgICAgICAgICAgY29udGludWU7CiAg
ICAgICAgIH0KICAgICAgICAgZnVuY3Rpb25MaXN0LnB1c2gocGFyc2VGbG9hdChmdW5jdGlvblZh
bHVlKSk7CiAgICAgfQogICAgIHJldHVybiBmdW5jdGlvbkxpc3Q7CiB9CiAKLS8vIEZJWE1FOiBS
ZW1vdmUgZnVuY3Rpb24gYW5kIGNhbGxlciB3aGVuIHdlIHJlbW92ZWQgdGhlIGRlcHJlY2F0ZWQg
c3ludGF4IG9mCi0vLyB0aGUgY3VzdG9tIGZpbHRlciBmdW5jdGlvbi4KLWZ1bmN0aW9uIHBhcnNl
RGVwcmVjYXRlZEN1c3RvbUZpbHRlckZ1bmN0aW9uKHMpCi17Ci0gICAgdmFyIGZpbHRlclJlc3Vs
dCA9IHMubWF0Y2goLyhcdyspXCgoLispXCkvKTsKLSAgICB2YXIgZmlsdGVyUGFyYW1zID0gZmls
dGVyUmVzdWx0WzJdOwotCi0gICAgaWYgKGZpbHRlclJlc3VsdFsxXSAhPSAiY3VzdG9tIikKLSAg
ICAgICAgcmV0dXJuIG51bGw7Ci0KLSAgICBpZiAoIXdpbmRvdy5nZXRDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJzKQotICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImdldEN1c3RvbUZpbHRlclBhcmFtZXRl
cnMgbm90IGZvdW5kLiBEaWQgeW91IGluY2x1ZGUgY3VzdG9tLWZpbHRlci1wYXJzZXIuanM/Iik7
Ci0gICAgcmV0dXJuIFsiY3VzdG9tIiwgZ2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhmaWx0ZXJQ
YXJhbXMpXTsKLX0KLQogZnVuY3Rpb24gcGFyc2VCYXNpY1NoYXBlKHMpCiB7CiAgICAgdmFyIHNo
YXBlRnVuY3Rpb24gPSBzLm1hdGNoKC8oXHcrKVwoKC4rKVwpLyk7CkBAIC0yOTcsMTMgKzI2Niw2
IEBAIGZ1bmN0aW9uIGNvbXBhcmVGaWx0ZXJGdW5jdGlvbnMoY29tcHV0ZWRWYWx1ZSwgZXhwZWN0
ZWRWYWx1ZSwgdG9sZXJhbmNlKQogICAgICAgICAgICAgY29uc29sZS5lcnJvcigiRmlsdGVyIGZ1
bmN0aW9ucyBkbyBub3QgbWF0Y2guIik7CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAg
ICAgIH0KLSAgICAgICAgaWYgKGFjdHVhbFtpXSA9PSAiY3VzdG9tIikgewotICAgICAgICAgICAg
aWYgKCFjdXN0b21GaWx0ZXJQYXJhbWV0ZXJNYXRjaChhY3R1YWxbaSsxXSwgZXhwZWN0ZWRbaSsx
XSwgdG9sZXJhbmNlKSkgewotICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoIkN1c3RvbSBm
aWx0ZXIgcGFyYW1ldGVycyBkbyBub3QgbWF0Y2guIik7Ci0gICAgICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0K
ICAgICAgICAgaWYgKCFpc0Nsb3NlRW5vdWdoKGFjdHVhbFtpKzFdLCBleHBlY3RlZFtpKzFdLCB0
b2xlcmFuY2UpKSB7CiAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCJGaWx0ZXIgZnVuY3Rpb24g
dmFsdWVzIGRvIG5vdCBtYXRjaC4iKTsKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTMz
MCw0OSArMjkyLDYgQEAgZnVuY3Rpb24gYmFzaWNTaGFwZVBhcmFtZXRlcnNNYXRjaChwYXJhbUxp
c3QxLCBwYXJhbUxpc3QyLCB0b2xlcmFuY2UpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWZ1bmN0
aW9uIGN1c3RvbUZpbHRlclBhcmFtZXRlck1hdGNoKHBhcmFtMSwgcGFyYW0yLCB0b2xlcmFuY2Up
Ci17Ci0gICAgaWYgKHBhcmFtMS50eXBlICE9ICJwYXJhbWV0ZXIiKSB7Ci0gICAgICAgIC8vIENo
ZWNraW5nIGZvciBzaGFkZXIgdXJpcyBhbmQgb3RoZXIga2V5d29yZHMuIFRoZXkgbmVlZCB0byBi
ZSBleGFjdGx5IHRoZSBzYW1lLgotICAgICAgICByZXR1cm4gKHBhcmFtMS50eXBlID09IHBhcmFt
Mi50eXBlICYmIHBhcmFtMS52YWx1ZSA9PSBwYXJhbTIudmFsdWUpOwotICAgIH0KLQotICAgIGlm
IChwYXJhbTEubmFtZSAhPSBwYXJhbTIubmFtZSB8fCBwYXJhbTEudmFsdWUubGVuZ3RoICE9IHBh
cmFtMi52YWx1ZS5sZW5ndGgpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGZvciAodmFy
IGogPSAwOyBqIDwgcGFyYW0xLnZhbHVlLmxlbmd0aDsgKytqKSB7Ci0gICAgICAgIHZhciB2YWwx
ID0gcGFyYW0xLnZhbHVlW2pdLAotICAgICAgICAgICAgdmFsMiA9IHBhcmFtMi52YWx1ZVtqXTsK
LSAgICAgICAgaWYgKHZhbDEudHlwZSAhPSB2YWwyLnR5cGUpCi0gICAgICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgICAgIHN3aXRjaCAodmFsMS50eXBlKSB7Ci0gICAgICAgIGNhc2UgImZ1bmN0
aW9uIjoKLSAgICAgICAgICAgIGlmICh2YWwxLm5hbWUgIT0gdmFsMi5uYW1lKQotICAgICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIGlmICh2YWwxLmFyZ3VtZW50cy5sZW5n
dGggIT0gdmFsMi5hcmd1bWVudHMubGVuZ3RoKSB7Ci0gICAgICAgICAgICAgICAgY29uc29sZS5l
cnJvcigiQXJndW1lbnRzIGxlbmd0aCBtaXNtYXRjaDogIiwgdmFsMS5hcmd1bWVudHMubGVuZ3Ro
LCAiLyIsIHZhbDIuYXJndW1lbnRzLmxlbmd0aCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZm9yICh2YXIgdCA9IDA7IHQgPCB2YWwx
LmFyZ3VtZW50cy5sZW5ndGg7ICsrdCkgewotICAgICAgICAgICAgICAgIGlmICh2YWwxLmFyZ3Vt
ZW50c1t0XS50eXBlICE9ICJudW1iZXIiIHx8IHZhbDIuYXJndW1lbnRzW3RdLnR5cGUgIT0gIm51
bWJlciIpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgICAg
ICBpZiAoIWlzQ2xvc2VFbm91Z2godmFsMS5hcmd1bWVudHNbdF0udmFsdWUsIHZhbDIuYXJndW1l
bnRzW3RdLnZhbHVlLCB0b2xlcmFuY2UpKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFs
c2U7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSAibnVt
YmVyIjoKLSAgICAgICAgICAgIGlmICghaXNDbG9zZUVub3VnaCh2YWwxLnZhbHVlLCB2YWwyLnZh
bHVlLCB0b2xlcmFuY2UpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgY29uc29sZS5lcnJvcigi
VW5zdXBwb3J0ZWQgcGFyYW1ldGVyIHR5cGUgIiwgdmFsMS50eXBlKTsKLSAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIHJldHVybiB0cnVlOwotfQotCiBm
dW5jdGlvbiBjaGVja0V4cGVjdGVkVmFsdWUoZXhwZWN0ZWQsIGluZGV4KQogewogICAgIHZhciBh
bmltYXRpb25OYW1lID0gZXhwZWN0ZWRbaW5kZXhdWzBdOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVs
ZS1pbnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU0YzI5ZjguLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
YXQtcnVsZS1pbnZhbGlkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDU2ICswLDAg
QEAKLVRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtpdC1maWx0ZXIuCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLUZpbHRlciBhdC1ydWxlIHN5bWJvbCB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotVW5wcmVmaXhlZCBydWxlLgotQGZpbHRlciBteS1m
aWx0ZXIgeyB9Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24gaW5zdGFuY2VvZiBET01FeGNlcHRp
b24gaXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0aW9uLmNvZGUgaXMgRE9NRXhjZXB0aW9u
LlNZTlRBWF9FUlIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
RmlsdGVyIG5hbWUgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0KLU1pc3NpbmcgZmlsdGVyIG5hbWUgaWRlbnRpZmllci4KLUAtd2Via2l0LWZpbHRlciB7
IH0KLVBBU1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0
cnVlCi1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFY
X0VSUgotCi1GaWx0ZXIgbmFtZSBhcyBzdHJpbmcuCi1ALXdlYmtpdC1maWx0ZXIgJ215LWZpbHRl
cicgeyB9Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24gaW5zdGFuY2VvZiBET01FeGNlcHRpb24g
aXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0aW9uLmNvZGUgaXMgRE9NRXhjZXB0aW9uLlNZ
TlRBWF9FUlIKLQotRmlsdGVyIG5hbWUgYXMgbnVtYmVyLgotQC13ZWJraXQtZmlsdGVyIDEyMyB7
IH0KLVBBU1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0
cnVlCi1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFY
X0VSUgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1GaWx0ZXIg
YXQtcnVsZSBib2R5IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1NaXNzaW5nIHJ1bGUgYm9keS4KLUAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIKLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
Ci1NaXNzaW5nIG9wZW5pbmcgYnJhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIH0KLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
Ci1NaXNzaW5nIGNsb3NpbmcgYnJhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsKLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE4YmYxMTIuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
YXQtcnVsZS1pbnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IURP
Q1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFk
PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0i
Y29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0
ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0
cy9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1hdC1ydWxlLXZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1
bGUtdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNDhk
ZGRhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsMTI4ICswLDAgQEAKLVRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtp
dC1maWx0ZXIuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUZpbHRlciBhdC1ydWxlIHRlc3RzLgotPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBydWxlLCBzZXBh
cmF0ZWQgYnkgc2luZ2xlIHNwYWNlcy4KLUAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Ci1Q
QVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NS
dWxlIGluc3RhbmNlb2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUu
Y29uc3RydWN0b3IgPT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxl
Ll9fcHJvdG9fXyA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotCi1FbXB0eSBydWxlLCBzZXBhcmF0ZWQgYnkgbXVs
dGlwbGUgc3BhY2VzLgotICAgQC13ZWJraXQtZmlsdGVyICAgbXktZmlsdGVyICAgeyAgIH0gICAK
LVBBU1MgY3NzUnVsZS5jc3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNz
c1J1bGUgaW5zdGFuY2VvZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVs
ZS5jb25zdHJ1Y3RvciA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1
bGUuX19wcm90b19fID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi0KLUVtcHR5IHJ1bGUsIG5vIGV4dHJhIHdoaXRl
c3BhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVye30KLVBBU1MgY3NzUnVsZS5jc3NUZXh0
IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNzc1J1bGUgaW5zdGFuY2VvZiBXZWJL
aXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9PT0gV2Vi
S2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90b19fID09PSBXZWJL
aXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi0KLVJ1bGUgd2l0aCBhcmJpdHJhcnkgcHJvcGVydGllcy4KLUAtd2Via2l0LWZpbHRl
ciBteS1maWx0ZXIgeyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IH0KLVBBU1MgY3NzUnVs
ZS5jc3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgd2lkdGg6IDEwMHB4OyBo
ZWlnaHQ6IDEwMHB4OyB9IgotUEFTUyBjc3NSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMg
dHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlz
IHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnd2lkdGgn
KSBpcyAiMTAwcHgiCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2hlaWdodCcp
IGlzICIxMDBweCIKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDIKLQotRW1wdHkgcnVsZSwg
Y29tbWVudCBzZXBhcmF0b3JzCi1ALXdlYmtpdC1maWx0ZXIvKiovbXktZmlsdGVyLyoqL3sgfQot
UEFTUyBjc3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Igot
UEFTUyBjc3NSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1MgY3Nz
UnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxl
LmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVs
ZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJvdG90eXBlIGlzIHRydWUKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLQotRW1wdHkgcnVsZSwgY29tbWVudCtzcGFjZSBz
ZXBhcmF0b3JzCi1ALXdlYmtpdC1maWx0ZXIvKiovIG15LWZpbHRlci8qKi8geyB9Ci1QQVNTIGNz
c1J1bGUuY3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NSdWxlIGlu
c3RhbmNlb2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29uc3Ry
dWN0b3IgPT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLl9fcHJv
dG9fXyA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotCi1FbXB0eSBydWxlLCBzcGFjZStjb21tZW50IHNlcGFyYXRv
cnMKLUAtd2Via2l0LWZpbHRlciAvKiovbXktZmlsdGVyIC8qKi97IH0KLVBBU1MgY3NzUnVsZS5j
c3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNzc1J1bGUgaW5zdGFuY2Vv
ZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9
PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90b19fID09
PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi0KLUVtcHR5IHJ1bGUsIHNwYWNlK2NvbW1lbnQrc3BhY2Ugc2VwYXJhdG9y
cwotQC13ZWJraXQtZmlsdGVyIC8qKi8gbXktZmlsdGVyIC8qKi8geyB9Ci1QQVNTIGNzc1J1bGUu
Y3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1QQVNTIGNzc1J1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NSdWxlIGluc3RhbmNl
b2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29uc3RydWN0b3Ig
PT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLl9fcHJvdG9fXyA9
PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci1OZXN0ZWQgZmlsdGVyIGF0LXJ1bGUgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU5lc3RlZCBydWxlLgotQC13ZWJraXQtZmlsdGVyIHBhcmVudC1m
aWx0ZXIgeyBALXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSB9Ci1QQVNTIGNzc1J1bGUu
Y3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IgotUEFTUyBjc3NS
dWxlLnR5cGUgaXMgMTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1
bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJS
dWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1
bGUucHJvdG90eXBlIGlzIHRydWUKLQotVHdpY2UgbmVzdGVkIHJ1bGUuCi1ALXdlYmtpdC1maWx0
ZXIgcGFyZW50LWZpbHRlciB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyBALXdlYmtp
dC1maWx0ZXIgZ3JhbmRjaGlsZC1maWx0ZXIgfSB9Ci1QQVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAi
QC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IgotUEFTUyBjc3NSdWxlLnR5cGUgaXMg
MTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQot
UEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUK
LVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJvdG90eXBl
IGlzIHRydWUKLQotTmVzdGVkIHJ1bGUgaW5zaWRlIGFyYml0cmFyeSBydWxlLgotQGZvbnQtZmFj
ZSB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IH0KLVBBU1MgY3NzUnVsZS5jc3NU
ZXh0IGlzICJAZm9udC1mYWNlIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDUKLVBBU1MgY3Nz
UnVsZSBpbnN0YW5jZW9mIENTU0ZvbnRGYWNlUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29u
c3RydWN0b3IgPT09IENTU0ZvbnRGYWNlUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90
b19fID09PSBDU1NGb250RmFjZVJ1bGUucHJvdG90eXBlIGlzIHRydWUKLQotTmVzdGVkIHJ1bGUg
aW5zaWRlIG1lZGlhIHF1ZXJ5LgotQG1lZGlhIHNjcmVlbiB7IEAtd2Via2l0LWZpbHRlciBjaGls
ZC1maWx0ZXIgeyB9IH0KLVBBU1MgY3NzUnVsZS5jc3NUZXh0IGlzICJAbWVkaWEgc2NyZWVuIHsg
XG4gIEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9XG59IgotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgNAotUEFTUyBjc3NSdWxlIGluc3RhbmNlb2YgQ1NTTWVkaWFSdWxlIGlzIHRydWUKLVBB
U1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9PT0gQ1NTTWVkaWFSdWxlIGlzIHRydWUKLVBBU1MgY3Nz
UnVsZS5fX3Byb3RvX18gPT09IENTU01lZGlhUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBj
c3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IgotUEFT
UyBjc3NSdWxlLnR5cGUgaXMgMTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0Zp
bHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NG
aWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0Zp
bHRlclJ1bGUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFy
c2luZy1hdC1ydWxlLXZhbGlkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk4
YTM5YTQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRo
LWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVsZS12YWxpZC5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsMTMgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRN
TC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3Jp
cHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3Nj
cmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1p
bnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1pbnZhbGlkLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODQ4YTlmZi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFy
c2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSw2MzcgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiBjdXN0b20oKSBmdW5jdGlvbiBv
ZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUN1c3Rv
bSBmdW5jdGlvbiB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLQotRW1wdHkgY3VzdG9tIGZ1bmN0aW9uLgotY3VzdG9tKCkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1PbmUgY29tbWEgaW4gY3VzdG9tIGZ1bmN0aW9uLgotY3VzdG9tKCwpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTXVsdGlwbGUgY29tbWFzIGluIGN1c3RvbSBmdW5jdGlvbi4KLWN1c3RvbSgs
LCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci1GaWx0ZXIgbmFtZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLQotTm8gZmlsdGVyIG5hbWUgd2l0aCBwYXJhbWV0ZXIuCi1jdXN0b20o
biAxKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IGZpbHRlciBuYW1lcy4KLWN1c3Rv
bShteS1maWx0ZXItMSBteS1maWx0ZXItMikKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1GaWx0ZXIg
bmFtZSBhcyBzdHJpbmcuCi1jdXN0b20oJ215LWZpbHRlci0xJykKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1GaWx0ZXIgbmFtZSBhcyBudW1iZXIuCi1jdXN0b20oMSkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1TcGFjZSBiZXR3ZWVuIGZpbHRlciBuYW1lIGFuZCBwYXJhbWV0ZXIuCi1jdXN0b20obXkt
ZmlsdGVyIG4gMSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVz
LgotY3VzdG9tKG15LWZpbHRlciwgbiAxIDIgMyA0IDUpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
SW52YWxpZCBwYXJhbWV0ZXIgdHlwZS4KLWN1c3RvbShteS1maWx0ZXIsIG4gMS4wIDIuMCAndGV4
dCcpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gYWZ0ZXIg
Y29tbWEuCi1jdXN0b20obXktZmlsdGVyLCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJh
bWV0ZXIgZGVmaW5pdGlvbiB3aXRoIHR3byBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCwpCi1Q
QVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gYmVmb3JlIHZhbGlk
IHBhcmFtZXRlciBkZWZpbnRpb24uCi1jdXN0b20obXktZmlsdGVyLCAsIG4gMSkKLVBBU1Mgc3R5
bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVy
JykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUuCi1jdXN0b20obXktZmlsdGVyLCBuKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHBhcmFtZXRlciB2YWx1ZSB3aXRoIG11bHRpcGxlIHBh
cmFtZXRlcnMuCi1jdXN0b20obXktZmlsdGVyLCBuMSwgbjIsIG4zKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUNvbG9yIHBh
cmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LQotTm8gcmdiIGNvbG9yIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIGMgcmdiKCwsKSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1ObyBoc2wgY29sb3IgdmFsdWVzLgotY3VzdG9tKG15LWZpbHRl
ciwgYyBoc2woLCwpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUhleCB3aXRoIDggY2hhcmFjdGVy
cy4KLWN1c3RvbShteS1maWx0ZXIsIGMgI0ZGMDAwMEZGKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LUhleCB3aXRoIDIgY2hhcmFjdGVyLgotY3VzdG9tKG15LWZpbHRlciwgYyAjRkYpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpIGlzIG51bGwKLQotUmdiYSB3aXRoIDMgdmFsdWVzIGFuZCAyIGNvbW1hcy4KLWN1c3RvbSht
eS1maWx0ZXIsIGMgcmdiYSgyNTUsIDAsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIg
dGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBp
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1y
b3RhdGUoMGRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTXVsdGlwbGUgaW52YWxpZCB0cmFu
c2Zvcm0gZnVuY3Rpb25zLgotY3VzdG9tKG15LWZpbHRlciwgdCBpbnZhbGlkLXJvdGF0ZSgwZGVn
KSBpbnZhbGlkLXBlcnNwZWN0aXZlKDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQg
dHJhbnNmb3JtIGZ1bmN0aW9uIGJldHdlZW4gdmFsaWQgb25lcy4KLWN1c3RvbShteS1maWx0ZXIs
IHQgcm90YXRlKDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApKQotUEFT
UyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIGludmFs
aWQgb25lcy4KLWN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUoMGRlZykgcGVyc3Bl
Y3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENT
U1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVmFs
aWQgdHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGhvdXQgbGVhZGluZyBjb21tYS4KLWN1c3RvbShteS1m
aWx0ZXIgdCBwZXJzcGVjdGl2ZSgwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFu
c2Zvcm0gZnVuY3Rpb24gd2l0aCB0cmFpbGluZyBjb21tYS4KLWN1c3RvbShteS1maWx0ZXIsIHQg
cGVyc3BlY3RpdmUoMCksKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JV
TEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBm
dW5jdGlvbiB3aXRoIHRyYWlsaW5nIGNvbW1hIGFuZCB3aXRob3V0IGxlYWRpbmcgY29tbWEuCi1j
dXN0b20obXktZmlsdGVyIHQgcGVyc3BlY3RpdmUoMCksKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LUludmFsaWQgdHJhbnNmb3JtIHdpdGggdHJhaWxpbmcgY29tbWEuCi1jdXN0b20obXktZmlsdGVy
LCB0IGludmFsaWQtcm90YXRlKDBkZWcpLCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHRyYW5zZm9ybSB3aXRob3V0IGxlYWRpbmcgY29tbWEuCi1jdXN0b20obXktZmlsdGVyIHQgaW52
YWxpZF9yb3RhdGUoMGRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVf
UlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3Jt
IHdpdGggaW52YWxpZCBjaGFyYWN0ZXJzCi1jdXN0b20obXktZmlsdGVyLHQgcm90YXRlKDBkZWcp
ICouLSwpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1PbmUgY29tbWEgaW4gYXJyYXkuCi1j
dXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRp
cGxlIGNvbW1hcyBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCwsKSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1NdWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5
LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgsLDEsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci1PbmUgY29tbWEgZm9sbG93ZWQgYnkgYSBuZWdhdGl2ZSB2YWx1ZSBpbiBhcnJheS4KLWN1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoLC00KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1PbmUgY29t
bWEgZm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoLDQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBuZWdhdGl2ZSB2YWx1ZSBmb2xsb3dl
ZCBieSBhIGNvbW1hIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgtNCwpKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFy
cmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSg0LCkpCi1QQVNTIHN0eWxlUnVsZS50eXBl
IGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxp
ZCB2YWx1ZXMgZm9sbG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KDEsIDIsIDMsIDQsIHgpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVR3byBjb21t
YXMgYXMgc2VwYXJhdG9yIGJldHdlZW4gdmFsdWVzIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgxLCAyLCAsIDQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNU
WUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUxlYWRpbmcgY29t
bWEgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwxLCAyLCAzLCA0KSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheS4K
LWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMTsgMjsgMzsgNCkpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoMSAyIDMgNCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVf
UlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVk
IHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KDEgMiAzIDQsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0
ZWQgdmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoLCAxIDIgMyA0KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1OYU4gaW4gYXJyYXku
Ci1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KE5hTikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
TmFOIGJldHdlZW4gdmFsaWQgdmFsdWVzIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBh
cnJheSgxLCAyLCBOYU4sIDMpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUg
J25vbmUnIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheShub25lKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheS4KLWN1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHZhbHVlIHVuaXQgJ2RlZycgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDFk
ZWcpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFy
cmF5IGFmdGVyIHZhbGlkIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwg
MywgNHB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1wdHkgbWF0Mi4KLWN1c3RvbShteS1maWx0ZXIs
IGEgbWF0MigpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyB2aWV3IGFyZ3VtZW50cy4KLWN1
c3RvbShteS1maWx0ZXIsIGEgbWF0MigwLCAwLCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1O
byBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigsLCwpKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBh
IG1hdDIoMCwgMCwsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JZGVudHMgaW4gbWF0MiBmdW5j
dGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigwLCAwLCBhLCBiKSkKLVBBU1Mgc3R5bGVS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIo
MCwgMCwgMCwgMCwgMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVM
RQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gY29tbWFzLgotY3VzdG9t
KG15LWZpbHRlciwgYSBtYXQyKDEgMCAwIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVNvbWUg
Y29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDEsIDAsIDAgMSkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTGVhZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIoLCAw
LCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBsZW5ndGggdW5pdHMuCi1jdXN0b20o
bXktZmlsdGVyLCBhIG1hdDIoMXB4LCAwcHgsIDBweCwgMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1ObyBkZWdyZWUgdW5pdHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMWRlZywgMGRl
ZywgMGRlZywgMWRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVM
RQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTmFOIGluIG1hdDIuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDIoMSwgMCwgMCwgTmFOKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQzIHBhcmFtZXRl
ciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1w
dHkgbWF0My4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygpKQotUEFTUyBzdHlsZVJ1bGUudHlw
ZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVRvbyB2aWV3IGFyZ3VtZW50cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygwLCAwLCAw
LCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLWN1
c3RvbShteS1maWx0ZXIsIGEgbWF0MygsLCwsLCwsLCwsLCwsLCwpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JZGVudHMgaW4gbWF0MyBmdW5j
dGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCBhLCBi
KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSwgMCkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTm8gY29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEgMCAwIDAg
MSAwIDAgMCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Tb21lIGNvbW1hcy4KLWN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwIDAgMCAxKSkKLVBBU1Mgc3R5bGVSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
bnVsbAotCi1MZWFkaW5nIGNvbW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygsIDAsIDAs
IDAsIDEsIDAsIDAsIDAsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0
cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxcHgsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwg
MXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBkZWdyZWUgdW5pdHMuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMWRlZywgMCwgMCwgMCwgMWRlZywgMCwgMCwgMCwgMWRlZykpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTmFOIGluIG1hdDMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIo
TmFOLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQ0IHBhcmFtZXRlciB0ZXN0
cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1wdHkgbWF0
NC4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRv
byB2aWV3IGFyZ3VtZW50cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgxLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNv
bW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgsLCwsLCwsLCwsLCwsLCwpKQotUEFTUyBz
dHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyBudWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQo
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwsKSkKLVBBU1Mgc3R5bGVS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1JZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAxLCAwLCAwLCBhLCBiKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1U
b28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCkpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotTm8gY29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEgMCAwIDAgMCAxIDAg
MCAwIDAgMSAwIDAgMCAwIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVNvbWUgY29tbWFzLgot
Y3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEs
IDAgMCAwIDAgMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTGVhZGluZyBjb21tYXMuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDQoLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBsZW5ndGggdW5pdHMuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDQoMXB4LCAwLCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDAsIDFw
eCwgMCwgMCwgMCwgMCwgMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBkZWdyZWUgdW5p
dHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMWRlZywgMCwgMCwgMCwgMCwgMWRlZywgMCwg
MCwgMCwgMCwgMWRlZywgMCwgMCwgMCwgMCwgMWRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
TmFOIGluIG1hdDQuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoTmFOLCAwLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NaXhpbmcgcGFyYW1ldGVy
IHR5cGVzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1OdW1i
ZXIgcGFyYW1ldGVyIHdpdGggaGV4IGNvbG9yLgotY3VzdG9tKG15LWZpbHRlciwgbjEgMSAyICNG
RjAwMDApCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTnVtYmVyIHBhcmFtZXRlciB3aXRoIGNvbG9y
IGtleXdvcmQuCi1jdXN0b20obXktZmlsdGVyLCBuMSAxIDIgcmVkKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLU51bWJlciBwYXJhbWV0ZXIgd2l0aCByZ2IgY29sb3IuCi1jdXN0b20obXktZmlsdGVy
LCBuMSAxIDIgcmdiKDI1NSwgMCwgMCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUu
U1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQ29sb3Igd2l0
aCBudW1iZXIgcGFyYW1ldGVyLgotY3VzdG9tKG15LWZpbHRlciwgYSByZ2IoMjU1LCAwLCAwKSAx
KQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUNvbG9yIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgwLCByZ2IoMjU1LCAwLCAwKSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENT
U1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQ29s
b3IgYW5kIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgwLCAwKSByZ2IoMjU1LCAw
LCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIHRyYW5zZm9ybSB2YWx1ZXMu
Ci1jdXN0b20obXktZmlsdGVyLCBhIHJvdGF0ZSg0NWRlZykgcmdiKDI1NSwgMCwgMCkpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotQ29sb3Igd2l0aCB0cmFuc2Zvcm0gdmFsdWVzLgotY3VzdG9tKG15
LWZpbHRlciwgYSByZ2IoMjU1LCAwLCAwKSByb3RhdGUoNDVkZWcpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLUNvbG9yIHdpdGggbWF0Mi4KLWN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwgMCwg
MCkgbWF0MigwLCAwLCAwLCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1tYXQyIHdpdGggbWF0
My4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigxLCAwLCAwLCAxKSBtYXQzKDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JV
TEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi1QQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1
bmN0aW9uLWludmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1pbnZhbGlkLmh0bWwKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZkZTRjZDMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3Vz
dG9tLWZ1bmN0aW9uLWludmFsaWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAK
LTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBp
ZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBz
cmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3Nj
cmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24t
aW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2lu
Zy1jdXN0b20tZnVuY3Rpb24tdmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9u
LXZhbGlkLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWU0NTcw
MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQtZXhwZWN0ZWQudHh0Cisr
KyAvZGV2L251bGwKQEAgLTEsNDc3ICswLDAgQEAKLVRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1
c3RvbSgpIGZ1bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4KLQotT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotQ3VzdG9tIGZ1bmN0aW9uIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotCi1DdXN0b20gZnVuY3Rpb24gaW4gQ0FQUy4KLUNVU1RPTSht
eS1maWx0ZXIpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVy
KScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotRmlsdGVyIGNo
YWluIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1D
dXN0b20gZnVuY3Rpb24gaW4gbWlkZGxlIG9mIGZpbHRlciBjaGFpbi4KLWdyYXlzY2FsZSgpIGN1
c3RvbShteS1maWx0ZXIpIHNlcGlhKCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdncmF5c2Nh
bGUoKSBjdXN0b20obXktZmlsdGVyKSBzZXBpYSgpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVy
dHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUKLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnZ3JheXNjYWxlKCknCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3Vi
VmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9TRVBJQQotUEFTUyBz
dWJWYWx1ZS5jc3NUZXh0IGlzICdzZXBpYSgpJwotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1GaWx0ZXIgbmFtZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLQotRmlsdGVyIG5hbWUgb25seS4KLWN1c3RvbShteS1maWx0
ZXIpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyKScKLQot
RmlsdGVyIG5hbWUgYXMgQ1NTICdub25lJyBrZXl3b3JkLgotY3VzdG9tKG5vbmUpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG5vbmUpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVy
dHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3Vi
VmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG5vbmUpJwotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1JbnRlZ2VyIHBhcmFtZXRlcnMuCi1jdXN0
b20obXktZmlsdGVyLCBuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3KQotUEFTUyBz
dHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG4xIDEsIG4yIDIgMywgbjMgMyA0
IDUsIG40IDQgNSA2IDcpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9
PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBp
cyAnY3VzdG9tKG15LWZpbHRlciwgbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNykn
Ci0KLUZsb2F0IHBhcmFtZXRlcnMuCi1jdXN0b20obXktZmlsdGVyLCBuMSAxLjEsIG4yIDIuMiAz
LjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbjEgMS4xLCBuMiAyLjIgMy4zLCBuMyAzLjEgNC4x
IDUuMSwgbjQgNC4xIDUuMiA2LjMgNy40KScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0
YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVl
LmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG4xIDEuMSwgbjIgMi4yIDMuMywgbjMgMy4x
IDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCknCi0KLVBhcmFtZXRlciBuYW1lIHNhbWUgYXMg
Q1NTIGtleXdvcmQuCi1jdXN0b20obXktZmlsdGVyLCBiYWNrZ3JvdW5kIDAgMSAwIDEpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgYmFja2dyb3VuZCAwIDEgMCAx
KScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1
ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1m
aWx0ZXIsIGJhY2tncm91bmQgMCAxIDAgMSknCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLUNvbG9yIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotSGV4IGNvbG9yLgotY3VzdG9tKG15LWZpbHRlciwg
YyAjMDBGRjAwKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGMg
cmdiKDAsIDI1NSwgMCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9
PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBp
cyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwgMjU1LCAwKSknCi0KLUNvbG9yIGtleXdvcmQu
Ci1jdXN0b20obXktZmlsdGVyLCBjIGdyZWVuKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDEyOCwgMCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwgMTI4LCAwKSkn
Ci0KLUNvbG9yIHJnYiBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDEyOCwg
MCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwg
MTI4LCAwKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0g
Q1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
bGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0
b20obXktZmlsdGVyLCBjIHJnYigwLCAxMjgsIDApKScKLQotQ29sb3IgaHNsIGZ1bmN0aW9uLgot
Y3VzdG9tKG15LWZpbHRlciwgYyBoc2woMTIwLCAxMDAlLCA1MCUpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpJwotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5
cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1
YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2Io
MCwgMjU1LCAwKSknCi0KLUNvbG9yIHJnYmEgZnVuY3Rpb24uCi1jdXN0b20obXktZmlsdGVyLCBj
IHJnYmEoMCwgMjU1LCAwLCAwLjIpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNU
WUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbSht
eS1maWx0ZXIsIGMgcmdiYSgwLCAyNTUsIDAsIDAuMikpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2JhKDAsIDI1NSwgMCwg
MC4yKSknCi0KLUNvbG9yIGhzbGEgZnVuY3Rpb24uCi1jdXN0b20obXktZmlsdGVyLCBjIGhzbGEo
MTIwLCAxMDAlLCA1MCUsIDAuMikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZ
TEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15
LWZpbHRlciwgYyByZ2JhKDAsIDI1NSwgMCwgMC4yKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9w
ZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBz
dWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAwLCAw
LjIpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotVHJhbnNm
b3JtIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLQotVHJhbnNmb3JtIHBhcmFtZXRlciB3aXRoIG9uZSB0cmFuc2Zvcm0gZnVuY3Rpb24u
Ci1jdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzICdjdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSknCi1QQVNTIGZpbHRlclByb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9w
ZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0
cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVn
KSknCi0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSB0cmFuc2Zvcm0gZnVuY3Rp
b25zLgotY3VzdG9tKG15LWZpbHRlciwgdCByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2Nh
bGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdj
dXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAw
KSB0cmFuc2xhdGUoMHB4LCAwcHgpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5j
ZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3Ry
dWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVy
UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNz
c1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDAp
IHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkpJwotCi1NdWxpdHBsZSB0cmFuc2Zvcm0g
cGFyYW1ldGVycy4KLWN1c3RvbShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRl
KDBkZWcpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQxIHJv
dGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBp
bnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5
VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
ZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25U
eXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZh
bHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90
YXRlKDBkZWcpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
QXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotCi1BcnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScuCi1jdXN0b20obXkt
ZmlsdGVyLCBhcnJheSBhcnJheSgxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20o
bXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNv
bnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1
ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSknCi0KLUFycmF5
IHBhcmFtZXRlciB3aXRoIG9uZSBwb3NpdGl2ZSBpbnRlZ2VyLgotY3VzdG9tKG15LWZpbHRlciwg
YSBhcnJheSgxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBh
IGFycmF5KDEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSkpJwotCi1BcnJheSBwYXJhbWV0ZXIgd2l0aCBvbmUg
bmVnYXRpdmUgZmxvYXQuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KC0xLjAxKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KC0xLjAxKSknCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KC0xLjAxKSknCi0KLUFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHBvc2l0
aXZlIGludGVnZXJzLgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAzLCA0LCA1KSkK
LVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIs
IDMsIDQsIDUpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgMywgNCwgNSkpJwotCi1BcnJheSBwYXJhbWV0
ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRzLgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJh
eSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSknCi1QQVNTIGZpbHRl
clByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
VmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NV
U1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5
KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkpJwotCi1NdWx0aXBsZSBhcnJheSBwYXJhbWV0ZXJzLgot
Y3VzdG9tKG15LWZpbHRlciwgYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJy
YXkoMSwgMiwgMykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwg
YTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykpJwotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5w
cm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwg
YTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykpJwotCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0
ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MiBw
YXJhbWV0ZXIuCi1jdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgMCwgMCwgMSkpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKDEsIDAsIDAsIDEpKScK
LVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0
ZXIsIG0gbWF0MigxLCAwLCAwLCAxKSknCi0KLU1hdDIgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUg
dmFsdWVzLgotY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAtMSwgLTEsIC0xKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIC0xLCAtMSwg
LTEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NW
YWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbSht
eS1maWx0ZXIsIG0gbWF0MigtMSwgLTEsIC0xLCAtMSkpJwotCi1NYXQyIHBhcmFtZXRlciB3aXRo
IG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuCi1jdXN0b20obXktZmlsdGVyLCBtIG1hdDIo
LTEsIDEsIDEsIC0xKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVy
LCBtIG1hdDIoLTEsIDEsIDEsIC0xKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFu
Y2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0
cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRl
clByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5j
c3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIDEsIDEsIC0xKSknCi0KLU1h
dDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLWN1c3RvbShteS1maWx0
ZXIsIG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpKScKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJf
Q1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0
MigxLCAtMi4yLCAzLjE0LCAwLjQpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotTWF0MyBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0KLU1hdDMgcGFyYW1ldGVyLgotY3VzdG9tKG15LWZpbHRlciwg
bSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSkn
Ci1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVM
aXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmls
dGVyLCBtIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkpJwotCi1NYXQzIHBhcmFtZXRl
ciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdj
dXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlz
IHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1Zh
bHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15
LWZpbHRlciwgbSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpKScKLQot
TWF0MyBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotY3VzdG9t
KG15LWZpbHRlciwgbSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIDEsIDEsIC0x
LCAtMSwgMSwgMSwgLTEsIDEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19w
cm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1Rl
eHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAt
MSwgMSkpJwotCi1NYXQzIHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuCi1j
dXN0b20obXktZmlsdGVyLCBtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0
LCAwLjQsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0g
bWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSkpJwotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
ZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90
b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBt
YXQzKDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxKSknCi0KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDQgcGFyYW1ldGVyIHRlc3Rz
LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1NYXQ0IHBhcmFt
ZXRlci4KLWN1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20o
bXktZmlsdGVyLCBtIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
Lmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmls
dGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3Vz
dG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEpKScKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1j
dXN0b20obXktZmlsdGVyLCBtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSknCi0K
LU1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5kIHBvc2l0aXZlIHZhbHVlcy4KLWN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEs
IC0xLCAtMSwgMSwgMSwgLTEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1m
aWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAt
MSwgMSwgMSwgLTEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEs
IDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEpKScKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBs
ZSBzaWduZWQgZmxvYXRzLgotY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIC0yLjIsIDMuMTQs
IDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMu
MTQsIDAuNCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBt
YXQ0KDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0
LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5
cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFs
dWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQs
IDAuNCkpJwotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1Db21i
aW5lZCBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJhbnNmb3JtIHBh
cmFtZXRlciwgbWF0cml4IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4KLWN1c3RvbSht
eS1maWx0ZXIsIG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIo
MSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQo
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXko
MSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbiAxLCBjIHJn
YigwLCAxMjgsIDApLCB0IHJvdGF0ZSgwZGVnKSwgbTEgbWF0MigxLCAwLCAwLCAxKSwgbTIgbWF0
MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSwgbTMgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSwgYSBhcnJheSgxKSknCi1QQVNTIGZpbHRlclBy
b3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFs
dWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBuIDEsIGMgcmdi
KDAsIDEyOCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAsIDEpLCBtMiBtYXQz
KDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFycmF5KDEpKScKLVBBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1jdXN0
b20tZnVuY3Rpb24tdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12YWxpZC5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNjliNWExLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1
c3RvbS1mdW5jdGlvbi12YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAot
PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlk
PSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNy
Yz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12
YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1n
ZW9tZXRyeS1wcm9wZXJ0eS1pbnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3Bl
cnR5LWludmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBh
OTFlOTk5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQtZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTUxICswLDAgQEAKLVRlc3QgZ2VvbWV0cnkgcHJv
cGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLUdlb21ldHJ5IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotCi1ObyBwcm9wZXJ0eSB2YWx1ZS4KLWdlb21ldHJ5OiA7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotRW1wdHkgZ3JpZC4KLWdlb21ldHJ5OiBncmlkKCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotTWlzcGVsbGVkIGdyaWQgZnVu
Y3Rpb24uCi1nZW9tZXRyeTogZ3JpaWQoMSAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5Jykg
aXMgbnVsbAotCi1TaW5nbGUgbmVnYXRpdmUgdmFsdWUgaW4gZ3JpZC4KLWdlb21ldHJ5OiBncmlk
KC0xKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1OZWdhdGl2ZSB2YWx1
ZSBpbiBncmlkIGFsb25nIHdpdGggYSB2YWxpZCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKDEgLTEp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLU5lZ2F0aXZlIHZhbHVlIGlu
IGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4KLWdlb21ldHJ5OiBncmlk
KC0xIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLVR3byBuZWdhdGl2
ZSB2YWx1ZXMuCi1nZW9tZXRyeTogZ3JpZCgtMSAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRy
eScpIGlzIG51bGwKLQotU2luZ2xlIHplcm8gdmFsdWUuCi1nZW9tZXRyeTogZ3JpZCgwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1aZXJvIHdpdGggYSB2YWxpZCB2YWx1
ZS4KLWdlb21ldHJ5OiBncmlkKDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51
bGwKLQotWmVybyB3aXRoIGEgdmFsaWQgdmFsdWUsIGludmVydGVkLgotZ2VvbWV0cnk6IGdyaWQo
MSAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1BdHRhY2hlZCB2YWx1
ZSBhbG9uZS4KLWdlb21ldHJ5OiBncmlkKGF0dGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21l
dHJ5JykgaXMgbnVsbAotCi1EZXRhY2hlZCB2YWx1ZSBhbG9uZS4KLWdlb21ldHJ5OiBncmlkKGRl
dGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1EZXRhY2hlZCBh
bmQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZChhdHRhY2hlZCBhdHRhY2hlZCk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotVG9vIG1hbnkgdmFsdWVzLgotZ2VvbWV0cnk6
IGdyaWQoMSAxIGF0dGFjaGVkIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5Jykg
aXMgbnVsbAotCi1NaXNwZWxsZWQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZCgxIDEgYXR0YWNk
KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1NaXNwZWxsZWQgZGV0YWNo
ZWQuCi1nZW9tZXRyeTogZ3JpZCgxIDEgZGV0YWNoZSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRy
eScpIGlzIG51bGwKLQotSW52YWxpZCBkaXZpZGVyLgotZ2VvbWV0cnk6IGdyaWQoMSwgMSBhdHRh
Y2hlZCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotSW52YWxpZCBkaXZp
ZGVyLCByZWxvYWRlZC4KLWdlb21ldHJ5OiBncmlkKDEgMSwgYXR0YWNoZWQpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLU5vbiBpbnRlZ2VyIHZhbHVlcy4KLWdlb21ldHJ5
OiBncmlkKDEuMyAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1Ob24g
aW50ZWdlciB2YWx1ZXMuCi1nZW9tZXRyeTogZ3JpZCgxIDEuMyk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdn
ZW9tZXRyeScpIGlzIG51bGwKLQotVGhyZWUgaW50ZWdlcnMuCi1nZW9tZXRyeTogZ3JpZCgxIDIg
Myk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotQXR0YWNoZWQgaW4gYmV0
d2VlbiB0d28gaW50ZWdlcnMuCi1nZW9tZXRyeTogZ3JpZCgxIGF0dGFjaGVkIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLURldGFjaGVkIGluIGJldHdlZW4gdHdvIGlu
dGVnZXJzLgotZ2VvbWV0cnk6IGdyaWQoMSBkZXRhY2hlZCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dl
b21ldHJ5JykgaXMgbnVsbAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggNjRmNzhhYi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1p
bnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9u
Ij48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQt
dGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktaW52YWxpZC5qcyI+
PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1w
cm9wZXJ0eS12YWxpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12YWxpZC1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDMwZmJkN2IuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsMTEzICswLDAgQEAKLVRlc3QgZ2VvbWV0cnkgcHJvcGVydHkgcGFyc2luZyBp
biB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUdlb21l
dHJ5IHByb3BlcnR5LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
Ci1HZW9tZXRyeSB3aXRoIGZ1bGwgbWVzaCBhbmQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZCgx
IDEgYXR0YWNoZWQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBp
cyAiMSAxIGF0dGFjaGVkIgotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBnZW9tZXRy
eVByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDMKLQotR2VvbWV0cnkgd2l0aCBmdWxsIG1lc2ggYW5k
IGRldGFjaGVkLgotZ2VvbWV0cnk6IGdyaWQoMSAxIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSkgaXMgIjEgMSBkZXRhY2hlZCIKLVBBU1MgZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2Vv
bWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi0K
LUdlb21ldHJ5IHdpdGggZnVsbCBtZXNoIGFuZCBubyBhdHRhY2hlZCwgbm9yIGRldGFjaGVkLgot
Z2VvbWV0cnk6IGdyaWQoMSAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0
cnknKSkgaXMgIjEgMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19w
cm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAyCi0KLUdlb21ldHJ5IHdpdGggb25seSBvbmUgbWVzaCB2
YWx1ZS4KLWdlb21ldHJ5OiBncmlkKDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdn
ZW9tZXRyeScpKSBpcyAiMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2Yg
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVj
dG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi0KLUdlb21ldHJ5IHdpdGggb25lIG1lc2ggdmFs
dWUgYW5kIGF0dGFjaGVkLgotZ2VvbWV0cnk6IGdyaWQoMSBhdHRhY2hlZCk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykpIGlzICIxIGF0dGFjaGVkIgotUEFTUyBnZW9t
ZXRyeVByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBn
ZW9tZXRyeVByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5w
cm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIK
LQotR2VvbWV0cnkgd2l0aCBvbmUgbWVzaCB2YWx1ZSBhbmQgZGV0YWNoZWQuCi1nZW9tZXRyeTog
Z3JpZCgxIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnkn
KSkgaXMgIjEgZGV0YWNoZWQiCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotCi1HZW9tZXRyeSB3aXRoIGF0dGFjaGVkIGJl
Zm9yZSBvbmUgbWVzaCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKGF0dGFjaGVkIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBpcyAiYXR0YWNoZWQgMSIKLVBBU1Mg
Z2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBp
cyAyCi0KLUdlb21ldHJ5IHdpdGggYXR0YWNoZWQgYmVmb3JlIHR3byBtZXNoIHZhbHVlcy4KLWdl
b21ldHJ5OiBncmlkKGF0dGFjaGVkIDEgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J2dlb21ldHJ5JykpIGlzICJhdHRhY2hlZCAxIDEiCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1
ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQ
cm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwotCi1HZW9tZXRyeSB3aXRo
IGRldGFjaGVkIGJlZm9yZSBvbmUgbWVzaCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKGRldGFjaGVk
IDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBpcyAiZGV0YWNo
ZWQgMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZh
bHVlLmxlbmd0aCBpcyAyCi0KLUdlb21ldHJ5IHdpdGggZGV0YWNoZWQgYmVmb3JlIHR3byBtZXNo
IHZhbHVlcy4KLWdlb21ldHJ5OiBncmlkKGRldGFjaGVkIDEgMSk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykpIGlzICJkZXRhY2hlZCAxIDEiCi1QQVNTIGdlb21ldHJ5
UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwotUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LXZhbGlkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0
eS12YWxpZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNzY3YjAyLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LXZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVh
ZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48
L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5n
LWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmct
Z2VvbWV0cnktcHJvcGVydHktdmFsaWQuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1
bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
bWl4LXByb3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBjMGQzOWVhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDU1ICswLDAgQEAKLVRlc3QgbWl4IHByb3Bl
cnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgotCi1PbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci1WYWx1ZSB0ZXN0LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1ObyBwcm9wZXJ0eSB2YWx1ZS4KLW1peDogOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4Jykg
aXMgbnVsbAotCi1UaHJlZSB2YWx1ZXMuCi1taXg6IHNjcmVlbiBzb3VyY2Utb3ZlciBzY3JlZW47
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSBpcyBudWxsCi0KLVRocmVlIHZhbHVlcy4KLW1peDogc2Ny
ZWVuIHNvdXJjZS1vdmVyIHNvdXJjZS1vdmVyOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykgaXMgbnVs
bAotCi1Ud28gYmxlbmQgbW9kZXMuCi1taXg6IHNjcmVlbiBzY3JlZW47Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdtaXgnKSBpcyBudWxsCi0KLVR3byBjb21wb3NpdGUgb3BlcmF0b3JzLgotbWl4OiBzb3VyY2Ut
b3ZlciBzb3VyY2Utb3ZlcjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpIGlzIG51bGwKLQotVHdvIGJs
ZW5kIG1vZGVzLgotbWl4OiBzY3JlZW4gc2NyZWVuOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykgaXMg
bnVsbAotCi1Db21tYSBiZXR3ZWVuIHZhbHVlcy4KLW1peDogc2NyZWVuLCBzb3VyY2Utb3ZlcjsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ21peCcpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktaW52
YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZjkxZDFlMi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktaW52
YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+
Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+
PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRl
c3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBz
cmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxp
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYzhjZjAzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1w
cm9wZXJ0eS12YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwzOTMgKzAsMCBA
QAotVGVzdCBtaXggcHJvcGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1
bGUuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLVRlc3QgYmxlbmQgbW9kZSBrZXl3b3Jkcy4KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotVGVzdCBtdWx0aXBseS4KLW1p
eDogbXVsdGlwbHk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJ
TFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibXVs
dGlwbHkiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibXVsdGlwbHkiCi0KLVRl
c3Qgc2NyZWVuLgotbWl4OiBzY3JlZW47Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21p
eCcpKSBpcyAic2NyZWVuIgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlU
SVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNjcmVl
biIKLQotVGVzdCBvdmVybGF5LgotbWl4OiBvdmVybGF5OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdtaXgnKSkgaXMgIm92ZXJsYXkiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFu
Y2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVj
dG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJv
dG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVl
LkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0
KSBpcyAib3ZlcmxheSIKLQotVGVzdCBkYXJrZW4uCi1taXg6IGRhcmtlbjsKLVBBU1MgZmlsdGVy
QXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJkYXJrZW4iCi1QQVNTIG1peFByb3BlcnR5VmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVl
LmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlz
IENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1
ZS5jc3NUZXh0KSBpcyAiZGFya2VuIgotCi1UZXN0IGxpZ2h0ZW4uCi1taXg6IGxpZ2h0ZW47Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibGlnaHRlbiIKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFBy
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NW
YWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJsaWdodGVuIgotCi1UZXN0IGNvbG9yLWRvZGdlLgot
bWl4OiBjb2xvci1kb2RnZTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlz
ICJjb2xvci1kb2RnZSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NW
YWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElW
RV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjb2xvci1k
b2RnZSIKLQotVGVzdCBjb2xvci1idXJuLgotbWl4OiBjb2xvci1idXJuOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImNvbG9yLWJ1cm4iCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAiY29sb3ItYnVybiIKLQotVGVzdCBoYXJkLWxpZ2h0LgotbWl4OiBo
YXJkLWxpZ2h0OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImhhcmQt
bGlnaHQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiaGFyZC1saWdodCIKLQot
VGVzdCBzb2Z0LWxpZ2h0LgotbWl4OiBzb2Z0LWxpZ2h0OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdtaXgnKSkgaXMgInNvZnQtbGlnaHQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0
cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NU
ZXh0KSBpcyAic29mdC1saWdodCIKLQotVGVzdCBkaWZmZXJlbmNlLgotbWl4OiBkaWZmZXJlbmNl
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImRpZmZlcmVuY2UiCi1Q
QVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZGlmZmVyZW5jZSIKLQotVGVzdCBleGNs
dXNpb24uCi1taXg6IGV4Y2x1c2lvbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4
JykpIGlzICJleGNsdXNpb24iCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0g
Q1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklN
SVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZXhj
bHVzaW9uIgotCi1UZXN0IGh1ZS4KLW1peDogaHVlOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdtaXgnKSkgaXMgImh1ZSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BS
SU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJo
dWUiCi0KLVRlc3Qgc2F0dXJhdGlvbi4KLW1peDogc2F0dXJhdGlvbjsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJzYXR1cmF0aW9uIgotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgInNhdHVyYXRpb24iCi0KLVRlc3QgY29sb3IuCi1taXg6IGNvbG9yOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImNvbG9yIgotUEFTUyBtaXhQ
cm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImNvbG9yIgotCi1UZXN0IGx1bWlub3NpdHkuCi1taXg6
IGx1bWlub3NpdHk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJ
TFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibHVt
aW5vc2l0eSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxV
RQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJsdW1pbm9zaXR5Igot
Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1UZXN0IGNvbXBvc2l0
ZSBrZXl3b3Jkcy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQot
VGVzdCBjbGVhci4KLW1peDogY2xlYXI7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21p
eCcpKSBpcyAiY2xlYXIiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1
ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NT
VmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJ
VkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiY2xlYXIi
Ci0KLVRlc3QgY29weS4KLW1peDogY29weTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
bWl4JykpIGlzICJjb3B5IgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlU
SVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImNvcHki
Ci0KLVRlc3Qgc291cmNlLW92ZXIuCi1taXg6IHNvdXJjZS1vdmVyOwotUEFTUyBmaWx0ZXJBdFJ1
bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1vdmVyIgotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotCi1UZXN0IHNvdXJjZS1pbi4KLW1peDogc291
cmNlLWluOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1p
biIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzb3VyY2UtaW4iCi0KLVRlc3Qg
c291cmNlLW91dC4KLW1peDogc291cmNlLW91dDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnbWl4JykpIGlzICJzb3VyY2Utb3V0IgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNl
b2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3Rv
ciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgInNvdXJjZS1vdXQiCi0KLVRlc3Qgc291cmNlLWF0b3AuCi1taXg6IHNvdXJjZS1hdG9wOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1hdG9wIgotUEFT
UyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1hdG9wIgotCi1UZXN0IGRlc3Rp
bmF0aW9uLW92ZXIuCi1taXg6IGRlc3RpbmF0aW9uLW92ZXI7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ21peCcpKSBpcyAiZGVzdGluYXRpb24tb3ZlciIKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFs
dWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZh
bHVlLmNzc1RleHQpIGlzICJkZXN0aW5hdGlvbi1vdmVyIgotCi1UZXN0IGRlc3RpbmF0aW9uLWlu
LgotbWl4OiBkZXN0aW5hdGlvbi1pbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4
JykpIGlzICJkZXN0aW5hdGlvbi1pbiIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NT
X1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlz
ICJkZXN0aW5hdGlvbi1pbiIKLQotVGVzdCBkZXN0aW5hdGlvbi1vdXQuCi1taXg6IGRlc3RpbmF0
aW9uLW91dDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNl
VVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJkZXN0aW5h
dGlvbi1vdXQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVM
aXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFM
VUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZGVzdGluYXRpb24t
b3V0IgotCi1UZXN0IGRlc3RpbmF0aW9uLWF0b3AuCi1taXg6IGRlc3RpbmF0aW9uLWF0b3A7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAiZGVzdGluYXRpb24tYXRvcCIK
LVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJW
YWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJkZXN0aW5hdGlvbi1hdG9wIgotCi1U
ZXN0IHhvci4KLW1peDogeG9yOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkg
aXMgInhvciIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxV
RQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ4b3IiCi0KLUJsZW5k
IG1vZGUgYW5kIGNvbXBvc2l0ZSB0b2dldGhlci4KLW1peDogc2NyZWVuIHNvdXJjZS1vdmVyOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNjcmVlbiBzb3VyY2Utb3Zl
ciIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzY3JlZW4iCi1QQVNTIHN1YlZh
bHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotCi1Db21wb3Np
dGUgYW5kIGJsZW5kIG1vZGUgdG9nZXRoZXIuCi1taXg6IHNvdXJjZS1vdmVyIHNjcmVlbjsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJzb3VyY2Utb3ZlciBzY3JlZW4i
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3Vi
VmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAic291cmNlLW92ZXIiCi1QQVNTIHN1
YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNjcmVlbiIKLQotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQ2FwaXRhbGl6YXRpb24gdGVzdHMuCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUFsbCB0b2tlbnMgY2Fw
aXRhbGl6ZWQuCi1taXg6IFNDUkVFTiBTT1VSQ0UtT1ZFUjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnbWl4JykpIGlzICJzY3JlZW4gc291cmNlLW92ZXIiCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAic2NyZWVuIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMg
Q1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVl
LmNzc1RleHQpIGlzICJzb3VyY2Utb3ZlciIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotV2hpdGVzcGFjZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLQotRXh0cmEgbGVhZGluZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcg
d2hpdGVzcGFjZS4gCi1taXg6ICAgIHNjcmVlbiAgIHNvdXJjZS1vdmVyICAgOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNjcmVlbiBzb3VyY2Utb3ZlciIKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlz
IHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFTUyBzdWJWYWx1ZS5j
c3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzY3JlZW4iCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9w
ZXJ0eS12YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0
LXJ1bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LXZhbGlkLmh0bWwKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwODM5NjkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5
LXZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9u
Ij48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQt
dGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctbWl4LXByb3BlcnR5LXZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVy
dHktaW52YWxpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
LXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQt
ZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMTdhZTQyLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC1leHBlY3RlZC50eHQKKysr
IC9kZXYvbnVsbApAQCAtMSw1NjkgKzAsMCBAQAotVGVzdCBwYXJhbWV0ZXJzIHByb3BlcnR5IHBh
cnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgotCi1PbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVzLgotcGFyYW1ldGVyczogbiAx
IDIgMyA0IDU7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1JbnZhbGlk
IHBhcmFtZXRlciB0eXBlLgotcGFyYW1ldGVyczogbiAxLjAgMi4wICd0ZXh0JzsKLVBBU1MgZmls
dGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIHBhcmFtZXRlciBkZWZpbml0aW9uLgot
cGFyYW1ldGVyczogOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8g
cGFyYW1ldGVyIGRlZmluaXRpb24gd2l0aCBjb21tYS4KLXBhcmFtZXRlcnM6ICw7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgZGVmaW5pdGlvbiBi
ZWZvcmUgdmFsaWQgcGFyYW1ldGVyIGRlZmludGlvbi4KLXBhcmFtZXRlcnM6ICwgbiAxOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIHZhbHVlLgot
cGFyYW1ldGVyczogbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5v
IHBhcmFtZXRlciB2YWx1ZSB3aXRoIG11bHRpcGxlIHBhcmFtZXRlcnMuCi1wYXJhbWV0ZXJzOiBu
MSwgbjIsIG4zOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQ29sb3IgcGFyYW1ldGVyIHRlc3Rz
LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1ObyByZ2IgY29s
b3IgdmFsdWVzLgotcGFyYW1ldGVyczogYyByZ2IoLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotTm8gaHNsIGNvbG9yIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGMgaHNs
KCwsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUhleCB3aXRoIDgg
Y2hhcmFjdGVycy4KLXBhcmFtZXRlcnM6IGMgI0ZGMDAwMEZGOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFy
YW1ldGVycycpIGlzIG51bGwKLQotSGV4IHdpdGggMiBjaGFyYWN0ZXIuCi1wYXJhbWV0ZXJzOiBj
ICNGRjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVJnYmEgd2l0aCAz
IHZhbHVlcyBhbmQgMiBjb21tYXMuCi1wYXJhbWV0ZXJzOiBjIHJnYmEoMjU1LCAwLCAwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBpbnZhbGlkIHRyYW5zZm9y
bSBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUoMGRlZyk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1NdWx0aXBsZSBpbnZhbGlkIHRyYW5zZm9y
bSBmdW5jdGlvbnMuCi1wYXJhbWV0ZXJzOiB0IGludmFsaWQtcm90YXRlKDBkZWcpIGludmFsaWQt
cGVyc3BlY3RpdmUoMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1J
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuCi1wYXJhbWV0ZXJz
OiB0IHJvdGF0ZSgwZGVnKSBpbnZhbGlkLXJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBmdW5j
dGlvbiBiZXR3ZWVuIGludmFsaWQgb25lcy4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUo
MGRlZykgcGVyc3BlY3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gd2l0aCB0
cmFpbGluZyBjb21tYS4KLXBhcmFtZXRlcnM6IHQgcGVyc3BlY3RpdmUoMCksOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSW52YWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFp
bGluZyBjb21tYS4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUoMGRlZyksOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3JtIHdpdGggaW52
YWxpZCBjaGFyYWN0ZXJzCi1wYXJhbWV0ZXJzOiB0IHJvdGF0ZSgwZGVnKSAqLi0sOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBhcnJheS4KLXBhcmFtZXRlcnM6IGEg
YXJyYXkoKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBjb21t
YSBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoLCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJh
bWV0ZXJzJykgaXMgbnVsbAotCi1NdWx0aXBsZSBjb21tYXMgaW4gYXJyYXkuCi1wYXJhbWV0ZXJz
OiBhIGFycmF5KCwsLCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1N
dWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJh
eSgsLDEsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBjb21t
YSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBh
cnJheSgsLTQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotT25lIGNv
bW1hIGZvbGxvd2VkIGJ5IGEgdmFsdWUgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KCw0
KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBuZWdhdGl2ZSB2
YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgt
NCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotT25lIHZhbHVlIGZv
bGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDQsKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVZhbGlkIHZhbHVlcyBmb2xsb3dl
ZCBieSBhIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxLCAyLCAzLCA0LCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1WYWxpZCB2YWx1ZXMgZm9s
bG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDEsIDIsIDMs
IDQsIHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotVHdvIGNvbW1h
cyBhcyBzZXBhcmF0b3IgYmV0d2VlbiB2YWx1ZXMgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFy
cmF5KDEsIDIsICwgNCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1M
ZWFkaW5nIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgsMSwgMiwgMywgNCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2VwYXJh
dGVkIHZhbHVlcyBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMTsgMjsgMzsgNCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQgdmFs
dWVzIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxIDIgMyA0KTsKLVBBU1MgZmlsdGVy
QXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgd2l0aCBj
b21tYSB0ZXJtaW5hdG9yIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxIDIgMyA0LCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQg
dmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXko
LCAxIDIgMyA0KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5hTiBp
biBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoTmFOKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFt
ZXRlcnMnKSBpcyBudWxsCi0KLU5hTiBiZXR3ZWVuIHZhbGlkIHZhbHVlcyBpbiBhcnJheS4KLXBh
cmFtZXRlcnM6IGEgYXJyYXkoMSwgMiwgTmFOLCAzKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgJ25vbmUnIGluIGFycmF5LgotcGFyYW1ldGVy
czogYSBhcnJheShub25lKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0K
LUludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgx
cHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSW52YWxpZCB2YWx1
ZSB1bml0ICdkZWcnIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxZGVnKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgdW5pdCAncHgn
IGluIGFycmF5IGFmdGVyIHZhbGlkIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMSwgMiwg
MywgNHB4KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDIgcGFyYW1ldGVyIHRlc3RzLgot
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQyLgot
cGFyYW1ldGVyczogYSBtYXQyKCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVs
bAotCi1Ub28gdmlldyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMCwgMCwgMCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNv
bW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MigsLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MigwLCAwLCwp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSWRlbnRzIGluIG1hdDIg
ZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMCwgMCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJz
OiBhIG1hdDIoMCwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMg
bnVsbAotCi1ObyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMSAwIDAgMSk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Tb21lIGNvbW1hcy4KLXBhcmFtZXRlcnM6
IGEgbWF0MigxLCAwLCAwIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTGVhZGluZyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoLCAwLCAwLCAxKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0cy4KLXBhcmFt
ZXRlcnM6IGEgbWF0MigxcHgsIDBweCwgMHB4LCAxcHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotTm8gZGVncmVlIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQyKDFk
ZWcsIDBkZWcsIDBkZWcsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTmFOIGluIG1hdDIuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMSwgMCwgMCwgTmFOKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLU1hdDMgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQzLgotcGFyYW1ldGVyczog
YSBtYXQzKCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gdmll
dyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMCwgMCwgMCwgMCk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLXBh
cmFtZXRlcnM6IGEgbWF0MygsLCwsLCwsLCwsLCwsLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MygxLCAw
LCAwLCAwLCAxLCAwLCAwLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotSWRlbnRzIGluIG1hdDMgZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAot
Ci1Ub28gbWFueSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSwgMCwgMCwgMCwgMSwg
MCwgMCwgMCwgMSwgMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1O
byBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSAwIDAgMCAxIDAgMCAwIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotU29tZSBjb21tYXMuCi1wYXJhbWV0ZXJz
OiBhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCAwIDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0
ZXJzJykgaXMgbnVsbAotCi1MZWFkaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MygsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTm8gbGVuZ3RoIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQzKDFweCwgMCwgMCwgMCwg
MXB4LCAwLCAwLCAwLCAxcHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTm8gZGVncmVlIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQzKDFkZWcsIDAsIDAsIDAsIDFk
ZWcsIDAsIDAsIDAsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTmFOIGluIG1hdDMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoTmFOLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDQgcGFyYW1ldGVyIHRlc3RzLgot
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQ0Lgot
cGFyYW1ldGVyczogYSBtYXQ0KCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVs
bAotCi1Ub28gdmlldyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1O
byBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgsLCwsLCwsLCwsLCws
LCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1h
cy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSWRlbnRz
IGluIG1hdDQgZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwgMSwgMCwg
MCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gbWFu
eSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykg
aXMgbnVsbAotCi1ObyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSAwIDAgMCAwIDEgMCAw
IDAgMCAxIDAgMCAwIDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAot
Ci1Tb21lIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAwLCAxLCAwIDAgMCAwIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTGVhZGluZyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoLCAwLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0cy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxcHgs
IDAsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAxcHgpOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gZGVncmVlIHVuaXRzLgotcGFy
YW1ldGVyczogYSBtYXQ0KDFkZWcsIDAsIDAsIDAsIDAsIDFkZWcsIDAsIDAsIDAsIDAsIDFkZWcs
IDAsIDAsIDAsIDAsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTmFOIGluIG1hdDQuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoTmFOLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMn
KSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1p
eGluZyBwYXJhbWV0ZXIgdHlwZXMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIgd2l0aCBoZXggY29sb3IuCi1wYXJhbWV0ZXJzOiBu
MSAxIDIgI0ZGMDAwMDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU51
bWJlciBwYXJhbWV0ZXIgd2l0aCBjb2xvciBrZXl3b3JkLgotcGFyYW1ldGVyczogbjEgMSAyIHJl
ZDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU51bWJlciBwYXJhbWV0
ZXIgd2l0aCByZ2IgY29sb3IuCi1wYXJhbWV0ZXJzOiBuMSAxIDIgcmdiKDI1NSwgMCwgMCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIG51bWJlciBw
YXJhbWV0ZXIuCi1wYXJhbWV0ZXJzOiBhIHJnYigyNTUsIDAsIDApIDE7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEg
YXJyYXkoMCwgcmdiKDI1NSwgMCwgMCkpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlz
IG51bGwKLQotQ29sb3IgYW5kIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgwLCAwKSByZ2Io
MjU1LCAwLCAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgcm90YXRlKDQ1ZGVnKSByZ2Io
MjU1LCAwLCAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgcmdiKDI1NSwgMCwgMCkgcm90
YXRlKDQ1ZGVnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IGFmdGVyIGFycmF5IHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMCkgcmdiKDI1NSwgMCwg
MCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIG1h
dDIuCi1wYXJhbWV0ZXJzOiBhIHJnYigyNTUsIDAsIDApIG1hdDIoMCwgMCwgMCwgMCk7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1tYXQyIHdpdGggbWF0My4KLXBhcmFt
ZXRlcnM6IGEgbWF0MigxLCAwLCAwLCAxKSBtYXQzKDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0
ZXJzLXByb3BlcnR5LWludmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxp
ZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmZDVmYzQ1Li4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+
Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1j
b21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLXBh
cmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA3ZWU3MGJhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMt
cHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNDQxICswLDAg
QEAKLVRlc3QgcGFyYW1ldGVycyBwcm9wZXJ0eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0
ZXIgYXQtcnVsZS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTnVtYmVyIHBhcmFtZXRlciB0ZXN0cy4K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotSW50ZWdlciBwYXJh
bWV0ZXJzLgotcGFyYW1ldGVyczogbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNzsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAibjEgMSwgbjIg
MiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNyIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUg
aW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDQKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4xIDEiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVl
VHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZh
bHVlLmNzc1RleHQpIGlzICJuMiAyIDMiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBD
U1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJuMyAzIDQgNSIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVl
LkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMg
Im40IDQgNSA2IDciCi0KLUZsb2F0IHBhcmFtZXRlcnMuCi1wYXJhbWV0ZXJzOiBuMSAxLjEsIG4y
IDIuMiAzLjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQ7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm4xIDEuMSwgbjIgMi4yIDMuMywg
bjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
cGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDQKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4xIDEuMSIKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4yIDIuMiAzLjMiCi1QQVNTIHN1YlZhbHVlLmNz
c1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlZhbHVlLmNzc1RleHQpIGlzICJuMyAzLjEgNC4xIDUuMSIKLVBBU1Mgc3ViVmFsdWUuY3Nz
VmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViVmFsdWUuY3NzVGV4dCkgaXMgIm40IDQuMSA1LjIgNi4zIDcuNCIKLQotUGFyYW1ldGVyIG5h
bWUgc2FtZSBhcyBDU1Mga2V5d29yZC4KLXBhcmFtZXRlcnM6IGJhY2tncm91bmQgMCAxIDAgMTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYmFja2dyb3Vu
ZCAwIDEgMCAxIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5j
c3NUZXh0KSBpcyAiYmFja2dyb3VuZCAwIDEgMCAxIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1UcmFuc2Zvcm0gcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1UcmFuc2Zvcm0gcGFyYW1ldGVyIHdp
dGggb25lIHRyYW5zZm9ybSBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IHQgcm90YXRlKDBkZWcpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJ0IHJvdGF0ZSgw
ZGVnKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90
b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENT
U1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgInQgcm90YXRlKDBkZWcpIgotCi1UcmFuc2Zvcm0gcGFyYW1ldGVyIHdpdGggbXVsdGlw
bGUgdHJhbnNmb3JtIGZ1bmN0aW9ucy4KLXBhcmFtZXRlcnM6IHQgcm90YXRlKDBkZWcpIHBlcnNw
ZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgInQgcm90YXRlKDBkZWcpIHBlcnNwZWN0
aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkiCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ0IHJvdGF0ZSgwZGVnKSBw
ZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIgotCi1NdWxpdHBs
ZSB0cmFuc2Zvcm0gcGFyYW1ldGVycy4KLXBhcmFtZXRlcnM6IHQxIHJvdGF0ZSgwZGVnKSwgdDIg
cm90YXRlKDBkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykp
IGlzICJ0MSByb3RhdGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVnKSIKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInQxIHJvdGF0ZSgwZGVnKSIK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInQyIHJvdGF0ZSgwZGVnKSIK
LQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1l
dGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1B
cnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScuCi1wYXJhbWV0ZXJzOiBhcnJheSBhcnJh
eSgxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYXJy
YXkgYXJyYXkoMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFt
ZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVl
LmNzc1RleHQpIGlzICJhcnJheSBhcnJheSgxKSIKLQotQXJyYXkgcGFyYW1ldGVyIHdpdGggb25l
IHBvc2l0aXZlIGludGVnZXIuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDEpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJhIGFycmF5KDEpIgotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVl
TGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVF
X0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYSBhcnJheSgx
KSIKLQotQXJyYXkgcGFyYW1ldGVyIHdpdGggb25lIG5lZ2F0aXZlIGZsb2F0LgotcGFyYW1ldGVy
czogYSBhcnJheSgtMS4wMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSkgaXMgImEgYXJyYXkoLTEuMDEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBp
bnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1
ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYSBhcnJheSgtMS4wMSkiCi0KLUFycmF5IHBhcmFt
ZXRlciB3aXRoIG11bHRpcGxlIHBvc2l0aXZlIGludGVnZXJzLgotcGFyYW1ldGVyczogYSBhcnJh
eSgxLCAyLCAzLCA0LCA1KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpKSBpcyAiYSBhcnJheSgxLCAyLCAzLCA0LCA1KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBl
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImEgYXJyYXkoMSwgMiwgMywgNCwgNSki
Ci0KLUFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuCi1wYXJhbWV0
ZXJzOiBhIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIKLQotTXVsdGlwbGUgYXJyYXkgcGFy
YW1ldGVycy4KLXBhcmFtZXRlcnM6IGExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSksIGEy
IGFycmF5KDEsIDIsIDMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJz
JykpIGlzICJhMSBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCBhMiBhcnJheSgxLCAyLCAz
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgImExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkiCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlZhbHVlLmNzc1RleHQpIGlzICJhMiBhcnJheSgxLCAyLCAzKSIKLQotPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotQ29sb3IgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1IZXggY29sb3IuCi1wYXJhbWV0
ZXJzOiBjICMwMEZGMDA7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMn
KSkgaXMgImMgcmdiKDAsIDI1NSwgMCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFs
dWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAyNTUsIDApIgotCi1Db2xvciBrZXl3
b3JkLgotcGFyYW1ldGVyczogYyBncmVlbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
cGFyYW1ldGVycycpKSBpcyAiYyByZ2IoMCwgMTI4LCAwKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
cGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImMgcmdiKDAsIDEyOCwgMCkiCi0K
LUNvbG9yIHJnYiBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IGMgcmdiKDAsIDEyOCwgMCk7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImMgcmdiKDAsIDEyOCwg
MCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9f
XyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9w
ZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NW
YWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQp
IGlzICJjIHJnYigwLCAxMjgsIDApIgotCi1Db2xvciBoc2wgZnVuY3Rpb24uCi1wYXJhbWV0ZXJz
OiBjIGhzbCgxMjAsIDEwMCUsIDUwJSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3Bh
cmFtZXRlcnMnKSkgaXMgImMgcmdiKDAsIDI1NSwgMCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAyNTUsIDApIgotCi1D
b2xvciByZ2JhIGZ1bmN0aW9uLgotcGFyYW1ldGVyczogYyByZ2JhKDAsIDI1NSwgMCwgMC4yKTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYyByZ2JhKDAs
IDI1NSwgMCwgMC4yKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVU
eXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiCi0KLUNvbG9yIGhzbGEgZnVu
Y3Rpb24uCi1wYXJhbWV0ZXJzOiBjIGhzbGEoMTIwLCAxMDAlLCA1MCUsIDAuMik7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImMgcmdiYSgwLCAyNTUsIDAs
IDAuMikiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJv
dG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBD
U1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJjIHJnYmEoMCwgMjU1LCAwLCAwLjIpIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MiBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJz
OiBtIG1hdDIoMSwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFt
ZXRlcnMnKSkgaXMgIm0gbWF0MigxLCAwLCAwLCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBl
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0MigxLCAwLCAwLCAxKSIKLQot
TWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDIo
LTEsIC0xLCAtMSwgLTEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJz
JykpIGlzICJtIG1hdDIoLTEsIC0xLCAtMSwgLTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlW
YWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9w
ZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQyKC0xLCAtMSwgLTEsIC0xKSIK
LQotTWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotcGFy
YW1ldGVyczogbSBtYXQyKC0xLCAxLCAxLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MigtMSwgMSwgMSwgLTEpIgotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlz
dC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJ
U1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQyKC0xLCAx
LCAxLCAtMSkiCi0KLU1hdDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4K
LXBhcmFtZXRlcnM6IG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpOwotUEFTUyBmaWx0ZXJBdFJ1
bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1NYXQzIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MyBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJz
OiBtIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAw
LCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90
b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENT
U1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgIm0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSIKLQotTWF0MyBwYXJhbWV0
ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDMoLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3Bh
cmFtZXRlcnMnKSkgaXMgIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSIKLQotTWF0MyBw
YXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotcGFyYW1ldGVyczog
bSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAibSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEs
IDEsIC0xLCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3Rv
ciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUu
Y3NzVGV4dCkgaXMgIm0gbWF0MygtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgMSkiCi0KLU1h
dDMgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLXBhcmFtZXRlcnM6IG0g
bWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MygxLCAtMi4yLCAz
LjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtIG1hdDMoMSwgLTIuMiwgMy4xNCwg
MC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1NYXQ0IHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0NCBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJzOiBt
IG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0NCgxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBw
YXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9M
SVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0NCgxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIKLQotTWF0NCBwYXJh
bWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDQoLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJtIG1hdDQoLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NT
VmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0
KSBpcyAibSBtYXQ0KC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xKSIKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQg
cG9zaXRpdmUgdmFsdWVzLgotcGFyYW1ldGVyczogbSBtYXQ0KC0xLCAxLCAxLCAtMSwgLTEsIDEs
IDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVy
dHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBw
YXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5
cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQ0KC0xLCAxLCAxLCAtMSwg
LTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSkiCi0KLU1hdDQgcGFyYW1l
dGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLXBhcmFtZXRlcnM6IG0gbWF0NCgxLCAt
Mi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAx
LCAtMi4yLCAzLjE0LCAwLjQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0
ZXJzJykpIGlzICJtIG1hdDQoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQs
IDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40KSIKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNU
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0NCgxLCAtMi4y
LCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAt
Mi4yLCAzLjE0LCAwLjQpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci1Db21iaW5lZCBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJh
bnNmb3JtIHBhcmFtZXRlciwgbWF0cml4IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4K
LXBhcmFtZXRlcnM6IG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1h
dDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1h
dDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJy
YXkoMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm4g
MSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIoMSwgMCwgMCwgMSks
IG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQoMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXkoMSkiCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFs
dWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxl
bmd0aCBpcyA3Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFM
VUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJuIDEiCi1Q
QVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAxMjgsIDApIgot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidCByb3RhdGUoMGRlZykiCi1Q
QVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtMSBtYXQyKDEsIDAsIDAsIDEp
IgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibTIgbWF0MygxLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAxKSIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSkiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElT
VAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJhIGFycmF5KDEpIgot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMt
cHJvcGVydHktdmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTQ4ZDNk
MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+
Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRl
ci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3Rz
L3BhcnNpbmctcGFyYW1ldGVycy1wcm9wZXJ0eS12YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
LXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDMwYjg4Y2QuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctc3JjLXByb3BlcnR5
LWludmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTY1ICswLDAgQEAKLVRl
c3Qgc3JjIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgot
Ci1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1VUkwgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU5vIHByb3BlcnR5IHZhbHVlLgotc3JjOiA7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdzcmMnKSBpcyBudWxsCi0KLU9ubHkgYSBzaW5nbGUgY29tbWEuCi1zcmM6ICw7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLU9ubHkgdHdvIGNvbW1hcy4KLXNyYzogLCAsOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1JZGVudGlmaWVyIGluc3RlYWQgb2YgVVJM
Lgotc3JjOiB2ZXJ0ZXgtc2hhZGVyOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1J
ZGVudGlmaWVyIHdpdGggZm9ybWF0IGluc3RlYWQgb2YgVVJMIHdpdGggZm9ybWF0Lgotc3JjOiB2
ZXJ0ZXgtc2hhZGVyIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKTsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J3NyYycpIGlzIG51bGwKLQotTG9jYWwgZnVuY3Rpb24gaW5zdGVhZCBvZiBVUkwgZnVuY3Rpb24u
Ci1zcmM6IGxvY2FsKHNoYWRlci52cyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUZvcm1hdCBmdW5jdGlv
biB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotSWRl
bnRpZmllciBpbnN0ZWFkIG9mIGZvcm1hdCBmdW5jdGlvbi4KLXNyYzogdXJsKHNoYWRlci52cykg
dmVydGV4LXNoYWRlcjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotU3RyaW5nIGlu
c3RlYWQgb2YgZm9ybWF0IGZ1bmN0aW9uLgotc3JjOiB1cmwoc2hhZGVyLnZzKSAneC1zaGFkZXIv
eC12ZXJ0ZXgnOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Gb3JtYXQgZnVuY3Rp
b24gbWlzc3BlbGxlZC4KLXNyYzogdXJsKHNoYWRlci52cykgZnJtdCgneC1zaGFkZXIveC12ZXJ0
ZXgnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotRm9ybWF0IGZ1bmN0aW9uIGVt
cHR5Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycp
IGlzIG51bGwKLQotRm9ybWF0IGZ1bmN0aW9uIHdpdGggc2luZ2xlIGlkZW50aWZlciBhcmd1bWVu
dC4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KHZlcnRleC1zaGFkZXIpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Gb3JtYXQgZnVuY3Rpb24gd2l0aCBzaW5nbGUgbnVtYmVy
IGFyZ3VtZW50Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoMCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdzcmMnKSBpcyBudWxsCi0KLUZvcm1hdCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIHNwYWNlLXNl
cGFyYXRlZCBpZGVudGlmZXIgYXJndW1lbnRzLgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
dmVydGV4LXNoYWRlciBmcmFnbWVudC1zaGFkZXIpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMg
bnVsbAotCi1Gb3JtYXQgZnVuY3Rpb24gd2l0aCBtdWx0aXBsZSBjb21tYS1zZXBhcmF0ZWQgaWRl
bnRpZmVyIGFyZ3VtZW50cy4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KHZlcnRleC1zaGFk
ZXIsZnJhZ21lbnQtc2hhZGVyKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotRm9y
bWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUgc3BhY2Utc2VwYXJhdGVkIHN0cmluZyBhcmd1bWVu
dHMuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnICd4LXNo
YWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLUZvcm1h
dCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIGNvbW1hLXNlcGFyYXRlZCBzdHJpbmcgYXJndW1lbnRz
Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JywneC1zaGFk
ZXIveC1mcmFnbWVudCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1NdWx0aXBs
ZSB2YWxpZCBmb3JtYXQgZnVuY3Rpb25zLgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gt
c2hhZGVyL3gtdmVydGV4JykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLVB1bmN0dWF0aW9uIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotCi1MZWFkaW5nIGNvbW1hIGJlZm9yZSBmaXJzdCBVUkwuCi1zcmM6ICwg
dXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnc3JjJykgaXMgbnVsbAotCi1Db21tYSBiZXR3ZWVuIFVSTCBhbmQgZm9ybWF0Lgotc3JjOiB1
cmwoc2hhZGVyLnZzKSwgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnc3JjJykgaXMgbnVsbAotCi1UcmFpbGluZyBjb21tYSBhZnRlciBmb3JtYXQuCi1zcmM6IHVy
bChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSw7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdzcmMnKSBpcyBudWxsCi0KLVR3byBjb21tYXMgYmV0d2VlbiBVUkxzLgotc3JjOiB1cmwoc2hh
ZGVyLnZzKSwsdXJsKHNoYWRlci5mcyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0K
LVR3byBjb21tYXMgYmV0d2VlbiBVUkxzIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZz
KSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksLHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1z
aGFkZXIveC1mcmFnbWVudCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1ObyBj
b21tYSBiZXR3ZWVuIFVSTHMuCi1zcmM6IHVybChzaGFkZXIudnMpIHVybChzaGFkZXIuZnMpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1ObyBjb21tYSBiZXR3ZWVuIFVSTHMgd2l0
aCBmb3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgn
KSB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKTsKLVBBU1MgZmls
dGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJ3NyYycpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQot
VEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC5odG1s
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3Bh
cnNpbmctc3JjLXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggN2EyNWMyMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4K
LTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRp
diBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3Rv
bS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlw
dC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLmpzIj48L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxpZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwY2I0NGY0Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12
YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwyNjkgKzAsMCBAQAotVGVzdCBz
cmMgcHJvcGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLVVSTHMgd2l0aG91dCBmb3JtYXQgdGVzdHMuCi09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBVUkwgd2l0aG91dCBmb3JtYXQuCi1z
cmM6IHVybChzaGFkZXIudnMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkg
aXMgInVybChzaGFkZXIudnMpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIgotCi1Ud28gVVJMcyB3aXRob3V0
IGZvcm1hdC4KLXNyYzogdXJsKHNoYWRlci52cyksIHVybChzaGFkZXIuZnMpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVy
LmZzKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLnZzKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1
ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVl
Ci1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykiCi0KLVRo
cmVlIFVSTHMgd2l0aG91dCBmb3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVy
LmZzKSwgdXJsKHNoYWRlcjMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkg
aXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMpIgotUEFTUyBz
cmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3Jj
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
c3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMg
dHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChz
aGFkZXIudnMpIgotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBB
U1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyLmZzKSIKLVBBU1Mgc3ViVmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJv
dG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNT
U19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNo
YWRlcjMpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1VUkxz
IHdpdGggZm9ybWF0IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1PbmUgVVJMIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycp
KSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIgotUEFTUyBz
cmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3Jj
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
c3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMg
dHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChz
aGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIKLQotVHdvIFVSTHMgd2l0aCBm
b3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwg
dXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNo
YWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21l
bnQnKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiCi1QQVNT
IHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25z
dHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgInVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIgotCi1U
aHJlZSBVUkxzIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVu
dCcpLCB1cmwoc2hhZGVyMykgZm9ybWF0KCd1bmtub3duJyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZl
cnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJs
KHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3Rh
bmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3By
b3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMg
dHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1z
aGFkZXIveC12ZXJ0ZXgnKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0
cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNo
YWRlci94LWZyYWdtZW50JykiCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMg
dHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25v
d24nKSIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTWl4ZWQg
VVJMcyB3aXRoIGFuZCB3aXRob3V0IGZvcm1hdCB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLQotVGhyZWUgVVJMcy4gTWlkZGxlIFVSTCB3aXRob3V0IGZv
cm1hdC4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLCB1
cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1z
aGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vu
a25vd24nKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwot
UEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5
cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiCi1Q
QVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18g
PT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3Nz
VGV4dCkgaXMgInVybChzaGFkZXIuZnMpIgotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRy
dWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyMykgZm9ybWF0
KCd1bmtub3duJykiCi0KLVRocmVlIFVSTHMuIEZpcnN0IGFuZCBsYXN0IFVSTHMgd2l0aG91dCBm
b3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gt
c2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1
ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1
ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIKLVBB
U1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNv
bnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9
PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NU
ZXh0KSBpcyAidXJsKHNoYWRlcjMpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci1DYXBpdGFsaXphdGlvbiB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLQotQWxsIHRva2VucyBjYXBpdGFsaXplZC4KLXNyYzogVVJMKFNI
QURFUi5WUykgRk9STUFUKCdYLVNIQURFUi9YLVZFUlRFWCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChTSEFERVIuVlMpIGZvcm1hdCgnWC1TSEFERVIvWC1W
RVJURVgnKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5
cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJ1cmwoU0hBREVSLlZTKSBmb3JtYXQoJ1gtU0hBREVSL1gtVkVSVEVYJykiCi0K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVdoaXRlc3BhY2UgdGVz
dHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUV4dHJhIGxl
YWRpbmcsIG1pZGRsZSwgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UuIAotc3JjOiAgICB1cmwoc2hh
ZGVyLnZzKSAgIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSAgICwgICB1cmwoc2hhZGVyLmZz
KSAgIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpICAgOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12
ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiCi1Q
QVNTIHNyY1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBzcmNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBzcmNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFs
dWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAi
dXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIgotUEFTUyBzdWJWYWx1
ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1
ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFs
dWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1
cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIKLQotTm8gd2hpdGVz
cGFjZSBhcm91bmQgY29tbWEuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIv
eC12ZXJ0ZXgnKSx1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykpIGlzICJ1cmwoc2hhZGVyLnZzKSBm
b3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFk
ZXIveC1mcmFnbWVudCcpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAyCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBz
dWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNz
c1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
VmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0
ZXgnKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1
YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3Nz
VmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdt
ZW50JykiCi0KLU5vIHdoaXRlc3BhY2UgYmV0d2VlbiBVUkwgYW5kIGZvcm1hdC4KLXNyYzogdXJs
KHNoYWRlci52cylmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4Jyk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94
LXZlcnRleCcpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVl
TGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVl
VHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUu
Y3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxp
ZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2MGNmNWUzLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4K
LTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2Ny
aXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0
eS12YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0
LXRlc3RzL3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1
bGUtaW52YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDRlODIyNi4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1z
eW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsMzMgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNv
bW1vbi5qcy4KLQotZGVzY3JpcHRpb24oIlRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtp
dC1maWx0ZXIuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBo
ZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGNzc1J1bGUsIGluc2VydFJ1bGVFeGNlcHRpb247Ci0K
LWZ1bmN0aW9uIHRlc3RJbnZhbGlkRmlsdGVyQXRSdWxlKGRlc2NyaXB0aW9uLCBydWxlKQotewot
ICAgIGRlYnVnKCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBydWxlKTsKLQotICAgIHRyeSB7
Ci0gICAgICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZShydWxlLCAwKTsKLSAgICAgICAgdGVzdEZh
aWxlZCgiXCIiICsgcnVsZSArICJcIiBkaWQgbm90IHRocm93IGEgc3ludGF4IGVycm9yLiIpOwot
ICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAgICAgaW5zZXJ0UnVsZUV4Y2VwdGlvbiA9IGU7Ci0gICAg
ICAgIHNob3VsZEJlVHJ1ZSgiaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2Vw
dGlvbiIpOwotICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJpbnNlcnRSdWxlRXhjZXB0aW9uLmNv
ZGUiLCAiRE9NRXhjZXB0aW9uLlNZTlRBWF9FUlIiKQotICAgIH0KLX0KLQotaGVhZGluZygiRmls
dGVyIGF0LXJ1bGUgc3ltYm9sIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIlVu
cHJlZml4ZWQgcnVsZS4iLCAiQGZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci0KLWhlYWRpbmcoIkZp
bHRlciBuYW1lIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIk1pc3NpbmcgZmls
dGVyIG5hbWUgaWRlbnRpZmllci4iLCAiQC13ZWJraXQtZmlsdGVyIHsgfSIpOwotdGVzdEludmFs
aWRGaWx0ZXJBdFJ1bGUoIkZpbHRlciBuYW1lIGFzIHN0cmluZy4iLCAiQC13ZWJraXQtZmlsdGVy
ICdteS1maWx0ZXInIHsgfSIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIkZpbHRlciBuYW1l
IGFzIG51bWJlci4iLCAiQC13ZWJraXQtZmlsdGVyIDEyMyB7IH0iKTsKLQotaGVhZGluZygiRmls
dGVyIGF0LXJ1bGUgYm9keSB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyQXRSdWxlKCJNaXNz
aW5nIHJ1bGUgYm9keS4iLCAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciIpOwotdGVzdEludmFs
aWRGaWx0ZXJBdFJ1bGUoIk1pc3Npbmcgb3BlbmluZyBicmFjZS4iLCAiQC13ZWJraXQtZmlsdGVy
IG15LWZpbHRlciB9Iik7Ci10ZXN0SW52YWxpZEZpbHRlckF0UnVsZSgiTWlzc2luZyBjbG9zaW5n
IGJyYWNlLiIsICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsiKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQt
dGVzdHMvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1bGUt
dmFsaWQuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE4ZTU5OTYuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4
L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1bGUtdmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAt
MSwxMTkgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cy4KLQotZGVzY3JpcHRpb24oIlRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtpdC1maWx0
ZXIuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJz
IHRvIHNlZSB0aGVtLgotdmFyIGNzc1J1bGUsIGRlY2xhcmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0
RmlsdGVyQXRSdWxlKGRlc2NyaXB0aW9uLCBydWxlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFBy
b3BlcnRpZXMpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHJ1bGUp
OwotCi0gICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKHJ1bGUsIDApOwotCi0gICAgLy8gQ2hlY2sg
dGhlIHJ1bGUncyB0ZXh0IGFuZCB0eXBlLgotICAgIGNzc1J1bGUgPSBzdHlsZXNoZWV0LmNzc1J1
bGVzLml0ZW0oMCk7Ci0gICAgY2hlY2tSdWxlKGV4cGVjdGVkVmFsdWUsICJDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRSIsICJXZWJLaXRDU1NGaWx0ZXJSdWxlIik7Ci0KLSAgICAvLyBDaGVjayB0
aGUgcnVsZSdzIENTU1N0eWxlRGVjbGFyYXRpb24gcHJvcGVydGllcy4KLSAgICBkZWNsYXJhdGlv
biA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgaWYgKCFleHBlY3RlZFByb3BlcnRpZXMpCi0gICAgICAg
IGV4cGVjdGVkUHJvcGVydGllcyA9IFtdOwotICAgIHZhciBudW1Qcm9wZXJ0aWVzID0gMDsKLSAg
ICBmb3IgKHZhciBwcm9wZXJ0eU5hbWUgaW4gZXhwZWN0ZWRQcm9wZXJ0aWVzKSB7Ci0gICAgICAg
IHZhciBwcm9wZXJ0eVZhbHVlID0gZXhwZWN0ZWRQcm9wZXJ0aWVzW3Byb3BlcnR5TmFtZV07Ci0g
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnIiArIHByb3BlcnR5TmFtZSArICInKSIsIHByb3BlcnR5VmFsdWUpOwotICAgICAgICBudW1Q
cm9wZXJ0aWVzKys7Ci0gICAgfQotICAgIHNob3VsZEV2YWx1YXRlVG8oImRlY2xhcmF0aW9uLmxl
bmd0aCIsIG51bVByb3BlcnRpZXMpOwotfQotCi1mdW5jdGlvbiB0ZXN0TmVzdGVkUnVsZXMoZGVz
Y3JpcHRpb24sIHBhcmVudFJ1bGUsIHBhcmVudEV4cGVjdGF0aW9ucywgY2hpbGRFeHBlY3RhdGlv
bnMpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHBhcmVudFJ1bGUp
OwotCi0gICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKHBhcmVudFJ1bGUsIDApOwotCi0gICAgY3Nz
UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBjaGVja1J1bGUocGFyZW50
RXhwZWN0YXRpb25zLmNzc1RleHQsIHBhcmVudEV4cGVjdGF0aW9ucy5ydWxlVHlwZSwgcGFyZW50
RXhwZWN0YXRpb25zLmNvbnN0cnVjdG9yTmFtZSk7Ci0KLSAgICBpZiAoY2hpbGRFeHBlY3RhdGlv
bnMpIHsKLSAgICAgICAgY3NzUnVsZSA9IGNzc1J1bGUuY3NzUnVsZXNbMF07Ci0gICAgICAgIGNo
ZWNrUnVsZShjaGlsZEV4cGVjdGF0aW9ucy5jc3NUZXh0LCBjaGlsZEV4cGVjdGF0aW9ucy5ydWxl
VHlwZSwgY2hpbGRFeHBlY3RhdGlvbnMuY29uc3RydWN0b3JOYW1lKTsKLQotICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IGNzc1J1bGUuY3NzVGV4dC5sZW5ndGg7IGkrKykgewotICAgICAgICAg
ICAgaWYgKGNzc1J1bGUuY3NzVGV4dFtpXSAhPSBjaGlsZEV4cGVjdGF0aW9ucy5jc3NUZXh0W2ld
KQotICAgICAgICAgICAgICAgIHdpbmRvdy5hbGVydChpICsgIjogIiArIGNzc1J1bGUuY3NzVGV4
dFtpXSk7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLS8vIENoZWNrcyB0aGUgZ2xvYmFsICJjc3NS
dWxlIiBhZ2FpbnN0IHNvbWUgZXhwZWN0ZWQgcHJvcGVydGllcy4KLWZ1bmN0aW9uIGNoZWNrUnVs
ZShleHBlY3RlZENTU1RleHQsIGV4cGVjdGVkUnVsZVR5cGUsIGV4cGVjdGVkQ29uc3RydWN0b3JO
YW1lKQotewotICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiY3NzUnVsZS5jc3NUZXh0IiwgZXhw
ZWN0ZWRDU1NUZXh0KTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJjc3NSdWxlLnR5cGUiLCBleHBl
Y3RlZFJ1bGVUeXBlKTsKLSAgICBzaG91bGRIYXZlQ29uc3RydWN0b3IoImNzc1J1bGUiLCBleHBl
Y3RlZENvbnN0cnVjdG9yTmFtZSk7Ci19Ci0KLWhlYWRpbmcoIkZpbHRlciBhdC1ydWxlIHRlc3Rz
LiIpOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVsZSwgc2VwYXJhdGVkIGJ5IHNpbmdsZSBz
cGFjZXMuIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iLAotICAgICJALXdl
YmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIpOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVs
ZSwgc2VwYXJhdGVkIGJ5IG11bHRpcGxlIHNwYWNlcy4iLAotICAgICIgICBALXdlYmtpdC1maWx0
ZXIgICBteS1maWx0ZXIgICB7ICAgfSAgICIsCi0gICAgIkAtd2Via2l0LWZpbHRlciBteS1maWx0
ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJFbXB0eSBydWxlLCBubyBleHRyYSB3aGl0ZXNw
YWNlLiIsCi0gICAgIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXJ7fSIsCi0gICAgIkAtd2Via2l0
LWZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJSdWxlIHdpdGggYXJi
aXRyYXJ5IHByb3BlcnRpZXMuIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IHdp
ZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgfSIsIAotICAgICJALXdlYmtpdC1maWx0ZXIgbXkt
ZmlsdGVyIHsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyB9IiwKLSAgICB7d2lkdGg6ICIx
MDBweCIsIGhlaWdodDogIjEwMHB4In0pOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVsZSwg
Y29tbWVudCBzZXBhcmF0b3JzIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyLyoqL215LWZpbHRlci8q
Ki97IH0iLAotICAgICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIpOwotdGVzdEZpbHRl
ckF0UnVsZSgiRW1wdHkgcnVsZSwgY29tbWVudCtzcGFjZSBzZXBhcmF0b3JzIiwKLSAgICAiQC13
ZWJraXQtZmlsdGVyLyoqLyBteS1maWx0ZXIvKiovIHsgfSIsCi0gICAgIkAtd2Via2l0LWZpbHRl
ciBteS1maWx0ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJFbXB0eSBydWxlLCBzcGFjZStj
b21tZW50IHNlcGFyYXRvcnMiLAotICAgICJALXdlYmtpdC1maWx0ZXIgLyoqL215LWZpbHRlciAv
KioveyB9IiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iKTsKLXRlc3RGaWx0
ZXJBdFJ1bGUoIkVtcHR5IHJ1bGUsIHNwYWNlK2NvbW1lbnQrc3BhY2Ugc2VwYXJhdG9ycyIsCi0g
ICAgIkAtd2Via2l0LWZpbHRlciAvKiovIG15LWZpbHRlciAvKiovIHsgfSIsCi0gICAgIkAtd2Vi
a2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci0KLWhlYWRpbmcoIk5lc3RlZCBmaWx0ZXIgYXQt
cnVsZSB0ZXN0cy4iKTsKLXRlc3ROZXN0ZWRSdWxlcygiTmVzdGVkIHJ1bGUuIiwKLSAgICAiQC13
ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyBALXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVy
IHsgfSB9IiwgCi0gICAgewotICAgICAgICBjc3NUZXh0OiAiQC13ZWJraXQtZmlsdGVyIHBhcmVu
dC1maWx0ZXIgeyB9IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFLAotICAgICAgICBjb25zdHJ1Y3Rvck5hbWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIgotICAg
IH0pOwotdGVzdE5lc3RlZFJ1bGVzKCJUd2ljZSBuZXN0ZWQgcnVsZS4iLAotICAgICJALXdlYmtp
dC1maWx0ZXIgcGFyZW50LWZpbHRlciB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyBA
LXdlYmtpdC1maWx0ZXIgZ3JhbmRjaGlsZC1maWx0ZXIgfSB9IiwgCi0gICAgewotICAgICAgICBj
c3NUZXh0OiAiQC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IiwKLSAgICAgICAgcnVs
ZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFLAotICAgICAgICBjb25zdHJ1Y3Rvck5h
bWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIgotICAgIH0pOwotdGVzdE5lc3RlZFJ1bGVzKCJOZXN0
ZWQgcnVsZSBpbnNpZGUgYXJiaXRyYXJ5IHJ1bGUuIiwgCi0gICAgIkBmb250LWZhY2UgeyBALXdl
YmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSB9IiwgCi0gICAgewotICAgICAgICBjc3NUZXh0
OiAiQGZvbnQtZmFjZSB7IH0iLAotICAgICAgICBydWxlVHlwZTogQ1NTUnVsZS5GT05UX0ZBQ0Vf
UlVMRSwKLSAgICAgICAgY29uc3RydWN0b3JOYW1lOiAiQ1NTRm9udEZhY2VSdWxlIgotICAgIH0p
OwotdGVzdE5lc3RlZFJ1bGVzKCJOZXN0ZWQgcnVsZSBpbnNpZGUgbWVkaWEgcXVlcnkuIiwKLSAg
ICAiQG1lZGlhIHNjcmVlbiB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IH0iLCAK
LSAgICB7Ci0gICAgICAgIGNzc1RleHQ6ICJAbWVkaWEgc2NyZWVuIHsgXG4gIEAtd2Via2l0LWZp
bHRlciBjaGlsZC1maWx0ZXIgeyB9XG59IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuTUVE
SUFfUlVMRSwKLSAgICAgICAgY29uc3RydWN0b3JOYW1lOiAiQ1NTTWVkaWFSdWxlIiwKLSAgICB9
LAotICAgIHsKLSAgICAgICAgY3NzVGV4dDogIkAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIg
eyB9IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFLAotICAg
ICAgICBjb25zdHJ1Y3Rvck5hbWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIiwKLSAgICB9KTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC5qcyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQt
dGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZDRmYWNhMy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctY3Vz
dG9tLWZ1bmN0aW9uLWludmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxMzkgKzAsMCBAQAot
ZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgY3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhl
IC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2Jh
bCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBzdHlsZVJ1bGUsIGRlY2xh
cmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0SW52YWxpZEZpbHRlclJ1bGUoZGVzY3JpcHRpb24sIHJ1
bGUpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHJ1bGUpOwotCi0g
ICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKCJib2R5IHsgLXdlYmtpdC1maWx0ZXI6ICIgKyBydWxl
ICsgIjsgfSIsIDApOwotCi0gICAgc3R5bGVSdWxlID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVt
KDApOwotICAgIHNob3VsZEJlKCJzdHlsZVJ1bGUudHlwZSIsICJDU1NSdWxlLlNUWUxFX1JVTEUi
KTsKLQotICAgIGRlY2xhcmF0aW9uID0gc3R5bGVSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJk
ZWNsYXJhdGlvbi5sZW5ndGgiLCAiMCIpOwotICAgIHNob3VsZEJlKCJkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygi
Q3VzdG9tIGZ1bmN0aW9uIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJFbXB0eSBj
dXN0b20gZnVuY3Rpb24uIiwgImN1c3RvbSgpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk9u
ZSBjb21tYSBpbiBjdXN0b20gZnVuY3Rpb24uIiwgImN1c3RvbSgsKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNdWx0aXBsZSBjb21tYXMgaW4gY3VzdG9tIGZ1bmN0aW9uLiIsICJjdXN0b20o
LCwpIik7Ci0KLWhlYWRpbmcoIkZpbHRlciBuYW1lIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJObyBmaWx0ZXIgbmFtZSB3aXRoIHBhcmFtZXRlci4iLCAiY3VzdG9tKG4gMSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1hbnkgZmlsdGVyIG5hbWVzLiIsICJjdXN0b20o
bXktZmlsdGVyLTEgbXktZmlsdGVyLTIpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkZpbHRl
ciBuYW1lIGFzIHN0cmluZy4iLCAiY3VzdG9tKCdteS1maWx0ZXItMScpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIkZpbHRlciBuYW1lIGFzIG51bWJlci4iLCAiY3VzdG9tKDEpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIGJldHdlZW4gZmlsdGVyIG5hbWUgYW5kIHBhcmFtZXRl
ci4iLCAiY3VzdG9tKG15LWZpbHRlciBuIDEpIik7Ci0KLWhlYWRpbmcoIk51bWJlciBwYXJhbWV0
ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IHBhcmFtZXRlciB2
YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIG4gMSAyIDMgNCA1KSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJJbnZhbGlkIHBhcmFtZXRlciB0eXBlLiIsICJjdXN0b20obXktZmlsdGVyLCBu
IDEuMCAyLjAgJ3RleHQnKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHBhcmFtZXRl
ciBkZWZpbml0aW9uIGFmdGVyIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyLCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gd2l0aCB0d28gY29tbWFz
LiIsICJjdXN0b20obXktZmlsdGVyLCwpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHBh
cmFtZXRlciBkZWZpbml0aW9uIGJlZm9yZSB2YWxpZCBwYXJhbWV0ZXIgZGVmaW50aW9uLiIsICJj
dXN0b20obXktZmlsdGVyLCAsIG4gMSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gcGFy
YW1ldGVyIHZhbHVlLiIsICJjdXN0b20obXktZmlsdGVyLCBuKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgd2l0aCBtdWx0aXBsZSBwYXJhbWV0ZXJzLiIsICJj
dXN0b20obXktZmlsdGVyLCBuMSwgbjIsIG4zKSIpOwotCi1oZWFkaW5nKCJDb2xvciBwYXJhbWV0
ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHJnYiBjb2xvciB2YWx1ZXMu
IiwgImN1c3RvbShteS1maWx0ZXIsIGMgcmdiKCwsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiTm8gaHNsIGNvbG9yIHZhbHVlcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYyBoc2woLCwpKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJIZXggd2l0aCA4IGNoYXJhY3RlcnMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGMgI0ZGMDAwMEZGKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJIZXgg
d2l0aCAyIGNoYXJhY3Rlci4iLCAiY3VzdG9tKG15LWZpbHRlciwgYyAjRkYpIik7Ci10ZXN0SW52
YWxpZEZpbHRlclJ1bGUoIlJnYmEgd2l0aCAzIHZhbHVlcyBhbmQgMiBjb21tYXMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGMgcmdiYSgyNTUsIDAsIDApKSIpOwotCi1oZWFkaW5nKCJUcmFuc2Zvcm0g
cGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgaW52YWxpZCB0
cmFuc2Zvcm0gZnVuY3Rpb24uIiwgImN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUo
MGRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk11bHRpcGxlIGludmFsaWQgdHJhbnNm
b3JtIGZ1bmN0aW9ucy4iLCAiY3VzdG9tKG15LWZpbHRlciwgdCBpbnZhbGlkLXJvdGF0ZSgwZGVn
KSBpbnZhbGlkLXBlcnNwZWN0aXZlKDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZh
bGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuIiwgImN1c3RvbShteS1m
aWx0ZXIsIHQgcm90YXRlKDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDAp
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gYmV0
d2VlbiBpbnZhbGlkIG9uZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUo
MGRlZykgcGVyc3BlY3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCkpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiB3aXRob3V0IGxlYWRpbmcgY29t
bWEuIiwgImN1c3RvbShteS1maWx0ZXIgdCBwZXJzcGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiVmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGggdHJhaWxpbmcgY29tbWEu
IiwgImN1c3RvbShteS1maWx0ZXIsIHQgcGVyc3BlY3RpdmUoMCksKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gd2l0aCB0cmFpbGluZyBjb21tYSBh
bmQgd2l0aG91dCBsZWFkaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyIHQgcGVyc3BlY3Rp
dmUoMCksKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHRyYW5zZm9ybSB3aXRo
IHRyYWlsaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyLCB0IGludmFsaWQtcm90YXRlKDBk
ZWcpLCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aG91
dCBsZWFkaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyIHQgaW52YWxpZF9yb3RhdGUoMGRl
ZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3aXRoIGludmFs
aWQgY2hhcmFjdGVycyIsICJjdXN0b20obXktZmlsdGVyLHQgcm90YXRlKDBkZWcpICouLSwpIik7
Ci0KLWhlYWRpbmcoIkFycmF5IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiRW1wdHkgYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoKSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiT25lIGNvbW1hIGluIGFycmF5LiIsICJjdXN0b20obXktZmls
dGVyLCBhIGFycmF5KCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aXBsZSBjb21t
YXMgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCwsKSkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTXVsdGlwbGUgY29tbWFzIHdpdGggYSB2YWx1ZSBpbiBhcnJheS4i
LCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgsLDEsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEgbmVnYXRpdmUgdmFsdWUgaW4gYXJyYXkuIiwg
ImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLC00KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEgdmFsdWUgaW4gYXJyYXkuIiwgImN1c3RvbShteS1m
aWx0ZXIsIGEgYXJyYXkoLDQpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgbmVnYXRp
dmUgdmFsdWUgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgtNCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgdmFsdWUgZm9s
bG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSg0
LCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHZhbHVlcyBmb2xsb3dlZCBieSBh
IGNvbW1hIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQs
KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEg
bGV0dGVyIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQs
IHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUd28gY29tbWFzIGFzIHNlcGFyYXRvciBi
ZXR3ZWVuIHZhbHVlcyBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAy
LCAsIDQpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJMZWFkaW5nIGNvbW1hIGluIGFycmF5
LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwxLCAyLCAzLCA0KSkiKTsKLXRlc3RJbnZh
bGlkRmlsdGVyUnVsZSgiU2VtaWNvbG9uIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMTsgMjsgMzsgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIlNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0
ZXIsIGEgYXJyYXkoMSAyIDMgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIHNl
cGFyYXRlZCB2YWx1ZXMgd2l0aCBjb21tYSB0ZXJtaW5hdG9yIGluIGFycmF5LiIsICJjdXN0b20o
bXktZmlsdGVyLCBhIGFycmF5KDEgMiAzIDQsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgi
U3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCAxIDIgMyA0KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiTmFOIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KE5hTikpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5hTiBiZXR3ZWVuIHZhbGlkIHZhbHVlcyBpbiBhcnJh
eS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCBOYU4sIDMpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHZhbHVlICdub25lJyBpbiBhcnJheS4iLCAiY3VzdG9t
KG15LWZpbHRlciwgYSBhcnJheShub25lKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52
YWxpZCB2YWx1ZSB1bml0ICdweCcgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoMXB4KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB2YWx1ZSB1bml0ICdk
ZWcnIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDFkZWcpKSIpOwotdGVz
dEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheSBhZnRl
ciB2YWxpZCB2YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgMywgNHB4
KSkiKTsKLQotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiRW1wdHkgbWF0Mi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2aWV3IGFyZ3VtZW50cy4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQyKDAsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBh
cmd1bWVudHMgYnV0IGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKCwsLCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0
ZXIsIGEgbWF0MigwLCAwLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4g
bWF0MiBmdW5jdGlvbi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDAsIDAsIGEsIGIpKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVudHMuIiwgImN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MigwLCAwLCAwLCAwLCAxKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMSAwIDAgMSkpIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNvbWUgY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBh
IG1hdDIoMSwgMCwgMCAxKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTGVhZGluZyBjb21t
YXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigsIDAsIDAsIDEpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJObyBsZW5ndGggdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0
MigxcHgsIDBweCwgMHB4LCAxcHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdy
ZWUgdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigxZGVnLCAwZGVnLCAwZGVnLCAx
ZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGluIG1hdDIuIiwgImN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MigxLCAwLCAwLCBOYU4pKSIpOwotCi1oZWFkaW5nKCJNYXQzIHBhcmFt
ZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgbWF0My4iLCAiY3Vz
dG9tKG15LWZpbHRlciwgYSBtYXQzKCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2
aWV3IGFyZ3VtZW50cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDAsIDAsIDAsIDApKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4iLCAiY3Vz
dG9tKG15LWZpbHRlciwgYSBtYXQzKCwsLCwsLCwsLCwsLCwsLCkpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAw
LCAwLCAwLCAxLCAwLCAwLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4g
bWF0MyBmdW5jdGlvbi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEsIDAsIDAsIDAsIDEs
IDAsIDAsIGEsIGIpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVu
dHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAx
LCAwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMSAwIDAgMCAxIDAgMCAwIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJS
dWxlKCJTb21lIGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEsIDAsIDAsIDAs
IDEsIDAgMCAwIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJMZWFkaW5nIGNvbW1hcy4i
LCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIGxlbmd0aCB1bml0cy4iLCAiY3VzdG9tKG15LWZp
bHRlciwgYSBtYXQzKDFweCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAxcHgpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdyZWUgdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0MygxZGVnLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAxZGVnKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiTmFOIGluIG1hdDMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MihOYU4s
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpKSIpOwotCi1oZWFkaW5nKCJNYXQ0IHBhcmFtZXRlciB0
ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgbWF0NC4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQ0KCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2aWV3IGFy
Z3VtZW50cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDEsIDAsIDAs
IDAsIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBhcmd1bWVudHMgYnV0IGNvbW1h
cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KCwsLCwsLCwsLCwsLCwsLCkpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCwpKSIpOwotdGVz
dEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDEsIDAsIDAsIGEsIGIpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVudHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwKSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVy
LCBhIG1hdDQoMSAwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSkpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIlNvbWUgY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMSwg
MCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCAwIDAgMCAxKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiTGVhZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgs
IDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBsZW5ndGggdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxcHgsIDAsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAx
cHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdyZWUgdW5pdHMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGEgbWF0NCgxZGVnLCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAx
ZGVnLCAwLCAwLCAwLCAwLCAxZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGlu
IG1hdDQuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0NChOYU4sIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotCi0KLWhlYWRpbmcoIk1peGluZyBwYXJh
bWV0ZXIgdHlwZXMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk51bWJlciBwYXJhbWV0ZXIg
d2l0aCBoZXggY29sb3IuIiwgImN1c3RvbShteS1maWx0ZXIsIG4xIDEgMiAjRkYwMDAwKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJOdW1iZXIgcGFyYW1ldGVyIHdpdGggY29sb3Iga2V5d29y
ZC4iLCAiY3VzdG9tKG15LWZpbHRlciwgbjEgMSAyIHJlZCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiTnVtYmVyIHBhcmFtZXRlciB3aXRoIHJnYiBjb2xvci4iLCAiY3VzdG9tKG15LWZpbHRl
ciwgbjEgMSAyIHJnYigyNTUsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJDb2xv
ciB3aXRoIG51bWJlciBwYXJhbWV0ZXIuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwg
MCwgMCkgMSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiQ29sb3IgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMCwgcmdiKDI1NSwgMCwgMCkpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJDb2xvciBhbmQgYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoMCwgMCkgcmdiKDI1NSwgMCwgMCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSByb3RhdGUoNDVk
ZWcpIHJnYigyNTUsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJDb2xvciB3aXRo
IHRyYW5zZm9ybSB2YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwgMCwgMCkg
cm90YXRlKDQ1ZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiQ29sb3Igd2l0aCBtYXQy
LiIsICJjdXN0b20obXktZmlsdGVyLCBhIHJnYigyNTUsIDAsIDApIG1hdDIoMCwgMCwgMCwgMCkp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIm1hdDIgd2l0aCBtYXQzLiIsICJjdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDIoMSwgMCwgMCwgMSkgbWF0MygwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQu
anMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgv
c2NyaXB0LXRlc3RzL3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9uLXZhbGlkLmpzCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA3MWM1YTBmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2lu
Zy1jdXN0b20tZnVuY3Rpb24tdmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxNjcgKzAsMCBA
QAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9u
IG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBi
ZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgc3R5bGVSdWxl
LCBzdHlsZURlY2xhcmF0aW9uLCBmaWx0ZXJQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1ZTsKLQotZnVu
Y3Rpb24gdGVzdEZpbHRlclByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlLCBleHBl
Y3RlZFZhbHVlLCBleHBlY3RlZFR5cGVzLCBleHBlY3RlZFRleHRzKQotewotICAgIGRlYnVnKCJc
biIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBwcm9wZXJ0eVZhbHVlKTsKLQotICAgIHN0eWxlc2hl
ZXQuaW5zZXJ0UnVsZSgiYm9keSB7IC13ZWJraXQtZmlsdGVyOiAiICsgcHJvcGVydHlWYWx1ZSAr
ICI7IH0iLCAwKTsKLSAgICBzdHlsZVJ1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVzLml0ZW0oMCk7
Ci0gICAgc2hvdWxkQmUoInN0eWxlUnVsZS50eXBlIiwgIkNTU1J1bGUuU1RZTEVfUlVMRSIpOwot
Ci0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IHN0eWxlUnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgi
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgiLCAiMSIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykiLCAiJyIgKyBleHBlY3Rl
ZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclByb3BlcnR5VmFsdWUgPSBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5Q1NTVmFsdWUoJy13ZWJraXQtZmlsdGVyJyk7Ci0gICAgc2hvdWxkSGF2
ZUNvbnN0cnVjdG9yKCJmaWx0ZXJQcm9wZXJ0eVZhbHVlIiwgIkNTU1ZhbHVlTGlzdCIpOwotCi0g
ICAgaWYgKCFleHBlY3RlZFR5cGVzKSB7Ci0gICAgICAgIGV4cGVjdGVkVHlwZXMgPSBbIldlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NIl07Ci0gICAgICAgIGV4cGVjdGVkVGV4
dHMgPSBbZXhwZWN0ZWRWYWx1ZV07Ci0gICAgfQotICAgIAotICAgIHNob3VsZEJlKCJmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCIsICIiICsgZXhwZWN0ZWRUeXBlcy5sZW5ndGgpOyAvLyBzaG91
bGRCZSBleHBlY3RzIHN0cmluZyBhcmd1bWVudHMKLSAgCi0gICAgaWYgKGZpbHRlclByb3BlcnR5
VmFsdWUpIHsKLSAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBleHBlY3RlZFR5cGVzLmxlbmd0
aDsgaSsrKSB7Ci0gICAgICAgICAgICBzdWJWYWx1ZSA9IGZpbHRlclByb3BlcnR5VmFsdWVbaV07
Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViVmFsdWUub3BlcmF0aW9uVHlwZSIsIGV4cGVjdGVk
VHlwZXNbaV0pOwotICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1RleHQiLCAiJyIg
KyBleHBlY3RlZFRleHRzW2ldICsgIiciKTsKLSAgICAgICAgfQotICAgIH0KLX0KLQotaGVhZGlu
ZygiQ3VzdG9tIGZ1bmN0aW9uIHRlc3RzLiIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDdXN0b20g
ZnVuY3Rpb24gaW4gQ0FQUy4iLAotICAgICJDVVNUT00obXktZmlsdGVyKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIpIik7Ci0KLWhlYWRpbmcoIkZpbHRlciBjaGFpbiB0ZXN0cy4iKQotdGVzdEZp
bHRlclByb3BlcnR5KCJDdXN0b20gZnVuY3Rpb24gaW4gbWlkZGxlIG9mIGZpbHRlciBjaGFpbi4i
LAotICAgICJncmF5c2NhbGUoKSBjdXN0b20obXktZmlsdGVyKSBzZXBpYSgpIiwgImdyYXlzY2Fs
ZSgpIGN1c3RvbShteS1maWx0ZXIpIHNlcGlhKCkiLAotICAgIFsiV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUiLAotICAgICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTSIsCi0gICAgIldlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfU0VQ
SUEiXSwKLSAgICBbImdyYXlzY2FsZSgpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlcikiLAotICAg
ICJzZXBpYSgpIl0pOwotCi1oZWFkaW5nKCJGaWx0ZXIgbmFtZSB0ZXN0cy4iKTsKLXRlc3RGaWx0
ZXJQcm9wZXJ0eSgiRmlsdGVyIG5hbWUgb25seS4iLAotICAgICJjdXN0b20obXktZmlsdGVyKSIs
Ci0gICAgImN1c3RvbShteS1maWx0ZXIpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkZpbHRlciBu
YW1lIGFzIENTUyAnbm9uZScga2V5d29yZC4iLAotICAgICJjdXN0b20obm9uZSkiLAotICAgICJj
dXN0b20obm9uZSkiKTsKLQotaGVhZGluZygiTnVtYmVyIHBhcmFtZXRlciB0ZXN0cy4iKQotdGVz
dEZpbHRlclByb3BlcnR5KCJJbnRlZ2VyIHBhcmFtZXRlcnMuIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNykiLAotICAgICJjdXN0b20o
bXktZmlsdGVyLCBuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3KSIpOwotdGVzdEZp
bHRlclByb3BlcnR5KCJGbG9hdCBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIs
IG4xIDEuMSwgbjIgMi4yIDMuMywgbjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCki
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBuMSAxLjEsIG4yIDIuMiAzLjMsIG4zIDMuMSA0LjEg
NS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIlBhcmFtZXRl
ciBuYW1lIHNhbWUgYXMgQ1NTIGtleXdvcmQuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYmFj
a2dyb3VuZCAwIDEgMCAxKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGJhY2tncm91bmQgMCAx
IDAgMSkiKTsKLQotaGVhZGluZygiQ29sb3IgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdEZpbHRl
clByb3BlcnR5KCJIZXggY29sb3IuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyAjMDBGRjAw
KSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpIik7Ci10ZXN0Rmls
dGVyUHJvcGVydHkoIkNvbG9yIGtleXdvcmQuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyBn
cmVlbikiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYigwLCAxMjgsIDApKSIpOwotdGVz
dEZpbHRlclByb3BlcnR5KCJDb2xvciByZ2IgZnVuY3Rpb24uIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgYyByZ2IoMCwgMTI4LCAwKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYigw
LCAxMjgsIDApKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDb2xvciBoc2wgZnVuY3Rpb24uIiwK
LSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyBoc2woMTIwLCAxMDAlLCA1MCUpKSIsCi0gICAgImN1
c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHko
IkNvbG9yIHJnYmEgZnVuY3Rpb24uIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyByZ2JhKDAs
IDI1NSwgMCwgMC4yKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAw
LCAwLjIpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDb2xvciBoc2xhIGZ1bmN0aW9uLiIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIGMgaHNsYSgxMjAsIDEwMCUsIDUwJSwgMC4yKSkiLAotICAg
ICJjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAwLCAwLjIpKSIpOwotCi1oZWFkaW5n
KCJUcmFuc2Zvcm0gcGFyYW1ldGVyIHRlc3RzLiIpCi10ZXN0RmlsdGVyUHJvcGVydHkoIlRyYW5z
Zm9ybSBwYXJhbWV0ZXIgd2l0aCBvbmUgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIHQg
cm90YXRlKDBkZWcpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJUcmFuc2Zvcm0gcGFyYW1ldGVy
IHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtIGZ1bmN0aW9ucy4iLAotICAgICJjdXN0b20obXktZmls
dGVyLCB0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUo
MHB4LCAwcHgpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpIHBlcnNw
ZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkpIik7Ci10ZXN0RmlsdGVy
UHJvcGVydHkoIk11bGl0cGxlIHRyYW5zZm9ybSBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbSht
eS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKSIpOwotCi1oZWFk
aW5nKCJBcnJheSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkFycmF5
IHBhcmFtZXRlciB3aXRoIG5hbWUgJ2FycmF5Jy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBh
cnJheSBhcnJheSgxKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSki
KTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQXJyYXkgcGFyYW1ldGVyIHdpdGggb25lIHBvc2l0aXZl
IGludGVnZXIuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxKSkiLAotICAgICJj
dXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJBcnJh
eSBwYXJhbWV0ZXIgd2l0aCBvbmUgbmVnYXRpdmUgZmxvYXQuIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgYSBhcnJheSgtMS4wMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgt
MS4wMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRp
cGxlIHBvc2l0aXZlIGludGVnZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXko
MSwgMiwgMywgNCwgNSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAz
LCA0LCA1KSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQXJyYXkgcGFyYW1ldGVyIHdpdGggbXVs
dGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEs
IC0yLjIsIDMuMTQsIDAuNCwgNSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgx
LCAtMi4yLCAzLjE0LCAwLjQsIDUpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNdWx0aXBsZSBh
cnJheSBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGExIGFycmF5KDEsIC0y
LjIsIDMuMTQsIDAuNCwgNSksIGEyIGFycmF5KDEsIDIsIDMpKSIsCi0gICAgImN1c3RvbShteS1m
aWx0ZXIsIGExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSksIGEyIGFycmF5KDEsIDIsIDMp
KSIpOwotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RGaWx0ZXJQcm9w
ZXJ0eSgiTWF0MiBwYXJhbWV0ZXIuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKDEs
IDAsIDAsIDEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MigxLCAwLCAwLCAxKSki
KTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiTWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1
ZXMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAtMSwgLTEsIC0xKSkiLAot
ICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIC0xLCAtMSwgLTEpKSIpOwotdGVzdEZp
bHRlclByb3BlcnR5KCJNYXQyIHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2
YWx1ZXMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAxLCAxLCAtMSkpIiwK
LSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAxLCAxLCAtMSkpIik7Ci10ZXN0Rmls
dGVyUHJvcGVydHkoIk1hdDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4i
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSkiLAot
ICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSkiKTsKLQot
aGVhZGluZygiTWF0MyBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1h
dDMgcGFyYW1ldGVyLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAwLCAwLCAw
LCAxLCAwLCAwLCAwLCAxKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoMSwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMgcGFyYW1l
dGVyIHdpdGggbmVnYXRpdmUgdmFsdWVzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0
MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSkiLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDMoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkpIik7Ci10
ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5kIHBvc2l0
aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIDEsIDEsIC0x
LCAtMSwgMSwgMSwgLTEsIDEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwg
MSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMg
cGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEp
KSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEs
IC0yLjIsIDMuMTQsIDAuNCwgMSkpIik7Ci0KLWhlYWRpbmcoIk1hdDQgcGFyYW1ldGVyIHRlc3Rz
LiIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNYXQ0IHBhcmFtZXRlci4iLAotICAgICJjdXN0b20o
bXktZmlsdGVyLCBtIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIDAsIDAsIDAsIDAs
IDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5
KCJNYXQ0IHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSwgLTEsIC0xLCAtMSwgLTEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRp
dmUgYW5kIHBvc2l0aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDQo
LTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xKSki
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwg
LTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xKSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgi
TWF0NCBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRzLiIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpKSIpOwotCi1oZWFkaW5n
KCJDb21iaW5lZCBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk51bWJl
ciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJhbnNmb3JtIHBhcmFtZXRlciwgbWF0cml4
IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4iLAotICAgICJjdXN0b20obXktZmlsdGVy
LCBuIDEsIGMgcmdiKDAsIDEyOCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAs
IDEpLCBtMiBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFycmF5KDEpKSIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRl
ZyksIG0xIG1hdDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MSksIG0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSksIGEgYXJyYXkoMSkpIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctZ2VvbWV0cnkt
cHJvcGVydHktaW52YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1p
bnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzOTU5OTNhLi4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1pbnZhbGlkLmpzCisrKyAv
ZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJz
aW5nLWNvbW1vbi5qcy4KLQotZGVzY3JpcHRpb24oIlRlc3QgZ2VvbWV0cnkgcHJvcGVydHkgcGFy
c2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuIik7Ci0KLS8vIFRoZXNlIGhhdmUg
dG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGZpbHRl
ckF0UnVsZSwgc3R5bGVEZWNsYXJhdGlvbjsKLQotZnVuY3Rpb24gdGVzdEludmFsaWRHZW9tZXRy
eVByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBnZW9tZXRy
eVByb3BlcnR5ID0gImdlb21ldHJ5OiAiICsgcHJvcGVydHlWYWx1ZSArICI7IjsKLSAgICBkZWJ1
ZygiXG4iICsgZGVzY3JpcHRpb24gKyAiXG4iICsgZ2VvbWV0cnlQcm9wZXJ0eSk7Ci0KLSAgICBz
dHlsZXNoZWV0Lmluc2VydFJ1bGUoIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgZ2Vv
bWV0cnlQcm9wZXJ0eSArICIgfSIsIDApOwotCi0gICAgZmlsdGVyQXRSdWxlID0gc3R5bGVzaGVl
dC5jc3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJBdFJ1bGUudHlwZSIsICJD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IGZp
bHRlckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgi
LCAiMCIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J2dlb21ldHJ5JykiLCAibnVsbCIpOwotfQotCi1oZWFkaW5nKCJHZW9tZXRyeSB0ZXN0cy4iKTsK
LXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiTm8gcHJvcGVydHkgdmFsdWUuIiwgIiIpOwot
dGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJFbXB0eSBncmlkLiIsICJncmlkKCkiKTsKLXRl
c3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiTWlzcGVsbGVkIGdyaWQgZnVuY3Rpb24uIiwgImdy
aWlkKDEgMSkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiU2luZ2xlIG5lZ2F0aXZl
IHZhbHVlIGluIGdyaWQuIiwgImdyaWQoLTEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVy
dHkoIk5lZ2F0aXZlIHZhbHVlIGluIGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLiIsICJn
cmlkKDEgLTEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIk5lZ2F0aXZlIHZhbHVl
IGluIGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4iLCAiZ3JpZCgtMSAx
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJUd28gbmVnYXRpdmUgdmFsdWVzLiIs
ICJncmlkKC0xIC0xKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJTaW5nbGUgemVy
byB2YWx1ZS4iLCAiZ3JpZCgwKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJaZXJv
IHdpdGggYSB2YWxpZCB2YWx1ZS4iLCAiZ3JpZCgwIDEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5
UHJvcGVydHkoIlplcm8gd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4iLCAiZ3JpZCgxIDAp
Iik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIkF0dGFjaGVkIHZhbHVlIGFsb25lLiIs
ICJncmlkKGF0dGFjaGVkKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJEZXRhY2hl
ZCB2YWx1ZSBhbG9uZS4iLCAiZ3JpZChkZXRhY2hlZCkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQ
cm9wZXJ0eSgiRGV0YWNoZWQgYW5kIGF0dGFjaGVkLiIsICJncmlkKGF0dGFjaGVkIGF0dGFjaGVk
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJUb28gbWFueSB2YWx1ZXMuIiwgImdy
aWQoMSAxIGF0dGFjaGVkIGRldGFjaGVkKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5
KCJNaXNwZWxsZWQgYXR0YWNoZWQuIiwgImdyaWQoMSAxIGF0dGFjZCkiKTsKLXRlc3RJbnZhbGlk
R2VvbWV0cnlQcm9wZXJ0eSgiTWlzcGVsbGVkIGRldGFjaGVkLiIsICJncmlkKDEgMSBkZXRhY2hl
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJJbnZhbGlkIGRpdmlkZXIuIiwgImdy
aWQoMSwgMSBhdHRhY2hlZCkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiSW52YWxp
ZCBkaXZpZGVyLCByZWxvYWRlZC4iLCAiZ3JpZCgxIDEsIGF0dGFjaGVkKSIpOwotdGVzdEludmFs
aWRHZW9tZXRyeVByb3BlcnR5KCJOb24gaW50ZWdlciB2YWx1ZXMuIiwgImdyaWQoMS4zIDEpIik7
Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIk5vbiBpbnRlZ2VyIHZhbHVlcy4iLCAiZ3Jp
ZCgxIDEuMykiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiVGhyZWUgaW50ZWdlcnMu
IiwgImdyaWQoMSAyIDMpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIkF0dGFjaGVk
IGluIGJldHdlZW4gdHdvIGludGVnZXJzLiIsICJncmlkKDEgYXR0YWNoZWQgMSkiKTsKLXRlc3RJ
bnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiRGV0YWNoZWQgaW4gYmV0d2VlbiB0d28gaW50ZWdlcnMu
IiwgImdyaWQoMSBkZXRhY2hlZCAxKSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWdl
b21ldHJ5LXByb3BlcnR5LXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWdlb21ldHJ5LXByb3Bl
cnR5LXZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMmUxMmFiLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12YWxpZC5qcworKysg
L2Rldi9udWxsCkBAIC0xLDc3ICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFy
c2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IGdlb21ldHJ5IHByb3BlcnR5IHBh
cnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZl
IHRvIGJlIGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0
ZXJBdFJ1bGUsIHN0eWxlRGVjbGFyYXRpb24sIGdlb21ldHJ5UHJvcGVydHlWYWx1ZSwgc3ViVmFs
dWU7Ci0KLWZ1bmN0aW9uIHRlc3RHZW9tZXRyeVByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0
eVZhbHVlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBnZW9tZXRy
eVByb3BlcnR5ID0gImdlb21ldHJ5OiAiICsgcHJvcGVydHlWYWx1ZSArICI7IgotICAgIGRlYnVn
KCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBnZW9tZXRyeVByb3BlcnR5KTsKLQotICAgIHN0
eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBnZW9t
ZXRyeVByb3BlcnR5ICsgIiB9IiwgMCk7Ci0gICAgZmlsdGVyQXRSdWxlID0gc3R5bGVzaGVldC5j
c3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJBdFJ1bGUudHlwZSIsICJDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IGZpbHRl
ckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgiLCAi
MSIpOwotICAgIHNob3VsZEJlKCJyZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnZ2VvbWV0cnknKSkiLCAiXCIiICsgZXhwZWN0ZWRWYWx1ZSArICJcIiIpOwot
Ci0gICAgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eUNTU1ZhbHVlKCdnZW9tZXRyeScpOwotICAgIHNob3VsZEhhdmVDb25zdHJ1Y3RvcigiZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlIiwgIkNTU1ZhbHVlTGlzdCIpOwotCi0gICAgc2hvdWxkQmUoImdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0cmluZygp
KTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi19Ci0KLWhlYWRpbmcoIkdl
b21ldHJ5IHByb3BlcnR5LiIpOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0cnkgd2l0
aCBmdWxsIG1lc2ggYW5kIGF0dGFjaGVkLiIsCi0gICAgImdyaWQoMSAxIGF0dGFjaGVkKSIsCi0g
ICAgIjEgMSBhdHRhY2hlZCIsCi0gICAgWyIxIiwgIjEiLCAiYXR0YWNoZWQiXSk7Ci0KLXRlc3RH
ZW9tZXRyeVByb3BlcnR5KCJHZW9tZXRyeSB3aXRoIGZ1bGwgbWVzaCBhbmQgZGV0YWNoZWQuIiwK
LSAgICAiZ3JpZCgxIDEgZGV0YWNoZWQpIiwKLSAgICAiMSAxIGRldGFjaGVkIiwKLSAgICBbIjEi
LCAiMSIsICJkZXRhY2hlZCJdKTsKLQotdGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdp
dGggZnVsbCBtZXNoIGFuZCBubyBhdHRhY2hlZCwgbm9yIGRldGFjaGVkLiIsCi0gICAgImdyaWQo
MSAxKSIsCi0gICAgIjEgMSIsCi0gICAgWyIxIiwgIjEiXSk7Ci0KLXRlc3RHZW9tZXRyeVByb3Bl
cnR5KCJHZW9tZXRyeSB3aXRoIG9ubHkgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZCgxKSIs
Ci0gICAgIjEiLAotICAgIFsiMSJdKTsKLQotdGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5
IHdpdGggb25lIG1lc2ggdmFsdWUgYW5kIGF0dGFjaGVkLiIsCi0gICAgImdyaWQoMSBhdHRhY2hl
ZCkiLAotICAgICIxIGF0dGFjaGVkIiwKLSAgICBbIjEiLCAiYXR0YWNoZWQiXSk7Ci0KLXRlc3RH
ZW9tZXRyeVByb3BlcnR5KCJHZW9tZXRyeSB3aXRoIG9uZSBtZXNoIHZhbHVlIGFuZCBkZXRhY2hl
ZC4iLAotICAgICJncmlkKDEgZGV0YWNoZWQpIiwKLSAgICAiMSBkZXRhY2hlZCIsCi0gICAgWyIx
IiwgImRldGFjaGVkIl0pOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0cnkgd2l0aCBh
dHRhY2hlZCBiZWZvcmUgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZChhdHRhY2hlZCAxKSIs
Ci0gICAgImF0dGFjaGVkIDEiLAotICAgIFsiYXR0YWNoZWQiLCAiMSJdKTsKLQotdGVzdEdlb21l
dHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdpdGggYXR0YWNoZWQgYmVmb3JlIHR3byBtZXNoIHZhbHVl
cy4iLAotICAgICJncmlkKGF0dGFjaGVkIDEgMSkiLAotICAgICJhdHRhY2hlZCAxIDEiLAotICAg
IFsiYXR0YWNoZWQiLCAiMSIsICIxIl0pOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0
cnkgd2l0aCBkZXRhY2hlZCBiZWZvcmUgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZChkZXRh
Y2hlZCAxKSIsCi0gICAgImRldGFjaGVkIDEiLAotICAgIFsiZGV0YWNoZWQiLCAiMSJdKTsKLQot
dGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdpdGggZGV0YWNoZWQgYmVmb3JlIHR3byBt
ZXNoIHZhbHVlcy4iLAotICAgICJncmlkKGRldGFjaGVkIDEgMSkiLAotICAgICJkZXRhY2hlZCAx
IDEiLAotICAgIFsiZGV0YWNoZWQiLCAiMSIsICIxIl0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9w
YXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9w
ZXJ0eS1pbnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNTJjOGFiLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxl
LXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJvcGVydHktaW52YWxpZC5qcworKysg
L2Rldi9udWxsCkBAIC0xLDMwICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFy
c2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IG1peCBwcm9wZXJ0eSBwYXJzaW5n
IGluIHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBi
ZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgZmlsdGVyQXRS
dWxlLCBzdHlsZURlY2xhcmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0SW52YWxpZE1peFByb3BlcnR5
KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBtaXhQcm9wZXJ0eSA9ICJt
aXg6ICIgKyBwcm9wZXJ0eVZhbHVlICsgIjsiOwotICAgIGRlYnVnKCJcbiIgKyBkZXNjcmlwdGlv
biArICJcbiIgKyBtaXhQcm9wZXJ0eSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoIkAt
d2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgbWl4UHJvcGVydHkgKyAiIH0iLCAwKTsKLQot
ICAgIGZpbHRlckF0UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91
bGRCZSgiZmlsdGVyQXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsK
LQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxk
QmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwgIjAiKTsKLSAgICBzaG91bGRCZSgic3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSIsICJudWxsIik7Ci19Ci0KLWhlYWRp
bmcoIlZhbHVlIHRlc3QuIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJObyBwcm9wZXJ0eSB2
YWx1ZS4iLCAiIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJUaHJlZSB2YWx1ZXMuIiwgInNj
cmVlbiBzb3VyY2Utb3ZlciBzY3JlZW4iKTsKLXRlc3RJbnZhbGlkTWl4UHJvcGVydHkoIlRocmVl
IHZhbHVlcy4iLCAic2NyZWVuIHNvdXJjZS1vdmVyIHNvdXJjZS1vdmVyIik7Ci10ZXN0SW52YWxp
ZE1peFByb3BlcnR5KCJUd28gYmxlbmQgbW9kZXMuIiwgInNjcmVlbiBzY3JlZW4iKTsKLXRlc3RJ
bnZhbGlkTWl4UHJvcGVydHkoIlR3byBjb21wb3NpdGUgb3BlcmF0b3JzLiIsICJzb3VyY2Utb3Zl
ciBzb3VyY2Utb3ZlciIpOwotdGVzdEludmFsaWRNaXhQcm9wZXJ0eSgiVHdvIGJsZW5kIG1vZGVz
LiIsICJzY3JlZW4gc2NyZWVuIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJDb21tYSBiZXR3
ZWVuIHZhbHVlcy4iLCAic2NyZWVuLCBzb3VyY2Utb3ZlciIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0
cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJv
cGVydHktdmFsaWQuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEyYTYzMjIuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxpZC5qcworKysgL2Rl
di9udWxsCkBAIC0xLDg1ICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFyc2lu
Zy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IG1peCBwcm9wZXJ0eSBwYXJzaW5nIGlu
IHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBiZSBn
bG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgZmlsdGVyQXRSdWxl
LCBzdHlsZURlY2xhcmF0aW9uLCBtaXhQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1ZTsKLQotZnVuY3Rp
b24gdGVzdE1peFByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlLCBleHBlY3RlZFZh
bHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBtaXhQcm9wZXJ0eSA9ICJtaXg6ICIgKyBw
cm9wZXJ0eVZhbHVlICsgIjsiCi0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiAr
IG1peFByb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmls
dGVyIG15LWZpbHRlciB7ICIgKyBtaXhQcm9wZXJ0eSArICIgfSIsIDApOwotICAgIGZpbHRlckF0
UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91bGRCZSgiZmlsdGVy
QXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsKLQotICAgIHN0eWxl
RGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUoInN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIiwgIjEiKTsKLSAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSIsICJcIiIgKyBleHBlY3RlZFZh
bHVlICsgIlwiIik7Ci0KLSAgICBtaXhQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eUNTU1ZhbHVlKCdtaXgnKTsKLSAgICBzaG91bGRIYXZlQ29uc3RydWN0b3IoIm1p
eFByb3BlcnR5VmFsdWUiLCAiQ1NTVmFsdWVMaXN0Iik7Ci0KLSAgICBzaG91bGRCZSgibWl4UHJv
cGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0cmluZygpKTsgLy8g
c2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAotICAgIGlmIChtaXhQcm9wZXJ0
eVZhbHVlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0ZWRUZXh0cy5sZW5n
dGg7IGkrKykgewotICAgICAgICAgICAgc3ViVmFsdWUgPSBtaXhQcm9wZXJ0eVZhbHVlW2ldOwot
ICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1ZhbHVlVHlwZSIsICJDU1NWYWx1ZS5D
U1NfUFJJTUlUSVZFX1ZBTFVFIik7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVS
TChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBleHBlY3RlZFRleHRzW2ldICsgIlwiIik7Ci0g
ICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmcoIlRlc3QgYmxlbmQgbW9kZSBrZXl3b3Jkcy4i
KTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBtdWx0aXBseS4iLCAibXVsdGlwbHkiLCAibXVsdGlw
bHkiLCBbIm11bHRpcGx5Il0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNjcmVlbi4iLCAic2Ny
ZWVuIiwgInNjcmVlbiIsIFsic2NyZWVuIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IG92ZXJs
YXkuIiwgIm92ZXJsYXkiLCAib3ZlcmxheSIsIFsib3ZlcmxheSJdKTsKLXRlc3RNaXhQcm9wZXJ0
eSgiVGVzdCBkYXJrZW4uIiwgImRhcmtlbiIsICJkYXJrZW4iLCBbImRhcmtlbiJdKTsKLXRlc3RN
aXhQcm9wZXJ0eSgiVGVzdCBsaWdodGVuLiIsICJsaWdodGVuIiwgImxpZ2h0ZW4iLCBbImxpZ2h0
ZW4iXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgY29sb3ItZG9kZ2UuIiwgImNvbG9yLWRvZGdl
IiwgImNvbG9yLWRvZGdlIiwgWyJjb2xvci1kb2RnZSJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVz
dCBjb2xvci1idXJuLiIsICJjb2xvci1idXJuIiwgImNvbG9yLWJ1cm4iLCBbImNvbG9yLWJ1cm4i
XSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgaGFyZC1saWdodC4iLCAiaGFyZC1saWdodCIsICJo
YXJkLWxpZ2h0IiwgWyJoYXJkLWxpZ2h0Il0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNvZnQt
bGlnaHQuIiwgInNvZnQtbGlnaHQiLCAic29mdC1saWdodCIsIFsic29mdC1saWdodCJdKTsKLXRl
c3RNaXhQcm9wZXJ0eSgiVGVzdCBkaWZmZXJlbmNlLiIsICJkaWZmZXJlbmNlIiwgImRpZmZlcmVu
Y2UiLCBbImRpZmZlcmVuY2UiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgZXhjbHVzaW9uLiIs
ICJleGNsdXNpb24iLCAiZXhjbHVzaW9uIiwgWyJleGNsdXNpb24iXSk7Ci10ZXN0TWl4UHJvcGVy
dHkoIlRlc3QgaHVlLiIsICJodWUiLCAiaHVlIiwgWyJodWUiXSk7Ci10ZXN0TWl4UHJvcGVydHko
IlRlc3Qgc2F0dXJhdGlvbi4iLCAic2F0dXJhdGlvbiIsICJzYXR1cmF0aW9uIiwgWyJzYXR1cmF0
aW9uIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGNvbG9yLiIsICJjb2xvciIsICJjb2xvciIs
IFsiY29sb3IiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgbHVtaW5vc2l0eS4iLCAibHVtaW5v
c2l0eSIsICJsdW1pbm9zaXR5IiwgWyJsdW1pbm9zaXR5Il0pOwotCi1oZWFkaW5nKCJUZXN0IGNv
bXBvc2l0ZSBrZXl3b3Jkcy4iKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBjbGVhci4iLCAiY2xl
YXIiLCAiY2xlYXIiLCBbImNsZWFyIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGNvcHkuIiwg
ImNvcHkiLCAiY29weSIsIFsiY29weSJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBzb3VyY2Ut
b3Zlci4iLCAic291cmNlLW92ZXIiLCAic291cmNlLW92ZXIiLCBbInNvdXJjZS1vdmVyIl0pOwot
dGVzdE1peFByb3BlcnR5KCJUZXN0IHNvdXJjZS1pbi4iLCAic291cmNlLWluIiwgInNvdXJjZS1p
biIsIFsic291cmNlLWluIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNvdXJjZS1vdXQuIiwg
InNvdXJjZS1vdXQiLCAic291cmNlLW91dCIsIFsic291cmNlLW91dCJdKTsKLXRlc3RNaXhQcm9w
ZXJ0eSgiVGVzdCBzb3VyY2UtYXRvcC4iLCAic291cmNlLWF0b3AiLCAic291cmNlLWF0b3AiLCBb
InNvdXJjZS1hdG9wIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGRlc3RpbmF0aW9uLW92ZXIu
IiwgImRlc3RpbmF0aW9uLW92ZXIiLCAiZGVzdGluYXRpb24tb3ZlciIsIFsiZGVzdGluYXRpb24t
b3ZlciJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBkZXN0aW5hdGlvbi1pbi4iLCAiZGVzdGlu
YXRpb24taW4iLCAiZGVzdGluYXRpb24taW4iLCBbImRlc3RpbmF0aW9uLWluIl0pOwotdGVzdE1p
eFByb3BlcnR5KCJUZXN0IGRlc3RpbmF0aW9uLW91dC4iLCAiZGVzdGluYXRpb24tb3V0IiwgImRl
c3RpbmF0aW9uLW91dCIsIFsiZGVzdGluYXRpb24tb3V0Il0pOwotdGVzdE1peFByb3BlcnR5KCJU
ZXN0IGRlc3RpbmF0aW9uLWF0b3AuIiwgImRlc3RpbmF0aW9uLWF0b3AiLCAiZGVzdGluYXRpb24t
YXRvcCIsIFsiZGVzdGluYXRpb24tYXRvcCJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCB4b3Iu
IiwgInhvciIsICJ4b3IiLCBbInhvciJdKTsKLQotdGVzdE1peFByb3BlcnR5KCJCbGVuZCBtb2Rl
IGFuZCBjb21wb3NpdGUgdG9nZXRoZXIuIiwKLSAgICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAg
ICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAgICBbInNjcmVlbiIsICJzb3VyY2Utb3ZlciJdKTsK
LQotdGVzdE1peFByb3BlcnR5KCJDb21wb3NpdGUgYW5kIGJsZW5kIG1vZGUgdG9nZXRoZXIuIiwK
LSAgICAic291cmNlLW92ZXIgc2NyZWVuIiwKLSAgICAic291cmNlLW92ZXIgc2NyZWVuIiwKLSAg
ICBbInNvdXJjZS1vdmVyIiwgInNjcmVlbiJdKTsKLQotaGVhZGluZygiQ2FwaXRhbGl6YXRpb24g
dGVzdHMuIik7Ci10ZXN0TWl4UHJvcGVydHkoIkFsbCB0b2tlbnMgY2FwaXRhbGl6ZWQuIiwKLSAg
ICAiU0NSRUVOIFNPVVJDRS1PVkVSIiwKLSAgICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAgICBb
InNjcmVlbiIsICJzb3VyY2Utb3ZlciJdKTsKLQotaGVhZGluZygiV2hpdGVzcGFjZSB0ZXN0cy4i
KTsKLXRlc3RNaXhQcm9wZXJ0eSgiRXh0cmEgbGVhZGluZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcg
d2hpdGVzcGFjZS4gIiwKLSAgICAiICAgc2NyZWVuICAgc291cmNlLW92ZXIgICAiLAotICAgICJz
Y3JlZW4gc291cmNlLW92ZXIiLAotICAgIFsic2NyZWVuIiwgInNvdXJjZS1vdmVyIl0pOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcyBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3Jp
cHQtdGVzdHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQuanMKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZhZGRhMTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJz
aW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcworKysgL2Rldi9udWxsCkBAIC0xLDEy
NyArMCwwIEBACi0vLyBSZXF1aXJlcyBjdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzLgot
Ci1kZXNjcmlwdGlvbigiVGVzdCBwYXJhbWV0ZXJzIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAt
d2Via2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2JhbCBm
b3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0ZXJBdFJ1bGUsIHN0eWxl
RGVjbGFyYXRpb247Ci0KLWZ1bmN0aW9uIHRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KGRl
c2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBwYXJhbWV0ZXJzUHJvcGVydHkg
PSAicGFyYW1ldGVyczogIiArIHByb3BlcnR5VmFsdWUgKyAiOyI7Ci0gICAgZGVidWcoIlxuIiAr
IGRlc2NyaXB0aW9uICsgIlxuIiArIHBhcmFtZXRlcnNQcm9wZXJ0eSk7Ci0KLSAgICBzdHlsZXNo
ZWV0Lmluc2VydFJ1bGUoIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgcGFyYW1ldGVy
c1Byb3BlcnR5ICsgIiB9IiwgMCk7Ci0KLSAgICBmaWx0ZXJBdFJ1bGUgPSBzdHlsZXNoZWV0LmNz
c1J1bGVzLml0ZW0oMCk7Ci0gICAgc2hvdWxkQmUoImZpbHRlckF0UnVsZS50eXBlIiwgIkNTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFIik7Ci0KLSAgICBzdHlsZURlY2xhcmF0aW9uID0gZmlsdGVy
QXRSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCIsICIw
Iik7Ci0gICAgc2hvdWxkQmUoInN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFy
YW1ldGVycycpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygiTnVtYmVyIHBhcmFtZXRlciB0ZXN0
cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJUb28gbWFueSBwYXJhbWV0ZXIg
dmFsdWVzLiIsICJuIDEgMiAzIDQgNSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHko
IkludmFsaWQgcGFyYW1ldGVyIHR5cGUuIiwgIm4gMS4wIDIuMCAndGV4dCciKTsKLQotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIHBhcmFtZXRlciBkZWZpbml0aW9uLiIsICIiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBwYXJhbWV0ZXIgZGVmaW5pdGlvbiB3
aXRoIGNvbW1hLiIsICIsIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFy
YW1ldGVyIGRlZmluaXRpb24gYmVmb3JlIHZhbGlkIHBhcmFtZXRlciBkZWZpbnRpb24uIiwgIiwg
biAxIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFyYW1ldGVyIHZhbHVl
LiIsICJuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFyYW1ldGVyIHZh
bHVlIHdpdGggbXVsdGlwbGUgcGFyYW1ldGVycy4iLCAibjEsIG4yLCBuMyIpOwotCi1oZWFkaW5n
KCJDb2xvciBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0
eSgiTm8gcmdiIGNvbG9yIHZhbHVlcy4iLCAiYyByZ2IoLCwpIik7Ci10ZXN0SW52YWxpZFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTm8gaHNsIGNvbG9yIHZhbHVlcy4iLCAiYyBoc2woLCwpIik7Ci10ZXN0
SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSGV4IHdpdGggOCBjaGFyYWN0ZXJzLiIsICJjICNG
RjAwMDBGRiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkhleCB3aXRoIDIgY2hh
cmFjdGVyLiIsICJjICNGRiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlJnYmEg
d2l0aCAzIHZhbHVlcyBhbmQgMiBjb21tYXMuIiwgImMgcmdiYSgyNTUsIDAsIDApIik7Ci0KLWhl
YWRpbmcoIlRyYW5zZm9ybSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRl
cnNQcm9wZXJ0eSgiT25lIGludmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsICJ0IGludmFsaWQt
cm90YXRlKDBkZWcpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsdGlwbGUg
aW52YWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb25zLiIsICJ0IGludmFsaWQtcm90YXRlKDBkZWcpIGlu
dmFsaWQtcGVyc3BlY3RpdmUoMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJ
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuIiwgInQgcm90YXRl
KDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIik7Ci10ZXN0SW52YWxp
ZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uIGJldHdlZW4gaW52
YWxpZCBvbmVzLiIsICJ0IGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIGludmFs
aWQtdHJhbnNsYXRlKDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQg
dHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGggdHJhaWxpbmcgY29tbWEuIiwgInQgcGVyc3BlY3RpdmUo
MCksIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSW52YWxpZCB0cmFuc2Zvcm0g
d2l0aCB0cmFpbGluZyBjb21tYS4iLCAidCBpbnZhbGlkLXJvdGF0ZSgwZGVnKSwiKTsKLXRlc3RJ
bnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJWYWxpZCB0cmFuc2Zvcm0gd2l0aCBpbnZhbGlkIGNo
YXJhY3RlcnMiLCAidCByb3RhdGUoMGRlZykgKi4tLCIpOwotCi1oZWFkaW5nKCJBcnJheSBwYXJh
bWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW1wdHkgYXJy
YXkuIiwgImEgYXJyYXkoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk9uZSBj
b21tYSBpbiBhcnJheS4iLCAiYSBhcnJheSgsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJv
cGVydHkoIk11bHRpcGxlIGNvbW1hcyBpbiBhcnJheS4iLCAiYSBhcnJheSgsLCwpIik7Ci10ZXN0
SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsdGlwbGUgY29tbWFzIHdpdGggYSB2YWx1ZSBp
biBhcnJheS4iLCAiYSBhcnJheSgsLDEsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVy
dHkoIk9uZSBjb21tYSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFycmF5LiIsICJh
IGFycmF5KCwtNCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJPbmUgY29tbWEg
Zm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheS4iLCAiYSBhcnJheSgsNCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJPbmUgbmVnYXRpdmUgdmFsdWUgZm9sbG93ZWQgYnkgYSBj
b21tYSBpbiBhcnJheS4iLCAiYSBhcnJheSgtNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQ
cm9wZXJ0eSgiT25lIHZhbHVlIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJy
YXkoNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdmFsdWVzIGZv
bGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoMSwgMiwgMywgNCwpIik7Ci10
ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEg
bGV0dGVyIGluIGFycmF5LiIsICJhIGFycmF5KDEsIDIsIDMsIDQsIHgpIik7Ci10ZXN0SW52YWxp
ZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVHdvIGNvbW1hcyBhcyBzZXBhcmF0b3IgYmV0d2VlbiB2YWx1
ZXMgaW4gYXJyYXkuIiwgImEgYXJyYXkoMSwgMiwgLCA0KSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoLDEsIDIsIDMs
IDQpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU2VtaWNvbG9uIHNlcGFyYXRl
ZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImEgYXJyYXkoMTsgMjsgMzsgNCkiKTsKLXRlc3RJbnZhbGlk
UGFyYW1ldGVyc1Byb3BlcnR5KCJTcGFjZSBzZXBhcmF0ZWQgdmFsdWVzIGluIGFycmF5LiIsICJh
IGFycmF5KDEgMiAzIDQpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU3BhY2Ug
c2VwYXJhdGVkIHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkuIiwgImEgYXJy
YXkoMSAyIDMgNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU3BhY2Ugc2Vw
YXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoLCAx
IDIgMyA0KSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBpbiBhcnJheS4i
LCAiYSBhcnJheShOYU4pIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTmFOIGJl
dHdlZW4gdmFsaWQgdmFsdWVzIGluIGFycmF5LiIsICJhIGFycmF5KDEsIDIsIE5hTiwgMykiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJbnZhbGlkIHZhbHVlICdub25lJyBpbiBh
cnJheS4iLCAiYSBhcnJheShub25lKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHko
IkludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFycmF5LiIsICJhIGFycmF5KDFweCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJbnZhbGlkIHZhbHVlIHVuaXQgJ2RlZycgaW4g
YXJyYXkuIiwgImEgYXJyYXkoMWRlZykiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5
KCJJbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheSBhZnRlciB2YWxpZCB2YWx1ZXMuIiwg
ImEgYXJyYXkoMSwgMiwgMywgNHB4KSIpOwotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0
cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQyLiIsICJhIG1h
dDIoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3IGFyZ3VtZW50
cy4iLCAiYSBtYXQyKDAsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgi
Tm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0MigsLCwpIik7Ci10ZXN0SW52YWxpZFBh
cmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4iLCAiYSBtYXQyKDAsIDAsLCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0MiBmdW5jdGlvbi4iLCAi
YSBtYXQyKDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVG9v
IG1hbnkgYXJndW1lbnRzLiIsICJhIG1hdDIoMCwgMCwgMCwgMCwgMSkiKTsKLXRlc3RJbnZhbGlk
UGFyYW1ldGVyc1Byb3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0MigxIDAgMCAxKSIpOwotdGVz
dEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlNvbWUgY29tbWFzLiIsICJhIG1hdDIoMSwgMCwg
MCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWFzLiIs
ICJhIG1hdDIoLCAwLCAwLCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5v
IGxlbmd0aCB1bml0cy4iLCAiYSBtYXQyKDFweCwgMHB4LCAwcHgsIDFweCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0MigxZGVnLCAw
ZGVnLCAwZGVnLCAxZGVnKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBp
biBtYXQyLiIsICJhIG1hdDIoMSwgMCwgMCwgTmFOKSIpOwotCi1oZWFkaW5nKCJNYXQzIHBhcmFt
ZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQz
LiIsICJhIG1hdDMoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3
IGFyZ3VtZW50cy4iLCAiYSBtYXQzKDAsIDAsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRl
cnNQcm9wZXJ0eSgiTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0MygsLCwsLCwsLCws
LCwsLCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4i
LCAiYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsLCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVy
c1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0MyBmdW5jdGlvbi4iLCAiYSBtYXQzKDEsIDAsIDAsIDAs
IDEsIDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVG9vIG1h
bnkgYXJndW1lbnRzLiIsICJhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSwgMCkiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0MygxIDAg
MCAwIDEgMCAwIDAgMSkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJTb21lIGNv
bW1hcy4iLCAiYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAgMCAwIDEpIik7Ci10ZXN0SW52YWxpZFBh
cmFtZXRlcnNQcm9wZXJ0eSgiTGVhZGluZyBjb21tYXMuIiwgImEgbWF0MygsIDAsIDAsIDAsIDEs
IDAsIDAsIDAsIDEpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gbGVuZ3Ro
IHVuaXRzLiIsICJhIG1hdDMoMXB4LCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDFweCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0Mygx
ZGVnLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAxZGVnKSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIk5hTiBpbiBtYXQzLiIsICJhIG1hdDIoTmFOLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAxKSIpOwotCi1oZWFkaW5nKCJNYXQ0IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQ0LiIsICJhIG1hdDQoKSIpOwotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3IGFyZ3VtZW50cy4iLCAiYSBtYXQ0KDEs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0
eSgiTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0NCgsLCwsLCwsLCwsLCwsLCwpIik7
Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4iLCAiYSBtYXQ0
KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsLCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4iLCAiYSBtYXQ0
KDEsIDAsIDAsIDAsIDEsIDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9w
ZXJ0eSgiVG9vIG1hbnkgYXJndW1lbnRzLiIsICJhIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwg
MCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1By
b3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0NCgxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAg
MCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlNvbWUgY29tbWFzLiIsICJh
IG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCAwIDAgMCAxKSIpOwotdGVz
dEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWFzLiIsICJhIG1hdDQoLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIpOwotdGVzdEludmFs
aWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIGxlbmd0aCB1bml0cy4iLCAiYSBtYXQ0KDFweCwgMCwg
MCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDAsIDFweCkiKTsKLXRlc3RJ
bnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0NCgxZGVn
LCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAxZGVnKSIp
OwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBpbiBtYXQ0LiIsICJhIG1hdDQo
TmFOLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIpOwotCi1o
ZWFkaW5nKCJNaXhpbmcgcGFyYW1ldGVyIHR5cGVzLiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJz
UHJvcGVydHkoIk51bWJlciBwYXJhbWV0ZXIgd2l0aCBoZXggY29sb3IuIiwgIm4xIDEgMiAjRkYw
MDAwIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTnVtYmVyIHBhcmFtZXRlciB3
aXRoIGNvbG9yIGtleXdvcmQuIiwgIm4xIDEgMiByZWQiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVy
c1Byb3BlcnR5KCJOdW1iZXIgcGFyYW1ldGVyIHdpdGggcmdiIGNvbG9yLiIsICJuMSAxIDIgcmdi
KDI1NSwgMCwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJDb2xvciB3aXRo
IG51bWJlciBwYXJhbWV0ZXIuIiwgImEgcmdiKDI1NSwgMCwgMCkgMSIpOwotdGVzdEludmFsaWRQ
YXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGluIGFycmF5LiIsICJhIGFycmF5KDAsIHJnYigyNTUs
IDAsIDApKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGFuZCBhcnJh
eS4iLCAiYSBhcnJheSgwLCAwKSByZ2IoMjU1LCAwLCAwKSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIkNvbG9yIHdpdGggdHJhbnNmb3JtIHZhbHVlcy4iLCAiYSByb3RhdGUoNDVk
ZWcpIHJnYigyNTUsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiQ29s
b3Igd2l0aCB0cmFuc2Zvcm0gdmFsdWVzLiIsICJhIHJnYigyNTUsIDAsIDApIHJvdGF0ZSg0NWRl
ZykiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJDb2xvciBhZnRlciBhcnJheSB2
YWx1ZXMuIiwgImEgYXJyYXkoMCkgcmdiKDI1NSwgMCwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1l
dGVyc1Byb3BlcnR5KCJDb2xvciB3aXRoIG1hdDIuIiwgImEgcmdiKDI1NSwgMCwgMCkgbWF0Migw
LCAwLCAwLCAwKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIm1hdDIgd2l0aCBt
YXQzLiIsICJhIG1hdDIoMSwgMCwgMCwgMSkgbWF0MygwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
KSIpOwotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgt
YXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctcGFyYW1ldGVycy1wcm9wZXJ0eS12
YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmpzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMjk0MGY2Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVz
dHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmpzCisrKyAvZGV2L251bGwKQEAg
LTEsMTczICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24u
anMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IHBhcmFtZXRlcnMgcHJvcGVydHkgcGFyc2luZyBpbiB0
aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xv
YmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGZpbHRlckF0UnVsZSwg
c3R5bGVEZWNsYXJhdGlvbiwgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUsIHN1YlZhbHVlOwotCi1m
dW5jdGlvbiB0ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVl
LCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBwYXJhbWV0ZXJzUHJv
cGVydHkgPSAicGFyYW1ldGVyczogIiArIHByb3BlcnR5VmFsdWUgKyAiOyIKLSAgICBkZWJ1Zygi
XG4iICsgZGVzY3JpcHRpb24gKyAiXG4iICsgcGFyYW1ldGVyc1Byb3BlcnR5KTsKLQotICAgIHN0
eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBwYXJh
bWV0ZXJzUHJvcGVydHkgKyAiIH0iLCAwKTsKLSAgICBmaWx0ZXJBdFJ1bGUgPSBzdHlsZXNoZWV0
LmNzc1J1bGVzLml0ZW0oMCk7Ci0gICAgc2hvdWxkQmUoImZpbHRlckF0UnVsZS50eXBlIiwgIkNT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFIik7Ci0KLSAgICBzdHlsZURlY2xhcmF0aW9uID0gZmls
dGVyQXRSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCIs
ICIxIik7Ci0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIiwgIlwiIiArIGV4cGVjdGVkVmFsdWUgKyAiXCIi
KTsKLQotICAgIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCdwYXJhbWV0ZXJzJyk7Ci0gICAgc2hvdWxkSGF2ZUNvbnN0cnVjdG9y
KCJwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIHNob3Vs
ZEJlKCJwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0
aC50b1N0cmluZygpKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSkgewotICAgICAgICBmb3IgKHZhciBpID0g
MDsgaSA8IGV4cGVjdGVkVGV4dHMubGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICAgIHN1YlZhbHVl
ID0gcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWVbaV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3Vi
VmFsdWUuY3NzVmFsdWVUeXBlIiwgIkNTU1ZhbHVlLkNTU19WQUxVRV9MSVNUIik7Ci0gICAgICAg
ICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBl
eHBlY3RlZFRleHRzW2ldICsgIlwiIik7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmco
Ik51bWJlciBwYXJhbWV0ZXIgdGVzdHMuIikKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkludGVn
ZXIgcGFyYW1ldGVycy4iLAotICAgICJuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3
IiwKLSAgICAibjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNyIsCi0gICAgWyJuMSAx
IiwibjIgMiAzIiwgIm4zIDMgNCA1IiwgIm40IDQgNSA2IDciXSk7Ci10ZXN0UGFyYW1ldGVyc1By
b3BlcnR5KCJGbG9hdCBwYXJhbWV0ZXJzLiIsCi0gICAgIm4xIDEuMSwgbjIgMi4yIDMuMywgbjMg
My4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIsCi0gICAgIm4xIDEuMSwgbjIgMi4yIDMu
MywgbjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIsCi0gICAgWyJuMSAxLjEiLCAi
bjIgMi4yIDMuMyIsICJuMyAzLjEgNC4xIDUuMSIsICJuNCA0LjEgNS4yIDYuMyA3LjQiXSk7Ci10
ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJQYXJhbWV0ZXIgbmFtZSBzYW1lIGFzIENTUyBrZXl3b3Jk
LiIsCi0gICAgImJhY2tncm91bmQgMCAxIDAgMSIsCi0gICAgImJhY2tncm91bmQgMCAxIDAgMSIs
Ci0gICAgWyJiYWNrZ3JvdW5kIDAgMSAwIDEiXSk7Ci0KLWhlYWRpbmcoIlRyYW5zZm9ybSBwYXJh
bWV0ZXIgdGVzdHMuIikKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIlRyYW5zZm9ybSBwYXJhbWV0
ZXIgd2l0aCBvbmUgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsCi0gICAgInQgcm90YXRlKDBkZWcpIiwK
LSAgICAidCByb3RhdGUoMGRlZykiLAotICAgIFsidCByb3RhdGUoMGRlZykiXSk7Ci10ZXN0UGFy
YW1ldGVyc1Byb3BlcnR5KCJUcmFuc2Zvcm0gcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgdHJhbnNm
b3JtIGZ1bmN0aW9ucy4iLAotICAgICJ0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2Fs
ZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIiwKLSAgICAidCByb3RhdGUoMGRlZykgcGVyc3Bl
Y3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSIsCi0gICAgWyJ0IHJvdGF0
ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIl0p
OwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsaXRwbGUgdHJhbnNmb3JtIHBhcmFtZXRlcnMu
IiwKLSAgICAidDEgcm90YXRlKDBkZWcpLCB0MiByb3RhdGUoMGRlZykiLAotICAgICJ0MSByb3Rh
dGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVnKSIsCi0gICAgWyJ0MSByb3RhdGUoMGRlZykiLCAidDIg
cm90YXRlKDBkZWcpIl0pOwotCi1oZWFkaW5nKCJBcnJheSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10
ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScu
IiwKLSAgICAiYXJyYXkgYXJyYXkoMSkiLAotICAgICJhcnJheSBhcnJheSgxKSIsCi0gICAgWyJh
cnJheSBhcnJheSgxKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkFycmF5IHBhcmFtZXRl
ciB3aXRoIG9uZSBwb3NpdGl2ZSBpbnRlZ2VyLiIsCi0gICAgImEgYXJyYXkoMSkiLAotICAgICJh
IGFycmF5KDEpIiwKLSAgICBbImEgYXJyYXkoMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5
KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBvbmUgbmVnYXRpdmUgZmxvYXQuIiwKLSAgICAiYSBhcnJh
eSgtMS4wMSkiLAotICAgICJhIGFycmF5KC0xLjAxKSIsCi0gICAgWyJhIGFycmF5KC0xLjAxKSJd
KTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxl
IHBvc2l0aXZlIGludGVnZXJzLiIsCi0gICAgImEgYXJyYXkoMSwgMiwgMywgNCwgNSkiLAotICAg
ICJhIGFycmF5KDEsIDIsIDMsIDQsIDUpIiwKLSAgICBbImEgYXJyYXkoMSwgMiwgMywgNCwgNSki
XSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBs
ZSBzaWduZWQgZmxvYXRzLiIsCi0gICAgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIs
Ci0gICAgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIsCi0gICAgWyJhIGFycmF5KDEs
IC0yLjIsIDMuMTQsIDAuNCwgNSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNdWx0aXBs
ZSBhcnJheSBwYXJhbWV0ZXJzLiIsCi0gICAgImExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwg
NSksIGEyIGFycmF5KDEsIDIsIDMpIiwKLSAgICAiYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40
LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykiLAotICAgIFsiYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwg
MC40LCA1KSIsICJhMiBhcnJheSgxLCAyLCAzKSJdKTsKLQotaGVhZGluZygiQ29sb3IgcGFyYW1l
dGVyIHRlc3RzLiIpOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiSGV4IGNvbG9yLiIsCi0gICAg
ImMgIzAwRkYwMCIsCi0gICAgImMgcmdiKDAsIDI1NSwgMCkiLAotICAgIFsiYyByZ2IoMCwgMjU1
LCAwKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGtleXdvcmQuIiwKLSAgICAi
YyBncmVlbiIsCi0gICAgImMgcmdiKDAsIDEyOCwgMCkiLAotICAgIFsiYyByZ2IoMCwgMTI4LCAw
KSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIHJnYiBmdW5jdGlvbi4iLAotICAg
ICJjIHJnYigwLCAxMjgsIDApIiwKLSAgICAiYyByZ2IoMCwgMTI4LCAwKSIsCi0gICAgWyJjIHJn
YigwLCAxMjgsIDApIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiQ29sb3IgaHNsIGZ1bmN0
aW9uLiIsCi0gICAgImMgaHNsKDEyMCwgMTAwJSwgNTAlKSIsCi0gICAgImMgcmdiKDAsIDI1NSwg
MCkiLAotICAgIFsiYyByZ2IoMCwgMjU1LCAwKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHko
IkNvbG9yIHJnYmEgZnVuY3Rpb24uIiwKLSAgICAiYyByZ2JhKDAsIDI1NSwgMCwgMC4yKSIsCi0g
ICAgImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiLAotICAgIFsiYyByZ2JhKDAsIDI1NSwgMCwgMC4y
KSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGhzbGEgZnVuY3Rpb24uIiwKLSAg
ICAiYyBoc2xhKDEyMCwgMTAwJSwgNTAlLCAwLjIpIiwKLSAgICAiYyByZ2JhKDAsIDI1NSwgMCwg
MC4yKSIsCi0gICAgWyJjIHJnYmEoMCwgMjU1LCAwLCAwLjIpIl0pOwotCi1oZWFkaW5nKCJNYXQy
IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDIgcGFyYW1l
dGVyLiIsCi0gICAgIm0gbWF0MigxLCAwLCAwLCAxKSIsCi0gICAgIm0gbWF0MigxLCAwLCAwLCAx
KSIsCi0gICAgWyJtIG1hdDIoMSwgMCwgMCwgMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5
KCJNYXQyIHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4iLAotICAgICJtIG1hdDIoLTEs
IC0xLCAtMSwgLTEpIiwKLSAgICAibSBtYXQyKC0xLCAtMSwgLTEsIC0xKSIsCi0gICAgWyJtIG1h
dDIoLTEsIC0xLCAtMSwgLTEpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTWF0MiBwYXJh
bWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLiIsCi0gICAgIm0gbWF0Migt
MSwgMSwgMSwgLTEpIiwKLSAgICAibSBtYXQyKC0xLCAxLCAxLCAtMSkiLAotICAgIFsibSBtYXQy
KC0xLCAxLCAxLCAtMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQyIHBhcmFtZXRl
ciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuIiwKLSAgICAibSBtYXQyKDEsIC0yLjIsIDMu
MTQsIDAuNCkiLAotICAgICJtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSIsCi0gICAgWyJtIG1h
dDIoMSwgLTIuMiwgMy4xNCwgMC40KSJdKTsKLQotaGVhZGluZygiTWF0MyBwYXJhbWV0ZXIgdGVz
dHMuIik7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQzIHBhcmFtZXRlci4iLAotICAgICJt
IG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkiLAotICAgICJtIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMSkiLAotICAgIFsibSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAs
IDEpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTWF0MyBwYXJhbWV0ZXIgd2l0aCBuZWdh
dGl2ZSB2YWx1ZXMuIiwKLSAgICAibSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEpIiwKLSAgICAibSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEp
IiwKLSAgICBbIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSJdKTsK
LXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5k
IHBvc2l0aXZlIHZhbHVlcy4iLAotICAgICJtIG1hdDMoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwg
LTEsIDEpIiwKLSAgICAibSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKSIsCi0g
ICAgWyJtIG1hdDMoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIDEpIl0pOwotdGVzdFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTWF0MyBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRz
LiIsCi0gICAgIm0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwg
MSkiLAotICAgICJtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQs
IDEpIiwKLSAgICBbIm0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSkiXSk7Ci0KLWhlYWRpbmcoIk1hdDQgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTWF0NCBwYXJhbWV0ZXIuIiwKLSAgICAibSBtYXQ0KDEsIDAsIDAsIDAs
IDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpIiwKLSAgICAibSBtYXQ0KDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpIiwKLSAgICBbIm0gbWF0
NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSJdKTsKLXRl
c3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgdmFsdWVz
LiIsCi0gICAgIm0gbWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkiLAotICAgICJtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpIiwKLSAgICBbIm0g
bWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQ0IHBhcmFtZXRlciB3
aXRoIG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuIiwKLSAgICAibSBtYXQ0KC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSkiLAotICAgICJt
IG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEs
IC0xKSIsCi0gICAgWyJtIG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDQgcGFy
YW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJtIG1hdDQoMSwgLTIu
MiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwg
LTIuMiwgMy4xNCwgMC40KSIsCi0gICAgIm0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0y
LjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpIiwK
LSAgICBbIm0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwg
LTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpIl0pOwotCi1oZWFkaW5nKCJDb21i
aW5lZCBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJOdW1iZXIg
cGFyYW1ldGVyLCBjb2xvciBwYXJhbWV0ZXIsIHRyYW5zZm9ybSBwYXJhbWV0ZXIsIG1hdHJpeCBw
YXJhbWV0ZXJzIGFuZCBhcnJheSBwYXJhbWV0ZXIuIiwKLSAgICAibiAxLCBjIHJnYigwLCAxMjgs
IDApLCB0IHJvdGF0ZSgwZGVnKSwgbTEgbWF0MigxLCAwLCAwLCAxKSwgbTIgbWF0MygxLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAxKSwgbTMgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAw
LCAxLCAwLCAwLCAwLCAwLCAxKSwgYSBhcnJheSgxKSIsCi0gICAgIm4gMSwgYyByZ2IoMCwgMTI4
LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXkoMSkiLAotICAgIFsibiAxIiwgImMgcmdiKDAs
IDEyOCwgMCkiLCAidCByb3RhdGUoMGRlZykiLCAibTEgbWF0MigxLCAwLCAwLCAxKSIsICJtMiBt
YXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpIiwgIm0zIG1hdDQoMSwgMCwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSkiLCAiYSBhcnJheSgxKSJdKTsKXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXBy
b3BlcnR5LWludmFsaWQuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgt
YXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LWludmFsaWQu
anMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBkNGEyNGEuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3Njcmlw
dC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLmpzCisrKyAvZGV2L251bGwKQEAg
LTEsNTEgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cy4KLQotZGVzY3JpcHRpb24oIlRlc3Qgc3JjIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Vi
a2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2JhbCBmb3Ig
dGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0ZXJBdFJ1bGUsIHN0eWxlRGVj
bGFyYXRpb247Ci0KLWZ1bmN0aW9uIHRlc3RJbnZhbGlkU3JjUHJvcGVydHkoZGVzY3JpcHRpb24s
IHByb3BlcnR5VmFsdWUpCi17Ci0gICAgdmFyIHNyY1Byb3BlcnR5ID0gInNyYzogIiArIHByb3Bl
cnR5VmFsdWUgKyAiOyI7Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHNy
Y1Byb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVy
IG15LWZpbHRlciB7ICIgKyBzcmNQcm9wZXJ0eSArICIgfSIsIDApOwotCi0gICAgZmlsdGVyQXRS
dWxlID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJB
dFJ1bGUudHlwZSIsICJDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVE
ZWNsYXJhdGlvbiA9IGZpbHRlckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGgiLCAiMCIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ3NyYycpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygiVVJMIHRlc3Rz
LiIpOwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiTm8gcHJvcGVydHkgdmFsdWUuIiwgIiIpOwot
dGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiT25seSBhIHNpbmdsZSBjb21tYS4iLCAiLCIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiT25seSB0d28gY29tbWFzLiIsICIsICwiKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIklkZW50aWZpZXIgaW5zdGVhZCBvZiBVUkwuIiwgInZlcnRleC1zaGFk
ZXIiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIklkZW50aWZpZXIgd2l0aCBmb3JtYXQgaW5z
dGVhZCBvZiBVUkwgd2l0aCBmb3JtYXQuIiwgInZlcnRleC1zaGFkZXIgZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJMb2NhbCBmdW5jdGlvbiBp
bnN0ZWFkIG9mIFVSTCBmdW5jdGlvbi4iLCAibG9jYWwoc2hhZGVyLnZzKSIpOwotCi1oZWFkaW5n
KCJGb3JtYXQgZnVuY3Rpb24gdGVzdHMuIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJJZGVu
dGlmaWVyIGluc3RlYWQgb2YgZm9ybWF0IGZ1bmN0aW9uLiIsICJ1cmwoc2hhZGVyLnZzKSB2ZXJ0
ZXgtc2hhZGVyIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJTdHJpbmcgaW5zdGVhZCBvZiBm
b3JtYXQgZnVuY3Rpb24uIiwgInVybChzaGFkZXIudnMpICd4LXNoYWRlci94LXZlcnRleCciKTsK
LXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIkZvcm1hdCBmdW5jdGlvbiBtaXNzcGVsbGVkLiIsICJ1
cmwoc2hhZGVyLnZzKSBmcm10KCd4LXNoYWRlci94LXZlcnRleCcpIik7Ci10ZXN0SW52YWxpZFNy
Y1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gZW1wdHkuIiwgInVybChzaGFkZXIudnMpIGZvcm1h
dCgpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gd2l0aCBzaW5n
bGUgaWRlbnRpZmVyIGFyZ3VtZW50LiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQodmVydGV4LXNo
YWRlcikiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIkZvcm1hdCBmdW5jdGlvbiB3aXRoIHNp
bmdsZSBudW1iZXIgYXJndW1lbnQuIiwgInVybChzaGFkZXIudnMpIGZvcm1hdCgwKSIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiRm9ybWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUgc3BhY2Ut
c2VwYXJhdGVkIGlkZW50aWZlciBhcmd1bWVudHMuIiwgInVybChzaGFkZXIudnMpIGZvcm1hdCh2
ZXJ0ZXgtc2hhZGVyIGZyYWdtZW50LXNoYWRlcikiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHko
IkZvcm1hdCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIGNvbW1hLXNlcGFyYXRlZCBpZGVudGlmZXIg
YXJndW1lbnRzLiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQodmVydGV4LXNoYWRlcixmcmFnbWVu
dC1zaGFkZXIpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gd2l0
aCBtdWx0aXBsZSBzcGFjZS1zZXBhcmF0ZWQgc3RyaW5nIGFyZ3VtZW50cy4iLCAidXJsKHNoYWRl
ci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcgJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIp
OwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiRm9ybWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUg
Y29tbWEtc2VwYXJhdGVkIHN0cmluZyBhcmd1bWVudHMuIiwgInVybChzaGFkZXIudnMpIGZvcm1h
dCgneC1zaGFkZXIveC12ZXJ0ZXgnLCd4LXNoYWRlci94LWZyYWdtZW50JykiKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIk11bHRpcGxlIHZhbGlkIGZvcm1hdCBmdW5jdGlvbnMuIiwgInVybChz
aGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSBmb3JtYXQoJ3gtc2hhZGVyL3gt
ZnJhZ21lbnQnKSIpOwotCi1oZWFkaW5nKCJQdW5jdHVhdGlvbiB0ZXN0cy4iKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIkxlYWRpbmcgY29tbWEgYmVmb3JlIGZpcnN0IFVSTC4iLCAiLCB1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiKTsKLXRlc3RJbnZhbGlkU3Jj
UHJvcGVydHkoIkNvbW1hIGJldHdlZW4gVVJMIGFuZCBmb3JtYXQuIiwgInVybChzaGFkZXIudnMp
LCBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHko
IlRyYWlsaW5nIGNvbW1hIGFmdGVyIGZvcm1hdC4iLCAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4
LXNoYWRlci94LXZlcnRleCcpLCIpOwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiVHdvIGNvbW1h
cyBiZXR3ZWVuIFVSTHMuIiwgInVybChzaGFkZXIudnMpLCx1cmwoc2hhZGVyLmZzKSIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiVHdvIGNvbW1hcyBiZXR3ZWVuIFVSTHMgd2l0aCBmb3JtYXQu
IiwgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwsdXJsKHNoYWRl
ci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiKTsKLXRlc3RJbnZhbGlkU3JjUHJv
cGVydHkoIk5vIGNvbW1hIGJldHdlZW4gVVJMcy4iLCAidXJsKHNoYWRlci52cykgdXJsKHNoYWRl
ci5mcykiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIk5vIGNvbW1hIGJldHdlZW4gVVJMcyB3
aXRoIGZvcm1hdC4iLCAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcp
IHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgv
c2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJz
aW5nLXNyYy1wcm9wZXJ0eS12YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MmU4MDZmYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdp
dGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LXZhbGlk
LmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTExICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1m
aWx0ZXItcGFyc2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IHNyYyBwcm9wZXJ0
eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2Ug
aGF2ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIg
ZmlsdGVyQXRSdWxlLCBzdHlsZURlY2xhcmF0aW9uLCBzcmNQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1
ZTsKLQotZnVuY3Rpb24gdGVzdFNyY1Byb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVl
LCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBzcmNQcm9wZXJ0eSA9
ICJzcmM6ICIgKyBwcm9wZXJ0eVZhbHVlICsgIjsiCi0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0
aW9uICsgIlxuIiArIHNyY1Byb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgi
QC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBzcmNQcm9wZXJ0eSArICIgfSIsIDApOwot
ICAgIGZpbHRlckF0UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91
bGRCZSgiZmlsdGVyQXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsK
LQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxk
QmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwgIjEiKTsKLSAgICBzaG91bGRCZSgicmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpKSIsICJcIiIg
KyBleHBlY3RlZFZhbHVlICsgIlwiIik7Ci0KLSAgICBzcmNQcm9wZXJ0eVZhbHVlID0gc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eUNTU1ZhbHVlKCdzcmMnKTsKLSAgICBzaG91bGRIYXZlQ29u
c3RydWN0b3IoInNyY1Byb3BlcnR5VmFsdWUiLCAiQ1NTVmFsdWVMaXN0Iik7Ci0KLSAgICBzaG91
bGRCZSgic3JjUHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0
cmluZygpKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAotICAgIGlm
IChzcmNQcm9wZXJ0eVZhbHVlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUZXh0cy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViVmFsdWUgPSBzcmNQcm9wZXJ0
eVZhbHVlW2ldOwotICAgICAgICAgICAgc2hvdWxkSGF2ZUNvbnN0cnVjdG9yKCJzdWJWYWx1ZSIs
ICJDU1NWYWx1ZSIpOwotICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSIsICJDU1NWYWx1ZS5DU1NfQ1VTVE9NIik7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3Zl
QmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBleHBlY3RlZFRleHRzW2ldICsgIlwi
Iik7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmcoIlVSTHMgd2l0aG91dCBmb3JtYXQg
dGVzdHMuIik7Ci10ZXN0U3JjUHJvcGVydHkoIk9uZSBVUkwgd2l0aG91dCBmb3JtYXQuIiwKLSAg
ICAidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSIsCi0gICAgWyJ1cmwoc2hh
ZGVyLnZzKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJUd28gVVJMcyB3aXRob3V0IGZvcm1hdC4i
LAotICAgICJ1cmwoc2hhZGVyLnZzKSwgdXJsKHNoYWRlci5mcykiLAotICAgICJ1cmwoc2hhZGVy
LnZzKSwgdXJsKHNoYWRlci5mcykiLAotICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwo
c2hhZGVyLmZzKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJUaHJlZSBVUkxzIHdpdGhvdXQgZm9y
bWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMp
IiwKLSAgICAidXJsKHNoYWRlci52cyksIHVybChzaGFkZXIuZnMpLCB1cmwoc2hhZGVyMykiLAot
ICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSIsCi0gICAgInVybChz
aGFkZXIzKSJdKTsKLQotaGVhZGluZygiVVJMcyB3aXRoIGZvcm1hdCB0ZXN0cy4iKTsKLXRlc3RT
cmNQcm9wZXJ0eSgiT25lIFVSTCB3aXRoIGZvcm1hdC4iLAotICAgICJ1cmwoc2hhZGVyLnZzKSBm
b3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNo
YWRlci94LXZlcnRleCcpIl0pOwotCi10ZXN0U3JjUHJvcGVydHkoIlR3byBVUkxzIHdpdGggZm9y
bWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwg
dXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiLAotICAgICJ1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZv
cm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICBbInVybChzaGFkZXIudnMpIGZvcm1h
dCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIsCi0gICAgInVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1z
aGFkZXIveC1mcmFnbWVudCcpIl0pOwotCi10ZXN0U3JjUHJvcGVydHkoIlRocmVlIFVSTHMgd2l0
aCBmb3JtYXQuIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRl
eCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNo
YWRlcjMpIGZvcm1hdCgndW5rbm93bicpIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4
LXNoYWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJh
Z21lbnQnKSwgdXJsKHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpIiwKLSAgICBbInVybChzaGFk
ZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIsCi0gICAgInVybChzaGFkZXIuZnMp
IGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICAidXJsKHNoYWRlcjMpIGZvcm1h
dCgndW5rbm93bicpIl0pOwotCi1oZWFkaW5nKCJNaXhlZCBVUkxzIHdpdGggYW5kIHdpdGhvdXQg
Zm9ybWF0IHRlc3RzLiIpOwotdGVzdFNyY1Byb3BlcnR5KCJUaHJlZSBVUkxzLiBNaWRkbGUgVVJM
IHdpdGhvdXQgZm9ybWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIv
eC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24n
KSIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJs
KHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24nKSIsCi0gICAgWyJ1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVy
LmZzKSIsCi0gICAgInVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24nKSJdKTsKLQotdGVzdFNy
Y1Byb3BlcnR5KCJUaHJlZSBVUkxzLiBGaXJzdCBhbmQgbGFzdCBVUkxzIHdpdGhvdXQgZm9ybWF0
LiIsCi0gICAgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVy
L3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpIiwKLSAgICAidXJsKHNoYWRlci52cyksIHVybChz
aGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpLCB1cmwoc2hhZGVyMykiLAot
ICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSIsCi0gICAgInVybChzaGFkZXIzKSJdKTsKLQotaGVhZGluZygiQ2Fw
aXRhbGl6YXRpb24gdGVzdHMuIik7Ci10ZXN0U3JjUHJvcGVydHkoIkFsbCB0b2tlbnMgY2FwaXRh
bGl6ZWQuIiwKLSAgICAiVVJMKFNIQURFUi5WUykgRk9STUFUKCdYLVNIQURFUi9YLVZFUlRFWCcp
IiwKLSAgICAidXJsKFNIQURFUi5WUykgZm9ybWF0KCdYLVNIQURFUi9YLVZFUlRFWCcpIiwKLSAg
ICBbInVybChTSEFERVIuVlMpIGZvcm1hdCgnWC1TSEFERVIvWC1WRVJURVgnKSJdKTsKLQotaGVh
ZGluZygiV2hpdGVzcGFjZSB0ZXN0cy4iKTsKLXRlc3RTcmNQcm9wZXJ0eSgiRXh0cmEgbGVhZGlu
ZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcgd2hpdGVzcGFjZS4gIiwKLSAgICAiICAgdXJsKHNoYWRl
ci52cykgICBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykgICAsICAgdXJsKHNoYWRlci5mcykg
ICBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSAgICIsCi0gICAgInVybChzaGFkZXIudnMp
IGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNo
YWRlci94LWZyYWdtZW50JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpIiwKLSAgICAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZy
YWdtZW50JykiXSk7Ci0KLXRlc3RTcmNQcm9wZXJ0eSgiTm8gd2hpdGVzcGFjZSBhcm91bmQgY29t
bWEuIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLHVy
bChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICAidXJsKHNo
YWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3Jt
YXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIsCi0gICAgWyJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJObyB3aGl0ZXNwYWNlIGJl
dHdlZW4gVVJMIGFuZCBmb3JtYXQuIiwKLSAgICAidXJsKHNoYWRlci52cylmb3JtYXQoJ3gtc2hh
ZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gt
dmVydGV4JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRl
eCcpIl0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21w
b3NpdGVkL2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5kLW1v
ZGVzLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY4MjQwM2Qu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21wb3NpdGVk
L2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDExNCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlciBibGVuZCBtb2RlcyBjb21wdXRlIGNvbG9yIHZh
bHVlcyBjb3JyZWN0bHkuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMgaXMgdGhlIHJl
ZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFzc2VzIGlmIGVh
Y2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29sb3Iu
Ci0gICAgICAgIFRoZSB0ZXN0IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3IgdmFsdWVzIGlu
IHRoaXMgcmVmZXJlbmNlIGZpbGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAgIDxzdHlsZT4K
LSAgICAucGFpci1vZi1zcXVhcmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAg
IC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAg
ICAgICAgd2lkdGg6IDIwcHg7Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2lu
OiAycHg7Ci0gICAgICAgIGZsb2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAq
LwotICAgIC5ub3JtYWwtZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0gICAgLm11bHRpcGx5LWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCAxOCUsIDI1JSk7Ci0gICAgfQotICAgIC5zY3JlZW4t
ZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAxODMsIDE5Mik7
Ci0gICAgfQotICAgIC5kYXJrZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMCUsIDMwJSwgNTAlKTsKLSAgICB9Ci0gICAgLmxpZ2h0ZW4tZXhwZWN0ZWQgewotICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAu
ZGlmZmVyZW5jZS1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUs
IDc3LCAxKTsKLSAgICB9Ci0gICAgLmV4Y2x1c2lvbi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYigyNTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhw
ZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA5MSwgMTI4KTsKLSAg
ICB9Ci0gICAgLmNvbG9yLWRvZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmdiKDI1NSwgMTkwLCAyNTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAgfQotICAg
IC5oYXJkLWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAl
LCA0NCUsIDUwJSk7Ci0gICAgfQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgODksIDEyOCk7Ci0gICAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAg
ICAgICA8ZGl2IGNsYXNzPSJub3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNs
YXNzPSJub3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9
InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4cGVjdGVk
Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibXVsdGlwbHktZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9InNjcmVlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNj
cmVlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1v
Zi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJs
aWdodGVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibGlnaHRlbi1leHBl
Y3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVz
Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9ImRpZmZlcmVuY2UtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2Pgot
ICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4
Y2x1c2lvbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1l
eHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVh
cmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9Im92ZXJsYXktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAg
IDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9y
LWRvZGdlLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iY29sb3ItZG9kZ2Ut
ZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1
YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWJ1cm4tZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgICAgICA8ZGl2IGNsYXNzPSJjb2xvci1idXJuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rp
dj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNz
PSJoYXJkLWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGFyZC1s
aWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1v
Zi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNvZnQtbGlnaHQtZXhwZWN0ZWQiPjwvZGl2PgotICAg
IDwvZGl2PgotICAgIDwhLS0KLSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGJsZW5kIG1vZGVzIHRv
IHRoaXMgcGFnZSwgYmUgY2FyZWZ1bCBub3QgdG8gZXhjZWVkIDYwMHB4IGluIAotICAgICAgICBo
ZWlnaHQsIHNpbmNlIER1bXBSZW5kZXJUcmVlIGNvbXBhcmVzIDgwMHg2MDAgc25hcHNob3RzIG9m
IHRoaXMgcGFnZS4KLSAgICAtLT4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5k
LW1vZGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2NvbXBvc2l0ZWQv
Y3VzdG9tLWZpbHRlci1ibGVuZC1tb2Rlcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBmOWNmN2NjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSwzMjkgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotICAg
IDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgYmxlbmQgbW9kZXMgY29tcHV0ZSBjb2xv
ciB2YWx1ZXMgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBUaGlzIHRlc3QgcGFzc2VzIGlm
IGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29s
b3IuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRD
U1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAg
ICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVhcmVzIHsK
LSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYg
ewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7Ci0gICAg
ICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZsb2F0OiBs
ZWZ0OwotICAgIH0KLSAgICAuZGVzdGluYXRpb24gewotICAgICAgICAvKiBEZXN0aW5hdGlvbiBj
b2xvciAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMzAlLCA1MCUpOwot
ICAgICAgICAvKiBGb3JjZSBhIEdQVSBjb21wb3NpdGVkIGxheWVyLiAqLwotICAgICAgICAtd2Vi
a2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7Ci0gICAgfQotICAgIC8qIEJsZW5k
IG1vZGVzICovCi0gICAgLm5vcm1hbCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
bm9uZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJj
ZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC8qCi0gICAg
ICAgIFRoZSBlcXVhdGlvbnMgYmVsb3cgdXNlIHRoZSBzeW1ib2xzIGFuZCBlcXVhdGlvbnMgZGVm
aW5lZCBpbiB0aGUgQ1NTIEJsZW5kaW5nIGFuZCBDb21wb3NpdGluZyBzcGVjLCB3aGVyZToKLSAg
ICAgICAgICAgIENvID0gb3V0cHV0IGNvbG9yCi0gICAgICAgICAgICBDcyA9IHNvdXJjZSBjb2xv
ciAoYWthICJtaXggY29sb3IiLCAiY3NzX01peENvbG9yIikKLSAgICAgICAgICAgIENiID0gZGVz
dGluYXRpb24gY29sb3IgKGFrYSAiYmFja2Ryb3AgY29sb3IiLCAib3JpZ2luYWwgRE9NIGVsZW1l
bnQgY29sb3IiKQotCi0gICAgICAgIGh0dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxl
L3RpcC9jb21wb3NpdGluZy9pbmRleC5odG1sI2dlbmVyYWxmb3JtdWxhCi0gICAgKi8KLSAgICAu
bm9ybWFsLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIE5vcm1hbDoKLQotICAg
ICAgICAgICAgQ28gPSBDcwotCi0gICAgICAgICAgICByID0gMC4wCi0gICAgICAgICAgICBnID0g
MC42Ci0gICAgICAgICAgICBiID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAubXVsdGlwbHkgewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21p
eC1jb2xvci5mcycpIG11bHRpcGx5IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41
IDEuMCk7Ci0gICAgfQotICAgIC5tdWx0aXBseS1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAg
ICAgICAgICBNdWx0aXBseToKLQotICAgICAgICAgICAgQ28gPSBDYiAqIENzCi0KLSAgICAgICAg
ICAgIHIgPSAxLjAgKiAwLjAgPSAwLjAKLSAgICAgICAgICAgIGcgPSAwLjMgKiAwLjYgPSAwLjE4
Ci0gICAgICAgICAgICBiID0gMC41ICogMC41ID0gMC4yNQotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDE4JSwgMjUlKTsKLSAgICB9Ci0gICAgLnNjcmVlbiB7
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8uLi9yZXNv
dXJjZXMvbWl4LWNvbG9yLmZzJykgc2NyZWVuIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAw
LjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5zY3JlZW4tZXhwZWN0ZWQgewotICAgICAgICAvKgot
ICAgICAgICAgICAgU2NyZWVuOgotCi0gICAgICAgICAgICBDbyA9IENiICsgQ3MgLSBDYiAqIENz
Ci0KLSAgICAgICAgICAgIHIgPSAxLjAgKyAwLjAgLSAxLjAgKiAwLjAgPSAxLjAKLSAgICAgICAg
ICAgIGcgPSAwLjMgKyAwLjYgLSAwLjMgKiAwLjYgPSAwLjcyCi0gICAgICAgICAgICBiID0gMC41
ICsgMC41IC0gMC41ICogMC41ID0gMC43NQotCi0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhl
IGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZv
cjoKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDAlLCA3MiUsIDc1JSk7Ci0g
ICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDE4MywgMTkyKTsK
LSAgICB9Ci0gICAgLmRhcmtlbiB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9u
ZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgZGFya2VuIHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5kYXJrZW4tZXhw
ZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgRGFya2VuOgotCi0gICAgICAgICAgICBD
byA9IG1pbihDYiwgQ3MpCi0KLSAgICAgICAgICAgIHIgPSBtaW4oMS4wLCAwLjApID0gMC4wCi0g
ICAgICAgICAgICBnID0gbWluKDAuMywgMC42KSA9IDAuMwotICAgICAgICAgICAgYiA9IG1pbigw
LjUsIDAuNSkgPSAwLjUKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDAlLCAzMCUsIDUwJSk7Ci0gICAgfQotICAgIC5saWdodGVuIHsKLSAgICAgICAgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uLy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMn
KSBsaWdodGVuIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAg
fQotICAgIC5saWdodGVuLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIExpZ2h0
ZW46Ci0KLSAgICAgICAgICAgIENvID0gbWF4KENiLCBDcykKLQotICAgICAgICAgICAgciA9IG1h
eCgxLjAsIDAuMCkgPSAxLjAKLSAgICAgICAgICAgIGcgPSBtYXgoMC4zLCAwLjYpID0gMC42Ci0g
ICAgICAgICAgICBiID0gbWF4KDAuNSwgMC41KSA9IDAuNQotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAuZGlmZmVy
ZW5jZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8u
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgZGlmZmVyZW5jZSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuZGlmZmVyZW5jZS1leHBlY3RlZCB7
Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBEaWZmZXJlbmNlOgotCi0gICAgICAgICAgICBDbyA9
IGFicyhDYiAtIENzKQotCi0gICAgICAgICAgICByID0gYWJzKDEuMCAtIDAuMCkgPSAxLjAKLSAg
ICAgICAgICAgIGcgPSBhYnMoMC4zIC0gMC42KSA9IDAuMwotICAgICAgICAgICAgYiA9IGFicygw
LjUgLSAwLjUpID0gMC4wCi0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2Fs
Y3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDMwJSwgMCUpOwotICAgICAgICAqLwot
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA3NywgMSk7Ci0gICAgfQotICAgIC5l
eGNsdXNpb24gewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgn
Li4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGV4Y2x1c2lvbiBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuZXhjbHVzaW9uLWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIEV4Y2x1c2lvbjoKLQotICAgICAgICAgICAgQ28g
PSBDYiArIENzIC0gMiAqIENiICogQ3MKLQotICAgICAgICAgICAgciA9IDEuMCArIDAuMCAtIDIu
MCAqIDEuMCAqIDAuMCA9IDEuMAotICAgICAgICAgICAgZyA9IDAuMyArIDAuNiAtIDIuMCAqIDAu
MyAqIDAuNiA9IDAuNTQKLSAgICAgICAgICAgIGIgPSAwLjUgKyAwLjUgLSAyLjAgKiAwLjUgKiAw
LjUgPSAwLjUKLQotICAgICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlv
biByZXF1aXJlcyB1cyB0byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNTQlLCA1MCUpOyAKLSAgICAgICAgKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMTM4LCAxMjcpOwotICAgIH0KLSAgICAub3Zl
cmxheSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8u
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgb3ZlcmxheSBzb3VyY2UtYXRvcCksIG1peF9jb2xv
ciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAub3ZlcmxheS1leHBlY3RlZCB7Ci0gICAg
ICAgIC8qCi0gICAgICAgICAgICBPdmVybGF5OgotCi0gICAgICAgICAgICBDbyA9IEhhcmRMaWdo
dChDcywgQ2IpCi0gICAgICAgICAgICAgICA9IGlmKENiIDw9IDAuNSkKLSAgICAgICAgICAgICAg
ICAgICAgIE11bHRpcGx5KENzLCAyICogQ2IpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAg
ICAgICAgICAgICAgICAgIFNjcmVlbihDcywgMiAqIENiIC0gMSkKLSAgICAgICAgICAgICAgID0g
aWYoQ2IgPD0gMC41KQotICAgICAgICAgICAgICAgICAgICAgQ3MgKiAoMiAqIENiKQotICAgICAg
ICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBDcyArICgyICogQ2IgLSAxKSAt
IChDcyAqICgyICogQ2IgLSAxKSkKLQotICAgICAgICAgICAgciA9IDAgKyAoMiAqIDEgLSAxKSAt
ICgwICogKDIgKiAxIC0gMSkpID0gMQotICAgICAgICAgICAgZyA9IDAuNiAqICgyICogMC4zKSA9
IDAuMzYKLSAgICAgICAgICAgIGIgPSAwLjUgKiAoMiAqIDAuNSkgPSAwLjUKLQotICAgICAgICAg
ICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2Ug
dGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MTAwJSwgMzYlLCA1MCUpOwotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
Z2IoMjU1LCA5MSwgMTI4KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRvZGdlIHsKLSAgICAgICAgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uLy4uL3Jlc291cmNlcy9taXgtY29s
b3IuZnMnKSBjb2xvci1kb2RnZSBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAx
LjApOwotICAgIH0KLSAgICAuY29sb3ItZG9kZ2UtZXhwZWN0ZWQgewotICAgICAgICAvKgotICAg
ICAgICAgICAgQ29sb3JEb2RnZToKLQotICAgICAgICAgICAgQ28gPSBpZihDcyA8IDEpCi0gICAg
ICAgICAgICAgICAgICAgICBtaW4oMSwgQ2IgLyAoMSAtIENzKSkKLSAgICAgICAgICAgICAgICAg
ZWxzZQotICAgICAgICAgICAgICAgICAgICAgMQotCi0gICAgICAgICAgICByID0gbWluKDEsIDEg
LyAoMSAtIDApKSA9IDEKLSAgICAgICAgICAgIGcgPSBtaW4oMSwgMC4zIC8gKDEgLSAwLjYpKSA9
IDAuNzUKLSAgICAgICAgICAgIGIgPSBtaW4oMSwgMC41IC8gKDEgLSAwLjUpKSA9IDEKLQotICAg
ICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0
byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMTAwJSwgNzUlLCAxMDAlKTsKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogcmdiKDI1NSwgMTkwLCAyNTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybiB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMv
bWl4LWNvbG9yLmZzJykgY29sb3ItYnVybiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjggMC44
IDAuOCAxLjApOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7Ci0gICAgICAgIC8q
Ci0gICAgICAgICAgICBDb2xvckJ1cm46Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPiAwKQot
ICAgICAgICAgICAgICAgICAgICAgMSAtIG1pbigxLCAoMSAtIENiKSAvIENzKQotICAgICAgICAg
ICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAwCi0KLSAgICAgICAgICAgICByID0g
MSAtIG1pbigxLCAoMSAtIDEpIC8gMC44KSA9IDEKLSAgICAgICAgICAgICBnID0gMSAtIG1pbigx
LCAoMSAtIDAuMykgLyAwLjgpID0gMC4xMjUKLSAgICAgICAgICAgICBiID0gMSAtIG1pbigxLCAo
MSAtIDAuNSkgLyAwLjgpID0gMC4zNzUKLQotICAgICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBj
b2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMTIuNSUsIDM3LjUlKTsK
LSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMzEsIDk2KTsK
LSAgICB9Ci0gICAgLmhhcmQtbGlnaHQgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9t
KG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGhhcmQtbGlnaHQg
c291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmhh
cmQtbGlnaHQtZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgSGFyZExpZ2h0Ogot
Ci0gICAgICAgICAgICBDbyA9IGlmKENzIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIE11
bHRpcGx5KENiLCAyICogQ3MpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAg
ICAgICAgIFNjcmVlbihDYiwgMiAqIENzIC0xKQotICAgICAgICAgICAgICAgPSBpZihDcyA8PSAw
LjUpCi0gICAgICAgICAgICAgICAgICAgICBDYiAqICgyICogQ3MpCi0gICAgICAgICAgICAgICAg
IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIENiICsgKDIgKiBDcyAtIDEpIC0gKENiICogKDIg
KiBDcyAtIDEpKQotCi0gICAgICAgICAgICByID0gMSAqICgyICogMCkgPSAwCi0gICAgICAgICAg
ICBnID0gMC4zICsgKDIgKiAwLjYgLSAxKSAtICgwLjMgKiAoMiAqIDAuNiAtIDEpKSA9IDAuNDQK
LSAgICAgICAgICAgIGIgPSAwLjUgKiAoMiAqIDAuNSkgPSAwLjUKLSAgICAgICAgKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCA0NCUsIDUwJSk7Ci0gICAgfQotICAgIC5zb2Z0
LWxpZ2h0IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4u
Ly4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBzb2Z0LWxpZ2h0IHNvdXJjZS1hdG9wKSwgbWl4
X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIFNvZnRMaWdodDoKLQotICAgICAgICAgICAgQ28g
PSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBDYiAtICgxIC0gMiAqIENzKSAq
IENiICogKDEgLSBDYikKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAg
ICAgQ2IgKyAoMiAqIENzIC0gMSkgKiAoRChDYikgLSBDYikKLQotICAgICAgICAgICAgd2l0aAot
Ci0gICAgICAgICAgICBEKENiKSA9IGlmKENiIDw9IDAuMjUpCi0gICAgICAgICAgICAgICAgICAg
ICAgICAoMTYgKiBDYiAtIDEyKSAqIENiICsgNCkgKiBDYgotICAgICAgICAgICAgICAgICAgICBl
bHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBzcXJ0KENiKQotCi0gICAgICAgICAgICBELnIg
PSBzcXJ0KDEpID0gMQotICAgICAgICAgICAgRC5nID0gc3FydCgwLjMpID0gMC41NDc3MjI1NTc1
MDUxNjYKLSAgICAgICAgICAgIEQuYiA9IHNxcnQoMC41KSA9IDAuNzA3MTA2NzgxMTg2NTQ4Ci0g
ICAgICAgICAgICByID0gMSAtICgxIC0gMiAqIDApICogMSAqICgxIC0gMSkgPSAxCi0gICAgICAg
ICAgICBnID0gMC4zICsgKDIgKiAwLjYgLSAxKSAqIChELmcgLSAwLjMpID0gMC4zNDk1NDQ1MTE1
MDEwMzMKLSAgICAgICAgICAgIGIgPSAwLjUgLSAoMSAtIDIgKiAwLjUpICogMC41ICogKDEgLSAw
LjUpID0gMC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRp
b24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDM0Ljk1NDQ1MSUsIDUwJSk7Ci0gICAgICAgICov
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDg5LCAxMjgpOwotICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVh
cmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbm9ybWFsIj48L2Rpdj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0ibm9ybWFsLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAg
ICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0
aW5hdGlvbiBtdWx0aXBseSI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4
cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFy
ZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzY3JlZW4iPjwvZGl2PgotICAg
ICAgICA8ZGl2IGNsYXNzPSJzY3JlZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAg
IDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3Rp
bmF0aW9uIGRhcmtlbiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRhcmtlbi1leHBlY3Rl
ZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbGlnaHRlbiI+PC9kaXY+Ci0gICAgICAg
IDxkaXYgY2xhc3M9ImxpZ2h0ZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxk
aXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0
aW9uIGRpZmZlcmVuY2UiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJkaWZmZXJlbmNlLWV4
cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFy
ZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBleGNsdXNpb24iPjwvZGl2Pgot
ICAgICAgICA8ZGl2IGNsYXNzPSJleGNsdXNpb24tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2
PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9
ImRlc3RpbmF0aW9uIG92ZXJsYXkiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJvdmVybGF5
LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNx
dWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBjb2xvci1kb2RnZSI+PC9k
aXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWRvZGdlLWV4cGVjdGVkIj48L2Rpdj4KLSAg
ICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBjb2xvci1idXJuIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0iY29sb3ItYnVybi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gaGFy
ZC1saWdodCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImhhcmQtbGlnaHQtZXhwZWN0ZWQi
PjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0g
ICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIHNvZnQtbGlnaHQiPjwvZGl2PgotICAgICAg
ICA8ZGl2IGNsYXNzPSJzb2Z0LWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAg
ICA8IS0tCi0gICAgICAgIElmIHlvdSBhZGQgbW9yZSBibGVuZCBtb2RlcyB0byB0aGlzIHBhZ2Us
IGJlIGNhcmVmdWwgbm90IHRvIGV4Y2VlZCA2MDBweCBpbiAKLSAgICAgICAgaGVpZ2h0LCBzaW5j
ZSBEdW1wUmVuZGVyVHJlZSBjb21wYXJlcyA4MDB4NjAwIHNuYXBzaG90cyBvZiB0aGlzIHBhZ2Uu
Ci0gICAgLS0+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwtZXhwZWN0
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1h
LXRleC1jb29yZC1vcHRpb25hbC1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA1ZDkwNGIwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hLXRleC1jb29yZC1vcHRpb25hbC1leHBlY3RlZC5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxo
ZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXJzIHdpdGggYmxlbmRpbmcg
YW5kIGNvbXBvc2l0aW5nIGV4ZWN1dGUgd2hldGhlciBvciBub3QgdGhlIGF1dGhvciBkZWZpbmVz
IGFfdGV4Q29vcmQuPC90aXRsZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNo
b3VsZCBzZWUgMiB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0tPgotICAgIDxzdHls
ZT4KLSAgICBkaXYgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsK
LSAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgbWFy
Z2luOiAxMHB4OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRp
dj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWEtdGV4LWNvb3Jk
LW9wdGlvbmFsLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMGM0NmI5MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDQwICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyB3aXRoIGJsZW5kaW5nIGFuZCBjb21wb3Np
dGluZyBleGVjdXRlIHdoZXRoZXIgb3Igbm90IHRoZSBhdXRob3IgZGVmaW5lcyBhX3RleENvb3Jk
LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIDIg
dmVydGljYWxseS1zdGFja2VkIGdyZWVuIGJveGVzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRl
c3QoKQotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMg
YWZ0ZXIgdGhlIHNoYWRlcnMgZG93bmxvYWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwot
ICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7Ci0gICAgICAg
IC8qIElmIHRoZSBzaGFkZXJzIGV4ZWN1dGUsIHRoZXkgd2lsbCB0dXJuIHRoZSBlbGVtZW50J3Mg
Y29sb3IgZnJvbSByZWQgdG8gZ3JlZW4uICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJn
YigyNTUsIDAsIDApOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4
OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0gICAgfQotICAgIC5hLXRleC1jb29yZC1kZWZpbmVk
IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hLXRl
eC1jb29yZC1kZWZpbmVkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycp
IG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMS4wIDAuMCAxLjApOwotICAgIH0K
LSAgICAuYS10ZXgtY29vcmQtdW5kZWZpbmVkIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hLXRleC1jb29yZC11bmRlZmluZWQudnMnKSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2Nv
bG9yIDAuMCAxLjAgMC4wIDEuMCk7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9k
eSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBjbGFzcz0iYS10ZXgtY29vcmQtZGVmaW5l
ZCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYS10ZXgtY29vcmQtdW5kZWZpbmVkIj48L2Rpdj4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFuaW1hdGlvbi1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIzMDk4NGMuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFuaW1hdGlvbi1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0gICAgICAgCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tZnJvbS1ub25lLWJveCIgZWxlbWVu
dCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUu
dnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0
ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLXRvLW5vbmUtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBz
b21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAx
LCByb3RhdGVCeSAzMCwgb2Zmc2V0IDApCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkg
Zm9yICJjdXN0b20tZnJvbS1uby1wYXJhbXMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhp
bmcgY2xvc2UgdG86IGN1c3RvbSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCByb3Rh
dGVCeSAzMCwgb2Zmc2V0IDApCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJj
dXN0b20tdG8tbm8tcGFyYW1zLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3Nl
IHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAs
IG9mZnNldCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1p
eC1hdHRyaWJ1dGVzLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBj
dXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDUgNSwgcm90YXRlQnkgMzAsIG9mZnNl
dCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLWZyb20tZGlm
Zi1wYXJhbXMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3Rv
bSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCBwYXJhbSAxMCwgcm90YXRlQnkgNjAs
IG9mZnNldCAxMCwgYW5vdGhlcl9wYXJhbSA1KQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3Bl
cnR5IGZvciAiY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29t
ZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwg
cGFyYW0gMTAsIHJvdGF0ZUJ5IDYwLCBvZmZzZXQgMTAsIGFub3RoZXJfcGFyYW0gNSkKLVBBU1Mg
LSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1taXgtcGFyYW1zLWJveCIgZWxl
bWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3Rh
dGUudnMpIG5vbmUsIDEgMSwgcGFyYW0gMTAsIGFub3RoZXJfcGFyYW0gNSwgZmlyc3RfcGFyYW0g
Niwgcm90YXRlQnkgNjAsIG9mZnNldCAxMCwgbGFzdF9wYXJhbSA0KQotUEFTUyAtICJ3ZWJraXRG
aWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1peC1udW1iZXJzLWJveCIgZWxlbWVudCBhdCAx
cyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5v
bmUsIDEgMSwgcm90YXRlQnkgNDUsIGEgNS41LCBiIDExIDE2LjUsIGMgMjIgMjcuNSAzMywgZCAz
OC41IDQ0IDQ5LjUpCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24uaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZmM5M2IxMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYW5pbWF0aW9uLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxMzkgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNj
cmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVu
YWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVm
ZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICB9Ci0gICAgPC9zY3Jp
cHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBtYXJnaW46IDEwcHg7
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwotICAgICAgICAgICAgZGlzcGxh
eTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0b20tZnJvbS1u
b25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWZyb20tbm9u
ZS1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLXRvLW5v
bmUtYm94IHsKLSAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tdG8tbm9uZS1h
bmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLWZyb20tbm8t
cGFyYW1zLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWZyb20t
bm8tcGFyYW1zLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0
b20tdG8tbm8tcGFyYW1zLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3Vz
dG9tLXRvLW5vLXBhcmFtcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgICAgICAKLSAg
ICAgICAgI2N1c3RvbS1taXgtYXR0cmlidXRlcy1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1h
bmltYXRpb246IGN1c3RvbS1taXgtYXR0cmlidXRlcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAg
fQotICAgIAotICAgICAgICAjY3VzdG9tLWZyb20tZGlmZi1wYXJhbXMtYm94IHsKLSAgICAgICAg
ICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIDJzIGxp
bmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLXRvLWRpZmYtcGFyYW1z
LWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0b20tbWl4LXBh
cmFtcy1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGN1c3RvbS1taXgtcGFy
YW1zLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICAjY3VzdG9t
LW1peC1udW1iZXJzLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9t
LW1peC1udW1iZXJzLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgIEAt
d2Via2l0LWtleWZyYW1lcyBjdXN0b20tZnJvbS1ub25lLWFuaW0gewotICAgICAgICAgICAgZnJv
bSB7IC13ZWJraXQtZmlsdGVyOiBub25lOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCByb3RhdGVC
eSAzMCwgb2Zmc2V0IDApOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFt
ZXMgY3VzdG9tLXRvLW5vbmUtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCByb3RhdGVCeSAz
MCwgb2Zmc2V0IDApOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IG5vbmU7
IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWZy
b20tbm8tcGFyYW1zLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSk7IH0KLSAgICAgICAgICAg
IHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LXJv
dGF0ZS52cyksIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCk7IH0KLSAgICAgICAgfQotCi0gICAgICAg
IEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tdG8tbm8tcGFyYW1zLWFuaW0gewotICAgICAgICAg
ICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzKSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKTsgfQotICAgICAgICAgICAgdG8gICB7
IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZz
KSk7IH0KLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1
c3RvbS1taXgtYXR0cmlidXRlcy1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cyksIHJvdGF0ZUJ5
X2EgMzAsIG9mZnNldF9hIDApOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCA1IDUgYm9yZGVyLWJv
eCwgcm90YXRlQnkgMzAsIG9mZnNldCAwKTsgfQotICAgICAgICB9Ci0gICAgCi0gICAgICAgIEAt
d2Via2l0LWtleWZyYW1lcyBjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIHsKLSAgICAgICAg
ICAgIGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4
LXJvdGF0ZS52cyksIHBhcmFtIDEwLCByb3RhdGVCeSAzMCwgb2Zmc2V0IDAsIGFub3RoZXJfcGFy
YW0gNSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgu
Li9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cyksIHJvdGF0ZUJ5IDkwLCBvZmZzZXQgMjApOyB9
Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLXRvLWRpZmYt
cGFyYW1zLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSwgcm90YXRlQnkgOTAsIG9mZnNldCAy
MCk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9y
ZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cyksIHBhcmFtIDEwLCByb3RhdGVCeSAzMCwgb2Zmc2V0
IDAsIGFub3RoZXJfcGFyYW0gNSk7IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtp
dC1rZXlmcmFtZXMgY3VzdG9tLW1peC1wYXJhbXMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMp
LCBmaXJzdF9wYXJhbSA2LCByb3RhdGVCeSA5MCwgb2Zmc2V0IDIwLCBsYXN0X3BhcmFtIDQpOyB9
Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3Vy
Y2VzL3ZlcnRleC1yb3RhdGUudnMpLCBwYXJhbSAxMCwgcm90YXRlQnkgMzAsIG9mZnNldCAwLCBh
bm90aGVyX3BhcmFtIDUpOyB9Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIEAtd2Via2l0
LWtleWZyYW1lcyBjdXN0b20tbWl4LW51bWJlcnMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMp
LCByb3RhdGVCeSAwLCBhIDEsIGIgMiAzLCBjIDQgNSA2LCBkIDcgOCA5KTsgfQotICAgICAgICAg
ICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzKSwgcm90YXRlQnkgOTAsIGEgMTAsIGIgMjAgMzAsIGMgNDAgNTAgNjAsIGQgNzAg
ODAgOTApOyB9Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotICAgIDxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1wYXJzZXIuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9hbmltYXRpb25zL3Jlc291cmNlcy9hbmltYXRpb24tdGVzdC1oZWxwZXJz
LmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci0gICAg
ICAgIGNvbnN0IGV4cGVjdGVkVmFsdWVzID0gWwotICAgICAgICAgICAgLy8gW2FuaW1hdGlvbi1u
YW1lLCB0aW1lLCBlbGVtZW50LWlkLCBwcm9wZXJ0eSwgZXhwZWN0ZWQtdmFsdWUsIHRvbGVyYW5j
ZV0KLSAgICAgICAgICAgIFsiY3VzdG9tLWZyb20tbm9uZS1hbmltIiwgIDEsICJjdXN0b20tZnJv
bS1ub25lLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZz
KSBub25lLCAxIDEsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCknLCAwXSwKLSAgICAgICAgICAgIFsi
Y3VzdG9tLXRvLW5vbmUtYW5pbSIsICAxLCAiY3VzdG9tLXRvLW5vbmUtYm94IiwgIndlYmtpdEZp
bHRlciIsICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkg
MzAsIG9mZnNldCAwKScsIDBdLAotCi0gICAgICAgICAgICBbImN1c3RvbS1mcm9tLW5vLXBhcmFt
cy1hbmltIiwgIDEsICJjdXN0b20tZnJvbS1uby1wYXJhbXMtYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9m
ZnNldCAwKScsIDBdLAotICAgICAgICAgICAgWyJjdXN0b20tdG8tbm8tcGFyYW1zLWFuaW0iLCAg
MSwgImN1c3RvbS10by1uby1wYXJhbXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJs
KHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKScsIDBd
LAotICAgICAgICAgICAgCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtYXR0cmlidXRlcy1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LWF0dHJpYnV0ZXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0
b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDUgNSwgcm90YXRlQnkgMzAsIG9mZnNldCAw
KScsIDBdLAotCi0gICAgICAgICAgICAvLyBGSVhNRTogQ1NTIFNoYWRlcnMgZG8gbm90IGdldCBn
b29kIEZQUyBpbiBkZWJ1ZyBtb2RlLCBzbyB0aGUgdG9sZXJhbmNlIG5lZWRzIHRvIGJlIGhpZ2hl
ci4KLSAgICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04NTA4NgotICAgICAgICAgICAgWyJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIiwgIDEs
ICJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1
cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCBwYXJhbSAxMCwgcm90YXRlQnkgNjAsIG9m
ZnNldCAxMCwgYW5vdGhlcl9wYXJhbSA1KScsIDVdLAotICAgICAgICAgICAgWyJjdXN0b20tdG8t
ZGlmZi1wYXJhbXMtYW5pbSIsICAxLCAiY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJveCIsICJ3ZWJr
aXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHBhcmFt
IDEwLCByb3RhdGVCeSA2MCwgb2Zmc2V0IDEwLCBhbm90aGVyX3BhcmFtIDUpJywgNV0sCi0KLSAg
ICAgICAgICAgIFsiY3VzdG9tLW1peC1wYXJhbXMtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1wYXJh
bXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5v
bmUsIDEgMSwgcGFyYW0gMTAsIGFub3RoZXJfcGFyYW0gNSwgZmlyc3RfcGFyYW0gNiwgcm90YXRl
QnkgNjAsIG9mZnNldCAxMCwgbGFzdF9wYXJhbSA0KScsIDVdLAotICAgICAgICAgICAgWyJjdXN0
b20tbWl4LW51bWJlcnMtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1udW1iZXJzLWJveCIsICJ3ZWJr
aXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHJvdGF0
ZUJ5IDQ1LCBhIDUuNSwgYiAxMSAxNi41LCBjIDIyIDI3LjUgMzMsIGQgMzguNSA0NCA0OS41KScs
IDEwXQotICAgICAgICBdOwotICAgICAgICBydW5BbmltYXRpb25UZXN0KGV4cGVjdGVkVmFsdWVz
KTsKLSAgICA8L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xhc3M9ImJveCIg
aWQ9ImN1c3RvbS1mcm9tLW5vbmUtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlk
PSJjdXN0b20tdG8tbm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1
c3RvbS1mcm9tLW5vLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9
ImN1c3RvbS10by1uby1wYXJhbXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlk
PSJjdXN0b20tbWl4LWF0dHJpYnV0ZXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3gi
IGlkPSJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9
ImJveCIgaWQ9ImN1c3RvbS10by1kaWZmLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xh
c3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtcGFyYW1zLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0iYm94IiBpZD0iY3VzdG9tLW1peC1udW1iZXJzLWJveCI+PC9kaXY+Ci0KLSAgICA8ZGl2IGlk
PSJyZXN1bHQiPgotICAgIDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5n
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1hcnJheS1ibGVuZGluZy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDM2OWM5MzQ5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1ibGVuZGluZy1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSw5ICswLDAgQEAKLSAgICAgCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVy
dHkgZm9yICJjdXN0b20tYmxlbmQtZnJvbS1ub25lLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29t
ZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEg
MSwgYXJyYXlGcm9tTm9uZUFuaW0gYXJyYXkoMTAsIDIwKSkKLVBBU1MgLSAid2Via2l0RmlsdGVy
IiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1ibGVuZC10by1ub25lLWJveCIgZWxlbWVudCBhdCAxcyBz
YXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5v
bmUsIDEgMSwgYXJyYXlUb05vbmVBbmltIGFycmF5KDEwLCAyMCkpCi1QQVNTIC0gIndlYmtpdEZp
bHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtc2luZ2xlLWVsZW1lbnQtYm94IiBlbGVt
ZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5l
ZWRlZC52cykgbm9uZSwgMSAxLCBzaW5nbGVFbGVtZW50QXJyYXkgYXJyYXkoNSkpCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtdHdvLWZsb2F0cy1ib3gi
IGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1zaGFk
ZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHR3b0Zsb2F0c0FycmF5IGFycmF5KDIsIDYuNCkpCi1Q
QVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtbXVsdGlwbGUt
ZWxlbWVudHMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3Rv
bSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCBtdWx0aXBsZUVsZW1lbnRzQXJy
YXkgYXJyYXkoNSwgMTAsIDUsIDEwLCA1LCAxMCwgNSwgMTAsIDUpKQotUEFTUyAtICJ3ZWJraXRG
aWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLWJsZW5kLWZpcnN0LWxvbmdlci1ib3giIGVsZW1l
bnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1zaGFkZXItbmVl
ZGVkLnZzKSBub25lLCAxIDEsIGZpcnN0TG9uZ2VyIGFycmF5KDEwLCAxMCwgMTAsIDEwKSkKLVBB
U1MgLSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1ibGVuZC1zZWNvbmQtbG9u
Z2VyLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJs
KG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgc2Vjb25kTG9uZ2VyIGFycmF5KDEwLCAx
MCwgMTAsIDEwLCAxMCkpCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1ibGVuZGluZy5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5nLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhmOWEwYWEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5nLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwxMTUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1s
PgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAg
ICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAg
ICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAg
ICAgICBtYXJnaW46IDEwcHg7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwot
ICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0KLSAgICAgICAg
I2N1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94IHsKLSAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0
aW9uOiBjdXN0b20tYmxlbmQtZnJvbS1ub25lLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0K
LSAgICAgICAgI2N1c3RvbS1ibGVuZC10by1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0
LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXRvLW5vbmUtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAg
IH0KLQotICAgICAgICAjY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWJveCB7Ci0gICAgICAg
ICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWFuaW0g
MnMgbGluZWFyOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC10d28tZmxvYXRz
LWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXR3by1m
bG9hdHMtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICAjY3VzdG9tLWJsZW5k
LW11bHRpcGxlLWVsZW1lbnRzLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjog
Y3VzdG9tLWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9
Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC1maXJzdC1sb25nZXItYm94IHsKLSAgICAgICAgICAg
IC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tYmxlbmQtZmlyc3QtbG9uZ2VyLWFuaW0gMnMgbGlu
ZWFyOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXNlY29uZC1s
b25nZXItYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlm
cmFtZXMgY3VzdG9tLWJsZW5kLWZyb20tbm9uZS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSk7IH0KLSAgICAg
ICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVk
LnZzKSwgYXJyYXlGcm9tTm9uZUFuaW0gYXJyYXkoMTAuMCwgMjAuMCkpOyB9Ci0gICAgICAgIH0K
LQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWJsZW5kLXRvLW5vbmUtYW5pbSB7
Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVy
LW5lZWRlZC52cyksIGFycmF5VG9Ob25lQW5pbSBhcnJheSgxMC4wLCAyMC4wKSk7IH0KLSAgICAg
ICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVk
LnZzKSk7IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3Vz
dG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJr
aXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzaW5nbGVFbGVtZW50
QXJyYXkgYXJyYXkoMCkpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHNpbmdsZUVsZW1lbnRBcnJheSBhcnJheSgx
MCkpOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWJs
ZW5kLXR3by1mbG9hdHMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHR3b0Zsb2F0c0FycmF5IGFycmF5KDEu
MDEsIDMuMTQpKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0d29GbG9hdHNBcnJheSBhcnJheSgzLjAzLCA5LjQy
KSk7IH0KLSAgICAgICAgfQotCi0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1i
bGVuZC1tdWx0aXBsZS1lbGVtZW50cy1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0
LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgbXVsdGlwbGVFbGVtZW50
c0FycmF5IGFycmF5KDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDApKTsgfQotICAgICAgICAgICAg
dG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBt
dWx0aXBsZUVsZW1lbnRzQXJyYXkgYXJyYXkoMTAsIDIwLCAxMCwgMjAsIDEwLCAyMCwgMTAsIDIw
LCAxMCkpOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9t
LWJsZW5kLWZpcnN0LWxvbmdlci1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgZmlyc3RMb25nZXIgYXJyYXko
MTAsIDEwLCAxMCwgMTAsIDEwKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgZmlyc3RMb25nZXIgYXJyYXkoMTAs
IDEwLCAxMCwgMTApKTsgfQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVz
IGN1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzZWNvbmRMb25n
ZXIgYXJyYXkoMTAsIDEwLCAxMCwgMTApKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzZWNvbmRMb25nZXIgYXJy
YXkoMTAsIDEwLCAxMCwgMTAsIDEwKSk7IH0KLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci0gICAg
PHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLXBhcnNlci5qcyI+PC9zY3Jp
cHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1h
dGlvbi10ZXN0LWhlbHBlcnMuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KLSAgICAgICAgY29uc3QgZXhwZWN0ZWRWYWx1ZXMgPSBbCi0gICAgICAgICAg
ICAvLyBbYW5pbWF0aW9uLW5hbWUsIHRpbWUsIGVsZW1lbnQtaWQsIHByb3BlcnR5LCBleHBlY3Rl
ZC12YWx1ZSwgdG9sZXJhbmNlXQotICAgICAgICAgICAgWyJjdXN0b20tYmxlbmQtZnJvbS1ub25l
LWFuaW0iLCAgMSwgImN1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgYXJyYXlGcm9tTm9u
ZUFuaW0gYXJyYXkoMTAsIDIwKSknLCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLWJsZW5kLXRv
LW5vbmUtYW5pbSIsICAxLCAiY3VzdG9tLWJsZW5kLXRvLW5vbmUtYm94IiwgIndlYmtpdEZpbHRl
ciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgYXJyYXlUb05v
bmVBbmltIGFycmF5KDEwLCAyMCkpJywgMl0sCi0KLSAgICAgICAgICAgIFsiY3VzdG9tLWJsZW5k
LXNpbmdsZS1lbGVtZW50LWFuaW0iLCAxLCAiY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWJv
eCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25l
LCAxIDEsIHNpbmdsZUVsZW1lbnRBcnJheSBhcnJheSg1KSknLCAyXSwKLQotICAgICAgICAgICAg
WyJjdXN0b20tYmxlbmQtdHdvLWZsb2F0cy1hbmltIiwgMSwgImN1c3RvbS1ibGVuZC10d28tZmxv
YXRzLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZz
KSBub25lLCAxIDEsIHR3b0Zsb2F0c0FycmF5IGFycmF5KDIsIDYuNCkpJywgMl0sCi0KLSAgICAg
ICAgICAgIFsiY3VzdG9tLWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWFuaW0iLCAxLCAiY3VzdG9t
LWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVy
bChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIG11bHRpcGxlRWxlbWVudHNBcnJheSBh
cnJheSg1LCAxMCwgNSwgMTAsIDUsIDEwLCA1LCAxMCwgNSkpJywgNF0sCi0KLSAgICAgICAgICAg
IFsiY3VzdG9tLWJsZW5kLWZpcnN0LWxvbmdlci1hbmltIiwgMSwgImN1c3RvbS1ibGVuZC1maXJz
dC1sb25nZXItYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVk
ZWQudnMpIG5vbmUsIDEgMSwgZmlyc3RMb25nZXIgYXJyYXkoMTAsIDEwLCAxMCwgMTApKScsIDJd
LAotCi0gICAgICAgICAgICBbImN1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWFuaW0iLCAxLCAi
Y3VzdG9tLWJsZW5kLXNlY29uZC1sb25nZXItYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20o
dXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgc2Vjb25kTG9uZ2VyIGFycmF5KDEw
LCAxMCwgMTAsIDEwLCAxMCkpJywgMl1dOwotICAgICAgICBydW5BbmltYXRpb25UZXN0KGV4cGVj
dGVkVmFsdWVzKTsKLSAgICA8L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xh
c3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94Ij48L2Rpdj4KLSAgICA8ZGl2
IGNsYXNzPSJib3giIGlkPSJjdXN0b20tYmxlbmQtdG8tbm9uZS1ib3giPjwvZGl2PgotICAgIDxk
aXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC1zaW5nbGUtZWxlbWVudC1ib3giPjwvZGl2
PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC10d28tZmxvYXRzLWJveCI+
PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLWJsZW5kLW11bHRpcGxlLWVs
ZW1lbnRzLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLWJsZW5k
LWZpcnN0LWxvbmdlci1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3Rv
bS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0icmVzdWx0Ij4K
LSAgICA8L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1leHBlY3RlZC5odG1sIGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI4M2QwNjIuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWV4
cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdHMgdGhlIGFycmF5KCkg
ZnVuY3Rpb24gaW4gY3VzdG9tIGZpbHRlcnM8L3RpdGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAg
ICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsK
LSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+
Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRp
diBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5
LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4
LWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNhNmJlZTIuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWFycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDE3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCB2ZXJ0ZXggc2hhZGVycyBjYW4gaW5kaXJlY3RseSBpbmRleCB1bmlm
b3JtIGFycmF5cy48L3RpdGxlPgotICAgIDwhLS0gVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZpbGUg
Zm9yIHRoZSB0ZXN0LiBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgZ3JlZW4g
c3F1YXJlLiAtLT4KLSAgICA8c3R5bGU+Ci0gICAgICAgIGRpdiB7Ci0gICAgICAgICAgICBiYWNr
Z3JvdW5kLWNvbG9yOiAjMGYwOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAg
ICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9k
eT4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5k
aXJlY3QtaW5kZXguaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4Lmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGE5YjY3OGMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDM3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCB2ZXJ0ZXggc2hhZGVycyBjYW4gaW5k
aXJlY3RseSBpbmRleCB1bmlmb3JtIGFycmF5cy48L3RpdGxlPgotICAgIDwhLS0gSWYgdGhlIHRl
c3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHNjcmlw
dD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJl
bmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gUnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUg
c2hhZGVycyBkb3dubG9hZC4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0K
LSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgICAgIGRpdiB7Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiAjZjAwOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAuYXJyYXktaW5kaXJlY3Qt
aW5kZXggewotICAgICAgICAgICAgLyogVGhpcyBjdXN0b20gZmlsdGVyIHdpbGwgdHVybiB0aGUg
ZWxlbWVudCdzIGNvbG9yIGZyb20gcmVkIHRvIGdyZWVuIGlmIGl0IGV4ZWN1dGVzLiAqLwotICAg
ICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hcnJheS11
bmlmb3JtLWluZGlyZWN0LWluZGV4LnZzJykgCi0gICAgICAgICAgICAgICAgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL3ZhcnlpbmctbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgCi0g
ICAgICAgICAgICAgICAgdmFsdWVzIGFycmF5KDAuMCwgMS4wKSwgcmVkSW5kZXggMCwgZ3JlZW5J
bmRleCAxLCBibHVlSW5kZXggMCwgYWxwaGFJbmRleCAxKTsKLSAgICAgICAgfQotICAgIDwvc3R5
bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBjbGFzcz0i
YXJyYXktaW5kaXJlY3QtaW5kZXgiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5Lmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXku
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjg2MDE4Yy4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXkuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+
Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0cyB0aGUgYXJyYXkoKSBmdW5jdGlvbiBp
biBjdXN0b20gZmlsdGVyczwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIp
OwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgi
V2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0
aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQg
dG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Nj
cmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAg
ICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNvdXJjZXMvZnJhZ21lbnQt
Y29sb3IuZnMnKSwgY29sb3JBcnJheSBhcnJheSgwLjAsIDEuMCwgMC4wLCAxLjApKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQg
ZGl2IGlzIGNvbG91cmVkIGdyZWVuIGJ5IGZyYWdtZW50LWNvbG9yLmZzLCBhIGZyYWdtZW50IHNo
YWRlci4KLSAgICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYgc3RheXMgcmVkLgotICAgICAgICAt
LT4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGluYXRpb24tYWxwaGEtZXhwZWN0ZWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1m
cmFjdGlvbmFsLWRlc3RpbmF0aW9uLWFscGhhLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDRiZGViNjUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGluYXRpb24t
YWxwaGEtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLTwhRE9D
VFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPkJsZW5kaW5n
IHdpdGggZnJhY3Rpb25hbCBhbHBoYSBvbiBkZXN0aW5hdGlvbjwvdGl0bGU+Ci0gICAgPHN0eWxl
IHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2Rlc3RpbmF0aW9uIHsKLSAgICAgICAgICAgIC8q
IFRoaXMgaXMgdGhlIEVYQUNUIGNvbG9yIHZhbHVlIHdlIGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMg
bWF5IGhhdmUgc2xpZ2h0IGRpZmZlcmVudAotICAgICAgICAgICAgICAgY29sb3IgdmFsdWUuICov
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc5LCAxNjYsIDEyOCk7Ci0gICAg
ICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImRlc3RpbmF0
aW9uIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1mcmFjdGlvbmFsLWRlc3RpbmF0
aW9uLWFscGhhLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItYmxlbmQtZnJhY3Rpb25hbC1kZXN0aW5hdGlvbi1hbHBoYS5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAxMmIyNGYwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1mcmFjdGlvbmFsLWRlc3RpbmF0
aW9uLWFscGhhLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMDQgKzAsMCBAQAotPCFET0NUWVBF
IEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBi
bGVuZGluZyB3aXRoIGEgdHJhbnNsdWNlbnQgZWxlbWVudCB0ZXh0dXJlIGNvbXB1dGVzIHRoZSBj
b3JyZWN0IGNvbG9yIHZhbHVlLjwvdGl0bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVu
YWJsZWQiLCAiMSIpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9
InRleHQvY3NzIj4KLSAgICAgICAgI2Rlc3RpbmF0aW9uIHsKLSAgICAgICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYmEoMTAwJSwgMCUsIDAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbXVs
dGlwbHkgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDEuMCAwLjAgMC42KTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBUaGUgcmVzdWx0IG9m
IHRoZSBibGVuZGluZyBmdW5jdGlvbiBpcyBhdmVyYWdlZCB3aXRoIHRoZSBkZXN0aW5hdGlvbiBj
b2xvciB1c2luZyB0aGUgZGVzdGluYXRpb24ncyBhbHBoYSBhcyB0aGUgZGVzdGluYXRpb24ncyB3
ZWlnaHQuCi0KLSAgICBUaGUgcmVzdWx0aW5nIGNvbG9yIHdpbGwgYmU6Ci0gICAgICAgIENyID0g
KDEgLSBhYikgeCBDcyArIGFiIHggQihDYiwgQ3MpCi0KLSAgICBXaXRoOgotICAgICAgICBDcjog
dGhlIHJlc3VsdCBjb2xvcgotICAgICAgICBCOiAgdGhlIGJsZW5kaW5nIGZ1bmN0aW9uCi0gICAg
ICAgIENzOiB0aGUgc291cmNlIGNvbG9yIChha2EgIm1peCBjb2xvciIsICJjc3NfTWl4Q29sb3Ii
KQotICAgICAgICBhczogdGhlIHNvdXJjZSBhbHBoYSAodXNlZCBkdXJpbmcgY29tcG9zaXRpbmcp
Ci0gICAgICAgIENiOiB0aGUgYmFja2Ryb3AgY29sb3IgKCJvcmlnaW5hbCBET00gZWxlbWVudCBj
b2xvciIpCi0gICAgICAgIGFiOiB0aGUgYmFja2Ryb3AgYWxwaGEKLQotICAgIEluIHRoaXMgY2Fz
ZToKLSAgICAgICAgQ3MgPSAoMC4wLCAxLjAsIDAuMCkKLSAgICAgICAgQ2IgPSAoMS4wLCAwLjAs
IDAuMCkKLSAgICAgICAgYWIgPSAwLjUKLQotICAgICAgICBCZWNhdXNlIHdlJ3JlIHVzaW5nIHRo
ZSAibXVsdGlwbHkiIGJsZW5kIG9wZXJhdG9yOgotICAgICAgICBCKENiLCBDcykgPSBDYiAqIENz
Ci0gICAgICAgIEIoQ2IsIENzKSA9ICgxLjAsIDAuMCwgMC4wKSAqICgwLjAsIDEuMCwgMC4wKQot
ICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAwLjAsIDAuMCkKLQotICAgICAgICBDciA9ICgxIC0g
MC41KSAqICgwLjAsIDEuMCwgMC4wKSArIDAuNSAqICgwLjAsIDAuMCwgMC4wKQotICAgICAgICBD
ciA9IDAuNSAqICgwLjAsIDEuMCwgMC4wKSArIDAuMAotICAgICAgICBDciA9ICgwLjAsIDAuNSwg
MC4wKQotCi0gICAgQXQgdGhpcyBwb2ludCwgd2UgY29tcG9zaXRlIHRoZSB0ZXh0dXJlIHdpdGgg
dGhlIFBvcnRlci1EdWZmIFNvdXJjZUF0b3AgY29tcG9zaXRlIG9wZXJhdG9yLgotICAgIFRoZSBn
ZW5lcmFsIGNvbXBvc2l0aW5nIGZvcm11bGEgaXM6Ci0KLSAgICAgICAgY28gPSBhcyAqIEZhICog
Q3MgKyBhYiAqIEZiICogQ2IKLQotICAgICAgICBhbyA9IGFzICogMSArIGFiICogKDEgLSBhcykK
LSAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICBXaXRoIHRoZSBTb3VyY2VBdG9wIGNvbXBvc2l0
ZSBvcGVyYXRvcjoKLQotICAgICAgICBGYSA9IGFiCi0gICAgICAgIEZiID0gMSAtIGFzCi0KLSAg
ICBJbiB0aGlzIGNhc2UsIENzID0gQ3IsIHdoZXJlIENyIGlzIHRoZSByZXN1bHQgb2YgdGhlIGJs
ZW5kaW5nIGZ1bmN0aW9uLgotICAgIFN1YnN0aXR1dGluZyBGYSBhbmQgRmIsIHdlIGdldCBmb2xs
b3dpbmcgc3BlY2lmaWMgZm9ybXVsYToKLQotICAgICAgICBjbyA9IGFzICogQ3MgKiBhYiArIGFi
ICogQ2IgKiAoMSAtIGFzKQotCi0gICAgICAgIGFvID0gYXMgKiBhYiArIGFiICogKDEgLSBhcykK
LSAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICBTdWJzdGl0dXRpbmcgQ3IgZm9yIENzOgotICAg
ICAgICBjbyA9IGFzICogQ3IgKiBhYiArIGFiICogQ2IgKiAoMSAtIGFzKQotCi0gICAgRnJvbSB0
aGlzIHdlIGdldDoKLSAgICAgICAgY28gPSAwLjYgKiAoMC4wLCAwLjUsIDAuMCkgKiAwLjUgKyAw
LjUgKiAoMS4wLCAwLjAsIDAuMCkgKiAoMSAtIDAuNikKLSAgICAgICAgY28gPSAwLjMgKiAoMC4w
LCAwLjUsIDAuMCkgKyAwLjIgKiAoMS4wLCAwLjAsIDAuMCkKLSAgICAgICAgY28gPSAoMC4wLCAw
LjE1LCAwLjApICsgKDAuMiwgMC4wLCAwLjApCi0gICAgICAgIGNvID0gKDAuMiwgMC4xNSwgMC4w
KQotCi0gICAgVGhlIHJlc3VsdGluZyBhbHBoYSBpczoKLSAgICAgICAgYW8gPSAwLjYgKiAwLjUg
KyAwLjUgKiAoMSAtIDAuNikKLSAgICAgICAgYW8gPSAwLjMgKyAwLjIKLSAgICAgICAgYW8gPSAw
LjUKLQotICAgIFRoZSBmaW5hbCByZXN1bHQgaXMgdGhlbjoKLSAgICAgICAgQ28gPSAoMC4yLCAw
LjE1LCAwLjApIC8gMC41Ci0gICAgICAgIENvID0gKDAuNCwgMC4zLCAwLjApCi0KLQotICAgIEF0
IHRoaXMgcG9pbnQgdGhlIHRleHR1cmUgaGFzIHRvIGJlIGNvbXBvc2l0ZWQgd2l0aCB0aGUgdW5k
ZXJseWluZyB3aGl0ZSBmcm9tIHRoZSBwYWdlIHRvIGdldCB0aGUgZmluYWwKLSAgICByZXN1bHRz
IGluIGxpZ2h0IG9mIHRoZSBhbHBoYSAoYW8pIHZhbHVlOgotCi0gICAgICAgIEV4cGVjdGVkIGNv
bG9yIG9uIHNjcmVlbiA9IENvICogYW8gKyAoMS4wIC0gYW8pICogV2hpdGUKLQotICAgICAgICBS
ID0gMC40ICogMC41ICsgKDEuMCAtIDAuNSkgKiAxLjAgPSAwLjIgKyAwLjUgPSAwLjcKLSAgICAg
ICAgRyA9IDAuMyAqIDAuNSArICgxLjAgLSAwLjUpICogMS4wID0gMC4xNSArIDAuNSA9IDAuNjUK
LSAgICAgICAgQiA9IDAuMCAqIDAuNSArICgxLjAgLSAwLjUpICogMS4wID0gMCArIDAuNSA9IDAu
NQotCi0gICAgU28gdGhlIGV4cGVjdGVkIChjb3JyZWN0KSB2YWx1ZSBpcyByZ2IoNzAlLCA2NSUs
IDUwJSksIG1lYW5pbmcgcmdiKDE3OSwgMTY2LCAxMjgpLgotCi0gICAgSU1QT1JUQU5UOiB0aGlz
IGlzIHRoZSBleGFjdCBleHBlY3RlZCBjb2xvci4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xp
Z2h0IGNvbG9yIGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBpZD0iZGVzdGluYXRpb24iPjwv
ZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLWV4cGVjdGVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhw
ZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjgyNDAzZC4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYmxl
bmQtbW9kZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDExNCArMCwwIEBACi08
IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3Vz
dG9tIGZpbHRlciBibGVuZCBtb2RlcyBjb21wdXRlIGNvbG9yIHZhbHVlcyBjb3JyZWN0bHkuPC90
aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0
aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFzc2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWly
IG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29sb3IuCi0gICAgICAgIFRoZSB0ZXN0
IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3IgdmFsdWVzIGluIHRoaXMgcmVmZXJlbmNlIGZp
bGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVh
cmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMg
PiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7
Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZs
b2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAqLwotICAgIC5ub3JtYWwtZXhw
ZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDYwJSwgNTAlKTsKLSAg
ICB9Ci0gICAgLm11bHRpcGx5LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDAlLCAxOCUsIDI1JSk7Ci0gICAgfQotICAgIC5zY3JlZW4tZXhwZWN0ZWQgewotICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAxODMsIDE5Mik7Ci0gICAgfQotICAgIC5kYXJr
ZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDMwJSwgNTAl
KTsKLSAgICB9Ci0gICAgLmxpZ2h0ZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAuZGlmZmVyZW5jZS1leHBlY3Rl
ZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDc3LCAxKTsKLSAgICB9Ci0g
ICAgLmV4Y2x1c2lvbi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigy
NTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhwZWN0ZWQgewotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA5MSwgMTI4KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRv
ZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMTkwLCAy
NTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAgfQotICAgIC5oYXJkLWxpZ2h0LWV4cGVj
dGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCA0NCUsIDUwJSk7Ci0gICAg
fQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDI1NSwgODksIDEyOCk7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4K
LSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJu
b3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJub3JtYWwtZXhwZWN0
ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+
Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAg
PGRpdiBjbGFzcz0ibXVsdGlwbHktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxk
aXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNjcmVlbi1l
eHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNjcmVlbi1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJw
YWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJsaWdodGVuLWV4cGVjdGVkIj48
L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibGlnaHRlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBj
bGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRp
ZmZlcmVuY2UtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBh
aXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1leHBlY3RlZCI+
PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1leHBlY3RlZCI+PC9kaXY+Ci0g
ICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRp
diBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im92
ZXJsYXktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXIt
b2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWRvZGdlLWV4cGVjdGVkIj48
L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iY29sb3ItZG9kZ2UtZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9ImNvbG9yLWJ1cm4tZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNz
PSJjb2xvci1idXJuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJoYXJkLWxpZ2h0LWV4cGVj
dGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGFyZC1saWdodC1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9InNvZnQtbGlnaHQtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDwhLS0K
LSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGJsZW5kIG1vZGVzIHRvIHRoaXMgcGFnZSwgYmUgY2Fy
ZWZ1bCBub3QgdG8gZXhjZWVkIDYwMHB4IGluIAotICAgICAgICBoZWlnaHQsIHNpbmNlIER1bXBS
ZW5kZXJUcmVlIGNvbXBhcmVzIDgwMHg2MDAgc25hcHNob3RzIG9mIHRoaXMgcGFnZS4KLSAgICAt
LT4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1tb2Rlcy5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIyZjQwOTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwzMjcgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgYmxlbmQgbW9kZXMgY29tcHV0
ZSBjb2xvciB2YWx1ZXMgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBUaGlzIHRlc3QgcGFz
c2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNh
bWUgY29sb3IuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJX
ZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsK
LSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVh
cmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMg
PiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7
Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZs
b2F0OiBsZWZ0OwotICAgIH0KLSAgICAuZGVzdGluYXRpb24gewotICAgICAgICAvKiBEZXN0aW5h
dGlvbiBjb2xvciAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMzAlLCA1
MCUpOwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAqLwotICAgIC5ub3JtYWwgewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjAp
OwotICAgIH0KLSAgICAvKgotICAgICAgICBUaGUgZXF1YXRpb25zIGJlbG93IHVzZSB0aGUgc3lt
Ym9scyBhbmQgZXF1YXRpb25zIGRlZmluZWQgaW4gdGhlIENTUyBCbGVuZGluZyBhbmQgQ29tcG9z
aXRpbmcgc3BlYywgd2hlcmU6Ci0gICAgICAgICAgICBDbyA9IG91dHB1dCBjb2xvcgotICAgICAg
ICAgICAgQ3MgPSBzb3VyY2UgY29sb3IgKGFrYSAibWl4IGNvbG9yIiwgImNzc19NaXhDb2xvciIp
Ci0gICAgICAgICAgICBDYiA9IGRlc3RpbmF0aW9uIGNvbG9yIChha2EgImJhY2tkcm9wIGNvbG9y
IiwgIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9yIikKLQotICAgICAgICBodHRwczovL2R2Y3Mu
dzMub3JnL2hnL0ZYVEYvcmF3ZmlsZS90aXAvY29tcG9zaXRpbmcvaW5kZXguaHRtbCNnZW5lcmFs
Zm9ybXVsYQotICAgICovCi0gICAgLm5vcm1hbC1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAg
ICAgICAgICBOb3JtYWw6Ci0KLSAgICAgICAgICAgIENvID0gQ3MKLQotICAgICAgICAgICAgciA9
IDAuMAotICAgICAgICAgICAgZyA9IDAuNgotICAgICAgICAgICAgYiA9IDAuNQotICAgICAgICAq
LwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0g
ICAgLm11bHRpcGx5IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1
cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBtdWx0aXBseSBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAubXVsdGlwbHktZXhwZWN0ZWQg
ewotICAgICAgICAvKgotICAgICAgICAgICAgTXVsdGlwbHk6Ci0KLSAgICAgICAgICAgIENvID0g
Q2IgKiBDcwotCi0gICAgICAgICAgICByID0gMS4wICogMC4wID0gMC4wCi0gICAgICAgICAgICBn
ID0gMC4zICogMC42ID0gMC4xOAotICAgICAgICAgICAgYiA9IDAuNSAqIDAuNSA9IDAuMjUKLSAg
ICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCAxOCUsIDI1JSk7Ci0g
ICAgfQotICAgIC5zY3JlZW4gewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIHNjcmVlbiBzb3VyY2UtYXRvcCks
IG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuc2NyZWVuLWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIFNjcmVlbjoKLQotICAgICAgICAgICAgQ28gPSBD
YiArIENzIC0gQ2IgKiBDcwotCi0gICAgICAgICAgICByID0gMS4wICsgMC4wIC0gMS4wICogMC4w
ID0gMS4wCi0gICAgICAgICAgICBnID0gMC4zICsgMC42IC0gMC4zICogMC42ID0gMC43MgotICAg
ICAgICAgICAgYiA9IDAuNSArIDAuNSAtIDAuNSAqIDAuNSA9IDAuNzUKLQotICAgICAgICAgICAg
VGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2UgdGhl
IDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAw
JSwgNzIlLCA3NSUpOwotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MjU1LCAxODMsIDE5Mik7Ci0gICAgfQotICAgIC5kYXJrZW4gewotICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRh
cmtlbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAg
ICAuZGFya2VuLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIERhcmtlbjoKLQot
ICAgICAgICAgICAgQ28gPSBtaW4oQ2IsIENzKQotCi0gICAgICAgICAgICByID0gbWluKDEuMCwg
MC4wKSA9IDAuMAotICAgICAgICAgICAgZyA9IG1pbigwLjMsIDAuNikgPSAwLjMKLSAgICAgICAg
ICAgIGIgPSBtaW4oMC41LCAwLjUpID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYigwJSwgMzAlLCA1MCUpOwotICAgIH0KLSAgICAubGlnaHRlbiB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4
LWNvbG9yLmZzJykgbGlnaHRlbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAx
LjApOwotICAgIH0KLSAgICAubGlnaHRlbi1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAg
ICAgICBMaWdodGVuOgotCi0gICAgICAgICAgICBDbyA9IG1heChDYiwgQ3MpCi0KLSAgICAgICAg
ICAgIHIgPSBtYXgoMS4wLCAwLjApID0gMS4wCi0gICAgICAgICAgICBnID0gbWF4KDAuMywgMC42
KSA9IDAuNgotICAgICAgICAgICAgYiA9IG1heCgwLjUsIDAuNSkgPSAwLjUKLSAgICAgICAgKi8K
LSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0g
ICAgLmRpZmZlcmVuY2UgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRpZmZlcmVuY2Ugc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmRpZmZlcmVuY2UtZXhw
ZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgRGlmZmVyZW5jZToKLQotICAgICAgICAg
ICAgQ28gPSBhYnMoQ2IgLSBDcykKLQotICAgICAgICAgICAgciA9IGFicygxLjAgLSAwLjApID0g
MS4wCi0gICAgICAgICAgICBnID0gYWJzKDAuMyAtIDAuNikgPSAwLjMKLSAgICAgICAgICAgIGIg
PSBhYnMoMC41IC0gMC41KSA9IDAuMAotCi0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhlIGNv
bG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoK
LSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDAlLCAzMCUsIDAlKTsKLSAgICAg
ICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgNzcsIDEpOwotICAgIH0K
LSAgICAuZXhjbHVzaW9uIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1p
eCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBleGNsdXNpb24gc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmV4Y2x1c2lvbi1leHBl
Y3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBFeGNsdXNpb246Ci0KLSAgICAgICAgICAg
IENvID0gQ2IgKyBDcyAtIDIgKiBDYiAqIENzCi0KLSAgICAgICAgICAgIHIgPSAxLjAgKyAwLjAg
LSAyLjAgKiAxLjAgKiAwLjAgPSAxLjAKLSAgICAgICAgICAgIGcgPSAwLjMgKyAwLjYgLSAyLjAg
KiAwLjMgKiAwLjYgPSAwLjU0Ci0gICAgICAgICAgICBiID0gMC41ICsgMC41IC0gMi4wICogMC41
ICogMC41ID0gMC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3Vs
YXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDU0JSwgNTAlKTsgCi0gICAgICAgICovCi0g
ICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAg
Lm92ZXJsYXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG92ZXJsYXkgc291cmNlLWF0b3ApLCBtaXhfY29s
b3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhwZWN0ZWQgewotICAg
ICAgICAvKgotICAgICAgICAgICAgT3ZlcmxheToKLQotICAgICAgICAgICAgQ28gPSBIYXJkTGln
aHQoQ3MsIENiKQotICAgICAgICAgICAgICAgPSBpZihDYiA8PSAwLjUpCi0gICAgICAgICAgICAg
ICAgICAgICBNdWx0aXBseShDcywgMiAqIENiKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAg
ICAgICAgICAgICAgICAgICBTY3JlZW4oQ3MsIDIgKiBDYiAtIDEpCi0gICAgICAgICAgICAgICA9
IGlmKENiIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIENzICogKDIgKiBDYikKLSAgICAg
ICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgQ3MgKyAoMiAqIENiIC0gMSkg
LSAoQ3MgKiAoMiAqIENiIC0gMSkpCi0KLSAgICAgICAgICAgIHIgPSAwICsgKDIgKiAxIC0gMSkg
LSAoMCAqICgyICogMSAtIDEpKSA9IDEKLSAgICAgICAgICAgIGcgPSAwLjYgKiAoMiAqIDAuMykg
PSAwLjM2Ci0gICAgICAgICAgICBiID0gMC41ICogKDIgKiAwLjUpID0gMC41Ci0KLSAgICAgICAg
ICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNl
IHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDEwMCUsIDM2JSwgNTAlKTsKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDI1NSwgOTEsIDEyOCk7Ci0gICAgfQotICAgIC5jb2xvci1kb2RnZSB7Ci0gICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9y
LmZzJykgY29sb3ItZG9kZ2Ugc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4w
KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRvZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAg
ICAgICAgIENvbG9yRG9kZ2U6Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPCAxKQotICAgICAg
ICAgICAgICAgICAgICAgbWluKDEsIENiIC8gKDEgLSBDcykpCi0gICAgICAgICAgICAgICAgIGVs
c2UKLSAgICAgICAgICAgICAgICAgICAgIDEKLQotICAgICAgICAgICAgciA9IG1pbigxLCAxIC8g
KDEgLSAwKSkgPSAxCi0gICAgICAgICAgICBnID0gbWluKDEsIDAuMyAvICgxIC0gMC42KSkgPSAw
Ljc1Ci0gICAgICAgICAgICBiID0gbWluKDEsIDAuNSAvICgxIC0gMC41KSkgPSAxCi0KLSAgICAg
ICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8g
dXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDEwMCUsIDc1JSwgMTAwJSk7Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29s
b3I6IHJnYigyNTUsIDE5MCwgMjU1KTsKLSAgICB9Ci0gICAgLmNvbG9yLWJ1cm4gewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcycpIGNvbG9yLWJ1cm4gc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC44IDAuOCAwLjgg
MS4wKTsKLSAgICB9Ci0gICAgLmNvbG9yLWJ1cm4tZXhwZWN0ZWQgewotICAgICAgICAvKgotICAg
ICAgICAgICAgQ29sb3JCdXJuOgotCi0gICAgICAgICAgICBDbyA9IGlmKENzID4gMCkKLSAgICAg
ICAgICAgICAgICAgICAgIDEgLSBtaW4oMSwgKDEgLSBDYikgLyBDcykKLSAgICAgICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgMAotCi0gICAgICAgICAgICAgciA9IDEgLSBt
aW4oMSwgKDEgLSAxKSAvIDAuOCkgPSAxCi0gICAgICAgICAgICAgZyA9IDEgLSBtaW4oMSwgKDEg
LSAwLjMpIC8gMC44KSA9IDAuMTI1Ci0gICAgICAgICAgICAgYiA9IDEgLSBtaW4oMSwgKDEgLSAw
LjUpIC8gMC44KSA9IDAuMzc1Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3Ig
Y2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAg
ICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDEyLjUlLCAzNy41JSk7Ci0gICAg
ICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAg
fQotICAgIC5oYXJkLWxpZ2h0IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25l
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBoYXJkLWxpZ2h0IHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5oYXJkLWxpZ2h0
LWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIEhhcmRMaWdodDoKLQotICAgICAg
ICAgICAgQ28gPSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBNdWx0aXBseShD
YiwgMiAqIENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBT
Y3JlZW4oQ2IsIDIgKiBDcyAtMSkKLSAgICAgICAgICAgICAgID0gaWYoQ3MgPD0gMC41KQotICAg
ICAgICAgICAgICAgICAgICAgQ2IgKiAoMiAqIENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0g
ICAgICAgICAgICAgICAgICAgICBDYiArICgyICogQ3MgLSAxKSAtIChDYiAqICgyICogQ3MgLSAx
KSkKLQotICAgICAgICAgICAgciA9IDEgKiAoMiAqIDApID0gMAotICAgICAgICAgICAgZyA9IDAu
MyArICgyICogMC42IC0gMSkgLSAoMC4zICogKDIgKiAwLjYgLSAxKSkgPSAwLjQ0Ci0gICAgICAg
ICAgICBiID0gMC41ICogKDIgKiAwLjUpID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYigwJSwgNDQlLCA1MCUpOwotICAgIH0KLSAgICAuc29mdC1saWdodCB7
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgc29mdC1saWdodCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAg
MC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuc29mdC1saWdodC1leHBlY3RlZCB7Ci0gICAgICAg
IC8qCi0gICAgICAgICAgICBTb2Z0TGlnaHQ6Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPD0g
MC41KQotICAgICAgICAgICAgICAgICAgICAgQ2IgLSAoMSAtIDIgKiBDcykgKiBDYiAqICgxIC0g
Q2IpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIENiICsgKDIg
KiBDcyAtIDEpICogKEQoQ2IpIC0gQ2IpCi0KLSAgICAgICAgICAgIHdpdGgKLQotICAgICAgICAg
ICAgRChDYikgPSBpZihDYiA8PSAwLjI1KQotICAgICAgICAgICAgICAgICAgICAgICAgKDE2ICog
Q2IgLSAxMikgKiBDYiArIDQpICogQ2IKLSAgICAgICAgICAgICAgICAgICAgZWxzZQotICAgICAg
ICAgICAgICAgICAgICAgICAgc3FydChDYikKLQotICAgICAgICAgICAgRC5yID0gc3FydCgxKSA9
IDEKLSAgICAgICAgICAgIEQuZyA9IHNxcnQoMC4zKSA9IDAuNTQ3NzIyNTU3NTA1MTY2Ci0gICAg
ICAgICAgICBELmIgPSBzcXJ0KDAuNSkgPSAwLjcwNzEwNjc4MTE4NjU0OAotICAgICAgICAgICAg
ciA9IDEgLSAoMSAtIDIgKiAwKSAqIDEgKiAoMSAtIDEpID0gMQotICAgICAgICAgICAgZyA9IDAu
MyArICgyICogMC42IC0gMSkgKiAoRC5nIC0gMC4zKSA9IDAuMzQ5NTQ0NTExNTAxMDMzCi0gICAg
ICAgICAgICBiID0gMC41IC0gKDEgLSAyICogMC41KSAqIDAuNSAqICgxIC0gMC41KSA9IDAuNQot
Ci0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhlIGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVz
IHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoKLSAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigxMDAlLCAzNC45NTQ0NTElLCA1MCUpOwotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA4OSwgMTI4KTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIG5vcm1hbCI+PC9kaXY+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9Im5vcm1hbC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbXVs
dGlwbHkiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJtdWx0aXBseS1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gc2NyZWVuIj48L2Rpdj4KLSAgICAgICAgPGRpdiBj
bGFzcz0ic2NyZWVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBkYXJr
ZW4iPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJkYXJrZW4tZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9ImRlc3RpbmF0aW9uIGxpZ2h0ZW4iPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNz
PSJsaWdodGVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJw
YWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBkaWZmZXJl
bmNlIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZXhjbHVzaW9uIj48L2Rpdj4KLSAgICAgICAgPGRp
diBjbGFzcz0iZXhjbHVzaW9uLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2
IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlv
biBvdmVybGF5Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+
PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gY29sb3ItZG9kZ2UiPjwvZGl2PgotICAgICAg
ICA8ZGl2IGNsYXNzPSJjb2xvci1kb2RnZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0g
ICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVz
dGluYXRpb24gY29sb3ItYnVybiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWJ1
cm4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Yt
c3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIGhhcmQtbGlnaHQiPjwv
ZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJoYXJkLWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAg
ICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBzb2Z0LWxpZ2h0Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPCEtLQotICAg
ICAgICBJZiB5b3UgYWRkIG1vcmUgYmxlbmQgbW9kZXMgdG8gdGhpcyBwYWdlLCBiZSBjYXJlZnVs
IG5vdCB0byBleGNlZWQgNjAwcHggaW4gCi0gICAgICAgIGhlaWdodCwgc2luY2UgRHVtcFJlbmRl
clRyZWUgY29tcGFyZXMgODAweDYwMCBzbmFwc2hvdHMgb2YgdGhpcyBwYWdlLgotICAgIC0tPgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLWV4cGVjdGVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2hhbmdlLWJsZW5kLW1v
ZGUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmNlZTUxNS4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY2hhbmdlLWJsZW5kLW1vZGUtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDIw
ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVz
dHMgdGhhdCBhIGN1c3RvbSBmaWx0ZXIgZGV0ZWN0cyBhIGJsZW5kIG1vZGUgY2hhbmdlIGFuZCBw
YWludHMgd2l0aCB0aGUgbmV3IGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8IS0tIAotICAgICAg
ICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRlc3QuCi0gICAgICAgIElmIHRo
ZSB0ZXN0IHBhc3NlcywgeW91IHdpbGwgc2VlIGEgZ3JlZW4gc3F1YXJlLgotICAgIC0tPgotICAg
IDxzdHlsZT4KLSAgICBkaXYgewotICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgIGhlaWdo
dDogMTAwcHg7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAg
IH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdj48L2Rpdj4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jaGFuZ2UtYmxlbmQtbW9kZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFiM2E2NWUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLmh0
bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1NCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1s
PgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgYSBjdXN0b20gZmlsdGVyIGRldGVjdHMg
YSBibGVuZCBtb2RlIGNoYW5nZSBhbmQgcGFpbnRzIHdpdGggdGhlIG5ldyBibGVuZCBtb2RlLjwv
dGl0bGU+Ci0gICAgPCEtLQotICAgICAgICBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSB3aWxsIHNl
ZSBhIGdyZWVuIHNxdWFyZS4KLSAgICAgICAgVGhpcyB0ZXN0IGNhbiBydW4gaW4gRFJUIG9yIG1h
bnVhbGx5LgotICAgIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNl
KCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEi
KTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAg
ICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAgICAgICAg
ICB2YXIgZmlsdGVyVGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbHRlclRhcmdl
dCIpOwotCi0gICAgICAgICAgICAvLyBJbml0aWFsbHksIGFwcGx5IGEgY3VzdG9tIGZpbHRlciBv
biB0aGUgZGl2IHVzaW5nIGJsZW5kIG1vZGUgbXVsdGlwbHkuCi0gICAgICAgICAgICAvLyBUaGUg
cmVzdWx0IHNob3VsZCBiZSBhIGJsYWNrIHNxdWFyZSAocmVkIGJhY2tncm91bmQgKiBncmVlbiBt
aXggY29sb3IgPSBibGFjaykuCi0gICAgICAgICAgICBmaWx0ZXJUYXJnZXQuY2xhc3NOYW1lID0g
Im11bHRpcGx5IjsKLQotICAgICAgICAgICAgLy8gVHJpZ2dlciBhIHN0eWxlIHJlc29sdXRpb24g
d2l0aCBibGVuZCBtb2RlIG11bHRpcGx5LgotICAgICAgICAgICAgLy8gVGhpcyBpcyByZXF1aXJl
ZCB0byByZXByb2R1Y2UgdGhpcyB0ZXN0J3MgYXNzb2NpYXRlZCBidWcuCi0gICAgICAgICAgICBm
aWx0ZXJUYXJnZXQuY2xpZW50V2lkdGg7Ci0KLSAgICAgICAgICAgIC8vIENoYW5nZSB0aGUgYmxl
bmQgbW9kZSB0byBub3JtYWwsIGFuZCBrZWVwIGFsbCBvdGhlciBmaWx0ZXIgcGFyYW1ldGVycyBp
ZGVudGljYWwuCi0gICAgICAgICAgICAvLyBUaGUgcmVzdWx0IHNob3VsZCBiZSBhIGdyZWVuIHNx
dWFyZSBpZiB0aGUgYmxlbmQgbW9kZSBjaGFuZ2VkIGNvcnJlY3RseS4gICAgICAgICAgICAKLSAg
ICAgICAgICAgIGZpbHRlclRhcmdldC5jbGFzc05hbWUgPSAibm9ybWFsIjsKLQotICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4K
LSAgICAjZmlsdGVyVGFyZ2V0IHsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICBoZWln
aHQ6IDEwMHB4OwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgfQotICAgIC5t
dWx0aXBseSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbXVsdGlwbHkgc291cmNlLWF0b3ApLCBtaXhfY29s
b3IgMCAxIDAgMSk7Ci0gICAgfQotICAgIC5ub3JtYWwgewotICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1h
bCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwIDEgMCAxKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LSAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9yZXBhaW50L3Jlc291cmNlcy9yZXBhaW50
LmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8
ZGl2IGlkPSJmaWx0ZXJUYXJnZXQiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNz
cy1jb2xvci1tYXRyaXgtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LWV4cGVjdGVkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY2NmI0ZTEuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xv
ci1tYXRyaXgtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLTwh
RE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPG1ldGEgY2hhcnNl
dD0iVVRGLTgiPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGNzc19jb2xvck1hdHJpeCBtdWx0aXBs
aWNhdGlvbiByZXN1bHQgaXMgY2xhbXBlZCB0byAxPC90aXRsZT4KLSAgICA8c3R5bGU+Ci0gICAg
ICAgICNsb25lbHlkaXYgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOwotICAg
ICAgICAgICAgYmFja2dyb3VuZDogcmdiKDUwJSwgNTAlLCA1MCUpOwotICAgICAgICB9Ci0gICAg
PC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImxvbmVseWRpdiI+PC9kaXY+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1uZWdhdGl2ZS1leHBl
Y3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWNsYW1wLWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNzIzMmQ4Yy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1u
ZWdhdGl2ZS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTggKzAsMCBAQAotPCFE
T0NUWVBFIEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8bWV0YSBjaGFyc2V0
PSJVVEYtOCI+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3NzX2NvbG9yTWF0cml4IG11bHRpcGxp
Y2F0aW9uIHJlc3VsdCBpcyBjbGFtcGVkIHRvIDA8L3RpdGxlPgotICAgIDxzdHlsZT4KLSAgICAg
ICAgI2xvbmVseWRpdiB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBo
ZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0gICAg
ICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMCwgMCwgMCk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxl
PgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0ibG9uZWx5ZGl2Ij48L2Rpdj4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9y
LW1hdHJpeC1uZWdhdGl2ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiOWY0
NzM1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw1NCArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9ImVuIj4KLTxo
ZWFkPgotICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBj
c3NfY29sb3JNYXRyaXggbXVsdGlwbGljYXRpb24gcmVzdWx0IGlzIGNsYW1wZWQgdG8gMDwvdGl0
bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAg
ICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKLSAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRo
ZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5v
dGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAg
ICAgI2xvbmVseWRpdiB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBo
ZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0gICAg
ICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjAlLCAyMCUsIDIwJSk7Ci0gICAgICAgICAgICAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2N1c3RvbS1maWx0
ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1uZWdhdGl2ZS5mcycpIG11bHRpcGx5IHNvdXJjZS1h
dG9wKSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJy
dW5UZXN0KCkiPgotICAgIDwhLS0KLSAgICAgICAgTGV0OgotICAgICAgICBjbGFtcCh2YWx1ZSkg
PSBBIGZ1bmN0aW9uIHRoYXQgY2xhbXBzIHZhbHVlcyBiZXR3ZWVuIDAuMCBhbmQgMS4wCi0gICAg
ICAgIGVsZW1lbnRDb2xvciA9IHZlYzQoMC4yLCAwLjIsIDAuMiwgMS4wKQotICAgICAgICBjc3Nf
Q29sb3JNYXRyaXggPSBNYXRyaXggd2l0aCBkaWFnb25hbCAoLTEwLjAsIC0xMC4wLCAtMTAuMCwg
MS4wKQotICAgICAgICBjc3NfTWl4Q29sb3IgPSB2ZWM0KC0wLjUsIC0wLjUsIC0wLjUsIDEuMCkK
LQotICAgICAgICBDb3JyZWN0IGNsYW1wZWQgcmVzdWx0OgotICAgICAgICByZXN1bHQgPSBjbGFt
cChjc3NfQ29sb3JNYXRyaXggKiBlbGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAg
IHJlc3VsdC5yID0gY2xhbXAoLTEwLjAgKiAwLjIpICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0g
Y2xhbXAoLTIuMCkgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIgPSAwLjAgKiAtMC41Ci0gICAgICAg
IHJlc3VsdC5yID0gMC4wCi0gICAgICAgIHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9
PiBibGFjawotCi0gICAgICAgIEluY29ycmVjdCB1bmNsYW1wZWQgcmVzdWx0OgotICAgICAgICBy
ZXN1bHQgPSAoY3NzX0NvbG9yTWF0cml4ICogZWxlbWVudENvbG9yKSAqIGNzc19NaXhDb2xvcgot
ICAgICAgICByZXN1bHQuciA9ICgtMTAuMCAqIDAuMikgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIg
PSAtMi4wICogLTAuNQotICAgICAgICByZXN1bHQuciA9IDEuMAotICAgICAgICByZXN1bHQuciA9
IHJlc3VsdC5nID0gcmVzdWx0LmIgPT4gd2hpdGUKLSAgICAtLT4KLSAgICA8ZGl2IGlkPSJsb25l
bHlkaXYiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgu
aHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFt
cC1jc3MtY29sb3ItbWF0cml4Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZh
MTYwYTguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDU0ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0g
ICAgPG1ldGEgY2hhcnNldD0iVVRGLTgiPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGNzc19jb2xv
ck1hdHJpeCBtdWx0aXBsaWNhdGlvbiByZXN1bHQgaXMgY2xhbXBlZCB0byAxPC90aXRsZT4KLSAg
ICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmls
dGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5j
dGlvbiBydW5UZXN0KCkgewotICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3Rz
IGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9u
ZSgpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAjbG9u
ZWx5ZGl2IHsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDog
MTAwcHg7Ci0gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICAgICAgICAg
IGJhY2tncm91bmQ6IHJnYigyMCUsIDIwJSwgMjAlKTsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1jbGFt
cC1jc3MtY29sb3ItbWF0cml4LmZzJykgbXVsdGlwbHkgc291cmNlLWF0b3ApKTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAg
PCEtLQotICAgICAgICBMZXQ6Ci0gICAgICAgIGNsYW1wKHZhbHVlKSA9IEEgZnVuY3Rpb24gdGhh
dCBjbGFtcHMgdmFsdWVzIGJldHdlZW4gMC4wIGFuZCAxLjAKLSAgICAgICAgZWxlbWVudENvbG9y
ID0gdmVjNCgwLjIsIDAuMiwgMC4yLCAxLjApCi0gICAgICAgIGNzc19Db2xvck1hdHJpeCA9IE1h
dHJpeCB3aXRoIGRpYWdvbmFsICgxMC4wLCAxMC4wLCAxMC4wLCAxMC4wKQotICAgICAgICBjc3Nf
TWl4Q29sb3IgPSB2ZWM0KDAuNSwgMC41LCAwLjUsIDEuMCkKLQotICAgICAgICBDb3JyZWN0IGNs
YW1wZWQgcmVzdWx0OgotICAgICAgICByZXN1bHQgPSBjbGFtcChjc3NfQ29sb3JNYXRyaXggKiBl
bGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAgIHJlc3VsdC5yID0gY2xhbXAoMTAu
MCAqIDAuMikgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIgPSBjbGFtcCgyLjApICogMC41Ci0gICAg
ICAgIHJlc3VsdC5yID0gMS4wICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0gMC41Ci0gICAgICAg
IHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9PiBncmF5Ci0KLSAgICAgICAgSW5jb3Jy
ZWN0IHVuY2xhbXBlZCByZXN1bHQ6Ci0gICAgICAgIHJlc3VsdCA9IChjc3NfQ29sb3JNYXRyaXgg
KiBlbGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAgIHJlc3VsdC5yID0gKDEwLjAg
KiAwLjIpICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0gMi4wICogMC41Ci0gICAgICAgIHJlc3Vs
dC5yID0gMS4wCi0gICAgICAgIHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9PiB3aGl0
ZQotICAgIC0tPgotICAgIDxkaXYgaWQ9ImxvbmVseWRpdiI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItY2xhbXAtY3NzLW1peC1jb2xvci1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItZXhwZWN0
ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWEwYjY1ZC4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAt
Y3NzLW1peC1jb2xvci1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAsMCBA
QAotPCFET0NUWVBFIEhUTUw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0
IGNzc19NaXhDb2xvciB2YWx1ZXMgZ3JlYXRlciB0aGFuIDEuMCBhcmUgY2xhbXBlZCB0byAxLjAg
YmVmb3JlIGJsZW5kaW5nIGFuZCBjb21wb3NpdGluZy48L3RpdGxlPgotICAgIDwhLS0KLSAgICAg
ICAgVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZpbGUgZm9yIHRoZSB0ZXN0LgotICAgICAgICBUaGUg
dGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBncmVlbiBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMg
YSBkaWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0IGZhaWxzLgotICAgIC0tPgotICAgIDxzdHlsZSB0
eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHJnYigxMCUsIDUwJSwgMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLW5lZ2F0aXZlLWV4cGVjdGVkLmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAt
Y3NzLW1peC1jb2xvci1uZWdhdGl2ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAxMzkxMTU3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLW5lZ2F0aXZlLWV4cGVj
dGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyMCArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4K
LTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgbmVnYXRpdmUgY3NzX01peENv
bG9yIHZhbHVlcyBhcmUgY2xhbXBlZCB0byAwLjAgYmVmb3JlIGJsZW5kaW5nIGFuZCBjb21wb3Np
dGluZy48L3RpdGxlPgotICAgIDwhLS0KLSAgICAgICAgVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZp
bGUgZm9yIHRoZSB0ZXN0LgotICAgICAgICBUaGUgdGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBi
bGFjayBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMgYSBkaWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0
IGZhaWxzLgotICAgIC0tPgotICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNm
aWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwJSwgMCUs
IDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBp
ZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLW1p
eC1jb2xvci1uZWdhdGl2ZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItbmVnYXRpdmUuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNDA2ZTQzNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLW1peC1jb2xvci1uZWdh
dGl2ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAotPCFET0NUWVBFIEhUTUw+
Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IG5lZ2F0aXZlIGNzc19NaXhD
b2xvciB2YWx1ZXMgYXJlIGNsYW1wZWQgdG8gMC4wIGJlZm9yZSBibGVuZGluZyBhbmQgY29tcG9z
aXRpbmcuPC90aXRsZT4KLSAgICA8IS0tIFRoZSB0ZXN0IHBhc3NlcyBpZiB0aGVyZSBpcyBhIGJs
YWNrIHNxdWFyZS4gSWYgdGhlIHNxdWFyZSBpcyBhIGRpZmZlcmVudCBjb2xvciwgdGhlIHRlc3Qg
ZmFpbHMuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikg
ewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQot
Ci0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7Ci0gICAgICAgICAgICAvLyBXZSBuZWVkIHRv
IHJ1biB0aGUgdGVzdCBhZnRlciB0aGUgc2hhZGVycyBhcmUgZG93bmxvYWRlZC4KLSAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGUg
dHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjZmlsdGVyLXRhcmdldCB7Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMCUsIDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAx
MDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRp
ZmZlcmVuY2UgY29weSksIG1peF9jb2xvciAxLjAgLTEuMCAtMi4wIDEuMCk7Ci0gICAgICAgIH0K
LSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgIDwh
LS0KLSAgICAgICAgSW5pdGlhbCB2YWx1ZXM6Ci0gICAgICAgICAgICBDYiA9ICgxLjAsIDAuMCwg
MC4wKQotICAgICAgICAgICAgQ3MgPSAoMS4wLCAtMS4wLCAtMi4wKQotCi0gICAgICAgIENvcnJl
Y3QgcmVzdWx0OgotCi0gICAgICAgICAgICBDbGFtcCBDczoKLSAgICAgICAgICAgICAgICBDcyA9
ICgwLjUsIDAuMCwgMC4wKQotCi0gICAgICAgICAgICBEaWZmZXJlbmNlIGJsZW5kIG1vZGU6Ci0g
ICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gYWJzKENiIC0gQ3MpCi0gICAgICAgICAgICAgICAg
QihDYiwgQ3MpID0gYWJzKCgxLjAsIDAuMCwgMC4wKSAtICgxLjAsIDAuMCwgMC4wKSkKLSAgICAg
ICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAwLjAsIDAuMCkgPT4gQmxhY2sKLQotICAgICAg
ICBJbmNvcnJlY3QgcmVzdWx0OgotCi0gICAgICAgICAgICBVc2UgdW5jbGFtcGVkIENzOgotICAg
ICAgICAgICAgICAgIENzID0gKDAuNSwgLTEuMCwgLTIuMCkKLQotICAgICAgICAgICAgRGlmZmVy
ZW5jZSBibGVuZCBtb2RlOgotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9IGFicyhDYiAtIENz
KQotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9IGFicygoMS4wLCAwLjAsIDAuMCkgLSAoMS4w
LCAtMS4wLCAtMi4wKSkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAxLjAsIDIu
MCkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAxLjAsIDEuMCkgPT4gQ3lhbgot
Ci0gICAgICAgIElmIHRoZSBjdXN0b20gZmlsdGVyIGZhaWxzIHRvIGFwcGx5LCB0aGUgcmVzdWx0
IHdpbGwgc2ltcGx5IGJlIHRoZSBiYWNrZHJvcCBjb2xvcjoKLSAgICAgICAgICAgICAgICBDYiA9
ICgxLjAsIDAuMCwgMC4wKSA9PiBSZWQKLSAgICAtLT4KLSAgICA8ZGl2IGlkPSJmaWx0ZXItdGFy
Z2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LW1peC1jb2xvci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMDYzZjIyLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci1jbGFtcC1jc3MtbWl4LWNvbG9yLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1OSArMCwwIEBA
Ci08IURPQ1RZUEUgSFRNTD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQg
Y3NzX01peENvbG9yIHZhbHVlcyBncmVhdGVyIHRoYW4gMS4wIGFyZSBjbGFtcGVkIHRvIDEuMCBi
ZWZvcmUgYmxlbmRpbmcgYW5kIGNvbXBvc2l0aW5nLjwvdGl0bGU+Ci0gICAgPCEtLSBUaGUgdGVz
dCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBncmVlbiBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMgYSBk
aWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0IGZhaWxzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkgewot
ICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3QgYWZ0ZXIgdGhlIHNoYWRlcnMg
YXJlIGRvd25sb2FkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0g
ICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2ZpbHRl
ci10YXJnZXQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwJSwgNTAlLCAx
MDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIG11bHRpcGx5IGNvcHkpLCBtaXhfY29sb3IgMTAuMCAx
LjAgMC4wIDEuMCk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25s
b2FkPSJydW5UZXN0KCkiPgotICAgIDwhLS0KLSAgICAgICAgSW5pdGlhbCB2YWx1ZXM6Ci0gICAg
ICAgICAgICBDYiA9ICgwLjEsIDAuNSwgMS4wKQotICAgICAgICAgICAgQ3MgPSAoMTAuMCwgMS4w
LCAwLjApCi0KLSAgICAgICAgQ29ycmVjdCByZXN1bHQ6Ci0KLSAgICAgICAgICAgIENsYW1wIENz
OgotICAgICAgICAgICAgICAgIENzID0gKDEuMCwgMS4wLCAwLjApCi0KLSAgICAgICAgICAgIE11
bHRpcGx5IGJsZW5kIG1vZGU6Ci0gICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gQ2IgKiBDcwot
ICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMS4wKSAqICgxLjAsIDEuMCwg
MC4wKQotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMC4wKSA9PiBHcmVl
bgotCi0gICAgICAgIEluY29ycmVjdCByZXN1bHQ6Ci0KLSAgICAgICAgICAgIFVzZSB1bmNsYW1w
ZWQgQ3M6Ci0gICAgICAgICAgICAgICAgQ3MgPSAoMTAuMCwgMS4wLCAwLjApCi0KLSAgICAgICAg
ICAgIE11bHRpcGx5IGJsZW5kIG1vZGU6Ci0gICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gQ2Ig
KiBDcwotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMS4wKSAqICgxMC4w
LCAxLjAsIDAuMCkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMS4wLCAwLjUsIDAuMCkg
PT4gT3JhbmdlCi0KLSAgICAgICAgSWYgdGhlIGN1c3RvbSBmaWx0ZXIgZmFpbHMgdG8gYXBwbHks
IHRoZSByZXN1bHQgd2lsbCBzaW1wbHkgYmUgdGhlIGJhY2tkcm9wIGNvbG9yOgotICAgICAgICAg
ICAgICAgIENiID0gKDAuMSwgMC41LCAxLjApID0+IEJsdWUKLSAgICAtLT4KLSAgICA8ZGl2IGlk
PSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29sb3ItZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA4ZTk4ZWE0Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1leHBlY3RlZC5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8
aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3RzIGNvbG9yIHZhbHVlcyBpbiBjdXN0b20gZmlsdGVy
czwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNmaWx0ZXJ0ZXN0Ym94IHsK
LSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgICAgIHdpZHRoOiAx
MDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkg
b25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rp
dj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnBuZyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1tYXRyaXgt
ZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1M2NkOGY1YzgxNzBj
NmQ3ZGE3ZjI3ZTQwYTQyNTIyNTk2MmExZDliLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpsaXRl
cmFsIDExMTk5CnpjbWVITllmdXdjNnlBaSQtfiRaV0RVPjNfcUFpTHdMMTc/OGw0JFVPVEpUWHZa
QmZ3cHM1Jmh2ZmcoaGJVfjgkdgp6aCs0Nn1yRC1iSUdMbndnM1FEcTM+KT5OKnF9YkFfa3dnVmFx
JEZUTTB+QG1HcF9hWHdfRnJmRyhWNnxsPGM0JFoKeklwNnYySWR7TCE/ajslWGdHV1YtIVowajJl
TD5uWDM9ODAzNzt7eG5BZ21ueWFIa2FoT3YjX1NEcXImTU0jKGw9CnohRnlPZFUmNHp8TlN1K2xl
cjk2UTQyZmk4VnRnVm1kQno2R0NjYjNEYGdKcSF6Zl8ldFZSMXstKGBMVzVvelo9Tgp6KGJpNDcr
TzlwfEV9UG5NTSlTcSNNYHpXdEo5UUgyKVI1VX1xMzIpVW5RX0gpTl48Wn0lK3ZqdyZocHpFPnJS
LUwKenBBbWlVQWhueDI0NkREfFV5R0JaVFM8bTtMQEpFSVdDZ0p+QWA2cTVuUHIpPGJ+ZCU1IWIr
OF9GPkdQYlUqQTdsCnomUlQ1MThwNitxYEJ+PHVgZHsrKnZ6ezR2e259fldyXkFsSEZ5SUhILXpS
MytjJUVxYnl6YVN2ZXJNSjF2RnU0fAp6dE1BXmcpY2Z3YDtgZVFgeS19JTAkd3AwNHZ7MTFsd3lD
KWhfbUxqOEZAPFE7N2A/cXMoWX44PD9+JFk4LT1ram4KekpCUT0qNDdzOT08cDskaEEpOUI+OT92
I2xkfVl9PFlKcmArTjUjbEhgYzMzUURvZXtDIzU8NXVOaUM9aFRVY1pFCnp3WT00XzxRWHRTVXYh
ND9NN1BhcTdLJTZ7Q1AjST1kVFFDWTtsMD8mSUpoUTVDUX1PPlgjXnZuSnopakVsMWtuJQp6Rnll
amhCNVM1I3BqfTxMYV49ZGhsUFNjVlc/YmQldFdyaTEqRVB4O3AzNUotbFRIP3lvODNgQWUmRXQ7
ajElVmMKenZpfmotNmxDPTF7XjBBb0Y2JH5ObSFqMU1Ze35fMGl2UnpGYkhXMU1aPW1vdUc2S0Zi
PjM+SmpQb0l7ZiRfaDdpCno0SGY9YjsqfSVEPzkyMDw5WTZlO1VIPmhsdnJlandwKHdLQ01We3pw
X3BKO0hEYSNkcj9qT05lZWkzQFN7a0BPRwp6MDt1MWBtZCo7aitpZ3x+VTJQaVc/Nz0jciF6JGte
RDBGZGFxeUtNZDtVQU52I31XT3M9PCQpd0EqdEBXJVFHaHcKeithRnZsRDxuK2tpfl9tVVNAQWZU
Q144Q3RnS0Q/SFpJWiF5diU5VE4jJT03bXFLPSR6bVJxbVJOKmpnX24xTTYrCnpaPnxXTE9yYX1Q
MDlnaG5FVGs0aG1JUSF6JVF0emtzSTw8fTtoYXYjNSsqOGJPKF5nQWstb2w8dEY5NyQkdHMqRQp6
RWhzM2tPNil7fm5BPUN1NWV+ez07SipreVd9bVkjbVZzaCEyQDI9YmUwQGBtKm1zKT9YOXBMTE1D
Xm1KaSM8MHUKekVIMzNwQDl4Kmc2VHQ8bzRxWD97UU1qTzNePEJta3BEJXdCTWZtPCk3SjAod0Nl
MnctQFFIcF5hNnVKcGFXNCMpCnpQTlhzdkw0Uj1PY1AjVSgwYCFOQlkmR1ZXPDR9TDdpOTYpaUE5
UWVfaCoyWWA0TFE7JURFWHs0NFN4Tj4yRkl7dgp6V2hgfk51fkh8JSpKLTxYM2MxZVVPOFoqUEtL
bT16bEZVMH5SIU4xeC1GPzl2TUtvJVJDR1B1JFdkZXMpVz4pJlYKellOT3t0UyMoSGhxMDZabD59
P1dQeHQmSH5iZ3tqck83VnV2cXtZZU44bCg1PUVpTT5UQ314ZS0tNGF1S19+Z0xQCnowclNpOTBJ
SDQqclZxOzJ6WjhXcHZpenIzQUk/eihxUk8tRDQrQVhtVGUtdCs5NkZLIz56Iz1UcGZYJG95dnZ1
JAp6TDtZZUlgK20lSlB4cG1mZDMlKXVBQUVZTj80OyptSVR6MDU/RyM2M3ZBcykrM3RYbCtaRFhG
Ykt+dj5eUW1YfWMKencwaCNuOWhwUCN2OHlgO2dqRkxwPmkrbWA4KDZqPCRPS0VHT0FGd0BTeCN9
ODRyTUVmdG8qVW1scndQd2tCMDEkCnpnPF5eWklkMj1WQlh2ejVQPylqb2hhZU4yc1FpU2dwNVok
Y1c1JH1qazVJYmNENDw9QEh6azxMckYwNztWOGd8egp6Q1RjSHNlS3MpOGAoJHxwOyNVaS08Zm00
a1VNJDR7NlZKfnozMjZLMzVwXld0Rn4xcTZjZWx4dE48NCUtZFBtUlkKenpTZzlZLWt0fG5rTGdS
aXkwR2pXeStxZUJ7cWBQYyh+bjdgbDd2Qk9jRXpgdjw8MXxJdzdBfEBLMnx1YFE9T1p3CnpibDdV
RF5kd1F1VTBaQkJeX092TlpFY3F9bXc0RWNEYig1U2ZsMWV5M3cxKiNtK1Y4dCFmZ2V1PTFVei1Q
Sio5Sgp6T19rJGZuOH4tQjU1JUZGWSNJIyt0aTJue0xJfXUpQ35tIVI1YW5YdTF5Rkxnek9XTlAk
JWxreHVKKGxwNiEjcHMKemktYVlQTE5edm1CO2RwXiZZTyZVJU9+Y2pPeXY9fjVOKUwpNUl8JlYh
KU02MWp5PUByJTtsQUhzTDB0SS1iNzBoCnpYTUFFWmlhe2hjVXxVPyV7SmY4WitJPC1+QTZkTiVz
cThzPFk3I3xYOV8rdlB0fGJWQzlTcDtgYENLSlJfRXBHaQp6Y1NJeWc7fHM3IURFezBwej5rNFBP
RnhRMUpXMnFZZEIkYV55QnVjb002WWdAYGwwJVhpdCY/bXdJNSNOMGkza3AKejNXVVRSdSElQHJs
I1Z6Smgjb244SVRYYmYhMzxvVyoqcGM2WiFzaURnRj1Ic0dsZkdSOXxuYHxET2Y0cFh4YTRpCnpW
Rmw0NlMhSk5fREkpc3YjJD9lcVNfWUg4PUVEO2R7cD4/TzVNcmhEUT9pUGQ0cD4zN2JpaWNNZFd0
QkFtSlZwPwp6MEpLK0hJLXNRazVTblN9ZlIreTZsPnt2dmFBQGZPVWZhPnEwV0JUQ1lmZjReMng4
T0gwV0JUQ1dUZDVvPU8tUE0KYmBtbCRoVSYkMiU8eVFEYkV8eHd3QmR1O3UmZHhzcHVeTSZoCgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWNvbG9yLW1hdHJpeC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnR4dAor
KysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLW1hdHJpeC5odG1sIGIvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLW1hdHJpeC5odG1s
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzg1YTEwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1tYXRyaXgu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCBjc3NfQ29sb3JNYXRyaXguPC90aXRsZT4KLSAg
ICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgdGhlIHJlZmVyZW5jZSBp
bWFnZSBhcyBncmF5c2NhbGUuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVm
ZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
IH0KLSAgICAgICAgCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAg
ICAgICAgICAvLyBSdW4gdGhlIHRlc3QgYWZ0ZXIgdGhlIGltYWdlIGxvYWRzLgotICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotPC9oZWFkPgotPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBj
dXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvZ3JheXNjYWxlLWNvbG9yLW1hdHJpeC5m
cycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5n
Ij4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDIwZTlkNWYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MiAr
MCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0
bGU+VGVzdHMgY29sb3IgdmFsdWVzIGluIGN1c3RvbSBmaWx0ZXJzPC90aXRsZT4KLSAgICAgICAg
PHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAg
IH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAg
ICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9h
ZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQot
ICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAg
ICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAg
ICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmVkOwotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSB1cmwo
Jy4uL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvcnMuZnMnKSwKLSAgICAgICAgICAgICAgICAgICAg
YzEgcmdiKDAsIDI1NSwgMCksCi0gICAgICAgICAgICAgICAgICAgIGMyIHJnYmEoMCwgMjU1LCAw
LCAxLjApLAotICAgICAgICAgICAgICAgICAgICBjMyBsaW1lLAotICAgICAgICAgICAgICAgICAg
ICBjNCBoc2woMTIwLCAxMDAlLCA1MCUpLAotICAgICAgICAgICAgICAgICAgICBjNSBoc2xhKDEy
MCwgMTAwJSwgNTAlLCAxLjApLAotICAgICAgICAgICAgICAgICAgICBjNiAjMDBGRjAwCi0gICAg
ICAgICAgICAgICAgKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hl
YWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAg
ICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVkIGxpbWUgYnkgZnJhZ21lbnQtY29s
b3JzLmZzLCBhIGZyYWdtZW50IHNoYWRlci4KLSAgICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYg
c3RheXMgcmVkLgotICAgICAgICAtLT4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+
PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJj
ZS1hbHBoYS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS1leHBlY3RlZC5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYjJmMmIwLi4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUt
ZnJhY3Rpb25hbC1zb3VyY2UtYWxwaGEtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDMzICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+
VGVzdHMgdGhlIHNvdXJjZS1hdG9wIGNvbXBvc2l0ZSBvcGVyYXRvciB3aGVuIHNvdXJjZSBhbHBo
YSBpcyBhIGZyYWN0aW9uYWwgdmFsdWUuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMg
aXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFz
c2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNh
bWUgY29sb3IuCi0gICAgICAgIFRoZSB0ZXN0IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3Ig
dmFsdWVzIGluIHRoaXMgcmVmZXJlbmNlIGZpbGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAg
IDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVhcmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0g
ICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6
ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAg
ICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZsb2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBDb21w
b3NpdGUgb3BlcmF0b3JzICovCi0gICAgLnNvdXJjZS1hdG9wLWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDE3OSwgMjE3LCAxOTIpOwotICAgIH0KLSAgICA8L3N0eWxl
PgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0ic291cmNlLWF0b3AtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8
ZGl2IGNsYXNzPSJzb3VyY2UtYXRvcC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLWZyYWN0aW9uYWwtc291cmNlLWFscGhhLmh0bWwgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLWZy
YWN0aW9uYWwtc291cmNlLWFscGhhLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDFlYjViYWYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsNzEgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGUgc291cmNlLWF0b3AgY29tcG9zaXRlIG9wZXJhdG9yIHdo
ZW4gc291cmNlIGFscGhhIGlzIGEgZnJhY3Rpb25hbCB2YWx1ZS48L3RpdGxlPgotICAgIDwhLS0g
VGhpcyB0ZXN0IHBhc3NlcyBpZiBlYWNoIGhvcml6b250YWwgcGFpciBvZiBzcXVhcmVzIGFyZSBl
eGFjdGx5IHRoZSBzYW1lIGNvbG9yLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRl
UHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5h
YmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRy
dWUpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC5wYWlyLW9m
LXNxdWFyZXMgewotICAgICAgICBjbGVhcjogYm90aDsKLSAgICB9Ci0gICAgLnBhaXItb2Ytc3F1
YXJlcyA+IGRpdiB7Ci0gICAgICAgIC8qIFNxdWFyZSBzaXplLiAqLwotICAgICAgICB3aWR0aDog
MjBweDsKLSAgICAgICAgaGVpZ2h0OiAyMHB4OwotICAgICAgICBtYXJnaW46IDJweDsKLSAgICAg
ICAgZmxvYXQ6IGxlZnQ7Ci0gICAgfQotICAgIC5kZXN0aW5hdGlvbiB7Ci0gICAgICAgIC8qIERl
c3RpbmF0aW9uIGNvbG9yICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwJSwg
NDAlLCA1MCUsIDAuNSk7Ci0gICAgfQotICAgIC8qIENvbXBvc2l0ZSBvcGVyYXRvcnMgKi8KLSAg
ICAvKgotICAgICAgICBUaGUgZXF1YXRpb25zIGJlbG93IHVzZSB0aGUgc3ltYm9scyBhbmQgZXF1
YXRpb25zIGRlZmluZWQgaW4gdGhlIENTUyBCbGVuZGluZyBhbmQgQ29tcG9zaXRpbmcgc3BlYywg
d2hlcmU6Ci0gICAgICAgICAgICBDbyA9IG91dHB1dCBjb2xvcgotICAgICAgICAgICAgQ3MgPSBz
b3VyY2UgY29sb3IgKGFrYSAibWl4IGNvbG9yIiwgImNzc19NaXhDb2xvciIpCi0gICAgICAgICAg
ICBDYiA9IGRlc3RpbmF0aW9uIGNvbG9yIChha2EgImJhY2tkcm9wIGNvbG9yIiwgIm9yaWdpbmFs
IERPTSBlbGVtZW50IGNvbG9yIikKLQotICAgICAgICAgICAgY28gPSBhcyB4IEZhIHggQ3MgKyBh
YiB4IEZiIHggQ2IKLSAgICAgICAgICAgIGFvID0gYXMgeCAxICsgYWIgeCAoMSAtIGFzKQotICAg
ICAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICAgICAgaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy9G
WFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwjZ2VuZXJhbGZvcm11bGEKLSAg
ICAqLwotICAgIC5zb3VyY2UtYXRvcCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
bm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjkgMC41IDAuNik7Ci0gICAgfQotICAgIC5zb3VyY2UtYXRv
cC1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBTb3VyY2VBdG9wOgotCi0gICAg
ICAgICAgICBGYSA9IGFiOyBGYiA9IDEgLSBhcwotICAgICAgICAgICAgY28gPSBhcyB4IENzIHgg
YWIgKyBhYiB4IENiIHggKDEgLSBhcykKLSAgICAgICAgICAgIGFvID0gYXMgeCBhYiArIGFiIHgg
KDEgLSBhcykKLSAgICAgICAgICAgIENvID0gY28gLyBhbwotCi0gICAgICAgICAgICBhID0gMC42
IHggMSArIDAuNSB4ICgxIC0gMC42KSA9IDAuNQotICAgICAgICAgICAgciA9ICgwLjYgeCAwIHgg
MC41ICsgMC41IHggMSB4ICgxIC0gMC42KSkgLyBhID0gMC40Ci0gICAgICAgICAgICBnID0gKDAu
NiB4IDAuOSB4IDAuNSArIDAuNSB4IDAuNCB4ICgxIC0gMC42KSkgLyBhID0gMC43Ci0gICAgICAg
ICAgICBiID0gKDAuNiB4IDAuNSB4IDAuNSArIDAuNSB4IDAuNSB4ICgxIC0gMC42KSkgLyBhID0g
MC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVx
dWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmdiYSg0MCUsIDcwJSwgNTAlLCAwLjUpOwotICAgICAgICAqLwotICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc5LCAyMTcsIDE5Mik7Ci0gICAgfQotICAgIDwvc3R5
bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgot
ICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2UtYXRvcCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9InNvdXJjZS1hdG9wLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVkLnBuZyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3Bl
cmF0b3JzLWV4cGVjdGVkLnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTVhMzc2
MTExMTgxYzZhNDc3YzQ0YzVkMjcwZGJlYTcxN2U4ZTQ4ZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAw
MQoKbGl0ZXJhbCAzMTgxCnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEweX55VXsrdllWMmE+aTAqWik9
aF5obEElQFdzJGxIYG9rPG19P29UbjU4cgp6cW9oPVd2QHtjPWx2SHlnM2xucExSQWJZbTZlQllP
XkF4aldeVz5rfjQ9dz59Vm9VT05jVllNc2YoIU84cFVsOSgKentucGRQRntFUDcrZEdiWncrJSND
NUJfUVJ6VGM/MCQtd05BYTx0UmNYPjNQUkFNK1kpe3tEfVohUXVKJDw/OyorCnpBNTU2STg1R251
RmZiJXhHRzZEaTh5NyNkS0tFeXs5Plc4LWVeTD9xX28tIz8pQjRLNUBiQmImNG59TlJGYnheaAp6
QkhRQFZqZi16dUdjZD48WmVuRSt1LTEqSmV0LUkyVlMpIVUhQEh2KDUjYjAxMkUjXmo3I2wtbE9A
aTtURmNqcEEKej1gYnxSSUthZnYhOHVUajgmLTQ5bz1KVnJ6KS09JUV5bSNSVz1xMWB6czJgIUE3
P3BCRiU7LWk9KVNlRDdSYCl9CnpXbzBQSHJxck92RlphQz1XbmtiPkkhSUFxKGJsKjlIS29zIz1k
JntHWGt4e2tiQklhd3VQYilOQDZVSzxBSjQ/Xwp6TDRlWXJKQUNzQCVyYCFVaFR8SSY3I1dXRWFi
TFVsZHNEZkwjM2hEPz5XdkB+N0dTamRrajJPZTYrZ1NAPEt3LW4KeiZvZVI5JGJ5bSZkRkZ0MWdf
VH5zY2gjNEg7ZD5nQHFqO309XzM9aFVVV09nd2wpQUN9PlltUyFANzlWbEpsR3c5Cnp5PGo5SmRP
PlFvP09JKHtGM05EQUg8Q2hnWGpue3Jvdyl2NyY2Q1h4NEJfQ1VMcz4hekY9dTRCR24+K2tRRDl+
fgp6ZUo/WV4xNEE4UD5BVWZBKTdKMGpZcnByZD1GTWF7dXk/UztOWjwwYGleM1RnWSZyKEJYSUZL
bmVTMit4RmFNN2kKeiEtRihYVjNKcHJmcHRZNnp4Py0/PitqekNPYmorTnNxZzgxWilEbHFPYykt
LVFSPlhRcGBWWldyPGRQblclIXstCnpYe2shSm5obXBmdypQK0RlNFdgNk11eld7KV5ATWYtQ0Y7
QFdaNz5XaDZCP25FJGUwZHpyUGtnYHslaGd1dGp1Owp6IXVDKDgjcTYxPD89ZG9ia05gRn56ZW9k
M0pVVG9Zald9QSUjOHdLXygqQktJb3pYP1AoUnhZPHVxKGplPkZWZFEKSSZNQmJAMEcmVnwyPjx7
OQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRl
LW9wZXJhdG9ycy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1j
b21wb3NpdGUtb3BlcmF0b3JzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLW9wZXJhdG9ycy5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA1NGNkODMzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwxMzIgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgY29tcG9zaXRlIG9wZXJhdG9y
cyBjb21wdXRlIGNvbG9yIHZhbHVlcyBjb3JyZWN0bHkuPC90aXRsZT4KLSAgICA8IS0tCi0gICAg
ICAgIFRoaXMgdGVzdCBtaW1pY3MgdGhlIFBvcnRlciBEdWZmIENvbXBvc2l0aW5nIE9wZXJhdG9y
cyBleGFtcGxlIGltYWdlIGluIHRoZSBDb21wb3NpdGluZyBhbmQgQmxlbmRpbmcgc3BlYzoKLSAg
ICAgICAgaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5n
L2luZGV4Lmh0bWwjcG9ydGVyZHVmZmNvbXBvc2l0aW5nb3BlcmF0b3JzX3NyY2F0b3AKLSAgICAt
LT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICB9Ci0gICAgPC9z
Y3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC8qIERyYXdzIGEgYmxhY2sgYm9yZGVyIGFyb3VuZCB0
aGUgc2hhZGVkIGRlc3RpbmF0aW9uIGRpdi4gKi8KLSAgICAjYm9yZGVyLWNvbnRhaW5lciB7Ci0g
ICAgICAgIHdpZHRoOiA0NXB4OwotICAgICAgICBoZWlnaHQ6IDQ1cHg7Ci0gICAgICAgIGJvcmRl
cjogMXB4IHNvbGlkIGJsYWNrOwotICAgIH0KLSAgICAvKiBUaGUgc2hhZGVkIGRpdi4gKi8KLSAg
ICAuZGVzdGluYXRpb24gewotICAgICAgICB3aWR0aDogMTAwJTsKLSAgICAgICAgaGVpZ2h0OiAx
MDAlOwotICAgIH0KLSAgICAvKiBEcmF3cyBhIHllbGxvdyBzcXVhcmUgaW4gdGhlIHVwcGVyIGxl
ZnQgY29ybmVyIG9mIHRoZSBkZXN0aW5hdGlvbiBkaXYuICovCi0gICAgLyogVGhlIHJlc3Qgb2Yg
dGhlIGRlc3RpbmF0aW9uIGRpdiBpcyB0cmFuc3BhcmVudC4gKi8KLSAgICAjZGVzdGluYXRpb24t
b3BhcXVlLWNoaWxkIHsKLSAgICAgICAgd2lkdGg6IDY3JTsKLSAgICAgICAgaGVpZ2h0OiA2NyU7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHllbGxvdzsKLSAgICB9Ci0gICAgLyogQ29tcG9z
aXRlIG9wZXJhdG9ycyAqLwotICAgIC5jbGVhciB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9y
ZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGNsZWFyKSk7Ci0gICAgfQotICAgIC5jb3B5
IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNz
LXRleC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb21wb3NpdGUuZnMnKSBub3Jt
YWwgY29weSkpOwotICAgIH0KLSAgICAuc291cmNlLW92ZXIgewotICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVy
bCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1hbCBzb3VyY2Utb3ZlcikpOwotICAg
IH0KLSAgICAuZGVzdGluYXRpb24tb3ZlciB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNv
dXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLW92ZXIpKTsKLSAgICB9Ci0g
ICAgLnNvdXJjZS1pbiB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9y
ZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9z
aXRlLmZzJykgbm9ybWFsIHNvdXJjZS1pbikpOwotICAgIH0KLSAgICAuZGVzdGluYXRpb24taW4g
ewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3Mt
dGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1h
bCBkZXN0aW5hdGlvbi1pbikpOwotICAgIH0KLSAgICAuc291cmNlLW91dCB7Ci0gICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMn
KSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIHNvdXJjZS1vdXQp
KTsKLSAgICB9Ci0gICAgLmRlc3RpbmF0aW9uLW91dCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLW91dCkpOwotICAg
IH0KLSAgICAuc291cmNlLWF0b3AgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVy
bCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2Vz
L2NvbXBvc2l0ZS5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAgIH0KLSAgICAuZGVzdGlu
YXRpb24tYXRvcCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRl
LmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLWF0b3ApKTsKLSAgICB9Ci0gICAgLnhvciB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29v
cmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIHhvcikp
OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0iYm9y
ZGVyLWNvbnRhaW5lciI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIGNsZWFyIj4K
LSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0g
ICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWluZXIi
PgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBjb3B5Ij4KLSAgICAgICAgICAgIDxk
aXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWluZXIiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2Utb3ZlciI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJk
ZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rp
dj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0i
ZGVzdGluYXRpb24gZGVzdGluYXRpb24tb3ZlciI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0
aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4K
LSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVz
dGluYXRpb24gc291cmNlLWluIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9w
YXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYg
aWQ9ImJvcmRlci1jb250YWluZXIiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBk
ZXN0aW5hdGlvbi1pbiI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUt
Y2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJi
b3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gc291cmNl
LW91dCI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwv
ZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29u
dGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZGVzdGluYXRpb24tb3V0
Ij4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+
Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWlu
ZXIiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2UtYXRvcCI+Ci0gICAg
ICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAg
ICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZGVzdGluYXRpb24tYXRvcCI+Ci0gICAgICAg
ICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8
L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24geG9yIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRl
c3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2
PgotICAgIDwhLS0KLSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGNvbXBvc2l0ZSBvcGVyYXRvcnMg
dG8gdGhpcyBwYWdlLCBiZSBjYXJlZnVsIG5vdCB0byBleGNlZWQgNjAwcHggaW4KLSAgICAgICAg
aGVpZ2h0LCBzaW5jZSBEdW1wUmVuZGVyVHJlZSBjb21wYXJlcyA4MDB4NjAwIHNuYXBzaG90cyBv
ZiB0aGlzIHBhZ2UuCi0gICAgLS0+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLXNvdXJj
ZS1hdG9wLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1jb21wb3NpdGUtc291cmNlLWF0b3AtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAzYTFiMDAxZmRiYmMxZGU4MTEyZjRiZDVjYTRkZTllNWRiYzk1
MGE3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkg
cGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpsaXRlcmFsIDEwNzk2CnpjbWVJMlpBZXA1N3t8
fU91MzhoQEV1IyshK3BSM0pCeHFUaThoWHVIOFk7Yn5MQ3ZPUyhUaDxVUj1Sc09xY15nbwp6SCZV
YHleYTNSKytKezFNbWs2PlZpeX1ydkg3SyZzTFd7IUQtMGlyey1TZlN1RlZCYXUtTlFOMElwP3ww
XkZQMXkKenVwYFRJbXFja01ZWTsrRlMoKVkpMnUxSit2M2NzenFAe2szVjwtOEZFNmQwJEU4SlhN
eE9JMj1jMnV9JlVoemcjCnpxUzNVZWg8dlB4KjcqeGUyQlh6I0RxM0pMOEh5NC08RSg+Wk9sT3Vr
WkIrJkg8O35vdGc4U3RlJWQ0c3tvYSlpPAp6VSN3WW92U0g/cEJ5SWFzYEBWQVg8P2k7Vklrd1I7
djY5bXdgK2dXKllLfDgkVnB0WFYoSTJEb19ab2RWVFYmdWQKeiliNFgpRypCSnhCdyhwRG4mVndI
dVMoNCQwfGlYRiU9X34kbEV2dDdJLVJmWUNFSFVzTk9FcV4zMylzVW5MV24zCnprPU5afDUldFk9
TDswLWU3NCFWUHJNRU5YSGUyNyZpd1ZKOTxWZDM5Z3w5TTRTKHI0MlZaSmVzUEtVTmdqTS09Swp6
TGNPemp0Z2BWem8pPU9JPk93WSNKQEhoZiVLWkwpZSRYdn0xP1d8KHR9KmN8RGFYYGZ3OGhwckwp
bz5iOFkzPyoKelVhQ3drNUp4P0o7dlRqYj5RPjJkeXVLeHludFVfTVVoI1ZDc3I2fURfQ3Yoa0lC
TjE3MFZrd2RxRFBGN0g8YyNmCnpPMzUlP25mJjVkYj93S1Z0PD9IYilhcUpvLVpnNlMxY3JHQSZJ
IUM4YTg1VyVBIyVjNV53LWtMP24+RHY0fUtRcQp6QyhXc0VKP3xMNS16RUQ/e083YDFGMEdlYiUk
PUQwdXJRRkUmSl4lTU43PXp9QTdwUkcyPk9mIUQpPEx0QlkyUVAKelVpPzRaQGJ0Si0jZkJZMktB
LVE0QStoUmZqVTt3cGFrMmxzSm4yX3RZKjB5Y25uNUc0byFjLXFFVWJiam8pQH1QCnpIYztHQ0Zf
UlpgKX0pTSleZD8tSEZXfmM0OVRiTjNGQyZ0OHVrMHUjaUVTN3F7O0h0QiQ4IW16eUB4K2ZxO1JR
KAp6VlJyby1wZzJyUUNsSlV6a0U3X1FuP1AzSWAha2Z+TCFAUU93VXJidm9nYnlAZFU8fn5XbSF2
Rih6Q0JDSmphPEwKeil3T0xXKT40KnI4Zz1jVmJHaFJjVEg4NV48NGczLWw7d3BKSWRCai1DPWdp
P0xIe2hwYHJUZnlZIVBqP3Z2cEJhCnpSOyFLPS16fFVpeChEelFEdntOVnRVdFBPXn4yK29ORHZ0
X1QjQkdGeHNoZHkmYV9UYmwjVkJZa29gIyshbXV8bgp6JUQ+dTJYK3teeiN6clM4TCRFWjk3dUxp
alEqKmFzXngoaWFpVmo8ZHM9IWpmRC1iS2dTcHBlRTFPe300N2VILUUKekk9fnIzcz05RDhiMzh4
LXAqbGIoYStMPDQxVnsqNkZhUXomNSgxWXxmQ1BZcUshRWB1MFUja3ppfj5sMk48eSMoCnQ1MEMo
bTBGViU+Pk8mPWdvREtqOXt9ZDhydn5SdWNSP1hleUY3byRKbCREV2RaZHoyfV96am9AQkRlcW0K
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtc291cmNlLWF0b3AtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YjEzNzg5Li4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3Np
dGUtc291cmNlLWF0b3AtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAot
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZhNmM2OTYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1zb3VyY2UtYXRvcC5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGUgc291cmNlLWF0b3AgY29tcG9zaXRlIG9w
ZXJhdG9yIHdpdGggdGhlIG5vcm1hbCBibGVuZCBtb2RlLjwvdGl0bGU+Ci0gICAgPCEtLQotICAg
ICAgICBUaGlzIHRlc3QgbWltaWNzIHRoZSBzb3VyY2UtYXRvcCBleGFtcGxlIGltYWdlIGluIHRo
ZSBDb21wb3NpdGluZyBhbmQgQmxlbmRpbmcgc3BlYzoKLSAgICAgICAgaHR0cHM6Ly9kdmNzLncz
Lm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwjcG9ydGVyZHVm
ZmNvbXBvc2l0aW5nb3BlcmF0b3JzX3NyY2F0b3AKLQotICAgICAgICBJZiBpdCBwYXNzZXMsIHlv
dSBzaG91bGQgc2VlIGEgeWVsbG93IHNxdWFyZSB3aXRoIGEgYmx1ZSBzcXVhcmUgaW4gaXRzIGxv
d2VyIHJpZ2h0IGNvcm5lci4KLSAgICAgICAgVGhpcyBzaG91bGQgYmUgaW4gdGhlIHVwcGVyIGxl
ZnQgY29ybmVyIG9mIGEgd2hpdGUgYm94IHdpdGggYSBibGFjayBib3JkZXIuCi0gICAgLS0+Ci0g
ICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZp
bHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0
PgotICAgIDxzdHlsZT4KLSAgICAvKiBEcmF3cyBhIGJsYWNrIGJvcmRlciBhcm91bmQgdGhlIHNo
YWRlZCBkZXN0aW5hdGlvbiBkaXYuICovCi0gICAgI2JvcmRlci1jb250YWluZXIgewotICAgICAg
ICB3aWR0aDogMjAwcHg7Ci0gICAgICAgIGhlaWdodDogMjAwcHg7Ci0gICAgICAgIGJvcmRlcjog
MXB4IHNvbGlkIGJsYWNrOwotICAgIH0KLSAgICAvKiBUaGUgc2hhZGVkIGRpdi4gKi8KLSAgICAj
ZGVzdGluYXRpb24gewotICAgICAgICB3aWR0aDogMTAwJTsKLSAgICAgICAgaGVpZ2h0OiAxMDAl
OwotICAgICAgICAvKiBUaGUgZnJhZ21lbnQgc2hhZGVyIHdyaXRlcyBhIGJsdWUgc3F1YXJlIHRv
IGNzc19NaXhDb2xvciBpbiB0aGUgbG93ZXIgcmlnaHQgY29ybmVyIG9mIHRoZSBkZXN0aW5hdGlv
biBkaXYuICovCi0gICAgICAgIC8qIEl0IHdyaXRlcyB0cmFuc3BhcmVudCBlbHNld2hlcmUuICov
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10
ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSk7Ci0gICAgfQotICAgIC8qIERyYXdzIGEgeWVsbG93IHNxdWFyZSBpbiB0
aGUgdXBwZXIgbGVmdCBjb3JuZXIgb2YgdGhlIGRlc3RpbmF0aW9uIGRpdi4gKi8KLSAgICAvKiBU
aGUgcmVzdCBvZiB0aGUgZGVzdGluYXRpb24gZGl2IGlzIHRyYW5zcGFyZW50LiAqLwotICAgICNk
ZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQgewotICAgICAgICB3aWR0aDogNjclOwotICAgICAgICBo
ZWlnaHQ6IDY3JTsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93OwotICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0iYm9yZGVyLWNvbnRhaW5l
ciI+Ci0gICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9
ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+Ci0gICAgICAgICAgICA8L2Rpdj4KLSAgICAgICAg
PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5saW5lLWNvbXB1
dGVkLXN0eWxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0CmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlM2Y1ZDc3Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29t
cHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAot
VGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgd2UgZG9uJ3QgYXNzZXJ0IHdoZW4gd2UgZ2VuZXJhdGUg
dGhlIGNvbXB1dGVkIHN0eWxlIGZvciBhbiBlbGVtZW50IHRoYXQgbWVldHMgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zOgotKDEpIFRoZSBlbGVtZW50IGhhcyBhIGN1c3RvbSBmaWx0ZXIgY29udGFp
bmluZyBhIHRyYW5zZm9ybSBwYXJhbWV0ZXIuCi0oMikgVGhlIGVsZW1lbnQgZG9lcyBub3QgaGF2
ZSBhIENTUyBib3guIEZvciBleGFtcGxlLCB0aGUgZWxlbWVudCBpcyBkaXNwbGF5OiBpbmxpbmUu
Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGVsZW1lbnQgaXMgbm9uLW51
bGwuCi1QQVNTIENvbXB1dGluZyB0aGUgZmlsdGVyIHN0eWxlIGZvciB0aGUgZWxlbWVudCBkaWQg
bm90IGNyYXNoIHRoZSBicm93c2VyLgotUEFTUyBmaWx0ZXJQcm9wZXJ0eUNTU1ZhbHVlIGlzIG5v
bi1udWxsLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRF
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTkzNmZlNi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5s
aW5lLWNvbXB1dGVkLXN0eWxlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi08
IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdD4KLSAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAg
I2ZpbHRlci10YXJnZXQgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwo
bm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgyKSk7Ci0gICAgICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Ci0gICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci0gICAgPHNwYW4gaWQ9ImZpbHRlci10YXJn
ZXQiPjwvc3Bhbj4KLSAgICA8c2NyaXB0PgotICAgICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0
IHZlcmlmaWVzIHRoYXQgd2UgZG9uJ3QgYXNzZXJ0IHdoZW4gd2UgZ2VuZXJhdGUgdGhlIGNvbXB1
dGVkIHN0eWxlXAotICAgICAgICAgICAgZm9yIGFuIGVsZW1lbnQgdGhhdCBtZWV0cyB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnM6PGJyLz5cCi0gICAgICAgICAgICAoMSkgVGhlIGVsZW1lbnQgaGFz
IGEgY3VzdG9tIGZpbHRlciBjb250YWluaW5nIGEgdHJhbnNmb3JtIHBhcmFtZXRlci48YnIvPlwK
LSAgICAgICAgICAgICgyKSBUaGUgZWxlbWVudCBkb2VzIG5vdCBoYXZlIGEgQ1NTIGJveC4gRm9y
IGV4YW1wbGUsIHRoZSBlbGVtZW50IGlzIGRpc3BsYXk6IGlubGluZS4iKTsKLQotICAgICAgICB2
YXIgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWx0ZXItdGFyZ2V0Iik7Ci0g
ICAgICAgIHNob3VsZEJlTm9uTnVsbCgiZWxlbWVudCIpOwotCi0gICAgICAgIHZhciBmaWx0ZXJQ
cm9wZXJ0eUNTU1ZhbHVlID0gZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS5nZXRQcm9wZXJ0eUNT
U1ZhbHVlKCItd2Via2l0LWZpbHRlciIpOwotICAgICAgICB0ZXN0UGFzc2VkKCJDb21wdXRpbmcg
dGhlIGZpbHRlciBzdHlsZSBmb3IgdGhlIGVsZW1lbnQgZGlkIG5vdCBjcmFzaCB0aGUgYnJvd3Nl
ci4iKTsKLSAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJmaWx0ZXJQcm9wZXJ0eUNTU1ZhbHVlIik7
Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1rZXl3b3JkLWFz
LXBhcmFtZXRlci1uYW1lLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS1leHBlY3Rl
ZC5wbmcKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgxMzE2ZmZkN2NiOWIyN2QzNDI2
N2Q5YWFhNWZiZjk3OWE2MzM4OGEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgMTA1
NjkKemNtZUhOVH14QyE3QGpqYiVKQ350OG00NzJUM0xkSHRFO0k9akpsJHRoKVUyKG43U1Z0Zyhr
VSVQe14hTnQzPFV8CnpoUVdlUmZwdC1jbT0obyhBdGV8Wik+WFRLTUJvUVJkUW43U0hMST4/ZW5Q
PX1iQG57JEpUdm4kXkZBfXJkLWBqdAp6JVZIdlRNSXdZXkQkMzF1MnBLM3Mqcko5RDxqJSQzNClJ
OExtUmcqKUdZO0ZpJmFPNk9HK0ZKb21ZblM3ZTNSOWYKeld5KjlvQHx0WlhZaV8yPW1oWjQxJV40
bzhKJS1SQmV9JWN8TTdRJGdxdyh5WCs4dn5KSWBQdDw+OU0lX0pmRX1mCnojYlZXbVB1cjV5KHRD
eihKXnM0amJ8VkU3UmlsaUhBRi10OGMoP29IPUchX3ZAOGY3U01NNzRwNyUjbTBKeW1aLQp6Tlo8
S2o+ckVQMEU1QEliIyYmTXM7MCZVYVR7ZGlXTGUjPXxqbXszZz8zM0N3VVowO2BjPk9jfVNCY0Ij
VGt7WE4KejFFKSh2b0xiYjZ1PklqKEg+Sk95Vm15JFc1YjlCTVpCPi1HRCtPaHRDWDchVXJtVEg7
KVlobUpKaTx8YmskMnp2CnpMXnIwRXB3YU9nUzAhMnQ8QzgtKCghZXtTUkZENXZ1fTtlfUQ2YGZx
Z2FSZ2JvYCNYQkhkfjVMTzlpY1F4S287TQp6S21fRTtoIWpJaiY/ZGdtbSZWXyZDPlEofGlNQjZ7
bHQoV29PWERCcz12aUJhTF8zS3dnYXQhYiNGQnYzNjVQZUcKemk5YFp7KyFEOzB8NVZDZFNeYyZh
Nz9wJVohQ3YwVDNNeXwpMnxwMklJfnQ3OFJicjhsXjQ2c3xOZFpiMmtFWW9ZCno7TkBzM3FhanQt
bytlZkdERTJmUjchcCRKeTxhSipNem9AMkBpITlTI1E1SCp2dE4/STZ3MU9xZ0EhMjl4TzNvJAp6
cT5HdF5PcmZsSlVFJHdHc0dnYSoxQ3BYJDwweSU+TkktJDIlKylfUD5zbVVZWTFBLVByMzM2Qmdg
aHhDMiZAIUwKelZFYShXREg/QERpKEheUyRPViREIWEwU2dhQ2w+SXFOTk91YE4xMCQrPG85ZXNL
RzUrKXhiTDdVPiU1KDJVckpTCno5U0M8MnRPS3dQZ3N9fFAwYXlwMzVDR056MHFhMU5WWmJeNz5w
JkQyITghb3pBWHNxKT5qMTArQGUjbShXKnopaQpaOFg5NkI/MHZaV1BKQTFRRG9VJShrQlhhbXt7
cSVJXyY1TG4KCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1ldGVyLW5hbWUtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1rZXl3b3Jk
LWFzLXBhcmFtZXRlci1uYW1lLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1ldGVyLW5hbWUtZXhwZWN0ZWQu
dHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1l
dGVyLW5hbWUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA3ZjBkYzcyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGEgQ1NTIGtleXdvcmQgY2FuIGJlIGEg
cGFyYW1ldGVyIG5hbWUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJl
ZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxl
ZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUp
OwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC8qIFRlc3RzIHRo
YXQgdGhlIENTUyBrZXl3b3JkICJiYWNrZ3JvdW5kIiBjYW4gYmUgYSBwYXJhbWV0ZXIgbmFtZS4g
Ki8KLSAgICAuc2hhZGVkIHsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICBoZWlnaHQ6
IDEwMHB4OwotICAgICAgICAvKiBUaGUgc2hhZGVyIHNob3VsZCByZXBsYWNlIHRoZSBkaXYncyBy
ZWQgYmFja2dyb3VuZCB3aXRoIGdyZWVuLiAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
ZWQ7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSB1cmwoJy4uL3Jlc291cmNl
cy9jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5mcycpLCBiYWNrZ3JvdW5kIDAgMSAwIDEp
OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0i
c2hhZGVkIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hlZC1tZXNoLXdpdGgtbWVz
aC1ib3gtdHlwZS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI4NmM0ZDIuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVk
LW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxNyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxl
PlRlc3QgdGhhdCBhIGRldGFjaGVkIGlkZW50aWZpZXIgYWZ0ZXIgdGhlIG1lc2ggYm94IHR5cGUg
aXMgaW50ZXJwcmV0ZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBw
YXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgc2luZ2xlIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHN0
eWxlPgotICAgICAgICAjZmlsdGVyLXRhcmdldCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogIzBmMDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8
ZGl2IGlkPSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hl
ZC1tZXNoLXdpdGgtbWVzaC1ib3gtdHlwZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE5NWFjNDguLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1l
c2gtd2l0aC1tZXNoLWJveC10eXBlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MSArMCwwIEBA
Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBh
IGRldGFjaGVkIGlkZW50aWZpZXIgYWZ0ZXIgdGhlIG1lc2ggYm94IHR5cGUgaXMgaW50ZXJwcmV0
ZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBz
aG91bGQgc2VlIGEgc2luZ2xlIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHNjcmlwdD4KLSAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIp
OwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2Fp
dFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3Rz
IGFmdGVyIHRoZSBzaGFkZXJzIGRvd25sb2FkLgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsK
LSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAgI2ZpbHRlci10
YXJnZXQgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgIC8q
IAotICAgICAgICAgICAgICAgIFRoaXMgY3VzdG9tIGZpbHRlcidzIHZlcnRleCBzaGFkZXIgZGVm
aW5lcyBhX3RyaWFuZ2xlQ29vcmQsIHdoaWNoIGlzIG9ubHkgYXZhaWxhYmxlIHdpdGggZGV0YWNo
ZWQgbWVzaGVzLgotICAgICAgICAgICAgICAgIFRodXMsIHRoaXMgY3VzdG9tIGZpbHRlciB3aWxs
IG9ubHkgZXhlY3V0ZSBpZiB0aGUgbWVzaCBpcyBkZXRhY2hlZC4KLSAgICAgICAgICAgICAgICBJ
ZiB0aGUgY3VzdG9tIGZpbHRlciBleGVjdXRlcywgaXRzIGZyYWdtZW50IHNoYWRlciB3aWxsIHR1
cm4gdGhpcyBlbGVtZW50IGdyZWVuLgotICAgICAgICAgICAgICovCi0gICAgICAgICAgICAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvYS10cmlhbmdsZS1jb29yZC1kZWZp
bmVkLnZzKSAKLSAgICAgICAgICAgICAgICBtaXgodXJsKC4uL3Jlc291cmNlcy9taXgtY29sb3Iu
ZnMpIG5vcm1hbCBzb3VyY2UtYXRvcCksCi0gICAgICAgICAgICAgICAgMSAxIGJvcmRlci1ib3gg
ZGV0YWNoZWQsCi0gICAgICAgICAgICAgICAgbWl4X2NvbG9yIDAgMSAwIDEKLSAgICAgICAgICAg
ICk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJydW5U
ZXN0KCkiPgotICAgIDxkaXYgaWQ9ImZpbHRlci10YXJnZXQiPjwvZGl2PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLW1hdE4tZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1tYXROLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDk4NzBkNGUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLW1hdE4tZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDE2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAg
ICAgIDx0aXRsZT5UZXN0cyBtYXROKCkgZnVuY3Rpb25zIGluIGN1c3RvbSBmaWx0ZXJzPC90aXRs
ZT4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAg
ICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9
InJ1blRlc3QoKSI+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAg
IDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1tYXROLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbWF0Ti5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA5YjUxOTFmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1tYXROLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzOSArMCwwIEBA
Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVz
dHMgbWF0TigpIGZ1bmN0aW9ucyBpbiBjdXN0b20gZmlsdGVyczwvdGl0bGU+Ci0gICAgICAgIDxz
Y3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAg
ICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRp
bmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAg
ICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAg
I2ZpbHRlcnRlc3Rib3ggewotICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6
IHJlZDsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcu
Li9yZXNvdXJjZXMvZnJhZ21lbnQtbWF0Ti5mcycpLAotICAgICAgICAgICAgICAgICAgICBtMSBt
YXQyKDEsIDEsIDAsIDApLAotICAgICAgICAgICAgICAgICAgICBtMiBtYXQzKDEsIDAsIDEsIDAs
IDEsIDEsIDAsIDEsIDApLAotICAgICAgICAgICAgICAgICAgICBtMyBtYXQ0KDEsIDEsIDAsIDAs
IDAsIDEsIDEsIDAsIDEsIDAsIDAsIDEsIDEsIDEsIDEsIDEpCi0gICAgICAgICAgICAgICAgKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkg
b25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBw
eCByZWQgZGl2IGlzIGNvbG91cmVkIGxpbWUgYnkgZnJhZ21lbnQtbWF0Ti5mcywgYSBmcmFnbWVu
dCBzaGFkZXIuCi0gICAgICAgICAgICBGYWlscyBpZiB0aGUgZGl2IHN0YXlzIHJlZC4KLSAgICAg
ICAgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1tZXNoLWNvbHVtbi1yb3ctb3JkZXItZXhwZWN0ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1tZXNoLWNvbHVtbi1yb3ct
b3JkZXItZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDliMGM4
Ni4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwzMiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3QgdGhhdCBpbiBDU1MsIHRoZSB2ZXJ0ZXggbWVzaCBkaW1lbnNpb25zIGFyZSBzcGVj
aWZpZWQgaW4gY29sdW1uLCByb3cgb3JkZXIuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRo
aXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgSWYgdGhlIHRl
c3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIGNoZWNrYm9hcmQgd2l0aCAyIGNvbHVtbnMgYW5k
IDQgcm93cyBvZiBibGFjayBhbmQgZ3JlZW4gc3F1YXJlcy4KLSAgICAtLT4KLSAgICA8c3R5bGU+
Ci0gICAgYm9keSB7Ci0gICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICB9Ci0gICAgZGl2IHsKLSAg
ICAgICAgZmxvYXQ6IGxlZnQ7Ci0gICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6
IDUwcHg7Ci0gICAgfQotICAgIGRpdjpudGgtY2hpbGQoNG4pLCBkaXY6bnRoLWNoaWxkKDRuKzEp
IHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMCB9Ci0gICAgZGl2Om50aC1jaGlsZCg0bisyKSwgZGl2
Om50aC1jaGlsZCg0biszKSB7IGJhY2tncm91bmQtY29sb3I6ICMwZjAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAg
PGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48
L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkwYjc0ZDkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW1lc2gtY29sdW1uLXJvdy1vcmRlci5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgaW4gQ1NTLCB0aGUgdmVydGV4IG1lc2gg
ZGltZW5zaW9ucyBhcmUgc3BlY2lmaWVkIGluIGNvbHVtbiwgcm93IG9yZGVyLjwvdGl0bGU+Ci0g
ICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgY2hlY2tib2FyZCB3
aXRoIDIgY29sdW1ucyBhbmQgNCByb3dzIG9mIGJsYWNrIGFuZCBncmVlbiBzcXVhcmVzLiAtLT4K
LSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVy
cmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLSAgICAgICAgCi0g
ICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBXZSBu
ZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIHNoYWRlcnMgZG93bmxvYWQuCi0gICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxl
PgotICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwotICAg
ICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgIGhlaWdodDogMjAwcHg7Ci0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4v
cmVzb3VyY2VzL2NoZWNrZXJib2FyZC52cykgbWl4KHVybCguLi9yZXNvdXJjZXMvdmFyeWluZy1t
aXgtY29sb3IuZnMpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDIgNCBkZXRhY2hlZCk7Ci0gICAgfQot
ICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRp
diBpZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRp
bmdzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1taXgtYmluZGluZ3MtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA4N2RjZTRkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251
bGwKQEAgLTEsMTUgKzAsMCBAQAotVGVzdCBtaXgoKSBmdW5jdGlvbiBKUyBiaW5kaW5ncy4KLQot
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MganNXcmFwcGVyQ2xhc3MobWl4RnVuY3Rp
b24pIGlzICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyht
aXhGdW5jdGlvbi5fX3Byb3RvX18pIGlzICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlUHJvdG90
eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhtaXhGdW5jdGlvbi5jb25zdHJ1Y3RvcikgaXMgJ1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWVDb25zdHJ1Y3RvcicKLVBBU1MgbWl4RnVuY3Rpb25Db250
ZW50IGlzICJtaXgodXJsKGNvbG9yLW9mZnNldC5mcykpIgotUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTYxNWM0MS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRpbmdz
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJM
SUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRpbmdz
LmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUt
YWNjZXNzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItbm8tZWxlbWVudC10ZXh0dXJlLWFjY2Vzcy1leHBlY3RlZC5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZDg0MDQ4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUt
YWNjZXNzLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyNiArMCwwIEBACi08IWRv
Y3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgYW4gYXV0
aG9yJ3Mgc2hhZGVyIGNvZGUgY2Fubm90IHNhbXBsZSBhIHNoYWRlZCBlbGVtZW50J3MgdGV4dHVy
ZS48L3RpdGxlPgotICAgIDwhLS0gCi0gICAgICAgIFRoaXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxl
IGZvciB0aGUgdGVzdC4KLSAgICAgICAgSWYgdGhlIHRlc3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNl
ZSA2IHZlcnRpY2FsbHktc3RhY2tlZCBncmVlbiBib3hlcy4KLSAgICAtLT4KLSAgICA8c3R5bGU+
Ci0gICAgZGl2IHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0g
ICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgIG1hcmdp
bjogMTBweDsKLSAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXY+
PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+
Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5v
LWVsZW1lbnQtdGV4dHVyZS1hY2Nlc3MuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUtYWNjZXNzLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVhODQ5MzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vLWVsZW1lbnQtdGV4dHVyZS1h
Y2Nlc3MuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ4ICswLDAgQEAKLTwhZG9jdHlwZSBodG1s
PgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBhbiBhdXRob3IncyBzaGFk
ZXIgY29kZSBjYW5ub3Qgc2FtcGxlIGEgc2hhZGVkIGVsZW1lbnQncyB0ZXh0dXJlLjwvdGl0bGU+
Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIDYgdmVydGljYWxs
eS1zdGFja2VkIGdyZWVuIGJveGVzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRl
UHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5h
YmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAg
ZGl2IHsKLSAgICAgICAgLyogVGhlIHNoYWRlcnMgd2lsbCB0dXJuIHRoZSBlbGVtZW50J3MgY29s
b3IgZnJvbSBncmVlbiB0byByZWQgaWYgdGhleSBhcmUgYWJsZSB0byBzYW1wbGUgaXRzIHRleHR1
cmUuICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAg
ICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEw
cHg7Ci0gICAgfQotICAgIC5zYW1wbGUtdS10ZXh0dXJlIHsKLSAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRleC1jb29yZC52cycpIHVybCgnLi4v
cmVzb3VyY2VzL3NhbXBsZS11LXRleHR1cmUuZnMnKSk7Ci0gICAgfQotICAgIC5zYW1wbGUtdS10
ZXh0dXJlLW1peCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvc2FtcGxlLXUt
dGV4dHVyZS1taXguZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLnNhbXBs
ZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSB1cmwoJy4uL3Jlc291cmNl
cy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUuZnMnKSk7ICAKLSAgICB9Ci0gICAgLnNh
bXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXggewotICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXguZnMnKSBub3Jt
YWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLnNhbXBsZS1kZWZpbmVkLWNzcy11LXRleHR1
cmUgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bh
c3MtdGV4LWNvb3JkLnZzJykgdXJsKCcuLi9yZXNvdXJjZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUt
dGV4dHVyZS5mcycpKTsgIAotICAgIH0KLSAgICAuc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVy
ZS1taXggewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2Vz
L3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL3NhbXBsZS1kZWZpbmVk
LWNzcy11LXRleHR1cmUtbWl4LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgfQotICAg
IDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdS10ZXh0
dXJlIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdS10ZXh0dXJlLW1peCI+PC9kaXY+
Ci0gICAgPGRpdiBjbGFzcz0ic2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10ZXh0dXJlIj48L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4Ij48L2Rp
dj4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlIj48L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peCI+PC9kaXY+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3ItZXhwZWN0
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xvci1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBlOTYzYTYxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xv
ci1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotPCFET0NUWVBF
IEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCB0aGF0IGJs
ZW5kcyB0aGUgc291cmNlIGFuZCB0aGUgYmFja2Ryb3Agd2l0aCB0aGUgY29sb3IgYmxlbmQgbW9k
ZS48L3RpdGxlPgotICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgIC8qIFRoZXNl
IGFyZSBleGFjdGx5IHRoZSBjb2xvciB2YWx1ZXMgd2UgZXhwZWN0LiBTb21lIHBsYXRmb3JtcyBt
YXkgaGF2ZSBzbGlnaHRseSBkaWZmZXJlbnQKLSAgICAgICAgICAgY29sb3IgcmVzdWx0LiAqLwot
ICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDEwOCwgMTU3LCAyNTUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtc29saWQgewotICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2NywgMTkyLCAyNDIpOwotICAgICAgICAgICAg
d2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAg
ICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2
OSwgMTQyLCAxNjYpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVp
Z2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIwNSwgMTkyLCAyMDQpOwotICAgICAgICAgICAgd2lk
dGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwv
c3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJzb2xpZC1zb2xpZCI+PC9kaXY+
Ci0gICAgPGRpdiBpZD0iYWxwaGEtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9InNvbGlkLWFs
cGhhIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1hbHBoYSI+PC9kaXY+Ci08L2JvZHk+Ci08
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3IuaHRtbCBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9k
ZS1jb2xvci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYzM3MDQwLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xvci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTI5
ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAg
PHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGgg
dGhlIGNvbG9yIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdM
RW5hYmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGUgdHlw
ZT0idGV4dC9jc3MiPgotICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Ig
c291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsKLSAgICAgICAgfQotICAg
ICAgICAjYWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5
MCUsIDUwJSwgMzAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAg
ICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9u
ZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Igc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsKLSAgICAgICAgfQotICAgICAgICAjc29saWQt
YWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUp
OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsK
LSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNv
dXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Igc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAu
NCAwLjggMC41KTsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwgMzAlLCAwLjUpOwotICAgICAgICAg
ICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAg
IC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNv
bG9yLmZzJykgY29sb3Igc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41KTsK
LSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBUaGUg
Zm9sbG93aW5nIHByb29mIGFwcGxpZXMgdG8gdGhlIGZpcnN0IGNhc2UgKCNzb2xpZC1zb2xpZCkg
d2hlcmUgYm90aCB0aGUgYmFja2Ryb3AgYW5kIHRoZQotICAgIHNvdXJjZSBhcmUgc29saWQuCi0K
LSAgICBJbiB0aGlzIHRlc3QgdGhlIGZvbGxvd2luZyBjb21iaW5hdGlvbnMgYXJlIGFsc28gdGVz
dGVkOgotICAgICAgICBCYWNrZHJvcCB3aXRoIDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc29saWQg
c291cmNlCi0gICAgICAgIFNvbGlkIGJhY2tkcm9wIGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0aCAw
LjUgYWxwaGEKLSAgICAgICAgQmFja2Ryb3Agd2l0aCAwLjUgYmxlbmRlZCB3aXRoIHNvdXJjZSB3
aXRoIDAuNSBhbHBoYQotICAgIFRoZSB1bmRlcmxheWluZyBwcm9vZiBvZiB0aGUgYWJvdmUgbWVu
dGlvbmVkIGNhc2VzIGlzIHRoZSBzYW1lOiB0aGUgY29sb3JzIGFyZSBwcmVtdWx0aXBsaWVkCi0g
ICAgYW5kIHRoZW4gYmxlbmRlZCB0b2dldGhlci4KLQotICAgIFRoZSBmaW5hbCBjb2xvciBvZiAj
c29saWQtc29saWQgZGVwZW5kcyBvbiB0aGUgImNvbG9yIiBibGVuZCBtb2RlLCB3aGljaCBpcyBh
IG5vbi1zZXBhcmFibGUKLSAgICBibGVuZCBtb2RlLiBUaGlzIG1lYW5zIHRoYXQgY29sb3JzIGFy
ZSBibGVuZGVkIHRvZ2V0aGVyIGFzIGEgd2hvbGUsIG5vdCBjb21wb25lbnQgYnkgY29tcG9uZW50
LgotCi0gICAgVGhlIGZvcm11bGEgZm9yIHRoaXMgYmxlbmQgbW9kZSBpczoKLSAgICAgICAgQ3Ig
PSBCKENiLCBDcykgPSBTZXRMdW0oQ3MsIEx1bShDYikpCi0KLSAgICBXaXRoOgotICAgICAgICBD
cjogdGhlIHJlc3VsdGluZyBjb2xvcgotICAgICAgICBDYjogdGhlIGJhY2tkcm9wIGNvbG9yLCB3
aGljaCBpcyAjc29saWQtc29saWQgKCJvcmlnaW5hbCBET00gZWxlbWVudCBjb2xvciIpCi0gICAg
ICAgIENzOiB0aGUgc291cmNlIGNvbG9yLCB3aGljaCBpcyBtaXhfY29sb3IKLSAgICAgICAgTHVt
KENiKTogdGhlIGx1bWlub3NpdHkgb2YgQ2IuIEx1bWlub3NpdHkgZm9yIGNvbG9yIEMgaXMgZ2Vu
ZXJhbGx5IGRlZmluZWQgYnkKLSAgICAgICAgICAgTHVtKEMpOiAwLjMgKiBDcmVkICsgMC41OSAq
IENncmVlbiArIDAuMTEgKiBDYmx1ZQotICAgICAgICBTZXRMdW0oQ3MsIEx1bShDYikpOiB0aGUg
ZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAgZCA9IGwgLSBMdW0o
QykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAgQ2dyZWVuID0gQ2dy
ZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAgICAgICAgIHJldHVy
biBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9yIEMgaGFzIHRvIGJl
IGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVuY3Rpb24sIHdoaWNo
IGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xpcENvbG9yKEMpCi0g
ICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENyZWQsIENncmVlbiwg
Q2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAg
ICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkg
KiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAt
IGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVl
IC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4wCi0gICAgICAgICAg
ICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAg
ICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEgLSBsKSkgLyAoeCAt
IGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgSW4gdGhpcyB0ZXN0IGNh
c2U6Ci0gICAgICAgIEx1bShDYikgPSAwLjMgKiAwLjkgKyAwLjU5ICogMC41ICsgMC4xMSAqIDAu
MwotICAgICAgICBMdW0oQ2IpID0gMC4yNyArIDAuMjk1ICsgMC4wMzMKLSAgICAgICAgTHVtKENi
KSA9IDAuNTk4Ci0KLSAgICAgICAgTHVtKENzKSA9IDAuMyAqIDAuMiArIDAuNTkgKiAwLjQgKyAw
LjExICogMC44Ci0gICAgICAgIEx1bShDcykgPSAwLjA2ICsgMC4yMzYgKyAwLjA4OAotICAgICAg
ICBMdW0oQ3MpID0gMC4zODQKLQotICAgICAgICBDciA9IFNldEx1bShDcywgMC41OTgpCi0gICAg
ICAgICAgICBkID0gMC41OTggLSBMdW0oQ3MpCi0gICAgICAgICAgICBkID0gMC41OTggLSAwLjM4
NAotICAgICAgICAgICAgZCA9IDAuMjE0Ci0gICAgICAgICAgICBDcmVkID0gMC4yICsgMC4yMTQg
PSAwLjQxNAotICAgICAgICAgICAgR3JlZW4gPSAwLjQgKyAwLjIxNCA9IDAuNjE0Ci0gICAgICAg
ICAgICBDYmx1ZSA9IDAuOCArIDAuMjE0ID0gMS4wMTQKLSAgICAgICAgICAgIHJldHVybiBDbGlw
Q29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLQotICAgICAgICBDbGlwQ29sb3IoMC40MTQsIDAu
NjE0LCAxLjAxNCkKLSAgICAgICAgICAgIGwgPSAwLjMgKiAwLjQxNCArIDAuNTkgKiAwLjYxNCAr
IDAuMTEgKiAxLjEwMTQgPSAwLjEyNDIgKyAwLjM2MjI2ICsgMC4xMjExNTQgPSAwLjYwNzYxNAot
ICAgICAgICAgICAgbiA9IG1pbigwLjQxNCwgMC42MTQsIDEuMDE0KSA9IDAuNDE0Ci0gICAgICAg
ICAgICB4ID0gbWF4KDAuNDE0LCAwLjYxNCwgMS4wMTQpID0gMS4wMTQKLSAgICAgICAgICAgIHgg
PiAxLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gMC42MDc2MTQgKyAoKCgwLjQxNCAtIDAuNjA3
NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3NjE0KSkgPSAKLSAgICAgICAg
ICAgICAgICAgICAgID0gMC42MDc2MTQgKyAoKC0wLjE5MzYxNCAqIDAuMzkyMzg2KSAvIDAuNDA2
Mzg2KSA9IDAuNjA3NjE0IC0gKDAuMDc1OTcxNDIgLyAwLjQwNjM4NikgPSAwLjYwNzYxNCAtIDAu
MTg2OTQzOTkgPSAwLjQyMDY3MDAxCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gMC42MDc2MTQg
KyAoKCgwLjYxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3
NjE0KSkgPQotICAgICAgICAgICAgICAgICAgICAgICA9IDAuNjA3NjE0ICsgKCgwLjAwMzM4NiAq
IDAuMzkyMzg2KSAvIDAuNDA2Mzg2ID0gMC42MDc2MTQgKyAoMC4wMDEzMjg2MiAvIDAuNDA2Mzg2
KSA9IDAuNjA3NjE0ICsgMC4wMDMyNjkzNSA9IDAuNjEwODgzMzUKLSAgICAgICAgICAgICAgICBD
Ymx1ZSA9IDAuNjA3NjE0ICsgKCgoMS4wMTQgLSAwLjYwNzYxNCkgKiAoMSAtIDAuNjA3NjE0KSkg
LyAoMS4wMTQgLSAwLjYwNzYxNCkgPQotICAgICAgICAgICAgICAgICAgICAgID0gMC42MDc2MTQg
KyAoKDAuNDA2Mzg2ICogMC4zOTIzODYpIC8gMC40MDYzODYpID0gMC42MDc2MTQgKyAoMC4xNTk0
NjAxOCAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4zOTIzODYwMSA9IDEuMAotICAgICAgICAg
ICAgcmV0dXJuICgwLjQyLCAwLjYxLCAxLjApCi0KLSAgICBUaGlzIHZhbHVlIGlzIGVxdWl2YWxl
bnQgdG8gKDEwOCwgMTU3LCAyNTUpLCB3aGljaCBpcyB0aGUgZXhwZWN0ZWQgY29sb3IuCi0gICAg
VGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90aGVyIHBvcnRzIG1pZ2h0IGV4cGVyaWVu
Y2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBpZD0ic29saWQtc29saWQiPjwv
ZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xp
ZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxwaGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5
PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLWh1ZS1leHBlY3RlZC5odG1sIGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJs
ZS1ibGVuZC1tb2RlLWh1ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAzZjE3Zjg3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1odWUtZXhwZWN0ZWQuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwg
bGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJj
ZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGggdGhlIGh1ZSBibGVuZCBtb2RlLjwvdGl0bGU+Ci0gICAg
PHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgLyogVGhlc2UgYXJlIGV4YWN0bHkgdGhl
IGNvbG9yIHZhbHVlcyB3ZSBleHBlY3QuIFNvbWUgcGxhdGZvcm1zIG1heSBoYXZlIHNsaWdodCBk
aWZmZXJlbnQKLSAgICAgICAgICAgY29sb3IgcmVzdWx0LiAqLwotICAgICAgICAjc29saWQtc29s
aWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwOCwgMTU3LCAyNTUpOwot
ICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAg
ICAgICAgfQotICAgICAgICAjYWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogcmdiKDE2NywgMTkyLCAyNDIpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAg
ICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEg
ewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2OSwgMTQyLCAxNjYpOwotICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAg
ICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmdiKDIwNSwgMTkyLCAyMDQpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08
Ym9keT4KLSAgICA8ZGl2IGlkPSJzb2xpZC1zb2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxw
aGEtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9InNvbGlkLWFscGhhIj48L2Rpdj4KLSAgICA8
ZGl2IGlkPSJhbHBoYS1hbHBoYSI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJh
YmxlLWJsZW5kLW1vZGUtaHVlLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtaHVlLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVkMTcxMTguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2Rl
LWh1ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTUxICswLDAgQEAKLTwhRE9DVFlQRSBIVE1M
PgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMg
dGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGggdGhlIGh1ZSBibGVuZCBtb2RlLjwvdGl0
bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICB9
Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI3Nv
bGlkLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5MCUsIDUwJSwg
MzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIGh1ZSBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjIg
MC40IDAuOCAxLjApOwotICAgICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDkwJSwgNTAlLCAzMCUsIDAuNSk7Ci0gICAgICAg
ICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAg
ICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgt
Y29sb3IuZnMnKSBodWUgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsK
LSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgaHVlIHNvdXJj
ZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDAuNSk7Ci0gICAgICAgIH0KLSAgICAgICAg
I2FscGhhLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTAlLCA1
MCUsIDMwJSwgMC41KTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhl
aWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGh1ZSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjIgMC40IDAuOCAwLjUpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4K
LTxib2R5PgotPCEtLQotICAgIFRoZSBmb2xsb3dpbmcgcHJvb2YgYXBwbGllcyB0byB0aGUgZmly
c3QgY2FzZSAoI3NvbGlkLXNvbGlkKSB3aGVyZSBib3RoIHRoZSBiYWNrZHJvcCBhbmQgdGhlCi0g
ICAgc291cmNlIGFyZSBzb2xpZC4KLQotICAgIEluIHRoaXMgdGVzdCB0aGUgZm9sbG93aW5nIGNv
bWJpbmF0aW9ucyBhcmUgYWxzbyB0ZXN0ZWQ6Ci0gICAgICAgIEJhY2tkcm9wIHdpdGggMC41IGFs
cGhhIGJsZW5kZWQgd2l0aCBzb2xpZCBzb3VyY2UKLSAgICAgICAgU29saWQgYmFja2Ryb3AgYmxl
bmRlZCB3aXRoIHNvdXJjZSB3aXRoIDAuNSBhbHBoYQotICAgICAgICBCYWNrZHJvcCB3aXRoIDAu
NSBhbHBoYSBibGVuZGVkIHdpdGggc291cmNlIHdpdGggMC41IGFscGhhCi0gICAgVGhlIHVuZGVy
bHlpbmcgcHJvb2Ygb2YgdGhlIGFib3ZlIG1lbnRpb25lZCBjYXNlcyBpcyB0aGUgc2FtZTogdGhl
IGNvbG9ycyBhcmUgcHJlbXVsdGlwbGllZAotICAgIGFuZCB0aGVuIGJsZW5kZWQgdG9nZXRoZXIu
Ci0KLSAgICBUaGUgZmluYWwgY29sb3Igb2YgI3NvbGlkLXNvbGlkIGRlcGVuZHMgb24gdGhlICJo
dWUiIGJsZW5kIG1vZGUsIHdoaWNoIGlzIGEgbm9uLXNlcGFyYWJsZQotICAgIGJsZW5kIG1vZGUu
IFRoaXMgbWVhbnMgdGhhdCBjb2xvcnMgYXJlIGJsZW5kZWQgdG9nZXRoZXIgYXMgYSB3aG9sZSwg
bm90IGNvbXBvbmVudCBieSBjb21wb25lbnQuCi0KLSAgICBUaGUgZm9ybXVsYSBmb3IgdGhpcyBi
bGVuZCBtb2RlIGlzOgotICAgICAgICBDciA9IEIoQ2IsIENzKSA9IFNldEx1bShTZXRTYXQoQ3Ms
IFNhdChDYikpLCBMdW0oQ2IpKQotCi0gICAgV2l0aDoKLSAgICAgICAgQ3I6IHRoZSByZXN1bHRp
bmcgY29sb3IKLSAgICAgICAgQ2I6IHRoZSBiYWNrZHJvcCBjb2xvciwgd2hpY2ggaXMgI3NvbGlk
LXNvbGlkICgib3JpZ2luYWwgRE9NIGVsZW1lbnQgY29sb3IiKQotICAgICAgICBDczogdGhlIHNv
dXJjZSBjb2xvciwgd2hpY2ggaXMgbWl4X2NvbG9yCi0gICAgICAgIEx1bShDYik6IHRoZSBsdW1p
bm9zaXR5IG9mIENiLiBMdW1pbm9zaXR5IGZvciBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZpbmVk
IGJ5Ci0gICAgICAgICAgIEx1bShDKTogMC4zICogQ3JlZCArIDAuNTkgKiBDZ3JlZW4gKyAwLjEx
ICogQ2JsdWUKLSAgICAgICAgU2F0KENiKTogdGhlIHNhdHVyYXRpb24gb2YgQ2IuIFNhdHVyYXRp
b24gZm9yIGNvbG9yIEMgaXMgZ2VuZXJhbGx5IGRlZmluZWQgYnkKLSAgICAgICAgICAgU2F0KEMp
OiBtYXgoQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkgLSBtaW4oQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkKLSAg
ICAgICBTZXRTYXQoQ3MsIFNhdChDYikpOiB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBzYXR1
cmF0aW9uCi0gICAgICAgU2V0THVtKFNldFNhdChDcywgU2F0KENiKSksIEx1bShDYikpOiB0aGUg
ZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAgZCA9IGwgLSBMdW0o
QykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAgQ2dyZWVuID0gQ2dy
ZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAgICAgICAgIHJldHVy
biBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9yIEMgaGFzIHRvIGJl
IGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVuY3Rpb24sIHdoaWNo
IGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xpcENvbG9yKEMpCi0g
ICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENyZWQsIENncmVlbiwg
Q2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAg
ICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkg
KiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAt
IGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVl
IC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4wCi0gICAgICAgICAg
ICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAg
ICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEgLSBsKSkgLyAoeCAt
IGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgc2F0dXJhdGlvbiBzIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldFNhdChDLCBzKQotICAgICAgICAgICAgaWYoQ21heCA+IENt
aW4pCi0gICAgICAgICAgICAgICAgQ21pZCA9ICgoKENtaWQgLSBDbWluKSAqIHMpIC8gKENtYXgg
LSBDbWluKSkKLSAgICAgICAgICAgICAgICBDbWF4ID0gcwotICAgICAgICAgICAgZWxzZQotICAg
ICAgICAgICAgICAgIENtaWQgPSBDbWF4ID0gMAotICAgICAgICAgICAgQ21pbiA9IDAKLSAgICAg
ICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlzIHRlc3QgY2FzZToKLSAgICAgICAgTHVtKENi
KSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAwLjExICogMC4zCi0gICAgICAgIEx1bShDYikg
PSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAgICBMdW0oQ2IpID0gMC41OTgKLQotICAgICAg
ICBTYXQoQ2IpID0gbWF4KDAuOSwgMC41LCAwLjMpIC0gbWluKDAuOSwgMC41LCAwLjMpCi0gICAg
ICAgIFNhdChDYikgPSAwLjkgLSAwLjMKLSAgICAgICAgU2F0KENiKSA9IDAuNgotCi0gICAgICAg
IEZvciB0aGUgc2FrZSBvZiBicmV2aXR5IHRoZSByZXN1bHQgb2YgdGhpcyBjb21wdXRhdGlvbiBp
cyBjYWxsZWQgQ3QKLSAgICAgICAgQ3QgPSBTZXRTYXQoQ3MsIFNhdChDYikpCi0gICAgICAgICAg
ICAwLjggPiAwLjIKLSAgICAgICAgICAgICAgICBDbWlkID0gKCgoMC40IC0gMC4yKSAqIDAuNikg
LyAoMC44IC0gMC4yKSkgPSAoMC4yICogMC42KSAvIDAuNiA9IDAuMgotICAgICAgICAgICAgICAg
IENtYXggPSAwLjYKLSAgICAgICAgICAgIENtaW4gPSAwCi0gICAgICAgICAgICByZXR1cm4gKDAs
IDAuMiwgMC42KQotCi0gICAgICAgIENyID0gU2V0THVtKEN0LCBMdW0oQ2IpKQotICAgICAgICAg
ICAgZCA9IDAuNTk4IC0gKDAuMyAqIDAuMCArIDAuNTkgKiAwLjIgKyAwLjExICogMC42KSA9IDAu
MTE4ICsgMC4wNjYgPSAwLjE4NAotICAgICAgICAgICAgZCA9IDAuNTk4IC0gKDAuMTE4ICsgMC4w
NjYpID0gMC41OTggLSAwLjE4NAotICAgICAgICAgICAgZCA9IDAuNDE0Ci0gICAgICAgICAgICBD
cmVkID0gMC4wICsgMC40MTQgPSAwLjQxNAotICAgICAgICAgICAgR3JlZW4gPSAwLjIgKyAwLjQx
NCA9IDAuNjE0Ci0gICAgICAgICAgICBDYmx1ZSA9IDAuNiArIDAuNDE0ID0gMS4wMTQKLSAgICAg
ICAgICAgIHJldHVybiBDbGlwQ29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLQotICAgICAgICBD
bGlwQ29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLSAgICAgICAgICAgIGwgPSAwLjMgKiAwLjQx
NCArIDAuNTkgKiAwLjYxNCArIDAuMTEgKiAxLjEwMTQgPSAwLjEyNDIgKyAwLjM2MjI2ICsgMC4x
MjExNTQgPSAwLjYwNzYxNAotICAgICAgICAgICAgbiA9IG1pbigwLjQxNCwgMC42MTQsIDEuMDE0
KSA9IDAuNDE0Ci0gICAgICAgICAgICB4ID0gbWF4KDAuNDE0LCAwLjYxNCwgMS4wMTQpID0gMS4w
MTQKLSAgICAgICAgICAgIHggPiAxLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gMC42MDc2MTQg
KyAoKCgwLjQxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3
NjE0KSkgPSAKLSAgICAgICAgICAgICAgICAgICAgID0gMC42MDc2MTQgKyAoKC0wLjE5MzYxNCAq
IDAuMzkyMzg2KSAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0IC0gKDAuMDc1OTcxNDIgLyAwLjQwNjM4
NikgPSAwLjYwNzYxNCAtIDAuMTg2OTQzOTkgPSAwLjQyMDY3MDAxCi0gICAgICAgICAgICAgICAg
Q2dyZWVuID0gMC42MDc2MTQgKyAoKCgwLjYxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQp
KSAvICgxLjAxNCAtIDAuNjA3NjE0KSkgPQotICAgICAgICAgICAgICAgICAgICAgICA9IDAuNjA3
NjE0ICsgKCgwLjAwMzM4NiAqIDAuMzkyMzg2KSAvIDAuNDA2Mzg2ID0gMC42MDc2MTQgKyAoMC4w
MDEzMjg2MiAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4wMDMyNjkzNSA9IDAuNjEwODgzMzUK
LSAgICAgICAgICAgICAgICBDYmx1ZSA9IDAuNjA3NjE0ICsgKCgoMS4wMTQgLSAwLjYwNzYxNCkg
KiAoMSAtIDAuNjA3NjE0KSkgLyAoMS4wMTQgLSAwLjYwNzYxNCkgPQotICAgICAgICAgICAgICAg
ICAgICAgID0gMC42MDc2MTQgKyAoKDAuNDA2Mzg2ICogMC4zOTIzODYpIC8gMC40MDYzODYpID0g
MC42MDc2MTQgKyAoMC4xNTk0NjAxOCAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4zOTIzODYw
MSA9IDEuMAotICAgICAgICAgICAgcmV0dXJuICgwLjQyLCAwLjYxLCAxLjApCi0KLSAgICBUaGlz
IHZhbHVlIGlzIGVxdWl2YWxlbnQgdG8gKDEwOCwgMTU3LCAyNTUpLCB3aGljaCBpcyB0aGUgZXhw
ZWN0ZWQgY29sb3IuCi0gICAgVGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90aGVyIHBv
cnRzIG1pZ2h0IGV4cGVyaWVuY2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBp
ZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48L2Rpdj4K
LSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxwaGEtYWxw
aGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLWx1
bWlub3NpdHktZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1pbm9zaXR5LWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkwOWFhYzMuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFy
YWJsZS1ibGVuZC1tb2RlLWx1bWlub3NpdHktZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDM2ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+
Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9w
IHdpdGggdGhlIGNvbG9yIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c3R5bGUgdHlwZT0idGV4
dC9jc3MiPgotICAgICAgICAvKiBUaGVyZSBhcmUgZXhhY3RseSB0aGUgY29sb3IgdmFsdWVzIHdl
IGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xpZ2h0bHkgZGlmZmVyZW50Ci0gICAg
ICAgICAgIGNvbG9yIHJlc3VsdC4gKi8KLSAgICAgICAgI3NvbGlkLXNvbGlkIHsKLSAgICAgICAg
ICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5OCwgMzMsIDApOwotICAgICAgICAgICAgd2lkdGg6
IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAj
YWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4NCwgMTcy
LCAxODQpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogcmdiKDIwMywgMTAxLCA0OSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAw
cHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICB9Ci0gICAgICAgICNhbHBo
YS1hbHBoYSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjEzLCAxODIsIDE3
NSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9
InNvbGlkLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1zb2xpZCI+PC9kaXY+Ci0g
ICAgPGRpdiBpZD0ic29saWQtYWxwaGEiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLWFscGhh
Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1p
bm9zaXR5Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtbHVtaW5vc2l0eS5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA1ZTk3YzAwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1p
bm9zaXR5Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMjggKzAsMCBAQAotPCFET0NUWVBFIEhU
TUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCB0aGF0IGJsZW5k
cyB0aGUgc291cmNlIGFuZCB0aGUgYmFja2Ryb3Agd2l0aCB0aGUgbHVtaW5vc2l0eSBibGVuZCBt
b2RlLjwvdGl0bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAg
ICAgICAgI3NvbGlkLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5
MCUsIDUwJSwgMzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhl
aWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGx1bWlub3NpdHkgc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4xIDAuMiAwLjQgMS4wKTsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEt
c29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwgMzAl
LCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbHVtaW5vc2l0eSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjIgMC40IDAuOCAxLjApOwotICAgICAgICB9Ci0gICAgICAgICNzb2xpZC1hbHBoYSB7
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoOTAlLCA1MCUsIDMwJSk7Ci0gICAg
ICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9t
aXgtY29sb3IuZnMnKSBsdW1pbm9zaXR5IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQg
MC44IDAuNSk7Ci0gICAgICAgIH0KLSAgICAgICAgI2FscGhhLWFscGhhIHsKLSAgICAgICAgICAg
IGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTAlLCA1MCUsIDMwJSwgMC41KTsKLSAgICAgICAgICAg
IHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xv
ci5mcycpIGx1bWlub3NpdHkgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41
KTsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBU
aGUgZm9sbG93aW5nIHByb29mIGFwcGxpZXMgdG8gdGhlIGZpcnN0IGNhc2UgKCNzb2xpZC1zb2xp
ZCkgd2hlcmUgYm90aCB0aGUgYmFja2Ryb3AgYW5kIHRoZQotICAgIHNvdXJjZSBhcmUgc29saWQu
Ci0KLSAgICBJbiB0aGlzIHRlc3QgdGhlIGZvbGxvd2luZyBjb21iaW5hdGlvbnMgYXJlIGFsc28g
dGVzdGVkOgotICAgICAgICBCYWNrZHJvcCB3aXRoIDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc29s
aWQgc291cmNlCi0gICAgICAgIFNvbGlkIGJhY2tkcm9wIGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0
aCAwLjUgYWxwaGEKLSAgICAgICAgQmFja2Ryb3Agd2l0aCAwLjUgYmxlbmRlZCB3aXRoIHNvdXJj
ZSB3aXRoIDAuNSBhbHBoYQotICAgIFRoZSB1bmRlcmxheWluZyBwcm9vZiBvZiB0aGUgYWJvdmUg
bWVudGlvbmVkIGNhc2VzIGlzIHRoZSBzYW1lOiB0aGUgY29sb3JzIGFyZSBwcmVtdWx0aXBsaWVk
Ci0gICAgYW5kIHRoZW4gYmxlbmRlZCB0b2dldGhlci4KLQotICAgIFRoZSBmaW5hbCBjb2xvciBv
ZiAjc29saWQtc29saWQgZGVwZW5kcyBvbiB0aGUgImx1bWlub3NpdHkiIGJsZW5kIG1vZGUsIHdo
aWNoIGlzIGEgbm9uLXNlcGFyYWJsZQotICAgIGJsZW5kIG1vZGUuIFRoaXMgbWVhbnMgdGhhdCBj
b2xvcnMgYXJlIGJsZW5kZWQgdG9nZXRoZXIgYXMgYSB3aG9sZSwgbm90IGNvbXBvbmVudCBieSBj
b21wb25lbnQuCi0KLSAgICBUaGUgZm9ybXVsYSBmb3IgdGhpcyBibGVuZCBtb2RlIGlzOgotICAg
ICAgICBDciA9IEIoQ2IsIENzKSA9IFNldEx1bShDYiwgTHVtKENzKSkKLQotICAgIFdpdGg6Ci0g
ICAgICAgIENyOiB0aGUgcmVzdWx0aW5nIGNvbG9yCi0gICAgICAgIENiOiB0aGUgYmFja2Ryb3Ag
Y29sb3IsIHdoaWNoIGlzICNzb2xpZC1zb2xpZCAoIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9y
IikKLSAgICAgICAgQ3M6IHRoZSBzb3VyY2UgY29sb3IsIHdoaWNoIGlzIG1peF9jb2xvcgotICAg
ICAgICBMdW0oQ3MpOiB0aGUgbHVtaW5vc2l0eSBvZiBDcy4gTHVtaW5vc2l0eSBmb3IgY29sb3Ig
QyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBieQotICAgICAgICAgICBMdW0oQyk6IDAuMyAqIENyZWQg
KyAwLjU5ICogQ2dyZWVuICsgMC4xMSAqIENibHVlCi0gICAgICAgIFNldEx1bShDYiwgTHVtKENz
KSk6IHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdGhlIGx1bWlub3NpdHkuCi0KLSAgICBUaGUgZnVu
Y3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5IGwgb24gdGhlIGNvbG9yIEMgaXMgZ2VuZXJh
bGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgU2V0THVtKEMsIGwpCi0gICAgICAgICAgICBkID0g
bCAtIEx1bShDKQotICAgICAgICAgICAgQ3JlZCA9IENyZWQgKyBkCi0gICAgICAgICAgICBDZ3Jl
ZW4gPSBDZ3JlZW4gKyBkCi0gICAgICAgICAgICBDYmx1ZSA9IENibHVlICsgZAotICAgICAgICAg
ICAgcmV0dXJuIENsaXBDb2xvcihDKQotCi0gICAgQXQgdGhpcyBwb2ludCB0aGUgY29sb3IgQyBo
YXMgdG8gYmUgY2xpcHBlZCBiZXR3ZWVuIFswLi4xXSAgYnkgdGhlIENsaXBDb2xvciBmdW5jdGlv
biwgd2hpY2ggaXMKLSAgICBnZW5lcmFsbHkgZGVmaW5lZCBieToKLQotICAgICAgICBDbGlwQ29s
b3IoQykKLSAgICAgICAgICAgIGwgPSBMdW0oQykKLSAgICAgICAgICAgIG4gPSBtaW4oQ3JlZCwg
Q2dyZWVuLCBDYmx1ZSkKLSAgICAgICAgICAgIHggPSBtYXgoQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkK
LSAgICAgICAgICAgIGlmIG4gPCAwLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gbCArICgoKENy
ZWQgLSBsKSAqIGwpIC8gKGwgLSBuKSkKLSAgICAgICAgICAgICAgICBDZ3JlZW4gPSBsICsgKCgo
Q2dyZWVuIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2JsdWUgPSBsICsg
KCgoQ2JsdWUgLSBsKSAqIGwpIC8gKGwgLSBuKSkKLSAgICAgICAgICAgIGlmIHggPiAxLjAKLSAg
ICAgICAgICAgICAgICBDcmVkID0gbCArICgoKENyZWQgLSBsKSAqICgxIC0gbCkpIC8gKHggLSBs
KSkKLSAgICAgICAgICAgICAgICBDZ3JlZW4gPSBsICsgKCgoQ2dyZWVuIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICAgICAgQ2JsdWUgPSBsICsgKCgoQ2JsdWUgLSBsKSAq
ICgxIC0gbCkpIC8gKHggLSBsKSkKLSAgICAgICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlz
IHRlc3QgY2FzZToKLSAgICAgICAgTHVtKENiKSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAw
LjExICogMC4zCi0gICAgICAgIEx1bShDYikgPSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAg
ICBMdW0oQ2IpID0gMC41OTgKLQotICAgICAgICBMdW0oQ3MpID0gMC4zICogMC4xICsgMC41OSAq
IDAuMiArIDAuMTEgKiAwLjQKLSAgICAgICAgTHVtKENzKSA9IDAuMDMgKyAwLjExOCArIDAuMDQ0
Ci0gICAgICAgIEx1bShDcykgPSAwLjE5MgotCi0gICBDciA9IFNldEx1bShDYiwgMC4xOTIpCi0g
ICAgICAgIGQgPSAwLjE5MiAtIDAuNTk4Ci0gICAgICAgIGQgPSAwLjQwNgotICAgICAgICBDcmVk
ID0gMC45IC0gMC40MDYgPSAwLjQ5NAotICAgICAgICBDZ3JlZW4gPSAwLjUgLSAwLjQwNiA9IDAu
MDk0Ci0gICAgICAgIENibHVlID0gMC4zIC0gMC40MDYgPSAtMC4xMDYKLSAgICAgICAgcmV0dXJu
IENsaXBDb2xvcigwLjQ5NCwgMC4wOTQsIC0wLjEwNikKLQotICAgIENsaXBDb2xvcigwLjQ5NCwg
MC4wOTQsIC0wLjEwNikKLSAgICAgICAgbCA9IDAuNDk0ICogMC4zICsgMC4wOTQgKiAwLjU5IC0g
MC4xMDYgKiAwLjExID0gMC4xNDgyICsgMC4wNTU0NiAtIDAuMDExNjYgPSAwLjE5MgotICAgICAg
ICBuID0gbWluKDAuNDk0LCAwLjA5NCwgLTAuMTA2KSA9IC0wLjEwNgotICAgICAgICB4ID0gbWF4
KDAuNDk0LCAwLjA5NCwgLTAuMTA2KSA9IDAuNDk0Ci0gICAgICAgIG4gPCAwLjAKLSAgICAgICAg
ICAgIENyZWQgPSAwLjE5MiArICgoKDAuNDk0IC0gMC4xOTIpICogMC4xOTIpIC8gKDAuMTkyICsg
MC4xMDYpKSA9Ci0gICAgICAgICAgICAgICAgID0gMC4xOTIgKyAoMC4zMDIgKiAwLjE5MikgLyAw
LjI5OCA9IDAuMTkyICsgKDAuMDU3OTg0IC8gMC4yOTgpID0gMC4xOTIgKyAwLjE5NDU3NzE4ID0g
MC4zODY1NzcxOAotICAgICAgICAgICAgQ2dyZWVuID0gMC4xOTIgKyAoKCgwLjA5NCAtIDAuMTky
KSAqIDAuMTkyKSAvICgwLjE5MiArIDAuMTA2KSkgPQotICAgICAgICAgICAgICAgICAgID0gMC4x
OTIgKyAoLTAuMDk4ICogMC4xOTIpIC8gMC4yOTggPSAwLjE5MiAtICgwLjAxODgxNiAvIDAuMjk4
KSA9IDAuMTkyIC0gMC4wNjMxNDA5NCA9IDAuMTI4ODU5MDYKLSAgICAgICAgICAgIENibHVlID0g
MC4xOTIgKyAoKCgtMC4xMDYgLSAwLjE5MikgKiAwLjE5MikgLyAoMC4xOTIgKyAwLjEwNikpID0K
LSAgICAgICAgICAgICAgICAgID0gMC4xOTIgKyAoLTAuMjk4ICogMC4xOTIpIC8gMC4yOTggPSAw
LjE5MiAtIDAuMTkyID0gMC4wCi0gICAgICAgIHJldHVybiAoMC4zODY1NzcxOCwgMC4xMjg4NTkw
NiwgMC4wMCkKLQotICAgIFRoaXMgdmFsdWUgaXMgZXF1aXZhbGVudCB0byAoOTgsIDMzLCAwKSwg
d2hpY2ggaXMgdGhlIGV4cGVjdGVkIGNvbG9yLgotICAgIFRoaXMgaXMgdGhlIGV4YWN0IGNvbG9y
IHZhbHVlLCBvdGhlciBwb3J0cyBtaWdodCBleHBlcmllbmNlIHNsaWdodCBkaWZmZXJlbmNlcy4K
LS0tPgotICAgIDxkaXYgaWQ9InNvbGlkLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBo
YS1zb2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0ic29saWQtYWxwaGEiPjwvZGl2PgotICAgIDxk
aXYgaWQ9ImFscGhhLWFscGhhIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFi
bGUtYmxlbmQtbW9kZS1zYXR1cmF0aW9uLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtc2F0
dXJhdGlvbi1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMWQ0
OWM4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1zYXR1cmF0aW9uLWV4cGVjdGVkLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxh
bmc9ImVuIj4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgYmxlbmRzIHRoZSBzb3VyY2Ug
YW5kIHRoZSBiYWNrZHJvcCB3aXRoIHRoZSBzYXR1cmF0aW9uIGJsZW5kIG1vZGUuPC90aXRsZT4K
LSAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAvKiBUaGVzZSBhcmUgZXhhY3Rs
eSB0aGUgY29sb3IgdmFsdWVzIHdlIGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xp
Z2h0IGRpZmZlcmVudAotICAgICAgICAgICBjb2xvciByZXN1bHQuICovCi0gICAgICAgICNzb2xp
ZC1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTkxLCAxNDEsIDEx
NSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiByZ2IoMTk4LCAxODUsIDE5OCk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICB9Ci0gICAgICAgICNzb2xpZC1h
bHBoYSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjMwLCAxMjgsIDc2KTsK
LSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0g
ICAgICAgIH0KLSAgICAgICAgI2FscGhhLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigyMjAsIDE4OSwgMTgyKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFk
PgotPGJvZHk+Ci0gICAgPGRpdiBpZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9
ImFscGhhLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0g
ICAgPGRpdiBpZD0iYWxwaGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNl
cGFyYWJsZS1ibGVuZC1tb2RlLXNhdHVyYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1zYXR1cmF0
aW9uLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFjMzI4YmIuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNl
cGFyYWJsZS1ibGVuZC1tb2RlLXNhdHVyYXRpb24uaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEz
NyArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9ImVuIj4KLTxoZWFkPgotICAg
IDx0aXRsZT5UZXN0IHRoYXQgYmxlbmRzIHRoZSBzb3VyY2UgYW5kIHRoZSBiYWNrZHJvcCB3aXRo
IHRoZSBzYXR1cmF0aW9uIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5
bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6
IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykg
c2F0dXJhdGlvbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjEgMC4yIDAuNCAxLjApOwotICAg
ICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2JhKDkwJSwgNTAlLCAzMCUsIDAuNSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBzYXR1cmF0
aW9uIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDEuMCk7Ci0gICAgICAgIH0K
LSAgICAgICAgI3NvbGlkLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJn
Yig5MCUsIDUwJSwgMzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAg
IGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIHNhdHVyYXRpb24gc291cmNlLWF0
b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41KTsKLSAgICAgICAgfQotICAgICAgICAjYWxw
aGEtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwg
MzAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0
OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgc2F0dXJhdGlvbiBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjIgMC40IDAuOCAwLjUpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVh
ZD4KLTxib2R5PgotPCEtLQotICAgIFRoZSBmb2xsb3dpbmcgcHJvb2YgYXBwbGllcyB0byB0aGUg
Zmlyc3QgY2FzZSAoI3NvbGlkLXNvbGlkKSB3aGVyZSBib3RoIHRoZSBiYWNrZHJvcCBhbmQgdGhl
Ci0gICAgc291cmNlIGFyZSBzb2xpZC4KLQotICAgIEluIHRoaXMgdGVzdCB0aGUgZm9sbG93aW5n
IGNvbWJpbmF0aW9ucyBhcmUgYWxzbyB0ZXN0ZWQ6Ci0gICAgICAgIEJhY2tkcm9wIHdpdGggMC41
IGFscGhhIGJsZW5kZWQgd2l0aCBzb2xpZCBzb3VyY2UKLSAgICAgICAgU29saWQgYmFja2Ryb3Ag
YmxlbmRlZCB3aXRoIHNvdXJjZSB3aXRoIDAuNSBhbHBoYQotICAgICAgICBCYWNrZHJvcCB3aXRo
IDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc291cmNlIHdpdGggMC41IGFscGhhCi0gICAgVGhlIHVu
ZGVybHlpbmcgcHJvb2Ygb2YgdGhlIGFib3ZlIG1lbnRpb25lZCBjYXNlcyBpcyB0aGUgc2FtZTog
dGhlIGNvbG9ycyBhcmUgcHJlbXVsdGlwbGllZAotICAgIGFuZCB0aGVuIGJsZW5kZWQgdG9nZXRo
ZXIuCi0KLSAgICBUaGUgZmluYWwgY29sb3Igb2YgI3NvbGlkLXNvbGlkIGRlcGVuZHMgb24gdGhl
ICJzYXR1cmF0aW9uIiBibGVuZCBtb2RlLCB3aGljaCBpcyBhIG5vbi1zZXBhcmFibGUKLSAgICBi
bGVuZCBtb2RlLiBUaGlzIG1lYW5zIHRoYXQgY29sb3JzIGFyZSBibGVuZGVkIHRvZ2V0aGVyIGFz
IGEgd2hvbGUsIG5vdCBjb21wb25lbnQgYnkgY29tcG9uZW50LgotCi0gICAgVGhlIGZvcm11bGEg
Zm9yIHRoaXMgYmxlbmQgbW9kZSBpczoKLSAgICAgICAgQ3IgPSBCKENiLCBDcykgPSBTZXRMdW0o
U2V0U2F0KENiLCBTYXQoQ3MpKSwgTHVtKENiKSkKLQotICAgIFdpdGg6Ci0gICAgICAgIENyOiB0
aGUgcmVzdWx0aW5nIGNvbG9yCi0gICAgICAgIENiOiB0aGUgYmFja2Ryb3AgY29sb3IsIHdoaWNo
IGlzICNzb2xpZC1zb2xpZCAoIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9yIikKLSAgICAgICAg
Q3M6IHRoZSBzb3VyY2UgY29sb3IsIHdoaWNoIGlzIG1peF9jb2xvcgotICAgICAgICBTYXQoQ2Ip
OiB0aGUgc2F0dXJhdGlvbiBvZiBDYi4gU2F0dXJhdGlvbiBmb3IgY29sb3IgQyBpcyBnZW5lcmFs
bHkgZGVmaW5lZCBieQotICAgICAgICAgICBTYXQoQyk6IG1heChDcmVkLCBDZ3JlZW4sIENibHVl
KSAtIG1pbihDcmVkLCBDZ3JlZW4sIENibHVlKQotICAgICAgICBMdW0oQ3MpOiB0aGUgbHVtaW5v
c2l0eSBvZiBDcy4gTHVtaW5vc2l0eSBmb3IgY29sb3IgQyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBi
eQotICAgICAgICAgICBMdW0oQyk6IDAuMyAqIENyZWQgKyAwLjU5ICogQ2dyZWVuICsgMC4xMSAq
IENibHVlCi0gICAgICAgIFNldFNhdChDYiwgU2F0KENzKSk6IHRoZSBmdW5jdGlvbiB0aGF0IHNl
dHMgdGhlIHNhdHVyYXRpb24KLSAgICAgICAgU2V0THVtKFNldFNhdChDYiwgU2F0KENzKSksIEx1
bShDYikpOiB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhl
IGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdl
bmVyYWxseSBkZWZpbmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAg
ZCA9IGwgLSBMdW0oQykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAg
Q2dyZWVuID0gQ2dyZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAg
ICAgICAgIHJldHVybiBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9y
IEMgaGFzIHRvIGJlIGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVu
Y3Rpb24sIHdoaWNoIGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xp
cENvbG9yKEMpCi0gICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENy
ZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2Js
dWUpCi0gICAgICAgICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAo
KChDcmVkIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCAr
ICgoKENncmVlbiAtIGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0g
bCArICgoKENibHVlIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4w
Ci0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4
IC0gbCkpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEg
LSBsKSkgLyAoeCAtIGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0g
bCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgVGhl
IGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgc2F0dXJhdGlvbiBzIG9uIHRoZSBjb2xvciBDIGlzIGdl
bmVyYWxseSBkZWZpbmVkIGJ5OgotCi0gICAgICAgIFNldFNhdChDLCBzKQotICAgICAgICAgICAg
aWYoQ21heCA+IENtaW4pCi0gICAgICAgICAgICAgICAgQ21pZCA9ICgoKENtaWQgLSBDbWluKSAq
IHMpIC8gKENtYXggLSBDbWluKSkKLSAgICAgICAgICAgICAgICBDbWF4ID0gcwotICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgICAgIENtaWQgPSBDbWF4ID0gMAotICAgICAgICAgICAgQ21p
biA9IDAKLSAgICAgICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlzIHRlc3QgY2FzZToKLSAg
ICAgICAgTHVtKENiKSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAwLjExICogMC4zCi0gICAg
ICAgIEx1bShDYikgPSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAgICBMdW0oQ2IpID0gMC41
OTgKLQotICAgICAgICBTYXQoQ3MpID0gbWF4KDAuMSwgMC4yLCAwLjQpIC0gbWluKDAuMSwgMC4y
LCAwLjQpCi0gICAgICAgIFNhdChDcykgPSAwLjQgLSAwLjEKLSAgICAgICAgU2F0KENzKSA9IDAu
MwotCi0gICAgICAgIEZvciB0aGUgc2FrZSBvZiBicmV2aXR5IHRoZSByZXN1bHQgb2YgdGhpcyBj
b21wdXRhdGlvbiBpcyBjYWxsZWQgQ3QKLSAgICAgICAgQ3QgPSBTZXRTYXQoQ2IsIFNhdChDcykp
Ci0gICAgICAgICAgICAwLjkgPiAwLjMKLSAgICAgICAgICAgICAgICBDbWlkID0gKCgoMC41IC0g
MC4zKSAqIDAuMykgLyAoMC45IC0gMC4zKSA9IDAuMiAqIDAuMyAvIDAuNiA9IDAuMDYgLyAwLjYg
PSAwLjEwCi0gICAgICAgICAgICAgICAgQ21heCA9IDAuMwotICAgICAgICAgICAgQ21pbiA9IDAK
LSAgICAgICAgICAgIHJldHVybiAoMC4zLCAwLjEwLCAwLjApCi0KLSAgICBDciA9IFNldEx1bShD
dCwgMC41OTgpCi0gICAgICAgIGQgPSAwLjU5OCAtICgwLjMgKiAwLjMgKyAwLjU5ICogMC4xMCAr
IDAuMTEgKiAwLjApID0gMC41OTggLSAoMC4wOSArIDAuMDU5KSA9IDAuNTk4IC0gMC4xNDkKLSAg
ICAgICAgZCA9IDAuNDQ5Ci0gICAgICAgIENyZWQgPSAwLjMgKyAwLjQ0OSA9IDAuNzQ5Ci0gICAg
ICAgIENncmVlbiA9IDAuMTAgKyAwLjQ0OSA9IDAuNTQ5Ci0gICAgICAgIENibHVlID0gMC4wICsg
MC40NDkgPSAwLjQ0OQotICAgICAgICByZXR1cm4gKDAuNzQ5LCAwLjU0OSwgMC40NDkpCi0KLSAg
ICBUaGlzIHZhbHVlIGlzIGVxdWl2YWxlbnQgdG8gKDE5MSwgMTQwLCAxMTUpLCB3aGljaCBpcyB0
aGUgZXhwZWN0ZWQgY29sb3IuCi0gICAgVGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90
aGVyIHBvcnRzIG1pZ2h0IGV4cGVyaWVuY2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAg
PGRpdiBpZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48
L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxw
aGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1dGVkLXN0
eWxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDUwZGEwYTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1dGVkLXN0eWxlLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDUwOCArMCwwIEBACi1UZXN0cyB0aGUgY29t
cHV0ZWQgc3R5bGUgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRl
ciBwcm9wZXJ0eS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotQ3VzdG9tIHdp
dGggdmVydGV4IHNoYWRlciA6IGN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMSAxKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFk
ZXIpIG5vbmUsIDEgMSknCi0KLUN1c3RvbSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxl
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3Rv
X18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmls
dGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJS
dWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggYm90aCBzaGFkZXJzIDogY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hh
ZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicK
LVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUg
aXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFz
ZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZp
bHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90
b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdD
U1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIG5vcm1hbCA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwpKQotUEFTUyByZW1vdmVCYXNl
VVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwg
MSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxp
c3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3Ip
IGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwg
MSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIG11bHRpcGx5
IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5KSkKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IHNv
dXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NT
U1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlz
ICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
Y29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVs
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmls
dGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNz
c1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkg
c291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5k
IG1vZGUgc2NyZWVuIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNjcmVl
bikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
Y3JlZW4gc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
Y3JlZW4gc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGJsZW5kIG1vZGUgb3ZlcmxheSA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBvdmVybGF5KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIG92ZXJsYXkgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBvdmVybGF5IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1
bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRhcmtlbiA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBkYXJrZW4pKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgZGFya2VuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgZGFya2VuIHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGgg
bWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGxpZ2h0ZW4gOiBjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5
bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBsaWdodGVuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBt
aXgodXJsKGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbiBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBjb2xvci1kb2RnZSA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1kb2RnZSkpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1kb2RnZSBzb3Vy
Y2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAn
Q1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNv
bnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUu
bGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NU
ZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvbG9yLWRvZGdl
IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVu
ZCBtb2RlIGNvbG9yLWJ1cm4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
Y29sb3ItYnVybikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBjb2xvci1idXJuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1
Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY29sb3ItYnVybiBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRo
IG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBoYXJkLWxpZ2h0IDogY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIGhhcmQtbGlnaHQpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZp
bHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaGFyZC1saWdodCBzb3VyY2UtYXRvcCksIDEg
MSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGhhcmQtbGlnaHQgc291cmNlLWF0b3Ap
LCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgc29mdC1s
aWdodCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb2Z0LWxpZ2h0KSkK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvZnQt
bGlnaHQgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
b2Z0LWxpZ2h0IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9u
IGFuZCBibGVuZCBtb2RlIGRpZmZlcmVuY2UgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50
LnNoYWRlcikgZGlmZmVyZW5jZSkpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBkaWZmZXJlbmNlIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxp
c3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxl
Lm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00K
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgZGlmZmVyZW5jZSBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBleGNsdXNpb24gOiBjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZXhjbHVzaW9uKSkKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGV4Y2x1c2lvbiBzb3VyY2UtYXRv
cCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGV4Y2x1c2lvbiBzb3VyY2Ut
YXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBo
dWUgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaHVlKSkKLVBBU1MgcmVt
b3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSBzb3VyY2UtYXRv
cCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSBzb3VyY2UtYXRvcCks
IDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBzYXR1cmF0
aW9uIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNhdHVyYXRpb24pKQot
UEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2F0dXJh
dGlvbiBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNh
dHVyYXRpb24gc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24g
YW5kIGJsZW5kIG1vZGUgY29sb3IgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRl
cikgY29sb3IpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgY29sb3Igc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hh
ZGVyKSBjb2xvciBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlv
biBhbmQgYmxlbmQgbW9kZSBsdW1pbm9zaXR5IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIGx1bWlub3NpdHkpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbHVtaW5vc2l0eSBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVM
aXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVs
ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9N
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIGx1bWlub3NpdHkgc291cmNlLWF0b3ApLCAxIDEpJwotCi1D
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgY2xlYXIg
OiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY2xlYXIpKQotUEFTUyByZW1v
dmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGNsZWFyKSwg
MSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxp
c3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3Ip
IGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGNsZWFyKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGNv
cHkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29weSkpCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgY29weSks
IDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBjb3B5KSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNv
dXJjZS1vdmVyIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1v
dmVyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG5vcm1hbCBzb3VyY2Utb3ZlciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG5vcm1hbCBzb3VyY2Utb3ZlciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBh
bmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1vdmVyIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLW92ZXIpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGRlc3RpbmF0aW9u
LW92ZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4
dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgZGVzdGlu
YXRpb24tb3ZlciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSBzb3VyY2UtaW4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50
LnNoYWRlcikgc291cmNlLWluKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtaW4pLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNlLWluKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4
IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGRlc3RpbmF0aW9uLWluIDogY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWluKSkKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBkZXN0
aW5hdGlvbi1pbiksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBp
cyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
LmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1
bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5j
c3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBk
ZXN0aW5hdGlvbi1pbiksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxw
aGEgY29tcG9zaXRpbmcgbW9kZSBzb3VyY2Utb3V0IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIHNvdXJjZS1vdXQpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxl
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1vdXQpLCAxIDEpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNlLW91dCksIDEgMSknCi0KLUN1c3RvbSB3
aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1v
dXQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tb3V0
KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5v
cm1hbCBkZXN0aW5hdGlvbi1vdXQpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBub3JtYWwgZGVzdGluYXRpb24tb3V0KSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNvdXJjZS1hdG9wIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1hdG9wKSkKLVBBU1MgcmVtb3ZlQmFzZVVS
TChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEg
MSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEg
MSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9k
ZSBkZXN0aW5hdGlvbi1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IGRlc3RpbmF0aW9uLWF0b3ApKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgbm9ybWFsIGRlc3RpbmF0aW9uLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgZGVzdGluYXRpb24tYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSB4b3IgOiBj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgeG9yKSkKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCB4b3IpLCAxIDEpJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3Rv
dHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NT
U1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgeG9yKSwgMSAxKScKLQotQ3VzdG9t
IHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0LCBhbHBoYSBjb21wb3NpdGlu
ZyBtb2RlIHNlY29uZCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0
aXBseSBjbGVhcikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBtdWx0aXBseSBjbGVhciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIG11bHRpcGx5IGNsZWFyKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFu
ZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGZpcnN0LCBibGVuZCBtb2RlIHNlY29uZCA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVh
ciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSwg
MSAxKScKLQotQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciBhbmQgbWl4IGZ1bmN0aW9uIDogY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKQotUEFTUyBy
ZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVy
JykpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBub3JtYWwgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRo
IG1peCBmdW5jdGlvbiBhbmQgbWVzaCBzaXplIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpKSwgMTApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBub3JtYWwgc291cmNlLWF0b3ApLCAxMCAxMCknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEwIDEwKScKLQotQ3VzdG9tIHdpdGgg
bWVzaCBzaXplIDogY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApCi1QQVNTIHJlbW92ZUJh
c2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMg
J2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMTAgMTApJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRl
cikgbm9uZSwgMTAgMTApJwotCi1DdXN0b20gd2l0aCBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmls
dGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIDIwKScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIDogY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSwgMTApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9u
ZSwgMTAgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMTAgMTApJwotCi1DdXN0b20gd2l0
aCBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAg
MjApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKScKLQotQ3VzdG9tIHdpdGggZGV0
YWNoZWQgbWVzaCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRhY2hlZCkK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSBkZXRh
Y2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSBkZXRhY2hlZCknCi0KLUN1c3Rv
bSB3aXRoIGRldGFjaGVkIGFuZCBtZXNoIHNpemUgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUu
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIDIwIGRldGFjaGVkKScKLQotQ3VzdG9tIHdpdGggZGVmYXVsdCBmaWx0ZXItYm94IDog
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmls
dGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCAxIDEpJwotCi1DdXN0b20gd2l0aCBpbnRlZ2VyIHBhcmFtZXRlcnMgOiBjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNykK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEg
MSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEgMSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi0KLUN1c3RvbSB3
aXRoIGZsb2F0IHBhcmFtZXRlcnMgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
cDEgMS4xLCBwMiAyLjIgMy4zLCBwMyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KQot
UEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSAx
LjEsIHAyIDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4yIDYuMyA3LjQpJwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlw
ZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1Zh
bHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1
YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NV
U1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQu
MSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCknCi0KLUN1c3RvbSB3aXRoIHRyYW5zZm9ybSB0cmFu
c2xhdGUgcGFyYW1ldGVyIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIHRy
YW5zbGF0ZSgxMHB4LCAxMHB4KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDEsIDAsIDAsIDEsIDEwLCAxMCkpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVy
bChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIG1hdHJpeCgxLCAwLCAwLCAxLCAxMCwgMTApKScK
LQotQ3VzdG9tIHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtIHBhcmFtZXRlcnMgOiBjdXN0b20obm9u
ZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgdHJhbnNsYXRlKDEwcHgsIDEwcHgpLCBwMiBzY2Fs
ZSgyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEg
MSwgcDEgbWF0cml4KDEsIDAsIDAsIDEsIDEwLCAxMCksIHAyIG1hdHJpeCgyLCAwLCAwLCAyLCAw
LCAwKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDEsIDAsIDAs
IDEsIDEwLCAxMCksIHAyIG1hdHJpeCgyLCAwLCAwLCAyLCAwLCAwKSknCi0KLUN1c3RvbSB3aXRo
IG11bHRpcGxlIHRyYW5zZm9ybXMgc2luZ2xlIHBhcmFtZXRlciA6IGN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBweCkgc2NhbGUoMikpCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIG1hdHJp
eCgyLCAwLCAwLCAyLCAxMCwgMTApKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3Rv
X18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmls
dGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJS
dWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBw
MSBtYXRyaXgoMiwgMCwgMCwgMiwgMTAsIDEwKSknCi0KLUN1c3RvbSB3aXRoIHBlcmNlbnQgdHJh
bnNmb3JtIHBhcmFtZXRlciA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0
cmFuc2xhdGUoNTAlLCA1MCUpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMjUwLCAzMDApKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMjUwLCAzMDAp
KScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyA6IGN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAzIDQg
NSwgcDQgNCA1IDYgNykKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQg
NSA2IDcpJwotCi1NdWx0aXBsZSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGdyYXlzY2FsZSgpIGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpCi1QQVNTIHJlbW92ZUJhc2VV
UkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2dy
YXlzY2FsZSgxKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSBzZXBpYSgx
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMwot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9HUkFZU0NBTEUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdn
cmF5c2NhbGUoMSknCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3Nz
VGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9T
RVBJQQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ3NlcGlhKDEpJwot
Ci1DdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2YgdGhyZWUgdmFsdWVzIDogY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEsIDIsIDMpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLCAyLCAz
KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMSwgMiwgMykpJwot
Ci1DdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2YgdGhyZWUgZmxvYXRpbmcgcG9pbnQgdmFs
dWVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEuNjE4MCwg
LTIuNzE4MiwgMy4xNDE1KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMS42MTgsIC0yLjcxODIsIDMuMTQxNSkpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVy
bChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDEuNjE4LCAtMi43MTgyLCAzLjE0MTUp
KScKLQotQ3VzdG9tIHdpdGggYXJyYXkoKSBtYWRlIHVwIG9mIHNldmVyYWwgZmxvYXRpbmcgcG9p
bnQgYW5kIGludGVnZXIgdmFsdWVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciks
IGExIGFycmF5KDEuNjE4MCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLjYxOCwg
MSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAx
LCBhMSBhcnJheSgxLjYxOCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKScKLQotQ3VzdG9tIHdp
dGggYXJyYXkoKSBtYWRlIHVwIG9mIDI0NyBkaWZmZXJlbnQgZmxvYXRpbmcgcG9pbnQgdmFsdWVz
IDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDYuMDAsIDM4LjU4
LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEs
IDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAy
MS45NCwgNjIuNzAsIDc3Ljk2LCA2Ny4yNywgMi43NSwgMjguMTYsIDguODgsIDExLjYxLCAzNC44
OSwgNDUuNzUsIDU0LjU1LCAzNS4wNCwgNi4xMywgNjkuNjgsIDgxLjIxLCA0OS40NCwgNTQuNzQs
IDI2Ljc0LCA5MS40OSwgNjguMjAsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44Nywg
NzEuNzMsIDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAu
NDgsIDgxLjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4y
NiwgMzQuNjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUs
IDM1LjAyLCAzOS4wMCwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwg
MjcuNzIsIDI4LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5
OC40NSwgODcuNTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMx
LjczLCAyLjkwLCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIs
IDUzLjk2LCAzNS4wNiwgNjcuNTAsIDc2LjYyLCAzNS4wMiwgMS42MiwgMTMuMDUsIDMzLjU5LCAy
Ni44OSwgMzYuOTQsIDc0LjEzLCA5NS4wOSwgNTYuODcsIDQ2LjAxLCAxMS45NCwgMTIuOTIsIDQ4
Ljg4LCAxMS4wMywgMjQuODAsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAu
MzUsIDQxLjEwLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUwLCA4OC40MSwgOTAuMzQs
IDk3LjYyLCA1OC43MCwgMjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwg
OTEuMjIsIDc4LjIxLCA2Mi4zMCwgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5
Ny40MiwgOTYuNDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIwLCAyNi42NSwgNzgu
MzksIDk1LjI2LCA2Ni44MCwgMzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3
LCA2MS4wMSwgOTUuNjgsIDguNTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNDAsIDEyLjM1LCA5
OS4zOSwgNS44MCwgNjguMTAsIDczLjg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4w
OCwgNTQuNDUsIDg3LjY0LCAzNi4xNCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQw
LCA1LjkwLCAxNS43MCwgMTAuODgsIDU1LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywg
NjAuMzAsIDQuMzIsIDcuMDUsIDMuMzQsIDkuODcsIDY0LjUxLCA0LjYwLCA1NC4xNiwgNDguODAs
IDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgsIDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5
My43MCwgMjMuNzksIDg5LjU3LCAxNC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5
LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcu
NzUsIDQxLjY1LCA2Mi4zNSwgOTAuNDAsIDQwLjc3LCA1My45MywgODAuMjMsIDg0LjQ5LCAyMC4x
OCwgNDUuMzYsIDI2LjAyLCA5My43MiwgNjUuNTQsIDMyLjg2KSkKLVBBU1MgcmVtb3ZlQmFzZVVS
TChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoNiwgMzguNTgsIDQw
LjE0LCAzNC4wMywgODMuMzMsIDI0LjE4LCA2OC4zNywgMTUuODcsIDU2LjU2LCA3My4yMSwgOTku
MDUsIDI0LjY0LCA2LjM5LCA2OS4zNCwgOTEuMTksIDI3Ljk4LCAzNy41MiwgNjAuNzEsIDIxLjk0
LCA2Mi43LCA3Ny45NiwgNjcuMjcsIDIuNzUsIDI4LjE2LCA4Ljg4LCAxMS42MSwgMzQuODksIDQ1
Ljc1LCA1NC41NSwgMzUuMDQsIDYuMTMsIDY5LjY4LCA4MS4yMSwgNDkuNDQsIDU0Ljc0LCAyNi43
NCwgOTEuNDksIDY4LjIsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44NywgNzEuNzMs
IDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAuNDgsIDgx
LjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4yNiwgMzQu
NjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUsIDM1LjAy
LCAzOSwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwgMjcuNzIsIDI4
LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5OC40NSwgODcu
NTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMxLjczLCAyLjks
IDguMjMsIDkzLjc0LCAzMS4yNiwgODQuNzMsIDYuNDgsIDQxLjk2LCA3NS43MiwgNTMuOTYsIDM1
LjA2LCA2Ny41LCA3Ni42MiwgMzUuMDIsIDEuNjIsIDEzLjA1LCAzMy41OSwgMjYuODksIDM2Ljk0
LCA3NC4xMywgOTUuMDksIDU2Ljg3LCA0Ni4wMSwgMTEuOTQsIDEyLjkyLCA0OC44OCwgMTEuMDMs
IDI0LjgsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAuMzUsIDQxLjEsIDUu
MzEsIDQzLjk2LCA5LjAyLCA5Mi4zMiwgMzQuNSwgODguNDEsIDkwLjM0LCA5Ny42MiwgNTguNywg
MjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwgOTEuMjIsIDc4LjIxLCA2
Mi4zLCA2MC45MywgMzMuMjYsIDE2LjEzLCA5NS42MSwgNzguNjIsIDk3LjQyLCA5Ni40MiwgMzgu
MDQsIDguNDksIDQ1LjQ3LCA2OC43MywgMTguMiwgMjYuNjUsIDc4LjM5LCA5NS4yNiwgNjYuOCwg
MzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3LCA2MS4wMSwgOTUuNjgsIDgu
NTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNCwgMTIuMzUsIDk5LjM5LCA1LjgsIDY4LjEsIDcz
Ljg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4wOCwgNTQuNDUsIDg3LjY0LCAzNi4x
NCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQsIDUuOSwgMTUuNywgMTAuODgsIDU1
LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywgNjAuMywgNC4zMiwgNy4wNSwgMy4zNCwg
OS44NywgNjQuNTEsIDQuNiwgNTQuMTYsIDQ4LjgsIDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgs
IDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5My43LCAyMy43OSwgODkuNTcsIDE0Ljg0LCA3
OS41OCwgNjIuMjksIDU4Ljc2LCAyOS40MywgMTkuMTYsIDQ0LjQ3LCAzOC4zMSwgNDQuNzcsIDQy
LjY2LCA4OC44NSwgNzQuOTYsIDI0LjA3LCAzNy43NSwgNDEuNjUsIDYyLjM1LCA5MC40LCA0MC43
NywgNTMuOTMsIDgwLjIzLCA4NC40OSwgMjAuMTgsIDQ1LjM2LCAyNi4wMiwgOTMuNzIsIDY1LjU0
LCAzMi44NikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDYsIDM4
LjU4LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMu
MjEsIDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcx
LCAyMS45NCwgNjIuNywgNzcuOTYsIDY3LjI3LCAyLjc1LCAyOC4xNiwgOC44OCwgMTEuNjEsIDM0
Ljg5LCA0NS43NSwgNTQuNTUsIDM1LjA0LCA2LjEzLCA2OS42OCwgODEuMjEsIDQ5LjQ0LCA1NC43
NCwgMjYuNzQsIDkxLjQ5LCA2OC4yLCA4NC4wNSwgNjUuODEsIDU3Ljg5LCA3My4yMiwgMTMuODcs
IDcxLjczLCAxOC42MSwgOC41NCwgOS43OSwgMjguMDUsIDE0LjExLCA2OS45MywgNDcuMTksIDEw
LjQ4LCA4MS4zNSwgMzcuMTUsIDE5LjI5LCAxNC45OCwgMzIuNTQsIDk4Ljk2LCA2OS4zNywgOTIu
MjYsIDM0LjY0LCA2Ny40MywgNzEuOTIsIDQ1LjUyLCA5LjIyLCA0MS45NiwgMzEuMjYsIDkyLjY1
LCAzNS4wMiwgMzksIDc2Ljc2LCAyOS4zMywgMjIuOTMsIDgwLjY1LCA3MC43OCwgNDIuOTQsIDI3
LjcyLCAyOC4xOSwgNzUuMTUsIDE4LjE0LCA4OS43MSwgOTUuMzgsIDU0LjUxLCAzNi45MywgOTgu
NDUsIDg3LjU4LCA0NC41MSwgNzEuNzMsIDc1LjcxLCA3MC40MywgNzguNTEsIDgyLjE5LCAzMS43
MywgMi45LCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIsIDUz
Ljk2LCAzNS4wNiwgNjcuNSwgNzYuNjIsIDM1LjAyLCAxLjYyLCAxMy4wNSwgMzMuNTksIDI2Ljg5
LCAzNi45NCwgNzQuMTMsIDk1LjA5LCA1Ni44NywgNDYuMDEsIDExLjk0LCAxMi45MiwgNDguODgs
IDExLjAzLCAyNC44LCA2OC4wNiwgMTkuODMsIDEyLjk4LCA0MS41NiwgNjIuMDMsIDgwLjM1LCA0
MS4xLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUsIDg4LjQxLCA5MC4zNCwgOTcuNjIs
IDU4LjcsIDIzLjYyLCAxMy4wMywgODUuNDEsIDI5LjczLCAzMC4yMSwgNTkuMjUsIDkxLjIyLCA3
OC4yMSwgNjIuMywgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5Ny40MiwgOTYu
NDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIsIDI2LjY1LCA3OC4zOSwgOTUuMjYs
IDY2LjgsIDM0LjQxLCAxMC42OSwgOTQuNDMsIDcxLjY5LCA0LjU4LCAyMy44NywgNjEuMDEsIDk1
LjY4LCA4LjUxLCAxNC45MiwgMTYuMjcsIDMwLjQxLCAxLjQsIDEyLjM1LCA5OS4zOSwgNS44LCA2
OC4xLCA3My44NywgMjguMzYsIDI0Ljk4LCA3Ny41OCwgOC43MywgMzQuMDgsIDU0LjQ1LCA4Ny42
NCwgMzYuMTQsIDc0LjY4LCAzOC4wNCwgNTYuNTQsIDQ2LjQyLCAxMi40LCA1LjksIDE1LjcsIDEw
Ljg4LCA1NS44MiwgODQuNjYsIDc1Ljc0LCA4Ny45MiwgNTkuMDMsIDYwLjMsIDQuMzIsIDcuMDUs
IDMuMzQsIDkuODcsIDY0LjUxLCA0LjYsIDU0LjE2LCA0OC44LCA0Ni45MywgNS44NCwgOTAuMzQs
IDc1LjQ4LCAzMi41OSwgMjkuNjUsIDk0LjU3LCAyOC4yMiwgOTMuNywgMjMuNzksIDg5LjU3LCAx
NC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5LjE2LCA0NC40NywgMzguMzEsIDQ0
Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcuNzUsIDQxLjY1LCA2Mi4zNSwgOTAu
NCwgNDAuNzcsIDUzLjkzLCA4MC4yMywgODQuNDksIDIwLjE4LCA0NS4zNiwgMjYuMDIsIDkzLjcy
LCA2NS41NCwgMzIuODYpKScKLQotQ3VzdG9tIHdpdGggdHdvIGFycmF5KCkgbWFkZSB1cCBvZiB0
aHJlZSBhbmQgc2l4IHZhbHVlcyA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBh
MSBhcnJheSgxLCAyLCAzKSwgYTIgYXJyYXkoMSwgMiwgMywgNCwgNSwgNikpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDEsIDIs
IDMpLCBhMiBhcnJheSgxLCAyLCAzLCA0LCA1LCA2KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEgMSwgYTEgYXJyYXkoMSwgMiwgMyksIGEyIGFycmF5KDEsIDIsIDMsIDQsIDUsIDYpKScK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJv
cGVydHktY29tcHV0ZWQtc3R5bGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA5NWMyNGIwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJv
ZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2Pgot
PHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1
dGVkLXN0eWxlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1w
YXJzaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggM2U0NTQ3NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1leHBlY3RlZC50eHQK
KysrIC9kZXYvbnVsbApAQCAtMSw2ODQgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiB0aGUg
Y3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LgotCi1PbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi1DdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIDog
Y3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSknCi0KLUN1c3RvbSB3aXRoIGZyYWdtZW50IHNo
YWRlciA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikp
JwotCi1DdXN0b20gd2l0aCBib3RoIHNoYWRlcnMgOiBjdXN0b20odXJsKHZlcnRleC5zaGFkZXIp
IHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFk
ZXIpIHVybChmcmFnbWVudC5zaGFkZXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVu
dC5zaGFkZXIpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIDogY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBp
cyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
LmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1
bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5j
c3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBub3JtYWwgOiBjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5v
bmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCkpJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVj
dG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1v
dmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBub3JtYWwpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVu
ZCBtb2RlIG11bHRpcGx5IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11
bHRpcGx5KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG11bHRpcGx5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5KSknCi0K
LUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBzY3JlZW4gOiBjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2NyZWVuKSkKLVBBU1MgY3NzUnVsZS50eXBl
IGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNjcmVlbikpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBzY3JlZW4pKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBi
bGVuZCBtb2RlIG92ZXJsYXkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
b3ZlcmxheSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBvdmVybGF5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG92ZXJsYXkpKScKLQot
Q3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRhcmtlbiA6IGN1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkYXJrZW4pKQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGFya2VuKSknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIGRhcmtlbikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJs
ZW5kIG1vZGUgbGlnaHRlbiA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBs
aWdodGVuKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IGxpZ2h0ZW4pKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVl
TGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NW
YWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3Ry
dWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbikpJwotCi1D
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgY29sb3ItZG9kZ2UgOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKQotUEFTUyBjc3NS
dWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVC
YXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5
cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NW
YWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKScKLQotQ3VzdG9tIHdpdGgg
bWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGNvbG9yLWJ1cm4gOiBjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItYnVybikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAx
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25l
IG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1idXJuKSknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIGNvbG9yLWJ1cm4pKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFu
ZCBibGVuZCBtb2RlIGhhcmQtbGlnaHQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgaGFyZC1saWdodCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBoYXJkLWxpZ2h0KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGhh
cmQtbGlnaHQpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIHNv
ZnQtbGlnaHQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc29mdC1saWdo
dCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb2Z0
LWxpZ2h0KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvZnQtbGlnaHQpKScKLQot
Q3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRpZmZlcmVuY2UgOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGlmZmVyZW5jZSkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMg
J2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkaWZmZXJlbmNlKSknCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBl
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFs
dWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
UnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VT
VE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRpZmZlcmVuY2UpKScKLQotQ3VzdG9tIHdpdGggbWl4
IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGV4Y2x1c2lvbiA6IGN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBleGNsdXNpb24pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgZXhjbHVzaW9uKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIGV4Y2x1c2lvbikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5k
IG1vZGUgaHVlIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSkpCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBodWUpKScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5
cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NW
YWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaHVlKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5j
dGlvbiBhbmQgYmxlbmQgbW9kZSBzYXR1cmF0aW9uIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIHNhdHVyYXRpb24pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgc2F0dXJhdGlvbikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hh
ZGVyKSBzYXR1cmF0aW9uKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQg
bW9kZSBjb2xvciA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikp
Ci1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikp
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFBy
b3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMg
J0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklM
VEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikpJwotCi1DdXN0b20gd2l0aCBt
aXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgbHVtaW5vc2l0eSA6IGN1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBsdW1pbm9zaXR5KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGx1bWlub3NpdHkpKScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1
Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgbHVtaW5vc2l0eSkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgY2xlYXIgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY2xlYXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY2xlYXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMg
J0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18p
IGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVy
UnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NT
RmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY2xlYXIp
KScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2Rl
IGNvcHkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29weSkpCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb3B5KSknCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBl
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFs
dWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
UnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VT
VE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvcHkpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNvdXJjZS1vdmVyIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSkKLVBBU1MgY3NzUnVsZS50eXBl
IGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSknCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0
Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5v
cGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5j
dGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1vdmVyIDogY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLW92ZXIpKQotUEFTUyBj
c3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1v
dmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tb3Zl
cikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1vdmVyKSknCi0K
LUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBzb3Vy
Y2UtaW4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc291cmNlLWluKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1p
bikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2UtaW4pKScKLQotQ3VzdG9t
IHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGRlc3RpbmF0aW9u
LWluIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWlu
KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3Rp
bmF0aW9uLWluKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWlu
KSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9k
ZSBzb3VyY2Utb3V0IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJj
ZS1vdXQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
c291cmNlLW91dCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4
dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2Utb3V0KSkn
Ci0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBk
ZXN0aW5hdGlvbi1vdXQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVz
dGluYXRpb24tb3V0KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIGRlc3RpbmF0aW9uLW91dCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBk
ZXN0aW5hdGlvbi1vdXQpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBj
b21wb3NpdGluZyBtb2RlIHNvdXJjZS1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIHNvdXJjZS1hdG9wKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIHNvdXJjZS1hdG9wKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIHNvdXJjZS1hdG9wKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWF0b3ApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMg
MQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tYXRvcCkpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1hdG9wKSknCi0KLUN1c3RvbSB3aXRoIG1p
eCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSB4b3IgOiBjdXN0b20obm9uZSBt
aXgodXJsKGZyYWdtZW50LnNoYWRlcikgeG9yKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIHhvcikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSB4b3IpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0
LCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNlY29uZCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rp
b24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgZmlyc3QsIGJsZW5kIG1vZGUgc2Vjb25kIDog
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRpcGx5KSkKLVBB
U1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRp
cGx5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRpcGx5KSknCi0K
LUN1c3RvbSB3aXRoIHZlcnRleCBzaGFkZXIgYW5kIG1peCBmdW5jdGlvbiA6IGN1c3RvbSh1cmwo
dmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwotCi1DdXN0b20gd2l0aCBt
aXggZnVuY3Rpb24gaW4gQ0FQUyA6IGN1c3RvbShub25lIE1JWCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3Rv
dHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NT
U1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rp
b24gYW5kIG1lc2ggc2l6ZSA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSks
IDEwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpLCAx
MCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSwgMTApJwotCi1DdXN0b20gd2l0aCBt
ZXNoIHNpemUgOiBjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpLCAxMCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlciksIDEwKScKLQot
Q3VzdG9tIHdpdGggYm90aCBtZXNoIHNpemVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgMTAgMjApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCknCi0KLUN1c3RvbSB3
aXRoIGRldGFjaGVkIG1lc2ggOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0
YWNoZWQpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRh
Y2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGRldGFjaGVkKScKLQotQ3VzdG9tIHdp
dGggZGV0YWNoZWQgYW5kIG1lc2ggc2l6ZSA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCAyMCBkZXRhY2hlZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIDEwIDIwIGRldGFjaGVkKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAg
MjAgZGV0YWNoZWQpJwotCi1DdXN0b20gd2l0aCBudW1iZXIgcGFyYW1ldGVycyA6IGN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUg
NiA3KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwg
cDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciks
IHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpJwotCi1DdXN0b20gd2l0aCBmbG9h
dCBwYXJhbWV0ZXJzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEuMSwg
cDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBp
cyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywg
cDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCknCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0
b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25U
eXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4z
IDcuNCknCi0KLUN1c3RvbSB3aXRoIHBhcmFtZXRlciBuYW1lIHNhbWUgYXMgQ1NTIHZhbHVlIGtl
eXdvcmQgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEg
MCAxKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dy
b3VuZCAwIDEgMCAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1Zh
bHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdD
U1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29u
c3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1Rl
eHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEg
MCAxKScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyA6IGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQg
NSA2IDcpJwotCi1NdWx0aXBsZSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGdyYXlzY2FsZSgpIGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwo
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2dyYXlz
Y2FsZSgpIGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0dSQVlT
Q0FMRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2dyYXlzY2FsZSgp
JwotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSknCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX1NFUElBCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnc2VwaWEoKScKLQotQ3VzdG9tIGluIENBUFMg
OiBDVVNUT00odXJsKHZlcnRleC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20odXJsKHZlcnRl
eC5zaGFkZXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVl
TGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NW
YWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3Ry
dWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQp
IGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpKScKLQotQ3VzdG9tIHdpdGggb25lIHRyYW5z
Zm9ybSA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBvbmVUcmFuc2Zvcm0gcm90
YXRlKDBkZWcpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
b25lVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG9u
ZVRyYW5zZm9ybSByb3RhdGUoMGRlZykpJwotCi1DdXN0b20gd2l0aCBtdWx0aXBsZSB0cmFuc2Zv
cm1zIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJhbnNmb3Jt
IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAw
cHgpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgbXVsdGlw
bGVUcmFuc2Zvcm0gcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5z
bGF0ZSgwcHgsIDBweCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NT
VmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMg
J0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5j
b25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxl
Lmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3Nz
VGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBtdWx0aXBsZVRyYW5z
Zm9ybSByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBw
eCwgMHB4KSknCi0KLUN1c3RvbSB3aXRoIHR3byBzZXBhcmF0ZSB0cmFuc2Zvcm1zIDogY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSwg
c2Vjb25kVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSwgc2Vjb25kVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlz
ICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19f
KSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRl
clJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVs
ZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSwgc2Vjb25kVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSknCi0KLUN1
c3RvbSB3aXRoIGEgc2luZ2xlIGVsZW1lbnQgYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCB0MCBhcnJheSgxKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIHQwIGFycmF5KDEpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5f
X3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBB
U1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMg
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
dDAgYXJyYXkoMSkpJwotCi1DdXN0b20gd2l0aCBhIHNpbmdsZSBuZWdhdGl2ZSBlbGVtZW50IGFy
cmF5KCkgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXkoLTEuMDEp
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXko
LTEuMDEpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlz
dCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1
ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0
b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
Q1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXkoLTEuMDEpKScKLQot
Q3VzdG9tIHdpdGggbXVsdGlwbGUgZWxlbWVudHMgYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCB0MiBhcnJheSgxLCAyLCAzLCA0LCA1KSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQyIGFycmF5KDEsIDIsIDMsIDQsIDUpKScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90
b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdD
U1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDIgYXJyYXkoMSwgMiwgMywgNCwgNSkpJwotCi1D
dXN0b20gd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXQgZWxlbWVudHMgYXJyYXkoKSA6IGN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0MyBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQs
IDUpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDMgYXJy
YXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQz
IGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkpJwotCi1NdWx0aXBsZSBhcnJheSgpIDogY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQ0IGFycmF5KDEsIC0yLjIsIDMuMTQsIDAu
NCwgNSksIHQ1IGFycmF5KDEsIDIsIDMpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJh
Z21lbnQuc2hhZGVyKSwgdDQgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgdDUgYXJyYXko
MSwgMiwgMykpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAz
LjE0LCAwLjQsIDUpLCB0NSBhcnJheSgxLCAyLCAzKSknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRo
IG1lc2ggYm94IHNpemVzIGFuZCBjb250ZW50LWJveCA6IGN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxIDEgY29udGVudC1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBp
cyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9f
XykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0
ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRD
U1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1
bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwot
Ci1MZWdhY3kgLSBDdXN0b20gd2l0aCBtZXNoIGJveCBzaXplcyBhbmQgYm9yZGVyLWJveCA6IGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgYm9yZGVyLWJveCkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBp
cyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSknCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29u
c3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVy
YXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEgMSknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIG1lc2ggYm94IHNpemVz
IGFuZCBwYWRkaW5nLWJveCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEg
cGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVl
TGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMg
J2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotCi1MZWdhY3kgLSBDdXN0
b20gd2l0aCBwYXJ0aWFsIG1lc2ggYm94IHNpemUgYW5kIHBhZGRpbmctYm94IDogY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIHBhZGRpbmctYm94KQotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIHBhZGRpbmctYm94IGFuZCBkZXRhY2hl
ZCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwYWRkaW5nLWJveCBkZXRhY2hl
ZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGRldGFjaGVk
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0YWNoZWQpJwotCi1MZWdhY3kgLSBDdXN0
b20gd2l0aCBib3RoIG1lc2gtc2l6ZXMgYW5kIHBhZGRpbmctYm94IDogY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIDEwIDIwIHBhZGRpbmctYm94KQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCAyMCknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIG1lc2gtc2l6ZXMsIHBhZGRpbmct
Ym94IGFuZCBkZXRhY2hlZCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCBwYWRkaW5nLWJveCBkZXRhY2hlZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEwIDIwIGRldGFjaGVkKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5f
X3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBB
U1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMg
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
MTAgMjAgZGV0YWNoZWQpJwotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNp
bmctaW52YWxpZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEx
MGY1YjQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmctaW52YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSw0MDQgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiBjdXN0b20oKSBmdW5j
dGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KLQotCi0KLUVtcHR5IGZ1bmN0aW9uIDogY3VzdG9tKCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHZhbHVlcyAx
IDogY3VzdG9tKCwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1ObyB2YWx1ZXMgMiA6IGN1c3RvbSgsLCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IHNo
YWRlcnMgMSA6IGN1c3RvbSh1cmwoc2hhZGVyMSkgdXJsKHNoYWRlcjIpIHVybChzaGFkZXIyKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVRvbyBtYW55IHNoYWRlcnMgMiA6IGN1c3RvbShub25lIG5vbmUgbm9uZSkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBt
YW55IHNoYWRlcnMgMyA6IGN1c3RvbShub25lIHVybChzaGFkZXIxKSB1cmwoc2hhZGVyMikgdXJs
KHNoYWRlcjIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIGFzIHZlcnRleCBzaGFkZXIgOiBjdXN0b20obWl4
KHVybChzaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIHdyb25nIG5hbWUgOiBjdXN0b20o
bm9uZSBmbih1cmwoc2hhZGVyKSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24gd2l0aCAwIGFyZ3MgOiBjdXN0
b20obm9uZSBtaXgoKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIGZpcnN0IGFyZyBub3QgYSBVUkkg
OiBjdXN0b20obm9uZSBtaXgobm9uZSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24gd2l0aCBzZWNvbmQgYXJn
IG5vdCBhIGJsZW5kIG1vZGUgb3IgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSA6IGN1c3RvbShub25l
IG1peCh1cmwoc2hhZGVyKSAwKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIHRoaXJkIGFyZyBub3Qg
YSBibGVuZCBtb2RlIG9yIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgOiBjdXN0b20obm9uZSBtaXgo
dXJsKHNoYWRlcikgbm9ybWFsIDApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggdHdvIGJsZW5kIG1v
ZGVzIDogY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIG11bHRpcGx5IHNjcmVlbikpCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1N
aXggZnVuY3Rpb24gd2l0aCB0d28gYWxwaGEgY29tcG9zaXRpbmcgbW9kZXMgOiBjdXN0b20obm9u
ZSBtaXgodXJsKHNoYWRlcikgc291cmNlLW92ZXIgZGVzdGluYXRpb24tb3ZlcikpCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXgg
ZnVuY3Rpb24gd2l0aCBhbHBoYSBjb21wb3NpdGluZyBtb2RlICdwbHVzLWRhcmtlcicsIHdoaWNo
IHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1jb21wb3NpdGUgOiBjdXN0
b20obm9uZSBtaXgodXJsKHNoYWRlcikgcGx1cy1kYXJrZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdp
dGggYWxwaGEgY29tcG9zaXRpbmcgbW9kZSAncGx1cy1saWdodGVyJywgd2hpY2ggc2hvdWxkIG9u
bHkgYXBwbHkgdG8gLXdlYmtpdC1iYWNrZ3JvdW5kLWNvbXBvc2l0ZSA6IGN1c3RvbShub25lIG1p
eCh1cmwoc2hhZGVyKSBwbHVzLWxpZ2h0ZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSAnaGlnaGxpZ2h0Jywgd2hpY2ggc2hvdWxkIG9ubHkgYXBwbHkgdG8g
LXdlYmtpdC1iYWNrZ3JvdW5kLWNvbXBvc2l0ZSA6IGN1c3RvbShub25lIG1peCh1cmwoc2hhZGVy
KSBoaWdobGlnaHQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggNCBhcmdzIDogY3VzdG9tKG5vbmUg
bWl4KHVybChzaGFkZXIpIG11bHRpcGx5IGNsZWFyIG5vcm1hbCkpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24g
d2l0aCBjb21tYSBzZXBhcmF0b3JzIDogY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpLCBtdWx0
aXBseSwgY2xlYXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggY29tbWEgdGVybWluYXRvciA6IGN1
c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSwgbXVsdGlwbHkgY2xlYXIsKSkKLVBBU1MgY3NzUnVs
ZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5j
dGlvbiB3aXRoIG9uZSBjb21tYSA6IGN1c3RvbShub25lIG1peCgsKSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHNoYWRlciA6
IGN1c3RvbShub25lLCAxMCAyMCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IG1lc2ggc2l6ZXMgOiBjdXN0b20obm9u
ZSwgMTAgMjAgMzApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1Xcm9uZyBtZXNoLWJveCB0eXBlIC0gJ3BhZGRpbmcnIDogY3VzdG9t
KHVybChzaGFkZXIpLCBwYWRkaW5nKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotV3JvbmcgbWVzaC1ib3ggdHlwZSAtICdub25lJyA6
IGN1c3RvbSh1cmwoc2hhZGVyKSwgbm9uZSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1vcmUgbWVzaC1ib3ggdHlwZXMgOiBjdXN0
b20odXJsKHNoYWRlciksIHBhZGRpbmctYm94IGZpbHRlci1ib3gpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Xcm9uZyBvcmRlciBm
b3IgbWVzaC1kZXRhY2hlZCBhbmQgbWVzaC1ib3ggdHlwZSA6IGN1c3RvbSh1cmwoc2hhZGVyKSwg
ZGV0YWNoZWQgcGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Xcm9uZyBvcmRlciBmb3IgbWVzaCBzaXplIGFuZCBt
ZXNoLWJveCB0eXBlIDogY3VzdG9tKHVybChzaGFkZXIpLCBwYWRkaW5nLWJveCAxMCkKLVBBU1Mg
Y3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRv
byBtYW55IG1lc2ggc2l6ZXMgd2l0aCBtZXNoLWJveCB0eXBlIDogY3VzdG9tKHVybChzaGFkZXIp
LCAyMCAzMCA0MCBwYWRkaW5nLWJveCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgY29tbWEgYmV0d2VlbiBtZXNoLXNp
emVzIDogY3VzdG9tKHVybChzaGFkZXIpLCAyMCwgNDAgcGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IGNvbW1hIGJlZm9yZSBtZXNoIHR5cGUgOiBjdXN0b20odXJsKHNoYWRlciksIDIwLCBwYWRkaW5n
LWJveCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBp
cyBudWxsCi0KLU5vIG1lc2ggcGFyYW1ldGVyIDogY3VzdG9tKHVybChzaGFkZXIpLCApCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1X
cm9uZyBtZXNoIHR5cGUgLSBjb3JyZWN0IGlkZW50aWZpZXIgaXMgJ2RldGFjaGVkJyA6IGN1c3Rv
bSh1cmwoc2hhZGVyKSwgZGV0YWNoKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gbWVzaCBzaXplIDogY3VzdG9tKHVybChzaGFk
ZXIpLCAsIHAxIDIpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBzaW5nbGUgbWVzaCBzaXplIDogY3VzdG9tKHVybChz
aGFkZXIpLCAtMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20odXJsKHNo
YWRlciksIC0xMCAtMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBhbmQgcG9zaXRpdmUgbWVzaCBzaXplIDogY3Vz
dG9tKHVybChzaGFkZXIpLCAtMTAgMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1aZXJvIHNpbmdsZSBtZXNoIHNpemUgOiBjdXN0
b20odXJsKHNoYWRlciksIDApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykgaXMgbnVsbAotCi1aZXJvIGJvdGggbWVzaCBzaXplcyA6IGN1c3RvbSh1cmwo
c2hhZGVyKSwgMCAwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotMCBhbmQgMSBtZXNoIHNpemVzIDogY3VzdG9tKHVybChzaGFkZXIp
LCAwIDEpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVzIDogY3VzdG9tKHVybChzaGFkZXIp
LCBwMSAxIDIgMyA0IDUpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHBhcmFtZXRlciB0eXBlcyA6IGN1c3RvbSh1cmwo
c2hhZGVyKSwgcDEgMS4wIDIuMCAndGV4dCcpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUgMSA6IGN1
c3RvbSh1cmwoc2hhZGVyKSwgcDEpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUgMiA6IGN1c3RvbSh1
cmwoc2hhZGVyKSwgcDEsIHAyLCBwMykKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBpbnZhbGlkIHRyYW5zZm9ybSA6IGN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykpCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NdWx0
aXBsZSBpbnZhbGlkIHRyYW5zZm9ybXMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlk
IGludmFsaWRfcm90YXRlKDBkZWcpIGludmFsaWRfcGVyc3BlY3RpdmUoMCkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHRyYW5zZm9ybSBiZXR3ZWVuIHZhbGlkIG9uZXMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwg
c29tZUlkIHJvdGF0ZSgwZGVnKSBpbnZhbGlkX3JvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVZhbGlkIHRyYW5zZm9ybSBiZXR3ZWVuIGludmFsaWQgb25lcyA6IGN1c3RvbShub25lIHVy
bChzaGFkZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgYW5v
dGhlcl9pbnZhbGlkKDApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3JtIHdpdGhvdXQgbGVhZGluZyBjb21t
YSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBwZXJzcGVjdGl2ZSgwKSkKLVBBU1Mg
Y3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVZh
bGlkIHRyYW5zZm9ybSB3aXRoIHRyYWlsaW5nIGNvbW1hIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIHNvbWVJZCBwZXJzcGVjdGl2ZSgwKSwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFp
bGluZyBjb21tYSBhbmQgd2l0aG91dCBsZWFkaW5nIGNvbW1hIDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlcikgc29tZUlkIHBlcnNwZWN0aXZlKDApLCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdHJhbnNmb3JtIHdpdGgg
dHJhaWxpbmcgY29tbWEgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIGludmFsaWRf
cm90YXRlKDBkZWcpLCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdHJhbnNmb3JtIHdpdGhvdXQgbGVhZGluZyBjb21t
YSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBpbnZhbGlkX3JvdGF0ZSgwZGVnKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLUVtcHR5IHRyYW5zZm9ybSAob25seSB0aGUgaWQpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIHNvbWVJZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyBudWxsCi0KLUVtcHR5IHRyYW5zZm9ybSAod2l0aG91dCB0aGUgaWQpIDogY3VzdG9t
KG5vbmUgdXJsKHNoYWRlciksKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotRW1wdHkgdHJhbnNmb3JtICh0d28gZW1wdHkgY29tbWFz
KSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gd2l0aCBp
bnZhbGlkIGNoYXJhY3RlcnMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSxzb21lSWQgcm90YXRl
KDBkZWcpICouLSwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1FbXB0eSBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciks
IGlkIGFycmF5KCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1PbmUgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChz
aGFkZXIpLCBpZCBhcnJheSgsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRpbGUgY29tbWFzIGluIGFycmF5KCkgOiBjdXN0
b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLCwsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRpcGxlIGNvbW1hcyB3
aXRoIGEgdmFsdWUgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJh
eSgsLDEsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSBpcyBudWxsCi0KLU9uZSBjb21tYSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFy
cmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLC00KSkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBj
b21tYSBmb2xsb3dlZCBieSBhIHZhbHVlIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoLDQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotT25lIG5lZ2F0aXZlIHZhbHVlIGZvbGxvd2VkIGJ5IGEg
Y29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgtNCwp
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotT25lIHZhbHVlIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSg0LCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1BIHNlcmllcyBvZiBjb3JyZWN0IHZh
bHVlcyBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMSwgMiwgMywgNCwpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQSBzZXJpZXMgb2YgY29ycmVjdCB2YWx1
ZXMgZm9sbG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFk
ZXIpLCBpZCBhcnJheSgxLCAyLCAzLCA0LCB4KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVR3byBjb21tYXMgYXMgc2VwYXJhdG9y
IGJldHdlZW4gdmFsdWVzIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQg
YXJyYXkoMSwgMiwgLCA0KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUxlYWRpbmcgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsMSwgMiwgMywgNCkpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2Vw
YXJhdGVkIHZhbHVlcyBpbiBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFy
cmF5KDE7IDI7IDM7IDQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheSgpIDog
Y3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEgMiAzIDQpKQotUEFTUyBjc3NSdWxl
LnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2Vw
YXJhdGVkIHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxIDIgMyA0LCkpCi1QQVNTIGNzc1J1bGUudHlwZSBp
cyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQg
dmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlciksIGlkIGFycmF5KCwgMSAyIDMgNCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1OYU4gaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheShOYU4pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTmFOIGFuZCB2YWx1ZXMgaW4gYXJy
YXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCBOYU4sIDMpKQot
UEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSwgaWQgYXJyYXkoMXB4KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdW5pdCB2YWx1ZSBpbiBhcnJheSgpLCBzZWNv
bmQgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkobm9uZSkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHVuaXQgdmFsdWUgaW4gYXJyYXkoKSwgdGhpcmQgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwg
aWQgYXJyYXkoMWRlZykpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHVuaXQgdmFsdWUgaW4gYXJyYXkoKSwgYXQgdGhl
IGVuZCBvZiBhIHBhcnRpYWxseSB2YWxpZCB2YWx1ZSBsaXN0IDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlciksIGlkIGFycmF5KDEsIDIsIDMsIDRweCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0
eS1wYXJzaW5nLWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWY4
NWNhMC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1pbnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxMyArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9F
TiI+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlv
biI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0
LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmctaW52
YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2lu
Zy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXBy
b3BlcnR5LXBhcnNpbmcuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzMwOTE0
MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItcHJvcGVydHktcGFyc2luZy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBA
QAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+
Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxk
aXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0
b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi9z
Y3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLmpzIj48L3NjcmlwdD4K
LTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXJlbG9hZC1leHBlY3RlZC50eHQKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXJlbG9hZC1leHBlY3RlZC50
eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQuaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTc5ZDEzZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcmVsb2FkLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSw3NSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTwhLS0gCi0gICAgVGhpcyB0
ZXN0cyB2ZXJpZmllcyB0aGF0IHdlIGRvbid0IGFzc2VydCB3aGVuIHRoZSBzdHlsZSBpcyByZWNh
bGN1bGF0ZWQgYnV0IHRoZSBmaWx0ZXIgcHJvcGVydHkgZG9lc24ndCBjaGFuZ2UuCi0tLT4KLTxo
dG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICAgICAg
d2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAgICAg
ZnVuY3Rpb24gdGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8vIEZvcmNlIGEgbGF5b3V0
LgotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQ7Ci0gICAgICAgICAgICB2
YXIgYm94ZXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuYm94Iik7Ci0gICAgICAgICAg
ICBmb3IgKHZhciBpID0gMDsgaSA8IGJveGVzLmxlbmd0aDsgKytpKQotICAgICAgICAgICAgICAg
IGJveGVzW2ldLmNsYXNzTGlzdC5hZGQoInRyaWdnZXItc3R5bGUtcmVjYWxjIik7Ci0gICAgICAg
ICAgICAKLSAgICAgICAgICAgIC8vIFN3aXRjaCB0aGUgcGFyZW50IHRvIGNvbXBvc2l0ZWQgbW9k
ZSwgc28gdGhhdCB3ZSBjYW4gdHJpZ2dlciAKLSAgICAgICAgICAgIC8vIGEgcmVidWlsZCBvZiB0
aGUgY29tcG9zaXRpbmcgbGF5ZXIgdHJlZS4KLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5
bGUud2Via2l0VHJhbnNmb3JtID0gInRyYW5zbGF0ZVooMHB4KSIKLQotICAgICAgICAgICAgLy8g
Rm9yY2UgYSBsYXlvdXQuCi0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodDsK
LQotICAgICAgICAgICAgLy8gSWYgd2UgZ2V0IHRoaXMgZmFyIHdpdGggbm8gYXNzZXJ0LCB0aGUg
dGVzdCBwYXNzZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0gICAg
PC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhlaWdo
dDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRl
WigwKTsKLSAgICAgICAgfQotCi0gICAgICAgIC52ZXJ0ZXhfc2hhZGVyCi0gICAgICAgIHsKLSAg
ICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4
LW9mZnNldC52cycpKTsKLSAgICAgICAgfQotCi0gICAgICAgIC5mcmFnbWVudF9zaGFkZXIKLSAg
ICAgICAgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwo
Jy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAg
ICAgICAgfQotCi0gICAgICAgIC5ib3RoX3NoYWRlcnMKLSAgICAgICAgewotICAgICAgICAgICAg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZz
JykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCkpOwotICAgICAgICB9Ci0KLSAgICAgICAgLnRyaWdnZXItc3R5bGUtcmVjYWxjIHsKLSAg
ICAgICAgICAgIC8qIE5vIGNoYW5nZSwgd2UganVzdCBuZWVkIGEgbmV3IHN0eWxlIHJlY2FsY3Vs
YXRpb24uICovCi0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotCi08Ym9keSBvbmxv
YWQ9InRlc3QoKSI+Ci0gICAgPCEtLSAKLSAgICAgICAgWW91IHNob3VsZCBzZWUgdGhyZWUgZ3Jl
ZW4gYm94ZXMuIExhc3QgdHdvIGJveGVzIGhhdmUgYSBkaWZmZXJlbnQgc2hhZGUgb2YgZ3JlZW4u
IExhc3QgYm94IGlzIHNsaWdodGx5IGJpZ2dlciBvbiB0aGUgbGVmdCBzaWRlLgotICAgICAgICBU
aGUgdGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgbm8gY3Jhc2ggb3IgYXNzZXJ0LgotICAgIC0tPgot
Ci0gICAgPGRpdiBjbGFzcz0iYm94IHZlcnRleF9zaGFkZXIiPjwvZGl2PgotICAgIDxkaXYgY2xh
c3M9ImJveCBib3RoX3NoYWRlcnMiPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCBmcmFnbWVu
dF9zaGFkZXIiPjwvZGl2PgotCi08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLWNhY2hlLWV4cGVj
dGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1z
aGFkZXItY2FjaGUtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBk
ZDNiZDQ1YWVhYzU0NjVhZmVjMmViZThhYTc4MTAxYTg0ZDFiODA2Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/
ZDAwMDAxCgpsaXRlcmFsIDE2MTYwCnpjbWVIdWN+bnpaKkZNZXomWjFDfXA7YHJuMXs1PyowamVT
QE48XihWNUQ9TjlZR1JsfCROKkhTbVFoOEZoJEpFKwp6UVl0NzhnZHFYcDEmUnp8UCFMRm41RnZ5
aSEyfTJpMGxwTGFtZG9uKlRkU19GX1VvQH1gQiMkVEoodHtfWFljYm8KeiYpKXVjKDl3U0ohWml6
M1I4JHU0LUx2YkVpcG5mcTZfdUlDPUZiSHl3fVphRjBBNGwpKmN9Vi1JT0ZBVSk8NXZQCnolSiF9
MW9eYTJ0LWQ+KWI5YDQ0YyY5PDRGbnIkfldHZEpJNjs8ZXE+XlIpTWlHWUtqeCk7VzgzZVJDdnUj
c0hAIwp6RCVuUmlaX3d4NVJ7WXNrQDlXc0VlZjBeZCZYNGw1P09ZYVE8cXo2QzkhYHNURm5fMSp1
R2Mzci1qenFGeV5MXmgKeitNS3A5fEhHVzBqP084I2thfnF3PV8kNUleel5waXRDUmglLWw2aGAr
Tnc8fDE4Y2BDejVScyNoLVFCZHQqPmUxCnp3NyNeVnItQGRwR2pzTypXeEJSdURsQDx2X01DN2pD
anU4ZE5CUUJtKWR7eV5sfV9FP0s3cio2JjlmS2o7JG04KAp6cllAUGslczkrITdQTXRQZCl0Z3p6
bzFlXyk9aig1QkhofUxmOEBWKyFXfTQ5QG9ScF94QkBNUEAwe20yY3JDNEcKelJVZ0xRb2c/RUlx
RGstUXNfc25INChzaERMYGA+UTZkfCFIJjZ3TFk3PDRQTTwhbkt3RllgeWJMNDVQO0pDXkU8Cno0
PFR4QTArWlpiWlgzbjR0cj16YkdFSWZNazgkZztaNTsmNjRfTlJLZWc2RXtNMVBITERgZG56bWhU
JClrb2ZeZwp6OG8kPyhDMjJgdkBtYH5rZVB0VX5KVUVqKVlpblVmXnQ1TGdueStDU2E+e1YhWiRW
bjdZZ2B5TSEhIThzN1ltQEUKel5laV9IOCFBNHdAeE9ydHw4T2M4Z2tiUSYpKW1tY3k3aX0yMW1S
RWl7fkIhTlg3S21zVWhPI0cxXilESlZZcTh3Cnp0a04qY0Jre00tVkpoSnJhfkEyQUNjV0EtYnhv
TFVUeVokfTU+dVdfZyhEM3k1emdnSShXNCpkNXYtWGNDT0BqTwp6JU5RKnhkNEk5ZENheCh4ODxg
YmJMZ2JXSD5aT05qcFdwOUJiSjI+QmpsaHVCPUhycntTM3w+PFpfPmNrdD8lUD0KekxucTJqYXps
azxydWdzPmo3IUw+NURvYWc+PlcjYW95M2xXeD5WeVZSby1xdkxZK0lpJDEoZW9AYSU9ck5kdUk7
CnpvaGZCXjxWKURJREFYZTN0VUwrM15nSERqfDh9LXc/KWBtd3VmTGk0IyY+N1RuNitvdGZmc2ZW
QWlmMUNgcW08NAp6M0FDfnBNMChBY29VZnNmSnpSSDZDOEo/TUFRYjJgd2pleVZAI244aSNtOUNQ
eE9JWiMhOzg/JEVEK1ZYeDZlZ0UKenp2NTVlKTt8VTgoMUtSaEVIZktTc3h1PF9zY25mMyR9en5k
RlgodkYpI2xEZDJNNVg9U0hvS3VXU2VtcFhUIUokCnpQJnN0OF53OEAjdns2aHwpXyRGc0VOe18o
eDcle0VyMD1YZGJ0ditFaSU3SFJUdC0jYTRqcVFXSUZFPjBPQSZoWAp6JjxBX1A9cE9wZUtDdm05
QU50OzhAQDk4WjsoSjc+eilFX31vWW07bkFoODx2JT4+YCg7a3RNNWU+TSFwVld4R1MKekNte3FM
dkAyRlFsKHc+VzhnOWNycUhYTmVxNWxOPzJ8UDckcD0hOSQrYWwoP1JOXyp0U0RvNWNMa0RrJlVV
d1hKCnpWISEmM1YyR0NPSmtJV0RiWWNzLTQyOUpsQ1FlTH5zIVMoI1okV3UtbC1Ma2dITEY3Rk4z
b1Y1aG58WE0qWV9+Jgp6M3B8fElQdDBKSkk2UloqTTUtdW89USMlR2x9TnFHUEJ+SndfZnwtckEy
bUhBQWxLMTloPztKNUpefXA3Zmw3RWUKejhYZWcmMStQPWU2ajl9Iyl8fmJqQWRlMkV0OGV+dER6
elJmbFB2PUNXYnJoN2ZzRCooUjg0XkpieGZKSUNBbnxzCnpMZHBGYTxvMFZwIzZHQ3A4N2QxdiRI
e1hTQXZwQntmYnxhVCpaezRwYzcwY2oqQDJ2cz9YNytYPWokVDE5cXNPKQp6SWcoV2NHYj5zSmY4
fFIyP2o2MCtvdGVPUiRWQFhpJlVEZ2ZlZ3VHMyVoc2xSYD1SI2heRkhiK1V7ZiNfNC1hKzsKelN7
fkFAcko1R3wxR2JgK0pfSmV8VlVAWj9IYmU0fGxhTWZVPUs9TzJ0I1NSQUpBMy1BcWB7NX41empU
Ymc0KE9CCnpTR3ViUUhMdT48ciNyMmhrRjdFZT52eWhgS3dvcUllP1YwSjtmd1ZCU0lSNVhHVjVL
MXE4eGZXcl9ZSHdQWlUqPgp6S2tzR157YztJQyFCfXwyWX4ySHk8SzsxZzc4QUZ2OG4tZH1CKkp1
b3w1IzFXYXJKeU8tcSYmPU58LX1tJnZ+eHoKejdWX29Md2FXNyZvO0dYQndmZ1g2S2w1NjNyWmlY
c1hCY2d7eWoqSzMlVih7K3RELSRuK0FafHU8SGNXMU59byFJCnptfEVUdGBxJjJCRms5SE4yQGZs
entgSUwrMF5YMjdlNX05ZG4tO019dXYwMnUrJlF1WHMkOD8+cHFQPWlIYkowUwp6cnJ9Ym92ZWhp
KCh6SmE7M3A4eHlvPEMxTk4kM0RiN1k7MyR3eSRSO0k3dXB4PX1wMWJfUzZMYyQjP2Z4SyhOKVYK
eih8Y14xS2IkVkFEIyM7R0N9Y2Y+ekhHVFg8YzNqOSFHKD87O0hCO0QrYmQjSlZlcG5uMk1IPWFW
QUNzSCpRKjQ1CnpwfTRFY2lUKFUrJVlueyN0Z2x3US04blNjNXE0bWxJNCZRfj0hPWglWmJxTHlk
cDc0cjJKTGNlMGhVKyhURGwqJAp6TDw9WUJ1Qm1rMUtWSGE0PUE1eiNWN0luMV42OyZBWVJJRGVB
QCkqfFY8VH1NaU9RbFBFVmFydjFFZlcmanhPSHcKelZlWTI1c1RkWm8xSkF1V0JXVlE2KlNwfWs/
KzBKSlZHbXtTSDR3cTUqOVFudHo4KFktSlhIQTJ0TXlaJWMpU1B2Cno3SXdXNDcqTXxJZ1dxQ1B5
S2RMPXNkOURmRC1mPUFmc0wrRXpOKURraHBBeiVpbEcoNT4lfVAtK3A3flZLWlJSYQp6PHtLQHYh
WFhTfm1OcXI4O0teMjVTYFVMT19mY3pONDQmQkRoPiVoWXh6NDM+PlpFZyEkQjBSMmR5SzBoKXk1
bHMKeiRZeHhjbkBaJHtacCMjOWd0QlUtSDlFVnBgP1NaOU9fJHdwJEp5ITN0STZxSFB4WiZSSUIp
ZXxhTUBXdGU5MDVJCnozQn5RYXJfNmVNJG5uTT8xeWUwLUhtbWU7VnxCV152aExWT2J8MitCSU9o
PHZKPUhWZ2EhdVlNYEZNKm9pNHx1OQp6ZzRJWlN1QENTN2k8dkQmcSZGR1AofjhYZT5MJm19dX1T
Rng1RXZ5SlBwS3M0IyU1NVVVdHExT2hIVzw7ellqdXsKekYkUlBaLSorbm5nNUY8eEU4Q3opcXRA
RjtDMmBpUDVhVD9DUGIkNk1gPStRQU53JDA/P1ArcXBON3ZoWm9NYzFqCnpiOHVwK0o2ZnJpRzBm
JERZUHNTaz5aeEA1N2ZnKlo1P1dOPyNJNzx4PyF3di1jYHwrQl5FNXI1YT5UPzAjaFl3MQp6QTxv
ViQod1lxSFctJGhrKWU1cXI+eT1Sc1FITmJBWDF3KjFYPiUyJF5oPTMwWlV7dnxBfiZ2eFpJI2V2
SWw+NXkKeik9ODh9Vz85QzQrPDtzJU5tZXVgK1NuQXkyQ0dGQ1pXOT99cks4eTxwO0BAJkJveVRo
VDtoY3Ixa3U7MyFCZDZUCnpYP3l8ZXFfUkcmbm8lXzRae3M3TWF1OT5HM0UkWVpabU9iKFp3NWMo
PUghRihwcTA2Xlp8PV5XRm54QGljQmIzagp6NEdaSWpzaCM8TDEoWDhNMEpyaUBZYUgxLW00bzEt
OFRWfmgtazhjYStxPGcoQ3VpMmo4UU50WjMkPEw+UzFhPHkKel9SWHE1JjZsOSZPUD8oN1pVYi1G
Ulc3Z3k4U0xfO1NLWFdiPWJTZ0QrK0ZPMSVFP148YzN3fFJiTHp2YXduZS1LCnpxQSRDdFNPZj8r
N0c1SSVBK35KXm10WWRAMDZ2MCgofihxYSUqU3MmNjVgbE1QaHQ3cUhiT1kjTGEzfUlCPD1LfAp6
UXN0eG1wYnBObEtnRSo0XlVOI1hJdSlCNEdmUDF0YH5YalkqclE2Z0hsVUE3cXJJVH4wZXthcFkh
UFBqYGYyK1IKekFrNWt0Um52PDNBfHI0SnY+KHwkWkN9WGpDNW53aFo7Rk5zQHUlP3lnPEQ1Um07
K1hDQl85U1AyKUYmUCVVRlc/CnpNeDhxb18tRUU2bDMkPSZjT1Q0QSQtPldnJG1RPlFee2FEbmN5
WG5HWDdCc31hQ1RTKG1lOVBCUnlaeiFRfWYzQwp6eCNeWHZ1TC08eyUoX3kjbGFpWE5eSHNBaVgt
OG1ETnxKdFEzMiEkcFdKN0A0I25NU1BMNCRPSiFDJXN4JS01ejUKekRJJX5uO0xUQ3g3eXRKI098
bD85XiRQWWBKZ09laXMtKW1jY3RORl5SayQyX3k8PjJoT2k5cXV6MVBiRTNuPSU8CnowUiYle0FU
Umx1Zk5jWn1kQE9QPiQ8MGt3YV5Md1k3TVZOaDwkd3hXQ0dTRD8+aFN3ST0+YS1CRDxZZ0p4U2JW
Zwp6JmV6a2ltWHFzZ3ZScVNjXjthVTkxM3hkVzhjJjdBUX4zaHF6Yk1hQFh5WjhGVHZzME5walMj
Q09RbnhCNX5UPUAKekU8KEAyKXpXdDxtK3VrTm0oVV9Sa0glKHVWeWtwc2J1T1hCYn4rbVFWMTFV
KmVpU0RrY2E3O2glSDFZKHgjNSN7CnpRcms/cD1aMHR4ckEjWV43clJAOFh3ezE5ajRpe3E8Vyko
dTsoOUlIN2k7M35TdVNWN0J+ak5JPkFIT1U4ajhmfgp6S3czZkk/V2E+aFc8M3h4Zmd2ZD9wb0NC
YkRSTyp0YihgKX5CN3F9cD9vfHVNITNFR3QxVn1iUlYkfUpvUT5UQCEKejdSYm5DKk4yeTtSKkZr
TitPQjRuWkhGWkEtQl4mQGVAWCspQmQta0U5SzVhSVU3LVVuZV9qZFAyYnxIVXBxSHtvCnpiZj1O
ZCE/UC1xbXE7RzwrWU51NlRxJXd6cGAhdD9hTlEmSHBDZlQtVSgxNXwzPHE5R1I4XyVDVVFTZTlm
JCo0cQp6cGxQKEZjNmt+b1pKYlBjOWV5QyRland9VGArVTxGT35vRFUxeitzJjtwYktPY1pUWG5k
I3klfV8kYkJrNkh0bCYKemI3VXJUP2s7PHE0YkplUUAyU3d+NDUrKkRLWWZ2SFZwMUl2aEtkPlMz
I0Y3TF9xKWM0NXk1VjFPXkMtZyRgRVNoCnprMWs9O09PfGhgIUNBMEhmPFo+NkpKWkNTLUo3IWFS
dlR0RkU1OXpWJUF3N3YjfUQ5MWtZeSlwUCkmKjNrQUE4Kgp6UiZPamsjKilOV1ZWUSNycGsrTVYq
Kl9XIWdNK1BrXnViUFBSc2tHYHZ9REVXJCU8Jm5lMWdBckk8OGQ3REUtMCoKemIkSXc0KlFPUVVX
dU01QmYhYEFVI0J1Nj8zb0N2SEBiX30+MjFxOF8tYkRnS0xDKygzM1QhSWpGTSppNjd7M24hCnpU
Ykx+a3BiYzRXRiRMUWhHY04qMiZlY25SVjU8XnQ5aUNTSSRjRShCVU5iRD12K1QxU2N1bWRDc28+
fn5QKnVNTgp6VWRxZE4tdzxfe01MRF9MN0IhPis9NDBUVHdGXnJ6YSpPVEVMUkZ6eCg0cm1zWlcq
NVRfeEpibj9kQTcxWENxTkcKem1xS1VrJCYpQUopQW87QjErWmZAO1NaUVRlJUt5KjUqKnttSmwp
RzU4MGVvbm1jbmFsNjR1bC0pPUZNYClUUXlzCnpKXnJgNUVxZiV5a15VQmVAbGsqQEsmM0laaz89
aXVEMkEpfDdPVWohO1hHNF5eMGY+K2NiVnBXRGArTF5FMERxVwp6KFhGYWU0PDZuTEJHfGUza1Qk
ZXB3KnFBRkFeMVNWUjB3VWNBY095dTIzVnBzPFh2bFpodGJoZVBqWSZmKkxTPjwKekVBdEl7SW80
Y2pXRzVQTHZQcGRgakEraEQ2eV9DcSU5dn1LcT43PigmOElZKDFVPU5MR3JwelpucHt2K3F9NFN4
CnprJEllaTk0Nz1aRiUhQldEQ3loSzlCVn4+UmoyaUVNOERQZSMpMj5nIUwtMVpOZUR6KCgmOEEy
ZDVaN1dTNGpvdwp6eE88bjFoI287ajwkSkJpTFJMJH5BPkUyWmMjaG1QfDlUZjtMJX1ncFZlKDZ8
MSo+c1dHRzcxXztIZVlPejZGdGIKeno1SkpuZmxOb25HXjRAeFI0ajwzS2lldHxsNnRxYEskUjIq
P3FAKjFLPSgxQTVHIWc5TCNQVkoxTXlkVnZme1BGCno2bERMfVRqaVdCbFJrTSMzbXdZbjUkSzJ6
bnFAS0RwQXZQKjt4O0Z5ZUoqb0Y4RGgoOy1tI1hHWmpvWmZoMFoqRQp6Vk5FP0htN1dtQyY/ck9Y
NDQzSCh7UiFMe3BqUG5mQkY4IzNTQHppTXVNeUBaIVZsNlNRXzB1fE4rQGM0Sypeem4Kej1SOzMt
T0w8MWw8WkU0SD87TE42JTN4S30oZTg/aDRiPSkrWndJJFYkPUpJeTQ3cEU0O350NyVzJWJpSkB0
KD5KCnpwPzslTVVRdys9Q2FieVpxb255cmohdD1LdmRvYFIpIVVjPEdjKGJzO0d6K1R7K1VgeTA3
WVNpM35nN3xobzl5SAp6I3JiQ3B6YHUtZUZWYkNYK09pc3w9dHFFS2JWUDg7MHdVWHt4KnI5NUlI
P3VsP2xXZjJRNXNwbEJpdFohNDNifFUKenAmWG44Z3o9byljVnxOQGtMSXRuNz5wciVaVkQtcnc+
Y2Zkaz5PRCViPEJpMlppI2wjPDY/fXR5S2pqKVVBejRACnpScFpQUk1pO1padmo/JnMkVG9Jbj9W
ciV3JEZIQCs2bCZXQWE9Yk10LTQ0N0xiSUJPc209YFE+ZihOakpNJSNaaQp6Jl9UZ2I8Knhtfm9P
TCoqIVQpeW9WeGBDejxtRVI/aChTRlB2KigpMU0rR0swX2ZOOXFNWTsmJW5eM2Z0WH1FJCEKemAx
PyV2My05MTUqJU9jV0g3bCE1YnxnRno1emNuTHF7ZC1yQkgzdl9eWFJxJFc3KWVRUl9kXnpGRnJI
WCpiUnNNCnokaWcpbm9Bc1JTLUk8SzRjJTxXYFJzTDJiWFdzO18tWSREVEtyOHhDSndPfD9LSHok
e1U2Yk0ocDxOI0hrKCEmaQp6MSNjTUFrTTFpMEJ6OzRHMjBYdmZBWjJYTCtLSWAxNmxTZ25mdWpx
cHF7VjRgcXYqNVgmRXBmR1RrdFBZbHVELVEKekt3RTFVb3RvU3FEWGRwZ0BGMHlgTzs7MiV6QVBy
RiNHbj9aQjxQMUpoRk5WNHdjKnFAMlZSYXJxa1U+LTMhJExKCnpgNFUkbEtYRlRzdT97fm5SJkky
JUh6JXtzVVVYPkUldVQlX1pBYC1nUit3TD9YI3J6Z3d+QT8jPkJ5PiEocSFIbgp6QGhtcUI3UmVM
amRFeVlyXlZXWSlvLTVITlYmPHJBcH1KVW5RTz9tUjxJdVZiTEApS1pKMV4oWj1QZ0MzYnkpX0UK
ejkjUEJuQld7UX5JZE8wYFpadHAqN2gpYnw9fDgmdmhOeFFub20jRnUzKExQfVJtQmsoVzl7enw/
ZWgoVlhWJjZPCnpMcXpxJFZgQDBWKnM1OS1SVE8tTGB2THV5ekxOOWZBUzJRM01uN1Q+WGUtZH5A
Tz9MUDl5UShwSFMkKj5xb3Aofgp6e3gqWGZGbz9tZ1V3aXtxcmEofXV7KihxI19GQGpkJXhzeSVO
M0NmX0VNdUMzR3JCS0Z3SDh3cmxjUD5zVjxycl4Kemg0Q2BfMl94OGw2UWZvaHMwNVp0WmlVeWto
NWluMEVwfFBxSFJgU3w/VGZXM3M3dmpFNisxRmctUHM/RVZJPDZMCnprIXg4Kj9PQm80Y1F+Jk5o
OygxfUpPMHB+VXpTLXx2SmxqamxWZnlleyohYklyOHZHYU09fCVTMlA+dmd6RzU7cwp6IV5jKClT
eHBmZ0MzVDxpUGhhJGtlVG5RUmAwZzJIdGlWdntER2orSGRPM0ZRdWBvUSVQPyV6ai1Wa2xNRCl4
I20KenYkMkRXeWV2WDNtTHhDVzliSX4kZ2lTVUhYXk99Pz5EbjUqZzkwfTAhRn5PVDt5Uno/PjZl
NlBpMzVGdzVHdV9qCnpSdVVtWFhxUmlMQCpGUkxQSmByJmlVez4wOUVYdWQwQil+VTw+WXczNipv
eUAjP1Z3VSVCIWxFQ04pP3FCZDBPeAp6UGk0dkFncmh8VkxaRiNGU0x3R25adkp2d3IyazZPLTdw
M3tFKktNfHZ1SE08KSorfWh4bEU+Wm1qZSZ4TFNGYDYKendyfTVsa0VtfHM4cnw3SXFgKiotVnBO
e3JoUjZiPCV1ZndCYTNVeXYpWUlpZWgzRTM1cUA7TDwhIX5ZM1dLeXNFCnplSjNOYnQrbjtHcDtz
P0lnQDxPLXcrdGlWcWpwd3MzaTFCcFJmbGFiNyQ1bENyQ1BaIWYtcTwqWGpeR3RnZHdDbQp6WF5w
MWJaKXA2ZEp9ayR9UG4zUmNDdWxiUmVGaXRzbC1LZm9qVWNgbTJeN25wKGZ9OEY/IXhgTUpOZyYx
VnVldk4KelN0IT1OaUNXfVMpJUt6d0B9PnxgPyEqQG5ma3VUbFlYVnJ+OD4qeWw5eTlycTM3bEt3
KWloa0hgZWFYQk9VIUhKCno8b0pMLVNMIztOT1glZjNtNT9PIT5paEM1Q2dPKVhubytCejhBaEli
MGxaflNLUFI8aWorbTMjKkNIZUsqSG17bwp6WWFWQUpaNVMmekQ3ck1DaiV7LWt3PV9TY1E8X2Nx
dGlvJD1xendzJVQhV1VmVWYjZj5rdyFlI1FEQjl7P1BXPVoKeihqUzM3JD16N241c1hgNEAzKVpB
Rmtffl9BQElkey1KMmsoUzZtMT42V3h6SWRWI241VS00cEcwclpWSW4lViZJCnpsajxaOCU2NXdm
dGBLRFoocHowYzg4RzcoUGJnQjZjRjQoS1FId3RNU3pfMU5VXzNXZ2pMMDdiWkpRc1JqJmZQOwp6
QDxUVTc1aTQxQ1NXR04pWlBfRFlLajdvbjl2U1YlKCVReipZRXRwNWx9X3hYKytnY1MhZylidUF+
dnBRR0VNMXoKekVCYm1kNi1vfGA4Q3oqbXEhWEdhanh5eFYhe3JjLWZ7cnNROzVPRFVfaW1RKyhu
KytFZld3aHF2UklOeGhpQzZTCnpwKHc2aHVpUE11RkQ9cWhkaElOWHdiZShPLSNjTUUoTnw2RExt
aFElXzhQN3N3ckNNU156SHFyPT5fbGtjKTNKYgp6QTN6cndeUz9Vb3xFR2kteFo4SXRVcUJXOFpZ
MHB+eloqKlVEQSpWR0ghMkQzWnhHUGUxeEQ4STNBY3ZyM0JmWkcKeilQZDkyMSNQRmcqJkNwM1hZ
QWg5Zz0yPStKSmNJQWFicnZKQj9aVVhAP3h4ZDJ+b1gtYm5jUTJPdDdkK3deQUozCnpuTj1PM1Vq
Vj1JSlpAVkpkXnlmYll+eTVzZ041KmhePyZOeVVQP0UwVGEmd09ra0FQSGZ8JHE1NnlBJGNZNVQ3
Ugp6ZFRaOzYoUWFkNFI0ej1RSGt6VzlCSHd9YUNZajJBeHwzRnMhRmRjRzZeeDF+PUtqOzhEVzdE
emh0RGNuS3BNcyUKekZ3fHIxMyR2cTErPjxNcGp1NDRzTTMjRGRsez5wVnFILVA+U2Iyb31iem1o
dz5MVXdweX5WVzd2c2ZxQEt2OVcpCnphKDtiK2xDd0wydERqZnVWSX56WktJbG9kKUtAJW54U2Mr
PGRCXy1qTHJLbGNXRi1iRV9VPG1+ZlRTQ3dsK3g+eQp6VF5EZWctd2pTVz1NT1BScVApXlRlJT9H
N0JHbGMqcFB6VTZqan4odD9AKkxWcnMqYnN1WVk+JmZUd2Rub1lFdUQKekV2MGs3PFZtdDJgcUBm
WEVLXkMpbGt6Plc5QVZsKzlnZ2M3M00kY2g0WFVRU3Qla1d5KGNSbyFWa0tCcmBJSE1NCnp3O1pD
TkJDSkN3QChOa0w4SGBnPWhYdW5ob0kwIV47a19AcmNKZGRXaUxZem1DWTZNVjJFMUBSJG4mY0VB
a1EyQgp6TVJ+NDduPX5RcSU3XnoybUJ6dmVlY147RG0kWT1aT3hwc3VuWlozTmByTTR0Xm4zSUtw
MjJhcDchZFcrXmkrQ2QKeilwMiVXc24wIzQmclJvNGBXc3d+ckZ6JEs7bXZ1bW1NZ2p9OEAjYWdK
YkckOUF1ZyFtOV5DYCQ1K29FOERebGdMCnp4WUZ8RTk+K19mOHBTPE4oV1lQVSliY0pYPFk1Nml4
eDQ+MkE9OWZnRWRELSZgITVARVFCTTYoN3JOSEsldFFAegp6VmZiSlRJSE9TJSlDSUJ1YFVZZTRi
dWwpKmx4UlMzQjAyY3Y1VyNAaE5kVDxtSk9uSldHeD1tfEVvPXdhR310TGQKejU3UFZCNFB7eGIt
bHcmZzdrZTJpMEhzYTM4NVpENTs1IXU8N3pvU3tAYUVkMit3Yl9IdF8zZ3JhQSVaVCFMVyEhCnp5
ZzlCRSRBK0wxWiVNRikmZlZEfjJCJWI3dmhWVnopJDEjT3J+a3RqOXFpc1g2enx9aSUzeVE3dXpD
ZiteSWg3bQp6OXVjX0kmPG5kWDAmQyNUJmJZOF56YSk4eWx3ZCY9ZVJvVD1VbjRpPCUhPS1qcjI0
MEAwRkptSk5HK2NZQFJXYm4Kemk4LXtSWE1LRUllPGQwODZgQ1o5X2tNU2JoQHVhYEhySyRkMUR5
c2MlTTRhSCVJRmk7YURkelVlKCF8SGhjOWN0CnpRejc2eVJ4KE4jVH00R09fMjVfMm5EcWJzWHYh
eTw/eCViTWBqQWAtJlZPN1hsaHBTJCgxKFlJXzEpSXNJIVlxSQp6T1lWfj0lZXhBS0tiJSZoYlFj
NSYwUH1nM1ZCb349c3NlVzgrMikrMnxMRX09RUgqfkhXd1k8Tis/TERhIStuUkYKel8wJmIqdllW
UWtKVTFQLVMqbkhPbUIoYT01PyQ2PjIpaz5OOzxJbmJAZFYzKW0qZ0okXlhDTUEkdW8pN3V0dEMm
CnpQZSo+fGZvekd+aWlSS3JTd3QpU1RzMzkwYFJfQmh8RlIoJCgzb2M9bmtAQ2YxUDJBVXNSYXV8
aio0O1Erby17Ygp6PU1zbHtMZVZmd3w3U3dTXkslYWZMWmpvJT4+cXtebGlCXnt7WFA/Z252N0JW
Jn0jSTN2UnM2Km1vWD41SklYeWcKek5sZ3xkKjw1akxNdlR5WVVSbmYoc2dSXkVFcztmKXV1fiVL
OHJXNWxEfmVVaV9yUTM9aWR1Z1dsak1TQXtTRzdVCnpFbHhKfUkqVW15Vi0hLSZMJVU7c1c+VF58
V3YtUjVxZEZMJCQyNEh4P0JuQ305WVViRnlgMGRvcEFLaEZvMXxOSQp6JUxEbDBZdkQpJXEqSj1W
V2Jqc3UpP3VTNTZvO0ZHYzMzcjVhc3o3Um9ONVBGZ1FSSzhGdlE5SihwIWMxcFpHdkoKekhefG9e
WjRReEY1TG1taHNXcGImJVFRdk00Tj84MD58SSE3YmRIPW4oblBzT0dgYlRFaXpONkRiP0t3S0pP
Q2UkCnpKNGYwUUltVHxzclAzK1IpR005aihRPTZzYD5YQDlIa3pPcUh+USMpeUUldGlEbWdUdmpk
bnttSzNiTEYyRjhOdQp6QG0rKWBSYm04Rl81cilWQiRPRjRpdT1nZUB0ZG5+e2UoI2tvMj9UNXlk
ZHBGPHAkYz9pRSpYWlA5e3FfS0dPV2QKeigjcyMqZD9zOChJcjRtMUNaQFllX3w1QEw1WnpXejVa
UW5VcUZpTnQqc041WHpua3BAYm5UQnZOPFBLbXt1SUl1Cnp3RXJKWjBWQFQmPzx2fGU/akJ9NDB+
bEdxQyl9V013PWFEbDklPyUmaG02QkY+VzQhczIwK2Fud0t6fE0oNnRaQAp6WUEhVldXJnlOdjA9
Vl9oOGhwbmZFOGAjLUdDcCo3IU0tVT9wailSRDQrKU5LZEpyYU9mP0xsI2FCd0VIYXVoKUYKelE5
IUZUYlUzTWohVDNLamJATkcwZktTbVJwRntNQXZoOHotSzhGWm1uRSRWQyt2aTA0IS1uTU41UGM1
T1p4KlVACnoqenx3UmskeWhXeyYzWHhiQkkyTj1yZVd2YiFIfn5HclJzUUt0NX08fE1GN1h7fHt5
Q1ZDZTJzLSM/N2plUlR4PApSbXZAIURjODxIVWNBV2JEZSpqR0k8dW17UQoKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXItY2Fj
aGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLXNoYWRlci1jYWNoZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGNkYzU5NWQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLXNoYWRlci1jYWNoZS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSw0ICswLDAgQEAKLSAgICAgCi0gICAgIAotICAgICAKLSAgICAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXItY2Fj
aGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1z
aGFkZXItY2FjaGUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODdmYTY1Ni4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItc2hhZGVyLWNhY2hlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi08IS0t
IFRoaXMgZmlsZSBzaG91bGQgdGVzdCB0aGF0IGN1c3RvbS1maWx0ZXJzIGNhY2hlZCByZXNvdXJj
ZXMgYXJlIHNoYXJlZCBiZXR3ZWVuIG11bHRpcGxlIGVsZW1lbnRzLiAtLT4KLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgY2Fj
aGVkIHNoYWRlciByZXNvdXJjZXMgYXJlIHNoYXJlZCBjb3JyZWN0bHkgYmV0d2VlbiBlbGVtZW50
czwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFi
bGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0
KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUo
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAotICAgICAgICAgICAgZnVuY3Rpb24gcnVu
VGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4g
dGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0Pgot
ICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAudmVydGV4X3NoYWRlcgotICAgICAgICAgICAg
ewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvdmVydGV4LW9mZnNldC52cycpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5mcmFn
bWVudF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
ICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hhZGVycwotICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVy
dGV4LW9mZnNldC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBu
b3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAg
ICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tIFRl
c3Qgb2YgY2FjaGVkIGN1c3RvbSBmaWx0ZXIgc2hhZGVycy4gWW91IHNob3VsZCBzZWUgMTIgYmxv
Y2tzIG9mIGNvbG9yIGJhcnM6IDQgaWRlbnRpY2FsIGxpbmVzIHdpdGggMyBibG9ja3MgZWFjaC4g
RWFjaCBsaW5lIGNvbnRhaW5zCi0gICAgICAgICAgICBhIGZyb20gbGVmdCB0byByaWdodCBhIGJs
b2NrIGEgYml0IG9mZnNldCB0byB0aGUgcmlnaHQsIGEgd2FzaGVkIG91dCBibG9jayBhbmQgYSBi
bG9jayB3aXRoIG9mZnNldCB0byB0aGUgcmlnaHQgYW5kIHdhc2hlZCBvdXQuIC0tPgotICAgICAg
ICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2Uu
cG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVz
b3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVy
cyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAgICA8YnIgLz4K
LQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9y
ZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNy
Yz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJv
dGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAg
ICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9z
aGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcg
Y2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBz
cmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJm
cmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNl
LnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXIt
cmV1c2UtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZGM1OTVk
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1zaGFkZXItcmV1c2UtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCArMCww
IEBACi0gICAgIAotICAgICAKLSAgICAgCi0gICAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUzNGMxZjguLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXNoYWRlci1yZXVz
ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzQgKzAsMCBAQAotPCEtLSBUaGlzIGZpbGUgc2hv
dWxkIHRlc3QgdGhhdCBjb21waWxlZCBjdXN0b20tZmlsdGVycyBhcmUgc2hhcmVkIGJldHdlZW4g
bXVsdGlwbGUgZWxlbWVudHMgYW5kIHRoZXkgZG8gbm90IGNyYXNoLiBUZXN0IHBhc3NlcyBpZiB0
aGVyZSdzIG5vIGNyYXNoLiAtLT4KLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+
Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgY29tcGlsZWQgY3VzdG9tLWZpbHRlcnMgYXJl
IHNoYXJlZCBjb3JyZWN0bHkgYmV0d2VlbiBlbGVtZW50czwvdGl0bGU+Ci0gICAgICAgIDxzY3Jp
cHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZp
bHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KGZhbHNlKTsKLSAgICAgICAgICAgICAg
ICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2Nl
ZWRlZC4KLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIGNoYW5nZVN0YXRlKHN0YXRl
KSB7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSBzdGF0ZTsKLSAg
ICAgICAgICAgICAgICAvLyBGb3JjZSBhIGxheW91dC4KLSAgICAgICAgICAgICAgICBkb2N1bWVu
dC5ib2R5LmNsaWVudEhlaWdodDsKLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpIHsKLSAgICAgICAgICAgICAgICAgICAgLy8gRm9yY2UgYSByZW5kZXJpbmcuCi0gICAgICAg
ICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmRpc3BsYXkoKTsKLSAgICAgICAgICAgICAg
ICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1
blRlc3QoKSB7Ci0gICAgICAgICAgICAgICAgLy8gVHVybiB0aGUgc2hhZGVycyBvbi4KLSAgICAg
ICAgICAgICAgICBjaGFuZ2VTdGF0ZSgiYWxsLXNoYWRlcnMtYXBwbGllZCIpOwotICAgICAgICAg
ICAgICAgIC8vIFJlbW92ZSBhbGwgdGhlIHNoYWRlcnMsIHRlc3RpbmcgdGhhdCB0aGUgY29tcGls
ZWQgc2hhZGVyIGNhY2hlIGlzIGludmFsaWRhdGUgY29yZWN0bHkuCi0gICAgICAgICAgICAgICAg
Y2hhbmdlU3RhdGUoIiIpOwotICAgICAgICAgICAgICAgIC8vIEFkZCBiYWNrIGp1c3Qgc29tZSBv
ZiB0aGUgc2hhZGVycy4KLSAgICAgICAgICAgICAgICBjaGFuZ2VTdGF0ZSgic29tZS1zaGFkZXJz
LWFwcGxpZWQiKTsKLSAgICAgICAgICAgICAgICAvLyBUdXJuIG9uIGFsbCB0aGUgc2hhZGVycyBh
Z2Fpbiwgc28gdGhhdCB3ZSB0ZXN0IHRoZSBkZXN0cnVjdGlvbiBvZiB0aGUgY2FjaGUuCi0gICAg
ICAgICAgICAgICAgY2hhbmdlU3RhdGUoImFsbC1zaGFkZXJzLWFwcGxpZWQiKTsKLSAgICAgICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3Jp
cHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIGJvZHkuYWxsLXNoYWRlcnMtYXBwbGll
ZCAudmVydGV4X3NoYWRlciB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3Rv
bSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzJykpOwotICAgICAgICAgICAgfQot
ICAgICAgICAgICAgYm9keS5hbGwtc2hhZGVycy1hcHBsaWVkIC5mcmFnbWVudF9zaGFkZXIsIAot
ICAgICAgICAgICAgYm9keS5zb21lLXNoYWRlcnMtYXBwbGllZCAuZnJhZ21lbnRfc2hhZGVyIHsK
LSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNv
dXJjZXMvY29sb3Itb2Zmc2V0LmZzJykpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgYm9k
eS5hbGwtc2hhZGVycy1hcHBsaWVkIC5ib3RoX3NoYWRlcnMgewotICAgICAgICAgICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycp
IHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpKTsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCki
PgotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9y
ZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNy
Yz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJv
dGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAg
ICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9z
aGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcg
Y2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBz
cmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJm
cmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNl
LnBuZyIgLz4KLQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhf
c2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1n
IGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmci
IC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMv
cmVmZXJlbmNlLnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdHJhbnNmb3Jtcy1hbmlt
YXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggOWNhNTY5ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdHJhbnNmb3Jtcy1hbmltYXRpb24tZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi0gICAgIAotUEFTUyAtICJ3ZWJr
aXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1peC1mcm9tLW5vbmUtYm94IiBlbGVtZW50
IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRl
ZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwgMCwgMCkpCi1Q
QVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LXRvLW5vbmUtYm94
IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hh
ZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwg
MCwgMCkpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LXNp
bmdsZS10cmFuc2Zvcm0tYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86
IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0
cml4KDE1LCAwLCAwLCAxNSwgMCwgMCkpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkg
Zm9yICJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWJveCIgZWxlbWVudCBhdCAxcyBz
YXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5v
bmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCgxMDAsIDAsIDAsIDEwMCwgMCwgMCkpCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LW11bHRpLXRyYW5zZm9ybS1i
b3giIGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1z
aGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybTEgbWF0cml4KDE1LCAwLCAwLCAx
NSwgMCwgMCksIHRyYW5zZm9ybTIgbWF0cml4KDEwMCwgMCwgMCwgMTAwLCAwLCAwKSkKLVBBU1Mg
LSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5z
Zm9ybXMtY291bnQxLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBj
dXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJp
eCg1MCwgMCwgMCwgNTAsIDAsIDApKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZv
ciAiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYm94IiBlbGVtZW50IGF0
IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52
cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDUwLCAwLCAwLCA1MCwgMCwgMCkpCi0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci10
cmFuc2Zvcm1zLWFuaW1hdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDViMWJhZjYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSwxMTAgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1sPgot
PGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENT
U0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAg
ICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAg
ICBtYXJnaW46IDEwcHg7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwotICAg
ICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1
c3RvbS1taXgtZnJvbS1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjog
Y3VzdG9tLW1peC1mcm9tLW5vbmUtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAg
ICAjY3VzdG9tLW1peC10by1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlv
bjogY3VzdG9tLW1peC10by1ub25lLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0KLSAgICAg
ICAgI2N1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1ib3ggewotICAgICAgICAgICAgLXdlYmtp
dC1hbmltYXRpb246IGN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmltIDJzIGxpbmVhcjsK
LSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLW1peC1kaWZmZXJlbnQt
dHJhbnNmb3Jtcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20t
bWl4LW11bHRpLXRyYW5zZm9ybS1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246
IGN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0K
LSAgICAgICAgI2N1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQxLWJveCB7Ci0g
ICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNm
b3Jtcy1jb3VudDEtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICAjY3VzdG9t
LW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYm94IHsKLSAgICAgICAgICAgIC13ZWJr
aXQtYW5pbWF0aW9uOiBjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1hbmlt
IDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0
b20tbWl4LWZyb20tbm9uZS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSk7IH0KLSAgICAgICAgICAgIHRvICAg
eyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNm
b3JtIHNjYWxlKDMwKSk7IH0KLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1l
cyBjdXN0b20tbWl4LXRvLW5vbmUtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgz
MCkpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8t
c2hhZGVyLW5lZWRlZC52cykpOyB9Ci0gICAgICAgIH0KLSAgICAKLSAgICAgICAgQC13ZWJraXQt
a2V5ZnJhbWVzIGN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmltIHsKLSAgICAgICAgICAg
IGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwg
dHJhbnNmb3JtIHNjYWxlKDApKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0gc2NhbGUoMzApKTsg
fQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1taXgtZGlm
ZmVyZW50LXRyYW5zZm9ybXMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgxMDAp
IHJvdGF0ZSgwZGVnKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSBzY2Fs
ZSgxMDApKTsgfQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3Rv
bS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0xIHNjYWxl
KDApLCB0cmFuc2Zvcm0yIHNjYWxlKDEwMCkgcm90YXRlKDBkZWcpKTsgfQotICAgICAgICAgICAg
dG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0
cmFuc2Zvcm0xIHNjYWxlKDMwKSwgdHJhbnNmb3JtMiByb3RhdGUoMGRlZykgc2NhbGUoMTAwKSk7
IH0KLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tbWl4LWRp
ZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50MS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHNj
YWxlKDEpKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0gcm90YXRlKDBkZWcpIHNjYWxlKDEwMCkp
OyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLW1peC1k
aWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBy
b3RhdGUoMGRlZykgc2NhbGUoMTAwKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHNjYWxlKDEp
KTsgfQotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLSAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3Vy
Y2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vYW5pbWF0aW9ucy9yZXNvdXJjZXMvYW5pbWF0aW9uLXRlc3QtaGVscGVycy5qcyI+
PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotICAgICAgICBj
b25zdCBleHBlY3RlZFZhbHVlcyA9IFsKLSAgICAgICAgICAgIC8vIFthbmltYXRpb24tbmFtZSwg
dGltZSwgZWxlbWVudC1pZCwgcHJvcGVydHksIGV4cGVjdGVkLXZhbHVlLCB0b2xlcmFuY2VdCi0g
ICAgICAgICAgICBbImN1c3RvbS1taXgtZnJvbS1ub25lLWFuaW0iLCAgMSwgImN1c3RvbS1taXgt
ZnJvbS1ub25lLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVl
ZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybSBtYXRyaXgoMzAsIDAsIDAsIDMwLCAwLCAwKSkn
LCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLW1peC10by1ub25lLWFuaW0iLCAgMSwgImN1c3Rv
bS1taXgtdG8tbm9uZS1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwobm8tc2hhZGVy
LW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwgMCwg
MCkpJywgMl0sCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LXNpbmdsZS10cmFuc2Zvcm0tYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1h
dHJpeCgxNSwgMCwgMCwgMTUsIDAsIDApKScsIDJdLAotICAgICAgICAgICAgWyJjdXN0b20tbWl4
LWRpZmZlcmVudC10cmFuc2Zvcm1zLWFuaW0iLCAgMSwgImN1c3RvbS1taXgtZGlmZmVyZW50LXRy
YW5zZm9ybXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVk
ZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCgxMDAsIDAsIDAsIDEwMCwgMCwgMCkp
JywgMF0sCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0iLCAg
MSwgImN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybTEgbWF0cml4
KDE1LCAwLCAwLCAxNSwgMCwgMCksIHRyYW5zZm9ybTIgbWF0cml4KDEwMCwgMCwgMCwgMTAwLCAw
LCAwKSknLCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jt
cy1jb3VudDEtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3Vu
dDEtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMp
IG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCg1MCwgMCwgMCwgNTAsIDAsIDApKScsIDJdLAot
ICAgICAgICAgICAgWyJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1ib3giLCAid2Vi
a2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0
cmFuc2Zvcm0gbWF0cml4KDUwLCAwLCAwLCA1MCwgMCwgMCkpJywgMl0KLSAgICAgICAgXTsKLSAg
ICAgICAgcnVuQW5pbWF0aW9uVGVzdChleHBlY3RlZFZhbHVlcyk7Ci0gICAgPC9zY3JpcHQ+Ci08
L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tbWl4LWZyb20t
bm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtdG8t
bm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtc2lu
Z2xlLXRyYW5zZm9ybS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3Rv
bS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJi
b3giIGlkPSJjdXN0b20tbWl4LW11bHRpLXRyYW5zZm9ybS1ib3giPjwvZGl2PgotICAgIDxkaXYg
Y2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQxLWJv
eCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLW1peC1kaWZmZXJlbnQt
dHJhbnNmb3Jtcy1jb3VudDItYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGlkPSJyZXN1bHQiPgotICAg
IDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3gtZXhwZWN0ZWQuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtYm94LWV4
cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJhMGNkZjcuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUt
bWVzaC1ib3gtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLTwh
ZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVf
bWVzaFNpemU8L3RpdGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVz
dGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3
aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1
NSwgMCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAg
IDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJv
eCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3guaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtYm94Lmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZlNjVkYTQuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3guaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+
Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfbWVzaEJveDwvdGl0bGU+Ci0gICAg
ICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENT
U0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewot
ICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93
bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwot
ICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAg
ICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0g
ICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJlZDsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
dXJsKCcuLi9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcycpKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQg
ZGl2IGlzIGNvbG91cmVkIGdyZWVuIGlmIHVfbWVzaEJveCBpcyBjb3JyZWN0bHkgc2V0IGFuZAot
ICAgICAgICAgICAgcGFzc2VkIHRvIHRoZSBzaGFkZXIuCi0gICAgICAgICAgICBBcyBvZiBub3cg
dV9tZXNoQm94IGFsd2F5cyByZXR1cm5zICgtMC41LCAtMC41LCAxLCAxKTsgdGhpcyBzaGFsbCBj
aGFuZ2UKLSAgICAgICAgICAgIHdoZW4gZmlsdGVyIG1hcmdpbnMgd2lsbCBiZSBpbXBsZW1lbnRl
ZCwgc2VlOgotICAgICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTcxNDAwCi0gICAgICAgICAgICBGYWlscyBpZiB0aGUgZGl2IHN0YXlzIHJlZC4KLSAgICAg
ICAgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci11LW1lc2gtc2l6ZS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLWV4cGVjdGVkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZkYmNjM2UuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLWV4
cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdCB1X21lc2hCb3g8L3Rp
dGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAg
ICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9h
ZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0g
ICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS1tZXNoLXNpemUuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggZTI4MWQ4NC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS1tZXNoLXNpemUuaHRtbAorKysgL2Rl
di9udWxsCkBAIC0xLDM2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhl
YWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfbWVzaFNpemU8L3RpdGxlPgotICAgICAgICA8c2Ny
aXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQot
Ci0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5n
IHN1Y2NlZWRlZC4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNm
aWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAg
ICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
ZWQ7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIHVybCgnLi4v
cmVzb3VyY2VzL3UtbWVzaC1zaXplLmZzJyksIDEwIDIwKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgot
ICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVk
IGdyZWVuIGlmIHVfbWVzaFNpemUgaXMgY29ycmVjdGx5IHNldCBhbmQKLSAgICAgICAgICAgIHBh
c3NlZCB0byB0aGUgc2hhZGVyLgotICAgICAgICAgICAgRmFpbHMgaWYgdGhlIGRpdiBzdGF5cyBy
ZWQuCi0gICAgICAgIC0tPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4K
LSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNpemUtZXhwZWN0ZWQuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LXRleHR1cmUtc2l6
ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlMzY2YTFkLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci11LXRleHR1cmUtc2l6ZS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxl
PlRlc3QgdV90ZXh0dXJlU2l6ZTwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAg
ICNmaWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMCwgMjU1LCAwKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8
L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGlkPSJm
aWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNp
emUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11
LXRleHR1cmUtc2l6ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNTkyMDZi
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci11LXRleHR1cmUtc2l6ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAot
PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3Qg
dV90ZXh0dXJlU2l6ZTwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2Vi
S2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9u
IHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8g
cnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Njcmlw
dD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNvdXJjZXMvdS10ZXh0dXJlLXNp
emUuZnMnKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgot
ICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAg
QSAxMDB4MTAwcHggcmVkIGRpdiBpcyBjb2xvdXJlZCBncmVlbiBpZiB1X3RleHR1cmVTaXplIGlz
IGNvcnJlY3RseSBzZXQgYW5kCi0gICAgICAgICAgICBwYXNzZWQgdG8gdGhlIHNoYWRlci4KLSAg
ICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYgc3RheXMgcmVkLgotICAgICAgICAtLT4KLSAgICAg
ICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LXUtdGlsZS1zaXplLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggY2VjYTA2Ni4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUtZXhwZWN0ZWQuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0g
ICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfdGlsZVNpemU8L3RpdGxlPgotICAgICAg
ICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgp
Ij4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXUtdGlsZS1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggODk4MDQ5Ny4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDM2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAg
IDx0aXRsZT5UZXN0IHVfdGlsZVNpemU8L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAg
ICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAvLyBX
ZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4K
LSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNmaWx0ZXJ0ZXN0Ym94
IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgICAgIHdpZHRo
OiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgICAg
ICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIHVybCgnLi4vcmVzb3VyY2VzL3Ut
dGlsZS1zaXplLmZzJyksIDEwIDIwKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4K
LSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0t
Ci0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVkIGdyZWVuIGlmIHVf
dGlsZVNpemUgaXMgY29ycmVjdGx5IHNldCBhbmQKLSAgICAgICAgICAgIHBhc3NlZCB0byB0aGUg
c2hhZGVyLgotICAgICAgICAgICAgRmFpbHMgaWYgdGhlIGRpdiBzdGF5cyByZWQuCi0gICAgICAg
IC0tPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4KLSAgICA8L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItdW5hdmFpbGFibGUtdmFyeWluZy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXVuYXZhaWxhYmxlLXZhcnlpbmct
ZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzJlZTAzOC4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
dW5hdmFpbGFibGUtdmFyeWluZy1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTUg
KzAsMCBAQAotPCFET0NUWVBFIEhUTUw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VW5hdmFpbGFibGUg
dmFyeWluZzwvdGl0bGU+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2Zp
bHRlci10YXJnZXQgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVp
Z2h0OiAxMDBweDsKLSAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAyNTUsIDApOwotICAg
ICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImZpbHRl
ci10YXJnZXQiPjwvZGl2PiAKLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11bmF2YWlsYWJsZS12YXJ5aW5n
Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdW5h
dmFpbGFibGUtdmFyeWluZy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0OTA5
Nzg2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci11bmF2YWlsYWJsZS12YXJ5aW5nLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyMCAr
MCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxoZWFkPgotICAgIDx0aXRsZT5VbmF2YWlsYWJsZSB2
YXJ5aW5nPC90aXRsZT4KLSAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjZmls
dGVyLXRhcmdldCB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWln
aHQ6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7Ci0gICAg
ICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2Vz
L3VuYXZhaWxhYmxlLXZhcnlpbmcuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMg
aXMgYSBuZWdhdGl2ZSB0ZXN0IGFpbWVkIHRvIGNoZWNrIHdlIGRvbid0IGNyYXNoIHdoaWxlIGxp
bmtpbmcgYSB2ZXJ0ZXggc2hhZGVyIGFnYWluc3QgYSBmcmFnbWVudCBzaGFkZXIgd2hlbiB0aGUg
bGF0dGVyIG1ha2VzCi0gICAgICAgIHVzZSBvZiBhbiB1bmF2YWlsYWJsZSB2YXJ5aW5nIHdoaWNo
IGlzIG5vdCBiZWluZyBwYXNzZWQgZnJvbSB0aGUgdmVydGV4IHNoYWRlci4gCi0gICAgLS0+Ci0g
ICAgPGRpdiBpZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+IAotPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY29sb3ItY2hl
Y2stZXhwZWN0ZWQucG5nIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3Qt
Y29sb3ItY2hlY2stZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1
YTI4ZGY2M2M0OGMyNDE3ZjU2MGFjZDc5MDg1MTQ4NTM5OTAxMDdmLi4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/
ZDAwMDAxCgpsaXRlcmFsIDMxNDE3CnpjbWJAdVhILSpQQEhRJCVRQmU/NGA2MGNGRy0pQ29tRUl5
PEFQfCtfckkhJGppaHYtIW0hTEBSeShoOElMVEoobgp6NVR0fTJBfXMqfDxpYEt8dUtWNyo/JGBT
JVN0bj1qR2tlYkxuUDw7RGxoX3hBU35zdVh6a2NiYHJKRmsxPmMqRVkKeihRc2U3TUUmeVc3MFEq
SWZPbF54QUhzZWJGYTdNQzlxaW5Fe1hIJjglZ1EtOCRqQ3sqdjZHUlBtOX0kfmxYakd+Cnptdzlk
ZmBtdjs9alFrU15YXkdieW1vQk1ZKG91aEU4YnF+fFBaej03bFV9I3pLQX4mbigpP2haLTYtUzVD
R315IQp6PntvQlEzOXM0TT9BKkIrVz5nPXlqUHgkO3ZYMm0wd2NmVV48byU3NWJmVjRUPVUyWnNh
UDZ9Qm9BaFFZazM2eSYKekBsYz1tMFNhQjFvZl9QPWMje3BTdjhiKHBobmQqYWl1bXpZSmlVND07
dTA8UUM5MTF4bSNGYEplYThMYl9BXmQ8Cnpze2l9S3xOUW95SC1oRkomO1AjVmY4WUk7PXt3YzZv
M2dBPXxKVDYoZWYwX1YlPlFkWD9weWIlKnBvKElxJSE/Swp6cFRiUjw/JmtsRyk0ak5OPVBCO3tU
KExUdGlGPWdlWUxpfilQQSVFQng1QmclTW8pa3lHY3hzUGV6OGU3bytXKmUKel9Ad1Q8Nz5CRGMj
QHdKU2JqNXBCNyUrMlJpaEwoPFlsY2NWSEQraHdoPHY/O19zJExLX0ZNbGNFJGRsIV5CSUVACnpW
TlF8aWUjeTd+ZC01bV9yWnJGJCowJnk0XiFOQGxeIyQjZmd3cyFtT1pCJVJ6RiFtaUgkIXJuSGtm
b3g7P2Q7QAp6SEk9SWAyfEpZIUQodmBZSXdnMns8NjxJTzdVNFk0NHQ3enx7bVo8IWdsbT9LdCoj
IWJRQWN2emlvNDA2JV94JSQKendaO1o7XmFgbmMoWWg3JEMqbSs+ZCowKz5JWUZRRFFtKkgheWBu
MmhWQG1vN1BlfklPcVJ2bnptQXM8dVc/QFgkCnooRUpgdyVVQHtYOXQ9ME4mckRsKDxiU28zTz9q
Smw5IUd2PnhOMV4mbyVHRE9XQiNncns9Mig5UkxJV3sjeDVKRQp6O2J2OTtMPndSUnc2dENRNkxE
d3lzSVc7bmBRUTgjXldWfHY1TUk4bWBKMn0kdlJsK0BvMXpjN3NIaGotTVc3cVEKelZAQTczR2B1
Wmt8SGUjVzMrdDNxQ31ZJCs3VmNDRCZLe3I5OCY4V0dpO0pEc0FfanBeXmp2aik+KSM4YClfY2RY
CnpKQnl8PW5GdTB2KCVYd1AyO0h+KSQ5UDBHSl44cEwhQ3BFdXFeaXF9TWQxa3F4Yk9KQVNeTnlS
Q2w+WkA2LXE8Wgp6PzZmJEZufkVyRSE4Yk5STXJKV2BwNXxiUVFWM0JOTiohOzFRPTd7NiZMPihi
M0NhU3NtI1YzTHZrZipANzh4cDwKeiUxNW1eWm1JPys1OGtpU1Amdj1nITxKOUkrLWZrdileM3h6
NF5DKyhUZVJUaERhKENxc29ubHZtVnBBJGFraSs2CnphNER6Rj4wbDBffDVORmR3cURmMkZTbGZq
bG96dD0mVSVeNHFNK3I4YWxVcEhwTDFUQmlEOWxWTUE+VDJlcUNlKQp6YFNIMmZtYjElP1h0ekp7
UUJvZS1CWlEyRzhZPHhAYlZXTGt7a3QqTj8lKUU7TWgoeC1tcEVsbEhkbFBFWnltNz0Kek9gM0dZ
QyVvSDtAKiQlT2tjRFdhOFNudlRAWUQ+ci1KXmZWNkBNXl5ObVl6OUFqdSZnK1RrO0oqaTNkTTt3
Q1VLCnopITdkKVlqaExqaUhpYjNlM21gd29pKXZ5OWYkKVJJPyZeP1B5dyVXR1gjTktNeSgxdmFt
Q3R9QjA8eHV1a2dtRAp6SUZoQF5xRFA8RG5BUkxJLTQhbyU4U2M7PD9qbFRRO09+bUJicz40T2A3
fk8rd0V7MTt7JSM/QEJ6ZXd9c2AkWlAKenBJaC02U3VKPj5wKG4rQ3RAdTtwKyZlcFl8TGlWSz9h
ITJxdWA/Z3smRHdzYVREVUhCYUZXWENWcUFxN3A+enRzCnpOJigldHl4RWdkVCFyTi1BTFgtfFhL
WVYmOUdDXldyJm5nWGc9dzM2RFR+SUA5Z2RfKGYmSW5fU2Y4RmJ1Y05DTQp6ZWJSSFEpcGxLbXpk
a041M1FvYE9gOH0oIyZwOFZvXjA4Yk17dXk/MUFlTT5Eb0VHZD5gRm1pdFVyZXRsWG42UlkKejQr
VEJuc3h+cGQ/I2dEe09xe0R9KCo7YDApZ0Q2SUhweklaVjA5ZCVqMDl5YiZscUVPb29PTU4xJFch
O1pwMHxACnppP25pT0xeWDVUOWp2ayk+V3dGMGVKbVNid0tJWWlnMHJMIVJnOW5vMVlfX2o9Z2I5
JDJDR15he3l5TER2ekFEJAp6P2FGdlVqMER4QkQzMEp+M0Y0THx1Yk5xTVh2WFJeUmdSfEl1O21Q
Y0BBN0pKb2V1Y29FJXJZMmZ3cWdQdTxRYHsKekl8MWdnWmVAQWx6VDZaNGB5KTl1LUl+cSp3Sm48
MVhNI0o9bUxYaF9NaDQ2UnBLdjEzelVeb2QzVysxfW9VRGpoCnozfE9SfmlIaEpMbElRPX51aThJ
OE4ySHw8SlE5UHIoNkp8Wi0oQmwxR0R2R044YXxqU1RYfVVFX096S2otQVRxdgp6Mi1aSHgpYWM8
aHMrZ0IoVzE1Z0hnNU1SfS0/cUU8XihkRFI3a0B3SDNEMzwyMDx1KjNNMn08QD5fNWszREttYmcK
ei19WEFVM2JYVURSNipFaiRYR2V9TDIyYjlqbGU4XytNPWZLPmA2WSZmdnhwZXdOVFVBdGpaLXJF
XkIrUChmUSlgCnpxY1NDJlZlUUc+aGoqXzF6KDQhLXpTdzs5Ym0jUD4pNX1oTzFXPXtkMHNzNG88
dzI3STdnVlkkSnJrdExPQWlRYAp6Q0RuVTB4YVAwaiZDQ0A8dD0mTldtPmQ4TzdiWH5pMzU9SXB1
RU53ZyleNXdqRmcpU3JeU0EldWkyK19JXzZuOTsKemZBPChYQnpBTV90Wmh0MHNxdSFDYkJPOGAp
QH1gQEQ4bEZDVyVBNHdTTXVKY3klZUpRJjx6QEBjXlQ7N1kkK3QrCnpyVENFRXNpVWB6dHAhIV9T
di00eHYlITY4dkAxPjhzTjs+MmtFQyQjdldlcj4hJUd6M24pSHMxJHxaMz81Kz82bwp6bDxpV3Ql
TzdBUjFuQ04rQkFLTHJUU0kxIUZ0QExlLTk9KGVaR2BESEUyZmhZNjsxNnc8YXROK2R4ZlJlZVA7
cDkKekpAbzFRKGo4bForaDFpYUtNRnItI18+dipea05leyEhPGFrVUkmKiNyOGFNOHQ3cyN6LX0z
Zj1wWVlzc1NHQWkpCnoqPkItP3hnSW14SHktaGcxMyZSaUlWVDh5V3tiU09uVSk2eFJfKl5qU1JK
TzxmZDZmTWNfbXJJMGg1SX0qX19GWQp6UGE0Tm1HeFduXmY3YVR6bnhSTWhYMkdheztOe24hMUUt
JU47QjVoJk8kQiolI0U8IzR7Zm9DNVljeHRneWU1K3YKemRSR3x7cW9MNytjeDYmRndYYSRlaHN0
ZSNrVCFYJig9TUA+Sip1cDJkfE5fPWo7PChsOyN2RGFtK3tGQF42V2hDCnpkMkxFQ0E4RUM4SGE8
Uk95eWpzdCphazsoXj1PP05jYEg5fXBvb3B0YGRrbWJkQ0BaK3B4YXBxQHRWMkZJamYjRAp6OGA7
YU9mTXNHIV5FfUhtMChZP0hlbSRrJVoqNVN+UVkmJl9tWkw1TmdrMEU3cUlfaUYoaVl7VzhKdVlh
RnB1b0IKeiUzJGpJXmpzJUJKfH07Rk12aElTMSpNdEtCRnV9OSUoZS11TilLZFB2dHVeWHchP3E/
PFBLZzB3RGIkaTFyOFZxCnpyfUZTPVhAa0NyTl5wPlR2TzZ8IyMje1NwPTFMdjU0M017eCF5JkVE
JEc2P0VCY0pRKFU/ISFwUm5+NEFYTTYxaQp6YD0yV1g8REBPIU0pWWQ9SWo+WjlQdzNyNENVdkRy
bmtWc3xfYlg1dkpHLWVwRUl+MmFMTS1vRmFWUyNhaH5maVAKem1ecDMlZW1JcVcrK1VsNCh6O2lL
Mjd+NytaXzUla3gxd19sZ0oxYjMtYmk3YXoofUI5JnloeCVfPSp5QFAqMHliCno+Y3lzXlIocmdO
TEd1N3J4R2xxZjtLVT1vOTYjTWJ1RHF9Km5QeV5oS3IjOTZQcj4kVypKZmhZe0h9JHEoZlkmVwp6
JCUkNmNsJjhzRVg7TlJDeyE5R2lhWn4kNXxLd3N6YzVITlFGaj1lLTlmLW9uQHIhP3Q0dT1DaFRo
TWA4aEQ4bHoKem92fDdtYyVtdEVGVSorfEN3WlN3VXxJKD48Xm5Cb3EhJThHVnFuSXpfZDAya01g
Z3g+NStSeFdVZCl7UjxCNlc4CnpWQVk7VWN4fGRgUX0yTVAyRksxMyEycmlOOypzMjBsWEtyfEYl
WiREeCRQVl82T2F7dnl2PkAxQCkqPmEhS3RqVQp6en4/Njh1UnMwTGRGJCM8ZyE7YmhNVl4qVmBz
QyFeI35Fe0wtZTNMfGZ3M3FtUiFoWn5yeytoJFJSZW9WcUZWNiQKenZHN2xYTEVTP2pEbEIqcD5F
dUJBO1YzKzxAa2pQbzNGPUpWRUBpKm9Vdl83KWxLIzdoZU1GZVlqSXsqenh2Ui0pCno0ZylTRjY5
ZzNMV1pkSFlkO0tuNmA5LWZtOT1EejVNOCNaK2UwLWpZMTw1RnVFdj43RlVXJTxZXkZuZkAmfnFX
cQp6VHZiSEQ2MGEoYHslZWVJcmRkQVNAd3BCemdGS3g/Y29YfHAjb35KVncjQ1F6TnYmUn5MdnNR
QnhxWEFjN0RwR0MKelVBfHdGVSRiUSRLRDNHKE1CN2B5STs8UUBDYVRCS1JzdUI1Mzw9LXQ5N0BT
PEdZQm4pJDFQU3EpeiNId2ZxIUN4Cnp2Tl5KITlYSVhGKV5oaCEzRD9QZSY4Jm4/Mk1xdnVwWjlI
Q3Z4cyYte3tGKnd2TlEzYntjPHg2WDM4QCRxV2gtcAp6d3VSPyNCfX47fTRqZ3NnbllgcVJaPEx4
THtlWD5PXmMrbCZtTE55UVFWKSghPHY0VV5JeFgkMkY/fXQ+YGRfWmYKejMzWikqWWVDMEA/T08o
JkpDR2pUKiMjZSU+RDshVDFNIXJfISl4d0Z6PD1QdFE9bytCOWtLTklJYCZGSU9YOW4mCnp4Njd1
NyVLfEdsKD8mUSp2PExwXlcoIVFOd1I7QypvQzBldHN0Pkd3e3QzcFZaLT1qISRfPUB6LUBnYGQ9
YTJZSAp6P0JzZHM0b3ZASmYtdyFuOE9OWiU4Vy1jaD43fGc/K19xSndxeVBpN1hFUj07M0Y3cztx
IVcwYG43Y0YlJEVPbEwKeip8eHkmM2xhaXc5SnNPbHU2OGl+c1gwbC1kYD5meXdJdTd1LV8zKWdk
SG5KXnBJYnJkIWVATmFSI3FnPXdsdHkxCnpyQ24mVkZUYFlOaExMek8pTGBMZFZufkFUJTc1ZCNT
RXxKI21he1JCS0N+YGApVCZOWkVte3x+TT5wWjgmUm5Zewp6c2k8IX4wOClvUlVJRUpLSiEhajU2
eFFRdndqWUlrSTUxUFNFPTIhcjVuOU9DPz1vREhsOGIzYGNpfTFyP0BedGMKemtVVFJ+VyQjbTJX
UyFaYm9XbHl6PCMjIzRiRWYpKjN9Tn5neU1yclkqOEdVKztmdVV1enIqd1dYKkBZQHt0VHp1Cnpl
eTUjNWc4WkBUdGt5eVI9YlJFIyVkWVlxUV8rKTxTLWJ+bXhjRlE8a29KM3hWTiNJSUxPSzVkbV5a
dEJ0I3RNMQp6RyUqSDRtZjE7e1ckZjUwYXt3d0NiPUtqOzhaSyY4KDxMQ3crWUxWdGV+bT5VRSYz
QT9memYlMktSQTc3a0JGVzIKenZzJW5AYGwralowRk5aIT1yKyRyazZkaVJfeXsxKShnOCNHN1Qj
fCQoKElNRiomdUpVez5oVjtVIyFmJl5qUmwrCnp2TGh+YHZfNFMhYUgrJHpGciRAKHJDVGtYRXs2
JGlMbntiamlSZXgrVUBKcWBYUGRnMmM+Rz9ZblYzMD1TK09qSwp6ayl6UWhNNSVMUUd3M1ZmVnJZ
PEh0SyN6IV8qSiE2ZU09UklSdEJaKEBPZ2tpPFRIfk5vP0leWEdwKSkjSGZWfG0Kem9odDlJaUtA
PnEjNkQ+RVNpQCZ2XiopdnxUQ1NPeEpCailIdmc0NSU/ITQwI3p3KDl2S1hZcj9hcmBGQTZuNTV4
CnpDVUxXTFojYlR1SiE+WEBoeWZCOyF1dF88SGJEZzIoOVQhd1VwZzRSPjVNbno2anMrVHdDZEZA
ezh4Y2BGO0wrXgp6ajA7YU1mTHI1fkMxMVZ+ZFc3cSZDbChSVD9leFNgd2IqQVhkaUZfOVZma295
Y3B2MSo8Xjs2MTIrdzNKNVZsQjUKej8/JkJMNG48VCFSPlpVS3hHaGZDJTRCUmtNMF5ZQnlGUDE5
SFpsVWVkPUJnS0xGajNzK1RPbVktZ2o9Q0JVKD5sCnphTz5gZFRpdkJEaT1TYkFiNDBLSDI1U25D
NTtCPTFqen0xUjFHQ0NudyFfS0B3aF8yYXcrI15eci1YbHBKS2pJOAp6dXJwTnBPVE1wU0lqcVZM
Q1JEM0dtWnUlOFROdGsyYjNuUyVreFJDe0dEd3ByWl53Rjc8PDVYTEQjUyY1MyotRHMKekdqNElf
TUdhSilPSW94Xz5rQ2gjYnZ7bn4hJkdePj5OV24mXnI4YHlzcnt0fXpqOGY5JCF3ZDM3TythRDZJ
LWxXCnopIyQoZHROdmliR09mUyMkYTEjc0pWTU4oKXJpd2VkbjBDMDYobmVweVUmcXZtbCRlZVVV
ODZJOXhBfD0pXzNffQp6XntkQnFeI2dXcV5yVE9pTUQ1dmdrKFM7OHlTZUElUXxxdl4wVCFoN0le
I2lxKEFJX3BTdiYjTmFpdSN4Oz82SGIKejUmZWRSWWJFfChDT0l8cUZBbUtiN2FxdDtJYzFvWXA1
XlhuUzBKK0FyOUFyMmlBQyZyeGVAMnQmdTh0a2UhWEx4Cno8R3Y8dGZVJClfTks2R3hMUz9aVSND
N0g9Wk82OEA9byEzfXgkVXZ3aWVKd3xecnckQkhpWSQyUz1XU3BkcFcrQQp6RkQwckI2MENyPXFG
eDhEJClRPCZoZjdKT1ZEZ2ArZ1ZvNlYmbHhxWlE4bWZGc2pIbThfUV8hKDA9WEFBQkQ4MUMKenBE
RHE8bWJfUSlVRlAlS29zVjA9cUM3NiM9ajZCN1BgTkpmS1BNWmxqKXBsdD9pVG1NKFF7WFB0TWpe
aUA/JWVSCnp3bEhBfTFhX3swWj9rMTsrRkB8bHJVXlpseUJhd01GYWplTS1SaV9vJTRPZGRAIysr
bSMkKSokX019RVF3NVBudgp6NkQyRUJTdVUoYDNtYkRVZERvJUVhQDFPWkU0cjQ1XkNYSmFFaT5m
V3gxPGszdnJScDZ0UVdZazdfWUt9ckJBK04KemlVa3l7Tjcxa1RAR3pqclV1cSs9VWlTUlhoISZP
O187dVNEPTxocyNTe014fmF4RGp7Z24hV0w2JHxIMF5qMTRHCnp6Um1zTzUzUFAyXk1oX0pIQURO
Iyt1VUFHd0IwVmNJRGR7Ql5OSGVMYjchNW9uMkQ5S1UjY25Pa2dubkpZKG1Nagp6KDRnZGtMR0FA
RipMWlpQQT94NyFVOUw2KmNxcGxGXl4/aVlmbTRDM1dvd2leTlpjQmJLQiNvZ298dXFuaSpaO3QK
ellTclBLPTRjUS03ZjhqJVNKb3RwOU9eV3NFO2hQaD5RKUl9KTxTSWwkT3p4QyV9d2NJTTdtUzZY
IzB+QT52MGV7CnpHNypgSDJxX0ljVUJIfl9jVVojQGw0UD1GJSpMXn1ZNW14M0RRX1pxYG52cFQj
Vl44TExSb3cmWCFXTz9lRl5zTwp6QCNIfnd3KndvTWFRIV9gN0cwdkd1WTZTJHcpZDdAYygjQ1NG
WXYkMkQhZXhgYWE5ZzU4TFd1aEpydCpfX01RVysKemVzaXEqVVFCQXBeLU5WSEZaUWpEMkBwPUNo
cUo0R2haUj8qdXNZP2Z7TkRSbip8fkcpREEmRnt3SDNZSDs4djVZCnpteWdkYEgqczY2VGlwVkln
dG1kfUVjdWNxNzFkZDteNE9GdFBYbHNHdThMcV8qdHVhbDRufnB3I09ubX1lOU8+OQp6ZWlCbSkj
QF8pMVV4WTRSazhNfVRuNXFeakFhdFlkUFdSdEhFJHZtViRIcXolY0RPJE1xS2RWbSYlWFV9JXs0
NDwKelA0MHIjcFVwbUZXZ31OTFZeTzdzcHwoPGZ6Yk1oYk5QNiNjRUB6VlV0fWtvTzdXfUxpZlhY
ajhadihjQnMpWUFpCnpuKW47TUtGaiM/K2ltQH5tZzl6VnthbDE/a1JAKVdzQzxxJChKQ1Fvc197
KXVVZjVCeWtFTGJkRnJhcVU0bXMmSAp6JEd2VEheTHlkPWRkJE43N1VfJWxyX0hIRHVnPCp7cExJ
bTJyNitoZzc8IzZVO1d7N3dIUmlsdXJDP2N1MitJKz0KejckRytzR3FpMmhgQTR5KT4hazY4M14l
KnQhfkIpSnkjd1QlK2kwKDxlUip8XzdXJlJDIyFieio5TmloLTMzYHt+Cno/RlAoJD1NV0k9aHRq
b2cyKnBqU0NXfDtSV31MSDhFREF2fCp7XmNAR3pRP2I3Mn1kV3E2VHZZPHMxKDQ1PFlndwp6RFRW
T1NoalRBPjlsMk13T35WZUpgXj8+ZyM0RW59dlk9M0UmS3VefmpmXnVMO29ITWtuIUJmY1dFQEhA
Rl8xdUEKekBmV1JYdXJOI3laWSk4WCElX0B3SUJqNXQ9JGlab3slKzkzMCVfZjBZYjZFZmBVaCNS
d0Q5d2JYbCN8a2NyanI5CnpkUUpORjs7Qnx9LSgpTEZWYmJmX3Mja2RXUTZQfUZAbEBSJlZ9Pyll
aHFjWnozR1BQR0llNDVtSF9ZVFB5dyRjbgp6P21MSGBzclhAXm1DRlE5UH5WODBpZzE9fHRiMT94
TCtZR0VUOGZGQCRuQSVKaG1SWkcjMzRzfjdxY0pMWndzPEQKej8lY2pQJl83NGpJfigxWjkyLT98
MjVBblJwK3dJcFJLNl8me1l8WEhgblJvcmtjfnI8aEg2cjYtX0UmSkdja05CCnpBKkRXV3tEP3NS
JVc8PGApOCF8fHFHdFlxUnlAcWgyJU1NK3R7QlhnSGhBMkpoKkxXS3NvLUpgVVc1XlgwckpDXgp6
M1kxMDhHPHYwWkZfP29AcFd+RW1gYG9ZfDdHeHQjKmV0SCRoZGVQOEcyak8zUWdeaF91cGdlcEdx
bnI3I3k0eXwKendlKT5+VGdjaDwqRVV4ejJZazBWeTcrRUpmNVpfeD4kPDcrZz9ePnNiQTxEWChI
QilTI3lmTXUrUTc1MmZiWmlPCnpiTldBZyNELWhhTyFicCVGUDJzOWEzdTE4UHp+R3dgbmxPeEBT
PXxxITdWM0dmVHFDdDtjLSpSOW0pQEo5ZT5nQQp6I2s7TFVNd0MhQjByS3xMJE1TTUxTI0hPRUMx
M1R2PmNQJEBOKHphLTJALUNgTDJuJmlNM2wqdmNLaGZxZ19uc24KemZQfmx8VTE9c0Y4XkEreEln
Z0RKZUQ1WDN0Oy1WejhJZnt5bjdqISVOWFNiWE4zITteSTFnd14/anNBPGE8clF8CnpadlMxJlls
VG5TO2dlKzxrdlhUXloqWmo3bWdtUEhyNHpgWDBnY21MUUNNLWUrWTI/aTtpMDtTUHdHYUwjSUhv
OAp6eTU2cEchRzNqP3JrWn4wJlk4eDlRSnN+O19Ve3hJRzNNfStrKXs2WmshfD5xT31rR0M/IU83
Y0VfSFpOVW9ySCEKenpsRGIydGZuNj0yWUg2eWA9fC0lTlRGZHcobiMjNHdZPT4zVko5XjNzdUY4
aDxlaUM8LTw1VlAkdHhYKT0xRkNBCnpIQ1ZCNXg5QmExKUN2dns8Py07amVuZDgxN0h7djk+c1FJ
WSgmRkY0PWlOVEctKUspTD50M2xDaTxIS1NJVEB5Xwp6Ym9fO0h6Ukd0R0A9ak1lOWV1dChiMEcy
Wm8xaF9kP2RFTlZkTExxVG80Ukx5Uik0OCFET2VmcSg+Wms1WiFTNEUKeilpLXxCVkplPSo8bEZG
T0dlNnwrUHAxfjlUaGRNIS1BYXxpVmlwSU5DZyREcFJoQGhue0h6OWh5aktVO1dmI3dECnpmTUVA
azwoMHcwRktZQ1pfeDRZenoldHlMS2wzcU5sUzN6Z1JyU0FmY21GKSEmJEl+SyVEQj9mdD0zRzhi
bz5GJQp6MnNnOEg5R0ZHKCR+KGxAMEwye0w/VDklUkU5PDsqUDglVkt1Y2ZmUyV6M2lzPTxNSW00
SzckZForVCZQSjsjTGwKeksyPzNWZkdlSio1QHUyVWVrIVFSYTA9RjslWHZacUloQDN+OyVrJSlV
Xn1mUDhAbCU/RnQxY19LVU4pQGp2ZXU2CnpiXkcwQmNKVVJXUmEka3MtRT9Ab2gwbUc7VT5aNnEl
WUZJUzxWYzFFJDtXK1JRYTkwVzFLNm9PS0AoVF52cz4oNQp6TmJpYTVwR2VzNSMlNmolQEJFSDwq
fEBfPld1KGxJWWpAS0M8NDREdGYjXzxwJmF2Q1BsOHwzVCpsbk5lOSM+RXAKemJlYiVpXj1XYWw9
V0UhejlRPUYpQUJKc2l5ViZUP2NFJDdBWns3Qi1ZfXNiRVl9Yip5P34qYms1YFM9OChFP0k0Cnok
VVozbjF0N20keTVoJStieUg9eCl8aj8hZm50ZURoanBVaTdYbCs/dXshdiFGWkhnPTx2c2A5Pk1G
bk9MPnh8Wgp6Xko4NEx7T3hua1IqPnF6cUJTM1J1YTg0eEhsQCR4VGlQRlJRcXl3M3NIMHNUZmo2
ZVZDP0w7PnhqejJFZUJWcHIKem5WZGxiXlJoYEA5YGtUJU9XSDZGc2M8KSYtXnF8YHhxUmkxaT8z
Tykob3l+VSpSS3E2cjlpM1Urcm16P19XajQjCnpHQ1VSMkZGKnoyO2lud28kc190dF5pKGJgaTJh
azlnRGdaOz91cmtSJmdgMjgkJEVjZD4hdGNPPWQza0lmJj5MfAp6UDl1VlQrfVJ3cjYqbj1JSHtu
ZkdjQkpRQTxvOCE+TWN5fUhhakhNYCVZTmFvJU85JkJmRlA5MzJhZHFAUXxULU8KejRZIVB4NDBm
dGFCJDZZMmV2b1ExQFFXOSEtWH54QE5UNzkjeDRVSDhlQmZLM2paM1dwcG9BYUcweC1RcU4ydm0m
CnpmQlM9Pk52V3dyPVRFOVUtRmFPdWtRN1lZJV87VTlSTEBiRXhfWCFqbGh8T0J2OCZuQW8kMV9j
YSV+bEhsK3hLVwp6aShBTXh1Tjx7bW4wSDdUM1FxPTwhQF55QzF+QyNoSm5eTlhfaSU/I3FVUVBo
cWJEIyZ4UkhibGxZNDtRMHRCcC0Kel9uemYjJGVgYk17VGNxdz9HfExePjExK2hCT3VlO0hDKV94
ST1eV0c2WWdJLWV+I0ZAdjlzRmk3STMtTHdpaCNrCnpGdjZYV1Vqcmw3QmhCX0Q/ZU4+cHpLKkFN
aE5HS2UlJkdnbmgxWnVHWERHNSRTJUpydmVmcD8kbUBNUjFiYkZyewp6cWUrS0w9MXlwTkljSWRK
YV9JTXlpVUtBdUkhIShgNHxCeChEe0A3c0dENUdfNVAzU0djPDhrfXlUMz13Q09+WXoKejZDaFEy
UWwrTihSO2diPFgyPn1KJlopfTdmNk8jamxoZE5NKVNEfkB4PWtpbCFyYT5oMXA4VkNjSnBnZHNI
czloCnpsQnBqP3N5VDRHI2xCI2FqMVIqfWRNeDZUSjV3b1hte3gmfWlwPjYzQD9eKyMyJH40cTRZ
JFFYKHB2QiVOU3tXcgp6eDEjRDI/RyVyblRmbDdiVWpaXyh7XnhfYyNndFV9WlFBK1AoZTdDcEVw
TkpfN282VnE1Mkdee1dLeEdncTFWa24KemJ0enYpQzV1I05pOVd5YmZGVG4mUzEtMmA1KVlpdXVE
NEdhVntAITtEJmB3YkUhY2IhMHR+RUQ2M0ZGQiRJcGtvCnpoa3d9Ry1xKGZyMHg+JDdyP1ZFMGA1
bGtHbWlpYSglK3pVNGJ0UlE4N0dBYSFScHY4PHJZNS1zbzBATXdLemluQAp6dGZlaUBuPmR3IWQm
N1J+VXxMaXB7TWZkQTxKNVo5RGE2O3VVSkJCSWxISHhxdi1qM2A9N2soYkltOCtBViZNQmEKemlC
TiM7cXY/UkQ8elIoaW1SX2dGYlZWPzJPfGAwdnRRRFBZciF7WGo0bU5NMyZaYSU5VWthUzwkNUFh
ZDIhP3l3CnppPUQ2Nis1RWkxdFk9K0Z4SlhVaHgmPjZxS2RJa1g/QTV8OXNgfGRxSjhoeyY9fCQp
NS1EKHxQVTRpQFR5TGMqIwp6SUZOY31fcVhnTUFyLXpxZW9DNnh7Qmp4IXohSi08Q1g3LXpkTCEl
e29AXmdsWmswVmImMntLbXpeQnQ9MF47VisKekJOVnVoU2lrVlZObUxRMUZJd1BzP3Z6KlF4WiQ3
UGpEWHFHZDFnLUtSJEtkKXBANG1uP3xeMH0jNEZDZUl+I3lXCno2TEhjNFhVTEI/JmpHYGBlPlZw
X1pONmp5aS1ATUlOQHsmQXojI3l0cDJrfV8xM3UjP3VHTzI1Vk9KYkJNOD9wcwp6M1VRNVh6OG42
VmN+RmljQTtKeEQ9TWBROWRQZzQ2Rjd8eFBOU00kNSphenJGeTsrMCpGU3FAek0lTkZMYFNrYlYK
ejh4TDx4NkJndUlsblYocC19cFBObkF3TEZ7MVglJjR2UTVWbjRrU0VTZiNlezNuempzZGRCNTls
PyFTQHZLdjBqCno5fm9QfCRRZmxiYSZrOEw3Nlpjd2R0YUNAZUNnaD8hZEM7UkFneTdtVmZPJit3
QV5uQ3VRfV9uaH45fiNkMnthfgp6VFVTMlp3KURyYDgmfWBebkliT0p4V1lXaSE8VXMtUnp8cm83
UEc0XiZkfGYqdEk2cHQ+VzF4bShmZyNAI1o/YEEKelREamppWWA7YlhwQ0whbmd5Q30lS2lYKStX
NV5sbmhhWD5VS0QyKHwrcT8wPloqdHUwU2pNc19BdV9lXnhvVT9OCno9UVB1YGImXlp0JDZoPnht
JnpXXiQpN31NVCVWPVhMMmIlTkQwVUdXaCMtfkVTMjE0Nl9ZPENtO2dTMF9kY2VKewp6OWlgNUZg
Q3h4K01OcDNScT95bEQ4aHIyVWBrcnxENVM0ST1ASnI3VEsmTFYqeGdBP25edDc8cmMyK3diezx7
fCEKejx5dCFGRWZzST8xTFhDTzYrSkhIOFZEIVA4UThMRld1aSVuQlhEY0tQNH10clVycSZFenhQ
MGhiMSV0ck5reDI9Cno2Z1kzenl3JkQzQXkxSD08TldtR2B2UzR3JlJhZk4hMXJWQzBsSU9TJlMh
PTNOVX5BU184IThfbFhRd2VkMHFUOQp6WTFoJVJTQHVSSWwlaCM8d2NkVEk0QEp5WGcoUV5NcnZs
U09iMWB5STVXKHVCTTYmPCZqRFIyLTg3KDFURlhwNDEKekhfIVFpeUhedXVzPmdXczxyTF9OZEpf
Wnk0Qn1oJlhpKFp6WDBSJDNaUUpZSFVrcnJFMnQhMGBoWS1udWghdi1YCnpLNShaRiVKWDx8VHVJ
PyNkeiNFQWxIO01BakVRcH5XS28lU3omcGY5KVF0QE1qJUFFeiQ4ITc1KjJ8PFpPVHRGTgp6UXZH
QD9JZipVWXtvQGV4bylxNHk5ZncqPlR8NlZPXz4zen0yTG9WRDdaNHx1cVBYNSFRbFM9U3JqeG1m
Z2hhTE8Kek0lO3cwMiYjbT8xYmt4aXA4MmtteXJwaSR6akNqNTxhZCswPCs7RTJKWitsbjJ+N3tq
TGx0Oy1CYzJINTBYJGZUCnpvfGs7NkdMKTtnKCRpQW9WJFk2Umk+OyszNDNKc0FtZ0FaSS1IbGAm
K28xaTJtYzskKkMrRHB5NjUldDsjc1NDQwp6YH41bEYqYmJMSG1ncUtLPTRoSlVHQ0wjVGg1PiFX
c2srVkJ6QUF1OCV8X09WUjFLbVh3VjhSclhQPzBrVFJXQk8Kej8kPFRvRmBNLU9qT34kZkR3NEx2
QEs8dTNTQElnRExjST9YUzk5XzhUMl9PKWVZcDIkWkU1e0tNYVkpQTdzcTBpCno+fSVuUm8hSWoh
TnxyUm1QPmE8fm5LTGYjJml2Q0JrRHd1WDJZdEV2RllrbC0tTSVSUEY/Y080X0g2bjlXQVZXRwp6
VHkkM2JyckZQTEI4QjxoYjZATF5QRD4/e3Vlc3RZM3QrbGFAVE8tTXVYWjNOJnN6SCN1fWUzblFB
ZXJnSTJnSWoKenI5b31gK1g3Z2B7akFSfVI+fmtwIXRTKUVNaTs+KF4mRVM2UW5SdDZHdXp+Q19z
bWN7IX0xJCRrTVRnTkJ8WkUrCnpUWkd+WEdQc2EobkMzP1ctY2o+ZURmUlNqUnpZOWs8UCFeV1Yr
O3l8STUzKlM8amJVYkRnYik8PnpsNHFzeFMweQp6XnlXTnc8KG95PEVaN2gpJSR1WWlDaUEqfHl5
NzJYcSFkKGdmN1U2cilIaj53PWRsPksrb15GZ2s8SDxWKiNkPm0KekVIREY7XlVod29EYXBBazlg
RlNSNEpvZGt5MTx4KSNAVWEhekRZYjI2LSVEMUBBO2J4SiZ4QXg4QmpqRiEjY2okCnpHM2lXRihS
SXdvP0R5NjU+fmRLZ048P01FTyN1MCZ3RnZiQ3AwPExXYCMoVjREfkQ+cyQxJio2N0NkMUhacVJi
JAp6KTIzWHFGaV9Yd0JFOEBAJVlOdjF4N0NzJlNFckZHdnhefG1LUWpKej9NSmh2RCtmVkl8NGQz
TVFvUzt6SUJqYTIKentNaDZDYHNxbDNuKktPNVN2cylIJm1scGMjYXJHYTkxQHdUVyFeX3oqeUZ0
TmJTeVUlYiY4d19VUHJCbTljMFoxCnpNXip4SllAI2dCR2klJjtlYXwmZkthJkdHUW0kYlJQNWlB
VXpxR2wzOSNycnhHe2RCYip8enMqPilIRWRvM3NXOQp6PEdvUHd7PCUqQUU3RSQ4Y0o0TEMjeFht
b3FfIVZJeVl3LSZhKzxDMnErXyhTQUohOUNrbX5nc1ZsX1FCQSFhZnYKemY4Y1NNM3tZSjB7MlNz
dlV2aHt3JXo1VTMzPXQ1Yz5uQGdYJjhzV3BPSTN5bWxvTTFlN3YmREo3bktBOXlFSytNCno0JTBJ
bzlfRlMtaGdIQnYzZmAyKWIqcGYyRmxQPj5wa3clfmBKYCllb0hyQTU7OGBMQ3tuaT0lND01MCE7
TmsqeAp6V3lVOUF1PGZLbnF2RS02aHhLQypMSjB1QTQtKnRpV3oqTiY5UVh3Wlo1SDxvKUhOJEJ4
YyV5O2J8bCVwVENtNDsKej45WlhaTiFwfXRFVzxrMjlBKVdrZkFtZ1pAajd9YVBoQUtUZFlgVl9y
RyZidWJ6aDgpSjlYV3JqQnhRYC1XelRLCnpZRztyczV+QiFydkxrMUhGRnY3fEV3ZTBCYylIdWZO
elZnRjtGbXVNSiU1X3o8OVJmbzBneU0pdE8jNk1ISmVmdQp6YmgxRDRueEFKYVJMeTtQI0A2cn4/
YXghZmNRZXlBYnRIKWBCPjNSMVpedjNaPnQwdSQ1PFNqRHEoPTRTS1laTHoKeittd0ZvLVpDSGU2
ZCRpZ0tLK3IybW98RjBrOTs9WmwyaTdmTn03N1ArTTNya1M3elBZeEB3bm85Qig1NEkkT3UxCnpx
fWx3UD8mTTImcmhtbmohUDZKPTN1QCV1ciE/K2MlMTtnSzZkelJrV1ZqUGJSM1hGODdOPTZJJTB6
biQkbjZGVAp6aVI+emc5LXBtQShkYTtye2VEPi09Qn4mSlB3K0F3Qz5pOWJRelhsQXZ8YEF5dFop
VCZTcWAtRW5gd1E1c05DUn0Kej1lY2s8KHw9I0FZTlUjZjgpQFIqV0N3fk5SfmZ9VjJfMjgjN2NT
TnRfUn1gdW0jdG5lKzxLNik0a3xlJG5Ja3owCnpQVCkhfnw1bzx0I2g3I2FLant1PVFjR0l5KXgh
TjJkN0d1U3txa3diZjtaIU9tOWdednlCcTRDdzZvKiQhVylEegp6IVgmS1Q1cj84VChvejJKJEIr
aiM0UDErQ1YxKUt6bEZ+JjFNWn09fVNsI0VqQ2VicmFfSH12MEQwKmR1K291PmwKejNPXiYmX3w4
MUIlQX5JOG0tISE2JWdSdUtfeys1eDJlUVRfNEZLZm4pV2sxWCQrMmZEWn07VnolXnVVTyVKT3wz
CnoxV34/eXI2QndQel5pSiFNUklEUVN3PWd4bmRhRnVrY25AU0tsZ2gtaVpXPj11YD9Pa1pnN2Nn
PV8jfGQ+I1h2RAp6OExlSVE0V040YWllMXdVbmY3WCpTREJJPEE4SjsteC1rLUNLSSl3MEFKZU91
eV4tRl89X3R1azI1KmpFdDZjeksKek4pcEE/cUBefD51NlVSWSlgeX0rMFEpVWlEREJsZFBwSDdB
a0pXZnE3Xz18Vkc3QS1zXnU1VXNFeGlGWnNXYV9BCnopWUVeb0FsWWZ3aklidDg4IS1yQlI0TkND
WXpBcjF7WjF7YERpdDlNWlgqTX4wMmMkTigldUphIT5RfF8oWkQ7LQp6RzIwXmY0fU1rSmFybGJ9
OSp9IzdwKitSSkVjdiNZRlByTkxmeFlYdmdJfDV3Ml5Pd2RhdDc7SlBxMChEKzZMfHcKejIpXkom
R0J8cGs3IyVGTmwpbW9aVFVpO2VgMzF8PkBPcXNtVGU9dnspVCR5UitPOTVgc2NldHo8VEU2WHdv
QSFDCnpHWmpuZjVAX1ZQZHpWQnZ6UyFMfTxhJWdzaF5wNE1fTjxQUldSUUk9QCs5SFlmZWs8cUBT
fnlIcyZndHNmOT1xSgp6OD00KnNKeClKekAqQnltQ0JWQHdmdEMwLWhNSXh7cVplbytmYzBhKHFe
c1chVzI/XnxBfkNZKEozOG1lbzYtNmMKejNvLWhqaHIpeEJvIzM3VztwOHdIditufUwmSm8hMnV1
X00tPEZrVlg8aXlaanA/eVk2MVN4NFNYUVA/dS1TSHBmCnomRjFyI0UpbTRJRHhfd1lXQSV9YiN2
U3htZyRYIU0lYXZ9Nmwxc2NFYm9AclFlNno8TiVTezJNN3chd1AteFhANgp6b0NwTH5zQF9YZHQ4
OHhqWF9aQW87ZURzbGckR1V9c2dufHtWOEYmRlFeVGFNbEwxLV97bGAmOGpaVUE9UEFAME0Kej0l
X2t7UitvQXtANz9UZzVNZFBoaz58M3owMj9TT25BUHUqclQqS2doIUhATHhTRUw7NmdKVjtVRkVa
KXM8fml3CnpONU4rTk4oUyZEdm1SI3hRYypyT2s1Rl5xUTE9QDgjNEpuOEYtLVBmTEMlPlBZRiFK
YHNUTEx+RFZGJUZpY19eZAp6emgpdj8kcmBaeDAqVW9adW1aeXNlYiVPeXg9UShNd0t4XzdteHI5
biF4QjtVYHIkeV47OGhFI3BHM3ZNKHYpMy0Kek1BdVAoSmYhWSUzS0ZZKDBRcjhyRE9FcGpVN0ok
VEJoQG1NM3hDc1pZRlZQRXRRMzZJWmVEVzNUdmZXSlJYK29eCnpFblhZe3k0WWQ5OzspaitRMUgx
UD1TaldhUTcjWEApNDl0Nj9oWFpaeTYxYDF7JXA/dHBJenB0YTFlRW9zV2d5Twp6LWk1MF53Tzw3
NCtpazE/NXtINjVTWXYkREBgQVJkP2BJPE9GNTA+ZEgpP04oJFN4ZDZ4SD03ZiheQD9QRVEqJmgK
ek5PPX4+anJjOCswRDBvZkRQd3hiSD59RnZiSyZrWXJ0KUdNeUg/cFVPQHJ4eD5edVVyKHxDWi1z
QEs0aVEoU3AtCno7NyZEXk0tQ3xZcXE1VzwzaU1yalZxclZHb25hbiROaWc0RitEMjA/Q3deKG0x
aVVfP3xLcFJLJExeWnVeaVNFVwp6cktlaXZpbVNwaj9KZ3krZEt7IW15ZlFMNSt2VURtOU15KGRn
MDYwP0dMd3xaelh+I28tQGBnUmleV1BhK1I0WU0KejQkb3BNdDE5QCQkVEYtcCtYa1M9PldpT2h3
bChJMUhMbG5TckN6YVVgX0hzMl5+PChnJF5jKCZTSmBsKlRzMj42CnojJW5+aiZvN09Sd3QtQHl2
QXtAUnF4KENOKzhhOXkoQFY0KlphPG9uYDYlcWxEMTl+U3FFfGMpYXoqO3BvN1lxcAp6PWxzNG08
R2UzVWJLZChvSmdpTShEbHgoTFhBbHcpWiUyfFBNOU91JGF8IU9SRVo/fXojJjRxUl91Qzg3PV5Y
KW8KemkkMVNRbGNZfDVoUitLSDB1Pn03P1BGPXBPIyQhbjl7KTVtN2VmYEg5OHE4RlhLa09gQmpA
P3M+RExGZXJKSCpOCnp0UUNVRm1DaDxfa3g/c000SkdsSjttZFJUanA0IUpnKihNNzRsbGVlVnxC
Zl9HSWVsdTd1VnpzdGJKeD5yTDxWQwp6bEA4cCl2eyFZJCtJKjI/OERYOyNaVSZoWUFGNiNxdXJU
djltbitLWGdmJT8tKnVHaispR0R8KWtlKChHVClXa18KejwhaCUwVDAzLSorSSUtTTVQWjxyaHgo
SiZiRDleUEotPTUjTTZOR05OcVYlOHJPUWdhZE1FbERvQGhPQzk1fEFaCnpubGRuRkUzYll9OyRY
bV8mOWkzWDsxJDMmYEtjY0VEPTZHeDclPTg/Mm52e00jcU1AdUBCP21MNjloNDBRN2hgRAp6cGUm
eiVfd1N4WkpgMXVeanAkczlqPys2bzw9dmNMOGFYaDtHUUNTSDIlJE87dHNLbGZzdjBoU3tOJldx
WSNDUzcKemhxQUAhZWF5a3hiSWd2eGgzOSVSSG9Va3d5O2NuPzkpWHxDM3xhSVotaiYqJUEzKzhT
dkR4YC0xfH5TIWlVKT9gCnohJmlNWDRYQDRMJn56MFZOSitNfXVeV04lM0NUTm50QUtCMllDeDYw
QD01STsyMUB9YGQkKzNfbDdFeVVwUXxHRAp6aFN7KV9FKDc0JUtEYkVXVno2RDs0aWlMRyo4e0gk
MihoK15ueiU4fWFXNms0ZCpxLWRKXlE+WHhjeHdeJGdYcVYKekQpZktsJDlSb3lLR2hBfWl5I2lY
NUFXY0tjXzFaOEo9Qi1ienJAIzlHK1Erfns9JiRIa0gtSGN7T3o7RzM0RDJgCnpvcV4tTGJga01B
bFQ9LTZAU1F3bV9QUEJlcHgtd1klWVowfWdAYyRwTnVgJHw3N2Zma0wzPykqTnB5XjdOX0g1Pwp6
dXJaaVN5Mi1pe3QxVTEoQDI4JG4yOXhYQWZmP2hAaSFmMFJjKyNOO15yaj5qfEJWbzQ/Qz1Qeis7
WXktejYhR2kKemxiNXxGRzEwVm8xLWNeaChrdWxlZFkyJVhNaWBPdiNQPypvYzlHNVY+bkEwLWFk
X3pySUk8Wn1ZSncxRnp6akgyCno1NyQxTGwjaDQtQzdjJXFvJmdoWi1PI3UqQTxleGBgTiUoUllJ
KXZoUFhfKmkkO3lwTXR0KHB2TFJvJDRtemY5Ygp6fDhQVDhWLSNzMEVKN19WMVBlJXEpM0M8bStB
Y2pxd2g5MX14K3Veb3VyT2lyZkgwKFItfT1MQGg8WmA5bnh6OTUKej56REF8U05FSikzP0hPWShM
e2R8a05nelBqaCQ7O15ZUzU4ZzgqRikzcUBodUhhPVVvcSpZOXtrSyF5dXUtfDdJCnohfFN4diZL
elI9bklDTU1pUDBSNmE5cG9Fc1o2NEp7fUdIK2olZVF2I2AydVpkbn1IK1g4JGdFKnxzQllzVzhG
bQp6O2JWQjBQPlBBODVWWH52R0Uqb3omZl9MQmBLV2gtdyV0KX5pY04tTGQpMnd2UnVQPFR3LSo0
YmhYdnkmPFBhPVYKejMpN2lSNGtLWj0+cDh4aHNtRSslWHdlaiVsWEtDZWFqVEtHYGRrSHhiVVo/
OWFtSDM9SChFRzYxTH5BNGBiX1RkCnpuJDdic3hLWFE8OXorRjkpa3koPT9TMH1RcjdSIyFJQmNw
eER2KyUjS1MwQXZvSWp7UnVoOW1tRXhXMWgxMjBZNwp6V3NFRlFYMlMrbmBVUUI1e1ZIWmRvTykr
WiV7P2pXRzBBanlReWJKZnspRjhPKm4xJlNsZm9KOWB8VF9zRG50R14Kek9YSWA4MDVhdnFEdVMq
MFQ4JiNRRTB3VkxIYSgpTGtMWFVSdUtWalFrLVckaEhkZWlJeFBGSURSQU1TUyYhdEZGCnorSU5j
RlllYitycHNqSHRjWjE+OWhPJHBpVWE3UXVoOCtLRzFVVXxvOyNSVVBeTVNZVlg1JH0+b081WW9U
U3BlVwp6bld1cTxfRjxvWFlVM25CTXlFVVc5Q1ZRbXRSfnB7d0lye3E3eWxWdU5jZ2xQbHhLWHwm
QFZ2Xit0MkN+VT5QZ2cKem5uYE9sZkMtUFQ0X3Z0RCRtO1NpQG81Q0p7SUI+KDtiP0VldTR6blB6
Yml2cDc2SHpfa2F4KUd3O1BFUzRNV2prCnphVFlmRyU+TF9IJWJra1olRWs+IU9wbT4mQnIyVGRk
ej1nfWdPPG0+SG9QaVY7Mnd6KT9idl82JnRRal8/WkNRNwp6cU45U0pyZyopJjg2eUZPLW0taVF5
ZjxofXc7RUxAK09oR3gxP0VQdyYxOzJCbzRrajwjZyp+VmVvQ1NjdEAkckYKemxYJEU2SEhLTHRy
UjJ7fGgpQ1lAcT40ezdGQ2dCU2RfTzhrMV9QQH0tTSlqMk1wZGM0O3JTck1yPVhyX0pjbyVKCnpK
OSVVZ0FeY0xxSl5KLXMqZlljUDNBX2g1dV5GI3s/aDwqI28+VykkRl9lNE09cE99ckQjR3VNSCZO
SFolM1MhZwp6QzhtKTU9cSlJZ0AqV0V2O3Y/RkVrMHdeTVU1WldiYCUzZzBGLX5qekU0PTxrd1lO
U2x7ZjYmVW9Fd0ZTXkI2RTIKeiEyWTFwZEhWQygpalIpRGAyTihMKztAYzdzYj92UCRtUGM/P3sw
Q0FpZTB0T2VzfFlfck9NTWd5Wm5RfV9aakpiCnpzJiVKKyFXeypISmd7TTVxN2F6V2IjWmNFMUMw
bn1RRUZ3aDZqbWRocnJPIWJFbyZne1RlVk55QXgzRFpIZ19HKAp6P2J4bUhLZzs+SSg5RUBCe3Nm
Kl52eUZnSU1MZ0JzKlhPNDdPcGdkVkVOSzU+ckordFBwNTslbTUlb18wSmwpSmMKenJsUk9HI3Zt
VEgja0EmYXFJUnhFaTx2R3NGfmVvV1pDdUVGKjIydHU0RWROVlVEPDBsXlBHO0xfdmBtSnBUam5v
CnorIzVaO3hUY21FKGBrbTMtKiRiZGpqIWlwK2lPKTRrP3dKJGRNYGlocTlpekheWCYxRTM1PUZn
VTEwanJPczkzcgp6ZEQjU1JMNHEhMjJXRXpZU3NFWX5GSHM8KEUxc3NGXz1McEhATlo0Kng1OEVH
WElfI3A2Jj9aVmBYbSsySVU/MCYKellBPjRUdFQ0TkZyNXg7QUZiVV85IykwanNBaykxejJEWWNh
O2lYUlprM3xgQFV6dUtnX0pAfEt0XkB2YlVwKTJeCnpfM2FOUEQ+ZG1wPiNicWd3PlZCWVBkNFNt
WiRsdU94e24kX05iYjRnKTBPPnRpSF5nZnFKO2RjcHE5fFhReFdXaAp6JlUtMUh3PDxUT1B8KSRi
IX4hV2tacFZxbEtZQ3k0SiZReTRZQ2h5Xlk5WHc1RlNkSGQ8UDBBMmsrMyUhSn1YWFEKelJDN21E
MT41fX1EeStELVRqSWB9PlN3QCRubDIrd3RXPVUtRURqVl9sbCV5PmNjQnRYemomYz4yMUYqWXQq
Um1kCnpVV2I0IVcrZmJ3Sm0mWDQlPHA0QUstKyQ8elZ9fTVBRUZTUTBRYS1sZSs4O2lTNWZWS2Qo
S1hLe29Pek5lKUROPQp6JUtUUThgMDZ1dFVJej98NVRqYDcqcDJ4IWR5ezE7dnlnRzBsT0xJeHNL
KTY5b2BTWWx4YE0qUExRSGkjQHwkQGkKekhgN0pDJHJBRl8zdEJYKT42JG08enxGWmBoMUMhKzQw
dFJjez02bGJRZV9WbSVgOUU/alNrJnMtJStNMU5nTUJsCnpwMS0lMTliRGlfP3JxVDtJM2khbWBm
YiU1aHxPVGdGTDN0KF9RdG9XSlh8RUJ6d0hsQm1PdSh9ak4pVkxzYntUQAp6P1N0WFpGSHloIz1a
TmNXZFg0SWg/eytBPTxZKiQyYEJaMCUrRVM5RyFZfXcpREt1aVFucVkxNz9MbzE/cG8+NkkKejNV
KWs8KkN9eGF0MXskJGc/amVoKkljNkQ5bndAS1lYeCtBezl8JmRGTCp2cj1ZTTIxb1dLQSsmeXc2
STlEUSl5CnpgSSN+KGdgOWlBRWJzSW1WT0puXmlPci09RGd1ZX4xSXJZPypTSlE8S2p4Z3NVZCQk
UGx4bVFXSSQkS19oMzAyewp6WH5UMWJoTn5oTHQhdmk5JCMramtPYFJAX3UkUTZtckhKRzJKbENs
JktmT2Y5em5KK3xgSnE1ZmleVDI4X1VZYGsKeiRIeiMpSl9BSnkmeGBNdFo9aUArcHV+fGlHXzRi
SCZLISZqRHheaykyN1MpK3tzbnt9SWVGTTMtNUluXjcyVnhgCno8JGYqPFJ7ZS0+byV7MTkhTWZ1
dlUwNElzSjJgbEx6KDVYS1R6ZzY4REdvd1AtN2YmMCMjWl4+LU9MT0pAajFjVwp6WU5uUzBkd2pG
RlUrdjdRS0R2eDVOYVVFcSlPX3dsUThEPno+bU5YO3NQPlcjZW9HVFYrbDRXM2diQmVUXyp2TSMK
ejdwMFBrQXs8MGQ0QGh8fEdWY1BDWmN+IUAoKnx2JnlrOVc0OT14U0VqdVdgcil7ezFwLTVVakc2
JFdrMVMkcE5yCnpNbFI7Y0VpfUFSWitERV9fZGQkNDdLOSVuVigpaSh0MGgkR2NOX15gPDRMIz8k
PDNnQnhfPG9FbSlUaGtwWldHRQp6aFBUNmZATTFscUFAU1RrYiE4JXtTVnZhPXJZU0N+Y3B1UE8w
U2xqWXo7YCZxbzt1VktPe2I3ZlpgRCNfe2RQTEIKelBsQnhlP1pfKlhYRkJwMT4lamg3NH0wYCNY
TEo5OGgpYlJlSjV9cllCSCRtcm5sKjVrUF9WPTtPPnV+Vz9sRjtTCnp1VyFCRyNhcnRBeD5IcFo8
NHpeKnYmMUJ1KmYqeGtXeH1JNkU4fF9QNkxOWmwjfH58NGA+dTU8SVZ8ZnZydDk5aAp6S2FvTGI3
dT1icnR4QmZQe0U/ZWI8RT1JfTk0ansqYlk8MnJXRmt2QjxhQkR3UGJCY3ZQS0A9eUNvfGN1QyZQ
cEcKemdUX1lXVjdLZUwxd1FXakhEdyFteWlsJlY7cGY+aTdEZm9FKGhXQ1VTdVZUY3RmJDA4X243
TTVTRyNNczl0MlUjCnpEe3lhaStgU0N5ZHJNenRRWnNLLVMyYkFPYFBvZiRLeyZhZjNJcjV8cCFT
Tm9EcDMzPiFWKkZONnxzTWd5X0R+IQp6Y3NPOyYlQWNeQXZPWlFWd1JvRDhyO2xUeEMyS3s4dUs0
V3plRl5gT0lFcl5yb3UwMitfIzU7P3ZUcTNZPGNhKFYKel4wWV5PR2REcDlZaTUpe3YtfS0teTZO
Zk1hR2o1bWFMb0gzeko4MnNgVTMtQFFgJFFuVW04djZ6OEB1LUpINSo4Cnp2KWMzb1NrYkdfdUNA
JnJANU0qM0ZBOSlKMmFEaT9geERqIShwYTw2KFZyNHw0a0llRkVxJX5jUXB+TWxUSiNXTQp6ZXo9
UzJJWHs4QSYraV5aMU1Eb0RIV2x6cy1WJCVWYGUmWTxTUjtzUXZRNGR5eEQ7PnU2TVlfdlZNP2dx
IzY1OVcKek1NNjA7OHZeKTE2eHo3SVB4WEV4aH12VjNkYDdYT189cU9QOWsoI3NZdVFrVWFIeU50
fDdxS1pZNShtVGVmX1FFCnooMWI4eHUyaytxS1FRMipxXkh2a3MwN0l8TTNXYEs2Sm9ZWTl0WVdI
IXNgYXxyPD9WSlJ3OEtJKUhTO3NvVmFFdwp6NE1zUz1YS0E7IXAkWTtXZzhidVVBTzUpXktre35p
T0NreXJVUVhFRSt0SHt8X0xwTU5SdWhxLWd4PEg1cGcyPWMKeks7TFpUYWtRcE12Mzt5RDVeMipB
dGQmMHIkNGxaITEhUHtZcHE1UExjRT9RXzthXm5PZTZtZUBlVkd9dXUxSD4wCno8SlNMUXY3V1h8
UkFHNHVqKlZGcWZCQTMha31ePyZXZEhXa1RoTEhQNDdaLTxIdjVWR2FEdEVrREM9RTE3aDlkQwp6
SUZOWCU/WXtjSkNVNj8/U2wlIXxCR1pjO2hyJWZMKTtORjtJVzEpPkdPO19XckdnOUFkUS13THRF
akhvVXooWl8KekNVKUZGUCZnQWRCSmJUQnBjYE5OUnV2YilnSnhHYGdRb0dpQ0cqXkllVE9CJWZs
VHwjXzdvSnYkOzxRTkR5YDMzCnp3V2M7ZCZxazBtRjFUR3dBZTdANE1VUEprQD5ybllSM0hUN3g3
bDtGX2pVRU4/KFJzNC1CSXJLTjl7c1V4JnlJawp6JCNMd09ZSzd2SXkockF1WlliTEk0MGtAYipg
WG19KEkzQEFlcExCYGxGRFFwTyl5fD58TGR6Wl9fJUFnJnEjZHMKemo8UU8mIzFsJH40ek17OENi
U1gkTDUrNEVXQnJCcER5NXJ8aHh6Sm1MPkJKeDx7dzl4a3xSQEY9VnNqRDdAb0NGCnohJTcrQHhV
R1lIQkJmKWZaMSt7dj04MloocWA4bFdAdWljMzJhKil6QHNlZylPTmk0NmxkLSZPcntsR3ZUTkhT
cwp6Jj9EUXk8Z25XfWhOQkU3KEhgX1F1WXtufFA9RSUxUjd5JFJRYFkyMC1NQDl2cnU8eWBALXI1
eSMtYjdGaW0mZzcKeipNSklyK35eJDMjfk8odWpONWcoSTdtJD0xVz0mbUJMIUVhb2V6QXkmUiMk
ezZZd3htcTxrNFNJeGdFN1d0dmFACnpBWmB7bVU9fDxhY145M3JHejxAKXlPKzIjODJoYmdFWkph
O1BkME5QemQqQDRxJjIlKk9KZXxxVnNePXdzUkAtbwp6NmlWe0FvLXh9WjFDY3w2eVp+e3NjPkxj
JURIbTVKeVJYOX0qTGtJX0s9LX09O1ZkT3h0b3dqKWgkaXFNPSZUSjUKem1UfC08ZX1NVmclJHZV
RmE5YTR0TGRTb3JLVyhBJXsjPW07K2lEWDU/dmNCdEtZejBYITJacWMmfFFueTYwbG1OCnpoZlFF
Q147JmVuKEFlYmdeUk9ySmJCOUske2g7KVpBYGItMHQ1XmphRTdZZkNkaGJqdF5JMD1PMSpKfn5v
RjtnXgp6Kz1HVzNCVlJOSXZAOXBgXyVuNVllUitOeEYtV2gjeD99PH1JKnB9OV5XYVh0WVA2SzZr
TDtzZ09GY0soSGA1QTEKek5qSUVpcH1fLWxWXjtSbEUkalNTUWRfKy09YlZoRzZZO3JpRTQoeCFS
bD9AUU9iaDJqVzFyYGl4T1llWXYzak49CnpYbiRKU048UztmT3pVXjZyPCZNRVBIKHtlazs7YVMh
Q01EdmhETn1lZGlUR2JJKTBzelImdStaRzNRJWJWR04hZwp6bEdIXn1wdFN0TSRtPnhyOSNUPTc2
e1ZKTCZ8WiZNT0pLTilyJFVDRD53LX5nI3JNTl4/XmRURyNLSjkwZlJGaHUKeiUkPmV7XkNtcSEh
QzdWSUwzMUM2TWk5RSsjMUR6VCsjTVZnZDdKLSk3QFZNfSZZZXMxMjA9Iyk5PVlDSClIKUcjCnpx
dUtEe2JPdDUweDE0JVp7YE83SVQ+VjFqPmE7fUo8SUo2aldTV1YrSSMhYHRzQFItQlMxYTt1Z0Al
bUZrQDIoKgp6Oz9KQ0RgU316OT5NbyNpKkBYOVk4QUlVSkE2UGcwcFQqS2VeR0JvU0d1dENidWE9
SEBuezw2dm1DQH5wdyh1SlUKeipANUh4dDBTMmF2X0taVlNKJTVLdG0oSmNYYW0mLSFebWkxTDNf
U09ZS0UyeTdTTkVIITxMPTheJUt3bEY7Xm5oCnpaOCU0KXhrSXFYYkk0QD44eShreXhWZU5YWGwr
d20kaCs1KE1LcUFqd2ZhWFM7I1g1K2ZqfT01QCh2Z0FlVTJgZgp6PDFRO1ZlSnp2XmFJd19XdyFz
RUNILT9YZ1dPcz5xO3NMMHtVR1QoOFhpVDFqdWpYY3JOPEIyTW5MZVd2UThGRV4Kel5WWWo0VSok
WDFycChXKmNkN1AyOGN6MENTN0hlOyYhTzU/RnJgKDIoJl9sdlczZUVFT1NPPSZkdyhmcmYtKihs
CnpxMFNSLXFAc05meUJnVkM4MDVja0VvNUc5MW97SEJidjFJQ0A3NnEoQiokZl52JG8/Y1JAZDAq
Vk93NHkpeENGSgp6WXg9KiY9ODBWKWgpQHRZQDZXRFZ3KHEoUF98dXs5IUs3VmN7OSp0KyFCflpj
eCZKWnNhQFB4cXh9VGgpUGxBU3gKenZvQV9uSDBUYk9VKmp1Q1NuJW1PdHAjWE0hR0QoeWtQTSU/
OFpHdShRKm1DWmd7SHFyQnBPdHo4cUJDJiVBfDFwCnolN31fdCRAeithPCN2ZFFRUmBrZlduQVZ9
PSM9JWFkfD5eZD84eDZZKVdWJndkUD1eXz9fRT03X205OENweHhKJgp6ZTRUb1VzczlKbj9gUTNi
e1kmWmYkMzczYWMmNmI4YDk2NE07eV5+cFBMQz9fbFFwKFZ2ZzIqe2tjQ3I4a2Z6JDsKeiFLPVd+
Zk0pSUVUWW0hPiRGNWRmVDNEMDtqXiNoKDtJVikjPWtJVE9SbC1XKzAxQVAtaWVCbGBUSVJ2V0lV
SVYqCnpjJDt4MSM2NkQ3cVRqZlopb2I1Xzh0O2R5JWJfO0Q+X1JpRExlcWZmSEckU1IoJHZnVkRB
emsqQHpiYHZ1aXY7bAp6O3BRZ0xDY19gMWoqT3d0Mzg8dGUwJjJlXlM9R0xiVVplSEleT2sofHVy
bXhEck1JJEZ3OFZzdTN0X1FON3ZqWH4KelArXlktN2lzWWZYI2p9KFNMS2x1ZjQkZ2JSMDFibVFT
Qn51OGhAJn11bi1MZTxJaWYxZz94cEkteHJ8ZWR0b0dQCno+RGwoSGctOHpPaHJzfXJBQHpCWDk1
bEZBRCZKK3BmejFwfHltNHxRWE9KcTZfRSZhYkZ1ej9pX1V8O3ZIcG09PQp6N3VkVXQtJU5JQjkk
KT5LPilEN1ZFK1ZxQiFaeX5WZzc+WE8hQ1dPY0BPQTVqJHN4UEhXLSRLM3ZwdVE+VDFEQD8Keilw
YEdDJXNRMChnRSVqeHZBZSNjPk15TklFOSE7MFNmZTRyKndFR3xuTyFOIXZ8d1hQVHhiZ1ktbHUl
YWYpRGNXCno0WnZtV3R5cEVnODBjY3YtN0N5eHdUbjhHVVlDM0JqO1BjMTdjVV9GIWpVUGkqfStA
c1FZKXMtI09KUX53WTE2Tgp6aG5iajNTRzs3UiFhfjJYPCZiOyhLPnxQY2ZIeHhYKGpeN2VmQnl3
UWo4OWY7bGNzJTFHc1lVaUkraWluazFQZD0Kek5vTjJIYXAzbkdhN3h3Tjw4O1JjWEVSNXsrJEdl
UmJVMWJ2MT1OSHRlZTtFVm5rMFJ2K1QtMGttZVcqSTcqMHNMCnpidjJxfE1fMlJvYlJRUEF2Xio5
VEk/QGQ0JUkpVXdzLT1Mcm1MPVJeYjZIWigxcUUpMUtFY08zanMreUN3Sjteawp6QE5PYDs7JUFZ
JTYtRDlJaEY9WT9aP1kleUdyPEVgRFVlcURkRUE/O3RGZFp0PkFJRUxPRXJkPTExOXBFc2I+UnoK
emVBKzBxJC1tQFI3XmliX3REbTBBWnNhMFQ/a25tNCh7Sjg9RCEmcU9zTHI7VDtYZlB6bVpDMmxI
QExmJUB1PHdTCnpScF5pOXBNc2l9ZFlofjw0UX5jJjRYcEBTWmpDX1hnU1I3bXxDO09fKmYzQmhq
KWteZjNJVDRpSG0mdT1AZSlyPgp6fEo1P2U7bzdEOylnITRKTHspJDUwWE1afURANWM9Z1lsaUto
eU1lNj90TFpkKGA/bz41NFQqUUFtb0xrMHBlaFkKemdZXmVhaG53MFhHVnp7UFpnd084Yy1WRlN7
OWN1dV9kIWdSaHtYQ1oyYzZndnBWcCtHIXtaSGU+Vko7eHw3ITJMCnp6bmE+KkVoVW5tNSZ+Rmdr
eCZFYEwzJUdpPkdldkhxNmt0QVJVeT5TTDVqNHszQHhEYTR1WEpHTVdoLSlkWHBlVQp6WUE2PkZS
MFFBMntvY0tQY2Y3eWdqbHBscCZOPUl9d2Rhfl51NjxVaHBwbz5NYXc7MlQoVVhVTmttVTgkTU40
ez8KemY+SUI3Z3tUcjRFYmVvOFpjNXAjdlBoUSUtcnN4aUtBcipeJHBOMjcwT1NUeHZGd3h0eUB+
YHw/QUd0a0lJZU8/Cno9VUN2RExmen4hNjlnVmpeZipHNEh1fEZuWHNwPzhgWWBndjFaTW5wb2o0
bjJwQU57OUpDZnFOI1ZjRDsjVmlVYAp6VT4qKVJlfiY1fV4yYDZRRDxDUnFEVExXUTs5KWVgMj8j
aD4rcSQ7b3pzWDAlQjsjPE5ydVZOJUstSGhVNipNdVcKekBET1pOSWJmYns/eHtPaXVxWEZLQVdH
KyQ+ZXJtUGF7KzEyPH4oKHZCWEMlKntZPD1ldSs+WXpXd2FsbmpecE5+CnpoTSpJWFAtdnUmPm5Y
aTMqJmJQSXBpc1RHOzJJJihXbCV1WmRxcW9tbmJ5WEZga2tOJnpBKTE/XnMkMU9SVkRDUwp6NX0o
eXA4cD1hfmNVe20jeUtQTypoSiE5K1kte31EOzhnQShPV3dVYChoUyk2UXFDamY0aDYkYCpvcjw/
K2g1dyMKej5YVjcqIT8hYSVYbns/VmxOIWF8V0wxMjZmUkNiZk0yYU56NDFEKWstK3gqbyp2Nzd4
OFFIUU47cDhnLVVFaDFACnpgfFBSLSVpdG9uKXJLSF5CVTxOLU5MTno5ZTkmVTNxYmdqeHR2NTBw
MHklZCZfJWpzWmgtQFVLIT0qcCpWQUFQMwp6M1F3Z2lhRCY8TTghYz5jVW5ZbW91TlVPRExJe35Z
TUMkcUlxVkB6ZSkoamkzbkZtKitgYShzIUIzTVU+ckJ3JmUKelRZWlRfPiNRKFVXSHBUQntSJWJm
UlMhMmh3UXUwIz96ZHZldzFNZUxwaSVGRXM4Z3MlQjBxO1EwdGhXXlAqcnsxCnpNKCV+dFJVJCNN
ZF4pIzMwI2AwQT5ENSo9VXYzelRsU31oKmR6PnB7dVRaam40KVVGXj5PdVBAX3xkalooOSk7bwp6
TiQjQyY3RkdlT29AUnJXJTZXWWw0U2Z9PFZOUjtgQCRfMDxCSj9GLWdMOXdBYDg9ND4jfE53IzBz
fHBuKk1peUUKelZGSmNae2htZGFOdDxiXyY3Yj5aKkI1ZCpiVXBlUzhyJmx+QX54ezVlb0dPXkkr
WWM+ZSFzaGsyQzNQWm43UnUhCnpeJUpWKnk5diNfWko4UDNte2laPDYpRShTQ3BeMmxlV0F8WTI1
RjBQRiQlXzA2UDZkVUYmazV2ODhaZFkkT0g1eAp6NSM9WDM2aml7fGZ6eDxrJldETDMlLXNhbWlC
ZW8kUXlDc2Q1eW1haiNgVDkpWFdAND9WbjUlIzUyPlF6eHh3c3kKek44aCt8eFNUWnxjcT5oR25P
TE9BYXw+TDMqfHEtPFlNJDtvbm1sdk5KQ1pPWGctc2srZnhxR2lGe2lraHUzNVNzCnpiSEZmbCEw
dG5IVWg/blc3aTVIP1RZe3o+bHM1Ulp1cERqY3pIdCl+ZXRhdXA/e1Z1K25pXkdGcztwYDkmTHRS
Rgp6PC1WZSUoLWRGMGJFRDthXypxaGg7OFMtejQ+cm9AVWIpfkB0akg8O0lCcEFZTSYwVSlUS0s2
IVVZQm16QzgwMFQKendRNzFhT1A1JCRmcFFzTkdUR2dVYykmUypVbE5HaHZoZ0hpRndZVHdfSTw0
d28mQ1ZLWDhybVVUZFBlUSthKkVgCnpXYWRSZV9KQUZKcTtCYD8oYmFXRF82Xj82Wn1XNWRaTCYp
MkpVKWtLdDcqY1A8WHZBMnMxKjNtUFQzSXl2V2AqQgp6UUZxX1VEKCMkK3VNbSptXiVldkYtOEFI
N0s+dyF+SkhCbjZQViYjIWV+OGp3JGRLWHw0WHw+KXpwRytlQWdCfSkKeig/WX0zVng1WWV6akJk
a3h9RjFUSHltemI1QGJDZUwtLX48ZmYya0grRmViPDFJaG97Pm9uYERaZFVGVW43NEhuCnpGbVZm
NWhyQyU9dz99Qj07elFyMHBue1hKXldfcXV7dzRuKFR8JEw9d2EkbUYtPGxNTXY/N18peyNeS0J8
OCZVQAp6T2JmYjg5biNfamJEZ3JlVGVsaGc9OChIUUNgKE1seTMyQWE0UzJ1T3VUQzZjbWsjVTBz
STM8MCl2dGFJanYyMVoKekpmfmA+JT83UCs9WFQ4b3JYOEUrSWk9Xk41VEgoZzR6RkBLcWExUEY7
JHFJNk4lVG5scjlMNjQ/Q3k/a0Y/TU18CnplX3RHKnVHPEtUK3tvbWl1PX49cWg8NUMqaE4+WUFt
MEN1NmUoUH5qI2prRHpPeEQ+M0RofGlCcmtwPHhkQjNFTAp6ME9wYGA2IVloUCtUek1icClNcz1e
KyYwXy14US1ITWJ6VE53NllhfEhZKj05eHNNdV8laT0mbGVuY2J9RD5RWk4KejM5UCNQNyM4Mldj
Ti1aOD4pSHBGMjdXUTV5KEk4fnh+e3A9c3VSaFNJPy1aaCtNfl5SLXZpPkFyUnE2I2p3R0xMCnpq
RjgyIVdCcW9CYnNOdTEmV3pEWVIxWChDKiFzVDZrP2JGXnRJUCZNVjl4O0VNPFF6LVZlI0U9NTd6
bWN0YllaXgp6RytBOGM2UlJHYzJKPmJ3VmZZfDYpMkItRD0yYkZFbEgjbFQ7fnAmcjtXTCRxYExV
I3RzfW1SelQpKkV5ZjdWMz8KeiZ1fnxfc3ElNkYxaTU3ITs5I0QjMmd8S3NfaFQ2eHhFUD13e1Yq
V0srckVWRGYzJS1oOSQyRmtyPFMybEplcCYwCnpeQjFvRWlpenVmdEtgKFB7JSl3YTlaPjMxTHFA
TVFYVDVqNTxiPl8pRUdQcFdqSXdJbz00Uz5MIV9YRjRaSkVPfgp6VjN9aW9ubXJxX1UlemZSVzUw
IVNEamtAJE5mYDxMP3QwVzRQMUhPYio9M1lIVT09ai14ej1DSUFJKyhYKztKMjMKelQrPnlZdFA5
clpANktjSyk7SFFnd1ImTlo2MzY5QGJncDhiZnd5Y2d5eSlWWWUhPE5lWlpGdUQkNl54TnZpeSNx
CnpDbXxiSFZFTyZlNTBfbUlqfHEzVD8xcnB8TXpYQCVAbGtyNCVQZj5WYyRUWE9uQlpUfiNTQiQx
dGtpWVhZOG55ZQp6PXpxbjhRYSQzO2FVOGIxJTBFIzNSNUYpXz5sM0tAX1Z3RjxQU3E2VUwzKFkz
ZXtKcG9AUjE8Q1ZvNmxOZkllcDYKekoxI0xWdmhxU08+RX5uUSZWeT9MPHJ+I0NNQDEjUTw8dzM/
K085NlJvb2U+TEU4bmw2PnFpcFVlemA7aVgofk5gCnpPVElpbip1WkktKSpvVU9Pa0t+JjlyZ0Il
PE8hcUg7O2Y/ZUJRKSQ0WUlORX1ya3t5VzRZOW9Rb1JWQ0ZZVFJ3dwp6JSkoaX09X1BMaj9JNmtx
bz01K31tYVYlMlB8QH4xKT85NkdNel8pMENKcXtAVkxkZHx5MWEwVzg0bD1eVHYzLUcKej09MDxs
MVFjaTc9c2RTJWxYdiZ7YEsqJlg3YjZ7KGBMcHFlencmU0tOQ3ZEZk1jaWU3ZjFKIUdYI217WiM4
REErCno5WXB2Z3tDOSNjOVJZKU0lZVh3QUhqa2N1QzJLfHh6SkhpLXdrOzFuN1QxbV48bG1ZI3I1
QHNSO3Q0XmZ7dzFHfgp6Vzl+PlQlRT45PVJ5a2RSIXI4Y0cpUjJVUG4xPDIkRWx8fDApejM8RztH
TypaQTB3JmEyelpfJnBXe08jJT1vRjUKemE5Z3p5NGF9PXJqVVVNbXclfktpeD1CWkBSZ2pzIVF0
bURRemgocE9DMyV1b249fitHRlBga1RhQm13N3AtSFRICnpNUk9uITstZkEzdXhKdyZhR3RAJWBC
PVEmVWk7WXJGRjl1VDBeaiExciNQbHAyNmp6UXlKPnhaZ1IxJEFaLXhmZgp6Nlo/e3IyOEFFJlh7
Njt5YjZ9QkpYS3ozamN0PTNneCZMQl9VQUA7ZXpMRnt3dm9COVEmI3ZwV0RZSi1XJE4/cloKemZK
fE9VZkNEU05rRnZxQWRJKHB7Tys7Q3VWX1lqJiEpT3Ymc1V8QWByWGJfV2hhcE5hVDViZGZEeVZq
Uzg+SWdFCnpCKGhIdnBwSz50OSVoemFjUT5PNGwwP08ySSVeayNjLSh1QVdURVB0MWEtPik8aGp9
bi1wWFRoclM5OXZUcnN0fgp6R0d2RkNTZG5eTnNwTFJZckJkOVUkRE02alhqelA4eVA+KVFHMmAh
UjNzO3BVZXEjSkshO3ZOO0JDYClTIWZiYE0KeipqdEBqXmd+PztqUiEmPnElJWUmMChpfG5AczJS
TkVLXkx9KElJUVQ7cyhaRSRuJUVgYGtGZjxQKVoxZjBHR3RvCno0Q29od1hLIU5tKCsxO3ptaEZm
Jkl7WXhVPnk4PiRnNGlAJipjaWhnKEZlUllCT29OQXlHZnpObW84IyMjcWsyYQp6ajNKYjk1PiN6
KjJCX0x+LXRueVc0QV5WJG5PI3tNazg5dTlVWVczOFdeYXI4cUh6dC1gITE2Q20xa1M7bFR4KWgK
em9xRjc0ckRUZWU+PHU1cj98I0NLUSlWPFBeVGd9JTt7TkVweSZ8WGFjaU5gSG0wVWNGeF5KNWd0
dTJsUWJAYyNHCnpseFIldnFXX0ZYSyhTQ2lreUVBQUFFfGYmamdlVFZuJG9YVklLR25wZEBETX5w
V2Q1dD07QGJidnBsMGQ0ZDk/Ugp6JFN4dEtTZCo+RFgtez55Rll6I2FBRiFvcVF3REV0UU0yOEs1
aT5JXjZRXiVXaks/fkF5RHpMaHQ1QUdvWG9qV0AKelkoM2ttbEVRYCRyUD1lYVore0YwUmxCczg7
X2Q2XmBZNE9FX1dFK1dfQS0xLTUtTjNGNFAqTTFNa2t1aXhXYDMmCnpaQGVJRjdjQilhcDtVNzBt
WjtqMFZ9TlJwVHthMik4TSl1Rl5QenUqe1MkRkk8eEU1YXRsTHdiQFJAT1hkK0RZYQp6PVY1MXRu
b1A/K19scklTNWc5UF9FaXRKOWJkPT5ebTMtQWkkJn5qKSViKj1RX05TK0pZPTdfdUFSPzU3MWBj
ZH0Kemc9RjFHMVUmSCVhI0k8QVEtKzlxP0d9Zi1yc1F0S0hlVHM+bXBTZ3ArPkNVekxRQjlNcFlg
NGt6VlNkIzVCalBKCnpZYnpoO1c5NCtyO0t1IXQqJEFVcEdKTHo1UFdWZn4qdzdAKmBCQDJNS1p7
I05PS3UmYXVGUUFZM2gxOFQ/QnNDWAp6OGtoNVBoYjUqenl6QD9SJCRPJmdkK353cysqYEg/cG49
K0ZFeVNhQkpNbF9xP1k1byNHK3d0XiZZRkYwZjEmPWEKemlDKVU7K0V0YDRyVHFIeGJMTkAkND9Z
SEhSY3s0YHcyRylDbylSaSZKNX5seEp9T3I7TUAxMzd3QzllfTYwU1c/CnpUV0pQUW5QPDNaOSY4
MX5oOyo8M0VxWXs1b3BDPTxPWGw3MDFDb0YxND5hOSVXNi1JbHdNJkN6SCpfajhkdnlgKgp6T205
ZkUzRkl6dVQhNGJ8UVdnMzcpKSF4TVhsbG5ZRHl1R0k+OU12LWAzU1RxYz5eUCY9KndPekdNI1p5
MilgYGMKejckSGk+S2R4b2ZRYHA0b3FILUNpQ19lQCVSTG1DY1hGV0o1OWI5bjhGSzlJR15pR09P
QGJPPGllKVhNWXJrJj5ICno9MmR+cj53S2MtTnlebV9aVWlsSmE2RUEmVk1Ua212TkwoS0pFKXF0
N1F7e3s4dDhUIWZWcmFTOWxJIWRBT24oQQp6O1F1NT02bEE5I0s0bkx6dThTa0I0QkRZSWJ+b3ZW
I297V001IThlYGpsQ25UQDtBJFNtNyR+RT53UkdUT2p6I1cKeiR7Zz9ORylfUiV5OzB+SXNxNTI5
Xj11ZWB1NGwlJWJwKGIhbTF1UGklUTx0JWRqXmRaO25RemxlcEJ4QFpmTEIyCno9dntsQFQmeCF4
eUJWc31tRVR3YGhxS35qdEZnQyRFeSpMYFg9bTAtVXQhY1BJbEdGQ0lXNCZ0N14wSjlFKnhvPAp6
STJFQWdAdGA5dSUhZXpudms5SEYhajFIYHNLZmozb349VkctKTFXaXNNbkQmRHNveXhQVjFuJnc5
OUI9PXFzX2oKel8yezBXcnZXMCpyPSZSY3lWY1Q8JkEyI0hVZlJVKENCZ2U1bjNrPjhjO2owKWZe
UyVCez5idXVoaWtZZ1k7YjJICnpUdkJwPCFzfmg0e0lnNjQhYi1ySnBKQXVaNDtgPXdBK3tgTGdL
eWVHdWh1SWBFJkloJFFxNTx+MSohblRNcVZSQwp6SntwP1MwQHw8VjctdVQoQDlNNVQqM2EhJTMk
WlZXJD9mU2pzaCRla2EqfCluajA7U2NgfCZ5R3kkP3ZTbjtgY1oKeiReI0lVM0xlPCZXaSFVWDAh
QT47Y0owSVFnampCd2g8Y3U0SUo7P3VXVDhUZis7eEd2R19rSCFgajI5JnF4fjFRCnpiYjEjRGlC
cmFmd0xHQFQ4WFVfNFJJTFB+Y2c+UVZ5e3k9YFZeO1Q4TG5HSihUc0Q8K1JsZz0zYChLbTRlbml4
bQp6NldYZk8/ZH0jSHQrdExCcnhvXnpWSl9MPD48P1FnMU59XiRqYEJFdD1aKmtHM0tXeTtfbEZ1
WDVzc2I5Y2kzOTwKel5FUzB9JCQoNHE+bEFseSo3MEQqPC0kPy1GUWVHdWgxZE5HeFVwJElHTl50
KUAxT2ZpQDkkP1dKeDZXdnFQP3FjCnpfQCN1TjhZKWJOO3xSMDVtJXROdUlSSXtzYkJabTlSa3hU
LVNxeCkkaz5lRl84N2J4akBxWWVydVhlJV8kdjdaSAp6JkE8NX48ZERzM2V7PClvWUspPE1sYjYr
RXlWNjRhcjhmQ0IhYCEmJm4yS2xTdk1zcz8kS2s1UTs8fEYyTFg/VjIKemImVHhUdz9hbWIweUFF
RUYpX2t0OUB1dCVVckFaP15SX01Ic3JWJWdqZyVnSlcybU5zVWktKmFleEw5Q3FFWUdOCnp1ekxg
bTNONjg2Pj1PI21KOG88IWI8VUhnTCE0KVBRUDdNKmRmZksqUFFYeTV6TntnTngkKDxBNE5eUExf
dX4/Nwp6dHxKPlN0JEFNQ29zeV4kbXokUXJ5XmcoYnteNWM5Uz9jOHhRNGw/UjI8UDFSSmRYTGN6
KT94PnVxZTljXjAwOy0KenY5ZXg8bHNpSEA+QUByRHV2NDx5RWB5Y0FCRVNsU2pZVFBobDh9ckRJ
Rn5wVyZ1UXpoZ35IUChhazwtMVl5PmZECnpYaGpmSDRxb3crVylfWE9yNFpxSStyVFk7MVhsLT00
fDVIfllpZz9pVjQ+dGB3MTYzVVdkNjBPLXo3KXRpMVpBRAp6MkVsVSFad0Neek82N0R8d1F6PTc8
fE49JDlaO3gqOWVzRV5BQllSTSRLdFE8SGQpUiswdFppKSNaMyheezE2Tj8KejtxJkBkNik7cTxj
YDwyeUJtdiE0KXB1P3ZVJGArbVppVDtUd2hIZihIMnhUc2E9TUt1YGRDfEd0THN6WkRCcVMtCnox
NkV0JD0tfURJNDYpVGltJn1na1BfNUVAdnZIS287JktmXyN5czdAIXpSYTtWUkc2fG1Ybyh+QT5H
fndnd1lGQgp6OE9yP25BV0pwZmZTangkJGZffHVOKD97OF52Nj1qej5mT2UtMkR6eHwyVmR+Um99
Y3MmKFZLRXgqRW0qak1IM2sKemxxRXNvTTtAc3RnfEtNS0htNVUpVmt3WWJ7cVUqVihMVmhtTGpm
Z2pYezMhaT5MTlhLQEdIeHhqTH1DTmVxaXtVCnpfRypjVG1+SG9WWWp0Nk5vbWJOR1RMK1NTLXh1
fTMtaVFXI2tqbHp4VFlpPkQ8cUArPCQkbXdAbnk+TStNI2d1UAp6VWpiVVJAYlUyYXdBRnJ2cVl9
K3BvTjNyfGtjY1JLMzhnZmtXSTU2PGVoeH1xNX1NZ2Z1TW5ebGMyRiNsI2pSa1QKeipnbz4lbjdL
S0sqazg3QDVzZV9BTzBfPWhhbyRUSWpwRDFjdnVmWG9sQFp1bWdwVWNNemRvdzBeYjd8I3Z3bUJH
CnpOJTxPWG5FVE1ONCY1emVkMW1fcyp6dUkmKHZrMH5FNk9DTHhuVmlBbUJvQnhoUXktPVFHT2ZX
UCMobTlNSXd3PQp6dXMqdkQzZGhwTEJkQGo7eEglcF9OdDEwKXlYKkI1b25nYDJUMVVlX0twOF5L
c0Z3Wn1BLVk/cCE5V2Z3b2FDU3EKekZwd3EtZVVWJVQ1c0BZbTlYI0dURXc/dmtiSVhlVVQxNmhP
OXpKX2BOIz9Fbz49ZEdGYGZlV1glbDB8U0JCcCFGCnpmbEkqSmBfJSQhe0FhNitfeDU5KiVaSkpn
cGtWc1plaU19P2w8e1dCO1lOM0l0azB9dz9aRkUhJXo9ZFp0LUh+Tgp6I1owPjB5MT8xdSg7Mlgm
YjFKTlRCbUN3I051LSpCX1ZvSSFqNFozRFM5bmRuQnZpTGFNaXg5bURfITdZdFd4Q18KelFTIV4p
WnN+WTZsMDUmb1Y2Vmsldlk4TCVpfEk/ZHBXeVhFPENNPXtEOztXP3Jraz5Deytab3JLbUlffmxx
PGNrCnpyXiVSQnVQNE1MUXFnQE9ENzZQVSokN3MwVE8qMzdwJHwlQCtLaCZwLWYxX1Q/KSg3d2FM
OV5+UG53KCNHM0NmeAp6KVIqXyE9NTdFJUt6YTtfbSRxXldCZ0VfQ0dDUEI2Yz18VmtYWDJAe3pl
MUdJc20rOE45flJBbitjJVVseyowI0kKempYXzB7QDhlfHY3XzU1Rj1RVyhJe2RwPVN0d0NjP0BN
X0FucVlxQ35lKGpNZzM1TzR9Pzk0LWI7OzlBI3N4ekpfCnp4e0lGcnVtYjUrel9gcDl5bFhDUUZ3
V0xyYkBYQHxRZDIhP1hUXytrX3ZXZEh3MyRPJGl3Wjhzejl+SXpYSDl6Zgp6RDIpd0QzUTZmPiY1
X3g7ZWc1alcxV3tfYkEmZW00X0pAMitwU285KiZzfjRSIVdwfFVvS3xzVHtxPmx9Z1JsOVgKekdy
QHByI0FCNy1gQEdOQTN6PncwWWJQMW8mYUFwRzcrU3NUT1NYN3E0KTJqUXNGKm93UiY9akxgKWoo
Jk9uP0haCnpqMmReJURsKF9FUVhDdUc3Pl84dzxhfTZrekExP009e1czZlU5JWJUZ2dXdFAtbSZX
cVA2cDlYZTtWK3doTHlHYQp6eGNLanJkNTVidUh+alJIeChVc04zQ34rJFJ9OUlWcHAtXzstfjJI
cnxKVG0zI0p5SmZCKXh7T2Qxc2MpK3ZMX28Kei1PcVF3O3g7ZiZGNjNMaVVPcUM4bHFtRlUoY353
KmU/NzcqQUVrcEU2KF5VR2hpcGxHamRVfXJsOXlOTjhjaV4jCnpRez9iSzM2bntFMW9ge31uYSE4
WWl1VHpXLT1uUWJ7UylnX2xnZUlwWVV4dT47PipQXjcoam5wPktrPGE1c3dYfAp6OFhmKU9fQVNV
fENnV1UqaGNTT0RwSGsyOGMkdz9YQGQpXjxPYGl+YVVWJkBnJkE3RDskSFkpK2BkeW9BSzBqUksK
em4/RUU4anNPYWtgQXNzNmRVVVF9SnZ4a3ZNdT9BTVUySHdIRXZgKEk9PUp2UV5fYU5BKkQ5LWdk
eFctNUZhMD02CnpHPEZ7R3dJWnd9LU49S2ctY2RRezsrKVUhXyVMQjwlKE02a2UqKkRgLVI/Qzww
V2QpfWEjUytTY180dHhzZU42bwp6UTF0UGFNaCozP2hiaXBDRHZTR3xsRUAwfjs7UUBDUzd1THBA
USFDP0ohOE9UeGxvUzAqKFFyQ3EtQGF2JEh1aXAKelJ7UHdXemtIfmhUalh7UTFnMUJObUIrNk4h
TEl+MUN5NSlDKVpDdXpJPW4+aCYxY1glPnFWe3ZGYVhRbkBYX0x+CnohZG4oKlV2NExFSm9PSXlw
MiF7U0I7WGdmMjgqQm8/ZFNxKXtIJEU+X1VAKVBUVHFfTWY+Qk1AJXtoLXA+XmJMUAp6aitxYzI9
XilHaVE7cXBRe2M4YkBhSF5PVm9YNXdpO1peMmRYSV88YXhwVH0lYnJOM2J1VUQ0akpkb3otUXM+
eioKekNBIU81QEVUSE9eIVR5KTRiNXAkYSQwI15maVNSe1c7Yi0/ZmQzaj9iXjJCSG9iNXI9d3RU
SXNEUDB6RHhlbHh8CnpITj09OF51VzRpY19Sfjl2ez4tbGp3ekVofEN4Mn47X2leQG4/TGxlPTJg
eVN3Tn0zT0MjLTU/dmEocVU1ckJeNQp6bWpHNU1iJEU3TWFSckpOcEQ1PUpLSkF2fXZXLWhrT0Vk
I1k+PX4kK1dMOzJ9UTd5c3xgT3x6U3QwUXtxZi1JJVgKel5eU20zUnw2MEQkVCpscXZ6eG5sJXNW
TFJrbX01S3xLKFZhPCg3T3F0MW5WTzBKQzRwMmtmPjJHajsrIVk+TTdeCnpkWWhQfmg1Jjw9PWFr
YnpNdDhPSUZrQDJGJD07Wi1GI0M1aXlLNHV7WDB+ajlHVHJ8KXdpfVpwSkk7KlI+XkhfVwp6ZE43
ZmZnNnZ7a3RUaTx5OCVUIVMtQUJhPDtzfEM8Sis4T1oxekc2WVZ0JH11YjE7KThmXnFjR08pY2Nv
enhxVFkKejwya1g7eXFmV3BOLUNWZCh3JT1nSVJ7dHAxeUspdWpwK2R2Y0xHVEN6ZGZPMGt3QkB4
P2NDcXJ7YHcqS0JoV31WCnpFSWQ4dFUhIz1sRnNGYURsWkhXSmZ2Vk5ScThgWTwzPEJuOHs8WShZ
SWZ8MmVjajcxfnYqSDkle3NvakxAQ2lHSwp6NihAMV9nakFkYHNESlUpNlpaTjRnKVNaazkocmd+
UUJiQFVCRGA1fFRzZU8jdzVrdlVmZ3pBVlorUV8mMzVRJCUKemA5ZVdTMSVnMGU5S2lUckFBdD1s
blAzUkVUMjVlYHlmdHxnNmlOVTBNX3thcTdKYGtQZnt9T3AtJSthZjtKLWZ0CnpWLXB9eXgya2pH
LXt0QGRsPUlhOFl6dS1vUUJtM0NOK3x6eHlyM1k4S21XQFpOUD8yR2BaZ1FhPy1OMT5lZnV3Qwp6
UjJlfU9sU09uNHp0MCRmXiFzZyRCM0s2KjxUTWlnVW5jfVpERXV+ZGFgYDd1fEhTISEmeUpKMXt+
Smg3cHpqM3YKelBYZ2NYUDw7fmpQaVc4SSU8Nj5vb3NpeFcmaUBaS299QGcjRGRiN1VjYXJkKTxv
bXhSajEjJXpBREh9cXNQPDVxCllQOEpjKHBqJWVKZV5GQ3RzT1R6SitfVmgmQTM8RTxTTzVTMwoK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWNvbG9y
LWNoZWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZm
ZWN0LWNvbG9yLWNoZWNrLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMTYzYjRkMy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2VmZmVjdC1jb2xvci1jaGVjay1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCww
IEBACi0gICAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Vm
ZmVjdC1jb2xvci1jaGVjay5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9l
ZmZlY3QtY29sb3ItY2hlY2suaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDgw
ZDM3Yi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVj
dC1jb2xvci1jaGVjay5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzEgKzAsMCBAQAotPCFkb2N0
eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3RpbmcgdGhh
dCB0aGUgY3VzdG9tIGZpbHRlciBpcyBhcHBsaWVkIGNvcnJlY3RseS48L3RpdGxlPgotICAgICAg
ICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1ND
dXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAg
ICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0
aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9u
ZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAg
PGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8aW1nIHN0eWxlPSItd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVy
bCgnLi4vcmVzb3VyY2VzL2NvbG9yLWZpbGwuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBjb2xv
ciAxIDAgMCAxKSIgc3JjPSIuLi8uLi8uLi9jb21wb3NpdGluZy9yZXNvdXJjZXMvdGhpc3dheXVw
LnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcu
Li9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29s
b3ItZmlsbC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIGNvbG9yIDAgMSAwIDEpIiBzcmM9Ii4u
Ly4uLy4uL2NvbXBvc2l0aW5nL3Jlc291cmNlcy90aGlzd2F5dXAucG5nIj4KLSAgICAgICAgPGlt
ZyBzdHlsZT0iLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRl
eC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1maWxsLmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSwgY29sb3IgMCAwIDEgMSkiIHNyYz0iLi4vLi4vLi4vY29tcG9zaXRpbmcv
cmVzb3VyY2VzL3RoaXN3YXl1cC5wbmciPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBUZXN0
aW5nIHRoYXQgdGhlIGNvbG9yIGNoYW5uZWxzIGFyZSBzcGVjaWZpZWQgY29ycmVjdGx5LiBZb3Ug
c2hvdWxkIHNlZSAzIGJveGVzIGZpbGxlZCB3aXRoIHJlZCwgZ3JlZW4gYW5kIGJsdWUuIFRoZSBh
cnJvdyBzaG91bGQKLSAgICAgICAgICAgIHBvaW50IHVwd2FyZCBhbmQgdGhlIHRleHQgc2hvdWxk
IGJlIHdyaXR0ZW4gZnJvbSBsZWZ0IHRvIHJpZ2h0IChubyBtaXJyb3IpLiBBbHNvIHRoZSBncmFk
aWVudCBzdGFydHMgZnJvbSB1cCAtIG5vIGNvbG9yIHRvIGRvd24gLSBmdWxsIGNvbG9yLgotICAg
ICAgICAgICAgTm90ZTogV2ViR0wgbmVlZHMgdG8gYmUgZW5hYmxlZCBmb3IgdGhpcyB0ZXN0IHRv
IHN1Y2NlZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1jb21iaW5lZC1t
aXNzaW5nLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZm
ZWN0LWN1c3RvbS1jb21iaW5lZC1taXNzaW5nLWV4cGVjdGVkLnBuZwpkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZDM0ZGM0Nzc3MmUxZDY4OWRlNGM0YjE4ZTkwY2Y4ZDMzMzFiNTgyZi4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5IHBhdGNo
CmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAxMDkzMAp6Y21lSE5TeVU1TzdAa1NrNn4k
TiFxRypKR3MwRzVWQVEmKzBuXzNtSUsqRGJJZlo3NilCYHxQNjBZTV9fcH59QUwKemFZSE92RVJj
ezJ3ZVZtO1FXczxzZGVDcXshbEI0Jk5IMTNBPUo7SVNDTkloU1hZUmU8X3g7UEFgRU40IWRBcTJx
CnpYeyNYIXFWREYoSmIpbCVEdVIlWHMzLXg7d2I7fkM7QT5tNyh+OzxxVl9fakRldkZBa0xWYGpw
THhaZD5nVHZeJQp6RWE/YChycS1jNVAwaG9zPSUoUlQpfjRvV3tFUGVpNU0oPmtqcD1hazRFbkIq
cEgmcDVsfEZjfkZqSXErYHJ4UX4Kem1SRjU9JlFSZXNtK1BmZ3NhMDNCKW44VEtIYE9aSVQ+bCVu
WlRJaTdaeUgoRWIjZExiI1Y1UktlK24reTclMSllCnpwdlMtdmwlJH1kTDFrYjw5aElpaiU2blJK
IUViMHhDTWpqRzZoN1V1V0ZHZXZCRU9tKy07O3NnZ1BgUEFpUUU7NQp6VzVDOUcqRlZfSWchNXFO
NUM+aSVEWWszcmpQZE1PdDk5WDh1ZzkhWEZMbjR0Qn1fSWkkXzhzcW9KKjF8O356eGsKend7UyFx
MSVrJUB4c0lZWXckcUlULX0mMU05ekdtU21sLVVOSEJfQmw7ZDt9XlBqIWpMTTxBXz1EfHUmOWhT
bn0kCnpZWiQ2KFFMQkNsKW42ViQpekc5Zmg3X31XYThSVypIZ0A/ey1XOGsoIShXSkdZOHUpdj53
fjFeVmQjUDU5KjNiQQp6ciVeSTN1eXBvNntnd3YwbGF4TE81K3lhNVNgYkpeZUlpcz4pa2U2O3dv
a1E4LVJfaSheYWFnNzh4fCNzSXlNTXcKemQjNFlITVMqPFc4P0d2VlBgU1l0TmEpVE1IZ0BNfSNn
MzFqYFVzSnh1Iyg2MGEtYHJDa0wocDllaWJnaHhDazFxCnpEcTdVY1lpVHJgYmo/YHx7bjxJVThY
clVEWTB3IUlPSTBecTJEVW0lNCRhdlY7REI0R1V9QFRNTioqcVpQQEJ7IQp6R25nOF5YTURDeGJa
O19ueE5xWTI8TjZXNHNLYSpKbVgmVipMMilNZyk2RiQkU1RwdmB7dDcqYStYQ1FyX0JrTWoKeitZ
I1V7Y1hvbGVqeykyeyNnJWZuKCpTTn0mSU8zTzZYNGRpYkNiaVozVUZzPz5wPE00MEpsWWFvKlpy
cE52Vnh1CnpYX0phR1ZlRG5rNDVTR25Tcj0kTl4mLTlJZn5TUyokPlpIdCh4I0IrMW97dGdIRmd7
TXdtc0tOSUs3O1RRPThULQp6RkZ6SjJXSERrezdjdURnPVdGUFU9T2JQRSY9UENIIz5ORD9zR0pZ
PWZEYzdnOSM5Sn41ekBfZEJGVHkyMD5yckMKemtxXmFxJHBfcFF2Sn5YaHhCeDhQYE5tdElVbFJj
Tm5SVGtKeFlPNz1EY3Z1a2wqanAzeG9oVUZ4WWkkckNMP0VeCnojNjdlQlQraGlLJjxUSXtNRFFA
TlhPcmgxJHhleEpfeWB9KiE7R2NTdDI4dX5nR35qbkpJZ21mKmk3STsqWnNrQQp6czJ1PzZHQUM8
QElzPkB5VnRLMF49dWBtT0BxRTs+aDhrMjJBZXBYSHJrbzJFMGdMcG5gKjJ6ZXN4QkwyVz5HSFQK
ejRpbD04TD1zV0leek16VikpbTx8ZGRCKj9WfFJVTWRSbmAlcGdWUVJQb09OfilhR3MmU2FAQHtn
bVpkeSNjQ1kwCno0UVl8b0hSNjUlPTU4RndUfi0reHplNlAmdT00aUpnUkkoQ1hpP3xYYlJlOGs7
SzFtSHl2c05vMkptMEl1TlotfAp6PlkoSUcoVW5SVjI5dXk3MnBwQjZHR2RAaVE4ZikjQkEoXztz
ZFg5NC0jP3BZVmlHYW5wQS17Z0lwNEdwJio1XnAKemU8aS1+dD9nSkM5VWtrbTdgV2VXN2lUcyFm
ZnJ0Pz9yVzFUQihoU1FubyZhdjxqRGwzQEdFQC1TUEl0eHZET2BwCnpDUFBhR2hFbGU8ZHFPRjhz
RWpRWmJULWRMSngqTndxZ15+JDgjejZtSUlHXjw1emV8SkQzYU1fKWtgUGVqYGh1Kgp6P2B8dyV7
bl5pI3dMY0xMaVpvQH17b0l8Mkd0cC14OyZidSU0cE5oVkNaa159UlkyR2s4MyNEUjxlMzQ1VnRm
YU0KemhZS0xJMFQhRXBoQlJteTJVfD5eRk8zUW5oKjV9QGQ1THAzT0QoI1I3UjRgfkhudSFUc05r
JGxGNjgkMnZ+KDs0Cno2PiQ2aXpSaHUmRD10fklpcyFzUEg2MGYqdXhMTnVSMzg7eUc5I3JBeGEz
UWs3VCtkSyUqJj5tQGM9UmN5dVd8MQp6WnY+YUEhX2Q1SHBFRlFzQk1AYFheNlQmKzNTQSlQOHRl
eVEzZkJRfDljRmRHJn5ebyhKdTt1UjZfNCNzM1l+RzMKej4qaiVMS3M5MXhtN3tCbWFsI0FfQUBV
Z3pWZil+LTx8KU5UYUdSeV8pPVgmZkpQKVA5ck5tJDw+OGIjSEI/YzhfCnpRUnBwLVRvJG99JE91
UEZme2ZPcVdaSmheTitGfHB6XkhrekNke0hYa1ZSSy1EWm5pMTFwRTJDUDZMaH5WPnBBewp6Smc5
RjdnJWU8Q20hd2s+JlQwbGB5fXNRNj5ORXY+bnNtKz4pK2lwUlFEJW8hLVNLSGxLfjxsIWpZaT9E
Kn14cSkKei1TPEs4VDtQc0B2SzZxZmdhWSptTmVEQFpDP09KdXMzaztzQzNZTlE2REZRWmgofFR6
PjZMaChDKkU8MCpGTkcrCnptfW18VntTdTtJTGJRO0d0e1R5MyNQPFRDX2UhKippNEh3K1hoRUZn
NUp5fFlYJi1SX059TEgzJEs9RjYybVk1bwphUV4taVdKOSNIPHMjK2YqO04jfXgmOCY4MHJ+VjZz
ckFwQk4KCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVj
dC1jdXN0b20tY29tYmluZWQtbWlzc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tY29tYmluZWQtbWlzc2luZy1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWNvbWJpbmVkLW1p
c3NpbmctZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tY29tYmlu
ZWQtbWlzc2luZy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3Qt
Y3VzdG9tLWNvbWJpbmVkLW1pc3NpbmcuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggOWI3ZjFjYi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2VmZmVjdC1jdXN0b20tY29tYmluZWQtbWlzc2luZy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEs
NDMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAg
PHRpdGxlPlRlc3RpbmcgdGhhdCB0aGUgY3VzdG9tIGZpbHRlciBpcyBhcHBsaWVkIGNvcnJlY3Rs
eSB3aGVuIGEgZmlsdGVyIGluIHRoZSBzdGFjayBpcyBub3QgbG9hZGVkIHlldC48L3RpdGxlPgot
ICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBh
ZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90
aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0
eWxlPgotICAgICAgICAuaGVscGVyX21hcmtlciB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiBn
cmVlbjsKLSAgICAgICAgICAgIHdpZHRoOjE2MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiA5MHB4
OwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJBIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpIG1peCh1cmwo
Jy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKQotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5n
LXZlcnRleC1vZmZzZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWlzc2luZy1jb2xvci1v
ZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
ICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0i
cnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGVscGVyX21hcmtlciI+Ci0gICAgICAg
ICAgICA8aW1nIGNsYXNzPSdmaWx0ZXJBJyBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5n
Ij4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDwhLS0KLSAgICAgICAgICAgIFRlc3RpbmcgdGhh
dCBtdWx0aXBsZSBmaWx0ZXJzIGNhbiBiZSBhcHBsaWVkIGV2ZW4gaWYgc29tZSBmaWx0ZXJzIGNh
bm5vdCBiZSBsb2FkZWQuCi0gICAgICAgICAgICBZb3Ugc2hvdWxkIHNlZSBhIHJlY3RhbmdsZSB3
aXRoIGEgd2FzaGVkIG91dCBibG9jayBvZiBjb2xvcmVkIGJhcnMgb24gdG9wIG9mIGdyZWVuIGJh
Y2tncm91bmQuCi0gICAgICAgICAgICBUaGVyZSBzaG91bGQgYmUgYSBncmVlbiBjb2x1bW4gbGVm
dCBvZiB0aGUgYmxvY2sgc3Bhbm5pbmcgMjAlIG9mIHRoZSByZWN0YW5nbGUncyB3aWR0aC4KLSAg
ICAgICAgLS0+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRpc2FibGVkLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQxM2NlNjYuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRp
c2FibGVkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLVRlc3Qg
dGhhdCB0aGUgY3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5
IGlzIG5vdCBwYXJzZWQgd2hlbiBDU1MgQ3VzdG9tIEZpbHRlciBpcyBkaXNhYmxlZC4KLQotT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLUN1c3RvbSB3aXRoIHZlcnRleCBzaGFkZXIgOiBj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLU11bHRpcGxlIHdpdGggZnJhZ21lbnQgc2hhZGVy
IDogZ3JheXNjYWxlKCkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIHNlcGlhKCkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRp
c2FibGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0
b20tZGlzYWJsZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjRkYTMzOC4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0
b20tZGlzYWJsZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEyICswLDAgQEAKLTwhRE9DVFlQ
RSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08
c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
LTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJjb25z
b2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1k
aXNhYmxlZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tZXhwZWN0ZWQucG5n
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVk
LnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2U3OGM0ZGI3M2MzMDU0ZGQzZjcy
ZGU1ZDNiOTYwZWJhZGFmNWZkYi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAxMzU0
OQp6Y21lSE9YSD04ZikrUH1LdW1GUCFJIUk5KiE5Zjg8MXFzYlk1ZTBPUkM/eF5HMkdSXmVDPHpI
UjFPPT52Zyg4RTkKek4ocGx7I3NDUzdmflgpdDZwIz9lMDc4aDZnZFJjKF9iXkRfdGhxbkdgUE8m
V2B0cG45QFNnTVReWHpCdXtwYCZtCnooYXB0UyQtKkJOJUVgJHNhZE87IVApPUB2b30zKX51K24j
NjwhPEVKRnp7bzIjR2I8dXt3SSg1MlZzNSptTlBmcwp6OGdNTE4rZ0FWVytxYXUtLW0tYXtwUDhC
MmFTTXhwZlBoViNIeXR4cSR+NlAwWjZQQEEtcipodjxGej9vJC1xV2AKekh5fV8kQU1hPEt1MEVp
N2BpSTlHbyoxaCtkWThvUyo9NDc2JGd5cTk8JWszQ1JDKjZ9OXowZC16SXR+fT9qRTBiCnpfWl8q
JHBLbT1geE9haU48OHNaJV4qOHRLSWtkYSskJmN9JFE8azI8LVQ1NktfO0lnfUUzVTIjNlZYI15C
QGpoIwp6SFJCTkkwejgyc0trMnVEa1RkdW1lR1Y8SnFeNCZfbCFMKitocmA1KkFkTjZwaWV2JE5z
OS0yOFEpNFNoSitAKD0KejlxaDtvdmV4JnxXQX07VUk/eSplVXFBVDVIIW1OeFU3OT1ndWlxJEMz
Wj1mbTdjRihPKTNFMitPUCN4bGk4KlVfCnpWbFUtfHlYRHIhZU5+dm96QyNTMyV3Yz9mYkFEIyYh
U3Y4fSZiQX5XJkNgbDk5aXd+MSVaVUNvc3tmYXFoQ2lNKgp6SjZCKVNFTlpPRiRRWSgjc2BAZ0Zf
fkc7QCtIaDRMRWg/d3lPbS1BNEV5PmxXPFp2bDM/RHJVMkZiQ0J4e2B9d34KeitmeyZ8MWFwN217
KzVDdHtQYm4hOypEfjQ3Slp3ZEBNMVplPyQ9KGZTUyEqUm8mMzMkR3RJZllNOyFmVTtzVS02CnpY
TjZDUXVLYmpJZk5wKTtiOylIYXs8WTlodWpYelVPPDRrRHwyWlEzVSNoKCFQVHozVnYtM1RvdTxZ
dXd7cTYxMAp6ZWFDaiMhQ0RqfUN+TjFAKkRFZG51PkVVWVh5fmpqPUhRJnZ5SEQoMlB+eFI3TEhE
bytPZDtVTjRUfHwrOS1DY2AKeiRFJiY3amx0U0JMSSFOZXVnSjdqcDF6QDVfI3VRKUc0S0dKb1Mo
WVdCdlQ4aWQmdHVZTms8SntkKVU9VSY1akRPCno7eTdmZHAxQGElOXVPKEUzLUp4cW1GMDAwPSVD
T3RAQVImJXcpc0FTaUE3fTB1MGQ4WmhUTkNUJnxvWWxuVUBfZAp6WVpyQT1KNFp2eCt7QFopJGU1
Zj9zdXBRcUlqVU5hQyl8JllXfX5Nb1BPTTk8QDFEZERVSHBqVmohKkttOStKdWcKekJwWHJSNFRx
RCVvY09tIUYmOFJvO2NAV0lXKk8kdCZHZEBCenx8OzY+eX1DYHQ3ck9AX319blV5ZnMwNnFTM1dy
CnpgSDchdy1vLXckeksrfVNOI314JUYpR3dCRTEkbmZmV2dGN2lyaT9aKEY0N1duMHItJXczWlp+
QHkyaiZhQFR2Tgp6ZW8xdzZRbVFmQUZ0Z01IN2E9OyVWP3trM3pjZF9GPCZjS1hGWm9vcnF9bGw5
KDI1WHVNeClMaDh5JDIoOCNaQnYKej8tZ2V8P1EhalJSIVQ2Z3xNRjQrdDdqNzUzQld1bG4ma0U2
M0NoP2MpTVRyMC0lM0RLMjlrdUZvLVUwRWQ2JEcqCnpXMTIoRUJHeEsjZitZbCFTTCNPcnAzJn1M
Q0cxcXcxQ1BOcz4hKHdzQkRncGZVQHR1MHpDJUo7ViNPNmUkMTdwJgp6X0VKbEhLO3lRMShUV29D
IVFmX3F7JD8rdXdXTzl4SFFucVlMd21IUHRmKTEtfERUNVdabFF+VWdyV0s2VUExQDIKemEkaC1J
KVdfSWhwR0RBZWNKV3d5TVhiR0N5M3dtWkY2JTJqMUwxTDNAWSQ0JnNaUXZedlZgTkZAM3xARmAk
WWo7CnplJUsjOUlfNH0pPTlmO3R5X3czX1lEMDg0d3drbmcoYn16NVMjY2s0cnNgT15CWkwqJWlo
MTdNVzZsT0RTdWJYdgp6Yko0TmNLS29wVClqPSFsXyRNQVhzYHR9MUNOKTlEYzEhbjk2bSg0UTgq
WGRYSzJoKDtiQnlZWWU9dW8lK0tCcEcKemhLenlQIWo0Ulkhc01YNFgmQnJtWm00NXMlKlUqfShn
cXJje31ERF5QSE0+b0IrWWEoMClxVC0zX3pTKXR7P3xGCno9NVJYTFhBeSo1MUVxdSE7RFpMakF+
YDR8aVk+c3RARnhDbGlDY1dSeiQ+e2s4Z2kwdGNEfns4MVB5Rkg3dDRIUAp6dCVRRytYPUwqUGNZ
QmhgSlhmRktNO0AxKHhZYkdaMk5gektnRzh6M0coOUE9X1A2OX4yQn0pO0tIKiVQeXF3ZGQKelEo
PzIxdGVEUVdMUWNed0hnUGF7TnpJN3A5Q0A+dE4wR0dmS35gOHZCKWNPVSFEeEpGU29sUzQ0aklv
YFdTRzRoCnpUX0MjI2YkXlIxK3BhO212SF82QVMmTFJCbTh0K2VrQ2FnblAjIXEhMmArZGxoaGlh
TlJEOUpVTCVxeDlTTytMRQp6SXZXQWRnR1YkQkJ6Rz4zMF4wX0FfPlIhflB0RD96K308aFdFMFp3
YSU9MipwJmtpdWZaYD1ecmheU21aeDc/cjIKemIjTDF8KGVfQFM9fmRfeFZ1JlYxdT5tfiFSaGE2
X29Sc0RIe0Nxfj9eNHktLWUpQDsxMV9nbjNBY3dEJlkyK2hfCnprS0oxaDtOcSlsRmZ1a3xBYGFB
bzBgcWVmLWdVVmt3al8je2tpPkQoV3ZYQn1IJERXTitQLUpidGtjVTQjbjApWgp6OCpTRH0zPG92
I0d5diohTmMqPkVXKGlUVDdfUWh1QF9sYndOJiNQZShGKm9DSmk/d25laXpIVU04RyNXSl4yLSUK
ejZIQ0UmXlJ3RkwkVVk1a3JCRDJzLU85O0MlX0licWJQOE12eXohaStpWk9ySXBJZUc8b3Bfbn0l
SFZtTjx6VXkxCnoxWG1ZYWFOaTw+KU1YNTk4fWV1ezdCP2s2TDZ9VG9vRGhBUGpZRXB8JTlMNz5I
X3lhTzd1P2syZDN4K29VU2RQUgp6PFMpSDdDK0pwI08tOFRZUlc/N1Q3ak9Pfkp+O0xqJlkqPyFt
VXVhZ1k+S0JZOGRyWTlhYEwkPEB3WiZPNlMmI2gKem0xeExLY0R7VkRedl52TkRgcEg3NipndUQo
Q0JvT0MlKy1yUyNnNVpVNmJaS2UyZH1wIzc5c3lqTkJgdm9qRkc1Cno2cnBJSUM0JCVYSm1zLWcy
TDZrRlpjVW5NYSY9Y2ppelhfe3VaVUJaWTMpXmw4ZjgmMm9WYEdDQVA4YXtILV5LWQp6QUdRP3Nt
cDJ6LUo2PkxCNyk4YTJ4Kk1venNGPXFRezk4IVc5ajxyeWw/SmwqVClAYCtecnlqcEQxbk8xODZY
JVUKeiZvfjNfdH09fHpQcV5JbURPMShsYD57MTZfe0N1PkVQYnIoUypMbnpZPTNwUnNjNkU7aEAy
SHh3NWwrfSVsaTIrCnpeQEhnVDl2K0swQXZWdj5GbVp5Y3ZMK1VxOHQyTnB1MnFIVT9wcj1uOEJV
RjJHY3tza3pnRGVoKDU+OEFMYnBNSgp6dThQUyhPZW84MThgOGpaUyRUJWpZe0lFMWZOTkUpREx4
UlpIZXQjX3IjfjJ6OH1xdzhsPD1yQ0xuRUBeUl9EJXsKentJNUQ+I2NiN0dULU4pY08oR2JfPm1u
X2h8RHxydnVeTyRoeyNTdjFGSGpwUXk+el43QEk5UmIjcVBmUzwqaHFXCnpHKmUjZTFKQ3xOM1Mq
b2FfbDBCY2U/eiNGa2slQTZDLVdvUVU8OEdyN0lsZ1Y2djZtcUslOyFtRXxkIVZkbSExSgp6UEhh
dCt1JSpIVldRV08xZitpP2xmODd0ViF9Q2c+R1pmVWlBZ0orYCpkUW51KVR9RyElcSRrPChjU2Ql
e1JVKj8KemtAd2s9ZH5NeEYpMGhQSTZLZihxPmUoMnZ5V2BHTl5CTHVgbSEjQEFQbTc0Kkh8Qk5D
TVp6TjAmfGkobU0+KFhsCnpJK35FbXF+PFoyKCVJOXZWMHM+XiRjT1otKG5yTzU8WTZncCY9QF4y
QD91USZMbClKMih6VndOLTQ7I3FHN3h7Ywp6O01xPT8kaWw5U1gteTA5NWpmakVuSENQVTVMKDgx
bChXUillc25MYkRHfFhaR3dlYnVuIWM0P0VmejYoQ1pNUjAKeiRfYy1gJWNyMHgyRmlJO199Q3pO
SXF1OyR3KGhqQnVES01DKSV7aT5tZDcpKlR6KjJIeGhSMUxkX1g5RDUoYD9qCnpqWFJJYy12MEs2
dXoqTD9AX0F3d2cqbHAlVihnKzVTWXU/PWg0SGRNZUFjenVFRlA/Y0EoTEUtNXRhb21XdmBudwp6
UTw2YjZKQ0ZfUDNSUzl+cXZCZXQlYilVd1hfRihGMlkzZHQhb155LXROQU1mbi1UN2BfVEdiQng/
KUhEeGcxU3sKemw8PEA4bGxufl5vbzNtcCQkX2MrWT1QJE1jLSVhXlZJPVg3NyhaaDtkQihFbWpG
SU1RSyhhRm5TN3xxal57fUNYCnpzd1cjMih7MF9SUnRsJTlGcDheYlh4I2ZSQEY4RGJzSHV2PFdz
YmAta1MkLVBLYmR9QypWJWE3KT8/I2hob3F7Ygp6P1d6X2VSQV4rcGgmRWdxPUdSI2pORk0xcVM3
VShjc01Hd1p4cFkpLTxXe0dVX3NrTjwkLXZ3RGlzM3VUZDl7UlMKekJxV35nZTE4WGQ8dFZLIVNw
cnphS35PZkZ3YWRHdU5hcTNnUjZyP31EI0wtR1kmYEN3U1YzSF4weU1sbDhmZ3dPCnolejVLcTRD
XyswSnA+bmJhNntBVCtDRTFHYWFuSWtqWVl5WSQ5WFpYRCYjKEV5Nzw9eTlBbE4oaDBCXnFXUjd+
Kwp6JlliNFBrbEp0PEUoQHRicGhXTiFOMH5XUTFYQ08tZzckUCpGdWtGUWYyTFBKPXZFYUJINmpW
eiY9QX4yQmY2e3gKemBNUXRYSHtGbVI/bCVfMWppJXwpclc4cnlQOU9UdkFBQHpuWjQrckxYODAk
e3YxIT15MzFfc1d4Q0tjN15iflEmCnpoMlJ1S2N8OyVHMDZwXzExRCF0NWE/Zk9qZTsmITc4Vlk1
TnZvZ0BQMlU8UUYqampZbExYPU0tODhjT1h0KSR4UAp6LVdeQ1hgNmp1YUUoOTY4OzdxJU5COzFH
PE1HOWs2MjcwQkxaP3U0I1FDbC1HbWBXKHkhWCpkdzx6bnZMQlYoRkwKem5oYyooPy1EX0JJTTE3
VkcjMXkzajF5VGU2QD5ZRlZeK1JLdTAjM3ZFbE0rS3RlYStaLShfUUxBN2B7JHo2IUM0CnpZaShg
IXUjRUZCSkElTntxV0piYSl7N3xpUzg5VmcqeCZKeWJUMkFsTFp8dCF6MEtRIz5jRCZZWGxIKHA0
Q3p+Sgp6dihENTZJMUZ7WVhjd2BmTEFqdT9hQVJCREJ5RTZXQlcjQDM+OE5PKjtlYD89PDEtNVRk
PDhnOFhyI30zbD5DQGAKejFeTiU+Jm5RamxEd0dlaCYhSmI8UF53WXRlKy11TCU4VmZhTCMmdT53
KD44Z0xJaEkjezQtY2Bqckt7RyZgZDdBCno1SFFiVWlMTy1OUWsofiRaTGVjdjZzMkVFdGU2Mk1A
PX5ZKiM0TEdAYndKMm1WSjFVVDVwOzduUlkoLS02YFJLSQp6TGJQKmg/YFdzOEVXO2owMWc+Ymgl
eX19fjZrQm5DZkowaGliMW0zcWpOb08wU2FNV1I0REJuR09lU3xgWHpSfV8KejNgZXpyckJ+MTJ0
YzhAKHtYYDxYVlhiMmpeY0Z8KFJgcjlNXmBSKE8yVmR4VEwkNDVPMj1xWTE+ZzQkTDNJeTMqCnpC
fTJYYVhQPG9zWklYdjZ0WD0pMTg2QFVUdURNVSNxVEtLVXZgSmxsKzI0KCtOTzlkY15UaT9QVVA/
NihyNEhHZQp6akpiWioydSVXPTY0MEEmUl8yKypJcllfKHFuQyFpOylCPjhFfExIfnVRYWFnPTst
enUkXmBZbVBWVXY7dj5gOyMKejEzT3BtU2IwT0BHQ01fPiFoPkImayZ2b1oxOXFPNUtlaTlAajVl
QFNXaiErPCtIe0VzUzY5RWUyX2khVDBMfThqCnpOa3dTV1k1Pn5ialBiMkQkVk58QmRXSkpQYklL
QiFgZm5YfUBlY0hNYiZnJmZxSkdzR3dsVXs4cV5wOGlocHJSSwp6bnNRXys/bEZvS3dZXiRtezJE
TkRTaTVIM0UocEB6KSVTQGJaJDQ7MWtnZnJ5VWI/Kik4YUxjZTBSR2k/QFBobiUKejM3RVIoPTtw
UE10OHs+PXNqR3Nle0pZWiptVSF2eVJwe0lwZlNkSzFYQTAwSkNFKHdgOEJeU0txZHVXeS0+SHhL
Cnp1ZFojK0xVQCs2ZjU/c3UkO0V9X016Qy1Ca3QwSUxJUjJNKDYxRV9NPUtsKUUoQUdgUzZuRzZB
YFA4blNoYj97dQp6WGRNejAtYCQ3YUpPcW1UKVoqWkkySjZ9QiojcVBMdU8zPEd4fDZoI0l4Qzt0
dGRZMWRrKk4/ZkUwPG48ZWV2Qj4KeiZfTmJ9c0FHUX05cWFTezVNQjdOZjd2YC1jOSVkbXs9WS0y
ZX45NWRWezFxQmJDUiFEVWp2RyVjVkk2ISM9JHUrCnojS3Npd2ooQm08aXNEKHlhcyRJNmRVWD1W
MTJqVUszfmVLaSN2eTl3SWQ7TXlQd093VTE1QFYxYUUqS3RxMlM4cgp6RGs8X1B0cU94RmQ/Nnxa
U2szengyRzBPUWJ2ZWJuQWM/Njg3I0owKE1BXk5UQnJDbW9DdmRyJjR9QnlOQEp9OFQKenw2I21g
NmtZb1FeYT5AbHh6MUBTQmg7RVNsZUNfRExhR3Q2PXE0V196I3ZKZWpjcil9b0g2O3k9cXhYPDtr
Nj9OCno/TnNMUHhwT3VlKkJiZ3VNSSlIZE1MMiM/Znc7UjlUPU1HdUReayUyIyhAcDFfYUxCWFJR
bGV7WnMqeX0+Kmtwdgp6N3EwQE1GPH1gYGl0eE1iVjlMdHhaYlJvPGZAc3R9Xy1wflJOZXg4Zi07
ND02bmZJZzM9IUZjSURSeTcjXm48MmoKel56RVBPWGs4MSlpcThvN0s9KmZpTkRHWCQhYkd9VGoo
PklxZ1ZXRy1sOD9ZZ3d8I0BwS3B6OGJrYFhKd2tUSUBWCnpoMTwmfk1ORko0JkFZVlN3byNgNSNj
VyhYQDVjQzVAdCNfNVRCO3ZGcllXdVIxLV9PYEBaVTIzNURlWjFVPGdUTQp6Q1A/e08xTmJgMyFk
fVlQSztDbkllVDB8dF4qP3R8eW1yPWtAJVNzKFRkIXlTQ3o4JGxSXjdEa0lFdT9eJD09MmAKentu
VFVCXzZkVUd6ZGR1PWNpayU9WUElTEpJMEooI2dUZD9kdEpoYVRXbyEjejw2WmV2T0NhQVYxMipw
NWR0OW9mCnoweWRzZmYzT3ZEKUxPdHM8QEktPCpeYj4oUCphXypIYkZKQERoUTNXNCs4OT1iTjIm
SXRsUXl2UFFuU2h2cVlJTwp6dnRuQ0AlcDY1IW9TRG4ydlN8OE4zVDFnX0UtPm40OEY7UjskWkZI
dmE3ST9Pemh6MzlncVJCcW5TX3VAMiQ+KykKemxOSEt1YXxUKFZsb2QpQHVkT0hSQ31rYWBZO3JY
X19taj1eVyhBX0daPDYmKnZZfDlsSGVpJHU3LWZJcmBGfnN2CmMjRn0rRjgpMm59JiFmVHJGVWRM
V2FvSnQ4KUEjSlowc2FlNXgmUXpHCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDUxZjhhMzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBA
IC0xICswLDAgQEAKLSAgICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4cGVjdGVkLnBuZyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4cGVjdGVk
LnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmZmNzRjNzBiYjdhN2NhMjYyMzRi
M2MyMmEzOGRmM2MyY2QwM2Y2OC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCA0NDEy
Nwp6Y21ac0BXbCZzRSg9fEd7eUEzfEwyTF5Ye2NYdWJhK3UkREQtUTl2RVNhNWQ8MkAoa0k/aGc1
UXpGVzhJeCVZam0KemVAeFpYb14kcjwtbTdQdz8hOFpwczxJM2tHNyZOVzA2PiRJbH5lfStVX2J4
PnZAUm4yJDJVMSVwKU1hRTM/NVJ0Cno5dX5HJTdXVkYqanNTQiRaWFB5SGI2IXBoUEhyfCVEfDJn
V0ZlZktCQ3klKWAyZF8xVXh6KDAwcERPPyQzWHFjJgp6KUFXSGw/YmVIPGs7QD5wZXFaIXl2WGIy
RyhZOVh2WHs2UHlJNGVEYW4jcEpgOCtacCU/R3NIeDZiQlcoVzN2QG0Kemk+Z3Ruey11SDVQUmRJ
TGlNfHFJUTZWSj4tLT9OZ04/P3tAYyFrVXszISZJXyleXiZUKXZVRlJPKWE7emI8QlhoCnp7YiR6
LTlGeSVPR3lXPUtKUkNTVlNxSmBve1Voe1glcldWZkIlOCpZXnVPMzhEekI8UHlqMitgSHAyZ0Ep
Q2t4Qgp6SVchN2EoRXFUX1kqIUZlbEZpN21yc31ybnwxQFkmSDV4Vmd8MT8xa2JaV3IkbHh7dzxK
YztjOEd5d0pZa2ZIeUAKelkoXyQwTUdGWFBITjt8SXstK0BZbXZSNUU7SEclemU1YDU4TDt3SEsz
Z3s2NkAyNklBcDVCaD9GTz4yVz0mJXZjCnpLZ0l5fldTeXlnKUJKejFfNj54WHp8SXxSTDdYfT1s
eGZnT3hJZ0NhdyFFJWU8TlJOc2Alb3NLcHlNVERVfDlKLQp6dUhya3Q7b3tmeC0hTmNDTCl5QGFu
aDRZZWNpKkItKSNjc2pkNk5LUiNYZF5hRGdUV29EajZvfDwjeDNzX3NMJVAKeihqLUYlPWtmbXp3
Kjl8QGVZTDdmeyhDUyZJdChsa0hfO3p1cTY3MGpETWNkZFQ9Kmo1REoybiV8SE88aHNld2p8CnpA
eE9wPGc0e05CO15yOGo8QlhhNFQ/QUY5JmNNZGxHV1NPdytrR0tCcVI9M09eWWspZ24qUiF6cGJH
a0g0SFViVgp6UCYkJD91bFEyN3J5YExHLXB9JSg1USkpYFBAdzsxUW92TEd1bFZfM2xSV3hjRSNw
RTMrdmlDbWxBeXd6I3xwQiYKelF7RDRINC1aK1Z7YF96cDsocl9tR00xPjN7Qk9yQ1oxPVV2N2ow
Y3pKYFV1SDFFXnQ5I2dfdUNMfDZqTEFVRnNHCnpKcFhhI3k3TUw9eStLPDszMSU2NlBDLXNmPyZH
ZSFtP1VHKDE5QUJXNnJSX2puaHopakYod2orbmdrN0Y2fjhiWgp6a3gzZz1qTk0oUEdjeDZncHlg
VEZyYmc5aHc4R2EkY1FyYUYtYWRaMk5pcWdmd0R8SzU2JT9vMEV3ZEYyUDE1UioKemdWXkxzbGR0
ZWA+QmtabVE3SDcpbittNmVrI3JtWGI4O3gjeG0rXzFRIWZYKTxjdCNzLWNLPGBEcF9maF81KmFa
Cnp5aGxJU2hxPDdtZGd6PURHaXIwQTBNZmx2dX0xLUUmcmFtdEtmaXwhaDNyQ29FVHxwQVV3Zjwp
d2ktemgoVk5zcgp6JjZ0QCNAQlh0aTJ4NEc3ZWZZJGBmQ0A3PXNZOC0lWnVVM0szZ09eLVpQZDFm
e0NkQjtlWkJwOUdlIU4yT25nVH4KentLMD5jekEpUUR3eWIodE45X2NzR0JwTVVBcmw1RW19SmZT
TSlMRTBFYXAxQEA1P1pRSTkwKUQmfkQrWV5wKVZoCnokRnwtfDVwRGtlQ3EmQ1UyIUVffSg+cyQl
JkZqa2ZMTkpIRikzeTlOKmFPRHJzfjtgOGUtRldVPmtLNFdYZ2ZPYwp6Snc8NmtLNikqX2o/NmV2
K3IhYUNvdXxNdCsmIz9fUSlFU2Amd1BsVnhXSGRwKiFZLXkjSyt5Yz0kK081KFEhTyUKekdqfU9X
ezRpRSE4PyV3bmA8Pnc9Wik/dGh2JHJaWnZoeXBjMns8MmxyNElfbkJUSTF3MH0qX28pSF9KPm1g
TzhkCnpJI0tXOVdgaig0Wj5lQH13NTV1VCRqZEs4NCFBT00qWiRoWVIhMHlWM1g7ZlowM1paV0RK
N2dwaXVmdyhoTClaZQp6Xk92MWBBVyMxZkA/U2hIaUdKT1ZLNzhgb2Bfc2lTd1A0VUwkV1AxPXFh
cnhIXlc3dzQ5czRmVkFFKWRVMUY3dXIKelJCclR4bT9RfU1xe2lxUVZkQHp9emBSc35xM1BpYmol
T05vIV5xcHVLell3TnZhaitVQHdGfmNASnFoPzJmNElNCnoyVXxkWnRWPTJZaE98TURfSzwjZDYw
JFA/SmhtQ2FXdjU3VjVgU2Q1LVBnYk9BS0U8cDwrWm5sTSgzYX5zWm0rMwp6eHJMPHc9YnhIRVFQ
MlheV34ob2RXXlI/d216WTZUMkU5PER8MV9XKDtBTVchNHV5bkdMZ0JiJWFkQkElYHg/REQKelpH
b2hQMUx3dVl5ckRRMXYrZXgyOXAxMlBZU19vfEtreG5BVX0/KTsoRigtNF9sRyZKU1NtP2BVeXdP
cUE2bGVhCno3OUhpPTxhM1pIIUM0KXdQUHY8ciZnWGFsLSg5RGg/UG10a3BfNT52bSszWDRrSDxj
Kj1CKHpoRHxOY1ZjcGspJgp6WW5QfiZpJDxgZXlYdTB3bk4hSFojZzFDJW5CRUFMRnJvdEVNXjlO
SDk2NC1nNEtIPVpyPndkT0NJNXQ9YUVISHEKelF6N3lCTThhRislVTR6VilNS0tadj1zMj0zP1JR
eFoja050TH0rJl9NVk99Q1NCJiNRKXEoPHNpYXZWVmU2dURoCnpYbz4kZlhUYEVXLTwqSG98SlIt
Vm1iK3NYdnMkUkBnIURFXyROX1FALX48YkZmRWk9dUF5P0s0X0JWRDxxZX5zMQp6KEk/fmt3Pnkp
ZHwwQllZP04/UnVGNmVlJXprYjFOSjIoXk9hVGw5WjY4JGlFdSNWZyRNfUBaTEhtUl53SWIpR24K
ei07dmdtclowTDlyelYlPldwRVJUIVdyQG00YzNWc0xwTGNEJjJaSnxkUURfOCMkQ2JzNEVMNGB0
SXB8RUhhSFlBCnp4KVk0ZkpDejY4NUE3dHsxNlcwe3QxMykjdDdMdHtjelRxJjMocEVyT0FKa2gr
JDUjc3ImRVhjLStwVl81d1cjQQp6UVNQdCQxd1NTX2NzTmwxZHZ0TzUkTjNoPygpLXg1Uy1UKT1P
fl8leSQ+PGAmSmEpTEsjOWArSXFoXkE5PTZ3dUkKelI1VDJDdlZVflZ6aXJKczluTTtIKzVNfChW
b2NldUt3YWE/eTl4dmBnKk53ZD81flFsPUZVXmIwJV89Uz09X0xWCno3TE5lTFBkZDA1QDd5dUk7
bkFTc1E9ZEQzI2lBUTtXPkNiIzNHPV8rND5zdiNlWHZRSWd4NyVCekViVFAlbHI4IQp6U2k0Wlpg
cSNoUEw+Sjh4dWZDRWVGJlgrOzZIVXcjUnxTdkoyNispOXpTajdFalpnJTljWGMhKHphT3duUGR6
VWAKekErYX1aUD49UWI/fk9kdk11Ukw0S1YkWWhUPlBrRDU2VE4qWmo0clg7UHNTeXBoWHc3S3Jo
M3J2emM8fjx8WHd3CnpKbiVocnFkR2FGU0o5JSFlLUp8NEJJQn0xMXduNDJYRVoqYWdPOEhfLU1I
UUx5Z25KMit3dEtqSlYtU09WVll4Jgp6SSE7QGVqWm8jRFpjX2JPeVlsTikxPiFHNlBKcDJ6M3El
ckVEI01TPkFfPT40TVpiKVgrYGhvPTEqN3YlJCpqZXoKemojVVhUeD1Rem50c0pII1FoOFZDQ0F9
TFU4QGAzVkpXOFJEdlAoMjdeNFVnZSZ4MCZ5NnM7O0s9cDQ2blVeenx9CnorRDlEVyokR3pCZ0dh
YlNxVHR6bjwmRyhaPW95Yz43PU1STCpGTkomI0dEYVl2V3loQUNzP2h6O0FhWnYjXmMwZgp6Q29s
WFNgOz5PdV49emRUXz1nVnRIMG1Sem9KSldXWDVaXjV1cCRWSUJwSEA4cnJ9ZWxXZEZiJiE1c1No
P3Fae0UKem5HdURvJC18TWFwa0IrbF93SX1NMUlPT0VnR0pBKDh+Kz47dGRleEM4ViU+Zkd+ODJ0
KXB5RG5GT3luO2d0bX5DCnp4I3hXRURKJkgyZlYkV0pLQW5sK05tbD5vUUh5NTFIdUZqYnNZc0pC
RXMmSDV6MDEmI1orWEF0TnA/YllCUHVNewp6eVpHQz14VWg2Z2khMjxnSGtSZEk2Rz0/LVB6PDY4
OzdEMD8hJSRsTmBXNS01dUVQdmM2UFJAZklkflpWYENHa1MKei1rPno9aEBgY1puMDhUcnBmVypa
anJ5e3whVlVsVnhad3BFIz9GTF9efGJVdjxSUFVvMkE0NDZMeT5FZT87fTR7Cnp7cC1Pem8mOWot
MlEzMnJxdlFnYj9FbDUhOWtOfU48KVBqZFZoMH55JEFXOVchTVh5VHFPO2BVVHRiVUhYMU5sYAp6
IWVKeighejQtNkEpMUdlbnxkZitKSCphVTJ5aTh6ZjBwZEY3KmIzcDN1Tm1DS1VmQ2hqampSSWVH
SGQ/UEZgZ0AKem03ZnhwZCl1RXNyN3hOI1g9SWp7O1EwajwzcW1Je1BSYCtWX1I0fitoVz5lNkxp
bWJBcXg1MWBiRktYWHtodHxzCnotOCErTU1yfkQ2NExwIW9MQUphYmZ+WlNUQyZESGAkI1hnKUp4
QHxGOXw7ejBNR1h+JG9UelR0LVU0NzlEWiM5agp6MGRWQER4LWBLJTN5b1VETVpkT25kJGEpN0tX
NWAhSW01O1RqYnlOSFd0QEd8LTc8VE5XV3g8KExPMF9kdTtqfkUKelFFTWZ2LXkzZUM/WTlgdl5k
MCpAaUN2aHRzSjhpfm9yVDhKYkBMKjxNZUZSZEhpZCF5ZVI4b0FeV2Y/Vj59RkMxCnokYmVSRylY
ajdjMSh8Km1nX2JrfjZNaHpaVCRmSk5XKWAhQ0ckcHVUR0FwVT8jQGM1d2MjWXRNJmFEWiRIYTlq
MAp6XlU/aSo5U25tcHZCdXZ3UFEtbkIoNVRhcEw5UDw1cHR5NnFxMDMhRUc/YU1WNFE+aXMmVmFt
Pz18dlNiJEh7PWoKeldATTFjYy0hLXBNYkh0fT5qK0YjPSkpUE1xMzZ3LXA8Kzk5Z3ZHVTA2QjJk
e1lPbTg2VVYtVVMyR0htUXN3T2BJCnpFZT5PZUU4aSZOa281USVoWCF8KzZPZGRuSG4rRmJwP0c7
fkhSMVhBdypyRUhJITJPVzJgWX1BI15BdTI3K3R0awp6dF5kdD55UVpmflZ3PFRoUktEem9yNn1K
PnVidlJ9NUs4TnZwZ1k0c0ZqaHNVI3UmNWMoU19ya2E7VTtReyVVdV8KekFFZT5TV2leTXRIdCEp
PCtlRTdGP31AbDVVJSkmXmNNMEhqPEdWeG5ZMUk/WHNJeGQjeG1lPmR7SH57R2F0TEtzCnp4bGZ8
MXRJWkBxTTxDRGZPPmdQalhpZG1QSGlCSFVNUSU2aTVVU3wtc2RVcXtPRTJGe2MlQiNHaDkpQ1h8
Q0NxSgp6U0omQWthJWdfQSkjRXo5U2p2VXRqcSVPJTBhOTVvUXcpU2VIRiF7UWtQOEhIRUk0e0gl
NXdCVmZoVVlTaTk0bHoKejwlSio/NXs4dH50bT1SZVZvdiorU3I7VE4+RnVvcHY4NDFgZHMjIzJj
NiVRYSpZT2B6NVUmOEg3S0ZMRz5IUmd1Cno7UCRXYENkSjAmKSFuYVdCb1BKNEJFQUFwd20jVXF7
SW1ScjE8alA2Un1hYWZMNSpnUztja2NnZjFJRXkwQiUraQp6SXt3MF9Dc0V3dl9yVCteRVpwMD09
Z3BGRHc+KyshUzl+QXhwNmM/XztMPmZHVXEqOyZCMmcmIU4+TT5fcjh6LTMKejUhXyhSTDxYMFFF
Qmp9OXBRN1I5amVgR0lwNzQyJFRCZngpMmkwMyF1WG02ezdlISNyNGNnVzVFekA7e2JJKElZCno7
RWVfIUVyNyFKITF9O2JUY3tgPHJ3bGJ+TSZnZDtwRi1NJEtZdEU5fEo7I1BGbTc7KW95V3xZY1Zw
cUFBXk5Hcwp6b3NMYXlMZEtmYzNiT1RHSVA+N28lbzkwQWAmYFhXWChFRCYzPnVlJjk7NnJBKERk
QmdKKG1aOEBXdSZBNUtEbjMKejdSZ0V1bkYqUWJNa1BRMzYxYWpjRTsmKXcxailNP0F1SFFXU3Yh
PnhYKiV9VklaKHxuY0J1akJOX3hsaEQhIXUtCnp0MEM/Qk5gUi13TlhjYV5AYV5ZQ2s1UFJTMTc9
P1dnLU1xKEpaUClqN0dNclQpM3JnMUkkeiYwUCotPGtDMXE7TAp6ZWxtR08oe1lgZWBFPXxVZlJH
STRGKWtJfDF0YDdGKnJ9eWVXJjMtUUlZdW8mdUcmKDQ8fUpTb3hrN2B5ZGRnYjwKenVpfTtMQjhF
bSFyQkBMcnJRYl9EZzRfRGw5dkFVZmVNPn52UWFeZ0N4aHhvWTlFOTk8Iz83enkqZSFGTzhrNkAw
CnpodmFWbVBVeiR6e2BXLVlraXNAYHk+b1FLWT1EdTlEcXI5cWtSX35Xbk0odCUmPXBtaU4xenwm
d05SUDhyRCpjXgp6O0M8bW4mdUQkSVojfDI7Q0ozJUI1UkBHP3t6RGZlI2Z0WFBpckxmUUNGaGUx
JjVXOH1qYjZ0VzA5bVNoc1g7I0QKeiNLWjU5MlMyZ31ZY3srRzlOREpzOFZTI1k7NmR1dmhAYFAq
VW9wUkVLWWJ9ZzM8UWMpT1dUQm9kOVllcExkSnpECno9M25sZSY/NE10Uz4pWTU4SWpKeXFjMDhu
OyVBfGNONztxPUNXWmcxPWUyRyYqfXtAQTBwTT0oPmxHISFJQnp9Kgp6X29xTmQoTFErNUtCdmBv
KVBxTTElUUlOZSp5SVlAY0RnKGohSGQ+P3I1bDhyaCkmNExaRjFndXI+bzAyNzxGWXUKenApVy1J
aTBuYiRLXnlmYUoyMVd2dmktKiM4ZjI8ZkF+NmdseUNYQDk1T19BVitOXlJqJSZecEA5Wk08MHAx
RXp8CnppQio3KCtFWTYzN3okTExrYHktb19qUSE2X0ZHbUkrWDN0JFlRNElvKyRtMnJFfiFmYllJ
JXwta01jUmVhTFN8cAp6ZWRKPlkpZG5WcUMjKFRFO0xsNnB6biZebXNrTWM5RD5WWnt7RlY3QU5g
b08kRz9kPyQoTz10NVglaCpWUVg9cFQKeiNlYDRZZiV5QkJCU2tOcT9uTEg0WV5oTExULTkoJEoj
WntrYEM7aXJ1e0hMTHIlIzlYdz1+fGY4fHNtY19MXzJwCnolZlRNS159WilodDYjfUVNb08wX09q
Sk5wSGFxU2o/QFJ5XmhqWj9ISExaazs5UD4jIVQ0R3NJTyEyVE9CR0lUYgp6b0MkSVg7ZUckY2R6
VkZZcWY3YXhzP1NIdWlMaFpOUnxhKH5GJTdNfmwhNVBuYWhYdlpxMDl4JV5YVWlZOCQqUjgKenlU
IVJoVkE2aW1YaXlRMEJgZ2xHQ31wcmMmMylYUjNrb0YhRTw8fHVEZmI0UiEpZWxMRHB5bzM4S1p+
fUJAfjAhCnppJW9vJWpgVHg+dEFBdW4qezV3cGVubTxFN19PPXk1Kn45XnZqZGdUSDFDdyMrQXtn
ZzIrPnFrXzJzM3JXTz4+ZQp6aXIwKDk0NXIzaDlWY05ObD9SQlEjUT4pMVZPKztHJEBrU0A8fEBY
cj1RSnR8NiZGalZSOCgwJlZnRTtiayU2fjQKeio7Rk11SC17dkRVNVd1djEhKFJnWUhDQk5ZdURp
ZztoWDY7biohaVhmfloxTF9GTmckKGM5VmQ4LWQpV3U0TTtoCno1JUs7YGNnPTUyRUlYQiVzIUZV
KVIhXk9oXzxReU5UfSQzVlgoQ0xTMEhsc2ZoblMqNFlIcGJaJGREJjd7ZHpkZAp6al9Ad2trfj9E
Ty15fShOJTJ1bXpkO1l6b0x+e2lBPjxMYT9LVihtbVdXclJVZitWaitFRUM1Ymg4fUw0KVdtJC0K
ekNtJiFwMnhsRSpHS3psLT5TT2c8UiFgVE8zQ0pqZk9Rfms5JERzekJOMn41WVZFUkowSm8wb1NI
YlktTnU/UnJvCnowcj1ScW59KzU2JiM7VSVSeTUjMWQmPzk1WjxGVTgwYX0jJXF6bVpkaCQ9IThy
enNCLVM2cFdwSTAmfTR1aWAmTgp6cGZAK3VMTyNKRFdRKEtacW5YbDJ7JnAzU0xMN0EjPl9ZfEpk
U3M9QTRNTkY7YFAoQG1FMkNuTDZERW9oVDYjb1YKej5zX35UanomNUItcGtqK0RkamNCSF83JFck
amp4b3BIfExhQmxWSzE5RW4qT3kjM3FJISZFP3YkbmNyMThndSsrCno/KDtSVjU1OXYkXl84Ozw8
Sjg9UWR2RlNvc05Cdk5PIUJOUz8pTH5TS0pvX0MxdWluelh6eFJtIUozNj0+b3RxXwp6dzZuZzI0
TyE9Uy1fKXhnayQjVU9SUUUtNVhRMz5Oa2x9V3RjTHlfNmQ2V1FzNz11KmU8RHJmMypqbk5HPW5Y
R2AKej0kLW53OHU3e1lNRVdHdmU5NzV0bXxvUGEoUzgyUUx0JShjMGoqSFpSeV9Lam0hdzJ7ezNr
PiMla05aJmk3R2JyCnotJDclZWNecUMyZ09lMDc+RzVfIyNvRVQhMnI2VF9Aaz9jNXc5TW9XQWFi
WmMlMHEjSmIqdzA/YTgwc2xUeGcwKAp6PXtAVU40OFBqT0BGJG8wMnFlKSluSktwc0pjTzwzNmJt
OVZ5czBEaDNVQit9bTJMa2gjV3JoVl9HKD97MFhjc3MKemMyQzxhXmc7bmN5d042ZDNOdDwyaWdW
ZVFrNGl1UyUmOX5WbzgoLXZoVXwqI28mVkklYGpJKVlEQ1NGPUlEO2tTCnp2JW1eZzModSYkQkRU
dyV4a1U7cFRHMXt+ZDJoMDZxei10eDN7IX04Iz8pb0VjNilDfCUyeHlKWUVBPS1eWi0qbAp6Nkol
TWxmN042QStsTGs7Y3xCUEFqSDVLPjt+WnZrSU0qeWRDelRNLUpscGdxSnpHSX5JdTlrQnhpMDRV
XiRTcTMKekFzUH1XIU8yVXxGcjBxWFpsLUgjV1pTNyk5aiNYdmBzRUJfc0h9OUhhfXt5cSRCRWdw
I2d3bn54OTxMd3pedWNlCnpuNH4kbHVRbnRnYngtOz44eTJ7Um5venM4X3dMJUQhPiVBdzA3TzlL
X2R0JGU+NShEJEUySzZkMUpWOEl2QEpWIQp6TEF6fDRCc281c2NhITI/KTBjYypaOFA7OF4/Q1ox
SWp6flhJbFo3RUFLektBbzdUOVhDO0NKZGlJNC0mJSU+USMKekhpJnJZQzhAdnZBfDh3PkVHc3U3
dFYlUkxTNG5+VVgoUllATVJifDFUVHsxRD5mOVReK0A1bmopVnkhZUhyN3MxCnppZGl6bUopWDl7
QDQ0IXtBKyY/LT0+NndVeWlvb3tUPzUzXnE+N0J1PTtOVjxMPmF3bmp6YWVXOzFZZ0hVVlFSWAp6
QT1GI3BWdVcyM0xGYVFscmUoTnlEPU11dChVSm8oVSVmWUM9IzAhMkIxUTJhdl8mMCtvPE8wQ1kl
KzdgPGgjeD0KemFaNXZxZVFQaWd3ZiRtRiR2QnlDWGIjKDg4O1JXb0FoK3V1OT53fCM8QUNNRjY+
ODlQZUgqMSl5YjMjZHxGKTFTCnpOVzNjdj49R0ViPWhqJiNYSH0rTz5sIyV4V0FrZVlOfWZHOTE+
JlhqaXtHOXltKzReWkl+dW1RTVQ7cHhkT29sagp6eHUqKEhmaHF+bGNKNjAtUVl1cH1UOCozck1v
YmVeOXJ6dGEhelB4YFg5VlYlZDZlMz1jJnpDPXV+TWdQT1pnWEgKeiZjQDhOYVBORHFxbzJMSktZ
NXd0T2hWJFVWV3c7VXhOZXVXI28yKloocilnNWpkaWpxQUJLOXZnXkdQTiZgcm1JCnp0Zj5uZnQ5
cWlBZWlVUHxRc1VHN21nOGRxZjFNMUVoSHxETEpuJmBDNFFPez5iYlFmXl56YF8+MntQNkQ9Qk47
Wgp6YUgyYGBgbyp+Tnc9ZFcqQTdeRXg0KEozeEg3eyhTNmErU1RLNV9IUUlgOUdYdFZpJXhfbDN4
dDV4OEZqODRvaHgKemB4NiEhTVk5KkQhVVFkYXpxYTw+ZH5GP2k1eVkrbzx8bEJYciU8Z0xgRFEp
PHdgVEEydlo1LTx7d09pUERwKk1LCnozdiFiOTZicGkyTm9lUDN0I09uWF5IMkQ3ZXMlam82fnBM
U0IxSCFBUD1xREAqN0ZteV4oWWxBWDdWS3N3amQ0bAp6NEBIRUFMfG5seUU8NWc+bjM5YXpYVm9B
N29gR3ZwRXRJZVVxVVJvP2BJbCVuQElmSWZYI0VQU1cqVVV5blY8Z30KeitIP1dzQGBAUTgyTDgr
YXlze0NYQldRPW97d1lja08+SnllRHVMM1Bja0RyfjsyQDRgdzhucj5YQzMtKE9BY0hPCnpLUF8w
ZWljNSUoUCgyTihRbWxfZmItJnVANUdia0dFfHwjdT8yeytqN1YhfHlOcF9aQll9X3hiQExqNTxk
QyZQTQp6PUlZa31jRjQ0QGc1LXl0OHFPRVBBfF5KO1dUd2QqRmskM2FfWnJEdyNlenlFJW0tTDIt
ZUZyemYofWRLNXtzZWYKejh2dj1wYjN2PVBzfXgtcyYqekE8Q1dsblE/V1pWTWwzVFlkPmM1fkZl
NFVEWTQpdWdUT2tEQTxCbntsZypiU24+CnpwU1pYOEVGdSRJd2dCe2dUPmgkXl9BViEhXnlLc0Y4
fiQpYkZ4T1hQZzV1bTA+JUtCMTkrPUg5dFJMJDBkRzRGKAp6PUZafm1Sc0wkOUcqeyt6WDg5Rlhg
ejJTN0JePGU7PCt3ekZiaHBGUDgwNTskUCU8PEJNdEZVZi1aezxXa1JPfUIKeiY/KmZIVHtaRFBS
ZVV4Q15scFVSSFVLfXcyPlM7YFZoPTZka0hocVZ7bCV2ZWpYaTIwZT5Uajx0XkdCeWRDRzNqCnpx
Tio+ZmxyamlGRnd2KXolQzRpWVEoYFdRcjBGJmB1R3AwVTwtKkF0WkswKDItM242emB1Rzw7Umg3
bUFNd3c7WAp6T31+fGNeWH5ST08qcSl+UWk1OEQwYU5gaHhZNmFaenhGUmtQVEYreTB2OHkkTjlQ
NktsUUR3cl5ZXmJecEk3dD0KemVqJXx5WCpMVFdqVjBOOFFfT0JCRD5sLUAzcHwpblVkczZyKVVz
VV9kMFVabkBZfnJeNGBwKnJ0TyN9ZTBfODQrCnpXNzgrKyQ3eFd0JkV8WjBPTFN0NE1KV0VjWnwm
YXJaPUE2SnFCdnUtc0pxZElSKnRQM2JDPFlXPVI5SkFtZD9Odgp6KVpIRHZFQEYqNS01aWZ7Y0Fz
UXI4NSMrWEdEejh9VGFaQk1ZZV5TS1FFN1lAVWxZZ1Z2bXNgS1ZtRWJ5TkNoUEMKell3a0h8MjFm
PHk8QEkyVGAwTH1PXz9qPGF2R205UDZhciFSPnMwTVUwKHB1SXw4aTNBM1pUWnNvfHxvdEEmYVY7
Cnp2YGRWTk5mbXNkYiEzRCNPO2N6MXA/T2FWPUN9bC1URUxsaVcmWDx3Vn1ucGh3UWJlaGhDPW8p
PjRHNWN1VndCQwp6YDdxV3haZ1ZHMD87VENGMnh2Q0tfSGNNUEolYyU3d1FzKV9UJXIqMlYyaDZv
P1liPzUoaHo1fjM1SnJpVH1MeyMKenFadUA3Q0wqcGRrbm1yalBhT2deeVZPT2ZKfUhTJkEhNj5O
UjllWCNudWRDYkVGQUJNKGJJfkVNbV9mdmkkZWxxCnpkUG1hRSU7cm9HZitKe3VBXk4hJEJ3ZDdy
JHlga3xnPCFEcjNKeiliQEQ0em0xY2tMQ0FjeGZ0cTs2fU1WNVM5bwp6bktNTCVAdnlsOz13JVdN
TVluITxYfm81Y3hzYWBNaXlffTxDQUtCN1JPWDc2biZPel9MRjBiRD5BI300JXRRenQKeit2MVpR
PXImfWt0a2EwXzU5fWlGMzEhe2lgLWQ0VVE4YHo7WihvdlFMQTQxRGQ1Q1VBbENvaD5vcnZYZGxj
M1JNCnpxN2lHeDh5byNfWmgqIW15VlEzVVZtPUQwQXp5Zk48Sm4mY0YqPCoyaFc2OzZtTG5pPkMt
Qn15Snx7NUs8cSs3IQp6en1IU3BvbG11dU8haSN9YU5mdkg5LVVsTmhpcEZMWWwmdUU5SnlsQTZm
KDVeSClKWkclKG5TMkNSZUgmU2dVPWYKej87WlNkPXl4ZG8kbHIxTmNBcmJ3SW5NNWo4Zm9fTXNw
Nz8/XkRXJD1kUSQpLWQ9bDJTaWRjMmwwKlYoITUzK3BpCnpWSUtPc2FJRHgtMl84QldWUHQ/TmJ4
N2J7ZW5zeWh2NSR6RCVFd3pkTG08R08wOC1eNz8lITs/Y185YnlTZUVPPAp6dzB8KmpvJTk8cGNQ
VEBQeXV9PmBCZDc7e2AtTjhzRFc/JkJaR0tfK203amZWYDglZlhlTE9mUmgpJkIjUHhIeWkKekFZ
MHVNfEI4czljd2pEUEJIKVR4VW0pO0I7RC0jX1Yydjw0djMjXytWPSVfPl5nc318c25oay1tam0h
ITQrVElqCnp6TmpwdWk2UUgoY0shU2QpV0o1RkFjST4wXm9AMT5GfTcqPSpPJXUmTDI9RSlfe3Yx
SS0pZ256MW94TDBEcHFiUgp6WGRBVmNWM34+MD00dnhpNGM5dzJhRTMlTFReUXN4IWNHb3lWYjdG
UntwREtDO1pvcFI+dUdjUVR3QX1UZ1JYMzQKekpnZT9STGlBKzQjPHRySk0pRFdnS347S0Blckd+
SHBTJkYrO3AyfWRXeldlNkpBN0VHX15pO2ljK1FfQmw5PXBVCnpaO2VuJEl+XlJrUUtKNFBKRzxR
M3I/Iz9SOD0ye0BKJERCT3grJTJETGEzUkBJKXd4SUFDZkRiJlU0R0lZQzxBaAp6ZiR3V1cxJitE
QHVzPUYkK1VPKT5uOVFOKmBHQF9Sclk7MCNMS0t5TVBnX2AjdTh0eXBQOD80Rit+eWRgenUpPSsK
endJaEFLcXI0TWlVIUFAV3duUSUzYHI8fnhmJndZSDxBTThgV2BCRnZnZF9Ceyo3anYwTyp9dEtS
U0spY3hyVnx9Cno1b2glOHdDJWZKam58NHBQPSNJcGMmSU4lcmh8Vm4oak9ZeEYjJU45JGUmKyR3
eyZrdDIwV1Fqd3NuemhPZ2ROeQp6MzE7QWF2NUJnaVZ3VXJVIz1tVXk1JiZmaFEzcCRNNGlKKXgq
X2FvYkBVO0BeLTRfZXoyKm1xNXg7RE9NcG8xP3kKel5+LTUqZ288XzB4eV84bWNKdEJGMDMjelBB
O3JldjZDVCo1Mm94VyZvQGdeJlNXXkNSP1c1I0cpUDZVKXl4QzdrCnpTNGd8MSZpcm5DYH1Ec153
dnZka21hSTBKLTcoQHIlc01laVh9Qj9UbFdKUn57QDZqVFNhfWo4Z2JSV3A5PHZqNAp6ZHNHQVI3
U1JAYTR5SnFmJkhvO004JX5WUVVzSk0te2c5NHBmfSZZU20mSSh4O0ZzT2YjUV9ZVl9FTGh0Zktr
Z3cKekpoRkJDJnNHOS0yc3h8a3ozWTcqKjhJRG1saWo/MzE+KGIze2JNZjxkem5gSj1Ka0FgQTd3
ZHxFbTBXa28mKz5aCnpGLXx1Nkx9fkgmTDlEPGZEZElQXzJVdl9RWTA+QHc3QFJJUEc+SG0+IXZ9
JXAqJTNaeUdAKkZHZVpJQUA5VFZSUgp6JDkjJC1VZjBiem1yYz5XZ0FKeHAqTEwjPk07em9NNjY+
dD1XNl9IT3M3KVU8R3AlUEEjQ3k5UV5mYmY5bGd+VG0Kejg3ZVZicSNqanlMMkZXS3Y8Q1J2VElN
STBLNiNASyVtbnRhPUlBS3okLUdRPmE0Q3N3UlF6Pj9MSS11NCYpcjZHCnpXZXFVUWZ9K3Z6e1Vk
YW5TT2w7d1lDUTtXLUBfNihNJTtMVXhoZlVsNzYlRCUtUDg9UjhlJWJxR2x2dDB5QE1WRQp6d3NT
WjltYjdvRkBgKHFLd1pwa1BvTFBUMStWP0ZaSjl4VktRLVUyNytMaUJZa29qZ3g8U141dyNALXJW
ZzxNbHoKekRSQ3BVczRLNnhUU0JrOFV4PTk5VzV4Jjl0TCMtVjtkcjI9KUp+JUJvVj1zP2VDKkw4
eXxKb0h4MXB2Y2IxaWIxCnowdTtaSFRwQngwKUdiRnBeMStnYWIkKml8RnFNd3ZOVUgye3hoKyY4
KnhAejJQRy1LdlRFZihQU251fkU7aFg+PQp6ZjBsRjtPbHMmRD8pcHohWXkqKTtJZmNhPmJwVy1C
K31JZSVwQnpvOVNZdSohTmp4am9HcGJoK2htcH5jWkMyMDQKemdoIT8+bW0memx1ZGdXaFF4YmRB
VmlXdFFsbipWLUtsTEMxMUtzfDFKMUlxezhrKnJBIUhMQzJlZmx5QkF7R2dhCnpkdXtTTCRpSWtv
NHFDbFleU1NvaiZxVGQ2VzhJKVZBKDx0PjhMKHQ2XlY1YlFoYj0pSEA+YHJRe04zb0JAeGwqfgp6
RmUrZExOUlNAPVh7TGlwM2ZeUys+YUw9eWBkV30tIUMzdT5xa2cjYld1cWx0RkkoYX1gKWB4dENQ
fkchVCp1fWQKemdYZVQhN2F6WE13R1hqSyVIUTx3TThGYnpMQ3hfU21KYURaZkNqTyNofTk0TWY+
UEB9d3pSNHJpYVRwYjNucGcyCnp0WSk1UVh1dnAkdDszdmc3QHBIQE9nRX1RbyFmTztJME9MeDFU
b1cmPSYlNmBUallGLSNnT2xgZjVXZFkyP3JQaAp6dWk1ZFQxLV9XZ295cHBoQEdyJUlyO15pUGYt
VTMwcnU8QSFycFhlfTJeZDJ1S0JtKXFZTkZCOEZ3aGtlPkd2PzgKej4hPD4zQD9ycjdpZjkyWG9J
TXc2MVNuRFJWazA1dUQpNSo5KEJfeGVOZnh9JTVrVVdPYGtwSnMzJnY0eXpnUG1nCnpNSCVaJWpv
V1dsaERJeiY8O0Y3bTlEe0JZYF4xO0QjVFRtUkdEfGRLIUZWcmM4MDV2KWBRJmxUQmdGaCY2d2dH
Rwp6NjtVaW8qe0RtcDVWR2RnV3pHQnBCbipNRXoqUm8hJmBQWW52SEFxI3A4Ym5OQittaj5DaCYk
aUNuX2JlRCVnJisKejBZQSh7NzY7Zz93KVBYcD1KVTxBeFA9JnI8RFdnTS1hZyQ2WEpXVXNpU2xA
RSkkLVgteGE9dns7NkRjYU97NmJaCno0eEFLKUlUbGF1K0o+eFg+Pn04c0xwQWxFWEd5fnFlTUZY
ZnZ4NWY+LX03M2ltQ0s0emBAOHdhdDcjfSRsV2EpUQp6bDZzQyVONn5IejFeMl5BS2k1dik8aGV3
c1hDNTMkUmFBeiFrKkFQZUJxPVBiaj9+KDd0bChOIz9wX0BHKGBEcnwKeiN6WHUoZT5GQUMoaE1R
aS0+QDViN2NaODtGMj1saE1qeClBS3NsdDNFfH1jdnFeRXVLNHBsTj5FYUk9bV9YVXp5Cnp8M1VU
ajMoc0ltbHpNMV4hVGdSd2szZnl5ei1ZJkIrVF5mRmomODtDKGBvV2g2SyFUXko/TVJ8N318bk5R
a0lscQp6PiZZfGIhK0srQCthJFFaUWNxRk1ncGlRZndMPXptK3xadmY9WUpJQVBuSTBOdFBHYig4
MTRJNT1RbjtmVXo4YkIKenFST2t9JSREfXkqMVZfbD1OVVIjdkR1RClqQGt9eXVUPUpiKm0oUWZS
Kip5Jmp1eEV6MTViP1FlbGRkSmg9IXEpCnoreHNWIWBoMjF8aE9+c2sjNTZPJDVyUjV5cCo4e2Nj
ZH1PRFBXa2dFZV54LW9tIUVjQ1VJOHFNU28zNjdxPnctVQp6YWR4P1QlT31aWm8kVV5OVjF+PUFD
Vjg1cChWckkzPClKV3BSPyE1TkcjUCskQTk2TlA/UTw+UHMoQFhmYXIqMXIKemBNKWcoVEhlP2Ng
P2Bwa2cqbDE5K3N8ZmMpbD5UaVB7NXkpeEQjcGkwJkJxI0x2WH5HJlNYfD4jfFpoRilKSSRnCnpf
Zi01VkRkdEdPM1RfcjxFPH03JiM7Ty1JV2FiRXNiI0A0aXE+eHxHPGsxKz9PT1JWTCtuQXl2PjVQ
X0B8RCFReQp6KGRKYXttPUYyJm1Dcj98UHc3NDE/dkJqMVdmPXI9a2JuOVZpV3YkVWlXRXRqOUVG
LTRUOFhIVHlwcyE4PXUjaSkKenszRyVxWDxTI24zJlZIbjBWTkUhJXNCRTItO3c/PUVGT3UhOHE+
PiZfRSo5SWBUNDAhRCEqYy1vTmJeOEdJQ2YyCnpmSVctai0tJT5Xelk5SV9aJGooP1A8R31IayY0
WT5UZm1UMWZXJU0paXY+TGA+d2FwVjNAVlJDUFNgfDk8ODl6agp6NHZ4IWQ2ZV4qNSRLQTZQTWN9
MVhJR1FQfjBuP0x7SGpnVEk8QzZMPmAhOEYrUU90ZUwjNnY4WFVFI1k0RUhqMWIKenFeeV8qUUh6
cU1PX1A+YTlRNTt+RG5JTCtAJXJTIV5oayhIcW5BaHVDdjZ4JXp5MTw2M0BUQEpHSyUpZUh9VzlD
Cno5bCoqbFQ5LWk+QFdgPXwoNlZJa2tHXylAOT5NSl5qTWlZeEwoLWVQeWxvYFdVSit+eEFaTmBh
JX1WXmpSO05uVAp6YCZsSUlWcT9+M1FMMCpuMSZJZHtyRkpNRzFEe0pCPEtAJW0tcWB4c182bzh6
TWx6S2V5V2ZKZ0Z0PT9vIy1qPlgKeiplOUR6Rn17eW9UPEA5cjw5TjA2a3E4ejVUa2VDcjJeMHho
KH19NWF6Smg3QCpDdW98eEtEd0hsenprTHhkaD1LCnpoNGNiS19pOF9fM0JjJl5OaEpsak5rZ1FU
KTx3ZGo2PXhVKXl4XnxSRVIwODJjPHk5dWdfUz8wZnlTNkpiKVVlPAp6V2NYe1libzNGUVp0VXk7
JFlQPSZzdDFoVGlaPE9pZFp7dGVye2RQRWV8e2hYenh7X3YkbnxCUSUqe1k0I3cwQ34KeldDQD53
OUIjSyUoSXo9RGNEd2pkVUhhKH15dTAoYUI8cH5sb1VWWGxUZTlePWd7aGl8dD5qNFpsMXs/cEpI
Z3lHCnp2bGFncShVanZiQXhuT05CJm9uJjh5d2A0aktLOEw3ZD5yQyVqKCNsMnRIc0puKE1kIz10
QSpTPyZOYSVSRy1UcQp6TXJGc0omK0FnZkN3aklXR3ctZHk4ZFh9RF9FbFpTUyZYTnFnYk5WPTVG
e1R4WW9jYjtTYyFmeHBCZyZDR25VYlIKeipPSWxyN2khcH5IUUIpJSpKekFPK0dLPTdOdT9yMkEm
Nng1QmlJZmtBP1g2OXNBSil8bj4pJXFhLSFmcjwtWk1PCno+UWxCVCFPTVo+MW5wJSpYWiNSa2hr
I2BDTHpBQUs7UV55YCplLWJ6a0hOOWAlajMtJCRUfHwlUzdsdXZka3FGUQp6TGdyQW1idXl+fj5R
e0dfPH5haV4mSWJka2ApMGlyR3RFNlU5MWghQXRFantzQlJyQSo7RiZCfmRQTE99M01zVDEKejtS
S3tBR3EzaVhTN3l6RWRtLVFMQ2x8fXlFMkQ+LTY4aEJvamR2czVCfFVfUHlTT2twYEd1aFEkay1w
aEhjSEBBCnpMQ1F1ViVyRDtpdkZXMitZNk0xfV4/SzJzentIP093NlczNShZN1YlPipQVmFVJVd8
SU10YHVmNnJadipzJXs8Mwp6c05iQ3hfTm5fTC1oXjswXkNDbU5reXBqM244XnthNFNeR04rRDR3
VDdtKiM7azFVJHg9RWY3VT5CX1B3MGtEOEEKekckMEhlZUA7WVRURmpwNF9+QFNzQUd7R0RiYj5w
Z2gtWSQyQjFMSVI9ZjRockYtPEF2N29iKD1yJUA/dz1iMXlkCno3RkZ3YHVzYmozaiR5d0UxWnVe
YFRBUiV1aUFVbkl3VSp4dER0JTl4T3Y9JkhPTWpMSloxPFRSMEp4JUxYclU5ewp6bDJvIUBIeEQ4
bi1ScHBwcDREfGpIeHhvS291JGY/cWVGbCZhJFlKMFM5alNNQm5FcDN2e01BS0VBJjcqRFB2VXIK
ejVpWkFEc1VwbUc0JEdzV3cldjd5UGhVK1loT35rYzNKJjc7OHJROHRgWnQ+azVYcn48MDJGWndV
VVI3VTdlQVBWCnoyWEFgfFY9XiY/PWo/ezZtM35wSmpKcnxSPi13PlNzNTI+aVZWbT5QYG1FJj5w
eHwkZiF9KEtPZmYrQUlNK3xDYQp6eH4tYTFSQXVPUnBtSkxTIWBnZ18/SXdOTVdUUGtXY2QpN1Bj
Wnh0VmYlY3YtazV3UDZBRXFQZHFFcDtPdkZRfS0Kem03aUJ4Km0/ZCVfTWpOSUYlP0tEX3BsWisp
TkUrRUNPJjF9YWYtTmJPIXElNF48OS02QXxVZDtKdUgpSDNDciglCnplZnA5Q1BUaT0/MWthcE5f
YVcmZ1QwfENKYWZKVllEIyg8I0IjaVdnUFBOVTBycTJke0pJazc1bT5CZzdDbiQ/agp6SHY2NihZ
ZnIlOHg8eyN4U1pobCkyNWFYTmxhfX1zPWNpanhAeG8peEMjJTkzb2d0TVd4YlEtQXhpV2g3WWMo
UmYKemw1PFI4K1dWPFFRe2R2XkR4WmkoXmY0empQXm17K14+Zm0jczthYjEoJHFyQWowdCV1X1RK
bTQjRiZZNzFhJEVTCnpfQyZmcHNIQCkrenEkVT8oMXR9PGwjaHo4e0tJPExYeXRve05BWnFZdj1i
dHtKSFlpYms4cyYpZzVJOFEyWXFvMQp6Mjw/SUBAYElDS01BK3B7YVIpYWRZQjFoeWY0LT84K3xT
UHRObFBZd3h1MmFBQnBERVEjYThkIzZAQD1UZTktamcKemt1VUQ1ak4mVkxCUFBkaDc3MXZlYTM3
MGdIQGhQdCZaX2p8JHxOa3dwKD9BajR3THRTVFczXjkhcz1QT3V8JVd7CnpPdHtiVWg1WTtMNn02
fT14dFNvQlZ4bkQtKnJHe0QzVyl7Z1hJb34mQTFjeU1paH1DUDIrYlI4YnVtI2FEeVhVJgp6ZHZI
elZUYj40ci13SENlODFwV1podVcwYzFTaVEkVFZzdyRuI2pJVDNaTFZqdVBuQiomPVZMMEdjd09B
UGk9VXsKemRwOTs+aWtoQjVkQGxueEpPZnFFUlU1LV9CayFuI043RmR+QnRkZVl1b0RoR2pkOXlv
Y2taKD4pPW16ZXRQSj8lCnp0NUE/VG4tQ1QxJFZrJVRZPW1+fG8/OCg7Mjt7KHMzTF5Rc0xCNCVU
YlBhbFA0LVQxX2o8KU1ER0VQRjxtM1o9agp6S3xsTW5NXiQ7MVF4bDE+QjV5NnJQPVBQYCt+fDtE
QSRCWmxGITItciYtJnp3JGBILWlzS1ApfVZpSnd2SEk9a3YKeml9NlJ5V3BfcSthREU0b2ZnfkdY
dHR5b0IpRiFCQmFJSnBzNjNVYGJ2OTFwV1laNzwjZVBOb0NDJHc8empTJjNVCnp4QjA2Qj16O34h
UEBGV05ybCsxIVZgNWp4ZCU1aWY2Mn0oRmp4cV5aZGMmQTY0dCQtVStQNnV5ajdGT2xjfSlTRAp6
O2Brck5PallZb21GKElvNnlra25nc3BfKU8lU1VWTEtaRXEhbGF+VjZebl9HMCNrcHAtNzV8NFNl
K1YqY1J5NX0KejlmeGJ1UXJpKSM+P0ZseDMhaktVaG5raGYybTVRb1RWMUdzXnJPbVdKZGdHT2Jm
YkhFM0N+cn5KRDBnempBSzlhCnp0aUVvVEJQRWpVJjBHfX1MUS1OPk1FMXhzZE0+KEgkWldLaDsp
SCZ7TEJPdyk1bSptdzBEV2IwZnR1bVI7NlYmVAp6Y3tZQW88dzMrY08xNiR2U2YoQSM7clVkPSFR
Jm0ka0cpfEUkUlRPTSFJSHFUeFhJIV9ZJCQjR04+fkNqPTxpNDAKekJJYklQZmA3OFdgWnxnfntU
Yj0/Ym5zV2s+fmtKe2FKKyhuPWcxIz0zMFRyfGNZNjBhb19ZXjkoRzdXampTMz4lCno9JH1sflIk
fkgpbTY4V09Tfilabm81X3JnKHFyO3stUVpqd1J7UGRsbnM7MVJDYSMjY24hKD8yTDVTUUAyekVn
Zwp6PmhkTGAmYExAK3omMU1SKnZpdVE+dm5fNk0pcjRKJUJiQDcmZipYMUs9QWR8Y2VebmVwbXBk
cSl7NUoqPzlgKkAKenpSSl9HZyF9IXRNdU9gPFQoeylyV2NGKTs0S2JEcFJqS19lIVNSY2I8KUNU
YXRLanNzUDN9KmY7LSgjdWsrQmZLCnprYXpyM01BdnE0a01YYDRseD1KMHZ1R01pMERtVTBpIVJe
aHlNQUZHJmZCO04qN25RdEYwYlk7LTYpJio1cmtTRAp6dXpTbzBlbXREaS1ETTxeNSE2SEhhQWxI
MTN4QFpxcGdaaFd7Z1AwOChGZy05YVlyN3UhIzRiOHhpKUNZMCtlPG8KekNPc3h+dSRTcGlpWio1
bjg+TEpIZktZRXxpZFNxaDFYPXNzV0crUyZ3dmhga2dnXiFMQT19ZmdWWDBpN1c7fmp4CnoxSklC
SyhaYXh6YlNQKzYkVClLVjF9S0A4OzsjKVZge0dPZ048JVNgTH1ePjwzTWdiPEcxR1pfYS1vdUM3
djdXRAp6aGZ3TnZla0hOMjEoJD1SYkE9T1BxezBVcDV6V1BNNSE3R0pFTU9VZ2l3NXRvZiFHel4l
XmJHNDlCJVkpZDNCVlAKel5pQnVBK2RLMj9uN0ctMz8pVjRweEhyWEM7NUdJN1RoSD0xMXdJPTc/
Jks9O1UpUHtfTEIzKyo3d0pwP1YwWUgmCnokK2RMeD10eHVTLUc8ZzJEayR2NTIyVCM0Y3VrWDU3
SSNhIzgzPWR8Z1FgTDRUTj0tSG9gdz1rZDxtQHtwJG9LVwp6ZCk0LXpYV0teYzF8Nj9uOFBPZ2hB
YSQqRG99YDdEP2NMdSpwNkRlaURyKEBWKEBtQHJGR1J2MVEhTGs0Ry1EJHUKek4lM2pQNk56OEEx
UmZ+SlE3fXQoam1peHRGPSl0dD1TMlBsLUdLVz5SNnVraCF2azBOUHFId30zLUE9eWtMaUQjCnpP
JmtHKUE+d3pxJnNsUEpDRHV8Q3Iqdl8te1NEKEJfX1JjbzVZWWl8N0ZaREVwJjZPYEIya1UmNUVi
aFRoaTVwXwp6dzRBVX01eHNJRkRqcF5rZG1DSl5YKSFmKWVHdz1ae1pmIWs2dEpRSnBBQkV8YFZJ
eXxFfHt7S2pAa1dtNmshZiYKenpBKGRwNTA3WC0hNlF9ayZ9cm9+UmY+N2M+RFk8Mm5mJiRPeSNT
Y3RTYmI2Wk5eek5DV2g3XkczNXcwbFlmOExPCno/TjNYeWpmazdfezlidm94aTV5dSRNRS0taHJl
ZzYrdk5MUEBuK2o5emlRdVNyUnpZNEZEc2BPPipnemk+SEtNXgp6Q05jRCVnZGdSTTQ0Kzc5Pngx
JThoJkxQOFh2cS01UVRyP1BaUStUeip+eHBTcktffTMtVzxxSCg5KWxzUl5PZ24KejxsXjl1KmA8
O1lYZSExeEhufEA3S04xKWk2ayg9Jkh7V0k4Y1JtYXI/S3lPR1d0WH1WZD41PzMqUkY7VXtyT1Ez
Cnp5UWFEcE09OXBuU0w4Tj09LTJ+aikpdWVvdVAlQFNVMzAwZ2FpLWtWPnVBcldIYW08VDRAcWAr
U2RxYkNBdWx+OQp6I3loZWp0Mi02Y3w0M1BqcDEzQkd1K2crY2IrSD1teG5ZT19eTTA8K3EtfEZi
S0p5Z1VsPDZLLT0pU3B9aWclNTAKem9YeztOcXJ5RVlDJmsxVjArQ2FTX3JobjJ6cCFhJVdDTHla
N2M+PFJodjxkeDJBNThUU2djayRteW1sZW5KNlN1CnpybCN2O1cwYVlURWdhVGtoQkM8T0goS0Y7
NWMrTnM/IU14bSQxZ1RlOzx3ajF6KnJwMCs+aypwPHcpOFdxN0xtTwp6fEpOdmtXU3pKQTQ1ZVNp
XjxTVWtpeTt6I05aKDtWWSE7X3FfZk9Ya0xBNClqNWNiN35GPTZCSi0jZFNyQjVERmoKenZRYXxm
Q3g0OVAoYkhDJU88Pm9vcUxTRGt0bmlUKG9SenhUejxBMkI/ej1NcSl8SjY8b1ckfEJSI3hWanoq
YnorCnpJPE0zezdkWlRgejBgbXYkUzNCbUomeSRaKmZxJmtZfkEqZ2sqQj5gWW80S30qVH01MUdz
I2hFX2hNdGRYIWcwJAp6N1U1c2hLTjdBJHpvM01CI3Jyfl9pa0Y/ZzUpaTZDb3dAb2NUPlBqTkp9
VjdQUWo5Y3ojUVRqWjZvZmRvWFVJWGIKemQlVSVZSj5zb3I4QHdjbUlXWjxteiV7Mnl0bEMoeU4k
SnI0PEpWQnohVSUyc1NBN25RNVpzNjVjLUx7RTs1MitxCnpWRklrN0JGaU4hLXlWeiQoP1B1Nk5a
YkpXWUZkQzxfVVA1SEUweVF2VWlNSmBKcmpWbzdRNGI+KCs1dk1NfGh8Zwp6RldaSm9YcnEyciE3
WnJeXncyLUU1bzhjZVpnLThQT20kJGg4Tz0+N0IyM29aeGA2I2c5O21jaU5VOyE7Z3gpR3UKenpa
R31Fb0tPfXVOSlZafGxyMDVoNSp2LW5Zd3chXkkxO1UrJCl1OWdCcHsmfVpuPmxfeiUpVGR7PyQo
P0I4aShYCnpla3lfN2BvdHZLSmRgPT9HSGJPMkQ5K0IyWHw0RzgkdSg4ZlZ0dHZwTyQmamdYdVNm
ZDNrTXA5SVNlcnlCXypFTgp6bXFXcjsmempDKGlmb1hASi1pN0Q2N0I2Jlo/ekRtMytIdzhqRVVi
Q2FlbCY+TV45QilESXorJSN7WUFQKGp6M2EKei0te0lka1ZlMlNVWiZ2QTJWSklDSCg7cz87LU16
SHFSN1d0OTZwNCNLWG5LRj88K3leUE09Q1AqamhHYW9GLVU0Cnpjb1U+P2AlaD47ZUojOW85fD8r
e0krRz07blIqZzUmZnJudXVHP1p4JWNgQjVBSWpSZGYzRD9PLWJeQTxxMjMrPgp6N2g8PjRnYCYj
NmtDeDhnX09vJiNgTlZOWl9pMFk7WGJXYnZzM0lSYGxRK3xacGUzNi1scElwdzhFKzdgcnlQcFIK
eipwcDEhT29Fe2YjRzt1fjRWTGglSV9+JllBcFJYRykqfHlmZ1pGO0lmRStIfChvbTg0UzR9ayVZ
IXkmdCtqJjxhCnpJQTdtWF5hUnR3YCFqbFo2JGEkKj07NVEjcjRZfGYrciVATnMxNlJVRjY9MWFQ
dTVmb1N8aEw0SXBLVHhtX3k9bQp6KkI9N0Y7MEFzKkAxRnIkT3xzJlh4UlYyWnZXYzRkXk13YUUr
M0xseFZrOCtUKSVHVDshVH1ORGBjMn0ldGF7S3wKekVGamB2IyZFI3ZobmlkeEQrIypDeElCQnhv
JDBBck1GPUgpVXJ7aiYoRD5YPjZXbjtIa0xvfGNtenk1VGVCQWBzCnphUSU4bzVpQ1BOLVhVNTti
RTF8MmB9PW5yUHAyanlQQGVWYlFET31pU1BKUWlRaXxCY1pYT3d2PkRNZz4wPnRhdgp6Rn5rPD5n
S3lSRU87TEg5ciVNOSYyMz0pSVpLallSSj1YPXZrbFVTYGA1UFM4Y19hbSF5WXlLQT9eam43MHth
aGMKeihsQkV6bFhJQmBeSCtoJjFPbnJ3OyNWdW9GbVZqQjB1VHp1cW5EWV96aEFQUUd5KVZ4PU5P
Q15XalFJNG1lezUlCnppelh+czhebmQoVztxR0Ytclcjb2VVO1h1RVl3TDtGKVo4VkxAS1kjcj8m
aWgqK25XP0ZFWHQqdiZjTzZHJjJqaQp6OGZ4OD1eUFhKKFBRfEAoR2BRfE92N0AxMTVucl5ZQT1S
OFdMeGhCRyNLZWFETzlkeFJudzEkaHVHZV83VH13VT0KekU9QHNjZTNLTksoQ3RyPDdmejx7anBX
QEVkOWVleGA+KGY7ZH1xRz0tNl5Zb0RZISUtbzh3WUdKSypJOXlOV29xCno4SyVXS1JDSHxgamtt
eUMkSWUoN2Y3R0taV1NxSFdaNHw0amJ5Vmd9I3ByPEN0PSkmaGo9Xit3XnpQYHw8Y2VTKQp6Wndv
YmA/dkB9PUxPTz57QVJ0NjdwY0lOMV47S308VzxTMk9KK1BGKiQpZmtWNXZhKURkQzBlXlBZRnZR
I0U3R2sKejllSWZPU3ZWRGN2UW0zWFZla1pNcUd9aistNyFBY3d6PkR+dHt8K3M8JClibHB1Szs2
QHY9MkA9SU5xQ0g5I0l3Cnp6NDZ1KXEwPEtlQWEoQWwqak4lPnRTaWghKG9IUTQ1Tyt+N3FUY0Qm
c3UoRilDfX55dzY2Xk88Vk8hZypkYjg2Twp6WXlnbmQwfD9xRjZxemZ1Qns9VztFPk1MZlVKSVBO
eVojZFMyVlhIdEl3fDhEYkJeUU87KC17N0J+aTN5M1ItXiEKelR3QGd0PyNvZElCaF4xVGd2UDRm
fExMYy1jR3MxWCNlPFRXcjZYcytmS1dBUTY+dThFaWpFbj1LUF5rP1lWQ2FHCno0WWlPWCVOVFIx
OXdTVG9vcHdGe28/V0I9QzcwKihfRERTS0p1RkZ8MWEyTUhaNTQ9YEArNSE7SlFfNW5Iej59eAp6
RUk4Ym5GcUFRcS1iUn0lUXl8dSpmWWZrPj94MFMyMDBjIUhqezhqaSM/U0dMTHZxdUNaTnFaZT5Q
Pyt2aXttMXEKek9SPiVpc05afEAqJVJfNVJ2cCZLJGhaLWlQeHZARShyMzBTVEp7KndCe05DPj19
WjRaa255ZF5rVHwpNzU+P0xGCnpBYE9NNmMmdnc1NmtxTkp7PXpuUThlUkt1X2FBcWZkIWtKQj1X
NXlxY2lsYSpkSGwxPVg7PFRoQGN9eFdJfjMzYAp6QClRXkdxLXw8R1ZtMGI2THw4WEEmOHV6I0NC
c3VaMz11NEtzLTlaQCQ4JVlAM08qU3hzJmFlQVVTcFZuSWo1UFYKek43SzF6OVZSQlZAKzE2PEBQ
em1NUUhfU19QZk1HZmx8NXZ1M182VCRpUjRPZ2B9TzBRUXlvM0I7b21LUnQyKi18Cnp6IzJURlUk
ZWh8K15BWTBMMWhELVFILT9FMFJ3K2hLZjRIXjM3T2lvZy1+M3lXRFdRaCVSMFpUMjViNCVCPSt5
RQp6QX5NWGs2N3RVU3VJaGwtISZ3KkpORiY4Tm9eP2dQP3ZZYVVzYy1VSy15WHM7XmtqR1FlbDNI
K0cleGk5dmohZ1UKenRtRX4qdVI1PU1CQTtecVhlNXR+ejgrZ2wkT058SVkqNmw2VHg0WENlU3xG
UVl8MnM9TzEqWllCWU9sdF4wITA+CnoyRHJ6T25TOCM4KlVfOGFJMkkmfjkxT35iNjFDcEU2UVhp
NTNtRyhFPEJmLWtCQypsSkU4bkxZK2ojWmhpaStXaQp6NEB9V0dgJm0+dkljbVRJI1MwPkxVYjYt
NWV3Kk5kJlZjR1VUTmN9YXJURXRCUE89KDgoRnlPLUpUNEp5SU5Aa28Kej5hO3J5Rj8hMlZBV056
S3IwI15nPmlKZXF4YTRrOXBoKDwjJlpMdSQkMDAkeUZ0UXRBYEpaaGBTXlIzLWVafjhJCnozczlp
VHJXT2coKlpKOUU1eXs0alhrPF45VGxlazBgcDI7e0R9K19UYiYwclpNX3FrMF5CbUI5LSNOcV96
cUF4RAp6MTNvV0dMOGBLb2k/RyE9am5OX3huJVBufVNuJldXWjt3T3FqJU8lKXBCKnNEcVUpemFU
Y0RWcWdvUU5iTDx3dDEKekdrNT5mRXNBa3VqTFUwbXNleVlhVSU9RCNoU25sWSFnQl5kZV9YUEco
IUp5d2FnNGN0WUQpZSspIyVeWjE9N2dWCnpPRWlWSyNAK3o9JmlpeH4pJD0xUXpYbSlpOWBRbDkr
Mj9PWSo/ZXtTQnI0YER5TEolXnslUzJBZWZyb19uOClhWQp6RE14KWlvb2d9fiFmKlQ2eWQkZHZa
b0E+fDg4NXpIUFJibDhISXM1dmJBLVN4T1NsVUZud0R0Jj9CUEtEYX1GP0MKenFQIXgjNG4wWW5u
WGNpXlVueTlpRmtyd3JZZHVTWG09KjFiX3dqdTtYM09OMmhMZ3c5MTxIY0VZZDZEdyptMmlSCno8
PWN6KkBZKkpOOVFjRWBUJDh+Tk9HSmt2VjJfRD5jYSpJUjI4Z04rM1F8dSFZNX0pUDZAaVgtbylq
JEo/QnkoeAp6PU97SEhnTF5YMUMtWWx0UH08eSpmelNLUlBoemNHQlRURiFNMj42Q1E1UjN0d35h
aFowajQ/cGgrSXAhIzt4Iz0KekZiTHlxUG9GNDVwfkV7SnIqX085PzwmR0AoejNYPGE/ZVdPVFBP
Pk1uSWZUV1Z9RURQUV5tJXxgS2NfSmthZGRwCnpAa2spJmBvQXl9T29AYVp1TXtjM2spMSt0YXBB
VVdPRTBSO0FmQiRhXldnYz4mNEVUdDgyPUdjcCpldntZfSVRRwp6aUErPnlZZ1ZpaEc8cWtZcCpC
JGEzLXdNMHJMSnVKR050VipCN3MyaTFgZ2ZsMlI1N34zOCoqS3B8NDRrMl4/TmkKemsrJS1LQm9k
UjhocEhFP0xxWlAzIzhPZkdMKypFa3tKM0kteE4/NXRAVkRXVCpnTj9AZTFjeVlecSNBeFREVURQ
CnomOG1VbGstbWsmPDB3R2lDPUpsYDgyUENIK2VjJFFgXkwlMT90ITVjUH16TGUqcUhUTDcoY0hH
PlQ5ODB1eUQ1Ygp6eiRkWUxjJUN5T2BafjtUPyh5X3BXYGh9b3ctbyZXRCMtQjY3RTxqVVphWV9r
K35Ad2ZyVkJpXnNDZGhtNXUlQyYKelkpeGxgQGgpPitwcFRacz0wZ3h4WjJWd0UmRGc0XzdOejR3
UXNRXkE1NTlofSNjKztnWG4yVG0lJnVRI1goQHc5CnpDVWVWbXFqJDY/dGtpSExAIytVMzYrX3sy
Y0VSPl9LPT4hckNYeDQpIXQtM3M8OGh2aG54ZE9UM2A9YiR3ODhPRwp6JEVwKURLe359TF8rY1lQ
KkhefDglcDNPb15iNlJ6I0tTMDV5aFMhdGslKiRRUUJkS0U7VSs3VkBuP0RDKExrI28KelU4OG52
dUlVeT5HVEI8XkMkI31mOyVEUCgjKFQqWXFIM3JyPTA3ISZtSChzVmNvNWN2KUhYWT1iOFYhXk5z
bCo9CnppS1FuLWsod0NHIX56O1dMNS0laGhqdTlwKF4xbjs9K0UmVllYb0t+Iz4xPShWSSRQdWJT
JT9iVzNqbD9kJUxtTwp6XmJPRllpe0V+TXkyO00tbHc8cT5HZ1RhPGt+aWVRSmomKnlvcE50RF5A
O01BLW53KUV4ZitreUFPKClidFBRen0KeihXV3E5bG9aQmc0RTRMbnc/bUMtR0Q9djYkamB2MU9w
RWteSHtDT1IjMjwmfCleKkY1O2FQciVjNGIjd3g2Z2U5CnpvY09Ic0FqN2JJamoxYz5Va0U9UDdP
IzBFezVpc05SS0omPV48ViV7Wk5wKmBpRVpPYFRfZzVqcWFDU1hlVVI4OQp6M3RZdG1URVB3LXdL
dmtGaz1Vc0khdjRaMk0yaER9czhNdDB0eW1ofUAkXjt4aCZmJWVTTzQkMzAySzE1QXo9JCsKendw
bFQ3a3xSQHRZSjc9ciQhQGI3KD8mQntSIUhPWTk0QW5EN0x0PmVpK2hDVihHTzZWMmwyRFYmPjJW
UFp+ZCR4CnpWaWt+WjsmSGhndyNFdHUrKWFsQGlpKnl7Knk/X352TTt1VmBvPl9CWiR0PnFhT0R1
Uj1IdyFhUDxtbzx6P1Y9Tgp6S1RUKyltSFhyYmQoP2JmQDFiIUI7UiFoWEl2Rm4wQT16U1RQKHNY
N1loe1hXKGxFfFJSdTMlTjZObC1pTkBWSEwKelhDXkUjU1l7NHxjb0NxOWBMbGZRJnt0ajJIVkA3
ODQ9TUB4T1A4Tl47O1h0Rz9TMFF7S3p5SGZlMXkrI1FKc1hNCnprJVU/RnY2O0E0d2EwJklhR0BA
SnI3YFY9RSlPUDwpcXBGa3VhPCpDXlFRckA4elZBNlEpSHpUaUJxUzV6dTc5cQp6WFgxcj0yIzNw
cHBAIWx4MTY1cHxjY3JkcTw9ZUltWVZhcXxZNT1zKl8qQ0hJKExBWmxsVXh5fCM7NWJtJEFzMkYK
endAUCtIMUdeWG1DSmk5bEl6QUpWRHpnUEE9R3QxWT1tb3A1Sys1cjxOOTZ3am5tfWQwaTJufjJm
Sk5XTTM+MXhOCno/MyphIyg7WDwpayMkbTRpMyE3Xi1WKntCZVV1eCg5fT5MVCFrSlpGeEckT2o3
SEVgeTVAPDd9IWkxKGFxODNpRwp6azVuTHE+TmYrQ3hRPTwzOCRlNWprJnIme0FWRXI/NXBnViR4
MW11ZmwlVCQ+PGZ3K0BnUGJWWDw2ZiZGNCtjU3YKejkmfilgPSFoVnRoUVVYeDc/Wi15cSNWfW0r
SEBnKUl0Y012SyhyOUlNUWxnUDxJfTdERmU/c3RaK2hPfl5ZVmk5Cnp7PlNmX2tOYkdQQXMtdk5r
ZE9WMzBKYHZRSm1oflhnZSZleklKJUhLODxkYXBjKUp8NT5tJG1CS3dGZno2QTdzNAp6ZX5rUVU1
SnJtdDhwcDdtZl8mc1NUfWtleVNyfTRjPHMrKFNuWHN1K2k/eXx1Y25JMH1AY3h1b1VCbWIhYEYm
SzkKelNieXd5KSsmT0tuREhRI2tGeTlMVyNEb1hWX3JWcGg5U3NXZ0oqRzR5Xnlqait4UVFRYUxq
RUF3KyltUypeaSNjCno8KzFRNz1vR0ZsZGVyLW5VKl5rfjxAeGUxPiUkM0hWdShmYFB0JVhkQkJl
PGpJOCs+WEJtbmEwUGROVShURHpaIQp6WDcoWX1obGZVWEEtXzRydkhPR09EJkAqKWc3TFAzKThq
SF5wcyhLbz9Rfm9kcWo+ZGBubVJrOWtub1YmPWVTMikKeiNGVzNzMFhVOWdsMkMxQ2JsR3ZuXncl
c2wpKGIpLXFfcCZEdlVoRDJmYTc1U0lKUCYoXzJPZVNVPW9hO2ckaUNCCnpmeztGK0ZPcihqQWJR
NGw1WlIjdWFMajw9MVJuZjdyYzdMKFlEZj89S0tFcGZxViRNfW8/UVomSyRWT3BVYEA/NQp6Pzh9
UGF0dnZ2M0UpMXpub3MzXl9COGdWeyVETW4yVTRXRTVzZERuVCptajM0dVhrYnEwOCRTJHY+XnJ0
KWpWbDkKemxgJDFyQUp2aF56PmBQTCFBRzlpNTlGOF5Gb2hsYjQhJSFyeDZrUCUhanI9bDlMdnow
OHVhZD81RVYtK25PTmk9CnordEcoVGFkcmpNNk8peE0xZFR0QThzdVhlTXd4cDR6PDlGaUgqSCok
enp8VEBKVSNrZE9mKnBaPzRkblVIZDAxJQp6TzQ+MCtkPkJqfEJfRylpIyZ1Pz5ERkhgQ0tKRyoy
P1oqcDM4YDZZKSlCd2xVY0Q0SmYqWWBJek9AV0ZyLX4yfSQKei0oZ08qc3tqWEhnUDZmUDc7fnp+
PisqQ0JBU0NqQV89fHUxdEh2WSVgXihWTUNULXBtV0AtWn56VnJMNU5Ge1l9CnowRDdxWncqYXQ4
MHNJbGxMKXtSWVBOaCUjI0RQUTNmdk48NGlWc3VZe1MyTXk1MjFNN0RvVX0pcW5QNDNffCEkMQp6
ZztlYW9iaE5YT2kqQ2JIME9kSX57Z0NeVlQ0TypjJTsjKDM3fW51OVIocFdYIT10UkRJMnNMSXZR
Pllre2Roc3YKelJAeFo1KEgwTEx3MW8qY15nTWFZI2g4WlpXQ3QtWkt9Y1ZOQzVqKl9IV1o4TV4q
bFVGYj98SyM+P2gjeHkkMDZsCnoyenVaUERDT0dEbGthMz5eZGxMe3JoYCpmJHs+UH1LJEtsRCh1
ODE8UHZ8UjNlPVExZiV3bS1ib2o2KytXe3MydAp6N3kqRFgxI3I/OXlPOy1aNDxLY2l6Y35wNile
bChYTCVEUk4oM1h5NFRZUiZHPHFXZGQ2aVp0a3dEX3Y8NllGKjQKekw2R1lySWZHbVlLISh1Rm1O
QmpDQD01KnNoY3N2ZEVOUn47eShxYC1WfXN0Iz9YWFl8YFBraDMwWVhvMktlWn1UCnpJJkQpdjk/
My0/KHx2aj1NbjF8b01fLUdeNyRNOX5iJG9iVDlJcm4+Y3dxVUI+I3RDJkxgPkt1bFNAIXhZVSl9
KAp6YHIjQEpHTW5yMGFLST9EeCN7b2o3K1NSLVBfZkBvRVQldCN1JTtTMyNkQmFBaldZZmtLfGJS
OXhQVlhqK1ROM3cKemsyO15zQGdFJUMpNkItbW99TzgoUjNkdntPbVlyY2hSV2t5aE1Eem5mYiY+
YGhJPEpyPShYVypqLTZ2V3Ykcio7CnpjZnIqIUo3azQjNVYmaTReVTxAciUzPWNGd0s5Vnw2dkQt
SEY9QCFsaTFMX1NuZ05Ta05jMTliQVNDfUxwN0NkMQp6ZVJ0eFY/TF5rUUJPMUxRTEluTXxkTn5W
dUlJNzliVW95bjFseEdNckY4fktadEdKbGtoQGZPczhUSnRlS3N5RFgKenkzdH1ycFVGNEg1KFkj
clZsZ3haKFU3RTQ9PGtQUklfaUJmMEVCKE4zI0BFbyNpI1o0WHxjNjJFcH5QYlVpUlRLCno4VDhe
aHMwTW5MITV9YGlJMjRNdGg7Vl4oJjduQlFKcUR2UUJKMmI3VGkzZXxFa2ttbWBzWCtfPk1wOChY
Q0l2YAp6IT8xcDU8NlJqdHY5aHYpQFVtaWlfej4lOHVkY3VnXmJtWW4wbmlNRHRkTVBpY2dKUUJH
SVNCRWp6VVBQazJtQGkKejhkZjkrJngzOFkybkxsMiVUYztsRn5XcWFScypESGVTOGdSVDNZamBf
aGRLa1YzS1AzVThiPF9ofjQ0NSpzMEEqCnpNTTM0UT9gMEBncHN+dVNqNkkhZW92dThHKCFqRm5J
XnhtYCpOJnd9JDdMeUhJcyYyZ19+VGIwVSFUNUdXSE82Mwp6dk5gdXdAIzdpJXRzUT9TdTlXVXdr
P3M1ZDt9bXtXT2BuYVFyRnRSbTdwOCtpIWF9VWAzKjUjQnhyNCN1bUJyLW4Kem9tTHUqRW8tOEkh
MjFeeHk7cENaJVFtbzUlVzZlRmE7I2VEK2g4dH5kN2tEcER1fn5zOG5aRHZTc3JYezZMOEdKCnpE
MSRiUlJwVXQ8MDNKSUNkX01xJGQ1MSE9N0JHSHthYDd5LWJNUWNPWk1fZTZ2aS0/TmU5UlAkY096
dnk+LUQmIwp6ajJ0US14eVlWYDcoQnlxbVppNT1sUkxadWh4UDw8Q2BuQ0BrPmZaeWoqbGFOO2V2
WmpuR0AjaiEjTm5vNVFmVUAKej0qe0slTEhUPEs+a3NfOE5hRy1ualBXKW8mMlZBT0lWQUxYUXoo
ejxHektIQjYtcC0pMlZOYD1TajVGNkp8RzU7CnpYRkdwX25XfXlPcjd2RT1IQX58PDlXe0ArZEFw
Tn45e2tuMnpKNk1vdFRoZUhFUUcoTVJ2QXQrb29edmRuSH1uaQp6NDEmPVdKKFZyez5YQkJjUEZu
VVhsM1I/LXFGJS1SZStQaEwxN0wmT1BUOFRGU3ZOM3hheGozX2tHdy1mREB6bGUKempVTFUyRn5t
P1RyMDx2TWsxRF8rSkpqNGRsOy10ek98MFdWKkVxLWBsRmxNbmRrQEsxaCh6ezV2Pz9Bd2RRQCg8
CnorcVNuMDQrMjlVKjQ5PTVPNGo2bFpGTjx3MGlkajV3WG1IWG45WWckOUhiMWxqPzQwTk9kNWcq
VXRoX0wydlN1VAp6bWFEdndyQzdFez9QbHBzIUkrREFaUTUhTShBN1otRXQ9YmlKU1I5SXF9Yypz
PXxQcDt6X09rXlhDb1BBPHE1SzwKenI+IyZNSmU/fmhCSmUkTTFNa2ZAdnpHKXh3I3ByfWJDOGV1
PUp6cDw8QS1RI1c2U2I+dEkxYUM7aWxNdSUtRGxgCno/MXRvSDJ6QXFDN1o4c1dJMzI4Mnczd35R
U15RZCNAaFFeYjdTWXA0NVJZfmx2ayk2Mkp2bkg2VExPLTB2QSFgZwp6MHZzayEpenI0O2RFMEwo
QUt9P0VMIzFxSylqMXVzRUNPKHhtb2dIZDFDfVg+IVU9akVwVkoxISskeDwxayNyN1kKemFAY0JD
cENKZyp0N2YkVV8hXj5pYkFlK3lFZUUka3pTRyM+aEdlTV8mVDt0MXNIdGZBUSpKaVU3WklSdnht
NTBwCnpWfGVLc1o4MVFqOFJWRzQ3QEl0Z2lCWSlFPihlcWxAOFB2UiZLRjw/RkQ0fDZMdWZlMFc4
dCRWPUAwTUdkR3V1SQp6SUMwPWI7PXQlei19Z2c3PEkxLUYxaC0rISUyKT5xakw/I3hmcjNtbXUh
bH0mN2dvR2NoWUItczkmKH5FUH1tfikKekRANzl0U2Z+eFJHZ2xudiMlWGU0K3ota3I+OUw0VkU/
SnlaRmdeOX1WeDtgZT95VHF7RDFMSnJSdzRHdkEpP0BoCnp1PFY8ZnJ7bGdseWRac3ltR0tTT1NH
VHFoUXF9SSUjT3FLNXpYQjZ9US00QUZ2QVV0JHprdntzS1pYKVJKdG1lZQp6TFllTDItRUhqeXhQ
PGExSztnaHJTfUtubkoxI2YjcDU1SkRJWTUtPnlXS3M2WUc2ST5qV3RaV3hofVNGeW9UZVEKej9O
eiomPlg7MlpBMnZDT2RwKyRnQ0paWUUlbn1SZzs2Ym00SXUzeXBuVEpZQEpwKDNZRighb0A9MVAt
UzhjPmlMCnpNcUF9OVV6PDR0ISlDPGg1SzNSUkNecXNyc0cpT0VrZCR2YG9IMFI0PF9YbmVDfEJr
flQ9PSpgdnZTRWlKWV9zPAp6RkcldDlfYFd2JjchMytyanNZdHBHOGo1S3w3WnROSl8ybHZSfnR0
fDM+Nl84U3dRcVY8WU5uT3hnc0NZN09sI3UKekBpO018aj1ZN3khcT5KYkFOTD8xY2Q+MTY2JDg3
Q3FPM25kbyhsYVkkX3lucF56KmkzTWhMYmJBS3llZmVpUEdBCnpKSTMyai0xPDdeNmFNfWRNJiNe
QUpfM1klM3tkfjFobEg1blMybCRFcjFmSzBue2Y+QEF5ejItQ1huUkAoNHwqTgp6NjhHeDNKY1U8
TkEkbmRVTkM2UFpmTTdYR1ZHbUltNX1AI3lLbXtjKlAySz1fZnRRQklselp4JCtWfEBXZjhgNF8K
ejNlYCRYMUpFXlFxe0dBa2c5Q3dIJFZpUSErMUNHcHpnTFMzPyhlUit7cz9+dSZ8IUFhcCVRVDlo
VllRdGNgVmhWCno7JG95YUBkeHMxVlJZKn0/N1p3JHJ3fkRKUWpGRF9fZTdfSVFpc1dvTSZZSTFG
Mlo3Vj1WWFc0LUskUCUpcjJLJgp6Rjl2fDF7NXQmSGVKVHd4JnlNcz5eWjtDbyE9eDVnRlhxZnpR
P1N5dHh6YzwyakBSJkZ2aXJ+dUIwSjFFU2JwQV4KenMpX2daRn04IW9xS29XZ3gzRS1RV0kxTzIm
RUs/NmhHdz4qZztZKGUqfjA4a09IMFMpcnN1YCRkdDNeK3Fga2RlCnpTWUg4OXdsPjdwXzY5c3Y4
KUFFQlVGPng/en1MeGtyMHhwPTFFJTleXm0pbW97LWBvXj5eVFA5PEQ4SXBoMXg4Xgp6dkkjKWc0
UmNLZndOUGRvVjl9O2I1UmxNJnZlNUBIWClQNnlKfSo+UHYmdU90O3RQa0E8NHY/TUVBeEphZGlr
YSYKekhxJEBOLX0lR2Uhd2JDailRYWZDIXJzTXFDRlBANHshKnw3REU4WjtlOVpjZ2pjWmFxYStI
eHRGPDZIOE5JWVljCno9U0dHQCUxMD5tPmUwSHJqeEAmNURBUitpKVRzZTR0b207Q15Se0U8cjNs
RmFidVZSdFo1bXQmSTUzVzhzKzVzPAp6R0lgND88PkxiISVRI0R3aStldUBoNUFpcyZoS3I8ejZ7
OENXT3IlMERMJnJwO1ZYUTQ8aVlaekxUdz4rd3BueyEKenokTjUtNyFfMD14WUdPTnIwcEpwbT0/
VWomQGpYXzhSe1o1SytlPUNOJHR5QDM/VTszNWtPME1qZWI4JE1RanFOCno2dSZ2TUElVjtnQWY9
YWFacUgpMiEjPUQ3RG1+TXY7fnFuISVseStXYW9+JT5mcWVzejUlX3B5NHBIRWF6aTVuPwp6Nnx+
fVVsUGZgXlE8MExebGZScm5YUGt2NENDakxtcVleYzw5dDJCYT43N0Y7Z2lpK1g5KX1ATldqRVNX
blh7S1QKek4rSikyISlhTDdYfkNOakNnNzsxQnVMMishVyF1WCFPYWNDdGoybWw4ME48RDlkKCR3
Mntfc1c5MCtmNyhINXApCnp7OXZ2cnpQYzlRXl98OEReen5MSXVJXih6JFBgZT4jWkUoZnZKRmlu
Syk7VUlldlNrMmshfEp+R2QtMSk1U2VNKAp6VT5kaUAjU0BpVmNnbTEyYiNpeGE4fUU5ditfdlB0
K2gyej13R0hvPG90TSUoNW00NWNoVCNlPmxITTQrUFQlVjQKejFRPy01NCpAMHU5VUF9dl5kUzVZ
cl5SajJmP2cpO1lKOVdvbC1CQENIdjMxIWM2fHYhanRjLVBNPSgjKTV2bThICnpOMGFPNWpERmI8
WVdNKCRvYC1wNlVYVWpZS0IkeF5gM1N3SWtkMj1BWnMoNDFtT19uJjk3X2xaMTY8KFNWaTJCfgp6
IX1QeCVtZFo+Y2hWY35YMnJTVXM3KWAqYTgwME5OfEYqQ3E/OVQ0PTFtR3xlUSQ4d1NWUDNRU1g0
K1QpcVZsZEkKelIqfVktN0IrJG8xdnQkNztmeUtkPDlmVXJjXlpBKjIwWD1BNzwoRT9UIWBfZHIj
diYzODh1eyFNNT58Z0NmVkFHCno0WEJ2K3NvJDM3czRoQTh6Rnx0WGBseVVUP2EmOG9HSitVTHM3
fGVtX047bHVFdHlXaWgtak89bT5gQkBeOVZvKQp6TH4xbnY2JHdhfkdsNUFsNFQtdjU/MkdoNXly
bXVeP0dwek1IM3VGNmZJUXl3YV5OX3AkN1FGPTt8WXJLYUQteEEKem19JUw7KjBIPyFFQzJeUFIx
VSt7aUpobFVOVTV8VGk/bThkNU1uQlkhK2FXdzx+KExASVJmSnRNdVVQbCQhUWxCCnpeY2RuPThQ
USU0WG9Cb3VlWH57X281NW1WYkolOGN1PmMrSzQ+My09N3dJKipoSUpjYEIxWW9PSzRKakFnZHBm
bQp6RiM1cWhWekgqN3h9SEoleFlmaGhqSz9HQDY1TT5AWDFwRX5hdUs4SyhCLWJMQElLWF43VG07
PEY7TG13c2tUR2IKenQ9SFJ6X2hkQH5sUD5sSGoyWSsrY0Nje1o0KGc3RVk3aX5PQUBvZDs7X0lO
PHsrWTg2PiZURW5rSFJ8eSFXcDllCnpycVpIVW1wSUcoRV9qYFI0TSEyYWQzNSp5TXVFQHRUUG54
V1QrbSs+PnJIfGJfK0lpd2ZEfSN4dV8pdWJXbnl+cwp6Vm17X2QmSWopWVYzZz1YWXdKQCFkaWRf
R2NgNXQ2WTUyYFVHb211WjBKPj44MDttYC1yUzF6Jm54TjghSyZuYi0Kem15YUZEdDBOZUlLOTY+
VSE3Q3Y3SiNeI2Jxd2MqXzwrJTNoYH1LaGslRXdjdiM+dj9zPFlPbE8yKz96MCVsQnQxCno7fkxf
OW1ONDQ/PkBHamZJQz40QlcmX3twZ1pOdThkKUItLWdQIXxWfE1CSHhPZjRWaHYkRHdfN3RuQnhg
RjQzeAp6U2EpQ0RZLU93R2IoSXgrbyN9a19RdSgtbTQ4Sj9mVF9gdV5CZUFXeiQrUTNGeDhDKCFP
X3ZlfTRpXldXSl4lczgKelVgSU5ATUBET0dtK3tGcTtHeV55Vis+O0Y+Q2w9TyVUQXklSnpOcDwm
OG5pT2ljdEg9ZW5vfj94ZGUmSWkrZF8tCnp3T1l9az5WUUt9ISglUXRSRUlgM3BvU1FyNEFOO29V
WFZJTGgtTyhvNHhuKWdmYTMpQSRHSk1TTDlke2J7YXx6UQp6eXBlNDVeTWtuLUkkNng2dzJ5SGJ1
T3JtcFBZfn5ISH1xdnR2fVhhKFZEVEt4VlF+Qm02cCVWPksreEk2alp3TGUKemIzbngtR3oqUl48
VSVpM0RLUHB1XkhfUloweEs5WmpiMHhEcGpLLX1aWW4+OWR6cy1TMVI/YH5sMExSVUEwQ3c5CnpD
VX1NODlMZ0Z1Z1hvPmBiOzMrZUFqMnMpVEAofVUjbVRQOSo+YkpmUTFKe0FAcTtWJGdCSlBPey0o
SXBEJSpvYQp6ZXNGPXVvZ0F4N1dMIzsydDR3ZSFqI20qdGJkWlRfNmlLaV9gTilSdmtadGxBMnJl
RmozVDA7cDVQdUU4cVk2MDgKelktdXlfRz51WDYqeDlRbj92I0FnMG1tcSNAX15xJSUodXFtYCRe
MDYldlQyPmwjMnUkQ3VXQT9jITdWSVkoeV8oCnpLSmdEV01uOGlHQUk/SFBCN1U/Sik5QjBHQz9F
ZUFeM2d2MzJJT08oQCk2PyNWWmlGd0FSbDNRO1FBcClZTDcxOwp6ZjhuTFNSZTdjdXJQfGhpVFJ6
RTN6V05XRiRDVEd5PDNEVm5UYEU1cG17SGVWZCFOa1hKdDRVbnFZdG9kRj97aEUKelooUXxIPU14
OEIxUDtYWEZaK0hAeTR1O1ArUVVFQ2YlLW5ubT0zbUBNZ2s2aTR0KSRxalBhMHRkNXAxO2VUaHBz
CnolNCpaLVJGXk9hZD1WQkFqT0V9c2ZlNFIrb0RNZks+VF5Ge2tqN0Y/eWFYbFk1fC1YUjNUc303
JlNLMlBKJXEkUQp6dT1qb3d4OT50KWVsWGg8LSZsPkc+MS1PM197Kj5re3M1ajZjQW80XjJ7aWlY
UHpnU0FkcVk3JCZiZio1JUBZajYKemB0OXwxWlA2czdxXjgwQHh9WTd6MEZjLTt5I04zcU5ZbnZ7
UipsZ2klUTY4NyFEeW9+QlI4MU48Vi16MXB4KClrCnpjbVNSanBycWczTTchSnRmM1JWXlF6cWt8
TjV4M2M+ezE5K0QlWF9JPlV3VmcwRUlXfXFyaFpXYXlESnBIXnpNVgp6byRAPCRTdjtYdWlYOzh8
OyZ9N0V2bF9wJUBzOVpReCRpbHpLZFRFSStyfkFFdFJDUHtDMWd4IUspTWslWThxNmgKek0lbWNL
OFkySzQ8IWo+OXhGSFhrT3cwNT5hZ0VFZ01HIWFIc0ZwIUspKShQeVN0e2ZzQ1ZZcT9UbDt0Mngx
WTRsCnpWfDgoe0lTYGxIQFY8P3N7OUlXSkRJWCF5QTlUVWYyLT9NfmA0Rk0xLSZsPUgmbnl2OUJ7
KFNrMk4ofisoNDBPRAp6RzJLMX1LbzkzSTIlM1BTZDt0YjlVOHNsVVcybmwlYEN0OH1PaFMzSWlr
U2hJQDc9KSE5UDV+TTUhKlRePDUoQkYKeituQTdKZHZsYlBJWWxvbyp1R3NDbX5ubD5xWExXclM5
KHxleWdkWEVZKytHKXY3ITVJVlFLcFBKUHZ0VFJRZ2FeCnpEcVkkcTQhbWRfbkFCWSFeOWVfQFJY
dTd4NXoyY1RWPmQ3ez9MPGhHVVptYCZeJUlVYHJnSTU2e1Q4TzlwZU8qeAp6QV49Q3hxM1VVUEVM
UlZnQGlGRj0+aEJ0KTZTcllSNVZpRHphMWxYY2ZGcnZsOzJ2en5xODJmfk1gXis5Vn5PTFYKel9o
SChPcT9oM1pjQFUyJCNIfiZwUj0mRDtYKUR+eF9NdGckP0dFSFJDN3IkRm5FKERfV1ViPHB7cjB+
YXJ8ck8oCnpKd0dTSjA9NlMrS1ZKaXdLX197SD97QXp8S1oqXippVjQqKyE/NSZuY3c3ZXtWfGwp
P0Zqe0l1TTglNSRXUmtFSgp6SFdVfVpaSFZ5e1UwV0psI3NLM0N2JVlRYllAKiNGLW9KckpXMmA9
Mj1mPWZFTnxNV1kxU0NhaE9wNWY5eFV8JT0KejkzUX03bDJEWFkjSFVvMl4hIz94MU1EbEZOYjUx
Rmc9eD9eJlcjZilPUns3Y0EhZztSPFl9LWVCN1lUeldkYVdLCnpRUF5mZjtHNmdDWENeOV83ZXJk
MURJYy0kVnI+Wjw8Tj5MX214LWhMI0FMOzM9VT1XeTl0JUwyJHR7R1BFX0dWcwp6ckpiLSk8PiRL
djw0KyUzWEJZQUB5VH5qRzNJSVFxPmBDblRVWEMzKkNaOz04Uk16Y3ZySitOWGZ3c0Ixd1RVJkMK
em1ORGg9N04jJVhnNiFiOUhpVkEkSFgmIVd1XiZJUCZ2UmtjbmVTQDk8Wkc5e1liP2pyNTUoM1gy
Myp2ejVOYH02Cno0QGVBYFFrb1okMHxCKy1ETGdYMiQkYmkmQ0tpKkU+cFY7QUV2TXpnZmF5VGhW
KkJ3PjJpdzNAZUM/QFlTZ0skTgp6M1MoNmArcDBqdHZDcjYtMnIzciYhXjE+UzE3QGNsIyRRT2xm
dEI4Q09QQl9eNyphQkVfWF87O0gheG5+VCpOP2IKei1hTDwoXk5SQDJ5MFZZNDlVbjNqMyRzMVY4
M1dBYUdgZjJPKntOPmgrS3ZgP0g4MVdXODBMc3IkSkRKKWkqe2dPCno8I3U8dVRFYlVYOHNoWk1T
Z0ZTM0JvZEdgZkpfS1hub3ZAOVhFNjJST2pwYnpWI24xWHZaSj1tai0hXypma0RVJQp6IWdnVz41
OTZGZFZKSCRicGBzanY7VWFvbD4+ITArMXcxZGRlIW5mWUVpPEMySlI1WmFsYFlZMVZjMjh+XlNI
RHkKek02JTZldmA0dzxDekx2YlB9IzxMczYxIypTNCEmV29OKnc1anQ2JVE1RURkaW5ke3YheUFU
bGlvc0c4LWdjcm5rCnpedkMraXV7NH1BVCtMRjJpTCNzPzJ+fCs2ZmhJSCNnen5XaWBQa2YjZDw/
WEVSWXg7aU59YWR1MyZRfHJRKE12aQp6aGI1JG5fcFZAaXhFcSlQPkQ9fk05QHozIT1aLSswVVBT
c1VrP0RFZ2hqUl9jJEFPcUwhZmZkWStgP0tPVGYzTX0KejdwfGluNEdCdjVoeV9CfFZjZEVhXnhm
Wm1IJnskJUpyc08rdiRKeW1obSMrdlQ1cExOX0Fxe0Q1MGhfZlZlMFo7Cno0PFYhSUN3aEhzSUEj
YmJqVU1LPkhrVSYwMH00S247a18ybktZYUhwaEZNc2tFeyptdlhfejx4a1AqdyQhNTU0Sgp6JmpF
bkFsX2tZe1BHSHg5bXhGNl4kZH5+YFYxI29oYSNDSWttOUs0WWpzc35sSXY2eTMzXk4+XmZSYVZL
Y3xvKlIKemJHP1dWTnVAQi12ciRLd0x7e3IjKDZhckI3KTd5a0pRc2BEbVd+Z18kQ3luMnB7Q0lM
PmhqcXZJQGxjbUEkISZuCnp3X1pqRWRtbmprTWgrSjU8REdtcygtZEVXdyRJS35jQiVqemRqPXBl
M3B5cFBWQ1dzRCl7R3VAWFhmeHx6d2czcAp6cVhVb3VVTGBrUnFMUjF9VWxYZ15SS1gpPmYxTCYo
blpxX2FwTnFOMGhCJHQ/RTIhaVYyLX1FPzZaOHgoSiElLTEKem5KSzRKLXQmTTVybXc/d0h9R2hq
NS1AcjQ9bnB1cTI8eV5kYGNFSSNZVEtlVSlmYiZrQTJTQl5WTkp6Q1l+e1dOCnpoT3IzVylXOSh3
NENkaCpaejU7cW4kKFljKWpvOUJJQUpIJncjT0k1X2M3VEJDKHFhKUYtQVVgPDNKU1BYaEJBewp6
bnEmRk01fkFmSitNXy1XIShLWjhUN3FYIXlRRitudkpvPzlpO3V2TCpvOTFnZzZWOHkwU04wUzxz
KVI8Q0tvaGAKekFTb1g/WXY4P3MqdjJ5RVRpZ0lSX0JfU3tXX3ZRYmltXi14UDBkMGt3dW5tWEdm
N3ZRWDU0a0ZLRVp9Y1Z8d3dNCnp0dGw4UXJyPGZsKUx7bmdWZi1MTk9MTUg1R1FjY3JUdEloLVo3
fHFHT05SRlotbiRfZT5WKGxUJEElezBCd3klfgp6NTRlUFlLQDAlIzg5YEtxZWYzam1XSWwjfHFw
cTN6WitgMXReSGxuc0lCPSpyO1E3M3QtRShuJFEtVGchQChgRigKenRnYXBUUVRsMnIhRyRCX00l
fndKUEspVzhxb1VKMzQjNDVJJXU4U3EqPk90Q1U1cXdgTi0lQXw0QjZyIUpQOX5YCnowQntAfGlm
T313Y1lkenswNzlpQk9xQDNOR2ckTzVaJm5wKipQVWUzckoxXlRaezQ0TVZHQzJ3Wmcje3t4bkpx
dAp6N0kqVm91NTJnSGJKRD8rYEJqNyhkfS1wXnFuXjApcFQ4d2V7ZGV6clpALTdKRStMdm0+ak5a
Mk9CfHklX1Fgd2oKenJYY0Q3IzczRWtVcGlBMEd3P3ZeI0hwZEYzcmIpREVCJGh9Q2hCTWRvWlc8
Kioka2dsNyMxZnBrZWE8LThSTTkzCnolbStaMlQhcyFaMkZnTDQycTlFWDUzQXZBQDZeVFdpZCVX
MkhGTyNTZXkzK0pJfn0kZWRFQ2VHNVhTPnFnZXsoMgp6UmpZPnF6QWE0Yz80eXVrZWJ+R3BsI2k1
KzRZKHNYKStHP2hSPE1UYyhhJEQxUkx5TGNDU099RSV0PCMoZ1VscjAKekZ3QDNfQy1OUkNBM2ND
ciZ6QiVYYz93N0o1eXFJTVY9eFROUmxtVXRkJG5pKXZKSX5XaldtfXgtRUNnNDJkJmhYCnpWNUU2
KHk7YFE4aFF8eHJsI2tQNVgjQE1nbHZ3RlFLSzU+IyQoK0FBYFJlS1hpbiNVITwpZ0RPPDNpdT8p
KGxQUwp6OU1YNWAhWkFuPnlIYzBUQG9WUCE0RDxMbHhIWERTWlUtfDFQRCpHJWxIQ29BQyZoSFBt
X0RDZHQ9d31nVE9UZ2QKejhWcTxlWnMtJk8yTylzKnhZdD0xKSo8bHUkdHVUeTYjZCFLYXBKJj4j
RFFsSUsrckxBRihBJSNqampiQlg7cFp7CnpHTUJRXlhYUmklYlMjKWN0JVY4UVhYajNkYFBveFlj
K2lXMTgwVkB3SWVFaElydy1GZWpPQzgkVndRQE1WQDExbAp6QHlidGtySDhgXnpuIVNYRn5rLWhm
JTNIJEBHX195S2J5c3JrTyhfIU18dzMqQkpjWXM8Mkl+eUJ1Pih+dzI2KiUKenFYWm1WOW44S2A8
Pj18d2Q5bTRENkk7MTlBRylmNVY/VTF4UjhRdkQjb2c/QEJnTkE+e1F5Zlc5fU5zOUomOUklCno2
S35IKXc/QXIjU0FKbX0+JiYhcjk2ZWFXIU5zSXFndXdrfFY9XkJxazV0Y1Q4JDU7WnJ2KDU/dTck
JXs7PHpfXgp6RW5OWV9SU1JMcEFvT0JCZkRyPjhCb091aDVFZE1vamcyMD9vfXQ3e1IyVkF8Wioy
NmopIT0teHRJfHwqVEZvSzgKeig7VllARmlrOHlQamQpbyFHMGNsZFptMXBRTGQocVdfKVBMMVJO
NiYhcH00Q2ReRUkmNmZ2bl5SekdMKGVIeSR6CnoxencqViVTVkowYGFCVjtlekN4VT4wPEpPMGJK
Q2plQjZfT3FsMmsmZVJLP0tZQWoldSNufH5WSzckQU1FVyliVgp6eyVsN0BvPCNvbFZhVHxSRj5N
ODV0ajh1NkV+UDtScGtweV9McTJMPEQmRW9RKSYrUSN1fjtjKXRjI18mNER1MXsKeiQ9dDE3aGBy
XmhyMGVjZ1dnSDZgdSt1V2dDVk9KVGtZIWQqdU1qaV5AS2ctaUJhQElTZVNuIVVSI3lOQEZ3VVkq
Cno1UH5xI0l6dlVWSFJAZmx2a208TWxNT1dMKnMjYEIxRzZxPFNkKVZrUXU7JlJPLVMheDhMcDVy
VWVoVTVtWXl+cAp6Q2wwKTU5TUdpWSh8YUB1aTdiWkBmU0goRXB6a2NnaDYzZ1QqfSg+P09hUmhx
bVZqZjk5Vi0wdjdOWEBZaEIjPjQKemh8c2EkaFB2QzdIRiV1YGBYWWZETUZyTlA2WXhOVEZ0Z0VE
WU45aDgqOSlHOVYhTExzTGZJPFBMcD9yKzd2Iyg5CnpsWnZue0p2KSpHZlNiOG5PWEJEVEkjakk4
ai1tNDdxPmd1VHJoWSt1KCpJemJGNT44enhQXjY8SkFmaHUyI21QcAp6djZDPGlEK0VBSjBJfilG
JGNOMWQwQWcwfEIrOVlANVdXZCtSN1ctZWkybUJEe29RYmVCbSRDK1ZNRSpvaH4mJk8KekVpQlQ+
eSphcChBWX45M2F9d3BARmR4R0JVNXJeJER1OGpae01vPl8pYzA3b3NlRHAtQERUd09vQXw/cit6
YnR3CnpIeyM9MDNoWSFIPilCdXVoV1VrfFNWVG43NXNjK296ITw1TUBGTERRI3peX2ZlbT5WSTZQ
MCVaNjk1IT8obz9UVwp6QXMtMWlQNkJYQDRLaWxJKGVnMTtqeHp0RTlhUCZBMFk/dlZRT1U8clU0
KHFCaV9XYjVKMkM1ZTRxbDRZZlJSRG4Keih9UD4lYklqLSRFZ3c8Y0JOIXwkPD5UZ3pTajNkO29L
ayY2K1RyTE40aFRYJS1Ua3FDRHRMUz55TnooSThMXnJqCno0V0BtUjFtXmU7bzUjV2lIZSQ9TjhS
fWc1blZ1SV9oSHNKJVJvQChmdk9rMCZnQTM9QiM0Jm9OX29oaTtmKSFCLQp6TShVVndxbE0jVWxq
R1NTUSheNGoqdFJCKWN8SnJUNCsteTIxSkZaVU94Rl8hVWBUdSNPcHQmQm97YyZ9MkRtUUEKeiRi
Nnc0YHBTJn43Y1FnODZxYz1CVHNrTD9FfWVsUWF1UEZqVUBlZTloZmFramhTKDdeNnc0PFZSWCR2
bWQ+NHUlCnpKNXZjZDA2WXI3cDtDPFpILUZkXkN0dmp8V2goV19zaFlVSDQ9PjIpMiY8d09XRFd4
I1Azal9eYDk4cGp6QT8/NAp6eXwjRVFqfFQ9Yl4/N2wrZS0zTTItIU9+dHt5diNzNlQ2dEU2RzF1
TmJUSm9XIW10UUgtZE9ZSkhlYWR+ejl6Rz8KemslXnU0T210dzhjVG8kPCU/d3Q4WFdYfW9jRjt6
NDVHdlFQYyZJcG0zTVpta00xNmgkPVRneiRDcDg+NC00OzkjCnpLZlRyIWQrZGl7MGhXNmxiND57
filoaVhnZSEjPVFAZyVNUj53RV56P2lGaFA1fk88b2h6dzxmM0RIeSNiUk98TAp6dnNxT35YKjlG
cEVAbXtrYkI5fj84fEplUHc4NzR0OEVwfGBkelRQcHhxJHRUbWZqTS1fbXwldFclK0NtNnlUdTQK
ell4MjdjKXJHKkpgbX5kR3hJRHoyRFREX3RvKXQ/K0hUZ0pzZCp1dzxQN0x3Z2hUNGI5aHdyI1lg
QUNDSXh3KmNTCnpvOXtLbSQ9QmlsaD9JfThlNlBoTm1qKVdBZF89aDReN0B7NWZVczFgJG1QPEle
QSphK2pAXzgwbz1ATTsqNX0wTwp6Q2dmdnBwWWw7JDZ9d20mby0qPWpRX1QxZXtkLWROaUhSSHRy
Ul9UbTYyNWheMkEmWFNuezRTfTkyPl5LVzhFWFAKekpJdnJ7QkxiMG42WUchem42JSoqWVhnazVy
KmU1cnB3Z2JBX1ozRHxybjZAOyU5ZTZEaEdOc2o8ZHhEUzRqZVdQCnpKYUdVYjJhZGFYbDFUM0df
RE5OJWROWHcjJTdBdmUxRihTKG00SVhNUjVjTlB2Nzw4dyQoZjBZWD5SP3EzOHtPZQp6QkJ2PWY+
T0EqTmJiN094YEVtdmQ8THAqbHsyYHtvP09LI2V7VD8zUU1NJSVhYSF0JTN3bUY4Kj9aWFNne09B
U3cKejhzWlctODFsaEpTMWhBPGV0X194NzAzOUhBMm59X15WPHZKTDwxd1FCazUlT0VKQ3ExI1lW
bXdjP1ojTjRgRTFHCnojbnRTfno9KXdZOT9ySWZidVBOSmhCPkgqUEdKKT5lJDU2M2xBYmAjP2dt
XzRjUnAmME9GdVVtcU0jUmpZNkBYawp6ZnF+bmN0P1g0eHNGdDQzOFJUPTU2QUQ7fS12UTxUNVdU
JitJTDstTjlue0JuQENSc0BqUV4/dXF9MjMxaj4tT3AKejQ1Nn1AcXEzIUUmISZpc3VGRGFne3ln
eyU0TCRFNWk8bE5CRz0oKzJIRmBiUXEyek1BZFI1Z2wwe35JUyZ1LTVjCnp8N1NzekItRFlYMDYy
fj1vKyR4YExxMil7QmtNe34hRlEmdCZPR08kWCEqRVo3a197ZG5pIW1MX3clT014Vkk8Zgp6UFE9
UWB4PiNGdGUreT5hS2dUIXRIMzBaKyUtOzZeQW1iaFkkQWs0PCRWWXA1Pz5GeT1eU3ZjO3FGSylD
WWk0TnEKemVYP357WSs8MUZgZnp7cGt3ek1oMllDfG1RTG9uamBmcjNkMXxXVXsraT9QTyRPSjRn
RyRNfCNGc1c7cTVJfWglCnpefFMtYXl9YSZmS1E0b3czeitDLT9mMkw+Vl8qKiojNU5YazhETCFf
N2Q3Rjl0flczTjFiXypyZTRwd05tfHpPIQp6NX4jcmJEWC1CQiVjdXIjQz5EeSpZJD5pSClBX2BL
N25URTA5RHFDI1BFcWJWRURZMjUhY1V5S0FXb2Upan5IPUMKeiZIJSojNU4wN21yWDBYUkZNezNA
ckN3bitRVUh3dGFMZlJCentee3E2TnMwJjtqciNoNjVffHJfWWV5M0gpS3FmCnpkMT5QSkRSQER5
VkchajhFT2I2PFkmMXB0VVE9d31aOzV9cWRgO1puaVNQVj0qdUV1eGNAUGdrU2RUTX1iSytDUAp6
bUpNV1p4dnlzOVljcGFVQW1wMDNveEw8WlNzd2xDVGZhNE4mVWZOSklRRzVLVyFqaUcyT1ZydlZq
S0lkQXZXdysKenYwbHBiWUUjc0QjdDhxPm8jPlImXyhBfldfSkByaTA2RD1odE47TUgtSDhBb21e
I1ZAS3ZjRF9CT2hPUTg1Zj5BCnpqV0grSlIqZ29nR0xaWEJ7TUcqeXZDPlVVNH5xN0B2anRCTitW
ez5qVyhkUEVYNFp0M2ZeZV9FY00/KW9gS2AlJAp6ZG47dkVlfXdZamMkNEE0dWd1R0QtPWtkNXxI
aio1e2tPKyRyZG9yO2BLeUQwV0c3RXZ6OztmfCV8XjtjNTA0WlYKeiRWLTwzc25UJC0xQ1d0P0VS
OFk8JEZJLXtFSnVBYVYkQ0dwYm8yY2Q8bH1EVGUlRnN2U29IS04jJiFmZ0o8KFhOCnppYEZ1eHB1
WDEtfE10T2t2NWFZQlc5YkxeUDRQRnltdCZMNWJmPzxxRmt8NVU8bH02JUNRZX5JJG5EeXNlN3de
QQp6cWtXYUg2OTJXSWRzaU9iZG16TSolYWVaIzkkaXVrOGJSd2dmY2xYaEpjWEhIN3JUSHBSN2Zf
VVVefmFAOy1rcUcKeiR7LTgwPWkrT0pIdCZhP2lgVFA/Z3RwS3p7ciljYysjWmFKPm1FO2ZnQ0dU
LWx4Y3R5MCtKYTM1JF5lMGYpK1RtCnoydn1yQD1uO1N5NGhSZztIXjIzNkFWcz5JSUJAdGxAYXpG
ZEE8TWorKHErO1ZKUkdNOEk4TDR5Qyh4PHRxfFpJQgp6cFZ5Q1RGKGJ4czEzVENkYWY7Nl5TZWpx
SGpjSGstbX16VVpTI0xkI2srMyk3YGJAenZ0WEthazdLM3ZlQEdFN1UKeiF7UyZVNypAVX02emxm
QTdDS2RJKnctOzVrKXBmPz50e1dfZ1N9Tj42Q1Z6NHFsLVBRdkl5PXd3SGMmN2hkYGByCnohTClq
VUMyPmJpJkhKeHp7aG9lJC1eYyZgLX5EZ0pLbHRCJVF7S25XbWJ2PHQtMUxuMD1De1NpWE1VaWM2
N305Wgp6MkR7RlNNKXdIek41bTkxdjNta0RMQUZKUG5Wb0YzeHFAKkRQfFJDY0tnQzZEZ2pkYUEr
d3lxOTc9cEVoUF59cUgKenNNYWpKSFZ0P01gaSNBQyY+aGI1PD4/ZjgrZ1NqYVlyOCVHQkUrPm5a
O0Nobj1BTWBaM3RYe19mQllhOVlyQ2ltCnpMbUdDV3hYMyt6PDJjODAxTVNZSUJyczxKMjtXJGNJ
IXVTNUpWRjQyUXltV2pWYEVzQyEkdU97bSFDRjZzdDdodAp6TFBubEV2NDhuVT8/dyM4JGozZWdF
cDA+SVR9RFhVKyRLeF9iX2M/IXhaPztWeSV7TVZaJUZ4d0BpN1IwaTZNPiEKemBPdUokamdfWERm
PGROdnBLYEotWVAoflpwWFpRfGplVz8rOHN5Xis8WU9tWksyQjNVSHFWUDItSyNOPUZpTndPCnpL
fGFFT141Xn19TSgzWDchSXY0WVJ5RzUhUyZFNGIjcnMkRmM5OTc8aU5zKDNQbW0xa1hUSy0raiNw
cz1DOVpHegp6aztaPm0yRXI/VHhYTXgyTGxLWDw/bEhQWUo4KF56dU8mZWs+a3kmZW5iPDVyOVhP
XzZtZEFBUnclUzt+WDl9XygKemZNblgtMnZ+NCMzU096MTIhSndDS3N1MilhMG9jPyVtRH54KT50
aWA8V0w5WmZiLWBycUMtN3tqYGpSeDBfe3ZwCnp5bTNzJiR0LVEtS3EhcDI1bzY5eWJzTlQzclQ/
QTclcSZMJkAkfTRkNXNLcVh2bkpRYjtCT3lNblo1YWJRKFhBUQp6cjBkJnUteCpsRT9fTmJiPitO
O3tIfj4wb24xPDN0R3M2WE8xZ210ZClnSFElT3FfcU9hYSl9MEV7ZlMyZTllKGAKenRhVnozVnkp
KWthe2ltIS07MiFrJHQ3IUp5aCNIc3UjWjglaVV2KHNDOSFwOVptM2dZeThrKzZfRkFrQ0FMYD9D
CnpBc18pVCQrNHZNeX0jSEptdFAlPEwxJEpCdkVAKnpPYDtkJWI0UkZ+Tl8hTFVeMGghMSlAZ3U7
Pnk5dWltQ3RSMgp6WU11NH5qQT8rS0RmRTIxc3YpWnp3ZiolIVllQGoyb3Rpa2owT2pzU01Ce0tH
KW47ezJHKFA/dF9jNVVYRVROM0YKeitRTzg/bntlKUpjRmAmMEpLfXg9WlNfN3ZxSXw/fShyMi14
d2NUZzJ0VTxaWHYxSn51Oy1HbSEqZVpTVWFTOSVlCnpeWEZmSlkmP3phZnslU2dfLVZrcUtfMSR8
WHZ+YjYmWkk3O1pyakZ0PC0odG9qfHlqPnJGQEw9WSVJWTtKaXxweAp6QlJyLShFVWE8IWhZZk16
WEhaWkNvck0/Vj9pRCFOWmcoSWJvNjtiWWFkOGRATz1tfk0hdGpfX3Q9KUh8bV59U00KeiRqN3Nn
dDgqQlA5IXRsWHJ7STt7NnNyVGM5fEg3JDF3N249K29MYUUkblkmfEc/dDl4bE5XdiNZanY7KmE0
VV51CnpvTWh0O2tqbzR7YClST3Q4cXlMdnYqM0l4YXo/LUw/UStVbz9kUnl3Nj12bEY2MjdxXks2
emtVISg+enU5MUtJfgp6MVptNiM2IXJWbnU/PkshWWlkc3N5YUQ7UTdCQ3VkVz13OD5fYUNZfCg+
YChGI29AckQjYEtKenR2eGoqRX1YdzQKekxCfjFsQnwlfT49SFQlRjVuVDhMNj5wZEU8bWA5R3h7
KTxranN4anFmWjdIdXk5I2kpWm4rTy1AV2Z+O01yKEdYCnpsUDZqPUB3c0lIXyRZeVB6JVZRKTBE
OzcrLU5HdWUqYyFLWU1lWEt9YyYmRnJUcHokKzkhWlBDR3k0SntJflleKAp6VWdNVmRoMmlETTV7
aEp9NXNJfmkoZjIocER5N3ImMDMzU3g+aTlAQE9nelolcy1NPlZKUVJfdyFEOTZxVz42OF8KeklA
ezc8Y3ghN0BlRW07PFNXU2FwSVc2eTxJU0VXJm5PWURKZCo/K1RaRHhwVnVoa1NvMDheY0FNRjVh
OUBOazN4CnokUE1KPDEwWEUoOTYtdmFuNDsxfT49PjZuJDlSJVVIWmBRVWl5PHlRM1VyKHRjbDM9
X09vNTM8SiVTa05CTmh6JQp6e1N8Yj1yUlJxanAkYFItO3AyPyg7KzdGbVooK0prWGZyZmlPYzFV
MismbG9vOTFBaiQkM1oobXdya0Mhalg4KFUKelUkX2o9YVojSypTSVMydWlTaG8lY3NGOXdrVlE7
NDd9aEtEKFM+N3xWUlNoVz5EZjNBUHVHQGJKUF54UGJufEA9CnowMEhgO1lePmpnN3h+dDxzNmpA
NHNlND5wOH0zSXdwNHR9eCp9PDk9QDkqNmZ6dEZqP3N1O0NEJkc4XnUtQD1yUwp6JmtBc2FEKjE4
MER6fTtiIXErRWQjdG5SJUIjTUdIKjshXi1TRVZPVGJCYUZAMFNsKVc9WFBmc1Y8biglVkIkYVkK
eiQ7RWE0YnQmc0UmJmM+cmA7alhAclhCezJoOVE4JEpPLXt0Jng8OHQ/d3UmfCltM0Y2THR6PkVu
a2FHTDE/MGRwCnoyT3Z9SkRSSnIyTVJjZUk9Jis4JHFFWm4tdjdJTnd1eHpvUmo3akZlQGRvI2hy
RlhENCE3P216QXpHI3NqaWxwOQp6YCp8cy1MJHxFbnotcns1KXkxKlByfn0rRF47PiVxYmt1SXww
Qn10OT10cn1BVnAqSiQ7WSo+c2QzYEZNNi0mY1kKejskaUpoT21kbSNsZzY/KnlTcEdSKVdZJVBE
JF9QQmc4JXJ8fEQlMiR4YyQ2MURqcn56aG1VNHkyXzN4Wk9DbmFYCnpTcSE0QiF5czV+R2EwbiFg
b0BhZlRIP0FtMyh0dmQ8IyRAPWB7PFNYWGUwMENIJCg/KHRWfW5zRmViSlJSdU9MMwp6JDZFVXw2
dHlYTUZteyFoKjsyQ3kwSzMhIWR8d2E0dXpVYzcqPE9QZTxvRzRPMHBLSnAlc1c8Q0FadkM5byom
R3kKej80XzN3TSk+fUUhOD9CUE9eaUo7N2F7IVJXejBtUWc8S0c/WSshMXlSVFJDQntWbmsxMX0w
YjchJEteITwjNyVoCnowR2FCdiNpZmdvamcqaGRBbWludGAobGlOaEljY2EmMnBeZEJsakg3YWM4
cUc/cytfSHN3VEBeZ2VCbkpRZldgMQp6P096RnVETjw9eW1tODNlT35eO0F8RkJtV1dOTm96NDFr
PWgxQUxmdHc2LWtuNEltJTBJMWZjVG4tTkQ1aXVDez8KelBxRmxJNll7WU9gUGtaQGVFZEpMQktZ
JGxIVTJ9RHk/fCtqT31aRTF5KXk0bnpoQmt7LW11K3BCaShfcUt9alkjCnomSUlEMmdaWlhVPEYm
ej1FVnJKbmpXfj03SmBmUjc9PStYNVN1O3stdktzbkdMV1dHNGtLSjQlJWgzUGlGYDROJQp6cX5w
WWE3bU5lP0NtKCNZcEZRKC1GcFpnQEo9R1NNRlRXeCNVd1REYyFrKFpaJTZmOzRxKjJBcFEyUU1s
VVpweCUKejAqd1liUXEwbVE0Y1NeJkBeQXJgeUVfcDhnbUw+MTVrOWFLRzF6VnZBdWtLKWtYT3Nh
e21lNGU/O1Bte2g+NT1iCnpgLXMqNXt4d2xzNHRHI29IVTMhckUoVz9eUk1gYWdpdlM/Jio/ck1C
LTByPmAtKjRSJVhaaX5XVUQ4WmYjdG5ieAp6JTVORUdwM2hIeDlFaHQxdnFCRFZhOXgoPyQ9Z28w
QSREXkFPZ0MzKyRIWGZgS2JUcDlCNk1lWGV4Znt2MX5xcWsKemEoanFYUUVwJWB6S2Y8QjlyNXp1
eWpiWDs2eChQa1RMMl9HPCh8SjRhYU9KSytsNklQb3p3UmlaWHk9b21SUip6CnpvJHIxVTc3R151
OSgofFZXblA8eE42K0pKSWZhR1ktcSROPElzTyEkbHNDMlRHfWVDK2lwISQzMHAjTkFuOEVBKwp6
bH4mMkJ3QlJZKVl6YSo2IUdwNXFAal5iU0ZzeFhFaTJqKUVjMXloY0B+ZT1NdWZqMCVhPWQobTkx
U1U0dkdxfiUKemsjWjRoeE93RGJoREdARitTYHZnejRSKCU+NEp5bj5kc2xuKGdoZlp7e1F5dz9Z
Rk17eCkxbSFETit9VDU7YzxNCno7JkQ4OylTZ1VqNyl8T1Q0QE9hPWVKZkMpUGtDeGxeZCQoO2hk
dllxWU5KbUAoanc/djMkI3h+KEVJfk1meForMAp6aX4+ZDUwMER4dWFVNCVIQlk4JWlvMzB+RHEk
dSZ5XipodiY0dilDYys0Nlh0Uzw5YWRQXjhHaSE/aXcoK348N3YKej9jQVBvNyo/QlpkIT5+M3te
eCU4ckMye01VMys+ZntyRW58QDd2JGsjaWRXV194RH5JZWBAYWdeX2BjeEpJa05NCnpANk9YdCU9
XkNpUHZiUj56VEI8SCtPZEVBX31qUHRQdjV1eXJHRVkhdkhxRjJvUVZecXI8YmpzJWl1bSk2RnZF
awp6PkJyUjNjX3kpbmROQkA3e25EZW9DR0ZQaj0rPGBXQE8keGdEYVBCYilWQ0NHbFNjc2V5X1FK
KHsrKT5wNzQ4MnwKekVpKlJXd0E9Ml4yYEY+RXtPSEhVWikqRXhvd0pQMkJeaHdMSWR8akIxWDJz
a2YyUSRfP0pjKGwpRH0xJWdedEQxCnpXalFEQldZfUxfOUp3OFQkRnB4Yz8qYUJze01mZVBXalhj
JXpkcS1Ya3loY15jK2VjVys9d2V0NEdBRmF7QFReQgp6clVTQHNKZEBnd0N4WSQkUFc7PiFLLXpM
P15JWjQhaGdaNVlxeU5xU1hTNWUmO2wrNU9ePC09THRuWFRtK3FEcEsKelpSelQpbjtyVnZefktI
WjJre3tMJjNLcHtGSkZ8dkZ8T3hYLT1GUWBlMykrYmNgOXFNN2k0UjliXnk2REFiXzBmCnoyX1Rh
LXBZMn1ndUZwN218TmhRYV93TjRYPyhjOFUtcUx6IVZYSiQ4YEJLO0JkQFNDVTxDVFB1YnFEWDs9
aTEtWgp6JVcqaUA/VmR9RmolI1dzcXhUKlQ3JmtmLXpxOVNuVyE3YGRie04qSTBNZFRlbXQjLUwp
ZnN6SXUwKWBrMz9TcUIKekNmfm1yIVRya0E/dk04ODZ3aDZ7PE1HMCRyPSNDTG8+bDFOb3FmKDlB
M3ErS1o7cCpJWkBscjwoSz5TSU13SUVZCnorUGQkdjI5UGBQeVVfanVSXnJnTipYUWk1WUNyJCV2
NmxNZ0tWZmFSe1VyQTZ0dntSfTY1NEhfa05kcW5ISnxvZQp6YVc1Vl8rV0spWHVLMmVYcHs2YkdZ
QE9AQTUkcDI3PiZMfnxPRlleTyh0YUR9RlV4VV8+aDt+MVdCdkk0ezJNPkkKeiNrSXdJLVQmSylf
MmJEVz4mR3VAO0Z4YWU8VyRoUWI7T2hTdWZAZXRya0JlYmtzemopNkZyOX56MkNEejxTU0Y+Cnp3
OGUjXnk3cVFHX09qaU5pQGMxTmckTnwwRmNKQE91WVVWc3l1UX1LKSVuXyRgNXNQYHclLSRxTSl4
eH1KPE5XdAp6KGU3aF5QSmtLUlgzQkgpdnliPl4kb1ZHWVp+TFBVekNaclpkamgyZEs2M3pCaiQ8
YT97Rk9KbUheMjZeP3JVJHAKeio9XnNTU1IpKXNiPHtTSnIqQWs0N2pzcWAoXnQ0XjhSSz81c05S
Wm9OZWR0MldqITllVUxYSHcjezFEPkY3ZUR8CnopPTllS1pAJj9UNCpacFk1NV5iYygzbF4jMmhq
KXxkJEdsREdIe0lWWn1SPSsjZiNsSF9sNytId3hpP0UkQWp6Iwp6eUkrflNpPHV2ditsI0d5T0Ur
U2hgX3FSbDlRQlI9PD9WVmF6X2FsUiE9S0pNUUdSVzcyKit6amt2I3N+Q3ZveT4KemQrM189VGZH
dn1Eey1MUVFITm9UP2BTRHZMT1ZmenlYIXlUdztnbC1YI3xZM0AjMThDJWJFRHZkeUR0dXUjPF5M
CnpAYVlASm1kNEhIVXZIYX48NFEmQ1lESURVZTB2YGN1bT5MPjlFTFMzZlY4YDhDIUBifUh9MGZv
Kl5EUVRfdX1OYAp6KWZ2Wkx6Y01GKXc3ZFF3MD5xYlFvT0FWaD58d2t6PEpHVFE3K0gmMiNeOytI
UnFvR2ZGVWEoTGtKZ1d8VVZKbSYKeno4MzRxP2ReSCUkTFZgR2B2M0Riek8/VX16UmptPy01OCY1
U3p+ZzAlKCh+dnVNYiQ0d1RsPj5ZPHUyako8KTRGCnpJRkAhZTtMem5sWUBxcEo+YG1UX1BfLU4x
dy09OH1kbyEqfGN6Ti1LP3doKjwqTj9HaDwrKzhBV0FuLUlfMllBSwp6N31tIUFqcmJldHw2ODJ3
P1BeQHtFNXFgZWZBamFjMyhNPT5eQHI9ZDwtVUV5ckxFN3N7UGZAV3dJbHU+VXo8NG0KellWcnIl
P2ZIRks+M0tyYDtuWXpHYDttRWYrZ3Qxe2RFPjFvZHQ9JmFXJFNKYHE5V2MkODJSQWBAeHNSdVBX
RUZqCnpVMzs1Y1cqeGZLWmc8b24rTFBadXkzSyVhRj5qOzVfJiRnSHl6eTxsQ3MwLTNuRkdrTjx6
dTQ8KHtiUTk3QU0/KAp6OT9SKERAdSR+JmhrbiQ0SmdMN05tO1ApSXM8UiNnSHNXP2VtIVhHWXdM
PVc8TVc5JmlJaDV1ODtAeGdAO1pDPWAKemMmRlFuWXE+OGt5JUVRKHBDNDRseUdzfGtafHEkaUpz
Qk1HNGQpaj4/eW0yPjVYWm18K3NkflhoY2NYdHQlNHNkCnpUfFY7ZXZqPmlMNypeamh6RCkwIyph
ST9lWTFoaEhpNjxjc19TPn54YGpAc0I8aDh4b1NJPXBDS3xWZz5GcyNYWQp6VTBiKnFkJE44IWBL
aE5xZWtUcU9gUEIhbkpvV2o+UGg1eTZQIy1WK1diI3VfZVowMUd2KWhPZTdPKG5vPGlsI2IKemo2
JTJuQEJYWWl3ZkxhaEo5RGh0S2VHflYla2tEZWo8PmF5P2tqN3stOClhK15XamZpS0UyZF5lZD08
a2xlY0s2CnppbkolVG4+fGxQK0hFaGJGMyRgZ2t1QUZReFIyWDI/JklZTURTeTUqWE41OVoqaVpS
IStvU1E7VFc9ayNCT2BRNwp6dU9FTSYwaV5BczhtfUtgb3N6Szs+Iz9DclRSI3A3QWFtRGBhZF9r
WCNme05BXjhVKDNJSzNLQWBZI01CPEs2Z3MKejg/N0piWUBpejcrNCpCMWNRQGtEc19wVVJvNW8t
MGRFWUtiYXhUYFZBTkgmdHZqbVJtX1dzKTErbUFvQnYzc2lmCno8bGImdiE3VFFVWm9WQTsyYWlx
bjJidzs8cWxwaEA5cmAoT3YoYm1nZC1qJkpGSytmK2xLa3dLb2BqRWZ5TE1yPQp6KGBSRTNYQjwp
Y0FnPWF5PkdZR1l4NjZTYXl2NU40NWteKlQ/WnN1Jl9lV1JZSkw7Njl5JjNoaXBWZ0tqdzs2bF8K
emBzY3FZSXc7enwxaXJ1bSZ5KmclYEBRZVJOdXNlb15mTjlrNCRSd1RHYDtuJXttOGF1dFgpfi1V
PD10bjUhWWhOCnokRSpgYCtwVHV2TiFDVUBMME95ZTFtKW5+NGkzWWJLNHh8Tndkd2NROylMRkQw
TklNTHVeRiRPYWxmNTY1Y147RAp6QyFmfHV2dWdgQzxGbXM4JFZNRDhiMiVQbC1gS2wwe1VlWTN8
Rkt4PndZP3g4I3lKOCptLVRwbnklVUVSWkFRSj4KejFJTiZ3K3dFcUJsZ2F6fUpIUCooKFNPZUAr
fn1eKTJfVG12SUpfMUlQfGFHLWg0czd1YSZRPmRvQiRGfXJzZjVaCno9a31rVTgkaX0wdn5KN14j
Nk1obXE1SE1pKCFBSlN5cyo3WkVpTFlUYj8yPmtrO2o3clZzPW1NY0R0d0ooen5hMwp6eH1EWDdr
M1drNHpZJHlnUHNhSGtlYW93SEtGT2NXY29wfUpORW47KF9qX3VfLXxzS1N7cl4hcyFSVDk3VzZT
LXEKemd7WkNuQ2YjUzwzLVoxMWVlWStwZSo3czl1Wm9MUWIkaFhRWWJXMENLZ3R4PjtffXtHR3Up
YjI5RCZ1e2piTCRsCno+TSpGSUVZSFIpSzBOOVJNfGBlYnRZZnIoalFlbHYjSX15eThmfW9kNkts
c09QWnJ5USFQP1RUKmg0aWVmTmFEYAp6MGhpLVNjNW16dFRSJCR4VVhiJSQ+P1E3QUtCQ0hfS1hv
PTxqYFlyY1RuUjdNazY4bzkoVlpROWM1UHwxeVIhRGIKenlVbUZzT2pxdU8meil+fGA8dGlaQj4j
ODtpYTdTXjx1X3YyIV87emZZN2ZRS21rPDUtQ3B7TX09bkVAUHVWdFJ4CnotQWl2aFVDYTJaKC0p
NnYqQnY7eF9RMWpLKzI4dFRyKDJBMHdmWFNpUXNETzxVbFAyJXdwV31kKSglT1g4NEJYLQp6R3U5
cEJJdTg5X2szVl9qYC0kS0dCZnN2RzFuTFZzUXZtcntncFV6dkppeU1uYm1yKGJhcXtSV2E3Mlpw
MmlCZ0EKemJTTDhoYWI1c3ZfcVAkZF9TZCMldTM8KCRfVXdTSWYkPjc4LUd3LTBWNVBnKVR8TV5w
PXooP2clYF5UdjlrMEshCno2I0oyUDJYMktNSjsyNV91NyluLXkmdzx3O35CYEQ8PTxUWCpLPTsr
JVlYMD56Q1JlQEVDMTx4YX57MGZgM1UjcAp6X2htWnshfExCbHdHP30lUElSa3IlbF5acytSM3Jr
V0FFQzl6MDx3KnQ7RWtiOV9NPihGSDlZV0YhM0YkQGpgMHQKemFEayhPe2BoOFpGVE9NaUFtamZa
XzVTKEE1NCsyYzA/NSo0YlAjWHRNS0M5cXw4ZVpicTAydj9oJHArTjVnMW5FCnpsRUNmIWpNYUYl
YVBMZ0ZiJHFBMCpEa2pkPVdSP2NANWNFZ1UlJTc7MW13OWA1NDJVcHRjVWZOVmxULTFfaDtRPQp6
YGxta0l8OUB1ZCQzWmB+b2ZpP21jMHRgWCU4VWNZXnRaT3hlVkc/UCtWXn1xRz1MMSlvN15eMGpu
PEYqdjNefHMKelE1O2tfWXlablojY2MhNFFYRkVxeUZZOUxTS0E5UmJPVE5NM0QzbV9uKEtTZCRL
VClsYH5RUWpGWGpwMzJVNEhrCnp6YVBZVGpyKn5Pd0xBYUchRV4yMVc4SlQ8fEZ+T3Q9WHwlYmVq
KG0yIyVtb2RjVU8pJClhcCNua3BTPVlvZDVDNAp6KWNHSWR1QkgjYThoXmdNZjlZNUh8TmdKZGBN
WWw2cWI7WjZOXyVsX2pNeWJ8Y3BkWktLYVB6UGs7TDJIaz07amMKej9QNmRMPDQzbTcmdmBrVyhT
NDUrJUhnfHheIWRaQCtQU1RkJH5wVzZ8MEQxVkNoJHhGPFkjNW13dU1ncm93aCZ2CnprS1R7MVl3
eVNWQTFgIWdlPD09U199bFk7Oz5wLUQrNzd7Kndge30lWSY7VXJ5SUhweTBweGYqWG0zeUtsM2pf
OQp6RlVIezs9T2M3bmhePlV7an1HUDdrSVNiMUFXbEdocytsOHhOO19CTU9kUiVkWXhqakN6V1Zn
MUszSDd1SzMrUTAKenl8NDtXTFZXLUxFNz9nekt+eV89SHB8bnU4LUhlYmU8JHtXI01QR0sxakAt
cCpxR0cjZF9JMmZBT0g1Q0pOYCVpCno7VUM2Y2tUMWA/Wjk1Rj5lbXJyVHdZKz1tbGtVUVV7czdY
eF9rMylAe2Iwc1A/ZD4rdEVxJkQ4aXR+WmBtWXcraAp6eyYtPW5kdHR4LTNGUHxYe0oqfkViYFFW
KSU+RFFxWThUKFJGPihJTHg5P3g8LXE8OzheRHRnWWArbUd5QE1lMzkKelV+Pkp6Sk1sVUtAI14j
T0hgP0FXd3YjKDFtVWJANHI1UlY3WW5PY2VKT2p1P0RXQj1YNzdDfTJDRXdqJGkxbE5mCno1QSRC
VXpaIWRMVXRhOX4+VldtKnNhV3NiOG45Pk1aZz50XlJeenlyPkdNRU4jMiR0VkB1R1I+K2Q0QU4j
WDB4cgp6Nz8te0h7clRhKl48ejVfYTRrLVd6YTFCMjdfeGwwdj54bGFHdT9+KCFgNj4wM2xCem5M
RUB6WTU4ZUdRTzQjXzEKemZBX25HYGFiSVh6Wj10ZygzZl8pKSQyY3d2JT0lOyhYelhHd21XKDNU
aXhQblkpJn5Ibl5qSTdZOzVRfHxEKjRHCnolSF5LRGE8aCY7SUklWVV0WUtWTHRWYG11JXpleEdz
Uzh3MC0pPUxgUUVBdThTJjZJYnR4Um5uWThQaX56c0BoKwp6KzM4TmlhajZeZXxGKk1zQk5HM2Vf
Pm8pamNSNX1UOXJaQiY8UHE8T3lxZnk+K25qKHRtaGlyIXorWHhMaU9zSXYKelBPS0NAWSE5YUtw
eFN+KmQhXipiPHdQN2hGbDBHNytHODw0U1VrJmQmZ2JLYSYjPyRBcXJtTjVgQlBJXzdLU3RtCnpx
ZXpTa0Z8dmZWOWFBY2owaEVNZE5kIWY0MG1yY2dqVT1LZDApYz1paUNfcGN3dmsxa3AjKjZPdj9H
Y0xDTCUoPgp6dSZBc3A4VzAtN21JVjtnRUZuZSszMXBpbVVFfS1fXldIRDc+ZVBNcm9faEQ1ZCV5
MnxyfFFDPlBhLUBCUkxnVmQKel9kez51LTdvUE9LTXdhRjJFdH17KHUta2teUnReUHYqUj4xY2pV
I3lyN29Gd0M7WFUxbF5DSFdpX3xMZHEpYytXCnotbGJEYWB5NE05NDh4MHQ4VFUxM007aSpidUpI
V21xSylfPWpBNX1TVUFXcCFYSXZ1dTxXPGpwcj51UWBUSEhmcQp6VG54anBGS3VBcm1BaTAoaX5v
Umh3MGVfPm5Wbkp4aWNPWUJ6Rz5HZ1FUa3opekM9b3EoUG9US3JRJERCNGI9bFYKend3JlZpZzUw
M0F4ZDJQfV87fjdKS2hpREtNP3Q5al9sNjIpdXVadGNTc1JNNypvY1ZDMiVHTUpqJjxCRWxMbior
Cnp2YzV9Y1dyYnFIdn1iNjxqTmhuPVZEaHxLWExWNyF4eExUKDIjc3toTnBrfE9XLWNlSHtsWCly
THFLTkdwVHo0fQp6YD1sMmRHUDZ2dFo9aylaWTxaWSEqc2AkTykyKmVhIUprKm5SSzJYOEhuczh7
aWE8bWI2SF5mZT5fWGQ5WVVwXlIKemFeUThfRkore2BjSDlpalV3c0tQQGFOKk5ka2tBSHZLMj9s
UDJvfiZyP31YKm8mNUdteXp0QjBNQWdMIzleVX5zCnpuNk5xaiRmZ0Z7ND1sQHJXN2w0PjF8R3NW
JCVGS0QzNiR8NCF6fjtweVpgaz8tQFNmK3l4VyUqa1ViYGVRTnwlPwp6Snlzcit4JjlzN3t0QVAz
dHh+aEtDSkRIem9aTHB6Q3EweElCYzZ8aENFKC1wY3U+cXMhWjN6K1p5MHoocXZEI2IKejc+PWp9
VCsoISVhQDN6QSErOUh9S0VDWWs3Y01HX14/UipHeX53QFMxVmdSbyU9JG05UW1oJSVRTTljcGx3
UjdyCnoxMHZWdjJGTDMxbj42VDVhLTl3VD5KRE9hMzJWSFVUaFgkeUk8cXg2KnY7OHVicGtya2w7
PT1YQGg7SDhDJVhXYwp6YzVZM0JvZ2g8KlRqVypPWmJZPzt2cnJZZntNPHl4OGx1WGhLJHd+OVIm
emUhPEtfOD1OKE9ER0RyQjtCJGExbGMKejxMUl8kZ0RWQ0klY1ZNQVd6PE84KXNJTnhaTlUlV19s
VGtQKEQ0IU9fbnFDIWFwOHhYZyU5TTQqPUM/Z3kpNlp7Cnp3dVcrKkI9WVF+MH5henFwdHZnc2Rv
YGlGZG9pfHMqJXorZmV+T2cxRTs7Z1hvMVIlJEFVU1BJaiU/dmptM0ZxRwp6SmFfKGo3eTM7cF9Z
cGZzQ0FxYjhTfm9AMUl7RUdEV2tfWSFDO2lBfERzSE4xV01OLUQ/WkUwU0BHKi0xcC0/JHsKelE1
ek42LWo9TkJwe25+VCNPbk9lTFBIRl9qbzd1fE9iOUhoOXtGfGRPYkp+K1NPekMmKmxaS1ZaPUYk
bz11T2pvCno1RV5gRWR8aHAoZWA1eXNjcGNRXyNSK3phVSEyKnFyMlpnMUFlSkJATyVnfmshRCNT
eWA3dl4lNih0N1NfYkgqJAp6RGkqUmQrN2l7Nz5XXkhDUExTQVVGSENpTj1kbEtrJEQqVG5uK1lV
T2RiR3dAYT83KyYqM2IrK0U3KjIyWipEZHIKekA+VGxLUUJuS3BuSDdWWEpHMEdDb3dKSVhTPlk8
Qyg9amZ8b35LUFJEe3JXZE49VWw3UVIkcXZmdVVpUWNKb188CnowfGp4VVlnMlElI2tDdnFmN1ZZ
UjtRTyQheWBOfHxuNVFgVlY/OGFERkQqSCVhMWo5TU5UbUNHQ1FYakBqZ0gkRgp6JGdxYldRUilW
UVphWjc+bTJfN0pPI1M4bjdxXlg0JFVOenNRVkp3VEZwMVpQSH0kJV9DQVhGbG5FOygrfDRJIyUK
eiN1Wn1TTFE7RmxEfGJROXVgckVLIzQ9e0ZQal93MXYlVDl5eEp2PiZFMEM/RWJRYVkxeT1GIzI2
Ozx7VD5EPT09CnpBUHw5PkwkQHN7UCs1IXt1TX5JMzZzRW1RbDg2M0hpeiFsR0AyT30/ZnI+e29w
VWItRkZJMEMqSiptX3khQlNMbAp6VzBNdSpKXkBKO2k/by1pe3wtdnFrciF3Mzx+e2JoeXE5THNf
Q0t4dF9+bSEoX0lpKW9qT1dAdnE+T2lpJjVyVzEKelJoVXJnIz1hKkpVNUswWlI5bCVPdmVkVSMy
XnBWQ1dIeXh0ODltVmJKdChjMXN6JFZyNGxnMjtOZ0ktcnE1Z0JPCnp2I3NBdk9fYXl2MiNeT1B3
XlRZKUxkKFM1Q3ZsTDxqKHl4UTFvOFo1ZDVFPW0mKE5YUj5FbCVUOUlKTW5BMzVgRwp6PHd5b3gj
RGc8cURsQlIlV1MweCk+RzJBKF5eKVZZM3AlfFV0fDU5U0pPN0cwUH1OODxhQihfVEJZTSQySW4r
fGsKekcwYlJFOGx+azt2MSohdjNudnZLQEl4JE9NKU5jRll+eFVaTEFGOEJvMW1ic0xwNzsoO25M
UWg0UEJBRks8fWNXCnplS1A4THNCcVhuVTNlNE5nMm1Ceys9OHcpdkFCOXhDZW88Zzg+MkQoU3Bu
eDdYaW9oPSljcTd6KXNJaUZ5bUxrTAp6VDxHO1NYKEVKb2E8WHZaMU9YPlhlRn5JWj14N0YzNnFT
JFFhKSp+PDZ2NW49N3tpVShpUTR4Q2ZqRSl0e00jUk4KekQqJClPYEExcHB7blk4S0NAbHhAVHgq
XkBlYygoeCo/SGxfbnAxSjVVZiFBXzAmRlNrd0JIZiFud3NYajJiZk9uCnpkQGImanduXng5aFcj
PXFkWW9vbWJqe3NtbTMzQVlFKnphQXM7Y2wxOHtwMjxDaUEmRUBxIXhWUUpBflheP29wPQp6WFpF
cCZjcmVXYVMoUyU5dzQyUj1qaF5TckUoKTAoKnlGOGg4QnFQXjljeGFZUDBaSFg7Z2dKdkF0c0Yt
a2dqTFcKenk3WkJvTCpIeT5ZZGhAaGwweHEwWjJzR1NvMClCWnQ7TUlBQUdpQTdtcmlEOGM4RXRN
SzlGeXd7VSM+YVRUPWQ1CnozM1U1Y1UmLWJXJGliVzIlWU9NZih5fEU7R2QzPml1JmRzP0pvczBX
VH1xTnNQVmt9ZHQkK0NnbjJ6bms4Kk8odwp6ODJOMiUmPmlzYTBMdjl6Sjc4bzFgdnwhMmZWKG55
TlB0Sl5SeyNTNzM9bjwrJFB4c25BWFd5TTFqd19OREl+fjMKenpZJWZ9RH14eWZGcmZtYm8waWM1
aD9QT0MzfVIoNHVlXio3el5wcntOZFRlQGg/UE9DNDYxI2dgMWxuZGc3TytECm51WXZMIVNvRS01
c3F1ZVFnSkQzcnt2S0FzUkc3dmEwZ3Z4fnprT2A0dnBAWEBAMjF5WQoKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3Rv
bS1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MWI2YWQ2Yy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Vm
ZmVjdC1jdXN0b20tcGFyYW1ldGVycy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSAr
MCwwIEBACi0gICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tcGFyYW1ldGVycy5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAyYTA3YTJlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSw2MiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAg
ICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IHRoZSBjdXN0b20gZmlsdGVyIHJlY2VpdmVzIHRoZSBj
b3JyZWN0IG51bWJlciBwYXJhbWV0ZXJzLjwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJl
ZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAot
ICAgICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBz
dWNjZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgIC8qIFRlc3Rp
bmcgcGFyYW1ldGVycyBvZiB0eXBlIGZsb2F0LCB2ZWMyIGFuZCB2ZWMzIGluIHZlcnRleC1vZmZz
ZXQtcGFyYW1ldGVycy52cyBhbmQgdmVjNCBpbiBjb2xvci1vZmZzZXQtcGFyYW1ldGVycy5mcy4g
Ki8KLSAgICAgICAgLmZpbHRlckEgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3Rv
bSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LXBhcmFtZXRlcnMudnMnKSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVyc3BlY3RpdmUgMiwgCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRleF9vZmZzZXQgLTAuMDUgMC4xLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGUgNDUgLTI1IC0xMCwgCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwLjQgMC4yIDAuNSAwLjUpOwot
ICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJCIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzJykg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCks
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0ZSA0NSAyNSAtMTAsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlIDEwLCAKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGV4X29mZnNldCAtMC4wNSAwLjEsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwLjEgMC45IDAuNSAw
LjUpOwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJDIHsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJz
LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwIDAg
MCAwLjUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlIDIs
IAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0ZXhfb2Zmc2V0IC0wLjA1
IDAuMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRlIDQ1IC0yNSAt
MTApOwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJEIHsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJz
LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRleF9vZmZzZXQg
LTAuMTUgMC4xLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGUgMTUg
LTQ1IDEwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXJzcGVjdGl2ZSAx
LjUsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaXhfY29sb3IgMC40IDAu
MiAwLjUgMC41KTsKLSAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAg
ICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImZpbHRlckEi
IHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9
ImZpbHRlckIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxp
bWcgY2xhc3M9ImZpbHRlckMiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0g
ICAgICAgIDxpbWcgY2xhc3M9ImZpbHRlckQiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5w
bmciIC8+Ci0gICAgICAgIDwhLS0KLSAgICAgICAgICAgIFRlc3RpbmcgdGhhdCBzaW1wbGUgY3Vz
dG9tIGZpbHRlcnMgc2VuZCB0aGUgY29ycmVjdCBwYXJhbWV0ZXJzIG9mIHR5cGUgbnVtYmVyLiBZ
b3Ugc2hvdWxkIHNlZSA0IGJsb2NrcyBvZiBjb2xvcmVkIGJhcnMgd2l0aCBkaWZmZXJlbnQgcm90
YXRpb24sIHBlcnNwZWN0aXZlLCBvZmZzZXQKLSAgICAgICAgICAgIGFuZCBjb2xvciBlZmZlY3Rz
IGFwcGxpZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS10cmFuc2Zvcm0t
cGFyYW1ldGVycy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJzLWV4cGVjdGVkLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE4Nzc2NmYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJz
LWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi08IWRvY3R5cGUg
aHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgZnVuY3Rpb24gcnVu
VGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byB0YWtl
IHRoZSBleHBlY3RlZCBpbWFnZSBvbmx5IGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQu
Ci0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgIC5ib3ggewotICAgICAgICAg
ICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAKLSAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlk
IGJsdWU7IAotICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKLSAgICAgICAgfQotICAgICAg
ICAuZmlsdGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgx
MDApIHRyYW5zbGF0ZSgxMHB4LCAyMHB4KTsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6
IGdyZWVuOwotICAgICAgICAgICAgd2lkdGg6IDE1MHB4OyAKLSAgICAgICAgICAgIGhlaWdodDog
MTUwcHg7Ci0gICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGNsYXNzPSJib3giPgotICAgICAg
ICAgICAgPGRpdiBjbGFzcz0iZmlsdGVyIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJzLmh0bWwgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTM5NDU2My4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBh
cmFtZXRlcnMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAgQEAKLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgdGhl
IGN1c3RvbSBmaWx0ZXIgcmVjZWl2ZXMgdGhlIGNvcnJlY3QgdHJhbnNmb3JtIHBhcmFtZXRlcnMu
PC90aXRsZT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgewotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVy
ZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQo
dHJ1ZSk7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0
aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4KLSAgICAgICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0g
ICAgICAgIDxzdHlsZT4KLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBkaXNwbGF5OiBpbmxp
bmUtYmxvY2s7IAotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmx1ZTsKLSAgICAgICAg
ICAgIG92ZXJmbG93OiBoaWRkZW47Ci0gICAgICAgIH0KLSAgICAgICAgLyogVGVzdGluZyBwYXJh
bWV0ZXJzIG9mIHR5cGUgdHJhbnNmb3JtIGluIHZlcnRleC10cmFuc2Zvcm0tcGFyYW1ldGVyLnZz
LiAqLwotICAgICAgICAuZmlsdGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LXRyYW5zZm9ybS1wYXJhbWV0ZXIudnMnKSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSB0cmFuc2xhdGUoMTBw
eCwgMjBweCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApOwotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICB3aWR0aDogMTUwcHg7IAot
ICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDsKLSAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgot
ICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9ImJveCI+Ci0gICAgICAgICAgICA8ZGl2IGNsYXNzPSJmaWx0ZXIiPjwvZGl2PgotICAg
ICAgICA8L2Rpdj4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAgVGVzdGluZyB0aGF0IHNpbXBs
ZSBjdXN0b20gZmlsdGVycyBzZW5kIHRoZSBjb3JyZWN0IHBhcmFtZXRlcnMgb2YgdHlwZSB0cmFu
c2Zvcm1zLgotICAgICAgICAgICAgWW91IHNob3VsZCBzZWUgYSBjb2xvcmVkIGJsb2NrIHNsaWdo
dGx5IHJvdGF0ZWQgYW5kIHRyYW5zbGF0ZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0
LWN1c3RvbS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3Vz
dG9tLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgzOTdkZTguLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgot
ICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IHRoZSBjdXN0b20gZmlsdGVy
IGlzIGFwcGxpZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQi
LCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVy
ZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAotICAg
ICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAg
ICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNj
ZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgIDwvc2NyaXB0PgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRl
c3QoKSI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcu
Li9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xv
ci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKSIgc3JjPSIuLi9yZXNvdXJjZXMvcmVm
ZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpLCA2IDExKSIgc3JjPSIuLi9yZXNv
dXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LWV4cGxvZGUtZGV0YWNoZWQudnMnKSwg
MyAzIGRldGFjaGVkKSIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAg
IDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVy
dGV4LWV4cGxvZGUtZGV0YWNoZWQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29sb3Itb2Zm
c2V0LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMyAzIGRldGFjaGVkKSIgc3JjPSIuLi9yZXNv
dXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSkiIHNyYz0i
Li4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBU
ZXN0aW5nIHRoYXQgc2ltcGxlIGN1c3RvbSBmaWx0ZXJzIHdvcmsgaW4gc29mdHdhcmUgbW9kZS4g
WW91IHNob3VsZCBzZWUgNSBibG9ja3Mgb2YgY29sb3JlZCBiYXJzIHdpdGggZGlmZmVyZW50IGVm
ZmVjdHMgYXBwbGllZCwgZnJvbSBsZWZ0IHRvIHJpZ2h0OiAKLSAgICAgICAgICAgIG9mZnNldCB0
byB0aGUgcmlnaHQgd2l0aCB3YXNoZWQgb3V0IGNvbG9ycywganVzdCBvZmZzZXQgdG8gdGhlIHJp
Z2h0IHdpdGggbm9ybWFsIGNvbG9ycywgNCBzbWFsbGVyIGJsb2NrcyBhdHRhY2hlZCB0byB0aGUg
Y29ybmVycywgNCBzbWFsbGVyIGJsb2NrcyAKLSAgICAgICAgICAgIGF0dGFjaGVkIHRvIHRoZSBj
b3JuZXJzIHdpdGggd2FzaGVkIG91dCBjb2xvcnMsIG5vcm1hbCBibG9jayB3aXRoIHdhc2hlZCBv
dXQgY29sb3JzLgotICAgICAgICAgICAgTm90ZTogV2ViR0wgbmVlZHMgdG8gYmUgZW5hYmxlZCBm
b3IgdGhpcyB0ZXN0IHRvIHN1Y2NlZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZh
bGxiYWNrLXRvLXNvZnR3YXJlLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1mYWxsYmFjay10by1zb2Z0d2FyZS1leHBlY3RlZC5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzhlNzFmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLWV4cGVj
dGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4K
LTxodG1sPgotPGhlYWQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAg
IHBvc2l0aW9uOiByZWxhdGl2ZTsKLSAgICAgICAgICAgIGxlZnQ6IDVweDsKLSAgICAgICAgICAg
IGhlaWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA0NXB4OwotICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogZHJvcC1z
aGFkb3coMTBweCAxMHB4IDEwcHggYmx1ZSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9o
ZWFkPgotCi08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJib3giPjwvZGl2PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXIt
ZmFsbGJhY2stdG8tc29mdHdhcmUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDI4ODA4NzUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9maWx0ZXItZmFsbGJhY2stdG8tc29mdHdhcmUuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDU0ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPCEtLSAKLSAgICBUaGlzIHRlc3RzIHZl
cmlmaWVzIHRoYXQgdGhlIG9sZCBmaWx0ZXJzIGFyZSByZW1vdmVkIGZyb20gdGhlIHBsYXRmb3Jt
IGxheWVyIHdoZW4gdGhlIGZpbHRlcnMgY2Fubm90IGJlIAotICAgIHJlbmRlcmVkIGluIHBsYXRm
b3JtIGNvZGUgYW5kIGl0IGZhbGxiYWNrcyB0byByZW5kZXIgdGhlIGZpbHRlcnMgaW4gc29mdHdh
cmUuCi0tLT4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVBy
ZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVl
KTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAg
ICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIGRvbmUoKQotICAgICAgICB7Ci0gICAgICAgICAgICAv
LyBBZnRlciB0aGUgb25sb2FkIGlzIGZpcmVkLCB3ZSBrbm93IGZvciBzdXJlIHRoYXQgdGhlIHNo
YWRlciBpcyBsb2FkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0g
ICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhl
aWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAvKiBGb3JjZSBhIHBsYXRmb3JtIGxheWVy
LiAqLwotICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDAp
OwotICAgICAgICB9Ci0KLSAgICAgICAgLnNoYWRlciB7Ci0gICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQudnMnKSkgZHJvcC1z
aGFkb3coMTBweCAxMHB4IDEwcHggYmx1ZSk7Ci0gICAgICAgIH0KLQotICAgICAgICAuYmVmb3Jl
IHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBkcm9wLXNoYWRvdygxMHB4IDEwcHggMTBw
eCByZWQpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLQotPGJvZHkgb25sb2Fk
PSJkb25lKCkiPgotICAgIDwhLS0gCi0gICAgICAgIFRoZSBleHBlY3RlZCByZXN1bHQgaXMgYSBn
cmVlbiBzcXVhcmUgd2l0aCBhIGJsdWUgc2hhZG93LiBBdCB0aGUgZW5kIHRoZXJlIHNob3VsZCBi
ZSBubyByZWQgb24gc2NyZWVuLgotICAgIC0tPgotICAgIDxkaXYgY2xhc3M9ImJveCBzaGFkZXIg
YmVmb3JlIj48L2Rpdj4KLSAgICA8c2NyaXB0PgotICAgICAgICAvLyBGb3JjZSBhIGxheW91dC4K
LSAgICAgICAgZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQ7Ci0gICAgICAgIC8vIEhhdmluZyB0
aGlzIGlubGluZSBmb3JjZXMgdGhlIG9ubG9hZCBldmVudCB0byBvbmx5IGZpcmUgYWZ0ZXIgdGhl
IHNoYWRlciBjb2RlIGlzIGxvYWRlZC4KLSAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcigi
LmJlZm9yZSIpLmNsYXNzTGlzdC5yZW1vdmUoImJlZm9yZSIpOwotICAgIDwvc2NyaXB0PgotPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1jbGlwcGVkLWV4cGVj
dGVkLnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzVhNDhlMmQwMzcyMjAyZmRk
MDQ5OGY2NDE1NDU1YTgxMzY5OWExNy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAx
MDcxOAp6Y21lSTJZZSpEUDZ2eXcoUFBRdlB3bD17UklyZFAqNTgxNCVaZGhHJk8pWCEmKUckKFd0
dzN6ZUVMNnl5SDZ4NTMKelFoe2l3NW02K2xwR3JpX14tSjFZR0xualAhRUIyVj9PfmFpK1p8bjxg
PUwqTGpQcSQ+PUg1TUwmJDsqZiZpUyp8CnpYKHtwVXVELTRhQUB7QHQhJWw9MEpWST15KHVGKiFL
VCVta0swLT8zR0U0RmY9alJuMUo2PyNRZ3ZiTVY1bUM4PAp6SGRrMDU4RFo0d2JoLU5jdT40NCEm
WnlVaTN4M3l3JEh8X2VMX15IKFFmQk9SUGZLQmptdG5eX2VAKEotTURIT34KejF6RTg3VD81K1Er
Jm5obSt1ZlBiNWJBI0sqLU9XJC1FUk5jSnJ5cV5oVUp1TTkqZkIwJDwwcHBuNUkrPDUyUUNVCnoq
O3QmNG0wbW03KnxaR3YpI3B5WUQpfHZ2O1JoP15jLVJLcFJJYClxWDdsZ003MzFvdVVoYH40U0dn
Um9pRkIoJgp6PzMoPHBxdkd0ckZ2WWV+Y0A0STtoXlh4SXJ2aGhncX5RQ3I/MGY0TSEodHt4WVpn
aHh0QVdBIV52JmZiaXNTayQKekJoP0daQjF2czB5SU85d0V0MztlcSpUQEBkTnN+YE4/JkpNIXU0
Z1BYME43eGY/Q1pseSUwPSFJT005Vlg+WXYwCnpsYDxkNVYtTnBTJUVLLSVIRS1IQEA7cWZlN0t7
RS1qZypJX3AqJFdjcFoyQjlwQW5KMUQ0T3pjQXt8NDNBVkJqfgp6Mn5INFBGPXozRDh1VUxEPkYk
KiNeUD5VQj82Mlg/cW4oQEhzQWhoPUhORVJVeTlmOyZYZnRFaWExOH5ZNEdpPDUKelY9cU9CR3tQ
fFVZMVFIJFdKJHFkJCZxdmxNa2BxTTJHJDEzT3VNRjBeOUAoTXNKZVB1TD9RaTI2cjRWQ1QhUV56
CnpvWGp7KDd6ZUlFUjJVWXszWGtDaWsodlpgZy1qSnRaUG9sPTctWHckWUhBd3B5aUclZjZCdmkk
UWR2aWtPcmpoegp6VGAzd3ZDPSU2KT13YTdCalhiMTw1eF9DZXVUWCRYIWxINDF0N0AoKHA0O2g3
VzxCeEhIVlJmakpRbWdzUVZldXMKelMpKjBFUjxfSSYyRy1SVVAtdH53N3tPTXpUKChASlFyMHxx
dGZRUGVCX2Z9UkIrN0NoMG02c1RkZGomTkVWYEI2CnpxJTBkKmNGbmlxV1o1fEAmdHNTOVU2Zl5r
VklWOUo3VWBoRFgoM25DMCspeXM1VTRGdSY0aUxtclpPT3JMfDZiYwp6WD9kVjtrdVZBRTlCRVRB
Ymgha1IoRUxqczZVOztlbFExZXU5VFFCQDFkfHt2TkY1VWgzan51T0VQJH0hKVo7KXsKdWtXQHp5
N0M9fiM9bTVma1F8a3Z8O2glKkNZcnE0Q0NtVmlyJnFlWndPX1VneVZyYm94UX4zdXUwSDNTPwoK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFp
bnQtY3VzdG9tLWNsaXBwZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBlY3RlZC50eHQKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9tLWNsaXBwZWQu
aHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3Vz
dG9tLWNsaXBwZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmY5MmNjMTku
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVw
YWludC1jdXN0b20tY2xpcHBlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAot
PCFET0NUWVBFIGh0bWw+Ci08IS0tIAotICAgIFRoaXMgdGVzdHMgdmVyaWZpZXMgdGhhdCBzaGFk
ZXIgZmlsdGVyIGlzIHJlcGFpbnRlZCB1c2luZyB0aGUgZnVsbCBzb3VyY2UgaW1hZ2Ugb2YgdGhl
IGVsZW1lbnQgaW5zdGVhZCBvZiBqdXN0IHRoZSBkaXJ0eSBhcmVhLgotICAgIEFsc28gaXQgdGVz
dHMgdGhhdCB0aGUgY2xpcHBpbmcgcmVjdGFuZ2xlIG9mIHRoZSBib3ggaXMgbm90IGFmZmVjdGlu
ZyB0aGUgZmlsdGVyLgotICAgIFRoZXJlIHNob3VsZCBiZSBvbmUgbGlnaHQgZ3JlZW4gYm94IG9u
IHRoZSBzY3JlZW4uIE5vIHJlZCBzaG91bGQgYmUgdmlzaWJsZS4KLS0tPgotPGh0bWw+Ci08aGVh
ZD4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICB9Ci0gICAgICAg
IGZ1bmN0aW9uIHJlcGFpbnRUZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcigiLmJlZm9yZSIpLmNsYXNzTGlzdC5yZW1vdmUoImJlZm9yZSIpOwotICAg
ICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuY2xpcHBpbmdfYm94
IHsKLSAgICAgICAgICAgIG1hcmdpbjogMjBweDsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsK
LSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVu
OwotICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOwotICAgICAgICB9Ci0gICAgICAgIAotICAg
ICAgICAuZW1wdHlfYm94IHsKLSAgICAgICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgfQot
ICAgICAgICAKLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDE1MHB4OwotICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3Jl
ZW47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIC5iZWZvcmUgewotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Ci0gICAgICAgIH0KLQotICAgICAgICAuc2hh
ZGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNl
cy92ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMpIG1peCh1cmwoLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgb2Zmc2V0IC0wLjUsIG1peF9jb2xvciAxLjAg
MS4wIDEuMCAwLjEpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLQotICAgIDxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9mYXN0L3JlcGFpbnQvcmVzb3VyY2VzL3JlcGFpbnQuanMiPjwvc2NyaXB0Pgot
PC9oZWFkPgotCi08Ym9keSBvbmxvYWQ9InJ1blJlcGFpbnRUZXN0KCkiPgotCi0gICAgPGRpdiBj
bGFzcz0iY2xpcHBpbmdfYm94Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGVyIj4KLSAgICAg
ICAgICAgIDxkaXYgY2xhc3M9ImVtcHR5X2JveCI+PC9kaXY+Ci0gICAgICAgICAgICA8ZGl2IGNs
YXNzPSJib3ggYmVmb3JlIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC5wbmcKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwNzM2YjBiZTVkZTBlNjViMWE4YzdjNDM3ZjBhOWQxMzQ3
MTg1ODAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKR0lUIGJpbmFy
eSBwYXRjaApsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgMTA0MzUKemNtZUFTQE4/KG9s
SHlgdVZCcSFpYTB5fnlVeyt2WVYyYT5pMUIlUWxZYnBSem5rQjlnQ0NNNDckPVN1RnhlUHtUCnpO
b2szUjI4cWUkQ1dlVmRoTCZiMmhETWVLVz1WO3VpTjsxfFgtVGBMLWRAVlVwYl9mbjt1dW9GYDFh
PDsrej5fKQp6bXB9Ji1NbmhHRnBpPmRBNzY/PXxCYHg0bDdRQ15MY31lOSMrckU4IXg0OVNKUShJ
ajd5VFdHUHkmcDtyNEdmRy0KekVGMXl+NGg7dCE5XjYlTVdgU2AqO3tQfSQ2eip8QXFgflVXdTwl
VGYrXlBXODBUU1g3YyNvX2pqZnczPFBtfTxYCno1TD9IMHhEYE4jRihZJHxue0VkfXNQWCVIITlS
YUt6MXx2TVNALXcrX3h1MG4rNWg/UjxJbT5uYXtwZkUrd0syJAp6S1Ipak51YX56Xm82aUhnNX45
JlVAQmAtdyZmTmhCaHhqckFKeV5iJDZYWC1Ibm1IVTIzaEhtMTVDU0h3SlFKU1gKei1LcXhuYSlE
QXAhPC1HPXMmSWh8QV9mayMlQ0ZDWUpNS1ZkMTdwITR5KHdAM2h1e01ZbmZHRnw1JSNKQkp2ezE9
CnooR1ZGO0JrKVd6bnJsWU9rPHBUTXc1fVBnZU1qM1BxYjs9MnJYczh9RnhxJD8/TXtxI3VtKXxI
dmpRfEVGellIKAp6MmlZTShfa3IrKXR2aFRHV21xQzN2cjB8UFJZYjNQNFh7QHxzJHcpZXB5TXYx
PjA+bEVqRnR8dGs7PjhCRnEjYGkKemJIaXdFMDF1Nmh3djxMJmoteEdVKiEwfEpaV3pyQ3FxJCk7
SC1JUEtOODhEeD9jfnZSQEBQQUd3NEtiekcrR3ZwCmdtVzZ8JEVOdEJXYiV5WHhSWDEkYDtIcEZo
UGdnJmVieHNMUTA3bzQ9Q0lBMmMKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVkLWV4
cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFp
bnQtY3VzdG9tLXJvdGF0ZWQtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAzN2Y5NjkwMzhkYjJlYWUyN2FkYmIzNzZjN2Y1ZGNhY2QxYmFiM2JiLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAw
CkhjbVY/ZDAwMDAxCgpsaXRlcmFsIDk5NTUKemNtZUFTQE4/KG9sSHlgdVZCcSFpYTB5fnlVeyt2
WVYyYT5pMUIlUWxZYnBSem5rQjlnQ0NNNDckPVN1RnhlT141CnpESGZMSVd8b08ycmlsaXxNbi05
QXNpfiU+V35sfjdERiNXRlgoYE0qUyQhQjcpSmk+Rjk3OEc/LWA/RHE4eGtudQp6OHJZTTspWVdL
STdrPFRYPnhDJjM2KWJQTWwpSW40STYzRjl2aExsSylBSHYoKlZLSjxaZVU8IVYmTT1fYUE7cz8K
emJhO0B4QStaU3x6e3ZFVWd7OHc4Qm5NVGJBU3xGRHhtNkxTMTFRU1VBdzRRVDhhfGB4MUR1SVFe
VCVsVUZ0VzxXCnplUzRLRl9RdCpjY2pVY3U8Tk4qZkUhb1ROYXNLKUJgU2FjUktXdzNlTGM7LSRB
TihnMER1ZlVmTVMtQDBMdGJzfAp6VHYpdlZ0YjdDbzZxK0E7IWJ7U0kxOFctP2M3RlhAaWQ1SVFJ
VytMSnNsIVlLPmZPJTdeeUokMD56dkB+M29JX2QKeiRZPi1uNF9jdnRNREIyTE9vKXo7UzRZJWcy
YG50NWp1e1BeKEtJdWZuP1B3YHc0OHg4fDNeejthOXUtRy1FYHBpCnpYUGYha2g0PVgoRGxDU158
NGpkdzl8PUpeUXtkWEAxUGhDWVRXJHhVbVNiZG0jNU83cVp3SEtxJnVJRD4lXiMhWAp6MUVOVmtU
MFZ9fTR+VWxlWCNGcitLYUFFN3F4SGpSe1F3KSQ4bSU4az4mTWFoNWpMMVIrQ0NVPEFCP3NTTSV4
RlkKdT9Tcyt3MGk7JE9aNkElY2s0RD1eXmxLbWVWYDkkYiolPlNRPjshUHQ4aVN7K3BVWE9AZ2VD
d0tTPXdhKQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmls
dGVyLXJlcGFpbnQtY3VzdG9tLXJvdGF0ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tcm90YXRlZC1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tcm90
YXRlZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9t
LXJvdGF0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJl
cGFpbnQtY3VzdG9tLXJvdGF0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWU3NDE3ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Zp
bHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2MiAr
MCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTwhLS0gCi0gICAgVGhpcyB0ZXN0cyB2ZXJpZmllcyB0
aGF0IGZpbHRlciBzaGFkZXIgaXMgcmVwYWludGVkIHVzaW5nIHRoZSBmdWxsIHNvdXJjZSBpbWFn
ZSBvZiB0aGUgZWxlbWVudCBpbnN0ZWFkIG9mIGp1c3QgdGhlIGRpcnR5IGFyZWEuCi0gICAgQWxz
byBpdCB0ZXN0cyB0aGF0IHRoZSBjbGlwcGluZyBvciB0aGUgdHJhbnNmb3JtIHJlY3RhbmdsZSBv
ZiB0aGUgYm94IGlzIG5vdCBhZmZlY3RpbmcgdGhlIGZpbHRlci4KLSAgICBUaGVyZSBzaG91bGQg
YmUgb25lIGxpZ2h0IGdyZWVuIGJveCBvbiB0aGUgc2NyZWVuLiBObyByZWQgc2hvdWxkIGJlIHZp
c2libGUuCi0tLT4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVu
YWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0
cnVlKTsKLSAgICAgICAgfQotICAgICAgICBmdW5jdGlvbiByZXBhaW50VGVzdCgpCi0gICAgICAg
IHsKLSAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5iZWZvcmUiKS5jbGFzc0xp
c3QucmVtb3ZlKCJiZWZvcmUiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHls
ZT4KLSAgICAgICAgLmNsaXBwaW5nX2JveCB7Ci0gICAgICAgICAgICBtYXJnaW46IDEwMHB4Owot
ICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAg
ICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7
Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIC5lbXB0eV9ib3ggewotICAgICAgICAgICAg
aGVpZ2h0OiA1MHB4OwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICAuYm94IHsKLSAgICAg
ICAgICAgIGhlaWdodDogMTUwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAg
ICAgLmJlZm9yZSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsK
LSAgICAgICAgfQotCi0gICAgICAgIC5zaGFkZXIgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1ob3Jpem9udGFsLW9mZnNldC52cykg
bWl4KHVybCguLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzKSBub3JtYWwgc291cmNlLWF0b3ApLCBv
ZmZzZXQgLTAuNSwgbWl4X2NvbG9yIDEuMCAxLjAgMS4wIDAuMSk7Ci0gICAgICAgICAgICAtd2Vi
a2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwcHggNTBweDsKLSAgICAgICAgICAgIC13ZWJraXQtdHJh
bnNmb3JtOiByb3RhdGUoOTBkZWcpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLQotICAgIDxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L3JlcGFpbnQvcmVzb3VyY2VzL3JlcGFpbnQuanMiPjwv
c2NyaXB0PgotPC9oZWFkPgotCi08Ym9keSBvbmxvYWQ9InJ1blJlcGFpbnRUZXN0KCkiPgotCi0g
ICAgPGRpdiBjbGFzcz0iY2xpcHBpbmdfYm94Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGVy
Ij4KLSAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVtcHR5X2JveCI+PC9kaXY+Ci0gICAgICAgICAg
ICA8ZGl2IGNsYXNzPSJib3ggYmVmb3JlIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9k
aXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20uaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggOTZmYTM4Zi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsNTEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08IS0tIAotICAgIFRoaXMgdGVzdHMgdmVy
aWZpZXMgdGhhdCB0aGUgc2hhZGVyIGZpbHRlciBpcyByZXBhaW50ZWQgdXNpbmcgdGhlIGZ1bGwg
c291cmNlIGltYWdlIG9mIHRoZSBlbGVtZW50IGluc3RlYWQgb2YganVzdCB0aGUgZGlydHkgYXJl
YS4gCi0gICAgVGhlcmUgc2hvdWxkIGJlIDQgYm94ZXMgb2Ygc2FtZSBzaXplLiAzIG9mIHRoZW0g
YXJlIGdyZWVuIGFuZCB0aGUgbGFzdCBvbmUgb24gdGhlIHJpZ2h0IGlzIGJsdWUuCi0tLT4KLTxo
dG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAg
fQotICAgICAgICBmdW5jdGlvbiByZXBhaW50VGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAg
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5iZWZvcmUiKS5jbGFzc0xpc3QucmVtb3ZlKCJiZWZv
cmUiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAgLmJv
eCB7Ci0gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OwotICAgICAgICAgICAgbWFyZ2luLWJv
dHRvbTogMTBweDsKLSAgICAgICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRo
OiA1MHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgIH0K
LQotICAgICAgICAuYmVmb3JlIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsK
LSAgICAgICAgfQotCi0gICAgICAgIC5zaGFkZXIgewotICAgICAgICAgICAgYm9yZGVyLXRvcDog
NTBweCBzb2xpZCBibHVlOwotICAgICAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cykg
bWl4KHVybCguLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzKSBub3JtYWwgc291cmNlLWF0b3ApLCBy
b3RhdGVCeSA5MCwgbWl4X2NvbG9yIDEuMCAxLjAgMS4wIDAuMSk7Ci0gICAgICAgIH0KLSAgICA8
L3N0eWxlPgotCi0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2Zhc3QvcmVwYWludC9yZXNvdXJj
ZXMvcmVwYWludC5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci0KLTxib2R5IG9ubG9hZD0icnVuUmVw
YWludFRlc3QoKSI+Ci0KLSAgICA8ZGl2IGNsYXNzPSJzaGFkZXIiPgotICAgICAgICA8ZGl2IGNs
YXNzPSJib3giPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJib3ggYmVmb3JlIj48L2Rpdj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iYm94Ij48L2Rpdj4KLSAgICA8L2Rpdj4KLQotPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZh
bGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5cGVzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUt
dHlwZXMtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGQwMDRk
MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQt
Y3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDI3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyBkbyBub3QgZXhlY3V0ZSBpZiB0aGUgYXV0
aG9yIGRlZmluZXMgYnVpbHQtaW4gYXR0cmlidXRlcyB3aXRoIHRoZSB3cm9uZyB0eXBlIG9yIGRl
ZmluZXMgY3VzdG9tIGF0dHJpYnV0ZXMuPC90aXRsZT4KLSAgICA8IS0tIAotICAgICAgICBUaGlz
IGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRlc3QuCi0gICAgICAgIElmIHRoZSB0ZXN0
IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNyB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMu
Ci0gICAgLS0+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7Ci0gICAgICAgIGJhY2tncm91bmQtY29s
b3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0
OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hl
YWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48
L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4K
LSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5
cGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9t
LWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggZDU2NWJhMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2ludmFsaWQtY3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDY1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyBkbyBub3QgZXhlY3V0ZSBpZiB0aGUgYXV0
aG9yIGRlZmluZXMgYnVpbHQtaW4gYXR0cmlidXRlcyB3aXRoIHRoZSB3cm9uZyB0eXBlIG9yIGRl
ZmluZXMgY3VzdG9tIGF0dHJpYnV0ZXMuPC90aXRsZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBh
c3NlcywgeW91IHNob3VsZCBzZWUgNyB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0t
PgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0
b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQotICAgICAgICAK
LSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8vIFdl
IG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgc2hhZGVycyBkb3dubG9hZC4KLSAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5
bGU+Ci0gICAgZGl2IHsKLSAgICAgICAgLyogSWYgdGhlIHNoYWRlcnMgZXhlY3V0ZSwgdGhleSB3
aWxsIHR1cm4gdGhlIGVsZW1lbnQncyBjb2xvciBmcm9tIGdyZWVuIHRvIHJlZC4gKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgIHdpZHRoOiA1MHB4
OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgIG1hcmdpbjogMTBweDsKLSAgICB9Ci0g
ICAgLmludmFsaWQtY3VzdG9tLWF0dHJpYnV0ZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZzJykgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAxLjAgMC4wIDAuMCAxLjApOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLWEtbWVz
aC1jb29yZCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvaW52YWxpZC10eXBlLWEtbWVzaC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9t
aXgtY29sb3IuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMS4wIDAuMCAwLjAg
MS4wKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hLXBvc2l0aW9uIHsKLSAgICAgICAgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS1wb3Np
dGlvbi52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBub3JtYWwgc291
cmNlLWF0b3ApLCBtaXhfY29sb3IgMS4wIDAuMCAwLjAgMS4wKTsKLSAgICB9Ci0gICAgLmludmFs
aWQtdHlwZS1hLXRleC1jb29yZCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KCcuLi9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWEtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAx
LjAgMC4wIDAuMCAxLjApOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLWEtdHJpYW5nbGUtY29v
cmQgewotICAgICAgICAvKiBUaGlzIGN1c3RvbSBmaWx0ZXIgdXNlcyBhIGRldGFjaGVkIG1lc2gg
YmVjYXVzZSBhX3RyaWFuZ2xlQ29vcmQgaXMgb25seSBhdmFpbGFibGUgd2l0aCBhIGRldGFjaGVk
IG1lc2guICovCi0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvaW52YWxpZC10eXBlLWEtdHJpYW5nbGUtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxIGRldGFjaGVkLCBtaXhf
Y29sb3IgMS4wIDAuMCAwLjAgMS4wKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hdHRyaWJ1
dGUtYXJyYXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3Vy
Y2VzL2ludmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJyYXkudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDEuMCAwLjAg
MC4wIDEuMCk7ICAgICAgICAKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJy
YXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2lu
dmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJyYXkudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4
LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDEuMCAwLjAgMC4wIDEu
MCk7ICAgICAgICAKLSAgICB9Ci0gICAgLmludmFsaWQtYXR0YWNoZWQtbWVzaC1hLXRyaWFuZ2xl
LWNvb3JkIHsKLSAgICAgICAgLyogVGhpcyBjdXN0b20gZmlsdGVyIHVzZXMgYW4gYXR0YWNoZWQg
bWVzaCB0byB2ZXJpZnkgdGhhdCBhX3RyaWFuZ2xlQ29vcmQgaXMgbm90IGEgYXZhaWxhYmxlIHdp
dGggYW4gYXR0YWNoZWQgbWVzaC4gKi8KLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1
cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLWEtdHJpYW5nbGUtY29vcmQtd2l0aC1hdHRhY2hlZC1t
ZXNoLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3Vy
Y2UtYXRvcCksIG1peF9jb2xvciAxLjAgMC4wIDAuMCAxLjApOyAgICAgICAgCi0gICAgfQotICAg
IDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBj
bGFzcz0iaW52YWxpZC1jdXN0b20tYXR0cmlidXRlIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJp
bnZhbGlkLXR5cGUtYS1tZXNoLWNvb3JkIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlk
LXR5cGUtYS1wb3NpdGlvbiI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLWEt
dGV4LWNvb3JkIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtYS10cmlhbmds
ZS1jb29yZCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1h
cnJheSI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC1hdHRhY2hlZC1tZXNoLWEtdHJp
YW5nbGUtY29vcmQiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4
cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3Vz
dG9tLWZpbHRlci1zaGFkZXItZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggOTJhYzA2ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1zaGFkZXItZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9u
dWxsCkBAIC0xLDI1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+
Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
LSAgICAgICAgICAgICAgICAvLyBXYWl0IGZvciB0aGUgaW1hZ2VzIHRvIGJlIGxvYWRlZC4KLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIG5vdGlmeURvbmUoKQot
ICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0
cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkIG9yIGZhaWxzLgotICAgICAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4K
LSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJub3RpZnlEb25lKCkiPgotICAgICAgICA8
aW1nIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgc3Jj
PSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAgPGltZyBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIHNyYz0iLi4vcmVzb3VyY2Vz
L3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJl
bmNlLnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1zaGFkZXIuaHRtbCBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXNo
YWRlci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZGYxZjY5Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmls
dGVyLXNoYWRlci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTMgKzAsMCBAQAotPCEtLSBUaGlz
IGZpbGUgc2hvdWxkIHRlc3QgdGhhdCBjdXN0b20tZmlsdGVycyBkbyBub3QgcmVuZGVyIHdoZW4g
c2hhZGVycyBhcmUgaW52YWxpZC4gLS0+Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxo
ZWFkPgotICAgICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IGN1c3RvbS1maWx0ZXJzIGRvIG5vdCBy
ZW5kZXIgd2hlbiBzaGFkZXJzIGFyZSBpbnZhbGlkPC90aXRsZT4KLSAgICAgICAgPHNjcmlwdD4K
LSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVy
RW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7Ci0gICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICAg
ICAgCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAg
ICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2Fk
aW5nIHN1Y2NlZWRlZCBvciBmYWlscy4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUo
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAg
ICAgICAgICAgIC5pbnZhbGlkX3ZlcnRleF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2ludmFsaWQt
c2hhZGVyLnZzJykpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmludmFsaWRfZnJhZ21l
bnRfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXNoYWRlci52cycpIG5v
cm1hbCBzb3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hh
ZGVyc19idXRfaW52YWxpZF92ZXJ0ZXhfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXNo
YWRlci52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmJvdGhfc2hhZGVy
c19idXRfaW52YWxpZF9mcmFnbWVudF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZz
ZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5ib3RoX3NoYWRlcnNf
aW52YWxpZAotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBtaXgodXJsKCcuLi9y
ZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBub3JtYWwtc291cmNlLWF0b3ApKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tIFRlc3Qgb2YgaW52YWxpZCBjdXN0b20gZmlsdGVy
IHNoYWRlcnMuIFlvdSBzaG91bGQgc2VlIDUgYmxvY2tzIG9mIGNvbG9yIGJhcnMsIGFsbCB0aGUg
c2FtZSAtLT4KLSAgICAgICAgPGltZyBjbGFzcz0iaW52YWxpZF92ZXJ0ZXhfc2hhZGVyIiBzcmM9
Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJpbnZh
bGlkX2ZyYWdtZW50X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LSAgICAgICAgPGltZyBjbGFzcz0iYm90aF9zaGFkZXJzX2J1dF9pbnZhbGlkX3ZlcnRleF9zaGFk
ZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xh
c3M9ImJvdGhfc2hhZGVyc19idXRfaW52YWxpZF9mcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVz
b3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVy
c19pbnZhbGlkIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
aW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZvcm0tdHlwZXMtZXhwZWN0ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZvcm0t
dHlwZXMtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTdiOTg1
Yi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQt
Y3VzdG9tLWZpbHRlci11bmlmb3JtLXR5cGVzLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwyNiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlcnMgZG8gbm90IGV4ZWN1dGUgaWYgdGhlIGF1dGhv
ciBkZWZpbmVzIGJ1aWx0LWluIHVuaWZvcm1zIHdpdGggdGhlIHdyb25nIHR5cGUuPC90aXRsZT4K
LSAgICA8IS0tIAotICAgICAgICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRl
c3QuCi0gICAgICAgIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNiB2ZXJ0aWNh
bGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuCi0gICAgLS0+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICB3aWR0
aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0g
ICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAg
IDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+
PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZv
cm0tdHlwZXMuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1j
dXN0b20tZmlsdGVyLXVuaWZvcm0tdHlwZXMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggNzkyOTQ0MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci11bmlmb3JtLXR5cGVzLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw1NiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAg
PHRpdGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlcnMgZG8gbm90IGV4ZWN1dGUgaWYgdGhlIGF1
dGhvciBkZWZpbmVzIGJ1aWx0LWluIHVuaWZvcm1zIHdpdGggdGhlIHdyb25nIHR5cGUuPC90aXRs
ZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNiB2ZXJ0aWNh
bGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xF
bmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0g
ICAgICAgIHsKLSAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0
aGUgc2hhZGVycyBkb3dubG9hZC4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
LSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAg
IH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgZGl2IHsKLSAgICAgICAgLyogSWYg
dGhlIHNoYWRlcnMgZXhlY3V0ZSwgdGhleSB3aWxsIHR1cm4gdGhlIGVsZW1lbnQncyBjb2xvciBm
cm9tIGdyZWVuIHRvIHJlZC4gKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1
NSwgMCk7Ci0gICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAg
ICAgIG1hcmdpbjogMTBweDsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS11LW1lc2gtYm94IHsK
LSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNl
cy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJveC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
IH0KLSAgICAuaW52YWxpZC10eXBlLXUtbWVzaC1zaXplIHsKLSAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNo
LXNpemUuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlw
ZS11LXByb2plY3Rpb24tbWF0cml4IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShu
b25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJp
eC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLXUt
dGV4dHVyZS1zaXplIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1
cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS10ZXh0dXJlLXNpemUuZnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS11LXRpbGUtc2l6ZSB7Ci0g
ICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMv
aW52YWxpZC10eXBlLXUtdGlsZS1zaXplLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAg
fQotICAgIC5pbnZhbGlkLXR5cGUtdW5pZm9ybS1hcnJheSB7Ci0gICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXVuaWZv
cm0tYXJyYXkuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZh
bGlkLXR5cGUtdS1tZXNoLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBl
LXUtbWVzaC1zaXplIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtdS1wcm9q
ZWN0aW9uLW1hdHJpeCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLXUtdGV4
dHVyZS1zaXplIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtdS10aWxlLXNp
emUiPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImludmFsaWQtdHlwZS11bmlmb3JtLWFycmF5Ij48
L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vbWlzc2luZy1jdXN0b20tZmlsdGVyLXNoYWRlci1leHBlY3RlZC5wbmcgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL21pc3NpbmctY3VzdG9tLWZpbHRlci1zaGFk
ZXItZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzU0MzYyZGVk
NzJiM2RkOTZlYjA5M2MxMGNkNjQxOGQwZTI4YTIyLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgps
aXRlcmFsIDEyNDMyCnpjbWVIT1lmekpDN0E2cmFTMyQ4dDFwJD9jUnpWYiVLbXg9bk03az1qYzFr
VGB1LXZMdlB5ISk5dTQ9Xl9NQXIqTgp6QWtvSWxjMzRIRmZINVMxczN+I0BzMkhQIUFjejRJa3t9
NUk2M0QqVG50WXZ8KzFjckFZayVaTkVefjZlXlMkVDEKeiZ3MC1DZWx0MDtYKFB0TGNEQWpCZ0By
QHB5MHgxdkVUKHVfU2lyeHVvKGU0SUBjWnxJazQ1Uj5VIzc9QGxOaTRuCnptJEFucFZhNClnTnZs
QHZLcD8oZWp6fm84U21xeSluQmJwKUBjJWp9Q0B7JT9oZkQ0QXFaU3RhXkNIKS17K3N8Qwp6NU8y
c1lQWDVyVXRJUXFnLTBlTFAxMyZLU2tHPkFhKjlPbFpGR25BP25Hcy0zdnA/Wl8hVE59bW15QCRN
bz1VWVQKeis8JF5QQkg4b3gkKTdtPiVrcG87WnAxemtobk12NVBkejsmT2NtPmpxcl5lRyFZalUj
PXFnNlNzVE1HfXJMfmg2CnpucmNEd3dKdl5rQ3g+QTcmTV41NChmZDQ9O1Bpe2JUaEZLR3NQTE9C
Y2NyZDFUfWcjXmU+NTUzKkdPQEA7a0d8Tgp6YDZxWH1GKXxFcGRwT3puSkdqJFRufXVGNnRsQH1Y
Pz55O1A5RDJHZHBtWXNndWQ2LTdWWn1IMGoqSGxmYDkjSFEKejZ8Yn5EPGVHeiR2I01HLVJAYztm
VSZTa2BrSUVEa2FSK1YmYSNPUVlNdEQpZ14/QX5MdFlZY0RgSGd6RVNUQUd9CnorSntDZzh9N1RI
PXgkcTRebT02eDQ7JDd5RCQ+N2tFPmtwVldqK2dyO0l2I2c4VUNqQWp1TWdfVmg3Q1g8dzA2KAp6
bHhlWkdZaz12KGNhckkqNEVOcHYzRUU4SUZ5M1ZoR1JnJn1IRmg9Z089YWpoWGZeWU1eSGg4WXF6
c1AwbHNrKXoKemZyUGlRVGo9RnVGVkJWKS1OU2FGbSFxI2Y5fT9icSl8WDtrZitSe1dmQmlTbHJj
aiZsbUppQSFxcXU+e096aihhCnokOHVFVy1WRDVDPzE4RjcjcEBrWUBwamthPlVHbW5yWVNpcWt5
VyE5JFhnK3QpUT51fkJSJjBEOWRnYnZEJl5vSAp6RGtVTVNJfj9vRF5jd0JeUE5SfllFfjZLWEdZ
SVhWSU9gX0hLYjJgXmQ1emc4WWJsbWAlZXlSN1JAQi1qbU5RUlcKentkPi1RJGJ4NCYyfjJCKyFE
RX5ecChgVD5AKnN1WGdob3cpWjElU3MmQGo+TGlva2lNei1aV0B7YVlDUlFtKlNPCnpWTzl5ZEE5
byZ4MWglPnhWRGdfXyRoMns5YnBWc3VkfjsmJkBOfV9rYH5+SSQqJmtJRXJ0Zj4+bUBJd2JJVzI1
Kwp6SGY1eChTR1QxPSM3O0VhVXZsQz1LZjUxdVM9cm9+bk1KeztneWN5MFZLKEJTayh0e0NKekxe
WF5lOUBFSXVZeVgKenNVZkpZM31RYWxqZzMmeyZXMylTQ1ctTS1ESiZ8YGRfdk8hKU8xSWh6PH5h
SmE5YC1mZlopUWlhPjA0KHd8VVJwCnpBU2VUVUh4KkxCfEVjZUMkdXFgd1JtXnQ0O1dPfEEjaWNm
TyFEVEkxXmBNVXo5VktZdHJqNTA/aykkb2ZaWTQ7ewp6RTR7cXFTVW9QO0AzP31hPlh2dWgzdmpf
YFZ+SytnYCNMVFN2UEhhNzMyTG04IU4tSm49b15NYyhBe202WT4jQkQKem1QakoxKjt5KGR0Uzcw
NHRYaVZpaDYhfSFhZiFSOVZQYTR6XmZjSmolKVAkNEhWVkQhSm1IOUc9VismPFokZlhwCnotK21Q
ZTBqRXVXMXVxMD9uXjRnbD5ZcWBfaH1ySjNhaDErdUlJKW1hSkljayRMfmN5dkUxYihBWkFxQUdi
SmNBRwp6Q3A4M0J3ZTF7Tm5ZSXRGY3F+OGd2Vmc8ZCEkaHFod09wMTA9KipfNWs0Z3NAYE98cipV
bzctN3ZmZjl+IT1LNGkKejd4bSotZy1FbEFNPUt7aXdsQkU4MWJ9R0tVbGNfQTttRSRePXA1RHM+
e20oQjdDKmB5dkcjIS1WQzJTOTVqIzNwCnorVHRpRWFyPmdXcFg3MiN4ODBTZXkhMytQa31MSHFW
YnBDeWR7NWV9T1dRP0krI3JPfD1gXzhSJmZxdXVPfV4rZwp6dVZwPHdeUnghSmowR0JyVkp8NVF7
RT83WE9RT0E/VDwoVUAwSlhMYWEzc3NeSFZwIXczc21ePmdLNVZoNzhZUGwKek9rbnlITkRsIz9Q
TyRFRWc7KzJ5bzZ6fHdlTiFQIWJxTFYzKH1RSVlPVE9RRXM9Syg9MFJsflh1ITZhIzt+XklKCnoq
dGlPd1JATnQ2KCU5UXJmRHhgMiNJbjs4KDxTUFRfUj9zS2M3cV82Z1dyPWIoYTN9dD4xRDA+KjFx
XzMkPD4mdQp6MngmQFpieD80b1pnP08qcV5oYmFAVjFnZExSfUd2KUUoLWVCMVRiWUAqfl9NRFN6
bko9IzMlTip4MFQ5Mjk7KnQKekZvYHNsMG1qPG9UWkBwdEF4ZTk1ZU43b3RFI3g7cCVCcU0zJkdw
UT0oJGtuR1pPKThNWCM3SFptV2UjUzBlUWJxCno5fFk7PzV8XjYyUG1reWY2VWBicykmVTlHJnww
UE1WPC0qOFZjMzkjVHxKd3QlcnZZQnVCO3dYe09jNH5sUGUtZwp6WDE4ZEVuYWJtU2BkNytmakZk
ZH5vUlolez5ZLTxYP2BvWmhuNXN8Mk9YJGctMlBmYCslaSNPMDMoYytAeCtTX2QKeilGPG4/PntC
bnEwNmN9YkBVVz95eDFLZDxiZWRQc3QzVGBGKXlpdXNjUzB4Py1RQH5+UzNFbDElMistYUpPSlM0
CnopeXRVPjMqUVNzViMqSlRBPyo3LTVHKDtjUzBFT3xSRzhJRVNFdHoza1hnUFM0SiEtXmZAckdS
VyE0TTVffCFnSQp6MjtoPGMxZStRYktgaTtKeUlTY1Y4K3d4XnVIMHQ5dmArVnU3KCtaPmFzX01Y
P0JndkprQjs/cT8zUmckSDNWZlQKek9WPkkySUVJQ3pVQDNkajY/IVJvV3c3PWg2OGxrIT9vRkx6
Z3BeRjBzQXl2fF4jY1FLPzlBdmdkVyZ6UFczSlJBCno8VyZ+JmFaZW8rTVIpWX03ezROSTZZPz80
ISNjX3ZmVlN+Z3QhelYtO059UktFNG8pfCRwe0FrVn12KHVne317MQp6Sz0mZzg+O2x2RD9iLT9v
bmNTOWs3U2ZhUkw1KG9vTGpeVl9Cb2J6VUI1blB0XyshWUc+cD1ifE5BIXUxOCEqRHIKenUmaTBX
JCZmMSV8RGVMdHloQUM0a1EqZH1EZUBtbnlBRWAwI3puV14jSXZAeShwJnlNR1QxeFR4O1Y1dlNw
OVIyCno8MkUpanhOPSkzdnhKa0BCKXRaLVJCJVZudnFeMkd5WE0pbkV5WjVSM0RTcTwzQDQ+PjxR
dFNsM14haHhBJCtIYQp6ZnhPbSZOYEFWM2AycilkWGFGKTc9WX1JcV58MXlTeSlQRzlKMiZkdyM5
aEhQcDFNd2NzI1F0IT8/R3JmPHNJVjIKemEkS1hUcXBuPjxrfWFPcGshTktmVitWblE1X3YxQVRL
UG9ZMFNMWnBTazZsJU5hb1V8cyVDZWk9emFQakVEUjwoCno8SzFMeGltbzZxPU5TaTFUd1ExRWxl
bFBybyFIMWI/azBqfE9hVjl2dktBZFJuZVlHO2VgRnx4YGMkaWNOV09nQwp6czJ2TF56dHhXMiNR
Jn14dkNNO15KP1RlKDE/WSkrVHxRb21BYDRGJDBnSStsO2hVWClffFFaZTdYY2YqRlBHWDIKeiUh
OW5JdTE0JTsjRm9ycTxtXm1XVDxSdyt0ekxkeCs1Vl47UzV7MlVOU0NrIXEhSDI8Vz42U1grcFgj
LXZ9NVZ+CnpzdTlTeyFLUW17Qm99UDtpcn56aCNGUj9xPnApZ2poRWJVUjwjR09xVXZhbG5LQmM5
Z3BXV08wQkI5KGQ0dHJNZwp6TDlxbGAjbyFMSTwzbHJkNUcxMXErSzhwYyU1X2liYWdDUW1Jek58
Vz5CaT5KYiEwYTMqXnt+Tm4ySShOeiZrU1gKekw5cSM/d2dBZmVvdnhiYiU/clR4eX05SE0wOEMj
U2omTlY8VGFIVUVzTDVDNF5uVFpOcXFuelItY2VlUWxMR1BQCnp1KChzcnYjVGQ5d1U9bGdzKDlj
Q1BfUilEPWpZeE9gWGVjNUJgV1prJl5WY0JoVm9pZipjTzllT0xvcT81JiRteQp6MWYrYl8pentT
R1VUZV4+aE15WndvMnYzQnhfbHdhc21ZSCYpbVg1VWV5eHpmTiRVbE5vcWwje2JYbVRsaHszQFIK
ekpuUTRoZ2tUVkVQOyZQNS0wJFBYUkhmdiNoXnc9Mz41QWNqPWx0eEgpWVF+OyQrOGR6T1Bna2Ri
a3xFVEtWSDdmCno8M2piTjBkT19TKXw5MDZ8TEc5Pko1SkxHbDU1PylyU0FDZGk1ZCFTezd6cTJs
X1g1PDgrS2MmM3VCVmR4PWc+YQp6MiZHT09tWTQ2VnRWWVRiUXBiMVRCfl4hcHhaX2VKJWRUZFdH
WSZNdSM0d1lFbFpeQzsrdHtBdDxXJitrTn0qV1cKekJsX1MxSnFjJGxnY2x9bTgyZGEoX3gpKWp0
NjkrSSVtUldGO20kRyV0OGMpOHxKalRSTjdKUEhiQTFyJV95KT9UCnpDQGBZT0FuJDUhVns1e2F3
NF5iT0dFYnA8U09QWW1UZ2huRjlARnhJWiExZnB4SWkqI0g5fG1pNmgkLShocGlxdQp6KTVjIXZz
Z0Z4bjImR3VKNT96QyYpMXhGT1F2K256UDVvWCVpfUFFVFRMQWloPVZ5PW5PZCFCLTE1O3t7ZGZm
Q3gKej1YQG1rejR9WlpSQ2U9fFM5bG1WMHx4JlhKaFJ3NTxLanh3Qj1RRTYkWXhSRE4jbk1ua0FQ
dWlifWBwd1FrPEg+CnpAVX0wXlVAKEtoY3Zkcm0hMytqNzd8ZmMlSlI4bGsoWDUpeU0rSXhNQVRT
Rjh2bWhgRjA8JDE2M2oodHNGYmV7Kwp2QWI5KEQqLVZGS0l5QlJ2bkdWZiNfeV5PVy1wJldSKTk9
Mkk8e3RRcWZra0JhIzxrWnpqb2Jma3AjUDchCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vbWlzc2luZy1jdXN0b20tZmlsdGVy
LXNoYWRlci1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxZjhh
MzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9taXNzaW5n
LWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xICsw
LDAgQEAKLSAgICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vbWlzc2luZy1jdXN0b20tZmlsdGVyLXNoYWRlci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFhMmE3MDYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi08IS0tIFRoaXMgZmlsZSBzaG91bGQgdGVzdCB0
aGF0IGN1c3RvbS1maWx0ZXJzIGRvIG5vdCByZW5kZXIgd2hlbiBzaGFkZXJzIGFyZSBtaXNzaW5n
LiAtLT4KLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRs
ZT5UZXN0aW5nIHRoYXQgY3VzdG9tLWZpbHRlcnMgZG8gbm90IHJlbmRlciB3aGVuIHNoYWRlcnMg
YXJlIG1pc3Npbmc8L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3Zl
cnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1
bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5l
ZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkIG9yIGZh
aWxzLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQot
ICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgLm1pc3Npbmdf
dmVydGV4X3NoYWRlcgotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvbWlzc2luZy12ZXJ0ZXgtb2Zmc2V0LnZzJykp
OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLm1pc3NpbmdfZnJhZ21lbnRfc2hhZGVyCi0g
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25l
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLWNvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBz
b3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hhZGVyc19i
dXRfbWlzc2luZ192ZXJ0ZXhfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLXZlcnRleC1v
ZmZzZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5ib3RoX3NoYWRl
cnNfYnV0X21pc3NpbmdfZnJhZ21lbnRfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zm
c2V0LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21pc3NpbmctY29sb3Itb2Zmc2V0LmZzJykg
bm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAuYm90aF9z
aGFkZXJzX21pc3NpbmcKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL21pc3NpbmctdmVydGV4LW9mZnNldC52cycp
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLWNvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBz
b3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVh
ZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDwhLS0gVGVzdCBvZiBt
aXNzaW5nIGN1c3RvbSBmaWx0ZXIgc2hhZGVycy4gWW91IHNob3VsZCBzZWUgNSBibG9ja3Mgb2Yg
Y29sb3IgYmFycywgYWxsIHRoZSBzYW1lIC0tPgotICAgICAgICA8aW1nIGNsYXNzPSJtaXNzaW5n
X3ZlcnRleF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9Im1pc3NpbmdfZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNl
cy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRlcnNfYnV0
X21pc3NpbmdfdmVydGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIg
Lz4KLSAgICAgICAgPGltZyBjbGFzcz0iYm90aF9zaGFkZXJzX2J1dF9taXNzaW5nX2ZyYWdtZW50
X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAgPGlt
ZyBjbGFzcz0iYm90aF9zaGFkZXJzX21pc3NpbmciIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5j
ZS5wbmciIC8+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9hLXRleC1jb29yZC1kZWZpbmVkLnZzIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9hLXRleC1jb29yZC1kZWZpbmVkLnZzCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NDAyZGRmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtZGVmaW5lZC52cworKysgL2Rldi9u
dWxsCkBAIC0xLDEyICswLDAgQEAKLS8vIFRoaXMgc2hhZGVyIGRlZmluZXMgYV90ZXhDb29yZC4g
SXRzIGFzc29jaWF0ZWQgY3VzdG9tIGZpbHRlciBzaG91bGQgZXhlY3V0ZSBwcm9wZXJseS4KLQot
cHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWMyIGFfdGV4Q29vcmQ7Ci1h
dHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJp
eDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJp
eCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL2EtdGV4LWNvb3JkLXVuZGVmaW5lZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtdW5kZWZpbmVkLnZzCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAyYzJiNzMxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtdW5kZWZpbmVkLnZzCisrKyAvZGV2L251bGwKQEAg
LTEsMTEgKzAsMCBAQAotLy8gVGhpcyBzaGFkZXIgZG9lcyBub3QgZGVmaW5lIGFfdGV4Q29vcmQu
IEl0cyBhc3NvY2lhdGVkIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGV4ZWN1dGUgcHJvcGVybHkuCi0K
LXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwot
dW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBn
bF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2EtdHJpYW5nbGUtY29vcmQt
ZGVmaW5lZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10cmlhbmds
ZS1jb29yZC1kZWZpbmVkLnZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYjZkZTI0
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10cmlh
bmdsZS1jb29yZC1kZWZpbmVkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8g
VGhpcyBzaGFkZXIgZGVmaW5lcyBhX3RyaWFuZ2xlQ29vcmQuIElmIHRoZSBtZXNoIHR5cGUgaXMg
ZGV0YWNoZWQsIGl0cyBhc3NvY2lhdGVkIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGV4ZWN1dGUgcHJv
cGVybHkuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjMyBhX3Ry
aWFuZ2xlQ29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVf
cHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2FycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgudnMg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2FycmF5LXVuaWZvcm0taW5kaXJl
Y3QtaW5kZXgudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM5NzhkODlmLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYXJyYXktdW5pZm9y
bS1pbmRpcmVjdC1pbmRleC52cworKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLS8vIFRo
aXMgc2hhZGVyIGluZGlyZWN0bHkgaW5kZXhlcyBhIHVuaWZvcm0gYXJyYXkgdXNpbmcgb3RoZXIg
dW5pZm9ybXMuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotcHJlY2lzaW9uIG1lZGl1bXAg
aW50OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVj
dGlvbk1hdHJpeDsKLXZhcnlpbmcgdmVjNCB2X21peENvbG9yOwotCi11bmlmb3JtIGZsb2F0IHZh
bHVlc1syXTsKLXVuaWZvcm0gZmxvYXQgcmVkSW5kZXg7Ci11bmlmb3JtIGZsb2F0IGdyZWVuSW5k
ZXg7Ci11bmlmb3JtIGZsb2F0IGJsdWVJbmRleDsKLXVuaWZvcm0gZmxvYXQgYWxwaGFJbmRleDsK
LQotdm9pZCBtYWluKCkKLXsKLSAgICB2X21peENvbG9yID0gdmVjNCh2YWx1ZXNbaW50KHJlZElu
ZGV4KV0sIHZhbHVlc1tpbnQoZ3JlZW5JbmRleCldLCB2YWx1ZXNbaW50KGJsdWVJbmRleCldLCB2
YWx1ZXNbaW50KGFscGhhSW5kZXgpXSk7Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25N
YXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9jaGVja2VyYm9hcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL2NoZWNrZXJib2FyZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
OGNiMjRmZC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2NoZWNrZXJib2FyZC52cworKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLS8vIFRoaXMg
c2hhZGVyIGNvbG9ycyBhbHRlcm5hdGluZyB0aWxlcyBpbiB0aGUgbWVzaCBibGFjayBvciBncmVl
biB0byBjcmVhdGUgYSBjaGVja2JvYXJkIHBhdHRlcm4uCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZs
b2F0OwotcHJlY2lzaW9uIG1lZGl1bXAgaW50OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9u
OwotYXR0cmlidXRlIHZlYzMgYV90cmlhbmdsZUNvb3JkOwotCi11bmlmb3JtIG1hdDQgdV9wcm9q
ZWN0aW9uTWF0cml4OwotCi12YXJ5aW5nIHZlYzQgdl9taXhDb2xvcjsKLQotdm9pZCBtYWluKCkK
LXsKLSAgICBmbG9hdCBncmVlbiA9IG1vZChhX3RyaWFuZ2xlQ29vcmQueCArIGFfdHJpYW5nbGVD
b29yZC55LCAyLjApOwotICAgIHZfbWl4Q29sb3IgPSB2ZWM0KDAuMCwgZ3JlZW4sIDAuMCwgMS4w
KTsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLWZp
bGwuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLWZpbGwuZnMK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdlNDJiZWQuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jb2xvci1maWxsLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsMTAgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci11bmlmb3JtIHZl
YzQgY29sb3I7Ci12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLXZvaWQgbWFpbigpCi17Ci0gICAg
Ly8gTWl4IHRoZSB0ZXh0dXJlIHdpdGggdGhlIGNvbG9yIHNwZWNpZmllZCBhcyBhbiB1bmlmb3Jt
LgotICAgIC8vIEFsc28gYXBwbHkgYSBncmFkaWVudCB0byBjaGVjayBmb3IgdGhlIHJpZ2h0IGRp
cmVjdGlvbi4KLSAgICAvLyBUaGUgY29sb3Igc2hvdWxkIGJlIGxpZ2h0ZXN0IGF0IHRoZSB0b3Ag
YW5kIGRhcmtlc3QgYXQgdGhlIGJvdHRvbS4KLSAgICBjc3NfTWl4Q29sb3IgPSB2ZWM0KGNvbG9y
Lnh5eiwgY29sb3IuYSAqIHZfdGV4Q29vcmQueSk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBiMjBhY2M3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzCisrKyAvZGV2L251bGwKQEAgLTEsNiArMCwwIEBA
Ci1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXZvaWQgbWFpbigpCi17Ci0gICAgLy8gTWl4IHNv
bWUgd2hpdGUgd2l0aCB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLSAgICBjc3NfTWl4Q29sb3Ig
PSB2ZWM0KDEuMCwgMS4wLCAxLjAsIDAuNSk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvY29tcG9zaXRlLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBiYWJiNjZjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvY29tcG9zaXRlLmZzCisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi1wcmVjaXNpb24g
bWVkaXVtcCBmbG9hdDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigp
Ci17Ci0gICAgLy8gUHJvZHVjZSBhIGJsdWUgc3F1YXJlIGluIHRoZSBsb3dlciByaWdodC1oYW5k
IHBhcnQgb2YgdGhlIGltYWdlLgotICAgIGNzc19NaXhDb2xvciA9IHZlYzQoMC4wLCAwLjAsIDEu
MCwgZmxvYXQodl90ZXhDb29yZC54ID4gMC4zMyAmJiB2X3RleENvb3JkLnkgPiAwLjMzKSk7Ci19
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2Nzcy1rZXl3
b3JkLWFzLXBhcmFtZXRlci1uYW1lLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggODUwMTA4MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL2Nzcy1rZXl3b3JkLWFzLXBhcmFtZXRlci1uYW1lLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsOCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdW5pZm9ybSB2
ZWM0IGJhY2tncm91bmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfRnJhZ0NvbG9yID0gYmFj
a2dyb3VuZDsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmZzIGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1j
b2xvci1tYXRyaXgtbmVnYXRpdmUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFl
MGU3ZTMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9j
dXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUuZnMKKysrIC9kZXYv
bnVsbApAQCAtMSwxMCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdm9pZCBt
YWluKHZvaWQpCi17Ci0gICAgY3NzX0NvbG9yTWF0cml4ID0gbWF0NCgtMTAuMCwgMC4wLCAwLjAs
IDAuMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMCwgLTEwLjAsIDAuMCwgMC4wLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wLCAwLjAsIC0xMC4wLCAwLjAsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAwLjAsIDAuMCwgMC4wLCAxLjApOwotICAgIGNzc19NaXhDb2xv
ciA9IHZlYzQoLTAuNSwgLTAuNSwgLTAuNSwgMS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3It
bWF0cml4LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmls
dGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwZWVhMDcuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguZnMKKysrIC9kZXYvbnVs
bApAQCAtMSwxMCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdm9pZCBtYWlu
KHZvaWQpCi17Ci0gICAgY3NzX0NvbG9yTWF0cml4ID0gbWF0NCgxMC4wLCAwLjAsIDAuMCwgMC4w
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wLCAxMC4wLCAwLjAsIDAuMCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxMC4wLCAwLjAsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAwLjAsIDAuMCwgMC4wLCAxMC4wKTsKLSAgICBjc3NfTWl4Q29sb3IgPSB2
ZWM0KDAuNSwgMC41LCAwLjUsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLXBhcnNlci5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggYjhlMjQ4MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsMjAyICswLDAgQEAKLS8vIFRoaXMgaXMgYSBoZWxwZXIgc2NyaXB0IGRlc2lnbmVk
IHRvIHBhcnNlIHRoZSBjb21wdXRlZCBzeW50YXggb2YgdGhlIGN1c3RvbSBmaWx0ZXIuIAotLy8g
Tm90ZSB0aGF0IGl0IGlzIGdlbmVyaWMgZW5vdWdoIHNvIHRoYXQgaXQgY2FuIGJlIHVzZWQgZm9y
IG90aGVyIHByb3BlcnRpZXMgaW4gdGhlIGZ1dHVyZS4KLQotZnVuY3Rpb24gVG9rZW4odHlwZSkg
Ci17Ci0gICAgdGhpcy50eXBlID0gdHlwZTsKLX0KLQotLy8gQ2hlY2tzIGlmIHRoZSB0eXBlIG9m
IHRoZSB0b2tlbiBpcyBpbiB0aGUgbGlzdCBvZiBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSBmdW5j
dGlvbi4KLS8vIEl0IGFsc28gYWNjZXB0cyBhcnJheXMgYW5kIG90aGVyIHR5cGUgY2hlY2tpbmcg
ZnVuY3Rpb25zLgotVG9rZW4ucHJvdG90eXBlLmlzQSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7ICsraSkgewotICAgICAgICB2YXIgdHlw
ZSA9IGFyZ3VtZW50c1tpXTsKLSAgICAgICAgaWYgKCh0eXBlb2YgdHlwZSA9PSAib2JqZWN0IiAm
JiB0eXBlLmxlbmd0aCAmJiB0aGlzLmlzQS5hcHBseSh0aGlzLCB0eXBlKSkKLSAgICAgICAgICAg
IHx8ICh0eXBlb2YgdHlwZSA9PSAiZnVuY3Rpb24iICYmIHR5cGUodGhpcykpCi0gICAgICAgICAg
ICB8fCB0eXBlID09IHRoaXMudHlwZSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgIH0K
LSAgICByZXR1cm4gZmFsc2U7Ci19Ci0KLS8vIENyZWF0ZXMgYSBuZXcgdG9rZW4gb2JqZWN0IGFu
ZCBjb3BpZXMgYWxsIHRoZSBwcm9wZXJ0aWVzIGluICJ2YWx1ZSIgdG8gdGhlIG5ldyB0b2tlbi4K
LWZ1bmN0aW9uIGNyZWF0ZVRva2VuKHR5cGUsIHZhbHVlKSB7Ci0gICAgdmFyIHRva2VuID0gbmV3
IFRva2VuKHR5cGUpOwotICAgIGlmICh2YWx1ZSkgewotICAgICAgICBmb3IgKHZhciBpIGluIHZh
bHVlKQotICAgICAgICAgICAgaWYgKHZhbHVlLmhhc093blByb3BlcnR5KGkpKQotICAgICAgICAg
ICAgICAgIHRva2VuW2ldID0gdmFsdWVbaV07Ci0gICAgfQotICAgIHJldHVybiB0b2tlbjsKLX0K
LQotLy8gVG9rZW5pemVzIHRoZSBzdHJpbmcgaW50byBUb2tlbnMgb2YgdHlwZXMgW3VybHMsIGZs
b2F0cywgaW50ZWdlcnMsIGtleXdvcmRzLCAiLCIsICIoIiwgIikiIGFuZCAiLiJdLgotZnVuY3Rp
b24gdG9rZW5pemVTdHJpbmcocykKLXsKLSAgICB2YXIgdG9rZW5pemVyID0gbmV3IFJlZ0V4cChb
Ci0gICAgICAgICJ1cmxcXChcXHMqKC4qPylcXHMqXFwpIiwgLy8gdXJsKCkgLSAxCi0gICAgICAg
ICIoKD86W1xcKy1dPylcXGQqXFwuXFxkKykiLCAvLyBmbG9hdHMgLSAyCi0gICAgICAgICIoKD86
W1xcKy1dPylcXGQrKSIsIC8vIGludGVnZXJzIC0gMwotICAgICAgICAiKFtcXHctXVtcXHdcXGQt
XSopIiwgLy8ga2V5d29yZHMgLSA0Ci0gICAgICAgICIoWyxcXC5cXChcXCldKSIgLy8gcHVuY3R1
YXRpb24gLSA1Ci0gICAgXS5qb2luKCJ8IiksICJnIik7Ci0KLSAgICB2YXIgbWF0Y2gsIHRva2Vu
cyA9IFtdOwotICAgIHdoaWxlIChtYXRjaCA9IHRva2VuaXplci5leGVjKHMpKSB7Ci0gICAgICAg
IGlmIChtYXRjaFsxXSAhPT0gdW5kZWZpbmVkKQotICAgICAgICAgICAgdG9rZW5zLnB1c2goY3Jl
YXRlVG9rZW4oInVybCIsIHt2YWx1ZTogbWF0Y2hbMV19KSk7Ci0gICAgICAgIGVsc2UgaWYgKG1h
dGNoWzJdICE9PSB1bmRlZmluZWQpCi0gICAgICAgICAgICB0b2tlbnMucHVzaChjcmVhdGVUb2tl
bigiZmxvYXQiLCB7dmFsdWU6IHBhcnNlRmxvYXQobWF0Y2hbMl0pfSkpOwotICAgICAgICBlbHNl
IGlmIChtYXRjaFszXSAhPT0gdW5kZWZpbmVkKQotICAgICAgICAgICAgdG9rZW5zLnB1c2goY3Jl
YXRlVG9rZW4oImludGVnZXIiLCB7dmFsdWU6IHBhcnNlSW50KG1hdGNoWzNdKX0pKTsKLSAgICAg
ICAgZWxzZSBpZiAobWF0Y2hbNF0gIT09IHVuZGVmaW5lZCkKLSAgICAgICAgICAgIHRva2Vucy5w
dXNoKGNyZWF0ZVRva2VuKCJrZXl3b3JkIiwge3ZhbHVlOiBtYXRjaFs0XX0pKTsKLSAgICAgICAg
ZWxzZSBpZiAobWF0Y2hbNV0gIT09IHVuZGVmaW5lZCkKLSAgICAgICAgICAgIHRva2Vucy5wdXNo
KGNyZWF0ZVRva2VuKG1hdGNoWzVdKSk7Ci0gICAgfQotICAgIHJldHVybiB0b2tlbnM7Ci19Ci0K
LS8vIENoZWNrcyBpZiB0aGUgdG9rZW4gaXMgYSBudW1iZXIuIENhbiBiZSB1c2VkIGluIGNvbWJp
bmF0aW9uIHdpdGggdGhlICJUb2tlbi5pc0EiIG1ldGhvZC4KLWZ1bmN0aW9uIG51bWJlcih0b2tl
bikKLXsKLSAgICByZXR1cm4gdG9rZW4udHlwZSA9PSAiZmxvYXQiIHx8IHRva2VuLnR5cGUgPT0g
ImludGVnZXIiOwotfQotCi0vLyBIZWxwZXIgY2xhc3MgdG8gaXRlcmF0ZSBvbiB0aGUgdG9rZW4g
c3RyZWFtLiBJdCB3aWxsIGFkZCBhbiAiZW5kIgotLy8gdG9rZW4gYXQgdGhlIGVuZCB0byBtYWtl
IGl0IGVhc2llciB0byB1c2UgdGhlICJhaGVhZCIgZnVuY3Rpb24KLS8vIHdpdGhvdXQgY2hlY2tp
bmcgaWYgaXQncyB0aGUgbGFzdCB0b2tlbiBpbiB0aGUgc3RyZWFtLgotZnVuY3Rpb24gVG9rZW5T
dHJlYW0odG9rZW5zKSB7Ci0gICAgdGhpcy50b2tlbnMgPSB0b2tlbnM7Ci0gICAgdGhpcy50b2tl
bnMucHVzaChuZXcgVG9rZW4oImVuZCIpKTsKLSAgICB0aGlzLnRva2VuSW5kZXggPSAwOwotfQot
Ci1Ub2tlblN0cmVhbS5wcm90b3R5cGUuY3VycmVudCA9IGZ1bmN0aW9uKCkgCi17IAotICAgIHJl
dHVybiB0aGlzLnRva2Vuc1t0aGlzLnRva2VuSW5kZXhdOyAKLX0KLQotVG9rZW5TdHJlYW0ucHJv
dG90eXBlLmFoZWFkID0gZnVuY3Rpb24oKSAKLXsKLSAgICByZXR1cm4gdGhpcy50b2tlbnNbdGhp
cy50b2tlbkluZGV4ICsgMV07IAotfQotCi0vLyBTa2lwcyB0aGUgY3VycmVudCB0b2tlbiBvbmx5
IGlmIGl0IG1hdGNoZXMgdGhlICJ0eXBlTWF0Y2hlciIuIE90aGVyd2lzZSBpdCB0aHJvd3MgYW4g
ZXJyb3IuCi1Ub2tlblN0cmVhbS5wcm90b3R5cGUuc2tpcCA9IGZ1bmN0aW9uKHR5cGVNYXRjaGVy
KQotewotICAgIGlmICghdHlwZU1hdGNoZXIgfHwgdGhpcy5jdXJyZW50KCkuaXNBKHR5cGVNYXRj
aGVyKSkgewotICAgICAgICB2YXIgdG9rZW4gPSB0aGlzLmN1cnJlbnQoKTsKLSAgICAgICAgKyt0
aGlzLnRva2VuSW5kZXg7Ci0gICAgICAgIHJldHVybiB0b2tlbjsKLSAgICB9Ci0gICAgdGhyb3cg
bmV3IEVycm9yKCJDYW5ub3QgdXNlICIgKyBKU09OLnN0cmluZ2lmeSh0eXBlTWF0Y2hlcikgKyAi
IHRvIHNraXAgb3ZlciAiICsgSlNPTi5zdHJpbmdpZnkodGhpcy5haGVhZCgpKSk7Ci19Ci0KLS8v
IFNraXBzIHRoZSBjdXJyZW50IHRva2VuLCBvbmx5IGlmIGl0IG1hdGNoZXMgdGhlICJ0eXBlTWF0
Y2hlciIuIE1ha2VzIGl0IGVhc3kgdG8gc2tpcCBvdmVyIGNvbW1hIHRva2Vucy4KLVRva2VuU3Ry
ZWFtLnByb3RvdHlwZS5za2lwSWZOZWVkZWQgPSBmdW5jdGlvbih0eXBlTWF0Y2hlcikKLXsKLSAg
ICBpZiAodGhpcy5haGVhZCgpICYmIHRoaXMuYWhlYWQoKS5pc0EodHlwZU1hdGNoZXIpKQotICAg
ICAgICArK3RoaXMudG9rZW5JbmRleDsKLX0KLQotLy8gQ3JlYXRlcyBhIG5ldyAiZnVuY3Rpb24i
IG5vZGUuIEl0IGV4cGVjdHMgdGhhdCB0aGUgY3VycmVudCB0b2tlbiBpcyB0aGUgZnVuY3Rpb24g
bmFtZS4KLWZ1bmN0aW9uIHBhcnNlRnVuY3Rpb24obSkKLXsKLSAgICB2YXIgZnVuY3Rpb25PYmpl
Y3QgPSB7Ci0gICAgICAgIHR5cGU6ICJmdW5jdGlvbiIsCi0gICAgICAgIG5hbWU6IG0uc2tpcCgp
LnZhbHVlCi0gICAgfTsKLSAgICBtLnNraXAoIigiKTsKLSAgICBmdW5jdGlvbk9iamVjdC5hcmd1
bWVudHMgPSBwYXJzZUxpc3QobSwgWyIpIiwgImVuZCJdKTsKLSAgICBtLnNraXAoIikiKTsKLSAg
ICByZXR1cm4gZnVuY3Rpb25PYmplY3Q7Ci19Ci0KLS8vIENyZWF0ZXMgYSBuZXcgInBhcmFtZXRl
ciIgbm9kZS4gSXQgZXhwZWN0cyB0aGF0IHRoZSBjdXJyZW50IHRva2VuIGlzIHRoZSBwYXJhbWV0
ZXIgbmFtZS4KLS8vIEl0IGNvbnN1bWVzIGV2ZXJ5dGhpbmcgYmVmb3JlIHRoZSBmb2xsb3dpbmcg
Y29tbWEuCi1mdW5jdGlvbiBwYXJzZVBhcmFtZXRlcihtKQotewotICAgIHZhciBmdW5jdGlvbk9i
amVjdCA9IHsKLSAgICAgICAgdHlwZTogInBhcmFtZXRlciIsCi0gICAgICAgIG5hbWU6IG0uc2tp
cCgpLnZhbHVlCi0gICAgfTsKLSAgICBmdW5jdGlvbk9iamVjdC52YWx1ZSA9IHBhcnNlTGlzdCht
LCBbIiwiLCAiZW5kIl0pOwotICAgIG0uc2tpcElmTmVlZGVkKCIsIik7Ci0gICAgcmV0dXJuIGZ1
bmN0aW9uT2JqZWN0OwotfQotCi0vLyBDb25zdW1lcyBhIGxpc3Qgb2YgdG9rZW5zIGJlZm9yZSBy
ZWFjaGluZyB0aGUgImVuZFRva2VuIiBhbmQgcmV0dXJucyBhbiBhcnJheSB3aXRoIGFsbCB0aGUg
cGFyc2VkIGl0ZW1zLgotLy8gTWFrZXMgdGhlIGZvbGxvd2luZyBhc3N1bXB0aW9uczoKLS8vIC0g
aWYgYSBrZXl3b3JkIGlzIGZvbGxvd2VkIGJ5ICIoIiB0aGVuIGl0IGlzIGEgc3RhcnQgb2YgZnVu
Y3Rpb24KLS8vIC0gaWYgYSBrZXl3b3JkIGlzIG5vdCBmb2xsb3dlZCBieSAiLCIgaXQgaXMgYSBw
YXJhbWV0ZXIKLS8vIEtleXdvcmRzIHRoYXQgZG8gbm90IG1hdGNoIGVpdGhlciBvZiB0aGUgcHJl
dmlvdXMgcnVsZXMgYW5kIHRva2VucyBsaWtlIG51bWJlciBhbmQgdXJsIGFyZSBqdXN0IGNsb25l
ZC4KLWZ1bmN0aW9uIHBhcnNlTGlzdChtLCBlbmRUb2tlbikKLXsKLSAgICB2YXIgcmVzdWx0ID0g
W10sIHRva2VuOwotICAgIHdoaWxlICgodG9rZW4gPSBtLmN1cnJlbnQoKSkgJiYgIXRva2VuLmlz
QShlbmRUb2tlbikpIHsKLSAgICAgICAgaWYgKHRva2VuLmlzQSgia2V5d29yZCIpKSB7Ci0gICAg
ICAgICAgICBpZiAobS5haGVhZCgpLmlzQSgiKCIpKQotICAgICAgICAgICAgICAgIHJlc3VsdC5w
dXNoKHBhcnNlRnVuY3Rpb24obSkpOwotICAgICAgICAgICAgZWxzZSBpZiAobS5haGVhZCgpLmlz
QSgiLCIsIGVuZFRva2VuKSkgewotICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsKLSAgICAg
ICAgICAgICAgICAgICAgdHlwZTogImtleXdvcmQiLCAKLSAgICAgICAgICAgICAgICAgICAgdmFs
dWU6IG0uc2tpcCgpLnZhbHVlCi0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB9IGVs
c2UKLSAgICAgICAgICAgICAgICByZXN1bHQucHVzaChwYXJzZVBhcmFtZXRlcihtKSk7Ci0gICAg
ICAgIH0gZWxzZSBpZiAodG9rZW4uaXNBKG51bWJlcikpIHsKLSAgICAgICAgICAgIHJlc3VsdC5w
dXNoKHsKLSAgICAgICAgICAgICAgICB0eXBlOiAibnVtYmVyIiwKLSAgICAgICAgICAgICAgICB2
YWx1ZTogbS5za2lwKCkudmFsdWUKLSAgICAgICAgICAgIH0pOwotICAgICAgICB9IGVsc2UgaWYg
KHRva2VuLmlzQSgidXJsIikpIHsKLSAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsKLSAgICAgICAg
ICAgICAgICB0eXBlOiAidXJsIiwKLSAgICAgICAgICAgICAgICB2YWx1ZTogbS5za2lwKCkudmFs
dWUKLSAgICAgICAgICAgIH0pOwotICAgICAgICB9IGVsc2UgaWYgKHRva2VuLmlzQSgiLCIpKQot
ICAgICAgICAgICAgbS5za2lwKCk7Ci0gICAgICAgIGVsc2UgCi0gICAgICAgICAgICB0aHJvdyAi
VW5leHBlY3RlZCB0b2tlbiAiICsgSlNPTi5zdHJpbmdpZnkodG9rZW4pICsgIiBpbiBhIGxpc3Qu
IjsKLSAgICB9Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQotZnVuY3Rpb24gdG9rZW5zVG9WYWx1
ZXModG9rZW5zKQotewotICAgIHZhciBtID0gbmV3IFRva2VuU3RyZWFtKHRva2Vucyk7Ci0gICAg
cmV0dXJuIHBhcnNlTGlzdChtLCAiZW5kIik7Ci19Ci0KLS8vIEV4dHJhY3RzIGEgcGFyYW1ldGVy
cyBhcnJheSBmcm9tIHRoZSBwYXJhbWV0ZXJzIHN0cmluZyBvZiB0aGUgY3VzdG9tIGZpbHRlciBm
dW5jdGlvbi4KLWZ1bmN0aW9uIHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhzKQotewotICAg
IHJldHVybiB0b2tlbnNUb1ZhbHVlcyh0b2tlbml6ZVN0cmluZyhzKSk7Ci19Ci0KLS8vIE5lZWQg
dG8gcmVtb3ZlIHRoZSBiYXNlIFVSTCB0byBhdm9pZCBoYXZpbmcgbG9jYWwgcGF0aHMgaW4gdGhl
IGV4cGVjdGVkIHJlc3VsdHMuCi1mdW5jdGlvbiByZW1vdmVCYXNlVVJMKHNyYykgewotICAgIHZh
ciB1cmxSZWdleHAgPSAvdXJsXCgoW15cKV0qKVwpL2c7Ci0gICAgcmV0dXJuIHNyYy5yZXBsYWNl
KHVybFJlZ2V4cCwgZnVuY3Rpb24obWF0Y2gsIHVybCkgewotICAgICAgICByZXR1cm4gInVybCgi
ICsgdXJsLnN1YnN0cih1cmwubGFzdEluZGV4T2YoIi8iKSArIDEpICsgIikiOwotICAgIH0pOwot
fQotCi0vLyBQYXJzZXMgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIGN1c3RvbSBmaWx0ZXIgZnVuY3Rp
b24gYW5kIHJldHVybnMgaXQgdXNpbmcgdGhlIGZvbGxvd2luZyBvcmRlcjoKLS8vIC0gSWYgcGFy
YW1ldGVycyBoYXZlIGRpZmZlcmVudCB0eXBlcyAoaWUuIHVybCwgbnVtYmVyLCBuYW1lZCBwYXJh
bWV0ZXIpLCB0aGUgYWxwaGFiZXRpY2FsIG9yZGVyIG9mIHRoZSAidHlwZSIgaXMgdXNlZC4KLS8v
IC0gSWYgcGFyYW1ldGVycyBhcmUgb2YgdHlwZSAicGFyYW1ldGVyIiB0aGUgYWxwaGFiZXRpY2Fs
IG9yZGVyIG9mIHRoZSBwYXJhbWV0ZXIgbmFtZXMgaXMgdXNlZC4KLS8vIC0gSWYgcGFyYW1ldGVy
cyBhcmUgb2Ygb3RoZXIgdHlwZXMsIHRoZW4gdGhlIHZhbHVlIGlzIHVzZWQgdG8gb3JkZXIgdGhl
bSBhbHBoYWJldGljYWwuCi0vLyBUaGUgb3JkZXIgaXMgaW1wb3J0YW50IHRvIG1ha2UgaXQgZWFz
eSB0byBjb21wYXJlIHR3byBjdXN0b20gZmlsdGVycywgdGhhdCBoYXZlIGV4YWN0bHkgdGhlIHNh
bWUgcGFyYW1ldGVycywgCi0vLyBidXQgd2l0aCBwb3RlbnRpYWxseSBkaWZmZXJlbnQgIm5hbWVk
IHBhcmFtZXRlciIgdmFsdWVzLgotZnVuY3Rpb24gZ2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhz
KSAKLXsKLSAgICByZXR1cm4gcGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzKHJlbW92ZUJhc2VV
UkwocykpLnNvcnQoZnVuY3Rpb24oYSwgYikgeyAKLSAgICAgICAgaWYgKGEudHlwZSAhPSBiLnR5
cGUpIAotICAgICAgICAgICAgcmV0dXJuIGEudHlwZS5sb2NhbGVDb21wYXJlKGIudHlwZSk7Ci0g
ICAgICAgIGlmIChhLnR5cGUgPT0gInBhcmFtZXRlciIpCi0gICAgICAgICAgICByZXR1cm4gYS5u
YW1lLmxvY2FsZUNvbXBhcmUoYi5uYW1lKTsKLSAgICAgICAgcmV0dXJuIGEudmFsdWUudG9TdHJp
bmcoKS5sb2NhbGVDb21wYXJlKGIudmFsdWUudG9TdHJpbmcoKSk7Ci0gICAgfSk7Ci19CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ZyYWdtZW50LWNvbG9y
LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvci5m
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzFiZDcyNy4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ZyYWdtZW50LWNvbG9yLmZzCisrKyAv
ZGV2L251bGwKQEAgLTEsNyArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVuaWZv
cm0gZmxvYXQgY29sb3JBcnJheVs0XTsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9GcmFnQ29s
b3IgPSB2ZWM0KGNvbG9yQXJyYXlbMF0sIGNvbG9yQXJyYXlbMV0sIGNvbG9yQXJyYXlbMl0sIGNv
bG9yQXJyYXlbM10pOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9mcmFnbWVudC1jb2xvcnMuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL2ZyYWdtZW50LWNvbG9ycy5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWNjMGUzYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2ZyYWdtZW50LWNvbG9ycy5mcworKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLXByZWNp
c2lvbiBtZWRpdW1wIGZsb2F0OwotdW5pZm9ybSB2ZWM0IGMxOwotdW5pZm9ybSB2ZWM0IGMyOwot
dW5pZm9ybSB2ZWM0IGMzOwotdW5pZm9ybSB2ZWM0IGM0OwotdW5pZm9ybSB2ZWM0IGM1OwotdW5p
Zm9ybSB2ZWM0IGM2OwotCi12b2lkIG1haW4oKQotewotCWlmIChjMSA9PSBjMiAmJiBjMSA9PSBj
MyAmJiBjMSA9PSBjNCAmJiBjMSA9PSBjNSAmJiBjMSA9PSBjNikKLSAgICAJZ2xfRnJhZ0NvbG9y
ID0gYzE7Ci0gICAgZWxzZSAKLSAgICAJZ2xfRnJhZ0NvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4w
LCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9mcmFnbWVudC1tYXROLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9m
cmFnbWVudC1tYXROLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZmQzMTE2Li4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvZnJhZ21lbnQt
bWF0Ti5mcworKysgL2Rldi9udWxsCkBAIC0xLDIzICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1w
IGZsb2F0OwotdW5pZm9ybSBtYXQyIG0xOwotdW5pZm9ybSBtYXQzIG0yOwotdW5pZm9ybSBtYXQ0
IG0zOwotCi12b2lkIG1haW4oKQotewotICAgIC8vIFRlc3RpbmcgaW5kaXZpZHVhbCBlbnRyaWVz
IHRvIGNoZWNrIGNvcnJlY3Qgb3JkZXIuCi0gICAgaWYgKG0xWzBdWzBdID09IDEuICYmIG0xWzBd
WzFdID09IDEuCi0gICAgICAgICYmIG0xWzFdWzBdID09IDAuICYmIG0xWzFdWzFdID09IDAuCi0g
ICAgICAgICYmCi0gICAgICAgIG0yWzBdWzBdID09IDEuICYmIG0yWzBdWzFdID09IDAuICYmIG0y
WzBdWzJdID09IDEuCi0gICAgICAgICYmIG0yWzFdWzBdID09IDAuICYmIG0yWzFdWzFdID09IDEu
ICYmIG0yWzFdWzJdID09IDEuCi0gICAgICAgICYmIG0yWzJdWzBdID09IDAuICYmIG0yWzJdWzFd
ID09IDEuICYmIG0yWzJdWzJdID09IDAuCi0gICAgICAgICYmCi0gICAgICAgIG0zWzBdWzBdID09
IDEuICYmIG0zWzBdWzFdID09IDEuICYmIG0zWzBdWzJdID09IDAuICYmIG0zWzBdWzNdID09IDAu
Ci0gICAgICAgICYmIG0zWzFdWzBdID09IDAuICYmIG0zWzFdWzFdID09IDEuICYmIG0zWzFdWzJd
ID09IDEuICYmIG0zWzFdWzNdID09IDAuCi0gICAgICAgICYmIG0zWzJdWzBdID09IDEuICYmIG0z
WzJdWzFdID09IDAuICYmIG0zWzJdWzJdID09IDAuICYmIG0zWzJdWzNdID09IDEuCi0gICAgICAg
ICYmIG0zWzNdWzBdID09IDEuICYmIG0zWzNdWzFdID09IDEuICYmIG0zWzNdWzJdID09IDEuICYm
IG0zWzNdWzNdID09IDEuKQotICAgICAgICBnbF9GcmFnQ29sb3IgPSB2ZWM0KDAuMCwgMS4wLCAw
LjAsIDEuMCk7Ci0gICAgZWxzZSAKLSAgICAgICAgZ2xfRnJhZ0NvbG9yID0gdmVjNCgxLjAsIDAu
MCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9ncmF5c2NhbGUtY29sb3ItbWF0cml4LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9ncmF5c2NhbGUtY29sb3ItbWF0cml4LmZzCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBiMDNkODVkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvZ3JheXNjYWxlLWNvbG9yLW1hdHJpeC5mcworKysgL2Rldi9udWxsCkBA
IC0xLDkgKzAsMCBAQAotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfQ29sb3JNYXRyaXggPSBtYXQ0
KAotICAgICAgICAwLjMzMywgMC4zMzMsIDAuMzMzLCAwLjAwMCwKLSAgICAgICAgMC4zMzMsIDAu
MzMzLCAwLjMzMywgMC4wMDAsCi0gICAgICAgIDAuMzMzLCAwLjMzMywgMC4zMzMsIDAuMDAwLAot
ICAgICAgICAwLjAwMCwgMC4wMDAsIDAuMDAwLCAxLjAwMAotICAgICk7Ci19CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtYS10cmlhbmdsZS1j
b29yZC13aXRoLWF0dGFjaGVkLW1lc2gudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL2ludmFsaWQtYS10cmlhbmdsZS1jb29yZC13aXRoLWF0dGFjaGVkLW1lc2gudnMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVjNThjOGUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLWEtdHJpYW5nbGUtY29vcmQtd2l0
aC1hdHRhY2hlZC1tZXNoLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gVGhp
cyBzaGFkZXIgc2hvdWxkIG5vdCBleGVjdXRlIGlmIHRoZSBtZXNoIGlzIGF0dGFjaGVkIGJlY2F1
c2UgYV90cmlhbmdsZUNvb3JkIGlzIG9ubHkgYXZhaWxhYmxlIGluIGRldGFjaGVkIG1lc2hzZXMu
Ci0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjMyBhX3RyaWFuZ2xl
Q29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVj
dGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVj
dGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtY3VzdG9tLWF0dHJpYnV0ZS52cyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzZWI2YjFlLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZz
CisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyByZWxh
dGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJlY2F1
c2UgbXlfYXR0cmlidXRlIGlzIG5vdCBvbmUgb2YgdGhlIGJ1aWx0LWluIGF0dHJpYnV0ZXMuCi0K
LXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgZmxvYXQgbXlfYXR0cmlidXRl
OwotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25N
YXRyaXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25N
YXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXNoYWRlci52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDNjMWViYmIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9pbnZhbGlkLXNoYWRlci52cworKysgL2Rldi9udWxsCkBAIC0xLDIgKzAsMCBAQAotVGhp
cyBpcyBub3QgYSByZWFsIHZlcnRleCBzaGFkZXIuIEl0IGlzIGp1c3QgaW52YWxpZCBzaGFkZXIg
Y29kZS4KLUl0IGlzIHVzZWQgdG8gdGVzdCB0aGF0IHRoZSBmaWx0ZXIgaXMgbm90IGRyYXduIHdo
ZW4gdGhlIHNoYWRlciBpcyBpbnZhbGlkLgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBl
LWEtbWVzaC1jb29yZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52
YWxpZC10eXBlLWEtbWVzaC1jb29yZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDgyNDk3Ny4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2ludmFsaWQtdHlwZS1hLW1lc2gtY29vcmQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCww
IEBACi0vLyBJZiB0aGlzIHNoYWRlcidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20g
ZmlsdGVyIGRvZXMgbm90IGV4ZWN1dGUgYmVjYXVzZSBhX21lc2hDb29yZCdzIHR5cGUgaXMgaW52
YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIGFfbWVzaENvb3JkIHNob3Vs
ZCBiZSBhIHZlYzIsIG5vdCBhIGZsb2F0LgotYXR0cmlidXRlIGZsb2F0IGFfbWVzaENvb3JkOwot
YXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLQotdW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1h
dHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1h
dHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXBvc2l0aW9uLnZzIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS1wb3NpdGlvbi52cwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNTE1NGVhNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXBvc2l0aW9uLnZzCisrKyAvZGV2
L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyByZWxhdGVkIHRlc3Qg
cGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJlY2F1c2UgYV9wb3Np
dGlvbidzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8v
IGFfcG9zaXRpb24gc2hvdWxkIGJlIGEgdmVjNCwgbm90IGEgdmVjMy4KLWF0dHJpYnV0ZSB2ZWMz
IGFfcG9zaXRpb247Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotCi12b2lkIG1h
aW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogdmVjNChhX3Bv
c2l0aW9uLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9pbnZhbGlkLXR5cGUtYS10ZXgtY29vcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRleC1jb29yZC52cwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMjQyOWM3MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRleC1jb29yZC52cworKysgL2Rldi9u
dWxsCkBAIC0xLDEzICswLDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBh
c3NlcywgdGhlIGN1c3RvbSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIGFfdGV4Q29v
cmQncyB0eXBlIGlzIGludmFsaWQuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyBh
X21lc2hDb29yZCBzaG91bGQgYmUgYSB2ZWMyLCBub3QgYW4gdmVjNC4KLWF0dHJpYnV0ZSB2ZWM0
IGFfdGV4Q29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVf
cHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRyaWFuZ2xlLWNvb3JkLnZz
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS10cmlh
bmdsZS1jb29yZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmVkNjYyOS4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlw
ZS1hLXRyaWFuZ2xlLWNvb3JkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLy8g
SWYgdGhpcyBzaGFkZXIncyByZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBk
b2VzIG5vdCBleGVjdXRlIGJlY2F1c2UgYV90cmlhbmdsZUNvb3JkJ3MgdHlwZSBpcyBpbnZhbGlk
LgotLy8gVGhlIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGRlZmluZSBhIGRldGFjaGVkIG1lc2ggYmVj
YXVzZSBhX3RyaWFuZ2xlQ29vcmQgaXMgb25seSBhdmFpbGFibGUgd2l0aCBhIGRldGFjaGVkIG1l
c2guCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyBhX3RyaWFuZ2xlQ29vcmQgc2hv
dWxkIGJlIGEgdmVjMywgbm90IGEgdmVjMi4KLWF0dHJpYnV0ZSB2ZWMyIGFfdHJpYW5nbGVDb29y
ZDsKLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9u
TWF0cml4OwotCi12b2lkIG1haW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9u
TWF0cml4ICogYV9wb3NpdGlvbjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1hcnJheS52cyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1hcnJheS52
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjEzZTc5ZS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hdHRyaWJ1dGUt
YXJyYXkudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi0vLyBJZiB0aGlzIHNoYWRl
cidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20gZmlsdGVyIGRvZXMgbm90IGV4ZWN1
dGUgYmVjYXVzZSBhX3Bvc2l0aW9uJ3MgdHlwZSBpcyBpbnZhbGlkLgotCi1wcmVjaXNpb24gbWVk
aXVtcCBmbG9hdDsKLQotLy8gYV9wb3NpdGlvbiBzaG91bGQgYmUgYSB2ZWM0LCBub3QgYSB2ZWM0
IGFycmF5LgotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvblsxXTsKLXVuaWZvcm0gbWF0NCB1X3By
b2plY3Rpb25NYXRyaXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3By
b2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0aW9uWzBdOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJveC5mcyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1ib3gu
ZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQxY2I2N2EuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJv
eC5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3Mg
cmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3RvbSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBi
ZWNhdXNlIHVfbWVzaEJveCdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAg
ZmxvYXQ7Ci0KLS8vIHVfbWVzaEJveCBzaG91bGQgYmUgYSB2ZWM0LCBub3QgYSB2ZWMzLgotdW5p
Zm9ybSB2ZWMzIHVfbWVzaEJveDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfTWl4Q29sb3Ig
PSB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LW1lc2gtc2l6ZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1zaXplLmZz
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYjA4MGUwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1zaXpl
LmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyBy
ZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJl
Y2F1c2UgdV9tZXNoU2l6ZSdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAg
ZmxvYXQ7Ci0KLS8vIHVfbWVzaFNpemUgc2hvdWxkIGJlIGEgdmVjMiwgbm90IGEgZmxvYXQuCi11
bmlmb3JtIGZsb2F0IHVfbWVzaFNpemU7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgY3NzX01peENv
bG9yID0gdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJp
eC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUt
cHJvamVjdGlvbi1tYXRyaXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI1ZmIx
MTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZh
bGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJpeC5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICsw
LDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3Rv
bSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIHVfcHJvamVjdGlvbk1hdHJpeCdzIHR5
cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfcHJvamVj
dGlvbk1hdHJpeCBzaG91bGQgYmUgYSBtYXQ0LCBub3QgYSBtYXQzLgotdW5pZm9ybSBtYXQzIHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfTWl4Q29sb3IgPSB2
ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LXRleHR1cmUtc2l6ZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGV4dHVyZS1zaXpl
LmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlMDU2OGYwLi4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGV4dHVy
ZS1zaXplLmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFk
ZXIncyByZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVj
dXRlIGJlY2F1c2UgdV90ZXh0dXJlU2l6ZSdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9u
IG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfdGV4dHVyZVNpemUgc2hvdWxkIGJlIGEgdmVjMiwgbm90
IGEgdmVjMy4KLXVuaWZvcm0gdmVjMyB1X3RleHR1cmVTaXplOwotCi12b2lkIG1haW4oKQotewot
ICAgIGNzc19NaXhDb2xvciA9IHZlYzQoMS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGls
ZS1zaXplLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5
cGUtdS10aWxlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE3ZGEzZTgu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlk
LXR5cGUtdS10aWxlLXNpemUuZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0vLyBJ
ZiB0aGlzIHNoYWRlcidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20gZmlsdGVyIGRv
ZXMgbm90IGV4ZWN1dGUgYmVjYXVzZSB1X3RpbGVTaXplJ3MgdHlwZSBpcyBpbnZhbGlkLgotCi1w
cmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotLy8gdV90aWxlU2l6ZSBzaG91bGQgYmUgYSB2ZWMy
LCBub3QgYSBtYXQyLgotdW5pZm9ybSBtYXQyIHVfdGlsZVNpemU7Ci0KLXZvaWQgbWFpbigpCi17
Ci0gICAgY3NzX01peENvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdW5p
Zm9ybS1hcnJheS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxp
ZC10eXBlLXVuaWZvcm0tYXJyYXkuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYx
YzM5OWQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9p
bnZhbGlkLXR5cGUtdW5pZm9ybS1hcnJheS5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAg
QEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3RvbSBm
aWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIHVfbWVzaEJveCdzIHR5cGUgaXMgaW52YWxp
ZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfbWVzaEJveCBzaG91bGQgYmUg
YSB2ZWM0LCBub3QgYW4gYXJyYXkgb2YgdmVjNC4KLXVuaWZvcm0gdmVjNCB1X21lc2hCb3hbMV07
Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgY3NzX01peENvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4w
LCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9taXgtY29sb3IuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL21peC1j
b2xvci5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDJmZTYzNC4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL21peC1jb2xvci5mcworKysg
L2Rldi9udWxsCkBAIC0xLDcgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci11bmlm
b3JtIHZlYzQgbWl4X2NvbG9yOwotCi12b2lkIG1haW4oKQotewotICAgIGNzc19NaXhDb2xvciA9
IG1peF9jb2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL3Bhc3MtdGV4LWNvb3JkLnZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0ZmZk
MjdiLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvcGFz
cy10ZXgtY29vcmQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi1wcmVjaXNpb24g
bWVkaXVtcCBmbG9hdDsKLQotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLWF0dHJpYnV0ZSB2
ZWMyIGFfdGV4Q29vcmQ7Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdmFyeWlu
ZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgdl90ZXhDb29yZCA9IGFf
dGV4Q29vcmQ7Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0
aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9z
YW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXguZnMKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNlZjk4ODUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1p
eC5mcworKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLS8vIFRoaXMgdGVzdCBjaGVja3Mg
dGhhdCBhIHNoYWRlciBjYW5ub3QgcmVhZCBmcm9tIHRoZSBpbnRlcm5hbCAiY3NzX3VfdGV4dHVy
ZSIgc2FtcGxlciwgd2hpY2ggcmVmZXJlbmNlcyB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLS8v
IFRoaXMgc2hhZGVyIGlzIHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlvbiBhbmQg
c2hvdWxkIGZhaWwgdG8gdmFsaWRhdGUgYmVjYXVzZSBpdCBkZWZpbmVzICJjc3NfdV90ZXh0dXJl
IiwKLS8vIHVzaW5nIHRoZSByZXN0cmljdGVkICJjc3NfIiBwcmVmaXguCi0KLXByZWNpc2lvbiBt
ZWRpdW1wIGZsb2F0OwotCi11bmlmb3JtIHNhbXBsZXIyRCBjc3NfdV90ZXh0dXJlOwotCi12YXJ5
aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBtYWluKCkKLXsKLQkvLyBUcnkgdG8gc2FtcGxl
IHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZlYzQgY29sb3IgPSB0ZXh0dXJlMkQoY3NzX3Vf
dGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBTd2FwIHRoZSByZWQgYW5kIGdyZWVuIGNoYW5u
ZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0KLQljc3NfTWl4Q29sb3IgPSBjb2xvcjsKLX0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLWRl
ZmluZWQtY3NzLXUtdGV4dHVyZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVyZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNTg0NmQxNy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL3NhbXBsZS1kZWZpbmVkLWNzcy11LXRleHR1cmUuZnMKKysrIC9kZXYvbnVsbApA
QCAtMSwyMCArMCwwIEBACi0vLyBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYSBzaGFkZXIgY2Fubm90
IHJlYWQgZnJvbSB0aGUgaW50ZXJuYWwgImNzc191X3RleHR1cmUiIHNhbXBsZXIsIHdoaWNoIHJl
ZmVyZW5jZXMgdGhlIERPTSBlbGVtZW50IHRleHR1cmUuCi0vLyBUaGlzIHNoYWRlciBzaG91bGQg
ZmFpbCB0byB2YWxpZGF0ZSBiZWNhdXNlIGl0IGRlZmluZXMgImNzc191X3RleHR1cmUiLCB3aGlj
aCBzaG91bGQgYmUgYW4gdW5ib3VuZCBzYW1wbGVyLAotLy8gc2luY2UgdGhpcyBzaGFkZXIgaXMg
bm90IHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlvbi4KLQotcHJlY2lzaW9uIG1l
ZGl1bXAgZmxvYXQ7Ci0KLXVuaWZvcm0gc2FtcGxlcjJEIGNzc191X3RleHR1cmU7Ci0KLXZhcnlp
bmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQotewotCS8vIFRyeSB0byBzYW1wbGUg
dGhlIERPTSBlbGVtZW50IHRleHR1cmUuCi0JdmVjNCBjb2xvciA9IHRleHR1cmUyRChjc3NfdV90
ZXh0dXJlLCB2X3RleENvb3JkKTsKLQotCS8vIFN3YXAgdGhlIHJlZCBhbmQgZ3JlZW4gY2hhbm5l
bHMuCi0JY29sb3IucmcgPSBjb2xvci5ncjsKLQotCWdsX0ZyYWdDb2xvciA9IGNvbG9yOwotfQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtdS10
ZXh0dXJlLW1peC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxl
LXUtdGV4dHVyZS1taXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ1ZjM1MjIu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUt
dS10ZXh0dXJlLW1peC5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAKLS8vIFRoaXMg
dGVzdCBjaGVja3MgdGhhdCBhIHNoYWRlciB3aXRoIGFuIHVuYm91bmQgc2FtcGxlciBpcyBub3Qg
cGVybWl0dGVkIHRvIGV4ZWN1dGUuCi0vLyBUaGlzIHNoYWRlciBpcyByZWZlcmVuY2VkIGZyb20g
dGhlIENTUyBtaXggZnVuY3Rpb24gYW5kIHdyaXRlcyBpdHMgb3V0cHV0IHRvIGNzc19NaXhDb2xv
ci4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXVuaWZvcm0gc2FtcGxlcjJEIHVfdGV4
dHVyZTsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0JLy8g
VHJ5IHRvIHNhbXBsZSB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLQl2ZWM0IGNvbG9yID0gdGV4
dHVyZTJEKHVfdGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBTd2FwIHRoZSByZWQgYW5kIGdy
ZWVuIGNoYW5uZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0KLQljc3NfTWl4Q29sb3IgPSBj
b2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
c2FtcGxlLXUtdGV4dHVyZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
c2FtcGxlLXUtdGV4dHVyZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2MwMmI4
NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3NhbXBs
ZS11LXRleHR1cmUuZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vLyBUaGlzIHRl
c3QgY2hlY2tzIHRoYXQgYSBzaGFkZXIgd2l0aCBhbiB1bmJvdW5kIHNhbXBsZXIgaXMgbm90IHBl
cm1pdHRlZCB0byBleGVjdXRlLgotLy8gVGhpcyBzaGFkZXIgaXMgbm90IHJlZmVyZW5jZWQgZnJv
bSB0aGUgQ1NTIG1peCBmdW5jdGlvbiBhbmQgd3JpdGVzIGl0cyBvdXRwdXQgdG8gZ2xfRnJhZ0Nv
bG9yLgotCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdW5pZm9ybSBzYW1wbGVyMkQgdV90
ZXh0dXJlOwotCi12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBtYWluKCkKLXsKLQkv
LyBUcnkgdG8gc2FtcGxlIHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZlYzQgY29sb3IgPSB0
ZXh0dXJlMkQodV90ZXh0dXJlLCB2X3RleENvb3JkKTsKLQotCS8vIFN3YXAgdGhlIHJlZCBhbmQg
Z3JlZW4gY2hhbm5lbHMuCi0JY29sb3IucmcgPSBjb2xvci5ncjsKLQotCWdsX0ZyYWdDb2xvciA9
IGNvbG9yOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4LmZzIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4LmZz
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYjk2NmIwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10
ZXh0dXJlLW1peC5mcworKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLS8vIFRoaXMgdGVz
dCBjaGVja3MgdGhhdCBhIHNoYWRlciBjYW5ub3QgcmVhZCBmcm9tIHRoZSBpbnRlcm5hbCAiY3Nz
X3VfdGV4dHVyZSIgc2FtcGxlciwgd2hpY2ggcmVmZXJlbmNlcyB0aGUgRE9NIGVsZW1lbnQgdGV4
dHVyZS4KLS8vIFRoaXMgc2hhZGVyIHNob3VsZCBmYWlsIHRvIHZhbGlkYXRlIGJlY2F1c2UgImNz
c191X3RleHR1cmUiIHNob3VsZCBiZSB1bmRlZmluZWQgdG8gdGhpcyBjb2RlLgotCi1wcmVjaXNp
b24gbWVkaXVtcCBmbG9hdDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFp
bigpCi17Ci0JLy8gVHJ5IHRvIHNhbXBsZSB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLQl2ZWM0
IGNvbG9yID0gdGV4dHVyZTJEKGNzc191X3RleHR1cmUsIHZfdGV4Q29vcmQpOwotCi0JLy8gU3dh
cCB0aGUgcmVkIGFuZCBncmVlbiBjaGFubmVscy4KLQljb2xvci5yZyA9IGNvbG9yLmdyOwotCi0J
Y3NzX01peENvbG9yID0gY29sb3I7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10ZXh0
dXJlLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMWUyZjJhLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1j
c3MtdS10ZXh0dXJlLmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTcgKzAsMCBAQAotLy8gVGhpcyB0
ZXN0IGNoZWNrcyB0aGF0IGEgc2hhZGVyIGNhbm5vdCByZWFkIGZyb20gdGhlIGludGVybmFsICJj
c3NfdV90ZXh0dXJlIiBzYW1wbGVyLCB3aGljaCByZWZlcmVuY2VzIHRoZSBET00gZWxlbWVudCB0
ZXh0dXJlLgotLy8gVGhpcyBzaGFkZXIgc2hvdWxkIGZhaWwgdG8gdmFsaWRhdGUgYmVjYXVzZSAi
Y3NzX3VfdGV4dHVyZSIgc2hvdWxkIGJlIHVuZGVmaW5lZCB0byB0aGlzIGNvZGUuCi0KLXByZWNp
c2lvbiBtZWRpdW1wIGZsb2F0OwotCi12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBt
YWluKCkKLXsKLQkvLyBUcnkgdG8gc2FtcGxlIHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZl
YzQgY29sb3IgPSB0ZXh0dXJlMkQoY3NzX3VfdGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBT
d2FwIHRoZSByZWQgYW5kIGdyZWVuIGNoYW5uZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0K
LQlnbF9GcmFnQ29sb3IgPSBjb2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcwpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2E4ZDA2OC4uMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1ib3gtaXMtdW5pdC1zcXVhcmUu
ZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vLyBUZXN0IHdoZXRoZXIgdV9tZXNo
Qm94IGlzIGNvcnJlY3RseSBzZXQ7IGNoYW5nZSBmcmFnbWVudCBjb2xvciB0byBncmVlbiBpZiB5
ZXMuCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVuaWZvcm0gdmVjNCB1X21lc2hCb3g7Ci0K
LWJvb2wgYXJlRmxvYXRzRXF1YWwoZmxvYXQgYSwgZmxvYXQgYikKLXsKLSAgICBjb25zdCBmbG9h
dCBlcHNpbG9uID0gMC4wMDE7Ci0gICAgcmV0dXJuIChhID4gKGIgLSBlcHNpbG9uKSkgJiYgKGEg
PCAoYiArIGVwc2lsb24pKTsKLX0KLQotYm9vbCBhcmVWZWN0b3JzRXF1YWwodmVjNCBhLCB2ZWM0
IGIpCi17Ci0gICAgcmV0dXJuIGFyZUZsb2F0c0VxdWFsKGEueCwgYi54KSAmJiBhcmVGbG9hdHNF
cXVhbChhLnksIGIueSkgJiYgYXJlRmxvYXRzRXF1YWwoYS56LCBiLnopICYmIGFyZUZsb2F0c0Vx
dWFsKGEudywgYi53KTsKLX0KLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9GcmFnQ29sb3IgPSBh
cmVWZWN0b3JzRXF1YWwodV9tZXNoQm94LCB2ZWM0KC0wLjUsIC0wLjUsIDEuMCwgMS4wKSkgPyB2
ZWM0KDAuMCwgMS4wLCAwLjAsIDEuMCkgOiB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1zaXpl
LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LW1lc2gtc2l6ZS5mcwpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjU1Mjc3NC4uMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1zaXplLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsMTkgKzAsMCBAQAotLy8gVGVzdCB3aGV0aGVyIHVfbWVzaFNpemUgaXMgY29ycmVj
dGx5IHNldDsgY2hhbmdlIGZyYWdtZW50IHRvIGNvbG9yIGdyZWVuIGlmIHllcy4KLXByZWNpc2lv
biBtZWRpdW1wIGZsb2F0OwotdW5pZm9ybSB2ZWMyIHVfbWVzaFNpemU7Ci0KLWJvb2wgYXJlRmxv
YXRzRXF1YWwoZmxvYXQgYSwgZmxvYXQgYikKLXsKLSAgICBjb25zdCBmbG9hdCBlcHNpbG9uID0g
MC4wMDE7Ci0gICAgcmV0dXJuIChhID4gKGIgLSBlcHNpbG9uKSkgJiYgKGEgPCAoYiArIGVwc2ls
b24pKTsKLX0KLQotYm9vbCBhcmVWZWN0b3JzRXF1YWwodmVjMiBhLCB2ZWMyIGIpCi17Ci0gICAg
cmV0dXJuIGFyZUZsb2F0c0VxdWFsKGEueCwgYi54KSAmJiBhcmVGbG9hdHNFcXVhbChhLnksIGIu
eSk7Ci19Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfRnJhZ0NvbG9yID0gYXJlVmVjdG9yc0Vx
dWFsKHVfbWVzaFNpemUsIHZlYzIoMTAuMCwgMjAuMCkpID8gdmVjNCgwLjAsIDEuMCwgMC4wLCAx
LjApIDogdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LXRleHR1cmUtc2l6ZS5mcyBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdS10ZXh0dXJlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDE3NTE1ZGYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL3Jlc291cmNlcy91LXRleHR1cmUtc2l6ZS5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5
ICswLDAgQEAKLS8vIFRlc3Qgd2hldGhlciB1X3RleHR1cmVTaXplIGlzIGNvcnJlY3RseSBzZXQ7
IGNoYW5nZSBmcmFnbWVudCBjb2xvciB0byBncmVlbiBpZiB5ZXMuCi1wcmVjaXNpb24gbWVkaXVt
cCBmbG9hdDsKLXVuaWZvcm0gdmVjMiB1X3RleHR1cmVTaXplOwotCi1ib29sIGFyZUZsb2F0c0Vx
dWFsKGZsb2F0IGEsIGZsb2F0IGIpCi17Ci0gICAgY29uc3QgZmxvYXQgZXBzaWxvbiA9IDAuMDAx
OwotICAgIHJldHVybiAoYSA+IChiIC0gZXBzaWxvbikpICYmIChhIDwgKGIgKyBlcHNpbG9uKSk7
Ci19Ci0KLWJvb2wgYXJlVmVjdG9yc0VxdWFsKHZlYzIgYSwgdmVjMiBiKQotewotICAgIHJldHVy
biBhcmVGbG9hdHNFcXVhbChhLngsIGIueCkgJiYgYXJlRmxvYXRzRXF1YWwoYS55LCBiLnkpOwot
fQotCi12b2lkIG1haW4oKQotewotICAgIGdsX0ZyYWdDb2xvciA9IGFyZVZlY3RvcnNFcXVhbCh1
X3RleHR1cmVTaXplLCB2ZWMyKDEwMC4wLCAxMDAuMCkpID8gdmVjNCgwLjAsIDEuMCwgMC4wLCAx
LjApIDogdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LXRpbGUtc2l6ZS5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvdS10aWxlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDkzNWUzNDAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L3Jlc291cmNlcy91LXRpbGUtc2l6ZS5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAK
LS8vIFRlc3Qgd2hldGhlciB1X3RpbGVTaXplIGlzIGNvcnJlY3RseSBzZXQ7IGNoYW5nZSBmcmFn
bWVudCBjb2xvciB0byBncmVlbiBpZiB5ZXMuCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVu
aWZvcm0gdmVjMiB1X3RpbGVTaXplOwotCi1ib29sIGFyZUZsb2F0c0VxdWFsKGZsb2F0IGEsIGZs
b2F0IGIpCi17Ci0gICAgY29uc3QgZmxvYXQgZXBzaWxvbiA9IDAuMDAxOwotICAgIHJldHVybiAo
YSA+IChiIC0gZXBzaWxvbikpICYmIChhIDwgKGIgKyBlcHNpbG9uKSk7Ci19Ci0KLWJvb2wgYXJl
VmVjdG9yc0VxdWFsKHZlYzIgYSwgdmVjMiBiKQotewotICAgIHJldHVybiBhcmVGbG9hdHNFcXVh
bChhLngsIGIueCkgJiYgYXJlRmxvYXRzRXF1YWwoYS55LCBiLnkpOwotfQotCi12b2lkIG1haW4o
KQotewotICAgIGdsX0ZyYWdDb2xvciA9IGFyZVZlY3RvcnNFcXVhbCh1X3RpbGVTaXplLCB2ZWMy
KDEuMCAvIDEwLjAsIDEuMCAvIDIwLjApKSA/IHZlYzQoMC4wLCAxLjAsIDAuMCwgMS4wKSA6IHZl
YzQoMS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdW5hdmFpbGFibGUtdmFyeWluZy5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvdW5hdmFpbGFibGUtdmFyeWluZy5mcwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggODc1OGUzYy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL3VuYXZhaWxhYmxlLXZhcnlpbmcuZnMKKysrIC9kZXYvbnVsbApA
QCAtMSw4ICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotdmFyeWluZyB2ZWM0IHVu
YXZhaWxhYmxlOwotCi12b2lkIG1haW4gKCkKLXsKLSAgICBjc3NfTWl4Q29sb3IgPSB1bmF2YWls
YWJsZTsKLX0KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy92YXJ5aW5nLW1peC1jb2xvci5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvdmFyeWluZy1taXgtY29sb3IuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZh
YmMxNDUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92
YXJ5aW5nLW1peC1jb2xvci5mcworKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotcHJlY2lz
aW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXZhcnlpbmcgdmVjNCB2X21peENvbG9yOwotCi12b2lkIG1h
aW4oKQotewotICAgIGNzc19NaXhDb2xvciA9IHZfbWl4Q29sb3I7Ci19CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1leHBsb2RlLWRldGFjaGVk
LnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtZXhwbG9kZS1k
ZXRhY2hlZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTdlZGVkZC4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1leHBsb2Rl
LWRldGFjaGVkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotcHJlY2lzaW9uIG1l
ZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVj
MiBhX3RleENvb3JkOwotYXR0cmlidXRlIHZlYzMgYV90cmlhbmdsZUNvb3JkOwotCi11bmlmb3Jt
IG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZv
aWQgbWFpbigpCi17Ci0gICAgLy8gYV90cmlhbmdsZUNvb3JkLnh5IGlzIHRoZSBwb3NpdGlvbiBv
ZiB0aGUgdGlsZSBpbiB0aGUgbWVzaCwgc28gd2Ugb2Zmc2V0IHRoZSB2ZXJ0aWNlcwotICAgIC8v
IHdpdGggdGhlIHBvc2l0aW9uIGluIG1lc2guIFRoZSB0aWxlcyBzaG91bGQgYmUgZGV0YWNoZWQg
ZnJvbSBlYWNoIG90aGVyLgotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICog
KGFfcG9zaXRpb24gKyB2ZWM0KGFfdHJpYW5nbGVDb29yZC54IC8gNC4wLCBhX3RyaWFuZ2xlQ29v
cmQueSAvIDQuMCwgMC4wLCAwLjApKTsKLSAgICB2X3RleENvb3JkID0gYV90ZXhDb29yZDsKLX0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LWhv
cml6b250YWwtb2Zmc2V0LnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92
ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGVmMGRhYjAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy92ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCww
IEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlv
bjsKLWF0dHJpYnV0ZSB2ZWMyIGFfdGV4Q29vcmQ7Ci0KLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rp
b25NYXRyaXg7Ci11bmlmb3JtIGZsb2F0IG9mZnNldDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29v
cmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRy
aXggKiAoYV9wb3NpdGlvbiArIHZlYzQoMC4wLCBvZmZzZXQsIDAuMCwgMC4wKSk7Ci0gICAgdl90
ZXhDb29yZCA9IGFfdGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQtcGFyYW1ldGVycy52cyBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MWIxYjBhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzCisr
KyAvZGV2L251bGwKQEAgLTEsNjEgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0K
LWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVjMiBhX3RleENvb3JkOwot
Ci11bmlmb3JtIGZsb2F0IHBlcnNwZWN0aXZlOwotdW5pZm9ybSB2ZWMyIHZlcnRleF9vZmZzZXQ7
Ci11bmlmb3JtIHZlYzMgcm90YXRlOwotCi11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4
OwotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLWNvbnN0IGZsb2F0IE1fUEkgPSAzLjE0MTU5
MjY1OwotCi1tYXQ0IHBlcnNwZWN0aXZlTWF0cml4KGZsb2F0IHApIHsKLSAgICByZXR1cm4gbWF0
NCgxLjAsIDAuMCwgMC4wLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAxLjAsIDAuMCwgMC4w
LAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxLjAsIC0gMS4wIC8gcCwKLSAgICAgICAgICAg
ICAgICAwLjAsIDAuMCwgMC4wLCAxLjApOwotfQotCi1tYXQ0IHRyYW5zbGF0ZU1hdHJpeCh2ZWMy
IHQpIHsKLSAgICByZXR1cm4gbWF0NCgxLjAsIDAuMCwgMC4wLCAwLjAsCi0gICAgICAgICAgICAg
ICAgMC4wLCAxLjAsIDAuMCwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxLjAsIDAu
MCwKLSAgICAgICAgICAgICAgICB0LngsIHQueSwgMC4wLCAxLjApOwotfQotCi1tYXQ0IHJvdGF0
ZVhNYXRyaXgoZmxvYXQgZikgewotICAgIHJldHVybiBtYXQ0KDEuMCwgMC4wLCAwLjAsIDAuMCwK
LSAgICAgICAgICAgICAgICAwLjAsIGNvcyhmKSwgc2luKGYpLCAwLjAsCi0gICAgICAgICAgICAg
ICAgMC4wLCAtc2luKGYpLCBjb3MoZiksIDAuMCwKLSAgICAgICAgICAgICAgICAwLjAsIDAuMCwg
MC4wLCAxLjApOwotfQotCi1tYXQ0IHJvdGF0ZVlNYXRyaXgoZmxvYXQgZikgewotICAgIHJldHVy
biBtYXQ0KGNvcyhmKSwgMC4wLCAtc2luKGYpLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAx
LjAsIDAuMCwgMC4wLAotICAgICAgICAgICAgICAgIHNpbihmKSwgMCwgY29zKGYpLCAwLjAsCi0g
ICAgICAgICAgICAgICAgMC4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KLQotbWF0NCByb3RhdGVaTWF0
cml4KGZsb2F0IGYpIHsKLSAgICByZXR1cm4gbWF0NChjb3MoZiksIHNpbihmKSwgMC4wLCAwLjAs
Ci0gICAgICAgICAgICAgICAgLXNpbihmKSwgY29zKGYpLCAwLjAsIDAuMCwKLSAgICAgICAgICAg
ICAgICAwLjAsIDAuMCwgMS4wLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAwLjAsIDAuMCwg
MS4wKTsKLX0KLQotbWF0NCByb3RhdGVNYXRyaXgodmVjMyBhKSB7Ci0gICAgcmV0dXJuIHJvdGF0
ZVhNYXRyaXgoYS54KSAqIHJvdGF0ZVlNYXRyaXgoYS55KSAqIHJvdGF0ZVpNYXRyaXgoYS56KTsK
LX0KLQotdm9pZCBtYWluKCkKLXsKLSAgICAvLyBVc2UgdGhlIHZhbHVlcyBmcm9tIENTUyB0byBj
aGFuZ2UgdGhlIHBlcnNwZWN0aXZlLCB0cmFuc2xhdGUgYW5kIHJvdGF0ZSB0aGUgc3VyZmFjZS4g
VGhpcyB3YXkgd2UgY2FuIHRlc3QKLSAgICAvLyBmbG9hdCwgdmVjMiBhbmQgdmVjMy4gTm90ZSB0
aGF0IHZlYzQgaXMgdGVzdGVkIGluIHRoZSBmcmFnbWVudCBzaGFkZXIgdmVydGV4LW9mZnNldC1w
YXJhbWV0ZXJzLmZzLgotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogcGVy
c3BlY3RpdmVNYXRyaXgocGVyc3BlY3RpdmUpICogdHJhbnNsYXRlTWF0cml4KHZlcnRleF9vZmZz
ZXQpICogcm90YXRlTWF0cml4KHJvdGF0ZSAqIE1fUEkgLyAxODAuMCkgKiBhX3Bvc2l0aW9uOwot
ICAgIAotICAgIHZfdGV4Q29vcmQgPSBhX3RleENvb3JkOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBhOTFkYjdkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cworKysgL2Rldi9udWxsCkBAIC0xLDE0
ICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bv
c2l0aW9uOwotYXR0cmlidXRlIHZlYzIgYV90ZXhDb29yZDsKLQotdW5pZm9ybSBtYXQ0IHVfcHJv
amVjdGlvbk1hdHJpeDsKLXZhcnlpbmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQot
ewotICAgIC8vIE9mZnNldCB0aGUgcG9zaXRpb24gb2YgdGhlIHZlcnRpY2VzIHdpdGggMC4xIGlu
IHRoZSBYIGF4aXMuCi0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiAoYV9w
b3NpdGlvbiArIHZlYzQoMC4xLCAwLjAsIDAuMCwgMC4wKSk7Ci0gICAgdl90ZXhDb29yZCA9IGFf
dGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL3ZlcnRleC1yb3RhdGUudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L3ZlcnRleC1yb3RhdGUudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUyMzJmOTMu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMjIgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1
bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVjMiBh
X3RleENvb3JkOwotCi11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdW5pZm9ybSBm
bG9hdCByb3RhdGVCeTsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLW1hdDQgcm90YXRl
Wk1hdHJpeChmbG9hdCBmKSB7Ci0gICAgcmV0dXJuIG1hdDQoY29zKGYpLCBzaW4oZiksIDAuMCwg
MC4wLAotICAgICAgICAgICAgICAgIC1zaW4oZiksIGNvcyhmKSwgMC4wLCAwLjAsCi0gICAgICAg
ICAgICAgICAgMC4wLCAwLjAsIDEuMCwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAw
LjAsIDEuMCk7Ci19Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2pl
Y3Rpb25NYXRyaXggKiByb3RhdGVaTWF0cml4KHJvdGF0ZUJ5ICogMy4xNCAvIDE4MC4wKSAqIGFf
cG9zaXRpb247Ci0gICAgdl90ZXhDb29yZCA9IGFfdGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC10cmFuc2Zvcm0tcGFyYW1l
dGVyLnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtdHJhbnNm
b3JtLXBhcmFtZXRlci52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjhjMTZhNi4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC10
cmFuc2Zvcm0tcGFyYW1ldGVyLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotcHJl
Y2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci0KLXVu
aWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci11bmlmb3JtIG1hdDQgdHJhbnNmb3JtOwot
Ci12b2lkIG1haW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICog
dHJhbnNmb3JtICogYV9wb3NpdGlvbjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuanMgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRp
bmdzLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMTkwNzhlLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1t
aXgtYmluZGluZ3MuanMKKysrIC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi1kZXNjcmlwdGlv
bigiVGVzdCBtaXgoKSBmdW5jdGlvbiBKUyBiaW5kaW5ncy4iKTsKLQotZnVuY3Rpb24ganNXcmFw
cGVyQ2xhc3Mobm9kZSkgewotICAgIGlmICghbm9kZSkKLSAgICAgICAgcmV0dXJuICJbbnVsbF0i
OwotICAgIHZhciBzdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmFwcGx5KG5vZGUp
OwotICAgIHJldHVybiBzdHJpbmcuc3Vic3RyKDgsIHN0cmluZy5sZW5ndGggLSA5KTsKLX0KLQot
ZnVuY3Rpb24gc2hvdWxkQmVUeXBlKGV4cHJlc3Npb24sIGNsYXNzTmFtZSwgcHJvdG90eXBlTmFt
ZSwgY29uc3RydWN0b3JOYW1lKSB7Ci0gICAgaWYgKCFwcm90b3R5cGVOYW1lKQotICAgICAgICBw
cm90b3R5cGVOYW1lID0gY2xhc3NOYW1lICsgIlByb3RvdHlwZSI7Ci0gICAgaWYgKCFjb25zdHJ1
Y3Rvck5hbWUpCi0gICAgICAgIGNvbnN0cnVjdG9yTmFtZSA9IGNsYXNzTmFtZSArICJDb25zdHJ1
Y3RvciI7Ci0gICAgc2hvdWxkQmUoImpzV3JhcHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIiki
LCAiJyIgKyBjbGFzc05hbWUgKyAiJyIpOwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygi
ICsgZXhwcmVzc2lvbiArICIuX19wcm90b19fKSIsICInIiArIHByb3RvdHlwZU5hbWUgKyAiJyIp
OwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygiICsgZXhwcmVzc2lvbiArICIuY29uc3Ry
dWN0b3IpIiwgIiciICsgY29uc3RydWN0b3JOYW1lICsgIiciKTsKLX0KLQotZnVuY3Rpb24gcmVt
b3ZlQmFzZVVSTChzcmMpIHsKLSAgICB2YXIgdXJsUmVnZXhwID0gL3VybFwoKFteXCldKilcKS9n
OwotICAgIHJldHVybiBzcmMucmVwbGFjZSh1cmxSZWdleHAsIGZ1bmN0aW9uKG1hdGNoLCB1cmwp
IHsKLSAgICAgICAgcmV0dXJuICJ1cmwoIiArIHVybC5zdWJzdHIodXJsLmxhc3RJbmRleE9mKCIv
IikgKyAxKSArICIpIjsKLSAgICB9KTsKLX0KLQotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLXZhciBzdHlsZUVsZW1lbnQg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRD
aGlsZChzdHlsZUVsZW1lbnQpOwotdmFyIHN0eWxlc2hlZXQgPSBzdHlsZUVsZW1lbnQuc2hlZXQ7
Ci0KLXN0eWxlc2hlZXQuYWRkUnVsZSgiYm9keSIsICItd2Via2l0LWZpbHRlcjogY3VzdG9tKG5v
bmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpKSkiLCAwKTsKLQotdmFy
IGNzc1J1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVzLml0ZW0oMCk7Ci0KLXNob3VsZEJlKCJjc3NS
dWxlLnR5cGUiLCAiMSIpOwotCi12YXIgZGVjbGFyYXRpb24gPSBjc3NSdWxlLnN0eWxlOwotc2hv
dWxkQmUoImRlY2xhcmF0aW9uLmxlbmd0aCIsICIxIik7Ci0KLXZhciBmaWx0ZXJSdWxlID0gZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlDU1NWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKTsKLXZhciBtaXhG
dW5jdGlvbiA9IGZpbHRlclJ1bGVbMF1bMF1bMV07Ci1zaG91bGRCZVR5cGUoIm1peEZ1bmN0aW9u
IiwgIldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUiKTsKLQotdmFyIG1peEZ1bmN0aW9uQ29udGVu
dCA9IHJlbW92ZUJhc2VVUkwobWl4RnVuY3Rpb24uY3NzVGV4dCk7Ci0KLXNob3VsZEJlRXF1YWxU
b1N0cmluZygibWl4RnVuY3Rpb25Db250ZW50IiwgIm1peCh1cmwoY29sb3Itb2Zmc2V0LmZzKSki
KTsKLQotc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1w
YXJzaW5nLWNvbW1vbi5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTIyMWYwYy4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3Rv
bS1maWx0ZXItcGFyc2luZy1jb21tb24uanMKKysrIC9kZXYvbnVsbApAQCAtMSw1NyArMCwwIEBA
Ci0vLyBIZWxwZXIgZnVuY3Rpb25zLgotCi1mdW5jdGlvbiBoZWFkaW5nKHN0cmluZykKLXsKLSAg
ICBkZWJ1ZygiIik7Ci0gICAgZGVidWcoIj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0iKTsKLSAgICBkZWJ1ZyhzdHJpbmcpOwotICAgIGRlYnVnKCI9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Iik7Ci19Ci0KLWZ1bmN0aW9uIGpzV3JhcHBlckNs
YXNzKG5vZGUpCi17Ci0gICAgaWYgKCFub2RlKQotICAgICAgICByZXR1cm4gIltudWxsXSI7Ci0g
ICAgdmFyIHN0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuYXBwbHkobm9kZSk7Ci0g
ICAgcmV0dXJuIHN0cmluZy5zdWJzdHIoOCwgc3RyaW5nLmxlbmd0aCAtIDkpOwotfQotCi0vLyBG
SVhNRTogVGhpcyB0eXBlLWNoZWNraW5nIGFwcHJvYWNoIGZhaWxzIG9uIFY4LCB3aGljaCByZXF1
aXJlcyB1cyB0byBoYXZlIENocm9taXVtLXNwZWNpZmljIGV4cGVjdGF0aW9ucy4KLS8vIFdlIHNo
b3VsZCB1c2UgdGhlIHNob3VsZEhhdmVDb25zdHJ1Y3RvciBmdW5jdGlvbiBpbnN0ZWFkLCB3aGlj
aCB3b3JrcyByZWdhcmRsZXNzIG9mIEpTIGVuZ2luZS4KLWZ1bmN0aW9uIHNob3VsZEJlVHlwZShl
eHByZXNzaW9uLCBjbGFzc05hbWUsIHByb3RvdHlwZU5hbWUsIGNvbnN0cnVjdG9yTmFtZSkKLXsK
LSAgICBpZiAoIXByb3RvdHlwZU5hbWUpCi0gICAgICAgIHByb3RvdHlwZU5hbWUgPSBjbGFzc05h
bWUgKyAiUHJvdG90eXBlIjsKLSAgICBpZiAoIWNvbnN0cnVjdG9yTmFtZSkKLSAgICAgICAgY29u
c3RydWN0b3JOYW1lID0gY2xhc3NOYW1lICsgIkNvbnN0cnVjdG9yIjsKLSAgICBzaG91bGRCZSgi
anNXcmFwcGVyQ2xhc3MoIiArIGV4cHJlc3Npb24gKyAiKSIsICInIiArIGNsYXNzTmFtZSArICIn
Iik7Ci0gICAgc2hvdWxkQmUoImpzV3JhcHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIi5fX3By
b3RvX18pIiwgIiciICsgcHJvdG90eXBlTmFtZSArICInIik7Ci0gICAgc2hvdWxkQmUoImpzV3Jh
cHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIi5jb25zdHJ1Y3RvcikiLCAiJyIgKyBjb25zdHJ1
Y3Rvck5hbWUgKyAiJyIpOwotfQotCi1mdW5jdGlvbiBzaG91bGRIYXZlQ29uc3RydWN0b3IoZXhw
cmVzc2lvbiwgY29uc3RydWN0b3JOYW1lKQotewotICAgIHNob3VsZEJlVHJ1ZShleHByZXNzaW9u
ICsgIiBpbnN0YW5jZW9mICIgKyBjb25zdHJ1Y3Rvck5hbWUpOwotICAgIHNob3VsZEJlVHJ1ZShl
eHByZXNzaW9uICsgIi5jb25zdHJ1Y3RvciA9PT0gIiArIGNvbnN0cnVjdG9yTmFtZSk7Ci0gICAg
c2hvdWxkQmVUcnVlKGV4cHJlc3Npb24gKyAiLl9fcHJvdG9fXyA9PT0gIiArIGNvbnN0cnVjdG9y
TmFtZSArICIucHJvdG90eXBlIik7Ci19Ci0KLS8vIE5lZWQgdG8gcmVtb3ZlIHRoZSBiYXNlIFVS
TCB0byBhdm9pZCBoYXZpbmcgbG9jYWwgcGF0aHMgaW4gdGhlIGV4cGVjdGVkIHJlc3VsdHMuCi1m
dW5jdGlvbiByZW1vdmVCYXNlVVJMKHNyYykgCi17Ci0gICAgdmFyIHVybFJlZ2V4cCA9IC91cmxc
KChbXlwpXSopXCkvZzsKLSAgICByZXR1cm4gc3JjLnJlcGxhY2UodXJsUmVnZXhwLCBmdW5jdGlv
bihtYXRjaCwgdXJsKSB7Ci0gICAgICAgIHJldHVybiAidXJsKCIgKyB1cmwuc3Vic3RyKHVybC5s
YXN0SW5kZXhPZigiLyIpICsgMSkgKyAiKSI7Ci0gICAgfSk7Ci19Ci0KLS8vIENvbW1vbiBzZXR1
cCBmb3IgcGFyc2luZyB0ZXN0cy4KLQotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgd2lu
ZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJF
bmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2Uo
IldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLXZhciBzdHlsZUVsZW1lbnQgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChz
dHlsZUVsZW1lbnQpOwotdmFyIHN0eWxlc2hlZXQgPSBzdHlsZUVsZW1lbnQuc2hlZXQ7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0
ZXItcHJvcGVydHktY29tcHV0ZWQtc3R5bGUuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
c2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcHJvcGVydHktY29tcHV0ZWQtc3R5bGUuanMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZhZTMwYzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNv
bXB1dGVkLXN0eWxlLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTk3ICswLDAgQEAKLWRlc2NyaXB0
aW9uKCJUZXN0cyB0aGUgY29tcHV0ZWQgc3R5bGUgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9uIG9m
IHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1ND
dXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLWZ1bmN0aW9uIGpz
V3JhcHBlckNsYXNzKG5vZGUpCi17Ci0gICAgaWYgKCFub2RlKQotICAgICAgICByZXR1cm4gIltu
dWxsXSI7Ci0gICAgdmFyIHN0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuYXBwbHko
bm9kZSk7Ci0gICAgcmV0dXJuIHN0cmluZy5zdWJzdHIoOCwgc3RyaW5nLmxlbmd0aCAtIDkpOwot
fQotCi0vLyBOZWVkIHRvIHJlbW92ZSB0aGUgYmFzZSBVUkwgdG8gYXZvaWQgaGF2aW5nIGxvY2Fs
IHBhdGhzIGluIHRoZSBleHBlY3RlZCByZXN1bHRzLgotZnVuY3Rpb24gcmVtb3ZlQmFzZVVSTChz
cmMpIHsKLSAgICB2YXIgdXJsUmVnZXhwID0gL3VybFwoKFteXCldKilcKS9nOwotICAgIHJldHVy
biBzcmMucmVwbGFjZSh1cmxSZWdleHAsIGZ1bmN0aW9uKG1hdGNoLCB1cmwpIHsKLSAgICAgICAg
cmV0dXJuICJ1cmwoIiArIHVybC5zdWJzdHIodXJsLmxhc3RJbmRleE9mKCIvIikgKyAxKSArICIp
IjsKLSAgICB9KTsKLX0KLQotZnVuY3Rpb24gc2hvdWxkQmVUeXBlKGV4cHJlc3Npb24sIGNsYXNz
TmFtZSwgcHJvdG90eXBlTmFtZSwgY29uc3RydWN0b3JOYW1lKQotewotICAgIGlmICghcHJvdG90
eXBlTmFtZSkKLSAgICAgICAgcHJvdG90eXBlTmFtZSA9IGNsYXNzTmFtZSArICJQcm90b3R5cGUi
OwotICAgIGlmICghY29uc3RydWN0b3JOYW1lKQotICAgICAgICBjb25zdHJ1Y3Rvck5hbWUgPSBj
bGFzc05hbWUgKyAiQ29uc3RydWN0b3IiOwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygi
ICsgZXhwcmVzc2lvbiArICIpIiwgIiciICsgY2xhc3NOYW1lICsgIiciKTsKLSAgICBzaG91bGRC
ZSgianNXcmFwcGVyQ2xhc3MoIiArIGV4cHJlc3Npb24gKyAiLl9fcHJvdG9fXykiLCAiJyIgKyBw
cm90b3R5cGVOYW1lICsgIiciKTsKLSAgICBzaG91bGRCZSgianNXcmFwcGVyQ2xhc3MoIiArIGV4
cHJlc3Npb24gKyAiLmNvbnN0cnVjdG9yKSIsICInIiArIGNvbnN0cnVjdG9yTmFtZSArICInIik7
Ci19Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRv
IHNlZSB0aGVtLgotdmFyIHN0eWxlc2hlZXQsIGNzc1J1bGUsIGRlY2xhcmF0aW9uLCBmaWx0ZXJS
dWxlLCBzdWJSdWxlOwotdmFyIHN0eWxlRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
InN0eWxlIik7Ci1kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHN0eWxlRWxlbWVudCk7Ci1zdHls
ZXNoZWV0ID0gc3R5bGVFbGVtZW50LnNoZWV0OwotCi0vLyBXZSBuZWVkIGEgZml4ZWQgd2lkdGgv
aGVpZ2h0IGZvciB0aGUgb2JqZWN0LgotdmFyIG9iamVjdFRvQ2hlY2sgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJkaXYiKTsKLW9iamVjdFRvQ2hlY2suY2xhc3NOYW1lID0gIm9iamVjdFRvQ2hl
Y2siOwotb2JqZWN0VG9DaGVjay5zdHlsZS53aWR0aCA9ICI1MDBweCI7Ci1vYmplY3RUb0NoZWNr
LnN0eWxlLmhlaWdodCA9ICI2MDBweCI7Ci1kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG9iamVj
dFRvQ2hlY2spOwotCi1mdW5jdGlvbiB0ZXN0RmlsdGVyUnVsZShkZXNjcmlwdGlvbiwgcnVsZSwg
ZXhwZWN0ZWRWYWx1ZSwgZXhwZWN0ZWRUeXBlcywgZXhwZWN0ZWRUZXh0cykKLXsKLSAgICBkZWJ1
ZygiIik7Ci0gICAgZGVidWcoZGVzY3JpcHRpb24gKyAiIDogIiArIHJ1bGUpOwotCi0gICAgc3R5
bGVzaGVldC5pbnNlcnRSdWxlKCIub2JqZWN0VG9DaGVjayB7IC13ZWJraXQtZmlsdGVyOiAiICsg
cnVsZSArICI7IH0iLCAwKTsKLQotICAgIGZpbHRlclN0eWxlID0gd2luZG93LmdldENvbXB1dGVk
U3R5bGUob2JqZWN0VG9DaGVjayk7Ci0gICAgCi0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwo
ZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkiLCAiJyIgKyBl
eHBlY3RlZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclJ1bGUgPSBmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCctd2Via2l0LWZpbHRlcicpOwotICAgIHNob3VsZEJlVHlwZSgiZmls
dGVyUnVsZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIGlmICghZXhwZWN0ZWRUeXBlcykgewot
ICAgICAgICBleHBlY3RlZFR5cGVzID0gWyJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTSJdOwotICAgICAgICBleHBlY3RlZFRleHRzID0gW2V4cGVjdGVkVmFsdWVdOwotICAg
IH0KLSAgICAKLSAgICBzaG91bGRCZSgiZmlsdGVyUnVsZS5sZW5ndGgiLCAiIiArIGV4cGVjdGVk
VHlwZXMubGVuZ3RoKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChmaWx0ZXJSdWxlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUeXBlcy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViUnVsZSA9IGZpbHRlclJ1bGVb
aV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViUnVsZS5vcGVyYXRpb25UeXBlIiwgZXhwZWN0
ZWRUeXBlc1tpXSk7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIiwgIiciICsgZXhwZWN0ZWRUZXh0c1tpXSArICInIik7Ci0gICAgICAgIH0KLSAg
ICB9Ci0gICAgCi0gICAgc3R5bGVzaGVldC5kZWxldGVSdWxlKDApOwotfQotCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciIsCi0gICAgImN1c3RvbSh1cmwodmVydGV4
LnNoYWRlcikpIiwgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMSAxKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZnJhZ21lbnQgc2hhZGVyIiwKLSAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIiwgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBib3RoIHNoYWRl
cnMiLAotICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVudC5zaGFkZXIp
KSIsICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEp
Iik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24iLAotICAgICJj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKSIsICJjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKSIpOwotCi12YXIg
YmxlbmRNb2RlcyA9IFsibm9ybWFsIiwgIm11bHRpcGx5IiwgInNjcmVlbiIsICJvdmVybGF5Iiwg
ImRhcmtlbiIsICJsaWdodGVuIiwgImNvbG9yLWRvZGdlIiwKLSAgICAgICAgICAgICAgICAgICJj
b2xvci1idXJuIiwgImhhcmQtbGlnaHQiLCAic29mdC1saWdodCIsICJkaWZmZXJlbmNlIiwgImV4
Y2x1c2lvbiIsICJodWUiLAotICAgICAgICAgICAgICAgICAgInNhdHVyYXRpb24iLCAiY29sb3Ii
LCAibHVtaW5vc2l0eSJdOwotZm9yICh2YXIgaSA9IDA7IGkgPCBibGVuZE1vZGVzLmxlbmd0aDsg
aSsrKSB7Ci0gICAgdmFyIGJsZW5kTW9kZSA9IGJsZW5kTW9kZXNbaV07Ci0gICAgdGVzdEZpbHRl
clJ1bGUoIkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSAiICsgYmxlbmRN
b2RlLAotICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpICIgKyBi
bGVuZE1vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpICIg
KyBibGVuZE1vZGUgKyAiIHNvdXJjZS1hdG9wKSwgMSAxKSIpOwotfQotCi12YXIgYWxwaGFDb21w
b3NpdGluZ01vZGVzID0gWyJjbGVhciIsICJjb3B5IiwgInNvdXJjZS1vdmVyIiwgImRlc3RpbmF0
aW9uLW92ZXIiLCAic291cmNlLWluIiwgImRlc3RpbmF0aW9uLWluIiwKLSAgICAgICAgInNvdXJj
ZS1vdXQiLCAiZGVzdGluYXRpb24tb3V0IiwgInNvdXJjZS1hdG9wIiwgImRlc3RpbmF0aW9uLWF0
b3AiLCAieG9yIl07Ci1mb3IgKHZhciBpID0gMDsgaSA8IGFscGhhQ29tcG9zaXRpbmdNb2Rlcy5s
ZW5ndGg7IGkrKykgewotICAgIHZhciBhbHBoYUNvbXBvc2l0aW5nTW9kZSA9IGFscGhhQ29tcG9z
aXRpbmdNb2Rlc1tpXTsKLSAgICB0ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlICIgKyBhbHBoYUNvbXBvc2l0aW5nTW9kZSwK
LSAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYWxwaGFD
b21wb3NpdGluZ01vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIG5vcm1hbCAiICsgYWxwaGFDb21wb3NpdGluZ01vZGUgKyAiKSwgMSAxKSIpOwotfQotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZp
cnN0LCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNlY29uZCIsCi0gICAgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpIiwgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhciksIDEgMSkiKTsKLQotdGVzdEZp
bHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcg
bW9kZSBmaXJzdCwgYmxlbmQgbW9kZSBzZWNvbmQiLAotICAgICJjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgY2xlYXIgbXVsdGlwbHkpKSIsICJjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkgY2xlYXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJS
dWxlKCJDdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIGFuZCBtaXggZnVuY3Rpb24iLAotICAgICJj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIiwgImN1
c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBz
b3VyY2UtYXRvcCksIDEgMSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1peCBm
dW5jdGlvbiBhbmQgbWVzaCBzaXplIiwKLSAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpKSwgMTApIiwgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBu
b3JtYWwgc291cmNlLWF0b3ApLCAxMCAxMCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3
aXRoIG1lc2ggc2l6ZSIsCi0gICAgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlciksIDEwKSIsICJj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG5vbmUsIDEwIDEwKSIpOwotCi10ZXN0RmlsdGVyUnVs
ZSgiQ3VzdG9tIHdpdGggYm90aCBtZXNoIHNpemVzIiwKLSAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIDEwIDIwKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgMTAgMjApIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtZXNoIHNpemUiLAot
ICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpLCAxMCkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSBub25lLCAxMCAxMCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGJv
dGggbWVzaCBzaXplcyIsCi0gICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAx
MCAyMCkiLCAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZGV0YWNoZWQgbWVzaCIsCi0gICAgImN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRhY2hlZCkiLCAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIDEgMSBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIGRldGFjaGVkIGFuZCBtZXNoIHNpemUiLAotICAgICJjdXN0b20obm9uZSB1cmwoZnJh
Z21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpIiwgImN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3
aXRoIGRlZmF1bHQgZmlsdGVyLWJveCIsCi0gICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggaW50ZWdlciBwYXJhbWV0ZXJzIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxIDEsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpIik7Ci0K
LXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBmbG9hdCBwYXJhbWV0ZXJzIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMS4xLCBwMiAyLjIgMy4z
LCBwMyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgMS4xLCBwMiAyLjIgMy4zLCBw
MyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgi
Q3VzdG9tIHdpdGggdHJhbnNmb3JtIHRyYW5zbGF0ZSBwYXJhbWV0ZXIiLAotICAgICAgICAgICAg
ImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBw
eCkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAx
LCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMTAsIDEwKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1
c3RvbSB3aXRoIG11bHRpcGxlIHRyYW5zZm9ybSBwYXJhbWV0ZXJzIiwKLSAgICAgICAgICAgICJj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgdHJhbnNsYXRlKDEwcHgsIDEwcHgp
LCBwMiBzY2FsZSgyKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEsIHAxIG1hdHJpeCgxLCAwLCAwLCAxLCAxMCwgMTApLCBwMiBtYXRyaXgoMiwg
MCwgMCwgMiwgMCwgMCkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtdWx0aXBs
ZSB0cmFuc2Zvcm1zIHNpbmdsZSBwYXJhbWV0ZXIiLAotICAgICAgICAgICAgImN1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBweCkgc2NhbGUoMikp
IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBw
MSBtYXRyaXgoMiwgMCwgMCwgMiwgMTAsIDEwKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIHBlcmNlbnQgdHJhbnNmb3JtIHBhcmFtZXRlciIsCi0gICAgICAgICAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIHRyYW5zbGF0ZSg1MCUsIDUwJSkpIiwKLSAg
ICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRy
aXgoMSwgMCwgMCwgMSwgMjUwLCAzMDApKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdp
dGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyIsCi0gICAgICAgICAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1
LCBwNCA0IDUgNiA3KSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiTXVsdGlwbGUgd2l0aCBmcmFnbWVudCBzaGFkZXIiLAotICAgICJncmF5
c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsICJncmF5
c2NhbGUoMSkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSkgc2VwaWEoMSki
LAotICAgIFsiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUiLAotICAg
ICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTSIsCi0gICAgIldlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfU0VQSUEiXSwKLSAgICBbImdyYXlzY2FsZSgxKSIsCi0g
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpIiwKLSAgICAic2VwaWEo
MSkiXSk7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2Yg
dGhyZWUgdmFsdWVzIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgYTEgYXJyYXkoMSwgMiwgMykpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLCAyLCAzKSkiKTsKLQotdGVzdEZpbHRl
clJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFkZSB1cCBvZiB0aHJlZSBmbG9hdGluZyBwb2lu
dCB2YWx1ZXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCBhMSBhcnJheSgxLjYxODAsIC0yLjcxODIsIDMuMTQxNSkpIiwKLSAgICAgICAgICAgICJjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLjYxOCwgLTIuNzE4
MiwgMy4xNDE1KSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFk
ZSB1cCBvZiBzZXZlcmFsIGZsb2F0aW5nIHBvaW50IGFuZCBpbnRlZ2VyIHZhbHVlcyIsCi0gICAg
ICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEuNjE4
MCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUg
dXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMS42MTgsIDEsIC0yLjcxODIsIDAu
MSwgMy4xNDE1KSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFk
ZSB1cCBvZiAyNDcgZGlmZmVyZW50IGZsb2F0aW5nIHBvaW50IHZhbHVlcyIsCi0gICAgICAgICAg
ICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDYuMDAsIDM4LjU4
LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEs
IDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAy
MS45NCwgNjIuNzAsIDc3Ljk2LCA2Ny4yNywgMi43NSwgMjguMTYsIDguODgsIDExLjYxLCAzNC44
OSwgNDUuNzUsIDU0LjU1LCAzNS4wNCwgNi4xMywgNjkuNjgsIDgxLjIxLCA0OS40NCwgNTQuNzQs
IDI2Ljc0LCA5MS40OSwgNjguMjAsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44Nywg
NzEuNzMsIDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAu
NDgsIDgxLjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4y
NiwgMzQuNjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUs
IDM1LjAyLCAzOS4wMCwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwg
MjcuNzIsIDI4LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5
OC40NSwgODcuNTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMx
LjczLCAyLjkwLCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIs
IDUzLjk2LCAzNS4wNiwgNjcuNTAsIDc2LjYyLCAzNS4wMiwgMS42MiwgMTMuMDUsIDMzLjU5LCAy
Ni44OSwgMzYuOTQsIDc0LjEzLCA5NS4wOSwgNTYuODcsIDQ2LjAxLCAxMS45NCwgMTIuOTIsIDQ4
Ljg4LCAxMS4wMywgMjQuODAsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAu
MzUsIDQxLjEwLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUwLCA4OC40MSwgOTAuMzQs
IDk3LjYyLCA1OC43MCwgMjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwg
OTEuMjIsIDc4LjIxLCA2Mi4zMCwgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5
Ny40MiwgOTYuNDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIwLCAyNi42NSwgNzgu
MzksIDk1LjI2LCA2Ni44MCwgMzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3
LCA2MS4wMSwgOTUuNjgsIDguNTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNDAsIDEyLjM1LCA5
OS4zOSwgNS44MCwgNjguMTAsIDczLjg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4w
OCwgNTQuNDUsIDg3LjY0LCAzNi4xNCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQw
LCA1LjkwLCAxNS43MCwgMTAuODgsIDU1LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywg
NjAuMzAsIDQuMzIsIDcuMDUsIDMuMzQsIDkuODcsIDY0LjUxLCA0LjYwLCA1NC4xNiwgNDguODAs
IDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgsIDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5
My43MCwgMjMuNzksIDg5LjU3LCAxNC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5
LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcu
NzUsIDQxLjY1LCA2Mi4zNSwgOTAuNDAsIDQwLjc3LCA1My45MywgODAuMjMsIDg0LjQ5LCAyMC4x
OCwgNDUuMzYsIDI2LjAyLCA5My43MiwgNjUuNTQsIDMyLjg2KSkiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDYsIDM4LjU4LCA0
MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEsIDk5
LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAyMS45
NCwgNjIuNywgNzcuOTYsIDY3LjI3LCAyLjc1LCAyOC4xNiwgOC44OCwgMTEuNjEsIDM0Ljg5LCA0
NS43NSwgNTQuNTUsIDM1LjA0LCA2LjEzLCA2OS42OCwgODEuMjEsIDQ5LjQ0LCA1NC43NCwgMjYu
NzQsIDkxLjQ5LCA2OC4yLCA4NC4wNSwgNjUuODEsIDU3Ljg5LCA3My4yMiwgMTMuODcsIDcxLjcz
LCAxOC42MSwgOC41NCwgOS43OSwgMjguMDUsIDE0LjExLCA2OS45MywgNDcuMTksIDEwLjQ4LCA4
MS4zNSwgMzcuMTUsIDE5LjI5LCAxNC45OCwgMzIuNTQsIDk4Ljk2LCA2OS4zNywgOTIuMjYsIDM0
LjY0LCA2Ny40MywgNzEuOTIsIDQ1LjUyLCA5LjIyLCA0MS45NiwgMzEuMjYsIDkyLjY1LCAzNS4w
MiwgMzksIDc2Ljc2LCAyOS4zMywgMjIuOTMsIDgwLjY1LCA3MC43OCwgNDIuOTQsIDI3LjcyLCAy
OC4xOSwgNzUuMTUsIDE4LjE0LCA4OS43MSwgOTUuMzgsIDU0LjUxLCAzNi45MywgOTguNDUsIDg3
LjU4LCA0NC41MSwgNzEuNzMsIDc1LjcxLCA3MC40MywgNzguNTEsIDgyLjE5LCAzMS43MywgMi45
LCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIsIDUzLjk2LCAz
NS4wNiwgNjcuNSwgNzYuNjIsIDM1LjAyLCAxLjYyLCAxMy4wNSwgMzMuNTksIDI2Ljg5LCAzNi45
NCwgNzQuMTMsIDk1LjA5LCA1Ni44NywgNDYuMDEsIDExLjk0LCAxMi45MiwgNDguODgsIDExLjAz
LCAyNC44LCA2OC4wNiwgMTkuODMsIDEyLjk4LCA0MS41NiwgNjIuMDMsIDgwLjM1LCA0MS4xLCA1
LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUsIDg4LjQxLCA5MC4zNCwgOTcuNjIsIDU4Ljcs
IDIzLjYyLCAxMy4wMywgODUuNDEsIDI5LjczLCAzMC4yMSwgNTkuMjUsIDkxLjIyLCA3OC4yMSwg
NjIuMywgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5Ny40MiwgOTYuNDIsIDM4
LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIsIDI2LjY1LCA3OC4zOSwgOTUuMjYsIDY2Ljgs
IDM0LjQxLCAxMC42OSwgOTQuNDMsIDcxLjY5LCA0LjU4LCAyMy44NywgNjEuMDEsIDk1LjY4LCA4
LjUxLCAxNC45MiwgMTYuMjcsIDMwLjQxLCAxLjQsIDEyLjM1LCA5OS4zOSwgNS44LCA2OC4xLCA3
My44NywgMjguMzYsIDI0Ljk4LCA3Ny41OCwgOC43MywgMzQuMDgsIDU0LjQ1LCA4Ny42NCwgMzYu
MTQsIDc0LjY4LCAzOC4wNCwgNTYuNTQsIDQ2LjQyLCAxMi40LCA1LjksIDE1LjcsIDEwLjg4LCA1
NS44MiwgODQuNjYsIDc1Ljc0LCA4Ny45MiwgNTkuMDMsIDYwLjMsIDQuMzIsIDcuMDUsIDMuMzQs
IDkuODcsIDY0LjUxLCA0LjYsIDU0LjE2LCA0OC44LCA0Ni45MywgNS44NCwgOTAuMzQsIDc1LjQ4
LCAzMi41OSwgMjkuNjUsIDk0LjU3LCAyOC4yMiwgOTMuNywgMjMuNzksIDg5LjU3LCAxNC44NCwg
NzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0
Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcuNzUsIDQxLjY1LCA2Mi4zNSwgOTAuNCwgNDAu
NzcsIDUzLjkzLCA4MC4yMywgODQuNDksIDIwLjE4LCA0NS4zNiwgMjYuMDIsIDkzLjcyLCA2NS41
NCwgMzIuODYpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdHdvIGFycmF5KCkg
bWFkZSB1cCBvZiB0aHJlZSBhbmQgc2l4IHZhbHVlcyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEsIDIsIDMpLCBhMiBhcnJheSgxLCAy
LCAzLCA0LCA1LCA2KSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEsIGExIGFycmF5KDEsIDIsIDMpLCBhMiBhcnJheSgxLCAyLCAzLCA0LCA1LCA2
KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMv
Y3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuanMgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1p
bnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZGM4M2Y3Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRl
ci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxMDcgKzAs
MCBAQAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgY3VzdG9tKCkgZnVuY3Rpb24g
b2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJl
IGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBjc3NSdWxlLCBk
ZWNsYXJhdGlvbjsKLQotZnVuY3Rpb24gdGVzdEludmFsaWRGaWx0ZXJSdWxlKGRlc2NyaXB0aW9u
LCBydWxlKQotewotICAgIGRlYnVnKCIiKTsKLSAgICBkZWJ1ZyhkZXNjcmlwdGlvbiArICIgOiAi
ICsgcnVsZSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoImJvZHkgeyAtd2Via2l0LWZp
bHRlcjogIiArIHJ1bGUgKyAiOyB9IiwgMCk7Ci0gICAgY3NzUnVsZSA9IHN0eWxlc2hlZXQuY3Nz
UnVsZXMuaXRlbSgwKTsKLSAgCi0gICAgc2hvdWxkQmUoImNzc1J1bGUudHlwZSIsICIxIik7Ci0K
LSAgICBkZWNsYXJhdGlvbiA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUoImRlY2xhcmF0
aW9uLmxlbmd0aCIsICIwIik7Ci0gICAgc2hvdWxkQmUoImRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykiLCAibnVsbCIpOwotfQotCi10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIkVtcHR5IGZ1bmN0aW9uIiwgImN1c3RvbSgpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIk5vIHZhbHVlcyAxIiwgImN1c3RvbSgsKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJO
byB2YWx1ZXMgMiIsICJjdXN0b20oLCwpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9v
IG1hbnkgc2hhZGVycyAxIiwgImN1c3RvbSh1cmwoc2hhZGVyMSkgdXJsKHNoYWRlcjIpIHVybChz
aGFkZXIyKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1hbnkgc2hhZGVycyAyIiwg
ImN1c3RvbShub25lIG5vbmUgbm9uZSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1h
bnkgc2hhZGVycyAzIiwgImN1c3RvbShub25lIHVybChzaGFkZXIxKSB1cmwoc2hhZGVyMikgdXJs
KHNoYWRlcjIpKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiBhcyB2
ZXJ0ZXggc2hhZGVyIiwgImN1c3RvbShtaXgodXJsKHNoYWRlcikpKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24gd2l0aCB3cm9uZyBuYW1lIiwgImN1c3RvbShub25lIGZu
KHVybChzaGFkZXIpKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdp
dGggMCBhcmdzIiwgImN1c3RvbShub25lIG1peCgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxl
KCJNaXggZnVuY3Rpb24gd2l0aCBmaXJzdCBhcmcgbm90IGEgVVJJIiwgImN1c3RvbShub25lIG1p
eChub25lKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggc2Vj
b25kIGFyZyBub3QgYSBibGVuZCBtb2RlIG9yIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUiLCAiY3Vz
dG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJN
aXggZnVuY3Rpb24gd2l0aCB0aGlyZCBhcmcgbm90IGEgYmxlbmQgbW9kZSBvciBhbHBoYSBjb21w
b3NpdGluZyBtb2RlIiwgImN1c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSBub3JtYWwgMCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIHR3byBibGVuZCBtb2Rl
cyIsICJjdXN0b20obm9uZSBtaXgodXJsKHNoYWRlcikgbXVsdGlwbHkgc2NyZWVuKSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggdHdvIGFscGhhIGNvbXBvc2l0
aW5nIG1vZGVzIiwgImN1c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSBzb3VyY2Utb3ZlciBkZXN0
aW5hdGlvbi1vdmVyKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdp
dGggYWxwaGEgY29tcG9zaXRpbmcgbW9kZSAncGx1cy1kYXJrZXInLCB3aGljaCBzaG91bGQgb25s
eSBhcHBseSB0byAtd2Via2l0LWJhY2tncm91bmQtY29tcG9zaXRlIiwgImN1c3RvbShub25lIG1p
eCh1cmwoc2hhZGVyKSBwbHVzLWRhcmtlcikpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1p
eCBmdW5jdGlvbiB3aXRoIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgJ3BsdXMtbGlnaHRlcicsIHdo
aWNoIHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1jb21wb3NpdGUiLCAi
Y3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIHBsdXMtbGlnaHRlcikpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgJ2hp
Z2hsaWdodCcsIHdoaWNoIHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1j
b21wb3NpdGUiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIGhpZ2hsaWdodCkpIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIDQgYXJncyIsICJjdXN0b20o
bm9uZSBtaXgodXJsKHNoYWRlcikgbXVsdGlwbHkgY2xlYXIgbm9ybWFsKSkiKTsKLXRlc3RJbnZh
bGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggY29tbWEgc2VwYXJhdG9ycyIsICJjdXN0
b20obm9uZSBtaXgodXJsKHNoYWRlciksIG11bHRpcGx5LCBjbGVhcikpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIGNvbW1hIHRlcm1pbmF0b3IiLCAiY3VzdG9t
KG5vbmUgbWl4KHVybChzaGFkZXIpLCBtdWx0aXBseSBjbGVhciwpKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24gd2l0aCBvbmUgY29tbWEiLCAiY3VzdG9tKG5vbmUgbWl4
KCwpKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHNoYWRlciIsICJjdXN0b20obm9u
ZSwgMTAgMjApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IG1lc2ggc2l6ZXMi
LCAiY3VzdG9tKG5vbmUsIDEwIDIwIDMwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9u
ZyBtZXNoLWJveCB0eXBlIC0gJ3BhZGRpbmcnIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgcGFkZGlu
ZykiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiV3JvbmcgbWVzaC1ib3ggdHlwZSAtICdub25l
JyIsICJjdXN0b20odXJsKHNoYWRlciksIG5vbmUpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUo
Ik1vcmUgbWVzaC1ib3ggdHlwZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBwYWRkaW5nLWJveCBm
aWx0ZXItYm94KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBvcmRlciBmb3IgbWVz
aC1kZXRhY2hlZCBhbmQgbWVzaC1ib3ggdHlwZSIsICJjdXN0b20odXJsKHNoYWRlciksIGRldGFj
aGVkIHBhZGRpbmctYm94KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBvcmRlciBm
b3IgbWVzaCBzaXplIGFuZCBtZXNoLWJveCB0eXBlIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgcGFk
ZGluZy1ib3ggMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IG1lc2ggc2l6
ZXMgd2l0aCBtZXNoLWJveCB0eXBlIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgMjAgMzAgNDAgcGFk
ZGluZy1ib3gpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgY29tbWEgYmV0d2Vl
biBtZXNoLXNpemVzIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgMjAsIDQwIHBhZGRpbmctYm94KSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIGNvbW1hIGJlZm9yZSBtZXNoIHR5cGUi
LCAiY3VzdG9tKHVybChzaGFkZXIpLCAyMCwgcGFkZGluZy1ib3gpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIk5vIG1lc2ggcGFyYW1ldGVyIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBtZXNoIHR5cGUgLSBjb3JyZWN0IGlkZW50aWZp
ZXIgaXMgJ2RldGFjaGVkJyIsICJjdXN0b20odXJsKHNoYWRlciksIGRldGFjaCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTm8gbWVzaCBzaXplIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgLCBw
MSAyKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5lZ2F0aXZlIHNpbmdsZSBtZXNoIHNp
emUiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAtMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUo
Ik5lZ2F0aXZlIGJvdGggbWVzaCBzaXplcyIsICJjdXN0b20odXJsKHNoYWRlciksIC0xMCAtMTAp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSBtZXNoIHNp
emUiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAtMTAgMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIlplcm8gc2luZ2xlIG1lc2ggc2l6ZSIsICJjdXN0b20odXJsKHNoYWRlciksIDApIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlplcm8gYm90aCBtZXNoIHNpemVzIiwgImN1c3RvbSh1cmwo
c2hhZGVyKSwgMCAwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCIwIGFuZCAxIG1lc2ggc2l6
ZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAwIDEpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiVG9vIG1hbnkgcGFyYW1ldGVyIHZhbHVlcyIsICJjdXN0b20odXJsKHNoYWRlciksIHAxIDEg
MiAzIDQgNSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCBwYXJhbWV0ZXIgdHlw
ZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBwMSAxLjAgMi4wICd0ZXh0JykiKTsKLQotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgMSIsICJjdXN0b20odXJsKHNoYWRl
ciksIHAxKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgMiIs
ICJjdXN0b20odXJsKHNoYWRlciksIHAxLCBwMiwgcDMpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiT25lIGludmFsaWQgdHJhbnNmb3JtIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBz
b21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk11
bHRpcGxlIGludmFsaWQgdHJhbnNmb3JtcyIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29t
ZUlkIGludmFsaWRfcm90YXRlKDBkZWcpIGludmFsaWRfcGVyc3BlY3RpdmUoMCkpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgdHJhbnNmb3JtIGJldHdlZW4gdmFsaWQgb25lcyIs
ICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIHJvdGF0ZSgwZGVnKSBpbnZhbGlkX3Jv
dGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFs
aWQgdHJhbnNmb3JtIGJldHdlZW4gaW52YWxpZCBvbmVzIiwgImN1c3RvbShub25lIHVybChzaGFk
ZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgYW5vdGhlcl9p
bnZhbGlkKDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gd2l0
aG91dCBsZWFkaW5nIGNvbW1hIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBwZXJz
cGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFsaWQgdHJhbnNmb3JtIHdp
dGggdHJhaWxpbmcgY29tbWEiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCBwZXJz
cGVjdGl2ZSgwKSwpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3
aXRoIHRyYWlsaW5nIGNvbW1hIGFuZCB3aXRob3V0IGxlYWRpbmcgY29tbWEiLCAiY3VzdG9tKG5v
bmUgdXJsKHNoYWRlcikgc29tZUlkIHBlcnNwZWN0aXZlKDApLCkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFpbGluZyBjb21tYSIsICJjdXN0b20o
bm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIGludmFsaWRfcm90YXRlKDBkZWcpLCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aG91dCBsZWFkaW5nIGNvbW1h
IiwgImN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBpbnZhbGlkX3JvdGF0ZSgwZGVnKSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgdHJhbnNmb3JtIChvbmx5IHRoZSBpZCki
LCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiRW1wdHkgdHJhbnNmb3JtICh3aXRob3V0IHRoZSBpZCkiLCAiY3VzdG9tKG5vbmUgdXJs
KHNoYWRlciksKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJFbXB0eSB0cmFuc2Zvcm0gKHR3
byBlbXB0eSBjb21tYXMpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCwpIik7Ci10ZXN0SW52
YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3aXRoIGludmFsaWQgY2hhcmFjdGVycyIs
ICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSxzb21lSWQgcm90YXRlKDBkZWcpICouLSwpIik7Ci0K
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwo
c2hhZGVyKSwgaWQgYXJyYXkoKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiT25lIGNvbW1h
IGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KCwpKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aWxlIGNvbW1hcyBpbiBhcnJheSgpIiwgImN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJS
dWxlKCJNdWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5KCkiLCAiY3VzdG9tKG5v
bmUgdXJsKHNoYWRlciksIGlkIGFycmF5KCwsMSwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxl
KCJPbmUgY29tbWEgZm9sbG93ZWQgYnkgYSBuZWdhdGl2ZSB2YWx1ZSBpbiBhcnJheSgpIiwgImN1
c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsLTQpKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJPbmUgY29tbWEgZm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheSgpIiwgImN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIk9uZSBuZWdhdGl2ZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkiLCAi
Y3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KC00LCkpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIk9uZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkiLCAiY3Vz
dG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDQsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiQSBzZXJpZXMgb2YgY29ycmVjdCB2YWx1ZXMgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBh
cnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCAzLCA0LCkp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkEgc2VyaWVzIG9mIGNvcnJlY3QgdmFsdWVzIGZv
bGxvd2VkIGJ5IGEgbGV0dGVyIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciks
IGlkIGFycmF5KDEsIDIsIDMsIDQsIHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUd28g
Y29tbWFzIGFzIHNlcGFyYXRvciBiZXR3ZWVuIHZhbHVlcyBpbiBhcnJheSgpIiwgImN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCAsIDQpKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJMZWFkaW5nIGNvbW1hIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIGlkIGFycmF5KCwxLCAyLCAzLCA0KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiU2Vt
aWNvbG9uIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMTsgMjsgMzsgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNw
YWNlIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSwgaWQgYXJyYXkoMSAyIDMgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIHNl
cGFyYXRlZCB2YWx1ZXMgd2l0aCBjb21tYSB0ZXJtaW5hdG9yIGluIGFycmF5KCkiLCAiY3VzdG9t
KG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEgMiAzIDQsKSkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJy
YXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLCAxIDIgMyA0KSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJs
KHNoYWRlciksIGlkIGFycmF5KE5hTikpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5hTiBh
bmQgdmFsdWVzIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5
KDEsIDIsIE5hTiwgMykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgdW5pdCB2
YWx1ZSBpbiBhcnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxcHgp
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHVuaXQgdmFsdWUgaW4gYXJyYXko
KSwgc2Vjb25kIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheShub25lKSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCksIHRo
aXJkIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxZGVnKSkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCksIGF0IHRoZSBl
bmQgb2YgYSBwYXJ0aWFsbHkgdmFsaWQgdmFsdWUgbGlzdCIsICJjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMSwgMiwgMywgNHB4KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5n
LmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVy
LXByb3BlcnR5LXBhcnNpbmcuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZiYzQ4
MTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9j
dXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmcuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxODQg
KzAsMCBAQAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1c3RvbSgpIGZ1
bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotLy8gVGhlc2UgaGF2
ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgY3Nz
UnVsZSwgZGVjbGFyYXRpb24sIGZpbHRlclJ1bGUsIHN1YlJ1bGU7Ci0KLWZ1bmN0aW9uIHRlc3RG
aWx0ZXJSdWxlKGRlc2NyaXB0aW9uLCBydWxlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFR5cGVz
LCBleHBlY3RlZFRleHRzKQotewotICAgIGRlYnVnKCIiKTsKLSAgICBkZWJ1ZyhkZXNjcmlwdGlv
biArICIgOiAiICsgcnVsZSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoImJvZHkgeyAt
d2Via2l0LWZpbHRlcjogIiArIHJ1bGUgKyAiOyB9IiwgMCk7Ci0gICAgY3NzUnVsZSA9IHN0eWxl
c2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgCi0gICAgc2hvdWxkQmUoImNzc1J1bGUudHlwZSIs
ICIxIik7Ci0KLSAgICBkZWNsYXJhdGlvbiA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUo
ImRlY2xhcmF0aW9uLmxlbmd0aCIsICIxIik7Ci0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwo
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkiLCAiJyIgKyBl
eHBlY3RlZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclJ1bGUgPSBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCctd2Via2l0LWZpbHRlcicpOwotICAgIHNob3VsZEJlVHlwZSgiZmls
dGVyUnVsZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIGlmICghZXhwZWN0ZWRUeXBlcykgewot
ICAgICAgICBleHBlY3RlZFR5cGVzID0gWyJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTSJdOwotICAgICAgICBleHBlY3RlZFRleHRzID0gW2V4cGVjdGVkVmFsdWVdOwotICAg
IH0KLSAgICAKLSAgICBzaG91bGRCZSgiZmlsdGVyUnVsZS5sZW5ndGgiLCAiIiArIGV4cGVjdGVk
VHlwZXMubGVuZ3RoKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChmaWx0ZXJSdWxlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUeXBlcy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViUnVsZSA9IGZpbHRlclJ1bGVb
aV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViUnVsZS5vcGVyYXRpb25UeXBlIiwgZXhwZWN0
ZWRUeXBlc1tpXSk7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIiwgIiciICsgZXhwZWN0ZWRUZXh0c1tpXSArICInIik7Ci0gICAgICAgIH0KLSAg
ICB9Ci19Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIiwKLSAg
ICAgICAgICAgICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpKSIsICJjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZnJhZ21lbnQg
c2hhZGVyIiwKLSAgICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
KSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiKTsKLQotdGVzdEZpbHRlclJ1
bGUoIkN1c3RvbSB3aXRoIGJvdGggc2hhZGVycyIsCi0gICAgICAgICAgICAiY3VzdG9tKHVybCh2
ZXJ0ZXguc2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIG1peCBmdW5jdGlvbiIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
KSkiKTsKLQotdmFyIGJsZW5kTW9kZXMgPSBbIm5vcm1hbCIsICJtdWx0aXBseSIsICJzY3JlZW4i
LCAib3ZlcmxheSIsICJkYXJrZW4iLCAibGlnaHRlbiIsICJjb2xvci1kb2RnZSIsCi0gICAgICAg
ICAgICAiY29sb3ItYnVybiIsICJoYXJkLWxpZ2h0IiwgInNvZnQtbGlnaHQiLCAiZGlmZmVyZW5j
ZSIsICJleGNsdXNpb24iLCAiaHVlIiwgInNhdHVyYXRpb24iLAotICAgICAgICAgICAgImNvbG9y
IiwgImx1bWlub3NpdHkiXTsKLWZvciAodmFyIGkgPSAwOyBpIDwgYmxlbmRNb2Rlcy5sZW5ndGg7
IGkrKykgewotICAgIHZhciBibGVuZE1vZGUgPSBibGVuZE1vZGVzW2ldOwotICAgIHRlc3RGaWx0
ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgIiArIGJsZW5k
TW9kZSwKLSAgICAgICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpICIgKyBibGVuZE1vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpICIgKyBibGVuZE1vZGUgKyAiKSkiKTsKLX0KLQotdmFyIGFscGhhQ29tcG9zaXRpbmdN
b2RlcyA9IFsiY2xlYXIiLCAiY29weSIsICJzb3VyY2Utb3ZlciIsICJkZXN0aW5hdGlvbi1vdmVy
IiwgInNvdXJjZS1pbiIsICJkZXN0aW5hdGlvbi1pbiIsCi0gICAgICAgICAgICAic291cmNlLW91
dCIsICJkZXN0aW5hdGlvbi1vdXQiLCAic291cmNlLWF0b3AiLCAiZGVzdGluYXRpb24tYXRvcCIs
ICJ4b3IiXTsKLWZvciAodmFyIGkgPSAwOyBpIDwgYWxwaGFDb21wb3NpdGluZ01vZGVzLmxlbmd0
aDsgaSsrKSB7Ci0gICAgdmFyIGFscGhhQ29tcG9zaXRpbmdNb2RlID0gYWxwaGFDb21wb3NpdGlu
Z01vZGVzW2ldOwotICAgIHRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24g
YW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgIiArIGFscGhhQ29tcG9zaXRpbmdNb2RlLAotICAg
ICAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYWxwaGFD
b21wb3NpdGluZ01vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpICIgKyBhbHBoYUNvbXBvc2l0aW5nTW9kZSArICIpKSIpOwotfQotCi10ZXN0RmlsdGVyUnVs
ZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0LCBhbHBoYSBj
b21wb3NpdGluZyBtb2RlIHNlY29uZCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUo
IkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBmaXJz
dCwgYmxlbmQgbW9kZSBzZWNvbmQiLAotICAgICAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpIiwgImN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJD
dXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIGFuZCBtaXggZnVuY3Rpb24iLAotICAgICAgICAgICAg
ImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSkiLCAi
Y3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKSIpOwot
Ci10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGluIENBUFMiLAotICAg
ICAgICAgICAgImN1c3RvbShub25lIE1JWCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIiwgImN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJD
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIG1lc2ggc2l6ZSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSwgMTApIiwgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSksIDEwKSIpOwotICAgICAgICAgICAgCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggbWVzaCBzaXplIiwKLSAgICAgICAgICAgICJjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpLCAxMCkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApIik7Ci0K
LXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBib3RoIG1lc2ggc2l6ZXMiLAotICAgICAgICAg
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCkiLCAiY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3Vz
dG9tIHdpdGggZGV0YWNoZWQgbWVzaCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIGRldGFjaGVkKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgZGV0YWNoZWQpIik7Ci0gICAgICAgICAgICAKLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20g
d2l0aCBkZXRhY2hlZCBhbmQgbWVzaCBzaXplIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpIiwgImN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1
c3RvbSB3aXRoIG51bWJlciBwYXJhbWV0ZXJzIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyki
LAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLCBw
MiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9t
IHdpdGggZmxvYXQgcGFyYW1ldGVycyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQu
MSA1LjIgNi4zIDcuNCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCBwMSAxLjEsIHAyIDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4yIDYu
MyA3LjQpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBwYXJhbWV0ZXIgbmFtZSBz
YW1lIGFzIENTUyB2YWx1ZSBrZXl3b3JkIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEgMCAxKSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGJhY2tncm91bmQgMCAxIDAgMSkiKTsKLQot
dGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1lc2ggc2l6ZSBhbmQgbnVtYmVyIHBhcmFtZXRl
cnMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNykiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykiKTsKLQotdGVzdEZpbHRlclJ1bGUoIk11bHRpcGxlIHdpdGggZnJh
Z21lbnQgc2hhZGVyIiwKLSAgICAgICAgICAgICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsCi0gICAgICAgICAgICBbIldlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfR1JBWVNDQUxFIiwKLSAgICAgICAgICAgICJXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTSIsCi0gICAgICAgICAgICAiV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9TRVBJQSJdLAotICAgICAgICAgICAgWyJncmF5c2NhbGUoKSIsCi0g
ICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIiwKLSAgICAgICAg
ICAgICJzZXBpYSgpIl0pOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIGluIENBUFMiLAotICAg
ICAgICAgICAgIkNVU1RPTSh1cmwodmVydGV4LnNoYWRlcikpIiwgImN1c3RvbSh1cmwodmVydGV4
LnNoYWRlcikpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBvbmUgdHJhbnNmb3Jt
IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgb25lVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCBvbmVUcmFuc2Zvcm0gcm90YXRlKDBkZWcpKSIpOwotCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtcyIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJhbnNmb3JtIHJvdGF0ZSgw
ZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpKSIsCi0g
ICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUo
MHB4LCAwcHgpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdHdvIHNlcGFyYXRl
IHRyYW5zZm9ybXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCBmaXJzdFRyYW5zZm9ybSByb3RhdGUoMGRlZyksIHNlY29uZFRyYW5zZm9ybSByb3RhdGUo
MGRlZykpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
Zmlyc3RUcmFuc2Zvcm0gcm90YXRlKDBkZWcpLCBzZWNvbmRUcmFuc2Zvcm0gcm90YXRlKDBkZWcp
KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggYSBzaW5nbGUgZWxlbWVudCBhcnJh
eSgpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDAg
YXJyYXkoMSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgdDAgYXJyYXkoMSkpIik7Ci0KLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGEgc2lu
Z2xlIG5lZ2F0aXZlIGVsZW1lbnQgYXJyYXkoKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUg
dXJsKGZyYWdtZW50LnNoYWRlciksIHQxIGFycmF5KC0xLjAxKSkiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0MSBhcnJheSgtMS4wMSkpIik7Ci0KLXRl
c3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtdWx0aXBsZSBlbGVtZW50cyBhcnJheSgpIiwKLSAg
ICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDIgYXJyYXkoMSwg
MiwgMywgNCwgNSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgdDIgYXJyYXkoMSwgMiwgMywgNCwgNSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0
b20gd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXQgZWxlbWVudHMgYXJyYXkoKSIsCi0gICAgICAg
ICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQzIGFycmF5KDEsIC0yLjIs
IDMuMTQsIDAuNCwgNSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSwgdDMgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSkiKTsKLQotdGVzdEZpbHRl
clJ1bGUoIk11bHRpcGxlIGFycmF5KCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCB0NSBhcnJh
eSgxLCAyLCAzKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCB0NSBhcnJheSgxLCAyLCAzKSki
KTsKLQotLy8gRklYTUU6IFRoZSBmb2xsb3dpbmcgdGVzdHMgd2lsbCBiZSByZW1vdmVkIGFsb25n
IHdpdGggdGhlIG1lc2ggYm94IHR5cGVzIHBhcnNpbmcgY29kZS4KLS8vIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM3NzgKLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kg
LSBDdXN0b20gd2l0aCBtZXNoIGJveCBzaXplcyBhbmQgY29udGVudC1ib3giLAotICAgICAgICAg
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgY29udGVudC1ib3gpIiwK
LSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwot
Ci10ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdpdGggbWVzaCBib3ggc2l6ZXMgYW5k
IGJvcmRlci1ib3giLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxIDEgYm9yZGVyLWJveCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20g
d2l0aCBtZXNoIGJveCBzaXplcyBhbmQgcGFkZGluZy1ib3giLAotICAgICAgICAgICAgImN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgcGFkZGluZy1ib3gpIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwotCi10ZXN0Rmls
dGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdpdGggcGFydGlhbCBtZXNoIGJveCBzaXplIGFuZCBw
YWRkaW5nLWJveCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIHBhZGRpbmctYm94KSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEwKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdp
dGggcGFkZGluZy1ib3ggYW5kIGRldGFjaGVkIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcGFkZGluZy1ib3ggZGV0YWNoZWQpIiwKLSAgICAgICAgICAg
ICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0YWNoZWQpIik7Ci0KLXRlc3RG
aWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20gd2l0aCBib3RoIG1lc2gtc2l6ZXMgYW5kIHBhZGRp
bmctYm94IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
MTAgMjAgcGFkZGluZy1ib3gpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMTAgMjApIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20g
d2l0aCBtZXNoLXNpemVzLCBwYWRkaW5nLWJveCBhbmQgZGV0YWNoZWQiLAotICAgICAgICAgICAg
ImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCBwYWRkaW5nLWJveCBkZXRh
Y2hlZCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAx
MCAyMCBkZXRhY2hlZCkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9z
Y3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC5qcyBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9zY3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggYzMzOGQyNC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2VmZmVjdC1jdXN0b20tZGlzYWJsZWQuanMKKysrIC9k
ZXYvbnVsbApAQCAtMSwyNyArMCwwIEBACi1kZXNjcmlwdGlvbigiVGVzdCB0aGF0IHRoZSBjdXN0
b20oKSBmdW5jdGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkgaXMgbm90IHBhcnNl
ZCB3aGVuIENTUyBDdXN0b20gRmlsdGVyIGlzIGRpc2FibGVkLiIpOwotCi1pZiAod2luZG93LnRl
c3RSdW5uZXIpCi0gICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgZmFsc2UpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJl
IGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBzdHlsZXNoZWV0
LCBjc3NSdWxlLCBkZWNsYXJhdGlvbjsKLXZhciBzdHlsZUVsZW1lbnQgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzdHlsZUVsZW1l
bnQpOwotc3R5bGVzaGVldCA9IHN0eWxlRWxlbWVudC5zaGVldDsKLQotZnVuY3Rpb24gdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKGRlc2NyaXB0aW9uLCBydWxlKQotewotICAgIGRlYnVnKGRlc2NyaXB0
aW9uICsgIiA6ICIgKyBydWxlKTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiYm9keSB7
IC13ZWJraXQtZmlsdGVyOiAiICsgcnVsZSArICI7IH0iLCAwKTsKLSAgICBjc3NSdWxlID0gc3R5
bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAKLSAgICBzaG91bGRCZSgiY3NzUnVsZS50eXBl
IiwgIjEiKTsKLQotICAgIGRlY2xhcmF0aW9uID0gY3NzUnVsZS5zdHlsZTsKLSAgICBzaG91bGRC
ZSgiZGVjbGFyYXRpb24ubGVuZ3RoIiwgIjAiKTsKLSAgICBzaG91bGRCZSgiZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSIsICJudWxsIik7Ci19Ci0KLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciIsICJjdXN0b20odXJs
KHZlcnRleC5zaGFkZXIpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aXBsZSB3aXRo
IGZyYWdtZW50IHNoYWRlciIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSkgc2VwaWEoKSIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSkgc2VwaWEoKSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvZG9tL2dsb2Jh
bC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9k
b20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCBlOTgz
Mjg4Li4zYTdhZmExIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9kb20vZ2xvYmFsLWNvbnN0
cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9kb20v
Z2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dApAQCAtMTg4OCwxMSAr
MTg4OCw2IEBAIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdX
ZWJLaXRBbmltYXRpb25FdmVudCcpLmhhc093blByb3BlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5pbWF0aW9uRXZlbnQnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBB
U1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRp
b25FdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLnZhbHVlIGlzIFdlYktp
dENTU0ZpbHRlclJ1bGUKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNl
Ci1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NT
RmlsdGVyUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3Qu
Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS5l
bnVtZXJhYmxlIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVy
VmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZQogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclZhbHVlJykuaGFzT3du
UHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0
JykgaXMgZmFsc2UKQEAgLTE5MTMsMTEgKzE5MDgsNiBAQCBQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWF0cml4JykuaGFzT3duUHJvcGVydHko
JwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENT
U01hdHJpeCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmVudW1lcmFi
bGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdXZWJLaXRDU1NNYXRyaXgnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQotUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUn
KS52YWx1ZSBpcyBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlCi1QQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhh
c093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJykuZW51bWVyYWJsZSBpcyBmYWxz
ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENT
U01peEZ1bmN0aW9uVmFsdWUnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU1JlZ2lvblJ1bGUnKS52YWx1
ZSBpcyBXZWJLaXRDU1NSZWdpb25SdWxlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVsZScpLmhhc093blByb3BlcnR5KCdnZXQn
KSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J1dlYktpdENTU1JlZ2lvblJ1bGUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy1tb3VudGFpbmxpb24vanMvZG9tL2ds
b2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMtbW91bnRhaW5saW9uL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJp
YnV0ZXMtZXhwZWN0ZWQudHh0CmluZGV4IGNkNmU4M2IuLjg2NjY5ZTQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy1tb3VudGFpbmxpb24vanMvZG9tL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjLW1vdW50YWlubGlvbi9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4
cGVjdGVkLnR4dApAQCAtMTg5MywxMSArMTg5Myw2IEBAIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmhhc093blByb3Bl
CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5p
bWF0aW9uRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcp
LmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1Q
QVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmls
dGVyUnVsZScpLnZhbHVlIGlzIFdlYktpdENTU0ZpbHRlclJ1bGUKLVBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3du
UHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQn
KSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J1dlYktpdENTU0ZpbHRlclJ1bGUnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmNv
bmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktp
dENTU0ZpbHRlclZhbHVlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFs
dWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKQEAgLTE5MTgsMTEgKzE5MTMsNiBA
QCBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NT
TWF0cml4JykuaGFzT3duUHJvcGVydHkoJwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBp
cyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU01hdHJpeCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNYXRyaXgnKS5jb25maWd1cmFibGUg
aXMgdHJ1ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQotUEFT
UyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKLVBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlJykuZW51bWVyYWJsZSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5jb25maWd1cmFibGUg
aXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU1JlZ2lvblJ1bGUnKS52YWx1ZSBpcyBXZWJLaXRDU1NSZWdpb25SdWxlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVs
ZScpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJv
cGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU1JlZ2lvblJ1bGUnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy13azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVz
dEV4cGVjdGF0aW9ucwppbmRleCBjMDRjY2VhLi5jOTQyMDVlIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMjIsOSArMjIyLDYgQEAgZmFz
dC9kb20vU3R5bGVTaGVldC9kZXRhY2hlZC1zdHlsZXNoZWV0LXdpdGhvdXQtd3JhcHBlci5odG1s
CiAjIEFsbCBzcGF0aWFsIG5hdmlnYXRpb24gdGVzdHMgZmFpbCBvbiBNYWMgV0syCiB3ZWJraXQu
b3JnL2IvOTY0MzggZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24KIAotIyBXSzIgdGVzdHMgZmFpbCBp
bWFnZSBkaWZmCi13ZWJraXQub3JnL2IvOTY1ODAgWyBEZWJ1ZyBdIGNzczMvZmlsdGVycy9jdXN0
b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
LQogIyBDYXVzZXMgbmV4dCB0ZXN0IHRvIGNyYXNoCiB3ZWJraXQub3JnL2IvOTg5NjAgZmFzdC9w
YXJzZXIvZG9jdW1lbnQtb3Blbi1pbi11bmxvYWQuaHRtbCBbIFNraXAgXQogCkBAIC0zMjAsNyAr
MzE3LDYgQEAgd2Via2l0Lm9yZy9iLzExODkyNSBjb21wb3NpdGluZy9iYWNrZ3JvdW5kcy9maXhl
ZC1iYWNrZ3JvdW5kcy5odG1sICBbIFBhc3MgSW1hZ2UKIHdlYmtpdC5vcmcvYi8xMTg5MjUgY29t
cG9zaXRpbmcvZ2VvbWV0cnkvZml4ZWQtcG9zaXRpb24tY29tcG9zaXRlZC1wYWdlLXNjYWxlLXNt
YWxsZXItdGhhbi12aWV3cG9ydC5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJr
aXQub3JnL2IvMTE4OTI1IGNvbXBvc2l0aW5nL292ZXJsYXAtYmxlbmRpbmcvY2hpbGRyZW4tb3Bh
Y2l0eS1odWdlLmh0bWwgIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8x
MTg5MjUgY29tcG9zaXRpbmcvb3ZlcmxhcC1ibGVuZGluZy9jaGlsZHJlbi1vcGFjaXR5LW5vLW92
ZXJsYXAuaHRtbCAgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzExODky
NSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMu
aHRtbCAgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzExODkyNSBmYXN0
L2xheWVycy9uby1jbGlwcGluZy1vdmVyZmxvdy1oaWRkZW4tYWRkZWQtYWZ0ZXItdHJhbnNpdGlv
bi5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTE4OTI1IGZh
c3QvbXVsdGljb2wvbWl4ZWQtb3BhY2l0eS1maXhlZC10ZXN0Lmh0bWwgIFsgUGFzcyBJbWFnZU9u
bHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xMTg5MjUgZmFzdC9yZWdpb25zL2ZpeGVkLXBvcy1l
bGVtLWluLXJlZ2lvbi5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCkBAIC0zNDYsMjMg
KzM0Miw2IEBAIHdlYmtpdC5vcmcvYi8xMjIyMzQgc3ZnL2ZpbHRlcnMvZmlsdGVyLWN5Y2xlLmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJz
L251bGwtZWZmZWN0LWNoZWNrLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi8xMjIyMzQgZmFzdC9pbWFnZXMvcGRmLWFzLWltYWdlLXdpdGgtYW5ub3RhdGlvbnMuaHRtbCBb
IFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTIyMjM0IGZhc3QvaW1hZ2Vz
L3BkZi1hcy1pbWFnZS1jcm9wLWJveC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdl
YmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21wb3NpdGVkL2N1c3RvbS1m
aWx0ZXItYmxlbmQtbW9kZXMuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQu
b3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hLXRleC1jb29y
ZC1vcHRpb25hbC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8x
MjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5k
aXJlY3QtaW5kZXguaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2Iv
MTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS5odG1sIFsgUGFz
cyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1
cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY2hhbmdlLWJsZW5kLW1vZGUuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci5o
dG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10
eXBlLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBj
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWF0Ti5odG1sIFsgUGFzcyBJbWFnZU9u
bHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLW1lc2gtY29sdW1uLXJvdy1vcmRlci5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWls
dXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmls
dGVyLXUtbWVzaC1ib3guaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3Jn
L2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtc2l6ZS5o
dG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtdGV4dHVyZS1zaXplLmh0bWwgWyBQYXNzIElt
YWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBd
Ci13ZWJraXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11
bmF2YWlsYWJsZS12YXJ5aW5nLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0
Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LWNvbG9yLW1hdHJpeC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFj
dGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KIAogIyBU
aWxlZCBiYWNrZ3JvdW5kIGltYWdlcyB0aGF0IGludGVyc2VjdCB0aGUgdGlsZXMgYXJlIGdldHRp
bmcgd2VpcmQgZnJpbmdpbmcuCiB3ZWJraXQub3JnL2IvMTIyMjM1IGNzczMvbWFza2luZy9tYXNr
LXJlcGVhdC1zcGFjZS1ib3JkZXIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAzMDljNGZhLi42YTQ5NmE0IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucworKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNjYzLDE1ICs2
NjMsNiBAQCBmYXN0L2NhbnZhcy9jYW52YXMtcXVhZHJhdGljLXNhbWUtZW5kcG9pbnQuaHRtbAog
Y3NzMy9maWx0ZXJzL2NvbXBvc2l0ZWQtZHVyaW5nLXRyYW5zaXRpb24tbGF5ZXJ0cmVlLmh0bWwK
IHdlYmtpdC5vcmcvYi85NTYyMiBjc3MzL2ZpbHRlcnMvY29tcG9zaXRlZC1kdXJpbmctYW5pbWF0
aW9uLWxheWVydHJlZS5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAotIyAtLS0gQ3VzdG9tIEZpbHRl
cnMgLS0tCi0jIFRoZSBmb2xsb3dpbmcgNSB0ZXN0cyBhcmUgY3VycmVudGx5IHNraXBwZWQgb24g
TWFjIGZvciBzbGlnaHQgY29sb3IgZGlmZmVyZW5jZXMsCi0jIHBsZWFzZSBzZWUgdGhlIHJlbGV2
YW50IGJ1ZzogaHR0cDovL3dlYmtpdC5vcmcvYi8xMDc0ODcKLXdlYmtpdC5vcmcvYi8xMDc0ODcg
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGlu
YXRpb24tYWxwaGEuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwNzQ4NyBjc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3IuaHRt
bCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwNzQ4NyBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtbHVtaW5vc2l0eS5odG1sIFsgU2tpcCBd
Ci13ZWJraXQub3JnL2IvMTA3NDg3IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1odWUuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEw
NzQ4NyBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5k
LW1vZGUtc2F0dXJhdGlvbi5odG1sIFsgU2tpcCBdCi0KICMgLS0tIFRleHQgLS0tCiBmYXN0L2Zv
cm1zL3RleHQtY29udHJvbC1pbnRyaW5zaWMtd2lkdGhzLmh0bWwKIHBsYXRmb3JtL21hYy9mYXN0
L3RleHQvY29tYmluaW5nLWNoYXJhY3Rlci1zZXF1ZW5jZS1mYWxsYmFjay5odG1sCkBAIC0xMTUy
LDggKzExNDMsNiBAQCB3ZWJraXQub3JnL2IvMTE1MjkyIGZhc3Qvd3JpdGluZy1tb2RlL3ZlcnRp
Y2FsLWZvbnQtZmFsbGJhY2suaHRtbAogIyBGYWlscyB3aXRoIFdlYktpdDEgb25seS4KIGVkaXRp
bmcvc2VjdXJlLWlucHV0L3Jlc2V0LXN0YXRlLW9uLW5hdmlnYXRpb24uaHRtbCBbIEZhaWx1cmUg
XQogCi13ZWJraXQub3JnL2IvMTE2MjM4IGNzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZhbGxi
YWNrLXRvLXNvZnR3YXJlLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotCiB3ZWJraXQu
b3JnL2IvMTE2MjQ0IGZhc3QvZXZlbnRzL21vdXNlLWN1cnNvci1pbWFnZS1zZXQuaHRtbCBbIEZh
aWx1cmUgUGFzcyBdCiAKIHdlYmtpdC5vcmcvYi8xMTYyNDUgY2FudmFzL3BoaWxpcC90ZXN0cy8y
ZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQpAQCAt
MTI2MSwxMiArMTI1MCw2IEBAIHdlYmtpdC5vcmcvYi8xMjMyODIgY29tcG9zaXRpbmcvcmVnaW9u
cy9wcm9wYWdhdGUtcmVnaW9uLWJveC1zaGFkb3ctYm9yZGVyLXBhZGRpCiAKIHdlYmtpdC5vcmcv
Yi8xMjMyNTAgcGx1Z2lucy9kZXN0cm95LWR1cmluZy1ucHAtbmV3LW9iamVjdC13aXRoLWZhbGxi
YWNrLWNvbnRlbnQuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKLXdlYmtpdC5vcmcvYi8xMjMzNzAg
WyBNYXZlcmlja3MgXSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2NvbXBvc2l0ZWQvY3VzdG9tLWZpbHRl
ci1ibGVuZC1tb2Rlcy5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8xMjMzNzAgWyBNYXZlcmlja3MgXSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
YmxlbmQtbW9kZXMuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2Iv
MTIzMzcwIFsgTWF2ZXJpY2tzIF0gY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNs
YW1wLWNzcy1jb2xvci1tYXRyaXguaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTIzMzcwIFsgTWF2ZXJpY2tzIF0gY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sIFsgUGFzcyBJbWFn
ZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjMzNzAgWyBNYXZlcmlja3MgXSBjc3MzL2Zp
bHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMuaHRtbCBbIFBh
c3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi0KIHdlYmtpdC5vcmcvYi8xMjMzNjkgc3ZnL2Nzcy9wYXJl
bnQtc2hhZG93LW9mZnNjcmVlbi5zdmcgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi8xMjMzNjkgWyBNb3VudGFpbkxpb24gXSBzdmcvY3NzL3BhcmVudC1zaGFkb3ctb2Zmc2NyZWVu
LnN2ZyBbIFBhc3MgXQogd2Via2l0Lm9yZy9iLzEyMzM2OSBzdmcvY3NzL3Jvb3Qtc2hhZG93LW9m
ZnNjcmVlbi5zdmcgWyBJbWFnZU9ubHlGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVj
dG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCAzNGU5MjdlLi40MTYyZmYxIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3Rv
cnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0x
OTAzLDExICsxOTAzLDYgQEAgUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGds
b2JhbCwgJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykuaGFzT3duUHJvcGUKIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmhh
c093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykuZW51bWVyYWJsZSBpcyBm
YWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktp
dEFuaW1hdGlvbkV2ZW50JykuY29uZmlndXJhYmxlIGlzIHRydWUKLVBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykudmFsdWUg
aXMgV2ViS2l0Q1NTRmlsdGVyUnVsZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0Jykg
aXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdX
ZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCi1QQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVy
UnVsZScpLmVudW1lcmFibGUgaXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuY29uZmlndXJhYmxlIGlzIHRy
dWUKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRD
U1NGaWx0ZXJWYWx1ZScpLnZhbHVlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlCiBQQVNTIE9iamVj
dC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUn
KS5oYXNPd25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJWYWx1ZScpLmhhc093blByb3Bl
cnR5KCdzZXQnKSBpcyBmYWxzZQpAQCAtMTkyOCwxMSArMTkyMyw2IEBAIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNYXRyaXgnKS5oYXNPd25Q
cm9wZXJ0eSgnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
V2ViS2l0Q1NTTWF0cml4JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWF0cml4Jyku
ZW51bWVyYWJsZSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZScpLnZhbHVlIGlzIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUKLVBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhh
c093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5lbnVtZXJhYmxl
IGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVs
ZScpLnZhbHVlIGlzIFdlYktpdENTU1JlZ2lvblJ1bGUKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NSZWdpb25SdWxlJykuaGFzT3duUHJvcGVy
dHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBm
YWxzZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlv
bnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRleCA0MzAw
YWNjLi4xYTE4MTA5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4
cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9u
cwpAQCAtNDIsOSArNDIsNiBAQCBjc3MzL2ZpbHRlcnMvZWZmZWN0LW9wYWNpdHktaHcuaHRtbAog
Y3NzMy9maWx0ZXJzL2VmZmVjdC1zYXR1cmF0ZS1ody5odG1sCiBjc3MzL2ZpbHRlcnMvZWZmZWN0
LXNlcGlhLWh3Lmh0bWwKIAotIyBDdXN0b20gZmlsdGVycyBub3QgeWV0IHN1cHBvcnRlZCBvbiBX
aW5kb3dzCi1jc3MzL2ZpbHRlcnMvY3VzdG9tCi0KICMgUmVtb3ZlIGZyb20gbGlzdCBhZnRlciBl
bmFibGluZyBDQU5WQVNfUEFUSAogZmFzdC9jYW52YXMvY2FudmFzLWN1cnJlbnRQYXRoLmh0bWwK
IGZhc3QvY2FudmFzL2NhbnZhcy1wYXRoLWNvbnN0cnVjdG9ycy5odG1sCkBAIC0yNDQ2LDcgKzI0
NDMsNiBAQCBjb21wb3NpdGluZy9maWx0ZXJzL3N3LW5lc3RlZC1zaGFkb3ctb3ZlcmxhcHMtaHct
bmVzdGVkLXNoYWRvdy5odG1sCiBjb21wb3NpdGluZy9pZnJhbWVzL2lmcmFtZS1zaXplLWZyb20t
emVyby5odG1sCiBjb21wb3NpdGluZy9pZnJhbWVzL292ZXJsYXBwZWQtaWZyYW1lLWlmcmFtZS5o
dG1sCiBjb21wb3NpdGluZy90aWxpbmcvdGlsZWQtbGF5ZXItcmVzaXplLmh0bWwKLWNzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12
YWxpZC5odG1sCiBlZGl0aW5nL2lucHV0L2ltZS1jb21wb3NpdGlvbi1jbGVhcnByZWVkaXQuaHRt
bAogZmFzdC9jYW52YXMvY2FudmFzLWNvbXBvc2l0ZS1hbHBoYS5odG1sCiBmYXN0L2NhbnZhcy9j
YW52YXMtcXVhZHJhdGljLXNhbWUtZW5kcG9pbnQuaHRtbApAQCAtMjQ4Miw5ICsyNDc4LDYgQEAg
d2Via2l0Lm9yZy9iLzYxMTM4IGh0dHAvdGVzdHMvdzNjL3dlYnBlcmYvc3VibWlzc2lvbi9JbnRl
bC9yZXNvdXJjZS10aW1pbmcKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTk1NDI4CiB3ZWJraXQub3JnL2IvMTAxNjcwIG1lZGlhL3ZpZGVvLWNvbnRyb2xzLWNhcHRp
b25zLmh0bWwgWyBTa2lwIF0KIAotIyBidWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MTIzNQotY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4Ci0KICMgYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTA0NDcKIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctY2hhbmdlZC10ZXh0Lmh0bWwKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJv
L1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZDUzODZjYS4uYTliMDhhNyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCkBAIC01NjUsOSArNTY1LDYg
QEAgY3NzMy9maWx0ZXJzL2VmZmVjdC1vcGFjaXR5LWh3Lmh0bWwKIGNzczMvZmlsdGVycy9lZmZl
Y3Qtc2F0dXJhdGUtaHcuaHRtbAogY3NzMy9maWx0ZXJzL2VmZmVjdC1zZXBpYS1ody5odG1sCiAK
LSMgQ3VzdG9tIGZpbHRlcnMgbm90IHlldCBzdXBwb3J0ZWQgb24gV2luZG93cwotY3NzMy9maWx0
ZXJzL2N1c3RvbQotCiAjIE5lZWRzIHJlYmFzZWxpbmUgYWZ0ZXIgYnVnIDk3MjE3IGlzIGZpeGVk
CiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzMyNQogY3NzMy9t
YXNraW5nL2NsaXAtcGF0aC1jaXJjbGUtcmVsYXRpdmUtb3ZlcmZsb3cuaHRtbApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZp
bmVzLnhjY29uZmlnCmluZGV4IGFhMzc1ODhkLi45NDY4YzgyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCkBAIC01MCw3ICs1MCw2IEBAIEVOQUJMRV9DU1NfRklMVEVSUyA9IEVOQUJMRV9DU1Nf
RklMVEVSUzsKIEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfQ1NTX0lN
QUdFX1JFU09MVVRJT04gPSA7CiBFTkFCTEVfQ1NTX1JFR0lPTlMgPSBFTkFCTEVfQ1NTX1JFR0lP
TlM7Ci1FTkFCTEVfQ1NTX1NIQURFUlMgPSBFTkFCTEVfQ1NTX1NIQURFUlM7CiBFTkFCTEVfQ1NT
X1NIQVBFUyA9IEVOQUJMRV9DU1NfU0hBUEVTOwogRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04g
PSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTjsKIEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklN
QVRJT05TX1VOUFJFRklYRUQgPSBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBS
RUZJWEVEOwpAQCAtMTk4LDQgKzE5Nyw0IEBAIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiBF
TkFCTEVfRlRMX0pJVCA9IDsKIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKLUZFQVRVUkVfREVG
SU5FUyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FO
VkFTKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpICQoRU5BQkxFX0JM
T0IpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQo
RU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxF
X0NTUF9ORVhUKSAkKEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NT
U19DT01QT1NJVElORykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9D
U1NfRVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19JTUFHRV9P
UklFTlRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19S
RUdJT05TKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFC
TEVfQ1NTX1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9O
U19VTlBSRUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9D
U1MzX1RFWFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RF
WFRfTElORV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RP
TV9TQ0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RB
VEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RF
VEFJTFNfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJF
Q1RPUllfVVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVf
RFJBR0dBQkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNS
WVBURURfTUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVO
VFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9H
RU9MT0NBVElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQo
RU5BQkxFX0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9J
RlJBTUVfU0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElF
X1VJKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQo
RU5BQkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRF
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVU
X1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVf
SU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19B
SVJQTEFZKSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBU
X0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVf
TEVHQUNZX05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQo
RU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9M
SU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1ND
UklQVCkgJChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAk
KEVOQUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VS
U09SX1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9U
SUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lU
X1BMVUdJTikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JF
U1NfRUxFTUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMp
ICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JF
UVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJM
RV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5B
QkxFX1NIQURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hf
U1lOVEhFU0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9V
VCkgJChFTkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9O
VFMpICQoRU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykg
JChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5B
QkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0sp
ICQoRU5BQkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9X
RUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAk
KEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VS
UykgJChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQp
ICQoRU5BQkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1F
KSk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FD
Q0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xM
SU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxF
X0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVT
U0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JS
RUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRB
VElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVO
QUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9O
KSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NT
X1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBS
RUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RF
WFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElO
RV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hF
TUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNU
X0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNf
RUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllf
VVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dB
QkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURf
TUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQo
RU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NB
VElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxF
X0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVf
U0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAk
KEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxF
X0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVO
QUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVf
REFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRf
VFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZ
KSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVH
R0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZ
X05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxF
X0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BS
RUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkg
JChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJM
RV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1ND
QUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FU
SU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJ
TikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxF
TUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5B
QkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1Rf
QU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNP
TFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NI
QURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhF
U0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChF
TkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQo
RU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFC
TEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VT
RVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5B
QkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5J
TUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJM
RV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChF
TkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5B
QkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oIGIvU291cmNlL1dURi93
dGYvRmVhdHVyZURlZmluZXMuaAppbmRleCBmZmU3OTc4Li4wN2M4Njk0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0ZlYXR1
cmVEZWZpbmVzLmgKQEAgLTQxNiwxMCArNDE2LDYgQEAKICNkZWZpbmUgRU5BQkxFX0NTU19JTUFH
RV9TRVQgMAogI2VuZGlmCiAKLSNpZiAhZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpCi0jZGVm
aW5lIEVOQUJMRV9DU1NfU0hBREVSUyAwCi0jZW5kaWYKLQogI2lmICFkZWZpbmVkKEVOQUJMRV9D
U1NfU1RJQ0tZX1BPU0lUSU9OKQogI2RlZmluZSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTiAw
CiAjZW5kaWYKQEAgLTg4NCwxMCArODgwLDYgQEAKICNlcnJvciAiRU5BQkxFKFZJREVPX1RSQUNL
KSByZXF1aXJlcyBFTkFCTEUoVklERU8pIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpICYmICFFTkFCTEUoV0VCR0wpCi0jZXJyb3IgIkVOQUJMRShDU1NfU0hBREVSUykgcmVxdWly
ZXMgRU5BQkxFKFdFQkdMKSIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1Ip
ICYmICFFTkFCTEUoSU5TUEVDVE9SKQogI2Vycm9yICJFTkFCTEUoUkVNT1RFX0lOU1BFQ1RPUikg
cmVxdWlyZXMgRU5BQkxFKElOU1BFQ1RPUikiCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5k
ZXggNzZlMTY1YS4uZDJkMjdkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTMxOSwxMiArMzE5
LDEwIEBAIHNldChXZWJDb3JlX0lETF9GSUxFUwogICAgIGNzcy9TdHlsZU1lZGlhLmlkbAogICAg
IGNzcy9TdHlsZVNoZWV0LmlkbAogICAgIGNzcy9TdHlsZVNoZWV0TGlzdC5pZGwKLSAgICBjc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRs
CiAgICAgY3NzL1dlYktpdENTU0tleWZyYW1lUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTS2V5
ZnJhbWVzUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTTWF0cml4LmlkbAotICAgIGNzcy9XZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbAogICAgIGNzcy9XZWJLaXRDU1NSZWdpb25SdWxlLmlk
bAogICAgIGNzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NT
Vmlld3BvcnRSdWxlLmlkbApAQCAtMTEwOSwxNiArMTEwNywxMSBAQCBzZXQoV2ViQ29yZV9TT1VS
Q0VTCiAgICAgY3NzL1N0eWxlU2hlZXRMaXN0LmNwcAogICAgIGNzcy9UcmFuc2Zvcm1GdW5jdGlv
bnMuY3BwCiAgICAgY3NzL1ZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAKLSAgICBjc3MvV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcAotICAgIGNzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmNw
cAogICAgIGNzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAKICAgICBjc3MvV2ViS2l0Q1NTS2V5
ZnJhbWVSdWxlLmNwcAogICAgIGNzcy9XZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcAotICAgIGNz
cy9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcAogICAgIGNzcy9XZWJLaXRDU1NNYXRyaXgu
Y3BwCi0gICAgY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwCiAgICAgY3NzL1dlYktp
dENTU1JlZ2lvblJ1bGUuY3BwCi0gICAgY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmNwcAogICAg
IGNzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAKICAgICBjc3MvV2ViS2l0Q1NTVmlld3Bv
cnRSdWxlLmNwcAogCkBAIC0xNjk1LDcgKzE2ODgsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAg
ICAgbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0RvY3VtZW50LmNwcAogICAgIGxvYWRlci9jYWNoZS9D
YWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZS5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2Ny
aXB0LmNwcAotICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuY3BwCiAgICAgbG9hZGVyL2Nh
Y2hlL0NhY2hlZFhTTFN0eWxlU2hlZXQuY3BwCiAgICAgbG9hZGVyL2NhY2hlL01lbW9yeUNhY2hl
LmNwcAogCkBAIC0xOTM4LDIzICsxOTMwLDEyIEBAIHNldChXZWJDb3JlX1NPVVJDRVMKIAogICAg
IHBsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAKIAot
ICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
LmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29u
dGV4dC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2gu
Y3BwCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJh
dG9yLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyTGlzdC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBy
b2dyYW0uY3BwCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9n
cmFtSW5mby5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJl
bmRlcmVyLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbS5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3RhbnRM
aWdodFNvdXJjZS5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQmxlbmQuY3Bw
CiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUNvbG9yTWF0cml4LmNwcAogICAgIHBs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDb21wb25lbnRUcmFuc2Zlci5jcHAKICAgICBwbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ29tcG9zaXRlLmNwcAogICAgIHBsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNwcAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
RkVEaWZmdXNlTGlnaHRpbmcuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRURp
c3BsYWNlbWVudE1hcC5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFRHJvcFNo
YWRvdy5jcHAKQEAgLTE5NzQsOSArMTk1NSw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBw
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1NvdXJjZUFscGhhLmNwcAogICAgIHBsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvU291cmNlR3JhcGhpYy5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL1Nwb3RMaWdodFNvdXJjZS5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAKLQotICAgIHBsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvdGV4bWFwL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW1UZXh0dXJlTWFw
cGVyLmNwcAogCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXIuY3Bw
CiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJCYWNraW5nU3RvcmUu
Y3BwCkBAIC0yMjY5LDkgKzIyNDcsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgcmVuZGVy
aW5nL3N0eWxlL1N0eWxlQm94RGF0YS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNo
ZWRJbWFnZS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZVNldC5jcHAK
LSAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuY3BwCi0gICAgcmVuZGVyaW5n
L3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAKLSAgICByZW5kZXJpbmcvc3R5bGUv
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuY3BwCiAgICAgcmVuZGVyaW5nL3N0eWxlL1N0
eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5
bGVGaWx0ZXJEYXRhLmNwcAogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUZsZXhpYmxlQm94RGF0
YS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVE
ZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURl
ZmluZXMueGNjb25maWcKaW5kZXggYWEzNzU4OGQuLjk0NjhjODIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC01
MCw3ICs1MCw2IEBAIEVOQUJMRV9DU1NfRklMVEVSUyA9IEVOQUJMRV9DU1NfRklMVEVSUzsKIEVO
QUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJ
T04gPSA7CiBFTkFCTEVfQ1NTX1JFR0lPTlMgPSBFTkFCTEVfQ1NTX1JFR0lPTlM7Ci1FTkFCTEVf
Q1NTX1NIQURFUlMgPSBFTkFCTEVfQ1NTX1NIQURFUlM7CiBFTkFCTEVfQ1NTX1NIQVBFUyA9IEVO
QUJMRV9DU1NfU0hBUEVTOwogRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04gPSBFTkFCTEVfQ1NT
X1NUSUNLWV9QT1NJVElPTjsKIEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJF
RklYRUQgPSBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEOwpAQCAt
MTk4LDQgKzE5Nyw0IEBAIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiBFTkFCTEVfRlRMX0pJ
VCA9IDsKIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5B
QkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJM
RV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxF
X0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZB
U19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NTUF9ORVhUKSAk
KEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19DT01QT1NJVElO
RykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1NfRVhDTFVTSU9O
UykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikg
JChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAkKEVO
QUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNL
WV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVE
KSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQo
RU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVB
SykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFO
RExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1F
TlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVO
VCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FE
KSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JF
R0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFf
VjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxF
X0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikg
JChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hf
RFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxF
U1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJM
RV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVU
X1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJ
TUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9U
SU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVO
QUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAk
KEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElG
SUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FD
WV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENI
KSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFC
TEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRF
Ul9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAk
KEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykg
JChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChF
TkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkg
JChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BV
QkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFU
SU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9O
X01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19E
T00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAk
KEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVf
U1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxF
X1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9V
Q0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxF
Q1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJ
RVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9O
UykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJf
U09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVf
WEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xM
SU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CitGRUFUVVJF
X0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJE
X0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJM
RV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRI
KSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVO
QUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJM
RV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFC
TEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfSU1B
R0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9D
U1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJ
VElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEKSAkKEVO
QUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxF
X0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVBSykgJChF
TkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikg
JChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQo
RU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVOVCkgJChF
TkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVO
QUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JFR0lPTikg
JChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFfVjIpICQo
RU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExT
Q1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFC
TEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NB
TlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQo
RU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBV
VF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1RZUEVf
Q09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NB
TCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9J
T1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJM
RV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElP
TlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJf
QVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVO
QUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFCTEVfTUVE
SUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9FTEVN
RU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJM
RV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFC
TEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVf
UExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkgJChFTkFC
TEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BVQkxJQ19T
VUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZS
QU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElB
X1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19ET00pICQo
RU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAkKEVOQUJM
RV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVfU1VCVExF
X0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTVBM
QVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hfRVZF
TlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxM
KSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJRVdfTU9E
RV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9OUykgJChF
TkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VU
UykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJ
TUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xMSU5UX0Nf
TE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy5jcHAKaW5kZXggNjU3MjY4Yi4uZWRhYjEzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLmNwcApAQCAtNDgxLDkgKzQ4MSw2IEBACiAjaW5jbHVkZSAiSlNWYWxpZGl0eVN0YXRlLmNw
cCIKICNpbmNsdWRlICJKU1ZvaWRDYWxsYmFjay5jcHAiCiAjaW5jbHVkZSAiSlNXZWJLaXRBbmlt
YXRpb25FdmVudC5jcHAiCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkpTV2Vi
S2l0Q1NTRmlsdGVyUnVsZS5jcHAiCi0jZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAj
aW5jbHVkZSAiSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAiCiAjZW5kaWYKQEAgLTQ5MSw5ICs0
ODgsNiBAQAogI2luY2x1ZGUgIkpTV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5jcHAiCiAjaW5jbHVk
ZSAiSlNXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAiCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NN
YXRyaXguY3BwIgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJKU1dlYktpdENT
U01peEZ1bmN0aW9uVmFsdWUuY3BwIgotI2VuZGlmCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NSZWdp
b25SdWxlLmNwcCIKICNpbmNsdWRlICJKU1dlYktpdE5hbWVkRmxvdy5jcHAiCiAjaW5jbHVkZSAi
SlNXZWJLaXRQb2ludC5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCAzODJi
NDdiLi4xYjgwZjBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5t
YWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTIzNiwxMSAr
MjM2LDkgQEAgQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvY3NzL1N0eWxlU2hlZXQu
aWRsIFwKICAgICAkKFdlYkNvcmUpL2Nzcy9TdHlsZVNoZWV0TGlzdC5pZGwgXAogICAgICQoV2Vi
Q29yZSkvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmlkbCBcCi0gICAgJChXZWJDb3JlKS9jc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dlYktpdENTU0tl
eWZyYW1lUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dlYktpdENTU0tleWZyYW1lc1J1
bGUuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NNYXRyaXguaWRsIFwKLSAgICAk
KFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9jc3MvV2ViS2l0Q1NTUmVnaW9uUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dl
YktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NT
Vmlld3BvcnRSdWxlLmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmls
ZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCA5ZTJj
OThlLi4xMGFiNmMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0
LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTc5MSw4ICs3
OTEsNiBAQCB3ZWJjb3JlX2J1aWx0X3NvdXJjZXMgKz0gXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRBbmltYXRpb25FdmVudC5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNXZWJLaXRBbmltYXRpb25FdmVudC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2Vi
S2l0Q1NTRmlsdGVyUnVsZS5jcHAgXAotCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRD
U1NGaWx0ZXJSdWxlLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxl
LmNwcCBcCkBAIC04MDEsOCArNzk5LDYgQEAgd2ViY29yZV9idWlsdF9zb3VyY2VzICs9IFwKIAlE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIFwKIAlEZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTTWF0cml4LmNwcCBcCiAJRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU1dlYktpdENTU01hdHJpeC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgXAotCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U1dlYktpdENTU1JlZ2lvblJ1bGUuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYktp
dENTU1RyYW5zZm9ybVZhbHVlLmNwcCBcCkBAIC0xMzMxLDEyICsxMzI3LDEwIEBAIGRvbV9iaW5k
aW5nX2lkbHMgKz0gXAogCSQoV2ViQ29yZSkvY3NzL1N0eWxlTWVkaWEuaWRsIFwKIAkkKFdlYkNv
cmUpL2Nzcy9TdHlsZVNoZWV0LmlkbCBcCiAJJChXZWJDb3JlKS9jc3MvU3R5bGVTaGVldExpc3Qu
aWRsIFwKLQkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmlkbCBcCiAJJChXZWJD
b3JlKS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJL
aXRDU1NLZXlmcmFtZVJ1bGUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NLZXlmcmFt
ZXNSdWxlLmlkbCBcCiAJJChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NTTWF0cml4LmlkbCBcCi0JJChX
ZWJDb3JlKS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5pZGwgXAogCSQoV2ViQ29yZSkv
Y3NzL1dlYktpdENTU1JlZ2lvblJ1bGUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NU
cmFuc2Zvcm1WYWx1ZS5pZGwgXAogCSQoV2ViQ29yZSkvY3NzL1dlYktpdENTU1ZpZXdwb3J0UnVs
ZS5pZGwgXApAQCAtMjcxMSwxMCArMjcwNSw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291
cmNlL1dlYkNvcmUvY3NzL1RyYW5zZm9ybUZ1bmN0aW9ucy5oIFwKIAlTb3VyY2UvV2ViQ29yZS9j
c3MvVmlld3BvcnRTdHlsZVJlc29sdmVyLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1ZpZXdw
b3J0U3R5bGVSZXNvbHZlci5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTQXJyYXlG
dW5jdGlvblZhbHVlLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyUnVsZS5j
cHAgXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmggXAogCVNvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0
Q1NTS2V5ZnJhbWVSdWxlLmNwcCBcCkBAIC0yNzIzLDE0ICsyNzEzLDggQEAgd2ViY29yZV9zb3Vy
Y2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIFwK
IAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0cml4LmNwcCBcCiAJU291cmNlL1dlYkNv
cmUvY3NzL1dlYktpdENTU01hdHJpeC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZS5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNYXRG
dW5jdGlvblZhbHVlLmggXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlv
blZhbHVlLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFs
dWUuaCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1JlZ2lvblJ1bGUuY3BwIFwKIAlT
b3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTUmVnaW9uUnVsZS5oIFwKLQlTb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2Vi
S2l0Q1NTU2hhZGVyVmFsdWUuaCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5z
Zm9ybVZhbHVlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5zZm9ybVZh
bHVlLmggXAogCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3BwIFwK
QEAgLTM5MzgsOCArMzkyMiw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCBcCiAJU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAgXAogCVNvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuaCBcCi0JU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFNoYWRlci5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRTaGFkZXIuaCBcCiAJU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFN0eWxl
U2hlZXRDbGllbnQuaCBcCiAJU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFRleHRU
cmFjay5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRUZXh0VHJhY2su
aCBcCkBAIC00NjE3LDEyICs0NTk5LDYgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZS5oIFwKIAlTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZVNldC5jcHAgXAogCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZEltYWdlU2V0LmggXAotCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5jcHAgXAotCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5oIFwKLQlTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCBcCi0JU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIFwK
LQlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
Q2FjaGUuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtQ2FjaGUuaCBcCiAJU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlRGFzaGJvYXJkUmVnaW9uLmggXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9T
dHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU3R5bGVEZXByZWNhdGVkRmxleGlibGVCb3hEYXRhLmggXApAQCAtNDY0NCwx
MyArNDYyMCwxMSBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZU11bHRpQ29sRGF0YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZU11bHRpQ29sRGF0YS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVQZW5kaW5nSW1hZ2UuaCBcCi0JU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1N0eWxlUGVuZGluZ1NoYWRlci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmggXAogCVNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcCBcCiAJU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaCBcCiAJU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmVmbGVjdGlvbi5oIFwKLQlTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVTaGFkZXIuaCBcCiAJU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlU3Vycm91bmREYXRhLmNwcCBcCiAJU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlU3Vycm91bmREYXRhLmggXAogCVNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZVRyYW5zZm9ybURhdGEuY3BwIFwKQEAgLTU2NDMsMzUgKzU2MTcs
NiBAQCBwbGF0Zm9ybV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jcHUvYXJtL2ZpbHRlcnMvRkVHYXVzc2lhbkJsdXJORU9OLmggXAogCVNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAg
XAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxp
Z2h0aW5nTkVPTi5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb25zdGFudHMu
aCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0
ZXJHbG9iYWxDb250ZXh0LmNwcCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmggXAotCVNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5jcHAgXAotCVNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5oIFwKLQlT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hH
ZW5lcmF0b3IuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24u
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlck9wZXJhdGlvbi5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgXAotCVNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUGFyYW1ldGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIFwKLQlTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0u
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlclByb2dyYW0uaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwIFwKLQlTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1JbmZv
LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUmVuZGVyZXIuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFBy
b2dyYW0uaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCBcCi0JU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0
ZWRQcm9ncmFtLmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
RGlzdGFudExpZ2h0U291cmNlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9EaXN0YW50TGlnaHRTb3VyY2UuaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9GRUJsZW5kLmNwcCBcCkBAIC01Njg0LDggKzU2MjksNiBAQCBw
bGF0Zm9ybV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0ZFQ29tcG9zaXRlLmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNwcCBcCi0JU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5oIFwKIAlTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFRGlmZnVzZUxpZ2h0aW5nLmNw
cCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRURpZmZ1c2VM
aWdodGluZy5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZF
RGlzcGxhY2VtZW50TWFwLmNwcCBcCkBAIC02NDAwLDcgKzYzNDMsNiBAQCBlbmRpZgogaWYgVVNF
X0FDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HCiBpZiBVU0VfVEVYVFVSRV9NQVBQRVJfR0wKIHdlYmNv
cmVfc291cmNlcyArPSBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy90ZXhtYXAvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbVRleHR1cmVNYXBwZXIuY3BwIFwK
IAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL3RleG1hcC9UZXh0dXJl
TWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0uaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wuaCBcCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLm9yZGVyIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5v
cmRlcgppbmRleCA5NzU0ZGQ5Li43YjhiOWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLm9yZGVyCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUub3JkZXIKQEAgLTI3NDcs
NyArMjc0Nyw2IEBAIF9fWk43V2ViQ29yZTE4UmVuZGVyTGF5ZXJCYWNraW5nMTV1cGRhdGVUcmFu
c2Zvcm1FUEtOU18xMVJlbmRlclN0eWxlRQogX19aTjdXZWJDb3JlMTVHcmFwaGljc0xheWVyQ0Ex
MnNldFRyYW5zZm9ybUVSS05TXzIwVHJhbnNmb3JtYXRpb25NYXRyaXhFCiBfX1pOSzdXZWJDb3Jl
MjBUcmFuc2Zvcm1hdGlvbk1hdHJpeGVxRVJLUzBfCiBfX1pON1dlYkNvcmUxOFJlbmRlckxheWVy
QmFja2luZzEzdXBkYXRlRmlsdGVyc0VQS05TXzExUmVuZGVyU3R5bGVFCi1fX1pON1dlYkNvcmUx
MVJlbmRlckxheWVyMjNjb21wdXRlRmlsdGVyT3BlcmF0aW9uc0VQS05TXzExUmVuZGVyU3R5bGVF
CiBfX1pON1dlYkNvcmUxNkZpbHRlck9wZXJhdGlvbnNhU0VSS1MwXwogX19aTjNXVEY2VmVjdG9y
SU5TXzZSZWZQdHJJTjdXZWJDb3JlMTVGaWx0ZXJPcGVyYXRpb25FRUVMbTBFTlNfMTVDcmFzaE9u
T3ZlcmZsb3dFRWFTRVJLUzZfCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzTGF5ZXJDQTEwc2V0Rmls
dGVyc0VSS05TXzE2RmlsdGVyT3BlcmF0aW9uc0UKQEAgLTIwNjU5LDcgKzIwNjU4LDYgQEAgX19a
VFZON1dlYkNvcmUxMUNhY2hlZEltYWdlRQogX19aVFZON1dlYkNvcmUxN0NhY2hlZFJhd1Jlc291
cmNlRQogX19aVFZON1dlYkNvcmUxNENhY2hlZFJlc291cmNlRQogX19aVFZON1dlYkNvcmUxMkNh
Y2hlZFNjcmlwdEUKLV9fWlRWTjdXZWJDb3JlMTJDYWNoZWRTaGFkZXJFCiBfX1pUVk43V2ViQ29y
ZTE3Q2FjaGVkU1ZHRG9jdW1lbnRFCiBfX1pUVk43V2ViQ29yZTE1Q2FjaGVkVGV4dFRyYWNrRQog
X19aVFZON1dlYkNvcmUxOUNhY2hlZFhTTFN0eWxlU2hlZXRFCkBAIC0yMDcyMSw4ICsyMDcxOSw2
IEBAIF9fWlRWTjdXZWJDb3JlMTNDU1NTdHlsZVNoZWV0RQogX19aWk43V2ViQ29yZTIwQ1NTVmFs
dWVLZXl3b3Jkc0hhc2gxM2ZpbmRWYWx1ZUltcGxFUEtjakUxNXZhbHVlX3dvcmRfbGlzdAogX19a
TjdXZWJDb3JlTDl2YWx1ZUxpc3RFCiBfX1pUVk43V2ViQ29yZTExQ3VzdG9tRXZlbnRFCi1fX1pU
Vk43V2ViQ29yZTIxQ3VzdG9tRmlsdGVyT3BlcmF0aW9uRQotX19aVFZON1dlYkNvcmUxOUN1c3Rv
bUZpbHRlclByb2dyYW1FCiBfX1pUVk43V2ViQ29yZThEYXRhYmFzZUUKIF9fWlRWTjdXZWJDb3Jl
MTVEYXRhYmFzZUNvbnRleHRFCiBfX1pUVk43V2ViQ29yZTEyRGF0YWJhc2VTeW5jRQpAQCAtMjA4
MTAsNyArMjA4MDYsNiBAQCBfX1pUVk43V2ViQ29yZTEzRkVDb2xvck1hdHJpeEUKIF9fWlRWTjdX
ZWJDb3JlMTlGRUNvbXBvbmVudFRyYW5zZmVyRQogX19aVFZON1dlYkNvcmUxMUZFQ29tcG9zaXRl
RQogX19aVFZON1dlYkNvcmUxNkZFQ29udm9sdmVNYXRyaXhFCi1fX1pUVk43V2ViQ29yZTE0RkVD
dXN0b21GaWx0ZXJFCiBfX1pUVk43V2ViQ29yZTE3RkVEaWZmdXNlTGlnaHRpbmdFCiBfX1pUVk43
V2ViQ29yZTE3RkVEaXNwbGFjZW1lbnRNYXBFCiBfX1pUVk43V2ViQ29yZTEyRkVEcm9wU2hhZG93
RQpAQCAtMjM2MDQsNyArMjM1OTksNiBAQCBfX1pUVk43V2ViQ29yZTEyU3RvcmFnZUV2ZW50RQog
X19aVFZON1dlYkNvcmUyMFN0b3JhZ2VOYW1lc3BhY2VJbXBsRQogX19aVFZON1dlYkNvcmUxNlN0
eWxlQ2FjaGVkSW1hZ2VFCiBfX1pUVk43V2ViQ29yZTE5U3R5bGVDYWNoZWRJbWFnZVNldEUKLV9f
WlRWTjdXZWJDb3JlMTdTdHlsZUNhY2hlZFNoYWRlckUKIF9fWlRWTjdXZWJDb3JlMTNTdHlsZWRF
bGVtZW50RQogX19aVFZON1dlYkNvcmUxMlN0eWxlRWxlbWVudEUKIF9fWlRWTjdXZWJDb3JlMTlT
dHlsZUdlbmVyYXRlZEltYWdlRQpAQCAtMjM5MjgsMTYgKzIzOTIyLDExIEBAIF9fWlRWTjdXZWJD
b3JlNVhQYXRoMTdWYXJpYWJsZVJlZmVyZW5jZUUKIF9fWlRWTjdXZWJDb3JlMTNYU0xJbXBvcnRS
dWxlRQogX19aVFZON1dlYkNvcmUxM1hTTFN0eWxlU2hlZXRFCiBfX1pUVk43V2ViQ29yZTE0TG9h
ZGVyU3RyYXRlZ3lFCi1fX1pUVk43V2ViQ29yZTMwVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uRQogX19aVFZON1dlYkNvcmUxMk5vZGVSYXJlRGF0YUUKIF9fWlRWTjdXZWJDb3JlMjNTY3Jv
bGxpbmdTdGF0ZUZpeGVkTm9kZUUKIF9fWlRWTjdXZWJDb3JlMjJTY3JvbGxpbmdUcmVlRml4ZWRO
b2RlRQogX19aVFZON1dlYkNvcmUyMFJlbmRlclRoZW1lTWFjU2hhcmVkRQogX19aVFZON1dlYkNv
cmUyNFdlYkNvcmVBVkZSZXNvdXJjZUxvYWRlckUKLV9fWk43V2ViQ29yZTM4SlNXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlQ29uc3RydWN0b3I2c19pbmZvRQotX19aTjdXZWJDb3JlMzZKU1dlYktp
dENTU01peEZ1bmN0aW9uVmFsdWVQcm90b3R5cGU2c19pbmZvRQotX19aTjdXZWJDb3JlMjdKU1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWU2c19pbmZvRQotX19aTjdXZWJDb3JlTDM4SlNXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlVGFibGVWYWx1ZXNFCiBfX1pUVk43V2ViQ29yZTI1SW5iYW5kVGV4
dFRyYWNrUHJpdmF0ZUFWRkUKIF9fWlRWTjdXZWJDb3JlMjlJbmJhbmRUZXh0VHJhY2tQcml2YXRl
QVZGT2JqQ0UKIF9fWlRWTjdXZWJDb3JlMTVJbmJhbmRUZXh0VHJhY2tFCkBAIC0yNjIzOCw3ICsy
NjIyNyw2IEBAIF9fWlRWTjdXZWJDb3JlMTVTZWN1cmVUZXh0VGltZXJFCiBfX1paTjdXZWJDb3Jl
TDIwbWVkaWFDb250cm9sbGVyVGhlbWVFdkUxNWNvbnRyb2xsZXJUaGVtZQogX19aVFZOM1dURjIx
TWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJDb3JlMTZQT0RGcmVlTGlzdEFyZW5h
SU5TMl8xNVBPRFJlZEJsYWNrVHJlZUlOUzJfMTFQT0RJbnRlcnZhbElpUE5TMl8xMVJlbmRlckJs
b2NrMTRGbG9hdGluZ09iamVjdEVFRUU0Tm9kZUVFRUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0
cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyMEZsb3dUaHJlYWRDb250cm9sbGVyRUVFCi1f
X1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyNUN1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHRFRUUKIF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1lbnRhdGlv
bjdXcmFwcGVySU43V2ViQ29yZTIxUmVuZGVyTGF5ZXJDb21wb3NpdG9yRUVFCiBfX1pUVk4zV1RG
MjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUxMUxheW91dFN0YXRlRUVF
CiBfX1pUVk43V2ViQ29yZTE2UE9ERnJlZUxpc3RBcmVuYUlOU18xNVBPRFJlZEJsYWNrVHJlZUlO
U18xMVBPREludGVydmFsSWlQTlNfMTFSZW5kZXJCbG9jazE0RmxvYXRpbmdPYmplY3RFRUVFNE5v
ZGVFRUUKQEAgLTI2MzY0LDExICsyNjM1Miw2IEBAIF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1l
bnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE3U3RhdGljQ1NTUnVsZUxpc3RFRUUKIF9fWlRWTjNX
VEYyMU1lbW9yeUluc3RydW1lbnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE4U3R5bGVSdWxlS2V5
ZnJhbWVzRUVFCiBfX1pUVk43V2ViQ29yZTVUaW1lcklOU18xM1N0eWxlUmVzb2x2ZXJFRUUKIF9f
WlRWTjdXZWJDb3JlMjRSZWZlcmVuY2VGaWx0ZXJPcGVyYXRpb25FCi1fX1pUVk43V2ViQ29yZTI0
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtRQotX19aVFZON1dlYkNvcmUzMEN1c3RvbUZpbHRlclRy
YW5zZm9ybVBhcmFtZXRlckUKLV9fWlRWTjdXZWJDb3JlMjFDdXN0b21GaWx0ZXJQYXJhbWV0ZXJF
Ci1fX1pUVk43V2ViQ29yZTI3Q3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyRQotX19aVFZON1dl
YkNvcmUyNkN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyRQogX19aVFZON1dlYkNvcmUyNkNhY2hl
ZFNWR0RvY3VtZW50UmVmZXJlbmNlRQogX19aWk43V2ViQ29yZTExUmVuZGVyU3R5bGUxM2luaXRp
YWxGaWx0ZXJFdkUzb3BzCiBfX1pHVlpON1dlYkNvcmUxMVJlbmRlclN0eWxlMTNpbml0aWFsRmls
dGVyRXZFM29wcwpAQCAtMjY1MDAsNyArMjY0ODMsNiBAQCBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0
cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyMldlYktpdENTU0tleWZyYW1lc1J1bGVFRUUK
IF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1lbnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE1U3R5
bGVSdWxlUmVnaW9uRUVFCiBfX1pUVk43V2ViQ29yZTE1TGl2ZUNTU1J1bGVMaXN0SU5TXzE5V2Vi
S2l0Q1NTUmVnaW9uUnVsZUVFRQogX19aVFZOM1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dy
YXBwZXJJTjdXZWJDb3JlMTlXZWJLaXRDU1NSZWdpb25SdWxlRUVFCi1fX1pUVk43V2ViQ29yZTE4
U3R5bGVQZW5kaW5nU2hhZGVyRQogX19aVFZON1dlYkNvcmU1VGltZXJJTlNfMTZXZWJTb2NrZXRD
aGFubmVsRUVFCiBfX1pUVk43V2ViQ29yZTI3V2ViU29ja2V0RXh0ZW5zaW9uUHJvY2Vzc29yRQog
X19aTDIwZ2V0UVRNb3ZpZUxheWVyQ2xhc3MKQEAgLTI2NTk0LDkgKzI2NTc2LDYgQEAgX19aVFZO
M1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJDb3JlMTNFbGVtZW50U2hh
ZG93RUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNv
cmU5Q2xhc3NMaXN0RUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBl
cklON1dlYkNvcmUxOURhdGFzZXRET01TdHJpbmdNYXBFRUUKIF9fWlRWTjdXZWJDb3JlMTlWaWV3
cG9ydENvbnN0cmFpbnRzRQotX19aTjdXZWJDb3JlTDQzSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlQ29uc3RydWN0b3JUYWJsZUUKLV9fWk43V2ViQ29yZUw0MUpTV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZVByb3RvdHlwZVRhYmxlRQotX19aTjdXZWJDb3JlTDMySlNXZWJLaXRDU1NNaXhGdW5j
dGlvblZhbHVlVGFibGVFCiBfX1pUVk43V2ViQ29yZTVUaW1lcklOU185TGF5ZXJQb29sRUVFCiBf
X1pMMzVnZXRrQ01UZXh0TWFya3VwQXR0cmlidXRlX0FsaWdubWVudAogX19aTDM1Z2V0a0NNVGV4
dE1hcmt1cEFsaWdubWVudFR5cGVfU3RhcnQKQEAgLTI3MDA2LDEwICsyNjk4NSw2IEBAIF9fWlpO
N1dlYkNvcmUxMGdyYWJDdXJzb3JFdkUxYwogX19aR1ZaTjdXZWJDb3JlMTBncmFiQ3Vyc29yRXZF
MWMuYgogX19aWk43V2ViQ29yZTE0Z3JhYmJpbmdDdXJzb3JFdkUxYwogX19aR1ZaTjdXZWJDb3Jl
MTRncmFiYmluZ0N1cnNvckV2RTFjLmIKLV9fWlpON1dlYkNvcmUyOEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW0yNWRlZmF1bHRWZXJ0ZXhTaGFkZXJTdHJpbmdFdkUxOHZlcnRleFNoYWRlclN0
cmluZwotX19aR1ZaTjdXZWJDb3JlMjhDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtMjVkZWZh
dWx0VmVydGV4U2hhZGVyU3RyaW5nRXZFMTh2ZXJ0ZXhTaGFkZXJTdHJpbmcuYgotX19aWk43V2Vi
Q29yZTI4Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTI3ZGVmYXVsdEZyYWdtZW50U2hhZGVy
U3RyaW5nRXZFMjBmcmFnbWVudFNoYWRlclN0cmluZwotX19aR1ZaTjdXZWJDb3JlMjhDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtMjdkZWZhdWx0RnJhZ21lbnRTaGFkZXJTdHJpbmdFdkUyMGZy
YWdtZW50U2hhZGVyU3RyaW5nLmIKIF9fWlpON1dlYkNvcmVMMjdidWlsdEluVW5pZm9ybU5hbWVU
b1R5cGVNYXBFdkUxM25hbWVUb1R5cGVNYXAKIF9fWlpON1dlYkNvcmVMMjlidWlsdEluQXR0cmli
dXRlTmFtZVRvVHlwZU1hcEV2RTEzbmFtZVRvVHlwZU1hcAogX19aTjdXZWJDb3JlTDIxbm90aWZp
Y2F0aW9uU2NoZWR1bGVkRS5iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
eHByb2ovV2ViQ29yZS52Y3hwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvagppbmRleCBlZmY5NTJhLi4wOGU0ZDVkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKQEAgLTYxNDcsMjAgKzYxNDcsNiBA
QAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxk
PgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
ICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlv
bkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJp
dmVkU291cmNlc1xKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwIj4KLSAgICAgIDxFeGNs
dWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09
J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1
Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWls
ZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNh
aXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9t
QnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19X
aW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZy
b21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVn
U3VmZml4fFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1
Z1N1ZmZpeHx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZy
b21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVh
c2V8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21C
dWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8
eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQg
Q29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNh
aXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9t
QnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNl
X1dpbkNhaXJvfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJv
ZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJv
ZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICA8L0NsQ29tcGlsZT4K
ICAgICA8Q2xDb21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBs
YXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktp
dENTU1JlZ2lvblJ1bGUuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KQEAgLTcyMDMsNyArNzE4OSw2IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIu
Llxsb2FkZXJcY2FjaGVcQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCIgLz4KICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0
b3JzLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNo
ZWRTY3JpcHQuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hl
XENhY2hlZFNoYWRlci5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJc
Y2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5cbG9hZGVyXGNhY2hlXENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmNwcCIgLz4KICAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRUZXh0VHJhY2suY3BwIiAv
PgpAQCAtODEzMSwyMyArODExNiwxMiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxh
dGZvcm1cZ3JhcGhpY3NcdHJhbnNmb3Jtc1xUcmFuc2Zvcm1PcGVyYXRpb25zLmNwcCIgLz4KICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJh
bnNmb3JtU3RhdGUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcdHJhbnNmb3Jtc1xUcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uY3BwIiAvPgot
ICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0
b21GaWx0ZXJDb21waWxlZFByb2dyYW0uY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNw
cCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyTWVzaC5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuY3BwIiAv
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xD
dXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCIg
Lz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNc
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmNwcCIgLz4K
LSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3Vz
dG9tRmlsdGVyUmVuZGVyZXIuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxh
dGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCIg
Lz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNc
RGlzdGFudExpZ2h0U291cmNlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVCbGVuZC5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFQ29sb3JNYXRyaXguY3BwIiAv
PgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xG
RUNvbXBvbmVudFRyYW5zZmVyLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVDb21wb3NpdGUuY3BwIiAvPgogICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0cml4
LmNwcCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcRkVDdXN0b21GaWx0ZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VMaWdodGluZy5jcHAiIC8+CiAgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFRGlzcGxh
Y2VtZW50TWFwLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGZpbHRlcnNcRkVEcm9wU2hhZG93LmNwcCIgLz4KQEAgLTgxNjgsNyArODE0Miw2IEBA
CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFNv
dXJjZUFscGhhLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGZpbHRlcnNcU291cmNlR3JhcGhpYy5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFNwb3RMaWdodFNvdXJjZS5jcHAiIC8+
Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuY3BwIj4KICAgICAg
IDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZv
cm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAg
ICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
QEAgLTk1NDksMTUgKzk1MjIsMTEgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xT
VkdDU1NTdHlsZVNlbGVjdG9yLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNz
c1xUcmFuc2Zvcm1GdW5jdGlvbnMuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
Y3NzXFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxjc3NcV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcCIgLz4KICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAiIC8+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmNwcCIgLz4KICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcCIg
Lz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNYXRyaXguY3BwIiAv
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktp
dENTU1JlZ2lvblJ1bGUuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdl
YktpdENTU1NoYWRlclZhbHVlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNz
c1xXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxjc3NcV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9Ii4uXGNzc2ppdFxTZWxlY3RvckNvbXBpbGVyLmNwcCIgLz4KQEAgLTExNDI3LDcgKzEx
Mzk2LDYgQEAKICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9t
QnVpbGQ+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxyZW5k
ZXJpbmdcc3R5bGVcU3R5bGVDYWNoZWRTaGFkZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5j
bHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5j
cHAiPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
ICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQo
UGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgpAQCAtMTg1
MTcsNyArMTg0ODUsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9u
QnVpbGREaXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2
ZWRTb3VyY2VzXEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVy
ZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXRDU1NLZXlmcmFtZXNSdWxl
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilc
b2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNc
SlNXZWJLaXRDU1NNYXRyaXguaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmln
dXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1l
KVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIgLz4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3Jt
QXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU1Jl
Z2lvblJ1bGUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1
aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVk
U291cmNlc1xKU1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVy
ZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXROYW1lZEZsb3cuaCIgLz4K
QEAgLTE5MDIzLDcgKzE4OTkwLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGxvYWRl
clxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmgiIC8+
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU2NyaXB0Lmgi
IC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU2hhZGVy
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU3R5
bGVTaGVldENsaWVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNh
Y2hlXENhY2hlZFNWR0RvY3VtZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxs
b2FkZXJcY2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuaCIgLz4KQEAgLTE5MTE3LDgg
KzE5MDgzLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNz
XHRleG1hcFxjb29yZGluYXRlZFxBcmVhQWxsb2NhdG9yLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQ29tcG9zaXRp
bmdDb29yZGluYXRvci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcdGV4bWFwXGNvb3JkaW5hdGVkXENvb3JkaW5hdGVkQmFja2luZ1N0b3JlLmgiIC8+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29v
cmRpbmF0ZWRcQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIgLz4KLSAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxD
b29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW0uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEdy
YXBoaWNzTGF5ZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaCIgLz4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29y
ZGluYXRlZFxDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUuaCIgLz4KQEAgLTE5NDI4LDIzICsxOTM5
Miw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0cmFu
c2Zvcm1zXFRyYW5zZm9ybU9wZXJhdGlvbnMuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNmb3JtU3RhdGUuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJh
bnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIu
LlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmgi
IC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
XEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bS5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmls
dGVyc1xDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5o
IiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVy
c1xDdXN0b21GaWx0ZXJNZXNoLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCIgLz4KLSAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9t
RmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIiAvPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21G
aWx0ZXJQYXJhbWV0ZXIuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIiAvPgotICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0
ZXJQcm9ncmFtLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCIgLz4KLSAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8uaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyVHJhbnNmb3Jt
UGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRGlzdGFudExpZ2h0
U291cmNlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEZFQmxlbmQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRm
b3JtXGdyYXBoaWNzXGNwdVxhcm1cZmlsdGVyc1xGRUJsZW5kTkVPTi5oIiAvPgpAQCAtMTk0NTMs
NyArMTk0MDAsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyc1xGRUNvbXBvc2l0ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcY3B1XGFybVxmaWx0ZXJzXEZFQ29tcG9zaXRlQXJpdGhtZXRpY05F
T04uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcRkVDb252b2x2ZU1hdHJpeC5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUN1c3RvbUZpbHRlci5oIiAvPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VMaWdo
dGluZy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3Nc
ZmlsdGVyc1xGRURpc3BsYWNlbWVudE1hcC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURyb3BTaGFkb3cuaCIgLz4KQEAgLTE5NDc4
LDcgKzE5NDI0LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcU291cmNlQWxwaGEuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcU291cmNlR3JhcGhpYy5oIiAvPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3Vy
Y2UuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiIC8+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuaCIgLz4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGNhXFBsYXRmb3Jt
Q0FBbmltYXRpb24uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGNhXFBsYXRmb3JtQ0FMYXllci5oIiAvPgpAQCAtMTk4NjAsMTUgKzE5ODA1LDExIEBA
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcU3R5bGVTaGVldExpc3QuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xUcmFuc2Zvcm1GdW5jdGlvbnMuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xWaWV3cG9ydFN0eWxlUmVzb2x2ZXIuaCIgLz4K
LSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFs
dWUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU0tleWZy
YW1lUnVsZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU0tl
eWZyYW1lc1J1bGUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRD
U1NNYXRyaXguaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
Y3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XGNzc1xXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cY3NzXFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxjc3NcV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxjc3NqaXRcRnVuY3Rpb25DYWxsLmgiIC8+CkBAIC0yMDA3OCw4ICsyMDAxOSw2
IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVCYWNr
Z3JvdW5kRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0
eWxlXFN0eWxlQm94RGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVy
aW5nXHN0eWxlXFN0eWxlQ2FjaGVkSW1hZ2UuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZFNoYWRlci5oIiAvPgotICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRGVw
cmVjYXRlZEZsZXhpYmxlQm94RGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cmVuZGVyaW5nXHN0eWxlXFN0eWxlRmlsdGVyRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRmxleGlibGVCb3hEYXRhLmgiIC8+CkBAIC0y
MDA5MSwxMSArMjAwMzAsOSBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5n
XHN0eWxlXFN0eWxlTWFycXVlZURhdGEuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHJlbmRlcmluZ1xzdHlsZVxTdHlsZU11bHRpQ29sRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlUGVuZGluZ0ltYWdlLmgiIC8+Ci0gICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVQZW5kaW5nU2hhZGVy
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVS
YXJlSW5oZXJpdGVkRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVy
aW5nXHN0eWxlXFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaCIgLz4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVJlZmxlY3Rpb24uaCIgLz4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVNoYWRlci5oIiAvPgog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlU3Vycm91bmRE
YXRhLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5
bGVUcmFuc2Zvcm1EYXRhLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJp
bmdcc3R5bGVcU3R5bGVWYXJpYWJsZURhdGEuaCIgLz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwppbmRleCA4ZTk4OTUw
Li41ZjQxMjA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2Vi
Q29yZS52Y3hwcm9qLmZpbHRlcnMKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCkBAIC0xMDExLDkgKzEwMTEsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENhY2hlZFNjcmlwdC5jcHAiPgogICAgICAg
PEZpbHRlcj5sb2FkZXJcY2FjaGU8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRTaGFkZXIuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIj4K
ICAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBA
IC0xNjM1LDM2ICsxNjMyLDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uLmNwcCI+CiAg
ICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXM8L0ZpbHRlcj4KICAgICA8
L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNz
XGZpbHRlcnNcQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcCI+Ci0gICAgICA8RmlsdGVy
PnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9t
RmlsdGVyR2xvYmFsQ29udGV4dC5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2guY3BwIj4K
LSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwv
Q2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3Nc
ZmlsdGVyc1xDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCI+Ci0gICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmNwcCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAi
PgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAg
PC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW0uY3BwIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mby5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
PC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29t
cGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXERpc3RhbnRMaWdo
dFNvdXJjZS5jcHAiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0xNjgzLDkgKzE2NTAsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0
cml4LmNwcCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRl
cj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXGZpbHRlcnNcRkVDdXN0b21GaWx0ZXIuY3BwIj4KLSAgICAgIDxGaWx0ZXI+cGxh
dGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VM
aWdodGluZy5jcHAiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0xNzQ2LDkgKzE3MTAsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3Vy
Y2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcZmlsdGVyc1xWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwIj4KLSAg
ICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xD
b21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcY2Fc
R3JhcGhpY3NMYXllckNBLmNwcCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGNh
PC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0yMzQwLDkgKzIzMDEsNiBAQAogICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAiPgogICAg
ICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwIj4KICAgICAgIDxGaWx0ZXI+
Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0yMzU1LDE4ICsyMzEzLDkgQEAKICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNYXRyaXguY3BwIj4KICAgICAg
IDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAiPgotICAgICAgPEZp
bHRlcj5jc3M8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1
ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCI+Ci0gICAgICA8RmlsdGVy
PmNzczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5cY3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuY3BwIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0
ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2Vi
S2l0Q1NTU2hhZGVyVmFsdWUuY3BwIj4KLSAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+Ci0gICAg
PC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTVHJh
bnNmb3JtVmFsdWUuY3BwIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENv
bXBpbGU+CkBAIC0yODM1LDkgKzI3ODQsNiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cmVuZGVyaW5nXHN0eWxlXFN0eWxlQ2FjaGVkSW1hZ2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+cmVu
ZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVDYWNoZWRTaGFkZXIuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVEZXByZWNhdGVkRmxl
eGlibGVCb3hEYXRhLmNwcCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHlsZTwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgpAQCAtNjQzMyw5ICs2Mzc5LDYgQEAKICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0
dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU01hdHJpeC5jcHAi
PgogICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxl
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQo
UGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAiPgotICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNl
czwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iJChD
b25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVj
dE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAiPgogICAgICAg
PEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtNzk2
Nyw5ICs3OTEwLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxD
YWNoZWRTY3JpcHQuaCI+CiAgICAgICA8RmlsdGVyPmxvYWRlclxjYWNoZTwvRmlsdGVyPgogICAg
IDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENh
Y2hlZFNoYWRlci5oIj4KLSAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+Ci0gICAg
PC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2Fj
aGVkU3R5bGVTaGVldENsaWVudC5oIj4KICAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0
ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC04NTE2LDU3ICs4NDU2LDYgQEAKICAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNsYXRlVHJh
bnNmb3JtT3BlcmF0aW9uLmgiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0cmFu
c2Zvcm1zPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVy
LmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0g
ICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRl
cj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0g
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJDb25zdGFudHMu
aCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAg
ICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIj4KLSAgICAgIDxGaWx0ZXI+
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21G
aWx0ZXJNZXNoLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9y
bVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5j
bHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmls
dGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCI+Ci0gICAgICA8Rmls
dGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4K
LSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQcm9ncmFtLmgi
PgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAg
PC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCI+Ci0gICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmls
dGVyUHJvZ3JhbUluZm8uaCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0uaCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRGlzdGFudExpZ2h0U291cmNlLmgiPgogICAg
ICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbElu
Y2x1ZGU+CkBAIC04NTkxLDkgKzg0ODAsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0cml4LmgiPgogICAgICAgPEZp
bHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZF
Q3VzdG9tRmlsdGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
PC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFRGlmZnVzZUxpZ2h0aW5nLmgiPgogICAgICAgPEZp
bHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+
CkBAIC04NjY2LDkgKzg1NTIsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3VyY2UuaCI+CiAgICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcVmFsaWRhdGVk
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuaCI+CiAgICAgICA8
RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGNhPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBA
IC05MjYwLDkgKzkxNDMsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFZpZXdw
b3J0U3R5bGVSZXNvbHZlci5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9D
bEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTQXJyYXlG
dW5jdGlvblZhbHVlLmgiPgotICAgICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC05
Mjc1LDE4ICs5MTU1LDkgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRD
U1NNYXRyaXguaCI+CiAgICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRl
PgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUuaCI+Ci0gICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCI+
Ci0gICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuaCI+CiAgICAgICA8Rmls
dGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5cY3NzXFdlYktpdENTU1NoYWRlclZhbHVlLmgiPgotICAgICAgPEZpbHRlcj5jc3M8L0Zp
bHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xX
ZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+CkBAIC05ODEyLDEyICs5NjgzLDYgQEAKICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZEltYWdlLmgiPgogICAgICAgPEZp
bHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZFNoYWRlci5oIj4K
LSAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtLmgiPgotICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4K
LSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xz
dHlsZVxTdHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuaCI+CiAgICAgICA8RmlsdGVyPnJl
bmRlcmluZ1xzdHlsZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtOTg1MSw5ICs5NzE2
LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVBl
bmRpbmdJbWFnZS5oIj4KICAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5
bGVcU3R5bGVQZW5kaW5nU2hhZGVyLmgiPgotICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8
L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJl
bmRlcmluZ1xzdHlsZVxTdHlsZVJhcmVJbmhlcml0ZWREYXRhLmgiPgogICAgICAgPEZpbHRlcj5y
ZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTk4NjMsOSArOTcy
NSw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVS
ZWZsZWN0aW9uLmgiPgogICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAg
ICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHls
ZVxTdHlsZVNoYWRlci5oIj4KLSAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+
Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdc
c3R5bGVcU3R5bGVTdXJyb3VuZERhdGEuaCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHls
ZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTQyNzIsOSArMTQxMzEsNiBAQAogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZv
cm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2ViS2l0Q1NT
TWF0cml4LmgiPgogICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwv
Q2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGRE
aXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3Vy
Y2VzXEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIj4KLSAgICAgIDxGaWx0ZXI+RGVyaXZl
ZFNvdXJjZXM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwk
KFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU1JlZ2lvblJ1bGUuaCI+CiAg
ICAgICA8RmlsdGVyPkRlcml2ZWRTb3VyY2VzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBA
IC0xNDg0NSwxMiArMTQ3MDEsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcdGV4bWFwXGNvb3JkaW5hdGVkXENvb3JkaW5hdGVkQmFja2luZ1N0b3JlLmgi
PgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWQ8L0Zp
bHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRm
b3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcdGV4bWFwXGNvb3Jk
aW5hdGVkPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQ29vcmRpbmF0ZWRDdXN0
b21GaWx0ZXJQcm9ncmFtLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0ZXht
YXBcY29vcmRpbmF0ZWQ8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGlu
YXRlZEdyYXBoaWNzTGF5ZXIuaCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXHRl
eG1hcFxjb29yZGluYXRlZDwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGQ2ZjkzMWUu
LjRkZTM4MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKQEAgLTYxMiwxMSArNjEyLDYgQEAKIAkJMTRFODM3OEUwOUY4NUQ0RjAwQjg1
QUU0IC8qIEpTRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDE0RTgzNzhEMDlGODVENEYwMEI4NUFFNCAvKiBKU0V2ZW50LmggKi87IH07CiAJCTE0
RkZFMzFEMEFFMTk2MzMwMDEzNkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50QmFzZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTRGRkUzMUIwQUUxOTYzMzAw
MTM2QkY1IC8qIEhUTUxGcmFtZUVsZW1lbnRCYXNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMTRGRkUzMUUwQUUxOTYzMzAwMTM2QkY1IC8qIEhU
TUxGcmFtZUVsZW1lbnRCYXNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDE0RkZFMzFDMEFFMTk2MzMwMDEzNkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50
QmFzZS5jcHAgKi87IH07Ci0JCTE1MEI5MjM5MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NB
cnJheUZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTUwQjkyMzcxNUYwOERDNDAwRTEwOTg2IC8qIFdlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5jcHAgKi87IH07Ci0JCTE1MEI5MjNBMTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJL
aXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDE1MEI5MjM4MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJh
eUZ1bmN0aW9uVmFsdWUuaCAqLzsgfTsKLQkJMTVCM0ZDMTkxNUZCMjE3ODAwQTgxQkNCIC8qIEN1
c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxNUIzRkMxNzE1RkIyMTc4MDBBODFCQ0IgLyogQ3VzdG9tRmlsdGVy
QXJyYXlQYXJhbWV0ZXIuaCAqLzsgfTsKLQkJMTVCOEI3QzgxNjUyQzUyMjAwMzZFRjU1IC8qIEpT
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxNUI4QjdDNjE2NTJDNTIyMDAzNkVGNTUgLyogSlNXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlLmNwcCAqLzsgfTsKLQkJMTVCOEI3QzkxNjUyQzUyMjAwMzZFRjU1
IC8qIEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTVCOEI3QzcxNjUyQzUyMjAwMzZFRjU1IC8qIEpTV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovOyB9OwogCQkxNUM3NzA4RDEwMEQzQzZCMDA1QkEy
NjcgLyogVmFsaWRpdHlTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTVDNzcwOEExMDBEM0M2QTAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaCAq
LzsgfTsKIAkJMTVDNzcwOTMxMDBEM0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTVDNzcwOTExMDBE
M0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oICovOyB9OwogCQkxNUM3NzA5NDEwMEQz
Q0E4MDA1QkEyNjcgLyogSlNWYWxpZGl0eVN0YXRlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE1Qzc3MDkyMTAwRDNDQTgwMDVCQTI2NyAvKiBKU1Zh
bGlkaXR5U3RhdGUuY3BwICovOyB9OwpAQCAtMTAzMSw3ICsxMDI2LDYgQEAKIAkJMjlBODEyNEIw
RkJCOUNBOTAwNTEwMjkzIC8qIEFYT2JqZWN0Q2FjaGVNYWMubW0gaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyOUE4MTI0NzBGQkI5Q0E5MDA1MTAyOTMgLyog
QVhPYmplY3RDYWNoZU1hYy5tbSAqLzsgfTsKIAkJMjlBQ0IyMTIxNDNFNzEyODAwNkJDQTVGIC8q
IEFjY2Vzc2liaWxpdHlNb2NrT2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAyOUFDQjIxMTE0M0U3MTI4MDA2QkNBNUYgLyogQWNjZXNzaWJpbGl0
eU1vY2tPYmplY3QuaCAqLzsgfTsKIAkJMjlBQ0IyMTQxNDNFNzQ5ODAwNkJDQTVGIC8qIEFjY2Vz
c2liaWxpdHlNb2NrT2JqZWN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDI5QUNCMjEzMTQzRTc0OTgwMDZCQ0E1RiAvKiBBY2Nlc3NpYmlsaXR5TW9j
a09iamVjdC5jcHAgKi87IH07Ci0JCTI5Q0Q2MURFMTQ2RDAyODkwMDY4RTgyQSAvKiBXZWJLaXRD
U1NTaGFkZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTBCNDIxNTcxNDY5NzY5NjAwODdFNjA0IC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmgg
Ki87IH07CiAJCTI5RDdCQ0Y2MTQ0NEFGNTgwMDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3BpbkJ1
dHRvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAy
OUQ3QkNGNTE0NDRBRjU4MDA3MDYxOUMgLyogQWNjZXNzaWJpbGl0eVNwaW5CdXR0b24uY3BwICov
OyB9OwogCQkyOUQ3QkNGQTE0NDRBRjdEMDA3MDYxOUMgLyogQWNjZXNzaWJpbGl0eVNwaW5CdXR0
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI5RDdC
Q0Y5MTQ0NEFGN0QwMDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3BpbkJ1dHRvbi5oICovOyB9Owog
CQkyQjM2NUM4NDE1MjUxMTlFMDA5MUQyN0IgLyogUmVuZGVyU1ZHRWxsaXBzZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkI0MjM1QTAxNTI1MEY2MDAw
REJCQ0Q4IC8qIFJlbmRlclNWR0VsbGlwc2UuaCAqLzsgfTsKQEAgLTExNTIsNyArMTE0Niw2IEBA
CiAJCTMxMkQ2N0IxMTUzNTY5MUYwMDU2M0QwRCAvKiBEaWN0aW9uYXJ5LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxMkQ2N0IwMTUzNTY5MUYwMDU2
M0QwRCAvKiBEaWN0aW9uYXJ5LmNwcCAqLzsgfTsKIAkJMzEzMTNGNjUxNDQzQjM1RjAwNkUyQTkw
IC8qIEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxMzEzRjYzMTQ0M0IzNUUwMDZFMkE5MCAvKiBGaWx0ZXJFZmZl
Y3RSZW5kZXJlci5jcHAgKi87IH07CiAJCTMxMzEzRjY2MTQ0M0IzNUYwMDZFMkE5MCAvKiBGaWx0
ZXJFZmZlY3RSZW5kZXJlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzEzMTNGNjQxNDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRlckVmZmVjdFJlbmRlcmVy
LmggKi87IH07Ci0JCTMxMzhBOUU1MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNoYWRlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEzOEE5RTQxNDc0
NDM0NjAwQjBFRDEyIC8qIFN0eWxlU2hhZGVyLmggKi87IH07CiAJCTMxNDAzNzlCMTI0QkVBN0Yw
MEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0MDM3OTcxMjRCRUE3RjAwQUY0MEU0IC8qIFdlYkNv
cmVNb3Rpb25NYW5hZ2VyLmggKi87IH07CiAJCTMxNDAzNzlDMTI0QkVBN0YwMEFGNDBFNCAvKiBX
ZWJDb3JlTW90aW9uTWFuYWdlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNDAzNzk4MTI0QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFu
YWdlci5tbSAqLzsgfTsKIAkJMzE0MDM3OUQxMjRCRUE3RjAwQUY0MEU0IC8qIERldmljZU9yaWVu
dGF0aW9uQ2xpZW50SU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzMTQwMzc5OTEyNEJFQTdGMDBBRjQwRTQgLyogRGV2aWNlT3JpZW50YXRpb25DbGll
bnRJT1MuaCAqLzsgfTsKQEAgLTE3MTgsNDYgKzE3MTEsMTQgQEAKIAkJNEZGQzAyMkIxNjQzQjcx
MDAwNEUxNjM4IC8qIE5vZGVSYXJlRGF0YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0RkFCNDg2NjE2NDNBNjdFMDBGNzBDMDcgLyogTm9kZVJhcmVE
YXRhLmNwcCAqLzsgfTsKIAkJNEZGQzAyMkQxNjQzQjcyNjAwNEUxNjM4IC8qIEVsZW1lbnRSYXJl
RGF0YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
RkFCNDg2NDE2NDNBNjZEMDBGNzBDMDcgLyogRWxlbWVudFJhcmVEYXRhLmNwcCAqLzsgfTsKIAkJ
NTAxQkFBQTkxMzk1MEUyQzAwRjdBQ0VCIC8qIFdpbmRSdWxlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDFCQUFBODEzOTUwRTJDMDBGN0FDRUIgLyog
V2luZFJ1bGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwotCQk1MDM4QkMwNzE0NzExQ0RCMDA5NUUwRDEgLyogV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzOEJDMDYx
NDcxMUNEQjAwOTVFMEQxIC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmNwcCAqLzsgfTsKLQkJNTAz
OEJFMkYxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2FjaGVkU2hhZGVyLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwMzhCRTJEMTQ3MkFEMjMwMDk1
RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5jcHAgKi87IH07Ci0JCTUwMzhCRTMwMTQ3MkFEMjMw
MDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzOEJFMkUxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2Fj
aGVkU2hhZGVyLmggKi87IH07Ci0JCTUwMzhCRTQwMTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRT
aGFkZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTAzOEJFM0UxNDcyQUQ5ODAwOTVFMEQxIC8qIENhY2hlZFNoYWRlci5jcHAgKi87IH07Ci0JCTUw
MzhCRTQxMTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwMzhCRTNGMTQ3MkFEOTgwMDk1RTBEMSAv
KiBDYWNoZWRTaGFkZXIuaCAqLzsgfTsKLQkJNTAzRDBDQUExNEI1QjA4NzAwRjMyRjU3IC8qIEN1
c3RvbUZpbHRlclByb2dyYW0uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTAzRDBDQTcxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dy
YW0uY3BwICovOyB9OwotCQk1MDNEMENBQTE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmlsdGVy
UmVuZGVyZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTAzRDBDQTcxNEI1QjA4NzAwRjMyRjU4IC8qIEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCAq
LzsgfTsKLQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW0u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwM0QwQ0E4
MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoKTsgfTsgfTsKLQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU4IC8qIEN1
c3RvbUZpbHRlclJlbmRlcmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MDNEMENBODE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmlsdGVyUmVuZGVy
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9OwotCQk1MDNEMENBQzE0
QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzRDBDQTkxNEI1QjA4NzAwRjMy
RjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQk1MDNEMENBRTE0QjVCMEJBMDBGMzJGNTcgLyog
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MDNEMENBRDE0QjVCMEJBMDBGMzJGNTcgLyogU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoKTsgfTsgfTsKIAkJ
NTA0QUFDQ0QxODM0NDU1OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVGaW5kZXIuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA0QUFDQ0IxODM0NDU1
OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVGaW5kZXIuY3BwICovOyB9OwogCQk1MDRBQUNDRTE4
MzQ0NTU5MDBFM0Q5QkMgLyogSW5zcGVjdG9yTm9kZUZpbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA0QUFDQ0MxODM0NDU1OTAwRTNEOUJDIC8q
IEluc3BlY3Rvck5vZGVGaW5kZXIuaCAqLzsgfTsKIAkJNTA4MUUzQzMzQ0U1ODBDMTZFRjhCNDhC
IC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MDgxRTNERjNDRkM4MEMxNkVGOEI0OEIgLyogQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0LmNwcCAqLzsgfTsKIAkJNTA4MUUzRTAzQ0ZGODBDMTZFRjhCNDhCIC8qIENh
Y2hlZFJlc291cmNlUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTA4MUUzRTEzRDAyODBDMTZFRjhCNDhCIC8qIENhY2hlZFJlc291cmNlUmVx
dWVzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTUwOENDQTRGMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGbG93VGhyZWFkLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDhDQ0E0RDEzQ0YxMDZCMDAz
MTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5oICovOyB9OwogCQk1MDhDQ0E1MDEzQ0YxMDZCMDAz
MTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MDhDQ0E0RTEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxv
d1RocmVhZC5jcHAgKi87IH07Ci0JCTUwOTMzMzRGMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTMzMzREMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0LmNwcCAqLzsgfTsKLQkJNTA5MzMzNTAxNjNCMEU0MzAwMDk5QTYwIC8qIEN1c3Rv
bUZpbHRlclBhcmFtZXRlckxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTMzMzRFMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0LmggKi87IH07Ci0JCTUwOTg3QzI2MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21G
aWx0ZXJHbG9iYWxDb250ZXh0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTg3QzI0MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0LmNwcCAqLzsgfTsKLQkJNTA5ODdDMjcxNTdENjc2RDAwQkRBODM1IC8qIEN1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTg3QzI1MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0LmggKi87IH07Ci0JCTUwOUNDOUZCMTRDMDY5RUQwMEJCRUNCRCAvKiBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDUwOUNDOUZBMTRDMDY5RUQwMEJCRUNCRCAvKiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIu
aCAqLzsgfTsKLQkJNTBBQ0UyQ0IxNEI1RDc5MzAwNDQ2NjY2IC8qIEN1c3RvbUZpbHRlck9wZXJh
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBB
Q0UyQ0ExNEI1RDc5MzAwNDQ2NjY2IC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oICovOyB9Owot
CQk1MENDMDg5QTE0QzZFOTlDMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MENDMDg5
OTE0QzZFOTlDMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmggKi87IH07
Ci0JCTUwQ0MwQTM5MTRDNkY1QjEwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBDQzBBMzgx
NEM2RjVCMTAwMTdBQjUxIC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgKi87IH07CiAJCTUw
RDEwRDk5MTU0NUY1NzYwMDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBEMTBEOTcxNTQ1RjU3
NjAwOTZEMjg4IC8qIFJlbmRlckxheWVyRmlsdGVySW5mby5jcHAgKi87IH07CiAJCTUwRDEwRDlB
MTU0NUY1NzYwMDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwRDEwRDk4MTU0NUY1NzYwMDk2RDI4
OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwotCQk1MEQzMjg1NzE2M0IzMTNGMDAxNjExMUUgLyogVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUwRDMyODU1MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRD
dXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwICovOyB9OwotCQk1MEQzMjg1ODE2M0IzMTNGMDAxNjEx
MUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQzMjg1NjE2M0IzMTNGMDAxNjExMUUgLyog
VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggKi87IH07Ci0JCTUwRDQwM0M3MTQ3NjhD
OTQwMEQzMEJCNSAvKiBGRUN1c3RvbUZpbHRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDNDNTE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0
b21GaWx0ZXIuY3BwICovOyB9OwotCQk1MEQ0MDNDODE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0
b21GaWx0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUwRDQwM0M2MTQ3NjhDOTQwMEQzMEJCNSAvKiBGRUN1c3RvbUZpbHRlci5oICovOyB9OwotCQk1
MEQ0MDVGOTE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDVGNzE0N0QzMUYzMDBE
MzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5jcHAgKi87IH07Ci0JCTUwRDQwNUZBMTQ3RDMxRjMw
MEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDVGODE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyTWVzaC5oICovOyB9OwotCQk1MEQ0MDYxMTE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyQ29tcGlsZWRQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwRDQwNjBGMTQ3RDQ5REUwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJDb21w
aWxlZFByb2dyYW0uY3BwICovOyB9OwotCQk1MEQ0MDYxMjE0N0Q0OURFMDBEMzBCQjUgLyogQ3Vz
dG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDYxMDE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVy
Q29tcGlsZWRQcm9ncmFtLmggKi87IH07Ci0JCTUwRDg4Q0I1MTVCREZEQUEwMDE4MDlGNCAvKiBD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MEQ4OENCMzE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVy
UHJvZ3JhbUluZm8uY3BwICovOyB9OwotCQk1MEQ4OENCNjE1QkRGREFBMDAxODA5RjQgLyogQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwRDg4Q0I0MTVCREZEQUEwMDE4MDlGNCAvKiBDdXN0b21GaWx0ZXJQcm9n
cmFtSW5mby5oICovOyB9OwotCQk1MEUxOENEODE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUwRTE4Q0Q1MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW0uY3BwICovOyB9OwotCQk1MEUxOENEOTE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtQ2FjaGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTBFMThDRDYxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbUNhY2hlLmNwcCAqLzsgfTsKLQkJNTBFMThDREExNkY5Mjg1ODAwQzY1NDg2IC8q
IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEUxOENENzE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCAqLzsgfTsKIAkJNTEwMTg0NjkwQjA4NjAyQTAwNEE4
MjVGIC8qIENhY2hlZFBhZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUxMDE4NDY3MEIwODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTEwMTg0NkEwQjA4
NjAyQTAwNEE4MjVGIC8qIENhY2hlZFBhZ2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTEwMTg0NjgwQjA4NjAyQTAwNEE4MjVGIC8qIENhY2hlZFBh
Z2UuY3BwICovOyB9OwogCQk1MTAxOTQ0MDE4MzZEMjA4MDA5MjU1MjMgLyogSURCSW5kZXhXcml0
ZXJMZXZlbERCLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDUxMDE5NDNFMTgzNkQyMDgwMDkyNTUyMyAvKiBJREJJbmRleFdyaXRlckxldmVsREIuY3Bw
ICovOyB9OwpAQCAtMjMzMiw4ICsyMjkzLDYgQEAKIAkJN0NFNkNCRkIxODdGMzcwNzAwRDQ2QkY1
IC8qIEZvcm1hdENvbnZlcnRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0NFNkNCRkExODdGMzcwNzAwRDQ2QkY1IC8qIEZvcm1hdENvbnZlcnRlci5o
ICovOyB9OwogCQk3Q0U2Q0JGRDE4N0YzOTQ5MDBENDZCRjUgLyogRm9ybWF0Q29udmVydGVyLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDRTZDQkZD
MTg3RjM5NDkwMEQ0NkJGNSAvKiBGb3JtYXRDb252ZXJ0ZXIuY3BwICovOyB9OwogCQk3RDc0MUJE
QTE3NzIyNkFBMDA4NTkxNzAgLyogQ1NTVmFsdWVLZXl3b3Jkcy5oIGluIENvcHkgR2VuZXJhdGVk
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjU2NTgxNDgwOUQx
MzA0MzAwMEU2MUQ3IC8qIENTU1ZhbHVlS2V5d29yZHMuaCAqLzsgfTsKLQkJN0UxMkU5MEYxNUZB
NUQzQTAwNUU0MTI2IC8qIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMTJFOTBEMTVGQTVEM0EwMDVFNDEy
NiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggKi87IH07Ci0JCTdFMTJFOTEwMTVGQTVE
M0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMTJFOTBFMTVGQTVEM0EwMDVFNDEy
NiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCAqLzsgfTsKIAkJN0UzM0NEMDExMjdG
MzQwRDAwQkU4RjE3IC8qIFB1cmdlUHJpb3JpdHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMzNDRDAwMTI3RjM0MEQwMEJFOEYxNyAvKiBQdXJnZVBy
aW9yaXR5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJN0UzN0VGMkUxMzM5MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0UzN0VGMkQxMzM5
MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3BwICovOyB9OwogCQk3RTQyOENF
NTEzRTM0MDdGMDAzQjY2MUMgLyogUmVzb3VyY2VIYW5kbGVJT1MubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RTQyOENFNDEzRTM0MDdGMDAzQjY2MUMg
LyogUmVzb3VyY2VIYW5kbGVJT1MubW0gKi87IH07CkBAIC0zNjI5LDE5ICszNTg4LDcgQEAKIAkJ
QTFFMTE1NDQxMzAxNUMzRDAwNTRBQzhDIC8qIERpc3RhbnRMaWdodFNvdXJjZS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUUxMTU0MzEzMDE1QzNE
MDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNlLmNwcCAqLzsgfTsKIAkJQTFFMTE1NDYxMzAx
NUM0RTAwNTRBQzhDIC8qIFBvaW50TGlnaHRTb3VyY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFFMTE1NDUxMzAxNUM0RTAwNTRBQzhDIC8qIFBv
aW50TGlnaHRTb3VyY2UuY3BwICovOyB9OwogCQlBMUUxMTU0ODEzMDE1QzVEMDA1NEFDOEMgLyog
U3BvdExpZ2h0U291cmNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExRTExNTQ3MTMwMTVDNUQwMDU0QUM4QyAvKiBTcG90TGlnaHRTb3VyY2UuY3Bw
ICovOyB9OwotCQlBMjRCRjc3QjE1Q0MzQkFGMDAzMTkxRjIgLyogV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTI0QkY3NzkxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCAq
LzsgfTsKLQkJQTI0QkY3N0MxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTI0QkY3N0ExNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3Bw
ICovOyB9OwotCQlBMjk1MzJDRjE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRh
dGVkUHJvZ3JhbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBMjk1MzJDRDE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJv
Z3JhbS5jcHAgKi87IH07Ci0JCUEyOTUzMkQwMTVERDVFMTcwMDQ2OUVCQyAvKiBDdXN0b21GaWx0
ZXJWYWxpZGF0ZWRQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBMjk1MzJDRTE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRh
dGVkUHJvZ3JhbS5oICovOyB9OwotCQlBMkIyQUU3QzE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9t
RmlsdGVyQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBMkIyQUU3QjE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmggKi87IH07CiAJCUEyQjkyMTczMTZDNUNDNDIwMDQxRENEOSAvKiBJbnRSZWN0RXh0ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMkI5MjE3MjE2
QzVDQzQyMDA0MURDRDkgLyogSW50UmVjdEV4dGVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCUEyRThBRTMwMTZBNDhFMUMwMDZCQjNBQSAvKiBX
ZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEEyRThBRTJFMTZBNDhFMUMwMDZCQjNBQSAvKiBXZWJLaXRDU1NGaWx0ZXJS
dWxlLmNwcCAqLzsgfTsKLQkJQTJFOEFFMzExNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENTU0Zp
bHRlclJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEEyRThBRTJGMTZBNDhFMUMwMDZCQjNBQSAvKiBXZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi87IH07
Ci0JCUEyRThBRTM3MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTJFOEFFMzUx
NkE0OTg0MDAwNkJCM0FBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgKi87IH07Ci0JCUEy
RThBRTM4MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTM2MTZBNDk4NDAw
MDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAqLzsgfTsKLQkJQTJFOEFFNDAxNkE0
OThDRjAwNkJCM0FBIC8qIERPTVdlYktpdENTU0ZpbHRlclJ1bGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTNEMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi87IH07Ci0JCUEyRThBRTQxMTZBNDk4Q0YwMDZC
QjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTJFOEFFM0UxNkE0OThDRjAwNkJCM0FBIC8qIERPTVdl
YktpdENTU0ZpbHRlclJ1bGUubW0gKi87IH07Ci0JCUEyRThBRTQyMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTNGMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01X
ZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwuaCAqLzsgfTsKIAkJQTMxQzRFNEQxNkUwMkFBNjAw
MkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTMxQzRFNEMxNkUwMkFBNjAwMkY3OTU3IC8qIE9FU1Rl
eHR1cmVIYWxmRmxvYXQuY3BwICovOyB9OwogCQlBMzFDNEU0RjE2RTAyQUI0MDAyRjc5NTcgLyog
T0VTVGV4dHVyZUhhbGZGbG9hdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQTMxQzRFNEUxNkUwMkFCNDAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxv
YXQuaCAqLzsgfTsKIAkJQTMxQzRFNTIxNkUwMkIwODAwMkY3OTU3IC8qIEpTT0VTVGV4dHVyZUhh
bGZGbG9hdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMzFDNEU1MTE2RTAyQjA4MDAyRjc5NTcgLyogSlNPRVNUZXh0dXJlSGFsZkZsb2F0LmNwcCAq
LzsgfTsKQEAgLTYyMTIsOCArNjE1OSw2IEBACiAJCUZCNDg0RjRDMTcxRjgyMUUwMDA0MDc1NSAv
KiBUcmFuc2Zvcm1GdW5jdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRkI0ODRGNEExNzFGODIxRTAwMDQwNzU1IC8qIFRyYW5zZm9ybUZ1bmN0
aW9ucy5jcHAgKi87IH07CiAJCUZCNDg0RjREMTcxRjgyMUUwMDA0MDc1NSAvKiBUcmFuc2Zvcm1G
dW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEZCNDg0RjRCMTcxRjgyMUUwMDA0MDc1NSAvKiBUcmFuc2Zvcm1GdW5jdGlvbnMuaCAqLzsgfTsK
IAkJRkI0OUMzOUQxNjc4NDk0NzAwN0ZGQjVEIC8qIENTU0hvc3RSdWxlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQjQ5QzM5QzE2Nzg0OTQ3MDA3RkZC
NUQgLyogQ1NTSG9zdFJ1bGUuaCAqLzsgfTsKLQkJRkI3MTlDM0YxNzIzOENBODAwMjJERTM0IC8q
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZCMEI3NUVGMTcyMzQyODUwMEYwNUQyQSAvKiBXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmggKi87IH07Ci0JCUZCNzE5QzQwMTcyMzhDQUUwMDIyREUzNCAvKiBX
ZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZCMEI3NUVFMTcyMzQyODUwMEYwNUQyQSAvKiBXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmNwcCAqLzsgfTsKIAkJRkI3OEFEMkUxNTFCRjVFNjAwRkU1NEQzIC8q
IENTU1BhcnNlck1vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEZCNzhBRDJDMTUxQkY1RDIwMEZFNTREMyAvKiBDU1NQYXJzZXJNb2RlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRkI5MTM5MjQxNkFF
NEMxNzAwMUZFNjgyIC8qIERPTVBhdGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEZCOTEzOTIwMTZBRTRCMEIwMDFGRTY4MiAvKiBET01QYXRoLmggKi87
IH07CiAJCUZCOTEzOTI2MTZBRTRDMkYwMDFGRTY4MiAvKiBDYW52YXNQYXRoTWV0aG9kcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkI5MTM5MUYxNkFF
NEIwQjAwMUZFNjgyIC8qIENhbnZhc1BhdGhNZXRob2RzLmggKi87IH07CkBAIC03NDMxLDExICs3
Mzc2LDYgQEAKIAkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZlbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMTRGRkUzMUIwQUUxOTYzMzAwMTM2QkY1IC8qIEhUTUxGcmFtZUVsZW1lbnRC
YXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxGcmFtZUVsZW1lbnRC
YXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0RkZFMzFDMEFFMTk2MzMwMDEz
NkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50QmFzZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBIVE1MRnJhbWVFbGVtZW50QmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCTE1MEI5MjM3MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2Vi
S2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJMTUwQjkyMzgxNUYwOERDNDAwRTEwOTg2IC8qIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJLaXRDU1NBcnJheUZ1bmN0
aW9uVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMTVCM0ZDMTcxNUZCMjE3
ODAwQTgxQkNCIC8qIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmg7IHBhdGggPSBm
aWx0ZXJzL0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTE1QjhCN0M2MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0
aW9uVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJ
MTVCOEI3QzcxNjUyQzUyMjAwMzZFRjU1IC8qIEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMTVDNzcwODkxMDBEM0M2QTAw
NUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFZhbGlk
aXR5U3RhdGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNUM3NzA4QTEwMEQz
QzZBMDA1QkEyNjcgLyogVmFsaWRpdHlTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBWYWxpZGl0eVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE1
Qzc3MDkxMTAwRDNDQTgwMDVCQTI2NyAvKiBKU1ZhbGlkaXR5U3RhdGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNWYWxpZGl0eVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC04MDIzLDcgKzc5NjMsNiBAQAogCQkzMTJENjdCMDE1MzU2OTFGMDA1NjNE
MEQgLyogRGljdGlvbmFyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBEaWN0aW9uYXJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMTNGNjMx
NDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMTNGNjQxNDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRl
ckVmZmVjdFJlbmRlcmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbHRl
ckVmZmVjdFJlbmRlcmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTMxMzhBOUU0
MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNoYWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBTdHlsZVNoYWRlci5oOyBwYXRoID0gc3R5bGUvU3R5bGVTaGFkZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0MDM3OTcxMjRCRUE3RjAwQUY0MEU0IC8qIFdl
YkNvcmVNb3Rpb25NYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFdl
YkNvcmVNb3Rpb25NYW5hZ2VyLmg7IHBhdGggPSBpb3MvV2ViQ29yZU1vdGlvbk1hbmFnZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0MDM3OTgxMjRCRUE3RjAwQUY0MEU0IC8q
IFdlYkNvcmVNb3Rpb25NYW5hZ2VyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBuYW1lID0gV2ViQ29yZU1vdGlvbk1hbmFnZXIubW07IHBhdGggPSBpb3MvV2ViQ29yZU1vdGlv
bk1hbmFnZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxNDAzNzk5MTI0QkVB
N0YwMEFGNDBFNCAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oOyBwYXRoID0g
aW9zL0RldmljZU9yaWVudGF0aW9uQ2xpZW50SU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC04NjYyLDQ4ICs4NjAxLDE0IEBACiAJCTRGQUI0ODY2MTY0M0E2N0UwMEY3MEMwNyAv
KiBOb2RlUmFyZURhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Tm9kZVJhcmVEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNEZCMzkwQUMx
NUVGNjFGMzAwN0FENTFGIC8qIEdlbmVyYXRlZEltYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEdlbmVyYXRlZEltYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNTAxQkFBQTgxMzk1MEUyQzAwRjdBQ0VCIC8qIFdpbmRSdWxlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdpbmRSdWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCTUwMzhCQzA2MTQ3MTFDREIwMDk1RTBEMSAvKiBXZWJLaXRDU1NTaGFkZXJW
YWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJLaXRDU1NT
aGFkZXJWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwMzhCRTJEMTQ3
MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBTdHlsZUNhY2hlZFNoYWRlci5jcHA7IHBhdGggPSBzdHlsZS9T
dHlsZUNhY2hlZFNoYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwMzhC
RTJFMTQ3MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBTdHlsZUNhY2hlZFNoYWRlci5oOyBwYXRoID0gc3R5bGUvU3R5
bGVDYWNoZWRTaGFkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzOEJFM0Ux
NDcyQUQ5ODAwOTVFMEQxIC8qIENhY2hlZFNoYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRTaGFkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQk1MDM4QkUzRjE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZFNoYWRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwotCQk1MDNEMENBNzE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21G
aWx0ZXJQcm9ncmFtLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwM0QwQ0E3MTRCNUIwODcwMEYzMkY1OCAv
KiBDdXN0b21GaWx0ZXJSZW5kZXJlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBDdXN0b21GaWx0ZXJSZW5kZXJlci5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZp
bHRlclJlbmRlcmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzRDBDQTgx
NEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW0uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oOyBwYXRoID0gZmlsdGVycy9D
dXN0b21GaWx0ZXJQcm9ncmFtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwM0Qw
Q0E4MTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0b21GaWx0ZXJSZW5kZXJlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJSZW5kZXJlci5oOyBwYXRoID0gZmls
dGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk1MDNEMENBOTE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xp
ZW50Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzRDBDQUQxNEI1QjBCQTAwRjMyRjU3IC8qIFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaDsgcGF0aCA9IHN0eWxlL1N0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MDRBQUNDQjE4MzQ0NTU5
MDBFM0Q5QkMgLyogSW5zcGVjdG9yTm9kZUZpbmRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0b3JOb2RlRmluZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNTA0QUFDQ0MxODM0NDU1OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVG
aW5kZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yTm9kZUZp
bmRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MDgxRTNERjNDRkM4MEMxNkVG
OEI0OEIgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk1MDgxRTNFMTNEMDI4MEMxNkVGOEI0OEIgLyogQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRSZXNv
dXJjZVJlcXVlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTA4Q0NBNEQxM0NG
MTA2QjAwMzE1MUYzIC8qIFJlbmRlckZsb3dUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUmVuZGVyRmxvd1RocmVhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1MDhDQ0E0RTEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJGbG93VGhyZWFkLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5MzMzNEQxNjNCMEU0MzAwMDk5QTYwIC8q
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHA7IHBhdGggPSBmaWx0ZXJz
L0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQk1MDkzMzM0RTE2M0IwRTQzMDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlz
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXJMaXN0Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5ODdDMjQxNTdENjc2RDAwQkRBODM1IC8qIEN1
c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1
c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk1MDk4N0MyNTE1N0Q2NzZEMDBCREE4MzUgLyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJHbG9iYWxDb250
ZXh0Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5Q0M5RkExNEMwNjlFRDAwQkJFQ0JEIC8qIEN1c3Rv
bUZpbHRlclBhcmFtZXRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0
b21GaWx0ZXJQYXJhbWV0ZXIuaDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwOUVDMTA4MTVFODQ4Q0EwMEU4MjU4
MSAvKiBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmg7IHBhdGggPSBm
aWx0ZXJzL0N1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk1MEFDRTJDQTE0QjVENzkzMDA0NDY2NjYgLyogQ3VzdG9tRmlsdGVyT3Bl
cmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBCNDIxNTcxNDY5NzY5NjAwODdFNjA0IC8qIFdlYktp
dENTU1NoYWRlclZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYktp
dENTU1NoYWRlclZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwQ0MwODk5
MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmg7
IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQk1MENDMEEzODE0QzZGNUIxMDAxN0FCNTEgLyogQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEN1
c3RvbUZpbHRlck9wZXJhdGlvbi5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJh
dGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUwRDEwRDk3MTU0NUY1NzYw
MDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNTBEMTBEOTgxNTQ1RjU3NjAwOTZEMjg4IC8qIFJlbmRlckxheWVy
RmlsdGVySW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJMYXll
ckZpbHRlckluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBEMzI4NTUxNjNC
MzEzRjAwMTYxMTFFIC8qIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24uY3BwOyBwYXRoID0gZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24u
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQzMjg1NjE2M0IzMTNGMDAxNjEx
MUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgbmFtZSA9IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oOyBwYXRoID0g
ZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJNTBENDAzQzUxNDc2OEM5NDAwRDMwQkI1IC8qIEZFQ3VzdG9tRmlsdGVy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEZFQ3VzdG9tRmlsdGVy
LmNwcDsgcGF0aCA9IGZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk1MEQ0MDNDNjE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0b21GaWx0ZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRkVDdXN0b21GaWx0ZXIuaDsgcGF0
aCA9IGZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJNTBENDA1RjcxNDdEMzFGMzAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlck1lc2guY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ3VzdG9tRmlsdGVyTWVzaC5jcHA7IHBh
dGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQk1MEQ0MDVGODE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJNZXNoLmg7IHBhdGgg
PSBmaWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJNTBENDA2MEYxNDdENDlERTAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21GaWx0ZXJD
b21waWxlZFByb2dyYW0uY3BwOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFBy
b2dyYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQ0MDYxMDE0N0Q0OURF
MDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oOyBwYXRoID0g
ZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKLQkJNTBEODhDQjMxNUJERkRBQTAwMTgwOUY0IC8qIEN1c3RvbUZpbHRlclByb2dy
YW1JbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEN1c3RvbUZp
bHRlclByb2dyYW1JbmZvLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQ4OENCNDE1QkRGREFBMDAx
ODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaDsgcGF0aCA9IGZpbHRlcnMvQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBF
MThDRDUxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBTdHlsZUN1c3RvbUZpbHRlclByb2dy
YW0uY3BwOyBwYXRoID0gc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBFMThDRDYxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcDsgcGF0aCA9IHN0eWxl
L1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKLQkJNTBFMThDRDcxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJv
Z3JhbUNhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFN0eWxlQ3VzdG9t
RmlsdGVyUHJvZ3JhbUNhY2hlLmg7IHBhdGggPSBzdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dy
YW1DYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MTAxODQ2NzBCMDg2MDJB
MDA0QTgyNUYgLyogQ2FjaGVkUGFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDYWNoZWRQYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUxMDE4NDY4MEIw
ODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENhY2hlZFBhZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk1MTAxOTQzRTE4MzZEMjA4MDA5MjU1MjMgLyogSURCSW5kZXhXcml0ZXJMZXZlbERCLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElEQkluZGV4V3JpdGVyTGV2ZWxE
Qi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC05MzM3LDggKzkyNDIsNiBAQAog
CQk3Q0M3RTNENjE3MjA4QzBGMDAzQzUyNzcgLyogSUROU2NyaXB0V2hpdGVMaXN0LnR4dCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBJRE5TY3JpcHRXaGl0ZUxpc3QudHh0OyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk3Q0U2Q0JGQTE4N0YzNzA3MDBENDZCRjUgLyogRm9ybWF0Q29udmVy
dGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvcm1hdENvbnZlcnRlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3Q0U2Q0JGQzE4N0YzOTQ5MDBENDZCRjUg
LyogRm9ybWF0Q29udmVydGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEZvcm1hdENvbnZlcnRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdF
MTJFOTBEMTVGQTVEM0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3Iu
aDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQk3RTEyRTkwRTE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmls
dGVyTWVzaEdlbmVyYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmls
dGVyTWVzaEdlbmVyYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdFMzND
RDAwMTI3RjM0MEQwMEJFOEYxNyAvKiBQdXJnZVByaW9yaXR5LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFB1cmdlUHJpb3JpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJN0UzN0VGMkQxMzM5MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gU3VicmVzb3VyY2VMb2FkZXJD
Ri5jcHA7IHBhdGggPSBjZi9TdWJyZXNvdXJjZUxvYWRlckNGLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJN0U0MjhDRTQxM0UzNDA3RjAwM0I2NjFDIC8qIFJlc291cmNlSGFuZGxl
SU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUmVzb3VyY2VI
YW5kbGVJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMDY1MCwxOSArMTA1
NTMsNyBAQAogCQlBMUUxMTU0MzEzMDE1QzNEMDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IERpc3RhbnRMaWdodFNv
dXJjZS5jcHA7IHBhdGggPSBmaWx0ZXJzL0Rpc3RhbnRMaWdodFNvdXJjZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExRTExNTQ1MTMwMTVDNEUwMDU0QUM4QyAvKiBQb2ludExp
Z2h0U291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFBvaW50
TGlnaHRTb3VyY2UuY3BwOyBwYXRoID0gZmlsdGVycy9Qb2ludExpZ2h0U291cmNlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTFFMTE1NDcxMzAxNUM1RDAwNTRBQzhDIC8qIFNw
b3RMaWdodFNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBT
cG90TGlnaHRTb3VyY2UuY3BwOyBwYXRoID0gZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMjRCRjc3OTE1Q0MzQkFGMDAzMTkxRjIgLyog
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCUEyNEJGNzdBMTVDQzNCQUYwMDMxOTFGMiAvKiBXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMjk1MzJD
RDE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUEyOTUzMkNFMTVERDVFMTcwMDQ2OUVC
QyAvKiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaDsgcGF0aCA9IGZpbHRl
cnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQlBMkIyQUU3QjE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckNvbnN0YW50
cy5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb25zdGFudHMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQTJCOTIxNzIxNkM1Q0M0MjAwNDFEQ0Q5IC8qIEludFJlY3RFeHRl
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW50UmVjdEV4dGVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUyRTE2QTQ4RTFDMDA2QkIzQUEgLyog
V2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBXZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJQTJFOEFFMkYxNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENTU0ZpbHRlclJ1bGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUzNTE2QTQ5ODQwMDA2QkIzQUEgLyogSlNX
ZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCUEyRThBRTM2MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUEyRThBRTNEMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IERPTVdlYktpdENTU0ZpbHRlclJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJQTJFOEFFM0UxNkE0OThDRjAwNkJCM0FBIC8qIERPTVdlYktpdENTU0ZpbHRlclJ1bGUubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBET01XZWJLaXRDU1NGaWx0
ZXJSdWxlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUzRjE2QTQ5OENG
MDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZUludGVybmFsLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVdlYktpdENTU0ZpbHRlclJ1bGVJbnRlcm5hbC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMzFDNEU0QzE2RTAyQUE2MDAyRjc5NTcgLyog
T0VTVGV4dHVyZUhhbGZGbG9hdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBPRVNUZXh0dXJlSGFsZkZsb2F0LmNwcDsgcGF0aCA9IGNhbnZhcy9PRVNUZXh0dXJlSGFs
ZkZsb2F0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTMxQzRFNEUxNkUwMkFC
NDAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gT0VTVGV4dHVyZUhhbGZGbG9hdC5oOyBwYXRoID0gY2FudmFzL09FU1RleHR1
cmVIYWxmRmxvYXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTMxQzRFNTAxNkUw
MkFDNTAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IE9FU1RleHR1cmVI
YWxmRmxvYXQuaWRsOyBwYXRoID0gY2FudmFzL09FU1RleHR1cmVIYWxmRmxvYXQuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTM2MDIsOSArMTM0OTMsNiBAQAogCQlGQUJFNzJG
MzEwNTlDMUVCMDBEOTk5REQgLyogbWF0aHRhZ3MuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
bWF0aHRhZ3MuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUZBQkU3MkZCMTA1OUMy
MTEwMEQ5OTlERCAvKiBNYXRoTUxFbGVtZW50RmFjdG9yeS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBNYXRoTUxFbGVtZW50RmFjdG9yeS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUZBQkU3MkZDMTA1OUMyMTEwMEQ5OTlERCAvKiBNYXRoTUxOYW1l
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNYXRoTUxOYW1lcy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUZCMEI3NUVFMTcyMzQyODUwMEYwNUQy
QSAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQlGQjBCNzVFRjE3MjM0Mjg1MDBGMDVEMkEgLyogV2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJL
aXRDU1NNYXRGdW5jdGlvblZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUZC
MUE2NkQ5MTcyMjVBNjYwMEJBQTdBRiAvKiBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
ci5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlGQjJDMTVDMjE2NUQ2NDkwMDAzOUM5RjggLyogQ2FjaGVk
U1ZHRG9jdW1lbnRSZWZlcmVuY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
Q2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRkIzMDU2QzExNjlFNURBQzAwOTZBMjMyIC8qIENTU0dyb3VwaW5nUnVsZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NHcm91cGluZ1J1bGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJRkI0ODRGNEExNzFGODIxRTAwMDQwNzU1IC8qIFRyYW5zZm9ybUZ1
bmN0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUcmFuc2Zv
cm1GdW5jdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY1MjgsOSAr
MTY0MTYsNiBAQAogCQkJCTg1OEMzOEE0MEFBOEYyMDQwMEIxODdBNCAvKiBET01SZWN0Lm1tICov
LAogCQkJCTg1NUQzNTg5MEFENzA3MzEwMDE5QUFDNyAvKiBET01SR0JDb2xvci5oICovLAogCQkJ
CUJDQUVGQ0FEMTAxNkNFNEEwMDQwRDM0RSAvKiBET01SR0JDb2xvci5tbSAqLywKLQkJCQlBMkU4
QUUzRDE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5oICovLAotCQkJ
CUEyRThBRTNFMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLm1tICov
LAotCQkJCUEyRThBRTNGMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxl
SW50ZXJuYWwuaCAqLywKIAkJCQkzMTA2MDM3NjE0MzI4MUNEMDBBQkY0QkEgLyogRE9NV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuaCAqLywKIAkJCQkzMTA2MDM3NzE0MzI4MUNEMDBBQkY0QkEgLyogRE9N
V2ViS2l0Q1NTRmlsdGVyVmFsdWUubW0gKi8sCiAJCQkJMzEwNjAzNzgxNDMyODFDRDAwQUJGNEJB
IC8qIERPTVdlYktpdENTU0ZpbHRlclZhbHVlSW50ZXJuYWwuaCAqLywKQEAgLTE4MTAyLDMzICsx
Nzk4Nyw2IEBACiAJCUE3NUU4QjdGMEUxREUyQjAwMDdGMjQ4MSAvKiBmaWx0ZXJzICovID0gewog
CQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQkxNUIzRkMxNzE1RkIyMTc4
MDBBODFCQ0IgLyogQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCAqLywKLQkJCQlGQjFBNjZE
OTE3MjI1QTY2MDBCQUE3QUYgLyogQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaCAqLywKLQkJ
CQk1MEQ0MDYwRjE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
LmNwcCAqLywKLQkJCQk1MEQ0MDYxMDE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtLmggKi8sCi0JCQkJQTJCMkFFN0IxNjM3NUVFNTAwQ0ZBNTBCIC8qIEN1c3Rv
bUZpbHRlckNvbnN0YW50cy5oICovLAotCQkJCTUwOTg3QzI0MTU3RDY3NkQwMEJEQTgzNSAvKiBD
dXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcCAqLywKLQkJCQk1MDk4N0MyNTE1N0Q2NzZEMDBC
REE4MzUgLyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oICovLAotCQkJCTUwRDQwNUY3MTQ3
RDMxRjMwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmNwcCAqLywKLQkJCQk1MEQ0MDVGODE0
N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5oICovLAotCQkJCTdFMTJFOTBFMTVG
QTVEM0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCAqLywKLQkJCQk3
RTEyRTkwRDE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oICov
LAotCQkJCTUwQ0MwODk5MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJh
bWV0ZXIuaCAqLywKLQkJCQk1MENDMEEzODE0QzZGNUIxMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmNwcCAqLywKLQkJCQk1MEFDRTJDQTE0QjVENzkzMDA0NDY2NjYgLyogQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uLmggKi8sCi0JCQkJNTA5Q0M5RkExNEMwNjlFRDAwQkJFQ0JEIC8qIEN1
c3RvbUZpbHRlclBhcmFtZXRlci5oICovLAotCQkJCTUwOTMzMzREMTYzQjBFNDMwMDA5OUE2MCAv
KiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCAqLywKLQkJCQk1MDkzMzM0RTE2M0IwRTQz
MDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oICovLAotCQkJCTUwM0QwQ0E3
MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCAqLywKLQkJCQk1MDNE
MENBODE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oICovLAotCQkJCTUw
M0QwQ0E5MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggKi8s
Ci0JCQkJNTBEODhDQjMxNUJERkRBQTAwMTgwOUY0IC8qIEN1c3RvbUZpbHRlclByb2dyYW1JbmZv
LmNwcCAqLywKLQkJCQk1MEQ4OENCNDE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8uaCAqLywKLQkJCQk1MDNEMENBNzE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmls
dGVyUmVuZGVyZXIuY3BwICovLAotCQkJCTUwM0QwQ0E4MTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0
b21GaWx0ZXJSZW5kZXJlci5oICovLAotCQkJCTUwOUVDMTA4MTVFODQ4Q0EwMEU4MjU4MSAvKiBD
dXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCAqLywKLQkJCQlBMjk1MzJDRDE1REQ1RTE3
MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAgKi8sCi0JCQkJQTI5
NTMyQ0UxNURENUUxNzAwNDY5RUJDIC8qIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCAq
LywKIAkJCQlBMUUxMTU0MzEzMDE1QzNEMDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNlLmNw
cCAqLywKIAkJCQk4NDczMEQ1QTEyNDhGMEIzMDBEM0E5QzkgLyogRGlzdGFudExpZ2h0U291cmNl
LmggKi8sCiAJCQkJQTc1RThCODAwRTFERTJENjAwN0YyNDgxIC8qIEZFQmxlbmQuY3BwICovLApA
QCAtMTgxNDEsOCArMTc5OTksNiBAQAogCQkJCUE3NUU4Qjg3MEUxREUyRDYwMDdGMjQ4MSAvKiBG
RUNvbXBvc2l0ZS5oICovLAogCQkJCTg0NzMwRDVCMTI0OEYwQjMwMEQzQTlDOSAvKiBGRUNvbnZv
bHZlTWF0cml4LmNwcCAqLywKIAkJCQk4NDczMEQ1QzEyNDhGMEIzMDBEM0E5QzkgLyogRkVDb252
b2x2ZU1hdHJpeC5oICovLAotCQkJCTUwRDQwM0M1MTQ3NjhDOTQwMEQzMEJCNSAvKiBGRUN1c3Rv
bUZpbHRlci5jcHAgKi8sCi0JCQkJNTBENDAzQzYxNDc2OEM5NDAwRDMwQkI1IC8qIEZFQ3VzdG9t
RmlsdGVyLmggKi8sCiAJCQkJODQ3MzBENUQxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFRGlmZnVzZUxp
Z2h0aW5nLmNwcCAqLywKIAkJCQk4NDczMEQ1RTEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaWZmdXNl
TGlnaHRpbmcuaCAqLywKIAkJCQk4NDczMEQ1RjEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaXNwbGFj
ZW1lbnRNYXAuY3BwICovLApAQCAtMTgxODMsOCArMTgwMzksNiBAQAogCQkJCTg0QTgxRjQwMEZD
N0UwMjcwMDk1NTMwMCAvKiBTb3VyY2VHcmFwaGljLmggKi8sCiAJCQkJQTFFMTE1NDcxMzAxNUM1
RDAwNTRBQzhDIC8qIFNwb3RMaWdodFNvdXJjZS5jcHAgKi8sCiAJCQkJODQ3MzBENzYxMjQ4RjBC
MzAwRDNBOUM5IC8qIFNwb3RMaWdodFNvdXJjZS5oICovLAotCQkJCTUwRDMyODU1MTYzQjMxM0Yw
MDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwICovLAotCQkJCTUw
RDMyODU2MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24u
aCAqLywKIAkJCSk7CiAJCQluYW1lID0gZmlsdGVyczsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CkBAIC0xODgyNyw4ICsxODY4MSw2IEBACiAJCQkJQkNFMDEzOTkwQzBCRUYxODAwNDM4NjBB
IC8qIEpTU3R5bGVTaGVldC5oICovLAogCQkJCUE4NEVCRDgyMENCOEM5NzcwMDA3OTYwOSAvKiBK
U1N0eWxlU2hlZXRMaXN0LmNwcCAqLywKIAkJCQlBODRFQkQ4MTBDQjhDOTc3MDAwNzk2MDkgLyog
SlNTdHlsZVNoZWV0TGlzdC5oICovLAotCQkJCUEyRThBRTM1MTZBNDk4NDAwMDZCQjNBQSAvKiBK
U1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwICovLAotCQkJCUEyRThBRTM2MTZBNDk4NDAwMDZCQjNB
QSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAqLywKIAkJCQkzMTA2MDM3MjE0MzI4MTlDMDBB
QkY0QkEgLyogSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAgKi8sCiAJCQkJMzEwNjAzNzMxNDMy
ODE5QzAwQUJGNEJBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCAqLywKIAkJCQkzMTZGRTA2
RDBFNkNDQkVFMDBCRjYwODggLyogSlNXZWJLaXRDU1NLZXlmcmFtZVJ1bGUuY3BwICovLApAQCAt
MTg4MzcsOCArMTg2ODksNiBAQAogCQkJCTMxNkZFMDcwMEU2Q0NCRUUwMEJGNjA4OCAvKiBKU1dl
YktpdENTU0tleWZyYW1lc1J1bGUuaCAqLywKIAkJCQk0OTgzOTEzRDBGMUU3Njc1MDBDMjM3ODIg
LyogSlNXZWJLaXRDU1NNYXRyaXguY3BwICovLAogCQkJCTQ5ODM5MTNFMEYxRTc2NzUwMEMyMzc4
MiAvKiBKU1dlYktpdENTU01hdHJpeC5oICovLAotCQkJCTE1QjhCN0M2MTY1MkM1MjIwMDM2RUY1
NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwICovLAotCQkJCTE1QjhCN0M3MTY1
MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCAqLywKIAkJCQk4
QUNDMjRDRDE0OEUyNEIyMDBFRkNDMEQgLyogSlNXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCAqLywK
IAkJCQk4QUNDMjRDRTE0OEUyNEIyMDBFRkNDMEQgLyogSlNXZWJLaXRDU1NSZWdpb25SdWxlLmgg
Ki8sCiAJCQkJMzE2MTFFNTgwRTFDNERFMDAwRjZBNTc5IC8qIEpTV2ViS2l0Q1NTVHJhbnNmb3Jt
VmFsdWUuY3BwICovLApAQCAtMTkxMDgsOCArMTg5NTgsNiBAQAogCQkJCTZDNjM4ODkzQTk2Q0NF
RTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmggKi8sCiAJCQkJ
QkNCMTZDMEEwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFNjcmlwdC5jcHAgKi8sCiAJCQkJQkNC
MTZDMEIwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFNjcmlwdC5oICovLAotCQkJCTUwMzhCRTNF
MTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuY3BwICovLAotCQkJCTUwMzhCRTNGMTQ3
MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuaCAqLywKIAkJCQlEMEJDNTQ0ODE0NDNBQzRB
MDBFMTA1REEgLyogQ2FjaGVkU3R5bGVTaGVldENsaWVudC5oICovLAogCQkJCUExMDRGMjQxMTRD
NzFGN0EwMDlFMkMyMyAvKiBDYWNoZWRTVkdEb2N1bWVudC5jcHAgKi8sCiAJCQkJQTEwNEYyNDIx
NEM3MUY3QTAwOUUyQzIzIC8qIENhY2hlZFNWR0RvY3VtZW50LmggKi8sCkBAIC0yMDU3OSwxMiAr
MjA0MjcsNiBAQAogCQkJCUJDRUY0NDRDMEU2NzQ2MjgwMDFDMTI4NyAvKiBTdHlsZUNhY2hlZElt
YWdlLmggKi8sCiAJCQkJOTM5M0U2MDIxNTFBOUExODAwMDY2RjA2IC8qIFN0eWxlQ2FjaGVkSW1h
Z2VTZXQuY3BwICovLAogCQkJCTkzOTNFNjAzMTUxQTlBMTgwMDA2NkYwNiAvKiBTdHlsZUNhY2hl
ZEltYWdlU2V0LmggKi8sCi0JCQkJNTAzOEJFMkQxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2Fj
aGVkU2hhZGVyLmNwcCAqLywKLQkJCQk1MDM4QkUyRTE0NzJBRDIzMDA5NUUwRDEgLyogU3R5bGVD
YWNoZWRTaGFkZXIuaCAqLywKLQkJCQk1MEUxOENENTE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtLmNwcCAqLywKLQkJCQk1MDNEMENBRDE0QjVCMEJBMDBGMzJGNTcg
LyogU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmggKi8sCi0JCQkJNTBFMThDRDYxNkY5Mjg1ODAw
QzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCAqLywKLQkJCQk1MEUx
OENENzE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCAq
LywKIAkJCQlCQzVFQjY3RTBFODFENEE3MDBCMjU5NjUgLyogU3R5bGVEYXNoYm9hcmRSZWdpb24u
aCAqLywKIAkJCQlCQzVFQjhCNjBFODIwMUJEMDBCMjU5NjUgLyogU3R5bGVEZXByZWNhdGVkRmxl
eGlibGVCb3hEYXRhLmNwcCAqLywKIAkJCQlCQzVFQjhCNzBFODIwMUJEMDBCMjU5NjUgLyogU3R5
bGVEZXByZWNhdGVkRmxleGlibGVCb3hEYXRhLmggKi8sCkBAIC0yMDYxMCw3ICsyMDQ1Miw2IEBA
CiAJCQkJQkMyMjcyQkEwRTgyRUFBRTAwRTdGOTc1IC8qIFN0eWxlUmFyZU5vbkluaGVyaXRlZERh
dGEuY3BwICovLAogCQkJCUJDMjI3MkJCMEU4MkVBQUUwMEU3Rjk3NSAvKiBTdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhLmggKi8sCiAJCQkJQkMyMjcyODYwRTgyRTcwNzAwRTdGOTc1IC8qIFN0eWxl
UmVmbGVjdGlvbi5oICovLAotCQkJCTMxMzhBOUU0MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNo
YWRlci5oICovLAogCQkJCUJDNUVCNUU2MEU4MUJGRUYwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5k
RGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI1RTQwRTgxQkY2RDAwQjI1OTY1IC8qIFN0eWxlU3Vycm91
bmREYXRhLmggKi8sCiAJCQkJQkM1RUI4MEQwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNm
b3JtRGF0YS5jcHAgKi8sCkBAIC0yMTcxMywxMCArMjE1NTQsNiBAQAogCQkJCUJDNUVDMTc2MEE1
MDdFM0UwMDYwMDdGNSAvKiB2aWV3LXNvdXJjZS5jc3MgKi8sCiAJCQkJM0ZGRkY5QUIxNTlEOUIw
NjAwMjBCQkQ1IC8qIFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAgKi8sCiAJCQkJM0ZGRkY5QUMx
NTlEOUIwNjAwMjBCQkQ1IC8qIFZpZXdwb3J0U3R5bGVSZXNvbHZlci5oICovLAotCQkJCTE1MEI5
MjM3MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwICov
LAotCQkJCTE1MEI5MjM4MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1bmN0aW9u
VmFsdWUuaCAqLywKLQkJCQlBMkU4QUUyRTE2QTQ4RTFDMDA2QkIzQUEgLyogV2ViS2l0Q1NTRmls
dGVyUnVsZS5jcHAgKi8sCi0JCQkJQTJFOEFFMkYxNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENT
U0ZpbHRlclJ1bGUuaCAqLywKIAkJCQkzMTA2MDM2QzE0MzI3RDJFMDBBQkY0QkEgLyogV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuY3BwICovLAogCQkJCTMxMDYwMzZEMTQzMjdEMkUwMEFCRjRCQSAvKiBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oICovLAogCQkJCTMxMDYwMzZFMTQzMjdEMkUwMEFCRjRCQSAv
KiBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5pZGwgKi8sCkBAIC0yMTcyNiwxOCArMjE1NjMsMTIgQEAK
IAkJCQkzMTI4OEU3MDBFMzAwNUQ2MDAzNjE5QUUgLyogV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5j
cHAgKi8sCiAJCQkJMzEyODhFNzEwRTMwMDVENjAwMzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1l
c1J1bGUuaCAqLywKIAkJCQkzMTZGRTA5MjBFNkNDRDdGMDBCRjYwODggLyogV2ViS2l0Q1NTS2V5
ZnJhbWVzUnVsZS5pZGwgKi8sCi0JCQkJRkIwQjc1RUUxNzIzNDI4NTAwRjA1RDJBIC8qIFdlYktp
dENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwICovLAotCQkJCUZCMEI3NUVGMTcyMzQyODUwMEYwNUQy
QSAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmggKi8sCiAJCQkJNDk4MzkxNTUwRjFFNzc2
OTAwQzIzNzgyIC8qIFdlYktpdENTU01hdHJpeC5jcHAgKi8sCiAJCQkJNDk4MzkxNTYwRjFFNzc2
OTAwQzIzNzgyIC8qIFdlYktpdENTU01hdHJpeC5oICovLAogCQkJCTQ5ODM5MTU3MEYxRTc3Njkw
MEMyMzc4MiAvKiBXZWJLaXRDU1NNYXRyaXguaWRsICovLAotCQkJCUEyNEJGNzdBMTVDQzNCQUYw
MDMxOTFGMiAvKiBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCAqLywKLQkJCQlBMjRCRjc3
OTE1Q0MzQkFGMDAzMTkxRjIgLyogV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovLAogCQkJ
CThBQTYxQ0ZEMTQ0RDU5NUIwMEYzNzM1MCAvKiBXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCAqLywK
IAkJCQk4QUE2MUNGRTE0NEQ1OTVCMDBGMzczNTAgLyogV2ViS2l0Q1NTUmVnaW9uUnVsZS5oICov
LAogCQkJCThBRDBBNTU2MTRDODc0MjUwMDBEODNDNSAvKiBXZWJLaXRDU1NSZWdpb25SdWxlLmlk
bCAqLywKLQkJCQk1MDM4QkMwNjE0NzExQ0RCMDA5NUUwRDEgLyogV2ViS2l0Q1NTU2hhZGVyVmFs
dWUuY3BwICovLAotCQkJCTUwQjQyMTU3MTQ2OTc2OTYwMDg3RTYwNCAvKiBXZWJLaXRDU1NTaGFk
ZXJWYWx1ZS5oICovLAogCQkJCUJDOUFERDdGMENDNDA5MjIwMDA5OEM0QyAvKiBXZWJLaXRDU1NU
cmFuc2Zvcm1WYWx1ZS5jcHAgKi8sCiAJCQkJQkM5QUREMjIwQ0M0MDMyNjAwMDk4QzRDIC8qIFdl
YktpdENTU1RyYW5zZm9ybVZhbHVlLmggKi8sCiAJCQkJMzE2MTFFNTQwRTFDNEQ0QTAwRjZBNTc5
IC8qIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbCAqLywKQEAgLTIyOTk5LDcgKzIyODMwLDYg
QEAKIAkJCQk2QzYzODg5NUE5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
SW5pdGlhdG9ycy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNCMTZDMjQwOTc5QzNCRDAwNDY3NzQx
IC8qIENhY2hlZFNjcmlwdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNENTMzNjQwRUQ2ODQ4OTAw
ODg3NDY4IC8qIENhY2hlZFNjcmlwdFNvdXJjZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLywKLQkJ
CQk1MDM4QkU0MTE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmggaW4gSGVhZGVycyAq
LywKIAkJCQlEMEJDNTQ0OTE0NDNBQzRBMDBFMTA1REEgLyogQ2FjaGVkU3R5bGVTaGVldENsaWVu
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTEwNEYyNDQxNEM3MUY3QTAwOUUyQzIzIC8qIENhY2hl
ZFNWR0RvY3VtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUVGNEU2OTE3MEUxNzQ4MDBBQjI3
OTkgLyogQ2FjaGVkU1ZHRG9jdW1lbnRDbGllbnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjMxODgs
MjMgKzIzMDE4LDggQEAKIAkJCQk4NjgxNjBENjE4NzY2QTEzMDAyMUU3OUQgLyogVXNlckFjdGl2
aXR5LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzIyNzJBRDBFODJFOEYzMDBFN0Y5NzUgLyogQ3Vy
c29yTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjJDRDMyNUExMTU3RTU3QzAwNjNCMEE3IC8q
IEN1c3RvbUV2ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQkxNUIzRkMxOTE1RkIyMTc4MDBBODFC
Q0IgLyogQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUE1
ODQwRTFEMTg3Qjc0RDUwMDg0M0IxMCAvKiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUu
aCBpbiBIZWFkZXJzICovLAotCQkJCTUwRDQwNjEyMTQ3RDQ5REUwMEQzMEJCNSAvKiBDdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW0uaCBpbiBIZWFkZXJzICovLAotCQkJCUEyQjJBRTdDMTYzNzVF
RTUwMENGQTUwQiAvKiBDdXN0b21GaWx0ZXJDb25zdGFudHMuaCBpbiBIZWFkZXJzICovLAotCQkJ
CTUwOTg3QzI3MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0Lmgg
aW4gSGVhZGVycyAqLywKLQkJCQk1MEQ0MDVGQTE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyTWVzaC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJN0UxMkU5MEYxNUZBNUQzQTAwNUU0MTI2IC8q
IEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICovLAotCQkJCTUwQ0MwODlB
MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCBpbiBIZWFk
ZXJzICovLAotCQkJCTUwQUNFMkNCMTRCNUQ3OTMwMDQ0NjY2NiAvKiBDdXN0b21GaWx0ZXJPcGVy
YXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUU0QzkxQTE2MTgwOTk5RjEwMEExN0Y2RCAvKiBS
ZW5kZXJUZXh0TGluZUJveGVzLmggaW4gSGVhZGVycyAqLywKLQkJCQk1MDlDQzlGQjE0QzA2OUVE
MDBCQkVDQkQgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmggaW4gSGVhZGVycyAqLywKLQkJCQk1
MDkzMzM1MDE2M0IwRTQzMDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIGlu
IEhlYWRlcnMgKi8sCi0JCQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRl
clByb2dyYW0uaCBpbiBIZWFkZXJzICovLAotCQkJCTUwM0QwQ0FDMTRCNUIwODcwMEYzMkY1NyAv
KiBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQk1MEQ4OENC
NjE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCBpbiBIZWFkZXJz
ICovLAotCQkJCTUwM0QwQ0FCMTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0b21GaWx0ZXJSZW5kZXJl
ci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQTI5NTMyRDAxNURENUUxNzAwNDY5RUJDIC8qIEN1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCBpbiBIZWFkZXJzICovLAogCQkJCUE4Q0I0MTNFMEU4
NjMzRkQwMDMyQzRGMCAvKiBEYXNoQXJyYXkuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4MEU2RDBC
MEExOTg5Q0EwMDdGQjhDNSAvKiBEYXNoYm9hcmRSZWdpb24uaCBpbiBIZWFkZXJzICovLAogCQkJ
CTk3QkM2QTIxMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZS5oIGluIEhlYWRlcnMgKi8sCkBA
IC0yMzY0Nyw5ICsyMzQ2Miw3IEBACiAJCQkJQkMxQTM3QzAwOTdDNzE1RjAwMTlGM0Q4IC8qIERP
TVZpZXdzLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUMwRkY0OTBFNENFRkREMDA3RDZGRTUgLyog
RE9NV2ViS2l0QW5pbWF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQzBGRjRCMEU0
Q0VGREQwMDdENkZFNSAvKiBET01XZWJLaXRBbmltYXRpb25FdmVudEludGVybmFsLmggaW4gSGVh
ZGVycyAqLywKLQkJCQlBMkU4QUU0MDE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmls
dGVyUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE1QjNBNkUxN0NCRTI2NzAwMEZDQ0U4IC8q
IEFjY2Vzc2liaWxpdHlTZWFyY2hGaWVsZEJ1dHRvbnMuaCBpbiBIZWFkZXJzICovLAotCQkJCUEy
RThBRTQyMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwu
aCBpbiBIZWFkZXJzICovLAogCQkJCTMxMDYwMzc5MTQzMjgxQ0QwMEFCRjRCQSAvKiBET01XZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEwNjAzN0IxNDMyODFDRDAw
QUJGNEJBIC8qIERPTVdlYktpdENTU0ZpbHRlclZhbHVlSW50ZXJuYWwuaCBpbiBIZWFkZXJzICov
LAogCQkJCTMxNkZFMDdEMEU2Q0NDMjgwMEJGNjA4OCAvKiBET01XZWJLaXRDU1NLZXlmcmFtZVJ1
bGUuaCBpbiBIZWFkZXJzICovLApAQCAtMjM3NjcsNyArMjM1ODAsNiBAQAogCQkJCUE3NUU4QjhE
MEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbXBvbmVudFRyYW5zZmVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlBNzVFOEI4RjBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTg0NzMwRDc5MTI0OEYwQjMwMEQzQTlDOSAvKiBGRUNvbnZvbHZlTWF0cml4Lmgg
aW4gSGVhZGVycyAqLywKLQkJCQk1MEQ0MDNDODE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0b21G
aWx0ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTg0NzMwRDdCMTI0OEYwQjMwMEQzQTlDOSAvKiBG
RURpZmZ1c2VMaWdodGluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RBQjZEMzExN0M5MjU5NTAw
QzYwQjM0IC8qIFVzZXJBZ2VudFNjcmlwdHMuaCBpbiBIZWFkZXJzICovLAogCQkJCTg0NzMwRDdE
MTI0OEYwQjMwMEQzQTlDOSAvKiBGRURpc3BsYWNlbWVudE1hcC5oIGluIEhlYWRlcnMgKi8sCkBA
IC0yNDczNSwxMiArMjQ1NDcsMTAgQEAKIAkJCQk3N0VGNjJGNDEyRjlEQjc0MDBDNzdCRDIgLyog
SlNXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggaW4gSGVhZGVycyAqLywKIAkJCQlDREM4QjVB
QjE4MDQ3RkYxMDAxNkU2ODUgLyogU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTMxQzBGRjNFMEU0Q0VGQUMwMDdENkZFNSAvKiBKU1dlYktpdEFuaW1hdGlv
bkV2ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQlBMkU4QUUzODE2QTQ5ODQwMDA2QkIzQUEgLyog
SlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTA2MDM3NTE0MzI4
MTlDMDBBQkY0QkEgLyogSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMzE2RkUwNzIwRTZDQ0JFRTAwQkY2MDg4IC8qIEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMTZGRTA3NDBFNkNDQkVFMDBCRjYwODggLyogSlNXZWJLaXRD
U1NLZXlmcmFtZXNSdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQk0OTgzOTE0MDBGMUU3Njc1MDBD
MjM3ODIgLyogSlNXZWJLaXRDU1NNYXRyaXguaCBpbiBIZWFkZXJzICovLAotCQkJCTE1QjhCN0M5
MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFk
ZXJzICovLAogCQkJCThBRDBBNTk1MTRDODgzMzYwMDBEODNDNSAvKiBKU1dlYktpdENTU1JlZ2lv
blJ1bGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxNjExRTVCMEUxQzRERTAwMEY2QTU3OSAvKiBK
U1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzRjJCMzNFRjE2
NUFGMTU2MDBFMzk4N0MgLyogSlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuaCBpbiBIZWFkZXJzICov
LApAQCAtMjU1MTMsMTAgKzI1MzIzLDcgQEAKIAkJCQlCQzVFQjY3QjBFODFEM0JFMDBCMjU5NjUg
LyogU3R5bGVCb3hEYXRhLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0VGNDQ0RDBFNjc0NjI4MDAx
QzEyODcgLyogU3R5bGVDYWNoZWRJbWFnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM5M0U2MDUx
NTFBOUExODAwMDY2RjA2IC8qIFN0eWxlQ2FjaGVkSW1hZ2VTZXQuaCBpbiBIZWFkZXJzICovLAot
CQkJCTUwMzhCRTMwMTQ3MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJNTAzRDBDQUUxNEI1QjBCQTAwRjMyRjU3IC8qIFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTE2NjBBQzExODI4Qzg0NjAwMDc0Q0FE
IC8qIElEQkJhY2tpbmdTdG9yZUN1cnNvckxldmVsREIuaCBpbiBIZWFkZXJzICovLAotCQkJCTUw
RTE4Q0RBMTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI2N0YwRTgxRDRBNzAwQjI1OTY1IC8qIFN0eWxlRGFz
aGJvYXJkUmVnaW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEM0QTdGRDA5RDU2MzI3MDAwM0FD
OEQgLyogU3R5bGVkRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4QjkwRTgyMDFC
RDAwQjI1OTY1IC8qIFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5oIGluIEhlYWRlcnMg
Ki8sCkBAIC0yNTU0NSw3ICsyNTM1Miw2IEBACiAJCQkJRTRCQkVENEQxNEZDREJBMTAwM0YwQjk4
IC8qIFN0eWxlUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTQ5NDZFQUYxNTZFNjRERDAwRDMy
OTdGIC8qIFN0eWxlUnVsZUltcG9ydC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTdCNzYxQTExNjFF
RTUyNjAwMjA4M0QzIC8qIFN0eWxlU2NvcGVSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
MzEzOEE5RTUxNDc0NDM0NjAwQjBFRDEyIC8qIFN0eWxlU2hhZGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlBOEVBODAwQzBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMEY1NERDRTYxODgxMDUxRDAwM0VFREJCIC8qIFRleHRBdXRvU2l6aW5nLmggaW4g
SGVhZGVycyAqLywKIAkJCQlFNEY5RUVGMzE1NkRBMDA3MDBEMjNFN0UgLyogU3R5bGVTaGVldENv
bnRlbnRzLmggaW4gSGVhZGVycyAqLywKQEAgLTI1OTUwLDcgKzI1NzU2LDYgQEAKIAkJCQkxRkFG
QkYxOTE1QTVGQTc0MDAwODNBMjAgLyogVVRJVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkyRTNCQkYwODExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QTUwMTkyMEUxMzJFQkYyRTAwOEJGRTU1IC8qIEF1dG9jYXBpdGFsaXplLmggaW4gSGVhZGVycyAq
LywKLQkJCQk1MEQzMjg1ODE2M0IzMTNGMDAxNjExMUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlGNUExNTQyODEyNzk1MzREMDBEMEIwQzAg
LyogVmFsaWRhdGlvbk1lc3NhZ2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUY1MTNBM0VBMTVGRjQ4
NDEwMDE1MjZEQiAvKiBWYWxpZGF0aW9uTWVzc2FnZUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMTVDNzcwOEQxMDBEM0M2QjAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaCBpbiBIZWFkZXJz
ICovLApAQCAtMjYwMzAsMTcgKzI1ODM1LDEyIEBACiAJCQkJNzdBMTdBNzgxMkYyODY0MjAwNEUw
MkY2IC8qIFdlYkdMVmVydGV4QXJyYXlPYmplY3RPRVMuaCBpbiBIZWFkZXJzICovLAogCQkJCTMx
QzBGRjIyMEU0Q0VCNkUwMDdENkZFNSAvKiBXZWJLaXRBbmltYXRpb25FdmVudC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJOTc2RDZDN0MxMjJCOEEzRDAwMUZEMUY3IC8qIFdlYktpdEJsb2JCdWlsZGVy
LmggaW4gSGVhZGVycyAqLywKLQkJCQkxNTBCOTIzQTE1RjA4REM0MDBFMTA5ODYgLyogV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmggaW4gSGVhZGVycyAqLywKLQkJCQlBMkU4QUUzMTE2QTQ4
RTFDMDA2QkIzQUEgLyogV2ViS2l0Q1NTRmlsdGVyUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NTFENzE5Q0QxODExMDZFMDAwMTZEQzUxIC8qIElEQkRhdGFiYXNlRXJyb3IuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTMxMDYwMzcwMTQzMjdEMkUwMEFCRjRCQSAvKiBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEyODhFNzMwRTMwMDVENjAwMzYxOUFFIC8qIFdlYktp
dENTU0tleWZyYW1lUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEyODhFNzUwRTMwMDVENjAw
MzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1lc1J1bGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUZC
NzE5QzNGMTcyMzhDQTgwMDIyREUzNCAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmggaW4g
SGVhZGVycyAqLywKIAkJCQk0OTgzOTE1OTBGMUU3NzY5MDBDMjM3ODIgLyogV2ViS2l0Q1NTTWF0
cml4LmggaW4gSGVhZGVycyAqLywKLQkJCQlBMjRCRjc3QjE1Q0MzQkFGMDAzMTkxRjIgLyogV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOEFBNjFEMDAxNDRE
NTk1QjAwRjM3MzUwIC8qIFdlYktpdENTU1JlZ2lvblJ1bGUuaCBpbiBIZWFkZXJzICovLAotCQkJ
CTI5Q0Q2MURFMTQ2RDAyODkwMDY4RTgyQSAvKiBXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMDc4RTA5NDIxN0QxNkUxQzAwNDIwQUExIC8qIFJUQ1BlZXJDb25uZWN0
aW9uSGFuZGxlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM5QUREMjMwQ0M0MDMyNjAw
MDk4QzRDIC8qIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQkz
RkZGRjlBOTE1OUQ5QTU1MDAyMEJCRDUgLyogV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmggaW4gSGVh
ZGVycyAqLywKQEAgLTI2NjQyLDcgKzI2NDQyLDYgQEAKIAkJCQk1MDgxRTNDMzNDRTU4MEMxNkVG
OEI0OEIgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTZD
NjM4ODk2QTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3Jz
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDQjE2QzIzMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNo
ZWRTY3JpcHQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzOEJFNDAxNDcyQUQ5ODAwOTVFMEQx
IC8qIENhY2hlZFNoYWRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBMTA0RjI0MzE0QzcxRjdB
MDA5RTJDMjMgLyogQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTFC
NTMzNDcxNzE3RDBBMTAwRjIwNUY5IC8qIENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTA3NTM4NjAyMTQ0ODlFOTgwMEI3ODQ1MiAvKiBDYWNoZWRUZXh0
VHJhY2suY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yNjgwOCwxOCArMjY2MDcsOCBAQAogCQkJCTI2
NTU0MTUyMTQ4OUIyMzMwMDBERkM1RCAvKiBDdXJzb3JJT1MuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJOTNGMTlBMjYwODI0NUU1OTAwMUU5QUJDIC8qIEN1cnNvck1hYy5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTYyQ0QzMjU5MTE1N0U1N0MwMDYzQjBBNyAvKiBDdXN0b21FdmVudC5jcHAgaW4gU291
cmNlcyAqLywKLQkJCQk1MEQ0MDYxMTE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTUwOTg3QzI2MTU3RDY3NkQwMEJE
QTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcCBpbiBTb3VyY2VzICovLAotCQkJ
CTUwRDQwNUY5MTQ3RDMxRjMwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUUxQzI2NkRFMTgzMTlGMzEwMDNGOEIzMyAvKiBDcnlwdG9LZXlEYXRhUlNB
Q29tcG9uZW50cy5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk3RTEyRTkxMDE1RkE1RDNBMDA1RTQx
MjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlB
NTg0RkUzQjE4NjRFMkQ4MDA4NDNCMTAgLyogSlNDb21tYW5kTGluZUFQSUhvc3QuY3BwIGluIFNv
dXJjZXMgKi8sCi0JCQkJNTBDQzBBMzkxNEM2RjVCMTAwMTdBQjUxIC8qIEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MDkzMzM0RjE2M0IwRTQzMDAwOTlBNjAg
LyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MDNE
MENBQTE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgaW4gU291cmNl
cyAqLywKLQkJCQk1MEQ4OENCNTE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUluZm8uY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzRDBDQUExNEI1QjA4NzAwRjMyRjU4IC8q
IEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUEyOTUzMkNGMTVE
RDVFMTcwMDQ2OUVCQyAvKiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTk3QkM2QTIwMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQk5N0JDNkEyMzE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VBdXRo
b3JpemVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxMjVGODM1MTgyMkYxOEEwMEQ4NENEOSAv
KiBDcnlwdG9LZXlITUFDLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjcwODcsNyArMjY4NzYsNiBA
QAogCQkJCUJDMUEzN0JGMDk3QzcxNUYwMDE5RjNEOCAvKiBET01VdGlsaXR5Lm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMTVDNzcwQTUxMDBENDFDRDAwNUJBMjY3IC8qIERPTVZhbGlkaXR5U3RhdGUu
bW0gaW4gU291cmNlcyAqLywKIAkJCQkzMUMwRkY0QTBFNENFRkREMDA3RDZGRTUgLyogRE9NV2Vi
S2l0QW5pbWF0aW9uRXZlbnQubW0gaW4gU291cmNlcyAqLywKLQkJCQlBMkU4QUU0MTE2QTQ5OENG
MDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTMxMDYwMzdBMTQzMjgxQ0QwMEFCRjRCQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5tbSBp
biBTb3VyY2VzICovLAogCQkJCUNERjJCMDEwMTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrQm94LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTMxNkZFMDdFMEU2Q0NDMjgwMEJGNjA4OCAvKiBET01XZWJL
aXRDU1NLZXlmcmFtZVJ1bGUubW0gaW4gU291cmNlcyAqLywKQEAgLTI3MTcxLDcgKzI2OTU5LDYg
QEAKIAkJCQlBNzVFOEI4RTBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJODQ3MzBENzgxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFQ29udm9sdmVNYXRy
aXguY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RENzA4OTYxODM1OUY2RjAwMkIzREM2IC8qIFNh
bXBsZU1hcC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MEQ0MDNDNzE0NzY4Qzk0MDBEMzBCQjUg
LyogRkVDdXN0b21GaWx0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODQ3MzBEN0ExMjQ4RjBC
MzAwRDNBOUM5IC8qIEZFRGlmZnVzZUxpZ2h0aW5nLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA3
OEUwOTBCMTdEMTRDRUUwMDQyMEFBMSAvKiBSVENQZWVyQ29ubmVjdGlvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk4NDczMEQ3QzEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaXNwbGFjZW1lbnRNYXAu
Y3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yODE3OCwxMiArMjc5NjUsMTAgQEAKIAkJCQkwQzQ1MzQy
NzEwQ0RCQkZBMDA4NjkxNTcgLyogSlNXZWJHTFVuaWZvcm1Mb2NhdGlvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk3N0VGNjJGMzEyRjlEQjc0MDBDNzdCRDIgLyogSlNXZWJHTFZlcnRleEFycmF5
T2JqZWN0T0VTLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQzBGRjNEMEU0Q0VGQUMwMDdENkZF
NSAvKiBKU1dlYktpdEFuaW1hdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUEyRThB
RTM3MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMzEwNjAzNzQxNDMyODE5QzAwQUJGNEJBIC8qIEpTV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzE2RkUwNzEwRTZDQ0JFRTAwQkY2MDg4IC8q
IEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNkZFMDcz
MEU2Q0NCRUUwMEJGNjA4OCAvKiBKU1dlYktpdENTU0tleWZyYW1lc1J1bGUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNDk4MzkxM0YwRjFFNzY3NTAwQzIzNzgyIC8qIEpTV2ViS2l0Q1NTTWF0cml4
LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTE1QjhCN0M4MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOEFEMEE1OTQx
NEM4ODMzNjAwMEQ4M0M1IC8qIEpTV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQkzMTYxMUU1QTBFMUM0REUwMDBGNkE1NzkgLyogSlNXZWJLaXRDU1NUcmFuc2Zvcm1W
YWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzRjJCMzNFRTE2NUFGMTU2MDBFMzk4N0MgLyog
SlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yODg0MiwxMCAr
Mjg2MjcsNyBAQAogCQkJCUJDNUVCNjdEMEU4MUQ0MjAwMEIyNTk2NSAvKiBTdHlsZUJveERhdGEu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNFRjQ0N0EwRTY3NDdEMDAwMUMxMjg3IC8qIFN0eWxl
Q2FjaGVkSW1hZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTM5M0U2MDQxNTFBOUExODAwMDY2
RjA2IC8qIFN0eWxlQ2FjaGVkSW1hZ2VTZXQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzOEJF
MkYxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2FjaGVkU2hhZGVyLmNwcCBpbiBTb3VyY2VzICov
LAotCQkJCTUwRTE4Q0Q4MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dy
YW0uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTU4NDBFMjQxODdCOEFDMjAwODQzQjEwIC8qIFBh
Z2VJbmplY3RlZFNjcmlwdEhvc3QuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTBFMThDRDkxNkY5
Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUE4QzRBN0ZFMDlENTYzMjcwMDAzQUM4RCAvKiBTdHlsZWRFbGVtZW50LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUJDNUVCOEI4MEU4MjAxQkQwMEIyNTk2NSAvKiBTdHlsZURl
cHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQUE0QzNBNzYw
QjJCMTY3OTAwMjMzNEEyIC8qIElubGluZVN0eWxlU2hlZXRPd25lci5jcHAgaW4gU291cmNlcyAq
LywKQEAgLTI5MTg2LDcgKzI4OTY4LDYgQEAKIAkJCQlCQ0RGMzE3QjExRjhENjgzMDAzQzVCRjgg
LyogVXNlclR5cGluZ0dlc3R1cmVJbmRpY2F0b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUZB
RkJGMTgxNUE1RkE2RTAwMDgzQTIwIC8qIFVUSVV0aWxpdGllcy5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTJFM0JCRjA3MTE2MkRBMTEwMEI5NDA5QSAvKiBVVUlELmNwcCBpbiBTb3VyY2VzICovLAot
CQkJCTUwRDMyODU3MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTFGRTEzNzQxODQwMkE2NzAwODkyRjEzIC8q
IENvbW1vbkNyeXB0b1V0aWxpdGllcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGNUExNTQyNzEy
Nzk1MzREMDBEMEIwQzAgLyogVmFsaWRhdGlvbk1lc3NhZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJRkQzMTYwQUUxMkIwMjZGNzAwQzFBMzU5IC8qIFZlY3Rvck1hdGguY3BwIGluIFNvdXJjZXMg
Ki8sCkBAIC0yOTI1NywxOSArMjkwMzgsMTQgQEAKIAkJCQkzMUMwRkYyMTBFNENFQjZFMDA3RDZG
RTUgLyogV2ViS2l0QW5pbWF0aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDdGRTk5
REMxODgwN0E3RDAwMjU2NjQ4IC8qIEhUTUxNZWRpYVNlc3Npb24uY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOTc2RDZDN0IxMjJCOEEzRDAwMUZEMUY3IC8qIFdlYktpdEJsb2JCdWlsZGVyLmNwcCBp
biBTb3VyY2VzICovLAotCQkJCTE1MEI5MjM5MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NB
cnJheUZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJQTJFOEFFMzAxNkE0OEUx
QzAwNkJCM0FBIC8qIFdlYktpdENTU0ZpbHRlclJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QzU1QzdCQTExNzE4QUZCQTAwMTMyN0U0IC8qIFJlbmRlclRoZW1lSU9TLm1tIGluIFNvdXJjZXMg
Ki8sCiAJCQkJMzEwNjAzNkYxNDMyN0QyRTAwQUJGNEJBIC8qIFdlYktpdENTU0ZpbHRlclZhbHVl
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxMjg4RTcyMEUzMDA1RDYwMDM2MTlBRSAvKiBXZWJL
aXRDU1NLZXlmcmFtZVJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzEyODhFNzQwRTMwMDVE
NjAwMzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1lc1J1bGUuY3BwIGluIFNvdXJjZXMgKi8sCi0J
CQkJRkI3MTlDNDAxNzIzOENBRTAwMjJERTM0IC8qIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDc4RTA5MTExN0QxNENFRTAwNDIwQUExIC8qIFJUQ1Zv
aWRSZXF1ZXN0SW1wbC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUZFMTM2NDE4MzQzNTExMDA4
OTJGMTMgLyogQ3J5cHRvRGlnZXN0TWFjLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQ5ODM5MTU4
MEYxRTc3NjkwMEMyMzc4MiAvKiBXZWJLaXRDU1NNYXRyaXguY3BwIGluIFNvdXJjZXMgKi8sCi0J
CQkJQTI0QkY3N0MxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOEFBNjFDRkYxNDRENTk1QjAwRjM3MzUwIC8qIFdlYktp
dENTU1JlZ2lvblJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzOEJDMDcxNDcxMUNEQjAw
OTVFMEQxIC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJD
OUFERDgwMENDNDA5MjIwMDA5OEM0QyAvKiBXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkzRkZGRjlBODE1OUQ5QTU1MDAyMEJCRDUgLyogV2ViS2l0Q1NTVmll
d3BvcnRSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBMTQxNEI1MTNBMEYwNTAwMDE5OTk2
QyAvKiBXZWJLaXRGb250RmFtaWx5TmFtZXMuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1J1bGVDdXN0b20uY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNDU1NSdWxlQ3VzdG9tLmNwcAppbmRleCBkYzkwNTMwLi4z
MDAzYTcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1J1bGVD
dXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ1NTUnVsZUN1c3Rv
bS5jcHAKQEAgLTQzLDEyICs0MywxMCBAQAogI2luY2x1ZGUgIkpTQ1NTU3VwcG9ydHNSdWxlLmgi
CiAjaW5jbHVkZSAiSlNOb2RlLmgiCiAjaW5jbHVkZSAiSlNTdHlsZVNoZWV0Q3VzdG9tLmgiCi0j
aW5jbHVkZSAiSlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmgiCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NL
ZXlmcmFtZVJ1bGUuaCIKICNpbmNsdWRlICJKU1dlYktpdENTU0tleWZyYW1lc1J1bGUuaCIKICNp
bmNsdWRlICJKU1dlYktpdENTU1JlZ2lvblJ1bGUuaCIKICNpbmNsdWRlICJKU1dlYktpdENTU1Zp
ZXdwb3J0UnVsZS5oIgotI2luY2x1ZGUgIldlYktpdENTU0ZpbHRlclJ1bGUuaCIKICNpbmNsdWRl
ICJXZWJLaXRDU1NLZXlmcmFtZVJ1bGUuaCIKICNpbmNsdWRlICJXZWJLaXRDU1NLZXlmcmFtZXNS
dWxlLmgiCiAjaW5jbHVkZSAiV2ViS2l0Q1NTUmVnaW9uUnVsZS5oIgpAQCAtMTIyLDExICsxMjAs
NiBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBDU1NSdWxlKiBydWxlKQogICAgICAgICAgICAgd3JhcHBlciA9IENSRUFURV9E
T01fV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIENTU0hvc3RSdWxlLCBydWxlKTsKICAgICAg
ICAgICAgIGJyZWFrOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBj
YXNlIENTU1J1bGU6OldFQktJVF9GSUxURVJfUlVMRToKLSAgICAgICAgICAgIHdyYXBwZXIgPSBD
UkVBVEVfRE9NX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBXZWJLaXRDU1NGaWx0ZXJSdWxl
LCBydWxlKTsKLSAgICAgICAgICAgIGJyZWFrOwotI2VuZGlmCiAgICAgICAgIGRlZmF1bHQ6CiAg
ICAgICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVj
dCwgQ1NTUnVsZSwgcnVsZSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcAppbmRleCBmZWVlMDE0Li4wNTBlNGI4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcApAQCAtMzksMTEg
KzM5LDYgQEAKICNpbmNsdWRlICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIgogI2VuZGlmCiAKLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIgotI2VuZGlmCi0K
ICNpZiBFTkFCTEUoU1ZHKQogI2luY2x1ZGUgIkpTU1ZHQ29sb3IuaCIKICNpbmNsdWRlICJKU1NW
R1BhaW50LmgiCkBAIC05OSwxMCArOTQsNiBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBleGVj
LCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDU1NWYWx1ZSogdmFsdWUpCiAgICAg
ZWxzZSBpZiAodmFsdWUtPmlzV2ViS2l0Q1NTRmlsdGVyVmFsdWUoKSkKICAgICAgICAgd3JhcHBl
ciA9IENSRUFURV9ET01fV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIFdlYktpdENTU0ZpbHRl
clZhbHVlLCB2YWx1ZSk7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgZWxz
ZSBpZiAodmFsdWUtPmlzV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpKQotICAgICAgICB3cmFw
cGVyID0gQ1JFQVRFX0RPTV9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgV2ViS2l0Q1NTTWl4
RnVuY3Rpb25WYWx1ZSwgdmFsdWUpOwotI2VuZGlmCiAgICAgZWxzZSBpZiAodmFsdWUtPmlzVmFs
dWVMaXN0KCkpCiAgICAgICAgIHdyYXBwZXIgPSBDUkVBVEVfRE9NX1dSQVBQRVIoZXhlYywgZ2xv
YmFsT2JqZWN0LCBDU1NWYWx1ZUxpc3QsIHZhbHVlKTsKICNpZiBFTkFCTEUoU1ZHKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvb2JqYy9ET01DU1MubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9vYmpjL0RPTUNTUy5tbQppbmRleCAwN2U5ZTFmLi45MGU0ZGE0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUNTUy5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUNTUy5tbQpAQCAtNTIsMTAgKzUyLDYgQEAKICNp
bXBvcnQgIkRPTVdlYktpdENTU0tleWZyYW1lc1J1bGUuaCIKICNpbXBvcnQgIkRPTVdlYktpdENT
U1RyYW5zZm9ybVZhbHVlLmgiCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW1wb3J0ICJE
T01XZWJLaXRDU1NGaWx0ZXJSdWxlLmgiCi0jZW5kaWYKLQogI2lmIEVOQUJMRShDU1NfRklMVEVS
UykKICNpbXBvcnQgIkRPTVdlYktpdENTU0ZpbHRlclZhbHVlLmgiCiAjZW5kaWYKQEAgLTEyMiwx
MCArMTE4LDYgQEAgQ2xhc3Mga2l0Q2xhc3MoV2ViQ29yZTo6Q1NTUnVsZSogaW1wbCkKICAgICAg
ICAgY2FzZSBET01fSE9TVF9SVUxFOgogICAgICAgICAgICAgcmV0dXJuIFtET01DU1NIb3N0UnVs
ZSBjbGFzc107CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGNhc2Ug
RE9NX1dFQktJVF9GSUxURVJfUlVMRToKLSAgICAgICAgICAgIHJldHVybiBbRE9NV2ViS2l0Q1NT
RmlsdGVyUnVsZSBjbGFzc107Ci0jZW5kaWYKICAgICB9CiAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7CiAgICAgcmV0dXJuIG5pbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1ND
b21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1
dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggY2YxNmRiMy4uMzQ4NWFmYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAg
LTcyLDIwICs3Miw3IEBACiAjaW5jbHVkZSAiU2hhcGVWYWx1ZS5oIgogI2VuZGlmCiAKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIu
aCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1
c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJh
dGlvbi5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1
c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oIgotI2luY2x1ZGUgIldlYktpdENTU0FycmF5
RnVuY3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCIK
LSNpbmNsdWRlICJXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgiCi0jZW5kaWYKLQogI2lmIEVO
QUJMRShDU1NfRklMVEVSUykKLSNpbmNsdWRlICJTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaCIK
ICNpbmNsdWRlICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIgogI2VuZGlmCiAKQEAgLTg1MSw3MiAr
ODM4LDYgQEAgc3RhdGljIFBhc3NSZWY8Q1NTVmFsdWU+IGNvbXB1dGVkVHJhbnNmb3JtKFJlbmRl
ck9iamVjdCogcmVuZGVyZXIsIGNvbnN0IFJlbmRlclMKICAgICByZXR1cm4gc3RkOjptb3ZlKGxp
c3QpOwogfQogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotc3RhdGljIFBhc3NSZWY8V2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlPiB2YWx1ZUZvckN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVy
KGNvbnN0IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKiBhcnJheVBhcmFtZXRlcikKLXsKLSAg
ICBhdXRvIGFycmF5UGFyYW1ldGVyVmFsdWUgPSBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU6
OmNyZWF0ZSgpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDAsIHNpemUgPSBhcnJheVBhcmFtZXRl
ci0+c2l6ZSgpOyBpIDwgc2l6ZTsgKytpKQotICAgICAgICBhcnJheVBhcmFtZXRlclZhbHVlLmdl
dCgpLmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShhcnJheVBhcmFtZXRlci0+dmFs
dWVBdChpKSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpKTsKLSAgICByZXR1cm4gYXJy
YXlQYXJhbWV0ZXJWYWx1ZTsKLX0KLQotc3RhdGljIFBhc3NSZWY8V2ViS2l0Q1NTTWF0RnVuY3Rp
b25WYWx1ZT4gdmFsdWVGb3JDdXN0b21GaWx0ZXJNYXRQYXJhbWV0ZXIoY29uc3QgQ3VzdG9tRmls
dGVyQXJyYXlQYXJhbWV0ZXIqIG1hdHJpeFBhcmFtZXRlcikKLXsKLSAgICBhdXRvIG1hdHJpeFBh
cmFtZXRlclZhbHVlID0gV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZTo6Y3JlYXRlKCk7Ci0gICAg
Zm9yICh1bnNpZ25lZCBpID0gMCwgc2l6ZSA9IG1hdHJpeFBhcmFtZXRlci0+c2l6ZSgpOyBpIDwg
c2l6ZTsgKytpKQotICAgICAgICBtYXRyaXhQYXJhbWV0ZXJWYWx1ZS5nZXQoKS5hcHBlbmQoY3Nz
VmFsdWVQb29sKCkuY3JlYXRlVmFsdWUobWF0cml4UGFyYW1ldGVyLT52YWx1ZUF0KGkpLCBDU1NQ
cmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwotICAgIHJldHVybiBtYXRyaXhQYXJhbWV0ZXJW
YWx1ZTsKLX0KLQotc3RhdGljIFBhc3NSZWY8Q1NTVmFsdWVMaXN0PiB2YWx1ZUZvckN1c3RvbUZp
bHRlckNvbG9yUGFyYW1ldGVyKGNvbnN0IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKiBjb2xv
clBhcmFtZXRlcikKLXsKLSAgICBhdXRvIGNvbG9yUGFyYW1ldGVyVmFsdWUgPSBDU1NWYWx1ZUxp
c3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgY29sb3JQYXJhbWV0ZXJWYWx1ZS5nZXQo
KS5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlQ29sb3JWYWx1ZShjb2xvclBhcmFtZXRlci0+
Y29sb3IoKS5yZ2IoKSkpOwotICAgIHJldHVybiBjb2xvclBhcmFtZXRlclZhbHVlOwotfQotCi1z
dGF0aWMgUGFzc1JlZjxDU1NWYWx1ZUxpc3Q+IHZhbHVlRm9yQ3VzdG9tRmlsdGVyTnVtYmVyUGFy
YW1ldGVyKGNvbnN0IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciogbnVtYmVyUGFyYW1ldGVy
KQotewotICAgIGF1dG8gbnVtYmVyUGFyYW1ldGVyVmFsdWUgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0
ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG51bWJlclBh
cmFtZXRlci0+c2l6ZSgpOyArK2kpCi0gICAgICAgIG51bWJlclBhcmFtZXRlclZhbHVlLmdldCgp
LmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShudW1iZXJQYXJhbWV0ZXItPnZhbHVl
QXQoaSksIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKSk7Ci0gICAgcmV0dXJuIG51bWJl
clBhcmFtZXRlclZhbHVlOwotfQotCi1zdGF0aWMgUGFzc1JlZjxXZWJLaXRDU1NUcmFuc2Zvcm1W
YWx1ZT4gdmFsdWVGb3JDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIoY29uc3QgUmVuZGVy
T2JqZWN0KiByZW5kZXJlciwgY29uc3QgUmVuZGVyU3R5bGUqIHN0eWxlLCBjb25zdCBDdXN0b21G
aWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqIHRyYW5zZm9ybVBhcmFtZXRlcikKLXsKLSAgICBJbnRT
aXplIHNpemU7Ci0gICAgaWYgKHJlbmRlcmVyICYmIHJlbmRlcmVyLT5pc0JveCgpKQotICAgICAg
ICBzaXplID0gcGl4ZWxTbmFwcGVkSW50UmVjdCh0b1JlbmRlckJveChyZW5kZXJlciktPmJvcmRl
ckJveFJlY3QoKSkuc2l6ZSgpOwotCi0gICAgVHJhbnNmb3JtYXRpb25NYXRyaXggdHJhbnNmb3Jt
OwotICAgIHRyYW5zZm9ybVBhcmFtZXRlci0+YXBwbHlUcmFuc2Zvcm0odHJhbnNmb3JtLCBzaXpl
KTsKLSAgICAvLyBGSVhNRTogTmVlZCB0byBwcmludCBvdXQgaW5kaXZpZHVhbCBmdW5jdGlvbnMg
KGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzkyNCkKLSAgICByZXR1
cm4gbWF0cml4VHJhbnNmb3JtVmFsdWUodHJhbnNmb3JtLCBzdHlsZSk7Ci19Ci0KLXN0YXRpYyBQ
YXNzUmVmUHRyPENTU1ZhbHVlPiB2YWx1ZUZvckN1c3RvbUZpbHRlclBhcmFtZXRlcihjb25zdCBS
ZW5kZXJPYmplY3QqIHJlbmRlcmVyLCBjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUsIGNvbnN0IEN1
c3RvbUZpbHRlclBhcmFtZXRlciogcGFyYW1ldGVyKQotewotICAgIC8vIEZJWE1FOiBBZGQgaGVy
ZSBjb21wdXRlZCBzdHlsZSBmb3IgdGhlIG90aGVyIHR5cGVzOiBib29sZWFuLCB0cmFuc2Zvcm0s
IG1hdHJpeCwgdGV4dHVyZS4KLSAgICBBU1NFUlQocGFyYW1ldGVyKTsKLSAgICBzd2l0Y2ggKHBh
cmFtZXRlci0+cGFyYW1ldGVyVHlwZSgpKSB7Ci0gICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXI6OkFSUkFZOgotICAgICAgICByZXR1cm4gdmFsdWVGb3JDdXN0b21GaWx0ZXJBcnJheVBhcmFt
ZXRlcihzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcio+KHBhcmFt
ZXRlcikpOwotICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpDT0xPUjoKLSAgICAgICAg
cmV0dXJuIHZhbHVlRm9yQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIoc3RhdGljX2Nhc3Q8Y29u
c3QgQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICBjYXNlIEN1
c3RvbUZpbHRlclBhcmFtZXRlcjo6TUFUUklYOgotICAgICAgICByZXR1cm4gdmFsdWVGb3JDdXN0
b21GaWx0ZXJNYXRQYXJhbWV0ZXIoc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6
TlVNQkVSOgotICAgICAgICByZXR1cm4gdmFsdWVGb3JDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0
ZXIoc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKj4ocGFyYW1l
dGVyKSk7Ci0gICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OlRSQU5TRk9STToKLSAgICAg
ICAgcmV0dXJuIHZhbHVlRm9yQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKHJlbmRlcmVy
LCBzdHlsZSwgc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVy
Kj4ocGFyYW1ldGVyKSk7Ci0gICAgfQotICAgIAotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwot
ICAgIHJldHVybiAwOwotfQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQogc3RhdGlj
IGlubGluZSBQYXNzUmVmPENTU1ByaW1pdGl2ZVZhbHVlPiBhZGp1c3RMZW5ndGhGb3Jab29tKGRv
dWJsZSBsZW5ndGgsIGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSwgQWRqdXN0UGl4ZWxWYWx1ZXNG
b3JDb21wdXRlZFN0eWxlIGFkanVzdCkKIHsKICAgICByZXR1cm4gYWRqdXN0ID09IEFkanVzdFBp
eGVsVmFsdWVzID8gem9vbUFkanVzdGVkUGl4ZWxWYWx1ZShsZW5ndGgsIHN0eWxlKSA6IGNzc1Zh
bHVlUG9vbCgpLmNyZWF0ZVZhbHVlKGxlbmd0aCwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19QWCk7
CkBAIC05NDYsMTEgKzg2Nyw4IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVF
eHRyYWN0b3I6OnZhbHVlRm9yU2hhZG93KGNvbnN0IFNoYWRvd0RhdGEqIHNoCiB9CiAKICNpZiBF
TkFCTEUoQ1NTX0ZJTFRFUlMpCi1QYXNzUmVmPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFj
dG9yOjp2YWx1ZUZvckZpbHRlcihjb25zdCBSZW5kZXJPYmplY3QqIHJlbmRlcmVyLCBjb25zdCBS
ZW5kZXJTdHlsZSogc3R5bGUsIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlck9wZXJhdGlv
bnMsIEFkanVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSBhZGp1c3QpCitQYXNzUmVmPENT
U1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvckZpbHRlcihjb25zdCBSZW5k
ZXJTdHlsZSogc3R5bGUsIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlck9wZXJhdGlvbnMs
IEFkanVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSBhZGp1c3QpCiB7Ci0jaWYgIUVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBVTlVTRURfUEFSQU0ocmVuZGVyZXIpOwotI2VuZGlmCiAgICAg
aWYgKGZpbHRlck9wZXJhdGlvbnMub3BlcmF0aW9ucygpLmlzRW1wdHkoKSkKICAgICAgICAgcmV0
dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwog
CkBAIC0xMDMwLDcwICs5NDgsNiBAQCBQYXNzUmVmPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0
cmFjdG9yOjp2YWx1ZUZvckZpbHRlcihjb25zdCBSZW5kZXJPYmplY3QqIHJlbgogICAgICAgICAg
ICAgZmlsdGVyVmFsdWUtPmFwcGVuZCh2YWx1ZUZvclNoYWRvdygmc2hhZG93RGF0YSwgQ1NTUHJv
cGVydHlUZXh0U2hhZG93LCBzdHlsZSwgYWRqdXN0KSk7CiAgICAgICAgICAgICBicmVhazsKICAg
ICAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVy
YXRpb246OlZBTElEQVRFRF9DVVNUT006Ci0gICAgICAgICAgICAvLyBWYWxpZGF0ZWRDdXN0b21G
aWx0ZXJPcGVyYXRpb24gaXMgbm90IHN1cHBvc2VkIHRvIGVuZCB1cCBpbiB0aGUgUmVuZGVyU3R5
bGUuCi0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgIGJyZWFr
OwotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOiB7Ci0gICAgICAgICAgICBD
dXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbU9wZXJhdGlvbiA9IHN0YXRpY19jYXN0PEN1c3Rv
bUZpbHRlck9wZXJhdGlvbio+KGZpbHRlck9wZXJhdGlvbik7Ci0gICAgICAgICAgICBmaWx0ZXJW
YWx1ZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoV2ViS2l0Q1NTRmlsdGVyVmFsdWU6
OkN1c3RvbUZpbHRlck9wZXJhdGlvbik7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIC8vIFRo
ZSBvdXRwdXQgc2hvdWxkIGJlIHZlcmJvc2UsIGV2ZW4gaWYgdGhlIHZhbHVlcyBhcmUgdGhlIGRl
ZmF1bHQgb25lcy4KLSAgICAgICAgICAgIAotICAgICAgICAgICAgQVNTRVJUKGN1c3RvbU9wZXJh
dGlvbi0+cHJvZ3JhbSgpKTsKLSAgICAgICAgICAgIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSog
cHJvZ3JhbSA9IHN0YXRpY19jYXN0PFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSo+KGN1c3RvbU9w
ZXJhdGlvbi0+cHJvZ3JhbSgpKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgUmVmUHRyPENT
U1ZhbHVlTGlzdD4gc2hhZGVyc0xpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJh
dGVkKCk7Ci0gICAgICAgICAgICBpZiAocHJvZ3JhbS0+dmVydGV4U2hhZGVyKCkpCi0gICAgICAg
ICAgICAgICAgc2hhZGVyc0xpc3QtPmFwcGVuZChwcm9ncmFtLT52ZXJ0ZXhTaGFkZXIoKS0+Y3Nz
VmFsdWUoKSk7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgc2hhZGVyc0xpc3Qt
PmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25l
KSk7Ci0KLSAgICAgICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyBt
aXhTZXR0aW5ncyA9IHByb2dyYW0tPm1peFNldHRpbmdzKCk7Ci0gICAgICAgICAgICBpZiAocHJv
Z3JhbS0+ZnJhZ21lbnRTaGFkZXIoKSkgewotICAgICAgICAgICAgICAgIGlmIChwcm9ncmFtLT5w
cm9ncmFtVHlwZSgpID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJFKSB7Ci0g
ICAgICAgICAgICAgICAgICAgIFJlZlB0cjxXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlPiBtaXhG
dW5jdGlvbiA9IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU6OmNyZWF0ZSgpOwotICAgICAgICAg
ICAgICAgICAgICBtaXhGdW5jdGlvbi0+YXBwZW5kKHByb2dyYW0tPmZyYWdtZW50U2hhZGVyKCkt
PmNzc1ZhbHVlKCkpOwotICAgICAgICAgICAgICAgICAgICBtaXhGdW5jdGlvbi0+YXBwZW5kKGNz
c1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKG1peFNldHRpbmdzLmJsZW5kTW9kZSkpOwotICAgICAg
ICAgICAgICAgICAgICBtaXhGdW5jdGlvbi0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZh
bHVlKG1peFNldHRpbmdzLmNvbXBvc2l0ZU9wZXJhdG9yKSk7Ci0gICAgICAgICAgICAgICAgICAg
IHNoYWRlcnNMaXN0LT5hcHBlbmQobWl4RnVuY3Rpb24ucmVsZWFzZSgpKTsKLSAgICAgICAgICAg
ICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgc2hhZGVyc0xpc3QtPmFwcGVuZChwcm9n
cmFtLT5mcmFnbWVudFNoYWRlcigpLT5jc3NWYWx1ZSgpKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBzaGFkZXJzTGlzdC0+YXBwZW5kKGNzc1ZhbHVl
UG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpKTsKLQotICAgICAgICAg
ICAgZmlsdGVyVmFsdWUtPmFwcGVuZChzaGFkZXJzTGlzdC5yZWxlYXNlKCkpOwotICAgICAgICAg
ICAgCi0gICAgICAgICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBtZXNoUGFyYW1ldGVycyA9IENT
U1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAgICAgICAgICAgIG1lc2hQYXJh
bWV0ZXJzLT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoY3VzdG9tT3BlcmF0aW9u
LT5tZXNoQ29sdW1ucygpLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwotICAgICAg
ICAgICAgbWVzaFBhcmFtZXRlcnMtPmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShj
dXN0b21PcGVyYXRpb24tPm1lc2hSb3dzKCksIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVS
KSk7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIC8vIEZJWE1FOiBUaGUgc3BlY2lmaWNhdGlv
biBkb2Vzbid0IGhhdmUgYW55ICJhdHRhY2hlZCIgaWRlbnRpZmllci4gU2hvdWxkIHdlIGFkZCBv
bmU/Ci0gICAgICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzI3MDAKLSAgICAgICAgICAgIGlmIChjdXN0b21PcGVyYXRpb24tPm1lc2hUeXBlKCkgPT0g
TWVzaFR5cGVEZXRhY2hlZCkKLSAgICAgICAgICAgICAgICBtZXNoUGFyYW1ldGVycy0+YXBwZW5k
KGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZURldGFjaGVkKSk7
Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQobWVzaFBhcmFt
ZXRlcnMucmVsZWFzZSgpKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgY29uc3QgQ3VzdG9t
RmlsdGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVycyA9IGN1c3RvbU9wZXJhdGlvbi0+cGFyYW1l
dGVycygpOwotICAgICAgICAgICAgc2l6ZV90IHBhcmFtZXRlcnNTaXplID0gcGFyYW1ldGVycy5z
aXplKCk7Ci0gICAgICAgICAgICBpZiAoIXBhcmFtZXRlcnNTaXplKQotICAgICAgICAgICAgICAg
IGJyZWFrOwotICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyYW1ldGVyc0NTU1Zh
bHVlID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVDb21tYVNlcGFyYXRlZCgpOwotICAgICAgICAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzU2l6ZTsgKytpKSB7Ci0gICAgICAgICAg
ICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBwYXJhbWV0ZXIgPSBwYXJhbWV0ZXJz
LmF0KGkpLmdldCgpOwotICAgICAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcmFt
ZXRlckNTU05hbWVBbmRWYWx1ZSA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQo
KTsKLSAgICAgICAgICAgICAgICBwYXJhbWV0ZXJDU1NOYW1lQW5kVmFsdWUtPmFwcGVuZChjc3NW
YWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShwYXJhbWV0ZXItPm5hbWUoKSwgQ1NTUHJpbWl0aXZlVmFs
dWU6OkNTU19TVFJJTkcpKTsKLSAgICAgICAgICAgICAgICBwYXJhbWV0ZXJDU1NOYW1lQW5kVmFs
dWUtPmFwcGVuZCh2YWx1ZUZvckN1c3RvbUZpbHRlclBhcmFtZXRlcihyZW5kZXJlciwgc3R5bGUs
IHBhcmFtZXRlcikpOwotICAgICAgICAgICAgICAgIHBhcmFtZXRlcnNDU1NWYWx1ZS0+YXBwZW5k
KHBhcmFtZXRlckNTU05hbWVBbmRWYWx1ZS5yZWxlYXNlKCkpOwotICAgICAgICAgICAgfQotICAg
ICAgICAgICAgCi0gICAgICAgICAgICBmaWx0ZXJWYWx1ZS0+YXBwZW5kKHBhcmFtZXRlcnNDU1NW
YWx1ZS5yZWxlYXNlKCkpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSNlbmRpZgog
ICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgZmlsdGVyVmFsdWUgPSBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZTo6Y3JlYXRlKFdlYktpdENTU0ZpbHRlclZhbHVlOjpVbmtub3duRmlsdGVyT3BlcmF0
aW9uKTsKICAgICAgICAgICAgIGJyZWFrOwpAQCAtMjk2OSw3ICsyODIzLDcgQEAgUGFzc1JlZlB0
cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZShDU1NQcm9w
ZXJ0eUlEIHByb3BlcnQKICNlbmRpZgogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEZpbHRlcjoKLSAgICAgICAgICAgIHJldHVybiB2YWx1ZUZv
ckZpbHRlcihyZW5kZXJlciwgc3R5bGUuZ2V0KCksIHN0eWxlLT5maWx0ZXIoKSk7CisgICAgICAg
ICAgICByZXR1cm4gdmFsdWVGb3JGaWx0ZXIoc3R5bGUuZ2V0KCksIHN0eWxlLT5maWx0ZXIoKSk7
CiAjZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQogICAgICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0QmxlbmRNb2RlOgpAQCAtMzA5Myw5ICsyOTQ3LDYgQEAgUGFzc1JlZlB0cjxD
U1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0
eUlEIHByb3BlcnQKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIC8qIE90aGVyIHVuaW1w
bGVtZW50ZWQgcHJvcGVydGllcyAqLwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eUdlb21ldHJ5OgotI2VuZGlmCiAgICAgICAgIGNhc2UgQ1NTUHJvcGVy
dHlQYWdlOiAvLyBmb3IgQHBhZ2UKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVF1b3RlczogLy8g
RklYTUU6IG5lZWRzIGltcGxlbWVudGF0aW9uCiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlTaXpl
OiAvLyBmb3IgQHBhZ2UKQEAgLTMxMTYsMTAgKzI5NjcsNiBAQCBQYXNzUmVmUHRyPENTU1ZhbHVl
PiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJv
cGVydAogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VHJhbnNmb3JtT3JpZ2luWDoKICAg
ICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRyYW5zZm9ybU9yaWdpblk6CiAgICAgICAgIGNh
c2UgQ1NTUHJvcGVydHlXZWJraXRUcmFuc2Zvcm1PcmlnaW5aOgotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eU1peDoKLSAgICAgICAgY2FzZSBDU1NQcm9w
ZXJ0eVBhcmFtZXRlcnM6Ci0jZW5kaWYKICAgICAgICAgICAgIGJyZWFrOwogCiAjaWYgRU5BQkxF
KENTU19ERVZJQ0VfQURBUFRBVElPTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21w
dXRlZFN0eWxlRGVjbGFyYXRpb24uaAppbmRleCBlZmZhMDMxLi45OTgxY2YyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5oCkBAIC00MSwx
MSArNDEsNiBAQCBjbGFzcyBTaGFkb3dEYXRhOwogY2xhc3MgU3R5bGVQcm9wZXJ0aWVzOwogY2xh
c3MgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZDsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLWNs
YXNzIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcjsKLWNsYXNzIEN1c3RvbUZpbHRlclBhcmFt
ZXRlcjsKLSNlbmRpZgotCiBlbnVtIEVVcGRhdGVMYXlvdXQgeyBEb05vdFVwZGF0ZUxheW91dCA9
IGZhbHNlLCBVcGRhdGVMYXlvdXQgPSB0cnVlIH07CiAKIGVudW0gQWRqdXN0UGl4ZWxWYWx1ZXNG
b3JDb21wdXRlZFN0eWxlIHsgQWRqdXN0UGl4ZWxWYWx1ZXMsIERvTm90QWRqdXN0UGl4ZWxWYWx1
ZXMgfTsKQEAgLTY0LDcgKzU5LDcgQEAgcHVibGljOgogICAgIGJvb2wgcHJvcGVydHlNYXRjaGVz
KENTU1Byb3BlcnR5SUQsIGNvbnN0IENTU1ZhbHVlKikgY29uc3Q7CiAKICNpZiBFTkFCTEUoQ1NT
X0ZJTFRFUlMpCi0gICAgc3RhdGljIFBhc3NSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yRmlsdGVyKGNv
bnN0IFJlbmRlck9iamVjdCosIGNvbnN0IFJlbmRlclN0eWxlKiwgY29uc3QgRmlsdGVyT3BlcmF0
aW9ucyYsIEFkanVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSA9IEFkanVzdFBpeGVsVmFs
dWVzKTsKKyAgICBzdGF0aWMgUGFzc1JlZjxDU1NWYWx1ZT4gdmFsdWVGb3JGaWx0ZXIoY29uc3Qg
UmVuZGVyU3R5bGUqLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiwgQWRqdXN0UGl4ZWxWYWx1ZXNG
b3JDb21wdXRlZFN0eWxlID0gQWRqdXN0UGl4ZWxWYWx1ZXMpOwogI2VuZGlmCiAKIHByaXZhdGU6
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55LmluIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueS5pbgppbmRleCA4YWEwYmMzLi5lYjExYmUzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55LmluCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkuaW4KQEAgLTI5MSwxNSArMjkxLDYgQEAgc3RhdGljIGlu
bGluZSBib29sIGlzQ1NTVG9rZW5BU3RyaW5nKGludCB5eXR5cGUpCiAKICNlbmRpZgogCi0jaWYg
RU5BQkxFX0NTU19TSEFERVJTCi0KLSV0b2tlbiBXRUJLSVRfRklMVEVSX1JVTEVfU1lNCi0KLSV0
eXBlIDxydWxlPiBmaWx0ZXIKLSVkZXN0cnVjdG9yIHsgaWYgKCQkKSAkJC0+ZGVyZWYoKTsgfSBm
aWx0ZXIKLQotI2VuZGlmCi0KICNpZiBFTkFCTEVfU0hBRE9XX0RPTQogCiAldG9rZW4gSE9TVF9T
WU0KQEAgLTQyMSw5ICs0MTIsNiBAQCB2YWxpZF9ydWxlOgogI2lmIEVOQUJMRV9DU1NfREVWSUNF
X0FEQVBUQVRJT04KICAgfCB2aWV3cG9ydAogI2VuZGlmCi0jaWYgRU5BQkxFX0NTU19TSEFERVJT
Ci0gIHwgZmlsdGVyCi0jZW5kaWYKICAgOwogCiBydWxlOgpAQCAtNDcyLDkgKzQ2MCw2IEBAIGJs
b2NrX3ZhbGlkX3J1bGU6CiAjaWYgRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTgogICB8IHZp
ZXdwb3J0CiAjZW5kaWYKLSNpZiBFTkFCTEVfQ1NTX1NIQURFUlMKLSAgfCBmaWx0ZXIKLSNlbmRp
ZgogICA7CiAKIGJsb2NrX3J1bGU6IGJsb2NrX3ZhbGlkX3J1bGUgfCBpbnZhbGlkX3J1bGUgeyAk
JCA9IG51bGxwdHI7IH0gfCBpbnZhbGlkX2F0IHsgJCQgPSBudWxscHRyOyB9IHwgbmFtZXNwYWNl
IHsgJCQgPSBudWxscHRyOyB9IHwgaW1wb3J0IHwgcmVnaW9uIDsKQEAgLTk2NSwyNCArOTUwLDYg
QEAgcmVnaW9uOgogICAgIH0KIDsKIAotI2lmIEVOQUJMRV9DU1NfU0hBREVSUwotCi1iZWZvcmVf
ZmlsdGVyX3J1bGU6Ci0gICAgLyogZW1wdHkgKi8gewotICAgICAgICBwYXJzZXItPm1hcmtSdWxl
SGVhZGVyU3RhcnQoQ1NTUnVsZVNvdXJjZURhdGE6OkZJTFRFUl9SVUxFKTsKLSAgICAgICAgcGFy
c2VyLT5tX2luRmlsdGVyUnVsZSA9IHRydWU7Ci0gICAgfQotICAgIDsKLQotZmlsdGVyOgotICAg
IGJlZm9yZV9maWx0ZXJfcnVsZSBXRUJLSVRfRklMVEVSX1JVTEVfU1lNIG1heWJlX3NwYWNlIElE
RU5UIGF0X3J1bGVfaGVhZGVyX2VuZF9tYXliZV9zcGFjZSAneycgYXRfcnVsZV9ib2R5X3N0YXJ0
IG1heWJlX3NwYWNlX2JlZm9yZV9kZWNsYXJhdGlvbiBkZWNsYXJhdGlvbl9saXN0IGNsb3Npbmdf
YnJhY2UgewotICAgICAgICBwYXJzZXItPm1faW5GaWx0ZXJSdWxlID0gZmFsc2U7Ci0gICAgICAg
ICQkID0gcGFyc2VyLT5jcmVhdGVGaWx0ZXJSdWxlKCQ0KS5sZWFrUmVmKCk7Ci0gICAgfQotICAg
IDsKLQotI2VuZGlmCi0KIGNvbWJpbmF0b3I6CiAgICAgJysnIG1heWJlX3NwYWNlIHsgJCQgPSBD
U1NTZWxlY3Rvcjo6RGlyZWN0QWRqYWNlbnQ7IH0KICAgfCAnficgbWF5YmVfc3BhY2UgeyAkJCA9
IENTU1NlbGVjdG9yOjpJbmRpcmVjdEFkamFjZW50OyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3Bw
CmluZGV4IDVjMWMwNTQuLjE0ZTA3Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCkBAIC0x
MDEsMTMgKzEwMSw2IEBACiAjaW5jbHVkZSAiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCIKICNlbmRp
ZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIldlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCIKLSNp
bmNsdWRlICJXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NT
U2hhZGVyVmFsdWUuaCIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKERBU0hCT0FSRF9TVVBQT1JUKQog
I2luY2x1ZGUgIkRhc2hib2FyZFJlZ2lvbi5oIgogI2VuZGlmCkBAIC0yNTIsNyArMjQ1LDYgQEAg
Q1NTUGFyc2VyQ29udGV4dDo6Q1NTUGFyc2VyQ29udGV4dChDU1NQYXJzZXJNb2RlIG1vZGUsIGNv
bnN0IFVSTCYgYmFzZVVSTCkKICAgICA6IGJhc2VVUkwoYmFzZVVSTCkKICAgICAsIG1vZGUobW9k
ZSkKICAgICAsIGlzSFRNTERvY3VtZW50KGZhbHNlKQotICAgICwgaXNDU1NDdXN0b21GaWx0ZXJF
bmFibGVkKGZhbHNlKQogICAgICwgaXNDU1NTdGlja3lQb3NpdGlvbkVuYWJsZWQoZmFsc2UpCiAg
ICAgLCBpc0NTU1JlZ2lvbnNFbmFibGVkKGZhbHNlKQogICAgICwgaXNDU1NDb21wb3NpdGluZ0Vu
YWJsZWQoZmFsc2UpCkBAIC0yNzQsNyArMjY2LDYgQEAgQ1NTUGFyc2VyQ29udGV4dDo6Q1NTUGFy
c2VyQ29udGV4dChEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IFVSTCYgYmFzZVVSTCwgY29uc3QK
ICAgICAsIGNoYXJzZXQoY2hhcnNldCkKICAgICAsIG1vZGUoZG9jdW1lbnQuaW5RdWlya3NNb2Rl
KCkgPyBDU1NRdWlya3NNb2RlIDogQ1NTU3RyaWN0TW9kZSkKICAgICAsIGlzSFRNTERvY3VtZW50
KGRvY3VtZW50LmlzSFRNTERvY3VtZW50KCkpCi0gICAgLCBpc0NTU0N1c3RvbUZpbHRlckVuYWJs
ZWQoZG9jdW1lbnQuc2V0dGluZ3MoKSA/IGRvY3VtZW50LnNldHRpbmdzKCktPmlzQ1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZCgpIDogZmFsc2UpCiAgICAgLCBpc0NTU1N0aWNreVBvc2l0aW9uRW5hYmxl
ZChkb2N1bWVudC5jc3NTdGlja3lQb3NpdGlvbkVuYWJsZWQoKSkKICAgICAsIGlzQ1NTUmVnaW9u
c0VuYWJsZWQoZG9jdW1lbnQuY3NzUmVnaW9uc0VuYWJsZWQoKSkKICAgICAsIGlzQ1NTQ29tcG9z
aXRpbmdFbmFibGVkKGRvY3VtZW50LmNzc0NvbXBvc2l0aW5nRW5hYmxlZCgpKQpAQCAtMjk3LDcg
KzI4OCw2IEBAIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBhLCBjb25z
dCBDU1NQYXJzZXJDb250ZXh0JiBiKQogICAgICAgICAmJiBhLmNoYXJzZXQgPT0gYi5jaGFyc2V0
CiAgICAgICAgICYmIGEubW9kZSA9PSBiLm1vZGUKICAgICAgICAgJiYgYS5pc0hUTUxEb2N1bWVu
dCA9PSBiLmlzSFRNTERvY3VtZW50Ci0gICAgICAgICYmIGEuaXNDU1NDdXN0b21GaWx0ZXJFbmFi
bGVkID09IGIuaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkCiAgICAgICAgICYmIGEuaXNDU1NTdGlj
a3lQb3NpdGlvbkVuYWJsZWQgPT0gYi5pc0NTU1N0aWNreVBvc2l0aW9uRW5hYmxlZAogICAgICAg
ICAmJiBhLmlzQ1NTUmVnaW9uc0VuYWJsZWQgPT0gYi5pc0NTU1JlZ2lvbnNFbmFibGVkCiAgICAg
ICAgICYmIGEuaXNDU1NDb21wb3NpdGluZ0VuYWJsZWQgPT0gYi5pc0NTU0NvbXBvc2l0aW5nRW5h
YmxlZApAQCAtMzI0LDkgKzMxNCw2IEBAIENTU1BhcnNlcjo6Q1NTUGFyc2VyKGNvbnN0IENTU1Bh
cnNlckNvbnRleHQmIGNvbnRleHQpCiAgICAgLCBtX2hhZFN5bnRhY3RpY2FsbHlWYWxpZENTU1J1
bGUoZmFsc2UpCiAgICAgLCBtX2xvZ0Vycm9ycyhmYWxzZSkKICAgICAsIG1faWdub3JlRXJyb3Jz
SW5EZWNsYXJhdGlvbihmYWxzZSkKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgLCBtX2lu
RmlsdGVyUnVsZShmYWxzZSkKLSNlbmRpZgogICAgICwgbV9kZWZhdWx0TmFtZXNwYWNlKHN0YXJB
dG9tKQogICAgICwgbV9wYXJzZWRUZXh0UHJlZml4TGVuZ3RoKDApCiAgICAgLCBtX3Byb3BlcnR5
UmFuZ2UoVUlOVF9NQVgsIFVJTlRfTUFYKQpAQCAtMjI5OCwyNSArMjI4NSw4IEBAIGJvb2wgQ1NT
UGFyc2VyOjpwYXJzZVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcElkLCBib29sIGltcG9ydGFudCkK
ICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIENTU1Byb3BlcnR5U3JjOiAvLyBPbmx5IHVzZWQg
d2l0aGluIEBmb250LWZhY2UgYW5kIEAtd2Via2l0LWZpbHRlciwgc28gY2Fubm90IHVzZSBpbmhl
cml0IHwgaW5pdGlhbCBvciBiZSAhaW1wb3J0YW50LiBUaGlzIGlzIGEgbGlzdCBvZiB1cmxzIG9y
IGxvY2FsIHJlZmVyZW5jZXMuCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBpZiAo
bV9pbkZpbHRlclJ1bGUpCi0gICAgICAgICAgICByZXR1cm4gcGFyc2VGaWx0ZXJSdWxlU3JjKCk7
Ci0jZW5kaWYKICAgICAgICAgcmV0dXJuIHBhcnNlRm9udEZhY2VTcmMoKTsKIAotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBjYXNlIENTU1Byb3BlcnR5TWl4OgotICAgICAgICAvLyBUaGUg
bWl4IHByb3BlcnR5IGlzIGp1c3Qgc3VwcG9ydGVkIGluc2lkZSBvZiBhbiBAZmlsdGVyIHJ1bGUu
Ci0gICAgICAgIGlmICghbV9pbkZpbHRlclJ1bGUpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgICAgIHJldHVybiBwYXJzZUZpbHRlclJ1bGVNaXgoKTsKLSAgICBjYXNlIENTU1Byb3Bl
cnR5UGFyYW1ldGVyczoKLSAgICAgICAgLy8gVGhlIHBhcmFtZXRlcnMgcHJvcGVydHkgaXMganVz
dCBzdXBwb3J0ZWQgaW5zaWRlIG9mIGFuIEBmaWx0ZXIgcnVsZS4KLSAgICAgICAgaWYgKCFtX2lu
RmlsdGVyUnVsZSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgcmV0dXJuIHBh
cnNlRmlsdGVyUnVsZVBhcmFtZXRlcnMoKTsKLSNlbmRpZgotCiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVVuaWNvZGVSYW5nZToKICAgICAgICAgcmV0dXJuIHBhcnNlRm9udEZhY2VVbmljb2RlUmFuZ2Uo
KTsKIApAQCAtMjkwMCwxMCArMjg3MCw2IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZhbHVlKENT
U1Byb3BlcnR5SUQgcHJvcElkLCBib29sIGltcG9ydGFudCkKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogICAgIGNhc2UgQ1NTUHJvcGVydHlQYWdlOgogICAgICAgICByZXR1cm4gcGFyc2VQYWdlKHBy
b3BJZCwgaW1wb3J0YW50KTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBDU1NQ
cm9wZXJ0eUdlb21ldHJ5OgotICAgICAgICByZXR1cm4gbV9pbkZpbHRlclJ1bGUgPyBwYXJzZUdl
b21ldHJ5KHByb3BJZCwgdmFsdWUsIGltcG9ydGFudCkgOiBmYWxzZTsKLSNlbmRpZgogICAgIGNh
c2UgQ1NTUHJvcGVydHlGb250U3RyZXRjaDoKICAgICBjYXNlIENTU1Byb3BlcnR5VGV4dExpbmVU
aHJvdWdoOgogICAgIGNhc2UgQ1NTUHJvcGVydHlUZXh0T3ZlcmxpbmU6CkBAIC05MTE1LDU4OSAr
OTA4MSw4IEBAIHN0YXRpYyB2b2lkIGZpbHRlckluZm9Gb3JOYW1lKGNvbnN0IENTU1BhcnNlclN0
cmluZyYgbmFtZSwgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6CiAgICAgICAgIGZpbHRlclR5cGUgPSBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6RHJvcFNoYWRvd0ZpbHRlck9wZXJhdGlvbjsKICAgICAgICAg
bWF4aW11bUFyZ3VtZW50Q291bnQgPSA0OyAgLy8geC1vZmZzZXQsIHktb2Zmc2V0LCBibHVyLXJh
ZGl1cywgY29sb3IgLS0gc3ByZWFkIGFuZCBpbnNldCBzdHlsZSBub3QgYWxsb3dlZC4KICAgICB9
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNl
KG5hbWUsICJjdXN0b20oIikpCi0gICAgICAgIGZpbHRlclR5cGUgPSBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZTo6Q3VzdG9tRmlsdGVyT3BlcmF0aW9uOwotI2VuZGlmCi19Ci0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi1zdGF0aWMgYm9vbCBhY2NlcHRDb21tYU9wZXJhdG9yKENTU1BhcnNlclZhbHVl
TGlzdCogYXJnc0xpc3QpCi17Ci0gICAgaWYgKENTU1BhcnNlclZhbHVlKiBhcmcgPSBhcmdzTGlz
dC0+Y3VycmVudCgpKSB7Ci0gICAgICAgIGlmICghaXNDb21tYShhcmcpKQotICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgICAgICBhcmdzTGlzdC0+bmV4dCgpOwotICAgIH0KLSAgICByZXR1
cm4gdHJ1ZTsKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+IENT
U1BhcnNlcjo6cGFyc2VDdXN0b21GaWx0ZXJBcnJheUZ1bmN0aW9uKENTU1BhcnNlclZhbHVlKiB2
YWx1ZSkKLXsKLSAgICBBU1NFUlQodmFsdWUtPnVuaXQgPT0gQ1NTUGFyc2VyVmFsdWU6OkZ1bmN0
aW9uICYmIHZhbHVlLT5mdW5jdGlvbik7Ci0KLSAgICBpZiAoIWVxdWFsSWdub3JpbmdDYXNlKHZh
bHVlLT5mdW5jdGlvbi0+bmFtZSwgImFycmF5KCIpKQotICAgICAgICByZXR1cm4gMDsKLQotICAg
IENTU1BhcnNlclZhbHVlTGlzdCogYXJyYXlBcmdzUGFyc2VyVmFsdWVMaXN0ID0gdmFsdWUtPmZ1
bmN0aW9uLT5hcmdzLmdldCgpOwotICAgIGlmICghYXJyYXlBcmdzUGFyc2VyVmFsdWVMaXN0IHx8
ICFhcnJheUFyZ3NQYXJzZXJWYWx1ZUxpc3QtPnNpemUoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0K
LSAgICAvLyBhcnJheSgpIHZhbHVlcyBhcmUgY29tbWEgc2VwYXJhdGVkLgotICAgIFJlZlB0cjxX
ZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+IGFycmF5RnVuY3Rpb24gPSBXZWJLaXRDU1NBcnJh
eUZ1bmN0aW9uVmFsdWU6OmNyZWF0ZSgpOwotICAgIHdoaWxlICh0cnVlKSB7Ci0gICAgICAgIC8v
IFdlIHBhcnNlIHBhaXJzIDxWYWx1ZSwgQ29tbWE+IGF0IGVhY2ggc3RlcC4KLSAgICAgICAgQ1NT
UGFyc2VyVmFsdWUqIGN1cnJlbnRQYXJzZXJWYWx1ZSA9IGFycmF5QXJnc1BhcnNlclZhbHVlTGlz
dC0+Y3VycmVudCgpOwotICAgICAgICBpZiAoIWN1cnJlbnRQYXJzZXJWYWx1ZSB8fCAhdmFsaWRV
bml0KGN1cnJlbnRQYXJzZXJWYWx1ZSwgRk51bWJlciwgQ1NTU3RyaWN0TW9kZSkpCi0gICAgICAg
ICAgICByZXR1cm4gMDsKLQotICAgICAgICBSZWZQdHI8Q1NTVmFsdWU+IGFycmF5VmFsdWUgPSBj
c3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShjdXJyZW50UGFyc2VyVmFsdWUtPmZWYWx1ZSwgQ1NT
UHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpOwotICAgICAgICBhcnJheUZ1bmN0aW9uLT5hcHBl
bmQoYXJyYXlWYWx1ZS5yZWxlYXNlKCkpOwotCi0gICAgICAgIENTU1BhcnNlclZhbHVlKiBuZXh0
UGFyc2VyVmFsdWUgPSBhcnJheUFyZ3NQYXJzZXJWYWx1ZUxpc3QtPm5leHQoKTsKLSAgICAgICAg
aWYgKCFuZXh0UGFyc2VyVmFsdWUpCi0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICBpZiAo
IWlzQ29tbWEobmV4dFBhcnNlclZhbHVlKSkKLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAg
ICAgIGFycmF5QXJnc1BhcnNlclZhbHVlTGlzdC0+bmV4dCgpOwotICAgIH0KLQotICAgIHJldHVy
biBhcnJheUZ1bmN0aW9uOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWU+IENTU1BhcnNlcjo6cGFyc2VNYXRWYWx1ZShDU1NQYXJzZXJWYWx1ZSogdmFsdWUpCi17Ci0g
ICAgaWYgKHZhbHVlLT51bml0ICE9IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiB8fCAhdmFsdWUt
PmZ1bmN0aW9uKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIHVuc2lnbmVkIG51bWJlck9mVmFs
dWVzID0gMDsKLSAgICBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UodmFsdWUtPmZ1bmN0aW9uLT5uYW1l
LCAibWF0MigiKSkKLSAgICAgICAgbnVtYmVyT2ZWYWx1ZXMgPSA0OwotICAgIGVsc2UgaWYgKGVx
dWFsSWdub3JpbmdDYXNlKHZhbHVlLT5mdW5jdGlvbi0+bmFtZSwgIm1hdDMoIikpCi0gICAgICAg
IG51bWJlck9mVmFsdWVzID0gOTsKLSAgICBlbHNlIGlmIChlcXVhbElnbm9yaW5nQ2FzZSh2YWx1
ZS0+ZnVuY3Rpb24tPm5hbWUsICJtYXQ0KCIpKQotICAgICAgICBudW1iZXJPZlZhbHVlcyA9IDE2
OwotICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBDU1NQYXJzZXJWYWx1ZUxpc3Qq
IGFyZ3MgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0gICAgaWYgKCFhcmdzIHx8IGFy
Z3MtPnNpemUoKSAhPSAobnVtYmVyT2ZWYWx1ZXMgKiAyIC0gMSkpCi0gICAgICAgIHJldHVybiAw
OwotCi0gICAgUmVmUHRyPFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU+IG1hdFZhbHVlTGlzdCA9
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU6OmNyZWF0ZSgpOwotICAgIENTU1BhcnNlclZhbHVl
KiBhcmcgPSBhcmdzLT5jdXJyZW50KCk7Ci0gICAgd2hpbGUgKGFyZykgewotICAgICAgICBpZiAo
IXZhbGlkVW5pdChhcmcsIEZOdW1iZXIsIENTU1N0cmljdE1vZGUpKQotICAgICAgICAgICAgcmV0
dXJuIDA7Ci0gICAgICAgIG1hdFZhbHVlTGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0
ZVZhbHVlKGFyZy0+ZlZhbHVlLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwotICAg
ICAgICBhcmcgPSBhcmdzLT5uZXh0KCk7Ci0KLSAgICAgICAgaWYgKCFhcmcpCi0gICAgICAgICAg
ICBicmVhazsKLQotICAgICAgICBpZiAoIWlzQ29tbWEoYXJnKSkKLSAgICAgICAgICAgIHJldHVy
biAwOwotCi0gICAgICAgIGFyZyA9IGFyZ3MtPm5leHQoKTsKLSAgICB9Ci0KLSAgICBpZiAoIW1h
dFZhbHVlTGlzdCB8fCBtYXRWYWx1ZUxpc3QtPmxlbmd0aCgpICE9IG51bWJlck9mVmFsdWVzKQot
ICAgICAgICByZXR1cm4gMDsKLQotICAgIHJldHVybiBtYXRWYWx1ZUxpc3QucmVsZWFzZSgpOwot
fQotCi1QYXNzUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU+IENTU1BhcnNlcjo6cGFy
c2VNaXhGdW5jdGlvbihDU1NQYXJzZXJWYWx1ZSogdmFsdWUpCi17Ci0gICAgQVNTRVJUKHZhbHVl
LT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiAmJiB2YWx1ZS0+ZnVuY3Rpb24pOwot
Ci0gICAgaWYgKCFlcXVhbElnbm9yaW5nQ2FzZSh2YWx1ZS0+ZnVuY3Rpb24tPm5hbWUsICJtaXgo
IikpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzTGlz
dCA9IHZhbHVlLT5mdW5jdGlvbi0+YXJncy5nZXQoKTsKLSAgICBpZiAoIWFyZ3NMaXN0KQotICAg
ICAgICByZXR1cm4gMDsKLQotICAgIHVuc2lnbmVkIG51bUFyZ3MgPSBhcmdzTGlzdC0+c2l6ZSgp
OwotICAgIGlmIChudW1BcmdzIDwgMSB8fCBudW1BcmdzID4gMykKLSAgICAgICAgcmV0dXJuIDA7
Ci0gICAgCi0gICAgUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU+IG1peEZ1bmN0aW9u
ID0gV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZTo6Y3JlYXRlKCk7Ci0KLSAgICBib29sIGhhc0Js
ZW5kTW9kZSA9IGZhbHNlOwotICAgIGJvb2wgaGFzQWxwaGFDb21wb3NpdGluZyA9IGZhbHNlOwot
Ci0gICAgZm9yIChDU1NQYXJzZXJWYWx1ZSogYXJnID0gYXJnc0xpc3QtPmN1cnJlbnQoKTsgYXJn
OyBhcmcgPSBhcmdzTGlzdC0+bmV4dCgpKSB7Ci0gICAgICAgIFJlZlB0cjxDU1NWYWx1ZT4gdmFs
dWU7Ci0KLSAgICAgICAgdW5zaWduZWQgYXJnTnVtYmVyID0gYXJnc0xpc3QtPmN1cnJlbnRJbmRl
eCgpOwotICAgICAgICBpZiAoIWFyZ051bWJlcikgewotICAgICAgICAgICAgaWYgKGFyZy0+dW5p
dCA9PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1VSSSkgewotICAgICAgICAgICAgICAgIFVSTCBz
aGFkZXJVUkwgPSBjb21wbGV0ZVVSTChhcmctPnN0cmluZyk7Ci0gICAgICAgICAgICAgICAgdmFs
dWUgPSBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y3JlYXRlKHNoYWRlclVSTC5zdHJpbmcoKSk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSBpZiAoYXJnTnVtYmVyID09IDEgfHwgYXJnTnVt
YmVyID09IDIpIHsKLSAgICAgICAgICAgIGlmICghaGFzQmxlbmRNb2RlICYmIGlzQmxlbmRNb2Rl
KGFyZy0+aWQpKSB7Ci0gICAgICAgICAgICAgICAgaGFzQmxlbmRNb2RlID0gdHJ1ZTsKLSAgICAg
ICAgICAgICAgICB2YWx1ZSA9IGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShh
cmctPmlkKTsKLSAgICAgICAgICAgIH0gZWxzZSBpZiAoIWhhc0FscGhhQ29tcG9zaXRpbmcgJiYg
aXNDb21wb3NpdGVPcGVyYXRvcihhcmctPmlkKSkgewotICAgICAgICAgICAgICAgIGhhc0FscGhh
Q29tcG9zaXRpbmcgPSB0cnVlOwotICAgICAgICAgICAgICAgIHZhbHVlID0gY3NzVmFsdWVQb29s
KCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKGFyZy0+aWQpOwotICAgICAgICAgICAgfQotICAgICAg
ICB9Ci0KLSAgICAgICAgaWYgKCF2YWx1ZSkKLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAg
ICAgIG1peEZ1bmN0aW9uLT5hcHBlbmQodmFsdWUucmVsZWFzZSgpKTsKLSAgICB9Ci0KLSAgICBy
ZXR1cm4gbWl4RnVuY3Rpb247CiB9CiAKLVBhc3NSZWZQdHI8Q1NTVmFsdWVMaXN0PiBDU1NQYXJz
ZXI6OnBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhDU1NQYXJzZXJWYWx1ZUxpc3QqIGFyZ3NM
aXN0KQotewotICAgIC8vCi0gICAgLy8gcGFyYW1zOiAgICAgIFs8cGFyYW0tZGVmPlssPHBhcmFt
LWRlZj4qXV0KLSAgICAvLyBwYXJhbS1kZWY6ICAgPHBhcmFtLW5hbWU+d3NwPHBhcmFtLXZhbHVl
PgotICAgIC8vIHBhcmFtLW5hbWU6ICA8aWRlbnQ+Ci0gICAgLy8gcGFyYW0tdmFsdWU6IHRydWV8
ZmFsc2Vbd3NwK3RydWV8ZmFsc2VdezAtM30gfAotICAgIC8vICAgICAgICAgICAgICA8bnVtYmVy
Plt3c3ArPG51bWJlcj5dezAtM30gfAotICAgIC8vICAgICAgICAgICAgICA8YXJyYXk+IHwKLSAg
ICAvLyAgICAgICAgICAgICAgPHRyYW5zZm9ybT4gfAotICAgIC8vICAgICAgICAgICAgICA8dGV4
dHVyZSg8dXJpPik+Ci0gICAgLy8gYXJyYXk6ICdhcnJheSgnPG51bWJlcj5bd3NwPG51bWJlcj5d
KicpJwotICAgIC8vIGNzcy0zZC10cmFuc2Zvcm06IDx0cmFuc2Zvcm0tZnVuY3Rpb24+O1s8dHJh
bnNmb3JtLWZ1bmN0aW9uPl0qCi0gICAgLy8gdHJhbnNmb3JtOiAgIDxjc3MtM2QtdHJhbnNmb3Jt
PiB8IDxtYXQ+Ci0gICAgLy8gbWF0OiAgICAgICAgICdtYXQyKCc8bnVtYmVyPigsPG51bWJlcj4p
ezN9JyknIHwgCi0gICAgLy8gICAgICAgICAgICAgICdtYXQzKCc8bnVtYmVyPigsPG51bWJlcj4p
ezh9JyknIHwgCi0gICAgLy8gICAgICAgICAgICAgICdtYXQ0KCc8bnVtYmVyPigsPG51bWJlcj4p
ezE1fScpJyApCi0gICAgLy8KLQotICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcmFtTGlzdCA9
IENTU1ZhbHVlTGlzdDo6Y3JlYXRlQ29tbWFTZXBhcmF0ZWQoKTsKLQotICAgIHdoaWxlIChDU1NQ
YXJzZXJWYWx1ZSogYXJnID0gYXJnc0xpc3QtPmN1cnJlbnQoKSkgewotICAgICAgICBpZiAoYXJn
LT51bml0ICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfSURFTlQpCi0gICAgICAgICAgICByZXR1
cm4gMDsKLQotICAgICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJhbWV0ZXIgPSBDU1NWYWx1
ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgICAgIHBhcmFtZXRlci0+YXBwZW5k
KGNyZWF0ZVByaW1pdGl2ZVN0cmluZ1ZhbHVlKGFyZykpOwotCi0gICAgICAgIGFyZyA9IGFyZ3NM
aXN0LT5uZXh0KCk7Ci0gICAgICAgIGlmICghYXJnKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0K
LSAgICAgICAgUmVmUHRyPENTU1ZhbHVlPiBwYXJhbWV0ZXJWYWx1ZTsKLQotICAgICAgICBpZiAo
YXJnLT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiAmJiBhcmctPmZ1bmN0aW9uKSB7
Ci0gICAgICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHBhcnNpbmcgZm9yIHRoZSBvdGhlciBw
YXJhbWV0ZXIgdHlwZXMuCi0gICAgICAgICAgICAvLyB0ZXh0dXJlczogaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDQyCi0gICAgICAgICAgICBpZiAoZXF1YWxJZ25v
cmluZ0Nhc2UoYXJnLT5mdW5jdGlvbi0+bmFtZSwgImFycmF5KCIpKSB7Ci0gICAgICAgICAgICAg
ICAgcGFyYW1ldGVyVmFsdWUgPSBwYXJzZUN1c3RvbUZpbHRlckFycmF5RnVuY3Rpb24oYXJnKTsK
LSAgICAgICAgICAgICAgICAvLyBUaGlzIHBhcnNpbmcgc3RlcCBvbmx5IGNvbnN1bWVzIGZ1bmN0
aW9uIGFyZ3VtZW50cywKLSAgICAgICAgICAgICAgICAvLyBhcmdzTGlzdCBpcyB0aGVyZWZvcmUg
bW92ZWQgZm9yd2FyZCBleHBsaWNpdGVseS4KLSAgICAgICAgICAgICAgICBhcmdzTGlzdC0+bmV4
dCgpOwotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAvLyBQYXJzZSBtYXQy
LCBtYXQzIGFuZCBtYXQ0IGZ1bmN0aW9ucy4KLSAgICAgICAgICAgICAgICBwYXJhbWV0ZXJWYWx1
ZSA9IHBhcnNlTWF0VmFsdWUoYXJnKTsKLSAgICAgICAgICAgICAgICBpZiAoIXBhcmFtZXRlclZh
bHVlICYmIGFyZykKLSAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyVmFsdWUgPSBwYXJzZUN1
c3RvbUZpbHRlclRyYW5zZm9ybShhcmdzTGlzdCk7Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAo
cGFyYW1ldGVyVmFsdWUpCi0gICAgICAgICAgICAgICAgICAgIGFyZ3NMaXN0LT5uZXh0KCk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSBpZiAodmFsaWRVbml0KGFyZywgRk51bWJlciwg
Q1NTU3RyaWN0TW9kZSkpIHsKLSAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcmFt
VmFsdWVMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOwotICAgICAg
ICAgICAgd2hpbGUgKGFyZykgewotICAgICAgICAgICAgICAgIC8vIElmIHdlIGhpdCBhIGNvbW1h
LCBpdCBtZWFucyB0aGF0IHdlIGZpbmlzaGVkIHRoaXMgcGFyYW1ldGVyJ3MgdmFsdWVzLgotICAg
ICAgICAgICAgICAgIGlmIChpc0NvbW1hKGFyZykpCi0gICAgICAgICAgICAgICAgICAgIGJyZWFr
OwotICAgICAgICAgICAgICAgIGlmICghdmFsaWRVbml0KGFyZywgRk51bWJlciwgQ1NTU3RyaWN0
TW9kZSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgICAgIHBh
cmFtVmFsdWVMaXN0LT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoYXJnLT5mVmFs
dWUsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKSk7Ci0gICAgICAgICAgICAgICAgYXJn
ID0gYXJnc0xpc3QtPm5leHQoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmICghcGFy
YW1WYWx1ZUxpc3QtPmxlbmd0aCgpIHx8IHBhcmFtVmFsdWVMaXN0LT5sZW5ndGgoKSA+IDQpCi0g
ICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICAgICBwYXJhbWV0ZXJWYWx1ZSA9IHBh
cmFtVmFsdWVMaXN0LnJlbGVhc2UoKTsKLSAgICAgICAgfQotICAgICAgICBpZiAoIXBhcmFtZXRl
clZhbHVlICYmIGFyZykgewotICAgICAgICAgICAgLy8gQWxsIHBhcmFtZXRlciB2YWx1ZXMgbmVl
ZCB0byBiZSBDU1NWYWx1ZUxpc3RzLgotICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4g
cGFyYW1WYWx1ZUxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0g
ICAgICAgICAgICBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbG9yVmFsdWUgPSBwYXJzZUNv
bG9yKGFyZyk7Ci0gICAgICAgICAgICBpZiAoIWNvbG9yVmFsdWUpCi0gICAgICAgICAgICAgICAg
cmV0dXJuIDA7Ci0gICAgICAgICAgICBwYXJhbVZhbHVlTGlzdC0+YXBwZW5kKGNvbG9yVmFsdWUu
cmVsZWFzZSgpKTsKLSAgICAgICAgICAgIHBhcmFtZXRlclZhbHVlID0gcGFyYW1WYWx1ZUxpc3Qu
cmVsZWFzZSgpOwotICAgICAgICAgICAgYXJnID0gYXJnc0xpc3QtPm5leHQoKTsKLSAgICAgICAg
fQotCi0gICAgICAgIGlmICghcGFyYW1ldGVyVmFsdWUgfHwgIWFjY2VwdENvbW1hT3BlcmF0b3Io
YXJnc0xpc3QpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgcGFyYW1ldGVyLT5h
cHBlbmQocGFyYW1ldGVyVmFsdWUucmVsZWFzZSgpKTsKLSAgICAgICAgcGFyYW1MaXN0LT5hcHBl
bmQocGFyYW1ldGVyLnJlbGVhc2UoKSk7Ci0gICAgfQotCi0gICAgcmV0dXJuIHBhcmFtTGlzdDsg
ICAKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gQ1NTUGFyc2VyOjpwYXJz
ZUN1c3RvbUZpbHRlckZ1bmN0aW9uV2l0aEF0UnVsZVJlZmVyZW5jZVN5bnRheChDU1NQYXJzZXJW
YWx1ZSogdmFsdWUpCi17Ci0gICAgLy8KLSAgICAvLyBDdXN0b20gZmlsdGVyIGZ1bmN0aW9uICJh
dC1ydWxlIHJlZmVyZW5jZSIgc3ludGF4OgotICAgIC8vCi0gICAgLy8gY3VzdG9tKDxmaWx0ZXIt
bmFtZT53c3BbLHdzcDxwYXJhbXM+XSkKLSAgICAvLwotICAgIC8vIGZpbHRlci1uYW1lOiA8Zmls
dGVyLW5hbWU+Ci0gICAgLy8gcGFyYW1zOiBTZWUgdGhlIGNvbW1lbnQgaW4gQ1NTUGFyc2VyOjpw
YXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcnMuCi0gICAgLy8KLQotICAgIEFTU0VSVCh2YWx1ZS0+
ZnVuY3Rpb24pOwotCi0gICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzTGlzdCA9IHZhbHVlLT5m
dW5jdGlvbi0+YXJncy5nZXQoKTsKLSAgICBpZiAoIWFyZ3NMaXN0IHx8ICFhcmdzTGlzdC0+c2l6
ZSgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIC8vIDEuIFBhcnNlIHRoZSBmaWx0ZXIgbmFt
ZS4KLSAgICBDU1NQYXJzZXJWYWx1ZSogYXJnID0gYXJnc0xpc3QtPmN1cnJlbnQoKTsKLSAgICBp
ZiAoYXJnLT51bml0ICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfSURFTlQpCi0gICAgICAgIHJl
dHVybiAwOwotCi0gICAgUmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBmaWx0ZXJWYWx1ZSA9
IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkN1c3Rv
bUZpbHRlck9wZXJhdGlvbik7Ci0KLSAgICBSZWZQdHI8Q1NTVmFsdWU+IGZpbHRlck5hbWUgPSBj
cmVhdGVQcmltaXRpdmVTdHJpbmdWYWx1ZShhcmcpOwotICAgIGZpbHRlclZhbHVlLT5hcHBlbmQo
ZmlsdGVyTmFtZSk7Ci0gICAgYXJnc0xpc3QtPm5leHQoKTsKLQotICAgIGlmICghYWNjZXB0Q29t
bWFPcGVyYXRvcihhcmdzTGlzdCkpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgLy8gMi4gUGFy
c2UgdGhlIHBhcmFtZXRlcnMuCi0gICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyYW1MaXN0ID0g
cGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzKGFyZ3NMaXN0KTsKLSAgICBpZiAoIXBhcmFtTGlz
dCkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBpZiAocGFyYW1MaXN0LT5sZW5ndGgoKSkKLSAg
ICAgICAgZmlsdGVyVmFsdWUtPmFwcGVuZChwYXJhbUxpc3QucmVsZWFzZSgpKTsKLQotICAgIHJl
dHVybiBmaWx0ZXJWYWx1ZTsKLX0KLQotLy8gRklYTUU6IFRoZSBjdXN0b20gZmlsdGVycyAiaW5s
aW5lIiBzeW50YXggaXMgZGVwcmVjYXRlZC4gV2Ugd2lsbCByZW1vdmUgaXQgZXZlbnR1YWxseS4K
LVBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+IENTU1BhcnNlcjo6cGFyc2VDdXN0b21G
aWx0ZXJGdW5jdGlvbldpdGhJbmxpbmVTeW50YXgoQ1NTUGFyc2VyVmFsdWUqIHZhbHVlKQotewot
ICAgIC8vCi0gICAgLy8gQ3VzdG9tIGZpbHRlciBmdW5jdGlvbiAiaW5saW5lIiBzeW50YXg6Ci0g
ICAgLy8KLSAgICAvLyBjdXN0b20oPHZlcnRleC1zaGFkZXI+W3dzcDxmcmFnbWVudC1zaGFkZXI+
XVssPHZlcnRleC1tZXNoPl1bLDxwYXJhbXM+XSkKLSAgICAvLwotICAgIC8vIHZlcnRleFNoYWRl
cjogICAgPHVyaT4gfCBub25lCi0gICAgLy8gZnJhZ21lbnRTaGFkZXI6ICA8dXJpPiB8IG5vbmUg
fCBtaXgoPHVyaT4gWyA8YmxlbmQtbW9kZT4gfHwgPGFscGhhLWNvbXBvc2l0aW5nPiBdPykKLSAg
ICAvLwotICAgIC8vIGJsZW5kLW1vZGU6IG5vcm1hbCB8IG11bHRpcGx5IHwgc2NyZWVuIHwgb3Zl
cmxheSB8IGRhcmtlbiB8IGxpZ2h0ZW4gfCBjb2xvci1kb2RnZSB8Ci0gICAgLy8gICAgICAgICAg
ICAgY29sb3ItYnVybiB8IGhhcmQtbGlnaHQgfCBzb2Z0LWxpZ2h0IHwgZGlmZmVyZW5jZSB8IGV4
Y2x1c2lvbiB8IGh1ZSB8Ci0gICAgLy8gICAgICAgICAgICAgc2F0dXJhdGlvbiB8IGNvbG9yIHwg
bHVtaW5vc2l0eQotICAgIC8vIGFscGhhLWNvbXBvc2l0aW5nOiBjbGVhciB8IHNyYyB8IGRzdCB8
IHNyYy1vdmVyIHwgZHN0LW92ZXIgfCBzcmMtaW4gfCBkc3QtaW4gfAotICAgIC8vICAgICAgICAg
ICAgICAgICAgICBzcmMtb3V0IHwgZHN0LW91dCB8IHNyYy1hdG9wIHwgZHN0LWF0b3AgfCB4b3Ig
fCBwbHVzCi0gICAgLy8KLSAgICAvLyB2ZXJ0ZXhNZXNoOiAgKzxpbnRlZ2VyPnsxLDJ9W3dzcDxi
b3g+XVt3c3AnZGV0YWNoZWQnXQotICAgIC8vIGJveDogZmlsdGVyLWJveCB8IGJvcmRlci1ib3gg
fCBwYWRkaW5nLWJveCB8IGNvbnRlbnQtYm94Ci0gICAgLy8KLSAgICAvLyBwYXJhbXM6IFNlZSB0
aGUgY29tbWVudCBpbiBDU1NQYXJzZXI6OnBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycy4KLSAg
ICAvLwotCi0gICAgQVNTRVJUKHZhbHVlLT5mdW5jdGlvbik7Ci0KLSAgICBDU1NQYXJzZXJWYWx1
ZUxpc3QqIGFyZ3NMaXN0ID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdldCgpOwotICAgIGlmICgh
YXJnc0xpc3QpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgUmVmUHRyPFdlYktpdENTU0ZpbHRl
clZhbHVlPiBmaWx0ZXJWYWx1ZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoV2ViS2l0
Q1NTRmlsdGVyVmFsdWU6OkN1c3RvbUZpbHRlck9wZXJhdGlvbik7Ci0KLSAgICAvLyAxLiBQYXJz
ZSB0aGUgc2hhZGVyIFVSTHM6IDx2ZXJ0ZXgtc2hhZGVyPlt3c3A8ZnJhZ21lbnQtc2hhZGVyPl0K
LSAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBzaGFkZXJzTGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3Jl
YXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAgICBib29sIGhhZEF0TGVhc3RPbmVDdXN0b21TaGFkZXIg
PSBmYWxzZTsKLSAgICBDU1NQYXJzZXJWYWx1ZSogYXJnOwotICAgIGZvciAoYXJnID0gYXJnc0xp
c3QtPmN1cnJlbnQoKTsgYXJnOyBhcmcgPSBhcmdzTGlzdC0+bmV4dCgpKSB7Ci0gICAgICAgIFJl
ZlB0cjxDU1NWYWx1ZT4gdmFsdWU7Ci0gICAgICAgIGlmIChhcmctPmlkID09IENTU1ZhbHVlTm9u
ZSkKLSAgICAgICAgICAgIHZhbHVlID0gY3NzVmFsdWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZh
bHVlKENTU1ZhbHVlTm9uZSk7Ci0gICAgICAgIGVsc2UgaWYgKGFyZy0+dW5pdCA9PSBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTX1VSSSkgewotICAgICAgICAgICAgVVJMIHNoYWRlclVSTCA9IGNvbXBs
ZXRlVVJMKGFyZy0+c3RyaW5nKTsKLSAgICAgICAgICAgIHZhbHVlID0gV2ViS2l0Q1NTU2hhZGVy
VmFsdWU6OmNyZWF0ZShzaGFkZXJVUkwuc3RyaW5nKCkpOwotICAgICAgICAgICAgaGFkQXRMZWFz
dE9uZUN1c3RvbVNoYWRlciA9IHRydWU7Ci0gICAgICAgIH0gZWxzZSBpZiAoYXJnc0xpc3QtPmN1
cnJlbnRJbmRleCgpID09IDEgJiYgYXJnLT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlv
bikgewotICAgICAgICAgICAgaWYgKCEodmFsdWUgPSBwYXJzZU1peEZ1bmN0aW9uKGFyZykpKQot
ICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgaGFkQXRMZWFzdE9uZUN1c3Rv
bVNoYWRlciA9IHRydWU7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoIXZhbHVlKQotICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgIHNoYWRlcnNMaXN0LT5hcHBlbmQodmFsdWUucmVsZWFzZSgp
KTsKLSAgICB9Ci0KLSAgICBpZiAoIXNoYWRlcnNMaXN0LT5sZW5ndGgoKSB8fCAhaGFkQXRMZWFz
dE9uZUN1c3RvbVNoYWRlciB8fCBzaGFkZXJzTGlzdC0+bGVuZ3RoKCkgPiAyIHx8ICFhY2NlcHRD
b21tYU9wZXJhdG9yKGFyZ3NMaXN0KSkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIAotICAg
IGZpbHRlclZhbHVlLT5hcHBlbmQoc2hhZGVyc0xpc3QucmVsZWFzZSgpKTsKLSAgICAKLSAgICAv
LyAyLiBQYXJzZSB0aGUgbWVzaCBzaXplIDx2ZXJ0ZXgtbWVzaD4KLSAgICBSZWZQdHI8Q1NTVmFs
dWVMaXN0PiBtZXNoU2l6ZUxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVk
KCk7Ci0gICAgCi0gICAgZm9yIChhcmcgPSBhcmdzTGlzdC0+Y3VycmVudCgpOyBhcmc7IGFyZyA9
IGFyZ3NMaXN0LT5uZXh0KCkpIHsKLSAgICAgICAgaWYgKCF2YWxpZFVuaXQoYXJnLCBGSW50ZWdl
ciB8IEZOb25OZWcsIENTU1N0cmljdE1vZGUpKQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAg
IGludCBpbnRlZ2VyVmFsdWUgPSBjbGFtcFRvSW50ZWdlcihhcmctPmZWYWx1ZSk7Ci0gICAgICAg
IC8vIEFjY29yZGluZyB0byB0aGUgc3BlY2lmaWNhdGlvbiB3ZSBjYW4gb25seSBhY2NlcHQgcG9z
aXRpdmUgbm9uLXplcm8gdmFsdWVzLgotICAgICAgICBpZiAoaW50ZWdlclZhbHVlIDwgMSkKLSAg
ICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBtZXNoU2l6ZUxpc3QtPmFwcGVuZChjc3NWYWx1
ZVBvb2woKS5jcmVhdGVWYWx1ZShpbnRlZ2VyVmFsdWUsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1Nf
TlVNQkVSKSk7Ci0gICAgfQotICAgIAotICAgIGlmIChtZXNoU2l6ZUxpc3QtPmxlbmd0aCgpID4g
MikKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgCi0gICAgLy8gRklYTUU6IEZvciBsZWdhY3kgY29u
dGVudCwgd2UgYWNjZXB0IHRoZSBtZXNoIGJveCB0eXBlcy4gV2UgZG9uJ3QgZG8gYW55dGhpbmcg
ZWxzZSB3aXRoIHRoZW0uCi0gICAgLy8gRXZlbnR1YWxseSwgd2UnbGwgcmVtb3ZlIHRoZW0gY29t
cGxldGVseS4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTAzNzc4Ci0gICAgaWYgKChhcmcgPSBhcmdzTGlzdC0+Y3VycmVudCgpKSAmJiAoYXJnLT5pZCA9
PSBDU1NWYWx1ZUJvcmRlckJveCB8fCBhcmctPmlkID09IENTU1ZhbHVlUGFkZGluZ0JveAotICAg
ICAgICB8fCBhcmctPmlkID09IENTU1ZhbHVlQ29udGVudEJveCB8fCBhcmctPmlkID09IENTU1Zh
bHVlRmlsdGVyQm94KSkKLSAgICAgICAgYXJnc0xpc3QtPm5leHQoKTsKLSAgICAKLSAgICBpZiAo
KGFyZyA9IGFyZ3NMaXN0LT5jdXJyZW50KCkpICYmIGFyZy0+aWQgPT0gQ1NTVmFsdWVEZXRhY2hl
ZCkgewotICAgICAgICBtZXNoU2l6ZUxpc3QtPmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVJ
ZGVudGlmaWVyVmFsdWUoYXJnLT5pZCkpOwotICAgICAgICBhcmdzTGlzdC0+bmV4dCgpOwotICAg
IH0KLSAgICAKLSAgICBpZiAobWVzaFNpemVMaXN0LT5sZW5ndGgoKSkgewotICAgICAgICBpZiAo
IWFjY2VwdENvbW1hT3BlcmF0b3IoYXJnc0xpc3QpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0g
ICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQobWVzaFNpemVMaXN0LnJlbGVhc2UoKSk7Ci0gICAg
fQotICAgIAotICAgIC8vIDMuIFBhcnNlIHRoZSBwYXJhbWV0ZXJzLgotICAgIFJlZlB0cjxDU1NW
YWx1ZUxpc3Q+IHBhcmFtTGlzdCA9IHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhhcmdzTGlz
dCk7Ci0gICAgaWYgKCFwYXJhbUxpc3QpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgaWYgKHBh
cmFtTGlzdC0+bGVuZ3RoKCkpCi0gICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQocGFyYW1MaXN0
LnJlbGVhc2UoKSk7Ci0gICAgCi0gICAgcmV0dXJuIGZpbHRlclZhbHVlOwotfQotCi1QYXNzUmVm
UHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlQ3VzdG9tRmlsdGVyRnVu
Y3Rpb24oQ1NTUGFyc2VyVmFsdWUqIHZhbHVlKQotewotICAgIEFTU0VSVCh2YWx1ZS0+ZnVuY3Rp
b24pOwotCi0gICAgLy8gTG9vayBhaGVhZCB0byBkZXRlcm1pbmUgd2hpY2ggc3ludGF4IHRoZSBj
dXN0b20gZnVuY3Rpb24gaXMgdXNpbmcuCi0gICAgLy8gQm90aCB0aGUgYXQtcnVsZSByZWZlcmVu
Y2Ugc3ludGF4IGFuZCB0aGUgaW5saW5lIHN5bnRheCByZXF1aXJlIGF0IGxlYXN0IG9uZSBhcmd1
bWVudC4KLSAgICBDU1NQYXJzZXJWYWx1ZUxpc3QqIGFyZ3NMaXN0ID0gdmFsdWUtPmZ1bmN0aW9u
LT5hcmdzLmdldCgpOwotICAgIGlmICghYXJnc0xpc3QgfHwgIWFyZ3NMaXN0LT5zaXplKCkpCi0g
ICAgICAgIHJldHVybiAwOwotCi0gICAgLy8gVGhlIGF0LXJ1bGUgcmVmZXJlbmNlIHN5bnRheCBl
eHBlY3RzIGEgc2luZ2xlIGlkZW50IG9yIGFuIGlkZW50IGZvbGxvd2VkIGJ5IGEgY29tbWEuIAot
ICAgIC8vIGUuZy4gY3VzdG9tKG15LWZpbHRlcikgb3IgY3VzdG9tKG15LWZpbHRlciwgLi4uKQot
ICAgIC8vIEluIGNvbnRyYXN0LCB3aGVuIHRoZSBpbmxpbmUgc3ludGF4IHN0YXJ0cyB3aXRoIGFu
IGlkZW50IGxpa2UgIm5vbmUiLCBpdCBleHBlY3RzIGEgdXJpIG9yIGEgbWl4IGZ1bmN0aW9uIG5l
eHQuCi0gICAgLy8gZS5nLiBjdXN0b20obm9uZSB1cmwoLi4uKSkgb3IgY3VzdG9tKG5vbmUgbWl4
KC4uLikKLSAgICBib29sIGlzQXRSdWxlUmVmZXJlbmNlU3ludGF4ID0gYXJnc0xpc3QtPnZhbHVl
QXQoMCktPnVuaXQgPT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19JREVOVCAKLSAgICAgICAgJiYg
KGFyZ3NMaXN0LT5zaXplKCkgPT0gMSB8fCBpc0NvbW1hKGFyZ3NMaXN0LT52YWx1ZUF0KDEpKSk7
Ci0gICAgcmV0dXJuIGlzQXRSdWxlUmVmZXJlbmNlU3ludGF4ID8gcGFyc2VDdXN0b21GaWx0ZXJG
dW5jdGlvbldpdGhBdFJ1bGVSZWZlcmVuY2VTeW50YXgodmFsdWUpIDogcGFyc2VDdXN0b21GaWx0
ZXJGdW5jdGlvbldpdGhJbmxpbmVTeW50YXgodmFsdWUpOwotfQotCi1QYXNzUmVmUHRyPENTU1Zh
bHVlTGlzdD4gQ1NTUGFyc2VyOjpwYXJzZUN1c3RvbUZpbHRlclRyYW5zZm9ybShDU1NQYXJzZXJW
YWx1ZUxpc3QqIHZhbHVlTGlzdCkKLXsKLSAgICBpZiAoIXZhbHVlTGlzdCkKLSAgICAgICAgcmV0
dXJuIDA7Ci0KLSAgICAvLyBDU1MgU2hhZGVycycgY3VzdG9tKCkgdHJhbnNmb3JtcyBhcmUgc3Bh
Y2Ugc2VwYXJhdGVkIGFuZCBjb21tYSB0ZXJtaW5hdGVkLgotICAgIFJlZlB0cjxDU1NWYWx1ZUxp
c3Q+IGxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgZm9y
IChDU1NQYXJzZXJWYWx1ZSogdmFsdWUgPSB2YWx1ZUxpc3QtPmN1cnJlbnQoKTsgdmFsdWU7IHZh
bHVlID0gdmFsdWVMaXN0LT5uZXh0KCkpIHsKLSAgICAgICAgaWYgKGlzQ29tbWEodmFsdWUpKQot
ICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgUmVmUHRyPENTU1ZhbHVlPiBwYXJzZWRUcmFu
c2Zvcm1WYWx1ZSA9IHBhcnNlVHJhbnNmb3JtVmFsdWUodmFsdWUpOwotICAgICAgICBpZiAoIXBh
cnNlZFRyYW5zZm9ybVZhbHVlKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgbGlz
dC0+YXBwZW5kKHBhcnNlZFRyYW5zZm9ybVZhbHVlLnJlbGVhc2UoKSk7Ci0gICAgfQotCi0gICAg
cmV0dXJuIGxpc3QucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU1NoYWRlclZh
bHVlPiBDU1NQYXJzZXI6OnBhcnNlRmlsdGVyUnVsZVNyY1VyaUFuZEZvcm1hdChDU1NQYXJzZXJW
YWx1ZUxpc3QqIHZhbHVlTGlzdCkKLXsKLSAgICBDU1NQYXJzZXJWYWx1ZSogdmFsdWUgPSB2YWx1
ZUxpc3QtPmN1cnJlbnQoKTsKLSAgICBBU1NFUlQodmFsdWUgJiYgdmFsdWUtPnVuaXQgPT0gQ1NT
UHJpbWl0aXZlVmFsdWU6OkNTU19VUkkpOwotICAgIFJlZlB0cjxXZWJLaXRDU1NTaGFkZXJWYWx1
ZT4gc2hhZGVyVmFsdWUgPSBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y3JlYXRlKGNvbXBsZXRlVVJM
KHZhbHVlLT5zdHJpbmcpKTsKLQotICAgIHZhbHVlID0gdmFsdWVMaXN0LT5uZXh0KCk7Ci0gICAg
aWYgKHZhbHVlICYmIHZhbHVlLT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiAmJiBl
cXVhbElnbm9yaW5nQ2FzZSh2YWx1ZS0+ZnVuY3Rpb24tPm5hbWUsICJmb3JtYXQoIikpIHsKLSAg
ICAgICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdl
dCgpOwotICAgICAgICBpZiAoIWFyZ3MgfHwgYXJncy0+c2l6ZSgpICE9IDEpCi0gICAgICAgICAg
ICByZXR1cm4gMDsKLQotICAgICAgICBDU1NQYXJzZXJWYWx1ZSogYXJnID0gYXJncy0+Y3VycmVu
dCgpOwotICAgICAgICBpZiAoYXJnLT51bml0ICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfU1RS
SU5HKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgc2hhZGVyVmFsdWUtPnNldEZv
cm1hdChhcmctPnN0cmluZyk7Ci0gICAgICAgIHZhbHVlTGlzdC0+bmV4dCgpOwotICAgIH0KLQot
ICAgIHJldHVybiBzaGFkZXJWYWx1ZS5yZWxlYXNlKCk7Ci19Ci0KLWJvb2wgQ1NTUGFyc2VyOjpw
YXJzZUZpbHRlclJ1bGVTcmMoKQotewotICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHNyY0xpc3Qg
PSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZUNvbW1hU2VwYXJhdGVkKCk7Ci0KLSAgICBDU1NQYXJzZXJW
YWx1ZSogdmFsdWUgPSBtX3ZhbHVlTGlzdC0+Y3VycmVudCgpOwotICAgIHdoaWxlICh2YWx1ZSkg
ewotICAgICAgICBpZiAodmFsdWUtPnVuaXQgIT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19VUkkp
Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgUmVmUHRyPFdlYktpdENTU1No
YWRlclZhbHVlPiBzaGFkZXJWYWx1ZSA9IHBhcnNlRmlsdGVyUnVsZVNyY1VyaUFuZEZvcm1hdCht
X3ZhbHVlTGlzdC5nZXQoKSk7Ci0gICAgICAgIGlmICghc2hhZGVyVmFsdWUpCi0gICAgICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIHNyY0xpc3QtPmFwcGVuZChzaGFkZXJWYWx1ZS5yZWxl
YXNlKCkpOwotCi0gICAgICAgIGlmICghYWNjZXB0Q29tbWFPcGVyYXRvcihtX3ZhbHVlTGlzdC5n
ZXQoKSkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgdmFsdWUgPSBtX3Zh
bHVlTGlzdC0+Y3VycmVudCgpOwotICAgIH0KLQotICAgIGlmICghc3JjTGlzdC0+bGVuZ3RoKCkp
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGFkZFByb3BlcnR5KENTU1Byb3BlcnR5U3Jj
LCBzcmNMaXN0LnJlbGVhc2UoKSwgbV9pbXBvcnRhbnQpOwotICAgIHJldHVybiB0cnVlOwotfQot
Ci1ib29sIENTU1BhcnNlcjo6cGFyc2VGaWx0ZXJSdWxlTWl4KCkKLXsKLSAgICBpZiAobV92YWx1
ZUxpc3QtPnNpemUoKSA+IDIpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIFJlZlB0cjxD
U1NWYWx1ZUxpc3Q+IG1peExpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVk
KCk7Ci0KLSAgICBib29sIGhhc0JsZW5kTW9kZSA9IGZhbHNlOwotICAgIGJvb2wgaGFzQWxwaGFD
b21wb3NpdGluZyA9IGZhbHNlOwotICAgIENTU1BhcnNlclZhbHVlKiB2YWx1ZSA9IG1fdmFsdWVM
aXN0LT5jdXJyZW50KCk7Ci0gICAgd2hpbGUgKHZhbHVlKSB7Ci0gICAgICAgIFJlZlB0cjxDU1NW
YWx1ZT4gbWl4VmFsdWU7Ci0gICAgICAgIGlmICghaGFzQmxlbmRNb2RlICYmIGlzQmxlbmRNb2Rl
KHZhbHVlLT5pZCkpIHsKLSAgICAgICAgICAgIGhhc0JsZW5kTW9kZSA9IHRydWU7Ci0gICAgICAg
ICAgICBtaXhWYWx1ZSA9IGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZSh2YWx1
ZS0+aWQpOwotICAgICAgICB9IGVsc2UgaWYgKCFoYXNBbHBoYUNvbXBvc2l0aW5nICYmIGlzQ29t
cG9zaXRlT3BlcmF0b3IodmFsdWUtPmlkKSkgewotICAgICAgICAgICAgaGFzQWxwaGFDb21wb3Np
dGluZyA9IHRydWU7Ci0gICAgICAgICAgICBtaXhWYWx1ZSA9IGNzc1ZhbHVlUG9vbCgpLmNyZWF0
ZUlkZW50aWZpZXJWYWx1ZSh2YWx1ZS0+aWQpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKCFt
aXhWYWx1ZSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgICAgICBtaXhMaXN0LT5h
cHBlbmQobWl4VmFsdWUucmVsZWFzZSgpKTsKLSAgICAgICAgdmFsdWUgPSBtX3ZhbHVlTGlzdC0+
bmV4dCgpOwotICAgIH0KLQotICAgIGFkZFByb3BlcnR5KENTU1Byb3BlcnR5TWl4LCBtaXhMaXN0
LnJlbGVhc2UoKSwgbV9pbXBvcnRhbnQpOwotICAgIHJldHVybiB0cnVlOwotfQotCi1ib29sIENT
U1BhcnNlcjo6cGFyc2VHZW9tZXRyeShDU1NQcm9wZXJ0eUlEIHByb3BJZCwgQ1NTUGFyc2VyVmFs
dWUqIHZhbHVlLCBib29sIGltcG9ydGFudCkKLXsKLSAgICBBU1NFUlQocHJvcElkID09IENTU1By
b3BlcnR5R2VvbWV0cnkpOwotCi0gICAgLy8gPGdlb21ldHJ5LXNoYXBlPiA9IGdyaWQoPGludGVn
ZXI+ezEsMn0gfHwgWyBkZXRhY2hlZCB8IGF0dGFjaGVkIF0/KQotICAgIGlmICh2YWx1ZS0+dW5p
dCAhPSBDU1NQYXJzZXJWYWx1ZTo6RnVuY3Rpb24gfHwgIWVxdWFsSWdub3JpbmdDYXNlKHZhbHVl
LT5mdW5jdGlvbi0+bmFtZSwgImdyaWQoIikpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAg
IEFTU0VSVCh2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MpOwotCi0gICAgLy8gZ3JpZCgpIGZ1bmN0aW9u
IHNob3VsZCBoYXZlIGZyb20gMSB0byAzIGFyZ3VtZW50cy4KLSAgICB1bnNpZ25lZCBzaXplID0g
dmFsdWUtPmZ1bmN0aW9uLT5hcmdzLT5zaXplKCk7Ci0gICAgaWYgKCFzaXplIHx8IHNpemUgPiAz
KQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBDU1NQYXJzZXJWYWx1ZUxpc3QqIGdyaWRQ
YXJzZXJWYWx1ZUxpc3QgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0gICAgQ1NTUGFy
c2VyVmFsdWUqIGdyaWRQYXJzZXJWYWx1ZSA9IGdyaWRQYXJzZXJWYWx1ZUxpc3QtPmN1cnJlbnQo
KTsKLSAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBnZW9tZXRyeUxpc3QgPSBDU1NWYWx1ZUxpc3Q6
OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0KLSAgICBib29sIGhhc0RpbWVuc2lvbnMgPSBmYWxz
ZTsKLSAgICBib29sIGhhc0Nvbm5lY3Rpdml0eSA9IGZhbHNlOwotCi0gICAgd2hpbGUgKGdyaWRQ
YXJzZXJWYWx1ZSkgewotICAgICAgICBpZiAoaGFzRGltZW5zaW9ucyAmJiBoYXNDb25uZWN0aXZp
dHkpIHsKLSAgICAgICAgICAgIGdlb21ldHJ5TGlzdC5yZWxlYXNlKCk7Ci0gICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoZ3JpZFBhcnNlclZhbHVlLT5p
ZCA9PSBDU1NWYWx1ZUF0dGFjaGVkIHx8IGdyaWRQYXJzZXJWYWx1ZS0+aWQgPT0gQ1NTVmFsdWVE
ZXRhY2hlZCkgewotICAgICAgICAgICAgaGFzQ29ubmVjdGl2aXR5ID0gdHJ1ZTsKLSAgICAgICAg
ICAgIGdlb21ldHJ5TGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJW
YWx1ZShncmlkUGFyc2VyVmFsdWUtPmlkKSk7Ci0gICAgICAgICAgICBncmlkUGFyc2VyVmFsdWUg
PSBncmlkUGFyc2VyVmFsdWVMaXN0LT5uZXh0KCk7Ci0gICAgICAgIH0gZWxzZSBpZiAoIWhhc0Rp
bWVuc2lvbnMgJiYgcGFyc2VHcmlkRGltZW5zaW9ucyhncmlkUGFyc2VyVmFsdWVMaXN0LCBnZW9t
ZXRyeUxpc3QpKSB7Ci0gICAgICAgICAgICBoYXNEaW1lbnNpb25zID0gdHJ1ZTsKLSAgICAgICAg
ICAgIGdyaWRQYXJzZXJWYWx1ZSA9IGdyaWRQYXJzZXJWYWx1ZUxpc3QtPmN1cnJlbnQoKTsKLSAg
ICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGdlb21ldHJ5TGlzdC5yZWxlYXNlKCk7Ci0gICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBhZGRQcm9wZXJ0
eShwcm9wSWQsIGdlb21ldHJ5TGlzdC5yZWxlYXNlKCksIGltcG9ydGFudCk7Ci0gICAgcmV0dXJu
IGhhc0RpbWVuc2lvbnM7Ci19Ci0KLWJvb2wgQ1NTUGFyc2VyOjpwYXJzZUdyaWREaW1lbnNpb25z
KENTU1BhcnNlclZhbHVlTGlzdCogYXJncywgUmVmUHRyPENTU1ZhbHVlTGlzdD4mIGdyaWRWYWx1
ZUxpc3QpCi17Ci0gICAgQVNTRVJUKGFyZ3MpOwotCi0gICAgLy8gVGhlcmUgbXVzdCBiZSBhdCBs
ZWFzdCBvbmUgdmFsaWQgbnVtZXJpYyB2YWx1ZS4KLSAgICBDU1NQYXJzZXJWYWx1ZSogYXJnID0g
YXJncy0+Y3VycmVudCgpOwotICAgIGlmICghYXJnIHx8ICF2YWxpZFVuaXQoYXJnLCBGUG9zaXRp
dmVJbnRlZ2VyKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgLy8gQSB2YWxpZCBudW1l
cmljIHZhbHVlIGlzIHBhcnNlZCBhbmQgdGhlbiB3ZSBtb3ZlIG9uLgotICAgIGdyaWRWYWx1ZUxp
c3QtPmFwcGVuZChjcmVhdGVQcmltaXRpdmVOdW1lcmljVmFsdWUoYXJnKSk7Ci0gICAgYXJnID0g
YXJncy0+bmV4dCgpOwotCi0gICAgLy8gSWYgdGhlIG5leHQgYXJndW1lbnQgaXMgbm90IG51bWVy
aWMsIHdlIGFyZSBkb25lIHBhcnNpbmcgdGhlIGdyaWQgZGltZW5zaW9ucy4KLSAgICBpZiAoIWFy
ZyB8fCAhdmFsaWRVbml0KGFyZywgRlBvc2l0aXZlSW50ZWdlcikpCi0gICAgICAgIHJldHVybiB0
cnVlOwotCi0gICAgLy8gQ29tbWl0IHRoZSBzZWNvbmQgbnVtZXJpYyB2YWx1ZSB3ZSBmb3VuZC4K
LSAgICBncmlkVmFsdWVMaXN0LT5hcHBlbmQoY3JlYXRlUHJpbWl0aXZlTnVtZXJpY1ZhbHVlKGFy
ZykpOwotICAgIGFyZ3MtPm5leHQoKTsKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotYm9vbCBDU1NQ
YXJzZXI6OnBhcnNlRmlsdGVyUnVsZVBhcmFtZXRlcnMoKQotewotICAgIFJlZlB0cjxDU1NWYWx1
ZUxpc3Q+IHBhcmFtc0xpc3QgPSBwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcnMobV92YWx1ZUxp
c3QuZ2V0KCkpOwotICAgIGlmICghcGFyYW1zTGlzdCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwot
Ci0gICAgYWRkUHJvcGVydHkoQ1NTUHJvcGVydHlQYXJhbWV0ZXJzLCBwYXJhbXNMaXN0LnJlbGVh
c2UoKSwgbV9pbXBvcnRhbnQpOwotICAgIHJldHVybiB0cnVlOwotfQotCi1QYXNzUmVmUHRyPFN0
eWxlUnVsZUJhc2U+IENTU1BhcnNlcjo6Y3JlYXRlRmlsdGVyUnVsZShjb25zdCBDU1NQYXJzZXJT
dHJpbmcmIGZpbHRlck5hbWUpCi17Ci0gICAgUmVmUHRyPFN0eWxlUnVsZUZpbHRlcj4gcnVsZSA9
IFN0eWxlUnVsZUZpbHRlcjo6Y3JlYXRlKGZpbHRlck5hbWUsIGNyZWF0ZVN0eWxlUHJvcGVydGll
cygpKTsKLSAgICBjbGVhclByb3BlcnRpZXMoKTsKLSAgICBwcm9jZXNzQW5kQWRkTmV3UnVsZVRv
U291cmNlVHJlZUlmTmVlZGVkKCk7Ci0gICAgcmV0dXJuIHJ1bGUucmVsZWFzZSgpOwotfQotCi0j
ZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCiBQYXNzUmVmUHRyPFdlYktpdENTU0ZpbHRl
clZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlQnVpbHRpbkZpbHRlckFyZ3VtZW50cyhDU1NQYXJzZXJW
YWx1ZUxpc3QqIGFyZ3MsIFdlYktpdENTU0ZpbHRlclZhbHVlOjpGaWx0ZXJPcGVyYXRpb25UeXBl
IGZpbHRlclR5cGUpCiB7CiAgICAgUmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBmaWx0ZXJW
YWx1ZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoZmlsdGVyVHlwZSk7CkBAIC05ODE5
LDE5ICs5MjA0LDYgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlRmlsdGVyKENTU1BhcnNlclZhbHVl
TGlzdCogdmFsdWVMaXN0LCBSZWZQdHI8Q1NTVmFsdWU+JiByZXMKICAgICAgICAgICAgIGlmIChm
aWx0ZXJUeXBlID09IFdlYktpdENTU0ZpbHRlclZhbHVlOjpVbmtub3duRmlsdGVyT3BlcmF0aW9u
KQogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSAgICAgICAgICAgIGlmIChmaWx0ZXJUeXBlID09IFdlYktpdENTU0ZpbHRlclZhbHVlOjpD
dXN0b21GaWx0ZXJPcGVyYXRpb24pIHsKLSAgICAgICAgICAgICAgICAvLyBNYWtlIHN1cmUgcGFy
c2luZyBmYWlscyBpZiBjdXN0b20gZmlsdGVycyBhcmUgZGlzYWJsZWQuCi0gICAgICAgICAgICAg
ICAgaWYgKCFtX2NvbnRleHQuaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKQotICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAg
UmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBmaWx0ZXJWYWx1ZSA9IHBhcnNlQ3VzdG9tRmls
dGVyRnVuY3Rpb24odmFsdWUpOwotICAgICAgICAgICAgICAgIGlmICghZmlsdGVyVmFsdWUpCi0g
ICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgICAgICBsaXN0LT5h
cHBlbmQoZmlsdGVyVmFsdWUucmVsZWFzZSgpKTsKLSAgICAgICAgICAgICAgICBjb250aW51ZTsK
LSAgICAgICAgICAgIH0KLSNlbmRpZgogICAgICAgICAgICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBh
cmdzID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdldCgpOwogICAgICAgICAgICAgaWYgKCFhcmdz
KQogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTExNDkwLDE2ICsxMDg2Miw4IEBA
IGlubGluZSB2b2lkIENTU1BhcnNlcjo6ZGV0ZWN0QXRUb2tlbihpbnQgbGVuZ3RoLCBib29sIGhh
c0VzY2FwZSkKICAgICAgICAgICAgICAgICByZXR1cm47CiAKICNpZiBFTkFCTEUoQ1NTX1JFR0lP
TlMpCi0gICAgICAgICAgICBpZiAoaXNBU0NJSUFscGhhQ2FzZWxlc3NFcXVhbChuYW1lWzE0XSwg
J24nKSAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAyLCAid2Via2l0LXJlZ2lvIikp
IHsKKyAgICAgICAgICAgIGlmIChpc0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFsKG5hbWVbMTRdLCAn
bicpICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobmFtZSArIDIsICJ3ZWJraXQtcmVnaW8iKSkK
ICAgICAgICAgICAgICAgICBtX3Rva2VuID0gV0VCS0lUX1JFR0lPTl9SVUxFX1NZTTsKLSAgICAg
ICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9Ci0jZW5kaWYKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgICAgICAgICBpZiAoaXNBU0NJSUFscGhhQ2FzZWxlc3NFcXVhbChuYW1l
WzE0XSwgJ3InKSAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAyLCAid2Via2l0LWZp
bHRlIikpIHsKLSAgICAgICAgICAgICAgICBtX3Rva2VuID0gV0VCS0lUX0ZJTFRFUl9SVUxFX1NZ
TTsKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9CiAjZW5kaWYKICAgICAg
ICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
ci5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCmluZGV4IDQ3YjA1ZTYuLmE2NjMx
Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgKQEAgLTY3LDEzICs2Nyw2IEBAIGNsYXNzIFN0eWxl
S2V5ZnJhbWU7CiBjbGFzcyBTdHlsZVNoZWV0Q29udGVudHM7CiBjbGFzcyBTdHlsZWRFbGVtZW50
OwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotY2xhc3MgV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlOwotY2xhc3MgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZTsKLWNsYXNzIFdlYktpdENT
U01peEZ1bmN0aW9uVmFsdWU7Ci1jbGFzcyBXZWJLaXRDU1NTaGFkZXJWYWx1ZTsKLSNlbmRpZgot
CiBjbGFzcyBDU1NQYXJzZXIgewogICAgIGZyaWVuZCBpbmxpbmUgaW50IGNzc3l5bGV4KHZvaWQq
LCBDU1NQYXJzZXIqKTsKIApAQCAtMjYwLDIyICsyNTMsNiBAQCBwdWJsaWM6CiAKICAgICBib29s
IHBhcnNlRmlsdGVyKENTU1BhcnNlclZhbHVlTGlzdCosIFJlZlB0cjxDU1NWYWx1ZT4mKTsKICAg
ICBQYXNzUmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBwYXJzZUJ1aWx0aW5GaWx0ZXJBcmd1
bWVudHMoQ1NTUGFyc2VyVmFsdWVMaXN0KiwgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkZpbHRlck9w
ZXJhdGlvblR5cGUpOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBQYXNzUmVmUHRyPFdl
YktpdENTU01hdEZ1bmN0aW9uVmFsdWU+IHBhcnNlTWF0VmFsdWUoQ1NTUGFyc2VyVmFsdWUqKTsK
LSAgICBQYXNzUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU+IHBhcnNlTWl4RnVuY3Rp
b24oQ1NTUGFyc2VyVmFsdWUqKTsKLSAgICBQYXNzUmVmUHRyPFdlYktpdENTU0FycmF5RnVuY3Rp
b25WYWx1ZT4gcGFyc2VDdXN0b21GaWx0ZXJBcnJheUZ1bmN0aW9uKENTU1BhcnNlclZhbHVlKik7
Ci0gICAgUGFzc1JlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcnNlQ3VzdG9tRmlsdGVyVHJhbnNmb3Jt
KENTU1BhcnNlclZhbHVlTGlzdCopOwotICAgIFBhc3NSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJz
ZUN1c3RvbUZpbHRlclBhcmFtZXRlcnMoQ1NTUGFyc2VyVmFsdWVMaXN0Kik7Ci0gICAgUGFzc1Jl
ZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gcGFyc2VDdXN0b21GaWx0ZXJGdW5jdGlvbldpdGhB
dFJ1bGVSZWZlcmVuY2VTeW50YXgoQ1NTUGFyc2VyVmFsdWUqKTsKLSAgICBQYXNzUmVmUHRyPFdl
YktpdENTU0ZpbHRlclZhbHVlPiBwYXJzZUN1c3RvbUZpbHRlckZ1bmN0aW9uV2l0aElubGluZVN5
bnRheChDU1NQYXJzZXJWYWx1ZSopOwotICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFs
dWU+IHBhcnNlQ3VzdG9tRmlsdGVyRnVuY3Rpb24oQ1NTUGFyc2VyVmFsdWUqKTsKLSAgICBib29s
IHBhcnNlRmlsdGVyUnVsZVNyYygpOwotICAgIGJvb2wgcGFyc2VGaWx0ZXJSdWxlTWl4KCk7Ci0g
ICAgYm9vbCBwYXJzZUdlb21ldHJ5KENTU1Byb3BlcnR5SUQsIENTU1BhcnNlclZhbHVlKiwgYm9v
bCk7Ci0gICAgYm9vbCBwYXJzZUdyaWREaW1lbnNpb25zKENTU1BhcnNlclZhbHVlTGlzdCosIFJl
ZlB0cjxDU1NWYWx1ZUxpc3Q+Jik7IAotICAgIGJvb2wgcGFyc2VGaWx0ZXJSdWxlUGFyYW1ldGVy
cygpOwotICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NTU2hhZGVyVmFsdWU+IHBhcnNlRmlsdGVyUnVs
ZVNyY1VyaUFuZEZvcm1hdChDU1NQYXJzZXJWYWx1ZUxpc3QqKTsKLSNlbmRpZgogI2VuZGlmCiAK
ICAgICBQYXNzUmVmUHRyPENTU1ZhbHVlPiBwYXJzZUNsaXBQYXRoKCk7CkBAIC0zMzgsOSArMzE1
LDYgQEAgcHVibGljOgogI2lmIEVOQUJMRShTSEFET1dfRE9NKQogICAgIFBhc3NSZWZQdHI8U3R5
bGVSdWxlQmFzZT4gY3JlYXRlSG9zdFJ1bGUoUnVsZUxpc3QqKTsKICNlbmRpZgotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBQYXNzUmVmUHRyPFN0eWxlUnVsZUJhc2U+IGNyZWF0ZUZpbHRl
clJ1bGUoY29uc3QgQ1NTUGFyc2VyU3RyaW5nJik7Ci0jZW5kaWYKIAogICAgIHZvaWQgc3RhcnRE
ZWNsYXJhdGlvbnNGb3JNYXJnaW5Cb3goKTsKICAgICB2b2lkIGVuZERlY2xhcmF0aW9uc0Zvck1h
cmdpbkJveCgpOwpAQCAtMzg5LDEwICszNjMsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBtX2xvZ0Vy
cm9yczsKICAgICBib29sIG1faWdub3JlRXJyb3JzSW5EZWNsYXJhdGlvbjsKIAotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBib29sIG1faW5GaWx0ZXJSdWxlOwotI2VuZGlmCi0KICAgICBB
dG9taWNTdHJpbmcgbV9kZWZhdWx0TmFtZXNwYWNlOwogCiAgICAgLy8gdG9rZW5pemVyIG1ldGhv
ZHMgYW5kIGRhdGEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJNb2Rl
LmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5oCmluZGV4IDY5N2E4MzUuLjAy
ZTA1MjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJNb2RlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlck1vZGUuaApAQCAtNjQsNyArNjQsNiBAQCBw
dWJsaWM6CiAgICAgU3RyaW5nIGNoYXJzZXQ7CiAgICAgQ1NTUGFyc2VyTW9kZSBtb2RlOwogICAg
IGJvb2wgaXNIVE1MRG9jdW1lbnQ7Ci0gICAgYm9vbCBpc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQ7
CiAgICAgYm9vbCBpc0NTU1N0aWNreVBvc2l0aW9uRW5hYmxlZDsKICAgICBib29sIGlzQ1NTUmVn
aW9uc0VuYWJsZWQ7CiAgICAgYm9vbCBpc0NTU0NvbXBvc2l0aW5nRW5hYmxlZDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KaW5kZXggOWRmZTFkNi4uMmM1ODA1MCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KQEAgLTEwOSw5ICsxMDksNiBAQCBjdXJz
b3IgW0luaGVyaXRlZF0KIGVtcHR5LWNlbGxzIFtJbmhlcml0ZWRdCiBmbG9hdAogZm9udC1zdHJl
dGNoCi0jaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpICYmIEVOQUJMRV9DU1NfU0hBREVS
UwotZ2VvbWV0cnkKLSNlbmRpZgogaGVpZ2h0CiAjaWYgZGVmaW5lZChFTkFCTEVfQ1NTX0lNQUdF
X09SSUVOVEFUSU9OKSAmJiBFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OCiBpbWFnZS1vcmll
bnRhdGlvbiBbSW5oZXJpdGVkXQpAQCAtMTM1LDEwICsxMzIsNiBAQCBtYXgtaGVpZ2h0CiBtYXgt
d2lkdGgKIG1pbi1oZWlnaHQKIG1pbi13aWR0aAotI2lmIGRlZmluZWQoRU5BQkxFX0NTU19TSEFE
RVJTKSAmJiBFTkFCTEVfQ1NTX1NIQURFUlMKLW1peAotcGFyYW1ldGVycwotI2VuZGlmCiBvYmpl
Y3QtZml0CiBvcGFjaXR5CiAvLyBIb25vciAtd2Via2l0LW9wYWNpdHkgYXMgYSBzeW5vbnltIGZv
ciBvcGFjaXR5LiBUaGlzIHdhcyB0aGUgb25seSBzeW50YXggdGhhdCB3b3JrZWQgaW4gU2FmYXJp
IDEuMSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eVNvdXJjZURh
dGEuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eVNvdXJjZURhdGEuaAppbmRleCBk
YTcxYmViLi5jOTk1YTAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVy
dHlTb3VyY2VEYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5U291cmNl
RGF0YS5oCkBAIC05Myw5ICs5Myw2IEBAIHN0cnVjdCBDU1NSdWxlU291cmNlRGF0YSA6IHB1Ymxp
YyBSZWZDb3VudGVkPENTU1J1bGVTb3VyY2VEYXRhPiB7CiAgICAgICAgIEhPU1RfUlVMRSwKICAg
ICAgICAgVklFV1BPUlRfUlVMRSwKICAgICAgICAgU1VQUE9SVFNfUlVMRSwKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0gICAgICAgIEZJTFRFUl9SVUxFCi0jZW5kaWYKICAgICB9OwogCiAgICAg
c3RhdGljIFBhc3NSZWZQdHI8Q1NTUnVsZVNvdXJjZURhdGE+IGNyZWF0ZShUeXBlIHR5cGUpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUnVsZS5oIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1J1bGUuaAppbmRleCA0YzdlYmRiLi5hODAzOTlkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUnVsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlLmgK
QEAgLTU5LDkgKzU5LDYgQEAgcHVibGljOgogI2lmIEVOQUJMRShDU1NfUkVHSU9OUykKICAgICAg
ICAgV0VCS0lUX1JFR0lPTl9SVUxFID0gMTYsCiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0gICAgICAgIFdFQktJVF9GSUxURVJfUlVMRSA9IDE3LAotI2VuZGlmCiAjaWYgRU5BQkxF
KFNIQURPV19ET00pCiAgICAgICAgIEhPU1RfUlVMRSA9IDEwMDEsCiAjZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NSdWxlLmlkbAppbmRleCBmNGQ0ZTZlLi41ODlmODk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUnVsZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGUuaWRs
CkBAIC00Niw5ICs0Niw2IEBACiAjaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1JFR0lPTlMpICYmIEVO
QUJMRV9DU1NfUkVHSU9OUwogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFdFQktJVF9SRUdJT05f
UlVMRSA9IDE2OwogI2VuZGlmCi0jaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpICYmIEVO
QUJMRV9DU1NfU0hBREVSUwotICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFdFQktJVF9GSUxURVJf
UlVMRSA9IDE3OwotI2VuZGlmCiAjaWYgZGVmaW5lZChFTkFCTEVfU0hBRE9XX0RPTSkgJiYgRU5B
QkxFX1NIQURPV19ET00KICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBIT1NUX1JVTEUgPSAxMDAx
OwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNwcAppbmRleCBkY2RlNzM2Li43NjBlOGQwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAKQEAgLTU0LDExICs1NCw3IEBACiAjaW5jbHVkZSAiQ1NT
VmFsdWVMaXN0LmgiCiAjaW5jbHVkZSAiU1ZHQ29sb3IuaCIKICNpbmNsdWRlICJTVkdQYWludC5o
IgotI2luY2x1ZGUgIldlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5oIgogI2luY2x1ZGUgIldl
YktpdENTU0ZpbHRlclZhbHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1
ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIKLSNpbmNsdWRlICJX
ZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIgogI2luY2x1ZGUgIldlYktpdENTU1RyYW5zZm9ybVZhbHVl
LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTIyMiwxNiArMjE4LDYgQEAgYm9vbCBDU1NW
YWx1ZTo6ZXF1YWxzKGNvbnN0IENTU1ZhbHVlJiBvdGhlcikgY29uc3QKICNpZiBFTkFCTEUoQ1NT
X0ZJTFRFUlMpCiAgICAgICAgIGNhc2UgV2ViS2l0Q1NTRmlsdGVyQ2xhc3M6CiAgICAgICAgICAg
ICByZXR1cm4gY29tcGFyZUNTU1ZhbHVlczxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4oKnRoaXMsIG90
aGVyKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGNhc2UgV2ViS2l0Q1NTQXJy
YXlGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgICAgICByZXR1cm4gY29tcGFyZUNTU1ZhbHVl
czxXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+KCp0aGlzLCBvdGhlcik7Ci0gICAgICAgIGNh
c2UgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAgICAgICAgICAgcmV0dXJuIGNv
bXBhcmVDU1NWYWx1ZXM8V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZT4oKnRoaXMsIG90aGVyKTsK
LSAgICAgICAgY2FzZSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgICAg
ICByZXR1cm4gY29tcGFyZUNTU1ZhbHVlczxXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlPigqdGhp
cywgb3RoZXIpOwotICAgICAgICBjYXNlIFdlYktpdENTU1NoYWRlckNsYXNzOgotICAgICAgICAg
ICAgcmV0dXJuIGNvbXBhcmVDU1NWYWx1ZXM8V2ViS2l0Q1NTU2hhZGVyVmFsdWU+KCp0aGlzLCBv
dGhlcik7Ci0jZW5kaWYKICNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAgICAgIGNhc2UgU1ZH
Q29sb3JDbGFzczoKQEAgLTMyMCwxNiArMzA2LDYgQEAgU3RyaW5nIENTU1ZhbHVlOjpjc3NUZXh0
KCkgY29uc3QKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAgICAgY2FzZSBXZWJLaXRDU1NGaWx0
ZXJDbGFzczoKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTRmlsdGVyVmFsdWUodGhpcyktPmN1
c3RvbUNTU1RleHQoKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBXZWJLaXRD
U1NBcnJheUZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTQXJy
YXlGdW5jdGlvblZhbHVlKHRoaXMpLT5jdXN0b21DU1NUZXh0KCk7Ci0gICAgY2FzZSBXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dlYktpdENTU01hdEZ1
bmN0aW9uVmFsdWUodGhpcyktPmN1c3RvbUNTU1RleHQoKTsKLSAgICBjYXNlIFdlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZSh0aGlzKS0+Y3VzdG9tQ1NTVGV4dCgpOwotICAgIGNhc2UgV2ViS2l0Q1NTU2hhZGVy
Q2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dlYktpdENTU1NoYWRlclZhbHVlKHRoaXMpLT5jdXN0
b21DU1NUZXh0KCk7Ci0jZW5kaWYKICNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAgY2FzZSBT
VkdDb2xvckNsYXNzOgpAQCAtNDM5LDIwICs0MTUsNiBAQCB2b2lkIENTU1ZhbHVlOjpkZXN0cm95
KCkKICAgICBjYXNlIFdlYktpdENTU0ZpbHRlckNsYXNzOgogICAgICAgICBkZWxldGUgdG9XZWJL
aXRDU1NGaWx0ZXJWYWx1ZSh0aGlzKTsKICAgICAgICAgcmV0dXJuOwotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICBjYXNlIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAg
ICAgICBkZWxldGUgdG9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUodGhpcyk7Ci0gICAgICAg
IHJldHVybjsKLSAgICBjYXNlIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAg
ICAgZGVsZXRlIHRvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSh0aGlzKTsKLSAgICAgICAgcmV0
dXJuOwotICAgIGNhc2UgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAgICAgICBk
ZWxldGUgdG9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKHRoaXMpOwotICAgICAgICByZXR1cm47
Ci0gICAgY2FzZSBXZWJLaXRDU1NTaGFkZXJDbGFzczoKLSAgICAgICAgZGVsZXRlIHRvV2ViS2l0
Q1NTU2hhZGVyVmFsdWUodGhpcyk7Ci0gICAgICAgIHJldHVybjsKLSNlbmRpZgogI2VuZGlmCiAj
aWYgRU5BQkxFKFNWRykKICAgICBjYXNlIFNWR0NvbG9yQ2xhc3M6CkBAIC00NzksMTQgKzQ0MSw2
IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENTU1ZhbHVlOjpjbG9uZUZvckNTU09NKCkgY29uc3QK
ICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAgICAgY2FzZSBXZWJLaXRDU1NGaWx0ZXJDbGFzczoK
ICAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTRmlsdGVyVmFsdWUodGhpcyktPmNsb25lRm9yQ1NT
T00oKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlKHRoaXMpLT5jbG9uZUZvckNTU09NKCk7Ci0gICAgY2FzZSBXZWJLaXRDU1NNYXRGdW5j
dGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUodGhpcyktPmNsb25lRm9yQ1NTT00oKTsKLSAgICBjYXNlIFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSh0
aGlzKS0+Y2xvbmVGb3JDU1NPTSgpOwotI2VuZGlmCiAjZW5kaWYKICAgICBjYXNlIFdlYktpdENT
U1RyYW5zZm9ybUNsYXNzOgogICAgICAgICByZXR1cm4gdG9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1
ZSh0aGlzKS0+Y2xvbmVGb3JDU1NPTSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAppbmRleCA2MDA1OWQ5
Li45NDJiNzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaApAQCAtOTYsMTIgKzk2LDYgQEAgcHVibGlj
OgogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICAgICBib29sIGlzRmlsdGVySW1hZ2VWYWx1ZSgp
IGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEZpbHRlckltYWdlQ2xhc3M7IH0KICAgICBi
b29sIGlzV2ViS2l0Q1NTRmlsdGVyVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9
PSBXZWJLaXRDU1NGaWx0ZXJDbGFzczsgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBi
b29sIGlzV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFz
c1R5cGUgPT0gV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlQ2xhc3M7IH0KLSAgICBib29sIGlz
V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVDbGFzczsgfQotICAgIGJvb2wgaXNXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gV2ViS2l0Q1NT
TWl4RnVuY3Rpb25WYWx1ZUNsYXNzOyB9Ci0gICAgYm9vbCBpc1dlYktpdENTU1NoYWRlclZhbHVl
KCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gV2ViS2l0Q1NTU2hhZGVyQ2xhc3M7IH0K
LSNlbmRpZgogI2VuZGlmIC8vIEVOQUJMRShDU1NfRklMVEVSUykKICAgICBib29sIGlzR3JpZFRl
bXBsYXRlVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBHcmlkVGVtcGxhdGVD
bGFzczsgfQogI2lmIEVOQUJMRShTVkcpCkBAIC0xNjcsOSArMTYxLDYgQEAgcHJvdGVjdGVkOgog
ICAgICAgICBVbmljb2RlUmFuZ2VDbGFzcywKICAgICAgICAgTGluZUJveENvbnRhaW5DbGFzcywK
ICAgICAgICAgQ2FsY3VsYXRpb25DbGFzcywKLSNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpICYmIEVO
QUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgV2ViS2l0Q1NTU2hhZGVyQ2xhc3MsCi0jZW5kaWYK
ICAgICAgICAgR3JpZFRlbXBsYXRlQ2xhc3MsCiAjaWYgRU5BQkxFKFNWRykKICAgICAgICAgU1ZH
Q29sb3JDbGFzcywKQEAgLTE4MywxMSArMTc0LDYgQEAgcHJvdGVjdGVkOgogI2VuZGlmCiAjaWYg
RU5BQkxFKENTU19GSUxURVJTKQogICAgICAgICBXZWJLaXRDU1NGaWx0ZXJDbGFzcywKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZUNs
YXNzLAotICAgICAgICBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlQ2xhc3MsCi0gICAgICAgIFdl
YktpdENTU01peEZ1bmN0aW9uVmFsdWVDbGFzcywKLSNlbmRpZgogI2VuZGlmCiAgICAgICAgIFdl
YktpdENTU1RyYW5zZm9ybUNsYXNzLAogICAgICAgICAvLyBEbyBub3QgYXBwZW5kIG5vbi1saXN0
IGNsYXNzIHR5cGVzIGhlcmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFs
dWVLZXl3b3Jkcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCmlu
ZGV4IDdhYjY4OWIuLmM3MGVjY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NW
YWx1ZUtleXdvcmRzLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRz
LmluCkBAIC0xMDEwLDE4ICsxMDEwLDcgQEAgYWxwaGFiZXRpYwogY29hcnNlCiBmaW5lCiAKLSNp
ZiAoZGVmaW5lZChFTkFCTEVfQ1NTX0ZJTFRFUlMpICYmIEVOQUJMRV9DU1NfRklMVEVSUykgfHwg
KGRlZmluZWQoRU5BQkxFX0NTU19DT01QT1NJVElORykgJiYgRU5BQkxFX0NTU19DT01QT1NJVElO
RykKLS8vIC13ZWJraXQtZmlsdGVyCi0jaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpICYm
IEVOQUJMRV9DU1NfU0hBREVSUwotLy8gdmFsdWVzIGZvciB0aGUgY3VzdG9tKCkgZnVuY3Rpb24K
LS8vIGJvcmRlci1ib3gKLS8vIHBhZGRpbmctYm94Ci0vLyBjb250ZW50LWJveAotYXR0YWNoZWQK
LWZpbHRlci1ib3gKLWRldGFjaGVkCi0jZW5kaWYgLy8gQ1NTX1NIQURFUlMKLSNlbmRpZiAvLyBD
U1NfRklMVEVSUworI2lmIChkZWZpbmVkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICYmIEVOQUJM
RV9DU1NfQ09NUE9TSVRJTkcpCiAvLyBibGVuZCBtb2RlcwogLy8gbm9ybWFsCiBtdWx0aXBseQpA
QCAtMTAzOSw2ICsxMDI4LDcgQEAgaHVlCiBzYXR1cmF0aW9uCiBjb2xvcgogbHVtaW5vc2l0eQor
I2VuZGlmIC8vIENTU19DT01QT1NJVElORwogCiAvLyBvYmplY3QtZml0CiAvLyBmaWxsCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKaW5kZXggMmNmY2UyMi4uNjI4MjViOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcApAQCAtMTQxLDI0ICsxNDEsNiBAQAogI2luY2x1
ZGUgIlN0eWxlQ2FjaGVkSW1hZ2VTZXQuaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb25z
dGFudHMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCIKLSNpbmNs
dWRlICJDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQYXJh
bWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIgotI2luY2x1ZGUg
IkN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oIgotI2luY2x1ZGUgIlN0eWxlQ2FjaGVk
U2hhZGVyLmgiCi0jaW5jbHVkZSAiU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmgiCi0jaW5jbHVk
ZSAiU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCIKLSNpbmNsdWRlICJTdHlsZVBlbmRp
bmdTaGFkZXIuaCIKLSNpbmNsdWRlICJTdHlsZVNoYWRlci5oIgotI2luY2x1ZGUgIldlYktpdENT
U01peEZ1bmN0aW9uVmFsdWUuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIgot
I2VuZGlmCi0KICNpZiBFTkFCTEUoREFTSEJPQVJEX1NVUFBPUlQpCiAjaW5jbHVkZSAiRGFzaGJv
YXJkUmVnaW9uLmgiCiAjZW5kaWYKQEAgLTI1Niw5ICsyMzgsNiBAQCBpbmxpbmUgdm9pZCBTdHls
ZVJlc29sdmVyOjpTdGF0ZTo6Y2xlYXIoKQogICAgIG1fcGFyZW50Tm9kZSA9IG51bGxwdHI7CiAg
ICAgbV9yZWdpb25Gb3JTdHlsaW5nID0gbnVsbHB0cjsKICAgICBtX3BlbmRpbmdJbWFnZVByb3Bl
cnRpZXMuY2xlYXIoKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgbV9oYXNQZW5kaW5n
U2hhZGVycyA9IGZhbHNlOwotI2VuZGlmCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKSAmJiBFTkFC
TEUoU1ZHKQogICAgIG1fcGVuZGluZ1NWR0RvY3VtZW50cy5jbGVhcigpOwogI2VuZGlmCkBAIC0z
MTA3LDEwICszMDg2LDYgQEAgdm9pZCBTdHlsZVJlc29sdmVyOjphcHBseVByb3BlcnR5KENTU1By
b3BlcnR5SUQgaWQsIENTU1ZhbHVlKiB2YWx1ZSkKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0
V3JhcEZsb3c6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFdyYXBUaHJvdWdoOgogI2VuZGlm
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgQ1NTUHJvcGVydHlNaXg6Ci0gICAg
Y2FzZSBDU1NQcm9wZXJ0eVBhcmFtZXRlcnM6Ci0jZW5kaWYKICAgICBjYXNlIENTU1Byb3BlcnR5
V2hpdGVTcGFjZToKICAgICBjYXNlIENTU1Byb3BlcnR5V2lkb3dzOgogICAgIGNhc2UgQ1NTUHJv
cGVydHlXaWR0aDoKQEAgLTM0MDIsMTAgKzMzNzcsNiBAQCBzdGF0aWMgRmlsdGVyT3BlcmF0aW9u
OjpPcGVyYXRpb25UeXBlIGZpbHRlck9wZXJhdGlvbkZvclR5cGUoV2ViS2l0Q1NTRmlsdGVyVmFs
dQogICAgICAgICByZXR1cm4gRmlsdGVyT3BlcmF0aW9uOjpCTFVSOwogICAgIGNhc2UgV2ViS2l0
Q1NTRmlsdGVyVmFsdWU6OkRyb3BTaGFkb3dGaWx0ZXJPcGVyYXRpb246CiAgICAgICAgIHJldHVy
biBGaWx0ZXJPcGVyYXRpb246OkRST1BfU0hBRE9XOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykK
LSAgICBjYXNlIFdlYktpdENTU0ZpbHRlclZhbHVlOjpDdXN0b21GaWx0ZXJPcGVyYXRpb246Ci0g
ICAgICAgIHJldHVybiBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTTsKLSNlbmRpZgogICAgIGNhc2Ug
V2ViS2l0Q1NTRmlsdGVyVmFsdWU6OlVua25vd25GaWx0ZXJPcGVyYXRpb246CiAgICAgICAgIHJl
dHVybiBGaWx0ZXJPcGVyYXRpb246Ok5PTkU7CiAgICAgfQpAQCAtMzQzMSwzNDAgKzM0MDIsNiBA
QCB2b2lkIFN0eWxlUmVzb2x2ZXI6OmxvYWRQZW5kaW5nU1ZHRG9jdW1lbnRzKCkKIH0KICNlbmRp
ZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotU3R5bGVTaGFkZXIqIFN0eWxlUmVzb2x2ZXI6
OnN0eWxlU2hhZGVyKENTU1ZhbHVlKiB2YWx1ZSkKLXsKLSAgICBpZiAodmFsdWUtPmlzV2ViS2l0
Q1NTU2hhZGVyVmFsdWUoKSkKLSAgICAgICAgcmV0dXJuIGNhY2hlZE9yUGVuZGluZ1N0eWxlU2hh
ZGVyRnJvbVZhbHVlKHRvV2ViS2l0Q1NTU2hhZGVyVmFsdWUodmFsdWUpKTsKLSAgICByZXR1cm4g
MDsKLX0KLQotU3R5bGVTaGFkZXIqIFN0eWxlUmVzb2x2ZXI6OmNhY2hlZE9yUGVuZGluZ1N0eWxl
U2hhZGVyRnJvbVZhbHVlKFdlYktpdENTU1NoYWRlclZhbHVlKiB2YWx1ZSkKLXsKLSAgICBTdHls
ZVNoYWRlciogc2hhZGVyID0gdmFsdWUtPmNhY2hlZE9yUGVuZGluZ1NoYWRlcigpOwotICAgIGlm
IChzaGFkZXIgJiYgc2hhZGVyLT5pc1BlbmRpbmdTaGFkZXIoKSkKLSAgICAgICAgbV9zdGF0ZS5z
ZXRIYXNQZW5kaW5nU2hhZGVycyh0cnVlKTsKLSAgICByZXR1cm4gc2hhZGVyOwotfQotCi1QYXNz
UmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IFN0eWxlUmVzb2x2ZXI6Omxvb2t1cEN1c3RvbUZp
bHRlclByb2dyYW0oV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIHZlcnRleFNoYWRlciwgV2ViS2l0Q1NT
U2hhZGVyVmFsdWUqIGZyYWdtZW50U2hhZGVyLCAKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlw
ZSBwcm9ncmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiBtaXhT
ZXR0aW5ncywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi17Ci0gICAgQ2FjaGVkUmVz
b3VyY2VMb2FkZXIqIGNhY2hlZFJlc291cmNlTG9hZGVyID0gbV9zdGF0ZS5kb2N1bWVudCgpLmNh
Y2hlZFJlc291cmNlTG9hZGVyKCk7Ci0gICAgVVJMIHZlcnRleFNoYWRlclVSTCA9IHZlcnRleFNo
YWRlciA/IHZlcnRleFNoYWRlci0+Y29tcGxldGVVUkwoY2FjaGVkUmVzb3VyY2VMb2FkZXIpIDog
VVJMKCk7Ci0gICAgVVJMIGZyYWdtZW50U2hhZGVyVVJMID0gZnJhZ21lbnRTaGFkZXIgPyBmcmFn
bWVudFNoYWRlci0+Y29tcGxldGVVUkwoY2FjaGVkUmVzb3VyY2VMb2FkZXIpIDogVVJMKCk7Ci0g
ICAgUmVmUHRyPFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3JhbTsKLSAgICBpZiAobV9j
dXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUpCi0gICAgICAgIHByb2dyYW0gPSBtX2N1c3RvbUZpbHRl
clByb2dyYW1DYWNoZS0+bG9va3VwKEN1c3RvbUZpbHRlclByb2dyYW1JbmZvKHZlcnRleFNoYWRl
clVSTCwgZnJhZ21lbnRTaGFkZXJVUkwsIHByb2dyYW1UeXBlLCBtaXhTZXR0aW5ncywgbWVzaFR5
cGUpKTsKLSAgICBpZiAoIXByb2dyYW0pIHsKLSAgICAgICAgLy8gQ3JlYXRlIGEgbmV3IFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbSB0aGF0IHdpbGwgYmUgcmVzb2x2ZWQgZHVyaW5nIHRoZSBsb2Fk
UGVuZGluZ1NoYWRlcnMgYW5kIGFkZGVkIHRvIHRoZSBjYWNoZS4KLSAgICAgICAgcHJvZ3JhbSA9
IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbTo6Y3JlYXRlKHZlcnRleFNoYWRlclVSTCwgdmVydGV4
U2hhZGVyID8gc3R5bGVTaGFkZXIodmVydGV4U2hhZGVyKSA6IDAsIAotICAgICAgICAgICAgZnJh
Z21lbnRTaGFkZXJVUkwsIGZyYWdtZW50U2hhZGVyID8gc3R5bGVTaGFkZXIoZnJhZ21lbnRTaGFk
ZXIpIDogMCwgcHJvZ3JhbVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSk7Ci0gICAgfQotICAg
IHJldHVybiBwcm9ncmFtLnJlbGVhc2UoKTsKLX0KLQotdm9pZCBTdHlsZVJlc29sdmVyOjpsb2Fk
UGVuZGluZ1NoYWRlcnMoKQotewotICAgIC8vIEZJWE1FOiBXZSBzaG91bGRuJ3QgaGF2ZSB0byBj
aGVjayB0aGF0IHN0eWxlIGlzIG5vbi1udWxsLiBUaGlzIGlzIGEgc3BlY3VsYXRpdmUgZml4IGZv
cjoKLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE3NjY1
Ci0gICAgaWYgKCFtX3N0YXRlLmhhc1BlbmRpbmdTaGFkZXJzKCkgfHwgIW1fc3RhdGUuc3R5bGUo
KSB8fCAhbV9zdGF0ZS5zdHlsZSgpLT5oYXNGaWx0ZXIoKSkKLSAgICAgICAgcmV0dXJuOwotCi0g
ICAgQ2FjaGVkUmVzb3VyY2VMb2FkZXIqIGNhY2hlZFJlc291cmNlTG9hZGVyID0gbV9zdGF0ZS5k
b2N1bWVudCgpLmNhY2hlZFJlc291cmNlTG9hZGVyKCk7Ci0KLSAgICBWZWN0b3I8UmVmUHRyPEZp
bHRlck9wZXJhdGlvbj4+JiBmaWx0ZXJPcGVyYXRpb25zID0gbV9zdGF0ZS5zdHlsZSgpLT5tdXRh
YmxlRmlsdGVyKCkub3BlcmF0aW9ucygpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBm
aWx0ZXJPcGVyYXRpb25zLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIFJlZlB0cjxGaWx0ZXJPcGVy
YXRpb24+IGZpbHRlck9wZXJhdGlvbiA9IGZpbHRlck9wZXJhdGlvbnMuYXQoaSk7Ci0gICAgICAg
IGlmIChmaWx0ZXJPcGVyYXRpb24tPnR5cGUoKSA9PSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTSkg
ewotICAgICAgICAgICAgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKiBjdXN0b21GaWx0ZXIgPSBzdGF0
aWNfY2FzdDxDdXN0b21GaWx0ZXJPcGVyYXRpb24qPihmaWx0ZXJPcGVyYXRpb24uZ2V0KCkpOwot
ICAgICAgICAgICAgQVNTRVJUKGN1c3RvbUZpbHRlci0+cHJvZ3JhbSgpKTsKLSAgICAgICAgICAg
IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSA9IHN0YXRpY19jYXN0PFN0eWxlQ3Vz
dG9tRmlsdGVyUHJvZ3JhbSo+KGN1c3RvbUZpbHRlci0+cHJvZ3JhbSgpKTsKLSAgICAgICAgICAg
IC8vIE5vdGUgdGhhdCB0aGUgU3R5bGVQZW5kaW5nU2hhZGVycyBjb3VsZCBiZSBhbHJlYWR5IHJl
c29sdmVkIHRvIFN0eWxlQ2FjaGVkU2hhZGVycy4gVGhhdCdzIGJlY2F1c2UgdGhlIHJ1bGUgd2Fz
IG1hdGNoZWQgYmVmb3JlLgotICAgICAgICAgICAgLy8gSG93ZXZlciwgdGhlIFN0eWxlQ3VzdG9t
RmlsdGVyUHJvZ3JhbSB0aGF0IHdhcyBpbml0aWFsbHkgY3JlYXRlZCBjb3VsZCBoYXZlIGJlZW4g
cmVtb3ZlZCBmcm9tIHRoZSBjYWNoZSBpbiB0aGUgbWVhbndoaWxlLAotICAgICAgICAgICAgLy8g
bWVhbmluZyB0aGF0IHdlIGdldCBhIG5ldyBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0gaGVyZSB0
aGF0IGlzIG5vdCB5ZXQgaW4gdGhlIGNhY2hlLCBidXQgYWxyZWFkeSBoYXMgbG9hZGVkIFN0eWxl
U2hhZGVycy4KLSAgICAgICAgICAgIGlmICghcHJvZ3JhbS0+aGFzUGVuZGluZ1NoYWRlcnMoKSAm
JiBwcm9ncmFtLT5pbkNhY2hlKCkpCi0gICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAg
ICAgICBpZiAoIW1fY3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlKQotICAgICAgICAgICAgICAgIG1f
Y3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlID0gYWRvcHRQdHIobmV3IFN0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbUNhY2hlKCkpOwotICAgICAgICAgICAgUmVmUHRyPFN0eWxlQ3VzdG9tRmlsdGVyUHJv
Z3JhbT4gc3R5bGVQcm9ncmFtID0gbV9jdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUtPmxvb2t1cChw
cm9ncmFtKTsKLSAgICAgICAgICAgIGlmIChzdHlsZVByb2dyYW0uZ2V0KCkpCi0gICAgICAgICAg
ICAgICAgY3VzdG9tRmlsdGVyLT5zZXRQcm9ncmFtKHN0eWxlUHJvZ3JhbS5yZWxlYXNlKCkpOwot
ICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgaWYgKHByb2dyYW0tPnZlcnRleFNo
YWRlcigpICYmIHByb2dyYW0tPnZlcnRleFNoYWRlcigpLT5pc1BlbmRpbmdTaGFkZXIoKSkgewot
ICAgICAgICAgICAgICAgICAgICBXZWJLaXRDU1NTaGFkZXJWYWx1ZSogc2hhZGVyVmFsdWUgPSBz
dGF0aWNfY2FzdDxTdHlsZVBlbmRpbmdTaGFkZXIqPihwcm9ncmFtLT52ZXJ0ZXhTaGFkZXIoKSkt
PmNzc1NoYWRlclZhbHVlKCk7Ci0gICAgICAgICAgICAgICAgICAgIHByb2dyYW0tPnNldFZlcnRl
eFNoYWRlcihzaGFkZXJWYWx1ZS0+Y2FjaGVkU2hhZGVyKGNhY2hlZFJlc291cmNlTG9hZGVyKSk7
Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChwcm9ncmFtLT5mcmFnbWVu
dFNoYWRlcigpICYmIHByb2dyYW0tPmZyYWdtZW50U2hhZGVyKCktPmlzUGVuZGluZ1NoYWRlcigp
KSB7Ci0gICAgICAgICAgICAgICAgICAgIFdlYktpdENTU1NoYWRlclZhbHVlKiBzaGFkZXJWYWx1
ZSA9IHN0YXRpY19jYXN0PFN0eWxlUGVuZGluZ1NoYWRlcio+KHByb2dyYW0tPmZyYWdtZW50U2hh
ZGVyKCkpLT5jc3NTaGFkZXJWYWx1ZSgpOwotICAgICAgICAgICAgICAgICAgICBwcm9ncmFtLT5z
ZXRGcmFnbWVudFNoYWRlcihzaGFkZXJWYWx1ZS0+Y2FjaGVkU2hhZGVyKGNhY2hlZFJlc291cmNl
TG9hZGVyKSk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIG1fY3VzdG9tRmls
dGVyUHJvZ3JhbUNhY2hlLT5hZGQocHJvZ3JhbSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0K
LSAgICB9Ci0gICAgbV9zdGF0ZS5zZXRIYXNQZW5kaW5nU2hhZGVycyhmYWxzZSk7Ci19Ci0KLXN0
YXRpYyBib29sIHNvcnRQYXJhbWV0ZXJzQnlOYW1lQ29tcGFyYXRvcihjb25zdCBSZWZQdHI8Q3Vz
dG9tRmlsdGVyUGFyYW1ldGVyPiYgYSwgY29uc3QgUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRl
cj4mIGIpCi17Ci0gICAgcmV0dXJuIGNvZGVQb2ludENvbXBhcmVMZXNzVGhhbihhLT5uYW1lKCks
IGItPm5hbWUoKSk7Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBTdHls
ZVJlc29sdmVyOjpwYXJzZUN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKGNvbnN0IFN0cmluZyYg
bmFtZSwgQ1NTVmFsdWVMaXN0KiB2YWx1ZXMsIGJvb2wgaXNBcnJheSkKLXsKLSAgICBSZWZQdHI8
Q3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI+IGFycmF5UGFyYW1ldGVyID0gQ3VzdG9tRmlsdGVy
QXJyYXlQYXJhbWV0ZXI6OmNyZWF0ZShuYW1lLCBpc0FycmF5ID8gQ3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXI6OkFSUkFZIDogQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI6Ok1BVFJJWCk7Ci0g
ICAgZm9yICh1bnNpZ25lZCBpID0gMCwgbGVuZ3RoID0gdmFsdWVzLT5sZW5ndGgoKTsgaSA8IGxl
bmd0aDsgKytpKSB7Ci0gICAgICAgIENTU1ZhbHVlKiB2YWx1ZSA9IHZhbHVlcy0+aXRlbVdpdGhv
dXRCb3VuZHNDaGVjayhpKTsKLSAgICAgICAgaWYgKCF2YWx1ZS0+aXNQcmltaXRpdmVWYWx1ZSgp
KQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmlt
aXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUodmFsdWUpOwotICAgICAgICBpZiAocHJp
bWl0aXZlVmFsdWUtPnByaW1pdGl2ZVR5cGUoKSAhPSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05V
TUJFUikKLSAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBhcnJheVBhcmFtZXRlci0+YWRk
VmFsdWUocHJpbWl0aXZlVmFsdWUtPmdldERvdWJsZVZhbHVlKCkpOwotICAgIH0KLSAgICByZXR1
cm4gYXJyYXlQYXJhbWV0ZXIucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRl
clBhcmFtZXRlcj4gU3R5bGVSZXNvbHZlcjo6cGFyc2VDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
cihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlzdCogdmFsdWVzKQotewotICAgIEFTU0VS
VCh2YWx1ZXMtPmxlbmd0aCgpKTsKLSAgICBDU1NQcmltaXRpdmVWYWx1ZSogZmlyc3RQcmltaXRp
dmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUodmFsdWVzLT5pdGVtV2l0aG91dEJvdW5kc0No
ZWNrKDApKTsKLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI+IGNvbG9yUGFy
YW1ldGVyID0gQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKTsKLSAgICBj
b2xvclBhcmFtZXRlci0+c2V0Q29sb3IoQ29sb3IoZmlyc3RQcmltaXRpdmVWYWx1ZS0+Z2V0UkdC
QTMyVmFsdWUoKSkpOwotICAgIHJldHVybiBjb2xvclBhcmFtZXRlci5yZWxlYXNlKCk7Ci19Ci0K
LVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBTdHlsZVJlc29sdmVyOjpwYXJzZUN1
c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlz
dCogdmFsdWVzKQotewotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXI+IG51
bWJlclBhcmFtZXRlciA9IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUp
OwotICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCB2YWx1ZXMtPmxlbmd0aCgpOyArK2kpIHsK
LSAgICAgICAgQ1NTVmFsdWUqIHZhbHVlID0gdmFsdWVzLT5pdGVtV2l0aG91dEJvdW5kc0NoZWNr
KGkpOwotICAgICAgICBpZiAoIXZhbHVlLT5pc1ByaW1pdGl2ZVZhbHVlKCkpCi0gICAgICAgICAg
ICByZXR1cm4gMDsKLSAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1pdGl2ZVZhbHVlID0g
dG9DU1NQcmltaXRpdmVWYWx1ZSh2YWx1ZSk7Ci0gICAgICAgIGlmIChwcmltaXRpdmVWYWx1ZS0+
cHJpbWl0aXZlVHlwZSgpICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKQotICAgICAg
ICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIG51bWJlclBhcmFtZXRlci0+YWRkVmFsdWUocHJpbWl0
aXZlVmFsdWUtPmdldERvdWJsZVZhbHVlKCkpOwotICAgIH0KLSAgICByZXR1cm4gbnVtYmVyUGFy
YW1ldGVyLnJlbGVhc2UoKTsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+
IFN0eWxlUmVzb2x2ZXI6OnBhcnNlQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKGNvbnN0
IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWVMaXN0KiB2YWx1ZXMpCi17Ci0gICAgUmVmUHRyPEN1c3Rv
bUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcj4gdHJhbnNmb3JtUGFyYW1ldGVyID0gQ3VzdG9tRmls
dGVyVHJhbnNmb3JtUGFyYW1ldGVyOjpjcmVhdGUobmFtZSk7Ci0gICAgVHJhbnNmb3JtT3BlcmF0
aW9ucyBvcGVyYXRpb25zOwotICAgIHRyYW5zZm9ybXNGb3JWYWx1ZShtX3N0YXRlLnN0eWxlKCks
IG1fc3RhdGUucm9vdEVsZW1lbnRTdHlsZSgpLCB2YWx1ZXMsIG9wZXJhdGlvbnMpOwotICAgIHRy
YW5zZm9ybVBhcmFtZXRlci0+c2V0T3BlcmF0aW9ucyhvcGVyYXRpb25zKTsKLSAgICByZXR1cm4g
dHJhbnNmb3JtUGFyYW1ldGVyLnJlbGVhc2UoKTsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0
ZXJQYXJhbWV0ZXI+IFN0eWxlUmVzb2x2ZXI6OnBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKGNv
bnN0IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWUqIHBhcmFtZXRlclZhbHVlKQotewotICAgIC8vIEZJ
WE1FOiBJbXBsZW1lbnQgb3RoZXIgcGFyYW1ldGVycyB0eXBlcyBwYXJzaW5nLgotICAgIC8vIHRl
eHR1cmVzOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE0NDIKLSAg
ICAvLyBtYXQyLCBtYXQzLCBtYXQ0OiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzE0NDQKLSAgICAvLyBOdW1iZXIgcGFyYW1ldGVycyBhcmUgd3JhcHBlZCBpbnNpZGUg
YSBDU1NWYWx1ZUxpc3QgYW5kIGFsbAotICAgIC8vIHRoZSBvdGhlciBmdW5jdGlvbnMgdmFsdWVz
IGluaGVyaXQgZnJvbSBDU1NWYWx1ZUxpc3QuCi0gICAgaWYgKCFwYXJhbWV0ZXJWYWx1ZS0+aXNW
YWx1ZUxpc3QoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBDU1NWYWx1ZUxpc3QqIHZhbHVl
cyA9IHRvQ1NTVmFsdWVMaXN0KHBhcmFtZXRlclZhbHVlKTsKLSAgICBpZiAoIXZhbHVlcy0+bGVu
Z3RoKCkpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgaWYgKHBhcmFtZXRlclZhbHVlLT5pc1dl
YktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSgpKQotICAgICAgICByZXR1cm4gcGFyc2VDdXN0b21G
aWx0ZXJBcnJheVBhcmFtZXRlcihuYW1lLCB2YWx1ZXMsIHRydWUpOwotCi0gICAgaWYgKHBhcmFt
ZXRlclZhbHVlLT5pc1dlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUoKSkKLSAgICAgICAgcmV0dXJu
IHBhcnNlQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIobmFtZSwgdmFsdWVzLCBmYWxzZSk7Ci0K
LSAgICAvLyBJZiB0aGUgZmlyc3QgdmFsdWUgb2YgdGhlIGxpc3QgaXMgYSB0cmFuc2Zvcm0gZnVu
Y3Rpb24sCi0gICAgLy8gdGhlbiB3ZSBjb3VsZCBzYWZlbHkgYXNzdW1lIHRoYXQgYWxsIHRoZSBy
ZW1haW5pbmcgaXRlbXMKLSAgICAvLyBhcmUgdHJhbnNmb3Jtcy4gcGFyc2VDdXN0b21GaWx0ZXJU
cmFuc2Zvcm1QYXJhbWV0ZXIgd2lsbAotICAgIC8vIHJldHVybiAwIGlmIHRoYXQgYXNzdW1wdGlv
biBpcyBpbmNvcnJlY3QuCi0gICAgaWYgKHZhbHVlcy0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjaygw
KS0+aXNXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZSgpKQotICAgICAgICByZXR1cm4gcGFyc2VDdXN0
b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIobmFtZSwgdmFsdWVzKTsKLQotICAgIC8vIFdlIGNh
biBvbmx5IGhhdmUgYXJyYXlzIG9mIGNvbG9ycyBvciBudW1iZXJzLCBzbyB1c2UgdGhlIGZpcnN0
IHZhbHVlIHRvIGNob29zZSBiZXR3ZWVuIHRob3NlIHR3by4KLSAgICAvLyBXZSBuZWVkIHVwIHRv
IDQgdmFsdWVzIChhbGwgYm9vbGVhbnMgb3IgYWxsIG51bWJlcnMpLgotICAgIGlmICghdmFsdWVz
LT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDApLT5pc1ByaW1pdGl2ZVZhbHVlKCkgfHwgdmFsdWVz
LT5sZW5ndGgoKSA+IDQpCi0gICAgICAgIHJldHVybiAwOwotICAgIAotICAgIENTU1ByaW1pdGl2
ZVZhbHVlKiBmaXJzdFByaW1pdGl2ZVZhbHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZSh2YWx1ZXMt
Pml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMCkpOwotICAgIGlmIChmaXJzdFByaW1pdGl2ZVZhbHVl
LT5wcmltaXRpdmVUeXBlKCkgPT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpCi0gICAg
ICAgIHJldHVybiBwYXJzZUN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcihuYW1lLCB2YWx1ZXMp
OwotCi0gICAgaWYgKGZpcnN0UHJpbWl0aXZlVmFsdWUtPnByaW1pdGl2ZVR5cGUoKSA9PSBDU1NQ
cmltaXRpdmVWYWx1ZTo6Q1NTX1JHQkNPTE9SKQotICAgICAgICByZXR1cm4gcGFyc2VDdXN0b21G
aWx0ZXJDb2xvclBhcmFtZXRlcihuYW1lLCB2YWx1ZXMpOwotCi0gICAgcmV0dXJuIDA7Ci19Ci0K
LWJvb2wgU3R5bGVSZXNvbHZlcjo6cGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0KENTU1Zh
bHVlKiBwYXJhbWV0ZXJzVmFsdWUsIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHBhcmFtZXRl
ckxpc3QpCi17Ci0gICAgSGFzaFNldDxTdHJpbmc+IGtub3duUGFyYW1ldGVyTmFtZXM7Ci0gICAg
Q1NTVmFsdWVMaXN0SXRlcmF0b3IgcGFyYW1ldGVySXRlcmF0b3IocGFyYW1ldGVyc1ZhbHVlKTsK
LSAgICBmb3IgKDsgcGFyYW1ldGVySXRlcmF0b3IuaGFzTW9yZSgpOyBwYXJhbWV0ZXJJdGVyYXRv
ci5hZHZhbmNlKCkpIHsKLSAgICAgICAgaWYgKCFwYXJhbWV0ZXJJdGVyYXRvci52YWx1ZSgpLT5p
c1ZhbHVlTGlzdCgpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBDU1NWYWx1
ZUxpc3RJdGVyYXRvciBpdGVyYXRvcihwYXJhbWV0ZXJJdGVyYXRvci52YWx1ZSgpKTsKLSAgICAg
ICAgaWYgKCFpdGVyYXRvci5pc1ByaW1pdGl2ZVZhbHVlKCkpCi0gICAgICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NT
UHJpbWl0aXZlVmFsdWUoaXRlcmF0b3IudmFsdWUoKSk7Ci0gICAgICAgIGlmIChwcmltaXRpdmVW
YWx1ZS0+cHJpbWl0aXZlVHlwZSgpICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfU1RSSU5HKQot
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAKLSAgICAgICAgU3RyaW5nIG5hbWUg
PSBwcmltaXRpdmVWYWx1ZS0+Z2V0U3RyaW5nVmFsdWUoKTsKLSAgICAgICAgLy8gRG8gbm90IGFs
bG93IGR1cGxpY2F0ZSBwYXJhbWV0ZXIgbmFtZXMuCi0gICAgICAgIGlmIChrbm93blBhcmFtZXRl
ck5hbWVzLmNvbnRhaW5zKG5hbWUpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAg
ICBrbm93blBhcmFtZXRlck5hbWVzLmFkZChuYW1lKTsKLSAgICAgICAgCi0gICAgICAgIGl0ZXJh
dG9yLmFkdmFuY2UoKTsKLSAgICAgICAgCi0gICAgICAgIGlmICghaXRlcmF0b3IuaGFzTW9yZSgp
KQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAKLSAgICAgICAgUmVmUHRyPEN1
c3RvbUZpbHRlclBhcmFtZXRlcj4gcGFyYW1ldGVyID0gcGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0
ZXIobmFtZSwgaXRlcmF0b3IudmFsdWUoKSk7Ci0gICAgICAgIGlmICghcGFyYW1ldGVyKQotICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBwYXJhbWV0ZXJMaXN0LmFwcGVuZChwYXJh
bWV0ZXIucmVsZWFzZSgpKTsKLSAgICB9Ci0gICAgCi0gICAgLy8gTWFrZSBzdXJlIHdlIHNvcnQg
dGhlIHBhcmFtZXRlcnMgYmVmb3JlIHBhc3NpbmcgdGhlbSBkb3duIHRvIHRoZSBDdXN0b21GaWx0
ZXJPcGVyYXRpb24uCi0gICAgc3RkOjpzb3J0KHBhcmFtZXRlckxpc3QuYmVnaW4oKSwgcGFyYW1l
dGVyTGlzdC5lbmQoKSwgc29ydFBhcmFtZXRlcnNCeU5hbWVDb21wYXJhdG9yKTsKLSAgICAKLSAg
ICByZXR1cm4gdHJ1ZTsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJPcGVyYXRpb24+IFN0
eWxlUmVzb2x2ZXI6OmNyZWF0ZUN1c3RvbUZpbHRlck9wZXJhdGlvbldpdGhBdFJ1bGVSZWZlcmVu
Y2VTeW50YXgoV2ViS2l0Q1NTRmlsdGVyVmFsdWUqIGZpbHRlclZhbHVlKQotewotICAgIC8vIEZJ
WE1FOiBJbXBsZW1lbnQgc3R5bGUgcmVzb2x1dGlvbiBmb3IgdGhlIGN1c3RvbSBmaWx0ZXIgYXQt
cnVsZSByZWZlcmVuY2Ugc3ludGF4LgotICAgIFVOVVNFRF9QQVJBTShmaWx0ZXJWYWx1ZSk7Ci0g
ICAgcmV0dXJuIDA7Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyT3BlcmF0aW9uPiBTdHls
ZVJlc29sdmVyOjpjcmVhdGVDdXN0b21GaWx0ZXJPcGVyYXRpb25XaXRoSW5saW5lU3ludGF4KFdl
YktpdENTU0ZpbHRlclZhbHVlKiBmaWx0ZXJWYWx1ZSkKLXsKLSAgICBDU1NWYWx1ZSogc2hhZGVy
c1ZhbHVlID0gZmlsdGVyVmFsdWUtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMCk7Ci0gICAgQVNT
RVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oc2hhZGVyc1ZhbHVlLT5pc1ZhbHVlTGlzdCgp
KTsKLSAgICBDU1NWYWx1ZUxpc3QqIHNoYWRlcnNMaXN0ID0gdG9DU1NWYWx1ZUxpc3Qoc2hhZGVy
c1ZhbHVlKTsKLQotICAgIHVuc2lnbmVkIHNoYWRlcnNMaXN0TGVuZ3RoID0gc2hhZGVyc0xpc3Qt
Pmxlbmd0aCgpOwotICAgIEFTU0VSVChzaGFkZXJzTGlzdExlbmd0aCk7Ci0KLQotICAgIFdlYktp
dENTU1NoYWRlclZhbHVlKiB2ZXJ0ZXhTaGFkZXIgPSAwOwotICAgIFdlYktpdENTU1NoYWRlclZh
bHVlKiBmcmFnbWVudFNoYWRlciA9IDA7Ci0KLSAgICBpZiAoc2hhZGVyc0xpc3QtPml0ZW1XaXRo
b3V0Qm91bmRzQ2hlY2soMCktPmlzV2ViS2l0Q1NTU2hhZGVyVmFsdWUoKSkKLSAgICAgICAgdmVy
dGV4U2hhZGVyID0gdG9XZWJLaXRDU1NTaGFkZXJWYWx1ZShzaGFkZXJzTGlzdC0+aXRlbVdpdGhv
dXRCb3VuZHNDaGVjaygwKSk7Ci0KLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFt
VHlwZSA9IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJFOwotICAgIEN1c3RvbUZp
bHRlclByb2dyYW1NaXhTZXR0aW5ncyBtaXhTZXR0aW5nczsKLQotICAgIGlmIChzaGFkZXJzTGlz
dExlbmd0aCA+IDEpIHsKLSAgICAgICAgQ1NTVmFsdWUqIGZyYWdtZW50U2hhZGVyT3JNaXhGdW5j
dGlvbiA9IHNoYWRlcnNMaXN0LT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDEpOwotICAgICAgICBp
ZiAoZnJhZ21lbnRTaGFkZXJPck1peEZ1bmN0aW9uLT5pc1dlYktpdENTU01peEZ1bmN0aW9uVmFs
dWUoKSkgewotICAgICAgICAgICAgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSogbWl4RnVuY3Rp
b24gPSB0b1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUoZnJhZ21lbnRTaGFkZXJPck1peEZ1bmN0
aW9uKTsKLSAgICAgICAgICAgIENTU1ZhbHVlTGlzdEl0ZXJhdG9yIGl0ZXJhdG9yKG1peEZ1bmN0
aW9uKTsKLQotICAgICAgICAgICAgQVNTRVJUKG1peEZ1bmN0aW9uLT5sZW5ndGgoKSk7Ci0gICAg
ICAgICAgICBpZiAoaXRlcmF0b3IudmFsdWUoKS0+aXNXZWJLaXRDU1NTaGFkZXJWYWx1ZSgpKQot
ICAgICAgICAgICAgICAgIGZyYWdtZW50U2hhZGVyID0gdG9XZWJLaXRDU1NTaGFkZXJWYWx1ZShp
dGVyYXRvci52YWx1ZSgpKTsKLQotICAgICAgICAgICAgaXRlcmF0b3IuYWR2YW5jZSgpOwotCi0g
ICAgICAgICAgICBBU1NFUlQobWl4RnVuY3Rpb24tPmxlbmd0aCgpIDw9IDMpOwotICAgICAgICAg
ICAgd2hpbGUgKGl0ZXJhdG9yLmhhc01vcmUoKSkgewotICAgICAgICAgICAgICAgIENTU1ByaW1p
dGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUoaXRlcmF0b3Iu
dmFsdWUoKSk7Ci0gICAgICAgICAgICAgICAgaWYgKENTU1BhcnNlcjo6aXNCbGVuZE1vZGUocHJp
bWl0aXZlVmFsdWUtPmdldFZhbHVlSUQoKSkpCi0gICAgICAgICAgICAgICAgICAgIG1peFNldHRp
bmdzLmJsZW5kTW9kZSA9ICpwcmltaXRpdmVWYWx1ZTsKLSAgICAgICAgICAgICAgICBlbHNlIGlm
IChDU1NQYXJzZXI6OmlzQ29tcG9zaXRlT3BlcmF0b3IocHJpbWl0aXZlVmFsdWUtPmdldFZhbHVl
SUQoKSkpCi0gICAgICAgICAgICAgICAgICAgIG1peFNldHRpbmdzLmNvbXBvc2l0ZU9wZXJhdG9y
ID0gKnByaW1pdGl2ZVZhbHVlOwotICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAg
ICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgICAgICAgICAgaXRlcmF0b3IuYWR2
YW5jZSgpOwotICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgcHJv
Z3JhbVR5cGUgPSBQUk9HUkFNX1RZUEVfTk9fRUxFTUVOVF9URVhUVVJFOwotICAgICAgICAgICAg
aWYgKGZyYWdtZW50U2hhZGVyT3JNaXhGdW5jdGlvbi0+aXNXZWJLaXRDU1NTaGFkZXJWYWx1ZSgp
KQotICAgICAgICAgICAgICAgIGZyYWdtZW50U2hhZGVyID0gdG9XZWJLaXRDU1NTaGFkZXJWYWx1
ZShmcmFnbWVudFNoYWRlck9yTWl4RnVuY3Rpb24pOwotICAgICAgICB9Ci0gICAgfQotCi0gICAg
aWYgKCF2ZXJ0ZXhTaGFkZXIgJiYgIWZyYWdtZW50U2hhZGVyKQotICAgICAgICByZXR1cm4gMDsK
LQotICAgIHVuc2lnbmVkIG1lc2hSb3dzID0gMTsKLSAgICB1bnNpZ25lZCBtZXNoQ29sdW1ucyA9
IDE7Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUgPSBNZXNoVHlwZUF0dGFjaGVk
OwotICAgIAotICAgIENTU1ZhbHVlKiBwYXJhbWV0ZXJzVmFsdWUgPSAwOwotICAgIAotICAgIGlm
IChmaWx0ZXJWYWx1ZS0+bGVuZ3RoKCkgPiAxKSB7Ci0gICAgICAgIENTU1ZhbHVlTGlzdEl0ZXJh
dG9yIGl0ZXJhdG9yKGZpbHRlclZhbHVlLT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDEpKTsKLSAg
ICAgICAgCi0gICAgICAgIC8vIFRoZSBzZWNvbmQgdmFsdWUgbWlnaHQgYmUgdGhlIG1lc2ggYm94
IG9yIHRoZSBsaXN0IG9mIHBhcmFtZXRlcnM6Ci0gICAgICAgIC8vIElmIGl0IHN0YXJ0cyB3aXRo
IGEgbnVtYmVyIG9yIGFueSBvZiB0aGUgbWVzaC1ib3ggaWRlbnRpZmllcnMgaXQgaXMgCi0gICAg
ICAgIC8vIHRoZSBtZXNoLWJveCBsaXN0LCBpZiBub3QgaXQgbWVhbnMgaXQgaXMgdGhlIHBhcmFt
ZXRlcnMgbGlzdC4KLQotICAgICAgICBpZiAoaXRlcmF0b3IuaGFzTW9yZSgpICYmIGl0ZXJhdG9y
LmlzUHJpbWl0aXZlVmFsdWUoKSkgewotICAgICAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHBy
aW1pdGl2ZVZhbHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZShpdGVyYXRvci52YWx1ZSgpKTsKLSAg
ICAgICAgICAgIGlmIChwcmltaXRpdmVWYWx1ZS0+aXNOdW1iZXIoKSkgewotICAgICAgICAgICAg
ICAgIC8vIElmIG9ubHkgb25lIGludGVnZXIgdmFsdWUgaXMgc3BlY2lmaWVkLCBpdCB3aWxsIHNl
dCBib3RoCi0gICAgICAgICAgICAgICAgLy8gdGhlIHJvd3MgYW5kIHRoZSBjb2x1bW5zLgotICAg
ICAgICAgICAgICAgIG1lc2hDb2x1bW5zID0gbWVzaFJvd3MgPSBwcmltaXRpdmVWYWx1ZS0+Z2V0
SW50VmFsdWUoKTsKLSAgICAgICAgICAgICAgICBpdGVyYXRvci5hZHZhbmNlKCk7Ci0gICAgICAg
ICAgICAgICAgCi0gICAgICAgICAgICAgICAgLy8gVHJ5IHRvIG1hdGNoIGFub3RoZXIgbnVtYmVy
IGZvciB0aGUgcm93cy4KLSAgICAgICAgICAgICAgICBpZiAoaXRlcmF0b3IuaGFzTW9yZSgpICYm
IGl0ZXJhdG9yLmlzUHJpbWl0aXZlVmFsdWUoKSkgewotICAgICAgICAgICAgICAgICAgICBDU1NQ
cmltaXRpdmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2ZVZhbHVlKGl0ZXJh
dG9yLnZhbHVlKCkpOwotICAgICAgICAgICAgICAgICAgICBpZiAocHJpbWl0aXZlVmFsdWUtPmlz
TnVtYmVyKCkpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG1lc2hSb3dzID0gcHJpbWl0aXZl
VmFsdWUtPmdldEludFZhbHVlKCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRvci5h
ZHZhbmNlKCk7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGlmIChpdGVyYXRvci5oYXNN
b3JlKCkgJiYgaXRlcmF0b3IuaXNQcmltaXRpdmVWYWx1ZSgpKSB7Ci0gICAgICAgICAgICBDU1NQ
cmltaXRpdmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2ZVZhbHVlKGl0ZXJh
dG9yLnZhbHVlKCkpOwotICAgICAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlE
KCkgPT0gQ1NTVmFsdWVEZXRhY2hlZCkgewotICAgICAgICAgICAgICAgIG1lc2hUeXBlID0gTWVz
aFR5cGVEZXRhY2hlZDsKLSAgICAgICAgICAgICAgICBpdGVyYXRvci5hZHZhbmNlKCk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGlmICghaXRlcmF0b3IuaW5k
ZXgoKSkgewotICAgICAgICAgICAgLy8gSWYgbm8gdmFsdWUgd2FzIGNvbnN1bWVkIGZyb20gdGhl
IG1lc2ggdmFsdWUsIHRoZW4gaXQgaXMganVzdCBhIHBhcmFtZXRlciBsaXN0LCBtZWFuaW5nIHRo
YXQgd2UgZW5kIHVwCi0gICAgICAgICAgICAvLyBoYXZpbmcganVzdCB0d28gQ1NTTGlzdFZhbHVl
czogbGlzdCBvZiBzaGFkZXJzIGFuZCBsaXN0IG9mIHBhcmFtZXRlcnMuCi0gICAgICAgICAgICBB
U1NFUlQoZmlsdGVyVmFsdWUtPmxlbmd0aCgpID09IDIpOwotICAgICAgICAgICAgcGFyYW1ldGVy
c1ZhbHVlID0gZmlsdGVyVmFsdWUtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMSk7Ci0gICAgICAg
IH0KLSAgICB9Ci0gICAgCi0gICAgaWYgKGZpbHRlclZhbHVlLT5sZW5ndGgoKSA+IDIgJiYgIXBh
cmFtZXRlcnNWYWx1ZSkKLSAgICAgICAgcGFyYW1ldGVyc1ZhbHVlID0gZmlsdGVyVmFsdWUtPml0
ZW1XaXRob3V0Qm91bmRzQ2hlY2soMik7Ci0gICAgCi0gICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
TGlzdCBwYXJhbWV0ZXJMaXN0OwotICAgIGlmIChwYXJhbWV0ZXJzVmFsdWUgJiYgIXBhcnNlQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyTGlzdChwYXJhbWV0ZXJzVmFsdWUsIHBhcmFtZXRlckxpc3QpKQot
ICAgICAgICByZXR1cm4gMDsKLQotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiBwcm9n
cmFtID0gbG9va3VwQ3VzdG9tRmlsdGVyUHJvZ3JhbSh2ZXJ0ZXhTaGFkZXIsIGZyYWdtZW50U2hh
ZGVyLCBwcm9ncmFtVHlwZSwgbWl4U2V0dGluZ3MsIG1lc2hUeXBlKTsKLSAgICByZXR1cm4gQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uOjpjcmVhdGUocHJvZ3JhbS5yZWxlYXNlKCksIHBhcmFtZXRlckxp
c3QsIG1lc2hSb3dzLCBtZXNoQ29sdW1ucyk7Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVy
T3BlcmF0aW9uPiBTdHlsZVJlc29sdmVyOjpjcmVhdGVDdXN0b21GaWx0ZXJPcGVyYXRpb24oV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUqIGZpbHRlclZhbHVlKQotewotICAgIEFTU0VSVChmaWx0ZXJWYWx1
ZS0+bGVuZ3RoKCkpOwotICAgIGJvb2wgaXNBdFJ1bGVSZWZlcmVuY2VTeW50YXggPSBmaWx0ZXJW
YWx1ZS0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjaygwKS0+aXNQcmltaXRpdmVWYWx1ZSgpOwotICAg
IHJldHVybiBpc0F0UnVsZVJlZmVyZW5jZVN5bnRheCA/IGNyZWF0ZUN1c3RvbUZpbHRlck9wZXJh
dGlvbldpdGhBdFJ1bGVSZWZlcmVuY2VTeW50YXgoZmlsdGVyVmFsdWUpIDogY3JlYXRlQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uV2l0aElubGluZVN5bnRheChmaWx0ZXJWYWx1ZSk7Ci19Ci0KLSNlbmRp
ZgotCiBib29sIFN0eWxlUmVzb2x2ZXI6OmNyZWF0ZUZpbHRlck9wZXJhdGlvbnMoQ1NTVmFsdWUq
IGluVmFsdWUsIEZpbHRlck9wZXJhdGlvbnMmIG91dE9wZXJhdGlvbnMpCiB7CiAgICAgU3RhdGUm
IHN0YXRlID0gbV9zdGF0ZTsKQEAgLTM3OTQsMjEgKzM0MzEsNiBAQCBib29sIFN0eWxlUmVzb2x2
ZXI6OmNyZWF0ZUZpbHRlck9wZXJhdGlvbnMoQ1NTVmFsdWUqIGluVmFsdWUsIEZpbHRlck9wZXJh
dGlvbnMmCiAgICAgICAgIFdlYktpdENTU0ZpbHRlclZhbHVlKiBmaWx0ZXJWYWx1ZSA9IHRvV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUoaS52YWx1ZSgpKTsKICAgICAgICAgRmlsdGVyT3BlcmF0aW9uOjpP
cGVyYXRpb25UeXBlIG9wZXJhdGlvblR5cGUgPSBmaWx0ZXJPcGVyYXRpb25Gb3JUeXBlKGZpbHRl
clZhbHVlLT5vcGVyYXRpb25UeXBlKCkpOwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
ICAgICBpZiAob3BlcmF0aW9uVHlwZSA9PSBGaWx0ZXJPcGVyYXRpb246OlZBTElEQVRFRF9DVVNU
T00pIHsKLSAgICAgICAgICAgIC8vIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbiBpcyBu
b3Qgc3VwcG9zZWQgdG8gZW5kIHVwIGluIHRoZSBSZW5kZXJTdHlsZS4KLSAgICAgICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0KLSAg
ICAgICAgaWYgKG9wZXJhdGlvblR5cGUgPT0gRmlsdGVyT3BlcmF0aW9uOjpDVVNUT00pIHsKLSAg
ICAgICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJPcGVyYXRpb24+IG9wZXJhdGlvbiA9IGNyZWF0
ZUN1c3RvbUZpbHRlck9wZXJhdGlvbihmaWx0ZXJWYWx1ZSk7Ci0gICAgICAgICAgICBpZiAoIW9w
ZXJhdGlvbikKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAKLSAg
ICAgICAgICAgIG9wZXJhdGlvbnMub3BlcmF0aW9ucygpLmFwcGVuZChvcGVyYXRpb24pOwotICAg
ICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0KLSNlbmRpZgogICAgICAgICBpZiAob3BlcmF0
aW9uVHlwZSA9PSBGaWx0ZXJPcGVyYXRpb246OlJFRkVSRU5DRSkgewogI2lmIEVOQUJMRShTVkcp
CiAgICAgICAgICAgICBpZiAoZmlsdGVyVmFsdWUtPmxlbmd0aCgpICE9IDEpCkBAIC00MDkwLDEx
ICszNzEyLDYgQEAgdm9pZCBTdHlsZVJlc29sdmVyOjpsb2FkUGVuZGluZ1Jlc291cmNlcygpCiAg
ICAgLy8gU3RhcnQgbG9hZGluZyBpbWFnZXMgcmVmZXJlbmNlZCBieSB0aGlzIHN0eWxlLgogICAg
IGxvYWRQZW5kaW5nSW1hZ2VzKCk7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgLy8g
U3RhcnQgbG9hZGluZyB0aGUgc2hhZGVycyByZWZlcmVuY2VkIGJ5IHRoaXMgc3R5bGUuCi0gICAg
bG9hZFBlbmRpbmdTaGFkZXJzKCk7Ci0jZW5kaWYKLSAgICAKICNpZiBFTkFCTEUoQ1NTX0ZJTFRF
UlMpICYmIEVOQUJMRShTVkcpCiAgICAgLy8gU3RhcnQgbG9hZGluZyB0aGUgU1ZHIERvY3VtZW50
cyByZWZlcmVuY2VkIGJ5IHRoaXMgc3R5bGUuCiAgICAgbG9hZFBlbmRpbmdTVkdEb2N1bWVudHMo
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5oCmluZGV4IGNhNTg1ZmQuLmIwNWNhNzYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaApAQCAtMzgsOSArMzgsNiBAQAogI2luY2x1ZGUg
IlN0eWxlSW5oZXJpdGVkRGF0YS5oIgogI2luY2x1ZGUgIlN0eWxlU2NvcGVSZXNvbHZlci5oIgog
I2luY2x1ZGUgIlZpZXdwb3J0U3R5bGVSZXNvbHZlci5oIgotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNlbmRpZgogI2luY2x1ZGUg
PHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYv
UmVmUHRyLmg+CkBAIC02NCwxMSArNjEsNiBAQCBjbGFzcyBDU1NTZWxlY3RvcjsKIGNsYXNzIENT
U1N0eWxlU2hlZXQ7CiBjbGFzcyBDU1NWYWx1ZTsKIGNsYXNzIENvbnRhaW5lck5vZGU7Ci1jbGFz
cyBDdXN0b21GaWx0ZXJPcGVyYXRpb247Ci1jbGFzcyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI7Ci1j
bGFzcyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0OwotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3Jh
bTsKLXN0cnVjdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3M7CiBjbGFzcyBEb2N1bWVu
dDsKIGNsYXNzIERlcHJlY2F0ZWRTdHlsZUJ1aWxkZXI7CiBjbGFzcyBFbGVtZW50OwpAQCAtODQs
NyArNzYsNiBAQCBjbGFzcyBSZW5kZXJTY3JvbGxiYXI7CiBjbGFzcyBSdWxlRGF0YTsKIGNsYXNz
IFJ1bGVTZXQ7CiBjbGFzcyBTZXR0aW5nczsKLWNsYXNzIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUNhY2hlOwogY2xhc3MgU3R5bGVTY29wZVJlc29sdmVyOwogY2xhc3MgU3R5bGVJbWFnZTsKIGNs
YXNzIFN0eWxlS2V5ZnJhbWU7CkBAIC05NywxMyArODgsMTEgQEAgY2xhc3MgU3R5bGVSdWxlSG9z
dDsKIGNsYXNzIFN0eWxlUnVsZUtleWZyYW1lczsKIGNsYXNzIFN0eWxlUnVsZVBhZ2U7CiBjbGFz
cyBTdHlsZVJ1bGVSZWdpb247Ci1jbGFzcyBTdHlsZVNoYWRlcjsKIGNsYXNzIFN0eWxlU2hlZXQ7
CiBjbGFzcyBTdHlsZVNoZWV0TGlzdDsKIGNsYXNzIFN0eWxlZEVsZW1lbnQ7CiBjbGFzcyBWaWV3
cG9ydFN0eWxlUmVzb2x2ZXI7CiBjbGFzcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTsKLWNsYXNzIFdl
YktpdENTU1NoYWRlclZhbHVlOwogCiBjbGFzcyBNZWRpYVF1ZXJ5UmVzdWx0IHsKICAgICBXVEZf
TUFLRV9OT05DT1BZQUJMRShNZWRpYVF1ZXJ5UmVzdWx0KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FU
RUQ7CkBAIC0yNjQsMjIgKzI1Myw2IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShDU1NfRklMVEVS
UykKICAgICBib29sIGNyZWF0ZUZpbHRlck9wZXJhdGlvbnMoQ1NTVmFsdWUqIGluVmFsdWUsIEZp
bHRlck9wZXJhdGlvbnMmIG91dE9wZXJhdGlvbnMpOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykK
LSAgICBTdHlsZVNoYWRlciogc3R5bGVTaGFkZXIoQ1NTVmFsdWUqKTsKLSAgICBTdHlsZVNoYWRl
ciogY2FjaGVkT3JQZW5kaW5nU3R5bGVTaGFkZXJGcm9tVmFsdWUoV2ViS2l0Q1NTU2hhZGVyVmFs
dWUqKTsKLSAgICBib29sIHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdChDU1NWYWx1ZSos
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmKTsKLSAgICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRl
clBhcmFtZXRlcj4gcGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1l
LCBDU1NWYWx1ZSopOwotICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBwYXJz
ZUN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKGNvbnN0IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWVM
aXN0Kik7Ci0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IHBhcnNlQ3VzdG9t
RmlsdGVyQXJyYXlQYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lLCBDU1NWYWx1ZUxpc3QqLCBi
b29sKTsKLSAgICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gcGFyc2VDdXN0b21G
aWx0ZXJOdW1iZXJQYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lLCBDU1NWYWx1ZUxpc3QqKTsK
LSAgICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gcGFyc2VDdXN0b21GaWx0ZXJU
cmFuc2Zvcm1QYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lLCBDU1NWYWx1ZUxpc3QqKTsKLSAg
ICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gY3JlYXRlQ3VzdG9tRmlsdGVyT3Bl
cmF0aW9uV2l0aEF0UnVsZVJlZmVyZW5jZVN5bnRheChXZWJLaXRDU1NGaWx0ZXJWYWx1ZSopOwot
ICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyT3BlcmF0aW9uPiBjcmVhdGVDdXN0b21GaWx0ZXJP
cGVyYXRpb25XaXRoSW5saW5lU3ludGF4KFdlYktpdENTU0ZpbHRlclZhbHVlKik7Ci0gICAgUGFz
c1JlZlB0cjxDdXN0b21GaWx0ZXJPcGVyYXRpb24+IGNyZWF0ZUN1c3RvbUZpbHRlck9wZXJhdGlv
bihXZWJLaXRDU1NGaWx0ZXJWYWx1ZSopOwotICAgIHZvaWQgbG9hZFBlbmRpbmdTaGFkZXJzKCk7
Ci0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiBsb29rdXBDdXN0b21GaWx0ZXJQ
cm9ncmFtKFdlYktpdENTU1NoYWRlclZhbHVlKiB2ZXJ0ZXhTaGFkZXIsIFdlYktpdENTU1NoYWRl
clZhbHVlKiBmcmFnbWVudFNoYWRlciwgCi0gICAgICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBl
LCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmLCBDdXN0b21GaWx0ZXJNZXNo
VHlwZSk7Ci0jZW5kaWYKICNpZiBFTkFCTEUoU1ZHKQogICAgIHZvaWQgbG9hZFBlbmRpbmdTVkdE
b2N1bWVudHMoKTsKICNlbmRpZgpAQCAtMzkyLDkgKzM2NSw2IEBAIHB1YmxpYzoKICAgICAgICAg
LCBtX2VsZW1lbnRBZmZlY3RlZEJ5Q2xhc3NSdWxlcyhmYWxzZSkKICAgICAgICAgLCBtX2FwcGx5
UHJvcGVydHlUb1JlZ3VsYXJTdHlsZSh0cnVlKQogICAgICAgICAsIG1fYXBwbHlQcm9wZXJ0eVRv
VmlzaXRlZExpbmtTdHlsZShmYWxzZSkKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAg
ICwgbV9oYXNQZW5kaW5nU2hhZGVycyhmYWxzZSkKLSNlbmRpZgogICAgICAgICAsIG1fbGluZUhl
aWdodFZhbHVlKDApCiAgICAgICAgICwgbV9mb250RGlydHkoZmFsc2UpCiAgICAgICAgICwgbV9o
YXNVQUFwcGVhcmFuY2UoZmFsc2UpCkBAIC00MzAsMTAgKzQwMCw2IEBAIHB1YmxpYzoKICNpZiBF
TkFCTEUoQ1NTX0ZJTFRFUlMpICYmIEVOQUJMRShTVkcpCiAgICAgICAgIFBlbmRpbmdTVkdEb2N1
bWVudFNldCYgcGVuZGluZ1NWR0RvY3VtZW50cygpIHsgcmV0dXJuIG1fcGVuZGluZ1NWR0RvY3Vt
ZW50czsgfQogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICB2b2lkIHNl
dEhhc1BlbmRpbmdTaGFkZXJzKGJvb2wgaGFzUGVuZGluZ1NoYWRlcnMpIHsgbV9oYXNQZW5kaW5n
U2hhZGVycyA9IGhhc1BlbmRpbmdTaGFkZXJzOyB9Ci0gICAgICAgIGJvb2wgaGFzUGVuZGluZ1No
YWRlcnMoKSBjb25zdCB7IHJldHVybiBtX2hhc1BlbmRpbmdTaGFkZXJzOyB9Ci0jZW5kaWYKIAog
ICAgICAgICB2b2lkIHNldExpbmVIZWlnaHRWYWx1ZShDU1NWYWx1ZSogdmFsdWUpIHsgbV9saW5l
SGVpZ2h0VmFsdWUgPSB2YWx1ZTsgfQogICAgICAgICBDU1NWYWx1ZSogbGluZUhlaWdodFZhbHVl
KCkgeyByZXR1cm4gbV9saW5lSGVpZ2h0VmFsdWU7IH0KQEAgLTQ3OCw5ICs0NDQsNiBAQCBwdWJs
aWM6CiAgICAgICAgIGJvb2wgbV9hcHBseVByb3BlcnR5VG9WaXNpdGVkTGlua1N0eWxlOwogCiAg
ICAgICAgIFBlbmRpbmdJbWFnZVByb3BlcnR5TWFwIG1fcGVuZGluZ0ltYWdlUHJvcGVydGllczsK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGJvb2wgbV9oYXNQZW5kaW5nU2hhZGVy
czsKLSNlbmRpZgogI2lmIEVOQUJMRShDU1NfRklMVEVSUykgJiYgRU5BQkxFKFNWRykKICAgICAg
ICAgUGVuZGluZ1NWR0RvY3VtZW50U2V0IG1fcGVuZGluZ1NWR0RvY3VtZW50czsKICNlbmRpZgpA
QCAtNTkwLDEwICs1NTMsNiBAQCBwcml2YXRlOgogCiAgICAgU3RhdGUgbV9zdGF0ZTsKIAotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBPd25QdHI8U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
Q2FjaGU+IG1fY3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlOwotI2VuZGlmCi0KICAgICBmcmllbmQg
Y2xhc3MgRGVwcmVjYXRlZFN0eWxlQnVpbGRlcjsKICAgICBmcmllbmQgYm9vbCBvcGVyYXRvcj09
KGNvbnN0IE1hdGNoZWRQcm9wZXJ0aWVzJiwgY29uc3QgTWF0Y2hlZFByb3BlcnRpZXMmKTsKICAg
ICBmcmllbmQgYm9vbCBvcGVyYXRvciE9KGNvbnN0IE1hdGNoZWRQcm9wZXJ0aWVzJiwgY29uc3Qg
TWF0Y2hlZFByb3BlcnRpZXMmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVJ1bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5jcHAKaW5kZXggOGIzZWYw
Mi4uY2UxMWE2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5jcHAKQEAgLTMzLDcgKzMzLDYgQEAK
ICNpbmNsdWRlICJDU1NVbmtub3duUnVsZS5oIgogI2luY2x1ZGUgIlN0eWxlUHJvcGVydGllcy5o
IgogI2luY2x1ZGUgIlN0eWxlUnVsZUltcG9ydC5oIgotI2luY2x1ZGUgIldlYktpdENTU0ZpbHRl
clJ1bGUuaCIKICNpbmNsdWRlICJXZWJLaXRDU1NLZXlmcmFtZVJ1bGUuaCIKICNpbmNsdWRlICJX
ZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmgiCiAjaW5jbHVkZSAiV2ViS2l0Q1NTUmVnaW9uUnVsZS5o
IgpAQCAtOTgsMTEgKzk3LDYgQEAgdm9pZCBTdHlsZVJ1bGVCYXNlOjpkZXN0cm95KCkKICAgICAg
ICAgZGVsZXRlIHN0YXRpY19jYXN0PFN0eWxlUnVsZVZpZXdwb3J0Kj4odGhpcyk7CiAgICAgICAg
IHJldHVybjsKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIEZpbHRl
cjoKLSAgICAgICAgZGVsZXRlIHN0YXRpY19jYXN0PFN0eWxlUnVsZUZpbHRlcio+KHRoaXMpOwot
ICAgICAgICByZXR1cm47Ci0jZW5kaWYKICAgICBjYXNlIFVua25vd246CiAgICAgY2FzZSBDaGFy
c2V0OgogICAgIGNhc2UgS2V5ZnJhbWU6CkBAIC0xNDQsMTAgKzEzOCw2IEBAIFBhc3NSZWY8U3R5
bGVSdWxlQmFzZT4gU3R5bGVSdWxlQmFzZTo6Y29weSgpIGNvbnN0CiAgICAgY2FzZSBWaWV3cG9y
dDoKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IFN0eWxlUnVsZVZpZXdwb3J0Kj4o
dGhpcyktPmNvcHkoKTsKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNl
IEZpbHRlcjoKLSAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IFN0eWxlUnVsZUZpbHRl
cio+KHRoaXMpLT5jb3B5KCk7Ci0jZW5kaWYKICAgICBjYXNlIEltcG9ydDoKICAgICAgICAgLy8g
RklYTUU6IENvcHkgaW1wb3J0IHJ1bGVzLgogICAgICAgICBicmVhazsKQEAgLTIwNywxMSArMTk3
LDYgQEAgUGFzc1JlZlB0cjxDU1NSdWxlPiBTdHlsZVJ1bGVCYXNlOjpjcmVhdGVDU1NPTVdyYXBw
ZXIoQ1NTU3R5bGVTaGVldCogcGFyZW50U2hlZXQKICAgICAgICAgcnVsZSA9IENTU0hvc3RSdWxl
OjpjcmVhdGUoc3RhdGljX2Nhc3Q8U3R5bGVSdWxlSG9zdCo+KHNlbGYpLCBwYXJlbnRTaGVldCk7
CiAgICAgICAgIGJyZWFrOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNh
c2UgRmlsdGVyOgotICAgICAgICBydWxlID0gV2ViS2l0Q1NTRmlsdGVyUnVsZTo6Y3JlYXRlKHN0
YXRpY19jYXN0PFN0eWxlUnVsZUZpbHRlcio+KHNlbGYpLCBwYXJlbnRTaGVldCk7Ci0gICAgICAg
IGJyZWFrOwotI2VuZGlmCiAgICAgY2FzZSBVbmtub3duOgogICAgIGNhc2UgQ2hhcnNldDoKICAg
ICBjYXNlIEtleWZyYW1lOgpAQCAtNDMyLDMyICs0MTcsNCBAQCBNdXRhYmxlU3R5bGVQcm9wZXJ0
aWVzJiBTdHlsZVJ1bGVWaWV3cG9ydDo6bXV0YWJsZVByb3BlcnRpZXMoKQogfQogI2VuZGlmIC8v
IEVOQUJMRShDU1NfREVWSUNFX0FEQVBUQVRJT04pCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci1TdHlsZVJ1bGVGaWx0ZXI6OlN0eWxlUnVsZUZpbHRlcihjb25zdCBTdHJpbmcmIGZpbHRlck5h
bWUsIFBhc3NSZWY8U3R5bGVQcm9wZXJ0aWVzPiBwcm9wZXJ0aWVzKQotICAgIDogU3R5bGVSdWxl
QmFzZShGaWx0ZXIsIDApCi0gICAgLCBtX2ZpbHRlck5hbWUoZmlsdGVyTmFtZSkKLSAgICAsIG1f
cHJvcGVydGllcyhzdGQ6Om1vdmUocHJvcGVydGllcykpCi17Ci19Ci0KLVN0eWxlUnVsZUZpbHRl
cjo6U3R5bGVSdWxlRmlsdGVyKGNvbnN0IFN0eWxlUnVsZUZpbHRlciYgbykKLSAgICA6IFN0eWxl
UnVsZUJhc2UobykKLSAgICAsIG1fZmlsdGVyTmFtZShvLm1fZmlsdGVyTmFtZSkKLSAgICAsIG1f
cHJvcGVydGllcyhvLm1fcHJvcGVydGllcy0+bXV0YWJsZUNvcHkoKSkKLXsKLX0KLQotU3R5bGVS
dWxlRmlsdGVyOjp+U3R5bGVSdWxlRmlsdGVyKCkKLXsKLX0KLQotTXV0YWJsZVN0eWxlUHJvcGVy
dGllcyYgU3R5bGVSdWxlRmlsdGVyOjptdXRhYmxlUHJvcGVydGllcygpCi17Ci0gICAgaWYgKCFt
X3Byb3BlcnRpZXMtPmlzTXV0YWJsZSgpKQotICAgICAgICBtX3Byb3BlcnRpZXMgPSBtX3Byb3Bl
cnRpZXMtPm11dGFibGVDb3B5KCk7Ci0gICAgcmV0dXJuIHN0YXRpY19jYXN0PE11dGFibGVTdHls
ZVByb3BlcnRpZXMmPihtX3Byb3BlcnRpZXMuZ2V0KCkpOwotfQotCi0jZW5kaWYgLy8gRU5BQkxF
KENTU19TSEFERVJTKQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxl
LmgKaW5kZXggNTRmNWMyNi4uOTFkZjRjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L1N0eWxlUnVsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJ1bGUuaApAQCAtNTUs
OSArNTUsNiBAQCBwdWJsaWM6CiAgICAgICAgIFZpZXdwb3J0ID0gMTUsCiAjZW5kaWYKICAgICAg
ICAgUmVnaW9uID0gMTYsCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBGaWx0ZXIg
PSAxNywKLSNlbmRpZgogI2lmIEVOQUJMRShTSEFET1dfRE9NKQogICAgICAgICBIb3N0SW50ZXJu
YWwgPSAxOCwgLy8gU3BlYyBzYXlzIEhvc3QgPSAxMDAxLCBidXQgd2UgY2FuIHVzZSBvbmx5IDUg
Yml0IGZvciB0eXBlKCkuCiAjZW5kaWYKQEAgLTgyLDkgKzc5LDYgQEAgcHVibGljOgogI2lmIEVO
QUJMRShTSEFET1dfRE9NKQogICAgIGJvb2wgaXNIb3N0UnVsZSgpIGNvbnN0IHsgcmV0dXJuIHR5
cGUoKSA9PSBIb3N0SW50ZXJuYWw7IH0KICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykK
LSAgICBib29sIGlzRmlsdGVyUnVsZSgpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBGaWx0ZXI7
IH0KLSNlbmRpZgogCiAgICAgUGFzc1JlZjxTdHlsZVJ1bGVCYXNlPiBjb3B5KCkgY29uc3Q7CiAK
QEAgLTMyNSwzMiArMzE5LDYgQEAgaW5saW5lIGNvbnN0IFN0eWxlUnVsZVJlZ2lvbiogdG9TdHls
ZVJ1bGVSZWdpb24oY29uc3QgU3R5bGVSdWxlR3JvdXAqIHJ1bGUpCiAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PGNvbnN0IFN0eWxlUnVsZVJlZ2lvbio+KHJ1bGUpOwogfQogCi0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotY2xhc3MgU3R5bGVSdWxlRmlsdGVyIDogcHVibGljIFN0eWxlUnVsZUJhc2Ug
ewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmPFN0eWxlUnVsZUZpbHRlcj4gY3JlYXRlKGNv
bnN0IFN0cmluZyYgZmlsdGVyTmFtZSwgUGFzc1JlZjxTdHlsZVByb3BlcnRpZXM+IHByb3BlcnRp
ZXMpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBTdHlsZVJ1bGVGaWx0ZXIo
ZmlsdGVyTmFtZSwgc3RkOjptb3ZlKHByb3BlcnRpZXMpKSk7Ci0gICAgfQotCi0gICAgflN0eWxl
UnVsZUZpbHRlcigpOwotCi0gICAgY29uc3QgU3RyaW5nJiBmaWx0ZXJOYW1lKCkgY29uc3QgeyBy
ZXR1cm4gbV9maWx0ZXJOYW1lOyB9Ci0KLSAgICBjb25zdCBTdHlsZVByb3BlcnRpZXMmIHByb3Bl
cnRpZXMoKSBjb25zdCB7IHJldHVybiBtX3Byb3BlcnRpZXMuZ2V0KCk7IH0KLSAgICBNdXRhYmxl
U3R5bGVQcm9wZXJ0aWVzJiBtdXRhYmxlUHJvcGVydGllcygpOwotCi0gICAgUGFzc1JlZjxTdHls
ZVJ1bGVGaWx0ZXI+IGNvcHkoKSBjb25zdCB7IHJldHVybiBhZG9wdFJlZigqbmV3IFN0eWxlUnVs
ZUZpbHRlcigqdGhpcykpOyB9Ci0KLXByaXZhdGU6Ci0gICAgU3R5bGVSdWxlRmlsdGVyKGNvbnN0
IFN0cmluZyYsIFBhc3NSZWY8U3R5bGVQcm9wZXJ0aWVzPik7Ci0gICAgU3R5bGVSdWxlRmlsdGVy
KGNvbnN0IFN0eWxlUnVsZUZpbHRlciYpOwotCi0gICAgU3RyaW5nIG1fZmlsdGVyTmFtZTsKLSAg
ICBSZWY8U3R5bGVQcm9wZXJ0aWVzPiBtX3Byb3BlcnRpZXM7Ci19OwotI2VuZGlmIC8vIEVOQUJM
RShDU1NfU0hBREVSUykKLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gU3R5
bGVSdWxlX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVNoZWV0Q29udGVu
dHMuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlU2hlZXRDb250ZW50cy5jcHAKaW5kZXgg
OTkxMjdhNC4uOWEzODQ5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlU2hl
ZXRDb250ZW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlU2hlZXRDb250ZW50
cy5jcHAKQEAgLTQ2Nyw5ICs0NjcsNiBAQCBzdGF0aWMgYm9vbCBjaGlsZFJ1bGVzSGF2ZUZhaWxl
ZE9yQ2FuY2VsZWRTdWJyZXNvdXJjZXMoY29uc3QgVmVjdG9yPFJlZlB0cjxTdHlsZQogI2lmIEVO
QUJMRShDU1NfREVWSUNFX0FEQVBUQVRJT04pCiAgICAgICAgIGNhc2UgU3R5bGVSdWxlQmFzZTo6
Vmlld3BvcnQ6CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGNhc2Ug
U3R5bGVSdWxlQmFzZTo6RmlsdGVyOgotI2VuZGlmCiAgICAgICAgICAgICBicmVhazsKICAgICAg
ICAgfQogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NBcnJh
eUZ1bmN0aW9uVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgxMzAxNjkuLjAw
MDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1
ZS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw2NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERB
TUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTQXJy
YXlGdW5jdGlvblZhbHVlLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLW5hbWVzcGFj
ZSBXZWJDb3JlIHsKLQotV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlOjpXZWJLaXRDU1NBcnJh
eUZ1bmN0aW9uVmFsdWUoKQotICAgIDogQ1NTVmFsdWVMaXN0KFdlYktpdENTU0FycmF5RnVuY3Rp
b25WYWx1ZUNsYXNzLCBDb21tYVNlcGFyYXRvcikKLXsKLX0KLQotV2ViS2l0Q1NTQXJyYXlGdW5j
dGlvblZhbHVlOjpXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUoY29uc3QgV2ViS2l0Q1NTQXJy
YXlGdW5jdGlvblZhbHVlJiBjbG9uZUZyb20pCi0gICAgOiBDU1NWYWx1ZUxpc3QoY2xvbmVGcm9t
KQotewotfQotCi1TdHJpbmcgV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlOjpjdXN0b21DU1NU
ZXh0KCkgY29uc3QKLXsKLSAgICByZXR1cm4gImFycmF5KCIgKyBDU1NWYWx1ZUxpc3Q6OmN1c3Rv
bUNTU1RleHQoKSArICcpJzsKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NBcnJheUZ1bmN0aW9u
VmFsdWU+IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZTo6Y2xvbmVGb3JDU1NPTSgpIGNvbnN0
Ci17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUo
KnRoaXMpKTsKLX0KLQotYm9vbCBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU6OmVxdWFscyhj
b25zdCBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUmIG90aGVyKSBjb25zdAotewotICAgIHJl
dHVybiBDU1NWYWx1ZUxpc3Q6OmVxdWFscyhvdGhlcik7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuaCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuaApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMWMyMzcxZS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2Vi
S2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2NCArMCwwIEBA
Ci0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBh
cmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPi
gJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgot
ICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFdlYktpdENTU0FycmF5
RnVuY3Rpb25WYWx1ZV9oCi0jZGVmaW5lIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZV9oCi0K
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJDU1NWYWx1ZUxpc3QuaCIKLSNp
bmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNz
IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSA6IHB1YmxpYyBDU1NWYWx1ZUxpc3QgewotcHVi
bGljOgotICAgIHN0YXRpYyBQYXNzUmVmPFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZT4gY3Jl
YXRlKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYktpdENTU0FycmF5
RnVuY3Rpb25WYWx1ZSgpKTsKLSAgICB9Ci0KLSAgICBTdHJpbmcgY3VzdG9tQ1NTVGV4dCgpIGNv
bnN0OwotCi0gICAgUGFzc1JlZlB0cjxXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+IGNsb25l
Rm9yQ1NTT00oKSBjb25zdDsKLQotICAgIGJvb2wgZXF1YWxzKGNvbnN0IFdlYktpdENTU0FycmF5
RnVuY3Rpb25WYWx1ZSYpIGNvbnN0OwotCi1wcml2YXRlOgotICAgIFdlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZSgpOwotICAgIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZShjb25zdCBXZWJL
aXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUmIGNsb25lRnJvbSk7Ci19OwotCi1DU1NfVkFMVUVfVFlQ
RV9DQVNUUyhXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUsIGlzV2ViS2l0Q1NTQXJyYXlGdW5j
dGlvblZhbHVlKCkpCi0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJM
RShDU1NfU0hBREVSUykKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmls
dGVyUnVsZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI3ZjBhNGYuLjAwMDAw
MDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwCisrKyAv
ZGV2L251bGwKQEAgLTEsOTAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBBZG9i
ZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTRmlsdGVyUnVsZS5oIgotCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiUHJvcGVydHlTZXRDU1NTdHlsZURl
Y2xhcmF0aW9uLmgiCi0jaW5jbHVkZSAiU3R5bGVQcm9wZXJ0aWVzLmgiCi0jaW5jbHVkZSAiU3R5
bGVSdWxlLmgiCi0jaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgotCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7Ci0KLVdlYktpdENTU0ZpbHRlclJ1bGU6OldlYktpdENTU0ZpbHRlclJ1bGUo
U3R5bGVSdWxlRmlsdGVyKiBmaWx0ZXJSdWxlLCBDU1NTdHlsZVNoZWV0KiBwYXJlbnQpCi0gICAg
OiBDU1NSdWxlKHBhcmVudCkKLSAgICAsIG1fZmlsdGVyUnVsZShmaWx0ZXJSdWxlKQotewotfQot
Ci1XZWJLaXRDU1NGaWx0ZXJSdWxlOjp+V2ViS2l0Q1NTRmlsdGVyUnVsZSgpCi17Ci0gICAgaWYg
KG1fcHJvcGVydGllc0NTU09NV3JhcHBlcikKLSAgICAgICAgbV9wcm9wZXJ0aWVzQ1NTT01XcmFw
cGVyLT5jbGVhclBhcmVudFJ1bGUoKTsKLX0KLQotQ1NTU3R5bGVEZWNsYXJhdGlvbiogV2ViS2l0
Q1NTRmlsdGVyUnVsZTo6c3R5bGUoKQotewotICAgIGlmICghbV9wcm9wZXJ0aWVzQ1NTT01XcmFw
cGVyKQotICAgICAgICBtX3Byb3BlcnRpZXNDU1NPTVdyYXBwZXIgPSBTdHlsZVJ1bGVDU1NTdHls
ZURlY2xhcmF0aW9uOjpjcmVhdGUobV9maWx0ZXJSdWxlLT5tdXRhYmxlUHJvcGVydGllcygpLCAq
dGhpcyk7Ci0gICAgcmV0dXJuIG1fcHJvcGVydGllc0NTU09NV3JhcHBlci5nZXQoKTsKLX0KLQot
U3RyaW5nIFdlYktpdENTU0ZpbHRlclJ1bGU6OmNzc1RleHQoKSBjb25zdAotewotICAgIFN0cmlu
Z0J1aWxkZXIgcmVzdWx0OwotICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCJALXdlYmtpdC1maWx0
ZXIgIik7Ci0KLSAgICBTdHJpbmcgZmlsdGVyTmFtZSA9IG1fZmlsdGVyUnVsZS0+ZmlsdGVyTmFt
ZSgpOwotICAgIHJlc3VsdC5hcHBlbmQoZmlsdGVyTmFtZSk7Ci0gICAgcmVzdWx0LmFwcGVuZExp
dGVyYWwoIiB7ICIpOwotCi0gICAgU3RyaW5nIGRlc2NzID0gbV9maWx0ZXJSdWxlLT5wcm9wZXJ0
aWVzKCkuYXNUZXh0KCk7Ci0gICAgcmVzdWx0LmFwcGVuZChkZXNjcyk7Ci0gICAgaWYgKCFkZXNj
cy5pc0VtcHR5KCkpCi0gICAgICAgIHJlc3VsdC5hcHBlbmQoJyAnKTsKLSAgICByZXN1bHQuYXBw
ZW5kKCd9Jyk7Ci0KLSAgICByZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7Ci19Ci0KLXZvaWQgV2Vi
S2l0Q1NTRmlsdGVyUnVsZTo6cmVhdHRhY2goU3R5bGVSdWxlQmFzZSogcnVsZSkKLXsKLSAgICBB
U1NFUlQocnVsZSk7Ci0gICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04ocnVsZS0+
aXNGaWx0ZXJSdWxlKCkpOwotICAgIG1fZmlsdGVyUnVsZSA9IHN0YXRpY19jYXN0PFN0eWxlUnVs
ZUZpbHRlcio+KHJ1bGUpOwotICAgIGlmIChtX3Byb3BlcnRpZXNDU1NPTVdyYXBwZXIpCi0gICAg
ICAgIG1fcHJvcGVydGllc0NTU09NV3JhcHBlci0+cmVhdHRhY2gobV9maWx0ZXJSdWxlLT5tdXRh
YmxlUHJvcGVydGllcygpKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dl
YktpdENTU0ZpbHRlclJ1bGUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJS
dWxlLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDM1NWM1NTEuLjAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuaAorKysgL2Rldi9udWxs
CkBAIC0xLDY2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVt
cyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWlt
ZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9M
REVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0g
KiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBX
ZWJLaXRDU1NGaWx0ZXJSdWxlX2gKLSNkZWZpbmUgV2ViS2l0Q1NTRmlsdGVyUnVsZV9oCi0KLSNp
bmNsdWRlICJDU1NSdWxlLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLW5hbWVzcGFj
ZSBXZWJDb3JlIHsKLQotY2xhc3MgQ1NTU3R5bGVEZWNsYXJhdGlvbjsKLWNsYXNzIFN0eWxlUnVs
ZUZpbHRlcjsKLWNsYXNzIFN0eWxlUnVsZUNTU1N0eWxlRGVjbGFyYXRpb247Ci0KLWNsYXNzIFdl
YktpdENTU0ZpbHRlclJ1bGUgOiBwdWJsaWMgQ1NTUnVsZSB7Ci1wdWJsaWM6Ci0gICAgc3RhdGlj
IFBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyUnVsZT4gY3JlYXRlKFN0eWxlUnVsZUZpbHRlciog
cnVsZSwgQ1NTU3R5bGVTaGVldCogc2hlZXQpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJLaXRD
U1NGaWx0ZXJSdWxlKHJ1bGUsIHNoZWV0KSk7IH0KLQotICAgIHZpcnR1YWwgfldlYktpdENTU0Zp
bHRlclJ1bGUoKTsKLQotICAgIHZpcnR1YWwgQ1NTUnVsZTo6VHlwZSB0eXBlKCkgY29uc3Qgb3Zl
cnJpZGUgeyByZXR1cm4gV0VCS0lUX0ZJTFRFUl9SVUxFOyB9Ci0gICAgdmlydHVhbCBTdHJpbmcg
Y3NzVGV4dCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCByZWF0dGFjaChTdHls
ZVJ1bGVCYXNlKikgb3ZlcnJpZGU7Ci0KLSAgICBDU1NTdHlsZURlY2xhcmF0aW9uKiBzdHlsZSgp
OwotCi1wcml2YXRlOgotICAgIFdlYktpdENTU0ZpbHRlclJ1bGUoU3R5bGVSdWxlRmlsdGVyKiwg
Q1NTU3R5bGVTaGVldCogcGFyZW50KTsKLQotICAgIFJlZlB0cjxTdHlsZVJ1bGVGaWx0ZXI+IG1f
ZmlsdGVyUnVsZTsKLSAgICBtdXRhYmxlIFJlZlB0cjxTdHlsZVJ1bGVDU1NTdHlsZURlY2xhcmF0
aW9uPiBtX3Byb3BlcnRpZXNDU1NPTVdyYXBwZXI7Ci19OwotCi19Ci0KLSNlbmRpZiAvLyBFTkFC
TEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBXZWJLaXRDU1NGaWx0ZXJSdWxlX2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmlkbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMjhlOGM3Ni4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2Vi
S2l0Q1NTRmlsdGVyUnVsZS5pZGwKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi0vKgot
ICogQ29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0
OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5Z
Ci0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICog
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
LSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YK
LSAqIFNVQ0ggREFNQUdFLgotICovCi0KLVsKLSAgICBDb25kaXRpb25hbD1DU1NfU0hBREVSUywK
LV0gaW50ZXJmYWNlIFdlYktpdENTU0ZpbHRlclJ1bGUgOiBDU1NSdWxlIHsKLSAgICByZWFkb25s
eSBhdHRyaWJ1dGUgQ1NTU3R5bGVEZWNsYXJhdGlvbiBzdHlsZTsKLQotICAgIC8vIEZJWE1FOiBX
ZSBzaG91bGQgZXhwb3NlIHRoZSBmaWx0ZXIgbmFtZSBvbmNlIHRoZSBDU1NPTSBmb3IgdGhlIEBm
aWx0ZXIgcnVsZSBpcyBzcGVjaWZpZWQuCi19OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRD
U1NGaWx0ZXJWYWx1ZS5jcHAKaW5kZXggOTk0ZDMxNi4uNThhOGEyMCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwCkBAIC0zNSwyMSArMzUsMTEgQEAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OldlYktpdENTU0ZpbHRl
clZhbHVlKEZpbHRlck9wZXJhdGlvblR5cGUgb3BlcmF0aW9uVHlwZSkKLSAgICA6IENTU1ZhbHVl
TGlzdChXZWJLaXRDU1NGaWx0ZXJDbGFzcywgdHlwZVVzZXNTcGFjZVNlcGFyYXRvcihvcGVyYXRp
b25UeXBlKSA/IFNwYWNlU2VwYXJhdG9yIDogQ29tbWFTZXBhcmF0b3IpCisgICAgOiBDU1NWYWx1
ZUxpc3QoV2ViS2l0Q1NTRmlsdGVyQ2xhc3MsIFNwYWNlU2VwYXJhdG9yKQogICAgICwgbV90eXBl
KG9wZXJhdGlvblR5cGUpCiB7CiB9CiAKLWJvb2wgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OnR5cGVV
c2VzU3BhY2VTZXBhcmF0b3IoRmlsdGVyT3BlcmF0aW9uVHlwZSBvcGVyYXRpb25UeXBlKQotewot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICByZXR1cm4gb3BlcmF0aW9uVHlwZSAhPSBDdXN0
b21GaWx0ZXJPcGVyYXRpb247Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShvcGVyYXRpb25UeXBl
KTsKLSAgICByZXR1cm4gdHJ1ZTsKLSNlbmRpZgotfQotCiBTdHJpbmcgV2ViS2l0Q1NTRmlsdGVy
VmFsdWU6OmN1c3RvbUNTU1RleHQoKSBjb25zdAogewogICAgIGNvbnN0IGNoYXIqIHJlc3VsdCA9
ICIiOwpAQCAtODksMTEgKzc5LDYgQEAgU3RyaW5nIFdlYktpdENTU0ZpbHRlclZhbHVlOjpjdXN0
b21DU1NUZXh0KCkgY29uc3QKICAgICBjYXNlIERyb3BTaGFkb3dGaWx0ZXJPcGVyYXRpb246CiAg
ICAgICAgIHJlc3VsdCA9ICJkcm9wLXNoYWRvdygiOwogICAgICAgICBicmVhazsKLSNpZiBFTkFC
TEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBDdXN0b21GaWx0ZXJPcGVyYXRpb246Ci0gICAgICAg
IHJlc3VsdCA9ICJjdXN0b20oIjsKLSAgICAgICAgYnJlYWs7Ci0jZW5kaWYKICAgICB9CiAKICAg
ICByZXR1cm4gcmVzdWx0ICsgQ1NTVmFsdWVMaXN0OjpjdXN0b21DU1NUZXh0KCkgKyAnKSc7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oCmluZGV4IGIwOWU4ODIuLjZj
MDlhNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oCkBAIC01
MCwxMyArNTAsOCBAQCBwdWJsaWM6CiAgICAgICAgIENvbnRyYXN0RmlsdGVyT3BlcmF0aW9uLAog
ICAgICAgICBCbHVyRmlsdGVyT3BlcmF0aW9uLAogICAgICAgICBEcm9wU2hhZG93RmlsdGVyT3Bl
cmF0aW9uCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICAsIEN1c3RvbUZpbHRlck9w
ZXJhdGlvbgotI2VuZGlmCiAgICAgfTsKIAotICAgIHN0YXRpYyBib29sIHR5cGVVc2VzU3BhY2VT
ZXBhcmF0b3IoRmlsdGVyT3BlcmF0aW9uVHlwZSk7Ci0KICAgICBzdGF0aWMgUGFzc1JlZjxXZWJL
aXRDU1NGaWx0ZXJWYWx1ZT4gY3JlYXRlKEZpbHRlck9wZXJhdGlvblR5cGUgdHlwZSkKICAgICB7
CiAgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYktpdENTU0ZpbHRlclZhbHVlKHR5cGUp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsCmluZGV4IDVm
ODQxNDQuLjk2YmExZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NG
aWx0ZXJWYWx1ZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZh
bHVlLmlkbApAQCAtNDMsMTAgKzQzLDYgQEAKICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBDU1Nf
RklMVEVSX0JMVVIgPSAxMDsKICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBDU1NfRklMVEVSX0RS
T1BfU0hBRE9XID0gMTE7CiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9DU1NfU0hBREVSUykgJiYgRU5B
QkxFX0NTU19TSEFERVJTCi0gICAgY29uc3QgdW5zaWduZWQgc2hvcnQgQ1NTX0ZJTFRFUl9DVVNU
T00gPSAxMjsKLSNlbmRpZgotCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0
IG9wZXJhdGlvblR5cGU7CiAKICAgICBnZXR0ZXIgQ1NTVmFsdWUgKFtEZWZhdWx0PVVuZGVmaW5l
ZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDU5ZDg0YTYuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENT
U01hdEZ1bmN0aW9uVmFsdWUuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsODEgKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxMyBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6
Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICog
ICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
Ci0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQg
QU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAot
ICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmgiCi0KLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJp
bmdCdWlsZGVyLmg+Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZTo6V2ViS2l0Q1NTTWF0RnVuY3Rpb25W
YWx1ZSgpCi0gICAgOiBDU1NWYWx1ZUxpc3QoV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZUNsYXNz
LCBDb21tYVNlcGFyYXRvcikKLXsKLX0KLQotV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZTo6V2Vi
S2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZShjb25zdCBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlJiBj
bG9uZUZyb20pCi0gICAgOiBDU1NWYWx1ZUxpc3QoY2xvbmVGcm9tKQotewotfQotCi1TdHJpbmcg
V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNvbnN0Ci17Ci0gICAg
U3RyaW5nQnVpbGRlciBidWlsZGVyOwotICAgIGlmIChsZW5ndGgoKSA9PSA0KQotICAgICAgICBi
dWlsZGVyLmFwcGVuZExpdGVyYWwoIm1hdDIoIik7Ci0gICAgZWxzZSBpZiAobGVuZ3RoKCkgPT0g
OSkKLSAgICAgICAgYnVpbGRlci5hcHBlbmRMaXRlcmFsKCJtYXQzKCIpOwotICAgIGVsc2UgaWYg
KGxlbmd0aCgpID09IDE2KQotICAgICAgICBidWlsZGVyLmFwcGVuZExpdGVyYWwoIm1hdDQoIik7
Ci0gICAgZWxzZSB7Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICByZXR1
cm4gU3RyaW5nKCk7Ci0gICAgfQotCi0gICAgYnVpbGRlci5hcHBlbmQoQ1NTVmFsdWVMaXN0Ojpj
dXN0b21DU1NUZXh0KCkpOwotICAgIGJ1aWxkZXIuYXBwZW5kKCcpJyk7Ci0gICAgcmV0dXJuIGJ1
aWxkZXIudG9TdHJpbmcoKTsKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NNYXRGdW5jdGlvblZh
bHVlPiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlOjpjbG9uZUZvckNTU09NKCkgY29uc3QKLXsK
LSAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUoKnRoaXMp
KTsKLX0KLQotYm9vbCBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlOjplcXVhbHMoY29uc3QgV2Vi
S2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSYgb3RoZXIpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIENTU1Zh
bHVlTGlzdDo6ZXF1YWxzKG90aGVyKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL1dlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJL
aXRDU1NNYXRGdW5jdGlvblZhbHVlLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ5
YTViOTAuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01hdEZ1bmN0
aW9uVmFsdWUuaAorKysgL2Rldi9udWxsCkBAIC0xLDY0ICswLDAgQEAKLS8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQot
ICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xh
aW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNV
Q0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZV9oCi0j
ZGVmaW5lIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVfaAotCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotCi0jaW5jbHVkZSAiQ1NTVmFsdWVMaXN0LmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQ
dHIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBXZWJLaXRDU1NNYXRGdW5jdGlv
blZhbHVlIDogcHVibGljIENTU1ZhbHVlTGlzdCB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NS
ZWY8V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZT4gY3JlYXRlKCkKLSAgICB7Ci0gICAgICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUpOwotICAgIH0KLQot
ICAgIFN0cmluZyBjdXN0b21DU1NUZXh0KCkgY29uc3Q7Ci0KLSAgICBQYXNzUmVmUHRyPFdlYktp
dENTU01hdEZ1bmN0aW9uVmFsdWU+IGNsb25lRm9yQ1NTT00oKSBjb25zdDsKLQotICAgIGJvb2wg
ZXF1YWxzKGNvbnN0IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUmKSBjb25zdDsKLQotcHJpdmF0
ZToKLSAgICBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlKCk7Ci0gICAgV2ViS2l0Q1NTTWF0RnVu
Y3Rpb25WYWx1ZShjb25zdCBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlJiBjbG9uZUZyb20pOwot
fTsKLQotQ1NTX1ZBTFVFX1RZUEVfQ0FTVFMoV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSwgaXNX
ZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlKCkpCi0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQot
I2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IGFlNTQ0MTEuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNjUgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KA
nSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0g
KiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLSNp
bmNsdWRlICJXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLSAgICAKLVdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWU6OldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUoKQotICAgIDogQ1NTVmFsdWVMaXN0KFdl
YktpdENTU01peEZ1bmN0aW9uVmFsdWVDbGFzcywgU3BhY2VTZXBhcmF0b3IpCi17Ci19Ci0KLVdl
YktpdENTU01peEZ1bmN0aW9uVmFsdWU6OldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUoY29uc3Qg
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSYgY2xvbmVGcm9tKQotICAgIDogQ1NTVmFsdWVMaXN0
KGNsb25lRnJvbSkKLXsKLX0KLQotU3RyaW5nIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU6OmN1
c3RvbUNTU1RleHQoKSBjb25zdAotewotICAgIHJldHVybiAibWl4KCIgKyBDU1NWYWx1ZUxpc3Q6
OmN1c3RvbUNTU1RleHQoKSArICcpJzsKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NNaXhGdW5j
dGlvblZhbHVlPiBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlOjpjbG9uZUZvckNTU09NKCkgY29u
c3QKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUo
KnRoaXMpKTsKLX0KLQotYm9vbCBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlOjplcXVhbHMoY29u
c3QgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSYgb3RoZXIpIGNvbnN0Ci17Ci0gICAgcmV0dXJu
IENTU1ZhbHVlTGlzdDo6ZXF1YWxzKG90aGVyKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGFlNDMzODkuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUuaAorKysgL2Rldi9udWxsCkBAIC0xLDY0ICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0g
KiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5Z
Ci0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICog
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
LSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YK
LSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1
ZV9oCi0jZGVmaW5lIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWVfaAotCi0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotCi0jaW5jbHVkZSAiQ1NTVmFsdWVMaXN0LmgiCi0jaW5jbHVkZSA8d3RmL1Bh
c3NSZWZQdHIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBXZWJLaXRDU1NNaXhG
dW5jdGlvblZhbHVlIDogcHVibGljIENTU1ZhbHVlTGlzdCB7Ci1wdWJsaWM6Ci0gICAgc3RhdGlj
IFBhc3NSZWY8V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZT4gY3JlYXRlKCkKLSAgICB7Ci0gICAg
ICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUoKSk7Ci0g
ICAgfQotCi0gICAgU3RyaW5nIGN1c3RvbUNTU1RleHQoKSBjb25zdDsKLQotICAgIFBhc3NSZWZQ
dHI8V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZT4gY2xvbmVGb3JDU1NPTSgpIGNvbnN0OwotCi0g
ICAgYm9vbCBlcXVhbHMoY29uc3QgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSYpIGNvbnN0Owot
Ci1wcml2YXRlOgotICAgIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUoKTsKLSAgICBXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlKGNvbnN0IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUmIGNsb25l
RnJvbSk7Ci19OwotCi1DU1NfVkFMVUVfVFlQRV9DQVNUUyhXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlLCBpc1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUoKSkKLQotfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggM2E3YzAyZi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5pZGwKKysrIC9kZXYvbnVsbApAQCAtMSwz
NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jw
b3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg
IkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQot
ICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLVsKLSAgICBDb25kaXRpb25h
bD1DU1NfU0hBREVSUywKLSAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCi1dIGludGVyZmFj
ZSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlIDogQ1NTVmFsdWVMaXN0IHsKLX07Ci0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NTaGFkZXJWYWx1ZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA1Yzk2MmM1Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9X
ZWJLaXRDU1NTaGFkZXJWYWx1ZS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwxMDggKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJl
IG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
Ci0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCd
IEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAq
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIldlYktpdENTU1NoYWRlclZhbHVlLmgi
Ci0KLSNpbmNsdWRlICJDU1NQYXJzZXIuaCIKLSNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUxvYWRl
ci5oIgotI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlUmVxdWVzdC5oIgotI2luY2x1ZGUgIkNhY2hl
ZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCIKLSNpbmNsdWRlICJEb2N1bWVudC5oIgotI2lu
Y2x1ZGUgIlVSTC5oIgotI2luY2x1ZGUgIlN0eWxlQ2FjaGVkU2hhZGVyLmgiCi0jaW5jbHVkZSAi
U3R5bGVQZW5kaW5nU2hhZGVyLmgiCi0jaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5o
PgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVdlYktpdENTU1NoYWRlclZhbHVlOjpXZWJLaXRD
U1NTaGFkZXJWYWx1ZShjb25zdCBTdHJpbmcmIHVybCkKLSAgICA6IENTU1ZhbHVlKFdlYktpdENT
U1NoYWRlckNsYXNzKQotICAgICwgbV91cmwodXJsKQotICAgICwgbV9hY2Nlc3NlZFNoYWRlcihm
YWxzZSkKLXsKLX0KLQotV2ViS2l0Q1NTU2hhZGVyVmFsdWU6On5XZWJLaXRDU1NTaGFkZXJWYWx1
ZSgpCi17Ci19Ci0KLVVSTCBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y29tcGxldGVVUkwoQ2FjaGVk
UmVzb3VyY2VMb2FkZXIqIGxvYWRlcikgY29uc3QKLXsKLSAgICByZXR1cm4gbG9hZGVyLT5kb2N1
bWVudCgpLT5jb21wbGV0ZVVSTChtX3VybCk7Ci19Ci0KLVN0eWxlQ2FjaGVkU2hhZGVyKiBXZWJL
aXRDU1NTaGFkZXJWYWx1ZTo6Y2FjaGVkU2hhZGVyKENhY2hlZFJlc291cmNlTG9hZGVyKiBsb2Fk
ZXIpCi17Ci0gICAgQVNTRVJUKGxvYWRlcik7Ci0KLSAgICBpZiAoIW1fYWNjZXNzZWRTaGFkZXIp
IHsKLSAgICAgICAgbV9hY2Nlc3NlZFNoYWRlciA9IHRydWU7Ci0KLSAgICAgICAgQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0KGNvbXBsZXRlVVJMKGxvYWRlcikp
KTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IoY2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5p
dGlhdG9ycygpLmNzcyk7Ci0gICAgICAgIGlmIChDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRT
aGFkZXI+IGNhY2hlZFNoYWRlciA9IGxvYWRlci0+cmVxdWVzdFNoYWRlcihyZXF1ZXN0KSkKLSAg
ICAgICAgICAgIG1fc2hhZGVyID0gU3R5bGVDYWNoZWRTaGFkZXI6OmNyZWF0ZShjYWNoZWRTaGFk
ZXIuZ2V0KCkpOwotICAgIH0KLQotICAgIHJldHVybiAobV9zaGFkZXIgJiYgbV9zaGFkZXItPmlz
Q2FjaGVkU2hhZGVyKCkpID8gc3RhdGljX2Nhc3Q8U3R5bGVDYWNoZWRTaGFkZXIqPihtX3NoYWRl
ci5nZXQoKSkgOiAwOwotfQotCi1TdHlsZVNoYWRlciogV2ViS2l0Q1NTU2hhZGVyVmFsdWU6OmNh
Y2hlZE9yUGVuZGluZ1NoYWRlcigpCi17Ci0gICAgaWYgKCFtX3NoYWRlcikKLSAgICAgICAgbV9z
aGFkZXIgPSBTdHlsZVBlbmRpbmdTaGFkZXI6OmNyZWF0ZSh0aGlzKTsKLQotICAgIHJldHVybiBt
X3NoYWRlci5nZXQoKTsKLX0KLQotU3RyaW5nIFdlYktpdENTU1NoYWRlclZhbHVlOjpjdXN0b21D
U1NUZXh0KCkgY29uc3QKLXsKLSAgICBTdHJpbmdCdWlsZGVyIHJlc3VsdDsKLSAgICByZXN1bHQu
YXBwZW5kTGl0ZXJhbCgidXJsKCIpOwotICAgIHJlc3VsdC5hcHBlbmQocXVvdGVDU1NVUkxJZk5l
ZWRlZChtX3VybCkpOwotICAgIHJlc3VsdC5hcHBlbmQoJyknKTsKLSAgICBpZiAoIW1fZm9ybWF0
LmlzRW1wdHkoKSkgewotICAgICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiIGZvcm1hdCgnIik7
Ci0gICAgICAgIHJlc3VsdC5hcHBlbmQobV9mb3JtYXQpOwotICAgICAgICByZXN1bHQuYXBwZW5k
TGl0ZXJhbCgiJykiKTsKLSAgICB9Ci0gICAgcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOwotfQot
Ci1ib29sIFdlYktpdENTU1NoYWRlclZhbHVlOjplcXVhbHMoY29uc3QgV2ViS2l0Q1NTU2hhZGVy
VmFsdWUmIG90aGVyKSBjb25zdAotewotICAgIHJldHVybiBtX3VybCA9PSBvdGhlci5tX3VybDsK
LX0KLSAgICAKLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1Nf
U0hBREVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NTaGFkZXJW
YWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmgKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc5ZDM1ODkuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmgKKysrIC9kZXYvbnVsbApAQCAtMSw3NSAr
MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3Jh
dGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
Ci0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQot
ICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoK
LSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCc
QVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUK
LSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFdlYktpdENT
U1NoYWRlclZhbHVlX2gKLSNkZWZpbmUgV2ViS2l0Q1NTU2hhZGVyVmFsdWVfaAotCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiQ1NTVmFsdWUuaCIKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1jbGFzcyBDYWNoZWRSZXNvdXJjZUxvYWRlcjsKLWNsYXNzIFVSTDsKLWNsYXNz
IFN0eWxlQ2FjaGVkU2hhZGVyOwotY2xhc3MgU3R5bGVTaGFkZXI7Ci0KLWNsYXNzIFdlYktpdENT
U1NoYWRlclZhbHVlIDogcHVibGljIENTU1ZhbHVlIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFz
c1JlZjxXZWJLaXRDU1NTaGFkZXJWYWx1ZT4gY3JlYXRlKGNvbnN0IFN0cmluZyYgdXJsKSB7IHJl
dHVybiBhZG9wdFJlZigqbmV3IFdlYktpdENTU1NoYWRlclZhbHVlKHVybCkpOyB9Ci0gICAgfldl
YktpdENTU1NoYWRlclZhbHVlKCk7Ci0KLSAgICBjb25zdCBTdHJpbmcmIGZvcm1hdCgpIGNvbnN0
IHsgcmV0dXJuIG1fZm9ybWF0OyB9Ci0gICAgdm9pZCBzZXRGb3JtYXQoY29uc3QgU3RyaW5nJiBm
b3JtYXQpIHsgbV9mb3JtYXQgPSBmb3JtYXQ7IH0KLQotICAgIFVSTCBjb21wbGV0ZVVSTChDYWNo
ZWRSZXNvdXJjZUxvYWRlciopIGNvbnN0OwotICAgIFN0eWxlQ2FjaGVkU2hhZGVyKiBjYWNoZWRT
aGFkZXIoQ2FjaGVkUmVzb3VyY2VMb2FkZXIqKTsKLSAgICBTdHlsZVNoYWRlciogY2FjaGVkT3JQ
ZW5kaW5nU2hhZGVyKCk7Ci0KLSAgICBTdHJpbmcgY3VzdG9tQ1NTVGV4dCgpIGNvbnN0OwotCi0g
ICAgYm9vbCBlcXVhbHMoY29uc3QgV2ViS2l0Q1NTU2hhZGVyVmFsdWUmKSBjb25zdDsKLQotcHJp
dmF0ZToKLSAgICBleHBsaWNpdCBXZWJLaXRDU1NTaGFkZXJWYWx1ZShjb25zdCBTdHJpbmcmIHVy
bCk7Ci0KLSAgICBTdHJpbmcgbV91cmw7Ci0gICAgU3RyaW5nIG1fZm9ybWF0OwotICAgIFJlZlB0
cjxTdHlsZVNoYWRlcj4gbV9zaGFkZXI7Ci0gICAgYm9vbCBtX2FjY2Vzc2VkU2hhZGVyOwotfTsK
LQotQ1NTX1ZBTFVFX1RZUEVfQ0FTVFMoV2ViS2l0Q1NTU2hhZGVyVmFsdWUsIGlzV2ViS2l0Q1NT
U2hhZGVyVmFsdWUoKSkKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gV2ViS2l0Q1NTU2hhZGVyVmFsdWVfaApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKaW5kZXggNTYz
ZDUwNi4uNWYwYmM3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2UuY3BwCkBAIC0xMzUsMTAgKzEzNSw2IEBAIHN0YXRpYyBSZXNvdXJjZUxvYWRQcmlv
cml0eSBkZWZhdWx0UHJpb3JpdHlGb3JSZXNvdXJjZVR5cGUoQ2FjaGVkUmVzb3VyY2U6OlR5cGUK
ICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpUZXh0VHJhY2tSZXNvdXJjZToKICAgICAgICAgcmV0
dXJuIFJlc291cmNlTG9hZFByaW9yaXR5TG93OwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlNoYWRlclJlc291cmNlOgotICAgICAgICBy
ZXR1cm4gUmVzb3VyY2VMb2FkUHJpb3JpdHlNZWRpdW07Ci0jZW5kaWYKICAgICB9CiAgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIFJlc291cmNlTG9hZFByaW9yaXR5TG93Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaAppbmRleCA5MTc5
NGYyLi44ZGU2OWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkUmVzb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2UuaApAQCAtODEsOSArODEsNiBAQCBwdWJsaWM6CiAjaWYgRU5BQkxFKFZJREVPX1RSQUNL
KQogICAgICAgICAsIFRleHRUcmFja1Jlc291cmNlCiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0gICAgICAgICwgU2hhZGVyUmVzb3VyY2UKLSNlbmRpZgogICAgIH07CiAKICAgICBl
bnVtIFN0YXR1cyB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlTG9hZGVyLmNwcAppbmRleCA1NjZhMDczLi4xYzY1OTM3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKQEAg
LTYyLDEwICs2Miw2IEBACiAjaW5jbHVkZSAiQ2FjaGVkVGV4dFRyYWNrLmgiCiAjZW5kaWYKIAot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDYWNoZWRTaGFkZXIuaCIKLSNlbmRp
ZgotCiAjaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICNpbmNsdWRlICJQZXJmb3JtYW5jZS5o
IgogI2VuZGlmCkBAIC0xMDYsMTAgKzEwMiw2IEBAIHN0YXRpYyBDYWNoZWRSZXNvdXJjZSogY3Jl
YXRlUmVzb3VyY2UoQ2FjaGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgUmVzb3VyY2VSZXF1ZXN0CiAg
ICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6VGV4dFRyYWNrUmVzb3VyY2U6CiAgICAgICAgIHJldHVy
biBuZXcgQ2FjaGVkVGV4dFRyYWNrKHJlcXVlc3QpOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19T
SEFERVJTKQotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlNoYWRlclJlc291cmNlOgotICAgICAg
ICByZXR1cm4gbmV3IENhY2hlZFNoYWRlcihyZXF1ZXN0KTsKLSNlbmRpZgogICAgIH0KICAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICByZXR1cm4gMDsKQEAgLTE4MywxMyArMTc1LDYgQEAg
Q2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkVGV4dFRyYWNrPiBDYWNoZWRSZXNvdXJjZUxvYWRl
cjo6cmVxdWVzdFRleHRUcmFjayhDYWMKIH0KICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2hhZGVyPiBDYWNoZWRSZXNvdXJjZUxv
YWRlcjo6cmVxdWVzdFNoYWRlcihDYWNoZWRSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCi17Ci0g
ICAgcmV0dXJuIHN0YXRpY19jYXN0PENhY2hlZFNoYWRlcio+KHJlcXVlc3RSZXNvdXJjZShDYWNo
ZWRSZXNvdXJjZTo6U2hhZGVyUmVzb3VyY2UsIHJlcXVlc3QpLmdldCgpKTsKLX0KLSNlbmRpZgot
CiBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRDU1NTdHlsZVNoZWV0PiBDYWNoZWRSZXNvdXJj
ZUxvYWRlcjo6cmVxdWVzdENTU1N0eWxlU2hlZXQoQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0KQogewogICAgIHJldHVybiBzdGF0aWNfY2FzdDxDYWNoZWRDU1NTdHlsZVNoZWV0Kj4ocmVx
dWVzdFJlc291cmNlKENhY2hlZFJlc291cmNlOjpDU1NTdHlsZVNoZWV0LCByZXF1ZXN0KS5nZXQo
KSk7CkBAIC0yNzksOSArMjY0LDYgQEAgYm9vbCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2hlY2tJ
bnNlY3VyZUNvbnRlbnQoQ2FjaGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgY29uc3QKICNpZiBFTkFC
TEUoVklERU9fVFJBQ0spCiAgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6VGV4dFRyYWNrUmVzb3Vy
Y2U6CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBDYWNoZWRSZXNv
dXJjZTo6U2hhZGVyUmVzb3VyY2U6Ci0jZW5kaWYKICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpS
YXdSZXNvdXJjZToKICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpJbWFnZVJlc291cmNlOgogICAg
IGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkZvbnRSZXNvdXJjZTogewpAQCAtMzMzLDkgKzMxNSw2IEBA
IGJvb2wgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNhblJlcXVlc3QoQ2FjaGVkUmVzb3VyY2U6OlR5
cGUgdHlwZSwgY29uc3QgVVJMJiB1cmwsCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogICAgIGNh
c2UgQ2FjaGVkUmVzb3VyY2U6OlRleHRUcmFja1Jlc291cmNlOgogI2VuZGlmCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlNoYWRlclJlc291cmNlOgot
I2VuZGlmCiAgICAgICAgIGlmIChvcHRpb25zLnJlcXVlc3RPcmlnaW5Qb2xpY3kgPT0gUmVzdHJp
Y3RUb1NhbWVPcmlnaW4gJiYgIW1fZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCktPmNhblJlcXVl
c3QodXJsKSkgewogICAgICAgICAgICAgcHJpbnRBY2Nlc3NEZW5pZWRNZXNzYWdlKHVybCk7CiAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0zNzAsMTAgKzM0OSw2IEBAIGJvb2wgQ2FjaGVk
UmVzb3VyY2VMb2FkZXI6OmNhblJlcXVlc3QoQ2FjaGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgY29u
c3QgVVJMJiB1cmwsCiAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CiAg
ICAgICAgIGJyZWFrOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIENhY2hlZFJl
c291cmNlOjpTaGFkZXJSZXNvdXJjZToKLSAgICAgICAgLy8gU2luY2Ugc2hhZGVycyBhcmUgcmVm
ZXJlbmNlZCBmcm9tIENTUyBTdHlsZXMgdXNlIHRoZSBzYW1lIHJ1bGVzIGhlcmUuCi0jZW5kaWYK
ICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpDU1NTdHlsZVNoZWV0OgogICAgICAgICBpZiAoIXNo
b3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSAmJiAhbV9kb2N1bWVudC0+
Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93U3R5bGVGcm9tU291cmNlKHVybCkpCiAgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCmluZGV4IDU5N2Q2MTAuLmJjYzc5M2UgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCkBA
IC00Niw3ICs0Niw2IEBAIGNsYXNzIENhY2hlZEZvbnQ7CiBjbGFzcyBDYWNoZWRJbWFnZTsKIGNs
YXNzIENhY2hlZFJhd1Jlc291cmNlOwogY2xhc3MgQ2FjaGVkU2NyaXB0OwotY2xhc3MgQ2FjaGVk
U2hhZGVyOwogY2xhc3MgQ2FjaGVkVGV4dFRyYWNrOwogY2xhc3MgQ2FjaGVkWFNMU3R5bGVTaGVl
dDsKIGNsYXNzIERvY3VtZW50OwpAQCAtOTIsOSArOTEsNiBAQCBwdWJsaWM6CiAjaWYgRU5BQkxF
KFZJREVPX1RSQUNLKQogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFRleHRUcmFjaz4g
cmVxdWVzdFRleHRUcmFjayhDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKICNlbmRpZgotI2lmIEVO
QUJMRShDU1NfU0hBREVSUykKLSAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRTaGFkZXI+
IHJlcXVlc3RTaGFkZXIoQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jik7Ci0jZW5kaWYKIAogICAgIC8v
IExvZ3MgYW4gYWNjZXNzIGRlbmllZCBtZXNzYWdlIHRvIHRoZSBjb25zb2xlIGZvciB0aGUgc3Bl
Y2lmaWVkIFVSTC4KICAgICB2b2lkIHByaW50QWNjZXNzRGVuaWVkTWVzc2FnZShjb25zdCBVUkwm
IHVybCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkU2hhZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIu
Y3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhNTc0OGZlLi4wMDAwMDAwCi0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuY3BwCisrKyAvZGV2L251
bGwKQEAgLTEsNzEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0
ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xh
aW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lu
Y2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAi
Q2FjaGVkU2hhZGVyLmgiCi0jaW5jbHVkZSAiUmVzb3VyY2VCdWZmZXIuaCIKLSNpbmNsdWRlICJU
ZXh0UmVzb3VyY2VEZWNvZGVyLmgiCi0jaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5o
PgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLUNhY2hlZFNoYWRlcjo6Q2FjaGVkU2hhZGVyKGNv
bnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0KQotICAgIDogQ2FjaGVkUmVzb3Vy
Y2UocmVzb3VyY2VSZXF1ZXN0LCBTaGFkZXJSZXNvdXJjZSkKLSAgICAsIG1fZGVjb2RlcihUZXh0
UmVzb3VyY2VEZWNvZGVyOjpjcmVhdGUoImFwcGxpY2F0aW9uL3NoYWRlciIpKQotewotfQotCi1D
YWNoZWRTaGFkZXI6On5DYWNoZWRTaGFkZXIoKQotewotfQotCi1jb25zdCBTdHJpbmcmIENhY2hl
ZFNoYWRlcjo6c2hhZGVyU3RyaW5nKCkKLXsKLSAgICBpZiAobV9zaGFkZXJTdHJpbmcuaXNOdWxs
KCkgJiYgbV9kYXRhKSB7Ci0gICAgICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsKLSAgICAgICAg
YnVpbGRlci5hcHBlbmQobV9kZWNvZGVyLT5kZWNvZGUobV9kYXRhLT5kYXRhKCksIG1fZGF0YS0+
c2l6ZSgpKSk7Ci0gICAgICAgIGJ1aWxkZXIuYXBwZW5kKG1fZGVjb2Rlci0+Zmx1c2goKSk7Ci0g
ICAgICAgIG1fc2hhZGVyU3RyaW5nID0gYnVpbGRlci50b1N0cmluZygpOwotICAgIH0KLQotICAg
IHJldHVybiBtX3NoYWRlclN0cmluZzsKLX0KLQotdm9pZCBDYWNoZWRTaGFkZXI6OmZpbmlzaExv
YWRpbmcoUmVzb3VyY2VCdWZmZXIqIGRhdGEpCi17Ci0gICAgbV9kYXRhID0gZGF0YTsKLSAgICBD
YWNoZWRSZXNvdXJjZTo6ZmluaXNoTG9hZGluZygwKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2
MmJkNGZkLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRT
aGFkZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDYwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICog
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1l
ciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0gg
REFNQUdFLgotICovCi0KLSNpZm5kZWYgQ2FjaGVkU2hhZGVyX2gKLSNkZWZpbmUgQ2FjaGVkU2hh
ZGVyX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkNhY2hlZFJlc291
cmNlLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgVGV4dFJlc291cmNlRGVjb2Rl
cjsKLQotY2xhc3MgQ2FjaGVkU2hhZGVyIGZpbmFsIDogcHVibGljIENhY2hlZFJlc291cmNlIHsK
LXB1YmxpYzoKLSAgICBDYWNoZWRTaGFkZXIoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7Ci0gICAg
dmlydHVhbCB+Q2FjaGVkU2hhZGVyKCk7Ci0gICAgCi0gICAgY29uc3QgU3RyaW5nJiBzaGFkZXJT
dHJpbmcoKTsKLQotcHJpdmF0ZToKLSAgICB2aXJ0dWFsIGJvb2wgbWF5VHJ5UmVwbGFjZUVuY29k
ZWREYXRhKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsgfQotICAgIHZpcnR1YWwgdm9p
ZCBmaW5pc2hMb2FkaW5nKFJlc291cmNlQnVmZmVyKikgb3ZlcnJpZGU7Ci0KLSAgICBSZWZQdHI8
VGV4dFJlc291cmNlRGVjb2Rlcj4gbV9kZWNvZGVyOwotICAgIFN0cmluZyBtX3NoYWRlclN0cmlu
ZzsKLX07Ci0KLX0KLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8v
IENhY2hlZFNoYWRlcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdz
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCmluZGV4IDcxYzRiN2MuLjNi
YTIzYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCkBAIC0xNzgsNyArMTc4LDYgQEAgU2V0
dGluZ3M6OlNldHRpbmdzKFBhZ2UqIHBhZ2UpCiAgICAgLCBtX25lZWRzQWRvYmVGcmFtZVJlbG9h
ZGluZ1F1aXJrKGZhbHNlKQogICAgICwgbV91c2VzUGFnZUNhY2hlKGZhbHNlKQogICAgICwgbV9m
b250UmVuZGVyaW5nTW9kZSgwKQotICAgICwgbV9pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoZmFs
c2UpCiAjaWYgUExBVEZPUk0oSU9TKQogICAgICwgbV9zdGFuZGFsb25lKGZhbHNlKQogICAgICwg
bV90ZWxlcGhvbmVOdW1iZXJQYXJzaW5nRW5hYmxlZChmYWxzZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3Mu
aAppbmRleCA1NWY2ZGViLi5jYjJlYzk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1NldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCkBAIC0yMTMs
OSArMjEzLDYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Rm9udFJlbmRlcmluZ01vZGUoRm9udFJl
bmRlcmluZ01vZGUgbW9kZSk7CiAgICAgRm9udFJlbmRlcmluZ01vZGUgZm9udFJlbmRlcmluZ01v
ZGUoKSBjb25zdDsKIAotICAgIHZvaWQgc2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChib29sIGVu
YWJsZWQpIHsgbV9pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQgPSBlbmFibGVkOyB9Ci0gICAgYm9v
bCBpc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lzQ1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZDsgfQotCiAjaWYgRU5BQkxFKENTU19TVElDS1lfUE9TSVRJT04pCiAgICAg
dm9pZCBzZXRDU1NTdGlja3lQb3NpdGlvbkVuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fY3NzU3Rp
Y2t5UG9zaXRpb25FbmFibGVkID0gZW5hYmxlZDsgfQogICAgIGJvb2wgY3NzU3RpY2t5UG9zaXRp
b25FbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9jc3NTdGlja3lQb3NpdGlvbkVuYWJsZWQ7IH0K
QEAgLTM0Nyw3ICszNDQsNiBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9uZWVkc0Fkb2JlRnJhbWVS
ZWxvYWRpbmdRdWlyayA6IDE7CiAgICAgYm9vbCBtX3VzZXNQYWdlQ2FjaGUgOiAxOwogICAgIHVu
c2lnbmVkIG1fZm9udFJlbmRlcmluZ01vZGUgOiAxOwotICAgIGJvb2wgbV9pc0NTU0N1c3RvbUZp
bHRlckVuYWJsZWQgOiAxOwogI2lmIFBMQVRGT1JNKElPUykKICAgICBib29sIG1fc3RhbmRhbG9u
ZSA6IDE7CiAgICAgYm9vbCBtX3RlbGVwaG9uZU51bWJlclBhcnNpbmdFbmFibGVkIDogMTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0
aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0
aW9uLmNwcAppbmRleCBhMzk4YTdhLi4yOTExMjllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3BwCkBAIC0yMjMsNyAr
MjIzLDcgQEAgc3RhdGljIGlubGluZSBQYXNzUmVmUHRyPFN0eWxlSW1hZ2U+IGJsZW5kRmlsdGVy
KGNvbnN0IEFuaW1hdGlvbkJhc2UqIGFuaW0sIENhY2gKIAogICAgIFJlZlB0cjxTdHlsZUNhY2hl
ZEltYWdlPiBzdHlsZWRJbWFnZSA9IFN0eWxlQ2FjaGVkSW1hZ2U6OmNyZWF0ZShpbWFnZSk7CiAg
ICAgYXV0byBpbWFnZVZhbHVlID0gQ1NTSW1hZ2VWYWx1ZTo6Y3JlYXRlKGltYWdlLT51cmwoKSwg
c3R5bGVkSW1hZ2UuZ2V0KCkpOwotICAgIGF1dG8gZmlsdGVyVmFsdWUgPSBDb21wdXRlZFN0eWxl
RXh0cmFjdG9yOjp2YWx1ZUZvckZpbHRlcihhbmltLT5yZW5kZXJlcigpLCAmYW5pbS0+cmVuZGVy
ZXIoKS0+c3R5bGUoKSwgZmlsdGVyUmVzdWx0LCBEb05vdEFkanVzdFBpeGVsVmFsdWVzKTsKKyAg
ICBhdXRvIGZpbHRlclZhbHVlID0gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JGaWx0
ZXIoJmFuaW0tPnJlbmRlcmVyKCktPnN0eWxlKCksIGZpbHRlclJlc3VsdCwgRG9Ob3RBZGp1c3RQ
aXhlbFZhbHVlcyk7CiAKICAgICBhdXRvIHJlc3VsdCA9IENTU0ZpbHRlckltYWdlVmFsdWU6OmNy
ZWF0ZShzdGQ6Om1vdmUoaW1hZ2VWYWx1ZSksIHN0ZDo6bW92ZShmaWx0ZXJWYWx1ZSkpOwogICAg
IHJlc3VsdC5nZXQoKS5zZXRGaWx0ZXJPcGVyYXRpb25zKGZpbHRlclJlc3VsdCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvUGxhdGZvcm1DQUxh
eWVyTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1BsYXRm
b3JtQ0FMYXllck1hYy5tbQppbmRleCA4MWRhYWQ5Li41NjdkYzJhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvUGxhdGZvcm1DQUxheWVyTWFjLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9QbGF0Zm9ybUNB
TGF5ZXJNYWMubW0KQEAgLTY2NCwxMCArNjY0LDYgQEAgYm9vbCBQbGF0Zm9ybUNBTGF5ZXJNYWM6
OmZpbHRlcnNDYW5CZUNvbXBvc2l0ZWQoY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYgZmlsdGVycykK
ICAgICAgICAgY29uc3QgRmlsdGVyT3BlcmF0aW9uKiBmaWx0ZXJPcGVyYXRpb24gPSBmaWx0ZXJz
LmF0KGkpOwogICAgICAgICBzd2l0Y2ggKGZpbHRlck9wZXJhdGlvbi0+dHlwZSgpKSB7CiAgICAg
ICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6UkVGRVJFTkNFOgotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICAgICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAg
ICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RPTToKLSNlbmRpZgog
ICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgIGNhc2UgRmlsdGVyT3Bl
cmF0aW9uOjpEUk9QX1NIQURPVzoKICAgICAgICAgICAgICAgICAvLyBGSVhNRTogRm9yIG5vdyB3
ZSBjYW4gb25seSBoYW5kbGUgZHJvcC1zaGFkb3cgaXMgaWYgaXQncyBsYXN0IGluIHRoZSBsaXN0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmgKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGRmNjkwYTAuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlci5oCisrKyAv
ZGV2L251bGwKQEAgLTEsOTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9i
ZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2lmbmRlZiBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcl9oCi0jZGVmaW5lIEN1c3RvbUZp
bHRlckFycmF5UGFyYW1ldGVyX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRl
ICJBbmltYXRpb25VdGlsaXRpZXMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQYXJhbWV0ZXIu
aCIKLSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xh
c3MgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIgOiBwdWJsaWMgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJBcnJheVBh
cmFtZXRlcj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgbmFtZSwgQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
OjpQYXJhbWV0ZXJUeXBlIHBhcmFtZXRlclR5cGUgPSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OkFS
UkFZKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0b21GaWx0ZXJBcnJh
eVBhcmFtZXRlcihwYXJhbWV0ZXJUeXBlLCBuYW1lKSk7Ci0gICAgfQotCi0gICAgdW5zaWduZWQg
c2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGF0YS5zaXplKCk7IH0KLSAgICBkb3VibGUgdmFsdWVB
dCh1bnNpZ25lZCBpbmRleCkgY29uc3QgeyByZXR1cm4gbV9kYXRhLmF0KGluZGV4KTsgfQotCi0g
ICAgdm9pZCBhZGRWYWx1ZShkb3VibGUgdmFsdWUpIHsgbV9kYXRhLmFwcGVuZCh2YWx1ZSk7IH0K
LQotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IGJsZW5kKGNv
bnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlciogZnJvbSwgZG91YmxlIHByb2dyZXNzLCBjb25zdCBM
YXlvdXRTaXplJikKLSAgICB7Ci0gICAgICAgIGlmICghZnJvbSB8fCAhaXNTYW1lVHlwZSgqZnJv
bSkpCi0gICAgICAgICAgICByZXR1cm4gdGhpczsKLQotICAgICAgICBjb25zdCBDdXN0b21GaWx0
ZXJBcnJheVBhcmFtZXRlciogZnJvbUFycmF5ID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmls
dGVyQXJyYXlQYXJhbWV0ZXIqPihmcm9tKTsKLQotICAgICAgICBpZiAoc2l6ZSgpICE9IGZyb21B
cnJheS0+c2l6ZSgpKQotICAgICAgICAgICAgcmV0dXJuIHRoaXM7Ci0KLSAgICAgICAgUmVmUHRy
PEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyPiByZXN1bHQgPSBDdXN0b21GaWx0ZXJBcnJheVBh
cmFtZXRlcjo6Y3JlYXRlKG5hbWUoKSk7Ci0gICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
c2l6ZSgpOyArK2kpCi0gICAgICAgICAgICByZXN1bHQtPmFkZFZhbHVlKFdlYkNvcmU6OmJsZW5k
KGZyb21BcnJheS0+dmFsdWVBdChpKSwgdmFsdWVBdChpKSwgcHJvZ3Jlc3MpKTsKLQotICAgICAg
ICByZXR1cm4gcmVzdWx0LnJlbGVhc2UoKTsKLSAgICB9Ci0KLSAgICB2aXJ0dWFsIGJvb2wgb3Bl
cmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXImIG8pIGNvbnN0Ci0gICAgewotICAg
ICAgICBpZiAoIWlzU2FtZVR5cGUobykpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAg
ICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIqIG90aGVyID0gc3RhdGljX2Nh
c3Q8Y29uc3QgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIqPigmbyk7Ci0gICAgICAgIHJldHVy
biBtX2RhdGEgPT0gb3RoZXItPm1fZGF0YTsKLSAgICB9Ci0KLXByaXZhdGU6Ci0gICAgQ3VzdG9t
RmlsdGVyQXJyYXlQYXJhbWV0ZXIoUGFyYW1ldGVyVHlwZSBwYXJhbWV0ZXJUeXBlLCBjb25zdCBT
dHJpbmcmIG5hbWUpCi0gICAgICAgIDogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKHBhcmFtZXRlclR5
cGUsIG5hbWUpCi0gICAgewotICAgIH0KLQotICAgIFZlY3Rvcjxkb3VibGU+IG1fZGF0YTsKLX07
Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVS
UykKLQotI2VuZGlmIC8vIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyX2gKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29s
b3JQYXJhbWV0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggYzY5MjQ1ZC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgKKysrIC9kZXYvbnVsbApAQCAt
MSw4OSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5c3RlbXMgSW5j
b3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xE
RVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAq
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1
c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyQ29sb3JQYXJh
bWV0ZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkNvbG9yLmgiCi0j
aW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsK
LQotc3RhdGljIGlubGluZSBDb2xvciBibGVuZEZ1bmMoY29uc3QgQ29sb3ImIGZyb20sIGNvbnN0
IENvbG9yJiB0bywgZG91YmxlIHByb2dyZXNzKQotewotICAgIHJldHVybiBibGVuZChmcm9tLCB0
bywgcHJvZ3Jlc3MpOwotfQotCi1jbGFzcyBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlciA6IHB1
YmxpYyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVm
UHRyPEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyPiBjcmVhdGUoY29uc3QgU3RyaW5nJiBuYW1l
KQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0b21GaWx0ZXJDb2xvclBh
cmFtZXRlcihuYW1lKSk7Ci0gICAgfQotCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPEN1c3RvbUZp
bHRlclBhcmFtZXRlcj4gYmxlbmQoY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBmcm9tUGFy
YW1ldGVyLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmKQotICAgIHsKLSAgICAg
ICAgaWYgKCFmcm9tUGFyYW1ldGVyIHx8ICFpc1NhbWVUeXBlKCpmcm9tUGFyYW1ldGVyKSkKLSAg
ICAgICAgICAgIHJldHVybiB0aGlzOwotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJDb2xvclBh
cmFtZXRlciogZnJvbUNvbG9yID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyQ29sb3JQ
YXJhbWV0ZXIqPihmcm9tUGFyYW1ldGVyKTsKLQotICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVy
Q29sb3JQYXJhbWV0ZXI+IHJlc3VsdCA9IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyOjpjcmVh
dGUobmFtZSgpKTsKLSAgICAgICAgcmVzdWx0LT5zZXRDb2xvcihibGVuZEZ1bmMoZnJvbUNvbG9y
LT5jb2xvcigpLCBjb2xvcigpLCBwcm9ncmVzcykpOwotICAgICAgICByZXR1cm4gcmVzdWx0Owot
ICAgIH0KLQotICAgIGNvbnN0IENvbG9yJiBjb2xvcigpIGNvbnN0IHsgcmV0dXJuIG1fY29sb3I7
IH0KLSAgICB2b2lkIHNldENvbG9yKGNvbnN0IENvbG9yJiBjb2xvcikgeyBtX2NvbG9yID0gY29s
b3I7IH0KLQotICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEN1c3RvbUZpbHRlclBh
cmFtZXRlciYgbykgY29uc3QKLSAgICB7Ci0gICAgICAgIGlmICghaXNTYW1lVHlwZShvKSkKLSAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyQ29sb3JQ
YXJhbWV0ZXIqIG90aGVyID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyQ29sb3JQYXJh
bWV0ZXIqPigmbyk7Ci0gICAgICAgIHJldHVybiBtX2NvbG9yID09IG90aGVyLT5tX2NvbG9yOwot
ICAgIH0KLSAgICAKLXByaXZhdGU6Ci0gICAgQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIoY29u
c3QgU3RyaW5nJiBuYW1lKQotICAgICAgICA6IEN1c3RvbUZpbHRlclBhcmFtZXRlcihDT0xPUiwg
bmFtZSkKLSAgICB7Ci0gICAgfQotICAgIHZpcnR1YWwgfkN1c3RvbUZpbHRlckNvbG9yUGFyYW1l
dGVyKCkKLSAgICB7Ci0gICAgfQotICAgIAotICAgIENvbG9yIG1fY29sb3I7Ci19OwotCi19IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNl
bmRpZiAvLyBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbXBpbGVkUHJv
Z3JhbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDM0Yjc1NjIuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uY3BwCisrKyAvZGV2L251bGwKQEAg
LTEsMTU2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJ
bmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIu
Ci0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhP
TERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgot
ICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRl
ICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNT
KQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIgotIAotI2luY2x1ZGUg
IkN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1D
dXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW06OkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbShQ
YXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIHZhbGlk
YXRlZFZlcnRleFNoYWRlciwgY29uc3QgU3RyaW5nJiB2YWxpZGF0ZWRGcmFnbWVudFNoYWRlciwg
Q3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUpCi0gICAgOiBtX2NvbnRleHQoY29u
dGV4dCkKLSAgICAsIG1fcHJvZ3JhbSgwKQotICAgICwgbV9wb3NpdGlvbkF0dHJpYkxvY2F0aW9u
KC0xKQotICAgICwgbV90ZXhBdHRyaWJMb2NhdGlvbigtMSkKLSAgICAsIG1fbWVzaEF0dHJpYkxv
Y2F0aW9uKC0xKQotICAgICwgbV90cmlhbmdsZUF0dHJpYkxvY2F0aW9uKC0xKQotICAgICwgbV9t
ZXNoQm94TG9jYXRpb24oLTEpCi0gICAgLCBtX3Byb2plY3Rpb25NYXRyaXhMb2NhdGlvbigtMSkK
LSAgICAsIG1fdGlsZVNpemVMb2NhdGlvbigtMSkKLSAgICAsIG1fbWVzaFNpemVMb2NhdGlvbigt
MSkKLSAgICAsIG1fc2FtcGxlckxvY2F0aW9uKC0xKQotICAgICwgbV9zYW1wbGVyU2l6ZUxvY2F0
aW9uKC0xKQotICAgICwgbV9jb250ZW50U2FtcGxlckxvY2F0aW9uKC0xKQotICAgICwgbV9pc0lu
aXRpYWxpemVkKGZhbHNlKQotewotICAgIEFTU0VSVCghdmFsaWRhdGVkVmVydGV4U2hhZGVyLmlz
TnVsbCgpICYmICF2YWxpZGF0ZWRGcmFnbWVudFNoYWRlci5pc051bGwoKSk7Ci0KLSAgICBtX2Nv
bnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotCi0gICAgUGxhdGZvcm0zRE9iamVjdCB2ZXJ0
ZXhTaGFkZXIgPSBjb21waWxlU2hhZGVyKEdyYXBoaWNzQ29udGV4dDNEOjpWRVJURVhfU0hBREVS
LCB2YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIpOwotICAgIGlmICghdmVydGV4U2hhZGVyKQotICAgICAg
ICByZXR1cm47Ci0gICAgCi0gICAgUGxhdGZvcm0zRE9iamVjdCBmcmFnbWVudFNoYWRlciA9IGNv
bXBpbGVTaGFkZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQUdNRU5UX1NIQURFUiwgdmFsaWRhdGVk
RnJhZ21lbnRTaGFkZXIpOwotICAgIGlmICghZnJhZ21lbnRTaGFkZXIpIHsKLSAgICAgICAgbV9j
b250ZXh0LT5kZWxldGVTaGFkZXIodmVydGV4U2hhZGVyKTsKLSAgICAgICAgcmV0dXJuOwotICAg
IH0KLSAgICAKLSAgICBtX3Byb2dyYW0gPSBsaW5rUHJvZ3JhbSh2ZXJ0ZXhTaGFkZXIsIGZyYWdt
ZW50U2hhZGVyKTsKLSAgICAKLSAgICBtX2NvbnRleHQtPmRlbGV0ZVNoYWRlcih2ZXJ0ZXhTaGFk
ZXIpOwotICAgIG1fY29udGV4dC0+ZGVsZXRlU2hhZGVyKGZyYWdtZW50U2hhZGVyKTsKLSAgICAK
LSAgICBpZiAoIW1fcHJvZ3JhbSkKLSAgICAgICAgcmV0dXJuOwotICAgIAotICAgIGluaXRpYWxp
emVQYXJhbWV0ZXJMb2NhdGlvbnMocHJvZ3JhbVR5cGUpOwotICAgIAotICAgIG1faXNJbml0aWFs
aXplZCA9IHRydWU7Ci19Ci0KLVBsYXRmb3JtM0RPYmplY3QgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQ
cm9ncmFtOjpjb21waWxlU2hhZGVyKEdDM0RlbnVtIHNoYWRlclR5cGUsIGNvbnN0IFN0cmluZyYg
c2hhZGVyU3RyaW5nKQotewotICAgIEFTU0VSVCghc2hhZGVyU3RyaW5nLmlzTnVsbCgpKTsKLQot
ICAgIFBsYXRmb3JtM0RPYmplY3Qgc2hhZGVyID0gbV9jb250ZXh0LT5jcmVhdGVTaGFkZXIoc2hh
ZGVyVHlwZSk7Ci0gICAgbV9jb250ZXh0LT5zaGFkZXJTb3VyY2Uoc2hhZGVyLCBzaGFkZXJTdHJp
bmcpOwotICAgIG1fY29udGV4dC0+Y29tcGlsZVNoYWRlcihzaGFkZXIpOwotICAgIAotICAgIGlu
dCBjb21waWxlZCA9IDA7Ci0gICAgbV9jb250ZXh0LT5nZXRTaGFkZXJpdihzaGFkZXIsIEdyYXBo
aWNzQ29udGV4dDNEOjpDT01QSUxFX1NUQVRVUywgJmNvbXBpbGVkKTsKLSAgICBpZiAoIWNvbXBp
bGVkKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBUaGlzIGlzIGFuIGludmFsaWQgc2hhZGVyLiBUaHJv
dyBzb21lIGVycm9ycy4KLSAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTc0NDE2Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlU2hhZGVyKHNoYWRlcik7
Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLSAgICAKLSAgICByZXR1cm4gc2hhZGVyOwotfQot
Ci1QbGF0Zm9ybTNET2JqZWN0IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbTo6bGlua1Byb2dy
YW0oUGxhdGZvcm0zRE9iamVjdCB2ZXJ0ZXhTaGFkZXIsIFBsYXRmb3JtM0RPYmplY3QgZnJhZ21l
bnRTaGFkZXIpCi17Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBwcm9ncmFtID0gbV9jb250ZXh0LT5j
cmVhdGVQcm9ncmFtKCk7Ci0gICAgbV9jb250ZXh0LT5hdHRhY2hTaGFkZXIocHJvZ3JhbSwgdmVy
dGV4U2hhZGVyKTsKLSAgICBtX2NvbnRleHQtPmF0dGFjaFNoYWRlcihwcm9ncmFtLCBmcmFnbWVu
dFNoYWRlcik7Ci0gICAgbV9jb250ZXh0LT5saW5rUHJvZ3JhbShwcm9ncmFtKTsKLSAgICAKLSAg
ICBpbnQgbGlua2VkID0gMDsKLSAgICBtX2NvbnRleHQtPmdldFByb2dyYW1pdihwcm9ncmFtLCBH
cmFwaGljc0NvbnRleHQzRDo6TElOS19TVEFUVVMsICZsaW5rZWQpOwotICAgIGlmICghbGlua2Vk
KSB7Ci0gICAgICAgIC8vIEZJWE1FOiBJbnZhbGlkIHZlcnRleC9mcmFnbWVudCBzaGFkZXIgY29t
YmluYXRpb24uIFRocm93IHNvbWUgZXJyb3JzIGhlcmUuCi0gICAgICAgIC8vIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDQxNgotICAgICAgICBtX2NvbnRleHQtPmRl
bGV0ZVByb2dyYW0ocHJvZ3JhbSk7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLSAgICAKLSAg
ICByZXR1cm4gcHJvZ3JhbTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW06
OmluaXRpYWxpemVQYXJhbWV0ZXJMb2NhdGlvbnMoQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJv
Z3JhbVR5cGUpCi17Ci0gICAgbV9wb3NpdGlvbkF0dHJpYkxvY2F0aW9uID0gbV9jb250ZXh0LT5n
ZXRBdHRyaWJMb2NhdGlvbihtX3Byb2dyYW0sICJhX3Bvc2l0aW9uIik7Ci0gICAgbV90ZXhBdHRy
aWJMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0QXR0cmliTG9jYXRpb24obV9wcm9ncmFtLCAiYV90
ZXhDb29yZCIpOwotICAgIG1fbWVzaEF0dHJpYkxvY2F0aW9uID0gbV9jb250ZXh0LT5nZXRBdHRy
aWJMb2NhdGlvbihtX3Byb2dyYW0sICJhX21lc2hDb29yZCIpOwotICAgIG1fdHJpYW5nbGVBdHRy
aWJMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0QXR0cmliTG9jYXRpb24obV9wcm9ncmFtLCAiYV90
cmlhbmdsZUNvb3JkIik7Ci0gICAgbV9tZXNoQm94TG9jYXRpb24gPSBtX2NvbnRleHQtPmdldFVu
aWZvcm1Mb2NhdGlvbihtX3Byb2dyYW0sICJ1X21lc2hCb3giKTsKLSAgICBtX3RpbGVTaXplTG9j
YXRpb24gPSBtX2NvbnRleHQtPmdldFVuaWZvcm1Mb2NhdGlvbihtX3Byb2dyYW0sICJ1X3RpbGVT
aXplIik7Ci0gICAgbV9tZXNoU2l6ZUxvY2F0aW9uID0gbV9jb250ZXh0LT5nZXRVbmlmb3JtTG9j
YXRpb24obV9wcm9ncmFtLCAidV9tZXNoU2l6ZSIpOwotICAgIG1fcHJvamVjdGlvbk1hdHJpeExv
Y2F0aW9uID0gbV9jb250ZXh0LT5nZXRVbmlmb3JtTG9jYXRpb24obV9wcm9ncmFtLCAidV9wcm9q
ZWN0aW9uTWF0cml4Iik7Ci0gICAgbV9zYW1wbGVyU2l6ZUxvY2F0aW9uID0gbV9jb250ZXh0LT5n
ZXRVbmlmb3JtTG9jYXRpb24obV9wcm9ncmFtLCAidV90ZXh0dXJlU2l6ZSIpOwotICAgIG1fY29u
dGVudFNhbXBsZXJMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0VW5pZm9ybUxvY2F0aW9uKG1fcHJv
Z3JhbSwgInVfY29udGVudFRleHR1cmUiKTsKLSAgICBpZiAocHJvZ3JhbVR5cGUgPT0gUFJPR1JB
TV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUpIHsKLSAgICAgICAgLy8gV2hlbiB0aGUgYXV0
aG9yIHVzZXMgdGhlIENTUyBtaXggZnVuY3Rpb24gaW4gYSBjdXN0b20gZmlsdGVyLCBXZWJLaXQg
YWRkcyB0aGUgaW50ZXJuYWwKLSAgICAgICAgLy8gc3ltYm9sIGNzc191X3RleHR1cmUgdG8gdGhl
IHNoYWRlciBjb2RlLCB3aGljaCByZWZlcmVuY2VzIHRoZSB0ZXh0dXJlIG9mIHRoZSBlbGVtZW50
LgotICAgICAgICBtX3NhbXBsZXJMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0VW5pZm9ybUxvY2F0
aW9uKG1fcHJvZ3JhbSwgImNzc191X3RleHR1cmUiKTsKLSAgICB9Ci19Ci0KLWludCBDdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW06OnVuaWZvcm1Mb2NhdGlvbkJ5TmFtZShjb25zdCBTdHJpbmcm
IG5hbWUpCi17Ci0gICAgQVNTRVJUKG1faXNJbml0aWFsaXplZCk7Ci0gICAgLy8gRklYTUU6IElt
cHJvdmUgdGhpcyBieSBjYWNoaW5nIHRoZSB1bmlmb3JtIGxvY2F0aW9ucy4KLSAgICByZXR1cm4g
bV9jb250ZXh0LT5nZXRVbmlmb3JtTG9jYXRpb24obV9wcm9ncmFtLCBuYW1lKTsKLX0KLSAgICAK
LUN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbTo6fkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bSgpCi17Ci0gICAgaWYgKG1fcHJvZ3JhbSkgewotICAgICAgICBtX2NvbnRleHQtPm1ha2VDb250
ZXh0Q3VycmVudCgpOwotICAgICAgICBtX2NvbnRleHQtPmRlbGV0ZVByb2dyYW0obV9wcm9ncmFt
KTsKLSAgICB9Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLSNlbmRpZiAvLyBFTkFCTEUo
Q1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
ckNvbXBpbGVkUHJvZ3JhbS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZGJmMGQ0
Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmgKKysrIC9kZXYvbnVsbApAQCAtMSw5OSArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVk
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICog
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMg
SVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAq
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRl
ckNvbXBpbGVkUHJvZ3JhbV9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbV9o
Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2luY2x1
ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmgiCi0jaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0
M0QuaCIKLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dU
RlN0cmluZy5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlckds
b2JhbENvbnRleHQ7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbTogcHVibGlj
IFJlZkNvdW50ZWQ8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiB7Ci1wdWJsaWM6Ci0gICAg
c3RhdGljIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiBjcmVhdGUoUGFz
c1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gY29udGV4dCwgY29uc3QgU3RyaW5nJiB2YWxpZGF0
ZWRWZXJ0ZXhTaGFkZXIsIGNvbnN0IFN0cmluZyYgdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXIsIEN1
c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlKQotICAgIHsKLSAgICAgICAgcmV0dXJu
IGFkb3B0UmVmKG5ldyBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0oY29udGV4dCwgdmFsaWRh
dGVkVmVydGV4U2hhZGVyLCB2YWxpZGF0ZWRGcmFnbWVudFNoYWRlciwgcHJvZ3JhbVR5cGUpKTsK
LSAgICB9Ci0gICAgCi0gICAgfkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbSgpOwotICAgIAot
ICAgIGludCBwb3NpdGlvbkF0dHJpYkxvY2F0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9wb3NpdGlv
bkF0dHJpYkxvY2F0aW9uOyB9Ci0gICAgaW50IHRleEF0dHJpYkxvY2F0aW9uKCkgY29uc3QgeyBy
ZXR1cm4gbV90ZXhBdHRyaWJMb2NhdGlvbjsgfQotICAgIGludCBtZXNoQXR0cmliTG9jYXRpb24o
KSBjb25zdCB7IHJldHVybiBtX21lc2hBdHRyaWJMb2NhdGlvbjsgfQotICAgIGludCB0cmlhbmds
ZUF0dHJpYkxvY2F0aW9uKCkgY29uc3QgeyByZXR1cm4gbV90cmlhbmdsZUF0dHJpYkxvY2F0aW9u
OyB9Ci0gICAgaW50IG1lc2hCb3hMb2NhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaEJveExv
Y2F0aW9uOyB9Ci0gICAgaW50IHByb2plY3Rpb25NYXRyaXhMb2NhdGlvbigpIGNvbnN0IHsgcmV0
dXJuIG1fcHJvamVjdGlvbk1hdHJpeExvY2F0aW9uOyB9Ci0gICAgaW50IHRpbGVTaXplTG9jYXRp
b24oKSBjb25zdCB7IHJldHVybiBtX3RpbGVTaXplTG9jYXRpb247IH0KLSAgICBpbnQgbWVzaFNp
emVMb2NhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaFNpemVMb2NhdGlvbjsgfQotICAgIGlu
dCBzYW1wbGVyTG9jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX3NhbXBsZXJMb2NhdGlvbjsgfQot
ICAgIGludCBjb250ZW50U2FtcGxlckxvY2F0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZW50
U2FtcGxlckxvY2F0aW9uOyB9Ci0gICAgaW50IHNhbXBsZXJTaXplTG9jYXRpb24oKSBjb25zdCB7
IHJldHVybiBtX3NhbXBsZXJTaXplTG9jYXRpb247IH0KLQotICAgIGludCB1bmlmb3JtTG9jYXRp
b25CeU5hbWUoY29uc3QgU3RyaW5nJik7Ci0gICAgCi0gICAgYm9vbCBpc0luaXRpYWxpemVkKCkg
Y29uc3QgeyByZXR1cm4gbV9pc0luaXRpYWxpemVkOyB9Ci0gICAgCi0gICAgUGxhdGZvcm0zRE9i
amVjdCBwcm9ncmFtKCkgY29uc3QgeyByZXR1cm4gbV9wcm9ncmFtOyB9Ci1wcml2YXRlOgotICAg
IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbShQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNE
PiwgY29uc3QgU3RyaW5nJiB2YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIsIGNvbnN0IFN0cmluZyYgdmFs
aWRhdGVkRnJhZ21lbnRTaGFkZXIsIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlKTsKLSAgICAKLSAg
ICBQbGF0Zm9ybTNET2JqZWN0IGNvbXBpbGVTaGFkZXIoR0MzRGVudW0gc2hhZGVyVHlwZSwgY29u
c3QgU3RyaW5nJiBzaGFkZXJTdHJpbmcpOwotICAgIFBsYXRmb3JtM0RPYmplY3QgbGlua1Byb2dy
YW0oUGxhdGZvcm0zRE9iamVjdCB2ZXJ0ZXhTaGFkZXIsIFBsYXRmb3JtM0RPYmplY3QgZnJhZ21l
bnRTaGFkZXIpOwotICAgIHZvaWQgaW5pdGlhbGl6ZVBhcmFtZXRlckxvY2F0aW9ucyhDdXN0b21G
aWx0ZXJQcm9ncmFtVHlwZSk7Ci0gICAgCi0gICAgUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBt
X2NvbnRleHQ7Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBtX3Byb2dyYW07Ci0gICAgCi0gICAgaW50
IG1fcG9zaXRpb25BdHRyaWJMb2NhdGlvbjsKLSAgICBpbnQgbV90ZXhBdHRyaWJMb2NhdGlvbjsK
LSAgICBpbnQgbV9tZXNoQXR0cmliTG9jYXRpb247Ci0gICAgaW50IG1fdHJpYW5nbGVBdHRyaWJM
b2NhdGlvbjsKLSAgICBpbnQgbV9tZXNoQm94TG9jYXRpb247Ci0gICAgaW50IG1fcHJvamVjdGlv
bk1hdHJpeExvY2F0aW9uOwotICAgIGludCBtX3RpbGVTaXplTG9jYXRpb247Ci0gICAgaW50IG1f
bWVzaFNpemVMb2NhdGlvbjsKLSAgICBpbnQgbV9zYW1wbGVyTG9jYXRpb247Ci0gICAgaW50IG1f
c2FtcGxlclNpemVMb2NhdGlvbjsKLSAgICBpbnQgbV9jb250ZW50U2FtcGxlckxvY2F0aW9uOwot
ICAgIAotICAgIGJvb2wgbV9pc0luaXRpYWxpemVkOwotfTsKLQotfQotCi0jZW5kaWYgLy8gRU5B
QkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0KLSNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJD
b25zdGFudHMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3Vz
dG9tRmlsdGVyQ29uc3RhbnRzLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU1OWRi
YzguLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJDb25zdGFudHMuaAorKysgL2Rldi9udWxsCkBAIC0xLDYwICswLDAgQEAK
LS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KA
nSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0g
KiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyQ29u
c3RhbnRzX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyQ29uc3RhbnRzX2gKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1lbnVtIEN1c3RvbUZpbHRlck1lc2hDb25zdGFudHMgewotICAgIC8vIFZlcnRl
eCBhdHRyaWJ1dGUgc2l6ZXMKLSAgICBQb3NpdGlvbkF0dHJpYlNpemUgPSA0LAotICAgIFRleEF0
dHJpYlNpemUgPSAyLAotICAgIE1lc2hBdHRyaWJTaXplID0gMiwKLSAgICBUcmlhbmdsZUF0dHJp
YlNpemUgPSAzLAotICAgIC8vIFZlcnRleCBhdHRyaWJ1dGUgb2Zmc2V0cwotICAgIFBvc2l0aW9u
QXR0cmliT2Zmc2V0ID0gMCwKLSAgICBUZXhBdHRyaWJPZmZzZXQgPSBQb3NpdGlvbkF0dHJpYk9m
ZnNldCArIFBvc2l0aW9uQXR0cmliU2l6ZSAqIHNpemVvZihmbG9hdCksCi0gICAgTWVzaEF0dHJp
Yk9mZnNldCA9IFRleEF0dHJpYk9mZnNldCArIFRleEF0dHJpYlNpemUgKiBzaXplb2YoZmxvYXQp
LAotICAgIFRyaWFuZ2xlQXR0cmliT2Zmc2V0ID0gTWVzaEF0dHJpYk9mZnNldCArIE1lc2hBdHRy
aWJTaXplICogc2l6ZW9mKGZsb2F0KQotfTsKLQotZW51bSBDdXN0b21GaWx0ZXJNZXNoVHlwZSB7
Ci0gICAgTWVzaFR5cGVBdHRhY2hlZCwKLSAgICBNZXNoVHlwZURldGFjaGVkCi19OwotCi1lbnVt
IEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHsKLSAgICBQUk9HUkFNX1RZUEVfTk9fRUxFTUVOVF9U
RVhUVVJFLAotICAgIFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJFCi19OwotCi19
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJDb25zdGFudHNf
aApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHAKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDg3MTMyMzguLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcAor
KysgL2Rldi9udWxsCkBAIC0xLDkzICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIg
QWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYg
VVNFKDNEX0dSQVBISUNTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaCIK
LQotI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsK
LQotQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dDo6Q3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCgp
Ci17Ci19Ci0KLUN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQ6On5DdXN0b21GaWx0ZXJHbG9iYWxD
b250ZXh0KCkKLXsKLX0KLQotQU5HTEVXZWJLaXRCcmlkZ2UqIEN1c3RvbUZpbHRlckdsb2JhbENv
bnRleHQ6OndlYmdsU2hhZGVyVmFsaWRhdG9yKCkKLXsKLSAgICBpZiAoIW1fd2ViZ2xTaGFkZXJW
YWxpZGF0b3IpCi0gICAgICAgIG1fd2ViZ2xTaGFkZXJWYWxpZGF0b3IgPSBjcmVhdGVTaGFkZXJW
YWxpZGF0b3IoU0hfV0VCR0xfU1BFQyk7Ci0gICAgcmV0dXJuIG1fd2ViZ2xTaGFkZXJWYWxpZGF0
b3IuZ2V0KCk7Ci19Ci0KLUFOR0xFV2ViS2l0QnJpZGdlKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250
ZXh0OjptaXhTaGFkZXJWYWxpZGF0b3IoKQotewotICAgIGlmICghbV9taXhTaGFkZXJWYWxpZGF0
b3IpCi0gICAgICAgIG1fbWl4U2hhZGVyVmFsaWRhdG9yID0gY3JlYXRlU2hhZGVyVmFsaWRhdG9y
KFNIX0NTU19TSEFERVJTX1NQRUMpOwotICAgIHJldHVybiBtX21peFNoYWRlclZhbGlkYXRvci5n
ZXQoKTsKLX0KLQotUGFzc093blB0cjxBTkdMRVdlYktpdEJyaWRnZT4gQ3VzdG9tRmlsdGVyR2xv
YmFsQ29udGV4dDo6Y3JlYXRlU2hhZGVyVmFsaWRhdG9yKFNoU2hhZGVyU3BlYyBzaGFkZXJTcGVj
KQotewotICAgIE93blB0cjxBTkdMRVdlYktpdEJyaWRnZT4gdmFsaWRhdG9yID0gYWRvcHRQdHIo
bmV3IEFOR0xFV2ViS2l0QnJpZGdlKFNIX0VTU0xfT1VUUFVULCBzaGFkZXJTcGVjKSk7Ci0gICAg
U2hCdWlsdEluUmVzb3VyY2VzIHJlc291cmNlczsKLSAgICBTaEluaXRCdWlsdEluUmVzb3VyY2Vz
KCZyZXNvdXJjZXMpOwotICAgIHZhbGlkYXRvci0+c2V0UmVzb3VyY2VzKHJlc291cmNlcyk7Ci0g
ICAgcmV0dXJuIHZhbGlkYXRvci5yZWxlYXNlKCk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyR2xv
YmFsQ29udGV4dDo6cHJlcGFyZUNvbnRleHRJZk5lZWRlZChIb3N0V2luZG93KiBob3N0V2luZG93
LCBib29sIGZvcmNlU29mdHdhcmVSZW5kZXJpbmcpCi17Ci0gICAgaWYgKG1fY29udGV4dC5nZXQo
KSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgR3JhcGhpY3NDb250ZXh0M0Q6OkF0dHJpYnV0ZXMg
YXR0cmlidXRlczsKLSAgICBhdHRyaWJ1dGVzLnByZXNlcnZlRHJhd2luZ0J1ZmZlciA9IHRydWU7
Ci0gICAgYXR0cmlidXRlcy5wcmVtdWx0aXBsaWVkQWxwaGEgPSBmYWxzZTsKLSAgICBhdHRyaWJ1
dGVzLnNoYXJlUmVzb3VyY2VzID0gdHJ1ZTsKLSAgICBhdHRyaWJ1dGVzLnByZWZlckRpc2NyZXRl
R1BVID0gdHJ1ZTsKLQotICAgIGlmIChmb3JjZVNvZnR3YXJlUmVuZGVyaW5nKQotICAgICAgICBh
dHRyaWJ1dGVzLmZvcmNlU29mdHdhcmVSZW5kZXJlciA9IHRydWU7Ci0KLSAgICBtX2NvbnRleHQg
PSBHcmFwaGljc0NvbnRleHQzRDo6Y3JlYXRlKGF0dHJpYnV0ZXMsIGhvc3RXaW5kb3csIEdyYXBo
aWNzQ29udGV4dDNEOjpSZW5kZXJPZmZzY3JlZW4pOwotICAgIGlmICghbV9jb250ZXh0KQotICAg
ICAgICByZXR1cm47Ci0gICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJlbnQoKTsKLSAgICBt
X2NvbnRleHQtPmVuYWJsZShHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfVEVTVCk7Ci19Ci0KLX0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYg
VVNFKDNEX0dSQVBISUNTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMWU4ZjZiZC4uMDAwMDAwMAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckdsb2JhbENv
bnRleHQuaAorKysgL2Rldi9udWxsCkBAIC0xLDc3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICog
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1l
ciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0gg
REFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dF9oCi0jZGVm
aW5lIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHRfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAiQU5HTEVXZWJLaXRCcmlkZ2UuaCIKLSNp
bmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KLQotbmFtZXNw
YWNlIFdlYkNvcmUgewotCi1jbGFzcyBIb3N0V2luZG93OwotY2xhc3MgR3JhcGhpY3NDb250ZXh0
M0Q7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQgewotcHVibGljOgotICAgIEN1
c3RvbUZpbHRlckdsb2JhbENvbnRleHQoKTsKLSAgICB+Q3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dCgpOwotICAgIAotICAgIEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0KCkgY29uc3QgeyByZXR1
cm4gbV9jb250ZXh0LmdldCgpOyB9Ci0KLSAgICAvLyBDU1Mgc2hhZGVycyBub3QgcmVmZXJlbmNl
ZCBmcm9tIHRoZSBDU1MgbWl4IGZ1bmN0aW9uIHNob3VsZCBiZSB2YWxpZGF0ZWQganVzdCBsaWtl
IHJlZ3VsYXIgV2ViR0wgc2hhZGVycy4KLSAgICAvLyBUaGlzIEFOR0xFIHZhbGlkYXRvciB1c2Vz
IHRoZSBTSF9XRUJHTF9TUEVDIGZsYWcuCi0gICAgQU5HTEVXZWJLaXRCcmlkZ2UqIHdlYmdsU2hh
ZGVyVmFsaWRhdG9yKCk7Ci0KLSAgICAvLyBDU1Mgc2hhZGVycyByZWZlcmVuY2VkIGZyb20gdGhl
IENTUyBtaXggZnVuY3Rpb24gc2hvdWxkIGJlIHZhbGlkYXRlZCBzbGlnaHRseSBkaWZmZXJlbnRs
eSB0aGFuIFdlYkdMIHNoYWRlcnMuCi0gICAgLy8gVGhpcyBBTkdMRSB2YWxpZGF0b3IgdXNlcyB0
aGUgU0hfQ1NTX1NIQURFUlNfU1BFQyBmbGFnLgotICAgIC8vIFVuZGVyIHRoaXMgZmxhZywgbW9z
dCBub3RhYmx5OgotICAgIC8vIC0gVGhlICJnbF9GcmFnQ29sb3IiIGJ1aWx0LWluIGlzIG5vdCBh
dmFpbGFibGUuCi0gICAgLy8gLSBJbnN0ZWFkLCB0aGUgImNzc19NaXhDb2xvciIgYW5kICJjc3Nf
Q29sb3JNYXRyaXgiIGJ1aWx0LWlucyBhcmUgYXZhaWxhYmxlLgotICAgIC8vIC0gVGhlICJjc3Nf
IiBwcmVmaXggaXMgcmVzZXJ2ZWQuCi0gICAgLy8gLSBJbiB0aGUgdHJhbnNsYXRlZCBzb3VyY2Ug
dGhhdCBBTkdMRSByZXR1cm5zLCBBTkdMRSByZW5hbWVzIHRoZSBhdXRob3IncyAibWFpbiIgZnVu
Y3Rpb24gdG8gImNzc19tYWluIi4KLSAgICAvLyBUaGUgY29tcGxldGUgZGV0YWlscyBhcmUgZG9j
dW1lbnRlZCBpbiBBTkdMRS9TaGFkZXJMYW5nLmguCi0gICAgQU5HTEVXZWJLaXRCcmlkZ2UqIG1p
eFNoYWRlclZhbGlkYXRvcigpOwotICAgIAotICAgIHZvaWQgcHJlcGFyZUNvbnRleHRJZk5lZWRl
ZChIb3N0V2luZG93KiwgYm9vbCBmb3JjZVNvZnR3YXJlUmVuZGVyaW5nKTsKLXByaXZhdGU6Ci0g
ICAgc3RhdGljIFBhc3NPd25QdHI8QU5HTEVXZWJLaXRCcmlkZ2U+IGNyZWF0ZVNoYWRlclZhbGlk
YXRvcihTaFNoYWRlclNwZWMpOwotCi0gICAgUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBtX2Nv
bnRleHQ7Ci0gICAgT3duUHRyPEFOR0xFV2ViS2l0QnJpZGdlPiBtX3dlYmdsU2hhZGVyVmFsaWRh
dG9yOwotICAgIE93blB0cjxBTkdMRVdlYktpdEJyaWRnZT4gbV9taXhTaGFkZXJWYWxpZGF0b3I7
Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2VuZGlmIC8vIEN1c3RvbUZpbHRlckdsb2Jh
bENvbnRleHRfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGVmZjA3ODguLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoLmNwcAorKysgL2Rldi9udWxsCkBAIC0x
LDcyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNv
cnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERF
UiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICog
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJj
b25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQot
I2luY2x1ZGUgIkN1c3RvbUZpbHRlck1lc2guaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJNZXNo
R2VuZXJhdG9yLmgiCi0jaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0M0QuaCIKLQotbmFtZXNwYWNl
IFdlYkNvcmUgewotCi1DdXN0b21GaWx0ZXJNZXNoOjpDdXN0b21GaWx0ZXJNZXNoKEdyYXBoaWNz
Q29udGV4dDNEKiBjb250ZXh0LCB1bnNpZ25lZCBjb2x1bW5zLCB1bnNpZ25lZCByb3dzLAotICAg
IGNvbnN0IEZsb2F0UmVjdCYgbWVzaEJveCwgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUp
Ci0gICAgOiBtX2NvbnRleHQoY29udGV4dCkKLSAgICAsIG1fdmVydGljZXNCdWZmZXJPYmplY3Qo
MCkKLSAgICAsIG1fZWxlbWVudHNCdWZmZXJPYmplY3QoMCkKLSAgICAsIG1fbWVzaEJveChtZXNo
Qm94KQotICAgICwgbV9tZXNoVHlwZShtZXNoVHlwZSkKLXsKLSAgICBDdXN0b21GaWx0ZXJNZXNo
R2VuZXJhdG9yIGdlbmVyYXRvcihjb2x1bW5zLCByb3dzLCBtZXNoQm94LCBtZXNoVHlwZSk7Ci0g
ICAgbV9pbmRpY2VzQ291bnQgPSBnZW5lcmF0b3IuaW5kaWNlc0NvdW50KCk7Ci0gICAgbV9ieXRl
c1BlclZlcnRleCA9IGdlbmVyYXRvci5mbG9hdHNQZXJWZXJ0ZXgoKSAqIHNpemVvZihmbG9hdCk7
ICAgIAotCi0gICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJlbnQoKTsKLQotICAgIG1fdmVy
dGljZXNCdWZmZXJPYmplY3QgPSBtX2NvbnRleHQtPmNyZWF0ZUJ1ZmZlcigpOwotICAgIG1fY29u
dGV4dC0+YmluZEJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6QVJSQVlfQlVGRkVSLCBtX3ZlcnRp
Y2VzQnVmZmVyT2JqZWN0KTsKLSAgICBtX2NvbnRleHQtPmJ1ZmZlckRhdGEoR3JhcGhpY3NDb250
ZXh0M0Q6OkFSUkFZX0JVRkZFUiwgZ2VuZXJhdG9yLnZlcnRpY2VzKCkuc2l6ZSgpICogc2l6ZW9m
KGZsb2F0KSwgZ2VuZXJhdG9yLnZlcnRpY2VzKCkuZGF0YSgpLCBHcmFwaGljc0NvbnRleHQzRDo6
U1RBVElDX0RSQVcpOwotICAgIAotICAgIG1fZWxlbWVudHNCdWZmZXJPYmplY3QgPSBtX2NvbnRl
eHQtPmNyZWF0ZUJ1ZmZlcigpOwotICAgIG1fY29udGV4dC0+YmluZEJ1ZmZlcihHcmFwaGljc0Nv
bnRleHQzRDo6RUxFTUVOVF9BUlJBWV9CVUZGRVIsIG1fZWxlbWVudHNCdWZmZXJPYmplY3QpOwot
ICAgIG1fY29udGV4dC0+YnVmZmVyRGF0YShHcmFwaGljc0NvbnRleHQzRDo6RUxFTUVOVF9BUlJB
WV9CVUZGRVIsIGdlbmVyYXRvci5pbmRpY2VzKCkuc2l6ZSgpICogc2l6ZW9mKHVpbnQxNl90KSwg
Z2VuZXJhdG9yLmluZGljZXMoKS5kYXRhKCksIEdyYXBoaWNzQ29udGV4dDNEOjpTVEFUSUNfRFJB
Vyk7Ci19Ci0KLUN1c3RvbUZpbHRlck1lc2g6On5DdXN0b21GaWx0ZXJNZXNoKCkKLXsKLSAgICBt
X2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotICAgIG1fY29udGV4dC0+ZGVsZXRlQnVm
ZmVyKG1fdmVydGljZXNCdWZmZXJPYmplY3QpOwotICAgIG1fY29udGV4dC0+ZGVsZXRlQnVmZmVy
KG1fZWxlbWVudHNCdWZmZXJPYmplY3QpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21G
aWx0ZXJNZXNoLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlck1lc2guaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmJiM2Q1YS4u
MDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlck1lc2guaAorKysgL2Rldi9udWxsCkBAIC0xLDgwICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0g
KiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5Z
Ci0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICog
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
LSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YK
LSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyTWVzaF9oCi0jZGVm
aW5lIEN1c3RvbUZpbHRlck1lc2hfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0Uo
M0RfR1JBUEhJQ1MpCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNs
dWRlICJGbG9hdFJlY3QuaCIKLSNpbmNsdWRlICJHcmFwaGljc1R5cGVzM0QuaCIKLSNpbmNsdWRl
IDx3dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEdyYXBo
aWNzQ29udGV4dDNEOwotCi1jbGFzcyBDdXN0b21GaWx0ZXJNZXNoIDogcHVibGljIFJlZkNvdW50
ZWQ8Q3VzdG9tRmlsdGVyTWVzaD4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEN1
c3RvbUZpbHRlck1lc2g+IGNyZWF0ZShHcmFwaGljc0NvbnRleHQzRCogY29udGV4dCwgdW5zaWdu
ZWQgY29scywgdW5zaWduZWQgcm93cywgY29uc3QgRmxvYXRSZWN0JiBtZXNoQm94LCBDdXN0b21G
aWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihu
ZXcgQ3VzdG9tRmlsdGVyTWVzaChjb250ZXh0LCBjb2xzLCByb3dzLCBtZXNoQm94LCBtZXNoVHlw
ZSkpOwotICAgIH0KLSAgICB+Q3VzdG9tRmlsdGVyTWVzaCgpOwotCi0gICAgUGxhdGZvcm0zRE9i
amVjdCB2ZXJ0aWNlc0J1ZmZlck9iamVjdCgpIGNvbnN0IHsgcmV0dXJuIG1fdmVydGljZXNCdWZm
ZXJPYmplY3Q7IH0KLSAgICB1bnNpZ25lZCBieXRlc1BlclZlcnRleCgpIGNvbnN0IHsgcmV0dXJu
IG1fYnl0ZXNQZXJWZXJ0ZXg7IH0KLSAgICAKLSAgICBQbGF0Zm9ybTNET2JqZWN0IGVsZW1lbnRz
QnVmZmVyT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV9lbGVtZW50c0J1ZmZlck9iamVjdDsgfQot
ICAgIHVuc2lnbmVkIGluZGljZXNDb3VudCgpIGNvbnN0IHsgcmV0dXJuIG1faW5kaWNlc0NvdW50
OyB9Ci0gICAgCi0gICAgY29uc3QgRmxvYXRSZWN0JiBtZXNoQm94KCkgY29uc3QgeyByZXR1cm4g
bV9tZXNoQm94OyB9Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUoKSBjb25zdCB7
IHJldHVybiBtX21lc2hUeXBlOyB9Ci0KLXByaXZhdGU6Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaChH
cmFwaGljc0NvbnRleHQzRCosIHVuc2lnbmVkIGNvbHMsIHVuc2lnbmVkIHJvd3MsIGNvbnN0IEZs
b2F0UmVjdCYgbWVzaEJveCwgQ3VzdG9tRmlsdGVyTWVzaFR5cGUpOwotICAgIAotICAgIEdyYXBo
aWNzQ29udGV4dDNEKiBtX2NvbnRleHQ7Ci0gICAgCi0gICAgUGxhdGZvcm0zRE9iamVjdCBtX3Zl
cnRpY2VzQnVmZmVyT2JqZWN0OwotICAgIHVuc2lnbmVkIG1fYnl0ZXNQZXJWZXJ0ZXg7Ci0gICAg
Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBtX2VsZW1lbnRzQnVmZmVyT2JqZWN0OwotICAgIHVuc2ln
bmVkIG1faW5kaWNlc0NvdW50OwotICAgIAotICAgIEZsb2F0UmVjdCBtX21lc2hCb3g7Ci0gICAg
Q3VzdG9tRmlsdGVyTWVzaFR5cGUgbV9tZXNoVHlwZTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNT
KQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyTWVzaF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3Iu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0
ZXJNZXNoR2VuZXJhdG9yLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzc0Njkx
NC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMTczICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0
ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxB
UyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQot
ICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcu
aCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotI2luY2x1
ZGUgIkN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewot
Ci0jaWZuZGVmIE5ERUJVRwotLy8gVXNlICJjYWxsICdXZWJDb3JlOjpzX2R1bXBDdXN0b21GaWx0
ZXJNZXNoQnVmZmVycycgPSAxIiBpbiBHREIgdG8gYWN0aXZhdGUgcHJpbnRpbmcgb2YgdGhlIG1l
c2ggYnVmZmVycy4KLXN0YXRpYyBib29sIHNfZHVtcEN1c3RvbUZpbHRlck1lc2hCdWZmZXJzID0g
ZmFsc2U7Ci0jZW5kaWYKLQotQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6Q3VzdG9tRmlsdGVy
TWVzaEdlbmVyYXRvcih1bnNpZ25lZCBjb2x1bW5zLCB1bnNpZ25lZCByb3dzLCBjb25zdCBGbG9h
dFJlY3QmIG1lc2hCb3gsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQotICAgIDogbV9t
ZXNoVHlwZShtZXNoVHlwZSkKLSAgICAsIG1fcG9pbnRzKGNvbHVtbnMgKyAxLCByb3dzICsgMSkK
LSAgICAsIG1fdGlsZXMoY29sdW1ucywgcm93cykKLSAgICAsIG1fdGlsZVNpemVJblBpeGVscyht
ZXNoQm94LndpZHRoKCkgLyBtX3RpbGVzLndpZHRoKCksIG1lc2hCb3guaGVpZ2h0KCkgLyBtX3Rp
bGVzLmhlaWdodCgpKQotICAgICwgbV90aWxlU2l6ZUluRGV2aWNlU3BhY2UoMS4wZiAvIG1fdGls
ZXMud2lkdGgoKSwgMS4wZiAvIG1fdGlsZXMuaGVpZ2h0KCkpCi0gICAgLCBtX21lc2hCb3gobWVz
aEJveCkKLXsKLSAgICAvLyBCdWlsZCB0aGUgdHdvIGJ1ZmZlcnMgbmVlZGVkIHRvIGRyYXcgdHJp
YW5nbGVzOgotICAgIC8vICogbV92ZXJ0aWNlcyBoYXMgYSBudW1iZXIgb2YgZmxvYXQgYXR0cmli
dXRlcyB0aGF0IHdpbGwgYmUgcGFzc2VkIHRvIHRoZSB2ZXJ0ZXggc2hhZGVyCi0gICAgLy8gZm9y
IGVhY2ggY29tcHV0ZWQgdmVydGV4LiBUaGlzIG51bWJlciBpcyBjYWxjdWxhdGVkIGluIGZsb2F0
c1BlclZlcnRleCgpIGJhc2VkIG9uIHRoZSBtZXNoVHlwZS4KLSAgICAvLyAqIG1faW5kaWNlcyBp
cyBhIGJ1ZmZlciB0aGF0IHdpbGwgaGF2ZSAzIGluZGljZXMgcGVyIHRyaWFuZ2xlLiBFYWNoIGlu
ZGV4IHdpbGwgcG9pbnQgaW5zaWRlCi0gICAgLy8gdGhlIG1fdmVydGljZXMgYnVmZmVyLgotICAg
IG1fdmVydGljZXMucmVzZXJ2ZUNhcGFjaXR5KHZlcnRpY2VzQ291bnQoKSAqIGZsb2F0c1BlclZl
cnRleCgpKTsKLSAgICBtX2luZGljZXMucmVzZXJ2ZUNhcGFjaXR5KGluZGljZXNDb3VudCgpKTsK
LQotICAgIC8vIEJhc2VkIG9uIHRoZSBtZXNoVHlwZSB0aGVyZSBjYW4gYmUgdHdvIHR5cGVzIG9m
IG1lc2hlcy4KLSAgICAvLyAqIGF0dGFjaGVkOiBlYWNoIHRyaWFuZ2xlIHVzZXMgdmVydGljZXMg
ZnJvbSB0aGUgbmVpZ2hib3IgdHJpYW5nbGVzLiBUaGlzIGlzIHVzZWZ1bCB0byBzYXZlIHNvbWUg
R1BVIG1lbW9yeQotICAgIC8vIHdoZW4gdGhlcmUncyBubyBuZWVkIHRvIGV4cGxvZGUgdGhlIHRp
bGVzLgotICAgIC8vICogZGV0YWNoZWQ6IGVhY2ggdHJpYW5nbGUgaGFzIGl0cyBvd24gdmVydGlj
ZXMuIFRoaXMgbWVhbnMgZWFjaCB0cmlhbmdsZSBjYW4gYmUgbW92ZWQgaW5kZXBlbmRlbnRseSBh
bmQgYSB2ZWMzCi0gICAgLy8gYXR0cmlidXRlIGlzIHBhc3NlZCwgc28gdGhhdCBlYWNoIHZlcnRl
eCBjYW4gYmUgdW5pcXVlbHkgaWRlbnRpZmllZC4KLSAgICBpZiAobV9tZXNoVHlwZSA9PSBNZXNo
VHlwZUF0dGFjaGVkKQotICAgICAgICBnZW5lcmF0ZUF0dGFjaGVkTWVzaCgpOwotICAgIGVsc2UK
LSAgICAgICAgZ2VuZXJhdGVEZXRhY2hlZE1lc2goKTsKLQotI2lmbmRlZiBOREVCVUcKLSAgICBp
ZiAoc19kdW1wQ3VzdG9tRmlsdGVyTWVzaEJ1ZmZlcnMpCi0gICAgICAgIGR1bXBCdWZmZXJzKCk7
Ci0jZW5kaWYKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjphZGRBdHRhY2hl
ZE1lc2hJbmRleChpbnQgcXVhZFgsIGludCBxdWFkWSwgaW50IHRyaWFuZ2xlWCwgaW50IHRyaWFu
Z2xlWSwgaW50IHRyaWFuZ2xlKQotewotICAgIFVOVVNFRF9QQVJBTSh0cmlhbmdsZSk7Ci0gICAg
bV9pbmRpY2VzLmFwcGVuZCgocXVhZFkgKyB0cmlhbmdsZVkpICogbV9wb2ludHMud2lkdGgoKSAr
IChxdWFkWCArIHRyaWFuZ2xlWCkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0
b3I6OmdlbmVyYXRlQXR0YWNoZWRNZXNoKCkKLXsKLSAgICBmb3IgKGludCBqID0gMDsgaiA8IG1f
cG9pbnRzLmhlaWdodCgpOyArK2opIHsKLSAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBtX3Bv
aW50cy53aWR0aCgpOyArK2kpCi0gICAgICAgICAgICBhZGRBdHRhY2hlZE1lc2hWZXJ0ZXhBdHRy
aWJ1dGVzKGksIGopOwotICAgIH0KLQotICAgIGZvciAoaW50IGogPSAwOyBqIDwgbV90aWxlcy5o
ZWlnaHQoKTsgKytqKSB7Ci0gICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbV90aWxlcy53aWR0
aCgpOyArK2kpCi0gICAgICAgICAgICBhZGRUaWxlPCZDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9y
OjphZGRBdHRhY2hlZE1lc2hJbmRleD4oaSwgaik7Ci0gICAgfQotfQotCi12b2lkIEN1c3RvbUZp
bHRlck1lc2hHZW5lcmF0b3I6OmFkZERldGFjaGVkTWVzaFZlcnRleEFuZEluZGV4KGludCBxdWFk
WCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZLCBpbnQgdHJpYW5nbGUp
Ci17Ci0gICAgYWRkRGV0YWNoZWRNZXNoVmVydGV4QXR0cmlidXRlcyhxdWFkWCwgcXVhZFksIHRy
aWFuZ2xlWCwgdHJpYW5nbGVZLCB0cmlhbmdsZSk7Ci0gICAgbV9pbmRpY2VzLmFwcGVuZChtX2lu
ZGljZXMuc2l6ZSgpKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjpnZW5l
cmF0ZURldGFjaGVkTWVzaCgpCi17Ci0gICAgZm9yIChpbnQgaiA9IDA7IGogPCBtX3RpbGVzLmhl
aWdodCgpOyArK2opIHsKLSAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBtX3RpbGVzLndpZHRo
KCk7ICsraSkKLSAgICAgICAgICAgIGFkZFRpbGU8JkN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6
OmFkZERldGFjaGVkTWVzaFZlcnRleEFuZEluZGV4PihpLCBqKTsKLSAgICB9Ci19Ci0KLXZvaWQg
Q3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRkUG9zaXRpb25BdHRyaWJ1dGUoaW50IHF1YWRY
LCBpbnQgcXVhZFkpCi17Ci0gICAgLy8gdmVjNCBhX3Bvc2l0aW9uCi0gICAgbV92ZXJ0aWNlcy5h
cHBlbmQobV90aWxlU2l6ZUluUGl4ZWxzLndpZHRoKCkgKiBxdWFkWCAtIDAuNWYgKyBtX21lc2hC
b3gueCgpKTsKLSAgICBtX3ZlcnRpY2VzLmFwcGVuZChtX3RpbGVTaXplSW5QaXhlbHMuaGVpZ2h0
KCkgKiBxdWFkWSAtIDAuNWYgKyBtX21lc2hCb3gueSgpKTsKLSAgICBtX3ZlcnRpY2VzLmFwcGVu
ZCgwLjBmKTsgLy8gegotICAgIG1fdmVydGljZXMuYXBwZW5kKDEuMGYpOwotfQotCi12b2lkIEN1
c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6OmFkZFRleENvb3JkQXR0cmlidXRlKGludCBxdWFkWCwg
aW50IHF1YWRZKQotewotICAgIC8vIHZlYzIgYV90ZXhDb29yZAotICAgIG1fdmVydGljZXMuYXBw
ZW5kKG1fdGlsZVNpemVJblBpeGVscy53aWR0aCgpICogcXVhZFggKyBtX21lc2hCb3gueCgpKTsK
LSAgICBtX3ZlcnRpY2VzLmFwcGVuZChtX3RpbGVTaXplSW5QaXhlbHMuaGVpZ2h0KCkgKiBxdWFk
WSArIG1fbWVzaEJveC55KCkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6
OmFkZE1lc2hDb29yZEF0dHJpYnV0ZShpbnQgcXVhZFgsIGludCBxdWFkWSkKLXsKLSAgICAvLyB2
ZWMyIGFfbWVzaENvb3JkCi0gICAgbV92ZXJ0aWNlcy5hcHBlbmQobV90aWxlU2l6ZUluRGV2aWNl
U3BhY2Uud2lkdGgoKSAqIHF1YWRYKTsKLSAgICBtX3ZlcnRpY2VzLmFwcGVuZChtX3RpbGVTaXpl
SW5EZXZpY2VTcGFjZS5oZWlnaHQoKSAqIHF1YWRZKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJN
ZXNoR2VuZXJhdG9yOjphZGRUcmlhbmdsZUNvb3JkQXR0cmlidXRlKGludCBxdWFkWCwgaW50IHF1
YWRZLCBpbnQgdHJpYW5nbGUpCi17Ci0gICAgLy8gdmVjMyBhX3RyaWFuZ2xlQ29vcmQKLSAgICBt
X3ZlcnRpY2VzLmFwcGVuZChxdWFkWCk7Ci0gICAgbV92ZXJ0aWNlcy5hcHBlbmQocXVhZFkpOwot
ICAgIG1fdmVydGljZXMuYXBwZW5kKHRyaWFuZ2xlKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJN
ZXNoR2VuZXJhdG9yOjphZGRBdHRhY2hlZE1lc2hWZXJ0ZXhBdHRyaWJ1dGVzKGludCBxdWFkWCwg
aW50IHF1YWRZKQotewotICAgIGFkZFBvc2l0aW9uQXR0cmlidXRlKHF1YWRYLCBxdWFkWSk7Ci0g
ICAgYWRkVGV4Q29vcmRBdHRyaWJ1dGUocXVhZFgsIHF1YWRZKTsKLSAgICBhZGRNZXNoQ29vcmRB
dHRyaWJ1dGUocXVhZFgsIHF1YWRZKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJNZXNoR2VuZXJh
dG9yOjphZGREZXRhY2hlZE1lc2hWZXJ0ZXhBdHRyaWJ1dGVzKGludCBxdWFkWCwgaW50IHF1YWRZ
LCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZLCBpbnQgdHJpYW5nbGUpCi17Ci0gICAgYWRk
QXR0YWNoZWRNZXNoVmVydGV4QXR0cmlidXRlcyhxdWFkWCArIHRyaWFuZ2xlWCwgcXVhZFkgKyB0
cmlhbmdsZVkpOwotICAgIGFkZFRyaWFuZ2xlQ29vcmRBdHRyaWJ1dGUocXVhZFgsIHF1YWRZLCB0
cmlhbmdsZSk7Ci19Ci0KLSNpZm5kZWYgTkRFQlVHCi12b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5l
cmF0b3I6OmR1bXBCdWZmZXJzKCkgY29uc3QKLXsKLSAgICBwcmludGYoIk1lc2ggYnVmZmVyczog
UG9pbnRzLndpZHRoKCk6ICVkLCBQb2ludHMuaGVpZ2h0KCk6ICVkIG1lc2hCb3g6ICVmLCAlZiwg
JWYsICVmLCB0eXBlOiAlc1xuIiwKLSAgICAgICAgbV9wb2ludHMud2lkdGgoKSwgbV9wb2ludHMu
aGVpZ2h0KCksIG1fbWVzaEJveC54KCksIG1fbWVzaEJveC55KCksIG1fbWVzaEJveC53aWR0aCgp
LCBtX21lc2hCb3guaGVpZ2h0KCksCi0gICAgICAgIChtX21lc2hUeXBlID09IE1lc2hUeXBlQXR0
YWNoZWQpID8gIkF0dGFjaGVkIiA6ICJEZXRhY2hlZCIpOwotICAgIHByaW50ZigiLS0tVmVydGV4
OlxuXHQiKTsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbV92ZXJ0aWNlcy5zaXplKCk7
ICsraSkgewotICAgICAgICBwcmludGYoIiVmICIsIG1fdmVydGljZXMuYXQoaSkpOwotICAgICAg
ICBpZiAoISgoaSArIDEpICUgZmxvYXRzUGVyVmVydGV4KCkpKQotICAgICAgICAgICAgcHJpbnRm
KCJcblx0Iik7Ci0gICAgfQotICAgIHByaW50ZigiXG4tLS1JbmRpY2VzOiAiKTsKLSAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpIDwgbV9pbmRpY2VzLnNpemUoKTsgKytpKQotICAgICAgICBwcmlu
dGYoIiVkICIsIG1faW5kaWNlcy5hdChpKSk7Ci0gICAgcHJpbnRmKCJcbiIpOwotfQotI2VuZGlm
Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVS
UykgJiYgVVNFKDNEX0dSQVBISUNTKQotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVy
YXRvci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3ZjlhZjY0Li4wMDAwMDAwCi0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVy
TWVzaEdlbmVyYXRvci5oCisrKyAvZGV2L251bGwKQEAgLTEsMTI2ICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0g
KiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5Z
Ci0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICog
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
LSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YK
LSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRv
cl9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3JfaAotCi0jaWYgRU5BQkxFKENT
U19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJD
b25zdGFudHMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNsdWRl
ICJGbG9hdFJlY3QuaCIKLSNpbmNsdWRlIDxzdGRpby5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLWNsYXNzIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IgewotcHVibGljOgotICAgIC8vIExp
bmVzIGFuZCBjb2x1bW5zIGFyZSB0aGUgdmFsdWVzIHBhc3NlZCBpbiBDU1MuIFRoZSByZXN1bHQg
aXMgdmVydGV4IG1lc2ggdGhhdCBoYXMgJ3Jvd3MnIG51bWJlcnMgb2Ygcm93cwotICAgIC8vIGFu
ZCAnY29sdW1ucycgbnVtYmVyIG9mIGNvbHVtbnMgd2l0aCBhIHRvdGFsIG9mICdyb3dzICsgMScg
KiAnY29sdW1ucyArIDEnIHZlcnRpY2VzLgotICAgIC8vIE1lc2hCb3ggaXMgdGhlIGZpbHRlcmVk
IGFyZWEgY2FsY3VsYXRlZCBkZWZpbmVkIHVzaW5nIHRoZSBib3JkZXItYm94LCBwYWRkaW5nLWJv
eCwgY29udGVudC1ib3ggb3IgZmlsdGVyLWJveAotICAgIC8vIGF0dHJpYnV0ZXMuIEEgdmFsdWUg
b2YgKDAsIDAsIDEsIDEpIHdpbGwgY292ZXIgdGhlIGVudGlyZSBvdXRwdXQgc3VyZmFjZS4KLSAg
ICBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yKHVuc2lnbmVkIGNvbHVtbnMsIHVuc2lnbmVkIHJv
d3MsIGNvbnN0IEZsb2F0UmVjdCYgbWVzaEJveCwgQ3VzdG9tRmlsdGVyTWVzaFR5cGUpOwotCi0g
ICAgY29uc3QgVmVjdG9yPGZsb2F0PiYgdmVydGljZXMoKSBjb25zdCB7IHJldHVybiBtX3ZlcnRp
Y2VzOyB9Ci0gICAgY29uc3QgVmVjdG9yPHVpbnQxNl90PiYgaW5kaWNlcygpIGNvbnN0IHsgcmV0
dXJuIG1faW5kaWNlczsgfQotCi0gICAgY29uc3QgSW50U2l6ZSYgcG9pbnRzKCkgY29uc3QgeyBy
ZXR1cm4gbV9wb2ludHM7IH0KLSAgICB1bnNpZ25lZCBwb2ludHNDb3VudCgpIGNvbnN0IHsgcmV0
dXJuIG1fcG9pbnRzLndpZHRoKCkgKiBtX3BvaW50cy5oZWlnaHQoKTsgfQotCi0gICAgY29uc3Qg
SW50U2l6ZSYgdGlsZXMoKSBjb25zdCB7IHJldHVybiBtX3RpbGVzOyB9Ci0gICAgdW5zaWduZWQg
dGlsZXNDb3VudCgpIGNvbnN0IHsgcmV0dXJuIG1fdGlsZXMud2lkdGgoKSAqIG1fdGlsZXMuaGVp
Z2h0KCk7IH0KLQotICAgIHVuc2lnbmVkIGluZGljZXNDb3VudCgpIGNvbnN0Ci0gICAgewotICAg
ICAgICBjb25zdCB1bnNpZ25lZCB0cmlhbmdsZXNQZXJUaWxlID0gMjsKLSAgICAgICAgY29uc3Qg
dW5zaWduZWQgaW5kaWNlc1BlclRyaWFuZ2xlID0gMzsKLSAgICAgICAgcmV0dXJuIHRpbGVzQ291
bnQoKSAqIHRyaWFuZ2xlc1BlclRpbGUgKiBpbmRpY2VzUGVyVHJpYW5nbGU7Ci0gICAgfQotCi0g
ICAgdW5zaWduZWQgZmxvYXRzUGVyVmVydGV4KCkgY29uc3QKLSAgICB7Ci0gICAgICAgIHN0YXRp
YyBjb25zdCB1bnNpZ25lZCBBdHRhY2hlZE1lc2hWZXJ0ZXhTaXplID0gUG9zaXRpb25BdHRyaWJT
aXplICsgVGV4QXR0cmliU2l6ZSArIE1lc2hBdHRyaWJTaXplOwotICAgICAgICBzdGF0aWMgY29u
c3QgdW5zaWduZWQgRGV0YWNoZWRNZXNoVmVydGV4U2l6ZSA9IEF0dGFjaGVkTWVzaFZlcnRleFNp
emUgKyBUcmlhbmdsZUF0dHJpYlNpemU7Ci0gICAgICAgIHJldHVybiBtX21lc2hUeXBlID09IE1l
c2hUeXBlQXR0YWNoZWQgPyBBdHRhY2hlZE1lc2hWZXJ0ZXhTaXplIDogRGV0YWNoZWRNZXNoVmVy
dGV4U2l6ZTsKLSAgICB9Ci0KLSAgICB1bnNpZ25lZCB2ZXJ0aWNlc0NvdW50KCkgY29uc3QKLSAg
ICB7Ci0gICAgICAgIHJldHVybiBtX21lc2hUeXBlID09IE1lc2hUeXBlQXR0YWNoZWQgPyBwb2lu
dHNDb3VudCgpIDogaW5kaWNlc0NvdW50KCk7Ci0gICAgfQotCi1wcml2YXRlOgotICAgIHR5cGVk
ZWYgdm9pZCAoQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6KkFkZFRyaWFuZ2xlVmVydGV4RnVu
Y3Rpb24pKGludCBxdWFkWCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZ
LCBpbnQgdHJpYW5nbGUpOwotCi0gICAgdGVtcGxhdGUgPEFkZFRyaWFuZ2xlVmVydGV4RnVuY3Rp
b24gYWRkVHJpYW5nbGVWZXJ0ZXg+Ci0gICAgdm9pZCBhZGRUaWxlKGludCBxdWFkWCwgaW50IHF1
YWRZKQotICAgIHsKLSAgICAgICAgKCgqdGhpcykuKihhZGRUcmlhbmdsZVZlcnRleCkpKHF1YWRY
LCBxdWFkWSwgMCwgMCwgMSk7Ci0gICAgICAgICgoKnRoaXMpLiooYWRkVHJpYW5nbGVWZXJ0ZXgp
KShxdWFkWCwgcXVhZFksIDEsIDAsIDIpOwotICAgICAgICAoKCp0aGlzKS4qKGFkZFRyaWFuZ2xl
VmVydGV4KSkocXVhZFgsIHF1YWRZLCAxLCAxLCAzKTsKLSAgICAgICAgKCgqdGhpcykuKihhZGRU
cmlhbmdsZVZlcnRleCkpKHF1YWRYLCBxdWFkWSwgMCwgMCwgNCk7Ci0gICAgICAgICgoKnRoaXMp
LiooYWRkVHJpYW5nbGVWZXJ0ZXgpKShxdWFkWCwgcXVhZFksIDEsIDEsIDUpOwotICAgICAgICAo
KCp0aGlzKS4qKGFkZFRyaWFuZ2xlVmVydGV4KSkocXVhZFgsIHF1YWRZLCAwLCAxLCA2KTsKLSAg
ICB9Ci0KLSAgICB2b2lkIGFkZEF0dGFjaGVkTWVzaEluZGV4KGludCBxdWFkWCwgaW50IHF1YWRZ
LCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZLCBpbnQgdHJpYW5nbGUpOwotCi0gICAgdm9p
ZCBnZW5lcmF0ZUF0dGFjaGVkTWVzaCgpOwotCi0gICAgdm9pZCBhZGREZXRhY2hlZE1lc2hWZXJ0
ZXhBbmRJbmRleChpbnQgcXVhZFgsIGludCBxdWFkWSwgaW50IHRyaWFuZ2xlWCwgaW50IHRyaWFu
Z2xlWSwgaW50IHRyaWFuZ2xlKTsKLQotICAgIHZvaWQgZ2VuZXJhdGVEZXRhY2hlZE1lc2goKTsK
LSAgICB2b2lkIGFkZFBvc2l0aW9uQXR0cmlidXRlKGludCBxdWFkWCwgaW50IHF1YWRZKTsKLSAg
ICB2b2lkIGFkZFRleENvb3JkQXR0cmlidXRlKGludCBxdWFkWCwgaW50IHF1YWRZKTsKLSAgICB2
b2lkIGFkZE1lc2hDb29yZEF0dHJpYnV0ZShpbnQgcXVhZFgsIGludCBxdWFkWSk7Ci0gICAgdm9p
ZCBhZGRUcmlhbmdsZUNvb3JkQXR0cmlidXRlKGludCBxdWFkWCwgaW50IHF1YWRZLCBpbnQgdHJp
YW5nbGUpOwotICAgIHZvaWQgYWRkQXR0YWNoZWRNZXNoVmVydGV4QXR0cmlidXRlcyhpbnQgcXVh
ZFgsIGludCBxdWFkWSk7Ci0gICAgdm9pZCBhZGREZXRhY2hlZE1lc2hWZXJ0ZXhBdHRyaWJ1dGVz
KGludCBxdWFkWCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZLCBpbnQg
dHJpYW5nbGUpOwotCi0jaWZuZGVmIE5ERUJVRwotICAgIHZvaWQgZHVtcEJ1ZmZlcnMoKSBjb25z
dDsKLSNlbmRpZgotCi1wcml2YXRlOgotICAgIFZlY3RvcjxmbG9hdD4gbV92ZXJ0aWNlczsKLSAg
ICBWZWN0b3I8dWludDE2X3Q+IG1faW5kaWNlczsKLQotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBl
IG1fbWVzaFR5cGU7Ci0gICAgSW50U2l6ZSBtX3BvaW50czsKLSAgICBJbnRTaXplIG1fdGlsZXM7
Ci0gICAgRmxvYXRTaXplIG1fdGlsZVNpemVJblBpeGVsczsKLSAgICBGbG9hdFNpemUgbV90aWxl
U2l6ZUluRGV2aWNlU3BhY2U7Ci0gICAgRmxvYXRSZWN0IG1fbWVzaEJveDsKLX07Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNF
KDNEX0dSQVBISUNTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcl9oCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3Rv
bUZpbHRlck51bWJlclBhcmFtZXRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9DdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDkzNzg1OC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oCisrKyAv
ZGV2L251bGwKQEAgLTEsODYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9i
ZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2lmbmRlZiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXJfaAotI2RlZmluZSBDdXN0b21G
aWx0ZXJOdW1iZXJQYXJhbWV0ZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1
ZGUgIkFuaW1hdGlvblV0aWxpdGllcy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRl
ci5oIgotI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1j
bGFzcyBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIgOiBwdWJsaWMgQ3VzdG9tRmlsdGVyUGFy
YW1ldGVyIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJOdW1i
ZXJQYXJhbWV0ZXI+IGNyZWF0ZShjb25zdCBTdHJpbmcmIG5hbWUpCi0gICAgewotICAgICAgICBy
ZXR1cm4gYWRvcHRSZWYobmV3IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcihuYW1lKSk7Ci0g
ICAgfQotICAgIAotICAgIHVuc2lnbmVkIHNpemUoKSBjb25zdCB7IHJldHVybiBtX2RhdGEuc2l6
ZSgpOyB9Ci0gICAgZG91YmxlIHZhbHVlQXQodW5zaWduZWQgaW5kZXgpIGNvbnN0IHsgcmV0dXJu
IG1fZGF0YS5hdChpbmRleCk7IH0KLQotICAgIHZvaWQgYWRkVmFsdWUoZG91YmxlIHZhbHVlKSB7
IG1fZGF0YS5hcHBlbmQodmFsdWUpOyB9Ci0gICAgCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPEN1
c3RvbUZpbHRlclBhcmFtZXRlcj4gYmxlbmQoY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBm
cm9tLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmKQotICAgIHsKLSAgICAgICAg
aWYgKCFmcm9tIHx8ICFpc1NhbWVUeXBlKCpmcm9tKSkKLSAgICAgICAgICAgIHJldHVybiB0aGlz
OwotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIqIGZyb21OdW1iZXIg
PSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIqPihmcm9tKTsK
LSAgICAgICAgaWYgKHNpemUoKSAhPSBmcm9tTnVtYmVyLT5zaXplKCkpCi0gICAgICAgICAgICBy
ZXR1cm4gdGhpczsKLSAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcj4g
cmVzdWx0ID0gQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyOjpjcmVhdGUobmFtZSgpKTsKLSAg
ICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplKCk7ICsraSkKLSAgICAgICAgICAgIHJl
c3VsdC0+YWRkVmFsdWUoV2ViQ29yZTo6YmxlbmQoZnJvbU51bWJlci0+dmFsdWVBdChpKSwgdmFs
dWVBdChpKSwgcHJvZ3Jlc3MpKTsKLSAgICAgICAgcmV0dXJuIHJlc3VsdC5yZWxlYXNlKCk7Ci0g
ICAgfQotICAgIAotICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEN1c3RvbUZpbHRl
clBhcmFtZXRlciYgbykgY29uc3QKLSAgICB7Ci0gICAgICAgIGlmICghaXNTYW1lVHlwZShvKSkK
LSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyTnVt
YmVyUGFyYW1ldGVyKiBvdGhlciA9IHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlck51bWJl
clBhcmFtZXRlcio+KCZvKTsKLSAgICAgICAgcmV0dXJuIG1fZGF0YSA9PSBvdGhlci0+bV9kYXRh
OwotICAgIH0KLSAgICAKLXByaXZhdGU6Ci0gICAgQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVy
KGNvbnN0IFN0cmluZyYgbmFtZSkKLSAgICAgICAgOiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIoTlVN
QkVSLCBuYW1lKQotICAgIHsKLSAgICB9Ci0gICAgCi0gICAgVmVjdG9yPGRvdWJsZSwgND4gbV9k
YXRhOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENT
U19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyX2gKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggNTA5YTc2Yy4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAKKysrIC9kZXYvbnVsbApAQCAt
MSw3NyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5j
b3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xE
RVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAq
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAi
Y29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmgiCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCIKLSNp
bmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtLmgiCi0jaW5jbHVkZSAiRmlsdGVyT3BlcmF0aW9u
LmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOjpDdXN0
b21GaWx0ZXJPcGVyYXRpb24oUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiBwcm9ncmFt
LCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBzb3J0ZWRQYXJhbWV0ZXJzLCB1bnNp
Z25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMpCi0gICAgOiBGaWx0ZXJPcGVyYXRp
b24oQ1VTVE9NKQotICAgICwgbV9wcm9ncmFtKHByb2dyYW0pCi0gICAgLCBtX3BhcmFtZXRlcnMo
c29ydGVkUGFyYW1ldGVycykKLSAgICAsIG1fbWVzaFJvd3MobWVzaFJvd3MpCi0gICAgLCBtX21l
c2hDb2x1bW5zKG1lc2hDb2x1bW5zKQotewotICAgIC8vIE1ha2Ugc3VyZSB0aGF0IHRoZSBwYXJh
bWV0ZXJzIGFyZSBhbHd5YXMgc29ydGVkIGJ5IG5hbWUuIFdlIHVzZSB0aGF0IHRvIG1lcmdlIHR3
byBDdXN0b21GaWx0ZXJPcGVyYXRpb25zIGluIGFuaW1hdGlvbnMuCi0gICAgQVNTRVJUKG1fcGFy
YW1ldGVycy5jaGVja0FscGhhYmV0aWNhbE9yZGVyKCkpOwotfQotICAgIAotQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uOjp+Q3VzdG9tRmlsdGVyT3BlcmF0aW9uKCkKLXsKLX0KLQotUGFzc1JlZlB0cjxG
aWx0ZXJPcGVyYXRpb24+IEN1c3RvbUZpbHRlck9wZXJhdGlvbjo6YmxlbmQoY29uc3QgRmlsdGVy
T3BlcmF0aW9uKiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmIHNpemUs
IGJvb2wgYmxlbmRUb1Bhc3N0aHJvdWdoKQotewotICAgIC8vIEZJWE1FOiBUaGVyZSdzIG5vIHdh
eSB0byBkZWNpZGUgd2hhdCBpcyB0aGUgInBhc3N0aHJvdWdoIGZpbHRlciIgZm9yIHNoYWRlcnMg
dXNpbmcgdGhlIGN1cnJlbnQgQ1NTIFN5bnRheC4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQ5MDMKLSAgICAvLyBodHRwczovL3d3dy53My5vcmcvQnVn
cy9QdWJsaWMvc2hvd19idWcuY2dpP2lkPTE2ODYxCi0gICAgaWYgKGJsZW5kVG9QYXNzdGhyb3Vn
aCB8fCAhZnJvbSB8fCAhZnJvbS0+aXNTYW1lVHlwZSgqdGhpcykpCi0gICAgICAgIHJldHVybiB0
aGlzOwotICAgIAotICAgIGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbiogZnJvbU9wID0gc3Rh
dGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oZnJvbSk7Ci0gICAgaWYgKG1f
cHJvZ3JhbS5nZXQoKSAhPSBmcm9tT3AtPm1fcHJvZ3JhbS5nZXQoKQotICAgICAgICB8fCBtX21l
c2hSb3dzICE9IGZyb21PcC0+bV9tZXNoUm93cwotICAgICAgICB8fCBtX21lc2hDb2x1bW5zICE9
IGZyb21PcC0+bV9tZXNoQ29sdW1ucykKLSAgICAgICAgcmV0dXJuIHRoaXM7Ci0gICAgCi0gICAg
Q3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCBhbmltYXRlZFBhcmFtZXRlcnM7Ci0gICAgbV9wYXJh
bWV0ZXJzLmJsZW5kKGZyb21PcC0+bV9wYXJhbWV0ZXJzLCBwcm9ncmVzcywgc2l6ZSwgYW5pbWF0
ZWRQYXJhbWV0ZXJzKTsKLSAgICByZXR1cm4gQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOjpjcmVhdGUo
bV9wcm9ncmFtLCBhbmltYXRlZFBhcmFtZXRlcnMsIG1fbWVzaFJvd3MsIG1fbWVzaENvbHVtbnMp
OwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlck9wZXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24uaApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggNDQ3YzYwNS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJhdGlvbi5oCisrKyAvZGV2L251bGwK
QEAgLTEsOTYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1z
IEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1l
ci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQg
SE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
Ci0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRl
ZiBDdXN0b21GaWx0ZXJPcGVyYXRpb25faAotI2RlZmluZSBDdXN0b21GaWx0ZXJPcGVyYXRpb25f
aAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0
YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaCIKLSNpbmNsdWRl
ICJDdXN0b21GaWx0ZXJQcm9ncmFtLmgiCi0jaW5jbHVkZSAiRmlsdGVyT3BlcmF0aW9uLmgiCi0j
aW5jbHVkZSAiTGF5b3V0U2l6ZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLS8vIENTUyBT
aGFkZXJzCi0KLWNsYXNzIEN1c3RvbUZpbHRlck9wZXJhdGlvbiA6IHB1YmxpYyBGaWx0ZXJPcGVy
YXRpb24gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlck9wZXJh
dGlvbj4gY3JlYXRlKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3JhbSwgY29u
c3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgc29ydGVkUGFyYW1ldGVycywgdW5zaWduZWQg
bWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBDdXN0b21GaWx0ZXJPcGVyYXRpb24ocHJvZ3JhbSwgc29ydGVkUGFyYW1ldGVy
cywgbWVzaFJvd3MsIG1lc2hDb2x1bW5zKSk7Ci0gICAgfQotICAgIAotICAgIEN1c3RvbUZpbHRl
clByb2dyYW0qIHByb2dyYW0oKSBjb25zdCB7IHJldHVybiBtX3Byb2dyYW0uZ2V0KCk7IH0KLSAg
ICB2b2lkIHNldFByb2dyYW0oUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiBwcm9ncmFt
KSB7IG1fcHJvZ3JhbSA9IHByb2dyYW07IH0KLSAgICAKLSAgICBjb25zdCBDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0JiBwYXJhbWV0ZXJzKCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJzOyB9
Ci0gICAgCi0gICAgdW5zaWduZWQgbWVzaFJvd3MoKSBjb25zdCB7IHJldHVybiBtX21lc2hSb3dz
OyB9Ci0gICAgdW5zaWduZWQgbWVzaENvbHVtbnMoKSBjb25zdCB7IHJldHVybiBtX21lc2hDb2x1
bW5zOyB9Ci0KLSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSgpIGNvbnN0IHsgcmV0
dXJuIHByb2dyYW0oKSA/IHByb2dyYW0oKS0+bWVzaFR5cGUoKSA6IE1lc2hUeXBlQXR0YWNoZWQ7
IH0KLSAgICAKLSAgICB2aXJ0dWFsIH5DdXN0b21GaWx0ZXJPcGVyYXRpb24oKTsKLSAgICAKLSAg
ICB2aXJ0dWFsIGJvb2wgYWZmZWN0c09wYWNpdHkoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0g
ICAgdmlydHVhbCBib29sIG1vdmVzUGl4ZWxzKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotICAg
IHZpcnR1YWwgYm9vbCBibGVuZGluZ05lZWRzUmVuZGVyZXJTaXplKCkgY29uc3QgeyByZXR1cm4g
dHJ1ZTsgfQotICAgIAotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxGaWx0ZXJPcGVyYXRpb24+IGJs
ZW5kKGNvbnN0IEZpbHRlck9wZXJhdGlvbiogZnJvbSwgZG91YmxlIHByb2dyZXNzLCBjb25zdCBM
YXlvdXRTaXplJiwgYm9vbCBibGVuZFRvUGFzc3Rocm91Z2ggPSBmYWxzZSk7Ci0KLXByb3RlY3Rl
ZDoKLSAgICBDdXN0b21GaWx0ZXJPcGVyYXRpb24oUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQcm9n
cmFtPiwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYsIHVuc2lnbmVkIG1lc2hSb3dz
LCB1bnNpZ25lZCBtZXNoQ29sdW1ucyk7Ci0gICAgCi1wcml2YXRlOgotICAgIHZpcnR1YWwgYm9v
bCBvcGVyYXRvcj09KGNvbnN0IEZpbHRlck9wZXJhdGlvbiYgbykgY29uc3QKLSAgICB7Ci0gICAg
ICAgIGlmICghaXNTYW1lVHlwZShvKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQotICAg
ICAgICBjb25zdCBDdXN0b21GaWx0ZXJPcGVyYXRpb24qIG90aGVyID0gc3RhdGljX2Nhc3Q8Y29u
c3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oJm8pOwotICAgICAgICByZXR1cm4gbV9wcm9ncmFt
LmdldCgpID09IG90aGVyLT5tX3Byb2dyYW0uZ2V0KCkKLSAgICAgICAgICAgICYmIG1fbWVzaFJv
d3MgPT0gb3RoZXItPm1fbWVzaFJvd3MKLSAgICAgICAgICAgICYmIG1fbWVzaENvbHVtbnMgPT0g
b3RoZXItPm1fbWVzaENvbHVtbnMKLSAgICAgICAgICAgICYmIG1fcGFyYW1ldGVycyA9PSBvdGhl
ci0+bV9wYXJhbWV0ZXJzOwotICAgIH0KLQotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFt
PiBtX3Byb2dyYW07Ci0gICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCBtX3BhcmFtZXRlcnM7
Ci0gICAgCi0gICAgdW5zaWduZWQgbV9tZXNoUm93czsKLSAgICB1bnNpZ25lZCBtX21lc2hDb2x1
bW5zOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENT
U19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyT3BlcmF0aW9uX2gKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVy
UGFyYW1ldGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlclBhcmFtZXRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYmFi
MmQ4Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSw3OCArMCwwIEBA
Ci0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBh
cmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPi
gJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgot
ICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRlclBh
cmFtZXRlcl9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlclBhcmFtZXRlcl9oCi0KLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgotCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlclBhcmFtZXRlciA6IHB1YmxpYyBSZWZD
b3VudGVkPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gewotcHVibGljOgotICAgIC8vIEZJWE1FOiBJ
bXBsZW1lbnQgb3RoZXIgcGFyYW1ldGVycyB0eXBlczoKLSAgICAvLyB0ZXh0dXJlczogaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDQyCi0gICAgZW51bSBQYXJhbWV0
ZXJUeXBlIHsKLSAgICAgICAgQVJSQVksCi0gICAgICAgIENPTE9SLAotICAgICAgICBNQVRSSVgs
Ci0gICAgICAgIE5VTUJFUiwKLSAgICAgICAgVFJBTlNGT1JNCi0gICAgfTsKLSAgICAKLSAgICB2
aXJ0dWFsIH5DdXN0b21GaWx0ZXJQYXJhbWV0ZXIoKSB7IH0KLSAgICAKLSAgICBQYXJhbWV0ZXJU
eXBlIHBhcmFtZXRlclR5cGUoKSBjb25zdCB7IHJldHVybiBtX3R5cGU7IH0KLSAgICBjb25zdCBT
dHJpbmcmIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25hbWU7IH0KLSAgICAKLSAgICBib29sIGlz
U2FtZVR5cGUoY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyJiBvdGhlcikgY29uc3QgeyByZXR1
cm4gcGFyYW1ldGVyVHlwZSgpID09IG90aGVyLnBhcmFtZXRlclR5cGUoKTsgfQotICAgIAotICAg
IHZpcnR1YWwgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IGJsZW5kKGNvbnN0IEN1
c3RvbUZpbHRlclBhcmFtZXRlciosIGRvdWJsZSBwcm9ncmVzcywgY29uc3QgTGF5b3V0U2l6ZSYp
ID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXImKSBjb25zdCA9IDA7Ci0gICAgYm9vbCBvcGVyYXRvciE9KGNvbnN0IEN1c3RvbUZpbHRl
clBhcmFtZXRlciYgbykgY29uc3QgeyByZXR1cm4gISgqdGhpcyA9PSBvKTsgfQotcHJvdGVjdGVk
OgotICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlcihQYXJhbWV0ZXJUeXBlIHR5cGUsIGNvbnN0IFN0
cmluZyYgbmFtZSkKLSAgICAgICAgOiBtX25hbWUobmFtZSkKLSAgICAgICAgLCBtX3R5cGUodHlw
ZSkKLSAgICB7Ci0gICAgfQotCi1wcml2YXRlOgotICAgIFN0cmluZyBtX25hbWU7Ci0gICAgUGFy
YW1ldGVyVHlwZSBtX3R5cGU7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNjNjMzZTkuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNw
cAorKysgL2Rldi9udWxsCkBAIC0xLDEwNCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
Ci0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNp
bmNsdWRlICJDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmgiCi0KLSNpbmNsdWRlICJDdXN0b21G
aWx0ZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+Ci0KLW5h
bWVzcGFjZSBXZWJDb3JlIHsKLQotQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdDo6Q3VzdG9tRmls
dGVyUGFyYW1ldGVyTGlzdCgpCi17Ci19Ci0KLUN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3Q6OkN1
c3RvbUZpbHRlclBhcmFtZXRlckxpc3Qoc2l6ZV90IHNpemUpCi0gICAgOiBDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0QmFzZShzaXplKSAKLXsKLX0KLQotYm9vbCBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXJMaXN0OjpvcGVyYXRvcj09KGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIG90aGVy
KSBjb25zdAotewotICAgIGlmIChzaXplKCkgIT0gb3RoZXIuc2l6ZSgpKQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplKCk7ICsraSkgewotICAg
ICAgICBpZiAoYXQoaSkuZ2V0KCkgIT0gb3RoZXIuYXQoaSkuZ2V0KCkgCi0gICAgICAgICAgICAm
JiAqYXQoaSkuZ2V0KCkgIT0gKm90aGVyLmF0KGkpLmdldCgpKQotICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgIH0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotYm9vbCBDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0OjpjaGVja0FscGhhYmV0aWNhbE9yZGVyKCkgY29uc3QKLXsKLSAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAxOyBpIDwgc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgLy8gQnJlYWsgZm9y
IGVxdWFsIG9yIG5vdC1zb3J0ZWQgcGFyYW1ldGVycy4KLSAgICAgICAgaWYgKCFjb2RlUG9pbnRD
b21wYXJlTGVzc1RoYW4oYXQoaSAtIDEpLT5uYW1lKCksIGF0KGkpLT5uYW1lKCkpKQotICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotdm9pZCBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0OjpibGVuZChjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXJMaXN0JiBmcm9tTGlzdCwgCi0gICAgZG91YmxlIHByb2dyZXNzLCBjb25zdCBMYXlvdXRTaXpl
JiBmcmFtZVNpemUsIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHJlc3VsdExpc3QpIGNvbnN0
Ci17Ci0gICAgLy8gVGhpcyBtZXRob2QgZXhwZWN0cyBib3RoIGxpc3RzIHRvIGJlIHNvcnRlZCBi
eSBwYXJhbWV0ZXIgbmFtZSBhbmQgdGhlIHJlc3VsdCBsaXN0IGlzIGFsc28gc29ydGVkLgotICAg
IEFTU0VSVChjaGVja0FscGhhYmV0aWNhbE9yZGVyKCkpOwotICAgIEFTU0VSVChmcm9tTGlzdC5j
aGVja0FscGhhYmV0aWNhbE9yZGVyKCkpOwotICAgIHNpemVfdCBmcm9tTGlzdEluZGV4ID0gMCwg
dG9MaXN0SW5kZXggPSAwOwotICAgIHdoaWxlIChmcm9tTGlzdEluZGV4IDwgZnJvbUxpc3Quc2l6
ZSgpICYmIHRvTGlzdEluZGV4IDwgc2l6ZSgpKSB7Ci0gICAgICAgIEN1c3RvbUZpbHRlclBhcmFt
ZXRlciogcGFyYW1Gcm9tID0gZnJvbUxpc3QuYXQoZnJvbUxpc3RJbmRleCkuZ2V0KCk7Ci0gICAg
ICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlciogcGFyYW1UbyA9IGF0KHRvTGlzdEluZGV4KS5nZXQo
KTsKLSAgICAgICAgaWYgKHBhcmFtRnJvbS0+bmFtZSgpID09IHBhcmFtVG8tPm5hbWUoKSkgewot
ICAgICAgICAgICAgcmVzdWx0TGlzdC5hcHBlbmQocGFyYW1Uby0+YmxlbmQocGFyYW1Gcm9tLCBw
cm9ncmVzcywgZnJhbWVTaXplKSk7Ci0gICAgICAgICAgICArK2Zyb21MaXN0SW5kZXg7Ci0gICAg
ICAgICAgICArK3RvTGlzdEluZGV4OwotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0K
LSAgICAgICAgaWYgKGNvZGVQb2ludENvbXBhcmVMZXNzVGhhbihwYXJhbUZyb20tPm5hbWUoKSwg
cGFyYW1Uby0+bmFtZSgpKSkgewotICAgICAgICAgICAgcmVzdWx0TGlzdC5hcHBlbmQocGFyYW1G
cm9tKTsKLSAgICAgICAgICAgICsrZnJvbUxpc3RJbmRleDsKLSAgICAgICAgICAgIGNvbnRpbnVl
OwotICAgICAgICB9Ci0gICAgICAgIHJlc3VsdExpc3QuYXBwZW5kKHBhcmFtVG8pOwotICAgICAg
ICArK3RvTGlzdEluZGV4OwotICAgIH0KLSAgICBmb3IgKDsgZnJvbUxpc3RJbmRleCA8IGZyb21M
aXN0LnNpemUoKTsgKytmcm9tTGlzdEluZGV4KQotICAgICAgICByZXN1bHRMaXN0LmFwcGVuZChm
cm9tTGlzdC5hdChmcm9tTGlzdEluZGV4KSk7Ci0gICAgZm9yICg7IHRvTGlzdEluZGV4IDwgc2l6
ZSgpOyArK3RvTGlzdEluZGV4KQotICAgICAgICByZXN1bHRMaXN0LmFwcGVuZChhdCh0b0xpc3RJ
bmRleCkpOwotICAgIEFTU0VSVChyZXN1bHRMaXN0LmNoZWNrQWxwaGFiZXRpY2FsT3JkZXIoKSk7
Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hB
REVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmgKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IGE5YmMwMWYuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmgKKysr
IC9kZXYvbnVsbApAQCAtMSw1NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFk
b2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAg
ICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0g
KiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0K
LSNpZm5kZWYgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdF9oCi0jZGVmaW5lIEN1c3RvbUZpbHRl
clBhcmFtZXRlckxpc3RfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkxh
eW91dFNpemUuaCIKLSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3Jl
IHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOwotdHlwZWRlZiBWZWN0b3I8UmVmUHRy
PEN1c3RvbUZpbHRlclBhcmFtZXRlcj4+IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3RCYXNlOwot
Ci1jbGFzcyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0IDogcHVibGljIEN1c3RvbUZpbHRlclBh
cmFtZXRlckxpc3RCYXNlIHsKLXB1YmxpYzoKLSAgICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0
KCk7Ci0gICAgZXhwbGljaXQgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdChzaXplX3QpOwotCi0g
ICAgYm9vbCBjaGVja0FscGhhYmV0aWNhbE9yZGVyKCkgY29uc3Q7Ci0gICAgdm9pZCBibGVuZChj
b25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIGNv
bnN0IExheW91dFNpemUmLCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiByZXN1bHRMaXN0KSBj
b25zdDsKLSAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlz
dCYpIGNvbnN0OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdF9o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlclByb2dyYW0uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggZjI3NjlmNy4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0uY3BwCisrKyAvZGV2L251bGwKQEAgLTEs
MTAxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNv
cnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERF
UiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICog
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJj
b25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0
ZXJQcm9ncmFtLmgiCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaCIK
LSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmgiCi0jaW5jbHVkZSAiQ3VzdG9t
RmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9n
cmFtLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotQ3VzdG9tRmlsdGVyUHJvZ3JhbTo6Q3Vz
dG9tRmlsdGVyUHJvZ3JhbShDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSwgY29u
c3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiBtaXhTZXR0aW5ncywgQ3VzdG9tRmls
dGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAgOiBtX3Byb2dyYW1UeXBlKHByb2dyYW1UeXBlKQot
ICAgICwgbV9taXhTZXR0aW5ncyhtaXhTZXR0aW5ncykKLSAgICAsIG1fbWVzaFR5cGUobWVzaFR5
cGUpCi17Ci0gICAgLy8gS2VlcCB0aGUgY29uc3RydWN0b3IgcHJvdGVjdGVkIHRvIHByZXZlbnQg
Y3JlYXRpbmcgdGhpcyBvYmplY3QgZGlyZWN0bHkuCi19Ci0KLUN1c3RvbUZpbHRlclByb2dyYW06
On5DdXN0b21GaWx0ZXJQcm9ncmFtKCkKLXsKLSAgICAvLyBBbGwgdGhlIGNsaWVudHMgc2hvdWxk
IGtlZXAgYSByZWZlcmVuY2UgdG8gdGhpcyBvYmplY3QuCi0gICAgQVNTRVJUKG1fY2xpZW50cy5p
c0VtcHR5KCkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclByb2dyYW06OmFkZENsaWVudChDdXN0
b21GaWx0ZXJQcm9ncmFtQ2xpZW50KiBjbGllbnQpCi17Ci0gICAgaWYgKG1fY2xpZW50cy5pc0Vt
cHR5KCkpIHsKLSAgICAgICAgLy8gTm90aWZ5IHRoZSBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0g
dGhhdCB3ZSBub3cgaGF2ZSBhdCBsZWFzdCBhIGNsaWVudAotICAgICAgICAvLyBhbmQgdGhlIGxv
YWRpbmcgY2FuIGJlZ2luLgotICAgICAgICAvLyBOb3RlOiBJZiB0aGUgc2hhZGVyIGlzIGFscmVh
ZHkgY2FjaGVkIHRoZSBmaXJzdCBjbGllbnQgd2lsbCBiZSBub3RpZmllZCwKLSAgICAgICAgLy8g
ZXZlbiBpZiB0aGUgZmlsdGVyIHdhcyBhbHJlYWR5IGJ1aWx0LiBBZGQgdGhlIGNsaWVudCBvbmx5
IGFmdGVyIG5vdGlmeWluZwotICAgICAgICAvLyB0aGUgY2FjaGUgYWJvdXQgdGhlbSwgc28gdGhh
dCB3ZSBhdm9pZCBhIHVzZWxlc3MgcmVjcmVhdGlvbiBvZiB0aGUgZmlsdGVycyBjaGFpbi4KLSAg
ICAgICAgd2lsbEhhdmVDbGllbnRzKCk7Ci0gICAgfQotICAgIG1fY2xpZW50cy5hZGQoY2xpZW50
KTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJQcm9ncmFtOjpyZW1vdmVDbGllbnQoQ3VzdG9tRmls
dGVyUHJvZ3JhbUNsaWVudCogY2xpZW50KQotewotICAgIG1fY2xpZW50cy5yZW1vdmUoY2xpZW50
KTsKLSAgICBpZiAobV9jbGllbnRzLmlzRW1wdHkoKSkgewotICAgICAgICAvLyBXZSBoYXZlIG5v
IGNsaWVudHMgYW55bW9yZSwgdGhlIGNhY2hlZCByZXNvdXJjZXMgY2FuIGJlIHB1cmdlZCBmcm9t
IG1lbW9yeS4KLSAgICAgICAgZGlkUmVtb3ZlTGFzdENsaWVudCgpOwotICAgIH0KLX0KLQotdm9p
ZCBDdXN0b21GaWx0ZXJQcm9ncmFtOjpub3RpZnlDbGllbnRzKCkKLXsKLSAgICBmb3IgKEN1c3Rv
bUZpbHRlclByb2dyYW1DbGllbnRMaXN0OjppdGVyYXRvciBpdGVyID0gbV9jbGllbnRzLmJlZ2lu
KCksIGVuZCA9IG1fY2xpZW50cy5lbmQoKTsgaXRlciAhPSBlbmQ7ICsraXRlcikKLSAgICAgICAg
aXRlci0+a2V5LT5ub3RpZnlDdXN0b21GaWx0ZXJQcm9ncmFtTG9hZGVkKHRoaXMpOwotfQotCi1D
dXN0b21GaWx0ZXJQcm9ncmFtSW5mbyBDdXN0b21GaWx0ZXJQcm9ncmFtOjpwcm9ncmFtSW5mbygp
IGNvbnN0Ci17Ci0gICAgQVNTRVJUKGlzTG9hZGVkKCkpOwotICAgIHJldHVybiBDdXN0b21GaWx0
ZXJQcm9ncmFtSW5mbyh2ZXJ0ZXhTaGFkZXJTdHJpbmcoKSwgZnJhZ21lbnRTaGFkZXJTdHJpbmco
KSwgbV9wcm9ncmFtVHlwZSwgbV9taXhTZXR0aW5ncywgbV9tZXNoVHlwZSk7Ci19Ci0KLVBhc3NS
ZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gQ3VzdG9tRmlsdGVyUHJvZ3JhbTo6
dmFsaWRhdGVkUHJvZ3JhbSgpCi17Ci0gICAgcmV0dXJuIG1fdmFsaWRhdGVkUHJvZ3JhbTsKLX0K
LQotdm9pZCBDdXN0b21GaWx0ZXJQcm9ncmFtOjpzZXRWYWxpZGF0ZWRQcm9ncmFtKFBhc3NSZWZQ
dHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gdmFsaWRhdGVkUHJvZ3JhbSkKLXsKLSAg
ICBtX3ZhbGlkYXRlZFByb2dyYW0gPSB2YWxpZGF0ZWRQcm9ncmFtOwotfQotCi19IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9n
cmFtLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlclByb2dyYW0uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWQ4OTY1Yy4uMDAw
MDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3Rv
bUZpbHRlclByb2dyYW0uaAorKysgL2Rldi9udWxsCkBAIC0xLDk5ICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0g
KiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5Z
Ci0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICog
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
LSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YK
LSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCi0j
ZGVmaW5lIEN1c3RvbUZpbHRlclByb2dyYW1faAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQot
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLQotI2luY2x1ZGUgPHd0Zi9I
YXNoQ291bnRlZFNldC5oPgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0jaW5jbHVkZSA8
d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgR3Jh
cGhpY3NDb250ZXh0M0Q7Ci1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50OwotY2xhc3Mg
Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTsKLQotLy8gVGhpcyBpcyB0aGUgYmFzZSBjbGFz
cyBmb3IgdGhlIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSBjbGFzcyB3aGljaCBrbm93cyBob3cg
dG8ga2VlcAotLy8gcmVmZXJlbmNlcyB0byB0aGUgY2FjaGVkIHNoYWRlcnMuCi1jbGFzcyBDdXN0
b21GaWx0ZXJQcm9ncmFtOiBwdWJsaWMgUmVmQ291bnRlZDxDdXN0b21GaWx0ZXJQcm9ncmFtPiB7
Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+Q3VzdG9tRmlsdGVyUHJvZ3JhbSgpOwotCi0gICAgdmly
dHVhbCBib29sIGlzTG9hZGVkKCkgY29uc3QgPSAwOwotCi0gICAgdm9pZCBhZGRDbGllbnQoQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUNsaWVudCopOwotICAgIHZvaWQgcmVtb3ZlQ2xpZW50KEN1c3RvbUZp
bHRlclByb2dyYW1DbGllbnQqKTsKLSAgICAKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyBw
cm9ncmFtSW5mbygpIGNvbnN0OwotCi0gICAgdmlydHVhbCBTdHJpbmcgdmVydGV4U2hhZGVyU3Ry
aW5nKCkgY29uc3QgPSAwOwotICAgIHZpcnR1YWwgU3RyaW5nIGZyYWdtZW50U2hhZGVyU3RyaW5n
KCkgY29uc3QgPSAwOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlKCkg
Y29uc3QgeyByZXR1cm4gbV9wcm9ncmFtVHlwZTsgfQotICAgIEN1c3RvbUZpbHRlclByb2dyYW1N
aXhTZXR0aW5ncyBtaXhTZXR0aW5ncygpIGNvbnN0IHsgcmV0dXJuIG1fbWl4U2V0dGluZ3M7IH0K
LSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWVz
aFR5cGU7IH0KLQotICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4g
dmFsaWRhdGVkUHJvZ3JhbSgpOwotICAgIHZvaWQgc2V0VmFsaWRhdGVkUHJvZ3JhbShQYXNzUmVm
UHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+KTsKLQotcHJvdGVjdGVkOgotICAgIC8v
IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSBjYW4gbm90aWZ5IHRoZSBjbGllbnRzIHRoYXQgdGhl
IGNhY2hlZCByZXNvdXJjZXMgYXJlCi0gICAgLy8gbG9hZGVkIGFuZCBpdCBpcyByZWFkeSB0byBj
cmVhdGUgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtIG9iamVjdHMuCi0gICAgdm9pZCBub3Rp
ZnlDbGllbnRzKCk7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgd2lsbEhhdmVDbGllbnRzKCkgPSAwOwot
ICAgIHZpcnR1YWwgdm9pZCBkaWRSZW1vdmVMYXN0Q2xpZW50KCkgPSAwOwotCi0gICAgLy8gS2Vl
cCB0aGUgY29uc3RydWN0b3IgcHJvdGVjdGVkIHRvIHByZXZlbnQgY3JlYXRpbmcgdGhpcyBvYmpl
Y3QgZGlyZWN0bHkuCi0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbShDdXN0b21GaWx0ZXJQcm9ncmFt
VHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiwgQ3VzdG9tRmlsdGVy
TWVzaFR5cGUpOwotCi1wcml2YXRlOgotICAgIC8vIEN1c3RvbUZpbHRlclByb2dyYW1zIGFyZSB1
bmlxdWUgY29tYmluYXRpb25zIG9mIHNoYWRlcnMgYW5kIGNhbiBiZSAKLSAgICAvLyBjb21wYXJl
ZCB1c2luZyBqdXN0IHRoZSBwb2ludGVyIHZhbHVlIGluc3RlYWQuCi0gICAgLy8gVGhlc2Ugd2ls
bCBjYXRjaCBhbnlvbmUgZG9pbmcgYSB2YWx1ZSBlcXVhbCBjb21wYXJpc29uLgotICAgIGJvb2wg
b3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtJikgY29uc3Q7Ci0gICAgYm9vbCBv
cGVyYXRvciE9KGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW0mKSBjb25zdDsKLQotICAgIHR5cGVk
ZWYgSGFzaENvdW50ZWRTZXQ8Q3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudCo+IEN1c3RvbUZpbHRl
clByb2dyYW1DbGllbnRMaXN0OwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnRMaXN0IG1f
Y2xpZW50czsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBtX3Byb2dyYW1UeXBlOwotICAg
IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyBtX21peFNldHRpbmdzOwotICAgIEN1c3Rv
bUZpbHRlck1lc2hUeXBlIG1fbWVzaFR5cGU7Ci0gICAgUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW0+IG1fdmFsaWRhdGVkUHJvZ3JhbTsKLX07Ci0KLX0KLQotI2VuZGlmIC8vIEVO
QUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUNsaWVudC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYjBiN2MwLi4wMDAwMDAw
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUHJvZ3JhbUNsaWVudC5oCisrKyAvZGV2L251bGwKQEAgLTEsNTIgKzAsMCBAQAotLyoKLSAq
IENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoK
LSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAg
ICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMK
LSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBB
TlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0g
KiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xp
ZW50X2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudF9oCi0KLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVy
UHJvZ3JhbTsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudCB7Ci1wdWJsaWM6Ci0g
ICAgdmlydHVhbCB+Q3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudCgpCi0gICAgewotICAgIH0KLSAg
ICAKLSAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5Q3VzdG9tRmlsdGVyUHJvZ3JhbUxvYWRlZChDdXN0
b21GaWx0ZXJQcm9ncmFtKikgPSAwOwotfTsKLQotfQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19T
SEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudF9oCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
clByb2dyYW1JbmZvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBkZGFiOWE3Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwCisrKyAvZGV2L251bGwKQEAg
LTEsMTA5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJ
bmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIu
Ci0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhP
TERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgot
ICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRl
ICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21G
aWx0ZXJQcm9ncmFtSW5mby5oIgotCi0jaW5jbHVkZSA8d3RmL0hhc2hGdW5jdGlvbnMuaD4KLSNp
bmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQot
c3RhdGljIHVuc2lnbmVkIGhhc2hQb3NzaWJseU51bGxTdHJpbmcoY29uc3QgU3RyaW5nJiBzdHJp
bmcpCi17Ci0gICAgcmV0dXJuIHN0cmluZy5pc051bGwoKSA/IDAgOiBEZWZhdWx0SGFzaDxTdHJp
bmc+OjpIYXNoOjpoYXNoKHN0cmluZyk7Ci19Ci0KLUN1c3RvbUZpbHRlclByb2dyYW1JbmZvOjpD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mbygpCi17Ci19Ci0KLWJvb2wgQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUluZm86OmlzRW1wdHlWYWx1ZSgpIGNvbnN0IAoteyAKLSAgICByZXR1cm4gbV92ZXJ0ZXhTaGFk
ZXJTdHJpbmcuaXNOdWxsKCkgCi0gICAgICAgICYmIG1fZnJhZ21lbnRTaGFkZXJTdHJpbmcuaXNO
dWxsKCk7Ci19Ci0KLUN1c3RvbUZpbHRlclByb2dyYW1JbmZvOjpDdXN0b21GaWx0ZXJQcm9ncmFt
SW5mbyhXVEY6Okhhc2hUYWJsZURlbGV0ZWRWYWx1ZVR5cGUpCi0gICAgOiBtX3ZlcnRleFNoYWRl
clN0cmluZyhXVEY6Okhhc2hUYWJsZURlbGV0ZWRWYWx1ZSkKLSAgICAsIG1fZnJhZ21lbnRTaGFk
ZXJTdHJpbmcoV1RGOjpIYXNoVGFibGVEZWxldGVkVmFsdWUpCi17Ci19Ci0KLWJvb2wgQ3VzdG9t
RmlsdGVyUHJvZ3JhbUluZm86OmlzSGFzaFRhYmxlRGVsZXRlZFZhbHVlKCkgY29uc3QKLXsKLSAg
ICByZXR1cm4gbV92ZXJ0ZXhTaGFkZXJTdHJpbmcuaXNIYXNoVGFibGVEZWxldGVkVmFsdWUoKSAK
LSAgICAgICAgJiYgbV9mcmFnbWVudFNoYWRlclN0cmluZy5pc0hhc2hUYWJsZURlbGV0ZWRWYWx1
ZSgpOwotfQotCi1DdXN0b21GaWx0ZXJQcm9ncmFtSW5mbzo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8oY29uc3QgU3RyaW5nJiB2ZXJ0ZXhTaGFkZXIsIGNvbnN0IFN0cmluZyYgZnJhZ21lbnRTaGFk
ZXIsIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0
ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG1peFNldHRpbmdzLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBt
ZXNoVHlwZSkKLSAgICA6IG1fdmVydGV4U2hhZGVyU3RyaW5nKHZlcnRleFNoYWRlcikKLSAgICAs
IG1fZnJhZ21lbnRTaGFkZXJTdHJpbmcoZnJhZ21lbnRTaGFkZXIpCi0gICAgLCBtX3Byb2dyYW1U
eXBlKHByb2dyYW1UeXBlKQotICAgICwgbV9taXhTZXR0aW5ncyhtaXhTZXR0aW5ncykKLSAgICAs
IG1fbWVzaFR5cGUobWVzaFR5cGUpCi17Ci0gICAgLy8gQXQgbGVhc3Qgb25lIG9mIHRoZSBzaGFk
ZXJzIG5lZWRzIHRvIGJlIG5vbi1udWxsLgotICAgIEFTU0VSVCghbV92ZXJ0ZXhTaGFkZXJTdHJp
bmcuaXNOdWxsKCkgfHwgIW1fZnJhZ21lbnRTaGFkZXJTdHJpbmcuaXNOdWxsKCkpOwotfQotCi11
bnNpZ25lZCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbzo6aGFzaCgpIGNvbnN0Ci17Ci0gICAgLy8g
QXQgbGVhc3Qgb25lIG9mIHRoZSBzaGFkZXJzIG5lZWRzIHRvIGJlIG5vbi1udWxsLgotICAgIEFT
U0VSVCghbV92ZXJ0ZXhTaGFkZXJTdHJpbmcuaXNOdWxsKCkgfHwgIW1fZnJhZ21lbnRTaGFkZXJT
dHJpbmcuaXNOdWxsKCkpOwotCi0gICAgYm9vbCBibGVuZHNFbGVtZW50VGV4dHVyZSA9IChtX3By
b2dyYW1UeXBlID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJFKTsKLSAgICB1
aW50cHRyX3QgaGFzaENvZGVzWzZdID0gewotICAgICAgICBoYXNoUG9zc2libHlOdWxsU3RyaW5n
KG1fdmVydGV4U2hhZGVyU3RyaW5nKSwKLSAgICAgICAgaGFzaFBvc3NpYmx5TnVsbFN0cmluZyht
X2ZyYWdtZW50U2hhZGVyU3RyaW5nKSwKLSAgICAgICAgYmxlbmRzRWxlbWVudFRleHR1cmUsCi0g
ICAgICAgIHN0YXRpY19jYXN0PHVpbnRwdHJfdD4oYmxlbmRzRWxlbWVudFRleHR1cmUgPyBtX21p
eFNldHRpbmdzLmJsZW5kTW9kZSA6IDApLAotICAgICAgICBzdGF0aWNfY2FzdDx1aW50cHRyX3Q+
KGJsZW5kc0VsZW1lbnRUZXh0dXJlID8gbV9taXhTZXR0aW5ncy5jb21wb3NpdGVPcGVyYXRvciA6
IDApLAotICAgICAgICBtX21lc2hUeXBlCi0gICAgfTsKLSAgICByZXR1cm4gU3RyaW5nSGFzaGVy
OjpoYXNoTWVtb3J5PHNpemVvZihoYXNoQ29kZXMpPigmaGFzaENvZGVzKTsKLX0KLQotYm9vbCBD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mbzo6b3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQcm9n
cmFtSW5mbyYgbykgY29uc3QgCi17Ci0gICAgQVNTRVJUKCFpc0hhc2hUYWJsZURlbGV0ZWRWYWx1
ZSgpKTsKLSAgICBBU1NFUlQoIW8uaXNIYXNoVGFibGVEZWxldGVkVmFsdWUoKSk7Ci0KLSAgICBy
ZXR1cm4gbV9wcm9ncmFtVHlwZSA9PSBvLm1fcHJvZ3JhbVR5cGUKLSAgICAgICAgJiYgKG1fcHJv
Z3JhbVR5cGUgIT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUgfHwgbV9taXhT
ZXR0aW5ncyA9PSBvLm1fbWl4U2V0dGluZ3MpCi0gICAgICAgICYmIG1fbWVzaFR5cGUgPT0gby5t
X21lc2hUeXBlCi0gICAgICAgICYmIG1fdmVydGV4U2hhZGVyU3RyaW5nID09IG8ubV92ZXJ0ZXhT
aGFkZXJTdHJpbmcKLSAgICAgICAgJiYgbV9mcmFnbWVudFNoYWRlclN0cmluZyA9PSBvLm1fZnJh
Z21lbnRTaGFkZXJTdHJpbmc7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8u
aApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMWViNjhmMi4uMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dy
YW1JbmZvLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFp
bWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VD
SCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mb19oCi0jZGVm
aW5lIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykK
LSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNpbmNsdWRlICJHcmFwaGljc1R5
cGVzLmgiCi0KLSNpbmNsdWRlIDx3dGYvSGFzaFRyYWl0cy5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0
L1dURlN0cmluZy5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLQotc3RydWN0IEN1c3RvbUZp
bHRlclByb2dyYW1NaXhTZXR0aW5ncyB7Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRp
bmdzKCkKLSAgICAgICAgOiBibGVuZE1vZGUoQmxlbmRNb2RlTm9ybWFsKQotICAgICAgICAsIGNv
bXBvc2l0ZU9wZXJhdG9yKENvbXBvc2l0ZVNvdXJjZUF0b3ApCi0gICAgewotICAgIH0KLSAgICAK
LSAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdz
JiBvKSBjb25zdAotICAgIHsKLSAgICAgICAgcmV0dXJuIGJsZW5kTW9kZSA9PSBvLmJsZW5kTW9k
ZSAmJiBjb21wb3NpdGVPcGVyYXRvciA9PSBvLmNvbXBvc2l0ZU9wZXJhdG9yOwotICAgIH0KLSAg
ICAKLSAgICBCbGVuZE1vZGUgYmxlbmRNb2RlOwotICAgIENvbXBvc2l0ZU9wZXJhdG9yIGNvbXBv
c2l0ZU9wZXJhdG9yOwotfTsKLQotLy8gQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8gaXMgdGhlIGtl
eSB1c2VkIHRvIGxpbmsgQ3VzdG9tRmlsdGVyUHJvZ3JhbSB3aXRoIEN1c3RvbUZpbHRlckNvbXBp
bGVkUHJvZ3JhbS4KLS8vIEl0IGNhbiBiZSB1c2VkIGFzIGEga2V5IGluIGEgSGFzaE1hcCwgd2l0
aCB0aGUgbm90ZSB0aGF0IGF0IGxlYXN0IG9uZSBvZiBTdHJpbmdzIG5lZWRzIHRvIGJlIG5vbi1u
dWxsLiAKLS8vIE51bGwgc3RyaW5ncyBhcmUgcGxhY2Vob2xkZXJzIGZvciB0aGUgZGVmYXVsdCBz
aGFkZXIuCi1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyB7Ci1wdWJsaWM6Ci0gICAgQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8oY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJiwgQ3VzdG9t
RmlsdGVyUHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyYs
IEN1c3RvbUZpbHRlck1lc2hUeXBlKTsKLQotICAgIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvKCk7
Ci0gICAgYm9vbCBpc0VtcHR5VmFsdWUoKSBjb25zdDsKLQotICAgIEN1c3RvbUZpbHRlclByb2dy
YW1JbmZvKFdURjo6SGFzaFRhYmxlRGVsZXRlZFZhbHVlVHlwZSk7Ci0gICAgYm9vbCBpc0hhc2hU
YWJsZURlbGV0ZWRWYWx1ZSgpIGNvbnN0OwotICAgIAotICAgIHVuc2lnbmVkIGhhc2goKSBjb25z
dDsKLSAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mKSBj
b25zdDsKLQotICAgIGNvbnN0IFN0cmluZyYgdmVydGV4U2hhZGVyU3RyaW5nKCkgY29uc3QgeyBy
ZXR1cm4gbV92ZXJ0ZXhTaGFkZXJTdHJpbmc7IH0KLSAgICBjb25zdCBTdHJpbmcmIGZyYWdtZW50
U2hhZGVyU3RyaW5nKCkgY29uc3QgeyByZXR1cm4gbV9mcmFnbWVudFNoYWRlclN0cmluZzsgfQot
ICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlKCkgY29uc3QgeyByZXR1cm4g
bV9wcm9ncmFtVHlwZTsgfQotICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5n
cyYgbWl4U2V0dGluZ3MoKSBjb25zdCB7IHJldHVybiBtX21peFNldHRpbmdzOyB9Ci0gICAgQ3Vz
dG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUoKSBjb25zdCB7IHJldHVybiBtX21lc2hUeXBlOyB9
Ci1wcml2YXRlOgotICAgIFN0cmluZyBtX3ZlcnRleFNoYWRlclN0cmluZzsKLSAgICBTdHJpbmcg
bV9mcmFnbWVudFNoYWRlclN0cmluZzsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBtX3By
b2dyYW1UeXBlOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyBtX21peFNldHRp
bmdzOwotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1fbWVzaFR5cGU7Ci19OwotCi1zdHJ1Y3Qg
Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm9IYXNoIHsKLSAgICBzdGF0aWMgdW5zaWduZWQgaGFzaChj
b25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8pIHsgcmV0dXJuIHByb2dy
YW1JbmZvLmhhc2goKTsgfQotICAgIHN0YXRpYyBib29sIGVxdWFsKGNvbnN0IEN1c3RvbUZpbHRl
clByb2dyYW1JbmZvJiBhLCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYgYikgeyByZXR1
cm4gYSA9PSBiOyB9Ci0gICAgc3RhdGljIGNvbnN0IGJvb2wgc2FmZVRvQ29tcGFyZVRvRW1wdHlP
ckRlbGV0ZWQgPSBmYWxzZTsKLX07Ci0KLXN0cnVjdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mb0hh
c2hUcmFpdHMgOiBXVEY6OlNpbXBsZUNsYXNzSGFzaFRyYWl0czxDdXN0b21GaWx0ZXJQcm9ncmFt
SW5mbz4gewotICAgIHN0YXRpYyBjb25zdCBib29sIGhhc0lzRW1wdHlWYWx1ZUZ1bmN0aW9uID0g
dHJ1ZTsKLSAgICBzdGF0aWMgYm9vbCBpc0VtcHR5VmFsdWUoY29uc3QgQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8mIGluZm8pIHsgcmV0dXJuIGluZm8uaXNFbXB0eVZhbHVlKCk7IH0KLX07Ci0KLX0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotbmFtZXNwYWNlIFdURiB7Ci0KLXRlbXBsYXRlPD4gc3Ry
dWN0IEhhc2hUcmFpdHM8V2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8+IDogV2ViQ29y
ZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm9IYXNoVHJhaXRzIHsgfTsKLXRlbXBsYXRlPD4gc3Ry
dWN0IERlZmF1bHRIYXNoPFdlYkNvcmU6OkN1c3RvbUZpbHRlclByb2dyYW1JbmZvPiB7IAotICAg
IHR5cGVkZWYgV2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm9IYXNoIEhhc2g7IAotfTsK
LQotfQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIEN1c3RvbUZp
bHRlclByb2dyYW1JbmZvX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUmVuZGVyZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5jcHAKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYyZWQzOTMuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5jcHAK
KysrIC9kZXYvbnVsbApAQCAtMSwzMzUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
MiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENv
cHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMiBDb21wYW55IDEwMCwgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0
OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5E
IEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwK
LSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLSNpbmNsdWRlICJDdXN0b21G
aWx0ZXJSZW5kZXJlci5oIgotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIu
aCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1
c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0
YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck1lc2guaCIKLSNpbmNsdWRlICJDdXN0b21G
aWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQYXJhbWV0ZXIu
aCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCIKLSNpbmNsdWRl
ICJHcmFwaGljc0NvbnRleHQzRC5oIgotI2luY2x1ZGUgIlRyYW5zZm9ybWF0aW9uTWF0cml4Lmgi
Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotc3RhdGljIHZvaWQgb3J0aG9nb25hbFByb2plY3Rp
b25NYXRyaXgoVHJhbnNmb3JtYXRpb25NYXRyaXgmIG1hdHJpeCwgZmxvYXQgbGVmdCwgZmxvYXQg
cmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxvYXQgdG9wKQotewotICAgIEFTU0VSVChtYXRyaXguaXNJ
ZGVudGl0eSgpKTsKLQotICAgIGZsb2F0IGRlbHRhWCA9IHJpZ2h0IC0gbGVmdDsKLSAgICBmbG9h
dCBkZWx0YVkgPSB0b3AgLSBib3R0b207Ci0gICAgaWYgKCFkZWx0YVggfHwgIWRlbHRhWSkKLSAg
ICAgICAgcmV0dXJuOwotICAgIG1hdHJpeC5zZXRNMTEoMi4wZiAvIGRlbHRhWCk7Ci0gICAgbWF0
cml4LnNldE00MSgtKHJpZ2h0ICsgbGVmdCkgLyBkZWx0YVgpOwotICAgIG1hdHJpeC5zZXRNMjIo
Mi4wZiAvIGRlbHRhWSk7Ci0gICAgbWF0cml4LnNldE00MigtKHRvcCArIGJvdHRvbSkgLyBkZWx0
YVkpOwotCi0gICAgLy8gVXNlIGJpZyBlbm91Z2ggbmVhci9mYXIgdmFsdWVzLCBzbyB0aGF0IHNp
bXBsZSByb3RhdGlvbnMgb2YgcmF0aGVyIGxhcmdlIG9iamVjdHMgd2lsbCBub3QKLSAgICAvLyBn
ZXQgY2xpcHBlZC4gMTAwMDAgc2hvdWxkIGNvdmVyIG1vc3Qgb2YgdGhlIHNjcmVlbiByZXNvbHV0
aW9ucy4KLSAgICBjb25zdCBmbG9hdCBmYXJWYWx1ZSA9IDEwMDAwOwotICAgIGNvbnN0IGZsb2F0
IG5lYXJWYWx1ZSA9IC0xMDAwMDsKLSAgICBtYXRyaXguc2V0TTMzKC0yLjBmIC8gKGZhclZhbHVl
IC0gbmVhclZhbHVlKSk7Ci0gICAgbWF0cml4LnNldE00MygtIChmYXJWYWx1ZSArIG5lYXJWYWx1
ZSkgLyAoZmFyVmFsdWUgLSBuZWFyVmFsdWUpKTsKLSAgICBtYXRyaXguc2V0TTQ0KDEuMGYpOwot
fQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlclJlbmRlcmVyPiBDdXN0b21GaWx0ZXJSZW5kZXJl
cjo6Y3JlYXRlKFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNvbnRleHQsIEN1c3RvbUZp
bHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJM
aXN0JiBwYXJhbWV0ZXJzLAotICAgIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29s
dW1ucywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi17Ci0gICAgcmV0dXJuIGFkb3B0
UmVmKG5ldyBDdXN0b21GaWx0ZXJSZW5kZXJlcihjb250ZXh0LCBwcm9ncmFtVHlwZSwgcGFyYW1l
dGVycywgbWVzaFJvd3MsIG1lc2hDb2x1bW5zLCBtZXNoVHlwZSkpOwotfQotCi1DdXN0b21GaWx0
ZXJSZW5kZXJlcjo6Q3VzdG9tRmlsdGVyUmVuZGVyZXIoUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRl
eHQzRD4gY29udGV4dCwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNvbnN0
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHBhcmFtZXRlcnMsCi0gICAgdW5zaWduZWQgbWVz
aFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlw
ZSkKLSAgICA6IG1fY29udGV4dChjb250ZXh0KQotICAgICwgbV9wcm9ncmFtVHlwZShwcm9ncmFt
VHlwZSkKLSAgICAsIG1fcGFyYW1ldGVycyhwYXJhbWV0ZXJzKQotICAgICwgbV9tZXNoUm93cyht
ZXNoUm93cykKLSAgICAsIG1fbWVzaENvbHVtbnMobWVzaENvbHVtbnMpCi0gICAgLCBtX21lc2hU
eXBlKG1lc2hUeXBlKQotewotfQotCi1DdXN0b21GaWx0ZXJSZW5kZXJlcjo6fkN1c3RvbUZpbHRl
clJlbmRlcmVyKCkKLXsKLX0KLQotYm9vbCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6cHJlbXVsdGlw
bGllZEFscGhhKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9wcm9ncmFtVHlwZSA9PSBQUk9HUkFN
X1RZUEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRTsKLX0KLQotYm9vbCBDdXN0b21GaWx0ZXJSZW5k
ZXJlcjo6cHJvZ3JhbU5lZWRzSW5wdXRUZXh0dXJlKCkgY29uc3QKLXsKLSAgICBBU1NFUlQobV9j
b21waWxlZFByb2dyYW0uZ2V0KCkpOwotICAgIHJldHVybiBtX2NvbXBpbGVkUHJvZ3JhbS0+c2Ft
cGxlckxvY2F0aW9uKCkgIT0gLTE7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmRy
YXcoUGxhdGZvcm0zRE9iamVjdCBpbnB1dFRleHR1cmUsIGNvbnN0IEludFNpemUmIHNpemUpCi17
Ci0gICAgLy8gRklYTUU6IFdlIHdvdWxkIG5lZWQgc29tZXRoaW5nIGxpa2UgQ3VzdG9tRmlsdGVy
UmVuZGVyZXJTdGF0ZSB0aGF0IHdpbGwgY29udGFpbiB0aGUgc2l6ZSBhbmQgb3RoZXIgcGFyYW1l
dGVycyBpbiB0aGUgZnV0dXJlLiBXZSBzaG91bGQgcGFzcyB0aGF0IHRvIGJpbmRQcm9ncmFtQnVm
ZmVycyBpbnN0ZWFkIG9mIHN0b3JpbmcgaXQuCi0gICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEwMDEwNwotICAgIG1fY29udGV4dFNpemUgPSBzaXplOwotCi0g
ICAgYmluZFByb2dyYW1BbmRCdWZmZXJzKGlucHV0VGV4dHVyZSk7Ci0gICAgbV9jb250ZXh0LT5k
cmF3RWxlbWVudHMoR3JhcGhpY3NDb250ZXh0M0Q6OlRSSUFOR0xFUywgbV9tZXNoLT5pbmRpY2Vz
Q291bnQoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OlVOU0lHTkVEX1NIT1JULCAwKTsKLSAgICB1bmJp
bmRWZXJ0ZXhBdHRyaWJ1dGVzKCk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OnNl
dENvbXBpbGVkUHJvZ3JhbShQYXNzUmVmUHRyPEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbT4g
Y29tcGlsZWRQcm9ncmFtKQotewotICAgIG1fY29tcGlsZWRQcm9ncmFtID0gY29tcGlsZWRQcm9n
cmFtOwotfQotCi1ib29sIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpwcmVwYXJlRm9yRHJhd2luZygp
Ci17Ci0gICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJlbnQoKTsKLSAgICBpZiAoIW1fY29t
cGlsZWRQcm9ncmFtIHx8ICFtX2NvbXBpbGVkUHJvZ3JhbS0+aXNJbml0aWFsaXplZCgpKQotICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgaW5pdGlhbGl6ZU1lc2hJZk5lZWRlZCgpOwotICAgIHJl
dHVybiB0cnVlOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjppbml0aWFsaXplTWVz
aElmTmVlZGVkKCkKLXsKLSAgICBpZiAobV9tZXNoLmdldCgpKQotICAgICAgICByZXR1cm47Ci0K
LSAgICAvLyBGSVhNRTogU2hhcmluZyB0aGUgbWVzaCB3b3VsZCBqdXN0IHNhdmUgdGhlIHRpbWUg
bmVlZGVkIHRvIHVwbG9hZCBpdCB0byB0aGUgR1BVLCBzbyBJIGFzc3VtZSB3ZSBjb3VsZAotICAg
IC8vIGJlbmNobWFyayB0aGF0IGZvciBwZXJmb3JtYW5jZS4KLSAgICAvLyBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg0MjkKLSAgICBtX21lc2ggPSBDdXN0b21GaWx0
ZXJNZXNoOjpjcmVhdGUobV9jb250ZXh0LmdldCgpLCBtX21lc2hDb2x1bW5zLCBtX21lc2hSb3dz
LCBGbG9hdFJlY3QoMCwgMCwgMSwgMSksIG1fbWVzaFR5cGUpOwotfQotCi12b2lkIEN1c3RvbUZp
bHRlclJlbmRlcmVyOjpiaW5kVmVydGV4QXR0cmlidXRlKGludCBhdHRyaWJ1dGVMb2NhdGlvbiwg
dW5zaWduZWQgc2l6ZSwgdW5zaWduZWQgb2Zmc2V0KQotewotICAgIGlmIChhdHRyaWJ1dGVMb2Nh
dGlvbiAhPSAtMSkgewotICAgICAgICBtX2NvbnRleHQtPnZlcnRleEF0dHJpYlBvaW50ZXIoYXR0
cmlidXRlTG9jYXRpb24sIHNpemUsIEdyYXBoaWNzQ29udGV4dDNEOjpGTE9BVCwgZmFsc2UsIG1f
bWVzaC0+Ynl0ZXNQZXJWZXJ0ZXgoKSwgb2Zmc2V0KTsKLSAgICAgICAgbV9jb250ZXh0LT5lbmFi
bGVWZXJ0ZXhBdHRyaWJBcnJheShhdHRyaWJ1dGVMb2NhdGlvbik7Ci0gICAgfQotfQotCi12b2lk
IEN1c3RvbUZpbHRlclJlbmRlcmVyOjp1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGUoaW50IGF0dHJpYnV0
ZUxvY2F0aW9uKQotewotICAgIGlmIChhdHRyaWJ1dGVMb2NhdGlvbiAhPSAtMSkKLSAgICAgICAg
bV9jb250ZXh0LT5kaXNhYmxlVmVydGV4QXR0cmliQXJyYXkoYXR0cmlidXRlTG9jYXRpb24pOwot
fQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpiaW5kUHJvZ3JhbUFycmF5UGFyYW1ldGVy
cyhpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciogYXJyYXlQ
YXJhbWV0ZXIpCi17Ci0gICAgdW5zaWduZWQgcGFyYW1ldGVyU2l6ZSA9IGFycmF5UGFyYW1ldGVy
LT5zaXplKCk7Ci0gICAgVmVjdG9yPEdDM0RmbG9hdD4gZmxvYXRWZWN0b3I7Ci0KLSAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpIDwgcGFyYW1ldGVyU2l6ZTsgKytpKQotICAgICAgICBmbG9hdFZl
Y3Rvci5hcHBlbmQoYXJyYXlQYXJhbWV0ZXItPnZhbHVlQXQoaSkpOwotCi0gICAgbV9jb250ZXh0
LT51bmlmb3JtMWZ2KHVuaWZvcm1Mb2NhdGlvbiwgcGFyYW1ldGVyU2l6ZSwgZmxvYXRWZWN0b3Iu
ZGF0YSgpKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6YmluZFByb2dyYW1Db2xv
clBhcmFtZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0
ZXIqIGNvbG9yUGFyYW1ldGVyKQotewotICAgIGZsb2F0IHIsIGcsIGIsIGE7Ci0gICAgY29sb3JQ
YXJhbWV0ZXItPmNvbG9yKCkuZ2V0UkdCQShyLCBnLCBiLCBhKTsKLQotICAgIG1fY29udGV4dC0+
dW5pZm9ybTRmKHVuaWZvcm1Mb2NhdGlvbiwgciwgZywgYiwgYSk7Ci19Ci0KLXZvaWQgQ3VzdG9t
RmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9ncmFtTWF0cml4UGFyYW1ldGVycyhpbnQgdW5pZm9ybUxv
Y2F0aW9uLCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciogbWF0cml4UGFyYW1ldGVyKQotewot
ICAgIHVuc2lnbmVkIHBhcmFtZXRlclNpemUgPSBtYXRyaXhQYXJhbWV0ZXItPnNpemUoKTsKLSAg
ICBWZWN0b3I8R0MzRGZsb2F0LCAxNj4gZmxvYXRWZWN0b3I7Ci0KLSAgICBmb3IgKHVuc2lnbmVk
IGkgPSAwOyBpIDwgcGFyYW1ldGVyU2l6ZTsgKytpKQotICAgICAgICBmbG9hdFZlY3Rvci5hcHBl
bmQobWF0cml4UGFyYW1ldGVyLT52YWx1ZUF0KGkpKTsKLQotICAgIHN3aXRjaCAocGFyYW1ldGVy
U2l6ZSkgewotICAgIGNhc2UgNDoKLSAgICAgICAgbV9jb250ZXh0LT51bmlmb3JtTWF0cml4MmZ2
KHVuaWZvcm1Mb2NhdGlvbiwgMSwgZmFsc2UsIGZsb2F0VmVjdG9yLmRhdGEoKSk7Ci0gICAgICAg
IGJyZWFrOwotICAgIGNhc2UgOToKLSAgICAgICAgbV9jb250ZXh0LT51bmlmb3JtTWF0cml4M2Z2
KHVuaWZvcm1Mb2NhdGlvbiwgMSwgZmFsc2UsIGZsb2F0VmVjdG9yLmRhdGEoKSk7Ci0gICAgICAg
IGJyZWFrOwotICAgIGNhc2UgMTY6Ci0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybU1hdHJpeDRm
dih1bmlmb3JtTG9jYXRpb24sIDEsIGZhbHNlLCBmbG9hdFZlY3Rvci5kYXRhKCkpOwotICAgICAg
ICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAg
ICB9Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9ncmFtTnVtYmVyUGFy
YW1ldGVycyhpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIq
IG51bWJlclBhcmFtZXRlcikKLXsKLSAgICBzd2l0Y2ggKG51bWJlclBhcmFtZXRlci0+c2l6ZSgp
KSB7Ci0gICAgY2FzZSAxOgotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm0xZih1bmlmb3JtTG9j
YXRpb24sIG51bWJlclBhcmFtZXRlci0+dmFsdWVBdCgwKSk7Ci0gICAgICAgIGJyZWFrOwotICAg
IGNhc2UgMjoKLSAgICAgICAgbV9jb250ZXh0LT51bmlmb3JtMmYodW5pZm9ybUxvY2F0aW9uLCBu
dW1iZXJQYXJhbWV0ZXItPnZhbHVlQXQoMCksIG51bWJlclBhcmFtZXRlci0+dmFsdWVBdCgxKSk7
Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgMzoKLSAgICAgICAgbV9jb250ZXh0LT51bmlmb3Jt
M2YodW5pZm9ybUxvY2F0aW9uLCBudW1iZXJQYXJhbWV0ZXItPnZhbHVlQXQoMCksIG51bWJlclBh
cmFtZXRlci0+dmFsdWVBdCgxKSwgbnVtYmVyUGFyYW1ldGVyLT52YWx1ZUF0KDIpKTsKLSAgICAg
ICAgYnJlYWs7Ci0gICAgY2FzZSA0OgotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm00Zih1bmlm
b3JtTG9jYXRpb24sIG51bWJlclBhcmFtZXRlci0+dmFsdWVBdCgwKSwgbnVtYmVyUGFyYW1ldGVy
LT52YWx1ZUF0KDEpLCBudW1iZXJQYXJhbWV0ZXItPnZhbHVlQXQoMiksIG51bWJlclBhcmFtZXRl
ci0+dmFsdWVBdCgzKSk7Ci0gICAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIH0KLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJl
cjo6YmluZFByb2dyYW1UcmFuc2Zvcm1QYXJhbWV0ZXIoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3Vz
dG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKiB0cmFuc2Zvcm1QYXJhbWV0ZXIpCi17Ci0gICAg
VHJhbnNmb3JtYXRpb25NYXRyaXggbWF0cml4OwotICAgIGlmIChtX2NvbnRleHRTaXplLndpZHRo
KCkgJiYgbV9jb250ZXh0U2l6ZS5oZWlnaHQoKSkgewotICAgICAgICAvLyBUaGUgdmlld3BvcnQg
aXMgYSBib3ggd2l0aCB0aGUgc2l6ZSBvZiAxIHVuaXQsIHNvIHdlIGFyZSBzY2FsaW5nIHVwIGhl
cmUgdG8gbWFrZSBzdXJlIHRoYXQgdHJhbnNsYXRpb25zIGhhcHBlbiB1c2luZyByZWFsIHBpeGVs
Ci0gICAgICAgIC8vIHVuaXRzLiBBdCB0aGUgZW5kIHdlIHNjYWxlIGJhY2sgZG93biBpbiBvcmRl
ciB0byBtYXAgaXQgYmFjayB0byB0aGUgb3JpZ2luYWwgYm94LiBOb3RlIHRoYXQgdHJhbnNmb3Jt
cyBjb21lIGluIHJldmVyc2Ugb3JkZXIsIGJlY2F1c2UgaXQgaXMKLSAgICAgICAgLy8gc3VwcG9z
ZWQgdG8gbXVsdGlwbHkgdG8gdGhlIGxlZnQgb2YgdGhlIGNvb3JkaW5hdGVzIG9mIHRoZSB2ZXJ0
aWNlcy4KLSAgICAgICAgLy8gTm90ZSB0aGF0IHRoZSBvcmlnaW4gKDAsIDApIG9mIHRoZSB2aWV3
cG9ydCBpcyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBjb250ZXh0LCBzbyB0aGVyZSdzIG5vIG5lZWQg
dG8gY2hhbmdlIHRoZSBvcmlnaW4gb2YgdGhlIHRyYW5zZm9ybQotICAgICAgICAvLyBpbiBvcmRl
ciB0byByb3RhdGUgYXJvdW5kIHRoZSBtaWRkbGUgb2YgbWVzaC4KLSAgICAgICAgbWF0cml4LnNj
YWxlM2QoMS4wIC8gbV9jb250ZXh0U2l6ZS53aWR0aCgpLCAxLjAgLyBtX2NvbnRleHRTaXplLmhl
aWdodCgpLCAxKTsKLSAgICAgICAgdHJhbnNmb3JtUGFyYW1ldGVyLT5hcHBseVRyYW5zZm9ybSht
YXRyaXgsIG1fY29udGV4dFNpemUpOwotICAgICAgICBtYXRyaXguc2NhbGUzZChtX2NvbnRleHRT
aXplLndpZHRoKCksIG1fY29udGV4dFNpemUuaGVpZ2h0KCksIDEpOwotICAgIH0KLSAgICBmbG9h
dCBnbE1hdHJpeFsxNl07Ci0gICAgbWF0cml4LnRvQ29sdW1uTWFqb3JGbG9hdEFycmF5KGdsTWF0
cml4KTsKLSAgICBtX2NvbnRleHQtPnVuaWZvcm1NYXRyaXg0ZnYodW5pZm9ybUxvY2F0aW9uLCAx
LCBmYWxzZSwgJmdsTWF0cml4WzBdKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6
YmluZFByb2dyYW1QYXJhbWV0ZXJzKCkKLXsKLSAgICAvLyBGSVhNRTogRmluZCBhIHdheSB0byBy
ZXNldCB1bmlmb3JtcyB0aGF0IGFyZSBub3Qgc3BlY2lmaWVkIGluIENTUy4gVGhpcyBpcyBuZWVk
ZWQgdG8gYXZvaWQgdXNpbmcgdmFsdWVzCi0gICAgLy8gc2V0IGJ5IG90aGVyIHByZXZpb3VzIHJl
bmRlcmVkIGZpbHRlcnMuCi0gICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTc2NDQwCi0KLSAgICBzaXplX3QgcGFyYW1ldGVyc1NpemUgPSBtX3BhcmFtZXRlcnMu
c2l6ZSgpOwotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcGFyYW1ldGVyc1NpemU7ICsraSkg
ewotICAgICAgICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIqIHBhcmFtZXRlciA9IG1fcGFyYW1ldGVy
cy5hdChpKS5nZXQoKTsKLSAgICAgICAgaW50IHVuaWZvcm1Mb2NhdGlvbiA9IG1fY29tcGlsZWRQ
cm9ncmFtLT51bmlmb3JtTG9jYXRpb25CeU5hbWUocGFyYW1ldGVyLT5uYW1lKCkpOwotICAgICAg
ICBpZiAodW5pZm9ybUxvY2F0aW9uID09IC0xKQotICAgICAgICAgICAgY29udGludWU7Ci0gICAg
ICAgIHN3aXRjaCAocGFyYW1ldGVyLT5wYXJhbWV0ZXJUeXBlKCkpIHsKLSAgICAgICAgY2FzZSBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXI6OkFSUkFZOgotICAgICAgICAgICAgYmluZFByb2dyYW1BcnJh
eVBhcmFtZXRlcnModW5pZm9ybUxvY2F0aW9uLCBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJBcnJh
eVBhcmFtZXRlcio+KHBhcmFtZXRlcikpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNh
c2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpDT0xPUjogICAgICAgIAotICAgICAgICAgICAgYmlu
ZFByb2dyYW1Db2xvclBhcmFtZXRlcnModW5pZm9ybUxvY2F0aW9uLCBzdGF0aWNfY2FzdDxDdXN0
b21GaWx0ZXJDb2xvclBhcmFtZXRlcio+KHBhcmFtZXRlcikpOwotICAgICAgICAgICAgYnJlYWs7
Ci0gICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpNQVRSSVg6Ci0gICAgICAgICAg
ICBiaW5kUHJvZ3JhbU1hdHJpeFBhcmFtZXRlcnModW5pZm9ybUxvY2F0aW9uLCBzdGF0aWNfY2Fz
dDxDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcio+KHBhcmFtZXRlcikpOwotICAgICAgICAgICAg
YnJlYWs7Ci0gICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpOVU1CRVI6Ci0gICAg
ICAgICAgICBiaW5kUHJvZ3JhbU51bWJlclBhcmFtZXRlcnModW5pZm9ybUxvY2F0aW9uLCBzdGF0
aWNfY2FzdDxDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICAg
ICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6VFJBTlNG
T1JNOgotICAgICAgICAgICAgYmluZFByb2dyYW1UcmFuc2Zvcm1QYXJhbWV0ZXIodW5pZm9ybUxv
Y2F0aW9uLCBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqPihwYXJh
bWV0ZXIpKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgfQotfQotCi12b2lk
IEN1c3RvbUZpbHRlclJlbmRlcmVyOjpiaW5kUHJvZ3JhbUFuZEJ1ZmZlcnMoUGxhdGZvcm0zRE9i
amVjdCBpbnB1dFRleHR1cmUpCi17Ci0gICAgQVNTRVJUKG1fY29tcGlsZWRQcm9ncmFtLT5pc0lu
aXRpYWxpemVkKCkpOwotCi0gICAgbV9jb250ZXh0LT51c2VQcm9ncmFtKG1fY29tcGlsZWRQcm9n
cmFtLT5wcm9ncmFtKCkpOwotCi0gICAgaWYgKHByb2dyYW1OZWVkc0lucHV0VGV4dHVyZSgpKSB7
Ci0gICAgICAgIC8vIFdlIHNob3VsZCBiZSBiaW5kaW5nIHRoZSBET00gZWxlbWVudCB0ZXh0dXJl
IHNhbXBsZXIgb25seSBpZiB0aGUgYXV0aG9yIGlzIHVzaW5nIHRoZSBDU1MgbWl4IGZ1bmN0aW9u
LgotICAgICAgICBBU1NFUlQobV9wcm9ncmFtVHlwZSA9PSBQUk9HUkFNX1RZUEVfQkxFTkRTX0VM
RU1FTlRfVEVYVFVSRSk7Ci0gICAgICAgIEFTU0VSVChtX2NvbXBpbGVkUHJvZ3JhbS0+c2FtcGxl
ckxvY2F0aW9uKCkgIT0gLTEpOwotCi0gICAgICAgIG1fY29udGV4dC0+YWN0aXZlVGV4dHVyZShH
cmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRTApOwotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm0x
aShtX2NvbXBpbGVkUHJvZ3JhbS0+c2FtcGxlckxvY2F0aW9uKCksIDApOwotICAgICAgICBtX2Nv
bnRleHQtPmJpbmRUZXh0dXJlKEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFXzJELCBpbnB1dFRl
eHR1cmUpOwotICAgICAgICBtX2NvbnRleHQtPnRleFBhcmFtZXRlcmkoR3JhcGhpY3NDb250ZXh0
M0Q6OlRFWFRVUkVfMkQsIEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFX01JTl9GSUxURVIsIEdy
YXBoaWNzQ29udGV4dDNEOjpMSU5FQVIpOwotICAgICAgICBtX2NvbnRleHQtPnRleFBhcmFtZXRl
cmkoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfMkQsIEdyYXBoaWNzQ29udGV4dDNEOjpURVhU
VVJFX01BR19GSUxURVIsIEdyYXBoaWNzQ29udGV4dDNEOjpMSU5FQVIpOwotICAgICAgICBtX2Nv
bnRleHQtPnRleFBhcmFtZXRlcmkoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfMkQsIEdyYXBo
aWNzQ29udGV4dDNEOjpURVhUVVJFX1dSQVBfUywgR3JhcGhpY3NDb250ZXh0M0Q6OkNMQU1QX1RP
X0VER0UpOwotICAgICAgICBtX2NvbnRleHQtPnRleFBhcmFtZXRlcmkoR3JhcGhpY3NDb250ZXh0
M0Q6OlRFWFRVUkVfMkQsIEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFX1dSQVBfVCwgR3JhcGhp
Y3NDb250ZXh0M0Q6OkNMQU1QX1RPX0VER0UpOwotICAgIH0KLQotICAgIGlmIChtX2NvbXBpbGVk
UHJvZ3JhbS0+cHJvamVjdGlvbk1hdHJpeExvY2F0aW9uKCkgIT0gLTEpIHsKLSAgICAgICAgVHJh
bnNmb3JtYXRpb25NYXRyaXggcHJvamVjdGlvbk1hdHJpeDsKLSAgICAgICAgb3J0aG9nb25hbFBy
b2plY3Rpb25NYXRyaXgocHJvamVjdGlvbk1hdHJpeCwgLTAuNSwgMC41LCAtMC41LCAwLjUpOwot
ICAgICAgICBmbG9hdCBnbFByb2plY3Rpb25NYXRyaXhbMTZdOwotICAgICAgICBwcm9qZWN0aW9u
TWF0cml4LnRvQ29sdW1uTWFqb3JGbG9hdEFycmF5KGdsUHJvamVjdGlvbk1hdHJpeCk7Ci0gICAg
ICAgIG1fY29udGV4dC0+dW5pZm9ybU1hdHJpeDRmdihtX2NvbXBpbGVkUHJvZ3JhbS0+cHJvamVj
dGlvbk1hdHJpeExvY2F0aW9uKCksIDEsIGZhbHNlLCAmZ2xQcm9qZWN0aW9uTWF0cml4WzBdKTsK
LSAgICB9Ci0KLSAgICBBU1NFUlQobV9tZXNoQ29sdW1ucyk7Ci0gICAgQVNTRVJUKG1fbWVzaFJv
d3MpOwotCi0gICAgaWYgKG1fY29tcGlsZWRQcm9ncmFtLT5tZXNoU2l6ZUxvY2F0aW9uKCkgIT0g
LTEpCi0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybTJmKG1fY29tcGlsZWRQcm9ncmFtLT5tZXNo
U2l6ZUxvY2F0aW9uKCksIG1fbWVzaENvbHVtbnMsIG1fbWVzaFJvd3MpOwotCi0gICAgaWYgKG1f
Y29tcGlsZWRQcm9ncmFtLT50aWxlU2l6ZUxvY2F0aW9uKCkgIT0gLTEpCi0gICAgICAgIG1fY29u
dGV4dC0+dW5pZm9ybTJmKG1fY29tcGlsZWRQcm9ncmFtLT50aWxlU2l6ZUxvY2F0aW9uKCksIDEu
MCAvIG1fbWVzaENvbHVtbnMsIDEuMCAvIG1fbWVzaFJvd3MpOwotCi0gICAgaWYgKG1fY29tcGls
ZWRQcm9ncmFtLT5tZXNoQm94TG9jYXRpb24oKSAhPSAtMSkgewotICAgICAgICAvLyBGSVhNRTog
VGhpcyB3aWxsIGNoYW5nZSB3aGVuIGZpbHRlciBtYXJnaW5zIHdpbGwgYmUgaW1wbGVtZW50ZWQs
Ci0gICAgICAgIC8vIHNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzE0MDAKLSAgICAgICAgbV9jb250ZXh0LT51bmlmb3JtNGYobV9jb21waWxlZFByb2dyYW0tPm1l
c2hCb3hMb2NhdGlvbigpLCAtMC41LCAtMC41LCAxLjAsIDEuMCk7Ci0gICAgfQotCi0gICAgaWYg
KG1fY29tcGlsZWRQcm9ncmFtLT5zYW1wbGVyU2l6ZUxvY2F0aW9uKCkgIT0gLTEpCi0gICAgICAg
IG1fY29udGV4dC0+dW5pZm9ybTJmKG1fY29tcGlsZWRQcm9ncmFtLT5zYW1wbGVyU2l6ZUxvY2F0
aW9uKCksIG1fY29udGV4dFNpemUud2lkdGgoKSwgbV9jb250ZXh0U2l6ZS5oZWlnaHQoKSk7Ci0K
LSAgICBtX2NvbnRleHQtPmJpbmRCdWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkFSUkFZX0JVRkZF
UiwgbV9tZXNoLT52ZXJ0aWNlc0J1ZmZlck9iamVjdCgpKTsKLSAgICBtX2NvbnRleHQtPmJpbmRC
dWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkVMRU1FTlRfQVJSQVlfQlVGRkVSLCBtX21lc2gtPmVs
ZW1lbnRzQnVmZmVyT2JqZWN0KCkpOwotCi0gICAgYmluZFZlcnRleEF0dHJpYnV0ZShtX2NvbXBp
bGVkUHJvZ3JhbS0+cG9zaXRpb25BdHRyaWJMb2NhdGlvbigpLCBQb3NpdGlvbkF0dHJpYlNpemUs
IFBvc2l0aW9uQXR0cmliT2Zmc2V0KTsKLSAgICBiaW5kVmVydGV4QXR0cmlidXRlKG1fY29tcGls
ZWRQcm9ncmFtLT50ZXhBdHRyaWJMb2NhdGlvbigpLCBUZXhBdHRyaWJTaXplLCBUZXhBdHRyaWJP
ZmZzZXQpOwotICAgIGJpbmRWZXJ0ZXhBdHRyaWJ1dGUobV9jb21waWxlZFByb2dyYW0tPm1lc2hB
dHRyaWJMb2NhdGlvbigpLCBNZXNoQXR0cmliU2l6ZSwgTWVzaEF0dHJpYk9mZnNldCk7Ci0gICAg
aWYgKG1fbWVzaFR5cGUgPT0gTWVzaFR5cGVEZXRhY2hlZCkKLSAgICAgICAgYmluZFZlcnRleEF0
dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3JhbS0+dHJpYW5nbGVBdHRyaWJMb2NhdGlvbigpLCBUcmlh
bmdsZUF0dHJpYlNpemUsIFRyaWFuZ2xlQXR0cmliT2Zmc2V0KTsKLQotICAgIGJpbmRQcm9ncmFt
UGFyYW1ldGVycygpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjp1bmJpbmRWZXJ0
ZXhBdHRyaWJ1dGVzKCkKLXsKLSAgICB1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGUobV9jb21waWxlZFBy
b2dyYW0tPnBvc2l0aW9uQXR0cmliTG9jYXRpb24oKSk7Ci0gICAgdW5iaW5kVmVydGV4QXR0cmli
dXRlKG1fY29tcGlsZWRQcm9ncmFtLT50ZXhBdHRyaWJMb2NhdGlvbigpKTsKLSAgICB1bmJpbmRW
ZXJ0ZXhBdHRyaWJ1dGUobV9jb21waWxlZFByb2dyYW0tPm1lc2hBdHRyaWJMb2NhdGlvbigpKTsK
LSAgICBpZiAobV9tZXNoVHlwZSA9PSBNZXNoVHlwZURldGFjaGVkKQotICAgICAgICB1bmJpbmRW
ZXJ0ZXhBdHRyaWJ1dGUobV9jb21waWxlZFByb2dyYW0tPnRyaWFuZ2xlQXR0cmliTG9jYXRpb24o
KSk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1Nf
U0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5o
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjY2RjMjlmLi4wMDAwMDAwCi0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUmVuZGVy
ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDEwNSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEyIENvbXBhbnkgMTAwLCBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KA
nSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0g
KiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyUmVu
ZGVyZXJfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJSZW5kZXJlcl9oCi0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNv
bnN0YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaCIKLSNpbmNs
dWRlICJHcmFwaGljc1R5cGVzM0QuaCIKLSNpbmNsdWRlICJJbnRTaXplLmgiCi0jaW5jbHVkZSA8
d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBX
ZWJDb3JlIHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI7Ci1jbGFzcyBDdXN0
b21GaWx0ZXJDb2xvclBhcmFtZXRlcjsKLWNsYXNzIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bTsKLWNsYXNzIEN1c3RvbUZpbHRlck1lc2g7Ci1jbGFzcyBDdXN0b21GaWx0ZXJOdW1iZXJQYXJh
bWV0ZXI7Ci1jbGFzcyBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXI7Ci1jbGFzcyBHcmFw
aGljc0NvbnRleHQzRDsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyUmVuZGVyZXIgOiBwdWJsaWMgUmVm
Q291bnRlZDxDdXN0b21GaWx0ZXJSZW5kZXJlcj4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNz
UmVmUHRyPEN1c3RvbUZpbHRlclJlbmRlcmVyPiBjcmVhdGUoUGFzc1JlZlB0cjxHcmFwaGljc0Nv
bnRleHQzRD4sIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0JiwKLSAgICAgICAgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1
bW5zLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSk7Ci0gICAgfkN1c3RvbUZpbHRlclJlbmRlcmVyKCk7
Ci0KLSAgICBib29sIHByZW11bHRpcGxpZWRBbHBoYSgpIGNvbnN0OwotICAgIGJvb2wgcHJvZ3Jh
bU5lZWRzSW5wdXRUZXh0dXJlKCkgY29uc3Q7Ci0KLSAgICBib29sIHByZXBhcmVGb3JEcmF3aW5n
KCk7Ci0KLSAgICB2b2lkIGRyYXcoUGxhdGZvcm0zRE9iamVjdCwgY29uc3QgSW50U2l6ZSYpOwot
Ci0gICAgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtKiBjb21waWxlZFByb2dyYW0oKSBjb25z
dCB7IHJldHVybiBtX2NvbXBpbGVkUHJvZ3JhbS5nZXQoKTsgfQotICAgIHZvaWQgc2V0Q29tcGls
ZWRQcm9ncmFtKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPik7Ci0KLXBy
aXZhdGU6Ci0gICAgQ3VzdG9tRmlsdGVyUmVuZGVyZXIoUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRl
eHQzRD4sIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXJMaXN0JiwKLSAgICAgICAgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5z
LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSk7Ci0KLSAgICB2b2lkIGluaXRpYWxpemVDb21waWxlZFBy
b2dyYW1JZk5lZWRlZCgpOwotICAgIHZvaWQgaW5pdGlhbGl6ZU1lc2hJZk5lZWRlZCgpOwotCi0g
ICAgdm9pZCBiaW5kVmVydGV4QXR0cmlidXRlKGludCBhdHRyaWJ1dGVMb2NhdGlvbiwgdW5zaWdu
ZWQgc2l6ZSwgdW5zaWduZWQgb2Zmc2V0KTsKLSAgICB2b2lkIHVuYmluZFZlcnRleEF0dHJpYnV0
ZShpbnQgYXR0cmlidXRlTG9jYXRpb24pOwotICAgIHZvaWQgYmluZFByb2dyYW1BcnJheVBhcmFt
ZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIqKTsK
LSAgICB2b2lkIGJpbmRQcm9ncmFtQ29sb3JQYXJhbWV0ZXJzKGludCB1bmlmb3JtTG9jYXRpb24s
IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKik7Ci0gICAgdm9pZCBiaW5kUHJvZ3JhbU1hdHJp
eFBhcmFtZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0
ZXIqKTsKLSAgICB2b2lkIGJpbmRQcm9ncmFtTnVtYmVyUGFyYW1ldGVycyhpbnQgdW5pZm9ybUxv
Y2F0aW9uLCBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIqKTsKLSAgICB2b2lkIGJpbmRQcm9n
cmFtVHJhbnNmb3JtUGFyYW1ldGVyKGludCB1bmlmb3JtTG9jYXRpb24sIEN1c3RvbUZpbHRlclRy
YW5zZm9ybVBhcmFtZXRlciopOwotICAgIHZvaWQgYmluZFByb2dyYW1QYXJhbWV0ZXJzKCk7Ci0g
ICAgdm9pZCBiaW5kUHJvZ3JhbUFuZEJ1ZmZlcnMoUGxhdGZvcm0zRE9iamVjdCBpbnB1dFRleHR1
cmUpOwotICAgIHZvaWQgdW5iaW5kVmVydGV4QXR0cmlidXRlcygpOwotCi0gICAgUmVmUHRyPEdy
YXBoaWNzQ29udGV4dDNEPiBtX2NvbnRleHQ7Ci0gICAgUmVmUHRyPEN1c3RvbUZpbHRlckNvbXBp
bGVkUHJvZ3JhbT4gbV9jb21waWxlZFByb2dyYW07Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5
cGUgbV9wcm9ncmFtVHlwZTsKLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyTWVzaD4gbV9tZXNoOwot
ICAgIEludFNpemUgbV9jb250ZXh0U2l6ZTsKLQotICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3QgbV9wYXJhbWV0ZXJzOwotCi0gICAgdW5zaWduZWQgbV9tZXNoUm93czsKLSAgICB1bnNpZ25l
ZCBtX21lc2hDb2x1bW5zOwotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1fbWVzaFR5cGU7Ci19
OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURF
UlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2VuZGlmIC8vIEN1c3RvbUZpbHRlclJlbmRlcmVy
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1YmQ2NjExLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFy
YW1ldGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMDIgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFp
bWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VD
SCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXJf
aAotI2RlZmluZSBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXJfaAotCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlci5oIgotI2luY2x1
ZGUgIkZsb2F0U2l6ZS5oIgotI2luY2x1ZGUgIlRyYW5zZm9ybU9wZXJhdGlvbnMuaCIKLQotbmFt
ZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBGbG9hdFJlY3Q7Ci1jbGFzcyBUcmFuc2Zvcm1hdGlv
bk1hdHJpeDsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyIDogcHVibGlj
IEN1c3RvbUZpbHRlclBhcmFtZXRlciB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
Q3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyPiBjcmVhdGUoY29uc3QgU3RyaW5nJiBuYW1l
KQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0b21GaWx0ZXJUcmFuc2Zv
cm1QYXJhbWV0ZXIobmFtZSkpOwotICAgIH0KLQotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxDdXN0
b21GaWx0ZXJQYXJhbWV0ZXI+IGJsZW5kKGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlciogZnJv
bVBhcmFtZXRlciwgZG91YmxlIHByb2dyZXNzLCBjb25zdCBMYXlvdXRTaXplJiBzaXplKQotICAg
IHsKLSAgICAgICAgaWYgKCFmcm9tUGFyYW1ldGVyIHx8ICFpc1NhbWVUeXBlKCpmcm9tUGFyYW1l
dGVyKSkKLSAgICAgICAgICAgIHJldHVybiB0aGlzOwotCi0gICAgICAgIGNvbnN0IEN1c3RvbUZp
bHRlclRyYW5zZm9ybVBhcmFtZXRlciogZnJvbVRyYW5zZm9ybVBhcmFtZXRlciA9IHN0YXRpY19j
YXN0PGNvbnN0IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcio+KGZyb21QYXJhbWV0ZXIp
OwotICAgICAgICBjb25zdCBUcmFuc2Zvcm1PcGVyYXRpb25zJiBmcm9tID0gZnJvbVRyYW5zZm9y
bVBhcmFtZXRlci0+b3BlcmF0aW9ucygpOwotICAgICAgICBjb25zdCBUcmFuc2Zvcm1PcGVyYXRp
b25zJiB0byA9IG9wZXJhdGlvbnMoKTsKLSAgICAgICAgaWYgKGZyb20gPT0gdG8pCi0gICAgICAg
ICAgICByZXR1cm4gdGhpczsKLSAgICAgICAKLSAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlclRy
YW5zZm9ybVBhcmFtZXRlcj4gcmVzdWx0ID0gQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVy
OjpjcmVhdGUobmFtZSgpKTsKLSAgICAgICAgaWYgKGZyb20uc2l6ZSgpICYmIHRvLnNpemUoKSkK
LSAgICAgICAgICAgIHJlc3VsdC0+c2V0T3BlcmF0aW9ucyh0by5ibGVuZChmcm9tLCBwcm9ncmVz
cywgc2l6ZSkpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXN1bHQtPnNldE9wZXJhdGlv
bnMocHJvZ3Jlc3MgPiAwLjUgPyB0byA6IGZyb20pOwotICAgICAgICByZXR1cm4gcmVzdWx0Owot
ICAgIH0KLQotICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEN1c3RvbUZpbHRlclBh
cmFtZXRlciYgbykgY29uc3QKLSAgICB7Ci0gICAgICAgIGlmICghaXNTYW1lVHlwZShvKSkKLSAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyVHJhbnNm
b3JtUGFyYW1ldGVyKiBvdGhlciA9IHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlclRyYW5z
Zm9ybVBhcmFtZXRlcio+KCZvKTsKLSAgICAgICAgcmV0dXJuIG1fb3BlcmF0aW9ucyA9PSBvdGhl
ci0+bV9vcGVyYXRpb25zOwotICAgIH0KLQotICAgIHZvaWQgYXBwbHlUcmFuc2Zvcm0oVHJhbnNm
b3JtYXRpb25NYXRyaXgmIHRyYW5zZm9ybSwgY29uc3QgRmxvYXRTaXplJiBib3hTaXplKSBjb25z
dAotICAgIHsKLSAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMCwgc2l6ZSA9IG1fb3BlcmF0aW9u
cy5zaXplKCk7IGkgPCBzaXplOyArK2kpCi0gICAgICAgICAgICBtX29wZXJhdGlvbnMuYXQoaSkt
PmFwcGx5KHRyYW5zZm9ybSwgYm94U2l6ZSk7Ci0gICAgfQotCi0gICAgY29uc3QgVHJhbnNmb3Jt
T3BlcmF0aW9ucyYgb3BlcmF0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1fb3BlcmF0aW9uczsgfQot
ICAgIHZvaWQgc2V0T3BlcmF0aW9ucyhjb25zdCBUcmFuc2Zvcm1PcGVyYXRpb25zJiB2YWx1ZSkg
eyBtX29wZXJhdGlvbnMgPSB2YWx1ZTsgfQotICAgIAotcHJpdmF0ZToKLSAgICBDdXN0b21GaWx0
ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lKQotICAgICAgICA6IEN1c3Rv
bUZpbHRlclBhcmFtZXRlcihUUkFOU0ZPUk0sIG5hbWUpCi0gICAgewotICAgIH0KLSAgICB2aXJ0
dWFsIH5DdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIoKQotICAgIHsKLSAgICB9Ci0gICAg
Ci0gICAgVHJhbnNmb3JtT3BlcmF0aW9ucyBtX29wZXJhdGlvbnM7Ci19OwotCi19IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAv
LyBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9n
cmFtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGFkY2UxYTguLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcAorKysgL2Rldi9udWxsCkBA
IC0xLDYyMiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMg
SW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
LgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBI
T0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IK
LSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVk
ZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJDdXN0
b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiCi0KLSNpbmNsdWRlICJBTkdMRVdlYktpdEJyaWRn
ZS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUg
IkN1c3RvbUZpbHRlckNvbnN0YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckdsb2JhbENv
bnRleHQuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIgotI2luY2x1ZGUg
Ik5vdEltcGxlbWVudGVkLmgiCi0jaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLSNpbmNsdWRlIDx3
dGYvVmVjdG9yLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgotI2luY2x1
ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi0jZGVm
aW5lIFNIQURFUihTcmMpICgjU3JjKSAKLQotdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgU2hEYXRh
VHlwZT4gU3ltYm9sTmFtZVRvVHlwZU1hcDsKLQotc3RhdGljIFN5bWJvbE5hbWVUb1R5cGVNYXAq
IGJ1aWx0SW5BdHRyaWJ1dGVOYW1lVG9UeXBlTWFwKCkKLXsKLSAgICBzdGF0aWMgU3ltYm9sTmFt
ZVRvVHlwZU1hcCogbmFtZVRvVHlwZU1hcCA9IDA7Ci0gICAgaWYgKCFuYW1lVG9UeXBlTWFwKSB7
Ci0gICAgICAgIG5hbWVUb1R5cGVNYXAgPSBuZXcgU3ltYm9sTmFtZVRvVHlwZU1hcDsgICAgICAg
IAotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoImFfbWVzaENvb3JkIiwgU0hfRkxPQVRfVkVD
Mik7Ci0gICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgiYV9wb3NpdGlvbiIsIFNIX0ZMT0FUX1ZF
QzQpOwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoImFfdGV4Q29vcmQiLCBTSF9GTE9BVF9W
RUMyKTsKLSAgICAgICAgbmFtZVRvVHlwZU1hcC0+c2V0KCJhX3RyaWFuZ2xlQ29vcmQiLCBTSF9G
TE9BVF9WRUMzKTsKLSAgICB9Ci0gICAgcmV0dXJuIG5hbWVUb1R5cGVNYXA7Ci19Ci0KLXN0YXRp
YyBTeW1ib2xOYW1lVG9UeXBlTWFwKiBidWlsdEluVW5pZm9ybU5hbWVUb1R5cGVNYXAoKQotewot
ICAgIHN0YXRpYyBTeW1ib2xOYW1lVG9UeXBlTWFwKiBuYW1lVG9UeXBlTWFwID0gMDsKLSAgICBp
ZiAoIW5hbWVUb1R5cGVNYXApIHsKLSAgICAgICAgbmFtZVRvVHlwZU1hcCA9IG5ldyBTeW1ib2xO
YW1lVG9UeXBlTWFwOwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoInVfbWVzaEJveCIsIFNI
X0ZMT0FUX1ZFQzQpOwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoInVfbWVzaFNpemUiLCBT
SF9GTE9BVF9WRUMyKTsKLSAgICAgICAgbmFtZVRvVHlwZU1hcC0+c2V0KCJ1X3Byb2plY3Rpb25N
YXRyaXgiLCBTSF9GTE9BVF9NQVQ0KTsKLSAgICAgICAgbmFtZVRvVHlwZU1hcC0+c2V0KCJ1X3Rl
eHR1cmVTaXplIiwgU0hfRkxPQVRfVkVDMik7Ci0gICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgi
dV90aWxlU2l6ZSIsIFNIX0ZMT0FUX1ZFQzIpOwotICAgIH0KLSAgICByZXR1cm4gbmFtZVRvVHlw
ZU1hcDsKLX0KLQotc3RhdGljIGJvb2wgdmFsaWRhdGVTeW1ib2xzKGNvbnN0IFZlY3RvcjxBTkdM
RVNoYWRlclN5bWJvbD4mIHN5bWJvbHMsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQot
ewotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3ltYm9scy5zaXplKCk7ICsraSkgewotICAg
ICAgICBjb25zdCBBTkdMRVNoYWRlclN5bWJvbCYgc3ltYm9sID0gc3ltYm9sc1tpXTsKLSAgICAg
ICAgc3dpdGNoIChzeW1ib2wuc3ltYm9sVHlwZSkgewotICAgICAgICBjYXNlIFNIQURFUl9TWU1C
T0xfVFlQRV9BVFRSSUJVVEU6IHsKLSAgICAgICAgICAgIFN5bWJvbE5hbWVUb1R5cGVNYXAqIGF0
dHJpYnV0ZU5hbWVUb1R5cGVNYXAgPSBidWlsdEluQXR0cmlidXRlTmFtZVRvVHlwZU1hcCgpOwot
ICAgICAgICAgICAgU3ltYm9sTmFtZVRvVHlwZU1hcDo6aXRlcmF0b3IgYnVpbHRJbkF0dHJpYnV0
ZSA9IGF0dHJpYnV0ZU5hbWVUb1R5cGVNYXAtPmZpbmQoc3ltYm9sLm5hbWUpOwotICAgICAgICAg
ICAgaWYgKGJ1aWx0SW5BdHRyaWJ1dGUgPT0gYXR0cmlidXRlTmFtZVRvVHlwZU1hcC0+ZW5kKCkp
IHsKLSAgICAgICAgICAgICAgICAvLyBUaGUgYXV0aG9yIGRlZmluZWQgYSBjdXN0b20gYXR0cmli
dXRlLgotICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBSZXBvcnQgdGhlIHZhbGlkYXRpb24gZXJy
b3IuCi0gICAgICAgICAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTc0NDE2Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAg
fQotICAgICAgICAgICAgaWYgKG1lc2hUeXBlID09IE1lc2hUeXBlQXR0YWNoZWQgJiYgc3ltYm9s
Lm5hbWUgPT0gImFfdHJpYW5nbGVDb29yZCIpIHsKLSAgICAgICAgICAgICAgICAvLyBhX3RyaWFu
Z2xlQ29vcmQgaXMgb25seSBhdmFpbGFibGUgZm9yIGRldGFjaGVkIG1lc2hlcy4KLSAgICAgICAg
ICAgICAgICAvLyBGSVhNRTogUmVwb3J0IHRoZSB2YWxpZGF0aW9uIGVycm9yLgotICAgICAgICAg
ICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDQxNgot
ICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IGlmIChzeW1ib2wuZGF0YVR5cGUgIT0gYnVpbHRJbkF0dHJpYnV0ZS0+dmFsdWUpIHsKLSAgICAg
ICAgICAgICAgICAvLyBUaGUgYXV0aG9yIGRlZmluZWQgb25lIG9mIHRoZSBidWlsdC1pbiBhdHRy
aWJ1dGVzIHdpdGggdGhlIHdyb25nIHR5cGUuCi0gICAgICAgICAgICAgICAgLy8gRklYTUU6IFJl
cG9ydCB0aGUgdmFsaWRhdGlvbiBlcnJvci4KLSAgICAgICAgICAgICAgICAvLyBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQ0MTYKLSAgICAgICAgICAgICAgICByZXR1
cm4gZmFsc2U7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQot
ICAgICAgICBjYXNlIFNIQURFUl9TWU1CT0xfVFlQRV9VTklGT1JNOiB7Ci0gICAgICAgICAgICBp
ZiAoc3ltYm9sLmlzU2FtcGxlcigpKSB7Ci0gICAgICAgICAgICAgICAgLy8gRklYTUU6IEZvciBu
b3csIHdlIHJlc3RyaWN0IHNoYWRlcnMgd2l0aCBhbnkgc2FtcGxlciBkZWZpbmVkLgotICAgICAg
ICAgICAgICAgIC8vIFdoZW4gd2UgaW1wbGVtZW50IHRleHR1cmUgcGFyYW1ldGVycywgd2Ugd2ls
bCBhbGxvdyBzaGFkZXJzIHdob3NlIHNhbXBsZXJzIGFyZSBib3VuZCB0byB2YWxpZCB0ZXh0dXJl
cy4KLSAgICAgICAgICAgICAgICAvLyBXZSBtdXN0IG5vdCBhbGxvdyBPcGVuR0wgdG8gZ2l2ZSB1
bmJvdW5kIHNhbXBsZXJzIGEgZGVmYXVsdCB2YWx1ZSBvZiAwIGJlY2F1c2UgdGhhdCByZWZlcmVu
Y2VzIHRoZSBlbGVtZW50IHRleHR1cmUsCi0gICAgICAgICAgICAgICAgLy8gd2hpY2ggc2hvdWxk
IGJlIGluYWNjZXNzaWJsZSB0byB0aGUgYXV0aG9yJ3Mgc2hhZGVyIGNvZGUuCi0gICAgICAgICAg
ICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk2MjMwCi0g
ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAg
ICBTeW1ib2xOYW1lVG9UeXBlTWFwKiB1bmlmb3JtTmFtZVRvVHlwZU1hcCA9IGJ1aWx0SW5Vbmlm
b3JtTmFtZVRvVHlwZU1hcCgpOwotICAgICAgICAgICAgU3ltYm9sTmFtZVRvVHlwZU1hcDo6aXRl
cmF0b3IgYnVpbHRJblVuaWZvcm0gPSB1bmlmb3JtTmFtZVRvVHlwZU1hcC0+ZmluZChzeW1ib2wu
bmFtZSk7Ci0gICAgICAgICAgICBpZiAoYnVpbHRJblVuaWZvcm0gIT0gdW5pZm9ybU5hbWVUb1R5
cGVNYXAtPmVuZCgpICYmIChzeW1ib2wuaXNBcnJheSB8fCBzeW1ib2wuZGF0YVR5cGUgIT0gYnVp
bHRJblVuaWZvcm0tPnZhbHVlKSkgewotICAgICAgICAgICAgICAgIC8vIFRoZSBhdXRob3IgZGVm
aW5lZCBvbmUgb2YgdGhlIGJ1aWx0LWluIHVuaWZvcm1zIHdpdGggdGhlIHdyb25nIHR5cGUuCi0g
ICAgICAgICAgICAgICAgLy8gRklYTUU6IFJlcG9ydCB0aGUgdmFsaWRhdGlvbiBlcnJvci4KLSAg
ICAgICAgICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzQ0MTYKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgICAgICBjYXNlIFNIQURFUl9TWU1CT0xfVFlQ
RV9WQVJZSU5HOgotICAgICAgICAgICAgLy8gTm8gc3BlY2lhbCB2YWxpZGF0aW9uIGZvciB2YXJ5
aW5nIHR5cGVzLgotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGRlZmF1bHQ6Ci0gICAgICAg
ICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9
Ci0gICAgfQotCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLVN0cmluZyBDdXN0b21GaWx0ZXJWYWxp
ZGF0ZWRQcm9ncmFtOjpkZWZhdWx0VmVydGV4U2hhZGVyU3RyaW5nKCkKLXsKLSAgICBERUZJTkVf
U1RBVElDX0xPQ0FMKFN0cmluZywgdmVydGV4U2hhZGVyU3RyaW5nLCAoQVNDSUlMaXRlcmFsKFNI
QURFUigKLSAgICAgICAgYXR0cmlidXRlIG1lZGl1bXAgdmVjNCBhX3Bvc2l0aW9uOwotICAgICAg
ICB1bmlmb3JtIG1lZGl1bXAgbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci0KLSAgICAgICAgdm9p
ZCBtYWluKCkKLSAgICAgICAgewotICAgICAgICAgICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rp
b25NYXRyaXggKiBhX3Bvc2l0aW9uOwotICAgICAgICB9Ci0gICAgKSkpKTsKLSAgICByZXR1cm4g
dmVydGV4U2hhZGVyU3RyaW5nOwotfQotCi1TdHJpbmcgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJv
Z3JhbTo6ZGVmYXVsdEZyYWdtZW50U2hhZGVyU3RyaW5nKCkKLXsKLSAgICBERUZJTkVfU1RBVElD
X0xPQ0FMKFN0cmluZywgZnJhZ21lbnRTaGFkZXJTdHJpbmcsIChBU0NJSUxpdGVyYWwoU0hBREVS
KAotICAgICAgICB2b2lkIG1haW4oKQotICAgICAgICB7Ci0gICAgICAgIH0KLSAgICApKSkpOwot
ICAgIHJldHVybiBmcmFnbWVudFNoYWRlclN0cmluZzsKLX0KLQotQ3VzdG9tRmlsdGVyVmFsaWRh
dGVkUHJvZ3JhbTo6Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbShDdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0KiBnbG9iYWxDb250ZXh0LCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYg
cHJvZ3JhbUluZm8pCi0gICAgOiBtX3Byb2dyYW1JbmZvKHByb2dyYW1JbmZvKQotICAgICwgbV9p
c0luaXRpYWxpemVkKGZhbHNlKQotewotICAgIHBsYXRmb3JtSW5pdCgpOwotCi0gICAgU3RyaW5n
IG9yaWdpbmFsVmVydGV4U2hhZGVyID0gcHJvZ3JhbUluZm8udmVydGV4U2hhZGVyU3RyaW5nKCk7
Ci0gICAgaWYgKG9yaWdpbmFsVmVydGV4U2hhZGVyLmlzTnVsbCgpKQotICAgICAgICBvcmlnaW5h
bFZlcnRleFNoYWRlciA9IGRlZmF1bHRWZXJ0ZXhTaGFkZXJTdHJpbmcoKTsKLQotICAgIFN0cmlu
ZyBvcmlnaW5hbEZyYWdtZW50U2hhZGVyID0gcHJvZ3JhbUluZm8uZnJhZ21lbnRTaGFkZXJTdHJp
bmcoKTsKLSAgICBpZiAob3JpZ2luYWxGcmFnbWVudFNoYWRlci5pc051bGwoKSkKLSAgICAgICAg
b3JpZ2luYWxGcmFnbWVudFNoYWRlciA9IGRlZmF1bHRGcmFnbWVudFNoYWRlclN0cmluZygpOwot
Ci0gICAgLy8gU2hhZGVycyByZWZlcmVuY2VkIGZyb20gdGhlIENTUyBtaXggZnVuY3Rpb24gdXNl
IGEgZGlmZmVyZW50IHZhbGlkYXRvciB0aGFuIHJlZ3VsYXIgV2ViR0wgc2hhZGVycy4gU2VlIEN1
c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaCBmb3IgbW9yZSBkZXRhaWxzLgotICAgIGJvb2wgYmxl
bmRzRWxlbWVudFRleHR1cmUgPSAocHJvZ3JhbUluZm8ucHJvZ3JhbVR5cGUoKSA9PSBQUk9HUkFN
X1RZUEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRSk7Ci0gICAgQU5HTEVXZWJLaXRCcmlkZ2UqIHZh
bGlkYXRvciA9IGJsZW5kc0VsZW1lbnRUZXh0dXJlID8gZ2xvYmFsQ29udGV4dC0+bWl4U2hhZGVy
VmFsaWRhdG9yKCkgOiBnbG9iYWxDb250ZXh0LT53ZWJnbFNoYWRlclZhbGlkYXRvcigpOwotICAg
IFN0cmluZyB2ZXJ0ZXhTaGFkZXJMb2csIGZyYWdtZW50U2hhZGVyTG9nOwotICAgIFZlY3RvcjxB
TkdMRVNoYWRlclN5bWJvbD4gc3ltYm9sczsKLSAgICBib29sIHZlcnRleFNoYWRlclZhbGlkID0g
dmFsaWRhdG9yLT5jb21waWxlU2hhZGVyU291cmNlKG9yaWdpbmFsVmVydGV4U2hhZGVyLnV0Zjgo
KS5kYXRhKCksIFNIQURFUl9UWVBFX1ZFUlRFWCwgbV92YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIsIHZl
cnRleFNoYWRlckxvZywgc3ltYm9scyk7Ci0gICAgYm9vbCBmcmFnbWVudFNoYWRlclZhbGlkID0g
dmFsaWRhdG9yLT5jb21waWxlU2hhZGVyU291cmNlKG9yaWdpbmFsRnJhZ21lbnRTaGFkZXIudXRm
OCgpLmRhdGEoKSwgU0hBREVSX1RZUEVfRlJBR01FTlQsIG1fdmFsaWRhdGVkRnJhZ21lbnRTaGFk
ZXIsIGZyYWdtZW50U2hhZGVyTG9nLCBzeW1ib2xzKTsKLSAgICBpZiAoIXZlcnRleFNoYWRlclZh
bGlkIHx8ICFmcmFnbWVudFNoYWRlclZhbGlkKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBSZXBvcnQg
dGhlIHZhbGlkYXRpb24gZXJyb3JzLgotICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NzQ0MTYKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIGlm
ICghdmFsaWRhdGVTeW1ib2xzKHN5bWJvbHMsIG1fcHJvZ3JhbUluZm8ubWVzaFR5cGUoKSkpIHsK
LSAgICAgICAgLy8gRklYTUU6IFJlcG9ydCB2YWxpZGF0aW9uIGVycm9ycy4KLSAgICAgICAgLy8g
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NDE2Ci0gICAgICAgIHJl
dHVybjsKLSAgICB9Ci0KLSAgICAvLyBXZSBuZWVkIHRvIGFkZCB0ZXh0dXJlIGFjY2VzcywgYmxl
bmRpbmcsIGFuZCBjb21wb3NpdGluZyBjb2RlIHRvIHNoYWRlcnMgdGhhdCBhcmUgcmVmZXJlbmNl
ZCBmcm9tIHRoZSBDU1MgbWl4IGZ1bmN0aW9uLgotICAgIGlmIChibGVuZHNFbGVtZW50VGV4dHVy
ZSkgewotICAgICAgICByZXdyaXRlTWl4VmVydGV4U2hhZGVyKHN5bWJvbHMpOwotICAgICAgICBy
ZXdyaXRlTWl4RnJhZ21lbnRTaGFkZXIoKTsKLSAgICB9Ci0KLSAgICBtX2lzSW5pdGlhbGl6ZWQg
PSB0cnVlOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbT4gQ3Vz
dG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6Y29tcGlsZWRQcm9ncmFtKCkKLXsKLSAgICByZXR1
cm4gbV9jb21waWxlZFByb2dyYW07Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJv
Z3JhbTo6c2V0Q29tcGlsZWRQcm9ncmFtKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQ
cm9ncmFtPiBjb21waWxlZFByb2dyYW0pCi17Ci0gICAgbV9jb21waWxlZFByb2dyYW0gPSBjb21w
aWxlZFByb2dyYW07Ci19Ci0KLWJvb2wgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6bmVl
ZHNJbnB1dFRleHR1cmUoKSBjb25zdAotewotICAgIHJldHVybiBtX3Byb2dyYW1JbmZvLnByb2dy
YW1UeXBlKCkgPT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUKLSAgICAgICAg
JiYgbV9wcm9ncmFtSW5mby5taXhTZXR0aW5ncygpLmNvbXBvc2l0ZU9wZXJhdG9yICE9IENvbXBv
c2l0ZUNsZWFyCi0gICAgICAgICYmIG1fcHJvZ3JhbUluZm8ubWl4U2V0dGluZ3MoKS5jb21wb3Np
dGVPcGVyYXRvciAhPSBDb21wb3NpdGVDb3B5OwotfQotCi12b2lkIEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW06OnJld3JpdGVNaXhWZXJ0ZXhTaGFkZXIoY29uc3QgVmVjdG9yPEFOR0xFU2hh
ZGVyU3ltYm9sPiYgc3ltYm9scykKLXsKLSAgICBBU1NFUlQobV9wcm9ncmFtSW5mby5wcm9ncmFt
VHlwZSgpID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJFKTsKLQotICAgIC8v
IElmIHRoZSBhdXRob3IgZGVmaW5lZCBhX3RleENvb3JkLCB3ZSBjYW4gdXNlIGl0IHRvIHNodXR0
bGUgdGhlIHRleHR1cmUgY29vcmRpbmF0ZSB0byB0aGUgZnJhZ21lbnQgc2hhZGVyLgotICAgIC8v
IE5vdGUgdGhhdCB2ZXJ0ZXggYXR0cmlidXRlcyBhcmUgcmVhZC1vbmx5IGluIEdMU0wsIHNvIHRo
ZSBhdXRob3IgY291bGQgbm90IGhhdmUgY2hhbmdlZCBhX3RleENvb3JkJ3MgdmFsdWUuCi0gICAg
Ly8gQWxzbywgbm90ZSB0aGF0IHdlIHdvdWxkIGhhdmUgYWxyZWFkeSByZWplY3RlZCB0aGUgc2hh
ZGVyIGlmIHRoZSBhdXRob3IgZGVmaW5lZCBhX3RleENvb3JkIHdpdGggdGhlIHdyb25nIHR5cGUu
Ci0gICAgYm9vbCB0ZXhDb29yZEF0dHJpYnV0ZURlZmluZWQgPSBmYWxzZTsKLSAgICBmb3IgKHNp
emVfdCBpID0gMDsgaSA8IHN5bWJvbHMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKHN5bWJv
bHNbaV0ubmFtZSA9PSAiYV90ZXhDb29yZCIpCi0gICAgICAgICAgICB0ZXhDb29yZEF0dHJpYnV0
ZURlZmluZWQgPSB0cnVlOwotICAgIH0KLQotICAgIGlmICghdGV4Q29vcmRBdHRyaWJ1dGVEZWZp
bmVkKQotICAgICAgICBtX3ZhbGlkYXRlZFZlcnRleFNoYWRlci5hcHBlbmQoImF0dHJpYnV0ZSBt
ZWRpdW1wIHZlYzIgYV90ZXhDb29yZDsiKTsKLQotICAgIC8vIER1cmluZyB2YWxpZGF0aW9uLCBB
TkdMRSByZW5hbWVkIHRoZSBhdXRob3IncyAibWFpbiIgZnVuY3Rpb24gdG8gImNzc19tYWluIi4K
LSAgICAvLyBXZSB3cml0ZSBvdXIgb3duICJtYWluIiBmdW5jdGlvbiBhbmQgY2FsbCAiY3NzX21h
aW4iIGZyb20gaXQuCi0gICAgLy8gVGhpcyBtYWtlcyByZXdyaXRpbmcgZWFzeSBhbmQgZW5zdXJl
cyB0aGF0IG91ciBjb2RlIHJ1bnMgYWZ0ZXIgYWxsIGF1dGhvciBjb2RlLgotICAgIG1fdmFsaWRh
dGVkVmVydGV4U2hhZGVyLmFwcGVuZChTSEFERVIoCi0gICAgICAgIHZhcnlpbmcgbWVkaXVtcCB2
ZWMyIGNzc192X3RleENvb3JkOwotCi0gICAgICAgIHZvaWQgbWFpbigpCi0gICAgICAgIHsKLSAg
ICAgICAgICAgIGNzc19tYWluKCk7Ci0gICAgICAgICAgICBjc3Nfdl90ZXhDb29yZCA9IGFfdGV4
Q29vcmQ7Ci0gICAgICAgIH0KLSAgICApKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJWYWxpZGF0
ZWRQcm9ncmFtOjpyZXdyaXRlTWl4RnJhZ21lbnRTaGFkZXIoKQotewotICAgIEFTU0VSVChtX3By
b2dyYW1JbmZvLnByb2dyYW1UeXBlKCkgPT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RF
WFRVUkUpOwotCi0gICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOwotICAgIC8vIEFOR0xFIGNvbnNp
ZGVyZWQgdGhlc2Ugc3ltYm9scyBhcyBidWlsdC1pbnMgZHVyaW5nIHZhbGlkYXRpb24gdW5kZXIg
dGhlIFNIX0NTU19TSEFERVJTX1NQRUMgZmxhZy4KLSAgICAvLyBOb3csIHdlIGhhdmUgdG8gZGVm
aW5lIHRoZXNlIHN5bWJvbHMgaW4gb3JkZXIgdG8gbWFrZSB0aGlzIHNoYWRlciB2YWxpZCBHTFNM
LgotICAgIC8vIFdlIGRlZmluZSB0aGVzZSBzeW1ib2xzIGJlZm9yZSB0aGUgYXV0aG9yJ3Mgc2hh
ZGVyIGNvZGUsIHdoaWNoIG1ha2VzIHRoZW0gYWNjZXNzaWJsZSB0byBhdXRob3IgY29kZS4KLSAg
ICBidWlsZGVyLmFwcGVuZChTSEFERVIoCi0gICAgICAgIG1lZGl1bXAgdmVjNCBjc3NfTWl4Q29s
b3IgPSB2ZWM0KDAuMCk7Ci0gICAgICAgIG1lZGl1bXAgbWF0NCBjc3NfQ29sb3JNYXRyaXggPSBt
YXQ0KDEuMCk7Ci0gICAgKSk7Ci0gICAgYnVpbGRlci5hcHBlbmQobV92YWxpZGF0ZWRGcmFnbWVu
dFNoYWRlcik7Ci0gICAgYnVpbGRlci5hcHBlbmQoYmxlbmRGdW5jdGlvblN0cmluZyhtX3Byb2dy
YW1JbmZvLm1peFNldHRpbmdzKCkuYmxlbmRNb2RlKSk7Ci0gICAgYnVpbGRlci5hcHBlbmQoY29t
cG9zaXRlRnVuY3Rpb25TdHJpbmcobV9wcm9ncmFtSW5mby5taXhTZXR0aW5ncygpLmNvbXBvc2l0
ZU9wZXJhdG9yKSk7Ci0gICAgLy8gV2UgZGVmaW5lIHN5bWJvbHMgbGlrZSAiY3NzX3VfdGV4dHVy
ZSIgYWZ0ZXIgdGhlIGF1dGhvcidzIHNoYWRlciBjb2RlLCB3aGljaCBtYWtlcyB0aGVtIGluYWNj
ZXNzaWJsZSB0byBhdXRob3IgY29kZS4KLSAgICAvLyBJbiBwYXJ0aWN1bGFyLCAiY3NzX3VfdGV4
dHVyZSIgcmVwcmVzZW50cyB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZSwgc28gaXQncyBpbXBvcnRh
bnQgdG8ga2VlcCBpdCBpbmFjY2Vzc2libGUgdG8KLSAgICAvLyBhdXRob3IgY29kZSBmb3Igc2Vj
dXJpdHkgcmVhc29ucy4KLSAgICBidWlsZGVyLmFwcGVuZChTSEFERVIoCi0gICAgICAgIHVuaWZv
cm0gc2FtcGxlcjJEIGNzc191X3RleHR1cmU7Ci0gICAgICAgIHZhcnlpbmcgbWVkaXVtcCB2ZWMy
IGNzc192X3RleENvb3JkOwotCi0gICAgICAgIHZvaWQgbWFpbigpCi0gICAgICAgIHsKLSAgICAg
ICAgICAgIGNzc19tYWluKCk7Ci0gICAgICAgICAgICBtZWRpdW1wIHZlYzQgb3JpZ2luYWxDb2xv
ciA9IHRleHR1cmUyRChjc3NfdV90ZXh0dXJlLCBjc3Nfdl90ZXhDb29yZCk7Ci0gICAgICAgICAg
ICBtZWRpdW1wIHZlYzQgbXVsdGlwbGllZENvbG9yID0gY2xhbXAoY3NzX0NvbG9yTWF0cml4ICog
b3JpZ2luYWxDb2xvciwgMC4wLCAxLjApOwotICAgICAgICAgICAgbWVkaXVtcCB2ZWM0IGNsYW1w
ZWRNaXhDb2xvciA9IGNsYW1wKGNzc19NaXhDb2xvciwgMC4wLCAxLjApOwotICAgICAgICAgICAg
bWVkaXVtcCB2ZWMzIGJsZW5kZWRDb2xvciA9IGNzc19CbGVuZENvbG9yKG11bHRpcGxpZWRDb2xv
ci5yZ2IsIGNsYW1wZWRNaXhDb2xvci5yZ2IpOwotICAgICAgICAgICAgbWVkaXVtcCB2ZWMzIHdl
aWdodGVkQ29sb3IgPSAoMS4wIC0gbXVsdGlwbGllZENvbG9yLmEpICogY2xhbXBlZE1peENvbG9y
LnJnYiArIG11bHRpcGxpZWRDb2xvci5hICogYmxlbmRlZENvbG9yOwotICAgICAgICAgICAgZ2xf
RnJhZ0NvbG9yID0gY3NzX0NvbXBvc2l0ZShtdWx0aXBsaWVkQ29sb3IucmdiLCBtdWx0aXBsaWVk
Q29sb3IuYSwgd2VpZ2h0ZWRDb2xvci5yZ2IsIGNsYW1wZWRNaXhDb2xvci5hKTsKLSAgICAgICAg
fQotICAgICkpOwotICAgIG1fdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXIgPSBidWlsZGVyLnRvU3Ry
aW5nKCk7Ci19Ci0KLVN0cmluZyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpibGVuZEZ1
bmN0aW9uU3RyaW5nKEJsZW5kTW9kZSBibGVuZE1vZGUpCi17Ci0gICAgLy8gSW1wbGVtZW50ZWQg
dXNpbmcgdGhlIHNhbWUgc3ltYm9sIG5hbWVzIGFzIHRoZSBDb21wb3NpdGluZyBhbmQgQmxlbmRp
bmcgc3BlYzoKLSAgICAvLyBodHRwczovL2R2Y3MudzMub3JnL2hnL0ZYVEYvcmF3ZmlsZS90aXAv
Y29tcG9zaXRpbmcvaW5kZXguaHRtbCNibGVuZGluZ25vcm1hbAotICAgIC8vIENzOiBpcyB0aGUg
c291cmNlIGNvbG9yIGluIGNzc19CbGVuZENvbG9yKCkgYW5kIHRoZSBzb3VyY2UgY29sb3IgY29t
cG9uZW50IGluIGNzc19CbGVuZENvbXBvbmVudCgpCi0gICAgLy8gQ2I6IGlzIHRoZSBiYWNrZHJv
cCBjb2xvciBpbiBjc3NfQmxlbmRDb2xvcigpIGFuZCB0aGUgYmFja2Ryb3AgY29sb3IgY29tcG9u
ZW50IGluIGNzc19CbGVuZENvbXBvbmVudCgpCi0gICAgY29uc3QgY2hhciogYmxlbmRDb2xvckV4
cHJlc3Npb24gPSAidmVjMyhjc3NfQmxlbmRDb21wb25lbnQoQ2IuciwgQ3MuciksIGNzc19CbGVu
ZENvbXBvbmVudChDYi5nLCBDcy5nKSwgY3NzX0JsZW5kQ29tcG9uZW50KENiLmIsIENzLmIpKSI7
Ci0gICAgY29uc3QgY2hhciogYmxlbmRDb21wb25lbnRFeHByZXNzaW9uID0gIkNvID0gMC4wOyI7
Ci0gICAgYm9vbCBuZWVkc0x1bWlub3NpdHlIZWxwZXJGdW5jdGlvbnMgPSBmYWxzZTsKLSAgICBi
b29sIG5lZWRzU2F0dXJhdGlvbkhlbHBlckZ1bmN0aW9ucyA9IGZhbHNlOwotICAgIFN0cmluZyBi
bGVuZEZ1bmN0aW9uU3RyaW5nOwotICAgIHN3aXRjaCAoYmxlbmRNb2RlKSB7Ci0gICAgY2FzZSBC
bGVuZE1vZGVOb3JtYWw6Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gIkNzIjsKLSAg
ICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVNdWx0aXBseToKLSAgICAgICAgYmxlbmRD
b2xvckV4cHJlc3Npb24gPSAiQ3MgKiBDYiI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxl
bmRNb2RlU2NyZWVuOgotICAgICAgICBibGVuZENvbG9yRXhwcmVzc2lvbiA9ICJDYiArIENzIC0g
KENiICogQ3MpIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVEYXJrZW46Ci0g
ICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gIm1pbihDYiwgQ3MpIjsKLSAgICAgICAgYnJl
YWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVMaWdodGVuOgotICAgICAgICBibGVuZENvbG9yRXhwcmVz
c2lvbiA9ICJtYXgoQ2IsIENzKSI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRNb2Rl
RGlmZmVyZW5jZToKLSAgICAgICAgYmxlbmRDb2xvckV4cHJlc3Npb24gPSAiYWJzKENiIC0gQ3Mp
IjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVFeGNsdXNpb246Ci0gICAgICAg
IGJsZW5kQ29sb3JFeHByZXNzaW9uID0gIkNiICsgQ3MgLSAyLjAgKiBDYiAqIENzIjsKLSAgICAg
ICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVPdmVybGF5OgotICAgICAgICAvKgotICAgICAg
ICAgICAgQ28gPSBIYXJkTGlnaHQoQ3MsIENiKQotICAgICAgICAgICAgICAgPSBpZihDYiA8PSAw
LjUpCi0gICAgICAgICAgICAgICAgICAgICBNdWx0aXBseShDcywgMiB4IENiKQotICAgICAgICAg
ICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBTY3JlZW4oQ3MsIDIgeCBDYiAtIDEp
Ci0gICAgICAgICAgICAgICA9IGlmKENiIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIENz
IHggKDIgeCBDYikKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAg
Q3MgKyAoMiB4IENiIC0gMSkgLSAoQ3MgeCAoMiB4IENiIC0gMSkpCi0gICAgICAgICovCi0gICAg
ICAgIGJsZW5kQ29tcG9uZW50RXhwcmVzc2lvbiA9IFNIQURFUigKLSAgICAgICAgICAgIGlmIChD
YiA8PSAwLjUpCi0gICAgICAgICAgICAgICAgQ28gPSBDcyAqICgyLjAgKiBDYik7Ci0gICAgICAg
ICAgICBlbHNlCi0gICAgICAgICAgICAgICAgQ28gPSBDcyArICgyLjAgKiBDYiAtIDEuMCkgLSAo
Q3MgKiAoMi4wICogQ2IgLSAxLjApKTsKLSAgICAgICAgKTsKLSAgICAgICAgYnJlYWs7Ci0gICAg
Y2FzZSBCbGVuZE1vZGVDb2xvckRvZGdlOgotICAgICAgICAvKgotICAgICAgICAgICAgQ28gPSBp
ZihDcyA8IDEpCi0gICAgICAgICAgICAgICAgICAgICBtaW4oMSwgQ2IgLyAoMSAtIENzKSkKLSAg
ICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgMQotICAgICAgICAqLwot
ICAgICAgICBibGVuZENvbXBvbmVudEV4cHJlc3Npb24gPSBTSEFERVIoCi0gICAgICAgICAgICBp
ZiAoQ3MgPCAxLjApCi0gICAgICAgICAgICAgICAgQ28gPSBtaW4oMS4wLCBDYiAvICgxLjAgLSBD
cykpOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIENvID0gMS4wOwotICAgICAg
ICApOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZUNvbG9yQnVybjoKLSAgICAg
ICAgLyoKLSAgICAgICAgICAgIENvID0gaWYoQ3MgPiAwKQotICAgICAgICAgICAgICAgICAgICAg
MSAtIG1pbigxLCAoMSAtIENiKSAvIENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAg
ICAgICAgICAgICAgICAwCi0gICAgICAgICovCi0gICAgICAgIGJsZW5kQ29tcG9uZW50RXhwcmVz
c2lvbiA9IFNIQURFUigKLSAgICAgICAgICAgIGlmIChDcyA+IDAuMCkKLSAgICAgICAgICAgICAg
ICBDbyA9IDEuMCAtIG1pbigxLjAsICgxLjAgLSBDYikgLyBDcyk7Ci0gICAgICAgICAgICBlbHNl
Ci0gICAgICAgICAgICAgICAgQ28gPSAwLjA7Ci0gICAgICAgICk7Ci0gICAgICAgIGJyZWFrOwot
ICAgIGNhc2UgQmxlbmRNb2RlSGFyZExpZ2h0OgotICAgICAgICAvKgotICAgICAgICAgICAgQ28g
PSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBNdWx0aXBseShDYiwgMiB4IENz
KQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBTY3JlZW4oQ2Is
IDIgeCBDcyAtMSkKLSAgICAgICAgICAgICAgID0gaWYoQ3MgPD0gMC41KQotICAgICAgICAgICAg
ICAgICAgICAgQ2IgeCAoMiB4IENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAg
ICAgICAgICAgICBDYiArICgyIHggQ3MgLSAxKSAtIChDYiB4ICgyIHggQ3MgLSAxKSkKLSAgICAg
ICAgKi8KLSAgICAgICAgYmxlbmRDb21wb25lbnRFeHByZXNzaW9uID0gU0hBREVSKAotICAgICAg
ICAgICAgaWYgKENzIDw9IDAuNSkKLSAgICAgICAgICAgICAgICBDbyA9IENiICogKDIuMCAqIENz
KTsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBDbyA9IENiICsgKDIuMCAqIENz
IC0gMS4wKSAtIChDYiAqICgyLjAgKiBDcyAtIDEuMCkpOwotICAgICAgICApOwotICAgICAgICBi
cmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZVNvZnRMaWdodDoKLSAgICAgICAgLyoKLSAgICAgICAg
ICAgIENvID0gaWYoQ3MgPD0gMC41KQotICAgICAgICAgICAgICAgICAgICAgQ2IgLSAoMSAtIDIg
eCBDcykgeCBDYiB4ICgxIC0gQ2IpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAg
ICAgICAgICAgIENiICsgKDIgeCBDcyAtIDEpIHggKEQoQ2IpIC0gQ2IpCi0KLSAgICAgICAgICAg
IHdpdGgKLQotICAgICAgICAgICAgRChDYikgPSBpZihDYiA8PSAwLjI1KQotICAgICAgICAgICAg
ICAgICAgICAgICAgKDE2ICogQ2IgLSAxMikgeCBDYiArIDQpIHggQ2IKLSAgICAgICAgICAgICAg
ICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgc3FydChDYikKLSAgICAgICAgKi8K
LSAgICAgICAgYmxlbmRDb21wb25lbnRFeHByZXNzaW9uID0gU0hBREVSKAotICAgICAgICAgICAg
bWVkaXVtcCBmbG9hdCBEOwotICAgICAgICAgICAgaWYgKENiIDw9IDAuMjUpCi0gICAgICAgICAg
ICAgICAgRCA9ICgoMTYuMCAqIENiIC0gMTIuMCkgKiBDYiArIDQuMCkgKiBDYjsKLSAgICAgICAg
ICAgIGVsc2UKLSAgICAgICAgICAgICAgICBEID0gc3FydChDYik7Ci0KLSAgICAgICAgICAgIGlm
IChDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgQ28gPSBDYiAtICgxLjAgLSAyLjAgKiBDcykg
KiBDYiAqICgxLjAgLSBDYik7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgQ28g
PSBDYiArICgyLjAgKiBDcyAtIDEuMCkgKiAoRCAtIENiKTsKLSAgICAgICAgKTsKLSAgICAgICAg
YnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVDb2xvcjoKLSAgICAgICAgbmVlZHNMdW1pbm9zaXR5
SGVscGVyRnVuY3Rpb25zID0gdHJ1ZTsKLSAgICAgICAgYmxlbmRDb2xvckV4cHJlc3Npb24gPSAi
Y3NzX1NldEx1bShDcywgY3NzX0x1bShDYikpIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBC
bGVuZE1vZGVMdW1pbm9zaXR5OgotICAgICAgICBuZWVkc0x1bWlub3NpdHlIZWxwZXJGdW5jdGlv
bnMgPSB0cnVlOwotICAgICAgICBibGVuZENvbG9yRXhwcmVzc2lvbiA9ICJjc3NfU2V0THVtKENi
LCBjc3NfTHVtKENzKSkiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZUh1ZToK
LSAgICAgICAgbmVlZHNMdW1pbm9zaXR5SGVscGVyRnVuY3Rpb25zID0gdHJ1ZTsKLSAgICAgICAg
bmVlZHNTYXR1cmF0aW9uSGVscGVyRnVuY3Rpb25zID0gdHJ1ZTsKLSAgICAgICAgYmxlbmRDb2xv
ckV4cHJlc3Npb24gPSAiY3NzX1NldEx1bShjc3NfU2V0U2F0KENzLCBjc3NfU2F0KENiKSksIGNz
c19MdW0oQ2IpKSI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRNb2RlU2F0dXJhdGlv
bjoKLSAgICAgICAgbmVlZHNMdW1pbm9zaXR5SGVscGVyRnVuY3Rpb25zID0gdHJ1ZTsKLSAgICAg
ICAgbmVlZHNTYXR1cmF0aW9uSGVscGVyRnVuY3Rpb25zID0gdHJ1ZTsKLSAgICAgICAgYmxlbmRD
b2xvckV4cHJlc3Npb24gPSAiY3NzX1NldEx1bShjc3NfU2V0U2F0KENiLCBjc3NfU2F0KENzKSks
IGNzc19MdW0oQ2IpKSI7Ci0gICAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIH0KLQotICAgIGlmIChuZWVkc0x1bWlub3NpdHlIZWxw
ZXJGdW5jdGlvbnMpIHsKLSAgICAgICAgYmxlbmRGdW5jdGlvblN0cmluZy5hcHBlbmQoU0hBREVS
KAotICAgICAgICAgICAgbWVkaXVtcCBmbG9hdCBjc3NfTHVtKG1lZGl1bXAgdmVjMyBDKQotICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIHJldHVybiAwLjMgKiBDLnIgKyAwLjU5ICogQy5n
ICsgMC4xMSAqIEMuYjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIG1lZGl1bXAgdmVjMyBj
c3NfQ2xpcENvbG9yKG1lZGl1bXAgdmVjMyBDKQotICAgICAgICAgICAgewotICAgICAgICAgICAg
ICAgIG1lZGl1bXAgZmxvYXQgTCA9IGNzc19MdW0oQyk7Ci0gICAgICAgICAgICAgICAgbWVkaXVt
cCBmbG9hdCBuID0gbWluKG1pbihDLnIsIEMuZyksIEMuYik7Ci0gICAgICAgICAgICAgICAgbWVk
aXVtcCBmbG9hdCB4ID0gbWF4KG1heChDLnIsIEMuZyksIEMuYik7Ci0gICAgICAgICAgICAgICAg
aWYgKG4gPCAwLjApCi0gICAgICAgICAgICAgICAgICAgIEMgPSBMICsgKCgoQyAtIEwpICogTCkg
LyAoTCAtIG4pKTsKLSAgICAgICAgICAgICAgICBpZiAoeCA+IDEuMCkKLSAgICAgICAgICAgICAg
ICAgICAgQyA9IEwgKyAoKChDIC0gTCkgKiAoMS4wIC0gTCkgLyAoeCAtIEwpKSk7Ci0gICAgICAg
ICAgICAgICAgcmV0dXJuIEM7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBtZWRpdW1wIHZl
YzMgY3NzX1NldEx1bShtZWRpdW1wIHZlYzMgQywgbWVkaXVtcCBmbG9hdCBsKQotICAgICAgICAg
ICAgewotICAgICAgICAgICAgICAgIEMgKz0gbCAtIGNzc19MdW0oQyk7Ci0gICAgICAgICAgICAg
ICAgcmV0dXJuIGNzc19DbGlwQ29sb3IoQyk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICkpOwot
ICAgIH0KLQotICAgIGlmIChuZWVkc1NhdHVyYXRpb25IZWxwZXJGdW5jdGlvbnMpIHsKLSAgICAg
ICAgYmxlbmRGdW5jdGlvblN0cmluZy5hcHBlbmQoU0hBREVSKAotICAgICAgICAgICAgbWVkaXVt
cCBmbG9hdCBjc3NfU2F0KG1lZGl1bXAgdmVjMyBDKQotICAgICAgICAgICAgewotICAgICAgICAg
ICAgICAgIG1lZGl1bXAgZmxvYXQgY01pbiA9IG1pbihtaW4oQy5yLCBDLmcpLCBDLmIpOwotICAg
ICAgICAgICAgICAgIG1lZGl1bXAgZmxvYXQgY01heCA9IG1heChtYXgoQy5yLCBDLmcpLCBDLmIp
OwotICAgICAgICAgICAgICAgIHJldHVybiBjTWF4IC0gY01pbjsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgIHZvaWQgY3NzX1NldFNhdEhlbHBlcihpbm91dCBtZWRpdW1wIGZsb2F0IGNNaW4s
IGlub3V0IG1lZGl1bXAgZmxvYXQgY01pZCwgaW5vdXQgbWVkaXVtcCBmbG9hdCBjTWF4LCBtZWRp
dW1wIGZsb2F0IHMpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgaWYgKGNNYXggPiBj
TWluKSB7Ci0gICAgICAgICAgICAgICAgICAgIGNNaWQgPSAoKChjTWlkIC0gY01pbikgKiBzKSAv
IChjTWF4IC0gY01pbikpOwotICAgICAgICAgICAgICAgICAgICBjTWF4ID0gczsKLSAgICAgICAg
ICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgY01pZCA9IGNNYXggPSAwLjA7Ci0g
ICAgICAgICAgICAgICAgY01pbiA9IDAuMDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIG1l
ZGl1bXAgdmVjMyBjc3NfU2V0U2F0KG1lZGl1bXAgdmVjMyBDLCBtZWRpdW1wIGZsb2F0IHMpCi0g
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgaWYgKEMuciA8PSBDLmcpIHsKLSAgICAgICAg
ICAgICAgICAgICAgaWYgKEMuZyA8PSBDLmIpCi0gICAgICAgICAgICAgICAgICAgICAgICBjc3Nf
U2V0U2F0SGVscGVyKEMuciwgQy5nLCBDLmIsIHMpOwotICAgICAgICAgICAgICAgICAgICBlbHNl
IHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChDLnIgPD0gQy5iKQotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNzc19TZXRTYXRIZWxwZXIoQy5yLCBDLmIsIEMuZywgcyk7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Nz
X1NldFNhdEhlbHBlcihDLmIsIEMuciwgQy5nLCBzKTsKLSAgICAgICAgICAgICAgICAgICAgfQot
ICAgICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChDLnIgPD0g
Qy5iKQotICAgICAgICAgICAgICAgICAgICAgICAgY3NzX1NldFNhdEhlbHBlcihDLmcsIEMuciwg
Qy5iLCBzKTsKLSAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAg
ICAgICBpZiAoQy5nIDw9IEMuYikKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjc3NfU2V0
U2F0SGVscGVyKEMuZywgQy5iLCBDLnIsIHMpOwotICAgICAgICAgICAgICAgICAgICAgICAgZWxz
ZQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzc19TZXRTYXRIZWxwZXIoQy5iLCBDLmcs
IEMuciwgcyk7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgcmV0dXJuIEM7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICkpOwotICAgIH0K
LQotICAgIGJsZW5kRnVuY3Rpb25TdHJpbmcuYXBwZW5kKFN0cmluZzo6Zm9ybWF0KFNIQURFUigK
LSAgICAgICAgbWVkaXVtcCBmbG9hdCBjc3NfQmxlbmRDb21wb25lbnQobWVkaXVtcCBmbG9hdCBD
YiwgbWVkaXVtcCBmbG9hdCBDcykKLSAgICAgICAgewotICAgICAgICAgICAgbWVkaXVtcCBmbG9h
dCBDbzsKLSAgICAgICAgICAgICVzCi0gICAgICAgICAgICByZXR1cm4gQ287Ci0gICAgICAgIH0K
LSAgICAgICAgbWVkaXVtcCB2ZWMzIGNzc19CbGVuZENvbG9yKG1lZGl1bXAgdmVjMyBDYiwgbWVk
aXVtcCB2ZWMzIENzKQotICAgICAgICB7Ci0gICAgICAgICAgICByZXR1cm4gJXM7Ci0gICAgICAg
IH0KLSAgICApLCBibGVuZENvbXBvbmVudEV4cHJlc3Npb24sIGJsZW5kQ29sb3JFeHByZXNzaW9u
KSk7Ci0KLSAgICByZXR1cm4gYmxlbmRGdW5jdGlvblN0cmluZzsKLX0KLQotU3RyaW5nIEN1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW06OmNvbXBvc2l0ZUZ1bmN0aW9uU3RyaW5nKENvbXBvc2l0
ZU9wZXJhdG9yIGNvbXBvc2l0ZU9wZXJhdG9yKQotewotICAgIC8vIFVzZSB0aGUgc2FtZSBzeW1i
b2wgbmFtZXMgYXMgdGhlIENvbXBvc2l0aW5nIGFuZCBCbGVuZGluZyBzcGVjOgotICAgIC8vIGh0
dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxlL3RpcC9jb21wb3NpdGluZy9pbmRleC5o
dG1sI2JsZW5kaW5nbm9ybWFsCi0gICAgLy8gQ3M6IGlzIHRoZSBzb3VyY2UgY29sb3IKLSAgICAv
LyBDYjogaXMgdGhlIGJhY2tkcm9wIGNvbG9yCi0gICAgLy8gYXM6IGlzIHRoZSBzb3VyY2UgYWxw
aGEKLSAgICAvLyBhYjogaXMgdGhlIGJhY2tkcm9wIGFscGhhCi0gICAgLy8gRmE6IGlzIGRlZmlu
ZWQgYnkgdGhlIFBvcnRlciBEdWZmIG9wZXJhdG9yIGluIHVzZQotICAgIC8vIEZiOiBpcyBkZWZp
bmVkIGJ5IHRoZSBQb3J0ZXIgRHVmZiBvcGVyYXRvciBpbiB1c2UKLSAgICBjb25zdCBjaGFyKiBG
YSA9IDA7Ci0gICAgY29uc3QgY2hhciogRmIgPSAwOwotICAgIHN3aXRjaCAoY29tcG9zaXRlT3Bl
cmF0b3IpIHsKLSAgICBjYXNlIENvbXBvc2l0ZVNvdXJjZUF0b3A6Ci0gICAgICAgIEZhID0gImFi
IjsKLSAgICAgICAgRmIgPSAiMS4wIC0gYXMiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIENv
bXBvc2l0ZUNsZWFyOgotICAgICAgICBGYSA9ICIwLjAiOwotICAgICAgICBGYiA9ICIwLjAiOwot
ICAgICAgICBicmVhazsKLSAgICBjYXNlIENvbXBvc2l0ZUNvcHk6Ci0gICAgICAgIEZhID0gIjEu
MCI7Ci0gICAgICAgIEZiID0gIjAuMCI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9z
aXRlU291cmNlT3ZlcjoKLSAgICAgICAgRmEgPSAiMS4wIjsKLSAgICAgICAgRmIgPSAiMS4wIC0g
YXMiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIENvbXBvc2l0ZVNvdXJjZUluOgotICAgICAg
ICBGYSA9ICJhYiI7Ci0gICAgICAgIEZiID0gIjAuMCI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNh
c2UgQ29tcG9zaXRlU291cmNlT3V0OgotICAgICAgICBGYSA9ICIxLjAgLSBhYiI7Ci0gICAgICAg
IEZiID0gIjAuMCI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9zaXRlRGVzdGluYXRp
b25PdmVyOgotICAgICAgICBGYSA9ICIxLjAgLSBhYiI7Ci0gICAgICAgIEZiID0gIjEuMCI7Ci0g
ICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9zaXRlRGVzdGluYXRpb25JbjoKLSAgICAgICAg
RmEgPSAiMC4wIjsKLSAgICAgICAgRmIgPSAiYXMiOwotICAgICAgICBicmVhazsKLSAgICBjYXNl
IENvbXBvc2l0ZURlc3RpbmF0aW9uT3V0OgotICAgICAgICBGYSA9ICIwLjAiOwotICAgICAgICBG
YiA9ICIxLjAgLSBhcyI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9zaXRlRGVzdGlu
YXRpb25BdG9wOgotICAgICAgICBGYSA9ICIxLjAgLSBhYiI7Ci0gICAgICAgIEZiID0gImFzIjsK
LSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVYT1I6Ci0gICAgICAgIEZhID0gIjEu
MCAtIGFiIjsKLSAgICAgICAgRmIgPSAiMS4wIC0gYXMiOwotICAgICAgICBicmVhazsKLSAgICBj
YXNlIENvbXBvc2l0ZVBsdXNMaWdodGVyOgotICAgICAgICBub3RJbXBsZW1lbnRlZCgpOwotICAg
ICAgICByZXR1cm4gU3RyaW5nKCk7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgLy8gVGhlIENTUyBw
YXJzZXIgc2hvdWxkIG5vdCBoYXZlIGFjY2VwdGVkIGFueSBvdGhlciBjb21wb3NpdGUgb3BlcmF0
b3JzLgotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgcmV0dXJuIFN0cmlu
ZygpOwotICAgIH0KLQotICAgIEFTU0VSVChGYSAmJiBGYik7Ci0gICAgLy8gVXNlIHRoZSBnZW5l
cmFsIGZvcm11bGEgZm9yIGNvbXBvc2l0aW5nLCBsaWZ0ZWQgZnJvbSB0aGUgc3BlYzoKLSAgICAv
LyBodHRwczovL2R2Y3MudzMub3JnL2hnL0ZYVEYvcmF3ZmlsZS90aXAvY29tcG9zaXRpbmcvaW5k
ZXguaHRtbCNnZW5lcmFsZm9ybXVsYQotICAgIHJldHVybiBTdHJpbmc6OmZvcm1hdChTSEFERVIo
Ci0gICAgICAgIG1lZGl1bXAgdmVjNCBjc3NfQ29tcG9zaXRlKG1lZGl1bXAgdmVjMyBDYiwgbWVk
aXVtcCBmbG9hdCBhYiwgbWVkaXVtcCB2ZWMzIENzLCBtZWRpdW1wIGZsb2F0IGFzKQotICAgICAg
ICB7Ci0gICAgICAgICAgICBtZWRpdW1wIGZsb2F0IEZhID0gJXM7Ci0gICAgICAgICAgICBtZWRp
dW1wIGZsb2F0IEZiID0gJXM7Ci0gICAgICAgICAgICByZXR1cm4gdmVjNChhcyAqIEZhICogQ3Mg
KyBhYiAqIEZiICogQ2IsIGFzICogRmEgKyBhYiAqIEZiKTsgCi0gICAgICAgIH0KLSAgICApLCBG
YSwgRmIpOwotfQotICAgIAotQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6fkN1c3RvbUZp
bHRlclZhbGlkYXRlZFByb2dyYW0oKQotewotICAgIHBsYXRmb3JtRGVzdHJveSgpOwotfQotCi1D
dXN0b21GaWx0ZXJQcm9ncmFtSW5mbyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjp2YWxp
ZGF0ZWRQcm9ncmFtSW5mbygpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKG1faXNJbml0aWFsaXplZCk7
Ci0gICAgcmV0dXJuIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvKG1fdmFsaWRhdGVkVmVydGV4U2hh
ZGVyLCBtX3ZhbGlkYXRlZEZyYWdtZW50U2hhZGVyLCBtX3Byb2dyYW1JbmZvLnByb2dyYW1UeXBl
KCksIG1fcHJvZ3JhbUluZm8ubWl4U2V0dGluZ3MoKSwgbV9wcm9ncmFtSW5mby5tZXNoVHlwZSgp
KTsKLX0KLQotI2lmICFVU0UoVEVYVFVSRV9NQVBQRVIpCi12b2lkIEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW06OnBsYXRmb3JtSW5pdCgpCi17Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbTo6cGxhdGZvcm1EZXN0cm95KCkKLXsKLX0KLSNlbmRpZgotCi19IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA2NzA0MmYyLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oCisrKyAvZGV2
L251bGwKQEAgLTEsMTIzICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUg
U3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0g
KiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0K
LSNpZm5kZWYgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbV9oCi0jZGVmaW5lIEN1c3RvbUZp
bHRlclZhbGlkYXRlZFByb2dyYW1faAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5j
bHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0
ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5o
PgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLXN0cnVjdCBBTkdMRVNoYWRlclN5bWJvbDsKLWNsYXNzIEN1c3RvbUZpbHRlckNvbXBpbGVk
UHJvZ3JhbTsKLWNsYXNzIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQ7Ci0KLSNpZiBVU0UoVEVY
VFVSRV9NQVBQRVIpCi1jbGFzcyBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW07
Ci10eXBlZGVmIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSBQbGF0Zm9ybUNv
bXBpbGVkUHJvZ3JhbTsKLSNlbmRpZgotCi0vLwotLy8gQSB1bmlxdWUgY29tYmluYXRpb24gb2Yg
dmVydGV4IHNoYWRlciBhbmQgZnJhZ21lbnQgc2hhZGVyIGlzIG9ubHkgdmFsaWRhdGVkIGFuZCBj
b21waWxlZCBvbmNlLgotLy8gQWxsIHNoYWRlcnMgYXJlIHZhbGlkYXRlZCB0aHJvdWdoIEFOR0xF
IGluIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0gYmVmb3JlIGJlaW5nIGNvbXBpbGVkIGJ5
IHRoZSBHcmFwaGljc0NvbnRleHQzRCBpbiBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uCi0v
LyBGb3Igc2hhZGVycyB0aGF0IHVzZSB0aGUgQ1NTIG1peCBmdW5jdGlvbiwgQ3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbSBhZGRzIHNoYWRlciBjb2RlIHRvIHBlcmZvcm0gRE9NIHRleHR1cmUg
YWNjZXNzLCBibGVuZGluZywgYW5kIGNvbXBvc2l0aW5nLgotLy8KLWNsYXNzIEN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0gOiBwdWJsaWMgUmVmQ291bnRlZDxDdXN0b21GaWx0ZXJWYWxpZGF0
ZWRQcm9ncmFtPiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbT4gY3JlYXRlKEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQqIGdsb2Jh
bENvbnRleHQsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9ncmFtSW5mbykKLSAg
ICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJv
Z3JhbShnbG9iYWxDb250ZXh0LCBwcm9ncmFtSW5mbykpOwotICAgIH0KLQotICAgIH5DdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtKCk7Ci0KLSAgICBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFt
SW5mbyYgcHJvZ3JhbUluZm8oKSBjb25zdCB7IHJldHVybiBtX3Byb2dyYW1JbmZvOyB9Ci0gICAg
Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8gdmFsaWRhdGVkUHJvZ3JhbUluZm8oKSBjb25zdDsKLSAg
ICAKLSAgICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbT4gY29tcGlsZWRQ
cm9ncmFtKCk7Ci0gICAgdm9pZCBzZXRDb21waWxlZFByb2dyYW0oUGFzc1JlZlB0cjxDdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW0+KTsKLQotICAgIGNvbnN0IFN0cmluZyYgdmFsaWRhdGVkVmVy
dGV4U2hhZGVyKCkgY29uc3QgCi0gICAgewotICAgICAgICBBU1NFUlQobV9pc0luaXRpYWxpemVk
KTsgCi0gICAgICAgIHJldHVybiBtX3ZhbGlkYXRlZFZlcnRleFNoYWRlcjsgCi0gICAgfQotCi0g
ICAgY29uc3QgU3RyaW5nJiB2YWxpZGF0ZWRGcmFnbWVudFNoYWRlcigpIGNvbnN0IAotICAgIHsg
Ci0gICAgICAgIEFTU0VSVChtX2lzSW5pdGlhbGl6ZWQpOyAKLSAgICAgICAgcmV0dXJuIG1fdmFs
aWRhdGVkRnJhZ21lbnRTaGFkZXI7IAotICAgIH0KLQotI2lmIFVTRShURVhUVVJFX01BUFBFUikK
LSAgICBQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSogcGxhdGZvcm1Db21waWxlZFByb2dyYW0oKTsK
LSNlbmRpZgotCi0gICAgYm9vbCBpc0luaXRpYWxpemVkKCkgY29uc3QgeyByZXR1cm4gbV9pc0lu
aXRpYWxpemVkOyB9Ci1wcml2YXRlOgotICAgIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0o
Q3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCosIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZv
Jik7Ci0KLSAgICB2b2lkIHBsYXRmb3JtSW5pdCgpOwotICAgIHZvaWQgcGxhdGZvcm1EZXN0cm95
KCk7Ci0KLSAgICBzdGF0aWMgU3RyaW5nIGRlZmF1bHRWZXJ0ZXhTaGFkZXJTdHJpbmcoKTsKLSAg
ICBzdGF0aWMgU3RyaW5nIGRlZmF1bHRGcmFnbWVudFNoYWRlclN0cmluZygpOwotCi0gICAgc3Rh
dGljIFN0cmluZyBibGVuZEZ1bmN0aW9uU3RyaW5nKEJsZW5kTW9kZSk7Ci0gICAgc3RhdGljIFN0
cmluZyBjb21wb3NpdGVGdW5jdGlvblN0cmluZyhDb21wb3NpdGVPcGVyYXRvcik7Ci0KLSAgICB2
b2lkIHJld3JpdGVNaXhWZXJ0ZXhTaGFkZXIoY29uc3QgVmVjdG9yPEFOR0xFU2hhZGVyU3ltYm9s
PiYgc3ltYm9scyk7Ci0gICAgdm9pZCByZXdyaXRlTWl4RnJhZ21lbnRTaGFkZXIoKTsKLQotICAg
IGJvb2wgbmVlZHNJbnB1dFRleHR1cmUoKSBjb25zdDsKLQotICAgIEN1c3RvbUZpbHRlclByb2dy
YW1JbmZvIG1fcHJvZ3JhbUluZm87Ci0KLSAgICBTdHJpbmcgbV92YWxpZGF0ZWRWZXJ0ZXhTaGFk
ZXI7Ci0gICAgU3RyaW5nIG1fdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXI7Ci0KLSAgICBSZWZQdHI8
Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiBtX2NvbXBpbGVkUHJvZ3JhbTsKLSNpZiBVU0Uo
VEVYVFVSRV9NQVBQRVIpCi0gICAgUGxhdGZvcm1Db21waWxlZFByb2dyYW0qIG1fcGxhdGZvcm1D
b21waWxlZFByb2dyYW07Ci0jZW5kaWYKLQotICAgIGJvb2wgbV9pc0luaXRpYWxpemVkOwotfTsK
LQotfQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDdXN0b21GaWx0
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3Rv
bUZpbHRlci5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGRjNTYxMWQuLjAwMDAw
MDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3Rv
bUZpbHRlci5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwzODMgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICog
YXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT
4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YK
LSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgot
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAi
RkVDdXN0b21GaWx0ZXIuaCIKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclJlbmRlcmVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9t
RmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkV4dGVuc2lvbnMzRC5oIgotI2lu
Y2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCi0jaW5jbHVkZSAiVGV4dFN0cmVhbS5oIgotCi0j
aW5jbHVkZSA8cnVudGltZS9VaW50OENsYW1wZWRBcnJheS5oPgotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLUZFQ3VzdG9tRmlsdGVyOjpGRUN1c3RvbUZpbHRlcihGaWx0ZXIqIGZpbHRlciwgUGFz
c1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gY29udGV4dCwgUGFzc1JlZlB0cjxDdXN0b21GaWx0
ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2YWxpZGF0ZWRQcm9ncmFtLCBjb25zdCBDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0JiBwYXJhbWV0ZXJzLAotICAgIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25l
ZCBtZXNoQ29sdW1ucywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAgOiBGaWx0
ZXJFZmZlY3QoZmlsdGVyKQotICAgICwgbV9jb250ZXh0KGNvbnRleHQpCi0gICAgLCBtX3ZhbGlk
YXRlZFByb2dyYW0odmFsaWRhdGVkUHJvZ3JhbSkKLSAgICAsIG1faW5wdXRUZXh0dXJlKDApCi0g
ICAgLCBtX2ZyYW1lQnVmZmVyKDApCi0gICAgLCBtX2RlcHRoQnVmZmVyKDApCi0gICAgLCBtX2Rl
c3RUZXh0dXJlKDApCi0gICAgLCBtX3RyaWVkTXVsdGlzYW1wbGVCdWZmZXIoZmFsc2UpCi0gICAg
LCBtX211bHRpc2FtcGxlRnJhbWVCdWZmZXIoMCkKLSAgICAsIG1fbXVsdGlzYW1wbGVSZW5kZXJC
dWZmZXIoMCkKLSAgICAsIG1fbXVsdGlzYW1wbGVEZXB0aEJ1ZmZlcigwKQotewotICAgIC8vIFdl
IHdpbGwgbm90IHBhc3MgYSBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0gaGVyZSwgYXMgd2Ug
b25seSB3YW50IHRvIGNvbXBpbGUgaXQgd2hlbiB3ZSBhY3R1YWxseSBuZWVkIGl0IGluIHRoZSBm
aXJzdCBwYWludC4KLSAgICBtX2N1c3RvbUZpbHRlclJlbmRlcmVyID0gQ3VzdG9tRmlsdGVyUmVu
ZGVyZXI6OmNyZWF0ZShtX2NvbnRleHQsIG1fdmFsaWRhdGVkUHJvZ3JhbS0+cHJvZ3JhbUluZm8o
KS5wcm9ncmFtVHlwZSgpLCBwYXJhbWV0ZXJzLCBtZXNoUm93cywgbWVzaENvbHVtbnMsIG1lc2hU
eXBlKTsKLX0KLQotUGFzc1JlZlB0cjxGRUN1c3RvbUZpbHRlcj4gRkVDdXN0b21GaWx0ZXI6OmNy
ZWF0ZShGaWx0ZXIqIGZpbHRlciwgUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gY29udGV4
dCwgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2YWxpZGF0ZWRQcm9n
cmFtLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBwYXJhbWV0ZXJzLAotICAgIHVu
c2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucywgQ3VzdG9tRmlsdGVyTWVzaFR5
cGUgbWVzaFR5cGUpCi17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBGRUN1c3RvbUZpbHRlcihm
aWx0ZXIsIGNvbnRleHQsIHZhbGlkYXRlZFByb2dyYW0sIHBhcmFtZXRlcnMsIG1lc2hSb3dzLCBt
ZXNoQ29sdW1ucywgbWVzaFR5cGUpKTsKLX0KLQotRkVDdXN0b21GaWx0ZXI6On5GRUN1c3RvbUZp
bHRlcigpCi17Ci0gICAgZGVsZXRlUmVuZGVyQnVmZmVycygpOwotfQotCi12b2lkIEZFQ3VzdG9t
RmlsdGVyOjpkZWxldGVSZW5kZXJCdWZmZXJzKCkKLXsKLSAgICBBU1NFUlQobV9jb250ZXh0KTsK
LSAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotICAgIGlmIChtX2lucHV0VGV4
dHVyZSkgewotICAgICAgICBtX2NvbnRleHQtPmRlbGV0ZVRleHR1cmUobV9pbnB1dFRleHR1cmUp
OwotICAgICAgICBtX2lucHV0VGV4dHVyZSA9IDA7Ci0gICAgfQotICAgIGlmIChtX2ZyYW1lQnVm
ZmVyKSB7Ci0gICAgICAgIC8vIE1ha2Ugc3VyZSB0byB1bmJpbmQgYW55IGZyYW1lYnVmZmVyIGZy
b20gdGhlIGNvbnRleHQgZmlyc3QsIG90aGVyd2lzZQotICAgICAgICAvLyBzb21lIHBsYXRmb3Jt
cyBtaWdodCByZWZ1c2UgdG8gYmluZCB0aGUgc2FtZSBidWZmZXIgaWQgYWdhaW4uCi0gICAgICAg
IG1fY29udGV4dC0+YmluZEZyYW1lYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZF
UiwgMCk7Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlRnJhbWVidWZmZXIobV9mcmFtZUJ1ZmZl
cik7Ci0gICAgICAgIG1fZnJhbWVCdWZmZXIgPSAwOwotICAgIH0KLSAgICBpZiAobV9kZXB0aEJ1
ZmZlcikgewotICAgICAgICBtX2NvbnRleHQtPmRlbGV0ZVJlbmRlcmJ1ZmZlcihtX2RlcHRoQnVm
ZmVyKTsKLSAgICAgICAgbV9kZXB0aEJ1ZmZlciA9IDA7Ci0gICAgfQotICAgIGlmIChtX2Rlc3RU
ZXh0dXJlKSB7Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlVGV4dHVyZShtX2Rlc3RUZXh0dXJl
KTsKLSAgICAgICAgbV9kZXN0VGV4dHVyZSA9IDA7Ci0gICAgfQotICAgIGRlbGV0ZU11bHRpc2Ft
cGxlUmVuZGVyQnVmZmVycygpOwotfQotCi12b2lkIEZFQ3VzdG9tRmlsdGVyOjpkZWxldGVNdWx0
aXNhbXBsZVJlbmRlckJ1ZmZlcnMoKQotewotICAgIGlmIChtX211bHRpc2FtcGxlRnJhbWVCdWZm
ZXIpIHsKLSAgICAgICAgLy8gTWFrZSBzdXJlIHRvIHVuYmluZCBhbnkgZnJhbWVidWZmZXIgZnJv
bSB0aGUgY29udGV4dCBmaXJzdCwgb3RoZXJ3aXNlCi0gICAgICAgIC8vIHNvbWUgcGxhdGZvcm1z
IG1pZ2h0IHJlZnVzZSB0byBiaW5kIHRoZSBzYW1lIGJ1ZmZlciBpZCBhZ2Fpbi4KLSAgICAgICAg
bV9jb250ZXh0LT5iaW5kRnJhbWVidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVS
LCAwKTsKLSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVGcmFtZWJ1ZmZlcihtX211bHRpc2FtcGxl
RnJhbWVCdWZmZXIpOwotICAgICAgICBtX211bHRpc2FtcGxlRnJhbWVCdWZmZXIgPSAwOwotICAg
IH0KLSAgICBpZiAobV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcikgewotICAgICAgICBtX2NvbnRl
eHQtPmRlbGV0ZVJlbmRlcmJ1ZmZlcihtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyKTsKLSAgICAg
ICAgbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlciA9IDA7Ci0gICAgfQotICAgIGlmIChtX211bHRp
c2FtcGxlRGVwdGhCdWZmZXIpIHsKLSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVSZW5kZXJidWZm
ZXIobV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKTsKLSAgICAgICAgbV9tdWx0aXNhbXBsZURlcHRo
QnVmZmVyID0gMDsKLSAgICB9Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0ZXI6OnBsYXRmb3JtQXBw
bHlTb2Z0d2FyZSgpCi17Ci0gICAgaWYgKCFhcHBseVNoYWRlcigpKQotICAgICAgICBjbGVhclNo
YWRlclJlc3VsdCgpOwotfQotCi12b2lkIEZFQ3VzdG9tRmlsdGVyOjpjbGVhclNoYWRlclJlc3Vs
dCgpCi17Ci0gICAgY2xlYXJSZXN1bHQoKTsKLSAgICBVaW50OENsYW1wZWRBcnJheSogZHN0UGl4
ZWxBcnJheSA9IGNyZWF0ZVVubXVsdGlwbGllZEltYWdlUmVzdWx0KCk7Ci0gICAgaWYgKCFkc3RQ
aXhlbEFycmF5KQotICAgICAgICByZXR1cm47Ci0KLSAgICBGaWx0ZXJFZmZlY3QqIGluID0gaW5w
dXRFZmZlY3QoMCk7Ci0gICAgc2V0SXNBbHBoYUltYWdlKGluLT5pc0FscGhhSW1hZ2UoKSk7Ci0g
ICAgSW50UmVjdCBlZmZlY3REcmF3aW5nUmVjdCA9IHJlcXVlc3RlZFJlZ2lvbk9mSW5wdXRJbWFn
ZURhdGEoaW4tPmFic29sdXRlUGFpbnRSZWN0KCkpOwotICAgIGluLT5jb3B5VW5tdWx0aXBsaWVk
SW1hZ2UoZHN0UGl4ZWxBcnJheSwgZWZmZWN0RHJhd2luZ1JlY3QpOwotfQotCi12b2lkIEZFQ3Vz
dG9tRmlsdGVyOjpkcmF3RmlsdGVyTWVzaChQbGF0Zm9ybTNET2JqZWN0IGlucHV0VGV4dHVyZSkK
LXsKLSAgICBib29sIG11bHRpc2FtcGxlID0gY2FuVXNlTXVsdGlzYW1wbGVCdWZmZXJzKCk7Ci0g
ICAgbV9jb250ZXh0LT5iaW5kRnJhbWVidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVG
RkVSLCBtdWx0aXNhbXBsZSA/IG1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZlciA6IG1fZnJhbWVCdWZm
ZXIpOwotICAgIG1fY29udGV4dC0+dmlld3BvcnQoMCwgMCwgbV9jb250ZXh0U2l6ZS53aWR0aCgp
LCBtX2NvbnRleHRTaXplLmhlaWdodCgpKTsKLQotICAgIG1fY29udGV4dC0+Y2xlYXJDb2xvcigw
LCAwLCAwLCAwKTsKLSAgICBtX2NvbnRleHQtPmNsZWFyKEdyYXBoaWNzQ29udGV4dDNEOjpDT0xP
Ul9CVUZGRVJfQklUIHwgR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX0JVRkZFUl9CSVQpOwotCi0g
ICAgbV9jdXN0b21GaWx0ZXJSZW5kZXJlci0+ZHJhdyhpbnB1dFRleHR1cmUsIG1fY29udGV4dFNp
emUpOwotCi0gICAgaWYgKG11bHRpc2FtcGxlKQotICAgICAgICByZXNvbHZlTXVsdGlzYW1wbGVC
dWZmZXIoKTsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6cHJlcGFyZUZvckRyYXdpbmcoKQot
ewotICAgIG1fY29udGV4dC0+bWFrZUNvbnRleHRDdXJyZW50KCk7Ci0KLSAgICBpZiAoIW1fY3Vz
dG9tRmlsdGVyUmVuZGVyZXItPmNvbXBpbGVkUHJvZ3JhbSgpKSB7Ci0gICAgICAgIFJlZlB0cjxD
dXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IGNvbXBpbGVkUHJvZ3JhbSA9IG1fdmFsaWRhdGVk
UHJvZ3JhbS0+Y29tcGlsZWRQcm9ncmFtKCk7Ci0gICAgICAgIGlmICghY29tcGlsZWRQcm9ncmFt
KSB7Ci0gICAgICAgICAgICAvLyBMYXppbHkgY3JlYXRlIGEgY29tcGlsZWQgcHJvZ3JhbSBhbmQg
bGV0IEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0gaG9sZCBvbiB0byBpdC4KLSAgICAgICAg
ICAgIGNvbXBpbGVkUHJvZ3JhbSA9IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbTo6Y3JlYXRl
KG1fY29udGV4dCwgbV92YWxpZGF0ZWRQcm9ncmFtLT52YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIoKSwg
bV92YWxpZGF0ZWRQcm9ncmFtLT52YWxpZGF0ZWRGcmFnbWVudFNoYWRlcigpLCBtX3ZhbGlkYXRl
ZFByb2dyYW0tPnByb2dyYW1JbmZvKCkucHJvZ3JhbVR5cGUoKSk7Ci0gICAgICAgICAgICBtX3Zh
bGlkYXRlZFByb2dyYW0tPnNldENvbXBpbGVkUHJvZ3JhbShjb21waWxlZFByb2dyYW0pOwotICAg
ICAgICB9Ci0gICAgICAgIC8vIExhemlseSBpbmplY3QgdGhlIGNvbXBpbGVkIHByb2dyYW0gaW50
byB0aGUgQ3VzdG9tRmlsdGVyUmVuZGVyZXIuCi0gICAgICAgIG1fY3VzdG9tRmlsdGVyUmVuZGVy
ZXItPnNldENvbXBpbGVkUHJvZ3JhbShjb21waWxlZFByb2dyYW0ucmVsZWFzZSgpKTsKLSAgICB9
Ci0KLSAgICBpZiAoIW1fY3VzdG9tRmlsdGVyUmVuZGVyZXItPnByZXBhcmVGb3JEcmF3aW5nKCkp
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIC8vIE9ubHkgYWxsb2NhdGUgYSB0ZXh0dXJl
IGlmIHRoZSBwcm9ncmFtIG5lZWRzIG9uZSBhbmQgdGhlIGNhbGxlciBkb2Vzbid0IGFsbG9jYXRl
IG9uZSBieSBpdHNlbGYuCi0gICAgaWYgKChtX2N1c3RvbUZpbHRlclJlbmRlcmVyLT5wcm9ncmFt
TmVlZHNJbnB1dFRleHR1cmUoKSAmJiAhZW5zdXJlSW5wdXRUZXh0dXJlKCkpIHx8ICFlbnN1cmVG
cmFtZUJ1ZmZlcigpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICByZXR1cm4gdHJ1ZTsK
LX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6YXBwbHlTaGFkZXIoKQotewotICAgIFVpbnQ4Q2xh
bXBlZEFycmF5KiBkc3RQaXhlbEFycmF5ID0gbV9jdXN0b21GaWx0ZXJSZW5kZXJlci0+cHJlbXVs
dGlwbGllZEFscGhhKCkgPyBjcmVhdGVQcmVtdWx0aXBsaWVkSW1hZ2VSZXN1bHQoKSA6IGNyZWF0
ZVVubXVsdGlwbGllZEltYWdlUmVzdWx0KCk7Ci0gICAgaWYgKCFkc3RQaXhlbEFycmF5KQotICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBpZiAoIXByZXBhcmVGb3JEcmF3aW5nKCkpCi0gICAg
ICAgIHJldHVybiBmYWxzZTsKLQotICAgIEZpbHRlckVmZmVjdCogaW4gPSBpbnB1dEVmZmVjdCgw
KTsKLSAgICBJbnRSZWN0IGVmZmVjdERyYXdpbmdSZWN0ID0gcmVxdWVzdGVkUmVnaW9uT2ZJbnB1
dEltYWdlRGF0YShpbi0+YWJzb2x1dGVQYWludFJlY3QoKSk7Ci0gICAgSW50U2l6ZSBuZXdDb250
ZXh0U2l6ZShlZmZlY3REcmF3aW5nUmVjdC5zaXplKCkpOwotICAgIGlmICghcmVzaXplQ29udGV4
dElmTmVlZGVkKG5ld0NvbnRleHRTaXplKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAg
Ym9vbCBuZWVkc0lucHV0VGV4dHVyZSA9IG1fY3VzdG9tRmlsdGVyUmVuZGVyZXItPnByb2dyYW1O
ZWVkc0lucHV0VGV4dHVyZSgpOwotICAgIGlmIChuZWVkc0lucHV0VGV4dHVyZSkgewotICAgICAg
ICBSZWZQdHI8VWludDhDbGFtcGVkQXJyYXk+IHNyY1BpeGVsQXJyYXkgPSBpbi0+YXNVbm11bHRp
cGxpZWRJbWFnZShlZmZlY3REcmF3aW5nUmVjdCk7Ci0gICAgICAgIHVwbG9hZElucHV0VGV4dHVy
ZShzcmNQaXhlbEFycmF5LmdldCgpKTsKLSAgICB9Ci0gICAgZHJhd0ZpbHRlck1lc2gobmVlZHNJ
bnB1dFRleHR1cmUgPyBtX2lucHV0VGV4dHVyZSA6IDApOwotCi0gICAgQVNTRVJUKHN0YXRpY19j
YXN0PHNpemVfdD4obmV3Q29udGV4dFNpemUud2lkdGgoKSAqIG5ld0NvbnRleHRTaXplLmhlaWdo
dCgpICogNCkgPT0gZHN0UGl4ZWxBcnJheS0+bGVuZ3RoKCkpOwotICAgIG1fY29udGV4dC0+cmVh
ZFBpeGVscygwLCAwLCBuZXdDb250ZXh0U2l6ZS53aWR0aCgpLCBuZXdDb250ZXh0U2l6ZS5oZWln
aHQoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OlJHQkEsIEdyYXBoaWNzQ29udGV4dDNEOjpVTlNJR05F
RF9CWVRFLCBkc3RQaXhlbEFycmF5LT5kYXRhKCkpOwotCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0K
LWJvb2wgRkVDdXN0b21GaWx0ZXI6OmVuc3VyZUlucHV0VGV4dHVyZSgpCi17Ci0gICAgaWYgKCFt
X2lucHV0VGV4dHVyZSkKLSAgICAgICAgbV9pbnB1dFRleHR1cmUgPSBtX2NvbnRleHQtPmNyZWF0
ZVRleHR1cmUoKTsKLSAgICByZXR1cm4gbV9pbnB1dFRleHR1cmU7Ci19Ci0KLXZvaWQgRkVDdXN0
b21GaWx0ZXI6OnVwbG9hZElucHV0VGV4dHVyZShVaW50OENsYW1wZWRBcnJheSogc3JjUGl4ZWxB
cnJheSkKLXsKLSAgICBtX2NvbnRleHQtPmJpbmRUZXh0dXJlKEdyYXBoaWNzQ29udGV4dDNEOjpU
RVhUVVJFXzJELCBtX2lucHV0VGV4dHVyZSk7Ci0gICAgbV9jb250ZXh0LT50ZXhJbWFnZTJEKEdy
YXBoaWNzQ29udGV4dDNEOjpURVhUVVJFXzJELCAwLCBHcmFwaGljc0NvbnRleHQzRDo6UkdCQSwg
bV9jb250ZXh0U2l6ZS53aWR0aCgpLCBtX2NvbnRleHRTaXplLmhlaWdodCgpLCAwLCBHcmFwaGlj
c0NvbnRleHQzRDo6UkdCQSwgR3JhcGhpY3NDb250ZXh0M0Q6OlVOU0lHTkVEX0JZVEUsIHNyY1Bp
eGVsQXJyYXktPmRhdGEoKSk7Ci19Ci0KLWJvb2wgRkVDdXN0b21GaWx0ZXI6OmVuc3VyZUZyYW1l
QnVmZmVyKCkKLXsKLSAgICBpZiAoIW1fZnJhbWVCdWZmZXIpCi0gICAgICAgIG1fZnJhbWVCdWZm
ZXIgPSBtX2NvbnRleHQtPmNyZWF0ZUZyYW1lYnVmZmVyKCk7Ci0gICAgaWYgKCFtX2RlcHRoQnVm
ZmVyKQotICAgICAgICBtX2RlcHRoQnVmZmVyID0gbV9jb250ZXh0LT5jcmVhdGVSZW5kZXJidWZm
ZXIoKTsKLSAgICBpZiAoIW1fZGVzdFRleHR1cmUpCi0gICAgICAgIG1fZGVzdFRleHR1cmUgPSBt
X2NvbnRleHQtPmNyZWF0ZVRleHR1cmUoKTsKLSAgICByZXR1cm4gbV9mcmFtZUJ1ZmZlciAmJiBt
X2RlcHRoQnVmZmVyICYmIG1fZGVzdFRleHR1cmU7Ci19Ci0KLWJvb2wgRkVDdXN0b21GaWx0ZXI6
OmNyZWF0ZU11bHRpc2FtcGxlQnVmZmVyKCkKLXsKLSAgICBBU1NFUlQoIW1fdHJpZWRNdWx0aXNh
bXBsZUJ1ZmZlcik7Ci0gICAgbV90cmllZE11bHRpc2FtcGxlQnVmZmVyID0gdHJ1ZTsKLQotICAg
IEV4dGVuc2lvbnMzRCogZXh0ZW5zaW9ucyA9IG1fY29udGV4dC0+Z2V0RXh0ZW5zaW9ucygpOwot
ICAgIGlmICghZXh0ZW5zaW9ucwotICAgICAgICB8fCAhZXh0ZW5zaW9ucy0+bWF5U3VwcG9ydE11
bHRpc2FtcGxpbmcoKQotICAgICAgICB8fCAhZXh0ZW5zaW9ucy0+c3VwcG9ydHMoIkdMX0FOR0xF
X2ZyYW1lYnVmZmVyX211bHRpc2FtcGxlIikKLSAgICAgICAgfHwgIWV4dGVuc2lvbnMtPnN1cHBv
cnRzKCJHTF9BTkdMRV9mcmFtZWJ1ZmZlcl9ibGl0IikKLSAgICAgICAgfHwgIWV4dGVuc2lvbnMt
PnN1cHBvcnRzKCJHTF9PRVNfcmdiOF9yZ2JhOCIpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0K
LSAgICBleHRlbnNpb25zLT5lbnN1cmVFbmFibGVkKCJHTF9BTkdMRV9mcmFtZWJ1ZmZlcl9ibGl0
Iik7Ci0gICAgZXh0ZW5zaW9ucy0+ZW5zdXJlRW5hYmxlZCgiR0xfQU5HTEVfZnJhbWVidWZmZXJf
bXVsdGlzYW1wbGUiKTsKLSAgICBleHRlbnNpb25zLT5lbnN1cmVFbmFibGVkKCJHTF9PRVNfcmdi
OF9yZ2JhOCIpOwotCi0gICAgaWYgKCFtX211bHRpc2FtcGxlRnJhbWVCdWZmZXIpCi0gICAgICAg
IG1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZlciA9IG1fY29udGV4dC0+Y3JlYXRlRnJhbWVidWZmZXIo
KTsKLSAgICBpZiAoIW1fbXVsdGlzYW1wbGVSZW5kZXJCdWZmZXIpCi0gICAgICAgIG1fbXVsdGlz
YW1wbGVSZW5kZXJCdWZmZXIgPSBtX2NvbnRleHQtPmNyZWF0ZVJlbmRlcmJ1ZmZlcigpOwotICAg
IGlmICghbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKQotICAgICAgICBtX211bHRpc2FtcGxlRGVw
dGhCdWZmZXIgPSBtX2NvbnRleHQtPmNyZWF0ZVJlbmRlcmJ1ZmZlcigpOwotCi0gICAgcmV0dXJu
IHRydWU7Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0ZXI6OnJlc29sdmVNdWx0aXNhbXBsZUJ1ZmZl
cigpCi17Ci0gICAgQVNTRVJUKG1fdHJpZWRNdWx0aXNhbXBsZUJ1ZmZlciAmJiBtX211bHRpc2Ft
cGxlRnJhbWVCdWZmZXIgJiYgbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlciAmJiBtX211bHRpc2Ft
cGxlRGVwdGhCdWZmZXIpOwotICAgIG1fY29udGV4dC0+YmluZEZyYW1lYnVmZmVyKEV4dGVuc2lv
bnMzRDo6UkVBRF9GUkFNRUJVRkZFUiwgbV9tdWx0aXNhbXBsZUZyYW1lQnVmZmVyKTsKLSAgICBt
X2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihFeHRlbnNpb25zM0Q6OkRSQVdfRlJBTUVCVUZGRVIs
IG1fZnJhbWVCdWZmZXIpOwotCi0gICAgQVNTRVJUKG1fY29udGV4dC0+Z2V0RXh0ZW5zaW9ucygp
KTsKLSAgICBtX2NvbnRleHQtPmdldEV4dGVuc2lvbnMoKS0+YmxpdEZyYW1lYnVmZmVyKDAsIDAs
IG1fY29udGV4dFNpemUud2lkdGgoKSwgbV9jb250ZXh0U2l6ZS5oZWlnaHQoKSwgMCwgMCwgbV9j
b250ZXh0U2l6ZS53aWR0aCgpLCBtX2NvbnRleHRTaXplLmhlaWdodCgpLCBHcmFwaGljc0NvbnRl
eHQzRDo6Q09MT1JfQlVGRkVSX0JJVCwgR3JhcGhpY3NDb250ZXh0M0Q6Ok5FQVJFU1QpOwotCi0g
ICAgbV9jb250ZXh0LT5iaW5kRnJhbWVidWZmZXIoRXh0ZW5zaW9uczNEOjpSRUFEX0ZSQU1FQlVG
RkVSLCAwKTsKLSAgICBtX2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihFeHRlbnNpb25zM0Q6OkRS
QVdfRlJBTUVCVUZGRVIsIDApOwotCi0gICAgbV9jb250ZXh0LT5iaW5kRnJhbWVidWZmZXIoR3Jh
cGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSLCBtX2ZyYW1lQnVmZmVyKTsKLX0KLQotYm9vbCBG
RUN1c3RvbUZpbHRlcjo6Y2FuVXNlTXVsdGlzYW1wbGVCdWZmZXJzKCkgY29uc3QKLXsKLSAgICBy
ZXR1cm4gbV90cmllZE11bHRpc2FtcGxlQnVmZmVyICYmIG1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZl
ciAmJiBtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyICYmIG1fbXVsdGlzYW1wbGVEZXB0aEJ1ZmZl
cjsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6cmVzaXplTXVsdGlzYW1wbGVCdWZmZXJzKGNv
bnN0IEludFNpemUmIG5ld0NvbnRleHRTaXplKQotewotICAgIGlmICghbV90cmllZE11bHRpc2Ft
cGxlQnVmZmVyICYmICFjcmVhdGVNdWx0aXNhbXBsZUJ1ZmZlcigpKQotICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0KLSAgICBpZiAoIWNhblVzZU11bHRpc2FtcGxlQnVmZmVycygpKQotICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0KLSAgICBzdGF0aWMgY29uc3QgaW50IGtNYXhTYW1wbGVDb3VudCA9IDQ7
Ci0gICAgaW50IG1heFN1cHBvcnRlZFNhbXBsZUNvdW50ID0gMDsKLSAgICBtX2NvbnRleHQtPmdl
dEludGVnZXJ2KEV4dGVuc2lvbnMzRDo6TUFYX1NBTVBMRVMsICZtYXhTdXBwb3J0ZWRTYW1wbGVD
b3VudCk7Ci0gICAgaW50IHNhbXBsZUNvdW50ID0gc3RkOjptaW4oa01heFNhbXBsZUNvdW50LCBt
YXhTdXBwb3J0ZWRTYW1wbGVDb3VudCk7Ci0gICAgaWYgKCFzYW1wbGVDb3VudCkgewotICAgICAg
ICBkZWxldGVNdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcnMoKTsKLSAgICAgICAgcmV0dXJuIGZhbHNl
OwotICAgIH0KLQotICAgIEV4dGVuc2lvbnMzRCogZXh0ZW5zaW9ucyA9IG1fY29udGV4dC0+Z2V0
RXh0ZW5zaW9ucygpOwotICAgIEFTU0VSVChleHRlbnNpb25zKTsKLQotICAgIG1fY29udGV4dC0+
YmluZEZyYW1lYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUiwgbV9tdWx0aXNh
bXBsZUZyYW1lQnVmZmVyKTsKLQotICAgIG1fY29udGV4dC0+YmluZFJlbmRlcmJ1ZmZlcihHcmFw
aGljc0NvbnRleHQzRDo6UkVOREVSQlVGRkVSLCBtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyKTsK
LSAgICBleHRlbnNpb25zLT5yZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUoR3JhcGhpY3ND
b250ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgc2FtcGxlQ291bnQsIEV4dGVuc2lvbnMzRDo6UkdCQThf
T0VTLCBuZXdDb250ZXh0U2l6ZS53aWR0aCgpLCBuZXdDb250ZXh0U2l6ZS5oZWlnaHQoKSk7Ci0g
ICAgbV9jb250ZXh0LT5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6
RlJBTUVCVUZGRVIsIEdyYXBoaWNzQ29udGV4dDNEOjpDT0xPUl9BVFRBQ0hNRU5UMCwgR3JhcGhp
Y3NDb250ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcik7Ci0K
LSAgICBtX2NvbnRleHQtPmJpbmRSZW5kZXJidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OlJFTkRF
UkJVRkZFUiwgbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKTsKLSAgICBleHRlbnNpb25zLT5yZW5k
ZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUoR3JhcGhpY3NDb250ZXh0M0Q6OlJFTkRFUkJVRkZF
Uiwgc2FtcGxlQ291bnQsIEdyYXBoaWNzQ29udGV4dDNEOjpERVBUSF9DT01QT05FTlQxNiwgbmV3
Q29udGV4dFNpemUud2lkdGgoKSwgbmV3Q29udGV4dFNpemUuaGVpZ2h0KCkpOwotICAgIG1fY29u
dGV4dC0+ZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVG
RkVSLCBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfQVRUQUNITUVOVCwgR3JhcGhpY3NDb250ZXh0
M0Q6OlJFTkRFUkJVRkZFUiwgbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKTsKLQotICAgIG1fY29u
dGV4dC0+YmluZFJlbmRlcmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6UkVOREVSQlVGRkVSLCAw
KTsKLQotICAgIGlmIChtX2NvbnRleHQtPmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoR3JhcGhpY3ND
b250ZXh0M0Q6OkZSQU1FQlVGRkVSKSAhPSBHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVJf
Q09NUExFVEUpIHsKLSAgICAgICAgZGVsZXRlTXVsdGlzYW1wbGVSZW5kZXJCdWZmZXJzKCk7Ci0g
ICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotYm9v
bCBGRUN1c3RvbUZpbHRlcjo6cmVzaXplQ29udGV4dElmTmVlZGVkKGNvbnN0IEludFNpemUmIG5l
d0NvbnRleHRTaXplKQotewotICAgIGlmIChuZXdDb250ZXh0U2l6ZS5pc0VtcHR5KCkpCi0gICAg
ICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAobV9jb250ZXh0U2l6ZSA9PSBuZXdDb250ZXh0U2l6
ZSkKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0KLSAgICBpbnQgbWF4VGV4dHVyZVNpemUgPSAwOwot
ICAgIG1fY29udGV4dC0+Z2V0SW50ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6Ok1BWF9URVhUVVJF
X1NJWkUsICZtYXhUZXh0dXJlU2l6ZSk7Ci0gICAgaWYgKG5ld0NvbnRleHRTaXplLmhlaWdodCgp
ID4gbWF4VGV4dHVyZVNpemUgfHwgbmV3Q29udGV4dFNpemUud2lkdGgoKSA+IG1heFRleHR1cmVT
aXplKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICByZXR1cm4gcmVzaXplQ29udGV4dChu
ZXdDb250ZXh0U2l6ZSk7Ci19Ci0KLWJvb2wgRkVDdXN0b21GaWx0ZXI6OnJlc2l6ZUNvbnRleHQo
Y29uc3QgSW50U2l6ZSYgbmV3Q29udGV4dFNpemUpCi17Ci0gICAgYm9vbCBtdWx0aXNhbXBsZSA9
IHJlc2l6ZU11bHRpc2FtcGxlQnVmZmVycyhuZXdDb250ZXh0U2l6ZSk7Ci0KLSAgICBtX2NvbnRl
eHQtPmJpbmRGcmFtZWJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVIsIG1fZnJh
bWVCdWZmZXIpOwotICAgIG1fY29udGV4dC0+YmluZFRleHR1cmUoR3JhcGhpY3NDb250ZXh0M0Q6
OlRFWFRVUkVfMkQsIG1fZGVzdFRleHR1cmUpOwotICAgIC8vIFdlIGFyZSBnb2luZyB0byBjbGVh
ciB0aGUgb3V0cHV0IGJ1ZmZlciBhbnl3YXksIHNvIHdlIGNhbiBzYWZlbHkgaW5pdGlhbGl6ZSB0
aGUgZGVzdGluYXRpb24gdGV4dHVyZSB3aXRoIGdhcmJhZ2UgZGF0YS4KLSAgICBtX2NvbnRleHQt
PnRleEltYWdlMkREaXJlY3QoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfMkQsIDAsIEdyYXBo
aWNzQ29udGV4dDNEOjpSR0JBLCBuZXdDb250ZXh0U2l6ZS53aWR0aCgpLCBuZXdDb250ZXh0U2l6
ZS5oZWlnaHQoKSwgMCwgR3JhcGhpY3NDb250ZXh0M0Q6OlJHQkEsIEdyYXBoaWNzQ29udGV4dDNE
OjpVTlNJR05FRF9CWVRFLCAwKTsKLSAgICBtX2NvbnRleHQtPmZyYW1lYnVmZmVyVGV4dHVyZTJE
KEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUiwgR3JhcGhpY3NDb250ZXh0M0Q6OkNPTE9S
X0FUVEFDSE1FTlQwLCBHcmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV8yRCwgbV9kZXN0VGV4dHVy
ZSwgMCk7Ci0KLSAgICAvLyBXZSBkb24ndCBuZWVkIHRoZSBkZXB0aCBidWZmZXIgZm9yIHRoZSB0
ZXh0dXJlIGZyYW1lYnVmZmVyLCBpZiB3ZSBhbHJlYWR5Ci0gICAgLy8gaGF2ZSBhIG11bHRpc2Ft
cGxlIGJ1ZmZlci4KLSAgICBpZiAoIW11bHRpc2FtcGxlKSB7Ci0gICAgICAgIG1fY29udGV4dC0+
YmluZFJlbmRlcmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6UkVOREVSQlVGRkVSLCBtX2RlcHRo
QnVmZmVyKTsKLSAgICAgICAgbV9jb250ZXh0LT5yZW5kZXJidWZmZXJTdG9yYWdlKEdyYXBoaWNz
Q29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIEdyYXBoaWNzQ29udGV4dDNEOjpERVBUSF9DT01QT05F
TlQxNiwgbmV3Q29udGV4dFNpemUud2lkdGgoKSwgbmV3Q29udGV4dFNpemUuaGVpZ2h0KCkpOwot
ICAgICAgICBtX2NvbnRleHQtPmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKEdyYXBoaWNzQ29udGV4
dDNEOjpGUkFNRUJVRkZFUiwgR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX0FUVEFDSE1FTlQsIEdy
YXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIG1fZGVwdGhCdWZmZXIpOwotICAgIH0KLQot
ICAgIGlmIChtX2NvbnRleHQtPmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoR3JhcGhpY3NDb250ZXh0
M0Q6OkZSQU1FQlVGRkVSKSAhPSBHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVJfQ09NUExF
VEUpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGlmIChtdWx0aXNhbXBsZSkgewotICAg
ICAgICAvLyBDbGVhciB0aGUgZnJhbWVidWZmZXIgZmlyc3QsIG90aGVyd2lzZSB0aGUgZmlyc3Qg
YmxpdCB3aWxsIGZhaWwuCi0gICAgICAgIG1fY29udGV4dC0+Y2xlYXJDb2xvcigwLCAwLCAwLCAw
KTsKLSAgICAgICAgbV9jb250ZXh0LT5jbGVhcihHcmFwaGljc0NvbnRleHQzRDo6Q09MT1JfQlVG
RkVSX0JJVCk7Ci0gICAgfQotCi0gICAgbV9jb250ZXh0LT5iaW5kUmVuZGVyYnVmZmVyKEdyYXBo
aWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIDApOwotCi0gICAgbV9jb250ZXh0U2l6ZSA9IG5l
d0NvbnRleHRTaXplOwotICAgIHJldHVybiB0cnVlOwotfQotCi12b2lkIEZFQ3VzdG9tRmlsdGVy
OjpkdW1wKCkKLXsKLX0KLQotVGV4dFN0cmVhbSYgRkVDdXN0b21GaWx0ZXI6OmV4dGVybmFsUmVw
cmVzZW50YXRpb24oVGV4dFN0cmVhbSYgdHMsIGludCBpbmRlbnQpIGNvbnN0Ci17Ci0gICAgd3Jp
dGVJbmRlbnQodHMsIGluZGVudCk7Ci0gICAgdHMgPDwgIltmZUN1c3RvbUZpbHRlciI7Ci0gICAg
RmlsdGVyRWZmZWN0OjpleHRlcm5hbFJlcHJlc2VudGF0aW9uKHRzKTsKLSAgICB0cyA8PCAiXVxu
IjsKLSAgICBpbnB1dEVmZmVjdCgwKS0+ZXh0ZXJuYWxSZXByZXNlbnRhdGlvbih0cywgaW5kZW50
ICsgMSk7Ci0gICAgcmV0dXJuIHRzOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDdXN0b21GaWx0
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDdXN0b21G
aWx0ZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzk5NmY0ZC4uMDAwMDAwMAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmls
dGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMDYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBGRUN1c3RvbUZpbHRlcl9oCi0jZGVmaW5lIEZFQ3VzdG9t
RmlsdGVyX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQot
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAiRmlsdGVyLmgiCi0jaW5jbHVkZSAiRmlsdGVyRWZm
ZWN0LmgiCi0jaW5jbHVkZSAiR3JhcGhpY3NUeXBlczNELmgiCi0jaW5jbHVkZSA8cnVudGltZS9V
aW50OENsYW1wZWRBcnJheS5oPgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KLQotbmFtZXNwYWNl
IFdlYkNvcmUgewotCi1jbGFzcyBDdXN0b21GaWx0ZXJSZW5kZXJlcjsKLWNsYXNzIEN1c3RvbUZp
bHRlclZhbGlkYXRlZFByb2dyYW07Ci1jbGFzcyBHcmFwaGljc0NvbnRleHQzRDsKLWNsYXNzIElu
dFNpemU7Ci0KLWNsYXNzIEZFQ3VzdG9tRmlsdGVyIDogcHVibGljIEZpbHRlckVmZmVjdCB7Ci1w
dWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8RkVDdXN0b21GaWx0ZXI+IGNyZWF0ZShGaWx0
ZXIqLCBQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiwgUGFzc1JlZlB0cjxDdXN0b21GaWx0
ZXJWYWxpZGF0ZWRQcm9ncmFtPiwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYsCi0g
ICAgICAgIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucywgQ3VzdG9tRmls
dGVyTWVzaFR5cGUpOwotCi0gICAgdmlydHVhbCB2b2lkIHBsYXRmb3JtQXBwbHlTb2Z0d2FyZSgp
OwotICAgIHZpcnR1YWwgdm9pZCBkdW1wKCk7Ci0KLSAgICB2aXJ0dWFsIFRleHRTdHJlYW0mIGV4
dGVybmFsUmVwcmVzZW50YXRpb24oVGV4dFN0cmVhbSYsIGludCBpbmRlbnRpb24pIGNvbnN0Owot
Ci1wcml2YXRlOgotICAgIEZFQ3VzdG9tRmlsdGVyKEZpbHRlciosIFBhc3NSZWZQdHI8R3JhcGhp
Y3NDb250ZXh0M0Q+LCBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+LCBj
b25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiwKLSAgICAgICAgdW5zaWduZWQgbWVzaFJv
d3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSk7Ci0gICAgfkZF
Q3VzdG9tRmlsdGVyKCk7Ci0KLSAgICBib29sIGFwcGx5U2hhZGVyKCk7Ci0gICAgdm9pZCBjbGVh
clNoYWRlclJlc3VsdCgpOwotICAgIGJvb2wgaW5pdGlhbGl6ZUNvbnRleHQoKTsKLQotICAgIGJv
b2wgcHJlcGFyZUZvckRyYXdpbmcoKTsKLQotICAgIHZvaWQgZHJhd0ZpbHRlck1lc2goUGxhdGZv
cm0zRE9iamVjdCBpbnB1dFRleHR1cmUpOwotICAgIGJvb2wgZW5zdXJlSW5wdXRUZXh0dXJlKCk7
Ci0gICAgdm9pZCB1cGxvYWRJbnB1dFRleHR1cmUoVWludDhDbGFtcGVkQXJyYXkqIHNyY1BpeGVs
QXJyYXkpOwotICAgIGJvb2wgcmVzaXplQ29udGV4dElmTmVlZGVkKGNvbnN0IEludFNpemUmKTsK
LSAgICBib29sIHJlc2l6ZUNvbnRleHQoY29uc3QgSW50U2l6ZSYpOwotCi0gICAgYm9vbCBjYW5V
c2VNdWx0aXNhbXBsZUJ1ZmZlcnMoKSBjb25zdDsKLSAgICBib29sIGNyZWF0ZU11bHRpc2FtcGxl
QnVmZmVyKCk7Ci0gICAgYm9vbCByZXNpemVNdWx0aXNhbXBsZUJ1ZmZlcnMoY29uc3QgSW50U2l6
ZSYpOwotICAgIHZvaWQgcmVzb2x2ZU11bHRpc2FtcGxlQnVmZmVyKCk7Ci0gICAgdm9pZCBkZWxl
dGVNdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcnMoKTsKLQotICAgIGJvb2wgZW5zdXJlRnJhbWVCdWZm
ZXIoKTsKLSAgICB2b2lkIGRlbGV0ZVJlbmRlckJ1ZmZlcnMoKTsKLQotICAgIFJlZlB0cjxHcmFw
aGljc0NvbnRleHQzRD4gbV9jb250ZXh0OwotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0
ZWRQcm9ncmFtPiBtX3ZhbGlkYXRlZFByb2dyYW07Ci0gICAgUmVmUHRyPEN1c3RvbUZpbHRlclJl
bmRlcmVyPiBtX2N1c3RvbUZpbHRlclJlbmRlcmVyOwotICAgIEludFNpemUgbV9jb250ZXh0U2l6
ZTsKLQotICAgIFBsYXRmb3JtM0RPYmplY3QgbV9pbnB1dFRleHR1cmU7Ci0gICAgUGxhdGZvcm0z
RE9iamVjdCBtX2ZyYW1lQnVmZmVyOwotICAgIFBsYXRmb3JtM0RPYmplY3QgbV9kZXB0aEJ1ZmZl
cjsKLSAgICBQbGF0Zm9ybTNET2JqZWN0IG1fZGVzdFRleHR1cmU7Ci0KLSAgICBib29sIG1fdHJp
ZWRNdWx0aXNhbXBsZUJ1ZmZlcjsKLSAgICBQbGF0Zm9ybTNET2JqZWN0IG1fbXVsdGlzYW1wbGVG
cmFtZUJ1ZmZlcjsKLSAgICBQbGF0Zm9ybTNET2JqZWN0IG1fbXVsdGlzYW1wbGVSZW5kZXJCdWZm
ZXI7Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBtX211bHRpc2FtcGxlRGVwdGhCdWZmZXI7Ci19Owot
Ci19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMp
ICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2VuZGlmIC8vIEZFQ3VzdG9tRmlsdGVyX2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3Bl
cmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRl
ck9wZXJhdGlvbi5oCmluZGV4IGQ2NWQ3NDMuLjBjNDE5YzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3BlcmF0aW9uLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb24u
aApAQCAtNjQsMTAgKzY0LDYgQEAgcHVibGljOgogICAgICAgICBDT05UUkFTVCwKICAgICAgICAg
QkxVUiwKICAgICAgICAgRFJPUF9TSEFET1csCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
ICAgICBDVVNUT00sCi0gICAgICAgIFZBTElEQVRFRF9DVVNUT00sCi0jZW5kaWYKICAgICAgICAg
UEFTU1RIUk9VR0gsCiAgICAgICAgIE5PTkUKICAgICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3BlcmF0aW9ucy5j
cHAKaW5kZXggYTI4NTM4YS4uNDI3OTE2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuY3BwCkBA
IC04NywxOCArODcsNiBAQCBib29sIEZpbHRlck9wZXJhdGlvbnM6Om9wZXJhdGlvbnNNYXRjaChj
b25zdCBGaWx0ZXJPcGVyYXRpb25zJiBvdGhlcikgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0K
IAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLWJvb2wgRmlsdGVyT3BlcmF0aW9uczo6aGFzQ3Vz
dG9tRmlsdGVyKCkgY29uc3QKLXsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fb3BlcmF0
aW9ucy5zaXplKCk7ICsraSkgewotICAgICAgICBGaWx0ZXJPcGVyYXRpb246Ok9wZXJhdGlvblR5
cGUgdHlwZSA9IG1fb3BlcmF0aW9ucy5hdChpKS0+dHlwZSgpOwotICAgICAgICBpZiAodHlwZSA9
PSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTSB8fCB0eXBlID09IEZpbHRlck9wZXJhdGlvbjo6VkFM
SURBVEVEX0NVU1RPTSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgIH0KLSAgICByZXR1
cm4gZmFsc2U7Ci19Ci0jZW5kaWYKLQogYm9vbCBGaWx0ZXJPcGVyYXRpb25zOjpoYXNSZWZlcmVu
Y2VGaWx0ZXIoKSBjb25zdAogewogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9vcGVyYXRp
b25zLnNpemUoKTsgKytpKSB7CkBAIC0xNDQsMTQgKzEzMiw2IEBAIEZpbHRlck91dHNldHMgRmls
dGVyT3BlcmF0aW9uczo6b3V0c2V0cygpIGNvbnN0CiAgICAgICAgICAgICB0b3RhbE91dHNldHMg
Kz0gb3V0c2V0czsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOgotICAgICAg
ICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RPTTogewotICAgICAgICAgICAg
Ly8gRklYTUU6IE5lZWQgdG8gaW5jbHVkZSB0aGUgZmlsdGVyIG1hcmdpbnMgaGVyZS4KLSAgICAg
ICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTQwMAot
ICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSNlbmRpZgogICAgICAgICBkZWZhdWx0Ogog
ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3BlcmF0aW9ucy5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmgKaW5kZXgg
NzdiZjNlOC4uYzM3OTk4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmgKQEAgLTcxLDkgKzcxLDYg
QEAgcHVibGljOgogICAgIGJvb2wgaGFzRmlsdGVyVGhhdEFmZmVjdHNPcGFjaXR5KCkgY29uc3Q7
CiAgICAgYm9vbCBoYXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHMoKSBjb25zdDsKIAotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBib29sIGhhc0N1c3RvbUZpbHRlcigpIGNvbnN0OwotI2VuZGlm
CiAgICAgYm9vbCBoYXNSZWZlcmVuY2VGaWx0ZXIoKSBjb25zdDsKIHByaXZhdGU6CiAgICAgVmVj
dG9yPFJlZlB0cjxGaWx0ZXJPcGVyYXRpb24+PiBtX29wZXJhdGlvbnM7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1ZhbGlkYXRlZEN1c3RvbUZp
bHRlck9wZXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDFmNjRkNTcuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwCisr
KyAvZGV2L251bGwKQEAgLTEsNjggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBB
ZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICog
ICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQot
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwot
Ci0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVk
ZSAiVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0KLSNpbmNsdWRlICJDdXN0b21G
aWx0ZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFt
LmgiCi0jaW5jbHVkZSAiTGF5b3V0U2l6ZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbjo6VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gdmFsaWRhdGVkUHJv
Z3JhbSwgCi0gICAgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgc29ydGVkUGFyYW1l
dGVycywgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0b21GaWx0
ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAgICA6IEZpbHRlck9wZXJhdGlvbihWQUxJREFURURfQ1VT
VE9NKQotICAgICwgbV92YWxpZGF0ZWRQcm9ncmFtKHZhbGlkYXRlZFByb2dyYW0pCi0gICAgLCBt
X3BhcmFtZXRlcnMoc29ydGVkUGFyYW1ldGVycykKLSAgICAsIG1fbWVzaFJvd3MobWVzaFJvd3Mp
Ci0gICAgLCBtX21lc2hDb2x1bW5zKG1lc2hDb2x1bW5zKQotICAgICwgbV9tZXNoVHlwZShtZXNo
VHlwZSkKLXsKLX0KLQotVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOjp+VmFsaWRhdGVk
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uKCkKLXsKLX0KLQotUGFzc1JlZlB0cjxGaWx0ZXJPcGVyYXRp
b24+IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbjo6YmxlbmQoY29uc3QgRmlsdGVyT3Bl
cmF0aW9uKiwgZG91YmxlIHByb2dyZXNzLCBjb25zdCBMYXlvdXRTaXplJiBzaXplLCBib29sIGJs
ZW5kVG9QYXNzdGhyb3VnaCkKLXsKLSAgICBVTlVTRURfUEFSQU0ocHJvZ3Jlc3MpOwotICAgIFVO
VVNFRF9QQVJBTShzaXplKTsKLSAgICBVTlVTRURfUEFSQU0oYmxlbmRUb1Bhc3N0aHJvdWdoKTsK
LQotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiB0aGlzOwotfQotCi19IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1ZhbGlkYXRl
ZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggZWFiYjBkNS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5o
CisrKyAvZGV2L251bGwKQEAgLTEsOTUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
MiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0g
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwot
ICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAq
LwotCi0jaWZuZGVmIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbl9oCi0jZGVmaW5lIFZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmls
dGVyUGFyYW1ldGVyTGlzdC5oIgotI2luY2x1ZGUgIkZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1
ZGUgIkxheW91dFNpemUuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOwotCi1jbGFzcyBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24gOiBwdWJsaWMgRmlsdGVyT3BlcmF0aW9uIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFz
c1JlZlB0cjxWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24+IGNyZWF0ZShQYXNzUmVmUHRy
PEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+IHZhbGlkYXRlZFByb2dyYW0sIAotICAgICAg
ICBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBzb3J0ZWRQYXJhbWV0ZXJzLCB1bnNp
Z25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1lc2hUeXBl
IG1lc2hUeXBlKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBWYWxpZGF0ZWRD
dXN0b21GaWx0ZXJPcGVyYXRpb24odmFsaWRhdGVkUHJvZ3JhbSwgc29ydGVkUGFyYW1ldGVycywg
bWVzaFJvd3MsIG1lc2hDb2x1bW5zLCBtZXNoVHlwZSkpOwotICAgIH0KLQotICAgIHZpcnR1YWwg
flZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbigpOwotCi0gICAgdmlydHVhbCBib29sIGFm
ZmVjdHNPcGFjaXR5KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotICAgIHZpcnR1YWwgYm9vbCBt
b3Zlc1BpeGVscygpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KLSAgICB2aXJ0dWFsIGJvb2wgYmxl
bmRpbmdOZWVkc1JlbmRlcmVyU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KLQotICAgIHZp
cnR1YWwgUGFzc1JlZlB0cjxGaWx0ZXJPcGVyYXRpb24+IGJsZW5kKGNvbnN0IEZpbHRlck9wZXJh
dGlvbiogZnJvbSwgZG91YmxlIHByb2dyZXNzLCBjb25zdCBMYXlvdXRTaXplJiwgYm9vbCBibGVu
ZFRvUGFzc3Rocm91Z2ggPSBmYWxzZSk7Ci0KLSAgICBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9n
cmFtKiB2YWxpZGF0ZWRQcm9ncmFtKCkgY29uc3QgeyByZXR1cm4gbV92YWxpZGF0ZWRQcm9ncmFt
LmdldCgpOyB9Ci0gICAgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVy
cygpIGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1ldGVyczsgfQotCi0gICAgdW5zaWduZWQgbWVzaFJv
d3MoKSBjb25zdCB7IHJldHVybiBtX21lc2hSb3dzOyB9Ci0gICAgdW5zaWduZWQgbWVzaENvbHVt
bnMoKSBjb25zdCB7IHJldHVybiBtX21lc2hDb2x1bW5zOyB9Ci0KLSAgICBDdXN0b21GaWx0ZXJN
ZXNoVHlwZSBtZXNoVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaFR5cGU7IH0KLQotcHJpdmF0
ZToKLSAgICB2aXJ0dWFsIGJvb2wgb3BlcmF0b3I9PShjb25zdCBGaWx0ZXJPcGVyYXRpb24mIG8p
IGNvbnN0Ci0gICAgewotICAgICAgICBpZiAoIWlzU2FtZVR5cGUobykpCi0gICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgY29uc3QgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uKiBvdGhlciA9IHN0YXRpY19jYXN0PGNvbnN0IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJh
dGlvbio+KCZvKTsKLSAgICAgICAgcmV0dXJuIG1fdmFsaWRhdGVkUHJvZ3JhbS5nZXQoKSA9PSBv
dGhlci0+bV92YWxpZGF0ZWRQcm9ncmFtLmdldCgpCi0gICAgICAgICAgICAmJiBtX21lc2hSb3dz
ID09IG90aGVyLT5tX21lc2hSb3dzCi0gICAgICAgICAgICAmJiBtX21lc2hDb2x1bW5zID09IG90
aGVyLT5tX21lc2hDb2x1bW5zCi0gICAgICAgICAgICAmJiBtX21lc2hUeXBlID09IG90aGVyLT5t
X21lc2hUeXBlCi0gICAgICAgICAgICAmJiBtX3BhcmFtZXRlcnMgPT0gb3RoZXItPm1fcGFyYW1l
dGVyczsKLSAgICB9Ci0KLSAgICBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24oUGFzc1Jl
ZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiwgY29uc3QgQ3VzdG9tRmlsdGVyUGFy
YW1ldGVyTGlzdCYsIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucywgQ3Vz
dG9tRmlsdGVyTWVzaFR5cGUpOwotCi0gICAgUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFBy
b2dyYW0+IG1fdmFsaWRhdGVkUHJvZ3JhbTsKLQotICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3QgbV9wYXJhbWV0ZXJzOwotICAgIHVuc2lnbmVkIG1fbWVzaFJvd3M7Ci0gICAgdW5zaWduZWQg
bV9tZXNoQ29sdW1uczsKLSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtX21lc2hUeXBlOwotfTsK
LQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJT
KQotCi0jZW5kaWYgLy8gVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uX2gKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvdGV4bWFwL0N1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW1UZXh0dXJlTWFwcGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvdGV4bWFwL0N1c3RvbUZpbHRlclZhbGlkYXRlZFBy
b2dyYW1UZXh0dXJlTWFwcGVyLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmVk
MGU2ZS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL3RleG1hcC9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtVGV4dHVyZU1hcHBlci5jcHAK
KysrIC9kZXYvbnVsbApAQCAtMSw1OCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEy
IEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Q09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
Ci0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICov
Ci0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNF
KFRFWFRVUkVfTUFQUEVSKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0u
aCIKLQotI2luY2x1ZGUgIlRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbS5oIgot
Ci1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKiBDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpwbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSgpCi17Ci0gICAg
aWYgKCFtX3BsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKQotICAgICAgICBtX3BsYXRmb3JtQ29tcGls
ZWRQcm9ncmFtID0gVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtOjpjcmVhdGUo
KS5sZWFrUmVmKCk7Ci0gICAgcmV0dXJuIG1fcGxhdGZvcm1Db21waWxlZFByb2dyYW07Ci19Ci0K
LXZvaWQgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6cGxhdGZvcm1Jbml0KCkKLXsKLSAg
ICBtX3BsYXRmb3JtQ29tcGlsZWRQcm9ncmFtID0gMDsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJW
YWxpZGF0ZWRQcm9ncmFtOjpwbGF0Zm9ybURlc3Ryb3koKQotewotICAgIGRlcmVmSWZOb3ROdWxs
KG1fcGxhdGZvcm1Db21waWxlZFByb2dyYW0pOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRShURVhUVVJFX01BUFBFUikK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvdGV4
bWFwL1RleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbS5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy90ZXhtYXAvVGV4dHVyZU1hcHBlclBsYXRmb3Jt
Q29tcGlsZWRQcm9ncmFtLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFmYTZjYTUu
LjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy90
ZXhtYXAvVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtLmgKKysrIC9kZXYvbnVs
bApAQCAtMSw3MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3Rl
bXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFp
bWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhP
TERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgot
ICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYg
VGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtX2gKLSNkZWZpbmUgVGV4dHVyZU1h
cHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykK
LSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+
Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNz
IFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbUNsaWVudCB7Ci1wdWJsaWM6Ci0g
ICAgdm9pZCByZWYoKSB7IHJlZkZyb21WYWxpZGF0ZWRQcm9ncmFtKCk7IH0KLSAgICB2b2lkIGRl
cmVmKCkgeyBkZXJlZkZyb21WYWxpZGF0ZWRQcm9ncmFtKCk7IH0KLQotICAgIHZpcnR1YWwgdm9p
ZCByZWZGcm9tVmFsaWRhdGVkUHJvZ3JhbSgpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGVyZWZG
cm9tVmFsaWRhdGVkUHJvZ3JhbSgpID0gMDsKLX07Ci0KLWNsYXNzIFRleHR1cmVNYXBwZXJQbGF0
Zm9ybUNvbXBpbGVkUHJvZ3JhbSA6IHB1YmxpYyBSZWZDb3VudGVkPFRleHR1cmVNYXBwZXJQbGF0
Zm9ybUNvbXBpbGVkUHJvZ3JhbT4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFRl
eHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbT4gY3JlYXRlKCkKLSAgICB7Ci0gICAg
ICAgIHJldHVybiBhZG9wdFJlZihuZXcgVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9n
cmFtKCkpOwotICAgIH0KLSAgICAKLSAgICB2b2lkIHNldENsaWVudChQYXNzUmVmUHRyPFRleHR1
cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbUNsaWVudD4gY2xpZW50KSB7IG1fY2xpZW50
ID0gY2xpZW50OyB9Ci0gICAgVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtQ2xp
ZW50KiBjbGllbnQoKSBjb25zdCB7IHJldHVybiBtX2NsaWVudC5nZXQoKTsgfQotCi1wcml2YXRl
OgotICAgIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSgpCi0gICAgewotICAg
IH0KLQotICAgIFJlZlB0cjxUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW1DbGll
bnQ+IG1fY2xpZW50OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29t
cGlsZWRQcm9ncmFtX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dwdS9UZXh0dXJlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dw
dS9UZXh0dXJlLmNwcAppbmRleCA2NDJiMGQ1Li4zMWFhYTYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RleHR1cmUuY3BwCkBAIC0zMCw3ICszMCw3IEBA
CiAKICNpbmNsdWRlICJjb25maWcuaCIKIAotI2lmIEVOQUJMRShBQ0NFTEVSQVRFRF8yRF9DQU5W
QVMpIHx8IEVOQUJMRShDU1NfU0hBREVSUykKKyNpZiBFTkFCTEUoQUNDRUxFUkFURURfMkRfQ0FO
VkFTKQogCiAjaW5jbHVkZSAiVGV4dHVyZS5oIgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXIuaAppbmRleCA0YzgwZDEz
Li5hMGExNzFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90
ZXhtYXAvVGV4dHVyZU1hcHBlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyLmgKQEAgLTM5LDcgKzM5LDYgQEAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogY2xhc3MgQml0bWFwVGV4dHVyZVBvb2w7Ci1jbGFzcyBDdXN0b21GaWx0ZXJQ
cm9ncmFtOwogY2xhc3MgR3JhcGhpY3NMYXllcjsKIGNsYXNzIFRleHR1cmVNYXBwZXI7CiBjbGFz
cyBGaWx0ZXJPcGVyYXRpb25zOwpAQCAtMTU5LDEwICsxNTgsNiBAQCBwdWJsaWM6CiAKICAgICB2
aXJ0dWFsIFBhc3NSZWZQdHI8Qml0bWFwVGV4dHVyZT4gYWNxdWlyZVRleHR1cmVGcm9tUG9vbChj
b25zdCBJbnRTaXplJik7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgdmlydHVhbCB2
b2lkIHJlbW92ZUNhY2hlZEN1c3RvbUZpbHRlclByb2dyYW0oQ3VzdG9tRmlsdGVyUHJvZ3JhbSop
IHsgfQotI2VuZGlmCi0KICAgICB2b2lkIHNldFBhdHRlcm5UcmFuc2Zvcm0oY29uc3QgVHJhbnNm
b3JtYXRpb25NYXRyaXgmIHApIHsgbV9wYXR0ZXJuVHJhbnNmb3JtID0gcDsgfQogICAgIHZvaWQg
c2V0V3JhcE1vZGUoV3JhcE1vZGUgbSkgeyBtX3dyYXBNb2RlID0gbTsgfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckdM
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFw
cGVyR0wuY3BwCmluZGV4IDg0Zjc1ZjcuLjA1Yjg4NGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wuY3Bw
CkBAIC00MiwxNSArNDIsNiBAQAogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNlbmRp
ZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbXBp
bGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1
ZGUgIkN1c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJSZW5kZXJl
ci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIKLSNpbmNsdWRl
ICJWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNlbmRpZgotCiAjaWYgIVVTRShU
RVhNQVBfT1BFTkdMX0VTXzIpCiAvLyBGSVhNRTogTW92ZSB0byBFeHRlbnNpb25zM0QuaC4KICNk
ZWZpbmUgR0xfVU5TSUdORURfSU5UXzhfOF84XzhfUkVWIDB4ODM2NwpAQCAtNDE5LDEwICs0MTAs
NiBAQCBzdGF0aWMgdW5zaWduZWQgZ2V0UGFzc2VzUmVxdWlyZWRGb3JGaWx0ZXIoRmlsdGVyT3Bl
cmF0aW9uOjpPcGVyYXRpb25UeXBlIHR5cGUpCiAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkJS
SUdIVE5FU1M6CiAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkNPTlRSQVNUOgogICAgIGNhc2Ug
RmlsdGVyT3BlcmF0aW9uOjpPUEFDSVRZOgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBj
YXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOgotICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpW
QUxJREFURURfQ1VTVE9NOgotI2VuZGlmCiAgICAgICAgIHJldHVybiAxOwogICAgIGNhc2UgRmls
dGVyT3BlcmF0aW9uOjpCTFVSOgogICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpEUk9QX1NIQURP
VzoKQEAgLTg3MCw2NSArODU3LDYgQEAgdm9pZCBCaXRtYXBUZXh0dXJlR0w6OnVwZGF0ZUNvbnRl
bnRzKEltYWdlKiBpbWFnZSwgY29uc3QgSW50UmVjdCYgdGFyZ2V0UmVjdCwgY28KICAgICB1cGRh
dGVDb250ZW50cyhpbWFnZURhdGEsIHRhcmdldFJlY3QsIG9mZnNldCwgYnl0ZXNQZXJMaW5lLCB1
cGRhdGVDb250ZW50c0ZsYWcpOwogfQogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotdm9pZCBU
ZXh0dXJlTWFwcGVyR0w6OnJlbW92ZUNhY2hlZEN1c3RvbUZpbHRlclByb2dyYW0oQ3VzdG9tRmls
dGVyUHJvZ3JhbSogcHJvZ3JhbSkKLXsKLSAgICBtX2N1c3RvbUZpbHRlclByb2dyYW1zLnJlbW92
ZShwcm9ncmFtLT5wcm9ncmFtSW5mbygpKTsKLX0KLQotYm9vbCBUZXh0dXJlTWFwcGVyR0w6OmRy
YXdVc2luZ0N1c3RvbUZpbHRlcihCaXRtYXBUZXh0dXJlJiB0YXJnZXQsIGNvbnN0IEJpdG1hcFRl
eHR1cmUmIHNvdXJjZSwgY29uc3QgRmlsdGVyT3BlcmF0aW9uJiBmaWx0ZXIpCi17Ci0gICAgUmVm
UHRyPEN1c3RvbUZpbHRlclJlbmRlcmVyPiByZW5kZXJlcjsKLSAgICBzd2l0Y2ggKGZpbHRlci50
eXBlKCkpIHsKLSAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOiB7Ci0gICAgICAgIC8v
IFdlYktpdDIgcGlwZWxpbmUgaXMgdXNpbmcgdGhlIEN1c3RvbUZpbHRlck9wZXJhdGlvbiwgdGhh
dCdzIGJlY2F1c2Ugb2YgdGhlICJkZS1zZXJpYWxpemF0aW9uIiB0aGF0Ci0gICAgICAgIC8vIGhh
cHBlbnMgaW4gQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLgotICAgICAgICBjb25z
dCBDdXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbUZpbHRlciA9IHN0YXRpY19jYXN0PGNvbnN0
IEN1c3RvbUZpbHRlck9wZXJhdGlvbio+KCZmaWx0ZXIpOwotICAgICAgICBSZWZQdHI8Q3VzdG9t
RmlsdGVyUHJvZ3JhbT4gcHJvZ3JhbSA9IGN1c3RvbUZpbHRlci0+cHJvZ3JhbSgpOwotICAgICAg
ICByZW5kZXJlciA9IEN1c3RvbUZpbHRlclJlbmRlcmVyOjpjcmVhdGUobV9jb250ZXh0M0QsIHBy
b2dyYW0tPnByb2dyYW1UeXBlKCksIGN1c3RvbUZpbHRlci0+cGFyYW1ldGVycygpLCAKLSAgICAg
ICAgICAgIGN1c3RvbUZpbHRlci0+bWVzaFJvd3MoKSwgY3VzdG9tRmlsdGVyLT5tZXNoQ29sdW1u
cygpLCBjdXN0b21GaWx0ZXItPm1lc2hUeXBlKCkpOwotICAgICAgICBDdXN0b21GaWx0ZXJQcm9n
cmFtTWFwOjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5hZGQocHJv
Z3JhbS0+cHJvZ3JhbUluZm8oKSwgbnVsbHB0cik7Ci0gICAgICAgIGlmIChyZXN1bHQuaXNOZXdF
bnRyeSkKLSAgICAgICAgICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUgPSBDdXN0b21GaWx0ZXJD
b21waWxlZFByb2dyYW06OmNyZWF0ZShtX2NvbnRleHQzRCwgcHJvZ3JhbS0+dmVydGV4U2hhZGVy
U3RyaW5nKCksIHByb2dyYW0tPmZyYWdtZW50U2hhZGVyU3RyaW5nKCksIHByb2dyYW0tPnByb2dy
YW1UeXBlKCkpOwotICAgICAgICByZW5kZXJlci0+c2V0Q29tcGlsZWRQcm9ncmFtKHJlc3VsdC5p
dGVyYXRvci0+dmFsdWUpOwotICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgY2FzZSBGaWx0ZXJP
cGVyYXRpb246OlZBTElEQVRFRF9DVVNUT006IHsKLSAgICAgICAgLy8gV2ViS2l0MSB1c2VzIHRo
ZSBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uCi0gICAgICAgIGNvbnN0IFZhbGlkYXRl
ZEN1c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9tRmlsdGVyID0gc3RhdGljX2Nhc3Q8Y29uc3Qg
VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oJmZpbHRlcik7Ci0gICAgICAgIFJlZlB0
cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiBwcm9ncmFtID0gY3VzdG9tRmlsdGVyLT52
YWxpZGF0ZWRQcm9ncmFtKCk7Ci0gICAgICAgIHJlbmRlcmVyID0gQ3VzdG9tRmlsdGVyUmVuZGVy
ZXI6OmNyZWF0ZShtX2NvbnRleHQzRCwgcHJvZ3JhbS0+cHJvZ3JhbUluZm8oKS5wcm9ncmFtVHlw
ZSgpLCBjdXN0b21GaWx0ZXItPnBhcmFtZXRlcnMoKSwKLSAgICAgICAgICAgIGN1c3RvbUZpbHRl
ci0+bWVzaFJvd3MoKSwgY3VzdG9tRmlsdGVyLT5tZXNoQ29sdW1ucygpLCBjdXN0b21GaWx0ZXIt
Pm1lc2hUeXBlKCkpOwotICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
PiBjb21waWxlZFByb2dyYW07Ci0gICAgICAgIEN1c3RvbUZpbHRlclByb2dyYW1NYXA6OkFkZFJl
c3VsdCByZXN1bHQgPSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmFkZChwcm9ncmFtLT5wcm9ncmFt
SW5mbygpLCBudWxscHRyKTsKLSAgICAgICAgaWYgKHJlc3VsdC5pc05ld0VudHJ5KQotICAgICAg
ICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSA9IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bTo6Y3JlYXRlKG1fY29udGV4dDNELCBwcm9ncmFtLT52YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIoKSwg
cHJvZ3JhbS0+dmFsaWRhdGVkRnJhZ21lbnRTaGFkZXIoKSwgcHJvZ3JhbS0+cHJvZ3JhbUluZm8o
KS5wcm9ncmFtVHlwZSgpKTsKLSAgICAgICAgcmVuZGVyZXItPnNldENvbXBpbGVkUHJvZ3JhbShy
ZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgfQotICAgIGRlZmF1
bHQ6Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgfQotICAgIGlmICghcmVuZGVyZXIgfHwgIXJlbmRlcmVyLT5wcmVwYXJlRm9yRHJhd2lu
ZygpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgc3RhdGljX2Nhc3Q8Qml0bWFwVGV4dHVy
ZUdMJj4odGFyZ2V0KS5pbml0aWFsaXplRGVwdGhCdWZmZXIoKTsKLSAgICBtX2NvbnRleHQzRC0+
ZW5hYmxlKEdyYXBoaWNzQ29udGV4dDNEOjpCTEVORCk7Ci0gICAgbV9jb250ZXh0M0QtPmJsZW5k
RnVuYyhHcmFwaGljc0NvbnRleHQzRDo6T05FLCBHcmFwaGljc0NvbnRleHQzRDo6T05FX01JTlVT
X1NSQ19BTFBIQSk7Ci0gICAgbV9jb250ZXh0M0QtPmVuYWJsZShHcmFwaGljc0NvbnRleHQzRDo6
REVQVEhfVEVTVCk7Ci0gICAgbV9jb250ZXh0M0QtPmRlcHRoRnVuYyhHcmFwaGljc0NvbnRleHQz
RDo6TEVTUyk7Ci0gICAgbV9jb250ZXh0M0QtPmNsZWFyRGVwdGgoMSk7Ci0gICAgbV9jb250ZXh0
M0QtPmRlcHRoTWFzaygxKTsKLSAgICBtX2NvbnRleHQzRC0+Y2xlYXJDb2xvcigwLCAwLCAwLCAw
KTsKLSAgICBtX2NvbnRleHQzRC0+Y2xlYXIoR3JhcGhpY3NDb250ZXh0M0Q6OkNPTE9SX0JVRkZF
Ul9CSVQgfCBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfQlVGRkVSX0JJVCk7Ci0gICAgcmVuZGVy
ZXItPmRyYXcoc3RhdGljX2Nhc3Q8Y29uc3QgQml0bWFwVGV4dHVyZUdMJj4oc291cmNlKS5pZCgp
LCBzb3VyY2Uuc2l6ZSgpKTsKLSAgICBtX2NvbnRleHQzRC0+ZGlzYWJsZShHcmFwaGljc0NvbnRl
eHQzRDo6REVQVEhfVEVTVCk7Ci0gICAgbV9jb250ZXh0M0QtPmRpc2FibGUoR3JhcGhpY3NDb250
ZXh0M0Q6OkJMRU5EKTsKLSAgICBtX2NvbnRleHQzRC0+ZGVwdGhNYXNrKDApOwotICAgIHJldHVy
biB0cnVlOwotfQotI2VuZGlmCi0KICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiB2b2lkIFRleHR1
cmVNYXBwZXJHTDo6ZHJhd0ZpbHRlcmVkKGNvbnN0IEJpdG1hcFRleHR1cmUmIHNhbXBsZXIsIGNv
bnN0IEJpdG1hcFRleHR1cmUqIGNvbnRlbnRUZXh0dXJlLCBjb25zdCBGaWx0ZXJPcGVyYXRpb24m
IGZpbHRlciwgaW50IHBhc3MpCiB7CkBAIC05NDIsMTUgKzg3MCw2IEBAIHZvaWQgVGV4dHVyZU1h
cHBlckdMOjpkcmF3RmlsdGVyZWQoY29uc3QgQml0bWFwVGV4dHVyZSYgc2FtcGxlciwgY29uc3Qg
Qml0bWFwVGV4CiAgICAgZHJhd1RleHR1cmVkUXVhZFdpdGhQcm9ncmFtKHByb2dyYW0uZ2V0KCks
IHN0YXRpY19jYXN0PGNvbnN0IEJpdG1hcFRleHR1cmVHTCY+KHNhbXBsZXIpLmlkKCksIDAsIElu
dFNpemUoMSwgMSksIHRhcmdldFJlY3QsIFRyYW5zZm9ybWF0aW9uTWF0cml4KCksIDEpOwogfQog
Ci1zdGF0aWMgYm9vbCBpc0N1c3RvbUZpbHRlcihGaWx0ZXJPcGVyYXRpb246Ok9wZXJhdGlvblR5
cGUgdHlwZSkKLXsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgcmV0dXJuIHR5cGUgPT0g
RmlsdGVyT3BlcmF0aW9uOjpDVVNUT00gfHwgdHlwZSA9PSBGaWx0ZXJPcGVyYXRpb246OlZBTElE
QVRFRF9DVVNUT007Ci0jZWxzZQotICAgIHJldHVybiBmYWxzZTsKLSNlbmRpZgotfQotCiBQYXNz
UmVmUHRyPEJpdG1hcFRleHR1cmU+IEJpdG1hcFRleHR1cmVHTDo6YXBwbHlGaWx0ZXJzKFRleHR1
cmVNYXBwZXIqIHRleHR1cmVNYXBwZXIsIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlcnMp
CiB7CiAgICAgaWYgKGZpbHRlcnMuaXNFbXB0eSgpKQpAQCAtOTY4LDI0ICs4ODcsMTUgQEAgUGFz
c1JlZlB0cjxCaXRtYXBUZXh0dXJlPiBCaXRtYXBUZXh0dXJlR0w6OmFwcGx5RmlsdGVycyhUZXh0
dXJlTWFwcGVyKiB0ZXh0dXJlTWEKICAgICAgICAgUmVmUHRyPEZpbHRlck9wZXJhdGlvbj4gZmls
dGVyID0gZmlsdGVycy5vcGVyYXRpb25zKClbaV07CiAgICAgICAgIEFTU0VSVChmaWx0ZXIpOwog
Ci0gICAgICAgIGJvb2wgY3VzdG9tID0gaXNDdXN0b21GaWx0ZXIoZmlsdGVyLT50eXBlKCkpOwot
CiAgICAgICAgIGludCBudW1QYXNzZXMgPSBnZXRQYXNzZXNSZXF1aXJlZEZvckZpbHRlcihmaWx0
ZXItPnR5cGUoKSk7CiAgICAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgbnVtUGFzc2VzOyArK2op
IHsKICAgICAgICAgICAgIGJvb2wgbGFzdCA9IChpID09IGZpbHRlcnMuc2l6ZSgpIC0gMSkgJiYg
KGogPT0gbnVtUGFzc2VzIC0gMSk7Ci0gICAgICAgICAgICBpZiAoY3VzdG9tIHx8ICFsYXN0KSB7
CisgICAgICAgICAgICBpZiAoIWxhc3QpIHsKICAgICAgICAgICAgICAgICBpZiAoIWludGVybWVk
aWF0ZVN1cmZhY2UpCiAgICAgICAgICAgICAgICAgICAgIGludGVybWVkaWF0ZVN1cmZhY2UgPSB0
ZXhtYXBHTC0+YWNxdWlyZVRleHR1cmVGcm9tUG9vbChjb250ZW50U2l6ZSgpKTsKICAgICAgICAg
ICAgICAgICB0ZXhtYXBHTC0+YmluZFN1cmZhY2UoaW50ZXJtZWRpYXRlU3VyZmFjZS5nZXQoKSk7
CiAgICAgICAgICAgICB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgICAgICBp
ZiAoY3VzdG9tKSB7Ci0gICAgICAgICAgICAgICAgaWYgKHRleG1hcEdMLT5kcmF3VXNpbmdDdXN0
b21GaWx0ZXIoKmludGVybWVkaWF0ZVN1cmZhY2UuZ2V0KCksICpyZXN1bHRTdXJmYWNlLmdldCgp
LCAqZmlsdGVyKSkKLSAgICAgICAgICAgICAgICAgICAgc3RkOjpzd2FwKHJlc3VsdFN1cmZhY2Us
IGludGVybWVkaWF0ZVN1cmZhY2UpOwotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAg
ICAgICAgfQotI2VuZGlmCiAgICAgICAgICAgICBpZiAobGFzdCkgewogICAgICAgICAgICAgICAg
IHRvQml0bWFwVGV4dHVyZUdMKHJlc3VsdFN1cmZhY2UuZ2V0KCkpLT5tX2ZpbHRlckluZm8gPSBC
aXRtYXBUZXh0dXJlR0w6OkZpbHRlckluZm8oZmlsdGVyLCBqLCBzcGFyZVN1cmZhY2UpOwogICAg
ICAgICAgICAgICAgIGJyZWFrOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5oCmluZGV4IDYxY2ExNGEuLjA4MTQw
M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9U
ZXh0dXJlTWFwcGVyR0wuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90
ZXhtYXAvVGV4dHVyZU1hcHBlckdMLmgKQEAgLTIyLDcgKzIyLDYgQEAKIAogI2lmIFVTRShBQ0NF
TEVSQVRFRF9DT01QT1NJVElORykgJiYgVVNFKFRFWFRVUkVfTUFQUEVSKQogCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKICNpbmNsdWRlICJGaWx0ZXJPcGVyYXRpb24uaCIK
ICNpbmNsdWRlICJGbG9hdFF1YWQuaCIKICNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5oIgpA
QCAtMzIsOCArMzEsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIEN1c3RvbUZp
bHRlclByb2dyYW07Ci1jbGFzcyBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW07CiBjbGFzcyBU
ZXh0dXJlTWFwcGVyR0xEYXRhOwogY2xhc3MgVGV4dHVyZU1hcHBlclNoYWRlclByb2dyYW07CiBj
bGFzcyBGaWx0ZXJPcGVyYXRpb247CkBAIC03MywxMCArNzAsNiBAQCBwdWJsaWM6CiAjaWYgRU5B
QkxFKENTU19GSUxURVJTKQogICAgIHZvaWQgZHJhd0ZpbHRlcmVkKGNvbnN0IEJpdG1hcFRleHR1
cmUmIHNvdXJjZVRleHR1cmUsIGNvbnN0IEJpdG1hcFRleHR1cmUqIGNvbnRlbnRUZXh0dXJlLCBj
b25zdCBGaWx0ZXJPcGVyYXRpb24mLCBpbnQgcGFzcyk7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgYm9vbCBkcmF3VXNpbmdDdXN0b21GaWx0ZXIoQml0bWFwVGV4dHVyZSYg
dGFyZ2V0VGV4dHVyZSwgY29uc3QgQml0bWFwVGV4dHVyZSYgc291cmNlVGV4dHVyZSwgY29uc3Qg
RmlsdGVyT3BlcmF0aW9uJik7Ci0gICAgdmlydHVhbCB2b2lkIHJlbW92ZUNhY2hlZEN1c3RvbUZp
bHRlclByb2dyYW0oQ3VzdG9tRmlsdGVyUHJvZ3JhbSopOwotI2VuZGlmCiAKICAgICB2b2lkIHNl
dEVuYWJsZUVkZ2VEaXN0YW5jZUFudGlhbGlhc2luZyhib29sIGVuYWJsZWQpIHsgbV9lbmFibGVF
ZGdlRGlzdGFuY2VBbnRpYWxpYXNpbmcgPSBlbmFibGVkOyB9CiAKQEAgLTE0NCwxMSArMTM3LDYg
QEAgcHJpdmF0ZToKICAgICBDbGlwU3RhY2sgbV9jbGlwU3RhY2s7CiAgICAgYm9vbCBtX2VuYWJs
ZUVkZ2VEaXN0YW5jZUFudGlhbGlhc2luZzsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAg
ICB0eXBlZGVmIEhhc2hNYXA8Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8sIFJlZlB0cjxDdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW0+ID4gQ3VzdG9tRmlsdGVyUHJvZ3JhbU1hcDsKLSAgICBDdXN0
b21GaWx0ZXJQcm9ncmFtTWFwIG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXM7Ci0jZW5kaWYKLQogICAg
IGZyaWVuZCBjbGFzcyBCaXRtYXBUZXh0dXJlR0w7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29tcG9zaXRpbmdD
b29yZGluYXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAv
Y29vcmRpbmF0ZWQvQ29tcG9zaXRpbmdDb29yZGluYXRvci5jcHAKaW5kZXggMThlYzVlYS4uMmI1
YjExOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFw
L2Nvb3JkaW5hdGVkL0NvbXBvc2l0aW5nQ29vcmRpbmF0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db21wb3NpdGluZ0Nvb3Jk
aW5hdG9yLmNwcApAQCAtMTU5LDExICsxNTksNiBAQCB2b2lkIENvbXBvc2l0aW5nQ29vcmRpbmF0
b3I6OmNsZWFyUGVuZGluZ1N0YXRlQ2hhbmdlcygpCiAKICAgICBtX3N0YXRlLnVwZGF0ZUF0bGFz
ZXNUb0NyZWF0ZS5jbGVhcigpOwogICAgIG1fc3RhdGUudXBkYXRlQXRsYXNlc1RvUmVtb3ZlLmNs
ZWFyKCk7Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgbV9zdGF0ZS5jdXN0b21GaWx0
ZXJzVG9DcmVhdGUuY2xlYXIoKTsKLSAgICBtX3N0YXRlLmN1c3RvbUZpbHRlcnNUb1JlbW92ZS5j
bGVhcigpOwotI2VuZGlmCiB9CiAKIHZvaWQgQ29tcG9zaXRpbmdDb29yZGluYXRvcjo6aW5pdGlh
bGl6ZVJvb3RDb21wb3NpdGluZ0xheWVySWZOZWVkZWQoKQpAQCAtMTkxLDcgKzE4Niw2IEBAIHZv
aWQgQ29tcG9zaXRpbmdDb29yZGluYXRvcjo6Y3JlYXRlUm9vdExheWVyKGNvbnN0IEludFNpemUm
IHNpemUpCiB2b2lkIENvbXBvc2l0aW5nQ29vcmRpbmF0b3I6OnN5bmNMYXllclN0YXRlKENvb3Jk
aW5hdGVkTGF5ZXJJRCBpZCwgQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyU3RhdGUmIHN0YXRlKQog
ewogICAgIG1fc2hvdWxkU3luY0ZyYW1lID0gdHJ1ZTsKLSAgICBtX2NsaWVudC0+d2lsbFN5bmNM
YXllclN0YXRlKHN0YXRlKTsKICAgICBtX3N0YXRlLmxheWVyc1RvVXBkYXRlLmFwcGVuZChzdGQ6
Om1ha2VfcGFpcihpZCwgc3RhdGUpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0NvbXBvc2l0aW5nQ29vcmRpbmF0
b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRl
ZC9Db21wb3NpdGluZ0Nvb3JkaW5hdG9yLmgKaW5kZXggNmZkMTlmZC4uODRiODUzMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVk
L0NvbXBvc2l0aW5nQ29vcmRpbmF0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29tcG9zaXRpbmdDb29yZGluYXRvci5oCkBAIC0z
OSwxMCArMzksNiBAQAogI2luY2x1ZGUgIlRpbWVyLmgiCiAjaW5jbHVkZSAiVXBkYXRlQXRsYXMu
aCIKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJGaWx0ZXJPcGVyYXRpb25z
LmgiCi0jZW5kaWYKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBQYWdlOwpAQCAtNjAs
NyArNTYsNiBAQCBwdWJsaWM6CiAgICAgY2xhc3MgQ2xpZW50IHsKICAgICBwdWJsaWM6CiAgICAg
ICAgIHZpcnR1YWwgdm9pZCBkaWRGbHVzaFJvb3RMYXllcigpID0gMDsKLSAgICAgICAgdmlydHVh
bCB2b2lkIHdpbGxTeW5jTGF5ZXJTdGF0ZShDb29yZGluYXRlZEdyYXBoaWNzTGF5ZXJTdGF0ZSYp
ID0gMDsKICAgICAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZsdXNoUmVxdWlyZWQoKSA9IDA7CiAg
ICAgICAgIHZpcnR1YWwgdm9pZCBjb21taXRTY2VuZVN0YXRlKGNvbnN0IENvb3JkaW5hdGVkR3Jh
cGhpY3NTdGF0ZSYpID0gMDsKICAgICAgICAgdmlydHVhbCB2b2lkIHBhaW50TGF5ZXJDb250ZW50
cyhjb25zdCBHcmFwaGljc0xheWVyKiwgR3JhcGhpY3NDb250ZXh0JiwgY29uc3QgSW50UmVjdCYg
Y2xpcFJlY3QpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nv
b3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDE3YTcxODIuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
LmgKKysrIC9kZXYvbnVsbApAQCAtMSw2NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
Ci0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpZm5kZWYgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb25faAotI2RlZmlu
ZSBDb29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0KLW5hbWVzcGFjZSBX
ZWJDb3JlIHsKLQotLy8gVGhpcyBjbGFzcyBpcyBvbmx5IGFkZGluZyB0aGUgcHJvZ3JhbUlkIG9u
IHRvcCBvZiBDdXN0b21GaWx0ZXJPcGVyYXRpb24uIFRoZSBhcmd1bWVudCBkZWNvZGVyIGhhcyBu
bwotLy8gY29udGV4dCwgc28gd2UgY2Fubm90IHNlYXJjaCBpbiBvdXIgY2FjaGVkIEN1c3RvbUZp
bHRlclByb2dyYW1zIHdoaWxlIGRlY29kaW5nLiBJbiB0aGF0IGNhc2UKLS8vIGl0IHdpbGwganVz
dCBzdG9yZSB0aGUgcHJvZ3JhbUlkIGFuZCBubyBDdXN0b21GaWx0ZXJQcm9ncmFtIGluc3RhbmNl
LiBUaGUgcmVjZWl2ZXIgaXMgc3VwcG9zZWQgdG8KLS8vIGl0ZXJhdGUgb24gdGhpcyBzdHJ1Y3R1
cmUgYW5kIGluamVjdCB0aGUgcmlnaHQgQ3VzdG9tRmlsdGVyUHJvZ3JhbXMuCi0KLWNsYXNzIENv
b3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIDogcHVibGljIEN1c3RvbUZpbHRlck9wZXJh
dGlvbiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8Q29vcmRpbmF0ZWRDdXN0b21G
aWx0ZXJPcGVyYXRpb24+IGNyZWF0ZShQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IHBy
b2dyYW0sIGludCBwcm9ncmFtSUQsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHNv
cnRlZFBhcmFtZXRlcnMsIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucykK
LSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgQ29vcmRpbmF0ZWRDdXN0b21GaWx0
ZXJPcGVyYXRpb24ocHJvZ3JhbSwgcHJvZ3JhbUlELCBzb3J0ZWRQYXJhbWV0ZXJzLCBtZXNoUm93
cywgbWVzaENvbHVtbnMpKTsKLSAgICB9Ci0KLSAgICBpbnQgcHJvZ3JhbUlEKCkgY29uc3QgeyBy
ZXR1cm4gbV9wcm9ncmFtSUQ7IH0KLQotcHJpdmF0ZToKLSAgICBDb29yZGluYXRlZEN1c3RvbUZp
bHRlck9wZXJhdGlvbihQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IHByb2dyYW0sIGlu
dCBwcm9ncmFtSUQsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHNvcnRlZFBhcmFt
ZXRlcnMsIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucykKLSAgICAgICAg
OiBDdXN0b21GaWx0ZXJPcGVyYXRpb24ocHJvZ3JhbSwgc29ydGVkUGFyYW1ldGVycywgbWVzaFJv
d3MsIG1lc2hDb2x1bW5zKQotICAgICAgICAsIG1fcHJvZ3JhbUlEKHByb2dyYW1JRCkKLSAgICB7
Ci0gICAgfQotCi0gICAgaW50IG1fcHJvZ3JhbUlEOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ29vcmRp
bmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb25faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmls
dGVyUHJvZ3JhbS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nv
b3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAyMzRhYTU2Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEN1c3RvbUZpbHRl
clByb2dyYW0uaAorKysgL2Rldi9udWxsCkBAIC0xLDY3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMTIgQ29tcGFueSAxMDAsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0g
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
LSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
Ci0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0g
Ki8KLQotI2lmbmRlZiBDb29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW1faAotI2RlZmluZSBD
b29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW1faAotCi0jaWYgVVNFKENPT1JESU5BVEVEX0dS
QVBISUNTKSAmJiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29u
c3RhbnRzLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotCi1uYW1lc3BhY2Ug
V2ViQ29yZSB7Ci0KLWNsYXNzIENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbSA6IHB1Ymxp
YyBDdXN0b21GaWx0ZXJQcm9ncmFtIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxD
b29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW0+IGNyZWF0ZShjb25zdCBTdHJpbmcmIHZlcnRl
eFNoYWRlclN0cmluZywgY29uc3QgU3RyaW5nJiBmcmFnbWVudFNoYWRlclN0cmluZywgQ3VzdG9t
RmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1N
aXhTZXR0aW5ncyYgbWl4U2V0dGluZ3MsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQot
ICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDb29yZGluYXRlZEN1c3RvbUZpbHRl
clByb2dyYW0odmVydGV4U2hhZGVyU3RyaW5nLCBmcmFnbWVudFNoYWRlclN0cmluZywgcHJvZ3Jh
bVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSkpOwotICAgIH0KLQotICAgIHZpcnR1YWwgYm9v
bCBpc0xvYWRlZCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHRydWU7IH0KLQotcHJvdGVjdGVk
OgotICAgIHZpcnR1YWwgU3RyaW5nIHZlcnRleFNoYWRlclN0cmluZygpIGNvbnN0IG92ZXJyaWRl
IHsgcmV0dXJuIG1fdmVydGV4U2hhZGVyU3RyaW5nOyB9Ci0gICAgdmlydHVhbCBTdHJpbmcgZnJh
Z21lbnRTaGFkZXJTdHJpbmcoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX2ZyYWdtZW50U2hh
ZGVyU3RyaW5nOyB9Ci0KLSAgICB2aXJ0dWFsIHZvaWQgd2lsbEhhdmVDbGllbnRzKCkgb3ZlcnJp
ZGUgeyBub3RpZnlDbGllbnRzKCk7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVtb3ZlTGFzdENs
aWVudCgpIG92ZXJyaWRlIHsgfQotCi1wcml2YXRlOgotICAgIENvb3JkaW5hdGVkQ3VzdG9tRmls
dGVyUHJvZ3JhbShjb25zdCBTdHJpbmcmIHZlcnRleFNoYWRlclN0cmluZywgY29uc3QgU3RyaW5n
JiBmcmFnbWVudFNoYWRlclN0cmluZywgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5
cGUsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyYgbWl4U2V0dGluZ3MsIEN1
c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQotICAgICAgICA6IEN1c3RvbUZpbHRlclByb2dy
YW0ocHJvZ3JhbVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSkKLSAgICAgICAgLCBtX3ZlcnRl
eFNoYWRlclN0cmluZyh2ZXJ0ZXhTaGFkZXJTdHJpbmcpCi0gICAgICAgICwgbV9mcmFnbWVudFNo
YWRlclN0cmluZyhmcmFnbWVudFNoYWRlclN0cmluZykKLSAgICB7Ci0gICAgfQotCi0gICAgU3Ry
aW5nIG1fdmVydGV4U2hhZGVyU3RyaW5nOwotICAgIFN0cmluZyBtX2ZyYWdtZW50U2hhZGVyU3Ry
aW5nOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gVVNFKENPT1JE
SU5BVEVEX0dSQVBISUNTKSAmJiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBDb29y
ZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW1faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NT
Y2VuZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRp
bmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcAppbmRleCA4NjYyNzg4Li4zN2NjNWQ0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29v
cmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGlj
c1NjZW5lLmNwcApAQCAtMzIsMTMgKzMyLDYgQEAKICNpbmNsdWRlIDx3dGYvQXRvbWljcy5oPgog
I2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0j
aW5jbHVkZSAiQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNsdWRlICJD
b29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQ
cm9ncmFtLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNlbmRpZgot
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpk
aXNwYXRjaE9uTWFpblRocmVhZChjb25zdCBGdW5jdGlvbjx2b2lkKCk+JiBmdW5jdGlvbikKQEAg
LTIyOSw1NCArMjIyLDEwIEBAIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpzZXRMYXll
ckZpbHRlcnNJZk5lZWRlZChUZXh0dXJlTWFwcGVyTGF5ZXIqIGxheWVyCiAgICAgaWYgKCFzdGF0
ZS5maWx0ZXJzQ2hhbmdlZCkKICAgICAgICAgcmV0dXJuOwogCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgIGluamVjdENhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zKHN0YXRlLmZpbHRlcnMp
OwotI2VuZGlmCiAgICAgbGF5ZXItPnNldEZpbHRlcnMoc3RhdGUuZmlsdGVycyk7CiB9CiAjZW5k
aWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLXZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1Nj
ZW5lOjpzeW5jQ3VzdG9tRmlsdGVyUHJvZ3JhbXMoY29uc3QgQ29vcmRpbmF0ZWRHcmFwaGljc1N0
YXRlJiBzdGF0ZSkKLXsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0YXRlLmN1c3RvbUZp
bHRlcnNUb0NyZWF0ZS5zaXplKCk7ICsraSkKLSAgICAgICAgY3JlYXRlQ3VzdG9tRmlsdGVyUHJv
Z3JhbShzdGF0ZS5jdXN0b21GaWx0ZXJzVG9DcmVhdGVbaV0uZmlyc3QsIHN0YXRlLmN1c3RvbUZp
bHRlcnNUb0NyZWF0ZVtpXS5zZWNvbmQpOwotCi0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBz
dGF0ZS5jdXN0b21GaWx0ZXJzVG9SZW1vdmUuc2l6ZSgpOyArK2kpCi0gICAgICAgIHJlbW92ZUN1
c3RvbUZpbHRlclByb2dyYW0oc3RhdGUuY3VzdG9tRmlsdGVyc1RvUmVtb3ZlW2ldKTsKLX0KLQot
dm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmluamVjdENhY2hlZEN1c3RvbUZpbHRlclBy
b2dyYW1zKGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlcnMpIGNvbnN0Ci17Ci0gICAgZm9y
IChzaXplX3QgaSA9IDA7IGkgPCBmaWx0ZXJzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIEZpbHRl
ck9wZXJhdGlvbiogb3BlcmF0aW9uID0gZmlsdGVycy5vcGVyYXRpb25zKCkuYXQoaSkuZ2V0KCk7
Ci0gICAgICAgIGlmIChvcGVyYXRpb24tPnR5cGUoKSAhPSBGaWx0ZXJPcGVyYXRpb246OkNVU1RP
TSkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIENvb3JkaW5hdGVkQ3VzdG9tRmls
dGVyT3BlcmF0aW9uKiBjdXN0b21PcGVyYXRpb24gPSBzdGF0aWNfY2FzdDxDb29yZGluYXRlZEN1
c3RvbUZpbHRlck9wZXJhdGlvbio+KG9wZXJhdGlvbik7Ci0gICAgICAgIEFTU0VSVCghY3VzdG9t
T3BlcmF0aW9uLT5wcm9ncmFtKCkpOwotICAgICAgICBDdXN0b21GaWx0ZXJQcm9ncmFtTWFwOjpj
b25zdF9pdGVyYXRvciBpdGVyID0gbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5maW5kKGN1c3RvbU9w
ZXJhdGlvbi0+cHJvZ3JhbUlEKCkpOwotICAgICAgICBBU1NFUlQoaXRlciAhPSBtX2N1c3RvbUZp
bHRlclByb2dyYW1zLmVuZCgpKTsKLSAgICAgICAgY3VzdG9tT3BlcmF0aW9uLT5zZXRQcm9ncmFt
KGl0ZXItPnZhbHVlLmdldCgpKTsKLSAgICB9Ci19Ci0KLXZvaWQgQ29vcmRpbmF0ZWRHcmFwaGlj
c1NjZW5lOjpjcmVhdGVDdXN0b21GaWx0ZXJQcm9ncmFtKGludCBpZCwgY29uc3QgQ3VzdG9tRmls
dGVyUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvKQotewotICAgIEFTU0VSVCghbV9jdXN0b21GaWx0
ZXJQcm9ncmFtcy5jb250YWlucyhpZCkpOwotICAgIG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMuc2V0
KGlkLCBDb29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW06OmNyZWF0ZShwcm9ncmFtSW5mby52
ZXJ0ZXhTaGFkZXJTdHJpbmcoKSwgcHJvZ3JhbUluZm8uZnJhZ21lbnRTaGFkZXJTdHJpbmcoKSwg
cHJvZ3JhbUluZm8ucHJvZ3JhbVR5cGUoKSwgcHJvZ3JhbUluZm8ubWl4U2V0dGluZ3MoKSwgcHJv
Z3JhbUluZm8ubWVzaFR5cGUoKSkpOwotfQotCi12b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2Vu
ZTo6cmVtb3ZlQ3VzdG9tRmlsdGVyUHJvZ3JhbShpbnQgaWQpCi17Ci0gICAgQ3VzdG9tRmlsdGVy
UHJvZ3JhbU1hcDo6aXRlcmF0b3IgaXRlciA9IG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMuZmluZChp
ZCk7Ci0gICAgQVNTRVJUKGl0ZXIgIT0gbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5lbmQoKSk7Ci0g
ICAgaWYgKG1fdGV4dHVyZU1hcHBlcikKLSAgICAgICAgbV90ZXh0dXJlTWFwcGVyLT5yZW1vdmVD
YWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtKGl0ZXItPnZhbHVlLmdldCgpKTsKLSAgICBtX2N1c3Rv
bUZpbHRlclByb2dyYW1zLnJlbW92ZShpdGVyKTsKLX0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpzZXRMYXllclN0YXRlKENv
b3JkaW5hdGVkTGF5ZXJJRCBpZCwgY29uc3QgQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyU3RhdGUm
IGxheWVyU3RhdGUpCiB7CiAgICAgQVNTRVJUKG1fcm9vdExheWVySUQgIT0gSW52YWxpZENvb3Jk
aW5hdGVkTGF5ZXJJRCk7CkBAIC02MTksOSArNTY4LDYgQEAgdm9pZCBDb29yZGluYXRlZEdyYXBo
aWNzU2NlbmU6OmNvbW1pdFNjZW5lU3RhdGUoY29uc3QgQ29vcmRpbmF0ZWRHcmFwaGljc1N0YXRl
JgogCiAgICAgc3luY0ltYWdlQmFja2luZ3Moc3RhdGUpOwogICAgIHN5bmNVcGRhdGVBdGxhc2Vz
KHN0YXRlKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgc3luY0N1c3RvbUZpbHRlclBy
b2dyYW1zKHN0YXRlKTsKLSNlbmRpZgogCiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdGF0
ZS5sYXllcnNUb1VwZGF0ZS5zaXplKCk7ICsraSkKICAgICAgICAgc2V0TGF5ZXJTdGF0ZShzdGF0
ZS5sYXllcnNUb1VwZGF0ZVtpXS5maXJzdCwgc3RhdGUubGF5ZXJzVG9VcGRhdGVbaV0uc2Vjb25k
KTsKQEAgLTcxNSwxNyArNjYxLDYgQEAgdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnNl
dExheWVyQW5pbWF0aW9uc0lmTmVlZGVkKFRleHR1cmVNYXBwZXJMYXllciogbGEKICAgICBpZiAo
IXN0YXRlLmFuaW1hdGlvbnNDaGFuZ2VkKQogICAgICAgICByZXR1cm47CiAKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdGF0ZS5hbmltYXRpb25z
LmFuaW1hdGlvbnMoKS5zaXplKCk7ICsraSkgewotICAgICAgICBjb25zdCBLZXlmcmFtZVZhbHVl
TGlzdCYga2V5ZnJhbWVzID0gc3RhdGUuYW5pbWF0aW9ucy5hbmltYXRpb25zKCkuYXQoaSkua2V5
ZnJhbWVzKCk7Ci0gICAgICAgIGlmIChrZXlmcmFtZXMucHJvcGVydHkoKSAhPSBBbmltYXRlZFBy
b3BlcnR5V2Via2l0RmlsdGVyKQotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGZvciAo
c2l6ZV90IGogPSAwOyBqIDwga2V5ZnJhbWVzLnNpemUoKTsgKytqKSB7Ci0gICAgICAgICAgICBj
b25zdCBGaWx0ZXJBbmltYXRpb25WYWx1ZSYgZmlsdGVyVmFsdWUgPSBzdGF0aWNfY2FzdDxjb25z
dCBGaWx0ZXJBbmltYXRpb25WYWx1ZSY+KGtleWZyYW1lcy5hdChqKSk7Ci0gICAgICAgICAgICBp
bmplY3RDYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtcyhmaWx0ZXJWYWx1ZS52YWx1ZSgpKTsKLSAg
ICAgICAgfQotICAgIH0KLSNlbmRpZgogICAgIGxheWVyLT5zZXRBbmltYXRpb25zKHN0YXRlLmFu
aW1hdGlvbnMpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0
ZWRHcmFwaGljc1NjZW5lLmgKaW5kZXggMDdjZDU2My4uMDI1ZGQxZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5h
dGVkR3JhcGhpY3NTY2VuZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaApAQCAtNDcsOCAr
NDcsNiBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBDb29yZGluYXRlZEJhY2tpbmdT
dG9yZTsKLWNsYXNzIEN1c3RvbUZpbHRlclByb2dyYW07Ci1jbGFzcyBDdXN0b21GaWx0ZXJQcm9n
cmFtSW5mbzsKIAogY2xhc3MgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lQ2xpZW50IHsKIHB1Ymxp
YzoKQEAgLTExNSwxMyArMTEzLDYgQEAgcHJpdmF0ZToKICAgICB2b2lkIGNsZWFySW1hZ2VCYWNr
aW5nQ29udGVudHMoQ29vcmRpbmF0ZWRJbWFnZUJhY2tpbmdJRCk7CiAgICAgdm9pZCByZW1vdmVJ
bWFnZUJhY2tpbmcoQ29vcmRpbmF0ZWRJbWFnZUJhY2tpbmdJRCk7CiAKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgdm9pZCBzeW5jQ3VzdG9tRmlsdGVyUHJvZ3JhbXMoY29uc3QgQ29vcmRp
bmF0ZWRHcmFwaGljc1N0YXRlJik7Ci0gICAgdm9pZCBpbmplY3RDYWNoZWRDdXN0b21GaWx0ZXJQ
cm9ncmFtcyhjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiBmaWx0ZXJzKSBjb25zdDsKLSAgICB2b2lk
IGNyZWF0ZUN1c3RvbUZpbHRlclByb2dyYW0oaW50IGlkLCBjb25zdCBDdXN0b21GaWx0ZXJQcm9n
cmFtSW5mbyYpOwotICAgIHZvaWQgcmVtb3ZlQ3VzdG9tRmlsdGVyUHJvZ3JhbShpbnQgaWQpOwot
I2VuZGlmCi0KICAgICBUZXh0dXJlTWFwcGVyTGF5ZXIqIGxheWVyQnlJRChDb29yZGluYXRlZExh
eWVySUQgaWQpCiAgICAgewogICAgICAgICBBU1NFUlQobV9sYXllcnMuY29udGFpbnMoaWQpKTsK
QEAgLTE5MywxMSArMTg0LDYgQEAgcHJpdmF0ZToKICAgICBDb2xvciBtX2JhY2tncm91bmRDb2xv
cjsKICAgICBib29sIG1fc2V0RHJhd3NCYWNrZ3JvdW5kOwogCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgIHR5cGVkZWYgSGFzaE1hcDxpbnQsIFJlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFt
PiA+IEN1c3RvbUZpbHRlclByb2dyYW1NYXA7Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1hcCBt
X2N1c3RvbUZpbHRlclByb2dyYW1zOwotI2VuZGlmCi0KICAgICBUZXh0dXJlTWFwcGVyRlBTQ291
bnRlciBtX2Zwc0NvdW50ZXI7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1N0YXRl
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQv
Q29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlLmgKaW5kZXggNTQ0NWU2Mi4uYzJjMmNmNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVk
L0Nvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU3RhdGUuaApA
QCAtNDIsMTAgKzQyLDYgQEAKICNpbmNsdWRlICJGaWx0ZXJPcGVyYXRpb25zLmgiCiAjZW5kaWYK
IAotI2lmIEVOQUJMRShDU1NfRklMVEVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFt
SW5mby5oIgotI2VuZGlmCi0KICNpZiBVU0UoR1JBUEhJQ1NfU1VSRkFDRSkKICNpbmNsdWRlICJH
cmFwaGljc1N1cmZhY2UuaCIKICNpbmNsdWRlICJHcmFwaGljc1N1cmZhY2VUb2tlbi5oIgpAQCAt
MTk4LDExICsxOTQsNiBAQCBzdHJ1Y3QgQ29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlIHsKIAogICAg
IFZlY3RvcjxzdGQ6OnBhaXI8dWludDMyX3QgLyogYXRsYXNJRCAqLywgUmVmUHRyPENvb3JkaW5h
dGVkU3VyZmFjZT4gPiA+IHVwZGF0ZUF0bGFzZXNUb0NyZWF0ZTsKICAgICBWZWN0b3I8dWludDMy
X3QgLyogYXRsYXNJRCAqLz4gdXBkYXRlQXRsYXNlc1RvUmVtb3ZlOwotCi0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotICAgIFZlY3RvcjxzdGQ6OnBhaXI8dWludDMyX3QgLyogRmlsdGVySUQgKi8s
IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvPiA+IGN1c3RvbUZpbHRlcnNUb0NyZWF0ZTsKLSAgICBW
ZWN0b3I8dWludDMyX3Q+IGN1c3RvbUZpbHRlcnNUb1JlbW92ZTsKLSNlbmRpZgogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2FyLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2FyLnBvCmluZGV4
IDVlNGFhZjAuLjU4NWVjYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9hci5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYXIucG8KQEAg
LTE3MzQsMTYgKzE3MzQsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXli
YWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUg
Q1NTIHNoYWRlcnMiCi1tc2dzdHIgItmB2LnZkdmEINmF2LHYp9is2LkgWFNTIgotCi0jOiAuLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6
eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICLZhdinINil
2LDYpyDYs9mK2YHYudmEINmE2LXZgiBET00iCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2Yg
aW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2FzLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2Fz
LnBvCmluZGV4IGJjZDgyMjkuLjc4NmY4NjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9hcy5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
YXMucG8KQEAgLTE3MTcsMTQgKzE3MTcsNiBAQCBtc2dzdHIgIuCmruCmvuCmp+CnjeCmr+CmriDg
pqrgp43gprLgp4fgpqzgp4fgppXgp4cg4KaH4Kao4Kay4Ka+4KaH4Kao4KewIOCmheCmqAogbXNn
aWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAi4Kau4Ka+
4Kan4KeN4Kav4KauIOCmquCnjeCmsuCnh+CmrOCnh+CmleCnhyDgpofgpqjgprLgpr7gpofgpqjg
p7Ag4KaF4Kao4KeB4Kau4Kak4Ka/IOCmpuCmv+Cnn+CnhyDgpqjgp4ciCiAKLSM6IC4uLy4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJF
bmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUyDgprbgp4fgpofgpqHgpr7gp7Dgprjgpq7g
p4Lgprkg4Ka44Ka+4Kau4Kew4KeN4Kal4Kas4Ka+4KaoIOCmleCnsOCmlSIKLQotIzogLi4vLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQg
IldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJjc3Mg4Ka24KeH4KaH4Kah
4Ka+4Kew4Ka44Kau4KeC4Ka5IOCmuOCmvuCmruCnsOCnjeCmpeCmrOCmvuCmqCDgppXgp7Dgpr4g
4Ka54KasIOCmqOCnhyIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBj
b250ZW50IgogbXNnc3RyICLgpoXgprjgp4Hgp7DgppXgp43gprfgpr/gpqQg4Ka44Kau4Kay4Kew
IOCmquCnjeCnsOCmpuCnsOCnjeCmtuCmqCDgprjgpr7gpq7gp7Dgp43gpqXgpqzgpr7gpqgg4KaV
4Kew4KaVIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2JnLnBv
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2JnLnBvCmluZGV4IDMyYTJlZDQuLmMw
M2YzZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9iZy5wbwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYmcucG8KQEAgLTE3NjAsMTYgKzE3
NjAsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBp
bmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMi
Ci1tc2dzdHIgItCS0LrQu9GO0YfQstCw0L3QtSDQvdCwINC/0YDQvtCy0LXRgNC60LAg0LfQsCBY
U1MiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNw
cDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1t
c2dzdHIgItCU0LDQu9C4INC00LAg0YHQtSDQstC60LvRjtGH0Lgg0LLRitC30LzQvtC20L3QvtGB
0YLRgtCwINC30LAg0L/QvtGB0YLQsNCy0Y/QvdC1INCyIERPTSIKLQogIzogLi4vLi4vLi4vV2Vi
S2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUg
ZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vY3MucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vY3MucG8KaW5kZXggYjg3YjFjOC4uMWI0Yjk5MSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2NzLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9jcy5wbwpAQCAtMTc0MywxNiArMTc0Myw2IEBAIG1zZ3N0ciAiIgogbXNnaWQg
IldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAu
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBm
dXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiUG92b2xpdCByZXZpemkg
WFNTIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgot
bXNnc3RyICJKZXN0bGkgcG92b2xpdCB2a2zDoWTDoW7DrSBET00iCi0KICM6IC4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxl
IGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2RlLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL2RlLnBvCmluZGV4IDBmOGNmNWEuLmNhMjhmODAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9kZS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vZGUucG8KQEAgLTE3NjEsMTQgKzE3NjEsNiBAQCBtc2dzdHIgIiIKIG1zZ2lk
ICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIkxlZ3QgZmVz
dCwgb2IgIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJDU1MtU2hh
ZGVyIGFrdGl2aWVyZW4iCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVy
cyIKLW1zZ3N0ciAiTGVndCBmZXN0LCBvYiBDU1MtU2hhZGVyIGFrdGl2aWVydCB3ZXJkZW4gc29s
bGVuIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5n
cy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBt
c2dzdHIgIkFuemVpZ2Ugdm9uIHVuc2ljaGVyZW0gSW5oYWx0IGFrdGl2aWVyZW4iCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZWwucG8gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vZWwucG8KaW5kZXggODU0MTk0NC4uODdlZjVjNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VsLnBvCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9lbC5wbwpAQCAtMTc0OSwxNSArMTc0OSw2IEBAIG1zZ3N0ciAi
IgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAi
IgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAizpXOvc61
z4HOs86/z4DOv86vzrfPg863IM+DzrXOvc6xz4HOr8+Jzr0iCi0KLSM6IC4uLy4uLy4uL1dlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRv
IGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3Rr
L3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5
IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9lbl9DQS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9lbl9DQS5wbwppbmRleCAyNmFhNGNiLi5iNWJhMmRlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW5fQ0EucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2VuX0NBLnBvCkBAIC0xNzIzLDE2ICsxNzIzLDYgQEAgbXNnc3RyICIiCiBt
c2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAK
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEK
LSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJFbmFibGUgWFNT
IEF1ZGl0b3IiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRp
bmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRl
cnMiCi1tc2dzdHIgIldoZXRoZXIgdG8gZW5hYmxlIERPTSBwYXN0ZSIKLQogIzogLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFi
bGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW5fR0IucG8gYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vZW5fR0IucG8KaW5kZXggMDA4YjE3Ni4uM2UwZjMwOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VuX0dCLnBvCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lbl9HQi5wbwpAQCAtMTc1MCwxNCArMTc1MCw2IEBAIG1z
Z3N0ciAiTWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ2lkICJXaGV0aGVyIG1lZGlh
IHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sg
YWxsb3dzIGlubGluZSIKIAotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAi
RW5hYmxlIENTUyBzaGFkZXJzIgotCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNo
YWRlcnMiCi1tc2dzdHIgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotCiAjOiAuLi8u
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNn
aWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIkVuYWJsZSBk
aXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vZW8ucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW8u
cG8KaW5kZXggZmNlMjVmMy4uMzAxNjA4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2VvLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9l
by5wbwpAQCAtMTY5OSwxNSArMTY5OSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVk
aWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENT
UyBzaGFkZXJzIgotbXNnc3RyICIiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dl
YmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFi
bGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIsSIdSBlbsWdYWx0aSBsYSBzdWJ0ZW5vbiBwb3IgbGEg
SFRNTDUtZGF0dW1iYXpvPyIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBj
b250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vZXMucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZXMucG8KaW5kZXgg
Nzg2ZGRkNS4uN2U5NjliNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL2VzLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lcy5wbwpAQCAt
MTc3NywxNiArMTc3Nyw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJh
Y2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3Rr
L3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJs
ZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQWN0aXZhciBlbCBhdWRpdG9yIGRlIFhTUyIKLQotIzog
Li4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5Mgot
IywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
SW5kaWNhIHNpIGRlYmUgYWN0aXZhciBlbCBwZWdhZG8gRE9NIgotCiAjOiAuLi8uLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJs
ZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ldC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9ldC5wbwppbmRleCA0ZDFlM2I3Li5hMThkYjk2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZXQucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2V0LnBvCkBAIC0xNzQxLDE2ICsxNzQxLDYgQEAgbXNnc3RyICIiCiBtc2dp
ZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6
IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMs
IGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJYU1MgYXVkaWl0b3Jp
IGx1YmFtaW5lIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFk
ZXJzIgotbXNnc3RyICJLYXMgbHViYWRhIERPTS1ww7VoaW5lIGFzZXRhbWluZSIKLQogIzogLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lk
ICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZXUucG8gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vZXUucG8KaW5kZXggNWEzMjMzZi4uZTNmNzZmNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2V1LnBvCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9ldS5wbwpAQCAtMTc0NSwxNiArMTc0NSw2IEBAIG1zZ3N0ciAi
IgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAi
IgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiR2FpdHUg
WFNTIGJlZ2lyYWxlYSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mg
c2hhZGVycyIKLW1zZ3N0ciAiRE9NIGl0c2FzdGVhIGdhaXR1a28gZGVuIGFsYSBleiIKLQogIzog
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1z
Z2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZnIucG8gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vZnIucG8KaW5kZXggYzRlOTdjZC4uODA3NmEwNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2ZyLnBvCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9mci5wbwpAQCAtMTcxNSwxNCArMTcxNSw2IEBAIG1zZ3N0
ciAiTGEgbGVjdHVyZSBkdSBtw6lkaWEgYXV0b3Jpc2UgbCdpbnTDqWdyYXRpb24iCiBtc2dpZCAi
V2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICJJbmRpcXVlIHNp
IGxhIGxlY3R1cmUgZHUgbcOpZGlhIGF1dG9yaXNlIGwnaW50w6lncmF0aW9uIgogCi0jOiAuLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAi
RW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJBY3RpdmVyIGxlcyBvbWJyYWdlcyBDU1MiCi0K
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIK
LW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiSW5kaXF1ZSBz
J2lsIGZhdXQgYWN0aXZlciBsZXMgb21icmFnZXMgQ1NTIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNw
bGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIkFjdGl2ZXIgbCdhZmZpY2hhZ2UgZGUg
Y29udGVudSBub24gc8OpY3VyaXRhaXJlIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2dsLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2dsLnBv
CmluZGV4IGE3MmMwNDUuLjBkODI2NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9nbC5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZ2wu
cG8KQEAgLTE3MzAsMTQgKzE3MzAsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlh
IHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vLi4vV2Vi
S2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJsZSBD
U1Mgc2hhZGVycyIKLW1zZ3N0ciAiQWN0aXZhciBzb21icmVhZG9yZXMgQ1NTIgotCi0jOiAuLi8u
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dp
ZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIkluZGljYSBzZSBhY3Rp
dmFyIG9zIHNvbWJyZWFkb3JlcyBDU1MiCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2Yg
aW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiQWN0aXZhciB2aXN1YWxpemFjacOzbiBkZSBjb250
aWRvIG5vbiBzZWd1cm8iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vZ3UucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZ3UucG8KaW5kZXggMjYy
OGE4Ny4uZWIzMWZiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L2d1LnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ndS5wbwpAQCAtMTYy
MSwxNCArMTYyMSw2IEBAIG1zZ3N0ciAi4Kqu4KuA4Kqh4Kq/4Kqv4Kq+IOCqquCrjeCqsuCrh+Cq
r+CqsOCqqOCrhyDgqofgqqjgqrLgqr7gqofgqqjgqqjgq4Ag4KqcCiBtc2dpZCAiV2hldGhlciBt
ZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLgqrbgq4HgqoIg4Kqu4KuA4Kqh
4Kq/4Kqv4Kq+IOCqquCrjeCqsuCrh+CqrOCrh+CqleCqqOCrhyDgqofgqqjgqrLgqr7gqofgqqjg
qqjgq4Ag4Kqq4Kqw4Kq14Kq+4Kqo4KqX4KuAIOCqhuCqquCrh+CqsiDgqpvgq4ciCiAKLSM6IC4u
L3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTgxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFk
ZXJzIgotbXNnc3RyICJDU1Mg4Kq24KuF4Kqh4Kqw4Kqo4KuHIOCquOCqleCrjeCqsOCqv+CqryDg
qpXgqrDgq4siCi0KLSM6IC4uL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTgyCi1tc2dp
ZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIuCqtuCrgeCqgiBjc3Mg
4Kq24KuF4Kqh4Kqw4Kqo4KuHIOCquOCqleCrjeCqsOCqv+CqryDgqpXgqrDgqrXgqr7gqqjgq4Hg
qoIg4Kqb4KuHIgotCiAjOiAuLi93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5NwogbXNn
aWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIuCqheCquOCr
geCqsOCqleCrjeCqt+Cqv+CqpCDgqrjgqq7gqr7gqrXgqr/gqrfgq43gqp/gqqjgq4cg4Kqm4Kqw
4KuN4Kq24Kq+4Kq14Kq14Kq+IOCquOCqleCrjeCqsOCqv+CqryDgqpXgqrDgq4siCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaGUucG8gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vaGUucG8KaW5kZXggOTQ5NTQ3Ni4uYjhiZWM4ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2hlLnBvCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9oZS5wbwpAQCAtMTczNywxNiArMTczNyw2IEBAIG1zZ3N0ciAi
IgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAi
IgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAi15DXpNep
16gg16rXodeo15nXmNeZ150iCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUg
Y3NzIHNoYWRlcnMiCi1tc2dzdHIgIteU15DXnSDXqtee15XXoNeV16og15TXqNen16Ig16bXqNeZ
15vXldeqINec15TXmdeV16og157XldeT16TXodeV16ouIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNw
bGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9oaS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9oaS5wbwppbmRleCBhYzk3MjE4Li5lMTlhMTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vaGkucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2hpLnBvCkBAIC0xNzM5LDE0ICsxNzM5LDYgQEAgbXNnc3RyICLgpK7gpYDgpKHgpL/g
pK/gpL4g4KSq4KWN4KSy4KWH4KSs4KWI4KSVIOCkh+CkqOCksuCkvuCkh+CkqCDgpJXgpYAg4KS4
CiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLg
pJXgpY3gpK/gpL4g4KSu4KWA4KSh4KS/4KSv4KS+IOCkquCljeCksuClh+CkrOCliOCklSDgpIfg
pKjgpLLgpL7gpIfgpKgg4KSV4KWAIOCkuOCljeCkteClgOCkleClg+CkpOCkvyDgpKbgpYfgpKTg
pL4g4KS54KWIIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJDU1Mg
4KS24KWH4KSh4KSwIOCkuOCkleCljeCkt+CkriDgpJXgpLDgpYfgpIIiCi0KLSM6IC4uLy4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJX
aGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi4KSV4KWN4KSv4KS+IOCkuOCl
gOCkj+CkuOCkj+CkuCDgpLbgpYfgpKHgpLAg4KSV4KWLIOCkuOCkleCljeCksOCkv+CkryDgpJXg
pLDgpKjgpL4g4KS54KWIIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJl
IGNvbnRlbnQiCiBtc2dzdHIgIuCkheCkuOClgeCksOCkleCljeCkt+Ckv+CkpCDgpJXgpILgpJ/g
pYfgpILgpJ8g4KSV4KS+IOCkquCljeCksOCkpuCksOCljeCktuCkqCDgpLjgpJXgpY3gpLDgpL/g
pK8g4KSV4KSw4KSo4KS+IOCkueCliCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9odS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9odS5wbwpp
bmRleCBkMWEyNjNiLi40MjE5ZjBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vaHUucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2h1LnBv
CkBAIC0xNzUwLDE2ICsxNzUwLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBw
bGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5h
YmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJYU1MtYXVkaXTDoWzDsyBlbmdlZMOpbHllesOpc2Ui
Ci0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5
OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dz
dHIgIkRPTSBiZWlsbGVzenTDqXMgZW5nZWTDqWx5ZXrDqXNlIgotCiAjOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBk
aXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9pZC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9wby9pZC5wbwppbmRleCAzNTEzNmI2Li4zODcxNTJhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaWQucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL2lkLnBvCkBAIC0xNjkyLDE0ICsxNjkyLDYgQEAgbXNnc3RyICJQZW11dGFyYW4g
bWVkaWEgbWVuZ2lqaW5rYW4gaW5saW5lIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sg
YWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiQXBha2FoIHBlbXV0YXJhbiBtZWRpYSBtZW5naWppbmth
biBpbmxpbmUiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRp
bmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkZ1bmdzaWth
biBzaGFkZXIgQ1NTIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1t
c2dzdHIgIkFwYWthaCBtZW1mdW5nc2lrYW4gc2hhZGVyIENTUyIKLQogIzogLi4vLi4vLi4vV2Vi
S2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUg
ZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaXQucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vaXQucG8KaW5kZXggMmQxODQwNC4uNjZlZDlhNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2l0LnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9pdC5wbwpAQCAtMTgyOSwxNiArMTgyOSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQg
IldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAu
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBm
dXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQWJpbGl0YSBhdWRpdG9y
IFhTUyIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIK
LW1zZ3N0ciAiSW5kaWNhIHNlIGFiaWxpdGFyZSBpbCBET00gcGFzdGluZyIKLQogIzogLi4vLi4v
Li4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJF
bmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8va24ucG8gYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8va24ucG8KaW5kZXggM2MxYmM5ZS4uOTA1MDQwNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2tuLnBvCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9rbi5wbwpAQCAtMTcyNCwxNCArMTcyNCw2IEBAIG1zZ3N0ciAi4LKu
4LOA4LKh4LK/4LKvIOCyquCzjeCysuCzh+CyrOCzjeCyr+CyvuCyleCzjSDgsrjgsr7gsrLgsr/g
sqjgs4rgsrPgspcKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUi
CiBtc2dzdHIgIuCyruCzgOCyoeCyv+CyryDgsqrgs43gsrLgs4fgsqzgs43gsq/gsr7gspXgs40g
4LK44LK+4LKy4LK/4LKo4LOK4LKz4LKX4LK/4LKw4LOB4LK14LOB4LKm4LKV4LON4LKV4LOGIOCy
heCyqOCzgeCyruCypOCyv+CyuOCzgeCypOCzjeCypOCypuCzhuCyr+CzhiIKIAotIzogLi4vLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQg
IkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCytuCzh+CyoeCysOCzgeCyl+Cys+Cy
qOCzjeCyqOCzgSDgsrjgspXgs43gsrDgsr/gsq/gspfgs4rgsrPgsr/gsrjgs4EiCi0KLSM6IC4u
Ly4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1z
Z2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCytuCzh+Cy
oeCysOCzgeCyl+Cys+CyqOCzjeCyqOCzgSDgsrjgspXgs43gsrDgsr/gsq/gspfgs4rgsrPgsr/g
srjgsqzgs4fgspXgs4YiCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUg
Y29udGVudCIKIG1zZ3N0ciAi4LKF4LK44LOB4LKw4LKV4LON4LK34LK/4LKkIOCyteCyv+Cyt+Cy
r+CyteCyqOCzjeCyqOCzgSDgsqTgs4vgsrDgsr/gsrjgs4HgsrXgs4Hgsqbgsqjgs43gsqjgs4Eg
4LK44LKV4LON4LKw4LK/4LKv4LKX4LOK4LKz4LK/4LK44LKs4LOH4LKV4LOGIgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2tvLnBvIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2tvLnBvCmluZGV4IDQxYWY3ZDYuLjBhNzVkMTEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9rby5wbworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8va28ucG8KQEAgLTE3MjYsMTYgKzE3MjYsNiBAQCBtc2dzdHIgIiIK
IG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIK
IAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5
MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIlhTUyDqsoDs
gqwg6riw64qlIOyCrOyaqSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBj
c3Mgc2hhZGVycyIKLW1zZ3N0ciAiRE9NIOu2meyXrOuEo+q4sOulvCDsgqzsmqntlaDsp4Ag7Jes
67aAIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dz
dHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdC5wbyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdC5wbwppbmRleCBlNDdjM2M3Li5iYWFj
ZTJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbHQucG8KKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x0LnBvCkBAIC0xNzQ4LDE2ICsxNzQ4
LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5s
aW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgot
bXNnc3RyICLErmp1bmd0aSBYU1MgYXVkaXRhdmltxIUiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hl
dGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIkFyIMSvanVuZ3RpIERPTSDEr2TE
l2ppbcSFIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5n
cy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBt
c2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdi5w
byBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdi5wbwppbmRleCAxM2FlNjdkLi4z
NGNhYjE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbHYucG8K
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x2LnBvCkBAIC0xNzM1LDE1ICsx
NzM1LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3Mg
aW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJz
IgotbXNnc3RyICJBa3Rpdml6xJN0IHNrcmlwdHVzIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3Rr
L3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFi
bGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIiIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJr
aXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBp
bnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vbWwucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbWwu
cG8KaW5kZXggZTZiZjhjMC4uNTI4Y2YzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL21sLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9t
bC5wbwpAQCAtMTcxNCwxNCArMTcxNCw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVk
aWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxl
IENTUyBzaGFkZXJzIgotbXNnc3RyICIiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBj
c3Mgc2hhZGVycyIKLW1zZ3N0ciAiIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGlu
c2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9tci5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9tci5w
bwppbmRleCBhNDQxZDQ3Li5mNGQ5ZjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vbXIucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL21y
LnBvCkBAIC0xNzQwLDE0ICsxNzQwLDYgQEAgbXNnc3RyICLgpK7gpL/gpKHgpYDgpK/gpL4g4KSq
4KWN4KSy4KWH4KSs4KWF4KSVIOCkh+CkguCksuCkvuCkh+CkqCDgpLjgpY3gpLXgpYAKIG1zZ2lk
ICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIuCkruCkv+Ck
oeClgOCkr+CkviDgpKrgpY3gpLLgpYfgpKzgpYXgpJUg4KSH4KSC4KSy4KS+4KSH4KSoIOCkuOCl
jeCkteClgOCkleCkvuCksOCkvuCkr+CkmuClhyIKIAotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0
ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hh
ZGVycyIKLW1zZ3N0ciAiQ1NTIOCktuClh+CkoeCksOCljeCkuOCljSDgpLjgpYHgpLDgpYIg4KSV
4KSw4KS+IgotCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dz
dHIgImNzcyDgpLbgpYfgpKHgpLDgpY3gpLjgpY0g4KS44KWB4KSw4KWCIOCkleCksOCkvuCkr+Ck
muClhyIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGlu
Z3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50Igog
bXNnc3RyICLgpIXgpLjgpYHgpLDgpJXgpY3gpLfgpYDgpKQg4KSF4KSC4KSk4KSw4KWN4KSt4KWB
4KSkIOCkruCkvuCkueCkv+CkpOClgCDgpKbgpL7gpJbgpLXgpKPgpYcg4KS44KSu4KSw4KWN4KSl
4KWA4KSkIOCkleCksOCkviIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9uYi5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9uYi5wbwppbmRleCA2
MmExNGVmLi5iZDgzNzQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vbmIucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL25iLnBvCkBAIC0x
NzMxLDE2ICsxNzMxLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFj
ayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENT
UyBzaGFkZXJzIgotbXNnc3RyICJTbMOlIHDDpSBKYXZhU2NyaXB0IgotCi0jOiAuLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNn
aWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJPbSBiYWtncnVubmVu
IHNrYWwgc2tyaXZlcyB1dCIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBj
b250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vbmwucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbmwucG8KaW5kZXgg
MTYxMTMyYi4uZmYxOGFmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL25sLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ubC5wbwpAQCAt
MTczNSwxNCArMTczNSw2IEBAIG1zZ3N0ciAiSW5saW5lIG1lZGlhIGFmc3BlbGVuIHRvZWdlc3Rh
YW4iCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3Ry
ICJPZiBoZXQgaW5saW5lIGFmc3BlbGVuIHZhbiBtZWRpYSBpcyB0b2VnZXN0YWFuIgogCi0jOiAu
Li8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwMwot
bXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTLXNoYWRlcnMgaW5zY2hha2Vs
ZW4iCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDoxMDA0Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIg
Ik9mIENTUy1zaGFkZXJzIG1vZXRlbiB3b3JkZW4gaW5nZXNjaGFrZWxkIgotCiAjOiAuLi8uLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAxOQogbXNnaWQg
IkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIldlZXJnYXZlIHZh
biBvbnZlaWxpZ2UgaW5ob3VkIGluc2NoYWtlbGVuIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL29yLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L29yLnBvCmluZGV4IDQwNGFiYjcuLjhmMGE1MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9vci5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vb3IucG8KQEAgLTE3MjYsMTQgKzE3MjYsNiBAQCBtc2dzdHIgIuCsruCsv+CsoeCsv+CshiDg
rKrgrY3grLLgrYfgrKzgrYfgrJXgrY0g4KyH4Kyo4Kyy4Ky+4KyH4Kyo4Kyw4K2HIOCsheCsqAog
bXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAi4Kyu
4Ky/4Kyh4Ky/4KyGIOCsquCtjeCssuCth+CsrOCth+CsleCtjSDgrIfgrKjgrLLgrL7grIfgrKjg
rLDgrYcg4KyF4Kyo4K2B4Kyu4Kyk4Ky/IOCspuCth+Csh+CspeCsvuCsjyDgrJXgrL8iCiAKLSM6
IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEK
LW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUyDgrLjgrYfgrKHgrLDgrJXg
rYEg4Ky44KyV4K2N4Kyw4Ky/4K2fIOCsleCssOCsqOCtjeCspOCtgSIKLQotIzogLi4vLi4vLi4v
Li4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldo
ZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJjc3Mg4Ky44K2H4Kyh4Kyw4KyV
4K2BIOCsuOCsleCtjeCssOCsv+CtnyDgrJXgrLDgrL/grKzgrL4g4KyJ4Kya4Ky/4KykIOCsleCs
vyIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNn
c3RyICLgrIXgrLjgrYHgrLDgrJXgrY3grLfgrL/grKQg4Kys4Ky/4Ky34K2f4Kys4Ky44K2N4Kyk
4K2B4KywIOCsquCtjeCssOCspuCssOCtjeCstuCsqOCsleCtgSDgrLjgrJXgrY3grLDgrL/grZ8g
4KyV4Kyw4Kyo4K2N4Kyk4K2BIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL3BhLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3BhLnBvCmluZGV4
IDllZTQwZTAuLjVjMzIzNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9wYS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcGEucG8KQEAg
LTE3MzYsMTYgKzE3MzYsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXli
YWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUg
Q1NTIHNoYWRlcnMiCi1tc2dzdHIgIuCouOColeCpjeCosOCov+CoquCon+CovuCogiDgqK/gqYvg
qJciCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNw
cDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1t
c2dzdHIgIuColeCpgCDgqKzgqYjgqJXgqJfgqLDgqL7gqIrgqILgqKEg4Kia4Ki/4Kmx4Kik4Kiw
4Ki+4KiCIOCoqOCpguCpsCDgqJvgqL7gqKrgqKPgqL4g4Ki54KmI4KWkIgotCiAjOiAuLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVu
YWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wbC5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9wbC5wbwppbmRleCBjMzk4Y2ZmLi41YmMxNWU5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcGwucG8KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL3BsLnBvCkBAIC0xNzY0LDE0ICsxNzY0LDYgQEAgbXNnc3RyICJPZHR3
YXJ6YW5pZSBtdWx0aW1lZGnDs3cgemV6d2FsYSBuYSB3c3Rhd2lhbmllIgogbXNnaWQgIldoZXRo
ZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiT2tyZcWbbGEsIGN6eSBv
ZHR3YXJ6YW5pZSBtdWx0aW1lZGnDs3cgemV6d2FsYSBuYSB3c3Rhd2lhbmllIgogCi0jOiAuLi8u
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dp
ZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJXxYLEhWN6ZW5pZSBjaWVuaW93YW5pYSBD
U1MiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
T2tyZcWbbGEsIGN6eSB3xYLEhWN6YcSHIGNpZW5pb3dhbmllIENTUyIKLQogIzogLi4vLi4vLi4v
Li4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJF
bmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICJXxYLEhWN6ZW5pZSB3
ecWbd2lldGxhbmlhIG5pZWJlenBpZWN6bmVqIHRyZcWbY2kiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcHQucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vcHQucG8KaW5kZXggMzNkOWM3Yi4uMDg1MjQ3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3B0LnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9wby9wdC5wbwpAQCAtMTc0NSwxNiArMTc0NSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldo
ZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6
eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQWN0aXZhciBBdWRpdG9yIFhT
UyIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
Ojk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1z
Z3N0ciAiU2UgZGV2ZSBzZXIgYWN0aXZhZG8gbyBjb2xhciBET00iCi0KICM6IC4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxl
IGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3B0X0JSLnBvIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL3B0X0JSLnBvCmluZGV4IDE4NzBjZDcuLjM5NTIwNjggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wdF9CUi5wbworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vcHRfQlIucG8KQEAgLTE3MzIsMTQgKzE3MzIsNiBAQCBtc2dz
dHIgIlBlcm1pdGlyIHJlcHJvZHXDp8OjbyBkZSBtw61kaWEgc2VyIGVtYnV0aWRhIgogbXNnaWQg
IldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiU2UgYSByZXBy
b2R1w6fDo28gZGUgbcOtZGlhIGRldmUgcGVybWl0aXIsIG91IG7Do28sIHNlciBlbWJ1dGlkYSIK
IAotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
OjEwMDMKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkhhYmlsaXRhciBzb21i
cmVhZG9yZXMgQ1NTIgotCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3
ZWJzZXR0aW5ncy5jcHA6MTAwNAotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJz
IgotbXNnc3RyICJTZSBzb21icmVhbWVudG8gQ1NTIGRldmUgb3UgbsOjbyBzZXIgaGFiaWxpdGFk
byIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjEwMTkKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNn
c3RyICJIYWJpbGl0YXIgZXhpYmnDp8OjbyBkZSBjb250ZcO6ZG8gaW5zZWd1cm8iCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcm8ucG8gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vcm8ucG8KaW5kZXggOWQ4MzgxMS4uMTMyYjk5MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3JvLnBvCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9yby5wbwpAQCAtMTcxNywxNCArMTcxNyw2IEBAIG1zZ3N0ciAi
UmVkYXJlYSBtdWx0aW1lZGlhIGVzdGUgw65uZ2xvYmF0xIMiCiBtc2dpZCAiV2hldGhlciBtZWRp
YSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICJTcGVjaWZpY8SDIGRhY8SDIHJlZGFy
ZWEgbXVsdGltZWRpYSBzZSBmYWNlIMOubiBjYWRydWwgcGFnaW5paSIKIAotIzogLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJs
ZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQWN0aXZlYXrEgyBmaWx0cmVsZSBwZXJzb25hbGl6YXRl
IENTUyIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJT
cGVjaWZpY8SDIGRhY8SDIHNlIGFjdGl2ZWF6xIMgZmlsdHJlbGUgcGVyc29uYWxpemF0ZSBDU1Mg
KHNoYWRlcnMpIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQi
CiBtc2dzdHIgIkFjdGl2ZWF6xIMgYWZpyJlhcmVhIGNvbsibaW51dHVsdWkgbmVzaWd1ciIKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ydS5wbyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ydS5wbwppbmRleCBiZjQ0MjQ2Li5jNDgwNmVkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcnUucG8KKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3J1LnBvCkBAIC0xNzM0LDE2ICsxNzM0LDYgQEAgbXNn
c3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNn
c3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICLQ
ktGL0L/QvtC70L3Rj9GC0Ywg0YHRhtC10L3QsNGA0LjQuCIKLQotIzogLi4vLi4vLi4vV2ViS2l0
L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJX
aGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi0JTQvtC70LbQvdGLINC70Lgg
0LHRi9GC0Ywg0LLRi9Cy0LXQtNC10L3RiyDQvdCwINC/0LXRh9Cw0YLRjCDRhNC+0L3QvtCy0YvQ
tSDQuNC30L7QsdGA0LDQttC10L3QuNGPLiIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJr
aXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBp
bnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vc2wucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc2wu
cG8KaW5kZXggN2I3YjY4Mi4uOTQxNjBkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL3NsLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9z
bC5wbwpAQCAtMTc1MywxNCArMTc1Myw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVk
aWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxl
IENTUyBzaGFkZXJzIgotbXNnc3RyICJPbW9nb8SNaSBzZW7EjWlsbmlrZSBDU1MiCi0KLSM6IC4u
Ly4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1z
Z2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiQWxpIG5haiBib2Rv
IHNlbsSNaWxuaWtpIENTUyBvbW9nb8SNZW5pIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3Rr
L3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5
IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIk9tb2dvxI1pIHByaWtheiB2c2ViaW4sIGtp
IG5pc28gdmFybmUiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
c3IucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3IucG8KaW5kZXggMGUyOWZi
Ny4uMzNlNWJmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3Ny
LnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zci5wbwpAQCAtMTc0MSwx
NiArMTc0MSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxs
b3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hh
ZGVycyIKLW1zZ3N0ciAi0J7QvNC+0LPRg9Gb0Lgg0JjQutGB0KHQoSDRgNC10LLQuNC30LjRmNGD
IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNn
c3RyICLQntC00YDQtdGS0YPRmNC1INC00LAg0LvQuCDRmNC1INC+0LzQvtCz0YPRm9C10L3QviDQ
lNCe0Jwg0YPQsdCw0YbQuNCy0LDRmtC1IgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGlu
c2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9zckBsYXRpbi5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9zckBsYXRpbi5wbwppbmRleCBhNjBhZDUzLi5mMmEyNTNlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3JAbGF0aW4ucG8KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL3NyQGxhdGluLnBvCkBAIC0xNzQyLDE2ICsxNzQyLDYgQEAgbXNnc3Ry
ICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3Ry
ICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNw
cDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJPbW9n
dcSHaSBJa3NTUyByZXZpemlqdSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Vi
a2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJs
ZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiT2RyZcSRdWplIGRhIGxpIGplIG9tb2d1xIdlbm8gRE9N
IHViYWNpdmFuamUiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNl
dHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVu
dCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L3N2LnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3N2LnBvCmluZGV4IDg2YWM4
MGIuLjI5OTRiYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9z
di5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3YucG8KQEAgLTE3NDAs
MTYgKzE3NDAsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFs
bG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNo
YWRlcnMiCi1tc2dzdHIgIkFrdGl2ZXJhIHNrcmlwdCIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0
ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0
aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiSHVydXZpZGEgYmFrZ3J1bmRzYmls
ZGVyIHNrYSBza3JpdmFzIHV0LiIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Vi
a2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3Vy
ZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vdGEucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdGEucG8KaW5k
ZXggOTg4ZTExZC4uYjhmNzdjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL3RhLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby90YS5wbwpA
QCAtMTcxMywxNCArMTcxMyw2IEBAIG1zZ3N0ciAi4K6H4K6p4K+N4K6y4K+I4K6p4K6/4K6y4K+N
IOCuruCvgOCun+Cuv+Cur+CuvuCuteCviCDgrofgrq/grpXgr43grpUg4K6uCiBtc2dpZCAiV2hl
dGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLgrofgrqngr43grrLg
r4jgrqngrr/grrLgr40g4K6u4K+A4K6f4K6/4K6v4K6+4K614K+IIOCuh+Cur+CuleCvjeCulSDg
rq7gr4Hgrp/grr/grq/gr4Hgrq7grr4iCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMi
Ci1tc2dzdHIgIkNTUyDgrrfgr4fgrp/grrDgr43grpXgrrPgr4gg4K6a4K+G4K6v4K6y4K+N4K6q
4K6f4K+B4K6k4K+N4K6kIOCuteCvh+Cuo+CvjeCun+CvgeCuruCuviIKLQotIzogLi4vLi4vLi4v
Li4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldo
ZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJjc3Mg4K634K+H4K6f4K6w4K+N
4K6V4K6z4K+IIOCumuCvhuCur+CusuCvjeCuquCun+CvgeCupOCvjeCupCDgrrXgr4fgrqPgr43g
rp/gr4Hgrq7grr4iCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29u
dGVudCIKIG1zZ3N0ciAi4K6q4K6+4K6k4K+B4K6V4K6+4K6q4K+N4K6q4K6x4K+N4K6xIOCuieCu
s+CvjeCus+Cun+CuleCvjeCuleCupOCvjeCupOCviOCuleCvjSDgrpXgrr7grp/gr43grprgrr/g
rqrgr43grqrgrp/gr4HgrqTgr43grqTgr4HgrrXgrqTgr4jgrprgr40g4K6a4K+G4K6v4K6y4K+N
4K6q4K6f4K+B4K6k4K+N4K6k4K+BIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL3RlLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3RlLnBvCmlu
ZGV4IGYzZTJlODcuLjFhNWZjNTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9wby90ZS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdGUucG8K
QEAgLTE3MTcsMTQgKzE3MTcsNiBAQCBtc2dzdHIgIuCwruCwvuCwp+CxjeCwr+CwriDgsKrgsY3g
sLLgsYfgsKzgsL7gsJXgsY0g4LCv4LC/4LCo4LGN4oCM4LCy4LGI4LCo4LGNCiBtc2dpZCAiV2hl
dGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLgsK7gsL7gsKfgsY3g
sK/gsK4g4LCq4LGN4LCy4LGH4LCs4LGN4LCv4LC+4LCV4LGNIOCwr+Cwv+CwqOCxjeKAjOCwsuCx
iOCwqOCxjSDgsIXgsKjgsYHgsK7gsKTgsL/gsILgsJrgsL7gsLLgsL4iCiAKLSM6IC4uLy4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJF
bmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUyDgsLfgsYfgsKHgsLDgsY3gsLjgsY0g4LCa
4LGH4LCk4LCo4LCC4LCa4LGH4LCv4LC/IgotCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUg
Y3NzIHNoYWRlcnMiCi1tc2dzdHIgImNzcyDgsLfgsYfgsKHgsLDgsY3gsLjgsY0g4LCa4LGH4LCk
4LCo4LCCIOCwmuCxh+Cwr+CwvuCwsuCwviIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBv
ZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICLgsLjgsYHgsLDgsJXgsY3gsLfgsL/gsKTgsIIg
4LCV4LC+4LCo4LC/IOCwteCwv+Cwt+CwryDgsKrgsY3gsLDgsKbgsLDgsY3gsLbgsKjgsKjgsYEg
4LCa4LGH4LCk4LCo4LCC4LCa4LGH4LCv4LC/IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL3VrLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3Vr
LnBvCmluZGV4IDFhNmY4ODEuLjFmNzI4ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby91ay5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
dWsucG8KQEAgLTE3MzcsMTYgKzE3MzcsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1l
ZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2Vi
S2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lk
ICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgItCj0LLRltC80LrQvdGD0YLQuCDRltC90YHR
gtGA0YPQvNC10L3RgiDQv9C10YDQtdCy0ZbRgNC60LggWFNTIgotCi0jOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQg
IldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICLQp9C4INGB0LvRltC0INCy
0LzQuNC60LDRgtC4INCy0YHRgtCw0LLQutGDIERPTSIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0
ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxh
eSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vdmkucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vdmkucG8KaW5kZXggYzZkOTZiMy4uOWRmYzc2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL3ZpLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby92aS5wbwpAQCAtMTczMywxNiArMTczMyw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRo
ZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQot
bXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQuG6rXQga2nhu4NtIHRyYSBYU1Mi
Ci0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5
OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dz
dHIgIkPDsyBjaG8gZMOhbiBET00ga2jDtG5nIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9m
IGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby96aF9DTi5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by96aF9DTi5wbwppbmRleCBiNjA3MzE2Li5hM2U5YWEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vemhfQ04ucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL3poX0NOLnBvCkBAIC0xNzM1LDE2ICsxNzM1LDYgQEAgbXNnc3RyICIiCiBtc2dp
ZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6
IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMs
IGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICLlkK/nlKggWFNTIOWu
oeiuoSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIK
LW1zZ3N0ciAi5piv5ZCm5ZCv55SoIERPTSDnspjotLQiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3Bs
YXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL0ZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5jcHAKaW5kZXggNGFjZTU3ZS4uNmVlYWYy
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpbHRlckVmZmVjdFJlbmRl
cmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRmlsdGVyRWZmZWN0UmVuZGVy
ZXIuY3BwCkBAIC00NSwxNyArNDUsNiBAQAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRl
IDx3dGYvTWF0aEV4dHJhcy5oPgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0Rf
R1JBUEhJQ1MpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIgotI2luY2x1
ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dy
YW0uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiCi0jaW5jbHVk
ZSAiRkVDdXN0b21GaWx0ZXIuaCIKLSNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5oIgotI2lu
Y2x1ZGUgIlJlbmRlclZpZXcuaCIKLSNpbmNsdWRlICJWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24uaCIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFNWRykKICNpbmNsdWRlICJDYWNoZWRTVkdE
b2N1bWVudC5oIgogI2luY2x1ZGUgIkNhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmgiCkBAIC04
OSwyOCArNzgsOSBAQCBpbmxpbmUgYm9vbCBpc0ZpbHRlclNpemVWYWxpZChGbG9hdFJlY3QgcmVj
dCkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNF
KDNEX0dSQVBISUNTKQotc3RhdGljIFBhc3NSZWZQdHI8RkVDdXN0b21GaWx0ZXI+IGNyZWF0ZUN1
c3RvbUZpbHRlckVmZmVjdChGaWx0ZXIqIGZpbHRlciwgRG9jdW1lbnQqIGRvY3VtZW50LCBWYWxp
ZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qIG9wZXJhdGlvbikKLXsKLSAgICBpZiAoIWRvY3Vt
ZW50KQotICAgICAgICByZXR1cm4gMDsKLQotICAgIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQq
IGdsb2JhbENvbnRleHQgPSBkb2N1bWVudC0+cmVuZGVyVmlldygpLT5jdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0KCk7Ci0gICAgZ2xvYmFsQ29udGV4dC0+cHJlcGFyZUNvbnRleHRJZk5lZWRlZChk
b2N1bWVudC0+dmlldygpLT5ob3N0V2luZG93KCksIGRvY3VtZW50LT5mcmFtZSgpLT5zZXR0aW5n
cygpLmZvcmNlU29mdHdhcmVXZWJHTFJlbmRlcmluZygpKTsKLSAgICBpZiAoIWdsb2JhbENvbnRl
eHQtPmNvbnRleHQoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICByZXR1cm4gRkVDdXN0b21G
aWx0ZXI6OmNyZWF0ZShmaWx0ZXIsIGdsb2JhbENvbnRleHQtPmNvbnRleHQoKSwgb3BlcmF0aW9u
LT52YWxpZGF0ZWRQcm9ncmFtKCksIG9wZXJhdGlvbi0+cGFyYW1ldGVycygpLAotICAgICAgICBv
cGVyYXRpb24tPm1lc2hSb3dzKCksIG9wZXJhdGlvbi0+bWVzaENvbHVtbnMoKSwgIG9wZXJhdGlv
bi0+bWVzaFR5cGUoKSk7Ci19Ci0jZW5kaWYKLQogRmlsdGVyRWZmZWN0UmVuZGVyZXI6OkZpbHRl
ckVmZmVjdFJlbmRlcmVyKCkKICAgICA6IG1fZ3JhcGhpY3NCdWZmZXJBdHRhY2hlZChmYWxzZSkK
ICAgICAsIG1faGFzRmlsdGVyVGhhdE1vdmVzUGl4ZWxzKGZhbHNlKQotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICAsIG1faGFzQ3VzdG9tU2hhZGVyRmlsdGVyKGZhbHNlKQotI2VuZGlmCiB7
CiAgICAgc2V0RmlsdGVyUmVzb2x1dGlvbihGbG9hdFNpemUoMSwgMSkpOwogICAgIG1fc291cmNl
R3JhcGhpYyA9IFNvdXJjZUdyYXBoaWM6OmNyZWF0ZSh0aGlzKTsKQEAgLTE4MSwxNyArMTUxLDEx
IEBAIFBhc3NSZWZQdHI8RmlsdGVyRWZmZWN0PiBGaWx0ZXJFZmZlY3RSZW5kZXJlcjo6YnVpbGRS
ZWZlcmVuY2VGaWx0ZXIoUmVuZGVyRWxlbWVuCiAKIGJvb2wgRmlsdGVyRWZmZWN0UmVuZGVyZXI6
OmJ1aWxkKFJlbmRlckVsZW1lbnQqIHJlbmRlcmVyLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiBv
cGVyYXRpb25zLCBGaWx0ZXJDb25zdW1lciBjb25zdW1lcikKIHsKLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0gICAgbV9oYXNDdXN0b21TaGFkZXJGaWx0ZXIgPSBmYWxzZTsKLSNlbmRpZgogICAg
IG1faGFzRmlsdGVyVGhhdE1vdmVzUGl4ZWxzID0gb3BlcmF0aW9ucy5oYXNGaWx0ZXJUaGF0TW92
ZXNQaXhlbHMoKTsKICAgICBpZiAobV9oYXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHMpCiAgICAgICAg
IG1fb3V0c2V0cyA9IG9wZXJhdGlvbnMub3V0c2V0cygpOwotICAgIAotICAgIC8vIEtlZXAgdGhl
IG9sZCBlZmZlY3RzIG9uIHRoZSBzdGFjayB1bnRpbCB3ZSd2ZSBjcmVhdGVkIHRoZSBuZXcgZWZm
ZWN0cy4KLSAgICAvLyBOZXcgRkVDdXN0b21GaWx0ZXJzIGNhbiByZXVzZSBjYWNoZWQgcmVzb3Vy
Y2VzIGZyb20gb2xkIEZFQ3VzdG9tRmlsdGVycy4KLSAgICBGaWx0ZXJFZmZlY3RMaXN0IG9sZEVm
ZmVjdHM7Ci0gICAgbV9lZmZlY3RzLnN3YXAob2xkRWZmZWN0cyk7CisKKyAgICBtX2VmZmVjdHMu
Y2xlYXIoKTsKIAogICAgIFJlZlB0cjxGaWx0ZXJFZmZlY3Q+IHByZXZpb3VzRWZmZWN0ID0gbV9z
b3VyY2VHcmFwaGljOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgb3BlcmF0aW9ucy5vcGVy
YXRpb25zKCkuc2l6ZSgpOyArK2kpIHsKQEAgLTMzNSwyMSArMjk5LDYgQEAgYm9vbCBGaWx0ZXJF
ZmZlY3RSZW5kZXJlcjo6YnVpbGQoUmVuZGVyRWxlbWVudCogcmVuZGVyZXIsIGNvbnN0IEZpbHRl
ck9wZXJhdGlvbnMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGRyb3BTaGFkb3dPcGVyYXRpb24tPngoKSwgZHJvcFNoYWRvd09wZXJhdGlvbi0+eSgpLCBk
cm9wU2hhZG93T3BlcmF0aW9uLT5jb2xvcigpLCAxKTsKICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICB9Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0gICAg
ICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAgICAgICAgICAvLyBDVVNUT00g
b3BlcmF0aW9ucyBhcmUgYWx3YXlzIGNvbnZlcnRlZCB0byBWQUxJREFURURfQ1VTVE9NIGJlZm9y
ZSBnZXR0aW5nIGhlcmUuCi0gICAgICAgICAgICAvLyBUaGUgY29udmVyc2lvbiBoYXBwZW5zIGlu
IFJlbmRlckxheWVyOjpjb21wdXRlRmlsdGVyT3BlcmF0aW9ucy4KLSAgICAgICAgICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgRmlsdGVy
T3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOiB7Ci0gICAgICAgICAgICBWYWxpZGF0ZWRDdXN0
b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbUZpbHRlck9wZXJhdGlvbiA9IHN0YXRpY19jYXN0PFZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbio+KGZpbHRlck9wZXJhdGlvbik7Ci0gICAgICAg
ICAgICBEb2N1bWVudCogZG9jdW1lbnQgPSByZW5kZXJlciA/ICZyZW5kZXJlci0+ZG9jdW1lbnQo
KSA6IDA7Ci0gICAgICAgICAgICBlZmZlY3QgPSBjcmVhdGVDdXN0b21GaWx0ZXJFZmZlY3QodGhp
cywgZG9jdW1lbnQsIGN1c3RvbUZpbHRlck9wZXJhdGlvbik7Ci0gICAgICAgICAgICBpZiAoZWZm
ZWN0KQotICAgICAgICAgICAgICAgIG1faGFzQ3VzdG9tU2hhZGVyRmlsdGVyID0gdHJ1ZTsKLSAg
ICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAgZGVmYXVsdDoKICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC00MTgsMTMgKzM2Nyw2IEBAIHZvaWQgRmls
dGVyRWZmZWN0UmVuZGVyZXI6OmFwcGx5KCkKIAogTGF5b3V0UmVjdCBGaWx0ZXJFZmZlY3RSZW5k
ZXJlcjo6Y29tcHV0ZVNvdXJjZUltYWdlUmVjdEZvckRpcnR5UmVjdChjb25zdCBMYXlvdXRSZWN0
JiBmaWx0ZXJCb3hSZWN0LCBjb25zdCBMYXlvdXRSZWN0JiBkaXJ0eVJlY3QpCiB7Ci0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgIGlmIChoYXNDdXN0b21TaGFkZXJGaWx0ZXIoKSkgewotICAg
ICAgICAvLyBXaGVuIHdlIGhhdmUgYXQgbGVhc3QgYSBjdXN0b20gc2hhZGVyIGluIHRoZSBjaGFp
biwgd2UgbmVlZCB0byBjb21wdXRlIHRoZSB3aG9sZSBzb3VyY2UgaW1hZ2UsIGJlY2F1c2UgdGhl
IHNoYWRlciBjYW4KLSAgICAgICAgLy8gcmVmZXJlbmNlIGFueSBwaXhlbCBhbmQgd2UgY2Fubm90
IGNvbnRyb2wgdGhhdC4KLSAgICAgICAgcmV0dXJuIGZpbHRlckJveFJlY3Q7Ci0gICAgfQotI2Vu
ZGlmCiAgICAgLy8gVGhlIHJlc3VsdCBvZiB0aGlzIGZ1bmN0aW9uIGlzIHRoZSBhcmVhIGluIHRo
ZSAiZmlsdGVyQm94UmVjdCIgdGhhdCBuZWVkcyB0byBiZSByZXBhaW50ZWQsIHNvIHRoYXQgd2Ug
ZnVsbHkgY292ZXIgdGhlICJkaXJ0eVJlY3QiLgogICAgIExheW91dFJlY3QgcmVjdEZvclJlcGFp
bnQgPSBkaXJ0eVJlY3Q7CiAgICAgaWYgKGhhc0ZpbHRlclRoYXRNb3Zlc1BpeGVscygpKSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRmlsdGVyRWZmZWN0UmVuZGVyZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5oCmluZGV4
IDdjYTI3NTkuLjlkODhmYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9G
aWx0ZXJFZmZlY3RSZW5kZXJlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaWx0
ZXJFZmZlY3RSZW5kZXJlci5oCkBAIC00NCw4ICs0NCw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotY2xhc3MgQ2FjaGVkU2hhZGVyOwotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbTsKIGNs
YXNzIERvY3VtZW50OwogY2xhc3MgR3JhcGhpY3NDb250ZXh0OwogY2xhc3MgUmVuZGVyRWxlbWVu
dDsKQEAgLTEyMSwxMCArMTE5LDYgQEAgcHVibGljOgogICAgIGJvb2wgaGFzRmlsdGVyVGhhdE1v
dmVzUGl4ZWxzKCkgY29uc3QgeyByZXR1cm4gbV9oYXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHM7IH0K
ICAgICBMYXlvdXRSZWN0IGNvbXB1dGVTb3VyY2VJbWFnZVJlY3RGb3JEaXJ0eVJlY3QoY29uc3Qg
TGF5b3V0UmVjdCYgZmlsdGVyQm94UmVjdCwgY29uc3QgTGF5b3V0UmVjdCYgZGlydHlSZWN0KTsK
IAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBib29sIGhhc0N1c3RvbVNoYWRlckZpbHRl
cigpIGNvbnN0IHsgcmV0dXJuIG1faGFzQ3VzdG9tU2hhZGVyRmlsdGVyOyB9Ci0jZW5kaWYKLQog
cHJpdmF0ZToKICAgICB2b2lkIHNldE1heEVmZmVjdFJlY3RzKGNvbnN0IEZsb2F0UmVjdCYgZWZm
ZWN0UmVjdCkKICAgICB7CkBAIC0xNTQsOSArMTQ4LDYgQEAgcHJpdmF0ZToKIAogICAgIGJvb2wg
bV9ncmFwaGljc0J1ZmZlckF0dGFjaGVkOwogICAgIGJvb2wgbV9oYXNGaWx0ZXJUaGF0TW92ZXNQ
aXhlbHM7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGJvb2wgbV9oYXNDdXN0b21TaGFk
ZXJGaWx0ZXI7Ci0jZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IDgwNTk2ZWYuLjY2N2QxYzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApAQCAtMTI2LDEzICsxMjYs
NiBAQAogI2luY2x1ZGUgIlNWR05hbWVzLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckdsb2JhbENv
bnRleHQuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNsdWRlICJD
dXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiVmFsaWRhdGVkQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uLmgiCi0jZW5kaWYKLQogI2RlZmluZSBNSU5fSU5URVJTRUNUX0ZPUl9S
RVZFQUwgMzIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMTUxMiwxNiArMTUwNSw2IEBAIHZv
aWQgUmVuZGVyTGF5ZXI6OnNldEZpbHRlckJhY2tlbmROZWVkc1JlcGFpbnRpbmdJblJlY3QoY29u
c3QgTGF5b3V0UmVjdCYgcmVjdCwKICAgICBGaWx0ZXJJbmZvJiBmaWx0ZXJJbmZvID0gRmlsdGVy
SW5mbzo6Z2V0KCp0aGlzKTsKICAgICBmaWx0ZXJJbmZvLmV4cGFuZERpcnR5U291cmNlUmVjdChy
ZWN0Rm9yUmVwYWludCk7CiAgICAgCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIEFTU0VS
VChmaWx0ZXJJbmZvLnJlbmRlcmVyKCkpOwotICAgIGlmIChmaWx0ZXJJbmZvLnJlbmRlcmVyKCkt
Pmhhc0N1c3RvbVNoYWRlckZpbHRlcigpKSB7Ci0gICAgICAgIC8vIElmIHdlIGhhdmUgYXQgbGVh
c3Qgb25lIGN1c3RvbSBzaGFkZXIsIHdlIG5lZWQgdG8gdXBkYXRlIHRoZSB3aG9sZSBib3VuZGlu
ZyBib3ggb2YgdGhlIGxheWVyLCBiZWNhdXNlIHRoZQotICAgICAgICAvLyBzaGFkZXIgY2FuIGFk
ZHJlc3MgYW55IG91cHV0IHBpeGVsLgotICAgICAgICAvLyBOb3RlOiBUaGlzIGlzIG9ubHkgZm9y
IG91dHB1dCByZWN0LCBzbyB0aGVyZSdzIG5vIG5lZWQgdG8gZXhwYW5kIHRoZSBkaXJ0eSBzb3Vy
Y2UgcmVjdC4KLSAgICAgICAgcmVjdEZvclJlcGFpbnQudW5pdGUoY2FsY3VsYXRlTGF5ZXJCb3Vu
ZHModGhpcykpOwotICAgIH0KLSNlbmRpZgotICAgIAogICAgIFJlbmRlckxheWVyKiBwYXJlbnRM
YXllciA9IGVuY2xvc2luZ0ZpbHRlclJlcGFpbnRMYXllcigpOwogICAgIEFTU0VSVChwYXJlbnRM
YXllcik7CiAgICAgRmxvYXRRdWFkIHJlcGFpbnRRdWFkKHJlY3RGb3JSZXBhaW50KTsKQEAgLTY4
MDgsNjggKzY3OTEsOCBAQCBQYXNzUmVmPFJlbmRlclN0eWxlPiBSZW5kZXJMYXllcjo6Y3JlYXRl
UmVmbGVjdGlvblN0eWxlKCkKICAgICByZXR1cm4gbmV3U3R5bGU7CiB9CiAKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0KLWJvb2wgUmVuZGVyTGF5ZXI6OmlzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxl
ZCgpIGNvbnN0Ci17Ci0gICAgLy8gV2Ugb25seSB3YW50IHRvIGVuYWJsZSBzaGFkZXJzIGlmIFdl
YkdMIGlzIGFsc28gZW5hYmxlZCBvbiB0aGlzIHBsYXRmb3JtLgotICAgIGNvbnN0IFNldHRpbmdz
JiBzZXR0aW5ncyA9IHJlbmRlcmVyKCkuZnJhbWUoKS5zZXR0aW5ncygpOwotICAgIHJldHVybiBz
ZXR0aW5ncy5pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoKSAmJiBzZXR0aW5ncy53ZWJHTEVuYWJs
ZWQoKTsKLX0KLQotI2VuZGlmCi0KICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAKLUZpbHRlck9w
ZXJhdGlvbnMgUmVuZGVyTGF5ZXI6OmNvbXB1dGVGaWx0ZXJPcGVyYXRpb25zKGNvbnN0IFJlbmRl
clN0eWxlKiBzdHlsZSkKLXsKLSNpZiAhRU5BQkxFKENTU19TSEFERVJTKQotICAgIHJldHVybiBz
dHlsZS0+ZmlsdGVyKCk7Ci0jZWxzZQotICAgIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRl
cnMgPSBzdHlsZS0+ZmlsdGVyKCk7Ci0gICAgaWYgKCFmaWx0ZXJzLmhhc0N1c3RvbUZpbHRlcigp
KQotICAgICAgICByZXR1cm4gZmlsdGVyczsKLQotICAgIGlmICghaXNDU1NDdXN0b21GaWx0ZXJF
bmFibGVkKCkpIHsKLSAgICAgICAgLy8gQ1NTIEN1c3RvbSBmaWx0ZXJzIHNob3VsZCBub3QgcGFy
c2UgYXQgYWxsIGluIHRoaXMgY2FzZSwgYnV0IHRoZXJlIG1pZ2h0IGJlCi0gICAgICAgIC8vIHJl
bWFpbmluZyBzdHlsZXMgdGhhdCB3ZXJlIHBhcnNlZCB3aGVuIHRoZSBmbGFnIHdhcyBlbmFibGVk
LiBSZXByb2R1Y2VzIGluIER1bXBSZW5kZXJUcmVlCi0gICAgICAgIC8vIGJlY2F1c2UgaXQgcmVz
ZXRzIHRoZSBmbGFnIHdoaWxlIHRoZSBwcmV2aW91cyB0ZXN0IGlzIHN0aWxsIGxvYWRlZC4KLSAg
ICAgICAgcmV0dXJuIEZpbHRlck9wZXJhdGlvbnMoKTsKLSAgICB9Ci0KLSAgICBGaWx0ZXJPcGVy
YXRpb25zIG91dHB1dEZpbHRlcnM7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBmaWx0ZXJz
LnNpemUoKTsgKytpKSB7Ci0gICAgICAgIFJlZlB0cjxGaWx0ZXJPcGVyYXRpb24+IGZpbHRlck9w
ZXJhdGlvbiA9IGZpbHRlcnMub3BlcmF0aW9ucygpLmF0KGkpOwotICAgICAgICBpZiAoZmlsdGVy
T3BlcmF0aW9uLT50eXBlKCkgPT0gRmlsdGVyT3BlcmF0aW9uOjpDVVNUT00pIHsKLSAgICAgICAg
ICAgIC8vIFdlIGhhdmUgdG8gd2FpdCB1bnRpbCB0aGUgcHJvZ3JhbSBvZiBDU1MgU2hhZGVycyBp
cyBsb2FkZWQgYmVmb3JlIHNldHRpbmcgaXQgb24gdGhlIGxheWVyLgotICAgICAgICAgICAgLy8g
Tm90ZSB0aGF0IHdlIHdpbGwgaGFuZGxlIHRoZSBsb2FkaW5nIG9mIHRoZSBzaGFkZXJzIGFuZCBy
ZXBhaW50aW5nIG9mIHRoZSBsYXllciBpbiB1cGRhdGVPclJlbW92ZUZpbHRlckNsaWVudHMuCi0g
ICAgICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbU9wZXJhdGlvbiA9
IHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbio+KGZpbHRlck9wZXJhdGlv
bi5nZXQoKSk7Ci0gICAgICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3Jh
bSA9IGN1c3RvbU9wZXJhdGlvbi0+cHJvZ3JhbSgpOwotICAgICAgICAgICAgaWYgKCFwcm9ncmFt
LT5pc0xvYWRlZCgpKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgICAgICBS
ZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gdmFsaWRhdGVkUHJvZ3JhbSA9IHBy
b2dyYW0tPnZhbGlkYXRlZFByb2dyYW0oKTsKLSAgICAgICAgICAgIGlmICghdmFsaWRhdGVkUHJv
Z3JhbSkgewotICAgICAgICAgICAgICAgIC8vIExhemlseSBjcmVhdGUgYSB2YWxpZGF0ZWQgcHJv
Z3JhbSBhbmQgc3RvcmUgaXQgb24gdGhlIEN1c3RvbUZpbHRlclByb2dyYW0uCi0gICAgICAgICAg
ICAgICAgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCogZ2xvYmFsQ29udGV4dCA9IHJlbmRlcmVy
KCkudmlldygpLmN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQoKTsKLSAgICAgICAgICAgICAgICB2
YWxpZGF0ZWRQcm9ncmFtID0gQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6Y3JlYXRlKGds
b2JhbENvbnRleHQsIHByb2dyYW0tPnByb2dyYW1JbmZvKCkpOwotICAgICAgICAgICAgICAgIHBy
b2dyYW0tPnNldFZhbGlkYXRlZFByb2dyYW0odmFsaWRhdGVkUHJvZ3JhbSk7Ci0gICAgICAgICAg
ICB9Ci0KLSAgICAgICAgICAgIGlmICghdmFsaWRhdGVkUHJvZ3JhbS0+aXNJbml0aWFsaXplZCgp
KQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgICAgICBSZWZQdHI8VmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uPiB2YWxpZGF0ZWRPcGVyYXRpb24gPSBWYWxpZGF0ZWRD
dXN0b21GaWx0ZXJPcGVyYXRpb246OmNyZWF0ZSh2YWxpZGF0ZWRQcm9ncmFtLnJlbGVhc2UoKSwg
Ci0gICAgICAgICAgICAgICAgY3VzdG9tT3BlcmF0aW9uLT5wYXJhbWV0ZXJzKCksIGN1c3RvbU9w
ZXJhdGlvbi0+bWVzaFJvd3MoKSwgY3VzdG9tT3BlcmF0aW9uLT5tZXNoQ29sdW1ucygpLCBjdXN0
b21PcGVyYXRpb24tPm1lc2hUeXBlKCkpOwotICAgICAgICAgICAgb3V0cHV0RmlsdGVycy5vcGVy
YXRpb25zKCkuYXBwZW5kKHZhbGlkYXRlZE9wZXJhdGlvbi5yZWxlYXNlKCkpOwotICAgICAgICAg
ICAgY29udGludWU7Ci0gICAgICAgIH0KLSAgICAgICAgb3V0cHV0RmlsdGVycy5vcGVyYXRpb25z
KCkuYXBwZW5kKGZpbHRlck9wZXJhdGlvbi5yZWxlYXNlKCkpOwotICAgIH0KLSAgICByZXR1cm4g
b3V0cHV0RmlsdGVyczsKLSNlbmRpZgotfQotCiB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVPclJl
bW92ZUZpbHRlckNsaWVudHMoKQogewogICAgIGlmICghaGFzRmlsdGVyKCkpIHsKQEAgLTY4Nzcs
MTMgKzY4MDAsNiBAQCB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVPclJlbW92ZUZpbHRlckNsaWVu
dHMoKQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQot
ICAgIGlmIChyZW5kZXJlcigpLnN0eWxlKCkuZmlsdGVyKCkuaGFzQ3VzdG9tRmlsdGVyKCkpCi0g
ICAgICAgIEZpbHRlckluZm86OmdldCgqdGhpcykudXBkYXRlQ3VzdG9tRmlsdGVyQ2xpZW50cyhy
ZW5kZXJlcigpLnN0eWxlKCkuZmlsdGVyKCkpOwotICAgIGVsc2UgaWYgKEZpbHRlckluZm8qIGZp
bHRlckluZm8gPSBGaWx0ZXJJbmZvOjpnZXRJZkV4aXN0cygqdGhpcykpCi0gICAgICAgIGZpbHRl
ckluZm8tPnJlbW92ZUN1c3RvbUZpbHRlckNsaWVudHMoKTsKLSNlbmRpZgotCiAjaWYgRU5BQkxF
KFNWRykKICAgICBpZiAocmVuZGVyZXIoKS5zdHlsZSgpLmZpbHRlcigpLmhhc1JlZmVyZW5jZUZp
bHRlcigpKQogICAgICAgICBGaWx0ZXJJbmZvOjpnZXQoKnRoaXMpLnVwZGF0ZVJlZmVyZW5jZUZp
bHRlckNsaWVudHMocmVuZGVyZXIoKS5zdHlsZSgpLmZpbHRlcigpKTsKQEAgLTY4OTksNyArNjgx
NSw3IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZU9yUmVtb3ZlRmlsdGVyRWZmZWN0UmVuZGVy
ZXIoKQogICAgIC8vIG1vZGUgbWlnaHQgaGF2ZSBjaGFuZ2VkIGZvciB0aGlzIGxheWVyLgogICAg
IGlmICghcGFpbnRzV2l0aEZpbHRlcnMoKSkgewogICAgICAgICAvLyBEb24ndCBkZWxldGUgdGhl
IHdob2xlIGZpbHRlciBpbmZvIGhlcmUsIGJlY2F1c2Ugd2UgbWlnaHQgdXNlIGl0Ci0gICAgICAg
IC8vIGZvciBsb2FkaW5nIENTUyBzaGFkZXIgZmlsZXMuCisgICAgICAgIC8vIGZvciBsb2FkaW5n
IFNWRyByZWZlcmVuY2UgZmlsdGVyIGZpbGVzLgogICAgICAgICBpZiAoRmlsdGVySW5mbyogZmls
dGVySW5mbyA9IEZpbHRlckluZm86OmdldElmRXhpc3RzKCp0aGlzKSkKICAgICAgICAgICAgIGZp
bHRlckluZm8tPnNldFJlbmRlcmVyKDApOwogCkBAIC02OTIzLDcgKzY4MzksNyBAQCB2b2lkIFJl
bmRlckxheWVyOjp1cGRhdGVPclJlbW92ZUZpbHRlckVmZmVjdFJlbmRlcmVyKCkKIAogICAgIC8v
IElmIHRoZSBmaWx0ZXIgZmFpbHMgdG8gYnVpbGQsIHJlbW92ZSBpdCBmcm9tIHRoZSBsYXllci4g
SXQgd2lsbCBzdGlsbCBhdHRlbXB0IHRvCiAgICAgLy8gZ28gdGhyb3VnaCByZWd1bGFyIHByb2Nl
c3NpbmcgKGUuZy4gY29tcG9zaXRpbmcpLCBidXQgbmV2ZXIgYXBwbHkgYW55dGhpbmcuCi0gICAg
aWYgKCFmaWx0ZXJJbmZvLnJlbmRlcmVyKCktPmJ1aWxkKCZyZW5kZXJlcigpLCBjb21wdXRlRmls
dGVyT3BlcmF0aW9ucygmcmVuZGVyZXIoKS5zdHlsZSgpKSwgRmlsdGVyUHJvcGVydHkpKQorICAg
IGlmICghZmlsdGVySW5mby5yZW5kZXJlcigpLT5idWlsZCgmcmVuZGVyZXIoKSwgcmVuZGVyZXIo
KS5zdHlsZSgpLmZpbHRlcigpLCBGaWx0ZXJQcm9wZXJ0eSkpCiAgICAgICAgIGZpbHRlckluZm8u
c2V0UmVuZGVyZXIoMCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgK
aW5kZXggZDYwNmQ5YS4uZTU5ZDRkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckxheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxh
eWVyLmgKQEAgLTgyOCwxMiArODI4LDcgQEAgcHVibGljOgogICAgIGJvb2wgY29udGFpbnNEaXJ0
eU92ZXJsYXlTY3JvbGxiYXJzKCkgY29uc3QgeyByZXR1cm4gbV9jb250YWluc0RpcnR5T3Zlcmxh
eVNjcm9sbGJhcnM7IH0KICAgICB2b2lkIHNldENvbnRhaW5zRGlydHlPdmVybGF5U2Nyb2xsYmFy
cyhib29sIGRpcnR5U2Nyb2xsYmFycykgeyBtX2NvbnRhaW5zRGlydHlPdmVybGF5U2Nyb2xsYmFy
cyA9IGRpcnR5U2Nyb2xsYmFyczsgfQogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGJv
b2wgaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKCkgY29uc3Q7Ci0jZW5kaWYKLQogI2lmIEVOQUJM
RShDU1NfRklMVEVSUykKLSAgICBGaWx0ZXJPcGVyYXRpb25zIGNvbXB1dGVGaWx0ZXJPcGVyYXRp
b25zKGNvbnN0IFJlbmRlclN0eWxlKik7CiAgICAgYm9vbCBwYWludHNXaXRoRmlsdGVycygpIGNv
bnN0OwogICAgIGJvb2wgcmVxdWlyZXNGdWxsTGF5ZXJJbWFnZUZvckZpbHRlcnMoKSBjb25zdDsK
ICAgICBGaWx0ZXJFZmZlY3RSZW5kZXJlciogZmlsdGVyUmVuZGVyZXIoKSBjb25zdDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKaW5kZXggNDgx
OThkZi4uYzMyODA3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckxheWVyQmFja2luZy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxh
eWVyQmFja2luZy5jcHAKQEAgLTY1LDkgKzY1LDYgQEAKIAogI2lmIEVOQUJMRShDU1NfRklMVEVS
UykKICNpbmNsdWRlICJGaWx0ZXJFZmZlY3RSZW5kZXJlci5oIgotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNlbmRpZgogI2VuZGlm
CiAKICNpZiBFTkFCTEUoV0VCR0wpIHx8IEVOQUJMRShBQ0NFTEVSQVRFRF8yRF9DQU5WQVMpCkBA
IC00MDcsNyArNDA0LDcgQEAgdm9pZCBSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZVRyYW5zZm9y
bShjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUpCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQogdm9p
ZCBSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZUZpbHRlcnMoY29uc3QgUmVuZGVyU3R5bGUqIHN0
eWxlKQogewotICAgIG1fY2FuQ29tcG9zaXRlRmlsdGVycyA9IG1fZ3JhcGhpY3NMYXllci0+c2V0
RmlsdGVycyhvd25pbmdMYXllcigpLmNvbXB1dGVGaWx0ZXJPcGVyYXRpb25zKHN0eWxlKSk7Cisg
ICAgbV9jYW5Db21wb3NpdGVGaWx0ZXJzID0gbV9ncmFwaGljc0xheWVyLT5zZXRGaWx0ZXJzKHN0
eWxlLT5maWx0ZXIoKSk7CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckxheWVyRmlsdGVySW5mby5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcAppbmRleCA5MGExZTUxLi4zMTI1ZWY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJGaWx0ZXJJbmZv
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJGaWx0ZXJJbmZv
LmNwcApAQCAtMzUsOCArMzUsNiBAQAogCiAjaW5jbHVkZSAiQ2FjaGVkU1ZHRG9jdW1lbnQuaCIK
ICNpbmNsdWRlICJDYWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZS5oIgotI2luY2x1ZGUgIkN1c3Rv
bUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW0uaCIKICNp
bmNsdWRlICJGaWx0ZXJFZmZlY3RSZW5kZXJlci5oIgogI2luY2x1ZGUgIlNWR0VsZW1lbnQuaCIK
ICNpbmNsdWRlICJTVkdGaWx0ZXIuaCIKQEAgLTg1LDkgKzgzLDYgQEAgUmVuZGVyTGF5ZXI6OkZp
bHRlckluZm86OkZpbHRlckluZm8oUmVuZGVyTGF5ZXImIGxheWVyKQogCiBSZW5kZXJMYXllcjo6
RmlsdGVySW5mbzo6fkZpbHRlckluZm8oKQogewotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAg
ICByZW1vdmVDdXN0b21GaWx0ZXJDbGllbnRzKCk7Ci0jZW5kaWYKICNpZiBFTkFCTEUoU1ZHKQog
ICAgIHJlbW92ZVJlZmVyZW5jZUZpbHRlckNsaWVudHMoKTsKICNlbmRpZgpAQCAtMTQ5LDQ0ICsx
NDQsNiBAQCB2b2lkIFJlbmRlckxheWVyOjpGaWx0ZXJJbmZvOjpyZW1vdmVSZWZlcmVuY2VGaWx0
ZXJDbGllbnRzKCkKIAogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLXZvaWQg
UmVuZGVyTGF5ZXI6OkZpbHRlckluZm86Om5vdGlmeUN1c3RvbUZpbHRlclByb2dyYW1Mb2FkZWQo
Q3VzdG9tRmlsdGVyUHJvZ3JhbSopCi17Ci0gICAgbV9sYXllci5yZW5kZXJlcigpLmVsZW1lbnQo
KS0+c2V0TmVlZHNTdHlsZVJlY2FsYyhTeW50aGV0aWNTdHlsZUNoYW5nZSk7Ci0gICAgbV9sYXll
ci5yZW5kZXJlcigpLnJlcGFpbnQoKTsKLX0KLQotdm9pZCBSZW5kZXJMYXllcjo6RmlsdGVySW5m
bzo6dXBkYXRlQ3VzdG9tRmlsdGVyQ2xpZW50cyhjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiBvcGVy
YXRpb25zKQotewotICAgIGlmICghb3BlcmF0aW9ucy5zaXplKCkpIHsKLSAgICAgICAgcmVtb3Zl
Q3VzdG9tRmlsdGVyQ2xpZW50cygpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIFZlY3Rv
cjxSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4+IGNhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1z
OwotICAgIGZvciAoc2l6ZV90IGkgPSAwLCBzaXplID0gb3BlcmF0aW9ucy5zaXplKCk7IGkgPCBz
aXplOyArK2kpIHsKLSAgICAgICAgY29uc3QgRmlsdGVyT3BlcmF0aW9uKiBmaWx0ZXJPcGVyYXRp
b24gPSBvcGVyYXRpb25zLm9wZXJhdGlvbnMoKVtpXS5nZXQoKTsKLSAgICAgICAgaWYgKGZpbHRl
ck9wZXJhdGlvbi0+dHlwZSgpICE9IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NKQotICAgICAgICAg
ICAgY29udGludWU7Ci0gICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9t
RmlsdGVyT3BlcmF0aW9uID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
Kj4oZmlsdGVyT3BlcmF0aW9uKTsKLSAgICAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3Jh
bSA9IGN1c3RvbUZpbHRlck9wZXJhdGlvbi0+cHJvZ3JhbSgpOwotICAgICAgICBjYWNoZWRDdXN0
b21GaWx0ZXJQcm9ncmFtcy5hcHBlbmQocHJvZ3JhbSk7Ci0gICAgICAgIHByb2dyYW0tPmFkZENs
aWVudCh0aGlzKTsKLSAgICB9Ci0gICAgLy8gUmVtb3ZlIHRoZSBvbGQgY2xpZW50cyBoZXJlLCBh
ZnRlciB3ZSd2ZSBhZGRlZCB0aGUgbmV3IG9uZXMsIHNvIHRoYXQgd2UgZG9uJ3QgZmxpY2tlciBp
ZiBzb21lIHNoYWRlcnMgYXJlIHVuY2hhbmdlZC4KLSAgICByZW1vdmVDdXN0b21GaWx0ZXJDbGll
bnRzKCk7Ci0gICAgbV9jYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtcy5zd2FwKGNhY2hlZEN1c3Rv
bUZpbHRlclByb2dyYW1zKTsKLX0KLQotdm9pZCBSZW5kZXJMYXllcjo6RmlsdGVySW5mbzo6cmVt
b3ZlQ3VzdG9tRmlsdGVyQ2xpZW50cygpCi17Ci0gICAgZm9yIChzaXplX3QgaSA9IDAsIHNpemUg
PSBtX2NhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zLnNpemUoKTsgaSA8IHNpemU7ICsraSkKLSAg
ICAgICAgbV9jYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtc1tpXS0+cmVtb3ZlQ2xpZW50KHRoaXMp
OwotICAgIG1fY2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbXMuY2xlYXIoKTsKLX0KLQotI2VuZGlm
Ci0KIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShDU1NfRklMVEVS
UykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckZpbHRl
ckluZm8uaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckZpbHRlckluZm8u
aAppbmRleCAwZmY3MWYxLi4xYTZmMmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckxheWVyRmlsdGVySW5mby5oCkBAIC0zNSw3ICszNSw2IEBACiAKICNpbmNsdWRl
ICJDYWNoZWRSZXNvdXJjZUhhbmRsZS5oIgogI2luY2x1ZGUgIkNhY2hlZFNWR0RvY3VtZW50Q2xp
ZW50LmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oIgogI2luY2x1ZGUg
IlJlbmRlckxheWVyLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQzLDExICs0Miw3IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIEVsZW1lbnQ7CiAKIGNsYXNzIFJlbmRlckxheWVy
OjpGaWx0ZXJJbmZvCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBFTkFCTEUoU1ZHKQotICAg
IGZpbmFsIDogcHVibGljIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQsIHB1YmxpYyBDYWNoZWRT
VkdEb2N1bWVudENsaWVudAotI2VsaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGZpbmFsIDog
cHVibGljIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQKLSNlbGlmIEVOQUJMRShTVkcpCisjaWYg
RU5BQkxFKFNWRykKICAgICBmaW5hbCA6IHB1YmxpYyBDYWNoZWRTVkdEb2N1bWVudENsaWVudAog
I2VuZGlmCiB7CkBAIC02MywxMSArNTgsNiBAQCBwdWJsaWM6CiAgICAgRmlsdGVyRWZmZWN0UmVu
ZGVyZXIqIHJlbmRlcmVyKCkgY29uc3QgeyByZXR1cm4gbV9yZW5kZXJlci5nZXQoKTsgfQogICAg
IHZvaWQgc2V0UmVuZGVyZXIoUGFzc1JlZlB0cjxGaWx0ZXJFZmZlY3RSZW5kZXJlcj4pOwogICAg
IAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICB2b2lkIHVwZGF0ZUN1c3RvbUZpbHRlckNs
aWVudHMoY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYpOwotICAgIHZvaWQgcmVtb3ZlQ3VzdG9tRmls
dGVyQ2xpZW50cygpOwotI2VuZGlmCi0KICNpZiBFTkFCTEUoU1ZHKQogICAgIHZvaWQgdXBkYXRl
UmVmZXJlbmNlRmlsdGVyQ2xpZW50cyhjb25zdCBGaWx0ZXJPcGVyYXRpb25zJik7CiAgICAgdm9p
ZCByZW1vdmVSZWZlcmVuY2VGaWx0ZXJDbGllbnRzKCk7CkBAIC03OSwxMCArNjksNiBAQCBwcml2
YXRlOgogCiAgICAgZnJpZW5kIHZvaWQgV1RGOjpkZWxldGVPd25lZFB0cjxGaWx0ZXJJbmZvPihG
aWx0ZXJJbmZvKik7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgdmlydHVhbCB2b2lk
IG5vdGlmeUN1c3RvbUZpbHRlclByb2dyYW1Mb2FkZWQoQ3VzdG9tRmlsdGVyUHJvZ3JhbSopIG92
ZXJyaWRlOwotI2VuZGlmCi0KICNpZiBFTkFCTEUoU1ZHKQogICAgIHZpcnR1YWwgdm9pZCBub3Rp
ZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSopIG92ZXJyaWRlOwogI2VuZGlmCkBAIC0xMDMsMTAg
Kzg5LDYgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8RmlsdGVyRWZmZWN0UmVuZGVyZXI+IG1fcmVu
ZGVyZXI7CiAgICAgTGF5b3V0UmVjdCBtX2RpcnR5U291cmNlUmVjdDsKIAotI2lmIEVOQUJMRShD
U1NfU0hBREVSUykKLSAgICBWZWN0b3I8UmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+PiBtX2Nh
Y2hlZEN1c3RvbUZpbHRlclByb2dyYW1zOwotI2VuZGlmCi0KICNpZiBFTkFCTEUoU1ZHKQogICAg
IFZlY3RvcjxSZWZQdHI8RWxlbWVudD4+IG1faW50ZXJuYWxTVkdSZWZlcmVuY2VzOwogICAgIFZl
Y3RvcjxDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRTVkdEb2N1bWVudD4+IG1fZXh0ZXJuYWxT
VkdSZWZlcmVuY2VzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwCmluZGV4
IDRhNGIzNWMuLjdiNjQ2YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5j
cHAKQEAgLTUxLDEwICs1MSw2IEBACiAjaW5jbHVkZSAiUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgi
CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQot
I2luY2x1ZGUgIkN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaCIKLSNlbmRpZgotCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIFJlbmRlclZpZXc6OlJlbmRlclZpZXcoRG9jdW1lbnQmIGRvY3VtZW50
LCBQYXNzUmVmPFJlbmRlclN0eWxlPiBzdHlsZSkKQEAgLTExODAsMTUgKzExNzYsNiBAQCB2b2lk
IFJlbmRlclZpZXc6OnNldElzSW5XaW5kb3coYm9vbCBpc0luV2luZG93KQogI2VuZGlmCiB9CiAK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLUN1c3RvbUZpbHRl
ckdsb2JhbENvbnRleHQqIFJlbmRlclZpZXc6OmN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQoKQot
ewotICAgIGlmICghbV9jdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0KQotICAgICAgICBtX2N1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHQgPSBhZG9wdFB0cihuZXcgQ3VzdG9tRmlsdGVyR2xvYmFsQ29u
dGV4dCgpKTsKLSAgICByZXR1cm4gbV9jdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmdldCgpOwot
fQotI2VuZGlmCi0KIHZvaWQgUmVuZGVyVmlldzo6c3R5bGVEaWRDaGFuZ2UoU3R5bGVEaWZmZXJl
bmNlIGRpZmYsIGNvbnN0IFJlbmRlclN0eWxlKiBvbGRTdHlsZSkKIHsKICAgICBSZW5kZXJCbG9j
a0Zsb3c6OnN0eWxlRGlkQ2hhbmdlKGRpZmYsIG9sZFN0eWxlKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyVmlldy5oCmluZGV4IGM3NTVjMTIuLjJhZWVlYjEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclZpZXcuaApAQCAtMzgsMTAgKzM4LDYgQEAgY2xhc3MgUmVuZGVyUXVvdGU7
CiBjbGFzcyBSZW5kZXJMYXllckNvbXBvc2l0b3I7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotY2xhc3MgQ3VzdG9tRmlsdGVyR2xvYmFsQ29u
dGV4dDsKLSNlbmRpZgotCiBjbGFzcyBSZW5kZXJWaWV3IGZpbmFsIDogcHVibGljIFJlbmRlckJs
b2NrRmxvdyB7CiBwdWJsaWM6CiAgICAgUmVuZGVyVmlldyhEb2N1bWVudCYsIFBhc3NSZWY8UmVu
ZGVyU3R5bGU+KTsKQEAgLTE4OSwxMCArMTg1LDYgQEAgcHVibGljOgogICAgIGJvb2wgdXNlc0Nv
bXBvc2l0aW5nKCkgY29uc3Q7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYg
VVNFKDNEX0dSQVBISUNTKQotICAgIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQqIGN1c3RvbUZp
bHRlckdsb2JhbENvbnRleHQoKTsKLSNlbmRpZgotCiAgICAgSW50UmVjdCB1bnNjYWxlZERvY3Vt
ZW50UmVjdCgpIGNvbnN0OwogICAgIExheW91dFJlY3QgYmFja2dyb3VuZFJlY3QoUmVuZGVyQm94
KiBiYWNrZ3JvdW5kUmVuZGVyZXIpIGNvbnN0OwogCkBAIC0zNDEsOSArMzMzLDYgQEAgcHJpdmF0
ZToKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiAgICAgT3duUHRyPFJlbmRlckxh
eWVyQ29tcG9zaXRvcj4gbV9jb21wb3NpdG9yOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0gICAgT3duUHRyPEN1c3RvbUZpbHRlckdsb2JhbENv
bnRleHQ+IG1fY3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dDsKLSNlbmRpZgogICAgIE93blB0cjxG
bG93VGhyZWFkQ29udHJvbGxlcj4gbV9mbG93VGhyZWFkQ29udHJvbGxlcjsKICAgICBSZWZQdHI8
SW50ZXJ2YWxBcmVuYT4gbV9pbnRlcnZhbEFyZW5hOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmNwcApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZDkxMThhMS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNTYg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9y
YXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKA
nEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJF
Ci0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZp
Zy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiU3R5bGVDYWNoZWRT
aGFkZXIuaCIKLQotI2luY2x1ZGUgIkNTU1ByaW1pdGl2ZVZhbHVlLmgiCi0jaW5jbHVkZSAiQ2Fj
aGVkU2hhZGVyLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotCi1TdHlsZUNhY2hlZFNoYWRl
cjo6U3R5bGVDYWNoZWRTaGFkZXIoQ2FjaGVkU2hhZGVyKiBzaGFkZXIpCi0gICAgOiBtX3NoYWRl
cihzaGFkZXIpCi17Ci0gICAgIG1faXNDYWNoZWRTaGFkZXIgPSB0cnVlOwotfQotCi1QYXNzUmVm
UHRyPENTU1ZhbHVlPiBTdHlsZUNhY2hlZFNoYWRlcjo6Y3NzVmFsdWUoKSBjb25zdAotewotICAg
IHJldHVybiBDU1NQcmltaXRpdmVWYWx1ZTo6Y3JlYXRlKG1fc2hhZGVyLT51cmwoKSwgQ1NTUHJp
bWl0aXZlVmFsdWU6OkNTU19VUkkpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5oIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDE1MjM0MjkuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
LSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0g
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICog
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFN0eWxlQ2FjaGVkU2hhZGVy
X2gKLSNkZWZpbmUgU3R5bGVDYWNoZWRTaGFkZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KQotCi0jaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VIYW5kbGUuaCIKLSNpbmNsdWRlICJTdHlsZVNo
YWRlci5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3Jl
IHsKLQotY2xhc3MgQ2FjaGVkU2hhZGVyOwotCi1jbGFzcyBTdHlsZUNhY2hlZFNoYWRlciA6IHB1
YmxpYyBTdHlsZVNoYWRlciB7Ci1wdWJsaWM6Ci0gICAgLy8gRklYTUU6IEtlZXAgYSByZWZlcmVu
Y2UgdG8gdGhlIGFjdHVhbCBDYWNoZWRTaGFkZXIgaW4gdGhpcyBjbGFzcy4KLSAgICBzdGF0aWMg
UGFzc1JlZlB0cjxTdHlsZUNhY2hlZFNoYWRlcj4gY3JlYXRlKENhY2hlZFNoYWRlciogc2hhZGVy
KSB7IHJldHVybiBhZG9wdFJlZihuZXcgU3R5bGVDYWNoZWRTaGFkZXIoc2hhZGVyKSk7IH0KLSAg
ICAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IGNzc1ZhbHVlKCkgY29uc3Q7Ci0g
ICAgCi0gICAgdmlydHVhbCBDYWNoZWRTaGFkZXIqIGNhY2hlZFNoYWRlcigpIGNvbnN0IHsgcmV0
dXJuIG1fc2hhZGVyLmdldCgpOyB9Ci0gICAgCi1wcml2YXRlOgotICAgIFN0eWxlQ2FjaGVkU2hh
ZGVyKENhY2hlZFNoYWRlciopOwotICAgIAotICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hl
ZFNoYWRlcj4gbV9zaGFkZXI7Ci19OwotCi19Ci0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJT
KQotCi0jZW5kaWYgLy8gU3R5bGVDYWNoZWRTaGFkZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWY0MDEyZi4uMDAwMDAwMAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcAor
KysgL2Rldi9udWxsCkBAIC0xLDQ5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMg
QWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQot
I2luY2x1ZGUgIlN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotCi0jaW5jbHVkZSAiU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1TdHls
ZUN1c3RvbUZpbHRlclByb2dyYW06On5TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0oKQotewotICAg
IGlmIChtX2NhY2hlKQotICAgICAgICBtX2NhY2hlLT5yZW1vdmUodGhpcyk7Ci19Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmOGNiZWE4Li4wMDAw
MDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRl
clByb2dyYW0uaAorKysgL2Rldi9udWxsCkBAIC0xLDE4NyArMCwwIEBACi0vKgotICogQ29weXJp
Z2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCi0j
ZGVmaW5lIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0jaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VDbGllbnQuaCIKLSNpbmNsdWRlICJDYWNoZWRS
ZXNvdXJjZUhhbmRsZS5oIgotI2luY2x1ZGUgIkNhY2hlZFNoYWRlci5oIgotI2luY2x1ZGUgIkN1
c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJVUkwuaCIKLSNpbmNsdWRlICJTdHlsZVNo
YWRlci5oIgotI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3Jl
IHsKLQotLy8gQ1NTIFNoYWRlcnMKLQotY2xhc3MgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2Fj
aGU7Ci0KLWNsYXNzIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSA6IHB1YmxpYyBDdXN0b21GaWx0
ZXJQcm9ncmFtLCBwdWJsaWMgQ2FjaGVkUmVzb3VyY2VDbGllbnQgewotICAgIFdURl9NQUtFX0ZB
U1RfQUxMT0NBVEVEOwotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFN0eWxlQ3VzdG9t
RmlsdGVyUHJvZ3JhbT4gY3JlYXRlKFVSTCB2ZXJ0ZXhTaGFkZXJVUkwsIFBhc3NSZWZQdHI8U3R5
bGVTaGFkZXI+IHZlcnRleFNoYWRlciwgCi0gICAgICAgIFVSTCBmcmFnbWVudFNoYWRlclVSTCwg
UGFzc1JlZlB0cjxTdHlsZVNoYWRlcj4gZnJhZ21lbnRTaGFkZXIsIEN1c3RvbUZpbHRlclByb2dy
YW1UeXBlIHByb2dyYW1UeXBlLAotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4
U2V0dGluZ3MmIG1peFNldHRpbmdzLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAg
ICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
KHZlcnRleFNoYWRlclVSTCwgdmVydGV4U2hhZGVyLCBmcmFnbWVudFNoYWRlclVSTCwgZnJhZ21l
bnRTaGFkZXIsIHByb2dyYW1UeXBlLCBtaXhTZXR0aW5ncywgbWVzaFR5cGUpKTsKLSAgICB9Ci0g
ICAgCi0gICAgdm9pZCBzZXRWZXJ0ZXhTaGFkZXIoUGFzc1JlZlB0cjxTdHlsZVNoYWRlcj4gc2hh
ZGVyKQotICAgIHsKLSAgICAgICAgLy8gVGhlIHNoYWRlciBpcyBpbW11dGFibGUgd2hpbGUgaW4g
dGhlIGNhY2hlLgotICAgICAgICBBU1NFUlQoIW1fY2FjaGUpOwotICAgICAgICBtX3ZlcnRleFNo
YWRlciA9IHNoYWRlcjsgCi0gICAgfQotICAgIFN0eWxlU2hhZGVyKiB2ZXJ0ZXhTaGFkZXIoKSBj
b25zdCB7IHJldHVybiBtX3ZlcnRleFNoYWRlci5nZXQoKTsgfQotICAgIAotICAgIHZvaWQgc2V0
RnJhZ21lbnRTaGFkZXIoUGFzc1JlZlB0cjxTdHlsZVNoYWRlcj4gc2hhZGVyKQotICAgIHsKLSAg
ICAgICAgLy8gVGhlIHNoYWRlciBpcyBpbW11dGFibGUgd2hpbGUgaW4gdGhlIGNhY2hlLgotICAg
ICAgICBBU1NFUlQoIW1fY2FjaGUpOwotICAgICAgICBtX2ZyYWdtZW50U2hhZGVyID0gc2hhZGVy
OyAKLSAgICB9Ci0gICAgU3R5bGVTaGFkZXIqIGZyYWdtZW50U2hhZGVyKCkgY29uc3QgeyByZXR1
cm4gbV9mcmFnbWVudFNoYWRlci5nZXQoKTsgfQotICAgIAotICAgIHZpcnR1YWwgU3RyaW5nIHZl
cnRleFNoYWRlclN0cmluZygpIGNvbnN0Ci0gICAgewotICAgICAgICBBU1NFUlQoaXNMb2FkZWQo
KSk7Ci0gICAgICAgIHJldHVybiBtX2NhY2hlZFZlcnRleFNoYWRlci5nZXQoKSA/IG1fY2FjaGVk
VmVydGV4U2hhZGVyLT5zaGFkZXJTdHJpbmcoKSA6IFN0cmluZygpOwotICAgIH0KLSAgICAKLSAg
ICB2aXJ0dWFsIFN0cmluZyBmcmFnbWVudFNoYWRlclN0cmluZygpIGNvbnN0Ci0gICAgewotICAg
ICAgICBBU1NFUlQoaXNMb2FkZWQoKSk7Ci0gICAgICAgIHJldHVybiBtX2NhY2hlZEZyYWdtZW50
U2hhZGVyLmdldCgpID8gbV9jYWNoZWRGcmFnbWVudFNoYWRlci0+c2hhZGVyU3RyaW5nKCkgOiBT
dHJpbmcoKTsKLSAgICB9Ci0KLSAgICB2aXJ0dWFsIGJvb2wgaXNMb2FkZWQoKSBjb25zdAotICAg
IHsKLSAgICAgICAgLy8gRG8gbm90IHVzZSB0aGUgQ2FjaGVkUmVzb3VyY2U6aXNMb2FkZWQgbWV0
aG9kIGhlcmUsIGJlY2F1c2UgaXQgYWN0dWFsbHkgbWVhbnMgIWlzTG9hZGluZygpLAotICAgICAg
ICAvLyBzbyBtaXNzaW5nIGFuZCBjYW5jZWxlZCByZXNvdXJjZXMgd2lsbCBoYXZlIGlzTG9hZGVk
IHNldCB0byB0cnVlLCBldmVuIGlmIHRoZXkgYXJlIG5vdCBsb2FkZWQgeWV0LgotICAgICAgICBB
U1NFUlQoIW1fdmVydGV4U2hhZGVyIHx8IG1fdmVydGV4U2hhZGVyLT5pc0NhY2hlZFNoYWRlcigp
KTsKLSAgICAgICAgQVNTRVJUKCFtX2ZyYWdtZW50U2hhZGVyIHx8IG1fZnJhZ21lbnRTaGFkZXIt
PmlzQ2FjaGVkU2hhZGVyKCkpOwotICAgICAgICBBU1NFUlQobV9jYWNoZWRWZXJ0ZXhTaGFkZXIu
Z2V0KCkgfHwgbV9jYWNoZWRGcmFnbWVudFNoYWRlci5nZXQoKSk7Ci0gICAgICAgIHJldHVybiAo
IW1fY2FjaGVkVmVydGV4U2hhZGVyLmdldCgpIHx8IG1faXNWZXJ0ZXhTaGFkZXJMb2FkZWQpCi0g
ICAgICAgICAgICAmJiAoIW1fY2FjaGVkRnJhZ21lbnRTaGFkZXIuZ2V0KCkgfHwgbV9pc0ZyYWdt
ZW50U2hhZGVyTG9hZGVkKTsKLSAgICB9Ci0KLSAgICB2aXJ0dWFsIHZvaWQgd2lsbEhhdmVDbGll
bnRzKCkKLSAgICB7Ci0gICAgICAgIGlmIChtX3ZlcnRleFNoYWRlcikgewotICAgICAgICAgICAg
bV9jYWNoZWRWZXJ0ZXhTaGFkZXIgPSBtX3ZlcnRleFNoYWRlci0+Y2FjaGVkU2hhZGVyKCk7Ci0g
ICAgICAgICAgICBtX2NhY2hlZFZlcnRleFNoYWRlci0+YWRkQ2xpZW50KHRoaXMpOwotICAgICAg
ICB9Ci0gICAgICAgIGlmIChtX2ZyYWdtZW50U2hhZGVyKSB7Ci0gICAgICAgICAgICBtX2NhY2hl
ZEZyYWdtZW50U2hhZGVyID0gbV9mcmFnbWVudFNoYWRlci0+Y2FjaGVkU2hhZGVyKCk7Ci0gICAg
ICAgICAgICBtX2NhY2hlZEZyYWdtZW50U2hhZGVyLT5hZGRDbGllbnQodGhpcyk7Ci0gICAgICAg
IH0KLSAgICB9Ci0gICAgCi0gICAgdmlydHVhbCB2b2lkIGRpZFJlbW92ZUxhc3RDbGllbnQoKQot
ICAgIHsKLSAgICAgICAgaWYgKG1fY2FjaGVkVmVydGV4U2hhZGVyLmdldCgpKSB7Ci0gICAgICAg
ICAgICBtX2NhY2hlZFZlcnRleFNoYWRlci0+cmVtb3ZlQ2xpZW50KHRoaXMpOwotICAgICAgICAg
ICAgbV9jYWNoZWRWZXJ0ZXhTaGFkZXIgPSAwOwotICAgICAgICAgICAgbV9pc1ZlcnRleFNoYWRl
ckxvYWRlZCA9IGZhbHNlOwotICAgICAgICB9Ci0gICAgICAgIGlmIChtX2NhY2hlZEZyYWdtZW50
U2hhZGVyLmdldCgpKSB7Ci0gICAgICAgICAgICBtX2NhY2hlZEZyYWdtZW50U2hhZGVyLT5yZW1v
dmVDbGllbnQodGhpcyk7Ci0gICAgICAgICAgICBtX2NhY2hlZEZyYWdtZW50U2hhZGVyID0gMDsK
LSAgICAgICAgICAgIG1faXNGcmFnbWVudFNoYWRlckxvYWRlZCA9IGZhbHNlOwotICAgICAgICB9
Ci0gICAgfQotICAgIAotICAgIHZpcnR1YWwgdm9pZCBub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNv
dXJjZSogcmVzb3VyY2UpCi0gICAgewotICAgICAgICBpZiAocmVzb3VyY2UtPmVycm9yT2NjdXJy
ZWQoKSkKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgLy8gTm90ZSB0aGF0IG1fY2FjaGVk
VmVydGV4U2hhZGVyIG1pZ2h0IGJlIGVxdWFsIHRvIG1fY2FjaGVkRnJhZ21lbnRTaGFkZXIgYW5k
IGl0IHdvdWxkIG9ubHkgZ2V0IG9uZSBldmVudCBpbiB0aGF0IGNhc2UuCi0gICAgICAgIGlmIChy
ZXNvdXJjZSA9PSBtX2NhY2hlZFZlcnRleFNoYWRlci5nZXQoKSkKLSAgICAgICAgICAgIG1faXNW
ZXJ0ZXhTaGFkZXJMb2FkZWQgPSB0cnVlOwotICAgICAgICBpZiAocmVzb3VyY2UgPT0gbV9jYWNo
ZWRGcmFnbWVudFNoYWRlci5nZXQoKSkKLSAgICAgICAgICAgIG1faXNGcmFnbWVudFNoYWRlckxv
YWRlZCA9IHRydWU7Ci0gICAgICAgIGlmIChpc0xvYWRlZCgpKQotICAgICAgICAgICAgbm90aWZ5
Q2xpZW50cygpOwotICAgIH0KLQotICAgIGJvb2wgaGFzUGVuZGluZ1NoYWRlcnMoKSBjb25zdAot
ICAgIHsKLSAgICAgICAgcmV0dXJuIChtX3ZlcnRleFNoYWRlciAmJiBtX3ZlcnRleFNoYWRlci0+
aXNQZW5kaW5nU2hhZGVyKCkpIAotICAgICAgICAgICAgfHwgKG1fZnJhZ21lbnRTaGFkZXIgJiYg
bV9mcmFnbWVudFNoYWRlci0+aXNQZW5kaW5nU2hhZGVyKCkpOwotICAgIH0KLQotICAgIC8vIFN0
eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlIGlzIHJlc3BvbnNpYmxlIHdpdGggdXBkYXRpbmcg
dGhlIHJlZmVyZW5jZSB0byB0aGUgY2FjaGUuCi0gICAgdm9pZCBzZXRDYWNoZShTdHlsZUN1c3Rv
bUZpbHRlclByb2dyYW1DYWNoZSogY2FjaGUpIHsgbV9jYWNoZSA9IGNhY2hlOyB9Ci0gICAgYm9v
bCBpbkNhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9jYWNoZTsgfQotICAgIAotICAgIFVSTCB2ZXJ0
ZXhTaGFkZXJVUkwoKSBjb25zdCB7IHJldHVybiBtX3ZlcnRleFNoYWRlclVSTDsgfQotICAgIFVS
TCBmcmFnbWVudFNoYWRlclVSTCgpIGNvbnN0IHsgcmV0dXJuIG1fZnJhZ21lbnRTaGFkZXJVUkw7
IH0KLQotcHJpdmF0ZToKLSAgICBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0oVVJMIHZlcnRleFNo
YWRlclVSTCwgUGFzc1JlZlB0cjxTdHlsZVNoYWRlcj4gdmVydGV4U2hhZGVyLCBVUkwgZnJhZ21l
bnRTaGFkZXJVUkwsIFBhc3NSZWZQdHI8U3R5bGVTaGFkZXI+IGZyYWdtZW50U2hhZGVyLCAKLSAg
ICAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZp
bHRlclByb2dyYW1NaXhTZXR0aW5ncyYgbWl4U2V0dGluZ3MsIEN1c3RvbUZpbHRlck1lc2hUeXBl
IG1lc2hUeXBlKQotICAgICAgICA6IEN1c3RvbUZpbHRlclByb2dyYW0ocHJvZ3JhbVR5cGUsIG1p
eFNldHRpbmdzLCBtZXNoVHlwZSkKLSAgICAgICAgLCBtX3ZlcnRleFNoYWRlcih2ZXJ0ZXhTaGFk
ZXIpCi0gICAgICAgICwgbV9mcmFnbWVudFNoYWRlcihmcmFnbWVudFNoYWRlcikKLSAgICAgICAg
LCBtX3ZlcnRleFNoYWRlclVSTCh2ZXJ0ZXhTaGFkZXJVUkwpCi0gICAgICAgICwgbV9mcmFnbWVu
dFNoYWRlclVSTChmcmFnbWVudFNoYWRlclVSTCkKLSAgICAgICAgLCBtX2NhY2hlKDApCi0gICAg
ICAgICwgbV9pc1ZlcnRleFNoYWRlckxvYWRlZChmYWxzZSkKLSAgICAgICAgLCBtX2lzRnJhZ21l
bnRTaGFkZXJMb2FkZWQoZmFsc2UpCi0gICAgewotICAgIH0KLQotICAgIH5TdHlsZUN1c3RvbUZp
bHRlclByb2dyYW0oKTsKLSAgICAKLSAgICBSZWZQdHI8U3R5bGVTaGFkZXI+IG1fdmVydGV4U2hh
ZGVyOwotICAgIFJlZlB0cjxTdHlsZVNoYWRlcj4gbV9mcmFnbWVudFNoYWRlcjsKLQotICAgIENh
Y2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFNoYWRlcj4gbV9jYWNoZWRWZXJ0ZXhTaGFkZXI7Ci0g
ICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2hhZGVyPiBtX2NhY2hlZEZyYWdtZW50U2hh
ZGVyOwotCi0gICAgLy8gVGhlIFVSTHMgZm9ybSB0aGUga2V5IG9mIHRoZSBTdHlsZUN1c3RvbUZp
bHRlclByb2dyYW0gaW4gdGhlIGNhY2hlIGFuZCBhcmUgdXNlZAotICAgIC8vIHRvIGxvb2t1cCB0
aGUgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtIHdoZW4gaXQncyByZW1vdmVkIGZyb20gdGhlIGNh
Y2hlLgotICAgIFVSTCBtX3ZlcnRleFNoYWRlclVSTDsKLSAgICBVUkwgbV9mcmFnbWVudFNoYWRl
clVSTDsKLQotICAgIC8vIFRoZSBDYWNoZSBpcyByZXNwb25zaWJsZSBvZiBpbnZhbGlkYXRpbmcg
dGhpcyByZWZlcmVuY2UuCi0gICAgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUqIG1fY2Fj
aGU7Ci0gICAgCi0gICAgYm9vbCBtX2lzVmVydGV4U2hhZGVyTG9hZGVkOwotICAgIGJvb2wgbV9p
c0ZyYWdtZW50U2hhZGVyTG9hZGVkOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gU3R5bGVDdXN0b21GaWx0
ZXJQcm9ncmFtX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9T
dHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuY3BwCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA4NmE3MjRkLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5jcHAKKysrIC9kZXYv
bnVsbApAQCAtMSw4NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRl
ICJTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5oIgotCi0jaW5jbHVkZSAiQ3VzdG9tRmls
dGVyUHJvZ3JhbUluZm8uaCIKLSNpbmNsdWRlICJTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaCIK
LQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1zdGF0aWMgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8g
cHJvZ3JhbUNhY2hlS2V5KFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSkgCi17Ci0g
ICAgQVNTRVJUKHByb2dyYW0tPnZlcnRleFNoYWRlclVSTCgpLmlzVmFsaWQoKSB8fCBwcm9ncmFt
LT5mcmFnbWVudFNoYWRlclVSTCgpLmlzVmFsaWQoKSk7Ci0gICAgcmV0dXJuIEN1c3RvbUZpbHRl
clByb2dyYW1JbmZvKHByb2dyYW0tPnZlcnRleFNoYWRlclVSTCgpLCBwcm9ncmFtLT5mcmFnbWVu
dFNoYWRlclVSTCgpLCAKLSAgICAgICAgcHJvZ3JhbS0+cHJvZ3JhbVR5cGUoKSwgcHJvZ3JhbS0+
bWl4U2V0dGluZ3MoKSwgcHJvZ3JhbS0+bWVzaFR5cGUoKSk7Ci19Ci0KLVN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbUNhY2hlOjpTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZSgpCi17Ci19Ci0K
LVN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlOjp+U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
Q2FjaGUoKQotewotICAgIC8vIE1ha2Ugc3VyZSB0aGUgcHJvZ3JhbXMgYXJlIG5vdCBjYWxsaW5n
IGJhY2sgaW50byB0aGlzIG9iamVjdC4KLSAgICBmb3IgKENhY2hlTWFwOjppdGVyYXRvciBpdGVy
ID0gbV9jYWNoZS5iZWdpbigpLCBlbmQgPSBtX2NhY2hlLmVuZCgpOyBpdGVyICE9IGVuZDsgKytp
dGVyKQotICAgICAgICBpdGVyLT52YWx1ZS0+c2V0Q2FjaGUoMCk7Ci19Ci0KLVN0eWxlQ3VzdG9t
RmlsdGVyUHJvZ3JhbSogU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGU6Omxvb2t1cChjb25z
dCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8pIGNvbnN0Ci17Ci0gICAgcmV0
dXJuIG1fY2FjaGUuZ2V0KHByb2dyYW1JbmZvKTsKLX0KLQotU3R5bGVDdXN0b21GaWx0ZXJQcm9n
cmFtKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZTo6bG9va3VwKFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbSogcHJvZ3JhbSkgY29uc3QKLXsKLSAgICByZXR1cm4gbG9va3VwKHByb2dyYW1D
YWNoZUtleShwcm9ncmFtKSk7Ci19Ci0KLXZvaWQgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2Fj
aGU6OmFkZChTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0qIHByb2dyYW0pCi17Ci0gICAgQVNTRVJU
KCFtX2NhY2hlLmNvbnRhaW5zKHByb2dyYW1DYWNoZUtleShwcm9ncmFtKSkpOwotICAgIG1fY2Fj
aGUuc2V0KHByb2dyYW1DYWNoZUtleShwcm9ncmFtKSwgcHJvZ3JhbSk7Ci0gICAgcHJvZ3JhbS0+
c2V0Q2FjaGUodGhpcyk7Ci19Ci0KLXZvaWQgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGU6
OnJlbW92ZShTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0qIHByb2dyYW0pCi17Ci0gICAgQVNTRVJU
KG1fY2FjaGUuY29udGFpbnMocHJvZ3JhbUNhY2hlS2V5KHByb2dyYW0pKSk7Ci0gICAgbV9jYWNo
ZS5yZW1vdmUocHJvZ3JhbUNhY2hlS2V5KHByb2dyYW0pKTsKLX0KLQotfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hl
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9n
cmFtQ2FjaGUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjlhNTE0My4uMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtQ2FjaGUuaAorKysgL2Rldi9udWxsCkBAIC0xLDY1ICswLDAgQEAKLS8qCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgot
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlz
Y2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAg
ICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0g
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAq
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAq
IFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2Fj
aGVfaAotI2RlZmluZSBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZV9oCi0KLSNpZiBFTkFC
TEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNp
bmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgotI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0KLW5h
bWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtOwotY2xh
c3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm87Ci0KLWNsYXNzIFN0eWxlQ3VzdG9tRmlsdGVyUHJv
Z3JhbUNhY2hlIHsKLSAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKLXB1YmxpYzoKLSAgICBT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZSgpOwotICAgIH5TdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW1DYWNoZSgpOwotCi0gICAgLy8gTG9va3VwcyBhIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3Jh
bSB0aGF0IGhhcyBzaW1pbGFyIHBhcmFtZXRlcnMgd2l0aCB0aGUgc3BlY2lmaWVkIHByb2dyYW0u
Ci0gICAgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKiBsb29rdXAoU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtKikgY29uc3Q7Ci0gICAgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKiBsb29rdXAoY29u
c3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mKSBjb25zdDsKLQotICAgIHZvaWQgYWRkKFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbSopOwotICAgIHZvaWQgcmVtb3ZlKFN0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbSopOwotCi1wcml2YXRlOgotICAgIHR5cGVkZWYgSGFzaE1hcDxDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mbywgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKj4gQ2FjaGVNYXA7Ci0gICAgQ2Fj
aGVNYXAgbV9jYWNoZTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUNhY2hlX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHls
ZVBlbmRpbmdTaGFkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVBl
bmRpbmdTaGFkZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOThhZDkxYy4uMDAw
MDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVQZW5kaW5nU2hh
ZGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2MyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERB
TUFHRS4KLSAqLwotCi0jaWZuZGVmIFN0eWxlUGVuZGluZ1NoYWRlcl9oCi0jZGVmaW5lIFN0eWxl
UGVuZGluZ1NoYWRlcl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJD
U1NWYWx1ZS5oIgotI2luY2x1ZGUgIlN0eWxlU2hhZGVyLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NT
U2hhZGVyVmFsdWUuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotCi1uYW1lc3BhY2Ug
V2ViQ29yZSB7Ci0KLWNsYXNzIFdlYktpdENTU1NoYWRlclZhbHVlOwotCi1jbGFzcyBTdHlsZVBl
bmRpbmdTaGFkZXIgOiBwdWJsaWMgU3R5bGVTaGFkZXIgewotcHVibGljOgotICAgIHN0YXRpYyBQ
YXNzUmVmUHRyPFN0eWxlUGVuZGluZ1NoYWRlcj4gY3JlYXRlKFdlYktpdENTU1NoYWRlclZhbHVl
KiB2YWx1ZSkgeyByZXR1cm4gYWRvcHRSZWYobmV3IFN0eWxlUGVuZGluZ1NoYWRlcih2YWx1ZSkp
OyB9Ci0gICAgCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBjc3NWYWx1ZSgpIGNv
bnN0IHsgcmV0dXJuIG1fdmFsdWU7IH0KLSAgICBXZWJLaXRDU1NTaGFkZXJWYWx1ZSogY3NzU2hh
ZGVyVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3ZhbHVlOyB9Ci1wcml2YXRlOgotICAgIFN0eWxl
UGVuZGluZ1NoYWRlcihXZWJLaXRDU1NTaGFkZXJWYWx1ZSogdmFsdWUpCi0gICAgICAgIDogbV92
YWx1ZSh2YWx1ZSkKLSAgICB7Ci0gICAgICAgICBtX2lzUGVuZGluZ1NoYWRlciA9IHRydWU7Ci0g
ICAgfQotICAgIAotICAgIFdlYktpdENTU1NoYWRlclZhbHVlKiBtX3ZhbHVlOyAvLyBOb3QgcmV0
YWluZWQ7IGl0IG93bnMgdXMuCi19OwotCi19Ci0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJT
KQotCi0jZW5kaWYgLy8gU3R5bGVQZW5kaW5nU2hhZGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVNoYWRlci5oIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1N0eWxlU2hhZGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGUzOGY5YmYuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlU2hhZGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2NyArMCwwIEBACi0vKgotICogQ29weXJp
Z2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFN0eWxlU2hhZGVyX2gKLSNkZWZpbmUgU3R5bGVT
aGFkZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSA8d3RmL1JlZkNv
dW50ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBDYWNoZWRTaGFkZXI7Ci1j
bGFzcyBDU1NWYWx1ZTsKLQotY2xhc3MgU3R5bGVTaGFkZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxT
dHlsZVNoYWRlcj4gewotcHVibGljOgotICAgIHZpcnR1YWwgflN0eWxlU2hhZGVyKCkgeyB9Ci0K
LSAgICBBTFdBWVNfSU5MSU5FIGJvb2wgaXNDYWNoZWRTaGFkZXIoKSBjb25zdCB7IHJldHVybiBt
X2lzQ2FjaGVkU2hhZGVyOyB9Ci0gICAgQUxXQVlTX0lOTElORSBib29sIGlzUGVuZGluZ1NoYWRl
cigpIGNvbnN0IHsgcmV0dXJuIG1faXNQZW5kaW5nU2hhZGVyOyB9Ci0gICAgCi0gICAgdmlydHVh
bCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBjc3NWYWx1ZSgpIGNvbnN0ID0gMDsKLSAgICAKLSAgICB2
aXJ0dWFsIENhY2hlZFNoYWRlciogY2FjaGVkU2hhZGVyKCkgY29uc3QgeyByZXR1cm4gMDsgfQot
ICAgIAotcHJvdGVjdGVkOgotICAgIFN0eWxlU2hhZGVyKCkKLSAgICAgICAgOiBtX2lzQ2FjaGVk
U2hhZGVyKGZhbHNlKQotICAgICAgICAsIG1faXNQZW5kaW5nU2hhZGVyKGZhbHNlKQotICAgIHsK
LSAgICB9Ci0gICAgYm9vbCBtX2lzQ2FjaGVkU2hhZGVyIDogMTsKLSAgICBib29sIG1faXNQZW5k
aW5nU2hhZGVyIDogMTsKLX07Ci0KLX0KLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykK
LQotI2VuZGlmIC8vIFN0eWxlU2hhZGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3Rr
L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0ay5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGsuY3BwCmluZGV4
IDhjOWU3NjIuLjZiM2U2Y2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVT
dXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0ay5jcHAKKysrIGIvU291cmNlL1dlYktpdC9n
dGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmNwcApAQCAtNTc3LDEz
ICs1NzcsNiBAQCB2b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydEd0azo6c2V0Q1NTUmVnaW9uc0Vu
YWJsZWQoV2ViS2l0V2ViVmlldyogd2ViVmlldywgYm9vbAogICAgIFJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0Q1NTUmVnaW9uc0VuYWJsZWQoZW5hYmxlZCk7CiB9
CiAKLXZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRDU1NDdXN0b21GaWx0ZXJFbmFi
bGVkKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcsIGJvb2wgZW5hYmxlZCkKLXsKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0gICAgY29yZSh3ZWJWaWV3KS0+c2V0dGluZ3MoKS5zZXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkKGVuYWJsZWQpOwotI2VuZGlmCi19Ci0KIHZvaWQgRHVtcFJlbmRlclRyZWVT
dXBwb3J0R3RrOjpzZXRFeHBlcmltZW50YWxDb250ZW50U2VjdXJpdHlQb2xpY3lGZWF0dXJlc0Vu
YWJsZWQoYm9vbCBlbmFibGVkKQogewogI2lmIEVOQUJMRShDU1BfTkVYVCkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0
ay5oIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBw
b3J0R3RrLmgKaW5kZXggNGZkNjI1NS4uNDAwYmEwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmgKKysrIGIvU291
cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmgK
QEAgLTEwNCw3ICsxMDQsNiBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgc2V0UGFnZUNhY2hl
U3VwcG9ydHNQbHVnaW5zKFdlYktpdFdlYlZpZXcqLCBib29sIGVuYWJsZWQpOwogICAgIHN0YXRp
YyB2b2lkIHNldENTU0dyaWRMYXlvdXRFbmFibGVkKFdlYktpdFdlYlZpZXcqLCBib29sIGVuYWJs
ZWQpOwogICAgIHN0YXRpYyB2b2lkIHNldENTU1JlZ2lvbnNFbmFibGVkKFdlYktpdFdlYlZpZXcq
LCBib29sIGVuYWJsZWQpOwotICAgIHN0YXRpYyB2b2lkIHNldENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQoV2ViS2l0V2ViVmlldyosIGJvb2wgZW5hYmxlZCk7CiAgICAgc3RhdGljIHZvaWQgc2V0RXhw
ZXJpbWVudGFsQ29udGVudFNlY3VyaXR5UG9saWN5RmVhdHVyZXNFbmFibGVkKGJvb2wpOwogICAg
IHN0YXRpYyB2b2lkIHNldFNlYW1sZXNzSUZyYW1lc0VuYWJsZWQoYm9vbCk7CiAgICAgc3RhdGlj
IHZvaWQgc2V0U2hhZG93RE9NRW5hYmxlZChib29sKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwCmluZGV4IDA5YWNjZjguLmY2NTRiOWUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcApAQCAtMTIx
LDcgKzEyMSw2IEBAIGVudW0gewogICAgIFBST1BfRU5BQkxFX1NNT09USF9TQ1JPTExJTkcsCiAg
ICAgUFJPUF9NRURJQV9QTEFZQkFDS19SRVFVSVJFU19VU0VSX0dFU1RVUkUsCiAgICAgUFJPUF9N
RURJQV9QTEFZQkFDS19BTExPV1NfSU5MSU5FLAotICAgIFBST1BfRU5BQkxFX0NTU19TSEFERVJT
LAogICAgIFBST1BfRU5BQkxFX1JVTk5JTkdfT0ZfSU5TRUNVUkVfQ09OVEVOVCwKICAgICBQUk9Q
X0VOQUJMRV9ESVNQTEFZX09GX0lOU0VDVVJFX0NPTlRFTlQsCiAgICAgUFJPUF9FTkFCTEVfTUVE
SUFfU09VUkNFCkBAIC05ODcsMjUgKzk4Niw2IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfc2V0
dGluZ3NfY2xhc3NfaW5pdChXZWJLaXRXZWJTZXR0aW5nc0NsYXNzKiBrbGFzcykKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzKSk7
CiAKICAgICAvKioKLSAgICAqIFdlYktpdFdlYlNldHRpbmdzOmVuYWJsZS1jc3Mtc2hhZGVyczoK
LSAgICAqCi0gICAgKiBFbmFibGUgb3IgZGlzYWJsZSBzdXBwb3J0IGZvciBjc3Mgc2hhZGVycyAo
Y3NzIGN1c3RvbSBmaWx0ZXJzKS4KLSAgICAqIEFjY2VsZXJhdGVkIGNvbXBvc2l0aW5nIG5lZWRz
IHRvIGJlIGVuYWJsZWQgYXQgY29tcGlsZSB0aW1lLCBidXQgbmVlZHMKLSAgICAqIG5vdCBiZSBl
bmFibGVkIGF0IHJ1bnRpbWUuCi0gICAgKgotICAgICogU2VlIGFsc28gaHR0cHM6Ly9kdmNzLncz
Lm9yZy9oZy9GWFRGL3Jhdy1maWxlL3RpcC9jdXN0b20vaW5kZXguaHRtbAotICAgICoKLSAgICAq
IFNpbmNlOiAyLjAKLSAgICAqLwotICAgIGdfb2JqZWN0X2NsYXNzX2luc3RhbGxfcHJvcGVydHko
Z29iamVjdF9jbGFzcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBST1Bf
RU5BQkxFX0NTU19TSEFERVJTLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Z19wYXJhbV9zcGVjX2Jvb2xlYW4oImVuYWJsZS1jc3Mtc2hhZGVycyIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfKCJFbmFibGUgQ1NT
IHNoYWRlcnMiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIF8oIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIiksCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGQUxTRSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGZsYWdzKSk7Ci0KLSAgICAvKioKICAgICAqIFdlYktpdFdlYlNldHRpbmdzOmVuYWJsZS1kaXNw
bGF5LW9mLWluc2VjdXJlLWNvbnRlbnQ6CiAgICAgKgogICAgICogV2hldGhlciBwYWdlcyBsb2Fk
ZWQgdmlhIEhUVFBTIHNob3VsZCBsb2FkIHN1YnJlc291cmNlcyBzdWNoIGFzCkBAIC0xMjQwLDkg
KzEyMjAsNiBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3NldHRpbmdzX3NldF9wcm9wZXJ0eShH
T2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BfaWQsIGNvbgogICAgIGNhc2UgUFJPUF9FTkFCTEVf
U01PT1RIX1NDUk9MTElORzoKICAgICAgICAgcHJpdi0+ZW5hYmxlU21vb3RoU2Nyb2xsaW5nID0g
Z192YWx1ZV9nZXRfYm9vbGVhbih2YWx1ZSk7CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgUFJP
UF9FTkFCTEVfQ1NTX1NIQURFUlM6Ci0gICAgICAgIHByaXYtPmVuYWJsZUNTU1NoYWRlcnMgPSBn
X3ZhbHVlX2dldF9ib29sZWFuKHZhbHVlKTsKLSAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBQUk9Q
X01FRElBX1BMQVlCQUNLX1JFUVVJUkVTX1VTRVJfR0VTVFVSRToKICAgICAgICAgcHJpdi0+bWVk
aWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgPSBnX3ZhbHVlX2dldF9ib29sZWFuKHZhbHVl
KTsKICAgICAgICAgYnJlYWs7CkBAIC0xNDMyLDkgKzE0MDksNiBAQCBzdGF0aWMgdm9pZCB3ZWJr
aXRfd2ViX3NldHRpbmdzX2dldF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3Bf
aWQsIEdWYQogICAgIGNhc2UgUFJPUF9FTkFCTEVfU01PT1RIX1NDUk9MTElORzoKICAgICAgICAg
Z192YWx1ZV9zZXRfYm9vbGVhbih2YWx1ZSwgcHJpdi0+ZW5hYmxlU21vb3RoU2Nyb2xsaW5nKTsK
ICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBQUk9QX0VOQUJMRV9DU1NfU0hBREVSUzoKLSAgICAg
ICAgZ192YWx1ZV9zZXRfYm9vbGVhbih2YWx1ZSwgcHJpdi0+ZW5hYmxlQ1NTU2hhZGVycyk7Ci0g
ICAgICAgIGJyZWFrOwogICAgIGNhc2UgUFJPUF9NRURJQV9QTEFZQkFDS19SRVFVSVJFU19VU0VS
X0dFU1RVUkU6CiAgICAgICAgIGdfdmFsdWVfc2V0X2Jvb2xlYW4odmFsdWUsIHByaXYtPm1lZGlh
UGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKTsKICAgICAgICAgYnJlYWs7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Nwcml2YXRlLmggYi9T
b3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Nwcml2YXRlLmgKaW5kZXgg
MmM2ZjMxNy4uYjVlNDZmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dl
YmtpdHdlYnNldHRpbmdzcHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5nc3ByaXZhdGUuaApAQCAtODMsNyArODMsNiBAQCBzdHJ1Y3QgX1dlYktp
dFdlYlNldHRpbmdzUHJpdmF0ZSB7CiAgICAgZ2Jvb2xlYW4gZW5hYmxlV2ViQXVkaW87CiAgICAg
Z2Jvb2xlYW4gZW5hYmxlQWNjZWxlcmF0ZWRDb21wb3NpdGluZzsKICAgICBnYm9vbGVhbiBlbmFi
bGVTbW9vdGhTY3JvbGxpbmc7Ci0gICAgZ2Jvb2xlYW4gZW5hYmxlQ1NTU2hhZGVyczsKICAgICBn
Ym9vbGVhbiBtZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZTsKICAgICBnYm9vbGVhbiBt
ZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lOwogICAgIGdib29sZWFuIGVuYWJsZURpc3BsYXlPZklu
c2VjdXJlQ29udGVudDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJ2aWV3LmNw
cAppbmRleCBiNGY5YTljLi5lMGEwMTMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vidmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dl
YmtpdHdlYnZpZXcuY3BwCkBAIC0zNjE3LDEwICszNjE3LDYgQEAgc3RhdGljIHZvaWQgd2Via2l0
X3dlYl92aWV3X3VwZGF0ZV9zZXR0aW5ncyhXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3KQogICAgIGNv
cmVTZXR0aW5ncy5zZXRTY3JvbGxBbmltYXRvckVuYWJsZWQoc2V0dGluZ3NQcml2YXRlLT5lbmFi
bGVTbW9vdGhTY3JvbGxpbmcpOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0g
ICAgY29yZVNldHRpbmdzLnNldENTU0N1c3RvbUZpbHRlckVuYWJsZWQoc2V0dGluZ3NQcml2YXRl
LT5lbmFibGVDU1NTaGFkZXJzKTsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKENTU19SRUdJT05TKQog
ICAgIFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0
Q1NTUmVnaW9uc0VuYWJsZWQodHJ1ZSk7CiAjZW5kaWYKQEAgLTM3NzIsMTEgKzM3NjgsNiBAQCBz
dGF0aWMgdm9pZCB3ZWJraXRfd2ViX3ZpZXdfc2V0dGluZ3Nfbm90aWZ5KFdlYktpdFdlYlNldHRp
bmdzKiB3ZWJTZXR0aW5ncywgR1BhcgogICAgICAgICBzZXR0aW5ncy5zZXRTY3JvbGxBbmltYXRv
ckVuYWJsZWQoZ192YWx1ZV9nZXRfYm9vbGVhbigmdmFsdWUpKTsKICNlbmRpZgogCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgIGVsc2UgaWYgKG5hbWUgPT0gZ19pbnRlcm5fc3RyaW5nKCJl
bmFibGUtY3NzLXNoYWRlcnMiKSkKLSAgICAgICAgc2V0dGluZ3Muc2V0Q1NTQ3VzdG9tRmlsdGVy
RW5hYmxlZChnX3ZhbHVlX2dldF9ib29sZWFuKCZ2YWx1ZSkpOwotI2VuZGlmCi0KICNpZiBFTkFC
TEUoTUVESUFfU09VUkNFKQogICAgIGVsc2UgaWYgKG5hbWUgPT0gZ19pbnRlcm5fc3RyaW5nKCJl
bmFibGUtbWVkaWFzb3VyY2UiKSkKICAgICAgICAgc2V0dGluZ3Muc2V0TWVkaWFTb3VyY2VFbmFi
bGVkKGdfdmFsdWVfZ2V0X2Jvb2xlYW4oJnZhbHVlKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL1NvdXJjZS9X
ZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCmluZGV4IGFh
Mzc1ODhkLi45NDY4YzgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0
aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9Db25m
aWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNTAsNyArNTAsNiBAQCBFTkFC
TEVfQ1NTX0ZJTFRFUlMgPSBFTkFCTEVfQ1NTX0ZJTFRFUlM7CiBFTkFCTEVfQ1NTX0lNQUdFX09S
SUVOVEFUSU9OID0gOwogRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OID0gOwogRU5BQkxFX0NT
U19SRUdJT05TID0gRU5BQkxFX0NTU19SRUdJT05TOwotRU5BQkxFX0NTU19TSEFERVJTID0gRU5B
QkxFX0NTU19TSEFERVJTOwogRU5BQkxFX0NTU19TSEFQRVMgPSBFTkFCTEVfQ1NTX1NIQVBFUzsK
IEVOQUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9OID0gRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT047
CiBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEID0gRU5BQkxFX0NT
U19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRDsKQEAgLTE5OCw0ICsxOTcsNCBAQCBF
TkFCTEVfWFNMVCA9IEVOQUJMRV9YU0xUOwogRU5BQkxFX0ZUTF9KSVQgPSA7CiBFTkFCTEVfTExJ
TlRfQ19MT09QID0gOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcp
ICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZF
UkZMT1dfU0NST0xMSU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05J
TkcpICQoRU5BQkxFX0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxF
X0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9E
RUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19E
RVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19G
SUxURVJTKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFH
RV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQURFUlMp
ICQoRU5BQkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04pICQoRU5B
QkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCkgJChFTkFCTEVfQ1NTM19D
T05ESVRJT05BTF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DU1MzX1RFWFRf
REVDT1JBVElPTikgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNP
Ul9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RB
U0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRB
X1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklD
RV9PUklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFCTEVfRE9NNF9F
VkVOVFNfQ09OU1RSVUNUT1IpICQoRU5BQkxFX0RSQUdHQUJMRV9SRUdJT04pICQoRU5BQkxFX0VO
Q1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxU
RVJTKSAkKEVOQUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkg
JChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0hJRERFTl9Q
QUdFX0RPTV9USU1FUl9USFJPVFRMSU5HKSAkKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpICQoRU5B
QkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSUZSQU1FX1NFQU1MRVNTKSAkKEVOQUJMRV9JTkRF
WEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRJRV9VSSkgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9W
RVIpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElN
RV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxF
X0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JT1NfQUlSUExBWSkgJChFTkFCTEVfSU9TX1RFWFRfQVVU
T1NJWklORykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTEVHQUNZX0NT
U19WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TKSAkKEVOQUJM
RV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElPKSAkKEVO
QUJMRV9MRVRURVJQUkVTUykgJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1M
KSAkKEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01FRElBX1NPVVJDRSkg
JChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFC
TEVfTUhUTUwpICQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFWSUdBVE9S
X0NPTlRFTlRfVVRJTFMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklT
SUJJTElUWV9BUEkpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BMVUdJTl9QUk9Y
WV9GT1JfVklERU8pICQoRU5BQkxFX1BST0dSRVNTX0VMRU1FTlQpICQoRU5BQkxFX1BST01JU0VT
KSAkKEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRTKSAkKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1Qp
ICQoRU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFC
TEVfUkVNT1RFX0lOU1BFQ1RPUikgJChFTkFCTEVfUkVTT0xVVElPTl9NRURJQV9RVUVSWSkgJChF
TkFCTEVfU0NSSVBURURfU1BFRUNIKSAkKEVOQUJMRV9TSEFET1dfRE9NKSAkKEVOQUJMRV9TSEFS
RURfV09SS0VSUykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFC
QVNFKSAkKEVOQUJMRV9TVUJQSVhFTF9MQVlPVVQpICQoRU5BQkxFX1NVQlRMRV9DUllQVE8pICQo
RU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5U
KSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFC
TEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVf
VklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElB
KSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FOSU1BVElPTlMpICQoRU5BQkxFX1dFQl9B
VURJTykgJChFTkFCTEVfV0VCX1JFUExBWSkgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxF
X1dFQl9USU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVO
QUJMRV9YU0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRkVB
VFVSRV9ERUZJTkVTXyQoUExBVEZPUk1fTkFNRSkpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFC
TEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxF
X0FDQ0VMRVJBVEVEX09WRVJGTE9XX1NDUk9MTElORykgJChFTkFCTEVfQkxPQikgJChFTkFCTEVf
Q0FDSEVfUEFSVElUSU9OSU5HKSAkKEVOQUJMRV9DQU5WQVNfUEFUSCkgJChFTkFCTEVfQ0FOVkFT
X1BST1hZKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ1NQX05FWFQpICQo
RU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5H
KSAkKEVOQUJMRV9DU1NfREVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NTU19FWENMVVNJT05T
KSAkKEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OKSAk
KEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQoRU5B
QkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04pICQoRU5BQkxFX0NT
U19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCkgJChFTkFCTEVfQ1NTM19DT05ESVRJ
T05BTF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DU1MzX1RFWFRfREVDT1JB
VElPTikgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNPUl9WSVNJ
QklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FS
RF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5T
RkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklF
TlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFCTEVfRE9NNF9FVkVOVFNf
Q09OU1RSVUNUT1IpICQoRU5BQkxFX0RSQUdHQUJMRV9SRUdJT04pICQoRU5BQkxFX0VOQ1JZUFRF
RF9NRURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxURVJTKSAk
KEVOQUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChFTkFC
TEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0hJRERFTl9QQUdFX0RP
TV9USU1FUl9USFJPVFRMSU5HKSAkKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpICQoRU5BQkxFX0lD
T05EQVRBQkFTRSkgJChFTkFCTEVfSUZSQU1FX1NFQU1MRVNTKSAkKEVOQUJMRV9JTkRFWEVEX0RB
VEFCQVNFKSAkKEVOQUJMRV9JTkRJRV9VSSkgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJM
RV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIpICQo
RU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNP
TVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lOUFVU
X1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQ
RV9XRUVLKSAkKEVOQUJMRV9JT1NfQUlSUExBWSkgJChFTkFCTEVfSU9TX1RFWFRfQVVUT1NJWklO
RykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTEVHQUNZX0NTU19WRU5E
T1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9MRUdB
Q1lfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElPKSAkKEVOQUJMRV9M
RVRURVJQUkVTUykgJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVO
QUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFC
TEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFCTEVfTUhU
TUwpICQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFWSUdBVE9SX0NPTlRF
TlRfVVRJTFMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElU
WV9BUEkpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BMVUdJTl9QUk9YWV9GT1Jf
VklERU8pICQoRU5BQkxFX1BST0dSRVNTX0VMRU1FTlQpICQoRU5BQkxFX1BST01JU0VTKSAkKEVO
QUJMRV9QUk9YSU1JVFlfRVZFTlRTKSAkKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1QpICQoRU5B
QkxFX1FVT1RBKSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfUkVN
T1RFX0lOU1BFQ1RPUikgJChFTkFCTEVfUkVTT0xVVElPTl9NRURJQV9RVUVSWSkgJChFTkFCTEVf
U0NSSVBURURfU1BFRUNIKSAkKEVOQUJMRV9TSEFET1dfRE9NKSAkKEVOQUJMRV9TSEFSRURfV09S
S0VSUykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAk
KEVOQUJMRV9TVUJQSVhFTF9MQVlPVVQpICQoRU5BQkxFX1NVQlRMRV9DUllQVE8pICQoRU5BQkxF
X1NWRykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5UKSAkKEVO
QUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9V
Q0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8p
ICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVO
QUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FOSU1BVElPTlMpICQoRU5BQkxFX1dFQl9BVURJTykg
JChFTkFCTEVfV0VCX1JFUExBWSkgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9U
SU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVOQUJMRV9Y
U0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRkVBVFVSRV9E
RUZJTkVTXyQoUExBVEZPUk1fTkFNRSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmgKaW5kZXggODhhNDRmZC4uNmY1NjM4YiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1By
aXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlz
UHJpdmF0ZS5oCkBAIC0xMDAsNyArMTAwLDYgQEAKICNkZWZpbmUgV2ViS2l0QWNjZWxlcmF0ZWRE
cmF3aW5nRW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRBY2NlbGVyYXRlZERyYXdpbmdFbmFi
bGVkIgogI2RlZmluZSBXZWJLaXRDYW52YXNVc2VzQWNjZWxlcmF0ZWREcmF3aW5nUHJlZmVyZW5j
ZUtleSBAIldlYktpdENhbnZhc1VzZXNBY2NlbGVyYXRlZERyYXdpbmciCiAjZGVmaW5lIFdlYktp
dEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdEFjY2Vs
ZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkIgotI2RlZmluZSBXZWJLaXRDU1NDdXN0b21GaWx0ZXJF
bmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiCiAjZGVm
aW5lIFdlYktpdENTU1JlZ2lvbnNFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdENTU1JlZ2lv
bnNFbmFibGVkIgogI2RlZmluZSBXZWJLaXRDU1NDb21wb3NpdGluZ0VuYWJsZWRQcmVmZXJlbmNl
S2V5IEAiV2ViS2l0Q1NTQ29tcG9zaXRpbmdFbmFibGVkIgogI2RlZmluZSBXZWJLaXRDU1NHcmlk
TGF5b3V0RW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRDU1NHcmlkTGF5b3V0RW5hYmxlZCIK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0g
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCmluZGV4IDU2ZGZk
YzIuLjIxNDhkYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJl
ZmVyZW5jZXMubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNl
cy5tbQpAQCAtNDgzLDggKzQ4Myw2IEBAIHB1YmxpYzoKICAgICAgICAgW05TTnVtYmVyIG51bWJl
cldpdGhCb29sOk5PXSwgICBXZWJLaXRKYXZhU2NyaXB0Q2FuQWNjZXNzQ2xpcGJvYXJkUHJlZmVy
ZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOllFU10sICBXZWJLaXRY
U1NBdWRpdG9yRW5hYmxlZFByZWZlcmVuY2VLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJX
aXRoQm9vbDpZRVNdLCAgV2ViS2l0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWRQcmVmZXJl
bmNlS2V5LAotICAgICAgICAvLyBDU1MgU2hhZGVycyBhbHNvIG5lZWQgV2ViR0wgZW5hYmxlZCAo
d2hpY2ggaXMgZGlzYWJsZWQgYnkgZGVmYXVsdCksIHNvIHdlIGNhbiBrZWVwIGl0IGVuYWJsZWQg
Zm9yIG5vdy4KLSAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOllFU10sIFdlYktpdENT
U0N1c3RvbUZpbHRlckVuYWJsZWRQcmVmZXJlbmNlS2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVt
YmVyV2l0aEJvb2w6WUVTXSwgV2ViS2l0Q1NTUmVnaW9uc0VuYWJsZWRQcmVmZXJlbmNlS2V5LAog
ICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgV2ViS2l0Q1NTQ29tcG9zaXRp
bmdFbmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29s
Ok5PXSwgIFdlYktpdENTU0dyaWRMYXlvdXRFbmFibGVkUHJlZmVyZW5jZUtleSwKQEAgLTE4NzQs
MTYgKzE4NzIsNiBAQCBzdGF0aWMgTlNTdHJpbmcgKmNsYXNzSUJDcmVhdG9ySUQgPSBuaWw7CiAg
ICAgW3NlbGYgX3NldEJvb2xWYWx1ZTplbmFibGVkIGZvcktleTpXZWJLaXRBY2NlbGVyYXRlZENv
bXBvc2l0aW5nRW5hYmxlZFByZWZlcmVuY2VLZXldOwogfQogCi0tIChCT09MKWNzc0N1c3RvbUZp
bHRlckVuYWJsZWQKLXsKLSAgICByZXR1cm4gW3NlbGYgX2Jvb2xWYWx1ZUZvcktleTpXZWJLaXRD
U1NDdXN0b21GaWx0ZXJFbmFibGVkUHJlZmVyZW5jZUtleV07Ci19Ci0KLS0gKHZvaWQpc2V0Q1NT
Q3VzdG9tRmlsdGVyRW5hYmxlZDooQk9PTCllbmFibGVkCi17Ci0gICAgW3NlbGYgX3NldEJvb2xW
YWx1ZTplbmFibGVkIGZvcktleTpXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkUHJlZmVyZW5j
ZUtleV07Ci19Ci0KIC0gKEJPT0wpY3NzUmVnaW9uc0VuYWJsZWQKIHsKICAgICByZXR1cm4gW3Nl
bGYgX2Jvb2xWYWx1ZUZvcktleTpXZWJLaXRDU1NSZWdpb25zRW5hYmxlZFByZWZlcmVuY2VLZXld
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1By
aXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRl
LmgKaW5kZXggYzEyOTE5Zi4uNzYxM2U3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCkBAIC0xOTksOSArMTk5LDYgQEAgZXh0ZXJu
IE5TU3RyaW5nICpXZWJQcmVmZXJlbmNlc0NhY2hlTW9kZWxDaGFuZ2VkSW50ZXJuYWxOb3RpZmlj
YXRpb247CiAtIChCT09MKWFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkOwogLSAodm9pZClz
ZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZDooQk9PTCllbmFibGVkOwogCi0tIChCT09M
KWNzc0N1c3RvbUZpbHRlckVuYWJsZWQ7Ci0tICh2b2lkKXNldENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQ6KEJPT0wpZW5hYmxlZDsKLQogLSAoQk9PTCljc3NSZWdpb25zRW5hYmxlZDsKIC0gKHZvaWQp
c2V0Q1NTUmVnaW9uc0VuYWJsZWQ6KEJPT0wpZW5hYmxlZDsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJWaWV3Lm1tCmluZGV4IDVmY2VjZWEuLmYxZDM4NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlZpZXcubW0KQEAgLTIzMjMsOSArMjMyMyw2IEBAIHN0YXRpYyBib29sIG5lZWRzU2Vs
ZlJldGFpbldoaWxlTG9hZGluZ1F1aXJrKCkKICAgICBzZXR0aW5ncy5zZXRGcmFtZUZsYXR0ZW5p
bmdFbmFibGVkKFtwcmVmZXJlbmNlcyBpc0ZyYW1lRmxhdHRlbmluZ0VuYWJsZWRdKTsKICAgICBz
ZXR0aW5ncy5zZXRTcGF0aWFsTmF2aWdhdGlvbkVuYWJsZWQoW3ByZWZlcmVuY2VzIGlzU3BhdGlh
bE5hdmlnYXRpb25FbmFibGVkXSk7CiAgICAgc2V0dGluZ3Muc2V0UGFnaW5hdGVEdXJpbmdMYXlv
dXRFbmFibGVkKFtwcmVmZXJlbmNlcyBwYWdpbmF0ZUR1cmluZ0xheW91dEVuYWJsZWRdKTsKLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgc2V0dGluZ3Muc2V0Q1NTQ3VzdG9tRmlsdGVyRW5h
YmxlZChbcHJlZmVyZW5jZXMgY3NzQ3VzdG9tRmlsdGVyRW5hYmxlZF0pOwotI2VuZGlmCiAgICAg
UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRDU1NSZWdpb25zRW5h
YmxlZChbcHJlZmVyZW5jZXMgY3NzUmVnaW9uc0VuYWJsZWRdKTsKICAgICBSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldENTU0NvbXBvc2l0aW5nRW5hYmxlZChbcHJl
ZmVyZW5jZXMgY3NzQ29tcG9zaXRpbmdFbmFibGVkXSk7CiAjaWYgRU5BQkxFKFdFQl9BVURJTykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYktp
dDIvQ01ha2VMaXN0cy50eHQKaW5kZXggNDk5YmM3OC4uMzE3ZWYzYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYktpdDIvQ01ha2VMaXN0
cy50eHQKQEAgLTI3MCw3ICsyNzAsNiBAQCBzZXQoV2ViS2l0Ml9TT1VSQ0VTCiAKICAgICBTaGFy
ZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMu
Y3BwCiAgICAgU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ29vcmRpbmF0ZWRTdXJmYWNl
LmNwcAotICAgIFNoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL1dlYkN1c3RvbUZpbHRlclByb2dy
YW1Qcm94eS5jcHAKIAogICAgIFNoYXJlZC9Eb3dubG9hZHMvRG93bmxvYWQuY3BwCiAgICAgU2hh
cmVkL0Rvd25sb2Fkcy9Eb3dubG9hZEF1dGhlbnRpY2F0aW9uQ2xpZW50LmNwcApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcg
Yi9Tb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpp
bmRleCBhYTM3NTg4ZC4uOTQ2OGM4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ29uZmln
dXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYktpdDIvQ29u
ZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTUwLDcgKzUwLDYgQEAgRU5B
QkxFX0NTU19GSUxURVJTID0gRU5BQkxFX0NTU19GSUxURVJTOwogRU5BQkxFX0NTU19JTUFHRV9P
UklFTlRBVElPTiA9IDsKIEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTiA9IDsKIEVOQUJMRV9D
U1NfUkVHSU9OUyA9IEVOQUJMRV9DU1NfUkVHSU9OUzsKLUVOQUJMRV9DU1NfU0hBREVSUyA9IEVO
QUJMRV9DU1NfU0hBREVSUzsKIEVOQUJMRV9DU1NfU0hBUEVTID0gRU5BQkxFX0NTU19TSEFQRVM7
CiBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTiA9IEVOQUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9O
OwogRU5BQkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCA9IEVOQUJMRV9D
U1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQ7CkBAIC0xOTgsNCArMTk3LDQgQEAg
RU5BQkxFX1hTTFQgPSBFTkFCTEVfWFNMVDsKIEVOQUJMRV9GVExfSklUID0gOwogRU5BQkxFX0xM
SU5UX0NfTE9PUCA9IDsKIAotRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfUkVOREVSSU5H
KSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FDQ0VMRVJBVEVEX09W
RVJGTE9XX1NDUk9MTElORykgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0FDSEVfUEFSVElUSU9O
SU5HKSAkKEVOQUJMRV9DQU5WQVNfUEFUSCkgJChFTkFCTEVfQ0FOVkFTX1BST1hZKSAkKEVOQUJM
RV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ1NQX05FWFQpICQoRU5BQkxFX0NTU19CT1hf
REVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKSAkKEVOQUJMRV9DU1Nf
REVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NTU19FWENMVVNJT05TKSAkKEVOQUJMRV9DU1Nf
RklMVEVSUykgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9DU1NfSU1B
R0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQoRU5BQkxFX0NTU19TSEFERVJT
KSAkKEVOQUJMRV9DU1NfU0hBUEVTKSAkKEVOQUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9OKSAkKEVO
QUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQpICQoRU5BQkxFX0NTUzNf
Q09ORElUSU9OQUxfUlVMRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1NTM19URVhU
X0RFQ09SQVRJT04pICQoRU5BQkxFX0NTUzNfVEVYVF9MSU5FX0JSRUFLKSAkKEVOQUJMRV9DVVJT
T1JfVklTSUJJTElUWSkgJChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKSAkKEVOQUJMRV9E
QVNIQk9BUkRfU1VQUE9SVCkgJChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCkgJChFTkFCTEVfREFU
QV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMU19FTEVNRU5UKSAkKEVOQUJMRV9ERVZJ
Q0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5BQkxFX0RPTTRf
RVZFTlRTX0NPTlNUUlVDVE9SKSAkKEVOQUJMRV9EUkFHR0FCTEVfUkVHSU9OKSAkKEVOQUJMRV9F
TkNSWVBURURfTUVESUEpICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQV9WMikgJChFTkFCTEVfRklM
VEVSUykgJChFTkFCTEVfRk9OVF9MT0FEX0VWRU5UUykgJChFTkFCTEVfRlVMTFNDUkVFTl9BUEkp
ICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9ISURERU5f
UEFHRV9ET01fVElNRVJfVEhST1RUTElORykgJChFTkFCTEVfSElHSF9EUElfQ0FOVkFTKSAkKEVO
QUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lGUkFNRV9TRUFNTEVTUykgJChFTkFCTEVfSU5E
RVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5ESUVfVUkpICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkg
JChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUikgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUl9QT1BP
VkVSKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJ
TUVfSU5DT01QTEVURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAkKEVOQUJM
RV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5BQkxFX0lO
UFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSU9TX0FJUlBMQVkpICQoRU5BQkxFX0lPU19URVhUX0FV
VE9TSVpJTkcpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX0xFR0FDWV9D
U1NfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykgJChFTkFC
TEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX1dFQl9BVURJTykgJChF
TkFCTEVfTEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhN
TCkgJChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0Up
ICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQoRU5B
QkxFX01IVE1MKSAkKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5BQkxFX05BVklHQVRP
Ul9DT05URU5UX1VUSUxTKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9QQUdFX1ZJ
U0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QREZLSVRfUExVR0lOKSAkKEVOQUJMRV9QTFVHSU5fUFJP
WFlfRk9SX1ZJREVPKSAkKEVOQUJMRV9QUk9HUkVTU19FTEVNRU5UKSAkKEVOQUJMRV9QUk9NSVNF
UykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNU
KSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5B
QkxFX1JFTU9URV9JTlNQRUNUT1IpICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFfUVVFUlkpICQo
RU5BQkxFX1NDUklQVEVEX1NQRUVDSCkgJChFTkFCTEVfU0hBRE9XX0RPTSkgJChFTkFCTEVfU0hB
UkVEX1dPUktFUlMpICQoRU5BQkxFX1NQRUVDSF9TWU5USEVTSVMpICQoRU5BQkxFX1NRTF9EQVRB
QkFTRSkgJChFTkFCTEVfU1VCUElYRUxfTEFZT1VUKSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAk
KEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVNUExBVEVfRUxFTUVO
VCkgJChFTkFCTEVfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9UT1VDSF9FVkVOVFMpICQoRU5B
QkxFX1RPVUNIX0lDT05fTE9BRElORykgJChFTkFCTEVfVVNFUlNFTEVDVF9BTEwpICQoRU5BQkxF
X1ZJREVPKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVfVklFV19NT0RFX0NTU19NRURJ
QSkgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxFX1dFQl9BTklNQVRJT05TKSAkKEVOQUJMRV9XRUJf
QVVESU8pICQoRU5BQkxFX1dFQl9SRVBMQVkpICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJM
RV9XRUJfVElNSU5HKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFJfVElNRU9VVCkgJChF
TkFCTEVfWFNMVCkgJChFTkFCTEVfRlRMX0pJVCkgJChFTkFCTEVfTExJTlRfQ19MT09QKSAkKEZF
QVRVUkVfREVGSU5FU18kKFBMQVRGT1JNX05BTUUpKTsKK0ZFQVRVUkVfREVGSU5FUyA9ICQoRU5B
QkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJM
RV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxF
X0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZB
U19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NTUF9ORVhUKSAk
KEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19DT01QT1NJVElO
RykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1NfRVhDTFVTSU9O
UykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikg
JChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAkKEVO
QUJMRV9DU1NfU0hBUEVTKSAkKEVOQUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9OKSAkKEVOQUJMRV9D
U1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQpICQoRU5BQkxFX0NTUzNfQ09ORElU
SU9OQUxfUlVMRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1NTM19URVhUX0RFQ09S
QVRJT04pICQoRU5BQkxFX0NTUzNfVEVYVF9MSU5FX0JSRUFLKSAkKEVOQUJMRV9DVVJTT1JfVklT
SUJJTElUWSkgJChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKSAkKEVOQUJMRV9EQVNIQk9B
UkRfU1VQUE9SVCkgJChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCkgJChFTkFCTEVfREFUQV9UUkFO
U0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMU19FTEVNRU5UKSAkKEVOQUJMRV9ERVZJQ0VfT1JJ
RU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5BQkxFX0RPTTRfRVZFTlRT
X0NPTlNUUlVDVE9SKSAkKEVOQUJMRV9EUkFHR0FCTEVfUkVHSU9OKSAkKEVOQUJMRV9FTkNSWVBU
RURfTUVESUEpICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQV9WMikgJChFTkFCTEVfRklMVEVSUykg
JChFTkFCTEVfRk9OVF9MT0FEX0VWRU5UUykgJChFTkFCTEVfRlVMTFNDUkVFTl9BUEkpICQoRU5B
QkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9ISURERU5fUEFHRV9E
T01fVElNRVJfVEhST1RUTElORykgJChFTkFCTEVfSElHSF9EUElfQ0FOVkFTKSAkKEVOQUJMRV9J
Q09OREFUQUJBU0UpICQoRU5BQkxFX0lGUkFNRV9TRUFNTEVTUykgJChFTkFCTEVfSU5ERVhFRF9E
QVRBQkFTRSkgJChFTkFCTEVfSU5ESUVfVUkpICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFC
TEVfSU5QVVRfVFlQRV9DT0xPUikgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUl9QT1BPVkVSKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVfSU5D
T01QTEVURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAkKEVOQUJMRV9JTlBV
VF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5BQkxFX0lOUFVUX1RZ
UEVfV0VFSykgJChFTkFCTEVfSU9TX0FJUlBMQVkpICQoRU5BQkxFX0lPU19URVhUX0FVVE9TSVpJ
TkcpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVO
RE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfTEVH
QUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX1dFQl9BVURJTykgJChFTkFCTEVf
TEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChF
TkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5B
QkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01I
VE1MKSAkKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5BQkxFX05BVklHQVRPUl9DT05U
RU5UX1VUSUxTKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9QQUdFX1ZJU0lCSUxJ
VFlfQVBJKSAkKEVOQUJMRV9QREZLSVRfUExVR0lOKSAkKEVOQUJMRV9QTFVHSU5fUFJPWFlfRk9S
X1ZJREVPKSAkKEVOQUJMRV9QUk9HUkVTU19FTEVNRU5UKSAkKEVOQUJMRV9QUk9NSVNFUykgJChF
TkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUKSAkKEVO
QUJMRV9RVU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1JF
TU9URV9JTlNQRUNUT1IpICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFfUVVFUlkpICQoRU5BQkxF
X1NDUklQVEVEX1NQRUVDSCkgJChFTkFCTEVfU0hBRE9XX0RPTSkgJChFTkFCTEVfU0hBUkVEX1dP
UktFUlMpICQoRU5BQkxFX1NQRUVDSF9TWU5USEVTSVMpICQoRU5BQkxFX1NRTF9EQVRBQkFTRSkg
JChFTkFCTEVfU1VCUElYRUxfTEFZT1VUKSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAkKEVOQUJM
RV9TVkcpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVNUExBVEVfRUxFTUVOVCkgJChF
TkFCTEVfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9UT1VDSF9FVkVOVFMpICQoRU5BQkxFX1RP
VUNIX0lDT05fTE9BRElORykgJChFTkFCTEVfVVNFUlNFTEVDVF9BTEwpICQoRU5BQkxFX1ZJREVP
KSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVfVklFV19NT0RFX0NTU19NRURJQSkgJChF
TkFCTEVfV0VCR0wpICQoRU5BQkxFX1dFQl9BTklNQVRJT05TKSAkKEVOQUJMRV9XRUJfQVVESU8p
ICQoRU5BQkxFX1dFQl9SRVBMQVkpICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJf
VElNSU5HKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFJfVElNRU9VVCkgJChFTkFCTEVf
WFNMVCkgJChFTkFCTEVfRlRMX0pJVCkgJChFTkFCTEVfTExJTlRfQ19MT09QKSAkKEZFQVRVUkVf
REVGSU5FU18kKFBMQVRGT1JNX05BTUUpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVy
cy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGlu
YXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuY3BwCmluZGV4IDMwNzNkY2UuLjkyOGZkNzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3Jk
aW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hh
cmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJz
LmNwcApAQCAtNTQsMjIgKzU0LDYgQEAKICNpbmNsdWRlIDxXZWJDb3JlL0ZpbHRlck9wZXJhdGlv
bnMuaD4KICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIldlYkN1
c3RvbUZpbHRlclByb2dyYW1Qcm94eS5oIgotI2luY2x1ZGUgPFdlYkNvcmUvQ29vcmRpbmF0ZWRD
dXN0b21GaWx0ZXJPcGVyYXRpb24uaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0Nvb3JkaW5hdGVkQ3Vz
dG9tRmlsdGVyUHJvZ3JhbS5oPgotI2luY2x1ZGUgPFdlYkNvcmUvQ3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXIuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVy
Lmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0ZXJDb25zdGFudHMuaD4KLSNpbmNsdWRl
IDxXZWJDb3JlL0N1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oPgotI2luY2x1ZGUgPFdlYkNv
cmUvQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0
ZXJQcm9ncmFtLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5o
PgotI2luY2x1ZGUgPFdlYkNvcmUvQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmg+Ci0j
aW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmg+Ci0jaW5jbHVk
ZSA8V2ViQ29yZS9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaD4KLSNlbmRpZgotCiAj
aWYgVVNFKEdSQVBISUNTX1NVUkZBQ0UpCiAjaW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc1N1cmZh
Y2UuaD4KICNlbmRpZgpAQCAtMTEwLDY3ICs5NCw2IEBAIHZvaWQgQXJndW1lbnRDb2RlcjxXZWJD
b3JlOjpGaWx0ZXJPcGVyYXRpb25zPjo6ZW5jb2RlKEFyZ3VtZW50RW5jb2RlciYgZW5jb2RlciwK
ICAgICAgICAgICAgIEFyZ3VtZW50Q29kZXI8Q29sb3I+OjplbmNvZGUoZW5jb2Rlciwgc2hhZG93
LT5jb2xvcigpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOgotICAgICAg
ICAgICAgLy8gQ3VzdG9tIEZpbHRlcnMgYXJlIGNvbnZlcnRlZCB0byBWQUxJREFURURfQ1VTVE9N
IGJlZm9yZSByZWFjaGluZyB0aGlzIHBvaW50LgotICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246
OlZBTElEQVRFRF9DVVNUT006IHsKLSAgICAgICAgICAgIGNvbnN0IFZhbGlkYXRlZEN1c3RvbUZp
bHRlck9wZXJhdGlvbiogY3VzdG9tT3BlcmF0aW9uID0gc3RhdGljX2Nhc3Q8Y29uc3QgVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oZmlsdGVyKTsKLSAgICAgICAgICAgIEFTU0VSVChj
dXN0b21PcGVyYXRpb24tPnZhbGlkYXRlZFByb2dyYW0oKSk7Ci0gICAgICAgICAgICBSZWZQdHI8
Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gcHJvZ3JhbSA9IGN1c3RvbU9wZXJhdGlvbi0+
dmFsaWRhdGVkUHJvZ3JhbSgpOwotICAgICAgICAgICAgQVNTRVJUKHByb2dyYW0tPmlzSW5pdGlh
bGl6ZWQoKSk7Ci0gICAgICAgICAgICBBU1NFUlQocHJvZ3JhbS0+cGxhdGZvcm1Db21waWxlZFBy
b2dyYW0oKSk7Ci0gICAgICAgICAgICBBU1NFUlQocHJvZ3JhbS0+cGxhdGZvcm1Db21waWxlZFBy
b2dyYW0oKS0+Y2xpZW50KCkpOwotICAgICAgICAgICAgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5KiBjdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkgPSBzdGF0aWNfY2FzdDxXZWJDdXN0b21GaWx0
ZXJQcm9ncmFtUHJveHkqPihwcm9ncmFtLT5wbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSgpLT5jbGll
bnQoKSk7Ci0gICAgICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYgcHJvZ3Jh
bUluZm8gPSBwcm9ncmFtLT5wcm9ncmFtSW5mbygpOwotICAgICAgICAgICAgZW5jb2Rlci5lbmNv
ZGVFbnVtKHByb2dyYW1JbmZvLm1lc2hUeXBlKCkpOwotICAgICAgICAgICAgZW5jb2RlciA8PCBj
dXN0b21GaWx0ZXJQcm9ncmFtUHJveHktPmlkKCk7Ci0gICAgICAgICAgICBDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0IHBhcmFtZXRlcnMgPSBjdXN0b21PcGVyYXRpb24tPnBhcmFtZXRlcnMoKTsK
LSAgICAgICAgICAgIGVuY29kZXIgPDwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHBhcmFtZXRlcnMu
c2l6ZSgpKTsKLSAgICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcGFyYW1ldGVycy5z
aXplKCk7ICsraSkgewotICAgICAgICAgICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0
ZXI+IHBhcmFtZXRlciA9IHBhcmFtZXRlcnNbaV07Ci0gICAgICAgICAgICAgICAgZW5jb2RlciA8
PCBwYXJhbWV0ZXItPm5hbWUoKTsKLSAgICAgICAgICAgICAgICBlbmNvZGVyLmVuY29kZUVudW0o
cGFyYW1ldGVyLT5wYXJhbWV0ZXJUeXBlKCkpOwotCi0gICAgICAgICAgICAgICAgc3dpdGNoIChw
YXJhbWV0ZXItPnBhcmFtZXRlclR5cGUoKSkgewotICAgICAgICAgICAgICAgIGNhc2UgQ3VzdG9t
RmlsdGVyUGFyYW1ldGVyOjpNQVRSSVg6Ci0gICAgICAgICAgICAgICAgY2FzZSBDdXN0b21GaWx0
ZXJQYXJhbWV0ZXI6OkFSUkFZOiB7Ci0gICAgICAgICAgICAgICAgICAgIEN1c3RvbUZpbHRlckFy
cmF5UGFyYW1ldGVyKiBhcnJheVBhcmFtZXRlciA9IHN0YXRpY19jYXN0PEN1c3RvbUZpbHRlckFy
cmF5UGFyYW1ldGVyKj4ocGFyYW1ldGVyLmdldCgpKTsKLSAgICAgICAgICAgICAgICAgICAgZW5j
b2RlciA8PCBzdGF0aWNfY2FzdDx1aW50MzJfdD4oYXJyYXlQYXJhbWV0ZXItPnNpemUoKSk7Ci0g
ICAgICAgICAgICAgICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgYXJyYXlQYXJhbWV0ZXIt
PnNpemUoKTsgKytqKQotICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RlciA8PCBhcnJheVBh
cmFtZXRlci0+dmFsdWVBdChqKTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAg
ICAgICAgICAgfQotICAgICAgICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpD
T0xPUjogewotICAgICAgICAgICAgICAgICAgICBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlciog
Y29sb3JQYXJhbWV0ZXIgPSBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcio+
KHBhcmFtZXRlci5nZXQoKSk7Ci0gICAgICAgICAgICAgICAgICAgIGVuY29kZXIgPDwgY29sb3JQ
YXJhbWV0ZXItPmNvbG9yKCk7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6TlVN
QkVSOiB7Ci0gICAgICAgICAgICAgICAgICAgIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciog
bnVibWVyUGFyYW1ldGVyID0gc3RhdGljX2Nhc3Q8Q3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVy
Kj4ocGFyYW1ldGVyLmdldCgpKTsKLSAgICAgICAgICAgICAgICAgICAgZW5jb2RlciA8PCBzdGF0
aWNfY2FzdDx1aW50MzJfdD4obnVibWVyUGFyYW1ldGVyLT5zaXplKCkpOwotICAgICAgICAgICAg
ICAgICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IG51Ym1lclBhcmFtZXRlci0+c2l6ZSgpOyAr
K2opCi0gICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGVyIDw8IG51Ym1lclBhcmFtZXRlci0+
dmFsdWVBdChqKTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAg
fQotICAgICAgICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpUUkFOU0ZPUk06
IHsKLSAgICAgICAgICAgICAgICAgICAgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKiB0
cmFuc2Zvcm1QYXJhbWV0ZXIgPSBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJh
bWV0ZXIqPihwYXJhbWV0ZXIuZ2V0KCkpOwotICAgICAgICAgICAgICAgICAgICBBcmd1bWVudENv
ZGVyPFRyYW5zZm9ybU9wZXJhdGlvbnM+OjplbmNvZGUoZW5jb2RlciwgdHJhbnNmb3JtUGFyYW1l
dGVyLT5vcGVyYXRpb25zKCkpOwotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZGVmYXVsdDogewotICAgICAgICAgICAgICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAg
ICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLQotICAgICAg
ICAgICAgZW5jb2RlciA8PCBjdXN0b21PcGVyYXRpb24tPm1lc2hSb3dzKCk7Ci0gICAgICAgICAg
ICBlbmNvZGVyIDw8IGN1c3RvbU9wZXJhdGlvbi0+bWVzaENvbHVtbnMoKTsKLSAgICAgICAgICAg
IGJyZWFrOwotICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAg
IGJyZWFrOwogICAgICAgICB9CkBAIC0yMzIsMTAxICsxNTUsNiBAQCBib29sIEFyZ3VtZW50Q29k
ZXI8V2ViQ29yZTo6RmlsdGVyT3BlcmF0aW9ucz46OmRlY29kZShBcmd1bWVudERlY29kZXImIGRl
Y29kZXIsCiAgICAgICAgICAgICBmaWx0ZXIgPSBEcm9wU2hhZG93RmlsdGVyT3BlcmF0aW9uOjpj
cmVhdGUobG9jYXRpb24sIHN0ZERldmlhdGlvbiwgY29sb3IsIHR5cGUpOwogICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgIH0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGNhc2Ug
RmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAgICAgICAgICAvLyBDdXN0b20gRmlsdGVycyBh
cmUgY29udmVydGVkIHRvIFZBTElEQVRFRF9DVVNUT00gYmVmb3JlIHJlYWNoaW5nIHRoaXMgcG9p
bnQuCi0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgIGJyZWFr
OwotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RPTTogewotICAg
ICAgICAgICAgLy8gRklYTUU6IEN1c3RvbUZpbHRlck9wZXJhdGlvbiBzaG91bGQgbm90IG5lZWQg
dGhlIG1lc2hUeXBlLgotICAgICAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEwMjUyOQotICAgICAgICAgICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVz
aFR5cGU7Ci0gICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bShtZXNoVHlwZSkpCi0g
ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgaW50IHByb2dyYW1JRCA9
IDA7Ci0gICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHByb2dyYW1JRCkpCi0gICAgICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgICAgICB1aW50MzJfdCBwYXJhbWV0ZXJz
U2l6ZTsKLSAgICAgICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGUocGFyYW1ldGVyc1NpemUpKQot
ICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgICAgICAgICAgQ3VzdG9tRmlsdGVy
UGFyYW1ldGVyTGlzdCBwYXJhbWV0ZXJzKHBhcmFtZXRlcnNTaXplKTsKLSAgICAgICAgICAgIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgcGFyYW1ldGVyc1NpemU7ICsraSkgewotICAgICAgICAgICAg
ICAgIFN0cmluZyBuYW1lOwotICAgICAgICAgICAgICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6
UGFyYW1ldGVyVHlwZSBwYXJhbWV0ZXJUeXBlOwotICAgICAgICAgICAgICAgIGlmICghZGVjb2Rl
ci5kZWNvZGUobmFtZSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAg
ICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bShwYXJhbWV0ZXJUeXBlKSkKLSAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgICAgICAgICAgc3dpdGNoIChw
YXJhbWV0ZXJUeXBlKSB7Ci0gICAgICAgICAgICAgICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXI6Ok1BVFJJWDoKLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6
QVJSQVk6IHsKLSAgICAgICAgICAgICAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlckFycmF5UGFy
YW1ldGVyPiBhcnJheVBhcmFtZXRlciA9IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyOjpjcmVh
dGUobmFtZSwgcGFyYW1ldGVyVHlwZSk7Ci0gICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGFy
cmF5UGFyYW1ldGVyU2l6ZTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCFkZWNvZGVyLmRlY29k
ZShhcnJheVBhcmFtZXRlclNpemUpKQotICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgICAgICAgICAgICAgICAgICBkb3VibGUgYXJyYXlQYXJhbWV0ZXJWYWx1ZTsKLSAg
ICAgICAgICAgICAgICAgICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBhcnJheVBhcmFtZXRlclNp
emU7ICsraikgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShh
cnJheVBhcmFtZXRlclZhbHVlKSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhcnJheVBhcmFtZXRlci0+YWRkVmFsdWUo
YXJyYXlQYXJhbWV0ZXJWYWx1ZSk7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
ICAgICAgICAgcGFyYW1ldGVyc1tpXSA9IGFycmF5UGFyYW1ldGVyLnJlbGVhc2UoKTsKLSAgICAg
ICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAg
IGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpDT0xPUjogewotICAgICAgICAgICAgICAgICAg
ICBSZWZQdHI8Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI+IGNvbG9yUGFyYW1ldGVyID0gQ3Vz
dG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKTsKLSAgICAgICAgICAgICAgICAg
ICAgQ29sb3IgYzsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShjKSkK
LSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgICAgICAg
ICAgY29sb3JQYXJhbWV0ZXItPnNldENvbG9yKGMpOwotICAgICAgICAgICAgICAgICAgICBwYXJh
bWV0ZXJzW2ldID0gY29sb3JQYXJhbWV0ZXIucmVsZWFzZSgpOwotICAgICAgICAgICAgICAgICAg
ICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgY2FzZSBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXI6Ok5VTUJFUjogewotICAgICAgICAgICAgICAgICAgICBSZWZQdHI8Q3Vz
dG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyPiBudW1iZXJQYXJhbWV0ZXIgPSBDdXN0b21GaWx0ZXJO
dW1iZXJQYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKTsKLSAgICAgICAgICAgICAgICAgICAgdWludDMy
X3QgbnVtYmVyUGFyYW1ldGVyU2l6ZTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCFkZWNvZGVy
LmRlY29kZShudW1iZXJQYXJhbWV0ZXJTaXplKSkKLSAgICAgICAgICAgICAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKLSAgICAgICAgICAgICAgICAgICAgZG91YmxlIG51bWJlclBhcmFtZXRlclZh
bHVlOwotICAgICAgICAgICAgICAgICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IG51bWJlclBh
cmFtZXRlclNpemU7ICsraikgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFkZWNvZGVy
LmRlY29kZShudW1iZXJQYXJhbWV0ZXJWYWx1ZSkpCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgICAgICAgICAgbnVtYmVyUGFyYW1ldGVy
LT5hZGRWYWx1ZShudW1iZXJQYXJhbWV0ZXJWYWx1ZSk7Ci0gICAgICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyc1tpXSA9IG51bWJlclBhcmFtZXRlci5yZWxl
YXNlKCk7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6VFJBTlNGT1JNOiB7Ci0g
ICAgICAgICAgICAgICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXI+
IHRyYW5zZm9ybVBhcmFtZXRlciA9IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcjo6Y3Jl
YXRlKG5hbWUpOwotICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1PcGVyYXRpb25zIG9wZXJh
dGlvbnM7Ci0gICAgICAgICAgICAgICAgICAgIGlmICghQXJndW1lbnRDb2RlcjxUcmFuc2Zvcm1P
cGVyYXRpb25zPjo6ZGVjb2RlKGRlY29kZXIsIG9wZXJhdGlvbnMpKQotICAgICAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1QYXJh
bWV0ZXItPnNldE9wZXJhdGlvbnMob3BlcmF0aW9ucyk7Ci0gICAgICAgICAgICAgICAgICAgIHBh
cmFtZXRlcnNbaV0gPSB0cmFuc2Zvcm1QYXJhbWV0ZXIucmVsZWFzZSgpOwotICAgICAgICAgICAg
ICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZGVmYXVs
dDogewotICAgICAgICAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIHVuc2lnbmVkIG1lc2hSb3dzOwot
ICAgICAgICAgICAgdW5zaWduZWQgbWVzaENvbHVtbnM7Ci0gICAgICAgICAgICBpZiAoIWRlY29k
ZXIuZGVjb2RlKG1lc2hSb3dzKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAg
ICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKG1lc2hDb2x1bW5zKSkKLSAgICAgICAgICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgICAgIC8vIEF0IHRoaXMgcG9pbnQgdGhlIFNoYWRl
cnMgYXJlIGFscmVhZHkgdmFsaWRhdGVkLCBzbyB3ZSBqdXN0IHVzZSBXZWJDdXN0b21GaWx0ZXJP
cGVyYXRpb24gZm9yIHRyYW5zcG9ydGF0aW9uLgotICAgICAgICAgICAgZmlsdGVyID0gQ29vcmRp
bmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb246OmNyZWF0ZSgwLCBwcm9ncmFtSUQsIHBhcmFtZXRl
cnMsIG1lc2hSb3dzLCBtZXNoQ29sdW1ucyk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAg
fQotI2VuZGlmCiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAg
fQpAQCAtMzM5LDQyICsxNjcsNiBAQCBib29sIEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6RmlsdGVy
T3BlcmF0aW9ucz46OmRlY29kZShBcmd1bWVudERlY29kZXImIGRlY29kZXIsCiB9CiAjZW5kaWYK
IAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLXZvaWQgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mbz46OmVuY29kZShBcmd1bWVudEVuY29kZXImIGVuY29kZXIs
IGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9ncmFtSW5mbykKLXsKLSAgICBlbmNv
ZGVyIDw8IHByb2dyYW1JbmZvLnZlcnRleFNoYWRlclN0cmluZygpOwotICAgIGVuY29kZXIgPDwg
cHJvZ3JhbUluZm8uZnJhZ21lbnRTaGFkZXJTdHJpbmcoKTsKLSAgICBlbmNvZGVyLmVuY29kZUVu
dW0ocHJvZ3JhbUluZm8ucHJvZ3JhbVR5cGUoKSk7Ci0gICAgZW5jb2Rlci5lbmNvZGVFbnVtKHBy
b2dyYW1JbmZvLm1lc2hUeXBlKCkpOwotICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhT
ZXR0aW5ncyYgbWl4U2V0dGluZ3MgPSBwcm9ncmFtSW5mby5taXhTZXR0aW5ncygpOwotICAgIGVu
Y29kZXIuZW5jb2RlRW51bShtaXhTZXR0aW5ncy5ibGVuZE1vZGUpOwotICAgIGVuY29kZXIuZW5j
b2RlRW51bShtaXhTZXR0aW5ncy5jb21wb3NpdGVPcGVyYXRvcik7Ci19Ci0KLWJvb2wgQXJndW1l
bnRDb2RlcjxXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbz46OmRlY29kZShBcmd1bWVu
dERlY29kZXImIGRlY29kZXIsIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9ncmFtSW5mbykK
LXsKLSAgICBTdHJpbmcgdmVydGV4U2hhZGVyU3RyaW5nOwotICAgIFN0cmluZyBmcmFnbWVudFNo
YWRlclN0cmluZzsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZTsKLSAg
ICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZTsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFt
TWl4U2V0dGluZ3MgbWl4U2V0dGluZ3M7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZSh2ZXJ0ZXhT
aGFkZXJTdHJpbmcpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgaWYgKCFkZWNvZGVyLmRl
Y29kZShmcmFnbWVudFNoYWRlclN0cmluZykpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBp
ZiAoIWRlY29kZXIuZGVjb2RlRW51bShwcm9ncmFtVHlwZSkpCi0gICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bShtZXNoVHlwZSkpCi0gICAgICAgIHJldHVy
biBmYWxzZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bShtaXhTZXR0aW5ncy5ibGVuZE1v
ZGUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZUVudW0o
bWl4U2V0dGluZ3MuY29tcG9zaXRlT3BlcmF0b3IpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0g
ICAgcHJvZ3JhbUluZm8gPSBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyh2ZXJ0ZXhTaGFkZXJTdHJp
bmcsIGZyYWdtZW50U2hhZGVyU3RyaW5nLCBwcm9ncmFtVHlwZSwgbWl4U2V0dGluZ3MsIG1lc2hU
eXBlKTsKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0KIHZvaWQgQXJndW1lbnRDb2RlcjxUcmFuc2Zvcm1PcGVyYXRpb25zPjo6ZW5jb2RlKEFyZ3Vt
ZW50RW5jb2RlciYgZW5jb2RlciwgY29uc3QgVHJhbnNmb3JtT3BlcmF0aW9ucyYgdHJhbnNmb3Jt
T3BlcmF0aW9ucykKIHsKICAgICBlbmNvZGVyIDw8IHN0YXRpY19jYXN0PHVpbnQzMl90Pih0cmFu
c2Zvcm1PcGVyYXRpb25zLnNpemUoKSk7CkBAIC0xMDg0LDE1ICs4NzYsNiBAQCB2b2lkIEFyZ3Vt
ZW50Q29kZXI8Q29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlPjo6ZW5jb2RlKEFyZ3VtZW50RW5jb2Rl
ciYgZW5jb2RlciwgYwogICAgICAgICBlbmNvZGVDb29yZGluYXRlZFN1cmZhY2UoZW5jb2Rlciwg
c3RhdGUudXBkYXRlQXRsYXNlc1RvQ3JlYXRlW2ldLnNlY29uZCk7CiAgICAgfQogICAgIGVuY29k
ZXIgPDwgc3RhdGUudXBkYXRlQXRsYXNlc1RvUmVtb3ZlOwotCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgIGVuY29kZXIgPDwgc3RhdGljX2Nhc3Q8dWludDY0X3Q+KHN0YXRlLmN1c3RvbUZp
bHRlcnNUb0NyZWF0ZS5zaXplKCkpOwotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3RhdGUu
Y3VzdG9tRmlsdGVyc1RvQ3JlYXRlLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGVuY29kZXIgPDwg
c3RhdGUuY3VzdG9tRmlsdGVyc1RvQ3JlYXRlW2ldLmZpcnN0OwotICAgICAgICBlbmNvZGVyIDw8
IHN0YXRlLmN1c3RvbUZpbHRlcnNUb0NyZWF0ZVtpXS5zZWNvbmQ7Ci0gICAgfQotICAgIGVuY29k
ZXIgPDwgc3RhdGUuY3VzdG9tRmlsdGVyc1RvUmVtb3ZlOwotI2VuZGlmCiB9CiAKIGJvb2wgQXJn
dW1lbnRDb2RlcjxDb29yZGluYXRlZEdyYXBoaWNzU3RhdGU+OjpkZWNvZGUoQXJndW1lbnREZWNv
ZGVyJiBkZWNvZGVyLCBDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUmIHN0YXRlKQpAQCAtMTE2Miwy
NSArOTQ1LDYgQEAgYm9vbCBBcmd1bWVudENvZGVyPENvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZT46
OmRlY29kZShBcmd1bWVudERlY29kZXImIGRlY29kZXIsIEMKICAgICBpZiAoIWRlY29kZXIuZGVj
b2RlKHN0YXRlLnVwZGF0ZUF0bGFzZXNUb1JlbW92ZSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
IAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICB1aW50NjRfdCBzaXplT2ZDdXN0b21GaWx0
ZXJzVG9DcmVhdGU7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShzaXplT2ZDdXN0b21GaWx0ZXJz
VG9DcmVhdGUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBmb3IgKHVpbnQ2NF90IGkg
PSAwOyBpIDwgc2l6ZU9mQ3VzdG9tRmlsdGVyc1RvQ3JlYXRlOyArK2kpIHsKLSAgICAgICAgdWlu
dDMyX3QgZmlsdGVySUQ7Ci0gICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGUoZmlsdGVySUQpKQot
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBDdXN0b21GaWx0ZXJQcm9ncmFtSW5m
byBmaWx0ZXJJbmZvOwotICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGZpbHRlckluZm8pKQot
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBzdGF0ZS5jdXN0b21GaWx0ZXJzVG9D
cmVhdGUuYXBwZW5kKHN0ZDo6bWFrZV9wYWlyKGZpbHRlcklELCBmaWx0ZXJJbmZvKSk7Ci0gICAg
fQotCi0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShzdGF0ZS5jdXN0b21GaWx0ZXJzVG9SZW1vdmUp
KQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0jZW5kaWYKLQogICAgIHJldHVybiB0cnVlOwogfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9D
b29yZGluYXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5o
CmluZGV4IGEzY2RjMDQuLmVkYzRjMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5h
dGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5oCkBAIC00OCwxMCArNDgsNiBAQCBzdHJ1Y3QgTGVu
Z3RoOwogY2xhc3MgRmlsdGVyT3BlcmF0aW9uczsKICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19T
SEFERVJTKQotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm87Ci0jZW5kaWYKLQogI2lmIFVT
RShHUkFQSElDU19TVVJGQUNFKQogc3RydWN0IEdyYXBoaWNzU3VyZmFjZVRva2VuOwogI2VuZGlm
CkBAIC02NiwxMyArNjIsNiBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYkNv
cmU6OkZpbHRlck9wZXJhdGlvbnM+IHsKIH07CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLXRlbXBsYXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6Q3VzdG9tRmls
dGVyUHJvZ3JhbUluZm8+IHsKLSAgICBzdGF0aWMgdm9pZCBlbmNvZGUoQXJndW1lbnRFbmNvZGVy
JiwgY29uc3QgV2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mKTsKLSAgICBzdGF0aWMg
Ym9vbCBkZWNvZGUoQXJndW1lbnREZWNvZGVyJiwgV2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJvZ3Jh
bUluZm8mKTsKLX07Ci0jZW5kaWYKLQogdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxX
ZWJDb3JlOjpUcmFuc2Zvcm1PcGVyYXRpb25zPiB7CiAgICAgc3RhdGljIHZvaWQgZW5jb2RlKEFy
Z3VtZW50RW5jb2RlciYsIGNvbnN0IFdlYkNvcmU6OlRyYW5zZm9ybU9wZXJhdGlvbnMmKTsKICAg
ICBzdGF0aWMgYm9vbCBkZWNvZGUoQXJndW1lbnREZWNvZGVyJiwgV2ViQ29yZTo6VHJhbnNmb3Jt
T3BlcmF0aW9ucyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5h
dGVkR3JhcGhpY3MvV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL1dlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94
eS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU2ZjcwNzYuLjAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9tRmls
dGVyUHJvZ3JhbVByb3h5LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDQ5ICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6
Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICog
ICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
Ci0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkK
LSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAot
ICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgot
ICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotI2luY2x1ZGUgIldlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS5oIgot
Ci1uYW1lc3BhY2UgV2ViS2l0IHsKLQotaW50IFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eTo6
c19uZXh0SWQgPSAxOwotCi1XZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHk6On5XZWJDdXN0b21G
aWx0ZXJQcm9ncmFtUHJveHkoKQotewotICAgIGlmIChtX2NsaWVudCkgewotICAgICAgICBtX2Ns
aWVudC0+cmVtb3ZlQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KHRoaXMpOwotICAgICAgICBtX2Ns
aWVudCA9IDA7Ci0gICAgfQotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8v
IEVOQUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9D
b29yZGluYXRlZEdyYXBoaWNzL1dlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS5oIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9tRmlsdGVyUHJvZ3Jh
bVByb3h5LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhhMDg3YTAuLjAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9t
RmlsdGVyUHJvZ3JhbVByb3h5LmgKKysrIC9kZXYvbnVsbApAQCAtMSw5MyArMCwwIEBACi0vKgot
ICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0
OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5Z
Ci0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICog
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
LSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YK
LSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5X2gKLSNkZWZpbmUgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5X2gKLQotI2lmIFVTRShD
T09SRElOQVRFRF9HUkFQSElDUykgJiYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSA8
V2ViQ29yZS9UZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0uaD4KLSNpbmNsdWRl
IDx3dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViS2l0IHsKLQotY2xhc3MgV2ViQ3Vz
dG9tRmlsdGVyUHJvZ3JhbVByb3h5OwotCi1jbGFzcyBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJv
eHlDbGllbnQgewotcHVibGljOgotICAgIHZpcnR1YWwgdm9pZCByZW1vdmVDdXN0b21GaWx0ZXJQ
cm9ncmFtUHJveHkoV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KikgPSAwOwotfTsKLQotLy8g
VGhpcyBpcyBhIHByb3h5IGNsYXNzIHVzZWQgdG8gc3RvcmUgdGhlIElEIG9mIHRoZSBjdXN0b20g
ZmlsdGVyIHByb2dyYW0gc2VyaWFsaXplZCB0byB0aGUgb3RoZXIgcHJvY2Vzcy4KLS8vIEl0IGxp
dmVzIGluIHRoZSBXZWJQcm9jZXNzIGFuZCBpcyByZWZlcmVuY2VkIGZyb20gdGhlIEN1c3RvbUZp
bHRlclZhbGlkYXRlZFByb2dyYW0gbWVhbmluZyB0aGF0IGl0IHdpbGwgYmUga2VwdCBhbGl2ZSBh
cwotLy8gbG9uZyBhcyBhIGxheWVyIG9uIHRoZSBwYWdlIHdpbGwgcmVuZGVyIHdpdGggdGhpcyBw
cm9ncmFtLiBJdCB3aWxsIGNhbGwgcmVtb3ZlQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5IG9uIHRo
ZSBtX2NsaWVudAotLy8gd2hlbiB0aGUgcHJvZ3JhbSBpcyBubyBsb25nZXIgbmVlZGVkIHRvIHJl
bmRlciB0aGUgZmlsdGVyLiBUaGUgY2xpZW50IGNhbiB0aGVuIHNlbmQgYSBtZXNzYWdlIHRvIHRo
ZSBVSSBwcm9jZXNzCi0vLyB0byBkZXN0cm95IHRoZSBhc3NvY2lhdGVkIHJlZmVyZW5jZS4gTm90
ZSB0aGF0IG1vcmUgbGF5ZXJzIGNhbiBzaGFyZSB0aGUgc2FtZSBwcm9ncmFtIGFuZCB0aGVyZSdz
Ci0vLyBubyBuZWVkIHRvIGltcGxlbWVudCBhIGNhY2hpbmcgbWVjaGFuaXNtIGluIHRoZSBjb21w
b3NpdG9yIHNpZGUuCi0KLWNsYXNzIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSA6IHB1Ymxp
YyBSZWZDb3VudGVkPFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eT4sIHB1YmxpYyBXZWJDb3Jl
OjpUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW1DbGllbnQgewotcHVibGljOgot
ICAgIHVzaW5nIFJlZkNvdW50ZWQ8V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Pjo6cmVmOwot
ICAgIHVzaW5nIFJlZkNvdW50ZWQ8V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Pjo6ZGVyZWY7
Ci0KLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHk+IGNy
ZWF0ZSgpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYkN1c3RvbUZpbHRl
clByb2dyYW1Qcm94eSgpKTsKLSAgICB9Ci0KLSAgICBpbnQgaWQoKSBjb25zdCB7IHJldHVybiBt
X2lkOyB9Ci0KLSAgICAvLyBOZWVkZWQgdG8gbWFrZSBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21w
aWxlZFByb2dyYW1DbGllbnQgbG9vayBsaWtlIGEgUmVmQ291bnRlZCBvYmplY3QuCi0gICAgdmly
dHVhbCB2b2lkIHJlZkZyb21WYWxpZGF0ZWRQcm9ncmFtKCkgeyByZWYoKTsgfQotICAgIHZpcnR1
YWwgdm9pZCBkZXJlZkZyb21WYWxpZGF0ZWRQcm9ncmFtKCkgeyBkZXJlZigpOyB9Ci0KLSAgICB2
aXJ0dWFsIH5XZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkoKTsKLSAgICAKLSAgICB2b2lkIHNl
dENsaWVudChXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHlDbGllbnQqIGNsaWVudCkgeyBtX2Ns
aWVudCA9IGNsaWVudDsgfQotICAgIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eUNsaWVudCog
Y2xpZW50KCkgY29uc3QgeyByZXR1cm4gbV9jbGllbnQ7IH0KLQotcHJpdmF0ZToKLSAgICBXZWJD
dXN0b21GaWx0ZXJQcm9ncmFtUHJveHkoKQotICAgICAgICA6IG1fY2xpZW50KDApCi0gICAgICAg
ICwgbV9pZChzX25leHRJZCsrKQotICAgIHsKLSAgICB9Ci0gICAgCi0gICAgV2ViQ3VzdG9tRmls
dGVyUHJvZ3JhbVByb3h5Q2xpZW50KiBtX2NsaWVudDsKLSAgICBpbnQgbV9pZDsKLSAgICAKLSAg
ICBzdGF0aWMgaW50IHNfbmV4dElkOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNl
bmRpZiAvLyBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpICYmIEVOQUJMRShDU1NfU0hBREVSUykK
LQotI2VuZGlmIC8vIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eV9oCi0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKaW5kZXggZDRkNWY4OC4u
MzIzNTM1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVu
dENvZGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENv
ZGVycy5jcHAKQEAgLTE0NjIsMTIgKzE0NjIsNiBAQCBzdGF0aWMgdm9pZCBlbmNvZGVGaWx0ZXJP
cGVyYXRpb24oQXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBGaWx0ZXJPcGVyYXRpbwog
ICAgICAgICBlbmNvZGVyIDw8IGRyb3BTaGFkb3dGaWx0ZXIuY29sb3IoKTsKICAgICAgICAgYnJl
YWs7CiAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIEZpbHRlck9wZXJh
dGlvbjo6Q1VTVE9NOgotICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9N
OgotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgYnJlYWs7Ci0jZW5kaWYK
ICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6UEFTU1RIUk9VR0g6CiAgICAgY2FzZSBGaWx0ZXJP
cGVyYXRpb246Ok5PTkU6CiAgICAgICAgIGJyZWFrOwpAQCAtMTUzMSwxMiArMTUyNSw2IEBAIHN0
YXRpYyBib29sIGRlY29kZUZpbHRlck9wZXJhdGlvbihBcmd1bWVudERlY29kZXImIGRlY29kZXIs
IFJlZlB0cjxGaWx0ZXJPcGVyYXRpCiAgICAgICAgIGZpbHRlciA9IERyb3BTaGFkb3dGaWx0ZXJP
cGVyYXRpb246OmNyZWF0ZShsb2NhdGlvbiwgc3RkRGV2aWF0aW9uLCBjb2xvciwgdHlwZSk7CiAg
ICAgICAgIGJyZWFrOwogICAgIH0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBG
aWx0ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6VkFMSURB
VEVEX0NVU1RPTToKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgIGJyZWFr
OwotI2VuZGlmCiAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OlBBU1NUSFJPVUdIOgogICAgIGNh
c2UgRmlsdGVyT3BlcmF0aW9uOjpOT05FOgogICAgICAgICBicmVhazsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmggYi9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCmluZGV4IGU5ZjcxMTQuLjI5MzIyZjkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKKysr
IGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaApAQCAtOTcsNyAr
OTcsNiBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKICAgICBtYWNybyhDb21wb3NpdGluZ0JvcmRlcnNW
aXNpYmxlLCBjb21wb3NpdGluZ0JvcmRlcnNWaXNpYmxlLCBCb29sLCBib29sLCBmYWxzZSkgXAog
ICAgIG1hY3JvKENvbXBvc2l0aW5nUmVwYWludENvdW50ZXJzVmlzaWJsZSwgY29tcG9zaXRpbmdS
ZXBhaW50Q291bnRlcnNWaXNpYmxlLCBCb29sLCBib29sLCBmYWxzZSkgXAogICAgIG1hY3JvKFRp
bGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlzaWJsZSwgdGlsZWRTY3JvbGxpbmdJbmRpY2F0b3JWaXNp
YmxlLCBCb29sLCBib29sLCBmYWxzZSkgXAotICAgIG1hY3JvKENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQsIGNzc0N1c3RvbUZpbHRlckVuYWJsZWQsIEJvb2wsIGJvb2wsIHRydWUpIFwKICAgICBtYWNy
byhXZWJHTEVuYWJsZWQsIHdlYkdMRW5hYmxlZCwgQm9vbCwgYm9vbCwgdHJ1ZSkgXAogICAgIG1h
Y3JvKE11bHRpdGhyZWFkZWRXZWJHTEVuYWJsZWQsIG11bHRpdGhyZWFkZWRXZWJHTEVuYWJsZWQs
IEJvb2wsIGJvb2wsIGZhbHNlKSBcCiAgICAgbWFjcm8oRm9yY2VTb2Z0d2FyZVdlYkdMUmVuZGVy
aW5nLCBmb3JjZVNvZnR3YXJlV2ViR0xSZW5kZXJpbmcsIEJvb2wsIGJvb2wsIGZhbHNlKSBcCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVRyYW5z
YWN0aW9uLm1tIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVUcmFu
c2FjdGlvbi5tbQppbmRleCBkOTkzZWQwLi41MTk3YWIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24ubW0KQEAgLTQ5
NSwxNCArNDk1LDYgQEAgUmVtb3RlTGF5ZXJUcmVlVGV4dFN0cmVhbSYgUmVtb3RlTGF5ZXJUcmVl
VGV4dFN0cmVhbTo6b3BlcmF0b3I8PChjb25zdCBGaWx0ZXJPcGUKICAgICAgICAgY2FzZSBGaWx0
ZXJPcGVyYXRpb246OkRST1BfU0hBRE9XOgogICAgICAgICAgICAgdHMgPDwgImRyb3Agc2hhZG93
IjsKICAgICAgICAgICAgIGJyZWFrOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAg
Y2FzZSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICAgICAgICAgIHRzIDw8ICJjdXN0b20i
OwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJ
REFURURfQ1VTVE9NOgotICAgICAgICAgICAgdHMgPDwgImN1c3RvbSAodmFsaWRhdGVkKSI7Ci0g
ICAgICAgICAgICBicmVhazsKLSNlbmRpZgogICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6
UEFTU1RIUk9VR0g6CiAgICAgICAgICAgICB0cyA8PCAicGFzc3Rocm91Z2giOwogICAgICAgICAg
ICAgYnJlYWs7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQ
cmVmZXJlbmNlcy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJl
bmNlcy5jcHAKaW5kZXggZWRlMDlkOS4uOGQyNWM3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcApAQCAtNDU5LDE2ICs0NTksNiBAQCBi
b29sIFdLUHJlZmVyZW5jZXNHZXRUaWxlZFNjcm9sbGluZ0luZGljYXRvclZpc2libGUoV0tQcmVm
ZXJlbmNlc1JlZiBwcmVmZXJlbmNlcwogICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYp
LT50aWxlZFNjcm9sbGluZ0luZGljYXRvclZpc2libGUoKTsKIH0KIAotdm9pZCBXS1ByZWZlcmVu
Y2VzU2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2Vz
UmVmLCBib29sIGZsYWcpCi17Ci0gICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZChmbGFnKTsKLX0KLQotYm9vbCBXS1ByZWZlcmVuY2VzR2V0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQotewotICAg
IHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5jc3NDdXN0b21GaWx0ZXJFbmFibGVkKCk7
Ci19Ci0KIHZvaWQgV0tQcmVmZXJlbmNlc1NldFdlYkdMRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVm
IHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpCiB7CiAgICAgdG9JbXBsKHByZWZlcmVuY2VzUmVm
KS0+c2V0V2ViR0xFbmFibGVkKGZsYWcpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaAppbmRleCA4NjdjOTk3Li5lOGJiMTFj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNl
c1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJl
bmNlc1ByaXZhdGUuaApAQCAtODksMTAgKzg5LDYgQEAgV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJl
bmNlc1NldFRpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlzaWJsZShXS1ByZWZlcmVuY2VzUmVmLAog
V0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldFRpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlz
aWJsZShXS1ByZWZlcmVuY2VzUmVmKTsKIAogLy8gRGVmYXVsdHMgdG8gdHJ1ZS4KLVdLX0VYUE9S
VCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkKFdLUHJlZmVyZW5j
ZXNSZWYsIGJvb2wgZmxhZyk7Ci1XS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKTsKLQotLy8gRGVmYXVsdHMgdG8gdHJ1
ZS4KIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRXZWJHTEVuYWJsZWQoV0tQcmVmZXJl
bmNlc1JlZiwgYm9vbCk7CiBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0V2ViR0xFbmFi
bGVkKFdLUHJlZmVyZW5jZXNSZWYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCmluZGV4IGRiZjBj
ZjAuLmMyM2NlNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0
ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCkBAIC0yMDMsNyArMjAzLDYgQEAg
dm9pZCBJbmplY3RlZEJ1bmRsZTo6b3ZlcnJpZGVCb29sUHJlZmVyZW5jZUZvclRlc3RSdW5uZXIo
V2ViUGFnZUdyb3VwUHJveHkqIHBhZ2UKICNkZWZpbmUgRk9SX0VBQ0hfT1ZFUlJJREVfQk9PTF9Q
UkVGRVJFTkNFKG1hY3JvKSBcCiAgICAgbWFjcm8oV2ViS2l0QWNjZWxlcmF0ZWRDb21wb3NpdGlu
Z0VuYWJsZWQsIEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkLCBhY2NlbGVyYXRlZENvbXBv
c2l0aW5nRW5hYmxlZCkgXAogICAgIG1hY3JvKFdlYktpdENhbnZhc1VzZXNBY2NlbGVyYXRlZERy
YXdpbmcsIENhbnZhc1VzZXNBY2NlbGVyYXRlZERyYXdpbmcsIGNhbnZhc1VzZXNBY2NlbGVyYXRl
ZERyYXdpbmcpIFwKLSAgICBtYWNybyhXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkLCBDU1ND
dXN0b21GaWx0ZXJFbmFibGVkLCBjc3NDdXN0b21GaWx0ZXJFbmFibGVkKSBcCiAgICAgbWFjcm8o
V2ViS2l0Q1NTR3JpZExheW91dEVuYWJsZWQsIENTU0dyaWRMYXlvdXRFbmFibGVkLCBjc3NHcmlk
TGF5b3V0RW5hYmxlZCkgXAogICAgIG1hY3JvKFdlYktpdEZyYW1lRmxhdHRlbmluZ0VuYWJsZWQs
IEZyYW1lRmxhdHRlbmluZ0VuYWJsZWQsIGZyYW1lRmxhdHRlbmluZ0VuYWJsZWQpIFwKICAgICBt
YWNybyhXZWJLaXRKYXZhRW5hYmxlZCwgSmF2YUVuYWJsZWQsIGphdmFFbmFibGVkKSBcCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFw
aGljcy9Db29yZGluYXRlZExheWVyVHJlZUhvc3QuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0
LmNwcAppbmRleCAyOGUwNjM1Li4yNTc0N2E0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExheWVyVHJl
ZUhvc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGlu
YXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5jcHAKQEAgLTQzLDExICs0Myw2
IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9TZXR0aW5ncy5oPgogI2luY2x1ZGUgPHd0Zi9DdXJyZW50
VGltZS5oPgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0uaCIKLSNpbmNsdWRlICJWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24uaCIKLSNlbmRpZgotCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNl
IFdlYktpdCB7CkBAIC01OSw5ICs1NCw2IEBAIFBhc3NSZWZQdHI8Q29vcmRpbmF0ZWRMYXllclRy
ZWVIb3N0PiBDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6OmNyZWF0ZShXZWJQYWdlKiB3CiAKIENv
b3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6fkNvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdCgpCiB7Ci0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGRpc2Nvbm5lY3RDdXN0b21GaWx0ZXJQcm9ncmFt
cygpOwotI2VuZGlmCiB9CiAKIENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6Q29vcmRpbmF0ZWRM
YXllclRyZWVIb3N0KFdlYlBhZ2UqIHdlYlBhZ2UpCkBAIC0yMTUsODUgKzIwNyw2IEBAIHZvaWQg
Q29vcmRpbmF0ZWRMYXllclRyZWVIb3N0OjpwdXJnZUJhY2tpbmdTdG9yZXMoKQogICAgIG1fY29v
cmRpbmF0b3ItPnB1cmdlQmFja2luZ1N0b3JlcygpOwogfQogCi12b2lkIENvb3JkaW5hdGVkTGF5
ZXJUcmVlSG9zdDo6d2lsbFN5bmNMYXllclN0YXRlKENvb3JkaW5hdGVkR3JhcGhpY3NMYXllclN0
YXRlJiBzdGF0ZSkKLXsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgaWYgKHN0YXRlLmFu
aW1hdGlvbnNDaGFuZ2VkKQotICAgICAgICBwcmVwYXJlQ3VzdG9tRmlsdGVyUHJveGllc0ZvckFu
aW1hdGlvbnMoc3RhdGUuYW5pbWF0aW9ucyk7Ci0KLSAgICBpZiAoc3RhdGUuZmlsdGVyc0NoYW5n
ZWQpCi0gICAgICAgIGNoZWNrQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3hpZXMoc3RhdGUuZmlsdGVy
cyk7Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShzdGF0ZSk7Ci0jZW5kaWYKLX0KLQotI2lmIEVO
QUJMRShDU1NfU0hBREVSUykKLXZvaWQgQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0OjpwcmVwYXJl
Q3VzdG9tRmlsdGVyUHJveGllc0ZvckFuaW1hdGlvbnMoR3JhcGhpY3NMYXllckFuaW1hdGlvbnMm
IGFjdGl2ZUFuaW1hdGlvbnMpCi17Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBhY3RpdmVB
bmltYXRpb25zLmFuaW1hdGlvbnMoKS5zaXplKCk7ICsraSkgewotICAgICAgICBjb25zdCBLZXlm
cmFtZVZhbHVlTGlzdCYga2V5ZnJhbWVzID0gYWN0aXZlQW5pbWF0aW9ucy5hbmltYXRpb25zKCku
YXQoaSkua2V5ZnJhbWVzKCk7Ci0gICAgICAgIGlmIChrZXlmcmFtZXMucHJvcGVydHkoKSAhPSBB
bmltYXRlZFByb3BlcnR5V2Via2l0RmlsdGVyKQotICAgICAgICAgICAgY29udGludWU7Ci0gICAg
ICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwga2V5ZnJhbWVzLnNpemUoKTsgKytqKSB7Ci0gICAg
ICAgICAgICBjb25zdCBGaWx0ZXJBbmltYXRpb25WYWx1ZSYgZmlsdGVyVmFsdWUgPSBzdGF0aWNf
Y2FzdDxjb25zdCBGaWx0ZXJBbmltYXRpb25WYWx1ZSY+KGtleWZyYW1lcy5hdChqKSk7Ci0gICAg
ICAgICAgICBjaGVja0N1c3RvbUZpbHRlclByb2dyYW1Qcm94aWVzKGZpbHRlclZhbHVlLnZhbHVl
KCkpOwotICAgICAgICB9Ci0gICAgfQotfQotCi12b2lkIENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9z
dDo6Y2hlY2tDdXN0b21GaWx0ZXJQcm9ncmFtUHJveGllcyhjb25zdCBGaWx0ZXJPcGVyYXRpb25z
JiBmaWx0ZXJzKQotewotICAgIC8vIFdlIG5lZWQgdG8gY3JlYXRlIHRoZSBXZWJDdXN0b21GaWx0
ZXJQcm9ncmFtUHJveHkgb2JqZWN0cyBiZWZvcmUgd2UgZ2V0IHRvIHNlcmlhbGl6ZSB0aGUKLSAg
ICAvLyBjdXN0b20gZmlsdGVycyB0byB0aGUgb3RoZXIgcHJvY2Vzcy4gVGhhdCdzIGJlY2F1c2Ug
V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5IG5lZWRzCi0gICAgLy8gdG8gbGluayBiYWNrIHRv
IHRoZSBjb29yZGluYXRvciwgc28gdGhhdCB3ZSBjYW4gc2VuZCBhIG1lc3NhZ2UgdG8gdGhlIFVJ
IHByb2Nlc3Mgd2hlbgotICAgIC8vIHRoZSBwcm9ncmFtIGlzIG5vdCBuZWVkZWQgYW55bW9yZS4K
LSAgICAvLyBOb3RlIHRoYXQgdGhlIHNlcmlhbGl6YXRpb24gd2lsbCBvbmx5IGhhcHBlbiBhdCBh
IGxhdGVyIHRpbWUgaW4gQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpGaWx0ZXJPcGVyYXRpb25zPjo6
ZW5jb2RlLgotICAgIC8vIEF0IHRoYXQgcG9pbnQgdGhlIHByb2dyYW0gd2lsbCBvbmx5IGJlIHNl
cmlhbGl6ZWQgb25jZS4gQWxsIHRoZSBvdGhlciB0aW1lcyBpdCB3aWxsIG9ubHkgdXNlIHRoZSBJ
RCBvZiB0aGUgcHJvZ3JhbS4KLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGZpbHRlcnMuc2l6
ZSgpOyArK2kpIHsKLSAgICAgICAgY29uc3QgRmlsdGVyT3BlcmF0aW9uKiBvcGVyYXRpb24gPSBm
aWx0ZXJzLmF0KGkpOwotICAgICAgICBpZiAob3BlcmF0aW9uLT50eXBlKCkgIT0gRmlsdGVyT3Bl
cmF0aW9uOjpWQUxJREFURURfQ1VTVE9NKQotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAg
IGNvbnN0IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9tT3BlcmF0aW9uID0g
c3RhdGljX2Nhc3Q8Y29uc3QgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4ob3BlcmF0
aW9uKTsKLSAgICAgICAgQVNTRVJUKGN1c3RvbU9wZXJhdGlvbi0+dmFsaWRhdGVkUHJvZ3JhbSgp
LT5pc0luaXRpYWxpemVkKCkpOwotICAgICAgICBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxl
ZFByb2dyYW0qIHByb2dyYW0gPSBjdXN0b21PcGVyYXRpb24tPnZhbGlkYXRlZFByb2dyYW0oKS0+
cGxhdGZvcm1Db21waWxlZFByb2dyYW0oKTsKLQotICAgICAgICBSZWZQdHI8V2ViQ3VzdG9tRmls
dGVyUHJvZ3JhbVByb3h5PiBjdXN0b21GaWx0ZXJQcm9ncmFtUHJveHk7Ci0gICAgICAgIGlmIChw
cm9ncmFtLT5jbGllbnQoKSkKLSAgICAgICAgICAgIGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSA9
IHN0YXRpY19jYXN0PFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSo+KHByb2dyYW0tPmNsaWVu
dCgpKTsKLSAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBjdXN0b21GaWx0ZXJQcm9ncmFtUHJv
eHkgPSBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHk6OmNyZWF0ZSgpOwotICAgICAgICAgICAg
cHJvZ3JhbS0+c2V0Q2xpZW50KGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSk7Ci0gICAgICAgIH0K
LQotICAgICAgICBpZiAoIWN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS0+Y2xpZW50KCkpIHsKLSAg
ICAgICAgICAgIGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS0+c2V0Q2xpZW50KHRoaXMpOwotICAg
ICAgICAgICAgbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5hZGQoY3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5LmdldCgpKTsKLSAgICAgICAgICAgIG1fY29vcmRpbmF0b3ItPnN0YXRlKCkuY3VzdG9tRmls
dGVyc1RvQ3JlYXRlLmFwcGVuZChzdGQ6Om1ha2VfcGFpcihjdXN0b21GaWx0ZXJQcm9ncmFtUHJv
eHktPmlkKCksIGN1c3RvbU9wZXJhdGlvbi0+dmFsaWRhdGVkUHJvZ3JhbSgpLT52YWxpZGF0ZWRQ
cm9ncmFtSW5mbygpKSk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAvLyBJZiB0aGUg
Y2xpZW50IHdhcyBub3QgZGlzY29ubmVjdGVkIHRoZW4gdGhpcyBjb29yZGluYXRvciBtdXN0IGJl
IHRoZSBjbGllbnQgZm9yIGl0LgotICAgICAgICAgICAgQVNTRVJUKGN1c3RvbUZpbHRlclByb2dy
YW1Qcm94eS0+Y2xpZW50KCkgPT0gdGhpcyk7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLXZvaWQg
Q29vcmRpbmF0ZWRMYXllclRyZWVIb3N0OjpyZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHko
V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KiBjdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkpCi17
Ci0gICAgLy8gQXQgdGhpcyB0aW1lIHRoZSBzaGFkZXIgaXMgbm90IG5lZWRlZCBhbnltb3JlLCBz
byB3ZSByZW1vdmUgaXQgZnJvbSBvdXIgc2V0IGFuZAotICAgIC8vIHNlbmQgYSBtZXNzYWdlIHRv
IHRoZSBvdGhlciBwcm9jZXNzIHRvIGRlbGV0ZSBpdC4KLSAgICBtX2N1c3RvbUZpbHRlclByb2dy
YW1zLnJlbW92ZShjdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkpOwotICAgIG1fY29vcmRpbmF0b3It
PnN0YXRlKCkuY3VzdG9tRmlsdGVyc1RvUmVtb3ZlLmFwcGVuZChjdXN0b21GaWx0ZXJQcm9ncmFt
UHJveHktPmlkKCkpOwotfQotCi12b2lkIENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6ZGlzY29u
bmVjdEN1c3RvbUZpbHRlclByb2dyYW1zKCkKLXsKLSAgICAvLyBNYWtlIHN1cmUgdGhhdCBXZWJD
b3JlIHdpbGwgbm90IGNhbGwgaW50byB0aGlzIGNvb3JkaW5hdG9yIGFueW1vcmUuCi0gICAgSGFz
aFNldDxXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkqPjo6aXRlcmF0b3IgaXRlciA9IG1fY3Vz
dG9tRmlsdGVyUHJvZ3JhbXMuYmVnaW4oKTsKLSAgICBmb3IgKDsgaXRlciAhPSBtX2N1c3RvbUZp
bHRlclByb2dyYW1zLmVuZCgpOyArK2l0ZXIpCi0gICAgICAgICgqaXRlciktPnNldENsaWVudCgw
KTsKLX0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KIHZvaWQgQ29vcmRpbmF0ZWRM
YXllclRyZWVIb3N0OjpkaWRGbHVzaFJvb3RMYXllcigpCiB7CiAgICAgaWYgKG1fcGFnZU92ZXJs
YXlMYXllcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9D
b29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5oIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRM
YXllclRyZWVIb3N0LmgKaW5kZXggNTQ0ZTgyOC4uNTEyODEwZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0
ZWRMYXllclRyZWVIb3N0LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmgKQEAgLTI5LDEw
ICsyOSw2IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc0xheWVyRmFjdG9yeS5oPgogI2lu
Y2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVk
ZSAiV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmgiCi0jZW5kaWYKLQogbmFtZXNwYWNlIFdl
YkNvcmUgewogY2xhc3MgQ29vcmRpbmF0ZWRTdXJmYWNlOwogfQpAQCAtNDIsOSArMzgsNiBAQCBu
YW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFdlYlBhZ2U7CiAKIGNsYXNzIENvb3JkaW5hdGVkTGF5
ZXJUcmVlSG9zdCA6IHB1YmxpYyBMYXllclRyZWVIb3N0LCBwdWJsaWMgV2ViQ29yZTo6Q29tcG9z
aXRpbmdDb29yZGluYXRvcjo6Q2xpZW50Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICwg
V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Q2xpZW50Ci0jZW5kaWYKIHsKIHB1YmxpYzoKICAg
ICBzdGF0aWMgUGFzc1JlZlB0cjxDb29yZGluYXRlZExheWVyVHJlZUhvc3Q+IGNyZWF0ZShXZWJQ
YWdlKik7CkBAIC0xMDMsMzEgKzk2LDE2IEBAIHByaXZhdGU6CiAKICAgICAvLyBDb21wb3NpdGlu
Z0Nvb3JkaW5hdG9yOjpDbGllbnQKICAgICB2aXJ0dWFsIHZvaWQgZGlkRmx1c2hSb290TGF5ZXIo
KSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgd2lsbFN5bmNMYXllclN0YXRlKFdlYkNvcmU6
OkNvb3JkaW5hdGVkR3JhcGhpY3NMYXllclN0YXRlJikgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2
b2lkIG5vdGlmeUZsdXNoUmVxdWlyZWQoKSBvdmVycmlkZSB7IHNjaGVkdWxlTGF5ZXJGbHVzaCgp
OyB9OwogICAgIHZpcnR1YWwgdm9pZCBjb21taXRTY2VuZVN0YXRlKGNvbnN0IFdlYkNvcmU6OkNv
b3JkaW5hdGVkR3JhcGhpY3NTdGF0ZSYpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBwYWlu
dExheWVyQ29udGVudHMoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NMYXllciosIFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dCYsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNsaXBSZWN0KSBvdmVycmlk
ZTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICB2b2lkIHByZXBhcmVDdXN0b21GaWx0
ZXJQcm94aWVzRm9yQW5pbWF0aW9ucyhXZWJDb3JlOjpHcmFwaGljc0xheWVyQW5pbWF0aW9ucyYp
OwotCi0gICAgLy8gV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Q2xpZW50Ci0gICAgdm9pZCBy
ZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkoV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5
Kik7Ci0KLSAgICB2b2lkIGNoZWNrQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3hpZXMoY29uc3QgV2Vi
Q29yZTo6RmlsdGVyT3BlcmF0aW9ucyYpOwotICAgIHZvaWQgZGlzY29ubmVjdEN1c3RvbUZpbHRl
clByb2dyYW1zKCk7Ci0jZW5kaWYKLQogICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpDb21w
b3NpdGluZ0Nvb3JkaW5hdG9yPiBtX2Nvb3JkaW5hdG9yOwogCiAgICAgLy8gVGhlIHBhZ2Ugb3Zl
cmxheSBsYXllci4gV2lsbCBiZSBudWxsIGlmIHRoZXJlJ3Mgbm8gcGFnZSBvdmVybGF5LgogICAg
IHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpHcmFwaGljc0xheWVyPiBtX3BhZ2VPdmVybGF5TGF5
ZXI7CiAgICAgUmVmUHRyPFBhZ2VPdmVybGF5PiBtX3BhZ2VPdmVybGF5OwogCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotICAgIEhhc2hTZXQ8V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Kj4g
bV9jdXN0b21GaWx0ZXJQcm9ncmFtczsKLSNlbmRpZgotCiAgICAgYm9vbCBtX25vdGlmeUFmdGVy
U2NoZWR1bGVkTGF5ZXJGbHVzaDsKICAgICBib29sIG1faXNWYWxpZDsKICAgICBib29sIG1faXNT
dXNwZW5kZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAKaW5kZXggNzE2ZWRiZS4uYjMwODRhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMjQ2OSw3ICsyNDY5LDYgQEAgdm9pZCBXZWJQYWdl
Ojp1cGRhdGVQcmVmZXJlbmNlcyhjb25zdCBXZWJQcmVmZXJlbmNlc1N0b3JlJiBzdG9yZSkKICAg
ICBzZXR0aW5ncy5zZXRTaG93UmVwYWludENvdW50ZXIoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5
KFdlYlByZWZlcmVuY2VzS2V5Ojpjb21wb3NpdGluZ1JlcGFpbnRDb3VudGVyc1Zpc2libGVLZXko
KSkpOwogICAgIHNldHRpbmdzLnNldFNob3dUaWxlZFNjcm9sbGluZ0luZGljYXRvcihzdG9yZS5n
ZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OnRpbGVkU2Nyb2xsaW5nSW5kaWNh
dG9yVmlzaWJsZUtleSgpKSk7CiAgICAgc2V0dGluZ3Muc2V0QWdncmVzc2l2ZVRpbGVSZXRlbnRp
b25FbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6YWdn
cmVzc2l2ZVRpbGVSZXRlbnRpb25FbmFibGVkS2V5KCkpKTsKLSAgICBzZXR0aW5ncy5zZXRDU1ND
dXN0b21GaWx0ZXJFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNl
c0tleTo6Y3NzQ3VzdG9tRmlsdGVyRW5hYmxlZEtleSgpKSk7CiAgICAgUnVudGltZUVuYWJsZWRG
ZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRDU1NSZWdpb25zRW5hYmxlZChzdG9yZS5nZXRC
b29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmNzc1JlZ2lvbnNFbmFibGVkS2V5KCkp
KTsKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldENTU0Nv
bXBvc2l0aW5nRW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNL
ZXk6OmNzc0NvbXBvc2l0aW5nRW5hYmxlZEtleSgpKSk7CiAgICAgc2V0dGluZ3Muc2V0Q1NTR3Jp
ZExheW91dEVuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5
Ojpjc3NHcmlkTGF5b3V0RW5hYmxlZEtleSgpKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9tYWMvV2ViS2l0Mi5vcmRlciBiL1NvdXJjZS9XZWJLaXQyL21hYy9XZWJLaXQyLm9yZGVyCmlu
ZGV4IDlkZjk0MDUuLmVmNTVlZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL21hYy9XZWJL
aXQyLm9yZGVyCisrKyBiL1NvdXJjZS9XZWJLaXQyL21hYy9XZWJLaXQyLm9yZGVyCkBAIC0xODks
NyArMTg5LDYgQEAgX19aTjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5MzFjYW52YXNVc2VzQWNj
ZWxlcmF0ZWREcmF3aW5nS2V5RXYKIF9fWk42V2ViS2l0MTdXZWJQcmVmZXJlbmNlc0tleTI4Y29t
cG9zaXRpbmdCb3JkZXJzVmlzaWJsZUtleUV2CiBfX1pONldlYktpdDE3V2ViUHJlZmVyZW5jZXNL
ZXkzNmNvbXBvc2l0aW5nUmVwYWludENvdW50ZXJzVmlzaWJsZUtleUV2CiBfX1pONldlYktpdDE3
V2ViUHJlZmVyZW5jZXNLZXkzM3RpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlzaWJsZUtleUV2Ci1f
X1pONldlYktpdDE3V2ViUHJlZmVyZW5jZXNLZXkyNWNzc0N1c3RvbUZpbHRlckVuYWJsZWRLZXlF
dgogX19aTjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5MTV3ZWJHTEVuYWJsZWRLZXlFdgogX19a
TjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5MjhtdWx0aXRocmVhZGVkV2ViR0xFbmFibGVkS2V5
RXYKIF9fWk42V2ViS2l0MTdXZWJQcmVmZXJlbmNlc0tleTMwZm9yY2VTb2Z0d2FyZVdlYkdMUmVu
ZGVyaW5nS2V5RXYKZGlmZiAtLWdpdCBhL1NvdXJjZS9hdXRvdG9vbHMvRmluZERlcGVuZGVuY2ll
cy5tNCBiL1NvdXJjZS9hdXRvdG9vbHMvRmluZERlcGVuZGVuY2llcy5tNAppbmRleCBlZmMyZGIz
Li40YmU4YThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvYXV0b3Rvb2xzL0ZpbmREZXBlbmRlbmNpZXMu
bTQKKysrIGIvU291cmNlL2F1dG90b29scy9GaW5kRGVwZW5kZW5jaWVzLm00CkBAIC0zNDAsMTMg
KzM0MCwxMSBAQCBpZiB0ZXN0ICIkZW5hYmxlX29wY29kZV9zdGF0cyIgPSAieWVzIjsgdGhlbgog
ICAgIGZpCiBmaQogCi0jIEVuYWJsZSBDU1MgRmlsdGVycyBhbmQgU2hhZGVycyBpZiBhY2NlbGVy
YXRlZF9jb21wb3NpdGluZyBpcyB0dXJuZWQgb24uCisjIEVuYWJsZSBDU1MgRmlsdGVycyBpZiBh
Y2NlbGVyYXRlZF9jb21wb3NpdGluZyBpcyB0dXJuZWQgb24uCiBlbmFibGVfY3NzX2ZpbHRlcnM9
bm87Ci1lbmFibGVfY3NzX3NoYWRlcnM9bm87Ci1BQ19NU0dfQ0hFQ0tJTkcoW3doZXRoZXIgdG8g
ZW5hYmxlIENTUyBGaWx0ZXJzIGFuZCBTaGFkZXJzXSkKK0FDX01TR19DSEVDS0lORyhbd2hldGhl
ciB0byBlbmFibGUgQ1NTIEZpbHRlcnNdKQogaWYgdGVzdCAiJGVuYWJsZV9hY2NlbGVyYXRlZF9j
b21wb3NpdGluZyIgPSAieWVzIiAmJiB0ZXN0ICIkZm91bmRfb3BlbmdsIiA9ICJ5ZXMiOyB0aGVu
CiAgICAgZW5hYmxlX2Nzc19maWx0ZXJzPXllczsKLSAgICBlbmFibGVfY3NzX3NoYWRlcnM9eWVz
OwogZmkKIEFDX01TR19SRVNVTFQoWyRlbmFibGVfY3NzX2ZpbHRlcnNdKQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvYXV0b3Rvb2xzL1NldHVwV2ViS2l0RmVhdHVyZXMubTQgYi9Tb3VyY2UvYXV0b3Rv
b2xzL1NldHVwV2ViS2l0RmVhdHVyZXMubTQKaW5kZXggOWU4NTNiYS4uOWQ2YWI2ZCAxMDA2NDQK
LS0tIGEvU291cmNlL2F1dG90b29scy9TZXR1cFdlYktpdEZlYXR1cmVzLm00CisrKyBiL1NvdXJj
ZS9hdXRvdG9vbHMvU2V0dXBXZWJLaXRGZWF0dXJlcy5tNApAQCAtMjksMTIgKzI5LDYgQEAgZWxz
ZQogICAgIENPTkZJR1VSQUJMRV9GRUFUVVJFX0RFRklORVM9IiRDT05GSUdVUkFCTEVfRkVBVFVS
RV9ERUZJTkVTIEVOQUJMRV9WSURFTz0wIgogZmkKIAotaWYgdGVzdCAiJGVuYWJsZV9jc3Nfc2hh
ZGVycyIgPSAieWVzIjsgdGhlbgotICAgIENPTkZJR1VSQUJMRV9GRUFUVVJFX0RFRklORVM9IiRD
T05GSUdVUkFCTEVfRkVBVFVSRV9ERUZJTkVTIEVOQUJMRV9DU1NfU0hBREVSUz0xIgotZWxzZQot
ICAgIENPTkZJR1VSQUJMRV9GRUFUVVJFX0RFRklORVM9IiRDT05GSUdVUkFCTEVfRkVBVFVSRV9E
RUZJTkVTIEVOQUJMRV9DU1NfU0hBREVSUz0wIgotZmkKLQogaWYgdGVzdCAiJGVuYWJsZV9jc3Nf
ZmlsdGVycyIgPSAieWVzIjsgdGhlbgogICAgIENPTkZJR1VSQUJMRV9GRUFUVVJFX0RFRklORVM9
IiRDT05GSUdVUkFCTEVfRkVBVFVSRV9ERUZJTkVTIEVOQUJMRV9DU1NfRklMVEVSUz0xIgogZWxz
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlIGIvU291cmNl
L2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCmluZGV4IDkyMzgyYmQuLmIwNjdiOTYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQorKysgYi9Tb3VyY2UvY21h
a2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKQEAgLTM1LDcgKzM1LDYgQEAgbWFjcm8oV0VCS0lUX09Q
VElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfQ1NTX0lNQUdFX1JF
U09MVVRJT04gIlRvZ2dsZSBDU1MgaW1hZ2UtcmVzb2x1dGlvbiBzdXBwb3J0IiBPRkYpCiAgICAg
V0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0NTU19JTUFHRV9TRVQgIlRvZ2dsZSBDU1MgaW1h
Z2Utc2V0IHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfQ1NT
X1JFR0lPTlMgIlRvZ2dsZSBDU1MgcmVnaW9ucyBzdXBwb3J0IiBPRkYpCi0gICAgV0VCS0lUX09Q
VElPTl9ERUZJTkUoRU5BQkxFX0NTU19TSEFERVJTICJUb2dnbGUgQ1NTIFNoYWRlcnMgKHdpdGhp
biBDU1MgRmlsdGVycykgc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVO
QUJMRV9DU1NfU0hBUEVTICJUb2dnbGUgQ1NTIFNoYXBlcyBzdXBwb3J0IiBPRkYpCiAgICAgV0VC
S0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04gIlRvZ2dsZSBDU1Mg
c3RpY2t5IHBvc2l0aW9uIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShF
TkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEICJUb2dnbGUgc3VwcG9y
dCBmb3IgdW5wcmVmaXhlZCBDU1MgYW5pbWF0aW9ucyBhbmQgdHJhbnNmb3JtcyIgT04pCmRpZmYg
LS1naXQgYS9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZSBiL1NvdXJjZS9jbWFrZWNvbmZpZy5o
LmNtYWtlCmluZGV4IDA2MTI5OWEuLjY0ZTI0NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZWNv
bmZpZy5oLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlCkBAIC0yNCw3ICsy
NCw2IEBACiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04KICNjbWFr
ZWRlZmluZTAxIEVOQUJMRV9DU1NfSU1BR0VfU0VUCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfQ1NT
X1JFR0lPTlMKLSNjbWFrZWRlZmluZTAxIEVOQUJMRV9DU1NfU0hBREVSUwogI2NtYWtlZGVmaW5l
MDEgRU5BQkxFX0NTU19TSEFQRVMKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9DU1NfU1RJQ0tZX1BP
U0lUSU9OCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19V
TlBSRUZJWEVECg==
</data>
<flag name="commit-queue"
          id="245770"
          type_id="3"
          status="-"
          setter="mvujovic"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221870</attachid>
            <date>2014-01-22 09:45:51 -0800</date>
            <delta_ts>2014-01-22 15:12:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>127382-2.patch</filename>
            <type>text/plain</type>
            <size>1338651</size>
            <attacher name="Max Vujovic">mvujovic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10
ZXN0LWhlbHBlcnMuanMgYi9MYXlvdXRUZXN0cy9hbmltYXRpb25zL3Jlc291cmNlcy9hbmltYXRp
b24tdGVzdC1oZWxwZXJzLmpzCmluZGV4IDgxZmFmODAuLmE3MjNiNGEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10ZXN0LWhlbHBlcnMuanMK
KysrIGIvTGF5b3V0VGVzdHMvYW5pbWF0aW9ucy9yZXNvdXJjZXMvYW5pbWF0aW9uLXRlc3QtaGVs
cGVycy5qcwpAQCAtMTQ3LDE4ICsxNDcsMTMgQEAgZnVuY3Rpb24gcGFyc2VGaWx0ZXJJbWFnZShz
KQogCiBmdW5jdGlvbiBwYXJzZUZpbHRlckZ1bmN0aW9uTGlzdChzKQogewotICAgIHZhciByZWcg
PSAvXCkqXHMqKGJsdXJ8YnJpZ2h0bmVzc3xjb250cmFzdHxjdXN0b218ZHJvcFwtc2hhZG93fGdy
YXlzY2FsZXxodWVcLXJvdGF0ZXxpbnZlcnR8b3BhY2l0eXxzYXR1cmF0ZXxzZXBpYXx1cmwpXCgv
CisgICAgdmFyIHJlZyA9IC9cKSpccyooYmx1cnxicmlnaHRuZXNzfGNvbnRyYXN0fGRyb3BcLXNo
YWRvd3xncmF5c2NhbGV8aHVlXC1yb3RhdGV8aW52ZXJ0fG9wYWNpdHl8c2F0dXJhdGV8c2VwaWF8
dXJsKVwoLwogICAgIHZhciBtYXRjaGVzID0gcy5zcGxpdChyZWcpOwogCiAgICAgLy8gRmlyc3Qg
aXRlbSBtdXN0IGJlIGVtcHR5LiBBbGwgb3RoZXIgaXRlbXMgYXJlIG9mIGZ1bmN0aW9uTmFtZSwg
ZnVuY3Rpb25WYWx1ZS4KICAgICBpZiAoIW1hdGNoZXMgfHwgbWF0Y2hlcy5zaGlmdCgpICE9ICIi
KQogICAgICAgICByZXR1cm4gbnVsbDsKIAotICAgIC8vIFJlZ0V4IGFib3ZlIGNhbiBub3QgaGFu
ZGxlIGRlcHJlY2F0ZWQgY3VzdG9tKCkgZnVuY3Rpb24KLSAgICB2YXIgY3VzdG9tUG9zID0gbWF0
Y2hlcy5pbmRleE9mKCJjdXN0b20iKTsKLSAgICBpZiAoY3VzdG9tUG9zID49IDAgJiYgbWF0Y2hl
c1tjdXN0b21Qb3MrMV0gPT09ICIiKQotICAgICAgICByZXR1cm4gcGFyc2VEZXByZWNhdGVkQ3Vz
dG9tRmlsdGVyRnVuY3Rpb24ocyk7Ci0KICAgICAvLyBPZGQgaXRlbXMgYXJlIHRoZSBmdW5jdGlv
biBuYW1lLCBldmVuIGl0ZW1zIHRoZSBmdW5jdGlvbiB2YWx1ZS4KICAgICBpZiAoIW1hdGNoZXMu
bGVuZ3RoIHx8IG1hdGNoZXMubGVuZ3RoICUgMikKICAgICAgICAgcmV0dXJuIG51bGw7CkBAIC0x
NzIsMzggKzE2NywxMiBAQCBmdW5jdGlvbiBwYXJzZUZpbHRlckZ1bmN0aW9uTGlzdChzKQogICAg
ICAgICAgICAgLy8gRklYTUU6IFN1cHBvcnQgcGFyc2luZyBvZiBkcm9wLXNoYWRvdy4KICAgICAg
ICAgICAgIGZ1bmN0aW9uTGlzdC5wdXNoKGZ1bmN0aW9uVmFsdWUpOwogICAgICAgICAgICAgY29u
dGludWU7Ci0gICAgICAgIH0gZWxzZSBpZiAoZnVuY3Rpb25OYW1lID09ICJjdXN0b20iKSB7Ci0g
ICAgICAgICAgICB2YXIgZmlsdGVyUGFyYW1zOwotICAgICAgICAgICAgaWYgKCF3aW5kb3cuZ2V0
Q3VzdG9tRmlsdGVyUGFyYW1ldGVycykKLSAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3Io
ImdldEN1c3RvbUZpbHRlclBhcmFtZXRlcnMgbm90IGZvdW5kLiBEaWQgeW91IGluY2x1ZGUgY3Vz
dG9tLWZpbHRlci1wYXJzZXIuanM/Iik7Ci0gICAgICAgICAgICB2YXIgZmlsdGVyUGFyYW1zID0g
Z2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhmdW5jdGlvblZhbHVlKTsKLSAgICAgICAgICAgIGlm
ICghZmlsdGVyUGFyYW1zKSB7Ci0gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcigiRXJyb3Ig
b24gcGFyc2luZyBjdXN0b20gZmlsdGVyIHBhcmFtZXRlcnMgIiwgZnVuY3Rpb25WYWx1ZSk7Ci0g
ICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBm
dW5jdGlvbkxpc3QucHVzaChmaWx0ZXJQYXJhbXMpOwotICAgICAgICAgICAgY29udGludWU7CiAg
ICAgICAgIH0KICAgICAgICAgZnVuY3Rpb25MaXN0LnB1c2gocGFyc2VGbG9hdChmdW5jdGlvblZh
bHVlKSk7CiAgICAgfQogICAgIHJldHVybiBmdW5jdGlvbkxpc3Q7CiB9CiAKLS8vIEZJWE1FOiBS
ZW1vdmUgZnVuY3Rpb24gYW5kIGNhbGxlciB3aGVuIHdlIHJlbW92ZWQgdGhlIGRlcHJlY2F0ZWQg
c3ludGF4IG9mCi0vLyB0aGUgY3VzdG9tIGZpbHRlciBmdW5jdGlvbi4KLWZ1bmN0aW9uIHBhcnNl
RGVwcmVjYXRlZEN1c3RvbUZpbHRlckZ1bmN0aW9uKHMpCi17Ci0gICAgdmFyIGZpbHRlclJlc3Vs
dCA9IHMubWF0Y2goLyhcdyspXCgoLispXCkvKTsKLSAgICB2YXIgZmlsdGVyUGFyYW1zID0gZmls
dGVyUmVzdWx0WzJdOwotCi0gICAgaWYgKGZpbHRlclJlc3VsdFsxXSAhPSAiY3VzdG9tIikKLSAg
ICAgICAgcmV0dXJuIG51bGw7Ci0KLSAgICBpZiAoIXdpbmRvdy5nZXRDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJzKQotICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImdldEN1c3RvbUZpbHRlclBhcmFtZXRl
cnMgbm90IGZvdW5kLiBEaWQgeW91IGluY2x1ZGUgY3VzdG9tLWZpbHRlci1wYXJzZXIuanM/Iik7
Ci0gICAgcmV0dXJuIFsiY3VzdG9tIiwgZ2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhmaWx0ZXJQ
YXJhbXMpXTsKLX0KLQogZnVuY3Rpb24gcGFyc2VCYXNpY1NoYXBlKHMpCiB7CiAgICAgdmFyIHNo
YXBlRnVuY3Rpb24gPSBzLm1hdGNoKC8oXHcrKVwoKC4rKVwpLyk7CkBAIC0yOTcsMTMgKzI2Niw2
IEBAIGZ1bmN0aW9uIGNvbXBhcmVGaWx0ZXJGdW5jdGlvbnMoY29tcHV0ZWRWYWx1ZSwgZXhwZWN0
ZWRWYWx1ZSwgdG9sZXJhbmNlKQogICAgICAgICAgICAgY29uc29sZS5lcnJvcigiRmlsdGVyIGZ1
bmN0aW9ucyBkbyBub3QgbWF0Y2guIik7CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAg
ICAgIH0KLSAgICAgICAgaWYgKGFjdHVhbFtpXSA9PSAiY3VzdG9tIikgewotICAgICAgICAgICAg
aWYgKCFjdXN0b21GaWx0ZXJQYXJhbWV0ZXJNYXRjaChhY3R1YWxbaSsxXSwgZXhwZWN0ZWRbaSsx
XSwgdG9sZXJhbmNlKSkgewotICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoIkN1c3RvbSBm
aWx0ZXIgcGFyYW1ldGVycyBkbyBub3QgbWF0Y2guIik7Ci0gICAgICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0K
ICAgICAgICAgaWYgKCFpc0Nsb3NlRW5vdWdoKGFjdHVhbFtpKzFdLCBleHBlY3RlZFtpKzFdLCB0
b2xlcmFuY2UpKSB7CiAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCJGaWx0ZXIgZnVuY3Rpb24g
dmFsdWVzIGRvIG5vdCBtYXRjaC4iKTsKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTMz
MCw0OSArMjkyLDYgQEAgZnVuY3Rpb24gYmFzaWNTaGFwZVBhcmFtZXRlcnNNYXRjaChwYXJhbUxp
c3QxLCBwYXJhbUxpc3QyLCB0b2xlcmFuY2UpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWZ1bmN0
aW9uIGN1c3RvbUZpbHRlclBhcmFtZXRlck1hdGNoKHBhcmFtMSwgcGFyYW0yLCB0b2xlcmFuY2Up
Ci17Ci0gICAgaWYgKHBhcmFtMS50eXBlICE9ICJwYXJhbWV0ZXIiKSB7Ci0gICAgICAgIC8vIENo
ZWNraW5nIGZvciBzaGFkZXIgdXJpcyBhbmQgb3RoZXIga2V5d29yZHMuIFRoZXkgbmVlZCB0byBi
ZSBleGFjdGx5IHRoZSBzYW1lLgotICAgICAgICByZXR1cm4gKHBhcmFtMS50eXBlID09IHBhcmFt
Mi50eXBlICYmIHBhcmFtMS52YWx1ZSA9PSBwYXJhbTIudmFsdWUpOwotICAgIH0KLQotICAgIGlm
IChwYXJhbTEubmFtZSAhPSBwYXJhbTIubmFtZSB8fCBwYXJhbTEudmFsdWUubGVuZ3RoICE9IHBh
cmFtMi52YWx1ZS5sZW5ndGgpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGZvciAodmFy
IGogPSAwOyBqIDwgcGFyYW0xLnZhbHVlLmxlbmd0aDsgKytqKSB7Ci0gICAgICAgIHZhciB2YWwx
ID0gcGFyYW0xLnZhbHVlW2pdLAotICAgICAgICAgICAgdmFsMiA9IHBhcmFtMi52YWx1ZVtqXTsK
LSAgICAgICAgaWYgKHZhbDEudHlwZSAhPSB2YWwyLnR5cGUpCi0gICAgICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgICAgIHN3aXRjaCAodmFsMS50eXBlKSB7Ci0gICAgICAgIGNhc2UgImZ1bmN0
aW9uIjoKLSAgICAgICAgICAgIGlmICh2YWwxLm5hbWUgIT0gdmFsMi5uYW1lKQotICAgICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIGlmICh2YWwxLmFyZ3VtZW50cy5sZW5n
dGggIT0gdmFsMi5hcmd1bWVudHMubGVuZ3RoKSB7Ci0gICAgICAgICAgICAgICAgY29uc29sZS5l
cnJvcigiQXJndW1lbnRzIGxlbmd0aCBtaXNtYXRjaDogIiwgdmFsMS5hcmd1bWVudHMubGVuZ3Ro
LCAiLyIsIHZhbDIuYXJndW1lbnRzLmxlbmd0aCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZm9yICh2YXIgdCA9IDA7IHQgPCB2YWwx
LmFyZ3VtZW50cy5sZW5ndGg7ICsrdCkgewotICAgICAgICAgICAgICAgIGlmICh2YWwxLmFyZ3Vt
ZW50c1t0XS50eXBlICE9ICJudW1iZXIiIHx8IHZhbDIuYXJndW1lbnRzW3RdLnR5cGUgIT0gIm51
bWJlciIpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgICAg
ICBpZiAoIWlzQ2xvc2VFbm91Z2godmFsMS5hcmd1bWVudHNbdF0udmFsdWUsIHZhbDIuYXJndW1l
bnRzW3RdLnZhbHVlLCB0b2xlcmFuY2UpKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFs
c2U7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSAibnVt
YmVyIjoKLSAgICAgICAgICAgIGlmICghaXNDbG9zZUVub3VnaCh2YWwxLnZhbHVlLCB2YWwyLnZh
bHVlLCB0b2xlcmFuY2UpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgY29uc29sZS5lcnJvcigi
VW5zdXBwb3J0ZWQgcGFyYW1ldGVyIHR5cGUgIiwgdmFsMS50eXBlKTsKLSAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIHJldHVybiB0cnVlOwotfQotCiBm
dW5jdGlvbiBjaGVja0V4cGVjdGVkVmFsdWUoZXhwZWN0ZWQsIGluZGV4KQogewogICAgIHZhciBh
bmltYXRpb25OYW1lID0gZXhwZWN0ZWRbaW5kZXhdWzBdOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVs
ZS1pbnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU0YzI5ZjguLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
YXQtcnVsZS1pbnZhbGlkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDU2ICswLDAg
QEAKLVRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtpdC1maWx0ZXIuCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLUZpbHRlciBhdC1ydWxlIHN5bWJvbCB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotVW5wcmVmaXhlZCBydWxlLgotQGZpbHRlciBteS1m
aWx0ZXIgeyB9Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24gaW5zdGFuY2VvZiBET01FeGNlcHRp
b24gaXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0aW9uLmNvZGUgaXMgRE9NRXhjZXB0aW9u
LlNZTlRBWF9FUlIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
RmlsdGVyIG5hbWUgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0KLU1pc3NpbmcgZmlsdGVyIG5hbWUgaWRlbnRpZmllci4KLUAtd2Via2l0LWZpbHRlciB7
IH0KLVBBU1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0
cnVlCi1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFY
X0VSUgotCi1GaWx0ZXIgbmFtZSBhcyBzdHJpbmcuCi1ALXdlYmtpdC1maWx0ZXIgJ215LWZpbHRl
cicgeyB9Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24gaW5zdGFuY2VvZiBET01FeGNlcHRpb24g
aXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0aW9uLmNvZGUgaXMgRE9NRXhjZXB0aW9uLlNZ
TlRBWF9FUlIKLQotRmlsdGVyIG5hbWUgYXMgbnVtYmVyLgotQC13ZWJraXQtZmlsdGVyIDEyMyB7
IH0KLVBBU1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0
cnVlCi1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFY
X0VSUgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1GaWx0ZXIg
YXQtcnVsZSBib2R5IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1NaXNzaW5nIHJ1bGUgYm9keS4KLUAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIKLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
Ci1NaXNzaW5nIG9wZW5pbmcgYnJhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIH0KLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
Ci1NaXNzaW5nIGNsb3NpbmcgYnJhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsKLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE4YmYxMTIuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
YXQtcnVsZS1pbnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IURP
Q1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFk
PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0i
Y29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0
ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0
cy9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1hdC1ydWxlLXZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1
bGUtdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNDhk
ZGRhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsMTI4ICswLDAgQEAKLVRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtp
dC1maWx0ZXIuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUZpbHRlciBhdC1ydWxlIHRlc3RzLgotPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBydWxlLCBzZXBh
cmF0ZWQgYnkgc2luZ2xlIHNwYWNlcy4KLUAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Ci1Q
QVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NS
dWxlIGluc3RhbmNlb2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUu
Y29uc3RydWN0b3IgPT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxl
Ll9fcHJvdG9fXyA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotCi1FbXB0eSBydWxlLCBzZXBhcmF0ZWQgYnkgbXVs
dGlwbGUgc3BhY2VzLgotICAgQC13ZWJraXQtZmlsdGVyICAgbXktZmlsdGVyICAgeyAgIH0gICAK
LVBBU1MgY3NzUnVsZS5jc3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNz
c1J1bGUgaW5zdGFuY2VvZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVs
ZS5jb25zdHJ1Y3RvciA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1
bGUuX19wcm90b19fID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi0KLUVtcHR5IHJ1bGUsIG5vIGV4dHJhIHdoaXRl
c3BhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVye30KLVBBU1MgY3NzUnVsZS5jc3NUZXh0
IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNzc1J1bGUgaW5zdGFuY2VvZiBXZWJL
aXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9PT0gV2Vi
S2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90b19fID09PSBXZWJL
aXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi0KLVJ1bGUgd2l0aCBhcmJpdHJhcnkgcHJvcGVydGllcy4KLUAtd2Via2l0LWZpbHRl
ciBteS1maWx0ZXIgeyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IH0KLVBBU1MgY3NzUnVs
ZS5jc3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgd2lkdGg6IDEwMHB4OyBo
ZWlnaHQ6IDEwMHB4OyB9IgotUEFTUyBjc3NSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMg
dHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlz
IHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnd2lkdGgn
KSBpcyAiMTAwcHgiCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2hlaWdodCcp
IGlzICIxMDBweCIKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDIKLQotRW1wdHkgcnVsZSwg
Y29tbWVudCBzZXBhcmF0b3JzCi1ALXdlYmtpdC1maWx0ZXIvKiovbXktZmlsdGVyLyoqL3sgfQot
UEFTUyBjc3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Igot
UEFTUyBjc3NSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1MgY3Nz
UnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxl
LmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVs
ZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJvdG90eXBlIGlzIHRydWUKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLQotRW1wdHkgcnVsZSwgY29tbWVudCtzcGFjZSBz
ZXBhcmF0b3JzCi1ALXdlYmtpdC1maWx0ZXIvKiovIG15LWZpbHRlci8qKi8geyB9Ci1QQVNTIGNz
c1J1bGUuY3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NSdWxlIGlu
c3RhbmNlb2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29uc3Ry
dWN0b3IgPT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLl9fcHJv
dG9fXyA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotCi1FbXB0eSBydWxlLCBzcGFjZStjb21tZW50IHNlcGFyYXRv
cnMKLUAtd2Via2l0LWZpbHRlciAvKiovbXktZmlsdGVyIC8qKi97IH0KLVBBU1MgY3NzUnVsZS5j
c3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNzc1J1bGUgaW5zdGFuY2Vv
ZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9
PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90b19fID09
PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi0KLUVtcHR5IHJ1bGUsIHNwYWNlK2NvbW1lbnQrc3BhY2Ugc2VwYXJhdG9y
cwotQC13ZWJraXQtZmlsdGVyIC8qKi8gbXktZmlsdGVyIC8qKi8geyB9Ci1QQVNTIGNzc1J1bGUu
Y3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1QQVNTIGNzc1J1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NSdWxlIGluc3RhbmNl
b2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29uc3RydWN0b3Ig
PT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLl9fcHJvdG9fXyA9
PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci1OZXN0ZWQgZmlsdGVyIGF0LXJ1bGUgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU5lc3RlZCBydWxlLgotQC13ZWJraXQtZmlsdGVyIHBhcmVudC1m
aWx0ZXIgeyBALXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSB9Ci1QQVNTIGNzc1J1bGUu
Y3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IgotUEFTUyBjc3NS
dWxlLnR5cGUgaXMgMTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1
bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJS
dWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1
bGUucHJvdG90eXBlIGlzIHRydWUKLQotVHdpY2UgbmVzdGVkIHJ1bGUuCi1ALXdlYmtpdC1maWx0
ZXIgcGFyZW50LWZpbHRlciB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyBALXdlYmtp
dC1maWx0ZXIgZ3JhbmRjaGlsZC1maWx0ZXIgfSB9Ci1QQVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAi
QC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IgotUEFTUyBjc3NSdWxlLnR5cGUgaXMg
MTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQot
UEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUK
LVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJvdG90eXBl
IGlzIHRydWUKLQotTmVzdGVkIHJ1bGUgaW5zaWRlIGFyYml0cmFyeSBydWxlLgotQGZvbnQtZmFj
ZSB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IH0KLVBBU1MgY3NzUnVsZS5jc3NU
ZXh0IGlzICJAZm9udC1mYWNlIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDUKLVBBU1MgY3Nz
UnVsZSBpbnN0YW5jZW9mIENTU0ZvbnRGYWNlUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29u
c3RydWN0b3IgPT09IENTU0ZvbnRGYWNlUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90
b19fID09PSBDU1NGb250RmFjZVJ1bGUucHJvdG90eXBlIGlzIHRydWUKLQotTmVzdGVkIHJ1bGUg
aW5zaWRlIG1lZGlhIHF1ZXJ5LgotQG1lZGlhIHNjcmVlbiB7IEAtd2Via2l0LWZpbHRlciBjaGls
ZC1maWx0ZXIgeyB9IH0KLVBBU1MgY3NzUnVsZS5jc3NUZXh0IGlzICJAbWVkaWEgc2NyZWVuIHsg
XG4gIEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9XG59IgotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgNAotUEFTUyBjc3NSdWxlIGluc3RhbmNlb2YgQ1NTTWVkaWFSdWxlIGlzIHRydWUKLVBB
U1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9PT0gQ1NTTWVkaWFSdWxlIGlzIHRydWUKLVBBU1MgY3Nz
UnVsZS5fX3Byb3RvX18gPT09IENTU01lZGlhUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBj
c3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IgotUEFT
UyBjc3NSdWxlLnR5cGUgaXMgMTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0Zp
bHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NG
aWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0Zp
bHRlclJ1bGUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFy
c2luZy1hdC1ydWxlLXZhbGlkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk4
YTM5YTQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRo
LWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVsZS12YWxpZC5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsMTMgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRN
TC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3Jp
cHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3Nj
cmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1p
bnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1pbnZhbGlkLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODQ4YTlmZi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFy
c2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSw2MzcgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiBjdXN0b20oKSBmdW5jdGlvbiBv
ZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUN1c3Rv
bSBmdW5jdGlvbiB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLQotRW1wdHkgY3VzdG9tIGZ1bmN0aW9uLgotY3VzdG9tKCkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1PbmUgY29tbWEgaW4gY3VzdG9tIGZ1bmN0aW9uLgotY3VzdG9tKCwpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTXVsdGlwbGUgY29tbWFzIGluIGN1c3RvbSBmdW5jdGlvbi4KLWN1c3RvbSgs
LCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci1GaWx0ZXIgbmFtZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLQotTm8gZmlsdGVyIG5hbWUgd2l0aCBwYXJhbWV0ZXIuCi1jdXN0b20o
biAxKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IGZpbHRlciBuYW1lcy4KLWN1c3Rv
bShteS1maWx0ZXItMSBteS1maWx0ZXItMikKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1GaWx0ZXIg
bmFtZSBhcyBzdHJpbmcuCi1jdXN0b20oJ215LWZpbHRlci0xJykKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1GaWx0ZXIgbmFtZSBhcyBudW1iZXIuCi1jdXN0b20oMSkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1TcGFjZSBiZXR3ZWVuIGZpbHRlciBuYW1lIGFuZCBwYXJhbWV0ZXIuCi1jdXN0b20obXkt
ZmlsdGVyIG4gMSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVz
LgotY3VzdG9tKG15LWZpbHRlciwgbiAxIDIgMyA0IDUpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
SW52YWxpZCBwYXJhbWV0ZXIgdHlwZS4KLWN1c3RvbShteS1maWx0ZXIsIG4gMS4wIDIuMCAndGV4
dCcpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gYWZ0ZXIg
Y29tbWEuCi1jdXN0b20obXktZmlsdGVyLCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJh
bWV0ZXIgZGVmaW5pdGlvbiB3aXRoIHR3byBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCwpCi1Q
QVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gYmVmb3JlIHZhbGlk
IHBhcmFtZXRlciBkZWZpbnRpb24uCi1jdXN0b20obXktZmlsdGVyLCAsIG4gMSkKLVBBU1Mgc3R5
bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVy
JykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUuCi1jdXN0b20obXktZmlsdGVyLCBuKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHBhcmFtZXRlciB2YWx1ZSB3aXRoIG11bHRpcGxlIHBh
cmFtZXRlcnMuCi1jdXN0b20obXktZmlsdGVyLCBuMSwgbjIsIG4zKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUNvbG9yIHBh
cmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LQotTm8gcmdiIGNvbG9yIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIGMgcmdiKCwsKSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1ObyBoc2wgY29sb3IgdmFsdWVzLgotY3VzdG9tKG15LWZpbHRl
ciwgYyBoc2woLCwpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUhleCB3aXRoIDggY2hhcmFjdGVy
cy4KLWN1c3RvbShteS1maWx0ZXIsIGMgI0ZGMDAwMEZGKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LUhleCB3aXRoIDIgY2hhcmFjdGVyLgotY3VzdG9tKG15LWZpbHRlciwgYyAjRkYpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpIGlzIG51bGwKLQotUmdiYSB3aXRoIDMgdmFsdWVzIGFuZCAyIGNvbW1hcy4KLWN1c3RvbSht
eS1maWx0ZXIsIGMgcmdiYSgyNTUsIDAsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIg
dGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBp
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1y
b3RhdGUoMGRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTXVsdGlwbGUgaW52YWxpZCB0cmFu
c2Zvcm0gZnVuY3Rpb25zLgotY3VzdG9tKG15LWZpbHRlciwgdCBpbnZhbGlkLXJvdGF0ZSgwZGVn
KSBpbnZhbGlkLXBlcnNwZWN0aXZlKDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQg
dHJhbnNmb3JtIGZ1bmN0aW9uIGJldHdlZW4gdmFsaWQgb25lcy4KLWN1c3RvbShteS1maWx0ZXIs
IHQgcm90YXRlKDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApKQotUEFT
UyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIGludmFs
aWQgb25lcy4KLWN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUoMGRlZykgcGVyc3Bl
Y3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENT
U1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVmFs
aWQgdHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGhvdXQgbGVhZGluZyBjb21tYS4KLWN1c3RvbShteS1m
aWx0ZXIgdCBwZXJzcGVjdGl2ZSgwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFu
c2Zvcm0gZnVuY3Rpb24gd2l0aCB0cmFpbGluZyBjb21tYS4KLWN1c3RvbShteS1maWx0ZXIsIHQg
cGVyc3BlY3RpdmUoMCksKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JV
TEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBm
dW5jdGlvbiB3aXRoIHRyYWlsaW5nIGNvbW1hIGFuZCB3aXRob3V0IGxlYWRpbmcgY29tbWEuCi1j
dXN0b20obXktZmlsdGVyIHQgcGVyc3BlY3RpdmUoMCksKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LUludmFsaWQgdHJhbnNmb3JtIHdpdGggdHJhaWxpbmcgY29tbWEuCi1jdXN0b20obXktZmlsdGVy
LCB0IGludmFsaWQtcm90YXRlKDBkZWcpLCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHRyYW5zZm9ybSB3aXRob3V0IGxlYWRpbmcgY29tbWEuCi1jdXN0b20obXktZmlsdGVyIHQgaW52
YWxpZF9yb3RhdGUoMGRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVf
UlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3Jt
IHdpdGggaW52YWxpZCBjaGFyYWN0ZXJzCi1jdXN0b20obXktZmlsdGVyLHQgcm90YXRlKDBkZWcp
ICouLSwpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1PbmUgY29tbWEgaW4gYXJyYXkuCi1j
dXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRp
cGxlIGNvbW1hcyBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCwsKSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1NdWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5
LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgsLDEsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci1PbmUgY29tbWEgZm9sbG93ZWQgYnkgYSBuZWdhdGl2ZSB2YWx1ZSBpbiBhcnJheS4KLWN1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoLC00KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1PbmUgY29t
bWEgZm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoLDQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBuZWdhdGl2ZSB2YWx1ZSBmb2xsb3dl
ZCBieSBhIGNvbW1hIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgtNCwpKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFy
cmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSg0LCkpCi1QQVNTIHN0eWxlUnVsZS50eXBl
IGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxp
ZCB2YWx1ZXMgZm9sbG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KDEsIDIsIDMsIDQsIHgpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVR3byBjb21t
YXMgYXMgc2VwYXJhdG9yIGJldHdlZW4gdmFsdWVzIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgxLCAyLCAsIDQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNU
WUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUxlYWRpbmcgY29t
bWEgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwxLCAyLCAzLCA0KSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheS4K
LWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMTsgMjsgMzsgNCkpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoMSAyIDMgNCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVf
UlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVk
IHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KDEgMiAzIDQsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0
ZWQgdmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoLCAxIDIgMyA0KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1OYU4gaW4gYXJyYXku
Ci1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KE5hTikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
TmFOIGJldHdlZW4gdmFsaWQgdmFsdWVzIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBh
cnJheSgxLCAyLCBOYU4sIDMpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUg
J25vbmUnIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheShub25lKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheS4KLWN1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHZhbHVlIHVuaXQgJ2RlZycgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDFk
ZWcpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFy
cmF5IGFmdGVyIHZhbGlkIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwg
MywgNHB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1wdHkgbWF0Mi4KLWN1c3RvbShteS1maWx0ZXIs
IGEgbWF0MigpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyB2aWV3IGFyZ3VtZW50cy4KLWN1
c3RvbShteS1maWx0ZXIsIGEgbWF0MigwLCAwLCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1O
byBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigsLCwpKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBh
IG1hdDIoMCwgMCwsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JZGVudHMgaW4gbWF0MiBmdW5j
dGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigwLCAwLCBhLCBiKSkKLVBBU1Mgc3R5bGVS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIo
MCwgMCwgMCwgMCwgMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVM
RQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gY29tbWFzLgotY3VzdG9t
KG15LWZpbHRlciwgYSBtYXQyKDEgMCAwIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVNvbWUg
Y29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDEsIDAsIDAgMSkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTGVhZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIoLCAw
LCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBsZW5ndGggdW5pdHMuCi1jdXN0b20o
bXktZmlsdGVyLCBhIG1hdDIoMXB4LCAwcHgsIDBweCwgMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1ObyBkZWdyZWUgdW5pdHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMWRlZywgMGRl
ZywgMGRlZywgMWRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVM
RQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTmFOIGluIG1hdDIuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDIoMSwgMCwgMCwgTmFOKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQzIHBhcmFtZXRl
ciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1w
dHkgbWF0My4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygpKQotUEFTUyBzdHlsZVJ1bGUudHlw
ZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVRvbyB2aWV3IGFyZ3VtZW50cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygwLCAwLCAw
LCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLWN1
c3RvbShteS1maWx0ZXIsIGEgbWF0MygsLCwsLCwsLCwsLCwsLCwpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JZGVudHMgaW4gbWF0MyBmdW5j
dGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCBhLCBi
KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSwgMCkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTm8gY29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEgMCAwIDAg
MSAwIDAgMCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Tb21lIGNvbW1hcy4KLWN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwIDAgMCAxKSkKLVBBU1Mgc3R5bGVSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
bnVsbAotCi1MZWFkaW5nIGNvbW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygsIDAsIDAs
IDAsIDEsIDAsIDAsIDAsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0
cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxcHgsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwg
MXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBkZWdyZWUgdW5pdHMuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMWRlZywgMCwgMCwgMCwgMWRlZywgMCwgMCwgMCwgMWRlZykpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTmFOIGluIG1hdDMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIo
TmFOLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQ0IHBhcmFtZXRlciB0ZXN0
cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1wdHkgbWF0
NC4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRv
byB2aWV3IGFyZ3VtZW50cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgxLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNv
bW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgsLCwsLCwsLCwsLCwsLCwpKQotUEFTUyBz
dHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyBudWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQo
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwsKSkKLVBBU1Mgc3R5bGVS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1JZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAxLCAwLCAwLCBhLCBiKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1U
b28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCkpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotTm8gY29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEgMCAwIDAgMCAxIDAg
MCAwIDAgMSAwIDAgMCAwIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVNvbWUgY29tbWFzLgot
Y3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEs
IDAgMCAwIDAgMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTGVhZGluZyBjb21tYXMuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDQoLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBsZW5ndGggdW5pdHMuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDQoMXB4LCAwLCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDAsIDFw
eCwgMCwgMCwgMCwgMCwgMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBkZWdyZWUgdW5p
dHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMWRlZywgMCwgMCwgMCwgMCwgMWRlZywgMCwg
MCwgMCwgMCwgMWRlZywgMCwgMCwgMCwgMCwgMWRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
TmFOIGluIG1hdDQuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoTmFOLCAwLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NaXhpbmcgcGFyYW1ldGVy
IHR5cGVzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1OdW1i
ZXIgcGFyYW1ldGVyIHdpdGggaGV4IGNvbG9yLgotY3VzdG9tKG15LWZpbHRlciwgbjEgMSAyICNG
RjAwMDApCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTnVtYmVyIHBhcmFtZXRlciB3aXRoIGNvbG9y
IGtleXdvcmQuCi1jdXN0b20obXktZmlsdGVyLCBuMSAxIDIgcmVkKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLU51bWJlciBwYXJhbWV0ZXIgd2l0aCByZ2IgY29sb3IuCi1jdXN0b20obXktZmlsdGVy
LCBuMSAxIDIgcmdiKDI1NSwgMCwgMCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUu
U1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQ29sb3Igd2l0
aCBudW1iZXIgcGFyYW1ldGVyLgotY3VzdG9tKG15LWZpbHRlciwgYSByZ2IoMjU1LCAwLCAwKSAx
KQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUNvbG9yIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgwLCByZ2IoMjU1LCAwLCAwKSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENT
U1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQ29s
b3IgYW5kIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgwLCAwKSByZ2IoMjU1LCAw
LCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIHRyYW5zZm9ybSB2YWx1ZXMu
Ci1jdXN0b20obXktZmlsdGVyLCBhIHJvdGF0ZSg0NWRlZykgcmdiKDI1NSwgMCwgMCkpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotQ29sb3Igd2l0aCB0cmFuc2Zvcm0gdmFsdWVzLgotY3VzdG9tKG15
LWZpbHRlciwgYSByZ2IoMjU1LCAwLCAwKSByb3RhdGUoNDVkZWcpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLUNvbG9yIHdpdGggbWF0Mi4KLWN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwgMCwg
MCkgbWF0MigwLCAwLCAwLCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1tYXQyIHdpdGggbWF0
My4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigxLCAwLCAwLCAxKSBtYXQzKDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JV
TEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi1QQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1
bmN0aW9uLWludmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1pbnZhbGlkLmh0bWwKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZkZTRjZDMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3Vz
dG9tLWZ1bmN0aW9uLWludmFsaWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAK
LTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBp
ZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBz
cmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3Nj
cmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24t
aW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2lu
Zy1jdXN0b20tZnVuY3Rpb24tdmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9u
LXZhbGlkLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWU0NTcw
MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQtZXhwZWN0ZWQudHh0Cisr
KyAvZGV2L251bGwKQEAgLTEsNDc3ICswLDAgQEAKLVRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1
c3RvbSgpIGZ1bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4KLQotT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotQ3VzdG9tIGZ1bmN0aW9uIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotCi1DdXN0b20gZnVuY3Rpb24gaW4gQ0FQUy4KLUNVU1RPTSht
eS1maWx0ZXIpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVy
KScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotRmlsdGVyIGNo
YWluIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1D
dXN0b20gZnVuY3Rpb24gaW4gbWlkZGxlIG9mIGZpbHRlciBjaGFpbi4KLWdyYXlzY2FsZSgpIGN1
c3RvbShteS1maWx0ZXIpIHNlcGlhKCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdncmF5c2Nh
bGUoKSBjdXN0b20obXktZmlsdGVyKSBzZXBpYSgpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVy
dHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUKLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnZ3JheXNjYWxlKCknCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3Vi
VmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9TRVBJQQotUEFTUyBz
dWJWYWx1ZS5jc3NUZXh0IGlzICdzZXBpYSgpJwotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1GaWx0ZXIgbmFtZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLQotRmlsdGVyIG5hbWUgb25seS4KLWN1c3RvbShteS1maWx0
ZXIpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyKScKLQot
RmlsdGVyIG5hbWUgYXMgQ1NTICdub25lJyBrZXl3b3JkLgotY3VzdG9tKG5vbmUpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG5vbmUpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVy
dHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3Vi
VmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG5vbmUpJwotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1JbnRlZ2VyIHBhcmFtZXRlcnMuCi1jdXN0
b20obXktZmlsdGVyLCBuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3KQotUEFTUyBz
dHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG4xIDEsIG4yIDIgMywgbjMgMyA0
IDUsIG40IDQgNSA2IDcpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9
PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBp
cyAnY3VzdG9tKG15LWZpbHRlciwgbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNykn
Ci0KLUZsb2F0IHBhcmFtZXRlcnMuCi1jdXN0b20obXktZmlsdGVyLCBuMSAxLjEsIG4yIDIuMiAz
LjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbjEgMS4xLCBuMiAyLjIgMy4zLCBuMyAzLjEgNC4x
IDUuMSwgbjQgNC4xIDUuMiA2LjMgNy40KScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0
YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVl
LmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG4xIDEuMSwgbjIgMi4yIDMuMywgbjMgMy4x
IDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCknCi0KLVBhcmFtZXRlciBuYW1lIHNhbWUgYXMg
Q1NTIGtleXdvcmQuCi1jdXN0b20obXktZmlsdGVyLCBiYWNrZ3JvdW5kIDAgMSAwIDEpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgYmFja2dyb3VuZCAwIDEgMCAx
KScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1
ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1m
aWx0ZXIsIGJhY2tncm91bmQgMCAxIDAgMSknCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLUNvbG9yIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotSGV4IGNvbG9yLgotY3VzdG9tKG15LWZpbHRlciwg
YyAjMDBGRjAwKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGMg
cmdiKDAsIDI1NSwgMCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9
PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBp
cyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwgMjU1LCAwKSknCi0KLUNvbG9yIGtleXdvcmQu
Ci1jdXN0b20obXktZmlsdGVyLCBjIGdyZWVuKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDEyOCwgMCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwgMTI4LCAwKSkn
Ci0KLUNvbG9yIHJnYiBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDEyOCwg
MCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwg
MTI4LCAwKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0g
Q1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
bGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0
b20obXktZmlsdGVyLCBjIHJnYigwLCAxMjgsIDApKScKLQotQ29sb3IgaHNsIGZ1bmN0aW9uLgot
Y3VzdG9tKG15LWZpbHRlciwgYyBoc2woMTIwLCAxMDAlLCA1MCUpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpJwotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5
cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1
YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2Io
MCwgMjU1LCAwKSknCi0KLUNvbG9yIHJnYmEgZnVuY3Rpb24uCi1jdXN0b20obXktZmlsdGVyLCBj
IHJnYmEoMCwgMjU1LCAwLCAwLjIpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNU
WUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbSht
eS1maWx0ZXIsIGMgcmdiYSgwLCAyNTUsIDAsIDAuMikpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2JhKDAsIDI1NSwgMCwg
MC4yKSknCi0KLUNvbG9yIGhzbGEgZnVuY3Rpb24uCi1jdXN0b20obXktZmlsdGVyLCBjIGhzbGEo
MTIwLCAxMDAlLCA1MCUsIDAuMikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZ
TEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15
LWZpbHRlciwgYyByZ2JhKDAsIDI1NSwgMCwgMC4yKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9w
ZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBz
dWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAwLCAw
LjIpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotVHJhbnNm
b3JtIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLQotVHJhbnNmb3JtIHBhcmFtZXRlciB3aXRoIG9uZSB0cmFuc2Zvcm0gZnVuY3Rpb24u
Ci1jdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzICdjdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSknCi1QQVNTIGZpbHRlclByb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9w
ZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0
cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVn
KSknCi0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSB0cmFuc2Zvcm0gZnVuY3Rp
b25zLgotY3VzdG9tKG15LWZpbHRlciwgdCByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2Nh
bGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdj
dXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAw
KSB0cmFuc2xhdGUoMHB4LCAwcHgpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5j
ZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3Ry
dWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVy
UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNz
c1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDAp
IHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkpJwotCi1NdWxpdHBsZSB0cmFuc2Zvcm0g
cGFyYW1ldGVycy4KLWN1c3RvbShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRl
KDBkZWcpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQxIHJv
dGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBp
bnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5
VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
ZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25U
eXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZh
bHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90
YXRlKDBkZWcpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
QXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotCi1BcnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScuCi1jdXN0b20obXkt
ZmlsdGVyLCBhcnJheSBhcnJheSgxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20o
bXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNv
bnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1
ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSknCi0KLUFycmF5
IHBhcmFtZXRlciB3aXRoIG9uZSBwb3NpdGl2ZSBpbnRlZ2VyLgotY3VzdG9tKG15LWZpbHRlciwg
YSBhcnJheSgxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBh
IGFycmF5KDEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSkpJwotCi1BcnJheSBwYXJhbWV0ZXIgd2l0aCBvbmUg
bmVnYXRpdmUgZmxvYXQuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KC0xLjAxKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KC0xLjAxKSknCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KC0xLjAxKSknCi0KLUFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHBvc2l0
aXZlIGludGVnZXJzLgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAzLCA0LCA1KSkK
LVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIs
IDMsIDQsIDUpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgMywgNCwgNSkpJwotCi1BcnJheSBwYXJhbWV0
ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRzLgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJh
eSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSknCi1QQVNTIGZpbHRl
clByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
VmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NV
U1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5
KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkpJwotCi1NdWx0aXBsZSBhcnJheSBwYXJhbWV0ZXJzLgot
Y3VzdG9tKG15LWZpbHRlciwgYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJy
YXkoMSwgMiwgMykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwg
YTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykpJwotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5w
cm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwg
YTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykpJwotCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0
ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MiBw
YXJhbWV0ZXIuCi1jdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgMCwgMCwgMSkpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKDEsIDAsIDAsIDEpKScK
LVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0
ZXIsIG0gbWF0MigxLCAwLCAwLCAxKSknCi0KLU1hdDIgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUg
dmFsdWVzLgotY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAtMSwgLTEsIC0xKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIC0xLCAtMSwg
LTEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NW
YWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbSht
eS1maWx0ZXIsIG0gbWF0MigtMSwgLTEsIC0xLCAtMSkpJwotCi1NYXQyIHBhcmFtZXRlciB3aXRo
IG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuCi1jdXN0b20obXktZmlsdGVyLCBtIG1hdDIo
LTEsIDEsIDEsIC0xKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVy
LCBtIG1hdDIoLTEsIDEsIDEsIC0xKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFu
Y2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0
cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRl
clByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5j
c3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIDEsIDEsIC0xKSknCi0KLU1h
dDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLWN1c3RvbShteS1maWx0
ZXIsIG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpKScKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJf
Q1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0
MigxLCAtMi4yLCAzLjE0LCAwLjQpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotTWF0MyBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0KLU1hdDMgcGFyYW1ldGVyLgotY3VzdG9tKG15LWZpbHRlciwg
bSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSkn
Ci1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVM
aXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmls
dGVyLCBtIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkpJwotCi1NYXQzIHBhcmFtZXRl
ciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdj
dXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlz
IHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1Zh
bHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15
LWZpbHRlciwgbSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpKScKLQot
TWF0MyBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotY3VzdG9t
KG15LWZpbHRlciwgbSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIDEsIDEsIC0x
LCAtMSwgMSwgMSwgLTEsIDEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19w
cm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1Rl
eHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAt
MSwgMSkpJwotCi1NYXQzIHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuCi1j
dXN0b20obXktZmlsdGVyLCBtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0
LCAwLjQsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0g
bWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSkpJwotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
ZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90
b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBt
YXQzKDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxKSknCi0KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDQgcGFyYW1ldGVyIHRlc3Rz
LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1NYXQ0IHBhcmFt
ZXRlci4KLWN1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20o
bXktZmlsdGVyLCBtIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
Lmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmls
dGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3Vz
dG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEpKScKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1j
dXN0b20obXktZmlsdGVyLCBtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSknCi0K
LU1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5kIHBvc2l0aXZlIHZhbHVlcy4KLWN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEs
IC0xLCAtMSwgMSwgMSwgLTEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1m
aWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAt
MSwgMSwgMSwgLTEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEs
IDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEpKScKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBs
ZSBzaWduZWQgZmxvYXRzLgotY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIC0yLjIsIDMuMTQs
IDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMu
MTQsIDAuNCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBt
YXQ0KDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0
LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5
cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFs
dWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQs
IDAuNCkpJwotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1Db21i
aW5lZCBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJhbnNmb3JtIHBh
cmFtZXRlciwgbWF0cml4IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4KLWN1c3RvbSht
eS1maWx0ZXIsIG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIo
MSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQo
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXko
MSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbiAxLCBjIHJn
YigwLCAxMjgsIDApLCB0IHJvdGF0ZSgwZGVnKSwgbTEgbWF0MigxLCAwLCAwLCAxKSwgbTIgbWF0
MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSwgbTMgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSwgYSBhcnJheSgxKSknCi1QQVNTIGZpbHRlclBy
b3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFs
dWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBuIDEsIGMgcmdi
KDAsIDEyOCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAsIDEpLCBtMiBtYXQz
KDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFycmF5KDEpKScKLVBBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1jdXN0
b20tZnVuY3Rpb24tdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12YWxpZC5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNjliNWExLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1
c3RvbS1mdW5jdGlvbi12YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAot
PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlk
PSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNy
Yz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12
YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1n
ZW9tZXRyeS1wcm9wZXJ0eS1pbnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3Bl
cnR5LWludmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBh
OTFlOTk5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQtZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTUxICswLDAgQEAKLVRlc3QgZ2VvbWV0cnkgcHJv
cGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLUdlb21ldHJ5IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotCi1ObyBwcm9wZXJ0eSB2YWx1ZS4KLWdlb21ldHJ5OiA7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotRW1wdHkgZ3JpZC4KLWdlb21ldHJ5OiBncmlkKCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotTWlzcGVsbGVkIGdyaWQgZnVu
Y3Rpb24uCi1nZW9tZXRyeTogZ3JpaWQoMSAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5Jykg
aXMgbnVsbAotCi1TaW5nbGUgbmVnYXRpdmUgdmFsdWUgaW4gZ3JpZC4KLWdlb21ldHJ5OiBncmlk
KC0xKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1OZWdhdGl2ZSB2YWx1
ZSBpbiBncmlkIGFsb25nIHdpdGggYSB2YWxpZCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKDEgLTEp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLU5lZ2F0aXZlIHZhbHVlIGlu
IGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4KLWdlb21ldHJ5OiBncmlk
KC0xIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLVR3byBuZWdhdGl2
ZSB2YWx1ZXMuCi1nZW9tZXRyeTogZ3JpZCgtMSAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRy
eScpIGlzIG51bGwKLQotU2luZ2xlIHplcm8gdmFsdWUuCi1nZW9tZXRyeTogZ3JpZCgwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1aZXJvIHdpdGggYSB2YWxpZCB2YWx1
ZS4KLWdlb21ldHJ5OiBncmlkKDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51
bGwKLQotWmVybyB3aXRoIGEgdmFsaWQgdmFsdWUsIGludmVydGVkLgotZ2VvbWV0cnk6IGdyaWQo
MSAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1BdHRhY2hlZCB2YWx1
ZSBhbG9uZS4KLWdlb21ldHJ5OiBncmlkKGF0dGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21l
dHJ5JykgaXMgbnVsbAotCi1EZXRhY2hlZCB2YWx1ZSBhbG9uZS4KLWdlb21ldHJ5OiBncmlkKGRl
dGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1EZXRhY2hlZCBh
bmQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZChhdHRhY2hlZCBhdHRhY2hlZCk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotVG9vIG1hbnkgdmFsdWVzLgotZ2VvbWV0cnk6
IGdyaWQoMSAxIGF0dGFjaGVkIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5Jykg
aXMgbnVsbAotCi1NaXNwZWxsZWQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZCgxIDEgYXR0YWNk
KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1NaXNwZWxsZWQgZGV0YWNo
ZWQuCi1nZW9tZXRyeTogZ3JpZCgxIDEgZGV0YWNoZSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRy
eScpIGlzIG51bGwKLQotSW52YWxpZCBkaXZpZGVyLgotZ2VvbWV0cnk6IGdyaWQoMSwgMSBhdHRh
Y2hlZCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotSW52YWxpZCBkaXZp
ZGVyLCByZWxvYWRlZC4KLWdlb21ldHJ5OiBncmlkKDEgMSwgYXR0YWNoZWQpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLU5vbiBpbnRlZ2VyIHZhbHVlcy4KLWdlb21ldHJ5
OiBncmlkKDEuMyAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1Ob24g
aW50ZWdlciB2YWx1ZXMuCi1nZW9tZXRyeTogZ3JpZCgxIDEuMyk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdn
ZW9tZXRyeScpIGlzIG51bGwKLQotVGhyZWUgaW50ZWdlcnMuCi1nZW9tZXRyeTogZ3JpZCgxIDIg
Myk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotQXR0YWNoZWQgaW4gYmV0
d2VlbiB0d28gaW50ZWdlcnMuCi1nZW9tZXRyeTogZ3JpZCgxIGF0dGFjaGVkIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLURldGFjaGVkIGluIGJldHdlZW4gdHdvIGlu
dGVnZXJzLgotZ2VvbWV0cnk6IGdyaWQoMSBkZXRhY2hlZCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dl
b21ldHJ5JykgaXMgbnVsbAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggNjRmNzhhYi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1p
bnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9u
Ij48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQt
dGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktaW52YWxpZC5qcyI+
PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1w
cm9wZXJ0eS12YWxpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12YWxpZC1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDMwZmJkN2IuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsMTEzICswLDAgQEAKLVRlc3QgZ2VvbWV0cnkgcHJvcGVydHkgcGFyc2luZyBp
biB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUdlb21l
dHJ5IHByb3BlcnR5LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
Ci1HZW9tZXRyeSB3aXRoIGZ1bGwgbWVzaCBhbmQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZCgx
IDEgYXR0YWNoZWQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBp
cyAiMSAxIGF0dGFjaGVkIgotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBnZW9tZXRy
eVByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDMKLQotR2VvbWV0cnkgd2l0aCBmdWxsIG1lc2ggYW5k
IGRldGFjaGVkLgotZ2VvbWV0cnk6IGdyaWQoMSAxIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSkgaXMgIjEgMSBkZXRhY2hlZCIKLVBBU1MgZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2Vv
bWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi0K
LUdlb21ldHJ5IHdpdGggZnVsbCBtZXNoIGFuZCBubyBhdHRhY2hlZCwgbm9yIGRldGFjaGVkLgot
Z2VvbWV0cnk6IGdyaWQoMSAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0
cnknKSkgaXMgIjEgMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19w
cm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAyCi0KLUdlb21ldHJ5IHdpdGggb25seSBvbmUgbWVzaCB2
YWx1ZS4KLWdlb21ldHJ5OiBncmlkKDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdn
ZW9tZXRyeScpKSBpcyAiMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2Yg
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVj
dG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi0KLUdlb21ldHJ5IHdpdGggb25lIG1lc2ggdmFs
dWUgYW5kIGF0dGFjaGVkLgotZ2VvbWV0cnk6IGdyaWQoMSBhdHRhY2hlZCk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykpIGlzICIxIGF0dGFjaGVkIgotUEFTUyBnZW9t
ZXRyeVByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBn
ZW9tZXRyeVByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5w
cm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIK
LQotR2VvbWV0cnkgd2l0aCBvbmUgbWVzaCB2YWx1ZSBhbmQgZGV0YWNoZWQuCi1nZW9tZXRyeTog
Z3JpZCgxIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnkn
KSkgaXMgIjEgZGV0YWNoZWQiCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotCi1HZW9tZXRyeSB3aXRoIGF0dGFjaGVkIGJl
Zm9yZSBvbmUgbWVzaCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKGF0dGFjaGVkIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBpcyAiYXR0YWNoZWQgMSIKLVBBU1Mg
Z2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBp
cyAyCi0KLUdlb21ldHJ5IHdpdGggYXR0YWNoZWQgYmVmb3JlIHR3byBtZXNoIHZhbHVlcy4KLWdl
b21ldHJ5OiBncmlkKGF0dGFjaGVkIDEgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J2dlb21ldHJ5JykpIGlzICJhdHRhY2hlZCAxIDEiCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1
ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQ
cm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwotCi1HZW9tZXRyeSB3aXRo
IGRldGFjaGVkIGJlZm9yZSBvbmUgbWVzaCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKGRldGFjaGVk
IDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBpcyAiZGV0YWNo
ZWQgMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZh
bHVlLmxlbmd0aCBpcyAyCi0KLUdlb21ldHJ5IHdpdGggZGV0YWNoZWQgYmVmb3JlIHR3byBtZXNo
IHZhbHVlcy4KLWdlb21ldHJ5OiBncmlkKGRldGFjaGVkIDEgMSk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykpIGlzICJkZXRhY2hlZCAxIDEiCi1QQVNTIGdlb21ldHJ5
UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwotUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LXZhbGlkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0
eS12YWxpZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNzY3YjAyLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LXZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVh
ZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48
L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5n
LWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmct
Z2VvbWV0cnktcHJvcGVydHktdmFsaWQuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1
bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
bWl4LXByb3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBjMGQzOWVhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDU1ICswLDAgQEAKLVRlc3QgbWl4IHByb3Bl
cnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgotCi1PbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci1WYWx1ZSB0ZXN0LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1ObyBwcm9wZXJ0eSB2YWx1ZS4KLW1peDogOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4Jykg
aXMgbnVsbAotCi1UaHJlZSB2YWx1ZXMuCi1taXg6IHNjcmVlbiBzb3VyY2Utb3ZlciBzY3JlZW47
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSBpcyBudWxsCi0KLVRocmVlIHZhbHVlcy4KLW1peDogc2Ny
ZWVuIHNvdXJjZS1vdmVyIHNvdXJjZS1vdmVyOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykgaXMgbnVs
bAotCi1Ud28gYmxlbmQgbW9kZXMuCi1taXg6IHNjcmVlbiBzY3JlZW47Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdtaXgnKSBpcyBudWxsCi0KLVR3byBjb21wb3NpdGUgb3BlcmF0b3JzLgotbWl4OiBzb3VyY2Ut
b3ZlciBzb3VyY2Utb3ZlcjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpIGlzIG51bGwKLQotVHdvIGJs
ZW5kIG1vZGVzLgotbWl4OiBzY3JlZW4gc2NyZWVuOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykgaXMg
bnVsbAotCi1Db21tYSBiZXR3ZWVuIHZhbHVlcy4KLW1peDogc2NyZWVuLCBzb3VyY2Utb3ZlcjsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ21peCcpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktaW52
YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZjkxZDFlMi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktaW52
YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+
Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+
PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRl
c3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBz
cmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxp
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYzhjZjAzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1w
cm9wZXJ0eS12YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwzOTMgKzAsMCBA
QAotVGVzdCBtaXggcHJvcGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1
bGUuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLVRlc3QgYmxlbmQgbW9kZSBrZXl3b3Jkcy4KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotVGVzdCBtdWx0aXBseS4KLW1p
eDogbXVsdGlwbHk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJ
TFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibXVs
dGlwbHkiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibXVsdGlwbHkiCi0KLVRl
c3Qgc2NyZWVuLgotbWl4OiBzY3JlZW47Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21p
eCcpKSBpcyAic2NyZWVuIgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlU
SVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNjcmVl
biIKLQotVGVzdCBvdmVybGF5LgotbWl4OiBvdmVybGF5OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdtaXgnKSkgaXMgIm92ZXJsYXkiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFu
Y2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVj
dG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJv
dG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVl
LkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0
KSBpcyAib3ZlcmxheSIKLQotVGVzdCBkYXJrZW4uCi1taXg6IGRhcmtlbjsKLVBBU1MgZmlsdGVy
QXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJkYXJrZW4iCi1QQVNTIG1peFByb3BlcnR5VmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVl
LmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlz
IENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1
ZS5jc3NUZXh0KSBpcyAiZGFya2VuIgotCi1UZXN0IGxpZ2h0ZW4uCi1taXg6IGxpZ2h0ZW47Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibGlnaHRlbiIKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFBy
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NW
YWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJsaWdodGVuIgotCi1UZXN0IGNvbG9yLWRvZGdlLgot
bWl4OiBjb2xvci1kb2RnZTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlz
ICJjb2xvci1kb2RnZSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NW
YWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElW
RV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjb2xvci1k
b2RnZSIKLQotVGVzdCBjb2xvci1idXJuLgotbWl4OiBjb2xvci1idXJuOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImNvbG9yLWJ1cm4iCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAiY29sb3ItYnVybiIKLQotVGVzdCBoYXJkLWxpZ2h0LgotbWl4OiBo
YXJkLWxpZ2h0OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImhhcmQt
bGlnaHQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiaGFyZC1saWdodCIKLQot
VGVzdCBzb2Z0LWxpZ2h0LgotbWl4OiBzb2Z0LWxpZ2h0OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdtaXgnKSkgaXMgInNvZnQtbGlnaHQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0
cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NU
ZXh0KSBpcyAic29mdC1saWdodCIKLQotVGVzdCBkaWZmZXJlbmNlLgotbWl4OiBkaWZmZXJlbmNl
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImRpZmZlcmVuY2UiCi1Q
QVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZGlmZmVyZW5jZSIKLQotVGVzdCBleGNs
dXNpb24uCi1taXg6IGV4Y2x1c2lvbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4
JykpIGlzICJleGNsdXNpb24iCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0g
Q1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklN
SVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZXhj
bHVzaW9uIgotCi1UZXN0IGh1ZS4KLW1peDogaHVlOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdtaXgnKSkgaXMgImh1ZSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BS
SU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJo
dWUiCi0KLVRlc3Qgc2F0dXJhdGlvbi4KLW1peDogc2F0dXJhdGlvbjsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJzYXR1cmF0aW9uIgotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgInNhdHVyYXRpb24iCi0KLVRlc3QgY29sb3IuCi1taXg6IGNvbG9yOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImNvbG9yIgotUEFTUyBtaXhQ
cm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImNvbG9yIgotCi1UZXN0IGx1bWlub3NpdHkuCi1taXg6
IGx1bWlub3NpdHk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJ
TFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibHVt
aW5vc2l0eSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxV
RQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJsdW1pbm9zaXR5Igot
Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1UZXN0IGNvbXBvc2l0
ZSBrZXl3b3Jkcy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQot
VGVzdCBjbGVhci4KLW1peDogY2xlYXI7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21p
eCcpKSBpcyAiY2xlYXIiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1
ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NT
VmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJ
VkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiY2xlYXIi
Ci0KLVRlc3QgY29weS4KLW1peDogY29weTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
bWl4JykpIGlzICJjb3B5IgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlU
SVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImNvcHki
Ci0KLVRlc3Qgc291cmNlLW92ZXIuCi1taXg6IHNvdXJjZS1vdmVyOwotUEFTUyBmaWx0ZXJBdFJ1
bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1vdmVyIgotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotCi1UZXN0IHNvdXJjZS1pbi4KLW1peDogc291
cmNlLWluOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1p
biIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzb3VyY2UtaW4iCi0KLVRlc3Qg
c291cmNlLW91dC4KLW1peDogc291cmNlLW91dDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnbWl4JykpIGlzICJzb3VyY2Utb3V0IgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNl
b2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3Rv
ciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgInNvdXJjZS1vdXQiCi0KLVRlc3Qgc291cmNlLWF0b3AuCi1taXg6IHNvdXJjZS1hdG9wOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1hdG9wIgotUEFT
UyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1hdG9wIgotCi1UZXN0IGRlc3Rp
bmF0aW9uLW92ZXIuCi1taXg6IGRlc3RpbmF0aW9uLW92ZXI7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ21peCcpKSBpcyAiZGVzdGluYXRpb24tb3ZlciIKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFs
dWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZh
bHVlLmNzc1RleHQpIGlzICJkZXN0aW5hdGlvbi1vdmVyIgotCi1UZXN0IGRlc3RpbmF0aW9uLWlu
LgotbWl4OiBkZXN0aW5hdGlvbi1pbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4
JykpIGlzICJkZXN0aW5hdGlvbi1pbiIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NT
X1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlz
ICJkZXN0aW5hdGlvbi1pbiIKLQotVGVzdCBkZXN0aW5hdGlvbi1vdXQuCi1taXg6IGRlc3RpbmF0
aW9uLW91dDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNl
VVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJkZXN0aW5h
dGlvbi1vdXQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVM
aXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFM
VUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZGVzdGluYXRpb24t
b3V0IgotCi1UZXN0IGRlc3RpbmF0aW9uLWF0b3AuCi1taXg6IGRlc3RpbmF0aW9uLWF0b3A7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAiZGVzdGluYXRpb24tYXRvcCIK
LVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJW
YWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJkZXN0aW5hdGlvbi1hdG9wIgotCi1U
ZXN0IHhvci4KLW1peDogeG9yOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkg
aXMgInhvciIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxV
RQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ4b3IiCi0KLUJsZW5k
IG1vZGUgYW5kIGNvbXBvc2l0ZSB0b2dldGhlci4KLW1peDogc2NyZWVuIHNvdXJjZS1vdmVyOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNjcmVlbiBzb3VyY2Utb3Zl
ciIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzY3JlZW4iCi1QQVNTIHN1YlZh
bHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotCi1Db21wb3Np
dGUgYW5kIGJsZW5kIG1vZGUgdG9nZXRoZXIuCi1taXg6IHNvdXJjZS1vdmVyIHNjcmVlbjsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJzb3VyY2Utb3ZlciBzY3JlZW4i
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3Vi
VmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAic291cmNlLW92ZXIiCi1QQVNTIHN1
YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNjcmVlbiIKLQotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQ2FwaXRhbGl6YXRpb24gdGVzdHMuCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUFsbCB0b2tlbnMgY2Fw
aXRhbGl6ZWQuCi1taXg6IFNDUkVFTiBTT1VSQ0UtT1ZFUjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnbWl4JykpIGlzICJzY3JlZW4gc291cmNlLW92ZXIiCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAic2NyZWVuIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMg
Q1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVl
LmNzc1RleHQpIGlzICJzb3VyY2Utb3ZlciIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotV2hpdGVzcGFjZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLQotRXh0cmEgbGVhZGluZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcg
d2hpdGVzcGFjZS4gCi1taXg6ICAgIHNjcmVlbiAgIHNvdXJjZS1vdmVyICAgOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNjcmVlbiBzb3VyY2Utb3ZlciIKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlz
IHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFTUyBzdWJWYWx1ZS5j
c3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzY3JlZW4iCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9w
ZXJ0eS12YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0
LXJ1bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LXZhbGlkLmh0bWwKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwODM5NjkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5
LXZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9u
Ij48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQt
dGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctbWl4LXByb3BlcnR5LXZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVy
dHktaW52YWxpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
LXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQt
ZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMTdhZTQyLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC1leHBlY3RlZC50eHQKKysr
IC9kZXYvbnVsbApAQCAtMSw1NjkgKzAsMCBAQAotVGVzdCBwYXJhbWV0ZXJzIHByb3BlcnR5IHBh
cnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgotCi1PbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVzLgotcGFyYW1ldGVyczogbiAx
IDIgMyA0IDU7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1JbnZhbGlk
IHBhcmFtZXRlciB0eXBlLgotcGFyYW1ldGVyczogbiAxLjAgMi4wICd0ZXh0JzsKLVBBU1MgZmls
dGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIHBhcmFtZXRlciBkZWZpbml0aW9uLgot
cGFyYW1ldGVyczogOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8g
cGFyYW1ldGVyIGRlZmluaXRpb24gd2l0aCBjb21tYS4KLXBhcmFtZXRlcnM6ICw7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgZGVmaW5pdGlvbiBi
ZWZvcmUgdmFsaWQgcGFyYW1ldGVyIGRlZmludGlvbi4KLXBhcmFtZXRlcnM6ICwgbiAxOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIHZhbHVlLgot
cGFyYW1ldGVyczogbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5v
IHBhcmFtZXRlciB2YWx1ZSB3aXRoIG11bHRpcGxlIHBhcmFtZXRlcnMuCi1wYXJhbWV0ZXJzOiBu
MSwgbjIsIG4zOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQ29sb3IgcGFyYW1ldGVyIHRlc3Rz
LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1ObyByZ2IgY29s
b3IgdmFsdWVzLgotcGFyYW1ldGVyczogYyByZ2IoLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotTm8gaHNsIGNvbG9yIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGMgaHNs
KCwsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUhleCB3aXRoIDgg
Y2hhcmFjdGVycy4KLXBhcmFtZXRlcnM6IGMgI0ZGMDAwMEZGOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFy
YW1ldGVycycpIGlzIG51bGwKLQotSGV4IHdpdGggMiBjaGFyYWN0ZXIuCi1wYXJhbWV0ZXJzOiBj
ICNGRjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVJnYmEgd2l0aCAz
IHZhbHVlcyBhbmQgMiBjb21tYXMuCi1wYXJhbWV0ZXJzOiBjIHJnYmEoMjU1LCAwLCAwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBpbnZhbGlkIHRyYW5zZm9y
bSBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUoMGRlZyk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1NdWx0aXBsZSBpbnZhbGlkIHRyYW5zZm9y
bSBmdW5jdGlvbnMuCi1wYXJhbWV0ZXJzOiB0IGludmFsaWQtcm90YXRlKDBkZWcpIGludmFsaWQt
cGVyc3BlY3RpdmUoMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1J
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuCi1wYXJhbWV0ZXJz
OiB0IHJvdGF0ZSgwZGVnKSBpbnZhbGlkLXJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBmdW5j
dGlvbiBiZXR3ZWVuIGludmFsaWQgb25lcy4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUo
MGRlZykgcGVyc3BlY3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gd2l0aCB0
cmFpbGluZyBjb21tYS4KLXBhcmFtZXRlcnM6IHQgcGVyc3BlY3RpdmUoMCksOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSW52YWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFp
bGluZyBjb21tYS4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUoMGRlZyksOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3JtIHdpdGggaW52
YWxpZCBjaGFyYWN0ZXJzCi1wYXJhbWV0ZXJzOiB0IHJvdGF0ZSgwZGVnKSAqLi0sOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBhcnJheS4KLXBhcmFtZXRlcnM6IGEg
YXJyYXkoKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBjb21t
YSBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoLCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJh
bWV0ZXJzJykgaXMgbnVsbAotCi1NdWx0aXBsZSBjb21tYXMgaW4gYXJyYXkuCi1wYXJhbWV0ZXJz
OiBhIGFycmF5KCwsLCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1N
dWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJh
eSgsLDEsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBjb21t
YSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBh
cnJheSgsLTQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotT25lIGNv
bW1hIGZvbGxvd2VkIGJ5IGEgdmFsdWUgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KCw0
KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBuZWdhdGl2ZSB2
YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgt
NCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotT25lIHZhbHVlIGZv
bGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDQsKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVZhbGlkIHZhbHVlcyBmb2xsb3dl
ZCBieSBhIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxLCAyLCAzLCA0LCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1WYWxpZCB2YWx1ZXMgZm9s
bG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDEsIDIsIDMs
IDQsIHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotVHdvIGNvbW1h
cyBhcyBzZXBhcmF0b3IgYmV0d2VlbiB2YWx1ZXMgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFy
cmF5KDEsIDIsICwgNCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1M
ZWFkaW5nIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgsMSwgMiwgMywgNCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2VwYXJh
dGVkIHZhbHVlcyBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMTsgMjsgMzsgNCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQgdmFs
dWVzIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxIDIgMyA0KTsKLVBBU1MgZmlsdGVy
QXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgd2l0aCBj
b21tYSB0ZXJtaW5hdG9yIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxIDIgMyA0LCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQg
dmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXko
LCAxIDIgMyA0KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5hTiBp
biBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoTmFOKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFt
ZXRlcnMnKSBpcyBudWxsCi0KLU5hTiBiZXR3ZWVuIHZhbGlkIHZhbHVlcyBpbiBhcnJheS4KLXBh
cmFtZXRlcnM6IGEgYXJyYXkoMSwgMiwgTmFOLCAzKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgJ25vbmUnIGluIGFycmF5LgotcGFyYW1ldGVy
czogYSBhcnJheShub25lKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0K
LUludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgx
cHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSW52YWxpZCB2YWx1
ZSB1bml0ICdkZWcnIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxZGVnKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgdW5pdCAncHgn
IGluIGFycmF5IGFmdGVyIHZhbGlkIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMSwgMiwg
MywgNHB4KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDIgcGFyYW1ldGVyIHRlc3RzLgot
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQyLgot
cGFyYW1ldGVyczogYSBtYXQyKCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVs
bAotCi1Ub28gdmlldyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMCwgMCwgMCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNv
bW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MigsLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MigwLCAwLCwp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSWRlbnRzIGluIG1hdDIg
ZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMCwgMCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJz
OiBhIG1hdDIoMCwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMg
bnVsbAotCi1ObyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMSAwIDAgMSk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Tb21lIGNvbW1hcy4KLXBhcmFtZXRlcnM6
IGEgbWF0MigxLCAwLCAwIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTGVhZGluZyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoLCAwLCAwLCAxKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0cy4KLXBhcmFt
ZXRlcnM6IGEgbWF0MigxcHgsIDBweCwgMHB4LCAxcHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotTm8gZGVncmVlIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQyKDFk
ZWcsIDBkZWcsIDBkZWcsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTmFOIGluIG1hdDIuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMSwgMCwgMCwgTmFOKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLU1hdDMgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQzLgotcGFyYW1ldGVyczog
YSBtYXQzKCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gdmll
dyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMCwgMCwgMCwgMCk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLXBh
cmFtZXRlcnM6IGEgbWF0MygsLCwsLCwsLCwsLCwsLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MygxLCAw
LCAwLCAwLCAxLCAwLCAwLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotSWRlbnRzIGluIG1hdDMgZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAot
Ci1Ub28gbWFueSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSwgMCwgMCwgMCwgMSwg
MCwgMCwgMCwgMSwgMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1O
byBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSAwIDAgMCAxIDAgMCAwIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotU29tZSBjb21tYXMuCi1wYXJhbWV0ZXJz
OiBhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCAwIDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0
ZXJzJykgaXMgbnVsbAotCi1MZWFkaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MygsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTm8gbGVuZ3RoIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQzKDFweCwgMCwgMCwgMCwg
MXB4LCAwLCAwLCAwLCAxcHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTm8gZGVncmVlIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQzKDFkZWcsIDAsIDAsIDAsIDFk
ZWcsIDAsIDAsIDAsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTmFOIGluIG1hdDMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoTmFOLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDQgcGFyYW1ldGVyIHRlc3RzLgot
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQ0Lgot
cGFyYW1ldGVyczogYSBtYXQ0KCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVs
bAotCi1Ub28gdmlldyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1O
byBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgsLCwsLCwsLCwsLCws
LCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1h
cy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSWRlbnRz
IGluIG1hdDQgZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwgMSwgMCwg
MCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gbWFu
eSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykg
aXMgbnVsbAotCi1ObyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSAwIDAgMCAwIDEgMCAw
IDAgMCAxIDAgMCAwIDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAot
Ci1Tb21lIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAwLCAxLCAwIDAgMCAwIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTGVhZGluZyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoLCAwLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0cy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxcHgs
IDAsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAxcHgpOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gZGVncmVlIHVuaXRzLgotcGFy
YW1ldGVyczogYSBtYXQ0KDFkZWcsIDAsIDAsIDAsIDAsIDFkZWcsIDAsIDAsIDAsIDAsIDFkZWcs
IDAsIDAsIDAsIDAsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTmFOIGluIG1hdDQuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoTmFOLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMn
KSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1p
eGluZyBwYXJhbWV0ZXIgdHlwZXMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIgd2l0aCBoZXggY29sb3IuCi1wYXJhbWV0ZXJzOiBu
MSAxIDIgI0ZGMDAwMDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU51
bWJlciBwYXJhbWV0ZXIgd2l0aCBjb2xvciBrZXl3b3JkLgotcGFyYW1ldGVyczogbjEgMSAyIHJl
ZDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU51bWJlciBwYXJhbWV0
ZXIgd2l0aCByZ2IgY29sb3IuCi1wYXJhbWV0ZXJzOiBuMSAxIDIgcmdiKDI1NSwgMCwgMCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIG51bWJlciBw
YXJhbWV0ZXIuCi1wYXJhbWV0ZXJzOiBhIHJnYigyNTUsIDAsIDApIDE7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEg
YXJyYXkoMCwgcmdiKDI1NSwgMCwgMCkpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlz
IG51bGwKLQotQ29sb3IgYW5kIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgwLCAwKSByZ2Io
MjU1LCAwLCAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgcm90YXRlKDQ1ZGVnKSByZ2Io
MjU1LCAwLCAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgcmdiKDI1NSwgMCwgMCkgcm90
YXRlKDQ1ZGVnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IGFmdGVyIGFycmF5IHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMCkgcmdiKDI1NSwgMCwg
MCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIG1h
dDIuCi1wYXJhbWV0ZXJzOiBhIHJnYigyNTUsIDAsIDApIG1hdDIoMCwgMCwgMCwgMCk7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1tYXQyIHdpdGggbWF0My4KLXBhcmFt
ZXRlcnM6IGEgbWF0MigxLCAwLCAwLCAxKSBtYXQzKDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0
ZXJzLXByb3BlcnR5LWludmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxp
ZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmZDVmYzQ1Li4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+
Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1j
b21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLXBh
cmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA3ZWU3MGJhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMt
cHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNDQxICswLDAg
QEAKLVRlc3QgcGFyYW1ldGVycyBwcm9wZXJ0eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0
ZXIgYXQtcnVsZS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTnVtYmVyIHBhcmFtZXRlciB0ZXN0cy4K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotSW50ZWdlciBwYXJh
bWV0ZXJzLgotcGFyYW1ldGVyczogbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNzsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAibjEgMSwgbjIg
MiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNyIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUg
aW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDQKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4xIDEiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVl
VHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZh
bHVlLmNzc1RleHQpIGlzICJuMiAyIDMiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBD
U1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJuMyAzIDQgNSIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVl
LkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMg
Im40IDQgNSA2IDciCi0KLUZsb2F0IHBhcmFtZXRlcnMuCi1wYXJhbWV0ZXJzOiBuMSAxLjEsIG4y
IDIuMiAzLjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQ7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm4xIDEuMSwgbjIgMi4yIDMuMywg
bjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
cGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDQKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4xIDEuMSIKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4yIDIuMiAzLjMiCi1QQVNTIHN1YlZhbHVlLmNz
c1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlZhbHVlLmNzc1RleHQpIGlzICJuMyAzLjEgNC4xIDUuMSIKLVBBU1Mgc3ViVmFsdWUuY3Nz
VmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViVmFsdWUuY3NzVGV4dCkgaXMgIm40IDQuMSA1LjIgNi4zIDcuNCIKLQotUGFyYW1ldGVyIG5h
bWUgc2FtZSBhcyBDU1Mga2V5d29yZC4KLXBhcmFtZXRlcnM6IGJhY2tncm91bmQgMCAxIDAgMTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYmFja2dyb3Vu
ZCAwIDEgMCAxIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5j
c3NUZXh0KSBpcyAiYmFja2dyb3VuZCAwIDEgMCAxIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1UcmFuc2Zvcm0gcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1UcmFuc2Zvcm0gcGFyYW1ldGVyIHdp
dGggb25lIHRyYW5zZm9ybSBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IHQgcm90YXRlKDBkZWcpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJ0IHJvdGF0ZSgw
ZGVnKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90
b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENT
U1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgInQgcm90YXRlKDBkZWcpIgotCi1UcmFuc2Zvcm0gcGFyYW1ldGVyIHdpdGggbXVsdGlw
bGUgdHJhbnNmb3JtIGZ1bmN0aW9ucy4KLXBhcmFtZXRlcnM6IHQgcm90YXRlKDBkZWcpIHBlcnNw
ZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgInQgcm90YXRlKDBkZWcpIHBlcnNwZWN0
aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkiCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ0IHJvdGF0ZSgwZGVnKSBw
ZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIgotCi1NdWxpdHBs
ZSB0cmFuc2Zvcm0gcGFyYW1ldGVycy4KLXBhcmFtZXRlcnM6IHQxIHJvdGF0ZSgwZGVnKSwgdDIg
cm90YXRlKDBkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykp
IGlzICJ0MSByb3RhdGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVnKSIKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInQxIHJvdGF0ZSgwZGVnKSIK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInQyIHJvdGF0ZSgwZGVnKSIK
LQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1l
dGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1B
cnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScuCi1wYXJhbWV0ZXJzOiBhcnJheSBhcnJh
eSgxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYXJy
YXkgYXJyYXkoMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFt
ZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVl
LmNzc1RleHQpIGlzICJhcnJheSBhcnJheSgxKSIKLQotQXJyYXkgcGFyYW1ldGVyIHdpdGggb25l
IHBvc2l0aXZlIGludGVnZXIuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDEpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJhIGFycmF5KDEpIgotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVl
TGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVF
X0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYSBhcnJheSgx
KSIKLQotQXJyYXkgcGFyYW1ldGVyIHdpdGggb25lIG5lZ2F0aXZlIGZsb2F0LgotcGFyYW1ldGVy
czogYSBhcnJheSgtMS4wMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSkgaXMgImEgYXJyYXkoLTEuMDEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBp
bnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1
ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYSBhcnJheSgtMS4wMSkiCi0KLUFycmF5IHBhcmFt
ZXRlciB3aXRoIG11bHRpcGxlIHBvc2l0aXZlIGludGVnZXJzLgotcGFyYW1ldGVyczogYSBhcnJh
eSgxLCAyLCAzLCA0LCA1KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpKSBpcyAiYSBhcnJheSgxLCAyLCAzLCA0LCA1KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBl
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImEgYXJyYXkoMSwgMiwgMywgNCwgNSki
Ci0KLUFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuCi1wYXJhbWV0
ZXJzOiBhIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIKLQotTXVsdGlwbGUgYXJyYXkgcGFy
YW1ldGVycy4KLXBhcmFtZXRlcnM6IGExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSksIGEy
IGFycmF5KDEsIDIsIDMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJz
JykpIGlzICJhMSBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCBhMiBhcnJheSgxLCAyLCAz
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgImExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkiCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlZhbHVlLmNzc1RleHQpIGlzICJhMiBhcnJheSgxLCAyLCAzKSIKLQotPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotQ29sb3IgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1IZXggY29sb3IuCi1wYXJhbWV0
ZXJzOiBjICMwMEZGMDA7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMn
KSkgaXMgImMgcmdiKDAsIDI1NSwgMCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFs
dWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAyNTUsIDApIgotCi1Db2xvciBrZXl3
b3JkLgotcGFyYW1ldGVyczogYyBncmVlbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
cGFyYW1ldGVycycpKSBpcyAiYyByZ2IoMCwgMTI4LCAwKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
cGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImMgcmdiKDAsIDEyOCwgMCkiCi0K
LUNvbG9yIHJnYiBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IGMgcmdiKDAsIDEyOCwgMCk7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImMgcmdiKDAsIDEyOCwg
MCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9f
XyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9w
ZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NW
YWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQp
IGlzICJjIHJnYigwLCAxMjgsIDApIgotCi1Db2xvciBoc2wgZnVuY3Rpb24uCi1wYXJhbWV0ZXJz
OiBjIGhzbCgxMjAsIDEwMCUsIDUwJSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3Bh
cmFtZXRlcnMnKSkgaXMgImMgcmdiKDAsIDI1NSwgMCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAyNTUsIDApIgotCi1D
b2xvciByZ2JhIGZ1bmN0aW9uLgotcGFyYW1ldGVyczogYyByZ2JhKDAsIDI1NSwgMCwgMC4yKTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYyByZ2JhKDAs
IDI1NSwgMCwgMC4yKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVU
eXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiCi0KLUNvbG9yIGhzbGEgZnVu
Y3Rpb24uCi1wYXJhbWV0ZXJzOiBjIGhzbGEoMTIwLCAxMDAlLCA1MCUsIDAuMik7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImMgcmdiYSgwLCAyNTUsIDAs
IDAuMikiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJv
dG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBD
U1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJjIHJnYmEoMCwgMjU1LCAwLCAwLjIpIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MiBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJz
OiBtIG1hdDIoMSwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFt
ZXRlcnMnKSkgaXMgIm0gbWF0MigxLCAwLCAwLCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBl
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0MigxLCAwLCAwLCAxKSIKLQot
TWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDIo
LTEsIC0xLCAtMSwgLTEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJz
JykpIGlzICJtIG1hdDIoLTEsIC0xLCAtMSwgLTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlW
YWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9w
ZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQyKC0xLCAtMSwgLTEsIC0xKSIK
LQotTWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotcGFy
YW1ldGVyczogbSBtYXQyKC0xLCAxLCAxLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MigtMSwgMSwgMSwgLTEpIgotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlz
dC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJ
U1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQyKC0xLCAx
LCAxLCAtMSkiCi0KLU1hdDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4K
LXBhcmFtZXRlcnM6IG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpOwotUEFTUyBmaWx0ZXJBdFJ1
bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1NYXQzIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MyBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJz
OiBtIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAw
LCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90
b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENT
U1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgIm0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSIKLQotTWF0MyBwYXJhbWV0
ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDMoLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3Bh
cmFtZXRlcnMnKSkgaXMgIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSIKLQotTWF0MyBw
YXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotcGFyYW1ldGVyczog
bSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAibSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEs
IDEsIC0xLCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3Rv
ciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUu
Y3NzVGV4dCkgaXMgIm0gbWF0MygtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgMSkiCi0KLU1h
dDMgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLXBhcmFtZXRlcnM6IG0g
bWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MygxLCAtMi4yLCAz
LjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtIG1hdDMoMSwgLTIuMiwgMy4xNCwg
MC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1NYXQ0IHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0NCBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJzOiBt
IG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0NCgxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBw
YXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9M
SVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0NCgxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIKLQotTWF0NCBwYXJh
bWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDQoLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJtIG1hdDQoLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NT
VmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0
KSBpcyAibSBtYXQ0KC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xKSIKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQg
cG9zaXRpdmUgdmFsdWVzLgotcGFyYW1ldGVyczogbSBtYXQ0KC0xLCAxLCAxLCAtMSwgLTEsIDEs
IDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVy
dHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBw
YXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5
cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQ0KC0xLCAxLCAxLCAtMSwg
LTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSkiCi0KLU1hdDQgcGFyYW1l
dGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLXBhcmFtZXRlcnM6IG0gbWF0NCgxLCAt
Mi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAx
LCAtMi4yLCAzLjE0LCAwLjQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0
ZXJzJykpIGlzICJtIG1hdDQoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQs
IDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40KSIKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNU
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0NCgxLCAtMi4y
LCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAt
Mi4yLCAzLjE0LCAwLjQpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci1Db21iaW5lZCBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJh
bnNmb3JtIHBhcmFtZXRlciwgbWF0cml4IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4K
LXBhcmFtZXRlcnM6IG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1h
dDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1h
dDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJy
YXkoMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm4g
MSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIoMSwgMCwgMCwgMSks
IG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQoMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXkoMSkiCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFs
dWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxl
bmd0aCBpcyA3Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFM
VUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJuIDEiCi1Q
QVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAxMjgsIDApIgot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidCByb3RhdGUoMGRlZykiCi1Q
QVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtMSBtYXQyKDEsIDAsIDAsIDEp
IgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibTIgbWF0MygxLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAxKSIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSkiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElT
VAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJhIGFycmF5KDEpIgot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMt
cHJvcGVydHktdmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTQ4ZDNk
MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+
Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRl
ci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3Rz
L3BhcnNpbmctcGFyYW1ldGVycy1wcm9wZXJ0eS12YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
LXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDMwYjg4Y2QuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctc3JjLXByb3BlcnR5
LWludmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTY1ICswLDAgQEAKLVRl
c3Qgc3JjIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgot
Ci1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1VUkwgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU5vIHByb3BlcnR5IHZhbHVlLgotc3JjOiA7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdzcmMnKSBpcyBudWxsCi0KLU9ubHkgYSBzaW5nbGUgY29tbWEuCi1zcmM6ICw7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLU9ubHkgdHdvIGNvbW1hcy4KLXNyYzogLCAsOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1JZGVudGlmaWVyIGluc3RlYWQgb2YgVVJM
Lgotc3JjOiB2ZXJ0ZXgtc2hhZGVyOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1J
ZGVudGlmaWVyIHdpdGggZm9ybWF0IGluc3RlYWQgb2YgVVJMIHdpdGggZm9ybWF0Lgotc3JjOiB2
ZXJ0ZXgtc2hhZGVyIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKTsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J3NyYycpIGlzIG51bGwKLQotTG9jYWwgZnVuY3Rpb24gaW5zdGVhZCBvZiBVUkwgZnVuY3Rpb24u
Ci1zcmM6IGxvY2FsKHNoYWRlci52cyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUZvcm1hdCBmdW5jdGlv
biB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotSWRl
bnRpZmllciBpbnN0ZWFkIG9mIGZvcm1hdCBmdW5jdGlvbi4KLXNyYzogdXJsKHNoYWRlci52cykg
dmVydGV4LXNoYWRlcjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotU3RyaW5nIGlu
c3RlYWQgb2YgZm9ybWF0IGZ1bmN0aW9uLgotc3JjOiB1cmwoc2hhZGVyLnZzKSAneC1zaGFkZXIv
eC12ZXJ0ZXgnOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Gb3JtYXQgZnVuY3Rp
b24gbWlzc3BlbGxlZC4KLXNyYzogdXJsKHNoYWRlci52cykgZnJtdCgneC1zaGFkZXIveC12ZXJ0
ZXgnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotRm9ybWF0IGZ1bmN0aW9uIGVt
cHR5Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycp
IGlzIG51bGwKLQotRm9ybWF0IGZ1bmN0aW9uIHdpdGggc2luZ2xlIGlkZW50aWZlciBhcmd1bWVu
dC4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KHZlcnRleC1zaGFkZXIpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Gb3JtYXQgZnVuY3Rpb24gd2l0aCBzaW5nbGUgbnVtYmVy
IGFyZ3VtZW50Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoMCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdzcmMnKSBpcyBudWxsCi0KLUZvcm1hdCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIHNwYWNlLXNl
cGFyYXRlZCBpZGVudGlmZXIgYXJndW1lbnRzLgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
dmVydGV4LXNoYWRlciBmcmFnbWVudC1zaGFkZXIpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMg
bnVsbAotCi1Gb3JtYXQgZnVuY3Rpb24gd2l0aCBtdWx0aXBsZSBjb21tYS1zZXBhcmF0ZWQgaWRl
bnRpZmVyIGFyZ3VtZW50cy4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KHZlcnRleC1zaGFk
ZXIsZnJhZ21lbnQtc2hhZGVyKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotRm9y
bWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUgc3BhY2Utc2VwYXJhdGVkIHN0cmluZyBhcmd1bWVu
dHMuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnICd4LXNo
YWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLUZvcm1h
dCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIGNvbW1hLXNlcGFyYXRlZCBzdHJpbmcgYXJndW1lbnRz
Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JywneC1zaGFk
ZXIveC1mcmFnbWVudCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1NdWx0aXBs
ZSB2YWxpZCBmb3JtYXQgZnVuY3Rpb25zLgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gt
c2hhZGVyL3gtdmVydGV4JykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLVB1bmN0dWF0aW9uIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotCi1MZWFkaW5nIGNvbW1hIGJlZm9yZSBmaXJzdCBVUkwuCi1zcmM6ICwg
dXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnc3JjJykgaXMgbnVsbAotCi1Db21tYSBiZXR3ZWVuIFVSTCBhbmQgZm9ybWF0Lgotc3JjOiB1
cmwoc2hhZGVyLnZzKSwgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnc3JjJykgaXMgbnVsbAotCi1UcmFpbGluZyBjb21tYSBhZnRlciBmb3JtYXQuCi1zcmM6IHVy
bChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSw7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdzcmMnKSBpcyBudWxsCi0KLVR3byBjb21tYXMgYmV0d2VlbiBVUkxzLgotc3JjOiB1cmwoc2hh
ZGVyLnZzKSwsdXJsKHNoYWRlci5mcyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0K
LVR3byBjb21tYXMgYmV0d2VlbiBVUkxzIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZz
KSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksLHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1z
aGFkZXIveC1mcmFnbWVudCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1ObyBj
b21tYSBiZXR3ZWVuIFVSTHMuCi1zcmM6IHVybChzaGFkZXIudnMpIHVybChzaGFkZXIuZnMpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1ObyBjb21tYSBiZXR3ZWVuIFVSTHMgd2l0
aCBmb3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgn
KSB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKTsKLVBBU1MgZmls
dGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJ3NyYycpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQot
VEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC5odG1s
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3Bh
cnNpbmctc3JjLXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggN2EyNWMyMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4K
LTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRp
diBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3Rv
bS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlw
dC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLmpzIj48L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxpZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwY2I0NGY0Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12
YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwyNjkgKzAsMCBAQAotVGVzdCBz
cmMgcHJvcGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLVVSTHMgd2l0aG91dCBmb3JtYXQgdGVzdHMuCi09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBVUkwgd2l0aG91dCBmb3JtYXQuCi1z
cmM6IHVybChzaGFkZXIudnMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkg
aXMgInVybChzaGFkZXIudnMpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIgotCi1Ud28gVVJMcyB3aXRob3V0
IGZvcm1hdC4KLXNyYzogdXJsKHNoYWRlci52cyksIHVybChzaGFkZXIuZnMpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVy
LmZzKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLnZzKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1
ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVl
Ci1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykiCi0KLVRo
cmVlIFVSTHMgd2l0aG91dCBmb3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVy
LmZzKSwgdXJsKHNoYWRlcjMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkg
aXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMpIgotUEFTUyBz
cmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3Jj
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
c3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMg
dHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChz
aGFkZXIudnMpIgotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBB
U1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyLmZzKSIKLVBBU1Mgc3ViVmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJv
dG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNT
U19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNo
YWRlcjMpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1VUkxz
IHdpdGggZm9ybWF0IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1PbmUgVVJMIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycp
KSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIgotUEFTUyBz
cmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3Jj
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
c3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMg
dHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChz
aGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIKLQotVHdvIFVSTHMgd2l0aCBm
b3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwg
dXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNo
YWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21l
bnQnKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiCi1QQVNT
IHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25z
dHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgInVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIgotCi1U
aHJlZSBVUkxzIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVu
dCcpLCB1cmwoc2hhZGVyMykgZm9ybWF0KCd1bmtub3duJyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZl
cnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJs
KHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3Rh
bmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3By
b3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMg
dHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1z
aGFkZXIveC12ZXJ0ZXgnKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0
cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNo
YWRlci94LWZyYWdtZW50JykiCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMg
dHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25v
d24nKSIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTWl4ZWQg
VVJMcyB3aXRoIGFuZCB3aXRob3V0IGZvcm1hdCB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLQotVGhyZWUgVVJMcy4gTWlkZGxlIFVSTCB3aXRob3V0IGZv
cm1hdC4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLCB1
cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1z
aGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vu
a25vd24nKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwot
UEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5
cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiCi1Q
QVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18g
PT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3Nz
VGV4dCkgaXMgInVybChzaGFkZXIuZnMpIgotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRy
dWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyMykgZm9ybWF0
KCd1bmtub3duJykiCi0KLVRocmVlIFVSTHMuIEZpcnN0IGFuZCBsYXN0IFVSTHMgd2l0aG91dCBm
b3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gt
c2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1
ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1
ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIKLVBB
U1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNv
bnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9
PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NU
ZXh0KSBpcyAidXJsKHNoYWRlcjMpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci1DYXBpdGFsaXphdGlvbiB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLQotQWxsIHRva2VucyBjYXBpdGFsaXplZC4KLXNyYzogVVJMKFNI
QURFUi5WUykgRk9STUFUKCdYLVNIQURFUi9YLVZFUlRFWCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChTSEFERVIuVlMpIGZvcm1hdCgnWC1TSEFERVIvWC1W
RVJURVgnKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5
cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJ1cmwoU0hBREVSLlZTKSBmb3JtYXQoJ1gtU0hBREVSL1gtVkVSVEVYJykiCi0K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVdoaXRlc3BhY2UgdGVz
dHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUV4dHJhIGxl
YWRpbmcsIG1pZGRsZSwgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UuIAotc3JjOiAgICB1cmwoc2hh
ZGVyLnZzKSAgIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSAgICwgICB1cmwoc2hhZGVyLmZz
KSAgIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpICAgOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12
ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiCi1Q
QVNTIHNyY1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBzcmNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBzcmNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFs
dWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAi
dXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIgotUEFTUyBzdWJWYWx1
ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1
ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFs
dWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1
cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIKLQotTm8gd2hpdGVz
cGFjZSBhcm91bmQgY29tbWEuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIv
eC12ZXJ0ZXgnKSx1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykpIGlzICJ1cmwoc2hhZGVyLnZzKSBm
b3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFk
ZXIveC1mcmFnbWVudCcpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAyCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBz
dWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNz
c1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
VmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0
ZXgnKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1
YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3Nz
VmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdt
ZW50JykiCi0KLU5vIHdoaXRlc3BhY2UgYmV0d2VlbiBVUkwgYW5kIGZvcm1hdC4KLXNyYzogdXJs
KHNoYWRlci52cylmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4Jyk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94
LXZlcnRleCcpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVl
TGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVl
VHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUu
Y3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxp
ZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2MGNmNWUzLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4K
LTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2Ny
aXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0
eS12YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0
LXRlc3RzL3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1
bGUtaW52YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDRlODIyNi4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1z
eW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsMzMgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNv
bW1vbi5qcy4KLQotZGVzY3JpcHRpb24oIlRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtp
dC1maWx0ZXIuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBo
ZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGNzc1J1bGUsIGluc2VydFJ1bGVFeGNlcHRpb247Ci0K
LWZ1bmN0aW9uIHRlc3RJbnZhbGlkRmlsdGVyQXRSdWxlKGRlc2NyaXB0aW9uLCBydWxlKQotewot
ICAgIGRlYnVnKCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBydWxlKTsKLQotICAgIHRyeSB7
Ci0gICAgICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZShydWxlLCAwKTsKLSAgICAgICAgdGVzdEZh
aWxlZCgiXCIiICsgcnVsZSArICJcIiBkaWQgbm90IHRocm93IGEgc3ludGF4IGVycm9yLiIpOwot
ICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAgICAgaW5zZXJ0UnVsZUV4Y2VwdGlvbiA9IGU7Ci0gICAg
ICAgIHNob3VsZEJlVHJ1ZSgiaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2Vw
dGlvbiIpOwotICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJpbnNlcnRSdWxlRXhjZXB0aW9uLmNv
ZGUiLCAiRE9NRXhjZXB0aW9uLlNZTlRBWF9FUlIiKQotICAgIH0KLX0KLQotaGVhZGluZygiRmls
dGVyIGF0LXJ1bGUgc3ltYm9sIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIlVu
cHJlZml4ZWQgcnVsZS4iLCAiQGZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci0KLWhlYWRpbmcoIkZp
bHRlciBuYW1lIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIk1pc3NpbmcgZmls
dGVyIG5hbWUgaWRlbnRpZmllci4iLCAiQC13ZWJraXQtZmlsdGVyIHsgfSIpOwotdGVzdEludmFs
aWRGaWx0ZXJBdFJ1bGUoIkZpbHRlciBuYW1lIGFzIHN0cmluZy4iLCAiQC13ZWJraXQtZmlsdGVy
ICdteS1maWx0ZXInIHsgfSIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIkZpbHRlciBuYW1l
IGFzIG51bWJlci4iLCAiQC13ZWJraXQtZmlsdGVyIDEyMyB7IH0iKTsKLQotaGVhZGluZygiRmls
dGVyIGF0LXJ1bGUgYm9keSB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyQXRSdWxlKCJNaXNz
aW5nIHJ1bGUgYm9keS4iLCAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciIpOwotdGVzdEludmFs
aWRGaWx0ZXJBdFJ1bGUoIk1pc3Npbmcgb3BlbmluZyBicmFjZS4iLCAiQC13ZWJraXQtZmlsdGVy
IG15LWZpbHRlciB9Iik7Ci10ZXN0SW52YWxpZEZpbHRlckF0UnVsZSgiTWlzc2luZyBjbG9zaW5n
IGJyYWNlLiIsICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsiKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQt
dGVzdHMvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1bGUt
dmFsaWQuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE4ZTU5OTYuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4
L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1bGUtdmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAt
MSwxMTkgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cy4KLQotZGVzY3JpcHRpb24oIlRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtpdC1maWx0
ZXIuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJz
IHRvIHNlZSB0aGVtLgotdmFyIGNzc1J1bGUsIGRlY2xhcmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0
RmlsdGVyQXRSdWxlKGRlc2NyaXB0aW9uLCBydWxlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFBy
b3BlcnRpZXMpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHJ1bGUp
OwotCi0gICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKHJ1bGUsIDApOwotCi0gICAgLy8gQ2hlY2sg
dGhlIHJ1bGUncyB0ZXh0IGFuZCB0eXBlLgotICAgIGNzc1J1bGUgPSBzdHlsZXNoZWV0LmNzc1J1
bGVzLml0ZW0oMCk7Ci0gICAgY2hlY2tSdWxlKGV4cGVjdGVkVmFsdWUsICJDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRSIsICJXZWJLaXRDU1NGaWx0ZXJSdWxlIik7Ci0KLSAgICAvLyBDaGVjayB0
aGUgcnVsZSdzIENTU1N0eWxlRGVjbGFyYXRpb24gcHJvcGVydGllcy4KLSAgICBkZWNsYXJhdGlv
biA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgaWYgKCFleHBlY3RlZFByb3BlcnRpZXMpCi0gICAgICAg
IGV4cGVjdGVkUHJvcGVydGllcyA9IFtdOwotICAgIHZhciBudW1Qcm9wZXJ0aWVzID0gMDsKLSAg
ICBmb3IgKHZhciBwcm9wZXJ0eU5hbWUgaW4gZXhwZWN0ZWRQcm9wZXJ0aWVzKSB7Ci0gICAgICAg
IHZhciBwcm9wZXJ0eVZhbHVlID0gZXhwZWN0ZWRQcm9wZXJ0aWVzW3Byb3BlcnR5TmFtZV07Ci0g
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnIiArIHByb3BlcnR5TmFtZSArICInKSIsIHByb3BlcnR5VmFsdWUpOwotICAgICAgICBudW1Q
cm9wZXJ0aWVzKys7Ci0gICAgfQotICAgIHNob3VsZEV2YWx1YXRlVG8oImRlY2xhcmF0aW9uLmxl
bmd0aCIsIG51bVByb3BlcnRpZXMpOwotfQotCi1mdW5jdGlvbiB0ZXN0TmVzdGVkUnVsZXMoZGVz
Y3JpcHRpb24sIHBhcmVudFJ1bGUsIHBhcmVudEV4cGVjdGF0aW9ucywgY2hpbGRFeHBlY3RhdGlv
bnMpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHBhcmVudFJ1bGUp
OwotCi0gICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKHBhcmVudFJ1bGUsIDApOwotCi0gICAgY3Nz
UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBjaGVja1J1bGUocGFyZW50
RXhwZWN0YXRpb25zLmNzc1RleHQsIHBhcmVudEV4cGVjdGF0aW9ucy5ydWxlVHlwZSwgcGFyZW50
RXhwZWN0YXRpb25zLmNvbnN0cnVjdG9yTmFtZSk7Ci0KLSAgICBpZiAoY2hpbGRFeHBlY3RhdGlv
bnMpIHsKLSAgICAgICAgY3NzUnVsZSA9IGNzc1J1bGUuY3NzUnVsZXNbMF07Ci0gICAgICAgIGNo
ZWNrUnVsZShjaGlsZEV4cGVjdGF0aW9ucy5jc3NUZXh0LCBjaGlsZEV4cGVjdGF0aW9ucy5ydWxl
VHlwZSwgY2hpbGRFeHBlY3RhdGlvbnMuY29uc3RydWN0b3JOYW1lKTsKLQotICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IGNzc1J1bGUuY3NzVGV4dC5sZW5ndGg7IGkrKykgewotICAgICAgICAg
ICAgaWYgKGNzc1J1bGUuY3NzVGV4dFtpXSAhPSBjaGlsZEV4cGVjdGF0aW9ucy5jc3NUZXh0W2ld
KQotICAgICAgICAgICAgICAgIHdpbmRvdy5hbGVydChpICsgIjogIiArIGNzc1J1bGUuY3NzVGV4
dFtpXSk7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLS8vIENoZWNrcyB0aGUgZ2xvYmFsICJjc3NS
dWxlIiBhZ2FpbnN0IHNvbWUgZXhwZWN0ZWQgcHJvcGVydGllcy4KLWZ1bmN0aW9uIGNoZWNrUnVs
ZShleHBlY3RlZENTU1RleHQsIGV4cGVjdGVkUnVsZVR5cGUsIGV4cGVjdGVkQ29uc3RydWN0b3JO
YW1lKQotewotICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiY3NzUnVsZS5jc3NUZXh0IiwgZXhw
ZWN0ZWRDU1NUZXh0KTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJjc3NSdWxlLnR5cGUiLCBleHBl
Y3RlZFJ1bGVUeXBlKTsKLSAgICBzaG91bGRIYXZlQ29uc3RydWN0b3IoImNzc1J1bGUiLCBleHBl
Y3RlZENvbnN0cnVjdG9yTmFtZSk7Ci19Ci0KLWhlYWRpbmcoIkZpbHRlciBhdC1ydWxlIHRlc3Rz
LiIpOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVsZSwgc2VwYXJhdGVkIGJ5IHNpbmdsZSBz
cGFjZXMuIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iLAotICAgICJALXdl
YmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIpOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVs
ZSwgc2VwYXJhdGVkIGJ5IG11bHRpcGxlIHNwYWNlcy4iLAotICAgICIgICBALXdlYmtpdC1maWx0
ZXIgICBteS1maWx0ZXIgICB7ICAgfSAgICIsCi0gICAgIkAtd2Via2l0LWZpbHRlciBteS1maWx0
ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJFbXB0eSBydWxlLCBubyBleHRyYSB3aGl0ZXNw
YWNlLiIsCi0gICAgIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXJ7fSIsCi0gICAgIkAtd2Via2l0
LWZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJSdWxlIHdpdGggYXJi
aXRyYXJ5IHByb3BlcnRpZXMuIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IHdp
ZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgfSIsIAotICAgICJALXdlYmtpdC1maWx0ZXIgbXkt
ZmlsdGVyIHsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyB9IiwKLSAgICB7d2lkdGg6ICIx
MDBweCIsIGhlaWdodDogIjEwMHB4In0pOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVsZSwg
Y29tbWVudCBzZXBhcmF0b3JzIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyLyoqL215LWZpbHRlci8q
Ki97IH0iLAotICAgICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIpOwotdGVzdEZpbHRl
ckF0UnVsZSgiRW1wdHkgcnVsZSwgY29tbWVudCtzcGFjZSBzZXBhcmF0b3JzIiwKLSAgICAiQC13
ZWJraXQtZmlsdGVyLyoqLyBteS1maWx0ZXIvKiovIHsgfSIsCi0gICAgIkAtd2Via2l0LWZpbHRl
ciBteS1maWx0ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJFbXB0eSBydWxlLCBzcGFjZStj
b21tZW50IHNlcGFyYXRvcnMiLAotICAgICJALXdlYmtpdC1maWx0ZXIgLyoqL215LWZpbHRlciAv
KioveyB9IiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iKTsKLXRlc3RGaWx0
ZXJBdFJ1bGUoIkVtcHR5IHJ1bGUsIHNwYWNlK2NvbW1lbnQrc3BhY2Ugc2VwYXJhdG9ycyIsCi0g
ICAgIkAtd2Via2l0LWZpbHRlciAvKiovIG15LWZpbHRlciAvKiovIHsgfSIsCi0gICAgIkAtd2Vi
a2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci0KLWhlYWRpbmcoIk5lc3RlZCBmaWx0ZXIgYXQt
cnVsZSB0ZXN0cy4iKTsKLXRlc3ROZXN0ZWRSdWxlcygiTmVzdGVkIHJ1bGUuIiwKLSAgICAiQC13
ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyBALXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVy
IHsgfSB9IiwgCi0gICAgewotICAgICAgICBjc3NUZXh0OiAiQC13ZWJraXQtZmlsdGVyIHBhcmVu
dC1maWx0ZXIgeyB9IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFLAotICAgICAgICBjb25zdHJ1Y3Rvck5hbWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIgotICAg
IH0pOwotdGVzdE5lc3RlZFJ1bGVzKCJUd2ljZSBuZXN0ZWQgcnVsZS4iLAotICAgICJALXdlYmtp
dC1maWx0ZXIgcGFyZW50LWZpbHRlciB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyBA
LXdlYmtpdC1maWx0ZXIgZ3JhbmRjaGlsZC1maWx0ZXIgfSB9IiwgCi0gICAgewotICAgICAgICBj
c3NUZXh0OiAiQC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IiwKLSAgICAgICAgcnVs
ZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFLAotICAgICAgICBjb25zdHJ1Y3Rvck5h
bWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIgotICAgIH0pOwotdGVzdE5lc3RlZFJ1bGVzKCJOZXN0
ZWQgcnVsZSBpbnNpZGUgYXJiaXRyYXJ5IHJ1bGUuIiwgCi0gICAgIkBmb250LWZhY2UgeyBALXdl
YmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSB9IiwgCi0gICAgewotICAgICAgICBjc3NUZXh0
OiAiQGZvbnQtZmFjZSB7IH0iLAotICAgICAgICBydWxlVHlwZTogQ1NTUnVsZS5GT05UX0ZBQ0Vf
UlVMRSwKLSAgICAgICAgY29uc3RydWN0b3JOYW1lOiAiQ1NTRm9udEZhY2VSdWxlIgotICAgIH0p
OwotdGVzdE5lc3RlZFJ1bGVzKCJOZXN0ZWQgcnVsZSBpbnNpZGUgbWVkaWEgcXVlcnkuIiwKLSAg
ICAiQG1lZGlhIHNjcmVlbiB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IH0iLCAK
LSAgICB7Ci0gICAgICAgIGNzc1RleHQ6ICJAbWVkaWEgc2NyZWVuIHsgXG4gIEAtd2Via2l0LWZp
bHRlciBjaGlsZC1maWx0ZXIgeyB9XG59IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuTUVE
SUFfUlVMRSwKLSAgICAgICAgY29uc3RydWN0b3JOYW1lOiAiQ1NTTWVkaWFSdWxlIiwKLSAgICB9
LAotICAgIHsKLSAgICAgICAgY3NzVGV4dDogIkAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIg
eyB9IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFLAotICAg
ICAgICBjb25zdHJ1Y3Rvck5hbWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIiwKLSAgICB9KTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC5qcyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQt
dGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZDRmYWNhMy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctY3Vz
dG9tLWZ1bmN0aW9uLWludmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxMzkgKzAsMCBAQAot
ZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgY3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhl
IC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2Jh
bCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBzdHlsZVJ1bGUsIGRlY2xh
cmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0SW52YWxpZEZpbHRlclJ1bGUoZGVzY3JpcHRpb24sIHJ1
bGUpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHJ1bGUpOwotCi0g
ICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKCJib2R5IHsgLXdlYmtpdC1maWx0ZXI6ICIgKyBydWxl
ICsgIjsgfSIsIDApOwotCi0gICAgc3R5bGVSdWxlID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVt
KDApOwotICAgIHNob3VsZEJlKCJzdHlsZVJ1bGUudHlwZSIsICJDU1NSdWxlLlNUWUxFX1JVTEUi
KTsKLQotICAgIGRlY2xhcmF0aW9uID0gc3R5bGVSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJk
ZWNsYXJhdGlvbi5sZW5ndGgiLCAiMCIpOwotICAgIHNob3VsZEJlKCJkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygi
Q3VzdG9tIGZ1bmN0aW9uIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJFbXB0eSBj
dXN0b20gZnVuY3Rpb24uIiwgImN1c3RvbSgpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk9u
ZSBjb21tYSBpbiBjdXN0b20gZnVuY3Rpb24uIiwgImN1c3RvbSgsKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNdWx0aXBsZSBjb21tYXMgaW4gY3VzdG9tIGZ1bmN0aW9uLiIsICJjdXN0b20o
LCwpIik7Ci0KLWhlYWRpbmcoIkZpbHRlciBuYW1lIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJObyBmaWx0ZXIgbmFtZSB3aXRoIHBhcmFtZXRlci4iLCAiY3VzdG9tKG4gMSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1hbnkgZmlsdGVyIG5hbWVzLiIsICJjdXN0b20o
bXktZmlsdGVyLTEgbXktZmlsdGVyLTIpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkZpbHRl
ciBuYW1lIGFzIHN0cmluZy4iLCAiY3VzdG9tKCdteS1maWx0ZXItMScpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIkZpbHRlciBuYW1lIGFzIG51bWJlci4iLCAiY3VzdG9tKDEpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIGJldHdlZW4gZmlsdGVyIG5hbWUgYW5kIHBhcmFtZXRl
ci4iLCAiY3VzdG9tKG15LWZpbHRlciBuIDEpIik7Ci0KLWhlYWRpbmcoIk51bWJlciBwYXJhbWV0
ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IHBhcmFtZXRlciB2
YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIG4gMSAyIDMgNCA1KSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJJbnZhbGlkIHBhcmFtZXRlciB0eXBlLiIsICJjdXN0b20obXktZmlsdGVyLCBu
IDEuMCAyLjAgJ3RleHQnKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHBhcmFtZXRl
ciBkZWZpbml0aW9uIGFmdGVyIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyLCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gd2l0aCB0d28gY29tbWFz
LiIsICJjdXN0b20obXktZmlsdGVyLCwpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHBh
cmFtZXRlciBkZWZpbml0aW9uIGJlZm9yZSB2YWxpZCBwYXJhbWV0ZXIgZGVmaW50aW9uLiIsICJj
dXN0b20obXktZmlsdGVyLCAsIG4gMSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gcGFy
YW1ldGVyIHZhbHVlLiIsICJjdXN0b20obXktZmlsdGVyLCBuKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgd2l0aCBtdWx0aXBsZSBwYXJhbWV0ZXJzLiIsICJj
dXN0b20obXktZmlsdGVyLCBuMSwgbjIsIG4zKSIpOwotCi1oZWFkaW5nKCJDb2xvciBwYXJhbWV0
ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHJnYiBjb2xvciB2YWx1ZXMu
IiwgImN1c3RvbShteS1maWx0ZXIsIGMgcmdiKCwsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiTm8gaHNsIGNvbG9yIHZhbHVlcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYyBoc2woLCwpKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJIZXggd2l0aCA4IGNoYXJhY3RlcnMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGMgI0ZGMDAwMEZGKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJIZXgg
d2l0aCAyIGNoYXJhY3Rlci4iLCAiY3VzdG9tKG15LWZpbHRlciwgYyAjRkYpIik7Ci10ZXN0SW52
YWxpZEZpbHRlclJ1bGUoIlJnYmEgd2l0aCAzIHZhbHVlcyBhbmQgMiBjb21tYXMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGMgcmdiYSgyNTUsIDAsIDApKSIpOwotCi1oZWFkaW5nKCJUcmFuc2Zvcm0g
cGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgaW52YWxpZCB0
cmFuc2Zvcm0gZnVuY3Rpb24uIiwgImN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUo
MGRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk11bHRpcGxlIGludmFsaWQgdHJhbnNm
b3JtIGZ1bmN0aW9ucy4iLCAiY3VzdG9tKG15LWZpbHRlciwgdCBpbnZhbGlkLXJvdGF0ZSgwZGVn
KSBpbnZhbGlkLXBlcnNwZWN0aXZlKDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZh
bGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuIiwgImN1c3RvbShteS1m
aWx0ZXIsIHQgcm90YXRlKDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDAp
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gYmV0
d2VlbiBpbnZhbGlkIG9uZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUo
MGRlZykgcGVyc3BlY3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCkpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiB3aXRob3V0IGxlYWRpbmcgY29t
bWEuIiwgImN1c3RvbShteS1maWx0ZXIgdCBwZXJzcGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiVmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGggdHJhaWxpbmcgY29tbWEu
IiwgImN1c3RvbShteS1maWx0ZXIsIHQgcGVyc3BlY3RpdmUoMCksKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gd2l0aCB0cmFpbGluZyBjb21tYSBh
bmQgd2l0aG91dCBsZWFkaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyIHQgcGVyc3BlY3Rp
dmUoMCksKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHRyYW5zZm9ybSB3aXRo
IHRyYWlsaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyLCB0IGludmFsaWQtcm90YXRlKDBk
ZWcpLCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aG91
dCBsZWFkaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyIHQgaW52YWxpZF9yb3RhdGUoMGRl
ZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3aXRoIGludmFs
aWQgY2hhcmFjdGVycyIsICJjdXN0b20obXktZmlsdGVyLHQgcm90YXRlKDBkZWcpICouLSwpIik7
Ci0KLWhlYWRpbmcoIkFycmF5IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiRW1wdHkgYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoKSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiT25lIGNvbW1hIGluIGFycmF5LiIsICJjdXN0b20obXktZmls
dGVyLCBhIGFycmF5KCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aXBsZSBjb21t
YXMgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCwsKSkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTXVsdGlwbGUgY29tbWFzIHdpdGggYSB2YWx1ZSBpbiBhcnJheS4i
LCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgsLDEsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEgbmVnYXRpdmUgdmFsdWUgaW4gYXJyYXkuIiwg
ImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLC00KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEgdmFsdWUgaW4gYXJyYXkuIiwgImN1c3RvbShteS1m
aWx0ZXIsIGEgYXJyYXkoLDQpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgbmVnYXRp
dmUgdmFsdWUgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgtNCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgdmFsdWUgZm9s
bG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSg0
LCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHZhbHVlcyBmb2xsb3dlZCBieSBh
IGNvbW1hIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQs
KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEg
bGV0dGVyIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQs
IHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUd28gY29tbWFzIGFzIHNlcGFyYXRvciBi
ZXR3ZWVuIHZhbHVlcyBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAy
LCAsIDQpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJMZWFkaW5nIGNvbW1hIGluIGFycmF5
LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwxLCAyLCAzLCA0KSkiKTsKLXRlc3RJbnZh
bGlkRmlsdGVyUnVsZSgiU2VtaWNvbG9uIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMTsgMjsgMzsgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIlNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0
ZXIsIGEgYXJyYXkoMSAyIDMgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIHNl
cGFyYXRlZCB2YWx1ZXMgd2l0aCBjb21tYSB0ZXJtaW5hdG9yIGluIGFycmF5LiIsICJjdXN0b20o
bXktZmlsdGVyLCBhIGFycmF5KDEgMiAzIDQsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgi
U3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCAxIDIgMyA0KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiTmFOIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KE5hTikpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5hTiBiZXR3ZWVuIHZhbGlkIHZhbHVlcyBpbiBhcnJh
eS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCBOYU4sIDMpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHZhbHVlICdub25lJyBpbiBhcnJheS4iLCAiY3VzdG9t
KG15LWZpbHRlciwgYSBhcnJheShub25lKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52
YWxpZCB2YWx1ZSB1bml0ICdweCcgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoMXB4KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB2YWx1ZSB1bml0ICdk
ZWcnIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDFkZWcpKSIpOwotdGVz
dEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheSBhZnRl
ciB2YWxpZCB2YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgMywgNHB4
KSkiKTsKLQotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiRW1wdHkgbWF0Mi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2aWV3IGFyZ3VtZW50cy4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQyKDAsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBh
cmd1bWVudHMgYnV0IGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKCwsLCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0
ZXIsIGEgbWF0MigwLCAwLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4g
bWF0MiBmdW5jdGlvbi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDAsIDAsIGEsIGIpKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVudHMuIiwgImN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MigwLCAwLCAwLCAwLCAxKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMSAwIDAgMSkpIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNvbWUgY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBh
IG1hdDIoMSwgMCwgMCAxKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTGVhZGluZyBjb21t
YXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigsIDAsIDAsIDEpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJObyBsZW5ndGggdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0
MigxcHgsIDBweCwgMHB4LCAxcHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdy
ZWUgdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigxZGVnLCAwZGVnLCAwZGVnLCAx
ZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGluIG1hdDIuIiwgImN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MigxLCAwLCAwLCBOYU4pKSIpOwotCi1oZWFkaW5nKCJNYXQzIHBhcmFt
ZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgbWF0My4iLCAiY3Vz
dG9tKG15LWZpbHRlciwgYSBtYXQzKCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2
aWV3IGFyZ3VtZW50cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDAsIDAsIDAsIDApKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4iLCAiY3Vz
dG9tKG15LWZpbHRlciwgYSBtYXQzKCwsLCwsLCwsLCwsLCwsLCkpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAw
LCAwLCAwLCAxLCAwLCAwLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4g
bWF0MyBmdW5jdGlvbi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEsIDAsIDAsIDAsIDEs
IDAsIDAsIGEsIGIpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVu
dHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAx
LCAwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMSAwIDAgMCAxIDAgMCAwIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJS
dWxlKCJTb21lIGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEsIDAsIDAsIDAs
IDEsIDAgMCAwIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJMZWFkaW5nIGNvbW1hcy4i
LCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIGxlbmd0aCB1bml0cy4iLCAiY3VzdG9tKG15LWZp
bHRlciwgYSBtYXQzKDFweCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAxcHgpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdyZWUgdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0MygxZGVnLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAxZGVnKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiTmFOIGluIG1hdDMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MihOYU4s
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpKSIpOwotCi1oZWFkaW5nKCJNYXQ0IHBhcmFtZXRlciB0
ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgbWF0NC4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQ0KCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2aWV3IGFy
Z3VtZW50cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDEsIDAsIDAs
IDAsIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBhcmd1bWVudHMgYnV0IGNvbW1h
cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KCwsLCwsLCwsLCwsLCwsLCkpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCwpKSIpOwotdGVz
dEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDEsIDAsIDAsIGEsIGIpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVudHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwKSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVy
LCBhIG1hdDQoMSAwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSkpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIlNvbWUgY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMSwg
MCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCAwIDAgMCAxKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiTGVhZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgs
IDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBsZW5ndGggdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxcHgsIDAsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAx
cHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdyZWUgdW5pdHMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGEgbWF0NCgxZGVnLCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAx
ZGVnLCAwLCAwLCAwLCAwLCAxZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGlu
IG1hdDQuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0NChOYU4sIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotCi0KLWhlYWRpbmcoIk1peGluZyBwYXJh
bWV0ZXIgdHlwZXMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk51bWJlciBwYXJhbWV0ZXIg
d2l0aCBoZXggY29sb3IuIiwgImN1c3RvbShteS1maWx0ZXIsIG4xIDEgMiAjRkYwMDAwKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJOdW1iZXIgcGFyYW1ldGVyIHdpdGggY29sb3Iga2V5d29y
ZC4iLCAiY3VzdG9tKG15LWZpbHRlciwgbjEgMSAyIHJlZCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiTnVtYmVyIHBhcmFtZXRlciB3aXRoIHJnYiBjb2xvci4iLCAiY3VzdG9tKG15LWZpbHRl
ciwgbjEgMSAyIHJnYigyNTUsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJDb2xv
ciB3aXRoIG51bWJlciBwYXJhbWV0ZXIuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwg
MCwgMCkgMSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiQ29sb3IgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMCwgcmdiKDI1NSwgMCwgMCkpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJDb2xvciBhbmQgYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoMCwgMCkgcmdiKDI1NSwgMCwgMCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSByb3RhdGUoNDVk
ZWcpIHJnYigyNTUsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJDb2xvciB3aXRo
IHRyYW5zZm9ybSB2YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwgMCwgMCkg
cm90YXRlKDQ1ZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiQ29sb3Igd2l0aCBtYXQy
LiIsICJjdXN0b20obXktZmlsdGVyLCBhIHJnYigyNTUsIDAsIDApIG1hdDIoMCwgMCwgMCwgMCkp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIm1hdDIgd2l0aCBtYXQzLiIsICJjdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDIoMSwgMCwgMCwgMSkgbWF0MygwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQu
anMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgv
c2NyaXB0LXRlc3RzL3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9uLXZhbGlkLmpzCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA3MWM1YTBmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2lu
Zy1jdXN0b20tZnVuY3Rpb24tdmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxNjcgKzAsMCBA
QAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9u
IG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBi
ZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgc3R5bGVSdWxl
LCBzdHlsZURlY2xhcmF0aW9uLCBmaWx0ZXJQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1ZTsKLQotZnVu
Y3Rpb24gdGVzdEZpbHRlclByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlLCBleHBl
Y3RlZFZhbHVlLCBleHBlY3RlZFR5cGVzLCBleHBlY3RlZFRleHRzKQotewotICAgIGRlYnVnKCJc
biIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBwcm9wZXJ0eVZhbHVlKTsKLQotICAgIHN0eWxlc2hl
ZXQuaW5zZXJ0UnVsZSgiYm9keSB7IC13ZWJraXQtZmlsdGVyOiAiICsgcHJvcGVydHlWYWx1ZSAr
ICI7IH0iLCAwKTsKLSAgICBzdHlsZVJ1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVzLml0ZW0oMCk7
Ci0gICAgc2hvdWxkQmUoInN0eWxlUnVsZS50eXBlIiwgIkNTU1J1bGUuU1RZTEVfUlVMRSIpOwot
Ci0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IHN0eWxlUnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgi
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgiLCAiMSIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykiLCAiJyIgKyBleHBlY3Rl
ZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclByb3BlcnR5VmFsdWUgPSBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5Q1NTVmFsdWUoJy13ZWJraXQtZmlsdGVyJyk7Ci0gICAgc2hvdWxkSGF2
ZUNvbnN0cnVjdG9yKCJmaWx0ZXJQcm9wZXJ0eVZhbHVlIiwgIkNTU1ZhbHVlTGlzdCIpOwotCi0g
ICAgaWYgKCFleHBlY3RlZFR5cGVzKSB7Ci0gICAgICAgIGV4cGVjdGVkVHlwZXMgPSBbIldlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NIl07Ci0gICAgICAgIGV4cGVjdGVkVGV4
dHMgPSBbZXhwZWN0ZWRWYWx1ZV07Ci0gICAgfQotICAgIAotICAgIHNob3VsZEJlKCJmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCIsICIiICsgZXhwZWN0ZWRUeXBlcy5sZW5ndGgpOyAvLyBzaG91
bGRCZSBleHBlY3RzIHN0cmluZyBhcmd1bWVudHMKLSAgCi0gICAgaWYgKGZpbHRlclByb3BlcnR5
VmFsdWUpIHsKLSAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBleHBlY3RlZFR5cGVzLmxlbmd0
aDsgaSsrKSB7Ci0gICAgICAgICAgICBzdWJWYWx1ZSA9IGZpbHRlclByb3BlcnR5VmFsdWVbaV07
Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViVmFsdWUub3BlcmF0aW9uVHlwZSIsIGV4cGVjdGVk
VHlwZXNbaV0pOwotICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1RleHQiLCAiJyIg
KyBleHBlY3RlZFRleHRzW2ldICsgIiciKTsKLSAgICAgICAgfQotICAgIH0KLX0KLQotaGVhZGlu
ZygiQ3VzdG9tIGZ1bmN0aW9uIHRlc3RzLiIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDdXN0b20g
ZnVuY3Rpb24gaW4gQ0FQUy4iLAotICAgICJDVVNUT00obXktZmlsdGVyKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIpIik7Ci0KLWhlYWRpbmcoIkZpbHRlciBjaGFpbiB0ZXN0cy4iKQotdGVzdEZp
bHRlclByb3BlcnR5KCJDdXN0b20gZnVuY3Rpb24gaW4gbWlkZGxlIG9mIGZpbHRlciBjaGFpbi4i
LAotICAgICJncmF5c2NhbGUoKSBjdXN0b20obXktZmlsdGVyKSBzZXBpYSgpIiwgImdyYXlzY2Fs
ZSgpIGN1c3RvbShteS1maWx0ZXIpIHNlcGlhKCkiLAotICAgIFsiV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUiLAotICAgICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTSIsCi0gICAgIldlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfU0VQ
SUEiXSwKLSAgICBbImdyYXlzY2FsZSgpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlcikiLAotICAg
ICJzZXBpYSgpIl0pOwotCi1oZWFkaW5nKCJGaWx0ZXIgbmFtZSB0ZXN0cy4iKTsKLXRlc3RGaWx0
ZXJQcm9wZXJ0eSgiRmlsdGVyIG5hbWUgb25seS4iLAotICAgICJjdXN0b20obXktZmlsdGVyKSIs
Ci0gICAgImN1c3RvbShteS1maWx0ZXIpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkZpbHRlciBu
YW1lIGFzIENTUyAnbm9uZScga2V5d29yZC4iLAotICAgICJjdXN0b20obm9uZSkiLAotICAgICJj
dXN0b20obm9uZSkiKTsKLQotaGVhZGluZygiTnVtYmVyIHBhcmFtZXRlciB0ZXN0cy4iKQotdGVz
dEZpbHRlclByb3BlcnR5KCJJbnRlZ2VyIHBhcmFtZXRlcnMuIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNykiLAotICAgICJjdXN0b20o
bXktZmlsdGVyLCBuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3KSIpOwotdGVzdEZp
bHRlclByb3BlcnR5KCJGbG9hdCBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIs
IG4xIDEuMSwgbjIgMi4yIDMuMywgbjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCki
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBuMSAxLjEsIG4yIDIuMiAzLjMsIG4zIDMuMSA0LjEg
NS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIlBhcmFtZXRl
ciBuYW1lIHNhbWUgYXMgQ1NTIGtleXdvcmQuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYmFj
a2dyb3VuZCAwIDEgMCAxKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGJhY2tncm91bmQgMCAx
IDAgMSkiKTsKLQotaGVhZGluZygiQ29sb3IgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdEZpbHRl
clByb3BlcnR5KCJIZXggY29sb3IuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyAjMDBGRjAw
KSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpIik7Ci10ZXN0Rmls
dGVyUHJvcGVydHkoIkNvbG9yIGtleXdvcmQuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyBn
cmVlbikiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYigwLCAxMjgsIDApKSIpOwotdGVz
dEZpbHRlclByb3BlcnR5KCJDb2xvciByZ2IgZnVuY3Rpb24uIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgYyByZ2IoMCwgMTI4LCAwKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYigw
LCAxMjgsIDApKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDb2xvciBoc2wgZnVuY3Rpb24uIiwK
LSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyBoc2woMTIwLCAxMDAlLCA1MCUpKSIsCi0gICAgImN1
c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHko
IkNvbG9yIHJnYmEgZnVuY3Rpb24uIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyByZ2JhKDAs
IDI1NSwgMCwgMC4yKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAw
LCAwLjIpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDb2xvciBoc2xhIGZ1bmN0aW9uLiIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIGMgaHNsYSgxMjAsIDEwMCUsIDUwJSwgMC4yKSkiLAotICAg
ICJjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAwLCAwLjIpKSIpOwotCi1oZWFkaW5n
KCJUcmFuc2Zvcm0gcGFyYW1ldGVyIHRlc3RzLiIpCi10ZXN0RmlsdGVyUHJvcGVydHkoIlRyYW5z
Zm9ybSBwYXJhbWV0ZXIgd2l0aCBvbmUgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIHQg
cm90YXRlKDBkZWcpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJUcmFuc2Zvcm0gcGFyYW1ldGVy
IHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtIGZ1bmN0aW9ucy4iLAotICAgICJjdXN0b20obXktZmls
dGVyLCB0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUo
MHB4LCAwcHgpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpIHBlcnNw
ZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkpIik7Ci10ZXN0RmlsdGVy
UHJvcGVydHkoIk11bGl0cGxlIHRyYW5zZm9ybSBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbSht
eS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKSIpOwotCi1oZWFk
aW5nKCJBcnJheSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkFycmF5
IHBhcmFtZXRlciB3aXRoIG5hbWUgJ2FycmF5Jy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBh
cnJheSBhcnJheSgxKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSki
KTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQXJyYXkgcGFyYW1ldGVyIHdpdGggb25lIHBvc2l0aXZl
IGludGVnZXIuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxKSkiLAotICAgICJj
dXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJBcnJh
eSBwYXJhbWV0ZXIgd2l0aCBvbmUgbmVnYXRpdmUgZmxvYXQuIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgYSBhcnJheSgtMS4wMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgt
MS4wMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRp
cGxlIHBvc2l0aXZlIGludGVnZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXko
MSwgMiwgMywgNCwgNSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAz
LCA0LCA1KSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQXJyYXkgcGFyYW1ldGVyIHdpdGggbXVs
dGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEs
IC0yLjIsIDMuMTQsIDAuNCwgNSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgx
LCAtMi4yLCAzLjE0LCAwLjQsIDUpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNdWx0aXBsZSBh
cnJheSBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGExIGFycmF5KDEsIC0y
LjIsIDMuMTQsIDAuNCwgNSksIGEyIGFycmF5KDEsIDIsIDMpKSIsCi0gICAgImN1c3RvbShteS1m
aWx0ZXIsIGExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSksIGEyIGFycmF5KDEsIDIsIDMp
KSIpOwotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RGaWx0ZXJQcm9w
ZXJ0eSgiTWF0MiBwYXJhbWV0ZXIuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKDEs
IDAsIDAsIDEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MigxLCAwLCAwLCAxKSki
KTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiTWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1
ZXMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAtMSwgLTEsIC0xKSkiLAot
ICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIC0xLCAtMSwgLTEpKSIpOwotdGVzdEZp
bHRlclByb3BlcnR5KCJNYXQyIHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2
YWx1ZXMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAxLCAxLCAtMSkpIiwK
LSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAxLCAxLCAtMSkpIik7Ci10ZXN0Rmls
dGVyUHJvcGVydHkoIk1hdDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4i
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSkiLAot
ICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSkiKTsKLQot
aGVhZGluZygiTWF0MyBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1h
dDMgcGFyYW1ldGVyLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAwLCAwLCAw
LCAxLCAwLCAwLCAwLCAxKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoMSwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMgcGFyYW1l
dGVyIHdpdGggbmVnYXRpdmUgdmFsdWVzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0
MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSkiLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDMoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkpIik7Ci10
ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5kIHBvc2l0
aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIDEsIDEsIC0x
LCAtMSwgMSwgMSwgLTEsIDEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwg
MSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMg
cGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEp
KSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEs
IC0yLjIsIDMuMTQsIDAuNCwgMSkpIik7Ci0KLWhlYWRpbmcoIk1hdDQgcGFyYW1ldGVyIHRlc3Rz
LiIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNYXQ0IHBhcmFtZXRlci4iLAotICAgICJjdXN0b20o
bXktZmlsdGVyLCBtIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIDAsIDAsIDAsIDAs
IDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5
KCJNYXQ0IHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSwgLTEsIC0xLCAtMSwgLTEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRp
dmUgYW5kIHBvc2l0aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDQo
LTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xKSki
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwg
LTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xKSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgi
TWF0NCBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRzLiIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpKSIpOwotCi1oZWFkaW5n
KCJDb21iaW5lZCBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk51bWJl
ciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJhbnNmb3JtIHBhcmFtZXRlciwgbWF0cml4
IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4iLAotICAgICJjdXN0b20obXktZmlsdGVy
LCBuIDEsIGMgcmdiKDAsIDEyOCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAs
IDEpLCBtMiBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFycmF5KDEpKSIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRl
ZyksIG0xIG1hdDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MSksIG0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSksIGEgYXJyYXkoMSkpIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctZ2VvbWV0cnkt
cHJvcGVydHktaW52YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1p
bnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzOTU5OTNhLi4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1pbnZhbGlkLmpzCisrKyAv
ZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJz
aW5nLWNvbW1vbi5qcy4KLQotZGVzY3JpcHRpb24oIlRlc3QgZ2VvbWV0cnkgcHJvcGVydHkgcGFy
c2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuIik7Ci0KLS8vIFRoZXNlIGhhdmUg
dG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGZpbHRl
ckF0UnVsZSwgc3R5bGVEZWNsYXJhdGlvbjsKLQotZnVuY3Rpb24gdGVzdEludmFsaWRHZW9tZXRy
eVByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBnZW9tZXRy
eVByb3BlcnR5ID0gImdlb21ldHJ5OiAiICsgcHJvcGVydHlWYWx1ZSArICI7IjsKLSAgICBkZWJ1
ZygiXG4iICsgZGVzY3JpcHRpb24gKyAiXG4iICsgZ2VvbWV0cnlQcm9wZXJ0eSk7Ci0KLSAgICBz
dHlsZXNoZWV0Lmluc2VydFJ1bGUoIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgZ2Vv
bWV0cnlQcm9wZXJ0eSArICIgfSIsIDApOwotCi0gICAgZmlsdGVyQXRSdWxlID0gc3R5bGVzaGVl
dC5jc3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJBdFJ1bGUudHlwZSIsICJD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IGZp
bHRlckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgi
LCAiMCIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J2dlb21ldHJ5JykiLCAibnVsbCIpOwotfQotCi1oZWFkaW5nKCJHZW9tZXRyeSB0ZXN0cy4iKTsK
LXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiTm8gcHJvcGVydHkgdmFsdWUuIiwgIiIpOwot
dGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJFbXB0eSBncmlkLiIsICJncmlkKCkiKTsKLXRl
c3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiTWlzcGVsbGVkIGdyaWQgZnVuY3Rpb24uIiwgImdy
aWlkKDEgMSkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiU2luZ2xlIG5lZ2F0aXZl
IHZhbHVlIGluIGdyaWQuIiwgImdyaWQoLTEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVy
dHkoIk5lZ2F0aXZlIHZhbHVlIGluIGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLiIsICJn
cmlkKDEgLTEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIk5lZ2F0aXZlIHZhbHVl
IGluIGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4iLCAiZ3JpZCgtMSAx
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJUd28gbmVnYXRpdmUgdmFsdWVzLiIs
ICJncmlkKC0xIC0xKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJTaW5nbGUgemVy
byB2YWx1ZS4iLCAiZ3JpZCgwKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJaZXJv
IHdpdGggYSB2YWxpZCB2YWx1ZS4iLCAiZ3JpZCgwIDEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5
UHJvcGVydHkoIlplcm8gd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4iLCAiZ3JpZCgxIDAp
Iik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIkF0dGFjaGVkIHZhbHVlIGFsb25lLiIs
ICJncmlkKGF0dGFjaGVkKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJEZXRhY2hl
ZCB2YWx1ZSBhbG9uZS4iLCAiZ3JpZChkZXRhY2hlZCkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQ
cm9wZXJ0eSgiRGV0YWNoZWQgYW5kIGF0dGFjaGVkLiIsICJncmlkKGF0dGFjaGVkIGF0dGFjaGVk
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJUb28gbWFueSB2YWx1ZXMuIiwgImdy
aWQoMSAxIGF0dGFjaGVkIGRldGFjaGVkKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5
KCJNaXNwZWxsZWQgYXR0YWNoZWQuIiwgImdyaWQoMSAxIGF0dGFjZCkiKTsKLXRlc3RJbnZhbGlk
R2VvbWV0cnlQcm9wZXJ0eSgiTWlzcGVsbGVkIGRldGFjaGVkLiIsICJncmlkKDEgMSBkZXRhY2hl
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJJbnZhbGlkIGRpdmlkZXIuIiwgImdy
aWQoMSwgMSBhdHRhY2hlZCkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiSW52YWxp
ZCBkaXZpZGVyLCByZWxvYWRlZC4iLCAiZ3JpZCgxIDEsIGF0dGFjaGVkKSIpOwotdGVzdEludmFs
aWRHZW9tZXRyeVByb3BlcnR5KCJOb24gaW50ZWdlciB2YWx1ZXMuIiwgImdyaWQoMS4zIDEpIik7
Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIk5vbiBpbnRlZ2VyIHZhbHVlcy4iLCAiZ3Jp
ZCgxIDEuMykiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiVGhyZWUgaW50ZWdlcnMu
IiwgImdyaWQoMSAyIDMpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIkF0dGFjaGVk
IGluIGJldHdlZW4gdHdvIGludGVnZXJzLiIsICJncmlkKDEgYXR0YWNoZWQgMSkiKTsKLXRlc3RJ
bnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiRGV0YWNoZWQgaW4gYmV0d2VlbiB0d28gaW50ZWdlcnMu
IiwgImdyaWQoMSBkZXRhY2hlZCAxKSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWdl
b21ldHJ5LXByb3BlcnR5LXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWdlb21ldHJ5LXByb3Bl
cnR5LXZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMmUxMmFiLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12YWxpZC5qcworKysg
L2Rldi9udWxsCkBAIC0xLDc3ICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFy
c2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IGdlb21ldHJ5IHByb3BlcnR5IHBh
cnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZl
IHRvIGJlIGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0
ZXJBdFJ1bGUsIHN0eWxlRGVjbGFyYXRpb24sIGdlb21ldHJ5UHJvcGVydHlWYWx1ZSwgc3ViVmFs
dWU7Ci0KLWZ1bmN0aW9uIHRlc3RHZW9tZXRyeVByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0
eVZhbHVlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBnZW9tZXRy
eVByb3BlcnR5ID0gImdlb21ldHJ5OiAiICsgcHJvcGVydHlWYWx1ZSArICI7IgotICAgIGRlYnVn
KCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBnZW9tZXRyeVByb3BlcnR5KTsKLQotICAgIHN0
eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBnZW9t
ZXRyeVByb3BlcnR5ICsgIiB9IiwgMCk7Ci0gICAgZmlsdGVyQXRSdWxlID0gc3R5bGVzaGVldC5j
c3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJBdFJ1bGUudHlwZSIsICJDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IGZpbHRl
ckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgiLCAi
MSIpOwotICAgIHNob3VsZEJlKCJyZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnZ2VvbWV0cnknKSkiLCAiXCIiICsgZXhwZWN0ZWRWYWx1ZSArICJcIiIpOwot
Ci0gICAgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eUNTU1ZhbHVlKCdnZW9tZXRyeScpOwotICAgIHNob3VsZEhhdmVDb25zdHJ1Y3RvcigiZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlIiwgIkNTU1ZhbHVlTGlzdCIpOwotCi0gICAgc2hvdWxkQmUoImdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0cmluZygp
KTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi19Ci0KLWhlYWRpbmcoIkdl
b21ldHJ5IHByb3BlcnR5LiIpOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0cnkgd2l0
aCBmdWxsIG1lc2ggYW5kIGF0dGFjaGVkLiIsCi0gICAgImdyaWQoMSAxIGF0dGFjaGVkKSIsCi0g
ICAgIjEgMSBhdHRhY2hlZCIsCi0gICAgWyIxIiwgIjEiLCAiYXR0YWNoZWQiXSk7Ci0KLXRlc3RH
ZW9tZXRyeVByb3BlcnR5KCJHZW9tZXRyeSB3aXRoIGZ1bGwgbWVzaCBhbmQgZGV0YWNoZWQuIiwK
LSAgICAiZ3JpZCgxIDEgZGV0YWNoZWQpIiwKLSAgICAiMSAxIGRldGFjaGVkIiwKLSAgICBbIjEi
LCAiMSIsICJkZXRhY2hlZCJdKTsKLQotdGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdp
dGggZnVsbCBtZXNoIGFuZCBubyBhdHRhY2hlZCwgbm9yIGRldGFjaGVkLiIsCi0gICAgImdyaWQo
MSAxKSIsCi0gICAgIjEgMSIsCi0gICAgWyIxIiwgIjEiXSk7Ci0KLXRlc3RHZW9tZXRyeVByb3Bl
cnR5KCJHZW9tZXRyeSB3aXRoIG9ubHkgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZCgxKSIs
Ci0gICAgIjEiLAotICAgIFsiMSJdKTsKLQotdGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5
IHdpdGggb25lIG1lc2ggdmFsdWUgYW5kIGF0dGFjaGVkLiIsCi0gICAgImdyaWQoMSBhdHRhY2hl
ZCkiLAotICAgICIxIGF0dGFjaGVkIiwKLSAgICBbIjEiLCAiYXR0YWNoZWQiXSk7Ci0KLXRlc3RH
ZW9tZXRyeVByb3BlcnR5KCJHZW9tZXRyeSB3aXRoIG9uZSBtZXNoIHZhbHVlIGFuZCBkZXRhY2hl
ZC4iLAotICAgICJncmlkKDEgZGV0YWNoZWQpIiwKLSAgICAiMSBkZXRhY2hlZCIsCi0gICAgWyIx
IiwgImRldGFjaGVkIl0pOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0cnkgd2l0aCBh
dHRhY2hlZCBiZWZvcmUgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZChhdHRhY2hlZCAxKSIs
Ci0gICAgImF0dGFjaGVkIDEiLAotICAgIFsiYXR0YWNoZWQiLCAiMSJdKTsKLQotdGVzdEdlb21l
dHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdpdGggYXR0YWNoZWQgYmVmb3JlIHR3byBtZXNoIHZhbHVl
cy4iLAotICAgICJncmlkKGF0dGFjaGVkIDEgMSkiLAotICAgICJhdHRhY2hlZCAxIDEiLAotICAg
IFsiYXR0YWNoZWQiLCAiMSIsICIxIl0pOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0
cnkgd2l0aCBkZXRhY2hlZCBiZWZvcmUgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZChkZXRh
Y2hlZCAxKSIsCi0gICAgImRldGFjaGVkIDEiLAotICAgIFsiZGV0YWNoZWQiLCAiMSJdKTsKLQot
dGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdpdGggZGV0YWNoZWQgYmVmb3JlIHR3byBt
ZXNoIHZhbHVlcy4iLAotICAgICJncmlkKGRldGFjaGVkIDEgMSkiLAotICAgICJkZXRhY2hlZCAx
IDEiLAotICAgIFsiZGV0YWNoZWQiLCAiMSIsICIxIl0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9w
YXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9w
ZXJ0eS1pbnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNTJjOGFiLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxl
LXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJvcGVydHktaW52YWxpZC5qcworKysg
L2Rldi9udWxsCkBAIC0xLDMwICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFy
c2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IG1peCBwcm9wZXJ0eSBwYXJzaW5n
IGluIHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBi
ZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgZmlsdGVyQXRS
dWxlLCBzdHlsZURlY2xhcmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0SW52YWxpZE1peFByb3BlcnR5
KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBtaXhQcm9wZXJ0eSA9ICJt
aXg6ICIgKyBwcm9wZXJ0eVZhbHVlICsgIjsiOwotICAgIGRlYnVnKCJcbiIgKyBkZXNjcmlwdGlv
biArICJcbiIgKyBtaXhQcm9wZXJ0eSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoIkAt
d2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgbWl4UHJvcGVydHkgKyAiIH0iLCAwKTsKLQot
ICAgIGZpbHRlckF0UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91
bGRCZSgiZmlsdGVyQXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsK
LQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxk
QmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwgIjAiKTsKLSAgICBzaG91bGRCZSgic3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSIsICJudWxsIik7Ci19Ci0KLWhlYWRp
bmcoIlZhbHVlIHRlc3QuIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJObyBwcm9wZXJ0eSB2
YWx1ZS4iLCAiIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJUaHJlZSB2YWx1ZXMuIiwgInNj
cmVlbiBzb3VyY2Utb3ZlciBzY3JlZW4iKTsKLXRlc3RJbnZhbGlkTWl4UHJvcGVydHkoIlRocmVl
IHZhbHVlcy4iLCAic2NyZWVuIHNvdXJjZS1vdmVyIHNvdXJjZS1vdmVyIik7Ci10ZXN0SW52YWxp
ZE1peFByb3BlcnR5KCJUd28gYmxlbmQgbW9kZXMuIiwgInNjcmVlbiBzY3JlZW4iKTsKLXRlc3RJ
bnZhbGlkTWl4UHJvcGVydHkoIlR3byBjb21wb3NpdGUgb3BlcmF0b3JzLiIsICJzb3VyY2Utb3Zl
ciBzb3VyY2Utb3ZlciIpOwotdGVzdEludmFsaWRNaXhQcm9wZXJ0eSgiVHdvIGJsZW5kIG1vZGVz
LiIsICJzY3JlZW4gc2NyZWVuIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJDb21tYSBiZXR3
ZWVuIHZhbHVlcy4iLCAic2NyZWVuLCBzb3VyY2Utb3ZlciIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0
cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJv
cGVydHktdmFsaWQuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEyYTYzMjIuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxpZC5qcworKysgL2Rl
di9udWxsCkBAIC0xLDg1ICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFyc2lu
Zy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IG1peCBwcm9wZXJ0eSBwYXJzaW5nIGlu
IHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBiZSBn
bG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgZmlsdGVyQXRSdWxl
LCBzdHlsZURlY2xhcmF0aW9uLCBtaXhQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1ZTsKLQotZnVuY3Rp
b24gdGVzdE1peFByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlLCBleHBlY3RlZFZh
bHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBtaXhQcm9wZXJ0eSA9ICJtaXg6ICIgKyBw
cm9wZXJ0eVZhbHVlICsgIjsiCi0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiAr
IG1peFByb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmls
dGVyIG15LWZpbHRlciB7ICIgKyBtaXhQcm9wZXJ0eSArICIgfSIsIDApOwotICAgIGZpbHRlckF0
UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91bGRCZSgiZmlsdGVy
QXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsKLQotICAgIHN0eWxl
RGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUoInN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIiwgIjEiKTsKLSAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSIsICJcIiIgKyBleHBlY3RlZFZh
bHVlICsgIlwiIik7Ci0KLSAgICBtaXhQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eUNTU1ZhbHVlKCdtaXgnKTsKLSAgICBzaG91bGRIYXZlQ29uc3RydWN0b3IoIm1p
eFByb3BlcnR5VmFsdWUiLCAiQ1NTVmFsdWVMaXN0Iik7Ci0KLSAgICBzaG91bGRCZSgibWl4UHJv
cGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0cmluZygpKTsgLy8g
c2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAotICAgIGlmIChtaXhQcm9wZXJ0
eVZhbHVlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0ZWRUZXh0cy5sZW5n
dGg7IGkrKykgewotICAgICAgICAgICAgc3ViVmFsdWUgPSBtaXhQcm9wZXJ0eVZhbHVlW2ldOwot
ICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1ZhbHVlVHlwZSIsICJDU1NWYWx1ZS5D
U1NfUFJJTUlUSVZFX1ZBTFVFIik7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVS
TChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBleHBlY3RlZFRleHRzW2ldICsgIlwiIik7Ci0g
ICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmcoIlRlc3QgYmxlbmQgbW9kZSBrZXl3b3Jkcy4i
KTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBtdWx0aXBseS4iLCAibXVsdGlwbHkiLCAibXVsdGlw
bHkiLCBbIm11bHRpcGx5Il0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNjcmVlbi4iLCAic2Ny
ZWVuIiwgInNjcmVlbiIsIFsic2NyZWVuIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IG92ZXJs
YXkuIiwgIm92ZXJsYXkiLCAib3ZlcmxheSIsIFsib3ZlcmxheSJdKTsKLXRlc3RNaXhQcm9wZXJ0
eSgiVGVzdCBkYXJrZW4uIiwgImRhcmtlbiIsICJkYXJrZW4iLCBbImRhcmtlbiJdKTsKLXRlc3RN
aXhQcm9wZXJ0eSgiVGVzdCBsaWdodGVuLiIsICJsaWdodGVuIiwgImxpZ2h0ZW4iLCBbImxpZ2h0
ZW4iXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgY29sb3ItZG9kZ2UuIiwgImNvbG9yLWRvZGdl
IiwgImNvbG9yLWRvZGdlIiwgWyJjb2xvci1kb2RnZSJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVz
dCBjb2xvci1idXJuLiIsICJjb2xvci1idXJuIiwgImNvbG9yLWJ1cm4iLCBbImNvbG9yLWJ1cm4i
XSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgaGFyZC1saWdodC4iLCAiaGFyZC1saWdodCIsICJo
YXJkLWxpZ2h0IiwgWyJoYXJkLWxpZ2h0Il0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNvZnQt
bGlnaHQuIiwgInNvZnQtbGlnaHQiLCAic29mdC1saWdodCIsIFsic29mdC1saWdodCJdKTsKLXRl
c3RNaXhQcm9wZXJ0eSgiVGVzdCBkaWZmZXJlbmNlLiIsICJkaWZmZXJlbmNlIiwgImRpZmZlcmVu
Y2UiLCBbImRpZmZlcmVuY2UiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgZXhjbHVzaW9uLiIs
ICJleGNsdXNpb24iLCAiZXhjbHVzaW9uIiwgWyJleGNsdXNpb24iXSk7Ci10ZXN0TWl4UHJvcGVy
dHkoIlRlc3QgaHVlLiIsICJodWUiLCAiaHVlIiwgWyJodWUiXSk7Ci10ZXN0TWl4UHJvcGVydHko
IlRlc3Qgc2F0dXJhdGlvbi4iLCAic2F0dXJhdGlvbiIsICJzYXR1cmF0aW9uIiwgWyJzYXR1cmF0
aW9uIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGNvbG9yLiIsICJjb2xvciIsICJjb2xvciIs
IFsiY29sb3IiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgbHVtaW5vc2l0eS4iLCAibHVtaW5v
c2l0eSIsICJsdW1pbm9zaXR5IiwgWyJsdW1pbm9zaXR5Il0pOwotCi1oZWFkaW5nKCJUZXN0IGNv
bXBvc2l0ZSBrZXl3b3Jkcy4iKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBjbGVhci4iLCAiY2xl
YXIiLCAiY2xlYXIiLCBbImNsZWFyIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGNvcHkuIiwg
ImNvcHkiLCAiY29weSIsIFsiY29weSJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBzb3VyY2Ut
b3Zlci4iLCAic291cmNlLW92ZXIiLCAic291cmNlLW92ZXIiLCBbInNvdXJjZS1vdmVyIl0pOwot
dGVzdE1peFByb3BlcnR5KCJUZXN0IHNvdXJjZS1pbi4iLCAic291cmNlLWluIiwgInNvdXJjZS1p
biIsIFsic291cmNlLWluIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNvdXJjZS1vdXQuIiwg
InNvdXJjZS1vdXQiLCAic291cmNlLW91dCIsIFsic291cmNlLW91dCJdKTsKLXRlc3RNaXhQcm9w
ZXJ0eSgiVGVzdCBzb3VyY2UtYXRvcC4iLCAic291cmNlLWF0b3AiLCAic291cmNlLWF0b3AiLCBb
InNvdXJjZS1hdG9wIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGRlc3RpbmF0aW9uLW92ZXIu
IiwgImRlc3RpbmF0aW9uLW92ZXIiLCAiZGVzdGluYXRpb24tb3ZlciIsIFsiZGVzdGluYXRpb24t
b3ZlciJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBkZXN0aW5hdGlvbi1pbi4iLCAiZGVzdGlu
YXRpb24taW4iLCAiZGVzdGluYXRpb24taW4iLCBbImRlc3RpbmF0aW9uLWluIl0pOwotdGVzdE1p
eFByb3BlcnR5KCJUZXN0IGRlc3RpbmF0aW9uLW91dC4iLCAiZGVzdGluYXRpb24tb3V0IiwgImRl
c3RpbmF0aW9uLW91dCIsIFsiZGVzdGluYXRpb24tb3V0Il0pOwotdGVzdE1peFByb3BlcnR5KCJU
ZXN0IGRlc3RpbmF0aW9uLWF0b3AuIiwgImRlc3RpbmF0aW9uLWF0b3AiLCAiZGVzdGluYXRpb24t
YXRvcCIsIFsiZGVzdGluYXRpb24tYXRvcCJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCB4b3Iu
IiwgInhvciIsICJ4b3IiLCBbInhvciJdKTsKLQotdGVzdE1peFByb3BlcnR5KCJCbGVuZCBtb2Rl
IGFuZCBjb21wb3NpdGUgdG9nZXRoZXIuIiwKLSAgICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAg
ICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAgICBbInNjcmVlbiIsICJzb3VyY2Utb3ZlciJdKTsK
LQotdGVzdE1peFByb3BlcnR5KCJDb21wb3NpdGUgYW5kIGJsZW5kIG1vZGUgdG9nZXRoZXIuIiwK
LSAgICAic291cmNlLW92ZXIgc2NyZWVuIiwKLSAgICAic291cmNlLW92ZXIgc2NyZWVuIiwKLSAg
ICBbInNvdXJjZS1vdmVyIiwgInNjcmVlbiJdKTsKLQotaGVhZGluZygiQ2FwaXRhbGl6YXRpb24g
dGVzdHMuIik7Ci10ZXN0TWl4UHJvcGVydHkoIkFsbCB0b2tlbnMgY2FwaXRhbGl6ZWQuIiwKLSAg
ICAiU0NSRUVOIFNPVVJDRS1PVkVSIiwKLSAgICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAgICBb
InNjcmVlbiIsICJzb3VyY2Utb3ZlciJdKTsKLQotaGVhZGluZygiV2hpdGVzcGFjZSB0ZXN0cy4i
KTsKLXRlc3RNaXhQcm9wZXJ0eSgiRXh0cmEgbGVhZGluZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcg
d2hpdGVzcGFjZS4gIiwKLSAgICAiICAgc2NyZWVuICAgc291cmNlLW92ZXIgICAiLAotICAgICJz
Y3JlZW4gc291cmNlLW92ZXIiLAotICAgIFsic2NyZWVuIiwgInNvdXJjZS1vdmVyIl0pOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcyBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3Jp
cHQtdGVzdHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQuanMKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZhZGRhMTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJz
aW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcworKysgL2Rldi9udWxsCkBAIC0xLDEy
NyArMCwwIEBACi0vLyBSZXF1aXJlcyBjdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzLgot
Ci1kZXNjcmlwdGlvbigiVGVzdCBwYXJhbWV0ZXJzIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAt
d2Via2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2JhbCBm
b3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0ZXJBdFJ1bGUsIHN0eWxl
RGVjbGFyYXRpb247Ci0KLWZ1bmN0aW9uIHRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KGRl
c2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBwYXJhbWV0ZXJzUHJvcGVydHkg
PSAicGFyYW1ldGVyczogIiArIHByb3BlcnR5VmFsdWUgKyAiOyI7Ci0gICAgZGVidWcoIlxuIiAr
IGRlc2NyaXB0aW9uICsgIlxuIiArIHBhcmFtZXRlcnNQcm9wZXJ0eSk7Ci0KLSAgICBzdHlsZXNo
ZWV0Lmluc2VydFJ1bGUoIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgcGFyYW1ldGVy
c1Byb3BlcnR5ICsgIiB9IiwgMCk7Ci0KLSAgICBmaWx0ZXJBdFJ1bGUgPSBzdHlsZXNoZWV0LmNz
c1J1bGVzLml0ZW0oMCk7Ci0gICAgc2hvdWxkQmUoImZpbHRlckF0UnVsZS50eXBlIiwgIkNTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFIik7Ci0KLSAgICBzdHlsZURlY2xhcmF0aW9uID0gZmlsdGVy
QXRSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCIsICIw
Iik7Ci0gICAgc2hvdWxkQmUoInN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFy
YW1ldGVycycpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygiTnVtYmVyIHBhcmFtZXRlciB0ZXN0
cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJUb28gbWFueSBwYXJhbWV0ZXIg
dmFsdWVzLiIsICJuIDEgMiAzIDQgNSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHko
IkludmFsaWQgcGFyYW1ldGVyIHR5cGUuIiwgIm4gMS4wIDIuMCAndGV4dCciKTsKLQotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIHBhcmFtZXRlciBkZWZpbml0aW9uLiIsICIiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBwYXJhbWV0ZXIgZGVmaW5pdGlvbiB3
aXRoIGNvbW1hLiIsICIsIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFy
YW1ldGVyIGRlZmluaXRpb24gYmVmb3JlIHZhbGlkIHBhcmFtZXRlciBkZWZpbnRpb24uIiwgIiwg
biAxIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFyYW1ldGVyIHZhbHVl
LiIsICJuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFyYW1ldGVyIHZh
bHVlIHdpdGggbXVsdGlwbGUgcGFyYW1ldGVycy4iLCAibjEsIG4yLCBuMyIpOwotCi1oZWFkaW5n
KCJDb2xvciBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0
eSgiTm8gcmdiIGNvbG9yIHZhbHVlcy4iLCAiYyByZ2IoLCwpIik7Ci10ZXN0SW52YWxpZFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTm8gaHNsIGNvbG9yIHZhbHVlcy4iLCAiYyBoc2woLCwpIik7Ci10ZXN0
SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSGV4IHdpdGggOCBjaGFyYWN0ZXJzLiIsICJjICNG
RjAwMDBGRiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkhleCB3aXRoIDIgY2hh
cmFjdGVyLiIsICJjICNGRiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlJnYmEg
d2l0aCAzIHZhbHVlcyBhbmQgMiBjb21tYXMuIiwgImMgcmdiYSgyNTUsIDAsIDApIik7Ci0KLWhl
YWRpbmcoIlRyYW5zZm9ybSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRl
cnNQcm9wZXJ0eSgiT25lIGludmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsICJ0IGludmFsaWQt
cm90YXRlKDBkZWcpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsdGlwbGUg
aW52YWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb25zLiIsICJ0IGludmFsaWQtcm90YXRlKDBkZWcpIGlu
dmFsaWQtcGVyc3BlY3RpdmUoMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJ
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuIiwgInQgcm90YXRl
KDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIik7Ci10ZXN0SW52YWxp
ZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uIGJldHdlZW4gaW52
YWxpZCBvbmVzLiIsICJ0IGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIGludmFs
aWQtdHJhbnNsYXRlKDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQg
dHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGggdHJhaWxpbmcgY29tbWEuIiwgInQgcGVyc3BlY3RpdmUo
MCksIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSW52YWxpZCB0cmFuc2Zvcm0g
d2l0aCB0cmFpbGluZyBjb21tYS4iLCAidCBpbnZhbGlkLXJvdGF0ZSgwZGVnKSwiKTsKLXRlc3RJ
bnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJWYWxpZCB0cmFuc2Zvcm0gd2l0aCBpbnZhbGlkIGNo
YXJhY3RlcnMiLCAidCByb3RhdGUoMGRlZykgKi4tLCIpOwotCi1oZWFkaW5nKCJBcnJheSBwYXJh
bWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW1wdHkgYXJy
YXkuIiwgImEgYXJyYXkoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk9uZSBj
b21tYSBpbiBhcnJheS4iLCAiYSBhcnJheSgsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJv
cGVydHkoIk11bHRpcGxlIGNvbW1hcyBpbiBhcnJheS4iLCAiYSBhcnJheSgsLCwpIik7Ci10ZXN0
SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsdGlwbGUgY29tbWFzIHdpdGggYSB2YWx1ZSBp
biBhcnJheS4iLCAiYSBhcnJheSgsLDEsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVy
dHkoIk9uZSBjb21tYSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFycmF5LiIsICJh
IGFycmF5KCwtNCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJPbmUgY29tbWEg
Zm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheS4iLCAiYSBhcnJheSgsNCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJPbmUgbmVnYXRpdmUgdmFsdWUgZm9sbG93ZWQgYnkgYSBj
b21tYSBpbiBhcnJheS4iLCAiYSBhcnJheSgtNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQ
cm9wZXJ0eSgiT25lIHZhbHVlIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJy
YXkoNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdmFsdWVzIGZv
bGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoMSwgMiwgMywgNCwpIik7Ci10
ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEg
bGV0dGVyIGluIGFycmF5LiIsICJhIGFycmF5KDEsIDIsIDMsIDQsIHgpIik7Ci10ZXN0SW52YWxp
ZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVHdvIGNvbW1hcyBhcyBzZXBhcmF0b3IgYmV0d2VlbiB2YWx1
ZXMgaW4gYXJyYXkuIiwgImEgYXJyYXkoMSwgMiwgLCA0KSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoLDEsIDIsIDMs
IDQpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU2VtaWNvbG9uIHNlcGFyYXRl
ZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImEgYXJyYXkoMTsgMjsgMzsgNCkiKTsKLXRlc3RJbnZhbGlk
UGFyYW1ldGVyc1Byb3BlcnR5KCJTcGFjZSBzZXBhcmF0ZWQgdmFsdWVzIGluIGFycmF5LiIsICJh
IGFycmF5KDEgMiAzIDQpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU3BhY2Ug
c2VwYXJhdGVkIHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkuIiwgImEgYXJy
YXkoMSAyIDMgNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU3BhY2Ugc2Vw
YXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoLCAx
IDIgMyA0KSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBpbiBhcnJheS4i
LCAiYSBhcnJheShOYU4pIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTmFOIGJl
dHdlZW4gdmFsaWQgdmFsdWVzIGluIGFycmF5LiIsICJhIGFycmF5KDEsIDIsIE5hTiwgMykiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJbnZhbGlkIHZhbHVlICdub25lJyBpbiBh
cnJheS4iLCAiYSBhcnJheShub25lKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHko
IkludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFycmF5LiIsICJhIGFycmF5KDFweCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJbnZhbGlkIHZhbHVlIHVuaXQgJ2RlZycgaW4g
YXJyYXkuIiwgImEgYXJyYXkoMWRlZykiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5
KCJJbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheSBhZnRlciB2YWxpZCB2YWx1ZXMuIiwg
ImEgYXJyYXkoMSwgMiwgMywgNHB4KSIpOwotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0
cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQyLiIsICJhIG1h
dDIoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3IGFyZ3VtZW50
cy4iLCAiYSBtYXQyKDAsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgi
Tm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0MigsLCwpIik7Ci10ZXN0SW52YWxpZFBh
cmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4iLCAiYSBtYXQyKDAsIDAsLCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0MiBmdW5jdGlvbi4iLCAi
YSBtYXQyKDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVG9v
IG1hbnkgYXJndW1lbnRzLiIsICJhIG1hdDIoMCwgMCwgMCwgMCwgMSkiKTsKLXRlc3RJbnZhbGlk
UGFyYW1ldGVyc1Byb3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0MigxIDAgMCAxKSIpOwotdGVz
dEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlNvbWUgY29tbWFzLiIsICJhIG1hdDIoMSwgMCwg
MCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWFzLiIs
ICJhIG1hdDIoLCAwLCAwLCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5v
IGxlbmd0aCB1bml0cy4iLCAiYSBtYXQyKDFweCwgMHB4LCAwcHgsIDFweCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0MigxZGVnLCAw
ZGVnLCAwZGVnLCAxZGVnKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBp
biBtYXQyLiIsICJhIG1hdDIoMSwgMCwgMCwgTmFOKSIpOwotCi1oZWFkaW5nKCJNYXQzIHBhcmFt
ZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQz
LiIsICJhIG1hdDMoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3
IGFyZ3VtZW50cy4iLCAiYSBtYXQzKDAsIDAsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRl
cnNQcm9wZXJ0eSgiTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0MygsLCwsLCwsLCws
LCwsLCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4i
LCAiYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsLCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVy
c1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0MyBmdW5jdGlvbi4iLCAiYSBtYXQzKDEsIDAsIDAsIDAs
IDEsIDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVG9vIG1h
bnkgYXJndW1lbnRzLiIsICJhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSwgMCkiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0MygxIDAg
MCAwIDEgMCAwIDAgMSkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJTb21lIGNv
bW1hcy4iLCAiYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAgMCAwIDEpIik7Ci10ZXN0SW52YWxpZFBh
cmFtZXRlcnNQcm9wZXJ0eSgiTGVhZGluZyBjb21tYXMuIiwgImEgbWF0MygsIDAsIDAsIDAsIDEs
IDAsIDAsIDAsIDEpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gbGVuZ3Ro
IHVuaXRzLiIsICJhIG1hdDMoMXB4LCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDFweCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0Mygx
ZGVnLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAxZGVnKSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIk5hTiBpbiBtYXQzLiIsICJhIG1hdDIoTmFOLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAxKSIpOwotCi1oZWFkaW5nKCJNYXQ0IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQ0LiIsICJhIG1hdDQoKSIpOwotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3IGFyZ3VtZW50cy4iLCAiYSBtYXQ0KDEs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0
eSgiTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0NCgsLCwsLCwsLCwsLCwsLCwpIik7
Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4iLCAiYSBtYXQ0
KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsLCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4iLCAiYSBtYXQ0
KDEsIDAsIDAsIDAsIDEsIDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9w
ZXJ0eSgiVG9vIG1hbnkgYXJndW1lbnRzLiIsICJhIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwg
MCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1By
b3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0NCgxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAg
MCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlNvbWUgY29tbWFzLiIsICJh
IG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCAwIDAgMCAxKSIpOwotdGVz
dEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWFzLiIsICJhIG1hdDQoLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIpOwotdGVzdEludmFs
aWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIGxlbmd0aCB1bml0cy4iLCAiYSBtYXQ0KDFweCwgMCwg
MCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDAsIDFweCkiKTsKLXRlc3RJ
bnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0NCgxZGVn
LCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAxZGVnKSIp
OwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBpbiBtYXQ0LiIsICJhIG1hdDQo
TmFOLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIpOwotCi1o
ZWFkaW5nKCJNaXhpbmcgcGFyYW1ldGVyIHR5cGVzLiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJz
UHJvcGVydHkoIk51bWJlciBwYXJhbWV0ZXIgd2l0aCBoZXggY29sb3IuIiwgIm4xIDEgMiAjRkYw
MDAwIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTnVtYmVyIHBhcmFtZXRlciB3
aXRoIGNvbG9yIGtleXdvcmQuIiwgIm4xIDEgMiByZWQiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVy
c1Byb3BlcnR5KCJOdW1iZXIgcGFyYW1ldGVyIHdpdGggcmdiIGNvbG9yLiIsICJuMSAxIDIgcmdi
KDI1NSwgMCwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJDb2xvciB3aXRo
IG51bWJlciBwYXJhbWV0ZXIuIiwgImEgcmdiKDI1NSwgMCwgMCkgMSIpOwotdGVzdEludmFsaWRQ
YXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGluIGFycmF5LiIsICJhIGFycmF5KDAsIHJnYigyNTUs
IDAsIDApKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGFuZCBhcnJh
eS4iLCAiYSBhcnJheSgwLCAwKSByZ2IoMjU1LCAwLCAwKSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIkNvbG9yIHdpdGggdHJhbnNmb3JtIHZhbHVlcy4iLCAiYSByb3RhdGUoNDVk
ZWcpIHJnYigyNTUsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiQ29s
b3Igd2l0aCB0cmFuc2Zvcm0gdmFsdWVzLiIsICJhIHJnYigyNTUsIDAsIDApIHJvdGF0ZSg0NWRl
ZykiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJDb2xvciBhZnRlciBhcnJheSB2
YWx1ZXMuIiwgImEgYXJyYXkoMCkgcmdiKDI1NSwgMCwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1l
dGVyc1Byb3BlcnR5KCJDb2xvciB3aXRoIG1hdDIuIiwgImEgcmdiKDI1NSwgMCwgMCkgbWF0Migw
LCAwLCAwLCAwKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIm1hdDIgd2l0aCBt
YXQzLiIsICJhIG1hdDIoMSwgMCwgMCwgMSkgbWF0MygwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
KSIpOwotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgt
YXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctcGFyYW1ldGVycy1wcm9wZXJ0eS12
YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmpzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMjk0MGY2Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVz
dHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmpzCisrKyAvZGV2L251bGwKQEAg
LTEsMTczICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24u
anMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IHBhcmFtZXRlcnMgcHJvcGVydHkgcGFyc2luZyBpbiB0
aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xv
YmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGZpbHRlckF0UnVsZSwg
c3R5bGVEZWNsYXJhdGlvbiwgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUsIHN1YlZhbHVlOwotCi1m
dW5jdGlvbiB0ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVl
LCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBwYXJhbWV0ZXJzUHJv
cGVydHkgPSAicGFyYW1ldGVyczogIiArIHByb3BlcnR5VmFsdWUgKyAiOyIKLSAgICBkZWJ1Zygi
XG4iICsgZGVzY3JpcHRpb24gKyAiXG4iICsgcGFyYW1ldGVyc1Byb3BlcnR5KTsKLQotICAgIHN0
eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBwYXJh
bWV0ZXJzUHJvcGVydHkgKyAiIH0iLCAwKTsKLSAgICBmaWx0ZXJBdFJ1bGUgPSBzdHlsZXNoZWV0
LmNzc1J1bGVzLml0ZW0oMCk7Ci0gICAgc2hvdWxkQmUoImZpbHRlckF0UnVsZS50eXBlIiwgIkNT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFIik7Ci0KLSAgICBzdHlsZURlY2xhcmF0aW9uID0gZmls
dGVyQXRSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCIs
ICIxIik7Ci0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIiwgIlwiIiArIGV4cGVjdGVkVmFsdWUgKyAiXCIi
KTsKLQotICAgIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCdwYXJhbWV0ZXJzJyk7Ci0gICAgc2hvdWxkSGF2ZUNvbnN0cnVjdG9y
KCJwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIHNob3Vs
ZEJlKCJwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0
aC50b1N0cmluZygpKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSkgewotICAgICAgICBmb3IgKHZhciBpID0g
MDsgaSA8IGV4cGVjdGVkVGV4dHMubGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICAgIHN1YlZhbHVl
ID0gcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWVbaV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3Vi
VmFsdWUuY3NzVmFsdWVUeXBlIiwgIkNTU1ZhbHVlLkNTU19WQUxVRV9MSVNUIik7Ci0gICAgICAg
ICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBl
eHBlY3RlZFRleHRzW2ldICsgIlwiIik7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmco
Ik51bWJlciBwYXJhbWV0ZXIgdGVzdHMuIikKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkludGVn
ZXIgcGFyYW1ldGVycy4iLAotICAgICJuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3
IiwKLSAgICAibjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNyIsCi0gICAgWyJuMSAx
IiwibjIgMiAzIiwgIm4zIDMgNCA1IiwgIm40IDQgNSA2IDciXSk7Ci10ZXN0UGFyYW1ldGVyc1By
b3BlcnR5KCJGbG9hdCBwYXJhbWV0ZXJzLiIsCi0gICAgIm4xIDEuMSwgbjIgMi4yIDMuMywgbjMg
My4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIsCi0gICAgIm4xIDEuMSwgbjIgMi4yIDMu
MywgbjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIsCi0gICAgWyJuMSAxLjEiLCAi
bjIgMi4yIDMuMyIsICJuMyAzLjEgNC4xIDUuMSIsICJuNCA0LjEgNS4yIDYuMyA3LjQiXSk7Ci10
ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJQYXJhbWV0ZXIgbmFtZSBzYW1lIGFzIENTUyBrZXl3b3Jk
LiIsCi0gICAgImJhY2tncm91bmQgMCAxIDAgMSIsCi0gICAgImJhY2tncm91bmQgMCAxIDAgMSIs
Ci0gICAgWyJiYWNrZ3JvdW5kIDAgMSAwIDEiXSk7Ci0KLWhlYWRpbmcoIlRyYW5zZm9ybSBwYXJh
bWV0ZXIgdGVzdHMuIikKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIlRyYW5zZm9ybSBwYXJhbWV0
ZXIgd2l0aCBvbmUgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsCi0gICAgInQgcm90YXRlKDBkZWcpIiwK
LSAgICAidCByb3RhdGUoMGRlZykiLAotICAgIFsidCByb3RhdGUoMGRlZykiXSk7Ci10ZXN0UGFy
YW1ldGVyc1Byb3BlcnR5KCJUcmFuc2Zvcm0gcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgdHJhbnNm
b3JtIGZ1bmN0aW9ucy4iLAotICAgICJ0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2Fs
ZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIiwKLSAgICAidCByb3RhdGUoMGRlZykgcGVyc3Bl
Y3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSIsCi0gICAgWyJ0IHJvdGF0
ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIl0p
OwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsaXRwbGUgdHJhbnNmb3JtIHBhcmFtZXRlcnMu
IiwKLSAgICAidDEgcm90YXRlKDBkZWcpLCB0MiByb3RhdGUoMGRlZykiLAotICAgICJ0MSByb3Rh
dGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVnKSIsCi0gICAgWyJ0MSByb3RhdGUoMGRlZykiLCAidDIg
cm90YXRlKDBkZWcpIl0pOwotCi1oZWFkaW5nKCJBcnJheSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10
ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScu
IiwKLSAgICAiYXJyYXkgYXJyYXkoMSkiLAotICAgICJhcnJheSBhcnJheSgxKSIsCi0gICAgWyJh
cnJheSBhcnJheSgxKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkFycmF5IHBhcmFtZXRl
ciB3aXRoIG9uZSBwb3NpdGl2ZSBpbnRlZ2VyLiIsCi0gICAgImEgYXJyYXkoMSkiLAotICAgICJh
IGFycmF5KDEpIiwKLSAgICBbImEgYXJyYXkoMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5
KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBvbmUgbmVnYXRpdmUgZmxvYXQuIiwKLSAgICAiYSBhcnJh
eSgtMS4wMSkiLAotICAgICJhIGFycmF5KC0xLjAxKSIsCi0gICAgWyJhIGFycmF5KC0xLjAxKSJd
KTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxl
IHBvc2l0aXZlIGludGVnZXJzLiIsCi0gICAgImEgYXJyYXkoMSwgMiwgMywgNCwgNSkiLAotICAg
ICJhIGFycmF5KDEsIDIsIDMsIDQsIDUpIiwKLSAgICBbImEgYXJyYXkoMSwgMiwgMywgNCwgNSki
XSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBs
ZSBzaWduZWQgZmxvYXRzLiIsCi0gICAgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIs
Ci0gICAgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIsCi0gICAgWyJhIGFycmF5KDEs
IC0yLjIsIDMuMTQsIDAuNCwgNSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNdWx0aXBs
ZSBhcnJheSBwYXJhbWV0ZXJzLiIsCi0gICAgImExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwg
NSksIGEyIGFycmF5KDEsIDIsIDMpIiwKLSAgICAiYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40
LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykiLAotICAgIFsiYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwg
MC40LCA1KSIsICJhMiBhcnJheSgxLCAyLCAzKSJdKTsKLQotaGVhZGluZygiQ29sb3IgcGFyYW1l
dGVyIHRlc3RzLiIpOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiSGV4IGNvbG9yLiIsCi0gICAg
ImMgIzAwRkYwMCIsCi0gICAgImMgcmdiKDAsIDI1NSwgMCkiLAotICAgIFsiYyByZ2IoMCwgMjU1
LCAwKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGtleXdvcmQuIiwKLSAgICAi
YyBncmVlbiIsCi0gICAgImMgcmdiKDAsIDEyOCwgMCkiLAotICAgIFsiYyByZ2IoMCwgMTI4LCAw
KSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIHJnYiBmdW5jdGlvbi4iLAotICAg
ICJjIHJnYigwLCAxMjgsIDApIiwKLSAgICAiYyByZ2IoMCwgMTI4LCAwKSIsCi0gICAgWyJjIHJn
YigwLCAxMjgsIDApIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiQ29sb3IgaHNsIGZ1bmN0
aW9uLiIsCi0gICAgImMgaHNsKDEyMCwgMTAwJSwgNTAlKSIsCi0gICAgImMgcmdiKDAsIDI1NSwg
MCkiLAotICAgIFsiYyByZ2IoMCwgMjU1LCAwKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHko
IkNvbG9yIHJnYmEgZnVuY3Rpb24uIiwKLSAgICAiYyByZ2JhKDAsIDI1NSwgMCwgMC4yKSIsCi0g
ICAgImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiLAotICAgIFsiYyByZ2JhKDAsIDI1NSwgMCwgMC4y
KSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGhzbGEgZnVuY3Rpb24uIiwKLSAg
ICAiYyBoc2xhKDEyMCwgMTAwJSwgNTAlLCAwLjIpIiwKLSAgICAiYyByZ2JhKDAsIDI1NSwgMCwg
MC4yKSIsCi0gICAgWyJjIHJnYmEoMCwgMjU1LCAwLCAwLjIpIl0pOwotCi1oZWFkaW5nKCJNYXQy
IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDIgcGFyYW1l
dGVyLiIsCi0gICAgIm0gbWF0MigxLCAwLCAwLCAxKSIsCi0gICAgIm0gbWF0MigxLCAwLCAwLCAx
KSIsCi0gICAgWyJtIG1hdDIoMSwgMCwgMCwgMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5
KCJNYXQyIHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4iLAotICAgICJtIG1hdDIoLTEs
IC0xLCAtMSwgLTEpIiwKLSAgICAibSBtYXQyKC0xLCAtMSwgLTEsIC0xKSIsCi0gICAgWyJtIG1h
dDIoLTEsIC0xLCAtMSwgLTEpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTWF0MiBwYXJh
bWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLiIsCi0gICAgIm0gbWF0Migt
MSwgMSwgMSwgLTEpIiwKLSAgICAibSBtYXQyKC0xLCAxLCAxLCAtMSkiLAotICAgIFsibSBtYXQy
KC0xLCAxLCAxLCAtMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQyIHBhcmFtZXRl
ciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuIiwKLSAgICAibSBtYXQyKDEsIC0yLjIsIDMu
MTQsIDAuNCkiLAotICAgICJtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSIsCi0gICAgWyJtIG1h
dDIoMSwgLTIuMiwgMy4xNCwgMC40KSJdKTsKLQotaGVhZGluZygiTWF0MyBwYXJhbWV0ZXIgdGVz
dHMuIik7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQzIHBhcmFtZXRlci4iLAotICAgICJt
IG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkiLAotICAgICJtIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMSkiLAotICAgIFsibSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAs
IDEpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTWF0MyBwYXJhbWV0ZXIgd2l0aCBuZWdh
dGl2ZSB2YWx1ZXMuIiwKLSAgICAibSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEpIiwKLSAgICAibSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEp
IiwKLSAgICBbIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSJdKTsK
LXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5k
IHBvc2l0aXZlIHZhbHVlcy4iLAotICAgICJtIG1hdDMoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwg
LTEsIDEpIiwKLSAgICAibSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKSIsCi0g
ICAgWyJtIG1hdDMoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIDEpIl0pOwotdGVzdFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTWF0MyBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRz
LiIsCi0gICAgIm0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwg
MSkiLAotICAgICJtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQs
IDEpIiwKLSAgICBbIm0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSkiXSk7Ci0KLWhlYWRpbmcoIk1hdDQgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTWF0NCBwYXJhbWV0ZXIuIiwKLSAgICAibSBtYXQ0KDEsIDAsIDAsIDAs
IDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpIiwKLSAgICAibSBtYXQ0KDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpIiwKLSAgICBbIm0gbWF0
NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSJdKTsKLXRl
c3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgdmFsdWVz
LiIsCi0gICAgIm0gbWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkiLAotICAgICJtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpIiwKLSAgICBbIm0g
bWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQ0IHBhcmFtZXRlciB3
aXRoIG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuIiwKLSAgICAibSBtYXQ0KC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSkiLAotICAgICJt
IG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEs
IC0xKSIsCi0gICAgWyJtIG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDQgcGFy
YW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJtIG1hdDQoMSwgLTIu
MiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwg
LTIuMiwgMy4xNCwgMC40KSIsCi0gICAgIm0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0y
LjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpIiwK
LSAgICBbIm0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwg
LTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpIl0pOwotCi1oZWFkaW5nKCJDb21i
aW5lZCBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJOdW1iZXIg
cGFyYW1ldGVyLCBjb2xvciBwYXJhbWV0ZXIsIHRyYW5zZm9ybSBwYXJhbWV0ZXIsIG1hdHJpeCBw
YXJhbWV0ZXJzIGFuZCBhcnJheSBwYXJhbWV0ZXIuIiwKLSAgICAibiAxLCBjIHJnYigwLCAxMjgs
IDApLCB0IHJvdGF0ZSgwZGVnKSwgbTEgbWF0MigxLCAwLCAwLCAxKSwgbTIgbWF0MygxLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAxKSwgbTMgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAw
LCAxLCAwLCAwLCAwLCAwLCAxKSwgYSBhcnJheSgxKSIsCi0gICAgIm4gMSwgYyByZ2IoMCwgMTI4
LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXkoMSkiLAotICAgIFsibiAxIiwgImMgcmdiKDAs
IDEyOCwgMCkiLCAidCByb3RhdGUoMGRlZykiLCAibTEgbWF0MigxLCAwLCAwLCAxKSIsICJtMiBt
YXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpIiwgIm0zIG1hdDQoMSwgMCwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSkiLCAiYSBhcnJheSgxKSJdKTsKXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXBy
b3BlcnR5LWludmFsaWQuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgt
YXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LWludmFsaWQu
anMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBkNGEyNGEuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3Njcmlw
dC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLmpzCisrKyAvZGV2L251bGwKQEAg
LTEsNTEgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cy4KLQotZGVzY3JpcHRpb24oIlRlc3Qgc3JjIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Vi
a2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2JhbCBmb3Ig
dGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0ZXJBdFJ1bGUsIHN0eWxlRGVj
bGFyYXRpb247Ci0KLWZ1bmN0aW9uIHRlc3RJbnZhbGlkU3JjUHJvcGVydHkoZGVzY3JpcHRpb24s
IHByb3BlcnR5VmFsdWUpCi17Ci0gICAgdmFyIHNyY1Byb3BlcnR5ID0gInNyYzogIiArIHByb3Bl
cnR5VmFsdWUgKyAiOyI7Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHNy
Y1Byb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVy
IG15LWZpbHRlciB7ICIgKyBzcmNQcm9wZXJ0eSArICIgfSIsIDApOwotCi0gICAgZmlsdGVyQXRS
dWxlID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJB
dFJ1bGUudHlwZSIsICJDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVE
ZWNsYXJhdGlvbiA9IGZpbHRlckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGgiLCAiMCIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ3NyYycpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygiVVJMIHRlc3Rz
LiIpOwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiTm8gcHJvcGVydHkgdmFsdWUuIiwgIiIpOwot
dGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiT25seSBhIHNpbmdsZSBjb21tYS4iLCAiLCIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiT25seSB0d28gY29tbWFzLiIsICIsICwiKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIklkZW50aWZpZXIgaW5zdGVhZCBvZiBVUkwuIiwgInZlcnRleC1zaGFk
ZXIiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIklkZW50aWZpZXIgd2l0aCBmb3JtYXQgaW5z
dGVhZCBvZiBVUkwgd2l0aCBmb3JtYXQuIiwgInZlcnRleC1zaGFkZXIgZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJMb2NhbCBmdW5jdGlvbiBp
bnN0ZWFkIG9mIFVSTCBmdW5jdGlvbi4iLCAibG9jYWwoc2hhZGVyLnZzKSIpOwotCi1oZWFkaW5n
KCJGb3JtYXQgZnVuY3Rpb24gdGVzdHMuIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJJZGVu
dGlmaWVyIGluc3RlYWQgb2YgZm9ybWF0IGZ1bmN0aW9uLiIsICJ1cmwoc2hhZGVyLnZzKSB2ZXJ0
ZXgtc2hhZGVyIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJTdHJpbmcgaW5zdGVhZCBvZiBm
b3JtYXQgZnVuY3Rpb24uIiwgInVybChzaGFkZXIudnMpICd4LXNoYWRlci94LXZlcnRleCciKTsK
LXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIkZvcm1hdCBmdW5jdGlvbiBtaXNzcGVsbGVkLiIsICJ1
cmwoc2hhZGVyLnZzKSBmcm10KCd4LXNoYWRlci94LXZlcnRleCcpIik7Ci10ZXN0SW52YWxpZFNy
Y1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gZW1wdHkuIiwgInVybChzaGFkZXIudnMpIGZvcm1h
dCgpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gd2l0aCBzaW5n
bGUgaWRlbnRpZmVyIGFyZ3VtZW50LiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQodmVydGV4LXNo
YWRlcikiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIkZvcm1hdCBmdW5jdGlvbiB3aXRoIHNp
bmdsZSBudW1iZXIgYXJndW1lbnQuIiwgInVybChzaGFkZXIudnMpIGZvcm1hdCgwKSIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiRm9ybWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUgc3BhY2Ut
c2VwYXJhdGVkIGlkZW50aWZlciBhcmd1bWVudHMuIiwgInVybChzaGFkZXIudnMpIGZvcm1hdCh2
ZXJ0ZXgtc2hhZGVyIGZyYWdtZW50LXNoYWRlcikiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHko
IkZvcm1hdCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIGNvbW1hLXNlcGFyYXRlZCBpZGVudGlmZXIg
YXJndW1lbnRzLiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQodmVydGV4LXNoYWRlcixmcmFnbWVu
dC1zaGFkZXIpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gd2l0
aCBtdWx0aXBsZSBzcGFjZS1zZXBhcmF0ZWQgc3RyaW5nIGFyZ3VtZW50cy4iLCAidXJsKHNoYWRl
ci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcgJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIp
OwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiRm9ybWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUg
Y29tbWEtc2VwYXJhdGVkIHN0cmluZyBhcmd1bWVudHMuIiwgInVybChzaGFkZXIudnMpIGZvcm1h
dCgneC1zaGFkZXIveC12ZXJ0ZXgnLCd4LXNoYWRlci94LWZyYWdtZW50JykiKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIk11bHRpcGxlIHZhbGlkIGZvcm1hdCBmdW5jdGlvbnMuIiwgInVybChz
aGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSBmb3JtYXQoJ3gtc2hhZGVyL3gt
ZnJhZ21lbnQnKSIpOwotCi1oZWFkaW5nKCJQdW5jdHVhdGlvbiB0ZXN0cy4iKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIkxlYWRpbmcgY29tbWEgYmVmb3JlIGZpcnN0IFVSTC4iLCAiLCB1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiKTsKLXRlc3RJbnZhbGlkU3Jj
UHJvcGVydHkoIkNvbW1hIGJldHdlZW4gVVJMIGFuZCBmb3JtYXQuIiwgInVybChzaGFkZXIudnMp
LCBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHko
IlRyYWlsaW5nIGNvbW1hIGFmdGVyIGZvcm1hdC4iLCAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4
LXNoYWRlci94LXZlcnRleCcpLCIpOwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiVHdvIGNvbW1h
cyBiZXR3ZWVuIFVSTHMuIiwgInVybChzaGFkZXIudnMpLCx1cmwoc2hhZGVyLmZzKSIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiVHdvIGNvbW1hcyBiZXR3ZWVuIFVSTHMgd2l0aCBmb3JtYXQu
IiwgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwsdXJsKHNoYWRl
ci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiKTsKLXRlc3RJbnZhbGlkU3JjUHJv
cGVydHkoIk5vIGNvbW1hIGJldHdlZW4gVVJMcy4iLCAidXJsKHNoYWRlci52cykgdXJsKHNoYWRl
ci5mcykiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIk5vIGNvbW1hIGJldHdlZW4gVVJMcyB3
aXRoIGZvcm1hdC4iLCAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcp
IHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgv
c2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJz
aW5nLXNyYy1wcm9wZXJ0eS12YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MmU4MDZmYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdp
dGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LXZhbGlk
LmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTExICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1m
aWx0ZXItcGFyc2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IHNyYyBwcm9wZXJ0
eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2Ug
aGF2ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIg
ZmlsdGVyQXRSdWxlLCBzdHlsZURlY2xhcmF0aW9uLCBzcmNQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1
ZTsKLQotZnVuY3Rpb24gdGVzdFNyY1Byb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVl
LCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBzcmNQcm9wZXJ0eSA9
ICJzcmM6ICIgKyBwcm9wZXJ0eVZhbHVlICsgIjsiCi0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0
aW9uICsgIlxuIiArIHNyY1Byb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgi
QC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBzcmNQcm9wZXJ0eSArICIgfSIsIDApOwot
ICAgIGZpbHRlckF0UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91
bGRCZSgiZmlsdGVyQXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsK
LQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxk
QmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwgIjEiKTsKLSAgICBzaG91bGRCZSgicmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpKSIsICJcIiIg
KyBleHBlY3RlZFZhbHVlICsgIlwiIik7Ci0KLSAgICBzcmNQcm9wZXJ0eVZhbHVlID0gc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eUNTU1ZhbHVlKCdzcmMnKTsKLSAgICBzaG91bGRIYXZlQ29u
c3RydWN0b3IoInNyY1Byb3BlcnR5VmFsdWUiLCAiQ1NTVmFsdWVMaXN0Iik7Ci0KLSAgICBzaG91
bGRCZSgic3JjUHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0
cmluZygpKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAotICAgIGlm
IChzcmNQcm9wZXJ0eVZhbHVlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUZXh0cy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViVmFsdWUgPSBzcmNQcm9wZXJ0
eVZhbHVlW2ldOwotICAgICAgICAgICAgc2hvdWxkSGF2ZUNvbnN0cnVjdG9yKCJzdWJWYWx1ZSIs
ICJDU1NWYWx1ZSIpOwotICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSIsICJDU1NWYWx1ZS5DU1NfQ1VTVE9NIik7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3Zl
QmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBleHBlY3RlZFRleHRzW2ldICsgIlwi
Iik7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmcoIlVSTHMgd2l0aG91dCBmb3JtYXQg
dGVzdHMuIik7Ci10ZXN0U3JjUHJvcGVydHkoIk9uZSBVUkwgd2l0aG91dCBmb3JtYXQuIiwKLSAg
ICAidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSIsCi0gICAgWyJ1cmwoc2hh
ZGVyLnZzKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJUd28gVVJMcyB3aXRob3V0IGZvcm1hdC4i
LAotICAgICJ1cmwoc2hhZGVyLnZzKSwgdXJsKHNoYWRlci5mcykiLAotICAgICJ1cmwoc2hhZGVy
LnZzKSwgdXJsKHNoYWRlci5mcykiLAotICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwo
c2hhZGVyLmZzKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJUaHJlZSBVUkxzIHdpdGhvdXQgZm9y
bWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMp
IiwKLSAgICAidXJsKHNoYWRlci52cyksIHVybChzaGFkZXIuZnMpLCB1cmwoc2hhZGVyMykiLAot
ICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSIsCi0gICAgInVybChz
aGFkZXIzKSJdKTsKLQotaGVhZGluZygiVVJMcyB3aXRoIGZvcm1hdCB0ZXN0cy4iKTsKLXRlc3RT
cmNQcm9wZXJ0eSgiT25lIFVSTCB3aXRoIGZvcm1hdC4iLAotICAgICJ1cmwoc2hhZGVyLnZzKSBm
b3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNo
YWRlci94LXZlcnRleCcpIl0pOwotCi10ZXN0U3JjUHJvcGVydHkoIlR3byBVUkxzIHdpdGggZm9y
bWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwg
dXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiLAotICAgICJ1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZv
cm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICBbInVybChzaGFkZXIudnMpIGZvcm1h
dCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIsCi0gICAgInVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1z
aGFkZXIveC1mcmFnbWVudCcpIl0pOwotCi10ZXN0U3JjUHJvcGVydHkoIlRocmVlIFVSTHMgd2l0
aCBmb3JtYXQuIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRl
eCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNo
YWRlcjMpIGZvcm1hdCgndW5rbm93bicpIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4
LXNoYWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJh
Z21lbnQnKSwgdXJsKHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpIiwKLSAgICBbInVybChzaGFk
ZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIsCi0gICAgInVybChzaGFkZXIuZnMp
IGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICAidXJsKHNoYWRlcjMpIGZvcm1h
dCgndW5rbm93bicpIl0pOwotCi1oZWFkaW5nKCJNaXhlZCBVUkxzIHdpdGggYW5kIHdpdGhvdXQg
Zm9ybWF0IHRlc3RzLiIpOwotdGVzdFNyY1Byb3BlcnR5KCJUaHJlZSBVUkxzLiBNaWRkbGUgVVJM
IHdpdGhvdXQgZm9ybWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIv
eC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24n
KSIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJs
KHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24nKSIsCi0gICAgWyJ1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVy
LmZzKSIsCi0gICAgInVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24nKSJdKTsKLQotdGVzdFNy
Y1Byb3BlcnR5KCJUaHJlZSBVUkxzLiBGaXJzdCBhbmQgbGFzdCBVUkxzIHdpdGhvdXQgZm9ybWF0
LiIsCi0gICAgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVy
L3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpIiwKLSAgICAidXJsKHNoYWRlci52cyksIHVybChz
aGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpLCB1cmwoc2hhZGVyMykiLAot
ICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSIsCi0gICAgInVybChzaGFkZXIzKSJdKTsKLQotaGVhZGluZygiQ2Fw
aXRhbGl6YXRpb24gdGVzdHMuIik7Ci10ZXN0U3JjUHJvcGVydHkoIkFsbCB0b2tlbnMgY2FwaXRh
bGl6ZWQuIiwKLSAgICAiVVJMKFNIQURFUi5WUykgRk9STUFUKCdYLVNIQURFUi9YLVZFUlRFWCcp
IiwKLSAgICAidXJsKFNIQURFUi5WUykgZm9ybWF0KCdYLVNIQURFUi9YLVZFUlRFWCcpIiwKLSAg
ICBbInVybChTSEFERVIuVlMpIGZvcm1hdCgnWC1TSEFERVIvWC1WRVJURVgnKSJdKTsKLQotaGVh
ZGluZygiV2hpdGVzcGFjZSB0ZXN0cy4iKTsKLXRlc3RTcmNQcm9wZXJ0eSgiRXh0cmEgbGVhZGlu
ZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcgd2hpdGVzcGFjZS4gIiwKLSAgICAiICAgdXJsKHNoYWRl
ci52cykgICBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykgICAsICAgdXJsKHNoYWRlci5mcykg
ICBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSAgICIsCi0gICAgInVybChzaGFkZXIudnMp
IGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNo
YWRlci94LWZyYWdtZW50JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpIiwKLSAgICAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZy
YWdtZW50JykiXSk7Ci0KLXRlc3RTcmNQcm9wZXJ0eSgiTm8gd2hpdGVzcGFjZSBhcm91bmQgY29t
bWEuIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLHVy
bChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICAidXJsKHNo
YWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3Jt
YXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIsCi0gICAgWyJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJObyB3aGl0ZXNwYWNlIGJl
dHdlZW4gVVJMIGFuZCBmb3JtYXQuIiwKLSAgICAidXJsKHNoYWRlci52cylmb3JtYXQoJ3gtc2hh
ZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gt
dmVydGV4JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRl
eCcpIl0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21w
b3NpdGVkL2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5kLW1v
ZGVzLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY4MjQwM2Qu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21wb3NpdGVk
L2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDExNCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlciBibGVuZCBtb2RlcyBjb21wdXRlIGNvbG9yIHZh
bHVlcyBjb3JyZWN0bHkuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMgaXMgdGhlIHJl
ZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFzc2VzIGlmIGVh
Y2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29sb3Iu
Ci0gICAgICAgIFRoZSB0ZXN0IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3IgdmFsdWVzIGlu
IHRoaXMgcmVmZXJlbmNlIGZpbGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAgIDxzdHlsZT4K
LSAgICAucGFpci1vZi1zcXVhcmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAg
IC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAg
ICAgICAgd2lkdGg6IDIwcHg7Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2lu
OiAycHg7Ci0gICAgICAgIGZsb2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAq
LwotICAgIC5ub3JtYWwtZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0gICAgLm11bHRpcGx5LWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCAxOCUsIDI1JSk7Ci0gICAgfQotICAgIC5zY3JlZW4t
ZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAxODMsIDE5Mik7
Ci0gICAgfQotICAgIC5kYXJrZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMCUsIDMwJSwgNTAlKTsKLSAgICB9Ci0gICAgLmxpZ2h0ZW4tZXhwZWN0ZWQgewotICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAu
ZGlmZmVyZW5jZS1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUs
IDc3LCAxKTsKLSAgICB9Ci0gICAgLmV4Y2x1c2lvbi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYigyNTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhw
ZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA5MSwgMTI4KTsKLSAg
ICB9Ci0gICAgLmNvbG9yLWRvZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmdiKDI1NSwgMTkwLCAyNTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAgfQotICAg
IC5oYXJkLWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAl
LCA0NCUsIDUwJSk7Ci0gICAgfQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgODksIDEyOCk7Ci0gICAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAg
ICAgICA8ZGl2IGNsYXNzPSJub3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNs
YXNzPSJub3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9
InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4cGVjdGVk
Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibXVsdGlwbHktZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9InNjcmVlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNj
cmVlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1v
Zi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJs
aWdodGVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibGlnaHRlbi1leHBl
Y3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVz
Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9ImRpZmZlcmVuY2UtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2Pgot
ICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4
Y2x1c2lvbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1l
eHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVh
cmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9Im92ZXJsYXktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAg
IDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9y
LWRvZGdlLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iY29sb3ItZG9kZ2Ut
ZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1
YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWJ1cm4tZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgICAgICA8ZGl2IGNsYXNzPSJjb2xvci1idXJuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rp
dj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNz
PSJoYXJkLWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGFyZC1s
aWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1v
Zi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNvZnQtbGlnaHQtZXhwZWN0ZWQiPjwvZGl2PgotICAg
IDwvZGl2PgotICAgIDwhLS0KLSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGJsZW5kIG1vZGVzIHRv
IHRoaXMgcGFnZSwgYmUgY2FyZWZ1bCBub3QgdG8gZXhjZWVkIDYwMHB4IGluIAotICAgICAgICBo
ZWlnaHQsIHNpbmNlIER1bXBSZW5kZXJUcmVlIGNvbXBhcmVzIDgwMHg2MDAgc25hcHNob3RzIG9m
IHRoaXMgcGFnZS4KLSAgICAtLT4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5k
LW1vZGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2NvbXBvc2l0ZWQv
Y3VzdG9tLWZpbHRlci1ibGVuZC1tb2Rlcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBmOWNmN2NjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSwzMjkgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotICAg
IDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgYmxlbmQgbW9kZXMgY29tcHV0ZSBjb2xv
ciB2YWx1ZXMgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBUaGlzIHRlc3QgcGFzc2VzIGlm
IGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29s
b3IuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRD
U1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAg
ICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVhcmVzIHsK
LSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYg
ewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7Ci0gICAg
ICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZsb2F0OiBs
ZWZ0OwotICAgIH0KLSAgICAuZGVzdGluYXRpb24gewotICAgICAgICAvKiBEZXN0aW5hdGlvbiBj
b2xvciAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMzAlLCA1MCUpOwot
ICAgICAgICAvKiBGb3JjZSBhIEdQVSBjb21wb3NpdGVkIGxheWVyLiAqLwotICAgICAgICAtd2Vi
a2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7Ci0gICAgfQotICAgIC8qIEJsZW5k
IG1vZGVzICovCi0gICAgLm5vcm1hbCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
bm9uZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJj
ZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC8qCi0gICAg
ICAgIFRoZSBlcXVhdGlvbnMgYmVsb3cgdXNlIHRoZSBzeW1ib2xzIGFuZCBlcXVhdGlvbnMgZGVm
aW5lZCBpbiB0aGUgQ1NTIEJsZW5kaW5nIGFuZCBDb21wb3NpdGluZyBzcGVjLCB3aGVyZToKLSAg
ICAgICAgICAgIENvID0gb3V0cHV0IGNvbG9yCi0gICAgICAgICAgICBDcyA9IHNvdXJjZSBjb2xv
ciAoYWthICJtaXggY29sb3IiLCAiY3NzX01peENvbG9yIikKLSAgICAgICAgICAgIENiID0gZGVz
dGluYXRpb24gY29sb3IgKGFrYSAiYmFja2Ryb3AgY29sb3IiLCAib3JpZ2luYWwgRE9NIGVsZW1l
bnQgY29sb3IiKQotCi0gICAgICAgIGh0dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxl
L3RpcC9jb21wb3NpdGluZy9pbmRleC5odG1sI2dlbmVyYWxmb3JtdWxhCi0gICAgKi8KLSAgICAu
bm9ybWFsLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIE5vcm1hbDoKLQotICAg
ICAgICAgICAgQ28gPSBDcwotCi0gICAgICAgICAgICByID0gMC4wCi0gICAgICAgICAgICBnID0g
MC42Ci0gICAgICAgICAgICBiID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAubXVsdGlwbHkgewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21p
eC1jb2xvci5mcycpIG11bHRpcGx5IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41
IDEuMCk7Ci0gICAgfQotICAgIC5tdWx0aXBseS1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAg
ICAgICAgICBNdWx0aXBseToKLQotICAgICAgICAgICAgQ28gPSBDYiAqIENzCi0KLSAgICAgICAg
ICAgIHIgPSAxLjAgKiAwLjAgPSAwLjAKLSAgICAgICAgICAgIGcgPSAwLjMgKiAwLjYgPSAwLjE4
Ci0gICAgICAgICAgICBiID0gMC41ICogMC41ID0gMC4yNQotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDE4JSwgMjUlKTsKLSAgICB9Ci0gICAgLnNjcmVlbiB7
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8uLi9yZXNv
dXJjZXMvbWl4LWNvbG9yLmZzJykgc2NyZWVuIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAw
LjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5zY3JlZW4tZXhwZWN0ZWQgewotICAgICAgICAvKgot
ICAgICAgICAgICAgU2NyZWVuOgotCi0gICAgICAgICAgICBDbyA9IENiICsgQ3MgLSBDYiAqIENz
Ci0KLSAgICAgICAgICAgIHIgPSAxLjAgKyAwLjAgLSAxLjAgKiAwLjAgPSAxLjAKLSAgICAgICAg
ICAgIGcgPSAwLjMgKyAwLjYgLSAwLjMgKiAwLjYgPSAwLjcyCi0gICAgICAgICAgICBiID0gMC41
ICsgMC41IC0gMC41ICogMC41ID0gMC43NQotCi0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhl
IGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZv
cjoKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDAlLCA3MiUsIDc1JSk7Ci0g
ICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDE4MywgMTkyKTsK
LSAgICB9Ci0gICAgLmRhcmtlbiB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9u
ZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgZGFya2VuIHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5kYXJrZW4tZXhw
ZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgRGFya2VuOgotCi0gICAgICAgICAgICBD
byA9IG1pbihDYiwgQ3MpCi0KLSAgICAgICAgICAgIHIgPSBtaW4oMS4wLCAwLjApID0gMC4wCi0g
ICAgICAgICAgICBnID0gbWluKDAuMywgMC42KSA9IDAuMwotICAgICAgICAgICAgYiA9IG1pbigw
LjUsIDAuNSkgPSAwLjUKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDAlLCAzMCUsIDUwJSk7Ci0gICAgfQotICAgIC5saWdodGVuIHsKLSAgICAgICAgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uLy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMn
KSBsaWdodGVuIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAg
fQotICAgIC5saWdodGVuLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIExpZ2h0
ZW46Ci0KLSAgICAgICAgICAgIENvID0gbWF4KENiLCBDcykKLQotICAgICAgICAgICAgciA9IG1h
eCgxLjAsIDAuMCkgPSAxLjAKLSAgICAgICAgICAgIGcgPSBtYXgoMC4zLCAwLjYpID0gMC42Ci0g
ICAgICAgICAgICBiID0gbWF4KDAuNSwgMC41KSA9IDAuNQotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAuZGlmZmVy
ZW5jZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8u
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgZGlmZmVyZW5jZSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuZGlmZmVyZW5jZS1leHBlY3RlZCB7
Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBEaWZmZXJlbmNlOgotCi0gICAgICAgICAgICBDbyA9
IGFicyhDYiAtIENzKQotCi0gICAgICAgICAgICByID0gYWJzKDEuMCAtIDAuMCkgPSAxLjAKLSAg
ICAgICAgICAgIGcgPSBhYnMoMC4zIC0gMC42KSA9IDAuMwotICAgICAgICAgICAgYiA9IGFicygw
LjUgLSAwLjUpID0gMC4wCi0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2Fs
Y3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDMwJSwgMCUpOwotICAgICAgICAqLwot
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA3NywgMSk7Ci0gICAgfQotICAgIC5l
eGNsdXNpb24gewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgn
Li4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGV4Y2x1c2lvbiBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuZXhjbHVzaW9uLWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIEV4Y2x1c2lvbjoKLQotICAgICAgICAgICAgQ28g
PSBDYiArIENzIC0gMiAqIENiICogQ3MKLQotICAgICAgICAgICAgciA9IDEuMCArIDAuMCAtIDIu
MCAqIDEuMCAqIDAuMCA9IDEuMAotICAgICAgICAgICAgZyA9IDAuMyArIDAuNiAtIDIuMCAqIDAu
MyAqIDAuNiA9IDAuNTQKLSAgICAgICAgICAgIGIgPSAwLjUgKyAwLjUgLSAyLjAgKiAwLjUgKiAw
LjUgPSAwLjUKLQotICAgICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlv
biByZXF1aXJlcyB1cyB0byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNTQlLCA1MCUpOyAKLSAgICAgICAgKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMTM4LCAxMjcpOwotICAgIH0KLSAgICAub3Zl
cmxheSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8u
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgb3ZlcmxheSBzb3VyY2UtYXRvcCksIG1peF9jb2xv
ciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAub3ZlcmxheS1leHBlY3RlZCB7Ci0gICAg
ICAgIC8qCi0gICAgICAgICAgICBPdmVybGF5OgotCi0gICAgICAgICAgICBDbyA9IEhhcmRMaWdo
dChDcywgQ2IpCi0gICAgICAgICAgICAgICA9IGlmKENiIDw9IDAuNSkKLSAgICAgICAgICAgICAg
ICAgICAgIE11bHRpcGx5KENzLCAyICogQ2IpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAg
ICAgICAgICAgICAgICAgIFNjcmVlbihDcywgMiAqIENiIC0gMSkKLSAgICAgICAgICAgICAgID0g
aWYoQ2IgPD0gMC41KQotICAgICAgICAgICAgICAgICAgICAgQ3MgKiAoMiAqIENiKQotICAgICAg
ICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBDcyArICgyICogQ2IgLSAxKSAt
IChDcyAqICgyICogQ2IgLSAxKSkKLQotICAgICAgICAgICAgciA9IDAgKyAoMiAqIDEgLSAxKSAt
ICgwICogKDIgKiAxIC0gMSkpID0gMQotICAgICAgICAgICAgZyA9IDAuNiAqICgyICogMC4zKSA9
IDAuMzYKLSAgICAgICAgICAgIGIgPSAwLjUgKiAoMiAqIDAuNSkgPSAwLjUKLQotICAgICAgICAg
ICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2Ug
dGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MTAwJSwgMzYlLCA1MCUpOwotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
Z2IoMjU1LCA5MSwgMTI4KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRvZGdlIHsKLSAgICAgICAgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uLy4uL3Jlc291cmNlcy9taXgtY29s
b3IuZnMnKSBjb2xvci1kb2RnZSBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAx
LjApOwotICAgIH0KLSAgICAuY29sb3ItZG9kZ2UtZXhwZWN0ZWQgewotICAgICAgICAvKgotICAg
ICAgICAgICAgQ29sb3JEb2RnZToKLQotICAgICAgICAgICAgQ28gPSBpZihDcyA8IDEpCi0gICAg
ICAgICAgICAgICAgICAgICBtaW4oMSwgQ2IgLyAoMSAtIENzKSkKLSAgICAgICAgICAgICAgICAg
ZWxzZQotICAgICAgICAgICAgICAgICAgICAgMQotCi0gICAgICAgICAgICByID0gbWluKDEsIDEg
LyAoMSAtIDApKSA9IDEKLSAgICAgICAgICAgIGcgPSBtaW4oMSwgMC4zIC8gKDEgLSAwLjYpKSA9
IDAuNzUKLSAgICAgICAgICAgIGIgPSBtaW4oMSwgMC41IC8gKDEgLSAwLjUpKSA9IDEKLQotICAg
ICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0
byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMTAwJSwgNzUlLCAxMDAlKTsKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogcmdiKDI1NSwgMTkwLCAyNTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybiB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMv
bWl4LWNvbG9yLmZzJykgY29sb3ItYnVybiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjggMC44
IDAuOCAxLjApOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7Ci0gICAgICAgIC8q
Ci0gICAgICAgICAgICBDb2xvckJ1cm46Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPiAwKQot
ICAgICAgICAgICAgICAgICAgICAgMSAtIG1pbigxLCAoMSAtIENiKSAvIENzKQotICAgICAgICAg
ICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAwCi0KLSAgICAgICAgICAgICByID0g
MSAtIG1pbigxLCAoMSAtIDEpIC8gMC44KSA9IDEKLSAgICAgICAgICAgICBnID0gMSAtIG1pbigx
LCAoMSAtIDAuMykgLyAwLjgpID0gMC4xMjUKLSAgICAgICAgICAgICBiID0gMSAtIG1pbigxLCAo
MSAtIDAuNSkgLyAwLjgpID0gMC4zNzUKLQotICAgICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBj
b2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMTIuNSUsIDM3LjUlKTsK
LSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMzEsIDk2KTsK
LSAgICB9Ci0gICAgLmhhcmQtbGlnaHQgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9t
KG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGhhcmQtbGlnaHQg
c291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmhh
cmQtbGlnaHQtZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgSGFyZExpZ2h0Ogot
Ci0gICAgICAgICAgICBDbyA9IGlmKENzIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIE11
bHRpcGx5KENiLCAyICogQ3MpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAg
ICAgICAgIFNjcmVlbihDYiwgMiAqIENzIC0xKQotICAgICAgICAgICAgICAgPSBpZihDcyA8PSAw
LjUpCi0gICAgICAgICAgICAgICAgICAgICBDYiAqICgyICogQ3MpCi0gICAgICAgICAgICAgICAg
IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIENiICsgKDIgKiBDcyAtIDEpIC0gKENiICogKDIg
KiBDcyAtIDEpKQotCi0gICAgICAgICAgICByID0gMSAqICgyICogMCkgPSAwCi0gICAgICAgICAg
ICBnID0gMC4zICsgKDIgKiAwLjYgLSAxKSAtICgwLjMgKiAoMiAqIDAuNiAtIDEpKSA9IDAuNDQK
LSAgICAgICAgICAgIGIgPSAwLjUgKiAoMiAqIDAuNSkgPSAwLjUKLSAgICAgICAgKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCA0NCUsIDUwJSk7Ci0gICAgfQotICAgIC5zb2Z0
LWxpZ2h0IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4u
Ly4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBzb2Z0LWxpZ2h0IHNvdXJjZS1hdG9wKSwgbWl4
X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIFNvZnRMaWdodDoKLQotICAgICAgICAgICAgQ28g
PSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBDYiAtICgxIC0gMiAqIENzKSAq
IENiICogKDEgLSBDYikKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAg
ICAgQ2IgKyAoMiAqIENzIC0gMSkgKiAoRChDYikgLSBDYikKLQotICAgICAgICAgICAgd2l0aAot
Ci0gICAgICAgICAgICBEKENiKSA9IGlmKENiIDw9IDAuMjUpCi0gICAgICAgICAgICAgICAgICAg
ICAgICAoMTYgKiBDYiAtIDEyKSAqIENiICsgNCkgKiBDYgotICAgICAgICAgICAgICAgICAgICBl
bHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBzcXJ0KENiKQotCi0gICAgICAgICAgICBELnIg
PSBzcXJ0KDEpID0gMQotICAgICAgICAgICAgRC5nID0gc3FydCgwLjMpID0gMC41NDc3MjI1NTc1
MDUxNjYKLSAgICAgICAgICAgIEQuYiA9IHNxcnQoMC41KSA9IDAuNzA3MTA2NzgxMTg2NTQ4Ci0g
ICAgICAgICAgICByID0gMSAtICgxIC0gMiAqIDApICogMSAqICgxIC0gMSkgPSAxCi0gICAgICAg
ICAgICBnID0gMC4zICsgKDIgKiAwLjYgLSAxKSAqIChELmcgLSAwLjMpID0gMC4zNDk1NDQ1MTE1
MDEwMzMKLSAgICAgICAgICAgIGIgPSAwLjUgLSAoMSAtIDIgKiAwLjUpICogMC41ICogKDEgLSAw
LjUpID0gMC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRp
b24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDM0Ljk1NDQ1MSUsIDUwJSk7Ci0gICAgICAgICov
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDg5LCAxMjgpOwotICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVh
cmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbm9ybWFsIj48L2Rpdj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0ibm9ybWFsLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAg
ICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0
aW5hdGlvbiBtdWx0aXBseSI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4
cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFy
ZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzY3JlZW4iPjwvZGl2PgotICAg
ICAgICA8ZGl2IGNsYXNzPSJzY3JlZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAg
IDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3Rp
bmF0aW9uIGRhcmtlbiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRhcmtlbi1leHBlY3Rl
ZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbGlnaHRlbiI+PC9kaXY+Ci0gICAgICAg
IDxkaXYgY2xhc3M9ImxpZ2h0ZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxk
aXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0
aW9uIGRpZmZlcmVuY2UiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJkaWZmZXJlbmNlLWV4
cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFy
ZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBleGNsdXNpb24iPjwvZGl2Pgot
ICAgICAgICA8ZGl2IGNsYXNzPSJleGNsdXNpb24tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2
PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9
ImRlc3RpbmF0aW9uIG92ZXJsYXkiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJvdmVybGF5
LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNx
dWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBjb2xvci1kb2RnZSI+PC9k
aXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWRvZGdlLWV4cGVjdGVkIj48L2Rpdj4KLSAg
ICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBjb2xvci1idXJuIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0iY29sb3ItYnVybi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gaGFy
ZC1saWdodCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImhhcmQtbGlnaHQtZXhwZWN0ZWQi
PjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0g
ICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIHNvZnQtbGlnaHQiPjwvZGl2PgotICAgICAg
ICA8ZGl2IGNsYXNzPSJzb2Z0LWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAg
ICA8IS0tCi0gICAgICAgIElmIHlvdSBhZGQgbW9yZSBibGVuZCBtb2RlcyB0byB0aGlzIHBhZ2Us
IGJlIGNhcmVmdWwgbm90IHRvIGV4Y2VlZCA2MDBweCBpbiAKLSAgICAgICAgaGVpZ2h0LCBzaW5j
ZSBEdW1wUmVuZGVyVHJlZSBjb21wYXJlcyA4MDB4NjAwIHNuYXBzaG90cyBvZiB0aGlzIHBhZ2Uu
Ci0gICAgLS0+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwtZXhwZWN0
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1h
LXRleC1jb29yZC1vcHRpb25hbC1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA1ZDkwNGIwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hLXRleC1jb29yZC1vcHRpb25hbC1leHBlY3RlZC5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxo
ZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXJzIHdpdGggYmxlbmRpbmcg
YW5kIGNvbXBvc2l0aW5nIGV4ZWN1dGUgd2hldGhlciBvciBub3QgdGhlIGF1dGhvciBkZWZpbmVz
IGFfdGV4Q29vcmQuPC90aXRsZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNo
b3VsZCBzZWUgMiB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0tPgotICAgIDxzdHls
ZT4KLSAgICBkaXYgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsK
LSAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgbWFy
Z2luOiAxMHB4OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRp
dj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWEtdGV4LWNvb3Jk
LW9wdGlvbmFsLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMGM0NmI5MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDQwICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyB3aXRoIGJsZW5kaW5nIGFuZCBjb21wb3Np
dGluZyBleGVjdXRlIHdoZXRoZXIgb3Igbm90IHRoZSBhdXRob3IgZGVmaW5lcyBhX3RleENvb3Jk
LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIDIg
dmVydGljYWxseS1zdGFja2VkIGdyZWVuIGJveGVzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRl
c3QoKQotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMg
YWZ0ZXIgdGhlIHNoYWRlcnMgZG93bmxvYWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwot
ICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7Ci0gICAgICAg
IC8qIElmIHRoZSBzaGFkZXJzIGV4ZWN1dGUsIHRoZXkgd2lsbCB0dXJuIHRoZSBlbGVtZW50J3Mg
Y29sb3IgZnJvbSByZWQgdG8gZ3JlZW4uICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJn
YigyNTUsIDAsIDApOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4
OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0gICAgfQotICAgIC5hLXRleC1jb29yZC1kZWZpbmVk
IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hLXRl
eC1jb29yZC1kZWZpbmVkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycp
IG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMS4wIDAuMCAxLjApOwotICAgIH0K
LSAgICAuYS10ZXgtY29vcmQtdW5kZWZpbmVkIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hLXRleC1jb29yZC11bmRlZmluZWQudnMnKSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2Nv
bG9yIDAuMCAxLjAgMC4wIDEuMCk7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9k
eSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBjbGFzcz0iYS10ZXgtY29vcmQtZGVmaW5l
ZCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYS10ZXgtY29vcmQtdW5kZWZpbmVkIj48L2Rpdj4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFuaW1hdGlvbi1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIzMDk4NGMuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFuaW1hdGlvbi1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0gICAgICAgCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tZnJvbS1ub25lLWJveCIgZWxlbWVu
dCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUu
dnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0
ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLXRvLW5vbmUtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBz
b21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAx
LCByb3RhdGVCeSAzMCwgb2Zmc2V0IDApCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkg
Zm9yICJjdXN0b20tZnJvbS1uby1wYXJhbXMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhp
bmcgY2xvc2UgdG86IGN1c3RvbSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCByb3Rh
dGVCeSAzMCwgb2Zmc2V0IDApCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJj
dXN0b20tdG8tbm8tcGFyYW1zLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3Nl
IHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAs
IG9mZnNldCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1p
eC1hdHRyaWJ1dGVzLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBj
dXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDUgNSwgcm90YXRlQnkgMzAsIG9mZnNl
dCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLWZyb20tZGlm
Zi1wYXJhbXMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3Rv
bSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCBwYXJhbSAxMCwgcm90YXRlQnkgNjAs
IG9mZnNldCAxMCwgYW5vdGhlcl9wYXJhbSA1KQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3Bl
cnR5IGZvciAiY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29t
ZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwg
cGFyYW0gMTAsIHJvdGF0ZUJ5IDYwLCBvZmZzZXQgMTAsIGFub3RoZXJfcGFyYW0gNSkKLVBBU1Mg
LSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1taXgtcGFyYW1zLWJveCIgZWxl
bWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3Rh
dGUudnMpIG5vbmUsIDEgMSwgcGFyYW0gMTAsIGFub3RoZXJfcGFyYW0gNSwgZmlyc3RfcGFyYW0g
Niwgcm90YXRlQnkgNjAsIG9mZnNldCAxMCwgbGFzdF9wYXJhbSA0KQotUEFTUyAtICJ3ZWJraXRG
aWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1peC1udW1iZXJzLWJveCIgZWxlbWVudCBhdCAx
cyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5v
bmUsIDEgMSwgcm90YXRlQnkgNDUsIGEgNS41LCBiIDExIDE2LjUsIGMgMjIgMjcuNSAzMywgZCAz
OC41IDQ0IDQ5LjUpCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24uaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZmM5M2IxMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYW5pbWF0aW9uLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxMzkgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNj
cmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVu
YWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVm
ZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICB9Ci0gICAgPC9zY3Jp
cHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBtYXJnaW46IDEwcHg7
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwotICAgICAgICAgICAgZGlzcGxh
eTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0b20tZnJvbS1u
b25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWZyb20tbm9u
ZS1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLXRvLW5v
bmUtYm94IHsKLSAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tdG8tbm9uZS1h
bmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLWZyb20tbm8t
cGFyYW1zLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWZyb20t
bm8tcGFyYW1zLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0
b20tdG8tbm8tcGFyYW1zLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3Vz
dG9tLXRvLW5vLXBhcmFtcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgICAgICAKLSAg
ICAgICAgI2N1c3RvbS1taXgtYXR0cmlidXRlcy1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1h
bmltYXRpb246IGN1c3RvbS1taXgtYXR0cmlidXRlcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAg
fQotICAgIAotICAgICAgICAjY3VzdG9tLWZyb20tZGlmZi1wYXJhbXMtYm94IHsKLSAgICAgICAg
ICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIDJzIGxp
bmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLXRvLWRpZmYtcGFyYW1z
LWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0b20tbWl4LXBh
cmFtcy1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGN1c3RvbS1taXgtcGFy
YW1zLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICAjY3VzdG9t
LW1peC1udW1iZXJzLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9t
LW1peC1udW1iZXJzLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgIEAt
d2Via2l0LWtleWZyYW1lcyBjdXN0b20tZnJvbS1ub25lLWFuaW0gewotICAgICAgICAgICAgZnJv
bSB7IC13ZWJraXQtZmlsdGVyOiBub25lOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCByb3RhdGVC
eSAzMCwgb2Zmc2V0IDApOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFt
ZXMgY3VzdG9tLXRvLW5vbmUtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCByb3RhdGVCeSAz
MCwgb2Zmc2V0IDApOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IG5vbmU7
IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWZy
b20tbm8tcGFyYW1zLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSk7IH0KLSAgICAgICAgICAg
IHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LXJv
dGF0ZS52cyksIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCk7IH0KLSAgICAgICAgfQotCi0gICAgICAg
IEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tdG8tbm8tcGFyYW1zLWFuaW0gewotICAgICAgICAg
ICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzKSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKTsgfQotICAgICAgICAgICAgdG8gICB7
IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZz
KSk7IH0KLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1
c3RvbS1taXgtYXR0cmlidXRlcy1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cyksIHJvdGF0ZUJ5
X2EgMzAsIG9mZnNldF9hIDApOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCA1IDUgYm9yZGVyLWJv
eCwgcm90YXRlQnkgMzAsIG9mZnNldCAwKTsgfQotICAgICAgICB9Ci0gICAgCi0gICAgICAgIEAt
d2Via2l0LWtleWZyYW1lcyBjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIHsKLSAgICAgICAg
ICAgIGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4
LXJvdGF0ZS52cyksIHBhcmFtIDEwLCByb3RhdGVCeSAzMCwgb2Zmc2V0IDAsIGFub3RoZXJfcGFy
YW0gNSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgu
Li9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cyksIHJvdGF0ZUJ5IDkwLCBvZmZzZXQgMjApOyB9
Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLXRvLWRpZmYt
cGFyYW1zLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSwgcm90YXRlQnkgOTAsIG9mZnNldCAy
MCk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9y
ZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cyksIHBhcmFtIDEwLCByb3RhdGVCeSAzMCwgb2Zmc2V0
IDAsIGFub3RoZXJfcGFyYW0gNSk7IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtp
dC1rZXlmcmFtZXMgY3VzdG9tLW1peC1wYXJhbXMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMp
LCBmaXJzdF9wYXJhbSA2LCByb3RhdGVCeSA5MCwgb2Zmc2V0IDIwLCBsYXN0X3BhcmFtIDQpOyB9
Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3Vy
Y2VzL3ZlcnRleC1yb3RhdGUudnMpLCBwYXJhbSAxMCwgcm90YXRlQnkgMzAsIG9mZnNldCAwLCBh
bm90aGVyX3BhcmFtIDUpOyB9Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIEAtd2Via2l0
LWtleWZyYW1lcyBjdXN0b20tbWl4LW51bWJlcnMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMp
LCByb3RhdGVCeSAwLCBhIDEsIGIgMiAzLCBjIDQgNSA2LCBkIDcgOCA5KTsgfQotICAgICAgICAg
ICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzKSwgcm90YXRlQnkgOTAsIGEgMTAsIGIgMjAgMzAsIGMgNDAgNTAgNjAsIGQgNzAg
ODAgOTApOyB9Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotICAgIDxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1wYXJzZXIuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9hbmltYXRpb25zL3Jlc291cmNlcy9hbmltYXRpb24tdGVzdC1oZWxwZXJz
LmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci0gICAg
ICAgIGNvbnN0IGV4cGVjdGVkVmFsdWVzID0gWwotICAgICAgICAgICAgLy8gW2FuaW1hdGlvbi1u
YW1lLCB0aW1lLCBlbGVtZW50LWlkLCBwcm9wZXJ0eSwgZXhwZWN0ZWQtdmFsdWUsIHRvbGVyYW5j
ZV0KLSAgICAgICAgICAgIFsiY3VzdG9tLWZyb20tbm9uZS1hbmltIiwgIDEsICJjdXN0b20tZnJv
bS1ub25lLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZz
KSBub25lLCAxIDEsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCknLCAwXSwKLSAgICAgICAgICAgIFsi
Y3VzdG9tLXRvLW5vbmUtYW5pbSIsICAxLCAiY3VzdG9tLXRvLW5vbmUtYm94IiwgIndlYmtpdEZp
bHRlciIsICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkg
MzAsIG9mZnNldCAwKScsIDBdLAotCi0gICAgICAgICAgICBbImN1c3RvbS1mcm9tLW5vLXBhcmFt
cy1hbmltIiwgIDEsICJjdXN0b20tZnJvbS1uby1wYXJhbXMtYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9m
ZnNldCAwKScsIDBdLAotICAgICAgICAgICAgWyJjdXN0b20tdG8tbm8tcGFyYW1zLWFuaW0iLCAg
MSwgImN1c3RvbS10by1uby1wYXJhbXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJs
KHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKScsIDBd
LAotICAgICAgICAgICAgCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtYXR0cmlidXRlcy1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LWF0dHJpYnV0ZXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0
b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDUgNSwgcm90YXRlQnkgMzAsIG9mZnNldCAw
KScsIDBdLAotCi0gICAgICAgICAgICAvLyBGSVhNRTogQ1NTIFNoYWRlcnMgZG8gbm90IGdldCBn
b29kIEZQUyBpbiBkZWJ1ZyBtb2RlLCBzbyB0aGUgdG9sZXJhbmNlIG5lZWRzIHRvIGJlIGhpZ2hl
ci4KLSAgICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04NTA4NgotICAgICAgICAgICAgWyJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIiwgIDEs
ICJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1
cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCBwYXJhbSAxMCwgcm90YXRlQnkgNjAsIG9m
ZnNldCAxMCwgYW5vdGhlcl9wYXJhbSA1KScsIDVdLAotICAgICAgICAgICAgWyJjdXN0b20tdG8t
ZGlmZi1wYXJhbXMtYW5pbSIsICAxLCAiY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJveCIsICJ3ZWJr
aXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHBhcmFt
IDEwLCByb3RhdGVCeSA2MCwgb2Zmc2V0IDEwLCBhbm90aGVyX3BhcmFtIDUpJywgNV0sCi0KLSAg
ICAgICAgICAgIFsiY3VzdG9tLW1peC1wYXJhbXMtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1wYXJh
bXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5v
bmUsIDEgMSwgcGFyYW0gMTAsIGFub3RoZXJfcGFyYW0gNSwgZmlyc3RfcGFyYW0gNiwgcm90YXRl
QnkgNjAsIG9mZnNldCAxMCwgbGFzdF9wYXJhbSA0KScsIDVdLAotICAgICAgICAgICAgWyJjdXN0
b20tbWl4LW51bWJlcnMtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1udW1iZXJzLWJveCIsICJ3ZWJr
aXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHJvdGF0
ZUJ5IDQ1LCBhIDUuNSwgYiAxMSAxNi41LCBjIDIyIDI3LjUgMzMsIGQgMzguNSA0NCA0OS41KScs
IDEwXQotICAgICAgICBdOwotICAgICAgICBydW5BbmltYXRpb25UZXN0KGV4cGVjdGVkVmFsdWVz
KTsKLSAgICA8L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xhc3M9ImJveCIg
aWQ9ImN1c3RvbS1mcm9tLW5vbmUtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlk
PSJjdXN0b20tdG8tbm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1
c3RvbS1mcm9tLW5vLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9
ImN1c3RvbS10by1uby1wYXJhbXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlk
PSJjdXN0b20tbWl4LWF0dHJpYnV0ZXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3gi
IGlkPSJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9
ImJveCIgaWQ9ImN1c3RvbS10by1kaWZmLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xh
c3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtcGFyYW1zLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0iYm94IiBpZD0iY3VzdG9tLW1peC1udW1iZXJzLWJveCI+PC9kaXY+Ci0KLSAgICA8ZGl2IGlk
PSJyZXN1bHQiPgotICAgIDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5n
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1hcnJheS1ibGVuZGluZy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDM2OWM5MzQ5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1ibGVuZGluZy1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSw5ICswLDAgQEAKLSAgICAgCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVy
dHkgZm9yICJjdXN0b20tYmxlbmQtZnJvbS1ub25lLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29t
ZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEg
MSwgYXJyYXlGcm9tTm9uZUFuaW0gYXJyYXkoMTAsIDIwKSkKLVBBU1MgLSAid2Via2l0RmlsdGVy
IiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1ibGVuZC10by1ub25lLWJveCIgZWxlbWVudCBhdCAxcyBz
YXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5v
bmUsIDEgMSwgYXJyYXlUb05vbmVBbmltIGFycmF5KDEwLCAyMCkpCi1QQVNTIC0gIndlYmtpdEZp
bHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtc2luZ2xlLWVsZW1lbnQtYm94IiBlbGVt
ZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5l
ZWRlZC52cykgbm9uZSwgMSAxLCBzaW5nbGVFbGVtZW50QXJyYXkgYXJyYXkoNSkpCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtdHdvLWZsb2F0cy1ib3gi
IGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1zaGFk
ZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHR3b0Zsb2F0c0FycmF5IGFycmF5KDIsIDYuNCkpCi1Q
QVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtbXVsdGlwbGUt
ZWxlbWVudHMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3Rv
bSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCBtdWx0aXBsZUVsZW1lbnRzQXJy
YXkgYXJyYXkoNSwgMTAsIDUsIDEwLCA1LCAxMCwgNSwgMTAsIDUpKQotUEFTUyAtICJ3ZWJraXRG
aWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLWJsZW5kLWZpcnN0LWxvbmdlci1ib3giIGVsZW1l
bnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1zaGFkZXItbmVl
ZGVkLnZzKSBub25lLCAxIDEsIGZpcnN0TG9uZ2VyIGFycmF5KDEwLCAxMCwgMTAsIDEwKSkKLVBB
U1MgLSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1ibGVuZC1zZWNvbmQtbG9u
Z2VyLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJs
KG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgc2Vjb25kTG9uZ2VyIGFycmF5KDEwLCAx
MCwgMTAsIDEwLCAxMCkpCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1ibGVuZGluZy5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5nLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhmOWEwYWEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5nLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwxMTUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1s
PgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAg
ICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAg
ICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAg
ICAgICBtYXJnaW46IDEwcHg7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwot
ICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0KLSAgICAgICAg
I2N1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94IHsKLSAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0
aW9uOiBjdXN0b20tYmxlbmQtZnJvbS1ub25lLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0K
LSAgICAgICAgI2N1c3RvbS1ibGVuZC10by1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0
LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXRvLW5vbmUtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAg
IH0KLQotICAgICAgICAjY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWJveCB7Ci0gICAgICAg
ICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWFuaW0g
MnMgbGluZWFyOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC10d28tZmxvYXRz
LWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXR3by1m
bG9hdHMtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICAjY3VzdG9tLWJsZW5k
LW11bHRpcGxlLWVsZW1lbnRzLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjog
Y3VzdG9tLWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9
Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC1maXJzdC1sb25nZXItYm94IHsKLSAgICAgICAgICAg
IC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tYmxlbmQtZmlyc3QtbG9uZ2VyLWFuaW0gMnMgbGlu
ZWFyOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXNlY29uZC1s
b25nZXItYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlm
cmFtZXMgY3VzdG9tLWJsZW5kLWZyb20tbm9uZS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSk7IH0KLSAgICAg
ICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVk
LnZzKSwgYXJyYXlGcm9tTm9uZUFuaW0gYXJyYXkoMTAuMCwgMjAuMCkpOyB9Ci0gICAgICAgIH0K
LQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWJsZW5kLXRvLW5vbmUtYW5pbSB7
Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVy
LW5lZWRlZC52cyksIGFycmF5VG9Ob25lQW5pbSBhcnJheSgxMC4wLCAyMC4wKSk7IH0KLSAgICAg
ICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVk
LnZzKSk7IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3Vz
dG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJr
aXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzaW5nbGVFbGVtZW50
QXJyYXkgYXJyYXkoMCkpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHNpbmdsZUVsZW1lbnRBcnJheSBhcnJheSgx
MCkpOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWJs
ZW5kLXR3by1mbG9hdHMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHR3b0Zsb2F0c0FycmF5IGFycmF5KDEu
MDEsIDMuMTQpKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0d29GbG9hdHNBcnJheSBhcnJheSgzLjAzLCA5LjQy
KSk7IH0KLSAgICAgICAgfQotCi0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1i
bGVuZC1tdWx0aXBsZS1lbGVtZW50cy1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0
LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgbXVsdGlwbGVFbGVtZW50
c0FycmF5IGFycmF5KDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDApKTsgfQotICAgICAgICAgICAg
dG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBt
dWx0aXBsZUVsZW1lbnRzQXJyYXkgYXJyYXkoMTAsIDIwLCAxMCwgMjAsIDEwLCAyMCwgMTAsIDIw
LCAxMCkpOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9t
LWJsZW5kLWZpcnN0LWxvbmdlci1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgZmlyc3RMb25nZXIgYXJyYXko
MTAsIDEwLCAxMCwgMTAsIDEwKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgZmlyc3RMb25nZXIgYXJyYXkoMTAs
IDEwLCAxMCwgMTApKTsgfQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVz
IGN1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzZWNvbmRMb25n
ZXIgYXJyYXkoMTAsIDEwLCAxMCwgMTApKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzZWNvbmRMb25nZXIgYXJy
YXkoMTAsIDEwLCAxMCwgMTAsIDEwKSk7IH0KLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci0gICAg
PHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLXBhcnNlci5qcyI+PC9zY3Jp
cHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1h
dGlvbi10ZXN0LWhlbHBlcnMuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KLSAgICAgICAgY29uc3QgZXhwZWN0ZWRWYWx1ZXMgPSBbCi0gICAgICAgICAg
ICAvLyBbYW5pbWF0aW9uLW5hbWUsIHRpbWUsIGVsZW1lbnQtaWQsIHByb3BlcnR5LCBleHBlY3Rl
ZC12YWx1ZSwgdG9sZXJhbmNlXQotICAgICAgICAgICAgWyJjdXN0b20tYmxlbmQtZnJvbS1ub25l
LWFuaW0iLCAgMSwgImN1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgYXJyYXlGcm9tTm9u
ZUFuaW0gYXJyYXkoMTAsIDIwKSknLCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLWJsZW5kLXRv
LW5vbmUtYW5pbSIsICAxLCAiY3VzdG9tLWJsZW5kLXRvLW5vbmUtYm94IiwgIndlYmtpdEZpbHRl
ciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgYXJyYXlUb05v
bmVBbmltIGFycmF5KDEwLCAyMCkpJywgMl0sCi0KLSAgICAgICAgICAgIFsiY3VzdG9tLWJsZW5k
LXNpbmdsZS1lbGVtZW50LWFuaW0iLCAxLCAiY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWJv
eCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25l
LCAxIDEsIHNpbmdsZUVsZW1lbnRBcnJheSBhcnJheSg1KSknLCAyXSwKLQotICAgICAgICAgICAg
WyJjdXN0b20tYmxlbmQtdHdvLWZsb2F0cy1hbmltIiwgMSwgImN1c3RvbS1ibGVuZC10d28tZmxv
YXRzLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZz
KSBub25lLCAxIDEsIHR3b0Zsb2F0c0FycmF5IGFycmF5KDIsIDYuNCkpJywgMl0sCi0KLSAgICAg
ICAgICAgIFsiY3VzdG9tLWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWFuaW0iLCAxLCAiY3VzdG9t
LWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVy
bChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIG11bHRpcGxlRWxlbWVudHNBcnJheSBh
cnJheSg1LCAxMCwgNSwgMTAsIDUsIDEwLCA1LCAxMCwgNSkpJywgNF0sCi0KLSAgICAgICAgICAg
IFsiY3VzdG9tLWJsZW5kLWZpcnN0LWxvbmdlci1hbmltIiwgMSwgImN1c3RvbS1ibGVuZC1maXJz
dC1sb25nZXItYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVk
ZWQudnMpIG5vbmUsIDEgMSwgZmlyc3RMb25nZXIgYXJyYXkoMTAsIDEwLCAxMCwgMTApKScsIDJd
LAotCi0gICAgICAgICAgICBbImN1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWFuaW0iLCAxLCAi
Y3VzdG9tLWJsZW5kLXNlY29uZC1sb25nZXItYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20o
dXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgc2Vjb25kTG9uZ2VyIGFycmF5KDEw
LCAxMCwgMTAsIDEwLCAxMCkpJywgMl1dOwotICAgICAgICBydW5BbmltYXRpb25UZXN0KGV4cGVj
dGVkVmFsdWVzKTsKLSAgICA8L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xh
c3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94Ij48L2Rpdj4KLSAgICA8ZGl2
IGNsYXNzPSJib3giIGlkPSJjdXN0b20tYmxlbmQtdG8tbm9uZS1ib3giPjwvZGl2PgotICAgIDxk
aXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC1zaW5nbGUtZWxlbWVudC1ib3giPjwvZGl2
PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC10d28tZmxvYXRzLWJveCI+
PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLWJsZW5kLW11bHRpcGxlLWVs
ZW1lbnRzLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLWJsZW5k
LWZpcnN0LWxvbmdlci1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3Rv
bS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0icmVzdWx0Ij4K
LSAgICA8L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1leHBlY3RlZC5odG1sIGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI4M2QwNjIuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWV4
cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdHMgdGhlIGFycmF5KCkg
ZnVuY3Rpb24gaW4gY3VzdG9tIGZpbHRlcnM8L3RpdGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAg
ICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsK
LSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+
Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRp
diBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5
LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4
LWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNhNmJlZTIuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWFycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDE3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCB2ZXJ0ZXggc2hhZGVycyBjYW4gaW5kaXJlY3RseSBpbmRleCB1bmlm
b3JtIGFycmF5cy48L3RpdGxlPgotICAgIDwhLS0gVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZpbGUg
Zm9yIHRoZSB0ZXN0LiBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgZ3JlZW4g
c3F1YXJlLiAtLT4KLSAgICA8c3R5bGU+Ci0gICAgICAgIGRpdiB7Ci0gICAgICAgICAgICBiYWNr
Z3JvdW5kLWNvbG9yOiAjMGYwOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAg
ICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9k
eT4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5k
aXJlY3QtaW5kZXguaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4Lmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGE5YjY3OGMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDM3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCB2ZXJ0ZXggc2hhZGVycyBjYW4gaW5k
aXJlY3RseSBpbmRleCB1bmlmb3JtIGFycmF5cy48L3RpdGxlPgotICAgIDwhLS0gSWYgdGhlIHRl
c3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHNjcmlw
dD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJl
bmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gUnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUg
c2hhZGVycyBkb3dubG9hZC4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0K
LSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgICAgIGRpdiB7Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiAjZjAwOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAuYXJyYXktaW5kaXJlY3Qt
aW5kZXggewotICAgICAgICAgICAgLyogVGhpcyBjdXN0b20gZmlsdGVyIHdpbGwgdHVybiB0aGUg
ZWxlbWVudCdzIGNvbG9yIGZyb20gcmVkIHRvIGdyZWVuIGlmIGl0IGV4ZWN1dGVzLiAqLwotICAg
ICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hcnJheS11
bmlmb3JtLWluZGlyZWN0LWluZGV4LnZzJykgCi0gICAgICAgICAgICAgICAgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL3ZhcnlpbmctbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgCi0g
ICAgICAgICAgICAgICAgdmFsdWVzIGFycmF5KDAuMCwgMS4wKSwgcmVkSW5kZXggMCwgZ3JlZW5J
bmRleCAxLCBibHVlSW5kZXggMCwgYWxwaGFJbmRleCAxKTsKLSAgICAgICAgfQotICAgIDwvc3R5
bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBjbGFzcz0i
YXJyYXktaW5kaXJlY3QtaW5kZXgiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5Lmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXku
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjg2MDE4Yy4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXkuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+
Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0cyB0aGUgYXJyYXkoKSBmdW5jdGlvbiBp
biBjdXN0b20gZmlsdGVyczwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIp
OwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgi
V2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0
aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQg
dG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Nj
cmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAg
ICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNvdXJjZXMvZnJhZ21lbnQt
Y29sb3IuZnMnKSwgY29sb3JBcnJheSBhcnJheSgwLjAsIDEuMCwgMC4wLCAxLjApKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQg
ZGl2IGlzIGNvbG91cmVkIGdyZWVuIGJ5IGZyYWdtZW50LWNvbG9yLmZzLCBhIGZyYWdtZW50IHNo
YWRlci4KLSAgICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYgc3RheXMgcmVkLgotICAgICAgICAt
LT4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGluYXRpb24tYWxwaGEtZXhwZWN0ZWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1m
cmFjdGlvbmFsLWRlc3RpbmF0aW9uLWFscGhhLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDRiZGViNjUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGluYXRpb24t
YWxwaGEtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLTwhRE9D
VFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPkJsZW5kaW5n
IHdpdGggZnJhY3Rpb25hbCBhbHBoYSBvbiBkZXN0aW5hdGlvbjwvdGl0bGU+Ci0gICAgPHN0eWxl
IHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2Rlc3RpbmF0aW9uIHsKLSAgICAgICAgICAgIC8q
IFRoaXMgaXMgdGhlIEVYQUNUIGNvbG9yIHZhbHVlIHdlIGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMg
bWF5IGhhdmUgc2xpZ2h0IGRpZmZlcmVudAotICAgICAgICAgICAgICAgY29sb3IgdmFsdWUuICov
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc5LCAxNjYsIDEyOCk7Ci0gICAg
ICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImRlc3RpbmF0
aW9uIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1mcmFjdGlvbmFsLWRlc3RpbmF0
aW9uLWFscGhhLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItYmxlbmQtZnJhY3Rpb25hbC1kZXN0aW5hdGlvbi1hbHBoYS5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAxMmIyNGYwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1mcmFjdGlvbmFsLWRlc3RpbmF0
aW9uLWFscGhhLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMDQgKzAsMCBAQAotPCFET0NUWVBF
IEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBi
bGVuZGluZyB3aXRoIGEgdHJhbnNsdWNlbnQgZWxlbWVudCB0ZXh0dXJlIGNvbXB1dGVzIHRoZSBj
b3JyZWN0IGNvbG9yIHZhbHVlLjwvdGl0bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVu
YWJsZWQiLCAiMSIpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9
InRleHQvY3NzIj4KLSAgICAgICAgI2Rlc3RpbmF0aW9uIHsKLSAgICAgICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYmEoMTAwJSwgMCUsIDAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbXVs
dGlwbHkgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDEuMCAwLjAgMC42KTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBUaGUgcmVzdWx0IG9m
IHRoZSBibGVuZGluZyBmdW5jdGlvbiBpcyBhdmVyYWdlZCB3aXRoIHRoZSBkZXN0aW5hdGlvbiBj
b2xvciB1c2luZyB0aGUgZGVzdGluYXRpb24ncyBhbHBoYSBhcyB0aGUgZGVzdGluYXRpb24ncyB3
ZWlnaHQuCi0KLSAgICBUaGUgcmVzdWx0aW5nIGNvbG9yIHdpbGwgYmU6Ci0gICAgICAgIENyID0g
KDEgLSBhYikgeCBDcyArIGFiIHggQihDYiwgQ3MpCi0KLSAgICBXaXRoOgotICAgICAgICBDcjog
dGhlIHJlc3VsdCBjb2xvcgotICAgICAgICBCOiAgdGhlIGJsZW5kaW5nIGZ1bmN0aW9uCi0gICAg
ICAgIENzOiB0aGUgc291cmNlIGNvbG9yIChha2EgIm1peCBjb2xvciIsICJjc3NfTWl4Q29sb3Ii
KQotICAgICAgICBhczogdGhlIHNvdXJjZSBhbHBoYSAodXNlZCBkdXJpbmcgY29tcG9zaXRpbmcp
Ci0gICAgICAgIENiOiB0aGUgYmFja2Ryb3AgY29sb3IgKCJvcmlnaW5hbCBET00gZWxlbWVudCBj
b2xvciIpCi0gICAgICAgIGFiOiB0aGUgYmFja2Ryb3AgYWxwaGEKLQotICAgIEluIHRoaXMgY2Fz
ZToKLSAgICAgICAgQ3MgPSAoMC4wLCAxLjAsIDAuMCkKLSAgICAgICAgQ2IgPSAoMS4wLCAwLjAs
IDAuMCkKLSAgICAgICAgYWIgPSAwLjUKLQotICAgICAgICBCZWNhdXNlIHdlJ3JlIHVzaW5nIHRo
ZSAibXVsdGlwbHkiIGJsZW5kIG9wZXJhdG9yOgotICAgICAgICBCKENiLCBDcykgPSBDYiAqIENz
Ci0gICAgICAgIEIoQ2IsIENzKSA9ICgxLjAsIDAuMCwgMC4wKSAqICgwLjAsIDEuMCwgMC4wKQot
ICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAwLjAsIDAuMCkKLQotICAgICAgICBDciA9ICgxIC0g
MC41KSAqICgwLjAsIDEuMCwgMC4wKSArIDAuNSAqICgwLjAsIDAuMCwgMC4wKQotICAgICAgICBD
ciA9IDAuNSAqICgwLjAsIDEuMCwgMC4wKSArIDAuMAotICAgICAgICBDciA9ICgwLjAsIDAuNSwg
MC4wKQotCi0gICAgQXQgdGhpcyBwb2ludCwgd2UgY29tcG9zaXRlIHRoZSB0ZXh0dXJlIHdpdGgg
dGhlIFBvcnRlci1EdWZmIFNvdXJjZUF0b3AgY29tcG9zaXRlIG9wZXJhdG9yLgotICAgIFRoZSBn
ZW5lcmFsIGNvbXBvc2l0aW5nIGZvcm11bGEgaXM6Ci0KLSAgICAgICAgY28gPSBhcyAqIEZhICog
Q3MgKyBhYiAqIEZiICogQ2IKLQotICAgICAgICBhbyA9IGFzICogMSArIGFiICogKDEgLSBhcykK
LSAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICBXaXRoIHRoZSBTb3VyY2VBdG9wIGNvbXBvc2l0
ZSBvcGVyYXRvcjoKLQotICAgICAgICBGYSA9IGFiCi0gICAgICAgIEZiID0gMSAtIGFzCi0KLSAg
ICBJbiB0aGlzIGNhc2UsIENzID0gQ3IsIHdoZXJlIENyIGlzIHRoZSByZXN1bHQgb2YgdGhlIGJs
ZW5kaW5nIGZ1bmN0aW9uLgotICAgIFN1YnN0aXR1dGluZyBGYSBhbmQgRmIsIHdlIGdldCBmb2xs
b3dpbmcgc3BlY2lmaWMgZm9ybXVsYToKLQotICAgICAgICBjbyA9IGFzICogQ3MgKiBhYiArIGFi
ICogQ2IgKiAoMSAtIGFzKQotCi0gICAgICAgIGFvID0gYXMgKiBhYiArIGFiICogKDEgLSBhcykK
LSAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICBTdWJzdGl0dXRpbmcgQ3IgZm9yIENzOgotICAg
ICAgICBjbyA9IGFzICogQ3IgKiBhYiArIGFiICogQ2IgKiAoMSAtIGFzKQotCi0gICAgRnJvbSB0
aGlzIHdlIGdldDoKLSAgICAgICAgY28gPSAwLjYgKiAoMC4wLCAwLjUsIDAuMCkgKiAwLjUgKyAw
LjUgKiAoMS4wLCAwLjAsIDAuMCkgKiAoMSAtIDAuNikKLSAgICAgICAgY28gPSAwLjMgKiAoMC4w
LCAwLjUsIDAuMCkgKyAwLjIgKiAoMS4wLCAwLjAsIDAuMCkKLSAgICAgICAgY28gPSAoMC4wLCAw
LjE1LCAwLjApICsgKDAuMiwgMC4wLCAwLjApCi0gICAgICAgIGNvID0gKDAuMiwgMC4xNSwgMC4w
KQotCi0gICAgVGhlIHJlc3VsdGluZyBhbHBoYSBpczoKLSAgICAgICAgYW8gPSAwLjYgKiAwLjUg
KyAwLjUgKiAoMSAtIDAuNikKLSAgICAgICAgYW8gPSAwLjMgKyAwLjIKLSAgICAgICAgYW8gPSAw
LjUKLQotICAgIFRoZSBmaW5hbCByZXN1bHQgaXMgdGhlbjoKLSAgICAgICAgQ28gPSAoMC4yLCAw
LjE1LCAwLjApIC8gMC41Ci0gICAgICAgIENvID0gKDAuNCwgMC4zLCAwLjApCi0KLQotICAgIEF0
IHRoaXMgcG9pbnQgdGhlIHRleHR1cmUgaGFzIHRvIGJlIGNvbXBvc2l0ZWQgd2l0aCB0aGUgdW5k
ZXJseWluZyB3aGl0ZSBmcm9tIHRoZSBwYWdlIHRvIGdldCB0aGUgZmluYWwKLSAgICByZXN1bHRz
IGluIGxpZ2h0IG9mIHRoZSBhbHBoYSAoYW8pIHZhbHVlOgotCi0gICAgICAgIEV4cGVjdGVkIGNv
bG9yIG9uIHNjcmVlbiA9IENvICogYW8gKyAoMS4wIC0gYW8pICogV2hpdGUKLQotICAgICAgICBS
ID0gMC40ICogMC41ICsgKDEuMCAtIDAuNSkgKiAxLjAgPSAwLjIgKyAwLjUgPSAwLjcKLSAgICAg
ICAgRyA9IDAuMyAqIDAuNSArICgxLjAgLSAwLjUpICogMS4wID0gMC4xNSArIDAuNSA9IDAuNjUK
LSAgICAgICAgQiA9IDAuMCAqIDAuNSArICgxLjAgLSAwLjUpICogMS4wID0gMCArIDAuNSA9IDAu
NQotCi0gICAgU28gdGhlIGV4cGVjdGVkIChjb3JyZWN0KSB2YWx1ZSBpcyByZ2IoNzAlLCA2NSUs
IDUwJSksIG1lYW5pbmcgcmdiKDE3OSwgMTY2LCAxMjgpLgotCi0gICAgSU1QT1JUQU5UOiB0aGlz
IGlzIHRoZSBleGFjdCBleHBlY3RlZCBjb2xvci4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xp
Z2h0IGNvbG9yIGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBpZD0iZGVzdGluYXRpb24iPjwv
ZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLWV4cGVjdGVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhw
ZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjgyNDAzZC4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYmxl
bmQtbW9kZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDExNCArMCwwIEBACi08
IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3Vz
dG9tIGZpbHRlciBibGVuZCBtb2RlcyBjb21wdXRlIGNvbG9yIHZhbHVlcyBjb3JyZWN0bHkuPC90
aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0
aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFzc2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWly
IG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29sb3IuCi0gICAgICAgIFRoZSB0ZXN0
IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3IgdmFsdWVzIGluIHRoaXMgcmVmZXJlbmNlIGZp
bGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVh
cmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMg
PiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7
Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZs
b2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAqLwotICAgIC5ub3JtYWwtZXhw
ZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDYwJSwgNTAlKTsKLSAg
ICB9Ci0gICAgLm11bHRpcGx5LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDAlLCAxOCUsIDI1JSk7Ci0gICAgfQotICAgIC5zY3JlZW4tZXhwZWN0ZWQgewotICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAxODMsIDE5Mik7Ci0gICAgfQotICAgIC5kYXJr
ZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDMwJSwgNTAl
KTsKLSAgICB9Ci0gICAgLmxpZ2h0ZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAuZGlmZmVyZW5jZS1leHBlY3Rl
ZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDc3LCAxKTsKLSAgICB9Ci0g
ICAgLmV4Y2x1c2lvbi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigy
NTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhwZWN0ZWQgewotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA5MSwgMTI4KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRv
ZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMTkwLCAy
NTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAgfQotICAgIC5oYXJkLWxpZ2h0LWV4cGVj
dGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCA0NCUsIDUwJSk7Ci0gICAg
fQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDI1NSwgODksIDEyOCk7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4K
LSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJu
b3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJub3JtYWwtZXhwZWN0
ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+
Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAg
PGRpdiBjbGFzcz0ibXVsdGlwbHktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxk
aXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNjcmVlbi1l
eHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNjcmVlbi1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJw
YWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJsaWdodGVuLWV4cGVjdGVkIj48
L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibGlnaHRlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBj
bGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRp
ZmZlcmVuY2UtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBh
aXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1leHBlY3RlZCI+
PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1leHBlY3RlZCI+PC9kaXY+Ci0g
ICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRp
diBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im92
ZXJsYXktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXIt
b2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWRvZGdlLWV4cGVjdGVkIj48
L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iY29sb3ItZG9kZ2UtZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9ImNvbG9yLWJ1cm4tZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNz
PSJjb2xvci1idXJuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJoYXJkLWxpZ2h0LWV4cGVj
dGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGFyZC1saWdodC1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9InNvZnQtbGlnaHQtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDwhLS0K
LSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGJsZW5kIG1vZGVzIHRvIHRoaXMgcGFnZSwgYmUgY2Fy
ZWZ1bCBub3QgdG8gZXhjZWVkIDYwMHB4IGluIAotICAgICAgICBoZWlnaHQsIHNpbmNlIER1bXBS
ZW5kZXJUcmVlIGNvbXBhcmVzIDgwMHg2MDAgc25hcHNob3RzIG9mIHRoaXMgcGFnZS4KLSAgICAt
LT4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1tb2Rlcy5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIyZjQwOTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwzMjcgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgYmxlbmQgbW9kZXMgY29tcHV0
ZSBjb2xvciB2YWx1ZXMgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBUaGlzIHRlc3QgcGFz
c2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNh
bWUgY29sb3IuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJX
ZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsK
LSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVh
cmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMg
PiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7
Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZs
b2F0OiBsZWZ0OwotICAgIH0KLSAgICAuZGVzdGluYXRpb24gewotICAgICAgICAvKiBEZXN0aW5h
dGlvbiBjb2xvciAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMzAlLCA1
MCUpOwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAqLwotICAgIC5ub3JtYWwgewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjAp
OwotICAgIH0KLSAgICAvKgotICAgICAgICBUaGUgZXF1YXRpb25zIGJlbG93IHVzZSB0aGUgc3lt
Ym9scyBhbmQgZXF1YXRpb25zIGRlZmluZWQgaW4gdGhlIENTUyBCbGVuZGluZyBhbmQgQ29tcG9z
aXRpbmcgc3BlYywgd2hlcmU6Ci0gICAgICAgICAgICBDbyA9IG91dHB1dCBjb2xvcgotICAgICAg
ICAgICAgQ3MgPSBzb3VyY2UgY29sb3IgKGFrYSAibWl4IGNvbG9yIiwgImNzc19NaXhDb2xvciIp
Ci0gICAgICAgICAgICBDYiA9IGRlc3RpbmF0aW9uIGNvbG9yIChha2EgImJhY2tkcm9wIGNvbG9y
IiwgIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9yIikKLQotICAgICAgICBodHRwczovL2R2Y3Mu
dzMub3JnL2hnL0ZYVEYvcmF3ZmlsZS90aXAvY29tcG9zaXRpbmcvaW5kZXguaHRtbCNnZW5lcmFs
Zm9ybXVsYQotICAgICovCi0gICAgLm5vcm1hbC1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAg
ICAgICAgICBOb3JtYWw6Ci0KLSAgICAgICAgICAgIENvID0gQ3MKLQotICAgICAgICAgICAgciA9
IDAuMAotICAgICAgICAgICAgZyA9IDAuNgotICAgICAgICAgICAgYiA9IDAuNQotICAgICAgICAq
LwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0g
ICAgLm11bHRpcGx5IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1
cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBtdWx0aXBseSBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAubXVsdGlwbHktZXhwZWN0ZWQg
ewotICAgICAgICAvKgotICAgICAgICAgICAgTXVsdGlwbHk6Ci0KLSAgICAgICAgICAgIENvID0g
Q2IgKiBDcwotCi0gICAgICAgICAgICByID0gMS4wICogMC4wID0gMC4wCi0gICAgICAgICAgICBn
ID0gMC4zICogMC42ID0gMC4xOAotICAgICAgICAgICAgYiA9IDAuNSAqIDAuNSA9IDAuMjUKLSAg
ICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCAxOCUsIDI1JSk7Ci0g
ICAgfQotICAgIC5zY3JlZW4gewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIHNjcmVlbiBzb3VyY2UtYXRvcCks
IG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuc2NyZWVuLWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIFNjcmVlbjoKLQotICAgICAgICAgICAgQ28gPSBD
YiArIENzIC0gQ2IgKiBDcwotCi0gICAgICAgICAgICByID0gMS4wICsgMC4wIC0gMS4wICogMC4w
ID0gMS4wCi0gICAgICAgICAgICBnID0gMC4zICsgMC42IC0gMC4zICogMC42ID0gMC43MgotICAg
ICAgICAgICAgYiA9IDAuNSArIDAuNSAtIDAuNSAqIDAuNSA9IDAuNzUKLQotICAgICAgICAgICAg
VGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2UgdGhl
IDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAw
JSwgNzIlLCA3NSUpOwotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MjU1LCAxODMsIDE5Mik7Ci0gICAgfQotICAgIC5kYXJrZW4gewotICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRh
cmtlbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAg
ICAuZGFya2VuLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIERhcmtlbjoKLQot
ICAgICAgICAgICAgQ28gPSBtaW4oQ2IsIENzKQotCi0gICAgICAgICAgICByID0gbWluKDEuMCwg
MC4wKSA9IDAuMAotICAgICAgICAgICAgZyA9IG1pbigwLjMsIDAuNikgPSAwLjMKLSAgICAgICAg
ICAgIGIgPSBtaW4oMC41LCAwLjUpID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYigwJSwgMzAlLCA1MCUpOwotICAgIH0KLSAgICAubGlnaHRlbiB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4
LWNvbG9yLmZzJykgbGlnaHRlbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAx
LjApOwotICAgIH0KLSAgICAubGlnaHRlbi1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAg
ICAgICBMaWdodGVuOgotCi0gICAgICAgICAgICBDbyA9IG1heChDYiwgQ3MpCi0KLSAgICAgICAg
ICAgIHIgPSBtYXgoMS4wLCAwLjApID0gMS4wCi0gICAgICAgICAgICBnID0gbWF4KDAuMywgMC42
KSA9IDAuNgotICAgICAgICAgICAgYiA9IG1heCgwLjUsIDAuNSkgPSAwLjUKLSAgICAgICAgKi8K
LSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0g
ICAgLmRpZmZlcmVuY2UgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRpZmZlcmVuY2Ugc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmRpZmZlcmVuY2UtZXhw
ZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgRGlmZmVyZW5jZToKLQotICAgICAgICAg
ICAgQ28gPSBhYnMoQ2IgLSBDcykKLQotICAgICAgICAgICAgciA9IGFicygxLjAgLSAwLjApID0g
MS4wCi0gICAgICAgICAgICBnID0gYWJzKDAuMyAtIDAuNikgPSAwLjMKLSAgICAgICAgICAgIGIg
PSBhYnMoMC41IC0gMC41KSA9IDAuMAotCi0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhlIGNv
bG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoK
LSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDAlLCAzMCUsIDAlKTsKLSAgICAg
ICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgNzcsIDEpOwotICAgIH0K
LSAgICAuZXhjbHVzaW9uIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1p
eCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBleGNsdXNpb24gc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmV4Y2x1c2lvbi1leHBl
Y3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBFeGNsdXNpb246Ci0KLSAgICAgICAgICAg
IENvID0gQ2IgKyBDcyAtIDIgKiBDYiAqIENzCi0KLSAgICAgICAgICAgIHIgPSAxLjAgKyAwLjAg
LSAyLjAgKiAxLjAgKiAwLjAgPSAxLjAKLSAgICAgICAgICAgIGcgPSAwLjMgKyAwLjYgLSAyLjAg
KiAwLjMgKiAwLjYgPSAwLjU0Ci0gICAgICAgICAgICBiID0gMC41ICsgMC41IC0gMi4wICogMC41
ICogMC41ID0gMC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3Vs
YXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDU0JSwgNTAlKTsgCi0gICAgICAgICovCi0g
ICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAg
Lm92ZXJsYXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG92ZXJsYXkgc291cmNlLWF0b3ApLCBtaXhfY29s
b3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhwZWN0ZWQgewotICAg
ICAgICAvKgotICAgICAgICAgICAgT3ZlcmxheToKLQotICAgICAgICAgICAgQ28gPSBIYXJkTGln
aHQoQ3MsIENiKQotICAgICAgICAgICAgICAgPSBpZihDYiA8PSAwLjUpCi0gICAgICAgICAgICAg
ICAgICAgICBNdWx0aXBseShDcywgMiAqIENiKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAg
ICAgICAgICAgICAgICAgICBTY3JlZW4oQ3MsIDIgKiBDYiAtIDEpCi0gICAgICAgICAgICAgICA9
IGlmKENiIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIENzICogKDIgKiBDYikKLSAgICAg
ICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgQ3MgKyAoMiAqIENiIC0gMSkg
LSAoQ3MgKiAoMiAqIENiIC0gMSkpCi0KLSAgICAgICAgICAgIHIgPSAwICsgKDIgKiAxIC0gMSkg
LSAoMCAqICgyICogMSAtIDEpKSA9IDEKLSAgICAgICAgICAgIGcgPSAwLjYgKiAoMiAqIDAuMykg
PSAwLjM2Ci0gICAgICAgICAgICBiID0gMC41ICogKDIgKiAwLjUpID0gMC41Ci0KLSAgICAgICAg
ICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNl
IHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDEwMCUsIDM2JSwgNTAlKTsKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDI1NSwgOTEsIDEyOCk7Ci0gICAgfQotICAgIC5jb2xvci1kb2RnZSB7Ci0gICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9y
LmZzJykgY29sb3ItZG9kZ2Ugc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4w
KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRvZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAg
ICAgICAgIENvbG9yRG9kZ2U6Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPCAxKQotICAgICAg
ICAgICAgICAgICAgICAgbWluKDEsIENiIC8gKDEgLSBDcykpCi0gICAgICAgICAgICAgICAgIGVs
c2UKLSAgICAgICAgICAgICAgICAgICAgIDEKLQotICAgICAgICAgICAgciA9IG1pbigxLCAxIC8g
KDEgLSAwKSkgPSAxCi0gICAgICAgICAgICBnID0gbWluKDEsIDAuMyAvICgxIC0gMC42KSkgPSAw
Ljc1Ci0gICAgICAgICAgICBiID0gbWluKDEsIDAuNSAvICgxIC0gMC41KSkgPSAxCi0KLSAgICAg
ICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8g
dXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDEwMCUsIDc1JSwgMTAwJSk7Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29s
b3I6IHJnYigyNTUsIDE5MCwgMjU1KTsKLSAgICB9Ci0gICAgLmNvbG9yLWJ1cm4gewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcycpIGNvbG9yLWJ1cm4gc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC44IDAuOCAwLjgg
MS4wKTsKLSAgICB9Ci0gICAgLmNvbG9yLWJ1cm4tZXhwZWN0ZWQgewotICAgICAgICAvKgotICAg
ICAgICAgICAgQ29sb3JCdXJuOgotCi0gICAgICAgICAgICBDbyA9IGlmKENzID4gMCkKLSAgICAg
ICAgICAgICAgICAgICAgIDEgLSBtaW4oMSwgKDEgLSBDYikgLyBDcykKLSAgICAgICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgMAotCi0gICAgICAgICAgICAgciA9IDEgLSBt
aW4oMSwgKDEgLSAxKSAvIDAuOCkgPSAxCi0gICAgICAgICAgICAgZyA9IDEgLSBtaW4oMSwgKDEg
LSAwLjMpIC8gMC44KSA9IDAuMTI1Ci0gICAgICAgICAgICAgYiA9IDEgLSBtaW4oMSwgKDEgLSAw
LjUpIC8gMC44KSA9IDAuMzc1Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3Ig
Y2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAg
ICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDEyLjUlLCAzNy41JSk7Ci0gICAg
ICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAg
fQotICAgIC5oYXJkLWxpZ2h0IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25l
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBoYXJkLWxpZ2h0IHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5oYXJkLWxpZ2h0
LWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIEhhcmRMaWdodDoKLQotICAgICAg
ICAgICAgQ28gPSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBNdWx0aXBseShD
YiwgMiAqIENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBT
Y3JlZW4oQ2IsIDIgKiBDcyAtMSkKLSAgICAgICAgICAgICAgID0gaWYoQ3MgPD0gMC41KQotICAg
ICAgICAgICAgICAgICAgICAgQ2IgKiAoMiAqIENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0g
ICAgICAgICAgICAgICAgICAgICBDYiArICgyICogQ3MgLSAxKSAtIChDYiAqICgyICogQ3MgLSAx
KSkKLQotICAgICAgICAgICAgciA9IDEgKiAoMiAqIDApID0gMAotICAgICAgICAgICAgZyA9IDAu
MyArICgyICogMC42IC0gMSkgLSAoMC4zICogKDIgKiAwLjYgLSAxKSkgPSAwLjQ0Ci0gICAgICAg
ICAgICBiID0gMC41ICogKDIgKiAwLjUpID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYigwJSwgNDQlLCA1MCUpOwotICAgIH0KLSAgICAuc29mdC1saWdodCB7
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgc29mdC1saWdodCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAg
MC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuc29mdC1saWdodC1leHBlY3RlZCB7Ci0gICAgICAg
IC8qCi0gICAgICAgICAgICBTb2Z0TGlnaHQ6Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPD0g
MC41KQotICAgICAgICAgICAgICAgICAgICAgQ2IgLSAoMSAtIDIgKiBDcykgKiBDYiAqICgxIC0g
Q2IpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIENiICsgKDIg
KiBDcyAtIDEpICogKEQoQ2IpIC0gQ2IpCi0KLSAgICAgICAgICAgIHdpdGgKLQotICAgICAgICAg
ICAgRChDYikgPSBpZihDYiA8PSAwLjI1KQotICAgICAgICAgICAgICAgICAgICAgICAgKDE2ICog
Q2IgLSAxMikgKiBDYiArIDQpICogQ2IKLSAgICAgICAgICAgICAgICAgICAgZWxzZQotICAgICAg
ICAgICAgICAgICAgICAgICAgc3FydChDYikKLQotICAgICAgICAgICAgRC5yID0gc3FydCgxKSA9
IDEKLSAgICAgICAgICAgIEQuZyA9IHNxcnQoMC4zKSA9IDAuNTQ3NzIyNTU3NTA1MTY2Ci0gICAg
ICAgICAgICBELmIgPSBzcXJ0KDAuNSkgPSAwLjcwNzEwNjc4MTE4NjU0OAotICAgICAgICAgICAg
ciA9IDEgLSAoMSAtIDIgKiAwKSAqIDEgKiAoMSAtIDEpID0gMQotICAgICAgICAgICAgZyA9IDAu
MyArICgyICogMC42IC0gMSkgKiAoRC5nIC0gMC4zKSA9IDAuMzQ5NTQ0NTExNTAxMDMzCi0gICAg
ICAgICAgICBiID0gMC41IC0gKDEgLSAyICogMC41KSAqIDAuNSAqICgxIC0gMC41KSA9IDAuNQot
Ci0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhlIGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVz
IHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoKLSAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigxMDAlLCAzNC45NTQ0NTElLCA1MCUpOwotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA4OSwgMTI4KTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIG5vcm1hbCI+PC9kaXY+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9Im5vcm1hbC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbXVs
dGlwbHkiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJtdWx0aXBseS1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gc2NyZWVuIj48L2Rpdj4KLSAgICAgICAgPGRpdiBj
bGFzcz0ic2NyZWVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBkYXJr
ZW4iPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJkYXJrZW4tZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9ImRlc3RpbmF0aW9uIGxpZ2h0ZW4iPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNz
PSJsaWdodGVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJw
YWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBkaWZmZXJl
bmNlIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZXhjbHVzaW9uIj48L2Rpdj4KLSAgICAgICAgPGRp
diBjbGFzcz0iZXhjbHVzaW9uLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2
IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlv
biBvdmVybGF5Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+
PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gY29sb3ItZG9kZ2UiPjwvZGl2PgotICAgICAg
ICA8ZGl2IGNsYXNzPSJjb2xvci1kb2RnZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0g
ICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVz
dGluYXRpb24gY29sb3ItYnVybiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWJ1
cm4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Yt
c3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIGhhcmQtbGlnaHQiPjwv
ZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJoYXJkLWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAg
ICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBzb2Z0LWxpZ2h0Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPCEtLQotICAg
ICAgICBJZiB5b3UgYWRkIG1vcmUgYmxlbmQgbW9kZXMgdG8gdGhpcyBwYWdlLCBiZSBjYXJlZnVs
IG5vdCB0byBleGNlZWQgNjAwcHggaW4gCi0gICAgICAgIGhlaWdodCwgc2luY2UgRHVtcFJlbmRl
clRyZWUgY29tcGFyZXMgODAweDYwMCBzbmFwc2hvdHMgb2YgdGhpcyBwYWdlLgotICAgIC0tPgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLWV4cGVjdGVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2hhbmdlLWJsZW5kLW1v
ZGUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmNlZTUxNS4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY2hhbmdlLWJsZW5kLW1vZGUtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDIw
ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVz
dHMgdGhhdCBhIGN1c3RvbSBmaWx0ZXIgZGV0ZWN0cyBhIGJsZW5kIG1vZGUgY2hhbmdlIGFuZCBw
YWludHMgd2l0aCB0aGUgbmV3IGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8IS0tIAotICAgICAg
ICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRlc3QuCi0gICAgICAgIElmIHRo
ZSB0ZXN0IHBhc3NlcywgeW91IHdpbGwgc2VlIGEgZ3JlZW4gc3F1YXJlLgotICAgIC0tPgotICAg
IDxzdHlsZT4KLSAgICBkaXYgewotICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgIGhlaWdo
dDogMTAwcHg7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAg
IH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdj48L2Rpdj4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jaGFuZ2UtYmxlbmQtbW9kZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFiM2E2NWUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLmh0
bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1NCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1s
PgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgYSBjdXN0b20gZmlsdGVyIGRldGVjdHMg
YSBibGVuZCBtb2RlIGNoYW5nZSBhbmQgcGFpbnRzIHdpdGggdGhlIG5ldyBibGVuZCBtb2RlLjwv
dGl0bGU+Ci0gICAgPCEtLQotICAgICAgICBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSB3aWxsIHNl
ZSBhIGdyZWVuIHNxdWFyZS4KLSAgICAgICAgVGhpcyB0ZXN0IGNhbiBydW4gaW4gRFJUIG9yIG1h
bnVhbGx5LgotICAgIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNl
KCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEi
KTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAg
ICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAgICAgICAg
ICB2YXIgZmlsdGVyVGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbHRlclRhcmdl
dCIpOwotCi0gICAgICAgICAgICAvLyBJbml0aWFsbHksIGFwcGx5IGEgY3VzdG9tIGZpbHRlciBv
biB0aGUgZGl2IHVzaW5nIGJsZW5kIG1vZGUgbXVsdGlwbHkuCi0gICAgICAgICAgICAvLyBUaGUg
cmVzdWx0IHNob3VsZCBiZSBhIGJsYWNrIHNxdWFyZSAocmVkIGJhY2tncm91bmQgKiBncmVlbiBt
aXggY29sb3IgPSBibGFjaykuCi0gICAgICAgICAgICBmaWx0ZXJUYXJnZXQuY2xhc3NOYW1lID0g
Im11bHRpcGx5IjsKLQotICAgICAgICAgICAgLy8gVHJpZ2dlciBhIHN0eWxlIHJlc29sdXRpb24g
d2l0aCBibGVuZCBtb2RlIG11bHRpcGx5LgotICAgICAgICAgICAgLy8gVGhpcyBpcyByZXF1aXJl
ZCB0byByZXByb2R1Y2UgdGhpcyB0ZXN0J3MgYXNzb2NpYXRlZCBidWcuCi0gICAgICAgICAgICBm
aWx0ZXJUYXJnZXQuY2xpZW50V2lkdGg7Ci0KLSAgICAgICAgICAgIC8vIENoYW5nZSB0aGUgYmxl
bmQgbW9kZSB0byBub3JtYWwsIGFuZCBrZWVwIGFsbCBvdGhlciBmaWx0ZXIgcGFyYW1ldGVycyBp
ZGVudGljYWwuCi0gICAgICAgICAgICAvLyBUaGUgcmVzdWx0IHNob3VsZCBiZSBhIGdyZWVuIHNx
dWFyZSBpZiB0aGUgYmxlbmQgbW9kZSBjaGFuZ2VkIGNvcnJlY3RseS4gICAgICAgICAgICAKLSAg
ICAgICAgICAgIGZpbHRlclRhcmdldC5jbGFzc05hbWUgPSAibm9ybWFsIjsKLQotICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4K
LSAgICAjZmlsdGVyVGFyZ2V0IHsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICBoZWln
aHQ6IDEwMHB4OwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgfQotICAgIC5t
dWx0aXBseSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbXVsdGlwbHkgc291cmNlLWF0b3ApLCBtaXhfY29s
b3IgMCAxIDAgMSk7Ci0gICAgfQotICAgIC5ub3JtYWwgewotICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1h
bCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwIDEgMCAxKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LSAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9yZXBhaW50L3Jlc291cmNlcy9yZXBhaW50
LmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8
ZGl2IGlkPSJmaWx0ZXJUYXJnZXQiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNz
cy1jb2xvci1tYXRyaXgtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LWV4cGVjdGVkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY2NmI0ZTEuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xv
ci1tYXRyaXgtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLTwh
RE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPG1ldGEgY2hhcnNl
dD0iVVRGLTgiPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGNzc19jb2xvck1hdHJpeCBtdWx0aXBs
aWNhdGlvbiByZXN1bHQgaXMgY2xhbXBlZCB0byAxPC90aXRsZT4KLSAgICA8c3R5bGU+Ci0gICAg
ICAgICNsb25lbHlkaXYgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOwotICAg
ICAgICAgICAgYmFja2dyb3VuZDogcmdiKDUwJSwgNTAlLCA1MCUpOwotICAgICAgICB9Ci0gICAg
PC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImxvbmVseWRpdiI+PC9kaXY+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1uZWdhdGl2ZS1leHBl
Y3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWNsYW1wLWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNzIzMmQ4Yy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1u
ZWdhdGl2ZS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTggKzAsMCBAQAotPCFE
T0NUWVBFIEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8bWV0YSBjaGFyc2V0
PSJVVEYtOCI+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3NzX2NvbG9yTWF0cml4IG11bHRpcGxp
Y2F0aW9uIHJlc3VsdCBpcyBjbGFtcGVkIHRvIDA8L3RpdGxlPgotICAgIDxzdHlsZT4KLSAgICAg
ICAgI2xvbmVseWRpdiB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBo
ZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0gICAg
ICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMCwgMCwgMCk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxl
PgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0ibG9uZWx5ZGl2Ij48L2Rpdj4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9y
LW1hdHJpeC1uZWdhdGl2ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiOWY0
NzM1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw1NCArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9ImVuIj4KLTxo
ZWFkPgotICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBj
c3NfY29sb3JNYXRyaXggbXVsdGlwbGljYXRpb24gcmVzdWx0IGlzIGNsYW1wZWQgdG8gMDwvdGl0
bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAg
ICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKLSAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRo
ZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5v
dGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAg
ICAgI2xvbmVseWRpdiB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBo
ZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0gICAg
ICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjAlLCAyMCUsIDIwJSk7Ci0gICAgICAgICAgICAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2N1c3RvbS1maWx0
ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1uZWdhdGl2ZS5mcycpIG11bHRpcGx5IHNvdXJjZS1h
dG9wKSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJy
dW5UZXN0KCkiPgotICAgIDwhLS0KLSAgICAgICAgTGV0OgotICAgICAgICBjbGFtcCh2YWx1ZSkg
PSBBIGZ1bmN0aW9uIHRoYXQgY2xhbXBzIHZhbHVlcyBiZXR3ZWVuIDAuMCBhbmQgMS4wCi0gICAg
ICAgIGVsZW1lbnRDb2xvciA9IHZlYzQoMC4yLCAwLjIsIDAuMiwgMS4wKQotICAgICAgICBjc3Nf
Q29sb3JNYXRyaXggPSBNYXRyaXggd2l0aCBkaWFnb25hbCAoLTEwLjAsIC0xMC4wLCAtMTAuMCwg
MS4wKQotICAgICAgICBjc3NfTWl4Q29sb3IgPSB2ZWM0KC0wLjUsIC0wLjUsIC0wLjUsIDEuMCkK
LQotICAgICAgICBDb3JyZWN0IGNsYW1wZWQgcmVzdWx0OgotICAgICAgICByZXN1bHQgPSBjbGFt
cChjc3NfQ29sb3JNYXRyaXggKiBlbGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAg
IHJlc3VsdC5yID0gY2xhbXAoLTEwLjAgKiAwLjIpICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0g
Y2xhbXAoLTIuMCkgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIgPSAwLjAgKiAtMC41Ci0gICAgICAg
IHJlc3VsdC5yID0gMC4wCi0gICAgICAgIHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9
PiBibGFjawotCi0gICAgICAgIEluY29ycmVjdCB1bmNsYW1wZWQgcmVzdWx0OgotICAgICAgICBy
ZXN1bHQgPSAoY3NzX0NvbG9yTWF0cml4ICogZWxlbWVudENvbG9yKSAqIGNzc19NaXhDb2xvcgot
ICAgICAgICByZXN1bHQuciA9ICgtMTAuMCAqIDAuMikgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIg
PSAtMi4wICogLTAuNQotICAgICAgICByZXN1bHQuciA9IDEuMAotICAgICAgICByZXN1bHQuciA9
IHJlc3VsdC5nID0gcmVzdWx0LmIgPT4gd2hpdGUKLSAgICAtLT4KLSAgICA8ZGl2IGlkPSJsb25l
bHlkaXYiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgu
aHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFt
cC1jc3MtY29sb3ItbWF0cml4Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZh
MTYwYTguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDU0ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0g
ICAgPG1ldGEgY2hhcnNldD0iVVRGLTgiPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGNzc19jb2xv
ck1hdHJpeCBtdWx0aXBsaWNhdGlvbiByZXN1bHQgaXMgY2xhbXBlZCB0byAxPC90aXRsZT4KLSAg
ICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmls
dGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5j
dGlvbiBydW5UZXN0KCkgewotICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3Rz
IGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9u
ZSgpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAjbG9u
ZWx5ZGl2IHsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDog
MTAwcHg7Ci0gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICAgICAgICAg
IGJhY2tncm91bmQ6IHJnYigyMCUsIDIwJSwgMjAlKTsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1jbGFt
cC1jc3MtY29sb3ItbWF0cml4LmZzJykgbXVsdGlwbHkgc291cmNlLWF0b3ApKTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAg
PCEtLQotICAgICAgICBMZXQ6Ci0gICAgICAgIGNsYW1wKHZhbHVlKSA9IEEgZnVuY3Rpb24gdGhh
dCBjbGFtcHMgdmFsdWVzIGJldHdlZW4gMC4wIGFuZCAxLjAKLSAgICAgICAgZWxlbWVudENvbG9y
ID0gdmVjNCgwLjIsIDAuMiwgMC4yLCAxLjApCi0gICAgICAgIGNzc19Db2xvck1hdHJpeCA9IE1h
dHJpeCB3aXRoIGRpYWdvbmFsICgxMC4wLCAxMC4wLCAxMC4wLCAxMC4wKQotICAgICAgICBjc3Nf
TWl4Q29sb3IgPSB2ZWM0KDAuNSwgMC41LCAwLjUsIDEuMCkKLQotICAgICAgICBDb3JyZWN0IGNs
YW1wZWQgcmVzdWx0OgotICAgICAgICByZXN1bHQgPSBjbGFtcChjc3NfQ29sb3JNYXRyaXggKiBl
bGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAgIHJlc3VsdC5yID0gY2xhbXAoMTAu
MCAqIDAuMikgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIgPSBjbGFtcCgyLjApICogMC41Ci0gICAg
ICAgIHJlc3VsdC5yID0gMS4wICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0gMC41Ci0gICAgICAg
IHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9PiBncmF5Ci0KLSAgICAgICAgSW5jb3Jy
ZWN0IHVuY2xhbXBlZCByZXN1bHQ6Ci0gICAgICAgIHJlc3VsdCA9IChjc3NfQ29sb3JNYXRyaXgg
KiBlbGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAgIHJlc3VsdC5yID0gKDEwLjAg
KiAwLjIpICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0gMi4wICogMC41Ci0gICAgICAgIHJlc3Vs
dC5yID0gMS4wCi0gICAgICAgIHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9PiB3aGl0
ZQotICAgIC0tPgotICAgIDxkaXYgaWQ9ImxvbmVseWRpdiI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItY2xhbXAtY3NzLW1peC1jb2xvci1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItZXhwZWN0
ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWEwYjY1ZC4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAt
Y3NzLW1peC1jb2xvci1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAsMCBA
QAotPCFET0NUWVBFIEhUTUw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0
IGNzc19NaXhDb2xvciB2YWx1ZXMgZ3JlYXRlciB0aGFuIDEuMCBhcmUgY2xhbXBlZCB0byAxLjAg
YmVmb3JlIGJsZW5kaW5nIGFuZCBjb21wb3NpdGluZy48L3RpdGxlPgotICAgIDwhLS0KLSAgICAg
ICAgVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZpbGUgZm9yIHRoZSB0ZXN0LgotICAgICAgICBUaGUg
dGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBncmVlbiBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMg
YSBkaWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0IGZhaWxzLgotICAgIC0tPgotICAgIDxzdHlsZSB0
eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHJnYigxMCUsIDUwJSwgMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLW5lZ2F0aXZlLWV4cGVjdGVkLmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAt
Y3NzLW1peC1jb2xvci1uZWdhdGl2ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAxMzkxMTU3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLW5lZ2F0aXZlLWV4cGVj
dGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyMCArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4K
LTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgbmVnYXRpdmUgY3NzX01peENv
bG9yIHZhbHVlcyBhcmUgY2xhbXBlZCB0byAwLjAgYmVmb3JlIGJsZW5kaW5nIGFuZCBjb21wb3Np
dGluZy48L3RpdGxlPgotICAgIDwhLS0KLSAgICAgICAgVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZp
bGUgZm9yIHRoZSB0ZXN0LgotICAgICAgICBUaGUgdGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBi
bGFjayBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMgYSBkaWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0
IGZhaWxzLgotICAgIC0tPgotICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNm
aWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwJSwgMCUs
IDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBp
ZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLW1p
eC1jb2xvci1uZWdhdGl2ZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItbmVnYXRpdmUuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNDA2ZTQzNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLW1peC1jb2xvci1uZWdh
dGl2ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAotPCFET0NUWVBFIEhUTUw+
Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IG5lZ2F0aXZlIGNzc19NaXhD
b2xvciB2YWx1ZXMgYXJlIGNsYW1wZWQgdG8gMC4wIGJlZm9yZSBibGVuZGluZyBhbmQgY29tcG9z
aXRpbmcuPC90aXRsZT4KLSAgICA8IS0tIFRoZSB0ZXN0IHBhc3NlcyBpZiB0aGVyZSBpcyBhIGJs
YWNrIHNxdWFyZS4gSWYgdGhlIHNxdWFyZSBpcyBhIGRpZmZlcmVudCBjb2xvciwgdGhlIHRlc3Qg
ZmFpbHMuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikg
ewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQot
Ci0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7Ci0gICAgICAgICAgICAvLyBXZSBuZWVkIHRv
IHJ1biB0aGUgdGVzdCBhZnRlciB0aGUgc2hhZGVycyBhcmUgZG93bmxvYWRlZC4KLSAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGUg
dHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjZmlsdGVyLXRhcmdldCB7Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMCUsIDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAx
MDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRp
ZmZlcmVuY2UgY29weSksIG1peF9jb2xvciAxLjAgLTEuMCAtMi4wIDEuMCk7Ci0gICAgICAgIH0K
LSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgIDwh
LS0KLSAgICAgICAgSW5pdGlhbCB2YWx1ZXM6Ci0gICAgICAgICAgICBDYiA9ICgxLjAsIDAuMCwg
MC4wKQotICAgICAgICAgICAgQ3MgPSAoMS4wLCAtMS4wLCAtMi4wKQotCi0gICAgICAgIENvcnJl
Y3QgcmVzdWx0OgotCi0gICAgICAgICAgICBDbGFtcCBDczoKLSAgICAgICAgICAgICAgICBDcyA9
ICgwLjUsIDAuMCwgMC4wKQotCi0gICAgICAgICAgICBEaWZmZXJlbmNlIGJsZW5kIG1vZGU6Ci0g
ICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gYWJzKENiIC0gQ3MpCi0gICAgICAgICAgICAgICAg
QihDYiwgQ3MpID0gYWJzKCgxLjAsIDAuMCwgMC4wKSAtICgxLjAsIDAuMCwgMC4wKSkKLSAgICAg
ICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAwLjAsIDAuMCkgPT4gQmxhY2sKLQotICAgICAg
ICBJbmNvcnJlY3QgcmVzdWx0OgotCi0gICAgICAgICAgICBVc2UgdW5jbGFtcGVkIENzOgotICAg
ICAgICAgICAgICAgIENzID0gKDAuNSwgLTEuMCwgLTIuMCkKLQotICAgICAgICAgICAgRGlmZmVy
ZW5jZSBibGVuZCBtb2RlOgotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9IGFicyhDYiAtIENz
KQotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9IGFicygoMS4wLCAwLjAsIDAuMCkgLSAoMS4w
LCAtMS4wLCAtMi4wKSkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAxLjAsIDIu
MCkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAxLjAsIDEuMCkgPT4gQ3lhbgot
Ci0gICAgICAgIElmIHRoZSBjdXN0b20gZmlsdGVyIGZhaWxzIHRvIGFwcGx5LCB0aGUgcmVzdWx0
IHdpbGwgc2ltcGx5IGJlIHRoZSBiYWNrZHJvcCBjb2xvcjoKLSAgICAgICAgICAgICAgICBDYiA9
ICgxLjAsIDAuMCwgMC4wKSA9PiBSZWQKLSAgICAtLT4KLSAgICA8ZGl2IGlkPSJmaWx0ZXItdGFy
Z2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LW1peC1jb2xvci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMDYzZjIyLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci1jbGFtcC1jc3MtbWl4LWNvbG9yLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1OSArMCwwIEBA
Ci08IURPQ1RZUEUgSFRNTD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQg
Y3NzX01peENvbG9yIHZhbHVlcyBncmVhdGVyIHRoYW4gMS4wIGFyZSBjbGFtcGVkIHRvIDEuMCBi
ZWZvcmUgYmxlbmRpbmcgYW5kIGNvbXBvc2l0aW5nLjwvdGl0bGU+Ci0gICAgPCEtLSBUaGUgdGVz
dCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBncmVlbiBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMgYSBk
aWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0IGZhaWxzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkgewot
ICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3QgYWZ0ZXIgdGhlIHNoYWRlcnMg
YXJlIGRvd25sb2FkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0g
ICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2ZpbHRl
ci10YXJnZXQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwJSwgNTAlLCAx
MDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIG11bHRpcGx5IGNvcHkpLCBtaXhfY29sb3IgMTAuMCAx
LjAgMC4wIDEuMCk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25s
b2FkPSJydW5UZXN0KCkiPgotICAgIDwhLS0KLSAgICAgICAgSW5pdGlhbCB2YWx1ZXM6Ci0gICAg
ICAgICAgICBDYiA9ICgwLjEsIDAuNSwgMS4wKQotICAgICAgICAgICAgQ3MgPSAoMTAuMCwgMS4w
LCAwLjApCi0KLSAgICAgICAgQ29ycmVjdCByZXN1bHQ6Ci0KLSAgICAgICAgICAgIENsYW1wIENz
OgotICAgICAgICAgICAgICAgIENzID0gKDEuMCwgMS4wLCAwLjApCi0KLSAgICAgICAgICAgIE11
bHRpcGx5IGJsZW5kIG1vZGU6Ci0gICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gQ2IgKiBDcwot
ICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMS4wKSAqICgxLjAsIDEuMCwg
MC4wKQotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMC4wKSA9PiBHcmVl
bgotCi0gICAgICAgIEluY29ycmVjdCByZXN1bHQ6Ci0KLSAgICAgICAgICAgIFVzZSB1bmNsYW1w
ZWQgQ3M6Ci0gICAgICAgICAgICAgICAgQ3MgPSAoMTAuMCwgMS4wLCAwLjApCi0KLSAgICAgICAg
ICAgIE11bHRpcGx5IGJsZW5kIG1vZGU6Ci0gICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gQ2Ig
KiBDcwotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMS4wKSAqICgxMC4w
LCAxLjAsIDAuMCkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMS4wLCAwLjUsIDAuMCkg
PT4gT3JhbmdlCi0KLSAgICAgICAgSWYgdGhlIGN1c3RvbSBmaWx0ZXIgZmFpbHMgdG8gYXBwbHks
IHRoZSByZXN1bHQgd2lsbCBzaW1wbHkgYmUgdGhlIGJhY2tkcm9wIGNvbG9yOgotICAgICAgICAg
ICAgICAgIENiID0gKDAuMSwgMC41LCAxLjApID0+IEJsdWUKLSAgICAtLT4KLSAgICA8ZGl2IGlk
PSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29sb3ItZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA4ZTk4ZWE0Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1leHBlY3RlZC5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8
aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3RzIGNvbG9yIHZhbHVlcyBpbiBjdXN0b20gZmlsdGVy
czwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNmaWx0ZXJ0ZXN0Ym94IHsK
LSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgICAgIHdpZHRoOiAx
MDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkg
b25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rp
dj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnBuZyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1tYXRyaXgt
ZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1M2NkOGY1YzgxNzBj
NmQ3ZGE3ZjI3ZTQwYTQyNTIyNTk2MmExZDliLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpsaXRl
cmFsIDExMTk5CnpjbWVITllmdXdjNnlBaSQtfiRaV0RVPjNfcUFpTHdMMTc/OGw0JFVPVEpUWHZa
QmZ3cHM1Jmh2ZmcoaGJVfjgkdgp6aCs0Nn1yRC1iSUdMbndnM1FEcTM+KT5OKnF9YkFfa3dnVmFx
JEZUTTB+QG1HcF9hWHdfRnJmRyhWNnxsPGM0JFoKeklwNnYySWR7TCE/ajslWGdHV1YtIVowajJl
TD5uWDM9ODAzNzt7eG5BZ21ueWFIa2FoT3YjX1NEcXImTU0jKGw9CnohRnlPZFUmNHp8TlN1K2xl
cjk2UTQyZmk4VnRnVm1kQno2R0NjYjNEYGdKcSF6Zl8ldFZSMXstKGBMVzVvelo9Tgp6KGJpNDcr
TzlwfEV9UG5NTSlTcSNNYHpXdEo5UUgyKVI1VX1xMzIpVW5RX0gpTl48Wn0lK3ZqdyZocHpFPnJS
LUwKenBBbWlVQWhueDI0NkREfFV5R0JaVFM8bTtMQEpFSVdDZ0p+QWA2cTVuUHIpPGJ+ZCU1IWIr
OF9GPkdQYlUqQTdsCnomUlQ1MThwNitxYEJ+PHVgZHsrKnZ6ezR2e259fldyXkFsSEZ5SUhILXpS
MytjJUVxYnl6YVN2ZXJNSjF2RnU0fAp6dE1BXmcpY2Z3YDtgZVFgeS19JTAkd3AwNHZ7MTFsd3lD
KWhfbUxqOEZAPFE7N2A/cXMoWX44PD9+JFk4LT1ram4KekpCUT0qNDdzOT08cDskaEEpOUI+OT92
I2xkfVl9PFlKcmArTjUjbEhgYzMzUURvZXtDIzU8NXVOaUM9aFRVY1pFCnp3WT00XzxRWHRTVXYh
ND9NN1BhcTdLJTZ7Q1AjST1kVFFDWTtsMD8mSUpoUTVDUX1PPlgjXnZuSnopakVsMWtuJQp6Rnll
amhCNVM1I3BqfTxMYV49ZGhsUFNjVlc/YmQldFdyaTEqRVB4O3AzNUotbFRIP3lvODNgQWUmRXQ7
ajElVmMKenZpfmotNmxDPTF7XjBBb0Y2JH5ObSFqMU1Ze35fMGl2UnpGYkhXMU1aPW1vdUc2S0Zi
PjM+SmpQb0l7ZiRfaDdpCno0SGY9YjsqfSVEPzkyMDw5WTZlO1VIPmhsdnJlandwKHdLQ01We3pw
X3BKO0hEYSNkcj9qT05lZWkzQFN7a0BPRwp6MDt1MWBtZCo7aitpZ3x+VTJQaVc/Nz0jciF6JGte
RDBGZGFxeUtNZDtVQU52I31XT3M9PCQpd0EqdEBXJVFHaHcKeithRnZsRDxuK2tpfl9tVVNAQWZU
Q144Q3RnS0Q/SFpJWiF5diU5VE4jJT03bXFLPSR6bVJxbVJOKmpnX24xTTYrCnpaPnxXTE9yYX1Q
MDlnaG5FVGs0aG1JUSF6JVF0emtzSTw8fTtoYXYjNSsqOGJPKF5nQWstb2w8dEY5NyQkdHMqRQp6
RWhzM2tPNil7fm5BPUN1NWV+ez07SipreVd9bVkjbVZzaCEyQDI9YmUwQGBtKm1zKT9YOXBMTE1D
Xm1KaSM8MHUKekVIMzNwQDl4Kmc2VHQ8bzRxWD97UU1qTzNePEJta3BEJXdCTWZtPCk3SjAod0Nl
MnctQFFIcF5hNnVKcGFXNCMpCnpQTlhzdkw0Uj1PY1AjVSgwYCFOQlkmR1ZXPDR9TDdpOTYpaUE5
UWVfaCoyWWA0TFE7JURFWHs0NFN4Tj4yRkl7dgp6V2hgfk51fkh8JSpKLTxYM2MxZVVPOFoqUEtL
bT16bEZVMH5SIU4xeC1GPzl2TUtvJVJDR1B1JFdkZXMpVz4pJlYKellOT3t0UyMoSGhxMDZabD59
P1dQeHQmSH5iZ3tqck83VnV2cXtZZU44bCg1PUVpTT5UQ314ZS0tNGF1S19+Z0xQCnowclNpOTBJ
SDQqclZxOzJ6WjhXcHZpenIzQUk/eihxUk8tRDQrQVhtVGUtdCs5NkZLIz56Iz1UcGZYJG95dnZ1
JAp6TDtZZUlgK20lSlB4cG1mZDMlKXVBQUVZTj80OyptSVR6MDU/RyM2M3ZBcykrM3RYbCtaRFhG
Ykt+dj5eUW1YfWMKencwaCNuOWhwUCN2OHlgO2dqRkxwPmkrbWA4KDZqPCRPS0VHT0FGd0BTeCN9
ODRyTUVmdG8qVW1scndQd2tCMDEkCnpnPF5eWklkMj1WQlh2ejVQPylqb2hhZU4yc1FpU2dwNVok
Y1c1JH1qazVJYmNENDw9QEh6azxMckYwNztWOGd8egp6Q1RjSHNlS3MpOGAoJHxwOyNVaS08Zm00
a1VNJDR7NlZKfnozMjZLMzVwXld0Rn4xcTZjZWx4dE48NCUtZFBtUlkKenpTZzlZLWt0fG5rTGdS
aXkwR2pXeStxZUJ7cWBQYyh+bjdgbDd2Qk9jRXpgdjw8MXxJdzdBfEBLMnx1YFE9T1p3CnpibDdV
RF5kd1F1VTBaQkJeX092TlpFY3F9bXc0RWNEYig1U2ZsMWV5M3cxKiNtK1Y4dCFmZ2V1PTFVei1Q
Sio5Sgp6T19rJGZuOH4tQjU1JUZGWSNJIyt0aTJue0xJfXUpQ35tIVI1YW5YdTF5Rkxnek9XTlAk
JWxreHVKKGxwNiEjcHMKemktYVlQTE5edm1CO2RwXiZZTyZVJU9+Y2pPeXY9fjVOKUwpNUl8JlYh
KU02MWp5PUByJTtsQUhzTDB0SS1iNzBoCnpYTUFFWmlhe2hjVXxVPyV7SmY4WitJPC1+QTZkTiVz
cThzPFk3I3xYOV8rdlB0fGJWQzlTcDtgYENLSlJfRXBHaQp6Y1NJeWc7fHM3IURFezBwej5rNFBP
RnhRMUpXMnFZZEIkYV55QnVjb002WWdAYGwwJVhpdCY/bXdJNSNOMGkza3AKejNXVVRSdSElQHJs
I1Z6Smgjb244SVRYYmYhMzxvVyoqcGM2WiFzaURnRj1Ic0dsZkdSOXxuYHxET2Y0cFh4YTRpCnpW
Rmw0NlMhSk5fREkpc3YjJD9lcVNfWUg4PUVEO2R7cD4/TzVNcmhEUT9pUGQ0cD4zN2JpaWNNZFd0
QkFtSlZwPwp6MEpLK0hJLXNRazVTblN9ZlIreTZsPnt2dmFBQGZPVWZhPnEwV0JUQ1lmZjReMng4
T0gwV0JUQ1dUZDVvPU8tUE0KYmBtbCRoVSYkMiU8eVFEYkV8eHd3QmR1O3UmZHhzcHVeTSZoCgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWNvbG9yLW1hdHJpeC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnR4dAor
KysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLW1hdHJpeC5odG1sIGIvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLW1hdHJpeC5odG1s
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzg1YTEwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1tYXRyaXgu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCBjc3NfQ29sb3JNYXRyaXguPC90aXRsZT4KLSAg
ICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgdGhlIHJlZmVyZW5jZSBp
bWFnZSBhcyBncmF5c2NhbGUuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVm
ZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
IH0KLSAgICAgICAgCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAg
ICAgICAgICAvLyBSdW4gdGhlIHRlc3QgYWZ0ZXIgdGhlIGltYWdlIGxvYWRzLgotICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotPC9oZWFkPgotPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBj
dXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvZ3JheXNjYWxlLWNvbG9yLW1hdHJpeC5m
cycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5n
Ij4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDIwZTlkNWYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MiAr
MCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0
bGU+VGVzdHMgY29sb3IgdmFsdWVzIGluIGN1c3RvbSBmaWx0ZXJzPC90aXRsZT4KLSAgICAgICAg
PHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAg
IH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAg
ICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9h
ZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQot
ICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAg
ICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAg
ICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmVkOwotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSB1cmwo
Jy4uL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvcnMuZnMnKSwKLSAgICAgICAgICAgICAgICAgICAg
YzEgcmdiKDAsIDI1NSwgMCksCi0gICAgICAgICAgICAgICAgICAgIGMyIHJnYmEoMCwgMjU1LCAw
LCAxLjApLAotICAgICAgICAgICAgICAgICAgICBjMyBsaW1lLAotICAgICAgICAgICAgICAgICAg
ICBjNCBoc2woMTIwLCAxMDAlLCA1MCUpLAotICAgICAgICAgICAgICAgICAgICBjNSBoc2xhKDEy
MCwgMTAwJSwgNTAlLCAxLjApLAotICAgICAgICAgICAgICAgICAgICBjNiAjMDBGRjAwCi0gICAg
ICAgICAgICAgICAgKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hl
YWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAg
ICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVkIGxpbWUgYnkgZnJhZ21lbnQtY29s
b3JzLmZzLCBhIGZyYWdtZW50IHNoYWRlci4KLSAgICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYg
c3RheXMgcmVkLgotICAgICAgICAtLT4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+
PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJj
ZS1hbHBoYS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS1leHBlY3RlZC5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYjJmMmIwLi4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUt
ZnJhY3Rpb25hbC1zb3VyY2UtYWxwaGEtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDMzICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+
VGVzdHMgdGhlIHNvdXJjZS1hdG9wIGNvbXBvc2l0ZSBvcGVyYXRvciB3aGVuIHNvdXJjZSBhbHBo
YSBpcyBhIGZyYWN0aW9uYWwgdmFsdWUuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMg
aXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFz
c2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNh
bWUgY29sb3IuCi0gICAgICAgIFRoZSB0ZXN0IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3Ig
dmFsdWVzIGluIHRoaXMgcmVmZXJlbmNlIGZpbGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAg
IDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVhcmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0g
ICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6
ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAg
ICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZsb2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBDb21w
b3NpdGUgb3BlcmF0b3JzICovCi0gICAgLnNvdXJjZS1hdG9wLWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDE3OSwgMjE3LCAxOTIpOwotICAgIH0KLSAgICA8L3N0eWxl
PgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0ic291cmNlLWF0b3AtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8
ZGl2IGNsYXNzPSJzb3VyY2UtYXRvcC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLWZyYWN0aW9uYWwtc291cmNlLWFscGhhLmh0bWwgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLWZy
YWN0aW9uYWwtc291cmNlLWFscGhhLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDFlYjViYWYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsNzEgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGUgc291cmNlLWF0b3AgY29tcG9zaXRlIG9wZXJhdG9yIHdo
ZW4gc291cmNlIGFscGhhIGlzIGEgZnJhY3Rpb25hbCB2YWx1ZS48L3RpdGxlPgotICAgIDwhLS0g
VGhpcyB0ZXN0IHBhc3NlcyBpZiBlYWNoIGhvcml6b250YWwgcGFpciBvZiBzcXVhcmVzIGFyZSBl
eGFjdGx5IHRoZSBzYW1lIGNvbG9yLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRl
UHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5h
YmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRy
dWUpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC5wYWlyLW9m
LXNxdWFyZXMgewotICAgICAgICBjbGVhcjogYm90aDsKLSAgICB9Ci0gICAgLnBhaXItb2Ytc3F1
YXJlcyA+IGRpdiB7Ci0gICAgICAgIC8qIFNxdWFyZSBzaXplLiAqLwotICAgICAgICB3aWR0aDog
MjBweDsKLSAgICAgICAgaGVpZ2h0OiAyMHB4OwotICAgICAgICBtYXJnaW46IDJweDsKLSAgICAg
ICAgZmxvYXQ6IGxlZnQ7Ci0gICAgfQotICAgIC5kZXN0aW5hdGlvbiB7Ci0gICAgICAgIC8qIERl
c3RpbmF0aW9uIGNvbG9yICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwJSwg
NDAlLCA1MCUsIDAuNSk7Ci0gICAgfQotICAgIC8qIENvbXBvc2l0ZSBvcGVyYXRvcnMgKi8KLSAg
ICAvKgotICAgICAgICBUaGUgZXF1YXRpb25zIGJlbG93IHVzZSB0aGUgc3ltYm9scyBhbmQgZXF1
YXRpb25zIGRlZmluZWQgaW4gdGhlIENTUyBCbGVuZGluZyBhbmQgQ29tcG9zaXRpbmcgc3BlYywg
d2hlcmU6Ci0gICAgICAgICAgICBDbyA9IG91dHB1dCBjb2xvcgotICAgICAgICAgICAgQ3MgPSBz
b3VyY2UgY29sb3IgKGFrYSAibWl4IGNvbG9yIiwgImNzc19NaXhDb2xvciIpCi0gICAgICAgICAg
ICBDYiA9IGRlc3RpbmF0aW9uIGNvbG9yIChha2EgImJhY2tkcm9wIGNvbG9yIiwgIm9yaWdpbmFs
IERPTSBlbGVtZW50IGNvbG9yIikKLQotICAgICAgICAgICAgY28gPSBhcyB4IEZhIHggQ3MgKyBh
YiB4IEZiIHggQ2IKLSAgICAgICAgICAgIGFvID0gYXMgeCAxICsgYWIgeCAoMSAtIGFzKQotICAg
ICAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICAgICAgaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy9G
WFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwjZ2VuZXJhbGZvcm11bGEKLSAg
ICAqLwotICAgIC5zb3VyY2UtYXRvcCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
bm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjkgMC41IDAuNik7Ci0gICAgfQotICAgIC5zb3VyY2UtYXRv
cC1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBTb3VyY2VBdG9wOgotCi0gICAg
ICAgICAgICBGYSA9IGFiOyBGYiA9IDEgLSBhcwotICAgICAgICAgICAgY28gPSBhcyB4IENzIHgg
YWIgKyBhYiB4IENiIHggKDEgLSBhcykKLSAgICAgICAgICAgIGFvID0gYXMgeCBhYiArIGFiIHgg
KDEgLSBhcykKLSAgICAgICAgICAgIENvID0gY28gLyBhbwotCi0gICAgICAgICAgICBhID0gMC42
IHggMSArIDAuNSB4ICgxIC0gMC42KSA9IDAuNQotICAgICAgICAgICAgciA9ICgwLjYgeCAwIHgg
MC41ICsgMC41IHggMSB4ICgxIC0gMC42KSkgLyBhID0gMC40Ci0gICAgICAgICAgICBnID0gKDAu
NiB4IDAuOSB4IDAuNSArIDAuNSB4IDAuNCB4ICgxIC0gMC42KSkgLyBhID0gMC43Ci0gICAgICAg
ICAgICBiID0gKDAuNiB4IDAuNSB4IDAuNSArIDAuNSB4IDAuNSB4ICgxIC0gMC42KSkgLyBhID0g
MC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVx
dWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmdiYSg0MCUsIDcwJSwgNTAlLCAwLjUpOwotICAgICAgICAqLwotICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc5LCAyMTcsIDE5Mik7Ci0gICAgfQotICAgIDwvc3R5
bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgot
ICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2UtYXRvcCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9InNvdXJjZS1hdG9wLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVkLnBuZyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3Bl
cmF0b3JzLWV4cGVjdGVkLnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTVhMzc2
MTExMTgxYzZhNDc3YzQ0YzVkMjcwZGJlYTcxN2U4ZTQ4ZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAw
MQoKbGl0ZXJhbCAzMTgxCnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEweX55VXsrdllWMmE+aTAqWik9
aF5obEElQFdzJGxIYG9rPG19P29UbjU4cgp6cW9oPVd2QHtjPWx2SHlnM2xucExSQWJZbTZlQllP
XkF4aldeVz5rfjQ9dz59Vm9VT05jVllNc2YoIU84cFVsOSgKentucGRQRntFUDcrZEdiWncrJSND
NUJfUVJ6VGM/MCQtd05BYTx0UmNYPjNQUkFNK1kpe3tEfVohUXVKJDw/OyorCnpBNTU2STg1R251
RmZiJXhHRzZEaTh5NyNkS0tFeXs5Plc4LWVeTD9xX28tIz8pQjRLNUBiQmImNG59TlJGYnheaAp6
QkhRQFZqZi16dUdjZD48WmVuRSt1LTEqSmV0LUkyVlMpIVUhQEh2KDUjYjAxMkUjXmo3I2wtbE9A
aTtURmNqcEEKej1gYnxSSUthZnYhOHVUajgmLTQ5bz1KVnJ6KS09JUV5bSNSVz1xMWB6czJgIUE3
P3BCRiU7LWk9KVNlRDdSYCl9CnpXbzBQSHJxck92RlphQz1XbmtiPkkhSUFxKGJsKjlIS29zIz1k
JntHWGt4e2tiQklhd3VQYilOQDZVSzxBSjQ/Xwp6TDRlWXJKQUNzQCVyYCFVaFR8SSY3I1dXRWFi
TFVsZHNEZkwjM2hEPz5XdkB+N0dTamRrajJPZTYrZ1NAPEt3LW4KeiZvZVI5JGJ5bSZkRkZ0MWdf
VH5zY2gjNEg7ZD5nQHFqO309XzM9aFVVV09nd2wpQUN9PlltUyFANzlWbEpsR3c5Cnp5PGo5SmRP
PlFvP09JKHtGM05EQUg8Q2hnWGpue3Jvdyl2NyY2Q1h4NEJfQ1VMcz4hekY9dTRCR24+K2tRRDl+
fgp6ZUo/WV4xNEE4UD5BVWZBKTdKMGpZcnByZD1GTWF7dXk/UztOWjwwYGleM1RnWSZyKEJYSUZL
bmVTMit4RmFNN2kKeiEtRihYVjNKcHJmcHRZNnp4Py0/PitqekNPYmorTnNxZzgxWilEbHFPYykt
LVFSPlhRcGBWWldyPGRQblclIXstCnpYe2shSm5obXBmdypQK0RlNFdgNk11eld7KV5ATWYtQ0Y7
QFdaNz5XaDZCP25FJGUwZHpyUGtnYHslaGd1dGp1Owp6IXVDKDgjcTYxPD89ZG9ia05gRn56ZW9k
M0pVVG9Zald9QSUjOHdLXygqQktJb3pYP1AoUnhZPHVxKGplPkZWZFEKSSZNQmJAMEcmVnwyPjx7
OQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRl
LW9wZXJhdG9ycy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1j
b21wb3NpdGUtb3BlcmF0b3JzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLW9wZXJhdG9ycy5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA1NGNkODMzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwxMzIgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgY29tcG9zaXRlIG9wZXJhdG9y
cyBjb21wdXRlIGNvbG9yIHZhbHVlcyBjb3JyZWN0bHkuPC90aXRsZT4KLSAgICA8IS0tCi0gICAg
ICAgIFRoaXMgdGVzdCBtaW1pY3MgdGhlIFBvcnRlciBEdWZmIENvbXBvc2l0aW5nIE9wZXJhdG9y
cyBleGFtcGxlIGltYWdlIGluIHRoZSBDb21wb3NpdGluZyBhbmQgQmxlbmRpbmcgc3BlYzoKLSAg
ICAgICAgaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5n
L2luZGV4Lmh0bWwjcG9ydGVyZHVmZmNvbXBvc2l0aW5nb3BlcmF0b3JzX3NyY2F0b3AKLSAgICAt
LT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICB9Ci0gICAgPC9z
Y3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC8qIERyYXdzIGEgYmxhY2sgYm9yZGVyIGFyb3VuZCB0
aGUgc2hhZGVkIGRlc3RpbmF0aW9uIGRpdi4gKi8KLSAgICAjYm9yZGVyLWNvbnRhaW5lciB7Ci0g
ICAgICAgIHdpZHRoOiA0NXB4OwotICAgICAgICBoZWlnaHQ6IDQ1cHg7Ci0gICAgICAgIGJvcmRl
cjogMXB4IHNvbGlkIGJsYWNrOwotICAgIH0KLSAgICAvKiBUaGUgc2hhZGVkIGRpdi4gKi8KLSAg
ICAuZGVzdGluYXRpb24gewotICAgICAgICB3aWR0aDogMTAwJTsKLSAgICAgICAgaGVpZ2h0OiAx
MDAlOwotICAgIH0KLSAgICAvKiBEcmF3cyBhIHllbGxvdyBzcXVhcmUgaW4gdGhlIHVwcGVyIGxl
ZnQgY29ybmVyIG9mIHRoZSBkZXN0aW5hdGlvbiBkaXYuICovCi0gICAgLyogVGhlIHJlc3Qgb2Yg
dGhlIGRlc3RpbmF0aW9uIGRpdiBpcyB0cmFuc3BhcmVudC4gKi8KLSAgICAjZGVzdGluYXRpb24t
b3BhcXVlLWNoaWxkIHsKLSAgICAgICAgd2lkdGg6IDY3JTsKLSAgICAgICAgaGVpZ2h0OiA2NyU7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHllbGxvdzsKLSAgICB9Ci0gICAgLyogQ29tcG9z
aXRlIG9wZXJhdG9ycyAqLwotICAgIC5jbGVhciB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9y
ZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGNsZWFyKSk7Ci0gICAgfQotICAgIC5jb3B5
IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNz
LXRleC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb21wb3NpdGUuZnMnKSBub3Jt
YWwgY29weSkpOwotICAgIH0KLSAgICAuc291cmNlLW92ZXIgewotICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVy
bCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1hbCBzb3VyY2Utb3ZlcikpOwotICAg
IH0KLSAgICAuZGVzdGluYXRpb24tb3ZlciB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNv
dXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLW92ZXIpKTsKLSAgICB9Ci0g
ICAgLnNvdXJjZS1pbiB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9y
ZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9z
aXRlLmZzJykgbm9ybWFsIHNvdXJjZS1pbikpOwotICAgIH0KLSAgICAuZGVzdGluYXRpb24taW4g
ewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3Mt
dGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1h
bCBkZXN0aW5hdGlvbi1pbikpOwotICAgIH0KLSAgICAuc291cmNlLW91dCB7Ci0gICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMn
KSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIHNvdXJjZS1vdXQp
KTsKLSAgICB9Ci0gICAgLmRlc3RpbmF0aW9uLW91dCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLW91dCkpOwotICAg
IH0KLSAgICAuc291cmNlLWF0b3AgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVy
bCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2Vz
L2NvbXBvc2l0ZS5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAgIH0KLSAgICAuZGVzdGlu
YXRpb24tYXRvcCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRl
LmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLWF0b3ApKTsKLSAgICB9Ci0gICAgLnhvciB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29v
cmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIHhvcikp
OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0iYm9y
ZGVyLWNvbnRhaW5lciI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIGNsZWFyIj4K
LSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0g
ICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWluZXIi
PgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBjb3B5Ij4KLSAgICAgICAgICAgIDxk
aXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWluZXIiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2Utb3ZlciI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJk
ZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rp
dj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0i
ZGVzdGluYXRpb24gZGVzdGluYXRpb24tb3ZlciI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0
aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4K
LSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVz
dGluYXRpb24gc291cmNlLWluIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9w
YXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYg
aWQ9ImJvcmRlci1jb250YWluZXIiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBk
ZXN0aW5hdGlvbi1pbiI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUt
Y2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJi
b3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gc291cmNl
LW91dCI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwv
ZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29u
dGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZGVzdGluYXRpb24tb3V0
Ij4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+
Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWlu
ZXIiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2UtYXRvcCI+Ci0gICAg
ICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAg
ICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZGVzdGluYXRpb24tYXRvcCI+Ci0gICAgICAg
ICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8
L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24geG9yIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRl
c3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2
PgotICAgIDwhLS0KLSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGNvbXBvc2l0ZSBvcGVyYXRvcnMg
dG8gdGhpcyBwYWdlLCBiZSBjYXJlZnVsIG5vdCB0byBleGNlZWQgNjAwcHggaW4KLSAgICAgICAg
aGVpZ2h0LCBzaW5jZSBEdW1wUmVuZGVyVHJlZSBjb21wYXJlcyA4MDB4NjAwIHNuYXBzaG90cyBv
ZiB0aGlzIHBhZ2UuCi0gICAgLS0+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLXNvdXJj
ZS1hdG9wLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1jb21wb3NpdGUtc291cmNlLWF0b3AtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAzYTFiMDAxZmRiYmMxZGU4MTEyZjRiZDVjYTRkZTllNWRiYzk1
MGE3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkg
cGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpsaXRlcmFsIDEwNzk2CnpjbWVJMlpBZXA1N3t8
fU91MzhoQEV1IyshK3BSM0pCeHFUaThoWHVIOFk7Yn5MQ3ZPUyhUaDxVUj1Sc09xY15nbwp6SCZV
YHleYTNSKytKezFNbWs2PlZpeX1ydkg3SyZzTFd7IUQtMGlyey1TZlN1RlZCYXUtTlFOMElwP3ww
XkZQMXkKenVwYFRJbXFja01ZWTsrRlMoKVkpMnUxSit2M2NzenFAe2szVjwtOEZFNmQwJEU4SlhN
eE9JMj1jMnV9JlVoemcjCnpxUzNVZWg8dlB4KjcqeGUyQlh6I0RxM0pMOEh5NC08RSg+Wk9sT3Vr
WkIrJkg8O35vdGc4U3RlJWQ0c3tvYSlpPAp6VSN3WW92U0g/cEJ5SWFzYEBWQVg8P2k7Vklrd1I7
djY5bXdgK2dXKllLfDgkVnB0WFYoSTJEb19ab2RWVFYmdWQKeiliNFgpRypCSnhCdyhwRG4mVndI
dVMoNCQwfGlYRiU9X34kbEV2dDdJLVJmWUNFSFVzTk9FcV4zMylzVW5MV24zCnprPU5afDUldFk9
TDswLWU3NCFWUHJNRU5YSGUyNyZpd1ZKOTxWZDM5Z3w5TTRTKHI0MlZaSmVzUEtVTmdqTS09Swp6
TGNPemp0Z2BWem8pPU9JPk93WSNKQEhoZiVLWkwpZSRYdn0xP1d8KHR9KmN8RGFYYGZ3OGhwckwp
bz5iOFkzPyoKelVhQ3drNUp4P0o7dlRqYj5RPjJkeXVLeHludFVfTVVoI1ZDc3I2fURfQ3Yoa0lC
TjE3MFZrd2RxRFBGN0g8YyNmCnpPMzUlP25mJjVkYj93S1Z0PD9IYilhcUpvLVpnNlMxY3JHQSZJ
IUM4YTg1VyVBIyVjNV53LWtMP24+RHY0fUtRcQp6QyhXc0VKP3xMNS16RUQ/e083YDFGMEdlYiUk
PUQwdXJRRkUmSl4lTU43PXp9QTdwUkcyPk9mIUQpPEx0QlkyUVAKelVpPzRaQGJ0Si0jZkJZMktB
LVE0QStoUmZqVTt3cGFrMmxzSm4yX3RZKjB5Y25uNUc0byFjLXFFVWJiam8pQH1QCnpIYztHQ0Zf
UlpgKX0pTSleZD8tSEZXfmM0OVRiTjNGQyZ0OHVrMHUjaUVTN3F7O0h0QiQ4IW16eUB4K2ZxO1JR
KAp6VlJyby1wZzJyUUNsSlV6a0U3X1FuP1AzSWAha2Z+TCFAUU93VXJidm9nYnlAZFU8fn5XbSF2
Rih6Q0JDSmphPEwKeil3T0xXKT40KnI4Zz1jVmJHaFJjVEg4NV48NGczLWw7d3BKSWRCai1DPWdp
P0xIe2hwYHJUZnlZIVBqP3Z2cEJhCnpSOyFLPS16fFVpeChEelFEdntOVnRVdFBPXn4yK29ORHZ0
X1QjQkdGeHNoZHkmYV9UYmwjVkJZa29gIyshbXV8bgp6JUQ+dTJYK3teeiN6clM4TCRFWjk3dUxp
alEqKmFzXngoaWFpVmo8ZHM9IWpmRC1iS2dTcHBlRTFPe300N2VILUUKekk9fnIzcz05RDhiMzh4
LXAqbGIoYStMPDQxVnsqNkZhUXomNSgxWXxmQ1BZcUshRWB1MFUja3ppfj5sMk48eSMoCnQ1MEMo
bTBGViU+Pk8mPWdvREtqOXt9ZDhydn5SdWNSP1hleUY3byRKbCREV2RaZHoyfV96am9AQkRlcW0K
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtc291cmNlLWF0b3AtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YjEzNzg5Li4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3Np
dGUtc291cmNlLWF0b3AtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAot
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZhNmM2OTYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1zb3VyY2UtYXRvcC5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGUgc291cmNlLWF0b3AgY29tcG9zaXRlIG9w
ZXJhdG9yIHdpdGggdGhlIG5vcm1hbCBibGVuZCBtb2RlLjwvdGl0bGU+Ci0gICAgPCEtLQotICAg
ICAgICBUaGlzIHRlc3QgbWltaWNzIHRoZSBzb3VyY2UtYXRvcCBleGFtcGxlIGltYWdlIGluIHRo
ZSBDb21wb3NpdGluZyBhbmQgQmxlbmRpbmcgc3BlYzoKLSAgICAgICAgaHR0cHM6Ly9kdmNzLncz
Lm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwjcG9ydGVyZHVm
ZmNvbXBvc2l0aW5nb3BlcmF0b3JzX3NyY2F0b3AKLQotICAgICAgICBJZiBpdCBwYXNzZXMsIHlv
dSBzaG91bGQgc2VlIGEgeWVsbG93IHNxdWFyZSB3aXRoIGEgYmx1ZSBzcXVhcmUgaW4gaXRzIGxv
d2VyIHJpZ2h0IGNvcm5lci4KLSAgICAgICAgVGhpcyBzaG91bGQgYmUgaW4gdGhlIHVwcGVyIGxl
ZnQgY29ybmVyIG9mIGEgd2hpdGUgYm94IHdpdGggYSBibGFjayBib3JkZXIuCi0gICAgLS0+Ci0g
ICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZp
bHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0
PgotICAgIDxzdHlsZT4KLSAgICAvKiBEcmF3cyBhIGJsYWNrIGJvcmRlciBhcm91bmQgdGhlIHNo
YWRlZCBkZXN0aW5hdGlvbiBkaXYuICovCi0gICAgI2JvcmRlci1jb250YWluZXIgewotICAgICAg
ICB3aWR0aDogMjAwcHg7Ci0gICAgICAgIGhlaWdodDogMjAwcHg7Ci0gICAgICAgIGJvcmRlcjog
MXB4IHNvbGlkIGJsYWNrOwotICAgIH0KLSAgICAvKiBUaGUgc2hhZGVkIGRpdi4gKi8KLSAgICAj
ZGVzdGluYXRpb24gewotICAgICAgICB3aWR0aDogMTAwJTsKLSAgICAgICAgaGVpZ2h0OiAxMDAl
OwotICAgICAgICAvKiBUaGUgZnJhZ21lbnQgc2hhZGVyIHdyaXRlcyBhIGJsdWUgc3F1YXJlIHRv
IGNzc19NaXhDb2xvciBpbiB0aGUgbG93ZXIgcmlnaHQgY29ybmVyIG9mIHRoZSBkZXN0aW5hdGlv
biBkaXYuICovCi0gICAgICAgIC8qIEl0IHdyaXRlcyB0cmFuc3BhcmVudCBlbHNld2hlcmUuICov
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10
ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSk7Ci0gICAgfQotICAgIC8qIERyYXdzIGEgeWVsbG93IHNxdWFyZSBpbiB0
aGUgdXBwZXIgbGVmdCBjb3JuZXIgb2YgdGhlIGRlc3RpbmF0aW9uIGRpdi4gKi8KLSAgICAvKiBU
aGUgcmVzdCBvZiB0aGUgZGVzdGluYXRpb24gZGl2IGlzIHRyYW5zcGFyZW50LiAqLwotICAgICNk
ZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQgewotICAgICAgICB3aWR0aDogNjclOwotICAgICAgICBo
ZWlnaHQ6IDY3JTsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93OwotICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0iYm9yZGVyLWNvbnRhaW5l
ciI+Ci0gICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9
ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+Ci0gICAgICAgICAgICA8L2Rpdj4KLSAgICAgICAg
PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5saW5lLWNvbXB1
dGVkLXN0eWxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0CmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlM2Y1ZDc3Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29t
cHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAot
VGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgd2UgZG9uJ3QgYXNzZXJ0IHdoZW4gd2UgZ2VuZXJhdGUg
dGhlIGNvbXB1dGVkIHN0eWxlIGZvciBhbiBlbGVtZW50IHRoYXQgbWVldHMgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zOgotKDEpIFRoZSBlbGVtZW50IGhhcyBhIGN1c3RvbSBmaWx0ZXIgY29udGFp
bmluZyBhIHRyYW5zZm9ybSBwYXJhbWV0ZXIuCi0oMikgVGhlIGVsZW1lbnQgZG9lcyBub3QgaGF2
ZSBhIENTUyBib3guIEZvciBleGFtcGxlLCB0aGUgZWxlbWVudCBpcyBkaXNwbGF5OiBpbmxpbmUu
Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGVsZW1lbnQgaXMgbm9uLW51
bGwuCi1QQVNTIENvbXB1dGluZyB0aGUgZmlsdGVyIHN0eWxlIGZvciB0aGUgZWxlbWVudCBkaWQg
bm90IGNyYXNoIHRoZSBicm93c2VyLgotUEFTUyBmaWx0ZXJQcm9wZXJ0eUNTU1ZhbHVlIGlzIG5v
bi1udWxsLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRF
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTkzNmZlNi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5s
aW5lLWNvbXB1dGVkLXN0eWxlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi08
IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdD4KLSAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAg
I2ZpbHRlci10YXJnZXQgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwo
bm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgyKSk7Ci0gICAgICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Ci0gICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci0gICAgPHNwYW4gaWQ9ImZpbHRlci10YXJn
ZXQiPjwvc3Bhbj4KLSAgICA8c2NyaXB0PgotICAgICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0
IHZlcmlmaWVzIHRoYXQgd2UgZG9uJ3QgYXNzZXJ0IHdoZW4gd2UgZ2VuZXJhdGUgdGhlIGNvbXB1
dGVkIHN0eWxlXAotICAgICAgICAgICAgZm9yIGFuIGVsZW1lbnQgdGhhdCBtZWV0cyB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnM6PGJyLz5cCi0gICAgICAgICAgICAoMSkgVGhlIGVsZW1lbnQgaGFz
IGEgY3VzdG9tIGZpbHRlciBjb250YWluaW5nIGEgdHJhbnNmb3JtIHBhcmFtZXRlci48YnIvPlwK
LSAgICAgICAgICAgICgyKSBUaGUgZWxlbWVudCBkb2VzIG5vdCBoYXZlIGEgQ1NTIGJveC4gRm9y
IGV4YW1wbGUsIHRoZSBlbGVtZW50IGlzIGRpc3BsYXk6IGlubGluZS4iKTsKLQotICAgICAgICB2
YXIgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWx0ZXItdGFyZ2V0Iik7Ci0g
ICAgICAgIHNob3VsZEJlTm9uTnVsbCgiZWxlbWVudCIpOwotCi0gICAgICAgIHZhciBmaWx0ZXJQ
cm9wZXJ0eUNTU1ZhbHVlID0gZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS5nZXRQcm9wZXJ0eUNT
U1ZhbHVlKCItd2Via2l0LWZpbHRlciIpOwotICAgICAgICB0ZXN0UGFzc2VkKCJDb21wdXRpbmcg
dGhlIGZpbHRlciBzdHlsZSBmb3IgdGhlIGVsZW1lbnQgZGlkIG5vdCBjcmFzaCB0aGUgYnJvd3Nl
ci4iKTsKLSAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJmaWx0ZXJQcm9wZXJ0eUNTU1ZhbHVlIik7
Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1rZXl3b3JkLWFz
LXBhcmFtZXRlci1uYW1lLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS1leHBlY3Rl
ZC5wbmcKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgxMzE2ZmZkN2NiOWIyN2QzNDI2
N2Q5YWFhNWZiZjk3OWE2MzM4OGEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgMTA1
NjkKemNtZUhOVH14QyE3QGpqYiVKQ350OG00NzJUM0xkSHRFO0k9akpsJHRoKVUyKG43U1Z0Zyhr
VSVQe14hTnQzPFV8CnpoUVdlUmZwdC1jbT0obyhBdGV8Wik+WFRLTUJvUVJkUW43U0hMST4/ZW5Q
PX1iQG57JEpUdm4kXkZBfXJkLWBqdAp6JVZIdlRNSXdZXkQkMzF1MnBLM3Mqcko5RDxqJSQzNClJ
OExtUmcqKUdZO0ZpJmFPNk9HK0ZKb21ZblM3ZTNSOWYKeld5KjlvQHx0WlhZaV8yPW1oWjQxJV40
bzhKJS1SQmV9JWN8TTdRJGdxdyh5WCs4dn5KSWBQdDw+OU0lX0pmRX1mCnojYlZXbVB1cjV5KHRD
eihKXnM0amJ8VkU3UmlsaUhBRi10OGMoP29IPUchX3ZAOGY3U01NNzRwNyUjbTBKeW1aLQp6Tlo8
S2o+ckVQMEU1QEliIyYmTXM7MCZVYVR7ZGlXTGUjPXxqbXszZz8zM0N3VVowO2BjPk9jfVNCY0Ij
VGt7WE4KejFFKSh2b0xiYjZ1PklqKEg+Sk95Vm15JFc1YjlCTVpCPi1HRCtPaHRDWDchVXJtVEg7
KVlobUpKaTx8YmskMnp2CnpMXnIwRXB3YU9nUzAhMnQ8QzgtKCghZXtTUkZENXZ1fTtlfUQ2YGZx
Z2FSZ2JvYCNYQkhkfjVMTzlpY1F4S287TQp6S21fRTtoIWpJaiY/ZGdtbSZWXyZDPlEofGlNQjZ7
bHQoV29PWERCcz12aUJhTF8zS3dnYXQhYiNGQnYzNjVQZUcKemk5YFp7KyFEOzB8NVZDZFNeYyZh
Nz9wJVohQ3YwVDNNeXwpMnxwMklJfnQ3OFJicjhsXjQ2c3xOZFpiMmtFWW9ZCno7TkBzM3FhanQt
bytlZkdERTJmUjchcCRKeTxhSipNem9AMkBpITlTI1E1SCp2dE4/STZ3MU9xZ0EhMjl4TzNvJAp6
cT5HdF5PcmZsSlVFJHdHc0dnYSoxQ3BYJDwweSU+TkktJDIlKylfUD5zbVVZWTFBLVByMzM2Qmdg
aHhDMiZAIUwKelZFYShXREg/QERpKEheUyRPViREIWEwU2dhQ2w+SXFOTk91YE4xMCQrPG85ZXNL
RzUrKXhiTDdVPiU1KDJVckpTCno5U0M8MnRPS3dQZ3N9fFAwYXlwMzVDR056MHFhMU5WWmJeNz5w
JkQyITghb3pBWHNxKT5qMTArQGUjbShXKnopaQpaOFg5NkI/MHZaV1BKQTFRRG9VJShrQlhhbXt7
cSVJXyY1TG4KCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1ldGVyLW5hbWUtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1rZXl3b3Jk
LWFzLXBhcmFtZXRlci1uYW1lLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1ldGVyLW5hbWUtZXhwZWN0ZWQu
dHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1l
dGVyLW5hbWUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA3ZjBkYzcyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGEgQ1NTIGtleXdvcmQgY2FuIGJlIGEg
cGFyYW1ldGVyIG5hbWUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJl
ZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxl
ZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUp
OwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC8qIFRlc3RzIHRo
YXQgdGhlIENTUyBrZXl3b3JkICJiYWNrZ3JvdW5kIiBjYW4gYmUgYSBwYXJhbWV0ZXIgbmFtZS4g
Ki8KLSAgICAuc2hhZGVkIHsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICBoZWlnaHQ6
IDEwMHB4OwotICAgICAgICAvKiBUaGUgc2hhZGVyIHNob3VsZCByZXBsYWNlIHRoZSBkaXYncyBy
ZWQgYmFja2dyb3VuZCB3aXRoIGdyZWVuLiAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
ZWQ7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSB1cmwoJy4uL3Jlc291cmNl
cy9jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5mcycpLCBiYWNrZ3JvdW5kIDAgMSAwIDEp
OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0i
c2hhZGVkIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hlZC1tZXNoLXdpdGgtbWVz
aC1ib3gtdHlwZS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI4NmM0ZDIuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVk
LW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxNyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxl
PlRlc3QgdGhhdCBhIGRldGFjaGVkIGlkZW50aWZpZXIgYWZ0ZXIgdGhlIG1lc2ggYm94IHR5cGUg
aXMgaW50ZXJwcmV0ZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBw
YXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgc2luZ2xlIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHN0
eWxlPgotICAgICAgICAjZmlsdGVyLXRhcmdldCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogIzBmMDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8
ZGl2IGlkPSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hl
ZC1tZXNoLXdpdGgtbWVzaC1ib3gtdHlwZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE5NWFjNDguLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1l
c2gtd2l0aC1tZXNoLWJveC10eXBlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MSArMCwwIEBA
Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBh
IGRldGFjaGVkIGlkZW50aWZpZXIgYWZ0ZXIgdGhlIG1lc2ggYm94IHR5cGUgaXMgaW50ZXJwcmV0
ZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBz
aG91bGQgc2VlIGEgc2luZ2xlIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHNjcmlwdD4KLSAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIp
OwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2Fp
dFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3Rz
IGFmdGVyIHRoZSBzaGFkZXJzIGRvd25sb2FkLgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsK
LSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAgI2ZpbHRlci10
YXJnZXQgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgIC8q
IAotICAgICAgICAgICAgICAgIFRoaXMgY3VzdG9tIGZpbHRlcidzIHZlcnRleCBzaGFkZXIgZGVm
aW5lcyBhX3RyaWFuZ2xlQ29vcmQsIHdoaWNoIGlzIG9ubHkgYXZhaWxhYmxlIHdpdGggZGV0YWNo
ZWQgbWVzaGVzLgotICAgICAgICAgICAgICAgIFRodXMsIHRoaXMgY3VzdG9tIGZpbHRlciB3aWxs
IG9ubHkgZXhlY3V0ZSBpZiB0aGUgbWVzaCBpcyBkZXRhY2hlZC4KLSAgICAgICAgICAgICAgICBJ
ZiB0aGUgY3VzdG9tIGZpbHRlciBleGVjdXRlcywgaXRzIGZyYWdtZW50IHNoYWRlciB3aWxsIHR1
cm4gdGhpcyBlbGVtZW50IGdyZWVuLgotICAgICAgICAgICAgICovCi0gICAgICAgICAgICAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvYS10cmlhbmdsZS1jb29yZC1kZWZp
bmVkLnZzKSAKLSAgICAgICAgICAgICAgICBtaXgodXJsKC4uL3Jlc291cmNlcy9taXgtY29sb3Iu
ZnMpIG5vcm1hbCBzb3VyY2UtYXRvcCksCi0gICAgICAgICAgICAgICAgMSAxIGJvcmRlci1ib3gg
ZGV0YWNoZWQsCi0gICAgICAgICAgICAgICAgbWl4X2NvbG9yIDAgMSAwIDEKLSAgICAgICAgICAg
ICk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJydW5U
ZXN0KCkiPgotICAgIDxkaXYgaWQ9ImZpbHRlci10YXJnZXQiPjwvZGl2PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLW1hdE4tZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1tYXROLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDk4NzBkNGUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLW1hdE4tZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDE2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAg
ICAgIDx0aXRsZT5UZXN0cyBtYXROKCkgZnVuY3Rpb25zIGluIGN1c3RvbSBmaWx0ZXJzPC90aXRs
ZT4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAg
ICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9
InJ1blRlc3QoKSI+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAg
IDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1tYXROLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbWF0Ti5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA5YjUxOTFmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1tYXROLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzOSArMCwwIEBA
Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVz
dHMgbWF0TigpIGZ1bmN0aW9ucyBpbiBjdXN0b20gZmlsdGVyczwvdGl0bGU+Ci0gICAgICAgIDxz
Y3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAg
ICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRp
bmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAg
ICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAg
I2ZpbHRlcnRlc3Rib3ggewotICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6
IHJlZDsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcu
Li9yZXNvdXJjZXMvZnJhZ21lbnQtbWF0Ti5mcycpLAotICAgICAgICAgICAgICAgICAgICBtMSBt
YXQyKDEsIDEsIDAsIDApLAotICAgICAgICAgICAgICAgICAgICBtMiBtYXQzKDEsIDAsIDEsIDAs
IDEsIDEsIDAsIDEsIDApLAotICAgICAgICAgICAgICAgICAgICBtMyBtYXQ0KDEsIDEsIDAsIDAs
IDAsIDEsIDEsIDAsIDEsIDAsIDAsIDEsIDEsIDEsIDEsIDEpCi0gICAgICAgICAgICAgICAgKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkg
b25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBw
eCByZWQgZGl2IGlzIGNvbG91cmVkIGxpbWUgYnkgZnJhZ21lbnQtbWF0Ti5mcywgYSBmcmFnbWVu
dCBzaGFkZXIuCi0gICAgICAgICAgICBGYWlscyBpZiB0aGUgZGl2IHN0YXlzIHJlZC4KLSAgICAg
ICAgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1tZXNoLWNvbHVtbi1yb3ctb3JkZXItZXhwZWN0ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1tZXNoLWNvbHVtbi1yb3ct
b3JkZXItZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDliMGM4
Ni4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwzMiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3QgdGhhdCBpbiBDU1MsIHRoZSB2ZXJ0ZXggbWVzaCBkaW1lbnNpb25zIGFyZSBzcGVj
aWZpZWQgaW4gY29sdW1uLCByb3cgb3JkZXIuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRo
aXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgSWYgdGhlIHRl
c3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIGNoZWNrYm9hcmQgd2l0aCAyIGNvbHVtbnMgYW5k
IDQgcm93cyBvZiBibGFjayBhbmQgZ3JlZW4gc3F1YXJlcy4KLSAgICAtLT4KLSAgICA8c3R5bGU+
Ci0gICAgYm9keSB7Ci0gICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICB9Ci0gICAgZGl2IHsKLSAg
ICAgICAgZmxvYXQ6IGxlZnQ7Ci0gICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6
IDUwcHg7Ci0gICAgfQotICAgIGRpdjpudGgtY2hpbGQoNG4pLCBkaXY6bnRoLWNoaWxkKDRuKzEp
IHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMCB9Ci0gICAgZGl2Om50aC1jaGlsZCg0bisyKSwgZGl2
Om50aC1jaGlsZCg0biszKSB7IGJhY2tncm91bmQtY29sb3I6ICMwZjAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAg
PGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48
L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkwYjc0ZDkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW1lc2gtY29sdW1uLXJvdy1vcmRlci5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgaW4gQ1NTLCB0aGUgdmVydGV4IG1lc2gg
ZGltZW5zaW9ucyBhcmUgc3BlY2lmaWVkIGluIGNvbHVtbiwgcm93IG9yZGVyLjwvdGl0bGU+Ci0g
ICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgY2hlY2tib2FyZCB3
aXRoIDIgY29sdW1ucyBhbmQgNCByb3dzIG9mIGJsYWNrIGFuZCBncmVlbiBzcXVhcmVzLiAtLT4K
LSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVy
cmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLSAgICAgICAgCi0g
ICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBXZSBu
ZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIHNoYWRlcnMgZG93bmxvYWQuCi0gICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxl
PgotICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwotICAg
ICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgIGhlaWdodDogMjAwcHg7Ci0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4v
cmVzb3VyY2VzL2NoZWNrZXJib2FyZC52cykgbWl4KHVybCguLi9yZXNvdXJjZXMvdmFyeWluZy1t
aXgtY29sb3IuZnMpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDIgNCBkZXRhY2hlZCk7Ci0gICAgfQot
ICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRp
diBpZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRp
bmdzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1taXgtYmluZGluZ3MtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA4N2RjZTRkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251
bGwKQEAgLTEsMTUgKzAsMCBAQAotVGVzdCBtaXgoKSBmdW5jdGlvbiBKUyBiaW5kaW5ncy4KLQot
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MganNXcmFwcGVyQ2xhc3MobWl4RnVuY3Rp
b24pIGlzICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyht
aXhGdW5jdGlvbi5fX3Byb3RvX18pIGlzICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlUHJvdG90
eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhtaXhGdW5jdGlvbi5jb25zdHJ1Y3RvcikgaXMgJ1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWVDb25zdHJ1Y3RvcicKLVBBU1MgbWl4RnVuY3Rpb25Db250
ZW50IGlzICJtaXgodXJsKGNvbG9yLW9mZnNldC5mcykpIgotUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTYxNWM0MS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRpbmdz
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJM
SUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRpbmdz
LmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUt
YWNjZXNzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItbm8tZWxlbWVudC10ZXh0dXJlLWFjY2Vzcy1leHBlY3RlZC5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZDg0MDQ4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUt
YWNjZXNzLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyNiArMCwwIEBACi08IWRv
Y3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgYW4gYXV0
aG9yJ3Mgc2hhZGVyIGNvZGUgY2Fubm90IHNhbXBsZSBhIHNoYWRlZCBlbGVtZW50J3MgdGV4dHVy
ZS48L3RpdGxlPgotICAgIDwhLS0gCi0gICAgICAgIFRoaXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxl
IGZvciB0aGUgdGVzdC4KLSAgICAgICAgSWYgdGhlIHRlc3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNl
ZSA2IHZlcnRpY2FsbHktc3RhY2tlZCBncmVlbiBib3hlcy4KLSAgICAtLT4KLSAgICA8c3R5bGU+
Ci0gICAgZGl2IHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0g
ICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgIG1hcmdp
bjogMTBweDsKLSAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXY+
PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+
Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5v
LWVsZW1lbnQtdGV4dHVyZS1hY2Nlc3MuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUtYWNjZXNzLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVhODQ5MzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vLWVsZW1lbnQtdGV4dHVyZS1h
Y2Nlc3MuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ4ICswLDAgQEAKLTwhZG9jdHlwZSBodG1s
PgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBhbiBhdXRob3IncyBzaGFk
ZXIgY29kZSBjYW5ub3Qgc2FtcGxlIGEgc2hhZGVkIGVsZW1lbnQncyB0ZXh0dXJlLjwvdGl0bGU+
Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIDYgdmVydGljYWxs
eS1zdGFja2VkIGdyZWVuIGJveGVzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRl
UHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5h
YmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAg
ZGl2IHsKLSAgICAgICAgLyogVGhlIHNoYWRlcnMgd2lsbCB0dXJuIHRoZSBlbGVtZW50J3MgY29s
b3IgZnJvbSBncmVlbiB0byByZWQgaWYgdGhleSBhcmUgYWJsZSB0byBzYW1wbGUgaXRzIHRleHR1
cmUuICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAg
ICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEw
cHg7Ci0gICAgfQotICAgIC5zYW1wbGUtdS10ZXh0dXJlIHsKLSAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRleC1jb29yZC52cycpIHVybCgnLi4v
cmVzb3VyY2VzL3NhbXBsZS11LXRleHR1cmUuZnMnKSk7Ci0gICAgfQotICAgIC5zYW1wbGUtdS10
ZXh0dXJlLW1peCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvc2FtcGxlLXUt
dGV4dHVyZS1taXguZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLnNhbXBs
ZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSB1cmwoJy4uL3Jlc291cmNl
cy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUuZnMnKSk7ICAKLSAgICB9Ci0gICAgLnNh
bXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXggewotICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXguZnMnKSBub3Jt
YWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLnNhbXBsZS1kZWZpbmVkLWNzcy11LXRleHR1
cmUgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bh
c3MtdGV4LWNvb3JkLnZzJykgdXJsKCcuLi9yZXNvdXJjZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUt
dGV4dHVyZS5mcycpKTsgIAotICAgIH0KLSAgICAuc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVy
ZS1taXggewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2Vz
L3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL3NhbXBsZS1kZWZpbmVk
LWNzcy11LXRleHR1cmUtbWl4LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgfQotICAg
IDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdS10ZXh0
dXJlIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdS10ZXh0dXJlLW1peCI+PC9kaXY+
Ci0gICAgPGRpdiBjbGFzcz0ic2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10ZXh0dXJlIj48L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4Ij48L2Rp
dj4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlIj48L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peCI+PC9kaXY+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3ItZXhwZWN0
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xvci1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBlOTYzYTYxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xv
ci1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotPCFET0NUWVBF
IEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCB0aGF0IGJs
ZW5kcyB0aGUgc291cmNlIGFuZCB0aGUgYmFja2Ryb3Agd2l0aCB0aGUgY29sb3IgYmxlbmQgbW9k
ZS48L3RpdGxlPgotICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgIC8qIFRoZXNl
IGFyZSBleGFjdGx5IHRoZSBjb2xvciB2YWx1ZXMgd2UgZXhwZWN0LiBTb21lIHBsYXRmb3JtcyBt
YXkgaGF2ZSBzbGlnaHRseSBkaWZmZXJlbnQKLSAgICAgICAgICAgY29sb3IgcmVzdWx0LiAqLwot
ICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDEwOCwgMTU3LCAyNTUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtc29saWQgewotICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2NywgMTkyLCAyNDIpOwotICAgICAgICAgICAg
d2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAg
ICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2
OSwgMTQyLCAxNjYpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVp
Z2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIwNSwgMTkyLCAyMDQpOwotICAgICAgICAgICAgd2lk
dGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwv
c3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJzb2xpZC1zb2xpZCI+PC9kaXY+
Ci0gICAgPGRpdiBpZD0iYWxwaGEtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9InNvbGlkLWFs
cGhhIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1hbHBoYSI+PC9kaXY+Ci08L2JvZHk+Ci08
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3IuaHRtbCBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9k
ZS1jb2xvci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYzM3MDQwLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xvci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTI5
ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAg
PHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGgg
dGhlIGNvbG9yIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdM
RW5hYmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGUgdHlw
ZT0idGV4dC9jc3MiPgotICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Ig
c291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsKLSAgICAgICAgfQotICAg
ICAgICAjYWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5
MCUsIDUwJSwgMzAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAg
ICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9u
ZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Igc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsKLSAgICAgICAgfQotICAgICAgICAjc29saWQt
YWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUp
OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsK
LSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNv
dXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Igc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAu
NCAwLjggMC41KTsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwgMzAlLCAwLjUpOwotICAgICAgICAg
ICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAg
IC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNv
bG9yLmZzJykgY29sb3Igc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41KTsK
LSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBUaGUg
Zm9sbG93aW5nIHByb29mIGFwcGxpZXMgdG8gdGhlIGZpcnN0IGNhc2UgKCNzb2xpZC1zb2xpZCkg
d2hlcmUgYm90aCB0aGUgYmFja2Ryb3AgYW5kIHRoZQotICAgIHNvdXJjZSBhcmUgc29saWQuCi0K
LSAgICBJbiB0aGlzIHRlc3QgdGhlIGZvbGxvd2luZyBjb21iaW5hdGlvbnMgYXJlIGFsc28gdGVz
dGVkOgotICAgICAgICBCYWNrZHJvcCB3aXRoIDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc29saWQg
c291cmNlCi0gICAgICAgIFNvbGlkIGJhY2tkcm9wIGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0aCAw
LjUgYWxwaGEKLSAgICAgICAgQmFja2Ryb3Agd2l0aCAwLjUgYmxlbmRlZCB3aXRoIHNvdXJjZSB3
aXRoIDAuNSBhbHBoYQotICAgIFRoZSB1bmRlcmxheWluZyBwcm9vZiBvZiB0aGUgYWJvdmUgbWVu
dGlvbmVkIGNhc2VzIGlzIHRoZSBzYW1lOiB0aGUgY29sb3JzIGFyZSBwcmVtdWx0aXBsaWVkCi0g
ICAgYW5kIHRoZW4gYmxlbmRlZCB0b2dldGhlci4KLQotICAgIFRoZSBmaW5hbCBjb2xvciBvZiAj
c29saWQtc29saWQgZGVwZW5kcyBvbiB0aGUgImNvbG9yIiBibGVuZCBtb2RlLCB3aGljaCBpcyBh
IG5vbi1zZXBhcmFibGUKLSAgICBibGVuZCBtb2RlLiBUaGlzIG1lYW5zIHRoYXQgY29sb3JzIGFy
ZSBibGVuZGVkIHRvZ2V0aGVyIGFzIGEgd2hvbGUsIG5vdCBjb21wb25lbnQgYnkgY29tcG9uZW50
LgotCi0gICAgVGhlIGZvcm11bGEgZm9yIHRoaXMgYmxlbmQgbW9kZSBpczoKLSAgICAgICAgQ3Ig
PSBCKENiLCBDcykgPSBTZXRMdW0oQ3MsIEx1bShDYikpCi0KLSAgICBXaXRoOgotICAgICAgICBD
cjogdGhlIHJlc3VsdGluZyBjb2xvcgotICAgICAgICBDYjogdGhlIGJhY2tkcm9wIGNvbG9yLCB3
aGljaCBpcyAjc29saWQtc29saWQgKCJvcmlnaW5hbCBET00gZWxlbWVudCBjb2xvciIpCi0gICAg
ICAgIENzOiB0aGUgc291cmNlIGNvbG9yLCB3aGljaCBpcyBtaXhfY29sb3IKLSAgICAgICAgTHVt
KENiKTogdGhlIGx1bWlub3NpdHkgb2YgQ2IuIEx1bWlub3NpdHkgZm9yIGNvbG9yIEMgaXMgZ2Vu
ZXJhbGx5IGRlZmluZWQgYnkKLSAgICAgICAgICAgTHVtKEMpOiAwLjMgKiBDcmVkICsgMC41OSAq
IENncmVlbiArIDAuMTEgKiBDYmx1ZQotICAgICAgICBTZXRMdW0oQ3MsIEx1bShDYikpOiB0aGUg
ZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAgZCA9IGwgLSBMdW0o
QykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAgQ2dyZWVuID0gQ2dy
ZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAgICAgICAgIHJldHVy
biBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9yIEMgaGFzIHRvIGJl
IGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVuY3Rpb24sIHdoaWNo
IGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xpcENvbG9yKEMpCi0g
ICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENyZWQsIENncmVlbiwg
Q2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAg
ICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkg
KiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAt
IGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVl
IC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4wCi0gICAgICAgICAg
ICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAg
ICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEgLSBsKSkgLyAoeCAt
IGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgSW4gdGhpcyB0ZXN0IGNh
c2U6Ci0gICAgICAgIEx1bShDYikgPSAwLjMgKiAwLjkgKyAwLjU5ICogMC41ICsgMC4xMSAqIDAu
MwotICAgICAgICBMdW0oQ2IpID0gMC4yNyArIDAuMjk1ICsgMC4wMzMKLSAgICAgICAgTHVtKENi
KSA9IDAuNTk4Ci0KLSAgICAgICAgTHVtKENzKSA9IDAuMyAqIDAuMiArIDAuNTkgKiAwLjQgKyAw
LjExICogMC44Ci0gICAgICAgIEx1bShDcykgPSAwLjA2ICsgMC4yMzYgKyAwLjA4OAotICAgICAg
ICBMdW0oQ3MpID0gMC4zODQKLQotICAgICAgICBDciA9IFNldEx1bShDcywgMC41OTgpCi0gICAg
ICAgICAgICBkID0gMC41OTggLSBMdW0oQ3MpCi0gICAgICAgICAgICBkID0gMC41OTggLSAwLjM4
NAotICAgICAgICAgICAgZCA9IDAuMjE0Ci0gICAgICAgICAgICBDcmVkID0gMC4yICsgMC4yMTQg
PSAwLjQxNAotICAgICAgICAgICAgR3JlZW4gPSAwLjQgKyAwLjIxNCA9IDAuNjE0Ci0gICAgICAg
ICAgICBDYmx1ZSA9IDAuOCArIDAuMjE0ID0gMS4wMTQKLSAgICAgICAgICAgIHJldHVybiBDbGlw
Q29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLQotICAgICAgICBDbGlwQ29sb3IoMC40MTQsIDAu
NjE0LCAxLjAxNCkKLSAgICAgICAgICAgIGwgPSAwLjMgKiAwLjQxNCArIDAuNTkgKiAwLjYxNCAr
IDAuMTEgKiAxLjEwMTQgPSAwLjEyNDIgKyAwLjM2MjI2ICsgMC4xMjExNTQgPSAwLjYwNzYxNAot
ICAgICAgICAgICAgbiA9IG1pbigwLjQxNCwgMC42MTQsIDEuMDE0KSA9IDAuNDE0Ci0gICAgICAg
ICAgICB4ID0gbWF4KDAuNDE0LCAwLjYxNCwgMS4wMTQpID0gMS4wMTQKLSAgICAgICAgICAgIHgg
PiAxLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gMC42MDc2MTQgKyAoKCgwLjQxNCAtIDAuNjA3
NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3NjE0KSkgPSAKLSAgICAgICAg
ICAgICAgICAgICAgID0gMC42MDc2MTQgKyAoKC0wLjE5MzYxNCAqIDAuMzkyMzg2KSAvIDAuNDA2
Mzg2KSA9IDAuNjA3NjE0IC0gKDAuMDc1OTcxNDIgLyAwLjQwNjM4NikgPSAwLjYwNzYxNCAtIDAu
MTg2OTQzOTkgPSAwLjQyMDY3MDAxCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gMC42MDc2MTQg
KyAoKCgwLjYxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3
NjE0KSkgPQotICAgICAgICAgICAgICAgICAgICAgICA9IDAuNjA3NjE0ICsgKCgwLjAwMzM4NiAq
IDAuMzkyMzg2KSAvIDAuNDA2Mzg2ID0gMC42MDc2MTQgKyAoMC4wMDEzMjg2MiAvIDAuNDA2Mzg2
KSA9IDAuNjA3NjE0ICsgMC4wMDMyNjkzNSA9IDAuNjEwODgzMzUKLSAgICAgICAgICAgICAgICBD
Ymx1ZSA9IDAuNjA3NjE0ICsgKCgoMS4wMTQgLSAwLjYwNzYxNCkgKiAoMSAtIDAuNjA3NjE0KSkg
LyAoMS4wMTQgLSAwLjYwNzYxNCkgPQotICAgICAgICAgICAgICAgICAgICAgID0gMC42MDc2MTQg
KyAoKDAuNDA2Mzg2ICogMC4zOTIzODYpIC8gMC40MDYzODYpID0gMC42MDc2MTQgKyAoMC4xNTk0
NjAxOCAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4zOTIzODYwMSA9IDEuMAotICAgICAgICAg
ICAgcmV0dXJuICgwLjQyLCAwLjYxLCAxLjApCi0KLSAgICBUaGlzIHZhbHVlIGlzIGVxdWl2YWxl
bnQgdG8gKDEwOCwgMTU3LCAyNTUpLCB3aGljaCBpcyB0aGUgZXhwZWN0ZWQgY29sb3IuCi0gICAg
VGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90aGVyIHBvcnRzIG1pZ2h0IGV4cGVyaWVu
Y2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBpZD0ic29saWQtc29saWQiPjwv
ZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xp
ZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxwaGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5
PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLWh1ZS1leHBlY3RlZC5odG1sIGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJs
ZS1ibGVuZC1tb2RlLWh1ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAzZjE3Zjg3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1odWUtZXhwZWN0ZWQuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwg
bGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJj
ZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGggdGhlIGh1ZSBibGVuZCBtb2RlLjwvdGl0bGU+Ci0gICAg
PHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgLyogVGhlc2UgYXJlIGV4YWN0bHkgdGhl
IGNvbG9yIHZhbHVlcyB3ZSBleHBlY3QuIFNvbWUgcGxhdGZvcm1zIG1heSBoYXZlIHNsaWdodCBk
aWZmZXJlbnQKLSAgICAgICAgICAgY29sb3IgcmVzdWx0LiAqLwotICAgICAgICAjc29saWQtc29s
aWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwOCwgMTU3LCAyNTUpOwot
ICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAg
ICAgICAgfQotICAgICAgICAjYWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogcmdiKDE2NywgMTkyLCAyNDIpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAg
ICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEg
ewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2OSwgMTQyLCAxNjYpOwotICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAg
ICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmdiKDIwNSwgMTkyLCAyMDQpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08
Ym9keT4KLSAgICA8ZGl2IGlkPSJzb2xpZC1zb2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxw
aGEtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9InNvbGlkLWFscGhhIj48L2Rpdj4KLSAgICA8
ZGl2IGlkPSJhbHBoYS1hbHBoYSI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJh
YmxlLWJsZW5kLW1vZGUtaHVlLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtaHVlLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVkMTcxMTguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2Rl
LWh1ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTUxICswLDAgQEAKLTwhRE9DVFlQRSBIVE1M
PgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMg
dGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGggdGhlIGh1ZSBibGVuZCBtb2RlLjwvdGl0
bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICB9
Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI3Nv
bGlkLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5MCUsIDUwJSwg
MzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIGh1ZSBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjIg
MC40IDAuOCAxLjApOwotICAgICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDkwJSwgNTAlLCAzMCUsIDAuNSk7Ci0gICAgICAg
ICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAg
ICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgt
Y29sb3IuZnMnKSBodWUgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsK
LSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgaHVlIHNvdXJj
ZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDAuNSk7Ci0gICAgICAgIH0KLSAgICAgICAg
I2FscGhhLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTAlLCA1
MCUsIDMwJSwgMC41KTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhl
aWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGh1ZSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjIgMC40IDAuOCAwLjUpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4K
LTxib2R5PgotPCEtLQotICAgIFRoZSBmb2xsb3dpbmcgcHJvb2YgYXBwbGllcyB0byB0aGUgZmly
c3QgY2FzZSAoI3NvbGlkLXNvbGlkKSB3aGVyZSBib3RoIHRoZSBiYWNrZHJvcCBhbmQgdGhlCi0g
ICAgc291cmNlIGFyZSBzb2xpZC4KLQotICAgIEluIHRoaXMgdGVzdCB0aGUgZm9sbG93aW5nIGNv
bWJpbmF0aW9ucyBhcmUgYWxzbyB0ZXN0ZWQ6Ci0gICAgICAgIEJhY2tkcm9wIHdpdGggMC41IGFs
cGhhIGJsZW5kZWQgd2l0aCBzb2xpZCBzb3VyY2UKLSAgICAgICAgU29saWQgYmFja2Ryb3AgYmxl
bmRlZCB3aXRoIHNvdXJjZSB3aXRoIDAuNSBhbHBoYQotICAgICAgICBCYWNrZHJvcCB3aXRoIDAu
NSBhbHBoYSBibGVuZGVkIHdpdGggc291cmNlIHdpdGggMC41IGFscGhhCi0gICAgVGhlIHVuZGVy
bHlpbmcgcHJvb2Ygb2YgdGhlIGFib3ZlIG1lbnRpb25lZCBjYXNlcyBpcyB0aGUgc2FtZTogdGhl
IGNvbG9ycyBhcmUgcHJlbXVsdGlwbGllZAotICAgIGFuZCB0aGVuIGJsZW5kZWQgdG9nZXRoZXIu
Ci0KLSAgICBUaGUgZmluYWwgY29sb3Igb2YgI3NvbGlkLXNvbGlkIGRlcGVuZHMgb24gdGhlICJo
dWUiIGJsZW5kIG1vZGUsIHdoaWNoIGlzIGEgbm9uLXNlcGFyYWJsZQotICAgIGJsZW5kIG1vZGUu
IFRoaXMgbWVhbnMgdGhhdCBjb2xvcnMgYXJlIGJsZW5kZWQgdG9nZXRoZXIgYXMgYSB3aG9sZSwg
bm90IGNvbXBvbmVudCBieSBjb21wb25lbnQuCi0KLSAgICBUaGUgZm9ybXVsYSBmb3IgdGhpcyBi
bGVuZCBtb2RlIGlzOgotICAgICAgICBDciA9IEIoQ2IsIENzKSA9IFNldEx1bShTZXRTYXQoQ3Ms
IFNhdChDYikpLCBMdW0oQ2IpKQotCi0gICAgV2l0aDoKLSAgICAgICAgQ3I6IHRoZSByZXN1bHRp
bmcgY29sb3IKLSAgICAgICAgQ2I6IHRoZSBiYWNrZHJvcCBjb2xvciwgd2hpY2ggaXMgI3NvbGlk
LXNvbGlkICgib3JpZ2luYWwgRE9NIGVsZW1lbnQgY29sb3IiKQotICAgICAgICBDczogdGhlIHNv
dXJjZSBjb2xvciwgd2hpY2ggaXMgbWl4X2NvbG9yCi0gICAgICAgIEx1bShDYik6IHRoZSBsdW1p
bm9zaXR5IG9mIENiLiBMdW1pbm9zaXR5IGZvciBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZpbmVk
IGJ5Ci0gICAgICAgICAgIEx1bShDKTogMC4zICogQ3JlZCArIDAuNTkgKiBDZ3JlZW4gKyAwLjEx
ICogQ2JsdWUKLSAgICAgICAgU2F0KENiKTogdGhlIHNhdHVyYXRpb24gb2YgQ2IuIFNhdHVyYXRp
b24gZm9yIGNvbG9yIEMgaXMgZ2VuZXJhbGx5IGRlZmluZWQgYnkKLSAgICAgICAgICAgU2F0KEMp
OiBtYXgoQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkgLSBtaW4oQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkKLSAg
ICAgICBTZXRTYXQoQ3MsIFNhdChDYikpOiB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBzYXR1
cmF0aW9uCi0gICAgICAgU2V0THVtKFNldFNhdChDcywgU2F0KENiKSksIEx1bShDYikpOiB0aGUg
ZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAgZCA9IGwgLSBMdW0o
QykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAgQ2dyZWVuID0gQ2dy
ZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAgICAgICAgIHJldHVy
biBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9yIEMgaGFzIHRvIGJl
IGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVuY3Rpb24sIHdoaWNo
IGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xpcENvbG9yKEMpCi0g
ICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENyZWQsIENncmVlbiwg
Q2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAg
ICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkg
KiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAt
IGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVl
IC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4wCi0gICAgICAgICAg
ICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAg
ICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEgLSBsKSkgLyAoeCAt
IGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgc2F0dXJhdGlvbiBzIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldFNhdChDLCBzKQotICAgICAgICAgICAgaWYoQ21heCA+IENt
aW4pCi0gICAgICAgICAgICAgICAgQ21pZCA9ICgoKENtaWQgLSBDbWluKSAqIHMpIC8gKENtYXgg
LSBDbWluKSkKLSAgICAgICAgICAgICAgICBDbWF4ID0gcwotICAgICAgICAgICAgZWxzZQotICAg
ICAgICAgICAgICAgIENtaWQgPSBDbWF4ID0gMAotICAgICAgICAgICAgQ21pbiA9IDAKLSAgICAg
ICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlzIHRlc3QgY2FzZToKLSAgICAgICAgTHVtKENi
KSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAwLjExICogMC4zCi0gICAgICAgIEx1bShDYikg
PSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAgICBMdW0oQ2IpID0gMC41OTgKLQotICAgICAg
ICBTYXQoQ2IpID0gbWF4KDAuOSwgMC41LCAwLjMpIC0gbWluKDAuOSwgMC41LCAwLjMpCi0gICAg
ICAgIFNhdChDYikgPSAwLjkgLSAwLjMKLSAgICAgICAgU2F0KENiKSA9IDAuNgotCi0gICAgICAg
IEZvciB0aGUgc2FrZSBvZiBicmV2aXR5IHRoZSByZXN1bHQgb2YgdGhpcyBjb21wdXRhdGlvbiBp
cyBjYWxsZWQgQ3QKLSAgICAgICAgQ3QgPSBTZXRTYXQoQ3MsIFNhdChDYikpCi0gICAgICAgICAg
ICAwLjggPiAwLjIKLSAgICAgICAgICAgICAgICBDbWlkID0gKCgoMC40IC0gMC4yKSAqIDAuNikg
LyAoMC44IC0gMC4yKSkgPSAoMC4yICogMC42KSAvIDAuNiA9IDAuMgotICAgICAgICAgICAgICAg
IENtYXggPSAwLjYKLSAgICAgICAgICAgIENtaW4gPSAwCi0gICAgICAgICAgICByZXR1cm4gKDAs
IDAuMiwgMC42KQotCi0gICAgICAgIENyID0gU2V0THVtKEN0LCBMdW0oQ2IpKQotICAgICAgICAg
ICAgZCA9IDAuNTk4IC0gKDAuMyAqIDAuMCArIDAuNTkgKiAwLjIgKyAwLjExICogMC42KSA9IDAu
MTE4ICsgMC4wNjYgPSAwLjE4NAotICAgICAgICAgICAgZCA9IDAuNTk4IC0gKDAuMTE4ICsgMC4w
NjYpID0gMC41OTggLSAwLjE4NAotICAgICAgICAgICAgZCA9IDAuNDE0Ci0gICAgICAgICAgICBD
cmVkID0gMC4wICsgMC40MTQgPSAwLjQxNAotICAgICAgICAgICAgR3JlZW4gPSAwLjIgKyAwLjQx
NCA9IDAuNjE0Ci0gICAgICAgICAgICBDYmx1ZSA9IDAuNiArIDAuNDE0ID0gMS4wMTQKLSAgICAg
ICAgICAgIHJldHVybiBDbGlwQ29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLQotICAgICAgICBD
bGlwQ29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLSAgICAgICAgICAgIGwgPSAwLjMgKiAwLjQx
NCArIDAuNTkgKiAwLjYxNCArIDAuMTEgKiAxLjEwMTQgPSAwLjEyNDIgKyAwLjM2MjI2ICsgMC4x
MjExNTQgPSAwLjYwNzYxNAotICAgICAgICAgICAgbiA9IG1pbigwLjQxNCwgMC42MTQsIDEuMDE0
KSA9IDAuNDE0Ci0gICAgICAgICAgICB4ID0gbWF4KDAuNDE0LCAwLjYxNCwgMS4wMTQpID0gMS4w
MTQKLSAgICAgICAgICAgIHggPiAxLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gMC42MDc2MTQg
KyAoKCgwLjQxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3
NjE0KSkgPSAKLSAgICAgICAgICAgICAgICAgICAgID0gMC42MDc2MTQgKyAoKC0wLjE5MzYxNCAq
IDAuMzkyMzg2KSAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0IC0gKDAuMDc1OTcxNDIgLyAwLjQwNjM4
NikgPSAwLjYwNzYxNCAtIDAuMTg2OTQzOTkgPSAwLjQyMDY3MDAxCi0gICAgICAgICAgICAgICAg
Q2dyZWVuID0gMC42MDc2MTQgKyAoKCgwLjYxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQp
KSAvICgxLjAxNCAtIDAuNjA3NjE0KSkgPQotICAgICAgICAgICAgICAgICAgICAgICA9IDAuNjA3
NjE0ICsgKCgwLjAwMzM4NiAqIDAuMzkyMzg2KSAvIDAuNDA2Mzg2ID0gMC42MDc2MTQgKyAoMC4w
MDEzMjg2MiAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4wMDMyNjkzNSA9IDAuNjEwODgzMzUK
LSAgICAgICAgICAgICAgICBDYmx1ZSA9IDAuNjA3NjE0ICsgKCgoMS4wMTQgLSAwLjYwNzYxNCkg
KiAoMSAtIDAuNjA3NjE0KSkgLyAoMS4wMTQgLSAwLjYwNzYxNCkgPQotICAgICAgICAgICAgICAg
ICAgICAgID0gMC42MDc2MTQgKyAoKDAuNDA2Mzg2ICogMC4zOTIzODYpIC8gMC40MDYzODYpID0g
MC42MDc2MTQgKyAoMC4xNTk0NjAxOCAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4zOTIzODYw
MSA9IDEuMAotICAgICAgICAgICAgcmV0dXJuICgwLjQyLCAwLjYxLCAxLjApCi0KLSAgICBUaGlz
IHZhbHVlIGlzIGVxdWl2YWxlbnQgdG8gKDEwOCwgMTU3LCAyNTUpLCB3aGljaCBpcyB0aGUgZXhw
ZWN0ZWQgY29sb3IuCi0gICAgVGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90aGVyIHBv
cnRzIG1pZ2h0IGV4cGVyaWVuY2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBp
ZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48L2Rpdj4K
LSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxwaGEtYWxw
aGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLWx1
bWlub3NpdHktZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1pbm9zaXR5LWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkwOWFhYzMuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFy
YWJsZS1ibGVuZC1tb2RlLWx1bWlub3NpdHktZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDM2ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+
Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9w
IHdpdGggdGhlIGNvbG9yIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c3R5bGUgdHlwZT0idGV4
dC9jc3MiPgotICAgICAgICAvKiBUaGVyZSBhcmUgZXhhY3RseSB0aGUgY29sb3IgdmFsdWVzIHdl
IGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xpZ2h0bHkgZGlmZmVyZW50Ci0gICAg
ICAgICAgIGNvbG9yIHJlc3VsdC4gKi8KLSAgICAgICAgI3NvbGlkLXNvbGlkIHsKLSAgICAgICAg
ICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5OCwgMzMsIDApOwotICAgICAgICAgICAgd2lkdGg6
IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAj
YWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4NCwgMTcy
LCAxODQpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogcmdiKDIwMywgMTAxLCA0OSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAw
cHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICB9Ci0gICAgICAgICNhbHBo
YS1hbHBoYSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjEzLCAxODIsIDE3
NSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9
InNvbGlkLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1zb2xpZCI+PC9kaXY+Ci0g
ICAgPGRpdiBpZD0ic29saWQtYWxwaGEiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLWFscGhh
Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1p
bm9zaXR5Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtbHVtaW5vc2l0eS5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA1ZTk3YzAwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1p
bm9zaXR5Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMjggKzAsMCBAQAotPCFET0NUWVBFIEhU
TUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCB0aGF0IGJsZW5k
cyB0aGUgc291cmNlIGFuZCB0aGUgYmFja2Ryb3Agd2l0aCB0aGUgbHVtaW5vc2l0eSBibGVuZCBt
b2RlLjwvdGl0bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAg
ICAgICAgI3NvbGlkLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5
MCUsIDUwJSwgMzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhl
aWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGx1bWlub3NpdHkgc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4xIDAuMiAwLjQgMS4wKTsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEt
c29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwgMzAl
LCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbHVtaW5vc2l0eSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjIgMC40IDAuOCAxLjApOwotICAgICAgICB9Ci0gICAgICAgICNzb2xpZC1hbHBoYSB7
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoOTAlLCA1MCUsIDMwJSk7Ci0gICAg
ICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9t
aXgtY29sb3IuZnMnKSBsdW1pbm9zaXR5IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQg
MC44IDAuNSk7Ci0gICAgICAgIH0KLSAgICAgICAgI2FscGhhLWFscGhhIHsKLSAgICAgICAgICAg
IGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTAlLCA1MCUsIDMwJSwgMC41KTsKLSAgICAgICAgICAg
IHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xv
ci5mcycpIGx1bWlub3NpdHkgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41
KTsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBU
aGUgZm9sbG93aW5nIHByb29mIGFwcGxpZXMgdG8gdGhlIGZpcnN0IGNhc2UgKCNzb2xpZC1zb2xp
ZCkgd2hlcmUgYm90aCB0aGUgYmFja2Ryb3AgYW5kIHRoZQotICAgIHNvdXJjZSBhcmUgc29saWQu
Ci0KLSAgICBJbiB0aGlzIHRlc3QgdGhlIGZvbGxvd2luZyBjb21iaW5hdGlvbnMgYXJlIGFsc28g
dGVzdGVkOgotICAgICAgICBCYWNrZHJvcCB3aXRoIDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc29s
aWQgc291cmNlCi0gICAgICAgIFNvbGlkIGJhY2tkcm9wIGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0
aCAwLjUgYWxwaGEKLSAgICAgICAgQmFja2Ryb3Agd2l0aCAwLjUgYmxlbmRlZCB3aXRoIHNvdXJj
ZSB3aXRoIDAuNSBhbHBoYQotICAgIFRoZSB1bmRlcmxheWluZyBwcm9vZiBvZiB0aGUgYWJvdmUg
bWVudGlvbmVkIGNhc2VzIGlzIHRoZSBzYW1lOiB0aGUgY29sb3JzIGFyZSBwcmVtdWx0aXBsaWVk
Ci0gICAgYW5kIHRoZW4gYmxlbmRlZCB0b2dldGhlci4KLQotICAgIFRoZSBmaW5hbCBjb2xvciBv
ZiAjc29saWQtc29saWQgZGVwZW5kcyBvbiB0aGUgImx1bWlub3NpdHkiIGJsZW5kIG1vZGUsIHdo
aWNoIGlzIGEgbm9uLXNlcGFyYWJsZQotICAgIGJsZW5kIG1vZGUuIFRoaXMgbWVhbnMgdGhhdCBj
b2xvcnMgYXJlIGJsZW5kZWQgdG9nZXRoZXIgYXMgYSB3aG9sZSwgbm90IGNvbXBvbmVudCBieSBj
b21wb25lbnQuCi0KLSAgICBUaGUgZm9ybXVsYSBmb3IgdGhpcyBibGVuZCBtb2RlIGlzOgotICAg
ICAgICBDciA9IEIoQ2IsIENzKSA9IFNldEx1bShDYiwgTHVtKENzKSkKLQotICAgIFdpdGg6Ci0g
ICAgICAgIENyOiB0aGUgcmVzdWx0aW5nIGNvbG9yCi0gICAgICAgIENiOiB0aGUgYmFja2Ryb3Ag
Y29sb3IsIHdoaWNoIGlzICNzb2xpZC1zb2xpZCAoIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9y
IikKLSAgICAgICAgQ3M6IHRoZSBzb3VyY2UgY29sb3IsIHdoaWNoIGlzIG1peF9jb2xvcgotICAg
ICAgICBMdW0oQ3MpOiB0aGUgbHVtaW5vc2l0eSBvZiBDcy4gTHVtaW5vc2l0eSBmb3IgY29sb3Ig
QyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBieQotICAgICAgICAgICBMdW0oQyk6IDAuMyAqIENyZWQg
KyAwLjU5ICogQ2dyZWVuICsgMC4xMSAqIENibHVlCi0gICAgICAgIFNldEx1bShDYiwgTHVtKENz
KSk6IHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdGhlIGx1bWlub3NpdHkuCi0KLSAgICBUaGUgZnVu
Y3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5IGwgb24gdGhlIGNvbG9yIEMgaXMgZ2VuZXJh
bGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgU2V0THVtKEMsIGwpCi0gICAgICAgICAgICBkID0g
bCAtIEx1bShDKQotICAgICAgICAgICAgQ3JlZCA9IENyZWQgKyBkCi0gICAgICAgICAgICBDZ3Jl
ZW4gPSBDZ3JlZW4gKyBkCi0gICAgICAgICAgICBDYmx1ZSA9IENibHVlICsgZAotICAgICAgICAg
ICAgcmV0dXJuIENsaXBDb2xvcihDKQotCi0gICAgQXQgdGhpcyBwb2ludCB0aGUgY29sb3IgQyBo
YXMgdG8gYmUgY2xpcHBlZCBiZXR3ZWVuIFswLi4xXSAgYnkgdGhlIENsaXBDb2xvciBmdW5jdGlv
biwgd2hpY2ggaXMKLSAgICBnZW5lcmFsbHkgZGVmaW5lZCBieToKLQotICAgICAgICBDbGlwQ29s
b3IoQykKLSAgICAgICAgICAgIGwgPSBMdW0oQykKLSAgICAgICAgICAgIG4gPSBtaW4oQ3JlZCwg
Q2dyZWVuLCBDYmx1ZSkKLSAgICAgICAgICAgIHggPSBtYXgoQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkK
LSAgICAgICAgICAgIGlmIG4gPCAwLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gbCArICgoKENy
ZWQgLSBsKSAqIGwpIC8gKGwgLSBuKSkKLSAgICAgICAgICAgICAgICBDZ3JlZW4gPSBsICsgKCgo
Q2dyZWVuIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2JsdWUgPSBsICsg
KCgoQ2JsdWUgLSBsKSAqIGwpIC8gKGwgLSBuKSkKLSAgICAgICAgICAgIGlmIHggPiAxLjAKLSAg
ICAgICAgICAgICAgICBDcmVkID0gbCArICgoKENyZWQgLSBsKSAqICgxIC0gbCkpIC8gKHggLSBs
KSkKLSAgICAgICAgICAgICAgICBDZ3JlZW4gPSBsICsgKCgoQ2dyZWVuIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICAgICAgQ2JsdWUgPSBsICsgKCgoQ2JsdWUgLSBsKSAq
ICgxIC0gbCkpIC8gKHggLSBsKSkKLSAgICAgICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlz
IHRlc3QgY2FzZToKLSAgICAgICAgTHVtKENiKSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAw
LjExICogMC4zCi0gICAgICAgIEx1bShDYikgPSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAg
ICBMdW0oQ2IpID0gMC41OTgKLQotICAgICAgICBMdW0oQ3MpID0gMC4zICogMC4xICsgMC41OSAq
IDAuMiArIDAuMTEgKiAwLjQKLSAgICAgICAgTHVtKENzKSA9IDAuMDMgKyAwLjExOCArIDAuMDQ0
Ci0gICAgICAgIEx1bShDcykgPSAwLjE5MgotCi0gICBDciA9IFNldEx1bShDYiwgMC4xOTIpCi0g
ICAgICAgIGQgPSAwLjE5MiAtIDAuNTk4Ci0gICAgICAgIGQgPSAwLjQwNgotICAgICAgICBDcmVk
ID0gMC45IC0gMC40MDYgPSAwLjQ5NAotICAgICAgICBDZ3JlZW4gPSAwLjUgLSAwLjQwNiA9IDAu
MDk0Ci0gICAgICAgIENibHVlID0gMC4zIC0gMC40MDYgPSAtMC4xMDYKLSAgICAgICAgcmV0dXJu
IENsaXBDb2xvcigwLjQ5NCwgMC4wOTQsIC0wLjEwNikKLQotICAgIENsaXBDb2xvcigwLjQ5NCwg
MC4wOTQsIC0wLjEwNikKLSAgICAgICAgbCA9IDAuNDk0ICogMC4zICsgMC4wOTQgKiAwLjU5IC0g
MC4xMDYgKiAwLjExID0gMC4xNDgyICsgMC4wNTU0NiAtIDAuMDExNjYgPSAwLjE5MgotICAgICAg
ICBuID0gbWluKDAuNDk0LCAwLjA5NCwgLTAuMTA2KSA9IC0wLjEwNgotICAgICAgICB4ID0gbWF4
KDAuNDk0LCAwLjA5NCwgLTAuMTA2KSA9IDAuNDk0Ci0gICAgICAgIG4gPCAwLjAKLSAgICAgICAg
ICAgIENyZWQgPSAwLjE5MiArICgoKDAuNDk0IC0gMC4xOTIpICogMC4xOTIpIC8gKDAuMTkyICsg
MC4xMDYpKSA9Ci0gICAgICAgICAgICAgICAgID0gMC4xOTIgKyAoMC4zMDIgKiAwLjE5MikgLyAw
LjI5OCA9IDAuMTkyICsgKDAuMDU3OTg0IC8gMC4yOTgpID0gMC4xOTIgKyAwLjE5NDU3NzE4ID0g
MC4zODY1NzcxOAotICAgICAgICAgICAgQ2dyZWVuID0gMC4xOTIgKyAoKCgwLjA5NCAtIDAuMTky
KSAqIDAuMTkyKSAvICgwLjE5MiArIDAuMTA2KSkgPQotICAgICAgICAgICAgICAgICAgID0gMC4x
OTIgKyAoLTAuMDk4ICogMC4xOTIpIC8gMC4yOTggPSAwLjE5MiAtICgwLjAxODgxNiAvIDAuMjk4
KSA9IDAuMTkyIC0gMC4wNjMxNDA5NCA9IDAuMTI4ODU5MDYKLSAgICAgICAgICAgIENibHVlID0g
MC4xOTIgKyAoKCgtMC4xMDYgLSAwLjE5MikgKiAwLjE5MikgLyAoMC4xOTIgKyAwLjEwNikpID0K
LSAgICAgICAgICAgICAgICAgID0gMC4xOTIgKyAoLTAuMjk4ICogMC4xOTIpIC8gMC4yOTggPSAw
LjE5MiAtIDAuMTkyID0gMC4wCi0gICAgICAgIHJldHVybiAoMC4zODY1NzcxOCwgMC4xMjg4NTkw
NiwgMC4wMCkKLQotICAgIFRoaXMgdmFsdWUgaXMgZXF1aXZhbGVudCB0byAoOTgsIDMzLCAwKSwg
d2hpY2ggaXMgdGhlIGV4cGVjdGVkIGNvbG9yLgotICAgIFRoaXMgaXMgdGhlIGV4YWN0IGNvbG9y
IHZhbHVlLCBvdGhlciBwb3J0cyBtaWdodCBleHBlcmllbmNlIHNsaWdodCBkaWZmZXJlbmNlcy4K
LS0tPgotICAgIDxkaXYgaWQ9InNvbGlkLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBo
YS1zb2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0ic29saWQtYWxwaGEiPjwvZGl2PgotICAgIDxk
aXYgaWQ9ImFscGhhLWFscGhhIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFi
bGUtYmxlbmQtbW9kZS1zYXR1cmF0aW9uLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtc2F0
dXJhdGlvbi1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMWQ0
OWM4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1zYXR1cmF0aW9uLWV4cGVjdGVkLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxh
bmc9ImVuIj4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgYmxlbmRzIHRoZSBzb3VyY2Ug
YW5kIHRoZSBiYWNrZHJvcCB3aXRoIHRoZSBzYXR1cmF0aW9uIGJsZW5kIG1vZGUuPC90aXRsZT4K
LSAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAvKiBUaGVzZSBhcmUgZXhhY3Rs
eSB0aGUgY29sb3IgdmFsdWVzIHdlIGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xp
Z2h0IGRpZmZlcmVudAotICAgICAgICAgICBjb2xvciByZXN1bHQuICovCi0gICAgICAgICNzb2xp
ZC1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTkxLCAxNDEsIDEx
NSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiByZ2IoMTk4LCAxODUsIDE5OCk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICB9Ci0gICAgICAgICNzb2xpZC1h
bHBoYSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjMwLCAxMjgsIDc2KTsK
LSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0g
ICAgICAgIH0KLSAgICAgICAgI2FscGhhLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigyMjAsIDE4OSwgMTgyKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFk
PgotPGJvZHk+Ci0gICAgPGRpdiBpZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9
ImFscGhhLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0g
ICAgPGRpdiBpZD0iYWxwaGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNl
cGFyYWJsZS1ibGVuZC1tb2RlLXNhdHVyYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1zYXR1cmF0
aW9uLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFjMzI4YmIuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNl
cGFyYWJsZS1ibGVuZC1tb2RlLXNhdHVyYXRpb24uaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEz
NyArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9ImVuIj4KLTxoZWFkPgotICAg
IDx0aXRsZT5UZXN0IHRoYXQgYmxlbmRzIHRoZSBzb3VyY2UgYW5kIHRoZSBiYWNrZHJvcCB3aXRo
IHRoZSBzYXR1cmF0aW9uIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5
bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6
IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykg
c2F0dXJhdGlvbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjEgMC4yIDAuNCAxLjApOwotICAg
ICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2JhKDkwJSwgNTAlLCAzMCUsIDAuNSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBzYXR1cmF0
aW9uIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDEuMCk7Ci0gICAgICAgIH0K
LSAgICAgICAgI3NvbGlkLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJn
Yig5MCUsIDUwJSwgMzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAg
IGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIHNhdHVyYXRpb24gc291cmNlLWF0
b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41KTsKLSAgICAgICAgfQotICAgICAgICAjYWxw
aGEtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwg
MzAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0
OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgc2F0dXJhdGlvbiBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjIgMC40IDAuOCAwLjUpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVh
ZD4KLTxib2R5PgotPCEtLQotICAgIFRoZSBmb2xsb3dpbmcgcHJvb2YgYXBwbGllcyB0byB0aGUg
Zmlyc3QgY2FzZSAoI3NvbGlkLXNvbGlkKSB3aGVyZSBib3RoIHRoZSBiYWNrZHJvcCBhbmQgdGhl
Ci0gICAgc291cmNlIGFyZSBzb2xpZC4KLQotICAgIEluIHRoaXMgdGVzdCB0aGUgZm9sbG93aW5n
IGNvbWJpbmF0aW9ucyBhcmUgYWxzbyB0ZXN0ZWQ6Ci0gICAgICAgIEJhY2tkcm9wIHdpdGggMC41
IGFscGhhIGJsZW5kZWQgd2l0aCBzb2xpZCBzb3VyY2UKLSAgICAgICAgU29saWQgYmFja2Ryb3Ag
YmxlbmRlZCB3aXRoIHNvdXJjZSB3aXRoIDAuNSBhbHBoYQotICAgICAgICBCYWNrZHJvcCB3aXRo
IDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc291cmNlIHdpdGggMC41IGFscGhhCi0gICAgVGhlIHVu
ZGVybHlpbmcgcHJvb2Ygb2YgdGhlIGFib3ZlIG1lbnRpb25lZCBjYXNlcyBpcyB0aGUgc2FtZTog
dGhlIGNvbG9ycyBhcmUgcHJlbXVsdGlwbGllZAotICAgIGFuZCB0aGVuIGJsZW5kZWQgdG9nZXRo
ZXIuCi0KLSAgICBUaGUgZmluYWwgY29sb3Igb2YgI3NvbGlkLXNvbGlkIGRlcGVuZHMgb24gdGhl
ICJzYXR1cmF0aW9uIiBibGVuZCBtb2RlLCB3aGljaCBpcyBhIG5vbi1zZXBhcmFibGUKLSAgICBi
bGVuZCBtb2RlLiBUaGlzIG1lYW5zIHRoYXQgY29sb3JzIGFyZSBibGVuZGVkIHRvZ2V0aGVyIGFz
IGEgd2hvbGUsIG5vdCBjb21wb25lbnQgYnkgY29tcG9uZW50LgotCi0gICAgVGhlIGZvcm11bGEg
Zm9yIHRoaXMgYmxlbmQgbW9kZSBpczoKLSAgICAgICAgQ3IgPSBCKENiLCBDcykgPSBTZXRMdW0o
U2V0U2F0KENiLCBTYXQoQ3MpKSwgTHVtKENiKSkKLQotICAgIFdpdGg6Ci0gICAgICAgIENyOiB0
aGUgcmVzdWx0aW5nIGNvbG9yCi0gICAgICAgIENiOiB0aGUgYmFja2Ryb3AgY29sb3IsIHdoaWNo
IGlzICNzb2xpZC1zb2xpZCAoIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9yIikKLSAgICAgICAg
Q3M6IHRoZSBzb3VyY2UgY29sb3IsIHdoaWNoIGlzIG1peF9jb2xvcgotICAgICAgICBTYXQoQ2Ip
OiB0aGUgc2F0dXJhdGlvbiBvZiBDYi4gU2F0dXJhdGlvbiBmb3IgY29sb3IgQyBpcyBnZW5lcmFs
bHkgZGVmaW5lZCBieQotICAgICAgICAgICBTYXQoQyk6IG1heChDcmVkLCBDZ3JlZW4sIENibHVl
KSAtIG1pbihDcmVkLCBDZ3JlZW4sIENibHVlKQotICAgICAgICBMdW0oQ3MpOiB0aGUgbHVtaW5v
c2l0eSBvZiBDcy4gTHVtaW5vc2l0eSBmb3IgY29sb3IgQyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBi
eQotICAgICAgICAgICBMdW0oQyk6IDAuMyAqIENyZWQgKyAwLjU5ICogQ2dyZWVuICsgMC4xMSAq
IENibHVlCi0gICAgICAgIFNldFNhdChDYiwgU2F0KENzKSk6IHRoZSBmdW5jdGlvbiB0aGF0IHNl
dHMgdGhlIHNhdHVyYXRpb24KLSAgICAgICAgU2V0THVtKFNldFNhdChDYiwgU2F0KENzKSksIEx1
bShDYikpOiB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhl
IGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdl
bmVyYWxseSBkZWZpbmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAg
ZCA9IGwgLSBMdW0oQykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAg
Q2dyZWVuID0gQ2dyZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAg
ICAgICAgIHJldHVybiBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9y
IEMgaGFzIHRvIGJlIGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVu
Y3Rpb24sIHdoaWNoIGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xp
cENvbG9yKEMpCi0gICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENy
ZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2Js
dWUpCi0gICAgICAgICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAo
KChDcmVkIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCAr
ICgoKENncmVlbiAtIGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0g
bCArICgoKENibHVlIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4w
Ci0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4
IC0gbCkpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEg
LSBsKSkgLyAoeCAtIGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0g
bCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgVGhl
IGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgc2F0dXJhdGlvbiBzIG9uIHRoZSBjb2xvciBDIGlzIGdl
bmVyYWxseSBkZWZpbmVkIGJ5OgotCi0gICAgICAgIFNldFNhdChDLCBzKQotICAgICAgICAgICAg
aWYoQ21heCA+IENtaW4pCi0gICAgICAgICAgICAgICAgQ21pZCA9ICgoKENtaWQgLSBDbWluKSAq
IHMpIC8gKENtYXggLSBDbWluKSkKLSAgICAgICAgICAgICAgICBDbWF4ID0gcwotICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgICAgIENtaWQgPSBDbWF4ID0gMAotICAgICAgICAgICAgQ21p
biA9IDAKLSAgICAgICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlzIHRlc3QgY2FzZToKLSAg
ICAgICAgTHVtKENiKSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAwLjExICogMC4zCi0gICAg
ICAgIEx1bShDYikgPSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAgICBMdW0oQ2IpID0gMC41
OTgKLQotICAgICAgICBTYXQoQ3MpID0gbWF4KDAuMSwgMC4yLCAwLjQpIC0gbWluKDAuMSwgMC4y
LCAwLjQpCi0gICAgICAgIFNhdChDcykgPSAwLjQgLSAwLjEKLSAgICAgICAgU2F0KENzKSA9IDAu
MwotCi0gICAgICAgIEZvciB0aGUgc2FrZSBvZiBicmV2aXR5IHRoZSByZXN1bHQgb2YgdGhpcyBj
b21wdXRhdGlvbiBpcyBjYWxsZWQgQ3QKLSAgICAgICAgQ3QgPSBTZXRTYXQoQ2IsIFNhdChDcykp
Ci0gICAgICAgICAgICAwLjkgPiAwLjMKLSAgICAgICAgICAgICAgICBDbWlkID0gKCgoMC41IC0g
MC4zKSAqIDAuMykgLyAoMC45IC0gMC4zKSA9IDAuMiAqIDAuMyAvIDAuNiA9IDAuMDYgLyAwLjYg
PSAwLjEwCi0gICAgICAgICAgICAgICAgQ21heCA9IDAuMwotICAgICAgICAgICAgQ21pbiA9IDAK
LSAgICAgICAgICAgIHJldHVybiAoMC4zLCAwLjEwLCAwLjApCi0KLSAgICBDciA9IFNldEx1bShD
dCwgMC41OTgpCi0gICAgICAgIGQgPSAwLjU5OCAtICgwLjMgKiAwLjMgKyAwLjU5ICogMC4xMCAr
IDAuMTEgKiAwLjApID0gMC41OTggLSAoMC4wOSArIDAuMDU5KSA9IDAuNTk4IC0gMC4xNDkKLSAg
ICAgICAgZCA9IDAuNDQ5Ci0gICAgICAgIENyZWQgPSAwLjMgKyAwLjQ0OSA9IDAuNzQ5Ci0gICAg
ICAgIENncmVlbiA9IDAuMTAgKyAwLjQ0OSA9IDAuNTQ5Ci0gICAgICAgIENibHVlID0gMC4wICsg
MC40NDkgPSAwLjQ0OQotICAgICAgICByZXR1cm4gKDAuNzQ5LCAwLjU0OSwgMC40NDkpCi0KLSAg
ICBUaGlzIHZhbHVlIGlzIGVxdWl2YWxlbnQgdG8gKDE5MSwgMTQwLCAxMTUpLCB3aGljaCBpcyB0
aGUgZXhwZWN0ZWQgY29sb3IuCi0gICAgVGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90
aGVyIHBvcnRzIG1pZ2h0IGV4cGVyaWVuY2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAg
PGRpdiBpZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48
L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxw
aGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1dGVkLXN0
eWxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDUwZGEwYTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1dGVkLXN0eWxlLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDUwOCArMCwwIEBACi1UZXN0cyB0aGUgY29t
cHV0ZWQgc3R5bGUgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRl
ciBwcm9wZXJ0eS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotQ3VzdG9tIHdp
dGggdmVydGV4IHNoYWRlciA6IGN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMSAxKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFk
ZXIpIG5vbmUsIDEgMSknCi0KLUN1c3RvbSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxl
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3Rv
X18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmls
dGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJS
dWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggYm90aCBzaGFkZXJzIDogY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hh
ZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicK
LVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUg
aXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFz
ZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZp
bHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90
b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdD
U1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIG5vcm1hbCA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwpKQotUEFTUyByZW1vdmVCYXNl
VVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwg
MSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxp
c3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3Ip
IGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwg
MSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIG11bHRpcGx5
IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5KSkKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IHNv
dXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NT
U1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlz
ICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
Y29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVs
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmls
dGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNz
c1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkg
c291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5k
IG1vZGUgc2NyZWVuIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNjcmVl
bikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
Y3JlZW4gc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
Y3JlZW4gc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGJsZW5kIG1vZGUgb3ZlcmxheSA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBvdmVybGF5KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIG92ZXJsYXkgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBvdmVybGF5IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1
bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRhcmtlbiA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBkYXJrZW4pKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgZGFya2VuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgZGFya2VuIHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGgg
bWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGxpZ2h0ZW4gOiBjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5
bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBsaWdodGVuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBt
aXgodXJsKGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbiBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBjb2xvci1kb2RnZSA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1kb2RnZSkpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1kb2RnZSBzb3Vy
Y2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAn
Q1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNv
bnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUu
bGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NU
ZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvbG9yLWRvZGdl
IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVu
ZCBtb2RlIGNvbG9yLWJ1cm4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
Y29sb3ItYnVybikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBjb2xvci1idXJuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1
Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY29sb3ItYnVybiBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRo
IG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBoYXJkLWxpZ2h0IDogY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIGhhcmQtbGlnaHQpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZp
bHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaGFyZC1saWdodCBzb3VyY2UtYXRvcCksIDEg
MSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGhhcmQtbGlnaHQgc291cmNlLWF0b3Ap
LCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgc29mdC1s
aWdodCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb2Z0LWxpZ2h0KSkK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvZnQt
bGlnaHQgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
b2Z0LWxpZ2h0IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9u
IGFuZCBibGVuZCBtb2RlIGRpZmZlcmVuY2UgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50
LnNoYWRlcikgZGlmZmVyZW5jZSkpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBkaWZmZXJlbmNlIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxp
c3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxl
Lm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00K
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgZGlmZmVyZW5jZSBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBleGNsdXNpb24gOiBjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZXhjbHVzaW9uKSkKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGV4Y2x1c2lvbiBzb3VyY2UtYXRv
cCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGV4Y2x1c2lvbiBzb3VyY2Ut
YXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBo
dWUgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaHVlKSkKLVBBU1MgcmVt
b3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSBzb3VyY2UtYXRv
cCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSBzb3VyY2UtYXRvcCks
IDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBzYXR1cmF0
aW9uIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNhdHVyYXRpb24pKQot
UEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2F0dXJh
dGlvbiBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNh
dHVyYXRpb24gc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24g
YW5kIGJsZW5kIG1vZGUgY29sb3IgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRl
cikgY29sb3IpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgY29sb3Igc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hh
ZGVyKSBjb2xvciBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlv
biBhbmQgYmxlbmQgbW9kZSBsdW1pbm9zaXR5IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIGx1bWlub3NpdHkpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbHVtaW5vc2l0eSBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVM
aXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVs
ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9N
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIGx1bWlub3NpdHkgc291cmNlLWF0b3ApLCAxIDEpJwotCi1D
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgY2xlYXIg
OiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY2xlYXIpKQotUEFTUyByZW1v
dmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGNsZWFyKSwg
MSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxp
c3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3Ip
IGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGNsZWFyKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGNv
cHkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29weSkpCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgY29weSks
IDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBjb3B5KSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNv
dXJjZS1vdmVyIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1v
dmVyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG5vcm1hbCBzb3VyY2Utb3ZlciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG5vcm1hbCBzb3VyY2Utb3ZlciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBh
bmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1vdmVyIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLW92ZXIpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGRlc3RpbmF0aW9u
LW92ZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4
dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgZGVzdGlu
YXRpb24tb3ZlciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSBzb3VyY2UtaW4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50
LnNoYWRlcikgc291cmNlLWluKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtaW4pLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNlLWluKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4
IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGRlc3RpbmF0aW9uLWluIDogY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWluKSkKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBkZXN0
aW5hdGlvbi1pbiksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBp
cyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
LmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1
bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5j
c3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBk
ZXN0aW5hdGlvbi1pbiksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxw
aGEgY29tcG9zaXRpbmcgbW9kZSBzb3VyY2Utb3V0IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIHNvdXJjZS1vdXQpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxl
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1vdXQpLCAxIDEpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNlLW91dCksIDEgMSknCi0KLUN1c3RvbSB3
aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1v
dXQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tb3V0
KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5v
cm1hbCBkZXN0aW5hdGlvbi1vdXQpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBub3JtYWwgZGVzdGluYXRpb24tb3V0KSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNvdXJjZS1hdG9wIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1hdG9wKSkKLVBBU1MgcmVtb3ZlQmFzZVVS
TChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEg
MSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEg
MSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9k
ZSBkZXN0aW5hdGlvbi1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IGRlc3RpbmF0aW9uLWF0b3ApKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgbm9ybWFsIGRlc3RpbmF0aW9uLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgZGVzdGluYXRpb24tYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSB4b3IgOiBj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgeG9yKSkKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCB4b3IpLCAxIDEpJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3Rv
dHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NT
U1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgeG9yKSwgMSAxKScKLQotQ3VzdG9t
IHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0LCBhbHBoYSBjb21wb3NpdGlu
ZyBtb2RlIHNlY29uZCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0
aXBseSBjbGVhcikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBtdWx0aXBseSBjbGVhciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIG11bHRpcGx5IGNsZWFyKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFu
ZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGZpcnN0LCBibGVuZCBtb2RlIHNlY29uZCA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVh
ciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSwg
MSAxKScKLQotQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciBhbmQgbWl4IGZ1bmN0aW9uIDogY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKQotUEFTUyBy
ZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVy
JykpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBub3JtYWwgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRo
IG1peCBmdW5jdGlvbiBhbmQgbWVzaCBzaXplIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpKSwgMTApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBub3JtYWwgc291cmNlLWF0b3ApLCAxMCAxMCknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEwIDEwKScKLQotQ3VzdG9tIHdpdGgg
bWVzaCBzaXplIDogY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApCi1QQVNTIHJlbW92ZUJh
c2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMg
J2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMTAgMTApJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRl
cikgbm9uZSwgMTAgMTApJwotCi1DdXN0b20gd2l0aCBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmls
dGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIDIwKScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIDogY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSwgMTApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9u
ZSwgMTAgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMTAgMTApJwotCi1DdXN0b20gd2l0
aCBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAg
MjApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKScKLQotQ3VzdG9tIHdpdGggZGV0
YWNoZWQgbWVzaCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRhY2hlZCkK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSBkZXRh
Y2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSBkZXRhY2hlZCknCi0KLUN1c3Rv
bSB3aXRoIGRldGFjaGVkIGFuZCBtZXNoIHNpemUgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUu
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIDIwIGRldGFjaGVkKScKLQotQ3VzdG9tIHdpdGggZGVmYXVsdCBmaWx0ZXItYm94IDog
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmls
dGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCAxIDEpJwotCi1DdXN0b20gd2l0aCBpbnRlZ2VyIHBhcmFtZXRlcnMgOiBjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNykK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEg
MSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEgMSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi0KLUN1c3RvbSB3
aXRoIGZsb2F0IHBhcmFtZXRlcnMgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
cDEgMS4xLCBwMiAyLjIgMy4zLCBwMyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KQot
UEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSAx
LjEsIHAyIDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4yIDYuMyA3LjQpJwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlw
ZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1Zh
bHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1
YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NV
U1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQu
MSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCknCi0KLUN1c3RvbSB3aXRoIHRyYW5zZm9ybSB0cmFu
c2xhdGUgcGFyYW1ldGVyIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIHRy
YW5zbGF0ZSgxMHB4LCAxMHB4KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDEsIDAsIDAsIDEsIDEwLCAxMCkpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVy
bChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIG1hdHJpeCgxLCAwLCAwLCAxLCAxMCwgMTApKScK
LQotQ3VzdG9tIHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtIHBhcmFtZXRlcnMgOiBjdXN0b20obm9u
ZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgdHJhbnNsYXRlKDEwcHgsIDEwcHgpLCBwMiBzY2Fs
ZSgyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEg
MSwgcDEgbWF0cml4KDEsIDAsIDAsIDEsIDEwLCAxMCksIHAyIG1hdHJpeCgyLCAwLCAwLCAyLCAw
LCAwKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDEsIDAsIDAs
IDEsIDEwLCAxMCksIHAyIG1hdHJpeCgyLCAwLCAwLCAyLCAwLCAwKSknCi0KLUN1c3RvbSB3aXRo
IG11bHRpcGxlIHRyYW5zZm9ybXMgc2luZ2xlIHBhcmFtZXRlciA6IGN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBweCkgc2NhbGUoMikpCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIG1hdHJp
eCgyLCAwLCAwLCAyLCAxMCwgMTApKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3Rv
X18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmls
dGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJS
dWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBw
MSBtYXRyaXgoMiwgMCwgMCwgMiwgMTAsIDEwKSknCi0KLUN1c3RvbSB3aXRoIHBlcmNlbnQgdHJh
bnNmb3JtIHBhcmFtZXRlciA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0
cmFuc2xhdGUoNTAlLCA1MCUpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMjUwLCAzMDApKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMjUwLCAzMDAp
KScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyA6IGN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAzIDQg
NSwgcDQgNCA1IDYgNykKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQg
NSA2IDcpJwotCi1NdWx0aXBsZSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGdyYXlzY2FsZSgpIGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpCi1QQVNTIHJlbW92ZUJhc2VV
UkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2dy
YXlzY2FsZSgxKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSBzZXBpYSgx
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMwot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9HUkFZU0NBTEUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdn
cmF5c2NhbGUoMSknCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3Nz
VGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9T
RVBJQQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ3NlcGlhKDEpJwot
Ci1DdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2YgdGhyZWUgdmFsdWVzIDogY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEsIDIsIDMpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLCAyLCAz
KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMSwgMiwgMykpJwot
Ci1DdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2YgdGhyZWUgZmxvYXRpbmcgcG9pbnQgdmFs
dWVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEuNjE4MCwg
LTIuNzE4MiwgMy4xNDE1KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMS42MTgsIC0yLjcxODIsIDMuMTQxNSkpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVy
bChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDEuNjE4LCAtMi43MTgyLCAzLjE0MTUp
KScKLQotQ3VzdG9tIHdpdGggYXJyYXkoKSBtYWRlIHVwIG9mIHNldmVyYWwgZmxvYXRpbmcgcG9p
bnQgYW5kIGludGVnZXIgdmFsdWVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciks
IGExIGFycmF5KDEuNjE4MCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLjYxOCwg
MSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAx
LCBhMSBhcnJheSgxLjYxOCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKScKLQotQ3VzdG9tIHdp
dGggYXJyYXkoKSBtYWRlIHVwIG9mIDI0NyBkaWZmZXJlbnQgZmxvYXRpbmcgcG9pbnQgdmFsdWVz
IDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDYuMDAsIDM4LjU4
LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEs
IDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAy
MS45NCwgNjIuNzAsIDc3Ljk2LCA2Ny4yNywgMi43NSwgMjguMTYsIDguODgsIDExLjYxLCAzNC44
OSwgNDUuNzUsIDU0LjU1LCAzNS4wNCwgNi4xMywgNjkuNjgsIDgxLjIxLCA0OS40NCwgNTQuNzQs
IDI2Ljc0LCA5MS40OSwgNjguMjAsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44Nywg
NzEuNzMsIDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAu
NDgsIDgxLjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4y
NiwgMzQuNjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUs
IDM1LjAyLCAzOS4wMCwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwg
MjcuNzIsIDI4LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5
OC40NSwgODcuNTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMx
LjczLCAyLjkwLCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIs
IDUzLjk2LCAzNS4wNiwgNjcuNTAsIDc2LjYyLCAzNS4wMiwgMS42MiwgMTMuMDUsIDMzLjU5LCAy
Ni44OSwgMzYuOTQsIDc0LjEzLCA5NS4wOSwgNTYuODcsIDQ2LjAxLCAxMS45NCwgMTIuOTIsIDQ4
Ljg4LCAxMS4wMywgMjQuODAsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAu
MzUsIDQxLjEwLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUwLCA4OC40MSwgOTAuMzQs
IDk3LjYyLCA1OC43MCwgMjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwg
OTEuMjIsIDc4LjIxLCA2Mi4zMCwgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5
Ny40MiwgOTYuNDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIwLCAyNi42NSwgNzgu
MzksIDk1LjI2LCA2Ni44MCwgMzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3
LCA2MS4wMSwgOTUuNjgsIDguNTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNDAsIDEyLjM1LCA5
OS4zOSwgNS44MCwgNjguMTAsIDczLjg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4w
OCwgNTQuNDUsIDg3LjY0LCAzNi4xNCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQw
LCA1LjkwLCAxNS43MCwgMTAuODgsIDU1LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywg
NjAuMzAsIDQuMzIsIDcuMDUsIDMuMzQsIDkuODcsIDY0LjUxLCA0LjYwLCA1NC4xNiwgNDguODAs
IDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgsIDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5
My43MCwgMjMuNzksIDg5LjU3LCAxNC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5
LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcu
NzUsIDQxLjY1LCA2Mi4zNSwgOTAuNDAsIDQwLjc3LCA1My45MywgODAuMjMsIDg0LjQ5LCAyMC4x
OCwgNDUuMzYsIDI2LjAyLCA5My43MiwgNjUuNTQsIDMyLjg2KSkKLVBBU1MgcmVtb3ZlQmFzZVVS
TChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoNiwgMzguNTgsIDQw
LjE0LCAzNC4wMywgODMuMzMsIDI0LjE4LCA2OC4zNywgMTUuODcsIDU2LjU2LCA3My4yMSwgOTku
MDUsIDI0LjY0LCA2LjM5LCA2OS4zNCwgOTEuMTksIDI3Ljk4LCAzNy41MiwgNjAuNzEsIDIxLjk0
LCA2Mi43LCA3Ny45NiwgNjcuMjcsIDIuNzUsIDI4LjE2LCA4Ljg4LCAxMS42MSwgMzQuODksIDQ1
Ljc1LCA1NC41NSwgMzUuMDQsIDYuMTMsIDY5LjY4LCA4MS4yMSwgNDkuNDQsIDU0Ljc0LCAyNi43
NCwgOTEuNDksIDY4LjIsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44NywgNzEuNzMs
IDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAuNDgsIDgx
LjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4yNiwgMzQu
NjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUsIDM1LjAy
LCAzOSwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwgMjcuNzIsIDI4
LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5OC40NSwgODcu
NTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMxLjczLCAyLjks
IDguMjMsIDkzLjc0LCAzMS4yNiwgODQuNzMsIDYuNDgsIDQxLjk2LCA3NS43MiwgNTMuOTYsIDM1
LjA2LCA2Ny41LCA3Ni42MiwgMzUuMDIsIDEuNjIsIDEzLjA1LCAzMy41OSwgMjYuODksIDM2Ljk0
LCA3NC4xMywgOTUuMDksIDU2Ljg3LCA0Ni4wMSwgMTEuOTQsIDEyLjkyLCA0OC44OCwgMTEuMDMs
IDI0LjgsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAuMzUsIDQxLjEsIDUu
MzEsIDQzLjk2LCA5LjAyLCA5Mi4zMiwgMzQuNSwgODguNDEsIDkwLjM0LCA5Ny42MiwgNTguNywg
MjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwgOTEuMjIsIDc4LjIxLCA2
Mi4zLCA2MC45MywgMzMuMjYsIDE2LjEzLCA5NS42MSwgNzguNjIsIDk3LjQyLCA5Ni40MiwgMzgu
MDQsIDguNDksIDQ1LjQ3LCA2OC43MywgMTguMiwgMjYuNjUsIDc4LjM5LCA5NS4yNiwgNjYuOCwg
MzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3LCA2MS4wMSwgOTUuNjgsIDgu
NTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNCwgMTIuMzUsIDk5LjM5LCA1LjgsIDY4LjEsIDcz
Ljg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4wOCwgNTQuNDUsIDg3LjY0LCAzNi4x
NCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQsIDUuOSwgMTUuNywgMTAuODgsIDU1
LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywgNjAuMywgNC4zMiwgNy4wNSwgMy4zNCwg
OS44NywgNjQuNTEsIDQuNiwgNTQuMTYsIDQ4LjgsIDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgs
IDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5My43LCAyMy43OSwgODkuNTcsIDE0Ljg0LCA3
OS41OCwgNjIuMjksIDU4Ljc2LCAyOS40MywgMTkuMTYsIDQ0LjQ3LCAzOC4zMSwgNDQuNzcsIDQy
LjY2LCA4OC44NSwgNzQuOTYsIDI0LjA3LCAzNy43NSwgNDEuNjUsIDYyLjM1LCA5MC40LCA0MC43
NywgNTMuOTMsIDgwLjIzLCA4NC40OSwgMjAuMTgsIDQ1LjM2LCAyNi4wMiwgOTMuNzIsIDY1LjU0
LCAzMi44NikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDYsIDM4
LjU4LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMu
MjEsIDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcx
LCAyMS45NCwgNjIuNywgNzcuOTYsIDY3LjI3LCAyLjc1LCAyOC4xNiwgOC44OCwgMTEuNjEsIDM0
Ljg5LCA0NS43NSwgNTQuNTUsIDM1LjA0LCA2LjEzLCA2OS42OCwgODEuMjEsIDQ5LjQ0LCA1NC43
NCwgMjYuNzQsIDkxLjQ5LCA2OC4yLCA4NC4wNSwgNjUuODEsIDU3Ljg5LCA3My4yMiwgMTMuODcs
IDcxLjczLCAxOC42MSwgOC41NCwgOS43OSwgMjguMDUsIDE0LjExLCA2OS45MywgNDcuMTksIDEw
LjQ4LCA4MS4zNSwgMzcuMTUsIDE5LjI5LCAxNC45OCwgMzIuNTQsIDk4Ljk2LCA2OS4zNywgOTIu
MjYsIDM0LjY0LCA2Ny40MywgNzEuOTIsIDQ1LjUyLCA5LjIyLCA0MS45NiwgMzEuMjYsIDkyLjY1
LCAzNS4wMiwgMzksIDc2Ljc2LCAyOS4zMywgMjIuOTMsIDgwLjY1LCA3MC43OCwgNDIuOTQsIDI3
LjcyLCAyOC4xOSwgNzUuMTUsIDE4LjE0LCA4OS43MSwgOTUuMzgsIDU0LjUxLCAzNi45MywgOTgu
NDUsIDg3LjU4LCA0NC41MSwgNzEuNzMsIDc1LjcxLCA3MC40MywgNzguNTEsIDgyLjE5LCAzMS43
MywgMi45LCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIsIDUz
Ljk2LCAzNS4wNiwgNjcuNSwgNzYuNjIsIDM1LjAyLCAxLjYyLCAxMy4wNSwgMzMuNTksIDI2Ljg5
LCAzNi45NCwgNzQuMTMsIDk1LjA5LCA1Ni44NywgNDYuMDEsIDExLjk0LCAxMi45MiwgNDguODgs
IDExLjAzLCAyNC44LCA2OC4wNiwgMTkuODMsIDEyLjk4LCA0MS41NiwgNjIuMDMsIDgwLjM1LCA0
MS4xLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUsIDg4LjQxLCA5MC4zNCwgOTcuNjIs
IDU4LjcsIDIzLjYyLCAxMy4wMywgODUuNDEsIDI5LjczLCAzMC4yMSwgNTkuMjUsIDkxLjIyLCA3
OC4yMSwgNjIuMywgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5Ny40MiwgOTYu
NDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIsIDI2LjY1LCA3OC4zOSwgOTUuMjYs
IDY2LjgsIDM0LjQxLCAxMC42OSwgOTQuNDMsIDcxLjY5LCA0LjU4LCAyMy44NywgNjEuMDEsIDk1
LjY4LCA4LjUxLCAxNC45MiwgMTYuMjcsIDMwLjQxLCAxLjQsIDEyLjM1LCA5OS4zOSwgNS44LCA2
OC4xLCA3My44NywgMjguMzYsIDI0Ljk4LCA3Ny41OCwgOC43MywgMzQuMDgsIDU0LjQ1LCA4Ny42
NCwgMzYuMTQsIDc0LjY4LCAzOC4wNCwgNTYuNTQsIDQ2LjQyLCAxMi40LCA1LjksIDE1LjcsIDEw
Ljg4LCA1NS44MiwgODQuNjYsIDc1Ljc0LCA4Ny45MiwgNTkuMDMsIDYwLjMsIDQuMzIsIDcuMDUs
IDMuMzQsIDkuODcsIDY0LjUxLCA0LjYsIDU0LjE2LCA0OC44LCA0Ni45MywgNS44NCwgOTAuMzQs
IDc1LjQ4LCAzMi41OSwgMjkuNjUsIDk0LjU3LCAyOC4yMiwgOTMuNywgMjMuNzksIDg5LjU3LCAx
NC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5LjE2LCA0NC40NywgMzguMzEsIDQ0
Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcuNzUsIDQxLjY1LCA2Mi4zNSwgOTAu
NCwgNDAuNzcsIDUzLjkzLCA4MC4yMywgODQuNDksIDIwLjE4LCA0NS4zNiwgMjYuMDIsIDkzLjcy
LCA2NS41NCwgMzIuODYpKScKLQotQ3VzdG9tIHdpdGggdHdvIGFycmF5KCkgbWFkZSB1cCBvZiB0
aHJlZSBhbmQgc2l4IHZhbHVlcyA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBh
MSBhcnJheSgxLCAyLCAzKSwgYTIgYXJyYXkoMSwgMiwgMywgNCwgNSwgNikpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDEsIDIs
IDMpLCBhMiBhcnJheSgxLCAyLCAzLCA0LCA1LCA2KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEgMSwgYTEgYXJyYXkoMSwgMiwgMyksIGEyIGFycmF5KDEsIDIsIDMsIDQsIDUsIDYpKScK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJv
cGVydHktY29tcHV0ZWQtc3R5bGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA5NWMyNGIwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJv
ZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2Pgot
PHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1
dGVkLXN0eWxlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1w
YXJzaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggM2U0NTQ3NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1leHBlY3RlZC50eHQK
KysrIC9kZXYvbnVsbApAQCAtMSw2ODQgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiB0aGUg
Y3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LgotCi1PbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi1DdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIDog
Y3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSknCi0KLUN1c3RvbSB3aXRoIGZyYWdtZW50IHNo
YWRlciA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikp
JwotCi1DdXN0b20gd2l0aCBib3RoIHNoYWRlcnMgOiBjdXN0b20odXJsKHZlcnRleC5zaGFkZXIp
IHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFk
ZXIpIHVybChmcmFnbWVudC5zaGFkZXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVu
dC5zaGFkZXIpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIDogY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBp
cyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
LmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1
bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5j
c3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBub3JtYWwgOiBjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5v
bmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCkpJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVj
dG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1v
dmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBub3JtYWwpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVu
ZCBtb2RlIG11bHRpcGx5IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11
bHRpcGx5KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG11bHRpcGx5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5KSknCi0K
LUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBzY3JlZW4gOiBjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2NyZWVuKSkKLVBBU1MgY3NzUnVsZS50eXBl
IGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNjcmVlbikpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBzY3JlZW4pKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBi
bGVuZCBtb2RlIG92ZXJsYXkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
b3ZlcmxheSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBvdmVybGF5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG92ZXJsYXkpKScKLQot
Q3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRhcmtlbiA6IGN1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkYXJrZW4pKQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGFya2VuKSknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIGRhcmtlbikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJs
ZW5kIG1vZGUgbGlnaHRlbiA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBs
aWdodGVuKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IGxpZ2h0ZW4pKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVl
TGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NW
YWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3Ry
dWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbikpJwotCi1D
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgY29sb3ItZG9kZ2UgOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKQotUEFTUyBjc3NS
dWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVC
YXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5
cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NW
YWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKScKLQotQ3VzdG9tIHdpdGgg
bWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGNvbG9yLWJ1cm4gOiBjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItYnVybikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAx
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25l
IG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1idXJuKSknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIGNvbG9yLWJ1cm4pKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFu
ZCBibGVuZCBtb2RlIGhhcmQtbGlnaHQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgaGFyZC1saWdodCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBoYXJkLWxpZ2h0KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGhh
cmQtbGlnaHQpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIHNv
ZnQtbGlnaHQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc29mdC1saWdo
dCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb2Z0
LWxpZ2h0KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvZnQtbGlnaHQpKScKLQot
Q3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRpZmZlcmVuY2UgOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGlmZmVyZW5jZSkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMg
J2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkaWZmZXJlbmNlKSknCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBl
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFs
dWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
UnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VT
VE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRpZmZlcmVuY2UpKScKLQotQ3VzdG9tIHdpdGggbWl4
IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGV4Y2x1c2lvbiA6IGN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBleGNsdXNpb24pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgZXhjbHVzaW9uKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIGV4Y2x1c2lvbikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5k
IG1vZGUgaHVlIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSkpCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBodWUpKScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5
cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NW
YWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaHVlKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5j
dGlvbiBhbmQgYmxlbmQgbW9kZSBzYXR1cmF0aW9uIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIHNhdHVyYXRpb24pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgc2F0dXJhdGlvbikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hh
ZGVyKSBzYXR1cmF0aW9uKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQg
bW9kZSBjb2xvciA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikp
Ci1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikp
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFBy
b3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMg
J0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklM
VEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikpJwotCi1DdXN0b20gd2l0aCBt
aXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgbHVtaW5vc2l0eSA6IGN1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBsdW1pbm9zaXR5KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGx1bWlub3NpdHkpKScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1
Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgbHVtaW5vc2l0eSkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgY2xlYXIgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY2xlYXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY2xlYXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMg
J0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18p
IGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVy
UnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NT
RmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY2xlYXIp
KScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2Rl
IGNvcHkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29weSkpCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb3B5KSknCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBl
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFs
dWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
UnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VT
VE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvcHkpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNvdXJjZS1vdmVyIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSkKLVBBU1MgY3NzUnVsZS50eXBl
IGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSknCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0
Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5v
cGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5j
dGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1vdmVyIDogY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLW92ZXIpKQotUEFTUyBj
c3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1v
dmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tb3Zl
cikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1vdmVyKSknCi0K
LUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBzb3Vy
Y2UtaW4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc291cmNlLWluKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1p
bikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2UtaW4pKScKLQotQ3VzdG9t
IHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGRlc3RpbmF0aW9u
LWluIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWlu
KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3Rp
bmF0aW9uLWluKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWlu
KSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9k
ZSBzb3VyY2Utb3V0IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJj
ZS1vdXQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
c291cmNlLW91dCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4
dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2Utb3V0KSkn
Ci0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBk
ZXN0aW5hdGlvbi1vdXQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVz
dGluYXRpb24tb3V0KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIGRlc3RpbmF0aW9uLW91dCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBk
ZXN0aW5hdGlvbi1vdXQpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBj
b21wb3NpdGluZyBtb2RlIHNvdXJjZS1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIHNvdXJjZS1hdG9wKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIHNvdXJjZS1hdG9wKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIHNvdXJjZS1hdG9wKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWF0b3ApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMg
MQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tYXRvcCkpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1hdG9wKSknCi0KLUN1c3RvbSB3aXRoIG1p
eCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSB4b3IgOiBjdXN0b20obm9uZSBt
aXgodXJsKGZyYWdtZW50LnNoYWRlcikgeG9yKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIHhvcikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSB4b3IpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0
LCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNlY29uZCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rp
b24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgZmlyc3QsIGJsZW5kIG1vZGUgc2Vjb25kIDog
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRpcGx5KSkKLVBB
U1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRp
cGx5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRpcGx5KSknCi0K
LUN1c3RvbSB3aXRoIHZlcnRleCBzaGFkZXIgYW5kIG1peCBmdW5jdGlvbiA6IGN1c3RvbSh1cmwo
dmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwotCi1DdXN0b20gd2l0aCBt
aXggZnVuY3Rpb24gaW4gQ0FQUyA6IGN1c3RvbShub25lIE1JWCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3Rv
dHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NT
U1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rp
b24gYW5kIG1lc2ggc2l6ZSA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSks
IDEwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpLCAx
MCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSwgMTApJwotCi1DdXN0b20gd2l0aCBt
ZXNoIHNpemUgOiBjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpLCAxMCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlciksIDEwKScKLQot
Q3VzdG9tIHdpdGggYm90aCBtZXNoIHNpemVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgMTAgMjApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCknCi0KLUN1c3RvbSB3
aXRoIGRldGFjaGVkIG1lc2ggOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0
YWNoZWQpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRh
Y2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGRldGFjaGVkKScKLQotQ3VzdG9tIHdp
dGggZGV0YWNoZWQgYW5kIG1lc2ggc2l6ZSA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCAyMCBkZXRhY2hlZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIDEwIDIwIGRldGFjaGVkKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAg
MjAgZGV0YWNoZWQpJwotCi1DdXN0b20gd2l0aCBudW1iZXIgcGFyYW1ldGVycyA6IGN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUg
NiA3KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwg
cDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciks
IHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpJwotCi1DdXN0b20gd2l0aCBmbG9h
dCBwYXJhbWV0ZXJzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEuMSwg
cDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBp
cyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywg
cDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCknCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0
b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25U
eXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4z
IDcuNCknCi0KLUN1c3RvbSB3aXRoIHBhcmFtZXRlciBuYW1lIHNhbWUgYXMgQ1NTIHZhbHVlIGtl
eXdvcmQgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEg
MCAxKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dy
b3VuZCAwIDEgMCAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1Zh
bHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdD
U1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29u
c3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1Rl
eHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEg
MCAxKScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyA6IGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQg
NSA2IDcpJwotCi1NdWx0aXBsZSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGdyYXlzY2FsZSgpIGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwo
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2dyYXlz
Y2FsZSgpIGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0dSQVlT
Q0FMRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2dyYXlzY2FsZSgp
JwotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSknCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX1NFUElBCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnc2VwaWEoKScKLQotQ3VzdG9tIGluIENBUFMg
OiBDVVNUT00odXJsKHZlcnRleC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20odXJsKHZlcnRl
eC5zaGFkZXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVl
TGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NW
YWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3Ry
dWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQp
IGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpKScKLQotQ3VzdG9tIHdpdGggb25lIHRyYW5z
Zm9ybSA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBvbmVUcmFuc2Zvcm0gcm90
YXRlKDBkZWcpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
b25lVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG9u
ZVRyYW5zZm9ybSByb3RhdGUoMGRlZykpJwotCi1DdXN0b20gd2l0aCBtdWx0aXBsZSB0cmFuc2Zv
cm1zIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJhbnNmb3Jt
IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAw
cHgpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgbXVsdGlw
bGVUcmFuc2Zvcm0gcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5z
bGF0ZSgwcHgsIDBweCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NT
VmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMg
J0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5j
b25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxl
Lmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3Nz
VGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBtdWx0aXBsZVRyYW5z
Zm9ybSByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBw
eCwgMHB4KSknCi0KLUN1c3RvbSB3aXRoIHR3byBzZXBhcmF0ZSB0cmFuc2Zvcm1zIDogY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSwg
c2Vjb25kVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSwgc2Vjb25kVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlz
ICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19f
KSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRl
clJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVs
ZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSwgc2Vjb25kVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSknCi0KLUN1
c3RvbSB3aXRoIGEgc2luZ2xlIGVsZW1lbnQgYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCB0MCBhcnJheSgxKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIHQwIGFycmF5KDEpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5f
X3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBB
U1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMg
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
dDAgYXJyYXkoMSkpJwotCi1DdXN0b20gd2l0aCBhIHNpbmdsZSBuZWdhdGl2ZSBlbGVtZW50IGFy
cmF5KCkgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXkoLTEuMDEp
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXko
LTEuMDEpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlz
dCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1
ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0
b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
Q1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXkoLTEuMDEpKScKLQot
Q3VzdG9tIHdpdGggbXVsdGlwbGUgZWxlbWVudHMgYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCB0MiBhcnJheSgxLCAyLCAzLCA0LCA1KSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQyIGFycmF5KDEsIDIsIDMsIDQsIDUpKScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90
b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdD
U1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDIgYXJyYXkoMSwgMiwgMywgNCwgNSkpJwotCi1D
dXN0b20gd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXQgZWxlbWVudHMgYXJyYXkoKSA6IGN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0MyBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQs
IDUpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDMgYXJy
YXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQz
IGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkpJwotCi1NdWx0aXBsZSBhcnJheSgpIDogY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQ0IGFycmF5KDEsIC0yLjIsIDMuMTQsIDAu
NCwgNSksIHQ1IGFycmF5KDEsIDIsIDMpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJh
Z21lbnQuc2hhZGVyKSwgdDQgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgdDUgYXJyYXko
MSwgMiwgMykpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAz
LjE0LCAwLjQsIDUpLCB0NSBhcnJheSgxLCAyLCAzKSknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRo
IG1lc2ggYm94IHNpemVzIGFuZCBjb250ZW50LWJveCA6IGN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxIDEgY29udGVudC1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBp
cyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9f
XykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0
ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRD
U1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1
bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwot
Ci1MZWdhY3kgLSBDdXN0b20gd2l0aCBtZXNoIGJveCBzaXplcyBhbmQgYm9yZGVyLWJveCA6IGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgYm9yZGVyLWJveCkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBp
cyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSknCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29u
c3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVy
YXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEgMSknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIG1lc2ggYm94IHNpemVz
IGFuZCBwYWRkaW5nLWJveCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEg
cGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVl
TGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMg
J2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotCi1MZWdhY3kgLSBDdXN0
b20gd2l0aCBwYXJ0aWFsIG1lc2ggYm94IHNpemUgYW5kIHBhZGRpbmctYm94IDogY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIHBhZGRpbmctYm94KQotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIHBhZGRpbmctYm94IGFuZCBkZXRhY2hl
ZCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwYWRkaW5nLWJveCBkZXRhY2hl
ZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGRldGFjaGVk
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0YWNoZWQpJwotCi1MZWdhY3kgLSBDdXN0
b20gd2l0aCBib3RoIG1lc2gtc2l6ZXMgYW5kIHBhZGRpbmctYm94IDogY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIDEwIDIwIHBhZGRpbmctYm94KQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCAyMCknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIG1lc2gtc2l6ZXMsIHBhZGRpbmct
Ym94IGFuZCBkZXRhY2hlZCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCBwYWRkaW5nLWJveCBkZXRhY2hlZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEwIDIwIGRldGFjaGVkKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5f
X3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBB
U1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMg
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
MTAgMjAgZGV0YWNoZWQpJwotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNp
bmctaW52YWxpZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEx
MGY1YjQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmctaW52YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSw0MDQgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiBjdXN0b20oKSBmdW5j
dGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KLQotCi0KLUVtcHR5IGZ1bmN0aW9uIDogY3VzdG9tKCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHZhbHVlcyAx
IDogY3VzdG9tKCwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1ObyB2YWx1ZXMgMiA6IGN1c3RvbSgsLCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IHNo
YWRlcnMgMSA6IGN1c3RvbSh1cmwoc2hhZGVyMSkgdXJsKHNoYWRlcjIpIHVybChzaGFkZXIyKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVRvbyBtYW55IHNoYWRlcnMgMiA6IGN1c3RvbShub25lIG5vbmUgbm9uZSkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBt
YW55IHNoYWRlcnMgMyA6IGN1c3RvbShub25lIHVybChzaGFkZXIxKSB1cmwoc2hhZGVyMikgdXJs
KHNoYWRlcjIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIGFzIHZlcnRleCBzaGFkZXIgOiBjdXN0b20obWl4
KHVybChzaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIHdyb25nIG5hbWUgOiBjdXN0b20o
bm9uZSBmbih1cmwoc2hhZGVyKSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24gd2l0aCAwIGFyZ3MgOiBjdXN0
b20obm9uZSBtaXgoKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIGZpcnN0IGFyZyBub3QgYSBVUkkg
OiBjdXN0b20obm9uZSBtaXgobm9uZSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24gd2l0aCBzZWNvbmQgYXJn
IG5vdCBhIGJsZW5kIG1vZGUgb3IgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSA6IGN1c3RvbShub25l
IG1peCh1cmwoc2hhZGVyKSAwKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIHRoaXJkIGFyZyBub3Qg
YSBibGVuZCBtb2RlIG9yIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgOiBjdXN0b20obm9uZSBtaXgo
dXJsKHNoYWRlcikgbm9ybWFsIDApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggdHdvIGJsZW5kIG1v
ZGVzIDogY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIG11bHRpcGx5IHNjcmVlbikpCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1N
aXggZnVuY3Rpb24gd2l0aCB0d28gYWxwaGEgY29tcG9zaXRpbmcgbW9kZXMgOiBjdXN0b20obm9u
ZSBtaXgodXJsKHNoYWRlcikgc291cmNlLW92ZXIgZGVzdGluYXRpb24tb3ZlcikpCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXgg
ZnVuY3Rpb24gd2l0aCBhbHBoYSBjb21wb3NpdGluZyBtb2RlICdwbHVzLWRhcmtlcicsIHdoaWNo
IHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1jb21wb3NpdGUgOiBjdXN0
b20obm9uZSBtaXgodXJsKHNoYWRlcikgcGx1cy1kYXJrZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdp
dGggYWxwaGEgY29tcG9zaXRpbmcgbW9kZSAncGx1cy1saWdodGVyJywgd2hpY2ggc2hvdWxkIG9u
bHkgYXBwbHkgdG8gLXdlYmtpdC1iYWNrZ3JvdW5kLWNvbXBvc2l0ZSA6IGN1c3RvbShub25lIG1p
eCh1cmwoc2hhZGVyKSBwbHVzLWxpZ2h0ZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSAnaGlnaGxpZ2h0Jywgd2hpY2ggc2hvdWxkIG9ubHkgYXBwbHkgdG8g
LXdlYmtpdC1iYWNrZ3JvdW5kLWNvbXBvc2l0ZSA6IGN1c3RvbShub25lIG1peCh1cmwoc2hhZGVy
KSBoaWdobGlnaHQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggNCBhcmdzIDogY3VzdG9tKG5vbmUg
bWl4KHVybChzaGFkZXIpIG11bHRpcGx5IGNsZWFyIG5vcm1hbCkpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24g
d2l0aCBjb21tYSBzZXBhcmF0b3JzIDogY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpLCBtdWx0
aXBseSwgY2xlYXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggY29tbWEgdGVybWluYXRvciA6IGN1
c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSwgbXVsdGlwbHkgY2xlYXIsKSkKLVBBU1MgY3NzUnVs
ZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5j
dGlvbiB3aXRoIG9uZSBjb21tYSA6IGN1c3RvbShub25lIG1peCgsKSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHNoYWRlciA6
IGN1c3RvbShub25lLCAxMCAyMCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IG1lc2ggc2l6ZXMgOiBjdXN0b20obm9u
ZSwgMTAgMjAgMzApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1Xcm9uZyBtZXNoLWJveCB0eXBlIC0gJ3BhZGRpbmcnIDogY3VzdG9t
KHVybChzaGFkZXIpLCBwYWRkaW5nKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotV3JvbmcgbWVzaC1ib3ggdHlwZSAtICdub25lJyA6
IGN1c3RvbSh1cmwoc2hhZGVyKSwgbm9uZSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1vcmUgbWVzaC1ib3ggdHlwZXMgOiBjdXN0
b20odXJsKHNoYWRlciksIHBhZGRpbmctYm94IGZpbHRlci1ib3gpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Xcm9uZyBvcmRlciBm
b3IgbWVzaC1kZXRhY2hlZCBhbmQgbWVzaC1ib3ggdHlwZSA6IGN1c3RvbSh1cmwoc2hhZGVyKSwg
ZGV0YWNoZWQgcGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Xcm9uZyBvcmRlciBmb3IgbWVzaCBzaXplIGFuZCBt
ZXNoLWJveCB0eXBlIDogY3VzdG9tKHVybChzaGFkZXIpLCBwYWRkaW5nLWJveCAxMCkKLVBBU1Mg
Y3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRv
byBtYW55IG1lc2ggc2l6ZXMgd2l0aCBtZXNoLWJveCB0eXBlIDogY3VzdG9tKHVybChzaGFkZXIp
LCAyMCAzMCA0MCBwYWRkaW5nLWJveCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgY29tbWEgYmV0d2VlbiBtZXNoLXNp
emVzIDogY3VzdG9tKHVybChzaGFkZXIpLCAyMCwgNDAgcGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IGNvbW1hIGJlZm9yZSBtZXNoIHR5cGUgOiBjdXN0b20odXJsKHNoYWRlciksIDIwLCBwYWRkaW5n
LWJveCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBp
cyBudWxsCi0KLU5vIG1lc2ggcGFyYW1ldGVyIDogY3VzdG9tKHVybChzaGFkZXIpLCApCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1X
cm9uZyBtZXNoIHR5cGUgLSBjb3JyZWN0IGlkZW50aWZpZXIgaXMgJ2RldGFjaGVkJyA6IGN1c3Rv
bSh1cmwoc2hhZGVyKSwgZGV0YWNoKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gbWVzaCBzaXplIDogY3VzdG9tKHVybChzaGFk
ZXIpLCAsIHAxIDIpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBzaW5nbGUgbWVzaCBzaXplIDogY3VzdG9tKHVybChz
aGFkZXIpLCAtMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20odXJsKHNo
YWRlciksIC0xMCAtMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBhbmQgcG9zaXRpdmUgbWVzaCBzaXplIDogY3Vz
dG9tKHVybChzaGFkZXIpLCAtMTAgMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1aZXJvIHNpbmdsZSBtZXNoIHNpemUgOiBjdXN0
b20odXJsKHNoYWRlciksIDApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykgaXMgbnVsbAotCi1aZXJvIGJvdGggbWVzaCBzaXplcyA6IGN1c3RvbSh1cmwo
c2hhZGVyKSwgMCAwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotMCBhbmQgMSBtZXNoIHNpemVzIDogY3VzdG9tKHVybChzaGFkZXIp
LCAwIDEpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVzIDogY3VzdG9tKHVybChzaGFkZXIp
LCBwMSAxIDIgMyA0IDUpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHBhcmFtZXRlciB0eXBlcyA6IGN1c3RvbSh1cmwo
c2hhZGVyKSwgcDEgMS4wIDIuMCAndGV4dCcpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUgMSA6IGN1
c3RvbSh1cmwoc2hhZGVyKSwgcDEpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUgMiA6IGN1c3RvbSh1
cmwoc2hhZGVyKSwgcDEsIHAyLCBwMykKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBpbnZhbGlkIHRyYW5zZm9ybSA6IGN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykpCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NdWx0
aXBsZSBpbnZhbGlkIHRyYW5zZm9ybXMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlk
IGludmFsaWRfcm90YXRlKDBkZWcpIGludmFsaWRfcGVyc3BlY3RpdmUoMCkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHRyYW5zZm9ybSBiZXR3ZWVuIHZhbGlkIG9uZXMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwg
c29tZUlkIHJvdGF0ZSgwZGVnKSBpbnZhbGlkX3JvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVZhbGlkIHRyYW5zZm9ybSBiZXR3ZWVuIGludmFsaWQgb25lcyA6IGN1c3RvbShub25lIHVy
bChzaGFkZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgYW5v
dGhlcl9pbnZhbGlkKDApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3JtIHdpdGhvdXQgbGVhZGluZyBjb21t
YSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBwZXJzcGVjdGl2ZSgwKSkKLVBBU1Mg
Y3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVZh
bGlkIHRyYW5zZm9ybSB3aXRoIHRyYWlsaW5nIGNvbW1hIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIHNvbWVJZCBwZXJzcGVjdGl2ZSgwKSwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFp
bGluZyBjb21tYSBhbmQgd2l0aG91dCBsZWFkaW5nIGNvbW1hIDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlcikgc29tZUlkIHBlcnNwZWN0aXZlKDApLCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdHJhbnNmb3JtIHdpdGgg
dHJhaWxpbmcgY29tbWEgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIGludmFsaWRf
cm90YXRlKDBkZWcpLCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdHJhbnNmb3JtIHdpdGhvdXQgbGVhZGluZyBjb21t
YSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBpbnZhbGlkX3JvdGF0ZSgwZGVnKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLUVtcHR5IHRyYW5zZm9ybSAob25seSB0aGUgaWQpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIHNvbWVJZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyBudWxsCi0KLUVtcHR5IHRyYW5zZm9ybSAod2l0aG91dCB0aGUgaWQpIDogY3VzdG9t
KG5vbmUgdXJsKHNoYWRlciksKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotRW1wdHkgdHJhbnNmb3JtICh0d28gZW1wdHkgY29tbWFz
KSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gd2l0aCBp
bnZhbGlkIGNoYXJhY3RlcnMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSxzb21lSWQgcm90YXRl
KDBkZWcpICouLSwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1FbXB0eSBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciks
IGlkIGFycmF5KCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1PbmUgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChz
aGFkZXIpLCBpZCBhcnJheSgsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRpbGUgY29tbWFzIGluIGFycmF5KCkgOiBjdXN0
b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLCwsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRpcGxlIGNvbW1hcyB3
aXRoIGEgdmFsdWUgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJh
eSgsLDEsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSBpcyBudWxsCi0KLU9uZSBjb21tYSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFy
cmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLC00KSkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBj
b21tYSBmb2xsb3dlZCBieSBhIHZhbHVlIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoLDQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotT25lIG5lZ2F0aXZlIHZhbHVlIGZvbGxvd2VkIGJ5IGEg
Y29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgtNCwp
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotT25lIHZhbHVlIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSg0LCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1BIHNlcmllcyBvZiBjb3JyZWN0IHZh
bHVlcyBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMSwgMiwgMywgNCwpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQSBzZXJpZXMgb2YgY29ycmVjdCB2YWx1
ZXMgZm9sbG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFk
ZXIpLCBpZCBhcnJheSgxLCAyLCAzLCA0LCB4KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVR3byBjb21tYXMgYXMgc2VwYXJhdG9y
IGJldHdlZW4gdmFsdWVzIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQg
YXJyYXkoMSwgMiwgLCA0KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUxlYWRpbmcgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsMSwgMiwgMywgNCkpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2Vw
YXJhdGVkIHZhbHVlcyBpbiBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFy
cmF5KDE7IDI7IDM7IDQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheSgpIDog
Y3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEgMiAzIDQpKQotUEFTUyBjc3NSdWxl
LnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2Vw
YXJhdGVkIHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxIDIgMyA0LCkpCi1QQVNTIGNzc1J1bGUudHlwZSBp
cyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQg
dmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlciksIGlkIGFycmF5KCwgMSAyIDMgNCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1OYU4gaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheShOYU4pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTmFOIGFuZCB2YWx1ZXMgaW4gYXJy
YXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCBOYU4sIDMpKQot
UEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSwgaWQgYXJyYXkoMXB4KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdW5pdCB2YWx1ZSBpbiBhcnJheSgpLCBzZWNv
bmQgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkobm9uZSkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHVuaXQgdmFsdWUgaW4gYXJyYXkoKSwgdGhpcmQgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwg
aWQgYXJyYXkoMWRlZykpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHVuaXQgdmFsdWUgaW4gYXJyYXkoKSwgYXQgdGhl
IGVuZCBvZiBhIHBhcnRpYWxseSB2YWxpZCB2YWx1ZSBsaXN0IDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlciksIGlkIGFycmF5KDEsIDIsIDMsIDRweCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0
eS1wYXJzaW5nLWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWY4
NWNhMC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1pbnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxMyArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9F
TiI+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlv
biI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0
LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmctaW52
YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2lu
Zy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXBy
b3BlcnR5LXBhcnNpbmcuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzMwOTE0
MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItcHJvcGVydHktcGFyc2luZy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBA
QAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+
Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxk
aXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0
b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi9z
Y3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLmpzIj48L3NjcmlwdD4K
LTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXJlbG9hZC1leHBlY3RlZC50eHQKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXJlbG9hZC1leHBlY3RlZC50
eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQuaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTc5ZDEzZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcmVsb2FkLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSw3NSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTwhLS0gCi0gICAgVGhpcyB0
ZXN0cyB2ZXJpZmllcyB0aGF0IHdlIGRvbid0IGFzc2VydCB3aGVuIHRoZSBzdHlsZSBpcyByZWNh
bGN1bGF0ZWQgYnV0IHRoZSBmaWx0ZXIgcHJvcGVydHkgZG9lc24ndCBjaGFuZ2UuCi0tLT4KLTxo
dG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICAgICAg
d2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAgICAg
ZnVuY3Rpb24gdGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8vIEZvcmNlIGEgbGF5b3V0
LgotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQ7Ci0gICAgICAgICAgICB2
YXIgYm94ZXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuYm94Iik7Ci0gICAgICAgICAg
ICBmb3IgKHZhciBpID0gMDsgaSA8IGJveGVzLmxlbmd0aDsgKytpKQotICAgICAgICAgICAgICAg
IGJveGVzW2ldLmNsYXNzTGlzdC5hZGQoInRyaWdnZXItc3R5bGUtcmVjYWxjIik7Ci0gICAgICAg
ICAgICAKLSAgICAgICAgICAgIC8vIFN3aXRjaCB0aGUgcGFyZW50IHRvIGNvbXBvc2l0ZWQgbW9k
ZSwgc28gdGhhdCB3ZSBjYW4gdHJpZ2dlciAKLSAgICAgICAgICAgIC8vIGEgcmVidWlsZCBvZiB0
aGUgY29tcG9zaXRpbmcgbGF5ZXIgdHJlZS4KLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5
bGUud2Via2l0VHJhbnNmb3JtID0gInRyYW5zbGF0ZVooMHB4KSIKLQotICAgICAgICAgICAgLy8g
Rm9yY2UgYSBsYXlvdXQuCi0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodDsK
LQotICAgICAgICAgICAgLy8gSWYgd2UgZ2V0IHRoaXMgZmFyIHdpdGggbm8gYXNzZXJ0LCB0aGUg
dGVzdCBwYXNzZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0gICAg
PC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhlaWdo
dDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRl
WigwKTsKLSAgICAgICAgfQotCi0gICAgICAgIC52ZXJ0ZXhfc2hhZGVyCi0gICAgICAgIHsKLSAg
ICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4
LW9mZnNldC52cycpKTsKLSAgICAgICAgfQotCi0gICAgICAgIC5mcmFnbWVudF9zaGFkZXIKLSAg
ICAgICAgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwo
Jy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAg
ICAgICAgfQotCi0gICAgICAgIC5ib3RoX3NoYWRlcnMKLSAgICAgICAgewotICAgICAgICAgICAg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZz
JykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCkpOwotICAgICAgICB9Ci0KLSAgICAgICAgLnRyaWdnZXItc3R5bGUtcmVjYWxjIHsKLSAg
ICAgICAgICAgIC8qIE5vIGNoYW5nZSwgd2UganVzdCBuZWVkIGEgbmV3IHN0eWxlIHJlY2FsY3Vs
YXRpb24uICovCi0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotCi08Ym9keSBvbmxv
YWQ9InRlc3QoKSI+Ci0gICAgPCEtLSAKLSAgICAgICAgWW91IHNob3VsZCBzZWUgdGhyZWUgZ3Jl
ZW4gYm94ZXMuIExhc3QgdHdvIGJveGVzIGhhdmUgYSBkaWZmZXJlbnQgc2hhZGUgb2YgZ3JlZW4u
IExhc3QgYm94IGlzIHNsaWdodGx5IGJpZ2dlciBvbiB0aGUgbGVmdCBzaWRlLgotICAgICAgICBU
aGUgdGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgbm8gY3Jhc2ggb3IgYXNzZXJ0LgotICAgIC0tPgot
Ci0gICAgPGRpdiBjbGFzcz0iYm94IHZlcnRleF9zaGFkZXIiPjwvZGl2PgotICAgIDxkaXYgY2xh
c3M9ImJveCBib3RoX3NoYWRlcnMiPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCBmcmFnbWVu
dF9zaGFkZXIiPjwvZGl2PgotCi08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLWNhY2hlLWV4cGVj
dGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1z
aGFkZXItY2FjaGUtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBk
ZDNiZDQ1YWVhYzU0NjVhZmVjMmViZThhYTc4MTAxYTg0ZDFiODA2Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/
ZDAwMDAxCgpsaXRlcmFsIDE2MTYwCnpjbWVIdWN+bnpaKkZNZXomWjFDfXA7YHJuMXs1PyowamVT
QE48XihWNUQ9TjlZR1JsfCROKkhTbVFoOEZoJEpFKwp6UVl0NzhnZHFYcDEmUnp8UCFMRm41RnZ5
aSEyfTJpMGxwTGFtZG9uKlRkU19GX1VvQH1gQiMkVEoodHtfWFljYm8KeiYpKXVjKDl3U0ohWml6
M1I4JHU0LUx2YkVpcG5mcTZfdUlDPUZiSHl3fVphRjBBNGwpKmN9Vi1JT0ZBVSk8NXZQCnolSiF9
MW9eYTJ0LWQ+KWI5YDQ0YyY5PDRGbnIkfldHZEpJNjs8ZXE+XlIpTWlHWUtqeCk7VzgzZVJDdnUj
c0hAIwp6RCVuUmlaX3d4NVJ7WXNrQDlXc0VlZjBeZCZYNGw1P09ZYVE8cXo2QzkhYHNURm5fMSp1
R2Mzci1qenFGeV5MXmgKeitNS3A5fEhHVzBqP084I2thfnF3PV8kNUleel5waXRDUmglLWw2aGAr
Tnc8fDE4Y2BDejVScyNoLVFCZHQqPmUxCnp3NyNeVnItQGRwR2pzTypXeEJSdURsQDx2X01DN2pD
anU4ZE5CUUJtKWR7eV5sfV9FP0s3cio2JjlmS2o7JG04KAp6cllAUGslczkrITdQTXRQZCl0Z3p6
bzFlXyk9aig1QkhofUxmOEBWKyFXfTQ5QG9ScF94QkBNUEAwe20yY3JDNEcKelJVZ0xRb2c/RUlx
RGstUXNfc25INChzaERMYGA+UTZkfCFIJjZ3TFk3PDRQTTwhbkt3RllgeWJMNDVQO0pDXkU8Cno0
PFR4QTArWlpiWlgzbjR0cj16YkdFSWZNazgkZztaNTsmNjRfTlJLZWc2RXtNMVBITERgZG56bWhU
JClrb2ZeZwp6OG8kPyhDMjJgdkBtYH5rZVB0VX5KVUVqKVlpblVmXnQ1TGdueStDU2E+e1YhWiRW
bjdZZ2B5TSEhIThzN1ltQEUKel5laV9IOCFBNHdAeE9ydHw4T2M4Z2tiUSYpKW1tY3k3aX0yMW1S
RWl7fkIhTlg3S21zVWhPI0cxXilESlZZcTh3Cnp0a04qY0Jre00tVkpoSnJhfkEyQUNjV0EtYnhv
TFVUeVokfTU+dVdfZyhEM3k1emdnSShXNCpkNXYtWGNDT0BqTwp6JU5RKnhkNEk5ZENheCh4ODxg
YmJMZ2JXSD5aT05qcFdwOUJiSjI+QmpsaHVCPUhycntTM3w+PFpfPmNrdD8lUD0KekxucTJqYXps
azxydWdzPmo3IUw+NURvYWc+PlcjYW95M2xXeD5WeVZSby1xdkxZK0lpJDEoZW9AYSU9ck5kdUk7
CnpvaGZCXjxWKURJREFYZTN0VUwrM15nSERqfDh9LXc/KWBtd3VmTGk0IyY+N1RuNitvdGZmc2ZW
QWlmMUNgcW08NAp6M0FDfnBNMChBY29VZnNmSnpSSDZDOEo/TUFRYjJgd2pleVZAI244aSNtOUNQ
eE9JWiMhOzg/JEVEK1ZYeDZlZ0UKenp2NTVlKTt8VTgoMUtSaEVIZktTc3h1PF9zY25mMyR9en5k
RlgodkYpI2xEZDJNNVg9U0hvS3VXU2VtcFhUIUokCnpQJnN0OF53OEAjdns2aHwpXyRGc0VOe18o
eDcle0VyMD1YZGJ0ditFaSU3SFJUdC0jYTRqcVFXSUZFPjBPQSZoWAp6JjxBX1A9cE9wZUtDdm05
QU50OzhAQDk4WjsoSjc+eilFX31vWW07bkFoODx2JT4+YCg7a3RNNWU+TSFwVld4R1MKekNte3FM
dkAyRlFsKHc+VzhnOWNycUhYTmVxNWxOPzJ8UDckcD0hOSQrYWwoP1JOXyp0U0RvNWNMa0RrJlVV
d1hKCnpWISEmM1YyR0NPSmtJV0RiWWNzLTQyOUpsQ1FlTH5zIVMoI1okV3UtbC1Ma2dITEY3Rk4z
b1Y1aG58WE0qWV9+Jgp6M3B8fElQdDBKSkk2UloqTTUtdW89USMlR2x9TnFHUEJ+SndfZnwtckEy
bUhBQWxLMTloPztKNUpefXA3Zmw3RWUKejhYZWcmMStQPWU2ajl9Iyl8fmJqQWRlMkV0OGV+dER6
elJmbFB2PUNXYnJoN2ZzRCooUjg0XkpieGZKSUNBbnxzCnpMZHBGYTxvMFZwIzZHQ3A4N2QxdiRI
e1hTQXZwQntmYnxhVCpaezRwYzcwY2oqQDJ2cz9YNytYPWokVDE5cXNPKQp6SWcoV2NHYj5zSmY4
fFIyP2o2MCtvdGVPUiRWQFhpJlVEZ2ZlZ3VHMyVoc2xSYD1SI2heRkhiK1V7ZiNfNC1hKzsKelN7
fkFAcko1R3wxR2JgK0pfSmV8VlVAWj9IYmU0fGxhTWZVPUs9TzJ0I1NSQUpBMy1BcWB7NX41empU
Ymc0KE9CCnpTR3ViUUhMdT48ciNyMmhrRjdFZT52eWhgS3dvcUllP1YwSjtmd1ZCU0lSNVhHVjVL
MXE4eGZXcl9ZSHdQWlUqPgp6S2tzR157YztJQyFCfXwyWX4ySHk8SzsxZzc4QUZ2OG4tZH1CKkp1
b3w1IzFXYXJKeU8tcSYmPU58LX1tJnZ+eHoKejdWX29Md2FXNyZvO0dYQndmZ1g2S2w1NjNyWmlY
c1hCY2d7eWoqSzMlVih7K3RELSRuK0FafHU8SGNXMU59byFJCnptfEVUdGBxJjJCRms5SE4yQGZs
entgSUwrMF5YMjdlNX05ZG4tO019dXYwMnUrJlF1WHMkOD8+cHFQPWlIYkowUwp6cnJ9Ym92ZWhp
KCh6SmE7M3A4eHlvPEMxTk4kM0RiN1k7MyR3eSRSO0k3dXB4PX1wMWJfUzZMYyQjP2Z4SyhOKVYK
eih8Y14xS2IkVkFEIyM7R0N9Y2Y+ekhHVFg8YzNqOSFHKD87O0hCO0QrYmQjSlZlcG5uMk1IPWFW
QUNzSCpRKjQ1CnpwfTRFY2lUKFUrJVlueyN0Z2x3US04blNjNXE0bWxJNCZRfj0hPWglWmJxTHlk
cDc0cjJKTGNlMGhVKyhURGwqJAp6TDw9WUJ1Qm1rMUtWSGE0PUE1eiNWN0luMV42OyZBWVJJRGVB
QCkqfFY8VH1NaU9RbFBFVmFydjFFZlcmanhPSHcKelZlWTI1c1RkWm8xSkF1V0JXVlE2KlNwfWs/
KzBKSlZHbXtTSDR3cTUqOVFudHo4KFktSlhIQTJ0TXlaJWMpU1B2Cno3SXdXNDcqTXxJZ1dxQ1B5
S2RMPXNkOURmRC1mPUFmc0wrRXpOKURraHBBeiVpbEcoNT4lfVAtK3A3flZLWlJSYQp6PHtLQHYh
WFhTfm1OcXI4O0teMjVTYFVMT19mY3pONDQmQkRoPiVoWXh6NDM+PlpFZyEkQjBSMmR5SzBoKXk1
bHMKeiRZeHhjbkBaJHtacCMjOWd0QlUtSDlFVnBgP1NaOU9fJHdwJEp5ITN0STZxSFB4WiZSSUIp
ZXxhTUBXdGU5MDVJCnozQn5RYXJfNmVNJG5uTT8xeWUwLUhtbWU7VnxCV152aExWT2J8MitCSU9o
PHZKPUhWZ2EhdVlNYEZNKm9pNHx1OQp6ZzRJWlN1QENTN2k8dkQmcSZGR1AofjhYZT5MJm19dX1T
Rng1RXZ5SlBwS3M0IyU1NVVVdHExT2hIVzw7ellqdXsKekYkUlBaLSorbm5nNUY8eEU4Q3opcXRA
RjtDMmBpUDVhVD9DUGIkNk1gPStRQU53JDA/P1ArcXBON3ZoWm9NYzFqCnpiOHVwK0o2ZnJpRzBm
JERZUHNTaz5aeEA1N2ZnKlo1P1dOPyNJNzx4PyF3di1jYHwrQl5FNXI1YT5UPzAjaFl3MQp6QTxv
ViQod1lxSFctJGhrKWU1cXI+eT1Sc1FITmJBWDF3KjFYPiUyJF5oPTMwWlV7dnxBfiZ2eFpJI2V2
SWw+NXkKeik9ODh9Vz85QzQrPDtzJU5tZXVgK1NuQXkyQ0dGQ1pXOT99cks4eTxwO0BAJkJveVRo
VDtoY3Ixa3U7MyFCZDZUCnpYP3l8ZXFfUkcmbm8lXzRae3M3TWF1OT5HM0UkWVpabU9iKFp3NWMo
PUghRihwcTA2Xlp8PV5XRm54QGljQmIzagp6NEdaSWpzaCM8TDEoWDhNMEpyaUBZYUgxLW00bzEt
OFRWfmgtazhjYStxPGcoQ3VpMmo4UU50WjMkPEw+UzFhPHkKel9SWHE1JjZsOSZPUD8oN1pVYi1G
Ulc3Z3k4U0xfO1NLWFdiPWJTZ0QrK0ZPMSVFP148YzN3fFJiTHp2YXduZS1LCnpxQSRDdFNPZj8r
N0c1SSVBK35KXm10WWRAMDZ2MCgofihxYSUqU3MmNjVgbE1QaHQ3cUhiT1kjTGEzfUlCPD1LfAp6
UXN0eG1wYnBObEtnRSo0XlVOI1hJdSlCNEdmUDF0YH5YalkqclE2Z0hsVUE3cXJJVH4wZXthcFkh
UFBqYGYyK1IKekFrNWt0Um52PDNBfHI0SnY+KHwkWkN9WGpDNW53aFo7Rk5zQHUlP3lnPEQ1Um07
K1hDQl85U1AyKUYmUCVVRlc/CnpNeDhxb18tRUU2bDMkPSZjT1Q0QSQtPldnJG1RPlFee2FEbmN5
WG5HWDdCc31hQ1RTKG1lOVBCUnlaeiFRfWYzQwp6eCNeWHZ1TC08eyUoX3kjbGFpWE5eSHNBaVgt
OG1ETnxKdFEzMiEkcFdKN0A0I25NU1BMNCRPSiFDJXN4JS01ejUKekRJJX5uO0xUQ3g3eXRKI098
bD85XiRQWWBKZ09laXMtKW1jY3RORl5SayQyX3k8PjJoT2k5cXV6MVBiRTNuPSU8CnowUiYle0FU
Umx1Zk5jWn1kQE9QPiQ8MGt3YV5Md1k3TVZOaDwkd3hXQ0dTRD8+aFN3ST0+YS1CRDxZZ0p4U2JW
Zwp6JmV6a2ltWHFzZ3ZScVNjXjthVTkxM3hkVzhjJjdBUX4zaHF6Yk1hQFh5WjhGVHZzME5walMj
Q09RbnhCNX5UPUAKekU8KEAyKXpXdDxtK3VrTm0oVV9Sa0glKHVWeWtwc2J1T1hCYn4rbVFWMTFV
KmVpU0RrY2E3O2glSDFZKHgjNSN7CnpRcms/cD1aMHR4ckEjWV43clJAOFh3ezE5ajRpe3E8Vyko
dTsoOUlIN2k7M35TdVNWN0J+ak5JPkFIT1U4ajhmfgp6S3czZkk/V2E+aFc8M3h4Zmd2ZD9wb0NC
YkRSTyp0YihgKX5CN3F9cD9vfHVNITNFR3QxVn1iUlYkfUpvUT5UQCEKejdSYm5DKk4yeTtSKkZr
TitPQjRuWkhGWkEtQl4mQGVAWCspQmQta0U5SzVhSVU3LVVuZV9qZFAyYnxIVXBxSHtvCnpiZj1O
ZCE/UC1xbXE7RzwrWU51NlRxJXd6cGAhdD9hTlEmSHBDZlQtVSgxNXwzPHE5R1I4XyVDVVFTZTlm
JCo0cQp6cGxQKEZjNmt+b1pKYlBjOWV5QyRland9VGArVTxGT35vRFUxeitzJjtwYktPY1pUWG5k
I3klfV8kYkJrNkh0bCYKemI3VXJUP2s7PHE0YkplUUAyU3d+NDUrKkRLWWZ2SFZwMUl2aEtkPlMz
I0Y3TF9xKWM0NXk1VjFPXkMtZyRgRVNoCnprMWs9O09PfGhgIUNBMEhmPFo+NkpKWkNTLUo3IWFS
dlR0RkU1OXpWJUF3N3YjfUQ5MWtZeSlwUCkmKjNrQUE4Kgp6UiZPamsjKilOV1ZWUSNycGsrTVYq
Kl9XIWdNK1BrXnViUFBSc2tHYHZ9REVXJCU8Jm5lMWdBckk8OGQ3REUtMCoKemIkSXc0KlFPUVVX
dU01QmYhYEFVI0J1Nj8zb0N2SEBiX30+MjFxOF8tYkRnS0xDKygzM1QhSWpGTSppNjd7M24hCnpU
Ykx+a3BiYzRXRiRMUWhHY04qMiZlY25SVjU8XnQ5aUNTSSRjRShCVU5iRD12K1QxU2N1bWRDc28+
fn5QKnVNTgp6VWRxZE4tdzxfe01MRF9MN0IhPis9NDBUVHdGXnJ6YSpPVEVMUkZ6eCg0cm1zWlcq
NVRfeEpibj9kQTcxWENxTkcKem1xS1VrJCYpQUopQW87QjErWmZAO1NaUVRlJUt5KjUqKnttSmwp
RzU4MGVvbm1jbmFsNjR1bC0pPUZNYClUUXlzCnpKXnJgNUVxZiV5a15VQmVAbGsqQEsmM0laaz89
aXVEMkEpfDdPVWohO1hHNF5eMGY+K2NiVnBXRGArTF5FMERxVwp6KFhGYWU0PDZuTEJHfGUza1Qk
ZXB3KnFBRkFeMVNWUjB3VWNBY095dTIzVnBzPFh2bFpodGJoZVBqWSZmKkxTPjwKekVBdEl7SW80
Y2pXRzVQTHZQcGRgakEraEQ2eV9DcSU5dn1LcT43PigmOElZKDFVPU5MR3JwelpucHt2K3F9NFN4
CnprJEllaTk0Nz1aRiUhQldEQ3loSzlCVn4+UmoyaUVNOERQZSMpMj5nIUwtMVpOZUR6KCgmOEEy
ZDVaN1dTNGpvdwp6eE88bjFoI287ajwkSkJpTFJMJH5BPkUyWmMjaG1QfDlUZjtMJX1ncFZlKDZ8
MSo+c1dHRzcxXztIZVlPejZGdGIKeno1SkpuZmxOb25HXjRAeFI0ajwzS2lldHxsNnRxYEskUjIq
P3FAKjFLPSgxQTVHIWc5TCNQVkoxTXlkVnZme1BGCno2bERMfVRqaVdCbFJrTSMzbXdZbjUkSzJ6
bnFAS0RwQXZQKjt4O0Z5ZUoqb0Y4RGgoOy1tI1hHWmpvWmZoMFoqRQp6Vk5FP0htN1dtQyY/ck9Y
NDQzSCh7UiFMe3BqUG5mQkY4IzNTQHppTXVNeUBaIVZsNlNRXzB1fE4rQGM0Sypeem4Kej1SOzMt
T0w8MWw8WkU0SD87TE42JTN4S30oZTg/aDRiPSkrWndJJFYkPUpJeTQ3cEU0O350NyVzJWJpSkB0
KD5KCnpwPzslTVVRdys9Q2FieVpxb255cmohdD1LdmRvYFIpIVVjPEdjKGJzO0d6K1R7K1VgeTA3
WVNpM35nN3xobzl5SAp6I3JiQ3B6YHUtZUZWYkNYK09pc3w9dHFFS2JWUDg7MHdVWHt4KnI5NUlI
P3VsP2xXZjJRNXNwbEJpdFohNDNifFUKenAmWG44Z3o9byljVnxOQGtMSXRuNz5wciVaVkQtcnc+
Y2Zkaz5PRCViPEJpMlppI2wjPDY/fXR5S2pqKVVBejRACnpScFpQUk1pO1padmo/JnMkVG9Jbj9W
ciV3JEZIQCs2bCZXQWE9Yk10LTQ0N0xiSUJPc209YFE+ZihOakpNJSNaaQp6Jl9UZ2I8Knhtfm9P
TCoqIVQpeW9WeGBDejxtRVI/aChTRlB2KigpMU0rR0swX2ZOOXFNWTsmJW5eM2Z0WH1FJCEKemAx
PyV2My05MTUqJU9jV0g3bCE1YnxnRno1emNuTHF7ZC1yQkgzdl9eWFJxJFc3KWVRUl9kXnpGRnJI
WCpiUnNNCnokaWcpbm9Bc1JTLUk8SzRjJTxXYFJzTDJiWFdzO18tWSREVEtyOHhDSndPfD9LSHok
e1U2Yk0ocDxOI0hrKCEmaQp6MSNjTUFrTTFpMEJ6OzRHMjBYdmZBWjJYTCtLSWAxNmxTZ25mdWpx
cHF7VjRgcXYqNVgmRXBmR1RrdFBZbHVELVEKekt3RTFVb3RvU3FEWGRwZ0BGMHlgTzs7MiV6QVBy
RiNHbj9aQjxQMUpoRk5WNHdjKnFAMlZSYXJxa1U+LTMhJExKCnpgNFUkbEtYRlRzdT97fm5SJkky
JUh6JXtzVVVYPkUldVQlX1pBYC1nUit3TD9YI3J6Z3d+QT8jPkJ5PiEocSFIbgp6QGhtcUI3UmVM
amRFeVlyXlZXWSlvLTVITlYmPHJBcH1KVW5RTz9tUjxJdVZiTEApS1pKMV4oWj1QZ0MzYnkpX0UK
ejkjUEJuQld7UX5JZE8wYFpadHAqN2gpYnw9fDgmdmhOeFFub20jRnUzKExQfVJtQmsoVzl7enw/
ZWgoVlhWJjZPCnpMcXpxJFZgQDBWKnM1OS1SVE8tTGB2THV5ekxOOWZBUzJRM01uN1Q+WGUtZH5A
Tz9MUDl5UShwSFMkKj5xb3Aofgp6e3gqWGZGbz9tZ1V3aXtxcmEofXV7KihxI19GQGpkJXhzeSVO
M0NmX0VNdUMzR3JCS0Z3SDh3cmxjUD5zVjxycl4Kemg0Q2BfMl94OGw2UWZvaHMwNVp0WmlVeWto
NWluMEVwfFBxSFJgU3w/VGZXM3M3dmpFNisxRmctUHM/RVZJPDZMCnprIXg4Kj9PQm80Y1F+Jk5o
OygxfUpPMHB+VXpTLXx2SmxqamxWZnlleyohYklyOHZHYU09fCVTMlA+dmd6RzU7cwp6IV5jKClT
eHBmZ0MzVDxpUGhhJGtlVG5RUmAwZzJIdGlWdntER2orSGRPM0ZRdWBvUSVQPyV6ai1Wa2xNRCl4
I20KenYkMkRXeWV2WDNtTHhDVzliSX4kZ2lTVUhYXk99Pz5EbjUqZzkwfTAhRn5PVDt5Uno/PjZl
NlBpMzVGdzVHdV9qCnpSdVVtWFhxUmlMQCpGUkxQSmByJmlVez4wOUVYdWQwQil+VTw+WXczNipv
eUAjP1Z3VSVCIWxFQ04pP3FCZDBPeAp6UGk0dkFncmh8VkxaRiNGU0x3R25adkp2d3IyazZPLTdw
M3tFKktNfHZ1SE08KSorfWh4bEU+Wm1qZSZ4TFNGYDYKendyfTVsa0VtfHM4cnw3SXFgKiotVnBO
e3JoUjZiPCV1ZndCYTNVeXYpWUlpZWgzRTM1cUA7TDwhIX5ZM1dLeXNFCnplSjNOYnQrbjtHcDtz
P0lnQDxPLXcrdGlWcWpwd3MzaTFCcFJmbGFiNyQ1bENyQ1BaIWYtcTwqWGpeR3RnZHdDbQp6WF5w
MWJaKXA2ZEp9ayR9UG4zUmNDdWxiUmVGaXRzbC1LZm9qVWNgbTJeN25wKGZ9OEY/IXhgTUpOZyYx
VnVldk4KelN0IT1OaUNXfVMpJUt6d0B9PnxgPyEqQG5ma3VUbFlYVnJ+OD4qeWw5eTlycTM3bEt3
KWloa0hgZWFYQk9VIUhKCno8b0pMLVNMIztOT1glZjNtNT9PIT5paEM1Q2dPKVhubytCejhBaEli
MGxaflNLUFI8aWorbTMjKkNIZUsqSG17bwp6WWFWQUpaNVMmekQ3ck1DaiV7LWt3PV9TY1E8X2Nx
dGlvJD1xendzJVQhV1VmVWYjZj5rdyFlI1FEQjl7P1BXPVoKeihqUzM3JD16N241c1hgNEAzKVpB
Rmtffl9BQElkey1KMmsoUzZtMT42V3h6SWRWI241VS00cEcwclpWSW4lViZJCnpsajxaOCU2NXdm
dGBLRFoocHowYzg4RzcoUGJnQjZjRjQoS1FId3RNU3pfMU5VXzNXZ2pMMDdiWkpRc1JqJmZQOwp6
QDxUVTc1aTQxQ1NXR04pWlBfRFlLajdvbjl2U1YlKCVReipZRXRwNWx9X3hYKytnY1MhZylidUF+
dnBRR0VNMXoKekVCYm1kNi1vfGA4Q3oqbXEhWEdhanh5eFYhe3JjLWZ7cnNROzVPRFVfaW1RKyhu
KytFZld3aHF2UklOeGhpQzZTCnpwKHc2aHVpUE11RkQ9cWhkaElOWHdiZShPLSNjTUUoTnw2RExt
aFElXzhQN3N3ckNNU156SHFyPT5fbGtjKTNKYgp6QTN6cndeUz9Vb3xFR2kteFo4SXRVcUJXOFpZ
MHB+eloqKlVEQSpWR0ghMkQzWnhHUGUxeEQ4STNBY3ZyM0JmWkcKeilQZDkyMSNQRmcqJkNwM1hZ
QWg5Zz0yPStKSmNJQWFicnZKQj9aVVhAP3h4ZDJ+b1gtYm5jUTJPdDdkK3deQUozCnpuTj1PM1Vq
Vj1JSlpAVkpkXnlmYll+eTVzZ041KmhePyZOeVVQP0UwVGEmd09ra0FQSGZ8JHE1NnlBJGNZNVQ3
Ugp6ZFRaOzYoUWFkNFI0ej1RSGt6VzlCSHd9YUNZajJBeHwzRnMhRmRjRzZeeDF+PUtqOzhEVzdE
emh0RGNuS3BNcyUKekZ3fHIxMyR2cTErPjxNcGp1NDRzTTMjRGRsez5wVnFILVA+U2Iyb31iem1o
dz5MVXdweX5WVzd2c2ZxQEt2OVcpCnphKDtiK2xDd0wydERqZnVWSX56WktJbG9kKUtAJW54U2Mr
PGRCXy1qTHJLbGNXRi1iRV9VPG1+ZlRTQ3dsK3g+eQp6VF5EZWctd2pTVz1NT1BScVApXlRlJT9H
N0JHbGMqcFB6VTZqan4odD9AKkxWcnMqYnN1WVk+JmZUd2Rub1lFdUQKekV2MGs3PFZtdDJgcUBm
WEVLXkMpbGt6Plc5QVZsKzlnZ2M3M00kY2g0WFVRU3Qla1d5KGNSbyFWa0tCcmBJSE1NCnp3O1pD
TkJDSkN3QChOa0w4SGBnPWhYdW5ob0kwIV47a19AcmNKZGRXaUxZem1DWTZNVjJFMUBSJG4mY0VB
a1EyQgp6TVJ+NDduPX5RcSU3XnoybUJ6dmVlY147RG0kWT1aT3hwc3VuWlozTmByTTR0Xm4zSUtw
MjJhcDchZFcrXmkrQ2QKeilwMiVXc24wIzQmclJvNGBXc3d+ckZ6JEs7bXZ1bW1NZ2p9OEAjYWdK
YkckOUF1ZyFtOV5DYCQ1K29FOERebGdMCnp4WUZ8RTk+K19mOHBTPE4oV1lQVSliY0pYPFk1Nml4
eDQ+MkE9OWZnRWRELSZgITVARVFCTTYoN3JOSEsldFFAegp6VmZiSlRJSE9TJSlDSUJ1YFVZZTRi
dWwpKmx4UlMzQjAyY3Y1VyNAaE5kVDxtSk9uSldHeD1tfEVvPXdhR310TGQKejU3UFZCNFB7eGIt
bHcmZzdrZTJpMEhzYTM4NVpENTs1IXU8N3pvU3tAYUVkMit3Yl9IdF8zZ3JhQSVaVCFMVyEhCnp5
ZzlCRSRBK0wxWiVNRikmZlZEfjJCJWI3dmhWVnopJDEjT3J+a3RqOXFpc1g2enx9aSUzeVE3dXpD
ZiteSWg3bQp6OXVjX0kmPG5kWDAmQyNUJmJZOF56YSk4eWx3ZCY9ZVJvVD1VbjRpPCUhPS1qcjI0
MEAwRkptSk5HK2NZQFJXYm4Kemk4LXtSWE1LRUllPGQwODZgQ1o5X2tNU2JoQHVhYEhySyRkMUR5
c2MlTTRhSCVJRmk7YURkelVlKCF8SGhjOWN0CnpRejc2eVJ4KE4jVH00R09fMjVfMm5EcWJzWHYh
eTw/eCViTWBqQWAtJlZPN1hsaHBTJCgxKFlJXzEpSXNJIVlxSQp6T1lWfj0lZXhBS0tiJSZoYlFj
NSYwUH1nM1ZCb349c3NlVzgrMikrMnxMRX09RUgqfkhXd1k8Tis/TERhIStuUkYKel8wJmIqdllW
UWtKVTFQLVMqbkhPbUIoYT01PyQ2PjIpaz5OOzxJbmJAZFYzKW0qZ0okXlhDTUEkdW8pN3V0dEMm
CnpQZSo+fGZvekd+aWlSS3JTd3QpU1RzMzkwYFJfQmh8RlIoJCgzb2M9bmtAQ2YxUDJBVXNSYXV8
aio0O1Erby17Ygp6PU1zbHtMZVZmd3w3U3dTXkslYWZMWmpvJT4+cXtebGlCXnt7WFA/Z252N0JW
Jn0jSTN2UnM2Km1vWD41SklYeWcKek5sZ3xkKjw1akxNdlR5WVVSbmYoc2dSXkVFcztmKXV1fiVL
OHJXNWxEfmVVaV9yUTM9aWR1Z1dsak1TQXtTRzdVCnpFbHhKfUkqVW15Vi0hLSZMJVU7c1c+VF58
V3YtUjVxZEZMJCQyNEh4P0JuQ305WVViRnlgMGRvcEFLaEZvMXxOSQp6JUxEbDBZdkQpJXEqSj1W
V2Jqc3UpP3VTNTZvO0ZHYzMzcjVhc3o3Um9ONVBGZ1FSSzhGdlE5SihwIWMxcFpHdkoKekhefG9e
WjRReEY1TG1taHNXcGImJVFRdk00Tj84MD58SSE3YmRIPW4oblBzT0dgYlRFaXpONkRiP0t3S0pP
Q2UkCnpKNGYwUUltVHxzclAzK1IpR005aihRPTZzYD5YQDlIa3pPcUh+USMpeUUldGlEbWdUdmpk
bnttSzNiTEYyRjhOdQp6QG0rKWBSYm04Rl81cilWQiRPRjRpdT1nZUB0ZG5+e2UoI2tvMj9UNXlk
ZHBGPHAkYz9pRSpYWlA5e3FfS0dPV2QKeigjcyMqZD9zOChJcjRtMUNaQFllX3w1QEw1WnpXejVa
UW5VcUZpTnQqc041WHpua3BAYm5UQnZOPFBLbXt1SUl1Cnp3RXJKWjBWQFQmPzx2fGU/akJ9NDB+
bEdxQyl9V013PWFEbDklPyUmaG02QkY+VzQhczIwK2Fud0t6fE0oNnRaQAp6WUEhVldXJnlOdjA9
Vl9oOGhwbmZFOGAjLUdDcCo3IU0tVT9wailSRDQrKU5LZEpyYU9mP0xsI2FCd0VIYXVoKUYKelE5
IUZUYlUzTWohVDNLamJATkcwZktTbVJwRntNQXZoOHotSzhGWm1uRSRWQyt2aTA0IS1uTU41UGM1
T1p4KlVACnoqenx3UmskeWhXeyYzWHhiQkkyTj1yZVd2YiFIfn5HclJzUUt0NX08fE1GN1h7fHt5
Q1ZDZTJzLSM/N2plUlR4PApSbXZAIURjODxIVWNBV2JEZSpqR0k8dW17UQoKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXItY2Fj
aGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLXNoYWRlci1jYWNoZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGNkYzU5NWQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLXNoYWRlci1jYWNoZS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSw0ICswLDAgQEAKLSAgICAgCi0gICAgIAotICAgICAKLSAgICAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXItY2Fj
aGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1z
aGFkZXItY2FjaGUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODdmYTY1Ni4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItc2hhZGVyLWNhY2hlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi08IS0t
IFRoaXMgZmlsZSBzaG91bGQgdGVzdCB0aGF0IGN1c3RvbS1maWx0ZXJzIGNhY2hlZCByZXNvdXJj
ZXMgYXJlIHNoYXJlZCBiZXR3ZWVuIG11bHRpcGxlIGVsZW1lbnRzLiAtLT4KLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgY2Fj
aGVkIHNoYWRlciByZXNvdXJjZXMgYXJlIHNoYXJlZCBjb3JyZWN0bHkgYmV0d2VlbiBlbGVtZW50
czwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFi
bGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0
KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUo
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAotICAgICAgICAgICAgZnVuY3Rpb24gcnVu
VGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4g
dGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0Pgot
ICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAudmVydGV4X3NoYWRlcgotICAgICAgICAgICAg
ewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvdmVydGV4LW9mZnNldC52cycpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5mcmFn
bWVudF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
ICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hhZGVycwotICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVy
dGV4LW9mZnNldC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBu
b3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAg
ICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tIFRl
c3Qgb2YgY2FjaGVkIGN1c3RvbSBmaWx0ZXIgc2hhZGVycy4gWW91IHNob3VsZCBzZWUgMTIgYmxv
Y2tzIG9mIGNvbG9yIGJhcnM6IDQgaWRlbnRpY2FsIGxpbmVzIHdpdGggMyBibG9ja3MgZWFjaC4g
RWFjaCBsaW5lIGNvbnRhaW5zCi0gICAgICAgICAgICBhIGZyb20gbGVmdCB0byByaWdodCBhIGJs
b2NrIGEgYml0IG9mZnNldCB0byB0aGUgcmlnaHQsIGEgd2FzaGVkIG91dCBibG9jayBhbmQgYSBi
bG9jayB3aXRoIG9mZnNldCB0byB0aGUgcmlnaHQgYW5kIHdhc2hlZCBvdXQuIC0tPgotICAgICAg
ICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2Uu
cG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVz
b3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVy
cyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAgICA8YnIgLz4K
LQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9y
ZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNy
Yz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJv
dGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAg
ICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9z
aGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcg
Y2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBz
cmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJm
cmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNl
LnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXIt
cmV1c2UtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZGM1OTVk
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1zaGFkZXItcmV1c2UtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCArMCww
IEBACi0gICAgIAotICAgICAKLSAgICAgCi0gICAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUzNGMxZjguLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXNoYWRlci1yZXVz
ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzQgKzAsMCBAQAotPCEtLSBUaGlzIGZpbGUgc2hv
dWxkIHRlc3QgdGhhdCBjb21waWxlZCBjdXN0b20tZmlsdGVycyBhcmUgc2hhcmVkIGJldHdlZW4g
bXVsdGlwbGUgZWxlbWVudHMgYW5kIHRoZXkgZG8gbm90IGNyYXNoLiBUZXN0IHBhc3NlcyBpZiB0
aGVyZSdzIG5vIGNyYXNoLiAtLT4KLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+
Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgY29tcGlsZWQgY3VzdG9tLWZpbHRlcnMgYXJl
IHNoYXJlZCBjb3JyZWN0bHkgYmV0d2VlbiBlbGVtZW50czwvdGl0bGU+Ci0gICAgICAgIDxzY3Jp
cHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZp
bHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KGZhbHNlKTsKLSAgICAgICAgICAgICAg
ICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2Nl
ZWRlZC4KLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIGNoYW5nZVN0YXRlKHN0YXRl
KSB7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSBzdGF0ZTsKLSAg
ICAgICAgICAgICAgICAvLyBGb3JjZSBhIGxheW91dC4KLSAgICAgICAgICAgICAgICBkb2N1bWVu
dC5ib2R5LmNsaWVudEhlaWdodDsKLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpIHsKLSAgICAgICAgICAgICAgICAgICAgLy8gRm9yY2UgYSByZW5kZXJpbmcuCi0gICAgICAg
ICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmRpc3BsYXkoKTsKLSAgICAgICAgICAgICAg
ICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1
blRlc3QoKSB7Ci0gICAgICAgICAgICAgICAgLy8gVHVybiB0aGUgc2hhZGVycyBvbi4KLSAgICAg
ICAgICAgICAgICBjaGFuZ2VTdGF0ZSgiYWxsLXNoYWRlcnMtYXBwbGllZCIpOwotICAgICAgICAg
ICAgICAgIC8vIFJlbW92ZSBhbGwgdGhlIHNoYWRlcnMsIHRlc3RpbmcgdGhhdCB0aGUgY29tcGls
ZWQgc2hhZGVyIGNhY2hlIGlzIGludmFsaWRhdGUgY29yZWN0bHkuCi0gICAgICAgICAgICAgICAg
Y2hhbmdlU3RhdGUoIiIpOwotICAgICAgICAgICAgICAgIC8vIEFkZCBiYWNrIGp1c3Qgc29tZSBv
ZiB0aGUgc2hhZGVycy4KLSAgICAgICAgICAgICAgICBjaGFuZ2VTdGF0ZSgic29tZS1zaGFkZXJz
LWFwcGxpZWQiKTsKLSAgICAgICAgICAgICAgICAvLyBUdXJuIG9uIGFsbCB0aGUgc2hhZGVycyBh
Z2Fpbiwgc28gdGhhdCB3ZSB0ZXN0IHRoZSBkZXN0cnVjdGlvbiBvZiB0aGUgY2FjaGUuCi0gICAg
ICAgICAgICAgICAgY2hhbmdlU3RhdGUoImFsbC1zaGFkZXJzLWFwcGxpZWQiKTsKLSAgICAgICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3Jp
cHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIGJvZHkuYWxsLXNoYWRlcnMtYXBwbGll
ZCAudmVydGV4X3NoYWRlciB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3Rv
bSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzJykpOwotICAgICAgICAgICAgfQot
ICAgICAgICAgICAgYm9keS5hbGwtc2hhZGVycy1hcHBsaWVkIC5mcmFnbWVudF9zaGFkZXIsIAot
ICAgICAgICAgICAgYm9keS5zb21lLXNoYWRlcnMtYXBwbGllZCAuZnJhZ21lbnRfc2hhZGVyIHsK
LSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNv
dXJjZXMvY29sb3Itb2Zmc2V0LmZzJykpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgYm9k
eS5hbGwtc2hhZGVycy1hcHBsaWVkIC5ib3RoX3NoYWRlcnMgewotICAgICAgICAgICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycp
IHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpKTsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCki
PgotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9y
ZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNy
Yz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJv
dGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAg
ICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9z
aGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcg
Y2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBz
cmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJm
cmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNl
LnBuZyIgLz4KLQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhf
c2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1n
IGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmci
IC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMv
cmVmZXJlbmNlLnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdHJhbnNmb3Jtcy1hbmlt
YXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggOWNhNTY5ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdHJhbnNmb3Jtcy1hbmltYXRpb24tZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi0gICAgIAotUEFTUyAtICJ3ZWJr
aXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1peC1mcm9tLW5vbmUtYm94IiBlbGVtZW50
IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRl
ZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwgMCwgMCkpCi1Q
QVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LXRvLW5vbmUtYm94
IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hh
ZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwg
MCwgMCkpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LXNp
bmdsZS10cmFuc2Zvcm0tYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86
IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0
cml4KDE1LCAwLCAwLCAxNSwgMCwgMCkpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkg
Zm9yICJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWJveCIgZWxlbWVudCBhdCAxcyBz
YXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5v
bmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCgxMDAsIDAsIDAsIDEwMCwgMCwgMCkpCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LW11bHRpLXRyYW5zZm9ybS1i
b3giIGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1z
aGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybTEgbWF0cml4KDE1LCAwLCAwLCAx
NSwgMCwgMCksIHRyYW5zZm9ybTIgbWF0cml4KDEwMCwgMCwgMCwgMTAwLCAwLCAwKSkKLVBBU1Mg
LSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5z
Zm9ybXMtY291bnQxLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBj
dXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJp
eCg1MCwgMCwgMCwgNTAsIDAsIDApKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZv
ciAiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYm94IiBlbGVtZW50IGF0
IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52
cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDUwLCAwLCAwLCA1MCwgMCwgMCkpCi0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci10
cmFuc2Zvcm1zLWFuaW1hdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDViMWJhZjYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSwxMTAgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1sPgot
PGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENT
U0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAg
ICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAg
ICBtYXJnaW46IDEwcHg7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwotICAg
ICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1
c3RvbS1taXgtZnJvbS1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjog
Y3VzdG9tLW1peC1mcm9tLW5vbmUtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAg
ICAjY3VzdG9tLW1peC10by1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlv
bjogY3VzdG9tLW1peC10by1ub25lLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0KLSAgICAg
ICAgI2N1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1ib3ggewotICAgICAgICAgICAgLXdlYmtp
dC1hbmltYXRpb246IGN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmltIDJzIGxpbmVhcjsK
LSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLW1peC1kaWZmZXJlbnQt
dHJhbnNmb3Jtcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20t
bWl4LW11bHRpLXRyYW5zZm9ybS1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246
IGN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0K
LSAgICAgICAgI2N1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQxLWJveCB7Ci0g
ICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNm
b3Jtcy1jb3VudDEtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICAjY3VzdG9t
LW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYm94IHsKLSAgICAgICAgICAgIC13ZWJr
aXQtYW5pbWF0aW9uOiBjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1hbmlt
IDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0
b20tbWl4LWZyb20tbm9uZS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSk7IH0KLSAgICAgICAgICAgIHRvICAg
eyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNm
b3JtIHNjYWxlKDMwKSk7IH0KLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1l
cyBjdXN0b20tbWl4LXRvLW5vbmUtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgz
MCkpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8t
c2hhZGVyLW5lZWRlZC52cykpOyB9Ci0gICAgICAgIH0KLSAgICAKLSAgICAgICAgQC13ZWJraXQt
a2V5ZnJhbWVzIGN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmltIHsKLSAgICAgICAgICAg
IGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwg
dHJhbnNmb3JtIHNjYWxlKDApKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0gc2NhbGUoMzApKTsg
fQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1taXgtZGlm
ZmVyZW50LXRyYW5zZm9ybXMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgxMDAp
IHJvdGF0ZSgwZGVnKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSBzY2Fs
ZSgxMDApKTsgfQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3Rv
bS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0xIHNjYWxl
KDApLCB0cmFuc2Zvcm0yIHNjYWxlKDEwMCkgcm90YXRlKDBkZWcpKTsgfQotICAgICAgICAgICAg
dG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0
cmFuc2Zvcm0xIHNjYWxlKDMwKSwgdHJhbnNmb3JtMiByb3RhdGUoMGRlZykgc2NhbGUoMTAwKSk7
IH0KLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tbWl4LWRp
ZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50MS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHNj
YWxlKDEpKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0gcm90YXRlKDBkZWcpIHNjYWxlKDEwMCkp
OyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLW1peC1k
aWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBy
b3RhdGUoMGRlZykgc2NhbGUoMTAwKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHNjYWxlKDEp
KTsgfQotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLSAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3Vy
Y2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vYW5pbWF0aW9ucy9yZXNvdXJjZXMvYW5pbWF0aW9uLXRlc3QtaGVscGVycy5qcyI+
PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotICAgICAgICBj
b25zdCBleHBlY3RlZFZhbHVlcyA9IFsKLSAgICAgICAgICAgIC8vIFthbmltYXRpb24tbmFtZSwg
dGltZSwgZWxlbWVudC1pZCwgcHJvcGVydHksIGV4cGVjdGVkLXZhbHVlLCB0b2xlcmFuY2VdCi0g
ICAgICAgICAgICBbImN1c3RvbS1taXgtZnJvbS1ub25lLWFuaW0iLCAgMSwgImN1c3RvbS1taXgt
ZnJvbS1ub25lLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVl
ZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybSBtYXRyaXgoMzAsIDAsIDAsIDMwLCAwLCAwKSkn
LCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLW1peC10by1ub25lLWFuaW0iLCAgMSwgImN1c3Rv
bS1taXgtdG8tbm9uZS1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwobm8tc2hhZGVy
LW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwgMCwg
MCkpJywgMl0sCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LXNpbmdsZS10cmFuc2Zvcm0tYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1h
dHJpeCgxNSwgMCwgMCwgMTUsIDAsIDApKScsIDJdLAotICAgICAgICAgICAgWyJjdXN0b20tbWl4
LWRpZmZlcmVudC10cmFuc2Zvcm1zLWFuaW0iLCAgMSwgImN1c3RvbS1taXgtZGlmZmVyZW50LXRy
YW5zZm9ybXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVk
ZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCgxMDAsIDAsIDAsIDEwMCwgMCwgMCkp
JywgMF0sCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0iLCAg
MSwgImN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybTEgbWF0cml4
KDE1LCAwLCAwLCAxNSwgMCwgMCksIHRyYW5zZm9ybTIgbWF0cml4KDEwMCwgMCwgMCwgMTAwLCAw
LCAwKSknLCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jt
cy1jb3VudDEtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3Vu
dDEtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMp
IG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCg1MCwgMCwgMCwgNTAsIDAsIDApKScsIDJdLAot
ICAgICAgICAgICAgWyJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1ib3giLCAid2Vi
a2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0
cmFuc2Zvcm0gbWF0cml4KDUwLCAwLCAwLCA1MCwgMCwgMCkpJywgMl0KLSAgICAgICAgXTsKLSAg
ICAgICAgcnVuQW5pbWF0aW9uVGVzdChleHBlY3RlZFZhbHVlcyk7Ci0gICAgPC9zY3JpcHQ+Ci08
L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tbWl4LWZyb20t
bm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtdG8t
bm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtc2lu
Z2xlLXRyYW5zZm9ybS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3Rv
bS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJi
b3giIGlkPSJjdXN0b20tbWl4LW11bHRpLXRyYW5zZm9ybS1ib3giPjwvZGl2PgotICAgIDxkaXYg
Y2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQxLWJv
eCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLW1peC1kaWZmZXJlbnQt
dHJhbnNmb3Jtcy1jb3VudDItYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGlkPSJyZXN1bHQiPgotICAg
IDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3gtZXhwZWN0ZWQuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtYm94LWV4
cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJhMGNkZjcuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUt
bWVzaC1ib3gtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLTwh
ZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVf
bWVzaFNpemU8L3RpdGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVz
dGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3
aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1
NSwgMCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAg
IDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJv
eCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3guaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtYm94Lmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZlNjVkYTQuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3guaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+
Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfbWVzaEJveDwvdGl0bGU+Ci0gICAg
ICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENT
U0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewot
ICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93
bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwot
ICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAg
ICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0g
ICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJlZDsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
dXJsKCcuLi9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcycpKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQg
ZGl2IGlzIGNvbG91cmVkIGdyZWVuIGlmIHVfbWVzaEJveCBpcyBjb3JyZWN0bHkgc2V0IGFuZAot
ICAgICAgICAgICAgcGFzc2VkIHRvIHRoZSBzaGFkZXIuCi0gICAgICAgICAgICBBcyBvZiBub3cg
dV9tZXNoQm94IGFsd2F5cyByZXR1cm5zICgtMC41LCAtMC41LCAxLCAxKTsgdGhpcyBzaGFsbCBj
aGFuZ2UKLSAgICAgICAgICAgIHdoZW4gZmlsdGVyIG1hcmdpbnMgd2lsbCBiZSBpbXBsZW1lbnRl
ZCwgc2VlOgotICAgICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTcxNDAwCi0gICAgICAgICAgICBGYWlscyBpZiB0aGUgZGl2IHN0YXlzIHJlZC4KLSAgICAg
ICAgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci11LW1lc2gtc2l6ZS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLWV4cGVjdGVkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZkYmNjM2UuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLWV4
cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdCB1X21lc2hCb3g8L3Rp
dGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAg
ICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9h
ZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0g
ICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS1tZXNoLXNpemUuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggZTI4MWQ4NC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS1tZXNoLXNpemUuaHRtbAorKysgL2Rl
di9udWxsCkBAIC0xLDM2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhl
YWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfbWVzaFNpemU8L3RpdGxlPgotICAgICAgICA8c2Ny
aXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQot
Ci0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5n
IHN1Y2NlZWRlZC4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNm
aWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAg
ICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
ZWQ7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIHVybCgnLi4v
cmVzb3VyY2VzL3UtbWVzaC1zaXplLmZzJyksIDEwIDIwKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgot
ICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVk
IGdyZWVuIGlmIHVfbWVzaFNpemUgaXMgY29ycmVjdGx5IHNldCBhbmQKLSAgICAgICAgICAgIHBh
c3NlZCB0byB0aGUgc2hhZGVyLgotICAgICAgICAgICAgRmFpbHMgaWYgdGhlIGRpdiBzdGF5cyBy
ZWQuCi0gICAgICAgIC0tPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4K
LSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNpemUtZXhwZWN0ZWQuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LXRleHR1cmUtc2l6
ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlMzY2YTFkLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci11LXRleHR1cmUtc2l6ZS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxl
PlRlc3QgdV90ZXh0dXJlU2l6ZTwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAg
ICNmaWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMCwgMjU1LCAwKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8
L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGlkPSJm
aWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNp
emUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11
LXRleHR1cmUtc2l6ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNTkyMDZi
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci11LXRleHR1cmUtc2l6ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAot
PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3Qg
dV90ZXh0dXJlU2l6ZTwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2Vi
S2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9u
IHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8g
cnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Njcmlw
dD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNvdXJjZXMvdS10ZXh0dXJlLXNp
emUuZnMnKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgot
ICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAg
QSAxMDB4MTAwcHggcmVkIGRpdiBpcyBjb2xvdXJlZCBncmVlbiBpZiB1X3RleHR1cmVTaXplIGlz
IGNvcnJlY3RseSBzZXQgYW5kCi0gICAgICAgICAgICBwYXNzZWQgdG8gdGhlIHNoYWRlci4KLSAg
ICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYgc3RheXMgcmVkLgotICAgICAgICAtLT4KLSAgICAg
ICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LXUtdGlsZS1zaXplLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggY2VjYTA2Ni4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUtZXhwZWN0ZWQuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0g
ICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfdGlsZVNpemU8L3RpdGxlPgotICAgICAg
ICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgp
Ij4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXUtdGlsZS1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggODk4MDQ5Ny4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDM2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAg
IDx0aXRsZT5UZXN0IHVfdGlsZVNpemU8L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAg
ICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAvLyBX
ZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4K
LSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNmaWx0ZXJ0ZXN0Ym94
IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgICAgIHdpZHRo
OiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgICAg
ICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIHVybCgnLi4vcmVzb3VyY2VzL3Ut
dGlsZS1zaXplLmZzJyksIDEwIDIwKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4K
LSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0t
Ci0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVkIGdyZWVuIGlmIHVf
dGlsZVNpemUgaXMgY29ycmVjdGx5IHNldCBhbmQKLSAgICAgICAgICAgIHBhc3NlZCB0byB0aGUg
c2hhZGVyLgotICAgICAgICAgICAgRmFpbHMgaWYgdGhlIGRpdiBzdGF5cyByZWQuCi0gICAgICAg
IC0tPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4KLSAgICA8L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItdW5hdmFpbGFibGUtdmFyeWluZy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXVuYXZhaWxhYmxlLXZhcnlpbmct
ZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzJlZTAzOC4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
dW5hdmFpbGFibGUtdmFyeWluZy1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTUg
KzAsMCBAQAotPCFET0NUWVBFIEhUTUw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VW5hdmFpbGFibGUg
dmFyeWluZzwvdGl0bGU+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2Zp
bHRlci10YXJnZXQgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVp
Z2h0OiAxMDBweDsKLSAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAyNTUsIDApOwotICAg
ICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImZpbHRl
ci10YXJnZXQiPjwvZGl2PiAKLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11bmF2YWlsYWJsZS12YXJ5aW5n
Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdW5h
dmFpbGFibGUtdmFyeWluZy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0OTA5
Nzg2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci11bmF2YWlsYWJsZS12YXJ5aW5nLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyMCAr
MCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxoZWFkPgotICAgIDx0aXRsZT5VbmF2YWlsYWJsZSB2
YXJ5aW5nPC90aXRsZT4KLSAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjZmls
dGVyLXRhcmdldCB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWln
aHQ6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7Ci0gICAg
ICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2Vz
L3VuYXZhaWxhYmxlLXZhcnlpbmcuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMg
aXMgYSBuZWdhdGl2ZSB0ZXN0IGFpbWVkIHRvIGNoZWNrIHdlIGRvbid0IGNyYXNoIHdoaWxlIGxp
bmtpbmcgYSB2ZXJ0ZXggc2hhZGVyIGFnYWluc3QgYSBmcmFnbWVudCBzaGFkZXIgd2hlbiB0aGUg
bGF0dGVyIG1ha2VzCi0gICAgICAgIHVzZSBvZiBhbiB1bmF2YWlsYWJsZSB2YXJ5aW5nIHdoaWNo
IGlzIG5vdCBiZWluZyBwYXNzZWQgZnJvbSB0aGUgdmVydGV4IHNoYWRlci4gCi0gICAgLS0+Ci0g
ICAgPGRpdiBpZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+IAotPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY29sb3ItY2hl
Y2stZXhwZWN0ZWQucG5nIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3Qt
Y29sb3ItY2hlY2stZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1
YTI4ZGY2M2M0OGMyNDE3ZjU2MGFjZDc5MDg1MTQ4NTM5OTAxMDdmLi4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/
ZDAwMDAxCgpsaXRlcmFsIDMxNDE3CnpjbWJAdVhILSpQQEhRJCVRQmU/NGA2MGNGRy0pQ29tRUl5
PEFQfCtfckkhJGppaHYtIW0hTEBSeShoOElMVEoobgp6NVR0fTJBfXMqfDxpYEt8dUtWNyo/JGBT
JVN0bj1qR2tlYkxuUDw7RGxoX3hBU35zdVh6a2NiYHJKRmsxPmMqRVkKeihRc2U3TUUmeVc3MFEq
SWZPbF54QUhzZWJGYTdNQzlxaW5Fe1hIJjglZ1EtOCRqQ3sqdjZHUlBtOX0kfmxYakd+Cnptdzlk
ZmBtdjs9alFrU15YXkdieW1vQk1ZKG91aEU4YnF+fFBaej03bFV9I3pLQX4mbigpP2haLTYtUzVD
R315IQp6PntvQlEzOXM0TT9BKkIrVz5nPXlqUHgkO3ZYMm0wd2NmVV48byU3NWJmVjRUPVUyWnNh
UDZ9Qm9BaFFZazM2eSYKekBsYz1tMFNhQjFvZl9QPWMje3BTdjhiKHBobmQqYWl1bXpZSmlVND07
dTA8UUM5MTF4bSNGYEplYThMYl9BXmQ8Cnpze2l9S3xOUW95SC1oRkomO1AjVmY4WUk7PXt3YzZv
M2dBPXxKVDYoZWYwX1YlPlFkWD9weWIlKnBvKElxJSE/Swp6cFRiUjw/JmtsRyk0ak5OPVBCO3tU
KExUdGlGPWdlWUxpfilQQSVFQng1QmclTW8pa3lHY3hzUGV6OGU3bytXKmUKel9Ad1Q8Nz5CRGMj
QHdKU2JqNXBCNyUrMlJpaEwoPFlsY2NWSEQraHdoPHY/O19zJExLX0ZNbGNFJGRsIV5CSUVACnpW
TlF8aWUjeTd+ZC01bV9yWnJGJCowJnk0XiFOQGxeIyQjZmd3cyFtT1pCJVJ6RiFtaUgkIXJuSGtm
b3g7P2Q7QAp6SEk9SWAyfEpZIUQodmBZSXdnMns8NjxJTzdVNFk0NHQ3enx7bVo8IWdsbT9LdCoj
IWJRQWN2emlvNDA2JV94JSQKendaO1o7XmFgbmMoWWg3JEMqbSs+ZCowKz5JWUZRRFFtKkgheWBu
MmhWQG1vN1BlfklPcVJ2bnptQXM8dVc/QFgkCnooRUpgdyVVQHtYOXQ9ME4mckRsKDxiU28zTz9q
Smw5IUd2PnhOMV4mbyVHRE9XQiNncns9Mig5UkxJV3sjeDVKRQp6O2J2OTtMPndSUnc2dENRNkxE
d3lzSVc7bmBRUTgjXldWfHY1TUk4bWBKMn0kdlJsK0BvMXpjN3NIaGotTVc3cVEKelZAQTczR2B1
Wmt8SGUjVzMrdDNxQ31ZJCs3VmNDRCZLe3I5OCY4V0dpO0pEc0FfanBeXmp2aik+KSM4YClfY2RY
CnpKQnl8PW5GdTB2KCVYd1AyO0h+KSQ5UDBHSl44cEwhQ3BFdXFeaXF9TWQxa3F4Yk9KQVNeTnlS
Q2w+WkA2LXE8Wgp6PzZmJEZufkVyRSE4Yk5STXJKV2BwNXxiUVFWM0JOTiohOzFRPTd7NiZMPihi
M0NhU3NtI1YzTHZrZipANzh4cDwKeiUxNW1eWm1JPys1OGtpU1Amdj1nITxKOUkrLWZrdileM3h6
NF5DKyhUZVJUaERhKENxc29ubHZtVnBBJGFraSs2CnphNER6Rj4wbDBffDVORmR3cURmMkZTbGZq
bG96dD0mVSVeNHFNK3I4YWxVcEhwTDFUQmlEOWxWTUE+VDJlcUNlKQp6YFNIMmZtYjElP1h0ekp7
UUJvZS1CWlEyRzhZPHhAYlZXTGt7a3QqTj8lKUU7TWgoeC1tcEVsbEhkbFBFWnltNz0Kek9gM0dZ
QyVvSDtAKiQlT2tjRFdhOFNudlRAWUQ+ci1KXmZWNkBNXl5ObVl6OUFqdSZnK1RrO0oqaTNkTTt3
Q1VLCnopITdkKVlqaExqaUhpYjNlM21gd29pKXZ5OWYkKVJJPyZeP1B5dyVXR1gjTktNeSgxdmFt
Q3R9QjA8eHV1a2dtRAp6SUZoQF5xRFA8RG5BUkxJLTQhbyU4U2M7PD9qbFRRO09+bUJicz40T2A3
fk8rd0V7MTt7JSM/QEJ6ZXd9c2AkWlAKenBJaC02U3VKPj5wKG4rQ3RAdTtwKyZlcFl8TGlWSz9h
ITJxdWA/Z3smRHdzYVREVUhCYUZXWENWcUFxN3A+enRzCnpOJigldHl4RWdkVCFyTi1BTFgtfFhL
WVYmOUdDXldyJm5nWGc9dzM2RFR+SUA5Z2RfKGYmSW5fU2Y4RmJ1Y05DTQp6ZWJSSFEpcGxLbXpk
a041M1FvYE9gOH0oIyZwOFZvXjA4Yk17dXk/MUFlTT5Eb0VHZD5gRm1pdFVyZXRsWG42UlkKejQr
VEJuc3h+cGQ/I2dEe09xe0R9KCo7YDApZ0Q2SUhweklaVjA5ZCVqMDl5YiZscUVPb29PTU4xJFch
O1pwMHxACnppP25pT0xeWDVUOWp2ayk+V3dGMGVKbVNid0tJWWlnMHJMIVJnOW5vMVlfX2o9Z2I5
JDJDR15he3l5TER2ekFEJAp6P2FGdlVqMER4QkQzMEp+M0Y0THx1Yk5xTVh2WFJeUmdSfEl1O21Q
Y0BBN0pKb2V1Y29FJXJZMmZ3cWdQdTxRYHsKekl8MWdnWmVAQWx6VDZaNGB5KTl1LUl+cSp3Sm48
MVhNI0o9bUxYaF9NaDQ2UnBLdjEzelVeb2QzVysxfW9VRGpoCnozfE9SfmlIaEpMbElRPX51aThJ
OE4ySHw8SlE5UHIoNkp8Wi0oQmwxR0R2R044YXxqU1RYfVVFX096S2otQVRxdgp6Mi1aSHgpYWM8
aHMrZ0IoVzE1Z0hnNU1SfS0/cUU8XihkRFI3a0B3SDNEMzwyMDx1KjNNMn08QD5fNWszREttYmcK
ei19WEFVM2JYVURSNipFaiRYR2V9TDIyYjlqbGU4XytNPWZLPmA2WSZmdnhwZXdOVFVBdGpaLXJF
XkIrUChmUSlgCnpxY1NDJlZlUUc+aGoqXzF6KDQhLXpTdzs5Ym0jUD4pNX1oTzFXPXtkMHNzNG88
dzI3STdnVlkkSnJrdExPQWlRYAp6Q0RuVTB4YVAwaiZDQ0A8dD0mTldtPmQ4TzdiWH5pMzU9SXB1
RU53ZyleNXdqRmcpU3JeU0EldWkyK19JXzZuOTsKemZBPChYQnpBTV90Wmh0MHNxdSFDYkJPOGAp
QH1gQEQ4bEZDVyVBNHdTTXVKY3klZUpRJjx6QEBjXlQ7N1kkK3QrCnpyVENFRXNpVWB6dHAhIV9T
di00eHYlITY4dkAxPjhzTjs+MmtFQyQjdldlcj4hJUd6M24pSHMxJHxaMz81Kz82bwp6bDxpV3Ql
TzdBUjFuQ04rQkFLTHJUU0kxIUZ0QExlLTk9KGVaR2BESEUyZmhZNjsxNnc8YXROK2R4ZlJlZVA7
cDkKekpAbzFRKGo4bForaDFpYUtNRnItI18+dipea05leyEhPGFrVUkmKiNyOGFNOHQ3cyN6LX0z
Zj1wWVlzc1NHQWkpCnoqPkItP3hnSW14SHktaGcxMyZSaUlWVDh5V3tiU09uVSk2eFJfKl5qU1JK
TzxmZDZmTWNfbXJJMGg1SX0qX19GWQp6UGE0Tm1HeFduXmY3YVR6bnhSTWhYMkdheztOe24hMUUt
JU47QjVoJk8kQiolI0U8IzR7Zm9DNVljeHRneWU1K3YKemRSR3x7cW9MNytjeDYmRndYYSRlaHN0
ZSNrVCFYJig9TUA+Sip1cDJkfE5fPWo7PChsOyN2RGFtK3tGQF42V2hDCnpkMkxFQ0E4RUM4SGE8
Uk95eWpzdCphazsoXj1PP05jYEg5fXBvb3B0YGRrbWJkQ0BaK3B4YXBxQHRWMkZJamYjRAp6OGA7
YU9mTXNHIV5FfUhtMChZP0hlbSRrJVoqNVN+UVkmJl9tWkw1TmdrMEU3cUlfaUYoaVl7VzhKdVlh
RnB1b0IKeiUzJGpJXmpzJUJKfH07Rk12aElTMSpNdEtCRnV9OSUoZS11TilLZFB2dHVeWHchP3E/
PFBLZzB3RGIkaTFyOFZxCnpyfUZTPVhAa0NyTl5wPlR2TzZ8IyMje1NwPTFMdjU0M017eCF5JkVE
JEc2P0VCY0pRKFU/ISFwUm5+NEFYTTYxaQp6YD0yV1g8REBPIU0pWWQ9SWo+WjlQdzNyNENVdkRy
bmtWc3xfYlg1dkpHLWVwRUl+MmFMTS1vRmFWUyNhaH5maVAKem1ecDMlZW1JcVcrK1VsNCh6O2lL
Mjd+NytaXzUla3gxd19sZ0oxYjMtYmk3YXoofUI5JnloeCVfPSp5QFAqMHliCno+Y3lzXlIocmdO
TEd1N3J4R2xxZjtLVT1vOTYjTWJ1RHF9Km5QeV5oS3IjOTZQcj4kVypKZmhZe0h9JHEoZlkmVwp6
JCUkNmNsJjhzRVg7TlJDeyE5R2lhWn4kNXxLd3N6YzVITlFGaj1lLTlmLW9uQHIhP3Q0dT1DaFRo
TWA4aEQ4bHoKem92fDdtYyVtdEVGVSorfEN3WlN3VXxJKD48Xm5Cb3EhJThHVnFuSXpfZDAya01g
Z3g+NStSeFdVZCl7UjxCNlc4CnpWQVk7VWN4fGRgUX0yTVAyRksxMyEycmlOOypzMjBsWEtyfEYl
WiREeCRQVl82T2F7dnl2PkAxQCkqPmEhS3RqVQp6en4/Njh1UnMwTGRGJCM8ZyE7YmhNVl4qVmBz
QyFeI35Fe0wtZTNMfGZ3M3FtUiFoWn5yeytoJFJSZW9WcUZWNiQKenZHN2xYTEVTP2pEbEIqcD5F
dUJBO1YzKzxAa2pQbzNGPUpWRUBpKm9Vdl83KWxLIzdoZU1GZVlqSXsqenh2Ui0pCno0ZylTRjY5
ZzNMV1pkSFlkO0tuNmA5LWZtOT1EejVNOCNaK2UwLWpZMTw1RnVFdj43RlVXJTxZXkZuZkAmfnFX
cQp6VHZiSEQ2MGEoYHslZWVJcmRkQVNAd3BCemdGS3g/Y29YfHAjb35KVncjQ1F6TnYmUn5MdnNR
QnhxWEFjN0RwR0MKelVBfHdGVSRiUSRLRDNHKE1CN2B5STs8UUBDYVRCS1JzdUI1Mzw9LXQ5N0BT
PEdZQm4pJDFQU3EpeiNId2ZxIUN4Cnp2Tl5KITlYSVhGKV5oaCEzRD9QZSY4Jm4/Mk1xdnVwWjlI
Q3Z4cyYte3tGKnd2TlEzYntjPHg2WDM4QCRxV2gtcAp6d3VSPyNCfX47fTRqZ3NnbllgcVJaPEx4
THtlWD5PXmMrbCZtTE55UVFWKSghPHY0VV5JeFgkMkY/fXQ+YGRfWmYKejMzWikqWWVDMEA/T08o
JkpDR2pUKiMjZSU+RDshVDFNIXJfISl4d0Z6PD1QdFE9bytCOWtLTklJYCZGSU9YOW4mCnp4Njd1
NyVLfEdsKD8mUSp2PExwXlcoIVFOd1I7QypvQzBldHN0Pkd3e3QzcFZaLT1qISRfPUB6LUBnYGQ9
YTJZSAp6P0JzZHM0b3ZASmYtdyFuOE9OWiU4Vy1jaD43fGc/K19xSndxeVBpN1hFUj07M0Y3cztx
IVcwYG43Y0YlJEVPbEwKeip8eHkmM2xhaXc5SnNPbHU2OGl+c1gwbC1kYD5meXdJdTd1LV8zKWdk
SG5KXnBJYnJkIWVATmFSI3FnPXdsdHkxCnpyQ24mVkZUYFlOaExMek8pTGBMZFZufkFUJTc1ZCNT
RXxKI21he1JCS0N+YGApVCZOWkVte3x+TT5wWjgmUm5Zewp6c2k8IX4wOClvUlVJRUpLSiEhajU2
eFFRdndqWUlrSTUxUFNFPTIhcjVuOU9DPz1vREhsOGIzYGNpfTFyP0BedGMKemtVVFJ+VyQjbTJX
UyFaYm9XbHl6PCMjIzRiRWYpKjN9Tn5neU1yclkqOEdVKztmdVV1enIqd1dYKkBZQHt0VHp1Cnpl
eTUjNWc4WkBUdGt5eVI9YlJFIyVkWVlxUV8rKTxTLWJ+bXhjRlE8a29KM3hWTiNJSUxPSzVkbV5a
dEJ0I3RNMQp6RyUqSDRtZjE7e1ckZjUwYXt3d0NiPUtqOzhaSyY4KDxMQ3crWUxWdGV+bT5VRSYz
QT9memYlMktSQTc3a0JGVzIKenZzJW5AYGwralowRk5aIT1yKyRyazZkaVJfeXsxKShnOCNHN1Qj
fCQoKElNRiomdUpVez5oVjtVIyFmJl5qUmwrCnp2TGh+YHZfNFMhYUgrJHpGciRAKHJDVGtYRXs2
JGlMbntiamlSZXgrVUBKcWBYUGRnMmM+Rz9ZblYzMD1TK09qSwp6ayl6UWhNNSVMUUd3M1ZmVnJZ
PEh0SyN6IV8qSiE2ZU09UklSdEJaKEBPZ2tpPFRIfk5vP0leWEdwKSkjSGZWfG0Kem9odDlJaUtA
PnEjNkQ+RVNpQCZ2XiopdnxUQ1NPeEpCailIdmc0NSU/ITQwI3p3KDl2S1hZcj9hcmBGQTZuNTV4
CnpDVUxXTFojYlR1SiE+WEBoeWZCOyF1dF88SGJEZzIoOVQhd1VwZzRSPjVNbno2anMrVHdDZEZA
ezh4Y2BGO0wrXgp6ajA7YU1mTHI1fkMxMVZ+ZFc3cSZDbChSVD9leFNgd2IqQVhkaUZfOVZma295
Y3B2MSo8Xjs2MTIrdzNKNVZsQjUKej8/JkJMNG48VCFSPlpVS3hHaGZDJTRCUmtNMF5ZQnlGUDE5
SFpsVWVkPUJnS0xGajNzK1RPbVktZ2o9Q0JVKD5sCnphTz5gZFRpdkJEaT1TYkFiNDBLSDI1U25D
NTtCPTFqen0xUjFHQ0NudyFfS0B3aF8yYXcrI15eci1YbHBKS2pJOAp6dXJwTnBPVE1wU0lqcVZM
Q1JEM0dtWnUlOFROdGsyYjNuUyVreFJDe0dEd3ByWl53Rjc8PDVYTEQjUyY1MyotRHMKekdqNElf
TUdhSilPSW94Xz5rQ2gjYnZ7bn4hJkdePj5OV24mXnI4YHlzcnt0fXpqOGY5JCF3ZDM3TythRDZJ
LWxXCnopIyQoZHROdmliR09mUyMkYTEjc0pWTU4oKXJpd2VkbjBDMDYobmVweVUmcXZtbCRlZVVV
ODZJOXhBfD0pXzNffQp6XntkQnFeI2dXcV5yVE9pTUQ1dmdrKFM7OHlTZUElUXxxdl4wVCFoN0le
I2lxKEFJX3BTdiYjTmFpdSN4Oz82SGIKejUmZWRSWWJFfChDT0l8cUZBbUtiN2FxdDtJYzFvWXA1
XlhuUzBKK0FyOUFyMmlBQyZyeGVAMnQmdTh0a2UhWEx4Cno8R3Y8dGZVJClfTks2R3hMUz9aVSND
N0g9Wk82OEA9byEzfXgkVXZ3aWVKd3xecnckQkhpWSQyUz1XU3BkcFcrQQp6RkQwckI2MENyPXFG
eDhEJClRPCZoZjdKT1ZEZ2ArZ1ZvNlYmbHhxWlE4bWZGc2pIbThfUV8hKDA9WEFBQkQ4MUMKenBE
RHE8bWJfUSlVRlAlS29zVjA9cUM3NiM9ajZCN1BgTkpmS1BNWmxqKXBsdD9pVG1NKFF7WFB0TWpe
aUA/JWVSCnp3bEhBfTFhX3swWj9rMTsrRkB8bHJVXlpseUJhd01GYWplTS1SaV9vJTRPZGRAIysr
bSMkKSokX019RVF3NVBudgp6NkQyRUJTdVUoYDNtYkRVZERvJUVhQDFPWkU0cjQ1XkNYSmFFaT5m
V3gxPGszdnJScDZ0UVdZazdfWUt9ckJBK04KemlVa3l7Tjcxa1RAR3pqclV1cSs9VWlTUlhoISZP
O187dVNEPTxocyNTe014fmF4RGp7Z24hV0w2JHxIMF5qMTRHCnp6Um1zTzUzUFAyXk1oX0pIQURO
Iyt1VUFHd0IwVmNJRGR7Ql5OSGVMYjchNW9uMkQ5S1UjY25Pa2dubkpZKG1Nagp6KDRnZGtMR0FA
RipMWlpQQT94NyFVOUw2KmNxcGxGXl4/aVlmbTRDM1dvd2leTlpjQmJLQiNvZ298dXFuaSpaO3QK
ellTclBLPTRjUS03ZjhqJVNKb3RwOU9eV3NFO2hQaD5RKUl9KTxTSWwkT3p4QyV9d2NJTTdtUzZY
IzB+QT52MGV7CnpHNypgSDJxX0ljVUJIfl9jVVojQGw0UD1GJSpMXn1ZNW14M0RRX1pxYG52cFQj
Vl44TExSb3cmWCFXTz9lRl5zTwp6QCNIfnd3KndvTWFRIV9gN0cwdkd1WTZTJHcpZDdAYygjQ1NG
WXYkMkQhZXhgYWE5ZzU4TFd1aEpydCpfX01RVysKemVzaXEqVVFCQXBeLU5WSEZaUWpEMkBwPUNo
cUo0R2haUj8qdXNZP2Z7TkRSbip8fkcpREEmRnt3SDNZSDs4djVZCnpteWdkYEgqczY2VGlwVkln
dG1kfUVjdWNxNzFkZDteNE9GdFBYbHNHdThMcV8qdHVhbDRufnB3I09ubX1lOU8+OQp6ZWlCbSkj
QF8pMVV4WTRSazhNfVRuNXFeakFhdFlkUFdSdEhFJHZtViRIcXolY0RPJE1xS2RWbSYlWFV9JXs0
NDwKelA0MHIjcFVwbUZXZ31OTFZeTzdzcHwoPGZ6Yk1oYk5QNiNjRUB6VlV0fWtvTzdXfUxpZlhY
ajhadihjQnMpWUFpCnpuKW47TUtGaiM/K2ltQH5tZzl6VnthbDE/a1JAKVdzQzxxJChKQ1Fvc197
KXVVZjVCeWtFTGJkRnJhcVU0bXMmSAp6JEd2VEheTHlkPWRkJE43N1VfJWxyX0hIRHVnPCp7cExJ
bTJyNitoZzc8IzZVO1d7N3dIUmlsdXJDP2N1MitJKz0KejckRytzR3FpMmhgQTR5KT4hazY4M14l
KnQhfkIpSnkjd1QlK2kwKDxlUip8XzdXJlJDIyFieio5TmloLTMzYHt+Cno/RlAoJD1NV0k9aHRq
b2cyKnBqU0NXfDtSV31MSDhFREF2fCp7XmNAR3pRP2I3Mn1kV3E2VHZZPHMxKDQ1PFlndwp6RFRW
T1NoalRBPjlsMk13T35WZUpgXj8+ZyM0RW59dlk9M0UmS3VefmpmXnVMO29ITWtuIUJmY1dFQEhA
Rl8xdUEKekBmV1JYdXJOI3laWSk4WCElX0B3SUJqNXQ9JGlab3slKzkzMCVfZjBZYjZFZmBVaCNS
d0Q5d2JYbCN8a2NyanI5CnpkUUpORjs7Qnx9LSgpTEZWYmJmX3Mja2RXUTZQfUZAbEBSJlZ9Pyll
aHFjWnozR1BQR0llNDVtSF9ZVFB5dyRjbgp6P21MSGBzclhAXm1DRlE5UH5WODBpZzE9fHRiMT94
TCtZR0VUOGZGQCRuQSVKaG1SWkcjMzRzfjdxY0pMWndzPEQKej8lY2pQJl83NGpJfigxWjkyLT98
MjVBblJwK3dJcFJLNl8me1l8WEhgblJvcmtjfnI8aEg2cjYtX0UmSkdja05CCnpBKkRXV3tEP3NS
JVc8PGApOCF8fHFHdFlxUnlAcWgyJU1NK3R7QlhnSGhBMkpoKkxXS3NvLUpgVVc1XlgwckpDXgp6
M1kxMDhHPHYwWkZfP29AcFd+RW1gYG9ZfDdHeHQjKmV0SCRoZGVQOEcyak8zUWdeaF91cGdlcEdx
bnI3I3k0eXwKendlKT5+VGdjaDwqRVV4ejJZazBWeTcrRUpmNVpfeD4kPDcrZz9ePnNiQTxEWChI
QilTI3lmTXUrUTc1MmZiWmlPCnpiTldBZyNELWhhTyFicCVGUDJzOWEzdTE4UHp+R3dgbmxPeEBT
PXxxITdWM0dmVHFDdDtjLSpSOW0pQEo5ZT5nQQp6I2s7TFVNd0MhQjByS3xMJE1TTUxTI0hPRUMx
M1R2PmNQJEBOKHphLTJALUNgTDJuJmlNM2wqdmNLaGZxZ19uc24KemZQfmx8VTE9c0Y4XkEreEln
Z0RKZUQ1WDN0Oy1WejhJZnt5bjdqISVOWFNiWE4zITteSTFnd14/anNBPGE8clF8CnpadlMxJlls
VG5TO2dlKzxrdlhUXloqWmo3bWdtUEhyNHpgWDBnY21MUUNNLWUrWTI/aTtpMDtTUHdHYUwjSUhv
OAp6eTU2cEchRzNqP3JrWn4wJlk4eDlRSnN+O19Ve3hJRzNNfStrKXs2WmshfD5xT31rR0M/IU83
Y0VfSFpOVW9ySCEKenpsRGIydGZuNj0yWUg2eWA9fC0lTlRGZHcobiMjNHdZPT4zVko5XjNzdUY4
aDxlaUM8LTw1VlAkdHhYKT0xRkNBCnpIQ1ZCNXg5QmExKUN2dns8Py07amVuZDgxN0h7djk+c1FJ
WSgmRkY0PWlOVEctKUspTD50M2xDaTxIS1NJVEB5Xwp6Ym9fO0h6Ukd0R0A9ak1lOWV1dChiMEcy
Wm8xaF9kP2RFTlZkTExxVG80Ukx5Uik0OCFET2VmcSg+Wms1WiFTNEUKeilpLXxCVkplPSo8bEZG
T0dlNnwrUHAxfjlUaGRNIS1BYXxpVmlwSU5DZyREcFJoQGhue0h6OWh5aktVO1dmI3dECnpmTUVA
azwoMHcwRktZQ1pfeDRZenoldHlMS2wzcU5sUzN6Z1JyU0FmY21GKSEmJEl+SyVEQj9mdD0zRzhi
bz5GJQp6MnNnOEg5R0ZHKCR+KGxAMEwye0w/VDklUkU5PDsqUDglVkt1Y2ZmUyV6M2lzPTxNSW00
SzckZForVCZQSjsjTGwKeksyPzNWZkdlSio1QHUyVWVrIVFSYTA9RjslWHZacUloQDN+OyVrJSlV
Xn1mUDhAbCU/RnQxY19LVU4pQGp2ZXU2CnpiXkcwQmNKVVJXUmEka3MtRT9Ab2gwbUc7VT5aNnEl
WUZJUzxWYzFFJDtXK1JRYTkwVzFLNm9PS0AoVF52cz4oNQp6TmJpYTVwR2VzNSMlNmolQEJFSDwq
fEBfPld1KGxJWWpAS0M8NDREdGYjXzxwJmF2Q1BsOHwzVCpsbk5lOSM+RXAKemJlYiVpXj1XYWw9
V0UhejlRPUYpQUJKc2l5ViZUP2NFJDdBWns3Qi1ZfXNiRVl9Yip5P34qYms1YFM9OChFP0k0Cnok
VVozbjF0N20keTVoJStieUg9eCl8aj8hZm50ZURoanBVaTdYbCs/dXshdiFGWkhnPTx2c2A5Pk1G
bk9MPnh8Wgp6Xko4NEx7T3hua1IqPnF6cUJTM1J1YTg0eEhsQCR4VGlQRlJRcXl3M3NIMHNUZmo2
ZVZDP0w7PnhqejJFZUJWcHIKem5WZGxiXlJoYEA5YGtUJU9XSDZGc2M8KSYtXnF8YHhxUmkxaT8z
Tykob3l+VSpSS3E2cjlpM1Urcm16P19XajQjCnpHQ1VSMkZGKnoyO2lud28kc190dF5pKGJgaTJh
azlnRGdaOz91cmtSJmdgMjgkJEVjZD4hdGNPPWQza0lmJj5MfAp6UDl1VlQrfVJ3cjYqbj1JSHtu
ZkdjQkpRQTxvOCE+TWN5fUhhakhNYCVZTmFvJU85JkJmRlA5MzJhZHFAUXxULU8KejRZIVB4NDBm
dGFCJDZZMmV2b1ExQFFXOSEtWH54QE5UNzkjeDRVSDhlQmZLM2paM1dwcG9BYUcweC1RcU4ydm0m
CnpmQlM9Pk52V3dyPVRFOVUtRmFPdWtRN1lZJV87VTlSTEBiRXhfWCFqbGh8T0J2OCZuQW8kMV9j
YSV+bEhsK3hLVwp6aShBTXh1Tjx7bW4wSDdUM1FxPTwhQF55QzF+QyNoSm5eTlhfaSU/I3FVUVBo
cWJEIyZ4UkhibGxZNDtRMHRCcC0Kel9uemYjJGVgYk17VGNxdz9HfExePjExK2hCT3VlO0hDKV94
ST1eV0c2WWdJLWV+I0ZAdjlzRmk3STMtTHdpaCNrCnpGdjZYV1Vqcmw3QmhCX0Q/ZU4+cHpLKkFN
aE5HS2UlJkdnbmgxWnVHWERHNSRTJUpydmVmcD8kbUBNUjFiYkZyewp6cWUrS0w9MXlwTkljSWRK
YV9JTXlpVUtBdUkhIShgNHxCeChEe0A3c0dENUdfNVAzU0djPDhrfXlUMz13Q09+WXoKejZDaFEy
UWwrTihSO2diPFgyPn1KJlopfTdmNk8jamxoZE5NKVNEfkB4PWtpbCFyYT5oMXA4VkNjSnBnZHNI
czloCnpsQnBqP3N5VDRHI2xCI2FqMVIqfWRNeDZUSjV3b1hte3gmfWlwPjYzQD9eKyMyJH40cTRZ
JFFYKHB2QiVOU3tXcgp6eDEjRDI/RyVyblRmbDdiVWpaXyh7XnhfYyNndFV9WlFBK1AoZTdDcEVw
TkpfN282VnE1Mkdee1dLeEdncTFWa24KemJ0enYpQzV1I05pOVd5YmZGVG4mUzEtMmA1KVlpdXVE
NEdhVntAITtEJmB3YkUhY2IhMHR+RUQ2M0ZGQiRJcGtvCnpoa3d9Ry1xKGZyMHg+JDdyP1ZFMGA1
bGtHbWlpYSglK3pVNGJ0UlE4N0dBYSFScHY4PHJZNS1zbzBATXdLemluQAp6dGZlaUBuPmR3IWQm
N1J+VXxMaXB7TWZkQTxKNVo5RGE2O3VVSkJCSWxISHhxdi1qM2A9N2soYkltOCtBViZNQmEKemlC
TiM7cXY/UkQ8elIoaW1SX2dGYlZWPzJPfGAwdnRRRFBZciF7WGo0bU5NMyZaYSU5VWthUzwkNUFh
ZDIhP3l3CnppPUQ2Nis1RWkxdFk9K0Z4SlhVaHgmPjZxS2RJa1g/QTV8OXNgfGRxSjhoeyY9fCQp
NS1EKHxQVTRpQFR5TGMqIwp6SUZOY31fcVhnTUFyLXpxZW9DNnh7Qmp4IXohSi08Q1g3LXpkTCEl
e29AXmdsWmswVmImMntLbXpeQnQ9MF47VisKekJOVnVoU2lrVlZObUxRMUZJd1BzP3Z6KlF4WiQ3
UGpEWHFHZDFnLUtSJEtkKXBANG1uP3xeMH0jNEZDZUl+I3lXCno2TEhjNFhVTEI/JmpHYGBlPlZw
X1pONmp5aS1ATUlOQHsmQXojI3l0cDJrfV8xM3UjP3VHTzI1Vk9KYkJNOD9wcwp6M1VRNVh6OG42
VmN+RmljQTtKeEQ9TWBROWRQZzQ2Rjd8eFBOU00kNSphenJGeTsrMCpGU3FAek0lTkZMYFNrYlYK
ejh4TDx4NkJndUlsblYocC19cFBObkF3TEZ7MVglJjR2UTVWbjRrU0VTZiNlezNuempzZGRCNTls
PyFTQHZLdjBqCno5fm9QfCRRZmxiYSZrOEw3Nlpjd2R0YUNAZUNnaD8hZEM7UkFneTdtVmZPJit3
QV5uQ3VRfV9uaH45fiNkMnthfgp6VFVTMlp3KURyYDgmfWBebkliT0p4V1lXaSE8VXMtUnp8cm83
UEc0XiZkfGYqdEk2cHQ+VzF4bShmZyNAI1o/YEEKelREamppWWA7YlhwQ0whbmd5Q30lS2lYKStX
NV5sbmhhWD5VS0QyKHwrcT8wPloqdHUwU2pNc19BdV9lXnhvVT9OCno9UVB1YGImXlp0JDZoPnht
JnpXXiQpN31NVCVWPVhMMmIlTkQwVUdXaCMtfkVTMjE0Nl9ZPENtO2dTMF9kY2VKewp6OWlgNUZg
Q3h4K01OcDNScT95bEQ4aHIyVWBrcnxENVM0ST1ASnI3VEsmTFYqeGdBP25edDc8cmMyK3diezx7
fCEKejx5dCFGRWZzST8xTFhDTzYrSkhIOFZEIVA4UThMRld1aSVuQlhEY0tQNH10clVycSZFenhQ
MGhiMSV0ck5reDI9Cno2Z1kzenl3JkQzQXkxSD08TldtR2B2UzR3JlJhZk4hMXJWQzBsSU9TJlMh
PTNOVX5BU184IThfbFhRd2VkMHFUOQp6WTFoJVJTQHVSSWwlaCM8d2NkVEk0QEp5WGcoUV5NcnZs
U09iMWB5STVXKHVCTTYmPCZqRFIyLTg3KDFURlhwNDEKekhfIVFpeUhedXVzPmdXczxyTF9OZEpf
Wnk0Qn1oJlhpKFp6WDBSJDNaUUpZSFVrcnJFMnQhMGBoWS1udWghdi1YCnpLNShaRiVKWDx8VHVJ
PyNkeiNFQWxIO01BakVRcH5XS28lU3omcGY5KVF0QE1qJUFFeiQ4ITc1KjJ8PFpPVHRGTgp6UXZH
QD9JZipVWXtvQGV4bylxNHk5ZncqPlR8NlZPXz4zen0yTG9WRDdaNHx1cVBYNSFRbFM9U3JqeG1m
Z2hhTE8Kek0lO3cwMiYjbT8xYmt4aXA4MmtteXJwaSR6akNqNTxhZCswPCs7RTJKWitsbjJ+N3tq
TGx0Oy1CYzJINTBYJGZUCnpvfGs7NkdMKTtnKCRpQW9WJFk2Umk+OyszNDNKc0FtZ0FaSS1IbGAm
K28xaTJtYzskKkMrRHB5NjUldDsjc1NDQwp6YH41bEYqYmJMSG1ncUtLPTRoSlVHQ0wjVGg1PiFX
c2srVkJ6QUF1OCV8X09WUjFLbVh3VjhSclhQPzBrVFJXQk8Kej8kPFRvRmBNLU9qT34kZkR3NEx2
QEs8dTNTQElnRExjST9YUzk5XzhUMl9PKWVZcDIkWkU1e0tNYVkpQTdzcTBpCno+fSVuUm8hSWoh
TnxyUm1QPmE8fm5LTGYjJml2Q0JrRHd1WDJZdEV2RllrbC0tTSVSUEY/Y080X0g2bjlXQVZXRwp6
VHkkM2JyckZQTEI4QjxoYjZATF5QRD4/e3Vlc3RZM3QrbGFAVE8tTXVYWjNOJnN6SCN1fWUzblFB
ZXJnSTJnSWoKenI5b31gK1g3Z2B7akFSfVI+fmtwIXRTKUVNaTs+KF4mRVM2UW5SdDZHdXp+Q19z
bWN7IX0xJCRrTVRnTkJ8WkUrCnpUWkd+WEdQc2EobkMzP1ctY2o+ZURmUlNqUnpZOWs8UCFeV1Yr
O3l8STUzKlM8amJVYkRnYik8PnpsNHFzeFMweQp6XnlXTnc8KG95PEVaN2gpJSR1WWlDaUEqfHl5
NzJYcSFkKGdmN1U2cilIaj53PWRsPksrb15GZ2s8SDxWKiNkPm0KekVIREY7XlVod29EYXBBazlg
RlNSNEpvZGt5MTx4KSNAVWEhekRZYjI2LSVEMUBBO2J4SiZ4QXg4QmpqRiEjY2okCnpHM2lXRihS
SXdvP0R5NjU+fmRLZ048P01FTyN1MCZ3RnZiQ3AwPExXYCMoVjREfkQ+cyQxJio2N0NkMUhacVJi
JAp6KTIzWHFGaV9Yd0JFOEBAJVlOdjF4N0NzJlNFckZHdnhefG1LUWpKej9NSmh2RCtmVkl8NGQz
TVFvUzt6SUJqYTIKentNaDZDYHNxbDNuKktPNVN2cylIJm1scGMjYXJHYTkxQHdUVyFeX3oqeUZ0
TmJTeVUlYiY4d19VUHJCbTljMFoxCnpNXip4SllAI2dCR2klJjtlYXwmZkthJkdHUW0kYlJQNWlB
VXpxR2wzOSNycnhHe2RCYip8enMqPilIRWRvM3NXOQp6PEdvUHd7PCUqQUU3RSQ4Y0o0TEMjeFht
b3FfIVZJeVl3LSZhKzxDMnErXyhTQUohOUNrbX5nc1ZsX1FCQSFhZnYKemY4Y1NNM3tZSjB7MlNz
dlV2aHt3JXo1VTMzPXQ1Yz5uQGdYJjhzV3BPSTN5bWxvTTFlN3YmREo3bktBOXlFSytNCno0JTBJ
bzlfRlMtaGdIQnYzZmAyKWIqcGYyRmxQPj5wa3clfmBKYCllb0hyQTU7OGBMQ3tuaT0lND01MCE7
TmsqeAp6V3lVOUF1PGZLbnF2RS02aHhLQypMSjB1QTQtKnRpV3oqTiY5UVh3Wlo1SDxvKUhOJEJ4
YyV5O2J8bCVwVENtNDsKej45WlhaTiFwfXRFVzxrMjlBKVdrZkFtZ1pAajd9YVBoQUtUZFlgVl9y
RyZidWJ6aDgpSjlYV3JqQnhRYC1XelRLCnpZRztyczV+QiFydkxrMUhGRnY3fEV3ZTBCYylIdWZO
elZnRjtGbXVNSiU1X3o8OVJmbzBneU0pdE8jNk1ISmVmdQp6YmgxRDRueEFKYVJMeTtQI0A2cn4/
YXghZmNRZXlBYnRIKWBCPjNSMVpedjNaPnQwdSQ1PFNqRHEoPTRTS1laTHoKeittd0ZvLVpDSGU2
ZCRpZ0tLK3IybW98RjBrOTs9WmwyaTdmTn03N1ArTTNya1M3elBZeEB3bm85Qig1NEkkT3UxCnpx
fWx3UD8mTTImcmhtbmohUDZKPTN1QCV1ciE/K2MlMTtnSzZkelJrV1ZqUGJSM1hGODdOPTZJJTB6
biQkbjZGVAp6aVI+emc5LXBtQShkYTtye2VEPi09Qn4mSlB3K0F3Qz5pOWJRelhsQXZ8YEF5dFop
VCZTcWAtRW5gd1E1c05DUn0Kej1lY2s8KHw9I0FZTlUjZjgpQFIqV0N3fk5SfmZ9VjJfMjgjN2NT
TnRfUn1gdW0jdG5lKzxLNik0a3xlJG5Ja3owCnpQVCkhfnw1bzx0I2g3I2FLant1PVFjR0l5KXgh
TjJkN0d1U3txa3diZjtaIU9tOWdednlCcTRDdzZvKiQhVylEegp6IVgmS1Q1cj84VChvejJKJEIr
aiM0UDErQ1YxKUt6bEZ+JjFNWn09fVNsI0VqQ2VicmFfSH12MEQwKmR1K291PmwKejNPXiYmX3w4
MUIlQX5JOG0tISE2JWdSdUtfeys1eDJlUVRfNEZLZm4pV2sxWCQrMmZEWn07VnolXnVVTyVKT3wz
CnoxV34/eXI2QndQel5pSiFNUklEUVN3PWd4bmRhRnVrY25AU0tsZ2gtaVpXPj11YD9Pa1pnN2Nn
PV8jfGQ+I1h2RAp6OExlSVE0V040YWllMXdVbmY3WCpTREJJPEE4SjsteC1rLUNLSSl3MEFKZU91
eV4tRl89X3R1azI1KmpFdDZjeksKek4pcEE/cUBefD51NlVSWSlgeX0rMFEpVWlEREJsZFBwSDdB
a0pXZnE3Xz18Vkc3QS1zXnU1VXNFeGlGWnNXYV9BCnopWUVeb0FsWWZ3aklidDg4IS1yQlI0TkND
WXpBcjF7WjF7YERpdDlNWlgqTX4wMmMkTigldUphIT5RfF8oWkQ7LQp6RzIwXmY0fU1rSmFybGJ9
OSp9IzdwKitSSkVjdiNZRlByTkxmeFlYdmdJfDV3Ml5Pd2RhdDc7SlBxMChEKzZMfHcKejIpXkom
R0J8cGs3IyVGTmwpbW9aVFVpO2VgMzF8PkBPcXNtVGU9dnspVCR5UitPOTVgc2NldHo8VEU2WHdv
QSFDCnpHWmpuZjVAX1ZQZHpWQnZ6UyFMfTxhJWdzaF5wNE1fTjxQUldSUUk9QCs5SFlmZWs8cUBT
fnlIcyZndHNmOT1xSgp6OD00KnNKeClKekAqQnltQ0JWQHdmdEMwLWhNSXh7cVplbytmYzBhKHFe
c1chVzI/XnxBfkNZKEozOG1lbzYtNmMKejNvLWhqaHIpeEJvIzM3VztwOHdIditufUwmSm8hMnV1
X00tPEZrVlg8aXlaanA/eVk2MVN4NFNYUVA/dS1TSHBmCnomRjFyI0UpbTRJRHhfd1lXQSV9YiN2
U3htZyRYIU0lYXZ9Nmwxc2NFYm9AclFlNno8TiVTezJNN3chd1AteFhANgp6b0NwTH5zQF9YZHQ4
OHhqWF9aQW87ZURzbGckR1V9c2dufHtWOEYmRlFeVGFNbEwxLV97bGAmOGpaVUE9UEFAME0Kej0l
X2t7UitvQXtANz9UZzVNZFBoaz58M3owMj9TT25BUHUqclQqS2doIUhATHhTRUw7NmdKVjtVRkVa
KXM8fml3CnpONU4rTk4oUyZEdm1SI3hRYypyT2s1Rl5xUTE9QDgjNEpuOEYtLVBmTEMlPlBZRiFK
YHNUTEx+RFZGJUZpY19eZAp6emgpdj8kcmBaeDAqVW9adW1aeXNlYiVPeXg9UShNd0t4XzdteHI5
biF4QjtVYHIkeV47OGhFI3BHM3ZNKHYpMy0Kek1BdVAoSmYhWSUzS0ZZKDBRcjhyRE9FcGpVN0ok
VEJoQG1NM3hDc1pZRlZQRXRRMzZJWmVEVzNUdmZXSlJYK29eCnpFblhZe3k0WWQ5OzspaitRMUgx
UD1TaldhUTcjWEApNDl0Nj9oWFpaeTYxYDF7JXA/dHBJenB0YTFlRW9zV2d5Twp6LWk1MF53Tzw3
NCtpazE/NXtINjVTWXYkREBgQVJkP2BJPE9GNTA+ZEgpP04oJFN4ZDZ4SD03ZiheQD9QRVEqJmgK
ek5PPX4+anJjOCswRDBvZkRQd3hiSD59RnZiSyZrWXJ0KUdNeUg/cFVPQHJ4eD5edVVyKHxDWi1z
QEs0aVEoU3AtCno7NyZEXk0tQ3xZcXE1VzwzaU1yalZxclZHb25hbiROaWc0RitEMjA/Q3deKG0x
aVVfP3xLcFJLJExeWnVeaVNFVwp6cktlaXZpbVNwaj9KZ3krZEt7IW15ZlFMNSt2VURtOU15KGRn
MDYwP0dMd3xaelh+I28tQGBnUmleV1BhK1I0WU0KejQkb3BNdDE5QCQkVEYtcCtYa1M9PldpT2h3
bChJMUhMbG5TckN6YVVgX0hzMl5+PChnJF5jKCZTSmBsKlRzMj42CnojJW5+aiZvN09Sd3QtQHl2
QXtAUnF4KENOKzhhOXkoQFY0KlphPG9uYDYlcWxEMTl+U3FFfGMpYXoqO3BvN1lxcAp6PWxzNG08
R2UzVWJLZChvSmdpTShEbHgoTFhBbHcpWiUyfFBNOU91JGF8IU9SRVo/fXojJjRxUl91Qzg3PV5Y
KW8KemkkMVNRbGNZfDVoUitLSDB1Pn03P1BGPXBPIyQhbjl7KTVtN2VmYEg5OHE4RlhLa09gQmpA
P3M+RExGZXJKSCpOCnp0UUNVRm1DaDxfa3g/c000SkdsSjttZFJUanA0IUpnKihNNzRsbGVlVnxC
Zl9HSWVsdTd1VnpzdGJKeD5yTDxWQwp6bEA4cCl2eyFZJCtJKjI/OERYOyNaVSZoWUFGNiNxdXJU
djltbitLWGdmJT8tKnVHaispR0R8KWtlKChHVClXa18KejwhaCUwVDAzLSorSSUtTTVQWjxyaHgo
SiZiRDleUEotPTUjTTZOR05OcVYlOHJPUWdhZE1FbERvQGhPQzk1fEFaCnpubGRuRkUzYll9OyRY
bV8mOWkzWDsxJDMmYEtjY0VEPTZHeDclPTg/Mm52e00jcU1AdUBCP21MNjloNDBRN2hgRAp6cGUm
eiVfd1N4WkpgMXVeanAkczlqPys2bzw9dmNMOGFYaDtHUUNTSDIlJE87dHNLbGZzdjBoU3tOJldx
WSNDUzcKemhxQUAhZWF5a3hiSWd2eGgzOSVSSG9Va3d5O2NuPzkpWHxDM3xhSVotaiYqJUEzKzhT
dkR4YC0xfH5TIWlVKT9gCnohJmlNWDRYQDRMJn56MFZOSitNfXVeV04lM0NUTm50QUtCMllDeDYw
QD01STsyMUB9YGQkKzNfbDdFeVVwUXxHRAp6aFN7KV9FKDc0JUtEYkVXVno2RDs0aWlMRyo4e0gk
MihoK15ueiU4fWFXNms0ZCpxLWRKXlE+WHhjeHdeJGdYcVYKekQpZktsJDlSb3lLR2hBfWl5I2lY
NUFXY0tjXzFaOEo9Qi1ienJAIzlHK1Erfns9JiRIa0gtSGN7T3o7RzM0RDJgCnpvcV4tTGJga01B
bFQ9LTZAU1F3bV9QUEJlcHgtd1klWVowfWdAYyRwTnVgJHw3N2Zma0wzPykqTnB5XjdOX0g1Pwp6
dXJaaVN5Mi1pe3QxVTEoQDI4JG4yOXhYQWZmP2hAaSFmMFJjKyNOO15yaj5qfEJWbzQ/Qz1Qeis7
WXktejYhR2kKemxiNXxGRzEwVm8xLWNeaChrdWxlZFkyJVhNaWBPdiNQPypvYzlHNVY+bkEwLWFk
X3pySUk8Wn1ZSncxRnp6akgyCno1NyQxTGwjaDQtQzdjJXFvJmdoWi1PI3UqQTxleGBgTiUoUllJ
KXZoUFhfKmkkO3lwTXR0KHB2TFJvJDRtemY5Ygp6fDhQVDhWLSNzMEVKN19WMVBlJXEpM0M8bStB
Y2pxd2g5MX14K3Veb3VyT2lyZkgwKFItfT1MQGg8WmA5bnh6OTUKej56REF8U05FSikzP0hPWShM
e2R8a05nelBqaCQ7O15ZUzU4ZzgqRikzcUBodUhhPVVvcSpZOXtrSyF5dXUtfDdJCnohfFN4diZL
elI9bklDTU1pUDBSNmE5cG9Fc1o2NEp7fUdIK2olZVF2I2AydVpkbn1IK1g4JGdFKnxzQllzVzhG
bQp6O2JWQjBQPlBBODVWWH52R0Uqb3omZl9MQmBLV2gtdyV0KX5pY04tTGQpMnd2UnVQPFR3LSo0
YmhYdnkmPFBhPVYKejMpN2lSNGtLWj0+cDh4aHNtRSslWHdlaiVsWEtDZWFqVEtHYGRrSHhiVVo/
OWFtSDM9SChFRzYxTH5BNGBiX1RkCnpuJDdic3hLWFE8OXorRjkpa3koPT9TMH1RcjdSIyFJQmNw
eER2KyUjS1MwQXZvSWp7UnVoOW1tRXhXMWgxMjBZNwp6V3NFRlFYMlMrbmBVUUI1e1ZIWmRvTykr
WiV7P2pXRzBBanlReWJKZnspRjhPKm4xJlNsZm9KOWB8VF9zRG50R14Kek9YSWA4MDVhdnFEdVMq
MFQ4JiNRRTB3VkxIYSgpTGtMWFVSdUtWalFrLVckaEhkZWlJeFBGSURSQU1TUyYhdEZGCnorSU5j
RlllYitycHNqSHRjWjE+OWhPJHBpVWE3UXVoOCtLRzFVVXxvOyNSVVBeTVNZVlg1JH0+b081WW9U
U3BlVwp6bld1cTxfRjxvWFlVM25CTXlFVVc5Q1ZRbXRSfnB7d0lye3E3eWxWdU5jZ2xQbHhLWHwm
QFZ2Xit0MkN+VT5QZ2cKem5uYE9sZkMtUFQ0X3Z0RCRtO1NpQG81Q0p7SUI+KDtiP0VldTR6blB6
Yml2cDc2SHpfa2F4KUd3O1BFUzRNV2prCnphVFlmRyU+TF9IJWJra1olRWs+IU9wbT4mQnIyVGRk
ej1nfWdPPG0+SG9QaVY7Mnd6KT9idl82JnRRal8/WkNRNwp6cU45U0pyZyopJjg2eUZPLW0taVF5
ZjxofXc7RUxAK09oR3gxP0VQdyYxOzJCbzRrajwjZyp+VmVvQ1NjdEAkckYKemxYJEU2SEhLTHRy
UjJ7fGgpQ1lAcT40ezdGQ2dCU2RfTzhrMV9QQH0tTSlqMk1wZGM0O3JTck1yPVhyX0pjbyVKCnpK
OSVVZ0FeY0xxSl5KLXMqZlljUDNBX2g1dV5GI3s/aDwqI28+VykkRl9lNE09cE99ckQjR3VNSCZO
SFolM1MhZwp6QzhtKTU9cSlJZ0AqV0V2O3Y/RkVrMHdeTVU1WldiYCUzZzBGLX5qekU0PTxrd1lO
U2x7ZjYmVW9Fd0ZTXkI2RTIKeiEyWTFwZEhWQygpalIpRGAyTihMKztAYzdzYj92UCRtUGM/P3sw
Q0FpZTB0T2VzfFlfck9NTWd5Wm5RfV9aakpiCnpzJiVKKyFXeypISmd7TTVxN2F6V2IjWmNFMUMw
bn1RRUZ3aDZqbWRocnJPIWJFbyZne1RlVk55QXgzRFpIZ19HKAp6P2J4bUhLZzs+SSg5RUBCe3Nm
Kl52eUZnSU1MZ0JzKlhPNDdPcGdkVkVOSzU+ckordFBwNTslbTUlb18wSmwpSmMKenJsUk9HI3Zt
VEgja0EmYXFJUnhFaTx2R3NGfmVvV1pDdUVGKjIydHU0RWROVlVEPDBsXlBHO0xfdmBtSnBUam5v
CnorIzVaO3hUY21FKGBrbTMtKiRiZGpqIWlwK2lPKTRrP3dKJGRNYGlocTlpekheWCYxRTM1PUZn
VTEwanJPczkzcgp6ZEQjU1JMNHEhMjJXRXpZU3NFWX5GSHM8KEUxc3NGXz1McEhATlo0Kng1OEVH
WElfI3A2Jj9aVmBYbSsySVU/MCYKellBPjRUdFQ0TkZyNXg7QUZiVV85IykwanNBaykxejJEWWNh
O2lYUlprM3xgQFV6dUtnX0pAfEt0XkB2YlVwKTJeCnpfM2FOUEQ+ZG1wPiNicWd3PlZCWVBkNFNt
WiRsdU94e24kX05iYjRnKTBPPnRpSF5nZnFKO2RjcHE5fFhReFdXaAp6JlUtMUh3PDxUT1B8KSRi
IX4hV2tacFZxbEtZQ3k0SiZReTRZQ2h5Xlk5WHc1RlNkSGQ8UDBBMmsrMyUhSn1YWFEKelJDN21E
MT41fX1EeStELVRqSWB9PlN3QCRubDIrd3RXPVUtRURqVl9sbCV5PmNjQnRYemomYz4yMUYqWXQq
Um1kCnpVV2I0IVcrZmJ3Sm0mWDQlPHA0QUstKyQ8elZ9fTVBRUZTUTBRYS1sZSs4O2lTNWZWS2Qo
S1hLe29Pek5lKUROPQp6JUtUUThgMDZ1dFVJej98NVRqYDcqcDJ4IWR5ezE7dnlnRzBsT0xJeHNL
KTY5b2BTWWx4YE0qUExRSGkjQHwkQGkKekhgN0pDJHJBRl8zdEJYKT42JG08enxGWmBoMUMhKzQw
dFJjez02bGJRZV9WbSVgOUU/alNrJnMtJStNMU5nTUJsCnpwMS0lMTliRGlfP3JxVDtJM2khbWBm
YiU1aHxPVGdGTDN0KF9RdG9XSlh8RUJ6d0hsQm1PdSh9ak4pVkxzYntUQAp6P1N0WFpGSHloIz1a
TmNXZFg0SWg/eytBPTxZKiQyYEJaMCUrRVM5RyFZfXcpREt1aVFucVkxNz9MbzE/cG8+NkkKejNV
KWs8KkN9eGF0MXskJGc/amVoKkljNkQ5bndAS1lYeCtBezl8JmRGTCp2cj1ZTTIxb1dLQSsmeXc2
STlEUSl5CnpgSSN+KGdgOWlBRWJzSW1WT0puXmlPci09RGd1ZX4xSXJZPypTSlE8S2p4Z3NVZCQk
UGx4bVFXSSQkS19oMzAyewp6WH5UMWJoTn5oTHQhdmk5JCMramtPYFJAX3UkUTZtckhKRzJKbENs
JktmT2Y5em5KK3xgSnE1ZmleVDI4X1VZYGsKeiRIeiMpSl9BSnkmeGBNdFo9aUArcHV+fGlHXzRi
SCZLISZqRHheaykyN1MpK3tzbnt9SWVGTTMtNUluXjcyVnhgCno8JGYqPFJ7ZS0+byV7MTkhTWZ1
dlUwNElzSjJgbEx6KDVYS1R6ZzY4REdvd1AtN2YmMCMjWl4+LU9MT0pAajFjVwp6WU5uUzBkd2pG
RlUrdjdRS0R2eDVOYVVFcSlPX3dsUThEPno+bU5YO3NQPlcjZW9HVFYrbDRXM2diQmVUXyp2TSMK
ejdwMFBrQXs8MGQ0QGh8fEdWY1BDWmN+IUAoKnx2JnlrOVc0OT14U0VqdVdgcil7ezFwLTVVakc2
JFdrMVMkcE5yCnpNbFI7Y0VpfUFSWitERV9fZGQkNDdLOSVuVigpaSh0MGgkR2NOX15gPDRMIz8k
PDNnQnhfPG9FbSlUaGtwWldHRQp6aFBUNmZATTFscUFAU1RrYiE4JXtTVnZhPXJZU0N+Y3B1UE8w
U2xqWXo7YCZxbzt1VktPe2I3ZlpgRCNfe2RQTEIKelBsQnhlP1pfKlhYRkJwMT4lamg3NH0wYCNY
TEo5OGgpYlJlSjV9cllCSCRtcm5sKjVrUF9WPTtPPnV+Vz9sRjtTCnp1VyFCRyNhcnRBeD5IcFo8
NHpeKnYmMUJ1KmYqeGtXeH1JNkU4fF9QNkxOWmwjfH58NGA+dTU8SVZ8ZnZydDk5aAp6S2FvTGI3
dT1icnR4QmZQe0U/ZWI8RT1JfTk0ansqYlk8MnJXRmt2QjxhQkR3UGJCY3ZQS0A9eUNvfGN1QyZQ
cEcKemdUX1lXVjdLZUwxd1FXakhEdyFteWlsJlY7cGY+aTdEZm9FKGhXQ1VTdVZUY3RmJDA4X243
TTVTRyNNczl0MlUjCnpEe3lhaStgU0N5ZHJNenRRWnNLLVMyYkFPYFBvZiRLeyZhZjNJcjV8cCFT
Tm9EcDMzPiFWKkZONnxzTWd5X0R+IQp6Y3NPOyYlQWNeQXZPWlFWd1JvRDhyO2xUeEMyS3s4dUs0
V3plRl5gT0lFcl5yb3UwMitfIzU7P3ZUcTNZPGNhKFYKel4wWV5PR2REcDlZaTUpe3YtfS0teTZO
Zk1hR2o1bWFMb0gzeko4MnNgVTMtQFFgJFFuVW04djZ6OEB1LUpINSo4Cnp2KWMzb1NrYkdfdUNA
JnJANU0qM0ZBOSlKMmFEaT9geERqIShwYTw2KFZyNHw0a0llRkVxJX5jUXB+TWxUSiNXTQp6ZXo9
UzJJWHs4QSYraV5aMU1Eb0RIV2x6cy1WJCVWYGUmWTxTUjtzUXZRNGR5eEQ7PnU2TVlfdlZNP2dx
IzY1OVcKek1NNjA7OHZeKTE2eHo3SVB4WEV4aH12VjNkYDdYT189cU9QOWsoI3NZdVFrVWFIeU50
fDdxS1pZNShtVGVmX1FFCnooMWI4eHUyaytxS1FRMipxXkh2a3MwN0l8TTNXYEs2Sm9ZWTl0WVdI
IXNgYXxyPD9WSlJ3OEtJKUhTO3NvVmFFdwp6NE1zUz1YS0E7IXAkWTtXZzhidVVBTzUpXktre35p
T0NreXJVUVhFRSt0SHt8X0xwTU5SdWhxLWd4PEg1cGcyPWMKeks7TFpUYWtRcE12Mzt5RDVeMipB
dGQmMHIkNGxaITEhUHtZcHE1UExjRT9RXzthXm5PZTZtZUBlVkd9dXUxSD4wCno8SlNMUXY3V1h8
UkFHNHVqKlZGcWZCQTMha31ePyZXZEhXa1RoTEhQNDdaLTxIdjVWR2FEdEVrREM9RTE3aDlkQwp6
SUZOWCU/WXtjSkNVNj8/U2wlIXxCR1pjO2hyJWZMKTtORjtJVzEpPkdPO19XckdnOUFkUS13THRF
akhvVXooWl8KekNVKUZGUCZnQWRCSmJUQnBjYE5OUnV2YilnSnhHYGdRb0dpQ0cqXkllVE9CJWZs
VHwjXzdvSnYkOzxRTkR5YDMzCnp3V2M7ZCZxazBtRjFUR3dBZTdANE1VUEprQD5ybllSM0hUN3g3
bDtGX2pVRU4/KFJzNC1CSXJLTjl7c1V4JnlJawp6JCNMd09ZSzd2SXkockF1WlliTEk0MGtAYipg
WG19KEkzQEFlcExCYGxGRFFwTyl5fD58TGR6Wl9fJUFnJnEjZHMKemo8UU8mIzFsJH40ek17OENi
U1gkTDUrNEVXQnJCcER5NXJ8aHh6Sm1MPkJKeDx7dzl4a3xSQEY9VnNqRDdAb0NGCnohJTcrQHhV
R1lIQkJmKWZaMSt7dj04MloocWA4bFdAdWljMzJhKil6QHNlZylPTmk0NmxkLSZPcntsR3ZUTkhT
cwp6Jj9EUXk8Z25XfWhOQkU3KEhgX1F1WXtufFA9RSUxUjd5JFJRYFkyMC1NQDl2cnU8eWBALXI1
eSMtYjdGaW0mZzcKeipNSklyK35eJDMjfk8odWpONWcoSTdtJD0xVz0mbUJMIUVhb2V6QXkmUiMk
ezZZd3htcTxrNFNJeGdFN1d0dmFACnpBWmB7bVU9fDxhY145M3JHejxAKXlPKzIjODJoYmdFWkph
O1BkME5QemQqQDRxJjIlKk9KZXxxVnNePXdzUkAtbwp6NmlWe0FvLXh9WjFDY3w2eVp+e3NjPkxj
JURIbTVKeVJYOX0qTGtJX0s9LX09O1ZkT3h0b3dqKWgkaXFNPSZUSjUKem1UfC08ZX1NVmclJHZV
RmE5YTR0TGRTb3JLVyhBJXsjPW07K2lEWDU/dmNCdEtZejBYITJacWMmfFFueTYwbG1OCnpoZlFF
Q147JmVuKEFlYmdeUk9ySmJCOUske2g7KVpBYGItMHQ1XmphRTdZZkNkaGJqdF5JMD1PMSpKfn5v
RjtnXgp6Kz1HVzNCVlJOSXZAOXBgXyVuNVllUitOeEYtV2gjeD99PH1JKnB9OV5XYVh0WVA2SzZr
TDtzZ09GY0soSGA1QTEKek5qSUVpcH1fLWxWXjtSbEUkalNTUWRfKy09YlZoRzZZO3JpRTQoeCFS
bD9AUU9iaDJqVzFyYGl4T1llWXYzak49CnpYbiRKU048UztmT3pVXjZyPCZNRVBIKHtlazs7YVMh
Q01EdmhETn1lZGlUR2JJKTBzelImdStaRzNRJWJWR04hZwp6bEdIXn1wdFN0TSRtPnhyOSNUPTc2
e1ZKTCZ8WiZNT0pLTilyJFVDRD53LX5nI3JNTl4/XmRURyNLSjkwZlJGaHUKeiUkPmV7XkNtcSEh
QzdWSUwzMUM2TWk5RSsjMUR6VCsjTVZnZDdKLSk3QFZNfSZZZXMxMjA9Iyk5PVlDSClIKUcjCnpx
dUtEe2JPdDUweDE0JVp7YE83SVQ+VjFqPmE7fUo8SUo2aldTV1YrSSMhYHRzQFItQlMxYTt1Z0Al
bUZrQDIoKgp6Oz9KQ0RgU316OT5NbyNpKkBYOVk4QUlVSkE2UGcwcFQqS2VeR0JvU0d1dENidWE9
SEBuezw2dm1DQH5wdyh1SlUKeipANUh4dDBTMmF2X0taVlNKJTVLdG0oSmNYYW0mLSFebWkxTDNf
U09ZS0UyeTdTTkVIITxMPTheJUt3bEY7Xm5oCnpaOCU0KXhrSXFYYkk0QD44eShreXhWZU5YWGwr
d20kaCs1KE1LcUFqd2ZhWFM7I1g1K2ZqfT01QCh2Z0FlVTJgZgp6PDFRO1ZlSnp2XmFJd19XdyFz
RUNILT9YZ1dPcz5xO3NMMHtVR1QoOFhpVDFqdWpYY3JOPEIyTW5MZVd2UThGRV4Kel5WWWo0VSok
WDFycChXKmNkN1AyOGN6MENTN0hlOyYhTzU/RnJgKDIoJl9sdlczZUVFT1NPPSZkdyhmcmYtKihs
CnpxMFNSLXFAc05meUJnVkM4MDVja0VvNUc5MW97SEJidjFJQ0A3NnEoQiokZl52JG8/Y1JAZDAq
Vk93NHkpeENGSgp6WXg9KiY9ODBWKWgpQHRZQDZXRFZ3KHEoUF98dXs5IUs3VmN7OSp0KyFCflpj
eCZKWnNhQFB4cXh9VGgpUGxBU3gKenZvQV9uSDBUYk9VKmp1Q1NuJW1PdHAjWE0hR0QoeWtQTSU/
OFpHdShRKm1DWmd7SHFyQnBPdHo4cUJDJiVBfDFwCnolN31fdCRAeithPCN2ZFFRUmBrZlduQVZ9
PSM9JWFkfD5eZD84eDZZKVdWJndkUD1eXz9fRT03X205OENweHhKJgp6ZTRUb1VzczlKbj9gUTNi
e1kmWmYkMzczYWMmNmI4YDk2NE07eV5+cFBMQz9fbFFwKFZ2ZzIqe2tjQ3I4a2Z6JDsKeiFLPVd+
Zk0pSUVUWW0hPiRGNWRmVDNEMDtqXiNoKDtJVikjPWtJVE9SbC1XKzAxQVAtaWVCbGBUSVJ2V0lV
SVYqCnpjJDt4MSM2NkQ3cVRqZlopb2I1Xzh0O2R5JWJfO0Q+X1JpRExlcWZmSEckU1IoJHZnVkRB
emsqQHpiYHZ1aXY7bAp6O3BRZ0xDY19gMWoqT3d0Mzg8dGUwJjJlXlM9R0xiVVplSEleT2sofHVy
bXhEck1JJEZ3OFZzdTN0X1FON3ZqWH4KelArXlktN2lzWWZYI2p9KFNMS2x1ZjQkZ2JSMDFibVFT
Qn51OGhAJn11bi1MZTxJaWYxZz94cEkteHJ8ZWR0b0dQCno+RGwoSGctOHpPaHJzfXJBQHpCWDk1
bEZBRCZKK3BmejFwfHltNHxRWE9KcTZfRSZhYkZ1ej9pX1V8O3ZIcG09PQp6N3VkVXQtJU5JQjkk
KT5LPilEN1ZFK1ZxQiFaeX5WZzc+WE8hQ1dPY0BPQTVqJHN4UEhXLSRLM3ZwdVE+VDFEQD8Keilw
YEdDJXNRMChnRSVqeHZBZSNjPk15TklFOSE7MFNmZTRyKndFR3xuTyFOIXZ8d1hQVHhiZ1ktbHUl
YWYpRGNXCno0WnZtV3R5cEVnODBjY3YtN0N5eHdUbjhHVVlDM0JqO1BjMTdjVV9GIWpVUGkqfStA
c1FZKXMtI09KUX53WTE2Tgp6aG5iajNTRzs3UiFhfjJYPCZiOyhLPnxQY2ZIeHhYKGpeN2VmQnl3
UWo4OWY7bGNzJTFHc1lVaUkraWluazFQZD0Kek5vTjJIYXAzbkdhN3h3Tjw4O1JjWEVSNXsrJEdl
UmJVMWJ2MT1OSHRlZTtFVm5rMFJ2K1QtMGttZVcqSTcqMHNMCnpidjJxfE1fMlJvYlJRUEF2Xio5
VEk/QGQ0JUkpVXdzLT1Mcm1MPVJeYjZIWigxcUUpMUtFY08zanMreUN3Sjteawp6QE5PYDs7JUFZ
JTYtRDlJaEY9WT9aP1kleUdyPEVgRFVlcURkRUE/O3RGZFp0PkFJRUxPRXJkPTExOXBFc2I+UnoK
emVBKzBxJC1tQFI3XmliX3REbTBBWnNhMFQ/a25tNCh7Sjg9RCEmcU9zTHI7VDtYZlB6bVpDMmxI
QExmJUB1PHdTCnpScF5pOXBNc2l9ZFlofjw0UX5jJjRYcEBTWmpDX1hnU1I3bXxDO09fKmYzQmhq
KWteZjNJVDRpSG0mdT1AZSlyPgp6fEo1P2U7bzdEOylnITRKTHspJDUwWE1afURANWM9Z1lsaUto
eU1lNj90TFpkKGA/bz41NFQqUUFtb0xrMHBlaFkKemdZXmVhaG53MFhHVnp7UFpnd084Yy1WRlN7
OWN1dV9kIWdSaHtYQ1oyYzZndnBWcCtHIXtaSGU+Vko7eHw3ITJMCnp6bmE+KkVoVW5tNSZ+Rmdr
eCZFYEwzJUdpPkdldkhxNmt0QVJVeT5TTDVqNHszQHhEYTR1WEpHTVdoLSlkWHBlVQp6WUE2PkZS
MFFBMntvY0tQY2Y3eWdqbHBscCZOPUl9d2Rhfl51NjxVaHBwbz5NYXc7MlQoVVhVTmttVTgkTU40
ez8KemY+SUI3Z3tUcjRFYmVvOFpjNXAjdlBoUSUtcnN4aUtBcipeJHBOMjcwT1NUeHZGd3h0eUB+
YHw/QUd0a0lJZU8/Cno9VUN2RExmen4hNjlnVmpeZipHNEh1fEZuWHNwPzhgWWBndjFaTW5wb2o0
bjJwQU57OUpDZnFOI1ZjRDsjVmlVYAp6VT4qKVJlfiY1fV4yYDZRRDxDUnFEVExXUTs5KWVgMj8j
aD4rcSQ7b3pzWDAlQjsjPE5ydVZOJUstSGhVNipNdVcKekBET1pOSWJmYns/eHtPaXVxWEZLQVdH
KyQ+ZXJtUGF7KzEyPH4oKHZCWEMlKntZPD1ldSs+WXpXd2FsbmpecE5+CnpoTSpJWFAtdnUmPm5Y
aTMqJmJQSXBpc1RHOzJJJihXbCV1WmRxcW9tbmJ5WEZga2tOJnpBKTE/XnMkMU9SVkRDUwp6NX0o
eXA4cD1hfmNVe20jeUtQTypoSiE5K1kte31EOzhnQShPV3dVYChoUyk2UXFDamY0aDYkYCpvcjw/
K2g1dyMKej5YVjcqIT8hYSVYbns/VmxOIWF8V0wxMjZmUkNiZk0yYU56NDFEKWstK3gqbyp2Nzd4
OFFIUU47cDhnLVVFaDFACnpgfFBSLSVpdG9uKXJLSF5CVTxOLU5MTno5ZTkmVTNxYmdqeHR2NTBw
MHklZCZfJWpzWmgtQFVLIT0qcCpWQUFQMwp6M1F3Z2lhRCY8TTghYz5jVW5ZbW91TlVPRExJe35Z
TUMkcUlxVkB6ZSkoamkzbkZtKitgYShzIUIzTVU+ckJ3JmUKelRZWlRfPiNRKFVXSHBUQntSJWJm
UlMhMmh3UXUwIz96ZHZldzFNZUxwaSVGRXM4Z3MlQjBxO1EwdGhXXlAqcnsxCnpNKCV+dFJVJCNN
ZF4pIzMwI2AwQT5ENSo9VXYzelRsU31oKmR6PnB7dVRaam40KVVGXj5PdVBAX3xkalooOSk7bwp6
TiQjQyY3RkdlT29AUnJXJTZXWWw0U2Z9PFZOUjtgQCRfMDxCSj9GLWdMOXdBYDg9ND4jfE53IzBz
fHBuKk1peUUKelZGSmNae2htZGFOdDxiXyY3Yj5aKkI1ZCpiVXBlUzhyJmx+QX54ezVlb0dPXkkr
WWM+ZSFzaGsyQzNQWm43UnUhCnpeJUpWKnk5diNfWko4UDNte2laPDYpRShTQ3BeMmxlV0F8WTI1
RjBQRiQlXzA2UDZkVUYmazV2ODhaZFkkT0g1eAp6NSM9WDM2aml7fGZ6eDxrJldETDMlLXNhbWlC
ZW8kUXlDc2Q1eW1haiNgVDkpWFdAND9WbjUlIzUyPlF6eHh3c3kKek44aCt8eFNUWnxjcT5oR25P
TE9BYXw+TDMqfHEtPFlNJDtvbm1sdk5KQ1pPWGctc2srZnhxR2lGe2lraHUzNVNzCnpiSEZmbCEw
dG5IVWg/blc3aTVIP1RZe3o+bHM1Ulp1cERqY3pIdCl+ZXRhdXA/e1Z1K25pXkdGcztwYDkmTHRS
Rgp6PC1WZSUoLWRGMGJFRDthXypxaGg7OFMtejQ+cm9AVWIpfkB0akg8O0lCcEFZTSYwVSlUS0s2
IVVZQm16QzgwMFQKendRNzFhT1A1JCRmcFFzTkdUR2dVYykmUypVbE5HaHZoZ0hpRndZVHdfSTw0
d28mQ1ZLWDhybVVUZFBlUSthKkVgCnpXYWRSZV9KQUZKcTtCYD8oYmFXRF82Xj82Wn1XNWRaTCYp
MkpVKWtLdDcqY1A8WHZBMnMxKjNtUFQzSXl2V2AqQgp6UUZxX1VEKCMkK3VNbSptXiVldkYtOEFI
N0s+dyF+SkhCbjZQViYjIWV+OGp3JGRLWHw0WHw+KXpwRytlQWdCfSkKeig/WX0zVng1WWV6akJk
a3h9RjFUSHltemI1QGJDZUwtLX48ZmYya0grRmViPDFJaG97Pm9uYERaZFVGVW43NEhuCnpGbVZm
NWhyQyU9dz99Qj07elFyMHBue1hKXldfcXV7dzRuKFR8JEw9d2EkbUYtPGxNTXY/N18peyNeS0J8
OCZVQAp6T2JmYjg5biNfamJEZ3JlVGVsaGc9OChIUUNgKE1seTMyQWE0UzJ1T3VUQzZjbWsjVTBz
STM8MCl2dGFJanYyMVoKekpmfmA+JT83UCs9WFQ4b3JYOEUrSWk9Xk41VEgoZzR6RkBLcWExUEY7
JHFJNk4lVG5scjlMNjQ/Q3k/a0Y/TU18CnplX3RHKnVHPEtUK3tvbWl1PX49cWg8NUMqaE4+WUFt
MEN1NmUoUH5qI2prRHpPeEQ+M0RofGlCcmtwPHhkQjNFTAp6ME9wYGA2IVloUCtUek1icClNcz1e
KyYwXy14US1ITWJ6VE53NllhfEhZKj05eHNNdV8laT0mbGVuY2J9RD5RWk4KejM5UCNQNyM4Mldj
Ti1aOD4pSHBGMjdXUTV5KEk4fnh+e3A9c3VSaFNJPy1aaCtNfl5SLXZpPkFyUnE2I2p3R0xMCnpq
RjgyIVdCcW9CYnNOdTEmV3pEWVIxWChDKiFzVDZrP2JGXnRJUCZNVjl4O0VNPFF6LVZlI0U9NTd6
bWN0YllaXgp6RytBOGM2UlJHYzJKPmJ3VmZZfDYpMkItRD0yYkZFbEgjbFQ7fnAmcjtXTCRxYExV
I3RzfW1SelQpKkV5ZjdWMz8KeiZ1fnxfc3ElNkYxaTU3ITs5I0QjMmd8S3NfaFQ2eHhFUD13e1Yq
V0srckVWRGYzJS1oOSQyRmtyPFMybEplcCYwCnpeQjFvRWlpenVmdEtgKFB7JSl3YTlaPjMxTHFA
TVFYVDVqNTxiPl8pRUdQcFdqSXdJbz00Uz5MIV9YRjRaSkVPfgp6VjN9aW9ubXJxX1UlemZSVzUw
IVNEamtAJE5mYDxMP3QwVzRQMUhPYio9M1lIVT09ai14ej1DSUFJKyhYKztKMjMKelQrPnlZdFA5
clpANktjSyk7SFFnd1ImTlo2MzY5QGJncDhiZnd5Y2d5eSlWWWUhPE5lWlpGdUQkNl54TnZpeSNx
CnpDbXxiSFZFTyZlNTBfbUlqfHEzVD8xcnB8TXpYQCVAbGtyNCVQZj5WYyRUWE9uQlpUfiNTQiQx
dGtpWVhZOG55ZQp6PXpxbjhRYSQzO2FVOGIxJTBFIzNSNUYpXz5sM0tAX1Z3RjxQU3E2VUwzKFkz
ZXtKcG9AUjE8Q1ZvNmxOZkllcDYKekoxI0xWdmhxU08+RX5uUSZWeT9MPHJ+I0NNQDEjUTw8dzM/
K085NlJvb2U+TEU4bmw2PnFpcFVlemA7aVgofk5gCnpPVElpbip1WkktKSpvVU9Pa0t+JjlyZ0Il
PE8hcUg7O2Y/ZUJRKSQ0WUlORX1ya3t5VzRZOW9Rb1JWQ0ZZVFJ3dwp6JSkoaX09X1BMaj9JNmtx
bz01K31tYVYlMlB8QH4xKT85NkdNel8pMENKcXtAVkxkZHx5MWEwVzg0bD1eVHYzLUcKej09MDxs
MVFjaTc9c2RTJWxYdiZ7YEsqJlg3YjZ7KGBMcHFlencmU0tOQ3ZEZk1jaWU3ZjFKIUdYI217WiM4
REErCno5WXB2Z3tDOSNjOVJZKU0lZVh3QUhqa2N1QzJLfHh6SkhpLXdrOzFuN1QxbV48bG1ZI3I1
QHNSO3Q0XmZ7dzFHfgp6Vzl+PlQlRT45PVJ5a2RSIXI4Y0cpUjJVUG4xPDIkRWx8fDApejM8RztH
TypaQTB3JmEyelpfJnBXe08jJT1vRjUKemE5Z3p5NGF9PXJqVVVNbXclfktpeD1CWkBSZ2pzIVF0
bURRemgocE9DMyV1b249fitHRlBga1RhQm13N3AtSFRICnpNUk9uITstZkEzdXhKdyZhR3RAJWBC
PVEmVWk7WXJGRjl1VDBeaiExciNQbHAyNmp6UXlKPnhaZ1IxJEFaLXhmZgp6Nlo/e3IyOEFFJlh7
Njt5YjZ9QkpYS3ozamN0PTNneCZMQl9VQUA7ZXpMRnt3dm9COVEmI3ZwV0RZSi1XJE4/cloKemZK
fE9VZkNEU05rRnZxQWRJKHB7Tys7Q3VWX1lqJiEpT3Ymc1V8QWByWGJfV2hhcE5hVDViZGZEeVZq
Uzg+SWdFCnpCKGhIdnBwSz50OSVoemFjUT5PNGwwP08ySSVeayNjLSh1QVdURVB0MWEtPik8aGp9
bi1wWFRoclM5OXZUcnN0fgp6R0d2RkNTZG5eTnNwTFJZckJkOVUkRE02alhqelA4eVA+KVFHMmAh
UjNzO3BVZXEjSkshO3ZOO0JDYClTIWZiYE0KeipqdEBqXmd+PztqUiEmPnElJWUmMChpfG5AczJS
TkVLXkx9KElJUVQ7cyhaRSRuJUVgYGtGZjxQKVoxZjBHR3RvCno0Q29od1hLIU5tKCsxO3ptaEZm
Jkl7WXhVPnk4PiRnNGlAJipjaWhnKEZlUllCT29OQXlHZnpObW84IyMjcWsyYQp6ajNKYjk1PiN6
KjJCX0x+LXRueVc0QV5WJG5PI3tNazg5dTlVWVczOFdeYXI4cUh6dC1gITE2Q20xa1M7bFR4KWgK
em9xRjc0ckRUZWU+PHU1cj98I0NLUSlWPFBeVGd9JTt7TkVweSZ8WGFjaU5gSG0wVWNGeF5KNWd0
dTJsUWJAYyNHCnpseFIldnFXX0ZYSyhTQ2lreUVBQUFFfGYmamdlVFZuJG9YVklLR25wZEBETX5w
V2Q1dD07QGJidnBsMGQ0ZDk/Ugp6JFN4dEtTZCo+RFgtez55Rll6I2FBRiFvcVF3REV0UU0yOEs1
aT5JXjZRXiVXaks/fkF5RHpMaHQ1QUdvWG9qV0AKelkoM2ttbEVRYCRyUD1lYVore0YwUmxCczg7
X2Q2XmBZNE9FX1dFK1dfQS0xLTUtTjNGNFAqTTFNa2t1aXhXYDMmCnpaQGVJRjdjQilhcDtVNzBt
WjtqMFZ9TlJwVHthMik4TSl1Rl5QenUqe1MkRkk8eEU1YXRsTHdiQFJAT1hkK0RZYQp6PVY1MXRu
b1A/K19scklTNWc5UF9FaXRKOWJkPT5ebTMtQWkkJn5qKSViKj1RX05TK0pZPTdfdUFSPzU3MWBj
ZH0Kemc9RjFHMVUmSCVhI0k8QVEtKzlxP0d9Zi1yc1F0S0hlVHM+bXBTZ3ArPkNVekxRQjlNcFlg
NGt6VlNkIzVCalBKCnpZYnpoO1c5NCtyO0t1IXQqJEFVcEdKTHo1UFdWZn4qdzdAKmBCQDJNS1p7
I05PS3UmYXVGUUFZM2gxOFQ/QnNDWAp6OGtoNVBoYjUqenl6QD9SJCRPJmdkK353cysqYEg/cG49
K0ZFeVNhQkpNbF9xP1k1byNHK3d0XiZZRkYwZjEmPWEKemlDKVU7K0V0YDRyVHFIeGJMTkAkND9Z
SEhSY3s0YHcyRylDbylSaSZKNX5seEp9T3I7TUAxMzd3QzllfTYwU1c/CnpUV0pQUW5QPDNaOSY4
MX5oOyo8M0VxWXs1b3BDPTxPWGw3MDFDb0YxND5hOSVXNi1JbHdNJkN6SCpfajhkdnlgKgp6T205
ZkUzRkl6dVQhNGJ8UVdnMzcpKSF4TVhsbG5ZRHl1R0k+OU12LWAzU1RxYz5eUCY9KndPekdNI1p5
MilgYGMKejckSGk+S2R4b2ZRYHA0b3FILUNpQ19lQCVSTG1DY1hGV0o1OWI5bjhGSzlJR15pR09P
QGJPPGllKVhNWXJrJj5ICno9MmR+cj53S2MtTnlebV9aVWlsSmE2RUEmVk1Ua212TkwoS0pFKXF0
N1F7e3s4dDhUIWZWcmFTOWxJIWRBT24oQQp6O1F1NT02bEE5I0s0bkx6dThTa0I0QkRZSWJ+b3ZW
I297V001IThlYGpsQ25UQDtBJFNtNyR+RT53UkdUT2p6I1cKeiR7Zz9ORylfUiV5OzB+SXNxNTI5
Xj11ZWB1NGwlJWJwKGIhbTF1UGklUTx0JWRqXmRaO25RemxlcEJ4QFpmTEIyCno9dntsQFQmeCF4
eUJWc31tRVR3YGhxS35qdEZnQyRFeSpMYFg9bTAtVXQhY1BJbEdGQ0lXNCZ0N14wSjlFKnhvPAp6
STJFQWdAdGA5dSUhZXpudms5SEYhajFIYHNLZmozb349VkctKTFXaXNNbkQmRHNveXhQVjFuJnc5
OUI9PXFzX2oKel8yezBXcnZXMCpyPSZSY3lWY1Q8JkEyI0hVZlJVKENCZ2U1bjNrPjhjO2owKWZe
UyVCez5idXVoaWtZZ1k7YjJICnpUdkJwPCFzfmg0e0lnNjQhYi1ySnBKQXVaNDtgPXdBK3tgTGdL
eWVHdWh1SWBFJkloJFFxNTx+MSohblRNcVZSQwp6SntwP1MwQHw8VjctdVQoQDlNNVQqM2EhJTMk
WlZXJD9mU2pzaCRla2EqfCluajA7U2NgfCZ5R3kkP3ZTbjtgY1oKeiReI0lVM0xlPCZXaSFVWDAh
QT47Y0owSVFnampCd2g8Y3U0SUo7P3VXVDhUZis7eEd2R19rSCFgajI5JnF4fjFRCnpiYjEjRGlC
cmFmd0xHQFQ4WFVfNFJJTFB+Y2c+UVZ5e3k9YFZeO1Q4TG5HSihUc0Q8K1JsZz0zYChLbTRlbml4
bQp6NldYZk8/ZH0jSHQrdExCcnhvXnpWSl9MPD48P1FnMU59XiRqYEJFdD1aKmtHM0tXeTtfbEZ1
WDVzc2I5Y2kzOTwKel5FUzB9JCQoNHE+bEFseSo3MEQqPC0kPy1GUWVHdWgxZE5HeFVwJElHTl50
KUAxT2ZpQDkkP1dKeDZXdnFQP3FjCnpfQCN1TjhZKWJOO3xSMDVtJXROdUlSSXtzYkJabTlSa3hU
LVNxeCkkaz5lRl84N2J4akBxWWVydVhlJV8kdjdaSAp6JkE8NX48ZERzM2V7PClvWUspPE1sYjYr
RXlWNjRhcjhmQ0IhYCEmJm4yS2xTdk1zcz8kS2s1UTs8fEYyTFg/VjIKemImVHhUdz9hbWIweUFF
RUYpX2t0OUB1dCVVckFaP15SX01Ic3JWJWdqZyVnSlcybU5zVWktKmFleEw5Q3FFWUdOCnp1ekxg
bTNONjg2Pj1PI21KOG88IWI8VUhnTCE0KVBRUDdNKmRmZksqUFFYeTV6TntnTngkKDxBNE5eUExf
dX4/Nwp6dHxKPlN0JEFNQ29zeV4kbXokUXJ5XmcoYnteNWM5Uz9jOHhRNGw/UjI8UDFSSmRYTGN6
KT94PnVxZTljXjAwOy0KenY5ZXg8bHNpSEA+QUByRHV2NDx5RWB5Y0FCRVNsU2pZVFBobDh9ckRJ
Rn5wVyZ1UXpoZ35IUChhazwtMVl5PmZECnpYaGpmSDRxb3crVylfWE9yNFpxSStyVFk7MVhsLT00
fDVIfllpZz9pVjQ+dGB3MTYzVVdkNjBPLXo3KXRpMVpBRAp6MkVsVSFad0Neek82N0R8d1F6PTc8
fE49JDlaO3gqOWVzRV5BQllSTSRLdFE8SGQpUiswdFppKSNaMyheezE2Tj8KejtxJkBkNik7cTxj
YDwyeUJtdiE0KXB1P3ZVJGArbVppVDtUd2hIZihIMnhUc2E9TUt1YGRDfEd0THN6WkRCcVMtCnox
NkV0JD0tfURJNDYpVGltJn1na1BfNUVAdnZIS287JktmXyN5czdAIXpSYTtWUkc2fG1Ybyh+QT5H
fndnd1lGQgp6OE9yP25BV0pwZmZTangkJGZffHVOKD97OF52Nj1qej5mT2UtMkR6eHwyVmR+Um99
Y3MmKFZLRXgqRW0qak1IM2sKemxxRXNvTTtAc3RnfEtNS0htNVUpVmt3WWJ7cVUqVihMVmhtTGpm
Z2pYezMhaT5MTlhLQEdIeHhqTH1DTmVxaXtVCnpfRypjVG1+SG9WWWp0Nk5vbWJOR1RMK1NTLXh1
fTMtaVFXI2tqbHp4VFlpPkQ8cUArPCQkbXdAbnk+TStNI2d1UAp6VWpiVVJAYlUyYXdBRnJ2cVl9
K3BvTjNyfGtjY1JLMzhnZmtXSTU2PGVoeH1xNX1NZ2Z1TW5ebGMyRiNsI2pSa1QKeipnbz4lbjdL
S0sqazg3QDVzZV9BTzBfPWhhbyRUSWpwRDFjdnVmWG9sQFp1bWdwVWNNemRvdzBeYjd8I3Z3bUJH
CnpOJTxPWG5FVE1ONCY1emVkMW1fcyp6dUkmKHZrMH5FNk9DTHhuVmlBbUJvQnhoUXktPVFHT2ZX
UCMobTlNSXd3PQp6dXMqdkQzZGhwTEJkQGo7eEglcF9OdDEwKXlYKkI1b25nYDJUMVVlX0twOF5L
c0Z3Wn1BLVk/cCE5V2Z3b2FDU3EKekZwd3EtZVVWJVQ1c0BZbTlYI0dURXc/dmtiSVhlVVQxNmhP
OXpKX2BOIz9Fbz49ZEdGYGZlV1glbDB8U0JCcCFGCnpmbEkqSmBfJSQhe0FhNitfeDU5KiVaSkpn
cGtWc1plaU19P2w8e1dCO1lOM0l0azB9dz9aRkUhJXo9ZFp0LUh+Tgp6I1owPjB5MT8xdSg7Mlgm
YjFKTlRCbUN3I051LSpCX1ZvSSFqNFozRFM5bmRuQnZpTGFNaXg5bURfITdZdFd4Q18KelFTIV4p
WnN+WTZsMDUmb1Y2Vmsldlk4TCVpfEk/ZHBXeVhFPENNPXtEOztXP3Jraz5Deytab3JLbUlffmxx
PGNrCnpyXiVSQnVQNE1MUXFnQE9ENzZQVSokN3MwVE8qMzdwJHwlQCtLaCZwLWYxX1Q/KSg3d2FM
OV5+UG53KCNHM0NmeAp6KVIqXyE9NTdFJUt6YTtfbSRxXldCZ0VfQ0dDUEI2Yz18VmtYWDJAe3pl
MUdJc20rOE45flJBbitjJVVseyowI0kKempYXzB7QDhlfHY3XzU1Rj1RVyhJe2RwPVN0d0NjP0BN
X0FucVlxQ35lKGpNZzM1TzR9Pzk0LWI7OzlBI3N4ekpfCnp4e0lGcnVtYjUrel9gcDl5bFhDUUZ3
V0xyYkBYQHxRZDIhP1hUXytrX3ZXZEh3MyRPJGl3Wjhzejl+SXpYSDl6Zgp6RDIpd0QzUTZmPiY1
X3g7ZWc1alcxV3tfYkEmZW00X0pAMitwU285KiZzfjRSIVdwfFVvS3xzVHtxPmx9Z1JsOVgKekdy
QHByI0FCNy1gQEdOQTN6PncwWWJQMW8mYUFwRzcrU3NUT1NYN3E0KTJqUXNGKm93UiY9akxgKWoo
Jk9uP0haCnpqMmReJURsKF9FUVhDdUc3Pl84dzxhfTZrekExP009e1czZlU5JWJUZ2dXdFAtbSZX
cVA2cDlYZTtWK3doTHlHYQp6eGNLanJkNTVidUh+alJIeChVc04zQ34rJFJ9OUlWcHAtXzstfjJI
cnxKVG0zI0p5SmZCKXh7T2Qxc2MpK3ZMX28Kei1PcVF3O3g7ZiZGNjNMaVVPcUM4bHFtRlUoY353
KmU/NzcqQUVrcEU2KF5VR2hpcGxHamRVfXJsOXlOTjhjaV4jCnpRez9iSzM2bntFMW9ge31uYSE4
WWl1VHpXLT1uUWJ7UylnX2xnZUlwWVV4dT47PipQXjcoam5wPktrPGE1c3dYfAp6OFhmKU9fQVNV
fENnV1UqaGNTT0RwSGsyOGMkdz9YQGQpXjxPYGl+YVVWJkBnJkE3RDskSFkpK2BkeW9BSzBqUksK
em4/RUU4anNPYWtgQXNzNmRVVVF9SnZ4a3ZNdT9BTVUySHdIRXZgKEk9PUp2UV5fYU5BKkQ5LWdk
eFctNUZhMD02CnpHPEZ7R3dJWnd9LU49S2ctY2RRezsrKVUhXyVMQjwlKE02a2UqKkRgLVI/Qzww
V2QpfWEjUytTY180dHhzZU42bwp6UTF0UGFNaCozP2hiaXBDRHZTR3xsRUAwfjs7UUBDUzd1THBA
USFDP0ohOE9UeGxvUzAqKFFyQ3EtQGF2JEh1aXAKelJ7UHdXemtIfmhUalh7UTFnMUJObUIrNk4h
TEl+MUN5NSlDKVpDdXpJPW4+aCYxY1glPnFWe3ZGYVhRbkBYX0x+CnohZG4oKlV2NExFSm9PSXlw
MiF7U0I7WGdmMjgqQm8/ZFNxKXtIJEU+X1VAKVBUVHFfTWY+Qk1AJXtoLXA+XmJMUAp6aitxYzI9
XilHaVE7cXBRe2M4YkBhSF5PVm9YNXdpO1peMmRYSV88YXhwVH0lYnJOM2J1VUQ0akpkb3otUXM+
eioKekNBIU81QEVUSE9eIVR5KTRiNXAkYSQwI15maVNSe1c7Yi0/ZmQzaj9iXjJCSG9iNXI9d3RU
SXNEUDB6RHhlbHh8CnpITj09OF51VzRpY19Sfjl2ez4tbGp3ekVofEN4Mn47X2leQG4/TGxlPTJg
eVN3Tn0zT0MjLTU/dmEocVU1ckJeNQp6bWpHNU1iJEU3TWFSckpOcEQ1PUpLSkF2fXZXLWhrT0Vk
I1k+PX4kK1dMOzJ9UTd5c3xgT3x6U3QwUXtxZi1JJVgKel5eU20zUnw2MEQkVCpscXZ6eG5sJXNW
TFJrbX01S3xLKFZhPCg3T3F0MW5WTzBKQzRwMmtmPjJHajsrIVk+TTdeCnpkWWhQfmg1Jjw9PWFr
YnpNdDhPSUZrQDJGJD07Wi1GI0M1aXlLNHV7WDB+ajlHVHJ8KXdpfVpwSkk7KlI+XkhfVwp6ZE43
ZmZnNnZ7a3RUaTx5OCVUIVMtQUJhPDtzfEM8Sis4T1oxekc2WVZ0JH11YjE7KThmXnFjR08pY2Nv
enhxVFkKejwya1g7eXFmV3BOLUNWZCh3JT1nSVJ7dHAxeUspdWpwK2R2Y0xHVEN6ZGZPMGt3QkB4
P2NDcXJ7YHcqS0JoV31WCnpFSWQ4dFUhIz1sRnNGYURsWkhXSmZ2Vk5ScThgWTwzPEJuOHs8WShZ
SWZ8MmVjajcxfnYqSDkle3NvakxAQ2lHSwp6NihAMV9nakFkYHNESlUpNlpaTjRnKVNaazkocmd+
UUJiQFVCRGA1fFRzZU8jdzVrdlVmZ3pBVlorUV8mMzVRJCUKemA5ZVdTMSVnMGU5S2lUckFBdD1s
blAzUkVUMjVlYHlmdHxnNmlOVTBNX3thcTdKYGtQZnt9T3AtJSthZjtKLWZ0CnpWLXB9eXgya2pH
LXt0QGRsPUlhOFl6dS1vUUJtM0NOK3x6eHlyM1k4S21XQFpOUD8yR2BaZ1FhPy1OMT5lZnV3Qwp6
UjJlfU9sU09uNHp0MCRmXiFzZyRCM0s2KjxUTWlnVW5jfVpERXV+ZGFgYDd1fEhTISEmeUpKMXt+
Smg3cHpqM3YKelBYZ2NYUDw7fmpQaVc4SSU8Nj5vb3NpeFcmaUBaS299QGcjRGRiN1VjYXJkKTxv
bXhSajEjJXpBREh9cXNQPDVxCllQOEpjKHBqJWVKZV5GQ3RzT1R6SitfVmgmQTM8RTxTTzVTMwoK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWNvbG9y
LWNoZWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZm
ZWN0LWNvbG9yLWNoZWNrLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMTYzYjRkMy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2VmZmVjdC1jb2xvci1jaGVjay1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCww
IEBACi0gICAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Vm
ZmVjdC1jb2xvci1jaGVjay5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9l
ZmZlY3QtY29sb3ItY2hlY2suaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDgw
ZDM3Yi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVj
dC1jb2xvci1jaGVjay5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzEgKzAsMCBAQAotPCFkb2N0
eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3RpbmcgdGhh
dCB0aGUgY3VzdG9tIGZpbHRlciBpcyBhcHBsaWVkIGNvcnJlY3RseS48L3RpdGxlPgotICAgICAg
ICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1ND
dXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAg
ICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0
aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9u
ZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAg
PGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8aW1nIHN0eWxlPSItd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVy
bCgnLi4vcmVzb3VyY2VzL2NvbG9yLWZpbGwuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBjb2xv
ciAxIDAgMCAxKSIgc3JjPSIuLi8uLi8uLi9jb21wb3NpdGluZy9yZXNvdXJjZXMvdGhpc3dheXVw
LnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcu
Li9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29s
b3ItZmlsbC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIGNvbG9yIDAgMSAwIDEpIiBzcmM9Ii4u
Ly4uLy4uL2NvbXBvc2l0aW5nL3Jlc291cmNlcy90aGlzd2F5dXAucG5nIj4KLSAgICAgICAgPGlt
ZyBzdHlsZT0iLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRl
eC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1maWxsLmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSwgY29sb3IgMCAwIDEgMSkiIHNyYz0iLi4vLi4vLi4vY29tcG9zaXRpbmcv
cmVzb3VyY2VzL3RoaXN3YXl1cC5wbmciPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBUZXN0
aW5nIHRoYXQgdGhlIGNvbG9yIGNoYW5uZWxzIGFyZSBzcGVjaWZpZWQgY29ycmVjdGx5LiBZb3Ug
c2hvdWxkIHNlZSAzIGJveGVzIGZpbGxlZCB3aXRoIHJlZCwgZ3JlZW4gYW5kIGJsdWUuIFRoZSBh
cnJvdyBzaG91bGQKLSAgICAgICAgICAgIHBvaW50IHVwd2FyZCBhbmQgdGhlIHRleHQgc2hvdWxk
IGJlIHdyaXR0ZW4gZnJvbSBsZWZ0IHRvIHJpZ2h0IChubyBtaXJyb3IpLiBBbHNvIHRoZSBncmFk
aWVudCBzdGFydHMgZnJvbSB1cCAtIG5vIGNvbG9yIHRvIGRvd24gLSBmdWxsIGNvbG9yLgotICAg
ICAgICAgICAgTm90ZTogV2ViR0wgbmVlZHMgdG8gYmUgZW5hYmxlZCBmb3IgdGhpcyB0ZXN0IHRv
IHN1Y2NlZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1jb21iaW5lZC1t
aXNzaW5nLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZm
ZWN0LWN1c3RvbS1jb21iaW5lZC1taXNzaW5nLWV4cGVjdGVkLnBuZwpkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZDM0ZGM0Nzc3MmUxZDY4OWRlNGM0YjE4ZTkwY2Y4ZDMzMzFiNTgyZi4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5IHBhdGNo
CmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAxMDkzMAp6Y21lSE5TeVU1TzdAa1NrNn4k
TiFxRypKR3MwRzVWQVEmKzBuXzNtSUsqRGJJZlo3NilCYHxQNjBZTV9fcH59QUwKemFZSE92RVJj
ezJ3ZVZtO1FXczxzZGVDcXshbEI0Jk5IMTNBPUo7SVNDTkloU1hZUmU8X3g7UEFgRU40IWRBcTJx
CnpYeyNYIXFWREYoSmIpbCVEdVIlWHMzLXg7d2I7fkM7QT5tNyh+OzxxVl9fakRldkZBa0xWYGpw
THhaZD5nVHZeJQp6RWE/YChycS1jNVAwaG9zPSUoUlQpfjRvV3tFUGVpNU0oPmtqcD1hazRFbkIq
cEgmcDVsfEZjfkZqSXErYHJ4UX4Kem1SRjU9JlFSZXNtK1BmZ3NhMDNCKW44VEtIYE9aSVQ+bCVu
WlRJaTdaeUgoRWIjZExiI1Y1UktlK24reTclMSllCnpwdlMtdmwlJH1kTDFrYjw5aElpaiU2blJK
IUViMHhDTWpqRzZoN1V1V0ZHZXZCRU9tKy07O3NnZ1BgUEFpUUU7NQp6VzVDOUcqRlZfSWchNXFO
NUM+aSVEWWszcmpQZE1PdDk5WDh1ZzkhWEZMbjR0Qn1fSWkkXzhzcW9KKjF8O356eGsKend7UyFx
MSVrJUB4c0lZWXckcUlULX0mMU05ekdtU21sLVVOSEJfQmw7ZDt9XlBqIWpMTTxBXz1EfHUmOWhT
bn0kCnpZWiQ2KFFMQkNsKW42ViQpekc5Zmg3X31XYThSVypIZ0A/ey1XOGsoIShXSkdZOHUpdj53
fjFeVmQjUDU5KjNiQQp6ciVeSTN1eXBvNntnd3YwbGF4TE81K3lhNVNgYkpeZUlpcz4pa2U2O3dv
a1E4LVJfaSheYWFnNzh4fCNzSXlNTXcKemQjNFlITVMqPFc4P0d2VlBgU1l0TmEpVE1IZ0BNfSNn
MzFqYFVzSnh1Iyg2MGEtYHJDa0wocDllaWJnaHhDazFxCnpEcTdVY1lpVHJgYmo/YHx7bjxJVThY
clVEWTB3IUlPSTBecTJEVW0lNCRhdlY7REI0R1V9QFRNTioqcVpQQEJ7IQp6R25nOF5YTURDeGJa
O19ueE5xWTI8TjZXNHNLYSpKbVgmVipMMilNZyk2RiQkU1RwdmB7dDcqYStYQ1FyX0JrTWoKeitZ
I1V7Y1hvbGVqeykyeyNnJWZuKCpTTn0mSU8zTzZYNGRpYkNiaVozVUZzPz5wPE00MEpsWWFvKlpy
cE52Vnh1CnpYX0phR1ZlRG5rNDVTR25Tcj0kTl4mLTlJZn5TUyokPlpIdCh4I0IrMW97dGdIRmd7
TXdtc0tOSUs3O1RRPThULQp6RkZ6SjJXSERrezdjdURnPVdGUFU9T2JQRSY9UENIIz5ORD9zR0pZ
PWZEYzdnOSM5Sn41ekBfZEJGVHkyMD5yckMKemtxXmFxJHBfcFF2Sn5YaHhCeDhQYE5tdElVbFJj
Tm5SVGtKeFlPNz1EY3Z1a2wqanAzeG9oVUZ4WWkkckNMP0VeCnojNjdlQlQraGlLJjxUSXtNRFFA
TlhPcmgxJHhleEpfeWB9KiE7R2NTdDI4dX5nR35qbkpJZ21mKmk3STsqWnNrQQp6czJ1PzZHQUM8
QElzPkB5VnRLMF49dWBtT0BxRTs+aDhrMjJBZXBYSHJrbzJFMGdMcG5gKjJ6ZXN4QkwyVz5HSFQK
ejRpbD04TD1zV0leek16VikpbTx8ZGRCKj9WfFJVTWRSbmAlcGdWUVJQb09OfilhR3MmU2FAQHtn
bVpkeSNjQ1kwCno0UVl8b0hSNjUlPTU4RndUfi0reHplNlAmdT00aUpnUkkoQ1hpP3xYYlJlOGs7
SzFtSHl2c05vMkptMEl1TlotfAp6PlkoSUcoVW5SVjI5dXk3MnBwQjZHR2RAaVE4ZikjQkEoXztz
ZFg5NC0jP3BZVmlHYW5wQS17Z0lwNEdwJio1XnAKemU8aS1+dD9nSkM5VWtrbTdgV2VXN2lUcyFm
ZnJ0Pz9yVzFUQihoU1FubyZhdjxqRGwzQEdFQC1TUEl0eHZET2BwCnpDUFBhR2hFbGU8ZHFPRjhz
RWpRWmJULWRMSngqTndxZ15+JDgjejZtSUlHXjw1emV8SkQzYU1fKWtgUGVqYGh1Kgp6P2B8dyV7
bl5pI3dMY0xMaVpvQH17b0l8Mkd0cC14OyZidSU0cE5oVkNaa159UlkyR2s4MyNEUjxlMzQ1VnRm
YU0KemhZS0xJMFQhRXBoQlJteTJVfD5eRk8zUW5oKjV9QGQ1THAzT0QoI1I3UjRgfkhudSFUc05r
JGxGNjgkMnZ+KDs0Cno2PiQ2aXpSaHUmRD10fklpcyFzUEg2MGYqdXhMTnVSMzg7eUc5I3JBeGEz
UWs3VCtkSyUqJj5tQGM9UmN5dVd8MQp6WnY+YUEhX2Q1SHBFRlFzQk1AYFheNlQmKzNTQSlQOHRl
eVEzZkJRfDljRmRHJn5ebyhKdTt1UjZfNCNzM1l+RzMKej4qaiVMS3M5MXhtN3tCbWFsI0FfQUBV
Z3pWZil+LTx8KU5UYUdSeV8pPVgmZkpQKVA5ck5tJDw+OGIjSEI/YzhfCnpRUnBwLVRvJG99JE91
UEZme2ZPcVdaSmheTitGfHB6XkhrekNke0hYa1ZSSy1EWm5pMTFwRTJDUDZMaH5WPnBBewp6Smc5
RjdnJWU8Q20hd2s+JlQwbGB5fXNRNj5ORXY+bnNtKz4pK2lwUlFEJW8hLVNLSGxLfjxsIWpZaT9E
Kn14cSkKei1TPEs4VDtQc0B2SzZxZmdhWSptTmVEQFpDP09KdXMzaztzQzNZTlE2REZRWmgofFR6
PjZMaChDKkU8MCpGTkcrCnptfW18VntTdTtJTGJRO0d0e1R5MyNQPFRDX2UhKippNEh3K1hoRUZn
NUp5fFlYJi1SX059TEgzJEs9RjYybVk1bwphUV4taVdKOSNIPHMjK2YqO04jfXgmOCY4MHJ+VjZz
ckFwQk4KCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVj
dC1jdXN0b20tY29tYmluZWQtbWlzc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tY29tYmluZWQtbWlzc2luZy1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWNvbWJpbmVkLW1p
c3NpbmctZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tY29tYmlu
ZWQtbWlzc2luZy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3Qt
Y3VzdG9tLWNvbWJpbmVkLW1pc3NpbmcuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggOWI3ZjFjYi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2VmZmVjdC1jdXN0b20tY29tYmluZWQtbWlzc2luZy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEs
NDMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAg
PHRpdGxlPlRlc3RpbmcgdGhhdCB0aGUgY3VzdG9tIGZpbHRlciBpcyBhcHBsaWVkIGNvcnJlY3Rs
eSB3aGVuIGEgZmlsdGVyIGluIHRoZSBzdGFjayBpcyBub3QgbG9hZGVkIHlldC48L3RpdGxlPgot
ICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBh
ZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90
aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0
eWxlPgotICAgICAgICAuaGVscGVyX21hcmtlciB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiBn
cmVlbjsKLSAgICAgICAgICAgIHdpZHRoOjE2MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiA5MHB4
OwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJBIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpIG1peCh1cmwo
Jy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKQotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5n
LXZlcnRleC1vZmZzZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWlzc2luZy1jb2xvci1v
ZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
ICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0i
cnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGVscGVyX21hcmtlciI+Ci0gICAgICAg
ICAgICA8aW1nIGNsYXNzPSdmaWx0ZXJBJyBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5n
Ij4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDwhLS0KLSAgICAgICAgICAgIFRlc3RpbmcgdGhh
dCBtdWx0aXBsZSBmaWx0ZXJzIGNhbiBiZSBhcHBsaWVkIGV2ZW4gaWYgc29tZSBmaWx0ZXJzIGNh
bm5vdCBiZSBsb2FkZWQuCi0gICAgICAgICAgICBZb3Ugc2hvdWxkIHNlZSBhIHJlY3RhbmdsZSB3
aXRoIGEgd2FzaGVkIG91dCBibG9jayBvZiBjb2xvcmVkIGJhcnMgb24gdG9wIG9mIGdyZWVuIGJh
Y2tncm91bmQuCi0gICAgICAgICAgICBUaGVyZSBzaG91bGQgYmUgYSBncmVlbiBjb2x1bW4gbGVm
dCBvZiB0aGUgYmxvY2sgc3Bhbm5pbmcgMjAlIG9mIHRoZSByZWN0YW5nbGUncyB3aWR0aC4KLSAg
ICAgICAgLS0+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRpc2FibGVkLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQxM2NlNjYuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRp
c2FibGVkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLVRlc3Qg
dGhhdCB0aGUgY3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5
IGlzIG5vdCBwYXJzZWQgd2hlbiBDU1MgQ3VzdG9tIEZpbHRlciBpcyBkaXNhYmxlZC4KLQotT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLUN1c3RvbSB3aXRoIHZlcnRleCBzaGFkZXIgOiBj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLU11bHRpcGxlIHdpdGggZnJhZ21lbnQgc2hhZGVy
IDogZ3JheXNjYWxlKCkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIHNlcGlhKCkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRp
c2FibGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0
b20tZGlzYWJsZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjRkYTMzOC4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0
b20tZGlzYWJsZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEyICswLDAgQEAKLTwhRE9DVFlQ
RSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08
c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
LTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJjb25z
b2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1k
aXNhYmxlZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tZXhwZWN0ZWQucG5n
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVk
LnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2U3OGM0ZGI3M2MzMDU0ZGQzZjcy
ZGU1ZDNiOTYwZWJhZGFmNWZkYi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAxMzU0
OQp6Y21lSE9YSD04ZikrUH1LdW1GUCFJIUk5KiE5Zjg8MXFzYlk1ZTBPUkM/eF5HMkdSXmVDPHpI
UjFPPT52Zyg4RTkKek4ocGx7I3NDUzdmflgpdDZwIz9lMDc4aDZnZFJjKF9iXkRfdGhxbkdgUE8m
V2B0cG45QFNnTVReWHpCdXtwYCZtCnooYXB0UyQtKkJOJUVgJHNhZE87IVApPUB2b30zKX51K24j
NjwhPEVKRnp7bzIjR2I8dXt3SSg1MlZzNSptTlBmcwp6OGdNTE4rZ0FWVytxYXUtLW0tYXtwUDhC
MmFTTXhwZlBoViNIeXR4cSR+NlAwWjZQQEEtcipodjxGej9vJC1xV2AKekh5fV8kQU1hPEt1MEVp
N2BpSTlHbyoxaCtkWThvUyo9NDc2JGd5cTk8JWszQ1JDKjZ9OXowZC16SXR+fT9qRTBiCnpfWl8q
JHBLbT1geE9haU48OHNaJV4qOHRLSWtkYSskJmN9JFE8azI8LVQ1NktfO0lnfUUzVTIjNlZYI15C
QGpoIwp6SFJCTkkwejgyc0trMnVEa1RkdW1lR1Y8SnFeNCZfbCFMKitocmA1KkFkTjZwaWV2JE5z
OS0yOFEpNFNoSitAKD0KejlxaDtvdmV4JnxXQX07VUk/eSplVXFBVDVIIW1OeFU3OT1ndWlxJEMz
Wj1mbTdjRihPKTNFMitPUCN4bGk4KlVfCnpWbFUtfHlYRHIhZU5+dm96QyNTMyV3Yz9mYkFEIyYh
U3Y4fSZiQX5XJkNgbDk5aXd+MSVaVUNvc3tmYXFoQ2lNKgp6SjZCKVNFTlpPRiRRWSgjc2BAZ0Zf
fkc7QCtIaDRMRWg/d3lPbS1BNEV5PmxXPFp2bDM/RHJVMkZiQ0J4e2B9d34KeitmeyZ8MWFwN217
KzVDdHtQYm4hOypEfjQ3Slp3ZEBNMVplPyQ9KGZTUyEqUm8mMzMkR3RJZllNOyFmVTtzVS02CnpY
TjZDUXVLYmpJZk5wKTtiOylIYXs8WTlodWpYelVPPDRrRHwyWlEzVSNoKCFQVHozVnYtM1RvdTxZ
dXd7cTYxMAp6ZWFDaiMhQ0RqfUN+TjFAKkRFZG51PkVVWVh5fmpqPUhRJnZ5SEQoMlB+eFI3TEhE
bytPZDtVTjRUfHwrOS1DY2AKeiRFJiY3amx0U0JMSSFOZXVnSjdqcDF6QDVfI3VRKUc0S0dKb1Mo
WVdCdlQ4aWQmdHVZTms8SntkKVU9VSY1akRPCno7eTdmZHAxQGElOXVPKEUzLUp4cW1GMDAwPSVD
T3RAQVImJXcpc0FTaUE3fTB1MGQ4WmhUTkNUJnxvWWxuVUBfZAp6WVpyQT1KNFp2eCt7QFopJGU1
Zj9zdXBRcUlqVU5hQyl8JllXfX5Nb1BPTTk8QDFEZERVSHBqVmohKkttOStKdWcKekJwWHJSNFRx
RCVvY09tIUYmOFJvO2NAV0lXKk8kdCZHZEBCenx8OzY+eX1DYHQ3ck9AX319blV5ZnMwNnFTM1dy
CnpgSDchdy1vLXckeksrfVNOI314JUYpR3dCRTEkbmZmV2dGN2lyaT9aKEY0N1duMHItJXczWlp+
QHkyaiZhQFR2Tgp6ZW8xdzZRbVFmQUZ0Z01IN2E9OyVWP3trM3pjZF9GPCZjS1hGWm9vcnF9bGw5
KDI1WHVNeClMaDh5JDIoOCNaQnYKej8tZ2V8P1EhalJSIVQ2Z3xNRjQrdDdqNzUzQld1bG4ma0U2
M0NoP2MpTVRyMC0lM0RLMjlrdUZvLVUwRWQ2JEcqCnpXMTIoRUJHeEsjZitZbCFTTCNPcnAzJn1M
Q0cxcXcxQ1BOcz4hKHdzQkRncGZVQHR1MHpDJUo7ViNPNmUkMTdwJgp6X0VKbEhLO3lRMShUV29D
IVFmX3F7JD8rdXdXTzl4SFFucVlMd21IUHRmKTEtfERUNVdabFF+VWdyV0s2VUExQDIKemEkaC1J
KVdfSWhwR0RBZWNKV3d5TVhiR0N5M3dtWkY2JTJqMUwxTDNAWSQ0JnNaUXZedlZgTkZAM3xARmAk
WWo7CnplJUsjOUlfNH0pPTlmO3R5X3czX1lEMDg0d3drbmcoYn16NVMjY2s0cnNgT15CWkwqJWlo
MTdNVzZsT0RTdWJYdgp6Yko0TmNLS29wVClqPSFsXyRNQVhzYHR9MUNOKTlEYzEhbjk2bSg0UTgq
WGRYSzJoKDtiQnlZWWU9dW8lK0tCcEcKemhLenlQIWo0Ulkhc01YNFgmQnJtWm00NXMlKlUqfShn
cXJje31ERF5QSE0+b0IrWWEoMClxVC0zX3pTKXR7P3xGCno9NVJYTFhBeSo1MUVxdSE7RFpMakF+
YDR8aVk+c3RARnhDbGlDY1dSeiQ+e2s4Z2kwdGNEfns4MVB5Rkg3dDRIUAp6dCVRRytYPUwqUGNZ
QmhgSlhmRktNO0AxKHhZYkdaMk5gektnRzh6M0coOUE9X1A2OX4yQn0pO0tIKiVQeXF3ZGQKelEo
PzIxdGVEUVdMUWNed0hnUGF7TnpJN3A5Q0A+dE4wR0dmS35gOHZCKWNPVSFEeEpGU29sUzQ0aklv
YFdTRzRoCnpUX0MjI2YkXlIxK3BhO212SF82QVMmTFJCbTh0K2VrQ2FnblAjIXEhMmArZGxoaGlh
TlJEOUpVTCVxeDlTTytMRQp6SXZXQWRnR1YkQkJ6Rz4zMF4wX0FfPlIhflB0RD96K308aFdFMFp3
YSU9MipwJmtpdWZaYD1ecmheU21aeDc/cjIKemIjTDF8KGVfQFM9fmRfeFZ1JlYxdT5tfiFSaGE2
X29Sc0RIe0Nxfj9eNHktLWUpQDsxMV9nbjNBY3dEJlkyK2hfCnprS0oxaDtOcSlsRmZ1a3xBYGFB
bzBgcWVmLWdVVmt3al8je2tpPkQoV3ZYQn1IJERXTitQLUpidGtjVTQjbjApWgp6OCpTRH0zPG92
I0d5diohTmMqPkVXKGlUVDdfUWh1QF9sYndOJiNQZShGKm9DSmk/d25laXpIVU04RyNXSl4yLSUK
ejZIQ0UmXlJ3RkwkVVk1a3JCRDJzLU85O0MlX0licWJQOE12eXohaStpWk9ySXBJZUc8b3Bfbn0l
SFZtTjx6VXkxCnoxWG1ZYWFOaTw+KU1YNTk4fWV1ezdCP2s2TDZ9VG9vRGhBUGpZRXB8JTlMNz5I
X3lhTzd1P2syZDN4K29VU2RQUgp6PFMpSDdDK0pwI08tOFRZUlc/N1Q3ak9Pfkp+O0xqJlkqPyFt
VXVhZ1k+S0JZOGRyWTlhYEwkPEB3WiZPNlMmI2gKem0xeExLY0R7VkRedl52TkRgcEg3NipndUQo
Q0JvT0MlKy1yUyNnNVpVNmJaS2UyZH1wIzc5c3lqTkJgdm9qRkc1Cno2cnBJSUM0JCVYSm1zLWcy
TDZrRlpjVW5NYSY9Y2ppelhfe3VaVUJaWTMpXmw4ZjgmMm9WYEdDQVA4YXtILV5LWQp6QUdRP3Nt
cDJ6LUo2PkxCNyk4YTJ4Kk1venNGPXFRezk4IVc5ajxyeWw/SmwqVClAYCtecnlqcEQxbk8xODZY
JVUKeiZvfjNfdH09fHpQcV5JbURPMShsYD57MTZfe0N1PkVQYnIoUypMbnpZPTNwUnNjNkU7aEAy
SHh3NWwrfSVsaTIrCnpeQEhnVDl2K0swQXZWdj5GbVp5Y3ZMK1VxOHQyTnB1MnFIVT9wcj1uOEJV
RjJHY3tza3pnRGVoKDU+OEFMYnBNSgp6dThQUyhPZW84MThgOGpaUyRUJWpZe0lFMWZOTkUpREx4
UlpIZXQjX3IjfjJ6OH1xdzhsPD1yQ0xuRUBeUl9EJXsKentJNUQ+I2NiN0dULU4pY08oR2JfPm1u
X2h8RHxydnVeTyRoeyNTdjFGSGpwUXk+el43QEk5UmIjcVBmUzwqaHFXCnpHKmUjZTFKQ3xOM1Mq
b2FfbDBCY2U/eiNGa2slQTZDLVdvUVU8OEdyN0lsZ1Y2djZtcUslOyFtRXxkIVZkbSExSgp6UEhh
dCt1JSpIVldRV08xZitpP2xmODd0ViF9Q2c+R1pmVWlBZ0orYCpkUW51KVR9RyElcSRrPChjU2Ql
e1JVKj8KemtAd2s9ZH5NeEYpMGhQSTZLZihxPmUoMnZ5V2BHTl5CTHVgbSEjQEFQbTc0Kkh8Qk5D
TVp6TjAmfGkobU0+KFhsCnpJK35FbXF+PFoyKCVJOXZWMHM+XiRjT1otKG5yTzU8WTZncCY9QF4y
QD91USZMbClKMih6VndOLTQ7I3FHN3h7Ywp6O01xPT8kaWw5U1gteTA5NWpmakVuSENQVTVMKDgx
bChXUillc25MYkRHfFhaR3dlYnVuIWM0P0VmejYoQ1pNUjAKeiRfYy1gJWNyMHgyRmlJO199Q3pO
SXF1OyR3KGhqQnVES01DKSV7aT5tZDcpKlR6KjJIeGhSMUxkX1g5RDUoYD9qCnpqWFJJYy12MEs2
dXoqTD9AX0F3d2cqbHAlVihnKzVTWXU/PWg0SGRNZUFjenVFRlA/Y0EoTEUtNXRhb21XdmBudwp6
UTw2YjZKQ0ZfUDNSUzl+cXZCZXQlYilVd1hfRihGMlkzZHQhb155LXROQU1mbi1UN2BfVEdiQng/
KUhEeGcxU3sKemw8PEA4bGxufl5vbzNtcCQkX2MrWT1QJE1jLSVhXlZJPVg3NyhaaDtkQihFbWpG
SU1RSyhhRm5TN3xxal57fUNYCnpzd1cjMih7MF9SUnRsJTlGcDheYlh4I2ZSQEY4RGJzSHV2PFdz
YmAta1MkLVBLYmR9QypWJWE3KT8/I2hob3F7Ygp6P1d6X2VSQV4rcGgmRWdxPUdSI2pORk0xcVM3
VShjc01Hd1p4cFkpLTxXe0dVX3NrTjwkLXZ3RGlzM3VUZDl7UlMKekJxV35nZTE4WGQ8dFZLIVNw
cnphS35PZkZ3YWRHdU5hcTNnUjZyP31EI0wtR1kmYEN3U1YzSF4weU1sbDhmZ3dPCnolejVLcTRD
XyswSnA+bmJhNntBVCtDRTFHYWFuSWtqWVl5WSQ5WFpYRCYjKEV5Nzw9eTlBbE4oaDBCXnFXUjd+
Kwp6JlliNFBrbEp0PEUoQHRicGhXTiFOMH5XUTFYQ08tZzckUCpGdWtGUWYyTFBKPXZFYUJINmpW
eiY9QX4yQmY2e3gKemBNUXRYSHtGbVI/bCVfMWppJXwpclc4cnlQOU9UdkFBQHpuWjQrckxYODAk
e3YxIT15MzFfc1d4Q0tjN15iflEmCnpoMlJ1S2N8OyVHMDZwXzExRCF0NWE/Zk9qZTsmITc4Vlk1
TnZvZ0BQMlU8UUYqampZbExYPU0tODhjT1h0KSR4UAp6LVdeQ1hgNmp1YUUoOTY4OzdxJU5COzFH
PE1HOWs2MjcwQkxaP3U0I1FDbC1HbWBXKHkhWCpkdzx6bnZMQlYoRkwKem5oYyooPy1EX0JJTTE3
VkcjMXkzajF5VGU2QD5ZRlZeK1JLdTAjM3ZFbE0rS3RlYStaLShfUUxBN2B7JHo2IUM0CnpZaShg
IXUjRUZCSkElTntxV0piYSl7N3xpUzg5VmcqeCZKeWJUMkFsTFp8dCF6MEtRIz5jRCZZWGxIKHA0
Q3p+Sgp6dihENTZJMUZ7WVhjd2BmTEFqdT9hQVJCREJ5RTZXQlcjQDM+OE5PKjtlYD89PDEtNVRk
PDhnOFhyI30zbD5DQGAKejFeTiU+Jm5RamxEd0dlaCYhSmI8UF53WXRlKy11TCU4VmZhTCMmdT53
KD44Z0xJaEkjezQtY2Bqckt7RyZgZDdBCno1SFFiVWlMTy1OUWsofiRaTGVjdjZzMkVFdGU2Mk1A
PX5ZKiM0TEdAYndKMm1WSjFVVDVwOzduUlkoLS02YFJLSQp6TGJQKmg/YFdzOEVXO2owMWc+Ymgl
eX19fjZrQm5DZkowaGliMW0zcWpOb08wU2FNV1I0REJuR09lU3xgWHpSfV8KejNgZXpyckJ+MTJ0
YzhAKHtYYDxYVlhiMmpeY0Z8KFJgcjlNXmBSKE8yVmR4VEwkNDVPMj1xWTE+ZzQkTDNJeTMqCnpC
fTJYYVhQPG9zWklYdjZ0WD0pMTg2QFVUdURNVSNxVEtLVXZgSmxsKzI0KCtOTzlkY15UaT9QVVA/
NihyNEhHZQp6akpiWioydSVXPTY0MEEmUl8yKypJcllfKHFuQyFpOylCPjhFfExIfnVRYWFnPTst
enUkXmBZbVBWVXY7dj5gOyMKejEzT3BtU2IwT0BHQ01fPiFoPkImayZ2b1oxOXFPNUtlaTlAajVl
QFNXaiErPCtIe0VzUzY5RWUyX2khVDBMfThqCnpOa3dTV1k1Pn5ialBiMkQkVk58QmRXSkpQYklL
QiFgZm5YfUBlY0hNYiZnJmZxSkdzR3dsVXs4cV5wOGlocHJSSwp6bnNRXys/bEZvS3dZXiRtezJE
TkRTaTVIM0UocEB6KSVTQGJaJDQ7MWtnZnJ5VWI/Kik4YUxjZTBSR2k/QFBobiUKejM3RVIoPTtw
UE10OHs+PXNqR3Nle0pZWiptVSF2eVJwe0lwZlNkSzFYQTAwSkNFKHdgOEJeU0txZHVXeS0+SHhL
Cnp1ZFojK0xVQCs2ZjU/c3UkO0V9X016Qy1Ca3QwSUxJUjJNKDYxRV9NPUtsKUUoQUdgUzZuRzZB
YFA4blNoYj97dQp6WGRNejAtYCQ3YUpPcW1UKVoqWkkySjZ9QiojcVBMdU8zPEd4fDZoI0l4Qzt0
dGRZMWRrKk4/ZkUwPG48ZWV2Qj4KeiZfTmJ9c0FHUX05cWFTezVNQjdOZjd2YC1jOSVkbXs9WS0y
ZX45NWRWezFxQmJDUiFEVWp2RyVjVkk2ISM9JHUrCnojS3Npd2ooQm08aXNEKHlhcyRJNmRVWD1W
MTJqVUszfmVLaSN2eTl3SWQ7TXlQd093VTE1QFYxYUUqS3RxMlM4cgp6RGs8X1B0cU94RmQ/Nnxa
U2szengyRzBPUWJ2ZWJuQWM/Njg3I0owKE1BXk5UQnJDbW9DdmRyJjR9QnlOQEp9OFQKenw2I21g
NmtZb1FeYT5AbHh6MUBTQmg7RVNsZUNfRExhR3Q2PXE0V196I3ZKZWpjcil9b0g2O3k9cXhYPDtr
Nj9OCno/TnNMUHhwT3VlKkJiZ3VNSSlIZE1MMiM/Znc7UjlUPU1HdUReayUyIyhAcDFfYUxCWFJR
bGV7WnMqeX0+Kmtwdgp6N3EwQE1GPH1gYGl0eE1iVjlMdHhaYlJvPGZAc3R9Xy1wflJOZXg4Zi07
ND02bmZJZzM9IUZjSURSeTcjXm48MmoKel56RVBPWGs4MSlpcThvN0s9KmZpTkRHWCQhYkd9VGoo
PklxZ1ZXRy1sOD9ZZ3d8I0BwS3B6OGJrYFhKd2tUSUBWCnpoMTwmfk1ORko0JkFZVlN3byNgNSNj
VyhYQDVjQzVAdCNfNVRCO3ZGcllXdVIxLV9PYEBaVTIzNURlWjFVPGdUTQp6Q1A/e08xTmJgMyFk
fVlQSztDbkllVDB8dF4qP3R8eW1yPWtAJVNzKFRkIXlTQ3o4JGxSXjdEa0lFdT9eJD09MmAKentu
VFVCXzZkVUd6ZGR1PWNpayU9WUElTEpJMEooI2dUZD9kdEpoYVRXbyEjejw2WmV2T0NhQVYxMipw
NWR0OW9mCnoweWRzZmYzT3ZEKUxPdHM8QEktPCpeYj4oUCphXypIYkZKQERoUTNXNCs4OT1iTjIm
SXRsUXl2UFFuU2h2cVlJTwp6dnRuQ0AlcDY1IW9TRG4ydlN8OE4zVDFnX0UtPm40OEY7UjskWkZI
dmE3ST9Pemh6MzlncVJCcW5TX3VAMiQ+KykKemxOSEt1YXxUKFZsb2QpQHVkT0hSQ31rYWBZO3JY
X19taj1eVyhBX0daPDYmKnZZfDlsSGVpJHU3LWZJcmBGfnN2CmMjRn0rRjgpMm59JiFmVHJGVWRM
V2FvSnQ4KUEjSlowc2FlNXgmUXpHCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDUxZjhhMzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBA
IC0xICswLDAgQEAKLSAgICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4cGVjdGVkLnBuZyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4cGVjdGVk
LnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmZmNzRjNzBiYjdhN2NhMjYyMzRi
M2MyMmEzOGRmM2MyY2QwM2Y2OC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCA0NDEy
Nwp6Y21ac0BXbCZzRSg9fEd7eUEzfEwyTF5Ye2NYdWJhK3UkREQtUTl2RVNhNWQ8MkAoa0k/aGc1
UXpGVzhJeCVZam0KemVAeFpYb14kcjwtbTdQdz8hOFpwczxJM2tHNyZOVzA2PiRJbH5lfStVX2J4
PnZAUm4yJDJVMSVwKU1hRTM/NVJ0Cno5dX5HJTdXVkYqanNTQiRaWFB5SGI2IXBoUEhyfCVEfDJn
V0ZlZktCQ3klKWAyZF8xVXh6KDAwcERPPyQzWHFjJgp6KUFXSGw/YmVIPGs7QD5wZXFaIXl2WGIy
RyhZOVh2WHs2UHlJNGVEYW4jcEpgOCtacCU/R3NIeDZiQlcoVzN2QG0Kemk+Z3Ruey11SDVQUmRJ
TGlNfHFJUTZWSj4tLT9OZ04/P3tAYyFrVXszISZJXyleXiZUKXZVRlJPKWE7emI8QlhoCnp7YiR6
LTlGeSVPR3lXPUtKUkNTVlNxSmBve1Voe1glcldWZkIlOCpZXnVPMzhEekI8UHlqMitgSHAyZ0Ep
Q2t4Qgp6SVchN2EoRXFUX1kqIUZlbEZpN21yc31ybnwxQFkmSDV4Vmd8MT8xa2JaV3IkbHh7dzxK
YztjOEd5d0pZa2ZIeUAKelkoXyQwTUdGWFBITjt8SXstK0BZbXZSNUU7SEclemU1YDU4TDt3SEsz
Z3s2NkAyNklBcDVCaD9GTz4yVz0mJXZjCnpLZ0l5fldTeXlnKUJKejFfNj54WHp8SXxSTDdYfT1s
eGZnT3hJZ0NhdyFFJWU8TlJOc2Alb3NLcHlNVERVfDlKLQp6dUhya3Q7b3tmeC0hTmNDTCl5QGFu
aDRZZWNpKkItKSNjc2pkNk5LUiNYZF5hRGdUV29EajZvfDwjeDNzX3NMJVAKeihqLUYlPWtmbXp3
Kjl8QGVZTDdmeyhDUyZJdChsa0hfO3p1cTY3MGpETWNkZFQ9Kmo1REoybiV8SE88aHNld2p8CnpA
eE9wPGc0e05CO15yOGo8QlhhNFQ/QUY5JmNNZGxHV1NPdytrR0tCcVI9M09eWWspZ24qUiF6cGJH
a0g0SFViVgp6UCYkJD91bFEyN3J5YExHLXB9JSg1USkpYFBAdzsxUW92TEd1bFZfM2xSV3hjRSNw
RTMrdmlDbWxBeXd6I3xwQiYKelF7RDRINC1aK1Z7YF96cDsocl9tR00xPjN7Qk9yQ1oxPVV2N2ow
Y3pKYFV1SDFFXnQ5I2dfdUNMfDZqTEFVRnNHCnpKcFhhI3k3TUw9eStLPDszMSU2NlBDLXNmPyZH
ZSFtP1VHKDE5QUJXNnJSX2puaHopakYod2orbmdrN0Y2fjhiWgp6a3gzZz1qTk0oUEdjeDZncHlg
VEZyYmc5aHc4R2EkY1FyYUYtYWRaMk5pcWdmd0R8SzU2JT9vMEV3ZEYyUDE1UioKemdWXkxzbGR0
ZWA+QmtabVE3SDcpbittNmVrI3JtWGI4O3gjeG0rXzFRIWZYKTxjdCNzLWNLPGBEcF9maF81KmFa
Cnp5aGxJU2hxPDdtZGd6PURHaXIwQTBNZmx2dX0xLUUmcmFtdEtmaXwhaDNyQ29FVHxwQVV3Zjwp
d2ktemgoVk5zcgp6JjZ0QCNAQlh0aTJ4NEc3ZWZZJGBmQ0A3PXNZOC0lWnVVM0szZ09eLVpQZDFm
e0NkQjtlWkJwOUdlIU4yT25nVH4KentLMD5jekEpUUR3eWIodE45X2NzR0JwTVVBcmw1RW19SmZT
TSlMRTBFYXAxQEA1P1pRSTkwKUQmfkQrWV5wKVZoCnokRnwtfDVwRGtlQ3EmQ1UyIUVffSg+cyQl
JkZqa2ZMTkpIRikzeTlOKmFPRHJzfjtgOGUtRldVPmtLNFdYZ2ZPYwp6Snc8NmtLNikqX2o/NmV2
K3IhYUNvdXxNdCsmIz9fUSlFU2Amd1BsVnhXSGRwKiFZLXkjSyt5Yz0kK081KFEhTyUKekdqfU9X
ezRpRSE4PyV3bmA8Pnc9Wik/dGh2JHJaWnZoeXBjMns8MmxyNElfbkJUSTF3MH0qX28pSF9KPm1g
TzhkCnpJI0tXOVdgaig0Wj5lQH13NTV1VCRqZEs4NCFBT00qWiRoWVIhMHlWM1g7ZlowM1paV0RK
N2dwaXVmdyhoTClaZQp6Xk92MWBBVyMxZkA/U2hIaUdKT1ZLNzhgb2Bfc2lTd1A0VUwkV1AxPXFh
cnhIXlc3dzQ5czRmVkFFKWRVMUY3dXIKelJCclR4bT9RfU1xe2lxUVZkQHp9emBSc35xM1BpYmol
T05vIV5xcHVLell3TnZhaitVQHdGfmNASnFoPzJmNElNCnoyVXxkWnRWPTJZaE98TURfSzwjZDYw
JFA/SmhtQ2FXdjU3VjVgU2Q1LVBnYk9BS0U8cDwrWm5sTSgzYX5zWm0rMwp6eHJMPHc9YnhIRVFQ
MlheV34ob2RXXlI/d216WTZUMkU5PER8MV9XKDtBTVchNHV5bkdMZ0JiJWFkQkElYHg/REQKelpH
b2hQMUx3dVl5ckRRMXYrZXgyOXAxMlBZU19vfEtreG5BVX0/KTsoRigtNF9sRyZKU1NtP2BVeXdP
cUE2bGVhCno3OUhpPTxhM1pIIUM0KXdQUHY8ciZnWGFsLSg5RGg/UG10a3BfNT52bSszWDRrSDxj
Kj1CKHpoRHxOY1ZjcGspJgp6WW5QfiZpJDxgZXlYdTB3bk4hSFojZzFDJW5CRUFMRnJvdEVNXjlO
SDk2NC1nNEtIPVpyPndkT0NJNXQ9YUVISHEKelF6N3lCTThhRislVTR6VilNS0tadj1zMj0zP1JR
eFoja050TH0rJl9NVk99Q1NCJiNRKXEoPHNpYXZWVmU2dURoCnpYbz4kZlhUYEVXLTwqSG98SlIt
Vm1iK3NYdnMkUkBnIURFXyROX1FALX48YkZmRWk9dUF5P0s0X0JWRDxxZX5zMQp6KEk/fmt3Pnkp
ZHwwQllZP04/UnVGNmVlJXprYjFOSjIoXk9hVGw5WjY4JGlFdSNWZyRNfUBaTEhtUl53SWIpR24K
ei07dmdtclowTDlyelYlPldwRVJUIVdyQG00YzNWc0xwTGNEJjJaSnxkUURfOCMkQ2JzNEVMNGB0
SXB8RUhhSFlBCnp4KVk0ZkpDejY4NUE3dHsxNlcwe3QxMykjdDdMdHtjelRxJjMocEVyT0FKa2gr
JDUjc3ImRVhjLStwVl81d1cjQQp6UVNQdCQxd1NTX2NzTmwxZHZ0TzUkTjNoPygpLXg1Uy1UKT1P
fl8leSQ+PGAmSmEpTEsjOWArSXFoXkE5PTZ3dUkKelI1VDJDdlZVflZ6aXJKczluTTtIKzVNfChW
b2NldUt3YWE/eTl4dmBnKk53ZD81flFsPUZVXmIwJV89Uz09X0xWCno3TE5lTFBkZDA1QDd5dUk7
bkFTc1E9ZEQzI2lBUTtXPkNiIzNHPV8rND5zdiNlWHZRSWd4NyVCekViVFAlbHI4IQp6U2k0Wlpg
cSNoUEw+Sjh4dWZDRWVGJlgrOzZIVXcjUnxTdkoyNispOXpTajdFalpnJTljWGMhKHphT3duUGR6
VWAKekErYX1aUD49UWI/fk9kdk11Ukw0S1YkWWhUPlBrRDU2VE4qWmo0clg7UHNTeXBoWHc3S3Jo
M3J2emM8fjx8WHd3CnpKbiVocnFkR2FGU0o5JSFlLUp8NEJJQn0xMXduNDJYRVoqYWdPOEhfLU1I
UUx5Z25KMit3dEtqSlYtU09WVll4Jgp6SSE7QGVqWm8jRFpjX2JPeVlsTikxPiFHNlBKcDJ6M3El
ckVEI01TPkFfPT40TVpiKVgrYGhvPTEqN3YlJCpqZXoKemojVVhUeD1Rem50c0pII1FoOFZDQ0F9
TFU4QGAzVkpXOFJEdlAoMjdeNFVnZSZ4MCZ5NnM7O0s9cDQ2blVeenx9CnorRDlEVyokR3pCZ0dh
YlNxVHR6bjwmRyhaPW95Yz43PU1STCpGTkomI0dEYVl2V3loQUNzP2h6O0FhWnYjXmMwZgp6Q29s
WFNgOz5PdV49emRUXz1nVnRIMG1Sem9KSldXWDVaXjV1cCRWSUJwSEA4cnJ9ZWxXZEZiJiE1c1No
P3Fae0UKem5HdURvJC18TWFwa0IrbF93SX1NMUlPT0VnR0pBKDh+Kz47dGRleEM4ViU+Zkd+ODJ0
KXB5RG5GT3luO2d0bX5DCnp4I3hXRURKJkgyZlYkV0pLQW5sK05tbD5vUUh5NTFIdUZqYnNZc0pC
RXMmSDV6MDEmI1orWEF0TnA/YllCUHVNewp6eVpHQz14VWg2Z2khMjxnSGtSZEk2Rz0/LVB6PDY4
OzdEMD8hJSRsTmBXNS01dUVQdmM2UFJAZklkflpWYENHa1MKei1rPno9aEBgY1puMDhUcnBmVypa
anJ5e3whVlVsVnhad3BFIz9GTF9efGJVdjxSUFVvMkE0NDZMeT5FZT87fTR7Cnp7cC1Pem8mOWot
MlEzMnJxdlFnYj9FbDUhOWtOfU48KVBqZFZoMH55JEFXOVchTVh5VHFPO2BVVHRiVUhYMU5sYAp6
IWVKeighejQtNkEpMUdlbnxkZitKSCphVTJ5aTh6ZjBwZEY3KmIzcDN1Tm1DS1VmQ2hqampSSWVH
SGQ/UEZgZ0AKem03ZnhwZCl1RXNyN3hOI1g9SWp7O1EwajwzcW1Je1BSYCtWX1I0fitoVz5lNkxp
bWJBcXg1MWBiRktYWHtodHxzCnotOCErTU1yfkQ2NExwIW9MQUphYmZ+WlNUQyZESGAkI1hnKUp4
QHxGOXw7ejBNR1h+JG9UelR0LVU0NzlEWiM5agp6MGRWQER4LWBLJTN5b1VETVpkT25kJGEpN0tX
NWAhSW01O1RqYnlOSFd0QEd8LTc8VE5XV3g8KExPMF9kdTtqfkUKelFFTWZ2LXkzZUM/WTlgdl5k
MCpAaUN2aHRzSjhpfm9yVDhKYkBMKjxNZUZSZEhpZCF5ZVI4b0FeV2Y/Vj59RkMxCnokYmVSRylY
ajdjMSh8Km1nX2JrfjZNaHpaVCRmSk5XKWAhQ0ckcHVUR0FwVT8jQGM1d2MjWXRNJmFEWiRIYTlq
MAp6XlU/aSo5U25tcHZCdXZ3UFEtbkIoNVRhcEw5UDw1cHR5NnFxMDMhRUc/YU1WNFE+aXMmVmFt
Pz18dlNiJEh7PWoKeldATTFjYy0hLXBNYkh0fT5qK0YjPSkpUE1xMzZ3LXA8Kzk5Z3ZHVTA2QjJk
e1lPbTg2VVYtVVMyR0htUXN3T2BJCnpFZT5PZUU4aSZOa281USVoWCF8KzZPZGRuSG4rRmJwP0c7
fkhSMVhBdypyRUhJITJPVzJgWX1BI15BdTI3K3R0awp6dF5kdD55UVpmflZ3PFRoUktEem9yNn1K
PnVidlJ9NUs4TnZwZ1k0c0ZqaHNVI3UmNWMoU19ya2E7VTtReyVVdV8KekFFZT5TV2leTXRIdCEp
PCtlRTdGP31AbDVVJSkmXmNNMEhqPEdWeG5ZMUk/WHNJeGQjeG1lPmR7SH57R2F0TEtzCnp4bGZ8
MXRJWkBxTTxDRGZPPmdQalhpZG1QSGlCSFVNUSU2aTVVU3wtc2RVcXtPRTJGe2MlQiNHaDkpQ1h8
Q0NxSgp6U0omQWthJWdfQSkjRXo5U2p2VXRqcSVPJTBhOTVvUXcpU2VIRiF7UWtQOEhIRUk0e0gl
NXdCVmZoVVlTaTk0bHoKejwlSio/NXs4dH50bT1SZVZvdiorU3I7VE4+RnVvcHY4NDFgZHMjIzJj
NiVRYSpZT2B6NVUmOEg3S0ZMRz5IUmd1Cno7UCRXYENkSjAmKSFuYVdCb1BKNEJFQUFwd20jVXF7
SW1ScjE8alA2Un1hYWZMNSpnUztja2NnZjFJRXkwQiUraQp6SXt3MF9Dc0V3dl9yVCteRVpwMD09
Z3BGRHc+KyshUzl+QXhwNmM/XztMPmZHVXEqOyZCMmcmIU4+TT5fcjh6LTMKejUhXyhSTDxYMFFF
Qmp9OXBRN1I5amVgR0lwNzQyJFRCZngpMmkwMyF1WG02ezdlISNyNGNnVzVFekA7e2JJKElZCno7
RWVfIUVyNyFKITF9O2JUY3tgPHJ3bGJ+TSZnZDtwRi1NJEtZdEU5fEo7I1BGbTc7KW95V3xZY1Zw
cUFBXk5Hcwp6b3NMYXlMZEtmYzNiT1RHSVA+N28lbzkwQWAmYFhXWChFRCYzPnVlJjk7NnJBKERk
QmdKKG1aOEBXdSZBNUtEbjMKejdSZ0V1bkYqUWJNa1BRMzYxYWpjRTsmKXcxailNP0F1SFFXU3Yh
PnhYKiV9VklaKHxuY0J1akJOX3hsaEQhIXUtCnp0MEM/Qk5gUi13TlhjYV5AYV5ZQ2s1UFJTMTc9
P1dnLU1xKEpaUClqN0dNclQpM3JnMUkkeiYwUCotPGtDMXE7TAp6ZWxtR08oe1lgZWBFPXxVZlJH
STRGKWtJfDF0YDdGKnJ9eWVXJjMtUUlZdW8mdUcmKDQ8fUpTb3hrN2B5ZGRnYjwKenVpfTtMQjhF
bSFyQkBMcnJRYl9EZzRfRGw5dkFVZmVNPn52UWFeZ0N4aHhvWTlFOTk8Iz83enkqZSFGTzhrNkAw
CnpodmFWbVBVeiR6e2BXLVlraXNAYHk+b1FLWT1EdTlEcXI5cWtSX35Xbk0odCUmPXBtaU4xenwm
d05SUDhyRCpjXgp6O0M8bW4mdUQkSVojfDI7Q0ozJUI1UkBHP3t6RGZlI2Z0WFBpckxmUUNGaGUx
JjVXOH1qYjZ0VzA5bVNoc1g7I0QKeiNLWjU5MlMyZ31ZY3srRzlOREpzOFZTI1k7NmR1dmhAYFAq
VW9wUkVLWWJ9ZzM8UWMpT1dUQm9kOVllcExkSnpECno9M25sZSY/NE10Uz4pWTU4SWpKeXFjMDhu
OyVBfGNONztxPUNXWmcxPWUyRyYqfXtAQTBwTT0oPmxHISFJQnp9Kgp6X29xTmQoTFErNUtCdmBv
KVBxTTElUUlOZSp5SVlAY0RnKGohSGQ+P3I1bDhyaCkmNExaRjFndXI+bzAyNzxGWXUKenApVy1J
aTBuYiRLXnlmYUoyMVd2dmktKiM4ZjI8ZkF+NmdseUNYQDk1T19BVitOXlJqJSZecEA5Wk08MHAx
RXp8CnppQio3KCtFWTYzN3okTExrYHktb19qUSE2X0ZHbUkrWDN0JFlRNElvKyRtMnJFfiFmYllJ
JXwta01jUmVhTFN8cAp6ZWRKPlkpZG5WcUMjKFRFO0xsNnB6biZebXNrTWM5RD5WWnt7RlY3QU5g
b08kRz9kPyQoTz10NVglaCpWUVg9cFQKeiNlYDRZZiV5QkJCU2tOcT9uTEg0WV5oTExULTkoJEoj
WntrYEM7aXJ1e0hMTHIlIzlYdz1+fGY4fHNtY19MXzJwCnolZlRNS159WilodDYjfUVNb08wX09q
Sk5wSGFxU2o/QFJ5XmhqWj9ISExaazs5UD4jIVQ0R3NJTyEyVE9CR0lUYgp6b0MkSVg7ZUckY2R6
VkZZcWY3YXhzP1NIdWlMaFpOUnxhKH5GJTdNfmwhNVBuYWhYdlpxMDl4JV5YVWlZOCQqUjgKenlU
IVJoVkE2aW1YaXlRMEJgZ2xHQ31wcmMmMylYUjNrb0YhRTw8fHVEZmI0UiEpZWxMRHB5bzM4S1p+
fUJAfjAhCnppJW9vJWpgVHg+dEFBdW4qezV3cGVubTxFN19PPXk1Kn45XnZqZGdUSDFDdyMrQXtn
ZzIrPnFrXzJzM3JXTz4+ZQp6aXIwKDk0NXIzaDlWY05ObD9SQlEjUT4pMVZPKztHJEBrU0A8fEBY
cj1RSnR8NiZGalZSOCgwJlZnRTtiayU2fjQKeio7Rk11SC17dkRVNVd1djEhKFJnWUhDQk5ZdURp
ZztoWDY7biohaVhmfloxTF9GTmckKGM5VmQ4LWQpV3U0TTtoCno1JUs7YGNnPTUyRUlYQiVzIUZV
KVIhXk9oXzxReU5UfSQzVlgoQ0xTMEhsc2ZoblMqNFlIcGJaJGREJjd7ZHpkZAp6al9Ad2trfj9E
Ty15fShOJTJ1bXpkO1l6b0x+e2lBPjxMYT9LVihtbVdXclJVZitWaitFRUM1Ymg4fUw0KVdtJC0K
ekNtJiFwMnhsRSpHS3psLT5TT2c8UiFgVE8zQ0pqZk9Rfms5JERzekJOMn41WVZFUkowSm8wb1NI
YlktTnU/UnJvCnowcj1ScW59KzU2JiM7VSVSeTUjMWQmPzk1WjxGVTgwYX0jJXF6bVpkaCQ9IThy
enNCLVM2cFdwSTAmfTR1aWAmTgp6cGZAK3VMTyNKRFdRKEtacW5YbDJ7JnAzU0xMN0EjPl9ZfEpk
U3M9QTRNTkY7YFAoQG1FMkNuTDZERW9oVDYjb1YKej5zX35UanomNUItcGtqK0RkamNCSF83JFck
amp4b3BIfExhQmxWSzE5RW4qT3kjM3FJISZFP3YkbmNyMThndSsrCno/KDtSVjU1OXYkXl84Ozw8
Sjg9UWR2RlNvc05Cdk5PIUJOUz8pTH5TS0pvX0MxdWluelh6eFJtIUozNj0+b3RxXwp6dzZuZzI0
TyE9Uy1fKXhnayQjVU9SUUUtNVhRMz5Oa2x9V3RjTHlfNmQ2V1FzNz11KmU8RHJmMypqbk5HPW5Y
R2AKej0kLW53OHU3e1lNRVdHdmU5NzV0bXxvUGEoUzgyUUx0JShjMGoqSFpSeV9Lam0hdzJ7ezNr
PiMla05aJmk3R2JyCnotJDclZWNecUMyZ09lMDc+RzVfIyNvRVQhMnI2VF9Aaz9jNXc5TW9XQWFi
WmMlMHEjSmIqdzA/YTgwc2xUeGcwKAp6PXtAVU40OFBqT0BGJG8wMnFlKSluSktwc0pjTzwzNmJt
OVZ5czBEaDNVQit9bTJMa2gjV3JoVl9HKD97MFhjc3MKemMyQzxhXmc7bmN5d042ZDNOdDwyaWdW
ZVFrNGl1UyUmOX5WbzgoLXZoVXwqI28mVkklYGpJKVlEQ1NGPUlEO2tTCnp2JW1eZzModSYkQkRU
dyV4a1U7cFRHMXt+ZDJoMDZxei10eDN7IX04Iz8pb0VjNilDfCUyeHlKWUVBPS1eWi0qbAp6Nkol
TWxmN042QStsTGs7Y3xCUEFqSDVLPjt+WnZrSU0qeWRDelRNLUpscGdxSnpHSX5JdTlrQnhpMDRV
XiRTcTMKekFzUH1XIU8yVXxGcjBxWFpsLUgjV1pTNyk5aiNYdmBzRUJfc0h9OUhhfXt5cSRCRWdw
I2d3bn54OTxMd3pedWNlCnpuNH4kbHVRbnRnYngtOz44eTJ7Um5venM4X3dMJUQhPiVBdzA3TzlL
X2R0JGU+NShEJEUySzZkMUpWOEl2QEpWIQp6TEF6fDRCc281c2NhITI/KTBjYypaOFA7OF4/Q1ox
SWp6flhJbFo3RUFLektBbzdUOVhDO0NKZGlJNC0mJSU+USMKekhpJnJZQzhAdnZBfDh3PkVHc3U3
dFYlUkxTNG5+VVgoUllATVJifDFUVHsxRD5mOVReK0A1bmopVnkhZUhyN3MxCnppZGl6bUopWDl7
QDQ0IXtBKyY/LT0+NndVeWlvb3tUPzUzXnE+N0J1PTtOVjxMPmF3bmp6YWVXOzFZZ0hVVlFSWAp6
QT1GI3BWdVcyM0xGYVFscmUoTnlEPU11dChVSm8oVSVmWUM9IzAhMkIxUTJhdl8mMCtvPE8wQ1kl
KzdgPGgjeD0KemFaNXZxZVFQaWd3ZiRtRiR2QnlDWGIjKDg4O1JXb0FoK3V1OT53fCM8QUNNRjY+
ODlQZUgqMSl5YjMjZHxGKTFTCnpOVzNjdj49R0ViPWhqJiNYSH0rTz5sIyV4V0FrZVlOfWZHOTE+
JlhqaXtHOXltKzReWkl+dW1RTVQ7cHhkT29sagp6eHUqKEhmaHF+bGNKNjAtUVl1cH1UOCozck1v
YmVeOXJ6dGEhelB4YFg5VlYlZDZlMz1jJnpDPXV+TWdQT1pnWEgKeiZjQDhOYVBORHFxbzJMSktZ
NXd0T2hWJFVWV3c7VXhOZXVXI28yKloocilnNWpkaWpxQUJLOXZnXkdQTiZgcm1JCnp0Zj5uZnQ5
cWlBZWlVUHxRc1VHN21nOGRxZjFNMUVoSHxETEpuJmBDNFFPez5iYlFmXl56YF8+MntQNkQ9Qk47
Wgp6YUgyYGBgbyp+Tnc9ZFcqQTdeRXg0KEozeEg3eyhTNmErU1RLNV9IUUlgOUdYdFZpJXhfbDN4
dDV4OEZqODRvaHgKemB4NiEhTVk5KkQhVVFkYXpxYTw+ZH5GP2k1eVkrbzx8bEJYciU8Z0xgRFEp
PHdgVEEydlo1LTx7d09pUERwKk1LCnozdiFiOTZicGkyTm9lUDN0I09uWF5IMkQ3ZXMlam82fnBM
U0IxSCFBUD1xREAqN0ZteV4oWWxBWDdWS3N3amQ0bAp6NEBIRUFMfG5seUU8NWc+bjM5YXpYVm9B
N29gR3ZwRXRJZVVxVVJvP2BJbCVuQElmSWZYI0VQU1cqVVV5blY8Z30KeitIP1dzQGBAUTgyTDgr
YXlze0NYQldRPW97d1lja08+SnllRHVMM1Bja0RyfjsyQDRgdzhucj5YQzMtKE9BY0hPCnpLUF8w
ZWljNSUoUCgyTihRbWxfZmItJnVANUdia0dFfHwjdT8yeytqN1YhfHlOcF9aQll9X3hiQExqNTxk
QyZQTQp6PUlZa31jRjQ0QGc1LXl0OHFPRVBBfF5KO1dUd2QqRmskM2FfWnJEdyNlenlFJW0tTDIt
ZUZyemYofWRLNXtzZWYKejh2dj1wYjN2PVBzfXgtcyYqekE8Q1dsblE/V1pWTWwzVFlkPmM1fkZl
NFVEWTQpdWdUT2tEQTxCbntsZypiU24+CnpwU1pYOEVGdSRJd2dCe2dUPmgkXl9BViEhXnlLc0Y4
fiQpYkZ4T1hQZzV1bTA+JUtCMTkrPUg5dFJMJDBkRzRGKAp6PUZafm1Sc0wkOUcqeyt6WDg5Rlhg
ejJTN0JePGU7PCt3ekZiaHBGUDgwNTskUCU8PEJNdEZVZi1aezxXa1JPfUIKeiY/KmZIVHtaRFBS
ZVV4Q15scFVSSFVLfXcyPlM7YFZoPTZka0hocVZ7bCV2ZWpYaTIwZT5Uajx0XkdCeWRDRzNqCnpx
Tio+ZmxyamlGRnd2KXolQzRpWVEoYFdRcjBGJmB1R3AwVTwtKkF0WkswKDItM242emB1Rzw7Umg3
bUFNd3c7WAp6T31+fGNeWH5ST08qcSl+UWk1OEQwYU5gaHhZNmFaenhGUmtQVEYreTB2OHkkTjlQ
NktsUUR3cl5ZXmJecEk3dD0KemVqJXx5WCpMVFdqVjBOOFFfT0JCRD5sLUAzcHwpblVkczZyKVVz
VV9kMFVabkBZfnJeNGBwKnJ0TyN9ZTBfODQrCnpXNzgrKyQ3eFd0JkV8WjBPTFN0NE1KV0VjWnwm
YXJaPUE2SnFCdnUtc0pxZElSKnRQM2JDPFlXPVI5SkFtZD9Odgp6KVpIRHZFQEYqNS01aWZ7Y0Fz
UXI4NSMrWEdEejh9VGFaQk1ZZV5TS1FFN1lAVWxZZ1Z2bXNgS1ZtRWJ5TkNoUEMKell3a0h8MjFm
PHk8QEkyVGAwTH1PXz9qPGF2R205UDZhciFSPnMwTVUwKHB1SXw4aTNBM1pUWnNvfHxvdEEmYVY7
Cnp2YGRWTk5mbXNkYiEzRCNPO2N6MXA/T2FWPUN9bC1URUxsaVcmWDx3Vn1ucGh3UWJlaGhDPW8p
PjRHNWN1VndCQwp6YDdxV3haZ1ZHMD87VENGMnh2Q0tfSGNNUEolYyU3d1FzKV9UJXIqMlYyaDZv
P1liPzUoaHo1fjM1SnJpVH1MeyMKenFadUA3Q0wqcGRrbm1yalBhT2deeVZPT2ZKfUhTJkEhNj5O
UjllWCNudWRDYkVGQUJNKGJJfkVNbV9mdmkkZWxxCnpkUG1hRSU7cm9HZitKe3VBXk4hJEJ3ZDdy
JHlga3xnPCFEcjNKeiliQEQ0em0xY2tMQ0FjeGZ0cTs2fU1WNVM5bwp6bktNTCVAdnlsOz13JVdN
TVluITxYfm81Y3hzYWBNaXlffTxDQUtCN1JPWDc2biZPel9MRjBiRD5BI300JXRRenQKeit2MVpR
PXImfWt0a2EwXzU5fWlGMzEhe2lgLWQ0VVE4YHo7WihvdlFMQTQxRGQ1Q1VBbENvaD5vcnZYZGxj
M1JNCnpxN2lHeDh5byNfWmgqIW15VlEzVVZtPUQwQXp5Zk48Sm4mY0YqPCoyaFc2OzZtTG5pPkMt
Qn15Snx7NUs8cSs3IQp6en1IU3BvbG11dU8haSN9YU5mdkg5LVVsTmhpcEZMWWwmdUU5SnlsQTZm
KDVeSClKWkclKG5TMkNSZUgmU2dVPWYKej87WlNkPXl4ZG8kbHIxTmNBcmJ3SW5NNWo4Zm9fTXNw
Nz8/XkRXJD1kUSQpLWQ9bDJTaWRjMmwwKlYoITUzK3BpCnpWSUtPc2FJRHgtMl84QldWUHQ/TmJ4
N2J7ZW5zeWh2NSR6RCVFd3pkTG08R08wOC1eNz8lITs/Y185YnlTZUVPPAp6dzB8KmpvJTk8cGNQ
VEBQeXV9PmBCZDc7e2AtTjhzRFc/JkJaR0tfK203amZWYDglZlhlTE9mUmgpJkIjUHhIeWkKekFZ
MHVNfEI4czljd2pEUEJIKVR4VW0pO0I7RC0jX1Yydjw0djMjXytWPSVfPl5nc318c25oay1tam0h
ITQrVElqCnp6TmpwdWk2UUgoY0shU2QpV0o1RkFjST4wXm9AMT5GfTcqPSpPJXUmTDI9RSlfe3Yx
SS0pZ256MW94TDBEcHFiUgp6WGRBVmNWM34+MD00dnhpNGM5dzJhRTMlTFReUXN4IWNHb3lWYjdG
UntwREtDO1pvcFI+dUdjUVR3QX1UZ1JYMzQKekpnZT9STGlBKzQjPHRySk0pRFdnS347S0Blckd+
SHBTJkYrO3AyfWRXeldlNkpBN0VHX15pO2ljK1FfQmw5PXBVCnpaO2VuJEl+XlJrUUtKNFBKRzxR
M3I/Iz9SOD0ye0BKJERCT3grJTJETGEzUkBJKXd4SUFDZkRiJlU0R0lZQzxBaAp6ZiR3V1cxJitE
QHVzPUYkK1VPKT5uOVFOKmBHQF9Sclk7MCNMS0t5TVBnX2AjdTh0eXBQOD80Rit+eWRgenUpPSsK
endJaEFLcXI0TWlVIUFAV3duUSUzYHI8fnhmJndZSDxBTThgV2BCRnZnZF9Ceyo3anYwTyp9dEtS
U0spY3hyVnx9Cno1b2glOHdDJWZKam58NHBQPSNJcGMmSU4lcmh8Vm4oak9ZeEYjJU45JGUmKyR3
eyZrdDIwV1Fqd3NuemhPZ2ROeQp6MzE7QWF2NUJnaVZ3VXJVIz1tVXk1JiZmaFEzcCRNNGlKKXgq
X2FvYkBVO0BeLTRfZXoyKm1xNXg7RE9NcG8xP3kKel5+LTUqZ288XzB4eV84bWNKdEJGMDMjelBB
O3JldjZDVCo1Mm94VyZvQGdeJlNXXkNSP1c1I0cpUDZVKXl4QzdrCnpTNGd8MSZpcm5DYH1Ec153
dnZka21hSTBKLTcoQHIlc01laVh9Qj9UbFdKUn57QDZqVFNhfWo4Z2JSV3A5PHZqNAp6ZHNHQVI3
U1JAYTR5SnFmJkhvO004JX5WUVVzSk0te2c5NHBmfSZZU20mSSh4O0ZzT2YjUV9ZVl9FTGh0Zktr
Z3cKekpoRkJDJnNHOS0yc3h8a3ozWTcqKjhJRG1saWo/MzE+KGIze2JNZjxkem5gSj1Ka0FgQTd3
ZHxFbTBXa28mKz5aCnpGLXx1Nkx9fkgmTDlEPGZEZElQXzJVdl9RWTA+QHc3QFJJUEc+SG0+IXZ9
JXAqJTNaeUdAKkZHZVpJQUA5VFZSUgp6JDkjJC1VZjBiem1yYz5XZ0FKeHAqTEwjPk07em9NNjY+
dD1XNl9IT3M3KVU8R3AlUEEjQ3k5UV5mYmY5bGd+VG0Kejg3ZVZicSNqanlMMkZXS3Y8Q1J2VElN
STBLNiNASyVtbnRhPUlBS3okLUdRPmE0Q3N3UlF6Pj9MSS11NCYpcjZHCnpXZXFVUWZ9K3Z6e1Vk
YW5TT2w7d1lDUTtXLUBfNihNJTtMVXhoZlVsNzYlRCUtUDg9UjhlJWJxR2x2dDB5QE1WRQp6d3NT
WjltYjdvRkBgKHFLd1pwa1BvTFBUMStWP0ZaSjl4VktRLVUyNytMaUJZa29qZ3g8U141dyNALXJW
ZzxNbHoKekRSQ3BVczRLNnhUU0JrOFV4PTk5VzV4Jjl0TCMtVjtkcjI9KUp+JUJvVj1zP2VDKkw4
eXxKb0h4MXB2Y2IxaWIxCnowdTtaSFRwQngwKUdiRnBeMStnYWIkKml8RnFNd3ZOVUgye3hoKyY4
KnhAejJQRy1LdlRFZihQU251fkU7aFg+PQp6ZjBsRjtPbHMmRD8pcHohWXkqKTtJZmNhPmJwVy1C
K31JZSVwQnpvOVNZdSohTmp4am9HcGJoK2htcH5jWkMyMDQKemdoIT8+bW0memx1ZGdXaFF4YmRB
VmlXdFFsbipWLUtsTEMxMUtzfDFKMUlxezhrKnJBIUhMQzJlZmx5QkF7R2dhCnpkdXtTTCRpSWtv
NHFDbFleU1NvaiZxVGQ2VzhJKVZBKDx0PjhMKHQ2XlY1YlFoYj0pSEA+YHJRe04zb0JAeGwqfgp6
RmUrZExOUlNAPVh7TGlwM2ZeUys+YUw9eWBkV30tIUMzdT5xa2cjYld1cWx0RkkoYX1gKWB4dENQ
fkchVCp1fWQKemdYZVQhN2F6WE13R1hqSyVIUTx3TThGYnpMQ3hfU21KYURaZkNqTyNofTk0TWY+
UEB9d3pSNHJpYVRwYjNucGcyCnp0WSk1UVh1dnAkdDszdmc3QHBIQE9nRX1RbyFmTztJME9MeDFU
b1cmPSYlNmBUallGLSNnT2xgZjVXZFkyP3JQaAp6dWk1ZFQxLV9XZ295cHBoQEdyJUlyO15pUGYt
VTMwcnU8QSFycFhlfTJeZDJ1S0JtKXFZTkZCOEZ3aGtlPkd2PzgKej4hPD4zQD9ycjdpZjkyWG9J
TXc2MVNuRFJWazA1dUQpNSo5KEJfeGVOZnh9JTVrVVdPYGtwSnMzJnY0eXpnUG1nCnpNSCVaJWpv
V1dsaERJeiY8O0Y3bTlEe0JZYF4xO0QjVFRtUkdEfGRLIUZWcmM4MDV2KWBRJmxUQmdGaCY2d2dH
Rwp6NjtVaW8qe0RtcDVWR2RnV3pHQnBCbipNRXoqUm8hJmBQWW52SEFxI3A4Ym5OQittaj5DaCYk
aUNuX2JlRCVnJisKejBZQSh7NzY7Zz93KVBYcD1KVTxBeFA9JnI8RFdnTS1hZyQ2WEpXVXNpU2xA
RSkkLVgteGE9dns7NkRjYU97NmJaCno0eEFLKUlUbGF1K0o+eFg+Pn04c0xwQWxFWEd5fnFlTUZY
ZnZ4NWY+LX03M2ltQ0s0emBAOHdhdDcjfSRsV2EpUQp6bDZzQyVONn5IejFeMl5BS2k1dik8aGV3
c1hDNTMkUmFBeiFrKkFQZUJxPVBiaj9+KDd0bChOIz9wX0BHKGBEcnwKeiN6WHUoZT5GQUMoaE1R
aS0+QDViN2NaODtGMj1saE1qeClBS3NsdDNFfH1jdnFeRXVLNHBsTj5FYUk9bV9YVXp5Cnp8M1VU
ajMoc0ltbHpNMV4hVGdSd2szZnl5ei1ZJkIrVF5mRmomODtDKGBvV2g2SyFUXko/TVJ8N318bk5R
a0lscQp6PiZZfGIhK0srQCthJFFaUWNxRk1ncGlRZndMPXptK3xadmY9WUpJQVBuSTBOdFBHYig4
MTRJNT1RbjtmVXo4YkIKenFST2t9JSREfXkqMVZfbD1OVVIjdkR1RClqQGt9eXVUPUpiKm0oUWZS
Kip5Jmp1eEV6MTViP1FlbGRkSmg9IXEpCnoreHNWIWBoMjF8aE9+c2sjNTZPJDVyUjV5cCo4e2Nj
ZH1PRFBXa2dFZV54LW9tIUVjQ1VJOHFNU28zNjdxPnctVQp6YWR4P1QlT31aWm8kVV5OVjF+PUFD
Vjg1cChWckkzPClKV3BSPyE1TkcjUCskQTk2TlA/UTw+UHMoQFhmYXIqMXIKemBNKWcoVEhlP2Ng
P2Bwa2cqbDE5K3N8ZmMpbD5UaVB7NXkpeEQjcGkwJkJxI0x2WH5HJlNYfD4jfFpoRilKSSRnCnpf
Zi01VkRkdEdPM1RfcjxFPH03JiM7Ty1JV2FiRXNiI0A0aXE+eHxHPGsxKz9PT1JWTCtuQXl2PjVQ
X0B8RCFReQp6KGRKYXttPUYyJm1Dcj98UHc3NDE/dkJqMVdmPXI9a2JuOVZpV3YkVWlXRXRqOUVG
LTRUOFhIVHlwcyE4PXUjaSkKenszRyVxWDxTI24zJlZIbjBWTkUhJXNCRTItO3c/PUVGT3UhOHE+
PiZfRSo5SWBUNDAhRCEqYy1vTmJeOEdJQ2YyCnpmSVctai0tJT5Xelk5SV9aJGooP1A8R31IayY0
WT5UZm1UMWZXJU0paXY+TGA+d2FwVjNAVlJDUFNgfDk8ODl6agp6NHZ4IWQ2ZV4qNSRLQTZQTWN9
MVhJR1FQfjBuP0x7SGpnVEk8QzZMPmAhOEYrUU90ZUwjNnY4WFVFI1k0RUhqMWIKenFeeV8qUUh6
cU1PX1A+YTlRNTt+RG5JTCtAJXJTIV5oayhIcW5BaHVDdjZ4JXp5MTw2M0BUQEpHSyUpZUh9VzlD
Cno5bCoqbFQ5LWk+QFdgPXwoNlZJa2tHXylAOT5NSl5qTWlZeEwoLWVQeWxvYFdVSit+eEFaTmBh
JX1WXmpSO05uVAp6YCZsSUlWcT9+M1FMMCpuMSZJZHtyRkpNRzFEe0pCPEtAJW0tcWB4c182bzh6
TWx6S2V5V2ZKZ0Z0PT9vIy1qPlgKeiplOUR6Rn17eW9UPEA5cjw5TjA2a3E4ejVUa2VDcjJeMHho
KH19NWF6Smg3QCpDdW98eEtEd0hsenprTHhkaD1LCnpoNGNiS19pOF9fM0JjJl5OaEpsak5rZ1FU
KTx3ZGo2PXhVKXl4XnxSRVIwODJjPHk5dWdfUz8wZnlTNkpiKVVlPAp6V2NYe1libzNGUVp0VXk7
JFlQPSZzdDFoVGlaPE9pZFp7dGVye2RQRWV8e2hYenh7X3YkbnxCUSUqe1k0I3cwQ34KeldDQD53
OUIjSyUoSXo9RGNEd2pkVUhhKH15dTAoYUI8cH5sb1VWWGxUZTlePWd7aGl8dD5qNFpsMXs/cEpI
Z3lHCnp2bGFncShVanZiQXhuT05CJm9uJjh5d2A0aktLOEw3ZD5yQyVqKCNsMnRIc0puKE1kIz10
QSpTPyZOYSVSRy1UcQp6TXJGc0omK0FnZkN3aklXR3ctZHk4ZFh9RF9FbFpTUyZYTnFnYk5WPTVG
e1R4WW9jYjtTYyFmeHBCZyZDR25VYlIKeipPSWxyN2khcH5IUUIpJSpKekFPK0dLPTdOdT9yMkEm
Nng1QmlJZmtBP1g2OXNBSil8bj4pJXFhLSFmcjwtWk1PCno+UWxCVCFPTVo+MW5wJSpYWiNSa2hr
I2BDTHpBQUs7UV55YCplLWJ6a0hOOWAlajMtJCRUfHwlUzdsdXZka3FGUQp6TGdyQW1idXl+fj5R
e0dfPH5haV4mSWJka2ApMGlyR3RFNlU5MWghQXRFantzQlJyQSo7RiZCfmRQTE99M01zVDEKejtS
S3tBR3EzaVhTN3l6RWRtLVFMQ2x8fXlFMkQ+LTY4aEJvamR2czVCfFVfUHlTT2twYEd1aFEkay1w
aEhjSEBBCnpMQ1F1ViVyRDtpdkZXMitZNk0xfV4/SzJzentIP093NlczNShZN1YlPipQVmFVJVd8
SU10YHVmNnJadipzJXs8Mwp6c05iQ3hfTm5fTC1oXjswXkNDbU5reXBqM244XnthNFNeR04rRDR3
VDdtKiM7azFVJHg9RWY3VT5CX1B3MGtEOEEKekckMEhlZUA7WVRURmpwNF9+QFNzQUd7R0RiYj5w
Z2gtWSQyQjFMSVI9ZjRockYtPEF2N29iKD1yJUA/dz1iMXlkCno3RkZ3YHVzYmozaiR5d0UxWnVe
YFRBUiV1aUFVbkl3VSp4dER0JTl4T3Y9JkhPTWpMSloxPFRSMEp4JUxYclU5ewp6bDJvIUBIeEQ4
bi1ScHBwcDREfGpIeHhvS291JGY/cWVGbCZhJFlKMFM5alNNQm5FcDN2e01BS0VBJjcqRFB2VXIK
ejVpWkFEc1VwbUc0JEdzV3cldjd5UGhVK1loT35rYzNKJjc7OHJROHRgWnQ+azVYcn48MDJGWndV
VVI3VTdlQVBWCnoyWEFgfFY9XiY/PWo/ezZtM35wSmpKcnxSPi13PlNzNTI+aVZWbT5QYG1FJj5w
eHwkZiF9KEtPZmYrQUlNK3xDYQp6eH4tYTFSQXVPUnBtSkxTIWBnZ18/SXdOTVdUUGtXY2QpN1Bj
Wnh0VmYlY3YtazV3UDZBRXFQZHFFcDtPdkZRfS0Kem03aUJ4Km0/ZCVfTWpOSUYlP0tEX3BsWisp
TkUrRUNPJjF9YWYtTmJPIXElNF48OS02QXxVZDtKdUgpSDNDciglCnplZnA5Q1BUaT0/MWthcE5f
YVcmZ1QwfENKYWZKVllEIyg8I0IjaVdnUFBOVTBycTJke0pJazc1bT5CZzdDbiQ/agp6SHY2NihZ
ZnIlOHg8eyN4U1pobCkyNWFYTmxhfX1zPWNpanhAeG8peEMjJTkzb2d0TVd4YlEtQXhpV2g3WWMo
UmYKemw1PFI4K1dWPFFRe2R2XkR4WmkoXmY0empQXm17K14+Zm0jczthYjEoJHFyQWowdCV1X1RK
bTQjRiZZNzFhJEVTCnpfQyZmcHNIQCkrenEkVT8oMXR9PGwjaHo4e0tJPExYeXRve05BWnFZdj1i
dHtKSFlpYms4cyYpZzVJOFEyWXFvMQp6Mjw/SUBAYElDS01BK3B7YVIpYWRZQjFoeWY0LT84K3xT
UHRObFBZd3h1MmFBQnBERVEjYThkIzZAQD1UZTktamcKemt1VUQ1ak4mVkxCUFBkaDc3MXZlYTM3
MGdIQGhQdCZaX2p8JHxOa3dwKD9BajR3THRTVFczXjkhcz1QT3V8JVd7CnpPdHtiVWg1WTtMNn02
fT14dFNvQlZ4bkQtKnJHe0QzVyl7Z1hJb34mQTFjeU1paH1DUDIrYlI4YnVtI2FEeVhVJgp6ZHZI
elZUYj40ci13SENlODFwV1podVcwYzFTaVEkVFZzdyRuI2pJVDNaTFZqdVBuQiomPVZMMEdjd09B
UGk9VXsKemRwOTs+aWtoQjVkQGxueEpPZnFFUlU1LV9CayFuI043RmR+QnRkZVl1b0RoR2pkOXlv
Y2taKD4pPW16ZXRQSj8lCnp0NUE/VG4tQ1QxJFZrJVRZPW1+fG8/OCg7Mjt7KHMzTF5Rc0xCNCVU
YlBhbFA0LVQxX2o8KU1ER0VQRjxtM1o9agp6S3xsTW5NXiQ7MVF4bDE+QjV5NnJQPVBQYCt+fDtE
QSRCWmxGITItciYtJnp3JGBILWlzS1ApfVZpSnd2SEk9a3YKeml9NlJ5V3BfcSthREU0b2ZnfkdY
dHR5b0IpRiFCQmFJSnBzNjNVYGJ2OTFwV1laNzwjZVBOb0NDJHc8empTJjNVCnp4QjA2Qj16O34h
UEBGV05ybCsxIVZgNWp4ZCU1aWY2Mn0oRmp4cV5aZGMmQTY0dCQtVStQNnV5ajdGT2xjfSlTRAp6
O2Brck5PallZb21GKElvNnlra25nc3BfKU8lU1VWTEtaRXEhbGF+VjZebl9HMCNrcHAtNzV8NFNl
K1YqY1J5NX0KejlmeGJ1UXJpKSM+P0ZseDMhaktVaG5raGYybTVRb1RWMUdzXnJPbVdKZGdHT2Jm
YkhFM0N+cn5KRDBnempBSzlhCnp0aUVvVEJQRWpVJjBHfX1MUS1OPk1FMXhzZE0+KEgkWldLaDsp
SCZ7TEJPdyk1bSptdzBEV2IwZnR1bVI7NlYmVAp6Y3tZQW88dzMrY08xNiR2U2YoQSM7clVkPSFR
Jm0ka0cpfEUkUlRPTSFJSHFUeFhJIV9ZJCQjR04+fkNqPTxpNDAKekJJYklQZmA3OFdgWnxnfntU
Yj0/Ym5zV2s+fmtKe2FKKyhuPWcxIz0zMFRyfGNZNjBhb19ZXjkoRzdXampTMz4lCno9JH1sflIk
fkgpbTY4V09Tfilabm81X3JnKHFyO3stUVpqd1J7UGRsbnM7MVJDYSMjY24hKD8yTDVTUUAyekVn
Zwp6PmhkTGAmYExAK3omMU1SKnZpdVE+dm5fNk0pcjRKJUJiQDcmZipYMUs9QWR8Y2VebmVwbXBk
cSl7NUoqPzlgKkAKenpSSl9HZyF9IXRNdU9gPFQoeylyV2NGKTs0S2JEcFJqS19lIVNSY2I8KUNU
YXRLanNzUDN9KmY7LSgjdWsrQmZLCnprYXpyM01BdnE0a01YYDRseD1KMHZ1R01pMERtVTBpIVJe
aHlNQUZHJmZCO04qN25RdEYwYlk7LTYpJio1cmtTRAp6dXpTbzBlbXREaS1ETTxeNSE2SEhhQWxI
MTN4QFpxcGdaaFd7Z1AwOChGZy05YVlyN3UhIzRiOHhpKUNZMCtlPG8KekNPc3h+dSRTcGlpWio1
bjg+TEpIZktZRXxpZFNxaDFYPXNzV0crUyZ3dmhga2dnXiFMQT19ZmdWWDBpN1c7fmp4CnoxSklC
SyhaYXh6YlNQKzYkVClLVjF9S0A4OzsjKVZge0dPZ048JVNgTH1ePjwzTWdiPEcxR1pfYS1vdUM3
djdXRAp6aGZ3TnZla0hOMjEoJD1SYkE9T1BxezBVcDV6V1BNNSE3R0pFTU9VZ2l3NXRvZiFHel4l
XmJHNDlCJVkpZDNCVlAKel5pQnVBK2RLMj9uN0ctMz8pVjRweEhyWEM7NUdJN1RoSD0xMXdJPTc/
Jks9O1UpUHtfTEIzKyo3d0pwP1YwWUgmCnokK2RMeD10eHVTLUc8ZzJEayR2NTIyVCM0Y3VrWDU3
SSNhIzgzPWR8Z1FgTDRUTj0tSG9gdz1rZDxtQHtwJG9LVwp6ZCk0LXpYV0teYzF8Nj9uOFBPZ2hB
YSQqRG99YDdEP2NMdSpwNkRlaURyKEBWKEBtQHJGR1J2MVEhTGs0Ry1EJHUKek4lM2pQNk56OEEx
UmZ+SlE3fXQoam1peHRGPSl0dD1TMlBsLUdLVz5SNnVraCF2azBOUHFId30zLUE9eWtMaUQjCnpP
JmtHKUE+d3pxJnNsUEpDRHV8Q3Iqdl8te1NEKEJfX1JjbzVZWWl8N0ZaREVwJjZPYEIya1UmNUVi
aFRoaTVwXwp6dzRBVX01eHNJRkRqcF5rZG1DSl5YKSFmKWVHdz1ae1pmIWs2dEpRSnBBQkV8YFZJ
eXxFfHt7S2pAa1dtNmshZiYKenpBKGRwNTA3WC0hNlF9ayZ9cm9+UmY+N2M+RFk8Mm5mJiRPeSNT
Y3RTYmI2Wk5eek5DV2g3XkczNXcwbFlmOExPCno/TjNYeWpmazdfezlidm94aTV5dSRNRS0taHJl
ZzYrdk5MUEBuK2o5emlRdVNyUnpZNEZEc2BPPipnemk+SEtNXgp6Q05jRCVnZGdSTTQ0Kzc5Pngx
JThoJkxQOFh2cS01UVRyP1BaUStUeip+eHBTcktffTMtVzxxSCg5KWxzUl5PZ24KejxsXjl1KmA8
O1lYZSExeEhufEA3S04xKWk2ayg9Jkh7V0k4Y1JtYXI/S3lPR1d0WH1WZD41PzMqUkY7VXtyT1Ez
Cnp5UWFEcE09OXBuU0w4Tj09LTJ+aikpdWVvdVAlQFNVMzAwZ2FpLWtWPnVBcldIYW08VDRAcWAr
U2RxYkNBdWx+OQp6I3loZWp0Mi02Y3w0M1BqcDEzQkd1K2crY2IrSD1teG5ZT19eTTA8K3EtfEZi
S0p5Z1VsPDZLLT0pU3B9aWclNTAKem9YeztOcXJ5RVlDJmsxVjArQ2FTX3JobjJ6cCFhJVdDTHla
N2M+PFJodjxkeDJBNThUU2djayRteW1sZW5KNlN1CnpybCN2O1cwYVlURWdhVGtoQkM8T0goS0Y7
NWMrTnM/IU14bSQxZ1RlOzx3ajF6KnJwMCs+aypwPHcpOFdxN0xtTwp6fEpOdmtXU3pKQTQ1ZVNp
XjxTVWtpeTt6I05aKDtWWSE7X3FfZk9Ya0xBNClqNWNiN35GPTZCSi0jZFNyQjVERmoKenZRYXxm
Q3g0OVAoYkhDJU88Pm9vcUxTRGt0bmlUKG9SenhUejxBMkI/ej1NcSl8SjY8b1ckfEJSI3hWanoq
YnorCnpJPE0zezdkWlRgejBgbXYkUzNCbUomeSRaKmZxJmtZfkEqZ2sqQj5gWW80S30qVH01MUdz
I2hFX2hNdGRYIWcwJAp6N1U1c2hLTjdBJHpvM01CI3Jyfl9pa0Y/ZzUpaTZDb3dAb2NUPlBqTkp9
VjdQUWo5Y3ojUVRqWjZvZmRvWFVJWGIKemQlVSVZSj5zb3I4QHdjbUlXWjxteiV7Mnl0bEMoeU4k
SnI0PEpWQnohVSUyc1NBN25RNVpzNjVjLUx7RTs1MitxCnpWRklrN0JGaU4hLXlWeiQoP1B1Nk5a
YkpXWUZkQzxfVVA1SEUweVF2VWlNSmBKcmpWbzdRNGI+KCs1dk1NfGh8Zwp6RldaSm9YcnEyciE3
WnJeXncyLUU1bzhjZVpnLThQT20kJGg4Tz0+N0IyM29aeGA2I2c5O21jaU5VOyE7Z3gpR3UKenpa
R31Fb0tPfXVOSlZafGxyMDVoNSp2LW5Zd3chXkkxO1UrJCl1OWdCcHsmfVpuPmxfeiUpVGR7PyQo
P0I4aShYCnpla3lfN2BvdHZLSmRgPT9HSGJPMkQ5K0IyWHw0RzgkdSg4ZlZ0dHZwTyQmamdYdVNm
ZDNrTXA5SVNlcnlCXypFTgp6bXFXcjsmempDKGlmb1hASi1pN0Q2N0I2Jlo/ekRtMytIdzhqRVVi
Q2FlbCY+TV45QilESXorJSN7WUFQKGp6M2EKei0te0lka1ZlMlNVWiZ2QTJWSklDSCg7cz87LU16
SHFSN1d0OTZwNCNLWG5LRj88K3leUE09Q1AqamhHYW9GLVU0Cnpjb1U+P2AlaD47ZUojOW85fD8r
e0krRz07blIqZzUmZnJudXVHP1p4JWNgQjVBSWpSZGYzRD9PLWJeQTxxMjMrPgp6N2g8PjRnYCYj
NmtDeDhnX09vJiNgTlZOWl9pMFk7WGJXYnZzM0lSYGxRK3xacGUzNi1scElwdzhFKzdgcnlQcFIK
eipwcDEhT29Fe2YjRzt1fjRWTGglSV9+JllBcFJYRykqfHlmZ1pGO0lmRStIfChvbTg0UzR9ayVZ
IXkmdCtqJjxhCnpJQTdtWF5hUnR3YCFqbFo2JGEkKj07NVEjcjRZfGYrciVATnMxNlJVRjY9MWFQ
dTVmb1N8aEw0SXBLVHhtX3k9bQp6KkI9N0Y7MEFzKkAxRnIkT3xzJlh4UlYyWnZXYzRkXk13YUUr
M0xseFZrOCtUKSVHVDshVH1ORGBjMn0ldGF7S3wKekVGamB2IyZFI3ZobmlkeEQrIypDeElCQnhv
JDBBck1GPUgpVXJ7aiYoRD5YPjZXbjtIa0xvfGNtenk1VGVCQWBzCnphUSU4bzVpQ1BOLVhVNTti
RTF8MmB9PW5yUHAyanlQQGVWYlFET31pU1BKUWlRaXxCY1pYT3d2PkRNZz4wPnRhdgp6Rn5rPD5n
S3lSRU87TEg5ciVNOSYyMz0pSVpLallSSj1YPXZrbFVTYGA1UFM4Y19hbSF5WXlLQT9eam43MHth
aGMKeihsQkV6bFhJQmBeSCtoJjFPbnJ3OyNWdW9GbVZqQjB1VHp1cW5EWV96aEFQUUd5KVZ4PU5P
Q15XalFJNG1lezUlCnppelh+czhebmQoVztxR0Ytclcjb2VVO1h1RVl3TDtGKVo4VkxAS1kjcj8m
aWgqK25XP0ZFWHQqdiZjTzZHJjJqaQp6OGZ4OD1eUFhKKFBRfEAoR2BRfE92N0AxMTVucl5ZQT1S
OFdMeGhCRyNLZWFETzlkeFJudzEkaHVHZV83VH13VT0KekU9QHNjZTNLTksoQ3RyPDdmejx7anBX
QEVkOWVleGA+KGY7ZH1xRz0tNl5Zb0RZISUtbzh3WUdKSypJOXlOV29xCno4SyVXS1JDSHxgamtt
eUMkSWUoN2Y3R0taV1NxSFdaNHw0amJ5Vmd9I3ByPEN0PSkmaGo9Xit3XnpQYHw8Y2VTKQp6Wndv
YmA/dkB9PUxPTz57QVJ0NjdwY0lOMV47S308VzxTMk9KK1BGKiQpZmtWNXZhKURkQzBlXlBZRnZR
I0U3R2sKejllSWZPU3ZWRGN2UW0zWFZla1pNcUd9aistNyFBY3d6PkR+dHt8K3M8JClibHB1Szs2
QHY9MkA9SU5xQ0g5I0l3Cnp6NDZ1KXEwPEtlQWEoQWwqak4lPnRTaWghKG9IUTQ1Tyt+N3FUY0Qm
c3UoRilDfX55dzY2Xk88Vk8hZypkYjg2Twp6WXlnbmQwfD9xRjZxemZ1Qns9VztFPk1MZlVKSVBO
eVojZFMyVlhIdEl3fDhEYkJeUU87KC17N0J+aTN5M1ItXiEKelR3QGd0PyNvZElCaF4xVGd2UDRm
fExMYy1jR3MxWCNlPFRXcjZYcytmS1dBUTY+dThFaWpFbj1LUF5rP1lWQ2FHCno0WWlPWCVOVFIx
OXdTVG9vcHdGe28/V0I9QzcwKihfRERTS0p1RkZ8MWEyTUhaNTQ9YEArNSE7SlFfNW5Iej59eAp6
RUk4Ym5GcUFRcS1iUn0lUXl8dSpmWWZrPj94MFMyMDBjIUhqezhqaSM/U0dMTHZxdUNaTnFaZT5Q
Pyt2aXttMXEKek9SPiVpc05afEAqJVJfNVJ2cCZLJGhaLWlQeHZARShyMzBTVEp7KndCe05DPj19
WjRaa255ZF5rVHwpNzU+P0xGCnpBYE9NNmMmdnc1NmtxTkp7PXpuUThlUkt1X2FBcWZkIWtKQj1X
NXlxY2lsYSpkSGwxPVg7PFRoQGN9eFdJfjMzYAp6QClRXkdxLXw8R1ZtMGI2THw4WEEmOHV6I0NC
c3VaMz11NEtzLTlaQCQ4JVlAM08qU3hzJmFlQVVTcFZuSWo1UFYKek43SzF6OVZSQlZAKzE2PEBQ
em1NUUhfU19QZk1HZmx8NXZ1M182VCRpUjRPZ2B9TzBRUXlvM0I7b21LUnQyKi18Cnp6IzJURlUk
ZWh8K15BWTBMMWhELVFILT9FMFJ3K2hLZjRIXjM3T2lvZy1+M3lXRFdRaCVSMFpUMjViNCVCPSt5
RQp6QX5NWGs2N3RVU3VJaGwtISZ3KkpORiY4Tm9eP2dQP3ZZYVVzYy1VSy15WHM7XmtqR1FlbDNI
K0cleGk5dmohZ1UKenRtRX4qdVI1PU1CQTtecVhlNXR+ejgrZ2wkT058SVkqNmw2VHg0WENlU3xG
UVl8MnM9TzEqWllCWU9sdF4wITA+CnoyRHJ6T25TOCM4KlVfOGFJMkkmfjkxT35iNjFDcEU2UVhp
NTNtRyhFPEJmLWtCQypsSkU4bkxZK2ojWmhpaStXaQp6NEB9V0dgJm0+dkljbVRJI1MwPkxVYjYt
NWV3Kk5kJlZjR1VUTmN9YXJURXRCUE89KDgoRnlPLUpUNEp5SU5Aa28Kej5hO3J5Rj8hMlZBV056
S3IwI15nPmlKZXF4YTRrOXBoKDwjJlpMdSQkMDAkeUZ0UXRBYEpaaGBTXlIzLWVafjhJCnozczlp
VHJXT2coKlpKOUU1eXs0alhrPF45VGxlazBgcDI7e0R9K19UYiYwclpNX3FrMF5CbUI5LSNOcV96
cUF4RAp6MTNvV0dMOGBLb2k/RyE9am5OX3huJVBufVNuJldXWjt3T3FqJU8lKXBCKnNEcVUpemFU
Y0RWcWdvUU5iTDx3dDEKekdrNT5mRXNBa3VqTFUwbXNleVlhVSU9RCNoU25sWSFnQl5kZV9YUEco
IUp5d2FnNGN0WUQpZSspIyVeWjE9N2dWCnpPRWlWSyNAK3o9JmlpeH4pJD0xUXpYbSlpOWBRbDkr
Mj9PWSo/ZXtTQnI0YER5TEolXnslUzJBZWZyb19uOClhWQp6RE14KWlvb2d9fiFmKlQ2eWQkZHZa
b0E+fDg4NXpIUFJibDhISXM1dmJBLVN4T1NsVUZud0R0Jj9CUEtEYX1GP0MKenFQIXgjNG4wWW5u
WGNpXlVueTlpRmtyd3JZZHVTWG09KjFiX3dqdTtYM09OMmhMZ3c5MTxIY0VZZDZEdyptMmlSCno8
PWN6KkBZKkpOOVFjRWBUJDh+Tk9HSmt2VjJfRD5jYSpJUjI4Z04rM1F8dSFZNX0pUDZAaVgtbylq
JEo/QnkoeAp6PU97SEhnTF5YMUMtWWx0UH08eSpmelNLUlBoemNHQlRURiFNMj42Q1E1UjN0d35h
aFowajQ/cGgrSXAhIzt4Iz0KekZiTHlxUG9GNDVwfkV7SnIqX085PzwmR0AoejNYPGE/ZVdPVFBP
Pk1uSWZUV1Z9RURQUV5tJXxgS2NfSmthZGRwCnpAa2spJmBvQXl9T29AYVp1TXtjM2spMSt0YXBB
VVdPRTBSO0FmQiRhXldnYz4mNEVUdDgyPUdjcCpldntZfSVRRwp6aUErPnlZZ1ZpaEc8cWtZcCpC
JGEzLXdNMHJMSnVKR050VipCN3MyaTFgZ2ZsMlI1N34zOCoqS3B8NDRrMl4/TmkKemsrJS1LQm9k
UjhocEhFP0xxWlAzIzhPZkdMKypFa3tKM0kteE4/NXRAVkRXVCpnTj9AZTFjeVlecSNBeFREVURQ
CnomOG1VbGstbWsmPDB3R2lDPUpsYDgyUENIK2VjJFFgXkwlMT90ITVjUH16TGUqcUhUTDcoY0hH
PlQ5ODB1eUQ1Ygp6eiRkWUxjJUN5T2BafjtUPyh5X3BXYGh9b3ctbyZXRCMtQjY3RTxqVVphWV9r
K35Ad2ZyVkJpXnNDZGhtNXUlQyYKelkpeGxgQGgpPitwcFRacz0wZ3h4WjJWd0UmRGc0XzdOejR3
UXNRXkE1NTlofSNjKztnWG4yVG0lJnVRI1goQHc5CnpDVWVWbXFqJDY/dGtpSExAIytVMzYrX3sy
Y0VSPl9LPT4hckNYeDQpIXQtM3M8OGh2aG54ZE9UM2A9YiR3ODhPRwp6JEVwKURLe359TF8rY1lQ
KkhefDglcDNPb15iNlJ6I0tTMDV5aFMhdGslKiRRUUJkS0U7VSs3VkBuP0RDKExrI28KelU4OG52
dUlVeT5HVEI8XkMkI31mOyVEUCgjKFQqWXFIM3JyPTA3ISZtSChzVmNvNWN2KUhYWT1iOFYhXk5z
bCo9CnppS1FuLWsod0NHIX56O1dMNS0laGhqdTlwKF4xbjs9K0UmVllYb0t+Iz4xPShWSSRQdWJT
JT9iVzNqbD9kJUxtTwp6XmJPRllpe0V+TXkyO00tbHc8cT5HZ1RhPGt+aWVRSmomKnlvcE50RF5A
O01BLW53KUV4ZitreUFPKClidFBRen0KeihXV3E5bG9aQmc0RTRMbnc/bUMtR0Q9djYkamB2MU9w
RWteSHtDT1IjMjwmfCleKkY1O2FQciVjNGIjd3g2Z2U5CnpvY09Ic0FqN2JJamoxYz5Va0U9UDdP
IzBFezVpc05SS0omPV48ViV7Wk5wKmBpRVpPYFRfZzVqcWFDU1hlVVI4OQp6M3RZdG1URVB3LXdL
dmtGaz1Vc0khdjRaMk0yaER9czhNdDB0eW1ofUAkXjt4aCZmJWVTTzQkMzAySzE1QXo9JCsKendw
bFQ3a3xSQHRZSjc9ciQhQGI3KD8mQntSIUhPWTk0QW5EN0x0PmVpK2hDVihHTzZWMmwyRFYmPjJW
UFp+ZCR4CnpWaWt+WjsmSGhndyNFdHUrKWFsQGlpKnl7Knk/X352TTt1VmBvPl9CWiR0PnFhT0R1
Uj1IdyFhUDxtbzx6P1Y9Tgp6S1RUKyltSFhyYmQoP2JmQDFiIUI7UiFoWEl2Rm4wQT16U1RQKHNY
N1loe1hXKGxFfFJSdTMlTjZObC1pTkBWSEwKelhDXkUjU1l7NHxjb0NxOWBMbGZRJnt0ajJIVkA3
ODQ9TUB4T1A4Tl47O1h0Rz9TMFF7S3p5SGZlMXkrI1FKc1hNCnprJVU/RnY2O0E0d2EwJklhR0BA
SnI3YFY9RSlPUDwpcXBGa3VhPCpDXlFRckA4elZBNlEpSHpUaUJxUzV6dTc5cQp6WFgxcj0yIzNw
cHBAIWx4MTY1cHxjY3JkcTw9ZUltWVZhcXxZNT1zKl8qQ0hJKExBWmxsVXh5fCM7NWJtJEFzMkYK
endAUCtIMUdeWG1DSmk5bEl6QUpWRHpnUEE9R3QxWT1tb3A1Sys1cjxOOTZ3am5tfWQwaTJufjJm
Sk5XTTM+MXhOCno/MyphIyg7WDwpayMkbTRpMyE3Xi1WKntCZVV1eCg5fT5MVCFrSlpGeEckT2o3
SEVgeTVAPDd9IWkxKGFxODNpRwp6azVuTHE+TmYrQ3hRPTwzOCRlNWprJnIme0FWRXI/NXBnViR4
MW11ZmwlVCQ+PGZ3K0BnUGJWWDw2ZiZGNCtjU3YKejkmfilgPSFoVnRoUVVYeDc/Wi15cSNWfW0r
SEBnKUl0Y012SyhyOUlNUWxnUDxJfTdERmU/c3RaK2hPfl5ZVmk5Cnp7PlNmX2tOYkdQQXMtdk5r
ZE9WMzBKYHZRSm1oflhnZSZleklKJUhLODxkYXBjKUp8NT5tJG1CS3dGZno2QTdzNAp6ZX5rUVU1
SnJtdDhwcDdtZl8mc1NUfWtleVNyfTRjPHMrKFNuWHN1K2k/eXx1Y25JMH1AY3h1b1VCbWIhYEYm
SzkKelNieXd5KSsmT0tuREhRI2tGeTlMVyNEb1hWX3JWcGg5U3NXZ0oqRzR5Xnlqait4UVFRYUxq
RUF3KyltUypeaSNjCno8KzFRNz1vR0ZsZGVyLW5VKl5rfjxAeGUxPiUkM0hWdShmYFB0JVhkQkJl
PGpJOCs+WEJtbmEwUGROVShURHpaIQp6WDcoWX1obGZVWEEtXzRydkhPR09EJkAqKWc3TFAzKThq
SF5wcyhLbz9Rfm9kcWo+ZGBubVJrOWtub1YmPWVTMikKeiNGVzNzMFhVOWdsMkMxQ2JsR3ZuXncl
c2wpKGIpLXFfcCZEdlVoRDJmYTc1U0lKUCYoXzJPZVNVPW9hO2ckaUNCCnpmeztGK0ZPcihqQWJR
NGw1WlIjdWFMajw9MVJuZjdyYzdMKFlEZj89S0tFcGZxViRNfW8/UVomSyRWT3BVYEA/NQp6Pzh9
UGF0dnZ2M0UpMXpub3MzXl9COGdWeyVETW4yVTRXRTVzZERuVCptajM0dVhrYnEwOCRTJHY+XnJ0
KWpWbDkKemxgJDFyQUp2aF56PmBQTCFBRzlpNTlGOF5Gb2hsYjQhJSFyeDZrUCUhanI9bDlMdnow
OHVhZD81RVYtK25PTmk9CnordEcoVGFkcmpNNk8peE0xZFR0QThzdVhlTXd4cDR6PDlGaUgqSCok
enp8VEBKVSNrZE9mKnBaPzRkblVIZDAxJQp6TzQ+MCtkPkJqfEJfRylpIyZ1Pz5ERkhgQ0tKRyoy
P1oqcDM4YDZZKSlCd2xVY0Q0SmYqWWBJek9AV0ZyLX4yfSQKei0oZ08qc3tqWEhnUDZmUDc7fnp+
PisqQ0JBU0NqQV89fHUxdEh2WSVgXihWTUNULXBtV0AtWn56VnJMNU5Ge1l9CnowRDdxWncqYXQ4
MHNJbGxMKXtSWVBOaCUjI0RQUTNmdk48NGlWc3VZe1MyTXk1MjFNN0RvVX0pcW5QNDNffCEkMQp6
ZztlYW9iaE5YT2kqQ2JIME9kSX57Z0NeVlQ0TypjJTsjKDM3fW51OVIocFdYIT10UkRJMnNMSXZR
Pllre2Roc3YKelJAeFo1KEgwTEx3MW8qY15nTWFZI2g4WlpXQ3QtWkt9Y1ZOQzVqKl9IV1o4TV4q
bFVGYj98SyM+P2gjeHkkMDZsCnoyenVaUERDT0dEbGthMz5eZGxMe3JoYCpmJHs+UH1LJEtsRCh1
ODE8UHZ8UjNlPVExZiV3bS1ib2o2KytXe3MydAp6N3kqRFgxI3I/OXlPOy1aNDxLY2l6Y35wNile
bChYTCVEUk4oM1h5NFRZUiZHPHFXZGQ2aVp0a3dEX3Y8NllGKjQKekw2R1lySWZHbVlLISh1Rm1O
QmpDQD01KnNoY3N2ZEVOUn47eShxYC1WfXN0Iz9YWFl8YFBraDMwWVhvMktlWn1UCnpJJkQpdjk/
My0/KHx2aj1NbjF8b01fLUdeNyRNOX5iJG9iVDlJcm4+Y3dxVUI+I3RDJkxgPkt1bFNAIXhZVSl9
KAp6YHIjQEpHTW5yMGFLST9EeCN7b2o3K1NSLVBfZkBvRVQldCN1JTtTMyNkQmFBaldZZmtLfGJS
OXhQVlhqK1ROM3cKemsyO15zQGdFJUMpNkItbW99TzgoUjNkdntPbVlyY2hSV2t5aE1Eem5mYiY+
YGhJPEpyPShYVypqLTZ2V3Ykcio7CnpjZnIqIUo3azQjNVYmaTReVTxAciUzPWNGd0s5Vnw2dkQt
SEY9QCFsaTFMX1NuZ05Ta05jMTliQVNDfUxwN0NkMQp6ZVJ0eFY/TF5rUUJPMUxRTEluTXxkTn5W
dUlJNzliVW95bjFseEdNckY4fktadEdKbGtoQGZPczhUSnRlS3N5RFgKenkzdH1ycFVGNEg1KFkj
clZsZ3haKFU3RTQ9PGtQUklfaUJmMEVCKE4zI0BFbyNpI1o0WHxjNjJFcH5QYlVpUlRLCno4VDhe
aHMwTW5MITV9YGlJMjRNdGg7Vl4oJjduQlFKcUR2UUJKMmI3VGkzZXxFa2ttbWBzWCtfPk1wOChY
Q0l2YAp6IT8xcDU8NlJqdHY5aHYpQFVtaWlfej4lOHVkY3VnXmJtWW4wbmlNRHRkTVBpY2dKUUJH
SVNCRWp6VVBQazJtQGkKejhkZjkrJngzOFkybkxsMiVUYztsRn5XcWFScypESGVTOGdSVDNZamBf
aGRLa1YzS1AzVThiPF9ofjQ0NSpzMEEqCnpNTTM0UT9gMEBncHN+dVNqNkkhZW92dThHKCFqRm5J
XnhtYCpOJnd9JDdMeUhJcyYyZ19+VGIwVSFUNUdXSE82Mwp6dk5gdXdAIzdpJXRzUT9TdTlXVXdr
P3M1ZDt9bXtXT2BuYVFyRnRSbTdwOCtpIWF9VWAzKjUjQnhyNCN1bUJyLW4Kem9tTHUqRW8tOEkh
MjFeeHk7cENaJVFtbzUlVzZlRmE7I2VEK2g4dH5kN2tEcER1fn5zOG5aRHZTc3JYezZMOEdKCnpE
MSRiUlJwVXQ8MDNKSUNkX01xJGQ1MSE9N0JHSHthYDd5LWJNUWNPWk1fZTZ2aS0/TmU5UlAkY096
dnk+LUQmIwp6ajJ0US14eVlWYDcoQnlxbVppNT1sUkxadWh4UDw8Q2BuQ0BrPmZaeWoqbGFOO2V2
WmpuR0AjaiEjTm5vNVFmVUAKej0qe0slTEhUPEs+a3NfOE5hRy1ualBXKW8mMlZBT0lWQUxYUXoo
ejxHektIQjYtcC0pMlZOYD1TajVGNkp8RzU7CnpYRkdwX25XfXlPcjd2RT1IQX58PDlXe0ArZEFw
Tn45e2tuMnpKNk1vdFRoZUhFUUcoTVJ2QXQrb29edmRuSH1uaQp6NDEmPVdKKFZyez5YQkJjUEZu
VVhsM1I/LXFGJS1SZStQaEwxN0wmT1BUOFRGU3ZOM3hheGozX2tHdy1mREB6bGUKempVTFUyRn5t
P1RyMDx2TWsxRF8rSkpqNGRsOy10ek98MFdWKkVxLWBsRmxNbmRrQEsxaCh6ezV2Pz9Bd2RRQCg8
CnorcVNuMDQrMjlVKjQ5PTVPNGo2bFpGTjx3MGlkajV3WG1IWG45WWckOUhiMWxqPzQwTk9kNWcq
VXRoX0wydlN1VAp6bWFEdndyQzdFez9QbHBzIUkrREFaUTUhTShBN1otRXQ9YmlKU1I5SXF9Yypz
PXxQcDt6X09rXlhDb1BBPHE1SzwKenI+IyZNSmU/fmhCSmUkTTFNa2ZAdnpHKXh3I3ByfWJDOGV1
PUp6cDw8QS1RI1c2U2I+dEkxYUM7aWxNdSUtRGxgCno/MXRvSDJ6QXFDN1o4c1dJMzI4Mnczd35R
U15RZCNAaFFeYjdTWXA0NVJZfmx2ayk2Mkp2bkg2VExPLTB2QSFgZwp6MHZzayEpenI0O2RFMEwo
QUt9P0VMIzFxSylqMXVzRUNPKHhtb2dIZDFDfVg+IVU9akVwVkoxISskeDwxayNyN1kKemFAY0JD
cENKZyp0N2YkVV8hXj5pYkFlK3lFZUUka3pTRyM+aEdlTV8mVDt0MXNIdGZBUSpKaVU3WklSdnht
NTBwCnpWfGVLc1o4MVFqOFJWRzQ3QEl0Z2lCWSlFPihlcWxAOFB2UiZLRjw/RkQ0fDZMdWZlMFc4
dCRWPUAwTUdkR3V1SQp6SUMwPWI7PXQlei19Z2c3PEkxLUYxaC0rISUyKT5xakw/I3hmcjNtbXUh
bH0mN2dvR2NoWUItczkmKH5FUH1tfikKekRANzl0U2Z+eFJHZ2xudiMlWGU0K3ota3I+OUw0VkU/
SnlaRmdeOX1WeDtgZT95VHF7RDFMSnJSdzRHdkEpP0BoCnp1PFY8ZnJ7bGdseWRac3ltR0tTT1NH
VHFoUXF9SSUjT3FLNXpYQjZ9US00QUZ2QVV0JHprdntzS1pYKVJKdG1lZQp6TFllTDItRUhqeXhQ
PGExSztnaHJTfUtubkoxI2YjcDU1SkRJWTUtPnlXS3M2WUc2ST5qV3RaV3hofVNGeW9UZVEKej9O
eiomPlg7MlpBMnZDT2RwKyRnQ0paWUUlbn1SZzs2Ym00SXUzeXBuVEpZQEpwKDNZRighb0A9MVAt
UzhjPmlMCnpNcUF9OVV6PDR0ISlDPGg1SzNSUkNecXNyc0cpT0VrZCR2YG9IMFI0PF9YbmVDfEJr
flQ9PSpgdnZTRWlKWV9zPAp6RkcldDlfYFd2JjchMytyanNZdHBHOGo1S3w3WnROSl8ybHZSfnR0
fDM+Nl84U3dRcVY8WU5uT3hnc0NZN09sI3UKekBpO018aj1ZN3khcT5KYkFOTD8xY2Q+MTY2JDg3
Q3FPM25kbyhsYVkkX3lucF56KmkzTWhMYmJBS3llZmVpUEdBCnpKSTMyai0xPDdeNmFNfWRNJiNe
QUpfM1klM3tkfjFobEg1blMybCRFcjFmSzBue2Y+QEF5ejItQ1huUkAoNHwqTgp6NjhHeDNKY1U8
TkEkbmRVTkM2UFpmTTdYR1ZHbUltNX1AI3lLbXtjKlAySz1fZnRRQklselp4JCtWfEBXZjhgNF8K
ejNlYCRYMUpFXlFxe0dBa2c5Q3dIJFZpUSErMUNHcHpnTFMzPyhlUit7cz9+dSZ8IUFhcCVRVDlo
VllRdGNgVmhWCno7JG95YUBkeHMxVlJZKn0/N1p3JHJ3fkRKUWpGRF9fZTdfSVFpc1dvTSZZSTFG
Mlo3Vj1WWFc0LUskUCUpcjJLJgp6Rjl2fDF7NXQmSGVKVHd4JnlNcz5eWjtDbyE9eDVnRlhxZnpR
P1N5dHh6YzwyakBSJkZ2aXJ+dUIwSjFFU2JwQV4KenMpX2daRn04IW9xS29XZ3gzRS1RV0kxTzIm
RUs/NmhHdz4qZztZKGUqfjA4a09IMFMpcnN1YCRkdDNeK3Fga2RlCnpTWUg4OXdsPjdwXzY5c3Y4
KUFFQlVGPng/en1MeGtyMHhwPTFFJTleXm0pbW97LWBvXj5eVFA5PEQ4SXBoMXg4Xgp6dkkjKWc0
UmNLZndOUGRvVjl9O2I1UmxNJnZlNUBIWClQNnlKfSo+UHYmdU90O3RQa0E8NHY/TUVBeEphZGlr
YSYKekhxJEBOLX0lR2Uhd2JDailRYWZDIXJzTXFDRlBANHshKnw3REU4WjtlOVpjZ2pjWmFxYStI
eHRGPDZIOE5JWVljCno9U0dHQCUxMD5tPmUwSHJqeEAmNURBUitpKVRzZTR0b207Q15Se0U8cjNs
RmFidVZSdFo1bXQmSTUzVzhzKzVzPAp6R0lgND88PkxiISVRI0R3aStldUBoNUFpcyZoS3I8ejZ7
OENXT3IlMERMJnJwO1ZYUTQ8aVlaekxUdz4rd3BueyEKenokTjUtNyFfMD14WUdPTnIwcEpwbT0/
VWomQGpYXzhSe1o1SytlPUNOJHR5QDM/VTszNWtPME1qZWI4JE1RanFOCno2dSZ2TUElVjtnQWY9
YWFacUgpMiEjPUQ3RG1+TXY7fnFuISVseStXYW9+JT5mcWVzejUlX3B5NHBIRWF6aTVuPwp6Nnx+
fVVsUGZgXlE8MExebGZScm5YUGt2NENDakxtcVleYzw5dDJCYT43N0Y7Z2lpK1g5KX1ATldqRVNX
blh7S1QKek4rSikyISlhTDdYfkNOakNnNzsxQnVMMishVyF1WCFPYWNDdGoybWw4ME48RDlkKCR3
Mntfc1c5MCtmNyhINXApCnp7OXZ2cnpQYzlRXl98OEReen5MSXVJXih6JFBgZT4jWkUoZnZKRmlu
Syk7VUlldlNrMmshfEp+R2QtMSk1U2VNKAp6VT5kaUAjU0BpVmNnbTEyYiNpeGE4fUU5ditfdlB0
K2gyej13R0hvPG90TSUoNW00NWNoVCNlPmxITTQrUFQlVjQKejFRPy01NCpAMHU5VUF9dl5kUzVZ
cl5SajJmP2cpO1lKOVdvbC1CQENIdjMxIWM2fHYhanRjLVBNPSgjKTV2bThICnpOMGFPNWpERmI8
WVdNKCRvYC1wNlVYVWpZS0IkeF5gM1N3SWtkMj1BWnMoNDFtT19uJjk3X2xaMTY8KFNWaTJCfgp6
IX1QeCVtZFo+Y2hWY35YMnJTVXM3KWAqYTgwME5OfEYqQ3E/OVQ0PTFtR3xlUSQ4d1NWUDNRU1g0
K1QpcVZsZEkKelIqfVktN0IrJG8xdnQkNztmeUtkPDlmVXJjXlpBKjIwWD1BNzwoRT9UIWBfZHIj
diYzODh1eyFNNT58Z0NmVkFHCno0WEJ2K3NvJDM3czRoQTh6Rnx0WGBseVVUP2EmOG9HSitVTHM3
fGVtX047bHVFdHlXaWgtak89bT5gQkBeOVZvKQp6TH4xbnY2JHdhfkdsNUFsNFQtdjU/MkdoNXly
bXVeP0dwek1IM3VGNmZJUXl3YV5OX3AkN1FGPTt8WXJLYUQteEEKem19JUw7KjBIPyFFQzJeUFIx
VSt7aUpobFVOVTV8VGk/bThkNU1uQlkhK2FXdzx+KExASVJmSnRNdVVQbCQhUWxCCnpeY2RuPThQ
USU0WG9Cb3VlWH57X281NW1WYkolOGN1PmMrSzQ+My09N3dJKipoSUpjYEIxWW9PSzRKakFnZHBm
bQp6RiM1cWhWekgqN3h9SEoleFlmaGhqSz9HQDY1TT5AWDFwRX5hdUs4SyhCLWJMQElLWF43VG07
PEY7TG13c2tUR2IKenQ9SFJ6X2hkQH5sUD5sSGoyWSsrY0Nje1o0KGc3RVk3aX5PQUBvZDs7X0lO
PHsrWTg2PiZURW5rSFJ8eSFXcDllCnpycVpIVW1wSUcoRV9qYFI0TSEyYWQzNSp5TXVFQHRUUG54
V1QrbSs+PnJIfGJfK0lpd2ZEfSN4dV8pdWJXbnl+cwp6Vm17X2QmSWopWVYzZz1YWXdKQCFkaWRf
R2NgNXQ2WTUyYFVHb211WjBKPj44MDttYC1yUzF6Jm54TjghSyZuYi0Kem15YUZEdDBOZUlLOTY+
VSE3Q3Y3SiNeI2Jxd2MqXzwrJTNoYH1LaGslRXdjdiM+dj9zPFlPbE8yKz96MCVsQnQxCno7fkxf
OW1ONDQ/PkBHamZJQz40QlcmX3twZ1pOdThkKUItLWdQIXxWfE1CSHhPZjRWaHYkRHdfN3RuQnhg
RjQzeAp6U2EpQ0RZLU93R2IoSXgrbyN9a19RdSgtbTQ4Sj9mVF9gdV5CZUFXeiQrUTNGeDhDKCFP
X3ZlfTRpXldXSl4lczgKelVgSU5ATUBET0dtK3tGcTtHeV55Vis+O0Y+Q2w9TyVUQXklSnpOcDwm
OG5pT2ljdEg9ZW5vfj94ZGUmSWkrZF8tCnp3T1l9az5WUUt9ISglUXRSRUlgM3BvU1FyNEFOO29V
WFZJTGgtTyhvNHhuKWdmYTMpQSRHSk1TTDlke2J7YXx6UQp6eXBlNDVeTWtuLUkkNng2dzJ5SGJ1
T3JtcFBZfn5ISH1xdnR2fVhhKFZEVEt4VlF+Qm02cCVWPksreEk2alp3TGUKemIzbngtR3oqUl48
VSVpM0RLUHB1XkhfUloweEs5WmpiMHhEcGpLLX1aWW4+OWR6cy1TMVI/YH5sMExSVUEwQ3c5CnpD
VX1NODlMZ0Z1Z1hvPmBiOzMrZUFqMnMpVEAofVUjbVRQOSo+YkpmUTFKe0FAcTtWJGdCSlBPey0o
SXBEJSpvYQp6ZXNGPXVvZ0F4N1dMIzsydDR3ZSFqI20qdGJkWlRfNmlLaV9gTilSdmtadGxBMnJl
RmozVDA7cDVQdUU4cVk2MDgKelktdXlfRz51WDYqeDlRbj92I0FnMG1tcSNAX15xJSUodXFtYCRe
MDYldlQyPmwjMnUkQ3VXQT9jITdWSVkoeV8oCnpLSmdEV01uOGlHQUk/SFBCN1U/Sik5QjBHQz9F
ZUFeM2d2MzJJT08oQCk2PyNWWmlGd0FSbDNRO1FBcClZTDcxOwp6ZjhuTFNSZTdjdXJQfGhpVFJ6
RTN6V05XRiRDVEd5PDNEVm5UYEU1cG17SGVWZCFOa1hKdDRVbnFZdG9kRj97aEUKelooUXxIPU14
OEIxUDtYWEZaK0hAeTR1O1ArUVVFQ2YlLW5ubT0zbUBNZ2s2aTR0KSRxalBhMHRkNXAxO2VUaHBz
CnolNCpaLVJGXk9hZD1WQkFqT0V9c2ZlNFIrb0RNZks+VF5Ge2tqN0Y/eWFYbFk1fC1YUjNUc303
JlNLMlBKJXEkUQp6dT1qb3d4OT50KWVsWGg8LSZsPkc+MS1PM197Kj5re3M1ajZjQW80XjJ7aWlY
UHpnU0FkcVk3JCZiZio1JUBZajYKemB0OXwxWlA2czdxXjgwQHh9WTd6MEZjLTt5I04zcU5ZbnZ7
UipsZ2klUTY4NyFEeW9+QlI4MU48Vi16MXB4KClrCnpjbVNSanBycWczTTchSnRmM1JWXlF6cWt8
TjV4M2M+ezE5K0QlWF9JPlV3VmcwRUlXfXFyaFpXYXlESnBIXnpNVgp6byRAPCRTdjtYdWlYOzh8
OyZ9N0V2bF9wJUBzOVpReCRpbHpLZFRFSStyfkFFdFJDUHtDMWd4IUspTWslWThxNmgKek0lbWNL
OFkySzQ8IWo+OXhGSFhrT3cwNT5hZ0VFZ01HIWFIc0ZwIUspKShQeVN0e2ZzQ1ZZcT9UbDt0Mngx
WTRsCnpWfDgoe0lTYGxIQFY8P3N7OUlXSkRJWCF5QTlUVWYyLT9NfmA0Rk0xLSZsPUgmbnl2OUJ7
KFNrMk4ofisoNDBPRAp6RzJLMX1LbzkzSTIlM1BTZDt0YjlVOHNsVVcybmwlYEN0OH1PaFMzSWlr
U2hJQDc9KSE5UDV+TTUhKlRePDUoQkYKeituQTdKZHZsYlBJWWxvbyp1R3NDbX5ubD5xWExXclM5
KHxleWdkWEVZKytHKXY3ITVJVlFLcFBKUHZ0VFJRZ2FeCnpEcVkkcTQhbWRfbkFCWSFeOWVfQFJY
dTd4NXoyY1RWPmQ3ez9MPGhHVVptYCZeJUlVYHJnSTU2e1Q4TzlwZU8qeAp6QV49Q3hxM1VVUEVM
UlZnQGlGRj0+aEJ0KTZTcllSNVZpRHphMWxYY2ZGcnZsOzJ2en5xODJmfk1gXis5Vn5PTFYKel9o
SChPcT9oM1pjQFUyJCNIfiZwUj0mRDtYKUR+eF9NdGckP0dFSFJDN3IkRm5FKERfV1ViPHB7cjB+
YXJ8ck8oCnpKd0dTSjA9NlMrS1ZKaXdLX197SD97QXp8S1oqXippVjQqKyE/NSZuY3c3ZXtWfGwp
P0Zqe0l1TTglNSRXUmtFSgp6SFdVfVpaSFZ5e1UwV0psI3NLM0N2JVlRYllAKiNGLW9KckpXMmA9
Mj1mPWZFTnxNV1kxU0NhaE9wNWY5eFV8JT0KejkzUX03bDJEWFkjSFVvMl4hIz94MU1EbEZOYjUx
Rmc9eD9eJlcjZilPUns3Y0EhZztSPFl9LWVCN1lUeldkYVdLCnpRUF5mZjtHNmdDWENeOV83ZXJk
MURJYy0kVnI+Wjw8Tj5MX214LWhMI0FMOzM9VT1XeTl0JUwyJHR7R1BFX0dWcwp6ckpiLSk8PiRL
djw0KyUzWEJZQUB5VH5qRzNJSVFxPmBDblRVWEMzKkNaOz04Uk16Y3ZySitOWGZ3c0Ixd1RVJkMK
em1ORGg9N04jJVhnNiFiOUhpVkEkSFgmIVd1XiZJUCZ2UmtjbmVTQDk8Wkc5e1liP2pyNTUoM1gy
Myp2ejVOYH02Cno0QGVBYFFrb1okMHxCKy1ETGdYMiQkYmkmQ0tpKkU+cFY7QUV2TXpnZmF5VGhW
KkJ3PjJpdzNAZUM/QFlTZ0skTgp6M1MoNmArcDBqdHZDcjYtMnIzciYhXjE+UzE3QGNsIyRRT2xm
dEI4Q09QQl9eNyphQkVfWF87O0gheG5+VCpOP2IKei1hTDwoXk5SQDJ5MFZZNDlVbjNqMyRzMVY4
M1dBYUdgZjJPKntOPmgrS3ZgP0g4MVdXODBMc3IkSkRKKWkqe2dPCno8I3U8dVRFYlVYOHNoWk1T
Z0ZTM0JvZEdgZkpfS1hub3ZAOVhFNjJST2pwYnpWI24xWHZaSj1tai0hXypma0RVJQp6IWdnVz41
OTZGZFZKSCRicGBzanY7VWFvbD4+ITArMXcxZGRlIW5mWUVpPEMySlI1WmFsYFlZMVZjMjh+XlNI
RHkKek02JTZldmA0dzxDekx2YlB9IzxMczYxIypTNCEmV29OKnc1anQ2JVE1RURkaW5ke3YheUFU
bGlvc0c4LWdjcm5rCnpedkMraXV7NH1BVCtMRjJpTCNzPzJ+fCs2ZmhJSCNnen5XaWBQa2YjZDw/
WEVSWXg7aU59YWR1MyZRfHJRKE12aQp6aGI1JG5fcFZAaXhFcSlQPkQ9fk05QHozIT1aLSswVVBT
c1VrP0RFZ2hqUl9jJEFPcUwhZmZkWStgP0tPVGYzTX0KejdwfGluNEdCdjVoeV9CfFZjZEVhXnhm
Wm1IJnskJUpyc08rdiRKeW1obSMrdlQ1cExOX0Fxe0Q1MGhfZlZlMFo7Cno0PFYhSUN3aEhzSUEj
YmJqVU1LPkhrVSYwMH00S247a18ybktZYUhwaEZNc2tFeyptdlhfejx4a1AqdyQhNTU0Sgp6JmpF
bkFsX2tZe1BHSHg5bXhGNl4kZH5+YFYxI29oYSNDSWttOUs0WWpzc35sSXY2eTMzXk4+XmZSYVZL
Y3xvKlIKemJHP1dWTnVAQi12ciRLd0x7e3IjKDZhckI3KTd5a0pRc2BEbVd+Z18kQ3luMnB7Q0lM
PmhqcXZJQGxjbUEkISZuCnp3X1pqRWRtbmprTWgrSjU8REdtcygtZEVXdyRJS35jQiVqemRqPXBl
M3B5cFBWQ1dzRCl7R3VAWFhmeHx6d2czcAp6cVhVb3VVTGBrUnFMUjF9VWxYZ15SS1gpPmYxTCYo
blpxX2FwTnFOMGhCJHQ/RTIhaVYyLX1FPzZaOHgoSiElLTEKem5KSzRKLXQmTTVybXc/d0h9R2hq
NS1AcjQ9bnB1cTI8eV5kYGNFSSNZVEtlVSlmYiZrQTJTQl5WTkp6Q1l+e1dOCnpoT3IzVylXOSh3
NENkaCpaejU7cW4kKFljKWpvOUJJQUpIJncjT0k1X2M3VEJDKHFhKUYtQVVgPDNKU1BYaEJBewp6
bnEmRk01fkFmSitNXy1XIShLWjhUN3FYIXlRRitudkpvPzlpO3V2TCpvOTFnZzZWOHkwU04wUzxz
KVI8Q0tvaGAKekFTb1g/WXY4P3MqdjJ5RVRpZ0lSX0JfU3tXX3ZRYmltXi14UDBkMGt3dW5tWEdm
N3ZRWDU0a0ZLRVp9Y1Z8d3dNCnp0dGw4UXJyPGZsKUx7bmdWZi1MTk9MTUg1R1FjY3JUdEloLVo3
fHFHT05SRlotbiRfZT5WKGxUJEElezBCd3klfgp6NTRlUFlLQDAlIzg5YEtxZWYzam1XSWwjfHFw
cTN6WitgMXReSGxuc0lCPSpyO1E3M3QtRShuJFEtVGchQChgRigKenRnYXBUUVRsMnIhRyRCX00l
fndKUEspVzhxb1VKMzQjNDVJJXU4U3EqPk90Q1U1cXdgTi0lQXw0QjZyIUpQOX5YCnowQntAfGlm
T313Y1lkenswNzlpQk9xQDNOR2ckTzVaJm5wKipQVWUzckoxXlRaezQ0TVZHQzJ3Wmcje3t4bkpx
dAp6N0kqVm91NTJnSGJKRD8rYEJqNyhkfS1wXnFuXjApcFQ4d2V7ZGV6clpALTdKRStMdm0+ak5a
Mk9CfHklX1Fgd2oKenJYY0Q3IzczRWtVcGlBMEd3P3ZeI0hwZEYzcmIpREVCJGh9Q2hCTWRvWlc8
Kioka2dsNyMxZnBrZWE8LThSTTkzCnolbStaMlQhcyFaMkZnTDQycTlFWDUzQXZBQDZeVFdpZCVX
MkhGTyNTZXkzK0pJfn0kZWRFQ2VHNVhTPnFnZXsoMgp6UmpZPnF6QWE0Yz80eXVrZWJ+R3BsI2k1
KzRZKHNYKStHP2hSPE1UYyhhJEQxUkx5TGNDU099RSV0PCMoZ1VscjAKekZ3QDNfQy1OUkNBM2ND
ciZ6QiVYYz93N0o1eXFJTVY9eFROUmxtVXRkJG5pKXZKSX5XaldtfXgtRUNnNDJkJmhYCnpWNUU2
KHk7YFE4aFF8eHJsI2tQNVgjQE1nbHZ3RlFLSzU+IyQoK0FBYFJlS1hpbiNVITwpZ0RPPDNpdT8p
KGxQUwp6OU1YNWAhWkFuPnlIYzBUQG9WUCE0RDxMbHhIWERTWlUtfDFQRCpHJWxIQ29BQyZoSFBt
X0RDZHQ9d31nVE9UZ2QKejhWcTxlWnMtJk8yTylzKnhZdD0xKSo8bHUkdHVUeTYjZCFLYXBKJj4j
RFFsSUsrckxBRihBJSNqampiQlg7cFp7CnpHTUJRXlhYUmklYlMjKWN0JVY4UVhYajNkYFBveFlj
K2lXMTgwVkB3SWVFaElydy1GZWpPQzgkVndRQE1WQDExbAp6QHlidGtySDhgXnpuIVNYRn5rLWhm
JTNIJEBHX195S2J5c3JrTyhfIU18dzMqQkpjWXM8Mkl+eUJ1Pih+dzI2KiUKenFYWm1WOW44S2A8
Pj18d2Q5bTRENkk7MTlBRylmNVY/VTF4UjhRdkQjb2c/QEJnTkE+e1F5Zlc5fU5zOUomOUklCno2
S35IKXc/QXIjU0FKbX0+JiYhcjk2ZWFXIU5zSXFndXdrfFY9XkJxazV0Y1Q4JDU7WnJ2KDU/dTck
JXs7PHpfXgp6RW5OWV9SU1JMcEFvT0JCZkRyPjhCb091aDVFZE1vamcyMD9vfXQ3e1IyVkF8Wioy
NmopIT0teHRJfHwqVEZvSzgKeig7VllARmlrOHlQamQpbyFHMGNsZFptMXBRTGQocVdfKVBMMVJO
NiYhcH00Q2ReRUkmNmZ2bl5SekdMKGVIeSR6CnoxencqViVTVkowYGFCVjtlekN4VT4wPEpPMGJK
Q2plQjZfT3FsMmsmZVJLP0tZQWoldSNufH5WSzckQU1FVyliVgp6eyVsN0BvPCNvbFZhVHxSRj5N
ODV0ajh1NkV+UDtScGtweV9McTJMPEQmRW9RKSYrUSN1fjtjKXRjI18mNER1MXsKeiQ9dDE3aGBy
XmhyMGVjZ1dnSDZgdSt1V2dDVk9KVGtZIWQqdU1qaV5AS2ctaUJhQElTZVNuIVVSI3lOQEZ3VVkq
Cno1UH5xI0l6dlVWSFJAZmx2a208TWxNT1dMKnMjYEIxRzZxPFNkKVZrUXU7JlJPLVMheDhMcDVy
VWVoVTVtWXl+cAp6Q2wwKTU5TUdpWSh8YUB1aTdiWkBmU0goRXB6a2NnaDYzZ1QqfSg+P09hUmhx
bVZqZjk5Vi0wdjdOWEBZaEIjPjQKemh8c2EkaFB2QzdIRiV1YGBYWWZETUZyTlA2WXhOVEZ0Z0VE
WU45aDgqOSlHOVYhTExzTGZJPFBMcD9yKzd2Iyg5CnpsWnZue0p2KSpHZlNiOG5PWEJEVEkjakk4
ai1tNDdxPmd1VHJoWSt1KCpJemJGNT44enhQXjY8SkFmaHUyI21QcAp6djZDPGlEK0VBSjBJfilG
JGNOMWQwQWcwfEIrOVlANVdXZCtSN1ctZWkybUJEe29RYmVCbSRDK1ZNRSpvaH4mJk8KekVpQlQ+
eSphcChBWX45M2F9d3BARmR4R0JVNXJeJER1OGpae01vPl8pYzA3b3NlRHAtQERUd09vQXw/cit6
YnR3CnpIeyM9MDNoWSFIPilCdXVoV1VrfFNWVG43NXNjK296ITw1TUBGTERRI3peX2ZlbT5WSTZQ
MCVaNjk1IT8obz9UVwp6QXMtMWlQNkJYQDRLaWxJKGVnMTtqeHp0RTlhUCZBMFk/dlZRT1U8clU0
KHFCaV9XYjVKMkM1ZTRxbDRZZlJSRG4Keih9UD4lYklqLSRFZ3c8Y0JOIXwkPD5UZ3pTajNkO29L
ayY2K1RyTE40aFRYJS1Ua3FDRHRMUz55TnooSThMXnJqCno0V0BtUjFtXmU7bzUjV2lIZSQ9TjhS
fWc1blZ1SV9oSHNKJVJvQChmdk9rMCZnQTM9QiM0Jm9OX29oaTtmKSFCLQp6TShVVndxbE0jVWxq
R1NTUSheNGoqdFJCKWN8SnJUNCsteTIxSkZaVU94Rl8hVWBUdSNPcHQmQm97YyZ9MkRtUUEKeiRi
Nnc0YHBTJn43Y1FnODZxYz1CVHNrTD9FfWVsUWF1UEZqVUBlZTloZmFramhTKDdeNnc0PFZSWCR2
bWQ+NHUlCnpKNXZjZDA2WXI3cDtDPFpILUZkXkN0dmp8V2goV19zaFlVSDQ9PjIpMiY8d09XRFd4
I1Azal9eYDk4cGp6QT8/NAp6eXwjRVFqfFQ9Yl4/N2wrZS0zTTItIU9+dHt5diNzNlQ2dEU2RzF1
TmJUSm9XIW10UUgtZE9ZSkhlYWR+ejl6Rz8KemslXnU0T210dzhjVG8kPCU/d3Q4WFdYfW9jRjt6
NDVHdlFQYyZJcG0zTVpta00xNmgkPVRneiRDcDg+NC00OzkjCnpLZlRyIWQrZGl7MGhXNmxiND57
filoaVhnZSEjPVFAZyVNUj53RV56P2lGaFA1fk88b2h6dzxmM0RIeSNiUk98TAp6dnNxT35YKjlG
cEVAbXtrYkI5fj84fEplUHc4NzR0OEVwfGBkelRQcHhxJHRUbWZqTS1fbXwldFclK0NtNnlUdTQK
ell4MjdjKXJHKkpgbX5kR3hJRHoyRFREX3RvKXQ/K0hUZ0pzZCp1dzxQN0x3Z2hUNGI5aHdyI1lg
QUNDSXh3KmNTCnpvOXtLbSQ9QmlsaD9JfThlNlBoTm1qKVdBZF89aDReN0B7NWZVczFgJG1QPEle
QSphK2pAXzgwbz1ATTsqNX0wTwp6Q2dmdnBwWWw7JDZ9d20mby0qPWpRX1QxZXtkLWROaUhSSHRy
Ul9UbTYyNWheMkEmWFNuezRTfTkyPl5LVzhFWFAKekpJdnJ7QkxiMG42WUchem42JSoqWVhnazVy
KmU1cnB3Z2JBX1ozRHxybjZAOyU5ZTZEaEdOc2o8ZHhEUzRqZVdQCnpKYUdVYjJhZGFYbDFUM0df
RE5OJWROWHcjJTdBdmUxRihTKG00SVhNUjVjTlB2Nzw4dyQoZjBZWD5SP3EzOHtPZQp6QkJ2PWY+
T0EqTmJiN094YEVtdmQ8THAqbHsyYHtvP09LI2V7VD8zUU1NJSVhYSF0JTN3bUY4Kj9aWFNne09B
U3cKejhzWlctODFsaEpTMWhBPGV0X194NzAzOUhBMm59X15WPHZKTDwxd1FCazUlT0VKQ3ExI1lW
bXdjP1ojTjRgRTFHCnojbnRTfno9KXdZOT9ySWZidVBOSmhCPkgqUEdKKT5lJDU2M2xBYmAjP2dt
XzRjUnAmME9GdVVtcU0jUmpZNkBYawp6ZnF+bmN0P1g0eHNGdDQzOFJUPTU2QUQ7fS12UTxUNVdU
JitJTDstTjlue0JuQENSc0BqUV4/dXF9MjMxaj4tT3AKejQ1Nn1AcXEzIUUmISZpc3VGRGFne3ln
eyU0TCRFNWk8bE5CRz0oKzJIRmBiUXEyek1BZFI1Z2wwe35JUyZ1LTVjCnp8N1NzekItRFlYMDYy
fj1vKyR4YExxMil7QmtNe34hRlEmdCZPR08kWCEqRVo3a197ZG5pIW1MX3clT014Vkk8Zgp6UFE9
UWB4PiNGdGUreT5hS2dUIXRIMzBaKyUtOzZeQW1iaFkkQWs0PCRWWXA1Pz5GeT1eU3ZjO3FGSylD
WWk0TnEKemVYP357WSs8MUZgZnp7cGt3ek1oMllDfG1RTG9uamBmcjNkMXxXVXsraT9QTyRPSjRn
RyRNfCNGc1c7cTVJfWglCnpefFMtYXl9YSZmS1E0b3czeitDLT9mMkw+Vl8qKiojNU5YazhETCFf
N2Q3Rjl0flczTjFiXypyZTRwd05tfHpPIQp6NX4jcmJEWC1CQiVjdXIjQz5EeSpZJD5pSClBX2BL
N25URTA5RHFDI1BFcWJWRURZMjUhY1V5S0FXb2Upan5IPUMKeiZIJSojNU4wN21yWDBYUkZNezNA
ckN3bitRVUh3dGFMZlJCentee3E2TnMwJjtqciNoNjVffHJfWWV5M0gpS3FmCnpkMT5QSkRSQER5
VkchajhFT2I2PFkmMXB0VVE9d31aOzV9cWRgO1puaVNQVj0qdUV1eGNAUGdrU2RUTX1iSytDUAp6
bUpNV1p4dnlzOVljcGFVQW1wMDNveEw8WlNzd2xDVGZhNE4mVWZOSklRRzVLVyFqaUcyT1ZydlZq
S0lkQXZXdysKenYwbHBiWUUjc0QjdDhxPm8jPlImXyhBfldfSkByaTA2RD1odE47TUgtSDhBb21e
I1ZAS3ZjRF9CT2hPUTg1Zj5BCnpqV0grSlIqZ29nR0xaWEJ7TUcqeXZDPlVVNH5xN0B2anRCTitW
ez5qVyhkUEVYNFp0M2ZeZV9FY00/KW9gS2AlJAp6ZG47dkVlfXdZamMkNEE0dWd1R0QtPWtkNXxI
aio1e2tPKyRyZG9yO2BLeUQwV0c3RXZ6OztmfCV8XjtjNTA0WlYKeiRWLTwzc25UJC0xQ1d0P0VS
OFk8JEZJLXtFSnVBYVYkQ0dwYm8yY2Q8bH1EVGUlRnN2U29IS04jJiFmZ0o8KFhOCnppYEZ1eHB1
WDEtfE10T2t2NWFZQlc5YkxeUDRQRnltdCZMNWJmPzxxRmt8NVU8bH02JUNRZX5JJG5EeXNlN3de
QQp6cWtXYUg2OTJXSWRzaU9iZG16TSolYWVaIzkkaXVrOGJSd2dmY2xYaEpjWEhIN3JUSHBSN2Zf
VVVefmFAOy1rcUcKeiR7LTgwPWkrT0pIdCZhP2lgVFA/Z3RwS3p7ciljYysjWmFKPm1FO2ZnQ0dU
LWx4Y3R5MCtKYTM1JF5lMGYpK1RtCnoydn1yQD1uO1N5NGhSZztIXjIzNkFWcz5JSUJAdGxAYXpG
ZEE8TWorKHErO1ZKUkdNOEk4TDR5Qyh4PHRxfFpJQgp6cFZ5Q1RGKGJ4czEzVENkYWY7Nl5TZWpx
SGpjSGstbX16VVpTI0xkI2srMyk3YGJAenZ0WEthazdLM3ZlQEdFN1UKeiF7UyZVNypAVX02emxm
QTdDS2RJKnctOzVrKXBmPz50e1dfZ1N9Tj42Q1Z6NHFsLVBRdkl5PXd3SGMmN2hkYGByCnohTClq
VUMyPmJpJkhKeHp7aG9lJC1eYyZgLX5EZ0pLbHRCJVF7S25XbWJ2PHQtMUxuMD1De1NpWE1VaWM2
N305Wgp6MkR7RlNNKXdIek41bTkxdjNta0RMQUZKUG5Wb0YzeHFAKkRQfFJDY0tnQzZEZ2pkYUEr
d3lxOTc9cEVoUF59cUgKenNNYWpKSFZ0P01gaSNBQyY+aGI1PD4/ZjgrZ1NqYVlyOCVHQkUrPm5a
O0Nobj1BTWBaM3RYe19mQllhOVlyQ2ltCnpMbUdDV3hYMyt6PDJjODAxTVNZSUJyczxKMjtXJGNJ
IXVTNUpWRjQyUXltV2pWYEVzQyEkdU97bSFDRjZzdDdodAp6TFBubEV2NDhuVT8/dyM4JGozZWdF
cDA+SVR9RFhVKyRLeF9iX2M/IXhaPztWeSV7TVZaJUZ4d0BpN1IwaTZNPiEKemBPdUokamdfWERm
PGROdnBLYEotWVAoflpwWFpRfGplVz8rOHN5Xis8WU9tWksyQjNVSHFWUDItSyNOPUZpTndPCnpL
fGFFT141Xn19TSgzWDchSXY0WVJ5RzUhUyZFNGIjcnMkRmM5OTc8aU5zKDNQbW0xa1hUSy0raiNw
cz1DOVpHegp6aztaPm0yRXI/VHhYTXgyTGxLWDw/bEhQWUo4KF56dU8mZWs+a3kmZW5iPDVyOVhP
XzZtZEFBUnclUzt+WDl9XygKemZNblgtMnZ+NCMzU096MTIhSndDS3N1MilhMG9jPyVtRH54KT50
aWA8V0w5WmZiLWBycUMtN3tqYGpSeDBfe3ZwCnp5bTNzJiR0LVEtS3EhcDI1bzY5eWJzTlQzclQ/
QTclcSZMJkAkfTRkNXNLcVh2bkpRYjtCT3lNblo1YWJRKFhBUQp6cjBkJnUteCpsRT9fTmJiPitO
O3tIfj4wb24xPDN0R3M2WE8xZ210ZClnSFElT3FfcU9hYSl9MEV7ZlMyZTllKGAKenRhVnozVnkp
KWthe2ltIS07MiFrJHQ3IUp5aCNIc3UjWjglaVV2KHNDOSFwOVptM2dZeThrKzZfRkFrQ0FMYD9D
CnpBc18pVCQrNHZNeX0jSEptdFAlPEwxJEpCdkVAKnpPYDtkJWI0UkZ+Tl8hTFVeMGghMSlAZ3U7
Pnk5dWltQ3RSMgp6WU11NH5qQT8rS0RmRTIxc3YpWnp3ZiolIVllQGoyb3Rpa2owT2pzU01Ce0tH
KW47ezJHKFA/dF9jNVVYRVROM0YKeitRTzg/bntlKUpjRmAmMEpLfXg9WlNfN3ZxSXw/fShyMi14
d2NUZzJ0VTxaWHYxSn51Oy1HbSEqZVpTVWFTOSVlCnpeWEZmSlkmP3phZnslU2dfLVZrcUtfMSR8
WHZ+YjYmWkk3O1pyakZ0PC0odG9qfHlqPnJGQEw9WSVJWTtKaXxweAp6QlJyLShFVWE8IWhZZk16
WEhaWkNvck0/Vj9pRCFOWmcoSWJvNjtiWWFkOGRATz1tfk0hdGpfX3Q9KUh8bV59U00KeiRqN3Nn
dDgqQlA5IXRsWHJ7STt7NnNyVGM5fEg3JDF3N249K29MYUUkblkmfEc/dDl4bE5XdiNZanY7KmE0
VV51CnpvTWh0O2tqbzR7YClST3Q4cXlMdnYqM0l4YXo/LUw/UStVbz9kUnl3Nj12bEY2MjdxXks2
emtVISg+enU5MUtJfgp6MVptNiM2IXJWbnU/PkshWWlkc3N5YUQ7UTdCQ3VkVz13OD5fYUNZfCg+
YChGI29AckQjYEtKenR2eGoqRX1YdzQKekxCfjFsQnwlfT49SFQlRjVuVDhMNj5wZEU8bWA5R3h7
KTxranN4anFmWjdIdXk5I2kpWm4rTy1AV2Z+O01yKEdYCnpsUDZqPUB3c0lIXyRZeVB6JVZRKTBE
OzcrLU5HdWUqYyFLWU1lWEt9YyYmRnJUcHokKzkhWlBDR3k0SntJflleKAp6VWdNVmRoMmlETTV7
aEp9NXNJfmkoZjIocER5N3ImMDMzU3g+aTlAQE9nelolcy1NPlZKUVJfdyFEOTZxVz42OF8KeklA
ezc8Y3ghN0BlRW07PFNXU2FwSVc2eTxJU0VXJm5PWURKZCo/K1RaRHhwVnVoa1NvMDheY0FNRjVh
OUBOazN4CnokUE1KPDEwWEUoOTYtdmFuNDsxfT49PjZuJDlSJVVIWmBRVWl5PHlRM1VyKHRjbDM9
X09vNTM8SiVTa05CTmh6JQp6e1N8Yj1yUlJxanAkYFItO3AyPyg7KzdGbVooK0prWGZyZmlPYzFV
MismbG9vOTFBaiQkM1oobXdya0Mhalg4KFUKelUkX2o9YVojSypTSVMydWlTaG8lY3NGOXdrVlE7
NDd9aEtEKFM+N3xWUlNoVz5EZjNBUHVHQGJKUF54UGJufEA9CnowMEhgO1lePmpnN3h+dDxzNmpA
NHNlND5wOH0zSXdwNHR9eCp9PDk9QDkqNmZ6dEZqP3N1O0NEJkc4XnUtQD1yUwp6JmtBc2FEKjE4
MER6fTtiIXErRWQjdG5SJUIjTUdIKjshXi1TRVZPVGJCYUZAMFNsKVc9WFBmc1Y8biglVkIkYVkK
eiQ7RWE0YnQmc0UmJmM+cmA7alhAclhCezJoOVE4JEpPLXt0Jng8OHQ/d3UmfCltM0Y2THR6PkVu
a2FHTDE/MGRwCnoyT3Z9SkRSSnIyTVJjZUk9Jis4JHFFWm4tdjdJTnd1eHpvUmo3akZlQGRvI2hy
RlhENCE3P216QXpHI3NqaWxwOQp6YCp8cy1MJHxFbnotcns1KXkxKlByfn0rRF47PiVxYmt1SXww
Qn10OT10cn1BVnAqSiQ7WSo+c2QzYEZNNi0mY1kKejskaUpoT21kbSNsZzY/KnlTcEdSKVdZJVBE
JF9QQmc4JXJ8fEQlMiR4YyQ2MURqcn56aG1VNHkyXzN4Wk9DbmFYCnpTcSE0QiF5czV+R2EwbiFg
b0BhZlRIP0FtMyh0dmQ8IyRAPWB7PFNYWGUwMENIJCg/KHRWfW5zRmViSlJSdU9MMwp6JDZFVXw2
dHlYTUZteyFoKjsyQ3kwSzMhIWR8d2E0dXpVYzcqPE9QZTxvRzRPMHBLSnAlc1c8Q0FadkM5byom
R3kKej80XzN3TSk+fUUhOD9CUE9eaUo7N2F7IVJXejBtUWc8S0c/WSshMXlSVFJDQntWbmsxMX0w
YjchJEteITwjNyVoCnowR2FCdiNpZmdvamcqaGRBbWludGAobGlOaEljY2EmMnBeZEJsakg3YWM4
cUc/cytfSHN3VEBeZ2VCbkpRZldgMQp6P096RnVETjw9eW1tODNlT35eO0F8RkJtV1dOTm96NDFr
PWgxQUxmdHc2LWtuNEltJTBJMWZjVG4tTkQ1aXVDez8KelBxRmxJNll7WU9gUGtaQGVFZEpMQktZ
JGxIVTJ9RHk/fCtqT31aRTF5KXk0bnpoQmt7LW11K3BCaShfcUt9alkjCnomSUlEMmdaWlhVPEYm
ej1FVnJKbmpXfj03SmBmUjc9PStYNVN1O3stdktzbkdMV1dHNGtLSjQlJWgzUGlGYDROJQp6cX5w
WWE3bU5lP0NtKCNZcEZRKC1GcFpnQEo9R1NNRlRXeCNVd1REYyFrKFpaJTZmOzRxKjJBcFEyUU1s
VVpweCUKejAqd1liUXEwbVE0Y1NeJkBeQXJgeUVfcDhnbUw+MTVrOWFLRzF6VnZBdWtLKWtYT3Nh
e21lNGU/O1Bte2g+NT1iCnpgLXMqNXt4d2xzNHRHI29IVTMhckUoVz9eUk1gYWdpdlM/Jio/ck1C
LTByPmAtKjRSJVhaaX5XVUQ4WmYjdG5ieAp6JTVORUdwM2hIeDlFaHQxdnFCRFZhOXgoPyQ9Z28w
QSREXkFPZ0MzKyRIWGZgS2JUcDlCNk1lWGV4Znt2MX5xcWsKemEoanFYUUVwJWB6S2Y8QjlyNXp1
eWpiWDs2eChQa1RMMl9HPCh8SjRhYU9KSytsNklQb3p3UmlaWHk9b21SUip6CnpvJHIxVTc3R151
OSgofFZXblA8eE42K0pKSWZhR1ktcSROPElzTyEkbHNDMlRHfWVDK2lwISQzMHAjTkFuOEVBKwp6
bH4mMkJ3QlJZKVl6YSo2IUdwNXFAal5iU0ZzeFhFaTJqKUVjMXloY0B+ZT1NdWZqMCVhPWQobTkx
U1U0dkdxfiUKemsjWjRoeE93RGJoREdARitTYHZnejRSKCU+NEp5bj5kc2xuKGdoZlp7e1F5dz9Z
Rk17eCkxbSFETit9VDU7YzxNCno7JkQ4OylTZ1VqNyl8T1Q0QE9hPWVKZkMpUGtDeGxeZCQoO2hk
dllxWU5KbUAoanc/djMkI3h+KEVJfk1meForMAp6aX4+ZDUwMER4dWFVNCVIQlk4JWlvMzB+RHEk
dSZ5XipodiY0dilDYys0Nlh0Uzw5YWRQXjhHaSE/aXcoK348N3YKej9jQVBvNyo/QlpkIT5+M3te
eCU4ckMye01VMys+ZntyRW58QDd2JGsjaWRXV194RH5JZWBAYWdeX2BjeEpJa05NCnpANk9YdCU9
XkNpUHZiUj56VEI8SCtPZEVBX31qUHRQdjV1eXJHRVkhdkhxRjJvUVZecXI8YmpzJWl1bSk2RnZF
awp6PkJyUjNjX3kpbmROQkA3e25EZW9DR0ZQaj0rPGBXQE8keGdEYVBCYilWQ0NHbFNjc2V5X1FK
KHsrKT5wNzQ4MnwKekVpKlJXd0E9Ml4yYEY+RXtPSEhVWikqRXhvd0pQMkJeaHdMSWR8akIxWDJz
a2YyUSRfP0pjKGwpRH0xJWdedEQxCnpXalFEQldZfUxfOUp3OFQkRnB4Yz8qYUJze01mZVBXalhj
JXpkcS1Ya3loY15jK2VjVys9d2V0NEdBRmF7QFReQgp6clVTQHNKZEBnd0N4WSQkUFc7PiFLLXpM
P15JWjQhaGdaNVlxeU5xU1hTNWUmO2wrNU9ePC09THRuWFRtK3FEcEsKelpSelQpbjtyVnZefktI
WjJre3tMJjNLcHtGSkZ8dkZ8T3hYLT1GUWBlMykrYmNgOXFNN2k0UjliXnk2REFiXzBmCnoyX1Rh
LXBZMn1ndUZwN218TmhRYV93TjRYPyhjOFUtcUx6IVZYSiQ4YEJLO0JkQFNDVTxDVFB1YnFEWDs9
aTEtWgp6JVcqaUA/VmR9RmolI1dzcXhUKlQ3JmtmLXpxOVNuVyE3YGRie04qSTBNZFRlbXQjLUwp
ZnN6SXUwKWBrMz9TcUIKekNmfm1yIVRya0E/dk04ODZ3aDZ7PE1HMCRyPSNDTG8+bDFOb3FmKDlB
M3ErS1o7cCpJWkBscjwoSz5TSU13SUVZCnorUGQkdjI5UGBQeVVfanVSXnJnTipYUWk1WUNyJCV2
NmxNZ0tWZmFSe1VyQTZ0dntSfTY1NEhfa05kcW5ISnxvZQp6YVc1Vl8rV0spWHVLMmVYcHs2YkdZ
QE9AQTUkcDI3PiZMfnxPRlleTyh0YUR9RlV4VV8+aDt+MVdCdkk0ezJNPkkKeiNrSXdJLVQmSylf
MmJEVz4mR3VAO0Z4YWU8VyRoUWI7T2hTdWZAZXRya0JlYmtzemopNkZyOX56MkNEejxTU0Y+Cnp3
OGUjXnk3cVFHX09qaU5pQGMxTmckTnwwRmNKQE91WVVWc3l1UX1LKSVuXyRgNXNQYHclLSRxTSl4
eH1KPE5XdAp6KGU3aF5QSmtLUlgzQkgpdnliPl4kb1ZHWVp+TFBVekNaclpkamgyZEs2M3pCaiQ8
YT97Rk9KbUheMjZeP3JVJHAKeio9XnNTU1IpKXNiPHtTSnIqQWs0N2pzcWAoXnQ0XjhSSz81c05S
Wm9OZWR0MldqITllVUxYSHcjezFEPkY3ZUR8CnopPTllS1pAJj9UNCpacFk1NV5iYygzbF4jMmhq
KXxkJEdsREdIe0lWWn1SPSsjZiNsSF9sNytId3hpP0UkQWp6Iwp6eUkrflNpPHV2ditsI0d5T0Ur
U2hgX3FSbDlRQlI9PD9WVmF6X2FsUiE9S0pNUUdSVzcyKit6amt2I3N+Q3ZveT4KemQrM189VGZH
dn1Eey1MUVFITm9UP2BTRHZMT1ZmenlYIXlUdztnbC1YI3xZM0AjMThDJWJFRHZkeUR0dXUjPF5M
CnpAYVlASm1kNEhIVXZIYX48NFEmQ1lESURVZTB2YGN1bT5MPjlFTFMzZlY4YDhDIUBifUh9MGZv
Kl5EUVRfdX1OYAp6KWZ2Wkx6Y01GKXc3ZFF3MD5xYlFvT0FWaD58d2t6PEpHVFE3K0gmMiNeOytI
UnFvR2ZGVWEoTGtKZ1d8VVZKbSYKeno4MzRxP2ReSCUkTFZgR2B2M0Riek8/VX16UmptPy01OCY1
U3p+ZzAlKCh+dnVNYiQ0d1RsPj5ZPHUyako8KTRGCnpJRkAhZTtMem5sWUBxcEo+YG1UX1BfLU4x
dy09OH1kbyEqfGN6Ti1LP3doKjwqTj9HaDwrKzhBV0FuLUlfMllBSwp6N31tIUFqcmJldHw2ODJ3
P1BeQHtFNXFgZWZBamFjMyhNPT5eQHI9ZDwtVUV5ckxFN3N7UGZAV3dJbHU+VXo8NG0KellWcnIl
P2ZIRks+M0tyYDtuWXpHYDttRWYrZ3Qxe2RFPjFvZHQ9JmFXJFNKYHE5V2MkODJSQWBAeHNSdVBX
RUZqCnpVMzs1Y1cqeGZLWmc8b24rTFBadXkzSyVhRj5qOzVfJiRnSHl6eTxsQ3MwLTNuRkdrTjx6
dTQ8KHtiUTk3QU0/KAp6OT9SKERAdSR+JmhrbiQ0SmdMN05tO1ApSXM8UiNnSHNXP2VtIVhHWXdM
PVc8TVc5JmlJaDV1ODtAeGdAO1pDPWAKemMmRlFuWXE+OGt5JUVRKHBDNDRseUdzfGtafHEkaUpz
Qk1HNGQpaj4/eW0yPjVYWm18K3NkflhoY2NYdHQlNHNkCnpUfFY7ZXZqPmlMNypeamh6RCkwIyph
ST9lWTFoaEhpNjxjc19TPn54YGpAc0I8aDh4b1NJPXBDS3xWZz5GcyNYWQp6VTBiKnFkJE44IWBL
aE5xZWtUcU9gUEIhbkpvV2o+UGg1eTZQIy1WK1diI3VfZVowMUd2KWhPZTdPKG5vPGlsI2IKemo2
JTJuQEJYWWl3ZkxhaEo5RGh0S2VHflYla2tEZWo8PmF5P2tqN3stOClhK15XamZpS0UyZF5lZD08
a2xlY0s2CnppbkolVG4+fGxQK0hFaGJGMyRgZ2t1QUZReFIyWDI/JklZTURTeTUqWE41OVoqaVpS
IStvU1E7VFc9ayNCT2BRNwp6dU9FTSYwaV5BczhtfUtgb3N6Szs+Iz9DclRSI3A3QWFtRGBhZF9r
WCNme05BXjhVKDNJSzNLQWBZI01CPEs2Z3MKejg/N0piWUBpejcrNCpCMWNRQGtEc19wVVJvNW8t
MGRFWUtiYXhUYFZBTkgmdHZqbVJtX1dzKTErbUFvQnYzc2lmCno8bGImdiE3VFFVWm9WQTsyYWlx
bjJidzs8cWxwaEA5cmAoT3YoYm1nZC1qJkpGSytmK2xLa3dLb2BqRWZ5TE1yPQp6KGBSRTNYQjwp
Y0FnPWF5PkdZR1l4NjZTYXl2NU40NWteKlQ/WnN1Jl9lV1JZSkw7Njl5JjNoaXBWZ0tqdzs2bF8K
emBzY3FZSXc7enwxaXJ1bSZ5KmclYEBRZVJOdXNlb15mTjlrNCRSd1RHYDtuJXttOGF1dFgpfi1V
PD10bjUhWWhOCnokRSpgYCtwVHV2TiFDVUBMME95ZTFtKW5+NGkzWWJLNHh8Tndkd2NROylMRkQw
TklNTHVeRiRPYWxmNTY1Y147RAp6QyFmfHV2dWdgQzxGbXM4JFZNRDhiMiVQbC1gS2wwe1VlWTN8
Rkt4PndZP3g4I3lKOCptLVRwbnklVUVSWkFRSj4KejFJTiZ3K3dFcUJsZ2F6fUpIUCooKFNPZUAr
fn1eKTJfVG12SUpfMUlQfGFHLWg0czd1YSZRPmRvQiRGfXJzZjVaCno9a31rVTgkaX0wdn5KN14j
Nk1obXE1SE1pKCFBSlN5cyo3WkVpTFlUYj8yPmtrO2o3clZzPW1NY0R0d0ooen5hMwp6eH1EWDdr
M1drNHpZJHlnUHNhSGtlYW93SEtGT2NXY29wfUpORW47KF9qX3VfLXxzS1N7cl4hcyFSVDk3VzZT
LXEKemd7WkNuQ2YjUzwzLVoxMWVlWStwZSo3czl1Wm9MUWIkaFhRWWJXMENLZ3R4PjtffXtHR3Up
YjI5RCZ1e2piTCRsCno+TSpGSUVZSFIpSzBOOVJNfGBlYnRZZnIoalFlbHYjSX15eThmfW9kNkts
c09QWnJ5USFQP1RUKmg0aWVmTmFEYAp6MGhpLVNjNW16dFRSJCR4VVhiJSQ+P1E3QUtCQ0hfS1hv
PTxqYFlyY1RuUjdNazY4bzkoVlpROWM1UHwxeVIhRGIKenlVbUZzT2pxdU8meil+fGA8dGlaQj4j
ODtpYTdTXjx1X3YyIV87emZZN2ZRS21rPDUtQ3B7TX09bkVAUHVWdFJ4CnotQWl2aFVDYTJaKC0p
NnYqQnY7eF9RMWpLKzI4dFRyKDJBMHdmWFNpUXNETzxVbFAyJXdwV31kKSglT1g4NEJYLQp6R3U5
cEJJdTg5X2szVl9qYC0kS0dCZnN2RzFuTFZzUXZtcntncFV6dkppeU1uYm1yKGJhcXtSV2E3Mlpw
MmlCZ0EKemJTTDhoYWI1c3ZfcVAkZF9TZCMldTM8KCRfVXdTSWYkPjc4LUd3LTBWNVBnKVR8TV5w
PXooP2clYF5UdjlrMEshCno2I0oyUDJYMktNSjsyNV91NyluLXkmdzx3O35CYEQ8PTxUWCpLPTsr
JVlYMD56Q1JlQEVDMTx4YX57MGZgM1UjcAp6X2htWnshfExCbHdHP30lUElSa3IlbF5acytSM3Jr
V0FFQzl6MDx3KnQ7RWtiOV9NPihGSDlZV0YhM0YkQGpgMHQKemFEayhPe2BoOFpGVE9NaUFtamZa
XzVTKEE1NCsyYzA/NSo0YlAjWHRNS0M5cXw4ZVpicTAydj9oJHArTjVnMW5FCnpsRUNmIWpNYUYl
YVBMZ0ZiJHFBMCpEa2pkPVdSP2NANWNFZ1UlJTc7MW13OWA1NDJVcHRjVWZOVmxULTFfaDtRPQp6
YGxta0l8OUB1ZCQzWmB+b2ZpP21jMHRgWCU4VWNZXnRaT3hlVkc/UCtWXn1xRz1MMSlvN15eMGpu
PEYqdjNefHMKelE1O2tfWXlablojY2MhNFFYRkVxeUZZOUxTS0E5UmJPVE5NM0QzbV9uKEtTZCRL
VClsYH5RUWpGWGpwMzJVNEhrCnp6YVBZVGpyKn5Pd0xBYUchRV4yMVc4SlQ8fEZ+T3Q9WHwlYmVq
KG0yIyVtb2RjVU8pJClhcCNua3BTPVlvZDVDNAp6KWNHSWR1QkgjYThoXmdNZjlZNUh8TmdKZGBN
WWw2cWI7WjZOXyVsX2pNeWJ8Y3BkWktLYVB6UGs7TDJIaz07amMKej9QNmRMPDQzbTcmdmBrVyhT
NDUrJUhnfHheIWRaQCtQU1RkJH5wVzZ8MEQxVkNoJHhGPFkjNW13dU1ncm93aCZ2CnprS1R7MVl3
eVNWQTFgIWdlPD09U199bFk7Oz5wLUQrNzd7Kndge30lWSY7VXJ5SUhweTBweGYqWG0zeUtsM2pf
OQp6RlVIezs9T2M3bmhePlV7an1HUDdrSVNiMUFXbEdocytsOHhOO19CTU9kUiVkWXhqakN6V1Zn
MUszSDd1SzMrUTAKenl8NDtXTFZXLUxFNz9nekt+eV89SHB8bnU4LUhlYmU8JHtXI01QR0sxakAt
cCpxR0cjZF9JMmZBT0g1Q0pOYCVpCno7VUM2Y2tUMWA/Wjk1Rj5lbXJyVHdZKz1tbGtVUVV7czdY
eF9rMylAe2Iwc1A/ZD4rdEVxJkQ4aXR+WmBtWXcraAp6eyYtPW5kdHR4LTNGUHxYe0oqfkViYFFW
KSU+RFFxWThUKFJGPihJTHg5P3g8LXE8OzheRHRnWWArbUd5QE1lMzkKelV+Pkp6Sk1sVUtAI14j
T0hgP0FXd3YjKDFtVWJANHI1UlY3WW5PY2VKT2p1P0RXQj1YNzdDfTJDRXdqJGkxbE5mCno1QSRC
VXpaIWRMVXRhOX4+VldtKnNhV3NiOG45Pk1aZz50XlJeenlyPkdNRU4jMiR0VkB1R1I+K2Q0QU4j
WDB4cgp6Nz8te0h7clRhKl48ejVfYTRrLVd6YTFCMjdfeGwwdj54bGFHdT9+KCFgNj4wM2xCem5M
RUB6WTU4ZUdRTzQjXzEKemZBX25HYGFiSVh6Wj10ZygzZl8pKSQyY3d2JT0lOyhYelhHd21XKDNU
aXhQblkpJn5Ibl5qSTdZOzVRfHxEKjRHCnolSF5LRGE8aCY7SUklWVV0WUtWTHRWYG11JXpleEdz
Uzh3MC0pPUxgUUVBdThTJjZJYnR4Um5uWThQaX56c0BoKwp6KzM4TmlhajZeZXxGKk1zQk5HM2Vf
Pm8pamNSNX1UOXJaQiY8UHE8T3lxZnk+K25qKHRtaGlyIXorWHhMaU9zSXYKelBPS0NAWSE5YUtw
eFN+KmQhXipiPHdQN2hGbDBHNytHODw0U1VrJmQmZ2JLYSYjPyRBcXJtTjVgQlBJXzdLU3RtCnpx
ZXpTa0Z8dmZWOWFBY2owaEVNZE5kIWY0MG1yY2dqVT1LZDApYz1paUNfcGN3dmsxa3AjKjZPdj9H
Y0xDTCUoPgp6dSZBc3A4VzAtN21JVjtnRUZuZSszMXBpbVVFfS1fXldIRDc+ZVBNcm9faEQ1ZCV5
MnxyfFFDPlBhLUBCUkxnVmQKel9kez51LTdvUE9LTXdhRjJFdH17KHUta2teUnReUHYqUj4xY2pV
I3lyN29Gd0M7WFUxbF5DSFdpX3xMZHEpYytXCnotbGJEYWB5NE05NDh4MHQ4VFUxM007aSpidUpI
V21xSylfPWpBNX1TVUFXcCFYSXZ1dTxXPGpwcj51UWBUSEhmcQp6VG54anBGS3VBcm1BaTAoaX5v
Umh3MGVfPm5Wbkp4aWNPWUJ6Rz5HZ1FUa3opekM9b3EoUG9US3JRJERCNGI9bFYKend3JlZpZzUw
M0F4ZDJQfV87fjdKS2hpREtNP3Q5al9sNjIpdXVadGNTc1JNNypvY1ZDMiVHTUpqJjxCRWxMbior
Cnp2YzV9Y1dyYnFIdn1iNjxqTmhuPVZEaHxLWExWNyF4eExUKDIjc3toTnBrfE9XLWNlSHtsWCly
THFLTkdwVHo0fQp6YD1sMmRHUDZ2dFo9aylaWTxaWSEqc2AkTykyKmVhIUprKm5SSzJYOEhuczh7
aWE8bWI2SF5mZT5fWGQ5WVVwXlIKemFeUThfRkore2BjSDlpalV3c0tQQGFOKk5ka2tBSHZLMj9s
UDJvfiZyP31YKm8mNUdteXp0QjBNQWdMIzleVX5zCnpuNk5xaiRmZ0Z7ND1sQHJXN2w0PjF8R3NW
JCVGS0QzNiR8NCF6fjtweVpgaz8tQFNmK3l4VyUqa1ViYGVRTnwlPwp6Snlzcit4JjlzN3t0QVAz
dHh+aEtDSkRIem9aTHB6Q3EweElCYzZ8aENFKC1wY3U+cXMhWjN6K1p5MHoocXZEI2IKejc+PWp9
VCsoISVhQDN6QSErOUh9S0VDWWs3Y01HX14/UipHeX53QFMxVmdSbyU9JG05UW1oJSVRTTljcGx3
UjdyCnoxMHZWdjJGTDMxbj42VDVhLTl3VD5KRE9hMzJWSFVUaFgkeUk8cXg2KnY7OHVicGtya2w7
PT1YQGg7SDhDJVhXYwp6YzVZM0JvZ2g8KlRqVypPWmJZPzt2cnJZZntNPHl4OGx1WGhLJHd+OVIm
emUhPEtfOD1OKE9ER0RyQjtCJGExbGMKejxMUl8kZ0RWQ0klY1ZNQVd6PE84KXNJTnhaTlUlV19s
VGtQKEQ0IU9fbnFDIWFwOHhYZyU5TTQqPUM/Z3kpNlp7Cnp3dVcrKkI9WVF+MH5henFwdHZnc2Rv
YGlGZG9pfHMqJXorZmV+T2cxRTs7Z1hvMVIlJEFVU1BJaiU/dmptM0ZxRwp6SmFfKGo3eTM7cF9Z
cGZzQ0FxYjhTfm9AMUl7RUdEV2tfWSFDO2lBfERzSE4xV01OLUQ/WkUwU0BHKi0xcC0/JHsKelE1
ek42LWo9TkJwe25+VCNPbk9lTFBIRl9qbzd1fE9iOUhoOXtGfGRPYkp+K1NPekMmKmxaS1ZaPUYk
bz11T2pvCno1RV5gRWR8aHAoZWA1eXNjcGNRXyNSK3phVSEyKnFyMlpnMUFlSkJATyVnfmshRCNT
eWA3dl4lNih0N1NfYkgqJAp6RGkqUmQrN2l7Nz5XXkhDUExTQVVGSENpTj1kbEtrJEQqVG5uK1lV
T2RiR3dAYT83KyYqM2IrK0U3KjIyWipEZHIKekA+VGxLUUJuS3BuSDdWWEpHMEdDb3dKSVhTPlk8
Qyg9amZ8b35LUFJEe3JXZE49VWw3UVIkcXZmdVVpUWNKb188CnowfGp4VVlnMlElI2tDdnFmN1ZZ
UjtRTyQheWBOfHxuNVFgVlY/OGFERkQqSCVhMWo5TU5UbUNHQ1FYakBqZ0gkRgp6JGdxYldRUilW
UVphWjc+bTJfN0pPI1M4bjdxXlg0JFVOenNRVkp3VEZwMVpQSH0kJV9DQVhGbG5FOygrfDRJIyUK
eiN1Wn1TTFE7RmxEfGJROXVgckVLIzQ9e0ZQal93MXYlVDl5eEp2PiZFMEM/RWJRYVkxeT1GIzI2
Ozx7VD5EPT09CnpBUHw5PkwkQHN7UCs1IXt1TX5JMzZzRW1RbDg2M0hpeiFsR0AyT30/ZnI+e29w
VWItRkZJMEMqSiptX3khQlNMbAp6VzBNdSpKXkBKO2k/by1pe3wtdnFrciF3Mzx+e2JoeXE5THNf
Q0t4dF9+bSEoX0lpKW9qT1dAdnE+T2lpJjVyVzEKelJoVXJnIz1hKkpVNUswWlI5bCVPdmVkVSMy
XnBWQ1dIeXh0ODltVmJKdChjMXN6JFZyNGxnMjtOZ0ktcnE1Z0JPCnp2I3NBdk9fYXl2MiNeT1B3
XlRZKUxkKFM1Q3ZsTDxqKHl4UTFvOFo1ZDVFPW0mKE5YUj5FbCVUOUlKTW5BMzVgRwp6PHd5b3gj
RGc8cURsQlIlV1MweCk+RzJBKF5eKVZZM3AlfFV0fDU5U0pPN0cwUH1OODxhQihfVEJZTSQySW4r
fGsKekcwYlJFOGx+azt2MSohdjNudnZLQEl4JE9NKU5jRll+eFVaTEFGOEJvMW1ic0xwNzsoO25M
UWg0UEJBRks8fWNXCnplS1A4THNCcVhuVTNlNE5nMm1Ceys9OHcpdkFCOXhDZW88Zzg+MkQoU3Bu
eDdYaW9oPSljcTd6KXNJaUZ5bUxrTAp6VDxHO1NYKEVKb2E8WHZaMU9YPlhlRn5JWj14N0YzNnFT
JFFhKSp+PDZ2NW49N3tpVShpUTR4Q2ZqRSl0e00jUk4KekQqJClPYEExcHB7blk4S0NAbHhAVHgq
XkBlYygoeCo/SGxfbnAxSjVVZiFBXzAmRlNrd0JIZiFud3NYajJiZk9uCnpkQGImanduXng5aFcj
PXFkWW9vbWJqe3NtbTMzQVlFKnphQXM7Y2wxOHtwMjxDaUEmRUBxIXhWUUpBflheP29wPQp6WFpF
cCZjcmVXYVMoUyU5dzQyUj1qaF5TckUoKTAoKnlGOGg4QnFQXjljeGFZUDBaSFg7Z2dKdkF0c0Yt
a2dqTFcKenk3WkJvTCpIeT5ZZGhAaGwweHEwWjJzR1NvMClCWnQ7TUlBQUdpQTdtcmlEOGM4RXRN
SzlGeXd7VSM+YVRUPWQ1CnozM1U1Y1UmLWJXJGliVzIlWU9NZih5fEU7R2QzPml1JmRzP0pvczBX
VH1xTnNQVmt9ZHQkK0NnbjJ6bms4Kk8odwp6ODJOMiUmPmlzYTBMdjl6Sjc4bzFgdnwhMmZWKG55
TlB0Sl5SeyNTNzM9bjwrJFB4c25BWFd5TTFqd19OREl+fjMKenpZJWZ9RH14eWZGcmZtYm8waWM1
aD9QT0MzfVIoNHVlXio3el5wcntOZFRlQGg/UE9DNDYxI2dgMWxuZGc3TytECm51WXZMIVNvRS01
c3F1ZVFnSkQzcnt2S0FzUkc3dmEwZ3Z4fnprT2A0dnBAWEBAMjF5WQoKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3Rv
bS1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MWI2YWQ2Yy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Vm
ZmVjdC1jdXN0b20tcGFyYW1ldGVycy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSAr
MCwwIEBACi0gICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tcGFyYW1ldGVycy5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAyYTA3YTJlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSw2MiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAg
ICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IHRoZSBjdXN0b20gZmlsdGVyIHJlY2VpdmVzIHRoZSBj
b3JyZWN0IG51bWJlciBwYXJhbWV0ZXJzLjwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJl
ZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAot
ICAgICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBz
dWNjZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgIC8qIFRlc3Rp
bmcgcGFyYW1ldGVycyBvZiB0eXBlIGZsb2F0LCB2ZWMyIGFuZCB2ZWMzIGluIHZlcnRleC1vZmZz
ZXQtcGFyYW1ldGVycy52cyBhbmQgdmVjNCBpbiBjb2xvci1vZmZzZXQtcGFyYW1ldGVycy5mcy4g
Ki8KLSAgICAgICAgLmZpbHRlckEgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3Rv
bSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LXBhcmFtZXRlcnMudnMnKSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVyc3BlY3RpdmUgMiwgCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRleF9vZmZzZXQgLTAuMDUgMC4xLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGUgNDUgLTI1IC0xMCwgCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwLjQgMC4yIDAuNSAwLjUpOwot
ICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJCIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzJykg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCks
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0ZSA0NSAyNSAtMTAsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlIDEwLCAKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGV4X29mZnNldCAtMC4wNSAwLjEsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwLjEgMC45IDAuNSAw
LjUpOwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJDIHsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJz
LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwIDAg
MCAwLjUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlIDIs
IAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0ZXhfb2Zmc2V0IC0wLjA1
IDAuMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRlIDQ1IC0yNSAt
MTApOwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJEIHsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJz
LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRleF9vZmZzZXQg
LTAuMTUgMC4xLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGUgMTUg
LTQ1IDEwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXJzcGVjdGl2ZSAx
LjUsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaXhfY29sb3IgMC40IDAu
MiAwLjUgMC41KTsKLSAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAg
ICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImZpbHRlckEi
IHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9
ImZpbHRlckIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxp
bWcgY2xhc3M9ImZpbHRlckMiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0g
ICAgICAgIDxpbWcgY2xhc3M9ImZpbHRlckQiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5w
bmciIC8+Ci0gICAgICAgIDwhLS0KLSAgICAgICAgICAgIFRlc3RpbmcgdGhhdCBzaW1wbGUgY3Vz
dG9tIGZpbHRlcnMgc2VuZCB0aGUgY29ycmVjdCBwYXJhbWV0ZXJzIG9mIHR5cGUgbnVtYmVyLiBZ
b3Ugc2hvdWxkIHNlZSA0IGJsb2NrcyBvZiBjb2xvcmVkIGJhcnMgd2l0aCBkaWZmZXJlbnQgcm90
YXRpb24sIHBlcnNwZWN0aXZlLCBvZmZzZXQKLSAgICAgICAgICAgIGFuZCBjb2xvciBlZmZlY3Rz
IGFwcGxpZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS10cmFuc2Zvcm0t
cGFyYW1ldGVycy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJzLWV4cGVjdGVkLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE4Nzc2NmYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJz
LWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi08IWRvY3R5cGUg
aHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgZnVuY3Rpb24gcnVu
VGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byB0YWtl
IHRoZSBleHBlY3RlZCBpbWFnZSBvbmx5IGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQu
Ci0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgIC5ib3ggewotICAgICAgICAg
ICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAKLSAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlk
IGJsdWU7IAotICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKLSAgICAgICAgfQotICAgICAg
ICAuZmlsdGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgx
MDApIHRyYW5zbGF0ZSgxMHB4LCAyMHB4KTsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6
IGdyZWVuOwotICAgICAgICAgICAgd2lkdGg6IDE1MHB4OyAKLSAgICAgICAgICAgIGhlaWdodDog
MTUwcHg7Ci0gICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGNsYXNzPSJib3giPgotICAgICAg
ICAgICAgPGRpdiBjbGFzcz0iZmlsdGVyIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJzLmh0bWwgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTM5NDU2My4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBh
cmFtZXRlcnMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAgQEAKLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgdGhl
IGN1c3RvbSBmaWx0ZXIgcmVjZWl2ZXMgdGhlIGNvcnJlY3QgdHJhbnNmb3JtIHBhcmFtZXRlcnMu
PC90aXRsZT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgewotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVy
ZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQo
dHJ1ZSk7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0
aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4KLSAgICAgICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0g
ICAgICAgIDxzdHlsZT4KLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBkaXNwbGF5OiBpbmxp
bmUtYmxvY2s7IAotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmx1ZTsKLSAgICAgICAg
ICAgIG92ZXJmbG93OiBoaWRkZW47Ci0gICAgICAgIH0KLSAgICAgICAgLyogVGVzdGluZyBwYXJh
bWV0ZXJzIG9mIHR5cGUgdHJhbnNmb3JtIGluIHZlcnRleC10cmFuc2Zvcm0tcGFyYW1ldGVyLnZz
LiAqLwotICAgICAgICAuZmlsdGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LXRyYW5zZm9ybS1wYXJhbWV0ZXIudnMnKSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSB0cmFuc2xhdGUoMTBw
eCwgMjBweCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApOwotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICB3aWR0aDogMTUwcHg7IAot
ICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDsKLSAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgot
ICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9ImJveCI+Ci0gICAgICAgICAgICA8ZGl2IGNsYXNzPSJmaWx0ZXIiPjwvZGl2PgotICAg
ICAgICA8L2Rpdj4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAgVGVzdGluZyB0aGF0IHNpbXBs
ZSBjdXN0b20gZmlsdGVycyBzZW5kIHRoZSBjb3JyZWN0IHBhcmFtZXRlcnMgb2YgdHlwZSB0cmFu
c2Zvcm1zLgotICAgICAgICAgICAgWW91IHNob3VsZCBzZWUgYSBjb2xvcmVkIGJsb2NrIHNsaWdo
dGx5IHJvdGF0ZWQgYW5kIHRyYW5zbGF0ZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0
LWN1c3RvbS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3Vz
dG9tLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgzOTdkZTguLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgot
ICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IHRoZSBjdXN0b20gZmlsdGVy
IGlzIGFwcGxpZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQi
LCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVy
ZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAotICAg
ICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAg
ICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNj
ZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgIDwvc2NyaXB0PgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRl
c3QoKSI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcu
Li9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xv
ci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKSIgc3JjPSIuLi9yZXNvdXJjZXMvcmVm
ZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpLCA2IDExKSIgc3JjPSIuLi9yZXNv
dXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LWV4cGxvZGUtZGV0YWNoZWQudnMnKSwg
MyAzIGRldGFjaGVkKSIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAg
IDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVy
dGV4LWV4cGxvZGUtZGV0YWNoZWQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29sb3Itb2Zm
c2V0LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMyAzIGRldGFjaGVkKSIgc3JjPSIuLi9yZXNv
dXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSkiIHNyYz0i
Li4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBU
ZXN0aW5nIHRoYXQgc2ltcGxlIGN1c3RvbSBmaWx0ZXJzIHdvcmsgaW4gc29mdHdhcmUgbW9kZS4g
WW91IHNob3VsZCBzZWUgNSBibG9ja3Mgb2YgY29sb3JlZCBiYXJzIHdpdGggZGlmZmVyZW50IGVm
ZmVjdHMgYXBwbGllZCwgZnJvbSBsZWZ0IHRvIHJpZ2h0OiAKLSAgICAgICAgICAgIG9mZnNldCB0
byB0aGUgcmlnaHQgd2l0aCB3YXNoZWQgb3V0IGNvbG9ycywganVzdCBvZmZzZXQgdG8gdGhlIHJp
Z2h0IHdpdGggbm9ybWFsIGNvbG9ycywgNCBzbWFsbGVyIGJsb2NrcyBhdHRhY2hlZCB0byB0aGUg
Y29ybmVycywgNCBzbWFsbGVyIGJsb2NrcyAKLSAgICAgICAgICAgIGF0dGFjaGVkIHRvIHRoZSBj
b3JuZXJzIHdpdGggd2FzaGVkIG91dCBjb2xvcnMsIG5vcm1hbCBibG9jayB3aXRoIHdhc2hlZCBv
dXQgY29sb3JzLgotICAgICAgICAgICAgTm90ZTogV2ViR0wgbmVlZHMgdG8gYmUgZW5hYmxlZCBm
b3IgdGhpcyB0ZXN0IHRvIHN1Y2NlZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZh
bGxiYWNrLXRvLXNvZnR3YXJlLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1mYWxsYmFjay10by1zb2Z0d2FyZS1leHBlY3RlZC5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzhlNzFmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLWV4cGVj
dGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4K
LTxodG1sPgotPGhlYWQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAg
IHBvc2l0aW9uOiByZWxhdGl2ZTsKLSAgICAgICAgICAgIGxlZnQ6IDVweDsKLSAgICAgICAgICAg
IGhlaWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA0NXB4OwotICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogZHJvcC1z
aGFkb3coMTBweCAxMHB4IDEwcHggYmx1ZSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9o
ZWFkPgotCi08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJib3giPjwvZGl2PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXIt
ZmFsbGJhY2stdG8tc29mdHdhcmUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDI4ODA4NzUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9maWx0ZXItZmFsbGJhY2stdG8tc29mdHdhcmUuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDU0ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPCEtLSAKLSAgICBUaGlzIHRlc3RzIHZl
cmlmaWVzIHRoYXQgdGhlIG9sZCBmaWx0ZXJzIGFyZSByZW1vdmVkIGZyb20gdGhlIHBsYXRmb3Jt
IGxheWVyIHdoZW4gdGhlIGZpbHRlcnMgY2Fubm90IGJlIAotICAgIHJlbmRlcmVkIGluIHBsYXRm
b3JtIGNvZGUgYW5kIGl0IGZhbGxiYWNrcyB0byByZW5kZXIgdGhlIGZpbHRlcnMgaW4gc29mdHdh
cmUuCi0tLT4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVBy
ZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVl
KTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAg
ICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIGRvbmUoKQotICAgICAgICB7Ci0gICAgICAgICAgICAv
LyBBZnRlciB0aGUgb25sb2FkIGlzIGZpcmVkLCB3ZSBrbm93IGZvciBzdXJlIHRoYXQgdGhlIHNo
YWRlciBpcyBsb2FkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0g
ICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhl
aWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAvKiBGb3JjZSBhIHBsYXRmb3JtIGxheWVy
LiAqLwotICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDAp
OwotICAgICAgICB9Ci0KLSAgICAgICAgLnNoYWRlciB7Ci0gICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQudnMnKSkgZHJvcC1z
aGFkb3coMTBweCAxMHB4IDEwcHggYmx1ZSk7Ci0gICAgICAgIH0KLQotICAgICAgICAuYmVmb3Jl
IHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBkcm9wLXNoYWRvdygxMHB4IDEwcHggMTBw
eCByZWQpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLQotPGJvZHkgb25sb2Fk
PSJkb25lKCkiPgotICAgIDwhLS0gCi0gICAgICAgIFRoZSBleHBlY3RlZCByZXN1bHQgaXMgYSBn
cmVlbiBzcXVhcmUgd2l0aCBhIGJsdWUgc2hhZG93LiBBdCB0aGUgZW5kIHRoZXJlIHNob3VsZCBi
ZSBubyByZWQgb24gc2NyZWVuLgotICAgIC0tPgotICAgIDxkaXYgY2xhc3M9ImJveCBzaGFkZXIg
YmVmb3JlIj48L2Rpdj4KLSAgICA8c2NyaXB0PgotICAgICAgICAvLyBGb3JjZSBhIGxheW91dC4K
LSAgICAgICAgZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQ7Ci0gICAgICAgIC8vIEhhdmluZyB0
aGlzIGlubGluZSBmb3JjZXMgdGhlIG9ubG9hZCBldmVudCB0byBvbmx5IGZpcmUgYWZ0ZXIgdGhl
IHNoYWRlciBjb2RlIGlzIGxvYWRlZC4KLSAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcigi
LmJlZm9yZSIpLmNsYXNzTGlzdC5yZW1vdmUoImJlZm9yZSIpOwotICAgIDwvc2NyaXB0PgotPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1jbGlwcGVkLWV4cGVj
dGVkLnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzVhNDhlMmQwMzcyMjAyZmRk
MDQ5OGY2NDE1NDU1YTgxMzY5OWExNy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAx
MDcxOAp6Y21lSTJZZSpEUDZ2eXcoUFBRdlB3bD17UklyZFAqNTgxNCVaZGhHJk8pWCEmKUckKFd0
dzN6ZUVMNnl5SDZ4NTMKelFoe2l3NW02K2xwR3JpX14tSjFZR0xualAhRUIyVj9PfmFpK1p8bjxg
PUwqTGpQcSQ+PUg1TUwmJDsqZiZpUyp8CnpYKHtwVXVELTRhQUB7QHQhJWw9MEpWST15KHVGKiFL
VCVta0swLT8zR0U0RmY9alJuMUo2PyNRZ3ZiTVY1bUM4PAp6SGRrMDU4RFo0d2JoLU5jdT40NCEm
WnlVaTN4M3l3JEh8X2VMX15IKFFmQk9SUGZLQmptdG5eX2VAKEotTURIT34KejF6RTg3VD81K1Er
Jm5obSt1ZlBiNWJBI0sqLU9XJC1FUk5jSnJ5cV5oVUp1TTkqZkIwJDwwcHBuNUkrPDUyUUNVCnoq
O3QmNG0wbW03KnxaR3YpI3B5WUQpfHZ2O1JoP15jLVJLcFJJYClxWDdsZ003MzFvdVVoYH40U0dn
Um9pRkIoJgp6PzMoPHBxdkd0ckZ2WWV+Y0A0STtoXlh4SXJ2aGhncX5RQ3I/MGY0TSEodHt4WVpn
aHh0QVdBIV52JmZiaXNTayQKekJoP0daQjF2czB5SU85d0V0MztlcSpUQEBkTnN+YE4/JkpNIXU0
Z1BYME43eGY/Q1pseSUwPSFJT005Vlg+WXYwCnpsYDxkNVYtTnBTJUVLLSVIRS1IQEA7cWZlN0t7
RS1qZypJX3AqJFdjcFoyQjlwQW5KMUQ0T3pjQXt8NDNBVkJqfgp6Mn5INFBGPXozRDh1VUxEPkYk
KiNeUD5VQj82Mlg/cW4oQEhzQWhoPUhORVJVeTlmOyZYZnRFaWExOH5ZNEdpPDUKelY9cU9CR3tQ
fFVZMVFIJFdKJHFkJCZxdmxNa2BxTTJHJDEzT3VNRjBeOUAoTXNKZVB1TD9RaTI2cjRWQ1QhUV56
CnpvWGp7KDd6ZUlFUjJVWXszWGtDaWsodlpgZy1qSnRaUG9sPTctWHckWUhBd3B5aUclZjZCdmkk
UWR2aWtPcmpoegp6VGAzd3ZDPSU2KT13YTdCalhiMTw1eF9DZXVUWCRYIWxINDF0N0AoKHA0O2g3
VzxCeEhIVlJmakpRbWdzUVZldXMKelMpKjBFUjxfSSYyRy1SVVAtdH53N3tPTXpUKChASlFyMHxx
dGZRUGVCX2Z9UkIrN0NoMG02c1RkZGomTkVWYEI2CnpxJTBkKmNGbmlxV1o1fEAmdHNTOVU2Zl5r
VklWOUo3VWBoRFgoM25DMCspeXM1VTRGdSY0aUxtclpPT3JMfDZiYwp6WD9kVjtrdVZBRTlCRVRB
Ymgha1IoRUxqczZVOztlbFExZXU5VFFCQDFkfHt2TkY1VWgzan51T0VQJH0hKVo7KXsKdWtXQHp5
N0M9fiM9bTVma1F8a3Z8O2glKkNZcnE0Q0NtVmlyJnFlWndPX1VneVZyYm94UX4zdXUwSDNTPwoK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFp
bnQtY3VzdG9tLWNsaXBwZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBlY3RlZC50eHQKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9tLWNsaXBwZWQu
aHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3Vz
dG9tLWNsaXBwZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmY5MmNjMTku
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVw
YWludC1jdXN0b20tY2xpcHBlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAot
PCFET0NUWVBFIGh0bWw+Ci08IS0tIAotICAgIFRoaXMgdGVzdHMgdmVyaWZpZXMgdGhhdCBzaGFk
ZXIgZmlsdGVyIGlzIHJlcGFpbnRlZCB1c2luZyB0aGUgZnVsbCBzb3VyY2UgaW1hZ2Ugb2YgdGhl
IGVsZW1lbnQgaW5zdGVhZCBvZiBqdXN0IHRoZSBkaXJ0eSBhcmVhLgotICAgIEFsc28gaXQgdGVz
dHMgdGhhdCB0aGUgY2xpcHBpbmcgcmVjdGFuZ2xlIG9mIHRoZSBib3ggaXMgbm90IGFmZmVjdGlu
ZyB0aGUgZmlsdGVyLgotICAgIFRoZXJlIHNob3VsZCBiZSBvbmUgbGlnaHQgZ3JlZW4gYm94IG9u
IHRoZSBzY3JlZW4uIE5vIHJlZCBzaG91bGQgYmUgdmlzaWJsZS4KLS0tPgotPGh0bWw+Ci08aGVh
ZD4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICB9Ci0gICAgICAg
IGZ1bmN0aW9uIHJlcGFpbnRUZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcigiLmJlZm9yZSIpLmNsYXNzTGlzdC5yZW1vdmUoImJlZm9yZSIpOwotICAg
ICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuY2xpcHBpbmdfYm94
IHsKLSAgICAgICAgICAgIG1hcmdpbjogMjBweDsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsK
LSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVu
OwotICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOwotICAgICAgICB9Ci0gICAgICAgIAotICAg
ICAgICAuZW1wdHlfYm94IHsKLSAgICAgICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgfQot
ICAgICAgICAKLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDE1MHB4OwotICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3Jl
ZW47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIC5iZWZvcmUgewotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Ci0gICAgICAgIH0KLQotICAgICAgICAuc2hh
ZGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNl
cy92ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMpIG1peCh1cmwoLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgb2Zmc2V0IC0wLjUsIG1peF9jb2xvciAxLjAg
MS4wIDEuMCAwLjEpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLQotICAgIDxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9mYXN0L3JlcGFpbnQvcmVzb3VyY2VzL3JlcGFpbnQuanMiPjwvc2NyaXB0Pgot
PC9oZWFkPgotCi08Ym9keSBvbmxvYWQ9InJ1blJlcGFpbnRUZXN0KCkiPgotCi0gICAgPGRpdiBj
bGFzcz0iY2xpcHBpbmdfYm94Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGVyIj4KLSAgICAg
ICAgICAgIDxkaXYgY2xhc3M9ImVtcHR5X2JveCI+PC9kaXY+Ci0gICAgICAgICAgICA8ZGl2IGNs
YXNzPSJib3ggYmVmb3JlIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC5wbmcKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwNzM2YjBiZTVkZTBlNjViMWE4YzdjNDM3ZjBhOWQxMzQ3
MTg1ODAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKR0lUIGJpbmFy
eSBwYXRjaApsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgMTA0MzUKemNtZUFTQE4/KG9s
SHlgdVZCcSFpYTB5fnlVeyt2WVYyYT5pMUIlUWxZYnBSem5rQjlnQ0NNNDckPVN1RnhlUHtUCnpO
b2szUjI4cWUkQ1dlVmRoTCZiMmhETWVLVz1WO3VpTjsxfFgtVGBMLWRAVlVwYl9mbjt1dW9GYDFh
PDsrej5fKQp6bXB9Ji1NbmhHRnBpPmRBNzY/PXxCYHg0bDdRQ15MY31lOSMrckU4IXg0OVNKUShJ
ajd5VFdHUHkmcDtyNEdmRy0KekVGMXl+NGg7dCE5XjYlTVdgU2AqO3tQfSQ2eip8QXFgflVXdTwl
VGYrXlBXODBUU1g3YyNvX2pqZnczPFBtfTxYCno1TD9IMHhEYE4jRihZJHxue0VkfXNQWCVIITlS
YUt6MXx2TVNALXcrX3h1MG4rNWg/UjxJbT5uYXtwZkUrd0syJAp6S1Ipak51YX56Xm82aUhnNX45
JlVAQmAtdyZmTmhCaHhqckFKeV5iJDZYWC1Ibm1IVTIzaEhtMTVDU0h3SlFKU1gKei1LcXhuYSlE
QXAhPC1HPXMmSWh8QV9mayMlQ0ZDWUpNS1ZkMTdwITR5KHdAM2h1e01ZbmZHRnw1JSNKQkp2ezE9
CnooR1ZGO0JrKVd6bnJsWU9rPHBUTXc1fVBnZU1qM1BxYjs9MnJYczh9RnhxJD8/TXtxI3VtKXxI
dmpRfEVGellIKAp6MmlZTShfa3IrKXR2aFRHV21xQzN2cjB8UFJZYjNQNFh7QHxzJHcpZXB5TXYx
PjA+bEVqRnR8dGs7PjhCRnEjYGkKemJIaXdFMDF1Nmh3djxMJmoteEdVKiEwfEpaV3pyQ3FxJCk7
SC1JUEtOODhEeD9jfnZSQEBQQUd3NEtiekcrR3ZwCmdtVzZ8JEVOdEJXYiV5WHhSWDEkYDtIcEZo
UGdnJmVieHNMUTA3bzQ9Q0lBMmMKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVkLWV4
cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFp
bnQtY3VzdG9tLXJvdGF0ZWQtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAzN2Y5NjkwMzhkYjJlYWUyN2FkYmIzNzZjN2Y1ZGNhY2QxYmFiM2JiLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAw
CkhjbVY/ZDAwMDAxCgpsaXRlcmFsIDk5NTUKemNtZUFTQE4/KG9sSHlgdVZCcSFpYTB5fnlVeyt2
WVYyYT5pMUIlUWxZYnBSem5rQjlnQ0NNNDckPVN1RnhlT141CnpESGZMSVd8b08ycmlsaXxNbi05
QXNpfiU+V35sfjdERiNXRlgoYE0qUyQhQjcpSmk+Rjk3OEc/LWA/RHE4eGtudQp6OHJZTTspWVdL
STdrPFRYPnhDJjM2KWJQTWwpSW40STYzRjl2aExsSylBSHYoKlZLSjxaZVU8IVYmTT1fYUE7cz8K
emJhO0B4QStaU3x6e3ZFVWd7OHc4Qm5NVGJBU3xGRHhtNkxTMTFRU1VBdzRRVDhhfGB4MUR1SVFe
VCVsVUZ0VzxXCnplUzRLRl9RdCpjY2pVY3U8Tk4qZkUhb1ROYXNLKUJgU2FjUktXdzNlTGM7LSRB
TihnMER1ZlVmTVMtQDBMdGJzfAp6VHYpdlZ0YjdDbzZxK0E7IWJ7U0kxOFctP2M3RlhAaWQ1SVFJ
VytMSnNsIVlLPmZPJTdeeUokMD56dkB+M29JX2QKeiRZPi1uNF9jdnRNREIyTE9vKXo7UzRZJWcy
YG50NWp1e1BeKEtJdWZuP1B3YHc0OHg4fDNeejthOXUtRy1FYHBpCnpYUGYha2g0PVgoRGxDU158
NGpkdzl8PUpeUXtkWEAxUGhDWVRXJHhVbVNiZG0jNU83cVp3SEtxJnVJRD4lXiMhWAp6MUVOVmtU
MFZ9fTR+VWxlWCNGcitLYUFFN3F4SGpSe1F3KSQ4bSU4az4mTWFoNWpMMVIrQ0NVPEFCP3NTTSV4
RlkKdT9Tcyt3MGk7JE9aNkElY2s0RD1eXmxLbWVWYDkkYiolPlNRPjshUHQ4aVN7K3BVWE9AZ2VD
d0tTPXdhKQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmls
dGVyLXJlcGFpbnQtY3VzdG9tLXJvdGF0ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tcm90YXRlZC1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tcm90
YXRlZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9t
LXJvdGF0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJl
cGFpbnQtY3VzdG9tLXJvdGF0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWU3NDE3ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Zp
bHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2MiAr
MCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTwhLS0gCi0gICAgVGhpcyB0ZXN0cyB2ZXJpZmllcyB0
aGF0IGZpbHRlciBzaGFkZXIgaXMgcmVwYWludGVkIHVzaW5nIHRoZSBmdWxsIHNvdXJjZSBpbWFn
ZSBvZiB0aGUgZWxlbWVudCBpbnN0ZWFkIG9mIGp1c3QgdGhlIGRpcnR5IGFyZWEuCi0gICAgQWxz
byBpdCB0ZXN0cyB0aGF0IHRoZSBjbGlwcGluZyBvciB0aGUgdHJhbnNmb3JtIHJlY3RhbmdsZSBv
ZiB0aGUgYm94IGlzIG5vdCBhZmZlY3RpbmcgdGhlIGZpbHRlci4KLSAgICBUaGVyZSBzaG91bGQg
YmUgb25lIGxpZ2h0IGdyZWVuIGJveCBvbiB0aGUgc2NyZWVuLiBObyByZWQgc2hvdWxkIGJlIHZp
c2libGUuCi0tLT4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVu
YWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0
cnVlKTsKLSAgICAgICAgfQotICAgICAgICBmdW5jdGlvbiByZXBhaW50VGVzdCgpCi0gICAgICAg
IHsKLSAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5iZWZvcmUiKS5jbGFzc0xp
c3QucmVtb3ZlKCJiZWZvcmUiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHls
ZT4KLSAgICAgICAgLmNsaXBwaW5nX2JveCB7Ci0gICAgICAgICAgICBtYXJnaW46IDEwMHB4Owot
ICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAg
ICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7
Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIC5lbXB0eV9ib3ggewotICAgICAgICAgICAg
aGVpZ2h0OiA1MHB4OwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICAuYm94IHsKLSAgICAg
ICAgICAgIGhlaWdodDogMTUwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAg
ICAgLmJlZm9yZSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsK
LSAgICAgICAgfQotCi0gICAgICAgIC5zaGFkZXIgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1ob3Jpem9udGFsLW9mZnNldC52cykg
bWl4KHVybCguLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzKSBub3JtYWwgc291cmNlLWF0b3ApLCBv
ZmZzZXQgLTAuNSwgbWl4X2NvbG9yIDEuMCAxLjAgMS4wIDAuMSk7Ci0gICAgICAgICAgICAtd2Vi
a2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwcHggNTBweDsKLSAgICAgICAgICAgIC13ZWJraXQtdHJh
bnNmb3JtOiByb3RhdGUoOTBkZWcpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLQotICAgIDxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L3JlcGFpbnQvcmVzb3VyY2VzL3JlcGFpbnQuanMiPjwv
c2NyaXB0PgotPC9oZWFkPgotCi08Ym9keSBvbmxvYWQ9InJ1blJlcGFpbnRUZXN0KCkiPgotCi0g
ICAgPGRpdiBjbGFzcz0iY2xpcHBpbmdfYm94Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGVy
Ij4KLSAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVtcHR5X2JveCI+PC9kaXY+Ci0gICAgICAgICAg
ICA8ZGl2IGNsYXNzPSJib3ggYmVmb3JlIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9k
aXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20uaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggOTZmYTM4Zi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsNTEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08IS0tIAotICAgIFRoaXMgdGVzdHMgdmVy
aWZpZXMgdGhhdCB0aGUgc2hhZGVyIGZpbHRlciBpcyByZXBhaW50ZWQgdXNpbmcgdGhlIGZ1bGwg
c291cmNlIGltYWdlIG9mIHRoZSBlbGVtZW50IGluc3RlYWQgb2YganVzdCB0aGUgZGlydHkgYXJl
YS4gCi0gICAgVGhlcmUgc2hvdWxkIGJlIDQgYm94ZXMgb2Ygc2FtZSBzaXplLiAzIG9mIHRoZW0g
YXJlIGdyZWVuIGFuZCB0aGUgbGFzdCBvbmUgb24gdGhlIHJpZ2h0IGlzIGJsdWUuCi0tLT4KLTxo
dG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAg
fQotICAgICAgICBmdW5jdGlvbiByZXBhaW50VGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAg
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5iZWZvcmUiKS5jbGFzc0xpc3QucmVtb3ZlKCJiZWZv
cmUiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAgLmJv
eCB7Ci0gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OwotICAgICAgICAgICAgbWFyZ2luLWJv
dHRvbTogMTBweDsKLSAgICAgICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRo
OiA1MHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgIH0K
LQotICAgICAgICAuYmVmb3JlIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsK
LSAgICAgICAgfQotCi0gICAgICAgIC5zaGFkZXIgewotICAgICAgICAgICAgYm9yZGVyLXRvcDog
NTBweCBzb2xpZCBibHVlOwotICAgICAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cykg
bWl4KHVybCguLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzKSBub3JtYWwgc291cmNlLWF0b3ApLCBy
b3RhdGVCeSA5MCwgbWl4X2NvbG9yIDEuMCAxLjAgMS4wIDAuMSk7Ci0gICAgICAgIH0KLSAgICA8
L3N0eWxlPgotCi0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2Zhc3QvcmVwYWludC9yZXNvdXJj
ZXMvcmVwYWludC5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci0KLTxib2R5IG9ubG9hZD0icnVuUmVw
YWludFRlc3QoKSI+Ci0KLSAgICA8ZGl2IGNsYXNzPSJzaGFkZXIiPgotICAgICAgICA8ZGl2IGNs
YXNzPSJib3giPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJib3ggYmVmb3JlIj48L2Rpdj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iYm94Ij48L2Rpdj4KLSAgICA8L2Rpdj4KLQotPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZh
bGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5cGVzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUt
dHlwZXMtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGQwMDRk
MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQt
Y3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDI3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyBkbyBub3QgZXhlY3V0ZSBpZiB0aGUgYXV0
aG9yIGRlZmluZXMgYnVpbHQtaW4gYXR0cmlidXRlcyB3aXRoIHRoZSB3cm9uZyB0eXBlIG9yIGRl
ZmluZXMgY3VzdG9tIGF0dHJpYnV0ZXMuPC90aXRsZT4KLSAgICA8IS0tIAotICAgICAgICBUaGlz
IGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRlc3QuCi0gICAgICAgIElmIHRoZSB0ZXN0
IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNyB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMu
Ci0gICAgLS0+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7Ci0gICAgICAgIGJhY2tncm91bmQtY29s
b3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0
OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hl
YWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48
L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4K
LSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5
cGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9t
LWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggZDU2NWJhMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2ludmFsaWQtY3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDY1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyBkbyBub3QgZXhlY3V0ZSBpZiB0aGUgYXV0
aG9yIGRlZmluZXMgYnVpbHQtaW4gYXR0cmlidXRlcyB3aXRoIHRoZSB3cm9uZyB0eXBlIG9yIGRl
ZmluZXMgY3VzdG9tIGF0dHJpYnV0ZXMuPC90aXRsZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBh
c3NlcywgeW91IHNob3VsZCBzZWUgNyB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0t
PgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0
b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQotICAgICAgICAK
LSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8vIFdl
IG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgc2hhZGVycyBkb3dubG9hZC4KLSAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5
bGU+Ci0gICAgZGl2IHsKLSAgICAgICAgLyogSWYgdGhlIHNoYWRlcnMgZXhlY3V0ZSwgdGhleSB3
aWxsIHR1cm4gdGhlIGVsZW1lbnQncyBjb2xvciBmcm9tIGdyZWVuIHRvIHJlZC4gKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgIHdpZHRoOiA1MHB4
OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgIG1hcmdpbjogMTBweDsKLSAgICB9Ci0g
ICAgLmludmFsaWQtY3VzdG9tLWF0dHJpYnV0ZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZzJykgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAxLjAgMC4wIDAuMCAxLjApOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLWEtbWVz
aC1jb29yZCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvaW52YWxpZC10eXBlLWEtbWVzaC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9t
aXgtY29sb3IuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMS4wIDAuMCAwLjAg
MS4wKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hLXBvc2l0aW9uIHsKLSAgICAgICAgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS1wb3Np
dGlvbi52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBub3JtYWwgc291
cmNlLWF0b3ApLCBtaXhfY29sb3IgMS4wIDAuMCAwLjAgMS4wKTsKLSAgICB9Ci0gICAgLmludmFs
aWQtdHlwZS1hLXRleC1jb29yZCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KCcuLi9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWEtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAx
LjAgMC4wIDAuMCAxLjApOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLWEtdHJpYW5nbGUtY29v
cmQgewotICAgICAgICAvKiBUaGlzIGN1c3RvbSBmaWx0ZXIgdXNlcyBhIGRldGFjaGVkIG1lc2gg
YmVjYXVzZSBhX3RyaWFuZ2xlQ29vcmQgaXMgb25seSBhdmFpbGFibGUgd2l0aCBhIGRldGFjaGVk
IG1lc2guICovCi0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvaW52YWxpZC10eXBlLWEtdHJpYW5nbGUtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxIGRldGFjaGVkLCBtaXhf
Y29sb3IgMS4wIDAuMCAwLjAgMS4wKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hdHRyaWJ1
dGUtYXJyYXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3Vy
Y2VzL2ludmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJyYXkudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDEuMCAwLjAg
MC4wIDEuMCk7ICAgICAgICAKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJy
YXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2lu
dmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJyYXkudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4
LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDEuMCAwLjAgMC4wIDEu
MCk7ICAgICAgICAKLSAgICB9Ci0gICAgLmludmFsaWQtYXR0YWNoZWQtbWVzaC1hLXRyaWFuZ2xl
LWNvb3JkIHsKLSAgICAgICAgLyogVGhpcyBjdXN0b20gZmlsdGVyIHVzZXMgYW4gYXR0YWNoZWQg
bWVzaCB0byB2ZXJpZnkgdGhhdCBhX3RyaWFuZ2xlQ29vcmQgaXMgbm90IGEgYXZhaWxhYmxlIHdp
dGggYW4gYXR0YWNoZWQgbWVzaC4gKi8KLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1
cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLWEtdHJpYW5nbGUtY29vcmQtd2l0aC1hdHRhY2hlZC1t
ZXNoLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3Vy
Y2UtYXRvcCksIG1peF9jb2xvciAxLjAgMC4wIDAuMCAxLjApOyAgICAgICAgCi0gICAgfQotICAg
IDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBj
bGFzcz0iaW52YWxpZC1jdXN0b20tYXR0cmlidXRlIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJp
bnZhbGlkLXR5cGUtYS1tZXNoLWNvb3JkIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlk
LXR5cGUtYS1wb3NpdGlvbiI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLWEt
dGV4LWNvb3JkIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtYS10cmlhbmds
ZS1jb29yZCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1h
cnJheSI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC1hdHRhY2hlZC1tZXNoLWEtdHJp
YW5nbGUtY29vcmQiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4
cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3Vz
dG9tLWZpbHRlci1zaGFkZXItZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggOTJhYzA2ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1zaGFkZXItZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9u
dWxsCkBAIC0xLDI1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+
Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
LSAgICAgICAgICAgICAgICAvLyBXYWl0IGZvciB0aGUgaW1hZ2VzIHRvIGJlIGxvYWRlZC4KLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIG5vdGlmeURvbmUoKQot
ICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0
cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkIG9yIGZhaWxzLgotICAgICAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4K
LSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJub3RpZnlEb25lKCkiPgotICAgICAgICA8
aW1nIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgc3Jj
PSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAgPGltZyBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIHNyYz0iLi4vcmVzb3VyY2Vz
L3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJl
bmNlLnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1zaGFkZXIuaHRtbCBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXNo
YWRlci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZGYxZjY5Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmls
dGVyLXNoYWRlci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTMgKzAsMCBAQAotPCEtLSBUaGlz
IGZpbGUgc2hvdWxkIHRlc3QgdGhhdCBjdXN0b20tZmlsdGVycyBkbyBub3QgcmVuZGVyIHdoZW4g
c2hhZGVycyBhcmUgaW52YWxpZC4gLS0+Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxo
ZWFkPgotICAgICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IGN1c3RvbS1maWx0ZXJzIGRvIG5vdCBy
ZW5kZXIgd2hlbiBzaGFkZXJzIGFyZSBpbnZhbGlkPC90aXRsZT4KLSAgICAgICAgPHNjcmlwdD4K
LSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVy
RW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7Ci0gICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICAg
ICAgCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAg
ICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2Fk
aW5nIHN1Y2NlZWRlZCBvciBmYWlscy4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUo
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAg
ICAgICAgICAgIC5pbnZhbGlkX3ZlcnRleF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2ludmFsaWQt
c2hhZGVyLnZzJykpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmludmFsaWRfZnJhZ21l
bnRfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXNoYWRlci52cycpIG5v
cm1hbCBzb3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hh
ZGVyc19idXRfaW52YWxpZF92ZXJ0ZXhfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXNo
YWRlci52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmJvdGhfc2hhZGVy
c19idXRfaW52YWxpZF9mcmFnbWVudF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZz
ZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5ib3RoX3NoYWRlcnNf
aW52YWxpZAotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBtaXgodXJsKCcuLi9y
ZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBub3JtYWwtc291cmNlLWF0b3ApKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tIFRlc3Qgb2YgaW52YWxpZCBjdXN0b20gZmlsdGVy
IHNoYWRlcnMuIFlvdSBzaG91bGQgc2VlIDUgYmxvY2tzIG9mIGNvbG9yIGJhcnMsIGFsbCB0aGUg
c2FtZSAtLT4KLSAgICAgICAgPGltZyBjbGFzcz0iaW52YWxpZF92ZXJ0ZXhfc2hhZGVyIiBzcmM9
Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJpbnZh
bGlkX2ZyYWdtZW50X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LSAgICAgICAgPGltZyBjbGFzcz0iYm90aF9zaGFkZXJzX2J1dF9pbnZhbGlkX3ZlcnRleF9zaGFk
ZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xh
c3M9ImJvdGhfc2hhZGVyc19idXRfaW52YWxpZF9mcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVz
b3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVy
c19pbnZhbGlkIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
aW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZvcm0tdHlwZXMtZXhwZWN0ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZvcm0t
dHlwZXMtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTdiOTg1
Yi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQt
Y3VzdG9tLWZpbHRlci11bmlmb3JtLXR5cGVzLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwyNiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlcnMgZG8gbm90IGV4ZWN1dGUgaWYgdGhlIGF1dGhv
ciBkZWZpbmVzIGJ1aWx0LWluIHVuaWZvcm1zIHdpdGggdGhlIHdyb25nIHR5cGUuPC90aXRsZT4K
LSAgICA8IS0tIAotICAgICAgICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRl
c3QuCi0gICAgICAgIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNiB2ZXJ0aWNh
bGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuCi0gICAgLS0+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICB3aWR0
aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0g
ICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAg
IDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+
PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZv
cm0tdHlwZXMuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1j
dXN0b20tZmlsdGVyLXVuaWZvcm0tdHlwZXMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggNzkyOTQ0MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci11bmlmb3JtLXR5cGVzLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw1NiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAg
PHRpdGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlcnMgZG8gbm90IGV4ZWN1dGUgaWYgdGhlIGF1
dGhvciBkZWZpbmVzIGJ1aWx0LWluIHVuaWZvcm1zIHdpdGggdGhlIHdyb25nIHR5cGUuPC90aXRs
ZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNiB2ZXJ0aWNh
bGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xF
bmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0g
ICAgICAgIHsKLSAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0
aGUgc2hhZGVycyBkb3dubG9hZC4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
LSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAg
IH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgZGl2IHsKLSAgICAgICAgLyogSWYg
dGhlIHNoYWRlcnMgZXhlY3V0ZSwgdGhleSB3aWxsIHR1cm4gdGhlIGVsZW1lbnQncyBjb2xvciBm
cm9tIGdyZWVuIHRvIHJlZC4gKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1
NSwgMCk7Ci0gICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAg
ICAgIG1hcmdpbjogMTBweDsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS11LW1lc2gtYm94IHsK
LSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNl
cy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJveC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
IH0KLSAgICAuaW52YWxpZC10eXBlLXUtbWVzaC1zaXplIHsKLSAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNo
LXNpemUuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlw
ZS11LXByb2plY3Rpb24tbWF0cml4IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShu
b25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJp
eC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLXUt
dGV4dHVyZS1zaXplIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1
cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS10ZXh0dXJlLXNpemUuZnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS11LXRpbGUtc2l6ZSB7Ci0g
ICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMv
aW52YWxpZC10eXBlLXUtdGlsZS1zaXplLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAg
fQotICAgIC5pbnZhbGlkLXR5cGUtdW5pZm9ybS1hcnJheSB7Ci0gICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXVuaWZv
cm0tYXJyYXkuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZh
bGlkLXR5cGUtdS1tZXNoLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBl
LXUtbWVzaC1zaXplIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtdS1wcm9q
ZWN0aW9uLW1hdHJpeCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLXUtdGV4
dHVyZS1zaXplIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtdS10aWxlLXNp
emUiPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImludmFsaWQtdHlwZS11bmlmb3JtLWFycmF5Ij48
L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vbWlzc2luZy1jdXN0b20tZmlsdGVyLXNoYWRlci1leHBlY3RlZC5wbmcgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL21pc3NpbmctY3VzdG9tLWZpbHRlci1zaGFk
ZXItZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzU0MzYyZGVk
NzJiM2RkOTZlYjA5M2MxMGNkNjQxOGQwZTI4YTIyLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgps
aXRlcmFsIDEyNDMyCnpjbWVIT1lmekpDN0E2cmFTMyQ4dDFwJD9jUnpWYiVLbXg9bk03az1qYzFr
VGB1LXZMdlB5ISk5dTQ9Xl9NQXIqTgp6QWtvSWxjMzRIRmZINVMxczN+I0BzMkhQIUFjejRJa3t9
NUk2M0QqVG50WXZ8KzFjckFZayVaTkVefjZlXlMkVDEKeiZ3MC1DZWx0MDtYKFB0TGNEQWpCZ0By
QHB5MHgxdkVUKHVfU2lyeHVvKGU0SUBjWnxJazQ1Uj5VIzc9QGxOaTRuCnptJEFucFZhNClnTnZs
QHZLcD8oZWp6fm84U21xeSluQmJwKUBjJWp9Q0B7JT9oZkQ0QXFaU3RhXkNIKS17K3N8Qwp6NU8y
c1lQWDVyVXRJUXFnLTBlTFAxMyZLU2tHPkFhKjlPbFpGR25BP25Hcy0zdnA/Wl8hVE59bW15QCRN
bz1VWVQKeis8JF5QQkg4b3gkKTdtPiVrcG87WnAxemtobk12NVBkejsmT2NtPmpxcl5lRyFZalUj
PXFnNlNzVE1HfXJMfmg2CnpucmNEd3dKdl5rQ3g+QTcmTV41NChmZDQ9O1Bpe2JUaEZLR3NQTE9C
Y2NyZDFUfWcjXmU+NTUzKkdPQEA7a0d8Tgp6YDZxWH1GKXxFcGRwT3puSkdqJFRufXVGNnRsQH1Y
Pz55O1A5RDJHZHBtWXNndWQ2LTdWWn1IMGoqSGxmYDkjSFEKejZ8Yn5EPGVHeiR2I01HLVJAYztm
VSZTa2BrSUVEa2FSK1YmYSNPUVlNdEQpZ14/QX5MdFlZY0RgSGd6RVNUQUd9CnorSntDZzh9N1RI
PXgkcTRebT02eDQ7JDd5RCQ+N2tFPmtwVldqK2dyO0l2I2c4VUNqQWp1TWdfVmg3Q1g8dzA2KAp6
bHhlWkdZaz12KGNhckkqNEVOcHYzRUU4SUZ5M1ZoR1JnJn1IRmg9Z089YWpoWGZeWU1eSGg4WXF6
c1AwbHNrKXoKemZyUGlRVGo9RnVGVkJWKS1OU2FGbSFxI2Y5fT9icSl8WDtrZitSe1dmQmlTbHJj
aiZsbUppQSFxcXU+e096aihhCnokOHVFVy1WRDVDPzE4RjcjcEBrWUBwamthPlVHbW5yWVNpcWt5
VyE5JFhnK3QpUT51fkJSJjBEOWRnYnZEJl5vSAp6RGtVTVNJfj9vRF5jd0JeUE5SfllFfjZLWEdZ
SVhWSU9gX0hLYjJgXmQ1emc4WWJsbWAlZXlSN1JAQi1qbU5RUlcKentkPi1RJGJ4NCYyfjJCKyFE
RX5ecChgVD5AKnN1WGdob3cpWjElU3MmQGo+TGlva2lNei1aV0B7YVlDUlFtKlNPCnpWTzl5ZEE5
byZ4MWglPnhWRGdfXyRoMns5YnBWc3VkfjsmJkBOfV9rYH5+SSQqJmtJRXJ0Zj4+bUBJd2JJVzI1
Kwp6SGY1eChTR1QxPSM3O0VhVXZsQz1LZjUxdVM9cm9+bk1KeztneWN5MFZLKEJTayh0e0NKekxe
WF5lOUBFSXVZeVgKenNVZkpZM31RYWxqZzMmeyZXMylTQ1ctTS1ESiZ8YGRfdk8hKU8xSWh6PH5h
SmE5YC1mZlopUWlhPjA0KHd8VVJwCnpBU2VUVUh4KkxCfEVjZUMkdXFgd1JtXnQ0O1dPfEEjaWNm
TyFEVEkxXmBNVXo5VktZdHJqNTA/aykkb2ZaWTQ7ewp6RTR7cXFTVW9QO0AzP31hPlh2dWgzdmpf
YFZ+SytnYCNMVFN2UEhhNzMyTG04IU4tSm49b15NYyhBe202WT4jQkQKem1QakoxKjt5KGR0Uzcw
NHRYaVZpaDYhfSFhZiFSOVZQYTR6XmZjSmolKVAkNEhWVkQhSm1IOUc9VismPFokZlhwCnotK21Q
ZTBqRXVXMXVxMD9uXjRnbD5ZcWBfaH1ySjNhaDErdUlJKW1hSkljayRMfmN5dkUxYihBWkFxQUdi
SmNBRwp6Q3A4M0J3ZTF7Tm5ZSXRGY3F+OGd2Vmc8ZCEkaHFod09wMTA9KipfNWs0Z3NAYE98cipV
bzctN3ZmZjl+IT1LNGkKejd4bSotZy1FbEFNPUt7aXdsQkU4MWJ9R0tVbGNfQTttRSRePXA1RHM+
e20oQjdDKmB5dkcjIS1WQzJTOTVqIzNwCnorVHRpRWFyPmdXcFg3MiN4ODBTZXkhMytQa31MSHFW
YnBDeWR7NWV9T1dRP0krI3JPfD1gXzhSJmZxdXVPfV4rZwp6dVZwPHdeUnghSmowR0JyVkp8NVF7
RT83WE9RT0E/VDwoVUAwSlhMYWEzc3NeSFZwIXczc21ePmdLNVZoNzhZUGwKek9rbnlITkRsIz9Q
TyRFRWc7KzJ5bzZ6fHdlTiFQIWJxTFYzKH1RSVlPVE9RRXM9Syg9MFJsflh1ITZhIzt+XklKCnoq
dGlPd1JATnQ2KCU5UXJmRHhgMiNJbjs4KDxTUFRfUj9zS2M3cV82Z1dyPWIoYTN9dD4xRDA+KjFx
XzMkPD4mdQp6MngmQFpieD80b1pnP08qcV5oYmFAVjFnZExSfUd2KUUoLWVCMVRiWUAqfl9NRFN6
bko9IzMlTip4MFQ5Mjk7KnQKekZvYHNsMG1qPG9UWkBwdEF4ZTk1ZU43b3RFI3g7cCVCcU0zJkdw
UT0oJGtuR1pPKThNWCM3SFptV2UjUzBlUWJxCno5fFk7PzV8XjYyUG1reWY2VWBicykmVTlHJnww
UE1WPC0qOFZjMzkjVHxKd3QlcnZZQnVCO3dYe09jNH5sUGUtZwp6WDE4ZEVuYWJtU2BkNytmakZk
ZH5vUlolez5ZLTxYP2BvWmhuNXN8Mk9YJGctMlBmYCslaSNPMDMoYytAeCtTX2QKeilGPG4/PntC
bnEwNmN9YkBVVz95eDFLZDxiZWRQc3QzVGBGKXlpdXNjUzB4Py1RQH5+UzNFbDElMistYUpPSlM0
CnopeXRVPjMqUVNzViMqSlRBPyo3LTVHKDtjUzBFT3xSRzhJRVNFdHoza1hnUFM0SiEtXmZAckdS
VyE0TTVffCFnSQp6MjtoPGMxZStRYktgaTtKeUlTY1Y4K3d4XnVIMHQ5dmArVnU3KCtaPmFzX01Y
P0JndkprQjs/cT8zUmckSDNWZlQKek9WPkkySUVJQ3pVQDNkajY/IVJvV3c3PWg2OGxrIT9vRkx6
Z3BeRjBzQXl2fF4jY1FLPzlBdmdkVyZ6UFczSlJBCno8VyZ+JmFaZW8rTVIpWX03ezROSTZZPz80
ISNjX3ZmVlN+Z3QhelYtO059UktFNG8pfCRwe0FrVn12KHVne317MQp6Sz0mZzg+O2x2RD9iLT9v
bmNTOWs3U2ZhUkw1KG9vTGpeVl9Cb2J6VUI1blB0XyshWUc+cD1ifE5BIXUxOCEqRHIKenUmaTBX
JCZmMSV8RGVMdHloQUM0a1EqZH1EZUBtbnlBRWAwI3puV14jSXZAeShwJnlNR1QxeFR4O1Y1dlNw
OVIyCno8MkUpanhOPSkzdnhKa0BCKXRaLVJCJVZudnFeMkd5WE0pbkV5WjVSM0RTcTwzQDQ+PjxR
dFNsM14haHhBJCtIYQp6ZnhPbSZOYEFWM2AycilkWGFGKTc9WX1JcV58MXlTeSlQRzlKMiZkdyM5
aEhQcDFNd2NzI1F0IT8/R3JmPHNJVjIKemEkS1hUcXBuPjxrfWFPcGshTktmVitWblE1X3YxQVRL
UG9ZMFNMWnBTazZsJU5hb1V8cyVDZWk9emFQakVEUjwoCno8SzFMeGltbzZxPU5TaTFUd1ExRWxl
bFBybyFIMWI/azBqfE9hVjl2dktBZFJuZVlHO2VgRnx4YGMkaWNOV09nQwp6czJ2TF56dHhXMiNR
Jn14dkNNO15KP1RlKDE/WSkrVHxRb21BYDRGJDBnSStsO2hVWClffFFaZTdYY2YqRlBHWDIKeiUh
OW5JdTE0JTsjRm9ycTxtXm1XVDxSdyt0ekxkeCs1Vl47UzV7MlVOU0NrIXEhSDI8Vz42U1grcFgj
LXZ9NVZ+CnpzdTlTeyFLUW17Qm99UDtpcn56aCNGUj9xPnApZ2poRWJVUjwjR09xVXZhbG5LQmM5
Z3BXV08wQkI5KGQ0dHJNZwp6TDlxbGAjbyFMSTwzbHJkNUcxMXErSzhwYyU1X2liYWdDUW1Jek58
Vz5CaT5KYiEwYTMqXnt+Tm4ySShOeiZrU1gKekw5cSM/d2dBZmVvdnhiYiU/clR4eX05SE0wOEMj
U2omTlY8VGFIVUVzTDVDNF5uVFpOcXFuelItY2VlUWxMR1BQCnp1KChzcnYjVGQ5d1U9bGdzKDlj
Q1BfUilEPWpZeE9gWGVjNUJgV1prJl5WY0JoVm9pZipjTzllT0xvcT81JiRteQp6MWYrYl8pentT
R1VUZV4+aE15WndvMnYzQnhfbHdhc21ZSCYpbVg1VWV5eHpmTiRVbE5vcWwje2JYbVRsaHszQFIK
ekpuUTRoZ2tUVkVQOyZQNS0wJFBYUkhmdiNoXnc9Mz41QWNqPWx0eEgpWVF+OyQrOGR6T1Bna2Ri
a3xFVEtWSDdmCno8M2piTjBkT19TKXw5MDZ8TEc5Pko1SkxHbDU1PylyU0FDZGk1ZCFTezd6cTJs
X1g1PDgrS2MmM3VCVmR4PWc+YQp6MiZHT09tWTQ2VnRWWVRiUXBiMVRCfl4hcHhaX2VKJWRUZFdH
WSZNdSM0d1lFbFpeQzsrdHtBdDxXJitrTn0qV1cKekJsX1MxSnFjJGxnY2x9bTgyZGEoX3gpKWp0
NjkrSSVtUldGO20kRyV0OGMpOHxKalRSTjdKUEhiQTFyJV95KT9UCnpDQGBZT0FuJDUhVns1e2F3
NF5iT0dFYnA8U09QWW1UZ2huRjlARnhJWiExZnB4SWkqI0g5fG1pNmgkLShocGlxdQp6KTVjIXZz
Z0Z4bjImR3VKNT96QyYpMXhGT1F2K256UDVvWCVpfUFFVFRMQWloPVZ5PW5PZCFCLTE1O3t7ZGZm
Q3gKej1YQG1rejR9WlpSQ2U9fFM5bG1WMHx4JlhKaFJ3NTxLanh3Qj1RRTYkWXhSRE4jbk1ua0FQ
dWlifWBwd1FrPEg+CnpAVX0wXlVAKEtoY3Zkcm0hMytqNzd8ZmMlSlI4bGsoWDUpeU0rSXhNQVRT
Rjh2bWhgRjA8JDE2M2oodHNGYmV7Kwp2QWI5KEQqLVZGS0l5QlJ2bkdWZiNfeV5PVy1wJldSKTk9
Mkk8e3RRcWZra0JhIzxrWnpqb2Jma3AjUDchCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vbWlzc2luZy1jdXN0b20tZmlsdGVy
LXNoYWRlci1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxZjhh
MzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9taXNzaW5n
LWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xICsw
LDAgQEAKLSAgICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vbWlzc2luZy1jdXN0b20tZmlsdGVyLXNoYWRlci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFhMmE3MDYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi08IS0tIFRoaXMgZmlsZSBzaG91bGQgdGVzdCB0
aGF0IGN1c3RvbS1maWx0ZXJzIGRvIG5vdCByZW5kZXIgd2hlbiBzaGFkZXJzIGFyZSBtaXNzaW5n
LiAtLT4KLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRs
ZT5UZXN0aW5nIHRoYXQgY3VzdG9tLWZpbHRlcnMgZG8gbm90IHJlbmRlciB3aGVuIHNoYWRlcnMg
YXJlIG1pc3Npbmc8L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3Zl
cnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1
bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5l
ZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkIG9yIGZh
aWxzLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQot
ICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgLm1pc3Npbmdf
dmVydGV4X3NoYWRlcgotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvbWlzc2luZy12ZXJ0ZXgtb2Zmc2V0LnZzJykp
OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLm1pc3NpbmdfZnJhZ21lbnRfc2hhZGVyCi0g
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25l
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLWNvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBz
b3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hhZGVyc19i
dXRfbWlzc2luZ192ZXJ0ZXhfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLXZlcnRleC1v
ZmZzZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5ib3RoX3NoYWRl
cnNfYnV0X21pc3NpbmdfZnJhZ21lbnRfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zm
c2V0LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21pc3NpbmctY29sb3Itb2Zmc2V0LmZzJykg
bm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAuYm90aF9z
aGFkZXJzX21pc3NpbmcKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL21pc3NpbmctdmVydGV4LW9mZnNldC52cycp
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLWNvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBz
b3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVh
ZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDwhLS0gVGVzdCBvZiBt
aXNzaW5nIGN1c3RvbSBmaWx0ZXIgc2hhZGVycy4gWW91IHNob3VsZCBzZWUgNSBibG9ja3Mgb2Yg
Y29sb3IgYmFycywgYWxsIHRoZSBzYW1lIC0tPgotICAgICAgICA8aW1nIGNsYXNzPSJtaXNzaW5n
X3ZlcnRleF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9Im1pc3NpbmdfZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNl
cy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRlcnNfYnV0
X21pc3NpbmdfdmVydGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIg
Lz4KLSAgICAgICAgPGltZyBjbGFzcz0iYm90aF9zaGFkZXJzX2J1dF9taXNzaW5nX2ZyYWdtZW50
X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAgPGlt
ZyBjbGFzcz0iYm90aF9zaGFkZXJzX21pc3NpbmciIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5j
ZS5wbmciIC8+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9hLXRleC1jb29yZC1kZWZpbmVkLnZzIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9hLXRleC1jb29yZC1kZWZpbmVkLnZzCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NDAyZGRmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtZGVmaW5lZC52cworKysgL2Rldi9u
dWxsCkBAIC0xLDEyICswLDAgQEAKLS8vIFRoaXMgc2hhZGVyIGRlZmluZXMgYV90ZXhDb29yZC4g
SXRzIGFzc29jaWF0ZWQgY3VzdG9tIGZpbHRlciBzaG91bGQgZXhlY3V0ZSBwcm9wZXJseS4KLQot
cHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWMyIGFfdGV4Q29vcmQ7Ci1h
dHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJp
eDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJp
eCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL2EtdGV4LWNvb3JkLXVuZGVmaW5lZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtdW5kZWZpbmVkLnZzCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAyYzJiNzMxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtdW5kZWZpbmVkLnZzCisrKyAvZGV2L251bGwKQEAg
LTEsMTEgKzAsMCBAQAotLy8gVGhpcyBzaGFkZXIgZG9lcyBub3QgZGVmaW5lIGFfdGV4Q29vcmQu
IEl0cyBhc3NvY2lhdGVkIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGV4ZWN1dGUgcHJvcGVybHkuCi0K
LXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwot
dW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBn
bF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2EtdHJpYW5nbGUtY29vcmQt
ZGVmaW5lZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10cmlhbmds
ZS1jb29yZC1kZWZpbmVkLnZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYjZkZTI0
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10cmlh
bmdsZS1jb29yZC1kZWZpbmVkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8g
VGhpcyBzaGFkZXIgZGVmaW5lcyBhX3RyaWFuZ2xlQ29vcmQuIElmIHRoZSBtZXNoIHR5cGUgaXMg
ZGV0YWNoZWQsIGl0cyBhc3NvY2lhdGVkIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGV4ZWN1dGUgcHJv
cGVybHkuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjMyBhX3Ry
aWFuZ2xlQ29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVf
cHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2FycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgudnMg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2FycmF5LXVuaWZvcm0taW5kaXJl
Y3QtaW5kZXgudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM5NzhkODlmLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYXJyYXktdW5pZm9y
bS1pbmRpcmVjdC1pbmRleC52cworKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLS8vIFRo
aXMgc2hhZGVyIGluZGlyZWN0bHkgaW5kZXhlcyBhIHVuaWZvcm0gYXJyYXkgdXNpbmcgb3RoZXIg
dW5pZm9ybXMuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotcHJlY2lzaW9uIG1lZGl1bXAg
aW50OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVj
dGlvbk1hdHJpeDsKLXZhcnlpbmcgdmVjNCB2X21peENvbG9yOwotCi11bmlmb3JtIGZsb2F0IHZh
bHVlc1syXTsKLXVuaWZvcm0gZmxvYXQgcmVkSW5kZXg7Ci11bmlmb3JtIGZsb2F0IGdyZWVuSW5k
ZXg7Ci11bmlmb3JtIGZsb2F0IGJsdWVJbmRleDsKLXVuaWZvcm0gZmxvYXQgYWxwaGFJbmRleDsK
LQotdm9pZCBtYWluKCkKLXsKLSAgICB2X21peENvbG9yID0gdmVjNCh2YWx1ZXNbaW50KHJlZElu
ZGV4KV0sIHZhbHVlc1tpbnQoZ3JlZW5JbmRleCldLCB2YWx1ZXNbaW50KGJsdWVJbmRleCldLCB2
YWx1ZXNbaW50KGFscGhhSW5kZXgpXSk7Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25N
YXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9jaGVja2VyYm9hcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL2NoZWNrZXJib2FyZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
OGNiMjRmZC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2NoZWNrZXJib2FyZC52cworKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLS8vIFRoaXMg
c2hhZGVyIGNvbG9ycyBhbHRlcm5hdGluZyB0aWxlcyBpbiB0aGUgbWVzaCBibGFjayBvciBncmVl
biB0byBjcmVhdGUgYSBjaGVja2JvYXJkIHBhdHRlcm4uCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZs
b2F0OwotcHJlY2lzaW9uIG1lZGl1bXAgaW50OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9u
OwotYXR0cmlidXRlIHZlYzMgYV90cmlhbmdsZUNvb3JkOwotCi11bmlmb3JtIG1hdDQgdV9wcm9q
ZWN0aW9uTWF0cml4OwotCi12YXJ5aW5nIHZlYzQgdl9taXhDb2xvcjsKLQotdm9pZCBtYWluKCkK
LXsKLSAgICBmbG9hdCBncmVlbiA9IG1vZChhX3RyaWFuZ2xlQ29vcmQueCArIGFfdHJpYW5nbGVD
b29yZC55LCAyLjApOwotICAgIHZfbWl4Q29sb3IgPSB2ZWM0KDAuMCwgZ3JlZW4sIDAuMCwgMS4w
KTsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLWZp
bGwuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLWZpbGwuZnMK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdlNDJiZWQuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jb2xvci1maWxsLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsMTAgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci11bmlmb3JtIHZl
YzQgY29sb3I7Ci12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLXZvaWQgbWFpbigpCi17Ci0gICAg
Ly8gTWl4IHRoZSB0ZXh0dXJlIHdpdGggdGhlIGNvbG9yIHNwZWNpZmllZCBhcyBhbiB1bmlmb3Jt
LgotICAgIC8vIEFsc28gYXBwbHkgYSBncmFkaWVudCB0byBjaGVjayBmb3IgdGhlIHJpZ2h0IGRp
cmVjdGlvbi4KLSAgICAvLyBUaGUgY29sb3Igc2hvdWxkIGJlIGxpZ2h0ZXN0IGF0IHRoZSB0b3Ag
YW5kIGRhcmtlc3QgYXQgdGhlIGJvdHRvbS4KLSAgICBjc3NfTWl4Q29sb3IgPSB2ZWM0KGNvbG9y
Lnh5eiwgY29sb3IuYSAqIHZfdGV4Q29vcmQueSk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBiMjBhY2M3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzCisrKyAvZGV2L251bGwKQEAgLTEsNiArMCwwIEBA
Ci1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXZvaWQgbWFpbigpCi17Ci0gICAgLy8gTWl4IHNv
bWUgd2hpdGUgd2l0aCB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLSAgICBjc3NfTWl4Q29sb3Ig
PSB2ZWM0KDEuMCwgMS4wLCAxLjAsIDAuNSk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvY29tcG9zaXRlLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBiYWJiNjZjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvY29tcG9zaXRlLmZzCisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi1wcmVjaXNpb24g
bWVkaXVtcCBmbG9hdDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigp
Ci17Ci0gICAgLy8gUHJvZHVjZSBhIGJsdWUgc3F1YXJlIGluIHRoZSBsb3dlciByaWdodC1oYW5k
IHBhcnQgb2YgdGhlIGltYWdlLgotICAgIGNzc19NaXhDb2xvciA9IHZlYzQoMC4wLCAwLjAsIDEu
MCwgZmxvYXQodl90ZXhDb29yZC54ID4gMC4zMyAmJiB2X3RleENvb3JkLnkgPiAwLjMzKSk7Ci19
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2Nzcy1rZXl3
b3JkLWFzLXBhcmFtZXRlci1uYW1lLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggODUwMTA4MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL2Nzcy1rZXl3b3JkLWFzLXBhcmFtZXRlci1uYW1lLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsOCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdW5pZm9ybSB2
ZWM0IGJhY2tncm91bmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfRnJhZ0NvbG9yID0gYmFj
a2dyb3VuZDsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmZzIGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1j
b2xvci1tYXRyaXgtbmVnYXRpdmUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFl
MGU3ZTMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9j
dXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUuZnMKKysrIC9kZXYv
bnVsbApAQCAtMSwxMCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdm9pZCBt
YWluKHZvaWQpCi17Ci0gICAgY3NzX0NvbG9yTWF0cml4ID0gbWF0NCgtMTAuMCwgMC4wLCAwLjAs
IDAuMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMCwgLTEwLjAsIDAuMCwgMC4wLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wLCAwLjAsIC0xMC4wLCAwLjAsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAwLjAsIDAuMCwgMC4wLCAxLjApOwotICAgIGNzc19NaXhDb2xv
ciA9IHZlYzQoLTAuNSwgLTAuNSwgLTAuNSwgMS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3It
bWF0cml4LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmls
dGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwZWVhMDcuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguZnMKKysrIC9kZXYvbnVs
bApAQCAtMSwxMCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdm9pZCBtYWlu
KHZvaWQpCi17Ci0gICAgY3NzX0NvbG9yTWF0cml4ID0gbWF0NCgxMC4wLCAwLjAsIDAuMCwgMC4w
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wLCAxMC4wLCAwLjAsIDAuMCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxMC4wLCAwLjAsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAwLjAsIDAuMCwgMC4wLCAxMC4wKTsKLSAgICBjc3NfTWl4Q29sb3IgPSB2
ZWM0KDAuNSwgMC41LCAwLjUsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLXBhcnNlci5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggYjhlMjQ4MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsMjAyICswLDAgQEAKLS8vIFRoaXMgaXMgYSBoZWxwZXIgc2NyaXB0IGRlc2lnbmVk
IHRvIHBhcnNlIHRoZSBjb21wdXRlZCBzeW50YXggb2YgdGhlIGN1c3RvbSBmaWx0ZXIuIAotLy8g
Tm90ZSB0aGF0IGl0IGlzIGdlbmVyaWMgZW5vdWdoIHNvIHRoYXQgaXQgY2FuIGJlIHVzZWQgZm9y
IG90aGVyIHByb3BlcnRpZXMgaW4gdGhlIGZ1dHVyZS4KLQotZnVuY3Rpb24gVG9rZW4odHlwZSkg
Ci17Ci0gICAgdGhpcy50eXBlID0gdHlwZTsKLX0KLQotLy8gQ2hlY2tzIGlmIHRoZSB0eXBlIG9m
IHRoZSB0b2tlbiBpcyBpbiB0aGUgbGlzdCBvZiBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSBmdW5j
dGlvbi4KLS8vIEl0IGFsc28gYWNjZXB0cyBhcnJheXMgYW5kIG90aGVyIHR5cGUgY2hlY2tpbmcg
ZnVuY3Rpb25zLgotVG9rZW4ucHJvdG90eXBlLmlzQSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7ICsraSkgewotICAgICAgICB2YXIgdHlw
ZSA9IGFyZ3VtZW50c1tpXTsKLSAgICAgICAgaWYgKCh0eXBlb2YgdHlwZSA9PSAib2JqZWN0IiAm
JiB0eXBlLmxlbmd0aCAmJiB0aGlzLmlzQS5hcHBseSh0aGlzLCB0eXBlKSkKLSAgICAgICAgICAg
IHx8ICh0eXBlb2YgdHlwZSA9PSAiZnVuY3Rpb24iICYmIHR5cGUodGhpcykpCi0gICAgICAgICAg
ICB8fCB0eXBlID09IHRoaXMudHlwZSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgIH0K
LSAgICByZXR1cm4gZmFsc2U7Ci19Ci0KLS8vIENyZWF0ZXMgYSBuZXcgdG9rZW4gb2JqZWN0IGFu
ZCBjb3BpZXMgYWxsIHRoZSBwcm9wZXJ0aWVzIGluICJ2YWx1ZSIgdG8gdGhlIG5ldyB0b2tlbi4K
LWZ1bmN0aW9uIGNyZWF0ZVRva2VuKHR5cGUsIHZhbHVlKSB7Ci0gICAgdmFyIHRva2VuID0gbmV3
IFRva2VuKHR5cGUpOwotICAgIGlmICh2YWx1ZSkgewotICAgICAgICBmb3IgKHZhciBpIGluIHZh
bHVlKQotICAgICAgICAgICAgaWYgKHZhbHVlLmhhc093blByb3BlcnR5KGkpKQotICAgICAgICAg
ICAgICAgIHRva2VuW2ldID0gdmFsdWVbaV07Ci0gICAgfQotICAgIHJldHVybiB0b2tlbjsKLX0K
LQotLy8gVG9rZW5pemVzIHRoZSBzdHJpbmcgaW50byBUb2tlbnMgb2YgdHlwZXMgW3VybHMsIGZs
b2F0cywgaW50ZWdlcnMsIGtleXdvcmRzLCAiLCIsICIoIiwgIikiIGFuZCAiLiJdLgotZnVuY3Rp
b24gdG9rZW5pemVTdHJpbmcocykKLXsKLSAgICB2YXIgdG9rZW5pemVyID0gbmV3IFJlZ0V4cChb
Ci0gICAgICAgICJ1cmxcXChcXHMqKC4qPylcXHMqXFwpIiwgLy8gdXJsKCkgLSAxCi0gICAgICAg
ICIoKD86W1xcKy1dPylcXGQqXFwuXFxkKykiLCAvLyBmbG9hdHMgLSAyCi0gICAgICAgICIoKD86
W1xcKy1dPylcXGQrKSIsIC8vIGludGVnZXJzIC0gMwotICAgICAgICAiKFtcXHctXVtcXHdcXGQt
XSopIiwgLy8ga2V5d29yZHMgLSA0Ci0gICAgICAgICIoWyxcXC5cXChcXCldKSIgLy8gcHVuY3R1
YXRpb24gLSA1Ci0gICAgXS5qb2luKCJ8IiksICJnIik7Ci0KLSAgICB2YXIgbWF0Y2gsIHRva2Vu
cyA9IFtdOwotICAgIHdoaWxlIChtYXRjaCA9IHRva2VuaXplci5leGVjKHMpKSB7Ci0gICAgICAg
IGlmIChtYXRjaFsxXSAhPT0gdW5kZWZpbmVkKQotICAgICAgICAgICAgdG9rZW5zLnB1c2goY3Jl
YXRlVG9rZW4oInVybCIsIHt2YWx1ZTogbWF0Y2hbMV19KSk7Ci0gICAgICAgIGVsc2UgaWYgKG1h
dGNoWzJdICE9PSB1bmRlZmluZWQpCi0gICAgICAgICAgICB0b2tlbnMucHVzaChjcmVhdGVUb2tl
bigiZmxvYXQiLCB7dmFsdWU6IHBhcnNlRmxvYXQobWF0Y2hbMl0pfSkpOwotICAgICAgICBlbHNl
IGlmIChtYXRjaFszXSAhPT0gdW5kZWZpbmVkKQotICAgICAgICAgICAgdG9rZW5zLnB1c2goY3Jl
YXRlVG9rZW4oImludGVnZXIiLCB7dmFsdWU6IHBhcnNlSW50KG1hdGNoWzNdKX0pKTsKLSAgICAg
ICAgZWxzZSBpZiAobWF0Y2hbNF0gIT09IHVuZGVmaW5lZCkKLSAgICAgICAgICAgIHRva2Vucy5w
dXNoKGNyZWF0ZVRva2VuKCJrZXl3b3JkIiwge3ZhbHVlOiBtYXRjaFs0XX0pKTsKLSAgICAgICAg
ZWxzZSBpZiAobWF0Y2hbNV0gIT09IHVuZGVmaW5lZCkKLSAgICAgICAgICAgIHRva2Vucy5wdXNo
KGNyZWF0ZVRva2VuKG1hdGNoWzVdKSk7Ci0gICAgfQotICAgIHJldHVybiB0b2tlbnM7Ci19Ci0K
LS8vIENoZWNrcyBpZiB0aGUgdG9rZW4gaXMgYSBudW1iZXIuIENhbiBiZSB1c2VkIGluIGNvbWJp
bmF0aW9uIHdpdGggdGhlICJUb2tlbi5pc0EiIG1ldGhvZC4KLWZ1bmN0aW9uIG51bWJlcih0b2tl
bikKLXsKLSAgICByZXR1cm4gdG9rZW4udHlwZSA9PSAiZmxvYXQiIHx8IHRva2VuLnR5cGUgPT0g
ImludGVnZXIiOwotfQotCi0vLyBIZWxwZXIgY2xhc3MgdG8gaXRlcmF0ZSBvbiB0aGUgdG9rZW4g
c3RyZWFtLiBJdCB3aWxsIGFkZCBhbiAiZW5kIgotLy8gdG9rZW4gYXQgdGhlIGVuZCB0byBtYWtl
IGl0IGVhc2llciB0byB1c2UgdGhlICJhaGVhZCIgZnVuY3Rpb24KLS8vIHdpdGhvdXQgY2hlY2tp
bmcgaWYgaXQncyB0aGUgbGFzdCB0b2tlbiBpbiB0aGUgc3RyZWFtLgotZnVuY3Rpb24gVG9rZW5T
dHJlYW0odG9rZW5zKSB7Ci0gICAgdGhpcy50b2tlbnMgPSB0b2tlbnM7Ci0gICAgdGhpcy50b2tl
bnMucHVzaChuZXcgVG9rZW4oImVuZCIpKTsKLSAgICB0aGlzLnRva2VuSW5kZXggPSAwOwotfQot
Ci1Ub2tlblN0cmVhbS5wcm90b3R5cGUuY3VycmVudCA9IGZ1bmN0aW9uKCkgCi17IAotICAgIHJl
dHVybiB0aGlzLnRva2Vuc1t0aGlzLnRva2VuSW5kZXhdOyAKLX0KLQotVG9rZW5TdHJlYW0ucHJv
dG90eXBlLmFoZWFkID0gZnVuY3Rpb24oKSAKLXsKLSAgICByZXR1cm4gdGhpcy50b2tlbnNbdGhp
cy50b2tlbkluZGV4ICsgMV07IAotfQotCi0vLyBTa2lwcyB0aGUgY3VycmVudCB0b2tlbiBvbmx5
IGlmIGl0IG1hdGNoZXMgdGhlICJ0eXBlTWF0Y2hlciIuIE90aGVyd2lzZSBpdCB0aHJvd3MgYW4g
ZXJyb3IuCi1Ub2tlblN0cmVhbS5wcm90b3R5cGUuc2tpcCA9IGZ1bmN0aW9uKHR5cGVNYXRjaGVy
KQotewotICAgIGlmICghdHlwZU1hdGNoZXIgfHwgdGhpcy5jdXJyZW50KCkuaXNBKHR5cGVNYXRj
aGVyKSkgewotICAgICAgICB2YXIgdG9rZW4gPSB0aGlzLmN1cnJlbnQoKTsKLSAgICAgICAgKyt0
aGlzLnRva2VuSW5kZXg7Ci0gICAgICAgIHJldHVybiB0b2tlbjsKLSAgICB9Ci0gICAgdGhyb3cg
bmV3IEVycm9yKCJDYW5ub3QgdXNlICIgKyBKU09OLnN0cmluZ2lmeSh0eXBlTWF0Y2hlcikgKyAi
IHRvIHNraXAgb3ZlciAiICsgSlNPTi5zdHJpbmdpZnkodGhpcy5haGVhZCgpKSk7Ci19Ci0KLS8v
IFNraXBzIHRoZSBjdXJyZW50IHRva2VuLCBvbmx5IGlmIGl0IG1hdGNoZXMgdGhlICJ0eXBlTWF0
Y2hlciIuIE1ha2VzIGl0IGVhc3kgdG8gc2tpcCBvdmVyIGNvbW1hIHRva2Vucy4KLVRva2VuU3Ry
ZWFtLnByb3RvdHlwZS5za2lwSWZOZWVkZWQgPSBmdW5jdGlvbih0eXBlTWF0Y2hlcikKLXsKLSAg
ICBpZiAodGhpcy5haGVhZCgpICYmIHRoaXMuYWhlYWQoKS5pc0EodHlwZU1hdGNoZXIpKQotICAg
ICAgICArK3RoaXMudG9rZW5JbmRleDsKLX0KLQotLy8gQ3JlYXRlcyBhIG5ldyAiZnVuY3Rpb24i
IG5vZGUuIEl0IGV4cGVjdHMgdGhhdCB0aGUgY3VycmVudCB0b2tlbiBpcyB0aGUgZnVuY3Rpb24g
bmFtZS4KLWZ1bmN0aW9uIHBhcnNlRnVuY3Rpb24obSkKLXsKLSAgICB2YXIgZnVuY3Rpb25PYmpl
Y3QgPSB7Ci0gICAgICAgIHR5cGU6ICJmdW5jdGlvbiIsCi0gICAgICAgIG5hbWU6IG0uc2tpcCgp
LnZhbHVlCi0gICAgfTsKLSAgICBtLnNraXAoIigiKTsKLSAgICBmdW5jdGlvbk9iamVjdC5hcmd1
bWVudHMgPSBwYXJzZUxpc3QobSwgWyIpIiwgImVuZCJdKTsKLSAgICBtLnNraXAoIikiKTsKLSAg
ICByZXR1cm4gZnVuY3Rpb25PYmplY3Q7Ci19Ci0KLS8vIENyZWF0ZXMgYSBuZXcgInBhcmFtZXRl
ciIgbm9kZS4gSXQgZXhwZWN0cyB0aGF0IHRoZSBjdXJyZW50IHRva2VuIGlzIHRoZSBwYXJhbWV0
ZXIgbmFtZS4KLS8vIEl0IGNvbnN1bWVzIGV2ZXJ5dGhpbmcgYmVmb3JlIHRoZSBmb2xsb3dpbmcg
Y29tbWEuCi1mdW5jdGlvbiBwYXJzZVBhcmFtZXRlcihtKQotewotICAgIHZhciBmdW5jdGlvbk9i
amVjdCA9IHsKLSAgICAgICAgdHlwZTogInBhcmFtZXRlciIsCi0gICAgICAgIG5hbWU6IG0uc2tp
cCgpLnZhbHVlCi0gICAgfTsKLSAgICBmdW5jdGlvbk9iamVjdC52YWx1ZSA9IHBhcnNlTGlzdCht
LCBbIiwiLCAiZW5kIl0pOwotICAgIG0uc2tpcElmTmVlZGVkKCIsIik7Ci0gICAgcmV0dXJuIGZ1
bmN0aW9uT2JqZWN0OwotfQotCi0vLyBDb25zdW1lcyBhIGxpc3Qgb2YgdG9rZW5zIGJlZm9yZSBy
ZWFjaGluZyB0aGUgImVuZFRva2VuIiBhbmQgcmV0dXJucyBhbiBhcnJheSB3aXRoIGFsbCB0aGUg
cGFyc2VkIGl0ZW1zLgotLy8gTWFrZXMgdGhlIGZvbGxvd2luZyBhc3N1bXB0aW9uczoKLS8vIC0g
aWYgYSBrZXl3b3JkIGlzIGZvbGxvd2VkIGJ5ICIoIiB0aGVuIGl0IGlzIGEgc3RhcnQgb2YgZnVu
Y3Rpb24KLS8vIC0gaWYgYSBrZXl3b3JkIGlzIG5vdCBmb2xsb3dlZCBieSAiLCIgaXQgaXMgYSBw
YXJhbWV0ZXIKLS8vIEtleXdvcmRzIHRoYXQgZG8gbm90IG1hdGNoIGVpdGhlciBvZiB0aGUgcHJl
dmlvdXMgcnVsZXMgYW5kIHRva2VucyBsaWtlIG51bWJlciBhbmQgdXJsIGFyZSBqdXN0IGNsb25l
ZC4KLWZ1bmN0aW9uIHBhcnNlTGlzdChtLCBlbmRUb2tlbikKLXsKLSAgICB2YXIgcmVzdWx0ID0g
W10sIHRva2VuOwotICAgIHdoaWxlICgodG9rZW4gPSBtLmN1cnJlbnQoKSkgJiYgIXRva2VuLmlz
QShlbmRUb2tlbikpIHsKLSAgICAgICAgaWYgKHRva2VuLmlzQSgia2V5d29yZCIpKSB7Ci0gICAg
ICAgICAgICBpZiAobS5haGVhZCgpLmlzQSgiKCIpKQotICAgICAgICAgICAgICAgIHJlc3VsdC5w
dXNoKHBhcnNlRnVuY3Rpb24obSkpOwotICAgICAgICAgICAgZWxzZSBpZiAobS5haGVhZCgpLmlz
QSgiLCIsIGVuZFRva2VuKSkgewotICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsKLSAgICAg
ICAgICAgICAgICAgICAgdHlwZTogImtleXdvcmQiLCAKLSAgICAgICAgICAgICAgICAgICAgdmFs
dWU6IG0uc2tpcCgpLnZhbHVlCi0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB9IGVs
c2UKLSAgICAgICAgICAgICAgICByZXN1bHQucHVzaChwYXJzZVBhcmFtZXRlcihtKSk7Ci0gICAg
ICAgIH0gZWxzZSBpZiAodG9rZW4uaXNBKG51bWJlcikpIHsKLSAgICAgICAgICAgIHJlc3VsdC5w
dXNoKHsKLSAgICAgICAgICAgICAgICB0eXBlOiAibnVtYmVyIiwKLSAgICAgICAgICAgICAgICB2
YWx1ZTogbS5za2lwKCkudmFsdWUKLSAgICAgICAgICAgIH0pOwotICAgICAgICB9IGVsc2UgaWYg
KHRva2VuLmlzQSgidXJsIikpIHsKLSAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsKLSAgICAgICAg
ICAgICAgICB0eXBlOiAidXJsIiwKLSAgICAgICAgICAgICAgICB2YWx1ZTogbS5za2lwKCkudmFs
dWUKLSAgICAgICAgICAgIH0pOwotICAgICAgICB9IGVsc2UgaWYgKHRva2VuLmlzQSgiLCIpKQot
ICAgICAgICAgICAgbS5za2lwKCk7Ci0gICAgICAgIGVsc2UgCi0gICAgICAgICAgICB0aHJvdyAi
VW5leHBlY3RlZCB0b2tlbiAiICsgSlNPTi5zdHJpbmdpZnkodG9rZW4pICsgIiBpbiBhIGxpc3Qu
IjsKLSAgICB9Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQotZnVuY3Rpb24gdG9rZW5zVG9WYWx1
ZXModG9rZW5zKQotewotICAgIHZhciBtID0gbmV3IFRva2VuU3RyZWFtKHRva2Vucyk7Ci0gICAg
cmV0dXJuIHBhcnNlTGlzdChtLCAiZW5kIik7Ci19Ci0KLS8vIEV4dHJhY3RzIGEgcGFyYW1ldGVy
cyBhcnJheSBmcm9tIHRoZSBwYXJhbWV0ZXJzIHN0cmluZyBvZiB0aGUgY3VzdG9tIGZpbHRlciBm
dW5jdGlvbi4KLWZ1bmN0aW9uIHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhzKQotewotICAg
IHJldHVybiB0b2tlbnNUb1ZhbHVlcyh0b2tlbml6ZVN0cmluZyhzKSk7Ci19Ci0KLS8vIE5lZWQg
dG8gcmVtb3ZlIHRoZSBiYXNlIFVSTCB0byBhdm9pZCBoYXZpbmcgbG9jYWwgcGF0aHMgaW4gdGhl
IGV4cGVjdGVkIHJlc3VsdHMuCi1mdW5jdGlvbiByZW1vdmVCYXNlVVJMKHNyYykgewotICAgIHZh
ciB1cmxSZWdleHAgPSAvdXJsXCgoW15cKV0qKVwpL2c7Ci0gICAgcmV0dXJuIHNyYy5yZXBsYWNl
KHVybFJlZ2V4cCwgZnVuY3Rpb24obWF0Y2gsIHVybCkgewotICAgICAgICByZXR1cm4gInVybCgi
ICsgdXJsLnN1YnN0cih1cmwubGFzdEluZGV4T2YoIi8iKSArIDEpICsgIikiOwotICAgIH0pOwot
fQotCi0vLyBQYXJzZXMgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIGN1c3RvbSBmaWx0ZXIgZnVuY3Rp
b24gYW5kIHJldHVybnMgaXQgdXNpbmcgdGhlIGZvbGxvd2luZyBvcmRlcjoKLS8vIC0gSWYgcGFy
YW1ldGVycyBoYXZlIGRpZmZlcmVudCB0eXBlcyAoaWUuIHVybCwgbnVtYmVyLCBuYW1lZCBwYXJh
bWV0ZXIpLCB0aGUgYWxwaGFiZXRpY2FsIG9yZGVyIG9mIHRoZSAidHlwZSIgaXMgdXNlZC4KLS8v
IC0gSWYgcGFyYW1ldGVycyBhcmUgb2YgdHlwZSAicGFyYW1ldGVyIiB0aGUgYWxwaGFiZXRpY2Fs
IG9yZGVyIG9mIHRoZSBwYXJhbWV0ZXIgbmFtZXMgaXMgdXNlZC4KLS8vIC0gSWYgcGFyYW1ldGVy
cyBhcmUgb2Ygb3RoZXIgdHlwZXMsIHRoZW4gdGhlIHZhbHVlIGlzIHVzZWQgdG8gb3JkZXIgdGhl
bSBhbHBoYWJldGljYWwuCi0vLyBUaGUgb3JkZXIgaXMgaW1wb3J0YW50IHRvIG1ha2UgaXQgZWFz
eSB0byBjb21wYXJlIHR3byBjdXN0b20gZmlsdGVycywgdGhhdCBoYXZlIGV4YWN0bHkgdGhlIHNh
bWUgcGFyYW1ldGVycywgCi0vLyBidXQgd2l0aCBwb3RlbnRpYWxseSBkaWZmZXJlbnQgIm5hbWVk
IHBhcmFtZXRlciIgdmFsdWVzLgotZnVuY3Rpb24gZ2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhz
KSAKLXsKLSAgICByZXR1cm4gcGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzKHJlbW92ZUJhc2VV
UkwocykpLnNvcnQoZnVuY3Rpb24oYSwgYikgeyAKLSAgICAgICAgaWYgKGEudHlwZSAhPSBiLnR5
cGUpIAotICAgICAgICAgICAgcmV0dXJuIGEudHlwZS5sb2NhbGVDb21wYXJlKGIudHlwZSk7Ci0g
ICAgICAgIGlmIChhLnR5cGUgPT0gInBhcmFtZXRlciIpCi0gICAgICAgICAgICByZXR1cm4gYS5u
YW1lLmxvY2FsZUNvbXBhcmUoYi5uYW1lKTsKLSAgICAgICAgcmV0dXJuIGEudmFsdWUudG9TdHJp
bmcoKS5sb2NhbGVDb21wYXJlKGIudmFsdWUudG9TdHJpbmcoKSk7Ci0gICAgfSk7Ci19CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ZyYWdtZW50LWNvbG9y
LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvci5m
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzFiZDcyNy4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ZyYWdtZW50LWNvbG9yLmZzCisrKyAv
ZGV2L251bGwKQEAgLTEsNyArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVuaWZv
cm0gZmxvYXQgY29sb3JBcnJheVs0XTsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9GcmFnQ29s
b3IgPSB2ZWM0KGNvbG9yQXJyYXlbMF0sIGNvbG9yQXJyYXlbMV0sIGNvbG9yQXJyYXlbMl0sIGNv
bG9yQXJyYXlbM10pOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9mcmFnbWVudC1jb2xvcnMuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL2ZyYWdtZW50LWNvbG9ycy5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWNjMGUzYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2ZyYWdtZW50LWNvbG9ycy5mcworKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLXByZWNp
c2lvbiBtZWRpdW1wIGZsb2F0OwotdW5pZm9ybSB2ZWM0IGMxOwotdW5pZm9ybSB2ZWM0IGMyOwot
dW5pZm9ybSB2ZWM0IGMzOwotdW5pZm9ybSB2ZWM0IGM0OwotdW5pZm9ybSB2ZWM0IGM1OwotdW5p
Zm9ybSB2ZWM0IGM2OwotCi12b2lkIG1haW4oKQotewotCWlmIChjMSA9PSBjMiAmJiBjMSA9PSBj
MyAmJiBjMSA9PSBjNCAmJiBjMSA9PSBjNSAmJiBjMSA9PSBjNikKLSAgICAJZ2xfRnJhZ0NvbG9y
ID0gYzE7Ci0gICAgZWxzZSAKLSAgICAJZ2xfRnJhZ0NvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4w
LCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9mcmFnbWVudC1tYXROLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9m
cmFnbWVudC1tYXROLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZmQzMTE2Li4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvZnJhZ21lbnQt
bWF0Ti5mcworKysgL2Rldi9udWxsCkBAIC0xLDIzICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1w
IGZsb2F0OwotdW5pZm9ybSBtYXQyIG0xOwotdW5pZm9ybSBtYXQzIG0yOwotdW5pZm9ybSBtYXQ0
IG0zOwotCi12b2lkIG1haW4oKQotewotICAgIC8vIFRlc3RpbmcgaW5kaXZpZHVhbCBlbnRyaWVz
IHRvIGNoZWNrIGNvcnJlY3Qgb3JkZXIuCi0gICAgaWYgKG0xWzBdWzBdID09IDEuICYmIG0xWzBd
WzFdID09IDEuCi0gICAgICAgICYmIG0xWzFdWzBdID09IDAuICYmIG0xWzFdWzFdID09IDAuCi0g
ICAgICAgICYmCi0gICAgICAgIG0yWzBdWzBdID09IDEuICYmIG0yWzBdWzFdID09IDAuICYmIG0y
WzBdWzJdID09IDEuCi0gICAgICAgICYmIG0yWzFdWzBdID09IDAuICYmIG0yWzFdWzFdID09IDEu
ICYmIG0yWzFdWzJdID09IDEuCi0gICAgICAgICYmIG0yWzJdWzBdID09IDAuICYmIG0yWzJdWzFd
ID09IDEuICYmIG0yWzJdWzJdID09IDAuCi0gICAgICAgICYmCi0gICAgICAgIG0zWzBdWzBdID09
IDEuICYmIG0zWzBdWzFdID09IDEuICYmIG0zWzBdWzJdID09IDAuICYmIG0zWzBdWzNdID09IDAu
Ci0gICAgICAgICYmIG0zWzFdWzBdID09IDAuICYmIG0zWzFdWzFdID09IDEuICYmIG0zWzFdWzJd
ID09IDEuICYmIG0zWzFdWzNdID09IDAuCi0gICAgICAgICYmIG0zWzJdWzBdID09IDEuICYmIG0z
WzJdWzFdID09IDAuICYmIG0zWzJdWzJdID09IDAuICYmIG0zWzJdWzNdID09IDEuCi0gICAgICAg
ICYmIG0zWzNdWzBdID09IDEuICYmIG0zWzNdWzFdID09IDEuICYmIG0zWzNdWzJdID09IDEuICYm
IG0zWzNdWzNdID09IDEuKQotICAgICAgICBnbF9GcmFnQ29sb3IgPSB2ZWM0KDAuMCwgMS4wLCAw
LjAsIDEuMCk7Ci0gICAgZWxzZSAKLSAgICAgICAgZ2xfRnJhZ0NvbG9yID0gdmVjNCgxLjAsIDAu
MCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9ncmF5c2NhbGUtY29sb3ItbWF0cml4LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9ncmF5c2NhbGUtY29sb3ItbWF0cml4LmZzCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBiMDNkODVkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvZ3JheXNjYWxlLWNvbG9yLW1hdHJpeC5mcworKysgL2Rldi9udWxsCkBA
IC0xLDkgKzAsMCBAQAotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfQ29sb3JNYXRyaXggPSBtYXQ0
KAotICAgICAgICAwLjMzMywgMC4zMzMsIDAuMzMzLCAwLjAwMCwKLSAgICAgICAgMC4zMzMsIDAu
MzMzLCAwLjMzMywgMC4wMDAsCi0gICAgICAgIDAuMzMzLCAwLjMzMywgMC4zMzMsIDAuMDAwLAot
ICAgICAgICAwLjAwMCwgMC4wMDAsIDAuMDAwLCAxLjAwMAotICAgICk7Ci19CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtYS10cmlhbmdsZS1j
b29yZC13aXRoLWF0dGFjaGVkLW1lc2gudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL2ludmFsaWQtYS10cmlhbmdsZS1jb29yZC13aXRoLWF0dGFjaGVkLW1lc2gudnMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVjNThjOGUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLWEtdHJpYW5nbGUtY29vcmQtd2l0
aC1hdHRhY2hlZC1tZXNoLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gVGhp
cyBzaGFkZXIgc2hvdWxkIG5vdCBleGVjdXRlIGlmIHRoZSBtZXNoIGlzIGF0dGFjaGVkIGJlY2F1
c2UgYV90cmlhbmdsZUNvb3JkIGlzIG9ubHkgYXZhaWxhYmxlIGluIGRldGFjaGVkIG1lc2hzZXMu
Ci0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjMyBhX3RyaWFuZ2xl
Q29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVj
dGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVj
dGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtY3VzdG9tLWF0dHJpYnV0ZS52cyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzZWI2YjFlLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZz
CisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyByZWxh
dGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJlY2F1
c2UgbXlfYXR0cmlidXRlIGlzIG5vdCBvbmUgb2YgdGhlIGJ1aWx0LWluIGF0dHJpYnV0ZXMuCi0K
LXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgZmxvYXQgbXlfYXR0cmlidXRl
OwotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25N
YXRyaXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25N
YXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXNoYWRlci52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDNjMWViYmIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9pbnZhbGlkLXNoYWRlci52cworKysgL2Rldi9udWxsCkBAIC0xLDIgKzAsMCBAQAotVGhp
cyBpcyBub3QgYSByZWFsIHZlcnRleCBzaGFkZXIuIEl0IGlzIGp1c3QgaW52YWxpZCBzaGFkZXIg
Y29kZS4KLUl0IGlzIHVzZWQgdG8gdGVzdCB0aGF0IHRoZSBmaWx0ZXIgaXMgbm90IGRyYXduIHdo
ZW4gdGhlIHNoYWRlciBpcyBpbnZhbGlkLgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBl
LWEtbWVzaC1jb29yZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52
YWxpZC10eXBlLWEtbWVzaC1jb29yZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDgyNDk3Ny4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2ludmFsaWQtdHlwZS1hLW1lc2gtY29vcmQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCww
IEBACi0vLyBJZiB0aGlzIHNoYWRlcidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20g
ZmlsdGVyIGRvZXMgbm90IGV4ZWN1dGUgYmVjYXVzZSBhX21lc2hDb29yZCdzIHR5cGUgaXMgaW52
YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIGFfbWVzaENvb3JkIHNob3Vs
ZCBiZSBhIHZlYzIsIG5vdCBhIGZsb2F0LgotYXR0cmlidXRlIGZsb2F0IGFfbWVzaENvb3JkOwot
YXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLQotdW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1h
dHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1h
dHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXBvc2l0aW9uLnZzIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS1wb3NpdGlvbi52cwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNTE1NGVhNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXBvc2l0aW9uLnZzCisrKyAvZGV2
L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyByZWxhdGVkIHRlc3Qg
cGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJlY2F1c2UgYV9wb3Np
dGlvbidzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8v
IGFfcG9zaXRpb24gc2hvdWxkIGJlIGEgdmVjNCwgbm90IGEgdmVjMy4KLWF0dHJpYnV0ZSB2ZWMz
IGFfcG9zaXRpb247Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotCi12b2lkIG1h
aW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogdmVjNChhX3Bv
c2l0aW9uLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9pbnZhbGlkLXR5cGUtYS10ZXgtY29vcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRleC1jb29yZC52cwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMjQyOWM3MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRleC1jb29yZC52cworKysgL2Rldi9u
dWxsCkBAIC0xLDEzICswLDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBh
c3NlcywgdGhlIGN1c3RvbSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIGFfdGV4Q29v
cmQncyB0eXBlIGlzIGludmFsaWQuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyBh
X21lc2hDb29yZCBzaG91bGQgYmUgYSB2ZWMyLCBub3QgYW4gdmVjNC4KLWF0dHJpYnV0ZSB2ZWM0
IGFfdGV4Q29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVf
cHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRyaWFuZ2xlLWNvb3JkLnZz
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS10cmlh
bmdsZS1jb29yZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmVkNjYyOS4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlw
ZS1hLXRyaWFuZ2xlLWNvb3JkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLy8g
SWYgdGhpcyBzaGFkZXIncyByZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBk
b2VzIG5vdCBleGVjdXRlIGJlY2F1c2UgYV90cmlhbmdsZUNvb3JkJ3MgdHlwZSBpcyBpbnZhbGlk
LgotLy8gVGhlIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGRlZmluZSBhIGRldGFjaGVkIG1lc2ggYmVj
YXVzZSBhX3RyaWFuZ2xlQ29vcmQgaXMgb25seSBhdmFpbGFibGUgd2l0aCBhIGRldGFjaGVkIG1l
c2guCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyBhX3RyaWFuZ2xlQ29vcmQgc2hv
dWxkIGJlIGEgdmVjMywgbm90IGEgdmVjMi4KLWF0dHJpYnV0ZSB2ZWMyIGFfdHJpYW5nbGVDb29y
ZDsKLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9u
TWF0cml4OwotCi12b2lkIG1haW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9u
TWF0cml4ICogYV9wb3NpdGlvbjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1hcnJheS52cyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1hcnJheS52
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjEzZTc5ZS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hdHRyaWJ1dGUt
YXJyYXkudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi0vLyBJZiB0aGlzIHNoYWRl
cidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20gZmlsdGVyIGRvZXMgbm90IGV4ZWN1
dGUgYmVjYXVzZSBhX3Bvc2l0aW9uJ3MgdHlwZSBpcyBpbnZhbGlkLgotCi1wcmVjaXNpb24gbWVk
aXVtcCBmbG9hdDsKLQotLy8gYV9wb3NpdGlvbiBzaG91bGQgYmUgYSB2ZWM0LCBub3QgYSB2ZWM0
IGFycmF5LgotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvblsxXTsKLXVuaWZvcm0gbWF0NCB1X3By
b2plY3Rpb25NYXRyaXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3By
b2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0aW9uWzBdOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJveC5mcyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1ib3gu
ZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQxY2I2N2EuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJv
eC5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3Mg
cmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3RvbSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBi
ZWNhdXNlIHVfbWVzaEJveCdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAg
ZmxvYXQ7Ci0KLS8vIHVfbWVzaEJveCBzaG91bGQgYmUgYSB2ZWM0LCBub3QgYSB2ZWMzLgotdW5p
Zm9ybSB2ZWMzIHVfbWVzaEJveDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfTWl4Q29sb3Ig
PSB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LW1lc2gtc2l6ZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1zaXplLmZz
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYjA4MGUwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1zaXpl
LmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyBy
ZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJl
Y2F1c2UgdV9tZXNoU2l6ZSdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAg
ZmxvYXQ7Ci0KLS8vIHVfbWVzaFNpemUgc2hvdWxkIGJlIGEgdmVjMiwgbm90IGEgZmxvYXQuCi11
bmlmb3JtIGZsb2F0IHVfbWVzaFNpemU7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgY3NzX01peENv
bG9yID0gdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJp
eC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUt
cHJvamVjdGlvbi1tYXRyaXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI1ZmIx
MTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZh
bGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJpeC5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICsw
LDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3Rv
bSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIHVfcHJvamVjdGlvbk1hdHJpeCdzIHR5
cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfcHJvamVj
dGlvbk1hdHJpeCBzaG91bGQgYmUgYSBtYXQ0LCBub3QgYSBtYXQzLgotdW5pZm9ybSBtYXQzIHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfTWl4Q29sb3IgPSB2
ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LXRleHR1cmUtc2l6ZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGV4dHVyZS1zaXpl
LmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlMDU2OGYwLi4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGV4dHVy
ZS1zaXplLmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFk
ZXIncyByZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVj
dXRlIGJlY2F1c2UgdV90ZXh0dXJlU2l6ZSdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9u
IG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfdGV4dHVyZVNpemUgc2hvdWxkIGJlIGEgdmVjMiwgbm90
IGEgdmVjMy4KLXVuaWZvcm0gdmVjMyB1X3RleHR1cmVTaXplOwotCi12b2lkIG1haW4oKQotewot
ICAgIGNzc19NaXhDb2xvciA9IHZlYzQoMS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGls
ZS1zaXplLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5
cGUtdS10aWxlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE3ZGEzZTgu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlk
LXR5cGUtdS10aWxlLXNpemUuZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0vLyBJ
ZiB0aGlzIHNoYWRlcidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20gZmlsdGVyIGRv
ZXMgbm90IGV4ZWN1dGUgYmVjYXVzZSB1X3RpbGVTaXplJ3MgdHlwZSBpcyBpbnZhbGlkLgotCi1w
cmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotLy8gdV90aWxlU2l6ZSBzaG91bGQgYmUgYSB2ZWMy
LCBub3QgYSBtYXQyLgotdW5pZm9ybSBtYXQyIHVfdGlsZVNpemU7Ci0KLXZvaWQgbWFpbigpCi17
Ci0gICAgY3NzX01peENvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdW5p
Zm9ybS1hcnJheS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxp
ZC10eXBlLXVuaWZvcm0tYXJyYXkuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYx
YzM5OWQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9p
bnZhbGlkLXR5cGUtdW5pZm9ybS1hcnJheS5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAg
QEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3RvbSBm
aWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIHVfbWVzaEJveCdzIHR5cGUgaXMgaW52YWxp
ZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfbWVzaEJveCBzaG91bGQgYmUg
YSB2ZWM0LCBub3QgYW4gYXJyYXkgb2YgdmVjNC4KLXVuaWZvcm0gdmVjNCB1X21lc2hCb3hbMV07
Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgY3NzX01peENvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4w
LCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9taXgtY29sb3IuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL21peC1j
b2xvci5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDJmZTYzNC4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL21peC1jb2xvci5mcworKysg
L2Rldi9udWxsCkBAIC0xLDcgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci11bmlm
b3JtIHZlYzQgbWl4X2NvbG9yOwotCi12b2lkIG1haW4oKQotewotICAgIGNzc19NaXhDb2xvciA9
IG1peF9jb2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL3Bhc3MtdGV4LWNvb3JkLnZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0ZmZk
MjdiLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvcGFz
cy10ZXgtY29vcmQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi1wcmVjaXNpb24g
bWVkaXVtcCBmbG9hdDsKLQotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLWF0dHJpYnV0ZSB2
ZWMyIGFfdGV4Q29vcmQ7Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdmFyeWlu
ZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgdl90ZXhDb29yZCA9IGFf
dGV4Q29vcmQ7Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0
aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9z
YW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXguZnMKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNlZjk4ODUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1p
eC5mcworKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLS8vIFRoaXMgdGVzdCBjaGVja3Mg
dGhhdCBhIHNoYWRlciBjYW5ub3QgcmVhZCBmcm9tIHRoZSBpbnRlcm5hbCAiY3NzX3VfdGV4dHVy
ZSIgc2FtcGxlciwgd2hpY2ggcmVmZXJlbmNlcyB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLS8v
IFRoaXMgc2hhZGVyIGlzIHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlvbiBhbmQg
c2hvdWxkIGZhaWwgdG8gdmFsaWRhdGUgYmVjYXVzZSBpdCBkZWZpbmVzICJjc3NfdV90ZXh0dXJl
IiwKLS8vIHVzaW5nIHRoZSByZXN0cmljdGVkICJjc3NfIiBwcmVmaXguCi0KLXByZWNpc2lvbiBt
ZWRpdW1wIGZsb2F0OwotCi11bmlmb3JtIHNhbXBsZXIyRCBjc3NfdV90ZXh0dXJlOwotCi12YXJ5
aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBtYWluKCkKLXsKLQkvLyBUcnkgdG8gc2FtcGxl
IHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZlYzQgY29sb3IgPSB0ZXh0dXJlMkQoY3NzX3Vf
dGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBTd2FwIHRoZSByZWQgYW5kIGdyZWVuIGNoYW5u
ZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0KLQljc3NfTWl4Q29sb3IgPSBjb2xvcjsKLX0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLWRl
ZmluZWQtY3NzLXUtdGV4dHVyZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVyZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNTg0NmQxNy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL3NhbXBsZS1kZWZpbmVkLWNzcy11LXRleHR1cmUuZnMKKysrIC9kZXYvbnVsbApA
QCAtMSwyMCArMCwwIEBACi0vLyBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYSBzaGFkZXIgY2Fubm90
IHJlYWQgZnJvbSB0aGUgaW50ZXJuYWwgImNzc191X3RleHR1cmUiIHNhbXBsZXIsIHdoaWNoIHJl
ZmVyZW5jZXMgdGhlIERPTSBlbGVtZW50IHRleHR1cmUuCi0vLyBUaGlzIHNoYWRlciBzaG91bGQg
ZmFpbCB0byB2YWxpZGF0ZSBiZWNhdXNlIGl0IGRlZmluZXMgImNzc191X3RleHR1cmUiLCB3aGlj
aCBzaG91bGQgYmUgYW4gdW5ib3VuZCBzYW1wbGVyLAotLy8gc2luY2UgdGhpcyBzaGFkZXIgaXMg
bm90IHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlvbi4KLQotcHJlY2lzaW9uIG1l
ZGl1bXAgZmxvYXQ7Ci0KLXVuaWZvcm0gc2FtcGxlcjJEIGNzc191X3RleHR1cmU7Ci0KLXZhcnlp
bmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQotewotCS8vIFRyeSB0byBzYW1wbGUg
dGhlIERPTSBlbGVtZW50IHRleHR1cmUuCi0JdmVjNCBjb2xvciA9IHRleHR1cmUyRChjc3NfdV90
ZXh0dXJlLCB2X3RleENvb3JkKTsKLQotCS8vIFN3YXAgdGhlIHJlZCBhbmQgZ3JlZW4gY2hhbm5l
bHMuCi0JY29sb3IucmcgPSBjb2xvci5ncjsKLQotCWdsX0ZyYWdDb2xvciA9IGNvbG9yOwotfQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtdS10
ZXh0dXJlLW1peC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxl
LXUtdGV4dHVyZS1taXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ1ZjM1MjIu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUt
dS10ZXh0dXJlLW1peC5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAKLS8vIFRoaXMg
dGVzdCBjaGVja3MgdGhhdCBhIHNoYWRlciB3aXRoIGFuIHVuYm91bmQgc2FtcGxlciBpcyBub3Qg
cGVybWl0dGVkIHRvIGV4ZWN1dGUuCi0vLyBUaGlzIHNoYWRlciBpcyByZWZlcmVuY2VkIGZyb20g
dGhlIENTUyBtaXggZnVuY3Rpb24gYW5kIHdyaXRlcyBpdHMgb3V0cHV0IHRvIGNzc19NaXhDb2xv
ci4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXVuaWZvcm0gc2FtcGxlcjJEIHVfdGV4
dHVyZTsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0JLy8g
VHJ5IHRvIHNhbXBsZSB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLQl2ZWM0IGNvbG9yID0gdGV4
dHVyZTJEKHVfdGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBTd2FwIHRoZSByZWQgYW5kIGdy
ZWVuIGNoYW5uZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0KLQljc3NfTWl4Q29sb3IgPSBj
b2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
c2FtcGxlLXUtdGV4dHVyZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
c2FtcGxlLXUtdGV4dHVyZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2MwMmI4
NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3NhbXBs
ZS11LXRleHR1cmUuZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vLyBUaGlzIHRl
c3QgY2hlY2tzIHRoYXQgYSBzaGFkZXIgd2l0aCBhbiB1bmJvdW5kIHNhbXBsZXIgaXMgbm90IHBl
cm1pdHRlZCB0byBleGVjdXRlLgotLy8gVGhpcyBzaGFkZXIgaXMgbm90IHJlZmVyZW5jZWQgZnJv
bSB0aGUgQ1NTIG1peCBmdW5jdGlvbiBhbmQgd3JpdGVzIGl0cyBvdXRwdXQgdG8gZ2xfRnJhZ0Nv
bG9yLgotCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdW5pZm9ybSBzYW1wbGVyMkQgdV90
ZXh0dXJlOwotCi12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBtYWluKCkKLXsKLQkv
LyBUcnkgdG8gc2FtcGxlIHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZlYzQgY29sb3IgPSB0
ZXh0dXJlMkQodV90ZXh0dXJlLCB2X3RleENvb3JkKTsKLQotCS8vIFN3YXAgdGhlIHJlZCBhbmQg
Z3JlZW4gY2hhbm5lbHMuCi0JY29sb3IucmcgPSBjb2xvci5ncjsKLQotCWdsX0ZyYWdDb2xvciA9
IGNvbG9yOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4LmZzIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4LmZz
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYjk2NmIwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10
ZXh0dXJlLW1peC5mcworKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLS8vIFRoaXMgdGVz
dCBjaGVja3MgdGhhdCBhIHNoYWRlciBjYW5ub3QgcmVhZCBmcm9tIHRoZSBpbnRlcm5hbCAiY3Nz
X3VfdGV4dHVyZSIgc2FtcGxlciwgd2hpY2ggcmVmZXJlbmNlcyB0aGUgRE9NIGVsZW1lbnQgdGV4
dHVyZS4KLS8vIFRoaXMgc2hhZGVyIHNob3VsZCBmYWlsIHRvIHZhbGlkYXRlIGJlY2F1c2UgImNz
c191X3RleHR1cmUiIHNob3VsZCBiZSB1bmRlZmluZWQgdG8gdGhpcyBjb2RlLgotCi1wcmVjaXNp
b24gbWVkaXVtcCBmbG9hdDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFp
bigpCi17Ci0JLy8gVHJ5IHRvIHNhbXBsZSB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLQl2ZWM0
IGNvbG9yID0gdGV4dHVyZTJEKGNzc191X3RleHR1cmUsIHZfdGV4Q29vcmQpOwotCi0JLy8gU3dh
cCB0aGUgcmVkIGFuZCBncmVlbiBjaGFubmVscy4KLQljb2xvci5yZyA9IGNvbG9yLmdyOwotCi0J
Y3NzX01peENvbG9yID0gY29sb3I7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10ZXh0
dXJlLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMWUyZjJhLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1j
c3MtdS10ZXh0dXJlLmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTcgKzAsMCBAQAotLy8gVGhpcyB0
ZXN0IGNoZWNrcyB0aGF0IGEgc2hhZGVyIGNhbm5vdCByZWFkIGZyb20gdGhlIGludGVybmFsICJj
c3NfdV90ZXh0dXJlIiBzYW1wbGVyLCB3aGljaCByZWZlcmVuY2VzIHRoZSBET00gZWxlbWVudCB0
ZXh0dXJlLgotLy8gVGhpcyBzaGFkZXIgc2hvdWxkIGZhaWwgdG8gdmFsaWRhdGUgYmVjYXVzZSAi
Y3NzX3VfdGV4dHVyZSIgc2hvdWxkIGJlIHVuZGVmaW5lZCB0byB0aGlzIGNvZGUuCi0KLXByZWNp
c2lvbiBtZWRpdW1wIGZsb2F0OwotCi12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBt
YWluKCkKLXsKLQkvLyBUcnkgdG8gc2FtcGxlIHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZl
YzQgY29sb3IgPSB0ZXh0dXJlMkQoY3NzX3VfdGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBT
d2FwIHRoZSByZWQgYW5kIGdyZWVuIGNoYW5uZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0K
LQlnbF9GcmFnQ29sb3IgPSBjb2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcwpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2E4ZDA2OC4uMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1ib3gtaXMtdW5pdC1zcXVhcmUu
ZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vLyBUZXN0IHdoZXRoZXIgdV9tZXNo
Qm94IGlzIGNvcnJlY3RseSBzZXQ7IGNoYW5nZSBmcmFnbWVudCBjb2xvciB0byBncmVlbiBpZiB5
ZXMuCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVuaWZvcm0gdmVjNCB1X21lc2hCb3g7Ci0K
LWJvb2wgYXJlRmxvYXRzRXF1YWwoZmxvYXQgYSwgZmxvYXQgYikKLXsKLSAgICBjb25zdCBmbG9h
dCBlcHNpbG9uID0gMC4wMDE7Ci0gICAgcmV0dXJuIChhID4gKGIgLSBlcHNpbG9uKSkgJiYgKGEg
PCAoYiArIGVwc2lsb24pKTsKLX0KLQotYm9vbCBhcmVWZWN0b3JzRXF1YWwodmVjNCBhLCB2ZWM0
IGIpCi17Ci0gICAgcmV0dXJuIGFyZUZsb2F0c0VxdWFsKGEueCwgYi54KSAmJiBhcmVGbG9hdHNF
cXVhbChhLnksIGIueSkgJiYgYXJlRmxvYXRzRXF1YWwoYS56LCBiLnopICYmIGFyZUZsb2F0c0Vx
dWFsKGEudywgYi53KTsKLX0KLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9GcmFnQ29sb3IgPSBh
cmVWZWN0b3JzRXF1YWwodV9tZXNoQm94LCB2ZWM0KC0wLjUsIC0wLjUsIDEuMCwgMS4wKSkgPyB2
ZWM0KDAuMCwgMS4wLCAwLjAsIDEuMCkgOiB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1zaXpl
LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LW1lc2gtc2l6ZS5mcwpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjU1Mjc3NC4uMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1zaXplLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsMTkgKzAsMCBAQAotLy8gVGVzdCB3aGV0aGVyIHVfbWVzaFNpemUgaXMgY29ycmVj
dGx5IHNldDsgY2hhbmdlIGZyYWdtZW50IHRvIGNvbG9yIGdyZWVuIGlmIHllcy4KLXByZWNpc2lv
biBtZWRpdW1wIGZsb2F0OwotdW5pZm9ybSB2ZWMyIHVfbWVzaFNpemU7Ci0KLWJvb2wgYXJlRmxv
YXRzRXF1YWwoZmxvYXQgYSwgZmxvYXQgYikKLXsKLSAgICBjb25zdCBmbG9hdCBlcHNpbG9uID0g
MC4wMDE7Ci0gICAgcmV0dXJuIChhID4gKGIgLSBlcHNpbG9uKSkgJiYgKGEgPCAoYiArIGVwc2ls
b24pKTsKLX0KLQotYm9vbCBhcmVWZWN0b3JzRXF1YWwodmVjMiBhLCB2ZWMyIGIpCi17Ci0gICAg
cmV0dXJuIGFyZUZsb2F0c0VxdWFsKGEueCwgYi54KSAmJiBhcmVGbG9hdHNFcXVhbChhLnksIGIu
eSk7Ci19Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfRnJhZ0NvbG9yID0gYXJlVmVjdG9yc0Vx
dWFsKHVfbWVzaFNpemUsIHZlYzIoMTAuMCwgMjAuMCkpID8gdmVjNCgwLjAsIDEuMCwgMC4wLCAx
LjApIDogdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LXRleHR1cmUtc2l6ZS5mcyBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdS10ZXh0dXJlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDE3NTE1ZGYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL3Jlc291cmNlcy91LXRleHR1cmUtc2l6ZS5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5
ICswLDAgQEAKLS8vIFRlc3Qgd2hldGhlciB1X3RleHR1cmVTaXplIGlzIGNvcnJlY3RseSBzZXQ7
IGNoYW5nZSBmcmFnbWVudCBjb2xvciB0byBncmVlbiBpZiB5ZXMuCi1wcmVjaXNpb24gbWVkaXVt
cCBmbG9hdDsKLXVuaWZvcm0gdmVjMiB1X3RleHR1cmVTaXplOwotCi1ib29sIGFyZUZsb2F0c0Vx
dWFsKGZsb2F0IGEsIGZsb2F0IGIpCi17Ci0gICAgY29uc3QgZmxvYXQgZXBzaWxvbiA9IDAuMDAx
OwotICAgIHJldHVybiAoYSA+IChiIC0gZXBzaWxvbikpICYmIChhIDwgKGIgKyBlcHNpbG9uKSk7
Ci19Ci0KLWJvb2wgYXJlVmVjdG9yc0VxdWFsKHZlYzIgYSwgdmVjMiBiKQotewotICAgIHJldHVy
biBhcmVGbG9hdHNFcXVhbChhLngsIGIueCkgJiYgYXJlRmxvYXRzRXF1YWwoYS55LCBiLnkpOwot
fQotCi12b2lkIG1haW4oKQotewotICAgIGdsX0ZyYWdDb2xvciA9IGFyZVZlY3RvcnNFcXVhbCh1
X3RleHR1cmVTaXplLCB2ZWMyKDEwMC4wLCAxMDAuMCkpID8gdmVjNCgwLjAsIDEuMCwgMC4wLCAx
LjApIDogdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LXRpbGUtc2l6ZS5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvdS10aWxlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDkzNWUzNDAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L3Jlc291cmNlcy91LXRpbGUtc2l6ZS5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAK
LS8vIFRlc3Qgd2hldGhlciB1X3RpbGVTaXplIGlzIGNvcnJlY3RseSBzZXQ7IGNoYW5nZSBmcmFn
bWVudCBjb2xvciB0byBncmVlbiBpZiB5ZXMuCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVu
aWZvcm0gdmVjMiB1X3RpbGVTaXplOwotCi1ib29sIGFyZUZsb2F0c0VxdWFsKGZsb2F0IGEsIGZs
b2F0IGIpCi17Ci0gICAgY29uc3QgZmxvYXQgZXBzaWxvbiA9IDAuMDAxOwotICAgIHJldHVybiAo
YSA+IChiIC0gZXBzaWxvbikpICYmIChhIDwgKGIgKyBlcHNpbG9uKSk7Ci19Ci0KLWJvb2wgYXJl
VmVjdG9yc0VxdWFsKHZlYzIgYSwgdmVjMiBiKQotewotICAgIHJldHVybiBhcmVGbG9hdHNFcXVh
bChhLngsIGIueCkgJiYgYXJlRmxvYXRzRXF1YWwoYS55LCBiLnkpOwotfQotCi12b2lkIG1haW4o
KQotewotICAgIGdsX0ZyYWdDb2xvciA9IGFyZVZlY3RvcnNFcXVhbCh1X3RpbGVTaXplLCB2ZWMy
KDEuMCAvIDEwLjAsIDEuMCAvIDIwLjApKSA/IHZlYzQoMC4wLCAxLjAsIDAuMCwgMS4wKSA6IHZl
YzQoMS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdW5hdmFpbGFibGUtdmFyeWluZy5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvdW5hdmFpbGFibGUtdmFyeWluZy5mcwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggODc1OGUzYy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL3VuYXZhaWxhYmxlLXZhcnlpbmcuZnMKKysrIC9kZXYvbnVsbApA
QCAtMSw4ICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotdmFyeWluZyB2ZWM0IHVu
YXZhaWxhYmxlOwotCi12b2lkIG1haW4gKCkKLXsKLSAgICBjc3NfTWl4Q29sb3IgPSB1bmF2YWls
YWJsZTsKLX0KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy92YXJ5aW5nLW1peC1jb2xvci5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvdmFyeWluZy1taXgtY29sb3IuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZh
YmMxNDUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92
YXJ5aW5nLW1peC1jb2xvci5mcworKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotcHJlY2lz
aW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXZhcnlpbmcgdmVjNCB2X21peENvbG9yOwotCi12b2lkIG1h
aW4oKQotewotICAgIGNzc19NaXhDb2xvciA9IHZfbWl4Q29sb3I7Ci19CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1leHBsb2RlLWRldGFjaGVk
LnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtZXhwbG9kZS1k
ZXRhY2hlZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTdlZGVkZC4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1leHBsb2Rl
LWRldGFjaGVkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotcHJlY2lzaW9uIG1l
ZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVj
MiBhX3RleENvb3JkOwotYXR0cmlidXRlIHZlYzMgYV90cmlhbmdsZUNvb3JkOwotCi11bmlmb3Jt
IG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZv
aWQgbWFpbigpCi17Ci0gICAgLy8gYV90cmlhbmdsZUNvb3JkLnh5IGlzIHRoZSBwb3NpdGlvbiBv
ZiB0aGUgdGlsZSBpbiB0aGUgbWVzaCwgc28gd2Ugb2Zmc2V0IHRoZSB2ZXJ0aWNlcwotICAgIC8v
IHdpdGggdGhlIHBvc2l0aW9uIGluIG1lc2guIFRoZSB0aWxlcyBzaG91bGQgYmUgZGV0YWNoZWQg
ZnJvbSBlYWNoIG90aGVyLgotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICog
KGFfcG9zaXRpb24gKyB2ZWM0KGFfdHJpYW5nbGVDb29yZC54IC8gNC4wLCBhX3RyaWFuZ2xlQ29v
cmQueSAvIDQuMCwgMC4wLCAwLjApKTsKLSAgICB2X3RleENvb3JkID0gYV90ZXhDb29yZDsKLX0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LWhv
cml6b250YWwtb2Zmc2V0LnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92
ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGVmMGRhYjAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy92ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCww
IEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlv
bjsKLWF0dHJpYnV0ZSB2ZWMyIGFfdGV4Q29vcmQ7Ci0KLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rp
b25NYXRyaXg7Ci11bmlmb3JtIGZsb2F0IG9mZnNldDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29v
cmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRy
aXggKiAoYV9wb3NpdGlvbiArIHZlYzQoMC4wLCBvZmZzZXQsIDAuMCwgMC4wKSk7Ci0gICAgdl90
ZXhDb29yZCA9IGFfdGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQtcGFyYW1ldGVycy52cyBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MWIxYjBhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzCisr
KyAvZGV2L251bGwKQEAgLTEsNjEgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0K
LWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVjMiBhX3RleENvb3JkOwot
Ci11bmlmb3JtIGZsb2F0IHBlcnNwZWN0aXZlOwotdW5pZm9ybSB2ZWMyIHZlcnRleF9vZmZzZXQ7
Ci11bmlmb3JtIHZlYzMgcm90YXRlOwotCi11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4
OwotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLWNvbnN0IGZsb2F0IE1fUEkgPSAzLjE0MTU5
MjY1OwotCi1tYXQ0IHBlcnNwZWN0aXZlTWF0cml4KGZsb2F0IHApIHsKLSAgICByZXR1cm4gbWF0
NCgxLjAsIDAuMCwgMC4wLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAxLjAsIDAuMCwgMC4w
LAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxLjAsIC0gMS4wIC8gcCwKLSAgICAgICAgICAg
ICAgICAwLjAsIDAuMCwgMC4wLCAxLjApOwotfQotCi1tYXQ0IHRyYW5zbGF0ZU1hdHJpeCh2ZWMy
IHQpIHsKLSAgICByZXR1cm4gbWF0NCgxLjAsIDAuMCwgMC4wLCAwLjAsCi0gICAgICAgICAgICAg
ICAgMC4wLCAxLjAsIDAuMCwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxLjAsIDAu
MCwKLSAgICAgICAgICAgICAgICB0LngsIHQueSwgMC4wLCAxLjApOwotfQotCi1tYXQ0IHJvdGF0
ZVhNYXRyaXgoZmxvYXQgZikgewotICAgIHJldHVybiBtYXQ0KDEuMCwgMC4wLCAwLjAsIDAuMCwK
LSAgICAgICAgICAgICAgICAwLjAsIGNvcyhmKSwgc2luKGYpLCAwLjAsCi0gICAgICAgICAgICAg
ICAgMC4wLCAtc2luKGYpLCBjb3MoZiksIDAuMCwKLSAgICAgICAgICAgICAgICAwLjAsIDAuMCwg
MC4wLCAxLjApOwotfQotCi1tYXQ0IHJvdGF0ZVlNYXRyaXgoZmxvYXQgZikgewotICAgIHJldHVy
biBtYXQ0KGNvcyhmKSwgMC4wLCAtc2luKGYpLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAx
LjAsIDAuMCwgMC4wLAotICAgICAgICAgICAgICAgIHNpbihmKSwgMCwgY29zKGYpLCAwLjAsCi0g
ICAgICAgICAgICAgICAgMC4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KLQotbWF0NCByb3RhdGVaTWF0
cml4KGZsb2F0IGYpIHsKLSAgICByZXR1cm4gbWF0NChjb3MoZiksIHNpbihmKSwgMC4wLCAwLjAs
Ci0gICAgICAgICAgICAgICAgLXNpbihmKSwgY29zKGYpLCAwLjAsIDAuMCwKLSAgICAgICAgICAg
ICAgICAwLjAsIDAuMCwgMS4wLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAwLjAsIDAuMCwg
MS4wKTsKLX0KLQotbWF0NCByb3RhdGVNYXRyaXgodmVjMyBhKSB7Ci0gICAgcmV0dXJuIHJvdGF0
ZVhNYXRyaXgoYS54KSAqIHJvdGF0ZVlNYXRyaXgoYS55KSAqIHJvdGF0ZVpNYXRyaXgoYS56KTsK
LX0KLQotdm9pZCBtYWluKCkKLXsKLSAgICAvLyBVc2UgdGhlIHZhbHVlcyBmcm9tIENTUyB0byBj
aGFuZ2UgdGhlIHBlcnNwZWN0aXZlLCB0cmFuc2xhdGUgYW5kIHJvdGF0ZSB0aGUgc3VyZmFjZS4g
VGhpcyB3YXkgd2UgY2FuIHRlc3QKLSAgICAvLyBmbG9hdCwgdmVjMiBhbmQgdmVjMy4gTm90ZSB0
aGF0IHZlYzQgaXMgdGVzdGVkIGluIHRoZSBmcmFnbWVudCBzaGFkZXIgdmVydGV4LW9mZnNldC1w
YXJhbWV0ZXJzLmZzLgotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogcGVy
c3BlY3RpdmVNYXRyaXgocGVyc3BlY3RpdmUpICogdHJhbnNsYXRlTWF0cml4KHZlcnRleF9vZmZz
ZXQpICogcm90YXRlTWF0cml4KHJvdGF0ZSAqIE1fUEkgLyAxODAuMCkgKiBhX3Bvc2l0aW9uOwot
ICAgIAotICAgIHZfdGV4Q29vcmQgPSBhX3RleENvb3JkOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBhOTFkYjdkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cworKysgL2Rldi9udWxsCkBAIC0xLDE0
ICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bv
c2l0aW9uOwotYXR0cmlidXRlIHZlYzIgYV90ZXhDb29yZDsKLQotdW5pZm9ybSBtYXQ0IHVfcHJv
amVjdGlvbk1hdHJpeDsKLXZhcnlpbmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQot
ewotICAgIC8vIE9mZnNldCB0aGUgcG9zaXRpb24gb2YgdGhlIHZlcnRpY2VzIHdpdGggMC4xIGlu
IHRoZSBYIGF4aXMuCi0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiAoYV9w
b3NpdGlvbiArIHZlYzQoMC4xLCAwLjAsIDAuMCwgMC4wKSk7Ci0gICAgdl90ZXhDb29yZCA9IGFf
dGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL3ZlcnRleC1yb3RhdGUudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L3ZlcnRleC1yb3RhdGUudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUyMzJmOTMu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMjIgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1
bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVjMiBh
X3RleENvb3JkOwotCi11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdW5pZm9ybSBm
bG9hdCByb3RhdGVCeTsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLW1hdDQgcm90YXRl
Wk1hdHJpeChmbG9hdCBmKSB7Ci0gICAgcmV0dXJuIG1hdDQoY29zKGYpLCBzaW4oZiksIDAuMCwg
MC4wLAotICAgICAgICAgICAgICAgIC1zaW4oZiksIGNvcyhmKSwgMC4wLCAwLjAsCi0gICAgICAg
ICAgICAgICAgMC4wLCAwLjAsIDEuMCwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAw
LjAsIDEuMCk7Ci19Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2pl
Y3Rpb25NYXRyaXggKiByb3RhdGVaTWF0cml4KHJvdGF0ZUJ5ICogMy4xNCAvIDE4MC4wKSAqIGFf
cG9zaXRpb247Ci0gICAgdl90ZXhDb29yZCA9IGFfdGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC10cmFuc2Zvcm0tcGFyYW1l
dGVyLnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtdHJhbnNm
b3JtLXBhcmFtZXRlci52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjhjMTZhNi4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC10
cmFuc2Zvcm0tcGFyYW1ldGVyLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotcHJl
Y2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci0KLXVu
aWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci11bmlmb3JtIG1hdDQgdHJhbnNmb3JtOwot
Ci12b2lkIG1haW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICog
dHJhbnNmb3JtICogYV9wb3NpdGlvbjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuanMgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRp
bmdzLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMTkwNzhlLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1t
aXgtYmluZGluZ3MuanMKKysrIC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi1kZXNjcmlwdGlv
bigiVGVzdCBtaXgoKSBmdW5jdGlvbiBKUyBiaW5kaW5ncy4iKTsKLQotZnVuY3Rpb24ganNXcmFw
cGVyQ2xhc3Mobm9kZSkgewotICAgIGlmICghbm9kZSkKLSAgICAgICAgcmV0dXJuICJbbnVsbF0i
OwotICAgIHZhciBzdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmFwcGx5KG5vZGUp
OwotICAgIHJldHVybiBzdHJpbmcuc3Vic3RyKDgsIHN0cmluZy5sZW5ndGggLSA5KTsKLX0KLQot
ZnVuY3Rpb24gc2hvdWxkQmVUeXBlKGV4cHJlc3Npb24sIGNsYXNzTmFtZSwgcHJvdG90eXBlTmFt
ZSwgY29uc3RydWN0b3JOYW1lKSB7Ci0gICAgaWYgKCFwcm90b3R5cGVOYW1lKQotICAgICAgICBw
cm90b3R5cGVOYW1lID0gY2xhc3NOYW1lICsgIlByb3RvdHlwZSI7Ci0gICAgaWYgKCFjb25zdHJ1
Y3Rvck5hbWUpCi0gICAgICAgIGNvbnN0cnVjdG9yTmFtZSA9IGNsYXNzTmFtZSArICJDb25zdHJ1
Y3RvciI7Ci0gICAgc2hvdWxkQmUoImpzV3JhcHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIiki
LCAiJyIgKyBjbGFzc05hbWUgKyAiJyIpOwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygi
ICsgZXhwcmVzc2lvbiArICIuX19wcm90b19fKSIsICInIiArIHByb3RvdHlwZU5hbWUgKyAiJyIp
OwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygiICsgZXhwcmVzc2lvbiArICIuY29uc3Ry
dWN0b3IpIiwgIiciICsgY29uc3RydWN0b3JOYW1lICsgIiciKTsKLX0KLQotZnVuY3Rpb24gcmVt
b3ZlQmFzZVVSTChzcmMpIHsKLSAgICB2YXIgdXJsUmVnZXhwID0gL3VybFwoKFteXCldKilcKS9n
OwotICAgIHJldHVybiBzcmMucmVwbGFjZSh1cmxSZWdleHAsIGZ1bmN0aW9uKG1hdGNoLCB1cmwp
IHsKLSAgICAgICAgcmV0dXJuICJ1cmwoIiArIHVybC5zdWJzdHIodXJsLmxhc3RJbmRleE9mKCIv
IikgKyAxKSArICIpIjsKLSAgICB9KTsKLX0KLQotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLXZhciBzdHlsZUVsZW1lbnQg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRD
aGlsZChzdHlsZUVsZW1lbnQpOwotdmFyIHN0eWxlc2hlZXQgPSBzdHlsZUVsZW1lbnQuc2hlZXQ7
Ci0KLXN0eWxlc2hlZXQuYWRkUnVsZSgiYm9keSIsICItd2Via2l0LWZpbHRlcjogY3VzdG9tKG5v
bmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpKSkiLCAwKTsKLQotdmFy
IGNzc1J1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVzLml0ZW0oMCk7Ci0KLXNob3VsZEJlKCJjc3NS
dWxlLnR5cGUiLCAiMSIpOwotCi12YXIgZGVjbGFyYXRpb24gPSBjc3NSdWxlLnN0eWxlOwotc2hv
dWxkQmUoImRlY2xhcmF0aW9uLmxlbmd0aCIsICIxIik7Ci0KLXZhciBmaWx0ZXJSdWxlID0gZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlDU1NWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKTsKLXZhciBtaXhG
dW5jdGlvbiA9IGZpbHRlclJ1bGVbMF1bMF1bMV07Ci1zaG91bGRCZVR5cGUoIm1peEZ1bmN0aW9u
IiwgIldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUiKTsKLQotdmFyIG1peEZ1bmN0aW9uQ29udGVu
dCA9IHJlbW92ZUJhc2VVUkwobWl4RnVuY3Rpb24uY3NzVGV4dCk7Ci0KLXNob3VsZEJlRXF1YWxU
b1N0cmluZygibWl4RnVuY3Rpb25Db250ZW50IiwgIm1peCh1cmwoY29sb3Itb2Zmc2V0LmZzKSki
KTsKLQotc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1w
YXJzaW5nLWNvbW1vbi5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTIyMWYwYy4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3Rv
bS1maWx0ZXItcGFyc2luZy1jb21tb24uanMKKysrIC9kZXYvbnVsbApAQCAtMSw1NyArMCwwIEBA
Ci0vLyBIZWxwZXIgZnVuY3Rpb25zLgotCi1mdW5jdGlvbiBoZWFkaW5nKHN0cmluZykKLXsKLSAg
ICBkZWJ1ZygiIik7Ci0gICAgZGVidWcoIj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0iKTsKLSAgICBkZWJ1ZyhzdHJpbmcpOwotICAgIGRlYnVnKCI9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Iik7Ci19Ci0KLWZ1bmN0aW9uIGpzV3JhcHBlckNs
YXNzKG5vZGUpCi17Ci0gICAgaWYgKCFub2RlKQotICAgICAgICByZXR1cm4gIltudWxsXSI7Ci0g
ICAgdmFyIHN0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuYXBwbHkobm9kZSk7Ci0g
ICAgcmV0dXJuIHN0cmluZy5zdWJzdHIoOCwgc3RyaW5nLmxlbmd0aCAtIDkpOwotfQotCi0vLyBG
SVhNRTogVGhpcyB0eXBlLWNoZWNraW5nIGFwcHJvYWNoIGZhaWxzIG9uIFY4LCB3aGljaCByZXF1
aXJlcyB1cyB0byBoYXZlIENocm9taXVtLXNwZWNpZmljIGV4cGVjdGF0aW9ucy4KLS8vIFdlIHNo
b3VsZCB1c2UgdGhlIHNob3VsZEhhdmVDb25zdHJ1Y3RvciBmdW5jdGlvbiBpbnN0ZWFkLCB3aGlj
aCB3b3JrcyByZWdhcmRsZXNzIG9mIEpTIGVuZ2luZS4KLWZ1bmN0aW9uIHNob3VsZEJlVHlwZShl
eHByZXNzaW9uLCBjbGFzc05hbWUsIHByb3RvdHlwZU5hbWUsIGNvbnN0cnVjdG9yTmFtZSkKLXsK
LSAgICBpZiAoIXByb3RvdHlwZU5hbWUpCi0gICAgICAgIHByb3RvdHlwZU5hbWUgPSBjbGFzc05h
bWUgKyAiUHJvdG90eXBlIjsKLSAgICBpZiAoIWNvbnN0cnVjdG9yTmFtZSkKLSAgICAgICAgY29u
c3RydWN0b3JOYW1lID0gY2xhc3NOYW1lICsgIkNvbnN0cnVjdG9yIjsKLSAgICBzaG91bGRCZSgi
anNXcmFwcGVyQ2xhc3MoIiArIGV4cHJlc3Npb24gKyAiKSIsICInIiArIGNsYXNzTmFtZSArICIn
Iik7Ci0gICAgc2hvdWxkQmUoImpzV3JhcHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIi5fX3By
b3RvX18pIiwgIiciICsgcHJvdG90eXBlTmFtZSArICInIik7Ci0gICAgc2hvdWxkQmUoImpzV3Jh
cHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIi5jb25zdHJ1Y3RvcikiLCAiJyIgKyBjb25zdHJ1
Y3Rvck5hbWUgKyAiJyIpOwotfQotCi1mdW5jdGlvbiBzaG91bGRIYXZlQ29uc3RydWN0b3IoZXhw
cmVzc2lvbiwgY29uc3RydWN0b3JOYW1lKQotewotICAgIHNob3VsZEJlVHJ1ZShleHByZXNzaW9u
ICsgIiBpbnN0YW5jZW9mICIgKyBjb25zdHJ1Y3Rvck5hbWUpOwotICAgIHNob3VsZEJlVHJ1ZShl
eHByZXNzaW9uICsgIi5jb25zdHJ1Y3RvciA9PT0gIiArIGNvbnN0cnVjdG9yTmFtZSk7Ci0gICAg
c2hvdWxkQmVUcnVlKGV4cHJlc3Npb24gKyAiLl9fcHJvdG9fXyA9PT0gIiArIGNvbnN0cnVjdG9y
TmFtZSArICIucHJvdG90eXBlIik7Ci19Ci0KLS8vIE5lZWQgdG8gcmVtb3ZlIHRoZSBiYXNlIFVS
TCB0byBhdm9pZCBoYXZpbmcgbG9jYWwgcGF0aHMgaW4gdGhlIGV4cGVjdGVkIHJlc3VsdHMuCi1m
dW5jdGlvbiByZW1vdmVCYXNlVVJMKHNyYykgCi17Ci0gICAgdmFyIHVybFJlZ2V4cCA9IC91cmxc
KChbXlwpXSopXCkvZzsKLSAgICByZXR1cm4gc3JjLnJlcGxhY2UodXJsUmVnZXhwLCBmdW5jdGlv
bihtYXRjaCwgdXJsKSB7Ci0gICAgICAgIHJldHVybiAidXJsKCIgKyB1cmwuc3Vic3RyKHVybC5s
YXN0SW5kZXhPZigiLyIpICsgMSkgKyAiKSI7Ci0gICAgfSk7Ci19Ci0KLS8vIENvbW1vbiBzZXR1
cCBmb3IgcGFyc2luZyB0ZXN0cy4KLQotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgd2lu
ZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJF
bmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2Uo
IldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLXZhciBzdHlsZUVsZW1lbnQgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChz
dHlsZUVsZW1lbnQpOwotdmFyIHN0eWxlc2hlZXQgPSBzdHlsZUVsZW1lbnQuc2hlZXQ7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0
ZXItcHJvcGVydHktY29tcHV0ZWQtc3R5bGUuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
c2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcHJvcGVydHktY29tcHV0ZWQtc3R5bGUuanMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZhZTMwYzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNv
bXB1dGVkLXN0eWxlLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTk3ICswLDAgQEAKLWRlc2NyaXB0
aW9uKCJUZXN0cyB0aGUgY29tcHV0ZWQgc3R5bGUgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9uIG9m
IHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1ND
dXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLWZ1bmN0aW9uIGpz
V3JhcHBlckNsYXNzKG5vZGUpCi17Ci0gICAgaWYgKCFub2RlKQotICAgICAgICByZXR1cm4gIltu
dWxsXSI7Ci0gICAgdmFyIHN0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuYXBwbHko
bm9kZSk7Ci0gICAgcmV0dXJuIHN0cmluZy5zdWJzdHIoOCwgc3RyaW5nLmxlbmd0aCAtIDkpOwot
fQotCi0vLyBOZWVkIHRvIHJlbW92ZSB0aGUgYmFzZSBVUkwgdG8gYXZvaWQgaGF2aW5nIGxvY2Fs
IHBhdGhzIGluIHRoZSBleHBlY3RlZCByZXN1bHRzLgotZnVuY3Rpb24gcmVtb3ZlQmFzZVVSTChz
cmMpIHsKLSAgICB2YXIgdXJsUmVnZXhwID0gL3VybFwoKFteXCldKilcKS9nOwotICAgIHJldHVy
biBzcmMucmVwbGFjZSh1cmxSZWdleHAsIGZ1bmN0aW9uKG1hdGNoLCB1cmwpIHsKLSAgICAgICAg
cmV0dXJuICJ1cmwoIiArIHVybC5zdWJzdHIodXJsLmxhc3RJbmRleE9mKCIvIikgKyAxKSArICIp
IjsKLSAgICB9KTsKLX0KLQotZnVuY3Rpb24gc2hvdWxkQmVUeXBlKGV4cHJlc3Npb24sIGNsYXNz
TmFtZSwgcHJvdG90eXBlTmFtZSwgY29uc3RydWN0b3JOYW1lKQotewotICAgIGlmICghcHJvdG90
eXBlTmFtZSkKLSAgICAgICAgcHJvdG90eXBlTmFtZSA9IGNsYXNzTmFtZSArICJQcm90b3R5cGUi
OwotICAgIGlmICghY29uc3RydWN0b3JOYW1lKQotICAgICAgICBjb25zdHJ1Y3Rvck5hbWUgPSBj
bGFzc05hbWUgKyAiQ29uc3RydWN0b3IiOwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygi
ICsgZXhwcmVzc2lvbiArICIpIiwgIiciICsgY2xhc3NOYW1lICsgIiciKTsKLSAgICBzaG91bGRC
ZSgianNXcmFwcGVyQ2xhc3MoIiArIGV4cHJlc3Npb24gKyAiLl9fcHJvdG9fXykiLCAiJyIgKyBw
cm90b3R5cGVOYW1lICsgIiciKTsKLSAgICBzaG91bGRCZSgianNXcmFwcGVyQ2xhc3MoIiArIGV4
cHJlc3Npb24gKyAiLmNvbnN0cnVjdG9yKSIsICInIiArIGNvbnN0cnVjdG9yTmFtZSArICInIik7
Ci19Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRv
IHNlZSB0aGVtLgotdmFyIHN0eWxlc2hlZXQsIGNzc1J1bGUsIGRlY2xhcmF0aW9uLCBmaWx0ZXJS
dWxlLCBzdWJSdWxlOwotdmFyIHN0eWxlRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
InN0eWxlIik7Ci1kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHN0eWxlRWxlbWVudCk7Ci1zdHls
ZXNoZWV0ID0gc3R5bGVFbGVtZW50LnNoZWV0OwotCi0vLyBXZSBuZWVkIGEgZml4ZWQgd2lkdGgv
aGVpZ2h0IGZvciB0aGUgb2JqZWN0LgotdmFyIG9iamVjdFRvQ2hlY2sgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJkaXYiKTsKLW9iamVjdFRvQ2hlY2suY2xhc3NOYW1lID0gIm9iamVjdFRvQ2hl
Y2siOwotb2JqZWN0VG9DaGVjay5zdHlsZS53aWR0aCA9ICI1MDBweCI7Ci1vYmplY3RUb0NoZWNr
LnN0eWxlLmhlaWdodCA9ICI2MDBweCI7Ci1kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG9iamVj
dFRvQ2hlY2spOwotCi1mdW5jdGlvbiB0ZXN0RmlsdGVyUnVsZShkZXNjcmlwdGlvbiwgcnVsZSwg
ZXhwZWN0ZWRWYWx1ZSwgZXhwZWN0ZWRUeXBlcywgZXhwZWN0ZWRUZXh0cykKLXsKLSAgICBkZWJ1
ZygiIik7Ci0gICAgZGVidWcoZGVzY3JpcHRpb24gKyAiIDogIiArIHJ1bGUpOwotCi0gICAgc3R5
bGVzaGVldC5pbnNlcnRSdWxlKCIub2JqZWN0VG9DaGVjayB7IC13ZWJraXQtZmlsdGVyOiAiICsg
cnVsZSArICI7IH0iLCAwKTsKLQotICAgIGZpbHRlclN0eWxlID0gd2luZG93LmdldENvbXB1dGVk
U3R5bGUob2JqZWN0VG9DaGVjayk7Ci0gICAgCi0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwo
ZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkiLCAiJyIgKyBl
eHBlY3RlZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclJ1bGUgPSBmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCctd2Via2l0LWZpbHRlcicpOwotICAgIHNob3VsZEJlVHlwZSgiZmls
dGVyUnVsZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIGlmICghZXhwZWN0ZWRUeXBlcykgewot
ICAgICAgICBleHBlY3RlZFR5cGVzID0gWyJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTSJdOwotICAgICAgICBleHBlY3RlZFRleHRzID0gW2V4cGVjdGVkVmFsdWVdOwotICAg
IH0KLSAgICAKLSAgICBzaG91bGRCZSgiZmlsdGVyUnVsZS5sZW5ndGgiLCAiIiArIGV4cGVjdGVk
VHlwZXMubGVuZ3RoKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChmaWx0ZXJSdWxlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUeXBlcy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViUnVsZSA9IGZpbHRlclJ1bGVb
aV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViUnVsZS5vcGVyYXRpb25UeXBlIiwgZXhwZWN0
ZWRUeXBlc1tpXSk7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIiwgIiciICsgZXhwZWN0ZWRUZXh0c1tpXSArICInIik7Ci0gICAgICAgIH0KLSAg
ICB9Ci0gICAgCi0gICAgc3R5bGVzaGVldC5kZWxldGVSdWxlKDApOwotfQotCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciIsCi0gICAgImN1c3RvbSh1cmwodmVydGV4
LnNoYWRlcikpIiwgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMSAxKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZnJhZ21lbnQgc2hhZGVyIiwKLSAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIiwgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBib3RoIHNoYWRl
cnMiLAotICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVudC5zaGFkZXIp
KSIsICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEp
Iik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24iLAotICAgICJj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKSIsICJjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKSIpOwotCi12YXIg
YmxlbmRNb2RlcyA9IFsibm9ybWFsIiwgIm11bHRpcGx5IiwgInNjcmVlbiIsICJvdmVybGF5Iiwg
ImRhcmtlbiIsICJsaWdodGVuIiwgImNvbG9yLWRvZGdlIiwKLSAgICAgICAgICAgICAgICAgICJj
b2xvci1idXJuIiwgImhhcmQtbGlnaHQiLCAic29mdC1saWdodCIsICJkaWZmZXJlbmNlIiwgImV4
Y2x1c2lvbiIsICJodWUiLAotICAgICAgICAgICAgICAgICAgInNhdHVyYXRpb24iLCAiY29sb3Ii
LCAibHVtaW5vc2l0eSJdOwotZm9yICh2YXIgaSA9IDA7IGkgPCBibGVuZE1vZGVzLmxlbmd0aDsg
aSsrKSB7Ci0gICAgdmFyIGJsZW5kTW9kZSA9IGJsZW5kTW9kZXNbaV07Ci0gICAgdGVzdEZpbHRl
clJ1bGUoIkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSAiICsgYmxlbmRN
b2RlLAotICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpICIgKyBi
bGVuZE1vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpICIg
KyBibGVuZE1vZGUgKyAiIHNvdXJjZS1hdG9wKSwgMSAxKSIpOwotfQotCi12YXIgYWxwaGFDb21w
b3NpdGluZ01vZGVzID0gWyJjbGVhciIsICJjb3B5IiwgInNvdXJjZS1vdmVyIiwgImRlc3RpbmF0
aW9uLW92ZXIiLCAic291cmNlLWluIiwgImRlc3RpbmF0aW9uLWluIiwKLSAgICAgICAgInNvdXJj
ZS1vdXQiLCAiZGVzdGluYXRpb24tb3V0IiwgInNvdXJjZS1hdG9wIiwgImRlc3RpbmF0aW9uLWF0
b3AiLCAieG9yIl07Ci1mb3IgKHZhciBpID0gMDsgaSA8IGFscGhhQ29tcG9zaXRpbmdNb2Rlcy5s
ZW5ndGg7IGkrKykgewotICAgIHZhciBhbHBoYUNvbXBvc2l0aW5nTW9kZSA9IGFscGhhQ29tcG9z
aXRpbmdNb2Rlc1tpXTsKLSAgICB0ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlICIgKyBhbHBoYUNvbXBvc2l0aW5nTW9kZSwK
LSAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYWxwaGFD
b21wb3NpdGluZ01vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIG5vcm1hbCAiICsgYWxwaGFDb21wb3NpdGluZ01vZGUgKyAiKSwgMSAxKSIpOwotfQotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZp
cnN0LCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNlY29uZCIsCi0gICAgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpIiwgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhciksIDEgMSkiKTsKLQotdGVzdEZp
bHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcg
bW9kZSBmaXJzdCwgYmxlbmQgbW9kZSBzZWNvbmQiLAotICAgICJjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgY2xlYXIgbXVsdGlwbHkpKSIsICJjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkgY2xlYXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJS
dWxlKCJDdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIGFuZCBtaXggZnVuY3Rpb24iLAotICAgICJj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIiwgImN1
c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBz
b3VyY2UtYXRvcCksIDEgMSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1peCBm
dW5jdGlvbiBhbmQgbWVzaCBzaXplIiwKLSAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpKSwgMTApIiwgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBu
b3JtYWwgc291cmNlLWF0b3ApLCAxMCAxMCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3
aXRoIG1lc2ggc2l6ZSIsCi0gICAgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlciksIDEwKSIsICJj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG5vbmUsIDEwIDEwKSIpOwotCi10ZXN0RmlsdGVyUnVs
ZSgiQ3VzdG9tIHdpdGggYm90aCBtZXNoIHNpemVzIiwKLSAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIDEwIDIwKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgMTAgMjApIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtZXNoIHNpemUiLAot
ICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpLCAxMCkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSBub25lLCAxMCAxMCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGJv
dGggbWVzaCBzaXplcyIsCi0gICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAx
MCAyMCkiLCAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZGV0YWNoZWQgbWVzaCIsCi0gICAgImN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRhY2hlZCkiLCAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIDEgMSBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIGRldGFjaGVkIGFuZCBtZXNoIHNpemUiLAotICAgICJjdXN0b20obm9uZSB1cmwoZnJh
Z21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpIiwgImN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3
aXRoIGRlZmF1bHQgZmlsdGVyLWJveCIsCi0gICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggaW50ZWdlciBwYXJhbWV0ZXJzIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxIDEsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpIik7Ci0K
LXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBmbG9hdCBwYXJhbWV0ZXJzIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMS4xLCBwMiAyLjIgMy4z
LCBwMyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgMS4xLCBwMiAyLjIgMy4zLCBw
MyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgi
Q3VzdG9tIHdpdGggdHJhbnNmb3JtIHRyYW5zbGF0ZSBwYXJhbWV0ZXIiLAotICAgICAgICAgICAg
ImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBw
eCkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAx
LCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMTAsIDEwKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1
c3RvbSB3aXRoIG11bHRpcGxlIHRyYW5zZm9ybSBwYXJhbWV0ZXJzIiwKLSAgICAgICAgICAgICJj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgdHJhbnNsYXRlKDEwcHgsIDEwcHgp
LCBwMiBzY2FsZSgyKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEsIHAxIG1hdHJpeCgxLCAwLCAwLCAxLCAxMCwgMTApLCBwMiBtYXRyaXgoMiwg
MCwgMCwgMiwgMCwgMCkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtdWx0aXBs
ZSB0cmFuc2Zvcm1zIHNpbmdsZSBwYXJhbWV0ZXIiLAotICAgICAgICAgICAgImN1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBweCkgc2NhbGUoMikp
IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBw
MSBtYXRyaXgoMiwgMCwgMCwgMiwgMTAsIDEwKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIHBlcmNlbnQgdHJhbnNmb3JtIHBhcmFtZXRlciIsCi0gICAgICAgICAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIHRyYW5zbGF0ZSg1MCUsIDUwJSkpIiwKLSAg
ICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRy
aXgoMSwgMCwgMCwgMSwgMjUwLCAzMDApKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdp
dGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyIsCi0gICAgICAgICAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1
LCBwNCA0IDUgNiA3KSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiTXVsdGlwbGUgd2l0aCBmcmFnbWVudCBzaGFkZXIiLAotICAgICJncmF5
c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsICJncmF5
c2NhbGUoMSkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSkgc2VwaWEoMSki
LAotICAgIFsiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUiLAotICAg
ICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTSIsCi0gICAgIldlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfU0VQSUEiXSwKLSAgICBbImdyYXlzY2FsZSgxKSIsCi0g
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpIiwKLSAgICAic2VwaWEo
MSkiXSk7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2Yg
dGhyZWUgdmFsdWVzIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgYTEgYXJyYXkoMSwgMiwgMykpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLCAyLCAzKSkiKTsKLQotdGVzdEZpbHRl
clJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFkZSB1cCBvZiB0aHJlZSBmbG9hdGluZyBwb2lu
dCB2YWx1ZXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCBhMSBhcnJheSgxLjYxODAsIC0yLjcxODIsIDMuMTQxNSkpIiwKLSAgICAgICAgICAgICJjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLjYxOCwgLTIuNzE4
MiwgMy4xNDE1KSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFk
ZSB1cCBvZiBzZXZlcmFsIGZsb2F0aW5nIHBvaW50IGFuZCBpbnRlZ2VyIHZhbHVlcyIsCi0gICAg
ICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEuNjE4
MCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUg
dXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMS42MTgsIDEsIC0yLjcxODIsIDAu
MSwgMy4xNDE1KSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFk
ZSB1cCBvZiAyNDcgZGlmZmVyZW50IGZsb2F0aW5nIHBvaW50IHZhbHVlcyIsCi0gICAgICAgICAg
ICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDYuMDAsIDM4LjU4
LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEs
IDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAy
MS45NCwgNjIuNzAsIDc3Ljk2LCA2Ny4yNywgMi43NSwgMjguMTYsIDguODgsIDExLjYxLCAzNC44
OSwgNDUuNzUsIDU0LjU1LCAzNS4wNCwgNi4xMywgNjkuNjgsIDgxLjIxLCA0OS40NCwgNTQuNzQs
IDI2Ljc0LCA5MS40OSwgNjguMjAsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44Nywg
NzEuNzMsIDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAu
NDgsIDgxLjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4y
NiwgMzQuNjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUs
IDM1LjAyLCAzOS4wMCwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwg
MjcuNzIsIDI4LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5
OC40NSwgODcuNTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMx
LjczLCAyLjkwLCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIs
IDUzLjk2LCAzNS4wNiwgNjcuNTAsIDc2LjYyLCAzNS4wMiwgMS42MiwgMTMuMDUsIDMzLjU5LCAy
Ni44OSwgMzYuOTQsIDc0LjEzLCA5NS4wOSwgNTYuODcsIDQ2LjAxLCAxMS45NCwgMTIuOTIsIDQ4
Ljg4LCAxMS4wMywgMjQuODAsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAu
MzUsIDQxLjEwLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUwLCA4OC40MSwgOTAuMzQs
IDk3LjYyLCA1OC43MCwgMjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwg
OTEuMjIsIDc4LjIxLCA2Mi4zMCwgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5
Ny40MiwgOTYuNDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIwLCAyNi42NSwgNzgu
MzksIDk1LjI2LCA2Ni44MCwgMzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3
LCA2MS4wMSwgOTUuNjgsIDguNTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNDAsIDEyLjM1LCA5
OS4zOSwgNS44MCwgNjguMTAsIDczLjg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4w
OCwgNTQuNDUsIDg3LjY0LCAzNi4xNCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQw
LCA1LjkwLCAxNS43MCwgMTAuODgsIDU1LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywg
NjAuMzAsIDQuMzIsIDcuMDUsIDMuMzQsIDkuODcsIDY0LjUxLCA0LjYwLCA1NC4xNiwgNDguODAs
IDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgsIDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5
My43MCwgMjMuNzksIDg5LjU3LCAxNC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5
LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcu
NzUsIDQxLjY1LCA2Mi4zNSwgOTAuNDAsIDQwLjc3LCA1My45MywgODAuMjMsIDg0LjQ5LCAyMC4x
OCwgNDUuMzYsIDI2LjAyLCA5My43MiwgNjUuNTQsIDMyLjg2KSkiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDYsIDM4LjU4LCA0
MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEsIDk5
LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAyMS45
NCwgNjIuNywgNzcuOTYsIDY3LjI3LCAyLjc1LCAyOC4xNiwgOC44OCwgMTEuNjEsIDM0Ljg5LCA0
NS43NSwgNTQuNTUsIDM1LjA0LCA2LjEzLCA2OS42OCwgODEuMjEsIDQ5LjQ0LCA1NC43NCwgMjYu
NzQsIDkxLjQ5LCA2OC4yLCA4NC4wNSwgNjUuODEsIDU3Ljg5LCA3My4yMiwgMTMuODcsIDcxLjcz
LCAxOC42MSwgOC41NCwgOS43OSwgMjguMDUsIDE0LjExLCA2OS45MywgNDcuMTksIDEwLjQ4LCA4
MS4zNSwgMzcuMTUsIDE5LjI5LCAxNC45OCwgMzIuNTQsIDk4Ljk2LCA2OS4zNywgOTIuMjYsIDM0
LjY0LCA2Ny40MywgNzEuOTIsIDQ1LjUyLCA5LjIyLCA0MS45NiwgMzEuMjYsIDkyLjY1LCAzNS4w
MiwgMzksIDc2Ljc2LCAyOS4zMywgMjIuOTMsIDgwLjY1LCA3MC43OCwgNDIuOTQsIDI3LjcyLCAy
OC4xOSwgNzUuMTUsIDE4LjE0LCA4OS43MSwgOTUuMzgsIDU0LjUxLCAzNi45MywgOTguNDUsIDg3
LjU4LCA0NC41MSwgNzEuNzMsIDc1LjcxLCA3MC40MywgNzguNTEsIDgyLjE5LCAzMS43MywgMi45
LCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIsIDUzLjk2LCAz
NS4wNiwgNjcuNSwgNzYuNjIsIDM1LjAyLCAxLjYyLCAxMy4wNSwgMzMuNTksIDI2Ljg5LCAzNi45
NCwgNzQuMTMsIDk1LjA5LCA1Ni44NywgNDYuMDEsIDExLjk0LCAxMi45MiwgNDguODgsIDExLjAz
LCAyNC44LCA2OC4wNiwgMTkuODMsIDEyLjk4LCA0MS41NiwgNjIuMDMsIDgwLjM1LCA0MS4xLCA1
LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUsIDg4LjQxLCA5MC4zNCwgOTcuNjIsIDU4Ljcs
IDIzLjYyLCAxMy4wMywgODUuNDEsIDI5LjczLCAzMC4yMSwgNTkuMjUsIDkxLjIyLCA3OC4yMSwg
NjIuMywgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5Ny40MiwgOTYuNDIsIDM4
LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIsIDI2LjY1LCA3OC4zOSwgOTUuMjYsIDY2Ljgs
IDM0LjQxLCAxMC42OSwgOTQuNDMsIDcxLjY5LCA0LjU4LCAyMy44NywgNjEuMDEsIDk1LjY4LCA4
LjUxLCAxNC45MiwgMTYuMjcsIDMwLjQxLCAxLjQsIDEyLjM1LCA5OS4zOSwgNS44LCA2OC4xLCA3
My44NywgMjguMzYsIDI0Ljk4LCA3Ny41OCwgOC43MywgMzQuMDgsIDU0LjQ1LCA4Ny42NCwgMzYu
MTQsIDc0LjY4LCAzOC4wNCwgNTYuNTQsIDQ2LjQyLCAxMi40LCA1LjksIDE1LjcsIDEwLjg4LCA1
NS44MiwgODQuNjYsIDc1Ljc0LCA4Ny45MiwgNTkuMDMsIDYwLjMsIDQuMzIsIDcuMDUsIDMuMzQs
IDkuODcsIDY0LjUxLCA0LjYsIDU0LjE2LCA0OC44LCA0Ni45MywgNS44NCwgOTAuMzQsIDc1LjQ4
LCAzMi41OSwgMjkuNjUsIDk0LjU3LCAyOC4yMiwgOTMuNywgMjMuNzksIDg5LjU3LCAxNC44NCwg
NzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0
Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcuNzUsIDQxLjY1LCA2Mi4zNSwgOTAuNCwgNDAu
NzcsIDUzLjkzLCA4MC4yMywgODQuNDksIDIwLjE4LCA0NS4zNiwgMjYuMDIsIDkzLjcyLCA2NS41
NCwgMzIuODYpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdHdvIGFycmF5KCkg
bWFkZSB1cCBvZiB0aHJlZSBhbmQgc2l4IHZhbHVlcyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEsIDIsIDMpLCBhMiBhcnJheSgxLCAy
LCAzLCA0LCA1LCA2KSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEsIGExIGFycmF5KDEsIDIsIDMpLCBhMiBhcnJheSgxLCAyLCAzLCA0LCA1LCA2
KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMv
Y3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuanMgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1p
bnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZGM4M2Y3Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRl
ci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxMDcgKzAs
MCBAQAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgY3VzdG9tKCkgZnVuY3Rpb24g
b2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJl
IGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBjc3NSdWxlLCBk
ZWNsYXJhdGlvbjsKLQotZnVuY3Rpb24gdGVzdEludmFsaWRGaWx0ZXJSdWxlKGRlc2NyaXB0aW9u
LCBydWxlKQotewotICAgIGRlYnVnKCIiKTsKLSAgICBkZWJ1ZyhkZXNjcmlwdGlvbiArICIgOiAi
ICsgcnVsZSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoImJvZHkgeyAtd2Via2l0LWZp
bHRlcjogIiArIHJ1bGUgKyAiOyB9IiwgMCk7Ci0gICAgY3NzUnVsZSA9IHN0eWxlc2hlZXQuY3Nz
UnVsZXMuaXRlbSgwKTsKLSAgCi0gICAgc2hvdWxkQmUoImNzc1J1bGUudHlwZSIsICIxIik7Ci0K
LSAgICBkZWNsYXJhdGlvbiA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUoImRlY2xhcmF0
aW9uLmxlbmd0aCIsICIwIik7Ci0gICAgc2hvdWxkQmUoImRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykiLCAibnVsbCIpOwotfQotCi10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIkVtcHR5IGZ1bmN0aW9uIiwgImN1c3RvbSgpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIk5vIHZhbHVlcyAxIiwgImN1c3RvbSgsKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJO
byB2YWx1ZXMgMiIsICJjdXN0b20oLCwpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9v
IG1hbnkgc2hhZGVycyAxIiwgImN1c3RvbSh1cmwoc2hhZGVyMSkgdXJsKHNoYWRlcjIpIHVybChz
aGFkZXIyKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1hbnkgc2hhZGVycyAyIiwg
ImN1c3RvbShub25lIG5vbmUgbm9uZSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1h
bnkgc2hhZGVycyAzIiwgImN1c3RvbShub25lIHVybChzaGFkZXIxKSB1cmwoc2hhZGVyMikgdXJs
KHNoYWRlcjIpKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiBhcyB2
ZXJ0ZXggc2hhZGVyIiwgImN1c3RvbShtaXgodXJsKHNoYWRlcikpKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24gd2l0aCB3cm9uZyBuYW1lIiwgImN1c3RvbShub25lIGZu
KHVybChzaGFkZXIpKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdp
dGggMCBhcmdzIiwgImN1c3RvbShub25lIG1peCgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxl
KCJNaXggZnVuY3Rpb24gd2l0aCBmaXJzdCBhcmcgbm90IGEgVVJJIiwgImN1c3RvbShub25lIG1p
eChub25lKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggc2Vj
b25kIGFyZyBub3QgYSBibGVuZCBtb2RlIG9yIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUiLCAiY3Vz
dG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJN
aXggZnVuY3Rpb24gd2l0aCB0aGlyZCBhcmcgbm90IGEgYmxlbmQgbW9kZSBvciBhbHBoYSBjb21w
b3NpdGluZyBtb2RlIiwgImN1c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSBub3JtYWwgMCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIHR3byBibGVuZCBtb2Rl
cyIsICJjdXN0b20obm9uZSBtaXgodXJsKHNoYWRlcikgbXVsdGlwbHkgc2NyZWVuKSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggdHdvIGFscGhhIGNvbXBvc2l0
aW5nIG1vZGVzIiwgImN1c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSBzb3VyY2Utb3ZlciBkZXN0
aW5hdGlvbi1vdmVyKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdp
dGggYWxwaGEgY29tcG9zaXRpbmcgbW9kZSAncGx1cy1kYXJrZXInLCB3aGljaCBzaG91bGQgb25s
eSBhcHBseSB0byAtd2Via2l0LWJhY2tncm91bmQtY29tcG9zaXRlIiwgImN1c3RvbShub25lIG1p
eCh1cmwoc2hhZGVyKSBwbHVzLWRhcmtlcikpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1p
eCBmdW5jdGlvbiB3aXRoIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgJ3BsdXMtbGlnaHRlcicsIHdo
aWNoIHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1jb21wb3NpdGUiLCAi
Y3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIHBsdXMtbGlnaHRlcikpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgJ2hp
Z2hsaWdodCcsIHdoaWNoIHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1j
b21wb3NpdGUiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIGhpZ2hsaWdodCkpIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIDQgYXJncyIsICJjdXN0b20o
bm9uZSBtaXgodXJsKHNoYWRlcikgbXVsdGlwbHkgY2xlYXIgbm9ybWFsKSkiKTsKLXRlc3RJbnZh
bGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggY29tbWEgc2VwYXJhdG9ycyIsICJjdXN0
b20obm9uZSBtaXgodXJsKHNoYWRlciksIG11bHRpcGx5LCBjbGVhcikpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIGNvbW1hIHRlcm1pbmF0b3IiLCAiY3VzdG9t
KG5vbmUgbWl4KHVybChzaGFkZXIpLCBtdWx0aXBseSBjbGVhciwpKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24gd2l0aCBvbmUgY29tbWEiLCAiY3VzdG9tKG5vbmUgbWl4
KCwpKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHNoYWRlciIsICJjdXN0b20obm9u
ZSwgMTAgMjApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IG1lc2ggc2l6ZXMi
LCAiY3VzdG9tKG5vbmUsIDEwIDIwIDMwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9u
ZyBtZXNoLWJveCB0eXBlIC0gJ3BhZGRpbmcnIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgcGFkZGlu
ZykiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiV3JvbmcgbWVzaC1ib3ggdHlwZSAtICdub25l
JyIsICJjdXN0b20odXJsKHNoYWRlciksIG5vbmUpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUo
Ik1vcmUgbWVzaC1ib3ggdHlwZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBwYWRkaW5nLWJveCBm
aWx0ZXItYm94KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBvcmRlciBmb3IgbWVz
aC1kZXRhY2hlZCBhbmQgbWVzaC1ib3ggdHlwZSIsICJjdXN0b20odXJsKHNoYWRlciksIGRldGFj
aGVkIHBhZGRpbmctYm94KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBvcmRlciBm
b3IgbWVzaCBzaXplIGFuZCBtZXNoLWJveCB0eXBlIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgcGFk
ZGluZy1ib3ggMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IG1lc2ggc2l6
ZXMgd2l0aCBtZXNoLWJveCB0eXBlIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgMjAgMzAgNDAgcGFk
ZGluZy1ib3gpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgY29tbWEgYmV0d2Vl
biBtZXNoLXNpemVzIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgMjAsIDQwIHBhZGRpbmctYm94KSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIGNvbW1hIGJlZm9yZSBtZXNoIHR5cGUi
LCAiY3VzdG9tKHVybChzaGFkZXIpLCAyMCwgcGFkZGluZy1ib3gpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIk5vIG1lc2ggcGFyYW1ldGVyIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBtZXNoIHR5cGUgLSBjb3JyZWN0IGlkZW50aWZp
ZXIgaXMgJ2RldGFjaGVkJyIsICJjdXN0b20odXJsKHNoYWRlciksIGRldGFjaCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTm8gbWVzaCBzaXplIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgLCBw
MSAyKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5lZ2F0aXZlIHNpbmdsZSBtZXNoIHNp
emUiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAtMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUo
Ik5lZ2F0aXZlIGJvdGggbWVzaCBzaXplcyIsICJjdXN0b20odXJsKHNoYWRlciksIC0xMCAtMTAp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSBtZXNoIHNp
emUiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAtMTAgMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIlplcm8gc2luZ2xlIG1lc2ggc2l6ZSIsICJjdXN0b20odXJsKHNoYWRlciksIDApIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlplcm8gYm90aCBtZXNoIHNpemVzIiwgImN1c3RvbSh1cmwo
c2hhZGVyKSwgMCAwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCIwIGFuZCAxIG1lc2ggc2l6
ZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAwIDEpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiVG9vIG1hbnkgcGFyYW1ldGVyIHZhbHVlcyIsICJjdXN0b20odXJsKHNoYWRlciksIHAxIDEg
MiAzIDQgNSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCBwYXJhbWV0ZXIgdHlw
ZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBwMSAxLjAgMi4wICd0ZXh0JykiKTsKLQotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgMSIsICJjdXN0b20odXJsKHNoYWRl
ciksIHAxKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgMiIs
ICJjdXN0b20odXJsKHNoYWRlciksIHAxLCBwMiwgcDMpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiT25lIGludmFsaWQgdHJhbnNmb3JtIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBz
b21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk11
bHRpcGxlIGludmFsaWQgdHJhbnNmb3JtcyIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29t
ZUlkIGludmFsaWRfcm90YXRlKDBkZWcpIGludmFsaWRfcGVyc3BlY3RpdmUoMCkpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgdHJhbnNmb3JtIGJldHdlZW4gdmFsaWQgb25lcyIs
ICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIHJvdGF0ZSgwZGVnKSBpbnZhbGlkX3Jv
dGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFs
aWQgdHJhbnNmb3JtIGJldHdlZW4gaW52YWxpZCBvbmVzIiwgImN1c3RvbShub25lIHVybChzaGFk
ZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgYW5vdGhlcl9p
bnZhbGlkKDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gd2l0
aG91dCBsZWFkaW5nIGNvbW1hIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBwZXJz
cGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFsaWQgdHJhbnNmb3JtIHdp
dGggdHJhaWxpbmcgY29tbWEiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCBwZXJz
cGVjdGl2ZSgwKSwpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3
aXRoIHRyYWlsaW5nIGNvbW1hIGFuZCB3aXRob3V0IGxlYWRpbmcgY29tbWEiLCAiY3VzdG9tKG5v
bmUgdXJsKHNoYWRlcikgc29tZUlkIHBlcnNwZWN0aXZlKDApLCkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFpbGluZyBjb21tYSIsICJjdXN0b20o
bm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIGludmFsaWRfcm90YXRlKDBkZWcpLCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aG91dCBsZWFkaW5nIGNvbW1h
IiwgImN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBpbnZhbGlkX3JvdGF0ZSgwZGVnKSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgdHJhbnNmb3JtIChvbmx5IHRoZSBpZCki
LCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiRW1wdHkgdHJhbnNmb3JtICh3aXRob3V0IHRoZSBpZCkiLCAiY3VzdG9tKG5vbmUgdXJs
KHNoYWRlciksKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJFbXB0eSB0cmFuc2Zvcm0gKHR3
byBlbXB0eSBjb21tYXMpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCwpIik7Ci10ZXN0SW52
YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3aXRoIGludmFsaWQgY2hhcmFjdGVycyIs
ICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSxzb21lSWQgcm90YXRlKDBkZWcpICouLSwpIik7Ci0K
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwo
c2hhZGVyKSwgaWQgYXJyYXkoKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiT25lIGNvbW1h
IGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KCwpKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aWxlIGNvbW1hcyBpbiBhcnJheSgpIiwgImN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJS
dWxlKCJNdWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5KCkiLCAiY3VzdG9tKG5v
bmUgdXJsKHNoYWRlciksIGlkIGFycmF5KCwsMSwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxl
KCJPbmUgY29tbWEgZm9sbG93ZWQgYnkgYSBuZWdhdGl2ZSB2YWx1ZSBpbiBhcnJheSgpIiwgImN1
c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsLTQpKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJPbmUgY29tbWEgZm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheSgpIiwgImN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIk9uZSBuZWdhdGl2ZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkiLCAi
Y3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KC00LCkpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIk9uZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkiLCAiY3Vz
dG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDQsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiQSBzZXJpZXMgb2YgY29ycmVjdCB2YWx1ZXMgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBh
cnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCAzLCA0LCkp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkEgc2VyaWVzIG9mIGNvcnJlY3QgdmFsdWVzIGZv
bGxvd2VkIGJ5IGEgbGV0dGVyIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciks
IGlkIGFycmF5KDEsIDIsIDMsIDQsIHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUd28g
Y29tbWFzIGFzIHNlcGFyYXRvciBiZXR3ZWVuIHZhbHVlcyBpbiBhcnJheSgpIiwgImN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCAsIDQpKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJMZWFkaW5nIGNvbW1hIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIGlkIGFycmF5KCwxLCAyLCAzLCA0KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiU2Vt
aWNvbG9uIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMTsgMjsgMzsgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNw
YWNlIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSwgaWQgYXJyYXkoMSAyIDMgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIHNl
cGFyYXRlZCB2YWx1ZXMgd2l0aCBjb21tYSB0ZXJtaW5hdG9yIGluIGFycmF5KCkiLCAiY3VzdG9t
KG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEgMiAzIDQsKSkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJy
YXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLCAxIDIgMyA0KSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJs
KHNoYWRlciksIGlkIGFycmF5KE5hTikpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5hTiBh
bmQgdmFsdWVzIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5
KDEsIDIsIE5hTiwgMykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgdW5pdCB2
YWx1ZSBpbiBhcnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxcHgp
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHVuaXQgdmFsdWUgaW4gYXJyYXko
KSwgc2Vjb25kIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheShub25lKSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCksIHRo
aXJkIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxZGVnKSkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCksIGF0IHRoZSBl
bmQgb2YgYSBwYXJ0aWFsbHkgdmFsaWQgdmFsdWUgbGlzdCIsICJjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMSwgMiwgMywgNHB4KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5n
LmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVy
LXByb3BlcnR5LXBhcnNpbmcuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZiYzQ4
MTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9j
dXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmcuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxODQg
KzAsMCBAQAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1c3RvbSgpIGZ1
bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotLy8gVGhlc2UgaGF2
ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgY3Nz
UnVsZSwgZGVjbGFyYXRpb24sIGZpbHRlclJ1bGUsIHN1YlJ1bGU7Ci0KLWZ1bmN0aW9uIHRlc3RG
aWx0ZXJSdWxlKGRlc2NyaXB0aW9uLCBydWxlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFR5cGVz
LCBleHBlY3RlZFRleHRzKQotewotICAgIGRlYnVnKCIiKTsKLSAgICBkZWJ1ZyhkZXNjcmlwdGlv
biArICIgOiAiICsgcnVsZSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoImJvZHkgeyAt
d2Via2l0LWZpbHRlcjogIiArIHJ1bGUgKyAiOyB9IiwgMCk7Ci0gICAgY3NzUnVsZSA9IHN0eWxl
c2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgCi0gICAgc2hvdWxkQmUoImNzc1J1bGUudHlwZSIs
ICIxIik7Ci0KLSAgICBkZWNsYXJhdGlvbiA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUo
ImRlY2xhcmF0aW9uLmxlbmd0aCIsICIxIik7Ci0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwo
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkiLCAiJyIgKyBl
eHBlY3RlZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclJ1bGUgPSBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCctd2Via2l0LWZpbHRlcicpOwotICAgIHNob3VsZEJlVHlwZSgiZmls
dGVyUnVsZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIGlmICghZXhwZWN0ZWRUeXBlcykgewot
ICAgICAgICBleHBlY3RlZFR5cGVzID0gWyJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTSJdOwotICAgICAgICBleHBlY3RlZFRleHRzID0gW2V4cGVjdGVkVmFsdWVdOwotICAg
IH0KLSAgICAKLSAgICBzaG91bGRCZSgiZmlsdGVyUnVsZS5sZW5ndGgiLCAiIiArIGV4cGVjdGVk
VHlwZXMubGVuZ3RoKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChmaWx0ZXJSdWxlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUeXBlcy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViUnVsZSA9IGZpbHRlclJ1bGVb
aV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViUnVsZS5vcGVyYXRpb25UeXBlIiwgZXhwZWN0
ZWRUeXBlc1tpXSk7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIiwgIiciICsgZXhwZWN0ZWRUZXh0c1tpXSArICInIik7Ci0gICAgICAgIH0KLSAg
ICB9Ci19Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIiwKLSAg
ICAgICAgICAgICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpKSIsICJjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZnJhZ21lbnQg
c2hhZGVyIiwKLSAgICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
KSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiKTsKLQotdGVzdEZpbHRlclJ1
bGUoIkN1c3RvbSB3aXRoIGJvdGggc2hhZGVycyIsCi0gICAgICAgICAgICAiY3VzdG9tKHVybCh2
ZXJ0ZXguc2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIG1peCBmdW5jdGlvbiIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
KSkiKTsKLQotdmFyIGJsZW5kTW9kZXMgPSBbIm5vcm1hbCIsICJtdWx0aXBseSIsICJzY3JlZW4i
LCAib3ZlcmxheSIsICJkYXJrZW4iLCAibGlnaHRlbiIsICJjb2xvci1kb2RnZSIsCi0gICAgICAg
ICAgICAiY29sb3ItYnVybiIsICJoYXJkLWxpZ2h0IiwgInNvZnQtbGlnaHQiLCAiZGlmZmVyZW5j
ZSIsICJleGNsdXNpb24iLCAiaHVlIiwgInNhdHVyYXRpb24iLAotICAgICAgICAgICAgImNvbG9y
IiwgImx1bWlub3NpdHkiXTsKLWZvciAodmFyIGkgPSAwOyBpIDwgYmxlbmRNb2Rlcy5sZW5ndGg7
IGkrKykgewotICAgIHZhciBibGVuZE1vZGUgPSBibGVuZE1vZGVzW2ldOwotICAgIHRlc3RGaWx0
ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgIiArIGJsZW5k
TW9kZSwKLSAgICAgICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpICIgKyBibGVuZE1vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpICIgKyBibGVuZE1vZGUgKyAiKSkiKTsKLX0KLQotdmFyIGFscGhhQ29tcG9zaXRpbmdN
b2RlcyA9IFsiY2xlYXIiLCAiY29weSIsICJzb3VyY2Utb3ZlciIsICJkZXN0aW5hdGlvbi1vdmVy
IiwgInNvdXJjZS1pbiIsICJkZXN0aW5hdGlvbi1pbiIsCi0gICAgICAgICAgICAic291cmNlLW91
dCIsICJkZXN0aW5hdGlvbi1vdXQiLCAic291cmNlLWF0b3AiLCAiZGVzdGluYXRpb24tYXRvcCIs
ICJ4b3IiXTsKLWZvciAodmFyIGkgPSAwOyBpIDwgYWxwaGFDb21wb3NpdGluZ01vZGVzLmxlbmd0
aDsgaSsrKSB7Ci0gICAgdmFyIGFscGhhQ29tcG9zaXRpbmdNb2RlID0gYWxwaGFDb21wb3NpdGlu
Z01vZGVzW2ldOwotICAgIHRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24g
YW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgIiArIGFscGhhQ29tcG9zaXRpbmdNb2RlLAotICAg
ICAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYWxwaGFD
b21wb3NpdGluZ01vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpICIgKyBhbHBoYUNvbXBvc2l0aW5nTW9kZSArICIpKSIpOwotfQotCi10ZXN0RmlsdGVyUnVs
ZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0LCBhbHBoYSBj
b21wb3NpdGluZyBtb2RlIHNlY29uZCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUo
IkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBmaXJz
dCwgYmxlbmQgbW9kZSBzZWNvbmQiLAotICAgICAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpIiwgImN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJD
dXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIGFuZCBtaXggZnVuY3Rpb24iLAotICAgICAgICAgICAg
ImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSkiLCAi
Y3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKSIpOwot
Ci10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGluIENBUFMiLAotICAg
ICAgICAgICAgImN1c3RvbShub25lIE1JWCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIiwgImN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJD
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIG1lc2ggc2l6ZSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSwgMTApIiwgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSksIDEwKSIpOwotICAgICAgICAgICAgCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggbWVzaCBzaXplIiwKLSAgICAgICAgICAgICJjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpLCAxMCkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApIik7Ci0K
LXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBib3RoIG1lc2ggc2l6ZXMiLAotICAgICAgICAg
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCkiLCAiY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3Vz
dG9tIHdpdGggZGV0YWNoZWQgbWVzaCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIGRldGFjaGVkKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgZGV0YWNoZWQpIik7Ci0gICAgICAgICAgICAKLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20g
d2l0aCBkZXRhY2hlZCBhbmQgbWVzaCBzaXplIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpIiwgImN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1
c3RvbSB3aXRoIG51bWJlciBwYXJhbWV0ZXJzIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyki
LAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLCBw
MiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9t
IHdpdGggZmxvYXQgcGFyYW1ldGVycyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQu
MSA1LjIgNi4zIDcuNCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCBwMSAxLjEsIHAyIDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4yIDYu
MyA3LjQpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBwYXJhbWV0ZXIgbmFtZSBz
YW1lIGFzIENTUyB2YWx1ZSBrZXl3b3JkIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEgMCAxKSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGJhY2tncm91bmQgMCAxIDAgMSkiKTsKLQot
dGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1lc2ggc2l6ZSBhbmQgbnVtYmVyIHBhcmFtZXRl
cnMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNykiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykiKTsKLQotdGVzdEZpbHRlclJ1bGUoIk11bHRpcGxlIHdpdGggZnJh
Z21lbnQgc2hhZGVyIiwKLSAgICAgICAgICAgICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsCi0gICAgICAgICAgICBbIldlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfR1JBWVNDQUxFIiwKLSAgICAgICAgICAgICJXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTSIsCi0gICAgICAgICAgICAiV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9TRVBJQSJdLAotICAgICAgICAgICAgWyJncmF5c2NhbGUoKSIsCi0g
ICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIiwKLSAgICAgICAg
ICAgICJzZXBpYSgpIl0pOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIGluIENBUFMiLAotICAg
ICAgICAgICAgIkNVU1RPTSh1cmwodmVydGV4LnNoYWRlcikpIiwgImN1c3RvbSh1cmwodmVydGV4
LnNoYWRlcikpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBvbmUgdHJhbnNmb3Jt
IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgb25lVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCBvbmVUcmFuc2Zvcm0gcm90YXRlKDBkZWcpKSIpOwotCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtcyIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJhbnNmb3JtIHJvdGF0ZSgw
ZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpKSIsCi0g
ICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUo
MHB4LCAwcHgpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdHdvIHNlcGFyYXRl
IHRyYW5zZm9ybXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCBmaXJzdFRyYW5zZm9ybSByb3RhdGUoMGRlZyksIHNlY29uZFRyYW5zZm9ybSByb3RhdGUo
MGRlZykpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
Zmlyc3RUcmFuc2Zvcm0gcm90YXRlKDBkZWcpLCBzZWNvbmRUcmFuc2Zvcm0gcm90YXRlKDBkZWcp
KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggYSBzaW5nbGUgZWxlbWVudCBhcnJh
eSgpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDAg
YXJyYXkoMSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgdDAgYXJyYXkoMSkpIik7Ci0KLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGEgc2lu
Z2xlIG5lZ2F0aXZlIGVsZW1lbnQgYXJyYXkoKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUg
dXJsKGZyYWdtZW50LnNoYWRlciksIHQxIGFycmF5KC0xLjAxKSkiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0MSBhcnJheSgtMS4wMSkpIik7Ci0KLXRl
c3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtdWx0aXBsZSBlbGVtZW50cyBhcnJheSgpIiwKLSAg
ICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDIgYXJyYXkoMSwg
MiwgMywgNCwgNSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgdDIgYXJyYXkoMSwgMiwgMywgNCwgNSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0
b20gd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXQgZWxlbWVudHMgYXJyYXkoKSIsCi0gICAgICAg
ICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQzIGFycmF5KDEsIC0yLjIs
IDMuMTQsIDAuNCwgNSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSwgdDMgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSkiKTsKLQotdGVzdEZpbHRl
clJ1bGUoIk11bHRpcGxlIGFycmF5KCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCB0NSBhcnJh
eSgxLCAyLCAzKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCB0NSBhcnJheSgxLCAyLCAzKSki
KTsKLQotLy8gRklYTUU6IFRoZSBmb2xsb3dpbmcgdGVzdHMgd2lsbCBiZSByZW1vdmVkIGFsb25n
IHdpdGggdGhlIG1lc2ggYm94IHR5cGVzIHBhcnNpbmcgY29kZS4KLS8vIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM3NzgKLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kg
LSBDdXN0b20gd2l0aCBtZXNoIGJveCBzaXplcyBhbmQgY29udGVudC1ib3giLAotICAgICAgICAg
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgY29udGVudC1ib3gpIiwK
LSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwot
Ci10ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdpdGggbWVzaCBib3ggc2l6ZXMgYW5k
IGJvcmRlci1ib3giLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxIDEgYm9yZGVyLWJveCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20g
d2l0aCBtZXNoIGJveCBzaXplcyBhbmQgcGFkZGluZy1ib3giLAotICAgICAgICAgICAgImN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgcGFkZGluZy1ib3gpIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwotCi10ZXN0Rmls
dGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdpdGggcGFydGlhbCBtZXNoIGJveCBzaXplIGFuZCBw
YWRkaW5nLWJveCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIHBhZGRpbmctYm94KSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEwKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdp
dGggcGFkZGluZy1ib3ggYW5kIGRldGFjaGVkIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcGFkZGluZy1ib3ggZGV0YWNoZWQpIiwKLSAgICAgICAgICAg
ICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0YWNoZWQpIik7Ci0KLXRlc3RG
aWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20gd2l0aCBib3RoIG1lc2gtc2l6ZXMgYW5kIHBhZGRp
bmctYm94IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
MTAgMjAgcGFkZGluZy1ib3gpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMTAgMjApIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20g
d2l0aCBtZXNoLXNpemVzLCBwYWRkaW5nLWJveCBhbmQgZGV0YWNoZWQiLAotICAgICAgICAgICAg
ImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCBwYWRkaW5nLWJveCBkZXRh
Y2hlZCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAx
MCAyMCBkZXRhY2hlZCkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9z
Y3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC5qcyBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9zY3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggYzMzOGQyNC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2VmZmVjdC1jdXN0b20tZGlzYWJsZWQuanMKKysrIC9k
ZXYvbnVsbApAQCAtMSwyNyArMCwwIEBACi1kZXNjcmlwdGlvbigiVGVzdCB0aGF0IHRoZSBjdXN0
b20oKSBmdW5jdGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkgaXMgbm90IHBhcnNl
ZCB3aGVuIENTUyBDdXN0b20gRmlsdGVyIGlzIGRpc2FibGVkLiIpOwotCi1pZiAod2luZG93LnRl
c3RSdW5uZXIpCi0gICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgZmFsc2UpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJl
IGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBzdHlsZXNoZWV0
LCBjc3NSdWxlLCBkZWNsYXJhdGlvbjsKLXZhciBzdHlsZUVsZW1lbnQgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzdHlsZUVsZW1l
bnQpOwotc3R5bGVzaGVldCA9IHN0eWxlRWxlbWVudC5zaGVldDsKLQotZnVuY3Rpb24gdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKGRlc2NyaXB0aW9uLCBydWxlKQotewotICAgIGRlYnVnKGRlc2NyaXB0
aW9uICsgIiA6ICIgKyBydWxlKTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiYm9keSB7
IC13ZWJraXQtZmlsdGVyOiAiICsgcnVsZSArICI7IH0iLCAwKTsKLSAgICBjc3NSdWxlID0gc3R5
bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAKLSAgICBzaG91bGRCZSgiY3NzUnVsZS50eXBl
IiwgIjEiKTsKLQotICAgIGRlY2xhcmF0aW9uID0gY3NzUnVsZS5zdHlsZTsKLSAgICBzaG91bGRC
ZSgiZGVjbGFyYXRpb24ubGVuZ3RoIiwgIjAiKTsKLSAgICBzaG91bGRCZSgiZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSIsICJudWxsIik7Ci19Ci0KLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciIsICJjdXN0b20odXJs
KHZlcnRleC5zaGFkZXIpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aXBsZSB3aXRo
IGZyYWdtZW50IHNoYWRlciIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSkgc2VwaWEoKSIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSkgc2VwaWEoKSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvZG9tL2dsb2Jh
bC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9k
b20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCBlOTgz
Mjg4Li4zYTdhZmExIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9kb20vZ2xvYmFsLWNvbnN0
cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9kb20v
Z2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dApAQCAtMTg4OCwxMSAr
MTg4OCw2IEBAIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdX
ZWJLaXRBbmltYXRpb25FdmVudCcpLmhhc093blByb3BlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5pbWF0aW9uRXZlbnQnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBB
U1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRp
b25FdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLnZhbHVlIGlzIFdlYktp
dENTU0ZpbHRlclJ1bGUKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNl
Ci1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NT
RmlsdGVyUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3Qu
Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS5l
bnVtZXJhYmxlIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVy
VmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZQogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclZhbHVlJykuaGFzT3du
UHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0
JykgaXMgZmFsc2UKQEAgLTE5MTMsMTEgKzE5MDgsNiBAQCBQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWF0cml4JykuaGFzT3duUHJvcGVydHko
JwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENT
U01hdHJpeCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmVudW1lcmFi
bGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdXZWJLaXRDU1NNYXRyaXgnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQotUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUn
KS52YWx1ZSBpcyBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlCi1QQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhh
c093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJykuZW51bWVyYWJsZSBpcyBmYWxz
ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENT
U01peEZ1bmN0aW9uVmFsdWUnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU1JlZ2lvblJ1bGUnKS52YWx1
ZSBpcyBXZWJLaXRDU1NSZWdpb25SdWxlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVsZScpLmhhc093blByb3BlcnR5KCdnZXQn
KSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J1dlYktpdENTU1JlZ2lvblJ1bGUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy1tb3VudGFpbmxpb24vanMvZG9tL2ds
b2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMtbW91bnRhaW5saW9uL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJp
YnV0ZXMtZXhwZWN0ZWQudHh0CmluZGV4IGNkNmU4M2IuLjg2NjY5ZTQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy1tb3VudGFpbmxpb24vanMvZG9tL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjLW1vdW50YWlubGlvbi9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4
cGVjdGVkLnR4dApAQCAtMTg5MywxMSArMTg5Myw2IEBAIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmhhc093blByb3Bl
CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5p
bWF0aW9uRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcp
LmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1Q
QVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmls
dGVyUnVsZScpLnZhbHVlIGlzIFdlYktpdENTU0ZpbHRlclJ1bGUKLVBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3du
UHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQn
KSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J1dlYktpdENTU0ZpbHRlclJ1bGUnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmNv
bmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktp
dENTU0ZpbHRlclZhbHVlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFs
dWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKQEAgLTE5MTgsMTEgKzE5MTMsNiBA
QCBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NT
TWF0cml4JykuaGFzT3duUHJvcGVydHkoJwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBp
cyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU01hdHJpeCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNYXRyaXgnKS5jb25maWd1cmFibGUg
aXMgdHJ1ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQotUEFT
UyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKLVBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlJykuZW51bWVyYWJsZSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5jb25maWd1cmFibGUg
aXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU1JlZ2lvblJ1bGUnKS52YWx1ZSBpcyBXZWJLaXRDU1NSZWdpb25SdWxlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVs
ZScpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJv
cGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU1JlZ2lvblJ1bGUnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy13azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVz
dEV4cGVjdGF0aW9ucwppbmRleCBjMDRjY2VhLi5jOTQyMDVlIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMjIsOSArMjIyLDYgQEAgZmFz
dC9kb20vU3R5bGVTaGVldC9kZXRhY2hlZC1zdHlsZXNoZWV0LXdpdGhvdXQtd3JhcHBlci5odG1s
CiAjIEFsbCBzcGF0aWFsIG5hdmlnYXRpb24gdGVzdHMgZmFpbCBvbiBNYWMgV0syCiB3ZWJraXQu
b3JnL2IvOTY0MzggZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24KIAotIyBXSzIgdGVzdHMgZmFpbCBp
bWFnZSBkaWZmCi13ZWJraXQub3JnL2IvOTY1ODAgWyBEZWJ1ZyBdIGNzczMvZmlsdGVycy9jdXN0
b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
LQogIyBDYXVzZXMgbmV4dCB0ZXN0IHRvIGNyYXNoCiB3ZWJraXQub3JnL2IvOTg5NjAgZmFzdC9w
YXJzZXIvZG9jdW1lbnQtb3Blbi1pbi11bmxvYWQuaHRtbCBbIFNraXAgXQogCkBAIC0zMjAsNyAr
MzE3LDYgQEAgd2Via2l0Lm9yZy9iLzExODkyNSBjb21wb3NpdGluZy9iYWNrZ3JvdW5kcy9maXhl
ZC1iYWNrZ3JvdW5kcy5odG1sICBbIFBhc3MgSW1hZ2UKIHdlYmtpdC5vcmcvYi8xMTg5MjUgY29t
cG9zaXRpbmcvZ2VvbWV0cnkvZml4ZWQtcG9zaXRpb24tY29tcG9zaXRlZC1wYWdlLXNjYWxlLXNt
YWxsZXItdGhhbi12aWV3cG9ydC5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJr
aXQub3JnL2IvMTE4OTI1IGNvbXBvc2l0aW5nL292ZXJsYXAtYmxlbmRpbmcvY2hpbGRyZW4tb3Bh
Y2l0eS1odWdlLmh0bWwgIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8x
MTg5MjUgY29tcG9zaXRpbmcvb3ZlcmxhcC1ibGVuZGluZy9jaGlsZHJlbi1vcGFjaXR5LW5vLW92
ZXJsYXAuaHRtbCAgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzExODky
NSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMu
aHRtbCAgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzExODkyNSBmYXN0
L2xheWVycy9uby1jbGlwcGluZy1vdmVyZmxvdy1oaWRkZW4tYWRkZWQtYWZ0ZXItdHJhbnNpdGlv
bi5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTE4OTI1IGZh
c3QvbXVsdGljb2wvbWl4ZWQtb3BhY2l0eS1maXhlZC10ZXN0Lmh0bWwgIFsgUGFzcyBJbWFnZU9u
bHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xMTg5MjUgZmFzdC9yZWdpb25zL2ZpeGVkLXBvcy1l
bGVtLWluLXJlZ2lvbi5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCkBAIC0zNDYsMjMg
KzM0Miw2IEBAIHdlYmtpdC5vcmcvYi8xMjIyMzQgc3ZnL2ZpbHRlcnMvZmlsdGVyLWN5Y2xlLmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJz
L251bGwtZWZmZWN0LWNoZWNrLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi8xMjIyMzQgZmFzdC9pbWFnZXMvcGRmLWFzLWltYWdlLXdpdGgtYW5ub3RhdGlvbnMuaHRtbCBb
IFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTIyMjM0IGZhc3QvaW1hZ2Vz
L3BkZi1hcy1pbWFnZS1jcm9wLWJveC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdl
YmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21wb3NpdGVkL2N1c3RvbS1m
aWx0ZXItYmxlbmQtbW9kZXMuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQu
b3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hLXRleC1jb29y
ZC1vcHRpb25hbC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8x
MjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5k
aXJlY3QtaW5kZXguaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2Iv
MTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS5odG1sIFsgUGFz
cyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1
cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY2hhbmdlLWJsZW5kLW1vZGUuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci5o
dG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10
eXBlLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBj
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWF0Ti5odG1sIFsgUGFzcyBJbWFnZU9u
bHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLW1lc2gtY29sdW1uLXJvdy1vcmRlci5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWls
dXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmls
dGVyLXUtbWVzaC1ib3guaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3Jn
L2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtc2l6ZS5o
dG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtdGV4dHVyZS1zaXplLmh0bWwgWyBQYXNzIElt
YWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBd
Ci13ZWJraXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11
bmF2YWlsYWJsZS12YXJ5aW5nLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0
Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LWNvbG9yLW1hdHJpeC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFj
dGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KIAogIyBU
aWxlZCBiYWNrZ3JvdW5kIGltYWdlcyB0aGF0IGludGVyc2VjdCB0aGUgdGlsZXMgYXJlIGdldHRp
bmcgd2VpcmQgZnJpbmdpbmcuCiB3ZWJraXQub3JnL2IvMTIyMjM1IGNzczMvbWFza2luZy9tYXNr
LXJlcGVhdC1zcGFjZS1ib3JkZXIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAyNTIxZDlmLi41MzIzZGQxIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucworKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNjYzLDE1ICs2
NjMsNiBAQCBmYXN0L2NhbnZhcy9jYW52YXMtcXVhZHJhdGljLXNhbWUtZW5kcG9pbnQuaHRtbAog
Y3NzMy9maWx0ZXJzL2NvbXBvc2l0ZWQtZHVyaW5nLXRyYW5zaXRpb24tbGF5ZXJ0cmVlLmh0bWwK
IHdlYmtpdC5vcmcvYi85NTYyMiBjc3MzL2ZpbHRlcnMvY29tcG9zaXRlZC1kdXJpbmctYW5pbWF0
aW9uLWxheWVydHJlZS5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAotIyAtLS0gQ3VzdG9tIEZpbHRl
cnMgLS0tCi0jIFRoZSBmb2xsb3dpbmcgNSB0ZXN0cyBhcmUgY3VycmVudGx5IHNraXBwZWQgb24g
TWFjIGZvciBzbGlnaHQgY29sb3IgZGlmZmVyZW5jZXMsCi0jIHBsZWFzZSBzZWUgdGhlIHJlbGV2
YW50IGJ1ZzogaHR0cDovL3dlYmtpdC5vcmcvYi8xMDc0ODcKLXdlYmtpdC5vcmcvYi8xMDc0ODcg
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGlu
YXRpb24tYWxwaGEuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwNzQ4NyBjc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3IuaHRt
bCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwNzQ4NyBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtbHVtaW5vc2l0eS5odG1sIFsgU2tpcCBd
Ci13ZWJraXQub3JnL2IvMTA3NDg3IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1odWUuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEw
NzQ4NyBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5k
LW1vZGUtc2F0dXJhdGlvbi5odG1sIFsgU2tpcCBdCi0KICMgLS0tIFRleHQgLS0tCiBmYXN0L2Zv
cm1zL3RleHQtY29udHJvbC1pbnRyaW5zaWMtd2lkdGhzLmh0bWwKIHBsYXRmb3JtL21hYy9mYXN0
L3RleHQvY29tYmluaW5nLWNoYXJhY3Rlci1zZXF1ZW5jZS1mYWxsYmFjay5odG1sCkBAIC0xMTUy
LDggKzExNDMsNiBAQCB3ZWJraXQub3JnL2IvMTE1MjkyIGZhc3Qvd3JpdGluZy1tb2RlL3ZlcnRp
Y2FsLWZvbnQtZmFsbGJhY2suaHRtbAogIyBGYWlscyB3aXRoIFdlYktpdDEgb25seS4KIGVkaXRp
bmcvc2VjdXJlLWlucHV0L3Jlc2V0LXN0YXRlLW9uLW5hdmlnYXRpb24uaHRtbCBbIEZhaWx1cmUg
XQogCi13ZWJraXQub3JnL2IvMTE2MjM4IGNzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZhbGxi
YWNrLXRvLXNvZnR3YXJlLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotCiB3ZWJraXQu
b3JnL2IvMTE2MjQ0IGZhc3QvZXZlbnRzL21vdXNlLWN1cnNvci1pbWFnZS1zZXQuaHRtbCBbIEZh
aWx1cmUgUGFzcyBdCiAKIHdlYmtpdC5vcmcvYi8xMTYyNDUgY2FudmFzL3BoaWxpcC90ZXN0cy8y
ZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQpAQCAt
MTI2MSwxMiArMTI1MCw2IEBAIHdlYmtpdC5vcmcvYi8xMjMyODIgY29tcG9zaXRpbmcvcmVnaW9u
cy9wcm9wYWdhdGUtcmVnaW9uLWJveC1zaGFkb3ctYm9yZGVyLXBhZGRpCiAKIHdlYmtpdC5vcmcv
Yi8xMjMyNTAgcGx1Z2lucy9kZXN0cm95LWR1cmluZy1ucHAtbmV3LW9iamVjdC13aXRoLWZhbGxi
YWNrLWNvbnRlbnQuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKLXdlYmtpdC5vcmcvYi8xMjMzNzAg
WyBNYXZlcmlja3MgXSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2NvbXBvc2l0ZWQvY3VzdG9tLWZpbHRl
ci1ibGVuZC1tb2Rlcy5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8xMjMzNzAgWyBNYXZlcmlja3MgXSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
YmxlbmQtbW9kZXMuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2Iv
MTIzMzcwIFsgTWF2ZXJpY2tzIF0gY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNs
YW1wLWNzcy1jb2xvci1tYXRyaXguaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTIzMzcwIFsgTWF2ZXJpY2tzIF0gY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sIFsgUGFzcyBJbWFn
ZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjMzNzAgWyBNYXZlcmlja3MgXSBjc3MzL2Zp
bHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMuaHRtbCBbIFBh
c3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi0KIHdlYmtpdC5vcmcvYi8xMjMzNjkgc3ZnL2Nzcy9wYXJl
bnQtc2hhZG93LW9mZnNjcmVlbi5zdmcgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi8xMjMzNjkgWyBNb3VudGFpbkxpb24gXSBzdmcvY3NzL3BhcmVudC1zaGFkb3ctb2Zmc2NyZWVu
LnN2ZyBbIFBhc3MgXQogd2Via2l0Lm9yZy9iLzEyMzM2OSBzdmcvY3NzL3Jvb3Qtc2hhZG93LW9m
ZnNjcmVlbi5zdmcgWyBJbWFnZU9ubHlGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVj
dG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCAzNGU5MjdlLi40MTYyZmYxIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3Rv
cnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0x
OTAzLDExICsxOTAzLDYgQEAgUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGds
b2JhbCwgJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykuaGFzT3duUHJvcGUKIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmhh
c093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykuZW51bWVyYWJsZSBpcyBm
YWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktp
dEFuaW1hdGlvbkV2ZW50JykuY29uZmlndXJhYmxlIGlzIHRydWUKLVBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykudmFsdWUg
aXMgV2ViS2l0Q1NTRmlsdGVyUnVsZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0Jykg
aXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdX
ZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCi1QQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVy
UnVsZScpLmVudW1lcmFibGUgaXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuY29uZmlndXJhYmxlIGlzIHRy
dWUKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRD
U1NGaWx0ZXJWYWx1ZScpLnZhbHVlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlCiBQQVNTIE9iamVj
dC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUn
KS5oYXNPd25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJWYWx1ZScpLmhhc093blByb3Bl
cnR5KCdzZXQnKSBpcyBmYWxzZQpAQCAtMTkyOCwxMSArMTkyMyw2IEBAIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNYXRyaXgnKS5oYXNPd25Q
cm9wZXJ0eSgnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
V2ViS2l0Q1NTTWF0cml4JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWF0cml4Jyku
ZW51bWVyYWJsZSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZScpLnZhbHVlIGlzIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUKLVBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhh
c093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5lbnVtZXJhYmxl
IGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVs
ZScpLnZhbHVlIGlzIFdlYktpdENTU1JlZ2lvblJ1bGUKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NSZWdpb25SdWxlJykuaGFzT3duUHJvcGVy
dHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBm
YWxzZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlv
bnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRleCA0MzAw
YWNjLi4xYTE4MTA5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4
cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9u
cwpAQCAtNDIsOSArNDIsNiBAQCBjc3MzL2ZpbHRlcnMvZWZmZWN0LW9wYWNpdHktaHcuaHRtbAog
Y3NzMy9maWx0ZXJzL2VmZmVjdC1zYXR1cmF0ZS1ody5odG1sCiBjc3MzL2ZpbHRlcnMvZWZmZWN0
LXNlcGlhLWh3Lmh0bWwKIAotIyBDdXN0b20gZmlsdGVycyBub3QgeWV0IHN1cHBvcnRlZCBvbiBX
aW5kb3dzCi1jc3MzL2ZpbHRlcnMvY3VzdG9tCi0KICMgUmVtb3ZlIGZyb20gbGlzdCBhZnRlciBl
bmFibGluZyBDQU5WQVNfUEFUSAogZmFzdC9jYW52YXMvY2FudmFzLWN1cnJlbnRQYXRoLmh0bWwK
IGZhc3QvY2FudmFzL2NhbnZhcy1wYXRoLWNvbnN0cnVjdG9ycy5odG1sCkBAIC0yNDQ2LDcgKzI0
NDMsNiBAQCBjb21wb3NpdGluZy9maWx0ZXJzL3N3LW5lc3RlZC1zaGFkb3ctb3ZlcmxhcHMtaHct
bmVzdGVkLXNoYWRvdy5odG1sCiBjb21wb3NpdGluZy9pZnJhbWVzL2lmcmFtZS1zaXplLWZyb20t
emVyby5odG1sCiBjb21wb3NpdGluZy9pZnJhbWVzL292ZXJsYXBwZWQtaWZyYW1lLWlmcmFtZS5o
dG1sCiBjb21wb3NpdGluZy90aWxpbmcvdGlsZWQtbGF5ZXItcmVzaXplLmh0bWwKLWNzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12
YWxpZC5odG1sCiBlZGl0aW5nL2lucHV0L2ltZS1jb21wb3NpdGlvbi1jbGVhcnByZWVkaXQuaHRt
bAogZmFzdC9jYW52YXMvY2FudmFzLWNvbXBvc2l0ZS1hbHBoYS5odG1sCiBmYXN0L2NhbnZhcy9j
YW52YXMtcXVhZHJhdGljLXNhbWUtZW5kcG9pbnQuaHRtbApAQCAtMjQ4Miw5ICsyNDc4LDYgQEAg
d2Via2l0Lm9yZy9iLzYxMTM4IGh0dHAvdGVzdHMvdzNjL3dlYnBlcmYvc3VibWlzc2lvbi9JbnRl
bC9yZXNvdXJjZS10aW1pbmcKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTk1NDI4CiB3ZWJraXQub3JnL2IvMTAxNjcwIG1lZGlhL3ZpZGVvLWNvbnRyb2xzLWNhcHRp
b25zLmh0bWwgWyBTa2lwIF0KIAotIyBidWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MTIzNQotY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4Ci0KICMgYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTA0NDcKIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctY2hhbmdlZC10ZXh0Lmh0bWwKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJv
L1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZDUzODZjYS4uYTliMDhhNyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCkBAIC01NjUsOSArNTY1LDYg
QEAgY3NzMy9maWx0ZXJzL2VmZmVjdC1vcGFjaXR5LWh3Lmh0bWwKIGNzczMvZmlsdGVycy9lZmZl
Y3Qtc2F0dXJhdGUtaHcuaHRtbAogY3NzMy9maWx0ZXJzL2VmZmVjdC1zZXBpYS1ody5odG1sCiAK
LSMgQ3VzdG9tIGZpbHRlcnMgbm90IHlldCBzdXBwb3J0ZWQgb24gV2luZG93cwotY3NzMy9maWx0
ZXJzL2N1c3RvbQotCiAjIE5lZWRzIHJlYmFzZWxpbmUgYWZ0ZXIgYnVnIDk3MjE3IGlzIGZpeGVk
CiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzMyNQogY3NzMy9t
YXNraW5nL2NsaXAtcGF0aC1jaXJjbGUtcmVsYXRpdmUtb3ZlcmZsb3cuaHRtbApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZp
bmVzLnhjY29uZmlnCmluZGV4IGFhMzc1ODhkLi45NDY4YzgyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCkBAIC01MCw3ICs1MCw2IEBAIEVOQUJMRV9DU1NfRklMVEVSUyA9IEVOQUJMRV9DU1Nf
RklMVEVSUzsKIEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfQ1NTX0lN
QUdFX1JFU09MVVRJT04gPSA7CiBFTkFCTEVfQ1NTX1JFR0lPTlMgPSBFTkFCTEVfQ1NTX1JFR0lP
TlM7Ci1FTkFCTEVfQ1NTX1NIQURFUlMgPSBFTkFCTEVfQ1NTX1NIQURFUlM7CiBFTkFCTEVfQ1NT
X1NIQVBFUyA9IEVOQUJMRV9DU1NfU0hBUEVTOwogRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04g
PSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTjsKIEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklN
QVRJT05TX1VOUFJFRklYRUQgPSBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBS
RUZJWEVEOwpAQCAtMTk4LDQgKzE5Nyw0IEBAIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiBF
TkFCTEVfRlRMX0pJVCA9IDsKIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKLUZFQVRVUkVfREVG
SU5FUyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FO
VkFTKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpICQoRU5BQkxFX0JM
T0IpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQo
RU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxF
X0NTUF9ORVhUKSAkKEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NT
U19DT01QT1NJVElORykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9D
U1NfRVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19JTUFHRV9P
UklFTlRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19S
RUdJT05TKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFC
TEVfQ1NTX1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9O
U19VTlBSRUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9D
U1MzX1RFWFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RF
WFRfTElORV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RP
TV9TQ0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RB
VEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RF
VEFJTFNfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJF
Q1RPUllfVVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVf
RFJBR0dBQkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNS
WVBURURfTUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVO
VFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9H
RU9MT0NBVElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQo
RU5BQkxFX0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9J
RlJBTUVfU0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElF
X1VJKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQo
RU5BQkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRF
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVU
X1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVf
SU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19B
SVJQTEFZKSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBU
X0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVf
TEVHQUNZX05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQo
RU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9M
SU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1ND
UklQVCkgJChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAk
KEVOQUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VS
U09SX1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9U
SUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lU
X1BMVUdJTikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JF
U1NfRUxFTUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMp
ICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JF
UVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJM
RV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5B
QkxFX1NIQURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hf
U1lOVEhFU0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9V
VCkgJChFTkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9O
VFMpICQoRU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykg
JChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5B
QkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0sp
ICQoRU5BQkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9X
RUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAk
KEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VS
UykgJChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQp
ICQoRU5BQkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1F
KSk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FD
Q0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xM
SU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxF
X0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVT
U0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JS
RUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRB
VElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVO
QUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9O
KSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NT
X1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBS
RUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RF
WFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElO
RV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hF
TUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNU
X0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNf
RUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllf
VVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dB
QkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURf
TUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQo
RU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NB
VElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxF
X0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVf
U0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAk
KEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxF
X0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVO
QUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVf
REFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRf
VFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZ
KSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVH
R0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZ
X05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxF
X0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BS
RUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkg
JChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJM
RV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1ND
QUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FU
SU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJ
TikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxF
TUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5B
QkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1Rf
QU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNP
TFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NI
QURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhF
U0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChF
TkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQo
RU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFC
TEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VT
RVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5B
QkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5J
TUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJM
RV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChF
TkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5B
QkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oIGIvU291cmNlL1dURi93
dGYvRmVhdHVyZURlZmluZXMuaAppbmRleCBmZmU3OTc4Li4wN2M4Njk0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0ZlYXR1
cmVEZWZpbmVzLmgKQEAgLTQxNiwxMCArNDE2LDYgQEAKICNkZWZpbmUgRU5BQkxFX0NTU19JTUFH
RV9TRVQgMAogI2VuZGlmCiAKLSNpZiAhZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpCi0jZGVm
aW5lIEVOQUJMRV9DU1NfU0hBREVSUyAwCi0jZW5kaWYKLQogI2lmICFkZWZpbmVkKEVOQUJMRV9D
U1NfU1RJQ0tZX1BPU0lUSU9OKQogI2RlZmluZSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTiAw
CiAjZW5kaWYKQEAgLTg4NCwxMCArODgwLDYgQEAKICNlcnJvciAiRU5BQkxFKFZJREVPX1RSQUNL
KSByZXF1aXJlcyBFTkFCTEUoVklERU8pIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpICYmICFFTkFCTEUoV0VCR0wpCi0jZXJyb3IgIkVOQUJMRShDU1NfU0hBREVSUykgcmVxdWly
ZXMgRU5BQkxFKFdFQkdMKSIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1Ip
ICYmICFFTkFCTEUoSU5TUEVDVE9SKQogI2Vycm9yICJFTkFCTEUoUkVNT1RFX0lOU1BFQ1RPUikg
cmVxdWlyZXMgRU5BQkxFKElOU1BFQ1RPUikiCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5k
ZXggNzZlMTY1YS4uZDJkMjdkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTMxOSwxMiArMzE5
LDEwIEBAIHNldChXZWJDb3JlX0lETF9GSUxFUwogICAgIGNzcy9TdHlsZU1lZGlhLmlkbAogICAg
IGNzcy9TdHlsZVNoZWV0LmlkbAogICAgIGNzcy9TdHlsZVNoZWV0TGlzdC5pZGwKLSAgICBjc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRs
CiAgICAgY3NzL1dlYktpdENTU0tleWZyYW1lUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTS2V5
ZnJhbWVzUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTTWF0cml4LmlkbAotICAgIGNzcy9XZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbAogICAgIGNzcy9XZWJLaXRDU1NSZWdpb25SdWxlLmlk
bAogICAgIGNzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NT
Vmlld3BvcnRSdWxlLmlkbApAQCAtMTEwOSwxNiArMTEwNywxMSBAQCBzZXQoV2ViQ29yZV9TT1VS
Q0VTCiAgICAgY3NzL1N0eWxlU2hlZXRMaXN0LmNwcAogICAgIGNzcy9UcmFuc2Zvcm1GdW5jdGlv
bnMuY3BwCiAgICAgY3NzL1ZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAKLSAgICBjc3MvV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcAotICAgIGNzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmNw
cAogICAgIGNzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAKICAgICBjc3MvV2ViS2l0Q1NTS2V5
ZnJhbWVSdWxlLmNwcAogICAgIGNzcy9XZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcAotICAgIGNz
cy9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcAogICAgIGNzcy9XZWJLaXRDU1NNYXRyaXgu
Y3BwCi0gICAgY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwCiAgICAgY3NzL1dlYktp
dENTU1JlZ2lvblJ1bGUuY3BwCi0gICAgY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmNwcAogICAg
IGNzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAKICAgICBjc3MvV2ViS2l0Q1NTVmlld3Bv
cnRSdWxlLmNwcAogCkBAIC0xNjk1LDcgKzE2ODgsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAg
ICAgbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0RvY3VtZW50LmNwcAogICAgIGxvYWRlci9jYWNoZS9D
YWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZS5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2Ny
aXB0LmNwcAotICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuY3BwCiAgICAgbG9hZGVyL2Nh
Y2hlL0NhY2hlZFhTTFN0eWxlU2hlZXQuY3BwCiAgICAgbG9hZGVyL2NhY2hlL01lbW9yeUNhY2hl
LmNwcAogCkBAIC0xOTM4LDIzICsxOTMwLDEyIEBAIHNldChXZWJDb3JlX1NPVVJDRVMKIAogICAg
IHBsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAKIAot
ICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
LmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29u
dGV4dC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2gu
Y3BwCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJh
dG9yLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyTGlzdC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBy
b2dyYW0uY3BwCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9n
cmFtSW5mby5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJl
bmRlcmVyLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbS5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3RhbnRM
aWdodFNvdXJjZS5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQmxlbmQuY3Bw
CiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUNvbG9yTWF0cml4LmNwcAogICAgIHBs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDb21wb25lbnRUcmFuc2Zlci5jcHAKICAgICBwbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ29tcG9zaXRlLmNwcAogICAgIHBsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNwcAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
RkVEaWZmdXNlTGlnaHRpbmcuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRURp
c3BsYWNlbWVudE1hcC5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFRHJvcFNo
YWRvdy5jcHAKQEAgLTE5NzQsOSArMTk1NSw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBw
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1NvdXJjZUFscGhhLmNwcAogICAgIHBsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvU291cmNlR3JhcGhpYy5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL1Nwb3RMaWdodFNvdXJjZS5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAKLQotICAgIHBsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvdGV4bWFwL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW1UZXh0dXJlTWFw
cGVyLmNwcAogCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXIuY3Bw
CiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJCYWNraW5nU3RvcmUu
Y3BwCkBAIC0yMjY5LDkgKzIyNDcsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgcmVuZGVy
aW5nL3N0eWxlL1N0eWxlQm94RGF0YS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNo
ZWRJbWFnZS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZVNldC5jcHAK
LSAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuY3BwCi0gICAgcmVuZGVyaW5n
L3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAKLSAgICByZW5kZXJpbmcvc3R5bGUv
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuY3BwCiAgICAgcmVuZGVyaW5nL3N0eWxlL1N0
eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5
bGVGaWx0ZXJEYXRhLmNwcAogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUZsZXhpYmxlQm94RGF0
YS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVE
ZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURl
ZmluZXMueGNjb25maWcKaW5kZXggYWEzNzU4OGQuLjk0NjhjODIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC01
MCw3ICs1MCw2IEBAIEVOQUJMRV9DU1NfRklMVEVSUyA9IEVOQUJMRV9DU1NfRklMVEVSUzsKIEVO
QUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJ
T04gPSA7CiBFTkFCTEVfQ1NTX1JFR0lPTlMgPSBFTkFCTEVfQ1NTX1JFR0lPTlM7Ci1FTkFCTEVf
Q1NTX1NIQURFUlMgPSBFTkFCTEVfQ1NTX1NIQURFUlM7CiBFTkFCTEVfQ1NTX1NIQVBFUyA9IEVO
QUJMRV9DU1NfU0hBUEVTOwogRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04gPSBFTkFCTEVfQ1NT
X1NUSUNLWV9QT1NJVElPTjsKIEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJF
RklYRUQgPSBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEOwpAQCAt
MTk4LDQgKzE5Nyw0IEBAIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiBFTkFCTEVfRlRMX0pJ
VCA9IDsKIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5B
QkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJM
RV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxF
X0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZB
U19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NTUF9ORVhUKSAk
KEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19DT01QT1NJVElO
RykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1NfRVhDTFVTSU9O
UykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikg
JChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAkKEVO
QUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNL
WV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVE
KSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQo
RU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVB
SykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFO
RExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1F
TlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVO
VCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FE
KSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JF
R0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFf
VjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxF
X0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikg
JChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hf
RFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxF
U1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJM
RV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVU
X1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJ
TUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9U
SU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVO
QUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAk
KEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElG
SUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FD
WV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENI
KSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFC
TEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRF
Ul9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAk
KEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykg
JChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChF
TkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkg
JChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BV
QkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFU
SU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9O
X01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19E
T00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAk
KEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVf
U1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxF
X1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9V
Q0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxF
Q1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJ
RVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9O
UykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJf
U09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVf
WEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xM
SU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CitGRUFUVVJF
X0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJE
X0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJM
RV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRI
KSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVO
QUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJM
RV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFC
TEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfSU1B
R0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9D
U1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJ
VElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEKSAkKEVO
QUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxF
X0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVBSykgJChF
TkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikg
JChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQo
RU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVOVCkgJChF
TkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVO
QUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JFR0lPTikg
JChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFfVjIpICQo
RU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExT
Q1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFC
TEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NB
TlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQo
RU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBV
VF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1RZUEVf
Q09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NB
TCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9J
T1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJM
RV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElP
TlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJf
QVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVO
QUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFCTEVfTUVE
SUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9FTEVN
RU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJM
RV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFC
TEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVf
UExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkgJChFTkFC
TEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BVQkxJQ19T
VUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZS
QU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElB
X1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19ET00pICQo
RU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAkKEVOQUJM
RV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVfU1VCVExF
X0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTVBM
QVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hfRVZF
TlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxM
KSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJRVdfTU9E
RV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9OUykgJChF
TkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VU
UykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJ
TUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xMSU5UX0Nf
TE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy5jcHAKaW5kZXggNjU3MjY4Yi4uZWRhYjEzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLmNwcApAQCAtNDgxLDkgKzQ4MSw2IEBACiAjaW5jbHVkZSAiSlNWYWxpZGl0eVN0YXRlLmNw
cCIKICNpbmNsdWRlICJKU1ZvaWRDYWxsYmFjay5jcHAiCiAjaW5jbHVkZSAiSlNXZWJLaXRBbmlt
YXRpb25FdmVudC5jcHAiCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkpTV2Vi
S2l0Q1NTRmlsdGVyUnVsZS5jcHAiCi0jZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAj
aW5jbHVkZSAiSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAiCiAjZW5kaWYKQEAgLTQ5MSw5ICs0
ODgsNiBAQAogI2luY2x1ZGUgIkpTV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5jcHAiCiAjaW5jbHVk
ZSAiSlNXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAiCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NN
YXRyaXguY3BwIgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJKU1dlYktpdENT
U01peEZ1bmN0aW9uVmFsdWUuY3BwIgotI2VuZGlmCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NSZWdp
b25SdWxlLmNwcCIKICNpbmNsdWRlICJKU1dlYktpdE5hbWVkRmxvdy5jcHAiCiAjaW5jbHVkZSAi
SlNXZWJLaXRQb2ludC5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCAzODJi
NDdiLi4xYjgwZjBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5t
YWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTIzNiwxMSAr
MjM2LDkgQEAgQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvY3NzL1N0eWxlU2hlZXQu
aWRsIFwKICAgICAkKFdlYkNvcmUpL2Nzcy9TdHlsZVNoZWV0TGlzdC5pZGwgXAogICAgICQoV2Vi
Q29yZSkvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmlkbCBcCi0gICAgJChXZWJDb3JlKS9jc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dlYktpdENTU0tl
eWZyYW1lUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dlYktpdENTU0tleWZyYW1lc1J1
bGUuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NNYXRyaXguaWRsIFwKLSAgICAk
KFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9jc3MvV2ViS2l0Q1NTUmVnaW9uUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dl
YktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NT
Vmlld3BvcnRSdWxlLmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmls
ZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCA5ZTJj
OThlLi4xMGFiNmMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0
LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTc5MSw4ICs3
OTEsNiBAQCB3ZWJjb3JlX2J1aWx0X3NvdXJjZXMgKz0gXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRBbmltYXRpb25FdmVudC5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNXZWJLaXRBbmltYXRpb25FdmVudC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2Vi
S2l0Q1NTRmlsdGVyUnVsZS5jcHAgXAotCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRD
U1NGaWx0ZXJSdWxlLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxl
LmNwcCBcCkBAIC04MDEsOCArNzk5LDYgQEAgd2ViY29yZV9idWlsdF9zb3VyY2VzICs9IFwKIAlE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIFwKIAlEZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTTWF0cml4LmNwcCBcCiAJRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU1dlYktpdENTU01hdHJpeC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgXAotCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U1dlYktpdENTU1JlZ2lvblJ1bGUuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYktp
dENTU1RyYW5zZm9ybVZhbHVlLmNwcCBcCkBAIC0xMzMxLDEyICsxMzI3LDEwIEBAIGRvbV9iaW5k
aW5nX2lkbHMgKz0gXAogCSQoV2ViQ29yZSkvY3NzL1N0eWxlTWVkaWEuaWRsIFwKIAkkKFdlYkNv
cmUpL2Nzcy9TdHlsZVNoZWV0LmlkbCBcCiAJJChXZWJDb3JlKS9jc3MvU3R5bGVTaGVldExpc3Qu
aWRsIFwKLQkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmlkbCBcCiAJJChXZWJD
b3JlKS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJL
aXRDU1NLZXlmcmFtZVJ1bGUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NLZXlmcmFt
ZXNSdWxlLmlkbCBcCiAJJChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NTTWF0cml4LmlkbCBcCi0JJChX
ZWJDb3JlKS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5pZGwgXAogCSQoV2ViQ29yZSkv
Y3NzL1dlYktpdENTU1JlZ2lvblJ1bGUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NU
cmFuc2Zvcm1WYWx1ZS5pZGwgXAogCSQoV2ViQ29yZSkvY3NzL1dlYktpdENTU1ZpZXdwb3J0UnVs
ZS5pZGwgXApAQCAtMjcxMSwxMCArMjcwNSw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291
cmNlL1dlYkNvcmUvY3NzL1RyYW5zZm9ybUZ1bmN0aW9ucy5oIFwKIAlTb3VyY2UvV2ViQ29yZS9j
c3MvVmlld3BvcnRTdHlsZVJlc29sdmVyLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1ZpZXdw
b3J0U3R5bGVSZXNvbHZlci5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTQXJyYXlG
dW5jdGlvblZhbHVlLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyUnVsZS5j
cHAgXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmggXAogCVNvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0
Q1NTS2V5ZnJhbWVSdWxlLmNwcCBcCkBAIC0yNzIzLDE0ICsyNzEzLDggQEAgd2ViY29yZV9zb3Vy
Y2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIFwK
IAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0cml4LmNwcCBcCiAJU291cmNlL1dlYkNv
cmUvY3NzL1dlYktpdENTU01hdHJpeC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZS5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNYXRG
dW5jdGlvblZhbHVlLmggXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlv
blZhbHVlLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFs
dWUuaCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1JlZ2lvblJ1bGUuY3BwIFwKIAlT
b3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTUmVnaW9uUnVsZS5oIFwKLQlTb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2Vi
S2l0Q1NTU2hhZGVyVmFsdWUuaCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5z
Zm9ybVZhbHVlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5zZm9ybVZh
bHVlLmggXAogCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3BwIFwK
QEAgLTM5MzgsOCArMzkyMiw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCBcCiAJU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAgXAogCVNvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuaCBcCi0JU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFNoYWRlci5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRTaGFkZXIuaCBcCiAJU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFN0eWxl
U2hlZXRDbGllbnQuaCBcCiAJU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFRleHRU
cmFjay5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRUZXh0VHJhY2su
aCBcCkBAIC00NjE3LDEyICs0NTk5LDYgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZS5oIFwKIAlTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZVNldC5jcHAgXAogCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZEltYWdlU2V0LmggXAotCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5jcHAgXAotCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5oIFwKLQlTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCBcCi0JU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIFwK
LQlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
Q2FjaGUuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtQ2FjaGUuaCBcCiAJU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlRGFzaGJvYXJkUmVnaW9uLmggXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9T
dHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU3R5bGVEZXByZWNhdGVkRmxleGlibGVCb3hEYXRhLmggXApAQCAtNDY0NCwx
MyArNDYyMCwxMSBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZU11bHRpQ29sRGF0YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZU11bHRpQ29sRGF0YS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVQZW5kaW5nSW1hZ2UuaCBcCi0JU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1N0eWxlUGVuZGluZ1NoYWRlci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmggXAogCVNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcCBcCiAJU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaCBcCiAJU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmVmbGVjdGlvbi5oIFwKLQlTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVTaGFkZXIuaCBcCiAJU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlU3Vycm91bmREYXRhLmNwcCBcCiAJU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlU3Vycm91bmREYXRhLmggXAogCVNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZVRyYW5zZm9ybURhdGEuY3BwIFwKQEAgLTU2NDMsMzUgKzU2MTcs
NiBAQCBwbGF0Zm9ybV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jcHUvYXJtL2ZpbHRlcnMvRkVHYXVzc2lhbkJsdXJORU9OLmggXAogCVNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAg
XAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxp
Z2h0aW5nTkVPTi5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb25zdGFudHMu
aCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0
ZXJHbG9iYWxDb250ZXh0LmNwcCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmggXAotCVNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5jcHAgXAotCVNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5oIFwKLQlT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hH
ZW5lcmF0b3IuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24u
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlck9wZXJhdGlvbi5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgXAotCVNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUGFyYW1ldGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIFwKLQlTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0u
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlclByb2dyYW0uaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwIFwKLQlTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1JbmZv
LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUmVuZGVyZXIuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFBy
b2dyYW0uaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCBcCi0JU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0
ZWRQcm9ncmFtLmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
RGlzdGFudExpZ2h0U291cmNlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9EaXN0YW50TGlnaHRTb3VyY2UuaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9GRUJsZW5kLmNwcCBcCkBAIC01Njg0LDggKzU2MjksNiBAQCBw
bGF0Zm9ybV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0ZFQ29tcG9zaXRlLmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNwcCBcCi0JU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5oIFwKIAlTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFRGlmZnVzZUxpZ2h0aW5nLmNw
cCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRURpZmZ1c2VM
aWdodGluZy5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZF
RGlzcGxhY2VtZW50TWFwLmNwcCBcCkBAIC02NDAwLDcgKzYzNDMsNiBAQCBlbmRpZgogaWYgVVNF
X0FDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HCiBpZiBVU0VfVEVYVFVSRV9NQVBQRVJfR0wKIHdlYmNv
cmVfc291cmNlcyArPSBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy90ZXhtYXAvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbVRleHR1cmVNYXBwZXIuY3BwIFwK
IAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL3RleG1hcC9UZXh0dXJl
TWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0uaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wuaCBcCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLm9yZGVyIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5v
cmRlcgppbmRleCA5NzU0ZGQ5Li43YjhiOWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLm9yZGVyCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUub3JkZXIKQEAgLTI3NDcs
NyArMjc0Nyw2IEBAIF9fWk43V2ViQ29yZTE4UmVuZGVyTGF5ZXJCYWNraW5nMTV1cGRhdGVUcmFu
c2Zvcm1FUEtOU18xMVJlbmRlclN0eWxlRQogX19aTjdXZWJDb3JlMTVHcmFwaGljc0xheWVyQ0Ex
MnNldFRyYW5zZm9ybUVSS05TXzIwVHJhbnNmb3JtYXRpb25NYXRyaXhFCiBfX1pOSzdXZWJDb3Jl
MjBUcmFuc2Zvcm1hdGlvbk1hdHJpeGVxRVJLUzBfCiBfX1pON1dlYkNvcmUxOFJlbmRlckxheWVy
QmFja2luZzEzdXBkYXRlRmlsdGVyc0VQS05TXzExUmVuZGVyU3R5bGVFCi1fX1pON1dlYkNvcmUx
MVJlbmRlckxheWVyMjNjb21wdXRlRmlsdGVyT3BlcmF0aW9uc0VQS05TXzExUmVuZGVyU3R5bGVF
CiBfX1pON1dlYkNvcmUxNkZpbHRlck9wZXJhdGlvbnNhU0VSS1MwXwogX19aTjNXVEY2VmVjdG9y
SU5TXzZSZWZQdHJJTjdXZWJDb3JlMTVGaWx0ZXJPcGVyYXRpb25FRUVMbTBFTlNfMTVDcmFzaE9u
T3ZlcmZsb3dFRWFTRVJLUzZfCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzTGF5ZXJDQTEwc2V0Rmls
dGVyc0VSS05TXzE2RmlsdGVyT3BlcmF0aW9uc0UKQEAgLTIwNjU5LDcgKzIwNjU4LDYgQEAgX19a
VFZON1dlYkNvcmUxMUNhY2hlZEltYWdlRQogX19aVFZON1dlYkNvcmUxN0NhY2hlZFJhd1Jlc291
cmNlRQogX19aVFZON1dlYkNvcmUxNENhY2hlZFJlc291cmNlRQogX19aVFZON1dlYkNvcmUxMkNh
Y2hlZFNjcmlwdEUKLV9fWlRWTjdXZWJDb3JlMTJDYWNoZWRTaGFkZXJFCiBfX1pUVk43V2ViQ29y
ZTE3Q2FjaGVkU1ZHRG9jdW1lbnRFCiBfX1pUVk43V2ViQ29yZTE1Q2FjaGVkVGV4dFRyYWNrRQog
X19aVFZON1dlYkNvcmUxOUNhY2hlZFhTTFN0eWxlU2hlZXRFCkBAIC0yMDcyMSw4ICsyMDcxOSw2
IEBAIF9fWlRWTjdXZWJDb3JlMTNDU1NTdHlsZVNoZWV0RQogX19aWk43V2ViQ29yZTIwQ1NTVmFs
dWVLZXl3b3Jkc0hhc2gxM2ZpbmRWYWx1ZUltcGxFUEtjakUxNXZhbHVlX3dvcmRfbGlzdAogX19a
TjdXZWJDb3JlTDl2YWx1ZUxpc3RFCiBfX1pUVk43V2ViQ29yZTExQ3VzdG9tRXZlbnRFCi1fX1pU
Vk43V2ViQ29yZTIxQ3VzdG9tRmlsdGVyT3BlcmF0aW9uRQotX19aVFZON1dlYkNvcmUxOUN1c3Rv
bUZpbHRlclByb2dyYW1FCiBfX1pUVk43V2ViQ29yZThEYXRhYmFzZUUKIF9fWlRWTjdXZWJDb3Jl
MTVEYXRhYmFzZUNvbnRleHRFCiBfX1pUVk43V2ViQ29yZTEyRGF0YWJhc2VTeW5jRQpAQCAtMjA4
MTAsNyArMjA4MDYsNiBAQCBfX1pUVk43V2ViQ29yZTEzRkVDb2xvck1hdHJpeEUKIF9fWlRWTjdX
ZWJDb3JlMTlGRUNvbXBvbmVudFRyYW5zZmVyRQogX19aVFZON1dlYkNvcmUxMUZFQ29tcG9zaXRl
RQogX19aVFZON1dlYkNvcmUxNkZFQ29udm9sdmVNYXRyaXhFCi1fX1pUVk43V2ViQ29yZTE0RkVD
dXN0b21GaWx0ZXJFCiBfX1pUVk43V2ViQ29yZTE3RkVEaWZmdXNlTGlnaHRpbmdFCiBfX1pUVk43
V2ViQ29yZTE3RkVEaXNwbGFjZW1lbnRNYXBFCiBfX1pUVk43V2ViQ29yZTEyRkVEcm9wU2hhZG93
RQpAQCAtMjM2MDQsNyArMjM1OTksNiBAQCBfX1pUVk43V2ViQ29yZTEyU3RvcmFnZUV2ZW50RQog
X19aVFZON1dlYkNvcmUyMFN0b3JhZ2VOYW1lc3BhY2VJbXBsRQogX19aVFZON1dlYkNvcmUxNlN0
eWxlQ2FjaGVkSW1hZ2VFCiBfX1pUVk43V2ViQ29yZTE5U3R5bGVDYWNoZWRJbWFnZVNldEUKLV9f
WlRWTjdXZWJDb3JlMTdTdHlsZUNhY2hlZFNoYWRlckUKIF9fWlRWTjdXZWJDb3JlMTNTdHlsZWRF
bGVtZW50RQogX19aVFZON1dlYkNvcmUxMlN0eWxlRWxlbWVudEUKIF9fWlRWTjdXZWJDb3JlMTlT
dHlsZUdlbmVyYXRlZEltYWdlRQpAQCAtMjM5MjgsMTYgKzIzOTIyLDExIEBAIF9fWlRWTjdXZWJD
b3JlNVhQYXRoMTdWYXJpYWJsZVJlZmVyZW5jZUUKIF9fWlRWTjdXZWJDb3JlMTNYU0xJbXBvcnRS
dWxlRQogX19aVFZON1dlYkNvcmUxM1hTTFN0eWxlU2hlZXRFCiBfX1pUVk43V2ViQ29yZTE0TG9h
ZGVyU3RyYXRlZ3lFCi1fX1pUVk43V2ViQ29yZTMwVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uRQogX19aVFZON1dlYkNvcmUxMk5vZGVSYXJlRGF0YUUKIF9fWlRWTjdXZWJDb3JlMjNTY3Jv
bGxpbmdTdGF0ZUZpeGVkTm9kZUUKIF9fWlRWTjdXZWJDb3JlMjJTY3JvbGxpbmdUcmVlRml4ZWRO
b2RlRQogX19aVFZON1dlYkNvcmUyMFJlbmRlclRoZW1lTWFjU2hhcmVkRQogX19aVFZON1dlYkNv
cmUyNFdlYkNvcmVBVkZSZXNvdXJjZUxvYWRlckUKLV9fWk43V2ViQ29yZTM4SlNXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlQ29uc3RydWN0b3I2c19pbmZvRQotX19aTjdXZWJDb3JlMzZKU1dlYktp
dENTU01peEZ1bmN0aW9uVmFsdWVQcm90b3R5cGU2c19pbmZvRQotX19aTjdXZWJDb3JlMjdKU1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWU2c19pbmZvRQotX19aTjdXZWJDb3JlTDM4SlNXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlVGFibGVWYWx1ZXNFCiBfX1pUVk43V2ViQ29yZTI1SW5iYW5kVGV4
dFRyYWNrUHJpdmF0ZUFWRkUKIF9fWlRWTjdXZWJDb3JlMjlJbmJhbmRUZXh0VHJhY2tQcml2YXRl
QVZGT2JqQ0UKIF9fWlRWTjdXZWJDb3JlMTVJbmJhbmRUZXh0VHJhY2tFCkBAIC0yNjIzOCw3ICsy
NjIyNyw2IEBAIF9fWlRWTjdXZWJDb3JlMTVTZWN1cmVUZXh0VGltZXJFCiBfX1paTjdXZWJDb3Jl
TDIwbWVkaWFDb250cm9sbGVyVGhlbWVFdkUxNWNvbnRyb2xsZXJUaGVtZQogX19aVFZOM1dURjIx
TWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJDb3JlMTZQT0RGcmVlTGlzdEFyZW5h
SU5TMl8xNVBPRFJlZEJsYWNrVHJlZUlOUzJfMTFQT0RJbnRlcnZhbElpUE5TMl8xMVJlbmRlckJs
b2NrMTRGbG9hdGluZ09iamVjdEVFRUU0Tm9kZUVFRUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0
cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyMEZsb3dUaHJlYWRDb250cm9sbGVyRUVFCi1f
X1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyNUN1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHRFRUUKIF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1lbnRhdGlv
bjdXcmFwcGVySU43V2ViQ29yZTIxUmVuZGVyTGF5ZXJDb21wb3NpdG9yRUVFCiBfX1pUVk4zV1RG
MjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUxMUxheW91dFN0YXRlRUVF
CiBfX1pUVk43V2ViQ29yZTE2UE9ERnJlZUxpc3RBcmVuYUlOU18xNVBPRFJlZEJsYWNrVHJlZUlO
U18xMVBPREludGVydmFsSWlQTlNfMTFSZW5kZXJCbG9jazE0RmxvYXRpbmdPYmplY3RFRUVFNE5v
ZGVFRUUKQEAgLTI2MzY0LDExICsyNjM1Miw2IEBAIF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1l
bnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE3U3RhdGljQ1NTUnVsZUxpc3RFRUUKIF9fWlRWTjNX
VEYyMU1lbW9yeUluc3RydW1lbnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE4U3R5bGVSdWxlS2V5
ZnJhbWVzRUVFCiBfX1pUVk43V2ViQ29yZTVUaW1lcklOU18xM1N0eWxlUmVzb2x2ZXJFRUUKIF9f
WlRWTjdXZWJDb3JlMjRSZWZlcmVuY2VGaWx0ZXJPcGVyYXRpb25FCi1fX1pUVk43V2ViQ29yZTI0
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtRQotX19aVFZON1dlYkNvcmUzMEN1c3RvbUZpbHRlclRy
YW5zZm9ybVBhcmFtZXRlckUKLV9fWlRWTjdXZWJDb3JlMjFDdXN0b21GaWx0ZXJQYXJhbWV0ZXJF
Ci1fX1pUVk43V2ViQ29yZTI3Q3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyRQotX19aVFZON1dl
YkNvcmUyNkN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyRQogX19aVFZON1dlYkNvcmUyNkNhY2hl
ZFNWR0RvY3VtZW50UmVmZXJlbmNlRQogX19aWk43V2ViQ29yZTExUmVuZGVyU3R5bGUxM2luaXRp
YWxGaWx0ZXJFdkUzb3BzCiBfX1pHVlpON1dlYkNvcmUxMVJlbmRlclN0eWxlMTNpbml0aWFsRmls
dGVyRXZFM29wcwpAQCAtMjY1MDAsNyArMjY0ODMsNiBAQCBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0
cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyMldlYktpdENTU0tleWZyYW1lc1J1bGVFRUUK
IF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1lbnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE1U3R5
bGVSdWxlUmVnaW9uRUVFCiBfX1pUVk43V2ViQ29yZTE1TGl2ZUNTU1J1bGVMaXN0SU5TXzE5V2Vi
S2l0Q1NTUmVnaW9uUnVsZUVFRQogX19aVFZOM1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dy
YXBwZXJJTjdXZWJDb3JlMTlXZWJLaXRDU1NSZWdpb25SdWxlRUVFCi1fX1pUVk43V2ViQ29yZTE4
U3R5bGVQZW5kaW5nU2hhZGVyRQogX19aVFZON1dlYkNvcmU1VGltZXJJTlNfMTZXZWJTb2NrZXRD
aGFubmVsRUVFCiBfX1pUVk43V2ViQ29yZTI3V2ViU29ja2V0RXh0ZW5zaW9uUHJvY2Vzc29yRQog
X19aTDIwZ2V0UVRNb3ZpZUxheWVyQ2xhc3MKQEAgLTI2NTk0LDkgKzI2NTc2LDYgQEAgX19aVFZO
M1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJDb3JlMTNFbGVtZW50U2hh
ZG93RUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNv
cmU5Q2xhc3NMaXN0RUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBl
cklON1dlYkNvcmUxOURhdGFzZXRET01TdHJpbmdNYXBFRUUKIF9fWlRWTjdXZWJDb3JlMTlWaWV3
cG9ydENvbnN0cmFpbnRzRQotX19aTjdXZWJDb3JlTDQzSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlQ29uc3RydWN0b3JUYWJsZUUKLV9fWk43V2ViQ29yZUw0MUpTV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZVByb3RvdHlwZVRhYmxlRQotX19aTjdXZWJDb3JlTDMySlNXZWJLaXRDU1NNaXhGdW5j
dGlvblZhbHVlVGFibGVFCiBfX1pUVk43V2ViQ29yZTVUaW1lcklOU185TGF5ZXJQb29sRUVFCiBf
X1pMMzVnZXRrQ01UZXh0TWFya3VwQXR0cmlidXRlX0FsaWdubWVudAogX19aTDM1Z2V0a0NNVGV4
dE1hcmt1cEFsaWdubWVudFR5cGVfU3RhcnQKQEAgLTI3MDA2LDEwICsyNjk4NSw2IEBAIF9fWlpO
N1dlYkNvcmUxMGdyYWJDdXJzb3JFdkUxYwogX19aR1ZaTjdXZWJDb3JlMTBncmFiQ3Vyc29yRXZF
MWMuYgogX19aWk43V2ViQ29yZTE0Z3JhYmJpbmdDdXJzb3JFdkUxYwogX19aR1ZaTjdXZWJDb3Jl
MTRncmFiYmluZ0N1cnNvckV2RTFjLmIKLV9fWlpON1dlYkNvcmUyOEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW0yNWRlZmF1bHRWZXJ0ZXhTaGFkZXJTdHJpbmdFdkUxOHZlcnRleFNoYWRlclN0
cmluZwotX19aR1ZaTjdXZWJDb3JlMjhDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtMjVkZWZh
dWx0VmVydGV4U2hhZGVyU3RyaW5nRXZFMTh2ZXJ0ZXhTaGFkZXJTdHJpbmcuYgotX19aWk43V2Vi
Q29yZTI4Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTI3ZGVmYXVsdEZyYWdtZW50U2hhZGVy
U3RyaW5nRXZFMjBmcmFnbWVudFNoYWRlclN0cmluZwotX19aR1ZaTjdXZWJDb3JlMjhDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtMjdkZWZhdWx0RnJhZ21lbnRTaGFkZXJTdHJpbmdFdkUyMGZy
YWdtZW50U2hhZGVyU3RyaW5nLmIKIF9fWlpON1dlYkNvcmVMMjdidWlsdEluVW5pZm9ybU5hbWVU
b1R5cGVNYXBFdkUxM25hbWVUb1R5cGVNYXAKIF9fWlpON1dlYkNvcmVMMjlidWlsdEluQXR0cmli
dXRlTmFtZVRvVHlwZU1hcEV2RTEzbmFtZVRvVHlwZU1hcAogX19aTjdXZWJDb3JlTDIxbm90aWZp
Y2F0aW9uU2NoZWR1bGVkRS5iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
eHByb2ovV2ViQ29yZS52Y3hwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvagppbmRleCBlZmY5NTJhLi4wOGU0ZDVkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKQEAgLTYxNDcsMjAgKzYxNDcsNiBA
QAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxk
PgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
ICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlv
bkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJp
dmVkU291cmNlc1xKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwIj4KLSAgICAgIDxFeGNs
dWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09
J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1
Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWls
ZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNh
aXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9t
QnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19X
aW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZy
b21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVn
U3VmZml4fFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1
Z1N1ZmZpeHx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZy
b21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVh
c2V8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21C
dWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8
eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQg
Q29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNh
aXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9t
QnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNl
X1dpbkNhaXJvfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJv
ZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJv
ZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICA8L0NsQ29tcGlsZT4K
ICAgICA8Q2xDb21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBs
YXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktp
dENTU1JlZ2lvblJ1bGUuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KQEAgLTcyMDMsNyArNzE4OSw2IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIu
Llxsb2FkZXJcY2FjaGVcQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCIgLz4KICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0
b3JzLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNo
ZWRTY3JpcHQuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hl
XENhY2hlZFNoYWRlci5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJc
Y2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5cbG9hZGVyXGNhY2hlXENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmNwcCIgLz4KICAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRUZXh0VHJhY2suY3BwIiAv
PgpAQCAtODEzMSwyMyArODExNiwxMiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxh
dGZvcm1cZ3JhcGhpY3NcdHJhbnNmb3Jtc1xUcmFuc2Zvcm1PcGVyYXRpb25zLmNwcCIgLz4KICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJh
bnNmb3JtU3RhdGUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcdHJhbnNmb3Jtc1xUcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uY3BwIiAvPgot
ICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0
b21GaWx0ZXJDb21waWxlZFByb2dyYW0uY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNw
cCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyTWVzaC5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuY3BwIiAv
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xD
dXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCIg
Lz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNc
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmNwcCIgLz4K
LSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3Vz
dG9tRmlsdGVyUmVuZGVyZXIuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxh
dGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCIg
Lz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNc
RGlzdGFudExpZ2h0U291cmNlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVCbGVuZC5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFQ29sb3JNYXRyaXguY3BwIiAv
PgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xG
RUNvbXBvbmVudFRyYW5zZmVyLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVDb21wb3NpdGUuY3BwIiAvPgogICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0cml4
LmNwcCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcRkVDdXN0b21GaWx0ZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VMaWdodGluZy5jcHAiIC8+CiAgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFRGlzcGxh
Y2VtZW50TWFwLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGZpbHRlcnNcRkVEcm9wU2hhZG93LmNwcCIgLz4KQEAgLTgxNjgsNyArODE0Miw2IEBA
CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFNv
dXJjZUFscGhhLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGZpbHRlcnNcU291cmNlR3JhcGhpYy5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFNwb3RMaWdodFNvdXJjZS5jcHAiIC8+
Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuY3BwIj4KICAgICAg
IDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZv
cm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAg
ICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
QEAgLTk1NDksMTUgKzk1MjIsMTEgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xT
VkdDU1NTdHlsZVNlbGVjdG9yLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNz
c1xUcmFuc2Zvcm1GdW5jdGlvbnMuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
Y3NzXFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxjc3NcV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcCIgLz4KICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAiIC8+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmNwcCIgLz4KICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcCIg
Lz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNYXRyaXguY3BwIiAv
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktp
dENTU1JlZ2lvblJ1bGUuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdl
YktpdENTU1NoYWRlclZhbHVlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNz
c1xXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxjc3NcV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9Ii4uXGNzc2ppdFxTZWxlY3RvckNvbXBpbGVyLmNwcCIgLz4KQEAgLTExNDI3LDcgKzEx
Mzk2LDYgQEAKICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9t
QnVpbGQ+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxyZW5k
ZXJpbmdcc3R5bGVcU3R5bGVDYWNoZWRTaGFkZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5j
bHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5j
cHAiPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
ICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQo
UGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgpAQCAtMTg1
MTcsNyArMTg0ODUsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9u
QnVpbGREaXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2
ZWRTb3VyY2VzXEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVy
ZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXRDU1NLZXlmcmFtZXNSdWxl
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilc
b2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNc
SlNXZWJLaXRDU1NNYXRyaXguaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmln
dXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1l
KVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIgLz4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3Jt
QXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU1Jl
Z2lvblJ1bGUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1
aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVk
U291cmNlc1xKU1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVy
ZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXROYW1lZEZsb3cuaCIgLz4K
QEAgLTE5MDIzLDcgKzE4OTkwLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGxvYWRl
clxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmgiIC8+
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU2NyaXB0Lmgi
IC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU2hhZGVy
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU3R5
bGVTaGVldENsaWVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNh
Y2hlXENhY2hlZFNWR0RvY3VtZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxs
b2FkZXJcY2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuaCIgLz4KQEAgLTE5MTE3LDgg
KzE5MDgzLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNz
XHRleG1hcFxjb29yZGluYXRlZFxBcmVhQWxsb2NhdG9yLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQ29tcG9zaXRp
bmdDb29yZGluYXRvci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcdGV4bWFwXGNvb3JkaW5hdGVkXENvb3JkaW5hdGVkQmFja2luZ1N0b3JlLmgiIC8+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29v
cmRpbmF0ZWRcQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIgLz4KLSAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxD
b29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW0uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEdy
YXBoaWNzTGF5ZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaCIgLz4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29y
ZGluYXRlZFxDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUuaCIgLz4KQEAgLTE5NDI4LDIzICsxOTM5
Miw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0cmFu
c2Zvcm1zXFRyYW5zZm9ybU9wZXJhdGlvbnMuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNmb3JtU3RhdGUuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJh
bnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIu
LlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmgi
IC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
XEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bS5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmls
dGVyc1xDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5o
IiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVy
c1xDdXN0b21GaWx0ZXJNZXNoLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCIgLz4KLSAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9t
RmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIiAvPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21G
aWx0ZXJQYXJhbWV0ZXIuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIiAvPgotICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0
ZXJQcm9ncmFtLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCIgLz4KLSAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8uaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyVHJhbnNmb3Jt
UGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRGlzdGFudExpZ2h0
U291cmNlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEZFQmxlbmQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRm
b3JtXGdyYXBoaWNzXGNwdVxhcm1cZmlsdGVyc1xGRUJsZW5kTkVPTi5oIiAvPgpAQCAtMTk0NTMs
NyArMTk0MDAsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyc1xGRUNvbXBvc2l0ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcY3B1XGFybVxmaWx0ZXJzXEZFQ29tcG9zaXRlQXJpdGhtZXRpY05F
T04uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcRkVDb252b2x2ZU1hdHJpeC5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUN1c3RvbUZpbHRlci5oIiAvPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VMaWdo
dGluZy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3Nc
ZmlsdGVyc1xGRURpc3BsYWNlbWVudE1hcC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURyb3BTaGFkb3cuaCIgLz4KQEAgLTE5NDc4
LDcgKzE5NDI0LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcU291cmNlQWxwaGEuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcU291cmNlR3JhcGhpYy5oIiAvPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3Vy
Y2UuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiIC8+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuaCIgLz4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGNhXFBsYXRmb3Jt
Q0FBbmltYXRpb24uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGNhXFBsYXRmb3JtQ0FMYXllci5oIiAvPgpAQCAtMTk4NjAsMTUgKzE5ODA1LDExIEBA
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcU3R5bGVTaGVldExpc3QuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xUcmFuc2Zvcm1GdW5jdGlvbnMuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xWaWV3cG9ydFN0eWxlUmVzb2x2ZXIuaCIgLz4K
LSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFs
dWUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU0tleWZy
YW1lUnVsZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU0tl
eWZyYW1lc1J1bGUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRD
U1NNYXRyaXguaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
Y3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XGNzc1xXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cY3NzXFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxjc3NcV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxjc3NqaXRcRnVuY3Rpb25DYWxsLmgiIC8+CkBAIC0yMDA3OCw4ICsyMDAxOSw2
IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVCYWNr
Z3JvdW5kRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0
eWxlXFN0eWxlQm94RGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVy
aW5nXHN0eWxlXFN0eWxlQ2FjaGVkSW1hZ2UuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZFNoYWRlci5oIiAvPgotICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRGVw
cmVjYXRlZEZsZXhpYmxlQm94RGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cmVuZGVyaW5nXHN0eWxlXFN0eWxlRmlsdGVyRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRmxleGlibGVCb3hEYXRhLmgiIC8+CkBAIC0y
MDA5MSwxMSArMjAwMzAsOSBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5n
XHN0eWxlXFN0eWxlTWFycXVlZURhdGEuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHJlbmRlcmluZ1xzdHlsZVxTdHlsZU11bHRpQ29sRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlUGVuZGluZ0ltYWdlLmgiIC8+Ci0gICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVQZW5kaW5nU2hhZGVy
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVS
YXJlSW5oZXJpdGVkRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVy
aW5nXHN0eWxlXFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaCIgLz4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVJlZmxlY3Rpb24uaCIgLz4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVNoYWRlci5oIiAvPgog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlU3Vycm91bmRE
YXRhLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5
bGVUcmFuc2Zvcm1EYXRhLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJp
bmdcc3R5bGVcU3R5bGVWYXJpYWJsZURhdGEuaCIgLz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwppbmRleCA4ZTk4OTUw
Li41ZjQxMjA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2Vi
Q29yZS52Y3hwcm9qLmZpbHRlcnMKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCkBAIC0xMDExLDkgKzEwMTEsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENhY2hlZFNjcmlwdC5jcHAiPgogICAgICAg
PEZpbHRlcj5sb2FkZXJcY2FjaGU8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRTaGFkZXIuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIj4K
ICAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBA
IC0xNjM1LDM2ICsxNjMyLDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uLmNwcCI+CiAg
ICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXM8L0ZpbHRlcj4KICAgICA8
L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNz
XGZpbHRlcnNcQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcCI+Ci0gICAgICA8RmlsdGVy
PnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9t
RmlsdGVyR2xvYmFsQ29udGV4dC5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2guY3BwIj4K
LSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwv
Q2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3Nc
ZmlsdGVyc1xDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCI+Ci0gICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmNwcCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAi
PgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAg
PC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW0uY3BwIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mby5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
PC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29t
cGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXERpc3RhbnRMaWdo
dFNvdXJjZS5jcHAiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0xNjgzLDkgKzE2NTAsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0
cml4LmNwcCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRl
cj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXGZpbHRlcnNcRkVDdXN0b21GaWx0ZXIuY3BwIj4KLSAgICAgIDxGaWx0ZXI+cGxh
dGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VM
aWdodGluZy5jcHAiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0xNzQ2LDkgKzE3MTAsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3Vy
Y2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcZmlsdGVyc1xWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwIj4KLSAg
ICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xD
b21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcY2Fc
R3JhcGhpY3NMYXllckNBLmNwcCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGNh
PC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0yMzQwLDkgKzIzMDEsNiBAQAogICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAiPgogICAg
ICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwIj4KICAgICAgIDxGaWx0ZXI+
Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0yMzU1LDE4ICsyMzEzLDkgQEAKICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNYXRyaXguY3BwIj4KICAgICAg
IDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAiPgotICAgICAgPEZp
bHRlcj5jc3M8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1
ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCI+Ci0gICAgICA8RmlsdGVy
PmNzczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5cY3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuY3BwIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0
ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2Vi
S2l0Q1NTU2hhZGVyVmFsdWUuY3BwIj4KLSAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+Ci0gICAg
PC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTVHJh
bnNmb3JtVmFsdWUuY3BwIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENv
bXBpbGU+CkBAIC0yODM1LDkgKzI3ODQsNiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cmVuZGVyaW5nXHN0eWxlXFN0eWxlQ2FjaGVkSW1hZ2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+cmVu
ZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVDYWNoZWRTaGFkZXIuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVEZXByZWNhdGVkRmxl
eGlibGVCb3hEYXRhLmNwcCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHlsZTwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgpAQCAtNjQzMyw5ICs2Mzc5LDYgQEAKICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0
dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU01hdHJpeC5jcHAi
PgogICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxl
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQo
UGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAiPgotICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNl
czwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iJChD
b25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVj
dE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAiPgogICAgICAg
PEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtNzk2
Nyw5ICs3OTEwLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxD
YWNoZWRTY3JpcHQuaCI+CiAgICAgICA8RmlsdGVyPmxvYWRlclxjYWNoZTwvRmlsdGVyPgogICAg
IDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENh
Y2hlZFNoYWRlci5oIj4KLSAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+Ci0gICAg
PC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2Fj
aGVkU3R5bGVTaGVldENsaWVudC5oIj4KICAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0
ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC04NTE2LDU3ICs4NDU2LDYgQEAKICAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNsYXRlVHJh
bnNmb3JtT3BlcmF0aW9uLmgiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0cmFu
c2Zvcm1zPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVy
LmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0g
ICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRl
cj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0g
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJDb25zdGFudHMu
aCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAg
ICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIj4KLSAgICAgIDxGaWx0ZXI+
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21G
aWx0ZXJNZXNoLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9y
bVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5j
bHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmls
dGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCI+Ci0gICAgICA8Rmls
dGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4K
LSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQcm9ncmFtLmgi
PgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAg
PC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCI+Ci0gICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmls
dGVyUHJvZ3JhbUluZm8uaCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0uaCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRGlzdGFudExpZ2h0U291cmNlLmgiPgogICAg
ICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbElu
Y2x1ZGU+CkBAIC04NTkxLDkgKzg0ODAsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0cml4LmgiPgogICAgICAgPEZp
bHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZF
Q3VzdG9tRmlsdGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
PC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFRGlmZnVzZUxpZ2h0aW5nLmgiPgogICAgICAgPEZp
bHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+
CkBAIC04NjY2LDkgKzg1NTIsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3VyY2UuaCI+CiAgICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcVmFsaWRhdGVk
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuaCI+CiAgICAgICA8
RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGNhPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBA
IC05MjYwLDkgKzkxNDMsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFZpZXdw
b3J0U3R5bGVSZXNvbHZlci5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9D
bEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTQXJyYXlG
dW5jdGlvblZhbHVlLmgiPgotICAgICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC05
Mjc1LDE4ICs5MTU1LDkgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRD
U1NNYXRyaXguaCI+CiAgICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRl
PgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUuaCI+Ci0gICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCI+
Ci0gICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuaCI+CiAgICAgICA8Rmls
dGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5cY3NzXFdlYktpdENTU1NoYWRlclZhbHVlLmgiPgotICAgICAgPEZpbHRlcj5jc3M8L0Zp
bHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xX
ZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+CkBAIC05ODEyLDEyICs5NjgzLDYgQEAKICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZEltYWdlLmgiPgogICAgICAgPEZp
bHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZFNoYWRlci5oIj4K
LSAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtLmgiPgotICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4K
LSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xz
dHlsZVxTdHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuaCI+CiAgICAgICA8RmlsdGVyPnJl
bmRlcmluZ1xzdHlsZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtOTg1MSw5ICs5NzE2
LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVBl
bmRpbmdJbWFnZS5oIj4KICAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5
bGVcU3R5bGVQZW5kaW5nU2hhZGVyLmgiPgotICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8
L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJl
bmRlcmluZ1xzdHlsZVxTdHlsZVJhcmVJbmhlcml0ZWREYXRhLmgiPgogICAgICAgPEZpbHRlcj5y
ZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTk4NjMsOSArOTcy
NSw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVS
ZWZsZWN0aW9uLmgiPgogICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAg
ICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHls
ZVxTdHlsZVNoYWRlci5oIj4KLSAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+
Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdc
c3R5bGVcU3R5bGVTdXJyb3VuZERhdGEuaCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHls
ZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTQyNzIsOSArMTQxMzEsNiBAQAogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZv
cm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2ViS2l0Q1NT
TWF0cml4LmgiPgogICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwv
Q2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGRE
aXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3Vy
Y2VzXEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIj4KLSAgICAgIDxGaWx0ZXI+RGVyaXZl
ZFNvdXJjZXM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwk
KFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU1JlZ2lvblJ1bGUuaCI+CiAg
ICAgICA8RmlsdGVyPkRlcml2ZWRTb3VyY2VzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBA
IC0xNDg0NSwxMiArMTQ3MDEsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcdGV4bWFwXGNvb3JkaW5hdGVkXENvb3JkaW5hdGVkQmFja2luZ1N0b3JlLmgi
PgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWQ8L0Zp
bHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRm
b3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcdGV4bWFwXGNvb3Jk
aW5hdGVkPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQ29vcmRpbmF0ZWRDdXN0
b21GaWx0ZXJQcm9ncmFtLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0ZXht
YXBcY29vcmRpbmF0ZWQ8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGlu
YXRlZEdyYXBoaWNzTGF5ZXIuaCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXHRl
eG1hcFxjb29yZGluYXRlZDwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGQ2ZjkzMWUu
LjRkZTM4MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKQEAgLTYxMiwxMSArNjEyLDYgQEAKIAkJMTRFODM3OEUwOUY4NUQ0RjAwQjg1
QUU0IC8qIEpTRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDE0RTgzNzhEMDlGODVENEYwMEI4NUFFNCAvKiBKU0V2ZW50LmggKi87IH07CiAJCTE0
RkZFMzFEMEFFMTk2MzMwMDEzNkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50QmFzZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTRGRkUzMUIwQUUxOTYzMzAw
MTM2QkY1IC8qIEhUTUxGcmFtZUVsZW1lbnRCYXNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMTRGRkUzMUUwQUUxOTYzMzAwMTM2QkY1IC8qIEhU
TUxGcmFtZUVsZW1lbnRCYXNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDE0RkZFMzFDMEFFMTk2MzMwMDEzNkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50
QmFzZS5jcHAgKi87IH07Ci0JCTE1MEI5MjM5MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NB
cnJheUZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTUwQjkyMzcxNUYwOERDNDAwRTEwOTg2IC8qIFdlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5jcHAgKi87IH07Ci0JCTE1MEI5MjNBMTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJL
aXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDE1MEI5MjM4MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJh
eUZ1bmN0aW9uVmFsdWUuaCAqLzsgfTsKLQkJMTVCM0ZDMTkxNUZCMjE3ODAwQTgxQkNCIC8qIEN1
c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxNUIzRkMxNzE1RkIyMTc4MDBBODFCQ0IgLyogQ3VzdG9tRmlsdGVy
QXJyYXlQYXJhbWV0ZXIuaCAqLzsgfTsKLQkJMTVCOEI3QzgxNjUyQzUyMjAwMzZFRjU1IC8qIEpT
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxNUI4QjdDNjE2NTJDNTIyMDAzNkVGNTUgLyogSlNXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlLmNwcCAqLzsgfTsKLQkJMTVCOEI3QzkxNjUyQzUyMjAwMzZFRjU1
IC8qIEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTVCOEI3QzcxNjUyQzUyMjAwMzZFRjU1IC8qIEpTV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovOyB9OwogCQkxNUM3NzA4RDEwMEQzQzZCMDA1QkEy
NjcgLyogVmFsaWRpdHlTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTVDNzcwOEExMDBEM0M2QTAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaCAq
LzsgfTsKIAkJMTVDNzcwOTMxMDBEM0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTVDNzcwOTExMDBE
M0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oICovOyB9OwogCQkxNUM3NzA5NDEwMEQz
Q0E4MDA1QkEyNjcgLyogSlNWYWxpZGl0eVN0YXRlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE1Qzc3MDkyMTAwRDNDQTgwMDVCQTI2NyAvKiBKU1Zh
bGlkaXR5U3RhdGUuY3BwICovOyB9OwpAQCAtMTAzMSw3ICsxMDI2LDYgQEAKIAkJMjlBODEyNEIw
RkJCOUNBOTAwNTEwMjkzIC8qIEFYT2JqZWN0Q2FjaGVNYWMubW0gaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyOUE4MTI0NzBGQkI5Q0E5MDA1MTAyOTMgLyog
QVhPYmplY3RDYWNoZU1hYy5tbSAqLzsgfTsKIAkJMjlBQ0IyMTIxNDNFNzEyODAwNkJDQTVGIC8q
IEFjY2Vzc2liaWxpdHlNb2NrT2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAyOUFDQjIxMTE0M0U3MTI4MDA2QkNBNUYgLyogQWNjZXNzaWJpbGl0
eU1vY2tPYmplY3QuaCAqLzsgfTsKIAkJMjlBQ0IyMTQxNDNFNzQ5ODAwNkJDQTVGIC8qIEFjY2Vz
c2liaWxpdHlNb2NrT2JqZWN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDI5QUNCMjEzMTQzRTc0OTgwMDZCQ0E1RiAvKiBBY2Nlc3NpYmlsaXR5TW9j
a09iamVjdC5jcHAgKi87IH07Ci0JCTI5Q0Q2MURFMTQ2RDAyODkwMDY4RTgyQSAvKiBXZWJLaXRD
U1NTaGFkZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTBCNDIxNTcxNDY5NzY5NjAwODdFNjA0IC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmgg
Ki87IH07CiAJCTI5RDdCQ0Y2MTQ0NEFGNTgwMDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3BpbkJ1
dHRvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAy
OUQ3QkNGNTE0NDRBRjU4MDA3MDYxOUMgLyogQWNjZXNzaWJpbGl0eVNwaW5CdXR0b24uY3BwICov
OyB9OwogCQkyOUQ3QkNGQTE0NDRBRjdEMDA3MDYxOUMgLyogQWNjZXNzaWJpbGl0eVNwaW5CdXR0
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI5RDdC
Q0Y5MTQ0NEFGN0QwMDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3BpbkJ1dHRvbi5oICovOyB9Owog
CQkyQjM2NUM4NDE1MjUxMTlFMDA5MUQyN0IgLyogUmVuZGVyU1ZHRWxsaXBzZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkI0MjM1QTAxNTI1MEY2MDAw
REJCQ0Q4IC8qIFJlbmRlclNWR0VsbGlwc2UuaCAqLzsgfTsKQEAgLTExNTIsNyArMTE0Niw2IEBA
CiAJCTMxMkQ2N0IxMTUzNTY5MUYwMDU2M0QwRCAvKiBEaWN0aW9uYXJ5LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxMkQ2N0IwMTUzNTY5MUYwMDU2
M0QwRCAvKiBEaWN0aW9uYXJ5LmNwcCAqLzsgfTsKIAkJMzEzMTNGNjUxNDQzQjM1RjAwNkUyQTkw
IC8qIEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxMzEzRjYzMTQ0M0IzNUUwMDZFMkE5MCAvKiBGaWx0ZXJFZmZl
Y3RSZW5kZXJlci5jcHAgKi87IH07CiAJCTMxMzEzRjY2MTQ0M0IzNUYwMDZFMkE5MCAvKiBGaWx0
ZXJFZmZlY3RSZW5kZXJlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzEzMTNGNjQxNDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRlckVmZmVjdFJlbmRlcmVy
LmggKi87IH07Ci0JCTMxMzhBOUU1MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNoYWRlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEzOEE5RTQxNDc0
NDM0NjAwQjBFRDEyIC8qIFN0eWxlU2hhZGVyLmggKi87IH07CiAJCTMxNDAzNzlCMTI0QkVBN0Yw
MEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0MDM3OTcxMjRCRUE3RjAwQUY0MEU0IC8qIFdlYkNv
cmVNb3Rpb25NYW5hZ2VyLmggKi87IH07CiAJCTMxNDAzNzlDMTI0QkVBN0YwMEFGNDBFNCAvKiBX
ZWJDb3JlTW90aW9uTWFuYWdlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNDAzNzk4MTI0QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFu
YWdlci5tbSAqLzsgfTsKIAkJMzE0MDM3OUQxMjRCRUE3RjAwQUY0MEU0IC8qIERldmljZU9yaWVu
dGF0aW9uQ2xpZW50SU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzMTQwMzc5OTEyNEJFQTdGMDBBRjQwRTQgLyogRGV2aWNlT3JpZW50YXRpb25DbGll
bnRJT1MuaCAqLzsgfTsKQEAgLTE3MTgsNDYgKzE3MTEsMTQgQEAKIAkJNEZGQzAyMkIxNjQzQjcx
MDAwNEUxNjM4IC8qIE5vZGVSYXJlRGF0YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0RkFCNDg2NjE2NDNBNjdFMDBGNzBDMDcgLyogTm9kZVJhcmVE
YXRhLmNwcCAqLzsgfTsKIAkJNEZGQzAyMkQxNjQzQjcyNjAwNEUxNjM4IC8qIEVsZW1lbnRSYXJl
RGF0YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
RkFCNDg2NDE2NDNBNjZEMDBGNzBDMDcgLyogRWxlbWVudFJhcmVEYXRhLmNwcCAqLzsgfTsKIAkJ
NTAxQkFBQTkxMzk1MEUyQzAwRjdBQ0VCIC8qIFdpbmRSdWxlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDFCQUFBODEzOTUwRTJDMDBGN0FDRUIgLyog
V2luZFJ1bGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwotCQk1MDM4QkMwNzE0NzExQ0RCMDA5NUUwRDEgLyogV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzOEJDMDYx
NDcxMUNEQjAwOTVFMEQxIC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmNwcCAqLzsgfTsKLQkJNTAz
OEJFMkYxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2FjaGVkU2hhZGVyLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwMzhCRTJEMTQ3MkFEMjMwMDk1
RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5jcHAgKi87IH07Ci0JCTUwMzhCRTMwMTQ3MkFEMjMw
MDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzOEJFMkUxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2Fj
aGVkU2hhZGVyLmggKi87IH07Ci0JCTUwMzhCRTQwMTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRT
aGFkZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTAzOEJFM0UxNDcyQUQ5ODAwOTVFMEQxIC8qIENhY2hlZFNoYWRlci5jcHAgKi87IH07Ci0JCTUw
MzhCRTQxMTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwMzhCRTNGMTQ3MkFEOTgwMDk1RTBEMSAv
KiBDYWNoZWRTaGFkZXIuaCAqLzsgfTsKLQkJNTAzRDBDQUExNEI1QjA4NzAwRjMyRjU3IC8qIEN1
c3RvbUZpbHRlclByb2dyYW0uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTAzRDBDQTcxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dy
YW0uY3BwICovOyB9OwotCQk1MDNEMENBQTE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmlsdGVy
UmVuZGVyZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTAzRDBDQTcxNEI1QjA4NzAwRjMyRjU4IC8qIEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCAq
LzsgfTsKLQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW0u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwM0QwQ0E4
MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoKTsgfTsgfTsKLQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU4IC8qIEN1
c3RvbUZpbHRlclJlbmRlcmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MDNEMENBODE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmlsdGVyUmVuZGVy
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9OwotCQk1MDNEMENBQzE0
QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzRDBDQTkxNEI1QjA4NzAwRjMy
RjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQk1MDNEMENBRTE0QjVCMEJBMDBGMzJGNTcgLyog
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MDNEMENBRDE0QjVCMEJBMDBGMzJGNTcgLyogU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoKTsgfTsgfTsKIAkJ
NTA0QUFDQ0QxODM0NDU1OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVGaW5kZXIuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA0QUFDQ0IxODM0NDU1
OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVGaW5kZXIuY3BwICovOyB9OwogCQk1MDRBQUNDRTE4
MzQ0NTU5MDBFM0Q5QkMgLyogSW5zcGVjdG9yTm9kZUZpbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA0QUFDQ0MxODM0NDU1OTAwRTNEOUJDIC8q
IEluc3BlY3Rvck5vZGVGaW5kZXIuaCAqLzsgfTsKIAkJNTA4MUUzQzMzQ0U1ODBDMTZFRjhCNDhC
IC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MDgxRTNERjNDRkM4MEMxNkVGOEI0OEIgLyogQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0LmNwcCAqLzsgfTsKIAkJNTA4MUUzRTAzQ0ZGODBDMTZFRjhCNDhCIC8qIENh
Y2hlZFJlc291cmNlUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTA4MUUzRTEzRDAyODBDMTZFRjhCNDhCIC8qIENhY2hlZFJlc291cmNlUmVx
dWVzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTUwOENDQTRGMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGbG93VGhyZWFkLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDhDQ0E0RDEzQ0YxMDZCMDAz
MTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5oICovOyB9OwogCQk1MDhDQ0E1MDEzQ0YxMDZCMDAz
MTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MDhDQ0E0RTEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxv
d1RocmVhZC5jcHAgKi87IH07Ci0JCTUwOTMzMzRGMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTMzMzREMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0LmNwcCAqLzsgfTsKLQkJNTA5MzMzNTAxNjNCMEU0MzAwMDk5QTYwIC8qIEN1c3Rv
bUZpbHRlclBhcmFtZXRlckxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTMzMzRFMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0LmggKi87IH07Ci0JCTUwOTg3QzI2MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21G
aWx0ZXJHbG9iYWxDb250ZXh0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTg3QzI0MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0LmNwcCAqLzsgfTsKLQkJNTA5ODdDMjcxNTdENjc2RDAwQkRBODM1IC8qIEN1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTg3QzI1MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0LmggKi87IH07Ci0JCTUwOUNDOUZCMTRDMDY5RUQwMEJCRUNCRCAvKiBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDUwOUNDOUZBMTRDMDY5RUQwMEJCRUNCRCAvKiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIu
aCAqLzsgfTsKLQkJNTBBQ0UyQ0IxNEI1RDc5MzAwNDQ2NjY2IC8qIEN1c3RvbUZpbHRlck9wZXJh
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBB
Q0UyQ0ExNEI1RDc5MzAwNDQ2NjY2IC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oICovOyB9Owot
CQk1MENDMDg5QTE0QzZFOTlDMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MENDMDg5
OTE0QzZFOTlDMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmggKi87IH07
Ci0JCTUwQ0MwQTM5MTRDNkY1QjEwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBDQzBBMzgx
NEM2RjVCMTAwMTdBQjUxIC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgKi87IH07CiAJCTUw
RDEwRDk5MTU0NUY1NzYwMDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBEMTBEOTcxNTQ1RjU3
NjAwOTZEMjg4IC8qIFJlbmRlckxheWVyRmlsdGVySW5mby5jcHAgKi87IH07CiAJCTUwRDEwRDlB
MTU0NUY1NzYwMDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwRDEwRDk4MTU0NUY1NzYwMDk2RDI4
OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwotCQk1MEQzMjg1NzE2M0IzMTNGMDAxNjExMUUgLyogVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUwRDMyODU1MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRD
dXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwICovOyB9OwotCQk1MEQzMjg1ODE2M0IzMTNGMDAxNjEx
MUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQzMjg1NjE2M0IzMTNGMDAxNjExMUUgLyog
VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggKi87IH07Ci0JCTUwRDQwM0M3MTQ3NjhD
OTQwMEQzMEJCNSAvKiBGRUN1c3RvbUZpbHRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDNDNTE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0
b21GaWx0ZXIuY3BwICovOyB9OwotCQk1MEQ0MDNDODE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0
b21GaWx0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUwRDQwM0M2MTQ3NjhDOTQwMEQzMEJCNSAvKiBGRUN1c3RvbUZpbHRlci5oICovOyB9OwotCQk1
MEQ0MDVGOTE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDVGNzE0N0QzMUYzMDBE
MzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5jcHAgKi87IH07Ci0JCTUwRDQwNUZBMTQ3RDMxRjMw
MEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDVGODE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyTWVzaC5oICovOyB9OwotCQk1MEQ0MDYxMTE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyQ29tcGlsZWRQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwRDQwNjBGMTQ3RDQ5REUwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJDb21w
aWxlZFByb2dyYW0uY3BwICovOyB9OwotCQk1MEQ0MDYxMjE0N0Q0OURFMDBEMzBCQjUgLyogQ3Vz
dG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDYxMDE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVy
Q29tcGlsZWRQcm9ncmFtLmggKi87IH07Ci0JCTUwRDg4Q0I1MTVCREZEQUEwMDE4MDlGNCAvKiBD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MEQ4OENCMzE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVy
UHJvZ3JhbUluZm8uY3BwICovOyB9OwotCQk1MEQ4OENCNjE1QkRGREFBMDAxODA5RjQgLyogQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwRDg4Q0I0MTVCREZEQUEwMDE4MDlGNCAvKiBDdXN0b21GaWx0ZXJQcm9n
cmFtSW5mby5oICovOyB9OwotCQk1MEUxOENEODE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUwRTE4Q0Q1MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW0uY3BwICovOyB9OwotCQk1MEUxOENEOTE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtQ2FjaGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTBFMThDRDYxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbUNhY2hlLmNwcCAqLzsgfTsKLQkJNTBFMThDREExNkY5Mjg1ODAwQzY1NDg2IC8q
IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEUxOENENzE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCAqLzsgfTsKIAkJNTEwMTg0NjkwQjA4NjAyQTAwNEE4
MjVGIC8qIENhY2hlZFBhZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUxMDE4NDY3MEIwODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTEwMTg0NkEwQjA4
NjAyQTAwNEE4MjVGIC8qIENhY2hlZFBhZ2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTEwMTg0NjgwQjA4NjAyQTAwNEE4MjVGIC8qIENhY2hlZFBh
Z2UuY3BwICovOyB9OwogCQk1MTAxOTQ0MDE4MzZEMjA4MDA5MjU1MjMgLyogSURCSW5kZXhXcml0
ZXJMZXZlbERCLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDUxMDE5NDNFMTgzNkQyMDgwMDkyNTUyMyAvKiBJREJJbmRleFdyaXRlckxldmVsREIuY3Bw
ICovOyB9OwpAQCAtMjMzMiw4ICsyMjkzLDYgQEAKIAkJN0NFNkNCRkIxODdGMzcwNzAwRDQ2QkY1
IC8qIEZvcm1hdENvbnZlcnRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0NFNkNCRkExODdGMzcwNzAwRDQ2QkY1IC8qIEZvcm1hdENvbnZlcnRlci5o
ICovOyB9OwogCQk3Q0U2Q0JGRDE4N0YzOTQ5MDBENDZCRjUgLyogRm9ybWF0Q29udmVydGVyLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDRTZDQkZD
MTg3RjM5NDkwMEQ0NkJGNSAvKiBGb3JtYXRDb252ZXJ0ZXIuY3BwICovOyB9OwogCQk3RDc0MUJE
QTE3NzIyNkFBMDA4NTkxNzAgLyogQ1NTVmFsdWVLZXl3b3Jkcy5oIGluIENvcHkgR2VuZXJhdGVk
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjU2NTgxNDgwOUQx
MzA0MzAwMEU2MUQ3IC8qIENTU1ZhbHVlS2V5d29yZHMuaCAqLzsgfTsKLQkJN0UxMkU5MEYxNUZB
NUQzQTAwNUU0MTI2IC8qIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMTJFOTBEMTVGQTVEM0EwMDVFNDEy
NiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggKi87IH07Ci0JCTdFMTJFOTEwMTVGQTVE
M0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMTJFOTBFMTVGQTVEM0EwMDVFNDEy
NiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCAqLzsgfTsKIAkJN0UzM0NEMDExMjdG
MzQwRDAwQkU4RjE3IC8qIFB1cmdlUHJpb3JpdHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMzNDRDAwMTI3RjM0MEQwMEJFOEYxNyAvKiBQdXJnZVBy
aW9yaXR5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJN0UzN0VGMkUxMzM5MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0UzN0VGMkQxMzM5
MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3BwICovOyB9OwogCQk3RTQyOENF
NTEzRTM0MDdGMDAzQjY2MUMgLyogUmVzb3VyY2VIYW5kbGVJT1MubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RTQyOENFNDEzRTM0MDdGMDAzQjY2MUMg
LyogUmVzb3VyY2VIYW5kbGVJT1MubW0gKi87IH07CkBAIC0zNjI5LDE5ICszNTg4LDcgQEAKIAkJ
QTFFMTE1NDQxMzAxNUMzRDAwNTRBQzhDIC8qIERpc3RhbnRMaWdodFNvdXJjZS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUUxMTU0MzEzMDE1QzNE
MDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNlLmNwcCAqLzsgfTsKIAkJQTFFMTE1NDYxMzAx
NUM0RTAwNTRBQzhDIC8qIFBvaW50TGlnaHRTb3VyY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFFMTE1NDUxMzAxNUM0RTAwNTRBQzhDIC8qIFBv
aW50TGlnaHRTb3VyY2UuY3BwICovOyB9OwogCQlBMUUxMTU0ODEzMDE1QzVEMDA1NEFDOEMgLyog
U3BvdExpZ2h0U291cmNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExRTExNTQ3MTMwMTVDNUQwMDU0QUM4QyAvKiBTcG90TGlnaHRTb3VyY2UuY3Bw
ICovOyB9OwotCQlBMjRCRjc3QjE1Q0MzQkFGMDAzMTkxRjIgLyogV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTI0QkY3NzkxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCAq
LzsgfTsKLQkJQTI0QkY3N0MxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTI0QkY3N0ExNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3Bw
ICovOyB9OwotCQlBMjk1MzJDRjE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRh
dGVkUHJvZ3JhbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBMjk1MzJDRDE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJv
Z3JhbS5jcHAgKi87IH07Ci0JCUEyOTUzMkQwMTVERDVFMTcwMDQ2OUVCQyAvKiBDdXN0b21GaWx0
ZXJWYWxpZGF0ZWRQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBMjk1MzJDRTE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRh
dGVkUHJvZ3JhbS5oICovOyB9OwotCQlBMkIyQUU3QzE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9t
RmlsdGVyQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBMkIyQUU3QjE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmggKi87IH07CiAJCUEyQjkyMTczMTZDNUNDNDIwMDQxRENEOSAvKiBJbnRSZWN0RXh0ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMkI5MjE3MjE2
QzVDQzQyMDA0MURDRDkgLyogSW50UmVjdEV4dGVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCUEyRThBRTMwMTZBNDhFMUMwMDZCQjNBQSAvKiBX
ZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEEyRThBRTJFMTZBNDhFMUMwMDZCQjNBQSAvKiBXZWJLaXRDU1NGaWx0ZXJS
dWxlLmNwcCAqLzsgfTsKLQkJQTJFOEFFMzExNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENTU0Zp
bHRlclJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEEyRThBRTJGMTZBNDhFMUMwMDZCQjNBQSAvKiBXZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi87IH07
Ci0JCUEyRThBRTM3MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTJFOEFFMzUx
NkE0OTg0MDAwNkJCM0FBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgKi87IH07Ci0JCUEy
RThBRTM4MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTM2MTZBNDk4NDAw
MDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAqLzsgfTsKLQkJQTJFOEFFNDAxNkE0
OThDRjAwNkJCM0FBIC8qIERPTVdlYktpdENTU0ZpbHRlclJ1bGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTNEMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi87IH07Ci0JCUEyRThBRTQxMTZBNDk4Q0YwMDZC
QjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTJFOEFFM0UxNkE0OThDRjAwNkJCM0FBIC8qIERPTVdl
YktpdENTU0ZpbHRlclJ1bGUubW0gKi87IH07Ci0JCUEyRThBRTQyMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTNGMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01X
ZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwuaCAqLzsgfTsKIAkJQTMxQzRFNEQxNkUwMkFBNjAw
MkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTMxQzRFNEMxNkUwMkFBNjAwMkY3OTU3IC8qIE9FU1Rl
eHR1cmVIYWxmRmxvYXQuY3BwICovOyB9OwogCQlBMzFDNEU0RjE2RTAyQUI0MDAyRjc5NTcgLyog
T0VTVGV4dHVyZUhhbGZGbG9hdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQTMxQzRFNEUxNkUwMkFCNDAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxv
YXQuaCAqLzsgfTsKIAkJQTMxQzRFNTIxNkUwMkIwODAwMkY3OTU3IC8qIEpTT0VTVGV4dHVyZUhh
bGZGbG9hdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMzFDNEU1MTE2RTAyQjA4MDAyRjc5NTcgLyogSlNPRVNUZXh0dXJlSGFsZkZsb2F0LmNwcCAq
LzsgfTsKQEAgLTYyMTIsOCArNjE1OSw2IEBACiAJCUZCNDg0RjRDMTcxRjgyMUUwMDA0MDc1NSAv
KiBUcmFuc2Zvcm1GdW5jdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRkI0ODRGNEExNzFGODIxRTAwMDQwNzU1IC8qIFRyYW5zZm9ybUZ1bmN0
aW9ucy5jcHAgKi87IH07CiAJCUZCNDg0RjREMTcxRjgyMUUwMDA0MDc1NSAvKiBUcmFuc2Zvcm1G
dW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEZCNDg0RjRCMTcxRjgyMUUwMDA0MDc1NSAvKiBUcmFuc2Zvcm1GdW5jdGlvbnMuaCAqLzsgfTsK
IAkJRkI0OUMzOUQxNjc4NDk0NzAwN0ZGQjVEIC8qIENTU0hvc3RSdWxlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQjQ5QzM5QzE2Nzg0OTQ3MDA3RkZC
NUQgLyogQ1NTSG9zdFJ1bGUuaCAqLzsgfTsKLQkJRkI3MTlDM0YxNzIzOENBODAwMjJERTM0IC8q
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZCMEI3NUVGMTcyMzQyODUwMEYwNUQyQSAvKiBXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmggKi87IH07Ci0JCUZCNzE5QzQwMTcyMzhDQUUwMDIyREUzNCAvKiBX
ZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZCMEI3NUVFMTcyMzQyODUwMEYwNUQyQSAvKiBXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmNwcCAqLzsgfTsKIAkJRkI3OEFEMkUxNTFCRjVFNjAwRkU1NEQzIC8q
IENTU1BhcnNlck1vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEZCNzhBRDJDMTUxQkY1RDIwMEZFNTREMyAvKiBDU1NQYXJzZXJNb2RlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRkI5MTM5MjQxNkFF
NEMxNzAwMUZFNjgyIC8qIERPTVBhdGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEZCOTEzOTIwMTZBRTRCMEIwMDFGRTY4MiAvKiBET01QYXRoLmggKi87
IH07CiAJCUZCOTEzOTI2MTZBRTRDMkYwMDFGRTY4MiAvKiBDYW52YXNQYXRoTWV0aG9kcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkI5MTM5MUYxNkFF
NEIwQjAwMUZFNjgyIC8qIENhbnZhc1BhdGhNZXRob2RzLmggKi87IH07CkBAIC03NDMxLDExICs3
Mzc2LDYgQEAKIAkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZlbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMTRGRkUzMUIwQUUxOTYzMzAwMTM2QkY1IC8qIEhUTUxGcmFtZUVsZW1lbnRC
YXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxGcmFtZUVsZW1lbnRC
YXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0RkZFMzFDMEFFMTk2MzMwMDEz
NkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50QmFzZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBIVE1MRnJhbWVFbGVtZW50QmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCTE1MEI5MjM3MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2Vi
S2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJMTUwQjkyMzgxNUYwOERDNDAwRTEwOTg2IC8qIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJLaXRDU1NBcnJheUZ1bmN0
aW9uVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMTVCM0ZDMTcxNUZCMjE3
ODAwQTgxQkNCIC8qIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmg7IHBhdGggPSBm
aWx0ZXJzL0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTE1QjhCN0M2MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0
aW9uVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJ
MTVCOEI3QzcxNjUyQzUyMjAwMzZFRjU1IC8qIEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMTVDNzcwODkxMDBEM0M2QTAw
NUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFZhbGlk
aXR5U3RhdGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNUM3NzA4QTEwMEQz
QzZBMDA1QkEyNjcgLyogVmFsaWRpdHlTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBWYWxpZGl0eVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE1
Qzc3MDkxMTAwRDNDQTgwMDVCQTI2NyAvKiBKU1ZhbGlkaXR5U3RhdGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNWYWxpZGl0eVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC04MDIzLDcgKzc5NjMsNiBAQAogCQkzMTJENjdCMDE1MzU2OTFGMDA1NjNE
MEQgLyogRGljdGlvbmFyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBEaWN0aW9uYXJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMTNGNjMx
NDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMTNGNjQxNDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRl
ckVmZmVjdFJlbmRlcmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbHRl
ckVmZmVjdFJlbmRlcmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTMxMzhBOUU0
MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNoYWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBTdHlsZVNoYWRlci5oOyBwYXRoID0gc3R5bGUvU3R5bGVTaGFkZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0MDM3OTcxMjRCRUE3RjAwQUY0MEU0IC8qIFdl
YkNvcmVNb3Rpb25NYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFdl
YkNvcmVNb3Rpb25NYW5hZ2VyLmg7IHBhdGggPSBpb3MvV2ViQ29yZU1vdGlvbk1hbmFnZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0MDM3OTgxMjRCRUE3RjAwQUY0MEU0IC8q
IFdlYkNvcmVNb3Rpb25NYW5hZ2VyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBuYW1lID0gV2ViQ29yZU1vdGlvbk1hbmFnZXIubW07IHBhdGggPSBpb3MvV2ViQ29yZU1vdGlv
bk1hbmFnZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxNDAzNzk5MTI0QkVB
N0YwMEFGNDBFNCAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oOyBwYXRoID0g
aW9zL0RldmljZU9yaWVudGF0aW9uQ2xpZW50SU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC04NjYyLDQ4ICs4NjAxLDE0IEBACiAJCTRGQUI0ODY2MTY0M0E2N0UwMEY3MEMwNyAv
KiBOb2RlUmFyZURhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Tm9kZVJhcmVEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNEZCMzkwQUMx
NUVGNjFGMzAwN0FENTFGIC8qIEdlbmVyYXRlZEltYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEdlbmVyYXRlZEltYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNTAxQkFBQTgxMzk1MEUyQzAwRjdBQ0VCIC8qIFdpbmRSdWxlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdpbmRSdWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCTUwMzhCQzA2MTQ3MTFDREIwMDk1RTBEMSAvKiBXZWJLaXRDU1NTaGFkZXJW
YWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJLaXRDU1NT
aGFkZXJWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwMzhCRTJEMTQ3
MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBTdHlsZUNhY2hlZFNoYWRlci5jcHA7IHBhdGggPSBzdHlsZS9T
dHlsZUNhY2hlZFNoYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwMzhC
RTJFMTQ3MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBTdHlsZUNhY2hlZFNoYWRlci5oOyBwYXRoID0gc3R5bGUvU3R5
bGVDYWNoZWRTaGFkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzOEJFM0Ux
NDcyQUQ5ODAwOTVFMEQxIC8qIENhY2hlZFNoYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRTaGFkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQk1MDM4QkUzRjE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZFNoYWRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwotCQk1MDNEMENBNzE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21G
aWx0ZXJQcm9ncmFtLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwM0QwQ0E3MTRCNUIwODcwMEYzMkY1OCAv
KiBDdXN0b21GaWx0ZXJSZW5kZXJlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBDdXN0b21GaWx0ZXJSZW5kZXJlci5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZp
bHRlclJlbmRlcmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzRDBDQTgx
NEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW0uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oOyBwYXRoID0gZmlsdGVycy9D
dXN0b21GaWx0ZXJQcm9ncmFtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwM0Qw
Q0E4MTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0b21GaWx0ZXJSZW5kZXJlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJSZW5kZXJlci5oOyBwYXRoID0gZmls
dGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk1MDNEMENBOTE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xp
ZW50Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzRDBDQUQxNEI1QjBCQTAwRjMyRjU3IC8qIFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaDsgcGF0aCA9IHN0eWxlL1N0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MDRBQUNDQjE4MzQ0NTU5
MDBFM0Q5QkMgLyogSW5zcGVjdG9yTm9kZUZpbmRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0b3JOb2RlRmluZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNTA0QUFDQ0MxODM0NDU1OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVG
aW5kZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yTm9kZUZp
bmRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MDgxRTNERjNDRkM4MEMxNkVG
OEI0OEIgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk1MDgxRTNFMTNEMDI4MEMxNkVGOEI0OEIgLyogQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRSZXNv
dXJjZVJlcXVlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTA4Q0NBNEQxM0NG
MTA2QjAwMzE1MUYzIC8qIFJlbmRlckZsb3dUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUmVuZGVyRmxvd1RocmVhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1MDhDQ0E0RTEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJGbG93VGhyZWFkLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5MzMzNEQxNjNCMEU0MzAwMDk5QTYwIC8q
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHA7IHBhdGggPSBmaWx0ZXJz
L0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQk1MDkzMzM0RTE2M0IwRTQzMDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlz
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXJMaXN0Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5ODdDMjQxNTdENjc2RDAwQkRBODM1IC8qIEN1
c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1
c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk1MDk4N0MyNTE1N0Q2NzZEMDBCREE4MzUgLyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJHbG9iYWxDb250
ZXh0Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5Q0M5RkExNEMwNjlFRDAwQkJFQ0JEIC8qIEN1c3Rv
bUZpbHRlclBhcmFtZXRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0
b21GaWx0ZXJQYXJhbWV0ZXIuaDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwOUVDMTA4MTVFODQ4Q0EwMEU4MjU4
MSAvKiBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmg7IHBhdGggPSBm
aWx0ZXJzL0N1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk1MEFDRTJDQTE0QjVENzkzMDA0NDY2NjYgLyogQ3VzdG9tRmlsdGVyT3Bl
cmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBCNDIxNTcxNDY5NzY5NjAwODdFNjA0IC8qIFdlYktp
dENTU1NoYWRlclZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYktp
dENTU1NoYWRlclZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwQ0MwODk5
MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmg7
IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQk1MENDMEEzODE0QzZGNUIxMDAxN0FCNTEgLyogQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEN1
c3RvbUZpbHRlck9wZXJhdGlvbi5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJh
dGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUwRDEwRDk3MTU0NUY1NzYw
MDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNTBEMTBEOTgxNTQ1RjU3NjAwOTZEMjg4IC8qIFJlbmRlckxheWVy
RmlsdGVySW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJMYXll
ckZpbHRlckluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBEMzI4NTUxNjNC
MzEzRjAwMTYxMTFFIC8qIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24uY3BwOyBwYXRoID0gZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24u
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQzMjg1NjE2M0IzMTNGMDAxNjEx
MUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgbmFtZSA9IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oOyBwYXRoID0g
ZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJNTBENDAzQzUxNDc2OEM5NDAwRDMwQkI1IC8qIEZFQ3VzdG9tRmlsdGVy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEZFQ3VzdG9tRmlsdGVy
LmNwcDsgcGF0aCA9IGZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk1MEQ0MDNDNjE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0b21GaWx0ZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRkVDdXN0b21GaWx0ZXIuaDsgcGF0
aCA9IGZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJNTBENDA1RjcxNDdEMzFGMzAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlck1lc2guY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ3VzdG9tRmlsdGVyTWVzaC5jcHA7IHBh
dGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQk1MEQ0MDVGODE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJNZXNoLmg7IHBhdGgg
PSBmaWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJNTBENDA2MEYxNDdENDlERTAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21GaWx0ZXJD
b21waWxlZFByb2dyYW0uY3BwOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFBy
b2dyYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQ0MDYxMDE0N0Q0OURF
MDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oOyBwYXRoID0g
ZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKLQkJNTBEODhDQjMxNUJERkRBQTAwMTgwOUY0IC8qIEN1c3RvbUZpbHRlclByb2dy
YW1JbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEN1c3RvbUZp
bHRlclByb2dyYW1JbmZvLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQ4OENCNDE1QkRGREFBMDAx
ODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaDsgcGF0aCA9IGZpbHRlcnMvQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBF
MThDRDUxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBTdHlsZUN1c3RvbUZpbHRlclByb2dy
YW0uY3BwOyBwYXRoID0gc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBFMThDRDYxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcDsgcGF0aCA9IHN0eWxl
L1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKLQkJNTBFMThDRDcxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJv
Z3JhbUNhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFN0eWxlQ3VzdG9t
RmlsdGVyUHJvZ3JhbUNhY2hlLmg7IHBhdGggPSBzdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dy
YW1DYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MTAxODQ2NzBCMDg2MDJB
MDA0QTgyNUYgLyogQ2FjaGVkUGFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDYWNoZWRQYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUxMDE4NDY4MEIw
ODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENhY2hlZFBhZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk1MTAxOTQzRTE4MzZEMjA4MDA5MjU1MjMgLyogSURCSW5kZXhXcml0ZXJMZXZlbERCLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElEQkluZGV4V3JpdGVyTGV2ZWxE
Qi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC05MzM3LDggKzkyNDIsNiBAQAog
CQk3Q0M3RTNENjE3MjA4QzBGMDAzQzUyNzcgLyogSUROU2NyaXB0V2hpdGVMaXN0LnR4dCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBJRE5TY3JpcHRXaGl0ZUxpc3QudHh0OyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk3Q0U2Q0JGQTE4N0YzNzA3MDBENDZCRjUgLyogRm9ybWF0Q29udmVy
dGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvcm1hdENvbnZlcnRlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3Q0U2Q0JGQzE4N0YzOTQ5MDBENDZCRjUg
LyogRm9ybWF0Q29udmVydGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEZvcm1hdENvbnZlcnRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdF
MTJFOTBEMTVGQTVEM0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3Iu
aDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQk3RTEyRTkwRTE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmls
dGVyTWVzaEdlbmVyYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmls
dGVyTWVzaEdlbmVyYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdFMzND
RDAwMTI3RjM0MEQwMEJFOEYxNyAvKiBQdXJnZVByaW9yaXR5LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFB1cmdlUHJpb3JpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJN0UzN0VGMkQxMzM5MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gU3VicmVzb3VyY2VMb2FkZXJD
Ri5jcHA7IHBhdGggPSBjZi9TdWJyZXNvdXJjZUxvYWRlckNGLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJN0U0MjhDRTQxM0UzNDA3RjAwM0I2NjFDIC8qIFJlc291cmNlSGFuZGxl
SU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUmVzb3VyY2VI
YW5kbGVJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMDY1MCwxOSArMTA1
NTMsNyBAQAogCQlBMUUxMTU0MzEzMDE1QzNEMDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IERpc3RhbnRMaWdodFNv
dXJjZS5jcHA7IHBhdGggPSBmaWx0ZXJzL0Rpc3RhbnRMaWdodFNvdXJjZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExRTExNTQ1MTMwMTVDNEUwMDU0QUM4QyAvKiBQb2ludExp
Z2h0U291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFBvaW50
TGlnaHRTb3VyY2UuY3BwOyBwYXRoID0gZmlsdGVycy9Qb2ludExpZ2h0U291cmNlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTFFMTE1NDcxMzAxNUM1RDAwNTRBQzhDIC8qIFNw
b3RMaWdodFNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBT
cG90TGlnaHRTb3VyY2UuY3BwOyBwYXRoID0gZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMjRCRjc3OTE1Q0MzQkFGMDAzMTkxRjIgLyog
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCUEyNEJGNzdBMTVDQzNCQUYwMDMxOTFGMiAvKiBXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMjk1MzJD
RDE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUEyOTUzMkNFMTVERDVFMTcwMDQ2OUVC
QyAvKiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaDsgcGF0aCA9IGZpbHRl
cnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQlBMkIyQUU3QjE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckNvbnN0YW50
cy5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb25zdGFudHMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQTJCOTIxNzIxNkM1Q0M0MjAwNDFEQ0Q5IC8qIEludFJlY3RFeHRl
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW50UmVjdEV4dGVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUyRTE2QTQ4RTFDMDA2QkIzQUEgLyog
V2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBXZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJQTJFOEFFMkYxNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENTU0ZpbHRlclJ1bGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUzNTE2QTQ5ODQwMDA2QkIzQUEgLyogSlNX
ZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCUEyRThBRTM2MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUEyRThBRTNEMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IERPTVdlYktpdENTU0ZpbHRlclJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJQTJFOEFFM0UxNkE0OThDRjAwNkJCM0FBIC8qIERPTVdlYktpdENTU0ZpbHRlclJ1bGUubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBET01XZWJLaXRDU1NGaWx0
ZXJSdWxlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUzRjE2QTQ5OENG
MDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZUludGVybmFsLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVdlYktpdENTU0ZpbHRlclJ1bGVJbnRlcm5hbC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMzFDNEU0QzE2RTAyQUE2MDAyRjc5NTcgLyog
T0VTVGV4dHVyZUhhbGZGbG9hdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBPRVNUZXh0dXJlSGFsZkZsb2F0LmNwcDsgcGF0aCA9IGNhbnZhcy9PRVNUZXh0dXJlSGFs
ZkZsb2F0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTMxQzRFNEUxNkUwMkFC
NDAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gT0VTVGV4dHVyZUhhbGZGbG9hdC5oOyBwYXRoID0gY2FudmFzL09FU1RleHR1
cmVIYWxmRmxvYXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTMxQzRFNTAxNkUw
MkFDNTAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IE9FU1RleHR1cmVI
YWxmRmxvYXQuaWRsOyBwYXRoID0gY2FudmFzL09FU1RleHR1cmVIYWxmRmxvYXQuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTM2MDIsOSArMTM0OTMsNiBAQAogCQlGQUJFNzJG
MzEwNTlDMUVCMDBEOTk5REQgLyogbWF0aHRhZ3MuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
bWF0aHRhZ3MuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUZBQkU3MkZCMTA1OUMy
MTEwMEQ5OTlERCAvKiBNYXRoTUxFbGVtZW50RmFjdG9yeS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBNYXRoTUxFbGVtZW50RmFjdG9yeS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUZBQkU3MkZDMTA1OUMyMTEwMEQ5OTlERCAvKiBNYXRoTUxOYW1l
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNYXRoTUxOYW1lcy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUZCMEI3NUVFMTcyMzQyODUwMEYwNUQy
QSAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQlGQjBCNzVFRjE3MjM0Mjg1MDBGMDVEMkEgLyogV2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJL
aXRDU1NNYXRGdW5jdGlvblZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUZC
MUE2NkQ5MTcyMjVBNjYwMEJBQTdBRiAvKiBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
ci5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlGQjJDMTVDMjE2NUQ2NDkwMDAzOUM5RjggLyogQ2FjaGVk
U1ZHRG9jdW1lbnRSZWZlcmVuY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
Q2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRkIzMDU2QzExNjlFNURBQzAwOTZBMjMyIC8qIENTU0dyb3VwaW5nUnVsZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NHcm91cGluZ1J1bGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJRkI0ODRGNEExNzFGODIxRTAwMDQwNzU1IC8qIFRyYW5zZm9ybUZ1
bmN0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUcmFuc2Zv
cm1GdW5jdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY1MjgsOSAr
MTY0MTYsNiBAQAogCQkJCTg1OEMzOEE0MEFBOEYyMDQwMEIxODdBNCAvKiBET01SZWN0Lm1tICov
LAogCQkJCTg1NUQzNTg5MEFENzA3MzEwMDE5QUFDNyAvKiBET01SR0JDb2xvci5oICovLAogCQkJ
CUJDQUVGQ0FEMTAxNkNFNEEwMDQwRDM0RSAvKiBET01SR0JDb2xvci5tbSAqLywKLQkJCQlBMkU4
QUUzRDE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5oICovLAotCQkJ
CUEyRThBRTNFMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLm1tICov
LAotCQkJCUEyRThBRTNGMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxl
SW50ZXJuYWwuaCAqLywKIAkJCQkzMTA2MDM3NjE0MzI4MUNEMDBBQkY0QkEgLyogRE9NV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuaCAqLywKIAkJCQkzMTA2MDM3NzE0MzI4MUNEMDBBQkY0QkEgLyogRE9N
V2ViS2l0Q1NTRmlsdGVyVmFsdWUubW0gKi8sCiAJCQkJMzEwNjAzNzgxNDMyODFDRDAwQUJGNEJB
IC8qIERPTVdlYktpdENTU0ZpbHRlclZhbHVlSW50ZXJuYWwuaCAqLywKQEAgLTE4MTAyLDMzICsx
Nzk4Nyw2IEBACiAJCUE3NUU4QjdGMEUxREUyQjAwMDdGMjQ4MSAvKiBmaWx0ZXJzICovID0gewog
CQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQkxNUIzRkMxNzE1RkIyMTc4
MDBBODFCQ0IgLyogQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCAqLywKLQkJCQlGQjFBNjZE
OTE3MjI1QTY2MDBCQUE3QUYgLyogQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaCAqLywKLQkJ
CQk1MEQ0MDYwRjE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
LmNwcCAqLywKLQkJCQk1MEQ0MDYxMDE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtLmggKi8sCi0JCQkJQTJCMkFFN0IxNjM3NUVFNTAwQ0ZBNTBCIC8qIEN1c3Rv
bUZpbHRlckNvbnN0YW50cy5oICovLAotCQkJCTUwOTg3QzI0MTU3RDY3NkQwMEJEQTgzNSAvKiBD
dXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcCAqLywKLQkJCQk1MDk4N0MyNTE1N0Q2NzZEMDBC
REE4MzUgLyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oICovLAotCQkJCTUwRDQwNUY3MTQ3
RDMxRjMwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmNwcCAqLywKLQkJCQk1MEQ0MDVGODE0
N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5oICovLAotCQkJCTdFMTJFOTBFMTVG
QTVEM0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCAqLywKLQkJCQk3
RTEyRTkwRDE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oICov
LAotCQkJCTUwQ0MwODk5MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJh
bWV0ZXIuaCAqLywKLQkJCQk1MENDMEEzODE0QzZGNUIxMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmNwcCAqLywKLQkJCQk1MEFDRTJDQTE0QjVENzkzMDA0NDY2NjYgLyogQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uLmggKi8sCi0JCQkJNTA5Q0M5RkExNEMwNjlFRDAwQkJFQ0JEIC8qIEN1
c3RvbUZpbHRlclBhcmFtZXRlci5oICovLAotCQkJCTUwOTMzMzREMTYzQjBFNDMwMDA5OUE2MCAv
KiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCAqLywKLQkJCQk1MDkzMzM0RTE2M0IwRTQz
MDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oICovLAotCQkJCTUwM0QwQ0E3
MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCAqLywKLQkJCQk1MDNE
MENBODE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oICovLAotCQkJCTUw
M0QwQ0E5MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggKi8s
Ci0JCQkJNTBEODhDQjMxNUJERkRBQTAwMTgwOUY0IC8qIEN1c3RvbUZpbHRlclByb2dyYW1JbmZv
LmNwcCAqLywKLQkJCQk1MEQ4OENCNDE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8uaCAqLywKLQkJCQk1MDNEMENBNzE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmls
dGVyUmVuZGVyZXIuY3BwICovLAotCQkJCTUwM0QwQ0E4MTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0
b21GaWx0ZXJSZW5kZXJlci5oICovLAotCQkJCTUwOUVDMTA4MTVFODQ4Q0EwMEU4MjU4MSAvKiBD
dXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCAqLywKLQkJCQlBMjk1MzJDRDE1REQ1RTE3
MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAgKi8sCi0JCQkJQTI5
NTMyQ0UxNURENUUxNzAwNDY5RUJDIC8qIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCAq
LywKIAkJCQlBMUUxMTU0MzEzMDE1QzNEMDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNlLmNw
cCAqLywKIAkJCQk4NDczMEQ1QTEyNDhGMEIzMDBEM0E5QzkgLyogRGlzdGFudExpZ2h0U291cmNl
LmggKi8sCiAJCQkJQTc1RThCODAwRTFERTJENjAwN0YyNDgxIC8qIEZFQmxlbmQuY3BwICovLApA
QCAtMTgxNDEsOCArMTc5OTksNiBAQAogCQkJCUE3NUU4Qjg3MEUxREUyRDYwMDdGMjQ4MSAvKiBG
RUNvbXBvc2l0ZS5oICovLAogCQkJCTg0NzMwRDVCMTI0OEYwQjMwMEQzQTlDOSAvKiBGRUNvbnZv
bHZlTWF0cml4LmNwcCAqLywKIAkJCQk4NDczMEQ1QzEyNDhGMEIzMDBEM0E5QzkgLyogRkVDb252
b2x2ZU1hdHJpeC5oICovLAotCQkJCTUwRDQwM0M1MTQ3NjhDOTQwMEQzMEJCNSAvKiBGRUN1c3Rv
bUZpbHRlci5jcHAgKi8sCi0JCQkJNTBENDAzQzYxNDc2OEM5NDAwRDMwQkI1IC8qIEZFQ3VzdG9t
RmlsdGVyLmggKi8sCiAJCQkJODQ3MzBENUQxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFRGlmZnVzZUxp
Z2h0aW5nLmNwcCAqLywKIAkJCQk4NDczMEQ1RTEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaWZmdXNl
TGlnaHRpbmcuaCAqLywKIAkJCQk4NDczMEQ1RjEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaXNwbGFj
ZW1lbnRNYXAuY3BwICovLApAQCAtMTgxODMsOCArMTgwMzksNiBAQAogCQkJCTg0QTgxRjQwMEZD
N0UwMjcwMDk1NTMwMCAvKiBTb3VyY2VHcmFwaGljLmggKi8sCiAJCQkJQTFFMTE1NDcxMzAxNUM1
RDAwNTRBQzhDIC8qIFNwb3RMaWdodFNvdXJjZS5jcHAgKi8sCiAJCQkJODQ3MzBENzYxMjQ4RjBC
MzAwRDNBOUM5IC8qIFNwb3RMaWdodFNvdXJjZS5oICovLAotCQkJCTUwRDMyODU1MTYzQjMxM0Yw
MDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwICovLAotCQkJCTUw
RDMyODU2MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24u
aCAqLywKIAkJCSk7CiAJCQluYW1lID0gZmlsdGVyczsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CkBAIC0xODgyNyw4ICsxODY4MSw2IEBACiAJCQkJQkNFMDEzOTkwQzBCRUYxODAwNDM4NjBB
IC8qIEpTU3R5bGVTaGVldC5oICovLAogCQkJCUE4NEVCRDgyMENCOEM5NzcwMDA3OTYwOSAvKiBK
U1N0eWxlU2hlZXRMaXN0LmNwcCAqLywKIAkJCQlBODRFQkQ4MTBDQjhDOTc3MDAwNzk2MDkgLyog
SlNTdHlsZVNoZWV0TGlzdC5oICovLAotCQkJCUEyRThBRTM1MTZBNDk4NDAwMDZCQjNBQSAvKiBK
U1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwICovLAotCQkJCUEyRThBRTM2MTZBNDk4NDAwMDZCQjNB
QSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAqLywKIAkJCQkzMTA2MDM3MjE0MzI4MTlDMDBB
QkY0QkEgLyogSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAgKi8sCiAJCQkJMzEwNjAzNzMxNDMy
ODE5QzAwQUJGNEJBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCAqLywKIAkJCQkzMTZGRTA2
RDBFNkNDQkVFMDBCRjYwODggLyogSlNXZWJLaXRDU1NLZXlmcmFtZVJ1bGUuY3BwICovLApAQCAt
MTg4MzcsOCArMTg2ODksNiBAQAogCQkJCTMxNkZFMDcwMEU2Q0NCRUUwMEJGNjA4OCAvKiBKU1dl
YktpdENTU0tleWZyYW1lc1J1bGUuaCAqLywKIAkJCQk0OTgzOTEzRDBGMUU3Njc1MDBDMjM3ODIg
LyogSlNXZWJLaXRDU1NNYXRyaXguY3BwICovLAogCQkJCTQ5ODM5MTNFMEYxRTc2NzUwMEMyMzc4
MiAvKiBKU1dlYktpdENTU01hdHJpeC5oICovLAotCQkJCTE1QjhCN0M2MTY1MkM1MjIwMDM2RUY1
NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwICovLAotCQkJCTE1QjhCN0M3MTY1
MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCAqLywKIAkJCQk4
QUNDMjRDRDE0OEUyNEIyMDBFRkNDMEQgLyogSlNXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCAqLywK
IAkJCQk4QUNDMjRDRTE0OEUyNEIyMDBFRkNDMEQgLyogSlNXZWJLaXRDU1NSZWdpb25SdWxlLmgg
Ki8sCiAJCQkJMzE2MTFFNTgwRTFDNERFMDAwRjZBNTc5IC8qIEpTV2ViS2l0Q1NTVHJhbnNmb3Jt
VmFsdWUuY3BwICovLApAQCAtMTkxMDgsOCArMTg5NTgsNiBAQAogCQkJCTZDNjM4ODkzQTk2Q0NF
RTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmggKi8sCiAJCQkJ
QkNCMTZDMEEwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFNjcmlwdC5jcHAgKi8sCiAJCQkJQkNC
MTZDMEIwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFNjcmlwdC5oICovLAotCQkJCTUwMzhCRTNF
MTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuY3BwICovLAotCQkJCTUwMzhCRTNGMTQ3
MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuaCAqLywKIAkJCQlEMEJDNTQ0ODE0NDNBQzRB
MDBFMTA1REEgLyogQ2FjaGVkU3R5bGVTaGVldENsaWVudC5oICovLAogCQkJCUExMDRGMjQxMTRD
NzFGN0EwMDlFMkMyMyAvKiBDYWNoZWRTVkdEb2N1bWVudC5jcHAgKi8sCiAJCQkJQTEwNEYyNDIx
NEM3MUY3QTAwOUUyQzIzIC8qIENhY2hlZFNWR0RvY3VtZW50LmggKi8sCkBAIC0yMDU3OSwxMiAr
MjA0MjcsNiBAQAogCQkJCUJDRUY0NDRDMEU2NzQ2MjgwMDFDMTI4NyAvKiBTdHlsZUNhY2hlZElt
YWdlLmggKi8sCiAJCQkJOTM5M0U2MDIxNTFBOUExODAwMDY2RjA2IC8qIFN0eWxlQ2FjaGVkSW1h
Z2VTZXQuY3BwICovLAogCQkJCTkzOTNFNjAzMTUxQTlBMTgwMDA2NkYwNiAvKiBTdHlsZUNhY2hl
ZEltYWdlU2V0LmggKi8sCi0JCQkJNTAzOEJFMkQxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2Fj
aGVkU2hhZGVyLmNwcCAqLywKLQkJCQk1MDM4QkUyRTE0NzJBRDIzMDA5NUUwRDEgLyogU3R5bGVD
YWNoZWRTaGFkZXIuaCAqLywKLQkJCQk1MEUxOENENTE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtLmNwcCAqLywKLQkJCQk1MDNEMENBRDE0QjVCMEJBMDBGMzJGNTcg
LyogU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmggKi8sCi0JCQkJNTBFMThDRDYxNkY5Mjg1ODAw
QzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCAqLywKLQkJCQk1MEUx
OENENzE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCAq
LywKIAkJCQlCQzVFQjY3RTBFODFENEE3MDBCMjU5NjUgLyogU3R5bGVEYXNoYm9hcmRSZWdpb24u
aCAqLywKIAkJCQlCQzVFQjhCNjBFODIwMUJEMDBCMjU5NjUgLyogU3R5bGVEZXByZWNhdGVkRmxl
eGlibGVCb3hEYXRhLmNwcCAqLywKIAkJCQlCQzVFQjhCNzBFODIwMUJEMDBCMjU5NjUgLyogU3R5
bGVEZXByZWNhdGVkRmxleGlibGVCb3hEYXRhLmggKi8sCkBAIC0yMDYxMCw3ICsyMDQ1Miw2IEBA
CiAJCQkJQkMyMjcyQkEwRTgyRUFBRTAwRTdGOTc1IC8qIFN0eWxlUmFyZU5vbkluaGVyaXRlZERh
dGEuY3BwICovLAogCQkJCUJDMjI3MkJCMEU4MkVBQUUwMEU3Rjk3NSAvKiBTdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhLmggKi8sCiAJCQkJQkMyMjcyODYwRTgyRTcwNzAwRTdGOTc1IC8qIFN0eWxl
UmVmbGVjdGlvbi5oICovLAotCQkJCTMxMzhBOUU0MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNo
YWRlci5oICovLAogCQkJCUJDNUVCNUU2MEU4MUJGRUYwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5k
RGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI1RTQwRTgxQkY2RDAwQjI1OTY1IC8qIFN0eWxlU3Vycm91
bmREYXRhLmggKi8sCiAJCQkJQkM1RUI4MEQwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNm
b3JtRGF0YS5jcHAgKi8sCkBAIC0yMTcxMywxMCArMjE1NTQsNiBAQAogCQkJCUJDNUVDMTc2MEE1
MDdFM0UwMDYwMDdGNSAvKiB2aWV3LXNvdXJjZS5jc3MgKi8sCiAJCQkJM0ZGRkY5QUIxNTlEOUIw
NjAwMjBCQkQ1IC8qIFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAgKi8sCiAJCQkJM0ZGRkY5QUMx
NTlEOUIwNjAwMjBCQkQ1IC8qIFZpZXdwb3J0U3R5bGVSZXNvbHZlci5oICovLAotCQkJCTE1MEI5
MjM3MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwICov
LAotCQkJCTE1MEI5MjM4MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1bmN0aW9u
VmFsdWUuaCAqLywKLQkJCQlBMkU4QUUyRTE2QTQ4RTFDMDA2QkIzQUEgLyogV2ViS2l0Q1NTRmls
dGVyUnVsZS5jcHAgKi8sCi0JCQkJQTJFOEFFMkYxNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENT
U0ZpbHRlclJ1bGUuaCAqLywKIAkJCQkzMTA2MDM2QzE0MzI3RDJFMDBBQkY0QkEgLyogV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuY3BwICovLAogCQkJCTMxMDYwMzZEMTQzMjdEMkUwMEFCRjRCQSAvKiBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oICovLAogCQkJCTMxMDYwMzZFMTQzMjdEMkUwMEFCRjRCQSAv
KiBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5pZGwgKi8sCkBAIC0yMTcyNiwxOCArMjE1NjMsMTIgQEAK
IAkJCQkzMTI4OEU3MDBFMzAwNUQ2MDAzNjE5QUUgLyogV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5j
cHAgKi8sCiAJCQkJMzEyODhFNzEwRTMwMDVENjAwMzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1l
c1J1bGUuaCAqLywKIAkJCQkzMTZGRTA5MjBFNkNDRDdGMDBCRjYwODggLyogV2ViS2l0Q1NTS2V5
ZnJhbWVzUnVsZS5pZGwgKi8sCi0JCQkJRkIwQjc1RUUxNzIzNDI4NTAwRjA1RDJBIC8qIFdlYktp
dENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwICovLAotCQkJCUZCMEI3NUVGMTcyMzQyODUwMEYwNUQy
QSAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmggKi8sCiAJCQkJNDk4MzkxNTUwRjFFNzc2
OTAwQzIzNzgyIC8qIFdlYktpdENTU01hdHJpeC5jcHAgKi8sCiAJCQkJNDk4MzkxNTYwRjFFNzc2
OTAwQzIzNzgyIC8qIFdlYktpdENTU01hdHJpeC5oICovLAogCQkJCTQ5ODM5MTU3MEYxRTc3Njkw
MEMyMzc4MiAvKiBXZWJLaXRDU1NNYXRyaXguaWRsICovLAotCQkJCUEyNEJGNzdBMTVDQzNCQUYw
MDMxOTFGMiAvKiBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCAqLywKLQkJCQlBMjRCRjc3
OTE1Q0MzQkFGMDAzMTkxRjIgLyogV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovLAogCQkJ
CThBQTYxQ0ZEMTQ0RDU5NUIwMEYzNzM1MCAvKiBXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCAqLywK
IAkJCQk4QUE2MUNGRTE0NEQ1OTVCMDBGMzczNTAgLyogV2ViS2l0Q1NTUmVnaW9uUnVsZS5oICov
LAogCQkJCThBRDBBNTU2MTRDODc0MjUwMDBEODNDNSAvKiBXZWJLaXRDU1NSZWdpb25SdWxlLmlk
bCAqLywKLQkJCQk1MDM4QkMwNjE0NzExQ0RCMDA5NUUwRDEgLyogV2ViS2l0Q1NTU2hhZGVyVmFs
dWUuY3BwICovLAotCQkJCTUwQjQyMTU3MTQ2OTc2OTYwMDg3RTYwNCAvKiBXZWJLaXRDU1NTaGFk
ZXJWYWx1ZS5oICovLAogCQkJCUJDOUFERDdGMENDNDA5MjIwMDA5OEM0QyAvKiBXZWJLaXRDU1NU
cmFuc2Zvcm1WYWx1ZS5jcHAgKi8sCiAJCQkJQkM5QUREMjIwQ0M0MDMyNjAwMDk4QzRDIC8qIFdl
YktpdENTU1RyYW5zZm9ybVZhbHVlLmggKi8sCiAJCQkJMzE2MTFFNTQwRTFDNEQ0QTAwRjZBNTc5
IC8qIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbCAqLywKQEAgLTIyOTk5LDcgKzIyODMwLDYg
QEAKIAkJCQk2QzYzODg5NUE5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
SW5pdGlhdG9ycy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNCMTZDMjQwOTc5QzNCRDAwNDY3NzQx
IC8qIENhY2hlZFNjcmlwdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNENTMzNjQwRUQ2ODQ4OTAw
ODg3NDY4IC8qIENhY2hlZFNjcmlwdFNvdXJjZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLywKLQkJ
CQk1MDM4QkU0MTE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmggaW4gSGVhZGVycyAq
LywKIAkJCQlEMEJDNTQ0OTE0NDNBQzRBMDBFMTA1REEgLyogQ2FjaGVkU3R5bGVTaGVldENsaWVu
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTEwNEYyNDQxNEM3MUY3QTAwOUUyQzIzIC8qIENhY2hl
ZFNWR0RvY3VtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUVGNEU2OTE3MEUxNzQ4MDBBQjI3
OTkgLyogQ2FjaGVkU1ZHRG9jdW1lbnRDbGllbnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjMxODgs
MjMgKzIzMDE4LDggQEAKIAkJCQk4NjgxNjBENjE4NzY2QTEzMDAyMUU3OUQgLyogVXNlckFjdGl2
aXR5LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzIyNzJBRDBFODJFOEYzMDBFN0Y5NzUgLyogQ3Vy
c29yTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjJDRDMyNUExMTU3RTU3QzAwNjNCMEE3IC8q
IEN1c3RvbUV2ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQkxNUIzRkMxOTE1RkIyMTc4MDBBODFC
Q0IgLyogQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUE1
ODQwRTFEMTg3Qjc0RDUwMDg0M0IxMCAvKiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUu
aCBpbiBIZWFkZXJzICovLAotCQkJCTUwRDQwNjEyMTQ3RDQ5REUwMEQzMEJCNSAvKiBDdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW0uaCBpbiBIZWFkZXJzICovLAotCQkJCUEyQjJBRTdDMTYzNzVF
RTUwMENGQTUwQiAvKiBDdXN0b21GaWx0ZXJDb25zdGFudHMuaCBpbiBIZWFkZXJzICovLAotCQkJ
CTUwOTg3QzI3MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0Lmgg
aW4gSGVhZGVycyAqLywKLQkJCQk1MEQ0MDVGQTE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyTWVzaC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJN0UxMkU5MEYxNUZBNUQzQTAwNUU0MTI2IC8q
IEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICovLAotCQkJCTUwQ0MwODlB
MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCBpbiBIZWFk
ZXJzICovLAotCQkJCTUwQUNFMkNCMTRCNUQ3OTMwMDQ0NjY2NiAvKiBDdXN0b21GaWx0ZXJPcGVy
YXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUU0QzkxQTE2MTgwOTk5RjEwMEExN0Y2RCAvKiBS
ZW5kZXJUZXh0TGluZUJveGVzLmggaW4gSGVhZGVycyAqLywKLQkJCQk1MDlDQzlGQjE0QzA2OUVE
MDBCQkVDQkQgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmggaW4gSGVhZGVycyAqLywKLQkJCQk1
MDkzMzM1MDE2M0IwRTQzMDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIGlu
IEhlYWRlcnMgKi8sCi0JCQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRl
clByb2dyYW0uaCBpbiBIZWFkZXJzICovLAotCQkJCTUwM0QwQ0FDMTRCNUIwODcwMEYzMkY1NyAv
KiBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQk1MEQ4OENC
NjE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCBpbiBIZWFkZXJz
ICovLAotCQkJCTUwM0QwQ0FCMTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0b21GaWx0ZXJSZW5kZXJl
ci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQTI5NTMyRDAxNURENUUxNzAwNDY5RUJDIC8qIEN1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCBpbiBIZWFkZXJzICovLAogCQkJCUE4Q0I0MTNFMEU4
NjMzRkQwMDMyQzRGMCAvKiBEYXNoQXJyYXkuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4MEU2RDBC
MEExOTg5Q0EwMDdGQjhDNSAvKiBEYXNoYm9hcmRSZWdpb24uaCBpbiBIZWFkZXJzICovLAogCQkJ
CTk3QkM2QTIxMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZS5oIGluIEhlYWRlcnMgKi8sCkBA
IC0yMzY0Nyw5ICsyMzQ2Miw3IEBACiAJCQkJQkMxQTM3QzAwOTdDNzE1RjAwMTlGM0Q4IC8qIERP
TVZpZXdzLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUMwRkY0OTBFNENFRkREMDA3RDZGRTUgLyog
RE9NV2ViS2l0QW5pbWF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQzBGRjRCMEU0
Q0VGREQwMDdENkZFNSAvKiBET01XZWJLaXRBbmltYXRpb25FdmVudEludGVybmFsLmggaW4gSGVh
ZGVycyAqLywKLQkJCQlBMkU4QUU0MDE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmls
dGVyUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE1QjNBNkUxN0NCRTI2NzAwMEZDQ0U4IC8q
IEFjY2Vzc2liaWxpdHlTZWFyY2hGaWVsZEJ1dHRvbnMuaCBpbiBIZWFkZXJzICovLAotCQkJCUEy
RThBRTQyMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwu
aCBpbiBIZWFkZXJzICovLAogCQkJCTMxMDYwMzc5MTQzMjgxQ0QwMEFCRjRCQSAvKiBET01XZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEwNjAzN0IxNDMyODFDRDAw
QUJGNEJBIC8qIERPTVdlYktpdENTU0ZpbHRlclZhbHVlSW50ZXJuYWwuaCBpbiBIZWFkZXJzICov
LAogCQkJCTMxNkZFMDdEMEU2Q0NDMjgwMEJGNjA4OCAvKiBET01XZWJLaXRDU1NLZXlmcmFtZVJ1
bGUuaCBpbiBIZWFkZXJzICovLApAQCAtMjM3NjcsNyArMjM1ODAsNiBAQAogCQkJCUE3NUU4QjhE
MEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbXBvbmVudFRyYW5zZmVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlBNzVFOEI4RjBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTg0NzMwRDc5MTI0OEYwQjMwMEQzQTlDOSAvKiBGRUNvbnZvbHZlTWF0cml4Lmgg
aW4gSGVhZGVycyAqLywKLQkJCQk1MEQ0MDNDODE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0b21G
aWx0ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTg0NzMwRDdCMTI0OEYwQjMwMEQzQTlDOSAvKiBG
RURpZmZ1c2VMaWdodGluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RBQjZEMzExN0M5MjU5NTAw
QzYwQjM0IC8qIFVzZXJBZ2VudFNjcmlwdHMuaCBpbiBIZWFkZXJzICovLAogCQkJCTg0NzMwRDdE
MTI0OEYwQjMwMEQzQTlDOSAvKiBGRURpc3BsYWNlbWVudE1hcC5oIGluIEhlYWRlcnMgKi8sCkBA
IC0yNDczNSwxMiArMjQ1NDcsMTAgQEAKIAkJCQk3N0VGNjJGNDEyRjlEQjc0MDBDNzdCRDIgLyog
SlNXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggaW4gSGVhZGVycyAqLywKIAkJCQlDREM4QjVB
QjE4MDQ3RkYxMDAxNkU2ODUgLyogU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTMxQzBGRjNFMEU0Q0VGQUMwMDdENkZFNSAvKiBKU1dlYktpdEFuaW1hdGlv
bkV2ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQlBMkU4QUUzODE2QTQ5ODQwMDA2QkIzQUEgLyog
SlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTA2MDM3NTE0MzI4
MTlDMDBBQkY0QkEgLyogSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMzE2RkUwNzIwRTZDQ0JFRTAwQkY2MDg4IC8qIEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMTZGRTA3NDBFNkNDQkVFMDBCRjYwODggLyogSlNXZWJLaXRD
U1NLZXlmcmFtZXNSdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQk0OTgzOTE0MDBGMUU3Njc1MDBD
MjM3ODIgLyogSlNXZWJLaXRDU1NNYXRyaXguaCBpbiBIZWFkZXJzICovLAotCQkJCTE1QjhCN0M5
MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFk
ZXJzICovLAogCQkJCThBRDBBNTk1MTRDODgzMzYwMDBEODNDNSAvKiBKU1dlYktpdENTU1JlZ2lv
blJ1bGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxNjExRTVCMEUxQzRERTAwMEY2QTU3OSAvKiBK
U1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzRjJCMzNFRjE2
NUFGMTU2MDBFMzk4N0MgLyogSlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuaCBpbiBIZWFkZXJzICov
LApAQCAtMjU1MTMsMTAgKzI1MzIzLDcgQEAKIAkJCQlCQzVFQjY3QjBFODFEM0JFMDBCMjU5NjUg
LyogU3R5bGVCb3hEYXRhLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0VGNDQ0RDBFNjc0NjI4MDAx
QzEyODcgLyogU3R5bGVDYWNoZWRJbWFnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM5M0U2MDUx
NTFBOUExODAwMDY2RjA2IC8qIFN0eWxlQ2FjaGVkSW1hZ2VTZXQuaCBpbiBIZWFkZXJzICovLAot
CQkJCTUwMzhCRTMwMTQ3MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJNTAzRDBDQUUxNEI1QjBCQTAwRjMyRjU3IC8qIFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTE2NjBBQzExODI4Qzg0NjAwMDc0Q0FE
IC8qIElEQkJhY2tpbmdTdG9yZUN1cnNvckxldmVsREIuaCBpbiBIZWFkZXJzICovLAotCQkJCTUw
RTE4Q0RBMTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI2N0YwRTgxRDRBNzAwQjI1OTY1IC8qIFN0eWxlRGFz
aGJvYXJkUmVnaW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEM0QTdGRDA5RDU2MzI3MDAwM0FD
OEQgLyogU3R5bGVkRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4QjkwRTgyMDFC
RDAwQjI1OTY1IC8qIFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5oIGluIEhlYWRlcnMg
Ki8sCkBAIC0yNTU0NSw3ICsyNTM1Miw2IEBACiAJCQkJRTRCQkVENEQxNEZDREJBMTAwM0YwQjk4
IC8qIFN0eWxlUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTQ5NDZFQUYxNTZFNjRERDAwRDMy
OTdGIC8qIFN0eWxlUnVsZUltcG9ydC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTdCNzYxQTExNjFF
RTUyNjAwMjA4M0QzIC8qIFN0eWxlU2NvcGVSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
MzEzOEE5RTUxNDc0NDM0NjAwQjBFRDEyIC8qIFN0eWxlU2hhZGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlBOEVBODAwQzBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMEY1NERDRTYxODgxMDUxRDAwM0VFREJCIC8qIFRleHRBdXRvU2l6aW5nLmggaW4g
SGVhZGVycyAqLywKIAkJCQlFNEY5RUVGMzE1NkRBMDA3MDBEMjNFN0UgLyogU3R5bGVTaGVldENv
bnRlbnRzLmggaW4gSGVhZGVycyAqLywKQEAgLTI1OTUwLDcgKzI1NzU2LDYgQEAKIAkJCQkxRkFG
QkYxOTE1QTVGQTc0MDAwODNBMjAgLyogVVRJVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkyRTNCQkYwODExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QTUwMTkyMEUxMzJFQkYyRTAwOEJGRTU1IC8qIEF1dG9jYXBpdGFsaXplLmggaW4gSGVhZGVycyAq
LywKLQkJCQk1MEQzMjg1ODE2M0IzMTNGMDAxNjExMUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlGNUExNTQyODEyNzk1MzREMDBEMEIwQzAg
LyogVmFsaWRhdGlvbk1lc3NhZ2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUY1MTNBM0VBMTVGRjQ4
NDEwMDE1MjZEQiAvKiBWYWxpZGF0aW9uTWVzc2FnZUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMTVDNzcwOEQxMDBEM0M2QjAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaCBpbiBIZWFkZXJz
ICovLApAQCAtMjYwMzAsMTcgKzI1ODM1LDEyIEBACiAJCQkJNzdBMTdBNzgxMkYyODY0MjAwNEUw
MkY2IC8qIFdlYkdMVmVydGV4QXJyYXlPYmplY3RPRVMuaCBpbiBIZWFkZXJzICovLAogCQkJCTMx
QzBGRjIyMEU0Q0VCNkUwMDdENkZFNSAvKiBXZWJLaXRBbmltYXRpb25FdmVudC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJOTc2RDZDN0MxMjJCOEEzRDAwMUZEMUY3IC8qIFdlYktpdEJsb2JCdWlsZGVy
LmggaW4gSGVhZGVycyAqLywKLQkJCQkxNTBCOTIzQTE1RjA4REM0MDBFMTA5ODYgLyogV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmggaW4gSGVhZGVycyAqLywKLQkJCQlBMkU4QUUzMTE2QTQ4
RTFDMDA2QkIzQUEgLyogV2ViS2l0Q1NTRmlsdGVyUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NTFENzE5Q0QxODExMDZFMDAwMTZEQzUxIC8qIElEQkRhdGFiYXNlRXJyb3IuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTMxMDYwMzcwMTQzMjdEMkUwMEFCRjRCQSAvKiBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEyODhFNzMwRTMwMDVENjAwMzYxOUFFIC8qIFdlYktp
dENTU0tleWZyYW1lUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEyODhFNzUwRTMwMDVENjAw
MzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1lc1J1bGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUZC
NzE5QzNGMTcyMzhDQTgwMDIyREUzNCAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmggaW4g
SGVhZGVycyAqLywKIAkJCQk0OTgzOTE1OTBGMUU3NzY5MDBDMjM3ODIgLyogV2ViS2l0Q1NTTWF0
cml4LmggaW4gSGVhZGVycyAqLywKLQkJCQlBMjRCRjc3QjE1Q0MzQkFGMDAzMTkxRjIgLyogV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOEFBNjFEMDAxNDRE
NTk1QjAwRjM3MzUwIC8qIFdlYktpdENTU1JlZ2lvblJ1bGUuaCBpbiBIZWFkZXJzICovLAotCQkJ
CTI5Q0Q2MURFMTQ2RDAyODkwMDY4RTgyQSAvKiBXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMDc4RTA5NDIxN0QxNkUxQzAwNDIwQUExIC8qIFJUQ1BlZXJDb25uZWN0
aW9uSGFuZGxlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM5QUREMjMwQ0M0MDMyNjAw
MDk4QzRDIC8qIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQkz
RkZGRjlBOTE1OUQ5QTU1MDAyMEJCRDUgLyogV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmggaW4gSGVh
ZGVycyAqLywKQEAgLTI2NjQyLDcgKzI2NDQyLDYgQEAKIAkJCQk1MDgxRTNDMzNDRTU4MEMxNkVG
OEI0OEIgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTZD
NjM4ODk2QTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3Jz
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDQjE2QzIzMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNo
ZWRTY3JpcHQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzOEJFNDAxNDcyQUQ5ODAwOTVFMEQx
IC8qIENhY2hlZFNoYWRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBMTA0RjI0MzE0QzcxRjdB
MDA5RTJDMjMgLyogQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTFC
NTMzNDcxNzE3RDBBMTAwRjIwNUY5IC8qIENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTA3NTM4NjAyMTQ0ODlFOTgwMEI3ODQ1MiAvKiBDYWNoZWRUZXh0
VHJhY2suY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yNjgwOCwxOCArMjY2MDcsOCBAQAogCQkJCTI2
NTU0MTUyMTQ4OUIyMzMwMDBERkM1RCAvKiBDdXJzb3JJT1MuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJOTNGMTlBMjYwODI0NUU1OTAwMUU5QUJDIC8qIEN1cnNvck1hYy5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTYyQ0QzMjU5MTE1N0U1N0MwMDYzQjBBNyAvKiBDdXN0b21FdmVudC5jcHAgaW4gU291
cmNlcyAqLywKLQkJCQk1MEQ0MDYxMTE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTUwOTg3QzI2MTU3RDY3NkQwMEJE
QTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcCBpbiBTb3VyY2VzICovLAotCQkJ
CTUwRDQwNUY5MTQ3RDMxRjMwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUUxQzI2NkRFMTgzMTlGMzEwMDNGOEIzMyAvKiBDcnlwdG9LZXlEYXRhUlNB
Q29tcG9uZW50cy5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk3RTEyRTkxMDE1RkE1RDNBMDA1RTQx
MjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlB
NTg0RkUzQjE4NjRFMkQ4MDA4NDNCMTAgLyogSlNDb21tYW5kTGluZUFQSUhvc3QuY3BwIGluIFNv
dXJjZXMgKi8sCi0JCQkJNTBDQzBBMzkxNEM2RjVCMTAwMTdBQjUxIC8qIEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MDkzMzM0RjE2M0IwRTQzMDAwOTlBNjAg
LyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MDNE
MENBQTE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgaW4gU291cmNl
cyAqLywKLQkJCQk1MEQ4OENCNTE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUluZm8uY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzRDBDQUExNEI1QjA4NzAwRjMyRjU4IC8q
IEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUEyOTUzMkNGMTVE
RDVFMTcwMDQ2OUVCQyAvKiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTk3QkM2QTIwMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQk5N0JDNkEyMzE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VBdXRo
b3JpemVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxMjVGODM1MTgyMkYxOEEwMEQ4NENEOSAv
KiBDcnlwdG9LZXlITUFDLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjcwODcsNyArMjY4NzYsNiBA
QAogCQkJCUJDMUEzN0JGMDk3QzcxNUYwMDE5RjNEOCAvKiBET01VdGlsaXR5Lm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMTVDNzcwQTUxMDBENDFDRDAwNUJBMjY3IC8qIERPTVZhbGlkaXR5U3RhdGUu
bW0gaW4gU291cmNlcyAqLywKIAkJCQkzMUMwRkY0QTBFNENFRkREMDA3RDZGRTUgLyogRE9NV2Vi
S2l0QW5pbWF0aW9uRXZlbnQubW0gaW4gU291cmNlcyAqLywKLQkJCQlBMkU4QUU0MTE2QTQ5OENG
MDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTMxMDYwMzdBMTQzMjgxQ0QwMEFCRjRCQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5tbSBp
biBTb3VyY2VzICovLAogCQkJCUNERjJCMDEwMTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrQm94LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTMxNkZFMDdFMEU2Q0NDMjgwMEJGNjA4OCAvKiBET01XZWJL
aXRDU1NLZXlmcmFtZVJ1bGUubW0gaW4gU291cmNlcyAqLywKQEAgLTI3MTcxLDcgKzI2OTU5LDYg
QEAKIAkJCQlBNzVFOEI4RTBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJODQ3MzBENzgxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFQ29udm9sdmVNYXRy
aXguY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RENzA4OTYxODM1OUY2RjAwMkIzREM2IC8qIFNh
bXBsZU1hcC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MEQ0MDNDNzE0NzY4Qzk0MDBEMzBCQjUg
LyogRkVDdXN0b21GaWx0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODQ3MzBEN0ExMjQ4RjBC
MzAwRDNBOUM5IC8qIEZFRGlmZnVzZUxpZ2h0aW5nLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA3
OEUwOTBCMTdEMTRDRUUwMDQyMEFBMSAvKiBSVENQZWVyQ29ubmVjdGlvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk4NDczMEQ3QzEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaXNwbGFjZW1lbnRNYXAu
Y3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yODE3OCwxMiArMjc5NjUsMTAgQEAKIAkJCQkwQzQ1MzQy
NzEwQ0RCQkZBMDA4NjkxNTcgLyogSlNXZWJHTFVuaWZvcm1Mb2NhdGlvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk3N0VGNjJGMzEyRjlEQjc0MDBDNzdCRDIgLyogSlNXZWJHTFZlcnRleEFycmF5
T2JqZWN0T0VTLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQzBGRjNEMEU0Q0VGQUMwMDdENkZF
NSAvKiBKU1dlYktpdEFuaW1hdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUEyRThB
RTM3MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMzEwNjAzNzQxNDMyODE5QzAwQUJGNEJBIC8qIEpTV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzE2RkUwNzEwRTZDQ0JFRTAwQkY2MDg4IC8q
IEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNkZFMDcz
MEU2Q0NCRUUwMEJGNjA4OCAvKiBKU1dlYktpdENTU0tleWZyYW1lc1J1bGUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNDk4MzkxM0YwRjFFNzY3NTAwQzIzNzgyIC8qIEpTV2ViS2l0Q1NTTWF0cml4
LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTE1QjhCN0M4MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOEFEMEE1OTQx
NEM4ODMzNjAwMEQ4M0M1IC8qIEpTV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQkzMTYxMUU1QTBFMUM0REUwMDBGNkE1NzkgLyogSlNXZWJLaXRDU1NUcmFuc2Zvcm1W
YWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzRjJCMzNFRTE2NUFGMTU2MDBFMzk4N0MgLyog
SlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yODg0MiwxMCAr
Mjg2MjcsNyBAQAogCQkJCUJDNUVCNjdEMEU4MUQ0MjAwMEIyNTk2NSAvKiBTdHlsZUJveERhdGEu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNFRjQ0N0EwRTY3NDdEMDAwMUMxMjg3IC8qIFN0eWxl
Q2FjaGVkSW1hZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTM5M0U2MDQxNTFBOUExODAwMDY2
RjA2IC8qIFN0eWxlQ2FjaGVkSW1hZ2VTZXQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzOEJF
MkYxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2FjaGVkU2hhZGVyLmNwcCBpbiBTb3VyY2VzICov
LAotCQkJCTUwRTE4Q0Q4MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dy
YW0uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTU4NDBFMjQxODdCOEFDMjAwODQzQjEwIC8qIFBh
Z2VJbmplY3RlZFNjcmlwdEhvc3QuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTBFMThDRDkxNkY5
Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUE4QzRBN0ZFMDlENTYzMjcwMDAzQUM4RCAvKiBTdHlsZWRFbGVtZW50LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUJDNUVCOEI4MEU4MjAxQkQwMEIyNTk2NSAvKiBTdHlsZURl
cHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQUE0QzNBNzYw
QjJCMTY3OTAwMjMzNEEyIC8qIElubGluZVN0eWxlU2hlZXRPd25lci5jcHAgaW4gU291cmNlcyAq
LywKQEAgLTI5MTg2LDcgKzI4OTY4LDYgQEAKIAkJCQlCQ0RGMzE3QjExRjhENjgzMDAzQzVCRjgg
LyogVXNlclR5cGluZ0dlc3R1cmVJbmRpY2F0b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUZB
RkJGMTgxNUE1RkE2RTAwMDgzQTIwIC8qIFVUSVV0aWxpdGllcy5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTJFM0JCRjA3MTE2MkRBMTEwMEI5NDA5QSAvKiBVVUlELmNwcCBpbiBTb3VyY2VzICovLAot
CQkJCTUwRDMyODU3MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTFGRTEzNzQxODQwMkE2NzAwODkyRjEzIC8q
IENvbW1vbkNyeXB0b1V0aWxpdGllcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGNUExNTQyNzEy
Nzk1MzREMDBEMEIwQzAgLyogVmFsaWRhdGlvbk1lc3NhZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJRkQzMTYwQUUxMkIwMjZGNzAwQzFBMzU5IC8qIFZlY3Rvck1hdGguY3BwIGluIFNvdXJjZXMg
Ki8sCkBAIC0yOTI1NywxOSArMjkwMzgsMTQgQEAKIAkJCQkzMUMwRkYyMTBFNENFQjZFMDA3RDZG
RTUgLyogV2ViS2l0QW5pbWF0aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDdGRTk5
REMxODgwN0E3RDAwMjU2NjQ4IC8qIEhUTUxNZWRpYVNlc3Npb24uY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOTc2RDZDN0IxMjJCOEEzRDAwMUZEMUY3IC8qIFdlYktpdEJsb2JCdWlsZGVyLmNwcCBp
biBTb3VyY2VzICovLAotCQkJCTE1MEI5MjM5MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NB
cnJheUZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJQTJFOEFFMzAxNkE0OEUx
QzAwNkJCM0FBIC8qIFdlYktpdENTU0ZpbHRlclJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QzU1QzdCQTExNzE4QUZCQTAwMTMyN0U0IC8qIFJlbmRlclRoZW1lSU9TLm1tIGluIFNvdXJjZXMg
Ki8sCiAJCQkJMzEwNjAzNkYxNDMyN0QyRTAwQUJGNEJBIC8qIFdlYktpdENTU0ZpbHRlclZhbHVl
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxMjg4RTcyMEUzMDA1RDYwMDM2MTlBRSAvKiBXZWJL
aXRDU1NLZXlmcmFtZVJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzEyODhFNzQwRTMwMDVE
NjAwMzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1lc1J1bGUuY3BwIGluIFNvdXJjZXMgKi8sCi0J
CQkJRkI3MTlDNDAxNzIzOENBRTAwMjJERTM0IC8qIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDc4RTA5MTExN0QxNENFRTAwNDIwQUExIC8qIFJUQ1Zv
aWRSZXF1ZXN0SW1wbC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUZFMTM2NDE4MzQzNTExMDA4
OTJGMTMgLyogQ3J5cHRvRGlnZXN0TWFjLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQ5ODM5MTU4
MEYxRTc3NjkwMEMyMzc4MiAvKiBXZWJLaXRDU1NNYXRyaXguY3BwIGluIFNvdXJjZXMgKi8sCi0J
CQkJQTI0QkY3N0MxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOEFBNjFDRkYxNDRENTk1QjAwRjM3MzUwIC8qIFdlYktp
dENTU1JlZ2lvblJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzOEJDMDcxNDcxMUNEQjAw
OTVFMEQxIC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJD
OUFERDgwMENDNDA5MjIwMDA5OEM0QyAvKiBXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkzRkZGRjlBODE1OUQ5QTU1MDAyMEJCRDUgLyogV2ViS2l0Q1NTVmll
d3BvcnRSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBMTQxNEI1MTNBMEYwNTAwMDE5OTk2
QyAvKiBXZWJLaXRGb250RmFtaWx5TmFtZXMuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1J1bGVDdXN0b20uY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNDU1NSdWxlQ3VzdG9tLmNwcAppbmRleCBkYzkwNTMwLi4z
MDAzYTcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1J1bGVD
dXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ1NTUnVsZUN1c3Rv
bS5jcHAKQEAgLTQzLDEyICs0MywxMCBAQAogI2luY2x1ZGUgIkpTQ1NTU3VwcG9ydHNSdWxlLmgi
CiAjaW5jbHVkZSAiSlNOb2RlLmgiCiAjaW5jbHVkZSAiSlNTdHlsZVNoZWV0Q3VzdG9tLmgiCi0j
aW5jbHVkZSAiSlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmgiCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NL
ZXlmcmFtZVJ1bGUuaCIKICNpbmNsdWRlICJKU1dlYktpdENTU0tleWZyYW1lc1J1bGUuaCIKICNp
bmNsdWRlICJKU1dlYktpdENTU1JlZ2lvblJ1bGUuaCIKICNpbmNsdWRlICJKU1dlYktpdENTU1Zp
ZXdwb3J0UnVsZS5oIgotI2luY2x1ZGUgIldlYktpdENTU0ZpbHRlclJ1bGUuaCIKICNpbmNsdWRl
ICJXZWJLaXRDU1NLZXlmcmFtZVJ1bGUuaCIKICNpbmNsdWRlICJXZWJLaXRDU1NLZXlmcmFtZXNS
dWxlLmgiCiAjaW5jbHVkZSAiV2ViS2l0Q1NTUmVnaW9uUnVsZS5oIgpAQCAtMTIyLDExICsxMjAs
NiBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBDU1NSdWxlKiBydWxlKQogICAgICAgICAgICAgd3JhcHBlciA9IENSRUFURV9E
T01fV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIENTU0hvc3RSdWxlLCBydWxlKTsKICAgICAg
ICAgICAgIGJyZWFrOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBj
YXNlIENTU1J1bGU6OldFQktJVF9GSUxURVJfUlVMRToKLSAgICAgICAgICAgIHdyYXBwZXIgPSBD
UkVBVEVfRE9NX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBXZWJLaXRDU1NGaWx0ZXJSdWxl
LCBydWxlKTsKLSAgICAgICAgICAgIGJyZWFrOwotI2VuZGlmCiAgICAgICAgIGRlZmF1bHQ6CiAg
ICAgICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVj
dCwgQ1NTUnVsZSwgcnVsZSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcAppbmRleCBmZWVlMDE0Li4wNTBlNGI4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcApAQCAtMzksMTEg
KzM5LDYgQEAKICNpbmNsdWRlICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIgogI2VuZGlmCiAKLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIgotI2VuZGlmCi0K
ICNpZiBFTkFCTEUoU1ZHKQogI2luY2x1ZGUgIkpTU1ZHQ29sb3IuaCIKICNpbmNsdWRlICJKU1NW
R1BhaW50LmgiCkBAIC05OSwxMCArOTQsNiBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBleGVj
LCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDU1NWYWx1ZSogdmFsdWUpCiAgICAg
ZWxzZSBpZiAodmFsdWUtPmlzV2ViS2l0Q1NTRmlsdGVyVmFsdWUoKSkKICAgICAgICAgd3JhcHBl
ciA9IENSRUFURV9ET01fV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIFdlYktpdENTU0ZpbHRl
clZhbHVlLCB2YWx1ZSk7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgZWxz
ZSBpZiAodmFsdWUtPmlzV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpKQotICAgICAgICB3cmFw
cGVyID0gQ1JFQVRFX0RPTV9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgV2ViS2l0Q1NTTWl4
RnVuY3Rpb25WYWx1ZSwgdmFsdWUpOwotI2VuZGlmCiAgICAgZWxzZSBpZiAodmFsdWUtPmlzVmFs
dWVMaXN0KCkpCiAgICAgICAgIHdyYXBwZXIgPSBDUkVBVEVfRE9NX1dSQVBQRVIoZXhlYywgZ2xv
YmFsT2JqZWN0LCBDU1NWYWx1ZUxpc3QsIHZhbHVlKTsKICNpZiBFTkFCTEUoU1ZHKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvb2JqYy9ET01DU1MubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9vYmpjL0RPTUNTUy5tbQppbmRleCAwN2U5ZTFmLi45MGU0ZGE0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUNTUy5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUNTUy5tbQpAQCAtNTIsMTAgKzUyLDYgQEAKICNp
bXBvcnQgIkRPTVdlYktpdENTU0tleWZyYW1lc1J1bGUuaCIKICNpbXBvcnQgIkRPTVdlYktpdENT
U1RyYW5zZm9ybVZhbHVlLmgiCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW1wb3J0ICJE
T01XZWJLaXRDU1NGaWx0ZXJSdWxlLmgiCi0jZW5kaWYKLQogI2lmIEVOQUJMRShDU1NfRklMVEVS
UykKICNpbXBvcnQgIkRPTVdlYktpdENTU0ZpbHRlclZhbHVlLmgiCiAjZW5kaWYKQEAgLTEyMiwx
MCArMTE4LDYgQEAgQ2xhc3Mga2l0Q2xhc3MoV2ViQ29yZTo6Q1NTUnVsZSogaW1wbCkKICAgICAg
ICAgY2FzZSBET01fSE9TVF9SVUxFOgogICAgICAgICAgICAgcmV0dXJuIFtET01DU1NIb3N0UnVs
ZSBjbGFzc107CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGNhc2Ug
RE9NX1dFQktJVF9GSUxURVJfUlVMRToKLSAgICAgICAgICAgIHJldHVybiBbRE9NV2ViS2l0Q1NT
RmlsdGVyUnVsZSBjbGFzc107Ci0jZW5kaWYKICAgICB9CiAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7CiAgICAgcmV0dXJuIG5pbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1ND
b21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1
dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggY2YxNmRiMy4uMzQ4NWFmYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAg
LTcyLDIwICs3Miw3IEBACiAjaW5jbHVkZSAiU2hhcGVWYWx1ZS5oIgogI2VuZGlmCiAKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIu
aCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1
c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJh
dGlvbi5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1
c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oIgotI2luY2x1ZGUgIldlYktpdENTU0FycmF5
RnVuY3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCIK
LSNpbmNsdWRlICJXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgiCi0jZW5kaWYKLQogI2lmIEVO
QUJMRShDU1NfRklMVEVSUykKLSNpbmNsdWRlICJTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaCIK
ICNpbmNsdWRlICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIgogI2VuZGlmCiAKQEAgLTg1MSw3MiAr
ODM4LDYgQEAgc3RhdGljIFBhc3NSZWY8Q1NTVmFsdWU+IGNvbXB1dGVkVHJhbnNmb3JtKFJlbmRl
ck9iamVjdCogcmVuZGVyZXIsIGNvbnN0IFJlbmRlclMKICAgICByZXR1cm4gc3RkOjptb3ZlKGxp
c3QpOwogfQogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotc3RhdGljIFBhc3NSZWY8V2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlPiB2YWx1ZUZvckN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVy
KGNvbnN0IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKiBhcnJheVBhcmFtZXRlcikKLXsKLSAg
ICBhdXRvIGFycmF5UGFyYW1ldGVyVmFsdWUgPSBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU6
OmNyZWF0ZSgpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDAsIHNpemUgPSBhcnJheVBhcmFtZXRl
ci0+c2l6ZSgpOyBpIDwgc2l6ZTsgKytpKQotICAgICAgICBhcnJheVBhcmFtZXRlclZhbHVlLmdl
dCgpLmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShhcnJheVBhcmFtZXRlci0+dmFs
dWVBdChpKSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpKTsKLSAgICByZXR1cm4gYXJy
YXlQYXJhbWV0ZXJWYWx1ZTsKLX0KLQotc3RhdGljIFBhc3NSZWY8V2ViS2l0Q1NTTWF0RnVuY3Rp
b25WYWx1ZT4gdmFsdWVGb3JDdXN0b21GaWx0ZXJNYXRQYXJhbWV0ZXIoY29uc3QgQ3VzdG9tRmls
dGVyQXJyYXlQYXJhbWV0ZXIqIG1hdHJpeFBhcmFtZXRlcikKLXsKLSAgICBhdXRvIG1hdHJpeFBh
cmFtZXRlclZhbHVlID0gV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZTo6Y3JlYXRlKCk7Ci0gICAg
Zm9yICh1bnNpZ25lZCBpID0gMCwgc2l6ZSA9IG1hdHJpeFBhcmFtZXRlci0+c2l6ZSgpOyBpIDwg
c2l6ZTsgKytpKQotICAgICAgICBtYXRyaXhQYXJhbWV0ZXJWYWx1ZS5nZXQoKS5hcHBlbmQoY3Nz
VmFsdWVQb29sKCkuY3JlYXRlVmFsdWUobWF0cml4UGFyYW1ldGVyLT52YWx1ZUF0KGkpLCBDU1NQ
cmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwotICAgIHJldHVybiBtYXRyaXhQYXJhbWV0ZXJW
YWx1ZTsKLX0KLQotc3RhdGljIFBhc3NSZWY8Q1NTVmFsdWVMaXN0PiB2YWx1ZUZvckN1c3RvbUZp
bHRlckNvbG9yUGFyYW1ldGVyKGNvbnN0IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKiBjb2xv
clBhcmFtZXRlcikKLXsKLSAgICBhdXRvIGNvbG9yUGFyYW1ldGVyVmFsdWUgPSBDU1NWYWx1ZUxp
c3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgY29sb3JQYXJhbWV0ZXJWYWx1ZS5nZXQo
KS5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlQ29sb3JWYWx1ZShjb2xvclBhcmFtZXRlci0+
Y29sb3IoKS5yZ2IoKSkpOwotICAgIHJldHVybiBjb2xvclBhcmFtZXRlclZhbHVlOwotfQotCi1z
dGF0aWMgUGFzc1JlZjxDU1NWYWx1ZUxpc3Q+IHZhbHVlRm9yQ3VzdG9tRmlsdGVyTnVtYmVyUGFy
YW1ldGVyKGNvbnN0IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciogbnVtYmVyUGFyYW1ldGVy
KQotewotICAgIGF1dG8gbnVtYmVyUGFyYW1ldGVyVmFsdWUgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0
ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG51bWJlclBh
cmFtZXRlci0+c2l6ZSgpOyArK2kpCi0gICAgICAgIG51bWJlclBhcmFtZXRlclZhbHVlLmdldCgp
LmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShudW1iZXJQYXJhbWV0ZXItPnZhbHVl
QXQoaSksIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKSk7Ci0gICAgcmV0dXJuIG51bWJl
clBhcmFtZXRlclZhbHVlOwotfQotCi1zdGF0aWMgUGFzc1JlZjxXZWJLaXRDU1NUcmFuc2Zvcm1W
YWx1ZT4gdmFsdWVGb3JDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIoY29uc3QgUmVuZGVy
T2JqZWN0KiByZW5kZXJlciwgY29uc3QgUmVuZGVyU3R5bGUqIHN0eWxlLCBjb25zdCBDdXN0b21G
aWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqIHRyYW5zZm9ybVBhcmFtZXRlcikKLXsKLSAgICBJbnRT
aXplIHNpemU7Ci0gICAgaWYgKHJlbmRlcmVyICYmIHJlbmRlcmVyLT5pc0JveCgpKQotICAgICAg
ICBzaXplID0gcGl4ZWxTbmFwcGVkSW50UmVjdCh0b1JlbmRlckJveChyZW5kZXJlciktPmJvcmRl
ckJveFJlY3QoKSkuc2l6ZSgpOwotCi0gICAgVHJhbnNmb3JtYXRpb25NYXRyaXggdHJhbnNmb3Jt
OwotICAgIHRyYW5zZm9ybVBhcmFtZXRlci0+YXBwbHlUcmFuc2Zvcm0odHJhbnNmb3JtLCBzaXpl
KTsKLSAgICAvLyBGSVhNRTogTmVlZCB0byBwcmludCBvdXQgaW5kaXZpZHVhbCBmdW5jdGlvbnMg
KGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzkyNCkKLSAgICByZXR1
cm4gbWF0cml4VHJhbnNmb3JtVmFsdWUodHJhbnNmb3JtLCBzdHlsZSk7Ci19Ci0KLXN0YXRpYyBQ
YXNzUmVmUHRyPENTU1ZhbHVlPiB2YWx1ZUZvckN1c3RvbUZpbHRlclBhcmFtZXRlcihjb25zdCBS
ZW5kZXJPYmplY3QqIHJlbmRlcmVyLCBjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUsIGNvbnN0IEN1
c3RvbUZpbHRlclBhcmFtZXRlciogcGFyYW1ldGVyKQotewotICAgIC8vIEZJWE1FOiBBZGQgaGVy
ZSBjb21wdXRlZCBzdHlsZSBmb3IgdGhlIG90aGVyIHR5cGVzOiBib29sZWFuLCB0cmFuc2Zvcm0s
IG1hdHJpeCwgdGV4dHVyZS4KLSAgICBBU1NFUlQocGFyYW1ldGVyKTsKLSAgICBzd2l0Y2ggKHBh
cmFtZXRlci0+cGFyYW1ldGVyVHlwZSgpKSB7Ci0gICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXI6OkFSUkFZOgotICAgICAgICByZXR1cm4gdmFsdWVGb3JDdXN0b21GaWx0ZXJBcnJheVBhcmFt
ZXRlcihzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcio+KHBhcmFt
ZXRlcikpOwotICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpDT0xPUjoKLSAgICAgICAg
cmV0dXJuIHZhbHVlRm9yQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIoc3RhdGljX2Nhc3Q8Y29u
c3QgQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICBjYXNlIEN1
c3RvbUZpbHRlclBhcmFtZXRlcjo6TUFUUklYOgotICAgICAgICByZXR1cm4gdmFsdWVGb3JDdXN0
b21GaWx0ZXJNYXRQYXJhbWV0ZXIoc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6
TlVNQkVSOgotICAgICAgICByZXR1cm4gdmFsdWVGb3JDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0
ZXIoc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKj4ocGFyYW1l
dGVyKSk7Ci0gICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OlRSQU5TRk9STToKLSAgICAg
ICAgcmV0dXJuIHZhbHVlRm9yQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKHJlbmRlcmVy
LCBzdHlsZSwgc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVy
Kj4ocGFyYW1ldGVyKSk7Ci0gICAgfQotICAgIAotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwot
ICAgIHJldHVybiAwOwotfQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQogc3RhdGlj
IGlubGluZSBQYXNzUmVmPENTU1ByaW1pdGl2ZVZhbHVlPiBhZGp1c3RMZW5ndGhGb3Jab29tKGRv
dWJsZSBsZW5ndGgsIGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSwgQWRqdXN0UGl4ZWxWYWx1ZXNG
b3JDb21wdXRlZFN0eWxlIGFkanVzdCkKIHsKICAgICByZXR1cm4gYWRqdXN0ID09IEFkanVzdFBp
eGVsVmFsdWVzID8gem9vbUFkanVzdGVkUGl4ZWxWYWx1ZShsZW5ndGgsIHN0eWxlKSA6IGNzc1Zh
bHVlUG9vbCgpLmNyZWF0ZVZhbHVlKGxlbmd0aCwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19QWCk7
CkBAIC05NDYsMTEgKzg2Nyw4IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVF
eHRyYWN0b3I6OnZhbHVlRm9yU2hhZG93KGNvbnN0IFNoYWRvd0RhdGEqIHNoCiB9CiAKICNpZiBF
TkFCTEUoQ1NTX0ZJTFRFUlMpCi1QYXNzUmVmPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFj
dG9yOjp2YWx1ZUZvckZpbHRlcihjb25zdCBSZW5kZXJPYmplY3QqIHJlbmRlcmVyLCBjb25zdCBS
ZW5kZXJTdHlsZSogc3R5bGUsIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlck9wZXJhdGlv
bnMsIEFkanVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSBhZGp1c3QpCitQYXNzUmVmPENT
U1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvckZpbHRlcihjb25zdCBSZW5k
ZXJTdHlsZSogc3R5bGUsIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlck9wZXJhdGlvbnMs
IEFkanVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSBhZGp1c3QpCiB7Ci0jaWYgIUVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBVTlVTRURfUEFSQU0ocmVuZGVyZXIpOwotI2VuZGlmCiAgICAg
aWYgKGZpbHRlck9wZXJhdGlvbnMub3BlcmF0aW9ucygpLmlzRW1wdHkoKSkKICAgICAgICAgcmV0
dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwog
CkBAIC0xMDMwLDcwICs5NDgsNiBAQCBQYXNzUmVmPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0
cmFjdG9yOjp2YWx1ZUZvckZpbHRlcihjb25zdCBSZW5kZXJPYmplY3QqIHJlbgogICAgICAgICAg
ICAgZmlsdGVyVmFsdWUtPmFwcGVuZCh2YWx1ZUZvclNoYWRvdygmc2hhZG93RGF0YSwgQ1NTUHJv
cGVydHlUZXh0U2hhZG93LCBzdHlsZSwgYWRqdXN0KSk7CiAgICAgICAgICAgICBicmVhazsKICAg
ICAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVy
YXRpb246OlZBTElEQVRFRF9DVVNUT006Ci0gICAgICAgICAgICAvLyBWYWxpZGF0ZWRDdXN0b21G
aWx0ZXJPcGVyYXRpb24gaXMgbm90IHN1cHBvc2VkIHRvIGVuZCB1cCBpbiB0aGUgUmVuZGVyU3R5
bGUuCi0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgIGJyZWFr
OwotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOiB7Ci0gICAgICAgICAgICBD
dXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbU9wZXJhdGlvbiA9IHN0YXRpY19jYXN0PEN1c3Rv
bUZpbHRlck9wZXJhdGlvbio+KGZpbHRlck9wZXJhdGlvbik7Ci0gICAgICAgICAgICBmaWx0ZXJW
YWx1ZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoV2ViS2l0Q1NTRmlsdGVyVmFsdWU6
OkN1c3RvbUZpbHRlck9wZXJhdGlvbik7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIC8vIFRo
ZSBvdXRwdXQgc2hvdWxkIGJlIHZlcmJvc2UsIGV2ZW4gaWYgdGhlIHZhbHVlcyBhcmUgdGhlIGRl
ZmF1bHQgb25lcy4KLSAgICAgICAgICAgIAotICAgICAgICAgICAgQVNTRVJUKGN1c3RvbU9wZXJh
dGlvbi0+cHJvZ3JhbSgpKTsKLSAgICAgICAgICAgIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSog
cHJvZ3JhbSA9IHN0YXRpY19jYXN0PFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSo+KGN1c3RvbU9w
ZXJhdGlvbi0+cHJvZ3JhbSgpKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgUmVmUHRyPENT
U1ZhbHVlTGlzdD4gc2hhZGVyc0xpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJh
dGVkKCk7Ci0gICAgICAgICAgICBpZiAocHJvZ3JhbS0+dmVydGV4U2hhZGVyKCkpCi0gICAgICAg
ICAgICAgICAgc2hhZGVyc0xpc3QtPmFwcGVuZChwcm9ncmFtLT52ZXJ0ZXhTaGFkZXIoKS0+Y3Nz
VmFsdWUoKSk7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgc2hhZGVyc0xpc3Qt
PmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25l
KSk7Ci0KLSAgICAgICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyBt
aXhTZXR0aW5ncyA9IHByb2dyYW0tPm1peFNldHRpbmdzKCk7Ci0gICAgICAgICAgICBpZiAocHJv
Z3JhbS0+ZnJhZ21lbnRTaGFkZXIoKSkgewotICAgICAgICAgICAgICAgIGlmIChwcm9ncmFtLT5w
cm9ncmFtVHlwZSgpID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJFKSB7Ci0g
ICAgICAgICAgICAgICAgICAgIFJlZlB0cjxXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlPiBtaXhG
dW5jdGlvbiA9IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU6OmNyZWF0ZSgpOwotICAgICAgICAg
ICAgICAgICAgICBtaXhGdW5jdGlvbi0+YXBwZW5kKHByb2dyYW0tPmZyYWdtZW50U2hhZGVyKCkt
PmNzc1ZhbHVlKCkpOwotICAgICAgICAgICAgICAgICAgICBtaXhGdW5jdGlvbi0+YXBwZW5kKGNz
c1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKG1peFNldHRpbmdzLmJsZW5kTW9kZSkpOwotICAgICAg
ICAgICAgICAgICAgICBtaXhGdW5jdGlvbi0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZh
bHVlKG1peFNldHRpbmdzLmNvbXBvc2l0ZU9wZXJhdG9yKSk7Ci0gICAgICAgICAgICAgICAgICAg
IHNoYWRlcnNMaXN0LT5hcHBlbmQobWl4RnVuY3Rpb24ucmVsZWFzZSgpKTsKLSAgICAgICAgICAg
ICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgc2hhZGVyc0xpc3QtPmFwcGVuZChwcm9n
cmFtLT5mcmFnbWVudFNoYWRlcigpLT5jc3NWYWx1ZSgpKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBzaGFkZXJzTGlzdC0+YXBwZW5kKGNzc1ZhbHVl
UG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpKTsKLQotICAgICAgICAg
ICAgZmlsdGVyVmFsdWUtPmFwcGVuZChzaGFkZXJzTGlzdC5yZWxlYXNlKCkpOwotICAgICAgICAg
ICAgCi0gICAgICAgICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBtZXNoUGFyYW1ldGVycyA9IENT
U1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAgICAgICAgICAgIG1lc2hQYXJh
bWV0ZXJzLT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoY3VzdG9tT3BlcmF0aW9u
LT5tZXNoQ29sdW1ucygpLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwotICAgICAg
ICAgICAgbWVzaFBhcmFtZXRlcnMtPmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShj
dXN0b21PcGVyYXRpb24tPm1lc2hSb3dzKCksIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVS
KSk7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIC8vIEZJWE1FOiBUaGUgc3BlY2lmaWNhdGlv
biBkb2Vzbid0IGhhdmUgYW55ICJhdHRhY2hlZCIgaWRlbnRpZmllci4gU2hvdWxkIHdlIGFkZCBv
bmU/Ci0gICAgICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzI3MDAKLSAgICAgICAgICAgIGlmIChjdXN0b21PcGVyYXRpb24tPm1lc2hUeXBlKCkgPT0g
TWVzaFR5cGVEZXRhY2hlZCkKLSAgICAgICAgICAgICAgICBtZXNoUGFyYW1ldGVycy0+YXBwZW5k
KGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZURldGFjaGVkKSk7
Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQobWVzaFBhcmFt
ZXRlcnMucmVsZWFzZSgpKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgY29uc3QgQ3VzdG9t
RmlsdGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVycyA9IGN1c3RvbU9wZXJhdGlvbi0+cGFyYW1l
dGVycygpOwotICAgICAgICAgICAgc2l6ZV90IHBhcmFtZXRlcnNTaXplID0gcGFyYW1ldGVycy5z
aXplKCk7Ci0gICAgICAgICAgICBpZiAoIXBhcmFtZXRlcnNTaXplKQotICAgICAgICAgICAgICAg
IGJyZWFrOwotICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyYW1ldGVyc0NTU1Zh
bHVlID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVDb21tYVNlcGFyYXRlZCgpOwotICAgICAgICAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzU2l6ZTsgKytpKSB7Ci0gICAgICAgICAg
ICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBwYXJhbWV0ZXIgPSBwYXJhbWV0ZXJz
LmF0KGkpLmdldCgpOwotICAgICAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcmFt
ZXRlckNTU05hbWVBbmRWYWx1ZSA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQo
KTsKLSAgICAgICAgICAgICAgICBwYXJhbWV0ZXJDU1NOYW1lQW5kVmFsdWUtPmFwcGVuZChjc3NW
YWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShwYXJhbWV0ZXItPm5hbWUoKSwgQ1NTUHJpbWl0aXZlVmFs
dWU6OkNTU19TVFJJTkcpKTsKLSAgICAgICAgICAgICAgICBwYXJhbWV0ZXJDU1NOYW1lQW5kVmFs
dWUtPmFwcGVuZCh2YWx1ZUZvckN1c3RvbUZpbHRlclBhcmFtZXRlcihyZW5kZXJlciwgc3R5bGUs
IHBhcmFtZXRlcikpOwotICAgICAgICAgICAgICAgIHBhcmFtZXRlcnNDU1NWYWx1ZS0+YXBwZW5k
KHBhcmFtZXRlckNTU05hbWVBbmRWYWx1ZS5yZWxlYXNlKCkpOwotICAgICAgICAgICAgfQotICAg
ICAgICAgICAgCi0gICAgICAgICAgICBmaWx0ZXJWYWx1ZS0+YXBwZW5kKHBhcmFtZXRlcnNDU1NW
YWx1ZS5yZWxlYXNlKCkpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSNlbmRpZgog
ICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgZmlsdGVyVmFsdWUgPSBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZTo6Y3JlYXRlKFdlYktpdENTU0ZpbHRlclZhbHVlOjpVbmtub3duRmlsdGVyT3BlcmF0
aW9uKTsKICAgICAgICAgICAgIGJyZWFrOwpAQCAtMjk2OSw3ICsyODIzLDcgQEAgUGFzc1JlZlB0
cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZShDU1NQcm9w
ZXJ0eUlEIHByb3BlcnQKICNlbmRpZgogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEZpbHRlcjoKLSAgICAgICAgICAgIHJldHVybiB2YWx1ZUZv
ckZpbHRlcihyZW5kZXJlciwgc3R5bGUuZ2V0KCksIHN0eWxlLT5maWx0ZXIoKSk7CisgICAgICAg
ICAgICByZXR1cm4gdmFsdWVGb3JGaWx0ZXIoc3R5bGUuZ2V0KCksIHN0eWxlLT5maWx0ZXIoKSk7
CiAjZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQogICAgICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0QmxlbmRNb2RlOgpAQCAtMzA5Myw5ICsyOTQ3LDYgQEAgUGFzc1JlZlB0cjxD
U1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0
eUlEIHByb3BlcnQKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIC8qIE90aGVyIHVuaW1w
bGVtZW50ZWQgcHJvcGVydGllcyAqLwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eUdlb21ldHJ5OgotI2VuZGlmCiAgICAgICAgIGNhc2UgQ1NTUHJvcGVy
dHlQYWdlOiAvLyBmb3IgQHBhZ2UKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVF1b3RlczogLy8g
RklYTUU6IG5lZWRzIGltcGxlbWVudGF0aW9uCiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlTaXpl
OiAvLyBmb3IgQHBhZ2UKQEAgLTMxMTYsMTAgKzI5NjcsNiBAQCBQYXNzUmVmUHRyPENTU1ZhbHVl
PiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJv
cGVydAogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VHJhbnNmb3JtT3JpZ2luWDoKICAg
ICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRyYW5zZm9ybU9yaWdpblk6CiAgICAgICAgIGNh
c2UgQ1NTUHJvcGVydHlXZWJraXRUcmFuc2Zvcm1PcmlnaW5aOgotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eU1peDoKLSAgICAgICAgY2FzZSBDU1NQcm9w
ZXJ0eVBhcmFtZXRlcnM6Ci0jZW5kaWYKICAgICAgICAgICAgIGJyZWFrOwogCiAjaWYgRU5BQkxF
KENTU19ERVZJQ0VfQURBUFRBVElPTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21w
dXRlZFN0eWxlRGVjbGFyYXRpb24uaAppbmRleCBlZmZhMDMxLi45OTgxY2YyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5oCkBAIC00MSwx
MSArNDEsNiBAQCBjbGFzcyBTaGFkb3dEYXRhOwogY2xhc3MgU3R5bGVQcm9wZXJ0aWVzOwogY2xh
c3MgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZDsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLWNs
YXNzIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcjsKLWNsYXNzIEN1c3RvbUZpbHRlclBhcmFt
ZXRlcjsKLSNlbmRpZgotCiBlbnVtIEVVcGRhdGVMYXlvdXQgeyBEb05vdFVwZGF0ZUxheW91dCA9
IGZhbHNlLCBVcGRhdGVMYXlvdXQgPSB0cnVlIH07CiAKIGVudW0gQWRqdXN0UGl4ZWxWYWx1ZXNG
b3JDb21wdXRlZFN0eWxlIHsgQWRqdXN0UGl4ZWxWYWx1ZXMsIERvTm90QWRqdXN0UGl4ZWxWYWx1
ZXMgfTsKQEAgLTY0LDcgKzU5LDcgQEAgcHVibGljOgogICAgIGJvb2wgcHJvcGVydHlNYXRjaGVz
KENTU1Byb3BlcnR5SUQsIGNvbnN0IENTU1ZhbHVlKikgY29uc3Q7CiAKICNpZiBFTkFCTEUoQ1NT
X0ZJTFRFUlMpCi0gICAgc3RhdGljIFBhc3NSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yRmlsdGVyKGNv
bnN0IFJlbmRlck9iamVjdCosIGNvbnN0IFJlbmRlclN0eWxlKiwgY29uc3QgRmlsdGVyT3BlcmF0
aW9ucyYsIEFkanVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSA9IEFkanVzdFBpeGVsVmFs
dWVzKTsKKyAgICBzdGF0aWMgUGFzc1JlZjxDU1NWYWx1ZT4gdmFsdWVGb3JGaWx0ZXIoY29uc3Qg
UmVuZGVyU3R5bGUqLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiwgQWRqdXN0UGl4ZWxWYWx1ZXNG
b3JDb21wdXRlZFN0eWxlID0gQWRqdXN0UGl4ZWxWYWx1ZXMpOwogI2VuZGlmCiAKIHByaXZhdGU6
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55LmluIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueS5pbgppbmRleCA4YWEwYmMzLi5lYjExYmUzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55LmluCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkuaW4KQEAgLTI5MSwxNSArMjkxLDYgQEAgc3RhdGljIGlu
bGluZSBib29sIGlzQ1NTVG9rZW5BU3RyaW5nKGludCB5eXR5cGUpCiAKICNlbmRpZgogCi0jaWYg
RU5BQkxFX0NTU19TSEFERVJTCi0KLSV0b2tlbiBXRUJLSVRfRklMVEVSX1JVTEVfU1lNCi0KLSV0
eXBlIDxydWxlPiBmaWx0ZXIKLSVkZXN0cnVjdG9yIHsgaWYgKCQkKSAkJC0+ZGVyZWYoKTsgfSBm
aWx0ZXIKLQotI2VuZGlmCi0KICNpZiBFTkFCTEVfU0hBRE9XX0RPTQogCiAldG9rZW4gSE9TVF9T
WU0KQEAgLTQyMSw5ICs0MTIsNiBAQCB2YWxpZF9ydWxlOgogI2lmIEVOQUJMRV9DU1NfREVWSUNF
X0FEQVBUQVRJT04KICAgfCB2aWV3cG9ydAogI2VuZGlmCi0jaWYgRU5BQkxFX0NTU19TSEFERVJT
Ci0gIHwgZmlsdGVyCi0jZW5kaWYKICAgOwogCiBydWxlOgpAQCAtNDcyLDkgKzQ2MCw2IEBAIGJs
b2NrX3ZhbGlkX3J1bGU6CiAjaWYgRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTgogICB8IHZp
ZXdwb3J0CiAjZW5kaWYKLSNpZiBFTkFCTEVfQ1NTX1NIQURFUlMKLSAgfCBmaWx0ZXIKLSNlbmRp
ZgogICA7CiAKIGJsb2NrX3J1bGU6IGJsb2NrX3ZhbGlkX3J1bGUgfCBpbnZhbGlkX3J1bGUgeyAk
JCA9IG51bGxwdHI7IH0gfCBpbnZhbGlkX2F0IHsgJCQgPSBudWxscHRyOyB9IHwgbmFtZXNwYWNl
IHsgJCQgPSBudWxscHRyOyB9IHwgaW1wb3J0IHwgcmVnaW9uIDsKQEAgLTk2NSwyNCArOTUwLDYg
QEAgcmVnaW9uOgogICAgIH0KIDsKIAotI2lmIEVOQUJMRV9DU1NfU0hBREVSUwotCi1iZWZvcmVf
ZmlsdGVyX3J1bGU6Ci0gICAgLyogZW1wdHkgKi8gewotICAgICAgICBwYXJzZXItPm1hcmtSdWxl
SGVhZGVyU3RhcnQoQ1NTUnVsZVNvdXJjZURhdGE6OkZJTFRFUl9SVUxFKTsKLSAgICAgICAgcGFy
c2VyLT5tX2luRmlsdGVyUnVsZSA9IHRydWU7Ci0gICAgfQotICAgIDsKLQotZmlsdGVyOgotICAg
IGJlZm9yZV9maWx0ZXJfcnVsZSBXRUJLSVRfRklMVEVSX1JVTEVfU1lNIG1heWJlX3NwYWNlIElE
RU5UIGF0X3J1bGVfaGVhZGVyX2VuZF9tYXliZV9zcGFjZSAneycgYXRfcnVsZV9ib2R5X3N0YXJ0
IG1heWJlX3NwYWNlX2JlZm9yZV9kZWNsYXJhdGlvbiBkZWNsYXJhdGlvbl9saXN0IGNsb3Npbmdf
YnJhY2UgewotICAgICAgICBwYXJzZXItPm1faW5GaWx0ZXJSdWxlID0gZmFsc2U7Ci0gICAgICAg
ICQkID0gcGFyc2VyLT5jcmVhdGVGaWx0ZXJSdWxlKCQ0KS5sZWFrUmVmKCk7Ci0gICAgfQotICAg
IDsKLQotI2VuZGlmCi0KIGNvbWJpbmF0b3I6CiAgICAgJysnIG1heWJlX3NwYWNlIHsgJCQgPSBD
U1NTZWxlY3Rvcjo6RGlyZWN0QWRqYWNlbnQ7IH0KICAgfCAnficgbWF5YmVfc3BhY2UgeyAkJCA9
IENTU1NlbGVjdG9yOjpJbmRpcmVjdEFkamFjZW50OyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3Bw
CmluZGV4IDVjMWMwNTQuLjE0ZTA3Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCkBAIC0x
MDEsMTMgKzEwMSw2IEBACiAjaW5jbHVkZSAiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCIKICNlbmRp
ZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIldlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCIKLSNp
bmNsdWRlICJXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NT
U2hhZGVyVmFsdWUuaCIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKERBU0hCT0FSRF9TVVBQT1JUKQog
I2luY2x1ZGUgIkRhc2hib2FyZFJlZ2lvbi5oIgogI2VuZGlmCkBAIC0yNTIsNyArMjQ1LDYgQEAg
Q1NTUGFyc2VyQ29udGV4dDo6Q1NTUGFyc2VyQ29udGV4dChDU1NQYXJzZXJNb2RlIG1vZGUsIGNv
bnN0IFVSTCYgYmFzZVVSTCkKICAgICA6IGJhc2VVUkwoYmFzZVVSTCkKICAgICAsIG1vZGUobW9k
ZSkKICAgICAsIGlzSFRNTERvY3VtZW50KGZhbHNlKQotICAgICwgaXNDU1NDdXN0b21GaWx0ZXJF
bmFibGVkKGZhbHNlKQogICAgICwgaXNDU1NTdGlja3lQb3NpdGlvbkVuYWJsZWQoZmFsc2UpCiAg
ICAgLCBpc0NTU1JlZ2lvbnNFbmFibGVkKGZhbHNlKQogICAgICwgaXNDU1NDb21wb3NpdGluZ0Vu
YWJsZWQoZmFsc2UpCkBAIC0yNzQsNyArMjY2LDYgQEAgQ1NTUGFyc2VyQ29udGV4dDo6Q1NTUGFy
c2VyQ29udGV4dChEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IFVSTCYgYmFzZVVSTCwgY29uc3QK
ICAgICAsIGNoYXJzZXQoY2hhcnNldCkKICAgICAsIG1vZGUoZG9jdW1lbnQuaW5RdWlya3NNb2Rl
KCkgPyBDU1NRdWlya3NNb2RlIDogQ1NTU3RyaWN0TW9kZSkKICAgICAsIGlzSFRNTERvY3VtZW50
KGRvY3VtZW50LmlzSFRNTERvY3VtZW50KCkpCi0gICAgLCBpc0NTU0N1c3RvbUZpbHRlckVuYWJs
ZWQoZG9jdW1lbnQuc2V0dGluZ3MoKSA/IGRvY3VtZW50LnNldHRpbmdzKCktPmlzQ1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZCgpIDogZmFsc2UpCiAgICAgLCBpc0NTU1N0aWNreVBvc2l0aW9uRW5hYmxl
ZChkb2N1bWVudC5jc3NTdGlja3lQb3NpdGlvbkVuYWJsZWQoKSkKICAgICAsIGlzQ1NTUmVnaW9u
c0VuYWJsZWQoZG9jdW1lbnQuY3NzUmVnaW9uc0VuYWJsZWQoKSkKICAgICAsIGlzQ1NTQ29tcG9z
aXRpbmdFbmFibGVkKGRvY3VtZW50LmNzc0NvbXBvc2l0aW5nRW5hYmxlZCgpKQpAQCAtMjk3LDcg
KzI4OCw2IEBAIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBhLCBjb25z
dCBDU1NQYXJzZXJDb250ZXh0JiBiKQogICAgICAgICAmJiBhLmNoYXJzZXQgPT0gYi5jaGFyc2V0
CiAgICAgICAgICYmIGEubW9kZSA9PSBiLm1vZGUKICAgICAgICAgJiYgYS5pc0hUTUxEb2N1bWVu
dCA9PSBiLmlzSFRNTERvY3VtZW50Ci0gICAgICAgICYmIGEuaXNDU1NDdXN0b21GaWx0ZXJFbmFi
bGVkID09IGIuaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkCiAgICAgICAgICYmIGEuaXNDU1NTdGlj
a3lQb3NpdGlvbkVuYWJsZWQgPT0gYi5pc0NTU1N0aWNreVBvc2l0aW9uRW5hYmxlZAogICAgICAg
ICAmJiBhLmlzQ1NTUmVnaW9uc0VuYWJsZWQgPT0gYi5pc0NTU1JlZ2lvbnNFbmFibGVkCiAgICAg
ICAgICYmIGEuaXNDU1NDb21wb3NpdGluZ0VuYWJsZWQgPT0gYi5pc0NTU0NvbXBvc2l0aW5nRW5h
YmxlZApAQCAtMzI0LDkgKzMxNCw2IEBAIENTU1BhcnNlcjo6Q1NTUGFyc2VyKGNvbnN0IENTU1Bh
cnNlckNvbnRleHQmIGNvbnRleHQpCiAgICAgLCBtX2hhZFN5bnRhY3RpY2FsbHlWYWxpZENTU1J1
bGUoZmFsc2UpCiAgICAgLCBtX2xvZ0Vycm9ycyhmYWxzZSkKICAgICAsIG1faWdub3JlRXJyb3Jz
SW5EZWNsYXJhdGlvbihmYWxzZSkKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgLCBtX2lu
RmlsdGVyUnVsZShmYWxzZSkKLSNlbmRpZgogICAgICwgbV9kZWZhdWx0TmFtZXNwYWNlKHN0YXJB
dG9tKQogICAgICwgbV9wYXJzZWRUZXh0UHJlZml4TGVuZ3RoKDApCiAgICAgLCBtX3Byb3BlcnR5
UmFuZ2UoVUlOVF9NQVgsIFVJTlRfTUFYKQpAQCAtMjI5OCwyNSArMjI4NSw4IEBAIGJvb2wgQ1NT
UGFyc2VyOjpwYXJzZVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcElkLCBib29sIGltcG9ydGFudCkK
ICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIENTU1Byb3BlcnR5U3JjOiAvLyBPbmx5IHVzZWQg
d2l0aGluIEBmb250LWZhY2UgYW5kIEAtd2Via2l0LWZpbHRlciwgc28gY2Fubm90IHVzZSBpbmhl
cml0IHwgaW5pdGlhbCBvciBiZSAhaW1wb3J0YW50LiBUaGlzIGlzIGEgbGlzdCBvZiB1cmxzIG9y
IGxvY2FsIHJlZmVyZW5jZXMuCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBpZiAo
bV9pbkZpbHRlclJ1bGUpCi0gICAgICAgICAgICByZXR1cm4gcGFyc2VGaWx0ZXJSdWxlU3JjKCk7
Ci0jZW5kaWYKICAgICAgICAgcmV0dXJuIHBhcnNlRm9udEZhY2VTcmMoKTsKIAotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBjYXNlIENTU1Byb3BlcnR5TWl4OgotICAgICAgICAvLyBUaGUg
bWl4IHByb3BlcnR5IGlzIGp1c3Qgc3VwcG9ydGVkIGluc2lkZSBvZiBhbiBAZmlsdGVyIHJ1bGUu
Ci0gICAgICAgIGlmICghbV9pbkZpbHRlclJ1bGUpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgICAgIHJldHVybiBwYXJzZUZpbHRlclJ1bGVNaXgoKTsKLSAgICBjYXNlIENTU1Byb3Bl
cnR5UGFyYW1ldGVyczoKLSAgICAgICAgLy8gVGhlIHBhcmFtZXRlcnMgcHJvcGVydHkgaXMganVz
dCBzdXBwb3J0ZWQgaW5zaWRlIG9mIGFuIEBmaWx0ZXIgcnVsZS4KLSAgICAgICAgaWYgKCFtX2lu
RmlsdGVyUnVsZSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgcmV0dXJuIHBh
cnNlRmlsdGVyUnVsZVBhcmFtZXRlcnMoKTsKLSNlbmRpZgotCiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVVuaWNvZGVSYW5nZToKICAgICAgICAgcmV0dXJuIHBhcnNlRm9udEZhY2VVbmljb2RlUmFuZ2Uo
KTsKIApAQCAtMjkwMCwxMCArMjg3MCw2IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZhbHVlKENT
U1Byb3BlcnR5SUQgcHJvcElkLCBib29sIGltcG9ydGFudCkKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogICAgIGNhc2UgQ1NTUHJvcGVydHlQYWdlOgogICAgICAgICByZXR1cm4gcGFyc2VQYWdlKHBy
b3BJZCwgaW1wb3J0YW50KTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBDU1NQ
cm9wZXJ0eUdlb21ldHJ5OgotICAgICAgICByZXR1cm4gbV9pbkZpbHRlclJ1bGUgPyBwYXJzZUdl
b21ldHJ5KHByb3BJZCwgdmFsdWUsIGltcG9ydGFudCkgOiBmYWxzZTsKLSNlbmRpZgogICAgIGNh
c2UgQ1NTUHJvcGVydHlGb250U3RyZXRjaDoKICAgICBjYXNlIENTU1Byb3BlcnR5VGV4dExpbmVU
aHJvdWdoOgogICAgIGNhc2UgQ1NTUHJvcGVydHlUZXh0T3ZlcmxpbmU6CkBAIC05MTE1LDU4OSAr
OTA4MSw4IEBAIHN0YXRpYyB2b2lkIGZpbHRlckluZm9Gb3JOYW1lKGNvbnN0IENTU1BhcnNlclN0
cmluZyYgbmFtZSwgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6CiAgICAgICAgIGZpbHRlclR5cGUgPSBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6RHJvcFNoYWRvd0ZpbHRlck9wZXJhdGlvbjsKICAgICAgICAg
bWF4aW11bUFyZ3VtZW50Q291bnQgPSA0OyAgLy8geC1vZmZzZXQsIHktb2Zmc2V0LCBibHVyLXJh
ZGl1cywgY29sb3IgLS0gc3ByZWFkIGFuZCBpbnNldCBzdHlsZSBub3QgYWxsb3dlZC4KICAgICB9
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNl
KG5hbWUsICJjdXN0b20oIikpCi0gICAgICAgIGZpbHRlclR5cGUgPSBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZTo6Q3VzdG9tRmlsdGVyT3BlcmF0aW9uOwotI2VuZGlmCi19Ci0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi1zdGF0aWMgYm9vbCBhY2NlcHRDb21tYU9wZXJhdG9yKENTU1BhcnNlclZhbHVl
TGlzdCogYXJnc0xpc3QpCi17Ci0gICAgaWYgKENTU1BhcnNlclZhbHVlKiBhcmcgPSBhcmdzTGlz
dC0+Y3VycmVudCgpKSB7Ci0gICAgICAgIGlmICghaXNDb21tYShhcmcpKQotICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgICAgICBhcmdzTGlzdC0+bmV4dCgpOwotICAgIH0KLSAgICByZXR1
cm4gdHJ1ZTsKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+IENT
U1BhcnNlcjo6cGFyc2VDdXN0b21GaWx0ZXJBcnJheUZ1bmN0aW9uKENTU1BhcnNlclZhbHVlKiB2
YWx1ZSkKLXsKLSAgICBBU1NFUlQodmFsdWUtPnVuaXQgPT0gQ1NTUGFyc2VyVmFsdWU6OkZ1bmN0
aW9uICYmIHZhbHVlLT5mdW5jdGlvbik7Ci0KLSAgICBpZiAoIWVxdWFsSWdub3JpbmdDYXNlKHZh
bHVlLT5mdW5jdGlvbi0+bmFtZSwgImFycmF5KCIpKQotICAgICAgICByZXR1cm4gMDsKLQotICAg
IENTU1BhcnNlclZhbHVlTGlzdCogYXJyYXlBcmdzUGFyc2VyVmFsdWVMaXN0ID0gdmFsdWUtPmZ1
bmN0aW9uLT5hcmdzLmdldCgpOwotICAgIGlmICghYXJyYXlBcmdzUGFyc2VyVmFsdWVMaXN0IHx8
ICFhcnJheUFyZ3NQYXJzZXJWYWx1ZUxpc3QtPnNpemUoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0K
LSAgICAvLyBhcnJheSgpIHZhbHVlcyBhcmUgY29tbWEgc2VwYXJhdGVkLgotICAgIFJlZlB0cjxX
ZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+IGFycmF5RnVuY3Rpb24gPSBXZWJLaXRDU1NBcnJh
eUZ1bmN0aW9uVmFsdWU6OmNyZWF0ZSgpOwotICAgIHdoaWxlICh0cnVlKSB7Ci0gICAgICAgIC8v
IFdlIHBhcnNlIHBhaXJzIDxWYWx1ZSwgQ29tbWE+IGF0IGVhY2ggc3RlcC4KLSAgICAgICAgQ1NT
UGFyc2VyVmFsdWUqIGN1cnJlbnRQYXJzZXJWYWx1ZSA9IGFycmF5QXJnc1BhcnNlclZhbHVlTGlz
dC0+Y3VycmVudCgpOwotICAgICAgICBpZiAoIWN1cnJlbnRQYXJzZXJWYWx1ZSB8fCAhdmFsaWRV
bml0KGN1cnJlbnRQYXJzZXJWYWx1ZSwgRk51bWJlciwgQ1NTU3RyaWN0TW9kZSkpCi0gICAgICAg
ICAgICByZXR1cm4gMDsKLQotICAgICAgICBSZWZQdHI8Q1NTVmFsdWU+IGFycmF5VmFsdWUgPSBj
c3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShjdXJyZW50UGFyc2VyVmFsdWUtPmZWYWx1ZSwgQ1NT
UHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpOwotICAgICAgICBhcnJheUZ1bmN0aW9uLT5hcHBl
bmQoYXJyYXlWYWx1ZS5yZWxlYXNlKCkpOwotCi0gICAgICAgIENTU1BhcnNlclZhbHVlKiBuZXh0
UGFyc2VyVmFsdWUgPSBhcnJheUFyZ3NQYXJzZXJWYWx1ZUxpc3QtPm5leHQoKTsKLSAgICAgICAg
aWYgKCFuZXh0UGFyc2VyVmFsdWUpCi0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICBpZiAo
IWlzQ29tbWEobmV4dFBhcnNlclZhbHVlKSkKLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAg
ICAgIGFycmF5QXJnc1BhcnNlclZhbHVlTGlzdC0+bmV4dCgpOwotICAgIH0KLQotICAgIHJldHVy
biBhcnJheUZ1bmN0aW9uOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWU+IENTU1BhcnNlcjo6cGFyc2VNYXRWYWx1ZShDU1NQYXJzZXJWYWx1ZSogdmFsdWUpCi17Ci0g
ICAgaWYgKHZhbHVlLT51bml0ICE9IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiB8fCAhdmFsdWUt
PmZ1bmN0aW9uKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIHVuc2lnbmVkIG51bWJlck9mVmFs
dWVzID0gMDsKLSAgICBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UodmFsdWUtPmZ1bmN0aW9uLT5uYW1l
LCAibWF0MigiKSkKLSAgICAgICAgbnVtYmVyT2ZWYWx1ZXMgPSA0OwotICAgIGVsc2UgaWYgKGVx
dWFsSWdub3JpbmdDYXNlKHZhbHVlLT5mdW5jdGlvbi0+bmFtZSwgIm1hdDMoIikpCi0gICAgICAg
IG51bWJlck9mVmFsdWVzID0gOTsKLSAgICBlbHNlIGlmIChlcXVhbElnbm9yaW5nQ2FzZSh2YWx1
ZS0+ZnVuY3Rpb24tPm5hbWUsICJtYXQ0KCIpKQotICAgICAgICBudW1iZXJPZlZhbHVlcyA9IDE2
OwotICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBDU1NQYXJzZXJWYWx1ZUxpc3Qq
IGFyZ3MgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0gICAgaWYgKCFhcmdzIHx8IGFy
Z3MtPnNpemUoKSAhPSAobnVtYmVyT2ZWYWx1ZXMgKiAyIC0gMSkpCi0gICAgICAgIHJldHVybiAw
OwotCi0gICAgUmVmUHRyPFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU+IG1hdFZhbHVlTGlzdCA9
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU6OmNyZWF0ZSgpOwotICAgIENTU1BhcnNlclZhbHVl
KiBhcmcgPSBhcmdzLT5jdXJyZW50KCk7Ci0gICAgd2hpbGUgKGFyZykgewotICAgICAgICBpZiAo
IXZhbGlkVW5pdChhcmcsIEZOdW1iZXIsIENTU1N0cmljdE1vZGUpKQotICAgICAgICAgICAgcmV0
dXJuIDA7Ci0gICAgICAgIG1hdFZhbHVlTGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0
ZVZhbHVlKGFyZy0+ZlZhbHVlLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwotICAg
ICAgICBhcmcgPSBhcmdzLT5uZXh0KCk7Ci0KLSAgICAgICAgaWYgKCFhcmcpCi0gICAgICAgICAg
ICBicmVhazsKLQotICAgICAgICBpZiAoIWlzQ29tbWEoYXJnKSkKLSAgICAgICAgICAgIHJldHVy
biAwOwotCi0gICAgICAgIGFyZyA9IGFyZ3MtPm5leHQoKTsKLSAgICB9Ci0KLSAgICBpZiAoIW1h
dFZhbHVlTGlzdCB8fCBtYXRWYWx1ZUxpc3QtPmxlbmd0aCgpICE9IG51bWJlck9mVmFsdWVzKQot
ICAgICAgICByZXR1cm4gMDsKLQotICAgIHJldHVybiBtYXRWYWx1ZUxpc3QucmVsZWFzZSgpOwot
fQotCi1QYXNzUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU+IENTU1BhcnNlcjo6cGFy
c2VNaXhGdW5jdGlvbihDU1NQYXJzZXJWYWx1ZSogdmFsdWUpCi17Ci0gICAgQVNTRVJUKHZhbHVl
LT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiAmJiB2YWx1ZS0+ZnVuY3Rpb24pOwot
Ci0gICAgaWYgKCFlcXVhbElnbm9yaW5nQ2FzZSh2YWx1ZS0+ZnVuY3Rpb24tPm5hbWUsICJtaXgo
IikpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzTGlz
dCA9IHZhbHVlLT5mdW5jdGlvbi0+YXJncy5nZXQoKTsKLSAgICBpZiAoIWFyZ3NMaXN0KQotICAg
ICAgICByZXR1cm4gMDsKLQotICAgIHVuc2lnbmVkIG51bUFyZ3MgPSBhcmdzTGlzdC0+c2l6ZSgp
OwotICAgIGlmIChudW1BcmdzIDwgMSB8fCBudW1BcmdzID4gMykKLSAgICAgICAgcmV0dXJuIDA7
Ci0gICAgCi0gICAgUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU+IG1peEZ1bmN0aW9u
ID0gV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZTo6Y3JlYXRlKCk7Ci0KLSAgICBib29sIGhhc0Js
ZW5kTW9kZSA9IGZhbHNlOwotICAgIGJvb2wgaGFzQWxwaGFDb21wb3NpdGluZyA9IGZhbHNlOwot
Ci0gICAgZm9yIChDU1NQYXJzZXJWYWx1ZSogYXJnID0gYXJnc0xpc3QtPmN1cnJlbnQoKTsgYXJn
OyBhcmcgPSBhcmdzTGlzdC0+bmV4dCgpKSB7Ci0gICAgICAgIFJlZlB0cjxDU1NWYWx1ZT4gdmFs
dWU7Ci0KLSAgICAgICAgdW5zaWduZWQgYXJnTnVtYmVyID0gYXJnc0xpc3QtPmN1cnJlbnRJbmRl
eCgpOwotICAgICAgICBpZiAoIWFyZ051bWJlcikgewotICAgICAgICAgICAgaWYgKGFyZy0+dW5p
dCA9PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1VSSSkgewotICAgICAgICAgICAgICAgIFVSTCBz
aGFkZXJVUkwgPSBjb21wbGV0ZVVSTChhcmctPnN0cmluZyk7Ci0gICAgICAgICAgICAgICAgdmFs
dWUgPSBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y3JlYXRlKHNoYWRlclVSTC5zdHJpbmcoKSk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSBpZiAoYXJnTnVtYmVyID09IDEgfHwgYXJnTnVt
YmVyID09IDIpIHsKLSAgICAgICAgICAgIGlmICghaGFzQmxlbmRNb2RlICYmIGlzQmxlbmRNb2Rl
KGFyZy0+aWQpKSB7Ci0gICAgICAgICAgICAgICAgaGFzQmxlbmRNb2RlID0gdHJ1ZTsKLSAgICAg
ICAgICAgICAgICB2YWx1ZSA9IGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShh
cmctPmlkKTsKLSAgICAgICAgICAgIH0gZWxzZSBpZiAoIWhhc0FscGhhQ29tcG9zaXRpbmcgJiYg
aXNDb21wb3NpdGVPcGVyYXRvcihhcmctPmlkKSkgewotICAgICAgICAgICAgICAgIGhhc0FscGhh
Q29tcG9zaXRpbmcgPSB0cnVlOwotICAgICAgICAgICAgICAgIHZhbHVlID0gY3NzVmFsdWVQb29s
KCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKGFyZy0+aWQpOwotICAgICAgICAgICAgfQotICAgICAg
ICB9Ci0KLSAgICAgICAgaWYgKCF2YWx1ZSkKLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAg
ICAgIG1peEZ1bmN0aW9uLT5hcHBlbmQodmFsdWUucmVsZWFzZSgpKTsKLSAgICB9Ci0KLSAgICBy
ZXR1cm4gbWl4RnVuY3Rpb247CiB9CiAKLVBhc3NSZWZQdHI8Q1NTVmFsdWVMaXN0PiBDU1NQYXJz
ZXI6OnBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhDU1NQYXJzZXJWYWx1ZUxpc3QqIGFyZ3NM
aXN0KQotewotICAgIC8vCi0gICAgLy8gcGFyYW1zOiAgICAgIFs8cGFyYW0tZGVmPlssPHBhcmFt
LWRlZj4qXV0KLSAgICAvLyBwYXJhbS1kZWY6ICAgPHBhcmFtLW5hbWU+d3NwPHBhcmFtLXZhbHVl
PgotICAgIC8vIHBhcmFtLW5hbWU6ICA8aWRlbnQ+Ci0gICAgLy8gcGFyYW0tdmFsdWU6IHRydWV8
ZmFsc2Vbd3NwK3RydWV8ZmFsc2VdezAtM30gfAotICAgIC8vICAgICAgICAgICAgICA8bnVtYmVy
Plt3c3ArPG51bWJlcj5dezAtM30gfAotICAgIC8vICAgICAgICAgICAgICA8YXJyYXk+IHwKLSAg
ICAvLyAgICAgICAgICAgICAgPHRyYW5zZm9ybT4gfAotICAgIC8vICAgICAgICAgICAgICA8dGV4
dHVyZSg8dXJpPik+Ci0gICAgLy8gYXJyYXk6ICdhcnJheSgnPG51bWJlcj5bd3NwPG51bWJlcj5d
KicpJwotICAgIC8vIGNzcy0zZC10cmFuc2Zvcm06IDx0cmFuc2Zvcm0tZnVuY3Rpb24+O1s8dHJh
bnNmb3JtLWZ1bmN0aW9uPl0qCi0gICAgLy8gdHJhbnNmb3JtOiAgIDxjc3MtM2QtdHJhbnNmb3Jt
PiB8IDxtYXQ+Ci0gICAgLy8gbWF0OiAgICAgICAgICdtYXQyKCc8bnVtYmVyPigsPG51bWJlcj4p
ezN9JyknIHwgCi0gICAgLy8gICAgICAgICAgICAgICdtYXQzKCc8bnVtYmVyPigsPG51bWJlcj4p
ezh9JyknIHwgCi0gICAgLy8gICAgICAgICAgICAgICdtYXQ0KCc8bnVtYmVyPigsPG51bWJlcj4p
ezE1fScpJyApCi0gICAgLy8KLQotICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcmFtTGlzdCA9
IENTU1ZhbHVlTGlzdDo6Y3JlYXRlQ29tbWFTZXBhcmF0ZWQoKTsKLQotICAgIHdoaWxlIChDU1NQ
YXJzZXJWYWx1ZSogYXJnID0gYXJnc0xpc3QtPmN1cnJlbnQoKSkgewotICAgICAgICBpZiAoYXJn
LT51bml0ICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfSURFTlQpCi0gICAgICAgICAgICByZXR1
cm4gMDsKLQotICAgICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJhbWV0ZXIgPSBDU1NWYWx1
ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgICAgIHBhcmFtZXRlci0+YXBwZW5k
KGNyZWF0ZVByaW1pdGl2ZVN0cmluZ1ZhbHVlKGFyZykpOwotCi0gICAgICAgIGFyZyA9IGFyZ3NM
aXN0LT5uZXh0KCk7Ci0gICAgICAgIGlmICghYXJnKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0K
LSAgICAgICAgUmVmUHRyPENTU1ZhbHVlPiBwYXJhbWV0ZXJWYWx1ZTsKLQotICAgICAgICBpZiAo
YXJnLT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiAmJiBhcmctPmZ1bmN0aW9uKSB7
Ci0gICAgICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHBhcnNpbmcgZm9yIHRoZSBvdGhlciBw
YXJhbWV0ZXIgdHlwZXMuCi0gICAgICAgICAgICAvLyB0ZXh0dXJlczogaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDQyCi0gICAgICAgICAgICBpZiAoZXF1YWxJZ25v
cmluZ0Nhc2UoYXJnLT5mdW5jdGlvbi0+bmFtZSwgImFycmF5KCIpKSB7Ci0gICAgICAgICAgICAg
ICAgcGFyYW1ldGVyVmFsdWUgPSBwYXJzZUN1c3RvbUZpbHRlckFycmF5RnVuY3Rpb24oYXJnKTsK
LSAgICAgICAgICAgICAgICAvLyBUaGlzIHBhcnNpbmcgc3RlcCBvbmx5IGNvbnN1bWVzIGZ1bmN0
aW9uIGFyZ3VtZW50cywKLSAgICAgICAgICAgICAgICAvLyBhcmdzTGlzdCBpcyB0aGVyZWZvcmUg
bW92ZWQgZm9yd2FyZCBleHBsaWNpdGVseS4KLSAgICAgICAgICAgICAgICBhcmdzTGlzdC0+bmV4
dCgpOwotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAvLyBQYXJzZSBtYXQy
LCBtYXQzIGFuZCBtYXQ0IGZ1bmN0aW9ucy4KLSAgICAgICAgICAgICAgICBwYXJhbWV0ZXJWYWx1
ZSA9IHBhcnNlTWF0VmFsdWUoYXJnKTsKLSAgICAgICAgICAgICAgICBpZiAoIXBhcmFtZXRlclZh
bHVlICYmIGFyZykKLSAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyVmFsdWUgPSBwYXJzZUN1
c3RvbUZpbHRlclRyYW5zZm9ybShhcmdzTGlzdCk7Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAo
cGFyYW1ldGVyVmFsdWUpCi0gICAgICAgICAgICAgICAgICAgIGFyZ3NMaXN0LT5uZXh0KCk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSBpZiAodmFsaWRVbml0KGFyZywgRk51bWJlciwg
Q1NTU3RyaWN0TW9kZSkpIHsKLSAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcmFt
VmFsdWVMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOwotICAgICAg
ICAgICAgd2hpbGUgKGFyZykgewotICAgICAgICAgICAgICAgIC8vIElmIHdlIGhpdCBhIGNvbW1h
LCBpdCBtZWFucyB0aGF0IHdlIGZpbmlzaGVkIHRoaXMgcGFyYW1ldGVyJ3MgdmFsdWVzLgotICAg
ICAgICAgICAgICAgIGlmIChpc0NvbW1hKGFyZykpCi0gICAgICAgICAgICAgICAgICAgIGJyZWFr
OwotICAgICAgICAgICAgICAgIGlmICghdmFsaWRVbml0KGFyZywgRk51bWJlciwgQ1NTU3RyaWN0
TW9kZSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgICAgIHBh
cmFtVmFsdWVMaXN0LT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoYXJnLT5mVmFs
dWUsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKSk7Ci0gICAgICAgICAgICAgICAgYXJn
ID0gYXJnc0xpc3QtPm5leHQoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmICghcGFy
YW1WYWx1ZUxpc3QtPmxlbmd0aCgpIHx8IHBhcmFtVmFsdWVMaXN0LT5sZW5ndGgoKSA+IDQpCi0g
ICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICAgICBwYXJhbWV0ZXJWYWx1ZSA9IHBh
cmFtVmFsdWVMaXN0LnJlbGVhc2UoKTsKLSAgICAgICAgfQotICAgICAgICBpZiAoIXBhcmFtZXRl
clZhbHVlICYmIGFyZykgewotICAgICAgICAgICAgLy8gQWxsIHBhcmFtZXRlciB2YWx1ZXMgbmVl
ZCB0byBiZSBDU1NWYWx1ZUxpc3RzLgotICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4g
cGFyYW1WYWx1ZUxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0g
ICAgICAgICAgICBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbG9yVmFsdWUgPSBwYXJzZUNv
bG9yKGFyZyk7Ci0gICAgICAgICAgICBpZiAoIWNvbG9yVmFsdWUpCi0gICAgICAgICAgICAgICAg
cmV0dXJuIDA7Ci0gICAgICAgICAgICBwYXJhbVZhbHVlTGlzdC0+YXBwZW5kKGNvbG9yVmFsdWUu
cmVsZWFzZSgpKTsKLSAgICAgICAgICAgIHBhcmFtZXRlclZhbHVlID0gcGFyYW1WYWx1ZUxpc3Qu
cmVsZWFzZSgpOwotICAgICAgICAgICAgYXJnID0gYXJnc0xpc3QtPm5leHQoKTsKLSAgICAgICAg
fQotCi0gICAgICAgIGlmICghcGFyYW1ldGVyVmFsdWUgfHwgIWFjY2VwdENvbW1hT3BlcmF0b3Io
YXJnc0xpc3QpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgcGFyYW1ldGVyLT5h
cHBlbmQocGFyYW1ldGVyVmFsdWUucmVsZWFzZSgpKTsKLSAgICAgICAgcGFyYW1MaXN0LT5hcHBl
bmQocGFyYW1ldGVyLnJlbGVhc2UoKSk7Ci0gICAgfQotCi0gICAgcmV0dXJuIHBhcmFtTGlzdDsg
ICAKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gQ1NTUGFyc2VyOjpwYXJz
ZUN1c3RvbUZpbHRlckZ1bmN0aW9uV2l0aEF0UnVsZVJlZmVyZW5jZVN5bnRheChDU1NQYXJzZXJW
YWx1ZSogdmFsdWUpCi17Ci0gICAgLy8KLSAgICAvLyBDdXN0b20gZmlsdGVyIGZ1bmN0aW9uICJh
dC1ydWxlIHJlZmVyZW5jZSIgc3ludGF4OgotICAgIC8vCi0gICAgLy8gY3VzdG9tKDxmaWx0ZXIt
bmFtZT53c3BbLHdzcDxwYXJhbXM+XSkKLSAgICAvLwotICAgIC8vIGZpbHRlci1uYW1lOiA8Zmls
dGVyLW5hbWU+Ci0gICAgLy8gcGFyYW1zOiBTZWUgdGhlIGNvbW1lbnQgaW4gQ1NTUGFyc2VyOjpw
YXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcnMuCi0gICAgLy8KLQotICAgIEFTU0VSVCh2YWx1ZS0+
ZnVuY3Rpb24pOwotCi0gICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzTGlzdCA9IHZhbHVlLT5m
dW5jdGlvbi0+YXJncy5nZXQoKTsKLSAgICBpZiAoIWFyZ3NMaXN0IHx8ICFhcmdzTGlzdC0+c2l6
ZSgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIC8vIDEuIFBhcnNlIHRoZSBmaWx0ZXIgbmFt
ZS4KLSAgICBDU1NQYXJzZXJWYWx1ZSogYXJnID0gYXJnc0xpc3QtPmN1cnJlbnQoKTsKLSAgICBp
ZiAoYXJnLT51bml0ICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfSURFTlQpCi0gICAgICAgIHJl
dHVybiAwOwotCi0gICAgUmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBmaWx0ZXJWYWx1ZSA9
IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkN1c3Rv
bUZpbHRlck9wZXJhdGlvbik7Ci0KLSAgICBSZWZQdHI8Q1NTVmFsdWU+IGZpbHRlck5hbWUgPSBj
cmVhdGVQcmltaXRpdmVTdHJpbmdWYWx1ZShhcmcpOwotICAgIGZpbHRlclZhbHVlLT5hcHBlbmQo
ZmlsdGVyTmFtZSk7Ci0gICAgYXJnc0xpc3QtPm5leHQoKTsKLQotICAgIGlmICghYWNjZXB0Q29t
bWFPcGVyYXRvcihhcmdzTGlzdCkpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgLy8gMi4gUGFy
c2UgdGhlIHBhcmFtZXRlcnMuCi0gICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyYW1MaXN0ID0g
cGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzKGFyZ3NMaXN0KTsKLSAgICBpZiAoIXBhcmFtTGlz
dCkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBpZiAocGFyYW1MaXN0LT5sZW5ndGgoKSkKLSAg
ICAgICAgZmlsdGVyVmFsdWUtPmFwcGVuZChwYXJhbUxpc3QucmVsZWFzZSgpKTsKLQotICAgIHJl
dHVybiBmaWx0ZXJWYWx1ZTsKLX0KLQotLy8gRklYTUU6IFRoZSBjdXN0b20gZmlsdGVycyAiaW5s
aW5lIiBzeW50YXggaXMgZGVwcmVjYXRlZC4gV2Ugd2lsbCByZW1vdmUgaXQgZXZlbnR1YWxseS4K
LVBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+IENTU1BhcnNlcjo6cGFyc2VDdXN0b21G
aWx0ZXJGdW5jdGlvbldpdGhJbmxpbmVTeW50YXgoQ1NTUGFyc2VyVmFsdWUqIHZhbHVlKQotewot
ICAgIC8vCi0gICAgLy8gQ3VzdG9tIGZpbHRlciBmdW5jdGlvbiAiaW5saW5lIiBzeW50YXg6Ci0g
ICAgLy8KLSAgICAvLyBjdXN0b20oPHZlcnRleC1zaGFkZXI+W3dzcDxmcmFnbWVudC1zaGFkZXI+
XVssPHZlcnRleC1tZXNoPl1bLDxwYXJhbXM+XSkKLSAgICAvLwotICAgIC8vIHZlcnRleFNoYWRl
cjogICAgPHVyaT4gfCBub25lCi0gICAgLy8gZnJhZ21lbnRTaGFkZXI6ICA8dXJpPiB8IG5vbmUg
fCBtaXgoPHVyaT4gWyA8YmxlbmQtbW9kZT4gfHwgPGFscGhhLWNvbXBvc2l0aW5nPiBdPykKLSAg
ICAvLwotICAgIC8vIGJsZW5kLW1vZGU6IG5vcm1hbCB8IG11bHRpcGx5IHwgc2NyZWVuIHwgb3Zl
cmxheSB8IGRhcmtlbiB8IGxpZ2h0ZW4gfCBjb2xvci1kb2RnZSB8Ci0gICAgLy8gICAgICAgICAg
ICAgY29sb3ItYnVybiB8IGhhcmQtbGlnaHQgfCBzb2Z0LWxpZ2h0IHwgZGlmZmVyZW5jZSB8IGV4
Y2x1c2lvbiB8IGh1ZSB8Ci0gICAgLy8gICAgICAgICAgICAgc2F0dXJhdGlvbiB8IGNvbG9yIHwg
bHVtaW5vc2l0eQotICAgIC8vIGFscGhhLWNvbXBvc2l0aW5nOiBjbGVhciB8IHNyYyB8IGRzdCB8
IHNyYy1vdmVyIHwgZHN0LW92ZXIgfCBzcmMtaW4gfCBkc3QtaW4gfAotICAgIC8vICAgICAgICAg
ICAgICAgICAgICBzcmMtb3V0IHwgZHN0LW91dCB8IHNyYy1hdG9wIHwgZHN0LWF0b3AgfCB4b3Ig
fCBwbHVzCi0gICAgLy8KLSAgICAvLyB2ZXJ0ZXhNZXNoOiAgKzxpbnRlZ2VyPnsxLDJ9W3dzcDxi
b3g+XVt3c3AnZGV0YWNoZWQnXQotICAgIC8vIGJveDogZmlsdGVyLWJveCB8IGJvcmRlci1ib3gg
fCBwYWRkaW5nLWJveCB8IGNvbnRlbnQtYm94Ci0gICAgLy8KLSAgICAvLyBwYXJhbXM6IFNlZSB0
aGUgY29tbWVudCBpbiBDU1NQYXJzZXI6OnBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycy4KLSAg
ICAvLwotCi0gICAgQVNTRVJUKHZhbHVlLT5mdW5jdGlvbik7Ci0KLSAgICBDU1NQYXJzZXJWYWx1
ZUxpc3QqIGFyZ3NMaXN0ID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdldCgpOwotICAgIGlmICgh
YXJnc0xpc3QpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgUmVmUHRyPFdlYktpdENTU0ZpbHRl
clZhbHVlPiBmaWx0ZXJWYWx1ZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoV2ViS2l0
Q1NTRmlsdGVyVmFsdWU6OkN1c3RvbUZpbHRlck9wZXJhdGlvbik7Ci0KLSAgICAvLyAxLiBQYXJz
ZSB0aGUgc2hhZGVyIFVSTHM6IDx2ZXJ0ZXgtc2hhZGVyPlt3c3A8ZnJhZ21lbnQtc2hhZGVyPl0K
LSAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBzaGFkZXJzTGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3Jl
YXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAgICBib29sIGhhZEF0TGVhc3RPbmVDdXN0b21TaGFkZXIg
PSBmYWxzZTsKLSAgICBDU1NQYXJzZXJWYWx1ZSogYXJnOwotICAgIGZvciAoYXJnID0gYXJnc0xp
c3QtPmN1cnJlbnQoKTsgYXJnOyBhcmcgPSBhcmdzTGlzdC0+bmV4dCgpKSB7Ci0gICAgICAgIFJl
ZlB0cjxDU1NWYWx1ZT4gdmFsdWU7Ci0gICAgICAgIGlmIChhcmctPmlkID09IENTU1ZhbHVlTm9u
ZSkKLSAgICAgICAgICAgIHZhbHVlID0gY3NzVmFsdWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZh
bHVlKENTU1ZhbHVlTm9uZSk7Ci0gICAgICAgIGVsc2UgaWYgKGFyZy0+dW5pdCA9PSBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTX1VSSSkgewotICAgICAgICAgICAgVVJMIHNoYWRlclVSTCA9IGNvbXBs
ZXRlVVJMKGFyZy0+c3RyaW5nKTsKLSAgICAgICAgICAgIHZhbHVlID0gV2ViS2l0Q1NTU2hhZGVy
VmFsdWU6OmNyZWF0ZShzaGFkZXJVUkwuc3RyaW5nKCkpOwotICAgICAgICAgICAgaGFkQXRMZWFz
dE9uZUN1c3RvbVNoYWRlciA9IHRydWU7Ci0gICAgICAgIH0gZWxzZSBpZiAoYXJnc0xpc3QtPmN1
cnJlbnRJbmRleCgpID09IDEgJiYgYXJnLT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlv
bikgewotICAgICAgICAgICAgaWYgKCEodmFsdWUgPSBwYXJzZU1peEZ1bmN0aW9uKGFyZykpKQot
ICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgaGFkQXRMZWFzdE9uZUN1c3Rv
bVNoYWRlciA9IHRydWU7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoIXZhbHVlKQotICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgIHNoYWRlcnNMaXN0LT5hcHBlbmQodmFsdWUucmVsZWFzZSgp
KTsKLSAgICB9Ci0KLSAgICBpZiAoIXNoYWRlcnNMaXN0LT5sZW5ndGgoKSB8fCAhaGFkQXRMZWFz
dE9uZUN1c3RvbVNoYWRlciB8fCBzaGFkZXJzTGlzdC0+bGVuZ3RoKCkgPiAyIHx8ICFhY2NlcHRD
b21tYU9wZXJhdG9yKGFyZ3NMaXN0KSkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIAotICAg
IGZpbHRlclZhbHVlLT5hcHBlbmQoc2hhZGVyc0xpc3QucmVsZWFzZSgpKTsKLSAgICAKLSAgICAv
LyAyLiBQYXJzZSB0aGUgbWVzaCBzaXplIDx2ZXJ0ZXgtbWVzaD4KLSAgICBSZWZQdHI8Q1NTVmFs
dWVMaXN0PiBtZXNoU2l6ZUxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVk
KCk7Ci0gICAgCi0gICAgZm9yIChhcmcgPSBhcmdzTGlzdC0+Y3VycmVudCgpOyBhcmc7IGFyZyA9
IGFyZ3NMaXN0LT5uZXh0KCkpIHsKLSAgICAgICAgaWYgKCF2YWxpZFVuaXQoYXJnLCBGSW50ZWdl
ciB8IEZOb25OZWcsIENTU1N0cmljdE1vZGUpKQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAg
IGludCBpbnRlZ2VyVmFsdWUgPSBjbGFtcFRvSW50ZWdlcihhcmctPmZWYWx1ZSk7Ci0gICAgICAg
IC8vIEFjY29yZGluZyB0byB0aGUgc3BlY2lmaWNhdGlvbiB3ZSBjYW4gb25seSBhY2NlcHQgcG9z
aXRpdmUgbm9uLXplcm8gdmFsdWVzLgotICAgICAgICBpZiAoaW50ZWdlclZhbHVlIDwgMSkKLSAg
ICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBtZXNoU2l6ZUxpc3QtPmFwcGVuZChjc3NWYWx1
ZVBvb2woKS5jcmVhdGVWYWx1ZShpbnRlZ2VyVmFsdWUsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1Nf
TlVNQkVSKSk7Ci0gICAgfQotICAgIAotICAgIGlmIChtZXNoU2l6ZUxpc3QtPmxlbmd0aCgpID4g
MikKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgCi0gICAgLy8gRklYTUU6IEZvciBsZWdhY3kgY29u
dGVudCwgd2UgYWNjZXB0IHRoZSBtZXNoIGJveCB0eXBlcy4gV2UgZG9uJ3QgZG8gYW55dGhpbmcg
ZWxzZSB3aXRoIHRoZW0uCi0gICAgLy8gRXZlbnR1YWxseSwgd2UnbGwgcmVtb3ZlIHRoZW0gY29t
cGxldGVseS4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTAzNzc4Ci0gICAgaWYgKChhcmcgPSBhcmdzTGlzdC0+Y3VycmVudCgpKSAmJiAoYXJnLT5pZCA9
PSBDU1NWYWx1ZUJvcmRlckJveCB8fCBhcmctPmlkID09IENTU1ZhbHVlUGFkZGluZ0JveAotICAg
ICAgICB8fCBhcmctPmlkID09IENTU1ZhbHVlQ29udGVudEJveCB8fCBhcmctPmlkID09IENTU1Zh
bHVlRmlsdGVyQm94KSkKLSAgICAgICAgYXJnc0xpc3QtPm5leHQoKTsKLSAgICAKLSAgICBpZiAo
KGFyZyA9IGFyZ3NMaXN0LT5jdXJyZW50KCkpICYmIGFyZy0+aWQgPT0gQ1NTVmFsdWVEZXRhY2hl
ZCkgewotICAgICAgICBtZXNoU2l6ZUxpc3QtPmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVJ
ZGVudGlmaWVyVmFsdWUoYXJnLT5pZCkpOwotICAgICAgICBhcmdzTGlzdC0+bmV4dCgpOwotICAg
IH0KLSAgICAKLSAgICBpZiAobWVzaFNpemVMaXN0LT5sZW5ndGgoKSkgewotICAgICAgICBpZiAo
IWFjY2VwdENvbW1hT3BlcmF0b3IoYXJnc0xpc3QpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0g
ICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQobWVzaFNpemVMaXN0LnJlbGVhc2UoKSk7Ci0gICAg
fQotICAgIAotICAgIC8vIDMuIFBhcnNlIHRoZSBwYXJhbWV0ZXJzLgotICAgIFJlZlB0cjxDU1NW
YWx1ZUxpc3Q+IHBhcmFtTGlzdCA9IHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhhcmdzTGlz
dCk7Ci0gICAgaWYgKCFwYXJhbUxpc3QpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgaWYgKHBh
cmFtTGlzdC0+bGVuZ3RoKCkpCi0gICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQocGFyYW1MaXN0
LnJlbGVhc2UoKSk7Ci0gICAgCi0gICAgcmV0dXJuIGZpbHRlclZhbHVlOwotfQotCi1QYXNzUmVm
UHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlQ3VzdG9tRmlsdGVyRnVu
Y3Rpb24oQ1NTUGFyc2VyVmFsdWUqIHZhbHVlKQotewotICAgIEFTU0VSVCh2YWx1ZS0+ZnVuY3Rp
b24pOwotCi0gICAgLy8gTG9vayBhaGVhZCB0byBkZXRlcm1pbmUgd2hpY2ggc3ludGF4IHRoZSBj
dXN0b20gZnVuY3Rpb24gaXMgdXNpbmcuCi0gICAgLy8gQm90aCB0aGUgYXQtcnVsZSByZWZlcmVu
Y2Ugc3ludGF4IGFuZCB0aGUgaW5saW5lIHN5bnRheCByZXF1aXJlIGF0IGxlYXN0IG9uZSBhcmd1
bWVudC4KLSAgICBDU1NQYXJzZXJWYWx1ZUxpc3QqIGFyZ3NMaXN0ID0gdmFsdWUtPmZ1bmN0aW9u
LT5hcmdzLmdldCgpOwotICAgIGlmICghYXJnc0xpc3QgfHwgIWFyZ3NMaXN0LT5zaXplKCkpCi0g
ICAgICAgIHJldHVybiAwOwotCi0gICAgLy8gVGhlIGF0LXJ1bGUgcmVmZXJlbmNlIHN5bnRheCBl
eHBlY3RzIGEgc2luZ2xlIGlkZW50IG9yIGFuIGlkZW50IGZvbGxvd2VkIGJ5IGEgY29tbWEuIAot
ICAgIC8vIGUuZy4gY3VzdG9tKG15LWZpbHRlcikgb3IgY3VzdG9tKG15LWZpbHRlciwgLi4uKQot
ICAgIC8vIEluIGNvbnRyYXN0LCB3aGVuIHRoZSBpbmxpbmUgc3ludGF4IHN0YXJ0cyB3aXRoIGFu
IGlkZW50IGxpa2UgIm5vbmUiLCBpdCBleHBlY3RzIGEgdXJpIG9yIGEgbWl4IGZ1bmN0aW9uIG5l
eHQuCi0gICAgLy8gZS5nLiBjdXN0b20obm9uZSB1cmwoLi4uKSkgb3IgY3VzdG9tKG5vbmUgbWl4
KC4uLikKLSAgICBib29sIGlzQXRSdWxlUmVmZXJlbmNlU3ludGF4ID0gYXJnc0xpc3QtPnZhbHVl
QXQoMCktPnVuaXQgPT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19JREVOVCAKLSAgICAgICAgJiYg
KGFyZ3NMaXN0LT5zaXplKCkgPT0gMSB8fCBpc0NvbW1hKGFyZ3NMaXN0LT52YWx1ZUF0KDEpKSk7
Ci0gICAgcmV0dXJuIGlzQXRSdWxlUmVmZXJlbmNlU3ludGF4ID8gcGFyc2VDdXN0b21GaWx0ZXJG
dW5jdGlvbldpdGhBdFJ1bGVSZWZlcmVuY2VTeW50YXgodmFsdWUpIDogcGFyc2VDdXN0b21GaWx0
ZXJGdW5jdGlvbldpdGhJbmxpbmVTeW50YXgodmFsdWUpOwotfQotCi1QYXNzUmVmUHRyPENTU1Zh
bHVlTGlzdD4gQ1NTUGFyc2VyOjpwYXJzZUN1c3RvbUZpbHRlclRyYW5zZm9ybShDU1NQYXJzZXJW
YWx1ZUxpc3QqIHZhbHVlTGlzdCkKLXsKLSAgICBpZiAoIXZhbHVlTGlzdCkKLSAgICAgICAgcmV0
dXJuIDA7Ci0KLSAgICAvLyBDU1MgU2hhZGVycycgY3VzdG9tKCkgdHJhbnNmb3JtcyBhcmUgc3Bh
Y2Ugc2VwYXJhdGVkIGFuZCBjb21tYSB0ZXJtaW5hdGVkLgotICAgIFJlZlB0cjxDU1NWYWx1ZUxp
c3Q+IGxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgZm9y
IChDU1NQYXJzZXJWYWx1ZSogdmFsdWUgPSB2YWx1ZUxpc3QtPmN1cnJlbnQoKTsgdmFsdWU7IHZh
bHVlID0gdmFsdWVMaXN0LT5uZXh0KCkpIHsKLSAgICAgICAgaWYgKGlzQ29tbWEodmFsdWUpKQot
ICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgUmVmUHRyPENTU1ZhbHVlPiBwYXJzZWRUcmFu
c2Zvcm1WYWx1ZSA9IHBhcnNlVHJhbnNmb3JtVmFsdWUodmFsdWUpOwotICAgICAgICBpZiAoIXBh
cnNlZFRyYW5zZm9ybVZhbHVlKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgbGlz
dC0+YXBwZW5kKHBhcnNlZFRyYW5zZm9ybVZhbHVlLnJlbGVhc2UoKSk7Ci0gICAgfQotCi0gICAg
cmV0dXJuIGxpc3QucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU1NoYWRlclZh
bHVlPiBDU1NQYXJzZXI6OnBhcnNlRmlsdGVyUnVsZVNyY1VyaUFuZEZvcm1hdChDU1NQYXJzZXJW
YWx1ZUxpc3QqIHZhbHVlTGlzdCkKLXsKLSAgICBDU1NQYXJzZXJWYWx1ZSogdmFsdWUgPSB2YWx1
ZUxpc3QtPmN1cnJlbnQoKTsKLSAgICBBU1NFUlQodmFsdWUgJiYgdmFsdWUtPnVuaXQgPT0gQ1NT
UHJpbWl0aXZlVmFsdWU6OkNTU19VUkkpOwotICAgIFJlZlB0cjxXZWJLaXRDU1NTaGFkZXJWYWx1
ZT4gc2hhZGVyVmFsdWUgPSBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y3JlYXRlKGNvbXBsZXRlVVJM
KHZhbHVlLT5zdHJpbmcpKTsKLQotICAgIHZhbHVlID0gdmFsdWVMaXN0LT5uZXh0KCk7Ci0gICAg
aWYgKHZhbHVlICYmIHZhbHVlLT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiAmJiBl
cXVhbElnbm9yaW5nQ2FzZSh2YWx1ZS0+ZnVuY3Rpb24tPm5hbWUsICJmb3JtYXQoIikpIHsKLSAg
ICAgICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdl
dCgpOwotICAgICAgICBpZiAoIWFyZ3MgfHwgYXJncy0+c2l6ZSgpICE9IDEpCi0gICAgICAgICAg
ICByZXR1cm4gMDsKLQotICAgICAgICBDU1NQYXJzZXJWYWx1ZSogYXJnID0gYXJncy0+Y3VycmVu
dCgpOwotICAgICAgICBpZiAoYXJnLT51bml0ICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfU1RS
SU5HKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgc2hhZGVyVmFsdWUtPnNldEZv
cm1hdChhcmctPnN0cmluZyk7Ci0gICAgICAgIHZhbHVlTGlzdC0+bmV4dCgpOwotICAgIH0KLQot
ICAgIHJldHVybiBzaGFkZXJWYWx1ZS5yZWxlYXNlKCk7Ci19Ci0KLWJvb2wgQ1NTUGFyc2VyOjpw
YXJzZUZpbHRlclJ1bGVTcmMoKQotewotICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHNyY0xpc3Qg
PSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZUNvbW1hU2VwYXJhdGVkKCk7Ci0KLSAgICBDU1NQYXJzZXJW
YWx1ZSogdmFsdWUgPSBtX3ZhbHVlTGlzdC0+Y3VycmVudCgpOwotICAgIHdoaWxlICh2YWx1ZSkg
ewotICAgICAgICBpZiAodmFsdWUtPnVuaXQgIT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19VUkkp
Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgUmVmUHRyPFdlYktpdENTU1No
YWRlclZhbHVlPiBzaGFkZXJWYWx1ZSA9IHBhcnNlRmlsdGVyUnVsZVNyY1VyaUFuZEZvcm1hdCht
X3ZhbHVlTGlzdC5nZXQoKSk7Ci0gICAgICAgIGlmICghc2hhZGVyVmFsdWUpCi0gICAgICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIHNyY0xpc3QtPmFwcGVuZChzaGFkZXJWYWx1ZS5yZWxl
YXNlKCkpOwotCi0gICAgICAgIGlmICghYWNjZXB0Q29tbWFPcGVyYXRvcihtX3ZhbHVlTGlzdC5n
ZXQoKSkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgdmFsdWUgPSBtX3Zh
bHVlTGlzdC0+Y3VycmVudCgpOwotICAgIH0KLQotICAgIGlmICghc3JjTGlzdC0+bGVuZ3RoKCkp
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGFkZFByb3BlcnR5KENTU1Byb3BlcnR5U3Jj
LCBzcmNMaXN0LnJlbGVhc2UoKSwgbV9pbXBvcnRhbnQpOwotICAgIHJldHVybiB0cnVlOwotfQot
Ci1ib29sIENTU1BhcnNlcjo6cGFyc2VGaWx0ZXJSdWxlTWl4KCkKLXsKLSAgICBpZiAobV92YWx1
ZUxpc3QtPnNpemUoKSA+IDIpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIFJlZlB0cjxD
U1NWYWx1ZUxpc3Q+IG1peExpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVk
KCk7Ci0KLSAgICBib29sIGhhc0JsZW5kTW9kZSA9IGZhbHNlOwotICAgIGJvb2wgaGFzQWxwaGFD
b21wb3NpdGluZyA9IGZhbHNlOwotICAgIENTU1BhcnNlclZhbHVlKiB2YWx1ZSA9IG1fdmFsdWVM
aXN0LT5jdXJyZW50KCk7Ci0gICAgd2hpbGUgKHZhbHVlKSB7Ci0gICAgICAgIFJlZlB0cjxDU1NW
YWx1ZT4gbWl4VmFsdWU7Ci0gICAgICAgIGlmICghaGFzQmxlbmRNb2RlICYmIGlzQmxlbmRNb2Rl
KHZhbHVlLT5pZCkpIHsKLSAgICAgICAgICAgIGhhc0JsZW5kTW9kZSA9IHRydWU7Ci0gICAgICAg
ICAgICBtaXhWYWx1ZSA9IGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZSh2YWx1
ZS0+aWQpOwotICAgICAgICB9IGVsc2UgaWYgKCFoYXNBbHBoYUNvbXBvc2l0aW5nICYmIGlzQ29t
cG9zaXRlT3BlcmF0b3IodmFsdWUtPmlkKSkgewotICAgICAgICAgICAgaGFzQWxwaGFDb21wb3Np
dGluZyA9IHRydWU7Ci0gICAgICAgICAgICBtaXhWYWx1ZSA9IGNzc1ZhbHVlUG9vbCgpLmNyZWF0
ZUlkZW50aWZpZXJWYWx1ZSh2YWx1ZS0+aWQpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKCFt
aXhWYWx1ZSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgICAgICBtaXhMaXN0LT5h
cHBlbmQobWl4VmFsdWUucmVsZWFzZSgpKTsKLSAgICAgICAgdmFsdWUgPSBtX3ZhbHVlTGlzdC0+
bmV4dCgpOwotICAgIH0KLQotICAgIGFkZFByb3BlcnR5KENTU1Byb3BlcnR5TWl4LCBtaXhMaXN0
LnJlbGVhc2UoKSwgbV9pbXBvcnRhbnQpOwotICAgIHJldHVybiB0cnVlOwotfQotCi1ib29sIENT
U1BhcnNlcjo6cGFyc2VHZW9tZXRyeShDU1NQcm9wZXJ0eUlEIHByb3BJZCwgQ1NTUGFyc2VyVmFs
dWUqIHZhbHVlLCBib29sIGltcG9ydGFudCkKLXsKLSAgICBBU1NFUlQocHJvcElkID09IENTU1By
b3BlcnR5R2VvbWV0cnkpOwotCi0gICAgLy8gPGdlb21ldHJ5LXNoYXBlPiA9IGdyaWQoPGludGVn
ZXI+ezEsMn0gfHwgWyBkZXRhY2hlZCB8IGF0dGFjaGVkIF0/KQotICAgIGlmICh2YWx1ZS0+dW5p
dCAhPSBDU1NQYXJzZXJWYWx1ZTo6RnVuY3Rpb24gfHwgIWVxdWFsSWdub3JpbmdDYXNlKHZhbHVl
LT5mdW5jdGlvbi0+bmFtZSwgImdyaWQoIikpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAg
IEFTU0VSVCh2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MpOwotCi0gICAgLy8gZ3JpZCgpIGZ1bmN0aW9u
IHNob3VsZCBoYXZlIGZyb20gMSB0byAzIGFyZ3VtZW50cy4KLSAgICB1bnNpZ25lZCBzaXplID0g
dmFsdWUtPmZ1bmN0aW9uLT5hcmdzLT5zaXplKCk7Ci0gICAgaWYgKCFzaXplIHx8IHNpemUgPiAz
KQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBDU1NQYXJzZXJWYWx1ZUxpc3QqIGdyaWRQ
YXJzZXJWYWx1ZUxpc3QgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0gICAgQ1NTUGFy
c2VyVmFsdWUqIGdyaWRQYXJzZXJWYWx1ZSA9IGdyaWRQYXJzZXJWYWx1ZUxpc3QtPmN1cnJlbnQo
KTsKLSAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBnZW9tZXRyeUxpc3QgPSBDU1NWYWx1ZUxpc3Q6
OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0KLSAgICBib29sIGhhc0RpbWVuc2lvbnMgPSBmYWxz
ZTsKLSAgICBib29sIGhhc0Nvbm5lY3Rpdml0eSA9IGZhbHNlOwotCi0gICAgd2hpbGUgKGdyaWRQ
YXJzZXJWYWx1ZSkgewotICAgICAgICBpZiAoaGFzRGltZW5zaW9ucyAmJiBoYXNDb25uZWN0aXZp
dHkpIHsKLSAgICAgICAgICAgIGdlb21ldHJ5TGlzdC5yZWxlYXNlKCk7Ci0gICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoZ3JpZFBhcnNlclZhbHVlLT5p
ZCA9PSBDU1NWYWx1ZUF0dGFjaGVkIHx8IGdyaWRQYXJzZXJWYWx1ZS0+aWQgPT0gQ1NTVmFsdWVE
ZXRhY2hlZCkgewotICAgICAgICAgICAgaGFzQ29ubmVjdGl2aXR5ID0gdHJ1ZTsKLSAgICAgICAg
ICAgIGdlb21ldHJ5TGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJW
YWx1ZShncmlkUGFyc2VyVmFsdWUtPmlkKSk7Ci0gICAgICAgICAgICBncmlkUGFyc2VyVmFsdWUg
PSBncmlkUGFyc2VyVmFsdWVMaXN0LT5uZXh0KCk7Ci0gICAgICAgIH0gZWxzZSBpZiAoIWhhc0Rp
bWVuc2lvbnMgJiYgcGFyc2VHcmlkRGltZW5zaW9ucyhncmlkUGFyc2VyVmFsdWVMaXN0LCBnZW9t
ZXRyeUxpc3QpKSB7Ci0gICAgICAgICAgICBoYXNEaW1lbnNpb25zID0gdHJ1ZTsKLSAgICAgICAg
ICAgIGdyaWRQYXJzZXJWYWx1ZSA9IGdyaWRQYXJzZXJWYWx1ZUxpc3QtPmN1cnJlbnQoKTsKLSAg
ICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGdlb21ldHJ5TGlzdC5yZWxlYXNlKCk7Ci0gICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBhZGRQcm9wZXJ0
eShwcm9wSWQsIGdlb21ldHJ5TGlzdC5yZWxlYXNlKCksIGltcG9ydGFudCk7Ci0gICAgcmV0dXJu
IGhhc0RpbWVuc2lvbnM7Ci19Ci0KLWJvb2wgQ1NTUGFyc2VyOjpwYXJzZUdyaWREaW1lbnNpb25z
KENTU1BhcnNlclZhbHVlTGlzdCogYXJncywgUmVmUHRyPENTU1ZhbHVlTGlzdD4mIGdyaWRWYWx1
ZUxpc3QpCi17Ci0gICAgQVNTRVJUKGFyZ3MpOwotCi0gICAgLy8gVGhlcmUgbXVzdCBiZSBhdCBs
ZWFzdCBvbmUgdmFsaWQgbnVtZXJpYyB2YWx1ZS4KLSAgICBDU1NQYXJzZXJWYWx1ZSogYXJnID0g
YXJncy0+Y3VycmVudCgpOwotICAgIGlmICghYXJnIHx8ICF2YWxpZFVuaXQoYXJnLCBGUG9zaXRp
dmVJbnRlZ2VyKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgLy8gQSB2YWxpZCBudW1l
cmljIHZhbHVlIGlzIHBhcnNlZCBhbmQgdGhlbiB3ZSBtb3ZlIG9uLgotICAgIGdyaWRWYWx1ZUxp
c3QtPmFwcGVuZChjcmVhdGVQcmltaXRpdmVOdW1lcmljVmFsdWUoYXJnKSk7Ci0gICAgYXJnID0g
YXJncy0+bmV4dCgpOwotCi0gICAgLy8gSWYgdGhlIG5leHQgYXJndW1lbnQgaXMgbm90IG51bWVy
aWMsIHdlIGFyZSBkb25lIHBhcnNpbmcgdGhlIGdyaWQgZGltZW5zaW9ucy4KLSAgICBpZiAoIWFy
ZyB8fCAhdmFsaWRVbml0KGFyZywgRlBvc2l0aXZlSW50ZWdlcikpCi0gICAgICAgIHJldHVybiB0
cnVlOwotCi0gICAgLy8gQ29tbWl0IHRoZSBzZWNvbmQgbnVtZXJpYyB2YWx1ZSB3ZSBmb3VuZC4K
LSAgICBncmlkVmFsdWVMaXN0LT5hcHBlbmQoY3JlYXRlUHJpbWl0aXZlTnVtZXJpY1ZhbHVlKGFy
ZykpOwotICAgIGFyZ3MtPm5leHQoKTsKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotYm9vbCBDU1NQ
YXJzZXI6OnBhcnNlRmlsdGVyUnVsZVBhcmFtZXRlcnMoKQotewotICAgIFJlZlB0cjxDU1NWYWx1
ZUxpc3Q+IHBhcmFtc0xpc3QgPSBwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcnMobV92YWx1ZUxp
c3QuZ2V0KCkpOwotICAgIGlmICghcGFyYW1zTGlzdCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwot
Ci0gICAgYWRkUHJvcGVydHkoQ1NTUHJvcGVydHlQYXJhbWV0ZXJzLCBwYXJhbXNMaXN0LnJlbGVh
c2UoKSwgbV9pbXBvcnRhbnQpOwotICAgIHJldHVybiB0cnVlOwotfQotCi1QYXNzUmVmUHRyPFN0
eWxlUnVsZUJhc2U+IENTU1BhcnNlcjo6Y3JlYXRlRmlsdGVyUnVsZShjb25zdCBDU1NQYXJzZXJT
dHJpbmcmIGZpbHRlck5hbWUpCi17Ci0gICAgUmVmUHRyPFN0eWxlUnVsZUZpbHRlcj4gcnVsZSA9
IFN0eWxlUnVsZUZpbHRlcjo6Y3JlYXRlKGZpbHRlck5hbWUsIGNyZWF0ZVN0eWxlUHJvcGVydGll
cygpKTsKLSAgICBjbGVhclByb3BlcnRpZXMoKTsKLSAgICBwcm9jZXNzQW5kQWRkTmV3UnVsZVRv
U291cmNlVHJlZUlmTmVlZGVkKCk7Ci0gICAgcmV0dXJuIHJ1bGUucmVsZWFzZSgpOwotfQotCi0j
ZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCiBQYXNzUmVmUHRyPFdlYktpdENTU0ZpbHRl
clZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlQnVpbHRpbkZpbHRlckFyZ3VtZW50cyhDU1NQYXJzZXJW
YWx1ZUxpc3QqIGFyZ3MsIFdlYktpdENTU0ZpbHRlclZhbHVlOjpGaWx0ZXJPcGVyYXRpb25UeXBl
IGZpbHRlclR5cGUpCiB7CiAgICAgUmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBmaWx0ZXJW
YWx1ZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoZmlsdGVyVHlwZSk7CkBAIC05ODE5
LDE5ICs5MjA0LDYgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlRmlsdGVyKENTU1BhcnNlclZhbHVl
TGlzdCogdmFsdWVMaXN0LCBSZWZQdHI8Q1NTVmFsdWU+JiByZXMKICAgICAgICAgICAgIGlmIChm
aWx0ZXJUeXBlID09IFdlYktpdENTU0ZpbHRlclZhbHVlOjpVbmtub3duRmlsdGVyT3BlcmF0aW9u
KQogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSAgICAgICAgICAgIGlmIChmaWx0ZXJUeXBlID09IFdlYktpdENTU0ZpbHRlclZhbHVlOjpD
dXN0b21GaWx0ZXJPcGVyYXRpb24pIHsKLSAgICAgICAgICAgICAgICAvLyBNYWtlIHN1cmUgcGFy
c2luZyBmYWlscyBpZiBjdXN0b20gZmlsdGVycyBhcmUgZGlzYWJsZWQuCi0gICAgICAgICAgICAg
ICAgaWYgKCFtX2NvbnRleHQuaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKQotICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAg
UmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBmaWx0ZXJWYWx1ZSA9IHBhcnNlQ3VzdG9tRmls
dGVyRnVuY3Rpb24odmFsdWUpOwotICAgICAgICAgICAgICAgIGlmICghZmlsdGVyVmFsdWUpCi0g
ICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgICAgICBsaXN0LT5h
cHBlbmQoZmlsdGVyVmFsdWUucmVsZWFzZSgpKTsKLSAgICAgICAgICAgICAgICBjb250aW51ZTsK
LSAgICAgICAgICAgIH0KLSNlbmRpZgogICAgICAgICAgICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBh
cmdzID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdldCgpOwogICAgICAgICAgICAgaWYgKCFhcmdz
KQogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTExNDkwLDE2ICsxMDg2Miw4IEBA
IGlubGluZSB2b2lkIENTU1BhcnNlcjo6ZGV0ZWN0QXRUb2tlbihpbnQgbGVuZ3RoLCBib29sIGhh
c0VzY2FwZSkKICAgICAgICAgICAgICAgICByZXR1cm47CiAKICNpZiBFTkFCTEUoQ1NTX1JFR0lP
TlMpCi0gICAgICAgICAgICBpZiAoaXNBU0NJSUFscGhhQ2FzZWxlc3NFcXVhbChuYW1lWzE0XSwg
J24nKSAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAyLCAid2Via2l0LXJlZ2lvIikp
IHsKKyAgICAgICAgICAgIGlmIChpc0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFsKG5hbWVbMTRdLCAn
bicpICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobmFtZSArIDIsICJ3ZWJraXQtcmVnaW8iKSkK
ICAgICAgICAgICAgICAgICBtX3Rva2VuID0gV0VCS0lUX1JFR0lPTl9SVUxFX1NZTTsKLSAgICAg
ICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9Ci0jZW5kaWYKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgICAgICAgICBpZiAoaXNBU0NJSUFscGhhQ2FzZWxlc3NFcXVhbChuYW1l
WzE0XSwgJ3InKSAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAyLCAid2Via2l0LWZp
bHRlIikpIHsKLSAgICAgICAgICAgICAgICBtX3Rva2VuID0gV0VCS0lUX0ZJTFRFUl9SVUxFX1NZ
TTsKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9CiAjZW5kaWYKICAgICAg
ICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
ci5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCmluZGV4IDQ3YjA1ZTYuLmE2NjMx
Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgKQEAgLTY3LDEzICs2Nyw2IEBAIGNsYXNzIFN0eWxl
S2V5ZnJhbWU7CiBjbGFzcyBTdHlsZVNoZWV0Q29udGVudHM7CiBjbGFzcyBTdHlsZWRFbGVtZW50
OwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotY2xhc3MgV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlOwotY2xhc3MgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZTsKLWNsYXNzIFdlYktpdENT
U01peEZ1bmN0aW9uVmFsdWU7Ci1jbGFzcyBXZWJLaXRDU1NTaGFkZXJWYWx1ZTsKLSNlbmRpZgot
CiBjbGFzcyBDU1NQYXJzZXIgewogICAgIGZyaWVuZCBpbmxpbmUgaW50IGNzc3l5bGV4KHZvaWQq
LCBDU1NQYXJzZXIqKTsKIApAQCAtMjYwLDIyICsyNTMsNiBAQCBwdWJsaWM6CiAKICAgICBib29s
IHBhcnNlRmlsdGVyKENTU1BhcnNlclZhbHVlTGlzdCosIFJlZlB0cjxDU1NWYWx1ZT4mKTsKICAg
ICBQYXNzUmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBwYXJzZUJ1aWx0aW5GaWx0ZXJBcmd1
bWVudHMoQ1NTUGFyc2VyVmFsdWVMaXN0KiwgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkZpbHRlck9w
ZXJhdGlvblR5cGUpOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBQYXNzUmVmUHRyPFdl
YktpdENTU01hdEZ1bmN0aW9uVmFsdWU+IHBhcnNlTWF0VmFsdWUoQ1NTUGFyc2VyVmFsdWUqKTsK
LSAgICBQYXNzUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU+IHBhcnNlTWl4RnVuY3Rp
b24oQ1NTUGFyc2VyVmFsdWUqKTsKLSAgICBQYXNzUmVmUHRyPFdlYktpdENTU0FycmF5RnVuY3Rp
b25WYWx1ZT4gcGFyc2VDdXN0b21GaWx0ZXJBcnJheUZ1bmN0aW9uKENTU1BhcnNlclZhbHVlKik7
Ci0gICAgUGFzc1JlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcnNlQ3VzdG9tRmlsdGVyVHJhbnNmb3Jt
KENTU1BhcnNlclZhbHVlTGlzdCopOwotICAgIFBhc3NSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJz
ZUN1c3RvbUZpbHRlclBhcmFtZXRlcnMoQ1NTUGFyc2VyVmFsdWVMaXN0Kik7Ci0gICAgUGFzc1Jl
ZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gcGFyc2VDdXN0b21GaWx0ZXJGdW5jdGlvbldpdGhB
dFJ1bGVSZWZlcmVuY2VTeW50YXgoQ1NTUGFyc2VyVmFsdWUqKTsKLSAgICBQYXNzUmVmUHRyPFdl
YktpdENTU0ZpbHRlclZhbHVlPiBwYXJzZUN1c3RvbUZpbHRlckZ1bmN0aW9uV2l0aElubGluZVN5
bnRheChDU1NQYXJzZXJWYWx1ZSopOwotICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFs
dWU+IHBhcnNlQ3VzdG9tRmlsdGVyRnVuY3Rpb24oQ1NTUGFyc2VyVmFsdWUqKTsKLSAgICBib29s
IHBhcnNlRmlsdGVyUnVsZVNyYygpOwotICAgIGJvb2wgcGFyc2VGaWx0ZXJSdWxlTWl4KCk7Ci0g
ICAgYm9vbCBwYXJzZUdlb21ldHJ5KENTU1Byb3BlcnR5SUQsIENTU1BhcnNlclZhbHVlKiwgYm9v
bCk7Ci0gICAgYm9vbCBwYXJzZUdyaWREaW1lbnNpb25zKENTU1BhcnNlclZhbHVlTGlzdCosIFJl
ZlB0cjxDU1NWYWx1ZUxpc3Q+Jik7IAotICAgIGJvb2wgcGFyc2VGaWx0ZXJSdWxlUGFyYW1ldGVy
cygpOwotICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NTU2hhZGVyVmFsdWU+IHBhcnNlRmlsdGVyUnVs
ZVNyY1VyaUFuZEZvcm1hdChDU1NQYXJzZXJWYWx1ZUxpc3QqKTsKLSNlbmRpZgogI2VuZGlmCiAK
ICAgICBQYXNzUmVmUHRyPENTU1ZhbHVlPiBwYXJzZUNsaXBQYXRoKCk7CkBAIC0zMzgsOSArMzE1
LDYgQEAgcHVibGljOgogI2lmIEVOQUJMRShTSEFET1dfRE9NKQogICAgIFBhc3NSZWZQdHI8U3R5
bGVSdWxlQmFzZT4gY3JlYXRlSG9zdFJ1bGUoUnVsZUxpc3QqKTsKICNlbmRpZgotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBQYXNzUmVmUHRyPFN0eWxlUnVsZUJhc2U+IGNyZWF0ZUZpbHRl
clJ1bGUoY29uc3QgQ1NTUGFyc2VyU3RyaW5nJik7Ci0jZW5kaWYKIAogICAgIHZvaWQgc3RhcnRE
ZWNsYXJhdGlvbnNGb3JNYXJnaW5Cb3goKTsKICAgICB2b2lkIGVuZERlY2xhcmF0aW9uc0Zvck1h
cmdpbkJveCgpOwpAQCAtMzg5LDEwICszNjMsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBtX2xvZ0Vy
cm9yczsKICAgICBib29sIG1faWdub3JlRXJyb3JzSW5EZWNsYXJhdGlvbjsKIAotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBib29sIG1faW5GaWx0ZXJSdWxlOwotI2VuZGlmCi0KICAgICBB
dG9taWNTdHJpbmcgbV9kZWZhdWx0TmFtZXNwYWNlOwogCiAgICAgLy8gdG9rZW5pemVyIG1ldGhv
ZHMgYW5kIGRhdGEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJNb2Rl
LmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5oCmluZGV4IDY5N2E4MzUuLjAy
ZTA1MjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJNb2RlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlck1vZGUuaApAQCAtNjQsNyArNjQsNiBAQCBw
dWJsaWM6CiAgICAgU3RyaW5nIGNoYXJzZXQ7CiAgICAgQ1NTUGFyc2VyTW9kZSBtb2RlOwogICAg
IGJvb2wgaXNIVE1MRG9jdW1lbnQ7Ci0gICAgYm9vbCBpc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQ7
CiAgICAgYm9vbCBpc0NTU1N0aWNreVBvc2l0aW9uRW5hYmxlZDsKICAgICBib29sIGlzQ1NTUmVn
aW9uc0VuYWJsZWQ7CiAgICAgYm9vbCBpc0NTU0NvbXBvc2l0aW5nRW5hYmxlZDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KaW5kZXggOWRmZTFkNi4uMmM1ODA1MCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KQEAgLTEwOSw5ICsxMDksNiBAQCBjdXJz
b3IgW0luaGVyaXRlZF0KIGVtcHR5LWNlbGxzIFtJbmhlcml0ZWRdCiBmbG9hdAogZm9udC1zdHJl
dGNoCi0jaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpICYmIEVOQUJMRV9DU1NfU0hBREVS
UwotZ2VvbWV0cnkKLSNlbmRpZgogaGVpZ2h0CiAjaWYgZGVmaW5lZChFTkFCTEVfQ1NTX0lNQUdF
X09SSUVOVEFUSU9OKSAmJiBFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OCiBpbWFnZS1vcmll
bnRhdGlvbiBbSW5oZXJpdGVkXQpAQCAtMTM1LDEwICsxMzIsNiBAQCBtYXgtaGVpZ2h0CiBtYXgt
d2lkdGgKIG1pbi1oZWlnaHQKIG1pbi13aWR0aAotI2lmIGRlZmluZWQoRU5BQkxFX0NTU19TSEFE
RVJTKSAmJiBFTkFCTEVfQ1NTX1NIQURFUlMKLW1peAotcGFyYW1ldGVycwotI2VuZGlmCiBvYmpl
Y3QtZml0CiBvcGFjaXR5CiAvLyBIb25vciAtd2Via2l0LW9wYWNpdHkgYXMgYSBzeW5vbnltIGZv
ciBvcGFjaXR5LiBUaGlzIHdhcyB0aGUgb25seSBzeW50YXggdGhhdCB3b3JrZWQgaW4gU2FmYXJp
IDEuMSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eVNvdXJjZURh
dGEuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eVNvdXJjZURhdGEuaAppbmRleCBk
YTcxYmViLi5jOTk1YTAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVy
dHlTb3VyY2VEYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5U291cmNl
RGF0YS5oCkBAIC05Myw5ICs5Myw2IEBAIHN0cnVjdCBDU1NSdWxlU291cmNlRGF0YSA6IHB1Ymxp
YyBSZWZDb3VudGVkPENTU1J1bGVTb3VyY2VEYXRhPiB7CiAgICAgICAgIEhPU1RfUlVMRSwKICAg
ICAgICAgVklFV1BPUlRfUlVMRSwKICAgICAgICAgU1VQUE9SVFNfUlVMRSwKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0gICAgICAgIEZJTFRFUl9SVUxFCi0jZW5kaWYKICAgICB9OwogCiAgICAg
c3RhdGljIFBhc3NSZWZQdHI8Q1NTUnVsZVNvdXJjZURhdGE+IGNyZWF0ZShUeXBlIHR5cGUpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUnVsZS5oIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1J1bGUuaAppbmRleCA0YzdlYmRiLi5hODAzOTlkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUnVsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlLmgK
QEAgLTU5LDkgKzU5LDYgQEAgcHVibGljOgogI2lmIEVOQUJMRShDU1NfUkVHSU9OUykKICAgICAg
ICAgV0VCS0lUX1JFR0lPTl9SVUxFID0gMTYsCiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0gICAgICAgIFdFQktJVF9GSUxURVJfUlVMRSA9IDE3LAotI2VuZGlmCiAjaWYgRU5BQkxF
KFNIQURPV19ET00pCiAgICAgICAgIEhPU1RfUlVMRSA9IDEwMDEsCiAjZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NSdWxlLmlkbAppbmRleCBmNGQ0ZTZlLi41ODlmODk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUnVsZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGUuaWRs
CkBAIC00Niw5ICs0Niw2IEBACiAjaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1JFR0lPTlMpICYmIEVO
QUJMRV9DU1NfUkVHSU9OUwogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFdFQktJVF9SRUdJT05f
UlVMRSA9IDE2OwogI2VuZGlmCi0jaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpICYmIEVO
QUJMRV9DU1NfU0hBREVSUwotICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFdFQktJVF9GSUxURVJf
UlVMRSA9IDE3OwotI2VuZGlmCiAjaWYgZGVmaW5lZChFTkFCTEVfU0hBRE9XX0RPTSkgJiYgRU5B
QkxFX1NIQURPV19ET00KICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBIT1NUX1JVTEUgPSAxMDAx
OwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNwcAppbmRleCBkY2RlNzM2Li43NjBlOGQwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAKQEAgLTU0LDExICs1NCw3IEBACiAjaW5jbHVkZSAiQ1NT
VmFsdWVMaXN0LmgiCiAjaW5jbHVkZSAiU1ZHQ29sb3IuaCIKICNpbmNsdWRlICJTVkdQYWludC5o
IgotI2luY2x1ZGUgIldlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5oIgogI2luY2x1ZGUgIldl
YktpdENTU0ZpbHRlclZhbHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1
ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIKLSNpbmNsdWRlICJX
ZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIgogI2luY2x1ZGUgIldlYktpdENTU1RyYW5zZm9ybVZhbHVl
LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTIyMiwxNiArMjE4LDYgQEAgYm9vbCBDU1NW
YWx1ZTo6ZXF1YWxzKGNvbnN0IENTU1ZhbHVlJiBvdGhlcikgY29uc3QKICNpZiBFTkFCTEUoQ1NT
X0ZJTFRFUlMpCiAgICAgICAgIGNhc2UgV2ViS2l0Q1NTRmlsdGVyQ2xhc3M6CiAgICAgICAgICAg
ICByZXR1cm4gY29tcGFyZUNTU1ZhbHVlczxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4oKnRoaXMsIG90
aGVyKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGNhc2UgV2ViS2l0Q1NTQXJy
YXlGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgICAgICByZXR1cm4gY29tcGFyZUNTU1ZhbHVl
czxXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+KCp0aGlzLCBvdGhlcik7Ci0gICAgICAgIGNh
c2UgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAgICAgICAgICAgcmV0dXJuIGNv
bXBhcmVDU1NWYWx1ZXM8V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZT4oKnRoaXMsIG90aGVyKTsK
LSAgICAgICAgY2FzZSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgICAg
ICByZXR1cm4gY29tcGFyZUNTU1ZhbHVlczxXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlPigqdGhp
cywgb3RoZXIpOwotICAgICAgICBjYXNlIFdlYktpdENTU1NoYWRlckNsYXNzOgotICAgICAgICAg
ICAgcmV0dXJuIGNvbXBhcmVDU1NWYWx1ZXM8V2ViS2l0Q1NTU2hhZGVyVmFsdWU+KCp0aGlzLCBv
dGhlcik7Ci0jZW5kaWYKICNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAgICAgIGNhc2UgU1ZH
Q29sb3JDbGFzczoKQEAgLTMyMCwxNiArMzA2LDYgQEAgU3RyaW5nIENTU1ZhbHVlOjpjc3NUZXh0
KCkgY29uc3QKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAgICAgY2FzZSBXZWJLaXRDU1NGaWx0
ZXJDbGFzczoKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTRmlsdGVyVmFsdWUodGhpcyktPmN1
c3RvbUNTU1RleHQoKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBXZWJLaXRD
U1NBcnJheUZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTQXJy
YXlGdW5jdGlvblZhbHVlKHRoaXMpLT5jdXN0b21DU1NUZXh0KCk7Ci0gICAgY2FzZSBXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dlYktpdENTU01hdEZ1
bmN0aW9uVmFsdWUodGhpcyktPmN1c3RvbUNTU1RleHQoKTsKLSAgICBjYXNlIFdlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZSh0aGlzKS0+Y3VzdG9tQ1NTVGV4dCgpOwotICAgIGNhc2UgV2ViS2l0Q1NTU2hhZGVy
Q2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dlYktpdENTU1NoYWRlclZhbHVlKHRoaXMpLT5jdXN0
b21DU1NUZXh0KCk7Ci0jZW5kaWYKICNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAgY2FzZSBT
VkdDb2xvckNsYXNzOgpAQCAtNDM5LDIwICs0MTUsNiBAQCB2b2lkIENTU1ZhbHVlOjpkZXN0cm95
KCkKICAgICBjYXNlIFdlYktpdENTU0ZpbHRlckNsYXNzOgogICAgICAgICBkZWxldGUgdG9XZWJL
aXRDU1NGaWx0ZXJWYWx1ZSh0aGlzKTsKICAgICAgICAgcmV0dXJuOwotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICBjYXNlIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAg
ICAgICBkZWxldGUgdG9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUodGhpcyk7Ci0gICAgICAg
IHJldHVybjsKLSAgICBjYXNlIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAg
ICAgZGVsZXRlIHRvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSh0aGlzKTsKLSAgICAgICAgcmV0
dXJuOwotICAgIGNhc2UgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAgICAgICBk
ZWxldGUgdG9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKHRoaXMpOwotICAgICAgICByZXR1cm47
Ci0gICAgY2FzZSBXZWJLaXRDU1NTaGFkZXJDbGFzczoKLSAgICAgICAgZGVsZXRlIHRvV2ViS2l0
Q1NTU2hhZGVyVmFsdWUodGhpcyk7Ci0gICAgICAgIHJldHVybjsKLSNlbmRpZgogI2VuZGlmCiAj
aWYgRU5BQkxFKFNWRykKICAgICBjYXNlIFNWR0NvbG9yQ2xhc3M6CkBAIC00NzksMTQgKzQ0MSw2
IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENTU1ZhbHVlOjpjbG9uZUZvckNTU09NKCkgY29uc3QK
ICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAgICAgY2FzZSBXZWJLaXRDU1NGaWx0ZXJDbGFzczoK
ICAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTRmlsdGVyVmFsdWUodGhpcyktPmNsb25lRm9yQ1NT
T00oKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlKHRoaXMpLT5jbG9uZUZvckNTU09NKCk7Ci0gICAgY2FzZSBXZWJLaXRDU1NNYXRGdW5j
dGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUodGhpcyktPmNsb25lRm9yQ1NTT00oKTsKLSAgICBjYXNlIFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSh0
aGlzKS0+Y2xvbmVGb3JDU1NPTSgpOwotI2VuZGlmCiAjZW5kaWYKICAgICBjYXNlIFdlYktpdENT
U1RyYW5zZm9ybUNsYXNzOgogICAgICAgICByZXR1cm4gdG9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1
ZSh0aGlzKS0+Y2xvbmVGb3JDU1NPTSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAppbmRleCA2MDA1OWQ5
Li45NDJiNzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaApAQCAtOTYsMTIgKzk2LDYgQEAgcHVibGlj
OgogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICAgICBib29sIGlzRmlsdGVySW1hZ2VWYWx1ZSgp
IGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEZpbHRlckltYWdlQ2xhc3M7IH0KICAgICBi
b29sIGlzV2ViS2l0Q1NTRmlsdGVyVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9
PSBXZWJLaXRDU1NGaWx0ZXJDbGFzczsgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBi
b29sIGlzV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFz
c1R5cGUgPT0gV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlQ2xhc3M7IH0KLSAgICBib29sIGlz
V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVDbGFzczsgfQotICAgIGJvb2wgaXNXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gV2ViS2l0Q1NT
TWl4RnVuY3Rpb25WYWx1ZUNsYXNzOyB9Ci0gICAgYm9vbCBpc1dlYktpdENTU1NoYWRlclZhbHVl
KCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gV2ViS2l0Q1NTU2hhZGVyQ2xhc3M7IH0K
LSNlbmRpZgogI2VuZGlmIC8vIEVOQUJMRShDU1NfRklMVEVSUykKICAgICBib29sIGlzR3JpZFRl
bXBsYXRlVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBHcmlkVGVtcGxhdGVD
bGFzczsgfQogI2lmIEVOQUJMRShTVkcpCkBAIC0xNjcsOSArMTYxLDYgQEAgcHJvdGVjdGVkOgog
ICAgICAgICBVbmljb2RlUmFuZ2VDbGFzcywKICAgICAgICAgTGluZUJveENvbnRhaW5DbGFzcywK
ICAgICAgICAgQ2FsY3VsYXRpb25DbGFzcywKLSNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpICYmIEVO
QUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgV2ViS2l0Q1NTU2hhZGVyQ2xhc3MsCi0jZW5kaWYK
ICAgICAgICAgR3JpZFRlbXBsYXRlQ2xhc3MsCiAjaWYgRU5BQkxFKFNWRykKICAgICAgICAgU1ZH
Q29sb3JDbGFzcywKQEAgLTE4MywxMSArMTc0LDYgQEAgcHJvdGVjdGVkOgogI2VuZGlmCiAjaWYg
RU5BQkxFKENTU19GSUxURVJTKQogICAgICAgICBXZWJLaXRDU1NGaWx0ZXJDbGFzcywKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZUNs
YXNzLAotICAgICAgICBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlQ2xhc3MsCi0gICAgICAgIFdl
YktpdENTU01peEZ1bmN0aW9uVmFsdWVDbGFzcywKLSNlbmRpZgogI2VuZGlmCiAgICAgICAgIFdl
YktpdENTU1RyYW5zZm9ybUNsYXNzLAogICAgICAgICAvLyBEbyBub3QgYXBwZW5kIG5vbi1saXN0
IGNsYXNzIHR5cGVzIGhlcmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFs
dWVLZXl3b3Jkcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCmlu
ZGV4IDdhYjY4OWIuLmMyYWQ4MTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NW
YWx1ZUtleXdvcmRzLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRz
LmluCkBAIC0xMDEwLDE4ICsxMDEwLDYgQEAgYWxwaGFiZXRpYwogY29hcnNlCiBmaW5lCiAKLSNp
ZiAoZGVmaW5lZChFTkFCTEVfQ1NTX0ZJTFRFUlMpICYmIEVOQUJMRV9DU1NfRklMVEVSUykgfHwg
KGRlZmluZWQoRU5BQkxFX0NTU19DT01QT1NJVElORykgJiYgRU5BQkxFX0NTU19DT01QT1NJVElO
RykKLS8vIC13ZWJraXQtZmlsdGVyCi0jaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpICYm
IEVOQUJMRV9DU1NfU0hBREVSUwotLy8gdmFsdWVzIGZvciB0aGUgY3VzdG9tKCkgZnVuY3Rpb24K
LS8vIGJvcmRlci1ib3gKLS8vIHBhZGRpbmctYm94Ci0vLyBjb250ZW50LWJveAotYXR0YWNoZWQK
LWZpbHRlci1ib3gKLWRldGFjaGVkCi0jZW5kaWYgLy8gQ1NTX1NIQURFUlMKLSNlbmRpZiAvLyBD
U1NfRklMVEVSUwogLy8gYmxlbmQgbW9kZXMKIC8vIG5vcm1hbAogbXVsdGlwbHkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9TdHlsZVJlc29sdmVyLmNwcAppbmRleCAyY2ZjZTIyLi42MjgyNWI4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC0xNDEsMjQgKzE0MSw2IEBACiAjaW5jbHVkZSAi
U3R5bGVDYWNoZWRJbWFnZVNldC5oIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0
b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0YW50
cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oIgotI2luY2x1ZGUg
IkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRl
ci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmgiCi0jaW5jbHVkZSAiQ3Vz
dG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiU3R5bGVDYWNoZWRTaGFk
ZXIuaCIKLSNpbmNsdWRlICJTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5oIgotI2luY2x1ZGUgIlN0eWxlUGVuZGluZ1No
YWRlci5oIgotI2luY2x1ZGUgIlN0eWxlU2hhZGVyLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWl4
RnVuY3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU1NoYWRlclZhbHVlLmgiCi0jZW5k
aWYKLQogI2lmIEVOQUJMRShEQVNIQk9BUkRfU1VQUE9SVCkKICNpbmNsdWRlICJEYXNoYm9hcmRS
ZWdpb24uaCIKICNlbmRpZgpAQCAtMjU2LDkgKzIzOCw2IEBAIGlubGluZSB2b2lkIFN0eWxlUmVz
b2x2ZXI6OlN0YXRlOjpjbGVhcigpCiAgICAgbV9wYXJlbnROb2RlID0gbnVsbHB0cjsKICAgICBt
X3JlZ2lvbkZvclN0eWxpbmcgPSBudWxscHRyOwogICAgIG1fcGVuZGluZ0ltYWdlUHJvcGVydGll
cy5jbGVhcigpOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBtX2hhc1BlbmRpbmdTaGFk
ZXJzID0gZmFsc2U7Ci0jZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpICYmIEVOQUJMRShT
VkcpCiAgICAgbV9wZW5kaW5nU1ZHRG9jdW1lbnRzLmNsZWFyKCk7CiAjZW5kaWYKQEAgLTMxMDcs
MTAgKzMwODYsNiBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6OmFwcGx5UHJvcGVydHkoQ1NTUHJvcGVy
dHlJRCBpZCwgQ1NTVmFsdWUqIHZhbHVlKQogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRXcmFw
RmxvdzoKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0V3JhcFRocm91Z2g6CiAjZW5kaWYKLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBDU1NQcm9wZXJ0eU1peDoKLSAgICBjYXNl
IENTU1Byb3BlcnR5UGFyYW1ldGVyczoKLSNlbmRpZgogICAgIGNhc2UgQ1NTUHJvcGVydHlXaGl0
ZVNwYWNlOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXaWRvd3M6CiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVdpZHRoOgpAQCAtMzQwMiwxMCArMzM3Nyw2IEBAIHN0YXRpYyBGaWx0ZXJPcGVyYXRpb246Ok9w
ZXJhdGlvblR5cGUgZmlsdGVyT3BlcmF0aW9uRm9yVHlwZShXZWJLaXRDU1NGaWx0ZXJWYWx1CiAg
ICAgICAgIHJldHVybiBGaWx0ZXJPcGVyYXRpb246OkJMVVI7CiAgICAgY2FzZSBXZWJLaXRDU1NG
aWx0ZXJWYWx1ZTo6RHJvcFNoYWRvd0ZpbHRlck9wZXJhdGlvbjoKICAgICAgICAgcmV0dXJuIEZp
bHRlck9wZXJhdGlvbjo6RFJPUF9TSEFET1c7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
IGNhc2UgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkN1c3RvbUZpbHRlck9wZXJhdGlvbjoKLSAgICAg
ICAgcmV0dXJuIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOwotI2VuZGlmCiAgICAgY2FzZSBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZTo6VW5rbm93bkZpbHRlck9wZXJhdGlvbjoKICAgICAgICAgcmV0dXJu
IEZpbHRlck9wZXJhdGlvbjo6Tk9ORTsKICAgICB9CkBAIC0zNDMxLDM0MCArMzQwMiw2IEBAIHZv
aWQgU3R5bGVSZXNvbHZlcjo6bG9hZFBlbmRpbmdTVkdEb2N1bWVudHMoKQogfQogI2VuZGlmCiAK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi1TdHlsZVNoYWRlciogU3R5bGVSZXNvbHZlcjo6c3R5
bGVTaGFkZXIoQ1NTVmFsdWUqIHZhbHVlKQotewotICAgIGlmICh2YWx1ZS0+aXNXZWJLaXRDU1NT
aGFkZXJWYWx1ZSgpKQotICAgICAgICByZXR1cm4gY2FjaGVkT3JQZW5kaW5nU3R5bGVTaGFkZXJG
cm9tVmFsdWUodG9XZWJLaXRDU1NTaGFkZXJWYWx1ZSh2YWx1ZSkpOwotICAgIHJldHVybiAwOwot
fQotCi1TdHlsZVNoYWRlciogU3R5bGVSZXNvbHZlcjo6Y2FjaGVkT3JQZW5kaW5nU3R5bGVTaGFk
ZXJGcm9tVmFsdWUoV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIHZhbHVlKQotewotICAgIFN0eWxlU2hh
ZGVyKiBzaGFkZXIgPSB2YWx1ZS0+Y2FjaGVkT3JQZW5kaW5nU2hhZGVyKCk7Ci0gICAgaWYgKHNo
YWRlciAmJiBzaGFkZXItPmlzUGVuZGluZ1NoYWRlcigpKQotICAgICAgICBtX3N0YXRlLnNldEhh
c1BlbmRpbmdTaGFkZXJzKHRydWUpOwotICAgIHJldHVybiBzaGFkZXI7Ci19Ci0KLVBhc3NSZWZQ
dHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gU3R5bGVSZXNvbHZlcjo6bG9va3VwQ3VzdG9tRmlsdGVy
UHJvZ3JhbShXZWJLaXRDU1NTaGFkZXJWYWx1ZSogdmVydGV4U2hhZGVyLCBXZWJLaXRDU1NTaGFk
ZXJWYWx1ZSogZnJhZ21lbnRTaGFkZXIsIAotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHBy
b2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG1peFNldHRp
bmdzLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLXsKLSAgICBDYWNoZWRSZXNvdXJj
ZUxvYWRlciogY2FjaGVkUmVzb3VyY2VMb2FkZXIgPSBtX3N0YXRlLmRvY3VtZW50KCkuY2FjaGVk
UmVzb3VyY2VMb2FkZXIoKTsKLSAgICBVUkwgdmVydGV4U2hhZGVyVVJMID0gdmVydGV4U2hhZGVy
ID8gdmVydGV4U2hhZGVyLT5jb21wbGV0ZVVSTChjYWNoZWRSZXNvdXJjZUxvYWRlcikgOiBVUkwo
KTsKLSAgICBVUkwgZnJhZ21lbnRTaGFkZXJVUkwgPSBmcmFnbWVudFNoYWRlciA/IGZyYWdtZW50
U2hhZGVyLT5jb21wbGV0ZVVSTChjYWNoZWRSZXNvdXJjZUxvYWRlcikgOiBVUkwoKTsKLSAgICBS
ZWZQdHI8U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtPiBwcm9ncmFtOwotICAgIGlmIChtX2N1c3Rv
bUZpbHRlclByb2dyYW1DYWNoZSkKLSAgICAgICAgcHJvZ3JhbSA9IG1fY3VzdG9tRmlsdGVyUHJv
Z3JhbUNhY2hlLT5sb29rdXAoQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8odmVydGV4U2hhZGVyVVJM
LCBmcmFnbWVudFNoYWRlclVSTCwgcHJvZ3JhbVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSkp
OwotICAgIGlmICghcHJvZ3JhbSkgewotICAgICAgICAvLyBDcmVhdGUgYSBuZXcgU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtIHRoYXQgd2lsbCBiZSByZXNvbHZlZCBkdXJpbmcgdGhlIGxvYWRQZW5k
aW5nU2hhZGVycyBhbmQgYWRkZWQgdG8gdGhlIGNhY2hlLgotICAgICAgICBwcm9ncmFtID0gU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtOjpjcmVhdGUodmVydGV4U2hhZGVyVVJMLCB2ZXJ0ZXhTaGFk
ZXIgPyBzdHlsZVNoYWRlcih2ZXJ0ZXhTaGFkZXIpIDogMCwgCi0gICAgICAgICAgICBmcmFnbWVu
dFNoYWRlclVSTCwgZnJhZ21lbnRTaGFkZXIgPyBzdHlsZVNoYWRlcihmcmFnbWVudFNoYWRlcikg
OiAwLCBwcm9ncmFtVHlwZSwgbWl4U2V0dGluZ3MsIG1lc2hUeXBlKTsKLSAgICB9Ci0gICAgcmV0
dXJuIHByb2dyYW0ucmVsZWFzZSgpOwotfQotCi12b2lkIFN0eWxlUmVzb2x2ZXI6OmxvYWRQZW5k
aW5nU2hhZGVycygpCi17Ci0gICAgLy8gRklYTUU6IFdlIHNob3VsZG4ndCBoYXZlIHRvIGNoZWNr
IHRoYXQgc3R5bGUgaXMgbm9uLW51bGwuIFRoaXMgaXMgYSBzcGVjdWxhdGl2ZSBmaXggZm9yOgot
ICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTc2NjUKLSAg
ICBpZiAoIW1fc3RhdGUuaGFzUGVuZGluZ1NoYWRlcnMoKSB8fCAhbV9zdGF0ZS5zdHlsZSgpIHx8
ICFtX3N0YXRlLnN0eWxlKCktPmhhc0ZpbHRlcigpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBD
YWNoZWRSZXNvdXJjZUxvYWRlciogY2FjaGVkUmVzb3VyY2VMb2FkZXIgPSBtX3N0YXRlLmRvY3Vt
ZW50KCkuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKTsKLQotICAgIFZlY3RvcjxSZWZQdHI8RmlsdGVy
T3BlcmF0aW9uPj4mIGZpbHRlck9wZXJhdGlvbnMgPSBtX3N0YXRlLnN0eWxlKCktPm11dGFibGVG
aWx0ZXIoKS5vcGVyYXRpb25zKCk7Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGZpbHRl
ck9wZXJhdGlvbnMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgUmVmUHRyPEZpbHRlck9wZXJhdGlv
bj4gZmlsdGVyT3BlcmF0aW9uID0gZmlsdGVyT3BlcmF0aW9ucy5hdChpKTsKLSAgICAgICAgaWYg
KGZpbHRlck9wZXJhdGlvbi0+dHlwZSgpID09IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NKSB7Ci0g
ICAgICAgICAgICBDdXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbUZpbHRlciA9IHN0YXRpY19j
YXN0PEN1c3RvbUZpbHRlck9wZXJhdGlvbio+KGZpbHRlck9wZXJhdGlvbi5nZXQoKSk7Ci0gICAg
ICAgICAgICBBU1NFUlQoY3VzdG9tRmlsdGVyLT5wcm9ncmFtKCkpOwotICAgICAgICAgICAgU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtKiBwcm9ncmFtID0gc3RhdGljX2Nhc3Q8U3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtKj4oY3VzdG9tRmlsdGVyLT5wcm9ncmFtKCkpOwotICAgICAgICAgICAgLy8g
Tm90ZSB0aGF0IHRoZSBTdHlsZVBlbmRpbmdTaGFkZXJzIGNvdWxkIGJlIGFscmVhZHkgcmVzb2x2
ZWQgdG8gU3R5bGVDYWNoZWRTaGFkZXJzLiBUaGF0J3MgYmVjYXVzZSB0aGUgcnVsZSB3YXMgbWF0
Y2hlZCBiZWZvcmUuCi0gICAgICAgICAgICAvLyBIb3dldmVyLCB0aGUgU3R5bGVDdXN0b21GaWx0
ZXJQcm9ncmFtIHRoYXQgd2FzIGluaXRpYWxseSBjcmVhdGVkIGNvdWxkIGhhdmUgYmVlbiByZW1v
dmVkIGZyb20gdGhlIGNhY2hlIGluIHRoZSBtZWFud2hpbGUsCi0gICAgICAgICAgICAvLyBtZWFu
aW5nIHRoYXQgd2UgZ2V0IGEgbmV3IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSBoZXJlIHRoYXQg
aXMgbm90IHlldCBpbiB0aGUgY2FjaGUsIGJ1dCBhbHJlYWR5IGhhcyBsb2FkZWQgU3R5bGVTaGFk
ZXJzLgotICAgICAgICAgICAgaWYgKCFwcm9ncmFtLT5oYXNQZW5kaW5nU2hhZGVycygpICYmIHBy
b2dyYW0tPmluQ2FjaGUoKSkKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAg
IGlmICghbV9jdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUpCi0gICAgICAgICAgICAgICAgbV9jdXN0
b21GaWx0ZXJQcm9ncmFtQ2FjaGUgPSBhZG9wdFB0cihuZXcgU3R5bGVDdXN0b21GaWx0ZXJQcm9n
cmFtQ2FjaGUoKSk7Ci0gICAgICAgICAgICBSZWZQdHI8U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
PiBzdHlsZVByb2dyYW0gPSBtX2N1c3RvbUZpbHRlclByb2dyYW1DYWNoZS0+bG9va3VwKHByb2dy
YW0pOwotICAgICAgICAgICAgaWYgKHN0eWxlUHJvZ3JhbS5nZXQoKSkKLSAgICAgICAgICAgICAg
ICBjdXN0b21GaWx0ZXItPnNldFByb2dyYW0oc3R5bGVQcm9ncmFtLnJlbGVhc2UoKSk7Ci0gICAg
ICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICBpZiAocHJvZ3JhbS0+dmVydGV4U2hhZGVy
KCkgJiYgcHJvZ3JhbS0+dmVydGV4U2hhZGVyKCktPmlzUGVuZGluZ1NoYWRlcigpKSB7Ci0gICAg
ICAgICAgICAgICAgICAgIFdlYktpdENTU1NoYWRlclZhbHVlKiBzaGFkZXJWYWx1ZSA9IHN0YXRp
Y19jYXN0PFN0eWxlUGVuZGluZ1NoYWRlcio+KHByb2dyYW0tPnZlcnRleFNoYWRlcigpKS0+Y3Nz
U2hhZGVyVmFsdWUoKTsKLSAgICAgICAgICAgICAgICAgICAgcHJvZ3JhbS0+c2V0VmVydGV4U2hh
ZGVyKHNoYWRlclZhbHVlLT5jYWNoZWRTaGFkZXIoY2FjaGVkUmVzb3VyY2VMb2FkZXIpKTsKLSAg
ICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKHByb2dyYW0tPmZyYWdtZW50U2hh
ZGVyKCkgJiYgcHJvZ3JhbS0+ZnJhZ21lbnRTaGFkZXIoKS0+aXNQZW5kaW5nU2hhZGVyKCkpIHsK
LSAgICAgICAgICAgICAgICAgICAgV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIHNoYWRlclZhbHVlID0g
c3RhdGljX2Nhc3Q8U3R5bGVQZW5kaW5nU2hhZGVyKj4ocHJvZ3JhbS0+ZnJhZ21lbnRTaGFkZXIo
KSktPmNzc1NoYWRlclZhbHVlKCk7Ci0gICAgICAgICAgICAgICAgICAgIHByb2dyYW0tPnNldEZy
YWdtZW50U2hhZGVyKHNoYWRlclZhbHVlLT5jYWNoZWRTaGFkZXIoY2FjaGVkUmVzb3VyY2VMb2Fk
ZXIpKTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgbV9jdXN0b21GaWx0ZXJQ
cm9ncmFtQ2FjaGUtPmFkZChwcm9ncmFtKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAg
IH0KLSAgICBtX3N0YXRlLnNldEhhc1BlbmRpbmdTaGFkZXJzKGZhbHNlKTsKLX0KLQotc3RhdGlj
IGJvb2wgc29ydFBhcmFtZXRlcnNCeU5hbWVDb21wYXJhdG9yKGNvbnN0IFJlZlB0cjxDdXN0b21G
aWx0ZXJQYXJhbWV0ZXI+JiBhLCBjb25zdCBSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiYg
YikKLXsKLSAgICByZXR1cm4gY29kZVBvaW50Q29tcGFyZUxlc3NUaGFuKGEtPm5hbWUoKSwgYi0+
bmFtZSgpKTsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IFN0eWxlUmVz
b2x2ZXI6OnBhcnNlQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1l
LCBDU1NWYWx1ZUxpc3QqIHZhbHVlcywgYm9vbCBpc0FycmF5KQotewotICAgIFJlZlB0cjxDdXN0
b21GaWx0ZXJBcnJheVBhcmFtZXRlcj4gYXJyYXlQYXJhbWV0ZXIgPSBDdXN0b21GaWx0ZXJBcnJh
eVBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUsIGlzQXJyYXkgPyBDdXN0b21GaWx0ZXJBcnJheVBhcmFt
ZXRlcjo6QVJSQVkgOiBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcjo6TUFUUklYKTsKLSAgICBm
b3IgKHVuc2lnbmVkIGkgPSAwLCBsZW5ndGggPSB2YWx1ZXMtPmxlbmd0aCgpOyBpIDwgbGVuZ3Ro
OyArK2kpIHsKLSAgICAgICAgQ1NTVmFsdWUqIHZhbHVlID0gdmFsdWVzLT5pdGVtV2l0aG91dEJv
dW5kc0NoZWNrKGkpOwotICAgICAgICBpZiAoIXZhbHVlLT5pc1ByaW1pdGl2ZVZhbHVlKCkpCi0g
ICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1pdGl2
ZVZhbHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZSh2YWx1ZSk7Ci0gICAgICAgIGlmIChwcmltaXRp
dmVWYWx1ZS0+cHJpbWl0aXZlVHlwZSgpICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVS
KQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIGFycmF5UGFyYW1ldGVyLT5hZGRWYWx1
ZShwcmltaXRpdmVWYWx1ZS0+Z2V0RG91YmxlVmFsdWUoKSk7Ci0gICAgfQotICAgIHJldHVybiBh
cnJheVBhcmFtZXRlci5yZWxlYXNlKCk7Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFy
YW1ldGVyPiBTdHlsZVJlc29sdmVyOjpwYXJzZUN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKGNv
bnN0IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWVMaXN0KiB2YWx1ZXMpCi17Ci0gICAgQVNTRVJUKHZh
bHVlcy0+bGVuZ3RoKCkpOwotICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBmaXJzdFByaW1pdGl2ZVZh
bHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZSh2YWx1ZXMtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2so
MCkpOwotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcj4gY29sb3JQYXJhbWV0
ZXIgPSBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUpOwotICAgIGNvbG9y
UGFyYW1ldGVyLT5zZXRDb2xvcihDb2xvcihmaXJzdFByaW1pdGl2ZVZhbHVlLT5nZXRSR0JBMzJW
YWx1ZSgpKSk7Ci0gICAgcmV0dXJuIGNvbG9yUGFyYW1ldGVyLnJlbGVhc2UoKTsKLX0KLQotUGFz
c1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IFN0eWxlUmVzb2x2ZXI6OnBhcnNlQ3VzdG9t
RmlsdGVyTnVtYmVyUGFyYW1ldGVyKGNvbnN0IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWVMaXN0KiB2
YWx1ZXMpCi17Ci0gICAgUmVmUHRyPEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcj4gbnVtYmVy
UGFyYW1ldGVyID0gQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyOjpjcmVhdGUobmFtZSk7Ci0g
ICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHZhbHVlcy0+bGVuZ3RoKCk7ICsraSkgewotICAg
ICAgICBDU1NWYWx1ZSogdmFsdWUgPSB2YWx1ZXMtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soaSk7
Ci0gICAgICAgIGlmICghdmFsdWUtPmlzUHJpbWl0aXZlVmFsdWUoKSkKLSAgICAgICAgICAgIHJl
dHVybiAwOwotICAgICAgICBDU1NQcmltaXRpdmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUgPSB0b0NT
U1ByaW1pdGl2ZVZhbHVlKHZhbHVlKTsKLSAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5wcmlt
aXRpdmVUeXBlKCkgIT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpCi0gICAgICAgICAg
ICByZXR1cm4gMDsKLSAgICAgICAgbnVtYmVyUGFyYW1ldGVyLT5hZGRWYWx1ZShwcmltaXRpdmVW
YWx1ZS0+Z2V0RG91YmxlVmFsdWUoKSk7Ci0gICAgfQotICAgIHJldHVybiBudW1iZXJQYXJhbWV0
ZXIucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gU3R5
bGVSZXNvbHZlcjo6cGFyc2VDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIoY29uc3QgU3Ry
aW5nJiBuYW1lLCBDU1NWYWx1ZUxpc3QqIHZhbHVlcykKLXsKLSAgICBSZWZQdHI8Q3VzdG9tRmls
dGVyVHJhbnNmb3JtUGFyYW1ldGVyPiB0cmFuc2Zvcm1QYXJhbWV0ZXIgPSBDdXN0b21GaWx0ZXJU
cmFuc2Zvcm1QYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKTsKLSAgICBUcmFuc2Zvcm1PcGVyYXRpb25z
IG9wZXJhdGlvbnM7Ci0gICAgdHJhbnNmb3Jtc0ZvclZhbHVlKG1fc3RhdGUuc3R5bGUoKSwgbV9z
dGF0ZS5yb290RWxlbWVudFN0eWxlKCksIHZhbHVlcywgb3BlcmF0aW9ucyk7Ci0gICAgdHJhbnNm
b3JtUGFyYW1ldGVyLT5zZXRPcGVyYXRpb25zKG9wZXJhdGlvbnMpOwotICAgIHJldHVybiB0cmFu
c2Zvcm1QYXJhbWV0ZXIucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBh
cmFtZXRlcj4gU3R5bGVSZXNvbHZlcjo6cGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXIoY29uc3Qg
U3RyaW5nJiBuYW1lLCBDU1NWYWx1ZSogcGFyYW1ldGVyVmFsdWUpCi17Ci0gICAgLy8gRklYTUU6
IEltcGxlbWVudCBvdGhlciBwYXJhbWV0ZXJzIHR5cGVzIHBhcnNpbmcuCi0gICAgLy8gdGV4dHVy
ZXM6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTQ0MgotICAgIC8v
IG1hdDIsIG1hdDMsIG1hdDQ6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD03MTQ0NAotICAgIC8vIE51bWJlciBwYXJhbWV0ZXJzIGFyZSB3cmFwcGVkIGluc2lkZSBhIENT
U1ZhbHVlTGlzdCBhbmQgYWxsCi0gICAgLy8gdGhlIG90aGVyIGZ1bmN0aW9ucyB2YWx1ZXMgaW5o
ZXJpdCBmcm9tIENTU1ZhbHVlTGlzdC4KLSAgICBpZiAoIXBhcmFtZXRlclZhbHVlLT5pc1ZhbHVl
TGlzdCgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIENTU1ZhbHVlTGlzdCogdmFsdWVzID0g
dG9DU1NWYWx1ZUxpc3QocGFyYW1ldGVyVmFsdWUpOwotICAgIGlmICghdmFsdWVzLT5sZW5ndGgo
KSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBpZiAocGFyYW1ldGVyVmFsdWUtPmlzV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlKCkpCi0gICAgICAgIHJldHVybiBwYXJzZUN1c3RvbUZpbHRl
ckFycmF5UGFyYW1ldGVyKG5hbWUsIHZhbHVlcywgdHJ1ZSk7Ci0KLSAgICBpZiAocGFyYW1ldGVy
VmFsdWUtPmlzV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSgpKQotICAgICAgICByZXR1cm4gcGFy
c2VDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcihuYW1lLCB2YWx1ZXMsIGZhbHNlKTsKLQotICAg
IC8vIElmIHRoZSBmaXJzdCB2YWx1ZSBvZiB0aGUgbGlzdCBpcyBhIHRyYW5zZm9ybSBmdW5jdGlv
biwKLSAgICAvLyB0aGVuIHdlIGNvdWxkIHNhZmVseSBhc3N1bWUgdGhhdCBhbGwgdGhlIHJlbWFp
bmluZyBpdGVtcwotICAgIC8vIGFyZSB0cmFuc2Zvcm1zLiBwYXJzZUN1c3RvbUZpbHRlclRyYW5z
Zm9ybVBhcmFtZXRlciB3aWxsCi0gICAgLy8gcmV0dXJuIDAgaWYgdGhhdCBhc3N1bXB0aW9uIGlz
IGluY29ycmVjdC4KLSAgICBpZiAodmFsdWVzLT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDApLT5p
c1dlYktpdENTU1RyYW5zZm9ybVZhbHVlKCkpCi0gICAgICAgIHJldHVybiBwYXJzZUN1c3RvbUZp
bHRlclRyYW5zZm9ybVBhcmFtZXRlcihuYW1lLCB2YWx1ZXMpOwotCi0gICAgLy8gV2UgY2FuIG9u
bHkgaGF2ZSBhcnJheXMgb2YgY29sb3JzIG9yIG51bWJlcnMsIHNvIHVzZSB0aGUgZmlyc3QgdmFs
dWUgdG8gY2hvb3NlIGJldHdlZW4gdGhvc2UgdHdvLgotICAgIC8vIFdlIG5lZWQgdXAgdG8gNCB2
YWx1ZXMgKGFsbCBib29sZWFucyBvciBhbGwgbnVtYmVycykuCi0gICAgaWYgKCF2YWx1ZXMtPml0
ZW1XaXRob3V0Qm91bmRzQ2hlY2soMCktPmlzUHJpbWl0aXZlVmFsdWUoKSB8fCB2YWx1ZXMtPmxl
bmd0aCgpID4gNCkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgCi0gICAgQ1NTUHJpbWl0aXZlVmFs
dWUqIGZpcnN0UHJpbWl0aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2ZVZhbHVlKHZhbHVlcy0+aXRl
bVdpdGhvdXRCb3VuZHNDaGVjaygwKSk7Ci0gICAgaWYgKGZpcnN0UHJpbWl0aXZlVmFsdWUtPnBy
aW1pdGl2ZVR5cGUoKSA9PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikKLSAgICAgICAg
cmV0dXJuIHBhcnNlQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKG5hbWUsIHZhbHVlcyk7Ci0K
LSAgICBpZiAoZmlyc3RQcmltaXRpdmVWYWx1ZS0+cHJpbWl0aXZlVHlwZSgpID09IENTU1ByaW1p
dGl2ZVZhbHVlOjpDU1NfUkdCQ09MT1IpCi0gICAgICAgIHJldHVybiBwYXJzZUN1c3RvbUZpbHRl
ckNvbG9yUGFyYW1ldGVyKG5hbWUsIHZhbHVlcyk7Ci0KLSAgICByZXR1cm4gMDsKLX0KLQotYm9v
bCBTdHlsZVJlc29sdmVyOjpwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QoQ1NTVmFsdWUq
IHBhcmFtZXRlcnNWYWx1ZSwgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVyTGlz
dCkKLXsKLSAgICBIYXNoU2V0PFN0cmluZz4ga25vd25QYXJhbWV0ZXJOYW1lczsKLSAgICBDU1NW
YWx1ZUxpc3RJdGVyYXRvciBwYXJhbWV0ZXJJdGVyYXRvcihwYXJhbWV0ZXJzVmFsdWUpOwotICAg
IGZvciAoOyBwYXJhbWV0ZXJJdGVyYXRvci5oYXNNb3JlKCk7IHBhcmFtZXRlckl0ZXJhdG9yLmFk
dmFuY2UoKSkgewotICAgICAgICBpZiAoIXBhcmFtZXRlckl0ZXJhdG9yLnZhbHVlKCktPmlzVmFs
dWVMaXN0KCkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIENTU1ZhbHVlTGlz
dEl0ZXJhdG9yIGl0ZXJhdG9yKHBhcmFtZXRlckl0ZXJhdG9yLnZhbHVlKCkpOwotICAgICAgICBp
ZiAoIWl0ZXJhdG9yLmlzUHJpbWl0aXZlVmFsdWUoKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1pdGl2ZVZhbHVlID0gdG9DU1NQcmlt
aXRpdmVWYWx1ZShpdGVyYXRvci52YWx1ZSgpKTsKLSAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVl
LT5wcmltaXRpdmVUeXBlKCkgIT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19TVFJJTkcpCi0gICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIAotICAgICAgICBTdHJpbmcgbmFtZSA9IHBy
aW1pdGl2ZVZhbHVlLT5nZXRTdHJpbmdWYWx1ZSgpOwotICAgICAgICAvLyBEbyBub3QgYWxsb3cg
ZHVwbGljYXRlIHBhcmFtZXRlciBuYW1lcy4KLSAgICAgICAgaWYgKGtub3duUGFyYW1ldGVyTmFt
ZXMuY29udGFpbnMobmFtZSkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIGtu
b3duUGFyYW1ldGVyTmFtZXMuYWRkKG5hbWUpOwotICAgICAgICAKLSAgICAgICAgaXRlcmF0b3Iu
YWR2YW5jZSgpOwotICAgICAgICAKLSAgICAgICAgaWYgKCFpdGVyYXRvci5oYXNNb3JlKCkpCi0g
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIAotICAgICAgICBSZWZQdHI8Q3VzdG9t
RmlsdGVyUGFyYW1ldGVyPiBwYXJhbWV0ZXIgPSBwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcihu
YW1lLCBpdGVyYXRvci52YWx1ZSgpKTsKLSAgICAgICAgaWYgKCFwYXJhbWV0ZXIpCi0gICAgICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIHBhcmFtZXRlckxpc3QuYXBwZW5kKHBhcmFtZXRl
ci5yZWxlYXNlKCkpOwotICAgIH0KLSAgICAKLSAgICAvLyBNYWtlIHN1cmUgd2Ugc29ydCB0aGUg
cGFyYW1ldGVycyBiZWZvcmUgcGFzc2luZyB0aGVtIGRvd24gdG8gdGhlIEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi4KLSAgICBzdGQ6OnNvcnQocGFyYW1ldGVyTGlzdC5iZWdpbigpLCBwYXJhbWV0ZXJM
aXN0LmVuZCgpLCBzb3J0UGFyYW1ldGVyc0J5TmFtZUNvbXBhcmF0b3IpOwotICAgIAotICAgIHJl
dHVybiB0cnVlOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gU3R5bGVS
ZXNvbHZlcjo6Y3JlYXRlQ3VzdG9tRmlsdGVyT3BlcmF0aW9uV2l0aEF0UnVsZVJlZmVyZW5jZVN5
bnRheChXZWJLaXRDU1NGaWx0ZXJWYWx1ZSogZmlsdGVyVmFsdWUpCi17Ci0gICAgLy8gRklYTUU6
IEltcGxlbWVudCBzdHlsZSByZXNvbHV0aW9uIGZvciB0aGUgY3VzdG9tIGZpbHRlciBhdC1ydWxl
IHJlZmVyZW5jZSBzeW50YXguCi0gICAgVU5VU0VEX1BBUkFNKGZpbHRlclZhbHVlKTsKLSAgICBy
ZXR1cm4gMDsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJPcGVyYXRpb24+IFN0eWxlUmVz
b2x2ZXI6OmNyZWF0ZUN1c3RvbUZpbHRlck9wZXJhdGlvbldpdGhJbmxpbmVTeW50YXgoV2ViS2l0
Q1NTRmlsdGVyVmFsdWUqIGZpbHRlclZhbHVlKQotewotICAgIENTU1ZhbHVlKiBzaGFkZXJzVmFs
dWUgPSBmaWx0ZXJWYWx1ZS0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjaygwKTsKLSAgICBBU1NFUlRf
V0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTihzaGFkZXJzVmFsdWUtPmlzVmFsdWVMaXN0KCkpOwot
ICAgIENTU1ZhbHVlTGlzdCogc2hhZGVyc0xpc3QgPSB0b0NTU1ZhbHVlTGlzdChzaGFkZXJzVmFs
dWUpOwotCi0gICAgdW5zaWduZWQgc2hhZGVyc0xpc3RMZW5ndGggPSBzaGFkZXJzTGlzdC0+bGVu
Z3RoKCk7Ci0gICAgQVNTRVJUKHNoYWRlcnNMaXN0TGVuZ3RoKTsKLQotCi0gICAgV2ViS2l0Q1NT
U2hhZGVyVmFsdWUqIHZlcnRleFNoYWRlciA9IDA7Ci0gICAgV2ViS2l0Q1NTU2hhZGVyVmFsdWUq
IGZyYWdtZW50U2hhZGVyID0gMDsKLQotICAgIGlmIChzaGFkZXJzTGlzdC0+aXRlbVdpdGhvdXRC
b3VuZHNDaGVjaygwKS0+aXNXZWJLaXRDU1NTaGFkZXJWYWx1ZSgpKQotICAgICAgICB2ZXJ0ZXhT
aGFkZXIgPSB0b1dlYktpdENTU1NoYWRlclZhbHVlKHNoYWRlcnNMaXN0LT5pdGVtV2l0aG91dEJv
dW5kc0NoZWNrKDApKTsKLQotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBl
ID0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkU7Ci0gICAgQ3VzdG9tRmlsdGVy
UHJvZ3JhbU1peFNldHRpbmdzIG1peFNldHRpbmdzOwotCi0gICAgaWYgKHNoYWRlcnNMaXN0TGVu
Z3RoID4gMSkgewotICAgICAgICBDU1NWYWx1ZSogZnJhZ21lbnRTaGFkZXJPck1peEZ1bmN0aW9u
ID0gc2hhZGVyc0xpc3QtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMSk7Ci0gICAgICAgIGlmIChm
cmFnbWVudFNoYWRlck9yTWl4RnVuY3Rpb24tPmlzV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgp
KSB7Ci0gICAgICAgICAgICBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKiBtaXhGdW5jdGlvbiA9
IHRvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZShmcmFnbWVudFNoYWRlck9yTWl4RnVuY3Rpb24p
OwotICAgICAgICAgICAgQ1NTVmFsdWVMaXN0SXRlcmF0b3IgaXRlcmF0b3IobWl4RnVuY3Rpb24p
OwotCi0gICAgICAgICAgICBBU1NFUlQobWl4RnVuY3Rpb24tPmxlbmd0aCgpKTsKLSAgICAgICAg
ICAgIGlmIChpdGVyYXRvci52YWx1ZSgpLT5pc1dlYktpdENTU1NoYWRlclZhbHVlKCkpCi0gICAg
ICAgICAgICAgICAgZnJhZ21lbnRTaGFkZXIgPSB0b1dlYktpdENTU1NoYWRlclZhbHVlKGl0ZXJh
dG9yLnZhbHVlKCkpOwotCi0gICAgICAgICAgICBpdGVyYXRvci5hZHZhbmNlKCk7Ci0KLSAgICAg
ICAgICAgIEFTU0VSVChtaXhGdW5jdGlvbi0+bGVuZ3RoKCkgPD0gMyk7Ci0gICAgICAgICAgICB3
aGlsZSAoaXRlcmF0b3IuaGFzTW9yZSgpKSB7Ci0gICAgICAgICAgICAgICAgQ1NTUHJpbWl0aXZl
VmFsdWUqIHByaW1pdGl2ZVZhbHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZShpdGVyYXRvci52YWx1
ZSgpKTsKLSAgICAgICAgICAgICAgICBpZiAoQ1NTUGFyc2VyOjppc0JsZW5kTW9kZShwcmltaXRp
dmVWYWx1ZS0+Z2V0VmFsdWVJRCgpKSkKLSAgICAgICAgICAgICAgICAgICAgbWl4U2V0dGluZ3Mu
YmxlbmRNb2RlID0gKnByaW1pdGl2ZVZhbHVlOwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKENT
U1BhcnNlcjo6aXNDb21wb3NpdGVPcGVyYXRvcihwcmltaXRpdmVWYWx1ZS0+Z2V0VmFsdWVJRCgp
KSkKLSAgICAgICAgICAgICAgICAgICAgbWl4U2V0dGluZ3MuY29tcG9zaXRlT3BlcmF0b3IgPSAq
cHJpbWl0aXZlVmFsdWU7Ci0gICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgICAgICBpdGVyYXRvci5hZHZhbmNl
KCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBwcm9ncmFt
VHlwZSA9IFBST0dSQU1fVFlQRV9OT19FTEVNRU5UX1RFWFRVUkU7Ci0gICAgICAgICAgICBpZiAo
ZnJhZ21lbnRTaGFkZXJPck1peEZ1bmN0aW9uLT5pc1dlYktpdENTU1NoYWRlclZhbHVlKCkpCi0g
ICAgICAgICAgICAgICAgZnJhZ21lbnRTaGFkZXIgPSB0b1dlYktpdENTU1NoYWRlclZhbHVlKGZy
YWdtZW50U2hhZGVyT3JNaXhGdW5jdGlvbik7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAo
IXZlcnRleFNoYWRlciAmJiAhZnJhZ21lbnRTaGFkZXIpCi0gICAgICAgIHJldHVybiAwOwotCi0g
ICAgdW5zaWduZWQgbWVzaFJvd3MgPSAxOwotICAgIHVuc2lnbmVkIG1lc2hDb2x1bW5zID0gMTsK
LSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSA9IE1lc2hUeXBlQXR0YWNoZWQ7Ci0g
ICAgCi0gICAgQ1NTVmFsdWUqIHBhcmFtZXRlcnNWYWx1ZSA9IDA7Ci0gICAgCi0gICAgaWYgKGZp
bHRlclZhbHVlLT5sZW5ndGgoKSA+IDEpIHsKLSAgICAgICAgQ1NTVmFsdWVMaXN0SXRlcmF0b3Ig
aXRlcmF0b3IoZmlsdGVyVmFsdWUtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMSkpOwotICAgICAg
ICAKLSAgICAgICAgLy8gVGhlIHNlY29uZCB2YWx1ZSBtaWdodCBiZSB0aGUgbWVzaCBib3ggb3Ig
dGhlIGxpc3Qgb2YgcGFyYW1ldGVyczoKLSAgICAgICAgLy8gSWYgaXQgc3RhcnRzIHdpdGggYSBu
dW1iZXIgb3IgYW55IG9mIHRoZSBtZXNoLWJveCBpZGVudGlmaWVycyBpdCBpcyAKLSAgICAgICAg
Ly8gdGhlIG1lc2gtYm94IGxpc3QsIGlmIG5vdCBpdCBtZWFucyBpdCBpcyB0aGUgcGFyYW1ldGVy
cyBsaXN0LgotCi0gICAgICAgIGlmIChpdGVyYXRvci5oYXNNb3JlKCkgJiYgaXRlcmF0b3IuaXNQ
cmltaXRpdmVWYWx1ZSgpKSB7Ci0gICAgICAgICAgICBDU1NQcmltaXRpdmVWYWx1ZSogcHJpbWl0
aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2ZVZhbHVlKGl0ZXJhdG9yLnZhbHVlKCkpOwotICAgICAg
ICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5pc051bWJlcigpKSB7Ci0gICAgICAgICAgICAgICAg
Ly8gSWYgb25seSBvbmUgaW50ZWdlciB2YWx1ZSBpcyBzcGVjaWZpZWQsIGl0IHdpbGwgc2V0IGJv
dGgKLSAgICAgICAgICAgICAgICAvLyB0aGUgcm93cyBhbmQgdGhlIGNvbHVtbnMuCi0gICAgICAg
ICAgICAgICAgbWVzaENvbHVtbnMgPSBtZXNoUm93cyA9IHByaW1pdGl2ZVZhbHVlLT5nZXRJbnRW
YWx1ZSgpOwotICAgICAgICAgICAgICAgIGl0ZXJhdG9yLmFkdmFuY2UoKTsKLSAgICAgICAgICAg
ICAgICAKLSAgICAgICAgICAgICAgICAvLyBUcnkgdG8gbWF0Y2ggYW5vdGhlciBudW1iZXIgZm9y
IHRoZSByb3dzLgotICAgICAgICAgICAgICAgIGlmIChpdGVyYXRvci5oYXNNb3JlKCkgJiYgaXRl
cmF0b3IuaXNQcmltaXRpdmVWYWx1ZSgpKSB7Ci0gICAgICAgICAgICAgICAgICAgIENTU1ByaW1p
dGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUoaXRlcmF0b3Iu
dmFsdWUoKSk7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChwcmltaXRpdmVWYWx1ZS0+aXNOdW1i
ZXIoKSkgewotICAgICAgICAgICAgICAgICAgICAgICAgbWVzaFJvd3MgPSBwcmltaXRpdmVWYWx1
ZS0+Z2V0SW50VmFsdWUoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGl0ZXJhdG9yLmFkdmFu
Y2UoKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIH0KLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgaWYgKGl0ZXJhdG9yLmhhc01vcmUo
KSAmJiBpdGVyYXRvci5pc1ByaW1pdGl2ZVZhbHVlKCkpIHsKLSAgICAgICAgICAgIENTU1ByaW1p
dGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUoaXRlcmF0b3Iu
dmFsdWUoKSk7Ci0gICAgICAgICAgICBpZiAocHJpbWl0aXZlVmFsdWUtPmdldFZhbHVlSUQoKSA9
PSBDU1NWYWx1ZURldGFjaGVkKSB7Ci0gICAgICAgICAgICAgICAgbWVzaFR5cGUgPSBNZXNoVHlw
ZURldGFjaGVkOwotICAgICAgICAgICAgICAgIGl0ZXJhdG9yLmFkdmFuY2UoKTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgaWYgKCFpdGVyYXRvci5pbmRleCgp
KSB7Ci0gICAgICAgICAgICAvLyBJZiBubyB2YWx1ZSB3YXMgY29uc3VtZWQgZnJvbSB0aGUgbWVz
aCB2YWx1ZSwgdGhlbiBpdCBpcyBqdXN0IGEgcGFyYW1ldGVyIGxpc3QsIG1lYW5pbmcgdGhhdCB3
ZSBlbmQgdXAKLSAgICAgICAgICAgIC8vIGhhdmluZyBqdXN0IHR3byBDU1NMaXN0VmFsdWVzOiBs
aXN0IG9mIHNoYWRlcnMgYW5kIGxpc3Qgb2YgcGFyYW1ldGVycy4KLSAgICAgICAgICAgIEFTU0VS
VChmaWx0ZXJWYWx1ZS0+bGVuZ3RoKCkgPT0gMik7Ci0gICAgICAgICAgICBwYXJhbWV0ZXJzVmFs
dWUgPSBmaWx0ZXJWYWx1ZS0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjaygxKTsKLSAgICAgICAgfQot
ICAgIH0KLSAgICAKLSAgICBpZiAoZmlsdGVyVmFsdWUtPmxlbmd0aCgpID4gMiAmJiAhcGFyYW1l
dGVyc1ZhbHVlKQotICAgICAgICBwYXJhbWV0ZXJzVmFsdWUgPSBmaWx0ZXJWYWx1ZS0+aXRlbVdp
dGhvdXRCb3VuZHNDaGVjaygyKTsKLSAgICAKLSAgICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0
IHBhcmFtZXRlckxpc3Q7Ci0gICAgaWYgKHBhcmFtZXRlcnNWYWx1ZSAmJiAhcGFyc2VDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJMaXN0KHBhcmFtZXRlcnNWYWx1ZSwgcGFyYW1ldGVyTGlzdCkpCi0gICAg
ICAgIHJldHVybiAwOwotCi0gICAgUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IHByb2dyYW0g
PSBsb29rdXBDdXN0b21GaWx0ZXJQcm9ncmFtKHZlcnRleFNoYWRlciwgZnJhZ21lbnRTaGFkZXIs
IHByb2dyYW1UeXBlLCBtaXhTZXR0aW5ncywgbWVzaFR5cGUpOwotICAgIHJldHVybiBDdXN0b21G
aWx0ZXJPcGVyYXRpb246OmNyZWF0ZShwcm9ncmFtLnJlbGVhc2UoKSwgcGFyYW1ldGVyTGlzdCwg
bWVzaFJvd3MsIG1lc2hDb2x1bW5zKTsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJPcGVy
YXRpb24+IFN0eWxlUmVzb2x2ZXI6OmNyZWF0ZUN1c3RvbUZpbHRlck9wZXJhdGlvbihXZWJLaXRD
U1NGaWx0ZXJWYWx1ZSogZmlsdGVyVmFsdWUpCi17Ci0gICAgQVNTRVJUKGZpbHRlclZhbHVlLT5s
ZW5ndGgoKSk7Ci0gICAgYm9vbCBpc0F0UnVsZVJlZmVyZW5jZVN5bnRheCA9IGZpbHRlclZhbHVl
LT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDApLT5pc1ByaW1pdGl2ZVZhbHVlKCk7Ci0gICAgcmV0
dXJuIGlzQXRSdWxlUmVmZXJlbmNlU3ludGF4ID8gY3JlYXRlQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
V2l0aEF0UnVsZVJlZmVyZW5jZVN5bnRheChmaWx0ZXJWYWx1ZSkgOiBjcmVhdGVDdXN0b21GaWx0
ZXJPcGVyYXRpb25XaXRoSW5saW5lU3ludGF4KGZpbHRlclZhbHVlKTsKLX0KLQotI2VuZGlmCi0K
IGJvb2wgU3R5bGVSZXNvbHZlcjo6Y3JlYXRlRmlsdGVyT3BlcmF0aW9ucyhDU1NWYWx1ZSogaW5W
YWx1ZSwgRmlsdGVyT3BlcmF0aW9ucyYgb3V0T3BlcmF0aW9ucykKIHsKICAgICBTdGF0ZSYgc3Rh
dGUgPSBtX3N0YXRlOwpAQCAtMzc5NCwyMSArMzQzMSw2IEBAIGJvb2wgU3R5bGVSZXNvbHZlcjo6
Y3JlYXRlRmlsdGVyT3BlcmF0aW9ucyhDU1NWYWx1ZSogaW5WYWx1ZSwgRmlsdGVyT3BlcmF0aW9u
cyYKICAgICAgICAgV2ViS2l0Q1NTRmlsdGVyVmFsdWUqIGZpbHRlclZhbHVlID0gdG9XZWJLaXRD
U1NGaWx0ZXJWYWx1ZShpLnZhbHVlKCkpOwogICAgICAgICBGaWx0ZXJPcGVyYXRpb246Ok9wZXJh
dGlvblR5cGUgb3BlcmF0aW9uVHlwZSA9IGZpbHRlck9wZXJhdGlvbkZvclR5cGUoZmlsdGVyVmFs
dWUtPm9wZXJhdGlvblR5cGUoKSk7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAg
IGlmIChvcGVyYXRpb25UeXBlID09IEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RPTSkg
ewotICAgICAgICAgICAgLy8gVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIGlzIG5vdCBz
dXBwb3NlZCB0byBlbmQgdXAgaW4gdGhlIFJlbmRlclN0eWxlLgotICAgICAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQotICAgICAg
ICBpZiAob3BlcmF0aW9uVHlwZSA9PSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTSkgewotICAgICAg
ICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gb3BlcmF0aW9uID0gY3JlYXRlQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uKGZpbHRlclZhbHVlKTsKLSAgICAgICAgICAgIGlmICghb3BlcmF0
aW9uKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIAotICAgICAg
ICAgICAgb3BlcmF0aW9ucy5vcGVyYXRpb25zKCkuYXBwZW5kKG9wZXJhdGlvbik7Ci0gICAgICAg
ICAgICBjb250aW51ZTsKLSAgICAgICAgfQotI2VuZGlmCiAgICAgICAgIGlmIChvcGVyYXRpb25U
eXBlID09IEZpbHRlck9wZXJhdGlvbjo6UkVGRVJFTkNFKSB7CiAjaWYgRU5BQkxFKFNWRykKICAg
ICAgICAgICAgIGlmIChmaWx0ZXJWYWx1ZS0+bGVuZ3RoKCkgIT0gMSkKQEAgLTQwOTAsMTEgKzM3
MTIsNiBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6OmxvYWRQZW5kaW5nUmVzb3VyY2VzKCkKICAgICAv
LyBTdGFydCBsb2FkaW5nIGltYWdlcyByZWZlcmVuY2VkIGJ5IHRoaXMgc3R5bGUuCiAgICAgbG9h
ZFBlbmRpbmdJbWFnZXMoKTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAvLyBTdGFy
dCBsb2FkaW5nIHRoZSBzaGFkZXJzIHJlZmVyZW5jZWQgYnkgdGhpcyBzdHlsZS4KLSAgICBsb2Fk
UGVuZGluZ1NoYWRlcnMoKTsKLSNlbmRpZgotICAgIAogI2lmIEVOQUJMRShDU1NfRklMVEVSUykg
JiYgRU5BQkxFKFNWRykKICAgICAvLyBTdGFydCBsb2FkaW5nIHRoZSBTVkcgRG9jdW1lbnRzIHJl
ZmVyZW5jZWQgYnkgdGhpcyBzdHlsZS4KICAgICBsb2FkUGVuZGluZ1NWR0RvY3VtZW50cygpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmgKaW5kZXggY2E1ODVmZC4uYjA1Y2E3NiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVSZXNvbHZlci5oCkBAIC0zOCw5ICszOCw2IEBACiAjaW5jbHVkZSAiU3R5
bGVJbmhlcml0ZWREYXRhLmgiCiAjaW5jbHVkZSAiU3R5bGVTY29wZVJlc29sdmVyLmgiCiAjaW5j
bHVkZSAiVmlld3BvcnRTdHlsZVJlc29sdmVyLmgiCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQot
I2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0YW50cy5oIgotI2VuZGlmCiAjaW5jbHVkZSA8d3Rm
L0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQ
dHIuaD4KQEAgLTY0LDExICs2MSw2IEBAIGNsYXNzIENTU1NlbGVjdG9yOwogY2xhc3MgQ1NTU3R5
bGVTaGVldDsKIGNsYXNzIENTU1ZhbHVlOwogY2xhc3MgQ29udGFpbmVyTm9kZTsKLWNsYXNzIEN1
c3RvbUZpbHRlck9wZXJhdGlvbjsKLWNsYXNzIEN1c3RvbUZpbHRlclBhcmFtZXRlcjsKLWNsYXNz
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3Q7Ci1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtOwot
c3RydWN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5nczsKIGNsYXNzIERvY3VtZW50Owog
Y2xhc3MgRGVwcmVjYXRlZFN0eWxlQnVpbGRlcjsKIGNsYXNzIEVsZW1lbnQ7CkBAIC04NCw3ICs3
Niw2IEBAIGNsYXNzIFJlbmRlclNjcm9sbGJhcjsKIGNsYXNzIFJ1bGVEYXRhOwogY2xhc3MgUnVs
ZVNldDsKIGNsYXNzIFNldHRpbmdzOwotY2xhc3MgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2Fj
aGU7CiBjbGFzcyBTdHlsZVNjb3BlUmVzb2x2ZXI7CiBjbGFzcyBTdHlsZUltYWdlOwogY2xhc3Mg
U3R5bGVLZXlmcmFtZTsKQEAgLTk3LDEzICs4OCwxMSBAQCBjbGFzcyBTdHlsZVJ1bGVIb3N0Owog
Y2xhc3MgU3R5bGVSdWxlS2V5ZnJhbWVzOwogY2xhc3MgU3R5bGVSdWxlUGFnZTsKIGNsYXNzIFN0
eWxlUnVsZVJlZ2lvbjsKLWNsYXNzIFN0eWxlU2hhZGVyOwogY2xhc3MgU3R5bGVTaGVldDsKIGNs
YXNzIFN0eWxlU2hlZXRMaXN0OwogY2xhc3MgU3R5bGVkRWxlbWVudDsKIGNsYXNzIFZpZXdwb3J0
U3R5bGVSZXNvbHZlcjsKIGNsYXNzIFdlYktpdENTU0ZpbHRlclZhbHVlOwotY2xhc3MgV2ViS2l0
Q1NTU2hhZGVyVmFsdWU7CiAKIGNsYXNzIE1lZGlhUXVlcnlSZXN1bHQgewogICAgIFdURl9NQUtF
X05PTkNPUFlBQkxFKE1lZGlhUXVlcnlSZXN1bHQpOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
QEAgLTI2NCwyMiArMjUzLDYgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQog
ICAgIGJvb2wgY3JlYXRlRmlsdGVyT3BlcmF0aW9ucyhDU1NWYWx1ZSogaW5WYWx1ZSwgRmlsdGVy
T3BlcmF0aW9ucyYgb3V0T3BlcmF0aW9ucyk7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
IFN0eWxlU2hhZGVyKiBzdHlsZVNoYWRlcihDU1NWYWx1ZSopOwotICAgIFN0eWxlU2hhZGVyKiBj
YWNoZWRPclBlbmRpbmdTdHlsZVNoYWRlckZyb21WYWx1ZShXZWJLaXRDU1NTaGFkZXJWYWx1ZSop
OwotICAgIGJvb2wgcGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0KENTU1ZhbHVlKiwgQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYpOwotICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFy
YW1ldGVyPiBwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENT
U1ZhbHVlKik7Ci0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IHBhcnNlQ3Vz
dG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lLCBDU1NWYWx1ZUxpc3Qq
KTsKLSAgICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gcGFyc2VDdXN0b21GaWx0
ZXJBcnJheVBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlzdCosIGJvb2wp
OwotICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBwYXJzZUN1c3RvbUZpbHRl
ck51bWJlclBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlzdCopOwotICAg
IFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBwYXJzZUN1c3RvbUZpbHRlclRyYW5z
Zm9ybVBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlzdCopOwotICAgIFBh
c3NSZWZQdHI8Q3VzdG9tRmlsdGVyT3BlcmF0aW9uPiBjcmVhdGVDdXN0b21GaWx0ZXJPcGVyYXRp
b25XaXRoQXRSdWxlUmVmZXJlbmNlU3ludGF4KFdlYktpdENTU0ZpbHRlclZhbHVlKik7Ci0gICAg
UGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJPcGVyYXRpb24+IGNyZWF0ZUN1c3RvbUZpbHRlck9wZXJh
dGlvbldpdGhJbmxpbmVTeW50YXgoV2ViS2l0Q1NTRmlsdGVyVmFsdWUqKTsKLSAgICBQYXNzUmVm
UHRyPEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gY3JlYXRlQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKFdl
YktpdENTU0ZpbHRlclZhbHVlKik7Ci0gICAgdm9pZCBsb2FkUGVuZGluZ1NoYWRlcnMoKTsKLSAg
ICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IGxvb2t1cEN1c3RvbUZpbHRlclByb2dy
YW0oV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIHZlcnRleFNoYWRlciwgV2ViS2l0Q1NTU2hhZGVyVmFs
dWUqIGZyYWdtZW50U2hhZGVyLCAKLSAgICAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUsIGNv
bnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyYsIEN1c3RvbUZpbHRlck1lc2hUeXBl
KTsKLSNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAgdm9pZCBsb2FkUGVuZGluZ1NWR0RvY3Vt
ZW50cygpOwogI2VuZGlmCkBAIC0zOTIsOSArMzY1LDYgQEAgcHVibGljOgogICAgICAgICAsIG1f
ZWxlbWVudEFmZmVjdGVkQnlDbGFzc1J1bGVzKGZhbHNlKQogICAgICAgICAsIG1fYXBwbHlQcm9w
ZXJ0eVRvUmVndWxhclN0eWxlKHRydWUpCiAgICAgICAgICwgbV9hcHBseVByb3BlcnR5VG9WaXNp
dGVkTGlua1N0eWxlKGZhbHNlKQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgLCBt
X2hhc1BlbmRpbmdTaGFkZXJzKGZhbHNlKQotI2VuZGlmCiAgICAgICAgICwgbV9saW5lSGVpZ2h0
VmFsdWUoMCkKICAgICAgICAgLCBtX2ZvbnREaXJ0eShmYWxzZSkKICAgICAgICAgLCBtX2hhc1VB
QXBwZWFyYW5jZShmYWxzZSkKQEAgLTQzMCwxMCArNDAwLDYgQEAgcHVibGljOgogI2lmIEVOQUJM
RShDU1NfRklMVEVSUykgJiYgRU5BQkxFKFNWRykKICAgICAgICAgUGVuZGluZ1NWR0RvY3VtZW50
U2V0JiBwZW5kaW5nU1ZHRG9jdW1lbnRzKCkgeyByZXR1cm4gbV9wZW5kaW5nU1ZHRG9jdW1lbnRz
OyB9CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIHZvaWQgc2V0SGFz
UGVuZGluZ1NoYWRlcnMoYm9vbCBoYXNQZW5kaW5nU2hhZGVycykgeyBtX2hhc1BlbmRpbmdTaGFk
ZXJzID0gaGFzUGVuZGluZ1NoYWRlcnM7IH0KLSAgICAgICAgYm9vbCBoYXNQZW5kaW5nU2hhZGVy
cygpIGNvbnN0IHsgcmV0dXJuIG1faGFzUGVuZGluZ1NoYWRlcnM7IH0KLSNlbmRpZgogCiAgICAg
ICAgIHZvaWQgc2V0TGluZUhlaWdodFZhbHVlKENTU1ZhbHVlKiB2YWx1ZSkgeyBtX2xpbmVIZWln
aHRWYWx1ZSA9IHZhbHVlOyB9CiAgICAgICAgIENTU1ZhbHVlKiBsaW5lSGVpZ2h0VmFsdWUoKSB7
IHJldHVybiBtX2xpbmVIZWlnaHRWYWx1ZTsgfQpAQCAtNDc4LDkgKzQ0NCw2IEBAIHB1YmxpYzoK
ICAgICAgICAgYm9vbCBtX2FwcGx5UHJvcGVydHlUb1Zpc2l0ZWRMaW5rU3R5bGU7CiAKICAgICAg
ICAgUGVuZGluZ0ltYWdlUHJvcGVydHlNYXAgbV9wZW5kaW5nSW1hZ2VQcm9wZXJ0aWVzOwotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgYm9vbCBtX2hhc1BlbmRpbmdTaGFkZXJzOwot
I2VuZGlmCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKSAmJiBFTkFCTEUoU1ZHKQogICAgICAgICBQ
ZW5kaW5nU1ZHRG9jdW1lbnRTZXQgbV9wZW5kaW5nU1ZHRG9jdW1lbnRzOwogI2VuZGlmCkBAIC01
OTAsMTAgKzU1Myw2IEBAIHByaXZhdGU6CiAKICAgICBTdGF0ZSBtX3N0YXRlOwogCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgIE93blB0cjxTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNo
ZT4gbV9jdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGU7Ci0jZW5kaWYKLQogICAgIGZyaWVuZCBjbGFz
cyBEZXByZWNhdGVkU3R5bGVCdWlsZGVyOwogICAgIGZyaWVuZCBib29sIG9wZXJhdG9yPT0oY29u
c3QgTWF0Y2hlZFByb3BlcnRpZXMmLCBjb25zdCBNYXRjaGVkUHJvcGVydGllcyYpOwogICAgIGZy
aWVuZCBib29sIG9wZXJhdG9yIT0oY29uc3QgTWF0Y2hlZFByb3BlcnRpZXMmLCBjb25zdCBNYXRj
aGVkUHJvcGVydGllcyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVs
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmNwcAppbmRleCA4YjNlZjAyLi5j
ZTExYTYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmNwcApAQCAtMzMsNyArMzMsNiBAQAogI2lu
Y2x1ZGUgIkNTU1Vua25vd25SdWxlLmgiCiAjaW5jbHVkZSAiU3R5bGVQcm9wZXJ0aWVzLmgiCiAj
aW5jbHVkZSAiU3R5bGVSdWxlSW1wb3J0LmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTRmlsdGVyUnVs
ZS5oIgogI2luY2x1ZGUgIldlYktpdENTU0tleWZyYW1lUnVsZS5oIgogI2luY2x1ZGUgIldlYktp
dENTU0tleWZyYW1lc1J1bGUuaCIKICNpbmNsdWRlICJXZWJLaXRDU1NSZWdpb25SdWxlLmgiCkBA
IC05OCwxMSArOTcsNiBAQCB2b2lkIFN0eWxlUnVsZUJhc2U6OmRlc3Ryb3koKQogICAgICAgICBk
ZWxldGUgc3RhdGljX2Nhc3Q8U3R5bGVSdWxlVmlld3BvcnQqPih0aGlzKTsKICAgICAgICAgcmV0
dXJuOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgRmlsdGVyOgot
ICAgICAgICBkZWxldGUgc3RhdGljX2Nhc3Q8U3R5bGVSdWxlRmlsdGVyKj4odGhpcyk7Ci0gICAg
ICAgIHJldHVybjsKLSNlbmRpZgogICAgIGNhc2UgVW5rbm93bjoKICAgICBjYXNlIENoYXJzZXQ6
CiAgICAgY2FzZSBLZXlmcmFtZToKQEAgLTE0NCwxMCArMTM4LDYgQEAgUGFzc1JlZjxTdHlsZVJ1
bGVCYXNlPiBTdHlsZVJ1bGVCYXNlOjpjb3B5KCkgY29uc3QKICAgICBjYXNlIFZpZXdwb3J0Ogog
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgU3R5bGVSdWxlVmlld3BvcnQqPih0aGlz
KS0+Y29weSgpOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgRmls
dGVyOgotICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgU3R5bGVSdWxlRmlsdGVyKj4o
dGhpcyktPmNvcHkoKTsKLSNlbmRpZgogICAgIGNhc2UgSW1wb3J0OgogICAgICAgICAvLyBGSVhN
RTogQ29weSBpbXBvcnQgcnVsZXMuCiAgICAgICAgIGJyZWFrOwpAQCAtMjA3LDExICsxOTcsNiBA
QCBQYXNzUmVmUHRyPENTU1J1bGU+IFN0eWxlUnVsZUJhc2U6OmNyZWF0ZUNTU09NV3JhcHBlcihD
U1NTdHlsZVNoZWV0KiBwYXJlbnRTaGVldAogICAgICAgICBydWxlID0gQ1NTSG9zdFJ1bGU6OmNy
ZWF0ZShzdGF0aWNfY2FzdDxTdHlsZVJ1bGVIb3N0Kj4oc2VsZiksIHBhcmVudFNoZWV0KTsKICAg
ICAgICAgYnJlYWs7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBG
aWx0ZXI6Ci0gICAgICAgIHJ1bGUgPSBXZWJLaXRDU1NGaWx0ZXJSdWxlOjpjcmVhdGUoc3RhdGlj
X2Nhc3Q8U3R5bGVSdWxlRmlsdGVyKj4oc2VsZiksIHBhcmVudFNoZWV0KTsKLSAgICAgICAgYnJl
YWs7Ci0jZW5kaWYKICAgICBjYXNlIFVua25vd246CiAgICAgY2FzZSBDaGFyc2V0OgogICAgIGNh
c2UgS2V5ZnJhbWU6CkBAIC00MzIsMzIgKzQxNyw0IEBAIE11dGFibGVTdHlsZVByb3BlcnRpZXMm
IFN0eWxlUnVsZVZpZXdwb3J0OjptdXRhYmxlUHJvcGVydGllcygpCiB9CiAjZW5kaWYgLy8gRU5B
QkxFKENTU19ERVZJQ0VfQURBUFRBVElPTikKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLVN0
eWxlUnVsZUZpbHRlcjo6U3R5bGVSdWxlRmlsdGVyKGNvbnN0IFN0cmluZyYgZmlsdGVyTmFtZSwg
UGFzc1JlZjxTdHlsZVByb3BlcnRpZXM+IHByb3BlcnRpZXMpCi0gICAgOiBTdHlsZVJ1bGVCYXNl
KEZpbHRlciwgMCkKLSAgICAsIG1fZmlsdGVyTmFtZShmaWx0ZXJOYW1lKQotICAgICwgbV9wcm9w
ZXJ0aWVzKHN0ZDo6bW92ZShwcm9wZXJ0aWVzKSkKLXsKLX0KLQotU3R5bGVSdWxlRmlsdGVyOjpT
dHlsZVJ1bGVGaWx0ZXIoY29uc3QgU3R5bGVSdWxlRmlsdGVyJiBvKQotICAgIDogU3R5bGVSdWxl
QmFzZShvKQotICAgICwgbV9maWx0ZXJOYW1lKG8ubV9maWx0ZXJOYW1lKQotICAgICwgbV9wcm9w
ZXJ0aWVzKG8ubV9wcm9wZXJ0aWVzLT5tdXRhYmxlQ29weSgpKQotewotfQotCi1TdHlsZVJ1bGVG
aWx0ZXI6On5TdHlsZVJ1bGVGaWx0ZXIoKQotewotfQotCi1NdXRhYmxlU3R5bGVQcm9wZXJ0aWVz
JiBTdHlsZVJ1bGVGaWx0ZXI6Om11dGFibGVQcm9wZXJ0aWVzKCkKLXsKLSAgICBpZiAoIW1fcHJv
cGVydGllcy0+aXNNdXRhYmxlKCkpCi0gICAgICAgIG1fcHJvcGVydGllcyA9IG1fcHJvcGVydGll
cy0+bXV0YWJsZUNvcHkoKTsKLSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8TXV0YWJsZVN0eWxlUHJv
cGVydGllcyY+KG1fcHJvcGVydGllcy5nZXQoKSk7Ci19Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0KIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZVJ1bGUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJ1bGUuaApp
bmRleCA1NGY1YzI2Li45MWRmNGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVSdWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5oCkBAIC01NSw5ICs1
NSw2IEBAIHB1YmxpYzoKICAgICAgICAgVmlld3BvcnQgPSAxNSwKICNlbmRpZgogICAgICAgICBS
ZWdpb24gPSAxNiwKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIEZpbHRlciA9IDE3
LAotI2VuZGlmCiAjaWYgRU5BQkxFKFNIQURPV19ET00pCiAgICAgICAgIEhvc3RJbnRlcm5hbCA9
IDE4LCAvLyBTcGVjIHNheXMgSG9zdCA9IDEwMDEsIGJ1dCB3ZSBjYW4gdXNlIG9ubHkgNSBiaXQg
Zm9yIHR5cGUoKS4KICNlbmRpZgpAQCAtODIsOSArNzksNiBAQCBwdWJsaWM6CiAjaWYgRU5BQkxF
KFNIQURPV19ET00pCiAgICAgYm9vbCBpc0hvc3RSdWxlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgp
ID09IEhvc3RJbnRlcm5hbDsgfQogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
IGJvb2wgaXNGaWx0ZXJSdWxlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IEZpbHRlcjsgfQot
I2VuZGlmCiAKICAgICBQYXNzUmVmPFN0eWxlUnVsZUJhc2U+IGNvcHkoKSBjb25zdDsKIApAQCAt
MzI1LDMyICszMTksNiBAQCBpbmxpbmUgY29uc3QgU3R5bGVSdWxlUmVnaW9uKiB0b1N0eWxlUnVs
ZVJlZ2lvbihjb25zdCBTdHlsZVJ1bGVHcm91cCogcnVsZSkKICAgICByZXR1cm4gc3RhdGljX2Nh
c3Q8Y29uc3QgU3R5bGVSdWxlUmVnaW9uKj4ocnVsZSk7CiB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi1jbGFzcyBTdHlsZVJ1bGVGaWx0ZXIgOiBwdWJsaWMgU3R5bGVSdWxlQmFzZSB7Ci1w
dWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWY8U3R5bGVSdWxlRmlsdGVyPiBjcmVhdGUoY29uc3Qg
U3RyaW5nJiBmaWx0ZXJOYW1lLCBQYXNzUmVmPFN0eWxlUHJvcGVydGllcz4gcHJvcGVydGllcykK
LSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFN0eWxlUnVsZUZpbHRlcihmaWx0
ZXJOYW1lLCBzdGQ6Om1vdmUocHJvcGVydGllcykpKTsKLSAgICB9Ci0KLSAgICB+U3R5bGVSdWxl
RmlsdGVyKCk7Ci0KLSAgICBjb25zdCBTdHJpbmcmIGZpbHRlck5hbWUoKSBjb25zdCB7IHJldHVy
biBtX2ZpbHRlck5hbWU7IH0KLQotICAgIGNvbnN0IFN0eWxlUHJvcGVydGllcyYgcHJvcGVydGll
cygpIGNvbnN0IHsgcmV0dXJuIG1fcHJvcGVydGllcy5nZXQoKTsgfQotICAgIE11dGFibGVTdHls
ZVByb3BlcnRpZXMmIG11dGFibGVQcm9wZXJ0aWVzKCk7Ci0KLSAgICBQYXNzUmVmPFN0eWxlUnVs
ZUZpbHRlcj4gY29weSgpIGNvbnN0IHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgU3R5bGVSdWxlRmls
dGVyKCp0aGlzKSk7IH0KLQotcHJpdmF0ZToKLSAgICBTdHlsZVJ1bGVGaWx0ZXIoY29uc3QgU3Ry
aW5nJiwgUGFzc1JlZjxTdHlsZVByb3BlcnRpZXM+KTsKLSAgICBTdHlsZVJ1bGVGaWx0ZXIoY29u
c3QgU3R5bGVSdWxlRmlsdGVyJik7Ci0KLSAgICBTdHJpbmcgbV9maWx0ZXJOYW1lOwotICAgIFJl
ZjxTdHlsZVByb3BlcnRpZXM+IG1fcHJvcGVydGllczsKLX07Ci0jZW5kaWYgLy8gRU5BQkxFKENT
U19TSEFERVJTKQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBTdHlsZVJ1
bGVfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlU2hlZXRDb250ZW50cy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENvbnRlbnRzLmNwcAppbmRleCA5OTEy
N2E0Li45YTM4NDljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENv
bnRlbnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENvbnRlbnRzLmNw
cApAQCAtNDY3LDkgKzQ2Nyw2IEBAIHN0YXRpYyBib29sIGNoaWxkUnVsZXNIYXZlRmFpbGVkT3JD
YW5jZWxlZFN1YnJlc291cmNlcyhjb25zdCBWZWN0b3I8UmVmUHRyPFN0eWxlCiAjaWYgRU5BQkxF
KENTU19ERVZJQ0VfQURBUFRBVElPTikKICAgICAgICAgY2FzZSBTdHlsZVJ1bGVCYXNlOjpWaWV3
cG9ydDoKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgY2FzZSBTdHls
ZVJ1bGVCYXNlOjpGaWx0ZXI6Ci0jZW5kaWYKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9
CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODEzMDE2OS4uMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNw
cAorKysgL2Rldi9udWxsCkBAIC0xLDY0ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgot
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
LSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQot
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgot
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdF
LgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWUuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU6OldlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZSgpCi0gICAgOiBDU1NWYWx1ZUxpc3QoV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZh
bHVlQ2xhc3MsIENvbW1hU2VwYXJhdG9yKQotewotfQotCi1XZWJLaXRDU1NBcnJheUZ1bmN0aW9u
VmFsdWU6OldlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZShjb25zdCBXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWUmIGNsb25lRnJvbSkKLSAgICA6IENTU1ZhbHVlTGlzdChjbG9uZUZyb20pCi17
Ci19Ci0KLVN0cmluZyBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU6OmN1c3RvbUNTU1RleHQo
KSBjb25zdAotewotICAgIHJldHVybiAiYXJyYXkoIiArIENTU1ZhbHVlTGlzdDo6Y3VzdG9tQ1NT
VGV4dCgpICsgJyknOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1
ZT4gV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlOjpjbG9uZUZvckNTU09NKCkgY29uc3QKLXsK
LSAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSgqdGhp
cykpOwotfQotCi1ib29sIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZTo6ZXF1YWxzKGNvbnN0
IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSYgb3RoZXIpIGNvbnN0Ci17Ci0gICAgcmV0dXJu
IENTU1ZhbHVlTGlzdDo6ZXF1YWxzKG90aGVyKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUv
Y3NzL1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAxYzIzNzFlLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRD
U1NBcnJheUZ1bmN0aW9uVmFsdWUuaAorKysgL2Rldi9udWxsCkBAIC0xLDY0ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwot
ICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBB
TkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViS2l0Q1NTQXJyYXlGdW5j
dGlvblZhbHVlX2gKLSNkZWZpbmUgV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlX2gKLQotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkNTU1ZhbHVlTGlzdC5oIgotI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgV2Vi
S2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlIDogcHVibGljIENTU1ZhbHVlTGlzdCB7Ci1wdWJsaWM6
Ci0gICAgc3RhdGljIFBhc3NSZWY8V2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlPiBjcmVhdGUo
KQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViS2l0Q1NTQXJyYXlGdW5j
dGlvblZhbHVlKCkpOwotICAgIH0KLQotICAgIFN0cmluZyBjdXN0b21DU1NUZXh0KCkgY29uc3Q7
Ci0KLSAgICBQYXNzUmVmUHRyPFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZT4gY2xvbmVGb3JD
U1NPTSgpIGNvbnN0OwotCi0gICAgYm9vbCBlcXVhbHMoY29uc3QgV2ViS2l0Q1NTQXJyYXlGdW5j
dGlvblZhbHVlJikgY29uc3Q7Ci0KLXByaXZhdGU6Ci0gICAgV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlKCk7Ci0gICAgV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlKGNvbnN0IFdlYktpdENT
U0FycmF5RnVuY3Rpb25WYWx1ZSYgY2xvbmVGcm9tKTsKLX07Ci0KLUNTU19WQUxVRV9UWVBFX0NB
U1RTKFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSwgaXNXZWJLaXRDU1NBcnJheUZ1bmN0aW9u
VmFsdWUoKSkKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENT
U19TSEFERVJTKQotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJL
aXRDU1NGaWx0ZXJSdWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJS
dWxlLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjdmMGE0Zi4uMDAwMDAwMAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAKKysrIC9kZXYv
bnVsbApAQCAtMSw5MCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0g
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
IEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NGaWx0ZXJSdWxlLmgiCi0KLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJQcm9wZXJ0eVNldENTU1N0eWxlRGVjbGFy
YXRpb24uaCIKLSNpbmNsdWRlICJTdHlsZVByb3BlcnRpZXMuaCIKLSNpbmNsdWRlICJTdHlsZVJ1
bGUuaCIKLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+Ci0KLW5hbWVzcGFjZSBX
ZWJDb3JlIHsKLQotV2ViS2l0Q1NTRmlsdGVyUnVsZTo6V2ViS2l0Q1NTRmlsdGVyUnVsZShTdHls
ZVJ1bGVGaWx0ZXIqIGZpbHRlclJ1bGUsIENTU1N0eWxlU2hlZXQqIHBhcmVudCkKLSAgICA6IENT
U1J1bGUocGFyZW50KQotICAgICwgbV9maWx0ZXJSdWxlKGZpbHRlclJ1bGUpCi17Ci19Ci0KLVdl
YktpdENTU0ZpbHRlclJ1bGU6On5XZWJLaXRDU1NGaWx0ZXJSdWxlKCkKLXsKLSAgICBpZiAobV9w
cm9wZXJ0aWVzQ1NTT01XcmFwcGVyKQotICAgICAgICBtX3Byb3BlcnRpZXNDU1NPTVdyYXBwZXIt
PmNsZWFyUGFyZW50UnVsZSgpOwotfQotCi1DU1NTdHlsZURlY2xhcmF0aW9uKiBXZWJLaXRDU1NG
aWx0ZXJSdWxlOjpzdHlsZSgpCi17Ci0gICAgaWYgKCFtX3Byb3BlcnRpZXNDU1NPTVdyYXBwZXIp
Ci0gICAgICAgIG1fcHJvcGVydGllc0NTU09NV3JhcHBlciA9IFN0eWxlUnVsZUNTU1N0eWxlRGVj
bGFyYXRpb246OmNyZWF0ZShtX2ZpbHRlclJ1bGUtPm11dGFibGVQcm9wZXJ0aWVzKCksICp0aGlz
KTsKLSAgICByZXR1cm4gbV9wcm9wZXJ0aWVzQ1NTT01XcmFwcGVyLmdldCgpOwotfQotCi1TdHJp
bmcgV2ViS2l0Q1NTRmlsdGVyUnVsZTo6Y3NzVGV4dCgpIGNvbnN0Ci17Ci0gICAgU3RyaW5nQnVp
bGRlciByZXN1bHQ7Ci0gICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoIkAtd2Via2l0LWZpbHRlciAi
KTsKLQotICAgIFN0cmluZyBmaWx0ZXJOYW1lID0gbV9maWx0ZXJSdWxlLT5maWx0ZXJOYW1lKCk7
Ci0gICAgcmVzdWx0LmFwcGVuZChmaWx0ZXJOYW1lKTsKLSAgICByZXN1bHQuYXBwZW5kTGl0ZXJh
bCgiIHsgIik7Ci0KLSAgICBTdHJpbmcgZGVzY3MgPSBtX2ZpbHRlclJ1bGUtPnByb3BlcnRpZXMo
KS5hc1RleHQoKTsKLSAgICByZXN1bHQuYXBwZW5kKGRlc2NzKTsKLSAgICBpZiAoIWRlc2NzLmlz
RW1wdHkoKSkKLSAgICAgICAgcmVzdWx0LmFwcGVuZCgnICcpOwotICAgIHJlc3VsdC5hcHBlbmQo
J30nKTsKLQotICAgIHJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKLX0KLQotdm9pZCBXZWJLaXRD
U1NGaWx0ZXJSdWxlOjpyZWF0dGFjaChTdHlsZVJ1bGVCYXNlKiBydWxlKQotewotICAgIEFTU0VS
VChydWxlKTsKLSAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTihydWxlLT5pc0Zp
bHRlclJ1bGUoKSk7Ci0gICAgbV9maWx0ZXJSdWxlID0gc3RhdGljX2Nhc3Q8U3R5bGVSdWxlRmls
dGVyKj4ocnVsZSk7Ci0gICAgaWYgKG1fcHJvcGVydGllc0NTU09NV3JhcHBlcikKLSAgICAgICAg
bV9wcm9wZXJ0aWVzQ1NTT01XcmFwcGVyLT5yZWF0dGFjaChtX2ZpbHRlclJ1bGUtPm11dGFibGVQ
cm9wZXJ0aWVzKCkpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBF
TkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0
Q1NTRmlsdGVyUnVsZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUu
aApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzU1YzU1MS4uMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyUnVsZS5oCisrKyAvZGV2L251bGwKQEAg
LTEsNjYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBBZG9iZSBTeXN0ZW1zIElu
Y29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4K
LSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIg
QkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFdlYktp
dENTU0ZpbHRlclJ1bGVfaAotI2RlZmluZSBXZWJLaXRDU1NGaWx0ZXJSdWxlX2gKLQotI2luY2x1
ZGUgIkNTU1J1bGUuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1jbGFzcyBDU1NTdHlsZURlY2xhcmF0aW9uOwotY2xhc3MgU3R5bGVSdWxlRmls
dGVyOwotY2xhc3MgU3R5bGVSdWxlQ1NTU3R5bGVEZWNsYXJhdGlvbjsKLQotY2xhc3MgV2ViS2l0
Q1NTRmlsdGVyUnVsZSA6IHB1YmxpYyBDU1NSdWxlIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFz
c1JlZlB0cjxXZWJLaXRDU1NGaWx0ZXJSdWxlPiBjcmVhdGUoU3R5bGVSdWxlRmlsdGVyKiBydWxl
LCBDU1NTdHlsZVNoZWV0KiBzaGVldCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IFdlYktpdENTU0Zp
bHRlclJ1bGUocnVsZSwgc2hlZXQpKTsgfQotCi0gICAgdmlydHVhbCB+V2ViS2l0Q1NTRmlsdGVy
UnVsZSgpOwotCi0gICAgdmlydHVhbCBDU1NSdWxlOjpUeXBlIHR5cGUoKSBjb25zdCBvdmVycmlk
ZSB7IHJldHVybiBXRUJLSVRfRklMVEVSX1JVTEU7IH0KLSAgICB2aXJ0dWFsIFN0cmluZyBjc3NU
ZXh0KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIHJlYXR0YWNoKFN0eWxlUnVs
ZUJhc2UqKSBvdmVycmlkZTsKLQotICAgIENTU1N0eWxlRGVjbGFyYXRpb24qIHN0eWxlKCk7Ci0K
LXByaXZhdGU6Ci0gICAgV2ViS2l0Q1NTRmlsdGVyUnVsZShTdHlsZVJ1bGVGaWx0ZXIqLCBDU1NT
dHlsZVNoZWV0KiBwYXJlbnQpOwotCi0gICAgUmVmUHRyPFN0eWxlUnVsZUZpbHRlcj4gbV9maWx0
ZXJSdWxlOwotICAgIG11dGFibGUgUmVmUHRyPFN0eWxlUnVsZUNTU1N0eWxlRGVjbGFyYXRpb24+
IG1fcHJvcGVydGllc0NTU09NV3JhcHBlcjsKLX07Ci0KLX0KLQotI2VuZGlmIC8vIEVOQUJMRShD
U1NfU0hBREVSUykKLQotI2VuZGlmIC8vIFdlYktpdENTU0ZpbHRlclJ1bGVfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuaWRsIGIvU291cmNlL1dl
YkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuaWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAyOGU4Yzc2Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRD
U1NGaWx0ZXJSdWxlLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0g
KiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotWwotICAgIENvbmRpdGlvbmFsPUNTU19TSEFERVJTLAotXSBp
bnRlcmZhY2UgV2ViS2l0Q1NTRmlsdGVyUnVsZSA6IENTU1J1bGUgewotICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBDU1NTdHlsZURlY2xhcmF0aW9uIHN0eWxlOwotCi0gICAgLy8gRklYTUU6IFdlIHNo
b3VsZCBleHBvc2UgdGhlIGZpbHRlciBuYW1lIG9uY2UgdGhlIENTU09NIGZvciB0aGUgQGZpbHRl
ciBydWxlIGlzIHNwZWNpZmllZC4KLX07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0Zp
bHRlclZhbHVlLmNwcAppbmRleCA5OTRkMzE2Li41OGE4YTIwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAKQEAgLTM1LDIxICszNSwxMSBAQAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCiBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6V2ViS2l0Q1NTRmlsdGVyVmFs
dWUoRmlsdGVyT3BlcmF0aW9uVHlwZSBvcGVyYXRpb25UeXBlKQotICAgIDogQ1NTVmFsdWVMaXN0
KFdlYktpdENTU0ZpbHRlckNsYXNzLCB0eXBlVXNlc1NwYWNlU2VwYXJhdG9yKG9wZXJhdGlvblR5
cGUpID8gU3BhY2VTZXBhcmF0b3IgOiBDb21tYVNlcGFyYXRvcikKKyAgICA6IENTU1ZhbHVlTGlz
dChXZWJLaXRDU1NGaWx0ZXJDbGFzcywgU3BhY2VTZXBhcmF0b3IpCiAgICAgLCBtX3R5cGUob3Bl
cmF0aW9uVHlwZSkKIHsKIH0KIAotYm9vbCBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6dHlwZVVzZXNT
cGFjZVNlcGFyYXRvcihGaWx0ZXJPcGVyYXRpb25UeXBlIG9wZXJhdGlvblR5cGUpCi17Ci0jaWYg
RU5BQkxFKENTU19TSEFERVJTKQotICAgIHJldHVybiBvcGVyYXRpb25UeXBlICE9IEN1c3RvbUZp
bHRlck9wZXJhdGlvbjsKLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKG9wZXJhdGlvblR5cGUpOwot
ICAgIHJldHVybiB0cnVlOwotI2VuZGlmCi19Ci0KIFN0cmluZyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNvbnN0CiB7CiAgICAgY29uc3QgY2hhciogcmVzdWx0ID0gIiI7
CkBAIC04OSwxMSArNzksNiBAQCBTdHJpbmcgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OmN1c3RvbUNT
U1RleHQoKSBjb25zdAogICAgIGNhc2UgRHJvcFNoYWRvd0ZpbHRlck9wZXJhdGlvbjoKICAgICAg
ICAgcmVzdWx0ID0gImRyb3Atc2hhZG93KCI7CiAgICAgICAgIGJyZWFrOwotI2lmIEVOQUJMRShD
U1NfU0hBREVSUykKLSAgICBjYXNlIEN1c3RvbUZpbHRlck9wZXJhdGlvbjoKLSAgICAgICAgcmVz
dWx0ID0gImN1c3RvbSgiOwotICAgICAgICBicmVhazsKLSNlbmRpZgogICAgIH0KIAogICAgIHJl
dHVybiByZXN1bHQgKyBDU1NWYWx1ZUxpc3Q6OmN1c3RvbUNTU1RleHQoKSArICcpJzsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIGIvU291cmNl
L1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmgKaW5kZXggYjA5ZTg4Mi4uNmMwOWE1
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmgKQEAgLTUwLDEz
ICs1MCw4IEBAIHB1YmxpYzoKICAgICAgICAgQ29udHJhc3RGaWx0ZXJPcGVyYXRpb24sCiAgICAg
ICAgIEJsdXJGaWx0ZXJPcGVyYXRpb24sCiAgICAgICAgIERyb3BTaGFkb3dGaWx0ZXJPcGVyYXRp
b24KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgICwgQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uCi0jZW5kaWYKICAgICB9OwogCi0gICAgc3RhdGljIGJvb2wgdHlwZVVzZXNTcGFjZVNlcGFy
YXRvcihGaWx0ZXJPcGVyYXRpb25UeXBlKTsKLQogICAgIHN0YXRpYyBQYXNzUmVmPFdlYktpdENT
U0ZpbHRlclZhbHVlPiBjcmVhdGUoRmlsdGVyT3BlcmF0aW9uVHlwZSB0eXBlKQogICAgIHsKICAg
ICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViS2l0Q1NTRmlsdGVyVmFsdWUodHlwZSkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5pZGwKaW5kZXggNWY4NDE0
NC4uOTZiYTFmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRl
clZhbHVlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
aWRsCkBAIC00MywxMCArNDMsNiBAQAogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IENTU19GSUxU
RVJfQkxVUiA9IDEwOwogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IENTU19GSUxURVJfRFJPUF9T
SEFET1cgPSAxMTsKIAotI2lmIGRlZmluZWQoRU5BQkxFX0NTU19TSEFERVJTKSAmJiBFTkFCTEVf
Q1NTX1NIQURFUlMKLSAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBDU1NfRklMVEVSX0NVU1RPTSA9
IDEyOwotI2VuZGlmCi0KICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgb3Bl
cmF0aW9uVHlwZTsKIAogICAgIGdldHRlciBDU1NWYWx1ZSAoW0RlZmF1bHQ9VW5kZWZpbmVkXSBv
cHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9X
ZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggNTlkODRhNi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0
RnVuY3Rpb25WYWx1ZS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw4MSArMCwwIEBACi0vKgotICog
Q29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAq
Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBk
aXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAq
ICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkK
LSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAot
ICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgot
ICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIldl
YktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCIKLQotI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1
aWxkZXIuaD4KLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotbmFtZXNwYWNlIFdlYkNvcmUg
ewotCi1XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlOjpXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVl
KCkKLSAgICA6IENTU1ZhbHVlTGlzdChXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlQ2xhc3MsIENv
bW1hU2VwYXJhdG9yKQotewotfQotCi1XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlOjpXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlKGNvbnN0IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUmIGNsb25l
RnJvbSkKLSAgICA6IENTU1ZhbHVlTGlzdChjbG9uZUZyb20pCi17Ci19Ci0KLVN0cmluZyBXZWJL
aXRDU1NNYXRGdW5jdGlvblZhbHVlOjpjdXN0b21DU1NUZXh0KCkgY29uc3QKLXsKLSAgICBTdHJp
bmdCdWlsZGVyIGJ1aWxkZXI7Ci0gICAgaWYgKGxlbmd0aCgpID09IDQpCi0gICAgICAgIGJ1aWxk
ZXIuYXBwZW5kTGl0ZXJhbCgibWF0MigiKTsKLSAgICBlbHNlIGlmIChsZW5ndGgoKSA9PSA5KQot
ICAgICAgICBidWlsZGVyLmFwcGVuZExpdGVyYWwoIm1hdDMoIik7Ci0gICAgZWxzZSBpZiAobGVu
Z3RoKCkgPT0gMTYpCi0gICAgICAgIGJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgibWF0NCgiKTsKLSAg
ICBlbHNlIHsKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgIHJldHVybiBT
dHJpbmcoKTsKLSAgICB9Ci0KLSAgICBidWlsZGVyLmFwcGVuZChDU1NWYWx1ZUxpc3Q6OmN1c3Rv
bUNTU1RleHQoKSk7Ci0gICAgYnVpbGRlci5hcHBlbmQoJyknKTsKLSAgICByZXR1cm4gYnVpbGRl
ci50b1N0cmluZygpOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU+
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU6OmNsb25lRm9yQ1NTT00oKSBjb25zdAotewotICAg
IHJldHVybiBhZG9wdFJlZihuZXcgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSgqdGhpcykpOwot
fQotCi1ib29sIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU6OmVxdWFscyhjb25zdCBXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlJiBvdGhlcikgY29uc3QKLXsKLSAgICByZXR1cm4gQ1NTVmFsdWVM
aXN0OjplcXVhbHMob3RoZXIpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENT
U01hdEZ1bmN0aW9uVmFsdWUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDlhNWI5
MC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25W
YWx1ZS5oCisrKyAvZGV2L251bGwKQEAgLTEsNjQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMyBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlX2gKLSNkZWZp
bmUgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0KLSNpbmNsdWRlICJDU1NWYWx1ZUxpc3QuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5o
PgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUgOiBwdWJsaWMgQ1NTVmFsdWVMaXN0IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZjxX
ZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlPiBjcmVhdGUoKQotICAgIHsKLSAgICAgICAgcmV0dXJu
IGFkb3B0UmVmKCpuZXcgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSk7Ci0gICAgfQotCi0gICAg
U3RyaW5nIGN1c3RvbUNTU1RleHQoKSBjb25zdDsKLQotICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZT4gY2xvbmVGb3JDU1NPTSgpIGNvbnN0OwotCi0gICAgYm9vbCBlcXVh
bHMoY29uc3QgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSYpIGNvbnN0OwotCi1wcml2YXRlOgot
ICAgIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUoKTsKLSAgICBXZWJLaXRDU1NNYXRGdW5jdGlv
blZhbHVlKGNvbnN0IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUmIGNsb25lRnJvbSk7Ci19Owot
Ci1DU1NfVkFMVUVfVFlQRV9DQVNUUyhXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLCBpc1dlYktp
dENTU01hdEZ1bmN0aW9uVmFsdWUoKSkKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggYWU1NDQxMS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw2NSArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
Ci0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotICAgIAotV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1
ZTo6V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpCi0gICAgOiBDU1NWYWx1ZUxpc3QoV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZUNsYXNzLCBTcGFjZVNlcGFyYXRvcikKLXsKLX0KLQotV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZTo6V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZShjb25zdCBXZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlJiBjbG9uZUZyb20pCi0gICAgOiBDU1NWYWx1ZUxpc3QoY2xv
bmVGcm9tKQotewotfQotCi1TdHJpbmcgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZTo6Y3VzdG9t
Q1NTVGV4dCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuICJtaXgoIiArIENTU1ZhbHVlTGlzdDo6Y3Vz
dG9tQ1NTVGV4dCgpICsgJyknOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWU+IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU6OmNsb25lRm9yQ1NTT00oKSBjb25zdAot
ewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgqdGhp
cykpOwotfQotCi1ib29sIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU6OmVxdWFscyhjb25zdCBX
ZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJiBvdGhlcikgY29uc3QKLXsKLSAgICByZXR1cm4gQ1NT
VmFsdWVMaXN0OjplcXVhbHMob3RoZXIpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWU0MzM4OS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWl4RnVu
Y3Rpb25WYWx1ZS5oCisrKyAvZGV2L251bGwKQEAgLTEsNjQgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlX2gK
LSNkZWZpbmUgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KLSNpbmNsdWRlICJDU1NWYWx1ZUxpc3QuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIFdlYktpdENTU01peEZ1bmN0
aW9uVmFsdWUgOiBwdWJsaWMgQ1NTVmFsdWVMaXN0IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFz
c1JlZjxXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlPiBjcmVhdGUoKQotICAgIHsKLSAgICAgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpKTsKLSAgICB9
Ci0KLSAgICBTdHJpbmcgY3VzdG9tQ1NTVGV4dCgpIGNvbnN0OwotCi0gICAgUGFzc1JlZlB0cjxX
ZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlPiBjbG9uZUZvckNTU09NKCkgY29uc3Q7Ci0KLSAgICBi
b29sIGVxdWFscyhjb25zdCBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJikgY29uc3Q7Ci0KLXBy
aXZhdGU6Ci0gICAgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpOwotICAgIFdlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUoY29uc3QgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSYgY2xvbmVGcm9t
KTsKLX07Ci0KLUNTU19WQUxVRV9UWVBFX0NBU1RTKFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUs
IGlzV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpKQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaWRsIGIvU291cmNl
L1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaWRsCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAzYTdjMDJmLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDM1ICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0
ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMg
SVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YK
LSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotWwotICAgIENvbmRpdGlvbmFsPUNT
U19TSEFERVJTLAotICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKLV0gaW50ZXJmYWNlIFdl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUgOiBDU1NWYWx1ZUxpc3QgewotfTsKLQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9XZWJLaXRDU1NTaGFkZXJWYWx1ZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDVjOTYyYzUuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktp
dENTU1NoYWRlclZhbHVlLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDEwOCArMCwwIEBACi0vKgot
ICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0
OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5E
IEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwK
LSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaCIKLQot
I2luY2x1ZGUgIkNTU1BhcnNlci5oIgotI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlTG9hZGVyLmgi
Ci0jaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmgiCi0jaW5jbHVkZSAiQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oIgotI2luY2x1ZGUgIkRvY3VtZW50LmgiCi0jaW5jbHVk
ZSAiVVJMLmgiCi0jaW5jbHVkZSAiU3R5bGVDYWNoZWRTaGFkZXIuaCIKLSNpbmNsdWRlICJTdHls
ZVBlbmRpbmdTaGFkZXIuaCIKLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+Ci0K
LW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotV2ViS2l0Q1NTU2hhZGVyVmFsdWU6OldlYktpdENTU1No
YWRlclZhbHVlKGNvbnN0IFN0cmluZyYgdXJsKQotICAgIDogQ1NTVmFsdWUoV2ViS2l0Q1NTU2hh
ZGVyQ2xhc3MpCi0gICAgLCBtX3VybCh1cmwpCi0gICAgLCBtX2FjY2Vzc2VkU2hhZGVyKGZhbHNl
KQotewotfQotCi1XZWJLaXRDU1NTaGFkZXJWYWx1ZTo6fldlYktpdENTU1NoYWRlclZhbHVlKCkK
LXsKLX0KLQotVVJMIFdlYktpdENTU1NoYWRlclZhbHVlOjpjb21wbGV0ZVVSTChDYWNoZWRSZXNv
dXJjZUxvYWRlciogbG9hZGVyKSBjb25zdAotewotICAgIHJldHVybiBsb2FkZXItPmRvY3VtZW50
KCktPmNvbXBsZXRlVVJMKG1fdXJsKTsKLX0KLQotU3R5bGVDYWNoZWRTaGFkZXIqIFdlYktpdENT
U1NoYWRlclZhbHVlOjpjYWNoZWRTaGFkZXIoQ2FjaGVkUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikK
LXsKLSAgICBBU1NFUlQobG9hZGVyKTsKLQotICAgIGlmICghbV9hY2Nlc3NlZFNoYWRlcikgewot
ICAgICAgICBtX2FjY2Vzc2VkU2hhZGVyID0gdHJ1ZTsKLQotICAgICAgICBDYWNoZWRSZXNvdXJj
ZVJlcXVlc3QgcmVxdWVzdChSZXNvdXJjZVJlcXVlc3QoY29tcGxldGVVUkwobG9hZGVyKSkpOwot
ICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcihjYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0
b3JzKCkuY3NzKTsKLSAgICAgICAgaWYgKENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFNoYWRl
cj4gY2FjaGVkU2hhZGVyID0gbG9hZGVyLT5yZXF1ZXN0U2hhZGVyKHJlcXVlc3QpKQotICAgICAg
ICAgICAgbV9zaGFkZXIgPSBTdHlsZUNhY2hlZFNoYWRlcjo6Y3JlYXRlKGNhY2hlZFNoYWRlci5n
ZXQoKSk7Ci0gICAgfQotCi0gICAgcmV0dXJuIChtX3NoYWRlciAmJiBtX3NoYWRlci0+aXNDYWNo
ZWRTaGFkZXIoKSkgPyBzdGF0aWNfY2FzdDxTdHlsZUNhY2hlZFNoYWRlcio+KG1fc2hhZGVyLmdl
dCgpKSA6IDA7Ci19Ci0KLVN0eWxlU2hhZGVyKiBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y2FjaGVk
T3JQZW5kaW5nU2hhZGVyKCkKLXsKLSAgICBpZiAoIW1fc2hhZGVyKQotICAgICAgICBtX3NoYWRl
ciA9IFN0eWxlUGVuZGluZ1NoYWRlcjo6Y3JlYXRlKHRoaXMpOwotCi0gICAgcmV0dXJuIG1fc2hh
ZGVyLmdldCgpOwotfQotCi1TdHJpbmcgV2ViS2l0Q1NTU2hhZGVyVmFsdWU6OmN1c3RvbUNTU1Rl
eHQoKSBjb25zdAotewotICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OwotICAgIHJlc3VsdC5hcHBl
bmRMaXRlcmFsKCJ1cmwoIik7Ci0gICAgcmVzdWx0LmFwcGVuZChxdW90ZUNTU1VSTElmTmVlZGVk
KG1fdXJsKSk7Ci0gICAgcmVzdWx0LmFwcGVuZCgnKScpOwotICAgIGlmICghbV9mb3JtYXQuaXNF
bXB0eSgpKSB7Ci0gICAgICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCIgZm9ybWF0KCciKTsKLSAg
ICAgICAgcmVzdWx0LmFwcGVuZChtX2Zvcm1hdCk7Ci0gICAgICAgIHJlc3VsdC5hcHBlbmRMaXRl
cmFsKCInKSIpOwotICAgIH0KLSAgICByZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7Ci19Ci0KLWJv
b2wgV2ViS2l0Q1NTU2hhZGVyVmFsdWU6OmVxdWFscyhjb25zdCBXZWJLaXRDU1NTaGFkZXJWYWx1
ZSYgb3RoZXIpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fdXJsID09IG90aGVyLm1fdXJsOwotfQot
ICAgIAotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFE
RVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1NoYWRlclZhbHVl
LmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNzlkMzU4OS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaAorKysgL2Rldi9udWxsCkBAIC0xLDc1ICswLDAg
QEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJ
U+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICog
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
Ci0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViS2l0Q1NTU2hh
ZGVyVmFsdWVfaAotI2RlZmluZSBXZWJLaXRDU1NTaGFkZXJWYWx1ZV9oCi0KLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJDU1NWYWx1ZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLWNsYXNzIENhY2hlZFJlc291cmNlTG9hZGVyOwotY2xhc3MgVVJMOwotY2xhc3MgU3R5
bGVDYWNoZWRTaGFkZXI7Ci1jbGFzcyBTdHlsZVNoYWRlcjsKLQotY2xhc3MgV2ViS2l0Q1NTU2hh
ZGVyVmFsdWUgOiBwdWJsaWMgQ1NTVmFsdWUgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVm
PFdlYktpdENTU1NoYWRlclZhbHVlPiBjcmVhdGUoY29uc3QgU3RyaW5nJiB1cmwpIHsgcmV0dXJu
IGFkb3B0UmVmKCpuZXcgV2ViS2l0Q1NTU2hhZGVyVmFsdWUodXJsKSk7IH0KLSAgICB+V2ViS2l0
Q1NTU2hhZGVyVmFsdWUoKTsKLQotICAgIGNvbnN0IFN0cmluZyYgZm9ybWF0KCkgY29uc3QgeyBy
ZXR1cm4gbV9mb3JtYXQ7IH0KLSAgICB2b2lkIHNldEZvcm1hdChjb25zdCBTdHJpbmcmIGZvcm1h
dCkgeyBtX2Zvcm1hdCA9IGZvcm1hdDsgfQotCi0gICAgVVJMIGNvbXBsZXRlVVJMKENhY2hlZFJl
c291cmNlTG9hZGVyKikgY29uc3Q7Ci0gICAgU3R5bGVDYWNoZWRTaGFkZXIqIGNhY2hlZFNoYWRl
cihDYWNoZWRSZXNvdXJjZUxvYWRlciopOwotICAgIFN0eWxlU2hhZGVyKiBjYWNoZWRPclBlbmRp
bmdTaGFkZXIoKTsKLQotICAgIFN0cmluZyBjdXN0b21DU1NUZXh0KCkgY29uc3Q7Ci0KLSAgICBi
b29sIGVxdWFscyhjb25zdCBXZWJLaXRDU1NTaGFkZXJWYWx1ZSYpIGNvbnN0OwotCi1wcml2YXRl
OgotICAgIGV4cGxpY2l0IFdlYktpdENTU1NoYWRlclZhbHVlKGNvbnN0IFN0cmluZyYgdXJsKTsK
LQotICAgIFN0cmluZyBtX3VybDsKLSAgICBTdHJpbmcgbV9mb3JtYXQ7Ci0gICAgUmVmUHRyPFN0
eWxlU2hhZGVyPiBtX3NoYWRlcjsKLSAgICBib29sIG1fYWNjZXNzZWRTaGFkZXI7Ci19OwotCi1D
U1NfVkFMVUVfVFlQRV9DQVNUUyhXZWJLaXRDU1NTaGFkZXJWYWx1ZSwgaXNXZWJLaXRDU1NTaGFk
ZXJWYWx1ZSgpKQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBXZWJLaXRDU1NTaGFkZXJWYWx1ZV9oCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcAppbmRleCA1NjNkNTA2
Li41ZjBiYzc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZS5jcHAKQEAgLTEzNSwxMCArMTM1LDYgQEAgc3RhdGljIFJlc291cmNlTG9hZFByaW9yaXR5
IGRlZmF1bHRQcmlvcml0eUZvclJlc291cmNlVHlwZShDYWNoZWRSZXNvdXJjZTo6VHlwZQogICAg
IGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlRleHRUcmFja1Jlc291cmNlOgogICAgICAgICByZXR1cm4g
UmVzb3VyY2VMb2FkUHJpb3JpdHlMb3c7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6U2hhZGVyUmVzb3VyY2U6Ci0gICAgICAgIHJldHVy
biBSZXNvdXJjZUxvYWRQcmlvcml0eU1lZGl1bTsKLSNlbmRpZgogICAgIH0KICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKICAgICByZXR1cm4gUmVzb3VyY2VMb2FkUHJpb3JpdHlMb3c7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oCmluZGV4IDkxNzk0ZjIu
LjhkZTY5Y2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZS5oCkBAIC04MSw5ICs4MSw2IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAg
ICAgICAgICwgVGV4dFRyYWNrUmVzb3VyY2UKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSAgICAgICAgLCBTaGFkZXJSZXNvdXJjZQotI2VuZGlmCiAgICAgfTsKIAogICAgIGVudW0g
U3RhdHVzIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VMb2FkZXIuY3BwCmluZGV4IDU2NmEwNzMuLjFjNjU5MzcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcApAQCAtNjIs
MTAgKzYyLDYgQEAKICNpbmNsdWRlICJDYWNoZWRUZXh0VHJhY2suaCIKICNlbmRpZgogCi0jaWYg
RU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkNhY2hlZFNoYWRlci5oIgotI2VuZGlmCi0K
ICNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogI2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgiCiAj
ZW5kaWYKQEAgLTEwNiwxMCArMTAyLDYgQEAgc3RhdGljIENhY2hlZFJlc291cmNlKiBjcmVhdGVS
ZXNvdXJjZShDYWNoZWRSZXNvdXJjZTo6VHlwZSB0eXBlLCBSZXNvdXJjZVJlcXVlc3QKICAgICBj
YXNlIENhY2hlZFJlc291cmNlOjpUZXh0VHJhY2tSZXNvdXJjZToKICAgICAgICAgcmV0dXJuIG5l
dyBDYWNoZWRUZXh0VHJhY2socmVxdWVzdCk7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6U2hhZGVyUmVzb3VyY2U6Ci0gICAgICAgIHJl
dHVybiBuZXcgQ2FjaGVkU2hhZGVyKHJlcXVlc3QpOwotI2VuZGlmCiAgICAgfQogICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiAwOwpAQCAtMTgzLDEzICsxNzUsNiBAQCBDYWNo
ZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRUZXh0VHJhY2s+IENhY2hlZFJlc291cmNlTG9hZGVyOjpy
ZXF1ZXN0VGV4dFRyYWNrKENhYwogfQogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci1DYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRTaGFkZXI+IENhY2hlZFJlc291cmNlTG9hZGVy
OjpyZXF1ZXN0U2hhZGVyKENhY2hlZFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKLXsKLSAgICBy
ZXR1cm4gc3RhdGljX2Nhc3Q8Q2FjaGVkU2hhZGVyKj4ocmVxdWVzdFJlc291cmNlKENhY2hlZFJl
c291cmNlOjpTaGFkZXJSZXNvdXJjZSwgcmVxdWVzdCkuZ2V0KCkpOwotfQotI2VuZGlmCi0KIENh
Y2hlZFJlc291cmNlSGFuZGxlPENhY2hlZENTU1N0eWxlU2hlZXQ+IENhY2hlZFJlc291cmNlTG9h
ZGVyOjpyZXF1ZXN0Q1NTU3R5bGVTaGVldChDYWNoZWRSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qp
CiB7CiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PENhY2hlZENTU1N0eWxlU2hlZXQqPihyZXF1ZXN0
UmVzb3VyY2UoQ2FjaGVkUmVzb3VyY2U6OkNTU1N0eWxlU2hlZXQsIHJlcXVlc3QpLmdldCgpKTsK
QEAgLTI3OSw5ICsyNjQsNiBAQCBib29sIENhY2hlZFJlc291cmNlTG9hZGVyOjpjaGVja0luc2Vj
dXJlQ29udGVudChDYWNoZWRSZXNvdXJjZTo6VHlwZSB0eXBlLCBjb25zdAogI2lmIEVOQUJMRShW
SURFT19UUkFDSykKICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpUZXh0VHJhY2tSZXNvdXJjZToK
ICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIENhY2hlZFJlc291cmNl
OjpTaGFkZXJSZXNvdXJjZToKLSNlbmRpZgogICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlJhd1Jl
c291cmNlOgogICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkltYWdlUmVzb3VyY2U6CiAgICAgY2Fz
ZSBDYWNoZWRSZXNvdXJjZTo6Rm9udFJlc291cmNlOiB7CkBAIC0zMzMsOSArMzE1LDYgQEAgYm9v
bCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVxdWVzdChDYWNoZWRSZXNvdXJjZTo6VHlwZSB0
eXBlLCBjb25zdCBVUkwmIHVybCwKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgY2FzZSBD
YWNoZWRSZXNvdXJjZTo6VGV4dFRyYWNrUmVzb3VyY2U6CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6U2hhZGVyUmVzb3VyY2U6Ci0jZW5k
aWYKICAgICAgICAgaWYgKG9wdGlvbnMucmVxdWVzdE9yaWdpblBvbGljeSA9PSBSZXN0cmljdFRv
U2FtZU9yaWdpbiAmJiAhbV9kb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuUmVxdWVzdCh1
cmwpKSB7CiAgICAgICAgICAgICBwcmludEFjY2Vzc0RlbmllZE1lc3NhZ2UodXJsKTsKICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTM3MCwxMCArMzQ5LDYgQEAgYm9vbCBDYWNoZWRSZXNv
dXJjZUxvYWRlcjo6Y2FuUmVxdWVzdChDYWNoZWRSZXNvdXJjZTo6VHlwZSB0eXBlLCBjb25zdCBV
UkwmIHVybCwKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIH0KICAgICAg
ICAgYnJlYWs7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgQ2FjaGVkUmVzb3Vy
Y2U6OlNoYWRlclJlc291cmNlOgotICAgICAgICAvLyBTaW5jZSBzaGFkZXJzIGFyZSByZWZlcmVu
Y2VkIGZyb20gQ1NTIFN0eWxlcyB1c2UgdGhlIHNhbWUgcnVsZXMgaGVyZS4KLSNlbmRpZgogICAg
IGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkNTU1N0eWxlU2hlZXQ6CiAgICAgICAgIGlmICghc2hvdWxk
QnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5ICYmICFtX2RvY3VtZW50LT5jb250
ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dTdHlsZUZyb21Tb3VyY2UodXJsKSkKICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlTG9hZGVyLmgKaW5kZXggNTk3ZDYxMC4uYmNjNzkzZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKQEAgLTQ2
LDcgKzQ2LDYgQEAgY2xhc3MgQ2FjaGVkRm9udDsKIGNsYXNzIENhY2hlZEltYWdlOwogY2xhc3Mg
Q2FjaGVkUmF3UmVzb3VyY2U7CiBjbGFzcyBDYWNoZWRTY3JpcHQ7Ci1jbGFzcyBDYWNoZWRTaGFk
ZXI7CiBjbGFzcyBDYWNoZWRUZXh0VHJhY2s7CiBjbGFzcyBDYWNoZWRYU0xTdHlsZVNoZWV0Owog
Y2xhc3MgRG9jdW1lbnQ7CkBAIC05Miw5ICs5MSw2IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUoVklE
RU9fVFJBQ0spCiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkVGV4dFRyYWNrPiByZXF1
ZXN0VGV4dFRyYWNrKENhY2hlZFJlc291cmNlUmVxdWVzdCYpOwogI2VuZGlmCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFNoYWRlcj4gcmVx
dWVzdFNoYWRlcihDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKLSNlbmRpZgogCiAgICAgLy8gTG9n
cyBhbiBhY2Nlc3MgZGVuaWVkIG1lc3NhZ2UgdG8gdGhlIGNvbnNvbGUgZm9yIHRoZSBzcGVjaWZp
ZWQgVVJMLgogICAgIHZvaWQgcHJpbnRBY2Nlc3NEZW5pZWRNZXNzYWdlKGNvbnN0IFVSTCYgdXJs
KSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRT
aGFkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5jcHAK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE1NzQ4ZmUuLjAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5jcHAKKysrIC9kZXYvbnVsbApA
QCAtMSw3MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMg
SW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
LgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBI
T0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IK
LSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVk
ZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJDYWNo
ZWRTaGFkZXIuaCIKLSNpbmNsdWRlICJSZXNvdXJjZUJ1ZmZlci5oIgotI2luY2x1ZGUgIlRleHRS
ZXNvdXJjZURlY29kZXIuaCIKLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+Ci0K
LW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotQ2FjaGVkU2hhZGVyOjpDYWNoZWRTaGFkZXIoY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3QpCi0gICAgOiBDYWNoZWRSZXNvdXJjZShy
ZXNvdXJjZVJlcXVlc3QsIFNoYWRlclJlc291cmNlKQotICAgICwgbV9kZWNvZGVyKFRleHRSZXNv
dXJjZURlY29kZXI6OmNyZWF0ZSgiYXBwbGljYXRpb24vc2hhZGVyIikpCi17Ci19Ci0KLUNhY2hl
ZFNoYWRlcjo6fkNhY2hlZFNoYWRlcigpCi17Ci19Ci0KLWNvbnN0IFN0cmluZyYgQ2FjaGVkU2hh
ZGVyOjpzaGFkZXJTdHJpbmcoKQotewotICAgIGlmIChtX3NoYWRlclN0cmluZy5pc051bGwoKSAm
JiBtX2RhdGEpIHsKLSAgICAgICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOwotICAgICAgICBidWls
ZGVyLmFwcGVuZChtX2RlY29kZXItPmRlY29kZShtX2RhdGEtPmRhdGEoKSwgbV9kYXRhLT5zaXpl
KCkpKTsKLSAgICAgICAgYnVpbGRlci5hcHBlbmQobV9kZWNvZGVyLT5mbHVzaCgpKTsKLSAgICAg
ICAgbV9zaGFkZXJTdHJpbmcgPSBidWlsZGVyLnRvU3RyaW5nKCk7Ci0gICAgfQotCi0gICAgcmV0
dXJuIG1fc2hhZGVyU3RyaW5nOwotfQotCi12b2lkIENhY2hlZFNoYWRlcjo6ZmluaXNoTG9hZGlu
ZyhSZXNvdXJjZUJ1ZmZlciogZGF0YSkKLXsKLSAgICBtX2RhdGEgPSBkYXRhOwotICAgIENhY2hl
ZFJlc291cmNlOjpmaW5pc2hMb2FkaW5nKDApOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkU2hhZGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYyYmQ0
ZmQuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRl
ci5oCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
Ci0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
Ci0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1B
R0UuCi0gKi8KLQotI2lmbmRlZiBDYWNoZWRTaGFkZXJfaAotI2RlZmluZSBDYWNoZWRTaGFkZXJf
aAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2Uu
aCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBUZXh0UmVzb3VyY2VEZWNvZGVyOwot
Ci1jbGFzcyBDYWNoZWRTaGFkZXIgZmluYWwgOiBwdWJsaWMgQ2FjaGVkUmVzb3VyY2UgewotcHVi
bGljOgotICAgIENhY2hlZFNoYWRlcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKLSAgICB2aXJ0
dWFsIH5DYWNoZWRTaGFkZXIoKTsKLSAgICAKLSAgICBjb25zdCBTdHJpbmcmIHNoYWRlclN0cmlu
ZygpOwotCi1wcml2YXRlOgotICAgIHZpcnR1YWwgYm9vbCBtYXlUcnlSZXBsYWNlRW5jb2RlZERh
dGEoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVhbCB2b2lkIGZp
bmlzaExvYWRpbmcoUmVzb3VyY2VCdWZmZXIqKSBvdmVycmlkZTsKLQotICAgIFJlZlB0cjxUZXh0
UmVzb3VyY2VEZWNvZGVyPiBtX2RlY29kZXI7Ci0gICAgU3RyaW5nIG1fc2hhZGVyU3RyaW5nOwot
fTsKLQotfQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ2Fj
aGVkU2hhZGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKaW5kZXggNzFjNGI3Yy4uM2JhMjNi
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKQEAgLTE3OCw3ICsxNzgsNiBAQCBTZXR0aW5n
czo6U2V0dGluZ3MoUGFnZSogcGFnZSkKICAgICAsIG1fbmVlZHNBZG9iZUZyYW1lUmVsb2FkaW5n
UXVpcmsoZmFsc2UpCiAgICAgLCBtX3VzZXNQYWdlQ2FjaGUoZmFsc2UpCiAgICAgLCBtX2ZvbnRS
ZW5kZXJpbmdNb2RlKDApCi0gICAgLCBtX2lzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChmYWxzZSkK
ICNpZiBQTEFURk9STShJT1MpCiAgICAgLCBtX3N0YW5kYWxvbmUoZmFsc2UpCiAgICAgLCBtX3Rl
bGVwaG9uZU51bWJlclBhcnNpbmdFbmFibGVkKGZhbHNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9TZXR0aW5ncy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCmlu
ZGV4IDU1ZjZkZWIuLmNiMmVjOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0
dGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKQEAgLTIxMyw5ICsy
MTMsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRGb250UmVuZGVyaW5nTW9kZShGb250UmVuZGVy
aW5nTW9kZSBtb2RlKTsKICAgICBGb250UmVuZGVyaW5nTW9kZSBmb250UmVuZGVyaW5nTW9kZSgp
IGNvbnN0OwogCi0gICAgdm9pZCBzZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGJvb2wgZW5hYmxl
ZCkgeyBtX2lzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCA9IGVuYWJsZWQ7IH0KLSAgICBib29sIGlz
Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNDU1NDdXN0b21GaWx0
ZXJFbmFibGVkOyB9Ci0KICNpZiBFTkFCTEUoQ1NTX1NUSUNLWV9QT1NJVElPTikKICAgICB2b2lk
IHNldENTU1N0aWNreVBvc2l0aW9uRW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV9jc3NTdGlja3lQ
b3NpdGlvbkVuYWJsZWQgPSBlbmFibGVkOyB9CiAgICAgYm9vbCBjc3NTdGlja3lQb3NpdGlvbkVu
YWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2Nzc1N0aWNreVBvc2l0aW9uRW5hYmxlZDsgfQpAQCAt
MzQ3LDcgKzM0NCw2IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX25lZWRzQWRvYmVGcmFtZVJlbG9h
ZGluZ1F1aXJrIDogMTsKICAgICBib29sIG1fdXNlc1BhZ2VDYWNoZSA6IDE7CiAgICAgdW5zaWdu
ZWQgbV9mb250UmVuZGVyaW5nTW9kZSA6IDE7Ci0gICAgYm9vbCBtX2lzQ1NTQ3VzdG9tRmlsdGVy
RW5hYmxlZCA6IDE7CiAjaWYgUExBVEZPUk0oSU9TKQogICAgIGJvb2wgbV9zdGFuZGFsb25lIDog
MTsKICAgICBib29sIG1fdGVsZXBob25lTnVtYmVyUGFyc2luZ0VuYWJsZWQgOiAxOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24u
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24u
Y3BwCmluZGV4IGEzOThhN2EuLjI5MTEyOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAKQEAgLTIyMyw3ICsyMjMs
NyBAQCBzdGF0aWMgaW5saW5lIFBhc3NSZWZQdHI8U3R5bGVJbWFnZT4gYmxlbmRGaWx0ZXIoY29u
c3QgQW5pbWF0aW9uQmFzZSogYW5pbSwgQ2FjaAogCiAgICAgUmVmUHRyPFN0eWxlQ2FjaGVkSW1h
Z2U+IHN0eWxlZEltYWdlID0gU3R5bGVDYWNoZWRJbWFnZTo6Y3JlYXRlKGltYWdlKTsKICAgICBh
dXRvIGltYWdlVmFsdWUgPSBDU1NJbWFnZVZhbHVlOjpjcmVhdGUoaW1hZ2UtPnVybCgpLCBzdHls
ZWRJbWFnZS5nZXQoKSk7Ci0gICAgYXV0byBmaWx0ZXJWYWx1ZSA9IENvbXB1dGVkU3R5bGVFeHRy
YWN0b3I6OnZhbHVlRm9yRmlsdGVyKGFuaW0tPnJlbmRlcmVyKCksICZhbmltLT5yZW5kZXJlcigp
LT5zdHlsZSgpLCBmaWx0ZXJSZXN1bHQsIERvTm90QWRqdXN0UGl4ZWxWYWx1ZXMpOworICAgIGF1
dG8gZmlsdGVyVmFsdWUgPSBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvckZpbHRlcigm
YW5pbS0+cmVuZGVyZXIoKS0+c3R5bGUoKSwgZmlsdGVyUmVzdWx0LCBEb05vdEFkanVzdFBpeGVs
VmFsdWVzKTsKIAogICAgIGF1dG8gcmVzdWx0ID0gQ1NTRmlsdGVySW1hZ2VWYWx1ZTo6Y3JlYXRl
KHN0ZDo6bW92ZShpbWFnZVZhbHVlKSwgc3RkOjptb3ZlKGZpbHRlclZhbHVlKSk7CiAgICAgcmVz
dWx0LmdldCgpLnNldEZpbHRlck9wZXJhdGlvbnMoZmlsdGVyUmVzdWx0KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9QbGF0Zm9ybUNBTGF5ZXJN
YWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvUGxhdGZvcm1D
QUxheWVyTWFjLm1tCmluZGV4IDgxZGFhZDkuLjU2N2RjMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9QbGF0Zm9ybUNBTGF5ZXJNYWMubW0KKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1BsYXRmb3JtQ0FMYXll
ck1hYy5tbQpAQCAtNjY0LDEwICs2NjQsNiBAQCBib29sIFBsYXRmb3JtQ0FMYXllck1hYzo6Zmls
dGVyc0NhbkJlQ29tcG9zaXRlZChjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiBmaWx0ZXJzKQogICAg
ICAgICBjb25zdCBGaWx0ZXJPcGVyYXRpb24qIGZpbHRlck9wZXJhdGlvbiA9IGZpbHRlcnMuYXQo
aSk7CiAgICAgICAgIHN3aXRjaCAoZmlsdGVyT3BlcmF0aW9uLT50eXBlKCkpIHsKICAgICAgICAg
ICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpSRUZFUkVOQ0U6Ci0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgICAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICAgICAg
ICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOgotI2VuZGlmCiAgICAg
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRp
b246OkRST1BfU0hBRE9XOgogICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBGb3Igbm93IHdlIGNh
biBvbmx5IGhhbmRsZSBkcm9wLXNoYWRvdyBpcyBpZiBpdCdzIGxhc3QgaW4gdGhlIGxpc3QKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZGY2OTBhMC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmgKKysrIC9kZXYv
bnVsbApAQCAtMSw5MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aWZuZGVmIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVy
QXJyYXlQYXJhbWV0ZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkFu
aW1hdGlvblV0aWxpdGllcy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlci5oIgot
I2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBD
dXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciA6IHB1YmxpYyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIg
ewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlckFycmF5UGFyYW1l
dGVyPiBjcmVhdGUoY29uc3QgU3RyaW5nJiBuYW1lLCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OlBh
cmFtZXRlclR5cGUgcGFyYW1ldGVyVHlwZSA9IEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6QVJSQVkp
Ci0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEN1c3RvbUZpbHRlckFycmF5UGFy
YW1ldGVyKHBhcmFtZXRlclR5cGUsIG5hbWUpKTsKLSAgICB9Ci0KLSAgICB1bnNpZ25lZCBzaXpl
KCkgY29uc3QgeyByZXR1cm4gbV9kYXRhLnNpemUoKTsgfQotICAgIGRvdWJsZSB2YWx1ZUF0KHVu
c2lnbmVkIGluZGV4KSBjb25zdCB7IHJldHVybiBtX2RhdGEuYXQoaW5kZXgpOyB9Ci0KLSAgICB2
b2lkIGFkZFZhbHVlKGRvdWJsZSB2YWx1ZSkgeyBtX2RhdGEuYXBwZW5kKHZhbHVlKTsgfQotCi0g
ICAgdmlydHVhbCBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gYmxlbmQoY29uc3Qg
Q3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91
dFNpemUmKQotICAgIHsKLSAgICAgICAgaWYgKCFmcm9tIHx8ICFpc1NhbWVUeXBlKCpmcm9tKSkK
LSAgICAgICAgICAgIHJldHVybiB0aGlzOwotCi0gICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlckFy
cmF5UGFyYW1ldGVyKiBmcm9tQXJyYXkgPSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJB
cnJheVBhcmFtZXRlcio+KGZyb20pOwotCi0gICAgICAgIGlmIChzaXplKCkgIT0gZnJvbUFycmF5
LT5zaXplKCkpCi0gICAgICAgICAgICByZXR1cm4gdGhpczsKLQotICAgICAgICBSZWZQdHI8Q3Vz
dG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI+IHJlc3VsdCA9IEN1c3RvbUZpbHRlckFycmF5UGFyYW1l
dGVyOjpjcmVhdGUobmFtZSgpKTsKLSAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXpl
KCk7ICsraSkKLSAgICAgICAgICAgIHJlc3VsdC0+YWRkVmFsdWUoV2ViQ29yZTo6YmxlbmQoZnJv
bUFycmF5LT52YWx1ZUF0KGkpLCB2YWx1ZUF0KGkpLCBwcm9ncmVzcykpOwotCi0gICAgICAgIHJl
dHVybiByZXN1bHQucmVsZWFzZSgpOwotICAgIH0KLQotICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRv
cj09KGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlciYgbykgY29uc3QKLSAgICB7Ci0gICAgICAg
IGlmICghaXNTYW1lVHlwZShvKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgICAg
ICBjb25zdCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciogb3RoZXIgPSBzdGF0aWNfY2FzdDxj
b25zdCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcio+KCZvKTsKLSAgICAgICAgcmV0dXJuIG1f
ZGF0YSA9PSBvdGhlci0+bV9kYXRhOwotICAgIH0KLQotcHJpdmF0ZToKLSAgICBDdXN0b21GaWx0
ZXJBcnJheVBhcmFtZXRlcihQYXJhbWV0ZXJUeXBlIHBhcmFtZXRlclR5cGUsIGNvbnN0IFN0cmlu
ZyYgbmFtZSkKLSAgICAgICAgOiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIocGFyYW1ldGVyVHlwZSwg
bmFtZSkKLSAgICB7Ci0gICAgfQotCi0gICAgVmVjdG9yPGRvdWJsZT4gbV9kYXRhOwotfTsKLQot
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQot
Ci0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXJfaApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb2xvclBh
cmFtZXRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBj
NjkyNDVkLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDg5
ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBv
cmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0g
KgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDi
gJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBC
RQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9t
RmlsdGVyQ29sb3JQYXJhbWV0ZXJfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
cl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ29sb3IuaCIKLSNpbmNs
dWRlICJDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1z
dGF0aWMgaW5saW5lIENvbG9yIGJsZW5kRnVuYyhjb25zdCBDb2xvciYgZnJvbSwgY29uc3QgQ29s
b3ImIHRvLCBkb3VibGUgcHJvZ3Jlc3MpCi17Ci0gICAgcmV0dXJuIGJsZW5kKGZyb20sIHRvLCBw
cm9ncmVzcyk7Ci19Ci0KLWNsYXNzIEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyIDogcHVibGlj
IEN1c3RvbUZpbHRlclBhcmFtZXRlciB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI+IGNyZWF0ZShjb25zdCBTdHJpbmcmIG5hbWUpCi0g
ICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1l
dGVyKG5hbWUpKTsKLSAgICB9Ci0KLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVy
UGFyYW1ldGVyPiBibGVuZChjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIqIGZyb21QYXJhbWV0
ZXIsIGRvdWJsZSBwcm9ncmVzcywgY29uc3QgTGF5b3V0U2l6ZSYpCi0gICAgewotICAgICAgICBp
ZiAoIWZyb21QYXJhbWV0ZXIgfHwgIWlzU2FtZVR5cGUoKmZyb21QYXJhbWV0ZXIpKQotICAgICAg
ICAgICAgcmV0dXJuIHRoaXM7Ci0gICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1l
dGVyKiBmcm9tQ29sb3IgPSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJDb2xvclBhcmFt
ZXRlcio+KGZyb21QYXJhbWV0ZXIpOwotCi0gICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJDb2xv
clBhcmFtZXRlcj4gcmVzdWx0ID0gQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI6OmNyZWF0ZShu
YW1lKCkpOwotICAgICAgICByZXN1bHQtPnNldENvbG9yKGJsZW5kRnVuYyhmcm9tQ29sb3ItPmNv
bG9yKCksIGNvbG9yKCksIHByb2dyZXNzKSk7Ci0gICAgICAgIHJldHVybiByZXN1bHQ7Ci0gICAg
fQotCi0gICAgY29uc3QgQ29sb3ImIGNvbG9yKCkgY29uc3QgeyByZXR1cm4gbV9jb2xvcjsgfQot
ICAgIHZvaWQgc2V0Q29sb3IoY29uc3QgQ29sb3ImIGNvbG9yKSB7IG1fY29sb3IgPSBjb2xvcjsg
fQotCi0gICAgdmlydHVhbCBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyJiBvKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKCFpc1NhbWVUeXBlKG8pKQotICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJDb2xvclBhcmFt
ZXRlciogb3RoZXIgPSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
cio+KCZvKTsKLSAgICAgICAgcmV0dXJuIG1fY29sb3IgPT0gb3RoZXItPm1fY29sb3I7Ci0gICAg
fQotICAgIAotcHJpdmF0ZToKLSAgICBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcihjb25zdCBT
dHJpbmcmIG5hbWUpCi0gICAgICAgIDogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKENPTE9SLCBuYW1l
KQotICAgIHsKLSAgICB9Ci0gICAgdmlydHVhbCB+Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIo
KQotICAgIHsKLSAgICB9Ci0gICAgCi0gICAgQ29sb3IgbV9jb2xvcjsKLX07Ci0KLX0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlm
IC8vIEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyQ29tcGlsZWRQcm9ncmFtLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzRi
NzU2Mi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwx
NTYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29y
cG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
IOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVS
IEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0j
aW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmgiCi0gCi0jaW5jbHVkZSAiQ3Vz
dG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLUN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbTo6Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtKFBhc3NS
ZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNvbnRleHQsIGNvbnN0IFN0cmluZyYgdmFsaWRhdGVk
VmVydGV4U2hhZGVyLCBjb25zdCBTdHJpbmcmIHZhbGlkYXRlZEZyYWdtZW50U2hhZGVyLCBDdXN0
b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSkKLSAgICA6IG1fY29udGV4dChjb250ZXh0
KQotICAgICwgbV9wcm9ncmFtKDApCi0gICAgLCBtX3Bvc2l0aW9uQXR0cmliTG9jYXRpb24oLTEp
Ci0gICAgLCBtX3RleEF0dHJpYkxvY2F0aW9uKC0xKQotICAgICwgbV9tZXNoQXR0cmliTG9jYXRp
b24oLTEpCi0gICAgLCBtX3RyaWFuZ2xlQXR0cmliTG9jYXRpb24oLTEpCi0gICAgLCBtX21lc2hC
b3hMb2NhdGlvbigtMSkKLSAgICAsIG1fcHJvamVjdGlvbk1hdHJpeExvY2F0aW9uKC0xKQotICAg
ICwgbV90aWxlU2l6ZUxvY2F0aW9uKC0xKQotICAgICwgbV9tZXNoU2l6ZUxvY2F0aW9uKC0xKQot
ICAgICwgbV9zYW1wbGVyTG9jYXRpb24oLTEpCi0gICAgLCBtX3NhbXBsZXJTaXplTG9jYXRpb24o
LTEpCi0gICAgLCBtX2NvbnRlbnRTYW1wbGVyTG9jYXRpb24oLTEpCi0gICAgLCBtX2lzSW5pdGlh
bGl6ZWQoZmFsc2UpCi17Ci0gICAgQVNTRVJUKCF2YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIuaXNOdWxs
KCkgJiYgIXZhbGlkYXRlZEZyYWdtZW50U2hhZGVyLmlzTnVsbCgpKTsKLQotICAgIG1fY29udGV4
dC0+bWFrZUNvbnRleHRDdXJyZW50KCk7Ci0KLSAgICBQbGF0Zm9ybTNET2JqZWN0IHZlcnRleFNo
YWRlciA9IGNvbXBpbGVTaGFkZXIoR3JhcGhpY3NDb250ZXh0M0Q6OlZFUlRFWF9TSEFERVIsIHZh
bGlkYXRlZFZlcnRleFNoYWRlcik7Ci0gICAgaWYgKCF2ZXJ0ZXhTaGFkZXIpCi0gICAgICAgIHJl
dHVybjsKLSAgICAKLSAgICBQbGF0Zm9ybTNET2JqZWN0IGZyYWdtZW50U2hhZGVyID0gY29tcGls
ZVNoYWRlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBR01FTlRfU0hBREVSLCB2YWxpZGF0ZWRGcmFn
bWVudFNoYWRlcik7Ci0gICAgaWYgKCFmcmFnbWVudFNoYWRlcikgewotICAgICAgICBtX2NvbnRl
eHQtPmRlbGV0ZVNoYWRlcih2ZXJ0ZXhTaGFkZXIpOwotICAgICAgICByZXR1cm47Ci0gICAgfQot
ICAgIAotICAgIG1fcHJvZ3JhbSA9IGxpbmtQcm9ncmFtKHZlcnRleFNoYWRlciwgZnJhZ21lbnRT
aGFkZXIpOwotICAgIAotICAgIG1fY29udGV4dC0+ZGVsZXRlU2hhZGVyKHZlcnRleFNoYWRlcik7
Ci0gICAgbV9jb250ZXh0LT5kZWxldGVTaGFkZXIoZnJhZ21lbnRTaGFkZXIpOwotICAgIAotICAg
IGlmICghbV9wcm9ncmFtKQotICAgICAgICByZXR1cm47Ci0gICAgCi0gICAgaW5pdGlhbGl6ZVBh
cmFtZXRlckxvY2F0aW9ucyhwcm9ncmFtVHlwZSk7Ci0gICAgCi0gICAgbV9pc0luaXRpYWxpemVk
ID0gdHJ1ZTsKLX0KLQotUGxhdGZvcm0zRE9iamVjdCBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dy
YW06OmNvbXBpbGVTaGFkZXIoR0MzRGVudW0gc2hhZGVyVHlwZSwgY29uc3QgU3RyaW5nJiBzaGFk
ZXJTdHJpbmcpCi17Ci0gICAgQVNTRVJUKCFzaGFkZXJTdHJpbmcuaXNOdWxsKCkpOwotCi0gICAg
UGxhdGZvcm0zRE9iamVjdCBzaGFkZXIgPSBtX2NvbnRleHQtPmNyZWF0ZVNoYWRlcihzaGFkZXJU
eXBlKTsKLSAgICBtX2NvbnRleHQtPnNoYWRlclNvdXJjZShzaGFkZXIsIHNoYWRlclN0cmluZyk7
Ci0gICAgbV9jb250ZXh0LT5jb21waWxlU2hhZGVyKHNoYWRlcik7Ci0gICAgCi0gICAgaW50IGNv
bXBpbGVkID0gMDsKLSAgICBtX2NvbnRleHQtPmdldFNoYWRlcml2KHNoYWRlciwgR3JhcGhpY3ND
b250ZXh0M0Q6OkNPTVBJTEVfU1RBVFVTLCAmY29tcGlsZWQpOwotICAgIGlmICghY29tcGlsZWQp
IHsKLSAgICAgICAgLy8gRklYTUU6IFRoaXMgaXMgYW4gaW52YWxpZCBzaGFkZXIuIFRocm93IHNv
bWUgZXJyb3JzLgotICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzQ0MTYKLSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVTaGFkZXIoc2hhZGVyKTsKLSAg
ICAgICAgcmV0dXJuIDA7Ci0gICAgfQotICAgIAotICAgIHJldHVybiBzaGFkZXI7Ci19Ci0KLVBs
YXRmb3JtM0RPYmplY3QgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOjpsaW5rUHJvZ3JhbShQ
bGF0Zm9ybTNET2JqZWN0IHZlcnRleFNoYWRlciwgUGxhdGZvcm0zRE9iamVjdCBmcmFnbWVudFNo
YWRlcikKLXsKLSAgICBQbGF0Zm9ybTNET2JqZWN0IHByb2dyYW0gPSBtX2NvbnRleHQtPmNyZWF0
ZVByb2dyYW0oKTsKLSAgICBtX2NvbnRleHQtPmF0dGFjaFNoYWRlcihwcm9ncmFtLCB2ZXJ0ZXhT
aGFkZXIpOwotICAgIG1fY29udGV4dC0+YXR0YWNoU2hhZGVyKHByb2dyYW0sIGZyYWdtZW50U2hh
ZGVyKTsKLSAgICBtX2NvbnRleHQtPmxpbmtQcm9ncmFtKHByb2dyYW0pOwotICAgIAotICAgIGlu
dCBsaW5rZWQgPSAwOwotICAgIG1fY29udGV4dC0+Z2V0UHJvZ3JhbWl2KHByb2dyYW0sIEdyYXBo
aWNzQ29udGV4dDNEOjpMSU5LX1NUQVRVUywgJmxpbmtlZCk7Ci0gICAgaWYgKCFsaW5rZWQpIHsK
LSAgICAgICAgLy8gRklYTUU6IEludmFsaWQgdmVydGV4L2ZyYWdtZW50IHNoYWRlciBjb21iaW5h
dGlvbi4gVGhyb3cgc29tZSBlcnJvcnMgaGVyZS4KLSAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NDE2Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRl
UHJvZ3JhbShwcm9ncmFtKTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotICAgIAotICAgIHJl
dHVybiBwcm9ncmFtOwotfQotCi12b2lkIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbTo6aW5p
dGlhbGl6ZVBhcmFtZXRlckxvY2F0aW9ucyhDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFt
VHlwZSkKLXsKLSAgICBtX3Bvc2l0aW9uQXR0cmliTG9jYXRpb24gPSBtX2NvbnRleHQtPmdldEF0
dHJpYkxvY2F0aW9uKG1fcHJvZ3JhbSwgImFfcG9zaXRpb24iKTsKLSAgICBtX3RleEF0dHJpYkxv
Y2F0aW9uID0gbV9jb250ZXh0LT5nZXRBdHRyaWJMb2NhdGlvbihtX3Byb2dyYW0sICJhX3RleENv
b3JkIik7Ci0gICAgbV9tZXNoQXR0cmliTG9jYXRpb24gPSBtX2NvbnRleHQtPmdldEF0dHJpYkxv
Y2F0aW9uKG1fcHJvZ3JhbSwgImFfbWVzaENvb3JkIik7Ci0gICAgbV90cmlhbmdsZUF0dHJpYkxv
Y2F0aW9uID0gbV9jb250ZXh0LT5nZXRBdHRyaWJMb2NhdGlvbihtX3Byb2dyYW0sICJhX3RyaWFu
Z2xlQ29vcmQiKTsKLSAgICBtX21lc2hCb3hMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0VW5pZm9y
bUxvY2F0aW9uKG1fcHJvZ3JhbSwgInVfbWVzaEJveCIpOwotICAgIG1fdGlsZVNpemVMb2NhdGlv
biA9IG1fY29udGV4dC0+Z2V0VW5pZm9ybUxvY2F0aW9uKG1fcHJvZ3JhbSwgInVfdGlsZVNpemUi
KTsKLSAgICBtX21lc2hTaXplTG9jYXRpb24gPSBtX2NvbnRleHQtPmdldFVuaWZvcm1Mb2NhdGlv
bihtX3Byb2dyYW0sICJ1X21lc2hTaXplIik7Ci0gICAgbV9wcm9qZWN0aW9uTWF0cml4TG9jYXRp
b24gPSBtX2NvbnRleHQtPmdldFVuaWZvcm1Mb2NhdGlvbihtX3Byb2dyYW0sICJ1X3Byb2plY3Rp
b25NYXRyaXgiKTsKLSAgICBtX3NhbXBsZXJTaXplTG9jYXRpb24gPSBtX2NvbnRleHQtPmdldFVu
aWZvcm1Mb2NhdGlvbihtX3Byb2dyYW0sICJ1X3RleHR1cmVTaXplIik7Ci0gICAgbV9jb250ZW50
U2FtcGxlckxvY2F0aW9uID0gbV9jb250ZXh0LT5nZXRVbmlmb3JtTG9jYXRpb24obV9wcm9ncmFt
LCAidV9jb250ZW50VGV4dHVyZSIpOwotICAgIGlmIChwcm9ncmFtVHlwZSA9PSBQUk9HUkFNX1RZ
UEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRSkgewotICAgICAgICAvLyBXaGVuIHRoZSBhdXRob3Ig
dXNlcyB0aGUgQ1NTIG1peCBmdW5jdGlvbiBpbiBhIGN1c3RvbSBmaWx0ZXIsIFdlYktpdCBhZGRz
IHRoZSBpbnRlcm5hbAotICAgICAgICAvLyBzeW1ib2wgY3NzX3VfdGV4dHVyZSB0byB0aGUgc2hh
ZGVyIGNvZGUsIHdoaWNoIHJlZmVyZW5jZXMgdGhlIHRleHR1cmUgb2YgdGhlIGVsZW1lbnQuCi0g
ICAgICAgIG1fc2FtcGxlckxvY2F0aW9uID0gbV9jb250ZXh0LT5nZXRVbmlmb3JtTG9jYXRpb24o
bV9wcm9ncmFtLCAiY3NzX3VfdGV4dHVyZSIpOwotICAgIH0KLX0KLQotaW50IEN1c3RvbUZpbHRl
ckNvbXBpbGVkUHJvZ3JhbTo6dW5pZm9ybUxvY2F0aW9uQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFt
ZSkKLXsKLSAgICBBU1NFUlQobV9pc0luaXRpYWxpemVkKTsKLSAgICAvLyBGSVhNRTogSW1wcm92
ZSB0aGlzIGJ5IGNhY2hpbmcgdGhlIHVuaWZvcm0gbG9jYXRpb25zLgotICAgIHJldHVybiBtX2Nv
bnRleHQtPmdldFVuaWZvcm1Mb2NhdGlvbihtX3Byb2dyYW0sIG5hbWUpOwotfQotICAgIAotQ3Vz
dG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOjp+Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtKCkK
LXsKLSAgICBpZiAobV9wcm9ncmFtKSB7Ci0gICAgICAgIG1fY29udGV4dC0+bWFrZUNvbnRleHRD
dXJyZW50KCk7Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlUHJvZ3JhbShtX3Byb2dyYW0pOwot
ICAgIH0KLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotI2VuZGlmIC8vIEVOQUJMRShDU1Nf
U0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVkYmYwZDQuLjAw
MDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaAorKysgL2Rldi9udWxsCkBAIC0xLDk5ICswLDAgQEAK
LS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KA
nSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0g
KiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtX2gKLQot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5o
IgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3Ry
aW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyR2xvYmFs
Q29udGV4dDsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOiBwdWJsaWMgUmVm
Q291bnRlZDxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IHsKLXB1YmxpYzoKLSAgICBzdGF0
aWMgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IGNyZWF0ZShQYXNzUmVm
UHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIHZhbGlkYXRlZFZl
cnRleFNoYWRlciwgY29uc3QgU3RyaW5nJiB2YWxpZGF0ZWRGcmFnbWVudFNoYWRlciwgQ3VzdG9t
RmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUpCi0gICAgewotICAgICAgICByZXR1cm4gYWRv
cHRSZWYobmV3IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbShjb250ZXh0LCB2YWxpZGF0ZWRW
ZXJ0ZXhTaGFkZXIsIHZhbGlkYXRlZEZyYWdtZW50U2hhZGVyLCBwcm9ncmFtVHlwZSkpOwotICAg
IH0KLSAgICAKLSAgICB+Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtKCk7Ci0gICAgCi0gICAg
aW50IHBvc2l0aW9uQXR0cmliTG9jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX3Bvc2l0aW9uQXR0
cmliTG9jYXRpb247IH0KLSAgICBpbnQgdGV4QXR0cmliTG9jYXRpb24oKSBjb25zdCB7IHJldHVy
biBtX3RleEF0dHJpYkxvY2F0aW9uOyB9Ci0gICAgaW50IG1lc2hBdHRyaWJMb2NhdGlvbigpIGNv
bnN0IHsgcmV0dXJuIG1fbWVzaEF0dHJpYkxvY2F0aW9uOyB9Ci0gICAgaW50IHRyaWFuZ2xlQXR0
cmliTG9jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX3RyaWFuZ2xlQXR0cmliTG9jYXRpb247IH0K
LSAgICBpbnQgbWVzaEJveExvY2F0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoQm94TG9jYXRp
b247IH0KLSAgICBpbnQgcHJvamVjdGlvbk1hdHJpeExvY2F0aW9uKCkgY29uc3QgeyByZXR1cm4g
bV9wcm9qZWN0aW9uTWF0cml4TG9jYXRpb247IH0KLSAgICBpbnQgdGlsZVNpemVMb2NhdGlvbigp
IGNvbnN0IHsgcmV0dXJuIG1fdGlsZVNpemVMb2NhdGlvbjsgfQotICAgIGludCBtZXNoU2l6ZUxv
Y2F0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoU2l6ZUxvY2F0aW9uOyB9Ci0gICAgaW50IHNh
bXBsZXJMb2NhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fc2FtcGxlckxvY2F0aW9uOyB9Ci0gICAg
aW50IGNvbnRlbnRTYW1wbGVyTG9jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX2NvbnRlbnRTYW1w
bGVyTG9jYXRpb247IH0KLSAgICBpbnQgc2FtcGxlclNpemVMb2NhdGlvbigpIGNvbnN0IHsgcmV0
dXJuIG1fc2FtcGxlclNpemVMb2NhdGlvbjsgfQotCi0gICAgaW50IHVuaWZvcm1Mb2NhdGlvbkJ5
TmFtZShjb25zdCBTdHJpbmcmKTsKLSAgICAKLSAgICBib29sIGlzSW5pdGlhbGl6ZWQoKSBjb25z
dCB7IHJldHVybiBtX2lzSW5pdGlhbGl6ZWQ7IH0KLSAgICAKLSAgICBQbGF0Zm9ybTNET2JqZWN0
IHByb2dyYW0oKSBjb25zdCB7IHJldHVybiBtX3Byb2dyYW07IH0KLXByaXZhdGU6Ci0gICAgQ3Vz
dG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtKFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+LCBj
b25zdCBTdHJpbmcmIHZhbGlkYXRlZFZlcnRleFNoYWRlciwgY29uc3QgU3RyaW5nJiB2YWxpZGF0
ZWRGcmFnbWVudFNoYWRlciwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUpOwotICAgIAotICAgIFBs
YXRmb3JtM0RPYmplY3QgY29tcGlsZVNoYWRlcihHQzNEZW51bSBzaGFkZXJUeXBlLCBjb25zdCBT
dHJpbmcmIHNoYWRlclN0cmluZyk7Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBsaW5rUHJvZ3JhbShQ
bGF0Zm9ybTNET2JqZWN0IHZlcnRleFNoYWRlciwgUGxhdGZvcm0zRE9iamVjdCBmcmFnbWVudFNo
YWRlcik7Ci0gICAgdm9pZCBpbml0aWFsaXplUGFyYW1ldGVyTG9jYXRpb25zKEN1c3RvbUZpbHRl
clByb2dyYW1UeXBlKTsKLSAgICAKLSAgICBSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IG1fY29u
dGV4dDsKLSAgICBQbGF0Zm9ybTNET2JqZWN0IG1fcHJvZ3JhbTsKLSAgICAKLSAgICBpbnQgbV9w
b3NpdGlvbkF0dHJpYkxvY2F0aW9uOwotICAgIGludCBtX3RleEF0dHJpYkxvY2F0aW9uOwotICAg
IGludCBtX21lc2hBdHRyaWJMb2NhdGlvbjsKLSAgICBpbnQgbV90cmlhbmdsZUF0dHJpYkxvY2F0
aW9uOwotICAgIGludCBtX21lc2hCb3hMb2NhdGlvbjsKLSAgICBpbnQgbV9wcm9qZWN0aW9uTWF0
cml4TG9jYXRpb247Ci0gICAgaW50IG1fdGlsZVNpemVMb2NhdGlvbjsKLSAgICBpbnQgbV9tZXNo
U2l6ZUxvY2F0aW9uOwotICAgIGludCBtX3NhbXBsZXJMb2NhdGlvbjsKLSAgICBpbnQgbV9zYW1w
bGVyU2l6ZUxvY2F0aW9uOwotICAgIGludCBtX2NvbnRlbnRTYW1wbGVyTG9jYXRpb247Ci0gICAg
Ci0gICAgYm9vbCBtX2lzSW5pdGlhbGl6ZWQ7Ci19OwotCi19Ci0KLSNlbmRpZiAvLyBFTkFCTEUo
Q1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbnN0
YW50cy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21G
aWx0ZXJDb25zdGFudHMuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTU5ZGJjOC4u
MDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlckNvbnN0YW50cy5oCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
Ci0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJDb25zdGFu
dHNfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJDb25zdGFudHNfaAotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLWVudW0gQ3VzdG9tRmlsdGVyTWVzaENvbnN0YW50cyB7Ci0gICAgLy8gVmVydGV4IGF0
dHJpYnV0ZSBzaXplcwotICAgIFBvc2l0aW9uQXR0cmliU2l6ZSA9IDQsCi0gICAgVGV4QXR0cmli
U2l6ZSA9IDIsCi0gICAgTWVzaEF0dHJpYlNpemUgPSAyLAotICAgIFRyaWFuZ2xlQXR0cmliU2l6
ZSA9IDMsCi0gICAgLy8gVmVydGV4IGF0dHJpYnV0ZSBvZmZzZXRzCi0gICAgUG9zaXRpb25BdHRy
aWJPZmZzZXQgPSAwLAotICAgIFRleEF0dHJpYk9mZnNldCA9IFBvc2l0aW9uQXR0cmliT2Zmc2V0
ICsgUG9zaXRpb25BdHRyaWJTaXplICogc2l6ZW9mKGZsb2F0KSwKLSAgICBNZXNoQXR0cmliT2Zm
c2V0ID0gVGV4QXR0cmliT2Zmc2V0ICsgVGV4QXR0cmliU2l6ZSAqIHNpemVvZihmbG9hdCksCi0g
ICAgVHJpYW5nbGVBdHRyaWJPZmZzZXQgPSBNZXNoQXR0cmliT2Zmc2V0ICsgTWVzaEF0dHJpYlNp
emUgKiBzaXplb2YoZmxvYXQpCi19OwotCi1lbnVtIEN1c3RvbUZpbHRlck1lc2hUeXBlIHsKLSAg
ICBNZXNoVHlwZUF0dGFjaGVkLAotICAgIE1lc2hUeXBlRGV0YWNoZWQKLX07Ci0KLWVudW0gQ3Vz
dG9tRmlsdGVyUHJvZ3JhbVR5cGUgewotICAgIFBST0dSQU1fVFlQRV9OT19FTEVNRU5UX1RFWFRV
UkUsCi0gICAgUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUKLX07Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEN1c3RvbUZpbHRlckNvbnN0YW50c19oCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggODcxMzIzOC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3BwCisrKyAv
ZGV2L251bGwKQEAgLTEsOTMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9i
ZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0Uo
M0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIgotCi0j
aW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0M0QuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1D
dXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0OjpDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0KCkKLXsK
LX0KLQotQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dDo6fkN1c3RvbUZpbHRlckdsb2JhbENvbnRl
eHQoKQotewotfQotCi1BTkdMRVdlYktpdEJyaWRnZSogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dDo6d2ViZ2xTaGFkZXJWYWxpZGF0b3IoKQotewotICAgIGlmICghbV93ZWJnbFNoYWRlclZhbGlk
YXRvcikKLSAgICAgICAgbV93ZWJnbFNoYWRlclZhbGlkYXRvciA9IGNyZWF0ZVNoYWRlclZhbGlk
YXRvcihTSF9XRUJHTF9TUEVDKTsKLSAgICByZXR1cm4gbV93ZWJnbFNoYWRlclZhbGlkYXRvci5n
ZXQoKTsKLX0KLQotQU5HTEVXZWJLaXRCcmlkZ2UqIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQ6
Om1peFNoYWRlclZhbGlkYXRvcigpCi17Ci0gICAgaWYgKCFtX21peFNoYWRlclZhbGlkYXRvcikK
LSAgICAgICAgbV9taXhTaGFkZXJWYWxpZGF0b3IgPSBjcmVhdGVTaGFkZXJWYWxpZGF0b3IoU0hf
Q1NTX1NIQURFUlNfU1BFQyk7Ci0gICAgcmV0dXJuIG1fbWl4U2hhZGVyVmFsaWRhdG9yLmdldCgp
OwotfQotCi1QYXNzT3duUHRyPEFOR0xFV2ViS2l0QnJpZGdlPiBDdXN0b21GaWx0ZXJHbG9iYWxD
b250ZXh0OjpjcmVhdGVTaGFkZXJWYWxpZGF0b3IoU2hTaGFkZXJTcGVjIHNoYWRlclNwZWMpCi17
Ci0gICAgT3duUHRyPEFOR0xFV2ViS2l0QnJpZGdlPiB2YWxpZGF0b3IgPSBhZG9wdFB0cihuZXcg
QU5HTEVXZWJLaXRCcmlkZ2UoU0hfRVNTTF9PVVRQVVQsIHNoYWRlclNwZWMpKTsKLSAgICBTaEJ1
aWx0SW5SZXNvdXJjZXMgcmVzb3VyY2VzOwotICAgIFNoSW5pdEJ1aWx0SW5SZXNvdXJjZXMoJnJl
c291cmNlcyk7Ci0gICAgdmFsaWRhdG9yLT5zZXRSZXNvdXJjZXMocmVzb3VyY2VzKTsKLSAgICBy
ZXR1cm4gdmFsaWRhdG9yLnJlbGVhc2UoKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJHbG9iYWxD
b250ZXh0OjpwcmVwYXJlQ29udGV4dElmTmVlZGVkKEhvc3RXaW5kb3cqIGhvc3RXaW5kb3csIGJv
b2wgZm9yY2VTb2Z0d2FyZVJlbmRlcmluZykKLXsKLSAgICBpZiAobV9jb250ZXh0LmdldCgpKQot
ICAgICAgICByZXR1cm47Ci0KLSAgICBHcmFwaGljc0NvbnRleHQzRDo6QXR0cmlidXRlcyBhdHRy
aWJ1dGVzOwotICAgIGF0dHJpYnV0ZXMucHJlc2VydmVEcmF3aW5nQnVmZmVyID0gdHJ1ZTsKLSAg
ICBhdHRyaWJ1dGVzLnByZW11bHRpcGxpZWRBbHBoYSA9IGZhbHNlOwotICAgIGF0dHJpYnV0ZXMu
c2hhcmVSZXNvdXJjZXMgPSB0cnVlOwotICAgIGF0dHJpYnV0ZXMucHJlZmVyRGlzY3JldGVHUFUg
PSB0cnVlOwotCi0gICAgaWYgKGZvcmNlU29mdHdhcmVSZW5kZXJpbmcpCi0gICAgICAgIGF0dHJp
YnV0ZXMuZm9yY2VTb2Z0d2FyZVJlbmRlcmVyID0gdHJ1ZTsKLQotICAgIG1fY29udGV4dCA9IEdy
YXBoaWNzQ29udGV4dDNEOjpjcmVhdGUoYXR0cmlidXRlcywgaG9zdFdpbmRvdywgR3JhcGhpY3ND
b250ZXh0M0Q6OlJlbmRlck9mZnNjcmVlbik7Ci0gICAgaWYgKCFtX2NvbnRleHQpCi0gICAgICAg
IHJldHVybjsKLSAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotICAgIG1fY29u
dGV4dC0+ZW5hYmxlKEdyYXBoaWNzQ29udGV4dDNEOjpERVBUSF9URVNUKTsKLX0KLQotfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0Uo
M0RfR1JBUEhJQ1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZThmNmJkLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dC5oCisrKyAvZGV2L251bGwKQEAgLTEsNzcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
Ci0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
Ci0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1B
R0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0X2gKLSNkZWZpbmUg
Q3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dF9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYm
IFVTRSgzRF9HUkFQSElDUykKLSNpbmNsdWRlICJBTkdMRVdlYktpdEJyaWRnZS5oIgotI2luY2x1
ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgotCi1uYW1lc3BhY2Ug
V2ViQ29yZSB7Ci0KLWNsYXNzIEhvc3RXaW5kb3c7Ci1jbGFzcyBHcmFwaGljc0NvbnRleHQzRDsK
LQotY2xhc3MgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCB7Ci1wdWJsaWM6Ci0gICAgQ3VzdG9t
RmlsdGVyR2xvYmFsQ29udGV4dCgpOwotICAgIH5DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0KCk7
Ci0gICAgCi0gICAgR3JhcGhpY3NDb250ZXh0M0QqIGNvbnRleHQoKSBjb25zdCB7IHJldHVybiBt
X2NvbnRleHQuZ2V0KCk7IH0KLQotICAgIC8vIENTUyBzaGFkZXJzIG5vdCByZWZlcmVuY2VkIGZy
b20gdGhlIENTUyBtaXggZnVuY3Rpb24gc2hvdWxkIGJlIHZhbGlkYXRlZCBqdXN0IGxpa2UgcmVn
dWxhciBXZWJHTCBzaGFkZXJzLgotICAgIC8vIFRoaXMgQU5HTEUgdmFsaWRhdG9yIHVzZXMgdGhl
IFNIX1dFQkdMX1NQRUMgZmxhZy4KLSAgICBBTkdMRVdlYktpdEJyaWRnZSogd2ViZ2xTaGFkZXJW
YWxpZGF0b3IoKTsKLQotICAgIC8vIENTUyBzaGFkZXJzIHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NT
IG1peCBmdW5jdGlvbiBzaG91bGQgYmUgdmFsaWRhdGVkIHNsaWdodGx5IGRpZmZlcmVudGx5IHRo
YW4gV2ViR0wgc2hhZGVycy4KLSAgICAvLyBUaGlzIEFOR0xFIHZhbGlkYXRvciB1c2VzIHRoZSBT
SF9DU1NfU0hBREVSU19TUEVDIGZsYWcuCi0gICAgLy8gVW5kZXIgdGhpcyBmbGFnLCBtb3N0IG5v
dGFibHk6Ci0gICAgLy8gLSBUaGUgImdsX0ZyYWdDb2xvciIgYnVpbHQtaW4gaXMgbm90IGF2YWls
YWJsZS4KLSAgICAvLyAtIEluc3RlYWQsIHRoZSAiY3NzX01peENvbG9yIiBhbmQgImNzc19Db2xv
ck1hdHJpeCIgYnVpbHQtaW5zIGFyZSBhdmFpbGFibGUuCi0gICAgLy8gLSBUaGUgImNzc18iIHBy
ZWZpeCBpcyByZXNlcnZlZC4KLSAgICAvLyAtIEluIHRoZSB0cmFuc2xhdGVkIHNvdXJjZSB0aGF0
IEFOR0xFIHJldHVybnMsIEFOR0xFIHJlbmFtZXMgdGhlIGF1dGhvcidzICJtYWluIiBmdW5jdGlv
biB0byAiY3NzX21haW4iLgotICAgIC8vIFRoZSBjb21wbGV0ZSBkZXRhaWxzIGFyZSBkb2N1bWVu
dGVkIGluIEFOR0xFL1NoYWRlckxhbmcuaC4KLSAgICBBTkdMRVdlYktpdEJyaWRnZSogbWl4U2hh
ZGVyVmFsaWRhdG9yKCk7Ci0gICAgCi0gICAgdm9pZCBwcmVwYXJlQ29udGV4dElmTmVlZGVkKEhv
c3RXaW5kb3cqLCBib29sIGZvcmNlU29mdHdhcmVSZW5kZXJpbmcpOwotcHJpdmF0ZToKLSAgICBz
dGF0aWMgUGFzc093blB0cjxBTkdMRVdlYktpdEJyaWRnZT4gY3JlYXRlU2hhZGVyVmFsaWRhdG9y
KFNoU2hhZGVyU3BlYyk7Ci0KLSAgICBSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IG1fY29udGV4
dDsKLSAgICBPd25QdHI8QU5HTEVXZWJLaXRCcmlkZ2U+IG1fd2ViZ2xTaGFkZXJWYWxpZGF0b3I7
Ci0gICAgT3duUHRyPEFOR0xFV2ViS2l0QnJpZGdlPiBtX21peFNoYWRlclZhbGlkYXRvcjsKLX07
Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVS
UykgJiYgVVNFKDNEX0dSQVBISUNTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyR2xvYmFsQ29u
dGV4dF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlck1lc2guY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggZWZmMDc4OC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNzIg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9y
YXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKA
nEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJF
Ci0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZp
Zy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5j
bHVkZSAiQ3VzdG9tRmlsdGVyTWVzaC5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck1lc2hHZW5l
cmF0b3IuaCIKLSNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5oIgotCi1uYW1lc3BhY2UgV2Vi
Q29yZSB7Ci0KLUN1c3RvbUZpbHRlck1lc2g6OkN1c3RvbUZpbHRlck1lc2goR3JhcGhpY3NDb250
ZXh0M0QqIGNvbnRleHQsIHVuc2lnbmVkIGNvbHVtbnMsIHVuc2lnbmVkIHJvd3MsCi0gICAgY29u
c3QgRmxvYXRSZWN0JiBtZXNoQm94LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAg
ICA6IG1fY29udGV4dChjb250ZXh0KQotICAgICwgbV92ZXJ0aWNlc0J1ZmZlck9iamVjdCgwKQot
ICAgICwgbV9lbGVtZW50c0J1ZmZlck9iamVjdCgwKQotICAgICwgbV9tZXNoQm94KG1lc2hCb3gp
Ci0gICAgLCBtX21lc2hUeXBlKG1lc2hUeXBlKQotewotICAgIEN1c3RvbUZpbHRlck1lc2hHZW5l
cmF0b3IgZ2VuZXJhdG9yKGNvbHVtbnMsIHJvd3MsIG1lc2hCb3gsIG1lc2hUeXBlKTsKLSAgICBt
X2luZGljZXNDb3VudCA9IGdlbmVyYXRvci5pbmRpY2VzQ291bnQoKTsKLSAgICBtX2J5dGVzUGVy
VmVydGV4ID0gZ2VuZXJhdG9yLmZsb2F0c1BlclZlcnRleCgpICogc2l6ZW9mKGZsb2F0KTsgICAg
Ci0KLSAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotCi0gICAgbV92ZXJ0aWNl
c0J1ZmZlck9iamVjdCA9IG1fY29udGV4dC0+Y3JlYXRlQnVmZmVyKCk7Ci0gICAgbV9jb250ZXh0
LT5iaW5kQnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpBUlJBWV9CVUZGRVIsIG1fdmVydGljZXNC
dWZmZXJPYmplY3QpOwotICAgIG1fY29udGV4dC0+YnVmZmVyRGF0YShHcmFwaGljc0NvbnRleHQz
RDo6QVJSQVlfQlVGRkVSLCBnZW5lcmF0b3IudmVydGljZXMoKS5zaXplKCkgKiBzaXplb2YoZmxv
YXQpLCBnZW5lcmF0b3IudmVydGljZXMoKS5kYXRhKCksIEdyYXBoaWNzQ29udGV4dDNEOjpTVEFU
SUNfRFJBVyk7Ci0gICAgCi0gICAgbV9lbGVtZW50c0J1ZmZlck9iamVjdCA9IG1fY29udGV4dC0+
Y3JlYXRlQnVmZmVyKCk7Ci0gICAgbV9jb250ZXh0LT5iaW5kQnVmZmVyKEdyYXBoaWNzQ29udGV4
dDNEOjpFTEVNRU5UX0FSUkFZX0JVRkZFUiwgbV9lbGVtZW50c0J1ZmZlck9iamVjdCk7Ci0gICAg
bV9jb250ZXh0LT5idWZmZXJEYXRhKEdyYXBoaWNzQ29udGV4dDNEOjpFTEVNRU5UX0FSUkFZX0JV
RkZFUiwgZ2VuZXJhdG9yLmluZGljZXMoKS5zaXplKCkgKiBzaXplb2YodWludDE2X3QpLCBnZW5l
cmF0b3IuaW5kaWNlcygpLmRhdGEoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OlNUQVRJQ19EUkFXKTsK
LX0KLQotQ3VzdG9tRmlsdGVyTWVzaDo6fkN1c3RvbUZpbHRlck1lc2goKQotewotICAgIG1fY29u
dGV4dC0+bWFrZUNvbnRleHRDdXJyZW50KCk7Ci0gICAgbV9jb250ZXh0LT5kZWxldGVCdWZmZXIo
bV92ZXJ0aWNlc0J1ZmZlck9iamVjdCk7Ci0gICAgbV9jb250ZXh0LT5kZWxldGVCdWZmZXIobV9l
bGVtZW50c0J1ZmZlck9iamVjdCk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2Vu
ZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
ck1lc2guaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyTWVzaC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyYmIzZDVhLi4wMDAw
MDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyTWVzaC5oCisrKyAvZGV2L251bGwKQEAgLTEsODAgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJNZXNoX2gKLSNkZWZpbmUg
Q3VzdG9tRmlsdGVyTWVzaF9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9H
UkFQSElDUykKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUg
IkZsb2F0UmVjdC5oIgotI2luY2x1ZGUgIkdyYXBoaWNzVHlwZXMzRC5oIgotI2luY2x1ZGUgPHd0
Zi9SZWZDb3VudGVkLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgR3JhcGhpY3ND
b250ZXh0M0Q7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlck1lc2ggOiBwdWJsaWMgUmVmQ291bnRlZDxD
dXN0b21GaWx0ZXJNZXNoPiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8Q3VzdG9t
RmlsdGVyTWVzaD4gY3JlYXRlKEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0LCB1bnNpZ25lZCBj
b2xzLCB1bnNpZ25lZCByb3dzLCBjb25zdCBGbG9hdFJlY3QmIG1lc2hCb3gsIEN1c3RvbUZpbHRl
ck1lc2hUeXBlIG1lc2hUeXBlKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBD
dXN0b21GaWx0ZXJNZXNoKGNvbnRleHQsIGNvbHMsIHJvd3MsIG1lc2hCb3gsIG1lc2hUeXBlKSk7
Ci0gICAgfQotICAgIH5DdXN0b21GaWx0ZXJNZXNoKCk7Ci0KLSAgICBQbGF0Zm9ybTNET2JqZWN0
IHZlcnRpY2VzQnVmZmVyT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV92ZXJ0aWNlc0J1ZmZlck9i
amVjdDsgfQotICAgIHVuc2lnbmVkIGJ5dGVzUGVyVmVydGV4KCkgY29uc3QgeyByZXR1cm4gbV9i
eXRlc1BlclZlcnRleDsgfQotICAgIAotICAgIFBsYXRmb3JtM0RPYmplY3QgZWxlbWVudHNCdWZm
ZXJPYmplY3QoKSBjb25zdCB7IHJldHVybiBtX2VsZW1lbnRzQnVmZmVyT2JqZWN0OyB9Ci0gICAg
dW5zaWduZWQgaW5kaWNlc0NvdW50KCkgY29uc3QgeyByZXR1cm4gbV9pbmRpY2VzQ291bnQ7IH0K
LSAgICAKLSAgICBjb25zdCBGbG9hdFJlY3QmIG1lc2hCb3goKSBjb25zdCB7IHJldHVybiBtX21l
c2hCb3g7IH0KLSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSgpIGNvbnN0IHsgcmV0
dXJuIG1fbWVzaFR5cGU7IH0KLQotcHJpdmF0ZToKLSAgICBDdXN0b21GaWx0ZXJNZXNoKEdyYXBo
aWNzQ29udGV4dDNEKiwgdW5zaWduZWQgY29scywgdW5zaWduZWQgcm93cywgY29uc3QgRmxvYXRS
ZWN0JiBtZXNoQm94LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSk7Ci0gICAgCi0gICAgR3JhcGhpY3ND
b250ZXh0M0QqIG1fY29udGV4dDsKLSAgICAKLSAgICBQbGF0Zm9ybTNET2JqZWN0IG1fdmVydGlj
ZXNCdWZmZXJPYmplY3Q7Ci0gICAgdW5zaWduZWQgbV9ieXRlc1BlclZlcnRleDsKLSAgICAKLSAg
ICBQbGF0Zm9ybTNET2JqZWN0IG1fZWxlbWVudHNCdWZmZXJPYmplY3Q7Ci0gICAgdW5zaWduZWQg
bV9pbmRpY2VzQ291bnQ7Ci0gICAgCi0gICAgRmxvYXRSZWN0IG1fbWVzaEJveDsKLSAgICBDdXN0
b21GaWx0ZXJNZXNoVHlwZSBtX21lc2hUeXBlOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0K
LSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJNZXNoX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1l
c2hHZW5lcmF0b3IuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3NzQ2OTE0Li4w
MDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3Vz
dG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwxNzMgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICog
YXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT
4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YK
LSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgot
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLSNp
Zm5kZWYgTkRFQlVHCi0vLyBVc2UgImNhbGwgJ1dlYkNvcmU6OnNfZHVtcEN1c3RvbUZpbHRlck1l
c2hCdWZmZXJzJyA9IDEiIGluIEdEQiB0byBhY3RpdmF0ZSBwcmludGluZyBvZiB0aGUgbWVzaCBi
dWZmZXJzLgotc3RhdGljIGJvb2wgc19kdW1wQ3VzdG9tRmlsdGVyTWVzaEJ1ZmZlcnMgPSBmYWxz
ZTsKLSNlbmRpZgotCi1DdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjpDdXN0b21GaWx0ZXJNZXNo
R2VuZXJhdG9yKHVuc2lnbmVkIGNvbHVtbnMsIHVuc2lnbmVkIHJvd3MsIGNvbnN0IEZsb2F0UmVj
dCYgbWVzaEJveCwgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAgOiBtX21lc2hU
eXBlKG1lc2hUeXBlKQotICAgICwgbV9wb2ludHMoY29sdW1ucyArIDEsIHJvd3MgKyAxKQotICAg
ICwgbV90aWxlcyhjb2x1bW5zLCByb3dzKQotICAgICwgbV90aWxlU2l6ZUluUGl4ZWxzKG1lc2hC
b3gud2lkdGgoKSAvIG1fdGlsZXMud2lkdGgoKSwgbWVzaEJveC5oZWlnaHQoKSAvIG1fdGlsZXMu
aGVpZ2h0KCkpCi0gICAgLCBtX3RpbGVTaXplSW5EZXZpY2VTcGFjZSgxLjBmIC8gbV90aWxlcy53
aWR0aCgpLCAxLjBmIC8gbV90aWxlcy5oZWlnaHQoKSkKLSAgICAsIG1fbWVzaEJveChtZXNoQm94
KQotewotICAgIC8vIEJ1aWxkIHRoZSB0d28gYnVmZmVycyBuZWVkZWQgdG8gZHJhdyB0cmlhbmds
ZXM6Ci0gICAgLy8gKiBtX3ZlcnRpY2VzIGhhcyBhIG51bWJlciBvZiBmbG9hdCBhdHRyaWJ1dGVz
IHRoYXQgd2lsbCBiZSBwYXNzZWQgdG8gdGhlIHZlcnRleCBzaGFkZXIKLSAgICAvLyBmb3IgZWFj
aCBjb21wdXRlZCB2ZXJ0ZXguIFRoaXMgbnVtYmVyIGlzIGNhbGN1bGF0ZWQgaW4gZmxvYXRzUGVy
VmVydGV4KCkgYmFzZWQgb24gdGhlIG1lc2hUeXBlLgotICAgIC8vICogbV9pbmRpY2VzIGlzIGEg
YnVmZmVyIHRoYXQgd2lsbCBoYXZlIDMgaW5kaWNlcyBwZXIgdHJpYW5nbGUuIEVhY2ggaW5kZXgg
d2lsbCBwb2ludCBpbnNpZGUKLSAgICAvLyB0aGUgbV92ZXJ0aWNlcyBidWZmZXIuCi0gICAgbV92
ZXJ0aWNlcy5yZXNlcnZlQ2FwYWNpdHkodmVydGljZXNDb3VudCgpICogZmxvYXRzUGVyVmVydGV4
KCkpOwotICAgIG1faW5kaWNlcy5yZXNlcnZlQ2FwYWNpdHkoaW5kaWNlc0NvdW50KCkpOwotCi0g
ICAgLy8gQmFzZWQgb24gdGhlIG1lc2hUeXBlIHRoZXJlIGNhbiBiZSB0d28gdHlwZXMgb2YgbWVz
aGVzLgotICAgIC8vICogYXR0YWNoZWQ6IGVhY2ggdHJpYW5nbGUgdXNlcyB2ZXJ0aWNlcyBmcm9t
IHRoZSBuZWlnaGJvciB0cmlhbmdsZXMuIFRoaXMgaXMgdXNlZnVsIHRvIHNhdmUgc29tZSBHUFUg
bWVtb3J5Ci0gICAgLy8gd2hlbiB0aGVyZSdzIG5vIG5lZWQgdG8gZXhwbG9kZSB0aGUgdGlsZXMu
Ci0gICAgLy8gKiBkZXRhY2hlZDogZWFjaCB0cmlhbmdsZSBoYXMgaXRzIG93biB2ZXJ0aWNlcy4g
VGhpcyBtZWFucyBlYWNoIHRyaWFuZ2xlIGNhbiBiZSBtb3ZlZCBpbmRlcGVuZGVudGx5IGFuZCBh
IHZlYzMKLSAgICAvLyBhdHRyaWJ1dGUgaXMgcGFzc2VkLCBzbyB0aGF0IGVhY2ggdmVydGV4IGNh
biBiZSB1bmlxdWVseSBpZGVudGlmaWVkLgotICAgIGlmIChtX21lc2hUeXBlID09IE1lc2hUeXBl
QXR0YWNoZWQpCi0gICAgICAgIGdlbmVyYXRlQXR0YWNoZWRNZXNoKCk7Ci0gICAgZWxzZQotICAg
ICAgICBnZW5lcmF0ZURldGFjaGVkTWVzaCgpOwotCi0jaWZuZGVmIE5ERUJVRwotICAgIGlmIChz
X2R1bXBDdXN0b21GaWx0ZXJNZXNoQnVmZmVycykKLSAgICAgICAgZHVtcEJ1ZmZlcnMoKTsKLSNl
bmRpZgotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6OmFkZEF0dGFjaGVkTWVz
aEluZGV4KGludCBxdWFkWCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZ
LCBpbnQgdHJpYW5nbGUpCi17Ci0gICAgVU5VU0VEX1BBUkFNKHRyaWFuZ2xlKTsKLSAgICBtX2lu
ZGljZXMuYXBwZW5kKChxdWFkWSArIHRyaWFuZ2xlWSkgKiBtX3BvaW50cy53aWR0aCgpICsgKHF1
YWRYICsgdHJpYW5nbGVYKSk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6
Z2VuZXJhdGVBdHRhY2hlZE1lc2goKQotewotICAgIGZvciAoaW50IGogPSAwOyBqIDwgbV9wb2lu
dHMuaGVpZ2h0KCk7ICsraikgewotICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IG1fcG9pbnRz
LndpZHRoKCk7ICsraSkKLSAgICAgICAgICAgIGFkZEF0dGFjaGVkTWVzaFZlcnRleEF0dHJpYnV0
ZXMoaSwgaik7Ci0gICAgfQotCi0gICAgZm9yIChpbnQgaiA9IDA7IGogPCBtX3RpbGVzLmhlaWdo
dCgpOyArK2opIHsKLSAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBtX3RpbGVzLndpZHRoKCk7
ICsraSkKLSAgICAgICAgICAgIGFkZFRpbGU8JkN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6OmFk
ZEF0dGFjaGVkTWVzaEluZGV4PihpLCBqKTsKLSAgICB9Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVy
TWVzaEdlbmVyYXRvcjo6YWRkRGV0YWNoZWRNZXNoVmVydGV4QW5kSW5kZXgoaW50IHF1YWRYLCBp
bnQgcXVhZFksIGludCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGludCB0cmlhbmdsZSkKLXsK
LSAgICBhZGREZXRhY2hlZE1lc2hWZXJ0ZXhBdHRyaWJ1dGVzKHF1YWRYLCBxdWFkWSwgdHJpYW5n
bGVYLCB0cmlhbmdsZVksIHRyaWFuZ2xlKTsKLSAgICBtX2luZGljZXMuYXBwZW5kKG1faW5kaWNl
cy5zaXplKCkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6OmdlbmVyYXRl
RGV0YWNoZWRNZXNoKCkKLXsKLSAgICBmb3IgKGludCBqID0gMDsgaiA8IG1fdGlsZXMuaGVpZ2h0
KCk7ICsraikgewotICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IG1fdGlsZXMud2lkdGgoKTsg
KytpKQotICAgICAgICAgICAgYWRkVGlsZTwmQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRk
RGV0YWNoZWRNZXNoVmVydGV4QW5kSW5kZXg+KGksIGopOwotICAgIH0KLX0KLQotdm9pZCBDdXN0
b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjphZGRQb3NpdGlvbkF0dHJpYnV0ZShpbnQgcXVhZFgsIGlu
dCBxdWFkWSkKLXsKLSAgICAvLyB2ZWM0IGFfcG9zaXRpb24KLSAgICBtX3ZlcnRpY2VzLmFwcGVu
ZChtX3RpbGVTaXplSW5QaXhlbHMud2lkdGgoKSAqIHF1YWRYIC0gMC41ZiArIG1fbWVzaEJveC54
KCkpOwotICAgIG1fdmVydGljZXMuYXBwZW5kKG1fdGlsZVNpemVJblBpeGVscy5oZWlnaHQoKSAq
IHF1YWRZIC0gMC41ZiArIG1fbWVzaEJveC55KCkpOwotICAgIG1fdmVydGljZXMuYXBwZW5kKDAu
MGYpOyAvLyB6Ci0gICAgbV92ZXJ0aWNlcy5hcHBlbmQoMS4wZik7Ci19Ci0KLXZvaWQgQ3VzdG9t
RmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRkVGV4Q29vcmRBdHRyaWJ1dGUoaW50IHF1YWRYLCBpbnQg
cXVhZFkpCi17Ci0gICAgLy8gdmVjMiBhX3RleENvb3JkCi0gICAgbV92ZXJ0aWNlcy5hcHBlbmQo
bV90aWxlU2l6ZUluUGl4ZWxzLndpZHRoKCkgKiBxdWFkWCArIG1fbWVzaEJveC54KCkpOwotICAg
IG1fdmVydGljZXMuYXBwZW5kKG1fdGlsZVNpemVJblBpeGVscy5oZWlnaHQoKSAqIHF1YWRZICsg
bV9tZXNoQm94LnkoKSk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRk
TWVzaENvb3JkQXR0cmlidXRlKGludCBxdWFkWCwgaW50IHF1YWRZKQotewotICAgIC8vIHZlYzIg
YV9tZXNoQ29vcmQKLSAgICBtX3ZlcnRpY2VzLmFwcGVuZChtX3RpbGVTaXplSW5EZXZpY2VTcGFj
ZS53aWR0aCgpICogcXVhZFgpOwotICAgIG1fdmVydGljZXMuYXBwZW5kKG1fdGlsZVNpemVJbkRl
dmljZVNwYWNlLmhlaWdodCgpICogcXVhZFkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hH
ZW5lcmF0b3I6OmFkZFRyaWFuZ2xlQ29vcmRBdHRyaWJ1dGUoaW50IHF1YWRYLCBpbnQgcXVhZFks
IGludCB0cmlhbmdsZSkKLXsKLSAgICAvLyB2ZWMzIGFfdHJpYW5nbGVDb29yZAotICAgIG1fdmVy
dGljZXMuYXBwZW5kKHF1YWRYKTsKLSAgICBtX3ZlcnRpY2VzLmFwcGVuZChxdWFkWSk7Ci0gICAg
bV92ZXJ0aWNlcy5hcHBlbmQodHJpYW5nbGUpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hH
ZW5lcmF0b3I6OmFkZEF0dGFjaGVkTWVzaFZlcnRleEF0dHJpYnV0ZXMoaW50IHF1YWRYLCBpbnQg
cXVhZFkpCi17Ci0gICAgYWRkUG9zaXRpb25BdHRyaWJ1dGUocXVhZFgsIHF1YWRZKTsKLSAgICBh
ZGRUZXhDb29yZEF0dHJpYnV0ZShxdWFkWCwgcXVhZFkpOwotICAgIGFkZE1lc2hDb29yZEF0dHJp
YnV0ZShxdWFkWCwgcXVhZFkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6
OmFkZERldGFjaGVkTWVzaFZlcnRleEF0dHJpYnV0ZXMoaW50IHF1YWRYLCBpbnQgcXVhZFksIGlu
dCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGludCB0cmlhbmdsZSkKLXsKLSAgICBhZGRBdHRh
Y2hlZE1lc2hWZXJ0ZXhBdHRyaWJ1dGVzKHF1YWRYICsgdHJpYW5nbGVYLCBxdWFkWSArIHRyaWFu
Z2xlWSk7Ci0gICAgYWRkVHJpYW5nbGVDb29yZEF0dHJpYnV0ZShxdWFkWCwgcXVhZFksIHRyaWFu
Z2xlKTsKLX0KLQotI2lmbmRlZiBOREVCVUcKLXZvaWQgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRv
cjo6ZHVtcEJ1ZmZlcnMoKSBjb25zdAotewotICAgIHByaW50ZigiTWVzaCBidWZmZXJzOiBQb2lu
dHMud2lkdGgoKTogJWQsIFBvaW50cy5oZWlnaHQoKTogJWQgbWVzaEJveDogJWYsICVmLCAlZiwg
JWYsIHR5cGU6ICVzXG4iLAotICAgICAgICBtX3BvaW50cy53aWR0aCgpLCBtX3BvaW50cy5oZWln
aHQoKSwgbV9tZXNoQm94LngoKSwgbV9tZXNoQm94LnkoKSwgbV9tZXNoQm94LndpZHRoKCksIG1f
bWVzaEJveC5oZWlnaHQoKSwKLSAgICAgICAgKG1fbWVzaFR5cGUgPT0gTWVzaFR5cGVBdHRhY2hl
ZCkgPyAiQXR0YWNoZWQiIDogIkRldGFjaGVkIik7Ci0gICAgcHJpbnRmKCItLS1WZXJ0ZXg6XG5c
dCIpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBtX3ZlcnRpY2VzLnNpemUoKTsgKytp
KSB7Ci0gICAgICAgIHByaW50ZigiJWYgIiwgbV92ZXJ0aWNlcy5hdChpKSk7Ci0gICAgICAgIGlm
ICghKChpICsgMSkgJSBmbG9hdHNQZXJWZXJ0ZXgoKSkpCi0gICAgICAgICAgICBwcmludGYoIlxu
XHQiKTsKLSAgICB9Ci0gICAgcHJpbnRmKCJcbi0tLUluZGljZXM6ICIpOwotICAgIGZvciAodW5z
aWduZWQgaSA9IDA7IGkgPCBtX2luZGljZXMuc2l6ZSgpOyArK2kpCi0gICAgICAgIHByaW50Zigi
JWQgIiwgbV9pbmRpY2VzLmF0KGkpKTsKLSAgICBwcmludGYoIlxuIik7Ci19Ci0jZW5kaWYKLQot
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAm
JiBVU0UoM0RfR1JBUEhJQ1MpCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9y
LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdmOWFmNjQuLjAwMDAwMDAKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNo
R2VuZXJhdG9yLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMjYgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yX2gK
LSNkZWZpbmUgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0
YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkZs
b2F0UmVjdC5oIgotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQot
Y2xhc3MgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvciB7Ci1wdWJsaWM6Ci0gICAgLy8gTGluZXMg
YW5kIGNvbHVtbnMgYXJlIHRoZSB2YWx1ZXMgcGFzc2VkIGluIENTUy4gVGhlIHJlc3VsdCBpcyB2
ZXJ0ZXggbWVzaCB0aGF0IGhhcyAncm93cycgbnVtYmVycyBvZiByb3dzCi0gICAgLy8gYW5kICdj
b2x1bW5zJyBudW1iZXIgb2YgY29sdW1ucyB3aXRoIGEgdG90YWwgb2YgJ3Jvd3MgKyAxJyAqICdj
b2x1bW5zICsgMScgdmVydGljZXMuCi0gICAgLy8gTWVzaEJveCBpcyB0aGUgZmlsdGVyZWQgYXJl
YSBjYWxjdWxhdGVkIGRlZmluZWQgdXNpbmcgdGhlIGJvcmRlci1ib3gsIHBhZGRpbmctYm94LCBj
b250ZW50LWJveCBvciBmaWx0ZXItYm94Ci0gICAgLy8gYXR0cmlidXRlcy4gQSB2YWx1ZSBvZiAo
MCwgMCwgMSwgMSkgd2lsbCBjb3ZlciB0aGUgZW50aXJlIG91dHB1dCBzdXJmYWNlLgotICAgIEN1
c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IodW5zaWduZWQgY29sdW1ucywgdW5zaWduZWQgcm93cywg
Y29uc3QgRmxvYXRSZWN0JiBtZXNoQm94LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSk7Ci0KLSAgICBj
b25zdCBWZWN0b3I8ZmxvYXQ+JiB2ZXJ0aWNlcygpIGNvbnN0IHsgcmV0dXJuIG1fdmVydGljZXM7
IH0KLSAgICBjb25zdCBWZWN0b3I8dWludDE2X3Q+JiBpbmRpY2VzKCkgY29uc3QgeyByZXR1cm4g
bV9pbmRpY2VzOyB9Ci0KLSAgICBjb25zdCBJbnRTaXplJiBwb2ludHMoKSBjb25zdCB7IHJldHVy
biBtX3BvaW50czsgfQotICAgIHVuc2lnbmVkIHBvaW50c0NvdW50KCkgY29uc3QgeyByZXR1cm4g
bV9wb2ludHMud2lkdGgoKSAqIG1fcG9pbnRzLmhlaWdodCgpOyB9Ci0KLSAgICBjb25zdCBJbnRT
aXplJiB0aWxlcygpIGNvbnN0IHsgcmV0dXJuIG1fdGlsZXM7IH0KLSAgICB1bnNpZ25lZCB0aWxl
c0NvdW50KCkgY29uc3QgeyByZXR1cm4gbV90aWxlcy53aWR0aCgpICogbV90aWxlcy5oZWlnaHQo
KTsgfQotCi0gICAgdW5zaWduZWQgaW5kaWNlc0NvdW50KCkgY29uc3QKLSAgICB7Ci0gICAgICAg
IGNvbnN0IHVuc2lnbmVkIHRyaWFuZ2xlc1BlclRpbGUgPSAyOwotICAgICAgICBjb25zdCB1bnNp
Z25lZCBpbmRpY2VzUGVyVHJpYW5nbGUgPSAzOwotICAgICAgICByZXR1cm4gdGlsZXNDb3VudCgp
ICogdHJpYW5nbGVzUGVyVGlsZSAqIGluZGljZXNQZXJUcmlhbmdsZTsKLSAgICB9Ci0KLSAgICB1
bnNpZ25lZCBmbG9hdHNQZXJWZXJ0ZXgoKSBjb25zdAotICAgIHsKLSAgICAgICAgc3RhdGljIGNv
bnN0IHVuc2lnbmVkIEF0dGFjaGVkTWVzaFZlcnRleFNpemUgPSBQb3NpdGlvbkF0dHJpYlNpemUg
KyBUZXhBdHRyaWJTaXplICsgTWVzaEF0dHJpYlNpemU7Ci0gICAgICAgIHN0YXRpYyBjb25zdCB1
bnNpZ25lZCBEZXRhY2hlZE1lc2hWZXJ0ZXhTaXplID0gQXR0YWNoZWRNZXNoVmVydGV4U2l6ZSAr
IFRyaWFuZ2xlQXR0cmliU2l6ZTsKLSAgICAgICAgcmV0dXJuIG1fbWVzaFR5cGUgPT0gTWVzaFR5
cGVBdHRhY2hlZCA/IEF0dGFjaGVkTWVzaFZlcnRleFNpemUgOiBEZXRhY2hlZE1lc2hWZXJ0ZXhT
aXplOwotICAgIH0KLQotICAgIHVuc2lnbmVkIHZlcnRpY2VzQ291bnQoKSBjb25zdAotICAgIHsK
LSAgICAgICAgcmV0dXJuIG1fbWVzaFR5cGUgPT0gTWVzaFR5cGVBdHRhY2hlZCA/IHBvaW50c0Nv
dW50KCkgOiBpbmRpY2VzQ291bnQoKTsKLSAgICB9Ci0KLXByaXZhdGU6Ci0gICAgdHlwZWRlZiB2
b2lkIChDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjoqQWRkVHJpYW5nbGVWZXJ0ZXhGdW5jdGlv
bikoaW50IHF1YWRYLCBpbnQgcXVhZFksIGludCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGlu
dCB0cmlhbmdsZSk7Ci0KLSAgICB0ZW1wbGF0ZSA8QWRkVHJpYW5nbGVWZXJ0ZXhGdW5jdGlvbiBh
ZGRUcmlhbmdsZVZlcnRleD4KLSAgICB2b2lkIGFkZFRpbGUoaW50IHF1YWRYLCBpbnQgcXVhZFkp
Ci0gICAgewotICAgICAgICAoKCp0aGlzKS4qKGFkZFRyaWFuZ2xlVmVydGV4KSkocXVhZFgsIHF1
YWRZLCAwLCAwLCAxKTsKLSAgICAgICAgKCgqdGhpcykuKihhZGRUcmlhbmdsZVZlcnRleCkpKHF1
YWRYLCBxdWFkWSwgMSwgMCwgMik7Ci0gICAgICAgICgoKnRoaXMpLiooYWRkVHJpYW5nbGVWZXJ0
ZXgpKShxdWFkWCwgcXVhZFksIDEsIDEsIDMpOwotICAgICAgICAoKCp0aGlzKS4qKGFkZFRyaWFu
Z2xlVmVydGV4KSkocXVhZFgsIHF1YWRZLCAwLCAwLCA0KTsKLSAgICAgICAgKCgqdGhpcykuKihh
ZGRUcmlhbmdsZVZlcnRleCkpKHF1YWRYLCBxdWFkWSwgMSwgMSwgNSk7Ci0gICAgICAgICgoKnRo
aXMpLiooYWRkVHJpYW5nbGVWZXJ0ZXgpKShxdWFkWCwgcXVhZFksIDAsIDEsIDYpOwotICAgIH0K
LQotICAgIHZvaWQgYWRkQXR0YWNoZWRNZXNoSW5kZXgoaW50IHF1YWRYLCBpbnQgcXVhZFksIGlu
dCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGludCB0cmlhbmdsZSk7Ci0KLSAgICB2b2lkIGdl
bmVyYXRlQXR0YWNoZWRNZXNoKCk7Ci0KLSAgICB2b2lkIGFkZERldGFjaGVkTWVzaFZlcnRleEFu
ZEluZGV4KGludCBxdWFkWCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZ
LCBpbnQgdHJpYW5nbGUpOwotCi0gICAgdm9pZCBnZW5lcmF0ZURldGFjaGVkTWVzaCgpOwotICAg
IHZvaWQgYWRkUG9zaXRpb25BdHRyaWJ1dGUoaW50IHF1YWRYLCBpbnQgcXVhZFkpOwotICAgIHZv
aWQgYWRkVGV4Q29vcmRBdHRyaWJ1dGUoaW50IHF1YWRYLCBpbnQgcXVhZFkpOwotICAgIHZvaWQg
YWRkTWVzaENvb3JkQXR0cmlidXRlKGludCBxdWFkWCwgaW50IHF1YWRZKTsKLSAgICB2b2lkIGFk
ZFRyaWFuZ2xlQ29vcmRBdHRyaWJ1dGUoaW50IHF1YWRYLCBpbnQgcXVhZFksIGludCB0cmlhbmds
ZSk7Ci0gICAgdm9pZCBhZGRBdHRhY2hlZE1lc2hWZXJ0ZXhBdHRyaWJ1dGVzKGludCBxdWFkWCwg
aW50IHF1YWRZKTsKLSAgICB2b2lkIGFkZERldGFjaGVkTWVzaFZlcnRleEF0dHJpYnV0ZXMoaW50
IHF1YWRYLCBpbnQgcXVhZFksIGludCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGludCB0cmlh
bmdsZSk7Ci0KLSNpZm5kZWYgTkRFQlVHCi0gICAgdm9pZCBkdW1wQnVmZmVycygpIGNvbnN0Owot
I2VuZGlmCi0KLXByaXZhdGU6Ci0gICAgVmVjdG9yPGZsb2F0PiBtX3ZlcnRpY2VzOwotICAgIFZl
Y3Rvcjx1aW50MTZfdD4gbV9pbmRpY2VzOwotCi0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbV9t
ZXNoVHlwZTsKLSAgICBJbnRTaXplIG1fcG9pbnRzOwotICAgIEludFNpemUgbV90aWxlczsKLSAg
ICBGbG9hdFNpemUgbV90aWxlU2l6ZUluUGl4ZWxzOwotICAgIEZsb2F0U2l6ZSBtX3RpbGVTaXpl
SW5EZXZpY2VTcGFjZTsKLSAgICBGbG9hdFJlY3QgbV9tZXNoQm94OwotfTsKLQotfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0Rf
R1JBUEhJQ1MpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yX2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyTnVtYmVyUGFyYW1ldGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0N1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwOTM3ODU4Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgKKysrIC9kZXYv
bnVsbApAQCAtMSw4NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aWZuZGVmIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcl9oCi0jZGVmaW5lIEN1c3RvbUZpbHRl
ck51bWJlclBhcmFtZXRlcl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAi
QW5pbWF0aW9uVXRpbGl0aWVzLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgi
Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNz
IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciA6IHB1YmxpYyBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXIgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlck51bWJlclBh
cmFtZXRlcj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgbmFtZSkKLSAgICB7Ci0gICAgICAgIHJldHVy
biBhZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKG5hbWUpKTsKLSAgICB9
Ci0gICAgCi0gICAgdW5zaWduZWQgc2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGF0YS5zaXplKCk7
IH0KLSAgICBkb3VibGUgdmFsdWVBdCh1bnNpZ25lZCBpbmRleCkgY29uc3QgeyByZXR1cm4gbV9k
YXRhLmF0KGluZGV4KTsgfQotCi0gICAgdm9pZCBhZGRWYWx1ZShkb3VibGUgdmFsdWUpIHsgbV9k
YXRhLmFwcGVuZCh2YWx1ZSk7IH0KLSAgICAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Q3VzdG9t
RmlsdGVyUGFyYW1ldGVyPiBibGVuZChjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIqIGZyb20s
IGRvdWJsZSBwcm9ncmVzcywgY29uc3QgTGF5b3V0U2l6ZSYpCi0gICAgewotICAgICAgICBpZiAo
IWZyb20gfHwgIWlzU2FtZVR5cGUoKmZyb20pKQotICAgICAgICAgICAgcmV0dXJuIHRoaXM7Ci0g
ICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciogZnJvbU51bWJlciA9IHN0
YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcio+KGZyb20pOwotICAg
ICAgICBpZiAoc2l6ZSgpICE9IGZyb21OdW1iZXItPnNpemUoKSkKLSAgICAgICAgICAgIHJldHVy
biB0aGlzOwotICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyPiByZXN1
bHQgPSBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKCkpOwotICAgICAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemUoKTsgKytpKQotICAgICAgICAgICAgcmVzdWx0
LT5hZGRWYWx1ZShXZWJDb3JlOjpibGVuZChmcm9tTnVtYmVyLT52YWx1ZUF0KGkpLCB2YWx1ZUF0
KGkpLCBwcm9ncmVzcykpOwotICAgICAgICByZXR1cm4gcmVzdWx0LnJlbGVhc2UoKTsKLSAgICB9
Ci0gICAgCi0gICAgdmlydHVhbCBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFy
YW1ldGVyJiBvKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKCFpc1NhbWVUeXBlKG8pKQotICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJOdW1iZXJQ
YXJhbWV0ZXIqIG90aGVyID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyTnVtYmVyUGFy
YW1ldGVyKj4oJm8pOwotICAgICAgICByZXR1cm4gbV9kYXRhID09IG90aGVyLT5tX2RhdGE7Ci0g
ICAgfQotICAgIAotcHJpdmF0ZToKLSAgICBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIoY29u
c3QgU3RyaW5nJiBuYW1lKQotICAgICAgICA6IEN1c3RvbUZpbHRlclBhcmFtZXRlcihOVU1CRVIs
IG5hbWUpCi0gICAgewotICAgIH0KLSAgICAKLSAgICBWZWN0b3I8ZG91YmxlLCA0PiBtX2RhdGE7
Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXJfaApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0
ZXJPcGVyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA1MDlhNzZjLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDc3
ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBv
cmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0g
KgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDi
gJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBC
RQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25m
aWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJP
cGVyYXRpb24uaCIKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlci5oIgotI2luY2x1
ZGUgIkN1c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJGaWx0ZXJPcGVyYXRpb24uaCIK
LQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1DdXN0b21GaWx0ZXJPcGVyYXRpb246OkN1c3RvbUZp
bHRlck9wZXJhdGlvbihQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IHByb2dyYW0sIGNv
bnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHNvcnRlZFBhcmFtZXRlcnMsIHVuc2lnbmVk
IG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucykKLSAgICA6IEZpbHRlck9wZXJhdGlvbihD
VVNUT00pCi0gICAgLCBtX3Byb2dyYW0ocHJvZ3JhbSkKLSAgICAsIG1fcGFyYW1ldGVycyhzb3J0
ZWRQYXJhbWV0ZXJzKQotICAgICwgbV9tZXNoUm93cyhtZXNoUm93cykKLSAgICAsIG1fbWVzaENv
bHVtbnMobWVzaENvbHVtbnMpCi17Ci0gICAgLy8gTWFrZSBzdXJlIHRoYXQgdGhlIHBhcmFtZXRl
cnMgYXJlIGFsd3lhcyBzb3J0ZWQgYnkgbmFtZS4gV2UgdXNlIHRoYXQgdG8gbWVyZ2UgdHdvIEN1
c3RvbUZpbHRlck9wZXJhdGlvbnMgaW4gYW5pbWF0aW9ucy4KLSAgICBBU1NFUlQobV9wYXJhbWV0
ZXJzLmNoZWNrQWxwaGFiZXRpY2FsT3JkZXIoKSk7Ci19Ci0gICAgCi1DdXN0b21GaWx0ZXJPcGVy
YXRpb246On5DdXN0b21GaWx0ZXJPcGVyYXRpb24oKQotewotfQotCi1QYXNzUmVmUHRyPEZpbHRl
ck9wZXJhdGlvbj4gQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOjpibGVuZChjb25zdCBGaWx0ZXJPcGVy
YXRpb24qIGZyb20sIGRvdWJsZSBwcm9ncmVzcywgY29uc3QgTGF5b3V0U2l6ZSYgc2l6ZSwgYm9v
bCBibGVuZFRvUGFzc3Rocm91Z2gpCi17Ci0gICAgLy8gRklYTUU6IFRoZXJlJ3Mgbm8gd2F5IHRv
IGRlY2lkZSB3aGF0IGlzIHRoZSAicGFzc3Rocm91Z2ggZmlsdGVyIiBmb3Igc2hhZGVycyB1c2lu
ZyB0aGUgY3VycmVudCBDU1MgU3ludGF4LgotICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NDkwMwotICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9CdWdzL1B1
YmxpYy9zaG93X2J1Zy5jZ2k/aWQ9MTY4NjEKLSAgICBpZiAoYmxlbmRUb1Bhc3N0aHJvdWdoIHx8
ICFmcm9tIHx8ICFmcm9tLT5pc1NhbWVUeXBlKCp0aGlzKSkKLSAgICAgICAgcmV0dXJuIHRoaXM7
Ci0gICAgCi0gICAgY29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKiBmcm9tT3AgPSBzdGF0aWNf
Y2FzdDxjb25zdCBDdXN0b21GaWx0ZXJPcGVyYXRpb24qPihmcm9tKTsKLSAgICBpZiAobV9wcm9n
cmFtLmdldCgpICE9IGZyb21PcC0+bV9wcm9ncmFtLmdldCgpCi0gICAgICAgIHx8IG1fbWVzaFJv
d3MgIT0gZnJvbU9wLT5tX21lc2hSb3dzCi0gICAgICAgIHx8IG1fbWVzaENvbHVtbnMgIT0gZnJv
bU9wLT5tX21lc2hDb2x1bW5zKQotICAgICAgICByZXR1cm4gdGhpczsKLSAgICAKLSAgICBDdXN0
b21GaWx0ZXJQYXJhbWV0ZXJMaXN0IGFuaW1hdGVkUGFyYW1ldGVyczsKLSAgICBtX3BhcmFtZXRl
cnMuYmxlbmQoZnJvbU9wLT5tX3BhcmFtZXRlcnMsIHByb2dyZXNzLCBzaXplLCBhbmltYXRlZFBh
cmFtZXRlcnMpOwotICAgIHJldHVybiBDdXN0b21GaWx0ZXJPcGVyYXRpb246OmNyZWF0ZShtX3By
b2dyYW0sIGFuaW1hdGVkUGFyYW1ldGVycywgbV9tZXNoUm93cywgbV9tZXNoQ29sdW1ucyk7Ci19
Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVS
UykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJhdGlvbi5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA0NDdjNjA1Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgKKysrIC9kZXYvbnVsbApAQCAt
MSw5NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5j
b3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xE
RVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAq
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1
c3RvbUZpbHRlck9wZXJhdGlvbl9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlck9wZXJhdGlvbl9oCi0K
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIgotI2luY2x1ZGUgIkN1
c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJGaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNs
dWRlICJMYXlvdXRTaXplLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotLy8gQ1NTIFNoYWRl
cnMKLQotY2xhc3MgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIDogcHVibGljIEZpbHRlck9wZXJhdGlv
biB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyT3BlcmF0aW9u
PiBjcmVhdGUoUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiBwcm9ncmFtLCBjb25zdCBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBzb3J0ZWRQYXJhbWV0ZXJzLCB1bnNpZ25lZCBtZXNo
Um93cywgdW5zaWduZWQgbWVzaENvbHVtbnMpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IEN1c3RvbUZpbHRlck9wZXJhdGlvbihwcm9ncmFtLCBzb3J0ZWRQYXJhbWV0ZXJzLCBt
ZXNoUm93cywgbWVzaENvbHVtbnMpKTsKLSAgICB9Ci0gICAgCi0gICAgQ3VzdG9tRmlsdGVyUHJv
Z3JhbSogcHJvZ3JhbSgpIGNvbnN0IHsgcmV0dXJuIG1fcHJvZ3JhbS5nZXQoKTsgfQotICAgIHZv
aWQgc2V0UHJvZ3JhbShQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IHByb2dyYW0pIHsg
bV9wcm9ncmFtID0gcHJvZ3JhbTsgfQotICAgIAotICAgIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3QmIHBhcmFtZXRlcnMoKSBjb25zdCB7IHJldHVybiBtX3BhcmFtZXRlcnM7IH0KLSAg
ICAKLSAgICB1bnNpZ25lZCBtZXNoUm93cygpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaFJvd3M7IH0K
LSAgICB1bnNpZ25lZCBtZXNoQ29sdW1ucygpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaENvbHVtbnM7
IH0KLQotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKCkgY29uc3QgeyByZXR1cm4g
cHJvZ3JhbSgpID8gcHJvZ3JhbSgpLT5tZXNoVHlwZSgpIDogTWVzaFR5cGVBdHRhY2hlZDsgfQot
ICAgIAotICAgIHZpcnR1YWwgfkN1c3RvbUZpbHRlck9wZXJhdGlvbigpOwotICAgIAotICAgIHZp
cnR1YWwgYm9vbCBhZmZlY3RzT3BhY2l0eSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KLSAgICB2
aXJ0dWFsIGJvb2wgbW92ZXNQaXhlbHMoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmly
dHVhbCBib29sIGJsZW5kaW5nTmVlZHNSZW5kZXJlclNpemUoKSBjb25zdCB7IHJldHVybiB0cnVl
OyB9Ci0gICAgCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPEZpbHRlck9wZXJhdGlvbj4gYmxlbmQo
Y29uc3QgRmlsdGVyT3BlcmF0aW9uKiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91
dFNpemUmLCBib29sIGJsZW5kVG9QYXNzdGhyb3VnaCA9IGZhbHNlKTsKLQotcHJvdGVjdGVkOgot
ICAgIEN1c3RvbUZpbHRlck9wZXJhdGlvbihQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+
LCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiwgdW5zaWduZWQgbWVzaFJvd3MsIHVu
c2lnbmVkIG1lc2hDb2x1bW5zKTsKLSAgICAKLXByaXZhdGU6Ci0gICAgdmlydHVhbCBib29sIG9w
ZXJhdG9yPT0oY29uc3QgRmlsdGVyT3BlcmF0aW9uJiBvKSBjb25zdAotICAgIHsKLSAgICAgICAg
aWYgKCFpc1NhbWVUeXBlKG8pKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAg
IGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbiogb3RoZXIgPSBzdGF0aWNfY2FzdDxjb25zdCBD
dXN0b21GaWx0ZXJPcGVyYXRpb24qPigmbyk7Ci0gICAgICAgIHJldHVybiBtX3Byb2dyYW0uZ2V0
KCkgPT0gb3RoZXItPm1fcHJvZ3JhbS5nZXQoKQotICAgICAgICAgICAgJiYgbV9tZXNoUm93cyA9
PSBvdGhlci0+bV9tZXNoUm93cwotICAgICAgICAgICAgJiYgbV9tZXNoQ29sdW1ucyA9PSBvdGhl
ci0+bV9tZXNoQ29sdW1ucwotICAgICAgICAgICAgJiYgbV9wYXJhbWV0ZXJzID09IG90aGVyLT5t
X3BhcmFtZXRlcnM7Ci0gICAgfQotCi0gICAgUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IG1f
cHJvZ3JhbTsKLSAgICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0IG1fcGFyYW1ldGVyczsKLSAg
ICAKLSAgICB1bnNpZ25lZCBtX21lc2hSb3dzOwotICAgIHVuc2lnbmVkIG1fbWVzaENvbHVtbnM7
Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJPcGVyYXRpb25faApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJh
bWV0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyUGFyYW1ldGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNiYWIyZDgu
LjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJQYXJhbWV0ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDc4ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwot
ICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBB
TkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyX2gKLQotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBX
ZWJDb3JlIHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyIDogcHVibGljIFJlZkNvdW50
ZWQ8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiB7Ci1wdWJsaWM6Ci0gICAgLy8gRklYTUU6IEltcGxl
bWVudCBvdGhlciBwYXJhbWV0ZXJzIHR5cGVzOgotICAgIC8vIHRleHR1cmVzOiBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE0NDIKLSAgICBlbnVtIFBhcmFtZXRlclR5
cGUgewotICAgICAgICBBUlJBWSwKLSAgICAgICAgQ09MT1IsCi0gICAgICAgIE1BVFJJWCwKLSAg
ICAgICAgTlVNQkVSLAotICAgICAgICBUUkFOU0ZPUk0KLSAgICB9OwotICAgIAotICAgIHZpcnR1
YWwgfkN1c3RvbUZpbHRlclBhcmFtZXRlcigpIHsgfQotICAgIAotICAgIFBhcmFtZXRlclR5cGUg
cGFyYW1ldGVyVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfQotICAgIGNvbnN0IFN0cmlu
ZyYgbmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmFtZTsgfQotICAgIAotICAgIGJvb2wgaXNTYW1l
VHlwZShjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXImIG90aGVyKSBjb25zdCB7IHJldHVybiBw
YXJhbWV0ZXJUeXBlKCkgPT0gb3RoZXIucGFyYW1ldGVyVHlwZSgpOyB9Ci0gICAgCi0gICAgdmly
dHVhbCBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gYmxlbmQoY29uc3QgQ3VzdG9t
RmlsdGVyUGFyYW1ldGVyKiwgZG91YmxlIHByb2dyZXNzLCBjb25zdCBMYXlvdXRTaXplJikgPSAw
OwotICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRl
ciYpIGNvbnN0ID0gMDsKLSAgICBib29sIG9wZXJhdG9yIT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFy
YW1ldGVyJiBvKSBjb25zdCB7IHJldHVybiAhKCp0aGlzID09IG8pOyB9Ci1wcm90ZWN0ZWQ6Ci0g
ICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKFBhcmFtZXRlclR5cGUgdHlwZSwgY29uc3QgU3RyaW5n
JiBuYW1lKQotICAgICAgICA6IG1fbmFtZShuYW1lKQotICAgICAgICAsIG1fdHlwZSh0eXBlKQot
ICAgIHsKLSAgICB9Ci0KLXByaXZhdGU6Ci0gICAgU3RyaW5nIG1fbmFtZTsKLSAgICBQYXJhbWV0
ZXJUeXBlIG1fdHlwZTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIEN1c3RvbUZpbHRlclBhcmFtZXRlcl9o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggY2M2MzNlOS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwCisr
KyAvZGV2L251bGwKQEAgLTEsMTA0ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIg
QWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1
ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaCIKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
clBhcmFtZXRlci5oIgotI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KLQotbmFtZXNw
YWNlIFdlYkNvcmUgewotCi1DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0OjpDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0KCkKLXsKLX0KLQotQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdDo6Q3VzdG9t
RmlsdGVyUGFyYW1ldGVyTGlzdChzaXplX3Qgc2l6ZSkKLSAgICA6IEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3RCYXNlKHNpemUpIAotewotfQotCi1ib29sIEN1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3Q6Om9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgb3RoZXIpIGNv
bnN0Ci17Ci0gICAgaWYgKHNpemUoKSAhPSBvdGhlci5zaXplKCkpCi0gICAgICAgIHJldHVybiBm
YWxzZTsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemUoKTsgKytpKSB7Ci0gICAgICAg
IGlmIChhdChpKS5nZXQoKSAhPSBvdGhlci5hdChpKS5nZXQoKSAKLSAgICAgICAgICAgICYmICph
dChpKS5nZXQoKSAhPSAqb3RoZXIuYXQoaSkuZ2V0KCkpCi0gICAgICAgICAgICByZXR1cm4gZmFs
c2U7Ci0gICAgfQotICAgIHJldHVybiB0cnVlOwotfQotCi1ib29sIEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3Q6OmNoZWNrQWxwaGFiZXRpY2FsT3JkZXIoKSBjb25zdAotewotICAgIGZvciAodW5z
aWduZWQgaSA9IDE7IGkgPCBzaXplKCk7ICsraSkgewotICAgICAgICAvLyBCcmVhayBmb3IgZXF1
YWwgb3Igbm90LXNvcnRlZCBwYXJhbWV0ZXJzLgotICAgICAgICBpZiAoIWNvZGVQb2ludENvbXBh
cmVMZXNzVGhhbihhdChpIC0gMSktPm5hbWUoKSwgYXQoaSktPm5hbWUoKSkpCi0gICAgICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgfQotICAgIHJldHVybiB0cnVlOwotfQotCi12b2lkIEN1c3Rv
bUZpbHRlclBhcmFtZXRlckxpc3Q6OmJsZW5kKGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3QmIGZyb21MaXN0LCAKLSAgICBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmIGZy
YW1lU2l6ZSwgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgcmVzdWx0TGlzdCkgY29uc3QKLXsK
LSAgICAvLyBUaGlzIG1ldGhvZCBleHBlY3RzIGJvdGggbGlzdHMgdG8gYmUgc29ydGVkIGJ5IHBh
cmFtZXRlciBuYW1lIGFuZCB0aGUgcmVzdWx0IGxpc3QgaXMgYWxzbyBzb3J0ZWQuCi0gICAgQVNT
RVJUKGNoZWNrQWxwaGFiZXRpY2FsT3JkZXIoKSk7Ci0gICAgQVNTRVJUKGZyb21MaXN0LmNoZWNr
QWxwaGFiZXRpY2FsT3JkZXIoKSk7Ci0gICAgc2l6ZV90IGZyb21MaXN0SW5kZXggPSAwLCB0b0xp
c3RJbmRleCA9IDA7Ci0gICAgd2hpbGUgKGZyb21MaXN0SW5kZXggPCBmcm9tTGlzdC5zaXplKCkg
JiYgdG9MaXN0SW5kZXggPCBzaXplKCkpIHsKLSAgICAgICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
KiBwYXJhbUZyb20gPSBmcm9tTGlzdC5hdChmcm9tTGlzdEluZGV4KS5nZXQoKTsKLSAgICAgICAg
Q3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBwYXJhbVRvID0gYXQodG9MaXN0SW5kZXgpLmdldCgpOwot
ICAgICAgICBpZiAocGFyYW1Gcm9tLT5uYW1lKCkgPT0gcGFyYW1Uby0+bmFtZSgpKSB7Ci0gICAg
ICAgICAgICByZXN1bHRMaXN0LmFwcGVuZChwYXJhbVRvLT5ibGVuZChwYXJhbUZyb20sIHByb2dy
ZXNzLCBmcmFtZVNpemUpKTsKLSAgICAgICAgICAgICsrZnJvbUxpc3RJbmRleDsKLSAgICAgICAg
ICAgICsrdG9MaXN0SW5kZXg7Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQotICAg
ICAgICBpZiAoY29kZVBvaW50Q29tcGFyZUxlc3NUaGFuKHBhcmFtRnJvbS0+bmFtZSgpLCBwYXJh
bVRvLT5uYW1lKCkpKSB7Ci0gICAgICAgICAgICByZXN1bHRMaXN0LmFwcGVuZChwYXJhbUZyb20p
OwotICAgICAgICAgICAgKytmcm9tTGlzdEluZGV4OwotICAgICAgICAgICAgY29udGludWU7Ci0g
ICAgICAgIH0KLSAgICAgICAgcmVzdWx0TGlzdC5hcHBlbmQocGFyYW1Ubyk7Ci0gICAgICAgICsr
dG9MaXN0SW5kZXg7Ci0gICAgfQotICAgIGZvciAoOyBmcm9tTGlzdEluZGV4IDwgZnJvbUxpc3Qu
c2l6ZSgpOyArK2Zyb21MaXN0SW5kZXgpCi0gICAgICAgIHJlc3VsdExpc3QuYXBwZW5kKGZyb21M
aXN0LmF0KGZyb21MaXN0SW5kZXgpKTsKLSAgICBmb3IgKDsgdG9MaXN0SW5kZXggPCBzaXplKCk7
ICsrdG9MaXN0SW5kZXgpCi0gICAgICAgIHJlc3VsdExpc3QuYXBwZW5kKGF0KHRvTGlzdEluZGV4
KSk7Ci0gICAgQVNTRVJUKHJlc3VsdExpc3QuY2hlY2tBbHBoYWJldGljYWxPcmRlcigpKTsKLX0K
LQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJT
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggYTliYzAxZi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaAorKysgL2Rl
di9udWxsCkBAIC0xLDU2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUg
U3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lm
bmRlZiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0X2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyUGFy
YW1ldGVyTGlzdF9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiTGF5b3V0
U2l6ZS5oIgotI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewot
Ci1jbGFzcyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI7Ci10eXBlZGVmIFZlY3RvcjxSZWZQdHI8Q3Vz
dG9tRmlsdGVyUGFyYW1ldGVyPj4gQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdEJhc2U7Ci0KLWNs
YXNzIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QgOiBwdWJsaWMgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyTGlzdEJhc2UgewotcHVibGljOgotICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QoKTsK
LSAgICBleHBsaWNpdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0KHNpemVfdCk7Ci0KLSAgICBi
b29sIGNoZWNrQWxwaGFiZXRpY2FsT3JkZXIoKSBjb25zdDsKLSAgICB2b2lkIGJsZW5kKGNvbnN0
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIGZyb20sIGRvdWJsZSBwcm9ncmVzcywgY29uc3Qg
TGF5b3V0U2l6ZSYsIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHJlc3VsdExpc3QpIGNvbnN0
OwotICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0Jikg
Y29uc3Q7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0X2gKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyUHJvZ3JhbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0uY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBmMjc2OWY3Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwxMDEg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9y
YXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKA
nEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJF
Ci0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZp
Zy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBy
b2dyYW0uaCIKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIgotI2lu
Y2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0
ZXJQcm9ncmFtSW5mby5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0u
aCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1DdXN0b21GaWx0ZXJQcm9ncmFtOjpDdXN0b21G
aWx0ZXJQcm9ncmFtKEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlLCBjb25zdCBD
dXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG1peFNldHRpbmdzLCBDdXN0b21GaWx0ZXJN
ZXNoVHlwZSBtZXNoVHlwZSkKLSAgICA6IG1fcHJvZ3JhbVR5cGUocHJvZ3JhbVR5cGUpCi0gICAg
LCBtX21peFNldHRpbmdzKG1peFNldHRpbmdzKQotICAgICwgbV9tZXNoVHlwZShtZXNoVHlwZSkK
LXsKLSAgICAvLyBLZWVwIHRoZSBjb25zdHJ1Y3RvciBwcm90ZWN0ZWQgdG8gcHJldmVudCBjcmVh
dGluZyB0aGlzIG9iamVjdCBkaXJlY3RseS4KLX0KLQotQ3VzdG9tRmlsdGVyUHJvZ3JhbTo6fkN1
c3RvbUZpbHRlclByb2dyYW0oKQotewotICAgIC8vIEFsbCB0aGUgY2xpZW50cyBzaG91bGQga2Vl
cCBhIHJlZmVyZW5jZSB0byB0aGlzIG9iamVjdC4KLSAgICBBU1NFUlQobV9jbGllbnRzLmlzRW1w
dHkoKSk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUHJvZ3JhbTo6YWRkQ2xpZW50KEN1c3RvbUZp
bHRlclByb2dyYW1DbGllbnQqIGNsaWVudCkKLXsKLSAgICBpZiAobV9jbGllbnRzLmlzRW1wdHko
KSkgewotICAgICAgICAvLyBOb3RpZnkgdGhlIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSB0aGF0
IHdlIG5vdyBoYXZlIGF0IGxlYXN0IGEgY2xpZW50Ci0gICAgICAgIC8vIGFuZCB0aGUgbG9hZGlu
ZyBjYW4gYmVnaW4uCi0gICAgICAgIC8vIE5vdGU6IElmIHRoZSBzaGFkZXIgaXMgYWxyZWFkeSBj
YWNoZWQgdGhlIGZpcnN0IGNsaWVudCB3aWxsIGJlIG5vdGlmaWVkLAotICAgICAgICAvLyBldmVu
IGlmIHRoZSBmaWx0ZXIgd2FzIGFscmVhZHkgYnVpbHQuIEFkZCB0aGUgY2xpZW50IG9ubHkgYWZ0
ZXIgbm90aWZ5aW5nCi0gICAgICAgIC8vIHRoZSBjYWNoZSBhYm91dCB0aGVtLCBzbyB0aGF0IHdl
IGF2b2lkIGEgdXNlbGVzcyByZWNyZWF0aW9uIG9mIHRoZSBmaWx0ZXJzIGNoYWluLgotICAgICAg
ICB3aWxsSGF2ZUNsaWVudHMoKTsKLSAgICB9Ci0gICAgbV9jbGllbnRzLmFkZChjbGllbnQpOwot
fQotCi12b2lkIEN1c3RvbUZpbHRlclByb2dyYW06OnJlbW92ZUNsaWVudChDdXN0b21GaWx0ZXJQ
cm9ncmFtQ2xpZW50KiBjbGllbnQpCi17Ci0gICAgbV9jbGllbnRzLnJlbW92ZShjbGllbnQpOwot
ICAgIGlmIChtX2NsaWVudHMuaXNFbXB0eSgpKSB7Ci0gICAgICAgIC8vIFdlIGhhdmUgbm8gY2xp
ZW50cyBhbnltb3JlLCB0aGUgY2FjaGVkIHJlc291cmNlcyBjYW4gYmUgcHVyZ2VkIGZyb20gbWVt
b3J5LgotICAgICAgICBkaWRSZW1vdmVMYXN0Q2xpZW50KCk7Ci0gICAgfQotfQotCi12b2lkIEN1
c3RvbUZpbHRlclByb2dyYW06Om5vdGlmeUNsaWVudHMoKQotewotICAgIGZvciAoQ3VzdG9tRmls
dGVyUHJvZ3JhbUNsaWVudExpc3Q6Oml0ZXJhdG9yIGl0ZXIgPSBtX2NsaWVudHMuYmVnaW4oKSwg
ZW5kID0gbV9jbGllbnRzLmVuZCgpOyBpdGVyICE9IGVuZDsgKytpdGVyKQotICAgICAgICBpdGVy
LT5rZXktPm5vdGlmeUN1c3RvbUZpbHRlclByb2dyYW1Mb2FkZWQodGhpcyk7Ci19Ci0KLUN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvIEN1c3RvbUZpbHRlclByb2dyYW06OnByb2dyYW1JbmZvKCkgY29u
c3QKLXsKLSAgICBBU1NFUlQoaXNMb2FkZWQoKSk7Ci0gICAgcmV0dXJuIEN1c3RvbUZpbHRlclBy
b2dyYW1JbmZvKHZlcnRleFNoYWRlclN0cmluZygpLCBmcmFnbWVudFNoYWRlclN0cmluZygpLCBt
X3Byb2dyYW1UeXBlLCBtX21peFNldHRpbmdzLCBtX21lc2hUeXBlKTsKLX0KLQotUGFzc1JlZlB0
cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiBDdXN0b21GaWx0ZXJQcm9ncmFtOjp2YWxp
ZGF0ZWRQcm9ncmFtKCkKLXsKLSAgICByZXR1cm4gbV92YWxpZGF0ZWRQcm9ncmFtOwotfQotCi12
b2lkIEN1c3RvbUZpbHRlclByb2dyYW06OnNldFZhbGlkYXRlZFByb2dyYW0oUGFzc1JlZlB0cjxD
dXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2YWxpZGF0ZWRQcm9ncmFtKQotewotICAgIG1f
dmFsaWRhdGVkUHJvZ3JhbSA9IHZhbGlkYXRlZFByb2dyYW07Ci19Ci0KLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0u
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhZDg5NjVjLi4wMDAwMDAw
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUHJvZ3JhbS5oCisrKyAvZGV2L251bGwKQEAgLTEsOTkgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJQcm9ncmFtX2gKLSNkZWZp
bmUgQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNp
bmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIgotCi0jaW5jbHVkZSA8d3RmL0hhc2hD
b3VudGVkU2V0Lmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYv
dGV4dC9XVEZTdHJpbmcuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBHcmFwaGlj
c0NvbnRleHQzRDsKLWNsYXNzIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQ7Ci1jbGFzcyBDdXN0
b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOwotCi0vLyBUaGlzIGlzIHRoZSBiYXNlIGNsYXNzIGZv
ciB0aGUgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtIGNsYXNzIHdoaWNoIGtub3dzIGhvdyB0byBr
ZWVwCi0vLyByZWZlcmVuY2VzIHRvIHRoZSBjYWNoZWQgc2hhZGVycy4KLWNsYXNzIEN1c3RvbUZp
bHRlclByb2dyYW06IHB1YmxpYyBSZWZDb3VudGVkPEN1c3RvbUZpbHRlclByb2dyYW0+IHsKLXB1
YmxpYzoKLSAgICB2aXJ0dWFsIH5DdXN0b21GaWx0ZXJQcm9ncmFtKCk7Ci0KLSAgICB2aXJ0dWFs
IGJvb2wgaXNMb2FkZWQoKSBjb25zdCA9IDA7Ci0KLSAgICB2b2lkIGFkZENsaWVudChDdXN0b21G
aWx0ZXJQcm9ncmFtQ2xpZW50Kik7Ci0gICAgdm9pZCByZW1vdmVDbGllbnQoQ3VzdG9tRmlsdGVy
UHJvZ3JhbUNsaWVudCopOwotICAgIAotICAgIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvIHByb2dy
YW1JbmZvKCkgY29uc3Q7Ci0KLSAgICB2aXJ0dWFsIFN0cmluZyB2ZXJ0ZXhTaGFkZXJTdHJpbmco
KSBjb25zdCA9IDA7Ci0gICAgdmlydHVhbCBTdHJpbmcgZnJhZ21lbnRTaGFkZXJTdHJpbmcoKSBj
b25zdCA9IDA7Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUoKSBjb25z
dCB7IHJldHVybiBtX3Byb2dyYW1UeXBlOyB9Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNl
dHRpbmdzIG1peFNldHRpbmdzKCkgY29uc3QgeyByZXR1cm4gbV9taXhTZXR0aW5nczsgfQotICAg
IEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoVHlw
ZTsgfQotCi0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2YWxp
ZGF0ZWRQcm9ncmFtKCk7Ci0gICAgdm9pZCBzZXRWYWxpZGF0ZWRQcm9ncmFtKFBhc3NSZWZQdHI8
Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4pOwotCi1wcm90ZWN0ZWQ6Ci0gICAgLy8gU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtIGNhbiBub3RpZnkgdGhlIGNsaWVudHMgdGhhdCB0aGUgY2Fj
aGVkIHJlc291cmNlcyBhcmUKLSAgICAvLyBsb2FkZWQgYW5kIGl0IGlzIHJlYWR5IHRvIGNyZWF0
ZSBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0gb2JqZWN0cy4KLSAgICB2b2lkIG5vdGlmeUNs
aWVudHMoKTsKLQotICAgIHZpcnR1YWwgdm9pZCB3aWxsSGF2ZUNsaWVudHMoKSA9IDA7Ci0gICAg
dmlydHVhbCB2b2lkIGRpZFJlbW92ZUxhc3RDbGllbnQoKSA9IDA7Ci0KLSAgICAvLyBLZWVwIHRo
ZSBjb25zdHJ1Y3RvciBwcm90ZWN0ZWQgdG8gcHJldmVudCBjcmVhdGluZyB0aGlzIG9iamVjdCBk
aXJlY3RseS4KLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtKEN1c3RvbUZpbHRlclByb2dyYW1UeXBl
LCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmLCBDdXN0b21GaWx0ZXJNZXNo
VHlwZSk7Ci0KLXByaXZhdGU6Ci0gICAgLy8gQ3VzdG9tRmlsdGVyUHJvZ3JhbXMgYXJlIHVuaXF1
ZSBjb21iaW5hdGlvbnMgb2Ygc2hhZGVycyBhbmQgY2FuIGJlIAotICAgIC8vIGNvbXBhcmVkIHVz
aW5nIGp1c3QgdGhlIHBvaW50ZXIgdmFsdWUgaW5zdGVhZC4KLSAgICAvLyBUaGVzZSB3aWxsIGNh
dGNoIGFueW9uZSBkb2luZyBhIHZhbHVlIGVxdWFsIGNvbXBhcmlzb24uCi0gICAgYm9vbCBvcGVy
YXRvcj09KGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW0mKSBjb25zdDsKLSAgICBib29sIG9wZXJh
dG9yIT0oY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbSYpIGNvbnN0OwotCi0gICAgdHlwZWRlZiBI
YXNoQ291bnRlZFNldDxDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50Kj4gQ3VzdG9tRmlsdGVyUHJv
Z3JhbUNsaWVudExpc3Q7Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudExpc3QgbV9jbGll
bnRzOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIG1fcHJvZ3JhbVR5cGU7Ci0gICAgQ3Vz
dG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzIG1fbWl4U2V0dGluZ3M7Ci0gICAgQ3VzdG9tRmls
dGVyTWVzaFR5cGUgbV9tZXNoVHlwZTsKLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVk
UHJvZ3JhbT4gbV92YWxpZGF0ZWRQcm9ncmFtOwotfTsKLQotfQotCi0jZW5kaWYgLy8gRU5BQkxF
KENTU19TSEFERVJTKQotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtQ2xp
ZW50LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNiMGI3YzAuLjAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQ
cm9ncmFtQ2xpZW50LmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoK
LSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICog
ICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0g
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0g
KiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnRf
aAotI2RlZmluZSBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50X2gKLQotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBDdXN0b21GaWx0ZXJQcm9n
cmFtOwotCi1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50IHsKLXB1YmxpYzoKLSAgICB2
aXJ0dWFsIH5DdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50KCkKLSAgICB7Ci0gICAgfQotICAgIAot
ICAgIHZpcnR1YWwgdm9pZCBub3RpZnlDdXN0b21GaWx0ZXJQcm9ncmFtTG9hZGVkKEN1c3RvbUZp
bHRlclByb2dyYW0qKSA9IDA7Ci19OwotCi19Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50X2gKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGRkYWI5YTcuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwx
MDkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29y
cG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
IOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVS
IEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
clByb2dyYW1JbmZvLmgiCi0KLSNpbmNsdWRlIDx3dGYvSGFzaEZ1bmN0aW9ucy5oPgotI2luY2x1
ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1zdGF0
aWMgdW5zaWduZWQgaGFzaFBvc3NpYmx5TnVsbFN0cmluZyhjb25zdCBTdHJpbmcmIHN0cmluZykK
LXsKLSAgICByZXR1cm4gc3RyaW5nLmlzTnVsbCgpID8gMCA6IERlZmF1bHRIYXNoPFN0cmluZz46
Okhhc2g6Omhhc2goc3RyaW5nKTsKLX0KLQotQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm86OkN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvKCkKLXsKLX0KLQotYm9vbCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5m
bzo6aXNFbXB0eVZhbHVlKCkgY29uc3QgCi17IAotICAgIHJldHVybiBtX3ZlcnRleFNoYWRlclN0
cmluZy5pc051bGwoKSAKLSAgICAgICAgJiYgbV9mcmFnbWVudFNoYWRlclN0cmluZy5pc051bGwo
KTsKLX0KLQotQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm86OkN1c3RvbUZpbHRlclByb2dyYW1JbmZv
KFdURjo6SGFzaFRhYmxlRGVsZXRlZFZhbHVlVHlwZSkKLSAgICA6IG1fdmVydGV4U2hhZGVyU3Ry
aW5nKFdURjo6SGFzaFRhYmxlRGVsZXRlZFZhbHVlKQotICAgICwgbV9mcmFnbWVudFNoYWRlclN0
cmluZyhXVEY6Okhhc2hUYWJsZURlbGV0ZWRWYWx1ZSkKLXsKLX0KLQotYm9vbCBDdXN0b21GaWx0
ZXJQcm9ncmFtSW5mbzo6aXNIYXNoVGFibGVEZWxldGVkVmFsdWUoKSBjb25zdAotewotICAgIHJl
dHVybiBtX3ZlcnRleFNoYWRlclN0cmluZy5pc0hhc2hUYWJsZURlbGV0ZWRWYWx1ZSgpIAotICAg
ICAgICAmJiBtX2ZyYWdtZW50U2hhZGVyU3RyaW5nLmlzSGFzaFRhYmxlRGVsZXRlZFZhbHVlKCk7
Ci19Ci0KLUN1c3RvbUZpbHRlclByb2dyYW1JbmZvOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyhj
b25zdCBTdHJpbmcmIHZlcnRleFNoYWRlciwgY29uc3QgU3RyaW5nJiBmcmFnbWVudFNoYWRlciwg
Q3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclBy
b2dyYW1NaXhTZXR0aW5ncyYgbWl4U2V0dGluZ3MsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hU
eXBlKQotICAgIDogbV92ZXJ0ZXhTaGFkZXJTdHJpbmcodmVydGV4U2hhZGVyKQotICAgICwgbV9m
cmFnbWVudFNoYWRlclN0cmluZyhmcmFnbWVudFNoYWRlcikKLSAgICAsIG1fcHJvZ3JhbVR5cGUo
cHJvZ3JhbVR5cGUpCi0gICAgLCBtX21peFNldHRpbmdzKG1peFNldHRpbmdzKQotICAgICwgbV9t
ZXNoVHlwZShtZXNoVHlwZSkKLXsKLSAgICAvLyBBdCBsZWFzdCBvbmUgb2YgdGhlIHNoYWRlcnMg
bmVlZHMgdG8gYmUgbm9uLW51bGwuCi0gICAgQVNTRVJUKCFtX3ZlcnRleFNoYWRlclN0cmluZy5p
c051bGwoKSB8fCAhbV9mcmFnbWVudFNoYWRlclN0cmluZy5pc051bGwoKSk7Ci19Ci0KLXVuc2ln
bmVkIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvOjpoYXNoKCkgY29uc3QKLXsKLSAgICAvLyBBdCBs
ZWFzdCBvbmUgb2YgdGhlIHNoYWRlcnMgbmVlZHMgdG8gYmUgbm9uLW51bGwuCi0gICAgQVNTRVJU
KCFtX3ZlcnRleFNoYWRlclN0cmluZy5pc051bGwoKSB8fCAhbV9mcmFnbWVudFNoYWRlclN0cmlu
Zy5pc051bGwoKSk7Ci0KLSAgICBib29sIGJsZW5kc0VsZW1lbnRUZXh0dXJlID0gKG1fcHJvZ3Jh
bVR5cGUgPT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUpOwotICAgIHVpbnRw
dHJfdCBoYXNoQ29kZXNbNl0gPSB7Ci0gICAgICAgIGhhc2hQb3NzaWJseU51bGxTdHJpbmcobV92
ZXJ0ZXhTaGFkZXJTdHJpbmcpLAotICAgICAgICBoYXNoUG9zc2libHlOdWxsU3RyaW5nKG1fZnJh
Z21lbnRTaGFkZXJTdHJpbmcpLAotICAgICAgICBibGVuZHNFbGVtZW50VGV4dHVyZSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8dWludHB0cl90PihibGVuZHNFbGVtZW50VGV4dHVyZSA/IG1fbWl4U2V0
dGluZ3MuYmxlbmRNb2RlIDogMCksCi0gICAgICAgIHN0YXRpY19jYXN0PHVpbnRwdHJfdD4oYmxl
bmRzRWxlbWVudFRleHR1cmUgPyBtX21peFNldHRpbmdzLmNvbXBvc2l0ZU9wZXJhdG9yIDogMCks
Ci0gICAgICAgIG1fbWVzaFR5cGUKLSAgICB9OwotICAgIHJldHVybiBTdHJpbmdIYXNoZXI6Omhh
c2hNZW1vcnk8c2l6ZW9mKGhhc2hDb2Rlcyk+KCZoYXNoQ29kZXMpOwotfQotCi1ib29sIEN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvOjpvcGVyYXRvcj09KGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1J
bmZvJiBvKSBjb25zdCAKLXsKLSAgICBBU1NFUlQoIWlzSGFzaFRhYmxlRGVsZXRlZFZhbHVlKCkp
OwotICAgIEFTU0VSVCghby5pc0hhc2hUYWJsZURlbGV0ZWRWYWx1ZSgpKTsKLQotICAgIHJldHVy
biBtX3Byb2dyYW1UeXBlID09IG8ubV9wcm9ncmFtVHlwZQotICAgICAgICAmJiAobV9wcm9ncmFt
VHlwZSAhPSBQUk9HUkFNX1RZUEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRSB8fCBtX21peFNldHRp
bmdzID09IG8ubV9taXhTZXR0aW5ncykKLSAgICAgICAgJiYgbV9tZXNoVHlwZSA9PSBvLm1fbWVz
aFR5cGUKLSAgICAgICAgJiYgbV92ZXJ0ZXhTaGFkZXJTdHJpbmcgPT0gby5tX3ZlcnRleFNoYWRl
clN0cmluZwotICAgICAgICAmJiBtX2ZyYWdtZW50U2hhZGVyU3RyaW5nID09IG8ubV9mcmFnbWVu
dFNoYWRlclN0cmluZzsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZWI2OGYyLi4wMDAwMDAwCi0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8uaAorKysgL2Rldi9udWxsCkBAIC0xLDExMSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERB
TUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvX2gKLSNkZWZpbmUg
Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm9faAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2lu
Y2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0YW50cy5oIgotI2luY2x1ZGUgIkdyYXBoaWNzVHlwZXMu
aCIKLQotI2luY2x1ZGUgPHd0Zi9IYXNoVHJhaXRzLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotCi1zdHJ1Y3QgQ3VzdG9tRmlsdGVy
UHJvZ3JhbU1peFNldHRpbmdzIHsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3Mo
KQotICAgICAgICA6IGJsZW5kTW9kZShCbGVuZE1vZGVOb3JtYWwpCi0gICAgICAgICwgY29tcG9z
aXRlT3BlcmF0b3IoQ29tcG9zaXRlU291cmNlQXRvcCkKLSAgICB7Ci0gICAgfQotICAgIAotICAg
IGJvb2wgb3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG8p
IGNvbnN0Ci0gICAgewotICAgICAgICByZXR1cm4gYmxlbmRNb2RlID09IG8uYmxlbmRNb2RlICYm
IGNvbXBvc2l0ZU9wZXJhdG9yID09IG8uY29tcG9zaXRlT3BlcmF0b3I7Ci0gICAgfQotICAgIAot
ICAgIEJsZW5kTW9kZSBibGVuZE1vZGU7Ci0gICAgQ29tcG9zaXRlT3BlcmF0b3IgY29tcG9zaXRl
T3BlcmF0b3I7Ci19OwotCi0vLyBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyBpcyB0aGUga2V5IHVz
ZWQgdG8gbGluayBDdXN0b21GaWx0ZXJQcm9ncmFtIHdpdGggQ3VzdG9tRmlsdGVyQ29tcGlsZWRQ
cm9ncmFtLgotLy8gSXQgY2FuIGJlIHVzZWQgYXMgYSBrZXkgaW4gYSBIYXNoTWFwLCB3aXRoIHRo
ZSBub3RlIHRoYXQgYXQgbGVhc3Qgb25lIG9mIFN0cmluZ3MgbmVlZHMgdG8gYmUgbm9uLW51bGwu
IAotLy8gTnVsbCBzdHJpbmdzIGFyZSBwbGFjZWhvbGRlcnMgZm9yIHRoZSBkZWZhdWx0IHNoYWRl
ci4KLWNsYXNzIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvIHsKLXB1YmxpYzoKLSAgICBDdXN0b21G
aWx0ZXJQcm9ncmFtSW5mbyhjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmLCBDdXN0b21GaWx0
ZXJQcm9ncmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiwgQ3Vz
dG9tRmlsdGVyTWVzaFR5cGUpOwotCi0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8oKTsKLSAg
ICBib29sIGlzRW1wdHlWYWx1ZSgpIGNvbnN0OwotCi0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8oV1RGOjpIYXNoVGFibGVEZWxldGVkVmFsdWVUeXBlKTsKLSAgICBib29sIGlzSGFzaFRhYmxl
RGVsZXRlZFZhbHVlKCkgY29uc3Q7Ci0gICAgCi0gICAgdW5zaWduZWQgaGFzaCgpIGNvbnN0Owot
ICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYpIGNvbnN0
OwotCi0gICAgY29uc3QgU3RyaW5nJiB2ZXJ0ZXhTaGFkZXJTdHJpbmcoKSBjb25zdCB7IHJldHVy
biBtX3ZlcnRleFNoYWRlclN0cmluZzsgfQotICAgIGNvbnN0IFN0cmluZyYgZnJhZ21lbnRTaGFk
ZXJTdHJpbmcoKSBjb25zdCB7IHJldHVybiBtX2ZyYWdtZW50U2hhZGVyU3RyaW5nOyB9Ci0gICAg
Q3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUoKSBjb25zdCB7IHJldHVybiBtX3By
b2dyYW1UeXBlOyB9Ci0gICAgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiBt
aXhTZXR0aW5ncygpIGNvbnN0IHsgcmV0dXJuIG1fbWl4U2V0dGluZ3M7IH0KLSAgICBDdXN0b21G
aWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaFR5cGU7IH0KLXBy
aXZhdGU6Ci0gICAgU3RyaW5nIG1fdmVydGV4U2hhZGVyU3RyaW5nOwotICAgIFN0cmluZyBtX2Zy
YWdtZW50U2hhZGVyU3RyaW5nOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIG1fcHJvZ3Jh
bVR5cGU7Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzIG1fbWl4U2V0dGluZ3M7
Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbV9tZXNoVHlwZTsKLX07Ci0KLXN0cnVjdCBDdXN0
b21GaWx0ZXJQcm9ncmFtSW5mb0hhc2ggewotICAgIHN0YXRpYyB1bnNpZ25lZCBoYXNoKGNvbnN0
IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9ncmFtSW5mbykgeyByZXR1cm4gcHJvZ3JhbUlu
Zm8uaGFzaCgpOyB9Ci0gICAgc3RhdGljIGJvb2wgZXF1YWwoY29uc3QgQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8mIGEsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBiKSB7IHJldHVybiBh
ID09IGI7IH0KLSAgICBzdGF0aWMgY29uc3QgYm9vbCBzYWZlVG9Db21wYXJlVG9FbXB0eU9yRGVs
ZXRlZCA9IGZhbHNlOwotfTsKLQotc3RydWN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvSGFzaFRy
YWl0cyA6IFdURjo6U2ltcGxlQ2xhc3NIYXNoVHJhaXRzPEN1c3RvbUZpbHRlclByb2dyYW1JbmZv
PiB7Ci0gICAgc3RhdGljIGNvbnN0IGJvb2wgaGFzSXNFbXB0eVZhbHVlRnVuY3Rpb24gPSB0cnVl
OwotICAgIHN0YXRpYyBib29sIGlzRW1wdHlWYWx1ZShjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFt
SW5mbyYgaW5mbykgeyByZXR1cm4gaW5mby5pc0VtcHR5VmFsdWUoKTsgfQotfTsKLQotfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi1uYW1lc3BhY2UgV1RGIHsKLQotdGVtcGxhdGU8PiBzdHJ1Y3Qg
SGFzaFRyYWl0czxXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbz4gOiBXZWJDb3JlOjpD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mb0hhc2hUcmFpdHMgeyB9OwotdGVtcGxhdGU8PiBzdHJ1Y3Qg
RGVmYXVsdEhhc2g8V2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8+IHsgCi0gICAgdHlw
ZWRlZiBXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mb0hhc2ggSGFzaDsgCi19OwotCi19
Ci0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVy
UHJvZ3JhbUluZm9faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmNwcApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNjJlZDM5My4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmNwcAorKysg
L2Rldi9udWxsCkBAIC0xLDMzNSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFk
b2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJp
Z2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEyIENvbXBhbnkgMTAwLCBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0g
KiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5Z
Ci0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICog
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
LSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YK
LSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
clJlbmRlcmVyLmgiCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlci5oIgot
I2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9t
RmlsdGVyQ29tcGlsZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyTWVzaC5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
ck51bWJlclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlci5oIgot
I2luY2x1ZGUgIkN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkdy
YXBoaWNzQ29udGV4dDNELmgiCi0jaW5jbHVkZSAiVHJhbnNmb3JtYXRpb25NYXRyaXguaCIKLQot
bmFtZXNwYWNlIFdlYkNvcmUgewotCi1zdGF0aWMgdm9pZCBvcnRob2dvbmFsUHJvamVjdGlvbk1h
dHJpeChUcmFuc2Zvcm1hdGlvbk1hdHJpeCYgbWF0cml4LCBmbG9hdCBsZWZ0LCBmbG9hdCByaWdo
dCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3ApCi17Ci0gICAgQVNTRVJUKG1hdHJpeC5pc0lkZW50
aXR5KCkpOwotCi0gICAgZmxvYXQgZGVsdGFYID0gcmlnaHQgLSBsZWZ0OwotICAgIGZsb2F0IGRl
bHRhWSA9IHRvcCAtIGJvdHRvbTsKLSAgICBpZiAoIWRlbHRhWCB8fCAhZGVsdGFZKQotICAgICAg
ICByZXR1cm47Ci0gICAgbWF0cml4LnNldE0xMSgyLjBmIC8gZGVsdGFYKTsKLSAgICBtYXRyaXgu
c2V0TTQxKC0ocmlnaHQgKyBsZWZ0KSAvIGRlbHRhWCk7Ci0gICAgbWF0cml4LnNldE0yMigyLjBm
IC8gZGVsdGFZKTsKLSAgICBtYXRyaXguc2V0TTQyKC0odG9wICsgYm90dG9tKSAvIGRlbHRhWSk7
Ci0KLSAgICAvLyBVc2UgYmlnIGVub3VnaCBuZWFyL2ZhciB2YWx1ZXMsIHNvIHRoYXQgc2ltcGxl
IHJvdGF0aW9ucyBvZiByYXRoZXIgbGFyZ2Ugb2JqZWN0cyB3aWxsIG5vdAotICAgIC8vIGdldCBj
bGlwcGVkLiAxMDAwMCBzaG91bGQgY292ZXIgbW9zdCBvZiB0aGUgc2NyZWVuIHJlc29sdXRpb25z
LgotICAgIGNvbnN0IGZsb2F0IGZhclZhbHVlID0gMTAwMDA7Ci0gICAgY29uc3QgZmxvYXQgbmVh
clZhbHVlID0gLTEwMDAwOwotICAgIG1hdHJpeC5zZXRNMzMoLTIuMGYgLyAoZmFyVmFsdWUgLSBu
ZWFyVmFsdWUpKTsKLSAgICBtYXRyaXguc2V0TTQzKC0gKGZhclZhbHVlICsgbmVhclZhbHVlKSAv
IChmYXJWYWx1ZSAtIG5lYXJWYWx1ZSkpOwotICAgIG1hdHJpeC5zZXRNNDQoMS4wZik7Ci19Ci0K
LVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUmVuZGVyZXI+IEN1c3RvbUZpbHRlclJlbmRlcmVyOjpj
cmVhdGUoUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gY29udGV4dCwgQ3VzdG9tRmlsdGVy
UHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3Qm
IHBhcmFtZXRlcnMsCi0gICAgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5z
LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYo
bmV3IEN1c3RvbUZpbHRlclJlbmRlcmVyKGNvbnRleHQsIHByb2dyYW1UeXBlLCBwYXJhbWV0ZXJz
LCBtZXNoUm93cywgbWVzaENvbHVtbnMsIG1lc2hUeXBlKSk7Ci19Ci0KLUN1c3RvbUZpbHRlclJl
bmRlcmVyOjpDdXN0b21GaWx0ZXJSZW5kZXJlcihQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNE
PiBjb250ZXh0LCBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSwgY29uc3QgQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVycywKLSAgICB1bnNpZ25lZCBtZXNoUm93
cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQot
ICAgIDogbV9jb250ZXh0KGNvbnRleHQpCi0gICAgLCBtX3Byb2dyYW1UeXBlKHByb2dyYW1UeXBl
KQotICAgICwgbV9wYXJhbWV0ZXJzKHBhcmFtZXRlcnMpCi0gICAgLCBtX21lc2hSb3dzKG1lc2hS
b3dzKQotICAgICwgbV9tZXNoQ29sdW1ucyhtZXNoQ29sdW1ucykKLSAgICAsIG1fbWVzaFR5cGUo
bWVzaFR5cGUpCi17Ci19Ci0KLUN1c3RvbUZpbHRlclJlbmRlcmVyOjp+Q3VzdG9tRmlsdGVyUmVu
ZGVyZXIoKQotewotfQotCi1ib29sIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpwcmVtdWx0aXBsaWVk
QWxwaGEoKSBjb25zdAotewotICAgIHJldHVybiBtX3Byb2dyYW1UeXBlID09IFBST0dSQU1fVFlQ
RV9CTEVORFNfRUxFTUVOVF9URVhUVVJFOwotfQotCi1ib29sIEN1c3RvbUZpbHRlclJlbmRlcmVy
Ojpwcm9ncmFtTmVlZHNJbnB1dFRleHR1cmUoKSBjb25zdAotewotICAgIEFTU0VSVChtX2NvbXBp
bGVkUHJvZ3JhbS5nZXQoKSk7Ci0gICAgcmV0dXJuIG1fY29tcGlsZWRQcm9ncmFtLT5zYW1wbGVy
TG9jYXRpb24oKSAhPSAtMTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6ZHJhdyhQ
bGF0Zm9ybTNET2JqZWN0IGlucHV0VGV4dHVyZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkKLXsKLSAg
ICAvLyBGSVhNRTogV2Ugd291bGQgbmVlZCBzb21ldGhpbmcgbGlrZSBDdXN0b21GaWx0ZXJSZW5k
ZXJlclN0YXRlIHRoYXQgd2lsbCBjb250YWluIHRoZSBzaXplIGFuZCBvdGhlciBwYXJhbWV0ZXJz
IGluIHRoZSBmdXR1cmUuIFdlIHNob3VsZCBwYXNzIHRoYXQgdG8gYmluZFByb2dyYW1CdWZmZXJz
IGluc3RlYWQgb2Ygc3RvcmluZyBpdC4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTAwMTA3Ci0gICAgbV9jb250ZXh0U2l6ZSA9IHNpemU7Ci0KLSAgICBi
aW5kUHJvZ3JhbUFuZEJ1ZmZlcnMoaW5wdXRUZXh0dXJlKTsKLSAgICBtX2NvbnRleHQtPmRyYXdF
bGVtZW50cyhHcmFwaGljc0NvbnRleHQzRDo6VFJJQU5HTEVTLCBtX21lc2gtPmluZGljZXNDb3Vu
dCgpLCBHcmFwaGljc0NvbnRleHQzRDo6VU5TSUdORURfU0hPUlQsIDApOwotICAgIHVuYmluZFZl
cnRleEF0dHJpYnV0ZXMoKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6c2V0Q29t
cGlsZWRQcm9ncmFtKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiBjb21w
aWxlZFByb2dyYW0pCi17Ci0gICAgbV9jb21waWxlZFByb2dyYW0gPSBjb21waWxlZFByb2dyYW07
Ci19Ci0KLWJvb2wgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OnByZXBhcmVGb3JEcmF3aW5nKCkKLXsK
LSAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotICAgIGlmICghbV9jb21waWxl
ZFByb2dyYW0gfHwgIW1fY29tcGlsZWRQcm9ncmFtLT5pc0luaXRpYWxpemVkKCkpCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLSAgICBpbml0aWFsaXplTWVzaElmTmVlZGVkKCk7Ci0gICAgcmV0dXJu
IHRydWU7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmluaXRpYWxpemVNZXNoSWZO
ZWVkZWQoKQotewotICAgIGlmIChtX21lc2guZ2V0KCkpCi0gICAgICAgIHJldHVybjsKLQotICAg
IC8vIEZJWE1FOiBTaGFyaW5nIHRoZSBtZXNoIHdvdWxkIGp1c3Qgc2F2ZSB0aGUgdGltZSBuZWVk
ZWQgdG8gdXBsb2FkIGl0IHRvIHRoZSBHUFUsIHNvIEkgYXNzdW1lIHdlIGNvdWxkCi0gICAgLy8g
YmVuY2htYXJrIHRoYXQgZm9yIHBlcmZvcm1hbmNlLgotICAgIC8vIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODQyOQotICAgIG1fbWVzaCA9IEN1c3RvbUZpbHRlck1l
c2g6OmNyZWF0ZShtX2NvbnRleHQuZ2V0KCksIG1fbWVzaENvbHVtbnMsIG1fbWVzaFJvd3MsIEZs
b2F0UmVjdCgwLCAwLCAxLCAxKSwgbV9tZXNoVHlwZSk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVy
UmVuZGVyZXI6OmJpbmRWZXJ0ZXhBdHRyaWJ1dGUoaW50IGF0dHJpYnV0ZUxvY2F0aW9uLCB1bnNp
Z25lZCBzaXplLCB1bnNpZ25lZCBvZmZzZXQpCi17Ci0gICAgaWYgKGF0dHJpYnV0ZUxvY2F0aW9u
ICE9IC0xKSB7Ci0gICAgICAgIG1fY29udGV4dC0+dmVydGV4QXR0cmliUG9pbnRlcihhdHRyaWJ1
dGVMb2NhdGlvbiwgc2l6ZSwgR3JhcGhpY3NDb250ZXh0M0Q6OkZMT0FULCBmYWxzZSwgbV9tZXNo
LT5ieXRlc1BlclZlcnRleCgpLCBvZmZzZXQpOwotICAgICAgICBtX2NvbnRleHQtPmVuYWJsZVZl
cnRleEF0dHJpYkFycmF5KGF0dHJpYnV0ZUxvY2F0aW9uKTsKLSAgICB9Ci19Ci0KLXZvaWQgQ3Vz
dG9tRmlsdGVyUmVuZGVyZXI6OnVuYmluZFZlcnRleEF0dHJpYnV0ZShpbnQgYXR0cmlidXRlTG9j
YXRpb24pCi17Ci0gICAgaWYgKGF0dHJpYnV0ZUxvY2F0aW9uICE9IC0xKQotICAgICAgICBtX2Nv
bnRleHQtPmRpc2FibGVWZXJ0ZXhBdHRyaWJBcnJheShhdHRyaWJ1dGVMb2NhdGlvbik7Ci19Ci0K
LXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9ncmFtQXJyYXlQYXJhbWV0ZXJzKGlu
dCB1bmlmb3JtTG9jYXRpb24sIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKiBhcnJheVBhcmFt
ZXRlcikKLXsKLSAgICB1bnNpZ25lZCBwYXJhbWV0ZXJTaXplID0gYXJyYXlQYXJhbWV0ZXItPnNp
emUoKTsKLSAgICBWZWN0b3I8R0MzRGZsb2F0PiBmbG9hdFZlY3RvcjsKLQotICAgIGZvciAodW5z
aWduZWQgaSA9IDA7IGkgPCBwYXJhbWV0ZXJTaXplOyArK2kpCi0gICAgICAgIGZsb2F0VmVjdG9y
LmFwcGVuZChhcnJheVBhcmFtZXRlci0+dmFsdWVBdChpKSk7Ci0KLSAgICBtX2NvbnRleHQtPnVu
aWZvcm0xZnYodW5pZm9ybUxvY2F0aW9uLCBwYXJhbWV0ZXJTaXplLCBmbG9hdFZlY3Rvci5kYXRh
KCkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpiaW5kUHJvZ3JhbUNvbG9yUGFy
YW1ldGVycyhpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlciog
Y29sb3JQYXJhbWV0ZXIpCi17Ci0gICAgZmxvYXQgciwgZywgYiwgYTsKLSAgICBjb2xvclBhcmFt
ZXRlci0+Y29sb3IoKS5nZXRSR0JBKHIsIGcsIGIsIGEpOwotCi0gICAgbV9jb250ZXh0LT51bmlm
b3JtNGYodW5pZm9ybUxvY2F0aW9uLCByLCBnLCBiLCBhKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0
ZXJSZW5kZXJlcjo6YmluZFByb2dyYW1NYXRyaXhQYXJhbWV0ZXJzKGludCB1bmlmb3JtTG9jYXRp
b24sIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKiBtYXRyaXhQYXJhbWV0ZXIpCi17Ci0gICAg
dW5zaWduZWQgcGFyYW1ldGVyU2l6ZSA9IG1hdHJpeFBhcmFtZXRlci0+c2l6ZSgpOwotICAgIFZl
Y3RvcjxHQzNEZmxvYXQsIDE2PiBmbG9hdFZlY3RvcjsKLQotICAgIGZvciAodW5zaWduZWQgaSA9
IDA7IGkgPCBwYXJhbWV0ZXJTaXplOyArK2kpCi0gICAgICAgIGZsb2F0VmVjdG9yLmFwcGVuZCht
YXRyaXhQYXJhbWV0ZXItPnZhbHVlQXQoaSkpOwotCi0gICAgc3dpdGNoIChwYXJhbWV0ZXJTaXpl
KSB7Ci0gICAgY2FzZSA0OgotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm1NYXRyaXgyZnYodW5p
Zm9ybUxvY2F0aW9uLCAxLCBmYWxzZSwgZmxvYXRWZWN0b3IuZGF0YSgpKTsKLSAgICAgICAgYnJl
YWs7Ci0gICAgY2FzZSA5OgotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm1NYXRyaXgzZnYodW5p
Zm9ybUxvY2F0aW9uLCAxLCBmYWxzZSwgZmxvYXRWZWN0b3IuZGF0YSgpKTsKLSAgICAgICAgYnJl
YWs7Ci0gICAgY2FzZSAxNjoKLSAgICAgICAgbV9jb250ZXh0LT51bmlmb3JtTWF0cml4NGZ2KHVu
aWZvcm1Mb2NhdGlvbiwgMSwgZmFsc2UsIGZsb2F0VmVjdG9yLmRhdGEoKSk7Ci0gICAgICAgIGJy
ZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIH0K
LX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6YmluZFByb2dyYW1OdW1iZXJQYXJhbWV0
ZXJzKGludCB1bmlmb3JtTG9jYXRpb24sIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciogbnVt
YmVyUGFyYW1ldGVyKQotewotICAgIHN3aXRjaCAobnVtYmVyUGFyYW1ldGVyLT5zaXplKCkpIHsK
LSAgICBjYXNlIDE6Ci0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybTFmKHVuaWZvcm1Mb2NhdGlv
biwgbnVtYmVyUGFyYW1ldGVyLT52YWx1ZUF0KDApKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2Fz
ZSAyOgotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm0yZih1bmlmb3JtTG9jYXRpb24sIG51bWJl
clBhcmFtZXRlci0+dmFsdWVBdCgwKSwgbnVtYmVyUGFyYW1ldGVyLT52YWx1ZUF0KDEpKTsKLSAg
ICAgICAgYnJlYWs7Ci0gICAgY2FzZSAzOgotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm0zZih1
bmlmb3JtTG9jYXRpb24sIG51bWJlclBhcmFtZXRlci0+dmFsdWVBdCgwKSwgbnVtYmVyUGFyYW1l
dGVyLT52YWx1ZUF0KDEpLCBudW1iZXJQYXJhbWV0ZXItPnZhbHVlQXQoMikpOwotICAgICAgICBi
cmVhazsKLSAgICBjYXNlIDQ6Ci0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybTRmKHVuaWZvcm1M
b2NhdGlvbiwgbnVtYmVyUGFyYW1ldGVyLT52YWx1ZUF0KDApLCBudW1iZXJQYXJhbWV0ZXItPnZh
bHVlQXQoMSksIG51bWJlclBhcmFtZXRlci0+dmFsdWVBdCgyKSwgbnVtYmVyUGFyYW1ldGVyLT52
YWx1ZUF0KDMpKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7Ci0gICAgfQotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpi
aW5kUHJvZ3JhbVRyYW5zZm9ybVBhcmFtZXRlcihpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21G
aWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqIHRyYW5zZm9ybVBhcmFtZXRlcikKLXsKLSAgICBUcmFu
c2Zvcm1hdGlvbk1hdHJpeCBtYXRyaXg7Ci0gICAgaWYgKG1fY29udGV4dFNpemUud2lkdGgoKSAm
JiBtX2NvbnRleHRTaXplLmhlaWdodCgpKSB7Ci0gICAgICAgIC8vIFRoZSB2aWV3cG9ydCBpcyBh
IGJveCB3aXRoIHRoZSBzaXplIG9mIDEgdW5pdCwgc28gd2UgYXJlIHNjYWxpbmcgdXAgaGVyZSB0
byBtYWtlIHN1cmUgdGhhdCB0cmFuc2xhdGlvbnMgaGFwcGVuIHVzaW5nIHJlYWwgcGl4ZWwKLSAg
ICAgICAgLy8gdW5pdHMuIEF0IHRoZSBlbmQgd2Ugc2NhbGUgYmFjayBkb3duIGluIG9yZGVyIHRv
IG1hcCBpdCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBib3guIE5vdGUgdGhhdCB0cmFuc2Zvcm1zIGNv
bWUgaW4gcmV2ZXJzZSBvcmRlciwgYmVjYXVzZSBpdCBpcwotICAgICAgICAvLyBzdXBwb3NlZCB0
byBtdWx0aXBseSB0byB0aGUgbGVmdCBvZiB0aGUgY29vcmRpbmF0ZXMgb2YgdGhlIHZlcnRpY2Vz
LgotICAgICAgICAvLyBOb3RlIHRoYXQgdGhlIG9yaWdpbiAoMCwgMCkgb2YgdGhlIHZpZXdwb3J0
IGlzIGluIHRoZSBtaWRkbGUgb2YgdGhlIGNvbnRleHQsIHNvIHRoZXJlJ3Mgbm8gbmVlZCB0byBj
aGFuZ2UgdGhlIG9yaWdpbiBvZiB0aGUgdHJhbnNmb3JtCi0gICAgICAgIC8vIGluIG9yZGVyIHRv
IHJvdGF0ZSBhcm91bmQgdGhlIG1pZGRsZSBvZiBtZXNoLgotICAgICAgICBtYXRyaXguc2NhbGUz
ZCgxLjAgLyBtX2NvbnRleHRTaXplLndpZHRoKCksIDEuMCAvIG1fY29udGV4dFNpemUuaGVpZ2h0
KCksIDEpOwotICAgICAgICB0cmFuc2Zvcm1QYXJhbWV0ZXItPmFwcGx5VHJhbnNmb3JtKG1hdHJp
eCwgbV9jb250ZXh0U2l6ZSk7Ci0gICAgICAgIG1hdHJpeC5zY2FsZTNkKG1fY29udGV4dFNpemUu
d2lkdGgoKSwgbV9jb250ZXh0U2l6ZS5oZWlnaHQoKSwgMSk7Ci0gICAgfQotICAgIGZsb2F0IGds
TWF0cml4WzE2XTsKLSAgICBtYXRyaXgudG9Db2x1bW5NYWpvckZsb2F0QXJyYXkoZ2xNYXRyaXgp
OwotICAgIG1fY29udGV4dC0+dW5pZm9ybU1hdHJpeDRmdih1bmlmb3JtTG9jYXRpb24sIDEsIGZh
bHNlLCAmZ2xNYXRyaXhbMF0pOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpiaW5k
UHJvZ3JhbVBhcmFtZXRlcnMoKQotewotICAgIC8vIEZJWE1FOiBGaW5kIGEgd2F5IHRvIHJlc2V0
IHVuaWZvcm1zIHRoYXQgYXJlIG5vdCBzcGVjaWZpZWQgaW4gQ1NTLiBUaGlzIGlzIG5lZWRlZCB0
byBhdm9pZCB1c2luZyB2YWx1ZXMKLSAgICAvLyBzZXQgYnkgb3RoZXIgcHJldmlvdXMgcmVuZGVy
ZWQgZmlsdGVycy4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzY0NDAKLQotICAgIHNpemVfdCBwYXJhbWV0ZXJzU2l6ZSA9IG1fcGFyYW1ldGVycy5zaXpl
KCk7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzU2l6ZTsgKytpKSB7Ci0g
ICAgICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlciogcGFyYW1ldGVyID0gbV9wYXJhbWV0ZXJzLmF0
KGkpLmdldCgpOwotICAgICAgICBpbnQgdW5pZm9ybUxvY2F0aW9uID0gbV9jb21waWxlZFByb2dy
YW0tPnVuaWZvcm1Mb2NhdGlvbkJ5TmFtZShwYXJhbWV0ZXItPm5hbWUoKSk7Ci0gICAgICAgIGlm
ICh1bmlmb3JtTG9jYXRpb24gPT0gLTEpCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAg
c3dpdGNoIChwYXJhbWV0ZXItPnBhcmFtZXRlclR5cGUoKSkgewotICAgICAgICBjYXNlIEN1c3Rv
bUZpbHRlclBhcmFtZXRlcjo6QVJSQVk6Ci0gICAgICAgICAgICBiaW5kUHJvZ3JhbUFycmF5UGFy
YW1ldGVycyh1bmlmb3JtTG9jYXRpb24sIHN0YXRpY19jYXN0PEN1c3RvbUZpbHRlckFycmF5UGFy
YW1ldGVyKj4ocGFyYW1ldGVyKSk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXI6OkNPTE9SOiAgICAgICAgCi0gICAgICAgICAgICBiaW5kUHJv
Z3JhbUNvbG9yUGFyYW1ldGVycyh1bmlmb3JtTG9jYXRpb24sIHN0YXRpY19jYXN0PEN1c3RvbUZp
bHRlckNvbG9yUGFyYW1ldGVyKj4ocGFyYW1ldGVyKSk7Ci0gICAgICAgICAgICBicmVhazsKLSAg
ICAgICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6Ok1BVFJJWDoKLSAgICAgICAgICAgIGJp
bmRQcm9ncmFtTWF0cml4UGFyYW1ldGVycyh1bmlmb3JtTG9jYXRpb24sIHN0YXRpY19jYXN0PEN1
c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKj4ocGFyYW1ldGVyKSk7Ci0gICAgICAgICAgICBicmVh
azsKLSAgICAgICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6Ok5VTUJFUjoKLSAgICAgICAg
ICAgIGJpbmRQcm9ncmFtTnVtYmVyUGFyYW1ldGVycyh1bmlmb3JtTG9jYXRpb24sIHN0YXRpY19j
YXN0PEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcio+KHBhcmFtZXRlcikpOwotICAgICAgICAg
ICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpUUkFOU0ZPUk06
Ci0gICAgICAgICAgICBiaW5kUHJvZ3JhbVRyYW5zZm9ybVBhcmFtZXRlcih1bmlmb3JtTG9jYXRp
b24sIHN0YXRpY19jYXN0PEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcio+KHBhcmFtZXRl
cikpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLXZvaWQgQ3Vz
dG9tRmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9ncmFtQW5kQnVmZmVycyhQbGF0Zm9ybTNET2JqZWN0
IGlucHV0VGV4dHVyZSkKLXsKLSAgICBBU1NFUlQobV9jb21waWxlZFByb2dyYW0tPmlzSW5pdGlh
bGl6ZWQoKSk7Ci0KLSAgICBtX2NvbnRleHQtPnVzZVByb2dyYW0obV9jb21waWxlZFByb2dyYW0t
PnByb2dyYW0oKSk7Ci0KLSAgICBpZiAocHJvZ3JhbU5lZWRzSW5wdXRUZXh0dXJlKCkpIHsKLSAg
ICAgICAgLy8gV2Ugc2hvdWxkIGJlIGJpbmRpbmcgdGhlIERPTSBlbGVtZW50IHRleHR1cmUgc2Ft
cGxlciBvbmx5IGlmIHRoZSBhdXRob3IgaXMgdXNpbmcgdGhlIENTUyBtaXggZnVuY3Rpb24uCi0g
ICAgICAgIEFTU0VSVChtX3Byb2dyYW1UeXBlID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVO
VF9URVhUVVJFKTsKLSAgICAgICAgQVNTRVJUKG1fY29tcGlsZWRQcm9ncmFtLT5zYW1wbGVyTG9j
YXRpb24oKSAhPSAtMSk7Ci0KLSAgICAgICAgbV9jb250ZXh0LT5hY3RpdmVUZXh0dXJlKEdyYXBo
aWNzQ29udGV4dDNEOjpURVhUVVJFMCk7Ci0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybTFpKG1f
Y29tcGlsZWRQcm9ncmFtLT5zYW1wbGVyTG9jYXRpb24oKSwgMCk7Ci0gICAgICAgIG1fY29udGV4
dC0+YmluZFRleHR1cmUoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfMkQsIGlucHV0VGV4dHVy
ZSk7Ci0gICAgICAgIG1fY29udGV4dC0+dGV4UGFyYW1ldGVyaShHcmFwaGljc0NvbnRleHQzRDo6
VEVYVFVSRV8yRCwgR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfTUlOX0ZJTFRFUiwgR3JhcGhp
Y3NDb250ZXh0M0Q6OkxJTkVBUik7Ci0gICAgICAgIG1fY29udGV4dC0+dGV4UGFyYW1ldGVyaShH
cmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV8yRCwgR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVf
TUFHX0ZJTFRFUiwgR3JhcGhpY3NDb250ZXh0M0Q6OkxJTkVBUik7Ci0gICAgICAgIG1fY29udGV4
dC0+dGV4UGFyYW1ldGVyaShHcmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV8yRCwgR3JhcGhpY3ND
b250ZXh0M0Q6OlRFWFRVUkVfV1JBUF9TLCBHcmFwaGljc0NvbnRleHQzRDo6Q0xBTVBfVE9fRURH
RSk7Ci0gICAgICAgIG1fY29udGV4dC0+dGV4UGFyYW1ldGVyaShHcmFwaGljc0NvbnRleHQzRDo6
VEVYVFVSRV8yRCwgR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfV1JBUF9ULCBHcmFwaGljc0Nv
bnRleHQzRDo6Q0xBTVBfVE9fRURHRSk7Ci0gICAgfQotCi0gICAgaWYgKG1fY29tcGlsZWRQcm9n
cmFtLT5wcm9qZWN0aW9uTWF0cml4TG9jYXRpb24oKSAhPSAtMSkgewotICAgICAgICBUcmFuc2Zv
cm1hdGlvbk1hdHJpeCBwcm9qZWN0aW9uTWF0cml4OwotICAgICAgICBvcnRob2dvbmFsUHJvamVj
dGlvbk1hdHJpeChwcm9qZWN0aW9uTWF0cml4LCAtMC41LCAwLjUsIC0wLjUsIDAuNSk7Ci0gICAg
ICAgIGZsb2F0IGdsUHJvamVjdGlvbk1hdHJpeFsxNl07Ci0gICAgICAgIHByb2plY3Rpb25NYXRy
aXgudG9Db2x1bW5NYWpvckZsb2F0QXJyYXkoZ2xQcm9qZWN0aW9uTWF0cml4KTsKLSAgICAgICAg
bV9jb250ZXh0LT51bmlmb3JtTWF0cml4NGZ2KG1fY29tcGlsZWRQcm9ncmFtLT5wcm9qZWN0aW9u
TWF0cml4TG9jYXRpb24oKSwgMSwgZmFsc2UsICZnbFByb2plY3Rpb25NYXRyaXhbMF0pOwotICAg
IH0KLQotICAgIEFTU0VSVChtX21lc2hDb2x1bW5zKTsKLSAgICBBU1NFUlQobV9tZXNoUm93cyk7
Ci0KLSAgICBpZiAobV9jb21waWxlZFByb2dyYW0tPm1lc2hTaXplTG9jYXRpb24oKSAhPSAtMSkK
LSAgICAgICAgbV9jb250ZXh0LT51bmlmb3JtMmYobV9jb21waWxlZFByb2dyYW0tPm1lc2hTaXpl
TG9jYXRpb24oKSwgbV9tZXNoQ29sdW1ucywgbV9tZXNoUm93cyk7Ci0KLSAgICBpZiAobV9jb21w
aWxlZFByb2dyYW0tPnRpbGVTaXplTG9jYXRpb24oKSAhPSAtMSkKLSAgICAgICAgbV9jb250ZXh0
LT51bmlmb3JtMmYobV9jb21waWxlZFByb2dyYW0tPnRpbGVTaXplTG9jYXRpb24oKSwgMS4wIC8g
bV9tZXNoQ29sdW1ucywgMS4wIC8gbV9tZXNoUm93cyk7Ci0KLSAgICBpZiAobV9jb21waWxlZFBy
b2dyYW0tPm1lc2hCb3hMb2NhdGlvbigpICE9IC0xKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBUaGlz
IHdpbGwgY2hhbmdlIHdoZW4gZmlsdGVyIG1hcmdpbnMgd2lsbCBiZSBpbXBsZW1lbnRlZCwKLSAg
ICAgICAgLy8gc2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTQw
MAotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm00ZihtX2NvbXBpbGVkUHJvZ3JhbS0+bWVzaEJv
eExvY2F0aW9uKCksIC0wLjUsIC0wLjUsIDEuMCwgMS4wKTsKLSAgICB9Ci0KLSAgICBpZiAobV9j
b21waWxlZFByb2dyYW0tPnNhbXBsZXJTaXplTG9jYXRpb24oKSAhPSAtMSkKLSAgICAgICAgbV9j
b250ZXh0LT51bmlmb3JtMmYobV9jb21waWxlZFByb2dyYW0tPnNhbXBsZXJTaXplTG9jYXRpb24o
KSwgbV9jb250ZXh0U2l6ZS53aWR0aCgpLCBtX2NvbnRleHRTaXplLmhlaWdodCgpKTsKLQotICAg
IG1fY29udGV4dC0+YmluZEJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6QVJSQVlfQlVGRkVSLCBt
X21lc2gtPnZlcnRpY2VzQnVmZmVyT2JqZWN0KCkpOwotICAgIG1fY29udGV4dC0+YmluZEJ1ZmZl
cihHcmFwaGljc0NvbnRleHQzRDo6RUxFTUVOVF9BUlJBWV9CVUZGRVIsIG1fbWVzaC0+ZWxlbWVu
dHNCdWZmZXJPYmplY3QoKSk7Ci0KLSAgICBiaW5kVmVydGV4QXR0cmlidXRlKG1fY29tcGlsZWRQ
cm9ncmFtLT5wb3NpdGlvbkF0dHJpYkxvY2F0aW9uKCksIFBvc2l0aW9uQXR0cmliU2l6ZSwgUG9z
aXRpb25BdHRyaWJPZmZzZXQpOwotICAgIGJpbmRWZXJ0ZXhBdHRyaWJ1dGUobV9jb21waWxlZFBy
b2dyYW0tPnRleEF0dHJpYkxvY2F0aW9uKCksIFRleEF0dHJpYlNpemUsIFRleEF0dHJpYk9mZnNl
dCk7Ci0gICAgYmluZFZlcnRleEF0dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3JhbS0+bWVzaEF0dHJp
YkxvY2F0aW9uKCksIE1lc2hBdHRyaWJTaXplLCBNZXNoQXR0cmliT2Zmc2V0KTsKLSAgICBpZiAo
bV9tZXNoVHlwZSA9PSBNZXNoVHlwZURldGFjaGVkKQotICAgICAgICBiaW5kVmVydGV4QXR0cmli
dXRlKG1fY29tcGlsZWRQcm9ncmFtLT50cmlhbmdsZUF0dHJpYkxvY2F0aW9uKCksIFRyaWFuZ2xl
QXR0cmliU2l6ZSwgVHJpYW5nbGVBdHRyaWJPZmZzZXQpOwotCi0gICAgYmluZFByb2dyYW1QYXJh
bWV0ZXJzKCk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OnVuYmluZFZlcnRleEF0
dHJpYnV0ZXMoKQotewotICAgIHVuYmluZFZlcnRleEF0dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3Jh
bS0+cG9zaXRpb25BdHRyaWJMb2NhdGlvbigpKTsKLSAgICB1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGUo
bV9jb21waWxlZFByb2dyYW0tPnRleEF0dHJpYkxvY2F0aW9uKCkpOwotICAgIHVuYmluZFZlcnRl
eEF0dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3JhbS0+bWVzaEF0dHJpYkxvY2F0aW9uKCkpOwotICAg
IGlmIChtX21lc2hUeXBlID09IE1lc2hUeXBlRGV0YWNoZWQpCi0gICAgICAgIHVuYmluZFZlcnRl
eEF0dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3JhbS0+dHJpYW5nbGVBdHRyaWJMb2NhdGlvbigpKTsK
LX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFE
RVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmgKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNjZGMyOWYuLjAwMDAwMDAKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5o
CisrKyAvZGV2L251bGwKQEAgLTEsMTA1ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQ29tcGFueSAxMDAsIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
Ci0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJSZW5kZXJl
cl9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlclJlbmRlcmVyX2gKLQotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3Rh
bnRzLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIgotI2luY2x1ZGUg
IkdyYXBoaWNzVHlwZXMzRC5oIgotI2luY2x1ZGUgIkludFNpemUuaCIKLSNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KLQotbmFtZXNwYWNlIFdlYkNv
cmUgewotCi1jbGFzcyBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcjsKLWNsYXNzIEN1c3RvbUZp
bHRlckNvbG9yUGFyYW1ldGVyOwotY2xhc3MgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOwot
Y2xhc3MgQ3VzdG9tRmlsdGVyTWVzaDsKLWNsYXNzIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRl
cjsKLWNsYXNzIEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcjsKLWNsYXNzIEdyYXBoaWNz
Q29udGV4dDNEOwotCi1jbGFzcyBDdXN0b21GaWx0ZXJSZW5kZXJlciA6IHB1YmxpYyBSZWZDb3Vu
dGVkPEN1c3RvbUZpbHRlclJlbmRlcmVyPiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQ
dHI8Q3VzdG9tRmlsdGVyUmVuZGVyZXI+IGNyZWF0ZShQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4
dDNEPiwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRl
ckxpc3QmLAotICAgICAgICB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMs
IEN1c3RvbUZpbHRlck1lc2hUeXBlKTsKLSAgICB+Q3VzdG9tRmlsdGVyUmVuZGVyZXIoKTsKLQot
ICAgIGJvb2wgcHJlbXVsdGlwbGllZEFscGhhKCkgY29uc3Q7Ci0gICAgYm9vbCBwcm9ncmFtTmVl
ZHNJbnB1dFRleHR1cmUoKSBjb25zdDsKLQotICAgIGJvb2wgcHJlcGFyZUZvckRyYXdpbmcoKTsK
LQotICAgIHZvaWQgZHJhdyhQbGF0Zm9ybTNET2JqZWN0LCBjb25zdCBJbnRTaXplJik7Ci0KLSAg
ICBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0qIGNvbXBpbGVkUHJvZ3JhbSgpIGNvbnN0IHsg
cmV0dXJuIG1fY29tcGlsZWRQcm9ncmFtLmdldCgpOyB9Ci0gICAgdm9pZCBzZXRDb21waWxlZFBy
b2dyYW0oUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+KTsKLQotcHJpdmF0
ZToKLSAgICBDdXN0b21GaWx0ZXJSZW5kZXJlcihQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNE
PiwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3QmLAotICAgICAgICB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1
c3RvbUZpbHRlck1lc2hUeXBlKTsKLQotICAgIHZvaWQgaW5pdGlhbGl6ZUNvbXBpbGVkUHJvZ3Jh
bUlmTmVlZGVkKCk7Ci0gICAgdm9pZCBpbml0aWFsaXplTWVzaElmTmVlZGVkKCk7Ci0KLSAgICB2
b2lkIGJpbmRWZXJ0ZXhBdHRyaWJ1dGUoaW50IGF0dHJpYnV0ZUxvY2F0aW9uLCB1bnNpZ25lZCBz
aXplLCB1bnNpZ25lZCBvZmZzZXQpOwotICAgIHZvaWQgdW5iaW5kVmVydGV4QXR0cmlidXRlKGlu
dCBhdHRyaWJ1dGVMb2NhdGlvbik7Ci0gICAgdm9pZCBiaW5kUHJvZ3JhbUFycmF5UGFyYW1ldGVy
cyhpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciopOwotICAg
IHZvaWQgYmluZFByb2dyYW1Db2xvclBhcmFtZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3Vz
dG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIqKTsKLSAgICB2b2lkIGJpbmRQcm9ncmFtTWF0cml4UGFy
YW1ldGVycyhpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciop
OwotICAgIHZvaWQgYmluZFByb2dyYW1OdW1iZXJQYXJhbWV0ZXJzKGludCB1bmlmb3JtTG9jYXRp
b24sIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciopOwotICAgIHZvaWQgYmluZFByb2dyYW1U
cmFuc2Zvcm1QYXJhbWV0ZXIoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3VzdG9tRmlsdGVyVHJhbnNm
b3JtUGFyYW1ldGVyKik7Ci0gICAgdm9pZCBiaW5kUHJvZ3JhbVBhcmFtZXRlcnMoKTsKLSAgICB2
b2lkIGJpbmRQcm9ncmFtQW5kQnVmZmVycyhQbGF0Zm9ybTNET2JqZWN0IGlucHV0VGV4dHVyZSk7
Ci0gICAgdm9pZCB1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGVzKCk7Ci0KLSAgICBSZWZQdHI8R3JhcGhp
Y3NDb250ZXh0M0Q+IG1fY29udGV4dDsKLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQ
cm9ncmFtPiBtX2NvbXBpbGVkUHJvZ3JhbTsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBt
X3Byb2dyYW1UeXBlOwotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJNZXNoPiBtX21lc2g7Ci0gICAg
SW50U2l6ZSBtX2NvbnRleHRTaXplOwotCi0gICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCBt
X3BhcmFtZXRlcnM7Ci0KLSAgICB1bnNpZ25lZCBtX21lc2hSb3dzOwotICAgIHVuc2lnbmVkIG1f
bWVzaENvbHVtbnM7Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbV9tZXNoVHlwZTsKLX07Ci0K
LX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykg
JiYgVVNFKDNEX0dSQVBISUNTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyUmVuZGVyZXJfaApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmgKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDViZDY2MTEuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0
ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDEwMiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERB
TUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcl9oCi0j
ZGVmaW5lIEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcl9oCi0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAi
RmxvYXRTaXplLmgiCi0jaW5jbHVkZSAiVHJhbnNmb3JtT3BlcmF0aW9ucy5oIgotCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEZsb2F0UmVjdDsKLWNsYXNzIFRyYW5zZm9ybWF0aW9uTWF0
cml4OwotCi1jbGFzcyBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIgOiBwdWJsaWMgQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDdXN0
b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXI+IGNyZWF0ZShjb25zdCBTdHJpbmcmIG5hbWUpCi0g
ICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBh
cmFtZXRlcihuYW1lKSk7Ci0gICAgfQotCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPEN1c3RvbUZp
bHRlclBhcmFtZXRlcj4gYmxlbmQoY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBmcm9tUGFy
YW1ldGVyLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmIHNpemUpCi0gICAgewot
ICAgICAgICBpZiAoIWZyb21QYXJhbWV0ZXIgfHwgIWlzU2FtZVR5cGUoKmZyb21QYXJhbWV0ZXIp
KQotICAgICAgICAgICAgcmV0dXJuIHRoaXM7Ci0KLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVy
VHJhbnNmb3JtUGFyYW1ldGVyKiBmcm9tVHJhbnNmb3JtUGFyYW1ldGVyID0gc3RhdGljX2Nhc3Q8
Y29uc3QgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKj4oZnJvbVBhcmFtZXRlcik7Ci0g
ICAgICAgIGNvbnN0IFRyYW5zZm9ybU9wZXJhdGlvbnMmIGZyb20gPSBmcm9tVHJhbnNmb3JtUGFy
YW1ldGVyLT5vcGVyYXRpb25zKCk7Ci0gICAgICAgIGNvbnN0IFRyYW5zZm9ybU9wZXJhdGlvbnMm
IHRvID0gb3BlcmF0aW9ucygpOwotICAgICAgICBpZiAoZnJvbSA9PSB0bykKLSAgICAgICAgICAg
IHJldHVybiB0aGlzOwotICAgICAgIAotICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyVHJhbnNm
b3JtUGFyYW1ldGVyPiByZXN1bHQgPSBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXI6OmNy
ZWF0ZShuYW1lKCkpOwotICAgICAgICBpZiAoZnJvbS5zaXplKCkgJiYgdG8uc2l6ZSgpKQotICAg
ICAgICAgICAgcmVzdWx0LT5zZXRPcGVyYXRpb25zKHRvLmJsZW5kKGZyb20sIHByb2dyZXNzLCBz
aXplKSk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIHJlc3VsdC0+c2V0T3BlcmF0aW9ucyhw
cm9ncmVzcyA+IDAuNSA/IHRvIDogZnJvbSk7Ci0gICAgICAgIHJldHVybiByZXN1bHQ7Ci0gICAg
fQotCi0gICAgdmlydHVhbCBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyJiBvKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKCFpc1NhbWVUeXBlKG8pKQotICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1Q
YXJhbWV0ZXIqIG90aGVyID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyVHJhbnNmb3Jt
UGFyYW1ldGVyKj4oJm8pOwotICAgICAgICByZXR1cm4gbV9vcGVyYXRpb25zID09IG90aGVyLT5t
X29wZXJhdGlvbnM7Ci0gICAgfQotCi0gICAgdm9pZCBhcHBseVRyYW5zZm9ybShUcmFuc2Zvcm1h
dGlvbk1hdHJpeCYgdHJhbnNmb3JtLCBjb25zdCBGbG9hdFNpemUmIGJveFNpemUpIGNvbnN0Ci0g
ICAgewotICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwLCBzaXplID0gbV9vcGVyYXRpb25zLnNp
emUoKTsgaSA8IHNpemU7ICsraSkKLSAgICAgICAgICAgIG1fb3BlcmF0aW9ucy5hdChpKS0+YXBw
bHkodHJhbnNmb3JtLCBib3hTaXplKTsKLSAgICB9Ci0KLSAgICBjb25zdCBUcmFuc2Zvcm1PcGVy
YXRpb25zJiBvcGVyYXRpb25zKCkgY29uc3QgeyByZXR1cm4gbV9vcGVyYXRpb25zOyB9Ci0gICAg
dm9pZCBzZXRPcGVyYXRpb25zKGNvbnN0IFRyYW5zZm9ybU9wZXJhdGlvbnMmIHZhbHVlKSB7IG1f
b3BlcmF0aW9ucyA9IHZhbHVlOyB9Ci0gICAgCi1wcml2YXRlOgotICAgIEN1c3RvbUZpbHRlclRy
YW5zZm9ybVBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUpCi0gICAgICAgIDogQ3VzdG9tRmls
dGVyUGFyYW1ldGVyKFRSQU5TRk9STSwgbmFtZSkKLSAgICB7Ci0gICAgfQotICAgIHZpcnR1YWwg
fkN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcigpCi0gICAgewotICAgIH0KLSAgICAKLSAg
ICBUcmFuc2Zvcm1PcGVyYXRpb25zIG1fb3BlcmF0aW9uczsKLX07Ci0KLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIEN1
c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0u
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0
ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWRj
ZTFhOC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uY3BwCisrKyAvZGV2L251bGwKQEAgLTEs
NjIyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNv
cnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERF
UiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICog
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJj
b25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkN1c3RvbUZp
bHRlclZhbGlkYXRlZFByb2dyYW0uaCIKLQotI2luY2x1ZGUgIkFOR0xFV2ViS2l0QnJpZGdlLmgi
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiQ3Vz
dG9tRmlsdGVyQ29uc3RhbnRzLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dC5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmgiCi0jaW5jbHVkZSAiTm90
SW1wbGVtZW50ZWQuaCIKLSNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi9W
ZWN0b3IuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+Ci0jaW5jbHVkZSA8
d3RmL3RleHQvU3RyaW5nSGFzaC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLSNkZWZpbmUg
U0hBREVSKFNyYykgKCNTcmMpIAotCi10eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCBTaERhdGFUeXBl
PiBTeW1ib2xOYW1lVG9UeXBlTWFwOwotCi1zdGF0aWMgU3ltYm9sTmFtZVRvVHlwZU1hcCogYnVp
bHRJbkF0dHJpYnV0ZU5hbWVUb1R5cGVNYXAoKQotewotICAgIHN0YXRpYyBTeW1ib2xOYW1lVG9U
eXBlTWFwKiBuYW1lVG9UeXBlTWFwID0gMDsKLSAgICBpZiAoIW5hbWVUb1R5cGVNYXApIHsKLSAg
ICAgICAgbmFtZVRvVHlwZU1hcCA9IG5ldyBTeW1ib2xOYW1lVG9UeXBlTWFwOyAgICAgICAgCi0g
ICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgiYV9tZXNoQ29vcmQiLCBTSF9GTE9BVF9WRUMyKTsK
LSAgICAgICAgbmFtZVRvVHlwZU1hcC0+c2V0KCJhX3Bvc2l0aW9uIiwgU0hfRkxPQVRfVkVDNCk7
Ci0gICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgiYV90ZXhDb29yZCIsIFNIX0ZMT0FUX1ZFQzIp
OwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoImFfdHJpYW5nbGVDb29yZCIsIFNIX0ZMT0FU
X1ZFQzMpOwotICAgIH0KLSAgICByZXR1cm4gbmFtZVRvVHlwZU1hcDsKLX0KLQotc3RhdGljIFN5
bWJvbE5hbWVUb1R5cGVNYXAqIGJ1aWx0SW5Vbmlmb3JtTmFtZVRvVHlwZU1hcCgpCi17Ci0gICAg
c3RhdGljIFN5bWJvbE5hbWVUb1R5cGVNYXAqIG5hbWVUb1R5cGVNYXAgPSAwOwotICAgIGlmICgh
bmFtZVRvVHlwZU1hcCkgewotICAgICAgICBuYW1lVG9UeXBlTWFwID0gbmV3IFN5bWJvbE5hbWVU
b1R5cGVNYXA7Ci0gICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgidV9tZXNoQm94IiwgU0hfRkxP
QVRfVkVDNCk7Ci0gICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgidV9tZXNoU2l6ZSIsIFNIX0ZM
T0FUX1ZFQzIpOwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoInVfcHJvamVjdGlvbk1hdHJp
eCIsIFNIX0ZMT0FUX01BVDQpOwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoInVfdGV4dHVy
ZVNpemUiLCBTSF9GTE9BVF9WRUMyKTsKLSAgICAgICAgbmFtZVRvVHlwZU1hcC0+c2V0KCJ1X3Rp
bGVTaXplIiwgU0hfRkxPQVRfVkVDMik7Ci0gICAgfQotICAgIHJldHVybiBuYW1lVG9UeXBlTWFw
OwotfQotCi1zdGF0aWMgYm9vbCB2YWxpZGF0ZVN5bWJvbHMoY29uc3QgVmVjdG9yPEFOR0xFU2hh
ZGVyU3ltYm9sPiYgc3ltYm9scywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi17Ci0g
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzeW1ib2xzLnNpemUoKTsgKytpKSB7Ci0gICAgICAg
IGNvbnN0IEFOR0xFU2hhZGVyU3ltYm9sJiBzeW1ib2wgPSBzeW1ib2xzW2ldOwotICAgICAgICBz
d2l0Y2ggKHN5bWJvbC5zeW1ib2xUeXBlKSB7Ci0gICAgICAgIGNhc2UgU0hBREVSX1NZTUJPTF9U
WVBFX0FUVFJJQlVURTogewotICAgICAgICAgICAgU3ltYm9sTmFtZVRvVHlwZU1hcCogYXR0cmli
dXRlTmFtZVRvVHlwZU1hcCA9IGJ1aWx0SW5BdHRyaWJ1dGVOYW1lVG9UeXBlTWFwKCk7Ci0gICAg
ICAgICAgICBTeW1ib2xOYW1lVG9UeXBlTWFwOjppdGVyYXRvciBidWlsdEluQXR0cmlidXRlID0g
YXR0cmlidXRlTmFtZVRvVHlwZU1hcC0+ZmluZChzeW1ib2wubmFtZSk7Ci0gICAgICAgICAgICBp
ZiAoYnVpbHRJbkF0dHJpYnV0ZSA9PSBhdHRyaWJ1dGVOYW1lVG9UeXBlTWFwLT5lbmQoKSkgewot
ICAgICAgICAgICAgICAgIC8vIFRoZSBhdXRob3IgZGVmaW5lZCBhIGN1c3RvbSBhdHRyaWJ1dGUu
Ci0gICAgICAgICAgICAgICAgLy8gRklYTUU6IFJlcG9ydCB0aGUgdmFsaWRhdGlvbiBlcnJvci4K
LSAgICAgICAgICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzQ0MTYKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgICAgICBpZiAobWVzaFR5cGUgPT0gTWVzaFR5cGVBdHRhY2hlZCAmJiBzeW1ib2wubmFt
ZSA9PSAiYV90cmlhbmdsZUNvb3JkIikgewotICAgICAgICAgICAgICAgIC8vIGFfdHJpYW5nbGVD
b29yZCBpcyBvbmx5IGF2YWlsYWJsZSBmb3IgZGV0YWNoZWQgbWVzaGVzLgotICAgICAgICAgICAg
ICAgIC8vIEZJWE1FOiBSZXBvcnQgdGhlIHZhbGlkYXRpb24gZXJyb3IuCi0gICAgICAgICAgICAg
ICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NDE2Ci0gICAg
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYg
KHN5bWJvbC5kYXRhVHlwZSAhPSBidWlsdEluQXR0cmlidXRlLT52YWx1ZSkgewotICAgICAgICAg
ICAgICAgIC8vIFRoZSBhdXRob3IgZGVmaW5lZCBvbmUgb2YgdGhlIGJ1aWx0LWluIGF0dHJpYnV0
ZXMgd2l0aCB0aGUgd3JvbmcgdHlwZS4KLSAgICAgICAgICAgICAgICAvLyBGSVhNRTogUmVwb3J0
IHRoZSB2YWxpZGF0aW9uIGVycm9yLgotICAgICAgICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDQxNgotICAgICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAg
ICAgIGNhc2UgU0hBREVSX1NZTUJPTF9UWVBFX1VOSUZPUk06IHsKLSAgICAgICAgICAgIGlmIChz
eW1ib2wuaXNTYW1wbGVyKCkpIHsKLSAgICAgICAgICAgICAgICAvLyBGSVhNRTogRm9yIG5vdywg
d2UgcmVzdHJpY3Qgc2hhZGVycyB3aXRoIGFueSBzYW1wbGVyIGRlZmluZWQuCi0gICAgICAgICAg
ICAgICAgLy8gV2hlbiB3ZSBpbXBsZW1lbnQgdGV4dHVyZSBwYXJhbWV0ZXJzLCB3ZSB3aWxsIGFs
bG93IHNoYWRlcnMgd2hvc2Ugc2FtcGxlcnMgYXJlIGJvdW5kIHRvIHZhbGlkIHRleHR1cmVzLgot
ICAgICAgICAgICAgICAgIC8vIFdlIG11c3Qgbm90IGFsbG93IE9wZW5HTCB0byBnaXZlIHVuYm91
bmQgc2FtcGxlcnMgYSBkZWZhdWx0IHZhbHVlIG9mIDAgYmVjYXVzZSB0aGF0IHJlZmVyZW5jZXMg
dGhlIGVsZW1lbnQgdGV4dHVyZSwKLSAgICAgICAgICAgICAgICAvLyB3aGljaCBzaG91bGQgYmUg
aW5hY2Nlc3NpYmxlIHRvIHRoZSBhdXRob3IncyBzaGFkZXIgY29kZS4KLSAgICAgICAgICAgICAg
ICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTYyMzAKLSAgICAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIFN5
bWJvbE5hbWVUb1R5cGVNYXAqIHVuaWZvcm1OYW1lVG9UeXBlTWFwID0gYnVpbHRJblVuaWZvcm1O
YW1lVG9UeXBlTWFwKCk7Ci0gICAgICAgICAgICBTeW1ib2xOYW1lVG9UeXBlTWFwOjppdGVyYXRv
ciBidWlsdEluVW5pZm9ybSA9IHVuaWZvcm1OYW1lVG9UeXBlTWFwLT5maW5kKHN5bWJvbC5uYW1l
KTsKLSAgICAgICAgICAgIGlmIChidWlsdEluVW5pZm9ybSAhPSB1bmlmb3JtTmFtZVRvVHlwZU1h
cC0+ZW5kKCkgJiYgKHN5bWJvbC5pc0FycmF5IHx8IHN5bWJvbC5kYXRhVHlwZSAhPSBidWlsdElu
VW5pZm9ybS0+dmFsdWUpKSB7Ci0gICAgICAgICAgICAgICAgLy8gVGhlIGF1dGhvciBkZWZpbmVk
IG9uZSBvZiB0aGUgYnVpbHQtaW4gdW5pZm9ybXMgd2l0aCB0aGUgd3JvbmcgdHlwZS4KLSAgICAg
ICAgICAgICAgICAvLyBGSVhNRTogUmVwb3J0IHRoZSB2YWxpZGF0aW9uIGVycm9yLgotICAgICAg
ICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDQx
NgotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgICAgIGNhc2UgU0hBREVSX1NZTUJPTF9UWVBFX1ZB
UllJTkc6Ci0gICAgICAgICAgICAvLyBObyBzcGVjaWFsIHZhbGlkYXRpb24gZm9yIHZhcnlpbmcg
dHlwZXMuCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAg
ICB9Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotU3RyaW5nIEN1c3RvbUZpbHRlclZhbGlkYXRl
ZFByb2dyYW06OmRlZmF1bHRWZXJ0ZXhTaGFkZXJTdHJpbmcoKQotewotICAgIERFRklORV9TVEFU
SUNfTE9DQUwoU3RyaW5nLCB2ZXJ0ZXhTaGFkZXJTdHJpbmcsIChBU0NJSUxpdGVyYWwoU0hBREVS
KAotICAgICAgICBhdHRyaWJ1dGUgbWVkaXVtcCB2ZWM0IGFfcG9zaXRpb247Ci0gICAgICAgIHVu
aWZvcm0gbWVkaXVtcCBtYXQ0IHVfcHJvamVjdGlvbk1hdHJpeDsKLQotICAgICAgICB2b2lkIG1h
aW4oKQotICAgICAgICB7Ci0gICAgICAgICAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1h
dHJpeCAqIGFfcG9zaXRpb247Ci0gICAgICAgIH0KLSAgICApKSkpOwotICAgIHJldHVybiB2ZXJ0
ZXhTaGFkZXJTdHJpbmc7Ci19Ci0KLVN0cmluZyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFt
OjpkZWZhdWx0RnJhZ21lbnRTaGFkZXJTdHJpbmcoKQotewotICAgIERFRklORV9TVEFUSUNfTE9D
QUwoU3RyaW5nLCBmcmFnbWVudFNoYWRlclN0cmluZywgKEFTQ0lJTGl0ZXJhbChTSEFERVIoCi0g
ICAgICAgIHZvaWQgbWFpbigpCi0gICAgICAgIHsKLSAgICAgICAgfQotICAgICkpKSk7Ci0gICAg
cmV0dXJuIGZyYWdtZW50U2hhZGVyU3RyaW5nOwotfQotCi1DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtOjpDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtKEN1c3RvbUZpbHRlckdsb2JhbENv
bnRleHQqIGdsb2JhbENvbnRleHQsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9n
cmFtSW5mbykKLSAgICA6IG1fcHJvZ3JhbUluZm8ocHJvZ3JhbUluZm8pCi0gICAgLCBtX2lzSW5p
dGlhbGl6ZWQoZmFsc2UpCi17Ci0gICAgcGxhdGZvcm1Jbml0KCk7Ci0KLSAgICBTdHJpbmcgb3Jp
Z2luYWxWZXJ0ZXhTaGFkZXIgPSBwcm9ncmFtSW5mby52ZXJ0ZXhTaGFkZXJTdHJpbmcoKTsKLSAg
ICBpZiAob3JpZ2luYWxWZXJ0ZXhTaGFkZXIuaXNOdWxsKCkpCi0gICAgICAgIG9yaWdpbmFsVmVy
dGV4U2hhZGVyID0gZGVmYXVsdFZlcnRleFNoYWRlclN0cmluZygpOwotCi0gICAgU3RyaW5nIG9y
aWdpbmFsRnJhZ21lbnRTaGFkZXIgPSBwcm9ncmFtSW5mby5mcmFnbWVudFNoYWRlclN0cmluZygp
OwotICAgIGlmIChvcmlnaW5hbEZyYWdtZW50U2hhZGVyLmlzTnVsbCgpKQotICAgICAgICBvcmln
aW5hbEZyYWdtZW50U2hhZGVyID0gZGVmYXVsdEZyYWdtZW50U2hhZGVyU3RyaW5nKCk7Ci0KLSAg
ICAvLyBTaGFkZXJzIHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlvbiB1c2UgYSBk
aWZmZXJlbnQgdmFsaWRhdG9yIHRoYW4gcmVndWxhciBXZWJHTCBzaGFkZXJzLiBTZWUgQ3VzdG9t
RmlsdGVyR2xvYmFsQ29udGV4dC5oIGZvciBtb3JlIGRldGFpbHMuCi0gICAgYm9vbCBibGVuZHNF
bGVtZW50VGV4dHVyZSA9IChwcm9ncmFtSW5mby5wcm9ncmFtVHlwZSgpID09IFBST0dSQU1fVFlQ
RV9CTEVORFNfRUxFTUVOVF9URVhUVVJFKTsKLSAgICBBTkdMRVdlYktpdEJyaWRnZSogdmFsaWRh
dG9yID0gYmxlbmRzRWxlbWVudFRleHR1cmUgPyBnbG9iYWxDb250ZXh0LT5taXhTaGFkZXJWYWxp
ZGF0b3IoKSA6IGdsb2JhbENvbnRleHQtPndlYmdsU2hhZGVyVmFsaWRhdG9yKCk7Ci0gICAgU3Ry
aW5nIHZlcnRleFNoYWRlckxvZywgZnJhZ21lbnRTaGFkZXJMb2c7Ci0gICAgVmVjdG9yPEFOR0xF
U2hhZGVyU3ltYm9sPiBzeW1ib2xzOwotICAgIGJvb2wgdmVydGV4U2hhZGVyVmFsaWQgPSB2YWxp
ZGF0b3ItPmNvbXBpbGVTaGFkZXJTb3VyY2Uob3JpZ2luYWxWZXJ0ZXhTaGFkZXIudXRmOCgpLmRh
dGEoKSwgU0hBREVSX1RZUEVfVkVSVEVYLCBtX3ZhbGlkYXRlZFZlcnRleFNoYWRlciwgdmVydGV4
U2hhZGVyTG9nLCBzeW1ib2xzKTsKLSAgICBib29sIGZyYWdtZW50U2hhZGVyVmFsaWQgPSB2YWxp
ZGF0b3ItPmNvbXBpbGVTaGFkZXJTb3VyY2Uob3JpZ2luYWxGcmFnbWVudFNoYWRlci51dGY4KCku
ZGF0YSgpLCBTSEFERVJfVFlQRV9GUkFHTUVOVCwgbV92YWxpZGF0ZWRGcmFnbWVudFNoYWRlciwg
ZnJhZ21lbnRTaGFkZXJMb2csIHN5bWJvbHMpOwotICAgIGlmICghdmVydGV4U2hhZGVyVmFsaWQg
fHwgIWZyYWdtZW50U2hhZGVyVmFsaWQpIHsKLSAgICAgICAgLy8gRklYTUU6IFJlcG9ydCB0aGUg
dmFsaWRhdGlvbiBlcnJvcnMuCi0gICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD03NDQxNgotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgaWYgKCF2
YWxpZGF0ZVN5bWJvbHMoc3ltYm9scywgbV9wcm9ncmFtSW5mby5tZXNoVHlwZSgpKSkgewotICAg
ICAgICAvLyBGSVhNRTogUmVwb3J0IHZhbGlkYXRpb24gZXJyb3JzLgotICAgICAgICAvLyBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQ0MTYKLSAgICAgICAgcmV0dXJu
OwotICAgIH0KLQotICAgIC8vIFdlIG5lZWQgdG8gYWRkIHRleHR1cmUgYWNjZXNzLCBibGVuZGlu
ZywgYW5kIGNvbXBvc2l0aW5nIGNvZGUgdG8gc2hhZGVycyB0aGF0IGFyZSByZWZlcmVuY2VkIGZy
b20gdGhlIENTUyBtaXggZnVuY3Rpb24uCi0gICAgaWYgKGJsZW5kc0VsZW1lbnRUZXh0dXJlKSB7
Ci0gICAgICAgIHJld3JpdGVNaXhWZXJ0ZXhTaGFkZXIoc3ltYm9scyk7Ci0gICAgICAgIHJld3Jp
dGVNaXhGcmFnbWVudFNoYWRlcigpOwotICAgIH0KLQotICAgIG1faXNJbml0aWFsaXplZCA9IHRy
dWU7Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiBDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpjb21waWxlZFByb2dyYW0oKQotewotICAgIHJldHVybiBt
X2NvbXBpbGVkUHJvZ3JhbTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFt
OjpzZXRDb21waWxlZFByb2dyYW0oUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dy
YW0+IGNvbXBpbGVkUHJvZ3JhbSkKLXsKLSAgICBtX2NvbXBpbGVkUHJvZ3JhbSA9IGNvbXBpbGVk
UHJvZ3JhbTsKLX0KLQotYm9vbCBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpuZWVkc0lu
cHV0VGV4dHVyZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fcHJvZ3JhbUluZm8ucHJvZ3JhbVR5
cGUoKSA9PSBQUk9HUkFNX1RZUEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRQotICAgICAgICAmJiBt
X3Byb2dyYW1JbmZvLm1peFNldHRpbmdzKCkuY29tcG9zaXRlT3BlcmF0b3IgIT0gQ29tcG9zaXRl
Q2xlYXIKLSAgICAgICAgJiYgbV9wcm9ncmFtSW5mby5taXhTZXR0aW5ncygpLmNvbXBvc2l0ZU9w
ZXJhdG9yICE9IENvbXBvc2l0ZUNvcHk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyVmFsaWRhdGVk
UHJvZ3JhbTo6cmV3cml0ZU1peFZlcnRleFNoYWRlcihjb25zdCBWZWN0b3I8QU5HTEVTaGFkZXJT
eW1ib2w+JiBzeW1ib2xzKQotewotICAgIEFTU0VSVChtX3Byb2dyYW1JbmZvLnByb2dyYW1UeXBl
KCkgPT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUpOwotCi0gICAgLy8gSWYg
dGhlIGF1dGhvciBkZWZpbmVkIGFfdGV4Q29vcmQsIHdlIGNhbiB1c2UgaXQgdG8gc2h1dHRsZSB0
aGUgdGV4dHVyZSBjb29yZGluYXRlIHRvIHRoZSBmcmFnbWVudCBzaGFkZXIuCi0gICAgLy8gTm90
ZSB0aGF0IHZlcnRleCBhdHRyaWJ1dGVzIGFyZSByZWFkLW9ubHkgaW4gR0xTTCwgc28gdGhlIGF1
dGhvciBjb3VsZCBub3QgaGF2ZSBjaGFuZ2VkIGFfdGV4Q29vcmQncyB2YWx1ZS4KLSAgICAvLyBB
bHNvLCBub3RlIHRoYXQgd2Ugd291bGQgaGF2ZSBhbHJlYWR5IHJlamVjdGVkIHRoZSBzaGFkZXIg
aWYgdGhlIGF1dGhvciBkZWZpbmVkIGFfdGV4Q29vcmQgd2l0aCB0aGUgd3JvbmcgdHlwZS4KLSAg
ICBib29sIHRleENvb3JkQXR0cmlidXRlRGVmaW5lZCA9IGZhbHNlOwotICAgIGZvciAoc2l6ZV90
IGkgPSAwOyBpIDwgc3ltYm9scy5zaXplKCk7ICsraSkgewotICAgICAgICBpZiAoc3ltYm9sc1tp
XS5uYW1lID09ICJhX3RleENvb3JkIikKLSAgICAgICAgICAgIHRleENvb3JkQXR0cmlidXRlRGVm
aW5lZCA9IHRydWU7Ci0gICAgfQotCi0gICAgaWYgKCF0ZXhDb29yZEF0dHJpYnV0ZURlZmluZWQp
Ci0gICAgICAgIG1fdmFsaWRhdGVkVmVydGV4U2hhZGVyLmFwcGVuZCgiYXR0cmlidXRlIG1lZGl1
bXAgdmVjMiBhX3RleENvb3JkOyIpOwotCi0gICAgLy8gRHVyaW5nIHZhbGlkYXRpb24sIEFOR0xF
IHJlbmFtZWQgdGhlIGF1dGhvcidzICJtYWluIiBmdW5jdGlvbiB0byAiY3NzX21haW4iLgotICAg
IC8vIFdlIHdyaXRlIG91ciBvd24gIm1haW4iIGZ1bmN0aW9uIGFuZCBjYWxsICJjc3NfbWFpbiIg
ZnJvbSBpdC4KLSAgICAvLyBUaGlzIG1ha2VzIHJld3JpdGluZyBlYXN5IGFuZCBlbnN1cmVzIHRo
YXQgb3VyIGNvZGUgcnVucyBhZnRlciBhbGwgYXV0aG9yIGNvZGUuCi0gICAgbV92YWxpZGF0ZWRW
ZXJ0ZXhTaGFkZXIuYXBwZW5kKFNIQURFUigKLSAgICAgICAgdmFyeWluZyBtZWRpdW1wIHZlYzIg
Y3NzX3ZfdGV4Q29vcmQ7Ci0KLSAgICAgICAgdm9pZCBtYWluKCkKLSAgICAgICAgewotICAgICAg
ICAgICAgY3NzX21haW4oKTsKLSAgICAgICAgICAgIGNzc192X3RleENvb3JkID0gYV90ZXhDb29y
ZDsKLSAgICAgICAgfQotICAgICkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclZhbGlkYXRlZFBy
b2dyYW06OnJld3JpdGVNaXhGcmFnbWVudFNoYWRlcigpCi17Ci0gICAgQVNTRVJUKG1fcHJvZ3Jh
bUluZm8ucHJvZ3JhbVR5cGUoKSA9PSBQUk9HUkFNX1RZUEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVS
RSk7Ci0KLSAgICBTdHJpbmdCdWlsZGVyIGJ1aWxkZXI7Ci0gICAgLy8gQU5HTEUgY29uc2lkZXJl
ZCB0aGVzZSBzeW1ib2xzIGFzIGJ1aWx0LWlucyBkdXJpbmcgdmFsaWRhdGlvbiB1bmRlciB0aGUg
U0hfQ1NTX1NIQURFUlNfU1BFQyBmbGFnLgotICAgIC8vIE5vdywgd2UgaGF2ZSB0byBkZWZpbmUg
dGhlc2Ugc3ltYm9scyBpbiBvcmRlciB0byBtYWtlIHRoaXMgc2hhZGVyIHZhbGlkIEdMU0wuCi0g
ICAgLy8gV2UgZGVmaW5lIHRoZXNlIHN5bWJvbHMgYmVmb3JlIHRoZSBhdXRob3IncyBzaGFkZXIg
Y29kZSwgd2hpY2ggbWFrZXMgdGhlbSBhY2Nlc3NpYmxlIHRvIGF1dGhvciBjb2RlLgotICAgIGJ1
aWxkZXIuYXBwZW5kKFNIQURFUigKLSAgICAgICAgbWVkaXVtcCB2ZWM0IGNzc19NaXhDb2xvciA9
IHZlYzQoMC4wKTsKLSAgICAgICAgbWVkaXVtcCBtYXQ0IGNzc19Db2xvck1hdHJpeCA9IG1hdDQo
MS4wKTsKLSAgICApKTsKLSAgICBidWlsZGVyLmFwcGVuZChtX3ZhbGlkYXRlZEZyYWdtZW50U2hh
ZGVyKTsKLSAgICBidWlsZGVyLmFwcGVuZChibGVuZEZ1bmN0aW9uU3RyaW5nKG1fcHJvZ3JhbUlu
Zm8ubWl4U2V0dGluZ3MoKS5ibGVuZE1vZGUpKTsKLSAgICBidWlsZGVyLmFwcGVuZChjb21wb3Np
dGVGdW5jdGlvblN0cmluZyhtX3Byb2dyYW1JbmZvLm1peFNldHRpbmdzKCkuY29tcG9zaXRlT3Bl
cmF0b3IpKTsKLSAgICAvLyBXZSBkZWZpbmUgc3ltYm9scyBsaWtlICJjc3NfdV90ZXh0dXJlIiBh
ZnRlciB0aGUgYXV0aG9yJ3Mgc2hhZGVyIGNvZGUsIHdoaWNoIG1ha2VzIHRoZW0gaW5hY2Nlc3Np
YmxlIHRvIGF1dGhvciBjb2RlLgotICAgIC8vIEluIHBhcnRpY3VsYXIsICJjc3NfdV90ZXh0dXJl
IiByZXByZXNlbnRzIHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLCBzbyBpdCdzIGltcG9ydGFudCB0
byBrZWVwIGl0IGluYWNjZXNzaWJsZSB0bwotICAgIC8vIGF1dGhvciBjb2RlIGZvciBzZWN1cml0
eSByZWFzb25zLgotICAgIGJ1aWxkZXIuYXBwZW5kKFNIQURFUigKLSAgICAgICAgdW5pZm9ybSBz
YW1wbGVyMkQgY3NzX3VfdGV4dHVyZTsKLSAgICAgICAgdmFyeWluZyBtZWRpdW1wIHZlYzIgY3Nz
X3ZfdGV4Q29vcmQ7Ci0KLSAgICAgICAgdm9pZCBtYWluKCkKLSAgICAgICAgewotICAgICAgICAg
ICAgY3NzX21haW4oKTsKLSAgICAgICAgICAgIG1lZGl1bXAgdmVjNCBvcmlnaW5hbENvbG9yID0g
dGV4dHVyZTJEKGNzc191X3RleHR1cmUsIGNzc192X3RleENvb3JkKTsKLSAgICAgICAgICAgIG1l
ZGl1bXAgdmVjNCBtdWx0aXBsaWVkQ29sb3IgPSBjbGFtcChjc3NfQ29sb3JNYXRyaXggKiBvcmln
aW5hbENvbG9yLCAwLjAsIDEuMCk7Ci0gICAgICAgICAgICBtZWRpdW1wIHZlYzQgY2xhbXBlZE1p
eENvbG9yID0gY2xhbXAoY3NzX01peENvbG9yLCAwLjAsIDEuMCk7Ci0gICAgICAgICAgICBtZWRp
dW1wIHZlYzMgYmxlbmRlZENvbG9yID0gY3NzX0JsZW5kQ29sb3IobXVsdGlwbGllZENvbG9yLnJn
YiwgY2xhbXBlZE1peENvbG9yLnJnYik7Ci0gICAgICAgICAgICBtZWRpdW1wIHZlYzMgd2VpZ2h0
ZWRDb2xvciA9ICgxLjAgLSBtdWx0aXBsaWVkQ29sb3IuYSkgKiBjbGFtcGVkTWl4Q29sb3Iucmdi
ICsgbXVsdGlwbGllZENvbG9yLmEgKiBibGVuZGVkQ29sb3I7Ci0gICAgICAgICAgICBnbF9GcmFn
Q29sb3IgPSBjc3NfQ29tcG9zaXRlKG11bHRpcGxpZWRDb2xvci5yZ2IsIG11bHRpcGxpZWRDb2xv
ci5hLCB3ZWlnaHRlZENvbG9yLnJnYiwgY2xhbXBlZE1peENvbG9yLmEpOwotICAgICAgICB9Ci0g
ICAgKSk7Ci0gICAgbV92YWxpZGF0ZWRGcmFnbWVudFNoYWRlciA9IGJ1aWxkZXIudG9TdHJpbmco
KTsKLX0KLQotU3RyaW5nIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW06OmJsZW5kRnVuY3Rp
b25TdHJpbmcoQmxlbmRNb2RlIGJsZW5kTW9kZSkKLXsKLSAgICAvLyBJbXBsZW1lbnRlZCB1c2lu
ZyB0aGUgc2FtZSBzeW1ib2wgbmFtZXMgYXMgdGhlIENvbXBvc2l0aW5nIGFuZCBCbGVuZGluZyBz
cGVjOgotICAgIC8vIGh0dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxlL3RpcC9jb21w
b3NpdGluZy9pbmRleC5odG1sI2JsZW5kaW5nbm9ybWFsCi0gICAgLy8gQ3M6IGlzIHRoZSBzb3Vy
Y2UgY29sb3IgaW4gY3NzX0JsZW5kQ29sb3IoKSBhbmQgdGhlIHNvdXJjZSBjb2xvciBjb21wb25l
bnQgaW4gY3NzX0JsZW5kQ29tcG9uZW50KCkKLSAgICAvLyBDYjogaXMgdGhlIGJhY2tkcm9wIGNv
bG9yIGluIGNzc19CbGVuZENvbG9yKCkgYW5kIHRoZSBiYWNrZHJvcCBjb2xvciBjb21wb25lbnQg
aW4gY3NzX0JsZW5kQ29tcG9uZW50KCkKLSAgICBjb25zdCBjaGFyKiBibGVuZENvbG9yRXhwcmVz
c2lvbiA9ICJ2ZWMzKGNzc19CbGVuZENvbXBvbmVudChDYi5yLCBDcy5yKSwgY3NzX0JsZW5kQ29t
cG9uZW50KENiLmcsIENzLmcpLCBjc3NfQmxlbmRDb21wb25lbnQoQ2IuYiwgQ3MuYikpIjsKLSAg
ICBjb25zdCBjaGFyKiBibGVuZENvbXBvbmVudEV4cHJlc3Npb24gPSAiQ28gPSAwLjA7IjsKLSAg
ICBib29sIG5lZWRzTHVtaW5vc2l0eUhlbHBlckZ1bmN0aW9ucyA9IGZhbHNlOwotICAgIGJvb2wg
bmVlZHNTYXR1cmF0aW9uSGVscGVyRnVuY3Rpb25zID0gZmFsc2U7Ci0gICAgU3RyaW5nIGJsZW5k
RnVuY3Rpb25TdHJpbmc7Ci0gICAgc3dpdGNoIChibGVuZE1vZGUpIHsKLSAgICBjYXNlIEJsZW5k
TW9kZU5vcm1hbDoKLSAgICAgICAgYmxlbmRDb2xvckV4cHJlc3Npb24gPSAiQ3MiOwotICAgICAg
ICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZU11bHRpcGx5OgotICAgICAgICBibGVuZENvbG9y
RXhwcmVzc2lvbiA9ICJDcyAqIENiIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1v
ZGVTY3JlZW46Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gIkNiICsgQ3MgLSAoQ2Ig
KiBDcykiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZURhcmtlbjoKLSAgICAg
ICAgYmxlbmRDb2xvckV4cHJlc3Npb24gPSAibWluKENiLCBDcykiOwotICAgICAgICBicmVhazsK
LSAgICBjYXNlIEJsZW5kTW9kZUxpZ2h0ZW46Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9u
ID0gIm1heChDYiwgQ3MpIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVEaWZm
ZXJlbmNlOgotICAgICAgICBibGVuZENvbG9yRXhwcmVzc2lvbiA9ICJhYnMoQ2IgLSBDcykiOwot
ICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZUV4Y2x1c2lvbjoKLSAgICAgICAgYmxl
bmRDb2xvckV4cHJlc3Npb24gPSAiQ2IgKyBDcyAtIDIuMCAqIENiICogQ3MiOwotICAgICAgICBi
cmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZU92ZXJsYXk6Ci0gICAgICAgIC8qCi0gICAgICAgICAg
ICBDbyA9IEhhcmRMaWdodChDcywgQ2IpCi0gICAgICAgICAgICAgICA9IGlmKENiIDw9IDAuNSkK
LSAgICAgICAgICAgICAgICAgICAgIE11bHRpcGx5KENzLCAyIHggQ2IpCi0gICAgICAgICAgICAg
ICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIFNjcmVlbihDcywgMiB4IENiIC0gMSkKLSAg
ICAgICAgICAgICAgID0gaWYoQ2IgPD0gMC41KQotICAgICAgICAgICAgICAgICAgICAgQ3MgeCAo
MiB4IENiKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBDcyAr
ICgyIHggQ2IgLSAxKSAtIChDcyB4ICgyIHggQ2IgLSAxKSkKLSAgICAgICAgKi8KLSAgICAgICAg
YmxlbmRDb21wb25lbnRFeHByZXNzaW9uID0gU0hBREVSKAotICAgICAgICAgICAgaWYgKENiIDw9
IDAuNSkKLSAgICAgICAgICAgICAgICBDbyA9IENzICogKDIuMCAqIENiKTsKLSAgICAgICAgICAg
IGVsc2UKLSAgICAgICAgICAgICAgICBDbyA9IENzICsgKDIuMCAqIENiIC0gMS4wKSAtIChDcyAq
ICgyLjAgKiBDYiAtIDEuMCkpOwotICAgICAgICApOwotICAgICAgICBicmVhazsKLSAgICBjYXNl
IEJsZW5kTW9kZUNvbG9yRG9kZ2U6Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBDbyA9IGlmKENz
IDwgMSkKLSAgICAgICAgICAgICAgICAgICAgIG1pbigxLCBDYiAvICgxIC0gQ3MpKQotICAgICAg
ICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAxCi0gICAgICAgICovCi0gICAg
ICAgIGJsZW5kQ29tcG9uZW50RXhwcmVzc2lvbiA9IFNIQURFUigKLSAgICAgICAgICAgIGlmIChD
cyA8IDEuMCkKLSAgICAgICAgICAgICAgICBDbyA9IG1pbigxLjAsIENiIC8gKDEuMCAtIENzKSk7
Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgQ28gPSAxLjA7Ci0gICAgICAgICk7
Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRNb2RlQ29sb3JCdXJuOgotICAgICAgICAv
KgotICAgICAgICAgICAgQ28gPSBpZihDcyA+IDApCi0gICAgICAgICAgICAgICAgICAgICAxIC0g
bWluKDEsICgxIC0gQ2IpIC8gQ3MpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAg
ICAgICAgICAgIDAKLSAgICAgICAgKi8KLSAgICAgICAgYmxlbmRDb21wb25lbnRFeHByZXNzaW9u
ID0gU0hBREVSKAotICAgICAgICAgICAgaWYgKENzID4gMC4wKQotICAgICAgICAgICAgICAgIENv
ID0gMS4wIC0gbWluKDEuMCwgKDEuMCAtIENiKSAvIENzKTsKLSAgICAgICAgICAgIGVsc2UKLSAg
ICAgICAgICAgICAgICBDbyA9IDAuMDsKLSAgICAgICAgKTsKLSAgICAgICAgYnJlYWs7Ci0gICAg
Y2FzZSBCbGVuZE1vZGVIYXJkTGlnaHQ6Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBDbyA9IGlm
KENzIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIE11bHRpcGx5KENiLCAyIHggQ3MpCi0g
ICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIFNjcmVlbihDYiwgMiB4
IENzIC0xKQotICAgICAgICAgICAgICAgPSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAg
ICAgICBDYiB4ICgyIHggQ3MpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAg
ICAgICAgIENiICsgKDIgeCBDcyAtIDEpIC0gKENiIHggKDIgeCBDcyAtIDEpKQotICAgICAgICAq
LwotICAgICAgICBibGVuZENvbXBvbmVudEV4cHJlc3Npb24gPSBTSEFERVIoCi0gICAgICAgICAg
ICBpZiAoQ3MgPD0gMC41KQotICAgICAgICAgICAgICAgIENvID0gQ2IgKiAoMi4wICogQ3MpOwot
ICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIENvID0gQ2IgKyAoMi4wICogQ3MgLSAx
LjApIC0gKENiICogKDIuMCAqIENzIC0gMS4wKSk7Ci0gICAgICAgICk7Ci0gICAgICAgIGJyZWFr
OwotICAgIGNhc2UgQmxlbmRNb2RlU29mdExpZ2h0OgotICAgICAgICAvKgotICAgICAgICAgICAg
Q28gPSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBDYiAtICgxIC0gMiB4IENz
KSB4IENiIHggKDEgLSBDYikKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAg
ICAgICAgQ2IgKyAoMiB4IENzIC0gMSkgeCAoRChDYikgLSBDYikKLQotICAgICAgICAgICAgd2l0
aAotCi0gICAgICAgICAgICBEKENiKSA9IGlmKENiIDw9IDAuMjUpCi0gICAgICAgICAgICAgICAg
ICAgICAgICAoMTYgKiBDYiAtIDEyKSB4IENiICsgNCkgeCBDYgotICAgICAgICAgICAgICAgICAg
ICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBzcXJ0KENiKQotICAgICAgICAqLwotICAg
ICAgICBibGVuZENvbXBvbmVudEV4cHJlc3Npb24gPSBTSEFERVIoCi0gICAgICAgICAgICBtZWRp
dW1wIGZsb2F0IEQ7Ci0gICAgICAgICAgICBpZiAoQ2IgPD0gMC4yNSkKLSAgICAgICAgICAgICAg
ICBEID0gKCgxNi4wICogQ2IgLSAxMi4wKSAqIENiICsgNC4wKSAqIENiOwotICAgICAgICAgICAg
ZWxzZQotICAgICAgICAgICAgICAgIEQgPSBzcXJ0KENiKTsKLQotICAgICAgICAgICAgaWYgKENz
IDw9IDAuNSkKLSAgICAgICAgICAgICAgICBDbyA9IENiIC0gKDEuMCAtIDIuMCAqIENzKSAqIENi
ICogKDEuMCAtIENiKTsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBDbyA9IENi
ICsgKDIuMCAqIENzIC0gMS4wKSAqIChEIC0gQ2IpOwotICAgICAgICApOwotICAgICAgICBicmVh
azsKLSAgICBjYXNlIEJsZW5kTW9kZUNvbG9yOgotICAgICAgICBuZWVkc0x1bWlub3NpdHlIZWxw
ZXJGdW5jdGlvbnMgPSB0cnVlOwotICAgICAgICBibGVuZENvbG9yRXhwcmVzc2lvbiA9ICJjc3Nf
U2V0THVtKENzLCBjc3NfTHVtKENiKSkiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5k
TW9kZUx1bWlub3NpdHk6Ci0gICAgICAgIG5lZWRzTHVtaW5vc2l0eUhlbHBlckZ1bmN0aW9ucyA9
IHRydWU7Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gImNzc19TZXRMdW0oQ2IsIGNz
c19MdW0oQ3MpKSI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRNb2RlSHVlOgotICAg
ICAgICBuZWVkc0x1bWlub3NpdHlIZWxwZXJGdW5jdGlvbnMgPSB0cnVlOwotICAgICAgICBuZWVk
c1NhdHVyYXRpb25IZWxwZXJGdW5jdGlvbnMgPSB0cnVlOwotICAgICAgICBibGVuZENvbG9yRXhw
cmVzc2lvbiA9ICJjc3NfU2V0THVtKGNzc19TZXRTYXQoQ3MsIGNzc19TYXQoQ2IpKSwgY3NzX0x1
bShDYikpIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVTYXR1cmF0aW9uOgot
ICAgICAgICBuZWVkc0x1bWlub3NpdHlIZWxwZXJGdW5jdGlvbnMgPSB0cnVlOwotICAgICAgICBu
ZWVkc1NhdHVyYXRpb25IZWxwZXJGdW5jdGlvbnMgPSB0cnVlOwotICAgICAgICBibGVuZENvbG9y
RXhwcmVzc2lvbiA9ICJjc3NfU2V0THVtKGNzc19TZXRTYXQoQ2IsIGNzc19TYXQoQ3MpKSwgY3Nz
X0x1bShDYikpIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7Ci0gICAgfQotCi0gICAgaWYgKG5lZWRzTHVtaW5vc2l0eUhlbHBlckZ1
bmN0aW9ucykgewotICAgICAgICBibGVuZEZ1bmN0aW9uU3RyaW5nLmFwcGVuZChTSEFERVIoCi0g
ICAgICAgICAgICBtZWRpdW1wIGZsb2F0IGNzc19MdW0obWVkaXVtcCB2ZWMzIEMpCi0gICAgICAg
ICAgICB7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIDAuMyAqIEMuciArIDAuNTkgKiBDLmcgKyAw
LjExICogQy5iOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgbWVkaXVtcCB2ZWMzIGNzc19D
bGlwQ29sb3IobWVkaXVtcCB2ZWMzIEMpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
bWVkaXVtcCBmbG9hdCBMID0gY3NzX0x1bShDKTsKLSAgICAgICAgICAgICAgICBtZWRpdW1wIGZs
b2F0IG4gPSBtaW4obWluKEMuciwgQy5nKSwgQy5iKTsKLSAgICAgICAgICAgICAgICBtZWRpdW1w
IGZsb2F0IHggPSBtYXgobWF4KEMuciwgQy5nKSwgQy5iKTsKLSAgICAgICAgICAgICAgICBpZiAo
biA8IDAuMCkKLSAgICAgICAgICAgICAgICAgICAgQyA9IEwgKyAoKChDIC0gTCkgKiBMKSAvIChM
IC0gbikpOwotICAgICAgICAgICAgICAgIGlmICh4ID4gMS4wKQotICAgICAgICAgICAgICAgICAg
ICBDID0gTCArICgoKEMgLSBMKSAqICgxLjAgLSBMKSAvICh4IC0gTCkpKTsKLSAgICAgICAgICAg
ICAgICByZXR1cm4gQzsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIG1lZGl1bXAgdmVjMyBj
c3NfU2V0THVtKG1lZGl1bXAgdmVjMyBDLCBtZWRpdW1wIGZsb2F0IGwpCi0gICAgICAgICAgICB7
Ci0gICAgICAgICAgICAgICAgQyArPSBsIC0gY3NzX0x1bShDKTsKLSAgICAgICAgICAgICAgICBy
ZXR1cm4gY3NzX0NsaXBDb2xvcihDKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgKSk7Ci0gICAg
fQotCi0gICAgaWYgKG5lZWRzU2F0dXJhdGlvbkhlbHBlckZ1bmN0aW9ucykgewotICAgICAgICBi
bGVuZEZ1bmN0aW9uU3RyaW5nLmFwcGVuZChTSEFERVIoCi0gICAgICAgICAgICBtZWRpdW1wIGZs
b2F0IGNzc19TYXQobWVkaXVtcCB2ZWMzIEMpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAg
ICAgbWVkaXVtcCBmbG9hdCBjTWluID0gbWluKG1pbihDLnIsIEMuZyksIEMuYik7Ci0gICAgICAg
ICAgICAgICAgbWVkaXVtcCBmbG9hdCBjTWF4ID0gbWF4KG1heChDLnIsIEMuZyksIEMuYik7Ci0g
ICAgICAgICAgICAgICAgcmV0dXJuIGNNYXggLSBjTWluOwotICAgICAgICAgICAgfQotICAgICAg
ICAgICAgdm9pZCBjc3NfU2V0U2F0SGVscGVyKGlub3V0IG1lZGl1bXAgZmxvYXQgY01pbiwgaW5v
dXQgbWVkaXVtcCBmbG9hdCBjTWlkLCBpbm91dCBtZWRpdW1wIGZsb2F0IGNNYXgsIG1lZGl1bXAg
ZmxvYXQgcykKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBpZiAoY01heCA+IGNNaW4p
IHsKLSAgICAgICAgICAgICAgICAgICAgY01pZCA9ICgoKGNNaWQgLSBjTWluKSAqIHMpIC8gKGNN
YXggLSBjTWluKSk7Ci0gICAgICAgICAgICAgICAgICAgIGNNYXggPSBzOwotICAgICAgICAgICAg
ICAgIH0gZWxzZQotICAgICAgICAgICAgICAgICAgICBjTWlkID0gY01heCA9IDAuMDsKLSAgICAg
ICAgICAgICAgICBjTWluID0gMC4wOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgbWVkaXVt
cCB2ZWMzIGNzc19TZXRTYXQobWVkaXVtcCB2ZWMzIEMsIG1lZGl1bXAgZmxvYXQgcykKLSAgICAg
ICAgICAgIHsKLSAgICAgICAgICAgICAgICBpZiAoQy5yIDw9IEMuZykgewotICAgICAgICAgICAg
ICAgICAgICBpZiAoQy5nIDw9IEMuYikKLSAgICAgICAgICAgICAgICAgICAgICAgIGNzc19TZXRT
YXRIZWxwZXIoQy5yLCBDLmcsIEMuYiwgcyk7Ci0gICAgICAgICAgICAgICAgICAgIGVsc2Ugewot
ICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEMuciA8PSBDLmIpCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY3NzX1NldFNhdEhlbHBlcihDLnIsIEMuYiwgQy5nLCBzKTsKLSAgICAgICAg
ICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjc3NfU2V0
U2F0SGVscGVyKEMuYiwgQy5yLCBDLmcsIHMpOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKEMuciA8PSBDLmIp
Ci0gICAgICAgICAgICAgICAgICAgICAgICBjc3NfU2V0U2F0SGVscGVyKEMuZywgQy5yLCBDLmIs
IHMpOwotICAgICAgICAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAg
IGlmIChDLmcgPD0gQy5iKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzc19TZXRTYXRI
ZWxwZXIoQy5nLCBDLmIsIEMuciwgcyk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBlbHNlCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY3NzX1NldFNhdEhlbHBlcihDLmIsIEMuZywgQy5y
LCBzKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgICAgICByZXR1cm4gQzsKLSAgICAgICAgICAgIH0KLSAgICAgICAgKSk7Ci0gICAgfQotCi0g
ICAgYmxlbmRGdW5jdGlvblN0cmluZy5hcHBlbmQoU3RyaW5nOjpmb3JtYXQoU0hBREVSKAotICAg
ICAgICBtZWRpdW1wIGZsb2F0IGNzc19CbGVuZENvbXBvbmVudChtZWRpdW1wIGZsb2F0IENiLCBt
ZWRpdW1wIGZsb2F0IENzKQotICAgICAgICB7Ci0gICAgICAgICAgICBtZWRpdW1wIGZsb2F0IENv
OwotICAgICAgICAgICAgJXMKLSAgICAgICAgICAgIHJldHVybiBDbzsKLSAgICAgICAgfQotICAg
ICAgICBtZWRpdW1wIHZlYzMgY3NzX0JsZW5kQ29sb3IobWVkaXVtcCB2ZWMzIENiLCBtZWRpdW1w
IHZlYzMgQ3MpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHJldHVybiAlczsKLSAgICAgICAgfQot
ICAgICksIGJsZW5kQ29tcG9uZW50RXhwcmVzc2lvbiwgYmxlbmRDb2xvckV4cHJlc3Npb24pKTsK
LQotICAgIHJldHVybiBibGVuZEZ1bmN0aW9uU3RyaW5nOwotfQotCi1TdHJpbmcgQ3VzdG9tRmls
dGVyVmFsaWRhdGVkUHJvZ3JhbTo6Y29tcG9zaXRlRnVuY3Rpb25TdHJpbmcoQ29tcG9zaXRlT3Bl
cmF0b3IgY29tcG9zaXRlT3BlcmF0b3IpCi17Ci0gICAgLy8gVXNlIHRoZSBzYW1lIHN5bWJvbCBu
YW1lcyBhcyB0aGUgQ29tcG9zaXRpbmcgYW5kIEJsZW5kaW5nIHNwZWM6Ci0gICAgLy8gaHR0cHM6
Ly9kdmNzLnczLm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwj
YmxlbmRpbmdub3JtYWwKLSAgICAvLyBDczogaXMgdGhlIHNvdXJjZSBjb2xvcgotICAgIC8vIENi
OiBpcyB0aGUgYmFja2Ryb3AgY29sb3IKLSAgICAvLyBhczogaXMgdGhlIHNvdXJjZSBhbHBoYQot
ICAgIC8vIGFiOiBpcyB0aGUgYmFja2Ryb3AgYWxwaGEKLSAgICAvLyBGYTogaXMgZGVmaW5lZCBi
eSB0aGUgUG9ydGVyIER1ZmYgb3BlcmF0b3IgaW4gdXNlCi0gICAgLy8gRmI6IGlzIGRlZmluZWQg
YnkgdGhlIFBvcnRlciBEdWZmIG9wZXJhdG9yIGluIHVzZQotICAgIGNvbnN0IGNoYXIqIEZhID0g
MDsKLSAgICBjb25zdCBjaGFyKiBGYiA9IDA7Ci0gICAgc3dpdGNoIChjb21wb3NpdGVPcGVyYXRv
cikgewotICAgIGNhc2UgQ29tcG9zaXRlU291cmNlQXRvcDoKLSAgICAgICAgRmEgPSAiYWIiOwot
ICAgICAgICBGYiA9ICIxLjAgLSBhcyI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9z
aXRlQ2xlYXI6Ci0gICAgICAgIEZhID0gIjAuMCI7Ci0gICAgICAgIEZiID0gIjAuMCI7Ci0gICAg
ICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9zaXRlQ29weToKLSAgICAgICAgRmEgPSAiMS4wIjsK
LSAgICAgICAgRmIgPSAiMC4wIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVT
b3VyY2VPdmVyOgotICAgICAgICBGYSA9ICIxLjAiOwotICAgICAgICBGYiA9ICIxLjAgLSBhcyI7
Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9zaXRlU291cmNlSW46Ci0gICAgICAgIEZh
ID0gImFiIjsKLSAgICAgICAgRmIgPSAiMC4wIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBD
b21wb3NpdGVTb3VyY2VPdXQ6Ci0gICAgICAgIEZhID0gIjEuMCAtIGFiIjsKLSAgICAgICAgRmIg
PSAiMC4wIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVEZXN0aW5hdGlvbk92
ZXI6Ci0gICAgICAgIEZhID0gIjEuMCAtIGFiIjsKLSAgICAgICAgRmIgPSAiMS4wIjsKLSAgICAg
ICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVEZXN0aW5hdGlvbkluOgotICAgICAgICBGYSA9
ICIwLjAiOwotICAgICAgICBGYiA9ICJhcyI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29t
cG9zaXRlRGVzdGluYXRpb25PdXQ6Ci0gICAgICAgIEZhID0gIjAuMCI7Ci0gICAgICAgIEZiID0g
IjEuMCAtIGFzIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVEZXN0aW5hdGlv
bkF0b3A6Ci0gICAgICAgIEZhID0gIjEuMCAtIGFiIjsKLSAgICAgICAgRmIgPSAiYXMiOwotICAg
ICAgICBicmVhazsKLSAgICBjYXNlIENvbXBvc2l0ZVhPUjoKLSAgICAgICAgRmEgPSAiMS4wIC0g
YWIiOwotICAgICAgICBGYiA9ICIxLjAgLSBhcyI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2Ug
Q29tcG9zaXRlUGx1c0xpZ2h0ZXI6Ci0gICAgICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgICAg
IHJldHVybiBTdHJpbmcoKTsKLSAgICBkZWZhdWx0OgotICAgICAgICAvLyBUaGUgQ1NTIHBhcnNl
ciBzaG91bGQgbm90IGhhdmUgYWNjZXB0ZWQgYW55IG90aGVyIGNvbXBvc2l0ZSBvcGVyYXRvcnMu
Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICByZXR1cm4gU3RyaW5nKCk7
Ci0gICAgfQotCi0gICAgQVNTRVJUKEZhICYmIEZiKTsKLSAgICAvLyBVc2UgdGhlIGdlbmVyYWwg
Zm9ybXVsYSBmb3IgY29tcG9zaXRpbmcsIGxpZnRlZCBmcm9tIHRoZSBzcGVjOgotICAgIC8vIGh0
dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxlL3RpcC9jb21wb3NpdGluZy9pbmRleC5o
dG1sI2dlbmVyYWxmb3JtdWxhCi0gICAgcmV0dXJuIFN0cmluZzo6Zm9ybWF0KFNIQURFUigKLSAg
ICAgICAgbWVkaXVtcCB2ZWM0IGNzc19Db21wb3NpdGUobWVkaXVtcCB2ZWMzIENiLCBtZWRpdW1w
IGZsb2F0IGFiLCBtZWRpdW1wIHZlYzMgQ3MsIG1lZGl1bXAgZmxvYXQgYXMpCi0gICAgICAgIHsK
LSAgICAgICAgICAgIG1lZGl1bXAgZmxvYXQgRmEgPSAlczsKLSAgICAgICAgICAgIG1lZGl1bXAg
ZmxvYXQgRmIgPSAlczsKLSAgICAgICAgICAgIHJldHVybiB2ZWM0KGFzICogRmEgKiBDcyArIGFi
ICogRmIgKiBDYiwgYXMgKiBGYSArIGFiICogRmIpOyAKLSAgICAgICAgfQotICAgICksIEZhLCBG
Yik7Ci19Ci0gICAgCi1DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjp+Q3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbSgpCi17Ci0gICAgcGxhdGZvcm1EZXN0cm95KCk7Ci19Ci0KLUN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW06OnZhbGlkYXRl
ZFByb2dyYW1JbmZvKCkgY29uc3QKLXsKLSAgICBBU1NFUlQobV9pc0luaXRpYWxpemVkKTsKLSAg
ICByZXR1cm4gQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8obV92YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIs
IG1fdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXIsIG1fcHJvZ3JhbUluZm8ucHJvZ3JhbVR5cGUoKSwg
bV9wcm9ncmFtSW5mby5taXhTZXR0aW5ncygpLCBtX3Byb2dyYW1JbmZvLm1lc2hUeXBlKCkpOwot
fQotCi0jaWYgIVVTRShURVhUVVJFX01BUFBFUikKLXZvaWQgQ3VzdG9tRmlsdGVyVmFsaWRhdGVk
UHJvZ3JhbTo6cGxhdGZvcm1Jbml0KCkKLXsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJWYWxpZGF0
ZWRQcm9ncmFtOjpwbGF0Zm9ybURlc3Ryb3koKQotewotfQotI2VuZGlmCi0KLX0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDY3MDQyZjIuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgKKysrIC9kZXYvbnVs
bApAQCAtMSwxMjMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0
ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xh
aW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lm
bmRlZiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRl
ICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+
Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0j
aW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQot
c3RydWN0IEFOR0xFU2hhZGVyU3ltYm9sOwotY2xhc3MgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9n
cmFtOwotY2xhc3MgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dDsKLQotI2lmIFVTRShURVhUVVJF
X01BUFBFUikKLWNsYXNzIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbTsKLXR5
cGVkZWYgVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtIFBsYXRmb3JtQ29tcGls
ZWRQcm9ncmFtOwotI2VuZGlmCi0KLS8vCi0vLyBBIHVuaXF1ZSBjb21iaW5hdGlvbiBvZiB2ZXJ0
ZXggc2hhZGVyIGFuZCBmcmFnbWVudCBzaGFkZXIgaXMgb25seSB2YWxpZGF0ZWQgYW5kIGNvbXBp
bGVkIG9uY2UuCi0vLyBBbGwgc2hhZGVycyBhcmUgdmFsaWRhdGVkIHRocm91Z2ggQU5HTEUgaW4g
Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbSBiZWZvcmUgYmVpbmcgY29tcGlsZWQgYnkgdGhl
IEdyYXBoaWNzQ29udGV4dDNEIGluIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS4KLS8vIEZv
ciBzaGFkZXJzIHRoYXQgdXNlIHRoZSBDU1MgbWl4IGZ1bmN0aW9uLCBDdXN0b21GaWx0ZXJWYWxp
ZGF0ZWRQcm9ncmFtIGFkZHMgc2hhZGVyIGNvZGUgdG8gcGVyZm9ybSBET00gdGV4dHVyZSBhY2Nl
c3MsIGJsZW5kaW5nLCBhbmQgY29tcG9zaXRpbmcuCi0vLwotY2xhc3MgQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbSA6IHB1YmxpYyBSZWZDb3VudGVkPEN1c3RvbUZpbHRlclZhbGlkYXRlZFBy
b2dyYW0+IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxp
ZGF0ZWRQcm9ncmFtPiBjcmVhdGUoQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCogZ2xvYmFsQ29u
dGV4dCwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvKQotICAgIHsK
LSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFt
KGdsb2JhbENvbnRleHQsIHByb2dyYW1JbmZvKSk7Ci0gICAgfQotCi0gICAgfkN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0oKTsKLQotICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZv
JiBwcm9ncmFtSW5mbygpIGNvbnN0IHsgcmV0dXJuIG1fcHJvZ3JhbUluZm87IH0KLSAgICBDdXN0
b21GaWx0ZXJQcm9ncmFtSW5mbyB2YWxpZGF0ZWRQcm9ncmFtSW5mbygpIGNvbnN0OwotICAgIAot
ICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiBjb21waWxlZFByb2dy
YW0oKTsKLSAgICB2b2lkIHNldENvbXBpbGVkUHJvZ3JhbShQYXNzUmVmUHRyPEN1c3RvbUZpbHRl
ckNvbXBpbGVkUHJvZ3JhbT4pOwotCi0gICAgY29uc3QgU3RyaW5nJiB2YWxpZGF0ZWRWZXJ0ZXhT
aGFkZXIoKSBjb25zdCAKLSAgICB7Ci0gICAgICAgIEFTU0VSVChtX2lzSW5pdGlhbGl6ZWQpOyAK
LSAgICAgICAgcmV0dXJuIG1fdmFsaWRhdGVkVmVydGV4U2hhZGVyOyAKLSAgICB9Ci0KLSAgICBj
b25zdCBTdHJpbmcmIHZhbGlkYXRlZEZyYWdtZW50U2hhZGVyKCkgY29uc3QgCi0gICAgeyAKLSAg
ICAgICAgQVNTRVJUKG1faXNJbml0aWFsaXplZCk7IAotICAgICAgICByZXR1cm4gbV92YWxpZGF0
ZWRGcmFnbWVudFNoYWRlcjsgCi0gICAgfQotCi0jaWYgVVNFKFRFWFRVUkVfTUFQUEVSKQotICAg
IFBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKiBwbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSgpOwotI2Vu
ZGlmCi0KLSAgICBib29sIGlzSW5pdGlhbGl6ZWQoKSBjb25zdCB7IHJldHVybiBtX2lzSW5pdGlh
bGl6ZWQ7IH0KLXByaXZhdGU6Ci0gICAgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbShDdXN0
b21GaWx0ZXJHbG9iYWxDb250ZXh0KiwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mKTsK
LQotICAgIHZvaWQgcGxhdGZvcm1Jbml0KCk7Ci0gICAgdm9pZCBwbGF0Zm9ybURlc3Ryb3koKTsK
LQotICAgIHN0YXRpYyBTdHJpbmcgZGVmYXVsdFZlcnRleFNoYWRlclN0cmluZygpOwotICAgIHN0
YXRpYyBTdHJpbmcgZGVmYXVsdEZyYWdtZW50U2hhZGVyU3RyaW5nKCk7Ci0KLSAgICBzdGF0aWMg
U3RyaW5nIGJsZW5kRnVuY3Rpb25TdHJpbmcoQmxlbmRNb2RlKTsKLSAgICBzdGF0aWMgU3RyaW5n
IGNvbXBvc2l0ZUZ1bmN0aW9uU3RyaW5nKENvbXBvc2l0ZU9wZXJhdG9yKTsKLQotICAgIHZvaWQg
cmV3cml0ZU1peFZlcnRleFNoYWRlcihjb25zdCBWZWN0b3I8QU5HTEVTaGFkZXJTeW1ib2w+JiBz
eW1ib2xzKTsKLSAgICB2b2lkIHJld3JpdGVNaXhGcmFnbWVudFNoYWRlcigpOwotCi0gICAgYm9v
bCBuZWVkc0lucHV0VGV4dHVyZSgpIGNvbnN0OwotCi0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8gbV9wcm9ncmFtSW5mbzsKLQotICAgIFN0cmluZyBtX3ZhbGlkYXRlZFZlcnRleFNoYWRlcjsK
LSAgICBTdHJpbmcgbV92YWxpZGF0ZWRGcmFnbWVudFNoYWRlcjsKLQotICAgIFJlZlB0cjxDdXN0
b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IG1fY29tcGlsZWRQcm9ncmFtOwotI2lmIFVTRShURVhU
VVJFX01BUFBFUikKLSAgICBQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSogbV9wbGF0Zm9ybUNvbXBp
bGVkUHJvZ3JhbTsKLSNlbmRpZgotCi0gICAgYm9vbCBtX2lzSW5pdGlhbGl6ZWQ7Ci19OwotCi19
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmls
dGVyLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZGM1NjExZC4uMDAwMDAwMAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmls
dGVyLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDM4MyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
LSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0g
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICog
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLSNpbmNsdWRlICJGRUN1
c3RvbUZpbHRlci5oIgotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmgi
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0
ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiRXh0ZW5zaW9uczNELmgiCi0jaW5jbHVk
ZSAiR3JhcGhpY3NDb250ZXh0M0QuaCIKLSNpbmNsdWRlICJUZXh0U3RyZWFtLmgiCi0KLSNpbmNs
dWRlIDxydW50aW1lL1VpbnQ4Q2xhbXBlZEFycmF5Lmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsK
LQotRkVDdXN0b21GaWx0ZXI6OkZFQ3VzdG9tRmlsdGVyKEZpbHRlciogZmlsdGVyLCBQYXNzUmVm
UHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjb250ZXh0LCBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZh
bGlkYXRlZFByb2dyYW0+IHZhbGlkYXRlZFByb2dyYW0sIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3QmIHBhcmFtZXRlcnMsCi0gICAgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1l
c2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAgICA6IEZpbHRlckVm
ZmVjdChmaWx0ZXIpCi0gICAgLCBtX2NvbnRleHQoY29udGV4dCkKLSAgICAsIG1fdmFsaWRhdGVk
UHJvZ3JhbSh2YWxpZGF0ZWRQcm9ncmFtKQotICAgICwgbV9pbnB1dFRleHR1cmUoMCkKLSAgICAs
IG1fZnJhbWVCdWZmZXIoMCkKLSAgICAsIG1fZGVwdGhCdWZmZXIoMCkKLSAgICAsIG1fZGVzdFRl
eHR1cmUoMCkKLSAgICAsIG1fdHJpZWRNdWx0aXNhbXBsZUJ1ZmZlcihmYWxzZSkKLSAgICAsIG1f
bXVsdGlzYW1wbGVGcmFtZUJ1ZmZlcigwKQotICAgICwgbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZl
cigwKQotICAgICwgbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKDApCi17Ci0gICAgLy8gV2Ugd2ls
bCBub3QgcGFzcyBhIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbSBoZXJlLCBhcyB3ZSBvbmx5
IHdhbnQgdG8gY29tcGlsZSBpdCB3aGVuIHdlIGFjdHVhbGx5IG5lZWQgaXQgaW4gdGhlIGZpcnN0
IHBhaW50LgotICAgIG1fY3VzdG9tRmlsdGVyUmVuZGVyZXIgPSBDdXN0b21GaWx0ZXJSZW5kZXJl
cjo6Y3JlYXRlKG1fY29udGV4dCwgbV92YWxpZGF0ZWRQcm9ncmFtLT5wcm9ncmFtSW5mbygpLnBy
b2dyYW1UeXBlKCksIHBhcmFtZXRlcnMsIG1lc2hSb3dzLCBtZXNoQ29sdW1ucywgbWVzaFR5cGUp
OwotfQotCi1QYXNzUmVmUHRyPEZFQ3VzdG9tRmlsdGVyPiBGRUN1c3RvbUZpbHRlcjo6Y3JlYXRl
KEZpbHRlciogZmlsdGVyLCBQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjb250ZXh0LCBQ
YXNzUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+IHZhbGlkYXRlZFByb2dyYW0s
IGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHBhcmFtZXRlcnMsCi0gICAgdW5zaWdu
ZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBt
ZXNoVHlwZSkKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IEZFQ3VzdG9tRmlsdGVyKGZpbHRl
ciwgY29udGV4dCwgdmFsaWRhdGVkUHJvZ3JhbSwgcGFyYW1ldGVycywgbWVzaFJvd3MsIG1lc2hD
b2x1bW5zLCBtZXNoVHlwZSkpOwotfQotCi1GRUN1c3RvbUZpbHRlcjo6fkZFQ3VzdG9tRmlsdGVy
KCkKLXsKLSAgICBkZWxldGVSZW5kZXJCdWZmZXJzKCk7Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0
ZXI6OmRlbGV0ZVJlbmRlckJ1ZmZlcnMoKQotewotICAgIEFTU0VSVChtX2NvbnRleHQpOwotICAg
IG1fY29udGV4dC0+bWFrZUNvbnRleHRDdXJyZW50KCk7Ci0gICAgaWYgKG1faW5wdXRUZXh0dXJl
KSB7Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlVGV4dHVyZShtX2lucHV0VGV4dHVyZSk7Ci0g
ICAgICAgIG1faW5wdXRUZXh0dXJlID0gMDsKLSAgICB9Ci0gICAgaWYgKG1fZnJhbWVCdWZmZXIp
IHsKLSAgICAgICAgLy8gTWFrZSBzdXJlIHRvIHVuYmluZCBhbnkgZnJhbWVidWZmZXIgZnJvbSB0
aGUgY29udGV4dCBmaXJzdCwgb3RoZXJ3aXNlCi0gICAgICAgIC8vIHNvbWUgcGxhdGZvcm1zIG1p
Z2h0IHJlZnVzZSB0byBiaW5kIHRoZSBzYW1lIGJ1ZmZlciBpZCBhZ2Fpbi4KLSAgICAgICAgbV9j
b250ZXh0LT5iaW5kRnJhbWVidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSLCAw
KTsKLSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVGcmFtZWJ1ZmZlcihtX2ZyYW1lQnVmZmVyKTsK
LSAgICAgICAgbV9mcmFtZUJ1ZmZlciA9IDA7Ci0gICAgfQotICAgIGlmIChtX2RlcHRoQnVmZmVy
KSB7Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlUmVuZGVyYnVmZmVyKG1fZGVwdGhCdWZmZXIp
OwotICAgICAgICBtX2RlcHRoQnVmZmVyID0gMDsKLSAgICB9Ci0gICAgaWYgKG1fZGVzdFRleHR1
cmUpIHsKLSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVUZXh0dXJlKG1fZGVzdFRleHR1cmUpOwot
ICAgICAgICBtX2Rlc3RUZXh0dXJlID0gMDsKLSAgICB9Ci0gICAgZGVsZXRlTXVsdGlzYW1wbGVS
ZW5kZXJCdWZmZXJzKCk7Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0ZXI6OmRlbGV0ZU11bHRpc2Ft
cGxlUmVuZGVyQnVmZmVycygpCi17Ci0gICAgaWYgKG1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZlcikg
ewotICAgICAgICAvLyBNYWtlIHN1cmUgdG8gdW5iaW5kIGFueSBmcmFtZWJ1ZmZlciBmcm9tIHRo
ZSBjb250ZXh0IGZpcnN0LCBvdGhlcndpc2UKLSAgICAgICAgLy8gc29tZSBwbGF0Zm9ybXMgbWln
aHQgcmVmdXNlIHRvIGJpbmQgdGhlIHNhbWUgYnVmZmVyIGlkIGFnYWluLgotICAgICAgICBtX2Nv
bnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVIsIDAp
OwotICAgICAgICBtX2NvbnRleHQtPmRlbGV0ZUZyYW1lYnVmZmVyKG1fbXVsdGlzYW1wbGVGcmFt
ZUJ1ZmZlcik7Ci0gICAgICAgIG1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZlciA9IDA7Ci0gICAgfQot
ICAgIGlmIChtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyKSB7Ci0gICAgICAgIG1fY29udGV4dC0+
ZGVsZXRlUmVuZGVyYnVmZmVyKG1fbXVsdGlzYW1wbGVSZW5kZXJCdWZmZXIpOwotICAgICAgICBt
X211bHRpc2FtcGxlUmVuZGVyQnVmZmVyID0gMDsKLSAgICB9Ci0gICAgaWYgKG1fbXVsdGlzYW1w
bGVEZXB0aEJ1ZmZlcikgewotICAgICAgICBtX2NvbnRleHQtPmRlbGV0ZVJlbmRlcmJ1ZmZlciht
X211bHRpc2FtcGxlRGVwdGhCdWZmZXIpOwotICAgICAgICBtX211bHRpc2FtcGxlRGVwdGhCdWZm
ZXIgPSAwOwotICAgIH0KLX0KLQotdm9pZCBGRUN1c3RvbUZpbHRlcjo6cGxhdGZvcm1BcHBseVNv
ZnR3YXJlKCkKLXsKLSAgICBpZiAoIWFwcGx5U2hhZGVyKCkpCi0gICAgICAgIGNsZWFyU2hhZGVy
UmVzdWx0KCk7Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0ZXI6OmNsZWFyU2hhZGVyUmVzdWx0KCkK
LXsKLSAgICBjbGVhclJlc3VsdCgpOwotICAgIFVpbnQ4Q2xhbXBlZEFycmF5KiBkc3RQaXhlbEFy
cmF5ID0gY3JlYXRlVW5tdWx0aXBsaWVkSW1hZ2VSZXN1bHQoKTsKLSAgICBpZiAoIWRzdFBpeGVs
QXJyYXkpCi0gICAgICAgIHJldHVybjsKLQotICAgIEZpbHRlckVmZmVjdCogaW4gPSBpbnB1dEVm
ZmVjdCgwKTsKLSAgICBzZXRJc0FscGhhSW1hZ2UoaW4tPmlzQWxwaGFJbWFnZSgpKTsKLSAgICBJ
bnRSZWN0IGVmZmVjdERyYXdpbmdSZWN0ID0gcmVxdWVzdGVkUmVnaW9uT2ZJbnB1dEltYWdlRGF0
YShpbi0+YWJzb2x1dGVQYWludFJlY3QoKSk7Ci0gICAgaW4tPmNvcHlVbm11bHRpcGxpZWRJbWFn
ZShkc3RQaXhlbEFycmF5LCBlZmZlY3REcmF3aW5nUmVjdCk7Ci19Ci0KLXZvaWQgRkVDdXN0b21G
aWx0ZXI6OmRyYXdGaWx0ZXJNZXNoKFBsYXRmb3JtM0RPYmplY3QgaW5wdXRUZXh0dXJlKQotewot
ICAgIGJvb2wgbXVsdGlzYW1wbGUgPSBjYW5Vc2VNdWx0aXNhbXBsZUJ1ZmZlcnMoKTsKLSAgICBt
X2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVIs
IG11bHRpc2FtcGxlID8gbV9tdWx0aXNhbXBsZUZyYW1lQnVmZmVyIDogbV9mcmFtZUJ1ZmZlcik7
Ci0gICAgbV9jb250ZXh0LT52aWV3cG9ydCgwLCAwLCBtX2NvbnRleHRTaXplLndpZHRoKCksIG1f
Y29udGV4dFNpemUuaGVpZ2h0KCkpOwotCi0gICAgbV9jb250ZXh0LT5jbGVhckNvbG9yKDAsIDAs
IDAsIDApOwotICAgIG1fY29udGV4dC0+Y2xlYXIoR3JhcGhpY3NDb250ZXh0M0Q6OkNPTE9SX0JV
RkZFUl9CSVQgfCBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfQlVGRkVSX0JJVCk7Ci0KLSAgICBt
X2N1c3RvbUZpbHRlclJlbmRlcmVyLT5kcmF3KGlucHV0VGV4dHVyZSwgbV9jb250ZXh0U2l6ZSk7
Ci0KLSAgICBpZiAobXVsdGlzYW1wbGUpCi0gICAgICAgIHJlc29sdmVNdWx0aXNhbXBsZUJ1ZmZl
cigpOwotfQotCi1ib29sIEZFQ3VzdG9tRmlsdGVyOjpwcmVwYXJlRm9yRHJhd2luZygpCi17Ci0g
ICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJlbnQoKTsKLQotICAgIGlmICghbV9jdXN0b21G
aWx0ZXJSZW5kZXJlci0+Y29tcGlsZWRQcm9ncmFtKCkpIHsKLSAgICAgICAgUmVmUHRyPEN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbT4gY29tcGlsZWRQcm9ncmFtID0gbV92YWxpZGF0ZWRQcm9n
cmFtLT5jb21waWxlZFByb2dyYW0oKTsKLSAgICAgICAgaWYgKCFjb21waWxlZFByb2dyYW0pIHsK
LSAgICAgICAgICAgIC8vIExhemlseSBjcmVhdGUgYSBjb21waWxlZCBwcm9ncmFtIGFuZCBsZXQg
Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbSBob2xkIG9uIHRvIGl0LgotICAgICAgICAgICAg
Y29tcGlsZWRQcm9ncmFtID0gQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOjpjcmVhdGUobV9j
b250ZXh0LCBtX3ZhbGlkYXRlZFByb2dyYW0tPnZhbGlkYXRlZFZlcnRleFNoYWRlcigpLCBtX3Zh
bGlkYXRlZFByb2dyYW0tPnZhbGlkYXRlZEZyYWdtZW50U2hhZGVyKCksIG1fdmFsaWRhdGVkUHJv
Z3JhbS0+cHJvZ3JhbUluZm8oKS5wcm9ncmFtVHlwZSgpKTsKLSAgICAgICAgICAgIG1fdmFsaWRh
dGVkUHJvZ3JhbS0+c2V0Q29tcGlsZWRQcm9ncmFtKGNvbXBpbGVkUHJvZ3JhbSk7Ci0gICAgICAg
IH0KLSAgICAgICAgLy8gTGF6aWx5IGluamVjdCB0aGUgY29tcGlsZWQgcHJvZ3JhbSBpbnRvIHRo
ZSBDdXN0b21GaWx0ZXJSZW5kZXJlci4KLSAgICAgICAgbV9jdXN0b21GaWx0ZXJSZW5kZXJlci0+
c2V0Q29tcGlsZWRQcm9ncmFtKGNvbXBpbGVkUHJvZ3JhbS5yZWxlYXNlKCkpOwotICAgIH0KLQot
ICAgIGlmICghbV9jdXN0b21GaWx0ZXJSZW5kZXJlci0+cHJlcGFyZUZvckRyYXdpbmcoKSkKLSAg
ICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgLy8gT25seSBhbGxvY2F0ZSBhIHRleHR1cmUgaWYg
dGhlIHByb2dyYW0gbmVlZHMgb25lIGFuZCB0aGUgY2FsbGVyIGRvZXNuJ3QgYWxsb2NhdGUgb25l
IGJ5IGl0c2VsZi4KLSAgICBpZiAoKG1fY3VzdG9tRmlsdGVyUmVuZGVyZXItPnByb2dyYW1OZWVk
c0lucHV0VGV4dHVyZSgpICYmICFlbnN1cmVJbnB1dFRleHR1cmUoKSkgfHwgIWVuc3VyZUZyYW1l
QnVmZmVyKCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIHJldHVybiB0cnVlOwotfQot
Ci1ib29sIEZFQ3VzdG9tRmlsdGVyOjphcHBseVNoYWRlcigpCi17Ci0gICAgVWludDhDbGFtcGVk
QXJyYXkqIGRzdFBpeGVsQXJyYXkgPSBtX2N1c3RvbUZpbHRlclJlbmRlcmVyLT5wcmVtdWx0aXBs
aWVkQWxwaGEoKSA/IGNyZWF0ZVByZW11bHRpcGxpZWRJbWFnZVJlc3VsdCgpIDogY3JlYXRlVW5t
dWx0aXBsaWVkSW1hZ2VSZXN1bHQoKTsKLSAgICBpZiAoIWRzdFBpeGVsQXJyYXkpCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLQotICAgIGlmICghcHJlcGFyZUZvckRyYXdpbmcoKSkKLSAgICAgICAg
cmV0dXJuIGZhbHNlOwotCi0gICAgRmlsdGVyRWZmZWN0KiBpbiA9IGlucHV0RWZmZWN0KDApOwot
ICAgIEludFJlY3QgZWZmZWN0RHJhd2luZ1JlY3QgPSByZXF1ZXN0ZWRSZWdpb25PZklucHV0SW1h
Z2VEYXRhKGluLT5hYnNvbHV0ZVBhaW50UmVjdCgpKTsKLSAgICBJbnRTaXplIG5ld0NvbnRleHRT
aXplKGVmZmVjdERyYXdpbmdSZWN0LnNpemUoKSk7Ci0gICAgaWYgKCFyZXNpemVDb250ZXh0SWZO
ZWVkZWQobmV3Q29udGV4dFNpemUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBib29s
IG5lZWRzSW5wdXRUZXh0dXJlID0gbV9jdXN0b21GaWx0ZXJSZW5kZXJlci0+cHJvZ3JhbU5lZWRz
SW5wdXRUZXh0dXJlKCk7Ci0gICAgaWYgKG5lZWRzSW5wdXRUZXh0dXJlKSB7Ci0gICAgICAgIFJl
ZlB0cjxVaW50OENsYW1wZWRBcnJheT4gc3JjUGl4ZWxBcnJheSA9IGluLT5hc1VubXVsdGlwbGll
ZEltYWdlKGVmZmVjdERyYXdpbmdSZWN0KTsKLSAgICAgICAgdXBsb2FkSW5wdXRUZXh0dXJlKHNy
Y1BpeGVsQXJyYXkuZ2V0KCkpOwotICAgIH0KLSAgICBkcmF3RmlsdGVyTWVzaChuZWVkc0lucHV0
VGV4dHVyZSA/IG1faW5wdXRUZXh0dXJlIDogMCk7Ci0KLSAgICBBU1NFUlQoc3RhdGljX2Nhc3Q8
c2l6ZV90PihuZXdDb250ZXh0U2l6ZS53aWR0aCgpICogbmV3Q29udGV4dFNpemUuaGVpZ2h0KCkg
KiA0KSA9PSBkc3RQaXhlbEFycmF5LT5sZW5ndGgoKSk7Ci0gICAgbV9jb250ZXh0LT5yZWFkUGl4
ZWxzKDAsIDAsIG5ld0NvbnRleHRTaXplLndpZHRoKCksIG5ld0NvbnRleHRTaXplLmhlaWdodCgp
LCBHcmFwaGljc0NvbnRleHQzRDo6UkdCQSwgR3JhcGhpY3NDb250ZXh0M0Q6OlVOU0lHTkVEX0JZ
VEUsIGRzdFBpeGVsQXJyYXktPmRhdGEoKSk7Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotYm9v
bCBGRUN1c3RvbUZpbHRlcjo6ZW5zdXJlSW5wdXRUZXh0dXJlKCkKLXsKLSAgICBpZiAoIW1faW5w
dXRUZXh0dXJlKQotICAgICAgICBtX2lucHV0VGV4dHVyZSA9IG1fY29udGV4dC0+Y3JlYXRlVGV4
dHVyZSgpOwotICAgIHJldHVybiBtX2lucHV0VGV4dHVyZTsKLX0KLQotdm9pZCBGRUN1c3RvbUZp
bHRlcjo6dXBsb2FkSW5wdXRUZXh0dXJlKFVpbnQ4Q2xhbXBlZEFycmF5KiBzcmNQaXhlbEFycmF5
KQotewotICAgIG1fY29udGV4dC0+YmluZFRleHR1cmUoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRV
UkVfMkQsIG1faW5wdXRUZXh0dXJlKTsKLSAgICBtX2NvbnRleHQtPnRleEltYWdlMkQoR3JhcGhp
Y3NDb250ZXh0M0Q6OlRFWFRVUkVfMkQsIDAsIEdyYXBoaWNzQ29udGV4dDNEOjpSR0JBLCBtX2Nv
bnRleHRTaXplLndpZHRoKCksIG1fY29udGV4dFNpemUuaGVpZ2h0KCksIDAsIEdyYXBoaWNzQ29u
dGV4dDNEOjpSR0JBLCBHcmFwaGljc0NvbnRleHQzRDo6VU5TSUdORURfQllURSwgc3JjUGl4ZWxB
cnJheS0+ZGF0YSgpKTsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6ZW5zdXJlRnJhbWVCdWZm
ZXIoKQotewotICAgIGlmICghbV9mcmFtZUJ1ZmZlcikKLSAgICAgICAgbV9mcmFtZUJ1ZmZlciA9
IG1fY29udGV4dC0+Y3JlYXRlRnJhbWVidWZmZXIoKTsKLSAgICBpZiAoIW1fZGVwdGhCdWZmZXIp
Ci0gICAgICAgIG1fZGVwdGhCdWZmZXIgPSBtX2NvbnRleHQtPmNyZWF0ZVJlbmRlcmJ1ZmZlcigp
OwotICAgIGlmICghbV9kZXN0VGV4dHVyZSkKLSAgICAgICAgbV9kZXN0VGV4dHVyZSA9IG1fY29u
dGV4dC0+Y3JlYXRlVGV4dHVyZSgpOwotICAgIHJldHVybiBtX2ZyYW1lQnVmZmVyICYmIG1fZGVw
dGhCdWZmZXIgJiYgbV9kZXN0VGV4dHVyZTsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6Y3Jl
YXRlTXVsdGlzYW1wbGVCdWZmZXIoKQotewotICAgIEFTU0VSVCghbV90cmllZE11bHRpc2FtcGxl
QnVmZmVyKTsKLSAgICBtX3RyaWVkTXVsdGlzYW1wbGVCdWZmZXIgPSB0cnVlOwotCi0gICAgRXh0
ZW5zaW9uczNEKiBleHRlbnNpb25zID0gbV9jb250ZXh0LT5nZXRFeHRlbnNpb25zKCk7Ci0gICAg
aWYgKCFleHRlbnNpb25zCi0gICAgICAgIHx8ICFleHRlbnNpb25zLT5tYXlTdXBwb3J0TXVsdGlz
YW1wbGluZygpCi0gICAgICAgIHx8ICFleHRlbnNpb25zLT5zdXBwb3J0cygiR0xfQU5HTEVfZnJh
bWVidWZmZXJfbXVsdGlzYW1wbGUiKQotICAgICAgICB8fCAhZXh0ZW5zaW9ucy0+c3VwcG9ydHMo
IkdMX0FOR0xFX2ZyYW1lYnVmZmVyX2JsaXQiKQotICAgICAgICB8fCAhZXh0ZW5zaW9ucy0+c3Vw
cG9ydHMoIkdMX09FU19yZ2I4X3JnYmE4IikpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAg
IGV4dGVuc2lvbnMtPmVuc3VyZUVuYWJsZWQoIkdMX0FOR0xFX2ZyYW1lYnVmZmVyX2JsaXQiKTsK
LSAgICBleHRlbnNpb25zLT5lbnN1cmVFbmFibGVkKCJHTF9BTkdMRV9mcmFtZWJ1ZmZlcl9tdWx0
aXNhbXBsZSIpOwotICAgIGV4dGVuc2lvbnMtPmVuc3VyZUVuYWJsZWQoIkdMX09FU19yZ2I4X3Jn
YmE4Iik7Ci0KLSAgICBpZiAoIW1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZlcikKLSAgICAgICAgbV9t
dWx0aXNhbXBsZUZyYW1lQnVmZmVyID0gbV9jb250ZXh0LT5jcmVhdGVGcmFtZWJ1ZmZlcigpOwot
ICAgIGlmICghbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcikKLSAgICAgICAgbV9tdWx0aXNhbXBs
ZVJlbmRlckJ1ZmZlciA9IG1fY29udGV4dC0+Y3JlYXRlUmVuZGVyYnVmZmVyKCk7Ci0gICAgaWYg
KCFtX211bHRpc2FtcGxlRGVwdGhCdWZmZXIpCi0gICAgICAgIG1fbXVsdGlzYW1wbGVEZXB0aEJ1
ZmZlciA9IG1fY29udGV4dC0+Y3JlYXRlUmVuZGVyYnVmZmVyKCk7Ci0KLSAgICByZXR1cm4gdHJ1
ZTsKLX0KLQotdm9pZCBGRUN1c3RvbUZpbHRlcjo6cmVzb2x2ZU11bHRpc2FtcGxlQnVmZmVyKCkK
LXsKLSAgICBBU1NFUlQobV90cmllZE11bHRpc2FtcGxlQnVmZmVyICYmIG1fbXVsdGlzYW1wbGVG
cmFtZUJ1ZmZlciAmJiBtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyICYmIG1fbXVsdGlzYW1wbGVE
ZXB0aEJ1ZmZlcik7Ci0gICAgbV9jb250ZXh0LT5iaW5kRnJhbWVidWZmZXIoRXh0ZW5zaW9uczNE
OjpSRUFEX0ZSQU1FQlVGRkVSLCBtX211bHRpc2FtcGxlRnJhbWVCdWZmZXIpOwotICAgIG1fY29u
dGV4dC0+YmluZEZyYW1lYnVmZmVyKEV4dGVuc2lvbnMzRDo6RFJBV19GUkFNRUJVRkZFUiwgbV9m
cmFtZUJ1ZmZlcik7Ci0KLSAgICBBU1NFUlQobV9jb250ZXh0LT5nZXRFeHRlbnNpb25zKCkpOwot
ICAgIG1fY29udGV4dC0+Z2V0RXh0ZW5zaW9ucygpLT5ibGl0RnJhbWVidWZmZXIoMCwgMCwgbV9j
b250ZXh0U2l6ZS53aWR0aCgpLCBtX2NvbnRleHRTaXplLmhlaWdodCgpLCAwLCAwLCBtX2NvbnRl
eHRTaXplLndpZHRoKCksIG1fY29udGV4dFNpemUuaGVpZ2h0KCksIEdyYXBoaWNzQ29udGV4dDNE
OjpDT0xPUl9CVUZGRVJfQklULCBHcmFwaGljc0NvbnRleHQzRDo6TkVBUkVTVCk7Ci0KLSAgICBt
X2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihFeHRlbnNpb25zM0Q6OlJFQURfRlJBTUVCVUZGRVIs
IDApOwotICAgIG1fY29udGV4dC0+YmluZEZyYW1lYnVmZmVyKEV4dGVuc2lvbnMzRDo6RFJBV19G
UkFNRUJVRkZFUiwgMCk7Ci0KLSAgICBtX2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihHcmFwaGlj
c0NvbnRleHQzRDo6RlJBTUVCVUZGRVIsIG1fZnJhbWVCdWZmZXIpOwotfQotCi1ib29sIEZFQ3Vz
dG9tRmlsdGVyOjpjYW5Vc2VNdWx0aXNhbXBsZUJ1ZmZlcnMoKSBjb25zdAotewotICAgIHJldHVy
biBtX3RyaWVkTXVsdGlzYW1wbGVCdWZmZXIgJiYgbV9tdWx0aXNhbXBsZUZyYW1lQnVmZmVyICYm
IG1fbXVsdGlzYW1wbGVSZW5kZXJCdWZmZXIgJiYgbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyOwot
fQotCi1ib29sIEZFQ3VzdG9tRmlsdGVyOjpyZXNpemVNdWx0aXNhbXBsZUJ1ZmZlcnMoY29uc3Qg
SW50U2l6ZSYgbmV3Q29udGV4dFNpemUpCi17Ci0gICAgaWYgKCFtX3RyaWVkTXVsdGlzYW1wbGVC
dWZmZXIgJiYgIWNyZWF0ZU11bHRpc2FtcGxlQnVmZmVyKCkpCi0gICAgICAgIHJldHVybiBmYWxz
ZTsKLQotICAgIGlmICghY2FuVXNlTXVsdGlzYW1wbGVCdWZmZXJzKCkpCi0gICAgICAgIHJldHVy
biBmYWxzZTsKLQotICAgIHN0YXRpYyBjb25zdCBpbnQga01heFNhbXBsZUNvdW50ID0gNDsKLSAg
ICBpbnQgbWF4U3VwcG9ydGVkU2FtcGxlQ291bnQgPSAwOwotICAgIG1fY29udGV4dC0+Z2V0SW50
ZWdlcnYoRXh0ZW5zaW9uczNEOjpNQVhfU0FNUExFUywgJm1heFN1cHBvcnRlZFNhbXBsZUNvdW50
KTsKLSAgICBpbnQgc2FtcGxlQ291bnQgPSBzdGQ6Om1pbihrTWF4U2FtcGxlQ291bnQsIG1heFN1
cHBvcnRlZFNhbXBsZUNvdW50KTsKLSAgICBpZiAoIXNhbXBsZUNvdW50KSB7Ci0gICAgICAgIGRl
bGV0ZU11bHRpc2FtcGxlUmVuZGVyQnVmZmVycygpOwotICAgICAgICByZXR1cm4gZmFsc2U7Ci0g
ICAgfQotCi0gICAgRXh0ZW5zaW9uczNEKiBleHRlbnNpb25zID0gbV9jb250ZXh0LT5nZXRFeHRl
bnNpb25zKCk7Ci0gICAgQVNTRVJUKGV4dGVuc2lvbnMpOwotCi0gICAgbV9jb250ZXh0LT5iaW5k
RnJhbWVidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSLCBtX211bHRpc2FtcGxl
RnJhbWVCdWZmZXIpOwotCi0gICAgbV9jb250ZXh0LT5iaW5kUmVuZGVyYnVmZmVyKEdyYXBoaWNz
Q29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIG1fbXVsdGlzYW1wbGVSZW5kZXJCdWZmZXIpOwotICAg
IGV4dGVuc2lvbnMtPnJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZShHcmFwaGljc0NvbnRl
eHQzRDo6UkVOREVSQlVGRkVSLCBzYW1wbGVDb3VudCwgRXh0ZW5zaW9uczNEOjpSR0JBOF9PRVMs
IG5ld0NvbnRleHRTaXplLndpZHRoKCksIG5ld0NvbnRleHRTaXplLmhlaWdodCgpKTsKLSAgICBt
X2NvbnRleHQtPmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFN
RUJVRkZFUiwgR3JhcGhpY3NDb250ZXh0M0Q6OkNPTE9SX0FUVEFDSE1FTlQwLCBHcmFwaGljc0Nv
bnRleHQzRDo6UkVOREVSQlVGRkVSLCBtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyKTsKLQotICAg
IG1fY29udGV4dC0+YmluZFJlbmRlcmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6UkVOREVSQlVG
RkVSLCBtX211bHRpc2FtcGxlRGVwdGhCdWZmZXIpOwotICAgIGV4dGVuc2lvbnMtPnJlbmRlcmJ1
ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZShHcmFwaGljc0NvbnRleHQzRDo6UkVOREVSQlVGRkVSLCBz
YW1wbGVDb3VudCwgR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX0NPTVBPTkVOVDE2LCBuZXdDb250
ZXh0U2l6ZS53aWR0aCgpLCBuZXdDb250ZXh0U2l6ZS5oZWlnaHQoKSk7Ci0gICAgbV9jb250ZXh0
LT5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVIs
IEdyYXBoaWNzQ29udGV4dDNEOjpERVBUSF9BVFRBQ0hNRU5ULCBHcmFwaGljc0NvbnRleHQzRDo6
UkVOREVSQlVGRkVSLCBtX211bHRpc2FtcGxlRGVwdGhCdWZmZXIpOwotCi0gICAgbV9jb250ZXh0
LT5iaW5kUmVuZGVyYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIDApOwot
Ci0gICAgaWYgKG1fY29udGV4dC0+Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhHcmFwaGljc0NvbnRl
eHQzRDo6RlJBTUVCVUZGRVIpICE9IEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9DT01Q
TEVURSkgewotICAgICAgICBkZWxldGVNdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcnMoKTsKLSAgICAg
ICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLQotICAgIHJldHVybiB0cnVlOwotfQotCi1ib29sIEZF
Q3VzdG9tRmlsdGVyOjpyZXNpemVDb250ZXh0SWZOZWVkZWQoY29uc3QgSW50U2l6ZSYgbmV3Q29u
dGV4dFNpemUpCi17Ci0gICAgaWYgKG5ld0NvbnRleHRTaXplLmlzRW1wdHkoKSkKLSAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgIGlmIChtX2NvbnRleHRTaXplID09IG5ld0NvbnRleHRTaXplKQot
ICAgICAgICByZXR1cm4gdHJ1ZTsKLQotICAgIGludCBtYXhUZXh0dXJlU2l6ZSA9IDA7Ci0gICAg
bV9jb250ZXh0LT5nZXRJbnRlZ2VydihHcmFwaGljc0NvbnRleHQzRDo6TUFYX1RFWFRVUkVfU0la
RSwgJm1heFRleHR1cmVTaXplKTsKLSAgICBpZiAobmV3Q29udGV4dFNpemUuaGVpZ2h0KCkgPiBt
YXhUZXh0dXJlU2l6ZSB8fCBuZXdDb250ZXh0U2l6ZS53aWR0aCgpID4gbWF4VGV4dHVyZVNpemUp
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIHJldHVybiByZXNpemVDb250ZXh0KG5ld0Nv
bnRleHRTaXplKTsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6cmVzaXplQ29udGV4dChjb25z
dCBJbnRTaXplJiBuZXdDb250ZXh0U2l6ZSkKLXsKLSAgICBib29sIG11bHRpc2FtcGxlID0gcmVz
aXplTXVsdGlzYW1wbGVCdWZmZXJzKG5ld0NvbnRleHRTaXplKTsKLQotICAgIG1fY29udGV4dC0+
YmluZEZyYW1lYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUiwgbV9mcmFtZUJ1
ZmZlcik7Ci0gICAgbV9jb250ZXh0LT5iaW5kVGV4dHVyZShHcmFwaGljc0NvbnRleHQzRDo6VEVY
VFVSRV8yRCwgbV9kZXN0VGV4dHVyZSk7Ci0gICAgLy8gV2UgYXJlIGdvaW5nIHRvIGNsZWFyIHRo
ZSBvdXRwdXQgYnVmZmVyIGFueXdheSwgc28gd2UgY2FuIHNhZmVseSBpbml0aWFsaXplIHRoZSBk
ZXN0aW5hdGlvbiB0ZXh0dXJlIHdpdGggZ2FyYmFnZSBkYXRhLgotICAgIG1fY29udGV4dC0+dGV4
SW1hZ2UyRERpcmVjdChHcmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV8yRCwgMCwgR3JhcGhpY3ND
b250ZXh0M0Q6OlJHQkEsIG5ld0NvbnRleHRTaXplLndpZHRoKCksIG5ld0NvbnRleHRTaXplLmhl
aWdodCgpLCAwLCBHcmFwaGljc0NvbnRleHQzRDo6UkdCQSwgR3JhcGhpY3NDb250ZXh0M0Q6OlVO
U0lHTkVEX0JZVEUsIDApOwotICAgIG1fY29udGV4dC0+ZnJhbWVidWZmZXJUZXh0dXJlMkQoR3Jh
cGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSLCBHcmFwaGljc0NvbnRleHQzRDo6Q09MT1JfQVRU
QUNITUVOVDAsIEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFXzJELCBtX2Rlc3RUZXh0dXJlLCAw
KTsKLQotICAgIC8vIFdlIGRvbid0IG5lZWQgdGhlIGRlcHRoIGJ1ZmZlciBmb3IgdGhlIHRleHR1
cmUgZnJhbWVidWZmZXIsIGlmIHdlIGFscmVhZHkKLSAgICAvLyBoYXZlIGEgbXVsdGlzYW1wbGUg
YnVmZmVyLgotICAgIGlmICghbXVsdGlzYW1wbGUpIHsKLSAgICAgICAgbV9jb250ZXh0LT5iaW5k
UmVuZGVyYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIG1fZGVwdGhCdWZm
ZXIpOwotICAgICAgICBtX2NvbnRleHQtPnJlbmRlcmJ1ZmZlclN0b3JhZ2UoR3JhcGhpY3NDb250
ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX0NPTVBPTkVOVDE2
LCBuZXdDb250ZXh0U2l6ZS53aWR0aCgpLCBuZXdDb250ZXh0U2l6ZS5oZWlnaHQoKSk7Ci0gICAg
ICAgIG1fY29udGV4dC0+ZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6
OkZSQU1FQlVGRkVSLCBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfQVRUQUNITUVOVCwgR3JhcGhp
Y3NDb250ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgbV9kZXB0aEJ1ZmZlcik7Ci0gICAgfQotCi0gICAg
aWYgKG1fY29udGV4dC0+Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhHcmFwaGljc0NvbnRleHQzRDo6
RlJBTUVCVUZGRVIpICE9IEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9DT01QTEVURSkK
LSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgaWYgKG11bHRpc2FtcGxlKSB7Ci0gICAgICAg
IC8vIENsZWFyIHRoZSBmcmFtZWJ1ZmZlciBmaXJzdCwgb3RoZXJ3aXNlIHRoZSBmaXJzdCBibGl0
IHdpbGwgZmFpbC4KLSAgICAgICAgbV9jb250ZXh0LT5jbGVhckNvbG9yKDAsIDAsIDAsIDApOwot
ICAgICAgICBtX2NvbnRleHQtPmNsZWFyKEdyYXBoaWNzQ29udGV4dDNEOjpDT0xPUl9CVUZGRVJf
QklUKTsKLSAgICB9Ci0KLSAgICBtX2NvbnRleHQtPmJpbmRSZW5kZXJidWZmZXIoR3JhcGhpY3ND
b250ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgMCk7Ci0KLSAgICBtX2NvbnRleHRTaXplID0gbmV3Q29u
dGV4dFNpemU7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0ZXI6OmR1
bXAoKQotewotfQotCi1UZXh0U3RyZWFtJiBGRUN1c3RvbUZpbHRlcjo6ZXh0ZXJuYWxSZXByZXNl
bnRhdGlvbihUZXh0U3RyZWFtJiB0cywgaW50IGluZGVudCkgY29uc3QKLXsKLSAgICB3cml0ZUlu
ZGVudCh0cywgaW5kZW50KTsKLSAgICB0cyA8PCAiW2ZlQ3VzdG9tRmlsdGVyIjsKLSAgICBGaWx0
ZXJFZmZlY3Q6OmV4dGVybmFsUmVwcmVzZW50YXRpb24odHMpOwotICAgIHRzIDw8ICJdXG4iOwot
ICAgIGlucHV0RWZmZWN0KDApLT5leHRlcm5hbFJlcHJlc2VudGF0aW9uKHRzLCBpbmRlbnQgKyAx
KTsKLSAgICByZXR1cm4gdHM7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRl
ci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3OTk2ZjRkLi4wMDAwMDAwCi0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDdXN0b21GaWx0ZXIu
aAorKysgL2Rldi9udWxsCkBAIC0xLDEwNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
Ci0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
LSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
LSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaWZuZGVmIEZFQ3VzdG9tRmlsdGVyX2gKLSNkZWZpbmUgRkVDdXN0b21GaWx0
ZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0KLSNp
bmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJP
cGVyYXRpb24uaCIKLSNpbmNsdWRlICJGaWx0ZXIuaCIKLSNpbmNsdWRlICJGaWx0ZXJFZmZlY3Qu
aCIKLSNpbmNsdWRlICJHcmFwaGljc1R5cGVzM0QuaCIKLSNpbmNsdWRlIDxydW50aW1lL1VpbnQ4
Q2xhbXBlZEFycmF5Lmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgotCi1uYW1lc3BhY2UgV2Vi
Q29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlclJlbmRlcmVyOwotY2xhc3MgQ3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbTsKLWNsYXNzIEdyYXBoaWNzQ29udGV4dDNEOwotY2xhc3MgSW50U2l6
ZTsKLQotY2xhc3MgRkVDdXN0b21GaWx0ZXIgOiBwdWJsaWMgRmlsdGVyRWZmZWN0IHsKLXB1Ymxp
YzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxGRUN1c3RvbUZpbHRlcj4gY3JlYXRlKEZpbHRlcios
IFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+LCBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZh
bGlkYXRlZFByb2dyYW0+LCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiwKLSAgICAg
ICAgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJN
ZXNoVHlwZSk7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgcGxhdGZvcm1BcHBseVNvZnR3YXJlKCk7Ci0g
ICAgdmlydHVhbCB2b2lkIGR1bXAoKTsKLQotICAgIHZpcnR1YWwgVGV4dFN0cmVhbSYgZXh0ZXJu
YWxSZXByZXNlbnRhdGlvbihUZXh0U3RyZWFtJiwgaW50IGluZGVudGlvbikgY29uc3Q7Ci0KLXBy
aXZhdGU6Ci0gICAgRkVDdXN0b21GaWx0ZXIoRmlsdGVyKiwgUGFzc1JlZlB0cjxHcmFwaGljc0Nv
bnRleHQzRD4sIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4sIGNvbnN0
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmLAotICAgICAgICB1bnNpZ25lZCBtZXNoUm93cywg
dW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1lc2hUeXBlKTsKLSAgICB+RkVDdXN0
b21GaWx0ZXIoKTsKLQotICAgIGJvb2wgYXBwbHlTaGFkZXIoKTsKLSAgICB2b2lkIGNsZWFyU2hh
ZGVyUmVzdWx0KCk7Ci0gICAgYm9vbCBpbml0aWFsaXplQ29udGV4dCgpOwotCi0gICAgYm9vbCBw
cmVwYXJlRm9yRHJhd2luZygpOwotCi0gICAgdm9pZCBkcmF3RmlsdGVyTWVzaChQbGF0Zm9ybTNE
T2JqZWN0IGlucHV0VGV4dHVyZSk7Ci0gICAgYm9vbCBlbnN1cmVJbnB1dFRleHR1cmUoKTsKLSAg
ICB2b2lkIHVwbG9hZElucHV0VGV4dHVyZShVaW50OENsYW1wZWRBcnJheSogc3JjUGl4ZWxBcnJh
eSk7Ci0gICAgYm9vbCByZXNpemVDb250ZXh0SWZOZWVkZWQoY29uc3QgSW50U2l6ZSYpOwotICAg
IGJvb2wgcmVzaXplQ29udGV4dChjb25zdCBJbnRTaXplJik7Ci0KLSAgICBib29sIGNhblVzZU11
bHRpc2FtcGxlQnVmZmVycygpIGNvbnN0OwotICAgIGJvb2wgY3JlYXRlTXVsdGlzYW1wbGVCdWZm
ZXIoKTsKLSAgICBib29sIHJlc2l6ZU11bHRpc2FtcGxlQnVmZmVycyhjb25zdCBJbnRTaXplJik7
Ci0gICAgdm9pZCByZXNvbHZlTXVsdGlzYW1wbGVCdWZmZXIoKTsKLSAgICB2b2lkIGRlbGV0ZU11
bHRpc2FtcGxlUmVuZGVyQnVmZmVycygpOwotCi0gICAgYm9vbCBlbnN1cmVGcmFtZUJ1ZmZlcigp
OwotICAgIHZvaWQgZGVsZXRlUmVuZGVyQnVmZmVycygpOwotCi0gICAgUmVmUHRyPEdyYXBoaWNz
Q29udGV4dDNEPiBtX2NvbnRleHQ7Ci0gICAgUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFBy
b2dyYW0+IG1fdmFsaWRhdGVkUHJvZ3JhbTsKLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyUmVuZGVy
ZXI+IG1fY3VzdG9tRmlsdGVyUmVuZGVyZXI7Ci0gICAgSW50U2l6ZSBtX2NvbnRleHRTaXplOwot
Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBtX2lucHV0VGV4dHVyZTsKLSAgICBQbGF0Zm9ybTNET2Jq
ZWN0IG1fZnJhbWVCdWZmZXI7Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBtX2RlcHRoQnVmZmVyOwot
ICAgIFBsYXRmb3JtM0RPYmplY3QgbV9kZXN0VGV4dHVyZTsKLQotICAgIGJvb2wgbV90cmllZE11
bHRpc2FtcGxlQnVmZmVyOwotICAgIFBsYXRmb3JtM0RPYmplY3QgbV9tdWx0aXNhbXBsZUZyYW1l
QnVmZmVyOwotICAgIFBsYXRmb3JtM0RPYmplY3QgbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcjsK
LSAgICBQbGF0Zm9ybTNET2JqZWN0IG1fbXVsdGlzYW1wbGVEZXB0aEJ1ZmZlcjsKLX07Ci0KLX0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYg
VVNFKDNEX0dSQVBISUNTKQotCi0jZW5kaWYgLy8gRkVDdXN0b21GaWx0ZXJfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRp
b24uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3Bl
cmF0aW9uLmgKaW5kZXggZDY1ZDc0My4uMGM0MTljMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb24uaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbi5oCkBA
IC02NCwxMCArNjQsNiBAQCBwdWJsaWM6CiAgICAgICAgIENPTlRSQVNULAogICAgICAgICBCTFVS
LAogICAgICAgICBEUk9QX1NIQURPVywKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAg
IENVU1RPTSwKLSAgICAgICAgVkFMSURBVEVEX0NVU1RPTSwKLSNlbmRpZgogICAgICAgICBQQVNT
VEhST1VHSCwKICAgICAgICAgTk9ORQogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmNwcApp
bmRleCBhMjg1MzhhLi40Mjc5MTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3BlcmF0aW9ucy5jcHAKQEAgLTg3
LDE4ICs4Nyw2IEBAIGJvb2wgRmlsdGVyT3BlcmF0aW9uczo6b3BlcmF0aW9uc01hdGNoKGNvbnN0
IEZpbHRlck9wZXJhdGlvbnMmIG90aGVyKSBjb25zdAogICAgIHJldHVybiB0cnVlOwogfQogCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotYm9vbCBGaWx0ZXJPcGVyYXRpb25zOjpoYXNDdXN0b21G
aWx0ZXIoKSBjb25zdAotewotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9vcGVyYXRpb25z
LnNpemUoKTsgKytpKSB7Ci0gICAgICAgIEZpbHRlck9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSB0
eXBlID0gbV9vcGVyYXRpb25zLmF0KGkpLT50eXBlKCk7Ci0gICAgICAgIGlmICh0eXBlID09IEZp
bHRlck9wZXJhdGlvbjo6Q1VTVE9NIHx8IHR5cGUgPT0gRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFU
RURfQ1VTVE9NKQotICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotICAgIHJldHVybiBm
YWxzZTsKLX0KLSNlbmRpZgotCiBib29sIEZpbHRlck9wZXJhdGlvbnM6Omhhc1JlZmVyZW5jZUZp
bHRlcigpIGNvbnN0CiB7CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX29wZXJhdGlvbnMu
c2l6ZSgpOyArK2kpIHsKQEAgLTE0NCwxNCArMTMyLDYgQEAgRmlsdGVyT3V0c2V0cyBGaWx0ZXJP
cGVyYXRpb25zOjpvdXRzZXRzKCkgY29uc3QKICAgICAgICAgICAgIHRvdGFsT3V0c2V0cyArPSBv
dXRzZXRzOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0gICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAgICAgIGNh
c2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOiB7Ci0gICAgICAgICAgICAvLyBG
SVhNRTogTmVlZCB0byBpbmNsdWRlIHRoZSBmaWx0ZXIgbWFyZ2lucyBoZXJlLgotICAgICAgICAg
ICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDAwCi0gICAg
ICAgICAgICBicmVhazsKLSAgICAgICAgfQotI2VuZGlmCiAgICAgICAgIGRlZmF1bHQ6CiAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuaAppbmRleCA3N2Jm
M2U4Li5jMzc5OThlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuaApAQCAtNzEsOSArNzEsNiBAQCBw
dWJsaWM6CiAgICAgYm9vbCBoYXNGaWx0ZXJUaGF0QWZmZWN0c09wYWNpdHkoKSBjb25zdDsKICAg
ICBib29sIGhhc0ZpbHRlclRoYXRNb3Zlc1BpeGVscygpIGNvbnN0OwogCi0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotICAgIGJvb2wgaGFzQ3VzdG9tRmlsdGVyKCkgY29uc3Q7Ci0jZW5kaWYKICAg
ICBib29sIGhhc1JlZmVyZW5jZUZpbHRlcigpIGNvbnN0OwogcHJpdmF0ZToKICAgICBWZWN0b3I8
UmVmUHRyPEZpbHRlck9wZXJhdGlvbj4+IG1fb3BlcmF0aW9uczsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMWY2NGQ1Ny4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9maWx0ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAKKysrIC9k
ZXYvbnVsbApAQCAtMSw2OCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2Jl
IFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBk
aXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
Ci0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJ
R0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNp
bmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJW
YWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
clBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIK
LSNpbmNsdWRlICJMYXlvdXRTaXplLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOjpWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24o
UGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2YWxpZGF0ZWRQcm9ncmFt
LCAKLSAgICBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBzb3J0ZWRQYXJhbWV0ZXJz
LCB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1l
c2hUeXBlIG1lc2hUeXBlKQotICAgIDogRmlsdGVyT3BlcmF0aW9uKFZBTElEQVRFRF9DVVNUT00p
Ci0gICAgLCBtX3ZhbGlkYXRlZFByb2dyYW0odmFsaWRhdGVkUHJvZ3JhbSkKLSAgICAsIG1fcGFy
YW1ldGVycyhzb3J0ZWRQYXJhbWV0ZXJzKQotICAgICwgbV9tZXNoUm93cyhtZXNoUm93cykKLSAg
ICAsIG1fbWVzaENvbHVtbnMobWVzaENvbHVtbnMpCi0gICAgLCBtX21lc2hUeXBlKG1lc2hUeXBl
KQotewotfQotCi1WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb246On5WYWxpZGF0ZWRDdXN0
b21GaWx0ZXJPcGVyYXRpb24oKQotewotfQotCi1QYXNzUmVmUHRyPEZpbHRlck9wZXJhdGlvbj4g
VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOjpibGVuZChjb25zdCBGaWx0ZXJPcGVyYXRp
b24qLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmIHNpemUsIGJvb2wgYmxlbmRU
b1Bhc3N0aHJvdWdoKQotewotICAgIFVOVVNFRF9QQVJBTShwcm9ncmVzcyk7Ci0gICAgVU5VU0VE
X1BBUkFNKHNpemUpOwotICAgIFVOVVNFRF9QQVJBTShibGVuZFRvUGFzc3Rocm91Z2gpOwotCi0g
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIHRoaXM7Ci19Ci0KLX0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBlYWJiMGQ1Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgKKysr
IC9kZXYvbnVsbApAQCAtMSw5NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFk
b2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAg
ICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0g
KiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0K
LSNpZm5kZWYgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uX2gKLSNkZWZpbmUgVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNp
bmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0LmgiCi0jaW5jbHVkZSAiRmlsdGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAi
TGF5b3V0U2l6ZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW07Ci0KLWNsYXNzIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlv
biA6IHB1YmxpYyBGaWx0ZXJPcGVyYXRpb24gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVm
UHRyPFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gY3JlYXRlKFBhc3NSZWZQdHI8Q3Vz
dG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gdmFsaWRhdGVkUHJvZ3JhbSwgCi0gICAgICAgIGNv
bnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHNvcnRlZFBhcmFtZXRlcnMsIHVuc2lnbmVk
IG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVz
aFR5cGUpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFZhbGlkYXRlZEN1c3Rv
bUZpbHRlck9wZXJhdGlvbih2YWxpZGF0ZWRQcm9ncmFtLCBzb3J0ZWRQYXJhbWV0ZXJzLCBtZXNo
Um93cywgbWVzaENvbHVtbnMsIG1lc2hUeXBlKSk7Ci0gICAgfQotCi0gICAgdmlydHVhbCB+VmFs
aWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKCk7Ci0KLSAgICB2aXJ0dWFsIGJvb2wgYWZmZWN0
c09wYWNpdHkoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVhbCBib29sIG1vdmVz
UGl4ZWxzKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotICAgIHZpcnR1YWwgYm9vbCBibGVuZGlu
Z05lZWRzUmVuZGVyZXJTaXplKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotCi0gICAgdmlydHVh
bCBQYXNzUmVmUHRyPEZpbHRlck9wZXJhdGlvbj4gYmxlbmQoY29uc3QgRmlsdGVyT3BlcmF0aW9u
KiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmLCBib29sIGJsZW5kVG9Q
YXNzdGhyb3VnaCA9IGZhbHNlKTsKLQotICAgIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0q
IHZhbGlkYXRlZFByb2dyYW0oKSBjb25zdCB7IHJldHVybiBtX3ZhbGlkYXRlZFByb2dyYW0uZ2V0
KCk7IH0KLSAgICBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBwYXJhbWV0ZXJzKCkg
Y29uc3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJzOyB9Ci0KLSAgICB1bnNpZ25lZCBtZXNoUm93cygp
IGNvbnN0IHsgcmV0dXJuIG1fbWVzaFJvd3M7IH0KLSAgICB1bnNpZ25lZCBtZXNoQ29sdW1ucygp
IGNvbnN0IHsgcmV0dXJuIG1fbWVzaENvbHVtbnM7IH0KLQotICAgIEN1c3RvbUZpbHRlck1lc2hU
eXBlIG1lc2hUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoVHlwZTsgfQotCi1wcml2YXRlOgot
ICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEZpbHRlck9wZXJhdGlvbiYgbykgY29u
c3QKLSAgICB7Ci0gICAgICAgIGlmICghaXNTYW1lVHlwZShvKSkKLSAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKLQotICAgICAgICBjb25zdCBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24q
IG90aGVyID0gc3RhdGljX2Nhc3Q8Y29uc3QgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
Kj4oJm8pOwotICAgICAgICByZXR1cm4gbV92YWxpZGF0ZWRQcm9ncmFtLmdldCgpID09IG90aGVy
LT5tX3ZhbGlkYXRlZFByb2dyYW0uZ2V0KCkKLSAgICAgICAgICAgICYmIG1fbWVzaFJvd3MgPT0g
b3RoZXItPm1fbWVzaFJvd3MKLSAgICAgICAgICAgICYmIG1fbWVzaENvbHVtbnMgPT0gb3RoZXIt
Pm1fbWVzaENvbHVtbnMKLSAgICAgICAgICAgICYmIG1fbWVzaFR5cGUgPT0gb3RoZXItPm1fbWVz
aFR5cGUKLSAgICAgICAgICAgICYmIG1fcGFyYW1ldGVycyA9PSBvdGhlci0+bV9wYXJhbWV0ZXJz
OwotICAgIH0KLQotICAgIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbihQYXNzUmVmUHRy
PEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+LCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXJMaXN0JiwgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0b21G
aWx0ZXJNZXNoVHlwZSk7Ci0KLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3Jh
bT4gbV92YWxpZGF0ZWRQcm9ncmFtOwotCi0gICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCBt
X3BhcmFtZXRlcnM7Ci0gICAgdW5zaWduZWQgbV9tZXNoUm93czsKLSAgICB1bnNpZ25lZCBtX21l
c2hDb2x1bW5zOwotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1fbWVzaFR5cGU7Ci19OwotCi19
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0K
LSNlbmRpZiAvLyBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb25faApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy90ZXhtYXAvQ3VzdG9tRmls
dGVyVmFsaWRhdGVkUHJvZ3JhbVRleHR1cmVNYXBwZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy90ZXhtYXAvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3Jh
bVRleHR1cmVNYXBwZXIuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiZWQwZTZl
Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
dGV4bWFwL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW1UZXh0dXJlTWFwcGVyLmNwcAorKysg
L2Rldi9udWxsCkBAIC0xLDU4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRv
YmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAg
IGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAq
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQot
I2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoVEVY
VFVSRV9NQVBQRVIpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oIgot
Ci0jaW5jbHVkZSAiVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtLmgiCi0KLW5h
bWVzcGFjZSBXZWJDb3JlIHsKLQotUGxhdGZvcm1Db21waWxlZFByb2dyYW0qIEN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW06OnBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKCkKLXsKLSAgICBpZiAo
IW1fcGxhdGZvcm1Db21waWxlZFByb2dyYW0pCi0gICAgICAgIG1fcGxhdGZvcm1Db21waWxlZFBy
b2dyYW0gPSBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW06OmNyZWF0ZSgpLmxl
YWtSZWYoKTsKLSAgICByZXR1cm4gbV9wbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbTsKLX0KLQotdm9p
ZCBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpwbGF0Zm9ybUluaXQoKQotewotICAgIG1f
cGxhdGZvcm1Db21waWxlZFByb2dyYW0gPSAwOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW06OnBsYXRmb3JtRGVzdHJveSgpCi17Ci0gICAgZGVyZWZJZk5vdE51bGwobV9w
bGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQot
I2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKFRFWFRVUkVfTUFQUEVSKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy90ZXhtYXAv
VGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL3RleG1hcC9UZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21w
aWxlZFByb2dyYW0uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWZhNmNhNS4uMDAw
MDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL3RleG1h
cC9UZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0uaAorKysgL2Rldi9udWxsCkBA
IC0xLDcxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJ
bmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIu
Ci0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVS
IEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBUZXh0
dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW1faAotI2RlZmluZSBUZXh0dXJlTWFwcGVy
UGxhdGZvcm1Db21waWxlZFByb2dyYW1faAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2lu
Y2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgVGV4
dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtQ2xpZW50IHsKLXB1YmxpYzoKLSAgICB2
b2lkIHJlZigpIHsgcmVmRnJvbVZhbGlkYXRlZFByb2dyYW0oKTsgfQotICAgIHZvaWQgZGVyZWYo
KSB7IGRlcmVmRnJvbVZhbGlkYXRlZFByb2dyYW0oKTsgfQotCi0gICAgdmlydHVhbCB2b2lkIHJl
ZkZyb21WYWxpZGF0ZWRQcm9ncmFtKCkgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkZXJlZkZyb21W
YWxpZGF0ZWRQcm9ncmFtKCkgPSAwOwotfTsKLQotY2xhc3MgVGV4dHVyZU1hcHBlclBsYXRmb3Jt
Q29tcGlsZWRQcm9ncmFtIDogcHVibGljIFJlZkNvdW50ZWQ8VGV4dHVyZU1hcHBlclBsYXRmb3Jt
Q29tcGlsZWRQcm9ncmFtPiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8VGV4dHVy
ZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtPiBjcmVhdGUoKQotICAgIHsKLSAgICAgICAg
cmV0dXJuIGFkb3B0UmVmKG5ldyBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0o
KSk7Ci0gICAgfQotICAgIAotICAgIHZvaWQgc2V0Q2xpZW50KFBhc3NSZWZQdHI8VGV4dHVyZU1h
cHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtQ2xpZW50PiBjbGllbnQpIHsgbV9jbGllbnQgPSBj
bGllbnQ7IH0KLSAgICBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW1DbGllbnQq
IGNsaWVudCgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpZW50LmdldCgpOyB9Ci0KLXByaXZhdGU6Ci0g
ICAgVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKCkKLSAgICB7Ci0gICAgfQot
Ci0gICAgUmVmUHRyPFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbUNsaWVudD4g
bV9jbGllbnQ7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxl
ZFByb2dyYW1faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3B1L1RleHR1cmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1Rl
eHR1cmUuY3BwCmluZGV4IDY0MmIwZDUuLjMxYWFhNjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9UZXh0dXJlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAog
I2luY2x1ZGUgImNvbmZpZy5oIgogCi0jaWYgRU5BQkxFKEFDQ0VMRVJBVEVEXzJEX0NBTlZBUykg
fHwgRU5BQkxFKENTU19TSEFERVJTKQorI2lmIEVOQUJMRShBQ0NFTEVSQVRFRF8yRF9DQU5WQVMp
CiAKICNpbmNsdWRlICJUZXh0dXJlLmgiCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oCmluZGV4IDRjODBkMTMuLmEw
YTE3MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9UZXh0dXJlTWFwcGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
dGV4bWFwL1RleHR1cmVNYXBwZXIuaApAQCAtMzksNyArMzksNiBAQAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCiBjbGFzcyBCaXRtYXBUZXh0dXJlUG9vbDsKLWNsYXNzIEN1c3RvbUZpbHRlclByb2dy
YW07CiBjbGFzcyBHcmFwaGljc0xheWVyOwogY2xhc3MgVGV4dHVyZU1hcHBlcjsKIGNsYXNzIEZp
bHRlck9wZXJhdGlvbnM7CkBAIC0xNTksMTAgKzE1OCw2IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1
YWwgUGFzc1JlZlB0cjxCaXRtYXBUZXh0dXJlPiBhY3F1aXJlVGV4dHVyZUZyb21Qb29sKGNvbnN0
IEludFNpemUmKTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICB2aXJ0dWFsIHZvaWQg
cmVtb3ZlQ2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbShDdXN0b21GaWx0ZXJQcm9ncmFtKikgeyB9
Ci0jZW5kaWYKLQogICAgIHZvaWQgc2V0UGF0dGVyblRyYW5zZm9ybShjb25zdCBUcmFuc2Zvcm1h
dGlvbk1hdHJpeCYgcCkgeyBtX3BhdHRlcm5UcmFuc2Zvcm0gPSBwOyB9CiAgICAgdm9pZCBzZXRX
cmFwTW9kZShXcmFwTW9kZSBtKSB7IG1fd3JhcE1vZGUgPSBtOyB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJH
TC5jcHAKaW5kZXggODRmNzVmNy4uMDViODg0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5jcHAKQEAg
LTQyLDE1ICs0Miw2IEBACiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2VuZGlmCiAK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29tcGlsZWRQ
cm9ncmFtLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclJlbmRlcmVyLmgi
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIlZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2VuZGlmCi0KICNpZiAhVVNFKFRFWE1B
UF9PUEVOR0xfRVNfMikKIC8vIEZJWE1FOiBNb3ZlIHRvIEV4dGVuc2lvbnMzRC5oLgogI2RlZmlu
ZSBHTF9VTlNJR05FRF9JTlRfOF84XzhfOF9SRVYgMHg4MzY3CkBAIC00MTksMTAgKzQxMCw2IEBA
IHN0YXRpYyB1bnNpZ25lZCBnZXRQYXNzZXNSZXF1aXJlZEZvckZpbHRlcihGaWx0ZXJPcGVyYXRp
b246Ok9wZXJhdGlvblR5cGUgdHlwZSkKICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6QlJJR0hU
TkVTUzoKICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q09OVFJBU1Q6CiAgICAgY2FzZSBGaWx0
ZXJPcGVyYXRpb246Ok9QQUNJVFk6Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2Ug
RmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OlZBTElE
QVRFRF9DVVNUT006Ci0jZW5kaWYKICAgICAgICAgcmV0dXJuIDE7CiAgICAgY2FzZSBGaWx0ZXJP
cGVyYXRpb246OkJMVVI6CiAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkRST1BfU0hBRE9XOgpA
QCAtODcwLDY1ICs4NTcsNiBAQCB2b2lkIEJpdG1hcFRleHR1cmVHTDo6dXBkYXRlQ29udGVudHMo
SW1hZ2UqIGltYWdlLCBjb25zdCBJbnRSZWN0JiB0YXJnZXRSZWN0LCBjbwogICAgIHVwZGF0ZUNv
bnRlbnRzKGltYWdlRGF0YSwgdGFyZ2V0UmVjdCwgb2Zmc2V0LCBieXRlc1BlckxpbmUsIHVwZGF0
ZUNvbnRlbnRzRmxhZyk7CiB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi12b2lkIFRleHR1
cmVNYXBwZXJHTDo6cmVtb3ZlQ2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbShDdXN0b21GaWx0ZXJQ
cm9ncmFtKiBwcm9ncmFtKQotewotICAgIG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMucmVtb3ZlKHBy
b2dyYW0tPnByb2dyYW1JbmZvKCkpOwotfQotCi1ib29sIFRleHR1cmVNYXBwZXJHTDo6ZHJhd1Vz
aW5nQ3VzdG9tRmlsdGVyKEJpdG1hcFRleHR1cmUmIHRhcmdldCwgY29uc3QgQml0bWFwVGV4dHVy
ZSYgc291cmNlLCBjb25zdCBGaWx0ZXJPcGVyYXRpb24mIGZpbHRlcikKLXsKLSAgICBSZWZQdHI8
Q3VzdG9tRmlsdGVyUmVuZGVyZXI+IHJlbmRlcmVyOwotICAgIHN3aXRjaCAoZmlsdGVyLnR5cGUo
KSkgewotICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006IHsKLSAgICAgICAgLy8gV2Vi
S2l0MiBwaXBlbGluZSBpcyB1c2luZyB0aGUgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLCB0aGF0J3Mg
YmVjYXVzZSBvZiB0aGUgImRlLXNlcmlhbGl6YXRpb24iIHRoYXQKLSAgICAgICAgLy8gaGFwcGVu
cyBpbiBDb29yZGluYXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuCi0gICAgICAgIGNvbnN0IEN1
c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9tRmlsdGVyID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uKj4oJmZpbHRlcik7Ci0gICAgICAgIFJlZlB0cjxDdXN0b21GaWx0
ZXJQcm9ncmFtPiBwcm9ncmFtID0gY3VzdG9tRmlsdGVyLT5wcm9ncmFtKCk7Ci0gICAgICAgIHJl
bmRlcmVyID0gQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmNyZWF0ZShtX2NvbnRleHQzRCwgcHJvZ3Jh
bS0+cHJvZ3JhbVR5cGUoKSwgY3VzdG9tRmlsdGVyLT5wYXJhbWV0ZXJzKCksIAotICAgICAgICAg
ICAgY3VzdG9tRmlsdGVyLT5tZXNoUm93cygpLCBjdXN0b21GaWx0ZXItPm1lc2hDb2x1bW5zKCks
IGN1c3RvbUZpbHRlci0+bWVzaFR5cGUoKSk7Ci0gICAgICAgIEN1c3RvbUZpbHRlclByb2dyYW1N
YXA6OkFkZFJlc3VsdCByZXN1bHQgPSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmFkZChwcm9ncmFt
LT5wcm9ncmFtSW5mbygpLCBudWxscHRyKTsKLSAgICAgICAgaWYgKHJlc3VsdC5pc05ld0VudHJ5
KQotICAgICAgICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSA9IEN1c3RvbUZpbHRlckNvbXBp
bGVkUHJvZ3JhbTo6Y3JlYXRlKG1fY29udGV4dDNELCBwcm9ncmFtLT52ZXJ0ZXhTaGFkZXJTdHJp
bmcoKSwgcHJvZ3JhbS0+ZnJhZ21lbnRTaGFkZXJTdHJpbmcoKSwgcHJvZ3JhbS0+cHJvZ3JhbVR5
cGUoKSk7Ci0gICAgICAgIHJlbmRlcmVyLT5zZXRDb21waWxlZFByb2dyYW0ocmVzdWx0Lml0ZXJh
dG9yLT52YWx1ZSk7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLSAgICBjYXNlIEZpbHRlck9wZXJh
dGlvbjo6VkFMSURBVEVEX0NVU1RPTTogewotICAgICAgICAvLyBXZWJLaXQxIHVzZXMgdGhlIFZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi4KLSAgICAgICAgY29uc3QgVmFsaWRhdGVkQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uKiBjdXN0b21GaWx0ZXIgPSBzdGF0aWNfY2FzdDxjb25zdCBWYWxp
ZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qPigmZmlsdGVyKTsKLSAgICAgICAgUmVmUHRyPEN1
c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+IHByb2dyYW0gPSBjdXN0b21GaWx0ZXItPnZhbGlk
YXRlZFByb2dyYW0oKTsKLSAgICAgICAgcmVuZGVyZXIgPSBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6
Y3JlYXRlKG1fY29udGV4dDNELCBwcm9ncmFtLT5wcm9ncmFtSW5mbygpLnByb2dyYW1UeXBlKCks
IGN1c3RvbUZpbHRlci0+cGFyYW1ldGVycygpLAotICAgICAgICAgICAgY3VzdG9tRmlsdGVyLT5t
ZXNoUm93cygpLCBjdXN0b21GaWx0ZXItPm1lc2hDb2x1bW5zKCksIGN1c3RvbUZpbHRlci0+bWVz
aFR5cGUoKSk7Ci0gICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IGNv
bXBpbGVkUHJvZ3JhbTsKLSAgICAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1hcDo6QWRkUmVzdWx0
IHJlc3VsdCA9IG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMuYWRkKHByb2dyYW0tPnByb2dyYW1JbmZv
KCksIG51bGxwdHIpOwotICAgICAgICBpZiAocmVzdWx0LmlzTmV3RW50cnkpCi0gICAgICAgICAg
ICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOjpj
cmVhdGUobV9jb250ZXh0M0QsIHByb2dyYW0tPnZhbGlkYXRlZFZlcnRleFNoYWRlcigpLCBwcm9n
cmFtLT52YWxpZGF0ZWRGcmFnbWVudFNoYWRlcigpLCBwcm9ncmFtLT5wcm9ncmFtSW5mbygpLnBy
b2dyYW1UeXBlKCkpOwotICAgICAgICByZW5kZXJlci0+c2V0Q29tcGlsZWRQcm9ncmFtKHJlc3Vs
dC5pdGVyYXRvci0+dmFsdWUpOwotICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgZGVmYXVsdDoK
LSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAg
ICB9Ci0gICAgaWYgKCFyZW5kZXJlciB8fCAhcmVuZGVyZXItPnByZXBhcmVGb3JEcmF3aW5nKCkp
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBzdGF0aWNfY2FzdDxCaXRtYXBUZXh0dXJlR0wm
Pih0YXJnZXQpLmluaXRpYWxpemVEZXB0aEJ1ZmZlcigpOwotICAgIG1fY29udGV4dDNELT5lbmFi
bGUoR3JhcGhpY3NDb250ZXh0M0Q6OkJMRU5EKTsKLSAgICBtX2NvbnRleHQzRC0+YmxlbmRGdW5j
KEdyYXBoaWNzQ29udGV4dDNEOjpPTkUsIEdyYXBoaWNzQ29udGV4dDNEOjpPTkVfTUlOVVNfU1JD
X0FMUEhBKTsKLSAgICBtX2NvbnRleHQzRC0+ZW5hYmxlKEdyYXBoaWNzQ29udGV4dDNEOjpERVBU
SF9URVNUKTsKLSAgICBtX2NvbnRleHQzRC0+ZGVwdGhGdW5jKEdyYXBoaWNzQ29udGV4dDNEOjpM
RVNTKTsKLSAgICBtX2NvbnRleHQzRC0+Y2xlYXJEZXB0aCgxKTsKLSAgICBtX2NvbnRleHQzRC0+
ZGVwdGhNYXNrKDEpOwotICAgIG1fY29udGV4dDNELT5jbGVhckNvbG9yKDAsIDAsIDAsIDApOwot
ICAgIG1fY29udGV4dDNELT5jbGVhcihHcmFwaGljc0NvbnRleHQzRDo6Q09MT1JfQlVGRkVSX0JJ
VCB8IEdyYXBoaWNzQ29udGV4dDNEOjpERVBUSF9CVUZGRVJfQklUKTsKLSAgICByZW5kZXJlci0+
ZHJhdyhzdGF0aWNfY2FzdDxjb25zdCBCaXRtYXBUZXh0dXJlR0wmPihzb3VyY2UpLmlkKCksIHNv
dXJjZS5zaXplKCkpOwotICAgIG1fY29udGV4dDNELT5kaXNhYmxlKEdyYXBoaWNzQ29udGV4dDNE
OjpERVBUSF9URVNUKTsKLSAgICBtX2NvbnRleHQzRC0+ZGlzYWJsZShHcmFwaGljc0NvbnRleHQz
RDo6QkxFTkQpOwotICAgIG1fY29udGV4dDNELT5kZXB0aE1hc2soMCk7Ci0gICAgcmV0dXJuIHRy
dWU7Ci19Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKIHZvaWQgVGV4dHVyZU1h
cHBlckdMOjpkcmF3RmlsdGVyZWQoY29uc3QgQml0bWFwVGV4dHVyZSYgc2FtcGxlciwgY29uc3Qg
Qml0bWFwVGV4dHVyZSogY29udGVudFRleHR1cmUsIGNvbnN0IEZpbHRlck9wZXJhdGlvbiYgZmls
dGVyLCBpbnQgcGFzcykKIHsKQEAgLTk0MiwxNSArODcwLDYgQEAgdm9pZCBUZXh0dXJlTWFwcGVy
R0w6OmRyYXdGaWx0ZXJlZChjb25zdCBCaXRtYXBUZXh0dXJlJiBzYW1wbGVyLCBjb25zdCBCaXRt
YXBUZXgKICAgICBkcmF3VGV4dHVyZWRRdWFkV2l0aFByb2dyYW0ocHJvZ3JhbS5nZXQoKSwgc3Rh
dGljX2Nhc3Q8Y29uc3QgQml0bWFwVGV4dHVyZUdMJj4oc2FtcGxlcikuaWQoKSwgMCwgSW50U2l6
ZSgxLCAxKSwgdGFyZ2V0UmVjdCwgVHJhbnNmb3JtYXRpb25NYXRyaXgoKSwgMSk7CiB9CiAKLXN0
YXRpYyBib29sIGlzQ3VzdG9tRmlsdGVyKEZpbHRlck9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSB0
eXBlKQotewotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICByZXR1cm4gdHlwZSA9PSBGaWx0
ZXJPcGVyYXRpb246OkNVU1RPTSB8fCB0eXBlID09IEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVE
X0NVU1RPTTsKLSNlbHNlCi0gICAgcmV0dXJuIGZhbHNlOwotI2VuZGlmCi19Ci0KIFBhc3NSZWZQ
dHI8Qml0bWFwVGV4dHVyZT4gQml0bWFwVGV4dHVyZUdMOjphcHBseUZpbHRlcnMoVGV4dHVyZU1h
cHBlciogdGV4dHVyZU1hcHBlciwgY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYgZmlsdGVycykKIHsK
ICAgICBpZiAoZmlsdGVycy5pc0VtcHR5KCkpCkBAIC05NjgsMjQgKzg4NywxNSBAQCBQYXNzUmVm
UHRyPEJpdG1hcFRleHR1cmU+IEJpdG1hcFRleHR1cmVHTDo6YXBwbHlGaWx0ZXJzKFRleHR1cmVN
YXBwZXIqIHRleHR1cmVNYQogICAgICAgICBSZWZQdHI8RmlsdGVyT3BlcmF0aW9uPiBmaWx0ZXIg
PSBmaWx0ZXJzLm9wZXJhdGlvbnMoKVtpXTsKICAgICAgICAgQVNTRVJUKGZpbHRlcik7CiAKLSAg
ICAgICAgYm9vbCBjdXN0b20gPSBpc0N1c3RvbUZpbHRlcihmaWx0ZXItPnR5cGUoKSk7Ci0KICAg
ICAgICAgaW50IG51bVBhc3NlcyA9IGdldFBhc3Nlc1JlcXVpcmVkRm9yRmlsdGVyKGZpbHRlci0+
dHlwZSgpKTsKICAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCBudW1QYXNzZXM7ICsraikgewog
ICAgICAgICAgICAgYm9vbCBsYXN0ID0gKGkgPT0gZmlsdGVycy5zaXplKCkgLSAxKSAmJiAoaiA9
PSBudW1QYXNzZXMgLSAxKTsKLSAgICAgICAgICAgIGlmIChjdXN0b20gfHwgIWxhc3QpIHsKKyAg
ICAgICAgICAgIGlmICghbGFzdCkgewogICAgICAgICAgICAgICAgIGlmICghaW50ZXJtZWRpYXRl
U3VyZmFjZSkKICAgICAgICAgICAgICAgICAgICAgaW50ZXJtZWRpYXRlU3VyZmFjZSA9IHRleG1h
cEdMLT5hY3F1aXJlVGV4dHVyZUZyb21Qb29sKGNvbnRlbnRTaXplKCkpOwogICAgICAgICAgICAg
ICAgIHRleG1hcEdMLT5iaW5kU3VyZmFjZShpbnRlcm1lZGlhdGVTdXJmYWNlLmdldCgpKTsKICAg
ICAgICAgICAgIH0KIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgICAgIGlmIChj
dXN0b20pIHsKLSAgICAgICAgICAgICAgICBpZiAodGV4bWFwR0wtPmRyYXdVc2luZ0N1c3RvbUZp
bHRlcigqaW50ZXJtZWRpYXRlU3VyZmFjZS5nZXQoKSwgKnJlc3VsdFN1cmZhY2UuZ2V0KCksICpm
aWx0ZXIpKQotICAgICAgICAgICAgICAgICAgICBzdGQ6OnN3YXAocmVzdWx0U3VyZmFjZSwgaW50
ZXJtZWRpYXRlU3VyZmFjZSk7Ci0gICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAg
ICB9Ci0jZW5kaWYKICAgICAgICAgICAgIGlmIChsYXN0KSB7CiAgICAgICAgICAgICAgICAgdG9C
aXRtYXBUZXh0dXJlR0wocmVzdWx0U3VyZmFjZS5nZXQoKSktPm1fZmlsdGVySW5mbyA9IEJpdG1h
cFRleHR1cmVHTDo6RmlsdGVySW5mbyhmaWx0ZXIsIGosIHNwYXJlU3VyZmFjZSk7CiAgICAgICAg
ICAgICAgICAgYnJlYWs7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckdMLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckdMLmgKaW5kZXggNjFjYTE0YS4uMDgxNDAzZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1
cmVNYXBwZXJHTC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9UZXh0dXJlTWFwcGVyR0wuaApAQCAtMjIsNyArMjIsNiBAQAogCiAjaWYgVVNFKEFDQ0VMRVJB
VEVEX0NPTVBPU0lUSU5HKSAmJiBVU0UoVEVYVFVSRV9NQVBQRVIpCiAKLSNpbmNsdWRlICJDdXN0
b21GaWx0ZXJQcm9ncmFtSW5mby5oIgogI2luY2x1ZGUgIkZpbHRlck9wZXJhdGlvbi5oIgogI2lu
Y2x1ZGUgIkZsb2F0UXVhZC5oIgogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCkBAIC0z
Miw4ICszMSw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgQ3VzdG9tRmlsdGVy
UHJvZ3JhbTsKLWNsYXNzIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbTsKIGNsYXNzIFRleHR1
cmVNYXBwZXJHTERhdGE7CiBjbGFzcyBUZXh0dXJlTWFwcGVyU2hhZGVyUHJvZ3JhbTsKIGNsYXNz
IEZpbHRlck9wZXJhdGlvbjsKQEAgLTczLDEwICs3MCw2IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUo
Q1NTX0ZJTFRFUlMpCiAgICAgdm9pZCBkcmF3RmlsdGVyZWQoY29uc3QgQml0bWFwVGV4dHVyZSYg
c291cmNlVGV4dHVyZSwgY29uc3QgQml0bWFwVGV4dHVyZSogY29udGVudFRleHR1cmUsIGNvbnN0
IEZpbHRlck9wZXJhdGlvbiYsIGludCBwYXNzKTsKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICBib29sIGRyYXdVc2luZ0N1c3RvbUZpbHRlcihCaXRtYXBUZXh0dXJlJiB0YXJn
ZXRUZXh0dXJlLCBjb25zdCBCaXRtYXBUZXh0dXJlJiBzb3VyY2VUZXh0dXJlLCBjb25zdCBGaWx0
ZXJPcGVyYXRpb24mKTsKLSAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlQ2FjaGVkQ3VzdG9tRmlsdGVy
UHJvZ3JhbShDdXN0b21GaWx0ZXJQcm9ncmFtKik7Ci0jZW5kaWYKIAogICAgIHZvaWQgc2V0RW5h
YmxlRWRnZURpc3RhbmNlQW50aWFsaWFzaW5nKGJvb2wgZW5hYmxlZCkgeyBtX2VuYWJsZUVkZ2VE
aXN0YW5jZUFudGlhbGlhc2luZyA9IGVuYWJsZWQ7IH0KIApAQCAtMTQ0LDExICsxMzcsNiBAQCBw
cml2YXRlOgogICAgIENsaXBTdGFjayBtX2NsaXBTdGFjazsKICAgICBib29sIG1fZW5hYmxlRWRn
ZURpc3RhbmNlQW50aWFsaWFzaW5nOwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIHR5
cGVkZWYgSGFzaE1hcDxDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbywgUmVmUHRyPEN1c3RvbUZpbHRl
ckNvbXBpbGVkUHJvZ3JhbT4gPiBDdXN0b21GaWx0ZXJQcm9ncmFtTWFwOwotICAgIEN1c3RvbUZp
bHRlclByb2dyYW1NYXAgbV9jdXN0b21GaWx0ZXJQcm9ncmFtczsKLSNlbmRpZgotCiAgICAgZnJp
ZW5kIGNsYXNzIEJpdG1hcFRleHR1cmVHTDsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db21wb3NpdGluZ0Nvb3Jk
aW5hdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29y
ZGluYXRlZC9Db21wb3NpdGluZ0Nvb3JkaW5hdG9yLmNwcAppbmRleCAxOGVjNWVhLi4yYjViMTE5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29v
cmRpbmF0ZWQvQ29tcG9zaXRpbmdDb29yZGluYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0NvbXBvc2l0aW5nQ29vcmRpbmF0
b3IuY3BwCkBAIC0xNTksMTEgKzE1OSw2IEBAIHZvaWQgQ29tcG9zaXRpbmdDb29yZGluYXRvcjo6
Y2xlYXJQZW5kaW5nU3RhdGVDaGFuZ2VzKCkKIAogICAgIG1fc3RhdGUudXBkYXRlQXRsYXNlc1Rv
Q3JlYXRlLmNsZWFyKCk7CiAgICAgbV9zdGF0ZS51cGRhdGVBdGxhc2VzVG9SZW1vdmUuY2xlYXIo
KTsKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBtX3N0YXRlLmN1c3RvbUZpbHRlcnNU
b0NyZWF0ZS5jbGVhcigpOwotICAgIG1fc3RhdGUuY3VzdG9tRmlsdGVyc1RvUmVtb3ZlLmNsZWFy
KCk7Ci0jZW5kaWYKIH0KIAogdm9pZCBDb21wb3NpdGluZ0Nvb3JkaW5hdG9yOjppbml0aWFsaXpl
Um9vdENvbXBvc2l0aW5nTGF5ZXJJZk5lZWRlZCgpCkBAIC0xOTEsNyArMTg2LDYgQEAgdm9pZCBD
b21wb3NpdGluZ0Nvb3JkaW5hdG9yOjpjcmVhdGVSb290TGF5ZXIoY29uc3QgSW50U2l6ZSYgc2l6
ZSkKIHZvaWQgQ29tcG9zaXRpbmdDb29yZGluYXRvcjo6c3luY0xheWVyU3RhdGUoQ29vcmRpbmF0
ZWRMYXllcklEIGlkLCBDb29yZGluYXRlZEdyYXBoaWNzTGF5ZXJTdGF0ZSYgc3RhdGUpCiB7CiAg
ICAgbV9zaG91bGRTeW5jRnJhbWUgPSB0cnVlOwotICAgIG1fY2xpZW50LT53aWxsU3luY0xheWVy
U3RhdGUoc3RhdGUpOwogICAgIG1fc3RhdGUubGF5ZXJzVG9VcGRhdGUuYXBwZW5kKHN0ZDo6bWFr
ZV9wYWlyKGlkLCBzdGF0ZSkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29tcG9zaXRpbmdDb29yZGluYXRvci5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nv
bXBvc2l0aW5nQ29vcmRpbmF0b3IuaAppbmRleCA2ZmQxOWZkLi44NGI4NTMyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29t
cG9zaXRpbmdDb29yZGluYXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL3RleG1hcC9jb29yZGluYXRlZC9Db21wb3NpdGluZ0Nvb3JkaW5hdG9yLmgKQEAgLTM5LDEw
ICszOSw2IEBACiAjaW5jbHVkZSAiVGltZXIuaCIKICNpbmNsdWRlICJVcGRhdGVBdGxhcy5oIgog
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkZpbHRlck9wZXJhdGlvbnMuaCIK
LSNlbmRpZgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFBhZ2U7CkBAIC02MCw3ICs1
Niw2IEBAIHB1YmxpYzoKICAgICBjbGFzcyBDbGllbnQgewogICAgIHB1YmxpYzoKICAgICAgICAg
dmlydHVhbCB2b2lkIGRpZEZsdXNoUm9vdExheWVyKCkgPSAwOwotICAgICAgICB2aXJ0dWFsIHZv
aWQgd2lsbFN5bmNMYXllclN0YXRlKENvb3JkaW5hdGVkR3JhcGhpY3NMYXllclN0YXRlJikgPSAw
OwogICAgICAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5Rmx1c2hSZXF1aXJlZCgpID0gMDsKICAgICAg
ICAgdmlydHVhbCB2b2lkIGNvbW1pdFNjZW5lU3RhdGUoY29uc3QgQ29vcmRpbmF0ZWRHcmFwaGlj
c1N0YXRlJikgPSAwOwogICAgICAgICB2aXJ0dWFsIHZvaWQgcGFpbnRMYXllckNvbnRlbnRzKGNv
bnN0IEdyYXBoaWNzTGF5ZXIqLCBHcmFwaGljc0NvbnRleHQmLCBjb25zdCBJbnRSZWN0JiBjbGlw
UmVjdCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
dGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRp
bmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMTdhNzE4Mi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaAor
KysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIg
QWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2lmbmRlZiBDb29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbl9oCi0jZGVmaW5lIENv
b3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLQotbmFtZXNwYWNlIFdlYkNv
cmUgewotCi0vLyBUaGlzIGNsYXNzIGlzIG9ubHkgYWRkaW5nIHRoZSBwcm9ncmFtSWQgb24gdG9w
IG9mIEN1c3RvbUZpbHRlck9wZXJhdGlvbi4gVGhlIGFyZ3VtZW50IGRlY29kZXIgaGFzIG5vCi0v
LyBjb250ZXh0LCBzbyB3ZSBjYW5ub3Qgc2VhcmNoIGluIG91ciBjYWNoZWQgQ3VzdG9tRmlsdGVy
UHJvZ3JhbXMgd2hpbGUgZGVjb2RpbmcuIEluIHRoYXQgY2FzZQotLy8gaXQgd2lsbCBqdXN0IHN0
b3JlIHRoZSBwcm9ncmFtSWQgYW5kIG5vIEN1c3RvbUZpbHRlclByb2dyYW0gaW5zdGFuY2UuIFRo
ZSByZWNlaXZlciBpcyBzdXBwb3NlZCB0bwotLy8gaXRlcmF0ZSBvbiB0aGlzIHN0cnVjdHVyZSBh
bmQgaW5qZWN0IHRoZSByaWdodCBDdXN0b21GaWx0ZXJQcm9ncmFtcy4KLQotY2xhc3MgQ29vcmRp
bmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24gOiBwdWJsaWMgQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDb29yZGluYXRlZEN1c3RvbUZpbHRl
ck9wZXJhdGlvbj4gY3JlYXRlKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3Jh
bSwgaW50IHByb2dyYW1JRCwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgc29ydGVk
UGFyYW1ldGVycywgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zKQotICAg
IHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDb29yZGluYXRlZEN1c3RvbUZpbHRlck9w
ZXJhdGlvbihwcm9ncmFtLCBwcm9ncmFtSUQsIHNvcnRlZFBhcmFtZXRlcnMsIG1lc2hSb3dzLCBt
ZXNoQ29sdW1ucykpOwotICAgIH0KLQotICAgIGludCBwcm9ncmFtSUQoKSBjb25zdCB7IHJldHVy
biBtX3Byb2dyYW1JRDsgfQotCi1wcml2YXRlOgotICAgIENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3JhbSwgaW50IHBy
b2dyYW1JRCwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgc29ydGVkUGFyYW1ldGVy
cywgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zKQotICAgICAgICA6IEN1
c3RvbUZpbHRlck9wZXJhdGlvbihwcm9ncmFtLCBzb3J0ZWRQYXJhbWV0ZXJzLCBtZXNoUm93cywg
bWVzaENvbHVtbnMpCi0gICAgICAgICwgbV9wcm9ncmFtSUQocHJvZ3JhbUlEKQotICAgIHsKLSAg
ICB9Ci0KLSAgICBpbnQgbV9wcm9ncmFtSUQ7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBDb29yZGluYXRl
ZEN1c3RvbUZpbHRlck9wZXJhdGlvbl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQ
cm9ncmFtLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRp
bmF0ZWQvQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQcm9ncmFtLmgKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDIzNGFhNTYuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJv
Z3JhbS5oCisrKyAvZGV2L251bGwKQEAgLTEsNjcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMiBDb21wYW55IDEwMCwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgot
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwot
Ci0jaWZuZGVmIENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCi0jZGVmaW5lIENvb3Jk
aW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCi0KLSNpZiBVU0UoQ09PUkRJTkFURURfR1JBUEhJ
Q1MpICYmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFu
dHMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtLmgiCi0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotY2xhc3MgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQcm9ncmFtIDogcHVibGljIEN1
c3RvbUZpbHRlclByb2dyYW0gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPENvb3Jk
aW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbT4gY3JlYXRlKGNvbnN0IFN0cmluZyYgdmVydGV4U2hh
ZGVyU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZyYWdtZW50U2hhZGVyU3RyaW5nLCBDdXN0b21GaWx0
ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNl
dHRpbmdzJiBtaXhTZXR0aW5ncywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAg
ewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJv
Z3JhbSh2ZXJ0ZXhTaGFkZXJTdHJpbmcsIGZyYWdtZW50U2hhZGVyU3RyaW5nLCBwcm9ncmFtVHlw
ZSwgbWl4U2V0dGluZ3MsIG1lc2hUeXBlKSk7Ci0gICAgfQotCi0gICAgdmlydHVhbCBib29sIGlz
TG9hZGVkKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsgfQotCi1wcm90ZWN0ZWQ6Ci0g
ICAgdmlydHVhbCBTdHJpbmcgdmVydGV4U2hhZGVyU3RyaW5nKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gbV92ZXJ0ZXhTaGFkZXJTdHJpbmc7IH0KLSAgICB2aXJ0dWFsIFN0cmluZyBmcmFnbWVu
dFNoYWRlclN0cmluZygpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fZnJhZ21lbnRTaGFkZXJT
dHJpbmc7IH0KLQotICAgIHZpcnR1YWwgdm9pZCB3aWxsSGF2ZUNsaWVudHMoKSBvdmVycmlkZSB7
IG5vdGlmeUNsaWVudHMoKTsgfQotICAgIHZpcnR1YWwgdm9pZCBkaWRSZW1vdmVMYXN0Q2xpZW50
KCkgb3ZlcnJpZGUgeyB9Ci0KLXByaXZhdGU6Ci0gICAgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQ
cm9ncmFtKGNvbnN0IFN0cmluZyYgdmVydGV4U2hhZGVyU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZy
YWdtZW50U2hhZGVyU3RyaW5nLCBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSwg
Y29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiBtaXhTZXR0aW5ncywgQ3VzdG9t
RmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAgICAgIDogQ3VzdG9tRmlsdGVyUHJvZ3JhbShw
cm9ncmFtVHlwZSwgbWl4U2V0dGluZ3MsIG1lc2hUeXBlKQotICAgICAgICAsIG1fdmVydGV4U2hh
ZGVyU3RyaW5nKHZlcnRleFNoYWRlclN0cmluZykKLSAgICAgICAgLCBtX2ZyYWdtZW50U2hhZGVy
U3RyaW5nKGZyYWdtZW50U2hhZGVyU3RyaW5nKQotICAgIHsKLSAgICB9Ci0KLSAgICBTdHJpbmcg
bV92ZXJ0ZXhTaGFkZXJTdHJpbmc7Ci0gICAgU3RyaW5nIG1fZnJhZ21lbnRTaGFkZXJTdHJpbmc7
Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBVU0UoQ09PUkRJTkFU
RURfR1JBUEhJQ1MpICYmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIENvb3JkaW5h
dGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5l
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRl
ZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCmluZGV4IDg2NjI3ODguLjM3Y2M1ZDQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGlu
YXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2Nl
bmUuY3BwCkBAIC0zMiwxMyArMzIsNiBAQAogI2luY2x1ZGUgPHd0Zi9BdG9taWNzLmg+CiAjaW5j
bHVkZSA8d3RmL01haW5UaHJlYWQuaD4KIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNs
dWRlICJDb29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkNvb3Jk
aW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dy
YW0uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIgotI2VuZGlmCi0KIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmRpc3Bh
dGNoT25NYWluVGhyZWFkKGNvbnN0IEZ1bmN0aW9uPHZvaWQoKT4mIGZ1bmN0aW9uKQpAQCAtMjI5
LDU0ICsyMjIsMTAgQEAgdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnNldExheWVyRmls
dGVyc0lmTmVlZGVkKFRleHR1cmVNYXBwZXJMYXllciogbGF5ZXIKICAgICBpZiAoIXN0YXRlLmZp
bHRlcnNDaGFuZ2VkKQogICAgICAgICByZXR1cm47CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0gICAgaW5qZWN0Q2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbXMoc3RhdGUuZmlsdGVycyk7Ci0j
ZW5kaWYKICAgICBsYXllci0+c2V0RmlsdGVycyhzdGF0ZS5maWx0ZXJzKTsKIH0KICNlbmRpZgog
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6
OnN5bmNDdXN0b21GaWx0ZXJQcm9ncmFtcyhjb25zdCBDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUm
IHN0YXRlKQotewotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3RhdGUuY3VzdG9tRmlsdGVy
c1RvQ3JlYXRlLnNpemUoKTsgKytpKQotICAgICAgICBjcmVhdGVDdXN0b21GaWx0ZXJQcm9ncmFt
KHN0YXRlLmN1c3RvbUZpbHRlcnNUb0NyZWF0ZVtpXS5maXJzdCwgc3RhdGUuY3VzdG9tRmlsdGVy
c1RvQ3JlYXRlW2ldLnNlY29uZCk7Ci0KLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0YXRl
LmN1c3RvbUZpbHRlcnNUb1JlbW92ZS5zaXplKCk7ICsraSkKLSAgICAgICAgcmVtb3ZlQ3VzdG9t
RmlsdGVyUHJvZ3JhbShzdGF0ZS5jdXN0b21GaWx0ZXJzVG9SZW1vdmVbaV0pOwotfQotCi12b2lk
IENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6aW5qZWN0Q2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3Jh
bXMoY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYgZmlsdGVycykgY29uc3QKLXsKLSAgICBmb3IgKHNp
emVfdCBpID0gMDsgaSA8IGZpbHRlcnMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgRmlsdGVyT3Bl
cmF0aW9uKiBvcGVyYXRpb24gPSBmaWx0ZXJzLm9wZXJhdGlvbnMoKS5hdChpKS5nZXQoKTsKLSAg
ICAgICAgaWYgKG9wZXJhdGlvbi0+dHlwZSgpICE9IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NKQot
ICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJP
cGVyYXRpb24qIGN1c3RvbU9wZXJhdGlvbiA9IHN0YXRpY19jYXN0PENvb3JkaW5hdGVkQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uKj4ob3BlcmF0aW9uKTsKLSAgICAgICAgQVNTRVJUKCFjdXN0b21PcGVy
YXRpb24tPnByb2dyYW0oKSk7Ci0gICAgICAgIEN1c3RvbUZpbHRlclByb2dyYW1NYXA6OmNvbnN0
X2l0ZXJhdG9yIGl0ZXIgPSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmZpbmQoY3VzdG9tT3BlcmF0
aW9uLT5wcm9ncmFtSUQoKSk7Ci0gICAgICAgIEFTU0VSVChpdGVyICE9IG1fY3VzdG9tRmlsdGVy
UHJvZ3JhbXMuZW5kKCkpOwotICAgICAgICBjdXN0b21PcGVyYXRpb24tPnNldFByb2dyYW0oaXRl
ci0+dmFsdWUuZ2V0KCkpOwotICAgIH0KLX0KLQotdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2Nl
bmU6OmNyZWF0ZUN1c3RvbUZpbHRlclByb2dyYW0oaW50IGlkLCBjb25zdCBDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8pCi17Ci0gICAgQVNTRVJUKCFtX2N1c3RvbUZpbHRlclBy
b2dyYW1zLmNvbnRhaW5zKGlkKSk7Ci0gICAgbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5zZXQoaWQs
IENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbTo6Y3JlYXRlKHByb2dyYW1JbmZvLnZlcnRl
eFNoYWRlclN0cmluZygpLCBwcm9ncmFtSW5mby5mcmFnbWVudFNoYWRlclN0cmluZygpLCBwcm9n
cmFtSW5mby5wcm9ncmFtVHlwZSgpLCBwcm9ncmFtSW5mby5taXhTZXR0aW5ncygpLCBwcm9ncmFt
SW5mby5tZXNoVHlwZSgpKSk7Ci19Ci0KLXZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpy
ZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtKGludCBpZCkKLXsKLSAgICBDdXN0b21GaWx0ZXJQcm9n
cmFtTWFwOjppdGVyYXRvciBpdGVyID0gbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5maW5kKGlkKTsK
LSAgICBBU1NFUlQoaXRlciAhPSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmVuZCgpKTsKLSAgICBp
ZiAobV90ZXh0dXJlTWFwcGVyKQotICAgICAgICBtX3RleHR1cmVNYXBwZXItPnJlbW92ZUNhY2hl
ZEN1c3RvbUZpbHRlclByb2dyYW0oaXRlci0+dmFsdWUuZ2V0KCkpOwotICAgIG1fY3VzdG9tRmls
dGVyUHJvZ3JhbXMucmVtb3ZlKGl0ZXIpOwotfQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVS
UykKLQogdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnNldExheWVyU3RhdGUoQ29vcmRp
bmF0ZWRMYXllcklEIGlkLCBjb25zdCBDb29yZGluYXRlZEdyYXBoaWNzTGF5ZXJTdGF0ZSYgbGF5
ZXJTdGF0ZSkKIHsKICAgICBBU1NFUlQobV9yb290TGF5ZXJJRCAhPSBJbnZhbGlkQ29vcmRpbmF0
ZWRMYXllcklEKTsKQEAgLTYxOSw5ICs1NjgsNiBAQCB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NT
Y2VuZTo6Y29tbWl0U2NlbmVTdGF0ZShjb25zdCBDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUmCiAK
ICAgICBzeW5jSW1hZ2VCYWNraW5ncyhzdGF0ZSk7CiAgICAgc3luY1VwZGF0ZUF0bGFzZXMoc3Rh
dGUpOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBzeW5jQ3VzdG9tRmlsdGVyUHJvZ3Jh
bXMoc3RhdGUpOwotI2VuZGlmCiAKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0YXRlLmxh
eWVyc1RvVXBkYXRlLnNpemUoKTsgKytpKQogICAgICAgICBzZXRMYXllclN0YXRlKHN0YXRlLmxh
eWVyc1RvVXBkYXRlW2ldLmZpcnN0LCBzdGF0ZS5sYXllcnNUb1VwZGF0ZVtpXS5zZWNvbmQpOwpA
QCAtNzE1LDE3ICs2NjEsNiBAQCB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6c2V0TGF5
ZXJBbmltYXRpb25zSWZOZWVkZWQoVGV4dHVyZU1hcHBlckxheWVyKiBsYQogICAgIGlmICghc3Rh
dGUuYW5pbWF0aW9uc0NoYW5nZWQpCiAgICAgICAgIHJldHVybjsKIAotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0YXRlLmFuaW1hdGlvbnMuYW5p
bWF0aW9ucygpLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0
JiBrZXlmcmFtZXMgPSBzdGF0ZS5hbmltYXRpb25zLmFuaW1hdGlvbnMoKS5hdChpKS5rZXlmcmFt
ZXMoKTsKLSAgICAgICAgaWYgKGtleWZyYW1lcy5wcm9wZXJ0eSgpICE9IEFuaW1hdGVkUHJvcGVy
dHlXZWJraXRGaWx0ZXIpCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgZm9yIChzaXpl
X3QgaiA9IDA7IGogPCBrZXlmcmFtZXMuc2l6ZSgpOyArK2opIHsKLSAgICAgICAgICAgIGNvbnN0
IEZpbHRlckFuaW1hdGlvblZhbHVlJiBmaWx0ZXJWYWx1ZSA9IHN0YXRpY19jYXN0PGNvbnN0IEZp
bHRlckFuaW1hdGlvblZhbHVlJj4oa2V5ZnJhbWVzLmF0KGopKTsKLSAgICAgICAgICAgIGluamVj
dENhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zKGZpbHRlclZhbHVlLnZhbHVlKCkpOwotICAgICAg
ICB9Ci0gICAgfQotI2VuZGlmCiAgICAgbGF5ZXItPnNldEFuaW1hdGlvbnMoc3RhdGUuYW5pbWF0
aW9ucyk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdy
YXBoaWNzU2NlbmUuaAppbmRleCAwN2NkNTYzLi4wMjVkZDFmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRH
cmFwaGljc1NjZW5lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4
bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oCkBAIC00Nyw4ICs0Nyw2
IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENvb3JkaW5hdGVkQmFja2luZ1N0b3Jl
OwotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbTsKLWNsYXNzIEN1c3RvbUZpbHRlclByb2dyYW1J
bmZvOwogCiBjbGFzcyBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmVDbGllbnQgewogcHVibGljOgpA
QCAtMTE1LDEzICsxMTMsNiBAQCBwcml2YXRlOgogICAgIHZvaWQgY2xlYXJJbWFnZUJhY2tpbmdD
b250ZW50cyhDb29yZGluYXRlZEltYWdlQmFja2luZ0lEKTsKICAgICB2b2lkIHJlbW92ZUltYWdl
QmFja2luZyhDb29yZGluYXRlZEltYWdlQmFja2luZ0lEKTsKIAotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICB2b2lkIHN5bmNDdXN0b21GaWx0ZXJQcm9ncmFtcyhjb25zdCBDb29yZGluYXRl
ZEdyYXBoaWNzU3RhdGUmKTsKLSAgICB2b2lkIGluamVjdENhY2hlZEN1c3RvbUZpbHRlclByb2dy
YW1zKGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlcnMpIGNvbnN0OwotICAgIHZvaWQgY3Jl
YXRlQ3VzdG9tRmlsdGVyUHJvZ3JhbShpbnQgaWQsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1J
bmZvJik7Ci0gICAgdm9pZCByZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtKGludCBpZCk7Ci0jZW5k
aWYKLQogICAgIFRleHR1cmVNYXBwZXJMYXllciogbGF5ZXJCeUlEKENvb3JkaW5hdGVkTGF5ZXJJ
RCBpZCkKICAgICB7CiAgICAgICAgIEFTU0VSVChtX2xheWVycy5jb250YWlucyhpZCkpOwpAQCAt
MTkzLDExICsxODQsNiBAQCBwcml2YXRlOgogICAgIENvbG9yIG1fYmFja2dyb3VuZENvbG9yOwog
ICAgIGJvb2wgbV9zZXREcmF3c0JhY2tncm91bmQ7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0gICAgdHlwZWRlZiBIYXNoTWFwPGludCwgUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+ID4g
Q3VzdG9tRmlsdGVyUHJvZ3JhbU1hcDsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtTWFwIG1fY3Vz
dG9tRmlsdGVyUHJvZ3JhbXM7Ci0jZW5kaWYKLQogICAgIFRleHR1cmVNYXBwZXJGUFNDb3VudGVy
IG1fZnBzQ291bnRlcjsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU3RhdGUuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU3RhdGUuaAppbmRleCA1NDQ1ZTYyLi5jMmMyY2Y1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29v
cmRpbmF0ZWRHcmFwaGljc1N0YXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZS5oCkBAIC00
MiwxMCArNDIsNiBAQAogI2luY2x1ZGUgIkZpbHRlck9wZXJhdGlvbnMuaCIKICNlbmRpZgogCi0j
aWYgRU5BQkxFKENTU19GSUxURVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1JbmZv
LmgiCi0jZW5kaWYKLQogI2lmIFVTRShHUkFQSElDU19TVVJGQUNFKQogI2luY2x1ZGUgIkdyYXBo
aWNzU3VyZmFjZS5oIgogI2luY2x1ZGUgIkdyYXBoaWNzU3VyZmFjZVRva2VuLmgiCkBAIC0xOTgs
MTEgKzE5NCw2IEBAIHN0cnVjdCBDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUgewogCiAgICAgVmVj
dG9yPHN0ZDo6cGFpcjx1aW50MzJfdCAvKiBhdGxhc0lEICovLCBSZWZQdHI8Q29vcmRpbmF0ZWRT
dXJmYWNlPiA+ID4gdXBkYXRlQXRsYXNlc1RvQ3JlYXRlOwogICAgIFZlY3Rvcjx1aW50MzJfdCAv
KiBhdGxhc0lEICovPiB1cGRhdGVBdGxhc2VzVG9SZW1vdmU7Ci0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0gICAgVmVjdG9yPHN0ZDo6cGFpcjx1aW50MzJfdCAvKiBGaWx0ZXJJRCAqLywgQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8+ID4gY3VzdG9tRmlsdGVyc1RvQ3JlYXRlOwotICAgIFZlY3Rv
cjx1aW50MzJfdD4gY3VzdG9tRmlsdGVyc1RvUmVtb3ZlOwotI2VuZGlmCiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vYXIucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYXIucG8KaW5kZXggNWU0
YWFmMC4uNTg1ZWNjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L2FyLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9hci5wbwpAQCAtMTcz
NCwxNiArMTczNCw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sg
YWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mg
c2hhZGVycyIKLW1zZ3N0ciAi2YHYudmR2YQg2YXYsdin2KzYuSBYU1MiCi0KLSM6IC4uLy4uLy4u
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1t
c2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgItmF2Kcg2KXYsNin
INiz2YrZgdi52YQg2YTYtdmCIERPTSIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNl
Y3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vYXMucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYXMucG8K
aW5kZXggYmNkODIyOS4uNzg2Zjg2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL2FzLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9hcy5w
bwpAQCAtMTcxNywxNCArMTcxNyw2IEBAIG1zZ3N0ciAi4Kau4Ka+4Kan4KeN4Kav4KauIOCmquCn
jeCmsuCnh+CmrOCnh+CmleCnhyDgpofgpqjgprLgpr7gpofgpqjgp7Ag4KaF4KaoCiBtc2dpZCAi
V2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLgpq7gpr7gpqfg
p43gpq/gpq4g4Kaq4KeN4Kay4KeH4Kas4KeH4KaV4KeHIOCmh+CmqOCmsuCmvuCmh+CmqOCnsCDg
poXgpqjgp4Hgpq7gpqTgpr8g4Kam4Ka/4Kef4KeHIOCmqOCnhyIKIAotIzogLi4vLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJs
ZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCmtuCnh+Cmh+CmoeCmvuCnsOCmuOCmruCnguCm
uSDgprjgpr7gpq7gp7Dgp43gpqXgpqzgpr7gpqgg4KaV4Kew4KaVIgotCi0jOiAuLi8uLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hl
dGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgImNzcyDgprbgp4fgpofgpqHgpr7g
p7Dgprjgpq7gp4Lgprkg4Ka44Ka+4Kau4Kew4KeN4Kal4Kas4Ka+4KaoIOCmleCnsOCmviDgprng
pqwg4Kao4KeHIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRl
bnQiCiBtc2dzdHIgIuCmheCmuOCngeCnsOCmleCnjeCmt+Cmv+CmpCDgprjgpq7gprLgp7Ag4Kaq
4KeN4Kew4Kam4Kew4KeN4Ka24KaoIOCmuOCmvuCmruCnsOCnjeCmpeCmrOCmvuCmqCDgppXgp7Dg
ppUiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYmcucG8gYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYmcucG8KaW5kZXggMzJhMmVkNC4uYzAzZjNk
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2JnLnBvCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9iZy5wbwpAQCAtMTc2MCwxNiArMTc2MCw2
IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGlu
ZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1z
Z3N0ciAi0JLQutC70Y7Rh9Cy0LDQvdC1INC90LAg0L/RgNC+0LLQtdGA0LrQsCDQt9CwIFhTUyIK
LQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5
MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0
ciAi0JTQsNC70Lgg0LTQsCDRgdC1INCy0LrQu9GO0YfQuCDQstGK0LfQvNC+0LbQvdC+0YHRgtGC
0LAg0LfQsCDQv9C+0YHRgtCw0LLRj9C90LUg0LIgRE9NIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNw
bGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9jcy5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9jcy5wbwppbmRleCBiODdiMWM4Li4xYjRiOTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vY3MucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2NzLnBvCkBAIC0xNzQzLDE2ICsxNzQzLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hl
dGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5
Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJQb3ZvbGl0IHJldml6aSBYU1Mi
Ci0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5
OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dz
dHIgIkplc3RsaSBwb3ZvbGl0IHZrbMOhZMOhbsOtIERPTSIKLQogIzogLi4vLi4vLi4vV2ViS2l0
L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlz
cGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZGUucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vZGUucG8KaW5kZXggMGY4Y2Y1YS4uY2EyOGY4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2RlLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9wby9kZS5wbwpAQCAtMTc2MSwxNCArMTc2MSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldo
ZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiTGVndCBmZXN0LCBv
YiAiCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUy1TaGFkZXIg
YWt0aXZpZXJlbiIKLQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgot
bXNnc3RyICJMZWd0IGZlc3QsIG9iIENTUy1TaGFkZXIgYWt0aXZpZXJ0IHdlcmRlbiBzb2xsZW4i
Ci0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNw
cDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0
ciAiQW56ZWlnZSB2b24gdW5zaWNoZXJlbSBJbmhhbHQgYWt0aXZpZXJlbiIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lbC5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9lbC5wbwppbmRleCA4NTQxOTQ0Li44N2VmNWM3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZWwucG8KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2VsLnBvCkBAIC0xNzQ5LDE1ICsxNzQ5LDYgQEAgbXNnc3RyICIiCiBt
c2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAK
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEK
LSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICLOlc69zrXPgc6z
zr/PgM6/zq/Ot8+Dzrcgz4POtc69zrHPgc6vz4nOvSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0
ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5h
YmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICIiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2Yg
aW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2VuX0NBLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L2VuX0NBLnBvCmluZGV4IDI2YWE0Y2IuLmI1YmEyZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9lbl9DQS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vZW5fQ0EucG8KQEAgLTE3MjMsMTYgKzE3MjMsNiBAQCBtc2dzdHIgIiIKIG1zZ2lk
ICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzog
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywg
ZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkVuYWJsZSBYU1MgQXVk
aXRvciIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIK
LW1zZ3N0ciAiV2hldGhlciB0byBlbmFibGUgRE9NIHBhc3RlIgotCiAjOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBk
aXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lbl9HQi5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9lbl9HQi5wbwppbmRleCAwMDhiMTc2Li4zZTBmMzA4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW5fR0IucG8KKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL2VuX0dCLnBvCkBAIC0xNzUwLDE0ICsxNzUwLDYgQEAgbXNnc3Ry
ICJNZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxh
eWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxv
d3MgaW5saW5lIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJFbmFi
bGUgQ1NTIHNoYWRlcnMiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVy
cyIKLW1zZ3N0ciAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi0KICM6IC4uLy4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAi
RW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiRW5hYmxlIGRpc3Bs
YXkgb2YgaW5zZWN1cmUgY29udGVudCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9lby5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lby5wbwpp
bmRleCBmY2UyNWYzLi4zMDE2MDgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vZW8ucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VvLnBv
CkBAIC0xNjk5LDE1ICsxNjk5LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBw
bGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNo
YWRlcnMiCi1tc2dzdHIgIiIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBj
c3Mgc2hhZGVycyIKLW1zZ3N0ciAixIh1IGVuxZ1hbHRpIGxhIHN1YnRlbm9uIHBvciBsYSBIVE1M
NS1kYXR1bWJhem8/IgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRl
bnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9lcy5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lcy5wbwppbmRleCA3ODZk
ZGQ1Li43ZTk2OWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
ZXMucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VzLnBvCkBAIC0xNzc3
LDE2ICsxNzc3LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBh
bGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENT
UyBzaGFkZXJzIgotbXNnc3RyICJBY3RpdmFyIGVsIGF1ZGl0b3IgZGUgWFNTIgotCi0jOiAuLi8u
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBm
dXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJJbmRp
Y2Egc2kgZGViZSBhY3RpdmFyIGVsIHBlZ2FkbyBET00iCi0KICM6IC4uLy4uLy4uLy4uL1dlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRp
c3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2V0LnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2V0LnBvCmluZGV4IDRkMWUzYjcuLmExOGRiOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ldC5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vZXQucG8KQEAgLTE3NDEsMTYgKzE3NDEsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJX
aGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6
enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIlhTUyBhdWRpaXRvcmkgbHVi
YW1pbmUiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMi
Ci1tc2dzdHIgIkthcyBsdWJhZGEgRE9NLXDDtWhpbmUgYXNldGFtaW5lIgotCiAjOiAuLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVu
YWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ldS5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9ldS5wbwppbmRleCA1YTMyMzNmLi5lM2Y3NmY2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZXUucG8KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2V1LnBvCkBAIC0xNzQ1LDE2ICsxNzQ1LDYgQEAgbXNnc3RyICIiCiBt
c2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAK
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEK
LSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJHYWl0dSBYU1Mg
YmVnaXJhbGVhIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFk
ZXJzIgotbXNnc3RyICJET00gaXRzYXN0ZWEgZ2FpdHVrbyBkZW4gYWxhIGV6IgotCiAjOiAuLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQg
IkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9mci5wbyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9mci5wbwppbmRleCBjNGU5N2NkLi44MDc2YTA3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZnIucG8KKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL2ZyLnBvCkBAIC0xNzE1LDE0ICsxNzE1LDYgQEAgbXNnc3RyICJM
YSBsZWN0dXJlIGR1IG3DqWRpYSBhdXRvcmlzZSBsJ2ludMOpZ3JhdGlvbiIKIG1zZ2lkICJXaGV0
aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIkluZGlxdWUgc2kgbGEg
bGVjdHVyZSBkdSBtw6lkaWEgYXV0b3Jpc2UgbCdpbnTDqWdyYXRpb24iCiAKLSM6IC4uLy4uLy4u
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFi
bGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkFjdGl2ZXIgbGVzIG9tYnJhZ2VzIENTUyIKLQotIzog
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNn
aWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJJbmRpcXVlIHMnaWwg
ZmF1dCBhY3RpdmVyIGxlcyBvbWJyYWdlcyBDU1MiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkg
b2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiQWN0aXZlciBsJ2FmZmljaGFnZSBkZSBjb250
ZW51IG5vbiBzw6ljdXJpdGFpcmUiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vZ2wucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZ2wucG8KaW5k
ZXggYTcyYzA0NS4uMGQ4MjY2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2dsLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9nbC5wbwpA
QCAtMTczMCwxNCArMTczMCw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxh
eWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBz
aGFkZXJzIgotbXNnc3RyICJBY3RpdmFyIHNvbWJyZWFkb3JlcyBDU1MiCi0KLSM6IC4uLy4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJX
aGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiSW5kaWNhIHNlIGFjdGl2YXIg
b3Mgc29tYnJlYWRvcmVzIENTUyIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNl
Y3VyZSBjb250ZW50IgogbXNnc3RyICJBY3RpdmFyIHZpc3VhbGl6YWNpw7NuIGRlIGNvbnRpZG8g
bm9uIHNlZ3VybyIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9n
dS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ndS5wbwppbmRleCAyNjI4YTg3
Li5lYjMxZmIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZ3Uu
cG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2d1LnBvCkBAIC0xNjIxLDE0
ICsxNjIxLDYgQEAgbXNnc3RyICLgqq7gq4DgqqHgqr/gqq/gqr4g4Kqq4KuN4Kqy4KuH4Kqv4Kqw
4Kqo4KuHIOCqh+CqqOCqsuCqvuCqh+CqqOCqqOCrgCDgqpwKIG1zZ2lkICJXaGV0aGVyIG1lZGlh
IHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIuCqtuCrgeCqgiDgqq7gq4DgqqHgqr/g
qq/gqr4g4Kqq4KuN4Kqy4KuH4Kqs4KuH4KqV4Kqo4KuHIOCqh+CqqOCqsuCqvuCqh+CqqOCqqOCr
gCDgqqrgqrDgqrXgqr7gqqjgqpfgq4Ag4KqG4Kqq4KuH4KqyIOCqm+CrhyIKIAotIzogLi4vd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5ODEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMi
Ci1tc2dzdHIgIkNTUyDgqrbgq4XgqqHgqrDgqqjgq4cg4Kq44KqV4KuN4Kqw4Kq/4KqvIOCqleCq
sOCriyIKLQotIzogLi4vd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5ODIKLW1zZ2lkICJX
aGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi4Kq24KuB4KqCIGNzcyDgqrbg
q4XgqqHgqrDgqqjgq4cg4Kq44KqV4KuN4Kqw4Kq/4KqvIOCqleCqsOCqteCqvuCqqOCrgeCqgiDg
qpvgq4ciCi0KICM6IC4uL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTk3CiBtc2dpZCAi
RW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAi4KqF4Kq44KuB4Kqw
4KqV4KuN4Kq34Kq/4KqkIOCquOCqruCqvuCqteCqv+Cqt+CrjeCqn+CqqOCrhyDgqqbgqrDgq43g
qrbgqr7gqrXgqrXgqr4g4Kq44KqV4KuN4Kqw4Kq/4KqvIOCqleCqsOCriyIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9oZS5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9oZS5wbwppbmRleCA5NDk1NDc2Li5iOGJlYzhkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaGUucG8KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2hlLnBvCkBAIC0xNzM3LDE2ICsxNzM3LDYgQEAgbXNnc3RyICIiCiBt
c2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAK
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEK
LSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICLXkNek16nXqCDX
qteh16jXmdeY15nXnSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mg
c2hhZGVycyIKLW1zZ3N0ciAi15TXkNedINeq157Xldeg15XXqiDXlNeo16fXoiDXpteo15nXm9eV
16og15zXlNeZ15XXqiDXnteV15PXpNeh15XXqi4iCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkg
b2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL2hpLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L2hpLnBvCmluZGV4IGFjOTcyMTguLmUxOWExMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9oaS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vaGkucG8KQEAgLTE3MzksMTQgKzE3MzksNiBAQCBtc2dzdHIgIuCkruClgOCkoeCkv+Ckr+Ck
viDgpKrgpY3gpLLgpYfgpKzgpYjgpJUg4KSH4KSo4KSy4KS+4KSH4KSoIOCkleClgCDgpLgKIG1z
Z2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIuCkleCl
jeCkr+CkviDgpK7gpYDgpKHgpL/gpK/gpL4g4KSq4KWN4KSy4KWH4KSs4KWI4KSVIOCkh+CkqOCk
suCkvuCkh+CkqCDgpJXgpYAg4KS44KWN4KS14KWA4KSV4KWD4KSk4KS/IOCkpuClh+CkpOCkviDg
pLngpYgiCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRp
bmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUyDgpLbg
pYfgpKHgpLAg4KS44KSV4KWN4KS34KSuIOCkleCksOClh+CkgiIKLQotIzogLi4vLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRo
ZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICLgpJXgpY3gpK/gpL4g4KS44KWA4KSP
4KS44KSP4KS4IOCktuClh+CkoeCksCDgpJXgpYsg4KS44KSV4KWN4KSw4KS/4KSvIOCkleCksOCk
qOCkviDgpLngpYgiCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29u
dGVudCIKIG1zZ3N0ciAi4KSF4KS44KWB4KSw4KSV4KWN4KS34KS/4KSkIOCkleCkguCkn+Clh+Ck
guCknyDgpJXgpL4g4KSq4KWN4KSw4KSm4KSw4KWN4KS24KSoIOCkuOCkleCljeCksOCkv+CkryDg
pJXgpLDgpKjgpL4g4KS54KWIIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2h1LnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2h1LnBvCmluZGV4
IGQxYTI2M2IuLjQyMTlmMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9odS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaHUucG8KQEAg
LTE3NTAsMTYgKzE3NTAsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXli
YWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUg
Q1NTIHNoYWRlcnMiCi1tc2dzdHIgIlhTUy1hdWRpdMOhbMOzIGVuZ2Vkw6lseWV6w6lzZSIKLQot
IzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5Mgot
IywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
RE9NIGJlaWxsZXN6dMOpcyBlbmdlZMOpbHllesOpc2UiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3Bs
YXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2lkLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL2lkLnBvCmluZGV4IDM1MTM2YjYuLjM4NzE1MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9pZC5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vaWQucG8KQEAgLTE2OTIsMTQgKzE2OTIsNiBAQCBtc2dzdHIgIlBlbXV0YXJhbiBtZWRp
YSBtZW5naWppbmthbiBpbmxpbmUiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxv
d3MgaW5saW5lIgogbXNnc3RyICJBcGFrYWggcGVtdXRhcmFuIG1lZGlhIG1lbmdpamlua2FuIGlu
bGluZSIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiRnVuZ3Npa2FuIHNo
YWRlciBDU1MiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRp
bmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0
ciAiQXBha2FoIG1lbWZ1bmdzaWthbiBzaGFkZXIgQ1NTIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNw
bGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9pdC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9pdC5wbwppbmRleCAyZDE4NDA0Li42NmVkOWE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vaXQucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2l0LnBvCkBAIC0xODI5LDE2ICsxODI5LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hl
dGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5
Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJBYmlsaXRhIGF1ZGl0b3IgWFNT
IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNn
c3RyICJJbmRpY2Egc2UgYWJpbGl0YXJlIGlsIERPTSBwYXN0aW5nIgotCiAjOiAuLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJs
ZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9rbi5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9rbi5wbwppbmRleCAzYzFiYzllLi45MDUwNDA3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8va24ucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2tuLnBvCkBAIC0xNzI0LDE0ICsxNzI0LDYgQEAgbXNnc3RyICLgsq7gs4Dg
sqHgsr/gsq8g4LKq4LON4LKy4LOH4LKs4LON4LKv4LK+4LKV4LONIOCyuOCyvuCysuCyv+CyqOCz
iuCys+CylwogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1z
Z3N0ciAi4LKu4LOA4LKh4LK/4LKvIOCyquCzjeCysuCzh+CyrOCzjeCyr+CyvuCyleCzjSDgsrjg
sr7gsrLgsr/gsqjgs4rgsrPgspfgsr/gsrDgs4HgsrXgs4HgsqbgspXgs43gspXgs4Yg4LKF4LKo
4LOB4LKu4LKk4LK/4LK44LOB4LKk4LON4LKk4LKm4LOG4LKv4LOGIgogCi0jOiAuLi8uLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5h
YmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJDU1Mg4LK24LOH4LKh4LKw4LOB4LKX4LKz4LKo4LON
4LKo4LOBIOCyuOCyleCzjeCysOCyv+Cyr+Cyl+CziuCys+Cyv+CyuOCzgSIKLQotIzogLi4vLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQg
IldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJDU1Mg4LK24LOH4LKh4LKw
4LOB4LKX4LKz4LKo4LON4LKo4LOBIOCyuOCyleCzjeCysOCyv+Cyr+Cyl+CziuCys+Cyv+CyuOCy
rOCzh+CyleCzhiIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250
ZW50IgogbXNnc3RyICLgsoXgsrjgs4HgsrDgspXgs43gsrfgsr/gsqQg4LK14LK/4LK34LKv4LK1
4LKo4LON4LKo4LOBIOCypOCzi+CysOCyv+CyuOCzgeCyteCzgeCypuCyqOCzjeCyqOCzgSDgsrjg
spXgs43gsrDgsr/gsq/gspfgs4rgsrPgsr/gsrjgsqzgs4fgspXgs4YiCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8va28ucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8va28ucG8KaW5kZXggNDFhZjdkNi4uMGE3NWQxMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2tvLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9rby5wbwpAQCAtMTcyNiwxNiArMTcyNiw2IEBAIG1zZ3N0ciAiIgogbXNn
aWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0j
OiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0j
LCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiWFNTIOqygOyCrCDq
uLDriqUg7IKs7JqpIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBz
aGFkZXJzIgotbXNnc3RyICJET00g67aZ7Jes64Sj6riw66W8IOyCrOyaqe2VoOyngCDsl6zrtoAi
Ci0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDox
MDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAi
IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x0LnBvIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x0LnBvCmluZGV4IGU0N2MzYzcuLmJhYWNlMmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdC5wbworKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbHQucG8KQEAgLTE3NDgsMTYgKzE3NDgsNiBA
QCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUi
CiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0
dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dz
dHIgIsSuanVuZ3RpIFhTUyBhdWRpdGF2aW3EhSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVy
IHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiQXIgxK9qdW5ndGkgRE9NIMSvZMSXamlt
xIUiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNw
cDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0
ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x2LnBvIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x2LnBvCmluZGV4IDEzYWU2N2QuLjM0Y2Fi
MTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdi5wbworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbHYucG8KQEAgLTE3MzUsMTUgKzE3MzUs
NiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxp
bmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1t
c2dzdHIgIkFrdGl2aXrEk3Qgc2tyaXB0dXMiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBj
c3Mgc2hhZGVycyIKLW1zZ3N0ciAiIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2Vj
dXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9tbC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9tbC5wbwpp
bmRleCBlNmJmOGMwLi41MjhjZjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vbWwucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL21sLnBv
CkBAIC0xNzE0LDE0ICsxNzE0LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBw
bGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NT
IHNoYWRlcnMiCi1tc2dzdHIgIiIKLQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBz
aGFkZXJzIgotbXNnc3RyICIiCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dl
YmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1
cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL21yLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL21yLnBvCmlu
ZGV4IGE0NDFkNDcuLmY0ZDlmOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9wby9tci5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbXIucG8K
QEAgLTE3NDAsMTQgKzE3NDAsNiBAQCBtc2dzdHIgIuCkruCkv+CkoeClgOCkr+CkviDgpKrgpY3g
pLLgpYfgpKzgpYXgpJUg4KSH4KSC4KSy4KS+4KSH4KSoIOCkuOCljeCkteClgAogbXNnaWQgIldo
ZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAi4KSu4KS/4KSh4KWA
4KSv4KS+IOCkquCljeCksuClh+CkrOClheCklSDgpIfgpILgpLLgpL7gpIfgpKgg4KS44KWN4KS1
4KWA4KSV4KS+4KSw4KS+4KSv4KSa4KWHIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJz
IgotbXNnc3RyICJDU1Mg4KS24KWH4KSh4KSw4KWN4KS44KWNIOCkuOClgeCksOClgiDgpJXgpLDg
pL4iCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
Y3NzIOCktuClh+CkoeCksOCljeCkuOCljSDgpLjgpYHgpLDgpYIg4KSV4KSw4KS+4KSv4KSa4KWH
IgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dz
dHIgIuCkheCkuOClgeCksOCkleCljeCkt+ClgOCkpCDgpIXgpILgpKTgpLDgpY3gpK3gpYHgpKQg
4KSu4KS+4KS54KS/4KSk4KWAIOCkpuCkvuCkluCkteCko+ClhyDgpLjgpK7gpLDgpY3gpKXgpYDg
pKQg4KSV4KSw4KS+IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L25iLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL25iLnBvCmluZGV4IDYyYTE0
ZWYuLmJkODM3NDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9u
Yi5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbmIucG8KQEAgLTE3MzEs
MTYgKzE3MzEsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFs
bG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNo
YWRlcnMiCi1tc2dzdHIgIlNsw6UgcMOlIEphdmFTY3JpcHQiCi0KLSM6IC4uLy4uLy4uL1dlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAi
V2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIk9tIGJha2dydW5uZW4gc2th
bCBza3JpdmVzIHV0IgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRl
bnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9ubC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ubC5wbwppbmRleCAxNjEx
MzJiLi5mZjE4YWZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
bmwucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL25sLnBvCkBAIC0xNzM1
LDE0ICsxNzM1LDYgQEAgbXNnc3RyICJJbmxpbmUgbWVkaWEgYWZzcGVsZW4gdG9lZ2VzdGFhbiIK
IG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIk9m
IGhldCBpbmxpbmUgYWZzcGVsZW4gdmFuIG1lZGlhIGlzIHRvZWdlc3RhYW4iCiAKLSM6IC4uLy4u
Ly4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDAzCi1tc2dp
ZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJDU1Mtc2hhZGVycyBpbnNjaGFrZWxlbiIK
LQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
OjEwMDQKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiT2Yg
Q1NTLXNoYWRlcnMgbW9ldGVuIHdvcmRlbiBpbmdlc2NoYWtlbGQiCi0KICM6IC4uLy4uLy4uLy4u
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDE5CiBtc2dpZCAiRW5h
YmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiV2VlcmdhdmUgdmFuIG9u
dmVpbGlnZSBpbmhvdWQgaW5zY2hha2VsZW4iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vb3IucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vb3Iu
cG8KaW5kZXggNDA0YWJiNy4uOGYwYTUyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL29yLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9v
ci5wbwpAQCAtMTcyNiwxNCArMTcyNiw2IEBAIG1zZ3N0ciAi4Kyu4Ky/4Kyh4Ky/4KyGIOCsquCt
jeCssuCth+CsrOCth+CsleCtjSDgrIfgrKjgrLLgrL7grIfgrKjgrLDgrYcg4KyF4KyoCiBtc2dp
ZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLgrK7grL/g
rKHgrL/grIYg4Kyq4K2N4Kyy4K2H4Kys4K2H4KyV4K2NIOCsh+CsqOCssuCsvuCsh+CsqOCssOCt
hyDgrIXgrKjgrYHgrK7grKTgrL8g4Kym4K2H4KyH4Kyl4Ky+4KyPIOCsleCsvyIKIAotIzogLi4v
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNn
aWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCsuOCth+CsoeCssOCsleCtgSDg
rLjgrJXgrY3grLDgrL/grZ8g4KyV4Kyw4Kyo4K2N4Kyk4K2BIgotCi0jOiAuLi8uLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhl
ciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgImNzcyDgrLjgrYfgrKHgrLDgrJXgrYEg
4Ky44KyV4K2N4Kyw4Ky/4K2fIOCsleCssOCsv+CsrOCsviDgrIngrJrgrL/grKQg4KyV4Ky/Igot
CiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIg
IuCsheCsuOCtgeCssOCsleCtjeCst+Csv+CspCDgrKzgrL/grLfgrZ/grKzgrLjgrY3grKTgrYHg
rLAg4Kyq4K2N4Kyw4Kym4Kyw4K2N4Ky24Kyo4KyV4K2BIOCsuOCsleCtjeCssOCsv+CtnyDgrJXg
rLDgrKjgrY3grKTgrYEiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vcGEucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcGEucG8KaW5kZXggOWVl
NDBlMC4uNWMzMjM2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L3BhLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wYS5wbwpAQCAtMTcz
NiwxNiArMTczNiw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sg
YWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mg
c2hhZGVycyIKLW1zZ3N0ciAi4Ki44KiV4KmN4Kiw4Ki/4Kiq4Kif4Ki+4KiCIOCor+Cpi+ColyIK
LQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5
MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0
ciAi4KiV4KmAIOCorOCpiOColeCol+CosOCovuCoiuCoguCooSDgqJrgqL/gqbHgqKTgqLDgqL7g
qIIg4Kio4KmC4KmwIOCom+CovuCoquCoo+CoviDgqLngqYjgpaQiCi0KICM6IC4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxl
IGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3BsLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL3BsLnBvCmluZGV4IGMzOThjZmYuLjViYzE1ZTkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wbC5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vcGwucG8KQEAgLTE3NjQsMTQgKzE3NjQsNiBAQCBtc2dzdHIgIk9kdHdhcnph
bmllIG11bHRpbWVkacOzdyB6ZXp3YWxhIG5hIHdzdGF3aWFuaWUiCiBtc2dpZCAiV2hldGhlciBt
ZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICJPa3JlxZtsYSwgY3p5IG9kdHdh
cnphbmllIG11bHRpbWVkacOzdyB6ZXp3YWxhIG5hIHdzdGF3aWFuaWUiCiAKLSM6IC4uLy4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJF
bmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIlfFgsSFY3plbmllIGNpZW5pb3dhbmlhIENTUyIK
LQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
Ojk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJPa3Jl
xZtsYSwgY3p5IHfFgsSFY3phxIcgY2llbmlvd2FuaWUgQ1NTIgotCiAjOiAuLi8uLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJs
ZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIlfFgsSFY3plbmllIHd5xZt3
aWV0bGFuaWEgbmllYmV6cGllY3puZWogdHJlxZtjaSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9wdC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9wdC5wbwppbmRleCAzM2Q5YzdiLi4wODUyNDc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vcHQucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL3B0LnBvCkBAIC0xNzQ1LDE2ICsxNzQ1LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhl
ciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4u
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1t
c2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJBY3RpdmFyIEF1ZGl0b3IgWFNTIgot
Ci0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTky
Ci0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3Ry
ICJTZSBkZXZlIHNlciBhY3RpdmFkbyBvIGNvbGFyIERPTSIKLQogIzogLi4vLi4vLi4vV2ViS2l0
L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlz
cGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcHRfQlIucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vcHRfQlIucG8KaW5kZXggMTg3MGNkNy4uMzk1MjA2OCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3B0X0JSLnBvCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9wdF9CUi5wbwpAQCAtMTczMiwxNCArMTczMiw2IEBAIG1zZ3N0ciAi
UGVybWl0aXIgcmVwcm9kdcOnw6NvIGRlIG3DrWRpYSBzZXIgZW1idXRpZGEiCiBtc2dpZCAiV2hl
dGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICJTZSBhIHJlcHJvZHXD
p8OjbyBkZSBtw61kaWEgZGV2ZSBwZXJtaXRpciwgb3UgbsOjbywgc2VyIGVtYnV0aWRhIgogCi0j
OiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAw
MwotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiSGFiaWxpdGFyIHNvbWJyZWFk
b3JlcyBDU1MiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNl
dHRpbmdzLmNwcDoxMDA0Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1t
c2dzdHIgIlNlIHNvbWJyZWFtZW50byBDU1MgZGV2ZSBvdSBuw6NvIHNlciBoYWJpbGl0YWRvIgot
CiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
MTAxOQogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIg
IkhhYmlsaXRhciBleGliacOnw6NvIGRlIGNvbnRlw7pkbyBpbnNlZ3VybyIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9yby5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9yby5wbwppbmRleCA5ZDgzODExLi4xMzJiOTkxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcm8ucG8KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL3JvLnBvCkBAIC0xNzE3LDE0ICsxNzE3LDYgQEAgbXNnc3RyICJSZWRh
cmVhIG11bHRpbWVkaWEgZXN0ZSDDrm5nbG9iYXTEgyIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBs
YXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIlNwZWNpZmljxIMgZGFjxIMgcmVkYXJlYSBt
dWx0aW1lZGlhIHNlIGZhY2Ugw65uIGNhZHJ1bCBwYWdpbmlpIgogCi0jOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENT
UyBzaGFkZXJzIgotbXNnc3RyICJBY3RpdmVhesSDIGZpbHRyZWxlIHBlcnNvbmFsaXphdGUgQ1NT
IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIlNwZWNp
ZmljxIMgZGFjxIMgc2UgYWN0aXZlYXrEgyBmaWx0cmVsZSBwZXJzb25hbGl6YXRlIENTUyAoc2hh
ZGVycykiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1z
Z3N0ciAiQWN0aXZlYXrEgyBhZmnImWFyZWEgY29uyJtpbnV0dWx1aSBuZXNpZ3VyIgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3J1LnBvIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL3J1LnBvCmluZGV4IGJmNDQyNDYuLmM0ODA2ZWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ydS5wbworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vcnUucG8KQEAgLTE3MzQsMTYgKzE3MzQsNiBAQCBtc2dzdHIg
IiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIg
IiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
Ojk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgItCS0YvQ
v9C+0LvQvdGP0YLRjCDRgdGG0LXQvdCw0YDQuNC4IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3Rr
L3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRo
ZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICLQlNC+0LvQttC90Ysg0LvQuCDQsdGL
0YLRjCDQstGL0LLQtdC00LXQvdGLINC90LAg0L/QtdGH0LDRgtGMINGE0L7QvdC+0LLRi9C1INC4
0LfQvtCx0YDQsNC20LXQvdC40Y8uIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2Vj
dXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9zbC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zbC5wbwpp
bmRleCA3YjdiNjgyLi45NDE2MGRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vc2wucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3NsLnBv
CkBAIC0xNzUzLDE0ICsxNzUzLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBw
bGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NT
IHNoYWRlcnMiCi1tc2dzdHIgIk9tb2dvxI1pIHNlbsSNaWxuaWtlIENTUyIKLQotIzogLi4vLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQg
IldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJBbGkgbmFqIGJvZG8gc2Vu
xI1pbG5pa2kgQ1NTIG9tb2dvxI1lbmkiCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2Yg
aW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiT21vZ2/EjWkgcHJpa2F6IHZzZWJpbiwga2kgbmlz
byB2YXJuZSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zci5w
byBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zci5wbwppbmRleCAwZTI5ZmI3Li4z
M2U1YmYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3IucG8K
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3NyLnBvCkBAIC0xNzQxLDE2ICsx
NzQxLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3Mg
aW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJz
IgotbXNnc3RyICLQntC80L7Qs9GD0ZvQuCDQmNC60YHQodChINGA0LXQstC40LfQuNGY0YMiCi0K
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIK
LSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIg
ItCe0LTRgNC10ZLRg9GY0LUg0LTQsCDQu9C4INGY0LUg0L7QvNC+0LPRg9Gb0LXQvdC+INCU0J7Q
nCDRg9Cx0LDRhtC40LLQsNGa0LUiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dl
YmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1
cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL3NyQGxhdGluLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3Ny
QGxhdGluLnBvCmluZGV4IGE2MGFkNTMuLmYyYTI1M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9zckBsYXRpbi5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vc3JAbGF0aW4ucG8KQEAgLTE3NDIsMTYgKzE3NDIsNiBAQCBtc2dzdHIgIiIK
IG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIK
IAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5
MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIk9tb2d1xIdp
IElrc1NTIHJldml6aWp1IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3
ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNz
cyBzaGFkZXJzIgotbXNnc3RyICJPZHJlxJF1amUgZGEgbGkgamUgb21vZ3XEh2VubyBET00gdWJh
Y2l2YW5qZSIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGlu
Z3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50Igog
bXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3Yu
cG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3YucG8KaW5kZXggODZhYzgwYi4u
Mjk5NGJiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3N2LnBv
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zdi5wbwpAQCAtMTc0MCwxNiAr
MTc0MCw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dz
IGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVy
cyIKLW1zZ3N0ciAiQWt0aXZlcmEgc2tyaXB0IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIg
dG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJIdXJ1dmlkYSBiYWtncnVuZHNiaWxkZXIg
c2thIHNrcml2YXMgdXQuIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3
ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNv
bnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby90YS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby90YS5wbwppbmRleCA5
ODhlMTFkLi5iOGY3N2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vdGEucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3RhLnBvCkBAIC0x
NzEzLDE0ICsxNzEzLDYgQEAgbXNnc3RyICLgrofgrqngr43grrLgr4jgrqngrr/grrLgr40g4K6u
4K+A4K6f4K6/4K6v4K6+4K614K+IIOCuh+Cur+CuleCvjeCulSDgrq4KIG1zZ2lkICJXaGV0aGVy
IG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIuCuh+CuqeCvjeCusuCviOCu
qeCuv+CusuCvjSDgrq7gr4Dgrp/grr/grq/grr7grrXgr4gg4K6H4K6v4K6V4K+N4K6VIOCuruCv
geCun+Cuv+Cur+CvgeCuruCuviIKIAotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1z
Z3N0ciAiQ1NTIOCut+Cvh+Cun+CusOCvjeCuleCus+CviCDgrprgr4bgrq/grrLgr43grqrgrp/g
r4HgrqTgr43grqQg4K614K+H4K6j4K+N4K6f4K+B4K6u4K6+IgotCi0jOiAuLi8uLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhl
ciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgImNzcyDgrrfgr4fgrp/grrDgr43grpXg
rrPgr4gg4K6a4K+G4K6v4K6y4K+N4K6q4K6f4K+B4K6k4K+N4K6kIOCuteCvh+Cuo+CvjeCun+Cv
geCuruCuviIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0
dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50
IgogbXNnc3RyICLgrqrgrr7grqTgr4HgrpXgrr7grqrgr43grqrgrrHgr43grrEg4K6J4K6z4K+N
4K6z4K6f4K6V4K+N4K6V4K6k4K+N4K6k4K+I4K6V4K+NIOCuleCuvuCun+CvjeCumuCuv+CuquCv
jeCuquCun+CvgeCupOCvjeCupOCvgeCuteCupOCviOCumuCvjSDgrprgr4bgrq/grrLgr43grqrg
rp/gr4HgrqTgr43grqTgr4EiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vdGUucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdGUucG8KaW5kZXgg
ZjNlMmU4Ny4uMWE1ZmM1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL3RlLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby90ZS5wbwpAQCAt
MTcxNywxNCArMTcxNyw2IEBAIG1zZ3N0ciAi4LCu4LC+4LCn4LGN4LCv4LCuIOCwquCxjeCwsuCx
h+CwrOCwvuCwleCxjSDgsK/gsL/gsKjgsY3igIzgsLLgsYjgsKjgsY0KIG1zZ2lkICJXaGV0aGVy
IG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIuCwruCwvuCwp+CxjeCwr+Cw
riDgsKrgsY3gsLLgsYfgsKzgsY3gsK/gsL7gsJXgsY0g4LCv4LC/4LCo4LGN4oCM4LCy4LGI4LCo
4LGNIOCwheCwqOCxgeCwruCwpOCwv+CwguCwmuCwvuCwsuCwviIKIAotIzogLi4vLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJs
ZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCwt+Cxh+CwoeCwsOCxjeCwuOCxjSDgsJrgsYfg
sKTgsKjgsILgsJrgsYfgsK/gsL8iCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0
L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mg
c2hhZGVycyIKLW1zZ3N0ciAiY3NzIOCwt+Cxh+CwoeCwsOCxjeCwuOCxjSDgsJrgsYfgsKTgsKjg
sIIg4LCa4LGH4LCv4LC+4LCy4LC+IgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGlu
c2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIuCwuOCxgeCwsOCwleCxjeCwt+Cwv+CwpOCwgiDgsJXg
sL7gsKjgsL8g4LC14LC/4LC34LCvIOCwquCxjeCwsOCwpuCwsOCxjeCwtuCwqOCwqOCxgSDgsJrg
sYfgsKTgsKjgsILgsJrgsYfgsK/gsL8iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vdWsucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdWsucG8K
aW5kZXggMWE2Zjg4MS4uMWY3MjhmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL3VrLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby91ay5w
bwpAQCAtMTczNywxNiArMTczNyw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEg
cGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVu
YWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAi0KPQstGW0LzQutC90YPRgtC4INGW0L3RgdGC0YDR
g9C80LXQvdGCINC/0LXRgNC10LLRltGA0LrQuCBYU1MiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hl
dGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgItCn0Lgg0YHQu9GW0LQg0LLQvNC4
0LrQsNGC0Lgg0LLRgdGC0LDQstC60YMgRE9NIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9m
IGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby92aS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby92
aS5wbwppbmRleCBjNmQ5NmIzLi45ZGZjNzYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vdmkucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L3ZpLnBvCkBAIC0xNzMzLDE2ICsxNzMzLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBt
ZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dp
ZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJC4bqtdCBraeG7g20gdHJhIFhTUyIKLQot
IzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5Mgot
IywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
Q8OzIGNobyBkw6FuIERPTSBraMO0bmciCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0
L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5z
ZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL3poX0NOLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3po
X0NOLnBvCmluZGV4IGI2MDczMTYuLmEzZTlhYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby96aF9DTi5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vemhfQ04ucG8KQEAgLTE3MzUsMTYgKzE3MzUsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJX
aGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6
enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIuWQr+eUqCBYU1Mg5a6h6K6h
IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNn
c3RyICLmmK/lkKblkK/nlKggRE9NIOeymOi0tCIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBv
ZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvRmlsdGVyRWZmZWN0UmVuZGVyZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL0ZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcAppbmRleCA0YWNlNTdlLi42ZWVhZjI1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRmlsdGVyRWZmZWN0UmVuZGVyZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5j
cHAKQEAgLTQ1LDE3ICs0NSw2IEBACiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHd0
Zi9NYXRoRXh0cmFzLmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQ
SElDUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmgiCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbS5o
IgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIKLSNpbmNsdWRlICJG
RUN1c3RvbUZpbHRlci5oIgotI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCi0jaW5jbHVk
ZSAiUmVuZGVyVmlldy5oIgotI2luY2x1ZGUgIlZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlv
bi5oIgotI2VuZGlmCi0KICNpZiBFTkFCTEUoU1ZHKQogI2luY2x1ZGUgIkNhY2hlZFNWR0RvY3Vt
ZW50LmgiCiAjaW5jbHVkZSAiQ2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuaCIKQEAgLTg5LDI4
ICs3OCw5IEBAIGlubGluZSBib29sIGlzRmlsdGVyU2l6ZVZhbGlkKEZsb2F0UmVjdCByZWN0KQog
ICAgIHJldHVybiB0cnVlOwogfQogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0Rf
R1JBUEhJQ1MpCi1zdGF0aWMgUGFzc1JlZlB0cjxGRUN1c3RvbUZpbHRlcj4gY3JlYXRlQ3VzdG9t
RmlsdGVyRWZmZWN0KEZpbHRlciogZmlsdGVyLCBEb2N1bWVudCogZG9jdW1lbnQsIFZhbGlkYXRl
ZEN1c3RvbUZpbHRlck9wZXJhdGlvbiogb3BlcmF0aW9uKQotewotICAgIGlmICghZG9jdW1lbnQp
Ci0gICAgICAgIHJldHVybiAwOwotCi0gICAgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCogZ2xv
YmFsQ29udGV4dCA9IGRvY3VtZW50LT5yZW5kZXJWaWV3KCktPmN1c3RvbUZpbHRlckdsb2JhbENv
bnRleHQoKTsKLSAgICBnbG9iYWxDb250ZXh0LT5wcmVwYXJlQ29udGV4dElmTmVlZGVkKGRvY3Vt
ZW50LT52aWV3KCktPmhvc3RXaW5kb3coKSwgZG9jdW1lbnQtPmZyYW1lKCktPnNldHRpbmdzKCku
Zm9yY2VTb2Z0d2FyZVdlYkdMUmVuZGVyaW5nKCkpOwotICAgIGlmICghZ2xvYmFsQ29udGV4dC0+
Y29udGV4dCgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIHJldHVybiBGRUN1c3RvbUZpbHRl
cjo6Y3JlYXRlKGZpbHRlciwgZ2xvYmFsQ29udGV4dC0+Y29udGV4dCgpLCBvcGVyYXRpb24tPnZh
bGlkYXRlZFByb2dyYW0oKSwgb3BlcmF0aW9uLT5wYXJhbWV0ZXJzKCksCi0gICAgICAgIG9wZXJh
dGlvbi0+bWVzaFJvd3MoKSwgb3BlcmF0aW9uLT5tZXNoQ29sdW1ucygpLCAgb3BlcmF0aW9uLT5t
ZXNoVHlwZSgpKTsKLX0KLSNlbmRpZgotCiBGaWx0ZXJFZmZlY3RSZW5kZXJlcjo6RmlsdGVyRWZm
ZWN0UmVuZGVyZXIoKQogICAgIDogbV9ncmFwaGljc0J1ZmZlckF0dGFjaGVkKGZhbHNlKQogICAg
ICwgbV9oYXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHMoZmFsc2UpCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgICwgbV9oYXNDdXN0b21TaGFkZXJGaWx0ZXIoZmFsc2UpCi0jZW5kaWYKIHsKICAg
ICBzZXRGaWx0ZXJSZXNvbHV0aW9uKEZsb2F0U2l6ZSgxLCAxKSk7CiAgICAgbV9zb3VyY2VHcmFw
aGljID0gU291cmNlR3JhcGhpYzo6Y3JlYXRlKHRoaXMpOwpAQCAtMTgxLDE3ICsxNTEsMTEgQEAg
UGFzc1JlZlB0cjxGaWx0ZXJFZmZlY3Q+IEZpbHRlckVmZmVjdFJlbmRlcmVyOjpidWlsZFJlZmVy
ZW5jZUZpbHRlcihSZW5kZXJFbGVtZW4KIAogYm9vbCBGaWx0ZXJFZmZlY3RSZW5kZXJlcjo6YnVp
bGQoUmVuZGVyRWxlbWVudCogcmVuZGVyZXIsIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIG9wZXJh
dGlvbnMsIEZpbHRlckNvbnN1bWVyIGNvbnN1bWVyKQogewotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSAgICBtX2hhc0N1c3RvbVNoYWRlckZpbHRlciA9IGZhbHNlOwotI2VuZGlmCiAgICAgbV9o
YXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHMgPSBvcGVyYXRpb25zLmhhc0ZpbHRlclRoYXRNb3Zlc1Bp
eGVscygpOwogICAgIGlmIChtX2hhc0ZpbHRlclRoYXRNb3Zlc1BpeGVscykKICAgICAgICAgbV9v
dXRzZXRzID0gb3BlcmF0aW9ucy5vdXRzZXRzKCk7Ci0gICAgCi0gICAgLy8gS2VlcCB0aGUgb2xk
IGVmZmVjdHMgb24gdGhlIHN0YWNrIHVudGlsIHdlJ3ZlIGNyZWF0ZWQgdGhlIG5ldyBlZmZlY3Rz
LgotICAgIC8vIE5ldyBGRUN1c3RvbUZpbHRlcnMgY2FuIHJldXNlIGNhY2hlZCByZXNvdXJjZXMg
ZnJvbSBvbGQgRkVDdXN0b21GaWx0ZXJzLgotICAgIEZpbHRlckVmZmVjdExpc3Qgb2xkRWZmZWN0
czsKLSAgICBtX2VmZmVjdHMuc3dhcChvbGRFZmZlY3RzKTsKKworICAgIG1fZWZmZWN0cy5jbGVh
cigpOwogCiAgICAgUmVmUHRyPEZpbHRlckVmZmVjdD4gcHJldmlvdXNFZmZlY3QgPSBtX3NvdXJj
ZUdyYXBoaWM7CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBvcGVyYXRpb25zLm9wZXJhdGlv
bnMoKS5zaXplKCk7ICsraSkgewpAQCAtMzM1LDIxICsyOTksNiBAQCBib29sIEZpbHRlckVmZmVj
dFJlbmRlcmVyOjpidWlsZChSZW5kZXJFbGVtZW50KiByZW5kZXJlciwgY29uc3QgRmlsdGVyT3Bl
cmF0aW9ucwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZHJvcFNoYWRvd09wZXJhdGlvbi0+eCgpLCBkcm9wU2hhZG93T3BlcmF0aW9uLT55KCksIGRyb3BT
aGFkb3dPcGVyYXRpb24tPmNvbG9yKCksIDEpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
IH0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLSAgICAgICAg
Y2FzZSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICAgICAgICAgIC8vIENVU1RPTSBvcGVy
YXRpb25zIGFyZSBhbHdheXMgY29udmVydGVkIHRvIFZBTElEQVRFRF9DVVNUT00gYmVmb3JlIGdl
dHRpbmcgaGVyZS4KLSAgICAgICAgICAgIC8vIFRoZSBjb252ZXJzaW9uIGhhcHBlbnMgaW4gUmVu
ZGVyTGF5ZXI6OmNvbXB1dGVGaWx0ZXJPcGVyYXRpb25zLgotICAgICAgICAgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVy
YXRpb246OlZBTElEQVRFRF9DVVNUT006IHsKLSAgICAgICAgICAgIFZhbGlkYXRlZEN1c3RvbUZp
bHRlck9wZXJhdGlvbiogY3VzdG9tRmlsdGVyT3BlcmF0aW9uID0gc3RhdGljX2Nhc3Q8VmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oZmlsdGVyT3BlcmF0aW9uKTsKLSAgICAgICAgICAg
IERvY3VtZW50KiBkb2N1bWVudCA9IHJlbmRlcmVyID8gJnJlbmRlcmVyLT5kb2N1bWVudCgpIDog
MDsKLSAgICAgICAgICAgIGVmZmVjdCA9IGNyZWF0ZUN1c3RvbUZpbHRlckVmZmVjdCh0aGlzLCBk
b2N1bWVudCwgY3VzdG9tRmlsdGVyT3BlcmF0aW9uKTsKLSAgICAgICAgICAgIGlmIChlZmZlY3Qp
Ci0gICAgICAgICAgICAgICAgbV9oYXNDdXN0b21TaGFkZXJGaWx0ZXIgPSB0cnVlOwotICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSNlbmRpZgogICAgICAgICBkZWZhdWx0OgogICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgIH0KQEAgLTQxOCwxMyArMzY3LDYgQEAgdm9pZCBGaWx0ZXJF
ZmZlY3RSZW5kZXJlcjo6YXBwbHkoKQogCiBMYXlvdXRSZWN0IEZpbHRlckVmZmVjdFJlbmRlcmVy
Ojpjb21wdXRlU291cmNlSW1hZ2VSZWN0Rm9yRGlydHlSZWN0KGNvbnN0IExheW91dFJlY3QmIGZp
bHRlckJveFJlY3QsIGNvbnN0IExheW91dFJlY3QmIGRpcnR5UmVjdCkKIHsKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0gICAgaWYgKGhhc0N1c3RvbVNoYWRlckZpbHRlcigpKSB7Ci0gICAgICAg
IC8vIFdoZW4gd2UgaGF2ZSBhdCBsZWFzdCBhIGN1c3RvbSBzaGFkZXIgaW4gdGhlIGNoYWluLCB3
ZSBuZWVkIHRvIGNvbXB1dGUgdGhlIHdob2xlIHNvdXJjZSBpbWFnZSwgYmVjYXVzZSB0aGUgc2hh
ZGVyIGNhbgotICAgICAgICAvLyByZWZlcmVuY2UgYW55IHBpeGVsIGFuZCB3ZSBjYW5ub3QgY29u
dHJvbCB0aGF0LgotICAgICAgICByZXR1cm4gZmlsdGVyQm94UmVjdDsKLSAgICB9Ci0jZW5kaWYK
ICAgICAvLyBUaGUgcmVzdWx0IG9mIHRoaXMgZnVuY3Rpb24gaXMgdGhlIGFyZWEgaW4gdGhlICJm
aWx0ZXJCb3hSZWN0IiB0aGF0IG5lZWRzIHRvIGJlIHJlcGFpbnRlZCwgc28gdGhhdCB3ZSBmdWxs
eSBjb3ZlciB0aGUgImRpcnR5UmVjdCIuCiAgICAgTGF5b3V0UmVjdCByZWN0Rm9yUmVwYWludCA9
IGRpcnR5UmVjdDsKICAgICBpZiAoaGFzRmlsdGVyVGhhdE1vdmVzUGl4ZWxzKCkpIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5oIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpbHRlckVmZmVjdFJlbmRlcmVyLmgKaW5kZXggN2Nh
Mjc1OS4uOWQ4OGZhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpbHRl
ckVmZmVjdFJlbmRlcmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpbHRlckVm
ZmVjdFJlbmRlcmVyLmgKQEAgLTQ0LDggKzQ0LDYgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
Ci1jbGFzcyBDYWNoZWRTaGFkZXI7Ci1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtOwogY2xhc3Mg
RG9jdW1lbnQ7CiBjbGFzcyBHcmFwaGljc0NvbnRleHQ7CiBjbGFzcyBSZW5kZXJFbGVtZW50OwpA
QCAtMTIxLDEwICsxMTksNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBoYXNGaWx0ZXJUaGF0TW92ZXNQ
aXhlbHMoKSBjb25zdCB7IHJldHVybiBtX2hhc0ZpbHRlclRoYXRNb3Zlc1BpeGVsczsgfQogICAg
IExheW91dFJlY3QgY29tcHV0ZVNvdXJjZUltYWdlUmVjdEZvckRpcnR5UmVjdChjb25zdCBMYXlv
dXRSZWN0JiBmaWx0ZXJCb3hSZWN0LCBjb25zdCBMYXlvdXRSZWN0JiBkaXJ0eVJlY3QpOwogCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGJvb2wgaGFzQ3VzdG9tU2hhZGVyRmlsdGVyKCkg
Y29uc3QgeyByZXR1cm4gbV9oYXNDdXN0b21TaGFkZXJGaWx0ZXI7IH0KLSNlbmRpZgotCiBwcml2
YXRlOgogICAgIHZvaWQgc2V0TWF4RWZmZWN0UmVjdHMoY29uc3QgRmxvYXRSZWN0JiBlZmZlY3RS
ZWN0KQogICAgIHsKQEAgLTE1NCw5ICsxNDgsNiBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBtX2dy
YXBoaWNzQnVmZmVyQXR0YWNoZWQ7CiAgICAgYm9vbCBtX2hhc0ZpbHRlclRoYXRNb3Zlc1BpeGVs
czsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgYm9vbCBtX2hhc0N1c3RvbVNoYWRlckZp
bHRlcjsKLSNlbmRpZgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKaW5kZXggYmFlNmQzOC4uOTNiOGZiZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCkBAIC0xMjYsMTMgKzEyNiw2IEBA
CiAjaW5jbHVkZSAiU1ZHTmFtZXMuaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dC5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkN1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIKLSNpbmNsdWRlICJWYWxpZGF0ZWRDdXN0b21GaWx0
ZXJPcGVyYXRpb24uaCIKLSNlbmRpZgotCiAjZGVmaW5lIE1JTl9JTlRFUlNFQ1RfRk9SX1JFVkVB
TCAzMgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0xNTEyLDE2ICsxNTA1LDYgQEAgdm9pZCBS
ZW5kZXJMYXllcjo6c2V0RmlsdGVyQmFja2VuZE5lZWRzUmVwYWludGluZ0luUmVjdChjb25zdCBM
YXlvdXRSZWN0JiByZWN0LAogICAgIEZpbHRlckluZm8mIGZpbHRlckluZm8gPSBGaWx0ZXJJbmZv
OjpnZXQoKnRoaXMpOwogICAgIGZpbHRlckluZm8uZXhwYW5kRGlydHlTb3VyY2VSZWN0KHJlY3RG
b3JSZXBhaW50KTsKICAgICAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgQVNTRVJUKGZp
bHRlckluZm8ucmVuZGVyZXIoKSk7Ci0gICAgaWYgKGZpbHRlckluZm8ucmVuZGVyZXIoKS0+aGFz
Q3VzdG9tU2hhZGVyRmlsdGVyKCkpIHsKLSAgICAgICAgLy8gSWYgd2UgaGF2ZSBhdCBsZWFzdCBv
bmUgY3VzdG9tIHNoYWRlciwgd2UgbmVlZCB0byB1cGRhdGUgdGhlIHdob2xlIGJvdW5kaW5nIGJv
eCBvZiB0aGUgbGF5ZXIsIGJlY2F1c2UgdGhlCi0gICAgICAgIC8vIHNoYWRlciBjYW4gYWRkcmVz
cyBhbnkgb3VwdXQgcGl4ZWwuCi0gICAgICAgIC8vIE5vdGU6IFRoaXMgaXMgb25seSBmb3Igb3V0
cHV0IHJlY3QsIHNvIHRoZXJlJ3Mgbm8gbmVlZCB0byBleHBhbmQgdGhlIGRpcnR5IHNvdXJjZSBy
ZWN0LgotICAgICAgICByZWN0Rm9yUmVwYWludC51bml0ZShjYWxjdWxhdGVMYXllckJvdW5kcyh0
aGlzKSk7Ci0gICAgfQotI2VuZGlmCi0gICAgCiAgICAgUmVuZGVyTGF5ZXIqIHBhcmVudExheWVy
ID0gZW5jbG9zaW5nRmlsdGVyUmVwYWludExheWVyKCk7CiAgICAgQVNTRVJUKHBhcmVudExheWVy
KTsKICAgICBGbG9hdFF1YWQgcmVwYWludFF1YWQocmVjdEZvclJlcGFpbnQpOwpAQCAtNjgwOCw2
OCArNjc5MSw4IEBAIFBhc3NSZWY8UmVuZGVyU3R5bGU+IFJlbmRlckxheWVyOjpjcmVhdGVSZWZs
ZWN0aW9uU3R5bGUoKQogICAgIHJldHVybiBuZXdTdHlsZTsKIH0KIAotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLQotYm9vbCBSZW5kZXJMYXllcjo6aXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKCkg
Y29uc3QKLXsKLSAgICAvLyBXZSBvbmx5IHdhbnQgdG8gZW5hYmxlIHNoYWRlcnMgaWYgV2ViR0wg
aXMgYWxzbyBlbmFibGVkIG9uIHRoaXMgcGxhdGZvcm0uCi0gICAgY29uc3QgU2V0dGluZ3MmIHNl
dHRpbmdzID0gcmVuZGVyZXIoKS5mcmFtZSgpLnNldHRpbmdzKCk7Ci0gICAgcmV0dXJuIHNldHRp
bmdzLmlzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCgpICYmIHNldHRpbmdzLndlYkdMRW5hYmxlZCgp
OwotfQotCi0jZW5kaWYKLQogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKIAotRmlsdGVyT3BlcmF0
aW9ucyBSZW5kZXJMYXllcjo6Y29tcHV0ZUZpbHRlck9wZXJhdGlvbnMoY29uc3QgUmVuZGVyU3R5
bGUqIHN0eWxlKQotewotI2lmICFFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgcmV0dXJuIHN0eWxl
LT5maWx0ZXIoKTsKLSNlbHNlCi0gICAgY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYgZmlsdGVycyA9
IHN0eWxlLT5maWx0ZXIoKTsKLSAgICBpZiAoIWZpbHRlcnMuaGFzQ3VzdG9tRmlsdGVyKCkpCi0g
ICAgICAgIHJldHVybiBmaWx0ZXJzOwotCi0gICAgaWYgKCFpc0NTU0N1c3RvbUZpbHRlckVuYWJs
ZWQoKSkgewotICAgICAgICAvLyBDU1MgQ3VzdG9tIGZpbHRlcnMgc2hvdWxkIG5vdCBwYXJzZSBh
dCBhbGwgaW4gdGhpcyBjYXNlLCBidXQgdGhlcmUgbWlnaHQgYmUKLSAgICAgICAgLy8gcmVtYWlu
aW5nIHN0eWxlcyB0aGF0IHdlcmUgcGFyc2VkIHdoZW4gdGhlIGZsYWcgd2FzIGVuYWJsZWQuIFJl
cHJvZHVjZXMgaW4gRHVtcFJlbmRlclRyZWUKLSAgICAgICAgLy8gYmVjYXVzZSBpdCByZXNldHMg
dGhlIGZsYWcgd2hpbGUgdGhlIHByZXZpb3VzIHRlc3QgaXMgc3RpbGwgbG9hZGVkLgotICAgICAg
ICByZXR1cm4gRmlsdGVyT3BlcmF0aW9ucygpOwotICAgIH0KLQotICAgIEZpbHRlck9wZXJhdGlv
bnMgb3V0cHV0RmlsdGVyczsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGZpbHRlcnMuc2l6
ZSgpOyArK2kpIHsKLSAgICAgICAgUmVmUHRyPEZpbHRlck9wZXJhdGlvbj4gZmlsdGVyT3BlcmF0
aW9uID0gZmlsdGVycy5vcGVyYXRpb25zKCkuYXQoaSk7Ci0gICAgICAgIGlmIChmaWx0ZXJPcGVy
YXRpb24tPnR5cGUoKSA9PSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTSkgewotICAgICAgICAgICAg
Ly8gV2UgaGF2ZSB0byB3YWl0IHVudGlsIHRoZSBwcm9ncmFtIG9mIENTUyBTaGFkZXJzIGlzIGxv
YWRlZCBiZWZvcmUgc2V0dGluZyBpdCBvbiB0aGUgbGF5ZXIuCi0gICAgICAgICAgICAvLyBOb3Rl
IHRoYXQgd2Ugd2lsbCBoYW5kbGUgdGhlIGxvYWRpbmcgb2YgdGhlIHNoYWRlcnMgYW5kIHJlcGFp
bnRpbmcgb2YgdGhlIGxheWVyIGluIHVwZGF0ZU9yUmVtb3ZlRmlsdGVyQ2xpZW50cy4KLSAgICAg
ICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9tT3BlcmF0aW9uID0gc3Rh
dGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oZmlsdGVyT3BlcmF0aW9uLmdl
dCgpKTsKLSAgICAgICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiBwcm9ncmFtID0g
Y3VzdG9tT3BlcmF0aW9uLT5wcm9ncmFtKCk7Ci0gICAgICAgICAgICBpZiAoIXByb2dyYW0tPmlz
TG9hZGVkKCkpCi0gICAgICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgICAgIFJlZlB0
cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2YWxpZGF0ZWRQcm9ncmFtID0gcHJvZ3Jh
bS0+dmFsaWRhdGVkUHJvZ3JhbSgpOwotICAgICAgICAgICAgaWYgKCF2YWxpZGF0ZWRQcm9ncmFt
KSB7Ci0gICAgICAgICAgICAgICAgLy8gTGF6aWx5IGNyZWF0ZSBhIHZhbGlkYXRlZCBwcm9ncmFt
IGFuZCBzdG9yZSBpdCBvbiB0aGUgQ3VzdG9tRmlsdGVyUHJvZ3JhbS4KLSAgICAgICAgICAgICAg
ICBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0KiBnbG9iYWxDb250ZXh0ID0gcmVuZGVyZXIoKS52
aWV3KCkuY3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCgpOwotICAgICAgICAgICAgICAgIHZhbGlk
YXRlZFByb2dyYW0gPSBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpjcmVhdGUoZ2xvYmFs
Q29udGV4dCwgcHJvZ3JhbS0+cHJvZ3JhbUluZm8oKSk7Ci0gICAgICAgICAgICAgICAgcHJvZ3Jh
bS0+c2V0VmFsaWRhdGVkUHJvZ3JhbSh2YWxpZGF0ZWRQcm9ncmFtKTsKLSAgICAgICAgICAgIH0K
LQotICAgICAgICAgICAgaWYgKCF2YWxpZGF0ZWRQcm9ncmFtLT5pc0luaXRpYWxpemVkKCkpCi0g
ICAgICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgICAgIFJlZlB0cjxWYWxpZGF0ZWRD
dXN0b21GaWx0ZXJPcGVyYXRpb24+IHZhbGlkYXRlZE9wZXJhdGlvbiA9IFZhbGlkYXRlZEN1c3Rv
bUZpbHRlck9wZXJhdGlvbjo6Y3JlYXRlKHZhbGlkYXRlZFByb2dyYW0ucmVsZWFzZSgpLCAKLSAg
ICAgICAgICAgICAgICBjdXN0b21PcGVyYXRpb24tPnBhcmFtZXRlcnMoKSwgY3VzdG9tT3BlcmF0
aW9uLT5tZXNoUm93cygpLCBjdXN0b21PcGVyYXRpb24tPm1lc2hDb2x1bW5zKCksIGN1c3RvbU9w
ZXJhdGlvbi0+bWVzaFR5cGUoKSk7Ci0gICAgICAgICAgICBvdXRwdXRGaWx0ZXJzLm9wZXJhdGlv
bnMoKS5hcHBlbmQodmFsaWRhdGVkT3BlcmF0aW9uLnJlbGVhc2UoKSk7Ci0gICAgICAgICAgICBj
b250aW51ZTsKLSAgICAgICAgfQotICAgICAgICBvdXRwdXRGaWx0ZXJzLm9wZXJhdGlvbnMoKS5h
cHBlbmQoZmlsdGVyT3BlcmF0aW9uLnJlbGVhc2UoKSk7Ci0gICAgfQotICAgIHJldHVybiBvdXRw
dXRGaWx0ZXJzOwotI2VuZGlmCi19Ci0KIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZU9yUmVtb3Zl
RmlsdGVyQ2xpZW50cygpCiB7CiAgICAgaWYgKCFoYXNGaWx0ZXIoKSkgewpAQCAtNjg3NywxMyAr
NjgwMCw2IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZU9yUmVtb3ZlRmlsdGVyQ2xpZW50cygp
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAg
aWYgKHJlbmRlcmVyKCkuc3R5bGUoKS5maWx0ZXIoKS5oYXNDdXN0b21GaWx0ZXIoKSkKLSAgICAg
ICAgRmlsdGVySW5mbzo6Z2V0KCp0aGlzKS51cGRhdGVDdXN0b21GaWx0ZXJDbGllbnRzKHJlbmRl
cmVyKCkuc3R5bGUoKS5maWx0ZXIoKSk7Ci0gICAgZWxzZSBpZiAoRmlsdGVySW5mbyogZmlsdGVy
SW5mbyA9IEZpbHRlckluZm86OmdldElmRXhpc3RzKCp0aGlzKSkKLSAgICAgICAgZmlsdGVySW5m
by0+cmVtb3ZlQ3VzdG9tRmlsdGVyQ2xpZW50cygpOwotI2VuZGlmCi0KICNpZiBFTkFCTEUoU1ZH
KQogICAgIGlmIChyZW5kZXJlcigpLnN0eWxlKCkuZmlsdGVyKCkuaGFzUmVmZXJlbmNlRmlsdGVy
KCkpCiAgICAgICAgIEZpbHRlckluZm86OmdldCgqdGhpcykudXBkYXRlUmVmZXJlbmNlRmlsdGVy
Q2xpZW50cyhyZW5kZXJlcigpLnN0eWxlKCkuZmlsdGVyKCkpOwpAQCAtNjg5OSw3ICs2ODE1LDcg
QEAgdm9pZCBSZW5kZXJMYXllcjo6dXBkYXRlT3JSZW1vdmVGaWx0ZXJFZmZlY3RSZW5kZXJlcigp
CiAgICAgLy8gbW9kZSBtaWdodCBoYXZlIGNoYW5nZWQgZm9yIHRoaXMgbGF5ZXIuCiAgICAgaWYg
KCFwYWludHNXaXRoRmlsdGVycygpKSB7CiAgICAgICAgIC8vIERvbid0IGRlbGV0ZSB0aGUgd2hv
bGUgZmlsdGVyIGluZm8gaGVyZSwgYmVjYXVzZSB3ZSBtaWdodCB1c2UgaXQKLSAgICAgICAgLy8g
Zm9yIGxvYWRpbmcgQ1NTIHNoYWRlciBmaWxlcy4KKyAgICAgICAgLy8gZm9yIGxvYWRpbmcgU1ZH
IHJlZmVyZW5jZSBmaWx0ZXIgZmlsZXMuCiAgICAgICAgIGlmIChGaWx0ZXJJbmZvKiBmaWx0ZXJJ
bmZvID0gRmlsdGVySW5mbzo6Z2V0SWZFeGlzdHMoKnRoaXMpKQogICAgICAgICAgICAgZmlsdGVy
SW5mby0+c2V0UmVuZGVyZXIoMCk7CiAKQEAgLTY5MjMsNyArNjgzOSw3IEBAIHZvaWQgUmVuZGVy
TGF5ZXI6OnVwZGF0ZU9yUmVtb3ZlRmlsdGVyRWZmZWN0UmVuZGVyZXIoKQogCiAgICAgLy8gSWYg
dGhlIGZpbHRlciBmYWlscyB0byBidWlsZCwgcmVtb3ZlIGl0IGZyb20gdGhlIGxheWVyLiBJdCB3
aWxsIHN0aWxsIGF0dGVtcHQgdG8KICAgICAvLyBnbyB0aHJvdWdoIHJlZ3VsYXIgcHJvY2Vzc2lu
ZyAoZS5nLiBjb21wb3NpdGluZyksIGJ1dCBuZXZlciBhcHBseSBhbnl0aGluZy4KLSAgICBpZiAo
IWZpbHRlckluZm8ucmVuZGVyZXIoKS0+YnVpbGQoJnJlbmRlcmVyKCksIGNvbXB1dGVGaWx0ZXJP
cGVyYXRpb25zKCZyZW5kZXJlcigpLnN0eWxlKCkpLCBGaWx0ZXJQcm9wZXJ0eSkpCisgICAgaWYg
KCFmaWx0ZXJJbmZvLnJlbmRlcmVyKCktPmJ1aWxkKCZyZW5kZXJlcigpLCByZW5kZXJlcigpLnN0
eWxlKCkuZmlsdGVyKCksIEZpbHRlclByb3BlcnR5KSkKICAgICAgICAgZmlsdGVySW5mby5zZXRS
ZW5kZXJlcigwKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckxheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaAppbmRl
eCBkNjA2ZDlhLi5lNTlkNGQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGF5ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIu
aApAQCAtODI4LDEyICs4MjgsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBjb250YWluc0RpcnR5T3Zl
cmxheVNjcm9sbGJhcnMoKSBjb25zdCB7IHJldHVybiBtX2NvbnRhaW5zRGlydHlPdmVybGF5U2Ny
b2xsYmFyczsgfQogICAgIHZvaWQgc2V0Q29udGFpbnNEaXJ0eU92ZXJsYXlTY3JvbGxiYXJzKGJv
b2wgZGlydHlTY3JvbGxiYXJzKSB7IG1fY29udGFpbnNEaXJ0eU92ZXJsYXlTY3JvbGxiYXJzID0g
ZGlydHlTY3JvbGxiYXJzOyB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgYm9vbCBp
c0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoKSBjb25zdDsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKENT
U19GSUxURVJTKQotICAgIEZpbHRlck9wZXJhdGlvbnMgY29tcHV0ZUZpbHRlck9wZXJhdGlvbnMo
Y29uc3QgUmVuZGVyU3R5bGUqKTsKICAgICBib29sIHBhaW50c1dpdGhGaWx0ZXJzKCkgY29uc3Q7
CiAgICAgYm9vbCByZXF1aXJlc0Z1bGxMYXllckltYWdlRm9yRmlsdGVycygpIGNvbnN0OwogICAg
IEZpbHRlckVmZmVjdFJlbmRlcmVyKiBmaWx0ZXJSZW5kZXJlcigpIGNvbnN0OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcAppbmRleCBhNmRmYjIw
Li43MGJiNTEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXJCYWNraW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJC
YWNraW5nLmNwcApAQCAtNjUsOSArNjUsNiBAQAogCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQog
I2luY2x1ZGUgIkZpbHRlckVmZmVjdFJlbmRlcmVyLmgiCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2VuZGlmCiAjZW5kaWYKIAog
I2lmIEVOQUJMRShXRUJHTCkgfHwgRU5BQkxFKEFDQ0VMRVJBVEVEXzJEX0NBTlZBUykKQEAgLTQw
Nyw3ICs0MDQsNyBAQCB2b2lkIFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlVHJhbnNmb3JtKGNv
bnN0IFJlbmRlclN0eWxlKiBzdHlsZSkKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiB2b2lkIFJl
bmRlckxheWVyQmFja2luZzo6dXBkYXRlRmlsdGVycyhjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUp
CiB7Ci0gICAgbV9jYW5Db21wb3NpdGVGaWx0ZXJzID0gbV9ncmFwaGljc0xheWVyLT5zZXRGaWx0
ZXJzKG93bmluZ0xheWVyKCkuY29tcHV0ZUZpbHRlck9wZXJhdGlvbnMoc3R5bGUpKTsKKyAgICBt
X2NhbkNvbXBvc2l0ZUZpbHRlcnMgPSBtX2dyYXBoaWNzTGF5ZXItPnNldEZpbHRlcnMoc3R5bGUt
PmZpbHRlcigpKTsKIH0KICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllckZpbHRlckluZm8uY3BwCmluZGV4IDkwYTFlNTEuLjMxMjVlZjYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckZpbHRlckluZm8uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckZpbHRlckluZm8uY3Bw
CkBAIC0zNSw4ICszNSw2IEBACiAKICNpbmNsdWRlICJDYWNoZWRTVkdEb2N1bWVudC5oIgogI2lu
Y2x1ZGUgIkNhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgogI2luY2x1
ZGUgIkZpbHRlckVmZmVjdFJlbmRlcmVyLmgiCiAjaW5jbHVkZSAiU1ZHRWxlbWVudC5oIgogI2lu
Y2x1ZGUgIlNWR0ZpbHRlci5oIgpAQCAtODUsOSArODMsNiBAQCBSZW5kZXJMYXllcjo6RmlsdGVy
SW5mbzo6RmlsdGVySW5mbyhSZW5kZXJMYXllciYgbGF5ZXIpCiAKIFJlbmRlckxheWVyOjpGaWx0
ZXJJbmZvOjp+RmlsdGVySW5mbygpCiB7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIHJl
bW92ZUN1c3RvbUZpbHRlckNsaWVudHMoKTsKLSNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAg
cmVtb3ZlUmVmZXJlbmNlRmlsdGVyQ2xpZW50cygpOwogI2VuZGlmCkBAIC0xNDksNDQgKzE0NCw2
IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OkZpbHRlckluZm86OnJlbW92ZVJlZmVyZW5jZUZpbHRlckNs
aWVudHMoKQogCiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotdm9pZCBSZW5k
ZXJMYXllcjo6RmlsdGVySW5mbzo6bm90aWZ5Q3VzdG9tRmlsdGVyUHJvZ3JhbUxvYWRlZChDdXN0
b21GaWx0ZXJQcm9ncmFtKikKLXsKLSAgICBtX2xheWVyLnJlbmRlcmVyKCkuZWxlbWVudCgpLT5z
ZXROZWVkc1N0eWxlUmVjYWxjKFN5bnRoZXRpY1N0eWxlQ2hhbmdlKTsKLSAgICBtX2xheWVyLnJl
bmRlcmVyKCkucmVwYWludCgpOwotfQotCi12b2lkIFJlbmRlckxheWVyOjpGaWx0ZXJJbmZvOjp1
cGRhdGVDdXN0b21GaWx0ZXJDbGllbnRzKGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIG9wZXJhdGlv
bnMpCi17Ci0gICAgaWYgKCFvcGVyYXRpb25zLnNpemUoKSkgewotICAgICAgICByZW1vdmVDdXN0
b21GaWx0ZXJDbGllbnRzKCk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgVmVjdG9yPFJl
ZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPj4gY2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbXM7Ci0g
ICAgZm9yIChzaXplX3QgaSA9IDAsIHNpemUgPSBvcGVyYXRpb25zLnNpemUoKTsgaSA8IHNpemU7
ICsraSkgewotICAgICAgICBjb25zdCBGaWx0ZXJPcGVyYXRpb24qIGZpbHRlck9wZXJhdGlvbiA9
IG9wZXJhdGlvbnMub3BlcmF0aW9ucygpW2ldLmdldCgpOwotICAgICAgICBpZiAoZmlsdGVyT3Bl
cmF0aW9uLT50eXBlKCkgIT0gRmlsdGVyT3BlcmF0aW9uOjpDVVNUT00pCi0gICAgICAgICAgICBj
b250aW51ZTsKLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKiBjdXN0b21GaWx0
ZXJPcGVyYXRpb24gPSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJPcGVyYXRpb24qPihm
aWx0ZXJPcGVyYXRpb24pOwotICAgICAgICBDdXN0b21GaWx0ZXJQcm9ncmFtKiBwcm9ncmFtID0g
Y3VzdG9tRmlsdGVyT3BlcmF0aW9uLT5wcm9ncmFtKCk7Ci0gICAgICAgIGNhY2hlZEN1c3RvbUZp
bHRlclByb2dyYW1zLmFwcGVuZChwcm9ncmFtKTsKLSAgICAgICAgcHJvZ3JhbS0+YWRkQ2xpZW50
KHRoaXMpOwotICAgIH0KLSAgICAvLyBSZW1vdmUgdGhlIG9sZCBjbGllbnRzIGhlcmUsIGFmdGVy
IHdlJ3ZlIGFkZGVkIHRoZSBuZXcgb25lcywgc28gdGhhdCB3ZSBkb24ndCBmbGlja2VyIGlmIHNv
bWUgc2hhZGVycyBhcmUgdW5jaGFuZ2VkLgotICAgIHJlbW92ZUN1c3RvbUZpbHRlckNsaWVudHMo
KTsKLSAgICBtX2NhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zLnN3YXAoY2FjaGVkQ3VzdG9tRmls
dGVyUHJvZ3JhbXMpOwotfQotCi12b2lkIFJlbmRlckxheWVyOjpGaWx0ZXJJbmZvOjpyZW1vdmVD
dXN0b21GaWx0ZXJDbGllbnRzKCkKLXsKLSAgICBmb3IgKHNpemVfdCBpID0gMCwgc2l6ZSA9IG1f
Y2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbXMuc2l6ZSgpOyBpIDwgc2l6ZTsgKytpKQotICAgICAg
ICBtX2NhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zW2ldLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0g
ICAgbV9jYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtcy5jbGVhcigpOwotfQotCi0jZW5kaWYKLQog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKENTU19GSUxURVJTKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyRmlsdGVySW5m
by5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyRmlsdGVySW5mby5oCmlu
ZGV4IDBmZjcxZjEuLjFhNmYyZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllckZpbHRlckluZm8uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmgKQEAgLTM1LDcgKzM1LDYgQEAKIAogI2luY2x1ZGUgIkNh
Y2hlZFJlc291cmNlSGFuZGxlLmgiCiAjaW5jbHVkZSAiQ2FjaGVkU1ZHRG9jdW1lbnRDbGllbnQu
aCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmgiCiAjaW5jbHVkZSAiUmVu
ZGVyTGF5ZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDMsMTEgKzQyLDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgRWxlbWVudDsKIAogY2xhc3MgUmVuZGVyTGF5ZXI6OkZp
bHRlckluZm8KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIEVOQUJMRShTVkcpCi0gICAgZmlu
YWwgOiBwdWJsaWMgQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudCwgcHVibGljIENhY2hlZFNWR0Rv
Y3VtZW50Q2xpZW50Ci0jZWxpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgZmluYWwgOiBwdWJs
aWMgQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudAotI2VsaWYgRU5BQkxFKFNWRykKKyNpZiBFTkFC
TEUoU1ZHKQogICAgIGZpbmFsIDogcHVibGljIENhY2hlZFNWR0RvY3VtZW50Q2xpZW50CiAjZW5k
aWYKIHsKQEAgLTYzLDExICs1OCw2IEBAIHB1YmxpYzoKICAgICBGaWx0ZXJFZmZlY3RSZW5kZXJl
ciogcmVuZGVyZXIoKSBjb25zdCB7IHJldHVybiBtX3JlbmRlcmVyLmdldCgpOyB9CiAgICAgdm9p
ZCBzZXRSZW5kZXJlcihQYXNzUmVmUHRyPEZpbHRlckVmZmVjdFJlbmRlcmVyPik7CiAgICAgCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIHZvaWQgdXBkYXRlQ3VzdG9tRmlsdGVyQ2xpZW50
cyhjb25zdCBGaWx0ZXJPcGVyYXRpb25zJik7Ci0gICAgdm9pZCByZW1vdmVDdXN0b21GaWx0ZXJD
bGllbnRzKCk7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShTVkcpCiAgICAgdm9pZCB1cGRhdGVSZWZl
cmVuY2VGaWx0ZXJDbGllbnRzKGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmKTsKICAgICB2b2lkIHJl
bW92ZVJlZmVyZW5jZUZpbHRlckNsaWVudHMoKTsKQEAgLTc5LDEwICs2OSw2IEBAIHByaXZhdGU6
CiAKICAgICBmcmllbmQgdm9pZCBXVEY6OmRlbGV0ZU93bmVkUHRyPEZpbHRlckluZm8+KEZpbHRl
ckluZm8qKTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICB2aXJ0dWFsIHZvaWQgbm90
aWZ5Q3VzdG9tRmlsdGVyUHJvZ3JhbUxvYWRlZChDdXN0b21GaWx0ZXJQcm9ncmFtKikgb3ZlcnJp
ZGU7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShTVkcpCiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZp
bmlzaGVkKENhY2hlZFJlc291cmNlKikgb3ZlcnJpZGU7CiAjZW5kaWYKQEAgLTEwMywxMCArODks
NiBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxGaWx0ZXJFZmZlY3RSZW5kZXJlcj4gbV9yZW5kZXJl
cjsKICAgICBMYXlvdXRSZWN0IG1fZGlydHlTb3VyY2VSZWN0OwogCi0jaWYgRU5BQkxFKENTU19T
SEFERVJTKQotICAgIFZlY3RvcjxSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4+IG1fY2FjaGVk
Q3VzdG9tRmlsdGVyUHJvZ3JhbXM7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShTVkcpCiAgICAgVmVj
dG9yPFJlZlB0cjxFbGVtZW50Pj4gbV9pbnRlcm5hbFNWR1JlZmVyZW5jZXM7CiAgICAgVmVjdG9y
PENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFNWR0RvY3VtZW50Pj4gbV9leHRlcm5hbFNWR1Jl
ZmVyZW5jZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmll
dy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAKaW5kZXggNGE0
YjM1Yy4uN2I2NDZiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcApA
QCAtNTEsMTAgKzUxLDYgQEAKICNpbmNsdWRlICJSZW5kZXJMYXllckNvbXBvc2l0b3IuaCIKICNl
bmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5j
bHVkZSAiQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIgotI2VuZGlmCi0KIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogUmVuZGVyVmlldzo6UmVuZGVyVmlldyhEb2N1bWVudCYgZG9jdW1lbnQsIFBh
c3NSZWY8UmVuZGVyU3R5bGU+IHN0eWxlKQpAQCAtMTE4MCwxNSArMTE3Niw2IEBAIHZvaWQgUmVu
ZGVyVmlldzo6c2V0SXNJbldpbmRvdyhib29sIGlzSW5XaW5kb3cpCiAjZW5kaWYKIH0KIAotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotQ3VzdG9tRmlsdGVyR2xv
YmFsQ29udGV4dCogUmVuZGVyVmlldzo6Y3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCgpCi17Ci0g
ICAgaWYgKCFtX2N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQpCi0gICAgICAgIG1fY3VzdG9tRmls
dGVyR2xvYmFsQ29udGV4dCA9IGFkb3B0UHRyKG5ldyBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0
KCkpOwotICAgIHJldHVybiBtX2N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuZ2V0KCk7Ci19Ci0j
ZW5kaWYKLQogdm9pZCBSZW5kZXJWaWV3OjpzdHlsZURpZENoYW5nZShTdHlsZURpZmZlcmVuY2Ug
ZGlmZiwgY29uc3QgUmVuZGVyU3R5bGUqIG9sZFN0eWxlKQogewogICAgIFJlbmRlckJsb2NrRmxv
dzo6c3R5bGVEaWRDaGFuZ2UoZGlmZiwgb2xkU3R5bGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJWaWV3LmgKaW5kZXggYzc1NWMxMi4uMmFlZWViMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyVmlldy5oCkBAIC0zOCwxMCArMzgsNiBAQCBjbGFzcyBSZW5kZXJRdW90ZTsKIGNs
YXNzIFJlbmRlckxheWVyQ29tcG9zaXRvcjsKICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi1jbGFzcyBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0
OwotI2VuZGlmCi0KIGNsYXNzIFJlbmRlclZpZXcgZmluYWwgOiBwdWJsaWMgUmVuZGVyQmxvY2tG
bG93IHsKIHB1YmxpYzoKICAgICBSZW5kZXJWaWV3KERvY3VtZW50JiwgUGFzc1JlZjxSZW5kZXJT
dHlsZT4pOwpAQCAtMTg5LDEwICsxODUsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCB1c2VzQ29tcG9z
aXRpbmcoKSBjb25zdDsKICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0Uo
M0RfR1JBUEhJQ1MpCi0gICAgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCogY3VzdG9tRmlsdGVy
R2xvYmFsQ29udGV4dCgpOwotI2VuZGlmCi0KICAgICBJbnRSZWN0IHVuc2NhbGVkRG9jdW1lbnRS
ZWN0KCkgY29uc3Q7CiAgICAgTGF5b3V0UmVjdCBiYWNrZ3JvdW5kUmVjdChSZW5kZXJCb3gqIGJh
Y2tncm91bmRSZW5kZXJlcikgY29uc3Q7CiAKQEAgLTM0MSw5ICszMzMsNiBAQCBwcml2YXRlOgog
I2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAgICBPd25QdHI8UmVuZGVyTGF5ZXJD
b21wb3NpdG9yPiBtX2NvbXBvc2l0b3I7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
ICYmIFVTRSgzRF9HUkFQSElDUykKLSAgICBPd25QdHI8Q3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dD4gbV9jdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0OwotI2VuZGlmCiAgICAgT3duUHRyPEZsb3dU
aHJlYWRDb250cm9sbGVyPiBtX2Zsb3dUaHJlYWRDb250cm9sbGVyOwogICAgIFJlZlB0cjxJbnRl
cnZhbEFyZW5hPiBtX2ludGVydmFsQXJlbmE7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBkOTExOGExLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw1NiArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVk
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICog
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMg
SVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAq
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgi
Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJTdHlsZUNhY2hlZFNoYWRl
ci5oIgotCi0jaW5jbHVkZSAiQ1NTUHJpbWl0aXZlVmFsdWUuaCIKLSNpbmNsdWRlICJDYWNoZWRT
aGFkZXIuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi0KLVN0eWxlQ2FjaGVkU2hhZGVyOjpT
dHlsZUNhY2hlZFNoYWRlcihDYWNoZWRTaGFkZXIqIHNoYWRlcikKLSAgICA6IG1fc2hhZGVyKHNo
YWRlcikKLXsKLSAgICAgbV9pc0NhY2hlZFNoYWRlciA9IHRydWU7Ci19Ci0KLVBhc3NSZWZQdHI8
Q1NTVmFsdWU+IFN0eWxlQ2FjaGVkU2hhZGVyOjpjc3NWYWx1ZSgpIGNvbnN0Ci17Ci0gICAgcmV0
dXJuIENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUobV9zaGFkZXItPnVybCgpLCBDU1NQcmltaXRp
dmVWYWx1ZTo6Q1NTX1VSSSk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMTUyMzQyOS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U3R5bGVDYWNoZWRTaGFkZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDYxICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6
Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICog
ICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
Ci0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQg
QU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAot
ICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgU3R5bGVDYWNoZWRTaGFkZXJfaAot
I2RlZmluZSBTdHlsZUNhY2hlZFNoYWRlcl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0K
LSNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUhhbmRsZS5oIgotI2luY2x1ZGUgIlN0eWxlU2hhZGVy
LmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewot
Ci1jbGFzcyBDYWNoZWRTaGFkZXI7Ci0KLWNsYXNzIFN0eWxlQ2FjaGVkU2hhZGVyIDogcHVibGlj
IFN0eWxlU2hhZGVyIHsKLXB1YmxpYzoKLSAgICAvLyBGSVhNRTogS2VlcCBhIHJlZmVyZW5jZSB0
byB0aGUgYWN0dWFsIENhY2hlZFNoYWRlciBpbiB0aGlzIGNsYXNzLgotICAgIHN0YXRpYyBQYXNz
UmVmUHRyPFN0eWxlQ2FjaGVkU2hhZGVyPiBjcmVhdGUoQ2FjaGVkU2hhZGVyKiBzaGFkZXIpIHsg
cmV0dXJuIGFkb3B0UmVmKG5ldyBTdHlsZUNhY2hlZFNoYWRlcihzaGFkZXIpKTsgfQotICAgIAot
ICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gY3NzVmFsdWUoKSBjb25zdDsKLSAgICAK
LSAgICB2aXJ0dWFsIENhY2hlZFNoYWRlciogY2FjaGVkU2hhZGVyKCkgY29uc3QgeyByZXR1cm4g
bV9zaGFkZXIuZ2V0KCk7IH0KLSAgICAKLXByaXZhdGU6Ci0gICAgU3R5bGVDYWNoZWRTaGFkZXIo
Q2FjaGVkU2hhZGVyKik7Ci0gICAgCi0gICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2hh
ZGVyPiBtX3NoYWRlcjsKLX07Ci0KLX0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0K
LSNlbmRpZiAvLyBTdHlsZUNhY2hlZFNoYWRlcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uY3BwCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZjQwMTJmLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uY3BwCisrKyAv
ZGV2L251bGwKQEAgLTEsNDkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBBZG9i
ZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5j
bHVkZSAiU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmgiCi0KLSNpbmNsdWRlICJTdHlsZUN1c3Rv
bUZpbHRlclByb2dyYW1DYWNoZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVN0eWxlQ3Vz
dG9tRmlsdGVyUHJvZ3JhbTo6flN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSgpCi17Ci0gICAgaWYg
KG1fY2FjaGUpCi0gICAgICAgIG1fY2FjaGUtPnJlbW92ZSh0aGlzKTsKLX0KLQotfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9n
cmFtLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY4Y2JlYTguLjAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJv
Z3JhbS5oCisrKyAvZGV2L251bGwKQEAgLTEsMTg3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICog
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1l
ciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0gg
REFNQUdFLgotICovCi0KLSNpZm5kZWYgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtX2gKLSNkZWZp
bmUgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykK
LSNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUNsaWVudC5oIgotI2luY2x1ZGUgIkNhY2hlZFJlc291
cmNlSGFuZGxlLmgiCi0jaW5jbHVkZSAiQ2FjaGVkU2hhZGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9t
RmlsdGVyUHJvZ3JhbS5oIgotI2luY2x1ZGUgIlVSTC5oIgotI2luY2x1ZGUgIlN0eWxlU2hhZGVy
LmgiCi0jaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewot
Ci0vLyBDU1MgU2hhZGVycwotCi1jbGFzcyBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZTsK
LQotY2xhc3MgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtIDogcHVibGljIEN1c3RvbUZpbHRlclBy
b2dyYW0sIHB1YmxpYyBDYWNoZWRSZXNvdXJjZUNsaWVudCB7Ci0gICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8U3R5bGVDdXN0b21GaWx0
ZXJQcm9ncmFtPiBjcmVhdGUoVVJMIHZlcnRleFNoYWRlclVSTCwgUGFzc1JlZlB0cjxTdHlsZVNo
YWRlcj4gdmVydGV4U2hhZGVyLCAKLSAgICAgICAgVVJMIGZyYWdtZW50U2hhZGVyVVJMLCBQYXNz
UmVmUHRyPFN0eWxlU2hhZGVyPiBmcmFnbWVudFNoYWRlciwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5
cGUgcHJvZ3JhbVR5cGUsCi0gICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0
aW5ncyYgbWl4U2V0dGluZ3MsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQotICAgIHsK
LSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0odmVy
dGV4U2hhZGVyVVJMLCB2ZXJ0ZXhTaGFkZXIsIGZyYWdtZW50U2hhZGVyVVJMLCBmcmFnbWVudFNo
YWRlciwgcHJvZ3JhbVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSkpOwotICAgIH0KLSAgICAK
LSAgICB2b2lkIHNldFZlcnRleFNoYWRlcihQYXNzUmVmUHRyPFN0eWxlU2hhZGVyPiBzaGFkZXIp
Ci0gICAgewotICAgICAgICAvLyBUaGUgc2hhZGVyIGlzIGltbXV0YWJsZSB3aGlsZSBpbiB0aGUg
Y2FjaGUuCi0gICAgICAgIEFTU0VSVCghbV9jYWNoZSk7Ci0gICAgICAgIG1fdmVydGV4U2hhZGVy
ID0gc2hhZGVyOyAKLSAgICB9Ci0gICAgU3R5bGVTaGFkZXIqIHZlcnRleFNoYWRlcigpIGNvbnN0
IHsgcmV0dXJuIG1fdmVydGV4U2hhZGVyLmdldCgpOyB9Ci0gICAgCi0gICAgdm9pZCBzZXRGcmFn
bWVudFNoYWRlcihQYXNzUmVmUHRyPFN0eWxlU2hhZGVyPiBzaGFkZXIpCi0gICAgewotICAgICAg
ICAvLyBUaGUgc2hhZGVyIGlzIGltbXV0YWJsZSB3aGlsZSBpbiB0aGUgY2FjaGUuCi0gICAgICAg
IEFTU0VSVCghbV9jYWNoZSk7Ci0gICAgICAgIG1fZnJhZ21lbnRTaGFkZXIgPSBzaGFkZXI7IAot
ICAgIH0KLSAgICBTdHlsZVNoYWRlciogZnJhZ21lbnRTaGFkZXIoKSBjb25zdCB7IHJldHVybiBt
X2ZyYWdtZW50U2hhZGVyLmdldCgpOyB9Ci0gICAgCi0gICAgdmlydHVhbCBTdHJpbmcgdmVydGV4
U2hhZGVyU3RyaW5nKCkgY29uc3QKLSAgICB7Ci0gICAgICAgIEFTU0VSVChpc0xvYWRlZCgpKTsK
LSAgICAgICAgcmV0dXJuIG1fY2FjaGVkVmVydGV4U2hhZGVyLmdldCgpID8gbV9jYWNoZWRWZXJ0
ZXhTaGFkZXItPnNoYWRlclN0cmluZygpIDogU3RyaW5nKCk7Ci0gICAgfQotICAgIAotICAgIHZp
cnR1YWwgU3RyaW5nIGZyYWdtZW50U2hhZGVyU3RyaW5nKCkgY29uc3QKLSAgICB7Ci0gICAgICAg
IEFTU0VSVChpc0xvYWRlZCgpKTsKLSAgICAgICAgcmV0dXJuIG1fY2FjaGVkRnJhZ21lbnRTaGFk
ZXIuZ2V0KCkgPyBtX2NhY2hlZEZyYWdtZW50U2hhZGVyLT5zaGFkZXJTdHJpbmcoKSA6IFN0cmlu
ZygpOwotICAgIH0KLQotICAgIHZpcnR1YWwgYm9vbCBpc0xvYWRlZCgpIGNvbnN0Ci0gICAgewot
ICAgICAgICAvLyBEbyBub3QgdXNlIHRoZSBDYWNoZWRSZXNvdXJjZTppc0xvYWRlZCBtZXRob2Qg
aGVyZSwgYmVjYXVzZSBpdCBhY3R1YWxseSBtZWFucyAhaXNMb2FkaW5nKCksCi0gICAgICAgIC8v
IHNvIG1pc3NpbmcgYW5kIGNhbmNlbGVkIHJlc291cmNlcyB3aWxsIGhhdmUgaXNMb2FkZWQgc2V0
IHRvIHRydWUsIGV2ZW4gaWYgdGhleSBhcmUgbm90IGxvYWRlZCB5ZXQuCi0gICAgICAgIEFTU0VS
VCghbV92ZXJ0ZXhTaGFkZXIgfHwgbV92ZXJ0ZXhTaGFkZXItPmlzQ2FjaGVkU2hhZGVyKCkpOwot
ICAgICAgICBBU1NFUlQoIW1fZnJhZ21lbnRTaGFkZXIgfHwgbV9mcmFnbWVudFNoYWRlci0+aXND
YWNoZWRTaGFkZXIoKSk7Ci0gICAgICAgIEFTU0VSVChtX2NhY2hlZFZlcnRleFNoYWRlci5nZXQo
KSB8fCBtX2NhY2hlZEZyYWdtZW50U2hhZGVyLmdldCgpKTsKLSAgICAgICAgcmV0dXJuICghbV9j
YWNoZWRWZXJ0ZXhTaGFkZXIuZ2V0KCkgfHwgbV9pc1ZlcnRleFNoYWRlckxvYWRlZCkKLSAgICAg
ICAgICAgICYmICghbV9jYWNoZWRGcmFnbWVudFNoYWRlci5nZXQoKSB8fCBtX2lzRnJhZ21lbnRT
aGFkZXJMb2FkZWQpOwotICAgIH0KLQotICAgIHZpcnR1YWwgdm9pZCB3aWxsSGF2ZUNsaWVudHMo
KQotICAgIHsKLSAgICAgICAgaWYgKG1fdmVydGV4U2hhZGVyKSB7Ci0gICAgICAgICAgICBtX2Nh
Y2hlZFZlcnRleFNoYWRlciA9IG1fdmVydGV4U2hhZGVyLT5jYWNoZWRTaGFkZXIoKTsKLSAgICAg
ICAgICAgIG1fY2FjaGVkVmVydGV4U2hhZGVyLT5hZGRDbGllbnQodGhpcyk7Ci0gICAgICAgIH0K
LSAgICAgICAgaWYgKG1fZnJhZ21lbnRTaGFkZXIpIHsKLSAgICAgICAgICAgIG1fY2FjaGVkRnJh
Z21lbnRTaGFkZXIgPSBtX2ZyYWdtZW50U2hhZGVyLT5jYWNoZWRTaGFkZXIoKTsKLSAgICAgICAg
ICAgIG1fY2FjaGVkRnJhZ21lbnRTaGFkZXItPmFkZENsaWVudCh0aGlzKTsKLSAgICAgICAgfQot
ICAgIH0KLSAgICAKLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVtb3ZlTGFzdENsaWVudCgpCi0gICAg
ewotICAgICAgICBpZiAobV9jYWNoZWRWZXJ0ZXhTaGFkZXIuZ2V0KCkpIHsKLSAgICAgICAgICAg
IG1fY2FjaGVkVmVydGV4U2hhZGVyLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0gICAgICAgICAgICBt
X2NhY2hlZFZlcnRleFNoYWRlciA9IDA7Ci0gICAgICAgICAgICBtX2lzVmVydGV4U2hhZGVyTG9h
ZGVkID0gZmFsc2U7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKG1fY2FjaGVkRnJhZ21lbnRTaGFk
ZXIuZ2V0KCkpIHsKLSAgICAgICAgICAgIG1fY2FjaGVkRnJhZ21lbnRTaGFkZXItPnJlbW92ZUNs
aWVudCh0aGlzKTsKLSAgICAgICAgICAgIG1fY2FjaGVkRnJhZ21lbnRTaGFkZXIgPSAwOwotICAg
ICAgICAgICAgbV9pc0ZyYWdtZW50U2hhZGVyTG9hZGVkID0gZmFsc2U7Ci0gICAgICAgIH0KLSAg
ICB9Ci0gICAgCi0gICAgdmlydHVhbCB2b2lkIG5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNl
KiByZXNvdXJjZSkKLSAgICB7Ci0gICAgICAgIGlmIChyZXNvdXJjZS0+ZXJyb3JPY2N1cnJlZCgp
KQotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAvLyBOb3RlIHRoYXQgbV9jYWNoZWRWZXJ0
ZXhTaGFkZXIgbWlnaHQgYmUgZXF1YWwgdG8gbV9jYWNoZWRGcmFnbWVudFNoYWRlciBhbmQgaXQg
d291bGQgb25seSBnZXQgb25lIGV2ZW50IGluIHRoYXQgY2FzZS4KLSAgICAgICAgaWYgKHJlc291
cmNlID09IG1fY2FjaGVkVmVydGV4U2hhZGVyLmdldCgpKQotICAgICAgICAgICAgbV9pc1ZlcnRl
eFNoYWRlckxvYWRlZCA9IHRydWU7Ci0gICAgICAgIGlmIChyZXNvdXJjZSA9PSBtX2NhY2hlZEZy
YWdtZW50U2hhZGVyLmdldCgpKQotICAgICAgICAgICAgbV9pc0ZyYWdtZW50U2hhZGVyTG9hZGVk
ID0gdHJ1ZTsKLSAgICAgICAgaWYgKGlzTG9hZGVkKCkpCi0gICAgICAgICAgICBub3RpZnlDbGll
bnRzKCk7Ci0gICAgfQotCi0gICAgYm9vbCBoYXNQZW5kaW5nU2hhZGVycygpIGNvbnN0Ci0gICAg
ewotICAgICAgICByZXR1cm4gKG1fdmVydGV4U2hhZGVyICYmIG1fdmVydGV4U2hhZGVyLT5pc1Bl
bmRpbmdTaGFkZXIoKSkgCi0gICAgICAgICAgICB8fCAobV9mcmFnbWVudFNoYWRlciAmJiBtX2Zy
YWdtZW50U2hhZGVyLT5pc1BlbmRpbmdTaGFkZXIoKSk7Ci0gICAgfQotCi0gICAgLy8gU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUgaXMgcmVzcG9uc2libGUgd2l0aCB1cGRhdGluZyB0aGUg
cmVmZXJlbmNlIHRvIHRoZSBjYWNoZS4KLSAgICB2b2lkIHNldENhY2hlKFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbUNhY2hlKiBjYWNoZSkgeyBtX2NhY2hlID0gY2FjaGU7IH0KLSAgICBib29sIGlu
Q2FjaGUoKSBjb25zdCB7IHJldHVybiBtX2NhY2hlOyB9Ci0gICAgCi0gICAgVVJMIHZlcnRleFNo
YWRlclVSTCgpIGNvbnN0IHsgcmV0dXJuIG1fdmVydGV4U2hhZGVyVVJMOyB9Ci0gICAgVVJMIGZy
YWdtZW50U2hhZGVyVVJMKCkgY29uc3QgeyByZXR1cm4gbV9mcmFnbWVudFNoYWRlclVSTDsgfQot
Ci1wcml2YXRlOgotICAgIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbShVUkwgdmVydGV4U2hhZGVy
VVJMLCBQYXNzUmVmUHRyPFN0eWxlU2hhZGVyPiB2ZXJ0ZXhTaGFkZXIsIFVSTCBmcmFnbWVudFNo
YWRlclVSTCwgUGFzc1JlZlB0cjxTdHlsZVNoYWRlcj4gZnJhZ21lbnRTaGFkZXIsIAotICAgICAg
ICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVy
UHJvZ3JhbU1peFNldHRpbmdzJiBtaXhTZXR0aW5ncywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVz
aFR5cGUpCi0gICAgICAgIDogQ3VzdG9tRmlsdGVyUHJvZ3JhbShwcm9ncmFtVHlwZSwgbWl4U2V0
dGluZ3MsIG1lc2hUeXBlKQotICAgICAgICAsIG1fdmVydGV4U2hhZGVyKHZlcnRleFNoYWRlcikK
LSAgICAgICAgLCBtX2ZyYWdtZW50U2hhZGVyKGZyYWdtZW50U2hhZGVyKQotICAgICAgICAsIG1f
dmVydGV4U2hhZGVyVVJMKHZlcnRleFNoYWRlclVSTCkKLSAgICAgICAgLCBtX2ZyYWdtZW50U2hh
ZGVyVVJMKGZyYWdtZW50U2hhZGVyVVJMKQotICAgICAgICAsIG1fY2FjaGUoMCkKLSAgICAgICAg
LCBtX2lzVmVydGV4U2hhZGVyTG9hZGVkKGZhbHNlKQotICAgICAgICAsIG1faXNGcmFnbWVudFNo
YWRlckxvYWRlZChmYWxzZSkKLSAgICB7Ci0gICAgfQotCi0gICAgflN0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbSgpOwotICAgIAotICAgIFJlZlB0cjxTdHlsZVNoYWRlcj4gbV92ZXJ0ZXhTaGFkZXI7
Ci0gICAgUmVmUHRyPFN0eWxlU2hhZGVyPiBtX2ZyYWdtZW50U2hhZGVyOwotCi0gICAgQ2FjaGVk
UmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2hhZGVyPiBtX2NhY2hlZFZlcnRleFNoYWRlcjsKLSAgICBD
YWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRTaGFkZXI+IG1fY2FjaGVkRnJhZ21lbnRTaGFkZXI7
Ci0KLSAgICAvLyBUaGUgVVJMcyBmb3JtIHRoZSBrZXkgb2YgdGhlIFN0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbSBpbiB0aGUgY2FjaGUgYW5kIGFyZSB1c2VkCi0gICAgLy8gdG8gbG9va3VwIHRoZSBT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW0gd2hlbiBpdCdzIHJlbW92ZWQgZnJvbSB0aGUgY2FjaGUu
Ci0gICAgVVJMIG1fdmVydGV4U2hhZGVyVVJMOwotICAgIFVSTCBtX2ZyYWdtZW50U2hhZGVyVVJM
OwotCi0gICAgLy8gVGhlIENhY2hlIGlzIHJlc3BvbnNpYmxlIG9mIGludmFsaWRhdGluZyB0aGlz
IHJlZmVyZW5jZS4KLSAgICBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZSogbV9jYWNoZTsK
LSAgICAKLSAgICBib29sIG1faXNWZXJ0ZXhTaGFkZXJMb2FkZWQ7Ci0gICAgYm9vbCBtX2lzRnJh
Z21lbnRTaGFkZXJMb2FkZWQ7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBTdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW1faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDg2YTcyNGQuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcAorKysgL2Rldi9udWxs
CkBAIC0xLDg0ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVt
cyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWlt
ZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0g
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
IEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNs
dWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIlN0
eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmgiCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mby5oIgotI2luY2x1ZGUgIlN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotCi1u
YW1lc3BhY2UgV2ViQ29yZSB7Ci0KLXN0YXRpYyBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyBwcm9n
cmFtQ2FjaGVLZXkoU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKiBwcm9ncmFtKSAKLXsKLSAgICBB
U1NFUlQocHJvZ3JhbS0+dmVydGV4U2hhZGVyVVJMKCkuaXNWYWxpZCgpIHx8IHByb2dyYW0tPmZy
YWdtZW50U2hhZGVyVVJMKCkuaXNWYWxpZCgpKTsKLSAgICByZXR1cm4gQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8ocHJvZ3JhbS0+dmVydGV4U2hhZGVyVVJMKCksIHByb2dyYW0tPmZyYWdtZW50U2hh
ZGVyVVJMKCksIAotICAgICAgICBwcm9ncmFtLT5wcm9ncmFtVHlwZSgpLCBwcm9ncmFtLT5taXhT
ZXR0aW5ncygpLCBwcm9ncmFtLT5tZXNoVHlwZSgpKTsKLX0KLQotU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtQ2FjaGU6OlN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlKCkKLXsKLX0KLQotU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGU6On5TdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNo
ZSgpCi17Ci0gICAgLy8gTWFrZSBzdXJlIHRoZSBwcm9ncmFtcyBhcmUgbm90IGNhbGxpbmcgYmFj
ayBpbnRvIHRoaXMgb2JqZWN0LgotICAgIGZvciAoQ2FjaGVNYXA6Oml0ZXJhdG9yIGl0ZXIgPSBt
X2NhY2hlLmJlZ2luKCksIGVuZCA9IG1fY2FjaGUuZW5kKCk7IGl0ZXIgIT0gZW5kOyArK2l0ZXIp
Ci0gICAgICAgIGl0ZXItPnZhbHVlLT5zZXRDYWNoZSgwKTsKLX0KLQotU3R5bGVDdXN0b21GaWx0
ZXJQcm9ncmFtKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZTo6bG9va3VwKGNvbnN0IEN1
c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9ncmFtSW5mbykgY29uc3QKLXsKLSAgICByZXR1cm4g
bV9jYWNoZS5nZXQocHJvZ3JhbUluZm8pOwotfQotCi1TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0q
IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlOjpsb29rdXAoU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtKiBwcm9ncmFtKSBjb25zdAotewotICAgIHJldHVybiBsb29rdXAocHJvZ3JhbUNhY2hl
S2V5KHByb2dyYW0pKTsKLX0KLQotdm9pZCBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZTo6
YWRkKFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSkKLXsKLSAgICBBU1NFUlQoIW1f
Y2FjaGUuY29udGFpbnMocHJvZ3JhbUNhY2hlS2V5KHByb2dyYW0pKSk7Ci0gICAgbV9jYWNoZS5z
ZXQocHJvZ3JhbUNhY2hlS2V5KHByb2dyYW0pLCBwcm9ncmFtKTsKLSAgICBwcm9ncmFtLT5zZXRD
YWNoZSh0aGlzKTsKLX0KLQotdm9pZCBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZTo6cmVt
b3ZlKFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSkKLXsKLSAgICBBU1NFUlQobV9j
YWNoZS5jb250YWlucyhwcm9ncmFtQ2FjaGVLZXkocHJvZ3JhbSkpKTsKLSAgICBtX2NhY2hlLnJl
bW92ZShwcm9ncmFtQ2FjaGVLZXkocHJvZ3JhbSkpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW1D
YWNoZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyOWE1MTQzLi4wMDAwMDAwCi0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dy
YW1DYWNoZS5oCisrKyAvZGV2L251bGwKQEAgLTEsNjUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxMyBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFp
bWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VD
SCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZV9o
Ci0jZGVmaW5lIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlX2gKLQotI2lmIEVOQUJMRShD
U1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIgotI2luY2x1
ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+Ci0jaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLQotbmFtZXNw
YWNlIFdlYkNvcmUgewotCi1jbGFzcyBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW07Ci1jbGFzcyBD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mbzsKLQotY2xhc3MgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
Q2FjaGUgewotICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwotcHVibGljOgotICAgIFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlKCk7Ci0gICAgflN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUNhY2hlKCk7Ci0KLSAgICAvLyBMb29rdXBzIGEgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtIHRo
YXQgaGFzIHNpbWlsYXIgcGFyYW1ldGVycyB3aXRoIHRoZSBzcGVjaWZpZWQgcHJvZ3JhbS4KLSAg
ICBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0qIGxvb2t1cChTdHlsZUN1c3RvbUZpbHRlclByb2dy
YW0qKSBjb25zdDsKLSAgICBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0qIGxvb2t1cChjb25zdCBD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYpIGNvbnN0OwotCi0gICAgdm9pZCBhZGQoU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtKik7Ci0gICAgdm9pZCByZW1vdmUoU3R5bGVDdXN0b21GaWx0ZXJQcm9n
cmFtKik7Ci0KLXByaXZhdGU6Ci0gICAgdHlwZWRlZiBIYXNoTWFwPEN1c3RvbUZpbHRlclByb2dy
YW1JbmZvLCBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0qPiBDYWNoZU1hcDsKLSAgICBDYWNoZU1h
cCBtX2NhY2hlOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2Fj
aGVfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUGVu
ZGluZ1NoYWRlci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUGVuZGlu
Z1NoYWRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5OGFkOTFjLi4wMDAwMDAw
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVBlbmRpbmdTaGFkZXIu
aAorKysgL2Rldi9udWxsCkBAIC0xLDYzICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgot
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
LSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQot
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgot
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdF
LgotICovCi0KLSNpZm5kZWYgU3R5bGVQZW5kaW5nU2hhZGVyX2gKLSNkZWZpbmUgU3R5bGVQZW5k
aW5nU2hhZGVyX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkNTU1Zh
bHVlLmgiCi0jaW5jbHVkZSAiU3R5bGVTaGFkZXIuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NTaGFk
ZXJWYWx1ZS5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotY2xhc3MgV2ViS2l0Q1NTU2hhZGVyVmFsdWU7Ci0KLWNsYXNzIFN0eWxlUGVuZGlu
Z1NoYWRlciA6IHB1YmxpYyBTdHlsZVNoYWRlciB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NS
ZWZQdHI8U3R5bGVQZW5kaW5nU2hhZGVyPiBjcmVhdGUoV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIHZh
bHVlKSB7IHJldHVybiBhZG9wdFJlZihuZXcgU3R5bGVQZW5kaW5nU2hhZGVyKHZhbHVlKSk7IH0K
LSAgICAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IGNzc1ZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV92YWx1ZTsgfQotICAgIFdlYktpdENTU1NoYWRlclZhbHVlKiBjc3NTaGFkZXJW
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdmFsdWU7IH0KLXByaXZhdGU6Ci0gICAgU3R5bGVQZW5k
aW5nU2hhZGVyKFdlYktpdENTU1NoYWRlclZhbHVlKiB2YWx1ZSkKLSAgICAgICAgOiBtX3ZhbHVl
KHZhbHVlKQotICAgIHsKLSAgICAgICAgIG1faXNQZW5kaW5nU2hhZGVyID0gdHJ1ZTsKLSAgICB9
Ci0gICAgCi0gICAgV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIG1fdmFsdWU7IC8vIE5vdCByZXRhaW5l
ZDsgaXQgb3ducyB1cy4KLX07Ci0KLX0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0K
LSNlbmRpZiAvLyBTdHlsZVBlbmRpbmdTaGFkZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlU2hhZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVTaGFkZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTM4
ZjliZi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVT
aGFkZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDY3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICog
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1l
ciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0gg
REFNQUdFLgotICovCi0KLSNpZm5kZWYgU3R5bGVTaGFkZXJfaAotI2RlZmluZSBTdHlsZVNoYWRl
cl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIENhY2hlZFNoYWRlcjsKLWNsYXNz
IENTU1ZhbHVlOwotCi1jbGFzcyBTdHlsZVNoYWRlciA6IHB1YmxpYyBSZWZDb3VudGVkPFN0eWxl
U2hhZGVyPiB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+U3R5bGVTaGFkZXIoKSB7IH0KLQotICAg
IEFMV0FZU19JTkxJTkUgYm9vbCBpc0NhY2hlZFNoYWRlcigpIGNvbnN0IHsgcmV0dXJuIG1faXND
YWNoZWRTaGFkZXI7IH0KLSAgICBBTFdBWVNfSU5MSU5FIGJvb2wgaXNQZW5kaW5nU2hhZGVyKCkg
Y29uc3QgeyByZXR1cm4gbV9pc1BlbmRpbmdTaGFkZXI7IH0KLSAgICAKLSAgICB2aXJ0dWFsIFBh
c3NSZWZQdHI8Q1NTVmFsdWU+IGNzc1ZhbHVlKCkgY29uc3QgPSAwOwotICAgIAotICAgIHZpcnR1
YWwgQ2FjaGVkU2hhZGVyKiBjYWNoZWRTaGFkZXIoKSBjb25zdCB7IHJldHVybiAwOyB9Ci0gICAg
Ci1wcm90ZWN0ZWQ6Ci0gICAgU3R5bGVTaGFkZXIoKQotICAgICAgICA6IG1faXNDYWNoZWRTaGFk
ZXIoZmFsc2UpCi0gICAgICAgICwgbV9pc1BlbmRpbmdTaGFkZXIoZmFsc2UpCi0gICAgewotICAg
IH0KLSAgICBib29sIG1faXNDYWNoZWRTaGFkZXIgOiAxOwotICAgIGJvb2wgbV9pc1BlbmRpbmdT
aGFkZXIgOiAxOwotfTsKLQotfQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0j
ZW5kaWYgLy8gU3R5bGVTaGFkZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvV2Vi
Q29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmNwcCBiL1NvdXJjZS9XZWJLaXQv
Z3RrL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0ay5jcHAKaW5kZXggOGM5
ZTc2Mi4uNmIzZTZjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBv
cnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay9X
ZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGsuY3BwCkBAIC01NzcsMTMgKzU3
Nyw2IEBAIHZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRDU1NSZWdpb25zRW5hYmxl
ZChXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBib29sCiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJl
czo6c2hhcmVkRmVhdHVyZXMoKS5zZXRDU1NSZWdpb25zRW5hYmxlZChlbmFibGVkKTsKIH0KIAot
dm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGs6OnNldENTU0N1c3RvbUZpbHRlckVuYWJsZWQo
V2ViS2l0V2ViVmlldyogd2ViVmlldywgYm9vbCBlbmFibGVkKQotewotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICBjb3JlKHdlYlZpZXcpLT5zZXR0aW5ncygpLnNldENTU0N1c3RvbUZpbHRl
ckVuYWJsZWQoZW5hYmxlZCk7Ci0jZW5kaWYKLX0KLQogdm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBv
cnRHdGs6OnNldEV4cGVyaW1lbnRhbENvbnRlbnRTZWN1cml0eVBvbGljeUZlYXR1cmVzRW5hYmxl
ZChib29sIGVuYWJsZWQpCiB7CiAjaWYgRU5BQkxFKENTUF9ORVhUKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmgg
Yi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRH
dGsuaAppbmRleCA0ZmQ2MjU1Li40MDBiYTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0
ay9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGsuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGsuaApAQCAt
MTA0LDcgKzEwNCw2IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBzZXRQYWdlQ2FjaGVTdXBw
b3J0c1BsdWdpbnMoV2ViS2l0V2ViVmlldyosIGJvb2wgZW5hYmxlZCk7CiAgICAgc3RhdGljIHZv
aWQgc2V0Q1NTR3JpZExheW91dEVuYWJsZWQoV2ViS2l0V2ViVmlldyosIGJvb2wgZW5hYmxlZCk7
CiAgICAgc3RhdGljIHZvaWQgc2V0Q1NTUmVnaW9uc0VuYWJsZWQoV2ViS2l0V2ViVmlldyosIGJv
b2wgZW5hYmxlZCk7Ci0gICAgc3RhdGljIHZvaWQgc2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChX
ZWJLaXRXZWJWaWV3KiwgYm9vbCBlbmFibGVkKTsKICAgICBzdGF0aWMgdm9pZCBzZXRFeHBlcmlt
ZW50YWxDb250ZW50U2VjdXJpdHlQb2xpY3lGZWF0dXJlc0VuYWJsZWQoYm9vbCk7CiAgICAgc3Rh
dGljIHZvaWQgc2V0U2VhbWxlc3NJRnJhbWVzRW5hYmxlZChib29sKTsKICAgICBzdGF0aWMgdm9p
ZCBzZXRTaGFkb3dET01FbmFibGVkKGJvb2wpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHAKaW5kZXggMDlhY2NmOC4uZjY1NGI5ZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwCkBAIC0xMjEsNyAr
MTIxLDYgQEAgZW51bSB7CiAgICAgUFJPUF9FTkFCTEVfU01PT1RIX1NDUk9MTElORywKICAgICBQ
Uk9QX01FRElBX1BMQVlCQUNLX1JFUVVJUkVTX1VTRVJfR0VTVFVSRSwKICAgICBQUk9QX01FRElB
X1BMQVlCQUNLX0FMTE9XU19JTkxJTkUsCi0gICAgUFJPUF9FTkFCTEVfQ1NTX1NIQURFUlMsCiAg
ICAgUFJPUF9FTkFCTEVfUlVOTklOR19PRl9JTlNFQ1VSRV9DT05URU5ULAogICAgIFBST1BfRU5B
QkxFX0RJU1BMQVlfT0ZfSU5TRUNVUkVfQ09OVEVOVCwKICAgICBQUk9QX0VOQUJMRV9NRURJQV9T
T1VSQ0UKQEAgLTk4NywyNSArOTg2LDYgQEAgc3RhdGljIHZvaWQgd2Via2l0X3dlYl9zZXR0aW5n
c19jbGFzc19pbml0KFdlYktpdFdlYlNldHRpbmdzQ2xhc3MqIGtsYXNzKQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MpKTsKIAog
ICAgIC8qKgotICAgICogV2ViS2l0V2ViU2V0dGluZ3M6ZW5hYmxlLWNzcy1zaGFkZXJzOgotICAg
ICoKLSAgICAqIEVuYWJsZSBvciBkaXNhYmxlIHN1cHBvcnQgZm9yIGNzcyBzaGFkZXJzIChjc3Mg
Y3VzdG9tIGZpbHRlcnMpLgotICAgICogQWNjZWxlcmF0ZWQgY29tcG9zaXRpbmcgbmVlZHMgdG8g
YmUgZW5hYmxlZCBhdCBjb21waWxlIHRpbWUsIGJ1dCBuZWVkcwotICAgICogbm90IGJlIGVuYWJs
ZWQgYXQgcnVudGltZS4KLSAgICAqCi0gICAgKiBTZWUgYWxzbyBodHRwczovL2R2Y3MudzMub3Jn
L2hnL0ZYVEYvcmF3LWZpbGUvdGlwL2N1c3RvbS9pbmRleC5odG1sCi0gICAgKgotICAgICogU2lu
Y2U6IDIuMAotICAgICovCi0gICAgZ19vYmplY3RfY2xhc3NfaW5zdGFsbF9wcm9wZXJ0eShnb2Jq
ZWN0X2NsYXNzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUFJPUF9FTkFC
TEVfQ1NTX1NIQURFUlMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnX3Bh
cmFtX3NwZWNfYm9vbGVhbigiZW5hYmxlLWNzcy1zaGFkZXJzIiwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF8oIkVuYWJsZSBDU1Mgc2hh
ZGVycyIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXygiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiKSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZBTFNFLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxh
Z3MpKTsKLQotICAgIC8qKgogICAgICogV2ViS2l0V2ViU2V0dGluZ3M6ZW5hYmxlLWRpc3BsYXkt
b2YtaW5zZWN1cmUtY29udGVudDoKICAgICAqCiAgICAgKiBXaGV0aGVyIHBhZ2VzIGxvYWRlZCB2
aWEgSFRUUFMgc2hvdWxkIGxvYWQgc3VicmVzb3VyY2VzIHN1Y2ggYXMKQEAgLTEyNDAsOSArMTIy
MCw2IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfc2V0dGluZ3Nfc2V0X3Byb3BlcnR5KEdPYmpl
Y3QqIG9iamVjdCwgZ3VpbnQgcHJvcF9pZCwgY29uCiAgICAgY2FzZSBQUk9QX0VOQUJMRV9TTU9P
VEhfU0NST0xMSU5HOgogICAgICAgICBwcml2LT5lbmFibGVTbW9vdGhTY3JvbGxpbmcgPSBnX3Zh
bHVlX2dldF9ib29sZWFuKHZhbHVlKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBQUk9QX0VO
QUJMRV9DU1NfU0hBREVSUzoKLSAgICAgICAgcHJpdi0+ZW5hYmxlQ1NTU2hhZGVycyA9IGdfdmFs
dWVfZ2V0X2Jvb2xlYW4odmFsdWUpOwotICAgICAgICBicmVhazsKICAgICBjYXNlIFBST1BfTUVE
SUFfUExBWUJBQ0tfUkVRVUlSRVNfVVNFUl9HRVNUVVJFOgogICAgICAgICBwcml2LT5tZWRpYVBs
YXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSA9IGdfdmFsdWVfZ2V0X2Jvb2xlYW4odmFsdWUpOwog
ICAgICAgICBicmVhazsKQEAgLTE0MzIsOSArMTQwOSw2IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93
ZWJfc2V0dGluZ3NfZ2V0X3Byb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcF9pZCwg
R1ZhCiAgICAgY2FzZSBQUk9QX0VOQUJMRV9TTU9PVEhfU0NST0xMSU5HOgogICAgICAgICBnX3Zh
bHVlX3NldF9ib29sZWFuKHZhbHVlLCBwcml2LT5lbmFibGVTbW9vdGhTY3JvbGxpbmcpOwogICAg
ICAgICBicmVhazsKLSAgICBjYXNlIFBST1BfRU5BQkxFX0NTU19TSEFERVJTOgotICAgICAgICBn
X3ZhbHVlX3NldF9ib29sZWFuKHZhbHVlLCBwcml2LT5lbmFibGVDU1NTaGFkZXJzKTsKLSAgICAg
ICAgYnJlYWs7CiAgICAgY2FzZSBQUk9QX01FRElBX1BMQVlCQUNLX1JFUVVJUkVTX1VTRVJfR0VT
VFVSRToKICAgICAgICAgZ192YWx1ZV9zZXRfYm9vbGVhbih2YWx1ZSwgcHJpdi0+bWVkaWFQbGF5
YmFja1JlcXVpcmVzVXNlckdlc3R1cmUpOwogICAgICAgICBicmVhazsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5nc3ByaXZhdGUuaCBiL1NvdXJj
ZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5nc3ByaXZhdGUuaAppbmRleCAyYzZm
MzE3Li5iNWU0NmY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3Nwcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzcHJpdmF0ZS5oCkBAIC04Myw3ICs4Myw2IEBAIHN0cnVjdCBfV2ViS2l0V2Vi
U2V0dGluZ3NQcml2YXRlIHsKICAgICBnYm9vbGVhbiBlbmFibGVXZWJBdWRpbzsKICAgICBnYm9v
bGVhbiBlbmFibGVBY2NlbGVyYXRlZENvbXBvc2l0aW5nOwogICAgIGdib29sZWFuIGVuYWJsZVNt
b290aFNjcm9sbGluZzsKLSAgICBnYm9vbGVhbiBlbmFibGVDU1NTaGFkZXJzOwogICAgIGdib29s
ZWFuIG1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlOwogICAgIGdib29sZWFuIG1lZGlh
UGxheWJhY2tBbGxvd3NJbmxpbmU7CiAgICAgZ2Jvb2xlYW4gZW5hYmxlRGlzcGxheU9mSW5zZWN1
cmVDb250ZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnZpZXcuY3BwIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwCmlu
ZGV4IGI0ZjlhOWMuLmUwYTAxMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJ2aWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vidmlldy5jcHAKQEAgLTM2MTcsMTAgKzM2MTcsNiBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2Vi
X3ZpZXdfdXBkYXRlX3NldHRpbmdzKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcpCiAgICAgY29yZVNl
dHRpbmdzLnNldFNjcm9sbEFuaW1hdG9yRW5hYmxlZChzZXR0aW5nc1ByaXZhdGUtPmVuYWJsZVNt
b290aFNjcm9sbGluZyk7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBj
b3JlU2V0dGluZ3Muc2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChzZXR0aW5nc1ByaXZhdGUtPmVu
YWJsZUNTU1NoYWRlcnMpOwotI2VuZGlmCi0KICNpZiBFTkFCTEUoQ1NTX1JFR0lPTlMpCiAgICAg
V2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRDU1NS
ZWdpb25zRW5hYmxlZCh0cnVlKTsKICNlbmRpZgpAQCAtMzc3MiwxMSArMzc2OCw2IEBAIHN0YXRp
YyB2b2lkIHdlYmtpdF93ZWJfdmlld19zZXR0aW5nc19ub3RpZnkoV2ViS2l0V2ViU2V0dGluZ3Mq
IHdlYlNldHRpbmdzLCBHUGFyCiAgICAgICAgIHNldHRpbmdzLnNldFNjcm9sbEFuaW1hdG9yRW5h
YmxlZChnX3ZhbHVlX2dldF9ib29sZWFuKCZ2YWx1ZSkpOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0gICAgZWxzZSBpZiAobmFtZSA9PSBnX2ludGVybl9zdHJpbmcoImVuYWJs
ZS1jc3Mtc2hhZGVycyIpKQotICAgICAgICBzZXR0aW5ncy5zZXRDU1NDdXN0b21GaWx0ZXJFbmFi
bGVkKGdfdmFsdWVfZ2V0X2Jvb2xlYW4oJnZhbHVlKSk7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShN
RURJQV9TT1VSQ0UpCiAgICAgZWxzZSBpZiAobmFtZSA9PSBnX2ludGVybl9zdHJpbmcoImVuYWJs
ZS1tZWRpYXNvdXJjZSIpKQogICAgICAgICBzZXR0aW5ncy5zZXRNZWRpYVNvdXJjZUVuYWJsZWQo
Z192YWx1ZV9nZXRfYm9vbGVhbigmdmFsdWUpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
bWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYktp
dC9tYWMvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYWEzNzU4
OGQuLjk0NjhjODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25z
L0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3Vy
YXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC01MCw3ICs1MCw2IEBAIEVOQUJMRV9D
U1NfRklMVEVSUyA9IEVOQUJMRV9DU1NfRklMVEVSUzsKIEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5U
QVRJT04gPSA7CiBFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04gPSA7CiBFTkFCTEVfQ1NTX1JF
R0lPTlMgPSBFTkFCTEVfQ1NTX1JFR0lPTlM7Ci1FTkFCTEVfQ1NTX1NIQURFUlMgPSBFTkFCTEVf
Q1NTX1NIQURFUlM7CiBFTkFCTEVfQ1NTX1NIQVBFUyA9IEVOQUJMRV9DU1NfU0hBUEVTOwogRU5B
QkxFX0NTU19TVElDS1lfUE9TSVRJT04gPSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTjsKIEVO
QUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQgPSBFTkFCTEVfQ1NTX1RS
QU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEOwpAQCAtMTk4LDQgKzE5Nyw0IEBAIEVOQUJM
RV9YU0xUID0gRU5BQkxFX1hTTFQ7CiBFTkFCTEVfRlRMX0pJVCA9IDsKIEVOQUJMRV9MTElOVF9D
X0xPT1AgPSA7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChF
TkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxP
V19TQ1JPTExJTkcpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykg
JChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hB
Tk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NTUF9ORVhUKSAkKEVOQUJMRV9DU1NfQk9YX0RFQ09S
QVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19DT01QT1NJVElORykgJChFTkFCTEVfQ1NTX0RFVklD
RV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1NfRVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0ZJTFRF
UlMpICQoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX1JF
U09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChF
TkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVf
Q1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJ
VElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNP
UkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJ
U0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJP
QVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJB
TlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09S
SUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5U
U19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQ
VEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMp
ICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVO
QUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSElEREVOX1BBR0Vf
RE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVf
SUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURf
REFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5B
QkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikg
JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lO
Q09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0la
SU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZF
TkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xF
R0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxF
X0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQo
RU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVO
QUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9N
SFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09O
VEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklM
SVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZP
Ul9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQo
RU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChF
TkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9S
RU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJM
RV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9X
T1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0Up
ICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFC
TEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQo
RU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9U
T1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURF
TykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQo
RU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElP
KSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VC
X1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxF
X1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJF
X0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8z
RF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUND
RUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNI
RV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJP
WFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFC
TEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQo
RU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQo
RU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5B
QkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVf
Q1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RS
QU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFM
X1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9O
KSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJ
VFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NV
UFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJf
SVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFU
SU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05T
VFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01F
RElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5B
QkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9H
QU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJ
TUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRB
VEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJB
U0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lO
UFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFC
TEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExF
VEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQ
RV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dF
RUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAk
KEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9Q
UkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9W
RU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRF
UlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxF
X01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9N
RURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkg
JChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9V
VElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQ
SSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURF
TykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxF
X1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVf
UVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVf
SU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJ
UFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJT
KSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5B
QkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZH
KSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxF
X1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9J
Q09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChF
TkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxF
X1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVO
QUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlO
RykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQp
ICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklO
RVNfJChQTEFURk9STV9OQU1FKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaAppbmRleCA4OGE0NGZkLi42ZjU2MzhiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0
ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2
YXRlLmgKQEAgLTEwMCw3ICsxMDAsNiBAQAogI2RlZmluZSBXZWJLaXRBY2NlbGVyYXRlZERyYXdp
bmdFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdEFjY2VsZXJhdGVkRHJhd2luZ0VuYWJsZWQi
CiAjZGVmaW5lIFdlYktpdENhbnZhc1VzZXNBY2NlbGVyYXRlZERyYXdpbmdQcmVmZXJlbmNlS2V5
IEAiV2ViS2l0Q2FudmFzVXNlc0FjY2VsZXJhdGVkRHJhd2luZyIKICNkZWZpbmUgV2ViS2l0QWNj
ZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0QWNjZWxlcmF0
ZWRDb21wb3NpdGluZ0VuYWJsZWQiCi0jZGVmaW5lIFdlYktpdENTU0N1c3RvbUZpbHRlckVuYWJs
ZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIKICNkZWZpbmUg
V2ViS2l0Q1NTUmVnaW9uc0VuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0Q1NTUmVnaW9uc0Vu
YWJsZWQiCiAjZGVmaW5lIFdlYktpdENTU0NvbXBvc2l0aW5nRW5hYmxlZFByZWZlcmVuY2VLZXkg
QCJXZWJLaXRDU1NDb21wb3NpdGluZ0VuYWJsZWQiCiAjZGVmaW5lIFdlYktpdENTU0dyaWRMYXlv
dXRFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdENTU0dyaWRMYXlvdXRFbmFibGVkIgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbSBiL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KaW5kZXggNTZkZmRjMi4u
MjE0OGRiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJl
bmNlcy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1t
CkBAIC00ODMsOCArNDgzLDYgQEAgcHVibGljOgogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0
aEJvb2w6Tk9dLCAgIFdlYktpdEphdmFTY3JpcHRDYW5BY2Nlc3NDbGlwYm9hcmRQcmVmZXJlbmNl
S2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgIFdlYktpdFhTU0F1
ZGl0b3JFbmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhC
b29sOllFU10sICBXZWJLaXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZFByZWZlcmVuY2VL
ZXksCi0gICAgICAgIC8vIENTUyBTaGFkZXJzIGFsc28gbmVlZCBXZWJHTCBlbmFibGVkICh3aGlj
aCBpcyBkaXNhYmxlZCBieSBkZWZhdWx0KSwgc28gd2UgY2FuIGtlZXAgaXQgZW5hYmxlZCBmb3Ig
bm93LgotICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZFByZWZlcmVuY2VLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJX
aXRoQm9vbDpZRVNdLCBXZWJLaXRDU1NSZWdpb25zRW5hYmxlZFByZWZlcmVuY2VLZXksCiAgICAg
ICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpZRVNdLCBXZWJLaXRDU1NDb21wb3NpdGluZ0Vu
YWJsZWRQcmVmZXJlbmNlS2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9d
LCAgV2ViS2l0Q1NTR3JpZExheW91dEVuYWJsZWRQcmVmZXJlbmNlS2V5LApAQCAtMTg3NCwxNiAr
MTg3Miw2IEBAIHN0YXRpYyBOU1N0cmluZyAqY2xhc3NJQkNyZWF0b3JJRCA9IG5pbDsKICAgICBb
c2VsZiBfc2V0Qm9vbFZhbHVlOmVuYWJsZWQgZm9yS2V5OldlYktpdEFjY2VsZXJhdGVkQ29tcG9z
aXRpbmdFbmFibGVkUHJlZmVyZW5jZUtleV07CiB9CiAKLS0gKEJPT0wpY3NzQ3VzdG9tRmlsdGVy
RW5hYmxlZAotewotICAgIHJldHVybiBbc2VsZiBfYm9vbFZhbHVlRm9yS2V5OldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWRQcmVmZXJlbmNlS2V5XTsKLX0KLQotLSAodm9pZClzZXRDU1NDdXN0
b21GaWx0ZXJFbmFibGVkOihCT09MKWVuYWJsZWQKLXsKLSAgICBbc2VsZiBfc2V0Qm9vbFZhbHVl
OmVuYWJsZWQgZm9yS2V5OldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWRQcmVmZXJlbmNlS2V5
XTsKLX0KLQogLSAoQk9PTCljc3NSZWdpb25zRW5hYmxlZAogewogICAgIHJldHVybiBbc2VsZiBf
Ym9vbFZhbHVlRm9yS2V5OldlYktpdENTU1JlZ2lvbnNFbmFibGVkUHJlZmVyZW5jZUtleV07CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0
ZS5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUuaApp
bmRleCBjMTI5MTlmLi43NjEzZTczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmgKQEAgLTE5OSw5ICsxOTksNiBAQCBleHRlcm4gTlNT
dHJpbmcgKldlYlByZWZlcmVuY2VzQ2FjaGVNb2RlbENoYW5nZWRJbnRlcm5hbE5vdGlmaWNhdGlv
bjsKIC0gKEJPT0wpYWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWQ7CiAtICh2b2lkKXNldEFj
Y2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkOihCT09MKWVuYWJsZWQ7CiAKLS0gKEJPT0wpY3Nz
Q3VzdG9tRmlsdGVyRW5hYmxlZDsKLS0gKHZvaWQpc2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZDoo
Qk9PTCllbmFibGVkOwotCiAtIChCT09MKWNzc1JlZ2lvbnNFbmFibGVkOwogLSAodm9pZClzZXRD
U1NSZWdpb25zRW5hYmxlZDooQk9PTCllbmFibGVkOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dl
YlZpZXcubW0KaW5kZXggNWZjZWNlYS4uZjFkMzg3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViVmlldy5tbQpAQCAtMjMyMyw5ICsyMzIzLDYgQEAgc3RhdGljIGJvb2wgbmVlZHNTZWxmUmV0
YWluV2hpbGVMb2FkaW5nUXVpcmsoKQogICAgIHNldHRpbmdzLnNldEZyYW1lRmxhdHRlbmluZ0Vu
YWJsZWQoW3ByZWZlcmVuY2VzIGlzRnJhbWVGbGF0dGVuaW5nRW5hYmxlZF0pOwogICAgIHNldHRp
bmdzLnNldFNwYXRpYWxOYXZpZ2F0aW9uRW5hYmxlZChbcHJlZmVyZW5jZXMgaXNTcGF0aWFsTmF2
aWdhdGlvbkVuYWJsZWRdKTsKICAgICBzZXR0aW5ncy5zZXRQYWdpbmF0ZUR1cmluZ0xheW91dEVu
YWJsZWQoW3ByZWZlcmVuY2VzIHBhZ2luYXRlRHVyaW5nTGF5b3V0RW5hYmxlZF0pOwotI2lmIEVO
QUJMRShDU1NfU0hBREVSUykKLSAgICBzZXR0aW5ncy5zZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVk
KFtwcmVmZXJlbmNlcyBjc3NDdXN0b21GaWx0ZXJFbmFibGVkXSk7Ci0jZW5kaWYKICAgICBSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldENTU1JlZ2lvbnNFbmFibGVk
KFtwcmVmZXJlbmNlcyBjc3NSZWdpb25zRW5hYmxlZF0pOwogICAgIFJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0Q1NTQ29tcG9zaXRpbmdFbmFibGVkKFtwcmVmZXJl
bmNlcyBjc3NDb21wb3NpdGluZ0VuYWJsZWRdKTsKICNpZiBFTkFCTEUoV0VCX0FVRElPKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViS2l0Mi9D
TWFrZUxpc3RzLnR4dAppbmRleCA0OTliYzc4Li4zMTdlZjNjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9DTWFrZUxpc3RzLnR4
dApAQCAtMjcwLDcgKzI3MCw2IEBAIHNldChXZWJLaXQyX1NPVVJDRVMKIAogICAgIFNoYXJlZC9D
b29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5jcHAK
ICAgICBTaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJDb29yZGluYXRlZFN1cmZhY2UuY3Bw
Ci0gICAgU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5LmNwcAogCiAgICAgU2hhcmVkL0Rvd25sb2Fkcy9Eb3dubG9hZC5jcHAKICAgICBTaGFyZWQv
RG93bmxvYWRzL0Rvd25sb2FkQXV0aGVudGljYXRpb25DbGllbnQuY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL1Nv
dXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCmluZGV4
IGFhMzc1ODhkLi45NDY4YzgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0
aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9Db25maWd1
cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNTAsNyArNTAsNiBAQCBFTkFCTEVf
Q1NTX0ZJTFRFUlMgPSBFTkFCTEVfQ1NTX0ZJTFRFUlM7CiBFTkFCTEVfQ1NTX0lNQUdFX09SSUVO
VEFUSU9OID0gOwogRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OID0gOwogRU5BQkxFX0NTU19S
RUdJT05TID0gRU5BQkxFX0NTU19SRUdJT05TOwotRU5BQkxFX0NTU19TSEFERVJTID0gRU5BQkxF
X0NTU19TSEFERVJTOwogRU5BQkxFX0NTU19TSEFQRVMgPSBFTkFCTEVfQ1NTX1NIQVBFUzsKIEVO
QUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9OID0gRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT047CiBF
TkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEID0gRU5BQkxFX0NTU19U
UkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRDsKQEAgLTE5OCw0ICsxOTcsNCBAQCBFTkFC
TEVfWFNMVCA9IEVOQUJMRV9YU0xUOwogRU5BQkxFX0ZUTF9KSVQgPSA7CiBFTkFCTEVfTExJTlRf
Q19MT09QID0gOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQo
RU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZM
T1dfU0NST0xMSU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcp
ICQoRU5BQkxFX0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NI
QU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNP
UkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJ
Q0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxU
RVJTKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9S
RVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQo
RU5BQkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04pICQoRU5BQkxF
X0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCkgJChFTkFCTEVfQ1NTM19DT05E
SVRJT05BTF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DU1MzX1RFWFRfREVD
T1JBVElPTikgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNPUl9W
SVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hC
T0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RS
QU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9P
UklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFCTEVfRE9NNF9FVkVO
VFNfQ09OU1RSVUNUT1IpICQoRU5BQkxFX0RSQUdHQUJMRV9SRUdJT04pICQoRU5BQkxFX0VOQ1JZ
UFRFRF9NRURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxURVJT
KSAkKEVOQUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChF
TkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0hJRERFTl9QQUdF
X0RPTV9USU1FUl9USFJPVFRMSU5HKSAkKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpICQoRU5BQkxF
X0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSUZSQU1FX1NFQU1MRVNTKSAkKEVOQUJMRV9JTkRFWEVE
X0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRJRV9VSSkgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVO
QUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIp
ICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9J
TkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lO
UFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRf
VFlQRV9XRUVLKSAkKEVOQUJMRV9JT1NfQUlSUExBWSkgJChFTkFCTEVfSU9TX1RFWFRfQVVUT1NJ
WklORykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTEVHQUNZX0NTU19W
RU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9M
RUdBQ1lfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElPKSAkKEVOQUJM
RV9MRVRURVJQUkVTUykgJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAk
KEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChF
TkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFCTEVf
TUhUTUwpICQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFWSUdBVE9SX0NP
TlRFTlRfVVRJTFMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJ
TElUWV9BUEkpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BMVUdJTl9QUk9YWV9G
T1JfVklERU8pICQoRU5BQkxFX1BST0dSRVNTX0VMRU1FTlQpICQoRU5BQkxFX1BST01JU0VTKSAk
KEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRTKSAkKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1QpICQo
RU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVf
UkVNT1RFX0lOU1BFQ1RPUikgJChFTkFCTEVfUkVTT0xVVElPTl9NRURJQV9RVUVSWSkgJChFTkFC
TEVfU0NSSVBURURfU1BFRUNIKSAkKEVOQUJMRV9TSEFET1dfRE9NKSAkKEVOQUJMRV9TSEFSRURf
V09SS0VSUykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNF
KSAkKEVOQUJMRV9TVUJQSVhFTF9MQVlPVVQpICQoRU5BQkxFX1NVQlRMRV9DUllQVE8pICQoRU5B
QkxFX1NWRykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5UKSAk
KEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVf
VE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklE
RU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAk
KEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FOSU1BVElPTlMpICQoRU5BQkxFX1dFQl9BVURJ
TykgJChFTkFCTEVfV0VCX1JFUExBWSkgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dF
Ql9USU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVOQUJM
RV9YU0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRkVBVFVS
RV9ERUZJTkVTXyQoUExBVEZPUk1fTkFNRSkpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVf
M0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FD
Q0VMRVJBVEVEX09WRVJGTE9XX1NDUk9MTElORykgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0FD
SEVfUEFSVElUSU9OSU5HKSAkKEVOQUJMRV9DQU5WQVNfUEFUSCkgJChFTkFCTEVfQ0FOVkFTX1BS
T1hZKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ1NQX05FWFQpICQoRU5B
QkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKSAk
KEVOQUJMRV9DU1NfREVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NTU19FWENMVVNJT05TKSAk
KEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OKSAkKEVO
QUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQoRU5BQkxF
X0NTU19TSEFQRVMpICQoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04pICQoRU5BQkxFX0NTU19U
UkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCkgJChFTkFCTEVfQ1NTM19DT05ESVRJT05B
TF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DU1MzX1RFWFRfREVDT1JBVElP
TikgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNPUl9WSVNJQklM
SVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FSRF9T
VVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVS
X0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklFTlRB
VElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFCTEVfRE9NNF9FVkVOVFNfQ09O
U1RSVUNUT1IpICQoRU5BQkxFX0RSQUdHQUJMRV9SRUdJT04pICQoRU5BQkxFX0VOQ1JZUFRFRF9N
RURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVO
QUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChFTkFCTEVf
R0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0hJRERFTl9QQUdFX0RPTV9U
SU1FUl9USFJPVFRMSU5HKSAkKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpICQoRU5BQkxFX0lDT05E
QVRBQkFTRSkgJChFTkFCTEVfSUZSQU1FX1NFQU1MRVNTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFC
QVNFKSAkKEVOQUJMRV9JTkRJRV9VSSkgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIpICQoRU5B
QkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNPTVBM
RVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZ
UEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9X
RUVLKSAkKEVOQUJMRV9JT1NfQUlSUExBWSkgJChFTkFCTEVfSU9TX1RFWFRfQVVUT1NJWklORykg
JChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1Jf
UFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9MRUdBQ1lf
VkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElPKSAkKEVOQUJMRV9MRVRU
RVJQUkVTUykgJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJM
RV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFCTEVf
TUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFCTEVfTUhUTUwp
ICQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFWSUdBVE9SX0NPTlRFTlRf
VVRJTFMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9B
UEkpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BMVUdJTl9QUk9YWV9GT1JfVklE
RU8pICQoRU5BQkxFX1BST0dSRVNTX0VMRU1FTlQpICQoRU5BQkxFX1BST01JU0VTKSAkKEVOQUJM
RV9QUk9YSU1JVFlfRVZFTlRTKSAkKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1QpICQoRU5BQkxF
X1FVT1RBKSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfUkVNT1RF
X0lOU1BFQ1RPUikgJChFTkFCTEVfUkVTT0xVVElPTl9NRURJQV9RVUVSWSkgJChFTkFCTEVfU0NS
SVBURURfU1BFRUNIKSAkKEVOQUJMRV9TSEFET1dfRE9NKSAkKEVOQUJMRV9TSEFSRURfV09SS0VS
UykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVO
QUJMRV9TVUJQSVhFTF9MQVlPVVQpICQoRU5BQkxFX1NVQlRMRV9DUllQVE8pICQoRU5BQkxFX1NW
RykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5UKSAkKEVOQUJM
RV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9VQ0hf
SUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQo
RU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJM
RV9XRUJHTCkgJChFTkFCTEVfV0VCX0FOSU1BVElPTlMpICQoRU5BQkxFX1dFQl9BVURJTykgJChF
TkFCTEVfV0VCX1JFUExBWSkgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9USU1J
TkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVOQUJMRV9YU0xU
KSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRkVBVFVSRV9ERUZJ
TkVTXyQoUExBVEZPUk1fTkFNRSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVk
R3JhcGhpY3NBcmd1bWVudENvZGVycy5jcHAKaW5kZXggMzA3M2RjZS4uOTI4ZmQ3MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0
ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
Q29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuY3Bw
CkBAIC01NCwyMiArNTQsNiBAQAogI2luY2x1ZGUgPFdlYkNvcmUvRmlsdGVyT3BlcmF0aW9ucy5o
PgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiV2ViQ3VzdG9t
RmlsdGVyUHJvZ3JhbVByb3h5LmgiCi0jaW5jbHVkZSA8V2ViQ29yZS9Db29yZGluYXRlZEN1c3Rv
bUZpbHRlck9wZXJhdGlvbi5oPgotI2luY2x1ZGUgPFdlYkNvcmUvQ29vcmRpbmF0ZWRDdXN0b21G
aWx0ZXJQcm9ncmFtLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0ZXJBcnJheVBhcmFt
ZXRlci5oPgotI2luY2x1ZGUgPFdlYkNvcmUvQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaD4K
LSNpbmNsdWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlckNvbnN0YW50cy5oPgotI2luY2x1ZGUgPFdl
YkNvcmUvQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9D
dXN0b21GaWx0ZXJPcGVyYXRpb24uaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlclBy
b2dyYW0uaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlclByb2dyYW1JbmZvLmg+Ci0j
aW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaD4KLSNpbmNs
dWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaD4KLSNpbmNsdWRlIDxX
ZWJDb3JlL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oPgotI2VuZGlmCi0KICNpZiBV
U0UoR1JBUEhJQ1NfU1VSRkFDRSkKICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzU3VyZmFjZS5o
PgogI2VuZGlmCkBAIC0xMTAsNjcgKzk0LDYgQEAgdm9pZCBBcmd1bWVudENvZGVyPFdlYkNvcmU6
OkZpbHRlck9wZXJhdGlvbnM+OjplbmNvZGUoQXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyLAogICAg
ICAgICAgICAgQXJndW1lbnRDb2RlcjxDb2xvcj46OmVuY29kZShlbmNvZGVyLCBzaGFkb3ctPmNv
bG9yKCkpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0gICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAgICAgICAg
ICAvLyBDdXN0b20gRmlsdGVycyBhcmUgY29udmVydGVkIHRvIFZBTElEQVRFRF9DVVNUT00gYmVm
b3JlIHJlYWNoaW5nIHRoaXMgcG9pbnQuCi0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6VkFM
SURBVEVEX0NVU1RPTTogewotICAgICAgICAgICAgY29uc3QgVmFsaWRhdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uKiBjdXN0b21PcGVyYXRpb24gPSBzdGF0aWNfY2FzdDxjb25zdCBWYWxpZGF0ZWRD
dXN0b21GaWx0ZXJPcGVyYXRpb24qPihmaWx0ZXIpOwotICAgICAgICAgICAgQVNTRVJUKGN1c3Rv
bU9wZXJhdGlvbi0+dmFsaWRhdGVkUHJvZ3JhbSgpKTsKLSAgICAgICAgICAgIFJlZlB0cjxDdXN0
b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiBwcm9ncmFtID0gY3VzdG9tT3BlcmF0aW9uLT52YWxp
ZGF0ZWRQcm9ncmFtKCk7Ci0gICAgICAgICAgICBBU1NFUlQocHJvZ3JhbS0+aXNJbml0aWFsaXpl
ZCgpKTsKLSAgICAgICAgICAgIEFTU0VSVChwcm9ncmFtLT5wbGF0Zm9ybUNvbXBpbGVkUHJvZ3Jh
bSgpKTsKLSAgICAgICAgICAgIEFTU0VSVChwcm9ncmFtLT5wbGF0Zm9ybUNvbXBpbGVkUHJvZ3Jh
bSgpLT5jbGllbnQoKSk7Ci0gICAgICAgICAgICBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkq
IGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSA9IHN0YXRpY19jYXN0PFdlYkN1c3RvbUZpbHRlclBy
b2dyYW1Qcm94eSo+KHByb2dyYW0tPnBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKCktPmNsaWVudCgp
KTsKLSAgICAgICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9ncmFtSW5m
byA9IHByb2dyYW0tPnByb2dyYW1JbmZvKCk7Ci0gICAgICAgICAgICBlbmNvZGVyLmVuY29kZUVu
dW0ocHJvZ3JhbUluZm8ubWVzaFR5cGUoKSk7Ci0gICAgICAgICAgICBlbmNvZGVyIDw8IGN1c3Rv
bUZpbHRlclByb2dyYW1Qcm94eS0+aWQoKTsKLSAgICAgICAgICAgIEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3QgcGFyYW1ldGVycyA9IGN1c3RvbU9wZXJhdGlvbi0+cGFyYW1ldGVycygpOwotICAg
ICAgICAgICAgZW5jb2RlciA8PCBzdGF0aWNfY2FzdDx1aW50MzJfdD4ocGFyYW1ldGVycy5zaXpl
KCkpOwotICAgICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzLnNpemUo
KTsgKytpKSB7Ci0gICAgICAgICAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4g
cGFyYW1ldGVyID0gcGFyYW1ldGVyc1tpXTsKLSAgICAgICAgICAgICAgICBlbmNvZGVyIDw8IHBh
cmFtZXRlci0+bmFtZSgpOwotICAgICAgICAgICAgICAgIGVuY29kZXIuZW5jb2RlRW51bShwYXJh
bWV0ZXItPnBhcmFtZXRlclR5cGUoKSk7Ci0KLSAgICAgICAgICAgICAgICBzd2l0Y2ggKHBhcmFt
ZXRlci0+cGFyYW1ldGVyVHlwZSgpKSB7Ci0gICAgICAgICAgICAgICAgY2FzZSBDdXN0b21GaWx0
ZXJQYXJhbWV0ZXI6Ok1BVFJJWDoKLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBh
cmFtZXRlcjo6QVJSQVk6IHsKLSAgICAgICAgICAgICAgICAgICAgQ3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXIqIGFycmF5UGFyYW1ldGVyID0gc3RhdGljX2Nhc3Q8Q3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXIqPihwYXJhbWV0ZXIuZ2V0KCkpOwotICAgICAgICAgICAgICAgICAgICBlbmNvZGVy
IDw8IHN0YXRpY19jYXN0PHVpbnQzMl90PihhcnJheVBhcmFtZXRlci0+c2l6ZSgpKTsKLSAgICAg
ICAgICAgICAgICAgICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBhcnJheVBhcmFtZXRlci0+c2l6
ZSgpOyArK2opCi0gICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGVyIDw8IGFycmF5UGFyYW1l
dGVyLT52YWx1ZUF0KGopOwotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAgICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OkNPTE9S
OiB7Ci0gICAgICAgICAgICAgICAgICAgIEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKiBjb2xv
clBhcmFtZXRlciA9IHN0YXRpY19jYXN0PEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKj4ocGFy
YW1ldGVyLmdldCgpKTsKLSAgICAgICAgICAgICAgICAgICAgZW5jb2RlciA8PCBjb2xvclBhcmFt
ZXRlci0+Y29sb3IoKTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAg
ICAgfQotICAgICAgICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpOVU1CRVI6
IHsKLSAgICAgICAgICAgICAgICAgICAgQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKiBudWJt
ZXJQYXJhbWV0ZXIgPSBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIqPihw
YXJhbWV0ZXIuZ2V0KCkpOwotICAgICAgICAgICAgICAgICAgICBlbmNvZGVyIDw8IHN0YXRpY19j
YXN0PHVpbnQzMl90PihudWJtZXJQYXJhbWV0ZXItPnNpemUoKSk7Ci0gICAgICAgICAgICAgICAg
ICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgbnVibWVyUGFyYW1ldGVyLT5zaXplKCk7ICsraikK
LSAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kZXIgPDwgbnVibWVyUGFyYW1ldGVyLT52YWx1
ZUF0KGopOwotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0g
ICAgICAgICAgICAgICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OlRSQU5TRk9STTogewot
ICAgICAgICAgICAgICAgICAgICBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqIHRyYW5z
Zm9ybVBhcmFtZXRlciA9IHN0YXRpY19jYXN0PEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRl
cio+KHBhcmFtZXRlci5nZXQoKSk7Ci0gICAgICAgICAgICAgICAgICAgIEFyZ3VtZW50Q29kZXI8
VHJhbnNmb3JtT3BlcmF0aW9ucz46OmVuY29kZShlbmNvZGVyLCB0cmFuc2Zvcm1QYXJhbWV0ZXIt
Pm9wZXJhdGlvbnMoKSk7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgICAgICBkZWZhdWx0OiB7Ci0gICAgICAgICAgICAgICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotCi0gICAgICAgICAg
ICBlbmNvZGVyIDw8IGN1c3RvbU9wZXJhdGlvbi0+bWVzaFJvd3MoKTsKLSAgICAgICAgICAgIGVu
Y29kZXIgPDwgY3VzdG9tT3BlcmF0aW9uLT5tZXNoQ29sdW1ucygpOwotICAgICAgICAgICAgYnJl
YWs7Ci0gICAgICAgIH0KLSNlbmRpZgogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgYnJl
YWs7CiAgICAgICAgIH0KQEAgLTIzMiwxMDEgKzE1NSw2IEBAIGJvb2wgQXJndW1lbnRDb2RlcjxX
ZWJDb3JlOjpGaWx0ZXJPcGVyYXRpb25zPjo6ZGVjb2RlKEFyZ3VtZW50RGVjb2RlciYgZGVjb2Rl
ciwKICAgICAgICAgICAgIGZpbHRlciA9IERyb3BTaGFkb3dGaWx0ZXJPcGVyYXRpb246OmNyZWF0
ZShsb2NhdGlvbiwgc3RkRGV2aWF0aW9uLCBjb2xvciwgdHlwZSk7CiAgICAgICAgICAgICBicmVh
azsKICAgICAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgY2FzZSBGaWx0
ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICAgICAgICAgIC8vIEN1c3RvbSBGaWx0ZXJzIGFyZSBj
b252ZXJ0ZWQgdG8gVkFMSURBVEVEX0NVU1RPTSBiZWZvcmUgcmVhY2hpbmcgdGhpcyBwb2ludC4K
LSAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgYnJlYWs7Ci0g
ICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOiB7Ci0gICAgICAg
ICAgICAvLyBGSVhNRTogQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIHNob3VsZCBub3QgbmVlZCB0aGUg
bWVzaFR5cGUuCi0gICAgICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTAyNTI5Ci0gICAgICAgICAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlw
ZTsKLSAgICAgICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKG1lc2hUeXBlKSkKLSAgICAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICBpbnQgcHJvZ3JhbUlEID0gMDsK
LSAgICAgICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGUocHJvZ3JhbUlEKSkKLSAgICAgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgICAgIHVpbnQzMl90IHBhcmFtZXRlcnNTaXpl
OwotICAgICAgICAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzU2l6ZSkpCi0gICAg
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgICAgICBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0IHBhcmFtZXRlcnMocGFyYW1ldGVyc1NpemUpOwotICAgICAgICAgICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzU2l6ZTsgKytpKSB7Ci0gICAgICAgICAgICAgICAg
U3RyaW5nIG5hbWU7Ci0gICAgICAgICAgICAgICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpQYXJh
bWV0ZXJUeXBlIHBhcmFtZXRlclR5cGU7Ci0gICAgICAgICAgICAgICAgaWYgKCFkZWNvZGVyLmRl
Y29kZShuYW1lKSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAg
ICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKHBhcmFtZXRlclR5cGUpKQotICAgICAgICAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgICAgICAgICBzd2l0Y2ggKHBhcmFt
ZXRlclR5cGUpIHsKLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6
TUFUUklYOgotICAgICAgICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpBUlJB
WTogewotICAgICAgICAgICAgICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0
ZXI+IGFycmF5UGFyYW1ldGVyID0gQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI6OmNyZWF0ZShu
YW1lLCBwYXJhbWV0ZXJUeXBlKTsKLSAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgYXJyYXlQ
YXJhbWV0ZXJTaXplOwotICAgICAgICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGFy
cmF5UGFyYW1ldGVyU2l6ZSkpCi0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgICAgICAgICAgICAgICAgIGRvdWJsZSBhcnJheVBhcmFtZXRlclZhbHVlOwotICAgICAg
ICAgICAgICAgICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IGFycmF5UGFyYW1ldGVyU2l6ZTsg
KytqKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGFycmF5
UGFyYW1ldGVyVmFsdWUpKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5UGFyYW1ldGVyLT5hZGRWYWx1ZShhcnJh
eVBhcmFtZXRlclZhbHVlKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAg
ICAgICBwYXJhbWV0ZXJzW2ldID0gYXJyYXlQYXJhbWV0ZXIucmVsZWFzZSgpOwotICAgICAgICAg
ICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgY2Fz
ZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OkNPTE9SOiB7Ci0gICAgICAgICAgICAgICAgICAgIFJl
ZlB0cjxDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcj4gY29sb3JQYXJhbWV0ZXIgPSBDdXN0b21G
aWx0ZXJDb2xvclBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUpOwotICAgICAgICAgICAgICAgICAgICBD
b2xvciBjOwotICAgICAgICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGMpKQotICAg
ICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgICAgICBj
b2xvclBhcmFtZXRlci0+c2V0Q29sb3IoYyk7Ci0gICAgICAgICAgICAgICAgICAgIHBhcmFtZXRl
cnNbaV0gPSBjb2xvclBhcmFtZXRlci5yZWxlYXNlKCk7Ci0gICAgICAgICAgICAgICAgICAgIGJy
ZWFrOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRl
clBhcmFtZXRlcjo6TlVNQkVSOiB7Ci0gICAgICAgICAgICAgICAgICAgIFJlZlB0cjxDdXN0b21G
aWx0ZXJOdW1iZXJQYXJhbWV0ZXI+IG51bWJlclBhcmFtZXRlciA9IEN1c3RvbUZpbHRlck51bWJl
clBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUpOwotICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBu
dW1iZXJQYXJhbWV0ZXJTaXplOwotICAgICAgICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVj
b2RlKG51bWJlclBhcmFtZXRlclNpemUpKQotICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgICAgICAgICAgICAgICAgICBkb3VibGUgbnVtYmVyUGFyYW1ldGVyVmFsdWU7
Ci0gICAgICAgICAgICAgICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgbnVtYmVyUGFyYW1l
dGVyU2l6ZTsgKytqKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVj
b2RlKG51bWJlclBhcmFtZXRlclZhbHVlKSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgICAgICAgICBudW1iZXJQYXJhbWV0ZXItPmFk
ZFZhbHVlKG51bWJlclBhcmFtZXRlclZhbHVlKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzW2ldID0gbnVtYmVyUGFyYW1ldGVyLnJlbGVhc2Uo
KTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgfQotICAgICAg
ICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpUUkFOU0ZPUk06IHsKLSAgICAg
ICAgICAgICAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcj4gdHJh
bnNmb3JtUGFyYW1ldGVyID0gQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyOjpjcmVhdGUo
bmFtZSk7Ci0gICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybU9wZXJhdGlvbnMgb3BlcmF0aW9u
czsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCFBcmd1bWVudENvZGVyPFRyYW5zZm9ybU9wZXJh
dGlvbnM+OjpkZWNvZGUoZGVjb2Rlciwgb3BlcmF0aW9ucykpCi0gICAgICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybVBhcmFtZXRl
ci0+c2V0T3BlcmF0aW9ucyhvcGVyYXRpb25zKTsKLSAgICAgICAgICAgICAgICAgICAgcGFyYW1l
dGVyc1tpXSA9IHRyYW5zZm9ybVBhcmFtZXRlci5yZWxlYXNlKCk7Ci0gICAgICAgICAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBkZWZhdWx0OiB7
Ci0gICAgICAgICAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAg
IH0KLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgdW5zaWduZWQgbWVzaFJvd3M7Ci0gICAg
ICAgICAgICB1bnNpZ25lZCBtZXNoQ29sdW1uczsKLSAgICAgICAgICAgIGlmICghZGVjb2Rlci5k
ZWNvZGUobWVzaFJvd3MpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAg
ICAgIGlmICghZGVjb2Rlci5kZWNvZGUobWVzaENvbHVtbnMpKQotICAgICAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKLQotICAgICAgICAgICAgLy8gQXQgdGhpcyBwb2ludCB0aGUgU2hhZGVycyBh
cmUgYWxyZWFkeSB2YWxpZGF0ZWQsIHNvIHdlIGp1c3QgdXNlIFdlYkN1c3RvbUZpbHRlck9wZXJh
dGlvbiBmb3IgdHJhbnNwb3J0YXRpb24uCi0gICAgICAgICAgICBmaWx0ZXIgPSBDb29yZGluYXRl
ZEN1c3RvbUZpbHRlck9wZXJhdGlvbjo6Y3JlYXRlKDAsIHByb2dyYW1JRCwgcGFyYW1ldGVycywg
bWVzaFJvd3MsIG1lc2hDb2x1bW5zKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0j
ZW5kaWYKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBA
IC0zMzksNDIgKzE2Nyw2IEBAIGJvb2wgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpGaWx0ZXJPcGVy
YXRpb25zPjo6ZGVjb2RlKEFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwKIH0KICNlbmRpZgogCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotdm9pZCBBcmd1bWVudENvZGVyPFdlYkNvcmU6OkN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvPjo6ZW5jb2RlKEFyZ3VtZW50RW5jb2RlciYgZW5jb2RlciwgY29u
c3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvKQotewotICAgIGVuY29kZXIg
PDwgcHJvZ3JhbUluZm8udmVydGV4U2hhZGVyU3RyaW5nKCk7Ci0gICAgZW5jb2RlciA8PCBwcm9n
cmFtSW5mby5mcmFnbWVudFNoYWRlclN0cmluZygpOwotICAgIGVuY29kZXIuZW5jb2RlRW51bShw
cm9ncmFtSW5mby5wcm9ncmFtVHlwZSgpKTsKLSAgICBlbmNvZGVyLmVuY29kZUVudW0ocHJvZ3Jh
bUluZm8ubWVzaFR5cGUoKSk7Ci0gICAgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRp
bmdzJiBtaXhTZXR0aW5ncyA9IHByb2dyYW1JbmZvLm1peFNldHRpbmdzKCk7Ci0gICAgZW5jb2Rl
ci5lbmNvZGVFbnVtKG1peFNldHRpbmdzLmJsZW5kTW9kZSk7Ci0gICAgZW5jb2Rlci5lbmNvZGVF
bnVtKG1peFNldHRpbmdzLmNvbXBvc2l0ZU9wZXJhdG9yKTsKLX0KLQotYm9vbCBBcmd1bWVudENv
ZGVyPFdlYkNvcmU6OkN1c3RvbUZpbHRlclByb2dyYW1JbmZvPjo6ZGVjb2RlKEFyZ3VtZW50RGVj
b2RlciYgZGVjb2RlciwgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvKQotewot
ICAgIFN0cmluZyB2ZXJ0ZXhTaGFkZXJTdHJpbmc7Ci0gICAgU3RyaW5nIGZyYWdtZW50U2hhZGVy
U3RyaW5nOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlOwotICAgIEN1
c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1NaXhT
ZXR0aW5ncyBtaXhTZXR0aW5nczsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHZlcnRleFNoYWRl
clN0cmluZykpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KGZyYWdtZW50U2hhZGVyU3RyaW5nKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIGlmICgh
ZGVjb2Rlci5kZWNvZGVFbnVtKHByb2dyYW1UeXBlKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwot
ICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKG1lc2hUeXBlKSkKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKG1peFNldHRpbmdzLmJsZW5kTW9kZSkp
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bShtaXhT
ZXR0aW5ncy5jb21wb3NpdGVPcGVyYXRvcikpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBw
cm9ncmFtSW5mbyA9IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvKHZlcnRleFNoYWRlclN0cmluZywg
ZnJhZ21lbnRTaGFkZXJTdHJpbmcsIHByb2dyYW1UeXBlLCBtaXhTZXR0aW5ncywgbWVzaFR5cGUp
OwotICAgIHJldHVybiB0cnVlOwotfQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQog
dm9pZCBBcmd1bWVudENvZGVyPFRyYW5zZm9ybU9wZXJhdGlvbnM+OjplbmNvZGUoQXJndW1lbnRF
bmNvZGVyJiBlbmNvZGVyLCBjb25zdCBUcmFuc2Zvcm1PcGVyYXRpb25zJiB0cmFuc2Zvcm1PcGVy
YXRpb25zKQogewogICAgIGVuY29kZXIgPDwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHRyYW5zZm9y
bU9wZXJhdGlvbnMuc2l6ZSgpKTsKQEAgLTEwODQsMTUgKzg3Niw2IEBAIHZvaWQgQXJndW1lbnRD
b2RlcjxDb29yZGluYXRlZEdyYXBoaWNzU3RhdGU+OjplbmNvZGUoQXJndW1lbnRFbmNvZGVyJiBl
bmNvZGVyLCBjCiAgICAgICAgIGVuY29kZUNvb3JkaW5hdGVkU3VyZmFjZShlbmNvZGVyLCBzdGF0
ZS51cGRhdGVBdGxhc2VzVG9DcmVhdGVbaV0uc2Vjb25kKTsKICAgICB9CiAgICAgZW5jb2RlciA8
PCBzdGF0ZS51cGRhdGVBdGxhc2VzVG9SZW1vdmU7Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0gICAgZW5jb2RlciA8PCBzdGF0aWNfY2FzdDx1aW50NjRfdD4oc3RhdGUuY3VzdG9tRmlsdGVy
c1RvQ3JlYXRlLnNpemUoKSk7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdGF0ZS5jdXN0
b21GaWx0ZXJzVG9DcmVhdGUuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgZW5jb2RlciA8PCBzdGF0
ZS5jdXN0b21GaWx0ZXJzVG9DcmVhdGVbaV0uZmlyc3Q7Ci0gICAgICAgIGVuY29kZXIgPDwgc3Rh
dGUuY3VzdG9tRmlsdGVyc1RvQ3JlYXRlW2ldLnNlY29uZDsKLSAgICB9Ci0gICAgZW5jb2RlciA8
PCBzdGF0ZS5jdXN0b21GaWx0ZXJzVG9SZW1vdmU7Ci0jZW5kaWYKIH0KIAogYm9vbCBBcmd1bWVu
dENvZGVyPENvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZT46OmRlY29kZShBcmd1bWVudERlY29kZXIm
IGRlY29kZXIsIENvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZSYgc3RhdGUpCkBAIC0xMTYyLDI1ICs5
NDUsNiBAQCBib29sIEFyZ3VtZW50Q29kZXI8Q29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlPjo6ZGVj
b2RlKEFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwgQwogICAgIGlmICghZGVjb2Rlci5kZWNvZGUo
c3RhdGUudXBkYXRlQXRsYXNlc1RvUmVtb3ZlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIHVpbnQ2NF90IHNpemVPZkN1c3RvbUZpbHRlcnNU
b0NyZWF0ZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHNpemVPZkN1c3RvbUZpbHRlcnNUb0Ny
ZWF0ZSkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGZvciAodWludDY0X3QgaSA9IDA7
IGkgPCBzaXplT2ZDdXN0b21GaWx0ZXJzVG9DcmVhdGU7ICsraSkgewotICAgICAgICB1aW50MzJf
dCBmaWx0ZXJJRDsKLSAgICAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShmaWx0ZXJJRCkpCi0gICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvIGZp
bHRlckluZm87Ci0gICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGUoZmlsdGVySW5mbykpCi0gICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIHN0YXRlLmN1c3RvbUZpbHRlcnNUb0NyZWF0
ZS5hcHBlbmQoc3RkOjptYWtlX3BhaXIoZmlsdGVySUQsIGZpbHRlckluZm8pKTsKLSAgICB9Ci0K
LSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHN0YXRlLmN1c3RvbUZpbHRlcnNUb1JlbW92ZSkpCi0g
ICAgICAgIHJldHVybiBmYWxzZTsKLSNlbmRpZgotCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3Jk
aW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nv
b3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLmgKaW5k
ZXggYTNjZGMwNC4uZWRjNGMzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nv
b3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLmgKKysr
IGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRH
cmFwaGljc0FyZ3VtZW50Q29kZXJzLmgKQEAgLTQ4LDEwICs0OCw2IEBAIHN0cnVjdCBMZW5ndGg7
CiBjbGFzcyBGaWx0ZXJPcGVyYXRpb25zOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbzsKLSNlbmRpZgotCiAjaWYgVVNFKEdS
QVBISUNTX1NVUkZBQ0UpCiBzdHJ1Y3QgR3JhcGhpY3NTdXJmYWNlVG9rZW47CiAjZW5kaWYKQEAg
LTY2LDEzICs2Miw2IEBAIHRlbXBsYXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6
RmlsdGVyT3BlcmF0aW9ucz4gewogfTsKICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KQotdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mbz4gewotICAgIHN0YXRpYyB2b2lkIGVuY29kZShBcmd1bWVudEVuY29kZXImLCBj
b25zdCBXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYpOwotICAgIHN0YXRpYyBib29s
IGRlY29kZShBcmd1bWVudERlY29kZXImLCBXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5m
byYpOwotfTsKLSNlbmRpZgotCiB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYkNv
cmU6OlRyYW5zZm9ybU9wZXJhdGlvbnM+IHsKICAgICBzdGF0aWMgdm9pZCBlbmNvZGUoQXJndW1l
bnRFbmNvZGVyJiwgY29uc3QgV2ViQ29yZTo6VHJhbnNmb3JtT3BlcmF0aW9ucyYpOwogICAgIHN0
YXRpYyBib29sIGRlY29kZShBcmd1bWVudERlY29kZXImLCBXZWJDb3JlOjpUcmFuc2Zvcm1PcGVy
YXRpb25zJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRH
cmFwaGljcy9XZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIv
U2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmNw
cApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTZmNzA3Ni4uMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJDdXN0b21GaWx0ZXJQ
cm9ncmFtUHJveHkuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNDkgKzAsMCBAQAotLyoKLSAqIENv
cHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAq
Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBk
aXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAq
ICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQotICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0jaW5jbHVkZSAiV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmgiCi0KLW5h
bWVzcGFjZSBXZWJLaXQgewotCi1pbnQgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5OjpzX25l
eHRJZCA9IDE7Ci0KLVdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eTo6fldlYkN1c3RvbUZpbHRl
clByb2dyYW1Qcm94eSgpCi17Ci0gICAgaWYgKG1fY2xpZW50KSB7Ci0gICAgICAgIG1fY2xpZW50
LT5yZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkodGhpcyk7Ci0gICAgICAgIG1fY2xpZW50
ID0gMDsKLSAgICB9Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gRU5B
QkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3Jk
aW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmggYi9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJv
eHkuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGEwODdhMC4uMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJDdXN0b21GaWx0
ZXJQcm9ncmFtUHJveHkuaAorKysgL2Rldi9udWxsCkBAIC0xLDkzICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0g
KiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHlf
aAotI2RlZmluZSBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHlfaAotCi0jaWYgVVNFKENPT1JE
SU5BVEVEX0dSQVBISUNTKSAmJiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlIDxXZWJD
b3JlL1RleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbS5oPgotI2luY2x1ZGUgPHd0
Zi9SZWZDb3VudGVkLmg+Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1jbGFzcyBXZWJDdXN0b21G
aWx0ZXJQcm9ncmFtUHJveHk7Ci0KLWNsYXNzIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eUNs
aWVudCB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB2b2lkIHJlbW92ZUN1c3RvbUZpbHRlclByb2dy
YW1Qcm94eShXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkqKSA9IDA7Ci19OwotCi0vLyBUaGlz
IGlzIGEgcHJveHkgY2xhc3MgdXNlZCB0byBzdG9yZSB0aGUgSUQgb2YgdGhlIGN1c3RvbSBmaWx0
ZXIgcHJvZ3JhbSBzZXJpYWxpemVkIHRvIHRoZSBvdGhlciBwcm9jZXNzLgotLy8gSXQgbGl2ZXMg
aW4gdGhlIFdlYlByb2Nlc3MgYW5kIGlzIHJlZmVyZW5jZWQgZnJvbSB0aGUgQ3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbSBtZWFuaW5nIHRoYXQgaXQgd2lsbCBiZSBrZXB0IGFsaXZlIGFzCi0v
LyBsb25nIGFzIGEgbGF5ZXIgb24gdGhlIHBhZ2Ugd2lsbCByZW5kZXIgd2l0aCB0aGlzIHByb2dy
YW0uIEl0IHdpbGwgY2FsbCByZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkgb24gdGhlIG1f
Y2xpZW50Ci0vLyB3aGVuIHRoZSBwcm9ncmFtIGlzIG5vIGxvbmdlciBuZWVkZWQgdG8gcmVuZGVy
IHRoZSBmaWx0ZXIuIFRoZSBjbGllbnQgY2FuIHRoZW4gc2VuZCBhIG1lc3NhZ2UgdG8gdGhlIFVJ
IHByb2Nlc3MKLS8vIHRvIGRlc3Ryb3kgdGhlIGFzc29jaWF0ZWQgcmVmZXJlbmNlLiBOb3RlIHRo
YXQgbW9yZSBsYXllcnMgY2FuIHNoYXJlIHRoZSBzYW1lIHByb2dyYW0gYW5kIHRoZXJlJ3MKLS8v
IG5vIG5lZWQgdG8gaW1wbGVtZW50IGEgY2FjaGluZyBtZWNoYW5pc20gaW4gdGhlIGNvbXBvc2l0
b3Igc2lkZS4KLQotY2xhc3MgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5IDogcHVibGljIFJl
ZkNvdW50ZWQ8V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5PiwgcHVibGljIFdlYkNvcmU6OlRl
eHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbUNsaWVudCB7Ci1wdWJsaWM6Ci0gICAg
dXNpbmcgUmVmQ291bnRlZDxXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHk+OjpyZWY7Ci0gICAg
dXNpbmcgUmVmQ291bnRlZDxXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHk+OjpkZXJlZjsKLQot
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eT4gY3JlYXRl
KCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgV2ViQ3VzdG9tRmlsdGVyUHJv
Z3JhbVByb3h5KCkpOwotICAgIH0KLQotICAgIGludCBpZCgpIGNvbnN0IHsgcmV0dXJuIG1faWQ7
IH0KLQotICAgIC8vIE5lZWRlZCB0byBtYWtlIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVk
UHJvZ3JhbUNsaWVudCBsb29rIGxpa2UgYSBSZWZDb3VudGVkIG9iamVjdC4KLSAgICB2aXJ0dWFs
IHZvaWQgcmVmRnJvbVZhbGlkYXRlZFByb2dyYW0oKSB7IHJlZigpOyB9Ci0gICAgdmlydHVhbCB2
b2lkIGRlcmVmRnJvbVZhbGlkYXRlZFByb2dyYW0oKSB7IGRlcmVmKCk7IH0KLQotICAgIHZpcnR1
YWwgfldlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSgpOwotICAgIAotICAgIHZvaWQgc2V0Q2xp
ZW50KFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eUNsaWVudCogY2xpZW50KSB7IG1fY2xpZW50
ID0gY2xpZW50OyB9Ci0gICAgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Q2xpZW50KiBjbGll
bnQoKSBjb25zdCB7IHJldHVybiBtX2NsaWVudDsgfQotCi1wcml2YXRlOgotICAgIFdlYkN1c3Rv
bUZpbHRlclByb2dyYW1Qcm94eSgpCi0gICAgICAgIDogbV9jbGllbnQoMCkKLSAgICAgICAgLCBt
X2lkKHNfbmV4dElkKyspCi0gICAgewotICAgIH0KLSAgICAKLSAgICBXZWJDdXN0b21GaWx0ZXJQ
cm9ncmFtUHJveHlDbGllbnQqIG1fY2xpZW50OwotICAgIGludCBtX2lkOwotICAgIAotICAgIHN0
YXRpYyBpbnQgc19uZXh0SWQ7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlm
IC8vIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykgJiYgRU5BQkxFKENTU19TSEFERVJTKQotCi0j
ZW5kaWYgLy8gV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5X2gKLQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAppbmRleCBkNGQ1Zjg4Li4zMjM1
MzUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29k
ZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJz
LmNwcApAQCAtMTQ2MiwxMiArMTQ2Miw2IEBAIHN0YXRpYyB2b2lkIGVuY29kZUZpbHRlck9wZXJh
dGlvbihBcmd1bWVudEVuY29kZXImIGVuY29kZXIsIGNvbnN0IEZpbHRlck9wZXJhdGlvCiAgICAg
ICAgIGVuY29kZXIgPDwgZHJvcFNoYWRvd0ZpbHRlci5jb2xvcigpOwogICAgICAgICBicmVhazsK
ICAgICB9Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9u
OjpDVVNUT006Ci0gICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OlZBTElEQVRFRF9DVVNUT006Ci0g
ICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICBicmVhazsKLSNlbmRpZgogICAg
IGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpQQVNTVEhST1VHSDoKICAgICBjYXNlIEZpbHRlck9wZXJh
dGlvbjo6Tk9ORToKICAgICAgICAgYnJlYWs7CkBAIC0xNTMxLDEyICsxNTI1LDYgQEAgc3RhdGlj
IGJvb2wgZGVjb2RlRmlsdGVyT3BlcmF0aW9uKEFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwgUmVm
UHRyPEZpbHRlck9wZXJhdGkKICAgICAgICAgZmlsdGVyID0gRHJvcFNoYWRvd0ZpbHRlck9wZXJh
dGlvbjo6Y3JlYXRlKGxvY2F0aW9uLCBzdGREZXZpYXRpb24sIGNvbG9yLCB0eXBlKTsKICAgICAg
ICAgYnJlYWs7CiAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIEZpbHRl
ck9wZXJhdGlvbjo6Q1VTVE9NOgotICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURf
Q1VTVE9NOgotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgYnJlYWs7Ci0j
ZW5kaWYKICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6UEFTU1RIUk9VR0g6CiAgICAgY2FzZSBG
aWx0ZXJPcGVyYXRpb246Ok5PTkU6CiAgICAgICAgIGJyZWFrOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaCBiL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKaW5kZXggZTlmNzExNC4uMjkzMjJmOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCkBAIC05Nyw3ICs5Nyw2
IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogICAgIG1hY3JvKENvbXBvc2l0aW5nQm9yZGVyc1Zpc2li
bGUsIGNvbXBvc2l0aW5nQm9yZGVyc1Zpc2libGUsIEJvb2wsIGJvb2wsIGZhbHNlKSBcCiAgICAg
bWFjcm8oQ29tcG9zaXRpbmdSZXBhaW50Q291bnRlcnNWaXNpYmxlLCBjb21wb3NpdGluZ1JlcGFp
bnRDb3VudGVyc1Zpc2libGUsIEJvb2wsIGJvb2wsIGZhbHNlKSBcCiAgICAgbWFjcm8oVGlsZWRT
Y3JvbGxpbmdJbmRpY2F0b3JWaXNpYmxlLCB0aWxlZFNjcm9sbGluZ0luZGljYXRvclZpc2libGUs
IEJvb2wsIGJvb2wsIGZhbHNlKSBcCi0gICAgbWFjcm8oQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCwg
Y3NzQ3VzdG9tRmlsdGVyRW5hYmxlZCwgQm9vbCwgYm9vbCwgdHJ1ZSkgXAogICAgIG1hY3JvKFdl
YkdMRW5hYmxlZCwgd2ViR0xFbmFibGVkLCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAgbWFjcm8o
TXVsdGl0aHJlYWRlZFdlYkdMRW5hYmxlZCwgbXVsdGl0aHJlYWRlZFdlYkdMRW5hYmxlZCwgQm9v
bCwgYm9vbCwgZmFsc2UpIFwKICAgICBtYWNybyhGb3JjZVNvZnR3YXJlV2ViR0xSZW5kZXJpbmcs
IGZvcmNlU29mdHdhcmVXZWJHTFJlbmRlcmluZywgQm9vbCwgYm9vbCwgZmFsc2UpIFwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rp
b24ubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVRyYW5zYWN0
aW9uLm1tCmluZGV4IGQ5OTNlZDAuLjUxOTdhYjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24ubW0KKysrIGIvU291cmNlL1dl
YktpdDIvU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5tbQpAQCAtNDk1LDE0
ICs0OTUsNiBAQCBSZW1vdGVMYXllclRyZWVUZXh0U3RyZWFtJiBSZW1vdGVMYXllclRyZWVUZXh0
U3RyZWFtOjpvcGVyYXRvcjw8KGNvbnN0IEZpbHRlck9wZQogICAgICAgICBjYXNlIEZpbHRlck9w
ZXJhdGlvbjo6RFJPUF9TSEFET1c6CiAgICAgICAgICAgICB0cyA8PCAiZHJvcCBzaGFkb3ciOwog
ICAgICAgICAgICAgYnJlYWs7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBjYXNl
IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOgotICAgICAgICAgICAgdHMgPDwgImN1c3RvbSI7Ci0g
ICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OlZBTElEQVRF
RF9DVVNUT006Ci0gICAgICAgICAgICB0cyA8PCAiY3VzdG9tICh2YWxpZGF0ZWQpIjsKLSAgICAg
ICAgICAgIGJyZWFrOwotI2VuZGlmCiAgICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpQQVNT
VEhST1VHSDoKICAgICAgICAgICAgIHRzIDw8ICJwYXNzdGhyb3VnaCI7CiAgICAgICAgICAgICBi
cmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZl
cmVuY2VzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2Vz
LmNwcAppbmRleCBlZGUwOWQ5Li44ZDI1YzcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCkBAIC00NTksMTYgKzQ1OSw2IEBAIGJvb2wg
V0tQcmVmZXJlbmNlc0dldFRpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlzaWJsZShXS1ByZWZlcmVu
Y2VzUmVmIHByZWZlcmVuY2VzCiAgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnRp
bGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlzaWJsZSgpOwogfQogCi12b2lkIFdLUHJlZmVyZW5jZXNT
ZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYs
IGJvb2wgZmxhZykKLXsKLSAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zZXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkKGZsYWcpOwotfQotCi1ib29sIFdLUHJlZmVyZW5jZXNHZXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpCi17Ci0gICAgcmV0
dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPmNzc0N1c3RvbUZpbHRlckVuYWJsZWQoKTsKLX0K
LQogdm9pZCBXS1ByZWZlcmVuY2VzU2V0V2ViR0xFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJl
ZmVyZW5jZXNSZWYsIGJvb2wgZmxhZykKIHsKICAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5z
ZXRXZWJHTEVuYWJsZWQoZmxhZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oCmluZGV4IDg2N2M5OTcuLmU4YmIxMWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJp
dmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2Vz
UHJpdmF0ZS5oCkBAIC04OSwxMCArODksNiBAQCBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2Vz
U2V0VGlsZWRTY3JvbGxpbmdJbmRpY2F0b3JWaXNpYmxlKFdLUHJlZmVyZW5jZXNSZWYsCiBXS19F
WFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0VGlsZWRTY3JvbGxpbmdJbmRpY2F0b3JWaXNpYmxl
KFdLUHJlZmVyZW5jZXNSZWYpOwogCiAvLyBEZWZhdWx0cyB0byB0cnVlLgotV0tfRVhQT1JUIHZv
aWQgV0tQcmVmZXJlbmNlc1NldENTU0N1c3RvbUZpbHRlckVuYWJsZWQoV0tQcmVmZXJlbmNlc1Jl
ZiwgYm9vbCBmbGFnKTsKLVdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYpOwotCi0vLyBEZWZhdWx0cyB0byB0cnVlLgog
V0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFdlYkdMRW5hYmxlZChXS1ByZWZlcmVuY2Vz
UmVmLCBib29sKTsKIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRXZWJHTEVuYWJsZWQo
V0tQcmVmZXJlbmNlc1JlZik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKaW5kZXggZGJmMGNmMC4u
YzIzY2U0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKQEAgLTIwMyw3ICsyMDMsNiBAQCB2b2lk
IEluamVjdGVkQnVuZGxlOjpvdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVzdFJ1bm5lcihXZWJQ
YWdlR3JvdXBQcm94eSogcGFnZQogI2RlZmluZSBGT1JfRUFDSF9PVkVSUklERV9CT09MX1BSRUZF
UkVOQ0UobWFjcm8pIFwKICAgICBtYWNybyhXZWJLaXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5h
YmxlZCwgQWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWQsIGFjY2VsZXJhdGVkQ29tcG9zaXRp
bmdFbmFibGVkKSBcCiAgICAgbWFjcm8oV2ViS2l0Q2FudmFzVXNlc0FjY2VsZXJhdGVkRHJhd2lu
ZywgQ2FudmFzVXNlc0FjY2VsZXJhdGVkRHJhd2luZywgY2FudmFzVXNlc0FjY2VsZXJhdGVkRHJh
d2luZykgXAotICAgIG1hY3JvKFdlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQsIENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQsIGNzc0N1c3RvbUZpbHRlckVuYWJsZWQpIFwKICAgICBtYWNybyhXZWJL
aXRDU1NHcmlkTGF5b3V0RW5hYmxlZCwgQ1NTR3JpZExheW91dEVuYWJsZWQsIGNzc0dyaWRMYXlv
dXRFbmFibGVkKSBcCiAgICAgbWFjcm8oV2ViS2l0RnJhbWVGbGF0dGVuaW5nRW5hYmxlZCwgRnJh
bWVGbGF0dGVuaW5nRW5hYmxlZCwgZnJhbWVGbGF0dGVuaW5nRW5hYmxlZCkgXAogICAgIG1hY3Jv
KFdlYktpdEphdmFFbmFibGVkLCBKYXZhRW5hYmxlZCwgamF2YUVuYWJsZWQpIFwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNz
L0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExheWVyVHJlZUhvc3QuY3Bw
CmluZGV4IDI4ZTA2MzUuLjI1NzQ3YTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9z
dC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVk
R3JhcGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmNwcApAQCAtNDMsMTEgKzQzLDYgQEAK
ICNpbmNsdWRlIDxXZWJDb3JlL1NldHRpbmdzLmg+CiAjaW5jbHVkZSA8d3RmL0N1cnJlbnRUaW1l
Lmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIlZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlv
bi5oIgotI2VuZGlmCi0KIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgV2Vi
S2l0IHsKQEAgLTU5LDkgKzU0LDYgQEAgUGFzc1JlZlB0cjxDb29yZGluYXRlZExheWVyVHJlZUhv
c3Q+IENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6Y3JlYXRlKFdlYlBhZ2UqIHcKIAogQ29vcmRp
bmF0ZWRMYXllclRyZWVIb3N0Ojp+Q29vcmRpbmF0ZWRMYXllclRyZWVIb3N0KCkKIHsKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgZGlzY29ubmVjdEN1c3RvbUZpbHRlclByb2dyYW1zKCk7
Ci0jZW5kaWYKIH0KIAogQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0OjpDb29yZGluYXRlZExheWVy
VHJlZUhvc3QoV2ViUGFnZSogd2ViUGFnZSkKQEAgLTIxNSw4NSArMjA3LDYgQEAgdm9pZCBDb29y
ZGluYXRlZExheWVyVHJlZUhvc3Q6OnB1cmdlQmFja2luZ1N0b3JlcygpCiAgICAgbV9jb29yZGlu
YXRvci0+cHVyZ2VCYWNraW5nU3RvcmVzKCk7CiB9CiAKLXZvaWQgQ29vcmRpbmF0ZWRMYXllclRy
ZWVIb3N0Ojp3aWxsU3luY0xheWVyU3RhdGUoQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyU3RhdGUm
IHN0YXRlKQotewotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBpZiAoc3RhdGUuYW5pbWF0
aW9uc0NoYW5nZWQpCi0gICAgICAgIHByZXBhcmVDdXN0b21GaWx0ZXJQcm94aWVzRm9yQW5pbWF0
aW9ucyhzdGF0ZS5hbmltYXRpb25zKTsKLQotICAgIGlmIChzdGF0ZS5maWx0ZXJzQ2hhbmdlZCkK
LSAgICAgICAgY2hlY2tDdXN0b21GaWx0ZXJQcm9ncmFtUHJveGllcyhzdGF0ZS5maWx0ZXJzKTsK
LSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKHN0YXRlKTsKLSNlbmRpZgotfQotCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotdm9pZCBDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6OnByZXBhcmVDdXN0
b21GaWx0ZXJQcm94aWVzRm9yQW5pbWF0aW9ucyhHcmFwaGljc0xheWVyQW5pbWF0aW9ucyYgYWN0
aXZlQW5pbWF0aW9ucykKLXsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGFjdGl2ZUFuaW1h
dGlvbnMuYW5pbWF0aW9ucygpLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGNvbnN0IEtleWZyYW1l
VmFsdWVMaXN0JiBrZXlmcmFtZXMgPSBhY3RpdmVBbmltYXRpb25zLmFuaW1hdGlvbnMoKS5hdChp
KS5rZXlmcmFtZXMoKTsKLSAgICAgICAgaWYgKGtleWZyYW1lcy5wcm9wZXJ0eSgpICE9IEFuaW1h
dGVkUHJvcGVydHlXZWJraXRGaWx0ZXIpCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAg
Zm9yIChzaXplX3QgaiA9IDA7IGogPCBrZXlmcmFtZXMuc2l6ZSgpOyArK2opIHsKLSAgICAgICAg
ICAgIGNvbnN0IEZpbHRlckFuaW1hdGlvblZhbHVlJiBmaWx0ZXJWYWx1ZSA9IHN0YXRpY19jYXN0
PGNvbnN0IEZpbHRlckFuaW1hdGlvblZhbHVlJj4oa2V5ZnJhbWVzLmF0KGopKTsKLSAgICAgICAg
ICAgIGNoZWNrQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3hpZXMoZmlsdGVyVmFsdWUudmFsdWUoKSk7
Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLXZvaWQgQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0Ojpj
aGVja0N1c3RvbUZpbHRlclByb2dyYW1Qcm94aWVzKGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZp
bHRlcnMpCi17Ci0gICAgLy8gV2UgbmVlZCB0byBjcmVhdGUgdGhlIFdlYkN1c3RvbUZpbHRlclBy
b2dyYW1Qcm94eSBvYmplY3RzIGJlZm9yZSB3ZSBnZXQgdG8gc2VyaWFsaXplIHRoZQotICAgIC8v
IGN1c3RvbSBmaWx0ZXJzIHRvIHRoZSBvdGhlciBwcm9jZXNzLiBUaGF0J3MgYmVjYXVzZSBXZWJD
dXN0b21GaWx0ZXJQcm9ncmFtUHJveHkgbmVlZHMKLSAgICAvLyB0byBsaW5rIGJhY2sgdG8gdGhl
IGNvb3JkaW5hdG9yLCBzbyB0aGF0IHdlIGNhbiBzZW5kIGEgbWVzc2FnZSB0byB0aGUgVUkgcHJv
Y2VzcyB3aGVuCi0gICAgLy8gdGhlIHByb2dyYW0gaXMgbm90IG5lZWRlZCBhbnltb3JlLgotICAg
IC8vIE5vdGUgdGhhdCB0aGUgc2VyaWFsaXphdGlvbiB3aWxsIG9ubHkgaGFwcGVuIGF0IGEgbGF0
ZXIgdGltZSBpbiBBcmd1bWVudENvZGVyPFdlYkNvcmU6OkZpbHRlck9wZXJhdGlvbnM+OjplbmNv
ZGUuCi0gICAgLy8gQXQgdGhhdCBwb2ludCB0aGUgcHJvZ3JhbSB3aWxsIG9ubHkgYmUgc2VyaWFs
aXplZCBvbmNlLiBBbGwgdGhlIG90aGVyIHRpbWVzIGl0IHdpbGwgb25seSB1c2UgdGhlIElEIG9m
IHRoZSBwcm9ncmFtLgotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZmlsdGVycy5zaXplKCk7
ICsraSkgewotICAgICAgICBjb25zdCBGaWx0ZXJPcGVyYXRpb24qIG9wZXJhdGlvbiA9IGZpbHRl
cnMuYXQoaSk7Ci0gICAgICAgIGlmIChvcGVyYXRpb24tPnR5cGUoKSAhPSBGaWx0ZXJPcGVyYXRp
b246OlZBTElEQVRFRF9DVVNUT00pCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgY29u
c3QgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKiBjdXN0b21PcGVyYXRpb24gPSBzdGF0
aWNfY2FzdDxjb25zdCBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qPihvcGVyYXRpb24p
OwotICAgICAgICBBU1NFUlQoY3VzdG9tT3BlcmF0aW9uLT52YWxpZGF0ZWRQcm9ncmFtKCktPmlz
SW5pdGlhbGl6ZWQoKSk7Ci0gICAgICAgIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJv
Z3JhbSogcHJvZ3JhbSA9IGN1c3RvbU9wZXJhdGlvbi0+dmFsaWRhdGVkUHJvZ3JhbSgpLT5wbGF0
Zm9ybUNvbXBpbGVkUHJvZ3JhbSgpOwotCi0gICAgICAgIFJlZlB0cjxXZWJDdXN0b21GaWx0ZXJQ
cm9ncmFtUHJveHk+IGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eTsKLSAgICAgICAgaWYgKHByb2dy
YW0tPmNsaWVudCgpKQotICAgICAgICAgICAgY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5ID0gc3Rh
dGljX2Nhc3Q8V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Kj4ocHJvZ3JhbS0+Y2xpZW50KCkp
OwotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSA9
IFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eTo6Y3JlYXRlKCk7Ci0gICAgICAgICAgICBwcm9n
cmFtLT5zZXRDbGllbnQoY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KTsKLSAgICAgICAgfQotCi0g
ICAgICAgIGlmICghY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LT5jbGllbnQoKSkgewotICAgICAg
ICAgICAgY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LT5zZXRDbGllbnQodGhpcyk7Ci0gICAgICAg
ICAgICBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmFkZChjdXN0b21GaWx0ZXJQcm9ncmFtUHJveHku
Z2V0KCkpOwotICAgICAgICAgICAgbV9jb29yZGluYXRvci0+c3RhdGUoKS5jdXN0b21GaWx0ZXJz
VG9DcmVhdGUuYXBwZW5kKHN0ZDo6bWFrZV9wYWlyKGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS0+
aWQoKSwgY3VzdG9tT3BlcmF0aW9uLT52YWxpZGF0ZWRQcm9ncmFtKCktPnZhbGlkYXRlZFByb2dy
YW1JbmZvKCkpKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIC8vIElmIHRoZSBjbGll
bnQgd2FzIG5vdCBkaXNjb25uZWN0ZWQgdGhlbiB0aGlzIGNvb3JkaW5hdG9yIG11c3QgYmUgdGhl
IGNsaWVudCBmb3IgaXQuCi0gICAgICAgICAgICBBU1NFUlQoY3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5LT5jbGllbnQoKSA9PSB0aGlzKTsKLSAgICAgICAgfQotICAgIH0KLX0KLQotdm9pZCBDb29y
ZGluYXRlZExheWVyVHJlZUhvc3Q6OnJlbW92ZUN1c3RvbUZpbHRlclByb2dyYW1Qcm94eShXZWJD
dXN0b21GaWx0ZXJQcm9ncmFtUHJveHkqIGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSkKLXsKLSAg
ICAvLyBBdCB0aGlzIHRpbWUgdGhlIHNoYWRlciBpcyBub3QgbmVlZGVkIGFueW1vcmUsIHNvIHdl
IHJlbW92ZSBpdCBmcm9tIG91ciBzZXQgYW5kCi0gICAgLy8gc2VuZCBhIG1lc3NhZ2UgdG8gdGhl
IG90aGVyIHByb2Nlc3MgdG8gZGVsZXRlIGl0LgotICAgIG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMu
cmVtb3ZlKGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSk7Ci0gICAgbV9jb29yZGluYXRvci0+c3Rh
dGUoKS5jdXN0b21GaWx0ZXJzVG9SZW1vdmUuYXBwZW5kKGN1c3RvbUZpbHRlclByb2dyYW1Qcm94
eS0+aWQoKSk7Ci19Ci0KLXZvaWQgQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0OjpkaXNjb25uZWN0
Q3VzdG9tRmlsdGVyUHJvZ3JhbXMoKQotewotICAgIC8vIE1ha2Ugc3VyZSB0aGF0IFdlYkNvcmUg
d2lsbCBub3QgY2FsbCBpbnRvIHRoaXMgY29vcmRpbmF0b3IgYW55bW9yZS4KLSAgICBIYXNoU2V0
PFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSo+OjppdGVyYXRvciBpdGVyID0gbV9jdXN0b21G
aWx0ZXJQcm9ncmFtcy5iZWdpbigpOwotICAgIGZvciAoOyBpdGVyICE9IG1fY3VzdG9tRmlsdGVy
UHJvZ3JhbXMuZW5kKCk7ICsraXRlcikKLSAgICAgICAgKCppdGVyKS0+c2V0Q2xpZW50KDApOwot
fQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQogdm9pZCBDb29yZGluYXRlZExheWVy
VHJlZUhvc3Q6OmRpZEZsdXNoUm9vdExheWVyKCkKIHsKICAgICBpZiAobV9wYWdlT3ZlcmxheUxh
eWVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3Jk
aW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmggYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExheWVy
VHJlZUhvc3QuaAppbmRleCA1NDRlODI4Li41MTI4MTBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExh
eWVyVHJlZUhvc3QuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29v
cmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExheWVyVHJlZUhvc3QuaApAQCAtMjksMTAgKzI5
LDYgQEAKICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzTGF5ZXJGYWN0b3J5Lmg+CiAjaW5jbHVk
ZSA8d3RmL0hhc2hTZXQuaD4KIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJX
ZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkuaCIKLSNlbmRpZgotCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiBjbGFzcyBDb29yZGluYXRlZFN1cmZhY2U7CiB9CkBAIC00Miw5ICszOCw2IEBAIG5hbWVz
cGFjZSBXZWJLaXQgewogY2xhc3MgV2ViUGFnZTsKIAogY2xhc3MgQ29vcmRpbmF0ZWRMYXllclRy
ZWVIb3N0IDogcHVibGljIExheWVyVHJlZUhvc3QsIHB1YmxpYyBXZWJDb3JlOjpDb21wb3NpdGlu
Z0Nvb3JkaW5hdG9yOjpDbGllbnQKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgLCBXZWJD
dXN0b21GaWx0ZXJQcm9ncmFtUHJveHlDbGllbnQKLSNlbmRpZgogewogcHVibGljOgogICAgIHN0
YXRpYyBQYXNzUmVmUHRyPENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdD4gY3JlYXRlKFdlYlBhZ2Uq
KTsKQEAgLTEwMywzMSArOTYsMTYgQEAgcHJpdmF0ZToKIAogICAgIC8vIENvbXBvc2l0aW5nQ29v
cmRpbmF0b3I6OkNsaWVudAogICAgIHZpcnR1YWwgdm9pZCBkaWRGbHVzaFJvb3RMYXllcigpIG92
ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCB3aWxsU3luY0xheWVyU3RhdGUoV2ViQ29yZTo6Q29v
cmRpbmF0ZWRHcmFwaGljc0xheWVyU3RhdGUmKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQg
bm90aWZ5Rmx1c2hSZXF1aXJlZCgpIG92ZXJyaWRlIHsgc2NoZWR1bGVMYXllckZsdXNoKCk7IH07
CiAgICAgdmlydHVhbCB2b2lkIGNvbW1pdFNjZW5lU3RhdGUoY29uc3QgV2ViQ29yZTo6Q29vcmRp
bmF0ZWRHcmFwaGljc1N0YXRlJikgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIHBhaW50TGF5
ZXJDb250ZW50cyhjb25zdCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKiwgV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0JiwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgY2xpcFJlY3QpIG92ZXJyaWRlOwog
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIHZvaWQgcHJlcGFyZUN1c3RvbUZpbHRlclBy
b3hpZXNGb3JBbmltYXRpb25zKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJBbmltYXRpb25zJik7Ci0K
LSAgICAvLyBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHlDbGllbnQKLSAgICB2b2lkIHJlbW92
ZUN1c3RvbUZpbHRlclByb2dyYW1Qcm94eShXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkqKTsK
LQotICAgIHZvaWQgY2hlY2tDdXN0b21GaWx0ZXJQcm9ncmFtUHJveGllcyhjb25zdCBXZWJDb3Jl
OjpGaWx0ZXJPcGVyYXRpb25zJik7Ci0gICAgdm9pZCBkaXNjb25uZWN0Q3VzdG9tRmlsdGVyUHJv
Z3JhbXMoKTsKLSNlbmRpZgotCiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbXBvc2l0
aW5nQ29vcmRpbmF0b3I+IG1fY29vcmRpbmF0b3I7CiAKICAgICAvLyBUaGUgcGFnZSBvdmVybGF5
IGxheWVyLiBXaWxsIGJlIG51bGwgaWYgdGhlcmUncyBubyBwYWdlIG92ZXJsYXkuCiAgICAgc3Rk
Ojp1bmlxdWVfcHRyPFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXI+IG1fcGFnZU92ZXJsYXlMYXllcjsK
ICAgICBSZWZQdHI8UGFnZU92ZXJsYXk+IG1fcGFnZU92ZXJsYXk7CiAKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgSGFzaFNldDxXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkqPiBtX2N1
c3RvbUZpbHRlclByb2dyYW1zOwotI2VuZGlmCi0KICAgICBib29sIG1fbm90aWZ5QWZ0ZXJTY2hl
ZHVsZWRMYXllckZsdXNoOwogICAgIGJvb2wgbV9pc1ZhbGlkOwogICAgIGJvb2wgbV9pc1N1c3Bl
bmRlZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApp
bmRleCA3MTZlZGJlLi5iMzA4NGFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0yNDY5LDcgKzI0NjksNiBAQCB2b2lkIFdlYlBhZ2U6OnVw
ZGF0ZVByZWZlcmVuY2VzKGNvbnN0IFdlYlByZWZlcmVuY2VzU3RvcmUmIHN0b3JlKQogICAgIHNl
dHRpbmdzLnNldFNob3dSZXBhaW50Q291bnRlcihzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2Vi
UHJlZmVyZW5jZXNLZXk6OmNvbXBvc2l0aW5nUmVwYWludENvdW50ZXJzVmlzaWJsZUtleSgpKSk7
CiAgICAgc2V0dGluZ3Muc2V0U2hvd1RpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yKHN0b3JlLmdldEJv
b2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6dGlsZWRTY3JvbGxpbmdJbmRpY2F0b3JW
aXNpYmxlS2V5KCkpKTsKICAgICBzZXR0aW5ncy5zZXRBZ2dyZXNzaXZlVGlsZVJldGVudGlvbkVu
YWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjphZ2dyZXNz
aXZlVGlsZVJldGVudGlvbkVuYWJsZWRLZXkoKSkpOwotICAgIHNldHRpbmdzLnNldENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5
Ojpjc3NDdXN0b21GaWx0ZXJFbmFibGVkS2V5KCkpKTsKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1
cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldENTU1JlZ2lvbnNFbmFibGVkKHN0b3JlLmdldEJvb2xW
YWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6Y3NzUmVnaW9uc0VuYWJsZWRLZXkoKSkpOwog
ICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0Q1NTQ29tcG9z
aXRpbmdFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6
Y3NzQ29tcG9zaXRpbmdFbmFibGVkS2V5KCkpKTsKICAgICBzZXR0aW5ncy5zZXRDU1NHcmlkTGF5
b3V0RW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmNz
c0dyaWRMYXlvdXRFbmFibGVkS2V5KCkpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL21h
Yy9XZWJLaXQyLm9yZGVyIGIvU291cmNlL1dlYktpdDIvbWFjL1dlYktpdDIub3JkZXIKaW5kZXgg
OWRmOTQwNS4uZWY1NWVlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvbWFjL1dlYktpdDIu
b3JkZXIKKysrIGIvU291cmNlL1dlYktpdDIvbWFjL1dlYktpdDIub3JkZXIKQEAgLTE4OSw3ICsx
ODksNiBAQCBfX1pONldlYktpdDE3V2ViUHJlZmVyZW5jZXNLZXkzMWNhbnZhc1VzZXNBY2NlbGVy
YXRlZERyYXdpbmdLZXlFdgogX19aTjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5Mjhjb21wb3Np
dGluZ0JvcmRlcnNWaXNpYmxlS2V5RXYKIF9fWk42V2ViS2l0MTdXZWJQcmVmZXJlbmNlc0tleTM2
Y29tcG9zaXRpbmdSZXBhaW50Q291bnRlcnNWaXNpYmxlS2V5RXYKIF9fWk42V2ViS2l0MTdXZWJQ
cmVmZXJlbmNlc0tleTMzdGlsZWRTY3JvbGxpbmdJbmRpY2F0b3JWaXNpYmxlS2V5RXYKLV9fWk42
V2ViS2l0MTdXZWJQcmVmZXJlbmNlc0tleTI1Y3NzQ3VzdG9tRmlsdGVyRW5hYmxlZEtleUV2CiBf
X1pONldlYktpdDE3V2ViUHJlZmVyZW5jZXNLZXkxNXdlYkdMRW5hYmxlZEtleUV2CiBfX1pONldl
YktpdDE3V2ViUHJlZmVyZW5jZXNLZXkyOG11bHRpdGhyZWFkZWRXZWJHTEVuYWJsZWRLZXlFdgog
X19aTjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5MzBmb3JjZVNvZnR3YXJlV2ViR0xSZW5kZXJp
bmdLZXlFdgpkaWZmIC0tZ2l0IGEvU291cmNlL2F1dG90b29scy9GaW5kRGVwZW5kZW5jaWVzLm00
IGIvU291cmNlL2F1dG90b29scy9GaW5kRGVwZW5kZW5jaWVzLm00CmluZGV4IGVmYzJkYjMuLjRi
ZThhOGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9hdXRvdG9vbHMvRmluZERlcGVuZGVuY2llcy5tNAor
KysgYi9Tb3VyY2UvYXV0b3Rvb2xzL0ZpbmREZXBlbmRlbmNpZXMubTQKQEAgLTM0MCwxMyArMzQw
LDExIEBAIGlmIHRlc3QgIiRlbmFibGVfb3Bjb2RlX3N0YXRzIiA9ICJ5ZXMiOyB0aGVuCiAgICAg
ZmkKIGZpCiAKLSMgRW5hYmxlIENTUyBGaWx0ZXJzIGFuZCBTaGFkZXJzIGlmIGFjY2VsZXJhdGVk
X2NvbXBvc2l0aW5nIGlzIHR1cm5lZCBvbi4KKyMgRW5hYmxlIENTUyBGaWx0ZXJzIGlmIGFjY2Vs
ZXJhdGVkX2NvbXBvc2l0aW5nIGlzIHR1cm5lZCBvbi4KIGVuYWJsZV9jc3NfZmlsdGVycz1ubzsK
LWVuYWJsZV9jc3Nfc2hhZGVycz1ubzsKLUFDX01TR19DSEVDS0lORyhbd2hldGhlciB0byBlbmFi
bGUgQ1NTIEZpbHRlcnMgYW5kIFNoYWRlcnNdKQorQUNfTVNHX0NIRUNLSU5HKFt3aGV0aGVyIHRv
IGVuYWJsZSBDU1MgRmlsdGVyc10pCiBpZiB0ZXN0ICIkZW5hYmxlX2FjY2VsZXJhdGVkX2NvbXBv
c2l0aW5nIiA9ICJ5ZXMiICYmIHRlc3QgIiRmb3VuZF9vcGVuZ2wiID0gInllcyI7IHRoZW4KICAg
ICBlbmFibGVfY3NzX2ZpbHRlcnM9eWVzOwotICAgIGVuYWJsZV9jc3Nfc2hhZGVycz15ZXM7CiBm
aQogQUNfTVNHX1JFU1VMVChbJGVuYWJsZV9jc3NfZmlsdGVyc10pCiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9hdXRvdG9vbHMvU2V0dXBXZWJLaXRGZWF0dXJlcy5tNCBiL1NvdXJjZS9hdXRvdG9vbHMv
U2V0dXBXZWJLaXRGZWF0dXJlcy5tNAppbmRleCA5ZTg1M2JhLi45ZDZhYjZkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvYXV0b3Rvb2xzL1NldHVwV2ViS2l0RmVhdHVyZXMubTQKKysrIGIvU291cmNlL2F1
dG90b29scy9TZXR1cFdlYktpdEZlYXR1cmVzLm00CkBAIC0yOSwxMiArMjksNiBAQCBlbHNlCiAg
ICAgQ09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUz0iJENPTkZJR1VSQUJMRV9GRUFUVVJFX0RF
RklORVMgRU5BQkxFX1ZJREVPPTAiCiBmaQogCi1pZiB0ZXN0ICIkZW5hYmxlX2Nzc19zaGFkZXJz
IiA9ICJ5ZXMiOyB0aGVuCi0gICAgQ09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUz0iJENPTkZJ
R1VSQUJMRV9GRUFUVVJFX0RFRklORVMgRU5BQkxFX0NTU19TSEFERVJTPTEiCi1lbHNlCi0gICAg
Q09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUz0iJENPTkZJR1VSQUJMRV9GRUFUVVJFX0RFRklO
RVMgRU5BQkxFX0NTU19TSEFERVJTPTAiCi1maQotCiBpZiB0ZXN0ICIkZW5hYmxlX2Nzc19maWx0
ZXJzIiA9ICJ5ZXMiOyB0aGVuCiAgICAgQ09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUz0iJENP
TkZJR1VSQUJMRV9GRUFUVVJFX0RFRklORVMgRU5BQkxFX0NTU19GSUxURVJTPTEiCiBlbHNlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9Tb3VyY2UvY21h
a2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggOTIzODJiZC4uYjA2N2I5NiAxMDA2NDQKLS0t
IGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9X
ZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtMzUsNyArMzUsNiBAQCBtYWNybyhXRUJLSVRfT1BUSU9O
X0JFR0lOKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xV
VElPTiAiVG9nZ2xlIENTUyBpbWFnZS1yZXNvbHV0aW9uIHN1cHBvcnQiIE9GRikKICAgICBXRUJL
SVRfT1BUSU9OX0RFRklORShFTkFCTEVfQ1NTX0lNQUdFX1NFVCAiVG9nZ2xlIENTUyBpbWFnZS1z
ZXQgc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9DU1NfUkVH
SU9OUyAiVG9nZ2xlIENTUyByZWdpb25zIHN1cHBvcnQiIE9GRikKLSAgICBXRUJLSVRfT1BUSU9O
X0RFRklORShFTkFCTEVfQ1NTX1NIQURFUlMgIlRvZ2dsZSBDU1MgU2hhZGVycyAod2l0aGluIENT
UyBGaWx0ZXJzKSBzdXBwb3J0IiBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxF
X0NTU19TSEFQRVMgIlRvZ2dsZSBDU1MgU2hhcGVzIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRf
T1BUSU9OX0RFRklORShFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTiAiVG9nZ2xlIENTUyBzdGlj
a3kgcG9zaXRpb24gc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJM
RV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQgIlRvZ2dsZSBzdXBwb3J0IGZv
ciB1bnByZWZpeGVkIENTUyBhbmltYXRpb25zIGFuZCB0cmFuc2Zvcm1zIiBPTikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlIGIvU291cmNlL2NtYWtlY29uZmlnLmguY21h
a2UKaW5kZXggMDYxMjk5YS4uNjRlMjQ2YiAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlY29uZmln
LmguY21ha2UKKysrIGIvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UKQEAgLTI0LDcgKzI0LDYg
QEAKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTgogI2NtYWtlZGVm
aW5lMDEgRU5BQkxFX0NTU19JTUFHRV9TRVQKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9DU1NfUkVH
SU9OUwotI2NtYWtlZGVmaW5lMDEgRU5BQkxFX0NTU19TSEFERVJTCiAjY21ha2VkZWZpbmUwMSBF
TkFCTEVfQ1NTX1NIQVBFUwogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJ
T04KICNjbWFrZWRlZmluZTAxIEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJF
RklYRUQK
</data>
<flag name="commit-queue"
          id="245844"
          type_id="3"
          status="-"
          setter="mvujovic"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221913</attachid>
            <date>2014-01-22 15:12:11 -0800</date>
            <delta_ts>2014-01-22 16:36:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>127382-3.patch</filename>
            <type>text/plain</type>
            <size>1340334</size>
            <attacher name="Max Vujovic">mvujovic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10
ZXN0LWhlbHBlcnMuanMgYi9MYXlvdXRUZXN0cy9hbmltYXRpb25zL3Jlc291cmNlcy9hbmltYXRp
b24tdGVzdC1oZWxwZXJzLmpzCmluZGV4IDgxZmFmODAuLmE3MjNiNGEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10ZXN0LWhlbHBlcnMuanMK
KysrIGIvTGF5b3V0VGVzdHMvYW5pbWF0aW9ucy9yZXNvdXJjZXMvYW5pbWF0aW9uLXRlc3QtaGVs
cGVycy5qcwpAQCAtMTQ3LDE4ICsxNDcsMTMgQEAgZnVuY3Rpb24gcGFyc2VGaWx0ZXJJbWFnZShz
KQogCiBmdW5jdGlvbiBwYXJzZUZpbHRlckZ1bmN0aW9uTGlzdChzKQogewotICAgIHZhciByZWcg
PSAvXCkqXHMqKGJsdXJ8YnJpZ2h0bmVzc3xjb250cmFzdHxjdXN0b218ZHJvcFwtc2hhZG93fGdy
YXlzY2FsZXxodWVcLXJvdGF0ZXxpbnZlcnR8b3BhY2l0eXxzYXR1cmF0ZXxzZXBpYXx1cmwpXCgv
CisgICAgdmFyIHJlZyA9IC9cKSpccyooYmx1cnxicmlnaHRuZXNzfGNvbnRyYXN0fGRyb3BcLXNo
YWRvd3xncmF5c2NhbGV8aHVlXC1yb3RhdGV8aW52ZXJ0fG9wYWNpdHl8c2F0dXJhdGV8c2VwaWF8
dXJsKVwoLwogICAgIHZhciBtYXRjaGVzID0gcy5zcGxpdChyZWcpOwogCiAgICAgLy8gRmlyc3Qg
aXRlbSBtdXN0IGJlIGVtcHR5LiBBbGwgb3RoZXIgaXRlbXMgYXJlIG9mIGZ1bmN0aW9uTmFtZSwg
ZnVuY3Rpb25WYWx1ZS4KICAgICBpZiAoIW1hdGNoZXMgfHwgbWF0Y2hlcy5zaGlmdCgpICE9ICIi
KQogICAgICAgICByZXR1cm4gbnVsbDsKIAotICAgIC8vIFJlZ0V4IGFib3ZlIGNhbiBub3QgaGFu
ZGxlIGRlcHJlY2F0ZWQgY3VzdG9tKCkgZnVuY3Rpb24KLSAgICB2YXIgY3VzdG9tUG9zID0gbWF0
Y2hlcy5pbmRleE9mKCJjdXN0b20iKTsKLSAgICBpZiAoY3VzdG9tUG9zID49IDAgJiYgbWF0Y2hl
c1tjdXN0b21Qb3MrMV0gPT09ICIiKQotICAgICAgICByZXR1cm4gcGFyc2VEZXByZWNhdGVkQ3Vz
dG9tRmlsdGVyRnVuY3Rpb24ocyk7Ci0KICAgICAvLyBPZGQgaXRlbXMgYXJlIHRoZSBmdW5jdGlv
biBuYW1lLCBldmVuIGl0ZW1zIHRoZSBmdW5jdGlvbiB2YWx1ZS4KICAgICBpZiAoIW1hdGNoZXMu
bGVuZ3RoIHx8IG1hdGNoZXMubGVuZ3RoICUgMikKICAgICAgICAgcmV0dXJuIG51bGw7CkBAIC0x
NzIsMzggKzE2NywxMiBAQCBmdW5jdGlvbiBwYXJzZUZpbHRlckZ1bmN0aW9uTGlzdChzKQogICAg
ICAgICAgICAgLy8gRklYTUU6IFN1cHBvcnQgcGFyc2luZyBvZiBkcm9wLXNoYWRvdy4KICAgICAg
ICAgICAgIGZ1bmN0aW9uTGlzdC5wdXNoKGZ1bmN0aW9uVmFsdWUpOwogICAgICAgICAgICAgY29u
dGludWU7Ci0gICAgICAgIH0gZWxzZSBpZiAoZnVuY3Rpb25OYW1lID09ICJjdXN0b20iKSB7Ci0g
ICAgICAgICAgICB2YXIgZmlsdGVyUGFyYW1zOwotICAgICAgICAgICAgaWYgKCF3aW5kb3cuZ2V0
Q3VzdG9tRmlsdGVyUGFyYW1ldGVycykKLSAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3Io
ImdldEN1c3RvbUZpbHRlclBhcmFtZXRlcnMgbm90IGZvdW5kLiBEaWQgeW91IGluY2x1ZGUgY3Vz
dG9tLWZpbHRlci1wYXJzZXIuanM/Iik7Ci0gICAgICAgICAgICB2YXIgZmlsdGVyUGFyYW1zID0g
Z2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhmdW5jdGlvblZhbHVlKTsKLSAgICAgICAgICAgIGlm
ICghZmlsdGVyUGFyYW1zKSB7Ci0gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcigiRXJyb3Ig
b24gcGFyc2luZyBjdXN0b20gZmlsdGVyIHBhcmFtZXRlcnMgIiwgZnVuY3Rpb25WYWx1ZSk7Ci0g
ICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBm
dW5jdGlvbkxpc3QucHVzaChmaWx0ZXJQYXJhbXMpOwotICAgICAgICAgICAgY29udGludWU7CiAg
ICAgICAgIH0KICAgICAgICAgZnVuY3Rpb25MaXN0LnB1c2gocGFyc2VGbG9hdChmdW5jdGlvblZh
bHVlKSk7CiAgICAgfQogICAgIHJldHVybiBmdW5jdGlvbkxpc3Q7CiB9CiAKLS8vIEZJWE1FOiBS
ZW1vdmUgZnVuY3Rpb24gYW5kIGNhbGxlciB3aGVuIHdlIHJlbW92ZWQgdGhlIGRlcHJlY2F0ZWQg
c3ludGF4IG9mCi0vLyB0aGUgY3VzdG9tIGZpbHRlciBmdW5jdGlvbi4KLWZ1bmN0aW9uIHBhcnNl
RGVwcmVjYXRlZEN1c3RvbUZpbHRlckZ1bmN0aW9uKHMpCi17Ci0gICAgdmFyIGZpbHRlclJlc3Vs
dCA9IHMubWF0Y2goLyhcdyspXCgoLispXCkvKTsKLSAgICB2YXIgZmlsdGVyUGFyYW1zID0gZmls
dGVyUmVzdWx0WzJdOwotCi0gICAgaWYgKGZpbHRlclJlc3VsdFsxXSAhPSAiY3VzdG9tIikKLSAg
ICAgICAgcmV0dXJuIG51bGw7Ci0KLSAgICBpZiAoIXdpbmRvdy5nZXRDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJzKQotICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImdldEN1c3RvbUZpbHRlclBhcmFtZXRl
cnMgbm90IGZvdW5kLiBEaWQgeW91IGluY2x1ZGUgY3VzdG9tLWZpbHRlci1wYXJzZXIuanM/Iik7
Ci0gICAgcmV0dXJuIFsiY3VzdG9tIiwgZ2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhmaWx0ZXJQ
YXJhbXMpXTsKLX0KLQogZnVuY3Rpb24gcGFyc2VCYXNpY1NoYXBlKHMpCiB7CiAgICAgdmFyIHNo
YXBlRnVuY3Rpb24gPSBzLm1hdGNoKC8oXHcrKVwoKC4rKVwpLyk7CkBAIC0yOTcsMTMgKzI2Niw2
IEBAIGZ1bmN0aW9uIGNvbXBhcmVGaWx0ZXJGdW5jdGlvbnMoY29tcHV0ZWRWYWx1ZSwgZXhwZWN0
ZWRWYWx1ZSwgdG9sZXJhbmNlKQogICAgICAgICAgICAgY29uc29sZS5lcnJvcigiRmlsdGVyIGZ1
bmN0aW9ucyBkbyBub3QgbWF0Y2guIik7CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAg
ICAgIH0KLSAgICAgICAgaWYgKGFjdHVhbFtpXSA9PSAiY3VzdG9tIikgewotICAgICAgICAgICAg
aWYgKCFjdXN0b21GaWx0ZXJQYXJhbWV0ZXJNYXRjaChhY3R1YWxbaSsxXSwgZXhwZWN0ZWRbaSsx
XSwgdG9sZXJhbmNlKSkgewotICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoIkN1c3RvbSBm
aWx0ZXIgcGFyYW1ldGVycyBkbyBub3QgbWF0Y2guIik7Ci0gICAgICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0K
ICAgICAgICAgaWYgKCFpc0Nsb3NlRW5vdWdoKGFjdHVhbFtpKzFdLCBleHBlY3RlZFtpKzFdLCB0
b2xlcmFuY2UpKSB7CiAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCJGaWx0ZXIgZnVuY3Rpb24g
dmFsdWVzIGRvIG5vdCBtYXRjaC4iKTsKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTMz
MCw0OSArMjkyLDYgQEAgZnVuY3Rpb24gYmFzaWNTaGFwZVBhcmFtZXRlcnNNYXRjaChwYXJhbUxp
c3QxLCBwYXJhbUxpc3QyLCB0b2xlcmFuY2UpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWZ1bmN0
aW9uIGN1c3RvbUZpbHRlclBhcmFtZXRlck1hdGNoKHBhcmFtMSwgcGFyYW0yLCB0b2xlcmFuY2Up
Ci17Ci0gICAgaWYgKHBhcmFtMS50eXBlICE9ICJwYXJhbWV0ZXIiKSB7Ci0gICAgICAgIC8vIENo
ZWNraW5nIGZvciBzaGFkZXIgdXJpcyBhbmQgb3RoZXIga2V5d29yZHMuIFRoZXkgbmVlZCB0byBi
ZSBleGFjdGx5IHRoZSBzYW1lLgotICAgICAgICByZXR1cm4gKHBhcmFtMS50eXBlID09IHBhcmFt
Mi50eXBlICYmIHBhcmFtMS52YWx1ZSA9PSBwYXJhbTIudmFsdWUpOwotICAgIH0KLQotICAgIGlm
IChwYXJhbTEubmFtZSAhPSBwYXJhbTIubmFtZSB8fCBwYXJhbTEudmFsdWUubGVuZ3RoICE9IHBh
cmFtMi52YWx1ZS5sZW5ndGgpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGZvciAodmFy
IGogPSAwOyBqIDwgcGFyYW0xLnZhbHVlLmxlbmd0aDsgKytqKSB7Ci0gICAgICAgIHZhciB2YWwx
ID0gcGFyYW0xLnZhbHVlW2pdLAotICAgICAgICAgICAgdmFsMiA9IHBhcmFtMi52YWx1ZVtqXTsK
LSAgICAgICAgaWYgKHZhbDEudHlwZSAhPSB2YWwyLnR5cGUpCi0gICAgICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgICAgIHN3aXRjaCAodmFsMS50eXBlKSB7Ci0gICAgICAgIGNhc2UgImZ1bmN0
aW9uIjoKLSAgICAgICAgICAgIGlmICh2YWwxLm5hbWUgIT0gdmFsMi5uYW1lKQotICAgICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIGlmICh2YWwxLmFyZ3VtZW50cy5sZW5n
dGggIT0gdmFsMi5hcmd1bWVudHMubGVuZ3RoKSB7Ci0gICAgICAgICAgICAgICAgY29uc29sZS5l
cnJvcigiQXJndW1lbnRzIGxlbmd0aCBtaXNtYXRjaDogIiwgdmFsMS5hcmd1bWVudHMubGVuZ3Ro
LCAiLyIsIHZhbDIuYXJndW1lbnRzLmxlbmd0aCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZm9yICh2YXIgdCA9IDA7IHQgPCB2YWwx
LmFyZ3VtZW50cy5sZW5ndGg7ICsrdCkgewotICAgICAgICAgICAgICAgIGlmICh2YWwxLmFyZ3Vt
ZW50c1t0XS50eXBlICE9ICJudW1iZXIiIHx8IHZhbDIuYXJndW1lbnRzW3RdLnR5cGUgIT0gIm51
bWJlciIpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgICAg
ICBpZiAoIWlzQ2xvc2VFbm91Z2godmFsMS5hcmd1bWVudHNbdF0udmFsdWUsIHZhbDIuYXJndW1l
bnRzW3RdLnZhbHVlLCB0b2xlcmFuY2UpKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFs
c2U7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSAibnVt
YmVyIjoKLSAgICAgICAgICAgIGlmICghaXNDbG9zZUVub3VnaCh2YWwxLnZhbHVlLCB2YWwyLnZh
bHVlLCB0b2xlcmFuY2UpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgY29uc29sZS5lcnJvcigi
VW5zdXBwb3J0ZWQgcGFyYW1ldGVyIHR5cGUgIiwgdmFsMS50eXBlKTsKLSAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIHJldHVybiB0cnVlOwotfQotCiBm
dW5jdGlvbiBjaGVja0V4cGVjdGVkVmFsdWUoZXhwZWN0ZWQsIGluZGV4KQogewogICAgIHZhciBh
bmltYXRpb25OYW1lID0gZXhwZWN0ZWRbaW5kZXhdWzBdOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVs
ZS1pbnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU0YzI5ZjguLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
YXQtcnVsZS1pbnZhbGlkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDU2ICswLDAg
QEAKLVRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtpdC1maWx0ZXIuCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLUZpbHRlciBhdC1ydWxlIHN5bWJvbCB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotVW5wcmVmaXhlZCBydWxlLgotQGZpbHRlciBteS1m
aWx0ZXIgeyB9Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24gaW5zdGFuY2VvZiBET01FeGNlcHRp
b24gaXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0aW9uLmNvZGUgaXMgRE9NRXhjZXB0aW9u
LlNZTlRBWF9FUlIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
RmlsdGVyIG5hbWUgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0KLU1pc3NpbmcgZmlsdGVyIG5hbWUgaWRlbnRpZmllci4KLUAtd2Via2l0LWZpbHRlciB7
IH0KLVBBU1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0
cnVlCi1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFY
X0VSUgotCi1GaWx0ZXIgbmFtZSBhcyBzdHJpbmcuCi1ALXdlYmtpdC1maWx0ZXIgJ215LWZpbHRl
cicgeyB9Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24gaW5zdGFuY2VvZiBET01FeGNlcHRpb24g
aXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0aW9uLmNvZGUgaXMgRE9NRXhjZXB0aW9uLlNZ
TlRBWF9FUlIKLQotRmlsdGVyIG5hbWUgYXMgbnVtYmVyLgotQC13ZWJraXQtZmlsdGVyIDEyMyB7
IH0KLVBBU1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0
cnVlCi1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFY
X0VSUgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1GaWx0ZXIg
YXQtcnVsZSBib2R5IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1NaXNzaW5nIHJ1bGUgYm9keS4KLUAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIKLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
Ci1NaXNzaW5nIG9wZW5pbmcgYnJhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIH0KLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
Ci1NaXNzaW5nIGNsb3NpbmcgYnJhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsKLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE4YmYxMTIuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
YXQtcnVsZS1pbnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IURP
Q1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFk
PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0i
Y29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0
ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0
cy9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1hdC1ydWxlLXZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1
bGUtdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNDhk
ZGRhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsMTI4ICswLDAgQEAKLVRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtp
dC1maWx0ZXIuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUZpbHRlciBhdC1ydWxlIHRlc3RzLgotPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBydWxlLCBzZXBh
cmF0ZWQgYnkgc2luZ2xlIHNwYWNlcy4KLUAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Ci1Q
QVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NS
dWxlIGluc3RhbmNlb2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUu
Y29uc3RydWN0b3IgPT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxl
Ll9fcHJvdG9fXyA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotCi1FbXB0eSBydWxlLCBzZXBhcmF0ZWQgYnkgbXVs
dGlwbGUgc3BhY2VzLgotICAgQC13ZWJraXQtZmlsdGVyICAgbXktZmlsdGVyICAgeyAgIH0gICAK
LVBBU1MgY3NzUnVsZS5jc3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNz
c1J1bGUgaW5zdGFuY2VvZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVs
ZS5jb25zdHJ1Y3RvciA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1
bGUuX19wcm90b19fID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi0KLUVtcHR5IHJ1bGUsIG5vIGV4dHJhIHdoaXRl
c3BhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVye30KLVBBU1MgY3NzUnVsZS5jc3NUZXh0
IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNzc1J1bGUgaW5zdGFuY2VvZiBXZWJL
aXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9PT0gV2Vi
S2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90b19fID09PSBXZWJL
aXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi0KLVJ1bGUgd2l0aCBhcmJpdHJhcnkgcHJvcGVydGllcy4KLUAtd2Via2l0LWZpbHRl
ciBteS1maWx0ZXIgeyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IH0KLVBBU1MgY3NzUnVs
ZS5jc3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgd2lkdGg6IDEwMHB4OyBo
ZWlnaHQ6IDEwMHB4OyB9IgotUEFTUyBjc3NSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMg
dHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlz
IHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnd2lkdGgn
KSBpcyAiMTAwcHgiCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2hlaWdodCcp
IGlzICIxMDBweCIKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDIKLQotRW1wdHkgcnVsZSwg
Y29tbWVudCBzZXBhcmF0b3JzCi1ALXdlYmtpdC1maWx0ZXIvKiovbXktZmlsdGVyLyoqL3sgfQot
UEFTUyBjc3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Igot
UEFTUyBjc3NSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1MgY3Nz
UnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxl
LmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVs
ZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJvdG90eXBlIGlzIHRydWUKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLQotRW1wdHkgcnVsZSwgY29tbWVudCtzcGFjZSBz
ZXBhcmF0b3JzCi1ALXdlYmtpdC1maWx0ZXIvKiovIG15LWZpbHRlci8qKi8geyB9Ci1QQVNTIGNz
c1J1bGUuY3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NSdWxlIGlu
c3RhbmNlb2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29uc3Ry
dWN0b3IgPT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLl9fcHJv
dG9fXyA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotCi1FbXB0eSBydWxlLCBzcGFjZStjb21tZW50IHNlcGFyYXRv
cnMKLUAtd2Via2l0LWZpbHRlciAvKiovbXktZmlsdGVyIC8qKi97IH0KLVBBU1MgY3NzUnVsZS5j
c3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNzc1J1bGUgaW5zdGFuY2Vv
ZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9
PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90b19fID09
PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi0KLUVtcHR5IHJ1bGUsIHNwYWNlK2NvbW1lbnQrc3BhY2Ugc2VwYXJhdG9y
cwotQC13ZWJraXQtZmlsdGVyIC8qKi8gbXktZmlsdGVyIC8qKi8geyB9Ci1QQVNTIGNzc1J1bGUu
Y3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1QQVNTIGNzc1J1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NSdWxlIGluc3RhbmNl
b2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29uc3RydWN0b3Ig
PT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLl9fcHJvdG9fXyA9
PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci1OZXN0ZWQgZmlsdGVyIGF0LXJ1bGUgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU5lc3RlZCBydWxlLgotQC13ZWJraXQtZmlsdGVyIHBhcmVudC1m
aWx0ZXIgeyBALXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSB9Ci1QQVNTIGNzc1J1bGUu
Y3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IgotUEFTUyBjc3NS
dWxlLnR5cGUgaXMgMTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1
bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJS
dWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1
bGUucHJvdG90eXBlIGlzIHRydWUKLQotVHdpY2UgbmVzdGVkIHJ1bGUuCi1ALXdlYmtpdC1maWx0
ZXIgcGFyZW50LWZpbHRlciB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyBALXdlYmtp
dC1maWx0ZXIgZ3JhbmRjaGlsZC1maWx0ZXIgfSB9Ci1QQVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAi
QC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IgotUEFTUyBjc3NSdWxlLnR5cGUgaXMg
MTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQot
UEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUK
LVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJvdG90eXBl
IGlzIHRydWUKLQotTmVzdGVkIHJ1bGUgaW5zaWRlIGFyYml0cmFyeSBydWxlLgotQGZvbnQtZmFj
ZSB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IH0KLVBBU1MgY3NzUnVsZS5jc3NU
ZXh0IGlzICJAZm9udC1mYWNlIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDUKLVBBU1MgY3Nz
UnVsZSBpbnN0YW5jZW9mIENTU0ZvbnRGYWNlUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29u
c3RydWN0b3IgPT09IENTU0ZvbnRGYWNlUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90
b19fID09PSBDU1NGb250RmFjZVJ1bGUucHJvdG90eXBlIGlzIHRydWUKLQotTmVzdGVkIHJ1bGUg
aW5zaWRlIG1lZGlhIHF1ZXJ5LgotQG1lZGlhIHNjcmVlbiB7IEAtd2Via2l0LWZpbHRlciBjaGls
ZC1maWx0ZXIgeyB9IH0KLVBBU1MgY3NzUnVsZS5jc3NUZXh0IGlzICJAbWVkaWEgc2NyZWVuIHsg
XG4gIEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9XG59IgotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgNAotUEFTUyBjc3NSdWxlIGluc3RhbmNlb2YgQ1NTTWVkaWFSdWxlIGlzIHRydWUKLVBB
U1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9PT0gQ1NTTWVkaWFSdWxlIGlzIHRydWUKLVBBU1MgY3Nz
UnVsZS5fX3Byb3RvX18gPT09IENTU01lZGlhUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBj
c3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IgotUEFT
UyBjc3NSdWxlLnR5cGUgaXMgMTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0Zp
bHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NG
aWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0Zp
bHRlclJ1bGUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFy
c2luZy1hdC1ydWxlLXZhbGlkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk4
YTM5YTQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRo
LWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVsZS12YWxpZC5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsMTMgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRN
TC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3Jp
cHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3Nj
cmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1p
bnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1pbnZhbGlkLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODQ4YTlmZi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFy
c2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSw2MzcgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiBjdXN0b20oKSBmdW5jdGlvbiBv
ZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUN1c3Rv
bSBmdW5jdGlvbiB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLQotRW1wdHkgY3VzdG9tIGZ1bmN0aW9uLgotY3VzdG9tKCkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1PbmUgY29tbWEgaW4gY3VzdG9tIGZ1bmN0aW9uLgotY3VzdG9tKCwpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTXVsdGlwbGUgY29tbWFzIGluIGN1c3RvbSBmdW5jdGlvbi4KLWN1c3RvbSgs
LCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci1GaWx0ZXIgbmFtZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLQotTm8gZmlsdGVyIG5hbWUgd2l0aCBwYXJhbWV0ZXIuCi1jdXN0b20o
biAxKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IGZpbHRlciBuYW1lcy4KLWN1c3Rv
bShteS1maWx0ZXItMSBteS1maWx0ZXItMikKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1GaWx0ZXIg
bmFtZSBhcyBzdHJpbmcuCi1jdXN0b20oJ215LWZpbHRlci0xJykKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1GaWx0ZXIgbmFtZSBhcyBudW1iZXIuCi1jdXN0b20oMSkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1TcGFjZSBiZXR3ZWVuIGZpbHRlciBuYW1lIGFuZCBwYXJhbWV0ZXIuCi1jdXN0b20obXkt
ZmlsdGVyIG4gMSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVz
LgotY3VzdG9tKG15LWZpbHRlciwgbiAxIDIgMyA0IDUpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
SW52YWxpZCBwYXJhbWV0ZXIgdHlwZS4KLWN1c3RvbShteS1maWx0ZXIsIG4gMS4wIDIuMCAndGV4
dCcpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gYWZ0ZXIg
Y29tbWEuCi1jdXN0b20obXktZmlsdGVyLCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJh
bWV0ZXIgZGVmaW5pdGlvbiB3aXRoIHR3byBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCwpCi1Q
QVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gYmVmb3JlIHZhbGlk
IHBhcmFtZXRlciBkZWZpbnRpb24uCi1jdXN0b20obXktZmlsdGVyLCAsIG4gMSkKLVBBU1Mgc3R5
bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVy
JykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUuCi1jdXN0b20obXktZmlsdGVyLCBuKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHBhcmFtZXRlciB2YWx1ZSB3aXRoIG11bHRpcGxlIHBh
cmFtZXRlcnMuCi1jdXN0b20obXktZmlsdGVyLCBuMSwgbjIsIG4zKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUNvbG9yIHBh
cmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LQotTm8gcmdiIGNvbG9yIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIGMgcmdiKCwsKSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1ObyBoc2wgY29sb3IgdmFsdWVzLgotY3VzdG9tKG15LWZpbHRl
ciwgYyBoc2woLCwpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUhleCB3aXRoIDggY2hhcmFjdGVy
cy4KLWN1c3RvbShteS1maWx0ZXIsIGMgI0ZGMDAwMEZGKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LUhleCB3aXRoIDIgY2hhcmFjdGVyLgotY3VzdG9tKG15LWZpbHRlciwgYyAjRkYpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpIGlzIG51bGwKLQotUmdiYSB3aXRoIDMgdmFsdWVzIGFuZCAyIGNvbW1hcy4KLWN1c3RvbSht
eS1maWx0ZXIsIGMgcmdiYSgyNTUsIDAsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIg
dGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBp
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1y
b3RhdGUoMGRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTXVsdGlwbGUgaW52YWxpZCB0cmFu
c2Zvcm0gZnVuY3Rpb25zLgotY3VzdG9tKG15LWZpbHRlciwgdCBpbnZhbGlkLXJvdGF0ZSgwZGVn
KSBpbnZhbGlkLXBlcnNwZWN0aXZlKDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQg
dHJhbnNmb3JtIGZ1bmN0aW9uIGJldHdlZW4gdmFsaWQgb25lcy4KLWN1c3RvbShteS1maWx0ZXIs
IHQgcm90YXRlKDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApKQotUEFT
UyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIGludmFs
aWQgb25lcy4KLWN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUoMGRlZykgcGVyc3Bl
Y3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENT
U1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVmFs
aWQgdHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGhvdXQgbGVhZGluZyBjb21tYS4KLWN1c3RvbShteS1m
aWx0ZXIgdCBwZXJzcGVjdGl2ZSgwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFu
c2Zvcm0gZnVuY3Rpb24gd2l0aCB0cmFpbGluZyBjb21tYS4KLWN1c3RvbShteS1maWx0ZXIsIHQg
cGVyc3BlY3RpdmUoMCksKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JV
TEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBm
dW5jdGlvbiB3aXRoIHRyYWlsaW5nIGNvbW1hIGFuZCB3aXRob3V0IGxlYWRpbmcgY29tbWEuCi1j
dXN0b20obXktZmlsdGVyIHQgcGVyc3BlY3RpdmUoMCksKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LUludmFsaWQgdHJhbnNmb3JtIHdpdGggdHJhaWxpbmcgY29tbWEuCi1jdXN0b20obXktZmlsdGVy
LCB0IGludmFsaWQtcm90YXRlKDBkZWcpLCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHRyYW5zZm9ybSB3aXRob3V0IGxlYWRpbmcgY29tbWEuCi1jdXN0b20obXktZmlsdGVyIHQgaW52
YWxpZF9yb3RhdGUoMGRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVf
UlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3Jt
IHdpdGggaW52YWxpZCBjaGFyYWN0ZXJzCi1jdXN0b20obXktZmlsdGVyLHQgcm90YXRlKDBkZWcp
ICouLSwpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1PbmUgY29tbWEgaW4gYXJyYXkuCi1j
dXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRp
cGxlIGNvbW1hcyBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCwsKSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1NdWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5
LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgsLDEsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci1PbmUgY29tbWEgZm9sbG93ZWQgYnkgYSBuZWdhdGl2ZSB2YWx1ZSBpbiBhcnJheS4KLWN1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoLC00KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1PbmUgY29t
bWEgZm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoLDQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBuZWdhdGl2ZSB2YWx1ZSBmb2xsb3dl
ZCBieSBhIGNvbW1hIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgtNCwpKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFy
cmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSg0LCkpCi1QQVNTIHN0eWxlUnVsZS50eXBl
IGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxp
ZCB2YWx1ZXMgZm9sbG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KDEsIDIsIDMsIDQsIHgpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVR3byBjb21t
YXMgYXMgc2VwYXJhdG9yIGJldHdlZW4gdmFsdWVzIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgxLCAyLCAsIDQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNU
WUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUxlYWRpbmcgY29t
bWEgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwxLCAyLCAzLCA0KSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheS4K
LWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMTsgMjsgMzsgNCkpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoMSAyIDMgNCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVf
UlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVk
IHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KDEgMiAzIDQsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0
ZWQgdmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoLCAxIDIgMyA0KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1OYU4gaW4gYXJyYXku
Ci1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KE5hTikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
TmFOIGJldHdlZW4gdmFsaWQgdmFsdWVzIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBh
cnJheSgxLCAyLCBOYU4sIDMpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUg
J25vbmUnIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheShub25lKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheS4KLWN1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHZhbHVlIHVuaXQgJ2RlZycgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDFk
ZWcpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFy
cmF5IGFmdGVyIHZhbGlkIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwg
MywgNHB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1wdHkgbWF0Mi4KLWN1c3RvbShteS1maWx0ZXIs
IGEgbWF0MigpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyB2aWV3IGFyZ3VtZW50cy4KLWN1
c3RvbShteS1maWx0ZXIsIGEgbWF0MigwLCAwLCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1O
byBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigsLCwpKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBh
IG1hdDIoMCwgMCwsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JZGVudHMgaW4gbWF0MiBmdW5j
dGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigwLCAwLCBhLCBiKSkKLVBBU1Mgc3R5bGVS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIo
MCwgMCwgMCwgMCwgMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVM
RQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gY29tbWFzLgotY3VzdG9t
KG15LWZpbHRlciwgYSBtYXQyKDEgMCAwIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVNvbWUg
Y29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDEsIDAsIDAgMSkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTGVhZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIoLCAw
LCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBsZW5ndGggdW5pdHMuCi1jdXN0b20o
bXktZmlsdGVyLCBhIG1hdDIoMXB4LCAwcHgsIDBweCwgMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1ObyBkZWdyZWUgdW5pdHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMWRlZywgMGRl
ZywgMGRlZywgMWRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVM
RQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTmFOIGluIG1hdDIuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDIoMSwgMCwgMCwgTmFOKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQzIHBhcmFtZXRl
ciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1w
dHkgbWF0My4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygpKQotUEFTUyBzdHlsZVJ1bGUudHlw
ZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVRvbyB2aWV3IGFyZ3VtZW50cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygwLCAwLCAw
LCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLWN1
c3RvbShteS1maWx0ZXIsIGEgbWF0MygsLCwsLCwsLCwsLCwsLCwpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JZGVudHMgaW4gbWF0MyBmdW5j
dGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCBhLCBi
KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSwgMCkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTm8gY29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEgMCAwIDAg
MSAwIDAgMCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Tb21lIGNvbW1hcy4KLWN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwIDAgMCAxKSkKLVBBU1Mgc3R5bGVSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
bnVsbAotCi1MZWFkaW5nIGNvbW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygsIDAsIDAs
IDAsIDEsIDAsIDAsIDAsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0
cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxcHgsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwg
MXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBkZWdyZWUgdW5pdHMuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMWRlZywgMCwgMCwgMCwgMWRlZywgMCwgMCwgMCwgMWRlZykpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTmFOIGluIG1hdDMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIo
TmFOLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQ0IHBhcmFtZXRlciB0ZXN0
cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1wdHkgbWF0
NC4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRv
byB2aWV3IGFyZ3VtZW50cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgxLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNv
bW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgsLCwsLCwsLCwsLCwsLCwpKQotUEFTUyBz
dHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyBudWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQo
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwsKSkKLVBBU1Mgc3R5bGVS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1JZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAxLCAwLCAwLCBhLCBiKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1U
b28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCkpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotTm8gY29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEgMCAwIDAgMCAxIDAg
MCAwIDAgMSAwIDAgMCAwIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVNvbWUgY29tbWFzLgot
Y3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEs
IDAgMCAwIDAgMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTGVhZGluZyBjb21tYXMuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDQoLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBsZW5ndGggdW5pdHMuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDQoMXB4LCAwLCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDAsIDFw
eCwgMCwgMCwgMCwgMCwgMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBkZWdyZWUgdW5p
dHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMWRlZywgMCwgMCwgMCwgMCwgMWRlZywgMCwg
MCwgMCwgMCwgMWRlZywgMCwgMCwgMCwgMCwgMWRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
TmFOIGluIG1hdDQuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoTmFOLCAwLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NaXhpbmcgcGFyYW1ldGVy
IHR5cGVzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1OdW1i
ZXIgcGFyYW1ldGVyIHdpdGggaGV4IGNvbG9yLgotY3VzdG9tKG15LWZpbHRlciwgbjEgMSAyICNG
RjAwMDApCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTnVtYmVyIHBhcmFtZXRlciB3aXRoIGNvbG9y
IGtleXdvcmQuCi1jdXN0b20obXktZmlsdGVyLCBuMSAxIDIgcmVkKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLU51bWJlciBwYXJhbWV0ZXIgd2l0aCByZ2IgY29sb3IuCi1jdXN0b20obXktZmlsdGVy
LCBuMSAxIDIgcmdiKDI1NSwgMCwgMCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUu
U1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQ29sb3Igd2l0
aCBudW1iZXIgcGFyYW1ldGVyLgotY3VzdG9tKG15LWZpbHRlciwgYSByZ2IoMjU1LCAwLCAwKSAx
KQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUNvbG9yIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgwLCByZ2IoMjU1LCAwLCAwKSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENT
U1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQ29s
b3IgYW5kIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgwLCAwKSByZ2IoMjU1LCAw
LCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIHRyYW5zZm9ybSB2YWx1ZXMu
Ci1jdXN0b20obXktZmlsdGVyLCBhIHJvdGF0ZSg0NWRlZykgcmdiKDI1NSwgMCwgMCkpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotQ29sb3Igd2l0aCB0cmFuc2Zvcm0gdmFsdWVzLgotY3VzdG9tKG15
LWZpbHRlciwgYSByZ2IoMjU1LCAwLCAwKSByb3RhdGUoNDVkZWcpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLUNvbG9yIHdpdGggbWF0Mi4KLWN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwgMCwg
MCkgbWF0MigwLCAwLCAwLCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1tYXQyIHdpdGggbWF0
My4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigxLCAwLCAwLCAxKSBtYXQzKDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JV
TEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi1QQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1
bmN0aW9uLWludmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1pbnZhbGlkLmh0bWwKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZkZTRjZDMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3Vz
dG9tLWZ1bmN0aW9uLWludmFsaWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAK
LTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBp
ZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBz
cmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3Nj
cmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24t
aW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2lu
Zy1jdXN0b20tZnVuY3Rpb24tdmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9u
LXZhbGlkLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWU0NTcw
MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQtZXhwZWN0ZWQudHh0Cisr
KyAvZGV2L251bGwKQEAgLTEsNDc3ICswLDAgQEAKLVRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1
c3RvbSgpIGZ1bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4KLQotT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotQ3VzdG9tIGZ1bmN0aW9uIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotCi1DdXN0b20gZnVuY3Rpb24gaW4gQ0FQUy4KLUNVU1RPTSht
eS1maWx0ZXIpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVy
KScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotRmlsdGVyIGNo
YWluIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1D
dXN0b20gZnVuY3Rpb24gaW4gbWlkZGxlIG9mIGZpbHRlciBjaGFpbi4KLWdyYXlzY2FsZSgpIGN1
c3RvbShteS1maWx0ZXIpIHNlcGlhKCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdncmF5c2Nh
bGUoKSBjdXN0b20obXktZmlsdGVyKSBzZXBpYSgpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVy
dHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUKLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnZ3JheXNjYWxlKCknCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3Vi
VmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9TRVBJQQotUEFTUyBz
dWJWYWx1ZS5jc3NUZXh0IGlzICdzZXBpYSgpJwotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1GaWx0ZXIgbmFtZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLQotRmlsdGVyIG5hbWUgb25seS4KLWN1c3RvbShteS1maWx0
ZXIpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyKScKLQot
RmlsdGVyIG5hbWUgYXMgQ1NTICdub25lJyBrZXl3b3JkLgotY3VzdG9tKG5vbmUpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG5vbmUpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVy
dHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3Vi
VmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG5vbmUpJwotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1JbnRlZ2VyIHBhcmFtZXRlcnMuCi1jdXN0
b20obXktZmlsdGVyLCBuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3KQotUEFTUyBz
dHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG4xIDEsIG4yIDIgMywgbjMgMyA0
IDUsIG40IDQgNSA2IDcpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9
PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBp
cyAnY3VzdG9tKG15LWZpbHRlciwgbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNykn
Ci0KLUZsb2F0IHBhcmFtZXRlcnMuCi1jdXN0b20obXktZmlsdGVyLCBuMSAxLjEsIG4yIDIuMiAz
LjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbjEgMS4xLCBuMiAyLjIgMy4zLCBuMyAzLjEgNC4x
IDUuMSwgbjQgNC4xIDUuMiA2LjMgNy40KScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0
YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVl
LmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG4xIDEuMSwgbjIgMi4yIDMuMywgbjMgMy4x
IDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCknCi0KLVBhcmFtZXRlciBuYW1lIHNhbWUgYXMg
Q1NTIGtleXdvcmQuCi1jdXN0b20obXktZmlsdGVyLCBiYWNrZ3JvdW5kIDAgMSAwIDEpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgYmFja2dyb3VuZCAwIDEgMCAx
KScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1
ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1m
aWx0ZXIsIGJhY2tncm91bmQgMCAxIDAgMSknCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLUNvbG9yIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotSGV4IGNvbG9yLgotY3VzdG9tKG15LWZpbHRlciwg
YyAjMDBGRjAwKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGMg
cmdiKDAsIDI1NSwgMCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9
PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBp
cyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwgMjU1LCAwKSknCi0KLUNvbG9yIGtleXdvcmQu
Ci1jdXN0b20obXktZmlsdGVyLCBjIGdyZWVuKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDEyOCwgMCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwgMTI4LCAwKSkn
Ci0KLUNvbG9yIHJnYiBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDEyOCwg
MCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwg
MTI4LCAwKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0g
Q1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
bGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0
b20obXktZmlsdGVyLCBjIHJnYigwLCAxMjgsIDApKScKLQotQ29sb3IgaHNsIGZ1bmN0aW9uLgot
Y3VzdG9tKG15LWZpbHRlciwgYyBoc2woMTIwLCAxMDAlLCA1MCUpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpJwotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5
cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1
YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2Io
MCwgMjU1LCAwKSknCi0KLUNvbG9yIHJnYmEgZnVuY3Rpb24uCi1jdXN0b20obXktZmlsdGVyLCBj
IHJnYmEoMCwgMjU1LCAwLCAwLjIpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNU
WUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbSht
eS1maWx0ZXIsIGMgcmdiYSgwLCAyNTUsIDAsIDAuMikpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2JhKDAsIDI1NSwgMCwg
MC4yKSknCi0KLUNvbG9yIGhzbGEgZnVuY3Rpb24uCi1jdXN0b20obXktZmlsdGVyLCBjIGhzbGEo
MTIwLCAxMDAlLCA1MCUsIDAuMikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZ
TEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15
LWZpbHRlciwgYyByZ2JhKDAsIDI1NSwgMCwgMC4yKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9w
ZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBz
dWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAwLCAw
LjIpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotVHJhbnNm
b3JtIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLQotVHJhbnNmb3JtIHBhcmFtZXRlciB3aXRoIG9uZSB0cmFuc2Zvcm0gZnVuY3Rpb24u
Ci1jdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzICdjdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSknCi1QQVNTIGZpbHRlclByb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9w
ZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0
cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVn
KSknCi0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSB0cmFuc2Zvcm0gZnVuY3Rp
b25zLgotY3VzdG9tKG15LWZpbHRlciwgdCByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2Nh
bGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdj
dXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAw
KSB0cmFuc2xhdGUoMHB4LCAwcHgpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5j
ZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3Ry
dWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVy
UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNz
c1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDAp
IHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkpJwotCi1NdWxpdHBsZSB0cmFuc2Zvcm0g
cGFyYW1ldGVycy4KLWN1c3RvbShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRl
KDBkZWcpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQxIHJv
dGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBp
bnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5
VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
ZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25U
eXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZh
bHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90
YXRlKDBkZWcpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
QXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotCi1BcnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScuCi1jdXN0b20obXkt
ZmlsdGVyLCBhcnJheSBhcnJheSgxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20o
bXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNv
bnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1
ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSknCi0KLUFycmF5
IHBhcmFtZXRlciB3aXRoIG9uZSBwb3NpdGl2ZSBpbnRlZ2VyLgotY3VzdG9tKG15LWZpbHRlciwg
YSBhcnJheSgxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBh
IGFycmF5KDEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSkpJwotCi1BcnJheSBwYXJhbWV0ZXIgd2l0aCBvbmUg
bmVnYXRpdmUgZmxvYXQuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KC0xLjAxKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KC0xLjAxKSknCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KC0xLjAxKSknCi0KLUFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHBvc2l0
aXZlIGludGVnZXJzLgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAzLCA0LCA1KSkK
LVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIs
IDMsIDQsIDUpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgMywgNCwgNSkpJwotCi1BcnJheSBwYXJhbWV0
ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRzLgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJh
eSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSknCi1QQVNTIGZpbHRl
clByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
VmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NV
U1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5
KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkpJwotCi1NdWx0aXBsZSBhcnJheSBwYXJhbWV0ZXJzLgot
Y3VzdG9tKG15LWZpbHRlciwgYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJy
YXkoMSwgMiwgMykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwg
YTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykpJwotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5w
cm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwg
YTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykpJwotCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0
ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MiBw
YXJhbWV0ZXIuCi1jdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgMCwgMCwgMSkpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKDEsIDAsIDAsIDEpKScK
LVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0
ZXIsIG0gbWF0MigxLCAwLCAwLCAxKSknCi0KLU1hdDIgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUg
dmFsdWVzLgotY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAtMSwgLTEsIC0xKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIC0xLCAtMSwg
LTEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NW
YWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbSht
eS1maWx0ZXIsIG0gbWF0MigtMSwgLTEsIC0xLCAtMSkpJwotCi1NYXQyIHBhcmFtZXRlciB3aXRo
IG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuCi1jdXN0b20obXktZmlsdGVyLCBtIG1hdDIo
LTEsIDEsIDEsIC0xKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVy
LCBtIG1hdDIoLTEsIDEsIDEsIC0xKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFu
Y2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0
cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRl
clByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5j
c3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIDEsIDEsIC0xKSknCi0KLU1h
dDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLWN1c3RvbShteS1maWx0
ZXIsIG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpKScKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJf
Q1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0
MigxLCAtMi4yLCAzLjE0LCAwLjQpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotTWF0MyBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0KLU1hdDMgcGFyYW1ldGVyLgotY3VzdG9tKG15LWZpbHRlciwg
bSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSkn
Ci1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVM
aXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmls
dGVyLCBtIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkpJwotCi1NYXQzIHBhcmFtZXRl
ciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdj
dXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlz
IHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1Zh
bHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15
LWZpbHRlciwgbSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpKScKLQot
TWF0MyBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotY3VzdG9t
KG15LWZpbHRlciwgbSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIDEsIDEsIC0x
LCAtMSwgMSwgMSwgLTEsIDEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19w
cm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1Rl
eHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAt
MSwgMSkpJwotCi1NYXQzIHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuCi1j
dXN0b20obXktZmlsdGVyLCBtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0
LCAwLjQsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0g
bWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSkpJwotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
ZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90
b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBt
YXQzKDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxKSknCi0KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDQgcGFyYW1ldGVyIHRlc3Rz
LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1NYXQ0IHBhcmFt
ZXRlci4KLWN1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20o
bXktZmlsdGVyLCBtIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
Lmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmls
dGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3Vz
dG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEpKScKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1j
dXN0b20obXktZmlsdGVyLCBtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSknCi0K
LU1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5kIHBvc2l0aXZlIHZhbHVlcy4KLWN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEs
IC0xLCAtMSwgMSwgMSwgLTEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1m
aWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAt
MSwgMSwgMSwgLTEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEs
IDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEpKScKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBs
ZSBzaWduZWQgZmxvYXRzLgotY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIC0yLjIsIDMuMTQs
IDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMu
MTQsIDAuNCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBt
YXQ0KDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0
LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5
cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFs
dWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQs
IDAuNCkpJwotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1Db21i
aW5lZCBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJhbnNmb3JtIHBh
cmFtZXRlciwgbWF0cml4IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4KLWN1c3RvbSht
eS1maWx0ZXIsIG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIo
MSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQo
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXko
MSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbiAxLCBjIHJn
YigwLCAxMjgsIDApLCB0IHJvdGF0ZSgwZGVnKSwgbTEgbWF0MigxLCAwLCAwLCAxKSwgbTIgbWF0
MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSwgbTMgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSwgYSBhcnJheSgxKSknCi1QQVNTIGZpbHRlclBy
b3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFs
dWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBuIDEsIGMgcmdi
KDAsIDEyOCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAsIDEpLCBtMiBtYXQz
KDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFycmF5KDEpKScKLVBBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1jdXN0
b20tZnVuY3Rpb24tdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12YWxpZC5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNjliNWExLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1
c3RvbS1mdW5jdGlvbi12YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAot
PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlk
PSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNy
Yz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12
YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1n
ZW9tZXRyeS1wcm9wZXJ0eS1pbnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3Bl
cnR5LWludmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBh
OTFlOTk5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQtZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTUxICswLDAgQEAKLVRlc3QgZ2VvbWV0cnkgcHJv
cGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLUdlb21ldHJ5IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotCi1ObyBwcm9wZXJ0eSB2YWx1ZS4KLWdlb21ldHJ5OiA7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotRW1wdHkgZ3JpZC4KLWdlb21ldHJ5OiBncmlkKCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotTWlzcGVsbGVkIGdyaWQgZnVu
Y3Rpb24uCi1nZW9tZXRyeTogZ3JpaWQoMSAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5Jykg
aXMgbnVsbAotCi1TaW5nbGUgbmVnYXRpdmUgdmFsdWUgaW4gZ3JpZC4KLWdlb21ldHJ5OiBncmlk
KC0xKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1OZWdhdGl2ZSB2YWx1
ZSBpbiBncmlkIGFsb25nIHdpdGggYSB2YWxpZCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKDEgLTEp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLU5lZ2F0aXZlIHZhbHVlIGlu
IGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4KLWdlb21ldHJ5OiBncmlk
KC0xIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLVR3byBuZWdhdGl2
ZSB2YWx1ZXMuCi1nZW9tZXRyeTogZ3JpZCgtMSAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRy
eScpIGlzIG51bGwKLQotU2luZ2xlIHplcm8gdmFsdWUuCi1nZW9tZXRyeTogZ3JpZCgwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1aZXJvIHdpdGggYSB2YWxpZCB2YWx1
ZS4KLWdlb21ldHJ5OiBncmlkKDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51
bGwKLQotWmVybyB3aXRoIGEgdmFsaWQgdmFsdWUsIGludmVydGVkLgotZ2VvbWV0cnk6IGdyaWQo
MSAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1BdHRhY2hlZCB2YWx1
ZSBhbG9uZS4KLWdlb21ldHJ5OiBncmlkKGF0dGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21l
dHJ5JykgaXMgbnVsbAotCi1EZXRhY2hlZCB2YWx1ZSBhbG9uZS4KLWdlb21ldHJ5OiBncmlkKGRl
dGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1EZXRhY2hlZCBh
bmQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZChhdHRhY2hlZCBhdHRhY2hlZCk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotVG9vIG1hbnkgdmFsdWVzLgotZ2VvbWV0cnk6
IGdyaWQoMSAxIGF0dGFjaGVkIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5Jykg
aXMgbnVsbAotCi1NaXNwZWxsZWQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZCgxIDEgYXR0YWNk
KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1NaXNwZWxsZWQgZGV0YWNo
ZWQuCi1nZW9tZXRyeTogZ3JpZCgxIDEgZGV0YWNoZSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRy
eScpIGlzIG51bGwKLQotSW52YWxpZCBkaXZpZGVyLgotZ2VvbWV0cnk6IGdyaWQoMSwgMSBhdHRh
Y2hlZCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotSW52YWxpZCBkaXZp
ZGVyLCByZWxvYWRlZC4KLWdlb21ldHJ5OiBncmlkKDEgMSwgYXR0YWNoZWQpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLU5vbiBpbnRlZ2VyIHZhbHVlcy4KLWdlb21ldHJ5
OiBncmlkKDEuMyAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1Ob24g
aW50ZWdlciB2YWx1ZXMuCi1nZW9tZXRyeTogZ3JpZCgxIDEuMyk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdn
ZW9tZXRyeScpIGlzIG51bGwKLQotVGhyZWUgaW50ZWdlcnMuCi1nZW9tZXRyeTogZ3JpZCgxIDIg
Myk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotQXR0YWNoZWQgaW4gYmV0
d2VlbiB0d28gaW50ZWdlcnMuCi1nZW9tZXRyeTogZ3JpZCgxIGF0dGFjaGVkIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLURldGFjaGVkIGluIGJldHdlZW4gdHdvIGlu
dGVnZXJzLgotZ2VvbWV0cnk6IGdyaWQoMSBkZXRhY2hlZCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dl
b21ldHJ5JykgaXMgbnVsbAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggNjRmNzhhYi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1p
bnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9u
Ij48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQt
dGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktaW52YWxpZC5qcyI+
PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1w
cm9wZXJ0eS12YWxpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12YWxpZC1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDMwZmJkN2IuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsMTEzICswLDAgQEAKLVRlc3QgZ2VvbWV0cnkgcHJvcGVydHkgcGFyc2luZyBp
biB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUdlb21l
dHJ5IHByb3BlcnR5LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
Ci1HZW9tZXRyeSB3aXRoIGZ1bGwgbWVzaCBhbmQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZCgx
IDEgYXR0YWNoZWQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBp
cyAiMSAxIGF0dGFjaGVkIgotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBnZW9tZXRy
eVByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDMKLQotR2VvbWV0cnkgd2l0aCBmdWxsIG1lc2ggYW5k
IGRldGFjaGVkLgotZ2VvbWV0cnk6IGdyaWQoMSAxIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSkgaXMgIjEgMSBkZXRhY2hlZCIKLVBBU1MgZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2Vv
bWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi0K
LUdlb21ldHJ5IHdpdGggZnVsbCBtZXNoIGFuZCBubyBhdHRhY2hlZCwgbm9yIGRldGFjaGVkLgot
Z2VvbWV0cnk6IGdyaWQoMSAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0
cnknKSkgaXMgIjEgMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19w
cm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAyCi0KLUdlb21ldHJ5IHdpdGggb25seSBvbmUgbWVzaCB2
YWx1ZS4KLWdlb21ldHJ5OiBncmlkKDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdn
ZW9tZXRyeScpKSBpcyAiMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2Yg
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVj
dG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi0KLUdlb21ldHJ5IHdpdGggb25lIG1lc2ggdmFs
dWUgYW5kIGF0dGFjaGVkLgotZ2VvbWV0cnk6IGdyaWQoMSBhdHRhY2hlZCk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykpIGlzICIxIGF0dGFjaGVkIgotUEFTUyBnZW9t
ZXRyeVByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBn
ZW9tZXRyeVByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5w
cm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIK
LQotR2VvbWV0cnkgd2l0aCBvbmUgbWVzaCB2YWx1ZSBhbmQgZGV0YWNoZWQuCi1nZW9tZXRyeTog
Z3JpZCgxIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnkn
KSkgaXMgIjEgZGV0YWNoZWQiCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotCi1HZW9tZXRyeSB3aXRoIGF0dGFjaGVkIGJl
Zm9yZSBvbmUgbWVzaCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKGF0dGFjaGVkIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBpcyAiYXR0YWNoZWQgMSIKLVBBU1Mg
Z2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBp
cyAyCi0KLUdlb21ldHJ5IHdpdGggYXR0YWNoZWQgYmVmb3JlIHR3byBtZXNoIHZhbHVlcy4KLWdl
b21ldHJ5OiBncmlkKGF0dGFjaGVkIDEgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J2dlb21ldHJ5JykpIGlzICJhdHRhY2hlZCAxIDEiCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1
ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQ
cm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwotCi1HZW9tZXRyeSB3aXRo
IGRldGFjaGVkIGJlZm9yZSBvbmUgbWVzaCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKGRldGFjaGVk
IDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBpcyAiZGV0YWNo
ZWQgMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZh
bHVlLmxlbmd0aCBpcyAyCi0KLUdlb21ldHJ5IHdpdGggZGV0YWNoZWQgYmVmb3JlIHR3byBtZXNo
IHZhbHVlcy4KLWdlb21ldHJ5OiBncmlkKGRldGFjaGVkIDEgMSk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykpIGlzICJkZXRhY2hlZCAxIDEiCi1QQVNTIGdlb21ldHJ5
UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwotUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LXZhbGlkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0
eS12YWxpZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNzY3YjAyLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LXZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVh
ZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48
L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5n
LWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmct
Z2VvbWV0cnktcHJvcGVydHktdmFsaWQuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1
bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
bWl4LXByb3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBjMGQzOWVhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDU1ICswLDAgQEAKLVRlc3QgbWl4IHByb3Bl
cnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgotCi1PbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci1WYWx1ZSB0ZXN0LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1ObyBwcm9wZXJ0eSB2YWx1ZS4KLW1peDogOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4Jykg
aXMgbnVsbAotCi1UaHJlZSB2YWx1ZXMuCi1taXg6IHNjcmVlbiBzb3VyY2Utb3ZlciBzY3JlZW47
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSBpcyBudWxsCi0KLVRocmVlIHZhbHVlcy4KLW1peDogc2Ny
ZWVuIHNvdXJjZS1vdmVyIHNvdXJjZS1vdmVyOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykgaXMgbnVs
bAotCi1Ud28gYmxlbmQgbW9kZXMuCi1taXg6IHNjcmVlbiBzY3JlZW47Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdtaXgnKSBpcyBudWxsCi0KLVR3byBjb21wb3NpdGUgb3BlcmF0b3JzLgotbWl4OiBzb3VyY2Ut
b3ZlciBzb3VyY2Utb3ZlcjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpIGlzIG51bGwKLQotVHdvIGJs
ZW5kIG1vZGVzLgotbWl4OiBzY3JlZW4gc2NyZWVuOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykgaXMg
bnVsbAotCi1Db21tYSBiZXR3ZWVuIHZhbHVlcy4KLW1peDogc2NyZWVuLCBzb3VyY2Utb3ZlcjsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ21peCcpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktaW52
YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZjkxZDFlMi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktaW52
YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+
Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+
PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRl
c3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBz
cmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxp
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYzhjZjAzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1w
cm9wZXJ0eS12YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwzOTMgKzAsMCBA
QAotVGVzdCBtaXggcHJvcGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1
bGUuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLVRlc3QgYmxlbmQgbW9kZSBrZXl3b3Jkcy4KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotVGVzdCBtdWx0aXBseS4KLW1p
eDogbXVsdGlwbHk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJ
TFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibXVs
dGlwbHkiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibXVsdGlwbHkiCi0KLVRl
c3Qgc2NyZWVuLgotbWl4OiBzY3JlZW47Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21p
eCcpKSBpcyAic2NyZWVuIgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlU
SVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNjcmVl
biIKLQotVGVzdCBvdmVybGF5LgotbWl4OiBvdmVybGF5OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdtaXgnKSkgaXMgIm92ZXJsYXkiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFu
Y2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVj
dG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJv
dG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVl
LkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0
KSBpcyAib3ZlcmxheSIKLQotVGVzdCBkYXJrZW4uCi1taXg6IGRhcmtlbjsKLVBBU1MgZmlsdGVy
QXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJkYXJrZW4iCi1QQVNTIG1peFByb3BlcnR5VmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVl
LmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlz
IENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1
ZS5jc3NUZXh0KSBpcyAiZGFya2VuIgotCi1UZXN0IGxpZ2h0ZW4uCi1taXg6IGxpZ2h0ZW47Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibGlnaHRlbiIKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFBy
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NW
YWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJsaWdodGVuIgotCi1UZXN0IGNvbG9yLWRvZGdlLgot
bWl4OiBjb2xvci1kb2RnZTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlz
ICJjb2xvci1kb2RnZSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NW
YWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElW
RV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjb2xvci1k
b2RnZSIKLQotVGVzdCBjb2xvci1idXJuLgotbWl4OiBjb2xvci1idXJuOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImNvbG9yLWJ1cm4iCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAiY29sb3ItYnVybiIKLQotVGVzdCBoYXJkLWxpZ2h0LgotbWl4OiBo
YXJkLWxpZ2h0OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImhhcmQt
bGlnaHQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiaGFyZC1saWdodCIKLQot
VGVzdCBzb2Z0LWxpZ2h0LgotbWl4OiBzb2Z0LWxpZ2h0OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdtaXgnKSkgaXMgInNvZnQtbGlnaHQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0
cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NU
ZXh0KSBpcyAic29mdC1saWdodCIKLQotVGVzdCBkaWZmZXJlbmNlLgotbWl4OiBkaWZmZXJlbmNl
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImRpZmZlcmVuY2UiCi1Q
QVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZGlmZmVyZW5jZSIKLQotVGVzdCBleGNs
dXNpb24uCi1taXg6IGV4Y2x1c2lvbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4
JykpIGlzICJleGNsdXNpb24iCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0g
Q1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklN
SVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZXhj
bHVzaW9uIgotCi1UZXN0IGh1ZS4KLW1peDogaHVlOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdtaXgnKSkgaXMgImh1ZSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BS
SU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJo
dWUiCi0KLVRlc3Qgc2F0dXJhdGlvbi4KLW1peDogc2F0dXJhdGlvbjsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJzYXR1cmF0aW9uIgotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgInNhdHVyYXRpb24iCi0KLVRlc3QgY29sb3IuCi1taXg6IGNvbG9yOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImNvbG9yIgotUEFTUyBtaXhQ
cm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImNvbG9yIgotCi1UZXN0IGx1bWlub3NpdHkuCi1taXg6
IGx1bWlub3NpdHk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJ
TFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibHVt
aW5vc2l0eSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxV
RQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJsdW1pbm9zaXR5Igot
Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1UZXN0IGNvbXBvc2l0
ZSBrZXl3b3Jkcy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQot
VGVzdCBjbGVhci4KLW1peDogY2xlYXI7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21p
eCcpKSBpcyAiY2xlYXIiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1
ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NT
VmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJ
VkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiY2xlYXIi
Ci0KLVRlc3QgY29weS4KLW1peDogY29weTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
bWl4JykpIGlzICJjb3B5IgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlU
SVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImNvcHki
Ci0KLVRlc3Qgc291cmNlLW92ZXIuCi1taXg6IHNvdXJjZS1vdmVyOwotUEFTUyBmaWx0ZXJBdFJ1
bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1vdmVyIgotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotCi1UZXN0IHNvdXJjZS1pbi4KLW1peDogc291
cmNlLWluOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1p
biIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzb3VyY2UtaW4iCi0KLVRlc3Qg
c291cmNlLW91dC4KLW1peDogc291cmNlLW91dDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnbWl4JykpIGlzICJzb3VyY2Utb3V0IgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNl
b2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3Rv
ciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgInNvdXJjZS1vdXQiCi0KLVRlc3Qgc291cmNlLWF0b3AuCi1taXg6IHNvdXJjZS1hdG9wOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1hdG9wIgotUEFT
UyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1hdG9wIgotCi1UZXN0IGRlc3Rp
bmF0aW9uLW92ZXIuCi1taXg6IGRlc3RpbmF0aW9uLW92ZXI7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ21peCcpKSBpcyAiZGVzdGluYXRpb24tb3ZlciIKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFs
dWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZh
bHVlLmNzc1RleHQpIGlzICJkZXN0aW5hdGlvbi1vdmVyIgotCi1UZXN0IGRlc3RpbmF0aW9uLWlu
LgotbWl4OiBkZXN0aW5hdGlvbi1pbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4
JykpIGlzICJkZXN0aW5hdGlvbi1pbiIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NT
X1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlz
ICJkZXN0aW5hdGlvbi1pbiIKLQotVGVzdCBkZXN0aW5hdGlvbi1vdXQuCi1taXg6IGRlc3RpbmF0
aW9uLW91dDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNl
VVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJkZXN0aW5h
dGlvbi1vdXQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVM
aXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFM
VUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZGVzdGluYXRpb24t
b3V0IgotCi1UZXN0IGRlc3RpbmF0aW9uLWF0b3AuCi1taXg6IGRlc3RpbmF0aW9uLWF0b3A7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAiZGVzdGluYXRpb24tYXRvcCIK
LVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJW
YWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJkZXN0aW5hdGlvbi1hdG9wIgotCi1U
ZXN0IHhvci4KLW1peDogeG9yOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkg
aXMgInhvciIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxV
RQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ4b3IiCi0KLUJsZW5k
IG1vZGUgYW5kIGNvbXBvc2l0ZSB0b2dldGhlci4KLW1peDogc2NyZWVuIHNvdXJjZS1vdmVyOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNjcmVlbiBzb3VyY2Utb3Zl
ciIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzY3JlZW4iCi1QQVNTIHN1YlZh
bHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotCi1Db21wb3Np
dGUgYW5kIGJsZW5kIG1vZGUgdG9nZXRoZXIuCi1taXg6IHNvdXJjZS1vdmVyIHNjcmVlbjsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJzb3VyY2Utb3ZlciBzY3JlZW4i
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3Vi
VmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAic291cmNlLW92ZXIiCi1QQVNTIHN1
YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNjcmVlbiIKLQotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQ2FwaXRhbGl6YXRpb24gdGVzdHMuCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUFsbCB0b2tlbnMgY2Fw
aXRhbGl6ZWQuCi1taXg6IFNDUkVFTiBTT1VSQ0UtT1ZFUjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnbWl4JykpIGlzICJzY3JlZW4gc291cmNlLW92ZXIiCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAic2NyZWVuIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMg
Q1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVl
LmNzc1RleHQpIGlzICJzb3VyY2Utb3ZlciIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotV2hpdGVzcGFjZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLQotRXh0cmEgbGVhZGluZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcg
d2hpdGVzcGFjZS4gCi1taXg6ICAgIHNjcmVlbiAgIHNvdXJjZS1vdmVyICAgOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNjcmVlbiBzb3VyY2Utb3ZlciIKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlz
IHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFTUyBzdWJWYWx1ZS5j
c3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzY3JlZW4iCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9w
ZXJ0eS12YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0
LXJ1bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LXZhbGlkLmh0bWwKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwODM5NjkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5
LXZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9u
Ij48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQt
dGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctbWl4LXByb3BlcnR5LXZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVy
dHktaW52YWxpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
LXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQt
ZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMTdhZTQyLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC1leHBlY3RlZC50eHQKKysr
IC9kZXYvbnVsbApAQCAtMSw1NjkgKzAsMCBAQAotVGVzdCBwYXJhbWV0ZXJzIHByb3BlcnR5IHBh
cnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgotCi1PbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVzLgotcGFyYW1ldGVyczogbiAx
IDIgMyA0IDU7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1JbnZhbGlk
IHBhcmFtZXRlciB0eXBlLgotcGFyYW1ldGVyczogbiAxLjAgMi4wICd0ZXh0JzsKLVBBU1MgZmls
dGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIHBhcmFtZXRlciBkZWZpbml0aW9uLgot
cGFyYW1ldGVyczogOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8g
cGFyYW1ldGVyIGRlZmluaXRpb24gd2l0aCBjb21tYS4KLXBhcmFtZXRlcnM6ICw7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgZGVmaW5pdGlvbiBi
ZWZvcmUgdmFsaWQgcGFyYW1ldGVyIGRlZmludGlvbi4KLXBhcmFtZXRlcnM6ICwgbiAxOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIHZhbHVlLgot
cGFyYW1ldGVyczogbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5v
IHBhcmFtZXRlciB2YWx1ZSB3aXRoIG11bHRpcGxlIHBhcmFtZXRlcnMuCi1wYXJhbWV0ZXJzOiBu
MSwgbjIsIG4zOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQ29sb3IgcGFyYW1ldGVyIHRlc3Rz
LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1ObyByZ2IgY29s
b3IgdmFsdWVzLgotcGFyYW1ldGVyczogYyByZ2IoLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotTm8gaHNsIGNvbG9yIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGMgaHNs
KCwsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUhleCB3aXRoIDgg
Y2hhcmFjdGVycy4KLXBhcmFtZXRlcnM6IGMgI0ZGMDAwMEZGOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFy
YW1ldGVycycpIGlzIG51bGwKLQotSGV4IHdpdGggMiBjaGFyYWN0ZXIuCi1wYXJhbWV0ZXJzOiBj
ICNGRjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVJnYmEgd2l0aCAz
IHZhbHVlcyBhbmQgMiBjb21tYXMuCi1wYXJhbWV0ZXJzOiBjIHJnYmEoMjU1LCAwLCAwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBpbnZhbGlkIHRyYW5zZm9y
bSBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUoMGRlZyk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1NdWx0aXBsZSBpbnZhbGlkIHRyYW5zZm9y
bSBmdW5jdGlvbnMuCi1wYXJhbWV0ZXJzOiB0IGludmFsaWQtcm90YXRlKDBkZWcpIGludmFsaWQt
cGVyc3BlY3RpdmUoMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1J
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuCi1wYXJhbWV0ZXJz
OiB0IHJvdGF0ZSgwZGVnKSBpbnZhbGlkLXJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBmdW5j
dGlvbiBiZXR3ZWVuIGludmFsaWQgb25lcy4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUo
MGRlZykgcGVyc3BlY3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gd2l0aCB0
cmFpbGluZyBjb21tYS4KLXBhcmFtZXRlcnM6IHQgcGVyc3BlY3RpdmUoMCksOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSW52YWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFp
bGluZyBjb21tYS4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUoMGRlZyksOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3JtIHdpdGggaW52
YWxpZCBjaGFyYWN0ZXJzCi1wYXJhbWV0ZXJzOiB0IHJvdGF0ZSgwZGVnKSAqLi0sOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBhcnJheS4KLXBhcmFtZXRlcnM6IGEg
YXJyYXkoKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBjb21t
YSBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoLCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJh
bWV0ZXJzJykgaXMgbnVsbAotCi1NdWx0aXBsZSBjb21tYXMgaW4gYXJyYXkuCi1wYXJhbWV0ZXJz
OiBhIGFycmF5KCwsLCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1N
dWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJh
eSgsLDEsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBjb21t
YSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBh
cnJheSgsLTQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotT25lIGNv
bW1hIGZvbGxvd2VkIGJ5IGEgdmFsdWUgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KCw0
KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBuZWdhdGl2ZSB2
YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgt
NCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotT25lIHZhbHVlIGZv
bGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDQsKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVZhbGlkIHZhbHVlcyBmb2xsb3dl
ZCBieSBhIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxLCAyLCAzLCA0LCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1WYWxpZCB2YWx1ZXMgZm9s
bG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDEsIDIsIDMs
IDQsIHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotVHdvIGNvbW1h
cyBhcyBzZXBhcmF0b3IgYmV0d2VlbiB2YWx1ZXMgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFy
cmF5KDEsIDIsICwgNCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1M
ZWFkaW5nIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgsMSwgMiwgMywgNCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2VwYXJh
dGVkIHZhbHVlcyBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMTsgMjsgMzsgNCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQgdmFs
dWVzIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxIDIgMyA0KTsKLVBBU1MgZmlsdGVy
QXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgd2l0aCBj
b21tYSB0ZXJtaW5hdG9yIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxIDIgMyA0LCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQg
dmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXko
LCAxIDIgMyA0KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5hTiBp
biBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoTmFOKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFt
ZXRlcnMnKSBpcyBudWxsCi0KLU5hTiBiZXR3ZWVuIHZhbGlkIHZhbHVlcyBpbiBhcnJheS4KLXBh
cmFtZXRlcnM6IGEgYXJyYXkoMSwgMiwgTmFOLCAzKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgJ25vbmUnIGluIGFycmF5LgotcGFyYW1ldGVy
czogYSBhcnJheShub25lKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0K
LUludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgx
cHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSW52YWxpZCB2YWx1
ZSB1bml0ICdkZWcnIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxZGVnKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgdW5pdCAncHgn
IGluIGFycmF5IGFmdGVyIHZhbGlkIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMSwgMiwg
MywgNHB4KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDIgcGFyYW1ldGVyIHRlc3RzLgot
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQyLgot
cGFyYW1ldGVyczogYSBtYXQyKCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVs
bAotCi1Ub28gdmlldyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMCwgMCwgMCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNv
bW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MigsLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MigwLCAwLCwp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSWRlbnRzIGluIG1hdDIg
ZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMCwgMCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJz
OiBhIG1hdDIoMCwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMg
bnVsbAotCi1ObyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMSAwIDAgMSk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Tb21lIGNvbW1hcy4KLXBhcmFtZXRlcnM6
IGEgbWF0MigxLCAwLCAwIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTGVhZGluZyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoLCAwLCAwLCAxKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0cy4KLXBhcmFt
ZXRlcnM6IGEgbWF0MigxcHgsIDBweCwgMHB4LCAxcHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotTm8gZGVncmVlIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQyKDFk
ZWcsIDBkZWcsIDBkZWcsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTmFOIGluIG1hdDIuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMSwgMCwgMCwgTmFOKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLU1hdDMgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQzLgotcGFyYW1ldGVyczog
YSBtYXQzKCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gdmll
dyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMCwgMCwgMCwgMCk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLXBh
cmFtZXRlcnM6IGEgbWF0MygsLCwsLCwsLCwsLCwsLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MygxLCAw
LCAwLCAwLCAxLCAwLCAwLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotSWRlbnRzIGluIG1hdDMgZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAot
Ci1Ub28gbWFueSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSwgMCwgMCwgMCwgMSwg
MCwgMCwgMCwgMSwgMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1O
byBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSAwIDAgMCAxIDAgMCAwIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotU29tZSBjb21tYXMuCi1wYXJhbWV0ZXJz
OiBhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCAwIDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0
ZXJzJykgaXMgbnVsbAotCi1MZWFkaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MygsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTm8gbGVuZ3RoIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQzKDFweCwgMCwgMCwgMCwg
MXB4LCAwLCAwLCAwLCAxcHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTm8gZGVncmVlIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQzKDFkZWcsIDAsIDAsIDAsIDFk
ZWcsIDAsIDAsIDAsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTmFOIGluIG1hdDMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoTmFOLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDQgcGFyYW1ldGVyIHRlc3RzLgot
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQ0Lgot
cGFyYW1ldGVyczogYSBtYXQ0KCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVs
bAotCi1Ub28gdmlldyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1O
byBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgsLCwsLCwsLCwsLCws
LCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1h
cy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSWRlbnRz
IGluIG1hdDQgZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwgMSwgMCwg
MCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gbWFu
eSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykg
aXMgbnVsbAotCi1ObyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSAwIDAgMCAwIDEgMCAw
IDAgMCAxIDAgMCAwIDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAot
Ci1Tb21lIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAwLCAxLCAwIDAgMCAwIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTGVhZGluZyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoLCAwLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0cy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxcHgs
IDAsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAxcHgpOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gZGVncmVlIHVuaXRzLgotcGFy
YW1ldGVyczogYSBtYXQ0KDFkZWcsIDAsIDAsIDAsIDAsIDFkZWcsIDAsIDAsIDAsIDAsIDFkZWcs
IDAsIDAsIDAsIDAsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTmFOIGluIG1hdDQuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoTmFOLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMn
KSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1p
eGluZyBwYXJhbWV0ZXIgdHlwZXMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIgd2l0aCBoZXggY29sb3IuCi1wYXJhbWV0ZXJzOiBu
MSAxIDIgI0ZGMDAwMDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU51
bWJlciBwYXJhbWV0ZXIgd2l0aCBjb2xvciBrZXl3b3JkLgotcGFyYW1ldGVyczogbjEgMSAyIHJl
ZDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU51bWJlciBwYXJhbWV0
ZXIgd2l0aCByZ2IgY29sb3IuCi1wYXJhbWV0ZXJzOiBuMSAxIDIgcmdiKDI1NSwgMCwgMCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIG51bWJlciBw
YXJhbWV0ZXIuCi1wYXJhbWV0ZXJzOiBhIHJnYigyNTUsIDAsIDApIDE7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEg
YXJyYXkoMCwgcmdiKDI1NSwgMCwgMCkpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlz
IG51bGwKLQotQ29sb3IgYW5kIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgwLCAwKSByZ2Io
MjU1LCAwLCAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgcm90YXRlKDQ1ZGVnKSByZ2Io
MjU1LCAwLCAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgcmdiKDI1NSwgMCwgMCkgcm90
YXRlKDQ1ZGVnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IGFmdGVyIGFycmF5IHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMCkgcmdiKDI1NSwgMCwg
MCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIG1h
dDIuCi1wYXJhbWV0ZXJzOiBhIHJnYigyNTUsIDAsIDApIG1hdDIoMCwgMCwgMCwgMCk7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1tYXQyIHdpdGggbWF0My4KLXBhcmFt
ZXRlcnM6IGEgbWF0MigxLCAwLCAwLCAxKSBtYXQzKDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0
ZXJzLXByb3BlcnR5LWludmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxp
ZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmZDVmYzQ1Li4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+
Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1j
b21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLXBh
cmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA3ZWU3MGJhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMt
cHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNDQxICswLDAg
QEAKLVRlc3QgcGFyYW1ldGVycyBwcm9wZXJ0eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0
ZXIgYXQtcnVsZS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTnVtYmVyIHBhcmFtZXRlciB0ZXN0cy4K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotSW50ZWdlciBwYXJh
bWV0ZXJzLgotcGFyYW1ldGVyczogbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNzsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAibjEgMSwgbjIg
MiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNyIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUg
aW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDQKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4xIDEiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVl
VHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZh
bHVlLmNzc1RleHQpIGlzICJuMiAyIDMiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBD
U1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJuMyAzIDQgNSIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVl
LkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMg
Im40IDQgNSA2IDciCi0KLUZsb2F0IHBhcmFtZXRlcnMuCi1wYXJhbWV0ZXJzOiBuMSAxLjEsIG4y
IDIuMiAzLjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQ7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm4xIDEuMSwgbjIgMi4yIDMuMywg
bjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
cGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDQKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4xIDEuMSIKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4yIDIuMiAzLjMiCi1QQVNTIHN1YlZhbHVlLmNz
c1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlZhbHVlLmNzc1RleHQpIGlzICJuMyAzLjEgNC4xIDUuMSIKLVBBU1Mgc3ViVmFsdWUuY3Nz
VmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViVmFsdWUuY3NzVGV4dCkgaXMgIm40IDQuMSA1LjIgNi4zIDcuNCIKLQotUGFyYW1ldGVyIG5h
bWUgc2FtZSBhcyBDU1Mga2V5d29yZC4KLXBhcmFtZXRlcnM6IGJhY2tncm91bmQgMCAxIDAgMTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYmFja2dyb3Vu
ZCAwIDEgMCAxIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5j
c3NUZXh0KSBpcyAiYmFja2dyb3VuZCAwIDEgMCAxIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1UcmFuc2Zvcm0gcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1UcmFuc2Zvcm0gcGFyYW1ldGVyIHdp
dGggb25lIHRyYW5zZm9ybSBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IHQgcm90YXRlKDBkZWcpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJ0IHJvdGF0ZSgw
ZGVnKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90
b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENT
U1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgInQgcm90YXRlKDBkZWcpIgotCi1UcmFuc2Zvcm0gcGFyYW1ldGVyIHdpdGggbXVsdGlw
bGUgdHJhbnNmb3JtIGZ1bmN0aW9ucy4KLXBhcmFtZXRlcnM6IHQgcm90YXRlKDBkZWcpIHBlcnNw
ZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgInQgcm90YXRlKDBkZWcpIHBlcnNwZWN0
aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkiCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ0IHJvdGF0ZSgwZGVnKSBw
ZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIgotCi1NdWxpdHBs
ZSB0cmFuc2Zvcm0gcGFyYW1ldGVycy4KLXBhcmFtZXRlcnM6IHQxIHJvdGF0ZSgwZGVnKSwgdDIg
cm90YXRlKDBkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykp
IGlzICJ0MSByb3RhdGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVnKSIKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInQxIHJvdGF0ZSgwZGVnKSIK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInQyIHJvdGF0ZSgwZGVnKSIK
LQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1l
dGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1B
cnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScuCi1wYXJhbWV0ZXJzOiBhcnJheSBhcnJh
eSgxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYXJy
YXkgYXJyYXkoMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFt
ZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVl
LmNzc1RleHQpIGlzICJhcnJheSBhcnJheSgxKSIKLQotQXJyYXkgcGFyYW1ldGVyIHdpdGggb25l
IHBvc2l0aXZlIGludGVnZXIuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDEpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJhIGFycmF5KDEpIgotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVl
TGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVF
X0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYSBhcnJheSgx
KSIKLQotQXJyYXkgcGFyYW1ldGVyIHdpdGggb25lIG5lZ2F0aXZlIGZsb2F0LgotcGFyYW1ldGVy
czogYSBhcnJheSgtMS4wMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSkgaXMgImEgYXJyYXkoLTEuMDEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBp
bnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1
ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYSBhcnJheSgtMS4wMSkiCi0KLUFycmF5IHBhcmFt
ZXRlciB3aXRoIG11bHRpcGxlIHBvc2l0aXZlIGludGVnZXJzLgotcGFyYW1ldGVyczogYSBhcnJh
eSgxLCAyLCAzLCA0LCA1KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpKSBpcyAiYSBhcnJheSgxLCAyLCAzLCA0LCA1KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBl
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImEgYXJyYXkoMSwgMiwgMywgNCwgNSki
Ci0KLUFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuCi1wYXJhbWV0
ZXJzOiBhIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIKLQotTXVsdGlwbGUgYXJyYXkgcGFy
YW1ldGVycy4KLXBhcmFtZXRlcnM6IGExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSksIGEy
IGFycmF5KDEsIDIsIDMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJz
JykpIGlzICJhMSBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCBhMiBhcnJheSgxLCAyLCAz
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgImExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkiCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlZhbHVlLmNzc1RleHQpIGlzICJhMiBhcnJheSgxLCAyLCAzKSIKLQotPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotQ29sb3IgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1IZXggY29sb3IuCi1wYXJhbWV0
ZXJzOiBjICMwMEZGMDA7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMn
KSkgaXMgImMgcmdiKDAsIDI1NSwgMCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFs
dWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAyNTUsIDApIgotCi1Db2xvciBrZXl3
b3JkLgotcGFyYW1ldGVyczogYyBncmVlbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
cGFyYW1ldGVycycpKSBpcyAiYyByZ2IoMCwgMTI4LCAwKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
cGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImMgcmdiKDAsIDEyOCwgMCkiCi0K
LUNvbG9yIHJnYiBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IGMgcmdiKDAsIDEyOCwgMCk7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImMgcmdiKDAsIDEyOCwg
MCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9f
XyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9w
ZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NW
YWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQp
IGlzICJjIHJnYigwLCAxMjgsIDApIgotCi1Db2xvciBoc2wgZnVuY3Rpb24uCi1wYXJhbWV0ZXJz
OiBjIGhzbCgxMjAsIDEwMCUsIDUwJSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3Bh
cmFtZXRlcnMnKSkgaXMgImMgcmdiKDAsIDI1NSwgMCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAyNTUsIDApIgotCi1D
b2xvciByZ2JhIGZ1bmN0aW9uLgotcGFyYW1ldGVyczogYyByZ2JhKDAsIDI1NSwgMCwgMC4yKTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYyByZ2JhKDAs
IDI1NSwgMCwgMC4yKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVU
eXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiCi0KLUNvbG9yIGhzbGEgZnVu
Y3Rpb24uCi1wYXJhbWV0ZXJzOiBjIGhzbGEoMTIwLCAxMDAlLCA1MCUsIDAuMik7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImMgcmdiYSgwLCAyNTUsIDAs
IDAuMikiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJv
dG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBD
U1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJjIHJnYmEoMCwgMjU1LCAwLCAwLjIpIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MiBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJz
OiBtIG1hdDIoMSwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFt
ZXRlcnMnKSkgaXMgIm0gbWF0MigxLCAwLCAwLCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBl
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0MigxLCAwLCAwLCAxKSIKLQot
TWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDIo
LTEsIC0xLCAtMSwgLTEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJz
JykpIGlzICJtIG1hdDIoLTEsIC0xLCAtMSwgLTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlW
YWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9w
ZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQyKC0xLCAtMSwgLTEsIC0xKSIK
LQotTWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotcGFy
YW1ldGVyczogbSBtYXQyKC0xLCAxLCAxLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MigtMSwgMSwgMSwgLTEpIgotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlz
dC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJ
U1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQyKC0xLCAx
LCAxLCAtMSkiCi0KLU1hdDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4K
LXBhcmFtZXRlcnM6IG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpOwotUEFTUyBmaWx0ZXJBdFJ1
bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1NYXQzIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MyBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJz
OiBtIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAw
LCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90
b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENT
U1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgIm0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSIKLQotTWF0MyBwYXJhbWV0
ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDMoLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3Bh
cmFtZXRlcnMnKSkgaXMgIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSIKLQotTWF0MyBw
YXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotcGFyYW1ldGVyczog
bSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAibSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEs
IDEsIC0xLCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3Rv
ciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUu
Y3NzVGV4dCkgaXMgIm0gbWF0MygtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgMSkiCi0KLU1h
dDMgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLXBhcmFtZXRlcnM6IG0g
bWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MygxLCAtMi4yLCAz
LjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtIG1hdDMoMSwgLTIuMiwgMy4xNCwg
MC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1NYXQ0IHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0NCBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJzOiBt
IG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0NCgxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBw
YXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9M
SVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0NCgxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIKLQotTWF0NCBwYXJh
bWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDQoLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJtIG1hdDQoLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NT
VmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0
KSBpcyAibSBtYXQ0KC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xKSIKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQg
cG9zaXRpdmUgdmFsdWVzLgotcGFyYW1ldGVyczogbSBtYXQ0KC0xLCAxLCAxLCAtMSwgLTEsIDEs
IDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVy
dHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBw
YXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5
cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQ0KC0xLCAxLCAxLCAtMSwg
LTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSkiCi0KLU1hdDQgcGFyYW1l
dGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLXBhcmFtZXRlcnM6IG0gbWF0NCgxLCAt
Mi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAx
LCAtMi4yLCAzLjE0LCAwLjQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0
ZXJzJykpIGlzICJtIG1hdDQoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQs
IDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40KSIKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNU
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0NCgxLCAtMi4y
LCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAt
Mi4yLCAzLjE0LCAwLjQpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci1Db21iaW5lZCBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJh
bnNmb3JtIHBhcmFtZXRlciwgbWF0cml4IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4K
LXBhcmFtZXRlcnM6IG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1h
dDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1h
dDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJy
YXkoMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm4g
MSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIoMSwgMCwgMCwgMSks
IG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQoMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXkoMSkiCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFs
dWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxl
bmd0aCBpcyA3Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFM
VUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJuIDEiCi1Q
QVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAxMjgsIDApIgot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidCByb3RhdGUoMGRlZykiCi1Q
QVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtMSBtYXQyKDEsIDAsIDAsIDEp
IgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibTIgbWF0MygxLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAxKSIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSkiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElT
VAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJhIGFycmF5KDEpIgot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMt
cHJvcGVydHktdmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTQ4ZDNk
MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+
Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRl
ci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3Rz
L3BhcnNpbmctcGFyYW1ldGVycy1wcm9wZXJ0eS12YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
LXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDMwYjg4Y2QuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctc3JjLXByb3BlcnR5
LWludmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTY1ICswLDAgQEAKLVRl
c3Qgc3JjIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgot
Ci1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1VUkwgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU5vIHByb3BlcnR5IHZhbHVlLgotc3JjOiA7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdzcmMnKSBpcyBudWxsCi0KLU9ubHkgYSBzaW5nbGUgY29tbWEuCi1zcmM6ICw7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLU9ubHkgdHdvIGNvbW1hcy4KLXNyYzogLCAsOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1JZGVudGlmaWVyIGluc3RlYWQgb2YgVVJM
Lgotc3JjOiB2ZXJ0ZXgtc2hhZGVyOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1J
ZGVudGlmaWVyIHdpdGggZm9ybWF0IGluc3RlYWQgb2YgVVJMIHdpdGggZm9ybWF0Lgotc3JjOiB2
ZXJ0ZXgtc2hhZGVyIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKTsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J3NyYycpIGlzIG51bGwKLQotTG9jYWwgZnVuY3Rpb24gaW5zdGVhZCBvZiBVUkwgZnVuY3Rpb24u
Ci1zcmM6IGxvY2FsKHNoYWRlci52cyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUZvcm1hdCBmdW5jdGlv
biB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotSWRl
bnRpZmllciBpbnN0ZWFkIG9mIGZvcm1hdCBmdW5jdGlvbi4KLXNyYzogdXJsKHNoYWRlci52cykg
dmVydGV4LXNoYWRlcjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotU3RyaW5nIGlu
c3RlYWQgb2YgZm9ybWF0IGZ1bmN0aW9uLgotc3JjOiB1cmwoc2hhZGVyLnZzKSAneC1zaGFkZXIv
eC12ZXJ0ZXgnOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Gb3JtYXQgZnVuY3Rp
b24gbWlzc3BlbGxlZC4KLXNyYzogdXJsKHNoYWRlci52cykgZnJtdCgneC1zaGFkZXIveC12ZXJ0
ZXgnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotRm9ybWF0IGZ1bmN0aW9uIGVt
cHR5Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycp
IGlzIG51bGwKLQotRm9ybWF0IGZ1bmN0aW9uIHdpdGggc2luZ2xlIGlkZW50aWZlciBhcmd1bWVu
dC4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KHZlcnRleC1zaGFkZXIpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Gb3JtYXQgZnVuY3Rpb24gd2l0aCBzaW5nbGUgbnVtYmVy
IGFyZ3VtZW50Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoMCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdzcmMnKSBpcyBudWxsCi0KLUZvcm1hdCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIHNwYWNlLXNl
cGFyYXRlZCBpZGVudGlmZXIgYXJndW1lbnRzLgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
dmVydGV4LXNoYWRlciBmcmFnbWVudC1zaGFkZXIpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMg
bnVsbAotCi1Gb3JtYXQgZnVuY3Rpb24gd2l0aCBtdWx0aXBsZSBjb21tYS1zZXBhcmF0ZWQgaWRl
bnRpZmVyIGFyZ3VtZW50cy4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KHZlcnRleC1zaGFk
ZXIsZnJhZ21lbnQtc2hhZGVyKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotRm9y
bWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUgc3BhY2Utc2VwYXJhdGVkIHN0cmluZyBhcmd1bWVu
dHMuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnICd4LXNo
YWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLUZvcm1h
dCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIGNvbW1hLXNlcGFyYXRlZCBzdHJpbmcgYXJndW1lbnRz
Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JywneC1zaGFk
ZXIveC1mcmFnbWVudCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1NdWx0aXBs
ZSB2YWxpZCBmb3JtYXQgZnVuY3Rpb25zLgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gt
c2hhZGVyL3gtdmVydGV4JykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLVB1bmN0dWF0aW9uIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotCi1MZWFkaW5nIGNvbW1hIGJlZm9yZSBmaXJzdCBVUkwuCi1zcmM6ICwg
dXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnc3JjJykgaXMgbnVsbAotCi1Db21tYSBiZXR3ZWVuIFVSTCBhbmQgZm9ybWF0Lgotc3JjOiB1
cmwoc2hhZGVyLnZzKSwgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnc3JjJykgaXMgbnVsbAotCi1UcmFpbGluZyBjb21tYSBhZnRlciBmb3JtYXQuCi1zcmM6IHVy
bChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSw7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdzcmMnKSBpcyBudWxsCi0KLVR3byBjb21tYXMgYmV0d2VlbiBVUkxzLgotc3JjOiB1cmwoc2hh
ZGVyLnZzKSwsdXJsKHNoYWRlci5mcyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0K
LVR3byBjb21tYXMgYmV0d2VlbiBVUkxzIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZz
KSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksLHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1z
aGFkZXIveC1mcmFnbWVudCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1ObyBj
b21tYSBiZXR3ZWVuIFVSTHMuCi1zcmM6IHVybChzaGFkZXIudnMpIHVybChzaGFkZXIuZnMpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1ObyBjb21tYSBiZXR3ZWVuIFVSTHMgd2l0
aCBmb3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgn
KSB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKTsKLVBBU1MgZmls
dGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJ3NyYycpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQot
VEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC5odG1s
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3Bh
cnNpbmctc3JjLXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggN2EyNWMyMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4K
LTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRp
diBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3Rv
bS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlw
dC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLmpzIj48L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxpZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwY2I0NGY0Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12
YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwyNjkgKzAsMCBAQAotVGVzdCBz
cmMgcHJvcGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLVVSTHMgd2l0aG91dCBmb3JtYXQgdGVzdHMuCi09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBVUkwgd2l0aG91dCBmb3JtYXQuCi1z
cmM6IHVybChzaGFkZXIudnMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkg
aXMgInVybChzaGFkZXIudnMpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIgotCi1Ud28gVVJMcyB3aXRob3V0
IGZvcm1hdC4KLXNyYzogdXJsKHNoYWRlci52cyksIHVybChzaGFkZXIuZnMpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVy
LmZzKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLnZzKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1
ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVl
Ci1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykiCi0KLVRo
cmVlIFVSTHMgd2l0aG91dCBmb3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVy
LmZzKSwgdXJsKHNoYWRlcjMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkg
aXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMpIgotUEFTUyBz
cmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3Jj
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
c3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMg
dHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChz
aGFkZXIudnMpIgotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBB
U1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyLmZzKSIKLVBBU1Mgc3ViVmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJv
dG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNT
U19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNo
YWRlcjMpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1VUkxz
IHdpdGggZm9ybWF0IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1PbmUgVVJMIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycp
KSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIgotUEFTUyBz
cmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3Jj
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
c3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMg
dHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChz
aGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIKLQotVHdvIFVSTHMgd2l0aCBm
b3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwg
dXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNo
YWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21l
bnQnKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiCi1QQVNT
IHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25z
dHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgInVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIgotCi1U
aHJlZSBVUkxzIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVu
dCcpLCB1cmwoc2hhZGVyMykgZm9ybWF0KCd1bmtub3duJyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZl
cnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJs
KHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3Rh
bmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3By
b3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMg
dHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1z
aGFkZXIveC12ZXJ0ZXgnKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0
cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNo
YWRlci94LWZyYWdtZW50JykiCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMg
dHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25v
d24nKSIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTWl4ZWQg
VVJMcyB3aXRoIGFuZCB3aXRob3V0IGZvcm1hdCB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLQotVGhyZWUgVVJMcy4gTWlkZGxlIFVSTCB3aXRob3V0IGZv
cm1hdC4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLCB1
cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1z
aGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vu
a25vd24nKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwot
UEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5
cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiCi1Q
QVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18g
PT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3Nz
VGV4dCkgaXMgInVybChzaGFkZXIuZnMpIgotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRy
dWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyMykgZm9ybWF0
KCd1bmtub3duJykiCi0KLVRocmVlIFVSTHMuIEZpcnN0IGFuZCBsYXN0IFVSTHMgd2l0aG91dCBm
b3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gt
c2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1
ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1
ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIKLVBB
U1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNv
bnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9
PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NU
ZXh0KSBpcyAidXJsKHNoYWRlcjMpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci1DYXBpdGFsaXphdGlvbiB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLQotQWxsIHRva2VucyBjYXBpdGFsaXplZC4KLXNyYzogVVJMKFNI
QURFUi5WUykgRk9STUFUKCdYLVNIQURFUi9YLVZFUlRFWCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChTSEFERVIuVlMpIGZvcm1hdCgnWC1TSEFERVIvWC1W
RVJURVgnKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5
cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJ1cmwoU0hBREVSLlZTKSBmb3JtYXQoJ1gtU0hBREVSL1gtVkVSVEVYJykiCi0K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVdoaXRlc3BhY2UgdGVz
dHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUV4dHJhIGxl
YWRpbmcsIG1pZGRsZSwgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UuIAotc3JjOiAgICB1cmwoc2hh
ZGVyLnZzKSAgIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSAgICwgICB1cmwoc2hhZGVyLmZz
KSAgIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpICAgOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12
ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiCi1Q
QVNTIHNyY1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBzcmNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBzcmNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFs
dWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAi
dXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIgotUEFTUyBzdWJWYWx1
ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1
ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFs
dWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1
cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIKLQotTm8gd2hpdGVz
cGFjZSBhcm91bmQgY29tbWEuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIv
eC12ZXJ0ZXgnKSx1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykpIGlzICJ1cmwoc2hhZGVyLnZzKSBm
b3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFk
ZXIveC1mcmFnbWVudCcpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAyCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBz
dWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNz
c1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
VmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0
ZXgnKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1
YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3Nz
VmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdt
ZW50JykiCi0KLU5vIHdoaXRlc3BhY2UgYmV0d2VlbiBVUkwgYW5kIGZvcm1hdC4KLXNyYzogdXJs
KHNoYWRlci52cylmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4Jyk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94
LXZlcnRleCcpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVl
TGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVl
VHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUu
Y3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxp
ZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2MGNmNWUzLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4K
LTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2Ny
aXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0
eS12YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0
LXRlc3RzL3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1
bGUtaW52YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDRlODIyNi4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1z
eW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsMzMgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNv
bW1vbi5qcy4KLQotZGVzY3JpcHRpb24oIlRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtp
dC1maWx0ZXIuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBo
ZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGNzc1J1bGUsIGluc2VydFJ1bGVFeGNlcHRpb247Ci0K
LWZ1bmN0aW9uIHRlc3RJbnZhbGlkRmlsdGVyQXRSdWxlKGRlc2NyaXB0aW9uLCBydWxlKQotewot
ICAgIGRlYnVnKCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBydWxlKTsKLQotICAgIHRyeSB7
Ci0gICAgICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZShydWxlLCAwKTsKLSAgICAgICAgdGVzdEZh
aWxlZCgiXCIiICsgcnVsZSArICJcIiBkaWQgbm90IHRocm93IGEgc3ludGF4IGVycm9yLiIpOwot
ICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAgICAgaW5zZXJ0UnVsZUV4Y2VwdGlvbiA9IGU7Ci0gICAg
ICAgIHNob3VsZEJlVHJ1ZSgiaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2Vw
dGlvbiIpOwotICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJpbnNlcnRSdWxlRXhjZXB0aW9uLmNv
ZGUiLCAiRE9NRXhjZXB0aW9uLlNZTlRBWF9FUlIiKQotICAgIH0KLX0KLQotaGVhZGluZygiRmls
dGVyIGF0LXJ1bGUgc3ltYm9sIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIlVu
cHJlZml4ZWQgcnVsZS4iLCAiQGZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci0KLWhlYWRpbmcoIkZp
bHRlciBuYW1lIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIk1pc3NpbmcgZmls
dGVyIG5hbWUgaWRlbnRpZmllci4iLCAiQC13ZWJraXQtZmlsdGVyIHsgfSIpOwotdGVzdEludmFs
aWRGaWx0ZXJBdFJ1bGUoIkZpbHRlciBuYW1lIGFzIHN0cmluZy4iLCAiQC13ZWJraXQtZmlsdGVy
ICdteS1maWx0ZXInIHsgfSIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIkZpbHRlciBuYW1l
IGFzIG51bWJlci4iLCAiQC13ZWJraXQtZmlsdGVyIDEyMyB7IH0iKTsKLQotaGVhZGluZygiRmls
dGVyIGF0LXJ1bGUgYm9keSB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyQXRSdWxlKCJNaXNz
aW5nIHJ1bGUgYm9keS4iLCAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciIpOwotdGVzdEludmFs
aWRGaWx0ZXJBdFJ1bGUoIk1pc3Npbmcgb3BlbmluZyBicmFjZS4iLCAiQC13ZWJraXQtZmlsdGVy
IG15LWZpbHRlciB9Iik7Ci10ZXN0SW52YWxpZEZpbHRlckF0UnVsZSgiTWlzc2luZyBjbG9zaW5n
IGJyYWNlLiIsICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsiKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQt
dGVzdHMvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1bGUt
dmFsaWQuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE4ZTU5OTYuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4
L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1bGUtdmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAt
MSwxMTkgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cy4KLQotZGVzY3JpcHRpb24oIlRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtpdC1maWx0
ZXIuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJz
IHRvIHNlZSB0aGVtLgotdmFyIGNzc1J1bGUsIGRlY2xhcmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0
RmlsdGVyQXRSdWxlKGRlc2NyaXB0aW9uLCBydWxlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFBy
b3BlcnRpZXMpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHJ1bGUp
OwotCi0gICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKHJ1bGUsIDApOwotCi0gICAgLy8gQ2hlY2sg
dGhlIHJ1bGUncyB0ZXh0IGFuZCB0eXBlLgotICAgIGNzc1J1bGUgPSBzdHlsZXNoZWV0LmNzc1J1
bGVzLml0ZW0oMCk7Ci0gICAgY2hlY2tSdWxlKGV4cGVjdGVkVmFsdWUsICJDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRSIsICJXZWJLaXRDU1NGaWx0ZXJSdWxlIik7Ci0KLSAgICAvLyBDaGVjayB0
aGUgcnVsZSdzIENTU1N0eWxlRGVjbGFyYXRpb24gcHJvcGVydGllcy4KLSAgICBkZWNsYXJhdGlv
biA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgaWYgKCFleHBlY3RlZFByb3BlcnRpZXMpCi0gICAgICAg
IGV4cGVjdGVkUHJvcGVydGllcyA9IFtdOwotICAgIHZhciBudW1Qcm9wZXJ0aWVzID0gMDsKLSAg
ICBmb3IgKHZhciBwcm9wZXJ0eU5hbWUgaW4gZXhwZWN0ZWRQcm9wZXJ0aWVzKSB7Ci0gICAgICAg
IHZhciBwcm9wZXJ0eVZhbHVlID0gZXhwZWN0ZWRQcm9wZXJ0aWVzW3Byb3BlcnR5TmFtZV07Ci0g
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnIiArIHByb3BlcnR5TmFtZSArICInKSIsIHByb3BlcnR5VmFsdWUpOwotICAgICAgICBudW1Q
cm9wZXJ0aWVzKys7Ci0gICAgfQotICAgIHNob3VsZEV2YWx1YXRlVG8oImRlY2xhcmF0aW9uLmxl
bmd0aCIsIG51bVByb3BlcnRpZXMpOwotfQotCi1mdW5jdGlvbiB0ZXN0TmVzdGVkUnVsZXMoZGVz
Y3JpcHRpb24sIHBhcmVudFJ1bGUsIHBhcmVudEV4cGVjdGF0aW9ucywgY2hpbGRFeHBlY3RhdGlv
bnMpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHBhcmVudFJ1bGUp
OwotCi0gICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKHBhcmVudFJ1bGUsIDApOwotCi0gICAgY3Nz
UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBjaGVja1J1bGUocGFyZW50
RXhwZWN0YXRpb25zLmNzc1RleHQsIHBhcmVudEV4cGVjdGF0aW9ucy5ydWxlVHlwZSwgcGFyZW50
RXhwZWN0YXRpb25zLmNvbnN0cnVjdG9yTmFtZSk7Ci0KLSAgICBpZiAoY2hpbGRFeHBlY3RhdGlv
bnMpIHsKLSAgICAgICAgY3NzUnVsZSA9IGNzc1J1bGUuY3NzUnVsZXNbMF07Ci0gICAgICAgIGNo
ZWNrUnVsZShjaGlsZEV4cGVjdGF0aW9ucy5jc3NUZXh0LCBjaGlsZEV4cGVjdGF0aW9ucy5ydWxl
VHlwZSwgY2hpbGRFeHBlY3RhdGlvbnMuY29uc3RydWN0b3JOYW1lKTsKLQotICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IGNzc1J1bGUuY3NzVGV4dC5sZW5ndGg7IGkrKykgewotICAgICAgICAg
ICAgaWYgKGNzc1J1bGUuY3NzVGV4dFtpXSAhPSBjaGlsZEV4cGVjdGF0aW9ucy5jc3NUZXh0W2ld
KQotICAgICAgICAgICAgICAgIHdpbmRvdy5hbGVydChpICsgIjogIiArIGNzc1J1bGUuY3NzVGV4
dFtpXSk7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLS8vIENoZWNrcyB0aGUgZ2xvYmFsICJjc3NS
dWxlIiBhZ2FpbnN0IHNvbWUgZXhwZWN0ZWQgcHJvcGVydGllcy4KLWZ1bmN0aW9uIGNoZWNrUnVs
ZShleHBlY3RlZENTU1RleHQsIGV4cGVjdGVkUnVsZVR5cGUsIGV4cGVjdGVkQ29uc3RydWN0b3JO
YW1lKQotewotICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiY3NzUnVsZS5jc3NUZXh0IiwgZXhw
ZWN0ZWRDU1NUZXh0KTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJjc3NSdWxlLnR5cGUiLCBleHBl
Y3RlZFJ1bGVUeXBlKTsKLSAgICBzaG91bGRIYXZlQ29uc3RydWN0b3IoImNzc1J1bGUiLCBleHBl
Y3RlZENvbnN0cnVjdG9yTmFtZSk7Ci19Ci0KLWhlYWRpbmcoIkZpbHRlciBhdC1ydWxlIHRlc3Rz
LiIpOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVsZSwgc2VwYXJhdGVkIGJ5IHNpbmdsZSBz
cGFjZXMuIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iLAotICAgICJALXdl
YmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIpOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVs
ZSwgc2VwYXJhdGVkIGJ5IG11bHRpcGxlIHNwYWNlcy4iLAotICAgICIgICBALXdlYmtpdC1maWx0
ZXIgICBteS1maWx0ZXIgICB7ICAgfSAgICIsCi0gICAgIkAtd2Via2l0LWZpbHRlciBteS1maWx0
ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJFbXB0eSBydWxlLCBubyBleHRyYSB3aGl0ZXNw
YWNlLiIsCi0gICAgIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXJ7fSIsCi0gICAgIkAtd2Via2l0
LWZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJSdWxlIHdpdGggYXJi
aXRyYXJ5IHByb3BlcnRpZXMuIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IHdp
ZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgfSIsIAotICAgICJALXdlYmtpdC1maWx0ZXIgbXkt
ZmlsdGVyIHsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyB9IiwKLSAgICB7d2lkdGg6ICIx
MDBweCIsIGhlaWdodDogIjEwMHB4In0pOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVsZSwg
Y29tbWVudCBzZXBhcmF0b3JzIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyLyoqL215LWZpbHRlci8q
Ki97IH0iLAotICAgICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIpOwotdGVzdEZpbHRl
ckF0UnVsZSgiRW1wdHkgcnVsZSwgY29tbWVudCtzcGFjZSBzZXBhcmF0b3JzIiwKLSAgICAiQC13
ZWJraXQtZmlsdGVyLyoqLyBteS1maWx0ZXIvKiovIHsgfSIsCi0gICAgIkAtd2Via2l0LWZpbHRl
ciBteS1maWx0ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJFbXB0eSBydWxlLCBzcGFjZStj
b21tZW50IHNlcGFyYXRvcnMiLAotICAgICJALXdlYmtpdC1maWx0ZXIgLyoqL215LWZpbHRlciAv
KioveyB9IiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iKTsKLXRlc3RGaWx0
ZXJBdFJ1bGUoIkVtcHR5IHJ1bGUsIHNwYWNlK2NvbW1lbnQrc3BhY2Ugc2VwYXJhdG9ycyIsCi0g
ICAgIkAtd2Via2l0LWZpbHRlciAvKiovIG15LWZpbHRlciAvKiovIHsgfSIsCi0gICAgIkAtd2Vi
a2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci0KLWhlYWRpbmcoIk5lc3RlZCBmaWx0ZXIgYXQt
cnVsZSB0ZXN0cy4iKTsKLXRlc3ROZXN0ZWRSdWxlcygiTmVzdGVkIHJ1bGUuIiwKLSAgICAiQC13
ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyBALXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVy
IHsgfSB9IiwgCi0gICAgewotICAgICAgICBjc3NUZXh0OiAiQC13ZWJraXQtZmlsdGVyIHBhcmVu
dC1maWx0ZXIgeyB9IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFLAotICAgICAgICBjb25zdHJ1Y3Rvck5hbWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIgotICAg
IH0pOwotdGVzdE5lc3RlZFJ1bGVzKCJUd2ljZSBuZXN0ZWQgcnVsZS4iLAotICAgICJALXdlYmtp
dC1maWx0ZXIgcGFyZW50LWZpbHRlciB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyBA
LXdlYmtpdC1maWx0ZXIgZ3JhbmRjaGlsZC1maWx0ZXIgfSB9IiwgCi0gICAgewotICAgICAgICBj
c3NUZXh0OiAiQC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IiwKLSAgICAgICAgcnVs
ZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFLAotICAgICAgICBjb25zdHJ1Y3Rvck5h
bWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIgotICAgIH0pOwotdGVzdE5lc3RlZFJ1bGVzKCJOZXN0
ZWQgcnVsZSBpbnNpZGUgYXJiaXRyYXJ5IHJ1bGUuIiwgCi0gICAgIkBmb250LWZhY2UgeyBALXdl
YmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSB9IiwgCi0gICAgewotICAgICAgICBjc3NUZXh0
OiAiQGZvbnQtZmFjZSB7IH0iLAotICAgICAgICBydWxlVHlwZTogQ1NTUnVsZS5GT05UX0ZBQ0Vf
UlVMRSwKLSAgICAgICAgY29uc3RydWN0b3JOYW1lOiAiQ1NTRm9udEZhY2VSdWxlIgotICAgIH0p
OwotdGVzdE5lc3RlZFJ1bGVzKCJOZXN0ZWQgcnVsZSBpbnNpZGUgbWVkaWEgcXVlcnkuIiwKLSAg
ICAiQG1lZGlhIHNjcmVlbiB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IH0iLCAK
LSAgICB7Ci0gICAgICAgIGNzc1RleHQ6ICJAbWVkaWEgc2NyZWVuIHsgXG4gIEAtd2Via2l0LWZp
bHRlciBjaGlsZC1maWx0ZXIgeyB9XG59IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuTUVE
SUFfUlVMRSwKLSAgICAgICAgY29uc3RydWN0b3JOYW1lOiAiQ1NTTWVkaWFSdWxlIiwKLSAgICB9
LAotICAgIHsKLSAgICAgICAgY3NzVGV4dDogIkAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIg
eyB9IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFLAotICAg
ICAgICBjb25zdHJ1Y3Rvck5hbWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIiwKLSAgICB9KTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC5qcyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQt
dGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZDRmYWNhMy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctY3Vz
dG9tLWZ1bmN0aW9uLWludmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxMzkgKzAsMCBAQAot
ZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgY3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhl
IC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2Jh
bCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBzdHlsZVJ1bGUsIGRlY2xh
cmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0SW52YWxpZEZpbHRlclJ1bGUoZGVzY3JpcHRpb24sIHJ1
bGUpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHJ1bGUpOwotCi0g
ICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKCJib2R5IHsgLXdlYmtpdC1maWx0ZXI6ICIgKyBydWxl
ICsgIjsgfSIsIDApOwotCi0gICAgc3R5bGVSdWxlID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVt
KDApOwotICAgIHNob3VsZEJlKCJzdHlsZVJ1bGUudHlwZSIsICJDU1NSdWxlLlNUWUxFX1JVTEUi
KTsKLQotICAgIGRlY2xhcmF0aW9uID0gc3R5bGVSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJk
ZWNsYXJhdGlvbi5sZW5ndGgiLCAiMCIpOwotICAgIHNob3VsZEJlKCJkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygi
Q3VzdG9tIGZ1bmN0aW9uIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJFbXB0eSBj
dXN0b20gZnVuY3Rpb24uIiwgImN1c3RvbSgpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk9u
ZSBjb21tYSBpbiBjdXN0b20gZnVuY3Rpb24uIiwgImN1c3RvbSgsKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNdWx0aXBsZSBjb21tYXMgaW4gY3VzdG9tIGZ1bmN0aW9uLiIsICJjdXN0b20o
LCwpIik7Ci0KLWhlYWRpbmcoIkZpbHRlciBuYW1lIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJObyBmaWx0ZXIgbmFtZSB3aXRoIHBhcmFtZXRlci4iLCAiY3VzdG9tKG4gMSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1hbnkgZmlsdGVyIG5hbWVzLiIsICJjdXN0b20o
bXktZmlsdGVyLTEgbXktZmlsdGVyLTIpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkZpbHRl
ciBuYW1lIGFzIHN0cmluZy4iLCAiY3VzdG9tKCdteS1maWx0ZXItMScpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIkZpbHRlciBuYW1lIGFzIG51bWJlci4iLCAiY3VzdG9tKDEpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIGJldHdlZW4gZmlsdGVyIG5hbWUgYW5kIHBhcmFtZXRl
ci4iLCAiY3VzdG9tKG15LWZpbHRlciBuIDEpIik7Ci0KLWhlYWRpbmcoIk51bWJlciBwYXJhbWV0
ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IHBhcmFtZXRlciB2
YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIG4gMSAyIDMgNCA1KSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJJbnZhbGlkIHBhcmFtZXRlciB0eXBlLiIsICJjdXN0b20obXktZmlsdGVyLCBu
IDEuMCAyLjAgJ3RleHQnKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHBhcmFtZXRl
ciBkZWZpbml0aW9uIGFmdGVyIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyLCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gd2l0aCB0d28gY29tbWFz
LiIsICJjdXN0b20obXktZmlsdGVyLCwpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHBh
cmFtZXRlciBkZWZpbml0aW9uIGJlZm9yZSB2YWxpZCBwYXJhbWV0ZXIgZGVmaW50aW9uLiIsICJj
dXN0b20obXktZmlsdGVyLCAsIG4gMSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gcGFy
YW1ldGVyIHZhbHVlLiIsICJjdXN0b20obXktZmlsdGVyLCBuKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgd2l0aCBtdWx0aXBsZSBwYXJhbWV0ZXJzLiIsICJj
dXN0b20obXktZmlsdGVyLCBuMSwgbjIsIG4zKSIpOwotCi1oZWFkaW5nKCJDb2xvciBwYXJhbWV0
ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHJnYiBjb2xvciB2YWx1ZXMu
IiwgImN1c3RvbShteS1maWx0ZXIsIGMgcmdiKCwsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiTm8gaHNsIGNvbG9yIHZhbHVlcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYyBoc2woLCwpKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJIZXggd2l0aCA4IGNoYXJhY3RlcnMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGMgI0ZGMDAwMEZGKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJIZXgg
d2l0aCAyIGNoYXJhY3Rlci4iLCAiY3VzdG9tKG15LWZpbHRlciwgYyAjRkYpIik7Ci10ZXN0SW52
YWxpZEZpbHRlclJ1bGUoIlJnYmEgd2l0aCAzIHZhbHVlcyBhbmQgMiBjb21tYXMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGMgcmdiYSgyNTUsIDAsIDApKSIpOwotCi1oZWFkaW5nKCJUcmFuc2Zvcm0g
cGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgaW52YWxpZCB0
cmFuc2Zvcm0gZnVuY3Rpb24uIiwgImN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUo
MGRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk11bHRpcGxlIGludmFsaWQgdHJhbnNm
b3JtIGZ1bmN0aW9ucy4iLCAiY3VzdG9tKG15LWZpbHRlciwgdCBpbnZhbGlkLXJvdGF0ZSgwZGVn
KSBpbnZhbGlkLXBlcnNwZWN0aXZlKDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZh
bGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuIiwgImN1c3RvbShteS1m
aWx0ZXIsIHQgcm90YXRlKDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDAp
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gYmV0
d2VlbiBpbnZhbGlkIG9uZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUo
MGRlZykgcGVyc3BlY3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCkpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiB3aXRob3V0IGxlYWRpbmcgY29t
bWEuIiwgImN1c3RvbShteS1maWx0ZXIgdCBwZXJzcGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiVmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGggdHJhaWxpbmcgY29tbWEu
IiwgImN1c3RvbShteS1maWx0ZXIsIHQgcGVyc3BlY3RpdmUoMCksKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gd2l0aCB0cmFpbGluZyBjb21tYSBh
bmQgd2l0aG91dCBsZWFkaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyIHQgcGVyc3BlY3Rp
dmUoMCksKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHRyYW5zZm9ybSB3aXRo
IHRyYWlsaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyLCB0IGludmFsaWQtcm90YXRlKDBk
ZWcpLCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aG91
dCBsZWFkaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyIHQgaW52YWxpZF9yb3RhdGUoMGRl
ZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3aXRoIGludmFs
aWQgY2hhcmFjdGVycyIsICJjdXN0b20obXktZmlsdGVyLHQgcm90YXRlKDBkZWcpICouLSwpIik7
Ci0KLWhlYWRpbmcoIkFycmF5IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiRW1wdHkgYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoKSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiT25lIGNvbW1hIGluIGFycmF5LiIsICJjdXN0b20obXktZmls
dGVyLCBhIGFycmF5KCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aXBsZSBjb21t
YXMgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCwsKSkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTXVsdGlwbGUgY29tbWFzIHdpdGggYSB2YWx1ZSBpbiBhcnJheS4i
LCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgsLDEsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEgbmVnYXRpdmUgdmFsdWUgaW4gYXJyYXkuIiwg
ImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLC00KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEgdmFsdWUgaW4gYXJyYXkuIiwgImN1c3RvbShteS1m
aWx0ZXIsIGEgYXJyYXkoLDQpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgbmVnYXRp
dmUgdmFsdWUgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgtNCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgdmFsdWUgZm9s
bG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSg0
LCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHZhbHVlcyBmb2xsb3dlZCBieSBh
IGNvbW1hIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQs
KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEg
bGV0dGVyIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQs
IHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUd28gY29tbWFzIGFzIHNlcGFyYXRvciBi
ZXR3ZWVuIHZhbHVlcyBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAy
LCAsIDQpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJMZWFkaW5nIGNvbW1hIGluIGFycmF5
LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwxLCAyLCAzLCA0KSkiKTsKLXRlc3RJbnZh
bGlkRmlsdGVyUnVsZSgiU2VtaWNvbG9uIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMTsgMjsgMzsgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIlNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0
ZXIsIGEgYXJyYXkoMSAyIDMgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIHNl
cGFyYXRlZCB2YWx1ZXMgd2l0aCBjb21tYSB0ZXJtaW5hdG9yIGluIGFycmF5LiIsICJjdXN0b20o
bXktZmlsdGVyLCBhIGFycmF5KDEgMiAzIDQsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgi
U3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCAxIDIgMyA0KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiTmFOIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KE5hTikpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5hTiBiZXR3ZWVuIHZhbGlkIHZhbHVlcyBpbiBhcnJh
eS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCBOYU4sIDMpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHZhbHVlICdub25lJyBpbiBhcnJheS4iLCAiY3VzdG9t
KG15LWZpbHRlciwgYSBhcnJheShub25lKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52
YWxpZCB2YWx1ZSB1bml0ICdweCcgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoMXB4KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB2YWx1ZSB1bml0ICdk
ZWcnIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDFkZWcpKSIpOwotdGVz
dEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheSBhZnRl
ciB2YWxpZCB2YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgMywgNHB4
KSkiKTsKLQotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiRW1wdHkgbWF0Mi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2aWV3IGFyZ3VtZW50cy4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQyKDAsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBh
cmd1bWVudHMgYnV0IGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKCwsLCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0
ZXIsIGEgbWF0MigwLCAwLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4g
bWF0MiBmdW5jdGlvbi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDAsIDAsIGEsIGIpKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVudHMuIiwgImN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MigwLCAwLCAwLCAwLCAxKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMSAwIDAgMSkpIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNvbWUgY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBh
IG1hdDIoMSwgMCwgMCAxKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTGVhZGluZyBjb21t
YXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigsIDAsIDAsIDEpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJObyBsZW5ndGggdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0
MigxcHgsIDBweCwgMHB4LCAxcHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdy
ZWUgdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigxZGVnLCAwZGVnLCAwZGVnLCAx
ZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGluIG1hdDIuIiwgImN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MigxLCAwLCAwLCBOYU4pKSIpOwotCi1oZWFkaW5nKCJNYXQzIHBhcmFt
ZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgbWF0My4iLCAiY3Vz
dG9tKG15LWZpbHRlciwgYSBtYXQzKCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2
aWV3IGFyZ3VtZW50cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDAsIDAsIDAsIDApKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4iLCAiY3Vz
dG9tKG15LWZpbHRlciwgYSBtYXQzKCwsLCwsLCwsLCwsLCwsLCkpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAw
LCAwLCAwLCAxLCAwLCAwLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4g
bWF0MyBmdW5jdGlvbi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEsIDAsIDAsIDAsIDEs
IDAsIDAsIGEsIGIpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVu
dHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAx
LCAwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMSAwIDAgMCAxIDAgMCAwIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJS
dWxlKCJTb21lIGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEsIDAsIDAsIDAs
IDEsIDAgMCAwIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJMZWFkaW5nIGNvbW1hcy4i
LCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIGxlbmd0aCB1bml0cy4iLCAiY3VzdG9tKG15LWZp
bHRlciwgYSBtYXQzKDFweCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAxcHgpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdyZWUgdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0MygxZGVnLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAxZGVnKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiTmFOIGluIG1hdDMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MihOYU4s
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpKSIpOwotCi1oZWFkaW5nKCJNYXQ0IHBhcmFtZXRlciB0
ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgbWF0NC4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQ0KCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2aWV3IGFy
Z3VtZW50cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDEsIDAsIDAs
IDAsIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBhcmd1bWVudHMgYnV0IGNvbW1h
cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KCwsLCwsLCwsLCwsLCwsLCkpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCwpKSIpOwotdGVz
dEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDEsIDAsIDAsIGEsIGIpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVudHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwKSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVy
LCBhIG1hdDQoMSAwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSkpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIlNvbWUgY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMSwg
MCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCAwIDAgMCAxKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiTGVhZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgs
IDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBsZW5ndGggdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxcHgsIDAsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAx
cHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdyZWUgdW5pdHMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGEgbWF0NCgxZGVnLCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAx
ZGVnLCAwLCAwLCAwLCAwLCAxZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGlu
IG1hdDQuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0NChOYU4sIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotCi0KLWhlYWRpbmcoIk1peGluZyBwYXJh
bWV0ZXIgdHlwZXMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk51bWJlciBwYXJhbWV0ZXIg
d2l0aCBoZXggY29sb3IuIiwgImN1c3RvbShteS1maWx0ZXIsIG4xIDEgMiAjRkYwMDAwKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJOdW1iZXIgcGFyYW1ldGVyIHdpdGggY29sb3Iga2V5d29y
ZC4iLCAiY3VzdG9tKG15LWZpbHRlciwgbjEgMSAyIHJlZCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiTnVtYmVyIHBhcmFtZXRlciB3aXRoIHJnYiBjb2xvci4iLCAiY3VzdG9tKG15LWZpbHRl
ciwgbjEgMSAyIHJnYigyNTUsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJDb2xv
ciB3aXRoIG51bWJlciBwYXJhbWV0ZXIuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwg
MCwgMCkgMSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiQ29sb3IgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMCwgcmdiKDI1NSwgMCwgMCkpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJDb2xvciBhbmQgYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoMCwgMCkgcmdiKDI1NSwgMCwgMCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSByb3RhdGUoNDVk
ZWcpIHJnYigyNTUsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJDb2xvciB3aXRo
IHRyYW5zZm9ybSB2YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwgMCwgMCkg
cm90YXRlKDQ1ZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiQ29sb3Igd2l0aCBtYXQy
LiIsICJjdXN0b20obXktZmlsdGVyLCBhIHJnYigyNTUsIDAsIDApIG1hdDIoMCwgMCwgMCwgMCkp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIm1hdDIgd2l0aCBtYXQzLiIsICJjdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDIoMSwgMCwgMCwgMSkgbWF0MygwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQu
anMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgv
c2NyaXB0LXRlc3RzL3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9uLXZhbGlkLmpzCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA3MWM1YTBmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2lu
Zy1jdXN0b20tZnVuY3Rpb24tdmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxNjcgKzAsMCBA
QAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9u
IG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBi
ZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgc3R5bGVSdWxl
LCBzdHlsZURlY2xhcmF0aW9uLCBmaWx0ZXJQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1ZTsKLQotZnVu
Y3Rpb24gdGVzdEZpbHRlclByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlLCBleHBl
Y3RlZFZhbHVlLCBleHBlY3RlZFR5cGVzLCBleHBlY3RlZFRleHRzKQotewotICAgIGRlYnVnKCJc
biIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBwcm9wZXJ0eVZhbHVlKTsKLQotICAgIHN0eWxlc2hl
ZXQuaW5zZXJ0UnVsZSgiYm9keSB7IC13ZWJraXQtZmlsdGVyOiAiICsgcHJvcGVydHlWYWx1ZSAr
ICI7IH0iLCAwKTsKLSAgICBzdHlsZVJ1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVzLml0ZW0oMCk7
Ci0gICAgc2hvdWxkQmUoInN0eWxlUnVsZS50eXBlIiwgIkNTU1J1bGUuU1RZTEVfUlVMRSIpOwot
Ci0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IHN0eWxlUnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgi
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgiLCAiMSIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykiLCAiJyIgKyBleHBlY3Rl
ZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclByb3BlcnR5VmFsdWUgPSBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5Q1NTVmFsdWUoJy13ZWJraXQtZmlsdGVyJyk7Ci0gICAgc2hvdWxkSGF2
ZUNvbnN0cnVjdG9yKCJmaWx0ZXJQcm9wZXJ0eVZhbHVlIiwgIkNTU1ZhbHVlTGlzdCIpOwotCi0g
ICAgaWYgKCFleHBlY3RlZFR5cGVzKSB7Ci0gICAgICAgIGV4cGVjdGVkVHlwZXMgPSBbIldlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NIl07Ci0gICAgICAgIGV4cGVjdGVkVGV4
dHMgPSBbZXhwZWN0ZWRWYWx1ZV07Ci0gICAgfQotICAgIAotICAgIHNob3VsZEJlKCJmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCIsICIiICsgZXhwZWN0ZWRUeXBlcy5sZW5ndGgpOyAvLyBzaG91
bGRCZSBleHBlY3RzIHN0cmluZyBhcmd1bWVudHMKLSAgCi0gICAgaWYgKGZpbHRlclByb3BlcnR5
VmFsdWUpIHsKLSAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBleHBlY3RlZFR5cGVzLmxlbmd0
aDsgaSsrKSB7Ci0gICAgICAgICAgICBzdWJWYWx1ZSA9IGZpbHRlclByb3BlcnR5VmFsdWVbaV07
Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViVmFsdWUub3BlcmF0aW9uVHlwZSIsIGV4cGVjdGVk
VHlwZXNbaV0pOwotICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1RleHQiLCAiJyIg
KyBleHBlY3RlZFRleHRzW2ldICsgIiciKTsKLSAgICAgICAgfQotICAgIH0KLX0KLQotaGVhZGlu
ZygiQ3VzdG9tIGZ1bmN0aW9uIHRlc3RzLiIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDdXN0b20g
ZnVuY3Rpb24gaW4gQ0FQUy4iLAotICAgICJDVVNUT00obXktZmlsdGVyKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIpIik7Ci0KLWhlYWRpbmcoIkZpbHRlciBjaGFpbiB0ZXN0cy4iKQotdGVzdEZp
bHRlclByb3BlcnR5KCJDdXN0b20gZnVuY3Rpb24gaW4gbWlkZGxlIG9mIGZpbHRlciBjaGFpbi4i
LAotICAgICJncmF5c2NhbGUoKSBjdXN0b20obXktZmlsdGVyKSBzZXBpYSgpIiwgImdyYXlzY2Fs
ZSgpIGN1c3RvbShteS1maWx0ZXIpIHNlcGlhKCkiLAotICAgIFsiV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUiLAotICAgICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTSIsCi0gICAgIldlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfU0VQ
SUEiXSwKLSAgICBbImdyYXlzY2FsZSgpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlcikiLAotICAg
ICJzZXBpYSgpIl0pOwotCi1oZWFkaW5nKCJGaWx0ZXIgbmFtZSB0ZXN0cy4iKTsKLXRlc3RGaWx0
ZXJQcm9wZXJ0eSgiRmlsdGVyIG5hbWUgb25seS4iLAotICAgICJjdXN0b20obXktZmlsdGVyKSIs
Ci0gICAgImN1c3RvbShteS1maWx0ZXIpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkZpbHRlciBu
YW1lIGFzIENTUyAnbm9uZScga2V5d29yZC4iLAotICAgICJjdXN0b20obm9uZSkiLAotICAgICJj
dXN0b20obm9uZSkiKTsKLQotaGVhZGluZygiTnVtYmVyIHBhcmFtZXRlciB0ZXN0cy4iKQotdGVz
dEZpbHRlclByb3BlcnR5KCJJbnRlZ2VyIHBhcmFtZXRlcnMuIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNykiLAotICAgICJjdXN0b20o
bXktZmlsdGVyLCBuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3KSIpOwotdGVzdEZp
bHRlclByb3BlcnR5KCJGbG9hdCBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIs
IG4xIDEuMSwgbjIgMi4yIDMuMywgbjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCki
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBuMSAxLjEsIG4yIDIuMiAzLjMsIG4zIDMuMSA0LjEg
NS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIlBhcmFtZXRl
ciBuYW1lIHNhbWUgYXMgQ1NTIGtleXdvcmQuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYmFj
a2dyb3VuZCAwIDEgMCAxKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGJhY2tncm91bmQgMCAx
IDAgMSkiKTsKLQotaGVhZGluZygiQ29sb3IgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdEZpbHRl
clByb3BlcnR5KCJIZXggY29sb3IuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyAjMDBGRjAw
KSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpIik7Ci10ZXN0Rmls
dGVyUHJvcGVydHkoIkNvbG9yIGtleXdvcmQuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyBn
cmVlbikiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYigwLCAxMjgsIDApKSIpOwotdGVz
dEZpbHRlclByb3BlcnR5KCJDb2xvciByZ2IgZnVuY3Rpb24uIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgYyByZ2IoMCwgMTI4LCAwKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYigw
LCAxMjgsIDApKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDb2xvciBoc2wgZnVuY3Rpb24uIiwK
LSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyBoc2woMTIwLCAxMDAlLCA1MCUpKSIsCi0gICAgImN1
c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHko
IkNvbG9yIHJnYmEgZnVuY3Rpb24uIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyByZ2JhKDAs
IDI1NSwgMCwgMC4yKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAw
LCAwLjIpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDb2xvciBoc2xhIGZ1bmN0aW9uLiIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIGMgaHNsYSgxMjAsIDEwMCUsIDUwJSwgMC4yKSkiLAotICAg
ICJjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAwLCAwLjIpKSIpOwotCi1oZWFkaW5n
KCJUcmFuc2Zvcm0gcGFyYW1ldGVyIHRlc3RzLiIpCi10ZXN0RmlsdGVyUHJvcGVydHkoIlRyYW5z
Zm9ybSBwYXJhbWV0ZXIgd2l0aCBvbmUgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIHQg
cm90YXRlKDBkZWcpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJUcmFuc2Zvcm0gcGFyYW1ldGVy
IHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtIGZ1bmN0aW9ucy4iLAotICAgICJjdXN0b20obXktZmls
dGVyLCB0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUo
MHB4LCAwcHgpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpIHBlcnNw
ZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkpIik7Ci10ZXN0RmlsdGVy
UHJvcGVydHkoIk11bGl0cGxlIHRyYW5zZm9ybSBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbSht
eS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKSIpOwotCi1oZWFk
aW5nKCJBcnJheSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkFycmF5
IHBhcmFtZXRlciB3aXRoIG5hbWUgJ2FycmF5Jy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBh
cnJheSBhcnJheSgxKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSki
KTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQXJyYXkgcGFyYW1ldGVyIHdpdGggb25lIHBvc2l0aXZl
IGludGVnZXIuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxKSkiLAotICAgICJj
dXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJBcnJh
eSBwYXJhbWV0ZXIgd2l0aCBvbmUgbmVnYXRpdmUgZmxvYXQuIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgYSBhcnJheSgtMS4wMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgt
MS4wMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRp
cGxlIHBvc2l0aXZlIGludGVnZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXko
MSwgMiwgMywgNCwgNSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAz
LCA0LCA1KSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQXJyYXkgcGFyYW1ldGVyIHdpdGggbXVs
dGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEs
IC0yLjIsIDMuMTQsIDAuNCwgNSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgx
LCAtMi4yLCAzLjE0LCAwLjQsIDUpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNdWx0aXBsZSBh
cnJheSBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGExIGFycmF5KDEsIC0y
LjIsIDMuMTQsIDAuNCwgNSksIGEyIGFycmF5KDEsIDIsIDMpKSIsCi0gICAgImN1c3RvbShteS1m
aWx0ZXIsIGExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSksIGEyIGFycmF5KDEsIDIsIDMp
KSIpOwotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RGaWx0ZXJQcm9w
ZXJ0eSgiTWF0MiBwYXJhbWV0ZXIuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKDEs
IDAsIDAsIDEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MigxLCAwLCAwLCAxKSki
KTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiTWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1
ZXMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAtMSwgLTEsIC0xKSkiLAot
ICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIC0xLCAtMSwgLTEpKSIpOwotdGVzdEZp
bHRlclByb3BlcnR5KCJNYXQyIHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2
YWx1ZXMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAxLCAxLCAtMSkpIiwK
LSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAxLCAxLCAtMSkpIik7Ci10ZXN0Rmls
dGVyUHJvcGVydHkoIk1hdDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4i
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSkiLAot
ICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSkiKTsKLQot
aGVhZGluZygiTWF0MyBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1h
dDMgcGFyYW1ldGVyLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAwLCAwLCAw
LCAxLCAwLCAwLCAwLCAxKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoMSwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMgcGFyYW1l
dGVyIHdpdGggbmVnYXRpdmUgdmFsdWVzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0
MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSkiLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDMoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkpIik7Ci10
ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5kIHBvc2l0
aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIDEsIDEsIC0x
LCAtMSwgMSwgMSwgLTEsIDEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwg
MSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMg
cGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEp
KSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEs
IC0yLjIsIDMuMTQsIDAuNCwgMSkpIik7Ci0KLWhlYWRpbmcoIk1hdDQgcGFyYW1ldGVyIHRlc3Rz
LiIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNYXQ0IHBhcmFtZXRlci4iLAotICAgICJjdXN0b20o
bXktZmlsdGVyLCBtIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIDAsIDAsIDAsIDAs
IDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5
KCJNYXQ0IHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSwgLTEsIC0xLCAtMSwgLTEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRp
dmUgYW5kIHBvc2l0aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDQo
LTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xKSki
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwg
LTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xKSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgi
TWF0NCBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRzLiIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpKSIpOwotCi1oZWFkaW5n
KCJDb21iaW5lZCBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk51bWJl
ciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJhbnNmb3JtIHBhcmFtZXRlciwgbWF0cml4
IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4iLAotICAgICJjdXN0b20obXktZmlsdGVy
LCBuIDEsIGMgcmdiKDAsIDEyOCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAs
IDEpLCBtMiBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFycmF5KDEpKSIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRl
ZyksIG0xIG1hdDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MSksIG0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSksIGEgYXJyYXkoMSkpIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctZ2VvbWV0cnkt
cHJvcGVydHktaW52YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1p
bnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzOTU5OTNhLi4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1pbnZhbGlkLmpzCisrKyAv
ZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJz
aW5nLWNvbW1vbi5qcy4KLQotZGVzY3JpcHRpb24oIlRlc3QgZ2VvbWV0cnkgcHJvcGVydHkgcGFy
c2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuIik7Ci0KLS8vIFRoZXNlIGhhdmUg
dG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGZpbHRl
ckF0UnVsZSwgc3R5bGVEZWNsYXJhdGlvbjsKLQotZnVuY3Rpb24gdGVzdEludmFsaWRHZW9tZXRy
eVByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBnZW9tZXRy
eVByb3BlcnR5ID0gImdlb21ldHJ5OiAiICsgcHJvcGVydHlWYWx1ZSArICI7IjsKLSAgICBkZWJ1
ZygiXG4iICsgZGVzY3JpcHRpb24gKyAiXG4iICsgZ2VvbWV0cnlQcm9wZXJ0eSk7Ci0KLSAgICBz
dHlsZXNoZWV0Lmluc2VydFJ1bGUoIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgZ2Vv
bWV0cnlQcm9wZXJ0eSArICIgfSIsIDApOwotCi0gICAgZmlsdGVyQXRSdWxlID0gc3R5bGVzaGVl
dC5jc3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJBdFJ1bGUudHlwZSIsICJD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IGZp
bHRlckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgi
LCAiMCIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J2dlb21ldHJ5JykiLCAibnVsbCIpOwotfQotCi1oZWFkaW5nKCJHZW9tZXRyeSB0ZXN0cy4iKTsK
LXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiTm8gcHJvcGVydHkgdmFsdWUuIiwgIiIpOwot
dGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJFbXB0eSBncmlkLiIsICJncmlkKCkiKTsKLXRl
c3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiTWlzcGVsbGVkIGdyaWQgZnVuY3Rpb24uIiwgImdy
aWlkKDEgMSkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiU2luZ2xlIG5lZ2F0aXZl
IHZhbHVlIGluIGdyaWQuIiwgImdyaWQoLTEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVy
dHkoIk5lZ2F0aXZlIHZhbHVlIGluIGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLiIsICJn
cmlkKDEgLTEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIk5lZ2F0aXZlIHZhbHVl
IGluIGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4iLCAiZ3JpZCgtMSAx
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJUd28gbmVnYXRpdmUgdmFsdWVzLiIs
ICJncmlkKC0xIC0xKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJTaW5nbGUgemVy
byB2YWx1ZS4iLCAiZ3JpZCgwKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJaZXJv
IHdpdGggYSB2YWxpZCB2YWx1ZS4iLCAiZ3JpZCgwIDEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5
UHJvcGVydHkoIlplcm8gd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4iLCAiZ3JpZCgxIDAp
Iik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIkF0dGFjaGVkIHZhbHVlIGFsb25lLiIs
ICJncmlkKGF0dGFjaGVkKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJEZXRhY2hl
ZCB2YWx1ZSBhbG9uZS4iLCAiZ3JpZChkZXRhY2hlZCkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQ
cm9wZXJ0eSgiRGV0YWNoZWQgYW5kIGF0dGFjaGVkLiIsICJncmlkKGF0dGFjaGVkIGF0dGFjaGVk
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJUb28gbWFueSB2YWx1ZXMuIiwgImdy
aWQoMSAxIGF0dGFjaGVkIGRldGFjaGVkKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5
KCJNaXNwZWxsZWQgYXR0YWNoZWQuIiwgImdyaWQoMSAxIGF0dGFjZCkiKTsKLXRlc3RJbnZhbGlk
R2VvbWV0cnlQcm9wZXJ0eSgiTWlzcGVsbGVkIGRldGFjaGVkLiIsICJncmlkKDEgMSBkZXRhY2hl
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJJbnZhbGlkIGRpdmlkZXIuIiwgImdy
aWQoMSwgMSBhdHRhY2hlZCkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiSW52YWxp
ZCBkaXZpZGVyLCByZWxvYWRlZC4iLCAiZ3JpZCgxIDEsIGF0dGFjaGVkKSIpOwotdGVzdEludmFs
aWRHZW9tZXRyeVByb3BlcnR5KCJOb24gaW50ZWdlciB2YWx1ZXMuIiwgImdyaWQoMS4zIDEpIik7
Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIk5vbiBpbnRlZ2VyIHZhbHVlcy4iLCAiZ3Jp
ZCgxIDEuMykiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiVGhyZWUgaW50ZWdlcnMu
IiwgImdyaWQoMSAyIDMpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIkF0dGFjaGVk
IGluIGJldHdlZW4gdHdvIGludGVnZXJzLiIsICJncmlkKDEgYXR0YWNoZWQgMSkiKTsKLXRlc3RJ
bnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiRGV0YWNoZWQgaW4gYmV0d2VlbiB0d28gaW50ZWdlcnMu
IiwgImdyaWQoMSBkZXRhY2hlZCAxKSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWdl
b21ldHJ5LXByb3BlcnR5LXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWdlb21ldHJ5LXByb3Bl
cnR5LXZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMmUxMmFiLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12YWxpZC5qcworKysg
L2Rldi9udWxsCkBAIC0xLDc3ICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFy
c2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IGdlb21ldHJ5IHByb3BlcnR5IHBh
cnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZl
IHRvIGJlIGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0
ZXJBdFJ1bGUsIHN0eWxlRGVjbGFyYXRpb24sIGdlb21ldHJ5UHJvcGVydHlWYWx1ZSwgc3ViVmFs
dWU7Ci0KLWZ1bmN0aW9uIHRlc3RHZW9tZXRyeVByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0
eVZhbHVlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBnZW9tZXRy
eVByb3BlcnR5ID0gImdlb21ldHJ5OiAiICsgcHJvcGVydHlWYWx1ZSArICI7IgotICAgIGRlYnVn
KCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBnZW9tZXRyeVByb3BlcnR5KTsKLQotICAgIHN0
eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBnZW9t
ZXRyeVByb3BlcnR5ICsgIiB9IiwgMCk7Ci0gICAgZmlsdGVyQXRSdWxlID0gc3R5bGVzaGVldC5j
c3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJBdFJ1bGUudHlwZSIsICJDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IGZpbHRl
ckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgiLCAi
MSIpOwotICAgIHNob3VsZEJlKCJyZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnZ2VvbWV0cnknKSkiLCAiXCIiICsgZXhwZWN0ZWRWYWx1ZSArICJcIiIpOwot
Ci0gICAgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eUNTU1ZhbHVlKCdnZW9tZXRyeScpOwotICAgIHNob3VsZEhhdmVDb25zdHJ1Y3RvcigiZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlIiwgIkNTU1ZhbHVlTGlzdCIpOwotCi0gICAgc2hvdWxkQmUoImdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0cmluZygp
KTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi19Ci0KLWhlYWRpbmcoIkdl
b21ldHJ5IHByb3BlcnR5LiIpOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0cnkgd2l0
aCBmdWxsIG1lc2ggYW5kIGF0dGFjaGVkLiIsCi0gICAgImdyaWQoMSAxIGF0dGFjaGVkKSIsCi0g
ICAgIjEgMSBhdHRhY2hlZCIsCi0gICAgWyIxIiwgIjEiLCAiYXR0YWNoZWQiXSk7Ci0KLXRlc3RH
ZW9tZXRyeVByb3BlcnR5KCJHZW9tZXRyeSB3aXRoIGZ1bGwgbWVzaCBhbmQgZGV0YWNoZWQuIiwK
LSAgICAiZ3JpZCgxIDEgZGV0YWNoZWQpIiwKLSAgICAiMSAxIGRldGFjaGVkIiwKLSAgICBbIjEi
LCAiMSIsICJkZXRhY2hlZCJdKTsKLQotdGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdp
dGggZnVsbCBtZXNoIGFuZCBubyBhdHRhY2hlZCwgbm9yIGRldGFjaGVkLiIsCi0gICAgImdyaWQo
MSAxKSIsCi0gICAgIjEgMSIsCi0gICAgWyIxIiwgIjEiXSk7Ci0KLXRlc3RHZW9tZXRyeVByb3Bl
cnR5KCJHZW9tZXRyeSB3aXRoIG9ubHkgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZCgxKSIs
Ci0gICAgIjEiLAotICAgIFsiMSJdKTsKLQotdGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5
IHdpdGggb25lIG1lc2ggdmFsdWUgYW5kIGF0dGFjaGVkLiIsCi0gICAgImdyaWQoMSBhdHRhY2hl
ZCkiLAotICAgICIxIGF0dGFjaGVkIiwKLSAgICBbIjEiLCAiYXR0YWNoZWQiXSk7Ci0KLXRlc3RH
ZW9tZXRyeVByb3BlcnR5KCJHZW9tZXRyeSB3aXRoIG9uZSBtZXNoIHZhbHVlIGFuZCBkZXRhY2hl
ZC4iLAotICAgICJncmlkKDEgZGV0YWNoZWQpIiwKLSAgICAiMSBkZXRhY2hlZCIsCi0gICAgWyIx
IiwgImRldGFjaGVkIl0pOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0cnkgd2l0aCBh
dHRhY2hlZCBiZWZvcmUgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZChhdHRhY2hlZCAxKSIs
Ci0gICAgImF0dGFjaGVkIDEiLAotICAgIFsiYXR0YWNoZWQiLCAiMSJdKTsKLQotdGVzdEdlb21l
dHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdpdGggYXR0YWNoZWQgYmVmb3JlIHR3byBtZXNoIHZhbHVl
cy4iLAotICAgICJncmlkKGF0dGFjaGVkIDEgMSkiLAotICAgICJhdHRhY2hlZCAxIDEiLAotICAg
IFsiYXR0YWNoZWQiLCAiMSIsICIxIl0pOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0
cnkgd2l0aCBkZXRhY2hlZCBiZWZvcmUgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZChkZXRh
Y2hlZCAxKSIsCi0gICAgImRldGFjaGVkIDEiLAotICAgIFsiZGV0YWNoZWQiLCAiMSJdKTsKLQot
dGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdpdGggZGV0YWNoZWQgYmVmb3JlIHR3byBt
ZXNoIHZhbHVlcy4iLAotICAgICJncmlkKGRldGFjaGVkIDEgMSkiLAotICAgICJkZXRhY2hlZCAx
IDEiLAotICAgIFsiZGV0YWNoZWQiLCAiMSIsICIxIl0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9w
YXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9w
ZXJ0eS1pbnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNTJjOGFiLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxl
LXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJvcGVydHktaW52YWxpZC5qcworKysg
L2Rldi9udWxsCkBAIC0xLDMwICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFy
c2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IG1peCBwcm9wZXJ0eSBwYXJzaW5n
IGluIHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBi
ZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgZmlsdGVyQXRS
dWxlLCBzdHlsZURlY2xhcmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0SW52YWxpZE1peFByb3BlcnR5
KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBtaXhQcm9wZXJ0eSA9ICJt
aXg6ICIgKyBwcm9wZXJ0eVZhbHVlICsgIjsiOwotICAgIGRlYnVnKCJcbiIgKyBkZXNjcmlwdGlv
biArICJcbiIgKyBtaXhQcm9wZXJ0eSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoIkAt
d2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgbWl4UHJvcGVydHkgKyAiIH0iLCAwKTsKLQot
ICAgIGZpbHRlckF0UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91
bGRCZSgiZmlsdGVyQXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsK
LQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxk
QmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwgIjAiKTsKLSAgICBzaG91bGRCZSgic3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSIsICJudWxsIik7Ci19Ci0KLWhlYWRp
bmcoIlZhbHVlIHRlc3QuIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJObyBwcm9wZXJ0eSB2
YWx1ZS4iLCAiIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJUaHJlZSB2YWx1ZXMuIiwgInNj
cmVlbiBzb3VyY2Utb3ZlciBzY3JlZW4iKTsKLXRlc3RJbnZhbGlkTWl4UHJvcGVydHkoIlRocmVl
IHZhbHVlcy4iLCAic2NyZWVuIHNvdXJjZS1vdmVyIHNvdXJjZS1vdmVyIik7Ci10ZXN0SW52YWxp
ZE1peFByb3BlcnR5KCJUd28gYmxlbmQgbW9kZXMuIiwgInNjcmVlbiBzY3JlZW4iKTsKLXRlc3RJ
bnZhbGlkTWl4UHJvcGVydHkoIlR3byBjb21wb3NpdGUgb3BlcmF0b3JzLiIsICJzb3VyY2Utb3Zl
ciBzb3VyY2Utb3ZlciIpOwotdGVzdEludmFsaWRNaXhQcm9wZXJ0eSgiVHdvIGJsZW5kIG1vZGVz
LiIsICJzY3JlZW4gc2NyZWVuIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJDb21tYSBiZXR3
ZWVuIHZhbHVlcy4iLCAic2NyZWVuLCBzb3VyY2Utb3ZlciIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0
cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJv
cGVydHktdmFsaWQuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEyYTYzMjIuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxpZC5qcworKysgL2Rl
di9udWxsCkBAIC0xLDg1ICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFyc2lu
Zy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IG1peCBwcm9wZXJ0eSBwYXJzaW5nIGlu
IHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBiZSBn
bG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgZmlsdGVyQXRSdWxl
LCBzdHlsZURlY2xhcmF0aW9uLCBtaXhQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1ZTsKLQotZnVuY3Rp
b24gdGVzdE1peFByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlLCBleHBlY3RlZFZh
bHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBtaXhQcm9wZXJ0eSA9ICJtaXg6ICIgKyBw
cm9wZXJ0eVZhbHVlICsgIjsiCi0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiAr
IG1peFByb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmls
dGVyIG15LWZpbHRlciB7ICIgKyBtaXhQcm9wZXJ0eSArICIgfSIsIDApOwotICAgIGZpbHRlckF0
UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91bGRCZSgiZmlsdGVy
QXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsKLQotICAgIHN0eWxl
RGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUoInN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIiwgIjEiKTsKLSAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSIsICJcIiIgKyBleHBlY3RlZFZh
bHVlICsgIlwiIik7Ci0KLSAgICBtaXhQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eUNTU1ZhbHVlKCdtaXgnKTsKLSAgICBzaG91bGRIYXZlQ29uc3RydWN0b3IoIm1p
eFByb3BlcnR5VmFsdWUiLCAiQ1NTVmFsdWVMaXN0Iik7Ci0KLSAgICBzaG91bGRCZSgibWl4UHJv
cGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0cmluZygpKTsgLy8g
c2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAotICAgIGlmIChtaXhQcm9wZXJ0
eVZhbHVlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0ZWRUZXh0cy5sZW5n
dGg7IGkrKykgewotICAgICAgICAgICAgc3ViVmFsdWUgPSBtaXhQcm9wZXJ0eVZhbHVlW2ldOwot
ICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1ZhbHVlVHlwZSIsICJDU1NWYWx1ZS5D
U1NfUFJJTUlUSVZFX1ZBTFVFIik7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVS
TChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBleHBlY3RlZFRleHRzW2ldICsgIlwiIik7Ci0g
ICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmcoIlRlc3QgYmxlbmQgbW9kZSBrZXl3b3Jkcy4i
KTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBtdWx0aXBseS4iLCAibXVsdGlwbHkiLCAibXVsdGlw
bHkiLCBbIm11bHRpcGx5Il0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNjcmVlbi4iLCAic2Ny
ZWVuIiwgInNjcmVlbiIsIFsic2NyZWVuIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IG92ZXJs
YXkuIiwgIm92ZXJsYXkiLCAib3ZlcmxheSIsIFsib3ZlcmxheSJdKTsKLXRlc3RNaXhQcm9wZXJ0
eSgiVGVzdCBkYXJrZW4uIiwgImRhcmtlbiIsICJkYXJrZW4iLCBbImRhcmtlbiJdKTsKLXRlc3RN
aXhQcm9wZXJ0eSgiVGVzdCBsaWdodGVuLiIsICJsaWdodGVuIiwgImxpZ2h0ZW4iLCBbImxpZ2h0
ZW4iXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgY29sb3ItZG9kZ2UuIiwgImNvbG9yLWRvZGdl
IiwgImNvbG9yLWRvZGdlIiwgWyJjb2xvci1kb2RnZSJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVz
dCBjb2xvci1idXJuLiIsICJjb2xvci1idXJuIiwgImNvbG9yLWJ1cm4iLCBbImNvbG9yLWJ1cm4i
XSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgaGFyZC1saWdodC4iLCAiaGFyZC1saWdodCIsICJo
YXJkLWxpZ2h0IiwgWyJoYXJkLWxpZ2h0Il0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNvZnQt
bGlnaHQuIiwgInNvZnQtbGlnaHQiLCAic29mdC1saWdodCIsIFsic29mdC1saWdodCJdKTsKLXRl
c3RNaXhQcm9wZXJ0eSgiVGVzdCBkaWZmZXJlbmNlLiIsICJkaWZmZXJlbmNlIiwgImRpZmZlcmVu
Y2UiLCBbImRpZmZlcmVuY2UiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgZXhjbHVzaW9uLiIs
ICJleGNsdXNpb24iLCAiZXhjbHVzaW9uIiwgWyJleGNsdXNpb24iXSk7Ci10ZXN0TWl4UHJvcGVy
dHkoIlRlc3QgaHVlLiIsICJodWUiLCAiaHVlIiwgWyJodWUiXSk7Ci10ZXN0TWl4UHJvcGVydHko
IlRlc3Qgc2F0dXJhdGlvbi4iLCAic2F0dXJhdGlvbiIsICJzYXR1cmF0aW9uIiwgWyJzYXR1cmF0
aW9uIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGNvbG9yLiIsICJjb2xvciIsICJjb2xvciIs
IFsiY29sb3IiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgbHVtaW5vc2l0eS4iLCAibHVtaW5v
c2l0eSIsICJsdW1pbm9zaXR5IiwgWyJsdW1pbm9zaXR5Il0pOwotCi1oZWFkaW5nKCJUZXN0IGNv
bXBvc2l0ZSBrZXl3b3Jkcy4iKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBjbGVhci4iLCAiY2xl
YXIiLCAiY2xlYXIiLCBbImNsZWFyIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGNvcHkuIiwg
ImNvcHkiLCAiY29weSIsIFsiY29weSJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBzb3VyY2Ut
b3Zlci4iLCAic291cmNlLW92ZXIiLCAic291cmNlLW92ZXIiLCBbInNvdXJjZS1vdmVyIl0pOwot
dGVzdE1peFByb3BlcnR5KCJUZXN0IHNvdXJjZS1pbi4iLCAic291cmNlLWluIiwgInNvdXJjZS1p
biIsIFsic291cmNlLWluIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNvdXJjZS1vdXQuIiwg
InNvdXJjZS1vdXQiLCAic291cmNlLW91dCIsIFsic291cmNlLW91dCJdKTsKLXRlc3RNaXhQcm9w
ZXJ0eSgiVGVzdCBzb3VyY2UtYXRvcC4iLCAic291cmNlLWF0b3AiLCAic291cmNlLWF0b3AiLCBb
InNvdXJjZS1hdG9wIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGRlc3RpbmF0aW9uLW92ZXIu
IiwgImRlc3RpbmF0aW9uLW92ZXIiLCAiZGVzdGluYXRpb24tb3ZlciIsIFsiZGVzdGluYXRpb24t
b3ZlciJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBkZXN0aW5hdGlvbi1pbi4iLCAiZGVzdGlu
YXRpb24taW4iLCAiZGVzdGluYXRpb24taW4iLCBbImRlc3RpbmF0aW9uLWluIl0pOwotdGVzdE1p
eFByb3BlcnR5KCJUZXN0IGRlc3RpbmF0aW9uLW91dC4iLCAiZGVzdGluYXRpb24tb3V0IiwgImRl
c3RpbmF0aW9uLW91dCIsIFsiZGVzdGluYXRpb24tb3V0Il0pOwotdGVzdE1peFByb3BlcnR5KCJU
ZXN0IGRlc3RpbmF0aW9uLWF0b3AuIiwgImRlc3RpbmF0aW9uLWF0b3AiLCAiZGVzdGluYXRpb24t
YXRvcCIsIFsiZGVzdGluYXRpb24tYXRvcCJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCB4b3Iu
IiwgInhvciIsICJ4b3IiLCBbInhvciJdKTsKLQotdGVzdE1peFByb3BlcnR5KCJCbGVuZCBtb2Rl
IGFuZCBjb21wb3NpdGUgdG9nZXRoZXIuIiwKLSAgICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAg
ICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAgICBbInNjcmVlbiIsICJzb3VyY2Utb3ZlciJdKTsK
LQotdGVzdE1peFByb3BlcnR5KCJDb21wb3NpdGUgYW5kIGJsZW5kIG1vZGUgdG9nZXRoZXIuIiwK
LSAgICAic291cmNlLW92ZXIgc2NyZWVuIiwKLSAgICAic291cmNlLW92ZXIgc2NyZWVuIiwKLSAg
ICBbInNvdXJjZS1vdmVyIiwgInNjcmVlbiJdKTsKLQotaGVhZGluZygiQ2FwaXRhbGl6YXRpb24g
dGVzdHMuIik7Ci10ZXN0TWl4UHJvcGVydHkoIkFsbCB0b2tlbnMgY2FwaXRhbGl6ZWQuIiwKLSAg
ICAiU0NSRUVOIFNPVVJDRS1PVkVSIiwKLSAgICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAgICBb
InNjcmVlbiIsICJzb3VyY2Utb3ZlciJdKTsKLQotaGVhZGluZygiV2hpdGVzcGFjZSB0ZXN0cy4i
KTsKLXRlc3RNaXhQcm9wZXJ0eSgiRXh0cmEgbGVhZGluZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcg
d2hpdGVzcGFjZS4gIiwKLSAgICAiICAgc2NyZWVuICAgc291cmNlLW92ZXIgICAiLAotICAgICJz
Y3JlZW4gc291cmNlLW92ZXIiLAotICAgIFsic2NyZWVuIiwgInNvdXJjZS1vdmVyIl0pOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcyBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3Jp
cHQtdGVzdHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQuanMKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZhZGRhMTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJz
aW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcworKysgL2Rldi9udWxsCkBAIC0xLDEy
NyArMCwwIEBACi0vLyBSZXF1aXJlcyBjdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzLgot
Ci1kZXNjcmlwdGlvbigiVGVzdCBwYXJhbWV0ZXJzIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAt
d2Via2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2JhbCBm
b3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0ZXJBdFJ1bGUsIHN0eWxl
RGVjbGFyYXRpb247Ci0KLWZ1bmN0aW9uIHRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KGRl
c2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBwYXJhbWV0ZXJzUHJvcGVydHkg
PSAicGFyYW1ldGVyczogIiArIHByb3BlcnR5VmFsdWUgKyAiOyI7Ci0gICAgZGVidWcoIlxuIiAr
IGRlc2NyaXB0aW9uICsgIlxuIiArIHBhcmFtZXRlcnNQcm9wZXJ0eSk7Ci0KLSAgICBzdHlsZXNo
ZWV0Lmluc2VydFJ1bGUoIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgcGFyYW1ldGVy
c1Byb3BlcnR5ICsgIiB9IiwgMCk7Ci0KLSAgICBmaWx0ZXJBdFJ1bGUgPSBzdHlsZXNoZWV0LmNz
c1J1bGVzLml0ZW0oMCk7Ci0gICAgc2hvdWxkQmUoImZpbHRlckF0UnVsZS50eXBlIiwgIkNTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFIik7Ci0KLSAgICBzdHlsZURlY2xhcmF0aW9uID0gZmlsdGVy
QXRSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCIsICIw
Iik7Ci0gICAgc2hvdWxkQmUoInN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFy
YW1ldGVycycpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygiTnVtYmVyIHBhcmFtZXRlciB0ZXN0
cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJUb28gbWFueSBwYXJhbWV0ZXIg
dmFsdWVzLiIsICJuIDEgMiAzIDQgNSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHko
IkludmFsaWQgcGFyYW1ldGVyIHR5cGUuIiwgIm4gMS4wIDIuMCAndGV4dCciKTsKLQotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIHBhcmFtZXRlciBkZWZpbml0aW9uLiIsICIiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBwYXJhbWV0ZXIgZGVmaW5pdGlvbiB3
aXRoIGNvbW1hLiIsICIsIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFy
YW1ldGVyIGRlZmluaXRpb24gYmVmb3JlIHZhbGlkIHBhcmFtZXRlciBkZWZpbnRpb24uIiwgIiwg
biAxIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFyYW1ldGVyIHZhbHVl
LiIsICJuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFyYW1ldGVyIHZh
bHVlIHdpdGggbXVsdGlwbGUgcGFyYW1ldGVycy4iLCAibjEsIG4yLCBuMyIpOwotCi1oZWFkaW5n
KCJDb2xvciBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0
eSgiTm8gcmdiIGNvbG9yIHZhbHVlcy4iLCAiYyByZ2IoLCwpIik7Ci10ZXN0SW52YWxpZFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTm8gaHNsIGNvbG9yIHZhbHVlcy4iLCAiYyBoc2woLCwpIik7Ci10ZXN0
SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSGV4IHdpdGggOCBjaGFyYWN0ZXJzLiIsICJjICNG
RjAwMDBGRiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkhleCB3aXRoIDIgY2hh
cmFjdGVyLiIsICJjICNGRiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlJnYmEg
d2l0aCAzIHZhbHVlcyBhbmQgMiBjb21tYXMuIiwgImMgcmdiYSgyNTUsIDAsIDApIik7Ci0KLWhl
YWRpbmcoIlRyYW5zZm9ybSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRl
cnNQcm9wZXJ0eSgiT25lIGludmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsICJ0IGludmFsaWQt
cm90YXRlKDBkZWcpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsdGlwbGUg
aW52YWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb25zLiIsICJ0IGludmFsaWQtcm90YXRlKDBkZWcpIGlu
dmFsaWQtcGVyc3BlY3RpdmUoMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJ
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuIiwgInQgcm90YXRl
KDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIik7Ci10ZXN0SW52YWxp
ZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uIGJldHdlZW4gaW52
YWxpZCBvbmVzLiIsICJ0IGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIGludmFs
aWQtdHJhbnNsYXRlKDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQg
dHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGggdHJhaWxpbmcgY29tbWEuIiwgInQgcGVyc3BlY3RpdmUo
MCksIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSW52YWxpZCB0cmFuc2Zvcm0g
d2l0aCB0cmFpbGluZyBjb21tYS4iLCAidCBpbnZhbGlkLXJvdGF0ZSgwZGVnKSwiKTsKLXRlc3RJ
bnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJWYWxpZCB0cmFuc2Zvcm0gd2l0aCBpbnZhbGlkIGNo
YXJhY3RlcnMiLCAidCByb3RhdGUoMGRlZykgKi4tLCIpOwotCi1oZWFkaW5nKCJBcnJheSBwYXJh
bWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW1wdHkgYXJy
YXkuIiwgImEgYXJyYXkoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk9uZSBj
b21tYSBpbiBhcnJheS4iLCAiYSBhcnJheSgsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJv
cGVydHkoIk11bHRpcGxlIGNvbW1hcyBpbiBhcnJheS4iLCAiYSBhcnJheSgsLCwpIik7Ci10ZXN0
SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsdGlwbGUgY29tbWFzIHdpdGggYSB2YWx1ZSBp
biBhcnJheS4iLCAiYSBhcnJheSgsLDEsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVy
dHkoIk9uZSBjb21tYSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFycmF5LiIsICJh
IGFycmF5KCwtNCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJPbmUgY29tbWEg
Zm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheS4iLCAiYSBhcnJheSgsNCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJPbmUgbmVnYXRpdmUgdmFsdWUgZm9sbG93ZWQgYnkgYSBj
b21tYSBpbiBhcnJheS4iLCAiYSBhcnJheSgtNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQ
cm9wZXJ0eSgiT25lIHZhbHVlIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJy
YXkoNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdmFsdWVzIGZv
bGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoMSwgMiwgMywgNCwpIik7Ci10
ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEg
bGV0dGVyIGluIGFycmF5LiIsICJhIGFycmF5KDEsIDIsIDMsIDQsIHgpIik7Ci10ZXN0SW52YWxp
ZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVHdvIGNvbW1hcyBhcyBzZXBhcmF0b3IgYmV0d2VlbiB2YWx1
ZXMgaW4gYXJyYXkuIiwgImEgYXJyYXkoMSwgMiwgLCA0KSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoLDEsIDIsIDMs
IDQpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU2VtaWNvbG9uIHNlcGFyYXRl
ZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImEgYXJyYXkoMTsgMjsgMzsgNCkiKTsKLXRlc3RJbnZhbGlk
UGFyYW1ldGVyc1Byb3BlcnR5KCJTcGFjZSBzZXBhcmF0ZWQgdmFsdWVzIGluIGFycmF5LiIsICJh
IGFycmF5KDEgMiAzIDQpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU3BhY2Ug
c2VwYXJhdGVkIHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkuIiwgImEgYXJy
YXkoMSAyIDMgNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU3BhY2Ugc2Vw
YXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoLCAx
IDIgMyA0KSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBpbiBhcnJheS4i
LCAiYSBhcnJheShOYU4pIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTmFOIGJl
dHdlZW4gdmFsaWQgdmFsdWVzIGluIGFycmF5LiIsICJhIGFycmF5KDEsIDIsIE5hTiwgMykiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJbnZhbGlkIHZhbHVlICdub25lJyBpbiBh
cnJheS4iLCAiYSBhcnJheShub25lKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHko
IkludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFycmF5LiIsICJhIGFycmF5KDFweCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJbnZhbGlkIHZhbHVlIHVuaXQgJ2RlZycgaW4g
YXJyYXkuIiwgImEgYXJyYXkoMWRlZykiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5
KCJJbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheSBhZnRlciB2YWxpZCB2YWx1ZXMuIiwg
ImEgYXJyYXkoMSwgMiwgMywgNHB4KSIpOwotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0
cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQyLiIsICJhIG1h
dDIoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3IGFyZ3VtZW50
cy4iLCAiYSBtYXQyKDAsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgi
Tm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0MigsLCwpIik7Ci10ZXN0SW52YWxpZFBh
cmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4iLCAiYSBtYXQyKDAsIDAsLCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0MiBmdW5jdGlvbi4iLCAi
YSBtYXQyKDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVG9v
IG1hbnkgYXJndW1lbnRzLiIsICJhIG1hdDIoMCwgMCwgMCwgMCwgMSkiKTsKLXRlc3RJbnZhbGlk
UGFyYW1ldGVyc1Byb3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0MigxIDAgMCAxKSIpOwotdGVz
dEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlNvbWUgY29tbWFzLiIsICJhIG1hdDIoMSwgMCwg
MCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWFzLiIs
ICJhIG1hdDIoLCAwLCAwLCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5v
IGxlbmd0aCB1bml0cy4iLCAiYSBtYXQyKDFweCwgMHB4LCAwcHgsIDFweCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0MigxZGVnLCAw
ZGVnLCAwZGVnLCAxZGVnKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBp
biBtYXQyLiIsICJhIG1hdDIoMSwgMCwgMCwgTmFOKSIpOwotCi1oZWFkaW5nKCJNYXQzIHBhcmFt
ZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQz
LiIsICJhIG1hdDMoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3
IGFyZ3VtZW50cy4iLCAiYSBtYXQzKDAsIDAsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRl
cnNQcm9wZXJ0eSgiTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0MygsLCwsLCwsLCws
LCwsLCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4i
LCAiYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsLCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVy
c1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0MyBmdW5jdGlvbi4iLCAiYSBtYXQzKDEsIDAsIDAsIDAs
IDEsIDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVG9vIG1h
bnkgYXJndW1lbnRzLiIsICJhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSwgMCkiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0MygxIDAg
MCAwIDEgMCAwIDAgMSkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJTb21lIGNv
bW1hcy4iLCAiYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAgMCAwIDEpIik7Ci10ZXN0SW52YWxpZFBh
cmFtZXRlcnNQcm9wZXJ0eSgiTGVhZGluZyBjb21tYXMuIiwgImEgbWF0MygsIDAsIDAsIDAsIDEs
IDAsIDAsIDAsIDEpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gbGVuZ3Ro
IHVuaXRzLiIsICJhIG1hdDMoMXB4LCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDFweCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0Mygx
ZGVnLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAxZGVnKSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIk5hTiBpbiBtYXQzLiIsICJhIG1hdDIoTmFOLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAxKSIpOwotCi1oZWFkaW5nKCJNYXQ0IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQ0LiIsICJhIG1hdDQoKSIpOwotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3IGFyZ3VtZW50cy4iLCAiYSBtYXQ0KDEs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0
eSgiTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0NCgsLCwsLCwsLCwsLCwsLCwpIik7
Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4iLCAiYSBtYXQ0
KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsLCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4iLCAiYSBtYXQ0
KDEsIDAsIDAsIDAsIDEsIDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9w
ZXJ0eSgiVG9vIG1hbnkgYXJndW1lbnRzLiIsICJhIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwg
MCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1By
b3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0NCgxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAg
MCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlNvbWUgY29tbWFzLiIsICJh
IG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCAwIDAgMCAxKSIpOwotdGVz
dEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWFzLiIsICJhIG1hdDQoLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIpOwotdGVzdEludmFs
aWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIGxlbmd0aCB1bml0cy4iLCAiYSBtYXQ0KDFweCwgMCwg
MCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDAsIDFweCkiKTsKLXRlc3RJ
bnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0NCgxZGVn
LCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAxZGVnKSIp
OwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBpbiBtYXQ0LiIsICJhIG1hdDQo
TmFOLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIpOwotCi1o
ZWFkaW5nKCJNaXhpbmcgcGFyYW1ldGVyIHR5cGVzLiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJz
UHJvcGVydHkoIk51bWJlciBwYXJhbWV0ZXIgd2l0aCBoZXggY29sb3IuIiwgIm4xIDEgMiAjRkYw
MDAwIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTnVtYmVyIHBhcmFtZXRlciB3
aXRoIGNvbG9yIGtleXdvcmQuIiwgIm4xIDEgMiByZWQiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVy
c1Byb3BlcnR5KCJOdW1iZXIgcGFyYW1ldGVyIHdpdGggcmdiIGNvbG9yLiIsICJuMSAxIDIgcmdi
KDI1NSwgMCwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJDb2xvciB3aXRo
IG51bWJlciBwYXJhbWV0ZXIuIiwgImEgcmdiKDI1NSwgMCwgMCkgMSIpOwotdGVzdEludmFsaWRQ
YXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGluIGFycmF5LiIsICJhIGFycmF5KDAsIHJnYigyNTUs
IDAsIDApKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGFuZCBhcnJh
eS4iLCAiYSBhcnJheSgwLCAwKSByZ2IoMjU1LCAwLCAwKSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIkNvbG9yIHdpdGggdHJhbnNmb3JtIHZhbHVlcy4iLCAiYSByb3RhdGUoNDVk
ZWcpIHJnYigyNTUsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiQ29s
b3Igd2l0aCB0cmFuc2Zvcm0gdmFsdWVzLiIsICJhIHJnYigyNTUsIDAsIDApIHJvdGF0ZSg0NWRl
ZykiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJDb2xvciBhZnRlciBhcnJheSB2
YWx1ZXMuIiwgImEgYXJyYXkoMCkgcmdiKDI1NSwgMCwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1l
dGVyc1Byb3BlcnR5KCJDb2xvciB3aXRoIG1hdDIuIiwgImEgcmdiKDI1NSwgMCwgMCkgbWF0Migw
LCAwLCAwLCAwKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIm1hdDIgd2l0aCBt
YXQzLiIsICJhIG1hdDIoMSwgMCwgMCwgMSkgbWF0MygwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
KSIpOwotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgt
YXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctcGFyYW1ldGVycy1wcm9wZXJ0eS12
YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmpzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMjk0MGY2Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVz
dHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmpzCisrKyAvZGV2L251bGwKQEAg
LTEsMTczICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24u
anMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IHBhcmFtZXRlcnMgcHJvcGVydHkgcGFyc2luZyBpbiB0
aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xv
YmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGZpbHRlckF0UnVsZSwg
c3R5bGVEZWNsYXJhdGlvbiwgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUsIHN1YlZhbHVlOwotCi1m
dW5jdGlvbiB0ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVl
LCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBwYXJhbWV0ZXJzUHJv
cGVydHkgPSAicGFyYW1ldGVyczogIiArIHByb3BlcnR5VmFsdWUgKyAiOyIKLSAgICBkZWJ1Zygi
XG4iICsgZGVzY3JpcHRpb24gKyAiXG4iICsgcGFyYW1ldGVyc1Byb3BlcnR5KTsKLQotICAgIHN0
eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBwYXJh
bWV0ZXJzUHJvcGVydHkgKyAiIH0iLCAwKTsKLSAgICBmaWx0ZXJBdFJ1bGUgPSBzdHlsZXNoZWV0
LmNzc1J1bGVzLml0ZW0oMCk7Ci0gICAgc2hvdWxkQmUoImZpbHRlckF0UnVsZS50eXBlIiwgIkNT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFIik7Ci0KLSAgICBzdHlsZURlY2xhcmF0aW9uID0gZmls
dGVyQXRSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCIs
ICIxIik7Ci0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIiwgIlwiIiArIGV4cGVjdGVkVmFsdWUgKyAiXCIi
KTsKLQotICAgIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCdwYXJhbWV0ZXJzJyk7Ci0gICAgc2hvdWxkSGF2ZUNvbnN0cnVjdG9y
KCJwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIHNob3Vs
ZEJlKCJwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0
aC50b1N0cmluZygpKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSkgewotICAgICAgICBmb3IgKHZhciBpID0g
MDsgaSA8IGV4cGVjdGVkVGV4dHMubGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICAgIHN1YlZhbHVl
ID0gcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWVbaV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3Vi
VmFsdWUuY3NzVmFsdWVUeXBlIiwgIkNTU1ZhbHVlLkNTU19WQUxVRV9MSVNUIik7Ci0gICAgICAg
ICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBl
eHBlY3RlZFRleHRzW2ldICsgIlwiIik7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmco
Ik51bWJlciBwYXJhbWV0ZXIgdGVzdHMuIikKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkludGVn
ZXIgcGFyYW1ldGVycy4iLAotICAgICJuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3
IiwKLSAgICAibjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNyIsCi0gICAgWyJuMSAx
IiwibjIgMiAzIiwgIm4zIDMgNCA1IiwgIm40IDQgNSA2IDciXSk7Ci10ZXN0UGFyYW1ldGVyc1By
b3BlcnR5KCJGbG9hdCBwYXJhbWV0ZXJzLiIsCi0gICAgIm4xIDEuMSwgbjIgMi4yIDMuMywgbjMg
My4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIsCi0gICAgIm4xIDEuMSwgbjIgMi4yIDMu
MywgbjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIsCi0gICAgWyJuMSAxLjEiLCAi
bjIgMi4yIDMuMyIsICJuMyAzLjEgNC4xIDUuMSIsICJuNCA0LjEgNS4yIDYuMyA3LjQiXSk7Ci10
ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJQYXJhbWV0ZXIgbmFtZSBzYW1lIGFzIENTUyBrZXl3b3Jk
LiIsCi0gICAgImJhY2tncm91bmQgMCAxIDAgMSIsCi0gICAgImJhY2tncm91bmQgMCAxIDAgMSIs
Ci0gICAgWyJiYWNrZ3JvdW5kIDAgMSAwIDEiXSk7Ci0KLWhlYWRpbmcoIlRyYW5zZm9ybSBwYXJh
bWV0ZXIgdGVzdHMuIikKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIlRyYW5zZm9ybSBwYXJhbWV0
ZXIgd2l0aCBvbmUgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsCi0gICAgInQgcm90YXRlKDBkZWcpIiwK
LSAgICAidCByb3RhdGUoMGRlZykiLAotICAgIFsidCByb3RhdGUoMGRlZykiXSk7Ci10ZXN0UGFy
YW1ldGVyc1Byb3BlcnR5KCJUcmFuc2Zvcm0gcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgdHJhbnNm
b3JtIGZ1bmN0aW9ucy4iLAotICAgICJ0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2Fs
ZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIiwKLSAgICAidCByb3RhdGUoMGRlZykgcGVyc3Bl
Y3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSIsCi0gICAgWyJ0IHJvdGF0
ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIl0p
OwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsaXRwbGUgdHJhbnNmb3JtIHBhcmFtZXRlcnMu
IiwKLSAgICAidDEgcm90YXRlKDBkZWcpLCB0MiByb3RhdGUoMGRlZykiLAotICAgICJ0MSByb3Rh
dGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVnKSIsCi0gICAgWyJ0MSByb3RhdGUoMGRlZykiLCAidDIg
cm90YXRlKDBkZWcpIl0pOwotCi1oZWFkaW5nKCJBcnJheSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10
ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScu
IiwKLSAgICAiYXJyYXkgYXJyYXkoMSkiLAotICAgICJhcnJheSBhcnJheSgxKSIsCi0gICAgWyJh
cnJheSBhcnJheSgxKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkFycmF5IHBhcmFtZXRl
ciB3aXRoIG9uZSBwb3NpdGl2ZSBpbnRlZ2VyLiIsCi0gICAgImEgYXJyYXkoMSkiLAotICAgICJh
IGFycmF5KDEpIiwKLSAgICBbImEgYXJyYXkoMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5
KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBvbmUgbmVnYXRpdmUgZmxvYXQuIiwKLSAgICAiYSBhcnJh
eSgtMS4wMSkiLAotICAgICJhIGFycmF5KC0xLjAxKSIsCi0gICAgWyJhIGFycmF5KC0xLjAxKSJd
KTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxl
IHBvc2l0aXZlIGludGVnZXJzLiIsCi0gICAgImEgYXJyYXkoMSwgMiwgMywgNCwgNSkiLAotICAg
ICJhIGFycmF5KDEsIDIsIDMsIDQsIDUpIiwKLSAgICBbImEgYXJyYXkoMSwgMiwgMywgNCwgNSki
XSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBs
ZSBzaWduZWQgZmxvYXRzLiIsCi0gICAgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIs
Ci0gICAgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIsCi0gICAgWyJhIGFycmF5KDEs
IC0yLjIsIDMuMTQsIDAuNCwgNSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNdWx0aXBs
ZSBhcnJheSBwYXJhbWV0ZXJzLiIsCi0gICAgImExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwg
NSksIGEyIGFycmF5KDEsIDIsIDMpIiwKLSAgICAiYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40
LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykiLAotICAgIFsiYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwg
MC40LCA1KSIsICJhMiBhcnJheSgxLCAyLCAzKSJdKTsKLQotaGVhZGluZygiQ29sb3IgcGFyYW1l
dGVyIHRlc3RzLiIpOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiSGV4IGNvbG9yLiIsCi0gICAg
ImMgIzAwRkYwMCIsCi0gICAgImMgcmdiKDAsIDI1NSwgMCkiLAotICAgIFsiYyByZ2IoMCwgMjU1
LCAwKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGtleXdvcmQuIiwKLSAgICAi
YyBncmVlbiIsCi0gICAgImMgcmdiKDAsIDEyOCwgMCkiLAotICAgIFsiYyByZ2IoMCwgMTI4LCAw
KSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIHJnYiBmdW5jdGlvbi4iLAotICAg
ICJjIHJnYigwLCAxMjgsIDApIiwKLSAgICAiYyByZ2IoMCwgMTI4LCAwKSIsCi0gICAgWyJjIHJn
YigwLCAxMjgsIDApIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiQ29sb3IgaHNsIGZ1bmN0
aW9uLiIsCi0gICAgImMgaHNsKDEyMCwgMTAwJSwgNTAlKSIsCi0gICAgImMgcmdiKDAsIDI1NSwg
MCkiLAotICAgIFsiYyByZ2IoMCwgMjU1LCAwKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHko
IkNvbG9yIHJnYmEgZnVuY3Rpb24uIiwKLSAgICAiYyByZ2JhKDAsIDI1NSwgMCwgMC4yKSIsCi0g
ICAgImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiLAotICAgIFsiYyByZ2JhKDAsIDI1NSwgMCwgMC4y
KSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGhzbGEgZnVuY3Rpb24uIiwKLSAg
ICAiYyBoc2xhKDEyMCwgMTAwJSwgNTAlLCAwLjIpIiwKLSAgICAiYyByZ2JhKDAsIDI1NSwgMCwg
MC4yKSIsCi0gICAgWyJjIHJnYmEoMCwgMjU1LCAwLCAwLjIpIl0pOwotCi1oZWFkaW5nKCJNYXQy
IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDIgcGFyYW1l
dGVyLiIsCi0gICAgIm0gbWF0MigxLCAwLCAwLCAxKSIsCi0gICAgIm0gbWF0MigxLCAwLCAwLCAx
KSIsCi0gICAgWyJtIG1hdDIoMSwgMCwgMCwgMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5
KCJNYXQyIHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4iLAotICAgICJtIG1hdDIoLTEs
IC0xLCAtMSwgLTEpIiwKLSAgICAibSBtYXQyKC0xLCAtMSwgLTEsIC0xKSIsCi0gICAgWyJtIG1h
dDIoLTEsIC0xLCAtMSwgLTEpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTWF0MiBwYXJh
bWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLiIsCi0gICAgIm0gbWF0Migt
MSwgMSwgMSwgLTEpIiwKLSAgICAibSBtYXQyKC0xLCAxLCAxLCAtMSkiLAotICAgIFsibSBtYXQy
KC0xLCAxLCAxLCAtMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQyIHBhcmFtZXRl
ciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuIiwKLSAgICAibSBtYXQyKDEsIC0yLjIsIDMu
MTQsIDAuNCkiLAotICAgICJtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSIsCi0gICAgWyJtIG1h
dDIoMSwgLTIuMiwgMy4xNCwgMC40KSJdKTsKLQotaGVhZGluZygiTWF0MyBwYXJhbWV0ZXIgdGVz
dHMuIik7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQzIHBhcmFtZXRlci4iLAotICAgICJt
IG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkiLAotICAgICJtIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMSkiLAotICAgIFsibSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAs
IDEpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTWF0MyBwYXJhbWV0ZXIgd2l0aCBuZWdh
dGl2ZSB2YWx1ZXMuIiwKLSAgICAibSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEpIiwKLSAgICAibSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEp
IiwKLSAgICBbIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSJdKTsK
LXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5k
IHBvc2l0aXZlIHZhbHVlcy4iLAotICAgICJtIG1hdDMoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwg
LTEsIDEpIiwKLSAgICAibSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKSIsCi0g
ICAgWyJtIG1hdDMoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIDEpIl0pOwotdGVzdFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTWF0MyBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRz
LiIsCi0gICAgIm0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwg
MSkiLAotICAgICJtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQs
IDEpIiwKLSAgICBbIm0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSkiXSk7Ci0KLWhlYWRpbmcoIk1hdDQgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTWF0NCBwYXJhbWV0ZXIuIiwKLSAgICAibSBtYXQ0KDEsIDAsIDAsIDAs
IDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpIiwKLSAgICAibSBtYXQ0KDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpIiwKLSAgICBbIm0gbWF0
NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSJdKTsKLXRl
c3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgdmFsdWVz
LiIsCi0gICAgIm0gbWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkiLAotICAgICJtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpIiwKLSAgICBbIm0g
bWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQ0IHBhcmFtZXRlciB3
aXRoIG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuIiwKLSAgICAibSBtYXQ0KC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSkiLAotICAgICJt
IG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEs
IC0xKSIsCi0gICAgWyJtIG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDQgcGFy
YW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJtIG1hdDQoMSwgLTIu
MiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwg
LTIuMiwgMy4xNCwgMC40KSIsCi0gICAgIm0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0y
LjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpIiwK
LSAgICBbIm0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwg
LTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpIl0pOwotCi1oZWFkaW5nKCJDb21i
aW5lZCBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJOdW1iZXIg
cGFyYW1ldGVyLCBjb2xvciBwYXJhbWV0ZXIsIHRyYW5zZm9ybSBwYXJhbWV0ZXIsIG1hdHJpeCBw
YXJhbWV0ZXJzIGFuZCBhcnJheSBwYXJhbWV0ZXIuIiwKLSAgICAibiAxLCBjIHJnYigwLCAxMjgs
IDApLCB0IHJvdGF0ZSgwZGVnKSwgbTEgbWF0MigxLCAwLCAwLCAxKSwgbTIgbWF0MygxLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAxKSwgbTMgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAw
LCAxLCAwLCAwLCAwLCAwLCAxKSwgYSBhcnJheSgxKSIsCi0gICAgIm4gMSwgYyByZ2IoMCwgMTI4
LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXkoMSkiLAotICAgIFsibiAxIiwgImMgcmdiKDAs
IDEyOCwgMCkiLCAidCByb3RhdGUoMGRlZykiLCAibTEgbWF0MigxLCAwLCAwLCAxKSIsICJtMiBt
YXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpIiwgIm0zIG1hdDQoMSwgMCwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSkiLCAiYSBhcnJheSgxKSJdKTsKXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXBy
b3BlcnR5LWludmFsaWQuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgt
YXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LWludmFsaWQu
anMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBkNGEyNGEuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3Njcmlw
dC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLmpzCisrKyAvZGV2L251bGwKQEAg
LTEsNTEgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cy4KLQotZGVzY3JpcHRpb24oIlRlc3Qgc3JjIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Vi
a2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2JhbCBmb3Ig
dGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0ZXJBdFJ1bGUsIHN0eWxlRGVj
bGFyYXRpb247Ci0KLWZ1bmN0aW9uIHRlc3RJbnZhbGlkU3JjUHJvcGVydHkoZGVzY3JpcHRpb24s
IHByb3BlcnR5VmFsdWUpCi17Ci0gICAgdmFyIHNyY1Byb3BlcnR5ID0gInNyYzogIiArIHByb3Bl
cnR5VmFsdWUgKyAiOyI7Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHNy
Y1Byb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVy
IG15LWZpbHRlciB7ICIgKyBzcmNQcm9wZXJ0eSArICIgfSIsIDApOwotCi0gICAgZmlsdGVyQXRS
dWxlID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJB
dFJ1bGUudHlwZSIsICJDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVE
ZWNsYXJhdGlvbiA9IGZpbHRlckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGgiLCAiMCIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ3NyYycpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygiVVJMIHRlc3Rz
LiIpOwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiTm8gcHJvcGVydHkgdmFsdWUuIiwgIiIpOwot
dGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiT25seSBhIHNpbmdsZSBjb21tYS4iLCAiLCIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiT25seSB0d28gY29tbWFzLiIsICIsICwiKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIklkZW50aWZpZXIgaW5zdGVhZCBvZiBVUkwuIiwgInZlcnRleC1zaGFk
ZXIiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIklkZW50aWZpZXIgd2l0aCBmb3JtYXQgaW5z
dGVhZCBvZiBVUkwgd2l0aCBmb3JtYXQuIiwgInZlcnRleC1zaGFkZXIgZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJMb2NhbCBmdW5jdGlvbiBp
bnN0ZWFkIG9mIFVSTCBmdW5jdGlvbi4iLCAibG9jYWwoc2hhZGVyLnZzKSIpOwotCi1oZWFkaW5n
KCJGb3JtYXQgZnVuY3Rpb24gdGVzdHMuIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJJZGVu
dGlmaWVyIGluc3RlYWQgb2YgZm9ybWF0IGZ1bmN0aW9uLiIsICJ1cmwoc2hhZGVyLnZzKSB2ZXJ0
ZXgtc2hhZGVyIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJTdHJpbmcgaW5zdGVhZCBvZiBm
b3JtYXQgZnVuY3Rpb24uIiwgInVybChzaGFkZXIudnMpICd4LXNoYWRlci94LXZlcnRleCciKTsK
LXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIkZvcm1hdCBmdW5jdGlvbiBtaXNzcGVsbGVkLiIsICJ1
cmwoc2hhZGVyLnZzKSBmcm10KCd4LXNoYWRlci94LXZlcnRleCcpIik7Ci10ZXN0SW52YWxpZFNy
Y1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gZW1wdHkuIiwgInVybChzaGFkZXIudnMpIGZvcm1h
dCgpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gd2l0aCBzaW5n
bGUgaWRlbnRpZmVyIGFyZ3VtZW50LiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQodmVydGV4LXNo
YWRlcikiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIkZvcm1hdCBmdW5jdGlvbiB3aXRoIHNp
bmdsZSBudW1iZXIgYXJndW1lbnQuIiwgInVybChzaGFkZXIudnMpIGZvcm1hdCgwKSIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiRm9ybWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUgc3BhY2Ut
c2VwYXJhdGVkIGlkZW50aWZlciBhcmd1bWVudHMuIiwgInVybChzaGFkZXIudnMpIGZvcm1hdCh2
ZXJ0ZXgtc2hhZGVyIGZyYWdtZW50LXNoYWRlcikiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHko
IkZvcm1hdCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIGNvbW1hLXNlcGFyYXRlZCBpZGVudGlmZXIg
YXJndW1lbnRzLiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQodmVydGV4LXNoYWRlcixmcmFnbWVu
dC1zaGFkZXIpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gd2l0
aCBtdWx0aXBsZSBzcGFjZS1zZXBhcmF0ZWQgc3RyaW5nIGFyZ3VtZW50cy4iLCAidXJsKHNoYWRl
ci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcgJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIp
OwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiRm9ybWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUg
Y29tbWEtc2VwYXJhdGVkIHN0cmluZyBhcmd1bWVudHMuIiwgInVybChzaGFkZXIudnMpIGZvcm1h
dCgneC1zaGFkZXIveC12ZXJ0ZXgnLCd4LXNoYWRlci94LWZyYWdtZW50JykiKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIk11bHRpcGxlIHZhbGlkIGZvcm1hdCBmdW5jdGlvbnMuIiwgInVybChz
aGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSBmb3JtYXQoJ3gtc2hhZGVyL3gt
ZnJhZ21lbnQnKSIpOwotCi1oZWFkaW5nKCJQdW5jdHVhdGlvbiB0ZXN0cy4iKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIkxlYWRpbmcgY29tbWEgYmVmb3JlIGZpcnN0IFVSTC4iLCAiLCB1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiKTsKLXRlc3RJbnZhbGlkU3Jj
UHJvcGVydHkoIkNvbW1hIGJldHdlZW4gVVJMIGFuZCBmb3JtYXQuIiwgInVybChzaGFkZXIudnMp
LCBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHko
IlRyYWlsaW5nIGNvbW1hIGFmdGVyIGZvcm1hdC4iLCAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4
LXNoYWRlci94LXZlcnRleCcpLCIpOwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiVHdvIGNvbW1h
cyBiZXR3ZWVuIFVSTHMuIiwgInVybChzaGFkZXIudnMpLCx1cmwoc2hhZGVyLmZzKSIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiVHdvIGNvbW1hcyBiZXR3ZWVuIFVSTHMgd2l0aCBmb3JtYXQu
IiwgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwsdXJsKHNoYWRl
ci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiKTsKLXRlc3RJbnZhbGlkU3JjUHJv
cGVydHkoIk5vIGNvbW1hIGJldHdlZW4gVVJMcy4iLCAidXJsKHNoYWRlci52cykgdXJsKHNoYWRl
ci5mcykiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIk5vIGNvbW1hIGJldHdlZW4gVVJMcyB3
aXRoIGZvcm1hdC4iLCAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcp
IHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgv
c2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJz
aW5nLXNyYy1wcm9wZXJ0eS12YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MmU4MDZmYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdp
dGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LXZhbGlk
LmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTExICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1m
aWx0ZXItcGFyc2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IHNyYyBwcm9wZXJ0
eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2Ug
aGF2ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIg
ZmlsdGVyQXRSdWxlLCBzdHlsZURlY2xhcmF0aW9uLCBzcmNQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1
ZTsKLQotZnVuY3Rpb24gdGVzdFNyY1Byb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVl
LCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBzcmNQcm9wZXJ0eSA9
ICJzcmM6ICIgKyBwcm9wZXJ0eVZhbHVlICsgIjsiCi0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0
aW9uICsgIlxuIiArIHNyY1Byb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgi
QC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBzcmNQcm9wZXJ0eSArICIgfSIsIDApOwot
ICAgIGZpbHRlckF0UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91
bGRCZSgiZmlsdGVyQXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsK
LQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxk
QmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwgIjEiKTsKLSAgICBzaG91bGRCZSgicmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpKSIsICJcIiIg
KyBleHBlY3RlZFZhbHVlICsgIlwiIik7Ci0KLSAgICBzcmNQcm9wZXJ0eVZhbHVlID0gc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eUNTU1ZhbHVlKCdzcmMnKTsKLSAgICBzaG91bGRIYXZlQ29u
c3RydWN0b3IoInNyY1Byb3BlcnR5VmFsdWUiLCAiQ1NTVmFsdWVMaXN0Iik7Ci0KLSAgICBzaG91
bGRCZSgic3JjUHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0
cmluZygpKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAotICAgIGlm
IChzcmNQcm9wZXJ0eVZhbHVlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUZXh0cy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViVmFsdWUgPSBzcmNQcm9wZXJ0
eVZhbHVlW2ldOwotICAgICAgICAgICAgc2hvdWxkSGF2ZUNvbnN0cnVjdG9yKCJzdWJWYWx1ZSIs
ICJDU1NWYWx1ZSIpOwotICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSIsICJDU1NWYWx1ZS5DU1NfQ1VTVE9NIik7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3Zl
QmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBleHBlY3RlZFRleHRzW2ldICsgIlwi
Iik7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmcoIlVSTHMgd2l0aG91dCBmb3JtYXQg
dGVzdHMuIik7Ci10ZXN0U3JjUHJvcGVydHkoIk9uZSBVUkwgd2l0aG91dCBmb3JtYXQuIiwKLSAg
ICAidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSIsCi0gICAgWyJ1cmwoc2hh
ZGVyLnZzKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJUd28gVVJMcyB3aXRob3V0IGZvcm1hdC4i
LAotICAgICJ1cmwoc2hhZGVyLnZzKSwgdXJsKHNoYWRlci5mcykiLAotICAgICJ1cmwoc2hhZGVy
LnZzKSwgdXJsKHNoYWRlci5mcykiLAotICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwo
c2hhZGVyLmZzKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJUaHJlZSBVUkxzIHdpdGhvdXQgZm9y
bWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMp
IiwKLSAgICAidXJsKHNoYWRlci52cyksIHVybChzaGFkZXIuZnMpLCB1cmwoc2hhZGVyMykiLAot
ICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSIsCi0gICAgInVybChz
aGFkZXIzKSJdKTsKLQotaGVhZGluZygiVVJMcyB3aXRoIGZvcm1hdCB0ZXN0cy4iKTsKLXRlc3RT
cmNQcm9wZXJ0eSgiT25lIFVSTCB3aXRoIGZvcm1hdC4iLAotICAgICJ1cmwoc2hhZGVyLnZzKSBm
b3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNo
YWRlci94LXZlcnRleCcpIl0pOwotCi10ZXN0U3JjUHJvcGVydHkoIlR3byBVUkxzIHdpdGggZm9y
bWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwg
dXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiLAotICAgICJ1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZv
cm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICBbInVybChzaGFkZXIudnMpIGZvcm1h
dCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIsCi0gICAgInVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1z
aGFkZXIveC1mcmFnbWVudCcpIl0pOwotCi10ZXN0U3JjUHJvcGVydHkoIlRocmVlIFVSTHMgd2l0
aCBmb3JtYXQuIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRl
eCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNo
YWRlcjMpIGZvcm1hdCgndW5rbm93bicpIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4
LXNoYWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJh
Z21lbnQnKSwgdXJsKHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpIiwKLSAgICBbInVybChzaGFk
ZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIsCi0gICAgInVybChzaGFkZXIuZnMp
IGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICAidXJsKHNoYWRlcjMpIGZvcm1h
dCgndW5rbm93bicpIl0pOwotCi1oZWFkaW5nKCJNaXhlZCBVUkxzIHdpdGggYW5kIHdpdGhvdXQg
Zm9ybWF0IHRlc3RzLiIpOwotdGVzdFNyY1Byb3BlcnR5KCJUaHJlZSBVUkxzLiBNaWRkbGUgVVJM
IHdpdGhvdXQgZm9ybWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIv
eC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24n
KSIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJs
KHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24nKSIsCi0gICAgWyJ1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVy
LmZzKSIsCi0gICAgInVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24nKSJdKTsKLQotdGVzdFNy
Y1Byb3BlcnR5KCJUaHJlZSBVUkxzLiBGaXJzdCBhbmQgbGFzdCBVUkxzIHdpdGhvdXQgZm9ybWF0
LiIsCi0gICAgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVy
L3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpIiwKLSAgICAidXJsKHNoYWRlci52cyksIHVybChz
aGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpLCB1cmwoc2hhZGVyMykiLAot
ICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSIsCi0gICAgInVybChzaGFkZXIzKSJdKTsKLQotaGVhZGluZygiQ2Fw
aXRhbGl6YXRpb24gdGVzdHMuIik7Ci10ZXN0U3JjUHJvcGVydHkoIkFsbCB0b2tlbnMgY2FwaXRh
bGl6ZWQuIiwKLSAgICAiVVJMKFNIQURFUi5WUykgRk9STUFUKCdYLVNIQURFUi9YLVZFUlRFWCcp
IiwKLSAgICAidXJsKFNIQURFUi5WUykgZm9ybWF0KCdYLVNIQURFUi9YLVZFUlRFWCcpIiwKLSAg
ICBbInVybChTSEFERVIuVlMpIGZvcm1hdCgnWC1TSEFERVIvWC1WRVJURVgnKSJdKTsKLQotaGVh
ZGluZygiV2hpdGVzcGFjZSB0ZXN0cy4iKTsKLXRlc3RTcmNQcm9wZXJ0eSgiRXh0cmEgbGVhZGlu
ZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcgd2hpdGVzcGFjZS4gIiwKLSAgICAiICAgdXJsKHNoYWRl
ci52cykgICBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykgICAsICAgdXJsKHNoYWRlci5mcykg
ICBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSAgICIsCi0gICAgInVybChzaGFkZXIudnMp
IGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNo
YWRlci94LWZyYWdtZW50JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpIiwKLSAgICAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZy
YWdtZW50JykiXSk7Ci0KLXRlc3RTcmNQcm9wZXJ0eSgiTm8gd2hpdGVzcGFjZSBhcm91bmQgY29t
bWEuIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLHVy
bChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICAidXJsKHNo
YWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3Jt
YXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIsCi0gICAgWyJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJObyB3aGl0ZXNwYWNlIGJl
dHdlZW4gVVJMIGFuZCBmb3JtYXQuIiwKLSAgICAidXJsKHNoYWRlci52cylmb3JtYXQoJ3gtc2hh
ZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gt
dmVydGV4JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRl
eCcpIl0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21w
b3NpdGVkL2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5kLW1v
ZGVzLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY4MjQwM2Qu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21wb3NpdGVk
L2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDExNCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlciBibGVuZCBtb2RlcyBjb21wdXRlIGNvbG9yIHZh
bHVlcyBjb3JyZWN0bHkuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMgaXMgdGhlIHJl
ZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFzc2VzIGlmIGVh
Y2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29sb3Iu
Ci0gICAgICAgIFRoZSB0ZXN0IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3IgdmFsdWVzIGlu
IHRoaXMgcmVmZXJlbmNlIGZpbGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAgIDxzdHlsZT4K
LSAgICAucGFpci1vZi1zcXVhcmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAg
IC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAg
ICAgICAgd2lkdGg6IDIwcHg7Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2lu
OiAycHg7Ci0gICAgICAgIGZsb2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAq
LwotICAgIC5ub3JtYWwtZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0gICAgLm11bHRpcGx5LWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCAxOCUsIDI1JSk7Ci0gICAgfQotICAgIC5zY3JlZW4t
ZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAxODMsIDE5Mik7
Ci0gICAgfQotICAgIC5kYXJrZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMCUsIDMwJSwgNTAlKTsKLSAgICB9Ci0gICAgLmxpZ2h0ZW4tZXhwZWN0ZWQgewotICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAu
ZGlmZmVyZW5jZS1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUs
IDc3LCAxKTsKLSAgICB9Ci0gICAgLmV4Y2x1c2lvbi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYigyNTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhw
ZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA5MSwgMTI4KTsKLSAg
ICB9Ci0gICAgLmNvbG9yLWRvZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmdiKDI1NSwgMTkwLCAyNTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAgfQotICAg
IC5oYXJkLWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAl
LCA0NCUsIDUwJSk7Ci0gICAgfQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgODksIDEyOCk7Ci0gICAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAg
ICAgICA8ZGl2IGNsYXNzPSJub3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNs
YXNzPSJub3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9
InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4cGVjdGVk
Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibXVsdGlwbHktZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9InNjcmVlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNj
cmVlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1v
Zi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJs
aWdodGVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibGlnaHRlbi1leHBl
Y3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVz
Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9ImRpZmZlcmVuY2UtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2Pgot
ICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4
Y2x1c2lvbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1l
eHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVh
cmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9Im92ZXJsYXktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAg
IDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9y
LWRvZGdlLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iY29sb3ItZG9kZ2Ut
ZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1
YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWJ1cm4tZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgICAgICA8ZGl2IGNsYXNzPSJjb2xvci1idXJuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rp
dj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNz
PSJoYXJkLWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGFyZC1s
aWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1v
Zi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNvZnQtbGlnaHQtZXhwZWN0ZWQiPjwvZGl2PgotICAg
IDwvZGl2PgotICAgIDwhLS0KLSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGJsZW5kIG1vZGVzIHRv
IHRoaXMgcGFnZSwgYmUgY2FyZWZ1bCBub3QgdG8gZXhjZWVkIDYwMHB4IGluIAotICAgICAgICBo
ZWlnaHQsIHNpbmNlIER1bXBSZW5kZXJUcmVlIGNvbXBhcmVzIDgwMHg2MDAgc25hcHNob3RzIG9m
IHRoaXMgcGFnZS4KLSAgICAtLT4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5k
LW1vZGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2NvbXBvc2l0ZWQv
Y3VzdG9tLWZpbHRlci1ibGVuZC1tb2Rlcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBmOWNmN2NjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSwzMjkgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotICAg
IDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgYmxlbmQgbW9kZXMgY29tcHV0ZSBjb2xv
ciB2YWx1ZXMgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBUaGlzIHRlc3QgcGFzc2VzIGlm
IGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29s
b3IuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRD
U1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAg
ICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVhcmVzIHsK
LSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYg
ewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7Ci0gICAg
ICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZsb2F0OiBs
ZWZ0OwotICAgIH0KLSAgICAuZGVzdGluYXRpb24gewotICAgICAgICAvKiBEZXN0aW5hdGlvbiBj
b2xvciAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMzAlLCA1MCUpOwot
ICAgICAgICAvKiBGb3JjZSBhIEdQVSBjb21wb3NpdGVkIGxheWVyLiAqLwotICAgICAgICAtd2Vi
a2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7Ci0gICAgfQotICAgIC8qIEJsZW5k
IG1vZGVzICovCi0gICAgLm5vcm1hbCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
bm9uZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJj
ZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC8qCi0gICAg
ICAgIFRoZSBlcXVhdGlvbnMgYmVsb3cgdXNlIHRoZSBzeW1ib2xzIGFuZCBlcXVhdGlvbnMgZGVm
aW5lZCBpbiB0aGUgQ1NTIEJsZW5kaW5nIGFuZCBDb21wb3NpdGluZyBzcGVjLCB3aGVyZToKLSAg
ICAgICAgICAgIENvID0gb3V0cHV0IGNvbG9yCi0gICAgICAgICAgICBDcyA9IHNvdXJjZSBjb2xv
ciAoYWthICJtaXggY29sb3IiLCAiY3NzX01peENvbG9yIikKLSAgICAgICAgICAgIENiID0gZGVz
dGluYXRpb24gY29sb3IgKGFrYSAiYmFja2Ryb3AgY29sb3IiLCAib3JpZ2luYWwgRE9NIGVsZW1l
bnQgY29sb3IiKQotCi0gICAgICAgIGh0dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxl
L3RpcC9jb21wb3NpdGluZy9pbmRleC5odG1sI2dlbmVyYWxmb3JtdWxhCi0gICAgKi8KLSAgICAu
bm9ybWFsLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIE5vcm1hbDoKLQotICAg
ICAgICAgICAgQ28gPSBDcwotCi0gICAgICAgICAgICByID0gMC4wCi0gICAgICAgICAgICBnID0g
MC42Ci0gICAgICAgICAgICBiID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAubXVsdGlwbHkgewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21p
eC1jb2xvci5mcycpIG11bHRpcGx5IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41
IDEuMCk7Ci0gICAgfQotICAgIC5tdWx0aXBseS1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAg
ICAgICAgICBNdWx0aXBseToKLQotICAgICAgICAgICAgQ28gPSBDYiAqIENzCi0KLSAgICAgICAg
ICAgIHIgPSAxLjAgKiAwLjAgPSAwLjAKLSAgICAgICAgICAgIGcgPSAwLjMgKiAwLjYgPSAwLjE4
Ci0gICAgICAgICAgICBiID0gMC41ICogMC41ID0gMC4yNQotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDE4JSwgMjUlKTsKLSAgICB9Ci0gICAgLnNjcmVlbiB7
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8uLi9yZXNv
dXJjZXMvbWl4LWNvbG9yLmZzJykgc2NyZWVuIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAw
LjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5zY3JlZW4tZXhwZWN0ZWQgewotICAgICAgICAvKgot
ICAgICAgICAgICAgU2NyZWVuOgotCi0gICAgICAgICAgICBDbyA9IENiICsgQ3MgLSBDYiAqIENz
Ci0KLSAgICAgICAgICAgIHIgPSAxLjAgKyAwLjAgLSAxLjAgKiAwLjAgPSAxLjAKLSAgICAgICAg
ICAgIGcgPSAwLjMgKyAwLjYgLSAwLjMgKiAwLjYgPSAwLjcyCi0gICAgICAgICAgICBiID0gMC41
ICsgMC41IC0gMC41ICogMC41ID0gMC43NQotCi0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhl
IGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZv
cjoKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDAlLCA3MiUsIDc1JSk7Ci0g
ICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDE4MywgMTkyKTsK
LSAgICB9Ci0gICAgLmRhcmtlbiB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9u
ZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgZGFya2VuIHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5kYXJrZW4tZXhw
ZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgRGFya2VuOgotCi0gICAgICAgICAgICBD
byA9IG1pbihDYiwgQ3MpCi0KLSAgICAgICAgICAgIHIgPSBtaW4oMS4wLCAwLjApID0gMC4wCi0g
ICAgICAgICAgICBnID0gbWluKDAuMywgMC42KSA9IDAuMwotICAgICAgICAgICAgYiA9IG1pbigw
LjUsIDAuNSkgPSAwLjUKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDAlLCAzMCUsIDUwJSk7Ci0gICAgfQotICAgIC5saWdodGVuIHsKLSAgICAgICAgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uLy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMn
KSBsaWdodGVuIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAg
fQotICAgIC5saWdodGVuLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIExpZ2h0
ZW46Ci0KLSAgICAgICAgICAgIENvID0gbWF4KENiLCBDcykKLQotICAgICAgICAgICAgciA9IG1h
eCgxLjAsIDAuMCkgPSAxLjAKLSAgICAgICAgICAgIGcgPSBtYXgoMC4zLCAwLjYpID0gMC42Ci0g
ICAgICAgICAgICBiID0gbWF4KDAuNSwgMC41KSA9IDAuNQotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAuZGlmZmVy
ZW5jZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8u
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgZGlmZmVyZW5jZSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuZGlmZmVyZW5jZS1leHBlY3RlZCB7
Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBEaWZmZXJlbmNlOgotCi0gICAgICAgICAgICBDbyA9
IGFicyhDYiAtIENzKQotCi0gICAgICAgICAgICByID0gYWJzKDEuMCAtIDAuMCkgPSAxLjAKLSAg
ICAgICAgICAgIGcgPSBhYnMoMC4zIC0gMC42KSA9IDAuMwotICAgICAgICAgICAgYiA9IGFicygw
LjUgLSAwLjUpID0gMC4wCi0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2Fs
Y3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDMwJSwgMCUpOwotICAgICAgICAqLwot
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA3NywgMSk7Ci0gICAgfQotICAgIC5l
eGNsdXNpb24gewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgn
Li4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGV4Y2x1c2lvbiBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuZXhjbHVzaW9uLWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIEV4Y2x1c2lvbjoKLQotICAgICAgICAgICAgQ28g
PSBDYiArIENzIC0gMiAqIENiICogQ3MKLQotICAgICAgICAgICAgciA9IDEuMCArIDAuMCAtIDIu
MCAqIDEuMCAqIDAuMCA9IDEuMAotICAgICAgICAgICAgZyA9IDAuMyArIDAuNiAtIDIuMCAqIDAu
MyAqIDAuNiA9IDAuNTQKLSAgICAgICAgICAgIGIgPSAwLjUgKyAwLjUgLSAyLjAgKiAwLjUgKiAw
LjUgPSAwLjUKLQotICAgICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlv
biByZXF1aXJlcyB1cyB0byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNTQlLCA1MCUpOyAKLSAgICAgICAgKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMTM4LCAxMjcpOwotICAgIH0KLSAgICAub3Zl
cmxheSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8u
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgb3ZlcmxheSBzb3VyY2UtYXRvcCksIG1peF9jb2xv
ciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAub3ZlcmxheS1leHBlY3RlZCB7Ci0gICAg
ICAgIC8qCi0gICAgICAgICAgICBPdmVybGF5OgotCi0gICAgICAgICAgICBDbyA9IEhhcmRMaWdo
dChDcywgQ2IpCi0gICAgICAgICAgICAgICA9IGlmKENiIDw9IDAuNSkKLSAgICAgICAgICAgICAg
ICAgICAgIE11bHRpcGx5KENzLCAyICogQ2IpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAg
ICAgICAgICAgICAgICAgIFNjcmVlbihDcywgMiAqIENiIC0gMSkKLSAgICAgICAgICAgICAgID0g
aWYoQ2IgPD0gMC41KQotICAgICAgICAgICAgICAgICAgICAgQ3MgKiAoMiAqIENiKQotICAgICAg
ICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBDcyArICgyICogQ2IgLSAxKSAt
IChDcyAqICgyICogQ2IgLSAxKSkKLQotICAgICAgICAgICAgciA9IDAgKyAoMiAqIDEgLSAxKSAt
ICgwICogKDIgKiAxIC0gMSkpID0gMQotICAgICAgICAgICAgZyA9IDAuNiAqICgyICogMC4zKSA9
IDAuMzYKLSAgICAgICAgICAgIGIgPSAwLjUgKiAoMiAqIDAuNSkgPSAwLjUKLQotICAgICAgICAg
ICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2Ug
dGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MTAwJSwgMzYlLCA1MCUpOwotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
Z2IoMjU1LCA5MSwgMTI4KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRvZGdlIHsKLSAgICAgICAgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uLy4uL3Jlc291cmNlcy9taXgtY29s
b3IuZnMnKSBjb2xvci1kb2RnZSBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAx
LjApOwotICAgIH0KLSAgICAuY29sb3ItZG9kZ2UtZXhwZWN0ZWQgewotICAgICAgICAvKgotICAg
ICAgICAgICAgQ29sb3JEb2RnZToKLQotICAgICAgICAgICAgQ28gPSBpZihDcyA8IDEpCi0gICAg
ICAgICAgICAgICAgICAgICBtaW4oMSwgQ2IgLyAoMSAtIENzKSkKLSAgICAgICAgICAgICAgICAg
ZWxzZQotICAgICAgICAgICAgICAgICAgICAgMQotCi0gICAgICAgICAgICByID0gbWluKDEsIDEg
LyAoMSAtIDApKSA9IDEKLSAgICAgICAgICAgIGcgPSBtaW4oMSwgMC4zIC8gKDEgLSAwLjYpKSA9
IDAuNzUKLSAgICAgICAgICAgIGIgPSBtaW4oMSwgMC41IC8gKDEgLSAwLjUpKSA9IDEKLQotICAg
ICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0
byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMTAwJSwgNzUlLCAxMDAlKTsKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogcmdiKDI1NSwgMTkwLCAyNTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybiB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMv
bWl4LWNvbG9yLmZzJykgY29sb3ItYnVybiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjggMC44
IDAuOCAxLjApOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7Ci0gICAgICAgIC8q
Ci0gICAgICAgICAgICBDb2xvckJ1cm46Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPiAwKQot
ICAgICAgICAgICAgICAgICAgICAgMSAtIG1pbigxLCAoMSAtIENiKSAvIENzKQotICAgICAgICAg
ICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAwCi0KLSAgICAgICAgICAgICByID0g
MSAtIG1pbigxLCAoMSAtIDEpIC8gMC44KSA9IDEKLSAgICAgICAgICAgICBnID0gMSAtIG1pbigx
LCAoMSAtIDAuMykgLyAwLjgpID0gMC4xMjUKLSAgICAgICAgICAgICBiID0gMSAtIG1pbigxLCAo
MSAtIDAuNSkgLyAwLjgpID0gMC4zNzUKLQotICAgICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBj
b2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMTIuNSUsIDM3LjUlKTsK
LSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMzEsIDk2KTsK
LSAgICB9Ci0gICAgLmhhcmQtbGlnaHQgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9t
KG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGhhcmQtbGlnaHQg
c291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmhh
cmQtbGlnaHQtZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgSGFyZExpZ2h0Ogot
Ci0gICAgICAgICAgICBDbyA9IGlmKENzIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIE11
bHRpcGx5KENiLCAyICogQ3MpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAg
ICAgICAgIFNjcmVlbihDYiwgMiAqIENzIC0xKQotICAgICAgICAgICAgICAgPSBpZihDcyA8PSAw
LjUpCi0gICAgICAgICAgICAgICAgICAgICBDYiAqICgyICogQ3MpCi0gICAgICAgICAgICAgICAg
IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIENiICsgKDIgKiBDcyAtIDEpIC0gKENiICogKDIg
KiBDcyAtIDEpKQotCi0gICAgICAgICAgICByID0gMSAqICgyICogMCkgPSAwCi0gICAgICAgICAg
ICBnID0gMC4zICsgKDIgKiAwLjYgLSAxKSAtICgwLjMgKiAoMiAqIDAuNiAtIDEpKSA9IDAuNDQK
LSAgICAgICAgICAgIGIgPSAwLjUgKiAoMiAqIDAuNSkgPSAwLjUKLSAgICAgICAgKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCA0NCUsIDUwJSk7Ci0gICAgfQotICAgIC5zb2Z0
LWxpZ2h0IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4u
Ly4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBzb2Z0LWxpZ2h0IHNvdXJjZS1hdG9wKSwgbWl4
X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIFNvZnRMaWdodDoKLQotICAgICAgICAgICAgQ28g
PSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBDYiAtICgxIC0gMiAqIENzKSAq
IENiICogKDEgLSBDYikKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAg
ICAgQ2IgKyAoMiAqIENzIC0gMSkgKiAoRChDYikgLSBDYikKLQotICAgICAgICAgICAgd2l0aAot
Ci0gICAgICAgICAgICBEKENiKSA9IGlmKENiIDw9IDAuMjUpCi0gICAgICAgICAgICAgICAgICAg
ICAgICAoMTYgKiBDYiAtIDEyKSAqIENiICsgNCkgKiBDYgotICAgICAgICAgICAgICAgICAgICBl
bHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBzcXJ0KENiKQotCi0gICAgICAgICAgICBELnIg
PSBzcXJ0KDEpID0gMQotICAgICAgICAgICAgRC5nID0gc3FydCgwLjMpID0gMC41NDc3MjI1NTc1
MDUxNjYKLSAgICAgICAgICAgIEQuYiA9IHNxcnQoMC41KSA9IDAuNzA3MTA2NzgxMTg2NTQ4Ci0g
ICAgICAgICAgICByID0gMSAtICgxIC0gMiAqIDApICogMSAqICgxIC0gMSkgPSAxCi0gICAgICAg
ICAgICBnID0gMC4zICsgKDIgKiAwLjYgLSAxKSAqIChELmcgLSAwLjMpID0gMC4zNDk1NDQ1MTE1
MDEwMzMKLSAgICAgICAgICAgIGIgPSAwLjUgLSAoMSAtIDIgKiAwLjUpICogMC41ICogKDEgLSAw
LjUpID0gMC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRp
b24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDM0Ljk1NDQ1MSUsIDUwJSk7Ci0gICAgICAgICov
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDg5LCAxMjgpOwotICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVh
cmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbm9ybWFsIj48L2Rpdj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0ibm9ybWFsLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAg
ICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0
aW5hdGlvbiBtdWx0aXBseSI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4
cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFy
ZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzY3JlZW4iPjwvZGl2PgotICAg
ICAgICA8ZGl2IGNsYXNzPSJzY3JlZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAg
IDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3Rp
bmF0aW9uIGRhcmtlbiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRhcmtlbi1leHBlY3Rl
ZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbGlnaHRlbiI+PC9kaXY+Ci0gICAgICAg
IDxkaXYgY2xhc3M9ImxpZ2h0ZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxk
aXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0
aW9uIGRpZmZlcmVuY2UiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJkaWZmZXJlbmNlLWV4
cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFy
ZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBleGNsdXNpb24iPjwvZGl2Pgot
ICAgICAgICA8ZGl2IGNsYXNzPSJleGNsdXNpb24tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2
PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9
ImRlc3RpbmF0aW9uIG92ZXJsYXkiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJvdmVybGF5
LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNx
dWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBjb2xvci1kb2RnZSI+PC9k
aXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWRvZGdlLWV4cGVjdGVkIj48L2Rpdj4KLSAg
ICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBjb2xvci1idXJuIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0iY29sb3ItYnVybi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gaGFy
ZC1saWdodCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImhhcmQtbGlnaHQtZXhwZWN0ZWQi
PjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0g
ICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIHNvZnQtbGlnaHQiPjwvZGl2PgotICAgICAg
ICA8ZGl2IGNsYXNzPSJzb2Z0LWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAg
ICA8IS0tCi0gICAgICAgIElmIHlvdSBhZGQgbW9yZSBibGVuZCBtb2RlcyB0byB0aGlzIHBhZ2Us
IGJlIGNhcmVmdWwgbm90IHRvIGV4Y2VlZCA2MDBweCBpbiAKLSAgICAgICAgaGVpZ2h0LCBzaW5j
ZSBEdW1wUmVuZGVyVHJlZSBjb21wYXJlcyA4MDB4NjAwIHNuYXBzaG90cyBvZiB0aGlzIHBhZ2Uu
Ci0gICAgLS0+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwtZXhwZWN0
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1h
LXRleC1jb29yZC1vcHRpb25hbC1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA1ZDkwNGIwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hLXRleC1jb29yZC1vcHRpb25hbC1leHBlY3RlZC5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxo
ZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXJzIHdpdGggYmxlbmRpbmcg
YW5kIGNvbXBvc2l0aW5nIGV4ZWN1dGUgd2hldGhlciBvciBub3QgdGhlIGF1dGhvciBkZWZpbmVz
IGFfdGV4Q29vcmQuPC90aXRsZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNo
b3VsZCBzZWUgMiB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0tPgotICAgIDxzdHls
ZT4KLSAgICBkaXYgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsK
LSAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgbWFy
Z2luOiAxMHB4OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRp
dj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWEtdGV4LWNvb3Jk
LW9wdGlvbmFsLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMGM0NmI5MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDQwICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyB3aXRoIGJsZW5kaW5nIGFuZCBjb21wb3Np
dGluZyBleGVjdXRlIHdoZXRoZXIgb3Igbm90IHRoZSBhdXRob3IgZGVmaW5lcyBhX3RleENvb3Jk
LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIDIg
dmVydGljYWxseS1zdGFja2VkIGdyZWVuIGJveGVzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRl
c3QoKQotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMg
YWZ0ZXIgdGhlIHNoYWRlcnMgZG93bmxvYWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwot
ICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7Ci0gICAgICAg
IC8qIElmIHRoZSBzaGFkZXJzIGV4ZWN1dGUsIHRoZXkgd2lsbCB0dXJuIHRoZSBlbGVtZW50J3Mg
Y29sb3IgZnJvbSByZWQgdG8gZ3JlZW4uICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJn
YigyNTUsIDAsIDApOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4
OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0gICAgfQotICAgIC5hLXRleC1jb29yZC1kZWZpbmVk
IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hLXRl
eC1jb29yZC1kZWZpbmVkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycp
IG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMS4wIDAuMCAxLjApOwotICAgIH0K
LSAgICAuYS10ZXgtY29vcmQtdW5kZWZpbmVkIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hLXRleC1jb29yZC11bmRlZmluZWQudnMnKSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2Nv
bG9yIDAuMCAxLjAgMC4wIDEuMCk7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9k
eSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBjbGFzcz0iYS10ZXgtY29vcmQtZGVmaW5l
ZCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYS10ZXgtY29vcmQtdW5kZWZpbmVkIj48L2Rpdj4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFuaW1hdGlvbi1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIzMDk4NGMuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFuaW1hdGlvbi1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0gICAgICAgCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tZnJvbS1ub25lLWJveCIgZWxlbWVu
dCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUu
dnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0
ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLXRvLW5vbmUtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBz
b21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAx
LCByb3RhdGVCeSAzMCwgb2Zmc2V0IDApCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkg
Zm9yICJjdXN0b20tZnJvbS1uby1wYXJhbXMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhp
bmcgY2xvc2UgdG86IGN1c3RvbSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCByb3Rh
dGVCeSAzMCwgb2Zmc2V0IDApCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJj
dXN0b20tdG8tbm8tcGFyYW1zLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3Nl
IHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAs
IG9mZnNldCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1p
eC1hdHRyaWJ1dGVzLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBj
dXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDUgNSwgcm90YXRlQnkgMzAsIG9mZnNl
dCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLWZyb20tZGlm
Zi1wYXJhbXMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3Rv
bSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCBwYXJhbSAxMCwgcm90YXRlQnkgNjAs
IG9mZnNldCAxMCwgYW5vdGhlcl9wYXJhbSA1KQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3Bl
cnR5IGZvciAiY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29t
ZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwg
cGFyYW0gMTAsIHJvdGF0ZUJ5IDYwLCBvZmZzZXQgMTAsIGFub3RoZXJfcGFyYW0gNSkKLVBBU1Mg
LSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1taXgtcGFyYW1zLWJveCIgZWxl
bWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3Rh
dGUudnMpIG5vbmUsIDEgMSwgcGFyYW0gMTAsIGFub3RoZXJfcGFyYW0gNSwgZmlyc3RfcGFyYW0g
Niwgcm90YXRlQnkgNjAsIG9mZnNldCAxMCwgbGFzdF9wYXJhbSA0KQotUEFTUyAtICJ3ZWJraXRG
aWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1peC1udW1iZXJzLWJveCIgZWxlbWVudCBhdCAx
cyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5v
bmUsIDEgMSwgcm90YXRlQnkgNDUsIGEgNS41LCBiIDExIDE2LjUsIGMgMjIgMjcuNSAzMywgZCAz
OC41IDQ0IDQ5LjUpCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24uaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZmM5M2IxMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYW5pbWF0aW9uLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxMzkgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNj
cmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVu
YWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVm
ZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICB9Ci0gICAgPC9zY3Jp
cHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBtYXJnaW46IDEwcHg7
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwotICAgICAgICAgICAgZGlzcGxh
eTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0b20tZnJvbS1u
b25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWZyb20tbm9u
ZS1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLXRvLW5v
bmUtYm94IHsKLSAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tdG8tbm9uZS1h
bmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLWZyb20tbm8t
cGFyYW1zLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWZyb20t
bm8tcGFyYW1zLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0
b20tdG8tbm8tcGFyYW1zLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3Vz
dG9tLXRvLW5vLXBhcmFtcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgICAgICAKLSAg
ICAgICAgI2N1c3RvbS1taXgtYXR0cmlidXRlcy1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1h
bmltYXRpb246IGN1c3RvbS1taXgtYXR0cmlidXRlcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAg
fQotICAgIAotICAgICAgICAjY3VzdG9tLWZyb20tZGlmZi1wYXJhbXMtYm94IHsKLSAgICAgICAg
ICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIDJzIGxp
bmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLXRvLWRpZmYtcGFyYW1z
LWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0b20tbWl4LXBh
cmFtcy1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGN1c3RvbS1taXgtcGFy
YW1zLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICAjY3VzdG9t
LW1peC1udW1iZXJzLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9t
LW1peC1udW1iZXJzLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgIEAt
d2Via2l0LWtleWZyYW1lcyBjdXN0b20tZnJvbS1ub25lLWFuaW0gewotICAgICAgICAgICAgZnJv
bSB7IC13ZWJraXQtZmlsdGVyOiBub25lOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCByb3RhdGVC
eSAzMCwgb2Zmc2V0IDApOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFt
ZXMgY3VzdG9tLXRvLW5vbmUtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCByb3RhdGVCeSAz
MCwgb2Zmc2V0IDApOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IG5vbmU7
IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWZy
b20tbm8tcGFyYW1zLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSk7IH0KLSAgICAgICAgICAg
IHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LXJv
dGF0ZS52cyksIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCk7IH0KLSAgICAgICAgfQotCi0gICAgICAg
IEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tdG8tbm8tcGFyYW1zLWFuaW0gewotICAgICAgICAg
ICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzKSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKTsgfQotICAgICAgICAgICAgdG8gICB7
IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZz
KSk7IH0KLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1
c3RvbS1taXgtYXR0cmlidXRlcy1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cyksIHJvdGF0ZUJ5
X2EgMzAsIG9mZnNldF9hIDApOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCA1IDUgYm9yZGVyLWJv
eCwgcm90YXRlQnkgMzAsIG9mZnNldCAwKTsgfQotICAgICAgICB9Ci0gICAgCi0gICAgICAgIEAt
d2Via2l0LWtleWZyYW1lcyBjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIHsKLSAgICAgICAg
ICAgIGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4
LXJvdGF0ZS52cyksIHBhcmFtIDEwLCByb3RhdGVCeSAzMCwgb2Zmc2V0IDAsIGFub3RoZXJfcGFy
YW0gNSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgu
Li9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cyksIHJvdGF0ZUJ5IDkwLCBvZmZzZXQgMjApOyB9
Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLXRvLWRpZmYt
cGFyYW1zLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSwgcm90YXRlQnkgOTAsIG9mZnNldCAy
MCk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9y
ZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cyksIHBhcmFtIDEwLCByb3RhdGVCeSAzMCwgb2Zmc2V0
IDAsIGFub3RoZXJfcGFyYW0gNSk7IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtp
dC1rZXlmcmFtZXMgY3VzdG9tLW1peC1wYXJhbXMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMp
LCBmaXJzdF9wYXJhbSA2LCByb3RhdGVCeSA5MCwgb2Zmc2V0IDIwLCBsYXN0X3BhcmFtIDQpOyB9
Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3Vy
Y2VzL3ZlcnRleC1yb3RhdGUudnMpLCBwYXJhbSAxMCwgcm90YXRlQnkgMzAsIG9mZnNldCAwLCBh
bm90aGVyX3BhcmFtIDUpOyB9Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIEAtd2Via2l0
LWtleWZyYW1lcyBjdXN0b20tbWl4LW51bWJlcnMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMp
LCByb3RhdGVCeSAwLCBhIDEsIGIgMiAzLCBjIDQgNSA2LCBkIDcgOCA5KTsgfQotICAgICAgICAg
ICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzKSwgcm90YXRlQnkgOTAsIGEgMTAsIGIgMjAgMzAsIGMgNDAgNTAgNjAsIGQgNzAg
ODAgOTApOyB9Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotICAgIDxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1wYXJzZXIuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9hbmltYXRpb25zL3Jlc291cmNlcy9hbmltYXRpb24tdGVzdC1oZWxwZXJz
LmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci0gICAg
ICAgIGNvbnN0IGV4cGVjdGVkVmFsdWVzID0gWwotICAgICAgICAgICAgLy8gW2FuaW1hdGlvbi1u
YW1lLCB0aW1lLCBlbGVtZW50LWlkLCBwcm9wZXJ0eSwgZXhwZWN0ZWQtdmFsdWUsIHRvbGVyYW5j
ZV0KLSAgICAgICAgICAgIFsiY3VzdG9tLWZyb20tbm9uZS1hbmltIiwgIDEsICJjdXN0b20tZnJv
bS1ub25lLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZz
KSBub25lLCAxIDEsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCknLCAwXSwKLSAgICAgICAgICAgIFsi
Y3VzdG9tLXRvLW5vbmUtYW5pbSIsICAxLCAiY3VzdG9tLXRvLW5vbmUtYm94IiwgIndlYmtpdEZp
bHRlciIsICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkg
MzAsIG9mZnNldCAwKScsIDBdLAotCi0gICAgICAgICAgICBbImN1c3RvbS1mcm9tLW5vLXBhcmFt
cy1hbmltIiwgIDEsICJjdXN0b20tZnJvbS1uby1wYXJhbXMtYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9m
ZnNldCAwKScsIDBdLAotICAgICAgICAgICAgWyJjdXN0b20tdG8tbm8tcGFyYW1zLWFuaW0iLCAg
MSwgImN1c3RvbS10by1uby1wYXJhbXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJs
KHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKScsIDBd
LAotICAgICAgICAgICAgCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtYXR0cmlidXRlcy1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LWF0dHJpYnV0ZXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0
b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDUgNSwgcm90YXRlQnkgMzAsIG9mZnNldCAw
KScsIDBdLAotCi0gICAgICAgICAgICAvLyBGSVhNRTogQ1NTIFNoYWRlcnMgZG8gbm90IGdldCBn
b29kIEZQUyBpbiBkZWJ1ZyBtb2RlLCBzbyB0aGUgdG9sZXJhbmNlIG5lZWRzIHRvIGJlIGhpZ2hl
ci4KLSAgICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04NTA4NgotICAgICAgICAgICAgWyJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIiwgIDEs
ICJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1
cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCBwYXJhbSAxMCwgcm90YXRlQnkgNjAsIG9m
ZnNldCAxMCwgYW5vdGhlcl9wYXJhbSA1KScsIDVdLAotICAgICAgICAgICAgWyJjdXN0b20tdG8t
ZGlmZi1wYXJhbXMtYW5pbSIsICAxLCAiY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJveCIsICJ3ZWJr
aXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHBhcmFt
IDEwLCByb3RhdGVCeSA2MCwgb2Zmc2V0IDEwLCBhbm90aGVyX3BhcmFtIDUpJywgNV0sCi0KLSAg
ICAgICAgICAgIFsiY3VzdG9tLW1peC1wYXJhbXMtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1wYXJh
bXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5v
bmUsIDEgMSwgcGFyYW0gMTAsIGFub3RoZXJfcGFyYW0gNSwgZmlyc3RfcGFyYW0gNiwgcm90YXRl
QnkgNjAsIG9mZnNldCAxMCwgbGFzdF9wYXJhbSA0KScsIDVdLAotICAgICAgICAgICAgWyJjdXN0
b20tbWl4LW51bWJlcnMtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1udW1iZXJzLWJveCIsICJ3ZWJr
aXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHJvdGF0
ZUJ5IDQ1LCBhIDUuNSwgYiAxMSAxNi41LCBjIDIyIDI3LjUgMzMsIGQgMzguNSA0NCA0OS41KScs
IDEwXQotICAgICAgICBdOwotICAgICAgICBydW5BbmltYXRpb25UZXN0KGV4cGVjdGVkVmFsdWVz
KTsKLSAgICA8L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xhc3M9ImJveCIg
aWQ9ImN1c3RvbS1mcm9tLW5vbmUtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlk
PSJjdXN0b20tdG8tbm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1
c3RvbS1mcm9tLW5vLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9
ImN1c3RvbS10by1uby1wYXJhbXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlk
PSJjdXN0b20tbWl4LWF0dHJpYnV0ZXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3gi
IGlkPSJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9
ImJveCIgaWQ9ImN1c3RvbS10by1kaWZmLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xh
c3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtcGFyYW1zLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0iYm94IiBpZD0iY3VzdG9tLW1peC1udW1iZXJzLWJveCI+PC9kaXY+Ci0KLSAgICA8ZGl2IGlk
PSJyZXN1bHQiPgotICAgIDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5n
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1hcnJheS1ibGVuZGluZy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDM2OWM5MzQ5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1ibGVuZGluZy1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSw5ICswLDAgQEAKLSAgICAgCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVy
dHkgZm9yICJjdXN0b20tYmxlbmQtZnJvbS1ub25lLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29t
ZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEg
MSwgYXJyYXlGcm9tTm9uZUFuaW0gYXJyYXkoMTAsIDIwKSkKLVBBU1MgLSAid2Via2l0RmlsdGVy
IiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1ibGVuZC10by1ub25lLWJveCIgZWxlbWVudCBhdCAxcyBz
YXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5v
bmUsIDEgMSwgYXJyYXlUb05vbmVBbmltIGFycmF5KDEwLCAyMCkpCi1QQVNTIC0gIndlYmtpdEZp
bHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtc2luZ2xlLWVsZW1lbnQtYm94IiBlbGVt
ZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5l
ZWRlZC52cykgbm9uZSwgMSAxLCBzaW5nbGVFbGVtZW50QXJyYXkgYXJyYXkoNSkpCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtdHdvLWZsb2F0cy1ib3gi
IGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1zaGFk
ZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHR3b0Zsb2F0c0FycmF5IGFycmF5KDIsIDYuNCkpCi1Q
QVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtbXVsdGlwbGUt
ZWxlbWVudHMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3Rv
bSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCBtdWx0aXBsZUVsZW1lbnRzQXJy
YXkgYXJyYXkoNSwgMTAsIDUsIDEwLCA1LCAxMCwgNSwgMTAsIDUpKQotUEFTUyAtICJ3ZWJraXRG
aWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLWJsZW5kLWZpcnN0LWxvbmdlci1ib3giIGVsZW1l
bnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1zaGFkZXItbmVl
ZGVkLnZzKSBub25lLCAxIDEsIGZpcnN0TG9uZ2VyIGFycmF5KDEwLCAxMCwgMTAsIDEwKSkKLVBB
U1MgLSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1ibGVuZC1zZWNvbmQtbG9u
Z2VyLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJs
KG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgc2Vjb25kTG9uZ2VyIGFycmF5KDEwLCAx
MCwgMTAsIDEwLCAxMCkpCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1ibGVuZGluZy5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5nLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhmOWEwYWEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5nLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwxMTUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1s
PgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAg
ICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAg
ICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAg
ICAgICBtYXJnaW46IDEwcHg7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwot
ICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0KLSAgICAgICAg
I2N1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94IHsKLSAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0
aW9uOiBjdXN0b20tYmxlbmQtZnJvbS1ub25lLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0K
LSAgICAgICAgI2N1c3RvbS1ibGVuZC10by1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0
LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXRvLW5vbmUtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAg
IH0KLQotICAgICAgICAjY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWJveCB7Ci0gICAgICAg
ICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWFuaW0g
MnMgbGluZWFyOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC10d28tZmxvYXRz
LWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXR3by1m
bG9hdHMtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICAjY3VzdG9tLWJsZW5k
LW11bHRpcGxlLWVsZW1lbnRzLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjog
Y3VzdG9tLWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9
Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC1maXJzdC1sb25nZXItYm94IHsKLSAgICAgICAgICAg
IC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tYmxlbmQtZmlyc3QtbG9uZ2VyLWFuaW0gMnMgbGlu
ZWFyOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXNlY29uZC1s
b25nZXItYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlm
cmFtZXMgY3VzdG9tLWJsZW5kLWZyb20tbm9uZS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSk7IH0KLSAgICAg
ICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVk
LnZzKSwgYXJyYXlGcm9tTm9uZUFuaW0gYXJyYXkoMTAuMCwgMjAuMCkpOyB9Ci0gICAgICAgIH0K
LQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWJsZW5kLXRvLW5vbmUtYW5pbSB7
Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVy
LW5lZWRlZC52cyksIGFycmF5VG9Ob25lQW5pbSBhcnJheSgxMC4wLCAyMC4wKSk7IH0KLSAgICAg
ICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVk
LnZzKSk7IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3Vz
dG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJr
aXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzaW5nbGVFbGVtZW50
QXJyYXkgYXJyYXkoMCkpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHNpbmdsZUVsZW1lbnRBcnJheSBhcnJheSgx
MCkpOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWJs
ZW5kLXR3by1mbG9hdHMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHR3b0Zsb2F0c0FycmF5IGFycmF5KDEu
MDEsIDMuMTQpKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0d29GbG9hdHNBcnJheSBhcnJheSgzLjAzLCA5LjQy
KSk7IH0KLSAgICAgICAgfQotCi0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1i
bGVuZC1tdWx0aXBsZS1lbGVtZW50cy1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0
LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgbXVsdGlwbGVFbGVtZW50
c0FycmF5IGFycmF5KDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDApKTsgfQotICAgICAgICAgICAg
dG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBt
dWx0aXBsZUVsZW1lbnRzQXJyYXkgYXJyYXkoMTAsIDIwLCAxMCwgMjAsIDEwLCAyMCwgMTAsIDIw
LCAxMCkpOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9t
LWJsZW5kLWZpcnN0LWxvbmdlci1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgZmlyc3RMb25nZXIgYXJyYXko
MTAsIDEwLCAxMCwgMTAsIDEwKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgZmlyc3RMb25nZXIgYXJyYXkoMTAs
IDEwLCAxMCwgMTApKTsgfQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVz
IGN1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzZWNvbmRMb25n
ZXIgYXJyYXkoMTAsIDEwLCAxMCwgMTApKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzZWNvbmRMb25nZXIgYXJy
YXkoMTAsIDEwLCAxMCwgMTAsIDEwKSk7IH0KLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci0gICAg
PHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLXBhcnNlci5qcyI+PC9zY3Jp
cHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1h
dGlvbi10ZXN0LWhlbHBlcnMuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KLSAgICAgICAgY29uc3QgZXhwZWN0ZWRWYWx1ZXMgPSBbCi0gICAgICAgICAg
ICAvLyBbYW5pbWF0aW9uLW5hbWUsIHRpbWUsIGVsZW1lbnQtaWQsIHByb3BlcnR5LCBleHBlY3Rl
ZC12YWx1ZSwgdG9sZXJhbmNlXQotICAgICAgICAgICAgWyJjdXN0b20tYmxlbmQtZnJvbS1ub25l
LWFuaW0iLCAgMSwgImN1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgYXJyYXlGcm9tTm9u
ZUFuaW0gYXJyYXkoMTAsIDIwKSknLCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLWJsZW5kLXRv
LW5vbmUtYW5pbSIsICAxLCAiY3VzdG9tLWJsZW5kLXRvLW5vbmUtYm94IiwgIndlYmtpdEZpbHRl
ciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgYXJyYXlUb05v
bmVBbmltIGFycmF5KDEwLCAyMCkpJywgMl0sCi0KLSAgICAgICAgICAgIFsiY3VzdG9tLWJsZW5k
LXNpbmdsZS1lbGVtZW50LWFuaW0iLCAxLCAiY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWJv
eCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25l
LCAxIDEsIHNpbmdsZUVsZW1lbnRBcnJheSBhcnJheSg1KSknLCAyXSwKLQotICAgICAgICAgICAg
WyJjdXN0b20tYmxlbmQtdHdvLWZsb2F0cy1hbmltIiwgMSwgImN1c3RvbS1ibGVuZC10d28tZmxv
YXRzLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZz
KSBub25lLCAxIDEsIHR3b0Zsb2F0c0FycmF5IGFycmF5KDIsIDYuNCkpJywgMl0sCi0KLSAgICAg
ICAgICAgIFsiY3VzdG9tLWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWFuaW0iLCAxLCAiY3VzdG9t
LWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVy
bChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIG11bHRpcGxlRWxlbWVudHNBcnJheSBh
cnJheSg1LCAxMCwgNSwgMTAsIDUsIDEwLCA1LCAxMCwgNSkpJywgNF0sCi0KLSAgICAgICAgICAg
IFsiY3VzdG9tLWJsZW5kLWZpcnN0LWxvbmdlci1hbmltIiwgMSwgImN1c3RvbS1ibGVuZC1maXJz
dC1sb25nZXItYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVk
ZWQudnMpIG5vbmUsIDEgMSwgZmlyc3RMb25nZXIgYXJyYXkoMTAsIDEwLCAxMCwgMTApKScsIDJd
LAotCi0gICAgICAgICAgICBbImN1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWFuaW0iLCAxLCAi
Y3VzdG9tLWJsZW5kLXNlY29uZC1sb25nZXItYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20o
dXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgc2Vjb25kTG9uZ2VyIGFycmF5KDEw
LCAxMCwgMTAsIDEwLCAxMCkpJywgMl1dOwotICAgICAgICBydW5BbmltYXRpb25UZXN0KGV4cGVj
dGVkVmFsdWVzKTsKLSAgICA8L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xh
c3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94Ij48L2Rpdj4KLSAgICA8ZGl2
IGNsYXNzPSJib3giIGlkPSJjdXN0b20tYmxlbmQtdG8tbm9uZS1ib3giPjwvZGl2PgotICAgIDxk
aXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC1zaW5nbGUtZWxlbWVudC1ib3giPjwvZGl2
PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC10d28tZmxvYXRzLWJveCI+
PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLWJsZW5kLW11bHRpcGxlLWVs
ZW1lbnRzLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLWJsZW5k
LWZpcnN0LWxvbmdlci1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3Rv
bS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0icmVzdWx0Ij4K
LSAgICA8L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1leHBlY3RlZC5odG1sIGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI4M2QwNjIuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWV4
cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdHMgdGhlIGFycmF5KCkg
ZnVuY3Rpb24gaW4gY3VzdG9tIGZpbHRlcnM8L3RpdGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAg
ICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsK
LSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+
Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRp
diBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5
LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4
LWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNhNmJlZTIuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWFycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDE3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCB2ZXJ0ZXggc2hhZGVycyBjYW4gaW5kaXJlY3RseSBpbmRleCB1bmlm
b3JtIGFycmF5cy48L3RpdGxlPgotICAgIDwhLS0gVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZpbGUg
Zm9yIHRoZSB0ZXN0LiBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgZ3JlZW4g
c3F1YXJlLiAtLT4KLSAgICA8c3R5bGU+Ci0gICAgICAgIGRpdiB7Ci0gICAgICAgICAgICBiYWNr
Z3JvdW5kLWNvbG9yOiAjMGYwOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAg
ICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9k
eT4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5k
aXJlY3QtaW5kZXguaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4Lmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGE5YjY3OGMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDM3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCB2ZXJ0ZXggc2hhZGVycyBjYW4gaW5k
aXJlY3RseSBpbmRleCB1bmlmb3JtIGFycmF5cy48L3RpdGxlPgotICAgIDwhLS0gSWYgdGhlIHRl
c3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHNjcmlw
dD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJl
bmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gUnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUg
c2hhZGVycyBkb3dubG9hZC4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0K
LSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgICAgIGRpdiB7Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiAjZjAwOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAuYXJyYXktaW5kaXJlY3Qt
aW5kZXggewotICAgICAgICAgICAgLyogVGhpcyBjdXN0b20gZmlsdGVyIHdpbGwgdHVybiB0aGUg
ZWxlbWVudCdzIGNvbG9yIGZyb20gcmVkIHRvIGdyZWVuIGlmIGl0IGV4ZWN1dGVzLiAqLwotICAg
ICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hcnJheS11
bmlmb3JtLWluZGlyZWN0LWluZGV4LnZzJykgCi0gICAgICAgICAgICAgICAgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL3ZhcnlpbmctbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgCi0g
ICAgICAgICAgICAgICAgdmFsdWVzIGFycmF5KDAuMCwgMS4wKSwgcmVkSW5kZXggMCwgZ3JlZW5J
bmRleCAxLCBibHVlSW5kZXggMCwgYWxwaGFJbmRleCAxKTsKLSAgICAgICAgfQotICAgIDwvc3R5
bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBjbGFzcz0i
YXJyYXktaW5kaXJlY3QtaW5kZXgiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5Lmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXku
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjg2MDE4Yy4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXkuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+
Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0cyB0aGUgYXJyYXkoKSBmdW5jdGlvbiBp
biBjdXN0b20gZmlsdGVyczwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIp
OwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgi
V2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0
aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQg
dG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Nj
cmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAg
ICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNvdXJjZXMvZnJhZ21lbnQt
Y29sb3IuZnMnKSwgY29sb3JBcnJheSBhcnJheSgwLjAsIDEuMCwgMC4wLCAxLjApKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQg
ZGl2IGlzIGNvbG91cmVkIGdyZWVuIGJ5IGZyYWdtZW50LWNvbG9yLmZzLCBhIGZyYWdtZW50IHNo
YWRlci4KLSAgICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYgc3RheXMgcmVkLgotICAgICAgICAt
LT4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGluYXRpb24tYWxwaGEtZXhwZWN0ZWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1m
cmFjdGlvbmFsLWRlc3RpbmF0aW9uLWFscGhhLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDRiZGViNjUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGluYXRpb24t
YWxwaGEtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLTwhRE9D
VFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPkJsZW5kaW5n
IHdpdGggZnJhY3Rpb25hbCBhbHBoYSBvbiBkZXN0aW5hdGlvbjwvdGl0bGU+Ci0gICAgPHN0eWxl
IHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2Rlc3RpbmF0aW9uIHsKLSAgICAgICAgICAgIC8q
IFRoaXMgaXMgdGhlIEVYQUNUIGNvbG9yIHZhbHVlIHdlIGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMg
bWF5IGhhdmUgc2xpZ2h0IGRpZmZlcmVudAotICAgICAgICAgICAgICAgY29sb3IgdmFsdWUuICov
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc5LCAxNjYsIDEyOCk7Ci0gICAg
ICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImRlc3RpbmF0
aW9uIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1mcmFjdGlvbmFsLWRlc3RpbmF0
aW9uLWFscGhhLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItYmxlbmQtZnJhY3Rpb25hbC1kZXN0aW5hdGlvbi1hbHBoYS5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAxMmIyNGYwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1mcmFjdGlvbmFsLWRlc3RpbmF0
aW9uLWFscGhhLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMDQgKzAsMCBAQAotPCFET0NUWVBF
IEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBi
bGVuZGluZyB3aXRoIGEgdHJhbnNsdWNlbnQgZWxlbWVudCB0ZXh0dXJlIGNvbXB1dGVzIHRoZSBj
b3JyZWN0IGNvbG9yIHZhbHVlLjwvdGl0bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVu
YWJsZWQiLCAiMSIpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9
InRleHQvY3NzIj4KLSAgICAgICAgI2Rlc3RpbmF0aW9uIHsKLSAgICAgICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYmEoMTAwJSwgMCUsIDAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbXVs
dGlwbHkgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDEuMCAwLjAgMC42KTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBUaGUgcmVzdWx0IG9m
IHRoZSBibGVuZGluZyBmdW5jdGlvbiBpcyBhdmVyYWdlZCB3aXRoIHRoZSBkZXN0aW5hdGlvbiBj
b2xvciB1c2luZyB0aGUgZGVzdGluYXRpb24ncyBhbHBoYSBhcyB0aGUgZGVzdGluYXRpb24ncyB3
ZWlnaHQuCi0KLSAgICBUaGUgcmVzdWx0aW5nIGNvbG9yIHdpbGwgYmU6Ci0gICAgICAgIENyID0g
KDEgLSBhYikgeCBDcyArIGFiIHggQihDYiwgQ3MpCi0KLSAgICBXaXRoOgotICAgICAgICBDcjog
dGhlIHJlc3VsdCBjb2xvcgotICAgICAgICBCOiAgdGhlIGJsZW5kaW5nIGZ1bmN0aW9uCi0gICAg
ICAgIENzOiB0aGUgc291cmNlIGNvbG9yIChha2EgIm1peCBjb2xvciIsICJjc3NfTWl4Q29sb3Ii
KQotICAgICAgICBhczogdGhlIHNvdXJjZSBhbHBoYSAodXNlZCBkdXJpbmcgY29tcG9zaXRpbmcp
Ci0gICAgICAgIENiOiB0aGUgYmFja2Ryb3AgY29sb3IgKCJvcmlnaW5hbCBET00gZWxlbWVudCBj
b2xvciIpCi0gICAgICAgIGFiOiB0aGUgYmFja2Ryb3AgYWxwaGEKLQotICAgIEluIHRoaXMgY2Fz
ZToKLSAgICAgICAgQ3MgPSAoMC4wLCAxLjAsIDAuMCkKLSAgICAgICAgQ2IgPSAoMS4wLCAwLjAs
IDAuMCkKLSAgICAgICAgYWIgPSAwLjUKLQotICAgICAgICBCZWNhdXNlIHdlJ3JlIHVzaW5nIHRo
ZSAibXVsdGlwbHkiIGJsZW5kIG9wZXJhdG9yOgotICAgICAgICBCKENiLCBDcykgPSBDYiAqIENz
Ci0gICAgICAgIEIoQ2IsIENzKSA9ICgxLjAsIDAuMCwgMC4wKSAqICgwLjAsIDEuMCwgMC4wKQot
ICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAwLjAsIDAuMCkKLQotICAgICAgICBDciA9ICgxIC0g
MC41KSAqICgwLjAsIDEuMCwgMC4wKSArIDAuNSAqICgwLjAsIDAuMCwgMC4wKQotICAgICAgICBD
ciA9IDAuNSAqICgwLjAsIDEuMCwgMC4wKSArIDAuMAotICAgICAgICBDciA9ICgwLjAsIDAuNSwg
MC4wKQotCi0gICAgQXQgdGhpcyBwb2ludCwgd2UgY29tcG9zaXRlIHRoZSB0ZXh0dXJlIHdpdGgg
dGhlIFBvcnRlci1EdWZmIFNvdXJjZUF0b3AgY29tcG9zaXRlIG9wZXJhdG9yLgotICAgIFRoZSBn
ZW5lcmFsIGNvbXBvc2l0aW5nIGZvcm11bGEgaXM6Ci0KLSAgICAgICAgY28gPSBhcyAqIEZhICog
Q3MgKyBhYiAqIEZiICogQ2IKLQotICAgICAgICBhbyA9IGFzICogMSArIGFiICogKDEgLSBhcykK
LSAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICBXaXRoIHRoZSBTb3VyY2VBdG9wIGNvbXBvc2l0
ZSBvcGVyYXRvcjoKLQotICAgICAgICBGYSA9IGFiCi0gICAgICAgIEZiID0gMSAtIGFzCi0KLSAg
ICBJbiB0aGlzIGNhc2UsIENzID0gQ3IsIHdoZXJlIENyIGlzIHRoZSByZXN1bHQgb2YgdGhlIGJs
ZW5kaW5nIGZ1bmN0aW9uLgotICAgIFN1YnN0aXR1dGluZyBGYSBhbmQgRmIsIHdlIGdldCBmb2xs
b3dpbmcgc3BlY2lmaWMgZm9ybXVsYToKLQotICAgICAgICBjbyA9IGFzICogQ3MgKiBhYiArIGFi
ICogQ2IgKiAoMSAtIGFzKQotCi0gICAgICAgIGFvID0gYXMgKiBhYiArIGFiICogKDEgLSBhcykK
LSAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICBTdWJzdGl0dXRpbmcgQ3IgZm9yIENzOgotICAg
ICAgICBjbyA9IGFzICogQ3IgKiBhYiArIGFiICogQ2IgKiAoMSAtIGFzKQotCi0gICAgRnJvbSB0
aGlzIHdlIGdldDoKLSAgICAgICAgY28gPSAwLjYgKiAoMC4wLCAwLjUsIDAuMCkgKiAwLjUgKyAw
LjUgKiAoMS4wLCAwLjAsIDAuMCkgKiAoMSAtIDAuNikKLSAgICAgICAgY28gPSAwLjMgKiAoMC4w
LCAwLjUsIDAuMCkgKyAwLjIgKiAoMS4wLCAwLjAsIDAuMCkKLSAgICAgICAgY28gPSAoMC4wLCAw
LjE1LCAwLjApICsgKDAuMiwgMC4wLCAwLjApCi0gICAgICAgIGNvID0gKDAuMiwgMC4xNSwgMC4w
KQotCi0gICAgVGhlIHJlc3VsdGluZyBhbHBoYSBpczoKLSAgICAgICAgYW8gPSAwLjYgKiAwLjUg
KyAwLjUgKiAoMSAtIDAuNikKLSAgICAgICAgYW8gPSAwLjMgKyAwLjIKLSAgICAgICAgYW8gPSAw
LjUKLQotICAgIFRoZSBmaW5hbCByZXN1bHQgaXMgdGhlbjoKLSAgICAgICAgQ28gPSAoMC4yLCAw
LjE1LCAwLjApIC8gMC41Ci0gICAgICAgIENvID0gKDAuNCwgMC4zLCAwLjApCi0KLQotICAgIEF0
IHRoaXMgcG9pbnQgdGhlIHRleHR1cmUgaGFzIHRvIGJlIGNvbXBvc2l0ZWQgd2l0aCB0aGUgdW5k
ZXJseWluZyB3aGl0ZSBmcm9tIHRoZSBwYWdlIHRvIGdldCB0aGUgZmluYWwKLSAgICByZXN1bHRz
IGluIGxpZ2h0IG9mIHRoZSBhbHBoYSAoYW8pIHZhbHVlOgotCi0gICAgICAgIEV4cGVjdGVkIGNv
bG9yIG9uIHNjcmVlbiA9IENvICogYW8gKyAoMS4wIC0gYW8pICogV2hpdGUKLQotICAgICAgICBS
ID0gMC40ICogMC41ICsgKDEuMCAtIDAuNSkgKiAxLjAgPSAwLjIgKyAwLjUgPSAwLjcKLSAgICAg
ICAgRyA9IDAuMyAqIDAuNSArICgxLjAgLSAwLjUpICogMS4wID0gMC4xNSArIDAuNSA9IDAuNjUK
LSAgICAgICAgQiA9IDAuMCAqIDAuNSArICgxLjAgLSAwLjUpICogMS4wID0gMCArIDAuNSA9IDAu
NQotCi0gICAgU28gdGhlIGV4cGVjdGVkIChjb3JyZWN0KSB2YWx1ZSBpcyByZ2IoNzAlLCA2NSUs
IDUwJSksIG1lYW5pbmcgcmdiKDE3OSwgMTY2LCAxMjgpLgotCi0gICAgSU1QT1JUQU5UOiB0aGlz
IGlzIHRoZSBleGFjdCBleHBlY3RlZCBjb2xvci4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xp
Z2h0IGNvbG9yIGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBpZD0iZGVzdGluYXRpb24iPjwv
ZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLWV4cGVjdGVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhw
ZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjgyNDAzZC4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYmxl
bmQtbW9kZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDExNCArMCwwIEBACi08
IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3Vz
dG9tIGZpbHRlciBibGVuZCBtb2RlcyBjb21wdXRlIGNvbG9yIHZhbHVlcyBjb3JyZWN0bHkuPC90
aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0
aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFzc2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWly
IG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29sb3IuCi0gICAgICAgIFRoZSB0ZXN0
IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3IgdmFsdWVzIGluIHRoaXMgcmVmZXJlbmNlIGZp
bGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVh
cmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMg
PiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7
Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZs
b2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAqLwotICAgIC5ub3JtYWwtZXhw
ZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDYwJSwgNTAlKTsKLSAg
ICB9Ci0gICAgLm11bHRpcGx5LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDAlLCAxOCUsIDI1JSk7Ci0gICAgfQotICAgIC5zY3JlZW4tZXhwZWN0ZWQgewotICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAxODMsIDE5Mik7Ci0gICAgfQotICAgIC5kYXJr
ZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDMwJSwgNTAl
KTsKLSAgICB9Ci0gICAgLmxpZ2h0ZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAuZGlmZmVyZW5jZS1leHBlY3Rl
ZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDc3LCAxKTsKLSAgICB9Ci0g
ICAgLmV4Y2x1c2lvbi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigy
NTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhwZWN0ZWQgewotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA5MSwgMTI4KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRv
ZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMTkwLCAy
NTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAgfQotICAgIC5oYXJkLWxpZ2h0LWV4cGVj
dGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCA0NCUsIDUwJSk7Ci0gICAg
fQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDI1NSwgODksIDEyOCk7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4K
LSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJu
b3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJub3JtYWwtZXhwZWN0
ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+
Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAg
PGRpdiBjbGFzcz0ibXVsdGlwbHktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxk
aXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNjcmVlbi1l
eHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNjcmVlbi1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJw
YWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJsaWdodGVuLWV4cGVjdGVkIj48
L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibGlnaHRlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBj
bGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRp
ZmZlcmVuY2UtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBh
aXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1leHBlY3RlZCI+
PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1leHBlY3RlZCI+PC9kaXY+Ci0g
ICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRp
diBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im92
ZXJsYXktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXIt
b2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWRvZGdlLWV4cGVjdGVkIj48
L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iY29sb3ItZG9kZ2UtZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9ImNvbG9yLWJ1cm4tZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNz
PSJjb2xvci1idXJuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJoYXJkLWxpZ2h0LWV4cGVj
dGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGFyZC1saWdodC1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9InNvZnQtbGlnaHQtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDwhLS0K
LSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGJsZW5kIG1vZGVzIHRvIHRoaXMgcGFnZSwgYmUgY2Fy
ZWZ1bCBub3QgdG8gZXhjZWVkIDYwMHB4IGluIAotICAgICAgICBoZWlnaHQsIHNpbmNlIER1bXBS
ZW5kZXJUcmVlIGNvbXBhcmVzIDgwMHg2MDAgc25hcHNob3RzIG9mIHRoaXMgcGFnZS4KLSAgICAt
LT4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1tb2Rlcy5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIyZjQwOTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwzMjcgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgYmxlbmQgbW9kZXMgY29tcHV0
ZSBjb2xvciB2YWx1ZXMgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBUaGlzIHRlc3QgcGFz
c2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNh
bWUgY29sb3IuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJX
ZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsK
LSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVh
cmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMg
PiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7
Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZs
b2F0OiBsZWZ0OwotICAgIH0KLSAgICAuZGVzdGluYXRpb24gewotICAgICAgICAvKiBEZXN0aW5h
dGlvbiBjb2xvciAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMzAlLCA1
MCUpOwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAqLwotICAgIC5ub3JtYWwgewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjAp
OwotICAgIH0KLSAgICAvKgotICAgICAgICBUaGUgZXF1YXRpb25zIGJlbG93IHVzZSB0aGUgc3lt
Ym9scyBhbmQgZXF1YXRpb25zIGRlZmluZWQgaW4gdGhlIENTUyBCbGVuZGluZyBhbmQgQ29tcG9z
aXRpbmcgc3BlYywgd2hlcmU6Ci0gICAgICAgICAgICBDbyA9IG91dHB1dCBjb2xvcgotICAgICAg
ICAgICAgQ3MgPSBzb3VyY2UgY29sb3IgKGFrYSAibWl4IGNvbG9yIiwgImNzc19NaXhDb2xvciIp
Ci0gICAgICAgICAgICBDYiA9IGRlc3RpbmF0aW9uIGNvbG9yIChha2EgImJhY2tkcm9wIGNvbG9y
IiwgIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9yIikKLQotICAgICAgICBodHRwczovL2R2Y3Mu
dzMub3JnL2hnL0ZYVEYvcmF3ZmlsZS90aXAvY29tcG9zaXRpbmcvaW5kZXguaHRtbCNnZW5lcmFs
Zm9ybXVsYQotICAgICovCi0gICAgLm5vcm1hbC1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAg
ICAgICAgICBOb3JtYWw6Ci0KLSAgICAgICAgICAgIENvID0gQ3MKLQotICAgICAgICAgICAgciA9
IDAuMAotICAgICAgICAgICAgZyA9IDAuNgotICAgICAgICAgICAgYiA9IDAuNQotICAgICAgICAq
LwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0g
ICAgLm11bHRpcGx5IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1
cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBtdWx0aXBseSBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAubXVsdGlwbHktZXhwZWN0ZWQg
ewotICAgICAgICAvKgotICAgICAgICAgICAgTXVsdGlwbHk6Ci0KLSAgICAgICAgICAgIENvID0g
Q2IgKiBDcwotCi0gICAgICAgICAgICByID0gMS4wICogMC4wID0gMC4wCi0gICAgICAgICAgICBn
ID0gMC4zICogMC42ID0gMC4xOAotICAgICAgICAgICAgYiA9IDAuNSAqIDAuNSA9IDAuMjUKLSAg
ICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCAxOCUsIDI1JSk7Ci0g
ICAgfQotICAgIC5zY3JlZW4gewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIHNjcmVlbiBzb3VyY2UtYXRvcCks
IG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuc2NyZWVuLWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIFNjcmVlbjoKLQotICAgICAgICAgICAgQ28gPSBD
YiArIENzIC0gQ2IgKiBDcwotCi0gICAgICAgICAgICByID0gMS4wICsgMC4wIC0gMS4wICogMC4w
ID0gMS4wCi0gICAgICAgICAgICBnID0gMC4zICsgMC42IC0gMC4zICogMC42ID0gMC43MgotICAg
ICAgICAgICAgYiA9IDAuNSArIDAuNSAtIDAuNSAqIDAuNSA9IDAuNzUKLQotICAgICAgICAgICAg
VGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2UgdGhl
IDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAw
JSwgNzIlLCA3NSUpOwotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MjU1LCAxODMsIDE5Mik7Ci0gICAgfQotICAgIC5kYXJrZW4gewotICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRh
cmtlbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAg
ICAuZGFya2VuLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIERhcmtlbjoKLQot
ICAgICAgICAgICAgQ28gPSBtaW4oQ2IsIENzKQotCi0gICAgICAgICAgICByID0gbWluKDEuMCwg
MC4wKSA9IDAuMAotICAgICAgICAgICAgZyA9IG1pbigwLjMsIDAuNikgPSAwLjMKLSAgICAgICAg
ICAgIGIgPSBtaW4oMC41LCAwLjUpID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYigwJSwgMzAlLCA1MCUpOwotICAgIH0KLSAgICAubGlnaHRlbiB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4
LWNvbG9yLmZzJykgbGlnaHRlbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAx
LjApOwotICAgIH0KLSAgICAubGlnaHRlbi1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAg
ICAgICBMaWdodGVuOgotCi0gICAgICAgICAgICBDbyA9IG1heChDYiwgQ3MpCi0KLSAgICAgICAg
ICAgIHIgPSBtYXgoMS4wLCAwLjApID0gMS4wCi0gICAgICAgICAgICBnID0gbWF4KDAuMywgMC42
KSA9IDAuNgotICAgICAgICAgICAgYiA9IG1heCgwLjUsIDAuNSkgPSAwLjUKLSAgICAgICAgKi8K
LSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0g
ICAgLmRpZmZlcmVuY2UgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRpZmZlcmVuY2Ugc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmRpZmZlcmVuY2UtZXhw
ZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgRGlmZmVyZW5jZToKLQotICAgICAgICAg
ICAgQ28gPSBhYnMoQ2IgLSBDcykKLQotICAgICAgICAgICAgciA9IGFicygxLjAgLSAwLjApID0g
MS4wCi0gICAgICAgICAgICBnID0gYWJzKDAuMyAtIDAuNikgPSAwLjMKLSAgICAgICAgICAgIGIg
PSBhYnMoMC41IC0gMC41KSA9IDAuMAotCi0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhlIGNv
bG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoK
LSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDAlLCAzMCUsIDAlKTsKLSAgICAg
ICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgNzcsIDEpOwotICAgIH0K
LSAgICAuZXhjbHVzaW9uIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1p
eCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBleGNsdXNpb24gc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmV4Y2x1c2lvbi1leHBl
Y3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBFeGNsdXNpb246Ci0KLSAgICAgICAgICAg
IENvID0gQ2IgKyBDcyAtIDIgKiBDYiAqIENzCi0KLSAgICAgICAgICAgIHIgPSAxLjAgKyAwLjAg
LSAyLjAgKiAxLjAgKiAwLjAgPSAxLjAKLSAgICAgICAgICAgIGcgPSAwLjMgKyAwLjYgLSAyLjAg
KiAwLjMgKiAwLjYgPSAwLjU0Ci0gICAgICAgICAgICBiID0gMC41ICsgMC41IC0gMi4wICogMC41
ICogMC41ID0gMC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3Vs
YXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDU0JSwgNTAlKTsgCi0gICAgICAgICovCi0g
ICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAg
Lm92ZXJsYXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG92ZXJsYXkgc291cmNlLWF0b3ApLCBtaXhfY29s
b3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhwZWN0ZWQgewotICAg
ICAgICAvKgotICAgICAgICAgICAgT3ZlcmxheToKLQotICAgICAgICAgICAgQ28gPSBIYXJkTGln
aHQoQ3MsIENiKQotICAgICAgICAgICAgICAgPSBpZihDYiA8PSAwLjUpCi0gICAgICAgICAgICAg
ICAgICAgICBNdWx0aXBseShDcywgMiAqIENiKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAg
ICAgICAgICAgICAgICAgICBTY3JlZW4oQ3MsIDIgKiBDYiAtIDEpCi0gICAgICAgICAgICAgICA9
IGlmKENiIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIENzICogKDIgKiBDYikKLSAgICAg
ICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgQ3MgKyAoMiAqIENiIC0gMSkg
LSAoQ3MgKiAoMiAqIENiIC0gMSkpCi0KLSAgICAgICAgICAgIHIgPSAwICsgKDIgKiAxIC0gMSkg
LSAoMCAqICgyICogMSAtIDEpKSA9IDEKLSAgICAgICAgICAgIGcgPSAwLjYgKiAoMiAqIDAuMykg
PSAwLjM2Ci0gICAgICAgICAgICBiID0gMC41ICogKDIgKiAwLjUpID0gMC41Ci0KLSAgICAgICAg
ICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNl
IHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDEwMCUsIDM2JSwgNTAlKTsKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDI1NSwgOTEsIDEyOCk7Ci0gICAgfQotICAgIC5jb2xvci1kb2RnZSB7Ci0gICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9y
LmZzJykgY29sb3ItZG9kZ2Ugc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4w
KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRvZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAg
ICAgICAgIENvbG9yRG9kZ2U6Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPCAxKQotICAgICAg
ICAgICAgICAgICAgICAgbWluKDEsIENiIC8gKDEgLSBDcykpCi0gICAgICAgICAgICAgICAgIGVs
c2UKLSAgICAgICAgICAgICAgICAgICAgIDEKLQotICAgICAgICAgICAgciA9IG1pbigxLCAxIC8g
KDEgLSAwKSkgPSAxCi0gICAgICAgICAgICBnID0gbWluKDEsIDAuMyAvICgxIC0gMC42KSkgPSAw
Ljc1Ci0gICAgICAgICAgICBiID0gbWluKDEsIDAuNSAvICgxIC0gMC41KSkgPSAxCi0KLSAgICAg
ICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8g
dXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDEwMCUsIDc1JSwgMTAwJSk7Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29s
b3I6IHJnYigyNTUsIDE5MCwgMjU1KTsKLSAgICB9Ci0gICAgLmNvbG9yLWJ1cm4gewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcycpIGNvbG9yLWJ1cm4gc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC44IDAuOCAwLjgg
MS4wKTsKLSAgICB9Ci0gICAgLmNvbG9yLWJ1cm4tZXhwZWN0ZWQgewotICAgICAgICAvKgotICAg
ICAgICAgICAgQ29sb3JCdXJuOgotCi0gICAgICAgICAgICBDbyA9IGlmKENzID4gMCkKLSAgICAg
ICAgICAgICAgICAgICAgIDEgLSBtaW4oMSwgKDEgLSBDYikgLyBDcykKLSAgICAgICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgMAotCi0gICAgICAgICAgICAgciA9IDEgLSBt
aW4oMSwgKDEgLSAxKSAvIDAuOCkgPSAxCi0gICAgICAgICAgICAgZyA9IDEgLSBtaW4oMSwgKDEg
LSAwLjMpIC8gMC44KSA9IDAuMTI1Ci0gICAgICAgICAgICAgYiA9IDEgLSBtaW4oMSwgKDEgLSAw
LjUpIC8gMC44KSA9IDAuMzc1Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3Ig
Y2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAg
ICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDEyLjUlLCAzNy41JSk7Ci0gICAg
ICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAg
fQotICAgIC5oYXJkLWxpZ2h0IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25l
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBoYXJkLWxpZ2h0IHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5oYXJkLWxpZ2h0
LWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIEhhcmRMaWdodDoKLQotICAgICAg
ICAgICAgQ28gPSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBNdWx0aXBseShD
YiwgMiAqIENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBT
Y3JlZW4oQ2IsIDIgKiBDcyAtMSkKLSAgICAgICAgICAgICAgID0gaWYoQ3MgPD0gMC41KQotICAg
ICAgICAgICAgICAgICAgICAgQ2IgKiAoMiAqIENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0g
ICAgICAgICAgICAgICAgICAgICBDYiArICgyICogQ3MgLSAxKSAtIChDYiAqICgyICogQ3MgLSAx
KSkKLQotICAgICAgICAgICAgciA9IDEgKiAoMiAqIDApID0gMAotICAgICAgICAgICAgZyA9IDAu
MyArICgyICogMC42IC0gMSkgLSAoMC4zICogKDIgKiAwLjYgLSAxKSkgPSAwLjQ0Ci0gICAgICAg
ICAgICBiID0gMC41ICogKDIgKiAwLjUpID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYigwJSwgNDQlLCA1MCUpOwotICAgIH0KLSAgICAuc29mdC1saWdodCB7
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgc29mdC1saWdodCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAg
MC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuc29mdC1saWdodC1leHBlY3RlZCB7Ci0gICAgICAg
IC8qCi0gICAgICAgICAgICBTb2Z0TGlnaHQ6Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPD0g
MC41KQotICAgICAgICAgICAgICAgICAgICAgQ2IgLSAoMSAtIDIgKiBDcykgKiBDYiAqICgxIC0g
Q2IpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIENiICsgKDIg
KiBDcyAtIDEpICogKEQoQ2IpIC0gQ2IpCi0KLSAgICAgICAgICAgIHdpdGgKLQotICAgICAgICAg
ICAgRChDYikgPSBpZihDYiA8PSAwLjI1KQotICAgICAgICAgICAgICAgICAgICAgICAgKDE2ICog
Q2IgLSAxMikgKiBDYiArIDQpICogQ2IKLSAgICAgICAgICAgICAgICAgICAgZWxzZQotICAgICAg
ICAgICAgICAgICAgICAgICAgc3FydChDYikKLQotICAgICAgICAgICAgRC5yID0gc3FydCgxKSA9
IDEKLSAgICAgICAgICAgIEQuZyA9IHNxcnQoMC4zKSA9IDAuNTQ3NzIyNTU3NTA1MTY2Ci0gICAg
ICAgICAgICBELmIgPSBzcXJ0KDAuNSkgPSAwLjcwNzEwNjc4MTE4NjU0OAotICAgICAgICAgICAg
ciA9IDEgLSAoMSAtIDIgKiAwKSAqIDEgKiAoMSAtIDEpID0gMQotICAgICAgICAgICAgZyA9IDAu
MyArICgyICogMC42IC0gMSkgKiAoRC5nIC0gMC4zKSA9IDAuMzQ5NTQ0NTExNTAxMDMzCi0gICAg
ICAgICAgICBiID0gMC41IC0gKDEgLSAyICogMC41KSAqIDAuNSAqICgxIC0gMC41KSA9IDAuNQot
Ci0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhlIGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVz
IHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoKLSAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigxMDAlLCAzNC45NTQ0NTElLCA1MCUpOwotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA4OSwgMTI4KTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIG5vcm1hbCI+PC9kaXY+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9Im5vcm1hbC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbXVs
dGlwbHkiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJtdWx0aXBseS1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gc2NyZWVuIj48L2Rpdj4KLSAgICAgICAgPGRpdiBj
bGFzcz0ic2NyZWVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBkYXJr
ZW4iPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJkYXJrZW4tZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9ImRlc3RpbmF0aW9uIGxpZ2h0ZW4iPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNz
PSJsaWdodGVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJw
YWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBkaWZmZXJl
bmNlIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZXhjbHVzaW9uIj48L2Rpdj4KLSAgICAgICAgPGRp
diBjbGFzcz0iZXhjbHVzaW9uLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2
IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlv
biBvdmVybGF5Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+
PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gY29sb3ItZG9kZ2UiPjwvZGl2PgotICAgICAg
ICA8ZGl2IGNsYXNzPSJjb2xvci1kb2RnZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0g
ICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVz
dGluYXRpb24gY29sb3ItYnVybiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWJ1
cm4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Yt
c3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIGhhcmQtbGlnaHQiPjwv
ZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJoYXJkLWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAg
ICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBzb2Z0LWxpZ2h0Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPCEtLQotICAg
ICAgICBJZiB5b3UgYWRkIG1vcmUgYmxlbmQgbW9kZXMgdG8gdGhpcyBwYWdlLCBiZSBjYXJlZnVs
IG5vdCB0byBleGNlZWQgNjAwcHggaW4gCi0gICAgICAgIGhlaWdodCwgc2luY2UgRHVtcFJlbmRl
clRyZWUgY29tcGFyZXMgODAweDYwMCBzbmFwc2hvdHMgb2YgdGhpcyBwYWdlLgotICAgIC0tPgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLWV4cGVjdGVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2hhbmdlLWJsZW5kLW1v
ZGUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmNlZTUxNS4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY2hhbmdlLWJsZW5kLW1vZGUtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDIw
ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVz
dHMgdGhhdCBhIGN1c3RvbSBmaWx0ZXIgZGV0ZWN0cyBhIGJsZW5kIG1vZGUgY2hhbmdlIGFuZCBw
YWludHMgd2l0aCB0aGUgbmV3IGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8IS0tIAotICAgICAg
ICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRlc3QuCi0gICAgICAgIElmIHRo
ZSB0ZXN0IHBhc3NlcywgeW91IHdpbGwgc2VlIGEgZ3JlZW4gc3F1YXJlLgotICAgIC0tPgotICAg
IDxzdHlsZT4KLSAgICBkaXYgewotICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgIGhlaWdo
dDogMTAwcHg7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAg
IH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdj48L2Rpdj4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jaGFuZ2UtYmxlbmQtbW9kZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFiM2E2NWUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLmh0
bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1NCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1s
PgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgYSBjdXN0b20gZmlsdGVyIGRldGVjdHMg
YSBibGVuZCBtb2RlIGNoYW5nZSBhbmQgcGFpbnRzIHdpdGggdGhlIG5ldyBibGVuZCBtb2RlLjwv
dGl0bGU+Ci0gICAgPCEtLQotICAgICAgICBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSB3aWxsIHNl
ZSBhIGdyZWVuIHNxdWFyZS4KLSAgICAgICAgVGhpcyB0ZXN0IGNhbiBydW4gaW4gRFJUIG9yIG1h
bnVhbGx5LgotICAgIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNl
KCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEi
KTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAg
ICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAgICAgICAg
ICB2YXIgZmlsdGVyVGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbHRlclRhcmdl
dCIpOwotCi0gICAgICAgICAgICAvLyBJbml0aWFsbHksIGFwcGx5IGEgY3VzdG9tIGZpbHRlciBv
biB0aGUgZGl2IHVzaW5nIGJsZW5kIG1vZGUgbXVsdGlwbHkuCi0gICAgICAgICAgICAvLyBUaGUg
cmVzdWx0IHNob3VsZCBiZSBhIGJsYWNrIHNxdWFyZSAocmVkIGJhY2tncm91bmQgKiBncmVlbiBt
aXggY29sb3IgPSBibGFjaykuCi0gICAgICAgICAgICBmaWx0ZXJUYXJnZXQuY2xhc3NOYW1lID0g
Im11bHRpcGx5IjsKLQotICAgICAgICAgICAgLy8gVHJpZ2dlciBhIHN0eWxlIHJlc29sdXRpb24g
d2l0aCBibGVuZCBtb2RlIG11bHRpcGx5LgotICAgICAgICAgICAgLy8gVGhpcyBpcyByZXF1aXJl
ZCB0byByZXByb2R1Y2UgdGhpcyB0ZXN0J3MgYXNzb2NpYXRlZCBidWcuCi0gICAgICAgICAgICBm
aWx0ZXJUYXJnZXQuY2xpZW50V2lkdGg7Ci0KLSAgICAgICAgICAgIC8vIENoYW5nZSB0aGUgYmxl
bmQgbW9kZSB0byBub3JtYWwsIGFuZCBrZWVwIGFsbCBvdGhlciBmaWx0ZXIgcGFyYW1ldGVycyBp
ZGVudGljYWwuCi0gICAgICAgICAgICAvLyBUaGUgcmVzdWx0IHNob3VsZCBiZSBhIGdyZWVuIHNx
dWFyZSBpZiB0aGUgYmxlbmQgbW9kZSBjaGFuZ2VkIGNvcnJlY3RseS4gICAgICAgICAgICAKLSAg
ICAgICAgICAgIGZpbHRlclRhcmdldC5jbGFzc05hbWUgPSAibm9ybWFsIjsKLQotICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4K
LSAgICAjZmlsdGVyVGFyZ2V0IHsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICBoZWln
aHQ6IDEwMHB4OwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgfQotICAgIC5t
dWx0aXBseSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbXVsdGlwbHkgc291cmNlLWF0b3ApLCBtaXhfY29s
b3IgMCAxIDAgMSk7Ci0gICAgfQotICAgIC5ub3JtYWwgewotICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1h
bCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwIDEgMCAxKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LSAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9yZXBhaW50L3Jlc291cmNlcy9yZXBhaW50
LmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8
ZGl2IGlkPSJmaWx0ZXJUYXJnZXQiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNz
cy1jb2xvci1tYXRyaXgtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LWV4cGVjdGVkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY2NmI0ZTEuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xv
ci1tYXRyaXgtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLTwh
RE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPG1ldGEgY2hhcnNl
dD0iVVRGLTgiPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGNzc19jb2xvck1hdHJpeCBtdWx0aXBs
aWNhdGlvbiByZXN1bHQgaXMgY2xhbXBlZCB0byAxPC90aXRsZT4KLSAgICA8c3R5bGU+Ci0gICAg
ICAgICNsb25lbHlkaXYgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOwotICAg
ICAgICAgICAgYmFja2dyb3VuZDogcmdiKDUwJSwgNTAlLCA1MCUpOwotICAgICAgICB9Ci0gICAg
PC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImxvbmVseWRpdiI+PC9kaXY+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1uZWdhdGl2ZS1leHBl
Y3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWNsYW1wLWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNzIzMmQ4Yy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1u
ZWdhdGl2ZS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTggKzAsMCBAQAotPCFE
T0NUWVBFIEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8bWV0YSBjaGFyc2V0
PSJVVEYtOCI+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3NzX2NvbG9yTWF0cml4IG11bHRpcGxp
Y2F0aW9uIHJlc3VsdCBpcyBjbGFtcGVkIHRvIDA8L3RpdGxlPgotICAgIDxzdHlsZT4KLSAgICAg
ICAgI2xvbmVseWRpdiB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBo
ZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0gICAg
ICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMCwgMCwgMCk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxl
PgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0ibG9uZWx5ZGl2Ij48L2Rpdj4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9y
LW1hdHJpeC1uZWdhdGl2ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiOWY0
NzM1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw1NCArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9ImVuIj4KLTxo
ZWFkPgotICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBj
c3NfY29sb3JNYXRyaXggbXVsdGlwbGljYXRpb24gcmVzdWx0IGlzIGNsYW1wZWQgdG8gMDwvdGl0
bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAg
ICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKLSAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRo
ZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5v
dGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAg
ICAgI2xvbmVseWRpdiB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBo
ZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0gICAg
ICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjAlLCAyMCUsIDIwJSk7Ci0gICAgICAgICAgICAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2N1c3RvbS1maWx0
ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1uZWdhdGl2ZS5mcycpIG11bHRpcGx5IHNvdXJjZS1h
dG9wKSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJy
dW5UZXN0KCkiPgotICAgIDwhLS0KLSAgICAgICAgTGV0OgotICAgICAgICBjbGFtcCh2YWx1ZSkg
PSBBIGZ1bmN0aW9uIHRoYXQgY2xhbXBzIHZhbHVlcyBiZXR3ZWVuIDAuMCBhbmQgMS4wCi0gICAg
ICAgIGVsZW1lbnRDb2xvciA9IHZlYzQoMC4yLCAwLjIsIDAuMiwgMS4wKQotICAgICAgICBjc3Nf
Q29sb3JNYXRyaXggPSBNYXRyaXggd2l0aCBkaWFnb25hbCAoLTEwLjAsIC0xMC4wLCAtMTAuMCwg
MS4wKQotICAgICAgICBjc3NfTWl4Q29sb3IgPSB2ZWM0KC0wLjUsIC0wLjUsIC0wLjUsIDEuMCkK
LQotICAgICAgICBDb3JyZWN0IGNsYW1wZWQgcmVzdWx0OgotICAgICAgICByZXN1bHQgPSBjbGFt
cChjc3NfQ29sb3JNYXRyaXggKiBlbGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAg
IHJlc3VsdC5yID0gY2xhbXAoLTEwLjAgKiAwLjIpICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0g
Y2xhbXAoLTIuMCkgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIgPSAwLjAgKiAtMC41Ci0gICAgICAg
IHJlc3VsdC5yID0gMC4wCi0gICAgICAgIHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9
PiBibGFjawotCi0gICAgICAgIEluY29ycmVjdCB1bmNsYW1wZWQgcmVzdWx0OgotICAgICAgICBy
ZXN1bHQgPSAoY3NzX0NvbG9yTWF0cml4ICogZWxlbWVudENvbG9yKSAqIGNzc19NaXhDb2xvcgot
ICAgICAgICByZXN1bHQuciA9ICgtMTAuMCAqIDAuMikgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIg
PSAtMi4wICogLTAuNQotICAgICAgICByZXN1bHQuciA9IDEuMAotICAgICAgICByZXN1bHQuciA9
IHJlc3VsdC5nID0gcmVzdWx0LmIgPT4gd2hpdGUKLSAgICAtLT4KLSAgICA8ZGl2IGlkPSJsb25l
bHlkaXYiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgu
aHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFt
cC1jc3MtY29sb3ItbWF0cml4Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZh
MTYwYTguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDU0ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0g
ICAgPG1ldGEgY2hhcnNldD0iVVRGLTgiPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGNzc19jb2xv
ck1hdHJpeCBtdWx0aXBsaWNhdGlvbiByZXN1bHQgaXMgY2xhbXBlZCB0byAxPC90aXRsZT4KLSAg
ICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmls
dGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5j
dGlvbiBydW5UZXN0KCkgewotICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3Rz
IGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9u
ZSgpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAjbG9u
ZWx5ZGl2IHsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDog
MTAwcHg7Ci0gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICAgICAgICAg
IGJhY2tncm91bmQ6IHJnYigyMCUsIDIwJSwgMjAlKTsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1jbGFt
cC1jc3MtY29sb3ItbWF0cml4LmZzJykgbXVsdGlwbHkgc291cmNlLWF0b3ApKTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAg
PCEtLQotICAgICAgICBMZXQ6Ci0gICAgICAgIGNsYW1wKHZhbHVlKSA9IEEgZnVuY3Rpb24gdGhh
dCBjbGFtcHMgdmFsdWVzIGJldHdlZW4gMC4wIGFuZCAxLjAKLSAgICAgICAgZWxlbWVudENvbG9y
ID0gdmVjNCgwLjIsIDAuMiwgMC4yLCAxLjApCi0gICAgICAgIGNzc19Db2xvck1hdHJpeCA9IE1h
dHJpeCB3aXRoIGRpYWdvbmFsICgxMC4wLCAxMC4wLCAxMC4wLCAxMC4wKQotICAgICAgICBjc3Nf
TWl4Q29sb3IgPSB2ZWM0KDAuNSwgMC41LCAwLjUsIDEuMCkKLQotICAgICAgICBDb3JyZWN0IGNs
YW1wZWQgcmVzdWx0OgotICAgICAgICByZXN1bHQgPSBjbGFtcChjc3NfQ29sb3JNYXRyaXggKiBl
bGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAgIHJlc3VsdC5yID0gY2xhbXAoMTAu
MCAqIDAuMikgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIgPSBjbGFtcCgyLjApICogMC41Ci0gICAg
ICAgIHJlc3VsdC5yID0gMS4wICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0gMC41Ci0gICAgICAg
IHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9PiBncmF5Ci0KLSAgICAgICAgSW5jb3Jy
ZWN0IHVuY2xhbXBlZCByZXN1bHQ6Ci0gICAgICAgIHJlc3VsdCA9IChjc3NfQ29sb3JNYXRyaXgg
KiBlbGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAgIHJlc3VsdC5yID0gKDEwLjAg
KiAwLjIpICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0gMi4wICogMC41Ci0gICAgICAgIHJlc3Vs
dC5yID0gMS4wCi0gICAgICAgIHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9PiB3aGl0
ZQotICAgIC0tPgotICAgIDxkaXYgaWQ9ImxvbmVseWRpdiI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItY2xhbXAtY3NzLW1peC1jb2xvci1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItZXhwZWN0
ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWEwYjY1ZC4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAt
Y3NzLW1peC1jb2xvci1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAsMCBA
QAotPCFET0NUWVBFIEhUTUw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0
IGNzc19NaXhDb2xvciB2YWx1ZXMgZ3JlYXRlciB0aGFuIDEuMCBhcmUgY2xhbXBlZCB0byAxLjAg
YmVmb3JlIGJsZW5kaW5nIGFuZCBjb21wb3NpdGluZy48L3RpdGxlPgotICAgIDwhLS0KLSAgICAg
ICAgVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZpbGUgZm9yIHRoZSB0ZXN0LgotICAgICAgICBUaGUg
dGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBncmVlbiBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMg
YSBkaWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0IGZhaWxzLgotICAgIC0tPgotICAgIDxzdHlsZSB0
eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHJnYigxMCUsIDUwJSwgMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLW5lZ2F0aXZlLWV4cGVjdGVkLmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAt
Y3NzLW1peC1jb2xvci1uZWdhdGl2ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAxMzkxMTU3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLW5lZ2F0aXZlLWV4cGVj
dGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyMCArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4K
LTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgbmVnYXRpdmUgY3NzX01peENv
bG9yIHZhbHVlcyBhcmUgY2xhbXBlZCB0byAwLjAgYmVmb3JlIGJsZW5kaW5nIGFuZCBjb21wb3Np
dGluZy48L3RpdGxlPgotICAgIDwhLS0KLSAgICAgICAgVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZp
bGUgZm9yIHRoZSB0ZXN0LgotICAgICAgICBUaGUgdGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBi
bGFjayBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMgYSBkaWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0
IGZhaWxzLgotICAgIC0tPgotICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNm
aWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwJSwgMCUs
IDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBp
ZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLW1p
eC1jb2xvci1uZWdhdGl2ZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItbmVnYXRpdmUuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNDA2ZTQzNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLW1peC1jb2xvci1uZWdh
dGl2ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAotPCFET0NUWVBFIEhUTUw+
Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IG5lZ2F0aXZlIGNzc19NaXhD
b2xvciB2YWx1ZXMgYXJlIGNsYW1wZWQgdG8gMC4wIGJlZm9yZSBibGVuZGluZyBhbmQgY29tcG9z
aXRpbmcuPC90aXRsZT4KLSAgICA8IS0tIFRoZSB0ZXN0IHBhc3NlcyBpZiB0aGVyZSBpcyBhIGJs
YWNrIHNxdWFyZS4gSWYgdGhlIHNxdWFyZSBpcyBhIGRpZmZlcmVudCBjb2xvciwgdGhlIHRlc3Qg
ZmFpbHMuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikg
ewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQot
Ci0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7Ci0gICAgICAgICAgICAvLyBXZSBuZWVkIHRv
IHJ1biB0aGUgdGVzdCBhZnRlciB0aGUgc2hhZGVycyBhcmUgZG93bmxvYWRlZC4KLSAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGUg
dHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjZmlsdGVyLXRhcmdldCB7Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMCUsIDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAx
MDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRp
ZmZlcmVuY2UgY29weSksIG1peF9jb2xvciAxLjAgLTEuMCAtMi4wIDEuMCk7Ci0gICAgICAgIH0K
LSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgIDwh
LS0KLSAgICAgICAgSW5pdGlhbCB2YWx1ZXM6Ci0gICAgICAgICAgICBDYiA9ICgxLjAsIDAuMCwg
MC4wKQotICAgICAgICAgICAgQ3MgPSAoMS4wLCAtMS4wLCAtMi4wKQotCi0gICAgICAgIENvcnJl
Y3QgcmVzdWx0OgotCi0gICAgICAgICAgICBDbGFtcCBDczoKLSAgICAgICAgICAgICAgICBDcyA9
ICgwLjUsIDAuMCwgMC4wKQotCi0gICAgICAgICAgICBEaWZmZXJlbmNlIGJsZW5kIG1vZGU6Ci0g
ICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gYWJzKENiIC0gQ3MpCi0gICAgICAgICAgICAgICAg
QihDYiwgQ3MpID0gYWJzKCgxLjAsIDAuMCwgMC4wKSAtICgxLjAsIDAuMCwgMC4wKSkKLSAgICAg
ICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAwLjAsIDAuMCkgPT4gQmxhY2sKLQotICAgICAg
ICBJbmNvcnJlY3QgcmVzdWx0OgotCi0gICAgICAgICAgICBVc2UgdW5jbGFtcGVkIENzOgotICAg
ICAgICAgICAgICAgIENzID0gKDAuNSwgLTEuMCwgLTIuMCkKLQotICAgICAgICAgICAgRGlmZmVy
ZW5jZSBibGVuZCBtb2RlOgotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9IGFicyhDYiAtIENz
KQotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9IGFicygoMS4wLCAwLjAsIDAuMCkgLSAoMS4w
LCAtMS4wLCAtMi4wKSkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAxLjAsIDIu
MCkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAxLjAsIDEuMCkgPT4gQ3lhbgot
Ci0gICAgICAgIElmIHRoZSBjdXN0b20gZmlsdGVyIGZhaWxzIHRvIGFwcGx5LCB0aGUgcmVzdWx0
IHdpbGwgc2ltcGx5IGJlIHRoZSBiYWNrZHJvcCBjb2xvcjoKLSAgICAgICAgICAgICAgICBDYiA9
ICgxLjAsIDAuMCwgMC4wKSA9PiBSZWQKLSAgICAtLT4KLSAgICA8ZGl2IGlkPSJmaWx0ZXItdGFy
Z2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LW1peC1jb2xvci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMDYzZjIyLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci1jbGFtcC1jc3MtbWl4LWNvbG9yLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1OSArMCwwIEBA
Ci08IURPQ1RZUEUgSFRNTD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQg
Y3NzX01peENvbG9yIHZhbHVlcyBncmVhdGVyIHRoYW4gMS4wIGFyZSBjbGFtcGVkIHRvIDEuMCBi
ZWZvcmUgYmxlbmRpbmcgYW5kIGNvbXBvc2l0aW5nLjwvdGl0bGU+Ci0gICAgPCEtLSBUaGUgdGVz
dCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBncmVlbiBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMgYSBk
aWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0IGZhaWxzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkgewot
ICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3QgYWZ0ZXIgdGhlIHNoYWRlcnMg
YXJlIGRvd25sb2FkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0g
ICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2ZpbHRl
ci10YXJnZXQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwJSwgNTAlLCAx
MDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIG11bHRpcGx5IGNvcHkpLCBtaXhfY29sb3IgMTAuMCAx
LjAgMC4wIDEuMCk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25s
b2FkPSJydW5UZXN0KCkiPgotICAgIDwhLS0KLSAgICAgICAgSW5pdGlhbCB2YWx1ZXM6Ci0gICAg
ICAgICAgICBDYiA9ICgwLjEsIDAuNSwgMS4wKQotICAgICAgICAgICAgQ3MgPSAoMTAuMCwgMS4w
LCAwLjApCi0KLSAgICAgICAgQ29ycmVjdCByZXN1bHQ6Ci0KLSAgICAgICAgICAgIENsYW1wIENz
OgotICAgICAgICAgICAgICAgIENzID0gKDEuMCwgMS4wLCAwLjApCi0KLSAgICAgICAgICAgIE11
bHRpcGx5IGJsZW5kIG1vZGU6Ci0gICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gQ2IgKiBDcwot
ICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMS4wKSAqICgxLjAsIDEuMCwg
MC4wKQotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMC4wKSA9PiBHcmVl
bgotCi0gICAgICAgIEluY29ycmVjdCByZXN1bHQ6Ci0KLSAgICAgICAgICAgIFVzZSB1bmNsYW1w
ZWQgQ3M6Ci0gICAgICAgICAgICAgICAgQ3MgPSAoMTAuMCwgMS4wLCAwLjApCi0KLSAgICAgICAg
ICAgIE11bHRpcGx5IGJsZW5kIG1vZGU6Ci0gICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gQ2Ig
KiBDcwotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMS4wKSAqICgxMC4w
LCAxLjAsIDAuMCkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMS4wLCAwLjUsIDAuMCkg
PT4gT3JhbmdlCi0KLSAgICAgICAgSWYgdGhlIGN1c3RvbSBmaWx0ZXIgZmFpbHMgdG8gYXBwbHks
IHRoZSByZXN1bHQgd2lsbCBzaW1wbHkgYmUgdGhlIGJhY2tkcm9wIGNvbG9yOgotICAgICAgICAg
ICAgICAgIENiID0gKDAuMSwgMC41LCAxLjApID0+IEJsdWUKLSAgICAtLT4KLSAgICA8ZGl2IGlk
PSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29sb3ItZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA4ZTk4ZWE0Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1leHBlY3RlZC5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8
aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3RzIGNvbG9yIHZhbHVlcyBpbiBjdXN0b20gZmlsdGVy
czwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNmaWx0ZXJ0ZXN0Ym94IHsK
LSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgICAgIHdpZHRoOiAx
MDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkg
b25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rp
dj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnBuZyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1tYXRyaXgt
ZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1M2NkOGY1YzgxNzBj
NmQ3ZGE3ZjI3ZTQwYTQyNTIyNTk2MmExZDliLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpsaXRl
cmFsIDExMTk5CnpjbWVITllmdXdjNnlBaSQtfiRaV0RVPjNfcUFpTHdMMTc/OGw0JFVPVEpUWHZa
QmZ3cHM1Jmh2ZmcoaGJVfjgkdgp6aCs0Nn1yRC1iSUdMbndnM1FEcTM+KT5OKnF9YkFfa3dnVmFx
JEZUTTB+QG1HcF9hWHdfRnJmRyhWNnxsPGM0JFoKeklwNnYySWR7TCE/ajslWGdHV1YtIVowajJl
TD5uWDM9ODAzNzt7eG5BZ21ueWFIa2FoT3YjX1NEcXImTU0jKGw9CnohRnlPZFUmNHp8TlN1K2xl
cjk2UTQyZmk4VnRnVm1kQno2R0NjYjNEYGdKcSF6Zl8ldFZSMXstKGBMVzVvelo9Tgp6KGJpNDcr
TzlwfEV9UG5NTSlTcSNNYHpXdEo5UUgyKVI1VX1xMzIpVW5RX0gpTl48Wn0lK3ZqdyZocHpFPnJS
LUwKenBBbWlVQWhueDI0NkREfFV5R0JaVFM8bTtMQEpFSVdDZ0p+QWA2cTVuUHIpPGJ+ZCU1IWIr
OF9GPkdQYlUqQTdsCnomUlQ1MThwNitxYEJ+PHVgZHsrKnZ6ezR2e259fldyXkFsSEZ5SUhILXpS
MytjJUVxYnl6YVN2ZXJNSjF2RnU0fAp6dE1BXmcpY2Z3YDtgZVFgeS19JTAkd3AwNHZ7MTFsd3lD
KWhfbUxqOEZAPFE7N2A/cXMoWX44PD9+JFk4LT1ram4KekpCUT0qNDdzOT08cDskaEEpOUI+OT92
I2xkfVl9PFlKcmArTjUjbEhgYzMzUURvZXtDIzU8NXVOaUM9aFRVY1pFCnp3WT00XzxRWHRTVXYh
ND9NN1BhcTdLJTZ7Q1AjST1kVFFDWTtsMD8mSUpoUTVDUX1PPlgjXnZuSnopakVsMWtuJQp6Rnll
amhCNVM1I3BqfTxMYV49ZGhsUFNjVlc/YmQldFdyaTEqRVB4O3AzNUotbFRIP3lvODNgQWUmRXQ7
ajElVmMKenZpfmotNmxDPTF7XjBBb0Y2JH5ObSFqMU1Ze35fMGl2UnpGYkhXMU1aPW1vdUc2S0Zi
PjM+SmpQb0l7ZiRfaDdpCno0SGY9YjsqfSVEPzkyMDw5WTZlO1VIPmhsdnJlandwKHdLQ01We3pw
X3BKO0hEYSNkcj9qT05lZWkzQFN7a0BPRwp6MDt1MWBtZCo7aitpZ3x+VTJQaVc/Nz0jciF6JGte
RDBGZGFxeUtNZDtVQU52I31XT3M9PCQpd0EqdEBXJVFHaHcKeithRnZsRDxuK2tpfl9tVVNAQWZU
Q144Q3RnS0Q/SFpJWiF5diU5VE4jJT03bXFLPSR6bVJxbVJOKmpnX24xTTYrCnpaPnxXTE9yYX1Q
MDlnaG5FVGs0aG1JUSF6JVF0emtzSTw8fTtoYXYjNSsqOGJPKF5nQWstb2w8dEY5NyQkdHMqRQp6
RWhzM2tPNil7fm5BPUN1NWV+ez07SipreVd9bVkjbVZzaCEyQDI9YmUwQGBtKm1zKT9YOXBMTE1D
Xm1KaSM8MHUKekVIMzNwQDl4Kmc2VHQ8bzRxWD97UU1qTzNePEJta3BEJXdCTWZtPCk3SjAod0Nl
MnctQFFIcF5hNnVKcGFXNCMpCnpQTlhzdkw0Uj1PY1AjVSgwYCFOQlkmR1ZXPDR9TDdpOTYpaUE5
UWVfaCoyWWA0TFE7JURFWHs0NFN4Tj4yRkl7dgp6V2hgfk51fkh8JSpKLTxYM2MxZVVPOFoqUEtL
bT16bEZVMH5SIU4xeC1GPzl2TUtvJVJDR1B1JFdkZXMpVz4pJlYKellOT3t0UyMoSGhxMDZabD59
P1dQeHQmSH5iZ3tqck83VnV2cXtZZU44bCg1PUVpTT5UQ314ZS0tNGF1S19+Z0xQCnowclNpOTBJ
SDQqclZxOzJ6WjhXcHZpenIzQUk/eihxUk8tRDQrQVhtVGUtdCs5NkZLIz56Iz1UcGZYJG95dnZ1
JAp6TDtZZUlgK20lSlB4cG1mZDMlKXVBQUVZTj80OyptSVR6MDU/RyM2M3ZBcykrM3RYbCtaRFhG
Ykt+dj5eUW1YfWMKencwaCNuOWhwUCN2OHlgO2dqRkxwPmkrbWA4KDZqPCRPS0VHT0FGd0BTeCN9
ODRyTUVmdG8qVW1scndQd2tCMDEkCnpnPF5eWklkMj1WQlh2ejVQPylqb2hhZU4yc1FpU2dwNVok
Y1c1JH1qazVJYmNENDw9QEh6azxMckYwNztWOGd8egp6Q1RjSHNlS3MpOGAoJHxwOyNVaS08Zm00
a1VNJDR7NlZKfnozMjZLMzVwXld0Rn4xcTZjZWx4dE48NCUtZFBtUlkKenpTZzlZLWt0fG5rTGdS
aXkwR2pXeStxZUJ7cWBQYyh+bjdgbDd2Qk9jRXpgdjw8MXxJdzdBfEBLMnx1YFE9T1p3CnpibDdV
RF5kd1F1VTBaQkJeX092TlpFY3F9bXc0RWNEYig1U2ZsMWV5M3cxKiNtK1Y4dCFmZ2V1PTFVei1Q
Sio5Sgp6T19rJGZuOH4tQjU1JUZGWSNJIyt0aTJue0xJfXUpQ35tIVI1YW5YdTF5Rkxnek9XTlAk
JWxreHVKKGxwNiEjcHMKemktYVlQTE5edm1CO2RwXiZZTyZVJU9+Y2pPeXY9fjVOKUwpNUl8JlYh
KU02MWp5PUByJTtsQUhzTDB0SS1iNzBoCnpYTUFFWmlhe2hjVXxVPyV7SmY4WitJPC1+QTZkTiVz
cThzPFk3I3xYOV8rdlB0fGJWQzlTcDtgYENLSlJfRXBHaQp6Y1NJeWc7fHM3IURFezBwej5rNFBP
RnhRMUpXMnFZZEIkYV55QnVjb002WWdAYGwwJVhpdCY/bXdJNSNOMGkza3AKejNXVVRSdSElQHJs
I1Z6Smgjb244SVRYYmYhMzxvVyoqcGM2WiFzaURnRj1Ic0dsZkdSOXxuYHxET2Y0cFh4YTRpCnpW
Rmw0NlMhSk5fREkpc3YjJD9lcVNfWUg4PUVEO2R7cD4/TzVNcmhEUT9pUGQ0cD4zN2JpaWNNZFd0
QkFtSlZwPwp6MEpLK0hJLXNRazVTblN9ZlIreTZsPnt2dmFBQGZPVWZhPnEwV0JUQ1lmZjReMng4
T0gwV0JUQ1dUZDVvPU8tUE0KYmBtbCRoVSYkMiU8eVFEYkV8eHd3QmR1O3UmZHhzcHVeTSZoCgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWNvbG9yLW1hdHJpeC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnR4dAor
KysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLW1hdHJpeC5odG1sIGIvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLW1hdHJpeC5odG1s
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzg1YTEwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1tYXRyaXgu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCBjc3NfQ29sb3JNYXRyaXguPC90aXRsZT4KLSAg
ICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgdGhlIHJlZmVyZW5jZSBp
bWFnZSBhcyBncmF5c2NhbGUuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVm
ZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
IH0KLSAgICAgICAgCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAg
ICAgICAgICAvLyBSdW4gdGhlIHRlc3QgYWZ0ZXIgdGhlIGltYWdlIGxvYWRzLgotICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotPC9oZWFkPgotPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBj
dXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvZ3JheXNjYWxlLWNvbG9yLW1hdHJpeC5m
cycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5n
Ij4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDIwZTlkNWYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MiAr
MCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0
bGU+VGVzdHMgY29sb3IgdmFsdWVzIGluIGN1c3RvbSBmaWx0ZXJzPC90aXRsZT4KLSAgICAgICAg
PHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAg
IH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAg
ICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9h
ZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQot
ICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAg
ICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAg
ICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmVkOwotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSB1cmwo
Jy4uL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvcnMuZnMnKSwKLSAgICAgICAgICAgICAgICAgICAg
YzEgcmdiKDAsIDI1NSwgMCksCi0gICAgICAgICAgICAgICAgICAgIGMyIHJnYmEoMCwgMjU1LCAw
LCAxLjApLAotICAgICAgICAgICAgICAgICAgICBjMyBsaW1lLAotICAgICAgICAgICAgICAgICAg
ICBjNCBoc2woMTIwLCAxMDAlLCA1MCUpLAotICAgICAgICAgICAgICAgICAgICBjNSBoc2xhKDEy
MCwgMTAwJSwgNTAlLCAxLjApLAotICAgICAgICAgICAgICAgICAgICBjNiAjMDBGRjAwCi0gICAg
ICAgICAgICAgICAgKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hl
YWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAg
ICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVkIGxpbWUgYnkgZnJhZ21lbnQtY29s
b3JzLmZzLCBhIGZyYWdtZW50IHNoYWRlci4KLSAgICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYg
c3RheXMgcmVkLgotICAgICAgICAtLT4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+
PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJj
ZS1hbHBoYS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS1leHBlY3RlZC5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYjJmMmIwLi4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUt
ZnJhY3Rpb25hbC1zb3VyY2UtYWxwaGEtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDMzICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+
VGVzdHMgdGhlIHNvdXJjZS1hdG9wIGNvbXBvc2l0ZSBvcGVyYXRvciB3aGVuIHNvdXJjZSBhbHBo
YSBpcyBhIGZyYWN0aW9uYWwgdmFsdWUuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMg
aXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFz
c2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNh
bWUgY29sb3IuCi0gICAgICAgIFRoZSB0ZXN0IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3Ig
dmFsdWVzIGluIHRoaXMgcmVmZXJlbmNlIGZpbGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAg
IDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVhcmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0g
ICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6
ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAg
ICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZsb2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBDb21w
b3NpdGUgb3BlcmF0b3JzICovCi0gICAgLnNvdXJjZS1hdG9wLWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDE3OSwgMjE3LCAxOTIpOwotICAgIH0KLSAgICA8L3N0eWxl
PgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0ic291cmNlLWF0b3AtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8
ZGl2IGNsYXNzPSJzb3VyY2UtYXRvcC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLWZyYWN0aW9uYWwtc291cmNlLWFscGhhLmh0bWwgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLWZy
YWN0aW9uYWwtc291cmNlLWFscGhhLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDFlYjViYWYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsNzEgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGUgc291cmNlLWF0b3AgY29tcG9zaXRlIG9wZXJhdG9yIHdo
ZW4gc291cmNlIGFscGhhIGlzIGEgZnJhY3Rpb25hbCB2YWx1ZS48L3RpdGxlPgotICAgIDwhLS0g
VGhpcyB0ZXN0IHBhc3NlcyBpZiBlYWNoIGhvcml6b250YWwgcGFpciBvZiBzcXVhcmVzIGFyZSBl
eGFjdGx5IHRoZSBzYW1lIGNvbG9yLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRl
UHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5h
YmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRy
dWUpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC5wYWlyLW9m
LXNxdWFyZXMgewotICAgICAgICBjbGVhcjogYm90aDsKLSAgICB9Ci0gICAgLnBhaXItb2Ytc3F1
YXJlcyA+IGRpdiB7Ci0gICAgICAgIC8qIFNxdWFyZSBzaXplLiAqLwotICAgICAgICB3aWR0aDog
MjBweDsKLSAgICAgICAgaGVpZ2h0OiAyMHB4OwotICAgICAgICBtYXJnaW46IDJweDsKLSAgICAg
ICAgZmxvYXQ6IGxlZnQ7Ci0gICAgfQotICAgIC5kZXN0aW5hdGlvbiB7Ci0gICAgICAgIC8qIERl
c3RpbmF0aW9uIGNvbG9yICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwJSwg
NDAlLCA1MCUsIDAuNSk7Ci0gICAgfQotICAgIC8qIENvbXBvc2l0ZSBvcGVyYXRvcnMgKi8KLSAg
ICAvKgotICAgICAgICBUaGUgZXF1YXRpb25zIGJlbG93IHVzZSB0aGUgc3ltYm9scyBhbmQgZXF1
YXRpb25zIGRlZmluZWQgaW4gdGhlIENTUyBCbGVuZGluZyBhbmQgQ29tcG9zaXRpbmcgc3BlYywg
d2hlcmU6Ci0gICAgICAgICAgICBDbyA9IG91dHB1dCBjb2xvcgotICAgICAgICAgICAgQ3MgPSBz
b3VyY2UgY29sb3IgKGFrYSAibWl4IGNvbG9yIiwgImNzc19NaXhDb2xvciIpCi0gICAgICAgICAg
ICBDYiA9IGRlc3RpbmF0aW9uIGNvbG9yIChha2EgImJhY2tkcm9wIGNvbG9yIiwgIm9yaWdpbmFs
IERPTSBlbGVtZW50IGNvbG9yIikKLQotICAgICAgICAgICAgY28gPSBhcyB4IEZhIHggQ3MgKyBh
YiB4IEZiIHggQ2IKLSAgICAgICAgICAgIGFvID0gYXMgeCAxICsgYWIgeCAoMSAtIGFzKQotICAg
ICAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICAgICAgaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy9G
WFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwjZ2VuZXJhbGZvcm11bGEKLSAg
ICAqLwotICAgIC5zb3VyY2UtYXRvcCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
bm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjkgMC41IDAuNik7Ci0gICAgfQotICAgIC5zb3VyY2UtYXRv
cC1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBTb3VyY2VBdG9wOgotCi0gICAg
ICAgICAgICBGYSA9IGFiOyBGYiA9IDEgLSBhcwotICAgICAgICAgICAgY28gPSBhcyB4IENzIHgg
YWIgKyBhYiB4IENiIHggKDEgLSBhcykKLSAgICAgICAgICAgIGFvID0gYXMgeCBhYiArIGFiIHgg
KDEgLSBhcykKLSAgICAgICAgICAgIENvID0gY28gLyBhbwotCi0gICAgICAgICAgICBhID0gMC42
IHggMSArIDAuNSB4ICgxIC0gMC42KSA9IDAuNQotICAgICAgICAgICAgciA9ICgwLjYgeCAwIHgg
MC41ICsgMC41IHggMSB4ICgxIC0gMC42KSkgLyBhID0gMC40Ci0gICAgICAgICAgICBnID0gKDAu
NiB4IDAuOSB4IDAuNSArIDAuNSB4IDAuNCB4ICgxIC0gMC42KSkgLyBhID0gMC43Ci0gICAgICAg
ICAgICBiID0gKDAuNiB4IDAuNSB4IDAuNSArIDAuNSB4IDAuNSB4ICgxIC0gMC42KSkgLyBhID0g
MC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVx
dWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmdiYSg0MCUsIDcwJSwgNTAlLCAwLjUpOwotICAgICAgICAqLwotICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc5LCAyMTcsIDE5Mik7Ci0gICAgfQotICAgIDwvc3R5
bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgot
ICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2UtYXRvcCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9InNvdXJjZS1hdG9wLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVkLnBuZyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3Bl
cmF0b3JzLWV4cGVjdGVkLnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTVhMzc2
MTExMTgxYzZhNDc3YzQ0YzVkMjcwZGJlYTcxN2U4ZTQ4ZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAw
MQoKbGl0ZXJhbCAzMTgxCnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEweX55VXsrdllWMmE+aTAqWik9
aF5obEElQFdzJGxIYG9rPG19P29UbjU4cgp6cW9oPVd2QHtjPWx2SHlnM2xucExSQWJZbTZlQllP
XkF4aldeVz5rfjQ9dz59Vm9VT05jVllNc2YoIU84cFVsOSgKentucGRQRntFUDcrZEdiWncrJSND
NUJfUVJ6VGM/MCQtd05BYTx0UmNYPjNQUkFNK1kpe3tEfVohUXVKJDw/OyorCnpBNTU2STg1R251
RmZiJXhHRzZEaTh5NyNkS0tFeXs5Plc4LWVeTD9xX28tIz8pQjRLNUBiQmImNG59TlJGYnheaAp6
QkhRQFZqZi16dUdjZD48WmVuRSt1LTEqSmV0LUkyVlMpIVUhQEh2KDUjYjAxMkUjXmo3I2wtbE9A
aTtURmNqcEEKej1gYnxSSUthZnYhOHVUajgmLTQ5bz1KVnJ6KS09JUV5bSNSVz1xMWB6czJgIUE3
P3BCRiU7LWk9KVNlRDdSYCl9CnpXbzBQSHJxck92RlphQz1XbmtiPkkhSUFxKGJsKjlIS29zIz1k
JntHWGt4e2tiQklhd3VQYilOQDZVSzxBSjQ/Xwp6TDRlWXJKQUNzQCVyYCFVaFR8SSY3I1dXRWFi
TFVsZHNEZkwjM2hEPz5XdkB+N0dTamRrajJPZTYrZ1NAPEt3LW4KeiZvZVI5JGJ5bSZkRkZ0MWdf
VH5zY2gjNEg7ZD5nQHFqO309XzM9aFVVV09nd2wpQUN9PlltUyFANzlWbEpsR3c5Cnp5PGo5SmRP
PlFvP09JKHtGM05EQUg8Q2hnWGpue3Jvdyl2NyY2Q1h4NEJfQ1VMcz4hekY9dTRCR24+K2tRRDl+
fgp6ZUo/WV4xNEE4UD5BVWZBKTdKMGpZcnByZD1GTWF7dXk/UztOWjwwYGleM1RnWSZyKEJYSUZL
bmVTMit4RmFNN2kKeiEtRihYVjNKcHJmcHRZNnp4Py0/PitqekNPYmorTnNxZzgxWilEbHFPYykt
LVFSPlhRcGBWWldyPGRQblclIXstCnpYe2shSm5obXBmdypQK0RlNFdgNk11eld7KV5ATWYtQ0Y7
QFdaNz5XaDZCP25FJGUwZHpyUGtnYHslaGd1dGp1Owp6IXVDKDgjcTYxPD89ZG9ia05gRn56ZW9k
M0pVVG9Zald9QSUjOHdLXygqQktJb3pYP1AoUnhZPHVxKGplPkZWZFEKSSZNQmJAMEcmVnwyPjx7
OQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRl
LW9wZXJhdG9ycy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1j
b21wb3NpdGUtb3BlcmF0b3JzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLW9wZXJhdG9ycy5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA1NGNkODMzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwxMzIgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgY29tcG9zaXRlIG9wZXJhdG9y
cyBjb21wdXRlIGNvbG9yIHZhbHVlcyBjb3JyZWN0bHkuPC90aXRsZT4KLSAgICA8IS0tCi0gICAg
ICAgIFRoaXMgdGVzdCBtaW1pY3MgdGhlIFBvcnRlciBEdWZmIENvbXBvc2l0aW5nIE9wZXJhdG9y
cyBleGFtcGxlIGltYWdlIGluIHRoZSBDb21wb3NpdGluZyBhbmQgQmxlbmRpbmcgc3BlYzoKLSAg
ICAgICAgaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5n
L2luZGV4Lmh0bWwjcG9ydGVyZHVmZmNvbXBvc2l0aW5nb3BlcmF0b3JzX3NyY2F0b3AKLSAgICAt
LT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICB9Ci0gICAgPC9z
Y3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC8qIERyYXdzIGEgYmxhY2sgYm9yZGVyIGFyb3VuZCB0
aGUgc2hhZGVkIGRlc3RpbmF0aW9uIGRpdi4gKi8KLSAgICAjYm9yZGVyLWNvbnRhaW5lciB7Ci0g
ICAgICAgIHdpZHRoOiA0NXB4OwotICAgICAgICBoZWlnaHQ6IDQ1cHg7Ci0gICAgICAgIGJvcmRl
cjogMXB4IHNvbGlkIGJsYWNrOwotICAgIH0KLSAgICAvKiBUaGUgc2hhZGVkIGRpdi4gKi8KLSAg
ICAuZGVzdGluYXRpb24gewotICAgICAgICB3aWR0aDogMTAwJTsKLSAgICAgICAgaGVpZ2h0OiAx
MDAlOwotICAgIH0KLSAgICAvKiBEcmF3cyBhIHllbGxvdyBzcXVhcmUgaW4gdGhlIHVwcGVyIGxl
ZnQgY29ybmVyIG9mIHRoZSBkZXN0aW5hdGlvbiBkaXYuICovCi0gICAgLyogVGhlIHJlc3Qgb2Yg
dGhlIGRlc3RpbmF0aW9uIGRpdiBpcyB0cmFuc3BhcmVudC4gKi8KLSAgICAjZGVzdGluYXRpb24t
b3BhcXVlLWNoaWxkIHsKLSAgICAgICAgd2lkdGg6IDY3JTsKLSAgICAgICAgaGVpZ2h0OiA2NyU7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHllbGxvdzsKLSAgICB9Ci0gICAgLyogQ29tcG9z
aXRlIG9wZXJhdG9ycyAqLwotICAgIC5jbGVhciB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9y
ZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGNsZWFyKSk7Ci0gICAgfQotICAgIC5jb3B5
IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNz
LXRleC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb21wb3NpdGUuZnMnKSBub3Jt
YWwgY29weSkpOwotICAgIH0KLSAgICAuc291cmNlLW92ZXIgewotICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVy
bCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1hbCBzb3VyY2Utb3ZlcikpOwotICAg
IH0KLSAgICAuZGVzdGluYXRpb24tb3ZlciB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNv
dXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLW92ZXIpKTsKLSAgICB9Ci0g
ICAgLnNvdXJjZS1pbiB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9y
ZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9z
aXRlLmZzJykgbm9ybWFsIHNvdXJjZS1pbikpOwotICAgIH0KLSAgICAuZGVzdGluYXRpb24taW4g
ewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3Mt
dGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1h
bCBkZXN0aW5hdGlvbi1pbikpOwotICAgIH0KLSAgICAuc291cmNlLW91dCB7Ci0gICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMn
KSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIHNvdXJjZS1vdXQp
KTsKLSAgICB9Ci0gICAgLmRlc3RpbmF0aW9uLW91dCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLW91dCkpOwotICAg
IH0KLSAgICAuc291cmNlLWF0b3AgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVy
bCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2Vz
L2NvbXBvc2l0ZS5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAgIH0KLSAgICAuZGVzdGlu
YXRpb24tYXRvcCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRl
LmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLWF0b3ApKTsKLSAgICB9Ci0gICAgLnhvciB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29v
cmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIHhvcikp
OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0iYm9y
ZGVyLWNvbnRhaW5lciI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIGNsZWFyIj4K
LSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0g
ICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWluZXIi
PgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBjb3B5Ij4KLSAgICAgICAgICAgIDxk
aXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWluZXIiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2Utb3ZlciI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJk
ZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rp
dj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0i
ZGVzdGluYXRpb24gZGVzdGluYXRpb24tb3ZlciI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0
aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4K
LSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVz
dGluYXRpb24gc291cmNlLWluIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9w
YXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYg
aWQ9ImJvcmRlci1jb250YWluZXIiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBk
ZXN0aW5hdGlvbi1pbiI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUt
Y2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJi
b3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gc291cmNl
LW91dCI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwv
ZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29u
dGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZGVzdGluYXRpb24tb3V0
Ij4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+
Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWlu
ZXIiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2UtYXRvcCI+Ci0gICAg
ICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAg
ICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZGVzdGluYXRpb24tYXRvcCI+Ci0gICAgICAg
ICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8
L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24geG9yIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRl
c3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2
PgotICAgIDwhLS0KLSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGNvbXBvc2l0ZSBvcGVyYXRvcnMg
dG8gdGhpcyBwYWdlLCBiZSBjYXJlZnVsIG5vdCB0byBleGNlZWQgNjAwcHggaW4KLSAgICAgICAg
aGVpZ2h0LCBzaW5jZSBEdW1wUmVuZGVyVHJlZSBjb21wYXJlcyA4MDB4NjAwIHNuYXBzaG90cyBv
ZiB0aGlzIHBhZ2UuCi0gICAgLS0+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLXNvdXJj
ZS1hdG9wLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1jb21wb3NpdGUtc291cmNlLWF0b3AtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAzYTFiMDAxZmRiYmMxZGU4MTEyZjRiZDVjYTRkZTllNWRiYzk1
MGE3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkg
cGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpsaXRlcmFsIDEwNzk2CnpjbWVJMlpBZXA1N3t8
fU91MzhoQEV1IyshK3BSM0pCeHFUaThoWHVIOFk7Yn5MQ3ZPUyhUaDxVUj1Sc09xY15nbwp6SCZV
YHleYTNSKytKezFNbWs2PlZpeX1ydkg3SyZzTFd7IUQtMGlyey1TZlN1RlZCYXUtTlFOMElwP3ww
XkZQMXkKenVwYFRJbXFja01ZWTsrRlMoKVkpMnUxSit2M2NzenFAe2szVjwtOEZFNmQwJEU4SlhN
eE9JMj1jMnV9JlVoemcjCnpxUzNVZWg8dlB4KjcqeGUyQlh6I0RxM0pMOEh5NC08RSg+Wk9sT3Vr
WkIrJkg8O35vdGc4U3RlJWQ0c3tvYSlpPAp6VSN3WW92U0g/cEJ5SWFzYEBWQVg8P2k7Vklrd1I7
djY5bXdgK2dXKllLfDgkVnB0WFYoSTJEb19ab2RWVFYmdWQKeiliNFgpRypCSnhCdyhwRG4mVndI
dVMoNCQwfGlYRiU9X34kbEV2dDdJLVJmWUNFSFVzTk9FcV4zMylzVW5MV24zCnprPU5afDUldFk9
TDswLWU3NCFWUHJNRU5YSGUyNyZpd1ZKOTxWZDM5Z3w5TTRTKHI0MlZaSmVzUEtVTmdqTS09Swp6
TGNPemp0Z2BWem8pPU9JPk93WSNKQEhoZiVLWkwpZSRYdn0xP1d8KHR9KmN8RGFYYGZ3OGhwckwp
bz5iOFkzPyoKelVhQ3drNUp4P0o7dlRqYj5RPjJkeXVLeHludFVfTVVoI1ZDc3I2fURfQ3Yoa0lC
TjE3MFZrd2RxRFBGN0g8YyNmCnpPMzUlP25mJjVkYj93S1Z0PD9IYilhcUpvLVpnNlMxY3JHQSZJ
IUM4YTg1VyVBIyVjNV53LWtMP24+RHY0fUtRcQp6QyhXc0VKP3xMNS16RUQ/e083YDFGMEdlYiUk
PUQwdXJRRkUmSl4lTU43PXp9QTdwUkcyPk9mIUQpPEx0QlkyUVAKelVpPzRaQGJ0Si0jZkJZMktB
LVE0QStoUmZqVTt3cGFrMmxzSm4yX3RZKjB5Y25uNUc0byFjLXFFVWJiam8pQH1QCnpIYztHQ0Zf
UlpgKX0pTSleZD8tSEZXfmM0OVRiTjNGQyZ0OHVrMHUjaUVTN3F7O0h0QiQ4IW16eUB4K2ZxO1JR
KAp6VlJyby1wZzJyUUNsSlV6a0U3X1FuP1AzSWAha2Z+TCFAUU93VXJidm9nYnlAZFU8fn5XbSF2
Rih6Q0JDSmphPEwKeil3T0xXKT40KnI4Zz1jVmJHaFJjVEg4NV48NGczLWw7d3BKSWRCai1DPWdp
P0xIe2hwYHJUZnlZIVBqP3Z2cEJhCnpSOyFLPS16fFVpeChEelFEdntOVnRVdFBPXn4yK29ORHZ0
X1QjQkdGeHNoZHkmYV9UYmwjVkJZa29gIyshbXV8bgp6JUQ+dTJYK3teeiN6clM4TCRFWjk3dUxp
alEqKmFzXngoaWFpVmo8ZHM9IWpmRC1iS2dTcHBlRTFPe300N2VILUUKekk9fnIzcz05RDhiMzh4
LXAqbGIoYStMPDQxVnsqNkZhUXomNSgxWXxmQ1BZcUshRWB1MFUja3ppfj5sMk48eSMoCnQ1MEMo
bTBGViU+Pk8mPWdvREtqOXt9ZDhydn5SdWNSP1hleUY3byRKbCREV2RaZHoyfV96am9AQkRlcW0K
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtc291cmNlLWF0b3AtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YjEzNzg5Li4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3Np
dGUtc291cmNlLWF0b3AtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAot
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZhNmM2OTYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1zb3VyY2UtYXRvcC5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGUgc291cmNlLWF0b3AgY29tcG9zaXRlIG9w
ZXJhdG9yIHdpdGggdGhlIG5vcm1hbCBibGVuZCBtb2RlLjwvdGl0bGU+Ci0gICAgPCEtLQotICAg
ICAgICBUaGlzIHRlc3QgbWltaWNzIHRoZSBzb3VyY2UtYXRvcCBleGFtcGxlIGltYWdlIGluIHRo
ZSBDb21wb3NpdGluZyBhbmQgQmxlbmRpbmcgc3BlYzoKLSAgICAgICAgaHR0cHM6Ly9kdmNzLncz
Lm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwjcG9ydGVyZHVm
ZmNvbXBvc2l0aW5nb3BlcmF0b3JzX3NyY2F0b3AKLQotICAgICAgICBJZiBpdCBwYXNzZXMsIHlv
dSBzaG91bGQgc2VlIGEgeWVsbG93IHNxdWFyZSB3aXRoIGEgYmx1ZSBzcXVhcmUgaW4gaXRzIGxv
d2VyIHJpZ2h0IGNvcm5lci4KLSAgICAgICAgVGhpcyBzaG91bGQgYmUgaW4gdGhlIHVwcGVyIGxl
ZnQgY29ybmVyIG9mIGEgd2hpdGUgYm94IHdpdGggYSBibGFjayBib3JkZXIuCi0gICAgLS0+Ci0g
ICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZp
bHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0
PgotICAgIDxzdHlsZT4KLSAgICAvKiBEcmF3cyBhIGJsYWNrIGJvcmRlciBhcm91bmQgdGhlIHNo
YWRlZCBkZXN0aW5hdGlvbiBkaXYuICovCi0gICAgI2JvcmRlci1jb250YWluZXIgewotICAgICAg
ICB3aWR0aDogMjAwcHg7Ci0gICAgICAgIGhlaWdodDogMjAwcHg7Ci0gICAgICAgIGJvcmRlcjog
MXB4IHNvbGlkIGJsYWNrOwotICAgIH0KLSAgICAvKiBUaGUgc2hhZGVkIGRpdi4gKi8KLSAgICAj
ZGVzdGluYXRpb24gewotICAgICAgICB3aWR0aDogMTAwJTsKLSAgICAgICAgaGVpZ2h0OiAxMDAl
OwotICAgICAgICAvKiBUaGUgZnJhZ21lbnQgc2hhZGVyIHdyaXRlcyBhIGJsdWUgc3F1YXJlIHRv
IGNzc19NaXhDb2xvciBpbiB0aGUgbG93ZXIgcmlnaHQgY29ybmVyIG9mIHRoZSBkZXN0aW5hdGlv
biBkaXYuICovCi0gICAgICAgIC8qIEl0IHdyaXRlcyB0cmFuc3BhcmVudCBlbHNld2hlcmUuICov
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10
ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSk7Ci0gICAgfQotICAgIC8qIERyYXdzIGEgeWVsbG93IHNxdWFyZSBpbiB0
aGUgdXBwZXIgbGVmdCBjb3JuZXIgb2YgdGhlIGRlc3RpbmF0aW9uIGRpdi4gKi8KLSAgICAvKiBU
aGUgcmVzdCBvZiB0aGUgZGVzdGluYXRpb24gZGl2IGlzIHRyYW5zcGFyZW50LiAqLwotICAgICNk
ZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQgewotICAgICAgICB3aWR0aDogNjclOwotICAgICAgICBo
ZWlnaHQ6IDY3JTsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93OwotICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0iYm9yZGVyLWNvbnRhaW5l
ciI+Ci0gICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9
ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+Ci0gICAgICAgICAgICA8L2Rpdj4KLSAgICAgICAg
PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5saW5lLWNvbXB1
dGVkLXN0eWxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0CmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlM2Y1ZDc3Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29t
cHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAot
VGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgd2UgZG9uJ3QgYXNzZXJ0IHdoZW4gd2UgZ2VuZXJhdGUg
dGhlIGNvbXB1dGVkIHN0eWxlIGZvciBhbiBlbGVtZW50IHRoYXQgbWVldHMgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zOgotKDEpIFRoZSBlbGVtZW50IGhhcyBhIGN1c3RvbSBmaWx0ZXIgY29udGFp
bmluZyBhIHRyYW5zZm9ybSBwYXJhbWV0ZXIuCi0oMikgVGhlIGVsZW1lbnQgZG9lcyBub3QgaGF2
ZSBhIENTUyBib3guIEZvciBleGFtcGxlLCB0aGUgZWxlbWVudCBpcyBkaXNwbGF5OiBpbmxpbmUu
Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGVsZW1lbnQgaXMgbm9uLW51
bGwuCi1QQVNTIENvbXB1dGluZyB0aGUgZmlsdGVyIHN0eWxlIGZvciB0aGUgZWxlbWVudCBkaWQg
bm90IGNyYXNoIHRoZSBicm93c2VyLgotUEFTUyBmaWx0ZXJQcm9wZXJ0eUNTU1ZhbHVlIGlzIG5v
bi1udWxsLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRF
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTkzNmZlNi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5s
aW5lLWNvbXB1dGVkLXN0eWxlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi08
IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdD4KLSAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAg
I2ZpbHRlci10YXJnZXQgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwo
bm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgyKSk7Ci0gICAgICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Ci0gICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci0gICAgPHNwYW4gaWQ9ImZpbHRlci10YXJn
ZXQiPjwvc3Bhbj4KLSAgICA8c2NyaXB0PgotICAgICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0
IHZlcmlmaWVzIHRoYXQgd2UgZG9uJ3QgYXNzZXJ0IHdoZW4gd2UgZ2VuZXJhdGUgdGhlIGNvbXB1
dGVkIHN0eWxlXAotICAgICAgICAgICAgZm9yIGFuIGVsZW1lbnQgdGhhdCBtZWV0cyB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnM6PGJyLz5cCi0gICAgICAgICAgICAoMSkgVGhlIGVsZW1lbnQgaGFz
IGEgY3VzdG9tIGZpbHRlciBjb250YWluaW5nIGEgdHJhbnNmb3JtIHBhcmFtZXRlci48YnIvPlwK
LSAgICAgICAgICAgICgyKSBUaGUgZWxlbWVudCBkb2VzIG5vdCBoYXZlIGEgQ1NTIGJveC4gRm9y
IGV4YW1wbGUsIHRoZSBlbGVtZW50IGlzIGRpc3BsYXk6IGlubGluZS4iKTsKLQotICAgICAgICB2
YXIgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWx0ZXItdGFyZ2V0Iik7Ci0g
ICAgICAgIHNob3VsZEJlTm9uTnVsbCgiZWxlbWVudCIpOwotCi0gICAgICAgIHZhciBmaWx0ZXJQ
cm9wZXJ0eUNTU1ZhbHVlID0gZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS5nZXRQcm9wZXJ0eUNT
U1ZhbHVlKCItd2Via2l0LWZpbHRlciIpOwotICAgICAgICB0ZXN0UGFzc2VkKCJDb21wdXRpbmcg
dGhlIGZpbHRlciBzdHlsZSBmb3IgdGhlIGVsZW1lbnQgZGlkIG5vdCBjcmFzaCB0aGUgYnJvd3Nl
ci4iKTsKLSAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJmaWx0ZXJQcm9wZXJ0eUNTU1ZhbHVlIik7
Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1rZXl3b3JkLWFz
LXBhcmFtZXRlci1uYW1lLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS1leHBlY3Rl
ZC5wbmcKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgxMzE2ZmZkN2NiOWIyN2QzNDI2
N2Q5YWFhNWZiZjk3OWE2MzM4OGEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgMTA1
NjkKemNtZUhOVH14QyE3QGpqYiVKQ350OG00NzJUM0xkSHRFO0k9akpsJHRoKVUyKG43U1Z0Zyhr
VSVQe14hTnQzPFV8CnpoUVdlUmZwdC1jbT0obyhBdGV8Wik+WFRLTUJvUVJkUW43U0hMST4/ZW5Q
PX1iQG57JEpUdm4kXkZBfXJkLWBqdAp6JVZIdlRNSXdZXkQkMzF1MnBLM3Mqcko5RDxqJSQzNClJ
OExtUmcqKUdZO0ZpJmFPNk9HK0ZKb21ZblM3ZTNSOWYKeld5KjlvQHx0WlhZaV8yPW1oWjQxJV40
bzhKJS1SQmV9JWN8TTdRJGdxdyh5WCs4dn5KSWBQdDw+OU0lX0pmRX1mCnojYlZXbVB1cjV5KHRD
eihKXnM0amJ8VkU3UmlsaUhBRi10OGMoP29IPUchX3ZAOGY3U01NNzRwNyUjbTBKeW1aLQp6Tlo8
S2o+ckVQMEU1QEliIyYmTXM7MCZVYVR7ZGlXTGUjPXxqbXszZz8zM0N3VVowO2BjPk9jfVNCY0Ij
VGt7WE4KejFFKSh2b0xiYjZ1PklqKEg+Sk95Vm15JFc1YjlCTVpCPi1HRCtPaHRDWDchVXJtVEg7
KVlobUpKaTx8YmskMnp2CnpMXnIwRXB3YU9nUzAhMnQ8QzgtKCghZXtTUkZENXZ1fTtlfUQ2YGZx
Z2FSZ2JvYCNYQkhkfjVMTzlpY1F4S287TQp6S21fRTtoIWpJaiY/ZGdtbSZWXyZDPlEofGlNQjZ7
bHQoV29PWERCcz12aUJhTF8zS3dnYXQhYiNGQnYzNjVQZUcKemk5YFp7KyFEOzB8NVZDZFNeYyZh
Nz9wJVohQ3YwVDNNeXwpMnxwMklJfnQ3OFJicjhsXjQ2c3xOZFpiMmtFWW9ZCno7TkBzM3FhanQt
bytlZkdERTJmUjchcCRKeTxhSipNem9AMkBpITlTI1E1SCp2dE4/STZ3MU9xZ0EhMjl4TzNvJAp6
cT5HdF5PcmZsSlVFJHdHc0dnYSoxQ3BYJDwweSU+TkktJDIlKylfUD5zbVVZWTFBLVByMzM2Qmdg
aHhDMiZAIUwKelZFYShXREg/QERpKEheUyRPViREIWEwU2dhQ2w+SXFOTk91YE4xMCQrPG85ZXNL
RzUrKXhiTDdVPiU1KDJVckpTCno5U0M8MnRPS3dQZ3N9fFAwYXlwMzVDR056MHFhMU5WWmJeNz5w
JkQyITghb3pBWHNxKT5qMTArQGUjbShXKnopaQpaOFg5NkI/MHZaV1BKQTFRRG9VJShrQlhhbXt7
cSVJXyY1TG4KCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1ldGVyLW5hbWUtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1rZXl3b3Jk
LWFzLXBhcmFtZXRlci1uYW1lLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1ldGVyLW5hbWUtZXhwZWN0ZWQu
dHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1l
dGVyLW5hbWUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA3ZjBkYzcyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGEgQ1NTIGtleXdvcmQgY2FuIGJlIGEg
cGFyYW1ldGVyIG5hbWUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJl
ZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxl
ZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUp
OwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC8qIFRlc3RzIHRo
YXQgdGhlIENTUyBrZXl3b3JkICJiYWNrZ3JvdW5kIiBjYW4gYmUgYSBwYXJhbWV0ZXIgbmFtZS4g
Ki8KLSAgICAuc2hhZGVkIHsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICBoZWlnaHQ6
IDEwMHB4OwotICAgICAgICAvKiBUaGUgc2hhZGVyIHNob3VsZCByZXBsYWNlIHRoZSBkaXYncyBy
ZWQgYmFja2dyb3VuZCB3aXRoIGdyZWVuLiAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
ZWQ7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSB1cmwoJy4uL3Jlc291cmNl
cy9jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5mcycpLCBiYWNrZ3JvdW5kIDAgMSAwIDEp
OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0i
c2hhZGVkIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hlZC1tZXNoLXdpdGgtbWVz
aC1ib3gtdHlwZS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI4NmM0ZDIuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVk
LW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxNyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxl
PlRlc3QgdGhhdCBhIGRldGFjaGVkIGlkZW50aWZpZXIgYWZ0ZXIgdGhlIG1lc2ggYm94IHR5cGUg
aXMgaW50ZXJwcmV0ZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBw
YXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgc2luZ2xlIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHN0
eWxlPgotICAgICAgICAjZmlsdGVyLXRhcmdldCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogIzBmMDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8
ZGl2IGlkPSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hl
ZC1tZXNoLXdpdGgtbWVzaC1ib3gtdHlwZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE5NWFjNDguLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1l
c2gtd2l0aC1tZXNoLWJveC10eXBlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MSArMCwwIEBA
Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBh
IGRldGFjaGVkIGlkZW50aWZpZXIgYWZ0ZXIgdGhlIG1lc2ggYm94IHR5cGUgaXMgaW50ZXJwcmV0
ZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBz
aG91bGQgc2VlIGEgc2luZ2xlIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHNjcmlwdD4KLSAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIp
OwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2Fp
dFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3Rz
IGFmdGVyIHRoZSBzaGFkZXJzIGRvd25sb2FkLgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsK
LSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAgI2ZpbHRlci10
YXJnZXQgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgIC8q
IAotICAgICAgICAgICAgICAgIFRoaXMgY3VzdG9tIGZpbHRlcidzIHZlcnRleCBzaGFkZXIgZGVm
aW5lcyBhX3RyaWFuZ2xlQ29vcmQsIHdoaWNoIGlzIG9ubHkgYXZhaWxhYmxlIHdpdGggZGV0YWNo
ZWQgbWVzaGVzLgotICAgICAgICAgICAgICAgIFRodXMsIHRoaXMgY3VzdG9tIGZpbHRlciB3aWxs
IG9ubHkgZXhlY3V0ZSBpZiB0aGUgbWVzaCBpcyBkZXRhY2hlZC4KLSAgICAgICAgICAgICAgICBJ
ZiB0aGUgY3VzdG9tIGZpbHRlciBleGVjdXRlcywgaXRzIGZyYWdtZW50IHNoYWRlciB3aWxsIHR1
cm4gdGhpcyBlbGVtZW50IGdyZWVuLgotICAgICAgICAgICAgICovCi0gICAgICAgICAgICAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvYS10cmlhbmdsZS1jb29yZC1kZWZp
bmVkLnZzKSAKLSAgICAgICAgICAgICAgICBtaXgodXJsKC4uL3Jlc291cmNlcy9taXgtY29sb3Iu
ZnMpIG5vcm1hbCBzb3VyY2UtYXRvcCksCi0gICAgICAgICAgICAgICAgMSAxIGJvcmRlci1ib3gg
ZGV0YWNoZWQsCi0gICAgICAgICAgICAgICAgbWl4X2NvbG9yIDAgMSAwIDEKLSAgICAgICAgICAg
ICk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJydW5U
ZXN0KCkiPgotICAgIDxkaXYgaWQ9ImZpbHRlci10YXJnZXQiPjwvZGl2PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLW1hdE4tZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1tYXROLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDk4NzBkNGUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLW1hdE4tZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDE2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAg
ICAgIDx0aXRsZT5UZXN0cyBtYXROKCkgZnVuY3Rpb25zIGluIGN1c3RvbSBmaWx0ZXJzPC90aXRs
ZT4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAg
ICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9
InJ1blRlc3QoKSI+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAg
IDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1tYXROLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbWF0Ti5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA5YjUxOTFmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1tYXROLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzOSArMCwwIEBA
Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVz
dHMgbWF0TigpIGZ1bmN0aW9ucyBpbiBjdXN0b20gZmlsdGVyczwvdGl0bGU+Ci0gICAgICAgIDxz
Y3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAg
ICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRp
bmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAg
ICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAg
I2ZpbHRlcnRlc3Rib3ggewotICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6
IHJlZDsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcu
Li9yZXNvdXJjZXMvZnJhZ21lbnQtbWF0Ti5mcycpLAotICAgICAgICAgICAgICAgICAgICBtMSBt
YXQyKDEsIDEsIDAsIDApLAotICAgICAgICAgICAgICAgICAgICBtMiBtYXQzKDEsIDAsIDEsIDAs
IDEsIDEsIDAsIDEsIDApLAotICAgICAgICAgICAgICAgICAgICBtMyBtYXQ0KDEsIDEsIDAsIDAs
IDAsIDEsIDEsIDAsIDEsIDAsIDAsIDEsIDEsIDEsIDEsIDEpCi0gICAgICAgICAgICAgICAgKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkg
b25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBw
eCByZWQgZGl2IGlzIGNvbG91cmVkIGxpbWUgYnkgZnJhZ21lbnQtbWF0Ti5mcywgYSBmcmFnbWVu
dCBzaGFkZXIuCi0gICAgICAgICAgICBGYWlscyBpZiB0aGUgZGl2IHN0YXlzIHJlZC4KLSAgICAg
ICAgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1tZXNoLWNvbHVtbi1yb3ctb3JkZXItZXhwZWN0ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1tZXNoLWNvbHVtbi1yb3ct
b3JkZXItZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDliMGM4
Ni4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwzMiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3QgdGhhdCBpbiBDU1MsIHRoZSB2ZXJ0ZXggbWVzaCBkaW1lbnNpb25zIGFyZSBzcGVj
aWZpZWQgaW4gY29sdW1uLCByb3cgb3JkZXIuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRo
aXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgSWYgdGhlIHRl
c3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIGNoZWNrYm9hcmQgd2l0aCAyIGNvbHVtbnMgYW5k
IDQgcm93cyBvZiBibGFjayBhbmQgZ3JlZW4gc3F1YXJlcy4KLSAgICAtLT4KLSAgICA8c3R5bGU+
Ci0gICAgYm9keSB7Ci0gICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICB9Ci0gICAgZGl2IHsKLSAg
ICAgICAgZmxvYXQ6IGxlZnQ7Ci0gICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6
IDUwcHg7Ci0gICAgfQotICAgIGRpdjpudGgtY2hpbGQoNG4pLCBkaXY6bnRoLWNoaWxkKDRuKzEp
IHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMCB9Ci0gICAgZGl2Om50aC1jaGlsZCg0bisyKSwgZGl2
Om50aC1jaGlsZCg0biszKSB7IGJhY2tncm91bmQtY29sb3I6ICMwZjAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAg
PGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48
L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkwYjc0ZDkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW1lc2gtY29sdW1uLXJvdy1vcmRlci5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgaW4gQ1NTLCB0aGUgdmVydGV4IG1lc2gg
ZGltZW5zaW9ucyBhcmUgc3BlY2lmaWVkIGluIGNvbHVtbiwgcm93IG9yZGVyLjwvdGl0bGU+Ci0g
ICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgY2hlY2tib2FyZCB3
aXRoIDIgY29sdW1ucyBhbmQgNCByb3dzIG9mIGJsYWNrIGFuZCBncmVlbiBzcXVhcmVzLiAtLT4K
LSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVy
cmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLSAgICAgICAgCi0g
ICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBXZSBu
ZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIHNoYWRlcnMgZG93bmxvYWQuCi0gICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxl
PgotICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwotICAg
ICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgIGhlaWdodDogMjAwcHg7Ci0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4v
cmVzb3VyY2VzL2NoZWNrZXJib2FyZC52cykgbWl4KHVybCguLi9yZXNvdXJjZXMvdmFyeWluZy1t
aXgtY29sb3IuZnMpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDIgNCBkZXRhY2hlZCk7Ci0gICAgfQot
ICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRp
diBpZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRp
bmdzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1taXgtYmluZGluZ3MtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA4N2RjZTRkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251
bGwKQEAgLTEsMTUgKzAsMCBAQAotVGVzdCBtaXgoKSBmdW5jdGlvbiBKUyBiaW5kaW5ncy4KLQot
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MganNXcmFwcGVyQ2xhc3MobWl4RnVuY3Rp
b24pIGlzICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyht
aXhGdW5jdGlvbi5fX3Byb3RvX18pIGlzICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlUHJvdG90
eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhtaXhGdW5jdGlvbi5jb25zdHJ1Y3RvcikgaXMgJ1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWVDb25zdHJ1Y3RvcicKLVBBU1MgbWl4RnVuY3Rpb25Db250
ZW50IGlzICJtaXgodXJsKGNvbG9yLW9mZnNldC5mcykpIgotUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTYxNWM0MS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRpbmdz
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJM
SUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRpbmdz
LmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUt
YWNjZXNzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItbm8tZWxlbWVudC10ZXh0dXJlLWFjY2Vzcy1leHBlY3RlZC5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZDg0MDQ4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUt
YWNjZXNzLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyNiArMCwwIEBACi08IWRv
Y3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgYW4gYXV0
aG9yJ3Mgc2hhZGVyIGNvZGUgY2Fubm90IHNhbXBsZSBhIHNoYWRlZCBlbGVtZW50J3MgdGV4dHVy
ZS48L3RpdGxlPgotICAgIDwhLS0gCi0gICAgICAgIFRoaXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxl
IGZvciB0aGUgdGVzdC4KLSAgICAgICAgSWYgdGhlIHRlc3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNl
ZSA2IHZlcnRpY2FsbHktc3RhY2tlZCBncmVlbiBib3hlcy4KLSAgICAtLT4KLSAgICA8c3R5bGU+
Ci0gICAgZGl2IHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0g
ICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgIG1hcmdp
bjogMTBweDsKLSAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXY+
PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+
Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5v
LWVsZW1lbnQtdGV4dHVyZS1hY2Nlc3MuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUtYWNjZXNzLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVhODQ5MzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vLWVsZW1lbnQtdGV4dHVyZS1h
Y2Nlc3MuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ4ICswLDAgQEAKLTwhZG9jdHlwZSBodG1s
PgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBhbiBhdXRob3IncyBzaGFk
ZXIgY29kZSBjYW5ub3Qgc2FtcGxlIGEgc2hhZGVkIGVsZW1lbnQncyB0ZXh0dXJlLjwvdGl0bGU+
Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIDYgdmVydGljYWxs
eS1zdGFja2VkIGdyZWVuIGJveGVzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRl
UHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5h
YmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAg
ZGl2IHsKLSAgICAgICAgLyogVGhlIHNoYWRlcnMgd2lsbCB0dXJuIHRoZSBlbGVtZW50J3MgY29s
b3IgZnJvbSBncmVlbiB0byByZWQgaWYgdGhleSBhcmUgYWJsZSB0byBzYW1wbGUgaXRzIHRleHR1
cmUuICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAg
ICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEw
cHg7Ci0gICAgfQotICAgIC5zYW1wbGUtdS10ZXh0dXJlIHsKLSAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRleC1jb29yZC52cycpIHVybCgnLi4v
cmVzb3VyY2VzL3NhbXBsZS11LXRleHR1cmUuZnMnKSk7Ci0gICAgfQotICAgIC5zYW1wbGUtdS10
ZXh0dXJlLW1peCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvc2FtcGxlLXUt
dGV4dHVyZS1taXguZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLnNhbXBs
ZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSB1cmwoJy4uL3Jlc291cmNl
cy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUuZnMnKSk7ICAKLSAgICB9Ci0gICAgLnNh
bXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXggewotICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXguZnMnKSBub3Jt
YWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLnNhbXBsZS1kZWZpbmVkLWNzcy11LXRleHR1
cmUgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bh
c3MtdGV4LWNvb3JkLnZzJykgdXJsKCcuLi9yZXNvdXJjZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUt
dGV4dHVyZS5mcycpKTsgIAotICAgIH0KLSAgICAuc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVy
ZS1taXggewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2Vz
L3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL3NhbXBsZS1kZWZpbmVk
LWNzcy11LXRleHR1cmUtbWl4LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgfQotICAg
IDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdS10ZXh0
dXJlIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdS10ZXh0dXJlLW1peCI+PC9kaXY+
Ci0gICAgPGRpdiBjbGFzcz0ic2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10ZXh0dXJlIj48L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4Ij48L2Rp
dj4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlIj48L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peCI+PC9kaXY+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3ItZXhwZWN0
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xvci1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBlOTYzYTYxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xv
ci1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotPCFET0NUWVBF
IEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCB0aGF0IGJs
ZW5kcyB0aGUgc291cmNlIGFuZCB0aGUgYmFja2Ryb3Agd2l0aCB0aGUgY29sb3IgYmxlbmQgbW9k
ZS48L3RpdGxlPgotICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgIC8qIFRoZXNl
IGFyZSBleGFjdGx5IHRoZSBjb2xvciB2YWx1ZXMgd2UgZXhwZWN0LiBTb21lIHBsYXRmb3JtcyBt
YXkgaGF2ZSBzbGlnaHRseSBkaWZmZXJlbnQKLSAgICAgICAgICAgY29sb3IgcmVzdWx0LiAqLwot
ICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDEwOCwgMTU3LCAyNTUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtc29saWQgewotICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2NywgMTkyLCAyNDIpOwotICAgICAgICAgICAg
d2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAg
ICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2
OSwgMTQyLCAxNjYpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVp
Z2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIwNSwgMTkyLCAyMDQpOwotICAgICAgICAgICAgd2lk
dGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwv
c3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJzb2xpZC1zb2xpZCI+PC9kaXY+
Ci0gICAgPGRpdiBpZD0iYWxwaGEtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9InNvbGlkLWFs
cGhhIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1hbHBoYSI+PC9kaXY+Ci08L2JvZHk+Ci08
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3IuaHRtbCBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9k
ZS1jb2xvci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYzM3MDQwLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xvci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTI5
ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAg
PHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGgg
dGhlIGNvbG9yIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdM
RW5hYmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGUgdHlw
ZT0idGV4dC9jc3MiPgotICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Ig
c291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsKLSAgICAgICAgfQotICAg
ICAgICAjYWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5
MCUsIDUwJSwgMzAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAg
ICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9u
ZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Igc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsKLSAgICAgICAgfQotICAgICAgICAjc29saWQt
YWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUp
OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsK
LSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNv
dXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Igc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAu
NCAwLjggMC41KTsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwgMzAlLCAwLjUpOwotICAgICAgICAg
ICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAg
IC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNv
bG9yLmZzJykgY29sb3Igc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41KTsK
LSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBUaGUg
Zm9sbG93aW5nIHByb29mIGFwcGxpZXMgdG8gdGhlIGZpcnN0IGNhc2UgKCNzb2xpZC1zb2xpZCkg
d2hlcmUgYm90aCB0aGUgYmFja2Ryb3AgYW5kIHRoZQotICAgIHNvdXJjZSBhcmUgc29saWQuCi0K
LSAgICBJbiB0aGlzIHRlc3QgdGhlIGZvbGxvd2luZyBjb21iaW5hdGlvbnMgYXJlIGFsc28gdGVz
dGVkOgotICAgICAgICBCYWNrZHJvcCB3aXRoIDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc29saWQg
c291cmNlCi0gICAgICAgIFNvbGlkIGJhY2tkcm9wIGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0aCAw
LjUgYWxwaGEKLSAgICAgICAgQmFja2Ryb3Agd2l0aCAwLjUgYmxlbmRlZCB3aXRoIHNvdXJjZSB3
aXRoIDAuNSBhbHBoYQotICAgIFRoZSB1bmRlcmxheWluZyBwcm9vZiBvZiB0aGUgYWJvdmUgbWVu
dGlvbmVkIGNhc2VzIGlzIHRoZSBzYW1lOiB0aGUgY29sb3JzIGFyZSBwcmVtdWx0aXBsaWVkCi0g
ICAgYW5kIHRoZW4gYmxlbmRlZCB0b2dldGhlci4KLQotICAgIFRoZSBmaW5hbCBjb2xvciBvZiAj
c29saWQtc29saWQgZGVwZW5kcyBvbiB0aGUgImNvbG9yIiBibGVuZCBtb2RlLCB3aGljaCBpcyBh
IG5vbi1zZXBhcmFibGUKLSAgICBibGVuZCBtb2RlLiBUaGlzIG1lYW5zIHRoYXQgY29sb3JzIGFy
ZSBibGVuZGVkIHRvZ2V0aGVyIGFzIGEgd2hvbGUsIG5vdCBjb21wb25lbnQgYnkgY29tcG9uZW50
LgotCi0gICAgVGhlIGZvcm11bGEgZm9yIHRoaXMgYmxlbmQgbW9kZSBpczoKLSAgICAgICAgQ3Ig
PSBCKENiLCBDcykgPSBTZXRMdW0oQ3MsIEx1bShDYikpCi0KLSAgICBXaXRoOgotICAgICAgICBD
cjogdGhlIHJlc3VsdGluZyBjb2xvcgotICAgICAgICBDYjogdGhlIGJhY2tkcm9wIGNvbG9yLCB3
aGljaCBpcyAjc29saWQtc29saWQgKCJvcmlnaW5hbCBET00gZWxlbWVudCBjb2xvciIpCi0gICAg
ICAgIENzOiB0aGUgc291cmNlIGNvbG9yLCB3aGljaCBpcyBtaXhfY29sb3IKLSAgICAgICAgTHVt
KENiKTogdGhlIGx1bWlub3NpdHkgb2YgQ2IuIEx1bWlub3NpdHkgZm9yIGNvbG9yIEMgaXMgZ2Vu
ZXJhbGx5IGRlZmluZWQgYnkKLSAgICAgICAgICAgTHVtKEMpOiAwLjMgKiBDcmVkICsgMC41OSAq
IENncmVlbiArIDAuMTEgKiBDYmx1ZQotICAgICAgICBTZXRMdW0oQ3MsIEx1bShDYikpOiB0aGUg
ZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAgZCA9IGwgLSBMdW0o
QykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAgQ2dyZWVuID0gQ2dy
ZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAgICAgICAgIHJldHVy
biBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9yIEMgaGFzIHRvIGJl
IGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVuY3Rpb24sIHdoaWNo
IGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xpcENvbG9yKEMpCi0g
ICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENyZWQsIENncmVlbiwg
Q2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAg
ICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkg
KiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAt
IGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVl
IC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4wCi0gICAgICAgICAg
ICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAg
ICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEgLSBsKSkgLyAoeCAt
IGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgSW4gdGhpcyB0ZXN0IGNh
c2U6Ci0gICAgICAgIEx1bShDYikgPSAwLjMgKiAwLjkgKyAwLjU5ICogMC41ICsgMC4xMSAqIDAu
MwotICAgICAgICBMdW0oQ2IpID0gMC4yNyArIDAuMjk1ICsgMC4wMzMKLSAgICAgICAgTHVtKENi
KSA9IDAuNTk4Ci0KLSAgICAgICAgTHVtKENzKSA9IDAuMyAqIDAuMiArIDAuNTkgKiAwLjQgKyAw
LjExICogMC44Ci0gICAgICAgIEx1bShDcykgPSAwLjA2ICsgMC4yMzYgKyAwLjA4OAotICAgICAg
ICBMdW0oQ3MpID0gMC4zODQKLQotICAgICAgICBDciA9IFNldEx1bShDcywgMC41OTgpCi0gICAg
ICAgICAgICBkID0gMC41OTggLSBMdW0oQ3MpCi0gICAgICAgICAgICBkID0gMC41OTggLSAwLjM4
NAotICAgICAgICAgICAgZCA9IDAuMjE0Ci0gICAgICAgICAgICBDcmVkID0gMC4yICsgMC4yMTQg
PSAwLjQxNAotICAgICAgICAgICAgR3JlZW4gPSAwLjQgKyAwLjIxNCA9IDAuNjE0Ci0gICAgICAg
ICAgICBDYmx1ZSA9IDAuOCArIDAuMjE0ID0gMS4wMTQKLSAgICAgICAgICAgIHJldHVybiBDbGlw
Q29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLQotICAgICAgICBDbGlwQ29sb3IoMC40MTQsIDAu
NjE0LCAxLjAxNCkKLSAgICAgICAgICAgIGwgPSAwLjMgKiAwLjQxNCArIDAuNTkgKiAwLjYxNCAr
IDAuMTEgKiAxLjEwMTQgPSAwLjEyNDIgKyAwLjM2MjI2ICsgMC4xMjExNTQgPSAwLjYwNzYxNAot
ICAgICAgICAgICAgbiA9IG1pbigwLjQxNCwgMC42MTQsIDEuMDE0KSA9IDAuNDE0Ci0gICAgICAg
ICAgICB4ID0gbWF4KDAuNDE0LCAwLjYxNCwgMS4wMTQpID0gMS4wMTQKLSAgICAgICAgICAgIHgg
PiAxLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gMC42MDc2MTQgKyAoKCgwLjQxNCAtIDAuNjA3
NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3NjE0KSkgPSAKLSAgICAgICAg
ICAgICAgICAgICAgID0gMC42MDc2MTQgKyAoKC0wLjE5MzYxNCAqIDAuMzkyMzg2KSAvIDAuNDA2
Mzg2KSA9IDAuNjA3NjE0IC0gKDAuMDc1OTcxNDIgLyAwLjQwNjM4NikgPSAwLjYwNzYxNCAtIDAu
MTg2OTQzOTkgPSAwLjQyMDY3MDAxCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gMC42MDc2MTQg
KyAoKCgwLjYxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3
NjE0KSkgPQotICAgICAgICAgICAgICAgICAgICAgICA9IDAuNjA3NjE0ICsgKCgwLjAwMzM4NiAq
IDAuMzkyMzg2KSAvIDAuNDA2Mzg2ID0gMC42MDc2MTQgKyAoMC4wMDEzMjg2MiAvIDAuNDA2Mzg2
KSA9IDAuNjA3NjE0ICsgMC4wMDMyNjkzNSA9IDAuNjEwODgzMzUKLSAgICAgICAgICAgICAgICBD
Ymx1ZSA9IDAuNjA3NjE0ICsgKCgoMS4wMTQgLSAwLjYwNzYxNCkgKiAoMSAtIDAuNjA3NjE0KSkg
LyAoMS4wMTQgLSAwLjYwNzYxNCkgPQotICAgICAgICAgICAgICAgICAgICAgID0gMC42MDc2MTQg
KyAoKDAuNDA2Mzg2ICogMC4zOTIzODYpIC8gMC40MDYzODYpID0gMC42MDc2MTQgKyAoMC4xNTk0
NjAxOCAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4zOTIzODYwMSA9IDEuMAotICAgICAgICAg
ICAgcmV0dXJuICgwLjQyLCAwLjYxLCAxLjApCi0KLSAgICBUaGlzIHZhbHVlIGlzIGVxdWl2YWxl
bnQgdG8gKDEwOCwgMTU3LCAyNTUpLCB3aGljaCBpcyB0aGUgZXhwZWN0ZWQgY29sb3IuCi0gICAg
VGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90aGVyIHBvcnRzIG1pZ2h0IGV4cGVyaWVu
Y2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBpZD0ic29saWQtc29saWQiPjwv
ZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xp
ZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxwaGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5
PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLWh1ZS1leHBlY3RlZC5odG1sIGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJs
ZS1ibGVuZC1tb2RlLWh1ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAzZjE3Zjg3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1odWUtZXhwZWN0ZWQuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwg
bGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJj
ZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGggdGhlIGh1ZSBibGVuZCBtb2RlLjwvdGl0bGU+Ci0gICAg
PHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgLyogVGhlc2UgYXJlIGV4YWN0bHkgdGhl
IGNvbG9yIHZhbHVlcyB3ZSBleHBlY3QuIFNvbWUgcGxhdGZvcm1zIG1heSBoYXZlIHNsaWdodCBk
aWZmZXJlbnQKLSAgICAgICAgICAgY29sb3IgcmVzdWx0LiAqLwotICAgICAgICAjc29saWQtc29s
aWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwOCwgMTU3LCAyNTUpOwot
ICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAg
ICAgICAgfQotICAgICAgICAjYWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogcmdiKDE2NywgMTkyLCAyNDIpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAg
ICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEg
ewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2OSwgMTQyLCAxNjYpOwotICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAg
ICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmdiKDIwNSwgMTkyLCAyMDQpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08
Ym9keT4KLSAgICA8ZGl2IGlkPSJzb2xpZC1zb2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxw
aGEtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9InNvbGlkLWFscGhhIj48L2Rpdj4KLSAgICA8
ZGl2IGlkPSJhbHBoYS1hbHBoYSI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJh
YmxlLWJsZW5kLW1vZGUtaHVlLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtaHVlLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVkMTcxMTguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2Rl
LWh1ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTUxICswLDAgQEAKLTwhRE9DVFlQRSBIVE1M
PgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMg
dGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGggdGhlIGh1ZSBibGVuZCBtb2RlLjwvdGl0
bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICB9
Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI3Nv
bGlkLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5MCUsIDUwJSwg
MzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIGh1ZSBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjIg
MC40IDAuOCAxLjApOwotICAgICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDkwJSwgNTAlLCAzMCUsIDAuNSk7Ci0gICAgICAg
ICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAg
ICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgt
Y29sb3IuZnMnKSBodWUgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsK
LSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgaHVlIHNvdXJj
ZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDAuNSk7Ci0gICAgICAgIH0KLSAgICAgICAg
I2FscGhhLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTAlLCA1
MCUsIDMwJSwgMC41KTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhl
aWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGh1ZSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjIgMC40IDAuOCAwLjUpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4K
LTxib2R5PgotPCEtLQotICAgIFRoZSBmb2xsb3dpbmcgcHJvb2YgYXBwbGllcyB0byB0aGUgZmly
c3QgY2FzZSAoI3NvbGlkLXNvbGlkKSB3aGVyZSBib3RoIHRoZSBiYWNrZHJvcCBhbmQgdGhlCi0g
ICAgc291cmNlIGFyZSBzb2xpZC4KLQotICAgIEluIHRoaXMgdGVzdCB0aGUgZm9sbG93aW5nIGNv
bWJpbmF0aW9ucyBhcmUgYWxzbyB0ZXN0ZWQ6Ci0gICAgICAgIEJhY2tkcm9wIHdpdGggMC41IGFs
cGhhIGJsZW5kZWQgd2l0aCBzb2xpZCBzb3VyY2UKLSAgICAgICAgU29saWQgYmFja2Ryb3AgYmxl
bmRlZCB3aXRoIHNvdXJjZSB3aXRoIDAuNSBhbHBoYQotICAgICAgICBCYWNrZHJvcCB3aXRoIDAu
NSBhbHBoYSBibGVuZGVkIHdpdGggc291cmNlIHdpdGggMC41IGFscGhhCi0gICAgVGhlIHVuZGVy
bHlpbmcgcHJvb2Ygb2YgdGhlIGFib3ZlIG1lbnRpb25lZCBjYXNlcyBpcyB0aGUgc2FtZTogdGhl
IGNvbG9ycyBhcmUgcHJlbXVsdGlwbGllZAotICAgIGFuZCB0aGVuIGJsZW5kZWQgdG9nZXRoZXIu
Ci0KLSAgICBUaGUgZmluYWwgY29sb3Igb2YgI3NvbGlkLXNvbGlkIGRlcGVuZHMgb24gdGhlICJo
dWUiIGJsZW5kIG1vZGUsIHdoaWNoIGlzIGEgbm9uLXNlcGFyYWJsZQotICAgIGJsZW5kIG1vZGUu
IFRoaXMgbWVhbnMgdGhhdCBjb2xvcnMgYXJlIGJsZW5kZWQgdG9nZXRoZXIgYXMgYSB3aG9sZSwg
bm90IGNvbXBvbmVudCBieSBjb21wb25lbnQuCi0KLSAgICBUaGUgZm9ybXVsYSBmb3IgdGhpcyBi
bGVuZCBtb2RlIGlzOgotICAgICAgICBDciA9IEIoQ2IsIENzKSA9IFNldEx1bShTZXRTYXQoQ3Ms
IFNhdChDYikpLCBMdW0oQ2IpKQotCi0gICAgV2l0aDoKLSAgICAgICAgQ3I6IHRoZSByZXN1bHRp
bmcgY29sb3IKLSAgICAgICAgQ2I6IHRoZSBiYWNrZHJvcCBjb2xvciwgd2hpY2ggaXMgI3NvbGlk
LXNvbGlkICgib3JpZ2luYWwgRE9NIGVsZW1lbnQgY29sb3IiKQotICAgICAgICBDczogdGhlIHNv
dXJjZSBjb2xvciwgd2hpY2ggaXMgbWl4X2NvbG9yCi0gICAgICAgIEx1bShDYik6IHRoZSBsdW1p
bm9zaXR5IG9mIENiLiBMdW1pbm9zaXR5IGZvciBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZpbmVk
IGJ5Ci0gICAgICAgICAgIEx1bShDKTogMC4zICogQ3JlZCArIDAuNTkgKiBDZ3JlZW4gKyAwLjEx
ICogQ2JsdWUKLSAgICAgICAgU2F0KENiKTogdGhlIHNhdHVyYXRpb24gb2YgQ2IuIFNhdHVyYXRp
b24gZm9yIGNvbG9yIEMgaXMgZ2VuZXJhbGx5IGRlZmluZWQgYnkKLSAgICAgICAgICAgU2F0KEMp
OiBtYXgoQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkgLSBtaW4oQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkKLSAg
ICAgICBTZXRTYXQoQ3MsIFNhdChDYikpOiB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBzYXR1
cmF0aW9uCi0gICAgICAgU2V0THVtKFNldFNhdChDcywgU2F0KENiKSksIEx1bShDYikpOiB0aGUg
ZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAgZCA9IGwgLSBMdW0o
QykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAgQ2dyZWVuID0gQ2dy
ZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAgICAgICAgIHJldHVy
biBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9yIEMgaGFzIHRvIGJl
IGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVuY3Rpb24sIHdoaWNo
IGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xpcENvbG9yKEMpCi0g
ICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENyZWQsIENncmVlbiwg
Q2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAg
ICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkg
KiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAt
IGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVl
IC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4wCi0gICAgICAgICAg
ICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAg
ICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEgLSBsKSkgLyAoeCAt
IGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgc2F0dXJhdGlvbiBzIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldFNhdChDLCBzKQotICAgICAgICAgICAgaWYoQ21heCA+IENt
aW4pCi0gICAgICAgICAgICAgICAgQ21pZCA9ICgoKENtaWQgLSBDbWluKSAqIHMpIC8gKENtYXgg
LSBDbWluKSkKLSAgICAgICAgICAgICAgICBDbWF4ID0gcwotICAgICAgICAgICAgZWxzZQotICAg
ICAgICAgICAgICAgIENtaWQgPSBDbWF4ID0gMAotICAgICAgICAgICAgQ21pbiA9IDAKLSAgICAg
ICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlzIHRlc3QgY2FzZToKLSAgICAgICAgTHVtKENi
KSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAwLjExICogMC4zCi0gICAgICAgIEx1bShDYikg
PSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAgICBMdW0oQ2IpID0gMC41OTgKLQotICAgICAg
ICBTYXQoQ2IpID0gbWF4KDAuOSwgMC41LCAwLjMpIC0gbWluKDAuOSwgMC41LCAwLjMpCi0gICAg
ICAgIFNhdChDYikgPSAwLjkgLSAwLjMKLSAgICAgICAgU2F0KENiKSA9IDAuNgotCi0gICAgICAg
IEZvciB0aGUgc2FrZSBvZiBicmV2aXR5IHRoZSByZXN1bHQgb2YgdGhpcyBjb21wdXRhdGlvbiBp
cyBjYWxsZWQgQ3QKLSAgICAgICAgQ3QgPSBTZXRTYXQoQ3MsIFNhdChDYikpCi0gICAgICAgICAg
ICAwLjggPiAwLjIKLSAgICAgICAgICAgICAgICBDbWlkID0gKCgoMC40IC0gMC4yKSAqIDAuNikg
LyAoMC44IC0gMC4yKSkgPSAoMC4yICogMC42KSAvIDAuNiA9IDAuMgotICAgICAgICAgICAgICAg
IENtYXggPSAwLjYKLSAgICAgICAgICAgIENtaW4gPSAwCi0gICAgICAgICAgICByZXR1cm4gKDAs
IDAuMiwgMC42KQotCi0gICAgICAgIENyID0gU2V0THVtKEN0LCBMdW0oQ2IpKQotICAgICAgICAg
ICAgZCA9IDAuNTk4IC0gKDAuMyAqIDAuMCArIDAuNTkgKiAwLjIgKyAwLjExICogMC42KSA9IDAu
MTE4ICsgMC4wNjYgPSAwLjE4NAotICAgICAgICAgICAgZCA9IDAuNTk4IC0gKDAuMTE4ICsgMC4w
NjYpID0gMC41OTggLSAwLjE4NAotICAgICAgICAgICAgZCA9IDAuNDE0Ci0gICAgICAgICAgICBD
cmVkID0gMC4wICsgMC40MTQgPSAwLjQxNAotICAgICAgICAgICAgR3JlZW4gPSAwLjIgKyAwLjQx
NCA9IDAuNjE0Ci0gICAgICAgICAgICBDYmx1ZSA9IDAuNiArIDAuNDE0ID0gMS4wMTQKLSAgICAg
ICAgICAgIHJldHVybiBDbGlwQ29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLQotICAgICAgICBD
bGlwQ29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLSAgICAgICAgICAgIGwgPSAwLjMgKiAwLjQx
NCArIDAuNTkgKiAwLjYxNCArIDAuMTEgKiAxLjEwMTQgPSAwLjEyNDIgKyAwLjM2MjI2ICsgMC4x
MjExNTQgPSAwLjYwNzYxNAotICAgICAgICAgICAgbiA9IG1pbigwLjQxNCwgMC42MTQsIDEuMDE0
KSA9IDAuNDE0Ci0gICAgICAgICAgICB4ID0gbWF4KDAuNDE0LCAwLjYxNCwgMS4wMTQpID0gMS4w
MTQKLSAgICAgICAgICAgIHggPiAxLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gMC42MDc2MTQg
KyAoKCgwLjQxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3
NjE0KSkgPSAKLSAgICAgICAgICAgICAgICAgICAgID0gMC42MDc2MTQgKyAoKC0wLjE5MzYxNCAq
IDAuMzkyMzg2KSAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0IC0gKDAuMDc1OTcxNDIgLyAwLjQwNjM4
NikgPSAwLjYwNzYxNCAtIDAuMTg2OTQzOTkgPSAwLjQyMDY3MDAxCi0gICAgICAgICAgICAgICAg
Q2dyZWVuID0gMC42MDc2MTQgKyAoKCgwLjYxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQp
KSAvICgxLjAxNCAtIDAuNjA3NjE0KSkgPQotICAgICAgICAgICAgICAgICAgICAgICA9IDAuNjA3
NjE0ICsgKCgwLjAwMzM4NiAqIDAuMzkyMzg2KSAvIDAuNDA2Mzg2ID0gMC42MDc2MTQgKyAoMC4w
MDEzMjg2MiAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4wMDMyNjkzNSA9IDAuNjEwODgzMzUK
LSAgICAgICAgICAgICAgICBDYmx1ZSA9IDAuNjA3NjE0ICsgKCgoMS4wMTQgLSAwLjYwNzYxNCkg
KiAoMSAtIDAuNjA3NjE0KSkgLyAoMS4wMTQgLSAwLjYwNzYxNCkgPQotICAgICAgICAgICAgICAg
ICAgICAgID0gMC42MDc2MTQgKyAoKDAuNDA2Mzg2ICogMC4zOTIzODYpIC8gMC40MDYzODYpID0g
MC42MDc2MTQgKyAoMC4xNTk0NjAxOCAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4zOTIzODYw
MSA9IDEuMAotICAgICAgICAgICAgcmV0dXJuICgwLjQyLCAwLjYxLCAxLjApCi0KLSAgICBUaGlz
IHZhbHVlIGlzIGVxdWl2YWxlbnQgdG8gKDEwOCwgMTU3LCAyNTUpLCB3aGljaCBpcyB0aGUgZXhw
ZWN0ZWQgY29sb3IuCi0gICAgVGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90aGVyIHBv
cnRzIG1pZ2h0IGV4cGVyaWVuY2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBp
ZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48L2Rpdj4K
LSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxwaGEtYWxw
aGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLWx1
bWlub3NpdHktZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1pbm9zaXR5LWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkwOWFhYzMuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFy
YWJsZS1ibGVuZC1tb2RlLWx1bWlub3NpdHktZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDM2ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+
Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9w
IHdpdGggdGhlIGNvbG9yIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c3R5bGUgdHlwZT0idGV4
dC9jc3MiPgotICAgICAgICAvKiBUaGVyZSBhcmUgZXhhY3RseSB0aGUgY29sb3IgdmFsdWVzIHdl
IGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xpZ2h0bHkgZGlmZmVyZW50Ci0gICAg
ICAgICAgIGNvbG9yIHJlc3VsdC4gKi8KLSAgICAgICAgI3NvbGlkLXNvbGlkIHsKLSAgICAgICAg
ICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5OCwgMzMsIDApOwotICAgICAgICAgICAgd2lkdGg6
IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAj
YWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4NCwgMTcy
LCAxODQpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogcmdiKDIwMywgMTAxLCA0OSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAw
cHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICB9Ci0gICAgICAgICNhbHBo
YS1hbHBoYSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjEzLCAxODIsIDE3
NSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9
InNvbGlkLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1zb2xpZCI+PC9kaXY+Ci0g
ICAgPGRpdiBpZD0ic29saWQtYWxwaGEiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLWFscGhh
Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1p
bm9zaXR5Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtbHVtaW5vc2l0eS5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA1ZTk3YzAwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1p
bm9zaXR5Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMjggKzAsMCBAQAotPCFET0NUWVBFIEhU
TUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCB0aGF0IGJsZW5k
cyB0aGUgc291cmNlIGFuZCB0aGUgYmFja2Ryb3Agd2l0aCB0aGUgbHVtaW5vc2l0eSBibGVuZCBt
b2RlLjwvdGl0bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAg
ICAgICAgI3NvbGlkLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5
MCUsIDUwJSwgMzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhl
aWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGx1bWlub3NpdHkgc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4xIDAuMiAwLjQgMS4wKTsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEt
c29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwgMzAl
LCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbHVtaW5vc2l0eSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjIgMC40IDAuOCAxLjApOwotICAgICAgICB9Ci0gICAgICAgICNzb2xpZC1hbHBoYSB7
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoOTAlLCA1MCUsIDMwJSk7Ci0gICAg
ICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9t
aXgtY29sb3IuZnMnKSBsdW1pbm9zaXR5IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQg
MC44IDAuNSk7Ci0gICAgICAgIH0KLSAgICAgICAgI2FscGhhLWFscGhhIHsKLSAgICAgICAgICAg
IGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTAlLCA1MCUsIDMwJSwgMC41KTsKLSAgICAgICAgICAg
IHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xv
ci5mcycpIGx1bWlub3NpdHkgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41
KTsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBU
aGUgZm9sbG93aW5nIHByb29mIGFwcGxpZXMgdG8gdGhlIGZpcnN0IGNhc2UgKCNzb2xpZC1zb2xp
ZCkgd2hlcmUgYm90aCB0aGUgYmFja2Ryb3AgYW5kIHRoZQotICAgIHNvdXJjZSBhcmUgc29saWQu
Ci0KLSAgICBJbiB0aGlzIHRlc3QgdGhlIGZvbGxvd2luZyBjb21iaW5hdGlvbnMgYXJlIGFsc28g
dGVzdGVkOgotICAgICAgICBCYWNrZHJvcCB3aXRoIDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc29s
aWQgc291cmNlCi0gICAgICAgIFNvbGlkIGJhY2tkcm9wIGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0
aCAwLjUgYWxwaGEKLSAgICAgICAgQmFja2Ryb3Agd2l0aCAwLjUgYmxlbmRlZCB3aXRoIHNvdXJj
ZSB3aXRoIDAuNSBhbHBoYQotICAgIFRoZSB1bmRlcmxheWluZyBwcm9vZiBvZiB0aGUgYWJvdmUg
bWVudGlvbmVkIGNhc2VzIGlzIHRoZSBzYW1lOiB0aGUgY29sb3JzIGFyZSBwcmVtdWx0aXBsaWVk
Ci0gICAgYW5kIHRoZW4gYmxlbmRlZCB0b2dldGhlci4KLQotICAgIFRoZSBmaW5hbCBjb2xvciBv
ZiAjc29saWQtc29saWQgZGVwZW5kcyBvbiB0aGUgImx1bWlub3NpdHkiIGJsZW5kIG1vZGUsIHdo
aWNoIGlzIGEgbm9uLXNlcGFyYWJsZQotICAgIGJsZW5kIG1vZGUuIFRoaXMgbWVhbnMgdGhhdCBj
b2xvcnMgYXJlIGJsZW5kZWQgdG9nZXRoZXIgYXMgYSB3aG9sZSwgbm90IGNvbXBvbmVudCBieSBj
b21wb25lbnQuCi0KLSAgICBUaGUgZm9ybXVsYSBmb3IgdGhpcyBibGVuZCBtb2RlIGlzOgotICAg
ICAgICBDciA9IEIoQ2IsIENzKSA9IFNldEx1bShDYiwgTHVtKENzKSkKLQotICAgIFdpdGg6Ci0g
ICAgICAgIENyOiB0aGUgcmVzdWx0aW5nIGNvbG9yCi0gICAgICAgIENiOiB0aGUgYmFja2Ryb3Ag
Y29sb3IsIHdoaWNoIGlzICNzb2xpZC1zb2xpZCAoIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9y
IikKLSAgICAgICAgQ3M6IHRoZSBzb3VyY2UgY29sb3IsIHdoaWNoIGlzIG1peF9jb2xvcgotICAg
ICAgICBMdW0oQ3MpOiB0aGUgbHVtaW5vc2l0eSBvZiBDcy4gTHVtaW5vc2l0eSBmb3IgY29sb3Ig
QyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBieQotICAgICAgICAgICBMdW0oQyk6IDAuMyAqIENyZWQg
KyAwLjU5ICogQ2dyZWVuICsgMC4xMSAqIENibHVlCi0gICAgICAgIFNldEx1bShDYiwgTHVtKENz
KSk6IHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdGhlIGx1bWlub3NpdHkuCi0KLSAgICBUaGUgZnVu
Y3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5IGwgb24gdGhlIGNvbG9yIEMgaXMgZ2VuZXJh
bGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgU2V0THVtKEMsIGwpCi0gICAgICAgICAgICBkID0g
bCAtIEx1bShDKQotICAgICAgICAgICAgQ3JlZCA9IENyZWQgKyBkCi0gICAgICAgICAgICBDZ3Jl
ZW4gPSBDZ3JlZW4gKyBkCi0gICAgICAgICAgICBDYmx1ZSA9IENibHVlICsgZAotICAgICAgICAg
ICAgcmV0dXJuIENsaXBDb2xvcihDKQotCi0gICAgQXQgdGhpcyBwb2ludCB0aGUgY29sb3IgQyBo
YXMgdG8gYmUgY2xpcHBlZCBiZXR3ZWVuIFswLi4xXSAgYnkgdGhlIENsaXBDb2xvciBmdW5jdGlv
biwgd2hpY2ggaXMKLSAgICBnZW5lcmFsbHkgZGVmaW5lZCBieToKLQotICAgICAgICBDbGlwQ29s
b3IoQykKLSAgICAgICAgICAgIGwgPSBMdW0oQykKLSAgICAgICAgICAgIG4gPSBtaW4oQ3JlZCwg
Q2dyZWVuLCBDYmx1ZSkKLSAgICAgICAgICAgIHggPSBtYXgoQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkK
LSAgICAgICAgICAgIGlmIG4gPCAwLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gbCArICgoKENy
ZWQgLSBsKSAqIGwpIC8gKGwgLSBuKSkKLSAgICAgICAgICAgICAgICBDZ3JlZW4gPSBsICsgKCgo
Q2dyZWVuIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2JsdWUgPSBsICsg
KCgoQ2JsdWUgLSBsKSAqIGwpIC8gKGwgLSBuKSkKLSAgICAgICAgICAgIGlmIHggPiAxLjAKLSAg
ICAgICAgICAgICAgICBDcmVkID0gbCArICgoKENyZWQgLSBsKSAqICgxIC0gbCkpIC8gKHggLSBs
KSkKLSAgICAgICAgICAgICAgICBDZ3JlZW4gPSBsICsgKCgoQ2dyZWVuIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICAgICAgQ2JsdWUgPSBsICsgKCgoQ2JsdWUgLSBsKSAq
ICgxIC0gbCkpIC8gKHggLSBsKSkKLSAgICAgICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlz
IHRlc3QgY2FzZToKLSAgICAgICAgTHVtKENiKSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAw
LjExICogMC4zCi0gICAgICAgIEx1bShDYikgPSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAg
ICBMdW0oQ2IpID0gMC41OTgKLQotICAgICAgICBMdW0oQ3MpID0gMC4zICogMC4xICsgMC41OSAq
IDAuMiArIDAuMTEgKiAwLjQKLSAgICAgICAgTHVtKENzKSA9IDAuMDMgKyAwLjExOCArIDAuMDQ0
Ci0gICAgICAgIEx1bShDcykgPSAwLjE5MgotCi0gICBDciA9IFNldEx1bShDYiwgMC4xOTIpCi0g
ICAgICAgIGQgPSAwLjE5MiAtIDAuNTk4Ci0gICAgICAgIGQgPSAwLjQwNgotICAgICAgICBDcmVk
ID0gMC45IC0gMC40MDYgPSAwLjQ5NAotICAgICAgICBDZ3JlZW4gPSAwLjUgLSAwLjQwNiA9IDAu
MDk0Ci0gICAgICAgIENibHVlID0gMC4zIC0gMC40MDYgPSAtMC4xMDYKLSAgICAgICAgcmV0dXJu
IENsaXBDb2xvcigwLjQ5NCwgMC4wOTQsIC0wLjEwNikKLQotICAgIENsaXBDb2xvcigwLjQ5NCwg
MC4wOTQsIC0wLjEwNikKLSAgICAgICAgbCA9IDAuNDk0ICogMC4zICsgMC4wOTQgKiAwLjU5IC0g
MC4xMDYgKiAwLjExID0gMC4xNDgyICsgMC4wNTU0NiAtIDAuMDExNjYgPSAwLjE5MgotICAgICAg
ICBuID0gbWluKDAuNDk0LCAwLjA5NCwgLTAuMTA2KSA9IC0wLjEwNgotICAgICAgICB4ID0gbWF4
KDAuNDk0LCAwLjA5NCwgLTAuMTA2KSA9IDAuNDk0Ci0gICAgICAgIG4gPCAwLjAKLSAgICAgICAg
ICAgIENyZWQgPSAwLjE5MiArICgoKDAuNDk0IC0gMC4xOTIpICogMC4xOTIpIC8gKDAuMTkyICsg
MC4xMDYpKSA9Ci0gICAgICAgICAgICAgICAgID0gMC4xOTIgKyAoMC4zMDIgKiAwLjE5MikgLyAw
LjI5OCA9IDAuMTkyICsgKDAuMDU3OTg0IC8gMC4yOTgpID0gMC4xOTIgKyAwLjE5NDU3NzE4ID0g
MC4zODY1NzcxOAotICAgICAgICAgICAgQ2dyZWVuID0gMC4xOTIgKyAoKCgwLjA5NCAtIDAuMTky
KSAqIDAuMTkyKSAvICgwLjE5MiArIDAuMTA2KSkgPQotICAgICAgICAgICAgICAgICAgID0gMC4x
OTIgKyAoLTAuMDk4ICogMC4xOTIpIC8gMC4yOTggPSAwLjE5MiAtICgwLjAxODgxNiAvIDAuMjk4
KSA9IDAuMTkyIC0gMC4wNjMxNDA5NCA9IDAuMTI4ODU5MDYKLSAgICAgICAgICAgIENibHVlID0g
MC4xOTIgKyAoKCgtMC4xMDYgLSAwLjE5MikgKiAwLjE5MikgLyAoMC4xOTIgKyAwLjEwNikpID0K
LSAgICAgICAgICAgICAgICAgID0gMC4xOTIgKyAoLTAuMjk4ICogMC4xOTIpIC8gMC4yOTggPSAw
LjE5MiAtIDAuMTkyID0gMC4wCi0gICAgICAgIHJldHVybiAoMC4zODY1NzcxOCwgMC4xMjg4NTkw
NiwgMC4wMCkKLQotICAgIFRoaXMgdmFsdWUgaXMgZXF1aXZhbGVudCB0byAoOTgsIDMzLCAwKSwg
d2hpY2ggaXMgdGhlIGV4cGVjdGVkIGNvbG9yLgotICAgIFRoaXMgaXMgdGhlIGV4YWN0IGNvbG9y
IHZhbHVlLCBvdGhlciBwb3J0cyBtaWdodCBleHBlcmllbmNlIHNsaWdodCBkaWZmZXJlbmNlcy4K
LS0tPgotICAgIDxkaXYgaWQ9InNvbGlkLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBo
YS1zb2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0ic29saWQtYWxwaGEiPjwvZGl2PgotICAgIDxk
aXYgaWQ9ImFscGhhLWFscGhhIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFi
bGUtYmxlbmQtbW9kZS1zYXR1cmF0aW9uLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtc2F0
dXJhdGlvbi1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMWQ0
OWM4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1zYXR1cmF0aW9uLWV4cGVjdGVkLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxh
bmc9ImVuIj4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgYmxlbmRzIHRoZSBzb3VyY2Ug
YW5kIHRoZSBiYWNrZHJvcCB3aXRoIHRoZSBzYXR1cmF0aW9uIGJsZW5kIG1vZGUuPC90aXRsZT4K
LSAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAvKiBUaGVzZSBhcmUgZXhhY3Rs
eSB0aGUgY29sb3IgdmFsdWVzIHdlIGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xp
Z2h0IGRpZmZlcmVudAotICAgICAgICAgICBjb2xvciByZXN1bHQuICovCi0gICAgICAgICNzb2xp
ZC1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTkxLCAxNDEsIDEx
NSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiByZ2IoMTk4LCAxODUsIDE5OCk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICB9Ci0gICAgICAgICNzb2xpZC1h
bHBoYSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjMwLCAxMjgsIDc2KTsK
LSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0g
ICAgICAgIH0KLSAgICAgICAgI2FscGhhLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigyMjAsIDE4OSwgMTgyKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFk
PgotPGJvZHk+Ci0gICAgPGRpdiBpZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9
ImFscGhhLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0g
ICAgPGRpdiBpZD0iYWxwaGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNl
cGFyYWJsZS1ibGVuZC1tb2RlLXNhdHVyYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1zYXR1cmF0
aW9uLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFjMzI4YmIuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNl
cGFyYWJsZS1ibGVuZC1tb2RlLXNhdHVyYXRpb24uaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEz
NyArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9ImVuIj4KLTxoZWFkPgotICAg
IDx0aXRsZT5UZXN0IHRoYXQgYmxlbmRzIHRoZSBzb3VyY2UgYW5kIHRoZSBiYWNrZHJvcCB3aXRo
IHRoZSBzYXR1cmF0aW9uIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5
bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6
IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykg
c2F0dXJhdGlvbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjEgMC4yIDAuNCAxLjApOwotICAg
ICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2JhKDkwJSwgNTAlLCAzMCUsIDAuNSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBzYXR1cmF0
aW9uIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDEuMCk7Ci0gICAgICAgIH0K
LSAgICAgICAgI3NvbGlkLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJn
Yig5MCUsIDUwJSwgMzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAg
IGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIHNhdHVyYXRpb24gc291cmNlLWF0
b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41KTsKLSAgICAgICAgfQotICAgICAgICAjYWxw
aGEtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwg
MzAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0
OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgc2F0dXJhdGlvbiBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjIgMC40IDAuOCAwLjUpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVh
ZD4KLTxib2R5PgotPCEtLQotICAgIFRoZSBmb2xsb3dpbmcgcHJvb2YgYXBwbGllcyB0byB0aGUg
Zmlyc3QgY2FzZSAoI3NvbGlkLXNvbGlkKSB3aGVyZSBib3RoIHRoZSBiYWNrZHJvcCBhbmQgdGhl
Ci0gICAgc291cmNlIGFyZSBzb2xpZC4KLQotICAgIEluIHRoaXMgdGVzdCB0aGUgZm9sbG93aW5n
IGNvbWJpbmF0aW9ucyBhcmUgYWxzbyB0ZXN0ZWQ6Ci0gICAgICAgIEJhY2tkcm9wIHdpdGggMC41
IGFscGhhIGJsZW5kZWQgd2l0aCBzb2xpZCBzb3VyY2UKLSAgICAgICAgU29saWQgYmFja2Ryb3Ag
YmxlbmRlZCB3aXRoIHNvdXJjZSB3aXRoIDAuNSBhbHBoYQotICAgICAgICBCYWNrZHJvcCB3aXRo
IDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc291cmNlIHdpdGggMC41IGFscGhhCi0gICAgVGhlIHVu
ZGVybHlpbmcgcHJvb2Ygb2YgdGhlIGFib3ZlIG1lbnRpb25lZCBjYXNlcyBpcyB0aGUgc2FtZTog
dGhlIGNvbG9ycyBhcmUgcHJlbXVsdGlwbGllZAotICAgIGFuZCB0aGVuIGJsZW5kZWQgdG9nZXRo
ZXIuCi0KLSAgICBUaGUgZmluYWwgY29sb3Igb2YgI3NvbGlkLXNvbGlkIGRlcGVuZHMgb24gdGhl
ICJzYXR1cmF0aW9uIiBibGVuZCBtb2RlLCB3aGljaCBpcyBhIG5vbi1zZXBhcmFibGUKLSAgICBi
bGVuZCBtb2RlLiBUaGlzIG1lYW5zIHRoYXQgY29sb3JzIGFyZSBibGVuZGVkIHRvZ2V0aGVyIGFz
IGEgd2hvbGUsIG5vdCBjb21wb25lbnQgYnkgY29tcG9uZW50LgotCi0gICAgVGhlIGZvcm11bGEg
Zm9yIHRoaXMgYmxlbmQgbW9kZSBpczoKLSAgICAgICAgQ3IgPSBCKENiLCBDcykgPSBTZXRMdW0o
U2V0U2F0KENiLCBTYXQoQ3MpKSwgTHVtKENiKSkKLQotICAgIFdpdGg6Ci0gICAgICAgIENyOiB0
aGUgcmVzdWx0aW5nIGNvbG9yCi0gICAgICAgIENiOiB0aGUgYmFja2Ryb3AgY29sb3IsIHdoaWNo
IGlzICNzb2xpZC1zb2xpZCAoIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9yIikKLSAgICAgICAg
Q3M6IHRoZSBzb3VyY2UgY29sb3IsIHdoaWNoIGlzIG1peF9jb2xvcgotICAgICAgICBTYXQoQ2Ip
OiB0aGUgc2F0dXJhdGlvbiBvZiBDYi4gU2F0dXJhdGlvbiBmb3IgY29sb3IgQyBpcyBnZW5lcmFs
bHkgZGVmaW5lZCBieQotICAgICAgICAgICBTYXQoQyk6IG1heChDcmVkLCBDZ3JlZW4sIENibHVl
KSAtIG1pbihDcmVkLCBDZ3JlZW4sIENibHVlKQotICAgICAgICBMdW0oQ3MpOiB0aGUgbHVtaW5v
c2l0eSBvZiBDcy4gTHVtaW5vc2l0eSBmb3IgY29sb3IgQyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBi
eQotICAgICAgICAgICBMdW0oQyk6IDAuMyAqIENyZWQgKyAwLjU5ICogQ2dyZWVuICsgMC4xMSAq
IENibHVlCi0gICAgICAgIFNldFNhdChDYiwgU2F0KENzKSk6IHRoZSBmdW5jdGlvbiB0aGF0IHNl
dHMgdGhlIHNhdHVyYXRpb24KLSAgICAgICAgU2V0THVtKFNldFNhdChDYiwgU2F0KENzKSksIEx1
bShDYikpOiB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhl
IGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdl
bmVyYWxseSBkZWZpbmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAg
ZCA9IGwgLSBMdW0oQykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAg
Q2dyZWVuID0gQ2dyZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAg
ICAgICAgIHJldHVybiBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9y
IEMgaGFzIHRvIGJlIGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVu
Y3Rpb24sIHdoaWNoIGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xp
cENvbG9yKEMpCi0gICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENy
ZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2Js
dWUpCi0gICAgICAgICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAo
KChDcmVkIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCAr
ICgoKENncmVlbiAtIGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0g
bCArICgoKENibHVlIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4w
Ci0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4
IC0gbCkpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEg
LSBsKSkgLyAoeCAtIGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0g
bCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgVGhl
IGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgc2F0dXJhdGlvbiBzIG9uIHRoZSBjb2xvciBDIGlzIGdl
bmVyYWxseSBkZWZpbmVkIGJ5OgotCi0gICAgICAgIFNldFNhdChDLCBzKQotICAgICAgICAgICAg
aWYoQ21heCA+IENtaW4pCi0gICAgICAgICAgICAgICAgQ21pZCA9ICgoKENtaWQgLSBDbWluKSAq
IHMpIC8gKENtYXggLSBDbWluKSkKLSAgICAgICAgICAgICAgICBDbWF4ID0gcwotICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgICAgIENtaWQgPSBDbWF4ID0gMAotICAgICAgICAgICAgQ21p
biA9IDAKLSAgICAgICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlzIHRlc3QgY2FzZToKLSAg
ICAgICAgTHVtKENiKSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAwLjExICogMC4zCi0gICAg
ICAgIEx1bShDYikgPSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAgICBMdW0oQ2IpID0gMC41
OTgKLQotICAgICAgICBTYXQoQ3MpID0gbWF4KDAuMSwgMC4yLCAwLjQpIC0gbWluKDAuMSwgMC4y
LCAwLjQpCi0gICAgICAgIFNhdChDcykgPSAwLjQgLSAwLjEKLSAgICAgICAgU2F0KENzKSA9IDAu
MwotCi0gICAgICAgIEZvciB0aGUgc2FrZSBvZiBicmV2aXR5IHRoZSByZXN1bHQgb2YgdGhpcyBj
b21wdXRhdGlvbiBpcyBjYWxsZWQgQ3QKLSAgICAgICAgQ3QgPSBTZXRTYXQoQ2IsIFNhdChDcykp
Ci0gICAgICAgICAgICAwLjkgPiAwLjMKLSAgICAgICAgICAgICAgICBDbWlkID0gKCgoMC41IC0g
MC4zKSAqIDAuMykgLyAoMC45IC0gMC4zKSA9IDAuMiAqIDAuMyAvIDAuNiA9IDAuMDYgLyAwLjYg
PSAwLjEwCi0gICAgICAgICAgICAgICAgQ21heCA9IDAuMwotICAgICAgICAgICAgQ21pbiA9IDAK
LSAgICAgICAgICAgIHJldHVybiAoMC4zLCAwLjEwLCAwLjApCi0KLSAgICBDciA9IFNldEx1bShD
dCwgMC41OTgpCi0gICAgICAgIGQgPSAwLjU5OCAtICgwLjMgKiAwLjMgKyAwLjU5ICogMC4xMCAr
IDAuMTEgKiAwLjApID0gMC41OTggLSAoMC4wOSArIDAuMDU5KSA9IDAuNTk4IC0gMC4xNDkKLSAg
ICAgICAgZCA9IDAuNDQ5Ci0gICAgICAgIENyZWQgPSAwLjMgKyAwLjQ0OSA9IDAuNzQ5Ci0gICAg
ICAgIENncmVlbiA9IDAuMTAgKyAwLjQ0OSA9IDAuNTQ5Ci0gICAgICAgIENibHVlID0gMC4wICsg
MC40NDkgPSAwLjQ0OQotICAgICAgICByZXR1cm4gKDAuNzQ5LCAwLjU0OSwgMC40NDkpCi0KLSAg
ICBUaGlzIHZhbHVlIGlzIGVxdWl2YWxlbnQgdG8gKDE5MSwgMTQwLCAxMTUpLCB3aGljaCBpcyB0
aGUgZXhwZWN0ZWQgY29sb3IuCi0gICAgVGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90
aGVyIHBvcnRzIG1pZ2h0IGV4cGVyaWVuY2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAg
PGRpdiBpZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48
L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxw
aGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1dGVkLXN0
eWxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDUwZGEwYTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1dGVkLXN0eWxlLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDUwOCArMCwwIEBACi1UZXN0cyB0aGUgY29t
cHV0ZWQgc3R5bGUgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRl
ciBwcm9wZXJ0eS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotQ3VzdG9tIHdp
dGggdmVydGV4IHNoYWRlciA6IGN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMSAxKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFk
ZXIpIG5vbmUsIDEgMSknCi0KLUN1c3RvbSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxl
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3Rv
X18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmls
dGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJS
dWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggYm90aCBzaGFkZXJzIDogY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hh
ZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicK
LVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUg
aXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFz
ZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZp
bHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90
b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdD
U1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIG5vcm1hbCA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwpKQotUEFTUyByZW1vdmVCYXNl
VVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwg
MSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxp
c3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3Ip
IGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwg
MSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIG11bHRpcGx5
IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5KSkKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IHNv
dXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NT
U1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlz
ICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
Y29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVs
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmls
dGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNz
c1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkg
c291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5k
IG1vZGUgc2NyZWVuIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNjcmVl
bikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
Y3JlZW4gc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
Y3JlZW4gc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGJsZW5kIG1vZGUgb3ZlcmxheSA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBvdmVybGF5KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIG92ZXJsYXkgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBvdmVybGF5IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1
bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRhcmtlbiA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBkYXJrZW4pKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgZGFya2VuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgZGFya2VuIHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGgg
bWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGxpZ2h0ZW4gOiBjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5
bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBsaWdodGVuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBt
aXgodXJsKGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbiBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBjb2xvci1kb2RnZSA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1kb2RnZSkpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1kb2RnZSBzb3Vy
Y2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAn
Q1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNv
bnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUu
bGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NU
ZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvbG9yLWRvZGdl
IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVu
ZCBtb2RlIGNvbG9yLWJ1cm4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
Y29sb3ItYnVybikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBjb2xvci1idXJuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1
Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY29sb3ItYnVybiBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRo
IG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBoYXJkLWxpZ2h0IDogY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIGhhcmQtbGlnaHQpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZp
bHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaGFyZC1saWdodCBzb3VyY2UtYXRvcCksIDEg
MSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGhhcmQtbGlnaHQgc291cmNlLWF0b3Ap
LCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgc29mdC1s
aWdodCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb2Z0LWxpZ2h0KSkK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvZnQt
bGlnaHQgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
b2Z0LWxpZ2h0IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9u
IGFuZCBibGVuZCBtb2RlIGRpZmZlcmVuY2UgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50
LnNoYWRlcikgZGlmZmVyZW5jZSkpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBkaWZmZXJlbmNlIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxp
c3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxl
Lm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00K
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgZGlmZmVyZW5jZSBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBleGNsdXNpb24gOiBjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZXhjbHVzaW9uKSkKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGV4Y2x1c2lvbiBzb3VyY2UtYXRv
cCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGV4Y2x1c2lvbiBzb3VyY2Ut
YXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBo
dWUgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaHVlKSkKLVBBU1MgcmVt
b3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSBzb3VyY2UtYXRv
cCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSBzb3VyY2UtYXRvcCks
IDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBzYXR1cmF0
aW9uIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNhdHVyYXRpb24pKQot
UEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2F0dXJh
dGlvbiBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNh
dHVyYXRpb24gc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24g
YW5kIGJsZW5kIG1vZGUgY29sb3IgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRl
cikgY29sb3IpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgY29sb3Igc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hh
ZGVyKSBjb2xvciBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlv
biBhbmQgYmxlbmQgbW9kZSBsdW1pbm9zaXR5IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIGx1bWlub3NpdHkpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbHVtaW5vc2l0eSBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVM
aXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVs
ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9N
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIGx1bWlub3NpdHkgc291cmNlLWF0b3ApLCAxIDEpJwotCi1D
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgY2xlYXIg
OiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY2xlYXIpKQotUEFTUyByZW1v
dmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGNsZWFyKSwg
MSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxp
c3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3Ip
IGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGNsZWFyKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGNv
cHkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29weSkpCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgY29weSks
IDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBjb3B5KSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNv
dXJjZS1vdmVyIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1v
dmVyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG5vcm1hbCBzb3VyY2Utb3ZlciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG5vcm1hbCBzb3VyY2Utb3ZlciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBh
bmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1vdmVyIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLW92ZXIpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGRlc3RpbmF0aW9u
LW92ZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4
dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgZGVzdGlu
YXRpb24tb3ZlciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSBzb3VyY2UtaW4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50
LnNoYWRlcikgc291cmNlLWluKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtaW4pLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNlLWluKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4
IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGRlc3RpbmF0aW9uLWluIDogY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWluKSkKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBkZXN0
aW5hdGlvbi1pbiksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBp
cyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
LmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1
bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5j
c3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBk
ZXN0aW5hdGlvbi1pbiksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxw
aGEgY29tcG9zaXRpbmcgbW9kZSBzb3VyY2Utb3V0IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIHNvdXJjZS1vdXQpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxl
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1vdXQpLCAxIDEpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNlLW91dCksIDEgMSknCi0KLUN1c3RvbSB3
aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1v
dXQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tb3V0
KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5v
cm1hbCBkZXN0aW5hdGlvbi1vdXQpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBub3JtYWwgZGVzdGluYXRpb24tb3V0KSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNvdXJjZS1hdG9wIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1hdG9wKSkKLVBBU1MgcmVtb3ZlQmFzZVVS
TChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEg
MSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEg
MSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9k
ZSBkZXN0aW5hdGlvbi1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IGRlc3RpbmF0aW9uLWF0b3ApKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgbm9ybWFsIGRlc3RpbmF0aW9uLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgZGVzdGluYXRpb24tYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSB4b3IgOiBj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgeG9yKSkKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCB4b3IpLCAxIDEpJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3Rv
dHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NT
U1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgeG9yKSwgMSAxKScKLQotQ3VzdG9t
IHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0LCBhbHBoYSBjb21wb3NpdGlu
ZyBtb2RlIHNlY29uZCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0
aXBseSBjbGVhcikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBtdWx0aXBseSBjbGVhciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIG11bHRpcGx5IGNsZWFyKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFu
ZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGZpcnN0LCBibGVuZCBtb2RlIHNlY29uZCA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVh
ciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSwg
MSAxKScKLQotQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciBhbmQgbWl4IGZ1bmN0aW9uIDogY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKQotUEFTUyBy
ZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVy
JykpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBub3JtYWwgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRo
IG1peCBmdW5jdGlvbiBhbmQgbWVzaCBzaXplIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpKSwgMTApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBub3JtYWwgc291cmNlLWF0b3ApLCAxMCAxMCknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEwIDEwKScKLQotQ3VzdG9tIHdpdGgg
bWVzaCBzaXplIDogY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApCi1QQVNTIHJlbW92ZUJh
c2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMg
J2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMTAgMTApJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRl
cikgbm9uZSwgMTAgMTApJwotCi1DdXN0b20gd2l0aCBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmls
dGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIDIwKScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIDogY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSwgMTApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9u
ZSwgMTAgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMTAgMTApJwotCi1DdXN0b20gd2l0
aCBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAg
MjApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKScKLQotQ3VzdG9tIHdpdGggZGV0
YWNoZWQgbWVzaCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRhY2hlZCkK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSBkZXRh
Y2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSBkZXRhY2hlZCknCi0KLUN1c3Rv
bSB3aXRoIGRldGFjaGVkIGFuZCBtZXNoIHNpemUgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUu
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIDIwIGRldGFjaGVkKScKLQotQ3VzdG9tIHdpdGggZGVmYXVsdCBmaWx0ZXItYm94IDog
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmls
dGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCAxIDEpJwotCi1DdXN0b20gd2l0aCBpbnRlZ2VyIHBhcmFtZXRlcnMgOiBjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNykK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEg
MSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEgMSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi0KLUN1c3RvbSB3
aXRoIGZsb2F0IHBhcmFtZXRlcnMgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
cDEgMS4xLCBwMiAyLjIgMy4zLCBwMyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KQot
UEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSAx
LjEsIHAyIDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4yIDYuMyA3LjQpJwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlw
ZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1Zh
bHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1
YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NV
U1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQu
MSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCknCi0KLUN1c3RvbSB3aXRoIHRyYW5zZm9ybSB0cmFu
c2xhdGUgcGFyYW1ldGVyIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIHRy
YW5zbGF0ZSgxMHB4LCAxMHB4KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDEsIDAsIDAsIDEsIDEwLCAxMCkpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVy
bChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIG1hdHJpeCgxLCAwLCAwLCAxLCAxMCwgMTApKScK
LQotQ3VzdG9tIHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtIHBhcmFtZXRlcnMgOiBjdXN0b20obm9u
ZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgdHJhbnNsYXRlKDEwcHgsIDEwcHgpLCBwMiBzY2Fs
ZSgyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEg
MSwgcDEgbWF0cml4KDEsIDAsIDAsIDEsIDEwLCAxMCksIHAyIG1hdHJpeCgyLCAwLCAwLCAyLCAw
LCAwKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDEsIDAsIDAs
IDEsIDEwLCAxMCksIHAyIG1hdHJpeCgyLCAwLCAwLCAyLCAwLCAwKSknCi0KLUN1c3RvbSB3aXRo
IG11bHRpcGxlIHRyYW5zZm9ybXMgc2luZ2xlIHBhcmFtZXRlciA6IGN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBweCkgc2NhbGUoMikpCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIG1hdHJp
eCgyLCAwLCAwLCAyLCAxMCwgMTApKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3Rv
X18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmls
dGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJS
dWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBw
MSBtYXRyaXgoMiwgMCwgMCwgMiwgMTAsIDEwKSknCi0KLUN1c3RvbSB3aXRoIHBlcmNlbnQgdHJh
bnNmb3JtIHBhcmFtZXRlciA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0
cmFuc2xhdGUoNTAlLCA1MCUpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMjUwLCAzMDApKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMjUwLCAzMDAp
KScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyA6IGN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAzIDQg
NSwgcDQgNCA1IDYgNykKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQg
NSA2IDcpJwotCi1NdWx0aXBsZSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGdyYXlzY2FsZSgpIGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpCi1QQVNTIHJlbW92ZUJhc2VV
UkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2dy
YXlzY2FsZSgxKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSBzZXBpYSgx
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMwot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9HUkFZU0NBTEUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdn
cmF5c2NhbGUoMSknCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3Nz
VGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9T
RVBJQQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ3NlcGlhKDEpJwot
Ci1DdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2YgdGhyZWUgdmFsdWVzIDogY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEsIDIsIDMpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLCAyLCAz
KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMSwgMiwgMykpJwot
Ci1DdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2YgdGhyZWUgZmxvYXRpbmcgcG9pbnQgdmFs
dWVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEuNjE4MCwg
LTIuNzE4MiwgMy4xNDE1KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMS42MTgsIC0yLjcxODIsIDMuMTQxNSkpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVy
bChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDEuNjE4LCAtMi43MTgyLCAzLjE0MTUp
KScKLQotQ3VzdG9tIHdpdGggYXJyYXkoKSBtYWRlIHVwIG9mIHNldmVyYWwgZmxvYXRpbmcgcG9p
bnQgYW5kIGludGVnZXIgdmFsdWVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciks
IGExIGFycmF5KDEuNjE4MCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLjYxOCwg
MSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAx
LCBhMSBhcnJheSgxLjYxOCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKScKLQotQ3VzdG9tIHdp
dGggYXJyYXkoKSBtYWRlIHVwIG9mIDI0NyBkaWZmZXJlbnQgZmxvYXRpbmcgcG9pbnQgdmFsdWVz
IDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDYuMDAsIDM4LjU4
LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEs
IDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAy
MS45NCwgNjIuNzAsIDc3Ljk2LCA2Ny4yNywgMi43NSwgMjguMTYsIDguODgsIDExLjYxLCAzNC44
OSwgNDUuNzUsIDU0LjU1LCAzNS4wNCwgNi4xMywgNjkuNjgsIDgxLjIxLCA0OS40NCwgNTQuNzQs
IDI2Ljc0LCA5MS40OSwgNjguMjAsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44Nywg
NzEuNzMsIDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAu
NDgsIDgxLjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4y
NiwgMzQuNjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUs
IDM1LjAyLCAzOS4wMCwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwg
MjcuNzIsIDI4LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5
OC40NSwgODcuNTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMx
LjczLCAyLjkwLCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIs
IDUzLjk2LCAzNS4wNiwgNjcuNTAsIDc2LjYyLCAzNS4wMiwgMS42MiwgMTMuMDUsIDMzLjU5LCAy
Ni44OSwgMzYuOTQsIDc0LjEzLCA5NS4wOSwgNTYuODcsIDQ2LjAxLCAxMS45NCwgMTIuOTIsIDQ4
Ljg4LCAxMS4wMywgMjQuODAsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAu
MzUsIDQxLjEwLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUwLCA4OC40MSwgOTAuMzQs
IDk3LjYyLCA1OC43MCwgMjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwg
OTEuMjIsIDc4LjIxLCA2Mi4zMCwgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5
Ny40MiwgOTYuNDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIwLCAyNi42NSwgNzgu
MzksIDk1LjI2LCA2Ni44MCwgMzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3
LCA2MS4wMSwgOTUuNjgsIDguNTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNDAsIDEyLjM1LCA5
OS4zOSwgNS44MCwgNjguMTAsIDczLjg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4w
OCwgNTQuNDUsIDg3LjY0LCAzNi4xNCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQw
LCA1LjkwLCAxNS43MCwgMTAuODgsIDU1LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywg
NjAuMzAsIDQuMzIsIDcuMDUsIDMuMzQsIDkuODcsIDY0LjUxLCA0LjYwLCA1NC4xNiwgNDguODAs
IDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgsIDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5
My43MCwgMjMuNzksIDg5LjU3LCAxNC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5
LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcu
NzUsIDQxLjY1LCA2Mi4zNSwgOTAuNDAsIDQwLjc3LCA1My45MywgODAuMjMsIDg0LjQ5LCAyMC4x
OCwgNDUuMzYsIDI2LjAyLCA5My43MiwgNjUuNTQsIDMyLjg2KSkKLVBBU1MgcmVtb3ZlQmFzZVVS
TChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoNiwgMzguNTgsIDQw
LjE0LCAzNC4wMywgODMuMzMsIDI0LjE4LCA2OC4zNywgMTUuODcsIDU2LjU2LCA3My4yMSwgOTku
MDUsIDI0LjY0LCA2LjM5LCA2OS4zNCwgOTEuMTksIDI3Ljk4LCAzNy41MiwgNjAuNzEsIDIxLjk0
LCA2Mi43LCA3Ny45NiwgNjcuMjcsIDIuNzUsIDI4LjE2LCA4Ljg4LCAxMS42MSwgMzQuODksIDQ1
Ljc1LCA1NC41NSwgMzUuMDQsIDYuMTMsIDY5LjY4LCA4MS4yMSwgNDkuNDQsIDU0Ljc0LCAyNi43
NCwgOTEuNDksIDY4LjIsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44NywgNzEuNzMs
IDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAuNDgsIDgx
LjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4yNiwgMzQu
NjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUsIDM1LjAy
LCAzOSwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwgMjcuNzIsIDI4
LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5OC40NSwgODcu
NTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMxLjczLCAyLjks
IDguMjMsIDkzLjc0LCAzMS4yNiwgODQuNzMsIDYuNDgsIDQxLjk2LCA3NS43MiwgNTMuOTYsIDM1
LjA2LCA2Ny41LCA3Ni42MiwgMzUuMDIsIDEuNjIsIDEzLjA1LCAzMy41OSwgMjYuODksIDM2Ljk0
LCA3NC4xMywgOTUuMDksIDU2Ljg3LCA0Ni4wMSwgMTEuOTQsIDEyLjkyLCA0OC44OCwgMTEuMDMs
IDI0LjgsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAuMzUsIDQxLjEsIDUu
MzEsIDQzLjk2LCA5LjAyLCA5Mi4zMiwgMzQuNSwgODguNDEsIDkwLjM0LCA5Ny42MiwgNTguNywg
MjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwgOTEuMjIsIDc4LjIxLCA2
Mi4zLCA2MC45MywgMzMuMjYsIDE2LjEzLCA5NS42MSwgNzguNjIsIDk3LjQyLCA5Ni40MiwgMzgu
MDQsIDguNDksIDQ1LjQ3LCA2OC43MywgMTguMiwgMjYuNjUsIDc4LjM5LCA5NS4yNiwgNjYuOCwg
MzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3LCA2MS4wMSwgOTUuNjgsIDgu
NTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNCwgMTIuMzUsIDk5LjM5LCA1LjgsIDY4LjEsIDcz
Ljg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4wOCwgNTQuNDUsIDg3LjY0LCAzNi4x
NCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQsIDUuOSwgMTUuNywgMTAuODgsIDU1
LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywgNjAuMywgNC4zMiwgNy4wNSwgMy4zNCwg
OS44NywgNjQuNTEsIDQuNiwgNTQuMTYsIDQ4LjgsIDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgs
IDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5My43LCAyMy43OSwgODkuNTcsIDE0Ljg0LCA3
OS41OCwgNjIuMjksIDU4Ljc2LCAyOS40MywgMTkuMTYsIDQ0LjQ3LCAzOC4zMSwgNDQuNzcsIDQy
LjY2LCA4OC44NSwgNzQuOTYsIDI0LjA3LCAzNy43NSwgNDEuNjUsIDYyLjM1LCA5MC40LCA0MC43
NywgNTMuOTMsIDgwLjIzLCA4NC40OSwgMjAuMTgsIDQ1LjM2LCAyNi4wMiwgOTMuNzIsIDY1LjU0
LCAzMi44NikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDYsIDM4
LjU4LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMu
MjEsIDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcx
LCAyMS45NCwgNjIuNywgNzcuOTYsIDY3LjI3LCAyLjc1LCAyOC4xNiwgOC44OCwgMTEuNjEsIDM0
Ljg5LCA0NS43NSwgNTQuNTUsIDM1LjA0LCA2LjEzLCA2OS42OCwgODEuMjEsIDQ5LjQ0LCA1NC43
NCwgMjYuNzQsIDkxLjQ5LCA2OC4yLCA4NC4wNSwgNjUuODEsIDU3Ljg5LCA3My4yMiwgMTMuODcs
IDcxLjczLCAxOC42MSwgOC41NCwgOS43OSwgMjguMDUsIDE0LjExLCA2OS45MywgNDcuMTksIDEw
LjQ4LCA4MS4zNSwgMzcuMTUsIDE5LjI5LCAxNC45OCwgMzIuNTQsIDk4Ljk2LCA2OS4zNywgOTIu
MjYsIDM0LjY0LCA2Ny40MywgNzEuOTIsIDQ1LjUyLCA5LjIyLCA0MS45NiwgMzEuMjYsIDkyLjY1
LCAzNS4wMiwgMzksIDc2Ljc2LCAyOS4zMywgMjIuOTMsIDgwLjY1LCA3MC43OCwgNDIuOTQsIDI3
LjcyLCAyOC4xOSwgNzUuMTUsIDE4LjE0LCA4OS43MSwgOTUuMzgsIDU0LjUxLCAzNi45MywgOTgu
NDUsIDg3LjU4LCA0NC41MSwgNzEuNzMsIDc1LjcxLCA3MC40MywgNzguNTEsIDgyLjE5LCAzMS43
MywgMi45LCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIsIDUz
Ljk2LCAzNS4wNiwgNjcuNSwgNzYuNjIsIDM1LjAyLCAxLjYyLCAxMy4wNSwgMzMuNTksIDI2Ljg5
LCAzNi45NCwgNzQuMTMsIDk1LjA5LCA1Ni44NywgNDYuMDEsIDExLjk0LCAxMi45MiwgNDguODgs
IDExLjAzLCAyNC44LCA2OC4wNiwgMTkuODMsIDEyLjk4LCA0MS41NiwgNjIuMDMsIDgwLjM1LCA0
MS4xLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUsIDg4LjQxLCA5MC4zNCwgOTcuNjIs
IDU4LjcsIDIzLjYyLCAxMy4wMywgODUuNDEsIDI5LjczLCAzMC4yMSwgNTkuMjUsIDkxLjIyLCA3
OC4yMSwgNjIuMywgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5Ny40MiwgOTYu
NDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIsIDI2LjY1LCA3OC4zOSwgOTUuMjYs
IDY2LjgsIDM0LjQxLCAxMC42OSwgOTQuNDMsIDcxLjY5LCA0LjU4LCAyMy44NywgNjEuMDEsIDk1
LjY4LCA4LjUxLCAxNC45MiwgMTYuMjcsIDMwLjQxLCAxLjQsIDEyLjM1LCA5OS4zOSwgNS44LCA2
OC4xLCA3My44NywgMjguMzYsIDI0Ljk4LCA3Ny41OCwgOC43MywgMzQuMDgsIDU0LjQ1LCA4Ny42
NCwgMzYuMTQsIDc0LjY4LCAzOC4wNCwgNTYuNTQsIDQ2LjQyLCAxMi40LCA1LjksIDE1LjcsIDEw
Ljg4LCA1NS44MiwgODQuNjYsIDc1Ljc0LCA4Ny45MiwgNTkuMDMsIDYwLjMsIDQuMzIsIDcuMDUs
IDMuMzQsIDkuODcsIDY0LjUxLCA0LjYsIDU0LjE2LCA0OC44LCA0Ni45MywgNS44NCwgOTAuMzQs
IDc1LjQ4LCAzMi41OSwgMjkuNjUsIDk0LjU3LCAyOC4yMiwgOTMuNywgMjMuNzksIDg5LjU3LCAx
NC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5LjE2LCA0NC40NywgMzguMzEsIDQ0
Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcuNzUsIDQxLjY1LCA2Mi4zNSwgOTAu
NCwgNDAuNzcsIDUzLjkzLCA4MC4yMywgODQuNDksIDIwLjE4LCA0NS4zNiwgMjYuMDIsIDkzLjcy
LCA2NS41NCwgMzIuODYpKScKLQotQ3VzdG9tIHdpdGggdHdvIGFycmF5KCkgbWFkZSB1cCBvZiB0
aHJlZSBhbmQgc2l4IHZhbHVlcyA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBh
MSBhcnJheSgxLCAyLCAzKSwgYTIgYXJyYXkoMSwgMiwgMywgNCwgNSwgNikpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDEsIDIs
IDMpLCBhMiBhcnJheSgxLCAyLCAzLCA0LCA1LCA2KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEgMSwgYTEgYXJyYXkoMSwgMiwgMyksIGEyIGFycmF5KDEsIDIsIDMsIDQsIDUsIDYpKScK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJv
cGVydHktY29tcHV0ZWQtc3R5bGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA5NWMyNGIwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJv
ZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2Pgot
PHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1
dGVkLXN0eWxlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1w
YXJzaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggM2U0NTQ3NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1leHBlY3RlZC50eHQK
KysrIC9kZXYvbnVsbApAQCAtMSw2ODQgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiB0aGUg
Y3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LgotCi1PbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi1DdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIDog
Y3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSknCi0KLUN1c3RvbSB3aXRoIGZyYWdtZW50IHNo
YWRlciA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikp
JwotCi1DdXN0b20gd2l0aCBib3RoIHNoYWRlcnMgOiBjdXN0b20odXJsKHZlcnRleC5zaGFkZXIp
IHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFk
ZXIpIHVybChmcmFnbWVudC5zaGFkZXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVu
dC5zaGFkZXIpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIDogY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBp
cyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
LmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1
bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5j
c3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBub3JtYWwgOiBjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5v
bmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCkpJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVj
dG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1v
dmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBub3JtYWwpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVu
ZCBtb2RlIG11bHRpcGx5IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11
bHRpcGx5KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG11bHRpcGx5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5KSknCi0K
LUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBzY3JlZW4gOiBjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2NyZWVuKSkKLVBBU1MgY3NzUnVsZS50eXBl
IGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNjcmVlbikpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBzY3JlZW4pKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBi
bGVuZCBtb2RlIG92ZXJsYXkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
b3ZlcmxheSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBvdmVybGF5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG92ZXJsYXkpKScKLQot
Q3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRhcmtlbiA6IGN1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkYXJrZW4pKQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGFya2VuKSknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIGRhcmtlbikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJs
ZW5kIG1vZGUgbGlnaHRlbiA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBs
aWdodGVuKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IGxpZ2h0ZW4pKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVl
TGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NW
YWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3Ry
dWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbikpJwotCi1D
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgY29sb3ItZG9kZ2UgOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKQotUEFTUyBjc3NS
dWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVC
YXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5
cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NW
YWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKScKLQotQ3VzdG9tIHdpdGgg
bWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGNvbG9yLWJ1cm4gOiBjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItYnVybikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAx
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25l
IG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1idXJuKSknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIGNvbG9yLWJ1cm4pKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFu
ZCBibGVuZCBtb2RlIGhhcmQtbGlnaHQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgaGFyZC1saWdodCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBoYXJkLWxpZ2h0KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGhh
cmQtbGlnaHQpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIHNv
ZnQtbGlnaHQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc29mdC1saWdo
dCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb2Z0
LWxpZ2h0KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvZnQtbGlnaHQpKScKLQot
Q3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRpZmZlcmVuY2UgOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGlmZmVyZW5jZSkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMg
J2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkaWZmZXJlbmNlKSknCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBl
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFs
dWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
UnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VT
VE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRpZmZlcmVuY2UpKScKLQotQ3VzdG9tIHdpdGggbWl4
IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGV4Y2x1c2lvbiA6IGN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBleGNsdXNpb24pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgZXhjbHVzaW9uKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIGV4Y2x1c2lvbikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5k
IG1vZGUgaHVlIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSkpCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBodWUpKScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5
cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NW
YWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaHVlKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5j
dGlvbiBhbmQgYmxlbmQgbW9kZSBzYXR1cmF0aW9uIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIHNhdHVyYXRpb24pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgc2F0dXJhdGlvbikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hh
ZGVyKSBzYXR1cmF0aW9uKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQg
bW9kZSBjb2xvciA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikp
Ci1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikp
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFBy
b3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMg
J0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklM
VEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikpJwotCi1DdXN0b20gd2l0aCBt
aXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgbHVtaW5vc2l0eSA6IGN1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBsdW1pbm9zaXR5KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGx1bWlub3NpdHkpKScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1
Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgbHVtaW5vc2l0eSkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgY2xlYXIgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY2xlYXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY2xlYXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMg
J0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18p
IGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVy
UnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NT
RmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY2xlYXIp
KScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2Rl
IGNvcHkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29weSkpCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb3B5KSknCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBl
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFs
dWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
UnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VT
VE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvcHkpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNvdXJjZS1vdmVyIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSkKLVBBU1MgY3NzUnVsZS50eXBl
IGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSknCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0
Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5v
cGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5j
dGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1vdmVyIDogY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLW92ZXIpKQotUEFTUyBj
c3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1v
dmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tb3Zl
cikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1vdmVyKSknCi0K
LUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBzb3Vy
Y2UtaW4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc291cmNlLWluKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1p
bikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2UtaW4pKScKLQotQ3VzdG9t
IHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGRlc3RpbmF0aW9u
LWluIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWlu
KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3Rp
bmF0aW9uLWluKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWlu
KSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9k
ZSBzb3VyY2Utb3V0IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJj
ZS1vdXQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
c291cmNlLW91dCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4
dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2Utb3V0KSkn
Ci0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBk
ZXN0aW5hdGlvbi1vdXQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVz
dGluYXRpb24tb3V0KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIGRlc3RpbmF0aW9uLW91dCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBk
ZXN0aW5hdGlvbi1vdXQpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBj
b21wb3NpdGluZyBtb2RlIHNvdXJjZS1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIHNvdXJjZS1hdG9wKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIHNvdXJjZS1hdG9wKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIHNvdXJjZS1hdG9wKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWF0b3ApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMg
MQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tYXRvcCkpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1hdG9wKSknCi0KLUN1c3RvbSB3aXRoIG1p
eCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSB4b3IgOiBjdXN0b20obm9uZSBt
aXgodXJsKGZyYWdtZW50LnNoYWRlcikgeG9yKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIHhvcikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSB4b3IpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0
LCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNlY29uZCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rp
b24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgZmlyc3QsIGJsZW5kIG1vZGUgc2Vjb25kIDog
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRpcGx5KSkKLVBB
U1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRp
cGx5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRpcGx5KSknCi0K
LUN1c3RvbSB3aXRoIHZlcnRleCBzaGFkZXIgYW5kIG1peCBmdW5jdGlvbiA6IGN1c3RvbSh1cmwo
dmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwotCi1DdXN0b20gd2l0aCBt
aXggZnVuY3Rpb24gaW4gQ0FQUyA6IGN1c3RvbShub25lIE1JWCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3Rv
dHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NT
U1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rp
b24gYW5kIG1lc2ggc2l6ZSA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSks
IDEwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpLCAx
MCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSwgMTApJwotCi1DdXN0b20gd2l0aCBt
ZXNoIHNpemUgOiBjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpLCAxMCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlciksIDEwKScKLQot
Q3VzdG9tIHdpdGggYm90aCBtZXNoIHNpemVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgMTAgMjApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCknCi0KLUN1c3RvbSB3
aXRoIGRldGFjaGVkIG1lc2ggOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0
YWNoZWQpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRh
Y2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGRldGFjaGVkKScKLQotQ3VzdG9tIHdp
dGggZGV0YWNoZWQgYW5kIG1lc2ggc2l6ZSA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCAyMCBkZXRhY2hlZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIDEwIDIwIGRldGFjaGVkKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAg
MjAgZGV0YWNoZWQpJwotCi1DdXN0b20gd2l0aCBudW1iZXIgcGFyYW1ldGVycyA6IGN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUg
NiA3KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwg
cDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciks
IHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpJwotCi1DdXN0b20gd2l0aCBmbG9h
dCBwYXJhbWV0ZXJzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEuMSwg
cDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBp
cyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywg
cDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCknCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0
b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25U
eXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4z
IDcuNCknCi0KLUN1c3RvbSB3aXRoIHBhcmFtZXRlciBuYW1lIHNhbWUgYXMgQ1NTIHZhbHVlIGtl
eXdvcmQgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEg
MCAxKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dy
b3VuZCAwIDEgMCAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1Zh
bHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdD
U1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29u
c3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1Rl
eHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEg
MCAxKScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyA6IGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQg
NSA2IDcpJwotCi1NdWx0aXBsZSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGdyYXlzY2FsZSgpIGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwo
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2dyYXlz
Y2FsZSgpIGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0dSQVlT
Q0FMRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2dyYXlzY2FsZSgp
JwotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSknCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX1NFUElBCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnc2VwaWEoKScKLQotQ3VzdG9tIGluIENBUFMg
OiBDVVNUT00odXJsKHZlcnRleC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20odXJsKHZlcnRl
eC5zaGFkZXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVl
TGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NW
YWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3Ry
dWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQp
IGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpKScKLQotQ3VzdG9tIHdpdGggb25lIHRyYW5z
Zm9ybSA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBvbmVUcmFuc2Zvcm0gcm90
YXRlKDBkZWcpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
b25lVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG9u
ZVRyYW5zZm9ybSByb3RhdGUoMGRlZykpJwotCi1DdXN0b20gd2l0aCBtdWx0aXBsZSB0cmFuc2Zv
cm1zIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJhbnNmb3Jt
IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAw
cHgpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgbXVsdGlw
bGVUcmFuc2Zvcm0gcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5z
bGF0ZSgwcHgsIDBweCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NT
VmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMg
J0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5j
b25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxl
Lmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3Nz
VGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBtdWx0aXBsZVRyYW5z
Zm9ybSByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBw
eCwgMHB4KSknCi0KLUN1c3RvbSB3aXRoIHR3byBzZXBhcmF0ZSB0cmFuc2Zvcm1zIDogY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSwg
c2Vjb25kVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSwgc2Vjb25kVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlz
ICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19f
KSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRl
clJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVs
ZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSwgc2Vjb25kVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSknCi0KLUN1
c3RvbSB3aXRoIGEgc2luZ2xlIGVsZW1lbnQgYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCB0MCBhcnJheSgxKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIHQwIGFycmF5KDEpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5f
X3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBB
U1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMg
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
dDAgYXJyYXkoMSkpJwotCi1DdXN0b20gd2l0aCBhIHNpbmdsZSBuZWdhdGl2ZSBlbGVtZW50IGFy
cmF5KCkgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXkoLTEuMDEp
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXko
LTEuMDEpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlz
dCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1
ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0
b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
Q1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXkoLTEuMDEpKScKLQot
Q3VzdG9tIHdpdGggbXVsdGlwbGUgZWxlbWVudHMgYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCB0MiBhcnJheSgxLCAyLCAzLCA0LCA1KSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQyIGFycmF5KDEsIDIsIDMsIDQsIDUpKScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90
b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdD
U1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDIgYXJyYXkoMSwgMiwgMywgNCwgNSkpJwotCi1D
dXN0b20gd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXQgZWxlbWVudHMgYXJyYXkoKSA6IGN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0MyBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQs
IDUpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDMgYXJy
YXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQz
IGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkpJwotCi1NdWx0aXBsZSBhcnJheSgpIDogY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQ0IGFycmF5KDEsIC0yLjIsIDMuMTQsIDAu
NCwgNSksIHQ1IGFycmF5KDEsIDIsIDMpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJh
Z21lbnQuc2hhZGVyKSwgdDQgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgdDUgYXJyYXko
MSwgMiwgMykpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAz
LjE0LCAwLjQsIDUpLCB0NSBhcnJheSgxLCAyLCAzKSknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRo
IG1lc2ggYm94IHNpemVzIGFuZCBjb250ZW50LWJveCA6IGN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxIDEgY29udGVudC1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBp
cyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9f
XykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0
ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRD
U1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1
bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwot
Ci1MZWdhY3kgLSBDdXN0b20gd2l0aCBtZXNoIGJveCBzaXplcyBhbmQgYm9yZGVyLWJveCA6IGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgYm9yZGVyLWJveCkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBp
cyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSknCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29u
c3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVy
YXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEgMSknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIG1lc2ggYm94IHNpemVz
IGFuZCBwYWRkaW5nLWJveCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEg
cGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVl
TGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMg
J2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotCi1MZWdhY3kgLSBDdXN0
b20gd2l0aCBwYXJ0aWFsIG1lc2ggYm94IHNpemUgYW5kIHBhZGRpbmctYm94IDogY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIHBhZGRpbmctYm94KQotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIHBhZGRpbmctYm94IGFuZCBkZXRhY2hl
ZCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwYWRkaW5nLWJveCBkZXRhY2hl
ZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGRldGFjaGVk
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0YWNoZWQpJwotCi1MZWdhY3kgLSBDdXN0
b20gd2l0aCBib3RoIG1lc2gtc2l6ZXMgYW5kIHBhZGRpbmctYm94IDogY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIDEwIDIwIHBhZGRpbmctYm94KQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCAyMCknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIG1lc2gtc2l6ZXMsIHBhZGRpbmct
Ym94IGFuZCBkZXRhY2hlZCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCBwYWRkaW5nLWJveCBkZXRhY2hlZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEwIDIwIGRldGFjaGVkKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5f
X3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBB
U1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMg
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
MTAgMjAgZGV0YWNoZWQpJwotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNp
bmctaW52YWxpZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEx
MGY1YjQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmctaW52YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSw0MDQgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiBjdXN0b20oKSBmdW5j
dGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KLQotCi0KLUVtcHR5IGZ1bmN0aW9uIDogY3VzdG9tKCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHZhbHVlcyAx
IDogY3VzdG9tKCwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1ObyB2YWx1ZXMgMiA6IGN1c3RvbSgsLCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IHNo
YWRlcnMgMSA6IGN1c3RvbSh1cmwoc2hhZGVyMSkgdXJsKHNoYWRlcjIpIHVybChzaGFkZXIyKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVRvbyBtYW55IHNoYWRlcnMgMiA6IGN1c3RvbShub25lIG5vbmUgbm9uZSkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBt
YW55IHNoYWRlcnMgMyA6IGN1c3RvbShub25lIHVybChzaGFkZXIxKSB1cmwoc2hhZGVyMikgdXJs
KHNoYWRlcjIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIGFzIHZlcnRleCBzaGFkZXIgOiBjdXN0b20obWl4
KHVybChzaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIHdyb25nIG5hbWUgOiBjdXN0b20o
bm9uZSBmbih1cmwoc2hhZGVyKSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24gd2l0aCAwIGFyZ3MgOiBjdXN0
b20obm9uZSBtaXgoKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIGZpcnN0IGFyZyBub3QgYSBVUkkg
OiBjdXN0b20obm9uZSBtaXgobm9uZSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24gd2l0aCBzZWNvbmQgYXJn
IG5vdCBhIGJsZW5kIG1vZGUgb3IgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSA6IGN1c3RvbShub25l
IG1peCh1cmwoc2hhZGVyKSAwKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIHRoaXJkIGFyZyBub3Qg
YSBibGVuZCBtb2RlIG9yIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgOiBjdXN0b20obm9uZSBtaXgo
dXJsKHNoYWRlcikgbm9ybWFsIDApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggdHdvIGJsZW5kIG1v
ZGVzIDogY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIG11bHRpcGx5IHNjcmVlbikpCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1N
aXggZnVuY3Rpb24gd2l0aCB0d28gYWxwaGEgY29tcG9zaXRpbmcgbW9kZXMgOiBjdXN0b20obm9u
ZSBtaXgodXJsKHNoYWRlcikgc291cmNlLW92ZXIgZGVzdGluYXRpb24tb3ZlcikpCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXgg
ZnVuY3Rpb24gd2l0aCBhbHBoYSBjb21wb3NpdGluZyBtb2RlICdwbHVzLWRhcmtlcicsIHdoaWNo
IHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1jb21wb3NpdGUgOiBjdXN0
b20obm9uZSBtaXgodXJsKHNoYWRlcikgcGx1cy1kYXJrZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdp
dGggYWxwaGEgY29tcG9zaXRpbmcgbW9kZSAncGx1cy1saWdodGVyJywgd2hpY2ggc2hvdWxkIG9u
bHkgYXBwbHkgdG8gLXdlYmtpdC1iYWNrZ3JvdW5kLWNvbXBvc2l0ZSA6IGN1c3RvbShub25lIG1p
eCh1cmwoc2hhZGVyKSBwbHVzLWxpZ2h0ZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSAnaGlnaGxpZ2h0Jywgd2hpY2ggc2hvdWxkIG9ubHkgYXBwbHkgdG8g
LXdlYmtpdC1iYWNrZ3JvdW5kLWNvbXBvc2l0ZSA6IGN1c3RvbShub25lIG1peCh1cmwoc2hhZGVy
KSBoaWdobGlnaHQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggNCBhcmdzIDogY3VzdG9tKG5vbmUg
bWl4KHVybChzaGFkZXIpIG11bHRpcGx5IGNsZWFyIG5vcm1hbCkpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24g
d2l0aCBjb21tYSBzZXBhcmF0b3JzIDogY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpLCBtdWx0
aXBseSwgY2xlYXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggY29tbWEgdGVybWluYXRvciA6IGN1
c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSwgbXVsdGlwbHkgY2xlYXIsKSkKLVBBU1MgY3NzUnVs
ZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5j
dGlvbiB3aXRoIG9uZSBjb21tYSA6IGN1c3RvbShub25lIG1peCgsKSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHNoYWRlciA6
IGN1c3RvbShub25lLCAxMCAyMCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IG1lc2ggc2l6ZXMgOiBjdXN0b20obm9u
ZSwgMTAgMjAgMzApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1Xcm9uZyBtZXNoLWJveCB0eXBlIC0gJ3BhZGRpbmcnIDogY3VzdG9t
KHVybChzaGFkZXIpLCBwYWRkaW5nKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotV3JvbmcgbWVzaC1ib3ggdHlwZSAtICdub25lJyA6
IGN1c3RvbSh1cmwoc2hhZGVyKSwgbm9uZSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1vcmUgbWVzaC1ib3ggdHlwZXMgOiBjdXN0
b20odXJsKHNoYWRlciksIHBhZGRpbmctYm94IGZpbHRlci1ib3gpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Xcm9uZyBvcmRlciBm
b3IgbWVzaC1kZXRhY2hlZCBhbmQgbWVzaC1ib3ggdHlwZSA6IGN1c3RvbSh1cmwoc2hhZGVyKSwg
ZGV0YWNoZWQgcGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Xcm9uZyBvcmRlciBmb3IgbWVzaCBzaXplIGFuZCBt
ZXNoLWJveCB0eXBlIDogY3VzdG9tKHVybChzaGFkZXIpLCBwYWRkaW5nLWJveCAxMCkKLVBBU1Mg
Y3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRv
byBtYW55IG1lc2ggc2l6ZXMgd2l0aCBtZXNoLWJveCB0eXBlIDogY3VzdG9tKHVybChzaGFkZXIp
LCAyMCAzMCA0MCBwYWRkaW5nLWJveCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgY29tbWEgYmV0d2VlbiBtZXNoLXNp
emVzIDogY3VzdG9tKHVybChzaGFkZXIpLCAyMCwgNDAgcGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IGNvbW1hIGJlZm9yZSBtZXNoIHR5cGUgOiBjdXN0b20odXJsKHNoYWRlciksIDIwLCBwYWRkaW5n
LWJveCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBp
cyBudWxsCi0KLU5vIG1lc2ggcGFyYW1ldGVyIDogY3VzdG9tKHVybChzaGFkZXIpLCApCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1X
cm9uZyBtZXNoIHR5cGUgLSBjb3JyZWN0IGlkZW50aWZpZXIgaXMgJ2RldGFjaGVkJyA6IGN1c3Rv
bSh1cmwoc2hhZGVyKSwgZGV0YWNoKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gbWVzaCBzaXplIDogY3VzdG9tKHVybChzaGFk
ZXIpLCAsIHAxIDIpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBzaW5nbGUgbWVzaCBzaXplIDogY3VzdG9tKHVybChz
aGFkZXIpLCAtMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20odXJsKHNo
YWRlciksIC0xMCAtMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBhbmQgcG9zaXRpdmUgbWVzaCBzaXplIDogY3Vz
dG9tKHVybChzaGFkZXIpLCAtMTAgMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1aZXJvIHNpbmdsZSBtZXNoIHNpemUgOiBjdXN0
b20odXJsKHNoYWRlciksIDApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykgaXMgbnVsbAotCi1aZXJvIGJvdGggbWVzaCBzaXplcyA6IGN1c3RvbSh1cmwo
c2hhZGVyKSwgMCAwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotMCBhbmQgMSBtZXNoIHNpemVzIDogY3VzdG9tKHVybChzaGFkZXIp
LCAwIDEpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVzIDogY3VzdG9tKHVybChzaGFkZXIp
LCBwMSAxIDIgMyA0IDUpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHBhcmFtZXRlciB0eXBlcyA6IGN1c3RvbSh1cmwo
c2hhZGVyKSwgcDEgMS4wIDIuMCAndGV4dCcpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUgMSA6IGN1
c3RvbSh1cmwoc2hhZGVyKSwgcDEpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUgMiA6IGN1c3RvbSh1
cmwoc2hhZGVyKSwgcDEsIHAyLCBwMykKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBpbnZhbGlkIHRyYW5zZm9ybSA6IGN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykpCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NdWx0
aXBsZSBpbnZhbGlkIHRyYW5zZm9ybXMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlk
IGludmFsaWRfcm90YXRlKDBkZWcpIGludmFsaWRfcGVyc3BlY3RpdmUoMCkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHRyYW5zZm9ybSBiZXR3ZWVuIHZhbGlkIG9uZXMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwg
c29tZUlkIHJvdGF0ZSgwZGVnKSBpbnZhbGlkX3JvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVZhbGlkIHRyYW5zZm9ybSBiZXR3ZWVuIGludmFsaWQgb25lcyA6IGN1c3RvbShub25lIHVy
bChzaGFkZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgYW5v
dGhlcl9pbnZhbGlkKDApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3JtIHdpdGhvdXQgbGVhZGluZyBjb21t
YSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBwZXJzcGVjdGl2ZSgwKSkKLVBBU1Mg
Y3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVZh
bGlkIHRyYW5zZm9ybSB3aXRoIHRyYWlsaW5nIGNvbW1hIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIHNvbWVJZCBwZXJzcGVjdGl2ZSgwKSwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFp
bGluZyBjb21tYSBhbmQgd2l0aG91dCBsZWFkaW5nIGNvbW1hIDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlcikgc29tZUlkIHBlcnNwZWN0aXZlKDApLCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdHJhbnNmb3JtIHdpdGgg
dHJhaWxpbmcgY29tbWEgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIGludmFsaWRf
cm90YXRlKDBkZWcpLCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdHJhbnNmb3JtIHdpdGhvdXQgbGVhZGluZyBjb21t
YSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBpbnZhbGlkX3JvdGF0ZSgwZGVnKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLUVtcHR5IHRyYW5zZm9ybSAob25seSB0aGUgaWQpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIHNvbWVJZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyBudWxsCi0KLUVtcHR5IHRyYW5zZm9ybSAod2l0aG91dCB0aGUgaWQpIDogY3VzdG9t
KG5vbmUgdXJsKHNoYWRlciksKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotRW1wdHkgdHJhbnNmb3JtICh0d28gZW1wdHkgY29tbWFz
KSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gd2l0aCBp
bnZhbGlkIGNoYXJhY3RlcnMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSxzb21lSWQgcm90YXRl
KDBkZWcpICouLSwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1FbXB0eSBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciks
IGlkIGFycmF5KCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1PbmUgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChz
aGFkZXIpLCBpZCBhcnJheSgsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRpbGUgY29tbWFzIGluIGFycmF5KCkgOiBjdXN0
b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLCwsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRpcGxlIGNvbW1hcyB3
aXRoIGEgdmFsdWUgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJh
eSgsLDEsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSBpcyBudWxsCi0KLU9uZSBjb21tYSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFy
cmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLC00KSkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBj
b21tYSBmb2xsb3dlZCBieSBhIHZhbHVlIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoLDQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotT25lIG5lZ2F0aXZlIHZhbHVlIGZvbGxvd2VkIGJ5IGEg
Y29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgtNCwp
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotT25lIHZhbHVlIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSg0LCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1BIHNlcmllcyBvZiBjb3JyZWN0IHZh
bHVlcyBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMSwgMiwgMywgNCwpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQSBzZXJpZXMgb2YgY29ycmVjdCB2YWx1
ZXMgZm9sbG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFk
ZXIpLCBpZCBhcnJheSgxLCAyLCAzLCA0LCB4KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVR3byBjb21tYXMgYXMgc2VwYXJhdG9y
IGJldHdlZW4gdmFsdWVzIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQg
YXJyYXkoMSwgMiwgLCA0KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUxlYWRpbmcgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsMSwgMiwgMywgNCkpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2Vw
YXJhdGVkIHZhbHVlcyBpbiBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFy
cmF5KDE7IDI7IDM7IDQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheSgpIDog
Y3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEgMiAzIDQpKQotUEFTUyBjc3NSdWxl
LnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2Vw
YXJhdGVkIHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxIDIgMyA0LCkpCi1QQVNTIGNzc1J1bGUudHlwZSBp
cyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQg
dmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlciksIGlkIGFycmF5KCwgMSAyIDMgNCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1OYU4gaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheShOYU4pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTmFOIGFuZCB2YWx1ZXMgaW4gYXJy
YXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCBOYU4sIDMpKQot
UEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSwgaWQgYXJyYXkoMXB4KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdW5pdCB2YWx1ZSBpbiBhcnJheSgpLCBzZWNv
bmQgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkobm9uZSkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHVuaXQgdmFsdWUgaW4gYXJyYXkoKSwgdGhpcmQgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwg
aWQgYXJyYXkoMWRlZykpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHVuaXQgdmFsdWUgaW4gYXJyYXkoKSwgYXQgdGhl
IGVuZCBvZiBhIHBhcnRpYWxseSB2YWxpZCB2YWx1ZSBsaXN0IDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlciksIGlkIGFycmF5KDEsIDIsIDMsIDRweCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0
eS1wYXJzaW5nLWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWY4
NWNhMC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1pbnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxMyArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9F
TiI+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlv
biI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0
LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmctaW52
YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2lu
Zy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXBy
b3BlcnR5LXBhcnNpbmcuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzMwOTE0
MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItcHJvcGVydHktcGFyc2luZy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBA
QAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+
Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxk
aXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0
b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi9z
Y3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLmpzIj48L3NjcmlwdD4K
LTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXJlbG9hZC1leHBlY3RlZC50eHQKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXJlbG9hZC1leHBlY3RlZC50
eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQuaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTc5ZDEzZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcmVsb2FkLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSw3NSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTwhLS0gCi0gICAgVGhpcyB0
ZXN0cyB2ZXJpZmllcyB0aGF0IHdlIGRvbid0IGFzc2VydCB3aGVuIHRoZSBzdHlsZSBpcyByZWNh
bGN1bGF0ZWQgYnV0IHRoZSBmaWx0ZXIgcHJvcGVydHkgZG9lc24ndCBjaGFuZ2UuCi0tLT4KLTxo
dG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICAgICAg
d2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAgICAg
ZnVuY3Rpb24gdGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8vIEZvcmNlIGEgbGF5b3V0
LgotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQ7Ci0gICAgICAgICAgICB2
YXIgYm94ZXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuYm94Iik7Ci0gICAgICAgICAg
ICBmb3IgKHZhciBpID0gMDsgaSA8IGJveGVzLmxlbmd0aDsgKytpKQotICAgICAgICAgICAgICAg
IGJveGVzW2ldLmNsYXNzTGlzdC5hZGQoInRyaWdnZXItc3R5bGUtcmVjYWxjIik7Ci0gICAgICAg
ICAgICAKLSAgICAgICAgICAgIC8vIFN3aXRjaCB0aGUgcGFyZW50IHRvIGNvbXBvc2l0ZWQgbW9k
ZSwgc28gdGhhdCB3ZSBjYW4gdHJpZ2dlciAKLSAgICAgICAgICAgIC8vIGEgcmVidWlsZCBvZiB0
aGUgY29tcG9zaXRpbmcgbGF5ZXIgdHJlZS4KLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5
bGUud2Via2l0VHJhbnNmb3JtID0gInRyYW5zbGF0ZVooMHB4KSIKLQotICAgICAgICAgICAgLy8g
Rm9yY2UgYSBsYXlvdXQuCi0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodDsK
LQotICAgICAgICAgICAgLy8gSWYgd2UgZ2V0IHRoaXMgZmFyIHdpdGggbm8gYXNzZXJ0LCB0aGUg
dGVzdCBwYXNzZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0gICAg
PC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhlaWdo
dDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRl
WigwKTsKLSAgICAgICAgfQotCi0gICAgICAgIC52ZXJ0ZXhfc2hhZGVyCi0gICAgICAgIHsKLSAg
ICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4
LW9mZnNldC52cycpKTsKLSAgICAgICAgfQotCi0gICAgICAgIC5mcmFnbWVudF9zaGFkZXIKLSAg
ICAgICAgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwo
Jy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAg
ICAgICAgfQotCi0gICAgICAgIC5ib3RoX3NoYWRlcnMKLSAgICAgICAgewotICAgICAgICAgICAg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZz
JykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCkpOwotICAgICAgICB9Ci0KLSAgICAgICAgLnRyaWdnZXItc3R5bGUtcmVjYWxjIHsKLSAg
ICAgICAgICAgIC8qIE5vIGNoYW5nZSwgd2UganVzdCBuZWVkIGEgbmV3IHN0eWxlIHJlY2FsY3Vs
YXRpb24uICovCi0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotCi08Ym9keSBvbmxv
YWQ9InRlc3QoKSI+Ci0gICAgPCEtLSAKLSAgICAgICAgWW91IHNob3VsZCBzZWUgdGhyZWUgZ3Jl
ZW4gYm94ZXMuIExhc3QgdHdvIGJveGVzIGhhdmUgYSBkaWZmZXJlbnQgc2hhZGUgb2YgZ3JlZW4u
IExhc3QgYm94IGlzIHNsaWdodGx5IGJpZ2dlciBvbiB0aGUgbGVmdCBzaWRlLgotICAgICAgICBU
aGUgdGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgbm8gY3Jhc2ggb3IgYXNzZXJ0LgotICAgIC0tPgot
Ci0gICAgPGRpdiBjbGFzcz0iYm94IHZlcnRleF9zaGFkZXIiPjwvZGl2PgotICAgIDxkaXYgY2xh
c3M9ImJveCBib3RoX3NoYWRlcnMiPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCBmcmFnbWVu
dF9zaGFkZXIiPjwvZGl2PgotCi08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLWNhY2hlLWV4cGVj
dGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1z
aGFkZXItY2FjaGUtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBk
ZDNiZDQ1YWVhYzU0NjVhZmVjMmViZThhYTc4MTAxYTg0ZDFiODA2Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/
ZDAwMDAxCgpsaXRlcmFsIDE2MTYwCnpjbWVIdWN+bnpaKkZNZXomWjFDfXA7YHJuMXs1PyowamVT
QE48XihWNUQ9TjlZR1JsfCROKkhTbVFoOEZoJEpFKwp6UVl0NzhnZHFYcDEmUnp8UCFMRm41RnZ5
aSEyfTJpMGxwTGFtZG9uKlRkU19GX1VvQH1gQiMkVEoodHtfWFljYm8KeiYpKXVjKDl3U0ohWml6
M1I4JHU0LUx2YkVpcG5mcTZfdUlDPUZiSHl3fVphRjBBNGwpKmN9Vi1JT0ZBVSk8NXZQCnolSiF9
MW9eYTJ0LWQ+KWI5YDQ0YyY5PDRGbnIkfldHZEpJNjs8ZXE+XlIpTWlHWUtqeCk7VzgzZVJDdnUj
c0hAIwp6RCVuUmlaX3d4NVJ7WXNrQDlXc0VlZjBeZCZYNGw1P09ZYVE8cXo2QzkhYHNURm5fMSp1
R2Mzci1qenFGeV5MXmgKeitNS3A5fEhHVzBqP084I2thfnF3PV8kNUleel5waXRDUmglLWw2aGAr
Tnc8fDE4Y2BDejVScyNoLVFCZHQqPmUxCnp3NyNeVnItQGRwR2pzTypXeEJSdURsQDx2X01DN2pD
anU4ZE5CUUJtKWR7eV5sfV9FP0s3cio2JjlmS2o7JG04KAp6cllAUGslczkrITdQTXRQZCl0Z3p6
bzFlXyk9aig1QkhofUxmOEBWKyFXfTQ5QG9ScF94QkBNUEAwe20yY3JDNEcKelJVZ0xRb2c/RUlx
RGstUXNfc25INChzaERMYGA+UTZkfCFIJjZ3TFk3PDRQTTwhbkt3RllgeWJMNDVQO0pDXkU8Cno0
PFR4QTArWlpiWlgzbjR0cj16YkdFSWZNazgkZztaNTsmNjRfTlJLZWc2RXtNMVBITERgZG56bWhU
JClrb2ZeZwp6OG8kPyhDMjJgdkBtYH5rZVB0VX5KVUVqKVlpblVmXnQ1TGdueStDU2E+e1YhWiRW
bjdZZ2B5TSEhIThzN1ltQEUKel5laV9IOCFBNHdAeE9ydHw4T2M4Z2tiUSYpKW1tY3k3aX0yMW1S
RWl7fkIhTlg3S21zVWhPI0cxXilESlZZcTh3Cnp0a04qY0Jre00tVkpoSnJhfkEyQUNjV0EtYnhv
TFVUeVokfTU+dVdfZyhEM3k1emdnSShXNCpkNXYtWGNDT0BqTwp6JU5RKnhkNEk5ZENheCh4ODxg
YmJMZ2JXSD5aT05qcFdwOUJiSjI+QmpsaHVCPUhycntTM3w+PFpfPmNrdD8lUD0KekxucTJqYXps
azxydWdzPmo3IUw+NURvYWc+PlcjYW95M2xXeD5WeVZSby1xdkxZK0lpJDEoZW9AYSU9ck5kdUk7
CnpvaGZCXjxWKURJREFYZTN0VUwrM15nSERqfDh9LXc/KWBtd3VmTGk0IyY+N1RuNitvdGZmc2ZW
QWlmMUNgcW08NAp6M0FDfnBNMChBY29VZnNmSnpSSDZDOEo/TUFRYjJgd2pleVZAI244aSNtOUNQ
eE9JWiMhOzg/JEVEK1ZYeDZlZ0UKenp2NTVlKTt8VTgoMUtSaEVIZktTc3h1PF9zY25mMyR9en5k
RlgodkYpI2xEZDJNNVg9U0hvS3VXU2VtcFhUIUokCnpQJnN0OF53OEAjdns2aHwpXyRGc0VOe18o
eDcle0VyMD1YZGJ0ditFaSU3SFJUdC0jYTRqcVFXSUZFPjBPQSZoWAp6JjxBX1A9cE9wZUtDdm05
QU50OzhAQDk4WjsoSjc+eilFX31vWW07bkFoODx2JT4+YCg7a3RNNWU+TSFwVld4R1MKekNte3FM
dkAyRlFsKHc+VzhnOWNycUhYTmVxNWxOPzJ8UDckcD0hOSQrYWwoP1JOXyp0U0RvNWNMa0RrJlVV
d1hKCnpWISEmM1YyR0NPSmtJV0RiWWNzLTQyOUpsQ1FlTH5zIVMoI1okV3UtbC1Ma2dITEY3Rk4z
b1Y1aG58WE0qWV9+Jgp6M3B8fElQdDBKSkk2UloqTTUtdW89USMlR2x9TnFHUEJ+SndfZnwtckEy
bUhBQWxLMTloPztKNUpefXA3Zmw3RWUKejhYZWcmMStQPWU2ajl9Iyl8fmJqQWRlMkV0OGV+dER6
elJmbFB2PUNXYnJoN2ZzRCooUjg0XkpieGZKSUNBbnxzCnpMZHBGYTxvMFZwIzZHQ3A4N2QxdiRI
e1hTQXZwQntmYnxhVCpaezRwYzcwY2oqQDJ2cz9YNytYPWokVDE5cXNPKQp6SWcoV2NHYj5zSmY4
fFIyP2o2MCtvdGVPUiRWQFhpJlVEZ2ZlZ3VHMyVoc2xSYD1SI2heRkhiK1V7ZiNfNC1hKzsKelN7
fkFAcko1R3wxR2JgK0pfSmV8VlVAWj9IYmU0fGxhTWZVPUs9TzJ0I1NSQUpBMy1BcWB7NX41empU
Ymc0KE9CCnpTR3ViUUhMdT48ciNyMmhrRjdFZT52eWhgS3dvcUllP1YwSjtmd1ZCU0lSNVhHVjVL
MXE4eGZXcl9ZSHdQWlUqPgp6S2tzR157YztJQyFCfXwyWX4ySHk8SzsxZzc4QUZ2OG4tZH1CKkp1
b3w1IzFXYXJKeU8tcSYmPU58LX1tJnZ+eHoKejdWX29Md2FXNyZvO0dYQndmZ1g2S2w1NjNyWmlY
c1hCY2d7eWoqSzMlVih7K3RELSRuK0FafHU8SGNXMU59byFJCnptfEVUdGBxJjJCRms5SE4yQGZs
entgSUwrMF5YMjdlNX05ZG4tO019dXYwMnUrJlF1WHMkOD8+cHFQPWlIYkowUwp6cnJ9Ym92ZWhp
KCh6SmE7M3A4eHlvPEMxTk4kM0RiN1k7MyR3eSRSO0k3dXB4PX1wMWJfUzZMYyQjP2Z4SyhOKVYK
eih8Y14xS2IkVkFEIyM7R0N9Y2Y+ekhHVFg8YzNqOSFHKD87O0hCO0QrYmQjSlZlcG5uMk1IPWFW
QUNzSCpRKjQ1CnpwfTRFY2lUKFUrJVlueyN0Z2x3US04blNjNXE0bWxJNCZRfj0hPWglWmJxTHlk
cDc0cjJKTGNlMGhVKyhURGwqJAp6TDw9WUJ1Qm1rMUtWSGE0PUE1eiNWN0luMV42OyZBWVJJRGVB
QCkqfFY8VH1NaU9RbFBFVmFydjFFZlcmanhPSHcKelZlWTI1c1RkWm8xSkF1V0JXVlE2KlNwfWs/
KzBKSlZHbXtTSDR3cTUqOVFudHo4KFktSlhIQTJ0TXlaJWMpU1B2Cno3SXdXNDcqTXxJZ1dxQ1B5
S2RMPXNkOURmRC1mPUFmc0wrRXpOKURraHBBeiVpbEcoNT4lfVAtK3A3flZLWlJSYQp6PHtLQHYh
WFhTfm1OcXI4O0teMjVTYFVMT19mY3pONDQmQkRoPiVoWXh6NDM+PlpFZyEkQjBSMmR5SzBoKXk1
bHMKeiRZeHhjbkBaJHtacCMjOWd0QlUtSDlFVnBgP1NaOU9fJHdwJEp5ITN0STZxSFB4WiZSSUIp
ZXxhTUBXdGU5MDVJCnozQn5RYXJfNmVNJG5uTT8xeWUwLUhtbWU7VnxCV152aExWT2J8MitCSU9o
PHZKPUhWZ2EhdVlNYEZNKm9pNHx1OQp6ZzRJWlN1QENTN2k8dkQmcSZGR1AofjhYZT5MJm19dX1T
Rng1RXZ5SlBwS3M0IyU1NVVVdHExT2hIVzw7ellqdXsKekYkUlBaLSorbm5nNUY8eEU4Q3opcXRA
RjtDMmBpUDVhVD9DUGIkNk1gPStRQU53JDA/P1ArcXBON3ZoWm9NYzFqCnpiOHVwK0o2ZnJpRzBm
JERZUHNTaz5aeEA1N2ZnKlo1P1dOPyNJNzx4PyF3di1jYHwrQl5FNXI1YT5UPzAjaFl3MQp6QTxv
ViQod1lxSFctJGhrKWU1cXI+eT1Sc1FITmJBWDF3KjFYPiUyJF5oPTMwWlV7dnxBfiZ2eFpJI2V2
SWw+NXkKeik9ODh9Vz85QzQrPDtzJU5tZXVgK1NuQXkyQ0dGQ1pXOT99cks4eTxwO0BAJkJveVRo
VDtoY3Ixa3U7MyFCZDZUCnpYP3l8ZXFfUkcmbm8lXzRae3M3TWF1OT5HM0UkWVpabU9iKFp3NWMo
PUghRihwcTA2Xlp8PV5XRm54QGljQmIzagp6NEdaSWpzaCM8TDEoWDhNMEpyaUBZYUgxLW00bzEt
OFRWfmgtazhjYStxPGcoQ3VpMmo4UU50WjMkPEw+UzFhPHkKel9SWHE1JjZsOSZPUD8oN1pVYi1G
Ulc3Z3k4U0xfO1NLWFdiPWJTZ0QrK0ZPMSVFP148YzN3fFJiTHp2YXduZS1LCnpxQSRDdFNPZj8r
N0c1SSVBK35KXm10WWRAMDZ2MCgofihxYSUqU3MmNjVgbE1QaHQ3cUhiT1kjTGEzfUlCPD1LfAp6
UXN0eG1wYnBObEtnRSo0XlVOI1hJdSlCNEdmUDF0YH5YalkqclE2Z0hsVUE3cXJJVH4wZXthcFkh
UFBqYGYyK1IKekFrNWt0Um52PDNBfHI0SnY+KHwkWkN9WGpDNW53aFo7Rk5zQHUlP3lnPEQ1Um07
K1hDQl85U1AyKUYmUCVVRlc/CnpNeDhxb18tRUU2bDMkPSZjT1Q0QSQtPldnJG1RPlFee2FEbmN5
WG5HWDdCc31hQ1RTKG1lOVBCUnlaeiFRfWYzQwp6eCNeWHZ1TC08eyUoX3kjbGFpWE5eSHNBaVgt
OG1ETnxKdFEzMiEkcFdKN0A0I25NU1BMNCRPSiFDJXN4JS01ejUKekRJJX5uO0xUQ3g3eXRKI098
bD85XiRQWWBKZ09laXMtKW1jY3RORl5SayQyX3k8PjJoT2k5cXV6MVBiRTNuPSU8CnowUiYle0FU
Umx1Zk5jWn1kQE9QPiQ8MGt3YV5Md1k3TVZOaDwkd3hXQ0dTRD8+aFN3ST0+YS1CRDxZZ0p4U2JW
Zwp6JmV6a2ltWHFzZ3ZScVNjXjthVTkxM3hkVzhjJjdBUX4zaHF6Yk1hQFh5WjhGVHZzME5walMj
Q09RbnhCNX5UPUAKekU8KEAyKXpXdDxtK3VrTm0oVV9Sa0glKHVWeWtwc2J1T1hCYn4rbVFWMTFV
KmVpU0RrY2E3O2glSDFZKHgjNSN7CnpRcms/cD1aMHR4ckEjWV43clJAOFh3ezE5ajRpe3E8Vyko
dTsoOUlIN2k7M35TdVNWN0J+ak5JPkFIT1U4ajhmfgp6S3czZkk/V2E+aFc8M3h4Zmd2ZD9wb0NC
YkRSTyp0YihgKX5CN3F9cD9vfHVNITNFR3QxVn1iUlYkfUpvUT5UQCEKejdSYm5DKk4yeTtSKkZr
TitPQjRuWkhGWkEtQl4mQGVAWCspQmQta0U5SzVhSVU3LVVuZV9qZFAyYnxIVXBxSHtvCnpiZj1O
ZCE/UC1xbXE7RzwrWU51NlRxJXd6cGAhdD9hTlEmSHBDZlQtVSgxNXwzPHE5R1I4XyVDVVFTZTlm
JCo0cQp6cGxQKEZjNmt+b1pKYlBjOWV5QyRland9VGArVTxGT35vRFUxeitzJjtwYktPY1pUWG5k
I3klfV8kYkJrNkh0bCYKemI3VXJUP2s7PHE0YkplUUAyU3d+NDUrKkRLWWZ2SFZwMUl2aEtkPlMz
I0Y3TF9xKWM0NXk1VjFPXkMtZyRgRVNoCnprMWs9O09PfGhgIUNBMEhmPFo+NkpKWkNTLUo3IWFS
dlR0RkU1OXpWJUF3N3YjfUQ5MWtZeSlwUCkmKjNrQUE4Kgp6UiZPamsjKilOV1ZWUSNycGsrTVYq
Kl9XIWdNK1BrXnViUFBSc2tHYHZ9REVXJCU8Jm5lMWdBckk8OGQ3REUtMCoKemIkSXc0KlFPUVVX
dU01QmYhYEFVI0J1Nj8zb0N2SEBiX30+MjFxOF8tYkRnS0xDKygzM1QhSWpGTSppNjd7M24hCnpU
Ykx+a3BiYzRXRiRMUWhHY04qMiZlY25SVjU8XnQ5aUNTSSRjRShCVU5iRD12K1QxU2N1bWRDc28+
fn5QKnVNTgp6VWRxZE4tdzxfe01MRF9MN0IhPis9NDBUVHdGXnJ6YSpPVEVMUkZ6eCg0cm1zWlcq
NVRfeEpibj9kQTcxWENxTkcKem1xS1VrJCYpQUopQW87QjErWmZAO1NaUVRlJUt5KjUqKnttSmwp
RzU4MGVvbm1jbmFsNjR1bC0pPUZNYClUUXlzCnpKXnJgNUVxZiV5a15VQmVAbGsqQEsmM0laaz89
aXVEMkEpfDdPVWohO1hHNF5eMGY+K2NiVnBXRGArTF5FMERxVwp6KFhGYWU0PDZuTEJHfGUza1Qk
ZXB3KnFBRkFeMVNWUjB3VWNBY095dTIzVnBzPFh2bFpodGJoZVBqWSZmKkxTPjwKekVBdEl7SW80
Y2pXRzVQTHZQcGRgakEraEQ2eV9DcSU5dn1LcT43PigmOElZKDFVPU5MR3JwelpucHt2K3F9NFN4
CnprJEllaTk0Nz1aRiUhQldEQ3loSzlCVn4+UmoyaUVNOERQZSMpMj5nIUwtMVpOZUR6KCgmOEEy
ZDVaN1dTNGpvdwp6eE88bjFoI287ajwkSkJpTFJMJH5BPkUyWmMjaG1QfDlUZjtMJX1ncFZlKDZ8
MSo+c1dHRzcxXztIZVlPejZGdGIKeno1SkpuZmxOb25HXjRAeFI0ajwzS2lldHxsNnRxYEskUjIq
P3FAKjFLPSgxQTVHIWc5TCNQVkoxTXlkVnZme1BGCno2bERMfVRqaVdCbFJrTSMzbXdZbjUkSzJ6
bnFAS0RwQXZQKjt4O0Z5ZUoqb0Y4RGgoOy1tI1hHWmpvWmZoMFoqRQp6Vk5FP0htN1dtQyY/ck9Y
NDQzSCh7UiFMe3BqUG5mQkY4IzNTQHppTXVNeUBaIVZsNlNRXzB1fE4rQGM0Sypeem4Kej1SOzMt
T0w8MWw8WkU0SD87TE42JTN4S30oZTg/aDRiPSkrWndJJFYkPUpJeTQ3cEU0O350NyVzJWJpSkB0
KD5KCnpwPzslTVVRdys9Q2FieVpxb255cmohdD1LdmRvYFIpIVVjPEdjKGJzO0d6K1R7K1VgeTA3
WVNpM35nN3xobzl5SAp6I3JiQ3B6YHUtZUZWYkNYK09pc3w9dHFFS2JWUDg7MHdVWHt4KnI5NUlI
P3VsP2xXZjJRNXNwbEJpdFohNDNifFUKenAmWG44Z3o9byljVnxOQGtMSXRuNz5wciVaVkQtcnc+
Y2Zkaz5PRCViPEJpMlppI2wjPDY/fXR5S2pqKVVBejRACnpScFpQUk1pO1padmo/JnMkVG9Jbj9W
ciV3JEZIQCs2bCZXQWE9Yk10LTQ0N0xiSUJPc209YFE+ZihOakpNJSNaaQp6Jl9UZ2I8Knhtfm9P
TCoqIVQpeW9WeGBDejxtRVI/aChTRlB2KigpMU0rR0swX2ZOOXFNWTsmJW5eM2Z0WH1FJCEKemAx
PyV2My05MTUqJU9jV0g3bCE1YnxnRno1emNuTHF7ZC1yQkgzdl9eWFJxJFc3KWVRUl9kXnpGRnJI
WCpiUnNNCnokaWcpbm9Bc1JTLUk8SzRjJTxXYFJzTDJiWFdzO18tWSREVEtyOHhDSndPfD9LSHok
e1U2Yk0ocDxOI0hrKCEmaQp6MSNjTUFrTTFpMEJ6OzRHMjBYdmZBWjJYTCtLSWAxNmxTZ25mdWpx
cHF7VjRgcXYqNVgmRXBmR1RrdFBZbHVELVEKekt3RTFVb3RvU3FEWGRwZ0BGMHlgTzs7MiV6QVBy
RiNHbj9aQjxQMUpoRk5WNHdjKnFAMlZSYXJxa1U+LTMhJExKCnpgNFUkbEtYRlRzdT97fm5SJkky
JUh6JXtzVVVYPkUldVQlX1pBYC1nUit3TD9YI3J6Z3d+QT8jPkJ5PiEocSFIbgp6QGhtcUI3UmVM
amRFeVlyXlZXWSlvLTVITlYmPHJBcH1KVW5RTz9tUjxJdVZiTEApS1pKMV4oWj1QZ0MzYnkpX0UK
ejkjUEJuQld7UX5JZE8wYFpadHAqN2gpYnw9fDgmdmhOeFFub20jRnUzKExQfVJtQmsoVzl7enw/
ZWgoVlhWJjZPCnpMcXpxJFZgQDBWKnM1OS1SVE8tTGB2THV5ekxOOWZBUzJRM01uN1Q+WGUtZH5A
Tz9MUDl5UShwSFMkKj5xb3Aofgp6e3gqWGZGbz9tZ1V3aXtxcmEofXV7KihxI19GQGpkJXhzeSVO
M0NmX0VNdUMzR3JCS0Z3SDh3cmxjUD5zVjxycl4Kemg0Q2BfMl94OGw2UWZvaHMwNVp0WmlVeWto
NWluMEVwfFBxSFJgU3w/VGZXM3M3dmpFNisxRmctUHM/RVZJPDZMCnprIXg4Kj9PQm80Y1F+Jk5o
OygxfUpPMHB+VXpTLXx2SmxqamxWZnlleyohYklyOHZHYU09fCVTMlA+dmd6RzU7cwp6IV5jKClT
eHBmZ0MzVDxpUGhhJGtlVG5RUmAwZzJIdGlWdntER2orSGRPM0ZRdWBvUSVQPyV6ai1Wa2xNRCl4
I20KenYkMkRXeWV2WDNtTHhDVzliSX4kZ2lTVUhYXk99Pz5EbjUqZzkwfTAhRn5PVDt5Uno/PjZl
NlBpMzVGdzVHdV9qCnpSdVVtWFhxUmlMQCpGUkxQSmByJmlVez4wOUVYdWQwQil+VTw+WXczNipv
eUAjP1Z3VSVCIWxFQ04pP3FCZDBPeAp6UGk0dkFncmh8VkxaRiNGU0x3R25adkp2d3IyazZPLTdw
M3tFKktNfHZ1SE08KSorfWh4bEU+Wm1qZSZ4TFNGYDYKendyfTVsa0VtfHM4cnw3SXFgKiotVnBO
e3JoUjZiPCV1ZndCYTNVeXYpWUlpZWgzRTM1cUA7TDwhIX5ZM1dLeXNFCnplSjNOYnQrbjtHcDtz
P0lnQDxPLXcrdGlWcWpwd3MzaTFCcFJmbGFiNyQ1bENyQ1BaIWYtcTwqWGpeR3RnZHdDbQp6WF5w
MWJaKXA2ZEp9ayR9UG4zUmNDdWxiUmVGaXRzbC1LZm9qVWNgbTJeN25wKGZ9OEY/IXhgTUpOZyYx
VnVldk4KelN0IT1OaUNXfVMpJUt6d0B9PnxgPyEqQG5ma3VUbFlYVnJ+OD4qeWw5eTlycTM3bEt3
KWloa0hgZWFYQk9VIUhKCno8b0pMLVNMIztOT1glZjNtNT9PIT5paEM1Q2dPKVhubytCejhBaEli
MGxaflNLUFI8aWorbTMjKkNIZUsqSG17bwp6WWFWQUpaNVMmekQ3ck1DaiV7LWt3PV9TY1E8X2Nx
dGlvJD1xendzJVQhV1VmVWYjZj5rdyFlI1FEQjl7P1BXPVoKeihqUzM3JD16N241c1hgNEAzKVpB
Rmtffl9BQElkey1KMmsoUzZtMT42V3h6SWRWI241VS00cEcwclpWSW4lViZJCnpsajxaOCU2NXdm
dGBLRFoocHowYzg4RzcoUGJnQjZjRjQoS1FId3RNU3pfMU5VXzNXZ2pMMDdiWkpRc1JqJmZQOwp6
QDxUVTc1aTQxQ1NXR04pWlBfRFlLajdvbjl2U1YlKCVReipZRXRwNWx9X3hYKytnY1MhZylidUF+
dnBRR0VNMXoKekVCYm1kNi1vfGA4Q3oqbXEhWEdhanh5eFYhe3JjLWZ7cnNROzVPRFVfaW1RKyhu
KytFZld3aHF2UklOeGhpQzZTCnpwKHc2aHVpUE11RkQ9cWhkaElOWHdiZShPLSNjTUUoTnw2RExt
aFElXzhQN3N3ckNNU156SHFyPT5fbGtjKTNKYgp6QTN6cndeUz9Vb3xFR2kteFo4SXRVcUJXOFpZ
MHB+eloqKlVEQSpWR0ghMkQzWnhHUGUxeEQ4STNBY3ZyM0JmWkcKeilQZDkyMSNQRmcqJkNwM1hZ
QWg5Zz0yPStKSmNJQWFicnZKQj9aVVhAP3h4ZDJ+b1gtYm5jUTJPdDdkK3deQUozCnpuTj1PM1Vq
Vj1JSlpAVkpkXnlmYll+eTVzZ041KmhePyZOeVVQP0UwVGEmd09ra0FQSGZ8JHE1NnlBJGNZNVQ3
Ugp6ZFRaOzYoUWFkNFI0ej1RSGt6VzlCSHd9YUNZajJBeHwzRnMhRmRjRzZeeDF+PUtqOzhEVzdE
emh0RGNuS3BNcyUKekZ3fHIxMyR2cTErPjxNcGp1NDRzTTMjRGRsez5wVnFILVA+U2Iyb31iem1o
dz5MVXdweX5WVzd2c2ZxQEt2OVcpCnphKDtiK2xDd0wydERqZnVWSX56WktJbG9kKUtAJW54U2Mr
PGRCXy1qTHJLbGNXRi1iRV9VPG1+ZlRTQ3dsK3g+eQp6VF5EZWctd2pTVz1NT1BScVApXlRlJT9H
N0JHbGMqcFB6VTZqan4odD9AKkxWcnMqYnN1WVk+JmZUd2Rub1lFdUQKekV2MGs3PFZtdDJgcUBm
WEVLXkMpbGt6Plc5QVZsKzlnZ2M3M00kY2g0WFVRU3Qla1d5KGNSbyFWa0tCcmBJSE1NCnp3O1pD
TkJDSkN3QChOa0w4SGBnPWhYdW5ob0kwIV47a19AcmNKZGRXaUxZem1DWTZNVjJFMUBSJG4mY0VB
a1EyQgp6TVJ+NDduPX5RcSU3XnoybUJ6dmVlY147RG0kWT1aT3hwc3VuWlozTmByTTR0Xm4zSUtw
MjJhcDchZFcrXmkrQ2QKeilwMiVXc24wIzQmclJvNGBXc3d+ckZ6JEs7bXZ1bW1NZ2p9OEAjYWdK
YkckOUF1ZyFtOV5DYCQ1K29FOERebGdMCnp4WUZ8RTk+K19mOHBTPE4oV1lQVSliY0pYPFk1Nml4
eDQ+MkE9OWZnRWRELSZgITVARVFCTTYoN3JOSEsldFFAegp6VmZiSlRJSE9TJSlDSUJ1YFVZZTRi
dWwpKmx4UlMzQjAyY3Y1VyNAaE5kVDxtSk9uSldHeD1tfEVvPXdhR310TGQKejU3UFZCNFB7eGIt
bHcmZzdrZTJpMEhzYTM4NVpENTs1IXU8N3pvU3tAYUVkMit3Yl9IdF8zZ3JhQSVaVCFMVyEhCnp5
ZzlCRSRBK0wxWiVNRikmZlZEfjJCJWI3dmhWVnopJDEjT3J+a3RqOXFpc1g2enx9aSUzeVE3dXpD
ZiteSWg3bQp6OXVjX0kmPG5kWDAmQyNUJmJZOF56YSk4eWx3ZCY9ZVJvVD1VbjRpPCUhPS1qcjI0
MEAwRkptSk5HK2NZQFJXYm4Kemk4LXtSWE1LRUllPGQwODZgQ1o5X2tNU2JoQHVhYEhySyRkMUR5
c2MlTTRhSCVJRmk7YURkelVlKCF8SGhjOWN0CnpRejc2eVJ4KE4jVH00R09fMjVfMm5EcWJzWHYh
eTw/eCViTWBqQWAtJlZPN1hsaHBTJCgxKFlJXzEpSXNJIVlxSQp6T1lWfj0lZXhBS0tiJSZoYlFj
NSYwUH1nM1ZCb349c3NlVzgrMikrMnxMRX09RUgqfkhXd1k8Tis/TERhIStuUkYKel8wJmIqdllW
UWtKVTFQLVMqbkhPbUIoYT01PyQ2PjIpaz5OOzxJbmJAZFYzKW0qZ0okXlhDTUEkdW8pN3V0dEMm
CnpQZSo+fGZvekd+aWlSS3JTd3QpU1RzMzkwYFJfQmh8RlIoJCgzb2M9bmtAQ2YxUDJBVXNSYXV8
aio0O1Erby17Ygp6PU1zbHtMZVZmd3w3U3dTXkslYWZMWmpvJT4+cXtebGlCXnt7WFA/Z252N0JW
Jn0jSTN2UnM2Km1vWD41SklYeWcKek5sZ3xkKjw1akxNdlR5WVVSbmYoc2dSXkVFcztmKXV1fiVL
OHJXNWxEfmVVaV9yUTM9aWR1Z1dsak1TQXtTRzdVCnpFbHhKfUkqVW15Vi0hLSZMJVU7c1c+VF58
V3YtUjVxZEZMJCQyNEh4P0JuQ305WVViRnlgMGRvcEFLaEZvMXxOSQp6JUxEbDBZdkQpJXEqSj1W
V2Jqc3UpP3VTNTZvO0ZHYzMzcjVhc3o3Um9ONVBGZ1FSSzhGdlE5SihwIWMxcFpHdkoKekhefG9e
WjRReEY1TG1taHNXcGImJVFRdk00Tj84MD58SSE3YmRIPW4oblBzT0dgYlRFaXpONkRiP0t3S0pP
Q2UkCnpKNGYwUUltVHxzclAzK1IpR005aihRPTZzYD5YQDlIa3pPcUh+USMpeUUldGlEbWdUdmpk
bnttSzNiTEYyRjhOdQp6QG0rKWBSYm04Rl81cilWQiRPRjRpdT1nZUB0ZG5+e2UoI2tvMj9UNXlk
ZHBGPHAkYz9pRSpYWlA5e3FfS0dPV2QKeigjcyMqZD9zOChJcjRtMUNaQFllX3w1QEw1WnpXejVa
UW5VcUZpTnQqc041WHpua3BAYm5UQnZOPFBLbXt1SUl1Cnp3RXJKWjBWQFQmPzx2fGU/akJ9NDB+
bEdxQyl9V013PWFEbDklPyUmaG02QkY+VzQhczIwK2Fud0t6fE0oNnRaQAp6WUEhVldXJnlOdjA9
Vl9oOGhwbmZFOGAjLUdDcCo3IU0tVT9wailSRDQrKU5LZEpyYU9mP0xsI2FCd0VIYXVoKUYKelE5
IUZUYlUzTWohVDNLamJATkcwZktTbVJwRntNQXZoOHotSzhGWm1uRSRWQyt2aTA0IS1uTU41UGM1
T1p4KlVACnoqenx3UmskeWhXeyYzWHhiQkkyTj1yZVd2YiFIfn5HclJzUUt0NX08fE1GN1h7fHt5
Q1ZDZTJzLSM/N2plUlR4PApSbXZAIURjODxIVWNBV2JEZSpqR0k8dW17UQoKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXItY2Fj
aGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLXNoYWRlci1jYWNoZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGNkYzU5NWQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLXNoYWRlci1jYWNoZS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSw0ICswLDAgQEAKLSAgICAgCi0gICAgIAotICAgICAKLSAgICAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXItY2Fj
aGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1z
aGFkZXItY2FjaGUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODdmYTY1Ni4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItc2hhZGVyLWNhY2hlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi08IS0t
IFRoaXMgZmlsZSBzaG91bGQgdGVzdCB0aGF0IGN1c3RvbS1maWx0ZXJzIGNhY2hlZCByZXNvdXJj
ZXMgYXJlIHNoYXJlZCBiZXR3ZWVuIG11bHRpcGxlIGVsZW1lbnRzLiAtLT4KLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgY2Fj
aGVkIHNoYWRlciByZXNvdXJjZXMgYXJlIHNoYXJlZCBjb3JyZWN0bHkgYmV0d2VlbiBlbGVtZW50
czwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFi
bGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0
KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUo
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAotICAgICAgICAgICAgZnVuY3Rpb24gcnVu
VGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4g
dGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0Pgot
ICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAudmVydGV4X3NoYWRlcgotICAgICAgICAgICAg
ewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvdmVydGV4LW9mZnNldC52cycpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5mcmFn
bWVudF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
ICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hhZGVycwotICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVy
dGV4LW9mZnNldC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBu
b3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAg
ICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tIFRl
c3Qgb2YgY2FjaGVkIGN1c3RvbSBmaWx0ZXIgc2hhZGVycy4gWW91IHNob3VsZCBzZWUgMTIgYmxv
Y2tzIG9mIGNvbG9yIGJhcnM6IDQgaWRlbnRpY2FsIGxpbmVzIHdpdGggMyBibG9ja3MgZWFjaC4g
RWFjaCBsaW5lIGNvbnRhaW5zCi0gICAgICAgICAgICBhIGZyb20gbGVmdCB0byByaWdodCBhIGJs
b2NrIGEgYml0IG9mZnNldCB0byB0aGUgcmlnaHQsIGEgd2FzaGVkIG91dCBibG9jayBhbmQgYSBi
bG9jayB3aXRoIG9mZnNldCB0byB0aGUgcmlnaHQgYW5kIHdhc2hlZCBvdXQuIC0tPgotICAgICAg
ICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2Uu
cG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVz
b3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVy
cyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAgICA8YnIgLz4K
LQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9y
ZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNy
Yz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJv
dGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAg
ICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9z
aGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcg
Y2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBz
cmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJm
cmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNl
LnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXIt
cmV1c2UtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZGM1OTVk
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1zaGFkZXItcmV1c2UtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCArMCww
IEBACi0gICAgIAotICAgICAKLSAgICAgCi0gICAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUzNGMxZjguLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXNoYWRlci1yZXVz
ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzQgKzAsMCBAQAotPCEtLSBUaGlzIGZpbGUgc2hv
dWxkIHRlc3QgdGhhdCBjb21waWxlZCBjdXN0b20tZmlsdGVycyBhcmUgc2hhcmVkIGJldHdlZW4g
bXVsdGlwbGUgZWxlbWVudHMgYW5kIHRoZXkgZG8gbm90IGNyYXNoLiBUZXN0IHBhc3NlcyBpZiB0
aGVyZSdzIG5vIGNyYXNoLiAtLT4KLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+
Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgY29tcGlsZWQgY3VzdG9tLWZpbHRlcnMgYXJl
IHNoYXJlZCBjb3JyZWN0bHkgYmV0d2VlbiBlbGVtZW50czwvdGl0bGU+Ci0gICAgICAgIDxzY3Jp
cHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZp
bHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KGZhbHNlKTsKLSAgICAgICAgICAgICAg
ICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2Nl
ZWRlZC4KLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIGNoYW5nZVN0YXRlKHN0YXRl
KSB7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSBzdGF0ZTsKLSAg
ICAgICAgICAgICAgICAvLyBGb3JjZSBhIGxheW91dC4KLSAgICAgICAgICAgICAgICBkb2N1bWVu
dC5ib2R5LmNsaWVudEhlaWdodDsKLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpIHsKLSAgICAgICAgICAgICAgICAgICAgLy8gRm9yY2UgYSByZW5kZXJpbmcuCi0gICAgICAg
ICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmRpc3BsYXkoKTsKLSAgICAgICAgICAgICAg
ICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1
blRlc3QoKSB7Ci0gICAgICAgICAgICAgICAgLy8gVHVybiB0aGUgc2hhZGVycyBvbi4KLSAgICAg
ICAgICAgICAgICBjaGFuZ2VTdGF0ZSgiYWxsLXNoYWRlcnMtYXBwbGllZCIpOwotICAgICAgICAg
ICAgICAgIC8vIFJlbW92ZSBhbGwgdGhlIHNoYWRlcnMsIHRlc3RpbmcgdGhhdCB0aGUgY29tcGls
ZWQgc2hhZGVyIGNhY2hlIGlzIGludmFsaWRhdGUgY29yZWN0bHkuCi0gICAgICAgICAgICAgICAg
Y2hhbmdlU3RhdGUoIiIpOwotICAgICAgICAgICAgICAgIC8vIEFkZCBiYWNrIGp1c3Qgc29tZSBv
ZiB0aGUgc2hhZGVycy4KLSAgICAgICAgICAgICAgICBjaGFuZ2VTdGF0ZSgic29tZS1zaGFkZXJz
LWFwcGxpZWQiKTsKLSAgICAgICAgICAgICAgICAvLyBUdXJuIG9uIGFsbCB0aGUgc2hhZGVycyBh
Z2Fpbiwgc28gdGhhdCB3ZSB0ZXN0IHRoZSBkZXN0cnVjdGlvbiBvZiB0aGUgY2FjaGUuCi0gICAg
ICAgICAgICAgICAgY2hhbmdlU3RhdGUoImFsbC1zaGFkZXJzLWFwcGxpZWQiKTsKLSAgICAgICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3Jp
cHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIGJvZHkuYWxsLXNoYWRlcnMtYXBwbGll
ZCAudmVydGV4X3NoYWRlciB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3Rv
bSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzJykpOwotICAgICAgICAgICAgfQot
ICAgICAgICAgICAgYm9keS5hbGwtc2hhZGVycy1hcHBsaWVkIC5mcmFnbWVudF9zaGFkZXIsIAot
ICAgICAgICAgICAgYm9keS5zb21lLXNoYWRlcnMtYXBwbGllZCAuZnJhZ21lbnRfc2hhZGVyIHsK
LSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNv
dXJjZXMvY29sb3Itb2Zmc2V0LmZzJykpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgYm9k
eS5hbGwtc2hhZGVycy1hcHBsaWVkIC5ib3RoX3NoYWRlcnMgewotICAgICAgICAgICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycp
IHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpKTsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCki
PgotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9y
ZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNy
Yz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJv
dGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAg
ICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9z
aGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcg
Y2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBz
cmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJm
cmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNl
LnBuZyIgLz4KLQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhf
c2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1n
IGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmci
IC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMv
cmVmZXJlbmNlLnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdHJhbnNmb3Jtcy1hbmlt
YXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggOWNhNTY5ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdHJhbnNmb3Jtcy1hbmltYXRpb24tZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi0gICAgIAotUEFTUyAtICJ3ZWJr
aXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1peC1mcm9tLW5vbmUtYm94IiBlbGVtZW50
IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRl
ZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwgMCwgMCkpCi1Q
QVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LXRvLW5vbmUtYm94
IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hh
ZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwg
MCwgMCkpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LXNp
bmdsZS10cmFuc2Zvcm0tYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86
IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0
cml4KDE1LCAwLCAwLCAxNSwgMCwgMCkpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkg
Zm9yICJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWJveCIgZWxlbWVudCBhdCAxcyBz
YXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5v
bmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCgxMDAsIDAsIDAsIDEwMCwgMCwgMCkpCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LW11bHRpLXRyYW5zZm9ybS1i
b3giIGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1z
aGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybTEgbWF0cml4KDE1LCAwLCAwLCAx
NSwgMCwgMCksIHRyYW5zZm9ybTIgbWF0cml4KDEwMCwgMCwgMCwgMTAwLCAwLCAwKSkKLVBBU1Mg
LSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5z
Zm9ybXMtY291bnQxLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBj
dXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJp
eCg1MCwgMCwgMCwgNTAsIDAsIDApKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZv
ciAiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYm94IiBlbGVtZW50IGF0
IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52
cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDUwLCAwLCAwLCA1MCwgMCwgMCkpCi0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci10
cmFuc2Zvcm1zLWFuaW1hdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDViMWJhZjYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSwxMTAgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1sPgot
PGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENT
U0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAg
ICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAg
ICBtYXJnaW46IDEwcHg7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwotICAg
ICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1
c3RvbS1taXgtZnJvbS1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjog
Y3VzdG9tLW1peC1mcm9tLW5vbmUtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAg
ICAjY3VzdG9tLW1peC10by1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlv
bjogY3VzdG9tLW1peC10by1ub25lLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0KLSAgICAg
ICAgI2N1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1ib3ggewotICAgICAgICAgICAgLXdlYmtp
dC1hbmltYXRpb246IGN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmltIDJzIGxpbmVhcjsK
LSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLW1peC1kaWZmZXJlbnQt
dHJhbnNmb3Jtcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20t
bWl4LW11bHRpLXRyYW5zZm9ybS1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246
IGN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0K
LSAgICAgICAgI2N1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQxLWJveCB7Ci0g
ICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNm
b3Jtcy1jb3VudDEtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICAjY3VzdG9t
LW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYm94IHsKLSAgICAgICAgICAgIC13ZWJr
aXQtYW5pbWF0aW9uOiBjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1hbmlt
IDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0
b20tbWl4LWZyb20tbm9uZS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSk7IH0KLSAgICAgICAgICAgIHRvICAg
eyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNm
b3JtIHNjYWxlKDMwKSk7IH0KLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1l
cyBjdXN0b20tbWl4LXRvLW5vbmUtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgz
MCkpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8t
c2hhZGVyLW5lZWRlZC52cykpOyB9Ci0gICAgICAgIH0KLSAgICAKLSAgICAgICAgQC13ZWJraXQt
a2V5ZnJhbWVzIGN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmltIHsKLSAgICAgICAgICAg
IGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwg
dHJhbnNmb3JtIHNjYWxlKDApKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0gc2NhbGUoMzApKTsg
fQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1taXgtZGlm
ZmVyZW50LXRyYW5zZm9ybXMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgxMDAp
IHJvdGF0ZSgwZGVnKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSBzY2Fs
ZSgxMDApKTsgfQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3Rv
bS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0xIHNjYWxl
KDApLCB0cmFuc2Zvcm0yIHNjYWxlKDEwMCkgcm90YXRlKDBkZWcpKTsgfQotICAgICAgICAgICAg
dG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0
cmFuc2Zvcm0xIHNjYWxlKDMwKSwgdHJhbnNmb3JtMiByb3RhdGUoMGRlZykgc2NhbGUoMTAwKSk7
IH0KLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tbWl4LWRp
ZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50MS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHNj
YWxlKDEpKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0gcm90YXRlKDBkZWcpIHNjYWxlKDEwMCkp
OyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLW1peC1k
aWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBy
b3RhdGUoMGRlZykgc2NhbGUoMTAwKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHNjYWxlKDEp
KTsgfQotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLSAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3Vy
Y2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vYW5pbWF0aW9ucy9yZXNvdXJjZXMvYW5pbWF0aW9uLXRlc3QtaGVscGVycy5qcyI+
PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotICAgICAgICBj
b25zdCBleHBlY3RlZFZhbHVlcyA9IFsKLSAgICAgICAgICAgIC8vIFthbmltYXRpb24tbmFtZSwg
dGltZSwgZWxlbWVudC1pZCwgcHJvcGVydHksIGV4cGVjdGVkLXZhbHVlLCB0b2xlcmFuY2VdCi0g
ICAgICAgICAgICBbImN1c3RvbS1taXgtZnJvbS1ub25lLWFuaW0iLCAgMSwgImN1c3RvbS1taXgt
ZnJvbS1ub25lLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVl
ZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybSBtYXRyaXgoMzAsIDAsIDAsIDMwLCAwLCAwKSkn
LCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLW1peC10by1ub25lLWFuaW0iLCAgMSwgImN1c3Rv
bS1taXgtdG8tbm9uZS1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwobm8tc2hhZGVy
LW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwgMCwg
MCkpJywgMl0sCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LXNpbmdsZS10cmFuc2Zvcm0tYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1h
dHJpeCgxNSwgMCwgMCwgMTUsIDAsIDApKScsIDJdLAotICAgICAgICAgICAgWyJjdXN0b20tbWl4
LWRpZmZlcmVudC10cmFuc2Zvcm1zLWFuaW0iLCAgMSwgImN1c3RvbS1taXgtZGlmZmVyZW50LXRy
YW5zZm9ybXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVk
ZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCgxMDAsIDAsIDAsIDEwMCwgMCwgMCkp
JywgMF0sCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0iLCAg
MSwgImN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybTEgbWF0cml4
KDE1LCAwLCAwLCAxNSwgMCwgMCksIHRyYW5zZm9ybTIgbWF0cml4KDEwMCwgMCwgMCwgMTAwLCAw
LCAwKSknLCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jt
cy1jb3VudDEtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3Vu
dDEtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMp
IG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCg1MCwgMCwgMCwgNTAsIDAsIDApKScsIDJdLAot
ICAgICAgICAgICAgWyJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1ib3giLCAid2Vi
a2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0
cmFuc2Zvcm0gbWF0cml4KDUwLCAwLCAwLCA1MCwgMCwgMCkpJywgMl0KLSAgICAgICAgXTsKLSAg
ICAgICAgcnVuQW5pbWF0aW9uVGVzdChleHBlY3RlZFZhbHVlcyk7Ci0gICAgPC9zY3JpcHQ+Ci08
L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tbWl4LWZyb20t
bm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtdG8t
bm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtc2lu
Z2xlLXRyYW5zZm9ybS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3Rv
bS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJi
b3giIGlkPSJjdXN0b20tbWl4LW11bHRpLXRyYW5zZm9ybS1ib3giPjwvZGl2PgotICAgIDxkaXYg
Y2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQxLWJv
eCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLW1peC1kaWZmZXJlbnQt
dHJhbnNmb3Jtcy1jb3VudDItYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGlkPSJyZXN1bHQiPgotICAg
IDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3gtZXhwZWN0ZWQuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtYm94LWV4
cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJhMGNkZjcuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUt
bWVzaC1ib3gtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLTwh
ZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVf
bWVzaFNpemU8L3RpdGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVz
dGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3
aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1
NSwgMCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAg
IDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJv
eCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3guaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtYm94Lmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZlNjVkYTQuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3guaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+
Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfbWVzaEJveDwvdGl0bGU+Ci0gICAg
ICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENT
U0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewot
ICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93
bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwot
ICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAg
ICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0g
ICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJlZDsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
dXJsKCcuLi9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcycpKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQg
ZGl2IGlzIGNvbG91cmVkIGdyZWVuIGlmIHVfbWVzaEJveCBpcyBjb3JyZWN0bHkgc2V0IGFuZAot
ICAgICAgICAgICAgcGFzc2VkIHRvIHRoZSBzaGFkZXIuCi0gICAgICAgICAgICBBcyBvZiBub3cg
dV9tZXNoQm94IGFsd2F5cyByZXR1cm5zICgtMC41LCAtMC41LCAxLCAxKTsgdGhpcyBzaGFsbCBj
aGFuZ2UKLSAgICAgICAgICAgIHdoZW4gZmlsdGVyIG1hcmdpbnMgd2lsbCBiZSBpbXBsZW1lbnRl
ZCwgc2VlOgotICAgICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTcxNDAwCi0gICAgICAgICAgICBGYWlscyBpZiB0aGUgZGl2IHN0YXlzIHJlZC4KLSAgICAg
ICAgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci11LW1lc2gtc2l6ZS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLWV4cGVjdGVkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZkYmNjM2UuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLWV4
cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdCB1X21lc2hCb3g8L3Rp
dGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAg
ICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9h
ZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0g
ICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS1tZXNoLXNpemUuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggZTI4MWQ4NC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS1tZXNoLXNpemUuaHRtbAorKysgL2Rl
di9udWxsCkBAIC0xLDM2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhl
YWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfbWVzaFNpemU8L3RpdGxlPgotICAgICAgICA8c2Ny
aXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQot
Ci0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5n
IHN1Y2NlZWRlZC4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNm
aWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAg
ICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
ZWQ7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIHVybCgnLi4v
cmVzb3VyY2VzL3UtbWVzaC1zaXplLmZzJyksIDEwIDIwKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgot
ICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVk
IGdyZWVuIGlmIHVfbWVzaFNpemUgaXMgY29ycmVjdGx5IHNldCBhbmQKLSAgICAgICAgICAgIHBh
c3NlZCB0byB0aGUgc2hhZGVyLgotICAgICAgICAgICAgRmFpbHMgaWYgdGhlIGRpdiBzdGF5cyBy
ZWQuCi0gICAgICAgIC0tPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4K
LSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNpemUtZXhwZWN0ZWQuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LXRleHR1cmUtc2l6
ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlMzY2YTFkLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci11LXRleHR1cmUtc2l6ZS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxl
PlRlc3QgdV90ZXh0dXJlU2l6ZTwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAg
ICNmaWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMCwgMjU1LCAwKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8
L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGlkPSJm
aWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNp
emUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11
LXRleHR1cmUtc2l6ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNTkyMDZi
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci11LXRleHR1cmUtc2l6ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAot
PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3Qg
dV90ZXh0dXJlU2l6ZTwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2Vi
S2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9u
IHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8g
cnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Njcmlw
dD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNvdXJjZXMvdS10ZXh0dXJlLXNp
emUuZnMnKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgot
ICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAg
QSAxMDB4MTAwcHggcmVkIGRpdiBpcyBjb2xvdXJlZCBncmVlbiBpZiB1X3RleHR1cmVTaXplIGlz
IGNvcnJlY3RseSBzZXQgYW5kCi0gICAgICAgICAgICBwYXNzZWQgdG8gdGhlIHNoYWRlci4KLSAg
ICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYgc3RheXMgcmVkLgotICAgICAgICAtLT4KLSAgICAg
ICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LXUtdGlsZS1zaXplLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggY2VjYTA2Ni4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUtZXhwZWN0ZWQuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0g
ICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfdGlsZVNpemU8L3RpdGxlPgotICAgICAg
ICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgp
Ij4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXUtdGlsZS1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggODk4MDQ5Ny4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDM2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAg
IDx0aXRsZT5UZXN0IHVfdGlsZVNpemU8L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAg
ICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAvLyBX
ZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4K
LSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNmaWx0ZXJ0ZXN0Ym94
IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgICAgIHdpZHRo
OiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgICAg
ICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIHVybCgnLi4vcmVzb3VyY2VzL3Ut
dGlsZS1zaXplLmZzJyksIDEwIDIwKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4K
LSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0t
Ci0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVkIGdyZWVuIGlmIHVf
dGlsZVNpemUgaXMgY29ycmVjdGx5IHNldCBhbmQKLSAgICAgICAgICAgIHBhc3NlZCB0byB0aGUg
c2hhZGVyLgotICAgICAgICAgICAgRmFpbHMgaWYgdGhlIGRpdiBzdGF5cyByZWQuCi0gICAgICAg
IC0tPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4KLSAgICA8L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItdW5hdmFpbGFibGUtdmFyeWluZy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXVuYXZhaWxhYmxlLXZhcnlpbmct
ZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzJlZTAzOC4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
dW5hdmFpbGFibGUtdmFyeWluZy1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTUg
KzAsMCBAQAotPCFET0NUWVBFIEhUTUw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VW5hdmFpbGFibGUg
dmFyeWluZzwvdGl0bGU+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2Zp
bHRlci10YXJnZXQgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVp
Z2h0OiAxMDBweDsKLSAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAyNTUsIDApOwotICAg
ICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImZpbHRl
ci10YXJnZXQiPjwvZGl2PiAKLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11bmF2YWlsYWJsZS12YXJ5aW5n
Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdW5h
dmFpbGFibGUtdmFyeWluZy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0OTA5
Nzg2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci11bmF2YWlsYWJsZS12YXJ5aW5nLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyMCAr
MCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxoZWFkPgotICAgIDx0aXRsZT5VbmF2YWlsYWJsZSB2
YXJ5aW5nPC90aXRsZT4KLSAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjZmls
dGVyLXRhcmdldCB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWln
aHQ6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7Ci0gICAg
ICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2Vz
L3VuYXZhaWxhYmxlLXZhcnlpbmcuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMg
aXMgYSBuZWdhdGl2ZSB0ZXN0IGFpbWVkIHRvIGNoZWNrIHdlIGRvbid0IGNyYXNoIHdoaWxlIGxp
bmtpbmcgYSB2ZXJ0ZXggc2hhZGVyIGFnYWluc3QgYSBmcmFnbWVudCBzaGFkZXIgd2hlbiB0aGUg
bGF0dGVyIG1ha2VzCi0gICAgICAgIHVzZSBvZiBhbiB1bmF2YWlsYWJsZSB2YXJ5aW5nIHdoaWNo
IGlzIG5vdCBiZWluZyBwYXNzZWQgZnJvbSB0aGUgdmVydGV4IHNoYWRlci4gCi0gICAgLS0+Ci0g
ICAgPGRpdiBpZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+IAotPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY29sb3ItY2hl
Y2stZXhwZWN0ZWQucG5nIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3Qt
Y29sb3ItY2hlY2stZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1
YTI4ZGY2M2M0OGMyNDE3ZjU2MGFjZDc5MDg1MTQ4NTM5OTAxMDdmLi4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/
ZDAwMDAxCgpsaXRlcmFsIDMxNDE3CnpjbWJAdVhILSpQQEhRJCVRQmU/NGA2MGNGRy0pQ29tRUl5
PEFQfCtfckkhJGppaHYtIW0hTEBSeShoOElMVEoobgp6NVR0fTJBfXMqfDxpYEt8dUtWNyo/JGBT
JVN0bj1qR2tlYkxuUDw7RGxoX3hBU35zdVh6a2NiYHJKRmsxPmMqRVkKeihRc2U3TUUmeVc3MFEq
SWZPbF54QUhzZWJGYTdNQzlxaW5Fe1hIJjglZ1EtOCRqQ3sqdjZHUlBtOX0kfmxYakd+Cnptdzlk
ZmBtdjs9alFrU15YXkdieW1vQk1ZKG91aEU4YnF+fFBaej03bFV9I3pLQX4mbigpP2haLTYtUzVD
R315IQp6PntvQlEzOXM0TT9BKkIrVz5nPXlqUHgkO3ZYMm0wd2NmVV48byU3NWJmVjRUPVUyWnNh
UDZ9Qm9BaFFZazM2eSYKekBsYz1tMFNhQjFvZl9QPWMje3BTdjhiKHBobmQqYWl1bXpZSmlVND07
dTA8UUM5MTF4bSNGYEplYThMYl9BXmQ8Cnpze2l9S3xOUW95SC1oRkomO1AjVmY4WUk7PXt3YzZv
M2dBPXxKVDYoZWYwX1YlPlFkWD9weWIlKnBvKElxJSE/Swp6cFRiUjw/JmtsRyk0ak5OPVBCO3tU
KExUdGlGPWdlWUxpfilQQSVFQng1QmclTW8pa3lHY3hzUGV6OGU3bytXKmUKel9Ad1Q8Nz5CRGMj
QHdKU2JqNXBCNyUrMlJpaEwoPFlsY2NWSEQraHdoPHY/O19zJExLX0ZNbGNFJGRsIV5CSUVACnpW
TlF8aWUjeTd+ZC01bV9yWnJGJCowJnk0XiFOQGxeIyQjZmd3cyFtT1pCJVJ6RiFtaUgkIXJuSGtm
b3g7P2Q7QAp6SEk9SWAyfEpZIUQodmBZSXdnMns8NjxJTzdVNFk0NHQ3enx7bVo8IWdsbT9LdCoj
IWJRQWN2emlvNDA2JV94JSQKendaO1o7XmFgbmMoWWg3JEMqbSs+ZCowKz5JWUZRRFFtKkgheWBu
MmhWQG1vN1BlfklPcVJ2bnptQXM8dVc/QFgkCnooRUpgdyVVQHtYOXQ9ME4mckRsKDxiU28zTz9q
Smw5IUd2PnhOMV4mbyVHRE9XQiNncns9Mig5UkxJV3sjeDVKRQp6O2J2OTtMPndSUnc2dENRNkxE
d3lzSVc7bmBRUTgjXldWfHY1TUk4bWBKMn0kdlJsK0BvMXpjN3NIaGotTVc3cVEKelZAQTczR2B1
Wmt8SGUjVzMrdDNxQ31ZJCs3VmNDRCZLe3I5OCY4V0dpO0pEc0FfanBeXmp2aik+KSM4YClfY2RY
CnpKQnl8PW5GdTB2KCVYd1AyO0h+KSQ5UDBHSl44cEwhQ3BFdXFeaXF9TWQxa3F4Yk9KQVNeTnlS
Q2w+WkA2LXE8Wgp6PzZmJEZufkVyRSE4Yk5STXJKV2BwNXxiUVFWM0JOTiohOzFRPTd7NiZMPihi
M0NhU3NtI1YzTHZrZipANzh4cDwKeiUxNW1eWm1JPys1OGtpU1Amdj1nITxKOUkrLWZrdileM3h6
NF5DKyhUZVJUaERhKENxc29ubHZtVnBBJGFraSs2CnphNER6Rj4wbDBffDVORmR3cURmMkZTbGZq
bG96dD0mVSVeNHFNK3I4YWxVcEhwTDFUQmlEOWxWTUE+VDJlcUNlKQp6YFNIMmZtYjElP1h0ekp7
UUJvZS1CWlEyRzhZPHhAYlZXTGt7a3QqTj8lKUU7TWgoeC1tcEVsbEhkbFBFWnltNz0Kek9gM0dZ
QyVvSDtAKiQlT2tjRFdhOFNudlRAWUQ+ci1KXmZWNkBNXl5ObVl6OUFqdSZnK1RrO0oqaTNkTTt3
Q1VLCnopITdkKVlqaExqaUhpYjNlM21gd29pKXZ5OWYkKVJJPyZeP1B5dyVXR1gjTktNeSgxdmFt
Q3R9QjA8eHV1a2dtRAp6SUZoQF5xRFA8RG5BUkxJLTQhbyU4U2M7PD9qbFRRO09+bUJicz40T2A3
fk8rd0V7MTt7JSM/QEJ6ZXd9c2AkWlAKenBJaC02U3VKPj5wKG4rQ3RAdTtwKyZlcFl8TGlWSz9h
ITJxdWA/Z3smRHdzYVREVUhCYUZXWENWcUFxN3A+enRzCnpOJigldHl4RWdkVCFyTi1BTFgtfFhL
WVYmOUdDXldyJm5nWGc9dzM2RFR+SUA5Z2RfKGYmSW5fU2Y4RmJ1Y05DTQp6ZWJSSFEpcGxLbXpk
a041M1FvYE9gOH0oIyZwOFZvXjA4Yk17dXk/MUFlTT5Eb0VHZD5gRm1pdFVyZXRsWG42UlkKejQr
VEJuc3h+cGQ/I2dEe09xe0R9KCo7YDApZ0Q2SUhweklaVjA5ZCVqMDl5YiZscUVPb29PTU4xJFch
O1pwMHxACnppP25pT0xeWDVUOWp2ayk+V3dGMGVKbVNid0tJWWlnMHJMIVJnOW5vMVlfX2o9Z2I5
JDJDR15he3l5TER2ekFEJAp6P2FGdlVqMER4QkQzMEp+M0Y0THx1Yk5xTVh2WFJeUmdSfEl1O21Q
Y0BBN0pKb2V1Y29FJXJZMmZ3cWdQdTxRYHsKekl8MWdnWmVAQWx6VDZaNGB5KTl1LUl+cSp3Sm48
MVhNI0o9bUxYaF9NaDQ2UnBLdjEzelVeb2QzVysxfW9VRGpoCnozfE9SfmlIaEpMbElRPX51aThJ
OE4ySHw8SlE5UHIoNkp8Wi0oQmwxR0R2R044YXxqU1RYfVVFX096S2otQVRxdgp6Mi1aSHgpYWM8
aHMrZ0IoVzE1Z0hnNU1SfS0/cUU8XihkRFI3a0B3SDNEMzwyMDx1KjNNMn08QD5fNWszREttYmcK
ei19WEFVM2JYVURSNipFaiRYR2V9TDIyYjlqbGU4XytNPWZLPmA2WSZmdnhwZXdOVFVBdGpaLXJF
XkIrUChmUSlgCnpxY1NDJlZlUUc+aGoqXzF6KDQhLXpTdzs5Ym0jUD4pNX1oTzFXPXtkMHNzNG88
dzI3STdnVlkkSnJrdExPQWlRYAp6Q0RuVTB4YVAwaiZDQ0A8dD0mTldtPmQ4TzdiWH5pMzU9SXB1
RU53ZyleNXdqRmcpU3JeU0EldWkyK19JXzZuOTsKemZBPChYQnpBTV90Wmh0MHNxdSFDYkJPOGAp
QH1gQEQ4bEZDVyVBNHdTTXVKY3klZUpRJjx6QEBjXlQ7N1kkK3QrCnpyVENFRXNpVWB6dHAhIV9T
di00eHYlITY4dkAxPjhzTjs+MmtFQyQjdldlcj4hJUd6M24pSHMxJHxaMz81Kz82bwp6bDxpV3Ql
TzdBUjFuQ04rQkFLTHJUU0kxIUZ0QExlLTk9KGVaR2BESEUyZmhZNjsxNnc8YXROK2R4ZlJlZVA7
cDkKekpAbzFRKGo4bForaDFpYUtNRnItI18+dipea05leyEhPGFrVUkmKiNyOGFNOHQ3cyN6LX0z
Zj1wWVlzc1NHQWkpCnoqPkItP3hnSW14SHktaGcxMyZSaUlWVDh5V3tiU09uVSk2eFJfKl5qU1JK
TzxmZDZmTWNfbXJJMGg1SX0qX19GWQp6UGE0Tm1HeFduXmY3YVR6bnhSTWhYMkdheztOe24hMUUt
JU47QjVoJk8kQiolI0U8IzR7Zm9DNVljeHRneWU1K3YKemRSR3x7cW9MNytjeDYmRndYYSRlaHN0
ZSNrVCFYJig9TUA+Sip1cDJkfE5fPWo7PChsOyN2RGFtK3tGQF42V2hDCnpkMkxFQ0E4RUM4SGE8
Uk95eWpzdCphazsoXj1PP05jYEg5fXBvb3B0YGRrbWJkQ0BaK3B4YXBxQHRWMkZJamYjRAp6OGA7
YU9mTXNHIV5FfUhtMChZP0hlbSRrJVoqNVN+UVkmJl9tWkw1TmdrMEU3cUlfaUYoaVl7VzhKdVlh
RnB1b0IKeiUzJGpJXmpzJUJKfH07Rk12aElTMSpNdEtCRnV9OSUoZS11TilLZFB2dHVeWHchP3E/
PFBLZzB3RGIkaTFyOFZxCnpyfUZTPVhAa0NyTl5wPlR2TzZ8IyMje1NwPTFMdjU0M017eCF5JkVE
JEc2P0VCY0pRKFU/ISFwUm5+NEFYTTYxaQp6YD0yV1g8REBPIU0pWWQ9SWo+WjlQdzNyNENVdkRy
bmtWc3xfYlg1dkpHLWVwRUl+MmFMTS1vRmFWUyNhaH5maVAKem1ecDMlZW1JcVcrK1VsNCh6O2lL
Mjd+NytaXzUla3gxd19sZ0oxYjMtYmk3YXoofUI5JnloeCVfPSp5QFAqMHliCno+Y3lzXlIocmdO
TEd1N3J4R2xxZjtLVT1vOTYjTWJ1RHF9Km5QeV5oS3IjOTZQcj4kVypKZmhZe0h9JHEoZlkmVwp6
JCUkNmNsJjhzRVg7TlJDeyE5R2lhWn4kNXxLd3N6YzVITlFGaj1lLTlmLW9uQHIhP3Q0dT1DaFRo
TWA4aEQ4bHoKem92fDdtYyVtdEVGVSorfEN3WlN3VXxJKD48Xm5Cb3EhJThHVnFuSXpfZDAya01g
Z3g+NStSeFdVZCl7UjxCNlc4CnpWQVk7VWN4fGRgUX0yTVAyRksxMyEycmlOOypzMjBsWEtyfEYl
WiREeCRQVl82T2F7dnl2PkAxQCkqPmEhS3RqVQp6en4/Njh1UnMwTGRGJCM8ZyE7YmhNVl4qVmBz
QyFeI35Fe0wtZTNMfGZ3M3FtUiFoWn5yeytoJFJSZW9WcUZWNiQKenZHN2xYTEVTP2pEbEIqcD5F
dUJBO1YzKzxAa2pQbzNGPUpWRUBpKm9Vdl83KWxLIzdoZU1GZVlqSXsqenh2Ui0pCno0ZylTRjY5
ZzNMV1pkSFlkO0tuNmA5LWZtOT1EejVNOCNaK2UwLWpZMTw1RnVFdj43RlVXJTxZXkZuZkAmfnFX
cQp6VHZiSEQ2MGEoYHslZWVJcmRkQVNAd3BCemdGS3g/Y29YfHAjb35KVncjQ1F6TnYmUn5MdnNR
QnhxWEFjN0RwR0MKelVBfHdGVSRiUSRLRDNHKE1CN2B5STs8UUBDYVRCS1JzdUI1Mzw9LXQ5N0BT
PEdZQm4pJDFQU3EpeiNId2ZxIUN4Cnp2Tl5KITlYSVhGKV5oaCEzRD9QZSY4Jm4/Mk1xdnVwWjlI
Q3Z4cyYte3tGKnd2TlEzYntjPHg2WDM4QCRxV2gtcAp6d3VSPyNCfX47fTRqZ3NnbllgcVJaPEx4
THtlWD5PXmMrbCZtTE55UVFWKSghPHY0VV5JeFgkMkY/fXQ+YGRfWmYKejMzWikqWWVDMEA/T08o
JkpDR2pUKiMjZSU+RDshVDFNIXJfISl4d0Z6PD1QdFE9bytCOWtLTklJYCZGSU9YOW4mCnp4Njd1
NyVLfEdsKD8mUSp2PExwXlcoIVFOd1I7QypvQzBldHN0Pkd3e3QzcFZaLT1qISRfPUB6LUBnYGQ9
YTJZSAp6P0JzZHM0b3ZASmYtdyFuOE9OWiU4Vy1jaD43fGc/K19xSndxeVBpN1hFUj07M0Y3cztx
IVcwYG43Y0YlJEVPbEwKeip8eHkmM2xhaXc5SnNPbHU2OGl+c1gwbC1kYD5meXdJdTd1LV8zKWdk
SG5KXnBJYnJkIWVATmFSI3FnPXdsdHkxCnpyQ24mVkZUYFlOaExMek8pTGBMZFZufkFUJTc1ZCNT
RXxKI21he1JCS0N+YGApVCZOWkVte3x+TT5wWjgmUm5Zewp6c2k8IX4wOClvUlVJRUpLSiEhajU2
eFFRdndqWUlrSTUxUFNFPTIhcjVuOU9DPz1vREhsOGIzYGNpfTFyP0BedGMKemtVVFJ+VyQjbTJX
UyFaYm9XbHl6PCMjIzRiRWYpKjN9Tn5neU1yclkqOEdVKztmdVV1enIqd1dYKkBZQHt0VHp1Cnpl
eTUjNWc4WkBUdGt5eVI9YlJFIyVkWVlxUV8rKTxTLWJ+bXhjRlE8a29KM3hWTiNJSUxPSzVkbV5a
dEJ0I3RNMQp6RyUqSDRtZjE7e1ckZjUwYXt3d0NiPUtqOzhaSyY4KDxMQ3crWUxWdGV+bT5VRSYz
QT9memYlMktSQTc3a0JGVzIKenZzJW5AYGwralowRk5aIT1yKyRyazZkaVJfeXsxKShnOCNHN1Qj
fCQoKElNRiomdUpVez5oVjtVIyFmJl5qUmwrCnp2TGh+YHZfNFMhYUgrJHpGciRAKHJDVGtYRXs2
JGlMbntiamlSZXgrVUBKcWBYUGRnMmM+Rz9ZblYzMD1TK09qSwp6ayl6UWhNNSVMUUd3M1ZmVnJZ
PEh0SyN6IV8qSiE2ZU09UklSdEJaKEBPZ2tpPFRIfk5vP0leWEdwKSkjSGZWfG0Kem9odDlJaUtA
PnEjNkQ+RVNpQCZ2XiopdnxUQ1NPeEpCailIdmc0NSU/ITQwI3p3KDl2S1hZcj9hcmBGQTZuNTV4
CnpDVUxXTFojYlR1SiE+WEBoeWZCOyF1dF88SGJEZzIoOVQhd1VwZzRSPjVNbno2anMrVHdDZEZA
ezh4Y2BGO0wrXgp6ajA7YU1mTHI1fkMxMVZ+ZFc3cSZDbChSVD9leFNgd2IqQVhkaUZfOVZma295
Y3B2MSo8Xjs2MTIrdzNKNVZsQjUKej8/JkJMNG48VCFSPlpVS3hHaGZDJTRCUmtNMF5ZQnlGUDE5
SFpsVWVkPUJnS0xGajNzK1RPbVktZ2o9Q0JVKD5sCnphTz5gZFRpdkJEaT1TYkFiNDBLSDI1U25D
NTtCPTFqen0xUjFHQ0NudyFfS0B3aF8yYXcrI15eci1YbHBKS2pJOAp6dXJwTnBPVE1wU0lqcVZM
Q1JEM0dtWnUlOFROdGsyYjNuUyVreFJDe0dEd3ByWl53Rjc8PDVYTEQjUyY1MyotRHMKekdqNElf
TUdhSilPSW94Xz5rQ2gjYnZ7bn4hJkdePj5OV24mXnI4YHlzcnt0fXpqOGY5JCF3ZDM3TythRDZJ
LWxXCnopIyQoZHROdmliR09mUyMkYTEjc0pWTU4oKXJpd2VkbjBDMDYobmVweVUmcXZtbCRlZVVV
ODZJOXhBfD0pXzNffQp6XntkQnFeI2dXcV5yVE9pTUQ1dmdrKFM7OHlTZUElUXxxdl4wVCFoN0le
I2lxKEFJX3BTdiYjTmFpdSN4Oz82SGIKejUmZWRSWWJFfChDT0l8cUZBbUtiN2FxdDtJYzFvWXA1
XlhuUzBKK0FyOUFyMmlBQyZyeGVAMnQmdTh0a2UhWEx4Cno8R3Y8dGZVJClfTks2R3hMUz9aVSND
N0g9Wk82OEA9byEzfXgkVXZ3aWVKd3xecnckQkhpWSQyUz1XU3BkcFcrQQp6RkQwckI2MENyPXFG
eDhEJClRPCZoZjdKT1ZEZ2ArZ1ZvNlYmbHhxWlE4bWZGc2pIbThfUV8hKDA9WEFBQkQ4MUMKenBE
RHE8bWJfUSlVRlAlS29zVjA9cUM3NiM9ajZCN1BgTkpmS1BNWmxqKXBsdD9pVG1NKFF7WFB0TWpe
aUA/JWVSCnp3bEhBfTFhX3swWj9rMTsrRkB8bHJVXlpseUJhd01GYWplTS1SaV9vJTRPZGRAIysr
bSMkKSokX019RVF3NVBudgp6NkQyRUJTdVUoYDNtYkRVZERvJUVhQDFPWkU0cjQ1XkNYSmFFaT5m
V3gxPGszdnJScDZ0UVdZazdfWUt9ckJBK04KemlVa3l7Tjcxa1RAR3pqclV1cSs9VWlTUlhoISZP
O187dVNEPTxocyNTe014fmF4RGp7Z24hV0w2JHxIMF5qMTRHCnp6Um1zTzUzUFAyXk1oX0pIQURO
Iyt1VUFHd0IwVmNJRGR7Ql5OSGVMYjchNW9uMkQ5S1UjY25Pa2dubkpZKG1Nagp6KDRnZGtMR0FA
RipMWlpQQT94NyFVOUw2KmNxcGxGXl4/aVlmbTRDM1dvd2leTlpjQmJLQiNvZ298dXFuaSpaO3QK
ellTclBLPTRjUS03ZjhqJVNKb3RwOU9eV3NFO2hQaD5RKUl9KTxTSWwkT3p4QyV9d2NJTTdtUzZY
IzB+QT52MGV7CnpHNypgSDJxX0ljVUJIfl9jVVojQGw0UD1GJSpMXn1ZNW14M0RRX1pxYG52cFQj
Vl44TExSb3cmWCFXTz9lRl5zTwp6QCNIfnd3KndvTWFRIV9gN0cwdkd1WTZTJHcpZDdAYygjQ1NG
WXYkMkQhZXhgYWE5ZzU4TFd1aEpydCpfX01RVysKemVzaXEqVVFCQXBeLU5WSEZaUWpEMkBwPUNo
cUo0R2haUj8qdXNZP2Z7TkRSbip8fkcpREEmRnt3SDNZSDs4djVZCnpteWdkYEgqczY2VGlwVkln
dG1kfUVjdWNxNzFkZDteNE9GdFBYbHNHdThMcV8qdHVhbDRufnB3I09ubX1lOU8+OQp6ZWlCbSkj
QF8pMVV4WTRSazhNfVRuNXFeakFhdFlkUFdSdEhFJHZtViRIcXolY0RPJE1xS2RWbSYlWFV9JXs0
NDwKelA0MHIjcFVwbUZXZ31OTFZeTzdzcHwoPGZ6Yk1oYk5QNiNjRUB6VlV0fWtvTzdXfUxpZlhY
ajhadihjQnMpWUFpCnpuKW47TUtGaiM/K2ltQH5tZzl6VnthbDE/a1JAKVdzQzxxJChKQ1Fvc197
KXVVZjVCeWtFTGJkRnJhcVU0bXMmSAp6JEd2VEheTHlkPWRkJE43N1VfJWxyX0hIRHVnPCp7cExJ
bTJyNitoZzc8IzZVO1d7N3dIUmlsdXJDP2N1MitJKz0KejckRytzR3FpMmhgQTR5KT4hazY4M14l
KnQhfkIpSnkjd1QlK2kwKDxlUip8XzdXJlJDIyFieio5TmloLTMzYHt+Cno/RlAoJD1NV0k9aHRq
b2cyKnBqU0NXfDtSV31MSDhFREF2fCp7XmNAR3pRP2I3Mn1kV3E2VHZZPHMxKDQ1PFlndwp6RFRW
T1NoalRBPjlsMk13T35WZUpgXj8+ZyM0RW59dlk9M0UmS3VefmpmXnVMO29ITWtuIUJmY1dFQEhA
Rl8xdUEKekBmV1JYdXJOI3laWSk4WCElX0B3SUJqNXQ9JGlab3slKzkzMCVfZjBZYjZFZmBVaCNS
d0Q5d2JYbCN8a2NyanI5CnpkUUpORjs7Qnx9LSgpTEZWYmJmX3Mja2RXUTZQfUZAbEBSJlZ9Pyll
aHFjWnozR1BQR0llNDVtSF9ZVFB5dyRjbgp6P21MSGBzclhAXm1DRlE5UH5WODBpZzE9fHRiMT94
TCtZR0VUOGZGQCRuQSVKaG1SWkcjMzRzfjdxY0pMWndzPEQKej8lY2pQJl83NGpJfigxWjkyLT98
MjVBblJwK3dJcFJLNl8me1l8WEhgblJvcmtjfnI8aEg2cjYtX0UmSkdja05CCnpBKkRXV3tEP3NS
JVc8PGApOCF8fHFHdFlxUnlAcWgyJU1NK3R7QlhnSGhBMkpoKkxXS3NvLUpgVVc1XlgwckpDXgp6
M1kxMDhHPHYwWkZfP29AcFd+RW1gYG9ZfDdHeHQjKmV0SCRoZGVQOEcyak8zUWdeaF91cGdlcEdx
bnI3I3k0eXwKendlKT5+VGdjaDwqRVV4ejJZazBWeTcrRUpmNVpfeD4kPDcrZz9ePnNiQTxEWChI
QilTI3lmTXUrUTc1MmZiWmlPCnpiTldBZyNELWhhTyFicCVGUDJzOWEzdTE4UHp+R3dgbmxPeEBT
PXxxITdWM0dmVHFDdDtjLSpSOW0pQEo5ZT5nQQp6I2s7TFVNd0MhQjByS3xMJE1TTUxTI0hPRUMx
M1R2PmNQJEBOKHphLTJALUNgTDJuJmlNM2wqdmNLaGZxZ19uc24KemZQfmx8VTE9c0Y4XkEreEln
Z0RKZUQ1WDN0Oy1WejhJZnt5bjdqISVOWFNiWE4zITteSTFnd14/anNBPGE8clF8CnpadlMxJlls
VG5TO2dlKzxrdlhUXloqWmo3bWdtUEhyNHpgWDBnY21MUUNNLWUrWTI/aTtpMDtTUHdHYUwjSUhv
OAp6eTU2cEchRzNqP3JrWn4wJlk4eDlRSnN+O19Ve3hJRzNNfStrKXs2WmshfD5xT31rR0M/IU83
Y0VfSFpOVW9ySCEKenpsRGIydGZuNj0yWUg2eWA9fC0lTlRGZHcobiMjNHdZPT4zVko5XjNzdUY4
aDxlaUM8LTw1VlAkdHhYKT0xRkNBCnpIQ1ZCNXg5QmExKUN2dns8Py07amVuZDgxN0h7djk+c1FJ
WSgmRkY0PWlOVEctKUspTD50M2xDaTxIS1NJVEB5Xwp6Ym9fO0h6Ukd0R0A9ak1lOWV1dChiMEcy
Wm8xaF9kP2RFTlZkTExxVG80Ukx5Uik0OCFET2VmcSg+Wms1WiFTNEUKeilpLXxCVkplPSo8bEZG
T0dlNnwrUHAxfjlUaGRNIS1BYXxpVmlwSU5DZyREcFJoQGhue0h6OWh5aktVO1dmI3dECnpmTUVA
azwoMHcwRktZQ1pfeDRZenoldHlMS2wzcU5sUzN6Z1JyU0FmY21GKSEmJEl+SyVEQj9mdD0zRzhi
bz5GJQp6MnNnOEg5R0ZHKCR+KGxAMEwye0w/VDklUkU5PDsqUDglVkt1Y2ZmUyV6M2lzPTxNSW00
SzckZForVCZQSjsjTGwKeksyPzNWZkdlSio1QHUyVWVrIVFSYTA9RjslWHZacUloQDN+OyVrJSlV
Xn1mUDhAbCU/RnQxY19LVU4pQGp2ZXU2CnpiXkcwQmNKVVJXUmEka3MtRT9Ab2gwbUc7VT5aNnEl
WUZJUzxWYzFFJDtXK1JRYTkwVzFLNm9PS0AoVF52cz4oNQp6TmJpYTVwR2VzNSMlNmolQEJFSDwq
fEBfPld1KGxJWWpAS0M8NDREdGYjXzxwJmF2Q1BsOHwzVCpsbk5lOSM+RXAKemJlYiVpXj1XYWw9
V0UhejlRPUYpQUJKc2l5ViZUP2NFJDdBWns3Qi1ZfXNiRVl9Yip5P34qYms1YFM9OChFP0k0Cnok
VVozbjF0N20keTVoJStieUg9eCl8aj8hZm50ZURoanBVaTdYbCs/dXshdiFGWkhnPTx2c2A5Pk1G
bk9MPnh8Wgp6Xko4NEx7T3hua1IqPnF6cUJTM1J1YTg0eEhsQCR4VGlQRlJRcXl3M3NIMHNUZmo2
ZVZDP0w7PnhqejJFZUJWcHIKem5WZGxiXlJoYEA5YGtUJU9XSDZGc2M8KSYtXnF8YHhxUmkxaT8z
Tykob3l+VSpSS3E2cjlpM1Urcm16P19XajQjCnpHQ1VSMkZGKnoyO2lud28kc190dF5pKGJgaTJh
azlnRGdaOz91cmtSJmdgMjgkJEVjZD4hdGNPPWQza0lmJj5MfAp6UDl1VlQrfVJ3cjYqbj1JSHtu
ZkdjQkpRQTxvOCE+TWN5fUhhakhNYCVZTmFvJU85JkJmRlA5MzJhZHFAUXxULU8KejRZIVB4NDBm
dGFCJDZZMmV2b1ExQFFXOSEtWH54QE5UNzkjeDRVSDhlQmZLM2paM1dwcG9BYUcweC1RcU4ydm0m
CnpmQlM9Pk52V3dyPVRFOVUtRmFPdWtRN1lZJV87VTlSTEBiRXhfWCFqbGh8T0J2OCZuQW8kMV9j
YSV+bEhsK3hLVwp6aShBTXh1Tjx7bW4wSDdUM1FxPTwhQF55QzF+QyNoSm5eTlhfaSU/I3FVUVBo
cWJEIyZ4UkhibGxZNDtRMHRCcC0Kel9uemYjJGVgYk17VGNxdz9HfExePjExK2hCT3VlO0hDKV94
ST1eV0c2WWdJLWV+I0ZAdjlzRmk3STMtTHdpaCNrCnpGdjZYV1Vqcmw3QmhCX0Q/ZU4+cHpLKkFN
aE5HS2UlJkdnbmgxWnVHWERHNSRTJUpydmVmcD8kbUBNUjFiYkZyewp6cWUrS0w9MXlwTkljSWRK
YV9JTXlpVUtBdUkhIShgNHxCeChEe0A3c0dENUdfNVAzU0djPDhrfXlUMz13Q09+WXoKejZDaFEy
UWwrTihSO2diPFgyPn1KJlopfTdmNk8jamxoZE5NKVNEfkB4PWtpbCFyYT5oMXA4VkNjSnBnZHNI
czloCnpsQnBqP3N5VDRHI2xCI2FqMVIqfWRNeDZUSjV3b1hte3gmfWlwPjYzQD9eKyMyJH40cTRZ
JFFYKHB2QiVOU3tXcgp6eDEjRDI/RyVyblRmbDdiVWpaXyh7XnhfYyNndFV9WlFBK1AoZTdDcEVw
TkpfN282VnE1Mkdee1dLeEdncTFWa24KemJ0enYpQzV1I05pOVd5YmZGVG4mUzEtMmA1KVlpdXVE
NEdhVntAITtEJmB3YkUhY2IhMHR+RUQ2M0ZGQiRJcGtvCnpoa3d9Ry1xKGZyMHg+JDdyP1ZFMGA1
bGtHbWlpYSglK3pVNGJ0UlE4N0dBYSFScHY4PHJZNS1zbzBATXdLemluQAp6dGZlaUBuPmR3IWQm
N1J+VXxMaXB7TWZkQTxKNVo5RGE2O3VVSkJCSWxISHhxdi1qM2A9N2soYkltOCtBViZNQmEKemlC
TiM7cXY/UkQ8elIoaW1SX2dGYlZWPzJPfGAwdnRRRFBZciF7WGo0bU5NMyZaYSU5VWthUzwkNUFh
ZDIhP3l3CnppPUQ2Nis1RWkxdFk9K0Z4SlhVaHgmPjZxS2RJa1g/QTV8OXNgfGRxSjhoeyY9fCQp
NS1EKHxQVTRpQFR5TGMqIwp6SUZOY31fcVhnTUFyLXpxZW9DNnh7Qmp4IXohSi08Q1g3LXpkTCEl
e29AXmdsWmswVmImMntLbXpeQnQ9MF47VisKekJOVnVoU2lrVlZObUxRMUZJd1BzP3Z6KlF4WiQ3
UGpEWHFHZDFnLUtSJEtkKXBANG1uP3xeMH0jNEZDZUl+I3lXCno2TEhjNFhVTEI/JmpHYGBlPlZw
X1pONmp5aS1ATUlOQHsmQXojI3l0cDJrfV8xM3UjP3VHTzI1Vk9KYkJNOD9wcwp6M1VRNVh6OG42
VmN+RmljQTtKeEQ9TWBROWRQZzQ2Rjd8eFBOU00kNSphenJGeTsrMCpGU3FAek0lTkZMYFNrYlYK
ejh4TDx4NkJndUlsblYocC19cFBObkF3TEZ7MVglJjR2UTVWbjRrU0VTZiNlezNuempzZGRCNTls
PyFTQHZLdjBqCno5fm9QfCRRZmxiYSZrOEw3Nlpjd2R0YUNAZUNnaD8hZEM7UkFneTdtVmZPJit3
QV5uQ3VRfV9uaH45fiNkMnthfgp6VFVTMlp3KURyYDgmfWBebkliT0p4V1lXaSE8VXMtUnp8cm83
UEc0XiZkfGYqdEk2cHQ+VzF4bShmZyNAI1o/YEEKelREamppWWA7YlhwQ0whbmd5Q30lS2lYKStX
NV5sbmhhWD5VS0QyKHwrcT8wPloqdHUwU2pNc19BdV9lXnhvVT9OCno9UVB1YGImXlp0JDZoPnht
JnpXXiQpN31NVCVWPVhMMmIlTkQwVUdXaCMtfkVTMjE0Nl9ZPENtO2dTMF9kY2VKewp6OWlgNUZg
Q3h4K01OcDNScT95bEQ4aHIyVWBrcnxENVM0ST1ASnI3VEsmTFYqeGdBP25edDc8cmMyK3diezx7
fCEKejx5dCFGRWZzST8xTFhDTzYrSkhIOFZEIVA4UThMRld1aSVuQlhEY0tQNH10clVycSZFenhQ
MGhiMSV0ck5reDI9Cno2Z1kzenl3JkQzQXkxSD08TldtR2B2UzR3JlJhZk4hMXJWQzBsSU9TJlMh
PTNOVX5BU184IThfbFhRd2VkMHFUOQp6WTFoJVJTQHVSSWwlaCM8d2NkVEk0QEp5WGcoUV5NcnZs
U09iMWB5STVXKHVCTTYmPCZqRFIyLTg3KDFURlhwNDEKekhfIVFpeUhedXVzPmdXczxyTF9OZEpf
Wnk0Qn1oJlhpKFp6WDBSJDNaUUpZSFVrcnJFMnQhMGBoWS1udWghdi1YCnpLNShaRiVKWDx8VHVJ
PyNkeiNFQWxIO01BakVRcH5XS28lU3omcGY5KVF0QE1qJUFFeiQ4ITc1KjJ8PFpPVHRGTgp6UXZH
QD9JZipVWXtvQGV4bylxNHk5ZncqPlR8NlZPXz4zen0yTG9WRDdaNHx1cVBYNSFRbFM9U3JqeG1m
Z2hhTE8Kek0lO3cwMiYjbT8xYmt4aXA4MmtteXJwaSR6akNqNTxhZCswPCs7RTJKWitsbjJ+N3tq
TGx0Oy1CYzJINTBYJGZUCnpvfGs7NkdMKTtnKCRpQW9WJFk2Umk+OyszNDNKc0FtZ0FaSS1IbGAm
K28xaTJtYzskKkMrRHB5NjUldDsjc1NDQwp6YH41bEYqYmJMSG1ncUtLPTRoSlVHQ0wjVGg1PiFX
c2srVkJ6QUF1OCV8X09WUjFLbVh3VjhSclhQPzBrVFJXQk8Kej8kPFRvRmBNLU9qT34kZkR3NEx2
QEs8dTNTQElnRExjST9YUzk5XzhUMl9PKWVZcDIkWkU1e0tNYVkpQTdzcTBpCno+fSVuUm8hSWoh
TnxyUm1QPmE8fm5LTGYjJml2Q0JrRHd1WDJZdEV2RllrbC0tTSVSUEY/Y080X0g2bjlXQVZXRwp6
VHkkM2JyckZQTEI4QjxoYjZATF5QRD4/e3Vlc3RZM3QrbGFAVE8tTXVYWjNOJnN6SCN1fWUzblFB
ZXJnSTJnSWoKenI5b31gK1g3Z2B7akFSfVI+fmtwIXRTKUVNaTs+KF4mRVM2UW5SdDZHdXp+Q19z
bWN7IX0xJCRrTVRnTkJ8WkUrCnpUWkd+WEdQc2EobkMzP1ctY2o+ZURmUlNqUnpZOWs8UCFeV1Yr
O3l8STUzKlM8amJVYkRnYik8PnpsNHFzeFMweQp6XnlXTnc8KG95PEVaN2gpJSR1WWlDaUEqfHl5
NzJYcSFkKGdmN1U2cilIaj53PWRsPksrb15GZ2s8SDxWKiNkPm0KekVIREY7XlVod29EYXBBazlg
RlNSNEpvZGt5MTx4KSNAVWEhekRZYjI2LSVEMUBBO2J4SiZ4QXg4QmpqRiEjY2okCnpHM2lXRihS
SXdvP0R5NjU+fmRLZ048P01FTyN1MCZ3RnZiQ3AwPExXYCMoVjREfkQ+cyQxJio2N0NkMUhacVJi
JAp6KTIzWHFGaV9Yd0JFOEBAJVlOdjF4N0NzJlNFckZHdnhefG1LUWpKej9NSmh2RCtmVkl8NGQz
TVFvUzt6SUJqYTIKentNaDZDYHNxbDNuKktPNVN2cylIJm1scGMjYXJHYTkxQHdUVyFeX3oqeUZ0
TmJTeVUlYiY4d19VUHJCbTljMFoxCnpNXip4SllAI2dCR2klJjtlYXwmZkthJkdHUW0kYlJQNWlB
VXpxR2wzOSNycnhHe2RCYip8enMqPilIRWRvM3NXOQp6PEdvUHd7PCUqQUU3RSQ4Y0o0TEMjeFht
b3FfIVZJeVl3LSZhKzxDMnErXyhTQUohOUNrbX5nc1ZsX1FCQSFhZnYKemY4Y1NNM3tZSjB7MlNz
dlV2aHt3JXo1VTMzPXQ1Yz5uQGdYJjhzV3BPSTN5bWxvTTFlN3YmREo3bktBOXlFSytNCno0JTBJ
bzlfRlMtaGdIQnYzZmAyKWIqcGYyRmxQPj5wa3clfmBKYCllb0hyQTU7OGBMQ3tuaT0lND01MCE7
TmsqeAp6V3lVOUF1PGZLbnF2RS02aHhLQypMSjB1QTQtKnRpV3oqTiY5UVh3Wlo1SDxvKUhOJEJ4
YyV5O2J8bCVwVENtNDsKej45WlhaTiFwfXRFVzxrMjlBKVdrZkFtZ1pAajd9YVBoQUtUZFlgVl9y
RyZidWJ6aDgpSjlYV3JqQnhRYC1XelRLCnpZRztyczV+QiFydkxrMUhGRnY3fEV3ZTBCYylIdWZO
elZnRjtGbXVNSiU1X3o8OVJmbzBneU0pdE8jNk1ISmVmdQp6YmgxRDRueEFKYVJMeTtQI0A2cn4/
YXghZmNRZXlBYnRIKWBCPjNSMVpedjNaPnQwdSQ1PFNqRHEoPTRTS1laTHoKeittd0ZvLVpDSGU2
ZCRpZ0tLK3IybW98RjBrOTs9WmwyaTdmTn03N1ArTTNya1M3elBZeEB3bm85Qig1NEkkT3UxCnpx
fWx3UD8mTTImcmhtbmohUDZKPTN1QCV1ciE/K2MlMTtnSzZkelJrV1ZqUGJSM1hGODdOPTZJJTB6
biQkbjZGVAp6aVI+emc5LXBtQShkYTtye2VEPi09Qn4mSlB3K0F3Qz5pOWJRelhsQXZ8YEF5dFop
VCZTcWAtRW5gd1E1c05DUn0Kej1lY2s8KHw9I0FZTlUjZjgpQFIqV0N3fk5SfmZ9VjJfMjgjN2NT
TnRfUn1gdW0jdG5lKzxLNik0a3xlJG5Ja3owCnpQVCkhfnw1bzx0I2g3I2FLant1PVFjR0l5KXgh
TjJkN0d1U3txa3diZjtaIU9tOWdednlCcTRDdzZvKiQhVylEegp6IVgmS1Q1cj84VChvejJKJEIr
aiM0UDErQ1YxKUt6bEZ+JjFNWn09fVNsI0VqQ2VicmFfSH12MEQwKmR1K291PmwKejNPXiYmX3w4
MUIlQX5JOG0tISE2JWdSdUtfeys1eDJlUVRfNEZLZm4pV2sxWCQrMmZEWn07VnolXnVVTyVKT3wz
CnoxV34/eXI2QndQel5pSiFNUklEUVN3PWd4bmRhRnVrY25AU0tsZ2gtaVpXPj11YD9Pa1pnN2Nn
PV8jfGQ+I1h2RAp6OExlSVE0V040YWllMXdVbmY3WCpTREJJPEE4SjsteC1rLUNLSSl3MEFKZU91
eV4tRl89X3R1azI1KmpFdDZjeksKek4pcEE/cUBefD51NlVSWSlgeX0rMFEpVWlEREJsZFBwSDdB
a0pXZnE3Xz18Vkc3QS1zXnU1VXNFeGlGWnNXYV9BCnopWUVeb0FsWWZ3aklidDg4IS1yQlI0TkND
WXpBcjF7WjF7YERpdDlNWlgqTX4wMmMkTigldUphIT5RfF8oWkQ7LQp6RzIwXmY0fU1rSmFybGJ9
OSp9IzdwKitSSkVjdiNZRlByTkxmeFlYdmdJfDV3Ml5Pd2RhdDc7SlBxMChEKzZMfHcKejIpXkom
R0J8cGs3IyVGTmwpbW9aVFVpO2VgMzF8PkBPcXNtVGU9dnspVCR5UitPOTVgc2NldHo8VEU2WHdv
QSFDCnpHWmpuZjVAX1ZQZHpWQnZ6UyFMfTxhJWdzaF5wNE1fTjxQUldSUUk9QCs5SFlmZWs8cUBT
fnlIcyZndHNmOT1xSgp6OD00KnNKeClKekAqQnltQ0JWQHdmdEMwLWhNSXh7cVplbytmYzBhKHFe
c1chVzI/XnxBfkNZKEozOG1lbzYtNmMKejNvLWhqaHIpeEJvIzM3VztwOHdIditufUwmSm8hMnV1
X00tPEZrVlg8aXlaanA/eVk2MVN4NFNYUVA/dS1TSHBmCnomRjFyI0UpbTRJRHhfd1lXQSV9YiN2
U3htZyRYIU0lYXZ9Nmwxc2NFYm9AclFlNno8TiVTezJNN3chd1AteFhANgp6b0NwTH5zQF9YZHQ4
OHhqWF9aQW87ZURzbGckR1V9c2dufHtWOEYmRlFeVGFNbEwxLV97bGAmOGpaVUE9UEFAME0Kej0l
X2t7UitvQXtANz9UZzVNZFBoaz58M3owMj9TT25BUHUqclQqS2doIUhATHhTRUw7NmdKVjtVRkVa
KXM8fml3CnpONU4rTk4oUyZEdm1SI3hRYypyT2s1Rl5xUTE9QDgjNEpuOEYtLVBmTEMlPlBZRiFK
YHNUTEx+RFZGJUZpY19eZAp6emgpdj8kcmBaeDAqVW9adW1aeXNlYiVPeXg9UShNd0t4XzdteHI5
biF4QjtVYHIkeV47OGhFI3BHM3ZNKHYpMy0Kek1BdVAoSmYhWSUzS0ZZKDBRcjhyRE9FcGpVN0ok
VEJoQG1NM3hDc1pZRlZQRXRRMzZJWmVEVzNUdmZXSlJYK29eCnpFblhZe3k0WWQ5OzspaitRMUgx
UD1TaldhUTcjWEApNDl0Nj9oWFpaeTYxYDF7JXA/dHBJenB0YTFlRW9zV2d5Twp6LWk1MF53Tzw3
NCtpazE/NXtINjVTWXYkREBgQVJkP2BJPE9GNTA+ZEgpP04oJFN4ZDZ4SD03ZiheQD9QRVEqJmgK
ek5PPX4+anJjOCswRDBvZkRQd3hiSD59RnZiSyZrWXJ0KUdNeUg/cFVPQHJ4eD5edVVyKHxDWi1z
QEs0aVEoU3AtCno7NyZEXk0tQ3xZcXE1VzwzaU1yalZxclZHb25hbiROaWc0RitEMjA/Q3deKG0x
aVVfP3xLcFJLJExeWnVeaVNFVwp6cktlaXZpbVNwaj9KZ3krZEt7IW15ZlFMNSt2VURtOU15KGRn
MDYwP0dMd3xaelh+I28tQGBnUmleV1BhK1I0WU0KejQkb3BNdDE5QCQkVEYtcCtYa1M9PldpT2h3
bChJMUhMbG5TckN6YVVgX0hzMl5+PChnJF5jKCZTSmBsKlRzMj42CnojJW5+aiZvN09Sd3QtQHl2
QXtAUnF4KENOKzhhOXkoQFY0KlphPG9uYDYlcWxEMTl+U3FFfGMpYXoqO3BvN1lxcAp6PWxzNG08
R2UzVWJLZChvSmdpTShEbHgoTFhBbHcpWiUyfFBNOU91JGF8IU9SRVo/fXojJjRxUl91Qzg3PV5Y
KW8KemkkMVNRbGNZfDVoUitLSDB1Pn03P1BGPXBPIyQhbjl7KTVtN2VmYEg5OHE4RlhLa09gQmpA
P3M+RExGZXJKSCpOCnp0UUNVRm1DaDxfa3g/c000SkdsSjttZFJUanA0IUpnKihNNzRsbGVlVnxC
Zl9HSWVsdTd1VnpzdGJKeD5yTDxWQwp6bEA4cCl2eyFZJCtJKjI/OERYOyNaVSZoWUFGNiNxdXJU
djltbitLWGdmJT8tKnVHaispR0R8KWtlKChHVClXa18KejwhaCUwVDAzLSorSSUtTTVQWjxyaHgo
SiZiRDleUEotPTUjTTZOR05OcVYlOHJPUWdhZE1FbERvQGhPQzk1fEFaCnpubGRuRkUzYll9OyRY
bV8mOWkzWDsxJDMmYEtjY0VEPTZHeDclPTg/Mm52e00jcU1AdUBCP21MNjloNDBRN2hgRAp6cGUm
eiVfd1N4WkpgMXVeanAkczlqPys2bzw9dmNMOGFYaDtHUUNTSDIlJE87dHNLbGZzdjBoU3tOJldx
WSNDUzcKemhxQUAhZWF5a3hiSWd2eGgzOSVSSG9Va3d5O2NuPzkpWHxDM3xhSVotaiYqJUEzKzhT
dkR4YC0xfH5TIWlVKT9gCnohJmlNWDRYQDRMJn56MFZOSitNfXVeV04lM0NUTm50QUtCMllDeDYw
QD01STsyMUB9YGQkKzNfbDdFeVVwUXxHRAp6aFN7KV9FKDc0JUtEYkVXVno2RDs0aWlMRyo4e0gk
MihoK15ueiU4fWFXNms0ZCpxLWRKXlE+WHhjeHdeJGdYcVYKekQpZktsJDlSb3lLR2hBfWl5I2lY
NUFXY0tjXzFaOEo9Qi1ienJAIzlHK1Erfns9JiRIa0gtSGN7T3o7RzM0RDJgCnpvcV4tTGJga01B
bFQ9LTZAU1F3bV9QUEJlcHgtd1klWVowfWdAYyRwTnVgJHw3N2Zma0wzPykqTnB5XjdOX0g1Pwp6
dXJaaVN5Mi1pe3QxVTEoQDI4JG4yOXhYQWZmP2hAaSFmMFJjKyNOO15yaj5qfEJWbzQ/Qz1Qeis7
WXktejYhR2kKemxiNXxGRzEwVm8xLWNeaChrdWxlZFkyJVhNaWBPdiNQPypvYzlHNVY+bkEwLWFk
X3pySUk8Wn1ZSncxRnp6akgyCno1NyQxTGwjaDQtQzdjJXFvJmdoWi1PI3UqQTxleGBgTiUoUllJ
KXZoUFhfKmkkO3lwTXR0KHB2TFJvJDRtemY5Ygp6fDhQVDhWLSNzMEVKN19WMVBlJXEpM0M8bStB
Y2pxd2g5MX14K3Veb3VyT2lyZkgwKFItfT1MQGg8WmA5bnh6OTUKej56REF8U05FSikzP0hPWShM
e2R8a05nelBqaCQ7O15ZUzU4ZzgqRikzcUBodUhhPVVvcSpZOXtrSyF5dXUtfDdJCnohfFN4diZL
elI9bklDTU1pUDBSNmE5cG9Fc1o2NEp7fUdIK2olZVF2I2AydVpkbn1IK1g4JGdFKnxzQllzVzhG
bQp6O2JWQjBQPlBBODVWWH52R0Uqb3omZl9MQmBLV2gtdyV0KX5pY04tTGQpMnd2UnVQPFR3LSo0
YmhYdnkmPFBhPVYKejMpN2lSNGtLWj0+cDh4aHNtRSslWHdlaiVsWEtDZWFqVEtHYGRrSHhiVVo/
OWFtSDM9SChFRzYxTH5BNGBiX1RkCnpuJDdic3hLWFE8OXorRjkpa3koPT9TMH1RcjdSIyFJQmNw
eER2KyUjS1MwQXZvSWp7UnVoOW1tRXhXMWgxMjBZNwp6V3NFRlFYMlMrbmBVUUI1e1ZIWmRvTykr
WiV7P2pXRzBBanlReWJKZnspRjhPKm4xJlNsZm9KOWB8VF9zRG50R14Kek9YSWA4MDVhdnFEdVMq
MFQ4JiNRRTB3VkxIYSgpTGtMWFVSdUtWalFrLVckaEhkZWlJeFBGSURSQU1TUyYhdEZGCnorSU5j
RlllYitycHNqSHRjWjE+OWhPJHBpVWE3UXVoOCtLRzFVVXxvOyNSVVBeTVNZVlg1JH0+b081WW9U
U3BlVwp6bld1cTxfRjxvWFlVM25CTXlFVVc5Q1ZRbXRSfnB7d0lye3E3eWxWdU5jZ2xQbHhLWHwm
QFZ2Xit0MkN+VT5QZ2cKem5uYE9sZkMtUFQ0X3Z0RCRtO1NpQG81Q0p7SUI+KDtiP0VldTR6blB6
Yml2cDc2SHpfa2F4KUd3O1BFUzRNV2prCnphVFlmRyU+TF9IJWJra1olRWs+IU9wbT4mQnIyVGRk
ej1nfWdPPG0+SG9QaVY7Mnd6KT9idl82JnRRal8/WkNRNwp6cU45U0pyZyopJjg2eUZPLW0taVF5
ZjxofXc7RUxAK09oR3gxP0VQdyYxOzJCbzRrajwjZyp+VmVvQ1NjdEAkckYKemxYJEU2SEhLTHRy
UjJ7fGgpQ1lAcT40ezdGQ2dCU2RfTzhrMV9QQH0tTSlqMk1wZGM0O3JTck1yPVhyX0pjbyVKCnpK
OSVVZ0FeY0xxSl5KLXMqZlljUDNBX2g1dV5GI3s/aDwqI28+VykkRl9lNE09cE99ckQjR3VNSCZO
SFolM1MhZwp6QzhtKTU9cSlJZ0AqV0V2O3Y/RkVrMHdeTVU1WldiYCUzZzBGLX5qekU0PTxrd1lO
U2x7ZjYmVW9Fd0ZTXkI2RTIKeiEyWTFwZEhWQygpalIpRGAyTihMKztAYzdzYj92UCRtUGM/P3sw
Q0FpZTB0T2VzfFlfck9NTWd5Wm5RfV9aakpiCnpzJiVKKyFXeypISmd7TTVxN2F6V2IjWmNFMUMw
bn1RRUZ3aDZqbWRocnJPIWJFbyZne1RlVk55QXgzRFpIZ19HKAp6P2J4bUhLZzs+SSg5RUBCe3Nm
Kl52eUZnSU1MZ0JzKlhPNDdPcGdkVkVOSzU+ckordFBwNTslbTUlb18wSmwpSmMKenJsUk9HI3Zt
VEgja0EmYXFJUnhFaTx2R3NGfmVvV1pDdUVGKjIydHU0RWROVlVEPDBsXlBHO0xfdmBtSnBUam5v
CnorIzVaO3hUY21FKGBrbTMtKiRiZGpqIWlwK2lPKTRrP3dKJGRNYGlocTlpekheWCYxRTM1PUZn
VTEwanJPczkzcgp6ZEQjU1JMNHEhMjJXRXpZU3NFWX5GSHM8KEUxc3NGXz1McEhATlo0Kng1OEVH
WElfI3A2Jj9aVmBYbSsySVU/MCYKellBPjRUdFQ0TkZyNXg7QUZiVV85IykwanNBaykxejJEWWNh
O2lYUlprM3xgQFV6dUtnX0pAfEt0XkB2YlVwKTJeCnpfM2FOUEQ+ZG1wPiNicWd3PlZCWVBkNFNt
WiRsdU94e24kX05iYjRnKTBPPnRpSF5nZnFKO2RjcHE5fFhReFdXaAp6JlUtMUh3PDxUT1B8KSRi
IX4hV2tacFZxbEtZQ3k0SiZReTRZQ2h5Xlk5WHc1RlNkSGQ8UDBBMmsrMyUhSn1YWFEKelJDN21E
MT41fX1EeStELVRqSWB9PlN3QCRubDIrd3RXPVUtRURqVl9sbCV5PmNjQnRYemomYz4yMUYqWXQq
Um1kCnpVV2I0IVcrZmJ3Sm0mWDQlPHA0QUstKyQ8elZ9fTVBRUZTUTBRYS1sZSs4O2lTNWZWS2Qo
S1hLe29Pek5lKUROPQp6JUtUUThgMDZ1dFVJej98NVRqYDcqcDJ4IWR5ezE7dnlnRzBsT0xJeHNL
KTY5b2BTWWx4YE0qUExRSGkjQHwkQGkKekhgN0pDJHJBRl8zdEJYKT42JG08enxGWmBoMUMhKzQw
dFJjez02bGJRZV9WbSVgOUU/alNrJnMtJStNMU5nTUJsCnpwMS0lMTliRGlfP3JxVDtJM2khbWBm
YiU1aHxPVGdGTDN0KF9RdG9XSlh8RUJ6d0hsQm1PdSh9ak4pVkxzYntUQAp6P1N0WFpGSHloIz1a
TmNXZFg0SWg/eytBPTxZKiQyYEJaMCUrRVM5RyFZfXcpREt1aVFucVkxNz9MbzE/cG8+NkkKejNV
KWs8KkN9eGF0MXskJGc/amVoKkljNkQ5bndAS1lYeCtBezl8JmRGTCp2cj1ZTTIxb1dLQSsmeXc2
STlEUSl5CnpgSSN+KGdgOWlBRWJzSW1WT0puXmlPci09RGd1ZX4xSXJZPypTSlE8S2p4Z3NVZCQk
UGx4bVFXSSQkS19oMzAyewp6WH5UMWJoTn5oTHQhdmk5JCMramtPYFJAX3UkUTZtckhKRzJKbENs
JktmT2Y5em5KK3xgSnE1ZmleVDI4X1VZYGsKeiRIeiMpSl9BSnkmeGBNdFo9aUArcHV+fGlHXzRi
SCZLISZqRHheaykyN1MpK3tzbnt9SWVGTTMtNUluXjcyVnhgCno8JGYqPFJ7ZS0+byV7MTkhTWZ1
dlUwNElzSjJgbEx6KDVYS1R6ZzY4REdvd1AtN2YmMCMjWl4+LU9MT0pAajFjVwp6WU5uUzBkd2pG
RlUrdjdRS0R2eDVOYVVFcSlPX3dsUThEPno+bU5YO3NQPlcjZW9HVFYrbDRXM2diQmVUXyp2TSMK
ejdwMFBrQXs8MGQ0QGh8fEdWY1BDWmN+IUAoKnx2JnlrOVc0OT14U0VqdVdgcil7ezFwLTVVakc2
JFdrMVMkcE5yCnpNbFI7Y0VpfUFSWitERV9fZGQkNDdLOSVuVigpaSh0MGgkR2NOX15gPDRMIz8k
PDNnQnhfPG9FbSlUaGtwWldHRQp6aFBUNmZATTFscUFAU1RrYiE4JXtTVnZhPXJZU0N+Y3B1UE8w
U2xqWXo7YCZxbzt1VktPe2I3ZlpgRCNfe2RQTEIKelBsQnhlP1pfKlhYRkJwMT4lamg3NH0wYCNY
TEo5OGgpYlJlSjV9cllCSCRtcm5sKjVrUF9WPTtPPnV+Vz9sRjtTCnp1VyFCRyNhcnRBeD5IcFo8
NHpeKnYmMUJ1KmYqeGtXeH1JNkU4fF9QNkxOWmwjfH58NGA+dTU8SVZ8ZnZydDk5aAp6S2FvTGI3
dT1icnR4QmZQe0U/ZWI8RT1JfTk0ansqYlk8MnJXRmt2QjxhQkR3UGJCY3ZQS0A9eUNvfGN1QyZQ
cEcKemdUX1lXVjdLZUwxd1FXakhEdyFteWlsJlY7cGY+aTdEZm9FKGhXQ1VTdVZUY3RmJDA4X243
TTVTRyNNczl0MlUjCnpEe3lhaStgU0N5ZHJNenRRWnNLLVMyYkFPYFBvZiRLeyZhZjNJcjV8cCFT
Tm9EcDMzPiFWKkZONnxzTWd5X0R+IQp6Y3NPOyYlQWNeQXZPWlFWd1JvRDhyO2xUeEMyS3s4dUs0
V3plRl5gT0lFcl5yb3UwMitfIzU7P3ZUcTNZPGNhKFYKel4wWV5PR2REcDlZaTUpe3YtfS0teTZO
Zk1hR2o1bWFMb0gzeko4MnNgVTMtQFFgJFFuVW04djZ6OEB1LUpINSo4Cnp2KWMzb1NrYkdfdUNA
JnJANU0qM0ZBOSlKMmFEaT9geERqIShwYTw2KFZyNHw0a0llRkVxJX5jUXB+TWxUSiNXTQp6ZXo9
UzJJWHs4QSYraV5aMU1Eb0RIV2x6cy1WJCVWYGUmWTxTUjtzUXZRNGR5eEQ7PnU2TVlfdlZNP2dx
IzY1OVcKek1NNjA7OHZeKTE2eHo3SVB4WEV4aH12VjNkYDdYT189cU9QOWsoI3NZdVFrVWFIeU50
fDdxS1pZNShtVGVmX1FFCnooMWI4eHUyaytxS1FRMipxXkh2a3MwN0l8TTNXYEs2Sm9ZWTl0WVdI
IXNgYXxyPD9WSlJ3OEtJKUhTO3NvVmFFdwp6NE1zUz1YS0E7IXAkWTtXZzhidVVBTzUpXktre35p
T0NreXJVUVhFRSt0SHt8X0xwTU5SdWhxLWd4PEg1cGcyPWMKeks7TFpUYWtRcE12Mzt5RDVeMipB
dGQmMHIkNGxaITEhUHtZcHE1UExjRT9RXzthXm5PZTZtZUBlVkd9dXUxSD4wCno8SlNMUXY3V1h8
UkFHNHVqKlZGcWZCQTMha31ePyZXZEhXa1RoTEhQNDdaLTxIdjVWR2FEdEVrREM9RTE3aDlkQwp6
SUZOWCU/WXtjSkNVNj8/U2wlIXxCR1pjO2hyJWZMKTtORjtJVzEpPkdPO19XckdnOUFkUS13THRF
akhvVXooWl8KekNVKUZGUCZnQWRCSmJUQnBjYE5OUnV2YilnSnhHYGdRb0dpQ0cqXkllVE9CJWZs
VHwjXzdvSnYkOzxRTkR5YDMzCnp3V2M7ZCZxazBtRjFUR3dBZTdANE1VUEprQD5ybllSM0hUN3g3
bDtGX2pVRU4/KFJzNC1CSXJLTjl7c1V4JnlJawp6JCNMd09ZSzd2SXkockF1WlliTEk0MGtAYipg
WG19KEkzQEFlcExCYGxGRFFwTyl5fD58TGR6Wl9fJUFnJnEjZHMKemo8UU8mIzFsJH40ek17OENi
U1gkTDUrNEVXQnJCcER5NXJ8aHh6Sm1MPkJKeDx7dzl4a3xSQEY9VnNqRDdAb0NGCnohJTcrQHhV
R1lIQkJmKWZaMSt7dj04MloocWA4bFdAdWljMzJhKil6QHNlZylPTmk0NmxkLSZPcntsR3ZUTkhT
cwp6Jj9EUXk8Z25XfWhOQkU3KEhgX1F1WXtufFA9RSUxUjd5JFJRYFkyMC1NQDl2cnU8eWBALXI1
eSMtYjdGaW0mZzcKeipNSklyK35eJDMjfk8odWpONWcoSTdtJD0xVz0mbUJMIUVhb2V6QXkmUiMk
ezZZd3htcTxrNFNJeGdFN1d0dmFACnpBWmB7bVU9fDxhY145M3JHejxAKXlPKzIjODJoYmdFWkph
O1BkME5QemQqQDRxJjIlKk9KZXxxVnNePXdzUkAtbwp6NmlWe0FvLXh9WjFDY3w2eVp+e3NjPkxj
JURIbTVKeVJYOX0qTGtJX0s9LX09O1ZkT3h0b3dqKWgkaXFNPSZUSjUKem1UfC08ZX1NVmclJHZV
RmE5YTR0TGRTb3JLVyhBJXsjPW07K2lEWDU/dmNCdEtZejBYITJacWMmfFFueTYwbG1OCnpoZlFF
Q147JmVuKEFlYmdeUk9ySmJCOUske2g7KVpBYGItMHQ1XmphRTdZZkNkaGJqdF5JMD1PMSpKfn5v
RjtnXgp6Kz1HVzNCVlJOSXZAOXBgXyVuNVllUitOeEYtV2gjeD99PH1JKnB9OV5XYVh0WVA2SzZr
TDtzZ09GY0soSGA1QTEKek5qSUVpcH1fLWxWXjtSbEUkalNTUWRfKy09YlZoRzZZO3JpRTQoeCFS
bD9AUU9iaDJqVzFyYGl4T1llWXYzak49CnpYbiRKU048UztmT3pVXjZyPCZNRVBIKHtlazs7YVMh
Q01EdmhETn1lZGlUR2JJKTBzelImdStaRzNRJWJWR04hZwp6bEdIXn1wdFN0TSRtPnhyOSNUPTc2
e1ZKTCZ8WiZNT0pLTilyJFVDRD53LX5nI3JNTl4/XmRURyNLSjkwZlJGaHUKeiUkPmV7XkNtcSEh
QzdWSUwzMUM2TWk5RSsjMUR6VCsjTVZnZDdKLSk3QFZNfSZZZXMxMjA9Iyk5PVlDSClIKUcjCnpx
dUtEe2JPdDUweDE0JVp7YE83SVQ+VjFqPmE7fUo8SUo2aldTV1YrSSMhYHRzQFItQlMxYTt1Z0Al
bUZrQDIoKgp6Oz9KQ0RgU316OT5NbyNpKkBYOVk4QUlVSkE2UGcwcFQqS2VeR0JvU0d1dENidWE9
SEBuezw2dm1DQH5wdyh1SlUKeipANUh4dDBTMmF2X0taVlNKJTVLdG0oSmNYYW0mLSFebWkxTDNf
U09ZS0UyeTdTTkVIITxMPTheJUt3bEY7Xm5oCnpaOCU0KXhrSXFYYkk0QD44eShreXhWZU5YWGwr
d20kaCs1KE1LcUFqd2ZhWFM7I1g1K2ZqfT01QCh2Z0FlVTJgZgp6PDFRO1ZlSnp2XmFJd19XdyFz
RUNILT9YZ1dPcz5xO3NMMHtVR1QoOFhpVDFqdWpYY3JOPEIyTW5MZVd2UThGRV4Kel5WWWo0VSok
WDFycChXKmNkN1AyOGN6MENTN0hlOyYhTzU/RnJgKDIoJl9sdlczZUVFT1NPPSZkdyhmcmYtKihs
CnpxMFNSLXFAc05meUJnVkM4MDVja0VvNUc5MW97SEJidjFJQ0A3NnEoQiokZl52JG8/Y1JAZDAq
Vk93NHkpeENGSgp6WXg9KiY9ODBWKWgpQHRZQDZXRFZ3KHEoUF98dXs5IUs3VmN7OSp0KyFCflpj
eCZKWnNhQFB4cXh9VGgpUGxBU3gKenZvQV9uSDBUYk9VKmp1Q1NuJW1PdHAjWE0hR0QoeWtQTSU/
OFpHdShRKm1DWmd7SHFyQnBPdHo4cUJDJiVBfDFwCnolN31fdCRAeithPCN2ZFFRUmBrZlduQVZ9
PSM9JWFkfD5eZD84eDZZKVdWJndkUD1eXz9fRT03X205OENweHhKJgp6ZTRUb1VzczlKbj9gUTNi
e1kmWmYkMzczYWMmNmI4YDk2NE07eV5+cFBMQz9fbFFwKFZ2ZzIqe2tjQ3I4a2Z6JDsKeiFLPVd+
Zk0pSUVUWW0hPiRGNWRmVDNEMDtqXiNoKDtJVikjPWtJVE9SbC1XKzAxQVAtaWVCbGBUSVJ2V0lV
SVYqCnpjJDt4MSM2NkQ3cVRqZlopb2I1Xzh0O2R5JWJfO0Q+X1JpRExlcWZmSEckU1IoJHZnVkRB
emsqQHpiYHZ1aXY7bAp6O3BRZ0xDY19gMWoqT3d0Mzg8dGUwJjJlXlM9R0xiVVplSEleT2sofHVy
bXhEck1JJEZ3OFZzdTN0X1FON3ZqWH4KelArXlktN2lzWWZYI2p9KFNMS2x1ZjQkZ2JSMDFibVFT
Qn51OGhAJn11bi1MZTxJaWYxZz94cEkteHJ8ZWR0b0dQCno+RGwoSGctOHpPaHJzfXJBQHpCWDk1
bEZBRCZKK3BmejFwfHltNHxRWE9KcTZfRSZhYkZ1ej9pX1V8O3ZIcG09PQp6N3VkVXQtJU5JQjkk
KT5LPilEN1ZFK1ZxQiFaeX5WZzc+WE8hQ1dPY0BPQTVqJHN4UEhXLSRLM3ZwdVE+VDFEQD8Keilw
YEdDJXNRMChnRSVqeHZBZSNjPk15TklFOSE7MFNmZTRyKndFR3xuTyFOIXZ8d1hQVHhiZ1ktbHUl
YWYpRGNXCno0WnZtV3R5cEVnODBjY3YtN0N5eHdUbjhHVVlDM0JqO1BjMTdjVV9GIWpVUGkqfStA
c1FZKXMtI09KUX53WTE2Tgp6aG5iajNTRzs3UiFhfjJYPCZiOyhLPnxQY2ZIeHhYKGpeN2VmQnl3
UWo4OWY7bGNzJTFHc1lVaUkraWluazFQZD0Kek5vTjJIYXAzbkdhN3h3Tjw4O1JjWEVSNXsrJEdl
UmJVMWJ2MT1OSHRlZTtFVm5rMFJ2K1QtMGttZVcqSTcqMHNMCnpidjJxfE1fMlJvYlJRUEF2Xio5
VEk/QGQ0JUkpVXdzLT1Mcm1MPVJeYjZIWigxcUUpMUtFY08zanMreUN3Sjteawp6QE5PYDs7JUFZ
JTYtRDlJaEY9WT9aP1kleUdyPEVgRFVlcURkRUE/O3RGZFp0PkFJRUxPRXJkPTExOXBFc2I+UnoK
emVBKzBxJC1tQFI3XmliX3REbTBBWnNhMFQ/a25tNCh7Sjg9RCEmcU9zTHI7VDtYZlB6bVpDMmxI
QExmJUB1PHdTCnpScF5pOXBNc2l9ZFlofjw0UX5jJjRYcEBTWmpDX1hnU1I3bXxDO09fKmYzQmhq
KWteZjNJVDRpSG0mdT1AZSlyPgp6fEo1P2U7bzdEOylnITRKTHspJDUwWE1afURANWM9Z1lsaUto
eU1lNj90TFpkKGA/bz41NFQqUUFtb0xrMHBlaFkKemdZXmVhaG53MFhHVnp7UFpnd084Yy1WRlN7
OWN1dV9kIWdSaHtYQ1oyYzZndnBWcCtHIXtaSGU+Vko7eHw3ITJMCnp6bmE+KkVoVW5tNSZ+Rmdr
eCZFYEwzJUdpPkdldkhxNmt0QVJVeT5TTDVqNHszQHhEYTR1WEpHTVdoLSlkWHBlVQp6WUE2PkZS
MFFBMntvY0tQY2Y3eWdqbHBscCZOPUl9d2Rhfl51NjxVaHBwbz5NYXc7MlQoVVhVTmttVTgkTU40
ez8KemY+SUI3Z3tUcjRFYmVvOFpjNXAjdlBoUSUtcnN4aUtBcipeJHBOMjcwT1NUeHZGd3h0eUB+
YHw/QUd0a0lJZU8/Cno9VUN2RExmen4hNjlnVmpeZipHNEh1fEZuWHNwPzhgWWBndjFaTW5wb2o0
bjJwQU57OUpDZnFOI1ZjRDsjVmlVYAp6VT4qKVJlfiY1fV4yYDZRRDxDUnFEVExXUTs5KWVgMj8j
aD4rcSQ7b3pzWDAlQjsjPE5ydVZOJUstSGhVNipNdVcKekBET1pOSWJmYns/eHtPaXVxWEZLQVdH
KyQ+ZXJtUGF7KzEyPH4oKHZCWEMlKntZPD1ldSs+WXpXd2FsbmpecE5+CnpoTSpJWFAtdnUmPm5Y
aTMqJmJQSXBpc1RHOzJJJihXbCV1WmRxcW9tbmJ5WEZga2tOJnpBKTE/XnMkMU9SVkRDUwp6NX0o
eXA4cD1hfmNVe20jeUtQTypoSiE5K1kte31EOzhnQShPV3dVYChoUyk2UXFDamY0aDYkYCpvcjw/
K2g1dyMKej5YVjcqIT8hYSVYbns/VmxOIWF8V0wxMjZmUkNiZk0yYU56NDFEKWstK3gqbyp2Nzd4
OFFIUU47cDhnLVVFaDFACnpgfFBSLSVpdG9uKXJLSF5CVTxOLU5MTno5ZTkmVTNxYmdqeHR2NTBw
MHklZCZfJWpzWmgtQFVLIT0qcCpWQUFQMwp6M1F3Z2lhRCY8TTghYz5jVW5ZbW91TlVPRExJe35Z
TUMkcUlxVkB6ZSkoamkzbkZtKitgYShzIUIzTVU+ckJ3JmUKelRZWlRfPiNRKFVXSHBUQntSJWJm
UlMhMmh3UXUwIz96ZHZldzFNZUxwaSVGRXM4Z3MlQjBxO1EwdGhXXlAqcnsxCnpNKCV+dFJVJCNN
ZF4pIzMwI2AwQT5ENSo9VXYzelRsU31oKmR6PnB7dVRaam40KVVGXj5PdVBAX3xkalooOSk7bwp6
TiQjQyY3RkdlT29AUnJXJTZXWWw0U2Z9PFZOUjtgQCRfMDxCSj9GLWdMOXdBYDg9ND4jfE53IzBz
fHBuKk1peUUKelZGSmNae2htZGFOdDxiXyY3Yj5aKkI1ZCpiVXBlUzhyJmx+QX54ezVlb0dPXkkr
WWM+ZSFzaGsyQzNQWm43UnUhCnpeJUpWKnk5diNfWko4UDNte2laPDYpRShTQ3BeMmxlV0F8WTI1
RjBQRiQlXzA2UDZkVUYmazV2ODhaZFkkT0g1eAp6NSM9WDM2aml7fGZ6eDxrJldETDMlLXNhbWlC
ZW8kUXlDc2Q1eW1haiNgVDkpWFdAND9WbjUlIzUyPlF6eHh3c3kKek44aCt8eFNUWnxjcT5oR25P
TE9BYXw+TDMqfHEtPFlNJDtvbm1sdk5KQ1pPWGctc2srZnhxR2lGe2lraHUzNVNzCnpiSEZmbCEw
dG5IVWg/blc3aTVIP1RZe3o+bHM1Ulp1cERqY3pIdCl+ZXRhdXA/e1Z1K25pXkdGcztwYDkmTHRS
Rgp6PC1WZSUoLWRGMGJFRDthXypxaGg7OFMtejQ+cm9AVWIpfkB0akg8O0lCcEFZTSYwVSlUS0s2
IVVZQm16QzgwMFQKendRNzFhT1A1JCRmcFFzTkdUR2dVYykmUypVbE5HaHZoZ0hpRndZVHdfSTw0
d28mQ1ZLWDhybVVUZFBlUSthKkVgCnpXYWRSZV9KQUZKcTtCYD8oYmFXRF82Xj82Wn1XNWRaTCYp
MkpVKWtLdDcqY1A8WHZBMnMxKjNtUFQzSXl2V2AqQgp6UUZxX1VEKCMkK3VNbSptXiVldkYtOEFI
N0s+dyF+SkhCbjZQViYjIWV+OGp3JGRLWHw0WHw+KXpwRytlQWdCfSkKeig/WX0zVng1WWV6akJk
a3h9RjFUSHltemI1QGJDZUwtLX48ZmYya0grRmViPDFJaG97Pm9uYERaZFVGVW43NEhuCnpGbVZm
NWhyQyU9dz99Qj07elFyMHBue1hKXldfcXV7dzRuKFR8JEw9d2EkbUYtPGxNTXY/N18peyNeS0J8
OCZVQAp6T2JmYjg5biNfamJEZ3JlVGVsaGc9OChIUUNgKE1seTMyQWE0UzJ1T3VUQzZjbWsjVTBz
STM8MCl2dGFJanYyMVoKekpmfmA+JT83UCs9WFQ4b3JYOEUrSWk9Xk41VEgoZzR6RkBLcWExUEY7
JHFJNk4lVG5scjlMNjQ/Q3k/a0Y/TU18CnplX3RHKnVHPEtUK3tvbWl1PX49cWg8NUMqaE4+WUFt
MEN1NmUoUH5qI2prRHpPeEQ+M0RofGlCcmtwPHhkQjNFTAp6ME9wYGA2IVloUCtUek1icClNcz1e
KyYwXy14US1ITWJ6VE53NllhfEhZKj05eHNNdV8laT0mbGVuY2J9RD5RWk4KejM5UCNQNyM4Mldj
Ti1aOD4pSHBGMjdXUTV5KEk4fnh+e3A9c3VSaFNJPy1aaCtNfl5SLXZpPkFyUnE2I2p3R0xMCnpq
RjgyIVdCcW9CYnNOdTEmV3pEWVIxWChDKiFzVDZrP2JGXnRJUCZNVjl4O0VNPFF6LVZlI0U9NTd6
bWN0YllaXgp6RytBOGM2UlJHYzJKPmJ3VmZZfDYpMkItRD0yYkZFbEgjbFQ7fnAmcjtXTCRxYExV
I3RzfW1SelQpKkV5ZjdWMz8KeiZ1fnxfc3ElNkYxaTU3ITs5I0QjMmd8S3NfaFQ2eHhFUD13e1Yq
V0srckVWRGYzJS1oOSQyRmtyPFMybEplcCYwCnpeQjFvRWlpenVmdEtgKFB7JSl3YTlaPjMxTHFA
TVFYVDVqNTxiPl8pRUdQcFdqSXdJbz00Uz5MIV9YRjRaSkVPfgp6VjN9aW9ubXJxX1UlemZSVzUw
IVNEamtAJE5mYDxMP3QwVzRQMUhPYio9M1lIVT09ai14ej1DSUFJKyhYKztKMjMKelQrPnlZdFA5
clpANktjSyk7SFFnd1ImTlo2MzY5QGJncDhiZnd5Y2d5eSlWWWUhPE5lWlpGdUQkNl54TnZpeSNx
CnpDbXxiSFZFTyZlNTBfbUlqfHEzVD8xcnB8TXpYQCVAbGtyNCVQZj5WYyRUWE9uQlpUfiNTQiQx
dGtpWVhZOG55ZQp6PXpxbjhRYSQzO2FVOGIxJTBFIzNSNUYpXz5sM0tAX1Z3RjxQU3E2VUwzKFkz
ZXtKcG9AUjE8Q1ZvNmxOZkllcDYKekoxI0xWdmhxU08+RX5uUSZWeT9MPHJ+I0NNQDEjUTw8dzM/
K085NlJvb2U+TEU4bmw2PnFpcFVlemA7aVgofk5gCnpPVElpbip1WkktKSpvVU9Pa0t+JjlyZ0Il
PE8hcUg7O2Y/ZUJRKSQ0WUlORX1ya3t5VzRZOW9Rb1JWQ0ZZVFJ3dwp6JSkoaX09X1BMaj9JNmtx
bz01K31tYVYlMlB8QH4xKT85NkdNel8pMENKcXtAVkxkZHx5MWEwVzg0bD1eVHYzLUcKej09MDxs
MVFjaTc9c2RTJWxYdiZ7YEsqJlg3YjZ7KGBMcHFlencmU0tOQ3ZEZk1jaWU3ZjFKIUdYI217WiM4
REErCno5WXB2Z3tDOSNjOVJZKU0lZVh3QUhqa2N1QzJLfHh6SkhpLXdrOzFuN1QxbV48bG1ZI3I1
QHNSO3Q0XmZ7dzFHfgp6Vzl+PlQlRT45PVJ5a2RSIXI4Y0cpUjJVUG4xPDIkRWx8fDApejM8RztH
TypaQTB3JmEyelpfJnBXe08jJT1vRjUKemE5Z3p5NGF9PXJqVVVNbXclfktpeD1CWkBSZ2pzIVF0
bURRemgocE9DMyV1b249fitHRlBga1RhQm13N3AtSFRICnpNUk9uITstZkEzdXhKdyZhR3RAJWBC
PVEmVWk7WXJGRjl1VDBeaiExciNQbHAyNmp6UXlKPnhaZ1IxJEFaLXhmZgp6Nlo/e3IyOEFFJlh7
Njt5YjZ9QkpYS3ozamN0PTNneCZMQl9VQUA7ZXpMRnt3dm9COVEmI3ZwV0RZSi1XJE4/cloKemZK
fE9VZkNEU05rRnZxQWRJKHB7Tys7Q3VWX1lqJiEpT3Ymc1V8QWByWGJfV2hhcE5hVDViZGZEeVZq
Uzg+SWdFCnpCKGhIdnBwSz50OSVoemFjUT5PNGwwP08ySSVeayNjLSh1QVdURVB0MWEtPik8aGp9
bi1wWFRoclM5OXZUcnN0fgp6R0d2RkNTZG5eTnNwTFJZckJkOVUkRE02alhqelA4eVA+KVFHMmAh
UjNzO3BVZXEjSkshO3ZOO0JDYClTIWZiYE0KeipqdEBqXmd+PztqUiEmPnElJWUmMChpfG5AczJS
TkVLXkx9KElJUVQ7cyhaRSRuJUVgYGtGZjxQKVoxZjBHR3RvCno0Q29od1hLIU5tKCsxO3ptaEZm
Jkl7WXhVPnk4PiRnNGlAJipjaWhnKEZlUllCT29OQXlHZnpObW84IyMjcWsyYQp6ajNKYjk1PiN6
KjJCX0x+LXRueVc0QV5WJG5PI3tNazg5dTlVWVczOFdeYXI4cUh6dC1gITE2Q20xa1M7bFR4KWgK
em9xRjc0ckRUZWU+PHU1cj98I0NLUSlWPFBeVGd9JTt7TkVweSZ8WGFjaU5gSG0wVWNGeF5KNWd0
dTJsUWJAYyNHCnpseFIldnFXX0ZYSyhTQ2lreUVBQUFFfGYmamdlVFZuJG9YVklLR25wZEBETX5w
V2Q1dD07QGJidnBsMGQ0ZDk/Ugp6JFN4dEtTZCo+RFgtez55Rll6I2FBRiFvcVF3REV0UU0yOEs1
aT5JXjZRXiVXaks/fkF5RHpMaHQ1QUdvWG9qV0AKelkoM2ttbEVRYCRyUD1lYVore0YwUmxCczg7
X2Q2XmBZNE9FX1dFK1dfQS0xLTUtTjNGNFAqTTFNa2t1aXhXYDMmCnpaQGVJRjdjQilhcDtVNzBt
WjtqMFZ9TlJwVHthMik4TSl1Rl5QenUqe1MkRkk8eEU1YXRsTHdiQFJAT1hkK0RZYQp6PVY1MXRu
b1A/K19scklTNWc5UF9FaXRKOWJkPT5ebTMtQWkkJn5qKSViKj1RX05TK0pZPTdfdUFSPzU3MWBj
ZH0Kemc9RjFHMVUmSCVhI0k8QVEtKzlxP0d9Zi1yc1F0S0hlVHM+bXBTZ3ArPkNVekxRQjlNcFlg
NGt6VlNkIzVCalBKCnpZYnpoO1c5NCtyO0t1IXQqJEFVcEdKTHo1UFdWZn4qdzdAKmBCQDJNS1p7
I05PS3UmYXVGUUFZM2gxOFQ/QnNDWAp6OGtoNVBoYjUqenl6QD9SJCRPJmdkK353cysqYEg/cG49
K0ZFeVNhQkpNbF9xP1k1byNHK3d0XiZZRkYwZjEmPWEKemlDKVU7K0V0YDRyVHFIeGJMTkAkND9Z
SEhSY3s0YHcyRylDbylSaSZKNX5seEp9T3I7TUAxMzd3QzllfTYwU1c/CnpUV0pQUW5QPDNaOSY4
MX5oOyo8M0VxWXs1b3BDPTxPWGw3MDFDb0YxND5hOSVXNi1JbHdNJkN6SCpfajhkdnlgKgp6T205
ZkUzRkl6dVQhNGJ8UVdnMzcpKSF4TVhsbG5ZRHl1R0k+OU12LWAzU1RxYz5eUCY9KndPekdNI1p5
MilgYGMKejckSGk+S2R4b2ZRYHA0b3FILUNpQ19lQCVSTG1DY1hGV0o1OWI5bjhGSzlJR15pR09P
QGJPPGllKVhNWXJrJj5ICno9MmR+cj53S2MtTnlebV9aVWlsSmE2RUEmVk1Ua212TkwoS0pFKXF0
N1F7e3s4dDhUIWZWcmFTOWxJIWRBT24oQQp6O1F1NT02bEE5I0s0bkx6dThTa0I0QkRZSWJ+b3ZW
I297V001IThlYGpsQ25UQDtBJFNtNyR+RT53UkdUT2p6I1cKeiR7Zz9ORylfUiV5OzB+SXNxNTI5
Xj11ZWB1NGwlJWJwKGIhbTF1UGklUTx0JWRqXmRaO25RemxlcEJ4QFpmTEIyCno9dntsQFQmeCF4
eUJWc31tRVR3YGhxS35qdEZnQyRFeSpMYFg9bTAtVXQhY1BJbEdGQ0lXNCZ0N14wSjlFKnhvPAp6
STJFQWdAdGA5dSUhZXpudms5SEYhajFIYHNLZmozb349VkctKTFXaXNNbkQmRHNveXhQVjFuJnc5
OUI9PXFzX2oKel8yezBXcnZXMCpyPSZSY3lWY1Q8JkEyI0hVZlJVKENCZ2U1bjNrPjhjO2owKWZe
UyVCez5idXVoaWtZZ1k7YjJICnpUdkJwPCFzfmg0e0lnNjQhYi1ySnBKQXVaNDtgPXdBK3tgTGdL
eWVHdWh1SWBFJkloJFFxNTx+MSohblRNcVZSQwp6SntwP1MwQHw8VjctdVQoQDlNNVQqM2EhJTMk
WlZXJD9mU2pzaCRla2EqfCluajA7U2NgfCZ5R3kkP3ZTbjtgY1oKeiReI0lVM0xlPCZXaSFVWDAh
QT47Y0owSVFnampCd2g8Y3U0SUo7P3VXVDhUZis7eEd2R19rSCFgajI5JnF4fjFRCnpiYjEjRGlC
cmFmd0xHQFQ4WFVfNFJJTFB+Y2c+UVZ5e3k9YFZeO1Q4TG5HSihUc0Q8K1JsZz0zYChLbTRlbml4
bQp6NldYZk8/ZH0jSHQrdExCcnhvXnpWSl9MPD48P1FnMU59XiRqYEJFdD1aKmtHM0tXeTtfbEZ1
WDVzc2I5Y2kzOTwKel5FUzB9JCQoNHE+bEFseSo3MEQqPC0kPy1GUWVHdWgxZE5HeFVwJElHTl50
KUAxT2ZpQDkkP1dKeDZXdnFQP3FjCnpfQCN1TjhZKWJOO3xSMDVtJXROdUlSSXtzYkJabTlSa3hU
LVNxeCkkaz5lRl84N2J4akBxWWVydVhlJV8kdjdaSAp6JkE8NX48ZERzM2V7PClvWUspPE1sYjYr
RXlWNjRhcjhmQ0IhYCEmJm4yS2xTdk1zcz8kS2s1UTs8fEYyTFg/VjIKemImVHhUdz9hbWIweUFF
RUYpX2t0OUB1dCVVckFaP15SX01Ic3JWJWdqZyVnSlcybU5zVWktKmFleEw5Q3FFWUdOCnp1ekxg
bTNONjg2Pj1PI21KOG88IWI8VUhnTCE0KVBRUDdNKmRmZksqUFFYeTV6TntnTngkKDxBNE5eUExf
dX4/Nwp6dHxKPlN0JEFNQ29zeV4kbXokUXJ5XmcoYnteNWM5Uz9jOHhRNGw/UjI8UDFSSmRYTGN6
KT94PnVxZTljXjAwOy0KenY5ZXg8bHNpSEA+QUByRHV2NDx5RWB5Y0FCRVNsU2pZVFBobDh9ckRJ
Rn5wVyZ1UXpoZ35IUChhazwtMVl5PmZECnpYaGpmSDRxb3crVylfWE9yNFpxSStyVFk7MVhsLT00
fDVIfllpZz9pVjQ+dGB3MTYzVVdkNjBPLXo3KXRpMVpBRAp6MkVsVSFad0Neek82N0R8d1F6PTc8
fE49JDlaO3gqOWVzRV5BQllSTSRLdFE8SGQpUiswdFppKSNaMyheezE2Tj8KejtxJkBkNik7cTxj
YDwyeUJtdiE0KXB1P3ZVJGArbVppVDtUd2hIZihIMnhUc2E9TUt1YGRDfEd0THN6WkRCcVMtCnox
NkV0JD0tfURJNDYpVGltJn1na1BfNUVAdnZIS287JktmXyN5czdAIXpSYTtWUkc2fG1Ybyh+QT5H
fndnd1lGQgp6OE9yP25BV0pwZmZTangkJGZffHVOKD97OF52Nj1qej5mT2UtMkR6eHwyVmR+Um99
Y3MmKFZLRXgqRW0qak1IM2sKemxxRXNvTTtAc3RnfEtNS0htNVUpVmt3WWJ7cVUqVihMVmhtTGpm
Z2pYezMhaT5MTlhLQEdIeHhqTH1DTmVxaXtVCnpfRypjVG1+SG9WWWp0Nk5vbWJOR1RMK1NTLXh1
fTMtaVFXI2tqbHp4VFlpPkQ8cUArPCQkbXdAbnk+TStNI2d1UAp6VWpiVVJAYlUyYXdBRnJ2cVl9
K3BvTjNyfGtjY1JLMzhnZmtXSTU2PGVoeH1xNX1NZ2Z1TW5ebGMyRiNsI2pSa1QKeipnbz4lbjdL
S0sqazg3QDVzZV9BTzBfPWhhbyRUSWpwRDFjdnVmWG9sQFp1bWdwVWNNemRvdzBeYjd8I3Z3bUJH
CnpOJTxPWG5FVE1ONCY1emVkMW1fcyp6dUkmKHZrMH5FNk9DTHhuVmlBbUJvQnhoUXktPVFHT2ZX
UCMobTlNSXd3PQp6dXMqdkQzZGhwTEJkQGo7eEglcF9OdDEwKXlYKkI1b25nYDJUMVVlX0twOF5L
c0Z3Wn1BLVk/cCE5V2Z3b2FDU3EKekZwd3EtZVVWJVQ1c0BZbTlYI0dURXc/dmtiSVhlVVQxNmhP
OXpKX2BOIz9Fbz49ZEdGYGZlV1glbDB8U0JCcCFGCnpmbEkqSmBfJSQhe0FhNitfeDU5KiVaSkpn
cGtWc1plaU19P2w8e1dCO1lOM0l0azB9dz9aRkUhJXo9ZFp0LUh+Tgp6I1owPjB5MT8xdSg7Mlgm
YjFKTlRCbUN3I051LSpCX1ZvSSFqNFozRFM5bmRuQnZpTGFNaXg5bURfITdZdFd4Q18KelFTIV4p
WnN+WTZsMDUmb1Y2Vmsldlk4TCVpfEk/ZHBXeVhFPENNPXtEOztXP3Jraz5Deytab3JLbUlffmxx
PGNrCnpyXiVSQnVQNE1MUXFnQE9ENzZQVSokN3MwVE8qMzdwJHwlQCtLaCZwLWYxX1Q/KSg3d2FM
OV5+UG53KCNHM0NmeAp6KVIqXyE9NTdFJUt6YTtfbSRxXldCZ0VfQ0dDUEI2Yz18VmtYWDJAe3pl
MUdJc20rOE45flJBbitjJVVseyowI0kKempYXzB7QDhlfHY3XzU1Rj1RVyhJe2RwPVN0d0NjP0BN
X0FucVlxQ35lKGpNZzM1TzR9Pzk0LWI7OzlBI3N4ekpfCnp4e0lGcnVtYjUrel9gcDl5bFhDUUZ3
V0xyYkBYQHxRZDIhP1hUXytrX3ZXZEh3MyRPJGl3Wjhzejl+SXpYSDl6Zgp6RDIpd0QzUTZmPiY1
X3g7ZWc1alcxV3tfYkEmZW00X0pAMitwU285KiZzfjRSIVdwfFVvS3xzVHtxPmx9Z1JsOVgKekdy
QHByI0FCNy1gQEdOQTN6PncwWWJQMW8mYUFwRzcrU3NUT1NYN3E0KTJqUXNGKm93UiY9akxgKWoo
Jk9uP0haCnpqMmReJURsKF9FUVhDdUc3Pl84dzxhfTZrekExP009e1czZlU5JWJUZ2dXdFAtbSZX
cVA2cDlYZTtWK3doTHlHYQp6eGNLanJkNTVidUh+alJIeChVc04zQ34rJFJ9OUlWcHAtXzstfjJI
cnxKVG0zI0p5SmZCKXh7T2Qxc2MpK3ZMX28Kei1PcVF3O3g7ZiZGNjNMaVVPcUM4bHFtRlUoY353
KmU/NzcqQUVrcEU2KF5VR2hpcGxHamRVfXJsOXlOTjhjaV4jCnpRez9iSzM2bntFMW9ge31uYSE4
WWl1VHpXLT1uUWJ7UylnX2xnZUlwWVV4dT47PipQXjcoam5wPktrPGE1c3dYfAp6OFhmKU9fQVNV
fENnV1UqaGNTT0RwSGsyOGMkdz9YQGQpXjxPYGl+YVVWJkBnJkE3RDskSFkpK2BkeW9BSzBqUksK
em4/RUU4anNPYWtgQXNzNmRVVVF9SnZ4a3ZNdT9BTVUySHdIRXZgKEk9PUp2UV5fYU5BKkQ5LWdk
eFctNUZhMD02CnpHPEZ7R3dJWnd9LU49S2ctY2RRezsrKVUhXyVMQjwlKE02a2UqKkRgLVI/Qzww
V2QpfWEjUytTY180dHhzZU42bwp6UTF0UGFNaCozP2hiaXBDRHZTR3xsRUAwfjs7UUBDUzd1THBA
USFDP0ohOE9UeGxvUzAqKFFyQ3EtQGF2JEh1aXAKelJ7UHdXemtIfmhUalh7UTFnMUJObUIrNk4h
TEl+MUN5NSlDKVpDdXpJPW4+aCYxY1glPnFWe3ZGYVhRbkBYX0x+CnohZG4oKlV2NExFSm9PSXlw
MiF7U0I7WGdmMjgqQm8/ZFNxKXtIJEU+X1VAKVBUVHFfTWY+Qk1AJXtoLXA+XmJMUAp6aitxYzI9
XilHaVE7cXBRe2M4YkBhSF5PVm9YNXdpO1peMmRYSV88YXhwVH0lYnJOM2J1VUQ0akpkb3otUXM+
eioKekNBIU81QEVUSE9eIVR5KTRiNXAkYSQwI15maVNSe1c7Yi0/ZmQzaj9iXjJCSG9iNXI9d3RU
SXNEUDB6RHhlbHh8CnpITj09OF51VzRpY19Sfjl2ez4tbGp3ekVofEN4Mn47X2leQG4/TGxlPTJg
eVN3Tn0zT0MjLTU/dmEocVU1ckJeNQp6bWpHNU1iJEU3TWFSckpOcEQ1PUpLSkF2fXZXLWhrT0Vk
I1k+PX4kK1dMOzJ9UTd5c3xgT3x6U3QwUXtxZi1JJVgKel5eU20zUnw2MEQkVCpscXZ6eG5sJXNW
TFJrbX01S3xLKFZhPCg3T3F0MW5WTzBKQzRwMmtmPjJHajsrIVk+TTdeCnpkWWhQfmg1Jjw9PWFr
YnpNdDhPSUZrQDJGJD07Wi1GI0M1aXlLNHV7WDB+ajlHVHJ8KXdpfVpwSkk7KlI+XkhfVwp6ZE43
ZmZnNnZ7a3RUaTx5OCVUIVMtQUJhPDtzfEM8Sis4T1oxekc2WVZ0JH11YjE7KThmXnFjR08pY2Nv
enhxVFkKejwya1g7eXFmV3BOLUNWZCh3JT1nSVJ7dHAxeUspdWpwK2R2Y0xHVEN6ZGZPMGt3QkB4
P2NDcXJ7YHcqS0JoV31WCnpFSWQ4dFUhIz1sRnNGYURsWkhXSmZ2Vk5ScThgWTwzPEJuOHs8WShZ
SWZ8MmVjajcxfnYqSDkle3NvakxAQ2lHSwp6NihAMV9nakFkYHNESlUpNlpaTjRnKVNaazkocmd+
UUJiQFVCRGA1fFRzZU8jdzVrdlVmZ3pBVlorUV8mMzVRJCUKemA5ZVdTMSVnMGU5S2lUckFBdD1s
blAzUkVUMjVlYHlmdHxnNmlOVTBNX3thcTdKYGtQZnt9T3AtJSthZjtKLWZ0CnpWLXB9eXgya2pH
LXt0QGRsPUlhOFl6dS1vUUJtM0NOK3x6eHlyM1k4S21XQFpOUD8yR2BaZ1FhPy1OMT5lZnV3Qwp6
UjJlfU9sU09uNHp0MCRmXiFzZyRCM0s2KjxUTWlnVW5jfVpERXV+ZGFgYDd1fEhTISEmeUpKMXt+
Smg3cHpqM3YKelBYZ2NYUDw7fmpQaVc4SSU8Nj5vb3NpeFcmaUBaS299QGcjRGRiN1VjYXJkKTxv
bXhSajEjJXpBREh9cXNQPDVxCllQOEpjKHBqJWVKZV5GQ3RzT1R6SitfVmgmQTM8RTxTTzVTMwoK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWNvbG9y
LWNoZWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZm
ZWN0LWNvbG9yLWNoZWNrLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMTYzYjRkMy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2VmZmVjdC1jb2xvci1jaGVjay1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCww
IEBACi0gICAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Vm
ZmVjdC1jb2xvci1jaGVjay5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9l
ZmZlY3QtY29sb3ItY2hlY2suaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDgw
ZDM3Yi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVj
dC1jb2xvci1jaGVjay5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzEgKzAsMCBAQAotPCFkb2N0
eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3RpbmcgdGhh
dCB0aGUgY3VzdG9tIGZpbHRlciBpcyBhcHBsaWVkIGNvcnJlY3RseS48L3RpdGxlPgotICAgICAg
ICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1ND
dXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAg
ICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0
aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9u
ZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAg
PGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8aW1nIHN0eWxlPSItd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVy
bCgnLi4vcmVzb3VyY2VzL2NvbG9yLWZpbGwuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBjb2xv
ciAxIDAgMCAxKSIgc3JjPSIuLi8uLi8uLi9jb21wb3NpdGluZy9yZXNvdXJjZXMvdGhpc3dheXVw
LnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcu
Li9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29s
b3ItZmlsbC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIGNvbG9yIDAgMSAwIDEpIiBzcmM9Ii4u
Ly4uLy4uL2NvbXBvc2l0aW5nL3Jlc291cmNlcy90aGlzd2F5dXAucG5nIj4KLSAgICAgICAgPGlt
ZyBzdHlsZT0iLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRl
eC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1maWxsLmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSwgY29sb3IgMCAwIDEgMSkiIHNyYz0iLi4vLi4vLi4vY29tcG9zaXRpbmcv
cmVzb3VyY2VzL3RoaXN3YXl1cC5wbmciPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBUZXN0
aW5nIHRoYXQgdGhlIGNvbG9yIGNoYW5uZWxzIGFyZSBzcGVjaWZpZWQgY29ycmVjdGx5LiBZb3Ug
c2hvdWxkIHNlZSAzIGJveGVzIGZpbGxlZCB3aXRoIHJlZCwgZ3JlZW4gYW5kIGJsdWUuIFRoZSBh
cnJvdyBzaG91bGQKLSAgICAgICAgICAgIHBvaW50IHVwd2FyZCBhbmQgdGhlIHRleHQgc2hvdWxk
IGJlIHdyaXR0ZW4gZnJvbSBsZWZ0IHRvIHJpZ2h0IChubyBtaXJyb3IpLiBBbHNvIHRoZSBncmFk
aWVudCBzdGFydHMgZnJvbSB1cCAtIG5vIGNvbG9yIHRvIGRvd24gLSBmdWxsIGNvbG9yLgotICAg
ICAgICAgICAgTm90ZTogV2ViR0wgbmVlZHMgdG8gYmUgZW5hYmxlZCBmb3IgdGhpcyB0ZXN0IHRv
IHN1Y2NlZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1jb21iaW5lZC1t
aXNzaW5nLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZm
ZWN0LWN1c3RvbS1jb21iaW5lZC1taXNzaW5nLWV4cGVjdGVkLnBuZwpkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZDM0ZGM0Nzc3MmUxZDY4OWRlNGM0YjE4ZTkwY2Y4ZDMzMzFiNTgyZi4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5IHBhdGNo
CmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAxMDkzMAp6Y21lSE5TeVU1TzdAa1NrNn4k
TiFxRypKR3MwRzVWQVEmKzBuXzNtSUsqRGJJZlo3NilCYHxQNjBZTV9fcH59QUwKemFZSE92RVJj
ezJ3ZVZtO1FXczxzZGVDcXshbEI0Jk5IMTNBPUo7SVNDTkloU1hZUmU8X3g7UEFgRU40IWRBcTJx
CnpYeyNYIXFWREYoSmIpbCVEdVIlWHMzLXg7d2I7fkM7QT5tNyh+OzxxVl9fakRldkZBa0xWYGpw
THhaZD5nVHZeJQp6RWE/YChycS1jNVAwaG9zPSUoUlQpfjRvV3tFUGVpNU0oPmtqcD1hazRFbkIq
cEgmcDVsfEZjfkZqSXErYHJ4UX4Kem1SRjU9JlFSZXNtK1BmZ3NhMDNCKW44VEtIYE9aSVQ+bCVu
WlRJaTdaeUgoRWIjZExiI1Y1UktlK24reTclMSllCnpwdlMtdmwlJH1kTDFrYjw5aElpaiU2blJK
IUViMHhDTWpqRzZoN1V1V0ZHZXZCRU9tKy07O3NnZ1BgUEFpUUU7NQp6VzVDOUcqRlZfSWchNXFO
NUM+aSVEWWszcmpQZE1PdDk5WDh1ZzkhWEZMbjR0Qn1fSWkkXzhzcW9KKjF8O356eGsKend7UyFx
MSVrJUB4c0lZWXckcUlULX0mMU05ekdtU21sLVVOSEJfQmw7ZDt9XlBqIWpMTTxBXz1EfHUmOWhT
bn0kCnpZWiQ2KFFMQkNsKW42ViQpekc5Zmg3X31XYThSVypIZ0A/ey1XOGsoIShXSkdZOHUpdj53
fjFeVmQjUDU5KjNiQQp6ciVeSTN1eXBvNntnd3YwbGF4TE81K3lhNVNgYkpeZUlpcz4pa2U2O3dv
a1E4LVJfaSheYWFnNzh4fCNzSXlNTXcKemQjNFlITVMqPFc4P0d2VlBgU1l0TmEpVE1IZ0BNfSNn
MzFqYFVzSnh1Iyg2MGEtYHJDa0wocDllaWJnaHhDazFxCnpEcTdVY1lpVHJgYmo/YHx7bjxJVThY
clVEWTB3IUlPSTBecTJEVW0lNCRhdlY7REI0R1V9QFRNTioqcVpQQEJ7IQp6R25nOF5YTURDeGJa
O19ueE5xWTI8TjZXNHNLYSpKbVgmVipMMilNZyk2RiQkU1RwdmB7dDcqYStYQ1FyX0JrTWoKeitZ
I1V7Y1hvbGVqeykyeyNnJWZuKCpTTn0mSU8zTzZYNGRpYkNiaVozVUZzPz5wPE00MEpsWWFvKlpy
cE52Vnh1CnpYX0phR1ZlRG5rNDVTR25Tcj0kTl4mLTlJZn5TUyokPlpIdCh4I0IrMW97dGdIRmd7
TXdtc0tOSUs3O1RRPThULQp6RkZ6SjJXSERrezdjdURnPVdGUFU9T2JQRSY9UENIIz5ORD9zR0pZ
PWZEYzdnOSM5Sn41ekBfZEJGVHkyMD5yckMKemtxXmFxJHBfcFF2Sn5YaHhCeDhQYE5tdElVbFJj
Tm5SVGtKeFlPNz1EY3Z1a2wqanAzeG9oVUZ4WWkkckNMP0VeCnojNjdlQlQraGlLJjxUSXtNRFFA
TlhPcmgxJHhleEpfeWB9KiE7R2NTdDI4dX5nR35qbkpJZ21mKmk3STsqWnNrQQp6czJ1PzZHQUM8
QElzPkB5VnRLMF49dWBtT0BxRTs+aDhrMjJBZXBYSHJrbzJFMGdMcG5gKjJ6ZXN4QkwyVz5HSFQK
ejRpbD04TD1zV0leek16VikpbTx8ZGRCKj9WfFJVTWRSbmAlcGdWUVJQb09OfilhR3MmU2FAQHtn
bVpkeSNjQ1kwCno0UVl8b0hSNjUlPTU4RndUfi0reHplNlAmdT00aUpnUkkoQ1hpP3xYYlJlOGs7
SzFtSHl2c05vMkptMEl1TlotfAp6PlkoSUcoVW5SVjI5dXk3MnBwQjZHR2RAaVE4ZikjQkEoXztz
ZFg5NC0jP3BZVmlHYW5wQS17Z0lwNEdwJio1XnAKemU8aS1+dD9nSkM5VWtrbTdgV2VXN2lUcyFm
ZnJ0Pz9yVzFUQihoU1FubyZhdjxqRGwzQEdFQC1TUEl0eHZET2BwCnpDUFBhR2hFbGU8ZHFPRjhz
RWpRWmJULWRMSngqTndxZ15+JDgjejZtSUlHXjw1emV8SkQzYU1fKWtgUGVqYGh1Kgp6P2B8dyV7
bl5pI3dMY0xMaVpvQH17b0l8Mkd0cC14OyZidSU0cE5oVkNaa159UlkyR2s4MyNEUjxlMzQ1VnRm
YU0KemhZS0xJMFQhRXBoQlJteTJVfD5eRk8zUW5oKjV9QGQ1THAzT0QoI1I3UjRgfkhudSFUc05r
JGxGNjgkMnZ+KDs0Cno2PiQ2aXpSaHUmRD10fklpcyFzUEg2MGYqdXhMTnVSMzg7eUc5I3JBeGEz
UWs3VCtkSyUqJj5tQGM9UmN5dVd8MQp6WnY+YUEhX2Q1SHBFRlFzQk1AYFheNlQmKzNTQSlQOHRl
eVEzZkJRfDljRmRHJn5ebyhKdTt1UjZfNCNzM1l+RzMKej4qaiVMS3M5MXhtN3tCbWFsI0FfQUBV
Z3pWZil+LTx8KU5UYUdSeV8pPVgmZkpQKVA5ck5tJDw+OGIjSEI/YzhfCnpRUnBwLVRvJG99JE91
UEZme2ZPcVdaSmheTitGfHB6XkhrekNke0hYa1ZSSy1EWm5pMTFwRTJDUDZMaH5WPnBBewp6Smc5
RjdnJWU8Q20hd2s+JlQwbGB5fXNRNj5ORXY+bnNtKz4pK2lwUlFEJW8hLVNLSGxLfjxsIWpZaT9E
Kn14cSkKei1TPEs4VDtQc0B2SzZxZmdhWSptTmVEQFpDP09KdXMzaztzQzNZTlE2REZRWmgofFR6
PjZMaChDKkU8MCpGTkcrCnptfW18VntTdTtJTGJRO0d0e1R5MyNQPFRDX2UhKippNEh3K1hoRUZn
NUp5fFlYJi1SX059TEgzJEs9RjYybVk1bwphUV4taVdKOSNIPHMjK2YqO04jfXgmOCY4MHJ+VjZz
ckFwQk4KCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVj
dC1jdXN0b20tY29tYmluZWQtbWlzc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tY29tYmluZWQtbWlzc2luZy1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWNvbWJpbmVkLW1p
c3NpbmctZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tY29tYmlu
ZWQtbWlzc2luZy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3Qt
Y3VzdG9tLWNvbWJpbmVkLW1pc3NpbmcuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggOWI3ZjFjYi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2VmZmVjdC1jdXN0b20tY29tYmluZWQtbWlzc2luZy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEs
NDMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAg
PHRpdGxlPlRlc3RpbmcgdGhhdCB0aGUgY3VzdG9tIGZpbHRlciBpcyBhcHBsaWVkIGNvcnJlY3Rs
eSB3aGVuIGEgZmlsdGVyIGluIHRoZSBzdGFjayBpcyBub3QgbG9hZGVkIHlldC48L3RpdGxlPgot
ICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBh
ZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90
aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0
eWxlPgotICAgICAgICAuaGVscGVyX21hcmtlciB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiBn
cmVlbjsKLSAgICAgICAgICAgIHdpZHRoOjE2MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiA5MHB4
OwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJBIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpIG1peCh1cmwo
Jy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKQotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5n
LXZlcnRleC1vZmZzZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWlzc2luZy1jb2xvci1v
ZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
ICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0i
cnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGVscGVyX21hcmtlciI+Ci0gICAgICAg
ICAgICA8aW1nIGNsYXNzPSdmaWx0ZXJBJyBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5n
Ij4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDwhLS0KLSAgICAgICAgICAgIFRlc3RpbmcgdGhh
dCBtdWx0aXBsZSBmaWx0ZXJzIGNhbiBiZSBhcHBsaWVkIGV2ZW4gaWYgc29tZSBmaWx0ZXJzIGNh
bm5vdCBiZSBsb2FkZWQuCi0gICAgICAgICAgICBZb3Ugc2hvdWxkIHNlZSBhIHJlY3RhbmdsZSB3
aXRoIGEgd2FzaGVkIG91dCBibG9jayBvZiBjb2xvcmVkIGJhcnMgb24gdG9wIG9mIGdyZWVuIGJh
Y2tncm91bmQuCi0gICAgICAgICAgICBUaGVyZSBzaG91bGQgYmUgYSBncmVlbiBjb2x1bW4gbGVm
dCBvZiB0aGUgYmxvY2sgc3Bhbm5pbmcgMjAlIG9mIHRoZSByZWN0YW5nbGUncyB3aWR0aC4KLSAg
ICAgICAgLS0+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRpc2FibGVkLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQxM2NlNjYuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRp
c2FibGVkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLVRlc3Qg
dGhhdCB0aGUgY3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5
IGlzIG5vdCBwYXJzZWQgd2hlbiBDU1MgQ3VzdG9tIEZpbHRlciBpcyBkaXNhYmxlZC4KLQotT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLUN1c3RvbSB3aXRoIHZlcnRleCBzaGFkZXIgOiBj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLU11bHRpcGxlIHdpdGggZnJhZ21lbnQgc2hhZGVy
IDogZ3JheXNjYWxlKCkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIHNlcGlhKCkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRp
c2FibGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0
b20tZGlzYWJsZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjRkYTMzOC4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0
b20tZGlzYWJsZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEyICswLDAgQEAKLTwhRE9DVFlQ
RSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08
c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
LTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJjb25z
b2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1k
aXNhYmxlZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tZXhwZWN0ZWQucG5n
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVk
LnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2U3OGM0ZGI3M2MzMDU0ZGQzZjcy
ZGU1ZDNiOTYwZWJhZGFmNWZkYi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAxMzU0
OQp6Y21lSE9YSD04ZikrUH1LdW1GUCFJIUk5KiE5Zjg8MXFzYlk1ZTBPUkM/eF5HMkdSXmVDPHpI
UjFPPT52Zyg4RTkKek4ocGx7I3NDUzdmflgpdDZwIz9lMDc4aDZnZFJjKF9iXkRfdGhxbkdgUE8m
V2B0cG45QFNnTVReWHpCdXtwYCZtCnooYXB0UyQtKkJOJUVgJHNhZE87IVApPUB2b30zKX51K24j
NjwhPEVKRnp7bzIjR2I8dXt3SSg1MlZzNSptTlBmcwp6OGdNTE4rZ0FWVytxYXUtLW0tYXtwUDhC
MmFTTXhwZlBoViNIeXR4cSR+NlAwWjZQQEEtcipodjxGej9vJC1xV2AKekh5fV8kQU1hPEt1MEVp
N2BpSTlHbyoxaCtkWThvUyo9NDc2JGd5cTk8JWszQ1JDKjZ9OXowZC16SXR+fT9qRTBiCnpfWl8q
JHBLbT1geE9haU48OHNaJV4qOHRLSWtkYSskJmN9JFE8azI8LVQ1NktfO0lnfUUzVTIjNlZYI15C
QGpoIwp6SFJCTkkwejgyc0trMnVEa1RkdW1lR1Y8SnFeNCZfbCFMKitocmA1KkFkTjZwaWV2JE5z
OS0yOFEpNFNoSitAKD0KejlxaDtvdmV4JnxXQX07VUk/eSplVXFBVDVIIW1OeFU3OT1ndWlxJEMz
Wj1mbTdjRihPKTNFMitPUCN4bGk4KlVfCnpWbFUtfHlYRHIhZU5+dm96QyNTMyV3Yz9mYkFEIyYh
U3Y4fSZiQX5XJkNgbDk5aXd+MSVaVUNvc3tmYXFoQ2lNKgp6SjZCKVNFTlpPRiRRWSgjc2BAZ0Zf
fkc7QCtIaDRMRWg/d3lPbS1BNEV5PmxXPFp2bDM/RHJVMkZiQ0J4e2B9d34KeitmeyZ8MWFwN217
KzVDdHtQYm4hOypEfjQ3Slp3ZEBNMVplPyQ9KGZTUyEqUm8mMzMkR3RJZllNOyFmVTtzVS02CnpY
TjZDUXVLYmpJZk5wKTtiOylIYXs8WTlodWpYelVPPDRrRHwyWlEzVSNoKCFQVHozVnYtM1RvdTxZ
dXd7cTYxMAp6ZWFDaiMhQ0RqfUN+TjFAKkRFZG51PkVVWVh5fmpqPUhRJnZ5SEQoMlB+eFI3TEhE
bytPZDtVTjRUfHwrOS1DY2AKeiRFJiY3amx0U0JMSSFOZXVnSjdqcDF6QDVfI3VRKUc0S0dKb1Mo
WVdCdlQ4aWQmdHVZTms8SntkKVU9VSY1akRPCno7eTdmZHAxQGElOXVPKEUzLUp4cW1GMDAwPSVD
T3RAQVImJXcpc0FTaUE3fTB1MGQ4WmhUTkNUJnxvWWxuVUBfZAp6WVpyQT1KNFp2eCt7QFopJGU1
Zj9zdXBRcUlqVU5hQyl8JllXfX5Nb1BPTTk8QDFEZERVSHBqVmohKkttOStKdWcKekJwWHJSNFRx
RCVvY09tIUYmOFJvO2NAV0lXKk8kdCZHZEBCenx8OzY+eX1DYHQ3ck9AX319blV5ZnMwNnFTM1dy
CnpgSDchdy1vLXckeksrfVNOI314JUYpR3dCRTEkbmZmV2dGN2lyaT9aKEY0N1duMHItJXczWlp+
QHkyaiZhQFR2Tgp6ZW8xdzZRbVFmQUZ0Z01IN2E9OyVWP3trM3pjZF9GPCZjS1hGWm9vcnF9bGw5
KDI1WHVNeClMaDh5JDIoOCNaQnYKej8tZ2V8P1EhalJSIVQ2Z3xNRjQrdDdqNzUzQld1bG4ma0U2
M0NoP2MpTVRyMC0lM0RLMjlrdUZvLVUwRWQ2JEcqCnpXMTIoRUJHeEsjZitZbCFTTCNPcnAzJn1M
Q0cxcXcxQ1BOcz4hKHdzQkRncGZVQHR1MHpDJUo7ViNPNmUkMTdwJgp6X0VKbEhLO3lRMShUV29D
IVFmX3F7JD8rdXdXTzl4SFFucVlMd21IUHRmKTEtfERUNVdabFF+VWdyV0s2VUExQDIKemEkaC1J
KVdfSWhwR0RBZWNKV3d5TVhiR0N5M3dtWkY2JTJqMUwxTDNAWSQ0JnNaUXZedlZgTkZAM3xARmAk
WWo7CnplJUsjOUlfNH0pPTlmO3R5X3czX1lEMDg0d3drbmcoYn16NVMjY2s0cnNgT15CWkwqJWlo
MTdNVzZsT0RTdWJYdgp6Yko0TmNLS29wVClqPSFsXyRNQVhzYHR9MUNOKTlEYzEhbjk2bSg0UTgq
WGRYSzJoKDtiQnlZWWU9dW8lK0tCcEcKemhLenlQIWo0Ulkhc01YNFgmQnJtWm00NXMlKlUqfShn
cXJje31ERF5QSE0+b0IrWWEoMClxVC0zX3pTKXR7P3xGCno9NVJYTFhBeSo1MUVxdSE7RFpMakF+
YDR8aVk+c3RARnhDbGlDY1dSeiQ+e2s4Z2kwdGNEfns4MVB5Rkg3dDRIUAp6dCVRRytYPUwqUGNZ
QmhgSlhmRktNO0AxKHhZYkdaMk5gektnRzh6M0coOUE9X1A2OX4yQn0pO0tIKiVQeXF3ZGQKelEo
PzIxdGVEUVdMUWNed0hnUGF7TnpJN3A5Q0A+dE4wR0dmS35gOHZCKWNPVSFEeEpGU29sUzQ0aklv
YFdTRzRoCnpUX0MjI2YkXlIxK3BhO212SF82QVMmTFJCbTh0K2VrQ2FnblAjIXEhMmArZGxoaGlh
TlJEOUpVTCVxeDlTTytMRQp6SXZXQWRnR1YkQkJ6Rz4zMF4wX0FfPlIhflB0RD96K308aFdFMFp3
YSU9MipwJmtpdWZaYD1ecmheU21aeDc/cjIKemIjTDF8KGVfQFM9fmRfeFZ1JlYxdT5tfiFSaGE2
X29Sc0RIe0Nxfj9eNHktLWUpQDsxMV9nbjNBY3dEJlkyK2hfCnprS0oxaDtOcSlsRmZ1a3xBYGFB
bzBgcWVmLWdVVmt3al8je2tpPkQoV3ZYQn1IJERXTitQLUpidGtjVTQjbjApWgp6OCpTRH0zPG92
I0d5diohTmMqPkVXKGlUVDdfUWh1QF9sYndOJiNQZShGKm9DSmk/d25laXpIVU04RyNXSl4yLSUK
ejZIQ0UmXlJ3RkwkVVk1a3JCRDJzLU85O0MlX0licWJQOE12eXohaStpWk9ySXBJZUc8b3Bfbn0l
SFZtTjx6VXkxCnoxWG1ZYWFOaTw+KU1YNTk4fWV1ezdCP2s2TDZ9VG9vRGhBUGpZRXB8JTlMNz5I
X3lhTzd1P2syZDN4K29VU2RQUgp6PFMpSDdDK0pwI08tOFRZUlc/N1Q3ak9Pfkp+O0xqJlkqPyFt
VXVhZ1k+S0JZOGRyWTlhYEwkPEB3WiZPNlMmI2gKem0xeExLY0R7VkRedl52TkRgcEg3NipndUQo
Q0JvT0MlKy1yUyNnNVpVNmJaS2UyZH1wIzc5c3lqTkJgdm9qRkc1Cno2cnBJSUM0JCVYSm1zLWcy
TDZrRlpjVW5NYSY9Y2ppelhfe3VaVUJaWTMpXmw4ZjgmMm9WYEdDQVA4YXtILV5LWQp6QUdRP3Nt
cDJ6LUo2PkxCNyk4YTJ4Kk1venNGPXFRezk4IVc5ajxyeWw/SmwqVClAYCtecnlqcEQxbk8xODZY
JVUKeiZvfjNfdH09fHpQcV5JbURPMShsYD57MTZfe0N1PkVQYnIoUypMbnpZPTNwUnNjNkU7aEAy
SHh3NWwrfSVsaTIrCnpeQEhnVDl2K0swQXZWdj5GbVp5Y3ZMK1VxOHQyTnB1MnFIVT9wcj1uOEJV
RjJHY3tza3pnRGVoKDU+OEFMYnBNSgp6dThQUyhPZW84MThgOGpaUyRUJWpZe0lFMWZOTkUpREx4
UlpIZXQjX3IjfjJ6OH1xdzhsPD1yQ0xuRUBeUl9EJXsKentJNUQ+I2NiN0dULU4pY08oR2JfPm1u
X2h8RHxydnVeTyRoeyNTdjFGSGpwUXk+el43QEk5UmIjcVBmUzwqaHFXCnpHKmUjZTFKQ3xOM1Mq
b2FfbDBCY2U/eiNGa2slQTZDLVdvUVU8OEdyN0lsZ1Y2djZtcUslOyFtRXxkIVZkbSExSgp6UEhh
dCt1JSpIVldRV08xZitpP2xmODd0ViF9Q2c+R1pmVWlBZ0orYCpkUW51KVR9RyElcSRrPChjU2Ql
e1JVKj8KemtAd2s9ZH5NeEYpMGhQSTZLZihxPmUoMnZ5V2BHTl5CTHVgbSEjQEFQbTc0Kkh8Qk5D
TVp6TjAmfGkobU0+KFhsCnpJK35FbXF+PFoyKCVJOXZWMHM+XiRjT1otKG5yTzU8WTZncCY9QF4y
QD91USZMbClKMih6VndOLTQ7I3FHN3h7Ywp6O01xPT8kaWw5U1gteTA5NWpmakVuSENQVTVMKDgx
bChXUillc25MYkRHfFhaR3dlYnVuIWM0P0VmejYoQ1pNUjAKeiRfYy1gJWNyMHgyRmlJO199Q3pO
SXF1OyR3KGhqQnVES01DKSV7aT5tZDcpKlR6KjJIeGhSMUxkX1g5RDUoYD9qCnpqWFJJYy12MEs2
dXoqTD9AX0F3d2cqbHAlVihnKzVTWXU/PWg0SGRNZUFjenVFRlA/Y0EoTEUtNXRhb21XdmBudwp6
UTw2YjZKQ0ZfUDNSUzl+cXZCZXQlYilVd1hfRihGMlkzZHQhb155LXROQU1mbi1UN2BfVEdiQng/
KUhEeGcxU3sKemw8PEA4bGxufl5vbzNtcCQkX2MrWT1QJE1jLSVhXlZJPVg3NyhaaDtkQihFbWpG
SU1RSyhhRm5TN3xxal57fUNYCnpzd1cjMih7MF9SUnRsJTlGcDheYlh4I2ZSQEY4RGJzSHV2PFdz
YmAta1MkLVBLYmR9QypWJWE3KT8/I2hob3F7Ygp6P1d6X2VSQV4rcGgmRWdxPUdSI2pORk0xcVM3
VShjc01Hd1p4cFkpLTxXe0dVX3NrTjwkLXZ3RGlzM3VUZDl7UlMKekJxV35nZTE4WGQ8dFZLIVNw
cnphS35PZkZ3YWRHdU5hcTNnUjZyP31EI0wtR1kmYEN3U1YzSF4weU1sbDhmZ3dPCnolejVLcTRD
XyswSnA+bmJhNntBVCtDRTFHYWFuSWtqWVl5WSQ5WFpYRCYjKEV5Nzw9eTlBbE4oaDBCXnFXUjd+
Kwp6JlliNFBrbEp0PEUoQHRicGhXTiFOMH5XUTFYQ08tZzckUCpGdWtGUWYyTFBKPXZFYUJINmpW
eiY9QX4yQmY2e3gKemBNUXRYSHtGbVI/bCVfMWppJXwpclc4cnlQOU9UdkFBQHpuWjQrckxYODAk
e3YxIT15MzFfc1d4Q0tjN15iflEmCnpoMlJ1S2N8OyVHMDZwXzExRCF0NWE/Zk9qZTsmITc4Vlk1
TnZvZ0BQMlU8UUYqampZbExYPU0tODhjT1h0KSR4UAp6LVdeQ1hgNmp1YUUoOTY4OzdxJU5COzFH
PE1HOWs2MjcwQkxaP3U0I1FDbC1HbWBXKHkhWCpkdzx6bnZMQlYoRkwKem5oYyooPy1EX0JJTTE3
VkcjMXkzajF5VGU2QD5ZRlZeK1JLdTAjM3ZFbE0rS3RlYStaLShfUUxBN2B7JHo2IUM0CnpZaShg
IXUjRUZCSkElTntxV0piYSl7N3xpUzg5VmcqeCZKeWJUMkFsTFp8dCF6MEtRIz5jRCZZWGxIKHA0
Q3p+Sgp6dihENTZJMUZ7WVhjd2BmTEFqdT9hQVJCREJ5RTZXQlcjQDM+OE5PKjtlYD89PDEtNVRk
PDhnOFhyI30zbD5DQGAKejFeTiU+Jm5RamxEd0dlaCYhSmI8UF53WXRlKy11TCU4VmZhTCMmdT53
KD44Z0xJaEkjezQtY2Bqckt7RyZgZDdBCno1SFFiVWlMTy1OUWsofiRaTGVjdjZzMkVFdGU2Mk1A
PX5ZKiM0TEdAYndKMm1WSjFVVDVwOzduUlkoLS02YFJLSQp6TGJQKmg/YFdzOEVXO2owMWc+Ymgl
eX19fjZrQm5DZkowaGliMW0zcWpOb08wU2FNV1I0REJuR09lU3xgWHpSfV8KejNgZXpyckJ+MTJ0
YzhAKHtYYDxYVlhiMmpeY0Z8KFJgcjlNXmBSKE8yVmR4VEwkNDVPMj1xWTE+ZzQkTDNJeTMqCnpC
fTJYYVhQPG9zWklYdjZ0WD0pMTg2QFVUdURNVSNxVEtLVXZgSmxsKzI0KCtOTzlkY15UaT9QVVA/
NihyNEhHZQp6akpiWioydSVXPTY0MEEmUl8yKypJcllfKHFuQyFpOylCPjhFfExIfnVRYWFnPTst
enUkXmBZbVBWVXY7dj5gOyMKejEzT3BtU2IwT0BHQ01fPiFoPkImayZ2b1oxOXFPNUtlaTlAajVl
QFNXaiErPCtIe0VzUzY5RWUyX2khVDBMfThqCnpOa3dTV1k1Pn5ialBiMkQkVk58QmRXSkpQYklL
QiFgZm5YfUBlY0hNYiZnJmZxSkdzR3dsVXs4cV5wOGlocHJSSwp6bnNRXys/bEZvS3dZXiRtezJE
TkRTaTVIM0UocEB6KSVTQGJaJDQ7MWtnZnJ5VWI/Kik4YUxjZTBSR2k/QFBobiUKejM3RVIoPTtw
UE10OHs+PXNqR3Nle0pZWiptVSF2eVJwe0lwZlNkSzFYQTAwSkNFKHdgOEJeU0txZHVXeS0+SHhL
Cnp1ZFojK0xVQCs2ZjU/c3UkO0V9X016Qy1Ca3QwSUxJUjJNKDYxRV9NPUtsKUUoQUdgUzZuRzZB
YFA4blNoYj97dQp6WGRNejAtYCQ3YUpPcW1UKVoqWkkySjZ9QiojcVBMdU8zPEd4fDZoI0l4Qzt0
dGRZMWRrKk4/ZkUwPG48ZWV2Qj4KeiZfTmJ9c0FHUX05cWFTezVNQjdOZjd2YC1jOSVkbXs9WS0y
ZX45NWRWezFxQmJDUiFEVWp2RyVjVkk2ISM9JHUrCnojS3Npd2ooQm08aXNEKHlhcyRJNmRVWD1W
MTJqVUszfmVLaSN2eTl3SWQ7TXlQd093VTE1QFYxYUUqS3RxMlM4cgp6RGs8X1B0cU94RmQ/Nnxa
U2szengyRzBPUWJ2ZWJuQWM/Njg3I0owKE1BXk5UQnJDbW9DdmRyJjR9QnlOQEp9OFQKenw2I21g
NmtZb1FeYT5AbHh6MUBTQmg7RVNsZUNfRExhR3Q2PXE0V196I3ZKZWpjcil9b0g2O3k9cXhYPDtr
Nj9OCno/TnNMUHhwT3VlKkJiZ3VNSSlIZE1MMiM/Znc7UjlUPU1HdUReayUyIyhAcDFfYUxCWFJR
bGV7WnMqeX0+Kmtwdgp6N3EwQE1GPH1gYGl0eE1iVjlMdHhaYlJvPGZAc3R9Xy1wflJOZXg4Zi07
ND02bmZJZzM9IUZjSURSeTcjXm48MmoKel56RVBPWGs4MSlpcThvN0s9KmZpTkRHWCQhYkd9VGoo
PklxZ1ZXRy1sOD9ZZ3d8I0BwS3B6OGJrYFhKd2tUSUBWCnpoMTwmfk1ORko0JkFZVlN3byNgNSNj
VyhYQDVjQzVAdCNfNVRCO3ZGcllXdVIxLV9PYEBaVTIzNURlWjFVPGdUTQp6Q1A/e08xTmJgMyFk
fVlQSztDbkllVDB8dF4qP3R8eW1yPWtAJVNzKFRkIXlTQ3o4JGxSXjdEa0lFdT9eJD09MmAKentu
VFVCXzZkVUd6ZGR1PWNpayU9WUElTEpJMEooI2dUZD9kdEpoYVRXbyEjejw2WmV2T0NhQVYxMipw
NWR0OW9mCnoweWRzZmYzT3ZEKUxPdHM8QEktPCpeYj4oUCphXypIYkZKQERoUTNXNCs4OT1iTjIm
SXRsUXl2UFFuU2h2cVlJTwp6dnRuQ0AlcDY1IW9TRG4ydlN8OE4zVDFnX0UtPm40OEY7UjskWkZI
dmE3ST9Pemh6MzlncVJCcW5TX3VAMiQ+KykKemxOSEt1YXxUKFZsb2QpQHVkT0hSQ31rYWBZO3JY
X19taj1eVyhBX0daPDYmKnZZfDlsSGVpJHU3LWZJcmBGfnN2CmMjRn0rRjgpMm59JiFmVHJGVWRM
V2FvSnQ4KUEjSlowc2FlNXgmUXpHCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDUxZjhhMzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBA
IC0xICswLDAgQEAKLSAgICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4cGVjdGVkLnBuZyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4cGVjdGVk
LnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmZmNzRjNzBiYjdhN2NhMjYyMzRi
M2MyMmEzOGRmM2MyY2QwM2Y2OC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCA0NDEy
Nwp6Y21ac0BXbCZzRSg9fEd7eUEzfEwyTF5Ye2NYdWJhK3UkREQtUTl2RVNhNWQ8MkAoa0k/aGc1
UXpGVzhJeCVZam0KemVAeFpYb14kcjwtbTdQdz8hOFpwczxJM2tHNyZOVzA2PiRJbH5lfStVX2J4
PnZAUm4yJDJVMSVwKU1hRTM/NVJ0Cno5dX5HJTdXVkYqanNTQiRaWFB5SGI2IXBoUEhyfCVEfDJn
V0ZlZktCQ3klKWAyZF8xVXh6KDAwcERPPyQzWHFjJgp6KUFXSGw/YmVIPGs7QD5wZXFaIXl2WGIy
RyhZOVh2WHs2UHlJNGVEYW4jcEpgOCtacCU/R3NIeDZiQlcoVzN2QG0Kemk+Z3Ruey11SDVQUmRJ
TGlNfHFJUTZWSj4tLT9OZ04/P3tAYyFrVXszISZJXyleXiZUKXZVRlJPKWE7emI8QlhoCnp7YiR6
LTlGeSVPR3lXPUtKUkNTVlNxSmBve1Voe1glcldWZkIlOCpZXnVPMzhEekI8UHlqMitgSHAyZ0Ep
Q2t4Qgp6SVchN2EoRXFUX1kqIUZlbEZpN21yc31ybnwxQFkmSDV4Vmd8MT8xa2JaV3IkbHh7dzxK
YztjOEd5d0pZa2ZIeUAKelkoXyQwTUdGWFBITjt8SXstK0BZbXZSNUU7SEclemU1YDU4TDt3SEsz
Z3s2NkAyNklBcDVCaD9GTz4yVz0mJXZjCnpLZ0l5fldTeXlnKUJKejFfNj54WHp8SXxSTDdYfT1s
eGZnT3hJZ0NhdyFFJWU8TlJOc2Alb3NLcHlNVERVfDlKLQp6dUhya3Q7b3tmeC0hTmNDTCl5QGFu
aDRZZWNpKkItKSNjc2pkNk5LUiNYZF5hRGdUV29EajZvfDwjeDNzX3NMJVAKeihqLUYlPWtmbXp3
Kjl8QGVZTDdmeyhDUyZJdChsa0hfO3p1cTY3MGpETWNkZFQ9Kmo1REoybiV8SE88aHNld2p8CnpA
eE9wPGc0e05CO15yOGo8QlhhNFQ/QUY5JmNNZGxHV1NPdytrR0tCcVI9M09eWWspZ24qUiF6cGJH
a0g0SFViVgp6UCYkJD91bFEyN3J5YExHLXB9JSg1USkpYFBAdzsxUW92TEd1bFZfM2xSV3hjRSNw
RTMrdmlDbWxBeXd6I3xwQiYKelF7RDRINC1aK1Z7YF96cDsocl9tR00xPjN7Qk9yQ1oxPVV2N2ow
Y3pKYFV1SDFFXnQ5I2dfdUNMfDZqTEFVRnNHCnpKcFhhI3k3TUw9eStLPDszMSU2NlBDLXNmPyZH
ZSFtP1VHKDE5QUJXNnJSX2puaHopakYod2orbmdrN0Y2fjhiWgp6a3gzZz1qTk0oUEdjeDZncHlg
VEZyYmc5aHc4R2EkY1FyYUYtYWRaMk5pcWdmd0R8SzU2JT9vMEV3ZEYyUDE1UioKemdWXkxzbGR0
ZWA+QmtabVE3SDcpbittNmVrI3JtWGI4O3gjeG0rXzFRIWZYKTxjdCNzLWNLPGBEcF9maF81KmFa
Cnp5aGxJU2hxPDdtZGd6PURHaXIwQTBNZmx2dX0xLUUmcmFtdEtmaXwhaDNyQ29FVHxwQVV3Zjwp
d2ktemgoVk5zcgp6JjZ0QCNAQlh0aTJ4NEc3ZWZZJGBmQ0A3PXNZOC0lWnVVM0szZ09eLVpQZDFm
e0NkQjtlWkJwOUdlIU4yT25nVH4KentLMD5jekEpUUR3eWIodE45X2NzR0JwTVVBcmw1RW19SmZT
TSlMRTBFYXAxQEA1P1pRSTkwKUQmfkQrWV5wKVZoCnokRnwtfDVwRGtlQ3EmQ1UyIUVffSg+cyQl
JkZqa2ZMTkpIRikzeTlOKmFPRHJzfjtgOGUtRldVPmtLNFdYZ2ZPYwp6Snc8NmtLNikqX2o/NmV2
K3IhYUNvdXxNdCsmIz9fUSlFU2Amd1BsVnhXSGRwKiFZLXkjSyt5Yz0kK081KFEhTyUKekdqfU9X
ezRpRSE4PyV3bmA8Pnc9Wik/dGh2JHJaWnZoeXBjMns8MmxyNElfbkJUSTF3MH0qX28pSF9KPm1g
TzhkCnpJI0tXOVdgaig0Wj5lQH13NTV1VCRqZEs4NCFBT00qWiRoWVIhMHlWM1g7ZlowM1paV0RK
N2dwaXVmdyhoTClaZQp6Xk92MWBBVyMxZkA/U2hIaUdKT1ZLNzhgb2Bfc2lTd1A0VUwkV1AxPXFh
cnhIXlc3dzQ5czRmVkFFKWRVMUY3dXIKelJCclR4bT9RfU1xe2lxUVZkQHp9emBSc35xM1BpYmol
T05vIV5xcHVLell3TnZhaitVQHdGfmNASnFoPzJmNElNCnoyVXxkWnRWPTJZaE98TURfSzwjZDYw
JFA/SmhtQ2FXdjU3VjVgU2Q1LVBnYk9BS0U8cDwrWm5sTSgzYX5zWm0rMwp6eHJMPHc9YnhIRVFQ
MlheV34ob2RXXlI/d216WTZUMkU5PER8MV9XKDtBTVchNHV5bkdMZ0JiJWFkQkElYHg/REQKelpH
b2hQMUx3dVl5ckRRMXYrZXgyOXAxMlBZU19vfEtreG5BVX0/KTsoRigtNF9sRyZKU1NtP2BVeXdP
cUE2bGVhCno3OUhpPTxhM1pIIUM0KXdQUHY8ciZnWGFsLSg5RGg/UG10a3BfNT52bSszWDRrSDxj
Kj1CKHpoRHxOY1ZjcGspJgp6WW5QfiZpJDxgZXlYdTB3bk4hSFojZzFDJW5CRUFMRnJvdEVNXjlO
SDk2NC1nNEtIPVpyPndkT0NJNXQ9YUVISHEKelF6N3lCTThhRislVTR6VilNS0tadj1zMj0zP1JR
eFoja050TH0rJl9NVk99Q1NCJiNRKXEoPHNpYXZWVmU2dURoCnpYbz4kZlhUYEVXLTwqSG98SlIt
Vm1iK3NYdnMkUkBnIURFXyROX1FALX48YkZmRWk9dUF5P0s0X0JWRDxxZX5zMQp6KEk/fmt3Pnkp
ZHwwQllZP04/UnVGNmVlJXprYjFOSjIoXk9hVGw5WjY4JGlFdSNWZyRNfUBaTEhtUl53SWIpR24K
ei07dmdtclowTDlyelYlPldwRVJUIVdyQG00YzNWc0xwTGNEJjJaSnxkUURfOCMkQ2JzNEVMNGB0
SXB8RUhhSFlBCnp4KVk0ZkpDejY4NUE3dHsxNlcwe3QxMykjdDdMdHtjelRxJjMocEVyT0FKa2gr
JDUjc3ImRVhjLStwVl81d1cjQQp6UVNQdCQxd1NTX2NzTmwxZHZ0TzUkTjNoPygpLXg1Uy1UKT1P
fl8leSQ+PGAmSmEpTEsjOWArSXFoXkE5PTZ3dUkKelI1VDJDdlZVflZ6aXJKczluTTtIKzVNfChW
b2NldUt3YWE/eTl4dmBnKk53ZD81flFsPUZVXmIwJV89Uz09X0xWCno3TE5lTFBkZDA1QDd5dUk7
bkFTc1E9ZEQzI2lBUTtXPkNiIzNHPV8rND5zdiNlWHZRSWd4NyVCekViVFAlbHI4IQp6U2k0Wlpg
cSNoUEw+Sjh4dWZDRWVGJlgrOzZIVXcjUnxTdkoyNispOXpTajdFalpnJTljWGMhKHphT3duUGR6
VWAKekErYX1aUD49UWI/fk9kdk11Ukw0S1YkWWhUPlBrRDU2VE4qWmo0clg7UHNTeXBoWHc3S3Jo
M3J2emM8fjx8WHd3CnpKbiVocnFkR2FGU0o5JSFlLUp8NEJJQn0xMXduNDJYRVoqYWdPOEhfLU1I
UUx5Z25KMit3dEtqSlYtU09WVll4Jgp6SSE7QGVqWm8jRFpjX2JPeVlsTikxPiFHNlBKcDJ6M3El
ckVEI01TPkFfPT40TVpiKVgrYGhvPTEqN3YlJCpqZXoKemojVVhUeD1Rem50c0pII1FoOFZDQ0F9
TFU4QGAzVkpXOFJEdlAoMjdeNFVnZSZ4MCZ5NnM7O0s9cDQ2blVeenx9CnorRDlEVyokR3pCZ0dh
YlNxVHR6bjwmRyhaPW95Yz43PU1STCpGTkomI0dEYVl2V3loQUNzP2h6O0FhWnYjXmMwZgp6Q29s
WFNgOz5PdV49emRUXz1nVnRIMG1Sem9KSldXWDVaXjV1cCRWSUJwSEA4cnJ9ZWxXZEZiJiE1c1No
P3Fae0UKem5HdURvJC18TWFwa0IrbF93SX1NMUlPT0VnR0pBKDh+Kz47dGRleEM4ViU+Zkd+ODJ0
KXB5RG5GT3luO2d0bX5DCnp4I3hXRURKJkgyZlYkV0pLQW5sK05tbD5vUUh5NTFIdUZqYnNZc0pC
RXMmSDV6MDEmI1orWEF0TnA/YllCUHVNewp6eVpHQz14VWg2Z2khMjxnSGtSZEk2Rz0/LVB6PDY4
OzdEMD8hJSRsTmBXNS01dUVQdmM2UFJAZklkflpWYENHa1MKei1rPno9aEBgY1puMDhUcnBmVypa
anJ5e3whVlVsVnhad3BFIz9GTF9efGJVdjxSUFVvMkE0NDZMeT5FZT87fTR7Cnp7cC1Pem8mOWot
MlEzMnJxdlFnYj9FbDUhOWtOfU48KVBqZFZoMH55JEFXOVchTVh5VHFPO2BVVHRiVUhYMU5sYAp6
IWVKeighejQtNkEpMUdlbnxkZitKSCphVTJ5aTh6ZjBwZEY3KmIzcDN1Tm1DS1VmQ2hqampSSWVH
SGQ/UEZgZ0AKem03ZnhwZCl1RXNyN3hOI1g9SWp7O1EwajwzcW1Je1BSYCtWX1I0fitoVz5lNkxp
bWJBcXg1MWBiRktYWHtodHxzCnotOCErTU1yfkQ2NExwIW9MQUphYmZ+WlNUQyZESGAkI1hnKUp4
QHxGOXw7ejBNR1h+JG9UelR0LVU0NzlEWiM5agp6MGRWQER4LWBLJTN5b1VETVpkT25kJGEpN0tX
NWAhSW01O1RqYnlOSFd0QEd8LTc8VE5XV3g8KExPMF9kdTtqfkUKelFFTWZ2LXkzZUM/WTlgdl5k
MCpAaUN2aHRzSjhpfm9yVDhKYkBMKjxNZUZSZEhpZCF5ZVI4b0FeV2Y/Vj59RkMxCnokYmVSRylY
ajdjMSh8Km1nX2JrfjZNaHpaVCRmSk5XKWAhQ0ckcHVUR0FwVT8jQGM1d2MjWXRNJmFEWiRIYTlq
MAp6XlU/aSo5U25tcHZCdXZ3UFEtbkIoNVRhcEw5UDw1cHR5NnFxMDMhRUc/YU1WNFE+aXMmVmFt
Pz18dlNiJEh7PWoKeldATTFjYy0hLXBNYkh0fT5qK0YjPSkpUE1xMzZ3LXA8Kzk5Z3ZHVTA2QjJk
e1lPbTg2VVYtVVMyR0htUXN3T2BJCnpFZT5PZUU4aSZOa281USVoWCF8KzZPZGRuSG4rRmJwP0c7
fkhSMVhBdypyRUhJITJPVzJgWX1BI15BdTI3K3R0awp6dF5kdD55UVpmflZ3PFRoUktEem9yNn1K
PnVidlJ9NUs4TnZwZ1k0c0ZqaHNVI3UmNWMoU19ya2E7VTtReyVVdV8KekFFZT5TV2leTXRIdCEp
PCtlRTdGP31AbDVVJSkmXmNNMEhqPEdWeG5ZMUk/WHNJeGQjeG1lPmR7SH57R2F0TEtzCnp4bGZ8
MXRJWkBxTTxDRGZPPmdQalhpZG1QSGlCSFVNUSU2aTVVU3wtc2RVcXtPRTJGe2MlQiNHaDkpQ1h8
Q0NxSgp6U0omQWthJWdfQSkjRXo5U2p2VXRqcSVPJTBhOTVvUXcpU2VIRiF7UWtQOEhIRUk0e0gl
NXdCVmZoVVlTaTk0bHoKejwlSio/NXs4dH50bT1SZVZvdiorU3I7VE4+RnVvcHY4NDFgZHMjIzJj
NiVRYSpZT2B6NVUmOEg3S0ZMRz5IUmd1Cno7UCRXYENkSjAmKSFuYVdCb1BKNEJFQUFwd20jVXF7
SW1ScjE8alA2Un1hYWZMNSpnUztja2NnZjFJRXkwQiUraQp6SXt3MF9Dc0V3dl9yVCteRVpwMD09
Z3BGRHc+KyshUzl+QXhwNmM/XztMPmZHVXEqOyZCMmcmIU4+TT5fcjh6LTMKejUhXyhSTDxYMFFF
Qmp9OXBRN1I5amVgR0lwNzQyJFRCZngpMmkwMyF1WG02ezdlISNyNGNnVzVFekA7e2JJKElZCno7
RWVfIUVyNyFKITF9O2JUY3tgPHJ3bGJ+TSZnZDtwRi1NJEtZdEU5fEo7I1BGbTc7KW95V3xZY1Zw
cUFBXk5Hcwp6b3NMYXlMZEtmYzNiT1RHSVA+N28lbzkwQWAmYFhXWChFRCYzPnVlJjk7NnJBKERk
QmdKKG1aOEBXdSZBNUtEbjMKejdSZ0V1bkYqUWJNa1BRMzYxYWpjRTsmKXcxailNP0F1SFFXU3Yh
PnhYKiV9VklaKHxuY0J1akJOX3hsaEQhIXUtCnp0MEM/Qk5gUi13TlhjYV5AYV5ZQ2s1UFJTMTc9
P1dnLU1xKEpaUClqN0dNclQpM3JnMUkkeiYwUCotPGtDMXE7TAp6ZWxtR08oe1lgZWBFPXxVZlJH
STRGKWtJfDF0YDdGKnJ9eWVXJjMtUUlZdW8mdUcmKDQ8fUpTb3hrN2B5ZGRnYjwKenVpfTtMQjhF
bSFyQkBMcnJRYl9EZzRfRGw5dkFVZmVNPn52UWFeZ0N4aHhvWTlFOTk8Iz83enkqZSFGTzhrNkAw
CnpodmFWbVBVeiR6e2BXLVlraXNAYHk+b1FLWT1EdTlEcXI5cWtSX35Xbk0odCUmPXBtaU4xenwm
d05SUDhyRCpjXgp6O0M8bW4mdUQkSVojfDI7Q0ozJUI1UkBHP3t6RGZlI2Z0WFBpckxmUUNGaGUx
JjVXOH1qYjZ0VzA5bVNoc1g7I0QKeiNLWjU5MlMyZ31ZY3srRzlOREpzOFZTI1k7NmR1dmhAYFAq
VW9wUkVLWWJ9ZzM8UWMpT1dUQm9kOVllcExkSnpECno9M25sZSY/NE10Uz4pWTU4SWpKeXFjMDhu
OyVBfGNONztxPUNXWmcxPWUyRyYqfXtAQTBwTT0oPmxHISFJQnp9Kgp6X29xTmQoTFErNUtCdmBv
KVBxTTElUUlOZSp5SVlAY0RnKGohSGQ+P3I1bDhyaCkmNExaRjFndXI+bzAyNzxGWXUKenApVy1J
aTBuYiRLXnlmYUoyMVd2dmktKiM4ZjI8ZkF+NmdseUNYQDk1T19BVitOXlJqJSZecEA5Wk08MHAx
RXp8CnppQio3KCtFWTYzN3okTExrYHktb19qUSE2X0ZHbUkrWDN0JFlRNElvKyRtMnJFfiFmYllJ
JXwta01jUmVhTFN8cAp6ZWRKPlkpZG5WcUMjKFRFO0xsNnB6biZebXNrTWM5RD5WWnt7RlY3QU5g
b08kRz9kPyQoTz10NVglaCpWUVg9cFQKeiNlYDRZZiV5QkJCU2tOcT9uTEg0WV5oTExULTkoJEoj
WntrYEM7aXJ1e0hMTHIlIzlYdz1+fGY4fHNtY19MXzJwCnolZlRNS159WilodDYjfUVNb08wX09q
Sk5wSGFxU2o/QFJ5XmhqWj9ISExaazs5UD4jIVQ0R3NJTyEyVE9CR0lUYgp6b0MkSVg7ZUckY2R6
VkZZcWY3YXhzP1NIdWlMaFpOUnxhKH5GJTdNfmwhNVBuYWhYdlpxMDl4JV5YVWlZOCQqUjgKenlU
IVJoVkE2aW1YaXlRMEJgZ2xHQ31wcmMmMylYUjNrb0YhRTw8fHVEZmI0UiEpZWxMRHB5bzM4S1p+
fUJAfjAhCnppJW9vJWpgVHg+dEFBdW4qezV3cGVubTxFN19PPXk1Kn45XnZqZGdUSDFDdyMrQXtn
ZzIrPnFrXzJzM3JXTz4+ZQp6aXIwKDk0NXIzaDlWY05ObD9SQlEjUT4pMVZPKztHJEBrU0A8fEBY
cj1RSnR8NiZGalZSOCgwJlZnRTtiayU2fjQKeio7Rk11SC17dkRVNVd1djEhKFJnWUhDQk5ZdURp
ZztoWDY7biohaVhmfloxTF9GTmckKGM5VmQ4LWQpV3U0TTtoCno1JUs7YGNnPTUyRUlYQiVzIUZV
KVIhXk9oXzxReU5UfSQzVlgoQ0xTMEhsc2ZoblMqNFlIcGJaJGREJjd7ZHpkZAp6al9Ad2trfj9E
Ty15fShOJTJ1bXpkO1l6b0x+e2lBPjxMYT9LVihtbVdXclJVZitWaitFRUM1Ymg4fUw0KVdtJC0K
ekNtJiFwMnhsRSpHS3psLT5TT2c8UiFgVE8zQ0pqZk9Rfms5JERzekJOMn41WVZFUkowSm8wb1NI
YlktTnU/UnJvCnowcj1ScW59KzU2JiM7VSVSeTUjMWQmPzk1WjxGVTgwYX0jJXF6bVpkaCQ9IThy
enNCLVM2cFdwSTAmfTR1aWAmTgp6cGZAK3VMTyNKRFdRKEtacW5YbDJ7JnAzU0xMN0EjPl9ZfEpk
U3M9QTRNTkY7YFAoQG1FMkNuTDZERW9oVDYjb1YKej5zX35UanomNUItcGtqK0RkamNCSF83JFck
amp4b3BIfExhQmxWSzE5RW4qT3kjM3FJISZFP3YkbmNyMThndSsrCno/KDtSVjU1OXYkXl84Ozw8
Sjg9UWR2RlNvc05Cdk5PIUJOUz8pTH5TS0pvX0MxdWluelh6eFJtIUozNj0+b3RxXwp6dzZuZzI0
TyE9Uy1fKXhnayQjVU9SUUUtNVhRMz5Oa2x9V3RjTHlfNmQ2V1FzNz11KmU8RHJmMypqbk5HPW5Y
R2AKej0kLW53OHU3e1lNRVdHdmU5NzV0bXxvUGEoUzgyUUx0JShjMGoqSFpSeV9Lam0hdzJ7ezNr
PiMla05aJmk3R2JyCnotJDclZWNecUMyZ09lMDc+RzVfIyNvRVQhMnI2VF9Aaz9jNXc5TW9XQWFi
WmMlMHEjSmIqdzA/YTgwc2xUeGcwKAp6PXtAVU40OFBqT0BGJG8wMnFlKSluSktwc0pjTzwzNmJt
OVZ5czBEaDNVQit9bTJMa2gjV3JoVl9HKD97MFhjc3MKemMyQzxhXmc7bmN5d042ZDNOdDwyaWdW
ZVFrNGl1UyUmOX5WbzgoLXZoVXwqI28mVkklYGpJKVlEQ1NGPUlEO2tTCnp2JW1eZzModSYkQkRU
dyV4a1U7cFRHMXt+ZDJoMDZxei10eDN7IX04Iz8pb0VjNilDfCUyeHlKWUVBPS1eWi0qbAp6Nkol
TWxmN042QStsTGs7Y3xCUEFqSDVLPjt+WnZrSU0qeWRDelRNLUpscGdxSnpHSX5JdTlrQnhpMDRV
XiRTcTMKekFzUH1XIU8yVXxGcjBxWFpsLUgjV1pTNyk5aiNYdmBzRUJfc0h9OUhhfXt5cSRCRWdw
I2d3bn54OTxMd3pedWNlCnpuNH4kbHVRbnRnYngtOz44eTJ7Um5venM4X3dMJUQhPiVBdzA3TzlL
X2R0JGU+NShEJEUySzZkMUpWOEl2QEpWIQp6TEF6fDRCc281c2NhITI/KTBjYypaOFA7OF4/Q1ox
SWp6flhJbFo3RUFLektBbzdUOVhDO0NKZGlJNC0mJSU+USMKekhpJnJZQzhAdnZBfDh3PkVHc3U3
dFYlUkxTNG5+VVgoUllATVJifDFUVHsxRD5mOVReK0A1bmopVnkhZUhyN3MxCnppZGl6bUopWDl7
QDQ0IXtBKyY/LT0+NndVeWlvb3tUPzUzXnE+N0J1PTtOVjxMPmF3bmp6YWVXOzFZZ0hVVlFSWAp6
QT1GI3BWdVcyM0xGYVFscmUoTnlEPU11dChVSm8oVSVmWUM9IzAhMkIxUTJhdl8mMCtvPE8wQ1kl
KzdgPGgjeD0KemFaNXZxZVFQaWd3ZiRtRiR2QnlDWGIjKDg4O1JXb0FoK3V1OT53fCM8QUNNRjY+
ODlQZUgqMSl5YjMjZHxGKTFTCnpOVzNjdj49R0ViPWhqJiNYSH0rTz5sIyV4V0FrZVlOfWZHOTE+
JlhqaXtHOXltKzReWkl+dW1RTVQ7cHhkT29sagp6eHUqKEhmaHF+bGNKNjAtUVl1cH1UOCozck1v
YmVeOXJ6dGEhelB4YFg5VlYlZDZlMz1jJnpDPXV+TWdQT1pnWEgKeiZjQDhOYVBORHFxbzJMSktZ
NXd0T2hWJFVWV3c7VXhOZXVXI28yKloocilnNWpkaWpxQUJLOXZnXkdQTiZgcm1JCnp0Zj5uZnQ5
cWlBZWlVUHxRc1VHN21nOGRxZjFNMUVoSHxETEpuJmBDNFFPez5iYlFmXl56YF8+MntQNkQ9Qk47
Wgp6YUgyYGBgbyp+Tnc9ZFcqQTdeRXg0KEozeEg3eyhTNmErU1RLNV9IUUlgOUdYdFZpJXhfbDN4
dDV4OEZqODRvaHgKemB4NiEhTVk5KkQhVVFkYXpxYTw+ZH5GP2k1eVkrbzx8bEJYciU8Z0xgRFEp
PHdgVEEydlo1LTx7d09pUERwKk1LCnozdiFiOTZicGkyTm9lUDN0I09uWF5IMkQ3ZXMlam82fnBM
U0IxSCFBUD1xREAqN0ZteV4oWWxBWDdWS3N3amQ0bAp6NEBIRUFMfG5seUU8NWc+bjM5YXpYVm9B
N29gR3ZwRXRJZVVxVVJvP2BJbCVuQElmSWZYI0VQU1cqVVV5blY8Z30KeitIP1dzQGBAUTgyTDgr
YXlze0NYQldRPW97d1lja08+SnllRHVMM1Bja0RyfjsyQDRgdzhucj5YQzMtKE9BY0hPCnpLUF8w
ZWljNSUoUCgyTihRbWxfZmItJnVANUdia0dFfHwjdT8yeytqN1YhfHlOcF9aQll9X3hiQExqNTxk
QyZQTQp6PUlZa31jRjQ0QGc1LXl0OHFPRVBBfF5KO1dUd2QqRmskM2FfWnJEdyNlenlFJW0tTDIt
ZUZyemYofWRLNXtzZWYKejh2dj1wYjN2PVBzfXgtcyYqekE8Q1dsblE/V1pWTWwzVFlkPmM1fkZl
NFVEWTQpdWdUT2tEQTxCbntsZypiU24+CnpwU1pYOEVGdSRJd2dCe2dUPmgkXl9BViEhXnlLc0Y4
fiQpYkZ4T1hQZzV1bTA+JUtCMTkrPUg5dFJMJDBkRzRGKAp6PUZafm1Sc0wkOUcqeyt6WDg5Rlhg
ejJTN0JePGU7PCt3ekZiaHBGUDgwNTskUCU8PEJNdEZVZi1aezxXa1JPfUIKeiY/KmZIVHtaRFBS
ZVV4Q15scFVSSFVLfXcyPlM7YFZoPTZka0hocVZ7bCV2ZWpYaTIwZT5Uajx0XkdCeWRDRzNqCnpx
Tio+ZmxyamlGRnd2KXolQzRpWVEoYFdRcjBGJmB1R3AwVTwtKkF0WkswKDItM242emB1Rzw7Umg3
bUFNd3c7WAp6T31+fGNeWH5ST08qcSl+UWk1OEQwYU5gaHhZNmFaenhGUmtQVEYreTB2OHkkTjlQ
NktsUUR3cl5ZXmJecEk3dD0KemVqJXx5WCpMVFdqVjBOOFFfT0JCRD5sLUAzcHwpblVkczZyKVVz
VV9kMFVabkBZfnJeNGBwKnJ0TyN9ZTBfODQrCnpXNzgrKyQ3eFd0JkV8WjBPTFN0NE1KV0VjWnwm
YXJaPUE2SnFCdnUtc0pxZElSKnRQM2JDPFlXPVI5SkFtZD9Odgp6KVpIRHZFQEYqNS01aWZ7Y0Fz
UXI4NSMrWEdEejh9VGFaQk1ZZV5TS1FFN1lAVWxZZ1Z2bXNgS1ZtRWJ5TkNoUEMKell3a0h8MjFm
PHk8QEkyVGAwTH1PXz9qPGF2R205UDZhciFSPnMwTVUwKHB1SXw4aTNBM1pUWnNvfHxvdEEmYVY7
Cnp2YGRWTk5mbXNkYiEzRCNPO2N6MXA/T2FWPUN9bC1URUxsaVcmWDx3Vn1ucGh3UWJlaGhDPW8p
PjRHNWN1VndCQwp6YDdxV3haZ1ZHMD87VENGMnh2Q0tfSGNNUEolYyU3d1FzKV9UJXIqMlYyaDZv
P1liPzUoaHo1fjM1SnJpVH1MeyMKenFadUA3Q0wqcGRrbm1yalBhT2deeVZPT2ZKfUhTJkEhNj5O
UjllWCNudWRDYkVGQUJNKGJJfkVNbV9mdmkkZWxxCnpkUG1hRSU7cm9HZitKe3VBXk4hJEJ3ZDdy
JHlga3xnPCFEcjNKeiliQEQ0em0xY2tMQ0FjeGZ0cTs2fU1WNVM5bwp6bktNTCVAdnlsOz13JVdN
TVluITxYfm81Y3hzYWBNaXlffTxDQUtCN1JPWDc2biZPel9MRjBiRD5BI300JXRRenQKeit2MVpR
PXImfWt0a2EwXzU5fWlGMzEhe2lgLWQ0VVE4YHo7WihvdlFMQTQxRGQ1Q1VBbENvaD5vcnZYZGxj
M1JNCnpxN2lHeDh5byNfWmgqIW15VlEzVVZtPUQwQXp5Zk48Sm4mY0YqPCoyaFc2OzZtTG5pPkMt
Qn15Snx7NUs8cSs3IQp6en1IU3BvbG11dU8haSN9YU5mdkg5LVVsTmhpcEZMWWwmdUU5SnlsQTZm
KDVeSClKWkclKG5TMkNSZUgmU2dVPWYKej87WlNkPXl4ZG8kbHIxTmNBcmJ3SW5NNWo4Zm9fTXNw
Nz8/XkRXJD1kUSQpLWQ9bDJTaWRjMmwwKlYoITUzK3BpCnpWSUtPc2FJRHgtMl84QldWUHQ/TmJ4
N2J7ZW5zeWh2NSR6RCVFd3pkTG08R08wOC1eNz8lITs/Y185YnlTZUVPPAp6dzB8KmpvJTk8cGNQ
VEBQeXV9PmBCZDc7e2AtTjhzRFc/JkJaR0tfK203amZWYDglZlhlTE9mUmgpJkIjUHhIeWkKekFZ
MHVNfEI4czljd2pEUEJIKVR4VW0pO0I7RC0jX1Yydjw0djMjXytWPSVfPl5nc318c25oay1tam0h
ITQrVElqCnp6TmpwdWk2UUgoY0shU2QpV0o1RkFjST4wXm9AMT5GfTcqPSpPJXUmTDI9RSlfe3Yx
SS0pZ256MW94TDBEcHFiUgp6WGRBVmNWM34+MD00dnhpNGM5dzJhRTMlTFReUXN4IWNHb3lWYjdG
UntwREtDO1pvcFI+dUdjUVR3QX1UZ1JYMzQKekpnZT9STGlBKzQjPHRySk0pRFdnS347S0Blckd+
SHBTJkYrO3AyfWRXeldlNkpBN0VHX15pO2ljK1FfQmw5PXBVCnpaO2VuJEl+XlJrUUtKNFBKRzxR
M3I/Iz9SOD0ye0BKJERCT3grJTJETGEzUkBJKXd4SUFDZkRiJlU0R0lZQzxBaAp6ZiR3V1cxJitE
QHVzPUYkK1VPKT5uOVFOKmBHQF9Sclk7MCNMS0t5TVBnX2AjdTh0eXBQOD80Rit+eWRgenUpPSsK
endJaEFLcXI0TWlVIUFAV3duUSUzYHI8fnhmJndZSDxBTThgV2BCRnZnZF9Ceyo3anYwTyp9dEtS
U0spY3hyVnx9Cno1b2glOHdDJWZKam58NHBQPSNJcGMmSU4lcmh8Vm4oak9ZeEYjJU45JGUmKyR3
eyZrdDIwV1Fqd3NuemhPZ2ROeQp6MzE7QWF2NUJnaVZ3VXJVIz1tVXk1JiZmaFEzcCRNNGlKKXgq
X2FvYkBVO0BeLTRfZXoyKm1xNXg7RE9NcG8xP3kKel5+LTUqZ288XzB4eV84bWNKdEJGMDMjelBB
O3JldjZDVCo1Mm94VyZvQGdeJlNXXkNSP1c1I0cpUDZVKXl4QzdrCnpTNGd8MSZpcm5DYH1Ec153
dnZka21hSTBKLTcoQHIlc01laVh9Qj9UbFdKUn57QDZqVFNhfWo4Z2JSV3A5PHZqNAp6ZHNHQVI3
U1JAYTR5SnFmJkhvO004JX5WUVVzSk0te2c5NHBmfSZZU20mSSh4O0ZzT2YjUV9ZVl9FTGh0Zktr
Z3cKekpoRkJDJnNHOS0yc3h8a3ozWTcqKjhJRG1saWo/MzE+KGIze2JNZjxkem5gSj1Ka0FgQTd3
ZHxFbTBXa28mKz5aCnpGLXx1Nkx9fkgmTDlEPGZEZElQXzJVdl9RWTA+QHc3QFJJUEc+SG0+IXZ9
JXAqJTNaeUdAKkZHZVpJQUA5VFZSUgp6JDkjJC1VZjBiem1yYz5XZ0FKeHAqTEwjPk07em9NNjY+
dD1XNl9IT3M3KVU8R3AlUEEjQ3k5UV5mYmY5bGd+VG0Kejg3ZVZicSNqanlMMkZXS3Y8Q1J2VElN
STBLNiNASyVtbnRhPUlBS3okLUdRPmE0Q3N3UlF6Pj9MSS11NCYpcjZHCnpXZXFVUWZ9K3Z6e1Vk
YW5TT2w7d1lDUTtXLUBfNihNJTtMVXhoZlVsNzYlRCUtUDg9UjhlJWJxR2x2dDB5QE1WRQp6d3NT
WjltYjdvRkBgKHFLd1pwa1BvTFBUMStWP0ZaSjl4VktRLVUyNytMaUJZa29qZ3g8U141dyNALXJW
ZzxNbHoKekRSQ3BVczRLNnhUU0JrOFV4PTk5VzV4Jjl0TCMtVjtkcjI9KUp+JUJvVj1zP2VDKkw4
eXxKb0h4MXB2Y2IxaWIxCnowdTtaSFRwQngwKUdiRnBeMStnYWIkKml8RnFNd3ZOVUgye3hoKyY4
KnhAejJQRy1LdlRFZihQU251fkU7aFg+PQp6ZjBsRjtPbHMmRD8pcHohWXkqKTtJZmNhPmJwVy1C
K31JZSVwQnpvOVNZdSohTmp4am9HcGJoK2htcH5jWkMyMDQKemdoIT8+bW0memx1ZGdXaFF4YmRB
VmlXdFFsbipWLUtsTEMxMUtzfDFKMUlxezhrKnJBIUhMQzJlZmx5QkF7R2dhCnpkdXtTTCRpSWtv
NHFDbFleU1NvaiZxVGQ2VzhJKVZBKDx0PjhMKHQ2XlY1YlFoYj0pSEA+YHJRe04zb0JAeGwqfgp6
RmUrZExOUlNAPVh7TGlwM2ZeUys+YUw9eWBkV30tIUMzdT5xa2cjYld1cWx0RkkoYX1gKWB4dENQ
fkchVCp1fWQKemdYZVQhN2F6WE13R1hqSyVIUTx3TThGYnpMQ3hfU21KYURaZkNqTyNofTk0TWY+
UEB9d3pSNHJpYVRwYjNucGcyCnp0WSk1UVh1dnAkdDszdmc3QHBIQE9nRX1RbyFmTztJME9MeDFU
b1cmPSYlNmBUallGLSNnT2xgZjVXZFkyP3JQaAp6dWk1ZFQxLV9XZ295cHBoQEdyJUlyO15pUGYt
VTMwcnU8QSFycFhlfTJeZDJ1S0JtKXFZTkZCOEZ3aGtlPkd2PzgKej4hPD4zQD9ycjdpZjkyWG9J
TXc2MVNuRFJWazA1dUQpNSo5KEJfeGVOZnh9JTVrVVdPYGtwSnMzJnY0eXpnUG1nCnpNSCVaJWpv
V1dsaERJeiY8O0Y3bTlEe0JZYF4xO0QjVFRtUkdEfGRLIUZWcmM4MDV2KWBRJmxUQmdGaCY2d2dH
Rwp6NjtVaW8qe0RtcDVWR2RnV3pHQnBCbipNRXoqUm8hJmBQWW52SEFxI3A4Ym5OQittaj5DaCYk
aUNuX2JlRCVnJisKejBZQSh7NzY7Zz93KVBYcD1KVTxBeFA9JnI8RFdnTS1hZyQ2WEpXVXNpU2xA
RSkkLVgteGE9dns7NkRjYU97NmJaCno0eEFLKUlUbGF1K0o+eFg+Pn04c0xwQWxFWEd5fnFlTUZY
ZnZ4NWY+LX03M2ltQ0s0emBAOHdhdDcjfSRsV2EpUQp6bDZzQyVONn5IejFeMl5BS2k1dik8aGV3
c1hDNTMkUmFBeiFrKkFQZUJxPVBiaj9+KDd0bChOIz9wX0BHKGBEcnwKeiN6WHUoZT5GQUMoaE1R
aS0+QDViN2NaODtGMj1saE1qeClBS3NsdDNFfH1jdnFeRXVLNHBsTj5FYUk9bV9YVXp5Cnp8M1VU
ajMoc0ltbHpNMV4hVGdSd2szZnl5ei1ZJkIrVF5mRmomODtDKGBvV2g2SyFUXko/TVJ8N318bk5R
a0lscQp6PiZZfGIhK0srQCthJFFaUWNxRk1ncGlRZndMPXptK3xadmY9WUpJQVBuSTBOdFBHYig4
MTRJNT1RbjtmVXo4YkIKenFST2t9JSREfXkqMVZfbD1OVVIjdkR1RClqQGt9eXVUPUpiKm0oUWZS
Kip5Jmp1eEV6MTViP1FlbGRkSmg9IXEpCnoreHNWIWBoMjF8aE9+c2sjNTZPJDVyUjV5cCo4e2Nj
ZH1PRFBXa2dFZV54LW9tIUVjQ1VJOHFNU28zNjdxPnctVQp6YWR4P1QlT31aWm8kVV5OVjF+PUFD
Vjg1cChWckkzPClKV3BSPyE1TkcjUCskQTk2TlA/UTw+UHMoQFhmYXIqMXIKemBNKWcoVEhlP2Ng
P2Bwa2cqbDE5K3N8ZmMpbD5UaVB7NXkpeEQjcGkwJkJxI0x2WH5HJlNYfD4jfFpoRilKSSRnCnpf
Zi01VkRkdEdPM1RfcjxFPH03JiM7Ty1JV2FiRXNiI0A0aXE+eHxHPGsxKz9PT1JWTCtuQXl2PjVQ
X0B8RCFReQp6KGRKYXttPUYyJm1Dcj98UHc3NDE/dkJqMVdmPXI9a2JuOVZpV3YkVWlXRXRqOUVG
LTRUOFhIVHlwcyE4PXUjaSkKenszRyVxWDxTI24zJlZIbjBWTkUhJXNCRTItO3c/PUVGT3UhOHE+
PiZfRSo5SWBUNDAhRCEqYy1vTmJeOEdJQ2YyCnpmSVctai0tJT5Xelk5SV9aJGooP1A8R31IayY0
WT5UZm1UMWZXJU0paXY+TGA+d2FwVjNAVlJDUFNgfDk8ODl6agp6NHZ4IWQ2ZV4qNSRLQTZQTWN9
MVhJR1FQfjBuP0x7SGpnVEk8QzZMPmAhOEYrUU90ZUwjNnY4WFVFI1k0RUhqMWIKenFeeV8qUUh6
cU1PX1A+YTlRNTt+RG5JTCtAJXJTIV5oayhIcW5BaHVDdjZ4JXp5MTw2M0BUQEpHSyUpZUh9VzlD
Cno5bCoqbFQ5LWk+QFdgPXwoNlZJa2tHXylAOT5NSl5qTWlZeEwoLWVQeWxvYFdVSit+eEFaTmBh
JX1WXmpSO05uVAp6YCZsSUlWcT9+M1FMMCpuMSZJZHtyRkpNRzFEe0pCPEtAJW0tcWB4c182bzh6
TWx6S2V5V2ZKZ0Z0PT9vIy1qPlgKeiplOUR6Rn17eW9UPEA5cjw5TjA2a3E4ejVUa2VDcjJeMHho
KH19NWF6Smg3QCpDdW98eEtEd0hsenprTHhkaD1LCnpoNGNiS19pOF9fM0JjJl5OaEpsak5rZ1FU
KTx3ZGo2PXhVKXl4XnxSRVIwODJjPHk5dWdfUz8wZnlTNkpiKVVlPAp6V2NYe1libzNGUVp0VXk7
JFlQPSZzdDFoVGlaPE9pZFp7dGVye2RQRWV8e2hYenh7X3YkbnxCUSUqe1k0I3cwQ34KeldDQD53
OUIjSyUoSXo9RGNEd2pkVUhhKH15dTAoYUI8cH5sb1VWWGxUZTlePWd7aGl8dD5qNFpsMXs/cEpI
Z3lHCnp2bGFncShVanZiQXhuT05CJm9uJjh5d2A0aktLOEw3ZD5yQyVqKCNsMnRIc0puKE1kIz10
QSpTPyZOYSVSRy1UcQp6TXJGc0omK0FnZkN3aklXR3ctZHk4ZFh9RF9FbFpTUyZYTnFnYk5WPTVG
e1R4WW9jYjtTYyFmeHBCZyZDR25VYlIKeipPSWxyN2khcH5IUUIpJSpKekFPK0dLPTdOdT9yMkEm
Nng1QmlJZmtBP1g2OXNBSil8bj4pJXFhLSFmcjwtWk1PCno+UWxCVCFPTVo+MW5wJSpYWiNSa2hr
I2BDTHpBQUs7UV55YCplLWJ6a0hOOWAlajMtJCRUfHwlUzdsdXZka3FGUQp6TGdyQW1idXl+fj5R
e0dfPH5haV4mSWJka2ApMGlyR3RFNlU5MWghQXRFantzQlJyQSo7RiZCfmRQTE99M01zVDEKejtS
S3tBR3EzaVhTN3l6RWRtLVFMQ2x8fXlFMkQ+LTY4aEJvamR2czVCfFVfUHlTT2twYEd1aFEkay1w
aEhjSEBBCnpMQ1F1ViVyRDtpdkZXMitZNk0xfV4/SzJzentIP093NlczNShZN1YlPipQVmFVJVd8
SU10YHVmNnJadipzJXs8Mwp6c05iQ3hfTm5fTC1oXjswXkNDbU5reXBqM244XnthNFNeR04rRDR3
VDdtKiM7azFVJHg9RWY3VT5CX1B3MGtEOEEKekckMEhlZUA7WVRURmpwNF9+QFNzQUd7R0RiYj5w
Z2gtWSQyQjFMSVI9ZjRockYtPEF2N29iKD1yJUA/dz1iMXlkCno3RkZ3YHVzYmozaiR5d0UxWnVe
YFRBUiV1aUFVbkl3VSp4dER0JTl4T3Y9JkhPTWpMSloxPFRSMEp4JUxYclU5ewp6bDJvIUBIeEQ4
bi1ScHBwcDREfGpIeHhvS291JGY/cWVGbCZhJFlKMFM5alNNQm5FcDN2e01BS0VBJjcqRFB2VXIK
ejVpWkFEc1VwbUc0JEdzV3cldjd5UGhVK1loT35rYzNKJjc7OHJROHRgWnQ+azVYcn48MDJGWndV
VVI3VTdlQVBWCnoyWEFgfFY9XiY/PWo/ezZtM35wSmpKcnxSPi13PlNzNTI+aVZWbT5QYG1FJj5w
eHwkZiF9KEtPZmYrQUlNK3xDYQp6eH4tYTFSQXVPUnBtSkxTIWBnZ18/SXdOTVdUUGtXY2QpN1Bj
Wnh0VmYlY3YtazV3UDZBRXFQZHFFcDtPdkZRfS0Kem03aUJ4Km0/ZCVfTWpOSUYlP0tEX3BsWisp
TkUrRUNPJjF9YWYtTmJPIXElNF48OS02QXxVZDtKdUgpSDNDciglCnplZnA5Q1BUaT0/MWthcE5f
YVcmZ1QwfENKYWZKVllEIyg8I0IjaVdnUFBOVTBycTJke0pJazc1bT5CZzdDbiQ/agp6SHY2NihZ
ZnIlOHg8eyN4U1pobCkyNWFYTmxhfX1zPWNpanhAeG8peEMjJTkzb2d0TVd4YlEtQXhpV2g3WWMo
UmYKemw1PFI4K1dWPFFRe2R2XkR4WmkoXmY0empQXm17K14+Zm0jczthYjEoJHFyQWowdCV1X1RK
bTQjRiZZNzFhJEVTCnpfQyZmcHNIQCkrenEkVT8oMXR9PGwjaHo4e0tJPExYeXRve05BWnFZdj1i
dHtKSFlpYms4cyYpZzVJOFEyWXFvMQp6Mjw/SUBAYElDS01BK3B7YVIpYWRZQjFoeWY0LT84K3xT
UHRObFBZd3h1MmFBQnBERVEjYThkIzZAQD1UZTktamcKemt1VUQ1ak4mVkxCUFBkaDc3MXZlYTM3
MGdIQGhQdCZaX2p8JHxOa3dwKD9BajR3THRTVFczXjkhcz1QT3V8JVd7CnpPdHtiVWg1WTtMNn02
fT14dFNvQlZ4bkQtKnJHe0QzVyl7Z1hJb34mQTFjeU1paH1DUDIrYlI4YnVtI2FEeVhVJgp6ZHZI
elZUYj40ci13SENlODFwV1podVcwYzFTaVEkVFZzdyRuI2pJVDNaTFZqdVBuQiomPVZMMEdjd09B
UGk9VXsKemRwOTs+aWtoQjVkQGxueEpPZnFFUlU1LV9CayFuI043RmR+QnRkZVl1b0RoR2pkOXlv
Y2taKD4pPW16ZXRQSj8lCnp0NUE/VG4tQ1QxJFZrJVRZPW1+fG8/OCg7Mjt7KHMzTF5Rc0xCNCVU
YlBhbFA0LVQxX2o8KU1ER0VQRjxtM1o9agp6S3xsTW5NXiQ7MVF4bDE+QjV5NnJQPVBQYCt+fDtE
QSRCWmxGITItciYtJnp3JGBILWlzS1ApfVZpSnd2SEk9a3YKeml9NlJ5V3BfcSthREU0b2ZnfkdY
dHR5b0IpRiFCQmFJSnBzNjNVYGJ2OTFwV1laNzwjZVBOb0NDJHc8empTJjNVCnp4QjA2Qj16O34h
UEBGV05ybCsxIVZgNWp4ZCU1aWY2Mn0oRmp4cV5aZGMmQTY0dCQtVStQNnV5ajdGT2xjfSlTRAp6
O2Brck5PallZb21GKElvNnlra25nc3BfKU8lU1VWTEtaRXEhbGF+VjZebl9HMCNrcHAtNzV8NFNl
K1YqY1J5NX0KejlmeGJ1UXJpKSM+P0ZseDMhaktVaG5raGYybTVRb1RWMUdzXnJPbVdKZGdHT2Jm
YkhFM0N+cn5KRDBnempBSzlhCnp0aUVvVEJQRWpVJjBHfX1MUS1OPk1FMXhzZE0+KEgkWldLaDsp
SCZ7TEJPdyk1bSptdzBEV2IwZnR1bVI7NlYmVAp6Y3tZQW88dzMrY08xNiR2U2YoQSM7clVkPSFR
Jm0ka0cpfEUkUlRPTSFJSHFUeFhJIV9ZJCQjR04+fkNqPTxpNDAKekJJYklQZmA3OFdgWnxnfntU
Yj0/Ym5zV2s+fmtKe2FKKyhuPWcxIz0zMFRyfGNZNjBhb19ZXjkoRzdXampTMz4lCno9JH1sflIk
fkgpbTY4V09Tfilabm81X3JnKHFyO3stUVpqd1J7UGRsbnM7MVJDYSMjY24hKD8yTDVTUUAyekVn
Zwp6PmhkTGAmYExAK3omMU1SKnZpdVE+dm5fNk0pcjRKJUJiQDcmZipYMUs9QWR8Y2VebmVwbXBk
cSl7NUoqPzlgKkAKenpSSl9HZyF9IXRNdU9gPFQoeylyV2NGKTs0S2JEcFJqS19lIVNSY2I8KUNU
YXRLanNzUDN9KmY7LSgjdWsrQmZLCnprYXpyM01BdnE0a01YYDRseD1KMHZ1R01pMERtVTBpIVJe
aHlNQUZHJmZCO04qN25RdEYwYlk7LTYpJio1cmtTRAp6dXpTbzBlbXREaS1ETTxeNSE2SEhhQWxI
MTN4QFpxcGdaaFd7Z1AwOChGZy05YVlyN3UhIzRiOHhpKUNZMCtlPG8KekNPc3h+dSRTcGlpWio1
bjg+TEpIZktZRXxpZFNxaDFYPXNzV0crUyZ3dmhga2dnXiFMQT19ZmdWWDBpN1c7fmp4CnoxSklC
SyhaYXh6YlNQKzYkVClLVjF9S0A4OzsjKVZge0dPZ048JVNgTH1ePjwzTWdiPEcxR1pfYS1vdUM3
djdXRAp6aGZ3TnZla0hOMjEoJD1SYkE9T1BxezBVcDV6V1BNNSE3R0pFTU9VZ2l3NXRvZiFHel4l
XmJHNDlCJVkpZDNCVlAKel5pQnVBK2RLMj9uN0ctMz8pVjRweEhyWEM7NUdJN1RoSD0xMXdJPTc/
Jks9O1UpUHtfTEIzKyo3d0pwP1YwWUgmCnokK2RMeD10eHVTLUc8ZzJEayR2NTIyVCM0Y3VrWDU3
SSNhIzgzPWR8Z1FgTDRUTj0tSG9gdz1rZDxtQHtwJG9LVwp6ZCk0LXpYV0teYzF8Nj9uOFBPZ2hB
YSQqRG99YDdEP2NMdSpwNkRlaURyKEBWKEBtQHJGR1J2MVEhTGs0Ry1EJHUKek4lM2pQNk56OEEx
UmZ+SlE3fXQoam1peHRGPSl0dD1TMlBsLUdLVz5SNnVraCF2azBOUHFId30zLUE9eWtMaUQjCnpP
JmtHKUE+d3pxJnNsUEpDRHV8Q3Iqdl8te1NEKEJfX1JjbzVZWWl8N0ZaREVwJjZPYEIya1UmNUVi
aFRoaTVwXwp6dzRBVX01eHNJRkRqcF5rZG1DSl5YKSFmKWVHdz1ae1pmIWs2dEpRSnBBQkV8YFZJ
eXxFfHt7S2pAa1dtNmshZiYKenpBKGRwNTA3WC0hNlF9ayZ9cm9+UmY+N2M+RFk8Mm5mJiRPeSNT
Y3RTYmI2Wk5eek5DV2g3XkczNXcwbFlmOExPCno/TjNYeWpmazdfezlidm94aTV5dSRNRS0taHJl
ZzYrdk5MUEBuK2o5emlRdVNyUnpZNEZEc2BPPipnemk+SEtNXgp6Q05jRCVnZGdSTTQ0Kzc5Pngx
JThoJkxQOFh2cS01UVRyP1BaUStUeip+eHBTcktffTMtVzxxSCg5KWxzUl5PZ24KejxsXjl1KmA8
O1lYZSExeEhufEA3S04xKWk2ayg9Jkh7V0k4Y1JtYXI/S3lPR1d0WH1WZD41PzMqUkY7VXtyT1Ez
Cnp5UWFEcE09OXBuU0w4Tj09LTJ+aikpdWVvdVAlQFNVMzAwZ2FpLWtWPnVBcldIYW08VDRAcWAr
U2RxYkNBdWx+OQp6I3loZWp0Mi02Y3w0M1BqcDEzQkd1K2crY2IrSD1teG5ZT19eTTA8K3EtfEZi
S0p5Z1VsPDZLLT0pU3B9aWclNTAKem9YeztOcXJ5RVlDJmsxVjArQ2FTX3JobjJ6cCFhJVdDTHla
N2M+PFJodjxkeDJBNThUU2djayRteW1sZW5KNlN1CnpybCN2O1cwYVlURWdhVGtoQkM8T0goS0Y7
NWMrTnM/IU14bSQxZ1RlOzx3ajF6KnJwMCs+aypwPHcpOFdxN0xtTwp6fEpOdmtXU3pKQTQ1ZVNp
XjxTVWtpeTt6I05aKDtWWSE7X3FfZk9Ya0xBNClqNWNiN35GPTZCSi0jZFNyQjVERmoKenZRYXxm
Q3g0OVAoYkhDJU88Pm9vcUxTRGt0bmlUKG9SenhUejxBMkI/ej1NcSl8SjY8b1ckfEJSI3hWanoq
YnorCnpJPE0zezdkWlRgejBgbXYkUzNCbUomeSRaKmZxJmtZfkEqZ2sqQj5gWW80S30qVH01MUdz
I2hFX2hNdGRYIWcwJAp6N1U1c2hLTjdBJHpvM01CI3Jyfl9pa0Y/ZzUpaTZDb3dAb2NUPlBqTkp9
VjdQUWo5Y3ojUVRqWjZvZmRvWFVJWGIKemQlVSVZSj5zb3I4QHdjbUlXWjxteiV7Mnl0bEMoeU4k
SnI0PEpWQnohVSUyc1NBN25RNVpzNjVjLUx7RTs1MitxCnpWRklrN0JGaU4hLXlWeiQoP1B1Nk5a
YkpXWUZkQzxfVVA1SEUweVF2VWlNSmBKcmpWbzdRNGI+KCs1dk1NfGh8Zwp6RldaSm9YcnEyciE3
WnJeXncyLUU1bzhjZVpnLThQT20kJGg4Tz0+N0IyM29aeGA2I2c5O21jaU5VOyE7Z3gpR3UKenpa
R31Fb0tPfXVOSlZafGxyMDVoNSp2LW5Zd3chXkkxO1UrJCl1OWdCcHsmfVpuPmxfeiUpVGR7PyQo
P0I4aShYCnpla3lfN2BvdHZLSmRgPT9HSGJPMkQ5K0IyWHw0RzgkdSg4ZlZ0dHZwTyQmamdYdVNm
ZDNrTXA5SVNlcnlCXypFTgp6bXFXcjsmempDKGlmb1hASi1pN0Q2N0I2Jlo/ekRtMytIdzhqRVVi
Q2FlbCY+TV45QilESXorJSN7WUFQKGp6M2EKei0te0lka1ZlMlNVWiZ2QTJWSklDSCg7cz87LU16
SHFSN1d0OTZwNCNLWG5LRj88K3leUE09Q1AqamhHYW9GLVU0Cnpjb1U+P2AlaD47ZUojOW85fD8r
e0krRz07blIqZzUmZnJudXVHP1p4JWNgQjVBSWpSZGYzRD9PLWJeQTxxMjMrPgp6N2g8PjRnYCYj
NmtDeDhnX09vJiNgTlZOWl9pMFk7WGJXYnZzM0lSYGxRK3xacGUzNi1scElwdzhFKzdgcnlQcFIK
eipwcDEhT29Fe2YjRzt1fjRWTGglSV9+JllBcFJYRykqfHlmZ1pGO0lmRStIfChvbTg0UzR9ayVZ
IXkmdCtqJjxhCnpJQTdtWF5hUnR3YCFqbFo2JGEkKj07NVEjcjRZfGYrciVATnMxNlJVRjY9MWFQ
dTVmb1N8aEw0SXBLVHhtX3k9bQp6KkI9N0Y7MEFzKkAxRnIkT3xzJlh4UlYyWnZXYzRkXk13YUUr
M0xseFZrOCtUKSVHVDshVH1ORGBjMn0ldGF7S3wKekVGamB2IyZFI3ZobmlkeEQrIypDeElCQnhv
JDBBck1GPUgpVXJ7aiYoRD5YPjZXbjtIa0xvfGNtenk1VGVCQWBzCnphUSU4bzVpQ1BOLVhVNTti
RTF8MmB9PW5yUHAyanlQQGVWYlFET31pU1BKUWlRaXxCY1pYT3d2PkRNZz4wPnRhdgp6Rn5rPD5n
S3lSRU87TEg5ciVNOSYyMz0pSVpLallSSj1YPXZrbFVTYGA1UFM4Y19hbSF5WXlLQT9eam43MHth
aGMKeihsQkV6bFhJQmBeSCtoJjFPbnJ3OyNWdW9GbVZqQjB1VHp1cW5EWV96aEFQUUd5KVZ4PU5P
Q15XalFJNG1lezUlCnppelh+czhebmQoVztxR0Ytclcjb2VVO1h1RVl3TDtGKVo4VkxAS1kjcj8m
aWgqK25XP0ZFWHQqdiZjTzZHJjJqaQp6OGZ4OD1eUFhKKFBRfEAoR2BRfE92N0AxMTVucl5ZQT1S
OFdMeGhCRyNLZWFETzlkeFJudzEkaHVHZV83VH13VT0KekU9QHNjZTNLTksoQ3RyPDdmejx7anBX
QEVkOWVleGA+KGY7ZH1xRz0tNl5Zb0RZISUtbzh3WUdKSypJOXlOV29xCno4SyVXS1JDSHxgamtt
eUMkSWUoN2Y3R0taV1NxSFdaNHw0amJ5Vmd9I3ByPEN0PSkmaGo9Xit3XnpQYHw8Y2VTKQp6Wndv
YmA/dkB9PUxPTz57QVJ0NjdwY0lOMV47S308VzxTMk9KK1BGKiQpZmtWNXZhKURkQzBlXlBZRnZR
I0U3R2sKejllSWZPU3ZWRGN2UW0zWFZla1pNcUd9aistNyFBY3d6PkR+dHt8K3M8JClibHB1Szs2
QHY9MkA9SU5xQ0g5I0l3Cnp6NDZ1KXEwPEtlQWEoQWwqak4lPnRTaWghKG9IUTQ1Tyt+N3FUY0Qm
c3UoRilDfX55dzY2Xk88Vk8hZypkYjg2Twp6WXlnbmQwfD9xRjZxemZ1Qns9VztFPk1MZlVKSVBO
eVojZFMyVlhIdEl3fDhEYkJeUU87KC17N0J+aTN5M1ItXiEKelR3QGd0PyNvZElCaF4xVGd2UDRm
fExMYy1jR3MxWCNlPFRXcjZYcytmS1dBUTY+dThFaWpFbj1LUF5rP1lWQ2FHCno0WWlPWCVOVFIx
OXdTVG9vcHdGe28/V0I9QzcwKihfRERTS0p1RkZ8MWEyTUhaNTQ9YEArNSE7SlFfNW5Iej59eAp6
RUk4Ym5GcUFRcS1iUn0lUXl8dSpmWWZrPj94MFMyMDBjIUhqezhqaSM/U0dMTHZxdUNaTnFaZT5Q
Pyt2aXttMXEKek9SPiVpc05afEAqJVJfNVJ2cCZLJGhaLWlQeHZARShyMzBTVEp7KndCe05DPj19
WjRaa255ZF5rVHwpNzU+P0xGCnpBYE9NNmMmdnc1NmtxTkp7PXpuUThlUkt1X2FBcWZkIWtKQj1X
NXlxY2lsYSpkSGwxPVg7PFRoQGN9eFdJfjMzYAp6QClRXkdxLXw8R1ZtMGI2THw4WEEmOHV6I0NC
c3VaMz11NEtzLTlaQCQ4JVlAM08qU3hzJmFlQVVTcFZuSWo1UFYKek43SzF6OVZSQlZAKzE2PEBQ
em1NUUhfU19QZk1HZmx8NXZ1M182VCRpUjRPZ2B9TzBRUXlvM0I7b21LUnQyKi18Cnp6IzJURlUk
ZWh8K15BWTBMMWhELVFILT9FMFJ3K2hLZjRIXjM3T2lvZy1+M3lXRFdRaCVSMFpUMjViNCVCPSt5
RQp6QX5NWGs2N3RVU3VJaGwtISZ3KkpORiY4Tm9eP2dQP3ZZYVVzYy1VSy15WHM7XmtqR1FlbDNI
K0cleGk5dmohZ1UKenRtRX4qdVI1PU1CQTtecVhlNXR+ejgrZ2wkT058SVkqNmw2VHg0WENlU3xG
UVl8MnM9TzEqWllCWU9sdF4wITA+CnoyRHJ6T25TOCM4KlVfOGFJMkkmfjkxT35iNjFDcEU2UVhp
NTNtRyhFPEJmLWtCQypsSkU4bkxZK2ojWmhpaStXaQp6NEB9V0dgJm0+dkljbVRJI1MwPkxVYjYt
NWV3Kk5kJlZjR1VUTmN9YXJURXRCUE89KDgoRnlPLUpUNEp5SU5Aa28Kej5hO3J5Rj8hMlZBV056
S3IwI15nPmlKZXF4YTRrOXBoKDwjJlpMdSQkMDAkeUZ0UXRBYEpaaGBTXlIzLWVafjhJCnozczlp
VHJXT2coKlpKOUU1eXs0alhrPF45VGxlazBgcDI7e0R9K19UYiYwclpNX3FrMF5CbUI5LSNOcV96
cUF4RAp6MTNvV0dMOGBLb2k/RyE9am5OX3huJVBufVNuJldXWjt3T3FqJU8lKXBCKnNEcVUpemFU
Y0RWcWdvUU5iTDx3dDEKekdrNT5mRXNBa3VqTFUwbXNleVlhVSU9RCNoU25sWSFnQl5kZV9YUEco
IUp5d2FnNGN0WUQpZSspIyVeWjE9N2dWCnpPRWlWSyNAK3o9JmlpeH4pJD0xUXpYbSlpOWBRbDkr
Mj9PWSo/ZXtTQnI0YER5TEolXnslUzJBZWZyb19uOClhWQp6RE14KWlvb2d9fiFmKlQ2eWQkZHZa
b0E+fDg4NXpIUFJibDhISXM1dmJBLVN4T1NsVUZud0R0Jj9CUEtEYX1GP0MKenFQIXgjNG4wWW5u
WGNpXlVueTlpRmtyd3JZZHVTWG09KjFiX3dqdTtYM09OMmhMZ3c5MTxIY0VZZDZEdyptMmlSCno8
PWN6KkBZKkpOOVFjRWBUJDh+Tk9HSmt2VjJfRD5jYSpJUjI4Z04rM1F8dSFZNX0pUDZAaVgtbylq
JEo/QnkoeAp6PU97SEhnTF5YMUMtWWx0UH08eSpmelNLUlBoemNHQlRURiFNMj42Q1E1UjN0d35h
aFowajQ/cGgrSXAhIzt4Iz0KekZiTHlxUG9GNDVwfkV7SnIqX085PzwmR0AoejNYPGE/ZVdPVFBP
Pk1uSWZUV1Z9RURQUV5tJXxgS2NfSmthZGRwCnpAa2spJmBvQXl9T29AYVp1TXtjM2spMSt0YXBB
VVdPRTBSO0FmQiRhXldnYz4mNEVUdDgyPUdjcCpldntZfSVRRwp6aUErPnlZZ1ZpaEc8cWtZcCpC
JGEzLXdNMHJMSnVKR050VipCN3MyaTFgZ2ZsMlI1N34zOCoqS3B8NDRrMl4/TmkKemsrJS1LQm9k
UjhocEhFP0xxWlAzIzhPZkdMKypFa3tKM0kteE4/NXRAVkRXVCpnTj9AZTFjeVlecSNBeFREVURQ
CnomOG1VbGstbWsmPDB3R2lDPUpsYDgyUENIK2VjJFFgXkwlMT90ITVjUH16TGUqcUhUTDcoY0hH
PlQ5ODB1eUQ1Ygp6eiRkWUxjJUN5T2BafjtUPyh5X3BXYGh9b3ctbyZXRCMtQjY3RTxqVVphWV9r
K35Ad2ZyVkJpXnNDZGhtNXUlQyYKelkpeGxgQGgpPitwcFRacz0wZ3h4WjJWd0UmRGc0XzdOejR3
UXNRXkE1NTlofSNjKztnWG4yVG0lJnVRI1goQHc5CnpDVWVWbXFqJDY/dGtpSExAIytVMzYrX3sy
Y0VSPl9LPT4hckNYeDQpIXQtM3M8OGh2aG54ZE9UM2A9YiR3ODhPRwp6JEVwKURLe359TF8rY1lQ
KkhefDglcDNPb15iNlJ6I0tTMDV5aFMhdGslKiRRUUJkS0U7VSs3VkBuP0RDKExrI28KelU4OG52
dUlVeT5HVEI8XkMkI31mOyVEUCgjKFQqWXFIM3JyPTA3ISZtSChzVmNvNWN2KUhYWT1iOFYhXk5z
bCo9CnppS1FuLWsod0NHIX56O1dMNS0laGhqdTlwKF4xbjs9K0UmVllYb0t+Iz4xPShWSSRQdWJT
JT9iVzNqbD9kJUxtTwp6XmJPRllpe0V+TXkyO00tbHc8cT5HZ1RhPGt+aWVRSmomKnlvcE50RF5A
O01BLW53KUV4ZitreUFPKClidFBRen0KeihXV3E5bG9aQmc0RTRMbnc/bUMtR0Q9djYkamB2MU9w
RWteSHtDT1IjMjwmfCleKkY1O2FQciVjNGIjd3g2Z2U5CnpvY09Ic0FqN2JJamoxYz5Va0U9UDdP
IzBFezVpc05SS0omPV48ViV7Wk5wKmBpRVpPYFRfZzVqcWFDU1hlVVI4OQp6M3RZdG1URVB3LXdL
dmtGaz1Vc0khdjRaMk0yaER9czhNdDB0eW1ofUAkXjt4aCZmJWVTTzQkMzAySzE1QXo9JCsKendw
bFQ3a3xSQHRZSjc9ciQhQGI3KD8mQntSIUhPWTk0QW5EN0x0PmVpK2hDVihHTzZWMmwyRFYmPjJW
UFp+ZCR4CnpWaWt+WjsmSGhndyNFdHUrKWFsQGlpKnl7Knk/X352TTt1VmBvPl9CWiR0PnFhT0R1
Uj1IdyFhUDxtbzx6P1Y9Tgp6S1RUKyltSFhyYmQoP2JmQDFiIUI7UiFoWEl2Rm4wQT16U1RQKHNY
N1loe1hXKGxFfFJSdTMlTjZObC1pTkBWSEwKelhDXkUjU1l7NHxjb0NxOWBMbGZRJnt0ajJIVkA3
ODQ9TUB4T1A4Tl47O1h0Rz9TMFF7S3p5SGZlMXkrI1FKc1hNCnprJVU/RnY2O0E0d2EwJklhR0BA
SnI3YFY9RSlPUDwpcXBGa3VhPCpDXlFRckA4elZBNlEpSHpUaUJxUzV6dTc5cQp6WFgxcj0yIzNw
cHBAIWx4MTY1cHxjY3JkcTw9ZUltWVZhcXxZNT1zKl8qQ0hJKExBWmxsVXh5fCM7NWJtJEFzMkYK
endAUCtIMUdeWG1DSmk5bEl6QUpWRHpnUEE9R3QxWT1tb3A1Sys1cjxOOTZ3am5tfWQwaTJufjJm
Sk5XTTM+MXhOCno/MyphIyg7WDwpayMkbTRpMyE3Xi1WKntCZVV1eCg5fT5MVCFrSlpGeEckT2o3
SEVgeTVAPDd9IWkxKGFxODNpRwp6azVuTHE+TmYrQ3hRPTwzOCRlNWprJnIme0FWRXI/NXBnViR4
MW11ZmwlVCQ+PGZ3K0BnUGJWWDw2ZiZGNCtjU3YKejkmfilgPSFoVnRoUVVYeDc/Wi15cSNWfW0r
SEBnKUl0Y012SyhyOUlNUWxnUDxJfTdERmU/c3RaK2hPfl5ZVmk5Cnp7PlNmX2tOYkdQQXMtdk5r
ZE9WMzBKYHZRSm1oflhnZSZleklKJUhLODxkYXBjKUp8NT5tJG1CS3dGZno2QTdzNAp6ZX5rUVU1
SnJtdDhwcDdtZl8mc1NUfWtleVNyfTRjPHMrKFNuWHN1K2k/eXx1Y25JMH1AY3h1b1VCbWIhYEYm
SzkKelNieXd5KSsmT0tuREhRI2tGeTlMVyNEb1hWX3JWcGg5U3NXZ0oqRzR5Xnlqait4UVFRYUxq
RUF3KyltUypeaSNjCno8KzFRNz1vR0ZsZGVyLW5VKl5rfjxAeGUxPiUkM0hWdShmYFB0JVhkQkJl
PGpJOCs+WEJtbmEwUGROVShURHpaIQp6WDcoWX1obGZVWEEtXzRydkhPR09EJkAqKWc3TFAzKThq
SF5wcyhLbz9Rfm9kcWo+ZGBubVJrOWtub1YmPWVTMikKeiNGVzNzMFhVOWdsMkMxQ2JsR3ZuXncl
c2wpKGIpLXFfcCZEdlVoRDJmYTc1U0lKUCYoXzJPZVNVPW9hO2ckaUNCCnpmeztGK0ZPcihqQWJR
NGw1WlIjdWFMajw9MVJuZjdyYzdMKFlEZj89S0tFcGZxViRNfW8/UVomSyRWT3BVYEA/NQp6Pzh9
UGF0dnZ2M0UpMXpub3MzXl9COGdWeyVETW4yVTRXRTVzZERuVCptajM0dVhrYnEwOCRTJHY+XnJ0
KWpWbDkKemxgJDFyQUp2aF56PmBQTCFBRzlpNTlGOF5Gb2hsYjQhJSFyeDZrUCUhanI9bDlMdnow
OHVhZD81RVYtK25PTmk9CnordEcoVGFkcmpNNk8peE0xZFR0QThzdVhlTXd4cDR6PDlGaUgqSCok
enp8VEBKVSNrZE9mKnBaPzRkblVIZDAxJQp6TzQ+MCtkPkJqfEJfRylpIyZ1Pz5ERkhgQ0tKRyoy
P1oqcDM4YDZZKSlCd2xVY0Q0SmYqWWBJek9AV0ZyLX4yfSQKei0oZ08qc3tqWEhnUDZmUDc7fnp+
PisqQ0JBU0NqQV89fHUxdEh2WSVgXihWTUNULXBtV0AtWn56VnJMNU5Ge1l9CnowRDdxWncqYXQ4
MHNJbGxMKXtSWVBOaCUjI0RQUTNmdk48NGlWc3VZe1MyTXk1MjFNN0RvVX0pcW5QNDNffCEkMQp6
ZztlYW9iaE5YT2kqQ2JIME9kSX57Z0NeVlQ0TypjJTsjKDM3fW51OVIocFdYIT10UkRJMnNMSXZR
Pllre2Roc3YKelJAeFo1KEgwTEx3MW8qY15nTWFZI2g4WlpXQ3QtWkt9Y1ZOQzVqKl9IV1o4TV4q
bFVGYj98SyM+P2gjeHkkMDZsCnoyenVaUERDT0dEbGthMz5eZGxMe3JoYCpmJHs+UH1LJEtsRCh1
ODE8UHZ8UjNlPVExZiV3bS1ib2o2KytXe3MydAp6N3kqRFgxI3I/OXlPOy1aNDxLY2l6Y35wNile
bChYTCVEUk4oM1h5NFRZUiZHPHFXZGQ2aVp0a3dEX3Y8NllGKjQKekw2R1lySWZHbVlLISh1Rm1O
QmpDQD01KnNoY3N2ZEVOUn47eShxYC1WfXN0Iz9YWFl8YFBraDMwWVhvMktlWn1UCnpJJkQpdjk/
My0/KHx2aj1NbjF8b01fLUdeNyRNOX5iJG9iVDlJcm4+Y3dxVUI+I3RDJkxgPkt1bFNAIXhZVSl9
KAp6YHIjQEpHTW5yMGFLST9EeCN7b2o3K1NSLVBfZkBvRVQldCN1JTtTMyNkQmFBaldZZmtLfGJS
OXhQVlhqK1ROM3cKemsyO15zQGdFJUMpNkItbW99TzgoUjNkdntPbVlyY2hSV2t5aE1Eem5mYiY+
YGhJPEpyPShYVypqLTZ2V3Ykcio7CnpjZnIqIUo3azQjNVYmaTReVTxAciUzPWNGd0s5Vnw2dkQt
SEY9QCFsaTFMX1NuZ05Ta05jMTliQVNDfUxwN0NkMQp6ZVJ0eFY/TF5rUUJPMUxRTEluTXxkTn5W
dUlJNzliVW95bjFseEdNckY4fktadEdKbGtoQGZPczhUSnRlS3N5RFgKenkzdH1ycFVGNEg1KFkj
clZsZ3haKFU3RTQ9PGtQUklfaUJmMEVCKE4zI0BFbyNpI1o0WHxjNjJFcH5QYlVpUlRLCno4VDhe
aHMwTW5MITV9YGlJMjRNdGg7Vl4oJjduQlFKcUR2UUJKMmI3VGkzZXxFa2ttbWBzWCtfPk1wOChY
Q0l2YAp6IT8xcDU8NlJqdHY5aHYpQFVtaWlfej4lOHVkY3VnXmJtWW4wbmlNRHRkTVBpY2dKUUJH
SVNCRWp6VVBQazJtQGkKejhkZjkrJngzOFkybkxsMiVUYztsRn5XcWFScypESGVTOGdSVDNZamBf
aGRLa1YzS1AzVThiPF9ofjQ0NSpzMEEqCnpNTTM0UT9gMEBncHN+dVNqNkkhZW92dThHKCFqRm5J
XnhtYCpOJnd9JDdMeUhJcyYyZ19+VGIwVSFUNUdXSE82Mwp6dk5gdXdAIzdpJXRzUT9TdTlXVXdr
P3M1ZDt9bXtXT2BuYVFyRnRSbTdwOCtpIWF9VWAzKjUjQnhyNCN1bUJyLW4Kem9tTHUqRW8tOEkh
MjFeeHk7cENaJVFtbzUlVzZlRmE7I2VEK2g4dH5kN2tEcER1fn5zOG5aRHZTc3JYezZMOEdKCnpE
MSRiUlJwVXQ8MDNKSUNkX01xJGQ1MSE9N0JHSHthYDd5LWJNUWNPWk1fZTZ2aS0/TmU5UlAkY096
dnk+LUQmIwp6ajJ0US14eVlWYDcoQnlxbVppNT1sUkxadWh4UDw8Q2BuQ0BrPmZaeWoqbGFOO2V2
WmpuR0AjaiEjTm5vNVFmVUAKej0qe0slTEhUPEs+a3NfOE5hRy1ualBXKW8mMlZBT0lWQUxYUXoo
ejxHektIQjYtcC0pMlZOYD1TajVGNkp8RzU7CnpYRkdwX25XfXlPcjd2RT1IQX58PDlXe0ArZEFw
Tn45e2tuMnpKNk1vdFRoZUhFUUcoTVJ2QXQrb29edmRuSH1uaQp6NDEmPVdKKFZyez5YQkJjUEZu
VVhsM1I/LXFGJS1SZStQaEwxN0wmT1BUOFRGU3ZOM3hheGozX2tHdy1mREB6bGUKempVTFUyRn5t
P1RyMDx2TWsxRF8rSkpqNGRsOy10ek98MFdWKkVxLWBsRmxNbmRrQEsxaCh6ezV2Pz9Bd2RRQCg8
CnorcVNuMDQrMjlVKjQ5PTVPNGo2bFpGTjx3MGlkajV3WG1IWG45WWckOUhiMWxqPzQwTk9kNWcq
VXRoX0wydlN1VAp6bWFEdndyQzdFez9QbHBzIUkrREFaUTUhTShBN1otRXQ9YmlKU1I5SXF9Yypz
PXxQcDt6X09rXlhDb1BBPHE1SzwKenI+IyZNSmU/fmhCSmUkTTFNa2ZAdnpHKXh3I3ByfWJDOGV1
PUp6cDw8QS1RI1c2U2I+dEkxYUM7aWxNdSUtRGxgCno/MXRvSDJ6QXFDN1o4c1dJMzI4Mnczd35R
U15RZCNAaFFeYjdTWXA0NVJZfmx2ayk2Mkp2bkg2VExPLTB2QSFgZwp6MHZzayEpenI0O2RFMEwo
QUt9P0VMIzFxSylqMXVzRUNPKHhtb2dIZDFDfVg+IVU9akVwVkoxISskeDwxayNyN1kKemFAY0JD
cENKZyp0N2YkVV8hXj5pYkFlK3lFZUUka3pTRyM+aEdlTV8mVDt0MXNIdGZBUSpKaVU3WklSdnht
NTBwCnpWfGVLc1o4MVFqOFJWRzQ3QEl0Z2lCWSlFPihlcWxAOFB2UiZLRjw/RkQ0fDZMdWZlMFc4
dCRWPUAwTUdkR3V1SQp6SUMwPWI7PXQlei19Z2c3PEkxLUYxaC0rISUyKT5xakw/I3hmcjNtbXUh
bH0mN2dvR2NoWUItczkmKH5FUH1tfikKekRANzl0U2Z+eFJHZ2xudiMlWGU0K3ota3I+OUw0VkU/
SnlaRmdeOX1WeDtgZT95VHF7RDFMSnJSdzRHdkEpP0BoCnp1PFY8ZnJ7bGdseWRac3ltR0tTT1NH
VHFoUXF9SSUjT3FLNXpYQjZ9US00QUZ2QVV0JHprdntzS1pYKVJKdG1lZQp6TFllTDItRUhqeXhQ
PGExSztnaHJTfUtubkoxI2YjcDU1SkRJWTUtPnlXS3M2WUc2ST5qV3RaV3hofVNGeW9UZVEKej9O
eiomPlg7MlpBMnZDT2RwKyRnQ0paWUUlbn1SZzs2Ym00SXUzeXBuVEpZQEpwKDNZRighb0A9MVAt
UzhjPmlMCnpNcUF9OVV6PDR0ISlDPGg1SzNSUkNecXNyc0cpT0VrZCR2YG9IMFI0PF9YbmVDfEJr
flQ9PSpgdnZTRWlKWV9zPAp6RkcldDlfYFd2JjchMytyanNZdHBHOGo1S3w3WnROSl8ybHZSfnR0
fDM+Nl84U3dRcVY8WU5uT3hnc0NZN09sI3UKekBpO018aj1ZN3khcT5KYkFOTD8xY2Q+MTY2JDg3
Q3FPM25kbyhsYVkkX3lucF56KmkzTWhMYmJBS3llZmVpUEdBCnpKSTMyai0xPDdeNmFNfWRNJiNe
QUpfM1klM3tkfjFobEg1blMybCRFcjFmSzBue2Y+QEF5ejItQ1huUkAoNHwqTgp6NjhHeDNKY1U8
TkEkbmRVTkM2UFpmTTdYR1ZHbUltNX1AI3lLbXtjKlAySz1fZnRRQklselp4JCtWfEBXZjhgNF8K
ejNlYCRYMUpFXlFxe0dBa2c5Q3dIJFZpUSErMUNHcHpnTFMzPyhlUit7cz9+dSZ8IUFhcCVRVDlo
VllRdGNgVmhWCno7JG95YUBkeHMxVlJZKn0/N1p3JHJ3fkRKUWpGRF9fZTdfSVFpc1dvTSZZSTFG
Mlo3Vj1WWFc0LUskUCUpcjJLJgp6Rjl2fDF7NXQmSGVKVHd4JnlNcz5eWjtDbyE9eDVnRlhxZnpR
P1N5dHh6YzwyakBSJkZ2aXJ+dUIwSjFFU2JwQV4KenMpX2daRn04IW9xS29XZ3gzRS1RV0kxTzIm
RUs/NmhHdz4qZztZKGUqfjA4a09IMFMpcnN1YCRkdDNeK3Fga2RlCnpTWUg4OXdsPjdwXzY5c3Y4
KUFFQlVGPng/en1MeGtyMHhwPTFFJTleXm0pbW97LWBvXj5eVFA5PEQ4SXBoMXg4Xgp6dkkjKWc0
UmNLZndOUGRvVjl9O2I1UmxNJnZlNUBIWClQNnlKfSo+UHYmdU90O3RQa0E8NHY/TUVBeEphZGlr
YSYKekhxJEBOLX0lR2Uhd2JDailRYWZDIXJzTXFDRlBANHshKnw3REU4WjtlOVpjZ2pjWmFxYStI
eHRGPDZIOE5JWVljCno9U0dHQCUxMD5tPmUwSHJqeEAmNURBUitpKVRzZTR0b207Q15Se0U8cjNs
RmFidVZSdFo1bXQmSTUzVzhzKzVzPAp6R0lgND88PkxiISVRI0R3aStldUBoNUFpcyZoS3I8ejZ7
OENXT3IlMERMJnJwO1ZYUTQ8aVlaekxUdz4rd3BueyEKenokTjUtNyFfMD14WUdPTnIwcEpwbT0/
VWomQGpYXzhSe1o1SytlPUNOJHR5QDM/VTszNWtPME1qZWI4JE1RanFOCno2dSZ2TUElVjtnQWY9
YWFacUgpMiEjPUQ3RG1+TXY7fnFuISVseStXYW9+JT5mcWVzejUlX3B5NHBIRWF6aTVuPwp6Nnx+
fVVsUGZgXlE8MExebGZScm5YUGt2NENDakxtcVleYzw5dDJCYT43N0Y7Z2lpK1g5KX1ATldqRVNX
blh7S1QKek4rSikyISlhTDdYfkNOakNnNzsxQnVMMishVyF1WCFPYWNDdGoybWw4ME48RDlkKCR3
Mntfc1c5MCtmNyhINXApCnp7OXZ2cnpQYzlRXl98OEReen5MSXVJXih6JFBgZT4jWkUoZnZKRmlu
Syk7VUlldlNrMmshfEp+R2QtMSk1U2VNKAp6VT5kaUAjU0BpVmNnbTEyYiNpeGE4fUU5ditfdlB0
K2gyej13R0hvPG90TSUoNW00NWNoVCNlPmxITTQrUFQlVjQKejFRPy01NCpAMHU5VUF9dl5kUzVZ
cl5SajJmP2cpO1lKOVdvbC1CQENIdjMxIWM2fHYhanRjLVBNPSgjKTV2bThICnpOMGFPNWpERmI8
WVdNKCRvYC1wNlVYVWpZS0IkeF5gM1N3SWtkMj1BWnMoNDFtT19uJjk3X2xaMTY8KFNWaTJCfgp6
IX1QeCVtZFo+Y2hWY35YMnJTVXM3KWAqYTgwME5OfEYqQ3E/OVQ0PTFtR3xlUSQ4d1NWUDNRU1g0
K1QpcVZsZEkKelIqfVktN0IrJG8xdnQkNztmeUtkPDlmVXJjXlpBKjIwWD1BNzwoRT9UIWBfZHIj
diYzODh1eyFNNT58Z0NmVkFHCno0WEJ2K3NvJDM3czRoQTh6Rnx0WGBseVVUP2EmOG9HSitVTHM3
fGVtX047bHVFdHlXaWgtak89bT5gQkBeOVZvKQp6TH4xbnY2JHdhfkdsNUFsNFQtdjU/MkdoNXly
bXVeP0dwek1IM3VGNmZJUXl3YV5OX3AkN1FGPTt8WXJLYUQteEEKem19JUw7KjBIPyFFQzJeUFIx
VSt7aUpobFVOVTV8VGk/bThkNU1uQlkhK2FXdzx+KExASVJmSnRNdVVQbCQhUWxCCnpeY2RuPThQ
USU0WG9Cb3VlWH57X281NW1WYkolOGN1PmMrSzQ+My09N3dJKipoSUpjYEIxWW9PSzRKakFnZHBm
bQp6RiM1cWhWekgqN3h9SEoleFlmaGhqSz9HQDY1TT5AWDFwRX5hdUs4SyhCLWJMQElLWF43VG07
PEY7TG13c2tUR2IKenQ9SFJ6X2hkQH5sUD5sSGoyWSsrY0Nje1o0KGc3RVk3aX5PQUBvZDs7X0lO
PHsrWTg2PiZURW5rSFJ8eSFXcDllCnpycVpIVW1wSUcoRV9qYFI0TSEyYWQzNSp5TXVFQHRUUG54
V1QrbSs+PnJIfGJfK0lpd2ZEfSN4dV8pdWJXbnl+cwp6Vm17X2QmSWopWVYzZz1YWXdKQCFkaWRf
R2NgNXQ2WTUyYFVHb211WjBKPj44MDttYC1yUzF6Jm54TjghSyZuYi0Kem15YUZEdDBOZUlLOTY+
VSE3Q3Y3SiNeI2Jxd2MqXzwrJTNoYH1LaGslRXdjdiM+dj9zPFlPbE8yKz96MCVsQnQxCno7fkxf
OW1ONDQ/PkBHamZJQz40QlcmX3twZ1pOdThkKUItLWdQIXxWfE1CSHhPZjRWaHYkRHdfN3RuQnhg
RjQzeAp6U2EpQ0RZLU93R2IoSXgrbyN9a19RdSgtbTQ4Sj9mVF9gdV5CZUFXeiQrUTNGeDhDKCFP
X3ZlfTRpXldXSl4lczgKelVgSU5ATUBET0dtK3tGcTtHeV55Vis+O0Y+Q2w9TyVUQXklSnpOcDwm
OG5pT2ljdEg9ZW5vfj94ZGUmSWkrZF8tCnp3T1l9az5WUUt9ISglUXRSRUlgM3BvU1FyNEFOO29V
WFZJTGgtTyhvNHhuKWdmYTMpQSRHSk1TTDlke2J7YXx6UQp6eXBlNDVeTWtuLUkkNng2dzJ5SGJ1
T3JtcFBZfn5ISH1xdnR2fVhhKFZEVEt4VlF+Qm02cCVWPksreEk2alp3TGUKemIzbngtR3oqUl48
VSVpM0RLUHB1XkhfUloweEs5WmpiMHhEcGpLLX1aWW4+OWR6cy1TMVI/YH5sMExSVUEwQ3c5CnpD
VX1NODlMZ0Z1Z1hvPmBiOzMrZUFqMnMpVEAofVUjbVRQOSo+YkpmUTFKe0FAcTtWJGdCSlBPey0o
SXBEJSpvYQp6ZXNGPXVvZ0F4N1dMIzsydDR3ZSFqI20qdGJkWlRfNmlLaV9gTilSdmtadGxBMnJl
RmozVDA7cDVQdUU4cVk2MDgKelktdXlfRz51WDYqeDlRbj92I0FnMG1tcSNAX15xJSUodXFtYCRe
MDYldlQyPmwjMnUkQ3VXQT9jITdWSVkoeV8oCnpLSmdEV01uOGlHQUk/SFBCN1U/Sik5QjBHQz9F
ZUFeM2d2MzJJT08oQCk2PyNWWmlGd0FSbDNRO1FBcClZTDcxOwp6ZjhuTFNSZTdjdXJQfGhpVFJ6
RTN6V05XRiRDVEd5PDNEVm5UYEU1cG17SGVWZCFOa1hKdDRVbnFZdG9kRj97aEUKelooUXxIPU14
OEIxUDtYWEZaK0hAeTR1O1ArUVVFQ2YlLW5ubT0zbUBNZ2s2aTR0KSRxalBhMHRkNXAxO2VUaHBz
CnolNCpaLVJGXk9hZD1WQkFqT0V9c2ZlNFIrb0RNZks+VF5Ge2tqN0Y/eWFYbFk1fC1YUjNUc303
JlNLMlBKJXEkUQp6dT1qb3d4OT50KWVsWGg8LSZsPkc+MS1PM197Kj5re3M1ajZjQW80XjJ7aWlY
UHpnU0FkcVk3JCZiZio1JUBZajYKemB0OXwxWlA2czdxXjgwQHh9WTd6MEZjLTt5I04zcU5ZbnZ7
UipsZ2klUTY4NyFEeW9+QlI4MU48Vi16MXB4KClrCnpjbVNSanBycWczTTchSnRmM1JWXlF6cWt8
TjV4M2M+ezE5K0QlWF9JPlV3VmcwRUlXfXFyaFpXYXlESnBIXnpNVgp6byRAPCRTdjtYdWlYOzh8
OyZ9N0V2bF9wJUBzOVpReCRpbHpLZFRFSStyfkFFdFJDUHtDMWd4IUspTWslWThxNmgKek0lbWNL
OFkySzQ8IWo+OXhGSFhrT3cwNT5hZ0VFZ01HIWFIc0ZwIUspKShQeVN0e2ZzQ1ZZcT9UbDt0Mngx
WTRsCnpWfDgoe0lTYGxIQFY8P3N7OUlXSkRJWCF5QTlUVWYyLT9NfmA0Rk0xLSZsPUgmbnl2OUJ7
KFNrMk4ofisoNDBPRAp6RzJLMX1LbzkzSTIlM1BTZDt0YjlVOHNsVVcybmwlYEN0OH1PaFMzSWlr
U2hJQDc9KSE5UDV+TTUhKlRePDUoQkYKeituQTdKZHZsYlBJWWxvbyp1R3NDbX5ubD5xWExXclM5
KHxleWdkWEVZKytHKXY3ITVJVlFLcFBKUHZ0VFJRZ2FeCnpEcVkkcTQhbWRfbkFCWSFeOWVfQFJY
dTd4NXoyY1RWPmQ3ez9MPGhHVVptYCZeJUlVYHJnSTU2e1Q4TzlwZU8qeAp6QV49Q3hxM1VVUEVM
UlZnQGlGRj0+aEJ0KTZTcllSNVZpRHphMWxYY2ZGcnZsOzJ2en5xODJmfk1gXis5Vn5PTFYKel9o
SChPcT9oM1pjQFUyJCNIfiZwUj0mRDtYKUR+eF9NdGckP0dFSFJDN3IkRm5FKERfV1ViPHB7cjB+
YXJ8ck8oCnpKd0dTSjA9NlMrS1ZKaXdLX197SD97QXp8S1oqXippVjQqKyE/NSZuY3c3ZXtWfGwp
P0Zqe0l1TTglNSRXUmtFSgp6SFdVfVpaSFZ5e1UwV0psI3NLM0N2JVlRYllAKiNGLW9KckpXMmA9
Mj1mPWZFTnxNV1kxU0NhaE9wNWY5eFV8JT0KejkzUX03bDJEWFkjSFVvMl4hIz94MU1EbEZOYjUx
Rmc9eD9eJlcjZilPUns3Y0EhZztSPFl9LWVCN1lUeldkYVdLCnpRUF5mZjtHNmdDWENeOV83ZXJk
MURJYy0kVnI+Wjw8Tj5MX214LWhMI0FMOzM9VT1XeTl0JUwyJHR7R1BFX0dWcwp6ckpiLSk8PiRL
djw0KyUzWEJZQUB5VH5qRzNJSVFxPmBDblRVWEMzKkNaOz04Uk16Y3ZySitOWGZ3c0Ixd1RVJkMK
em1ORGg9N04jJVhnNiFiOUhpVkEkSFgmIVd1XiZJUCZ2UmtjbmVTQDk8Wkc5e1liP2pyNTUoM1gy
Myp2ejVOYH02Cno0QGVBYFFrb1okMHxCKy1ETGdYMiQkYmkmQ0tpKkU+cFY7QUV2TXpnZmF5VGhW
KkJ3PjJpdzNAZUM/QFlTZ0skTgp6M1MoNmArcDBqdHZDcjYtMnIzciYhXjE+UzE3QGNsIyRRT2xm
dEI4Q09QQl9eNyphQkVfWF87O0gheG5+VCpOP2IKei1hTDwoXk5SQDJ5MFZZNDlVbjNqMyRzMVY4
M1dBYUdgZjJPKntOPmgrS3ZgP0g4MVdXODBMc3IkSkRKKWkqe2dPCno8I3U8dVRFYlVYOHNoWk1T
Z0ZTM0JvZEdgZkpfS1hub3ZAOVhFNjJST2pwYnpWI24xWHZaSj1tai0hXypma0RVJQp6IWdnVz41
OTZGZFZKSCRicGBzanY7VWFvbD4+ITArMXcxZGRlIW5mWUVpPEMySlI1WmFsYFlZMVZjMjh+XlNI
RHkKek02JTZldmA0dzxDekx2YlB9IzxMczYxIypTNCEmV29OKnc1anQ2JVE1RURkaW5ke3YheUFU
bGlvc0c4LWdjcm5rCnpedkMraXV7NH1BVCtMRjJpTCNzPzJ+fCs2ZmhJSCNnen5XaWBQa2YjZDw/
WEVSWXg7aU59YWR1MyZRfHJRKE12aQp6aGI1JG5fcFZAaXhFcSlQPkQ9fk05QHozIT1aLSswVVBT
c1VrP0RFZ2hqUl9jJEFPcUwhZmZkWStgP0tPVGYzTX0KejdwfGluNEdCdjVoeV9CfFZjZEVhXnhm
Wm1IJnskJUpyc08rdiRKeW1obSMrdlQ1cExOX0Fxe0Q1MGhfZlZlMFo7Cno0PFYhSUN3aEhzSUEj
YmJqVU1LPkhrVSYwMH00S247a18ybktZYUhwaEZNc2tFeyptdlhfejx4a1AqdyQhNTU0Sgp6JmpF
bkFsX2tZe1BHSHg5bXhGNl4kZH5+YFYxI29oYSNDSWttOUs0WWpzc35sSXY2eTMzXk4+XmZSYVZL
Y3xvKlIKemJHP1dWTnVAQi12ciRLd0x7e3IjKDZhckI3KTd5a0pRc2BEbVd+Z18kQ3luMnB7Q0lM
PmhqcXZJQGxjbUEkISZuCnp3X1pqRWRtbmprTWgrSjU8REdtcygtZEVXdyRJS35jQiVqemRqPXBl
M3B5cFBWQ1dzRCl7R3VAWFhmeHx6d2czcAp6cVhVb3VVTGBrUnFMUjF9VWxYZ15SS1gpPmYxTCYo
blpxX2FwTnFOMGhCJHQ/RTIhaVYyLX1FPzZaOHgoSiElLTEKem5KSzRKLXQmTTVybXc/d0h9R2hq
NS1AcjQ9bnB1cTI8eV5kYGNFSSNZVEtlVSlmYiZrQTJTQl5WTkp6Q1l+e1dOCnpoT3IzVylXOSh3
NENkaCpaejU7cW4kKFljKWpvOUJJQUpIJncjT0k1X2M3VEJDKHFhKUYtQVVgPDNKU1BYaEJBewp6
bnEmRk01fkFmSitNXy1XIShLWjhUN3FYIXlRRitudkpvPzlpO3V2TCpvOTFnZzZWOHkwU04wUzxz
KVI8Q0tvaGAKekFTb1g/WXY4P3MqdjJ5RVRpZ0lSX0JfU3tXX3ZRYmltXi14UDBkMGt3dW5tWEdm
N3ZRWDU0a0ZLRVp9Y1Z8d3dNCnp0dGw4UXJyPGZsKUx7bmdWZi1MTk9MTUg1R1FjY3JUdEloLVo3
fHFHT05SRlotbiRfZT5WKGxUJEElezBCd3klfgp6NTRlUFlLQDAlIzg5YEtxZWYzam1XSWwjfHFw
cTN6WitgMXReSGxuc0lCPSpyO1E3M3QtRShuJFEtVGchQChgRigKenRnYXBUUVRsMnIhRyRCX00l
fndKUEspVzhxb1VKMzQjNDVJJXU4U3EqPk90Q1U1cXdgTi0lQXw0QjZyIUpQOX5YCnowQntAfGlm
T313Y1lkenswNzlpQk9xQDNOR2ckTzVaJm5wKipQVWUzckoxXlRaezQ0TVZHQzJ3Wmcje3t4bkpx
dAp6N0kqVm91NTJnSGJKRD8rYEJqNyhkfS1wXnFuXjApcFQ4d2V7ZGV6clpALTdKRStMdm0+ak5a
Mk9CfHklX1Fgd2oKenJYY0Q3IzczRWtVcGlBMEd3P3ZeI0hwZEYzcmIpREVCJGh9Q2hCTWRvWlc8
Kioka2dsNyMxZnBrZWE8LThSTTkzCnolbStaMlQhcyFaMkZnTDQycTlFWDUzQXZBQDZeVFdpZCVX
MkhGTyNTZXkzK0pJfn0kZWRFQ2VHNVhTPnFnZXsoMgp6UmpZPnF6QWE0Yz80eXVrZWJ+R3BsI2k1
KzRZKHNYKStHP2hSPE1UYyhhJEQxUkx5TGNDU099RSV0PCMoZ1VscjAKekZ3QDNfQy1OUkNBM2ND
ciZ6QiVYYz93N0o1eXFJTVY9eFROUmxtVXRkJG5pKXZKSX5XaldtfXgtRUNnNDJkJmhYCnpWNUU2
KHk7YFE4aFF8eHJsI2tQNVgjQE1nbHZ3RlFLSzU+IyQoK0FBYFJlS1hpbiNVITwpZ0RPPDNpdT8p
KGxQUwp6OU1YNWAhWkFuPnlIYzBUQG9WUCE0RDxMbHhIWERTWlUtfDFQRCpHJWxIQ29BQyZoSFBt
X0RDZHQ9d31nVE9UZ2QKejhWcTxlWnMtJk8yTylzKnhZdD0xKSo8bHUkdHVUeTYjZCFLYXBKJj4j
RFFsSUsrckxBRihBJSNqampiQlg7cFp7CnpHTUJRXlhYUmklYlMjKWN0JVY4UVhYajNkYFBveFlj
K2lXMTgwVkB3SWVFaElydy1GZWpPQzgkVndRQE1WQDExbAp6QHlidGtySDhgXnpuIVNYRn5rLWhm
JTNIJEBHX195S2J5c3JrTyhfIU18dzMqQkpjWXM8Mkl+eUJ1Pih+dzI2KiUKenFYWm1WOW44S2A8
Pj18d2Q5bTRENkk7MTlBRylmNVY/VTF4UjhRdkQjb2c/QEJnTkE+e1F5Zlc5fU5zOUomOUklCno2
S35IKXc/QXIjU0FKbX0+JiYhcjk2ZWFXIU5zSXFndXdrfFY9XkJxazV0Y1Q4JDU7WnJ2KDU/dTck
JXs7PHpfXgp6RW5OWV9SU1JMcEFvT0JCZkRyPjhCb091aDVFZE1vamcyMD9vfXQ3e1IyVkF8Wioy
NmopIT0teHRJfHwqVEZvSzgKeig7VllARmlrOHlQamQpbyFHMGNsZFptMXBRTGQocVdfKVBMMVJO
NiYhcH00Q2ReRUkmNmZ2bl5SekdMKGVIeSR6CnoxencqViVTVkowYGFCVjtlekN4VT4wPEpPMGJK
Q2plQjZfT3FsMmsmZVJLP0tZQWoldSNufH5WSzckQU1FVyliVgp6eyVsN0BvPCNvbFZhVHxSRj5N
ODV0ajh1NkV+UDtScGtweV9McTJMPEQmRW9RKSYrUSN1fjtjKXRjI18mNER1MXsKeiQ9dDE3aGBy
XmhyMGVjZ1dnSDZgdSt1V2dDVk9KVGtZIWQqdU1qaV5AS2ctaUJhQElTZVNuIVVSI3lOQEZ3VVkq
Cno1UH5xI0l6dlVWSFJAZmx2a208TWxNT1dMKnMjYEIxRzZxPFNkKVZrUXU7JlJPLVMheDhMcDVy
VWVoVTVtWXl+cAp6Q2wwKTU5TUdpWSh8YUB1aTdiWkBmU0goRXB6a2NnaDYzZ1QqfSg+P09hUmhx
bVZqZjk5Vi0wdjdOWEBZaEIjPjQKemh8c2EkaFB2QzdIRiV1YGBYWWZETUZyTlA2WXhOVEZ0Z0VE
WU45aDgqOSlHOVYhTExzTGZJPFBMcD9yKzd2Iyg5CnpsWnZue0p2KSpHZlNiOG5PWEJEVEkjakk4
ai1tNDdxPmd1VHJoWSt1KCpJemJGNT44enhQXjY8SkFmaHUyI21QcAp6djZDPGlEK0VBSjBJfilG
JGNOMWQwQWcwfEIrOVlANVdXZCtSN1ctZWkybUJEe29RYmVCbSRDK1ZNRSpvaH4mJk8KekVpQlQ+
eSphcChBWX45M2F9d3BARmR4R0JVNXJeJER1OGpae01vPl8pYzA3b3NlRHAtQERUd09vQXw/cit6
YnR3CnpIeyM9MDNoWSFIPilCdXVoV1VrfFNWVG43NXNjK296ITw1TUBGTERRI3peX2ZlbT5WSTZQ
MCVaNjk1IT8obz9UVwp6QXMtMWlQNkJYQDRLaWxJKGVnMTtqeHp0RTlhUCZBMFk/dlZRT1U8clU0
KHFCaV9XYjVKMkM1ZTRxbDRZZlJSRG4Keih9UD4lYklqLSRFZ3c8Y0JOIXwkPD5UZ3pTajNkO29L
ayY2K1RyTE40aFRYJS1Ua3FDRHRMUz55TnooSThMXnJqCno0V0BtUjFtXmU7bzUjV2lIZSQ9TjhS
fWc1blZ1SV9oSHNKJVJvQChmdk9rMCZnQTM9QiM0Jm9OX29oaTtmKSFCLQp6TShVVndxbE0jVWxq
R1NTUSheNGoqdFJCKWN8SnJUNCsteTIxSkZaVU94Rl8hVWBUdSNPcHQmQm97YyZ9MkRtUUEKeiRi
Nnc0YHBTJn43Y1FnODZxYz1CVHNrTD9FfWVsUWF1UEZqVUBlZTloZmFramhTKDdeNnc0PFZSWCR2
bWQ+NHUlCnpKNXZjZDA2WXI3cDtDPFpILUZkXkN0dmp8V2goV19zaFlVSDQ9PjIpMiY8d09XRFd4
I1Azal9eYDk4cGp6QT8/NAp6eXwjRVFqfFQ9Yl4/N2wrZS0zTTItIU9+dHt5diNzNlQ2dEU2RzF1
TmJUSm9XIW10UUgtZE9ZSkhlYWR+ejl6Rz8KemslXnU0T210dzhjVG8kPCU/d3Q4WFdYfW9jRjt6
NDVHdlFQYyZJcG0zTVpta00xNmgkPVRneiRDcDg+NC00OzkjCnpLZlRyIWQrZGl7MGhXNmxiND57
filoaVhnZSEjPVFAZyVNUj53RV56P2lGaFA1fk88b2h6dzxmM0RIeSNiUk98TAp6dnNxT35YKjlG
cEVAbXtrYkI5fj84fEplUHc4NzR0OEVwfGBkelRQcHhxJHRUbWZqTS1fbXwldFclK0NtNnlUdTQK
ell4MjdjKXJHKkpgbX5kR3hJRHoyRFREX3RvKXQ/K0hUZ0pzZCp1dzxQN0x3Z2hUNGI5aHdyI1lg
QUNDSXh3KmNTCnpvOXtLbSQ9QmlsaD9JfThlNlBoTm1qKVdBZF89aDReN0B7NWZVczFgJG1QPEle
QSphK2pAXzgwbz1ATTsqNX0wTwp6Q2dmdnBwWWw7JDZ9d20mby0qPWpRX1QxZXtkLWROaUhSSHRy
Ul9UbTYyNWheMkEmWFNuezRTfTkyPl5LVzhFWFAKekpJdnJ7QkxiMG42WUchem42JSoqWVhnazVy
KmU1cnB3Z2JBX1ozRHxybjZAOyU5ZTZEaEdOc2o8ZHhEUzRqZVdQCnpKYUdVYjJhZGFYbDFUM0df
RE5OJWROWHcjJTdBdmUxRihTKG00SVhNUjVjTlB2Nzw4dyQoZjBZWD5SP3EzOHtPZQp6QkJ2PWY+
T0EqTmJiN094YEVtdmQ8THAqbHsyYHtvP09LI2V7VD8zUU1NJSVhYSF0JTN3bUY4Kj9aWFNne09B
U3cKejhzWlctODFsaEpTMWhBPGV0X194NzAzOUhBMm59X15WPHZKTDwxd1FCazUlT0VKQ3ExI1lW
bXdjP1ojTjRgRTFHCnojbnRTfno9KXdZOT9ySWZidVBOSmhCPkgqUEdKKT5lJDU2M2xBYmAjP2dt
XzRjUnAmME9GdVVtcU0jUmpZNkBYawp6ZnF+bmN0P1g0eHNGdDQzOFJUPTU2QUQ7fS12UTxUNVdU
JitJTDstTjlue0JuQENSc0BqUV4/dXF9MjMxaj4tT3AKejQ1Nn1AcXEzIUUmISZpc3VGRGFne3ln
eyU0TCRFNWk8bE5CRz0oKzJIRmBiUXEyek1BZFI1Z2wwe35JUyZ1LTVjCnp8N1NzekItRFlYMDYy
fj1vKyR4YExxMil7QmtNe34hRlEmdCZPR08kWCEqRVo3a197ZG5pIW1MX3clT014Vkk8Zgp6UFE9
UWB4PiNGdGUreT5hS2dUIXRIMzBaKyUtOzZeQW1iaFkkQWs0PCRWWXA1Pz5GeT1eU3ZjO3FGSylD
WWk0TnEKemVYP357WSs8MUZgZnp7cGt3ek1oMllDfG1RTG9uamBmcjNkMXxXVXsraT9QTyRPSjRn
RyRNfCNGc1c7cTVJfWglCnpefFMtYXl9YSZmS1E0b3czeitDLT9mMkw+Vl8qKiojNU5YazhETCFf
N2Q3Rjl0flczTjFiXypyZTRwd05tfHpPIQp6NX4jcmJEWC1CQiVjdXIjQz5EeSpZJD5pSClBX2BL
N25URTA5RHFDI1BFcWJWRURZMjUhY1V5S0FXb2Upan5IPUMKeiZIJSojNU4wN21yWDBYUkZNezNA
ckN3bitRVUh3dGFMZlJCentee3E2TnMwJjtqciNoNjVffHJfWWV5M0gpS3FmCnpkMT5QSkRSQER5
VkchajhFT2I2PFkmMXB0VVE9d31aOzV9cWRgO1puaVNQVj0qdUV1eGNAUGdrU2RUTX1iSytDUAp6
bUpNV1p4dnlzOVljcGFVQW1wMDNveEw8WlNzd2xDVGZhNE4mVWZOSklRRzVLVyFqaUcyT1ZydlZq
S0lkQXZXdysKenYwbHBiWUUjc0QjdDhxPm8jPlImXyhBfldfSkByaTA2RD1odE47TUgtSDhBb21e
I1ZAS3ZjRF9CT2hPUTg1Zj5BCnpqV0grSlIqZ29nR0xaWEJ7TUcqeXZDPlVVNH5xN0B2anRCTitW
ez5qVyhkUEVYNFp0M2ZeZV9FY00/KW9gS2AlJAp6ZG47dkVlfXdZamMkNEE0dWd1R0QtPWtkNXxI
aio1e2tPKyRyZG9yO2BLeUQwV0c3RXZ6OztmfCV8XjtjNTA0WlYKeiRWLTwzc25UJC0xQ1d0P0VS
OFk8JEZJLXtFSnVBYVYkQ0dwYm8yY2Q8bH1EVGUlRnN2U29IS04jJiFmZ0o8KFhOCnppYEZ1eHB1
WDEtfE10T2t2NWFZQlc5YkxeUDRQRnltdCZMNWJmPzxxRmt8NVU8bH02JUNRZX5JJG5EeXNlN3de
QQp6cWtXYUg2OTJXSWRzaU9iZG16TSolYWVaIzkkaXVrOGJSd2dmY2xYaEpjWEhIN3JUSHBSN2Zf
VVVefmFAOy1rcUcKeiR7LTgwPWkrT0pIdCZhP2lgVFA/Z3RwS3p7ciljYysjWmFKPm1FO2ZnQ0dU
LWx4Y3R5MCtKYTM1JF5lMGYpK1RtCnoydn1yQD1uO1N5NGhSZztIXjIzNkFWcz5JSUJAdGxAYXpG
ZEE8TWorKHErO1ZKUkdNOEk4TDR5Qyh4PHRxfFpJQgp6cFZ5Q1RGKGJ4czEzVENkYWY7Nl5TZWpx
SGpjSGstbX16VVpTI0xkI2srMyk3YGJAenZ0WEthazdLM3ZlQEdFN1UKeiF7UyZVNypAVX02emxm
QTdDS2RJKnctOzVrKXBmPz50e1dfZ1N9Tj42Q1Z6NHFsLVBRdkl5PXd3SGMmN2hkYGByCnohTClq
VUMyPmJpJkhKeHp7aG9lJC1eYyZgLX5EZ0pLbHRCJVF7S25XbWJ2PHQtMUxuMD1De1NpWE1VaWM2
N305Wgp6MkR7RlNNKXdIek41bTkxdjNta0RMQUZKUG5Wb0YzeHFAKkRQfFJDY0tnQzZEZ2pkYUEr
d3lxOTc9cEVoUF59cUgKenNNYWpKSFZ0P01gaSNBQyY+aGI1PD4/ZjgrZ1NqYVlyOCVHQkUrPm5a
O0Nobj1BTWBaM3RYe19mQllhOVlyQ2ltCnpMbUdDV3hYMyt6PDJjODAxTVNZSUJyczxKMjtXJGNJ
IXVTNUpWRjQyUXltV2pWYEVzQyEkdU97bSFDRjZzdDdodAp6TFBubEV2NDhuVT8/dyM4JGozZWdF
cDA+SVR9RFhVKyRLeF9iX2M/IXhaPztWeSV7TVZaJUZ4d0BpN1IwaTZNPiEKemBPdUokamdfWERm
PGROdnBLYEotWVAoflpwWFpRfGplVz8rOHN5Xis8WU9tWksyQjNVSHFWUDItSyNOPUZpTndPCnpL
fGFFT141Xn19TSgzWDchSXY0WVJ5RzUhUyZFNGIjcnMkRmM5OTc8aU5zKDNQbW0xa1hUSy0raiNw
cz1DOVpHegp6aztaPm0yRXI/VHhYTXgyTGxLWDw/bEhQWUo4KF56dU8mZWs+a3kmZW5iPDVyOVhP
XzZtZEFBUnclUzt+WDl9XygKemZNblgtMnZ+NCMzU096MTIhSndDS3N1MilhMG9jPyVtRH54KT50
aWA8V0w5WmZiLWBycUMtN3tqYGpSeDBfe3ZwCnp5bTNzJiR0LVEtS3EhcDI1bzY5eWJzTlQzclQ/
QTclcSZMJkAkfTRkNXNLcVh2bkpRYjtCT3lNblo1YWJRKFhBUQp6cjBkJnUteCpsRT9fTmJiPitO
O3tIfj4wb24xPDN0R3M2WE8xZ210ZClnSFElT3FfcU9hYSl9MEV7ZlMyZTllKGAKenRhVnozVnkp
KWthe2ltIS07MiFrJHQ3IUp5aCNIc3UjWjglaVV2KHNDOSFwOVptM2dZeThrKzZfRkFrQ0FMYD9D
CnpBc18pVCQrNHZNeX0jSEptdFAlPEwxJEpCdkVAKnpPYDtkJWI0UkZ+Tl8hTFVeMGghMSlAZ3U7
Pnk5dWltQ3RSMgp6WU11NH5qQT8rS0RmRTIxc3YpWnp3ZiolIVllQGoyb3Rpa2owT2pzU01Ce0tH
KW47ezJHKFA/dF9jNVVYRVROM0YKeitRTzg/bntlKUpjRmAmMEpLfXg9WlNfN3ZxSXw/fShyMi14
d2NUZzJ0VTxaWHYxSn51Oy1HbSEqZVpTVWFTOSVlCnpeWEZmSlkmP3phZnslU2dfLVZrcUtfMSR8
WHZ+YjYmWkk3O1pyakZ0PC0odG9qfHlqPnJGQEw9WSVJWTtKaXxweAp6QlJyLShFVWE8IWhZZk16
WEhaWkNvck0/Vj9pRCFOWmcoSWJvNjtiWWFkOGRATz1tfk0hdGpfX3Q9KUh8bV59U00KeiRqN3Nn
dDgqQlA5IXRsWHJ7STt7NnNyVGM5fEg3JDF3N249K29MYUUkblkmfEc/dDl4bE5XdiNZanY7KmE0
VV51CnpvTWh0O2tqbzR7YClST3Q4cXlMdnYqM0l4YXo/LUw/UStVbz9kUnl3Nj12bEY2MjdxXks2
emtVISg+enU5MUtJfgp6MVptNiM2IXJWbnU/PkshWWlkc3N5YUQ7UTdCQ3VkVz13OD5fYUNZfCg+
YChGI29AckQjYEtKenR2eGoqRX1YdzQKekxCfjFsQnwlfT49SFQlRjVuVDhMNj5wZEU8bWA5R3h7
KTxranN4anFmWjdIdXk5I2kpWm4rTy1AV2Z+O01yKEdYCnpsUDZqPUB3c0lIXyRZeVB6JVZRKTBE
OzcrLU5HdWUqYyFLWU1lWEt9YyYmRnJUcHokKzkhWlBDR3k0SntJflleKAp6VWdNVmRoMmlETTV7
aEp9NXNJfmkoZjIocER5N3ImMDMzU3g+aTlAQE9nelolcy1NPlZKUVJfdyFEOTZxVz42OF8KeklA
ezc8Y3ghN0BlRW07PFNXU2FwSVc2eTxJU0VXJm5PWURKZCo/K1RaRHhwVnVoa1NvMDheY0FNRjVh
OUBOazN4CnokUE1KPDEwWEUoOTYtdmFuNDsxfT49PjZuJDlSJVVIWmBRVWl5PHlRM1VyKHRjbDM9
X09vNTM8SiVTa05CTmh6JQp6e1N8Yj1yUlJxanAkYFItO3AyPyg7KzdGbVooK0prWGZyZmlPYzFV
MismbG9vOTFBaiQkM1oobXdya0Mhalg4KFUKelUkX2o9YVojSypTSVMydWlTaG8lY3NGOXdrVlE7
NDd9aEtEKFM+N3xWUlNoVz5EZjNBUHVHQGJKUF54UGJufEA9CnowMEhgO1lePmpnN3h+dDxzNmpA
NHNlND5wOH0zSXdwNHR9eCp9PDk9QDkqNmZ6dEZqP3N1O0NEJkc4XnUtQD1yUwp6JmtBc2FEKjE4
MER6fTtiIXErRWQjdG5SJUIjTUdIKjshXi1TRVZPVGJCYUZAMFNsKVc9WFBmc1Y8biglVkIkYVkK
eiQ7RWE0YnQmc0UmJmM+cmA7alhAclhCezJoOVE4JEpPLXt0Jng8OHQ/d3UmfCltM0Y2THR6PkVu
a2FHTDE/MGRwCnoyT3Z9SkRSSnIyTVJjZUk9Jis4JHFFWm4tdjdJTnd1eHpvUmo3akZlQGRvI2hy
RlhENCE3P216QXpHI3NqaWxwOQp6YCp8cy1MJHxFbnotcns1KXkxKlByfn0rRF47PiVxYmt1SXww
Qn10OT10cn1BVnAqSiQ7WSo+c2QzYEZNNi0mY1kKejskaUpoT21kbSNsZzY/KnlTcEdSKVdZJVBE
JF9QQmc4JXJ8fEQlMiR4YyQ2MURqcn56aG1VNHkyXzN4Wk9DbmFYCnpTcSE0QiF5czV+R2EwbiFg
b0BhZlRIP0FtMyh0dmQ8IyRAPWB7PFNYWGUwMENIJCg/KHRWfW5zRmViSlJSdU9MMwp6JDZFVXw2
dHlYTUZteyFoKjsyQ3kwSzMhIWR8d2E0dXpVYzcqPE9QZTxvRzRPMHBLSnAlc1c8Q0FadkM5byom
R3kKej80XzN3TSk+fUUhOD9CUE9eaUo7N2F7IVJXejBtUWc8S0c/WSshMXlSVFJDQntWbmsxMX0w
YjchJEteITwjNyVoCnowR2FCdiNpZmdvamcqaGRBbWludGAobGlOaEljY2EmMnBeZEJsakg3YWM4
cUc/cytfSHN3VEBeZ2VCbkpRZldgMQp6P096RnVETjw9eW1tODNlT35eO0F8RkJtV1dOTm96NDFr
PWgxQUxmdHc2LWtuNEltJTBJMWZjVG4tTkQ1aXVDez8KelBxRmxJNll7WU9gUGtaQGVFZEpMQktZ
JGxIVTJ9RHk/fCtqT31aRTF5KXk0bnpoQmt7LW11K3BCaShfcUt9alkjCnomSUlEMmdaWlhVPEYm
ej1FVnJKbmpXfj03SmBmUjc9PStYNVN1O3stdktzbkdMV1dHNGtLSjQlJWgzUGlGYDROJQp6cX5w
WWE3bU5lP0NtKCNZcEZRKC1GcFpnQEo9R1NNRlRXeCNVd1REYyFrKFpaJTZmOzRxKjJBcFEyUU1s
VVpweCUKejAqd1liUXEwbVE0Y1NeJkBeQXJgeUVfcDhnbUw+MTVrOWFLRzF6VnZBdWtLKWtYT3Nh
e21lNGU/O1Bte2g+NT1iCnpgLXMqNXt4d2xzNHRHI29IVTMhckUoVz9eUk1gYWdpdlM/Jio/ck1C
LTByPmAtKjRSJVhaaX5XVUQ4WmYjdG5ieAp6JTVORUdwM2hIeDlFaHQxdnFCRFZhOXgoPyQ9Z28w
QSREXkFPZ0MzKyRIWGZgS2JUcDlCNk1lWGV4Znt2MX5xcWsKemEoanFYUUVwJWB6S2Y8QjlyNXp1
eWpiWDs2eChQa1RMMl9HPCh8SjRhYU9KSytsNklQb3p3UmlaWHk9b21SUip6CnpvJHIxVTc3R151
OSgofFZXblA8eE42K0pKSWZhR1ktcSROPElzTyEkbHNDMlRHfWVDK2lwISQzMHAjTkFuOEVBKwp6
bH4mMkJ3QlJZKVl6YSo2IUdwNXFAal5iU0ZzeFhFaTJqKUVjMXloY0B+ZT1NdWZqMCVhPWQobTkx
U1U0dkdxfiUKemsjWjRoeE93RGJoREdARitTYHZnejRSKCU+NEp5bj5kc2xuKGdoZlp7e1F5dz9Z
Rk17eCkxbSFETit9VDU7YzxNCno7JkQ4OylTZ1VqNyl8T1Q0QE9hPWVKZkMpUGtDeGxeZCQoO2hk
dllxWU5KbUAoanc/djMkI3h+KEVJfk1meForMAp6aX4+ZDUwMER4dWFVNCVIQlk4JWlvMzB+RHEk
dSZ5XipodiY0dilDYys0Nlh0Uzw5YWRQXjhHaSE/aXcoK348N3YKej9jQVBvNyo/QlpkIT5+M3te
eCU4ckMye01VMys+ZntyRW58QDd2JGsjaWRXV194RH5JZWBAYWdeX2BjeEpJa05NCnpANk9YdCU9
XkNpUHZiUj56VEI8SCtPZEVBX31qUHRQdjV1eXJHRVkhdkhxRjJvUVZecXI8YmpzJWl1bSk2RnZF
awp6PkJyUjNjX3kpbmROQkA3e25EZW9DR0ZQaj0rPGBXQE8keGdEYVBCYilWQ0NHbFNjc2V5X1FK
KHsrKT5wNzQ4MnwKekVpKlJXd0E9Ml4yYEY+RXtPSEhVWikqRXhvd0pQMkJeaHdMSWR8akIxWDJz
a2YyUSRfP0pjKGwpRH0xJWdedEQxCnpXalFEQldZfUxfOUp3OFQkRnB4Yz8qYUJze01mZVBXalhj
JXpkcS1Ya3loY15jK2VjVys9d2V0NEdBRmF7QFReQgp6clVTQHNKZEBnd0N4WSQkUFc7PiFLLXpM
P15JWjQhaGdaNVlxeU5xU1hTNWUmO2wrNU9ePC09THRuWFRtK3FEcEsKelpSelQpbjtyVnZefktI
WjJre3tMJjNLcHtGSkZ8dkZ8T3hYLT1GUWBlMykrYmNgOXFNN2k0UjliXnk2REFiXzBmCnoyX1Rh
LXBZMn1ndUZwN218TmhRYV93TjRYPyhjOFUtcUx6IVZYSiQ4YEJLO0JkQFNDVTxDVFB1YnFEWDs9
aTEtWgp6JVcqaUA/VmR9RmolI1dzcXhUKlQ3JmtmLXpxOVNuVyE3YGRie04qSTBNZFRlbXQjLUwp
ZnN6SXUwKWBrMz9TcUIKekNmfm1yIVRya0E/dk04ODZ3aDZ7PE1HMCRyPSNDTG8+bDFOb3FmKDlB
M3ErS1o7cCpJWkBscjwoSz5TSU13SUVZCnorUGQkdjI5UGBQeVVfanVSXnJnTipYUWk1WUNyJCV2
NmxNZ0tWZmFSe1VyQTZ0dntSfTY1NEhfa05kcW5ISnxvZQp6YVc1Vl8rV0spWHVLMmVYcHs2YkdZ
QE9AQTUkcDI3PiZMfnxPRlleTyh0YUR9RlV4VV8+aDt+MVdCdkk0ezJNPkkKeiNrSXdJLVQmSylf
MmJEVz4mR3VAO0Z4YWU8VyRoUWI7T2hTdWZAZXRya0JlYmtzemopNkZyOX56MkNEejxTU0Y+Cnp3
OGUjXnk3cVFHX09qaU5pQGMxTmckTnwwRmNKQE91WVVWc3l1UX1LKSVuXyRgNXNQYHclLSRxTSl4
eH1KPE5XdAp6KGU3aF5QSmtLUlgzQkgpdnliPl4kb1ZHWVp+TFBVekNaclpkamgyZEs2M3pCaiQ8
YT97Rk9KbUheMjZeP3JVJHAKeio9XnNTU1IpKXNiPHtTSnIqQWs0N2pzcWAoXnQ0XjhSSz81c05S
Wm9OZWR0MldqITllVUxYSHcjezFEPkY3ZUR8CnopPTllS1pAJj9UNCpacFk1NV5iYygzbF4jMmhq
KXxkJEdsREdIe0lWWn1SPSsjZiNsSF9sNytId3hpP0UkQWp6Iwp6eUkrflNpPHV2ditsI0d5T0Ur
U2hgX3FSbDlRQlI9PD9WVmF6X2FsUiE9S0pNUUdSVzcyKit6amt2I3N+Q3ZveT4KemQrM189VGZH
dn1Eey1MUVFITm9UP2BTRHZMT1ZmenlYIXlUdztnbC1YI3xZM0AjMThDJWJFRHZkeUR0dXUjPF5M
CnpAYVlASm1kNEhIVXZIYX48NFEmQ1lESURVZTB2YGN1bT5MPjlFTFMzZlY4YDhDIUBifUh9MGZv
Kl5EUVRfdX1OYAp6KWZ2Wkx6Y01GKXc3ZFF3MD5xYlFvT0FWaD58d2t6PEpHVFE3K0gmMiNeOytI
UnFvR2ZGVWEoTGtKZ1d8VVZKbSYKeno4MzRxP2ReSCUkTFZgR2B2M0Riek8/VX16UmptPy01OCY1
U3p+ZzAlKCh+dnVNYiQ0d1RsPj5ZPHUyako8KTRGCnpJRkAhZTtMem5sWUBxcEo+YG1UX1BfLU4x
dy09OH1kbyEqfGN6Ti1LP3doKjwqTj9HaDwrKzhBV0FuLUlfMllBSwp6N31tIUFqcmJldHw2ODJ3
P1BeQHtFNXFgZWZBamFjMyhNPT5eQHI9ZDwtVUV5ckxFN3N7UGZAV3dJbHU+VXo8NG0KellWcnIl
P2ZIRks+M0tyYDtuWXpHYDttRWYrZ3Qxe2RFPjFvZHQ9JmFXJFNKYHE5V2MkODJSQWBAeHNSdVBX
RUZqCnpVMzs1Y1cqeGZLWmc8b24rTFBadXkzSyVhRj5qOzVfJiRnSHl6eTxsQ3MwLTNuRkdrTjx6
dTQ8KHtiUTk3QU0/KAp6OT9SKERAdSR+JmhrbiQ0SmdMN05tO1ApSXM8UiNnSHNXP2VtIVhHWXdM
PVc8TVc5JmlJaDV1ODtAeGdAO1pDPWAKemMmRlFuWXE+OGt5JUVRKHBDNDRseUdzfGtafHEkaUpz
Qk1HNGQpaj4/eW0yPjVYWm18K3NkflhoY2NYdHQlNHNkCnpUfFY7ZXZqPmlMNypeamh6RCkwIyph
ST9lWTFoaEhpNjxjc19TPn54YGpAc0I8aDh4b1NJPXBDS3xWZz5GcyNYWQp6VTBiKnFkJE44IWBL
aE5xZWtUcU9gUEIhbkpvV2o+UGg1eTZQIy1WK1diI3VfZVowMUd2KWhPZTdPKG5vPGlsI2IKemo2
JTJuQEJYWWl3ZkxhaEo5RGh0S2VHflYla2tEZWo8PmF5P2tqN3stOClhK15XamZpS0UyZF5lZD08
a2xlY0s2CnppbkolVG4+fGxQK0hFaGJGMyRgZ2t1QUZReFIyWDI/JklZTURTeTUqWE41OVoqaVpS
IStvU1E7VFc9ayNCT2BRNwp6dU9FTSYwaV5BczhtfUtgb3N6Szs+Iz9DclRSI3A3QWFtRGBhZF9r
WCNme05BXjhVKDNJSzNLQWBZI01CPEs2Z3MKejg/N0piWUBpejcrNCpCMWNRQGtEc19wVVJvNW8t
MGRFWUtiYXhUYFZBTkgmdHZqbVJtX1dzKTErbUFvQnYzc2lmCno8bGImdiE3VFFVWm9WQTsyYWlx
bjJidzs8cWxwaEA5cmAoT3YoYm1nZC1qJkpGSytmK2xLa3dLb2BqRWZ5TE1yPQp6KGBSRTNYQjwp
Y0FnPWF5PkdZR1l4NjZTYXl2NU40NWteKlQ/WnN1Jl9lV1JZSkw7Njl5JjNoaXBWZ0tqdzs2bF8K
emBzY3FZSXc7enwxaXJ1bSZ5KmclYEBRZVJOdXNlb15mTjlrNCRSd1RHYDtuJXttOGF1dFgpfi1V
PD10bjUhWWhOCnokRSpgYCtwVHV2TiFDVUBMME95ZTFtKW5+NGkzWWJLNHh8Tndkd2NROylMRkQw
TklNTHVeRiRPYWxmNTY1Y147RAp6QyFmfHV2dWdgQzxGbXM4JFZNRDhiMiVQbC1gS2wwe1VlWTN8
Rkt4PndZP3g4I3lKOCptLVRwbnklVUVSWkFRSj4KejFJTiZ3K3dFcUJsZ2F6fUpIUCooKFNPZUAr
fn1eKTJfVG12SUpfMUlQfGFHLWg0czd1YSZRPmRvQiRGfXJzZjVaCno9a31rVTgkaX0wdn5KN14j
Nk1obXE1SE1pKCFBSlN5cyo3WkVpTFlUYj8yPmtrO2o3clZzPW1NY0R0d0ooen5hMwp6eH1EWDdr
M1drNHpZJHlnUHNhSGtlYW93SEtGT2NXY29wfUpORW47KF9qX3VfLXxzS1N7cl4hcyFSVDk3VzZT
LXEKemd7WkNuQ2YjUzwzLVoxMWVlWStwZSo3czl1Wm9MUWIkaFhRWWJXMENLZ3R4PjtffXtHR3Up
YjI5RCZ1e2piTCRsCno+TSpGSUVZSFIpSzBOOVJNfGBlYnRZZnIoalFlbHYjSX15eThmfW9kNkts
c09QWnJ5USFQP1RUKmg0aWVmTmFEYAp6MGhpLVNjNW16dFRSJCR4VVhiJSQ+P1E3QUtCQ0hfS1hv
PTxqYFlyY1RuUjdNazY4bzkoVlpROWM1UHwxeVIhRGIKenlVbUZzT2pxdU8meil+fGA8dGlaQj4j
ODtpYTdTXjx1X3YyIV87emZZN2ZRS21rPDUtQ3B7TX09bkVAUHVWdFJ4CnotQWl2aFVDYTJaKC0p
NnYqQnY7eF9RMWpLKzI4dFRyKDJBMHdmWFNpUXNETzxVbFAyJXdwV31kKSglT1g4NEJYLQp6R3U5
cEJJdTg5X2szVl9qYC0kS0dCZnN2RzFuTFZzUXZtcntncFV6dkppeU1uYm1yKGJhcXtSV2E3Mlpw
MmlCZ0EKemJTTDhoYWI1c3ZfcVAkZF9TZCMldTM8KCRfVXdTSWYkPjc4LUd3LTBWNVBnKVR8TV5w
PXooP2clYF5UdjlrMEshCno2I0oyUDJYMktNSjsyNV91NyluLXkmdzx3O35CYEQ8PTxUWCpLPTsr
JVlYMD56Q1JlQEVDMTx4YX57MGZgM1UjcAp6X2htWnshfExCbHdHP30lUElSa3IlbF5acytSM3Jr
V0FFQzl6MDx3KnQ7RWtiOV9NPihGSDlZV0YhM0YkQGpgMHQKemFEayhPe2BoOFpGVE9NaUFtamZa
XzVTKEE1NCsyYzA/NSo0YlAjWHRNS0M5cXw4ZVpicTAydj9oJHArTjVnMW5FCnpsRUNmIWpNYUYl
YVBMZ0ZiJHFBMCpEa2pkPVdSP2NANWNFZ1UlJTc7MW13OWA1NDJVcHRjVWZOVmxULTFfaDtRPQp6
YGxta0l8OUB1ZCQzWmB+b2ZpP21jMHRgWCU4VWNZXnRaT3hlVkc/UCtWXn1xRz1MMSlvN15eMGpu
PEYqdjNefHMKelE1O2tfWXlablojY2MhNFFYRkVxeUZZOUxTS0E5UmJPVE5NM0QzbV9uKEtTZCRL
VClsYH5RUWpGWGpwMzJVNEhrCnp6YVBZVGpyKn5Pd0xBYUchRV4yMVc4SlQ8fEZ+T3Q9WHwlYmVq
KG0yIyVtb2RjVU8pJClhcCNua3BTPVlvZDVDNAp6KWNHSWR1QkgjYThoXmdNZjlZNUh8TmdKZGBN
WWw2cWI7WjZOXyVsX2pNeWJ8Y3BkWktLYVB6UGs7TDJIaz07amMKej9QNmRMPDQzbTcmdmBrVyhT
NDUrJUhnfHheIWRaQCtQU1RkJH5wVzZ8MEQxVkNoJHhGPFkjNW13dU1ncm93aCZ2CnprS1R7MVl3
eVNWQTFgIWdlPD09U199bFk7Oz5wLUQrNzd7Kndge30lWSY7VXJ5SUhweTBweGYqWG0zeUtsM2pf
OQp6RlVIezs9T2M3bmhePlV7an1HUDdrSVNiMUFXbEdocytsOHhOO19CTU9kUiVkWXhqakN6V1Zn
MUszSDd1SzMrUTAKenl8NDtXTFZXLUxFNz9nekt+eV89SHB8bnU4LUhlYmU8JHtXI01QR0sxakAt
cCpxR0cjZF9JMmZBT0g1Q0pOYCVpCno7VUM2Y2tUMWA/Wjk1Rj5lbXJyVHdZKz1tbGtVUVV7czdY
eF9rMylAe2Iwc1A/ZD4rdEVxJkQ4aXR+WmBtWXcraAp6eyYtPW5kdHR4LTNGUHxYe0oqfkViYFFW
KSU+RFFxWThUKFJGPihJTHg5P3g8LXE8OzheRHRnWWArbUd5QE1lMzkKelV+Pkp6Sk1sVUtAI14j
T0hgP0FXd3YjKDFtVWJANHI1UlY3WW5PY2VKT2p1P0RXQj1YNzdDfTJDRXdqJGkxbE5mCno1QSRC
VXpaIWRMVXRhOX4+VldtKnNhV3NiOG45Pk1aZz50XlJeenlyPkdNRU4jMiR0VkB1R1I+K2Q0QU4j
WDB4cgp6Nz8te0h7clRhKl48ejVfYTRrLVd6YTFCMjdfeGwwdj54bGFHdT9+KCFgNj4wM2xCem5M
RUB6WTU4ZUdRTzQjXzEKemZBX25HYGFiSVh6Wj10ZygzZl8pKSQyY3d2JT0lOyhYelhHd21XKDNU
aXhQblkpJn5Ibl5qSTdZOzVRfHxEKjRHCnolSF5LRGE8aCY7SUklWVV0WUtWTHRWYG11JXpleEdz
Uzh3MC0pPUxgUUVBdThTJjZJYnR4Um5uWThQaX56c0BoKwp6KzM4TmlhajZeZXxGKk1zQk5HM2Vf
Pm8pamNSNX1UOXJaQiY8UHE8T3lxZnk+K25qKHRtaGlyIXorWHhMaU9zSXYKelBPS0NAWSE5YUtw
eFN+KmQhXipiPHdQN2hGbDBHNytHODw0U1VrJmQmZ2JLYSYjPyRBcXJtTjVgQlBJXzdLU3RtCnpx
ZXpTa0Z8dmZWOWFBY2owaEVNZE5kIWY0MG1yY2dqVT1LZDApYz1paUNfcGN3dmsxa3AjKjZPdj9H
Y0xDTCUoPgp6dSZBc3A4VzAtN21JVjtnRUZuZSszMXBpbVVFfS1fXldIRDc+ZVBNcm9faEQ1ZCV5
MnxyfFFDPlBhLUBCUkxnVmQKel9kez51LTdvUE9LTXdhRjJFdH17KHUta2teUnReUHYqUj4xY2pV
I3lyN29Gd0M7WFUxbF5DSFdpX3xMZHEpYytXCnotbGJEYWB5NE05NDh4MHQ4VFUxM007aSpidUpI
V21xSylfPWpBNX1TVUFXcCFYSXZ1dTxXPGpwcj51UWBUSEhmcQp6VG54anBGS3VBcm1BaTAoaX5v
Umh3MGVfPm5Wbkp4aWNPWUJ6Rz5HZ1FUa3opekM9b3EoUG9US3JRJERCNGI9bFYKend3JlZpZzUw
M0F4ZDJQfV87fjdKS2hpREtNP3Q5al9sNjIpdXVadGNTc1JNNypvY1ZDMiVHTUpqJjxCRWxMbior
Cnp2YzV9Y1dyYnFIdn1iNjxqTmhuPVZEaHxLWExWNyF4eExUKDIjc3toTnBrfE9XLWNlSHtsWCly
THFLTkdwVHo0fQp6YD1sMmRHUDZ2dFo9aylaWTxaWSEqc2AkTykyKmVhIUprKm5SSzJYOEhuczh7
aWE8bWI2SF5mZT5fWGQ5WVVwXlIKemFeUThfRkore2BjSDlpalV3c0tQQGFOKk5ka2tBSHZLMj9s
UDJvfiZyP31YKm8mNUdteXp0QjBNQWdMIzleVX5zCnpuNk5xaiRmZ0Z7ND1sQHJXN2w0PjF8R3NW
JCVGS0QzNiR8NCF6fjtweVpgaz8tQFNmK3l4VyUqa1ViYGVRTnwlPwp6Snlzcit4JjlzN3t0QVAz
dHh+aEtDSkRIem9aTHB6Q3EweElCYzZ8aENFKC1wY3U+cXMhWjN6K1p5MHoocXZEI2IKejc+PWp9
VCsoISVhQDN6QSErOUh9S0VDWWs3Y01HX14/UipHeX53QFMxVmdSbyU9JG05UW1oJSVRTTljcGx3
UjdyCnoxMHZWdjJGTDMxbj42VDVhLTl3VD5KRE9hMzJWSFVUaFgkeUk8cXg2KnY7OHVicGtya2w7
PT1YQGg7SDhDJVhXYwp6YzVZM0JvZ2g8KlRqVypPWmJZPzt2cnJZZntNPHl4OGx1WGhLJHd+OVIm
emUhPEtfOD1OKE9ER0RyQjtCJGExbGMKejxMUl8kZ0RWQ0klY1ZNQVd6PE84KXNJTnhaTlUlV19s
VGtQKEQ0IU9fbnFDIWFwOHhYZyU5TTQqPUM/Z3kpNlp7Cnp3dVcrKkI9WVF+MH5henFwdHZnc2Rv
YGlGZG9pfHMqJXorZmV+T2cxRTs7Z1hvMVIlJEFVU1BJaiU/dmptM0ZxRwp6SmFfKGo3eTM7cF9Z
cGZzQ0FxYjhTfm9AMUl7RUdEV2tfWSFDO2lBfERzSE4xV01OLUQ/WkUwU0BHKi0xcC0/JHsKelE1
ek42LWo9TkJwe25+VCNPbk9lTFBIRl9qbzd1fE9iOUhoOXtGfGRPYkp+K1NPekMmKmxaS1ZaPUYk
bz11T2pvCno1RV5gRWR8aHAoZWA1eXNjcGNRXyNSK3phVSEyKnFyMlpnMUFlSkJATyVnfmshRCNT
eWA3dl4lNih0N1NfYkgqJAp6RGkqUmQrN2l7Nz5XXkhDUExTQVVGSENpTj1kbEtrJEQqVG5uK1lV
T2RiR3dAYT83KyYqM2IrK0U3KjIyWipEZHIKekA+VGxLUUJuS3BuSDdWWEpHMEdDb3dKSVhTPlk8
Qyg9amZ8b35LUFJEe3JXZE49VWw3UVIkcXZmdVVpUWNKb188CnowfGp4VVlnMlElI2tDdnFmN1ZZ
UjtRTyQheWBOfHxuNVFgVlY/OGFERkQqSCVhMWo5TU5UbUNHQ1FYakBqZ0gkRgp6JGdxYldRUilW
UVphWjc+bTJfN0pPI1M4bjdxXlg0JFVOenNRVkp3VEZwMVpQSH0kJV9DQVhGbG5FOygrfDRJIyUK
eiN1Wn1TTFE7RmxEfGJROXVgckVLIzQ9e0ZQal93MXYlVDl5eEp2PiZFMEM/RWJRYVkxeT1GIzI2
Ozx7VD5EPT09CnpBUHw5PkwkQHN7UCs1IXt1TX5JMzZzRW1RbDg2M0hpeiFsR0AyT30/ZnI+e29w
VWItRkZJMEMqSiptX3khQlNMbAp6VzBNdSpKXkBKO2k/by1pe3wtdnFrciF3Mzx+e2JoeXE5THNf
Q0t4dF9+bSEoX0lpKW9qT1dAdnE+T2lpJjVyVzEKelJoVXJnIz1hKkpVNUswWlI5bCVPdmVkVSMy
XnBWQ1dIeXh0ODltVmJKdChjMXN6JFZyNGxnMjtOZ0ktcnE1Z0JPCnp2I3NBdk9fYXl2MiNeT1B3
XlRZKUxkKFM1Q3ZsTDxqKHl4UTFvOFo1ZDVFPW0mKE5YUj5FbCVUOUlKTW5BMzVgRwp6PHd5b3gj
RGc8cURsQlIlV1MweCk+RzJBKF5eKVZZM3AlfFV0fDU5U0pPN0cwUH1OODxhQihfVEJZTSQySW4r
fGsKekcwYlJFOGx+azt2MSohdjNudnZLQEl4JE9NKU5jRll+eFVaTEFGOEJvMW1ic0xwNzsoO25M
UWg0UEJBRks8fWNXCnplS1A4THNCcVhuVTNlNE5nMm1Ceys9OHcpdkFCOXhDZW88Zzg+MkQoU3Bu
eDdYaW9oPSljcTd6KXNJaUZ5bUxrTAp6VDxHO1NYKEVKb2E8WHZaMU9YPlhlRn5JWj14N0YzNnFT
JFFhKSp+PDZ2NW49N3tpVShpUTR4Q2ZqRSl0e00jUk4KekQqJClPYEExcHB7blk4S0NAbHhAVHgq
XkBlYygoeCo/SGxfbnAxSjVVZiFBXzAmRlNrd0JIZiFud3NYajJiZk9uCnpkQGImanduXng5aFcj
PXFkWW9vbWJqe3NtbTMzQVlFKnphQXM7Y2wxOHtwMjxDaUEmRUBxIXhWUUpBflheP29wPQp6WFpF
cCZjcmVXYVMoUyU5dzQyUj1qaF5TckUoKTAoKnlGOGg4QnFQXjljeGFZUDBaSFg7Z2dKdkF0c0Yt
a2dqTFcKenk3WkJvTCpIeT5ZZGhAaGwweHEwWjJzR1NvMClCWnQ7TUlBQUdpQTdtcmlEOGM4RXRN
SzlGeXd7VSM+YVRUPWQ1CnozM1U1Y1UmLWJXJGliVzIlWU9NZih5fEU7R2QzPml1JmRzP0pvczBX
VH1xTnNQVmt9ZHQkK0NnbjJ6bms4Kk8odwp6ODJOMiUmPmlzYTBMdjl6Sjc4bzFgdnwhMmZWKG55
TlB0Sl5SeyNTNzM9bjwrJFB4c25BWFd5TTFqd19OREl+fjMKenpZJWZ9RH14eWZGcmZtYm8waWM1
aD9QT0MzfVIoNHVlXio3el5wcntOZFRlQGg/UE9DNDYxI2dgMWxuZGc3TytECm51WXZMIVNvRS01
c3F1ZVFnSkQzcnt2S0FzUkc3dmEwZ3Z4fnprT2A0dnBAWEBAMjF5WQoKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3Rv
bS1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MWI2YWQ2Yy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Vm
ZmVjdC1jdXN0b20tcGFyYW1ldGVycy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSAr
MCwwIEBACi0gICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tcGFyYW1ldGVycy5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAyYTA3YTJlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSw2MiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAg
ICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IHRoZSBjdXN0b20gZmlsdGVyIHJlY2VpdmVzIHRoZSBj
b3JyZWN0IG51bWJlciBwYXJhbWV0ZXJzLjwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJl
ZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAot
ICAgICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBz
dWNjZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgIC8qIFRlc3Rp
bmcgcGFyYW1ldGVycyBvZiB0eXBlIGZsb2F0LCB2ZWMyIGFuZCB2ZWMzIGluIHZlcnRleC1vZmZz
ZXQtcGFyYW1ldGVycy52cyBhbmQgdmVjNCBpbiBjb2xvci1vZmZzZXQtcGFyYW1ldGVycy5mcy4g
Ki8KLSAgICAgICAgLmZpbHRlckEgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3Rv
bSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LXBhcmFtZXRlcnMudnMnKSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVyc3BlY3RpdmUgMiwgCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRleF9vZmZzZXQgLTAuMDUgMC4xLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGUgNDUgLTI1IC0xMCwgCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwLjQgMC4yIDAuNSAwLjUpOwot
ICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJCIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzJykg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCks
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0ZSA0NSAyNSAtMTAsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlIDEwLCAKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGV4X29mZnNldCAtMC4wNSAwLjEsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwLjEgMC45IDAuNSAw
LjUpOwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJDIHsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJz
LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwIDAg
MCAwLjUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlIDIs
IAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0ZXhfb2Zmc2V0IC0wLjA1
IDAuMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRlIDQ1IC0yNSAt
MTApOwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJEIHsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJz
LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRleF9vZmZzZXQg
LTAuMTUgMC4xLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGUgMTUg
LTQ1IDEwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXJzcGVjdGl2ZSAx
LjUsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaXhfY29sb3IgMC40IDAu
MiAwLjUgMC41KTsKLSAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAg
ICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImZpbHRlckEi
IHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9
ImZpbHRlckIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxp
bWcgY2xhc3M9ImZpbHRlckMiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0g
ICAgICAgIDxpbWcgY2xhc3M9ImZpbHRlckQiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5w
bmciIC8+Ci0gICAgICAgIDwhLS0KLSAgICAgICAgICAgIFRlc3RpbmcgdGhhdCBzaW1wbGUgY3Vz
dG9tIGZpbHRlcnMgc2VuZCB0aGUgY29ycmVjdCBwYXJhbWV0ZXJzIG9mIHR5cGUgbnVtYmVyLiBZ
b3Ugc2hvdWxkIHNlZSA0IGJsb2NrcyBvZiBjb2xvcmVkIGJhcnMgd2l0aCBkaWZmZXJlbnQgcm90
YXRpb24sIHBlcnNwZWN0aXZlLCBvZmZzZXQKLSAgICAgICAgICAgIGFuZCBjb2xvciBlZmZlY3Rz
IGFwcGxpZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS10cmFuc2Zvcm0t
cGFyYW1ldGVycy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJzLWV4cGVjdGVkLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE4Nzc2NmYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJz
LWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi08IWRvY3R5cGUg
aHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgZnVuY3Rpb24gcnVu
VGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byB0YWtl
IHRoZSBleHBlY3RlZCBpbWFnZSBvbmx5IGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQu
Ci0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgIC5ib3ggewotICAgICAgICAg
ICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAKLSAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlk
IGJsdWU7IAotICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKLSAgICAgICAgfQotICAgICAg
ICAuZmlsdGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgx
MDApIHRyYW5zbGF0ZSgxMHB4LCAyMHB4KTsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6
IGdyZWVuOwotICAgICAgICAgICAgd2lkdGg6IDE1MHB4OyAKLSAgICAgICAgICAgIGhlaWdodDog
MTUwcHg7Ci0gICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGNsYXNzPSJib3giPgotICAgICAg
ICAgICAgPGRpdiBjbGFzcz0iZmlsdGVyIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJzLmh0bWwgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTM5NDU2My4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBh
cmFtZXRlcnMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAgQEAKLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgdGhl
IGN1c3RvbSBmaWx0ZXIgcmVjZWl2ZXMgdGhlIGNvcnJlY3QgdHJhbnNmb3JtIHBhcmFtZXRlcnMu
PC90aXRsZT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgewotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVy
ZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQo
dHJ1ZSk7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0
aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4KLSAgICAgICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0g
ICAgICAgIDxzdHlsZT4KLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBkaXNwbGF5OiBpbmxp
bmUtYmxvY2s7IAotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmx1ZTsKLSAgICAgICAg
ICAgIG92ZXJmbG93OiBoaWRkZW47Ci0gICAgICAgIH0KLSAgICAgICAgLyogVGVzdGluZyBwYXJh
bWV0ZXJzIG9mIHR5cGUgdHJhbnNmb3JtIGluIHZlcnRleC10cmFuc2Zvcm0tcGFyYW1ldGVyLnZz
LiAqLwotICAgICAgICAuZmlsdGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LXRyYW5zZm9ybS1wYXJhbWV0ZXIudnMnKSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSB0cmFuc2xhdGUoMTBw
eCwgMjBweCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApOwotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICB3aWR0aDogMTUwcHg7IAot
ICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDsKLSAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgot
ICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9ImJveCI+Ci0gICAgICAgICAgICA8ZGl2IGNsYXNzPSJmaWx0ZXIiPjwvZGl2PgotICAg
ICAgICA8L2Rpdj4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAgVGVzdGluZyB0aGF0IHNpbXBs
ZSBjdXN0b20gZmlsdGVycyBzZW5kIHRoZSBjb3JyZWN0IHBhcmFtZXRlcnMgb2YgdHlwZSB0cmFu
c2Zvcm1zLgotICAgICAgICAgICAgWW91IHNob3VsZCBzZWUgYSBjb2xvcmVkIGJsb2NrIHNsaWdo
dGx5IHJvdGF0ZWQgYW5kIHRyYW5zbGF0ZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0
LWN1c3RvbS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3Vz
dG9tLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgzOTdkZTguLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgot
ICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IHRoZSBjdXN0b20gZmlsdGVy
IGlzIGFwcGxpZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQi
LCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVy
ZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAotICAg
ICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAg
ICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNj
ZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgIDwvc2NyaXB0PgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRl
c3QoKSI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcu
Li9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xv
ci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKSIgc3JjPSIuLi9yZXNvdXJjZXMvcmVm
ZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpLCA2IDExKSIgc3JjPSIuLi9yZXNv
dXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LWV4cGxvZGUtZGV0YWNoZWQudnMnKSwg
MyAzIGRldGFjaGVkKSIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAg
IDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVy
dGV4LWV4cGxvZGUtZGV0YWNoZWQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29sb3Itb2Zm
c2V0LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMyAzIGRldGFjaGVkKSIgc3JjPSIuLi9yZXNv
dXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSkiIHNyYz0i
Li4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBU
ZXN0aW5nIHRoYXQgc2ltcGxlIGN1c3RvbSBmaWx0ZXJzIHdvcmsgaW4gc29mdHdhcmUgbW9kZS4g
WW91IHNob3VsZCBzZWUgNSBibG9ja3Mgb2YgY29sb3JlZCBiYXJzIHdpdGggZGlmZmVyZW50IGVm
ZmVjdHMgYXBwbGllZCwgZnJvbSBsZWZ0IHRvIHJpZ2h0OiAKLSAgICAgICAgICAgIG9mZnNldCB0
byB0aGUgcmlnaHQgd2l0aCB3YXNoZWQgb3V0IGNvbG9ycywganVzdCBvZmZzZXQgdG8gdGhlIHJp
Z2h0IHdpdGggbm9ybWFsIGNvbG9ycywgNCBzbWFsbGVyIGJsb2NrcyBhdHRhY2hlZCB0byB0aGUg
Y29ybmVycywgNCBzbWFsbGVyIGJsb2NrcyAKLSAgICAgICAgICAgIGF0dGFjaGVkIHRvIHRoZSBj
b3JuZXJzIHdpdGggd2FzaGVkIG91dCBjb2xvcnMsIG5vcm1hbCBibG9jayB3aXRoIHdhc2hlZCBv
dXQgY29sb3JzLgotICAgICAgICAgICAgTm90ZTogV2ViR0wgbmVlZHMgdG8gYmUgZW5hYmxlZCBm
b3IgdGhpcyB0ZXN0IHRvIHN1Y2NlZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZh
bGxiYWNrLXRvLXNvZnR3YXJlLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1mYWxsYmFjay10by1zb2Z0d2FyZS1leHBlY3RlZC5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzhlNzFmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLWV4cGVj
dGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4K
LTxodG1sPgotPGhlYWQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAg
IHBvc2l0aW9uOiByZWxhdGl2ZTsKLSAgICAgICAgICAgIGxlZnQ6IDVweDsKLSAgICAgICAgICAg
IGhlaWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA0NXB4OwotICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogZHJvcC1z
aGFkb3coMTBweCAxMHB4IDEwcHggYmx1ZSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9o
ZWFkPgotCi08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJib3giPjwvZGl2PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXIt
ZmFsbGJhY2stdG8tc29mdHdhcmUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDI4ODA4NzUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9maWx0ZXItZmFsbGJhY2stdG8tc29mdHdhcmUuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDU0ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPCEtLSAKLSAgICBUaGlzIHRlc3RzIHZl
cmlmaWVzIHRoYXQgdGhlIG9sZCBmaWx0ZXJzIGFyZSByZW1vdmVkIGZyb20gdGhlIHBsYXRmb3Jt
IGxheWVyIHdoZW4gdGhlIGZpbHRlcnMgY2Fubm90IGJlIAotICAgIHJlbmRlcmVkIGluIHBsYXRm
b3JtIGNvZGUgYW5kIGl0IGZhbGxiYWNrcyB0byByZW5kZXIgdGhlIGZpbHRlcnMgaW4gc29mdHdh
cmUuCi0tLT4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVBy
ZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVl
KTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAg
ICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIGRvbmUoKQotICAgICAgICB7Ci0gICAgICAgICAgICAv
LyBBZnRlciB0aGUgb25sb2FkIGlzIGZpcmVkLCB3ZSBrbm93IGZvciBzdXJlIHRoYXQgdGhlIHNo
YWRlciBpcyBsb2FkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0g
ICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhl
aWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAvKiBGb3JjZSBhIHBsYXRmb3JtIGxheWVy
LiAqLwotICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDAp
OwotICAgICAgICB9Ci0KLSAgICAgICAgLnNoYWRlciB7Ci0gICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQudnMnKSkgZHJvcC1z
aGFkb3coMTBweCAxMHB4IDEwcHggYmx1ZSk7Ci0gICAgICAgIH0KLQotICAgICAgICAuYmVmb3Jl
IHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBkcm9wLXNoYWRvdygxMHB4IDEwcHggMTBw
eCByZWQpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLQotPGJvZHkgb25sb2Fk
PSJkb25lKCkiPgotICAgIDwhLS0gCi0gICAgICAgIFRoZSBleHBlY3RlZCByZXN1bHQgaXMgYSBn
cmVlbiBzcXVhcmUgd2l0aCBhIGJsdWUgc2hhZG93LiBBdCB0aGUgZW5kIHRoZXJlIHNob3VsZCBi
ZSBubyByZWQgb24gc2NyZWVuLgotICAgIC0tPgotICAgIDxkaXYgY2xhc3M9ImJveCBzaGFkZXIg
YmVmb3JlIj48L2Rpdj4KLSAgICA8c2NyaXB0PgotICAgICAgICAvLyBGb3JjZSBhIGxheW91dC4K
LSAgICAgICAgZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQ7Ci0gICAgICAgIC8vIEhhdmluZyB0
aGlzIGlubGluZSBmb3JjZXMgdGhlIG9ubG9hZCBldmVudCB0byBvbmx5IGZpcmUgYWZ0ZXIgdGhl
IHNoYWRlciBjb2RlIGlzIGxvYWRlZC4KLSAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcigi
LmJlZm9yZSIpLmNsYXNzTGlzdC5yZW1vdmUoImJlZm9yZSIpOwotICAgIDwvc2NyaXB0PgotPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1jbGlwcGVkLWV4cGVj
dGVkLnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzVhNDhlMmQwMzcyMjAyZmRk
MDQ5OGY2NDE1NDU1YTgxMzY5OWExNy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAx
MDcxOAp6Y21lSTJZZSpEUDZ2eXcoUFBRdlB3bD17UklyZFAqNTgxNCVaZGhHJk8pWCEmKUckKFd0
dzN6ZUVMNnl5SDZ4NTMKelFoe2l3NW02K2xwR3JpX14tSjFZR0xualAhRUIyVj9PfmFpK1p8bjxg
PUwqTGpQcSQ+PUg1TUwmJDsqZiZpUyp8CnpYKHtwVXVELTRhQUB7QHQhJWw9MEpWST15KHVGKiFL
VCVta0swLT8zR0U0RmY9alJuMUo2PyNRZ3ZiTVY1bUM4PAp6SGRrMDU4RFo0d2JoLU5jdT40NCEm
WnlVaTN4M3l3JEh8X2VMX15IKFFmQk9SUGZLQmptdG5eX2VAKEotTURIT34KejF6RTg3VD81K1Er
Jm5obSt1ZlBiNWJBI0sqLU9XJC1FUk5jSnJ5cV5oVUp1TTkqZkIwJDwwcHBuNUkrPDUyUUNVCnoq
O3QmNG0wbW03KnxaR3YpI3B5WUQpfHZ2O1JoP15jLVJLcFJJYClxWDdsZ003MzFvdVVoYH40U0dn
Um9pRkIoJgp6PzMoPHBxdkd0ckZ2WWV+Y0A0STtoXlh4SXJ2aGhncX5RQ3I/MGY0TSEodHt4WVpn
aHh0QVdBIV52JmZiaXNTayQKekJoP0daQjF2czB5SU85d0V0MztlcSpUQEBkTnN+YE4/JkpNIXU0
Z1BYME43eGY/Q1pseSUwPSFJT005Vlg+WXYwCnpsYDxkNVYtTnBTJUVLLSVIRS1IQEA7cWZlN0t7
RS1qZypJX3AqJFdjcFoyQjlwQW5KMUQ0T3pjQXt8NDNBVkJqfgp6Mn5INFBGPXozRDh1VUxEPkYk
KiNeUD5VQj82Mlg/cW4oQEhzQWhoPUhORVJVeTlmOyZYZnRFaWExOH5ZNEdpPDUKelY9cU9CR3tQ
fFVZMVFIJFdKJHFkJCZxdmxNa2BxTTJHJDEzT3VNRjBeOUAoTXNKZVB1TD9RaTI2cjRWQ1QhUV56
CnpvWGp7KDd6ZUlFUjJVWXszWGtDaWsodlpgZy1qSnRaUG9sPTctWHckWUhBd3B5aUclZjZCdmkk
UWR2aWtPcmpoegp6VGAzd3ZDPSU2KT13YTdCalhiMTw1eF9DZXVUWCRYIWxINDF0N0AoKHA0O2g3
VzxCeEhIVlJmakpRbWdzUVZldXMKelMpKjBFUjxfSSYyRy1SVVAtdH53N3tPTXpUKChASlFyMHxx
dGZRUGVCX2Z9UkIrN0NoMG02c1RkZGomTkVWYEI2CnpxJTBkKmNGbmlxV1o1fEAmdHNTOVU2Zl5r
VklWOUo3VWBoRFgoM25DMCspeXM1VTRGdSY0aUxtclpPT3JMfDZiYwp6WD9kVjtrdVZBRTlCRVRB
Ymgha1IoRUxqczZVOztlbFExZXU5VFFCQDFkfHt2TkY1VWgzan51T0VQJH0hKVo7KXsKdWtXQHp5
N0M9fiM9bTVma1F8a3Z8O2glKkNZcnE0Q0NtVmlyJnFlWndPX1VneVZyYm94UX4zdXUwSDNTPwoK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFp
bnQtY3VzdG9tLWNsaXBwZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBlY3RlZC50eHQKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9tLWNsaXBwZWQu
aHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3Vz
dG9tLWNsaXBwZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmY5MmNjMTku
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVw
YWludC1jdXN0b20tY2xpcHBlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAot
PCFET0NUWVBFIGh0bWw+Ci08IS0tIAotICAgIFRoaXMgdGVzdHMgdmVyaWZpZXMgdGhhdCBzaGFk
ZXIgZmlsdGVyIGlzIHJlcGFpbnRlZCB1c2luZyB0aGUgZnVsbCBzb3VyY2UgaW1hZ2Ugb2YgdGhl
IGVsZW1lbnQgaW5zdGVhZCBvZiBqdXN0IHRoZSBkaXJ0eSBhcmVhLgotICAgIEFsc28gaXQgdGVz
dHMgdGhhdCB0aGUgY2xpcHBpbmcgcmVjdGFuZ2xlIG9mIHRoZSBib3ggaXMgbm90IGFmZmVjdGlu
ZyB0aGUgZmlsdGVyLgotICAgIFRoZXJlIHNob3VsZCBiZSBvbmUgbGlnaHQgZ3JlZW4gYm94IG9u
IHRoZSBzY3JlZW4uIE5vIHJlZCBzaG91bGQgYmUgdmlzaWJsZS4KLS0tPgotPGh0bWw+Ci08aGVh
ZD4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICB9Ci0gICAgICAg
IGZ1bmN0aW9uIHJlcGFpbnRUZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcigiLmJlZm9yZSIpLmNsYXNzTGlzdC5yZW1vdmUoImJlZm9yZSIpOwotICAg
ICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuY2xpcHBpbmdfYm94
IHsKLSAgICAgICAgICAgIG1hcmdpbjogMjBweDsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsK
LSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVu
OwotICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOwotICAgICAgICB9Ci0gICAgICAgIAotICAg
ICAgICAuZW1wdHlfYm94IHsKLSAgICAgICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgfQot
ICAgICAgICAKLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDE1MHB4OwotICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3Jl
ZW47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIC5iZWZvcmUgewotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Ci0gICAgICAgIH0KLQotICAgICAgICAuc2hh
ZGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNl
cy92ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMpIG1peCh1cmwoLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgb2Zmc2V0IC0wLjUsIG1peF9jb2xvciAxLjAg
MS4wIDEuMCAwLjEpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLQotICAgIDxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9mYXN0L3JlcGFpbnQvcmVzb3VyY2VzL3JlcGFpbnQuanMiPjwvc2NyaXB0Pgot
PC9oZWFkPgotCi08Ym9keSBvbmxvYWQ9InJ1blJlcGFpbnRUZXN0KCkiPgotCi0gICAgPGRpdiBj
bGFzcz0iY2xpcHBpbmdfYm94Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGVyIj4KLSAgICAg
ICAgICAgIDxkaXYgY2xhc3M9ImVtcHR5X2JveCI+PC9kaXY+Ci0gICAgICAgICAgICA8ZGl2IGNs
YXNzPSJib3ggYmVmb3JlIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC5wbmcKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwNzM2YjBiZTVkZTBlNjViMWE4YzdjNDM3ZjBhOWQxMzQ3
MTg1ODAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKR0lUIGJpbmFy
eSBwYXRjaApsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgMTA0MzUKemNtZUFTQE4/KG9s
SHlgdVZCcSFpYTB5fnlVeyt2WVYyYT5pMUIlUWxZYnBSem5rQjlnQ0NNNDckPVN1RnhlUHtUCnpO
b2szUjI4cWUkQ1dlVmRoTCZiMmhETWVLVz1WO3VpTjsxfFgtVGBMLWRAVlVwYl9mbjt1dW9GYDFh
PDsrej5fKQp6bXB9Ji1NbmhHRnBpPmRBNzY/PXxCYHg0bDdRQ15MY31lOSMrckU4IXg0OVNKUShJ
ajd5VFdHUHkmcDtyNEdmRy0KekVGMXl+NGg7dCE5XjYlTVdgU2AqO3tQfSQ2eip8QXFgflVXdTwl
VGYrXlBXODBUU1g3YyNvX2pqZnczPFBtfTxYCno1TD9IMHhEYE4jRihZJHxue0VkfXNQWCVIITlS
YUt6MXx2TVNALXcrX3h1MG4rNWg/UjxJbT5uYXtwZkUrd0syJAp6S1Ipak51YX56Xm82aUhnNX45
JlVAQmAtdyZmTmhCaHhqckFKeV5iJDZYWC1Ibm1IVTIzaEhtMTVDU0h3SlFKU1gKei1LcXhuYSlE
QXAhPC1HPXMmSWh8QV9mayMlQ0ZDWUpNS1ZkMTdwITR5KHdAM2h1e01ZbmZHRnw1JSNKQkp2ezE9
CnooR1ZGO0JrKVd6bnJsWU9rPHBUTXc1fVBnZU1qM1BxYjs9MnJYczh9RnhxJD8/TXtxI3VtKXxI
dmpRfEVGellIKAp6MmlZTShfa3IrKXR2aFRHV21xQzN2cjB8UFJZYjNQNFh7QHxzJHcpZXB5TXYx
PjA+bEVqRnR8dGs7PjhCRnEjYGkKemJIaXdFMDF1Nmh3djxMJmoteEdVKiEwfEpaV3pyQ3FxJCk7
SC1JUEtOODhEeD9jfnZSQEBQQUd3NEtiekcrR3ZwCmdtVzZ8JEVOdEJXYiV5WHhSWDEkYDtIcEZo
UGdnJmVieHNMUTA3bzQ9Q0lBMmMKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVkLWV4
cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFp
bnQtY3VzdG9tLXJvdGF0ZWQtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAzN2Y5NjkwMzhkYjJlYWUyN2FkYmIzNzZjN2Y1ZGNhY2QxYmFiM2JiLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAw
CkhjbVY/ZDAwMDAxCgpsaXRlcmFsIDk5NTUKemNtZUFTQE4/KG9sSHlgdVZCcSFpYTB5fnlVeyt2
WVYyYT5pMUIlUWxZYnBSem5rQjlnQ0NNNDckPVN1RnhlT141CnpESGZMSVd8b08ycmlsaXxNbi05
QXNpfiU+V35sfjdERiNXRlgoYE0qUyQhQjcpSmk+Rjk3OEc/LWA/RHE4eGtudQp6OHJZTTspWVdL
STdrPFRYPnhDJjM2KWJQTWwpSW40STYzRjl2aExsSylBSHYoKlZLSjxaZVU8IVYmTT1fYUE7cz8K
emJhO0B4QStaU3x6e3ZFVWd7OHc4Qm5NVGJBU3xGRHhtNkxTMTFRU1VBdzRRVDhhfGB4MUR1SVFe
VCVsVUZ0VzxXCnplUzRLRl9RdCpjY2pVY3U8Tk4qZkUhb1ROYXNLKUJgU2FjUktXdzNlTGM7LSRB
TihnMER1ZlVmTVMtQDBMdGJzfAp6VHYpdlZ0YjdDbzZxK0E7IWJ7U0kxOFctP2M3RlhAaWQ1SVFJ
VytMSnNsIVlLPmZPJTdeeUokMD56dkB+M29JX2QKeiRZPi1uNF9jdnRNREIyTE9vKXo7UzRZJWcy
YG50NWp1e1BeKEtJdWZuP1B3YHc0OHg4fDNeejthOXUtRy1FYHBpCnpYUGYha2g0PVgoRGxDU158
NGpkdzl8PUpeUXtkWEAxUGhDWVRXJHhVbVNiZG0jNU83cVp3SEtxJnVJRD4lXiMhWAp6MUVOVmtU
MFZ9fTR+VWxlWCNGcitLYUFFN3F4SGpSe1F3KSQ4bSU4az4mTWFoNWpMMVIrQ0NVPEFCP3NTTSV4
RlkKdT9Tcyt3MGk7JE9aNkElY2s0RD1eXmxLbWVWYDkkYiolPlNRPjshUHQ4aVN7K3BVWE9AZ2VD
d0tTPXdhKQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmls
dGVyLXJlcGFpbnQtY3VzdG9tLXJvdGF0ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tcm90YXRlZC1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tcm90
YXRlZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9t
LXJvdGF0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJl
cGFpbnQtY3VzdG9tLXJvdGF0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWU3NDE3ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Zp
bHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2MiAr
MCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTwhLS0gCi0gICAgVGhpcyB0ZXN0cyB2ZXJpZmllcyB0
aGF0IGZpbHRlciBzaGFkZXIgaXMgcmVwYWludGVkIHVzaW5nIHRoZSBmdWxsIHNvdXJjZSBpbWFn
ZSBvZiB0aGUgZWxlbWVudCBpbnN0ZWFkIG9mIGp1c3QgdGhlIGRpcnR5IGFyZWEuCi0gICAgQWxz
byBpdCB0ZXN0cyB0aGF0IHRoZSBjbGlwcGluZyBvciB0aGUgdHJhbnNmb3JtIHJlY3RhbmdsZSBv
ZiB0aGUgYm94IGlzIG5vdCBhZmZlY3RpbmcgdGhlIGZpbHRlci4KLSAgICBUaGVyZSBzaG91bGQg
YmUgb25lIGxpZ2h0IGdyZWVuIGJveCBvbiB0aGUgc2NyZWVuLiBObyByZWQgc2hvdWxkIGJlIHZp
c2libGUuCi0tLT4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVu
YWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0
cnVlKTsKLSAgICAgICAgfQotICAgICAgICBmdW5jdGlvbiByZXBhaW50VGVzdCgpCi0gICAgICAg
IHsKLSAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5iZWZvcmUiKS5jbGFzc0xp
c3QucmVtb3ZlKCJiZWZvcmUiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHls
ZT4KLSAgICAgICAgLmNsaXBwaW5nX2JveCB7Ci0gICAgICAgICAgICBtYXJnaW46IDEwMHB4Owot
ICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAg
ICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7
Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIC5lbXB0eV9ib3ggewotICAgICAgICAgICAg
aGVpZ2h0OiA1MHB4OwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICAuYm94IHsKLSAgICAg
ICAgICAgIGhlaWdodDogMTUwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAg
ICAgLmJlZm9yZSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsK
LSAgICAgICAgfQotCi0gICAgICAgIC5zaGFkZXIgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1ob3Jpem9udGFsLW9mZnNldC52cykg
bWl4KHVybCguLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzKSBub3JtYWwgc291cmNlLWF0b3ApLCBv
ZmZzZXQgLTAuNSwgbWl4X2NvbG9yIDEuMCAxLjAgMS4wIDAuMSk7Ci0gICAgICAgICAgICAtd2Vi
a2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwcHggNTBweDsKLSAgICAgICAgICAgIC13ZWJraXQtdHJh
bnNmb3JtOiByb3RhdGUoOTBkZWcpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLQotICAgIDxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L3JlcGFpbnQvcmVzb3VyY2VzL3JlcGFpbnQuanMiPjwv
c2NyaXB0PgotPC9oZWFkPgotCi08Ym9keSBvbmxvYWQ9InJ1blJlcGFpbnRUZXN0KCkiPgotCi0g
ICAgPGRpdiBjbGFzcz0iY2xpcHBpbmdfYm94Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGVy
Ij4KLSAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVtcHR5X2JveCI+PC9kaXY+Ci0gICAgICAgICAg
ICA8ZGl2IGNsYXNzPSJib3ggYmVmb3JlIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9k
aXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20uaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggOTZmYTM4Zi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsNTEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08IS0tIAotICAgIFRoaXMgdGVzdHMgdmVy
aWZpZXMgdGhhdCB0aGUgc2hhZGVyIGZpbHRlciBpcyByZXBhaW50ZWQgdXNpbmcgdGhlIGZ1bGwg
c291cmNlIGltYWdlIG9mIHRoZSBlbGVtZW50IGluc3RlYWQgb2YganVzdCB0aGUgZGlydHkgYXJl
YS4gCi0gICAgVGhlcmUgc2hvdWxkIGJlIDQgYm94ZXMgb2Ygc2FtZSBzaXplLiAzIG9mIHRoZW0g
YXJlIGdyZWVuIGFuZCB0aGUgbGFzdCBvbmUgb24gdGhlIHJpZ2h0IGlzIGJsdWUuCi0tLT4KLTxo
dG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAg
fQotICAgICAgICBmdW5jdGlvbiByZXBhaW50VGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAg
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5iZWZvcmUiKS5jbGFzc0xpc3QucmVtb3ZlKCJiZWZv
cmUiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAgLmJv
eCB7Ci0gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OwotICAgICAgICAgICAgbWFyZ2luLWJv
dHRvbTogMTBweDsKLSAgICAgICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRo
OiA1MHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgIH0K
LQotICAgICAgICAuYmVmb3JlIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsK
LSAgICAgICAgfQotCi0gICAgICAgIC5zaGFkZXIgewotICAgICAgICAgICAgYm9yZGVyLXRvcDog
NTBweCBzb2xpZCBibHVlOwotICAgICAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cykg
bWl4KHVybCguLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzKSBub3JtYWwgc291cmNlLWF0b3ApLCBy
b3RhdGVCeSA5MCwgbWl4X2NvbG9yIDEuMCAxLjAgMS4wIDAuMSk7Ci0gICAgICAgIH0KLSAgICA8
L3N0eWxlPgotCi0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2Zhc3QvcmVwYWludC9yZXNvdXJj
ZXMvcmVwYWludC5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci0KLTxib2R5IG9ubG9hZD0icnVuUmVw
YWludFRlc3QoKSI+Ci0KLSAgICA8ZGl2IGNsYXNzPSJzaGFkZXIiPgotICAgICAgICA8ZGl2IGNs
YXNzPSJib3giPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJib3ggYmVmb3JlIj48L2Rpdj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iYm94Ij48L2Rpdj4KLSAgICA8L2Rpdj4KLQotPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZh
bGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5cGVzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUt
dHlwZXMtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGQwMDRk
MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQt
Y3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDI3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyBkbyBub3QgZXhlY3V0ZSBpZiB0aGUgYXV0
aG9yIGRlZmluZXMgYnVpbHQtaW4gYXR0cmlidXRlcyB3aXRoIHRoZSB3cm9uZyB0eXBlIG9yIGRl
ZmluZXMgY3VzdG9tIGF0dHJpYnV0ZXMuPC90aXRsZT4KLSAgICA8IS0tIAotICAgICAgICBUaGlz
IGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRlc3QuCi0gICAgICAgIElmIHRoZSB0ZXN0
IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNyB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMu
Ci0gICAgLS0+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7Ci0gICAgICAgIGJhY2tncm91bmQtY29s
b3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0
OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hl
YWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48
L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4K
LSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5
cGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9t
LWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggZDU2NWJhMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2ludmFsaWQtY3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDY1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyBkbyBub3QgZXhlY3V0ZSBpZiB0aGUgYXV0
aG9yIGRlZmluZXMgYnVpbHQtaW4gYXR0cmlidXRlcyB3aXRoIHRoZSB3cm9uZyB0eXBlIG9yIGRl
ZmluZXMgY3VzdG9tIGF0dHJpYnV0ZXMuPC90aXRsZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBh
c3NlcywgeW91IHNob3VsZCBzZWUgNyB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0t
PgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0
b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQotICAgICAgICAK
LSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8vIFdl
IG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgc2hhZGVycyBkb3dubG9hZC4KLSAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5
bGU+Ci0gICAgZGl2IHsKLSAgICAgICAgLyogSWYgdGhlIHNoYWRlcnMgZXhlY3V0ZSwgdGhleSB3
aWxsIHR1cm4gdGhlIGVsZW1lbnQncyBjb2xvciBmcm9tIGdyZWVuIHRvIHJlZC4gKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgIHdpZHRoOiA1MHB4
OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgIG1hcmdpbjogMTBweDsKLSAgICB9Ci0g
ICAgLmludmFsaWQtY3VzdG9tLWF0dHJpYnV0ZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZzJykgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAxLjAgMC4wIDAuMCAxLjApOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLWEtbWVz
aC1jb29yZCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvaW52YWxpZC10eXBlLWEtbWVzaC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9t
aXgtY29sb3IuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMS4wIDAuMCAwLjAg
MS4wKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hLXBvc2l0aW9uIHsKLSAgICAgICAgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS1wb3Np
dGlvbi52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBub3JtYWwgc291
cmNlLWF0b3ApLCBtaXhfY29sb3IgMS4wIDAuMCAwLjAgMS4wKTsKLSAgICB9Ci0gICAgLmludmFs
aWQtdHlwZS1hLXRleC1jb29yZCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KCcuLi9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWEtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAx
LjAgMC4wIDAuMCAxLjApOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLWEtdHJpYW5nbGUtY29v
cmQgewotICAgICAgICAvKiBUaGlzIGN1c3RvbSBmaWx0ZXIgdXNlcyBhIGRldGFjaGVkIG1lc2gg
YmVjYXVzZSBhX3RyaWFuZ2xlQ29vcmQgaXMgb25seSBhdmFpbGFibGUgd2l0aCBhIGRldGFjaGVk
IG1lc2guICovCi0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvaW52YWxpZC10eXBlLWEtdHJpYW5nbGUtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxIGRldGFjaGVkLCBtaXhf
Y29sb3IgMS4wIDAuMCAwLjAgMS4wKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hdHRyaWJ1
dGUtYXJyYXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3Vy
Y2VzL2ludmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJyYXkudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDEuMCAwLjAg
MC4wIDEuMCk7ICAgICAgICAKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJy
YXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2lu
dmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJyYXkudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4
LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDEuMCAwLjAgMC4wIDEu
MCk7ICAgICAgICAKLSAgICB9Ci0gICAgLmludmFsaWQtYXR0YWNoZWQtbWVzaC1hLXRyaWFuZ2xl
LWNvb3JkIHsKLSAgICAgICAgLyogVGhpcyBjdXN0b20gZmlsdGVyIHVzZXMgYW4gYXR0YWNoZWQg
bWVzaCB0byB2ZXJpZnkgdGhhdCBhX3RyaWFuZ2xlQ29vcmQgaXMgbm90IGEgYXZhaWxhYmxlIHdp
dGggYW4gYXR0YWNoZWQgbWVzaC4gKi8KLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1
cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLWEtdHJpYW5nbGUtY29vcmQtd2l0aC1hdHRhY2hlZC1t
ZXNoLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3Vy
Y2UtYXRvcCksIG1peF9jb2xvciAxLjAgMC4wIDAuMCAxLjApOyAgICAgICAgCi0gICAgfQotICAg
IDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBj
bGFzcz0iaW52YWxpZC1jdXN0b20tYXR0cmlidXRlIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJp
bnZhbGlkLXR5cGUtYS1tZXNoLWNvb3JkIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlk
LXR5cGUtYS1wb3NpdGlvbiI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLWEt
dGV4LWNvb3JkIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtYS10cmlhbmds
ZS1jb29yZCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1h
cnJheSI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC1hdHRhY2hlZC1tZXNoLWEtdHJp
YW5nbGUtY29vcmQiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4
cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3Vz
dG9tLWZpbHRlci1zaGFkZXItZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggOTJhYzA2ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1zaGFkZXItZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9u
dWxsCkBAIC0xLDI1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+
Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
LSAgICAgICAgICAgICAgICAvLyBXYWl0IGZvciB0aGUgaW1hZ2VzIHRvIGJlIGxvYWRlZC4KLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIG5vdGlmeURvbmUoKQot
ICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0
cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkIG9yIGZhaWxzLgotICAgICAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4K
LSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJub3RpZnlEb25lKCkiPgotICAgICAgICA8
aW1nIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgc3Jj
PSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAgPGltZyBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIHNyYz0iLi4vcmVzb3VyY2Vz
L3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJl
bmNlLnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1zaGFkZXIuaHRtbCBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXNo
YWRlci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZGYxZjY5Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmls
dGVyLXNoYWRlci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTMgKzAsMCBAQAotPCEtLSBUaGlz
IGZpbGUgc2hvdWxkIHRlc3QgdGhhdCBjdXN0b20tZmlsdGVycyBkbyBub3QgcmVuZGVyIHdoZW4g
c2hhZGVycyBhcmUgaW52YWxpZC4gLS0+Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxo
ZWFkPgotICAgICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IGN1c3RvbS1maWx0ZXJzIGRvIG5vdCBy
ZW5kZXIgd2hlbiBzaGFkZXJzIGFyZSBpbnZhbGlkPC90aXRsZT4KLSAgICAgICAgPHNjcmlwdD4K
LSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVy
RW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7Ci0gICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICAg
ICAgCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAg
ICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2Fk
aW5nIHN1Y2NlZWRlZCBvciBmYWlscy4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUo
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAg
ICAgICAgICAgIC5pbnZhbGlkX3ZlcnRleF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2ludmFsaWQt
c2hhZGVyLnZzJykpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmludmFsaWRfZnJhZ21l
bnRfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXNoYWRlci52cycpIG5v
cm1hbCBzb3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hh
ZGVyc19idXRfaW52YWxpZF92ZXJ0ZXhfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXNo
YWRlci52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmJvdGhfc2hhZGVy
c19idXRfaW52YWxpZF9mcmFnbWVudF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZz
ZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5ib3RoX3NoYWRlcnNf
aW52YWxpZAotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBtaXgodXJsKCcuLi9y
ZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBub3JtYWwtc291cmNlLWF0b3ApKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tIFRlc3Qgb2YgaW52YWxpZCBjdXN0b20gZmlsdGVy
IHNoYWRlcnMuIFlvdSBzaG91bGQgc2VlIDUgYmxvY2tzIG9mIGNvbG9yIGJhcnMsIGFsbCB0aGUg
c2FtZSAtLT4KLSAgICAgICAgPGltZyBjbGFzcz0iaW52YWxpZF92ZXJ0ZXhfc2hhZGVyIiBzcmM9
Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJpbnZh
bGlkX2ZyYWdtZW50X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LSAgICAgICAgPGltZyBjbGFzcz0iYm90aF9zaGFkZXJzX2J1dF9pbnZhbGlkX3ZlcnRleF9zaGFk
ZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xh
c3M9ImJvdGhfc2hhZGVyc19idXRfaW52YWxpZF9mcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVz
b3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVy
c19pbnZhbGlkIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
aW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZvcm0tdHlwZXMtZXhwZWN0ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZvcm0t
dHlwZXMtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTdiOTg1
Yi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQt
Y3VzdG9tLWZpbHRlci11bmlmb3JtLXR5cGVzLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwyNiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlcnMgZG8gbm90IGV4ZWN1dGUgaWYgdGhlIGF1dGhv
ciBkZWZpbmVzIGJ1aWx0LWluIHVuaWZvcm1zIHdpdGggdGhlIHdyb25nIHR5cGUuPC90aXRsZT4K
LSAgICA8IS0tIAotICAgICAgICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRl
c3QuCi0gICAgICAgIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNiB2ZXJ0aWNh
bGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuCi0gICAgLS0+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICB3aWR0
aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0g
ICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAg
IDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+
PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZv
cm0tdHlwZXMuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1j
dXN0b20tZmlsdGVyLXVuaWZvcm0tdHlwZXMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggNzkyOTQ0MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci11bmlmb3JtLXR5cGVzLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw1NiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAg
PHRpdGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlcnMgZG8gbm90IGV4ZWN1dGUgaWYgdGhlIGF1
dGhvciBkZWZpbmVzIGJ1aWx0LWluIHVuaWZvcm1zIHdpdGggdGhlIHdyb25nIHR5cGUuPC90aXRs
ZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNiB2ZXJ0aWNh
bGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xF
bmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0g
ICAgICAgIHsKLSAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0
aGUgc2hhZGVycyBkb3dubG9hZC4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
LSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAg
IH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgZGl2IHsKLSAgICAgICAgLyogSWYg
dGhlIHNoYWRlcnMgZXhlY3V0ZSwgdGhleSB3aWxsIHR1cm4gdGhlIGVsZW1lbnQncyBjb2xvciBm
cm9tIGdyZWVuIHRvIHJlZC4gKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1
NSwgMCk7Ci0gICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAg
ICAgIG1hcmdpbjogMTBweDsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS11LW1lc2gtYm94IHsK
LSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNl
cy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJveC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
IH0KLSAgICAuaW52YWxpZC10eXBlLXUtbWVzaC1zaXplIHsKLSAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNo
LXNpemUuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlw
ZS11LXByb2plY3Rpb24tbWF0cml4IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShu
b25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJp
eC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLXUt
dGV4dHVyZS1zaXplIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1
cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS10ZXh0dXJlLXNpemUuZnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS11LXRpbGUtc2l6ZSB7Ci0g
ICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMv
aW52YWxpZC10eXBlLXUtdGlsZS1zaXplLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAg
fQotICAgIC5pbnZhbGlkLXR5cGUtdW5pZm9ybS1hcnJheSB7Ci0gICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXVuaWZv
cm0tYXJyYXkuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZh
bGlkLXR5cGUtdS1tZXNoLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBl
LXUtbWVzaC1zaXplIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtdS1wcm9q
ZWN0aW9uLW1hdHJpeCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLXUtdGV4
dHVyZS1zaXplIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtdS10aWxlLXNp
emUiPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImludmFsaWQtdHlwZS11bmlmb3JtLWFycmF5Ij48
L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vbWlzc2luZy1jdXN0b20tZmlsdGVyLXNoYWRlci1leHBlY3RlZC5wbmcgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL21pc3NpbmctY3VzdG9tLWZpbHRlci1zaGFk
ZXItZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzU0MzYyZGVk
NzJiM2RkOTZlYjA5M2MxMGNkNjQxOGQwZTI4YTIyLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgps
aXRlcmFsIDEyNDMyCnpjbWVIT1lmekpDN0E2cmFTMyQ4dDFwJD9jUnpWYiVLbXg9bk03az1qYzFr
VGB1LXZMdlB5ISk5dTQ9Xl9NQXIqTgp6QWtvSWxjMzRIRmZINVMxczN+I0BzMkhQIUFjejRJa3t9
NUk2M0QqVG50WXZ8KzFjckFZayVaTkVefjZlXlMkVDEKeiZ3MC1DZWx0MDtYKFB0TGNEQWpCZ0By
QHB5MHgxdkVUKHVfU2lyeHVvKGU0SUBjWnxJazQ1Uj5VIzc9QGxOaTRuCnptJEFucFZhNClnTnZs
QHZLcD8oZWp6fm84U21xeSluQmJwKUBjJWp9Q0B7JT9oZkQ0QXFaU3RhXkNIKS17K3N8Qwp6NU8y
c1lQWDVyVXRJUXFnLTBlTFAxMyZLU2tHPkFhKjlPbFpGR25BP25Hcy0zdnA/Wl8hVE59bW15QCRN
bz1VWVQKeis8JF5QQkg4b3gkKTdtPiVrcG87WnAxemtobk12NVBkejsmT2NtPmpxcl5lRyFZalUj
PXFnNlNzVE1HfXJMfmg2CnpucmNEd3dKdl5rQ3g+QTcmTV41NChmZDQ9O1Bpe2JUaEZLR3NQTE9C
Y2NyZDFUfWcjXmU+NTUzKkdPQEA7a0d8Tgp6YDZxWH1GKXxFcGRwT3puSkdqJFRufXVGNnRsQH1Y
Pz55O1A5RDJHZHBtWXNndWQ2LTdWWn1IMGoqSGxmYDkjSFEKejZ8Yn5EPGVHeiR2I01HLVJAYztm
VSZTa2BrSUVEa2FSK1YmYSNPUVlNdEQpZ14/QX5MdFlZY0RgSGd6RVNUQUd9CnorSntDZzh9N1RI
PXgkcTRebT02eDQ7JDd5RCQ+N2tFPmtwVldqK2dyO0l2I2c4VUNqQWp1TWdfVmg3Q1g8dzA2KAp6
bHhlWkdZaz12KGNhckkqNEVOcHYzRUU4SUZ5M1ZoR1JnJn1IRmg9Z089YWpoWGZeWU1eSGg4WXF6
c1AwbHNrKXoKemZyUGlRVGo9RnVGVkJWKS1OU2FGbSFxI2Y5fT9icSl8WDtrZitSe1dmQmlTbHJj
aiZsbUppQSFxcXU+e096aihhCnokOHVFVy1WRDVDPzE4RjcjcEBrWUBwamthPlVHbW5yWVNpcWt5
VyE5JFhnK3QpUT51fkJSJjBEOWRnYnZEJl5vSAp6RGtVTVNJfj9vRF5jd0JeUE5SfllFfjZLWEdZ
SVhWSU9gX0hLYjJgXmQ1emc4WWJsbWAlZXlSN1JAQi1qbU5RUlcKentkPi1RJGJ4NCYyfjJCKyFE
RX5ecChgVD5AKnN1WGdob3cpWjElU3MmQGo+TGlva2lNei1aV0B7YVlDUlFtKlNPCnpWTzl5ZEE5
byZ4MWglPnhWRGdfXyRoMns5YnBWc3VkfjsmJkBOfV9rYH5+SSQqJmtJRXJ0Zj4+bUBJd2JJVzI1
Kwp6SGY1eChTR1QxPSM3O0VhVXZsQz1LZjUxdVM9cm9+bk1KeztneWN5MFZLKEJTayh0e0NKekxe
WF5lOUBFSXVZeVgKenNVZkpZM31RYWxqZzMmeyZXMylTQ1ctTS1ESiZ8YGRfdk8hKU8xSWh6PH5h
SmE5YC1mZlopUWlhPjA0KHd8VVJwCnpBU2VUVUh4KkxCfEVjZUMkdXFgd1JtXnQ0O1dPfEEjaWNm
TyFEVEkxXmBNVXo5VktZdHJqNTA/aykkb2ZaWTQ7ewp6RTR7cXFTVW9QO0AzP31hPlh2dWgzdmpf
YFZ+SytnYCNMVFN2UEhhNzMyTG04IU4tSm49b15NYyhBe202WT4jQkQKem1QakoxKjt5KGR0Uzcw
NHRYaVZpaDYhfSFhZiFSOVZQYTR6XmZjSmolKVAkNEhWVkQhSm1IOUc9VismPFokZlhwCnotK21Q
ZTBqRXVXMXVxMD9uXjRnbD5ZcWBfaH1ySjNhaDErdUlJKW1hSkljayRMfmN5dkUxYihBWkFxQUdi
SmNBRwp6Q3A4M0J3ZTF7Tm5ZSXRGY3F+OGd2Vmc8ZCEkaHFod09wMTA9KipfNWs0Z3NAYE98cipV
bzctN3ZmZjl+IT1LNGkKejd4bSotZy1FbEFNPUt7aXdsQkU4MWJ9R0tVbGNfQTttRSRePXA1RHM+
e20oQjdDKmB5dkcjIS1WQzJTOTVqIzNwCnorVHRpRWFyPmdXcFg3MiN4ODBTZXkhMytQa31MSHFW
YnBDeWR7NWV9T1dRP0krI3JPfD1gXzhSJmZxdXVPfV4rZwp6dVZwPHdeUnghSmowR0JyVkp8NVF7
RT83WE9RT0E/VDwoVUAwSlhMYWEzc3NeSFZwIXczc21ePmdLNVZoNzhZUGwKek9rbnlITkRsIz9Q
TyRFRWc7KzJ5bzZ6fHdlTiFQIWJxTFYzKH1RSVlPVE9RRXM9Syg9MFJsflh1ITZhIzt+XklKCnoq
dGlPd1JATnQ2KCU5UXJmRHhgMiNJbjs4KDxTUFRfUj9zS2M3cV82Z1dyPWIoYTN9dD4xRDA+KjFx
XzMkPD4mdQp6MngmQFpieD80b1pnP08qcV5oYmFAVjFnZExSfUd2KUUoLWVCMVRiWUAqfl9NRFN6
bko9IzMlTip4MFQ5Mjk7KnQKekZvYHNsMG1qPG9UWkBwdEF4ZTk1ZU43b3RFI3g7cCVCcU0zJkdw
UT0oJGtuR1pPKThNWCM3SFptV2UjUzBlUWJxCno5fFk7PzV8XjYyUG1reWY2VWBicykmVTlHJnww
UE1WPC0qOFZjMzkjVHxKd3QlcnZZQnVCO3dYe09jNH5sUGUtZwp6WDE4ZEVuYWJtU2BkNytmakZk
ZH5vUlolez5ZLTxYP2BvWmhuNXN8Mk9YJGctMlBmYCslaSNPMDMoYytAeCtTX2QKeilGPG4/PntC
bnEwNmN9YkBVVz95eDFLZDxiZWRQc3QzVGBGKXlpdXNjUzB4Py1RQH5+UzNFbDElMistYUpPSlM0
CnopeXRVPjMqUVNzViMqSlRBPyo3LTVHKDtjUzBFT3xSRzhJRVNFdHoza1hnUFM0SiEtXmZAckdS
VyE0TTVffCFnSQp6MjtoPGMxZStRYktgaTtKeUlTY1Y4K3d4XnVIMHQ5dmArVnU3KCtaPmFzX01Y
P0JndkprQjs/cT8zUmckSDNWZlQKek9WPkkySUVJQ3pVQDNkajY/IVJvV3c3PWg2OGxrIT9vRkx6
Z3BeRjBzQXl2fF4jY1FLPzlBdmdkVyZ6UFczSlJBCno8VyZ+JmFaZW8rTVIpWX03ezROSTZZPz80
ISNjX3ZmVlN+Z3QhelYtO059UktFNG8pfCRwe0FrVn12KHVne317MQp6Sz0mZzg+O2x2RD9iLT9v
bmNTOWs3U2ZhUkw1KG9vTGpeVl9Cb2J6VUI1blB0XyshWUc+cD1ifE5BIXUxOCEqRHIKenUmaTBX
JCZmMSV8RGVMdHloQUM0a1EqZH1EZUBtbnlBRWAwI3puV14jSXZAeShwJnlNR1QxeFR4O1Y1dlNw
OVIyCno8MkUpanhOPSkzdnhKa0BCKXRaLVJCJVZudnFeMkd5WE0pbkV5WjVSM0RTcTwzQDQ+PjxR
dFNsM14haHhBJCtIYQp6ZnhPbSZOYEFWM2AycilkWGFGKTc9WX1JcV58MXlTeSlQRzlKMiZkdyM5
aEhQcDFNd2NzI1F0IT8/R3JmPHNJVjIKemEkS1hUcXBuPjxrfWFPcGshTktmVitWblE1X3YxQVRL
UG9ZMFNMWnBTazZsJU5hb1V8cyVDZWk9emFQakVEUjwoCno8SzFMeGltbzZxPU5TaTFUd1ExRWxl
bFBybyFIMWI/azBqfE9hVjl2dktBZFJuZVlHO2VgRnx4YGMkaWNOV09nQwp6czJ2TF56dHhXMiNR
Jn14dkNNO15KP1RlKDE/WSkrVHxRb21BYDRGJDBnSStsO2hVWClffFFaZTdYY2YqRlBHWDIKeiUh
OW5JdTE0JTsjRm9ycTxtXm1XVDxSdyt0ekxkeCs1Vl47UzV7MlVOU0NrIXEhSDI8Vz42U1grcFgj
LXZ9NVZ+CnpzdTlTeyFLUW17Qm99UDtpcn56aCNGUj9xPnApZ2poRWJVUjwjR09xVXZhbG5LQmM5
Z3BXV08wQkI5KGQ0dHJNZwp6TDlxbGAjbyFMSTwzbHJkNUcxMXErSzhwYyU1X2liYWdDUW1Jek58
Vz5CaT5KYiEwYTMqXnt+Tm4ySShOeiZrU1gKekw5cSM/d2dBZmVvdnhiYiU/clR4eX05SE0wOEMj
U2omTlY8VGFIVUVzTDVDNF5uVFpOcXFuelItY2VlUWxMR1BQCnp1KChzcnYjVGQ5d1U9bGdzKDlj
Q1BfUilEPWpZeE9gWGVjNUJgV1prJl5WY0JoVm9pZipjTzllT0xvcT81JiRteQp6MWYrYl8pentT
R1VUZV4+aE15WndvMnYzQnhfbHdhc21ZSCYpbVg1VWV5eHpmTiRVbE5vcWwje2JYbVRsaHszQFIK
ekpuUTRoZ2tUVkVQOyZQNS0wJFBYUkhmdiNoXnc9Mz41QWNqPWx0eEgpWVF+OyQrOGR6T1Bna2Ri
a3xFVEtWSDdmCno8M2piTjBkT19TKXw5MDZ8TEc5Pko1SkxHbDU1PylyU0FDZGk1ZCFTezd6cTJs
X1g1PDgrS2MmM3VCVmR4PWc+YQp6MiZHT09tWTQ2VnRWWVRiUXBiMVRCfl4hcHhaX2VKJWRUZFdH
WSZNdSM0d1lFbFpeQzsrdHtBdDxXJitrTn0qV1cKekJsX1MxSnFjJGxnY2x9bTgyZGEoX3gpKWp0
NjkrSSVtUldGO20kRyV0OGMpOHxKalRSTjdKUEhiQTFyJV95KT9UCnpDQGBZT0FuJDUhVns1e2F3
NF5iT0dFYnA8U09QWW1UZ2huRjlARnhJWiExZnB4SWkqI0g5fG1pNmgkLShocGlxdQp6KTVjIXZz
Z0Z4bjImR3VKNT96QyYpMXhGT1F2K256UDVvWCVpfUFFVFRMQWloPVZ5PW5PZCFCLTE1O3t7ZGZm
Q3gKej1YQG1rejR9WlpSQ2U9fFM5bG1WMHx4JlhKaFJ3NTxLanh3Qj1RRTYkWXhSRE4jbk1ua0FQ
dWlifWBwd1FrPEg+CnpAVX0wXlVAKEtoY3Zkcm0hMytqNzd8ZmMlSlI4bGsoWDUpeU0rSXhNQVRT
Rjh2bWhgRjA8JDE2M2oodHNGYmV7Kwp2QWI5KEQqLVZGS0l5QlJ2bkdWZiNfeV5PVy1wJldSKTk9
Mkk8e3RRcWZra0JhIzxrWnpqb2Jma3AjUDchCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vbWlzc2luZy1jdXN0b20tZmlsdGVy
LXNoYWRlci1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxZjhh
MzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9taXNzaW5n
LWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xICsw
LDAgQEAKLSAgICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vbWlzc2luZy1jdXN0b20tZmlsdGVyLXNoYWRlci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFhMmE3MDYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi08IS0tIFRoaXMgZmlsZSBzaG91bGQgdGVzdCB0
aGF0IGN1c3RvbS1maWx0ZXJzIGRvIG5vdCByZW5kZXIgd2hlbiBzaGFkZXJzIGFyZSBtaXNzaW5n
LiAtLT4KLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRs
ZT5UZXN0aW5nIHRoYXQgY3VzdG9tLWZpbHRlcnMgZG8gbm90IHJlbmRlciB3aGVuIHNoYWRlcnMg
YXJlIG1pc3Npbmc8L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3Zl
cnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1
bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5l
ZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkIG9yIGZh
aWxzLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQot
ICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgLm1pc3Npbmdf
dmVydGV4X3NoYWRlcgotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvbWlzc2luZy12ZXJ0ZXgtb2Zmc2V0LnZzJykp
OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLm1pc3NpbmdfZnJhZ21lbnRfc2hhZGVyCi0g
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25l
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLWNvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBz
b3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hhZGVyc19i
dXRfbWlzc2luZ192ZXJ0ZXhfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLXZlcnRleC1v
ZmZzZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5ib3RoX3NoYWRl
cnNfYnV0X21pc3NpbmdfZnJhZ21lbnRfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zm
c2V0LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21pc3NpbmctY29sb3Itb2Zmc2V0LmZzJykg
bm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAuYm90aF9z
aGFkZXJzX21pc3NpbmcKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL21pc3NpbmctdmVydGV4LW9mZnNldC52cycp
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLWNvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBz
b3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVh
ZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDwhLS0gVGVzdCBvZiBt
aXNzaW5nIGN1c3RvbSBmaWx0ZXIgc2hhZGVycy4gWW91IHNob3VsZCBzZWUgNSBibG9ja3Mgb2Yg
Y29sb3IgYmFycywgYWxsIHRoZSBzYW1lIC0tPgotICAgICAgICA8aW1nIGNsYXNzPSJtaXNzaW5n
X3ZlcnRleF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9Im1pc3NpbmdfZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNl
cy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRlcnNfYnV0
X21pc3NpbmdfdmVydGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIg
Lz4KLSAgICAgICAgPGltZyBjbGFzcz0iYm90aF9zaGFkZXJzX2J1dF9taXNzaW5nX2ZyYWdtZW50
X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAgPGlt
ZyBjbGFzcz0iYm90aF9zaGFkZXJzX21pc3NpbmciIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5j
ZS5wbmciIC8+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9hLXRleC1jb29yZC1kZWZpbmVkLnZzIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9hLXRleC1jb29yZC1kZWZpbmVkLnZzCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NDAyZGRmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtZGVmaW5lZC52cworKysgL2Rldi9u
dWxsCkBAIC0xLDEyICswLDAgQEAKLS8vIFRoaXMgc2hhZGVyIGRlZmluZXMgYV90ZXhDb29yZC4g
SXRzIGFzc29jaWF0ZWQgY3VzdG9tIGZpbHRlciBzaG91bGQgZXhlY3V0ZSBwcm9wZXJseS4KLQot
cHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWMyIGFfdGV4Q29vcmQ7Ci1h
dHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJp
eDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJp
eCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL2EtdGV4LWNvb3JkLXVuZGVmaW5lZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtdW5kZWZpbmVkLnZzCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAyYzJiNzMxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtdW5kZWZpbmVkLnZzCisrKyAvZGV2L251bGwKQEAg
LTEsMTEgKzAsMCBAQAotLy8gVGhpcyBzaGFkZXIgZG9lcyBub3QgZGVmaW5lIGFfdGV4Q29vcmQu
IEl0cyBhc3NvY2lhdGVkIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGV4ZWN1dGUgcHJvcGVybHkuCi0K
LXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwot
dW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBn
bF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2EtdHJpYW5nbGUtY29vcmQt
ZGVmaW5lZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10cmlhbmds
ZS1jb29yZC1kZWZpbmVkLnZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYjZkZTI0
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10cmlh
bmdsZS1jb29yZC1kZWZpbmVkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8g
VGhpcyBzaGFkZXIgZGVmaW5lcyBhX3RyaWFuZ2xlQ29vcmQuIElmIHRoZSBtZXNoIHR5cGUgaXMg
ZGV0YWNoZWQsIGl0cyBhc3NvY2lhdGVkIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGV4ZWN1dGUgcHJv
cGVybHkuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjMyBhX3Ry
aWFuZ2xlQ29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVf
cHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2FycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgudnMg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2FycmF5LXVuaWZvcm0taW5kaXJl
Y3QtaW5kZXgudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM5NzhkODlmLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYXJyYXktdW5pZm9y
bS1pbmRpcmVjdC1pbmRleC52cworKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLS8vIFRo
aXMgc2hhZGVyIGluZGlyZWN0bHkgaW5kZXhlcyBhIHVuaWZvcm0gYXJyYXkgdXNpbmcgb3RoZXIg
dW5pZm9ybXMuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotcHJlY2lzaW9uIG1lZGl1bXAg
aW50OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVj
dGlvbk1hdHJpeDsKLXZhcnlpbmcgdmVjNCB2X21peENvbG9yOwotCi11bmlmb3JtIGZsb2F0IHZh
bHVlc1syXTsKLXVuaWZvcm0gZmxvYXQgcmVkSW5kZXg7Ci11bmlmb3JtIGZsb2F0IGdyZWVuSW5k
ZXg7Ci11bmlmb3JtIGZsb2F0IGJsdWVJbmRleDsKLXVuaWZvcm0gZmxvYXQgYWxwaGFJbmRleDsK
LQotdm9pZCBtYWluKCkKLXsKLSAgICB2X21peENvbG9yID0gdmVjNCh2YWx1ZXNbaW50KHJlZElu
ZGV4KV0sIHZhbHVlc1tpbnQoZ3JlZW5JbmRleCldLCB2YWx1ZXNbaW50KGJsdWVJbmRleCldLCB2
YWx1ZXNbaW50KGFscGhhSW5kZXgpXSk7Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25N
YXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9jaGVja2VyYm9hcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL2NoZWNrZXJib2FyZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
OGNiMjRmZC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2NoZWNrZXJib2FyZC52cworKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLS8vIFRoaXMg
c2hhZGVyIGNvbG9ycyBhbHRlcm5hdGluZyB0aWxlcyBpbiB0aGUgbWVzaCBibGFjayBvciBncmVl
biB0byBjcmVhdGUgYSBjaGVja2JvYXJkIHBhdHRlcm4uCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZs
b2F0OwotcHJlY2lzaW9uIG1lZGl1bXAgaW50OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9u
OwotYXR0cmlidXRlIHZlYzMgYV90cmlhbmdsZUNvb3JkOwotCi11bmlmb3JtIG1hdDQgdV9wcm9q
ZWN0aW9uTWF0cml4OwotCi12YXJ5aW5nIHZlYzQgdl9taXhDb2xvcjsKLQotdm9pZCBtYWluKCkK
LXsKLSAgICBmbG9hdCBncmVlbiA9IG1vZChhX3RyaWFuZ2xlQ29vcmQueCArIGFfdHJpYW5nbGVD
b29yZC55LCAyLjApOwotICAgIHZfbWl4Q29sb3IgPSB2ZWM0KDAuMCwgZ3JlZW4sIDAuMCwgMS4w
KTsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLWZp
bGwuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLWZpbGwuZnMK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdlNDJiZWQuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jb2xvci1maWxsLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsMTAgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci11bmlmb3JtIHZl
YzQgY29sb3I7Ci12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLXZvaWQgbWFpbigpCi17Ci0gICAg
Ly8gTWl4IHRoZSB0ZXh0dXJlIHdpdGggdGhlIGNvbG9yIHNwZWNpZmllZCBhcyBhbiB1bmlmb3Jt
LgotICAgIC8vIEFsc28gYXBwbHkgYSBncmFkaWVudCB0byBjaGVjayBmb3IgdGhlIHJpZ2h0IGRp
cmVjdGlvbi4KLSAgICAvLyBUaGUgY29sb3Igc2hvdWxkIGJlIGxpZ2h0ZXN0IGF0IHRoZSB0b3Ag
YW5kIGRhcmtlc3QgYXQgdGhlIGJvdHRvbS4KLSAgICBjc3NfTWl4Q29sb3IgPSB2ZWM0KGNvbG9y
Lnh5eiwgY29sb3IuYSAqIHZfdGV4Q29vcmQueSk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBiMjBhY2M3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzCisrKyAvZGV2L251bGwKQEAgLTEsNiArMCwwIEBA
Ci1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXZvaWQgbWFpbigpCi17Ci0gICAgLy8gTWl4IHNv
bWUgd2hpdGUgd2l0aCB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLSAgICBjc3NfTWl4Q29sb3Ig
PSB2ZWM0KDEuMCwgMS4wLCAxLjAsIDAuNSk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvY29tcG9zaXRlLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBiYWJiNjZjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvY29tcG9zaXRlLmZzCisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi1wcmVjaXNpb24g
bWVkaXVtcCBmbG9hdDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigp
Ci17Ci0gICAgLy8gUHJvZHVjZSBhIGJsdWUgc3F1YXJlIGluIHRoZSBsb3dlciByaWdodC1oYW5k
IHBhcnQgb2YgdGhlIGltYWdlLgotICAgIGNzc19NaXhDb2xvciA9IHZlYzQoMC4wLCAwLjAsIDEu
MCwgZmxvYXQodl90ZXhDb29yZC54ID4gMC4zMyAmJiB2X3RleENvb3JkLnkgPiAwLjMzKSk7Ci19
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2Nzcy1rZXl3
b3JkLWFzLXBhcmFtZXRlci1uYW1lLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggODUwMTA4MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL2Nzcy1rZXl3b3JkLWFzLXBhcmFtZXRlci1uYW1lLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsOCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdW5pZm9ybSB2
ZWM0IGJhY2tncm91bmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfRnJhZ0NvbG9yID0gYmFj
a2dyb3VuZDsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmZzIGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1j
b2xvci1tYXRyaXgtbmVnYXRpdmUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFl
MGU3ZTMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9j
dXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUuZnMKKysrIC9kZXYv
bnVsbApAQCAtMSwxMCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdm9pZCBt
YWluKHZvaWQpCi17Ci0gICAgY3NzX0NvbG9yTWF0cml4ID0gbWF0NCgtMTAuMCwgMC4wLCAwLjAs
IDAuMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMCwgLTEwLjAsIDAuMCwgMC4wLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wLCAwLjAsIC0xMC4wLCAwLjAsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAwLjAsIDAuMCwgMC4wLCAxLjApOwotICAgIGNzc19NaXhDb2xv
ciA9IHZlYzQoLTAuNSwgLTAuNSwgLTAuNSwgMS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3It
bWF0cml4LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmls
dGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwZWVhMDcuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguZnMKKysrIC9kZXYvbnVs
bApAQCAtMSwxMCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdm9pZCBtYWlu
KHZvaWQpCi17Ci0gICAgY3NzX0NvbG9yTWF0cml4ID0gbWF0NCgxMC4wLCAwLjAsIDAuMCwgMC4w
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wLCAxMC4wLCAwLjAsIDAuMCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxMC4wLCAwLjAsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAwLjAsIDAuMCwgMC4wLCAxMC4wKTsKLSAgICBjc3NfTWl4Q29sb3IgPSB2
ZWM0KDAuNSwgMC41LCAwLjUsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLXBhcnNlci5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggYjhlMjQ4MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsMjAyICswLDAgQEAKLS8vIFRoaXMgaXMgYSBoZWxwZXIgc2NyaXB0IGRlc2lnbmVk
IHRvIHBhcnNlIHRoZSBjb21wdXRlZCBzeW50YXggb2YgdGhlIGN1c3RvbSBmaWx0ZXIuIAotLy8g
Tm90ZSB0aGF0IGl0IGlzIGdlbmVyaWMgZW5vdWdoIHNvIHRoYXQgaXQgY2FuIGJlIHVzZWQgZm9y
IG90aGVyIHByb3BlcnRpZXMgaW4gdGhlIGZ1dHVyZS4KLQotZnVuY3Rpb24gVG9rZW4odHlwZSkg
Ci17Ci0gICAgdGhpcy50eXBlID0gdHlwZTsKLX0KLQotLy8gQ2hlY2tzIGlmIHRoZSB0eXBlIG9m
IHRoZSB0b2tlbiBpcyBpbiB0aGUgbGlzdCBvZiBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSBmdW5j
dGlvbi4KLS8vIEl0IGFsc28gYWNjZXB0cyBhcnJheXMgYW5kIG90aGVyIHR5cGUgY2hlY2tpbmcg
ZnVuY3Rpb25zLgotVG9rZW4ucHJvdG90eXBlLmlzQSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7ICsraSkgewotICAgICAgICB2YXIgdHlw
ZSA9IGFyZ3VtZW50c1tpXTsKLSAgICAgICAgaWYgKCh0eXBlb2YgdHlwZSA9PSAib2JqZWN0IiAm
JiB0eXBlLmxlbmd0aCAmJiB0aGlzLmlzQS5hcHBseSh0aGlzLCB0eXBlKSkKLSAgICAgICAgICAg
IHx8ICh0eXBlb2YgdHlwZSA9PSAiZnVuY3Rpb24iICYmIHR5cGUodGhpcykpCi0gICAgICAgICAg
ICB8fCB0eXBlID09IHRoaXMudHlwZSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgIH0K
LSAgICByZXR1cm4gZmFsc2U7Ci19Ci0KLS8vIENyZWF0ZXMgYSBuZXcgdG9rZW4gb2JqZWN0IGFu
ZCBjb3BpZXMgYWxsIHRoZSBwcm9wZXJ0aWVzIGluICJ2YWx1ZSIgdG8gdGhlIG5ldyB0b2tlbi4K
LWZ1bmN0aW9uIGNyZWF0ZVRva2VuKHR5cGUsIHZhbHVlKSB7Ci0gICAgdmFyIHRva2VuID0gbmV3
IFRva2VuKHR5cGUpOwotICAgIGlmICh2YWx1ZSkgewotICAgICAgICBmb3IgKHZhciBpIGluIHZh
bHVlKQotICAgICAgICAgICAgaWYgKHZhbHVlLmhhc093blByb3BlcnR5KGkpKQotICAgICAgICAg
ICAgICAgIHRva2VuW2ldID0gdmFsdWVbaV07Ci0gICAgfQotICAgIHJldHVybiB0b2tlbjsKLX0K
LQotLy8gVG9rZW5pemVzIHRoZSBzdHJpbmcgaW50byBUb2tlbnMgb2YgdHlwZXMgW3VybHMsIGZs
b2F0cywgaW50ZWdlcnMsIGtleXdvcmRzLCAiLCIsICIoIiwgIikiIGFuZCAiLiJdLgotZnVuY3Rp
b24gdG9rZW5pemVTdHJpbmcocykKLXsKLSAgICB2YXIgdG9rZW5pemVyID0gbmV3IFJlZ0V4cChb
Ci0gICAgICAgICJ1cmxcXChcXHMqKC4qPylcXHMqXFwpIiwgLy8gdXJsKCkgLSAxCi0gICAgICAg
ICIoKD86W1xcKy1dPylcXGQqXFwuXFxkKykiLCAvLyBmbG9hdHMgLSAyCi0gICAgICAgICIoKD86
W1xcKy1dPylcXGQrKSIsIC8vIGludGVnZXJzIC0gMwotICAgICAgICAiKFtcXHctXVtcXHdcXGQt
XSopIiwgLy8ga2V5d29yZHMgLSA0Ci0gICAgICAgICIoWyxcXC5cXChcXCldKSIgLy8gcHVuY3R1
YXRpb24gLSA1Ci0gICAgXS5qb2luKCJ8IiksICJnIik7Ci0KLSAgICB2YXIgbWF0Y2gsIHRva2Vu
cyA9IFtdOwotICAgIHdoaWxlIChtYXRjaCA9IHRva2VuaXplci5leGVjKHMpKSB7Ci0gICAgICAg
IGlmIChtYXRjaFsxXSAhPT0gdW5kZWZpbmVkKQotICAgICAgICAgICAgdG9rZW5zLnB1c2goY3Jl
YXRlVG9rZW4oInVybCIsIHt2YWx1ZTogbWF0Y2hbMV19KSk7Ci0gICAgICAgIGVsc2UgaWYgKG1h
dGNoWzJdICE9PSB1bmRlZmluZWQpCi0gICAgICAgICAgICB0b2tlbnMucHVzaChjcmVhdGVUb2tl
bigiZmxvYXQiLCB7dmFsdWU6IHBhcnNlRmxvYXQobWF0Y2hbMl0pfSkpOwotICAgICAgICBlbHNl
IGlmIChtYXRjaFszXSAhPT0gdW5kZWZpbmVkKQotICAgICAgICAgICAgdG9rZW5zLnB1c2goY3Jl
YXRlVG9rZW4oImludGVnZXIiLCB7dmFsdWU6IHBhcnNlSW50KG1hdGNoWzNdKX0pKTsKLSAgICAg
ICAgZWxzZSBpZiAobWF0Y2hbNF0gIT09IHVuZGVmaW5lZCkKLSAgICAgICAgICAgIHRva2Vucy5w
dXNoKGNyZWF0ZVRva2VuKCJrZXl3b3JkIiwge3ZhbHVlOiBtYXRjaFs0XX0pKTsKLSAgICAgICAg
ZWxzZSBpZiAobWF0Y2hbNV0gIT09IHVuZGVmaW5lZCkKLSAgICAgICAgICAgIHRva2Vucy5wdXNo
KGNyZWF0ZVRva2VuKG1hdGNoWzVdKSk7Ci0gICAgfQotICAgIHJldHVybiB0b2tlbnM7Ci19Ci0K
LS8vIENoZWNrcyBpZiB0aGUgdG9rZW4gaXMgYSBudW1iZXIuIENhbiBiZSB1c2VkIGluIGNvbWJp
bmF0aW9uIHdpdGggdGhlICJUb2tlbi5pc0EiIG1ldGhvZC4KLWZ1bmN0aW9uIG51bWJlcih0b2tl
bikKLXsKLSAgICByZXR1cm4gdG9rZW4udHlwZSA9PSAiZmxvYXQiIHx8IHRva2VuLnR5cGUgPT0g
ImludGVnZXIiOwotfQotCi0vLyBIZWxwZXIgY2xhc3MgdG8gaXRlcmF0ZSBvbiB0aGUgdG9rZW4g
c3RyZWFtLiBJdCB3aWxsIGFkZCBhbiAiZW5kIgotLy8gdG9rZW4gYXQgdGhlIGVuZCB0byBtYWtl
IGl0IGVhc2llciB0byB1c2UgdGhlICJhaGVhZCIgZnVuY3Rpb24KLS8vIHdpdGhvdXQgY2hlY2tp
bmcgaWYgaXQncyB0aGUgbGFzdCB0b2tlbiBpbiB0aGUgc3RyZWFtLgotZnVuY3Rpb24gVG9rZW5T
dHJlYW0odG9rZW5zKSB7Ci0gICAgdGhpcy50b2tlbnMgPSB0b2tlbnM7Ci0gICAgdGhpcy50b2tl
bnMucHVzaChuZXcgVG9rZW4oImVuZCIpKTsKLSAgICB0aGlzLnRva2VuSW5kZXggPSAwOwotfQot
Ci1Ub2tlblN0cmVhbS5wcm90b3R5cGUuY3VycmVudCA9IGZ1bmN0aW9uKCkgCi17IAotICAgIHJl
dHVybiB0aGlzLnRva2Vuc1t0aGlzLnRva2VuSW5kZXhdOyAKLX0KLQotVG9rZW5TdHJlYW0ucHJv
dG90eXBlLmFoZWFkID0gZnVuY3Rpb24oKSAKLXsKLSAgICByZXR1cm4gdGhpcy50b2tlbnNbdGhp
cy50b2tlbkluZGV4ICsgMV07IAotfQotCi0vLyBTa2lwcyB0aGUgY3VycmVudCB0b2tlbiBvbmx5
IGlmIGl0IG1hdGNoZXMgdGhlICJ0eXBlTWF0Y2hlciIuIE90aGVyd2lzZSBpdCB0aHJvd3MgYW4g
ZXJyb3IuCi1Ub2tlblN0cmVhbS5wcm90b3R5cGUuc2tpcCA9IGZ1bmN0aW9uKHR5cGVNYXRjaGVy
KQotewotICAgIGlmICghdHlwZU1hdGNoZXIgfHwgdGhpcy5jdXJyZW50KCkuaXNBKHR5cGVNYXRj
aGVyKSkgewotICAgICAgICB2YXIgdG9rZW4gPSB0aGlzLmN1cnJlbnQoKTsKLSAgICAgICAgKyt0
aGlzLnRva2VuSW5kZXg7Ci0gICAgICAgIHJldHVybiB0b2tlbjsKLSAgICB9Ci0gICAgdGhyb3cg
bmV3IEVycm9yKCJDYW5ub3QgdXNlICIgKyBKU09OLnN0cmluZ2lmeSh0eXBlTWF0Y2hlcikgKyAi
IHRvIHNraXAgb3ZlciAiICsgSlNPTi5zdHJpbmdpZnkodGhpcy5haGVhZCgpKSk7Ci19Ci0KLS8v
IFNraXBzIHRoZSBjdXJyZW50IHRva2VuLCBvbmx5IGlmIGl0IG1hdGNoZXMgdGhlICJ0eXBlTWF0
Y2hlciIuIE1ha2VzIGl0IGVhc3kgdG8gc2tpcCBvdmVyIGNvbW1hIHRva2Vucy4KLVRva2VuU3Ry
ZWFtLnByb3RvdHlwZS5za2lwSWZOZWVkZWQgPSBmdW5jdGlvbih0eXBlTWF0Y2hlcikKLXsKLSAg
ICBpZiAodGhpcy5haGVhZCgpICYmIHRoaXMuYWhlYWQoKS5pc0EodHlwZU1hdGNoZXIpKQotICAg
ICAgICArK3RoaXMudG9rZW5JbmRleDsKLX0KLQotLy8gQ3JlYXRlcyBhIG5ldyAiZnVuY3Rpb24i
IG5vZGUuIEl0IGV4cGVjdHMgdGhhdCB0aGUgY3VycmVudCB0b2tlbiBpcyB0aGUgZnVuY3Rpb24g
bmFtZS4KLWZ1bmN0aW9uIHBhcnNlRnVuY3Rpb24obSkKLXsKLSAgICB2YXIgZnVuY3Rpb25PYmpl
Y3QgPSB7Ci0gICAgICAgIHR5cGU6ICJmdW5jdGlvbiIsCi0gICAgICAgIG5hbWU6IG0uc2tpcCgp
LnZhbHVlCi0gICAgfTsKLSAgICBtLnNraXAoIigiKTsKLSAgICBmdW5jdGlvbk9iamVjdC5hcmd1
bWVudHMgPSBwYXJzZUxpc3QobSwgWyIpIiwgImVuZCJdKTsKLSAgICBtLnNraXAoIikiKTsKLSAg
ICByZXR1cm4gZnVuY3Rpb25PYmplY3Q7Ci19Ci0KLS8vIENyZWF0ZXMgYSBuZXcgInBhcmFtZXRl
ciIgbm9kZS4gSXQgZXhwZWN0cyB0aGF0IHRoZSBjdXJyZW50IHRva2VuIGlzIHRoZSBwYXJhbWV0
ZXIgbmFtZS4KLS8vIEl0IGNvbnN1bWVzIGV2ZXJ5dGhpbmcgYmVmb3JlIHRoZSBmb2xsb3dpbmcg
Y29tbWEuCi1mdW5jdGlvbiBwYXJzZVBhcmFtZXRlcihtKQotewotICAgIHZhciBmdW5jdGlvbk9i
amVjdCA9IHsKLSAgICAgICAgdHlwZTogInBhcmFtZXRlciIsCi0gICAgICAgIG5hbWU6IG0uc2tp
cCgpLnZhbHVlCi0gICAgfTsKLSAgICBmdW5jdGlvbk9iamVjdC52YWx1ZSA9IHBhcnNlTGlzdCht
LCBbIiwiLCAiZW5kIl0pOwotICAgIG0uc2tpcElmTmVlZGVkKCIsIik7Ci0gICAgcmV0dXJuIGZ1
bmN0aW9uT2JqZWN0OwotfQotCi0vLyBDb25zdW1lcyBhIGxpc3Qgb2YgdG9rZW5zIGJlZm9yZSBy
ZWFjaGluZyB0aGUgImVuZFRva2VuIiBhbmQgcmV0dXJucyBhbiBhcnJheSB3aXRoIGFsbCB0aGUg
cGFyc2VkIGl0ZW1zLgotLy8gTWFrZXMgdGhlIGZvbGxvd2luZyBhc3N1bXB0aW9uczoKLS8vIC0g
aWYgYSBrZXl3b3JkIGlzIGZvbGxvd2VkIGJ5ICIoIiB0aGVuIGl0IGlzIGEgc3RhcnQgb2YgZnVu
Y3Rpb24KLS8vIC0gaWYgYSBrZXl3b3JkIGlzIG5vdCBmb2xsb3dlZCBieSAiLCIgaXQgaXMgYSBw
YXJhbWV0ZXIKLS8vIEtleXdvcmRzIHRoYXQgZG8gbm90IG1hdGNoIGVpdGhlciBvZiB0aGUgcHJl
dmlvdXMgcnVsZXMgYW5kIHRva2VucyBsaWtlIG51bWJlciBhbmQgdXJsIGFyZSBqdXN0IGNsb25l
ZC4KLWZ1bmN0aW9uIHBhcnNlTGlzdChtLCBlbmRUb2tlbikKLXsKLSAgICB2YXIgcmVzdWx0ID0g
W10sIHRva2VuOwotICAgIHdoaWxlICgodG9rZW4gPSBtLmN1cnJlbnQoKSkgJiYgIXRva2VuLmlz
QShlbmRUb2tlbikpIHsKLSAgICAgICAgaWYgKHRva2VuLmlzQSgia2V5d29yZCIpKSB7Ci0gICAg
ICAgICAgICBpZiAobS5haGVhZCgpLmlzQSgiKCIpKQotICAgICAgICAgICAgICAgIHJlc3VsdC5w
dXNoKHBhcnNlRnVuY3Rpb24obSkpOwotICAgICAgICAgICAgZWxzZSBpZiAobS5haGVhZCgpLmlz
QSgiLCIsIGVuZFRva2VuKSkgewotICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsKLSAgICAg
ICAgICAgICAgICAgICAgdHlwZTogImtleXdvcmQiLCAKLSAgICAgICAgICAgICAgICAgICAgdmFs
dWU6IG0uc2tpcCgpLnZhbHVlCi0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB9IGVs
c2UKLSAgICAgICAgICAgICAgICByZXN1bHQucHVzaChwYXJzZVBhcmFtZXRlcihtKSk7Ci0gICAg
ICAgIH0gZWxzZSBpZiAodG9rZW4uaXNBKG51bWJlcikpIHsKLSAgICAgICAgICAgIHJlc3VsdC5w
dXNoKHsKLSAgICAgICAgICAgICAgICB0eXBlOiAibnVtYmVyIiwKLSAgICAgICAgICAgICAgICB2
YWx1ZTogbS5za2lwKCkudmFsdWUKLSAgICAgICAgICAgIH0pOwotICAgICAgICB9IGVsc2UgaWYg
KHRva2VuLmlzQSgidXJsIikpIHsKLSAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsKLSAgICAgICAg
ICAgICAgICB0eXBlOiAidXJsIiwKLSAgICAgICAgICAgICAgICB2YWx1ZTogbS5za2lwKCkudmFs
dWUKLSAgICAgICAgICAgIH0pOwotICAgICAgICB9IGVsc2UgaWYgKHRva2VuLmlzQSgiLCIpKQot
ICAgICAgICAgICAgbS5za2lwKCk7Ci0gICAgICAgIGVsc2UgCi0gICAgICAgICAgICB0aHJvdyAi
VW5leHBlY3RlZCB0b2tlbiAiICsgSlNPTi5zdHJpbmdpZnkodG9rZW4pICsgIiBpbiBhIGxpc3Qu
IjsKLSAgICB9Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQotZnVuY3Rpb24gdG9rZW5zVG9WYWx1
ZXModG9rZW5zKQotewotICAgIHZhciBtID0gbmV3IFRva2VuU3RyZWFtKHRva2Vucyk7Ci0gICAg
cmV0dXJuIHBhcnNlTGlzdChtLCAiZW5kIik7Ci19Ci0KLS8vIEV4dHJhY3RzIGEgcGFyYW1ldGVy
cyBhcnJheSBmcm9tIHRoZSBwYXJhbWV0ZXJzIHN0cmluZyBvZiB0aGUgY3VzdG9tIGZpbHRlciBm
dW5jdGlvbi4KLWZ1bmN0aW9uIHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhzKQotewotICAg
IHJldHVybiB0b2tlbnNUb1ZhbHVlcyh0b2tlbml6ZVN0cmluZyhzKSk7Ci19Ci0KLS8vIE5lZWQg
dG8gcmVtb3ZlIHRoZSBiYXNlIFVSTCB0byBhdm9pZCBoYXZpbmcgbG9jYWwgcGF0aHMgaW4gdGhl
IGV4cGVjdGVkIHJlc3VsdHMuCi1mdW5jdGlvbiByZW1vdmVCYXNlVVJMKHNyYykgewotICAgIHZh
ciB1cmxSZWdleHAgPSAvdXJsXCgoW15cKV0qKVwpL2c7Ci0gICAgcmV0dXJuIHNyYy5yZXBsYWNl
KHVybFJlZ2V4cCwgZnVuY3Rpb24obWF0Y2gsIHVybCkgewotICAgICAgICByZXR1cm4gInVybCgi
ICsgdXJsLnN1YnN0cih1cmwubGFzdEluZGV4T2YoIi8iKSArIDEpICsgIikiOwotICAgIH0pOwot
fQotCi0vLyBQYXJzZXMgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIGN1c3RvbSBmaWx0ZXIgZnVuY3Rp
b24gYW5kIHJldHVybnMgaXQgdXNpbmcgdGhlIGZvbGxvd2luZyBvcmRlcjoKLS8vIC0gSWYgcGFy
YW1ldGVycyBoYXZlIGRpZmZlcmVudCB0eXBlcyAoaWUuIHVybCwgbnVtYmVyLCBuYW1lZCBwYXJh
bWV0ZXIpLCB0aGUgYWxwaGFiZXRpY2FsIG9yZGVyIG9mIHRoZSAidHlwZSIgaXMgdXNlZC4KLS8v
IC0gSWYgcGFyYW1ldGVycyBhcmUgb2YgdHlwZSAicGFyYW1ldGVyIiB0aGUgYWxwaGFiZXRpY2Fs
IG9yZGVyIG9mIHRoZSBwYXJhbWV0ZXIgbmFtZXMgaXMgdXNlZC4KLS8vIC0gSWYgcGFyYW1ldGVy
cyBhcmUgb2Ygb3RoZXIgdHlwZXMsIHRoZW4gdGhlIHZhbHVlIGlzIHVzZWQgdG8gb3JkZXIgdGhl
bSBhbHBoYWJldGljYWwuCi0vLyBUaGUgb3JkZXIgaXMgaW1wb3J0YW50IHRvIG1ha2UgaXQgZWFz
eSB0byBjb21wYXJlIHR3byBjdXN0b20gZmlsdGVycywgdGhhdCBoYXZlIGV4YWN0bHkgdGhlIHNh
bWUgcGFyYW1ldGVycywgCi0vLyBidXQgd2l0aCBwb3RlbnRpYWxseSBkaWZmZXJlbnQgIm5hbWVk
IHBhcmFtZXRlciIgdmFsdWVzLgotZnVuY3Rpb24gZ2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhz
KSAKLXsKLSAgICByZXR1cm4gcGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzKHJlbW92ZUJhc2VV
UkwocykpLnNvcnQoZnVuY3Rpb24oYSwgYikgeyAKLSAgICAgICAgaWYgKGEudHlwZSAhPSBiLnR5
cGUpIAotICAgICAgICAgICAgcmV0dXJuIGEudHlwZS5sb2NhbGVDb21wYXJlKGIudHlwZSk7Ci0g
ICAgICAgIGlmIChhLnR5cGUgPT0gInBhcmFtZXRlciIpCi0gICAgICAgICAgICByZXR1cm4gYS5u
YW1lLmxvY2FsZUNvbXBhcmUoYi5uYW1lKTsKLSAgICAgICAgcmV0dXJuIGEudmFsdWUudG9TdHJp
bmcoKS5sb2NhbGVDb21wYXJlKGIudmFsdWUudG9TdHJpbmcoKSk7Ci0gICAgfSk7Ci19CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ZyYWdtZW50LWNvbG9y
LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvci5m
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzFiZDcyNy4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ZyYWdtZW50LWNvbG9yLmZzCisrKyAv
ZGV2L251bGwKQEAgLTEsNyArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVuaWZv
cm0gZmxvYXQgY29sb3JBcnJheVs0XTsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9GcmFnQ29s
b3IgPSB2ZWM0KGNvbG9yQXJyYXlbMF0sIGNvbG9yQXJyYXlbMV0sIGNvbG9yQXJyYXlbMl0sIGNv
bG9yQXJyYXlbM10pOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9mcmFnbWVudC1jb2xvcnMuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL2ZyYWdtZW50LWNvbG9ycy5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWNjMGUzYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2ZyYWdtZW50LWNvbG9ycy5mcworKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLXByZWNp
c2lvbiBtZWRpdW1wIGZsb2F0OwotdW5pZm9ybSB2ZWM0IGMxOwotdW5pZm9ybSB2ZWM0IGMyOwot
dW5pZm9ybSB2ZWM0IGMzOwotdW5pZm9ybSB2ZWM0IGM0OwotdW5pZm9ybSB2ZWM0IGM1OwotdW5p
Zm9ybSB2ZWM0IGM2OwotCi12b2lkIG1haW4oKQotewotCWlmIChjMSA9PSBjMiAmJiBjMSA9PSBj
MyAmJiBjMSA9PSBjNCAmJiBjMSA9PSBjNSAmJiBjMSA9PSBjNikKLSAgICAJZ2xfRnJhZ0NvbG9y
ID0gYzE7Ci0gICAgZWxzZSAKLSAgICAJZ2xfRnJhZ0NvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4w
LCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9mcmFnbWVudC1tYXROLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9m
cmFnbWVudC1tYXROLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZmQzMTE2Li4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvZnJhZ21lbnQt
bWF0Ti5mcworKysgL2Rldi9udWxsCkBAIC0xLDIzICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1w
IGZsb2F0OwotdW5pZm9ybSBtYXQyIG0xOwotdW5pZm9ybSBtYXQzIG0yOwotdW5pZm9ybSBtYXQ0
IG0zOwotCi12b2lkIG1haW4oKQotewotICAgIC8vIFRlc3RpbmcgaW5kaXZpZHVhbCBlbnRyaWVz
IHRvIGNoZWNrIGNvcnJlY3Qgb3JkZXIuCi0gICAgaWYgKG0xWzBdWzBdID09IDEuICYmIG0xWzBd
WzFdID09IDEuCi0gICAgICAgICYmIG0xWzFdWzBdID09IDAuICYmIG0xWzFdWzFdID09IDAuCi0g
ICAgICAgICYmCi0gICAgICAgIG0yWzBdWzBdID09IDEuICYmIG0yWzBdWzFdID09IDAuICYmIG0y
WzBdWzJdID09IDEuCi0gICAgICAgICYmIG0yWzFdWzBdID09IDAuICYmIG0yWzFdWzFdID09IDEu
ICYmIG0yWzFdWzJdID09IDEuCi0gICAgICAgICYmIG0yWzJdWzBdID09IDAuICYmIG0yWzJdWzFd
ID09IDEuICYmIG0yWzJdWzJdID09IDAuCi0gICAgICAgICYmCi0gICAgICAgIG0zWzBdWzBdID09
IDEuICYmIG0zWzBdWzFdID09IDEuICYmIG0zWzBdWzJdID09IDAuICYmIG0zWzBdWzNdID09IDAu
Ci0gICAgICAgICYmIG0zWzFdWzBdID09IDAuICYmIG0zWzFdWzFdID09IDEuICYmIG0zWzFdWzJd
ID09IDEuICYmIG0zWzFdWzNdID09IDAuCi0gICAgICAgICYmIG0zWzJdWzBdID09IDEuICYmIG0z
WzJdWzFdID09IDAuICYmIG0zWzJdWzJdID09IDAuICYmIG0zWzJdWzNdID09IDEuCi0gICAgICAg
ICYmIG0zWzNdWzBdID09IDEuICYmIG0zWzNdWzFdID09IDEuICYmIG0zWzNdWzJdID09IDEuICYm
IG0zWzNdWzNdID09IDEuKQotICAgICAgICBnbF9GcmFnQ29sb3IgPSB2ZWM0KDAuMCwgMS4wLCAw
LjAsIDEuMCk7Ci0gICAgZWxzZSAKLSAgICAgICAgZ2xfRnJhZ0NvbG9yID0gdmVjNCgxLjAsIDAu
MCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9ncmF5c2NhbGUtY29sb3ItbWF0cml4LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9ncmF5c2NhbGUtY29sb3ItbWF0cml4LmZzCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBiMDNkODVkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvZ3JheXNjYWxlLWNvbG9yLW1hdHJpeC5mcworKysgL2Rldi9udWxsCkBA
IC0xLDkgKzAsMCBAQAotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfQ29sb3JNYXRyaXggPSBtYXQ0
KAotICAgICAgICAwLjMzMywgMC4zMzMsIDAuMzMzLCAwLjAwMCwKLSAgICAgICAgMC4zMzMsIDAu
MzMzLCAwLjMzMywgMC4wMDAsCi0gICAgICAgIDAuMzMzLCAwLjMzMywgMC4zMzMsIDAuMDAwLAot
ICAgICAgICAwLjAwMCwgMC4wMDAsIDAuMDAwLCAxLjAwMAotICAgICk7Ci19CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtYS10cmlhbmdsZS1j
b29yZC13aXRoLWF0dGFjaGVkLW1lc2gudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL2ludmFsaWQtYS10cmlhbmdsZS1jb29yZC13aXRoLWF0dGFjaGVkLW1lc2gudnMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVjNThjOGUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLWEtdHJpYW5nbGUtY29vcmQtd2l0
aC1hdHRhY2hlZC1tZXNoLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gVGhp
cyBzaGFkZXIgc2hvdWxkIG5vdCBleGVjdXRlIGlmIHRoZSBtZXNoIGlzIGF0dGFjaGVkIGJlY2F1
c2UgYV90cmlhbmdsZUNvb3JkIGlzIG9ubHkgYXZhaWxhYmxlIGluIGRldGFjaGVkIG1lc2hzZXMu
Ci0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjMyBhX3RyaWFuZ2xl
Q29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVj
dGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVj
dGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtY3VzdG9tLWF0dHJpYnV0ZS52cyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzZWI2YjFlLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZz
CisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyByZWxh
dGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJlY2F1
c2UgbXlfYXR0cmlidXRlIGlzIG5vdCBvbmUgb2YgdGhlIGJ1aWx0LWluIGF0dHJpYnV0ZXMuCi0K
LXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgZmxvYXQgbXlfYXR0cmlidXRl
OwotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25N
YXRyaXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25N
YXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXNoYWRlci52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDNjMWViYmIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9pbnZhbGlkLXNoYWRlci52cworKysgL2Rldi9udWxsCkBAIC0xLDIgKzAsMCBAQAotVGhp
cyBpcyBub3QgYSByZWFsIHZlcnRleCBzaGFkZXIuIEl0IGlzIGp1c3QgaW52YWxpZCBzaGFkZXIg
Y29kZS4KLUl0IGlzIHVzZWQgdG8gdGVzdCB0aGF0IHRoZSBmaWx0ZXIgaXMgbm90IGRyYXduIHdo
ZW4gdGhlIHNoYWRlciBpcyBpbnZhbGlkLgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBl
LWEtbWVzaC1jb29yZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52
YWxpZC10eXBlLWEtbWVzaC1jb29yZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDgyNDk3Ny4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2ludmFsaWQtdHlwZS1hLW1lc2gtY29vcmQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCww
IEBACi0vLyBJZiB0aGlzIHNoYWRlcidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20g
ZmlsdGVyIGRvZXMgbm90IGV4ZWN1dGUgYmVjYXVzZSBhX21lc2hDb29yZCdzIHR5cGUgaXMgaW52
YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIGFfbWVzaENvb3JkIHNob3Vs
ZCBiZSBhIHZlYzIsIG5vdCBhIGZsb2F0LgotYXR0cmlidXRlIGZsb2F0IGFfbWVzaENvb3JkOwot
YXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLQotdW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1h
dHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1h
dHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXBvc2l0aW9uLnZzIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS1wb3NpdGlvbi52cwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNTE1NGVhNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXBvc2l0aW9uLnZzCisrKyAvZGV2
L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyByZWxhdGVkIHRlc3Qg
cGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJlY2F1c2UgYV9wb3Np
dGlvbidzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8v
IGFfcG9zaXRpb24gc2hvdWxkIGJlIGEgdmVjNCwgbm90IGEgdmVjMy4KLWF0dHJpYnV0ZSB2ZWMz
IGFfcG9zaXRpb247Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotCi12b2lkIG1h
aW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogdmVjNChhX3Bv
c2l0aW9uLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9pbnZhbGlkLXR5cGUtYS10ZXgtY29vcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRleC1jb29yZC52cwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMjQyOWM3MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRleC1jb29yZC52cworKysgL2Rldi9u
dWxsCkBAIC0xLDEzICswLDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBh
c3NlcywgdGhlIGN1c3RvbSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIGFfdGV4Q29v
cmQncyB0eXBlIGlzIGludmFsaWQuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyBh
X21lc2hDb29yZCBzaG91bGQgYmUgYSB2ZWMyLCBub3QgYW4gdmVjNC4KLWF0dHJpYnV0ZSB2ZWM0
IGFfdGV4Q29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVf
cHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRyaWFuZ2xlLWNvb3JkLnZz
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS10cmlh
bmdsZS1jb29yZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmVkNjYyOS4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlw
ZS1hLXRyaWFuZ2xlLWNvb3JkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLy8g
SWYgdGhpcyBzaGFkZXIncyByZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBk
b2VzIG5vdCBleGVjdXRlIGJlY2F1c2UgYV90cmlhbmdsZUNvb3JkJ3MgdHlwZSBpcyBpbnZhbGlk
LgotLy8gVGhlIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGRlZmluZSBhIGRldGFjaGVkIG1lc2ggYmVj
YXVzZSBhX3RyaWFuZ2xlQ29vcmQgaXMgb25seSBhdmFpbGFibGUgd2l0aCBhIGRldGFjaGVkIG1l
c2guCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyBhX3RyaWFuZ2xlQ29vcmQgc2hv
dWxkIGJlIGEgdmVjMywgbm90IGEgdmVjMi4KLWF0dHJpYnV0ZSB2ZWMyIGFfdHJpYW5nbGVDb29y
ZDsKLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9u
TWF0cml4OwotCi12b2lkIG1haW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9u
TWF0cml4ICogYV9wb3NpdGlvbjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1hcnJheS52cyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1hcnJheS52
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjEzZTc5ZS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hdHRyaWJ1dGUt
YXJyYXkudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi0vLyBJZiB0aGlzIHNoYWRl
cidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20gZmlsdGVyIGRvZXMgbm90IGV4ZWN1
dGUgYmVjYXVzZSBhX3Bvc2l0aW9uJ3MgdHlwZSBpcyBpbnZhbGlkLgotCi1wcmVjaXNpb24gbWVk
aXVtcCBmbG9hdDsKLQotLy8gYV9wb3NpdGlvbiBzaG91bGQgYmUgYSB2ZWM0LCBub3QgYSB2ZWM0
IGFycmF5LgotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvblsxXTsKLXVuaWZvcm0gbWF0NCB1X3By
b2plY3Rpb25NYXRyaXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3By
b2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0aW9uWzBdOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJveC5mcyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1ib3gu
ZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQxY2I2N2EuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJv
eC5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3Mg
cmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3RvbSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBi
ZWNhdXNlIHVfbWVzaEJveCdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAg
ZmxvYXQ7Ci0KLS8vIHVfbWVzaEJveCBzaG91bGQgYmUgYSB2ZWM0LCBub3QgYSB2ZWMzLgotdW5p
Zm9ybSB2ZWMzIHVfbWVzaEJveDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfTWl4Q29sb3Ig
PSB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LW1lc2gtc2l6ZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1zaXplLmZz
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYjA4MGUwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1zaXpl
LmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyBy
ZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJl
Y2F1c2UgdV9tZXNoU2l6ZSdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAg
ZmxvYXQ7Ci0KLS8vIHVfbWVzaFNpemUgc2hvdWxkIGJlIGEgdmVjMiwgbm90IGEgZmxvYXQuCi11
bmlmb3JtIGZsb2F0IHVfbWVzaFNpemU7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgY3NzX01peENv
bG9yID0gdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJp
eC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUt
cHJvamVjdGlvbi1tYXRyaXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI1ZmIx
MTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZh
bGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJpeC5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICsw
LDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3Rv
bSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIHVfcHJvamVjdGlvbk1hdHJpeCdzIHR5
cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfcHJvamVj
dGlvbk1hdHJpeCBzaG91bGQgYmUgYSBtYXQ0LCBub3QgYSBtYXQzLgotdW5pZm9ybSBtYXQzIHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfTWl4Q29sb3IgPSB2
ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LXRleHR1cmUtc2l6ZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGV4dHVyZS1zaXpl
LmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlMDU2OGYwLi4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGV4dHVy
ZS1zaXplLmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFk
ZXIncyByZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVj
dXRlIGJlY2F1c2UgdV90ZXh0dXJlU2l6ZSdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9u
IG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfdGV4dHVyZVNpemUgc2hvdWxkIGJlIGEgdmVjMiwgbm90
IGEgdmVjMy4KLXVuaWZvcm0gdmVjMyB1X3RleHR1cmVTaXplOwotCi12b2lkIG1haW4oKQotewot
ICAgIGNzc19NaXhDb2xvciA9IHZlYzQoMS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGls
ZS1zaXplLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5
cGUtdS10aWxlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE3ZGEzZTgu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlk
LXR5cGUtdS10aWxlLXNpemUuZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0vLyBJ
ZiB0aGlzIHNoYWRlcidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20gZmlsdGVyIGRv
ZXMgbm90IGV4ZWN1dGUgYmVjYXVzZSB1X3RpbGVTaXplJ3MgdHlwZSBpcyBpbnZhbGlkLgotCi1w
cmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotLy8gdV90aWxlU2l6ZSBzaG91bGQgYmUgYSB2ZWMy
LCBub3QgYSBtYXQyLgotdW5pZm9ybSBtYXQyIHVfdGlsZVNpemU7Ci0KLXZvaWQgbWFpbigpCi17
Ci0gICAgY3NzX01peENvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdW5p
Zm9ybS1hcnJheS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxp
ZC10eXBlLXVuaWZvcm0tYXJyYXkuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYx
YzM5OWQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9p
bnZhbGlkLXR5cGUtdW5pZm9ybS1hcnJheS5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAg
QEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3RvbSBm
aWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIHVfbWVzaEJveCdzIHR5cGUgaXMgaW52YWxp
ZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfbWVzaEJveCBzaG91bGQgYmUg
YSB2ZWM0LCBub3QgYW4gYXJyYXkgb2YgdmVjNC4KLXVuaWZvcm0gdmVjNCB1X21lc2hCb3hbMV07
Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgY3NzX01peENvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4w
LCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9taXgtY29sb3IuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL21peC1j
b2xvci5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDJmZTYzNC4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL21peC1jb2xvci5mcworKysg
L2Rldi9udWxsCkBAIC0xLDcgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci11bmlm
b3JtIHZlYzQgbWl4X2NvbG9yOwotCi12b2lkIG1haW4oKQotewotICAgIGNzc19NaXhDb2xvciA9
IG1peF9jb2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL3Bhc3MtdGV4LWNvb3JkLnZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0ZmZk
MjdiLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvcGFz
cy10ZXgtY29vcmQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi1wcmVjaXNpb24g
bWVkaXVtcCBmbG9hdDsKLQotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLWF0dHJpYnV0ZSB2
ZWMyIGFfdGV4Q29vcmQ7Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdmFyeWlu
ZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgdl90ZXhDb29yZCA9IGFf
dGV4Q29vcmQ7Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0
aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9z
YW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXguZnMKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNlZjk4ODUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1p
eC5mcworKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLS8vIFRoaXMgdGVzdCBjaGVja3Mg
dGhhdCBhIHNoYWRlciBjYW5ub3QgcmVhZCBmcm9tIHRoZSBpbnRlcm5hbCAiY3NzX3VfdGV4dHVy
ZSIgc2FtcGxlciwgd2hpY2ggcmVmZXJlbmNlcyB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLS8v
IFRoaXMgc2hhZGVyIGlzIHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlvbiBhbmQg
c2hvdWxkIGZhaWwgdG8gdmFsaWRhdGUgYmVjYXVzZSBpdCBkZWZpbmVzICJjc3NfdV90ZXh0dXJl
IiwKLS8vIHVzaW5nIHRoZSByZXN0cmljdGVkICJjc3NfIiBwcmVmaXguCi0KLXByZWNpc2lvbiBt
ZWRpdW1wIGZsb2F0OwotCi11bmlmb3JtIHNhbXBsZXIyRCBjc3NfdV90ZXh0dXJlOwotCi12YXJ5
aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBtYWluKCkKLXsKLQkvLyBUcnkgdG8gc2FtcGxl
IHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZlYzQgY29sb3IgPSB0ZXh0dXJlMkQoY3NzX3Vf
dGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBTd2FwIHRoZSByZWQgYW5kIGdyZWVuIGNoYW5u
ZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0KLQljc3NfTWl4Q29sb3IgPSBjb2xvcjsKLX0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLWRl
ZmluZWQtY3NzLXUtdGV4dHVyZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVyZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNTg0NmQxNy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL3NhbXBsZS1kZWZpbmVkLWNzcy11LXRleHR1cmUuZnMKKysrIC9kZXYvbnVsbApA
QCAtMSwyMCArMCwwIEBACi0vLyBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYSBzaGFkZXIgY2Fubm90
IHJlYWQgZnJvbSB0aGUgaW50ZXJuYWwgImNzc191X3RleHR1cmUiIHNhbXBsZXIsIHdoaWNoIHJl
ZmVyZW5jZXMgdGhlIERPTSBlbGVtZW50IHRleHR1cmUuCi0vLyBUaGlzIHNoYWRlciBzaG91bGQg
ZmFpbCB0byB2YWxpZGF0ZSBiZWNhdXNlIGl0IGRlZmluZXMgImNzc191X3RleHR1cmUiLCB3aGlj
aCBzaG91bGQgYmUgYW4gdW5ib3VuZCBzYW1wbGVyLAotLy8gc2luY2UgdGhpcyBzaGFkZXIgaXMg
bm90IHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlvbi4KLQotcHJlY2lzaW9uIG1l
ZGl1bXAgZmxvYXQ7Ci0KLXVuaWZvcm0gc2FtcGxlcjJEIGNzc191X3RleHR1cmU7Ci0KLXZhcnlp
bmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQotewotCS8vIFRyeSB0byBzYW1wbGUg
dGhlIERPTSBlbGVtZW50IHRleHR1cmUuCi0JdmVjNCBjb2xvciA9IHRleHR1cmUyRChjc3NfdV90
ZXh0dXJlLCB2X3RleENvb3JkKTsKLQotCS8vIFN3YXAgdGhlIHJlZCBhbmQgZ3JlZW4gY2hhbm5l
bHMuCi0JY29sb3IucmcgPSBjb2xvci5ncjsKLQotCWdsX0ZyYWdDb2xvciA9IGNvbG9yOwotfQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtdS10
ZXh0dXJlLW1peC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxl
LXUtdGV4dHVyZS1taXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ1ZjM1MjIu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUt
dS10ZXh0dXJlLW1peC5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAKLS8vIFRoaXMg
dGVzdCBjaGVja3MgdGhhdCBhIHNoYWRlciB3aXRoIGFuIHVuYm91bmQgc2FtcGxlciBpcyBub3Qg
cGVybWl0dGVkIHRvIGV4ZWN1dGUuCi0vLyBUaGlzIHNoYWRlciBpcyByZWZlcmVuY2VkIGZyb20g
dGhlIENTUyBtaXggZnVuY3Rpb24gYW5kIHdyaXRlcyBpdHMgb3V0cHV0IHRvIGNzc19NaXhDb2xv
ci4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXVuaWZvcm0gc2FtcGxlcjJEIHVfdGV4
dHVyZTsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0JLy8g
VHJ5IHRvIHNhbXBsZSB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLQl2ZWM0IGNvbG9yID0gdGV4
dHVyZTJEKHVfdGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBTd2FwIHRoZSByZWQgYW5kIGdy
ZWVuIGNoYW5uZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0KLQljc3NfTWl4Q29sb3IgPSBj
b2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
c2FtcGxlLXUtdGV4dHVyZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
c2FtcGxlLXUtdGV4dHVyZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2MwMmI4
NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3NhbXBs
ZS11LXRleHR1cmUuZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vLyBUaGlzIHRl
c3QgY2hlY2tzIHRoYXQgYSBzaGFkZXIgd2l0aCBhbiB1bmJvdW5kIHNhbXBsZXIgaXMgbm90IHBl
cm1pdHRlZCB0byBleGVjdXRlLgotLy8gVGhpcyBzaGFkZXIgaXMgbm90IHJlZmVyZW5jZWQgZnJv
bSB0aGUgQ1NTIG1peCBmdW5jdGlvbiBhbmQgd3JpdGVzIGl0cyBvdXRwdXQgdG8gZ2xfRnJhZ0Nv
bG9yLgotCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdW5pZm9ybSBzYW1wbGVyMkQgdV90
ZXh0dXJlOwotCi12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBtYWluKCkKLXsKLQkv
LyBUcnkgdG8gc2FtcGxlIHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZlYzQgY29sb3IgPSB0
ZXh0dXJlMkQodV90ZXh0dXJlLCB2X3RleENvb3JkKTsKLQotCS8vIFN3YXAgdGhlIHJlZCBhbmQg
Z3JlZW4gY2hhbm5lbHMuCi0JY29sb3IucmcgPSBjb2xvci5ncjsKLQotCWdsX0ZyYWdDb2xvciA9
IGNvbG9yOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4LmZzIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4LmZz
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYjk2NmIwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10
ZXh0dXJlLW1peC5mcworKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLS8vIFRoaXMgdGVz
dCBjaGVja3MgdGhhdCBhIHNoYWRlciBjYW5ub3QgcmVhZCBmcm9tIHRoZSBpbnRlcm5hbCAiY3Nz
X3VfdGV4dHVyZSIgc2FtcGxlciwgd2hpY2ggcmVmZXJlbmNlcyB0aGUgRE9NIGVsZW1lbnQgdGV4
dHVyZS4KLS8vIFRoaXMgc2hhZGVyIHNob3VsZCBmYWlsIHRvIHZhbGlkYXRlIGJlY2F1c2UgImNz
c191X3RleHR1cmUiIHNob3VsZCBiZSB1bmRlZmluZWQgdG8gdGhpcyBjb2RlLgotCi1wcmVjaXNp
b24gbWVkaXVtcCBmbG9hdDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFp
bigpCi17Ci0JLy8gVHJ5IHRvIHNhbXBsZSB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLQl2ZWM0
IGNvbG9yID0gdGV4dHVyZTJEKGNzc191X3RleHR1cmUsIHZfdGV4Q29vcmQpOwotCi0JLy8gU3dh
cCB0aGUgcmVkIGFuZCBncmVlbiBjaGFubmVscy4KLQljb2xvci5yZyA9IGNvbG9yLmdyOwotCi0J
Y3NzX01peENvbG9yID0gY29sb3I7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10ZXh0
dXJlLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMWUyZjJhLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1j
c3MtdS10ZXh0dXJlLmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTcgKzAsMCBAQAotLy8gVGhpcyB0
ZXN0IGNoZWNrcyB0aGF0IGEgc2hhZGVyIGNhbm5vdCByZWFkIGZyb20gdGhlIGludGVybmFsICJj
c3NfdV90ZXh0dXJlIiBzYW1wbGVyLCB3aGljaCByZWZlcmVuY2VzIHRoZSBET00gZWxlbWVudCB0
ZXh0dXJlLgotLy8gVGhpcyBzaGFkZXIgc2hvdWxkIGZhaWwgdG8gdmFsaWRhdGUgYmVjYXVzZSAi
Y3NzX3VfdGV4dHVyZSIgc2hvdWxkIGJlIHVuZGVmaW5lZCB0byB0aGlzIGNvZGUuCi0KLXByZWNp
c2lvbiBtZWRpdW1wIGZsb2F0OwotCi12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBt
YWluKCkKLXsKLQkvLyBUcnkgdG8gc2FtcGxlIHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZl
YzQgY29sb3IgPSB0ZXh0dXJlMkQoY3NzX3VfdGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBT
d2FwIHRoZSByZWQgYW5kIGdyZWVuIGNoYW5uZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0K
LQlnbF9GcmFnQ29sb3IgPSBjb2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcwpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2E4ZDA2OC4uMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1ib3gtaXMtdW5pdC1zcXVhcmUu
ZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vLyBUZXN0IHdoZXRoZXIgdV9tZXNo
Qm94IGlzIGNvcnJlY3RseSBzZXQ7IGNoYW5nZSBmcmFnbWVudCBjb2xvciB0byBncmVlbiBpZiB5
ZXMuCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVuaWZvcm0gdmVjNCB1X21lc2hCb3g7Ci0K
LWJvb2wgYXJlRmxvYXRzRXF1YWwoZmxvYXQgYSwgZmxvYXQgYikKLXsKLSAgICBjb25zdCBmbG9h
dCBlcHNpbG9uID0gMC4wMDE7Ci0gICAgcmV0dXJuIChhID4gKGIgLSBlcHNpbG9uKSkgJiYgKGEg
PCAoYiArIGVwc2lsb24pKTsKLX0KLQotYm9vbCBhcmVWZWN0b3JzRXF1YWwodmVjNCBhLCB2ZWM0
IGIpCi17Ci0gICAgcmV0dXJuIGFyZUZsb2F0c0VxdWFsKGEueCwgYi54KSAmJiBhcmVGbG9hdHNF
cXVhbChhLnksIGIueSkgJiYgYXJlRmxvYXRzRXF1YWwoYS56LCBiLnopICYmIGFyZUZsb2F0c0Vx
dWFsKGEudywgYi53KTsKLX0KLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9GcmFnQ29sb3IgPSBh
cmVWZWN0b3JzRXF1YWwodV9tZXNoQm94LCB2ZWM0KC0wLjUsIC0wLjUsIDEuMCwgMS4wKSkgPyB2
ZWM0KDAuMCwgMS4wLCAwLjAsIDEuMCkgOiB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1zaXpl
LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LW1lc2gtc2l6ZS5mcwpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjU1Mjc3NC4uMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1zaXplLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsMTkgKzAsMCBAQAotLy8gVGVzdCB3aGV0aGVyIHVfbWVzaFNpemUgaXMgY29ycmVj
dGx5IHNldDsgY2hhbmdlIGZyYWdtZW50IHRvIGNvbG9yIGdyZWVuIGlmIHllcy4KLXByZWNpc2lv
biBtZWRpdW1wIGZsb2F0OwotdW5pZm9ybSB2ZWMyIHVfbWVzaFNpemU7Ci0KLWJvb2wgYXJlRmxv
YXRzRXF1YWwoZmxvYXQgYSwgZmxvYXQgYikKLXsKLSAgICBjb25zdCBmbG9hdCBlcHNpbG9uID0g
MC4wMDE7Ci0gICAgcmV0dXJuIChhID4gKGIgLSBlcHNpbG9uKSkgJiYgKGEgPCAoYiArIGVwc2ls
b24pKTsKLX0KLQotYm9vbCBhcmVWZWN0b3JzRXF1YWwodmVjMiBhLCB2ZWMyIGIpCi17Ci0gICAg
cmV0dXJuIGFyZUZsb2F0c0VxdWFsKGEueCwgYi54KSAmJiBhcmVGbG9hdHNFcXVhbChhLnksIGIu
eSk7Ci19Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfRnJhZ0NvbG9yID0gYXJlVmVjdG9yc0Vx
dWFsKHVfbWVzaFNpemUsIHZlYzIoMTAuMCwgMjAuMCkpID8gdmVjNCgwLjAsIDEuMCwgMC4wLCAx
LjApIDogdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LXRleHR1cmUtc2l6ZS5mcyBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdS10ZXh0dXJlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDE3NTE1ZGYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL3Jlc291cmNlcy91LXRleHR1cmUtc2l6ZS5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5
ICswLDAgQEAKLS8vIFRlc3Qgd2hldGhlciB1X3RleHR1cmVTaXplIGlzIGNvcnJlY3RseSBzZXQ7
IGNoYW5nZSBmcmFnbWVudCBjb2xvciB0byBncmVlbiBpZiB5ZXMuCi1wcmVjaXNpb24gbWVkaXVt
cCBmbG9hdDsKLXVuaWZvcm0gdmVjMiB1X3RleHR1cmVTaXplOwotCi1ib29sIGFyZUZsb2F0c0Vx
dWFsKGZsb2F0IGEsIGZsb2F0IGIpCi17Ci0gICAgY29uc3QgZmxvYXQgZXBzaWxvbiA9IDAuMDAx
OwotICAgIHJldHVybiAoYSA+IChiIC0gZXBzaWxvbikpICYmIChhIDwgKGIgKyBlcHNpbG9uKSk7
Ci19Ci0KLWJvb2wgYXJlVmVjdG9yc0VxdWFsKHZlYzIgYSwgdmVjMiBiKQotewotICAgIHJldHVy
biBhcmVGbG9hdHNFcXVhbChhLngsIGIueCkgJiYgYXJlRmxvYXRzRXF1YWwoYS55LCBiLnkpOwot
fQotCi12b2lkIG1haW4oKQotewotICAgIGdsX0ZyYWdDb2xvciA9IGFyZVZlY3RvcnNFcXVhbCh1
X3RleHR1cmVTaXplLCB2ZWMyKDEwMC4wLCAxMDAuMCkpID8gdmVjNCgwLjAsIDEuMCwgMC4wLCAx
LjApIDogdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LXRpbGUtc2l6ZS5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvdS10aWxlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDkzNWUzNDAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L3Jlc291cmNlcy91LXRpbGUtc2l6ZS5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAK
LS8vIFRlc3Qgd2hldGhlciB1X3RpbGVTaXplIGlzIGNvcnJlY3RseSBzZXQ7IGNoYW5nZSBmcmFn
bWVudCBjb2xvciB0byBncmVlbiBpZiB5ZXMuCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVu
aWZvcm0gdmVjMiB1X3RpbGVTaXplOwotCi1ib29sIGFyZUZsb2F0c0VxdWFsKGZsb2F0IGEsIGZs
b2F0IGIpCi17Ci0gICAgY29uc3QgZmxvYXQgZXBzaWxvbiA9IDAuMDAxOwotICAgIHJldHVybiAo
YSA+IChiIC0gZXBzaWxvbikpICYmIChhIDwgKGIgKyBlcHNpbG9uKSk7Ci19Ci0KLWJvb2wgYXJl
VmVjdG9yc0VxdWFsKHZlYzIgYSwgdmVjMiBiKQotewotICAgIHJldHVybiBhcmVGbG9hdHNFcXVh
bChhLngsIGIueCkgJiYgYXJlRmxvYXRzRXF1YWwoYS55LCBiLnkpOwotfQotCi12b2lkIG1haW4o
KQotewotICAgIGdsX0ZyYWdDb2xvciA9IGFyZVZlY3RvcnNFcXVhbCh1X3RpbGVTaXplLCB2ZWMy
KDEuMCAvIDEwLjAsIDEuMCAvIDIwLjApKSA/IHZlYzQoMC4wLCAxLjAsIDAuMCwgMS4wKSA6IHZl
YzQoMS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdW5hdmFpbGFibGUtdmFyeWluZy5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvdW5hdmFpbGFibGUtdmFyeWluZy5mcwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggODc1OGUzYy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL3VuYXZhaWxhYmxlLXZhcnlpbmcuZnMKKysrIC9kZXYvbnVsbApA
QCAtMSw4ICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotdmFyeWluZyB2ZWM0IHVu
YXZhaWxhYmxlOwotCi12b2lkIG1haW4gKCkKLXsKLSAgICBjc3NfTWl4Q29sb3IgPSB1bmF2YWls
YWJsZTsKLX0KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy92YXJ5aW5nLW1peC1jb2xvci5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvdmFyeWluZy1taXgtY29sb3IuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZh
YmMxNDUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92
YXJ5aW5nLW1peC1jb2xvci5mcworKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotcHJlY2lz
aW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXZhcnlpbmcgdmVjNCB2X21peENvbG9yOwotCi12b2lkIG1h
aW4oKQotewotICAgIGNzc19NaXhDb2xvciA9IHZfbWl4Q29sb3I7Ci19CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1leHBsb2RlLWRldGFjaGVk
LnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtZXhwbG9kZS1k
ZXRhY2hlZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTdlZGVkZC4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1leHBsb2Rl
LWRldGFjaGVkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotcHJlY2lzaW9uIG1l
ZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVj
MiBhX3RleENvb3JkOwotYXR0cmlidXRlIHZlYzMgYV90cmlhbmdsZUNvb3JkOwotCi11bmlmb3Jt
IG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZv
aWQgbWFpbigpCi17Ci0gICAgLy8gYV90cmlhbmdsZUNvb3JkLnh5IGlzIHRoZSBwb3NpdGlvbiBv
ZiB0aGUgdGlsZSBpbiB0aGUgbWVzaCwgc28gd2Ugb2Zmc2V0IHRoZSB2ZXJ0aWNlcwotICAgIC8v
IHdpdGggdGhlIHBvc2l0aW9uIGluIG1lc2guIFRoZSB0aWxlcyBzaG91bGQgYmUgZGV0YWNoZWQg
ZnJvbSBlYWNoIG90aGVyLgotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICog
KGFfcG9zaXRpb24gKyB2ZWM0KGFfdHJpYW5nbGVDb29yZC54IC8gNC4wLCBhX3RyaWFuZ2xlQ29v
cmQueSAvIDQuMCwgMC4wLCAwLjApKTsKLSAgICB2X3RleENvb3JkID0gYV90ZXhDb29yZDsKLX0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LWhv
cml6b250YWwtb2Zmc2V0LnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92
ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGVmMGRhYjAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy92ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCww
IEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlv
bjsKLWF0dHJpYnV0ZSB2ZWMyIGFfdGV4Q29vcmQ7Ci0KLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rp
b25NYXRyaXg7Ci11bmlmb3JtIGZsb2F0IG9mZnNldDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29v
cmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRy
aXggKiAoYV9wb3NpdGlvbiArIHZlYzQoMC4wLCBvZmZzZXQsIDAuMCwgMC4wKSk7Ci0gICAgdl90
ZXhDb29yZCA9IGFfdGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQtcGFyYW1ldGVycy52cyBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MWIxYjBhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzCisr
KyAvZGV2L251bGwKQEAgLTEsNjEgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0K
LWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVjMiBhX3RleENvb3JkOwot
Ci11bmlmb3JtIGZsb2F0IHBlcnNwZWN0aXZlOwotdW5pZm9ybSB2ZWMyIHZlcnRleF9vZmZzZXQ7
Ci11bmlmb3JtIHZlYzMgcm90YXRlOwotCi11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4
OwotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLWNvbnN0IGZsb2F0IE1fUEkgPSAzLjE0MTU5
MjY1OwotCi1tYXQ0IHBlcnNwZWN0aXZlTWF0cml4KGZsb2F0IHApIHsKLSAgICByZXR1cm4gbWF0
NCgxLjAsIDAuMCwgMC4wLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAxLjAsIDAuMCwgMC4w
LAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxLjAsIC0gMS4wIC8gcCwKLSAgICAgICAgICAg
ICAgICAwLjAsIDAuMCwgMC4wLCAxLjApOwotfQotCi1tYXQ0IHRyYW5zbGF0ZU1hdHJpeCh2ZWMy
IHQpIHsKLSAgICByZXR1cm4gbWF0NCgxLjAsIDAuMCwgMC4wLCAwLjAsCi0gICAgICAgICAgICAg
ICAgMC4wLCAxLjAsIDAuMCwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxLjAsIDAu
MCwKLSAgICAgICAgICAgICAgICB0LngsIHQueSwgMC4wLCAxLjApOwotfQotCi1tYXQ0IHJvdGF0
ZVhNYXRyaXgoZmxvYXQgZikgewotICAgIHJldHVybiBtYXQ0KDEuMCwgMC4wLCAwLjAsIDAuMCwK
LSAgICAgICAgICAgICAgICAwLjAsIGNvcyhmKSwgc2luKGYpLCAwLjAsCi0gICAgICAgICAgICAg
ICAgMC4wLCAtc2luKGYpLCBjb3MoZiksIDAuMCwKLSAgICAgICAgICAgICAgICAwLjAsIDAuMCwg
MC4wLCAxLjApOwotfQotCi1tYXQ0IHJvdGF0ZVlNYXRyaXgoZmxvYXQgZikgewotICAgIHJldHVy
biBtYXQ0KGNvcyhmKSwgMC4wLCAtc2luKGYpLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAx
LjAsIDAuMCwgMC4wLAotICAgICAgICAgICAgICAgIHNpbihmKSwgMCwgY29zKGYpLCAwLjAsCi0g
ICAgICAgICAgICAgICAgMC4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KLQotbWF0NCByb3RhdGVaTWF0
cml4KGZsb2F0IGYpIHsKLSAgICByZXR1cm4gbWF0NChjb3MoZiksIHNpbihmKSwgMC4wLCAwLjAs
Ci0gICAgICAgICAgICAgICAgLXNpbihmKSwgY29zKGYpLCAwLjAsIDAuMCwKLSAgICAgICAgICAg
ICAgICAwLjAsIDAuMCwgMS4wLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAwLjAsIDAuMCwg
MS4wKTsKLX0KLQotbWF0NCByb3RhdGVNYXRyaXgodmVjMyBhKSB7Ci0gICAgcmV0dXJuIHJvdGF0
ZVhNYXRyaXgoYS54KSAqIHJvdGF0ZVlNYXRyaXgoYS55KSAqIHJvdGF0ZVpNYXRyaXgoYS56KTsK
LX0KLQotdm9pZCBtYWluKCkKLXsKLSAgICAvLyBVc2UgdGhlIHZhbHVlcyBmcm9tIENTUyB0byBj
aGFuZ2UgdGhlIHBlcnNwZWN0aXZlLCB0cmFuc2xhdGUgYW5kIHJvdGF0ZSB0aGUgc3VyZmFjZS4g
VGhpcyB3YXkgd2UgY2FuIHRlc3QKLSAgICAvLyBmbG9hdCwgdmVjMiBhbmQgdmVjMy4gTm90ZSB0
aGF0IHZlYzQgaXMgdGVzdGVkIGluIHRoZSBmcmFnbWVudCBzaGFkZXIgdmVydGV4LW9mZnNldC1w
YXJhbWV0ZXJzLmZzLgotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogcGVy
c3BlY3RpdmVNYXRyaXgocGVyc3BlY3RpdmUpICogdHJhbnNsYXRlTWF0cml4KHZlcnRleF9vZmZz
ZXQpICogcm90YXRlTWF0cml4KHJvdGF0ZSAqIE1fUEkgLyAxODAuMCkgKiBhX3Bvc2l0aW9uOwot
ICAgIAotICAgIHZfdGV4Q29vcmQgPSBhX3RleENvb3JkOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBhOTFkYjdkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cworKysgL2Rldi9udWxsCkBAIC0xLDE0
ICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bv
c2l0aW9uOwotYXR0cmlidXRlIHZlYzIgYV90ZXhDb29yZDsKLQotdW5pZm9ybSBtYXQ0IHVfcHJv
amVjdGlvbk1hdHJpeDsKLXZhcnlpbmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQot
ewotICAgIC8vIE9mZnNldCB0aGUgcG9zaXRpb24gb2YgdGhlIHZlcnRpY2VzIHdpdGggMC4xIGlu
IHRoZSBYIGF4aXMuCi0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiAoYV9w
b3NpdGlvbiArIHZlYzQoMC4xLCAwLjAsIDAuMCwgMC4wKSk7Ci0gICAgdl90ZXhDb29yZCA9IGFf
dGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL3ZlcnRleC1yb3RhdGUudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L3ZlcnRleC1yb3RhdGUudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUyMzJmOTMu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMjIgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1
bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVjMiBh
X3RleENvb3JkOwotCi11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdW5pZm9ybSBm
bG9hdCByb3RhdGVCeTsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLW1hdDQgcm90YXRl
Wk1hdHJpeChmbG9hdCBmKSB7Ci0gICAgcmV0dXJuIG1hdDQoY29zKGYpLCBzaW4oZiksIDAuMCwg
MC4wLAotICAgICAgICAgICAgICAgIC1zaW4oZiksIGNvcyhmKSwgMC4wLCAwLjAsCi0gICAgICAg
ICAgICAgICAgMC4wLCAwLjAsIDEuMCwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAw
LjAsIDEuMCk7Ci19Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2pl
Y3Rpb25NYXRyaXggKiByb3RhdGVaTWF0cml4KHJvdGF0ZUJ5ICogMy4xNCAvIDE4MC4wKSAqIGFf
cG9zaXRpb247Ci0gICAgdl90ZXhDb29yZCA9IGFfdGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC10cmFuc2Zvcm0tcGFyYW1l
dGVyLnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtdHJhbnNm
b3JtLXBhcmFtZXRlci52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjhjMTZhNi4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC10
cmFuc2Zvcm0tcGFyYW1ldGVyLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotcHJl
Y2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci0KLXVu
aWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci11bmlmb3JtIG1hdDQgdHJhbnNmb3JtOwot
Ci12b2lkIG1haW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICog
dHJhbnNmb3JtICogYV9wb3NpdGlvbjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuanMgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRp
bmdzLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMTkwNzhlLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1t
aXgtYmluZGluZ3MuanMKKysrIC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi1kZXNjcmlwdGlv
bigiVGVzdCBtaXgoKSBmdW5jdGlvbiBKUyBiaW5kaW5ncy4iKTsKLQotZnVuY3Rpb24ganNXcmFw
cGVyQ2xhc3Mobm9kZSkgewotICAgIGlmICghbm9kZSkKLSAgICAgICAgcmV0dXJuICJbbnVsbF0i
OwotICAgIHZhciBzdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmFwcGx5KG5vZGUp
OwotICAgIHJldHVybiBzdHJpbmcuc3Vic3RyKDgsIHN0cmluZy5sZW5ndGggLSA5KTsKLX0KLQot
ZnVuY3Rpb24gc2hvdWxkQmVUeXBlKGV4cHJlc3Npb24sIGNsYXNzTmFtZSwgcHJvdG90eXBlTmFt
ZSwgY29uc3RydWN0b3JOYW1lKSB7Ci0gICAgaWYgKCFwcm90b3R5cGVOYW1lKQotICAgICAgICBw
cm90b3R5cGVOYW1lID0gY2xhc3NOYW1lICsgIlByb3RvdHlwZSI7Ci0gICAgaWYgKCFjb25zdHJ1
Y3Rvck5hbWUpCi0gICAgICAgIGNvbnN0cnVjdG9yTmFtZSA9IGNsYXNzTmFtZSArICJDb25zdHJ1
Y3RvciI7Ci0gICAgc2hvdWxkQmUoImpzV3JhcHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIiki
LCAiJyIgKyBjbGFzc05hbWUgKyAiJyIpOwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygi
ICsgZXhwcmVzc2lvbiArICIuX19wcm90b19fKSIsICInIiArIHByb3RvdHlwZU5hbWUgKyAiJyIp
OwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygiICsgZXhwcmVzc2lvbiArICIuY29uc3Ry
dWN0b3IpIiwgIiciICsgY29uc3RydWN0b3JOYW1lICsgIiciKTsKLX0KLQotZnVuY3Rpb24gcmVt
b3ZlQmFzZVVSTChzcmMpIHsKLSAgICB2YXIgdXJsUmVnZXhwID0gL3VybFwoKFteXCldKilcKS9n
OwotICAgIHJldHVybiBzcmMucmVwbGFjZSh1cmxSZWdleHAsIGZ1bmN0aW9uKG1hdGNoLCB1cmwp
IHsKLSAgICAgICAgcmV0dXJuICJ1cmwoIiArIHVybC5zdWJzdHIodXJsLmxhc3RJbmRleE9mKCIv
IikgKyAxKSArICIpIjsKLSAgICB9KTsKLX0KLQotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLXZhciBzdHlsZUVsZW1lbnQg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRD
aGlsZChzdHlsZUVsZW1lbnQpOwotdmFyIHN0eWxlc2hlZXQgPSBzdHlsZUVsZW1lbnQuc2hlZXQ7
Ci0KLXN0eWxlc2hlZXQuYWRkUnVsZSgiYm9keSIsICItd2Via2l0LWZpbHRlcjogY3VzdG9tKG5v
bmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpKSkiLCAwKTsKLQotdmFy
IGNzc1J1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVzLml0ZW0oMCk7Ci0KLXNob3VsZEJlKCJjc3NS
dWxlLnR5cGUiLCAiMSIpOwotCi12YXIgZGVjbGFyYXRpb24gPSBjc3NSdWxlLnN0eWxlOwotc2hv
dWxkQmUoImRlY2xhcmF0aW9uLmxlbmd0aCIsICIxIik7Ci0KLXZhciBmaWx0ZXJSdWxlID0gZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlDU1NWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKTsKLXZhciBtaXhG
dW5jdGlvbiA9IGZpbHRlclJ1bGVbMF1bMF1bMV07Ci1zaG91bGRCZVR5cGUoIm1peEZ1bmN0aW9u
IiwgIldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUiKTsKLQotdmFyIG1peEZ1bmN0aW9uQ29udGVu
dCA9IHJlbW92ZUJhc2VVUkwobWl4RnVuY3Rpb24uY3NzVGV4dCk7Ci0KLXNob3VsZEJlRXF1YWxU
b1N0cmluZygibWl4RnVuY3Rpb25Db250ZW50IiwgIm1peCh1cmwoY29sb3Itb2Zmc2V0LmZzKSki
KTsKLQotc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1w
YXJzaW5nLWNvbW1vbi5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTIyMWYwYy4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3Rv
bS1maWx0ZXItcGFyc2luZy1jb21tb24uanMKKysrIC9kZXYvbnVsbApAQCAtMSw1NyArMCwwIEBA
Ci0vLyBIZWxwZXIgZnVuY3Rpb25zLgotCi1mdW5jdGlvbiBoZWFkaW5nKHN0cmluZykKLXsKLSAg
ICBkZWJ1ZygiIik7Ci0gICAgZGVidWcoIj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0iKTsKLSAgICBkZWJ1ZyhzdHJpbmcpOwotICAgIGRlYnVnKCI9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Iik7Ci19Ci0KLWZ1bmN0aW9uIGpzV3JhcHBlckNs
YXNzKG5vZGUpCi17Ci0gICAgaWYgKCFub2RlKQotICAgICAgICByZXR1cm4gIltudWxsXSI7Ci0g
ICAgdmFyIHN0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuYXBwbHkobm9kZSk7Ci0g
ICAgcmV0dXJuIHN0cmluZy5zdWJzdHIoOCwgc3RyaW5nLmxlbmd0aCAtIDkpOwotfQotCi0vLyBG
SVhNRTogVGhpcyB0eXBlLWNoZWNraW5nIGFwcHJvYWNoIGZhaWxzIG9uIFY4LCB3aGljaCByZXF1
aXJlcyB1cyB0byBoYXZlIENocm9taXVtLXNwZWNpZmljIGV4cGVjdGF0aW9ucy4KLS8vIFdlIHNo
b3VsZCB1c2UgdGhlIHNob3VsZEhhdmVDb25zdHJ1Y3RvciBmdW5jdGlvbiBpbnN0ZWFkLCB3aGlj
aCB3b3JrcyByZWdhcmRsZXNzIG9mIEpTIGVuZ2luZS4KLWZ1bmN0aW9uIHNob3VsZEJlVHlwZShl
eHByZXNzaW9uLCBjbGFzc05hbWUsIHByb3RvdHlwZU5hbWUsIGNvbnN0cnVjdG9yTmFtZSkKLXsK
LSAgICBpZiAoIXByb3RvdHlwZU5hbWUpCi0gICAgICAgIHByb3RvdHlwZU5hbWUgPSBjbGFzc05h
bWUgKyAiUHJvdG90eXBlIjsKLSAgICBpZiAoIWNvbnN0cnVjdG9yTmFtZSkKLSAgICAgICAgY29u
c3RydWN0b3JOYW1lID0gY2xhc3NOYW1lICsgIkNvbnN0cnVjdG9yIjsKLSAgICBzaG91bGRCZSgi
anNXcmFwcGVyQ2xhc3MoIiArIGV4cHJlc3Npb24gKyAiKSIsICInIiArIGNsYXNzTmFtZSArICIn
Iik7Ci0gICAgc2hvdWxkQmUoImpzV3JhcHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIi5fX3By
b3RvX18pIiwgIiciICsgcHJvdG90eXBlTmFtZSArICInIik7Ci0gICAgc2hvdWxkQmUoImpzV3Jh
cHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIi5jb25zdHJ1Y3RvcikiLCAiJyIgKyBjb25zdHJ1
Y3Rvck5hbWUgKyAiJyIpOwotfQotCi1mdW5jdGlvbiBzaG91bGRIYXZlQ29uc3RydWN0b3IoZXhw
cmVzc2lvbiwgY29uc3RydWN0b3JOYW1lKQotewotICAgIHNob3VsZEJlVHJ1ZShleHByZXNzaW9u
ICsgIiBpbnN0YW5jZW9mICIgKyBjb25zdHJ1Y3Rvck5hbWUpOwotICAgIHNob3VsZEJlVHJ1ZShl
eHByZXNzaW9uICsgIi5jb25zdHJ1Y3RvciA9PT0gIiArIGNvbnN0cnVjdG9yTmFtZSk7Ci0gICAg
c2hvdWxkQmVUcnVlKGV4cHJlc3Npb24gKyAiLl9fcHJvdG9fXyA9PT0gIiArIGNvbnN0cnVjdG9y
TmFtZSArICIucHJvdG90eXBlIik7Ci19Ci0KLS8vIE5lZWQgdG8gcmVtb3ZlIHRoZSBiYXNlIFVS
TCB0byBhdm9pZCBoYXZpbmcgbG9jYWwgcGF0aHMgaW4gdGhlIGV4cGVjdGVkIHJlc3VsdHMuCi1m
dW5jdGlvbiByZW1vdmVCYXNlVVJMKHNyYykgCi17Ci0gICAgdmFyIHVybFJlZ2V4cCA9IC91cmxc
KChbXlwpXSopXCkvZzsKLSAgICByZXR1cm4gc3JjLnJlcGxhY2UodXJsUmVnZXhwLCBmdW5jdGlv
bihtYXRjaCwgdXJsKSB7Ci0gICAgICAgIHJldHVybiAidXJsKCIgKyB1cmwuc3Vic3RyKHVybC5s
YXN0SW5kZXhPZigiLyIpICsgMSkgKyAiKSI7Ci0gICAgfSk7Ci19Ci0KLS8vIENvbW1vbiBzZXR1
cCBmb3IgcGFyc2luZyB0ZXN0cy4KLQotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgd2lu
ZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJF
bmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2Uo
IldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLXZhciBzdHlsZUVsZW1lbnQgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChz
dHlsZUVsZW1lbnQpOwotdmFyIHN0eWxlc2hlZXQgPSBzdHlsZUVsZW1lbnQuc2hlZXQ7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0
ZXItcHJvcGVydHktY29tcHV0ZWQtc3R5bGUuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
c2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcHJvcGVydHktY29tcHV0ZWQtc3R5bGUuanMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZhZTMwYzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNv
bXB1dGVkLXN0eWxlLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTk3ICswLDAgQEAKLWRlc2NyaXB0
aW9uKCJUZXN0cyB0aGUgY29tcHV0ZWQgc3R5bGUgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9uIG9m
IHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1ND
dXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLWZ1bmN0aW9uIGpz
V3JhcHBlckNsYXNzKG5vZGUpCi17Ci0gICAgaWYgKCFub2RlKQotICAgICAgICByZXR1cm4gIltu
dWxsXSI7Ci0gICAgdmFyIHN0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuYXBwbHko
bm9kZSk7Ci0gICAgcmV0dXJuIHN0cmluZy5zdWJzdHIoOCwgc3RyaW5nLmxlbmd0aCAtIDkpOwot
fQotCi0vLyBOZWVkIHRvIHJlbW92ZSB0aGUgYmFzZSBVUkwgdG8gYXZvaWQgaGF2aW5nIGxvY2Fs
IHBhdGhzIGluIHRoZSBleHBlY3RlZCByZXN1bHRzLgotZnVuY3Rpb24gcmVtb3ZlQmFzZVVSTChz
cmMpIHsKLSAgICB2YXIgdXJsUmVnZXhwID0gL3VybFwoKFteXCldKilcKS9nOwotICAgIHJldHVy
biBzcmMucmVwbGFjZSh1cmxSZWdleHAsIGZ1bmN0aW9uKG1hdGNoLCB1cmwpIHsKLSAgICAgICAg
cmV0dXJuICJ1cmwoIiArIHVybC5zdWJzdHIodXJsLmxhc3RJbmRleE9mKCIvIikgKyAxKSArICIp
IjsKLSAgICB9KTsKLX0KLQotZnVuY3Rpb24gc2hvdWxkQmVUeXBlKGV4cHJlc3Npb24sIGNsYXNz
TmFtZSwgcHJvdG90eXBlTmFtZSwgY29uc3RydWN0b3JOYW1lKQotewotICAgIGlmICghcHJvdG90
eXBlTmFtZSkKLSAgICAgICAgcHJvdG90eXBlTmFtZSA9IGNsYXNzTmFtZSArICJQcm90b3R5cGUi
OwotICAgIGlmICghY29uc3RydWN0b3JOYW1lKQotICAgICAgICBjb25zdHJ1Y3Rvck5hbWUgPSBj
bGFzc05hbWUgKyAiQ29uc3RydWN0b3IiOwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygi
ICsgZXhwcmVzc2lvbiArICIpIiwgIiciICsgY2xhc3NOYW1lICsgIiciKTsKLSAgICBzaG91bGRC
ZSgianNXcmFwcGVyQ2xhc3MoIiArIGV4cHJlc3Npb24gKyAiLl9fcHJvdG9fXykiLCAiJyIgKyBw
cm90b3R5cGVOYW1lICsgIiciKTsKLSAgICBzaG91bGRCZSgianNXcmFwcGVyQ2xhc3MoIiArIGV4
cHJlc3Npb24gKyAiLmNvbnN0cnVjdG9yKSIsICInIiArIGNvbnN0cnVjdG9yTmFtZSArICInIik7
Ci19Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRv
IHNlZSB0aGVtLgotdmFyIHN0eWxlc2hlZXQsIGNzc1J1bGUsIGRlY2xhcmF0aW9uLCBmaWx0ZXJS
dWxlLCBzdWJSdWxlOwotdmFyIHN0eWxlRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
InN0eWxlIik7Ci1kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHN0eWxlRWxlbWVudCk7Ci1zdHls
ZXNoZWV0ID0gc3R5bGVFbGVtZW50LnNoZWV0OwotCi0vLyBXZSBuZWVkIGEgZml4ZWQgd2lkdGgv
aGVpZ2h0IGZvciB0aGUgb2JqZWN0LgotdmFyIG9iamVjdFRvQ2hlY2sgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJkaXYiKTsKLW9iamVjdFRvQ2hlY2suY2xhc3NOYW1lID0gIm9iamVjdFRvQ2hl
Y2siOwotb2JqZWN0VG9DaGVjay5zdHlsZS53aWR0aCA9ICI1MDBweCI7Ci1vYmplY3RUb0NoZWNr
LnN0eWxlLmhlaWdodCA9ICI2MDBweCI7Ci1kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG9iamVj
dFRvQ2hlY2spOwotCi1mdW5jdGlvbiB0ZXN0RmlsdGVyUnVsZShkZXNjcmlwdGlvbiwgcnVsZSwg
ZXhwZWN0ZWRWYWx1ZSwgZXhwZWN0ZWRUeXBlcywgZXhwZWN0ZWRUZXh0cykKLXsKLSAgICBkZWJ1
ZygiIik7Ci0gICAgZGVidWcoZGVzY3JpcHRpb24gKyAiIDogIiArIHJ1bGUpOwotCi0gICAgc3R5
bGVzaGVldC5pbnNlcnRSdWxlKCIub2JqZWN0VG9DaGVjayB7IC13ZWJraXQtZmlsdGVyOiAiICsg
cnVsZSArICI7IH0iLCAwKTsKLQotICAgIGZpbHRlclN0eWxlID0gd2luZG93LmdldENvbXB1dGVk
U3R5bGUob2JqZWN0VG9DaGVjayk7Ci0gICAgCi0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwo
ZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkiLCAiJyIgKyBl
eHBlY3RlZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclJ1bGUgPSBmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCctd2Via2l0LWZpbHRlcicpOwotICAgIHNob3VsZEJlVHlwZSgiZmls
dGVyUnVsZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIGlmICghZXhwZWN0ZWRUeXBlcykgewot
ICAgICAgICBleHBlY3RlZFR5cGVzID0gWyJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTSJdOwotICAgICAgICBleHBlY3RlZFRleHRzID0gW2V4cGVjdGVkVmFsdWVdOwotICAg
IH0KLSAgICAKLSAgICBzaG91bGRCZSgiZmlsdGVyUnVsZS5sZW5ndGgiLCAiIiArIGV4cGVjdGVk
VHlwZXMubGVuZ3RoKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChmaWx0ZXJSdWxlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUeXBlcy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViUnVsZSA9IGZpbHRlclJ1bGVb
aV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViUnVsZS5vcGVyYXRpb25UeXBlIiwgZXhwZWN0
ZWRUeXBlc1tpXSk7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIiwgIiciICsgZXhwZWN0ZWRUZXh0c1tpXSArICInIik7Ci0gICAgICAgIH0KLSAg
ICB9Ci0gICAgCi0gICAgc3R5bGVzaGVldC5kZWxldGVSdWxlKDApOwotfQotCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciIsCi0gICAgImN1c3RvbSh1cmwodmVydGV4
LnNoYWRlcikpIiwgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMSAxKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZnJhZ21lbnQgc2hhZGVyIiwKLSAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIiwgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBib3RoIHNoYWRl
cnMiLAotICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVudC5zaGFkZXIp
KSIsICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEp
Iik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24iLAotICAgICJj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKSIsICJjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKSIpOwotCi12YXIg
YmxlbmRNb2RlcyA9IFsibm9ybWFsIiwgIm11bHRpcGx5IiwgInNjcmVlbiIsICJvdmVybGF5Iiwg
ImRhcmtlbiIsICJsaWdodGVuIiwgImNvbG9yLWRvZGdlIiwKLSAgICAgICAgICAgICAgICAgICJj
b2xvci1idXJuIiwgImhhcmQtbGlnaHQiLCAic29mdC1saWdodCIsICJkaWZmZXJlbmNlIiwgImV4
Y2x1c2lvbiIsICJodWUiLAotICAgICAgICAgICAgICAgICAgInNhdHVyYXRpb24iLCAiY29sb3Ii
LCAibHVtaW5vc2l0eSJdOwotZm9yICh2YXIgaSA9IDA7IGkgPCBibGVuZE1vZGVzLmxlbmd0aDsg
aSsrKSB7Ci0gICAgdmFyIGJsZW5kTW9kZSA9IGJsZW5kTW9kZXNbaV07Ci0gICAgdGVzdEZpbHRl
clJ1bGUoIkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSAiICsgYmxlbmRN
b2RlLAotICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpICIgKyBi
bGVuZE1vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpICIg
KyBibGVuZE1vZGUgKyAiIHNvdXJjZS1hdG9wKSwgMSAxKSIpOwotfQotCi12YXIgYWxwaGFDb21w
b3NpdGluZ01vZGVzID0gWyJjbGVhciIsICJjb3B5IiwgInNvdXJjZS1vdmVyIiwgImRlc3RpbmF0
aW9uLW92ZXIiLCAic291cmNlLWluIiwgImRlc3RpbmF0aW9uLWluIiwKLSAgICAgICAgInNvdXJj
ZS1vdXQiLCAiZGVzdGluYXRpb24tb3V0IiwgInNvdXJjZS1hdG9wIiwgImRlc3RpbmF0aW9uLWF0
b3AiLCAieG9yIl07Ci1mb3IgKHZhciBpID0gMDsgaSA8IGFscGhhQ29tcG9zaXRpbmdNb2Rlcy5s
ZW5ndGg7IGkrKykgewotICAgIHZhciBhbHBoYUNvbXBvc2l0aW5nTW9kZSA9IGFscGhhQ29tcG9z
aXRpbmdNb2Rlc1tpXTsKLSAgICB0ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlICIgKyBhbHBoYUNvbXBvc2l0aW5nTW9kZSwK
LSAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYWxwaGFD
b21wb3NpdGluZ01vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIG5vcm1hbCAiICsgYWxwaGFDb21wb3NpdGluZ01vZGUgKyAiKSwgMSAxKSIpOwotfQotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZp
cnN0LCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNlY29uZCIsCi0gICAgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpIiwgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhciksIDEgMSkiKTsKLQotdGVzdEZp
bHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcg
bW9kZSBmaXJzdCwgYmxlbmQgbW9kZSBzZWNvbmQiLAotICAgICJjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgY2xlYXIgbXVsdGlwbHkpKSIsICJjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkgY2xlYXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJS
dWxlKCJDdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIGFuZCBtaXggZnVuY3Rpb24iLAotICAgICJj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIiwgImN1
c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBz
b3VyY2UtYXRvcCksIDEgMSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1peCBm
dW5jdGlvbiBhbmQgbWVzaCBzaXplIiwKLSAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpKSwgMTApIiwgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBu
b3JtYWwgc291cmNlLWF0b3ApLCAxMCAxMCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3
aXRoIG1lc2ggc2l6ZSIsCi0gICAgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlciksIDEwKSIsICJj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG5vbmUsIDEwIDEwKSIpOwotCi10ZXN0RmlsdGVyUnVs
ZSgiQ3VzdG9tIHdpdGggYm90aCBtZXNoIHNpemVzIiwKLSAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIDEwIDIwKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgMTAgMjApIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtZXNoIHNpemUiLAot
ICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpLCAxMCkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSBub25lLCAxMCAxMCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGJv
dGggbWVzaCBzaXplcyIsCi0gICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAx
MCAyMCkiLCAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZGV0YWNoZWQgbWVzaCIsCi0gICAgImN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRhY2hlZCkiLCAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIDEgMSBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIGRldGFjaGVkIGFuZCBtZXNoIHNpemUiLAotICAgICJjdXN0b20obm9uZSB1cmwoZnJh
Z21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpIiwgImN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3
aXRoIGRlZmF1bHQgZmlsdGVyLWJveCIsCi0gICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggaW50ZWdlciBwYXJhbWV0ZXJzIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxIDEsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpIik7Ci0K
LXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBmbG9hdCBwYXJhbWV0ZXJzIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMS4xLCBwMiAyLjIgMy4z
LCBwMyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgMS4xLCBwMiAyLjIgMy4zLCBw
MyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgi
Q3VzdG9tIHdpdGggdHJhbnNmb3JtIHRyYW5zbGF0ZSBwYXJhbWV0ZXIiLAotICAgICAgICAgICAg
ImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBw
eCkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAx
LCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMTAsIDEwKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1
c3RvbSB3aXRoIG11bHRpcGxlIHRyYW5zZm9ybSBwYXJhbWV0ZXJzIiwKLSAgICAgICAgICAgICJj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgdHJhbnNsYXRlKDEwcHgsIDEwcHgp
LCBwMiBzY2FsZSgyKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEsIHAxIG1hdHJpeCgxLCAwLCAwLCAxLCAxMCwgMTApLCBwMiBtYXRyaXgoMiwg
MCwgMCwgMiwgMCwgMCkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtdWx0aXBs
ZSB0cmFuc2Zvcm1zIHNpbmdsZSBwYXJhbWV0ZXIiLAotICAgICAgICAgICAgImN1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBweCkgc2NhbGUoMikp
IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBw
MSBtYXRyaXgoMiwgMCwgMCwgMiwgMTAsIDEwKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIHBlcmNlbnQgdHJhbnNmb3JtIHBhcmFtZXRlciIsCi0gICAgICAgICAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIHRyYW5zbGF0ZSg1MCUsIDUwJSkpIiwKLSAg
ICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRy
aXgoMSwgMCwgMCwgMSwgMjUwLCAzMDApKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdp
dGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyIsCi0gICAgICAgICAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1
LCBwNCA0IDUgNiA3KSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiTXVsdGlwbGUgd2l0aCBmcmFnbWVudCBzaGFkZXIiLAotICAgICJncmF5
c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsICJncmF5
c2NhbGUoMSkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSkgc2VwaWEoMSki
LAotICAgIFsiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUiLAotICAg
ICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTSIsCi0gICAgIldlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfU0VQSUEiXSwKLSAgICBbImdyYXlzY2FsZSgxKSIsCi0g
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpIiwKLSAgICAic2VwaWEo
MSkiXSk7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2Yg
dGhyZWUgdmFsdWVzIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgYTEgYXJyYXkoMSwgMiwgMykpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLCAyLCAzKSkiKTsKLQotdGVzdEZpbHRl
clJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFkZSB1cCBvZiB0aHJlZSBmbG9hdGluZyBwb2lu
dCB2YWx1ZXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCBhMSBhcnJheSgxLjYxODAsIC0yLjcxODIsIDMuMTQxNSkpIiwKLSAgICAgICAgICAgICJjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLjYxOCwgLTIuNzE4
MiwgMy4xNDE1KSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFk
ZSB1cCBvZiBzZXZlcmFsIGZsb2F0aW5nIHBvaW50IGFuZCBpbnRlZ2VyIHZhbHVlcyIsCi0gICAg
ICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEuNjE4
MCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUg
dXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMS42MTgsIDEsIC0yLjcxODIsIDAu
MSwgMy4xNDE1KSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFk
ZSB1cCBvZiAyNDcgZGlmZmVyZW50IGZsb2F0aW5nIHBvaW50IHZhbHVlcyIsCi0gICAgICAgICAg
ICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDYuMDAsIDM4LjU4
LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEs
IDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAy
MS45NCwgNjIuNzAsIDc3Ljk2LCA2Ny4yNywgMi43NSwgMjguMTYsIDguODgsIDExLjYxLCAzNC44
OSwgNDUuNzUsIDU0LjU1LCAzNS4wNCwgNi4xMywgNjkuNjgsIDgxLjIxLCA0OS40NCwgNTQuNzQs
IDI2Ljc0LCA5MS40OSwgNjguMjAsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44Nywg
NzEuNzMsIDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAu
NDgsIDgxLjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4y
NiwgMzQuNjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUs
IDM1LjAyLCAzOS4wMCwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwg
MjcuNzIsIDI4LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5
OC40NSwgODcuNTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMx
LjczLCAyLjkwLCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIs
IDUzLjk2LCAzNS4wNiwgNjcuNTAsIDc2LjYyLCAzNS4wMiwgMS42MiwgMTMuMDUsIDMzLjU5LCAy
Ni44OSwgMzYuOTQsIDc0LjEzLCA5NS4wOSwgNTYuODcsIDQ2LjAxLCAxMS45NCwgMTIuOTIsIDQ4
Ljg4LCAxMS4wMywgMjQuODAsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAu
MzUsIDQxLjEwLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUwLCA4OC40MSwgOTAuMzQs
IDk3LjYyLCA1OC43MCwgMjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwg
OTEuMjIsIDc4LjIxLCA2Mi4zMCwgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5
Ny40MiwgOTYuNDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIwLCAyNi42NSwgNzgu
MzksIDk1LjI2LCA2Ni44MCwgMzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3
LCA2MS4wMSwgOTUuNjgsIDguNTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNDAsIDEyLjM1LCA5
OS4zOSwgNS44MCwgNjguMTAsIDczLjg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4w
OCwgNTQuNDUsIDg3LjY0LCAzNi4xNCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQw
LCA1LjkwLCAxNS43MCwgMTAuODgsIDU1LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywg
NjAuMzAsIDQuMzIsIDcuMDUsIDMuMzQsIDkuODcsIDY0LjUxLCA0LjYwLCA1NC4xNiwgNDguODAs
IDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgsIDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5
My43MCwgMjMuNzksIDg5LjU3LCAxNC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5
LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcu
NzUsIDQxLjY1LCA2Mi4zNSwgOTAuNDAsIDQwLjc3LCA1My45MywgODAuMjMsIDg0LjQ5LCAyMC4x
OCwgNDUuMzYsIDI2LjAyLCA5My43MiwgNjUuNTQsIDMyLjg2KSkiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDYsIDM4LjU4LCA0
MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEsIDk5
LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAyMS45
NCwgNjIuNywgNzcuOTYsIDY3LjI3LCAyLjc1LCAyOC4xNiwgOC44OCwgMTEuNjEsIDM0Ljg5LCA0
NS43NSwgNTQuNTUsIDM1LjA0LCA2LjEzLCA2OS42OCwgODEuMjEsIDQ5LjQ0LCA1NC43NCwgMjYu
NzQsIDkxLjQ5LCA2OC4yLCA4NC4wNSwgNjUuODEsIDU3Ljg5LCA3My4yMiwgMTMuODcsIDcxLjcz
LCAxOC42MSwgOC41NCwgOS43OSwgMjguMDUsIDE0LjExLCA2OS45MywgNDcuMTksIDEwLjQ4LCA4
MS4zNSwgMzcuMTUsIDE5LjI5LCAxNC45OCwgMzIuNTQsIDk4Ljk2LCA2OS4zNywgOTIuMjYsIDM0
LjY0LCA2Ny40MywgNzEuOTIsIDQ1LjUyLCA5LjIyLCA0MS45NiwgMzEuMjYsIDkyLjY1LCAzNS4w
MiwgMzksIDc2Ljc2LCAyOS4zMywgMjIuOTMsIDgwLjY1LCA3MC43OCwgNDIuOTQsIDI3LjcyLCAy
OC4xOSwgNzUuMTUsIDE4LjE0LCA4OS43MSwgOTUuMzgsIDU0LjUxLCAzNi45MywgOTguNDUsIDg3
LjU4LCA0NC41MSwgNzEuNzMsIDc1LjcxLCA3MC40MywgNzguNTEsIDgyLjE5LCAzMS43MywgMi45
LCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIsIDUzLjk2LCAz
NS4wNiwgNjcuNSwgNzYuNjIsIDM1LjAyLCAxLjYyLCAxMy4wNSwgMzMuNTksIDI2Ljg5LCAzNi45
NCwgNzQuMTMsIDk1LjA5LCA1Ni44NywgNDYuMDEsIDExLjk0LCAxMi45MiwgNDguODgsIDExLjAz
LCAyNC44LCA2OC4wNiwgMTkuODMsIDEyLjk4LCA0MS41NiwgNjIuMDMsIDgwLjM1LCA0MS4xLCA1
LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUsIDg4LjQxLCA5MC4zNCwgOTcuNjIsIDU4Ljcs
IDIzLjYyLCAxMy4wMywgODUuNDEsIDI5LjczLCAzMC4yMSwgNTkuMjUsIDkxLjIyLCA3OC4yMSwg
NjIuMywgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5Ny40MiwgOTYuNDIsIDM4
LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIsIDI2LjY1LCA3OC4zOSwgOTUuMjYsIDY2Ljgs
IDM0LjQxLCAxMC42OSwgOTQuNDMsIDcxLjY5LCA0LjU4LCAyMy44NywgNjEuMDEsIDk1LjY4LCA4
LjUxLCAxNC45MiwgMTYuMjcsIDMwLjQxLCAxLjQsIDEyLjM1LCA5OS4zOSwgNS44LCA2OC4xLCA3
My44NywgMjguMzYsIDI0Ljk4LCA3Ny41OCwgOC43MywgMzQuMDgsIDU0LjQ1LCA4Ny42NCwgMzYu
MTQsIDc0LjY4LCAzOC4wNCwgNTYuNTQsIDQ2LjQyLCAxMi40LCA1LjksIDE1LjcsIDEwLjg4LCA1
NS44MiwgODQuNjYsIDc1Ljc0LCA4Ny45MiwgNTkuMDMsIDYwLjMsIDQuMzIsIDcuMDUsIDMuMzQs
IDkuODcsIDY0LjUxLCA0LjYsIDU0LjE2LCA0OC44LCA0Ni45MywgNS44NCwgOTAuMzQsIDc1LjQ4
LCAzMi41OSwgMjkuNjUsIDk0LjU3LCAyOC4yMiwgOTMuNywgMjMuNzksIDg5LjU3LCAxNC44NCwg
NzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0
Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcuNzUsIDQxLjY1LCA2Mi4zNSwgOTAuNCwgNDAu
NzcsIDUzLjkzLCA4MC4yMywgODQuNDksIDIwLjE4LCA0NS4zNiwgMjYuMDIsIDkzLjcyLCA2NS41
NCwgMzIuODYpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdHdvIGFycmF5KCkg
bWFkZSB1cCBvZiB0aHJlZSBhbmQgc2l4IHZhbHVlcyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEsIDIsIDMpLCBhMiBhcnJheSgxLCAy
LCAzLCA0LCA1LCA2KSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEsIGExIGFycmF5KDEsIDIsIDMpLCBhMiBhcnJheSgxLCAyLCAzLCA0LCA1LCA2
KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMv
Y3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuanMgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1p
bnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZGM4M2Y3Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRl
ci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxMDcgKzAs
MCBAQAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgY3VzdG9tKCkgZnVuY3Rpb24g
b2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJl
IGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBjc3NSdWxlLCBk
ZWNsYXJhdGlvbjsKLQotZnVuY3Rpb24gdGVzdEludmFsaWRGaWx0ZXJSdWxlKGRlc2NyaXB0aW9u
LCBydWxlKQotewotICAgIGRlYnVnKCIiKTsKLSAgICBkZWJ1ZyhkZXNjcmlwdGlvbiArICIgOiAi
ICsgcnVsZSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoImJvZHkgeyAtd2Via2l0LWZp
bHRlcjogIiArIHJ1bGUgKyAiOyB9IiwgMCk7Ci0gICAgY3NzUnVsZSA9IHN0eWxlc2hlZXQuY3Nz
UnVsZXMuaXRlbSgwKTsKLSAgCi0gICAgc2hvdWxkQmUoImNzc1J1bGUudHlwZSIsICIxIik7Ci0K
LSAgICBkZWNsYXJhdGlvbiA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUoImRlY2xhcmF0
aW9uLmxlbmd0aCIsICIwIik7Ci0gICAgc2hvdWxkQmUoImRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykiLCAibnVsbCIpOwotfQotCi10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIkVtcHR5IGZ1bmN0aW9uIiwgImN1c3RvbSgpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIk5vIHZhbHVlcyAxIiwgImN1c3RvbSgsKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJO
byB2YWx1ZXMgMiIsICJjdXN0b20oLCwpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9v
IG1hbnkgc2hhZGVycyAxIiwgImN1c3RvbSh1cmwoc2hhZGVyMSkgdXJsKHNoYWRlcjIpIHVybChz
aGFkZXIyKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1hbnkgc2hhZGVycyAyIiwg
ImN1c3RvbShub25lIG5vbmUgbm9uZSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1h
bnkgc2hhZGVycyAzIiwgImN1c3RvbShub25lIHVybChzaGFkZXIxKSB1cmwoc2hhZGVyMikgdXJs
KHNoYWRlcjIpKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiBhcyB2
ZXJ0ZXggc2hhZGVyIiwgImN1c3RvbShtaXgodXJsKHNoYWRlcikpKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24gd2l0aCB3cm9uZyBuYW1lIiwgImN1c3RvbShub25lIGZu
KHVybChzaGFkZXIpKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdp
dGggMCBhcmdzIiwgImN1c3RvbShub25lIG1peCgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxl
KCJNaXggZnVuY3Rpb24gd2l0aCBmaXJzdCBhcmcgbm90IGEgVVJJIiwgImN1c3RvbShub25lIG1p
eChub25lKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggc2Vj
b25kIGFyZyBub3QgYSBibGVuZCBtb2RlIG9yIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUiLCAiY3Vz
dG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJN
aXggZnVuY3Rpb24gd2l0aCB0aGlyZCBhcmcgbm90IGEgYmxlbmQgbW9kZSBvciBhbHBoYSBjb21w
b3NpdGluZyBtb2RlIiwgImN1c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSBub3JtYWwgMCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIHR3byBibGVuZCBtb2Rl
cyIsICJjdXN0b20obm9uZSBtaXgodXJsKHNoYWRlcikgbXVsdGlwbHkgc2NyZWVuKSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggdHdvIGFscGhhIGNvbXBvc2l0
aW5nIG1vZGVzIiwgImN1c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSBzb3VyY2Utb3ZlciBkZXN0
aW5hdGlvbi1vdmVyKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdp
dGggYWxwaGEgY29tcG9zaXRpbmcgbW9kZSAncGx1cy1kYXJrZXInLCB3aGljaCBzaG91bGQgb25s
eSBhcHBseSB0byAtd2Via2l0LWJhY2tncm91bmQtY29tcG9zaXRlIiwgImN1c3RvbShub25lIG1p
eCh1cmwoc2hhZGVyKSBwbHVzLWRhcmtlcikpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1p
eCBmdW5jdGlvbiB3aXRoIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgJ3BsdXMtbGlnaHRlcicsIHdo
aWNoIHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1jb21wb3NpdGUiLCAi
Y3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIHBsdXMtbGlnaHRlcikpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgJ2hp
Z2hsaWdodCcsIHdoaWNoIHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1j
b21wb3NpdGUiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIGhpZ2hsaWdodCkpIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIDQgYXJncyIsICJjdXN0b20o
bm9uZSBtaXgodXJsKHNoYWRlcikgbXVsdGlwbHkgY2xlYXIgbm9ybWFsKSkiKTsKLXRlc3RJbnZh
bGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggY29tbWEgc2VwYXJhdG9ycyIsICJjdXN0
b20obm9uZSBtaXgodXJsKHNoYWRlciksIG11bHRpcGx5LCBjbGVhcikpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIGNvbW1hIHRlcm1pbmF0b3IiLCAiY3VzdG9t
KG5vbmUgbWl4KHVybChzaGFkZXIpLCBtdWx0aXBseSBjbGVhciwpKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24gd2l0aCBvbmUgY29tbWEiLCAiY3VzdG9tKG5vbmUgbWl4
KCwpKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHNoYWRlciIsICJjdXN0b20obm9u
ZSwgMTAgMjApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IG1lc2ggc2l6ZXMi
LCAiY3VzdG9tKG5vbmUsIDEwIDIwIDMwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9u
ZyBtZXNoLWJveCB0eXBlIC0gJ3BhZGRpbmcnIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgcGFkZGlu
ZykiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiV3JvbmcgbWVzaC1ib3ggdHlwZSAtICdub25l
JyIsICJjdXN0b20odXJsKHNoYWRlciksIG5vbmUpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUo
Ik1vcmUgbWVzaC1ib3ggdHlwZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBwYWRkaW5nLWJveCBm
aWx0ZXItYm94KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBvcmRlciBmb3IgbWVz
aC1kZXRhY2hlZCBhbmQgbWVzaC1ib3ggdHlwZSIsICJjdXN0b20odXJsKHNoYWRlciksIGRldGFj
aGVkIHBhZGRpbmctYm94KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBvcmRlciBm
b3IgbWVzaCBzaXplIGFuZCBtZXNoLWJveCB0eXBlIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgcGFk
ZGluZy1ib3ggMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IG1lc2ggc2l6
ZXMgd2l0aCBtZXNoLWJveCB0eXBlIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgMjAgMzAgNDAgcGFk
ZGluZy1ib3gpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgY29tbWEgYmV0d2Vl
biBtZXNoLXNpemVzIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgMjAsIDQwIHBhZGRpbmctYm94KSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIGNvbW1hIGJlZm9yZSBtZXNoIHR5cGUi
LCAiY3VzdG9tKHVybChzaGFkZXIpLCAyMCwgcGFkZGluZy1ib3gpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIk5vIG1lc2ggcGFyYW1ldGVyIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBtZXNoIHR5cGUgLSBjb3JyZWN0IGlkZW50aWZp
ZXIgaXMgJ2RldGFjaGVkJyIsICJjdXN0b20odXJsKHNoYWRlciksIGRldGFjaCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTm8gbWVzaCBzaXplIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgLCBw
MSAyKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5lZ2F0aXZlIHNpbmdsZSBtZXNoIHNp
emUiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAtMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUo
Ik5lZ2F0aXZlIGJvdGggbWVzaCBzaXplcyIsICJjdXN0b20odXJsKHNoYWRlciksIC0xMCAtMTAp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSBtZXNoIHNp
emUiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAtMTAgMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIlplcm8gc2luZ2xlIG1lc2ggc2l6ZSIsICJjdXN0b20odXJsKHNoYWRlciksIDApIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlplcm8gYm90aCBtZXNoIHNpemVzIiwgImN1c3RvbSh1cmwo
c2hhZGVyKSwgMCAwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCIwIGFuZCAxIG1lc2ggc2l6
ZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAwIDEpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiVG9vIG1hbnkgcGFyYW1ldGVyIHZhbHVlcyIsICJjdXN0b20odXJsKHNoYWRlciksIHAxIDEg
MiAzIDQgNSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCBwYXJhbWV0ZXIgdHlw
ZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBwMSAxLjAgMi4wICd0ZXh0JykiKTsKLQotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgMSIsICJjdXN0b20odXJsKHNoYWRl
ciksIHAxKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgMiIs
ICJjdXN0b20odXJsKHNoYWRlciksIHAxLCBwMiwgcDMpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiT25lIGludmFsaWQgdHJhbnNmb3JtIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBz
b21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk11
bHRpcGxlIGludmFsaWQgdHJhbnNmb3JtcyIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29t
ZUlkIGludmFsaWRfcm90YXRlKDBkZWcpIGludmFsaWRfcGVyc3BlY3RpdmUoMCkpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgdHJhbnNmb3JtIGJldHdlZW4gdmFsaWQgb25lcyIs
ICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIHJvdGF0ZSgwZGVnKSBpbnZhbGlkX3Jv
dGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFs
aWQgdHJhbnNmb3JtIGJldHdlZW4gaW52YWxpZCBvbmVzIiwgImN1c3RvbShub25lIHVybChzaGFk
ZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgYW5vdGhlcl9p
bnZhbGlkKDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gd2l0
aG91dCBsZWFkaW5nIGNvbW1hIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBwZXJz
cGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFsaWQgdHJhbnNmb3JtIHdp
dGggdHJhaWxpbmcgY29tbWEiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCBwZXJz
cGVjdGl2ZSgwKSwpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3
aXRoIHRyYWlsaW5nIGNvbW1hIGFuZCB3aXRob3V0IGxlYWRpbmcgY29tbWEiLCAiY3VzdG9tKG5v
bmUgdXJsKHNoYWRlcikgc29tZUlkIHBlcnNwZWN0aXZlKDApLCkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFpbGluZyBjb21tYSIsICJjdXN0b20o
bm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIGludmFsaWRfcm90YXRlKDBkZWcpLCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aG91dCBsZWFkaW5nIGNvbW1h
IiwgImN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBpbnZhbGlkX3JvdGF0ZSgwZGVnKSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgdHJhbnNmb3JtIChvbmx5IHRoZSBpZCki
LCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiRW1wdHkgdHJhbnNmb3JtICh3aXRob3V0IHRoZSBpZCkiLCAiY3VzdG9tKG5vbmUgdXJs
KHNoYWRlciksKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJFbXB0eSB0cmFuc2Zvcm0gKHR3
byBlbXB0eSBjb21tYXMpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCwpIik7Ci10ZXN0SW52
YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3aXRoIGludmFsaWQgY2hhcmFjdGVycyIs
ICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSxzb21lSWQgcm90YXRlKDBkZWcpICouLSwpIik7Ci0K
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwo
c2hhZGVyKSwgaWQgYXJyYXkoKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiT25lIGNvbW1h
IGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KCwpKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aWxlIGNvbW1hcyBpbiBhcnJheSgpIiwgImN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJS
dWxlKCJNdWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5KCkiLCAiY3VzdG9tKG5v
bmUgdXJsKHNoYWRlciksIGlkIGFycmF5KCwsMSwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxl
KCJPbmUgY29tbWEgZm9sbG93ZWQgYnkgYSBuZWdhdGl2ZSB2YWx1ZSBpbiBhcnJheSgpIiwgImN1
c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsLTQpKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJPbmUgY29tbWEgZm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheSgpIiwgImN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIk9uZSBuZWdhdGl2ZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkiLCAi
Y3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KC00LCkpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIk9uZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkiLCAiY3Vz
dG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDQsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiQSBzZXJpZXMgb2YgY29ycmVjdCB2YWx1ZXMgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBh
cnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCAzLCA0LCkp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkEgc2VyaWVzIG9mIGNvcnJlY3QgdmFsdWVzIGZv
bGxvd2VkIGJ5IGEgbGV0dGVyIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciks
IGlkIGFycmF5KDEsIDIsIDMsIDQsIHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUd28g
Y29tbWFzIGFzIHNlcGFyYXRvciBiZXR3ZWVuIHZhbHVlcyBpbiBhcnJheSgpIiwgImN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCAsIDQpKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJMZWFkaW5nIGNvbW1hIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIGlkIGFycmF5KCwxLCAyLCAzLCA0KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiU2Vt
aWNvbG9uIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMTsgMjsgMzsgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNw
YWNlIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSwgaWQgYXJyYXkoMSAyIDMgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIHNl
cGFyYXRlZCB2YWx1ZXMgd2l0aCBjb21tYSB0ZXJtaW5hdG9yIGluIGFycmF5KCkiLCAiY3VzdG9t
KG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEgMiAzIDQsKSkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJy
YXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLCAxIDIgMyA0KSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJs
KHNoYWRlciksIGlkIGFycmF5KE5hTikpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5hTiBh
bmQgdmFsdWVzIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5
KDEsIDIsIE5hTiwgMykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgdW5pdCB2
YWx1ZSBpbiBhcnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxcHgp
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHVuaXQgdmFsdWUgaW4gYXJyYXko
KSwgc2Vjb25kIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheShub25lKSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCksIHRo
aXJkIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxZGVnKSkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCksIGF0IHRoZSBl
bmQgb2YgYSBwYXJ0aWFsbHkgdmFsaWQgdmFsdWUgbGlzdCIsICJjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMSwgMiwgMywgNHB4KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5n
LmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVy
LXByb3BlcnR5LXBhcnNpbmcuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZiYzQ4
MTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9j
dXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmcuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxODQg
KzAsMCBAQAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1c3RvbSgpIGZ1
bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotLy8gVGhlc2UgaGF2
ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgY3Nz
UnVsZSwgZGVjbGFyYXRpb24sIGZpbHRlclJ1bGUsIHN1YlJ1bGU7Ci0KLWZ1bmN0aW9uIHRlc3RG
aWx0ZXJSdWxlKGRlc2NyaXB0aW9uLCBydWxlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFR5cGVz
LCBleHBlY3RlZFRleHRzKQotewotICAgIGRlYnVnKCIiKTsKLSAgICBkZWJ1ZyhkZXNjcmlwdGlv
biArICIgOiAiICsgcnVsZSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoImJvZHkgeyAt
d2Via2l0LWZpbHRlcjogIiArIHJ1bGUgKyAiOyB9IiwgMCk7Ci0gICAgY3NzUnVsZSA9IHN0eWxl
c2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgCi0gICAgc2hvdWxkQmUoImNzc1J1bGUudHlwZSIs
ICIxIik7Ci0KLSAgICBkZWNsYXJhdGlvbiA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUo
ImRlY2xhcmF0aW9uLmxlbmd0aCIsICIxIik7Ci0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwo
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkiLCAiJyIgKyBl
eHBlY3RlZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclJ1bGUgPSBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCctd2Via2l0LWZpbHRlcicpOwotICAgIHNob3VsZEJlVHlwZSgiZmls
dGVyUnVsZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIGlmICghZXhwZWN0ZWRUeXBlcykgewot
ICAgICAgICBleHBlY3RlZFR5cGVzID0gWyJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTSJdOwotICAgICAgICBleHBlY3RlZFRleHRzID0gW2V4cGVjdGVkVmFsdWVdOwotICAg
IH0KLSAgICAKLSAgICBzaG91bGRCZSgiZmlsdGVyUnVsZS5sZW5ndGgiLCAiIiArIGV4cGVjdGVk
VHlwZXMubGVuZ3RoKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChmaWx0ZXJSdWxlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUeXBlcy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViUnVsZSA9IGZpbHRlclJ1bGVb
aV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViUnVsZS5vcGVyYXRpb25UeXBlIiwgZXhwZWN0
ZWRUeXBlc1tpXSk7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIiwgIiciICsgZXhwZWN0ZWRUZXh0c1tpXSArICInIik7Ci0gICAgICAgIH0KLSAg
ICB9Ci19Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIiwKLSAg
ICAgICAgICAgICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpKSIsICJjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZnJhZ21lbnQg
c2hhZGVyIiwKLSAgICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
KSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiKTsKLQotdGVzdEZpbHRlclJ1
bGUoIkN1c3RvbSB3aXRoIGJvdGggc2hhZGVycyIsCi0gICAgICAgICAgICAiY3VzdG9tKHVybCh2
ZXJ0ZXguc2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIG1peCBmdW5jdGlvbiIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
KSkiKTsKLQotdmFyIGJsZW5kTW9kZXMgPSBbIm5vcm1hbCIsICJtdWx0aXBseSIsICJzY3JlZW4i
LCAib3ZlcmxheSIsICJkYXJrZW4iLCAibGlnaHRlbiIsICJjb2xvci1kb2RnZSIsCi0gICAgICAg
ICAgICAiY29sb3ItYnVybiIsICJoYXJkLWxpZ2h0IiwgInNvZnQtbGlnaHQiLCAiZGlmZmVyZW5j
ZSIsICJleGNsdXNpb24iLCAiaHVlIiwgInNhdHVyYXRpb24iLAotICAgICAgICAgICAgImNvbG9y
IiwgImx1bWlub3NpdHkiXTsKLWZvciAodmFyIGkgPSAwOyBpIDwgYmxlbmRNb2Rlcy5sZW5ndGg7
IGkrKykgewotICAgIHZhciBibGVuZE1vZGUgPSBibGVuZE1vZGVzW2ldOwotICAgIHRlc3RGaWx0
ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgIiArIGJsZW5k
TW9kZSwKLSAgICAgICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpICIgKyBibGVuZE1vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpICIgKyBibGVuZE1vZGUgKyAiKSkiKTsKLX0KLQotdmFyIGFscGhhQ29tcG9zaXRpbmdN
b2RlcyA9IFsiY2xlYXIiLCAiY29weSIsICJzb3VyY2Utb3ZlciIsICJkZXN0aW5hdGlvbi1vdmVy
IiwgInNvdXJjZS1pbiIsICJkZXN0aW5hdGlvbi1pbiIsCi0gICAgICAgICAgICAic291cmNlLW91
dCIsICJkZXN0aW5hdGlvbi1vdXQiLCAic291cmNlLWF0b3AiLCAiZGVzdGluYXRpb24tYXRvcCIs
ICJ4b3IiXTsKLWZvciAodmFyIGkgPSAwOyBpIDwgYWxwaGFDb21wb3NpdGluZ01vZGVzLmxlbmd0
aDsgaSsrKSB7Ci0gICAgdmFyIGFscGhhQ29tcG9zaXRpbmdNb2RlID0gYWxwaGFDb21wb3NpdGlu
Z01vZGVzW2ldOwotICAgIHRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24g
YW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgIiArIGFscGhhQ29tcG9zaXRpbmdNb2RlLAotICAg
ICAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYWxwaGFD
b21wb3NpdGluZ01vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpICIgKyBhbHBoYUNvbXBvc2l0aW5nTW9kZSArICIpKSIpOwotfQotCi10ZXN0RmlsdGVyUnVs
ZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0LCBhbHBoYSBj
b21wb3NpdGluZyBtb2RlIHNlY29uZCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUo
IkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBmaXJz
dCwgYmxlbmQgbW9kZSBzZWNvbmQiLAotICAgICAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpIiwgImN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJD
dXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIGFuZCBtaXggZnVuY3Rpb24iLAotICAgICAgICAgICAg
ImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSkiLCAi
Y3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKSIpOwot
Ci10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGluIENBUFMiLAotICAg
ICAgICAgICAgImN1c3RvbShub25lIE1JWCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIiwgImN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJD
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIG1lc2ggc2l6ZSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSwgMTApIiwgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSksIDEwKSIpOwotICAgICAgICAgICAgCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggbWVzaCBzaXplIiwKLSAgICAgICAgICAgICJjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpLCAxMCkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApIik7Ci0K
LXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBib3RoIG1lc2ggc2l6ZXMiLAotICAgICAgICAg
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCkiLCAiY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3Vz
dG9tIHdpdGggZGV0YWNoZWQgbWVzaCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIGRldGFjaGVkKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgZGV0YWNoZWQpIik7Ci0gICAgICAgICAgICAKLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20g
d2l0aCBkZXRhY2hlZCBhbmQgbWVzaCBzaXplIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpIiwgImN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1
c3RvbSB3aXRoIG51bWJlciBwYXJhbWV0ZXJzIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyki
LAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLCBw
MiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9t
IHdpdGggZmxvYXQgcGFyYW1ldGVycyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQu
MSA1LjIgNi4zIDcuNCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCBwMSAxLjEsIHAyIDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4yIDYu
MyA3LjQpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBwYXJhbWV0ZXIgbmFtZSBz
YW1lIGFzIENTUyB2YWx1ZSBrZXl3b3JkIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEgMCAxKSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGJhY2tncm91bmQgMCAxIDAgMSkiKTsKLQot
dGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1lc2ggc2l6ZSBhbmQgbnVtYmVyIHBhcmFtZXRl
cnMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNykiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykiKTsKLQotdGVzdEZpbHRlclJ1bGUoIk11bHRpcGxlIHdpdGggZnJh
Z21lbnQgc2hhZGVyIiwKLSAgICAgICAgICAgICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsCi0gICAgICAgICAgICBbIldlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfR1JBWVNDQUxFIiwKLSAgICAgICAgICAgICJXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTSIsCi0gICAgICAgICAgICAiV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9TRVBJQSJdLAotICAgICAgICAgICAgWyJncmF5c2NhbGUoKSIsCi0g
ICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIiwKLSAgICAgICAg
ICAgICJzZXBpYSgpIl0pOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIGluIENBUFMiLAotICAg
ICAgICAgICAgIkNVU1RPTSh1cmwodmVydGV4LnNoYWRlcikpIiwgImN1c3RvbSh1cmwodmVydGV4
LnNoYWRlcikpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBvbmUgdHJhbnNmb3Jt
IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgb25lVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCBvbmVUcmFuc2Zvcm0gcm90YXRlKDBkZWcpKSIpOwotCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtcyIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJhbnNmb3JtIHJvdGF0ZSgw
ZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpKSIsCi0g
ICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUo
MHB4LCAwcHgpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdHdvIHNlcGFyYXRl
IHRyYW5zZm9ybXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCBmaXJzdFRyYW5zZm9ybSByb3RhdGUoMGRlZyksIHNlY29uZFRyYW5zZm9ybSByb3RhdGUo
MGRlZykpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
Zmlyc3RUcmFuc2Zvcm0gcm90YXRlKDBkZWcpLCBzZWNvbmRUcmFuc2Zvcm0gcm90YXRlKDBkZWcp
KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggYSBzaW5nbGUgZWxlbWVudCBhcnJh
eSgpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDAg
YXJyYXkoMSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgdDAgYXJyYXkoMSkpIik7Ci0KLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGEgc2lu
Z2xlIG5lZ2F0aXZlIGVsZW1lbnQgYXJyYXkoKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUg
dXJsKGZyYWdtZW50LnNoYWRlciksIHQxIGFycmF5KC0xLjAxKSkiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0MSBhcnJheSgtMS4wMSkpIik7Ci0KLXRl
c3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtdWx0aXBsZSBlbGVtZW50cyBhcnJheSgpIiwKLSAg
ICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDIgYXJyYXkoMSwg
MiwgMywgNCwgNSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgdDIgYXJyYXkoMSwgMiwgMywgNCwgNSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0
b20gd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXQgZWxlbWVudHMgYXJyYXkoKSIsCi0gICAgICAg
ICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQzIGFycmF5KDEsIC0yLjIs
IDMuMTQsIDAuNCwgNSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSwgdDMgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSkiKTsKLQotdGVzdEZpbHRl
clJ1bGUoIk11bHRpcGxlIGFycmF5KCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCB0NSBhcnJh
eSgxLCAyLCAzKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCB0NSBhcnJheSgxLCAyLCAzKSki
KTsKLQotLy8gRklYTUU6IFRoZSBmb2xsb3dpbmcgdGVzdHMgd2lsbCBiZSByZW1vdmVkIGFsb25n
IHdpdGggdGhlIG1lc2ggYm94IHR5cGVzIHBhcnNpbmcgY29kZS4KLS8vIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM3NzgKLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kg
LSBDdXN0b20gd2l0aCBtZXNoIGJveCBzaXplcyBhbmQgY29udGVudC1ib3giLAotICAgICAgICAg
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgY29udGVudC1ib3gpIiwK
LSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwot
Ci10ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdpdGggbWVzaCBib3ggc2l6ZXMgYW5k
IGJvcmRlci1ib3giLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxIDEgYm9yZGVyLWJveCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20g
d2l0aCBtZXNoIGJveCBzaXplcyBhbmQgcGFkZGluZy1ib3giLAotICAgICAgICAgICAgImN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgcGFkZGluZy1ib3gpIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwotCi10ZXN0Rmls
dGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdpdGggcGFydGlhbCBtZXNoIGJveCBzaXplIGFuZCBw
YWRkaW5nLWJveCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIHBhZGRpbmctYm94KSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEwKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdp
dGggcGFkZGluZy1ib3ggYW5kIGRldGFjaGVkIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcGFkZGluZy1ib3ggZGV0YWNoZWQpIiwKLSAgICAgICAgICAg
ICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0YWNoZWQpIik7Ci0KLXRlc3RG
aWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20gd2l0aCBib3RoIG1lc2gtc2l6ZXMgYW5kIHBhZGRp
bmctYm94IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
MTAgMjAgcGFkZGluZy1ib3gpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMTAgMjApIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20g
d2l0aCBtZXNoLXNpemVzLCBwYWRkaW5nLWJveCBhbmQgZGV0YWNoZWQiLAotICAgICAgICAgICAg
ImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCBwYWRkaW5nLWJveCBkZXRh
Y2hlZCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAx
MCAyMCBkZXRhY2hlZCkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9z
Y3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC5qcyBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9zY3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggYzMzOGQyNC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2VmZmVjdC1jdXN0b20tZGlzYWJsZWQuanMKKysrIC9k
ZXYvbnVsbApAQCAtMSwyNyArMCwwIEBACi1kZXNjcmlwdGlvbigiVGVzdCB0aGF0IHRoZSBjdXN0
b20oKSBmdW5jdGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkgaXMgbm90IHBhcnNl
ZCB3aGVuIENTUyBDdXN0b20gRmlsdGVyIGlzIGRpc2FibGVkLiIpOwotCi1pZiAod2luZG93LnRl
c3RSdW5uZXIpCi0gICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgZmFsc2UpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJl
IGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBzdHlsZXNoZWV0
LCBjc3NSdWxlLCBkZWNsYXJhdGlvbjsKLXZhciBzdHlsZUVsZW1lbnQgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzdHlsZUVsZW1l
bnQpOwotc3R5bGVzaGVldCA9IHN0eWxlRWxlbWVudC5zaGVldDsKLQotZnVuY3Rpb24gdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKGRlc2NyaXB0aW9uLCBydWxlKQotewotICAgIGRlYnVnKGRlc2NyaXB0
aW9uICsgIiA6ICIgKyBydWxlKTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiYm9keSB7
IC13ZWJraXQtZmlsdGVyOiAiICsgcnVsZSArICI7IH0iLCAwKTsKLSAgICBjc3NSdWxlID0gc3R5
bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAKLSAgICBzaG91bGRCZSgiY3NzUnVsZS50eXBl
IiwgIjEiKTsKLQotICAgIGRlY2xhcmF0aW9uID0gY3NzUnVsZS5zdHlsZTsKLSAgICBzaG91bGRC
ZSgiZGVjbGFyYXRpb24ubGVuZ3RoIiwgIjAiKTsKLSAgICBzaG91bGRCZSgiZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSIsICJudWxsIik7Ci19Ci0KLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciIsICJjdXN0b20odXJs
KHZlcnRleC5zaGFkZXIpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aXBsZSB3aXRo
IGZyYWdtZW50IHNoYWRlciIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSkgc2VwaWEoKSIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSkgc2VwaWEoKSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvZG9tL2dsb2Jh
bC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9k
b20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCBlOTgz
Mjg4Li4zYTdhZmExIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9kb20vZ2xvYmFsLWNvbnN0
cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9kb20v
Z2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dApAQCAtMTg4OCwxMSAr
MTg4OCw2IEBAIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdX
ZWJLaXRBbmltYXRpb25FdmVudCcpLmhhc093blByb3BlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5pbWF0aW9uRXZlbnQnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBB
U1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRp
b25FdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLnZhbHVlIGlzIFdlYktp
dENTU0ZpbHRlclJ1bGUKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNl
Ci1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NT
RmlsdGVyUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3Qu
Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS5l
bnVtZXJhYmxlIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVy
VmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZQogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclZhbHVlJykuaGFzT3du
UHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0
JykgaXMgZmFsc2UKQEAgLTE5MTMsMTEgKzE5MDgsNiBAQCBQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWF0cml4JykuaGFzT3duUHJvcGVydHko
JwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENT
U01hdHJpeCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmVudW1lcmFi
bGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdXZWJLaXRDU1NNYXRyaXgnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQotUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUn
KS52YWx1ZSBpcyBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlCi1QQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhh
c093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJykuZW51bWVyYWJsZSBpcyBmYWxz
ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENT
U01peEZ1bmN0aW9uVmFsdWUnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU1JlZ2lvblJ1bGUnKS52YWx1
ZSBpcyBXZWJLaXRDU1NSZWdpb25SdWxlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVsZScpLmhhc093blByb3BlcnR5KCdnZXQn
KSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J1dlYktpdENTU1JlZ2lvblJ1bGUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy1tb3VudGFpbmxpb24vanMvZG9tL2ds
b2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMtbW91bnRhaW5saW9uL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJp
YnV0ZXMtZXhwZWN0ZWQudHh0CmluZGV4IGNkNmU4M2IuLjg2NjY5ZTQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy1tb3VudGFpbmxpb24vanMvZG9tL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjLW1vdW50YWlubGlvbi9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4
cGVjdGVkLnR4dApAQCAtMTg5MywxMSArMTg5Myw2IEBAIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmhhc093blByb3Bl
CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5p
bWF0aW9uRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcp
LmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1Q
QVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmls
dGVyUnVsZScpLnZhbHVlIGlzIFdlYktpdENTU0ZpbHRlclJ1bGUKLVBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3du
UHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQn
KSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J1dlYktpdENTU0ZpbHRlclJ1bGUnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmNv
bmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktp
dENTU0ZpbHRlclZhbHVlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFs
dWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKQEAgLTE5MTgsMTEgKzE5MTMsNiBA
QCBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NT
TWF0cml4JykuaGFzT3duUHJvcGVydHkoJwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBp
cyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU01hdHJpeCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNYXRyaXgnKS5jb25maWd1cmFibGUg
aXMgdHJ1ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQotUEFT
UyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKLVBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlJykuZW51bWVyYWJsZSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5jb25maWd1cmFibGUg
aXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU1JlZ2lvblJ1bGUnKS52YWx1ZSBpcyBXZWJLaXRDU1NSZWdpb25SdWxlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVs
ZScpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJv
cGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU1JlZ2lvblJ1bGUnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy13azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVz
dEV4cGVjdGF0aW9ucwppbmRleCBjMDRjY2VhLi5jOTQyMDVlIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMjIsOSArMjIyLDYgQEAgZmFz
dC9kb20vU3R5bGVTaGVldC9kZXRhY2hlZC1zdHlsZXNoZWV0LXdpdGhvdXQtd3JhcHBlci5odG1s
CiAjIEFsbCBzcGF0aWFsIG5hdmlnYXRpb24gdGVzdHMgZmFpbCBvbiBNYWMgV0syCiB3ZWJraXQu
b3JnL2IvOTY0MzggZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24KIAotIyBXSzIgdGVzdHMgZmFpbCBp
bWFnZSBkaWZmCi13ZWJraXQub3JnL2IvOTY1ODAgWyBEZWJ1ZyBdIGNzczMvZmlsdGVycy9jdXN0
b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
LQogIyBDYXVzZXMgbmV4dCB0ZXN0IHRvIGNyYXNoCiB3ZWJraXQub3JnL2IvOTg5NjAgZmFzdC9w
YXJzZXIvZG9jdW1lbnQtb3Blbi1pbi11bmxvYWQuaHRtbCBbIFNraXAgXQogCkBAIC0zMjAsNyAr
MzE3LDYgQEAgd2Via2l0Lm9yZy9iLzExODkyNSBjb21wb3NpdGluZy9iYWNrZ3JvdW5kcy9maXhl
ZC1iYWNrZ3JvdW5kcy5odG1sICBbIFBhc3MgSW1hZ2UKIHdlYmtpdC5vcmcvYi8xMTg5MjUgY29t
cG9zaXRpbmcvZ2VvbWV0cnkvZml4ZWQtcG9zaXRpb24tY29tcG9zaXRlZC1wYWdlLXNjYWxlLXNt
YWxsZXItdGhhbi12aWV3cG9ydC5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJr
aXQub3JnL2IvMTE4OTI1IGNvbXBvc2l0aW5nL292ZXJsYXAtYmxlbmRpbmcvY2hpbGRyZW4tb3Bh
Y2l0eS1odWdlLmh0bWwgIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8x
MTg5MjUgY29tcG9zaXRpbmcvb3ZlcmxhcC1ibGVuZGluZy9jaGlsZHJlbi1vcGFjaXR5LW5vLW92
ZXJsYXAuaHRtbCAgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzExODky
NSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMu
aHRtbCAgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzExODkyNSBmYXN0
L2xheWVycy9uby1jbGlwcGluZy1vdmVyZmxvdy1oaWRkZW4tYWRkZWQtYWZ0ZXItdHJhbnNpdGlv
bi5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTE4OTI1IGZh
c3QvbXVsdGljb2wvbWl4ZWQtb3BhY2l0eS1maXhlZC10ZXN0Lmh0bWwgIFsgUGFzcyBJbWFnZU9u
bHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xMTg5MjUgZmFzdC9yZWdpb25zL2ZpeGVkLXBvcy1l
bGVtLWluLXJlZ2lvbi5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCkBAIC0zNDYsMjMg
KzM0Miw2IEBAIHdlYmtpdC5vcmcvYi8xMjIyMzQgc3ZnL2ZpbHRlcnMvZmlsdGVyLWN5Y2xlLmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJz
L251bGwtZWZmZWN0LWNoZWNrLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi8xMjIyMzQgZmFzdC9pbWFnZXMvcGRmLWFzLWltYWdlLXdpdGgtYW5ub3RhdGlvbnMuaHRtbCBb
IFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTIyMjM0IGZhc3QvaW1hZ2Vz
L3BkZi1hcy1pbWFnZS1jcm9wLWJveC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdl
YmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21wb3NpdGVkL2N1c3RvbS1m
aWx0ZXItYmxlbmQtbW9kZXMuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQu
b3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hLXRleC1jb29y
ZC1vcHRpb25hbC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8x
MjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5k
aXJlY3QtaW5kZXguaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2Iv
MTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS5odG1sIFsgUGFz
cyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1
cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY2hhbmdlLWJsZW5kLW1vZGUuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci5o
dG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10
eXBlLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBj
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWF0Ti5odG1sIFsgUGFzcyBJbWFnZU9u
bHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLW1lc2gtY29sdW1uLXJvdy1vcmRlci5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWls
dXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmls
dGVyLXUtbWVzaC1ib3guaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3Jn
L2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtc2l6ZS5o
dG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtdGV4dHVyZS1zaXplLmh0bWwgWyBQYXNzIElt
YWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBd
Ci13ZWJraXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11
bmF2YWlsYWJsZS12YXJ5aW5nLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0
Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LWNvbG9yLW1hdHJpeC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFj
dGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KIAogIyBU
aWxlZCBiYWNrZ3JvdW5kIGltYWdlcyB0aGF0IGludGVyc2VjdCB0aGUgdGlsZXMgYXJlIGdldHRp
bmcgd2VpcmQgZnJpbmdpbmcuCiB3ZWJraXQub3JnL2IvMTIyMjM1IGNzczMvbWFza2luZy9tYXNr
LXJlcGVhdC1zcGFjZS1ib3JkZXIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA1MjFhMzhlLi5hYTM2Mjc4IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucworKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNjYzLDE1ICs2
NjMsNiBAQCBmYXN0L2NhbnZhcy9jYW52YXMtcXVhZHJhdGljLXNhbWUtZW5kcG9pbnQuaHRtbAog
Y3NzMy9maWx0ZXJzL2NvbXBvc2l0ZWQtZHVyaW5nLXRyYW5zaXRpb24tbGF5ZXJ0cmVlLmh0bWwK
IHdlYmtpdC5vcmcvYi85NTYyMiBjc3MzL2ZpbHRlcnMvY29tcG9zaXRlZC1kdXJpbmctYW5pbWF0
aW9uLWxheWVydHJlZS5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAotIyAtLS0gQ3VzdG9tIEZpbHRl
cnMgLS0tCi0jIFRoZSBmb2xsb3dpbmcgNSB0ZXN0cyBhcmUgY3VycmVudGx5IHNraXBwZWQgb24g
TWFjIGZvciBzbGlnaHQgY29sb3IgZGlmZmVyZW5jZXMsCi0jIHBsZWFzZSBzZWUgdGhlIHJlbGV2
YW50IGJ1ZzogaHR0cDovL3dlYmtpdC5vcmcvYi8xMDc0ODcKLXdlYmtpdC5vcmcvYi8xMDc0ODcg
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGlu
YXRpb24tYWxwaGEuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwNzQ4NyBjc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3IuaHRt
bCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwNzQ4NyBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtbHVtaW5vc2l0eS5odG1sIFsgU2tpcCBd
Ci13ZWJraXQub3JnL2IvMTA3NDg3IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1odWUuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEw
NzQ4NyBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5k
LW1vZGUtc2F0dXJhdGlvbi5odG1sIFsgU2tpcCBdCi0KICMgLS0tIFRleHQgLS0tCiBmYXN0L2Zv
cm1zL3RleHQtY29udHJvbC1pbnRyaW5zaWMtd2lkdGhzLmh0bWwKIHBsYXRmb3JtL21hYy9mYXN0
L3RleHQvY29tYmluaW5nLWNoYXJhY3Rlci1zZXF1ZW5jZS1mYWxsYmFjay5odG1sCkBAIC0xMTUy
LDggKzExNDMsNiBAQCB3ZWJraXQub3JnL2IvMTE1MjkyIGZhc3Qvd3JpdGluZy1tb2RlL3ZlcnRp
Y2FsLWZvbnQtZmFsbGJhY2suaHRtbAogIyBGYWlscyB3aXRoIFdlYktpdDEgb25seS4KIGVkaXRp
bmcvc2VjdXJlLWlucHV0L3Jlc2V0LXN0YXRlLW9uLW5hdmlnYXRpb24uaHRtbCBbIEZhaWx1cmUg
XQogCi13ZWJraXQub3JnL2IvMTE2MjM4IGNzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZhbGxi
YWNrLXRvLXNvZnR3YXJlLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotCiB3ZWJraXQu
b3JnL2IvMTE2MjQ0IGZhc3QvZXZlbnRzL21vdXNlLWN1cnNvci1pbWFnZS1zZXQuaHRtbCBbIEZh
aWx1cmUgUGFzcyBdCiAKIHdlYmtpdC5vcmcvYi8xMTYyNDUgY2FudmFzL3BoaWxpcC90ZXN0cy8y
ZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQpAQCAt
MTI2MSwxMiArMTI1MCw2IEBAIHdlYmtpdC5vcmcvYi8xMjMyODIgY29tcG9zaXRpbmcvcmVnaW9u
cy9wcm9wYWdhdGUtcmVnaW9uLWJveC1zaGFkb3ctYm9yZGVyLXBhZGRpCiAKIHdlYmtpdC5vcmcv
Yi8xMjMyNTAgcGx1Z2lucy9kZXN0cm95LWR1cmluZy1ucHAtbmV3LW9iamVjdC13aXRoLWZhbGxi
YWNrLWNvbnRlbnQuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKLXdlYmtpdC5vcmcvYi8xMjMzNzAg
WyBNYXZlcmlja3MgXSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2NvbXBvc2l0ZWQvY3VzdG9tLWZpbHRl
ci1ibGVuZC1tb2Rlcy5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8xMjMzNzAgWyBNYXZlcmlja3MgXSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
YmxlbmQtbW9kZXMuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2Iv
MTIzMzcwIFsgTWF2ZXJpY2tzIF0gY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNs
YW1wLWNzcy1jb2xvci1tYXRyaXguaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTIzMzcwIFsgTWF2ZXJpY2tzIF0gY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sIFsgUGFzcyBJbWFn
ZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjMzNzAgWyBNYXZlcmlja3MgXSBjc3MzL2Zp
bHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMuaHRtbCBbIFBh
c3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi0KIHdlYmtpdC5vcmcvYi8xMjMzNjkgc3ZnL2Nzcy9wYXJl
bnQtc2hhZG93LW9mZnNjcmVlbi5zdmcgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi8xMjMzNjkgWyBNb3VudGFpbkxpb24gXSBzdmcvY3NzL3BhcmVudC1zaGFkb3ctb2Zmc2NyZWVu
LnN2ZyBbIFBhc3MgXQogd2Via2l0Lm9yZy9iLzEyMzM2OSBzdmcvY3NzL3Jvb3Qtc2hhZG93LW9m
ZnNjcmVlbi5zdmcgWyBJbWFnZU9ubHlGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVj
dG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCAzNGU5MjdlLi40MTYyZmYxIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3Rv
cnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0x
OTAzLDExICsxOTAzLDYgQEAgUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGds
b2JhbCwgJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykuaGFzT3duUHJvcGUKIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmhh
c093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykuZW51bWVyYWJsZSBpcyBm
YWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktp
dEFuaW1hdGlvbkV2ZW50JykuY29uZmlndXJhYmxlIGlzIHRydWUKLVBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykudmFsdWUg
aXMgV2ViS2l0Q1NTRmlsdGVyUnVsZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0Jykg
aXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdX
ZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCi1QQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVy
UnVsZScpLmVudW1lcmFibGUgaXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuY29uZmlndXJhYmxlIGlzIHRy
dWUKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRD
U1NGaWx0ZXJWYWx1ZScpLnZhbHVlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlCiBQQVNTIE9iamVj
dC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUn
KS5oYXNPd25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJWYWx1ZScpLmhhc093blByb3Bl
cnR5KCdzZXQnKSBpcyBmYWxzZQpAQCAtMTkyOCwxMSArMTkyMyw2IEBAIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNYXRyaXgnKS5oYXNPd25Q
cm9wZXJ0eSgnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
V2ViS2l0Q1NTTWF0cml4JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWF0cml4Jyku
ZW51bWVyYWJsZSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZScpLnZhbHVlIGlzIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUKLVBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhh
c093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5lbnVtZXJhYmxl
IGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVs
ZScpLnZhbHVlIGlzIFdlYktpdENTU1JlZ2lvblJ1bGUKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NSZWdpb25SdWxlJykuaGFzT3duUHJvcGVy
dHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBm
YWxzZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlv
bnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRleCAxNjZm
NDQ5Li43NGIzZTkxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4
cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9u
cwpAQCAtNDIsOSArNDIsNiBAQCBjc3MzL2ZpbHRlcnMvZWZmZWN0LW9wYWNpdHktaHcuaHRtbAog
Y3NzMy9maWx0ZXJzL2VmZmVjdC1zYXR1cmF0ZS1ody5odG1sCiBjc3MzL2ZpbHRlcnMvZWZmZWN0
LXNlcGlhLWh3Lmh0bWwKIAotIyBDdXN0b20gZmlsdGVycyBub3QgeWV0IHN1cHBvcnRlZCBvbiBX
aW5kb3dzCi1jc3MzL2ZpbHRlcnMvY3VzdG9tCi0KICMgUmVtb3ZlIGZyb20gbGlzdCBhZnRlciBl
bmFibGluZyBDQU5WQVNfUEFUSAogZmFzdC9jYW52YXMvY2FudmFzLWN1cnJlbnRQYXRoLmh0bWwK
IGZhc3QvY2FudmFzL2NhbnZhcy1wYXRoLWNvbnN0cnVjdG9ycy5odG1sCkBAIC0yNDQ2LDcgKzI0
NDMsNiBAQCBjb21wb3NpdGluZy9maWx0ZXJzL3N3LW5lc3RlZC1zaGFkb3ctb3ZlcmxhcHMtaHct
bmVzdGVkLXNoYWRvdy5odG1sCiBjb21wb3NpdGluZy9pZnJhbWVzL2lmcmFtZS1zaXplLWZyb20t
emVyby5odG1sCiBjb21wb3NpdGluZy9pZnJhbWVzL292ZXJsYXBwZWQtaWZyYW1lLWlmcmFtZS5o
dG1sCiBjb21wb3NpdGluZy90aWxpbmcvdGlsZWQtbGF5ZXItcmVzaXplLmh0bWwKLWNzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12
YWxpZC5odG1sCiBlZGl0aW5nL2lucHV0L2ltZS1jb21wb3NpdGlvbi1jbGVhcnByZWVkaXQuaHRt
bAogZmFzdC9jYW52YXMvY2FudmFzLWNvbXBvc2l0ZS1hbHBoYS5odG1sCiBmYXN0L2NhbnZhcy9j
YW52YXMtcXVhZHJhdGljLXNhbWUtZW5kcG9pbnQuaHRtbApAQCAtMjQ4Miw5ICsyNDc4LDYgQEAg
d2Via2l0Lm9yZy9iLzYxMTM4IGh0dHAvdGVzdHMvdzNjL3dlYnBlcmYvc3VibWlzc2lvbi9JbnRl
bC9yZXNvdXJjZS10aW1pbmcKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTk1NDI4CiB3ZWJraXQub3JnL2IvMTAxNjcwIG1lZGlhL3ZpZGVvLWNvbnRyb2xzLWNhcHRp
b25zLmh0bWwgWyBTa2lwIF0KIAotIyBidWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MTIzNQotY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4Ci0KICMgYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTA0NDcKIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctY2hhbmdlZC10ZXh0Lmh0bWwKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJv
L1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZDUzODZjYS4uYTliMDhhNyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCkBAIC01NjUsOSArNTY1LDYg
QEAgY3NzMy9maWx0ZXJzL2VmZmVjdC1vcGFjaXR5LWh3Lmh0bWwKIGNzczMvZmlsdGVycy9lZmZl
Y3Qtc2F0dXJhdGUtaHcuaHRtbAogY3NzMy9maWx0ZXJzL2VmZmVjdC1zZXBpYS1ody5odG1sCiAK
LSMgQ3VzdG9tIGZpbHRlcnMgbm90IHlldCBzdXBwb3J0ZWQgb24gV2luZG93cwotY3NzMy9maWx0
ZXJzL2N1c3RvbQotCiAjIE5lZWRzIHJlYmFzZWxpbmUgYWZ0ZXIgYnVnIDk3MjE3IGlzIGZpeGVk
CiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzMyNQogY3NzMy9t
YXNraW5nL2NsaXAtcGF0aC1jaXJjbGUtcmVsYXRpdmUtb3ZlcmZsb3cuaHRtbApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZp
bmVzLnhjY29uZmlnCmluZGV4IGFhMzc1ODhkLi45NDY4YzgyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCkBAIC01MCw3ICs1MCw2IEBAIEVOQUJMRV9DU1NfRklMVEVSUyA9IEVOQUJMRV9DU1Nf
RklMVEVSUzsKIEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfQ1NTX0lN
QUdFX1JFU09MVVRJT04gPSA7CiBFTkFCTEVfQ1NTX1JFR0lPTlMgPSBFTkFCTEVfQ1NTX1JFR0lP
TlM7Ci1FTkFCTEVfQ1NTX1NIQURFUlMgPSBFTkFCTEVfQ1NTX1NIQURFUlM7CiBFTkFCTEVfQ1NT
X1NIQVBFUyA9IEVOQUJMRV9DU1NfU0hBUEVTOwogRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04g
PSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTjsKIEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklN
QVRJT05TX1VOUFJFRklYRUQgPSBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBS
RUZJWEVEOwpAQCAtMTk4LDQgKzE5Nyw0IEBAIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiBF
TkFCTEVfRlRMX0pJVCA9IDsKIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKLUZFQVRVUkVfREVG
SU5FUyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FO
VkFTKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpICQoRU5BQkxFX0JM
T0IpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQo
RU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxF
X0NTUF9ORVhUKSAkKEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NT
U19DT01QT1NJVElORykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9D
U1NfRVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19JTUFHRV9P
UklFTlRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19S
RUdJT05TKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFC
TEVfQ1NTX1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9O
U19VTlBSRUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9D
U1MzX1RFWFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RF
WFRfTElORV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RP
TV9TQ0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RB
VEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RF
VEFJTFNfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJF
Q1RPUllfVVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVf
RFJBR0dBQkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNS
WVBURURfTUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVO
VFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9H
RU9MT0NBVElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQo
RU5BQkxFX0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9J
RlJBTUVfU0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElF
X1VJKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQo
RU5BQkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRF
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVU
X1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVf
SU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19B
SVJQTEFZKSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBU
X0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVf
TEVHQUNZX05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQo
RU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9M
SU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1ND
UklQVCkgJChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAk
KEVOQUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VS
U09SX1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9U
SUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lU
X1BMVUdJTikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JF
U1NfRUxFTUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMp
ICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JF
UVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJM
RV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5B
QkxFX1NIQURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hf
U1lOVEhFU0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9V
VCkgJChFTkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9O
VFMpICQoRU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykg
JChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5B
QkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0sp
ICQoRU5BQkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9X
RUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAk
KEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VS
UykgJChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQp
ICQoRU5BQkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1F
KSk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FD
Q0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xM
SU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxF
X0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVT
U0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JS
RUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRB
VElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVO
QUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9O
KSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NT
X1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBS
RUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RF
WFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElO
RV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hF
TUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNU
X0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNf
RUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllf
VVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dB
QkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURf
TUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQo
RU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NB
VElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxF
X0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVf
U0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAk
KEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxF
X0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVO
QUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVf
REFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRf
VFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZ
KSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVH
R0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZ
X05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxF
X0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BS
RUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkg
JChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJM
RV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1ND
QUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FU
SU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJ
TikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxF
TUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5B
QkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1Rf
QU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNP
TFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NI
QURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhF
U0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChF
TkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQo
RU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFC
TEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VT
RVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5B
QkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5J
TUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJM
RV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChF
TkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5B
QkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oIGIvU291cmNlL1dURi93
dGYvRmVhdHVyZURlZmluZXMuaAppbmRleCBmZmU3OTc4Li4wN2M4Njk0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0ZlYXR1
cmVEZWZpbmVzLmgKQEAgLTQxNiwxMCArNDE2LDYgQEAKICNkZWZpbmUgRU5BQkxFX0NTU19JTUFH
RV9TRVQgMAogI2VuZGlmCiAKLSNpZiAhZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpCi0jZGVm
aW5lIEVOQUJMRV9DU1NfU0hBREVSUyAwCi0jZW5kaWYKLQogI2lmICFkZWZpbmVkKEVOQUJMRV9D
U1NfU1RJQ0tZX1BPU0lUSU9OKQogI2RlZmluZSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTiAw
CiAjZW5kaWYKQEAgLTg4NCwxMCArODgwLDYgQEAKICNlcnJvciAiRU5BQkxFKFZJREVPX1RSQUNL
KSByZXF1aXJlcyBFTkFCTEUoVklERU8pIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpICYmICFFTkFCTEUoV0VCR0wpCi0jZXJyb3IgIkVOQUJMRShDU1NfU0hBREVSUykgcmVxdWly
ZXMgRU5BQkxFKFdFQkdMKSIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1Ip
ICYmICFFTkFCTEUoSU5TUEVDVE9SKQogI2Vycm9yICJFTkFCTEUoUkVNT1RFX0lOU1BFQ1RPUikg
cmVxdWlyZXMgRU5BQkxFKElOU1BFQ1RPUikiCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5k
ZXggNzZlMTY1YS4uZDJkMjdkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTMxOSwxMiArMzE5
LDEwIEBAIHNldChXZWJDb3JlX0lETF9GSUxFUwogICAgIGNzcy9TdHlsZU1lZGlhLmlkbAogICAg
IGNzcy9TdHlsZVNoZWV0LmlkbAogICAgIGNzcy9TdHlsZVNoZWV0TGlzdC5pZGwKLSAgICBjc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRs
CiAgICAgY3NzL1dlYktpdENTU0tleWZyYW1lUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTS2V5
ZnJhbWVzUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTTWF0cml4LmlkbAotICAgIGNzcy9XZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbAogICAgIGNzcy9XZWJLaXRDU1NSZWdpb25SdWxlLmlk
bAogICAgIGNzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NT
Vmlld3BvcnRSdWxlLmlkbApAQCAtMTEwOSwxNiArMTEwNywxMSBAQCBzZXQoV2ViQ29yZV9TT1VS
Q0VTCiAgICAgY3NzL1N0eWxlU2hlZXRMaXN0LmNwcAogICAgIGNzcy9UcmFuc2Zvcm1GdW5jdGlv
bnMuY3BwCiAgICAgY3NzL1ZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAKLSAgICBjc3MvV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcAotICAgIGNzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmNw
cAogICAgIGNzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAKICAgICBjc3MvV2ViS2l0Q1NTS2V5
ZnJhbWVSdWxlLmNwcAogICAgIGNzcy9XZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcAotICAgIGNz
cy9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcAogICAgIGNzcy9XZWJLaXRDU1NNYXRyaXgu
Y3BwCi0gICAgY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwCiAgICAgY3NzL1dlYktp
dENTU1JlZ2lvblJ1bGUuY3BwCi0gICAgY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmNwcAogICAg
IGNzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAKICAgICBjc3MvV2ViS2l0Q1NTVmlld3Bv
cnRSdWxlLmNwcAogCkBAIC0xNjk1LDcgKzE2ODgsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAg
ICAgbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0RvY3VtZW50LmNwcAogICAgIGxvYWRlci9jYWNoZS9D
YWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZS5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2Ny
aXB0LmNwcAotICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuY3BwCiAgICAgbG9hZGVyL2Nh
Y2hlL0NhY2hlZFhTTFN0eWxlU2hlZXQuY3BwCiAgICAgbG9hZGVyL2NhY2hlL01lbW9yeUNhY2hl
LmNwcAogCkBAIC0xOTM4LDIzICsxOTMwLDEyIEBAIHNldChXZWJDb3JlX1NPVVJDRVMKIAogICAg
IHBsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAKIAot
ICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
LmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29u
dGV4dC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2gu
Y3BwCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJh
dG9yLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyTGlzdC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBy
b2dyYW0uY3BwCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9n
cmFtSW5mby5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJl
bmRlcmVyLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbS5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3RhbnRM
aWdodFNvdXJjZS5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQmxlbmQuY3Bw
CiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUNvbG9yTWF0cml4LmNwcAogICAgIHBs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDb21wb25lbnRUcmFuc2Zlci5jcHAKICAgICBwbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ29tcG9zaXRlLmNwcAogICAgIHBsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNwcAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
RkVEaWZmdXNlTGlnaHRpbmcuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRURp
c3BsYWNlbWVudE1hcC5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFRHJvcFNo
YWRvdy5jcHAKQEAgLTE5NzQsOSArMTk1NSw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBw
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1NvdXJjZUFscGhhLmNwcAogICAgIHBsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvU291cmNlR3JhcGhpYy5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL1Nwb3RMaWdodFNvdXJjZS5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAKLQotICAgIHBsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvdGV4bWFwL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW1UZXh0dXJlTWFw
cGVyLmNwcAogCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXIuY3Bw
CiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJCYWNraW5nU3RvcmUu
Y3BwCkBAIC0yMjY5LDkgKzIyNDcsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgcmVuZGVy
aW5nL3N0eWxlL1N0eWxlQm94RGF0YS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNo
ZWRJbWFnZS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZVNldC5jcHAK
LSAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuY3BwCi0gICAgcmVuZGVyaW5n
L3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAKLSAgICByZW5kZXJpbmcvc3R5bGUv
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuY3BwCiAgICAgcmVuZGVyaW5nL3N0eWxlL1N0
eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5
bGVGaWx0ZXJEYXRhLmNwcAogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUZsZXhpYmxlQm94RGF0
YS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVE
ZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURl
ZmluZXMueGNjb25maWcKaW5kZXggYWEzNzU4OGQuLjk0NjhjODIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC01
MCw3ICs1MCw2IEBAIEVOQUJMRV9DU1NfRklMVEVSUyA9IEVOQUJMRV9DU1NfRklMVEVSUzsKIEVO
QUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJ
T04gPSA7CiBFTkFCTEVfQ1NTX1JFR0lPTlMgPSBFTkFCTEVfQ1NTX1JFR0lPTlM7Ci1FTkFCTEVf
Q1NTX1NIQURFUlMgPSBFTkFCTEVfQ1NTX1NIQURFUlM7CiBFTkFCTEVfQ1NTX1NIQVBFUyA9IEVO
QUJMRV9DU1NfU0hBUEVTOwogRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04gPSBFTkFCTEVfQ1NT
X1NUSUNLWV9QT1NJVElPTjsKIEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJF
RklYRUQgPSBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEOwpAQCAt
MTk4LDQgKzE5Nyw0IEBAIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiBFTkFCTEVfRlRMX0pJ
VCA9IDsKIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5B
QkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJM
RV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxF
X0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZB
U19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NTUF9ORVhUKSAk
KEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19DT01QT1NJVElO
RykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1NfRVhDTFVTSU9O
UykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikg
JChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAkKEVO
QUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNL
WV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVE
KSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQo
RU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVB
SykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFO
RExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1F
TlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVO
VCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FE
KSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JF
R0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFf
VjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxF
X0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikg
JChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hf
RFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxF
U1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJM
RV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVU
X1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJ
TUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9U
SU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVO
QUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAk
KEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElG
SUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FD
WV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENI
KSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFC
TEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRF
Ul9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAk
KEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykg
JChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChF
TkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkg
JChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BV
QkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFU
SU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9O
X01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19E
T00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAk
KEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVf
U1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxF
X1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9V
Q0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxF
Q1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJ
RVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9O
UykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJf
U09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVf
WEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xM
SU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CitGRUFUVVJF
X0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJE
X0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJM
RV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRI
KSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVO
QUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJM
RV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFC
TEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfSU1B
R0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9D
U1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJ
VElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEKSAkKEVO
QUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxF
X0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVBSykgJChF
TkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikg
JChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQo
RU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVOVCkgJChF
TkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVO
QUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JFR0lPTikg
JChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFfVjIpICQo
RU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExT
Q1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFC
TEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NB
TlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQo
RU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBV
VF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1RZUEVf
Q09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NB
TCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9J
T1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJM
RV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElP
TlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJf
QVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVO
QUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFCTEVfTUVE
SUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9FTEVN
RU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJM
RV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFC
TEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVf
UExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkgJChFTkFC
TEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BVQkxJQ19T
VUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZS
QU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElB
X1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19ET00pICQo
RU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAkKEVOQUJM
RV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVfU1VCVExF
X0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTVBM
QVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hfRVZF
TlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxM
KSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJRVdfTU9E
RV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9OUykgJChF
TkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VU
UykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJ
TUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xMSU5UX0Nf
TE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy5jcHAKaW5kZXggNjU3MjY4Yi4uZWRhYjEzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLmNwcApAQCAtNDgxLDkgKzQ4MSw2IEBACiAjaW5jbHVkZSAiSlNWYWxpZGl0eVN0YXRlLmNw
cCIKICNpbmNsdWRlICJKU1ZvaWRDYWxsYmFjay5jcHAiCiAjaW5jbHVkZSAiSlNXZWJLaXRBbmlt
YXRpb25FdmVudC5jcHAiCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkpTV2Vi
S2l0Q1NTRmlsdGVyUnVsZS5jcHAiCi0jZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAj
aW5jbHVkZSAiSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAiCiAjZW5kaWYKQEAgLTQ5MSw5ICs0
ODgsNiBAQAogI2luY2x1ZGUgIkpTV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5jcHAiCiAjaW5jbHVk
ZSAiSlNXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAiCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NN
YXRyaXguY3BwIgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJKU1dlYktpdENT
U01peEZ1bmN0aW9uVmFsdWUuY3BwIgotI2VuZGlmCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NSZWdp
b25SdWxlLmNwcCIKICNpbmNsdWRlICJKU1dlYktpdE5hbWVkRmxvdy5jcHAiCiAjaW5jbHVkZSAi
SlNXZWJLaXRQb2ludC5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCAzODJi
NDdiLi4xYjgwZjBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5t
YWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTIzNiwxMSAr
MjM2LDkgQEAgQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvY3NzL1N0eWxlU2hlZXQu
aWRsIFwKICAgICAkKFdlYkNvcmUpL2Nzcy9TdHlsZVNoZWV0TGlzdC5pZGwgXAogICAgICQoV2Vi
Q29yZSkvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmlkbCBcCi0gICAgJChXZWJDb3JlKS9jc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dlYktpdENTU0tl
eWZyYW1lUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dlYktpdENTU0tleWZyYW1lc1J1
bGUuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NNYXRyaXguaWRsIFwKLSAgICAk
KFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9jc3MvV2ViS2l0Q1NTUmVnaW9uUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dl
YktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NT
Vmlld3BvcnRSdWxlLmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmls
ZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCA5ZTJj
OThlLi4xMGFiNmMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0
LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTc5MSw4ICs3
OTEsNiBAQCB3ZWJjb3JlX2J1aWx0X3NvdXJjZXMgKz0gXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRBbmltYXRpb25FdmVudC5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNXZWJLaXRBbmltYXRpb25FdmVudC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2Vi
S2l0Q1NTRmlsdGVyUnVsZS5jcHAgXAotCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRD
U1NGaWx0ZXJSdWxlLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxl
LmNwcCBcCkBAIC04MDEsOCArNzk5LDYgQEAgd2ViY29yZV9idWlsdF9zb3VyY2VzICs9IFwKIAlE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIFwKIAlEZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTTWF0cml4LmNwcCBcCiAJRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU1dlYktpdENTU01hdHJpeC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgXAotCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U1dlYktpdENTU1JlZ2lvblJ1bGUuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYktp
dENTU1RyYW5zZm9ybVZhbHVlLmNwcCBcCkBAIC0xMzMxLDEyICsxMzI3LDEwIEBAIGRvbV9iaW5k
aW5nX2lkbHMgKz0gXAogCSQoV2ViQ29yZSkvY3NzL1N0eWxlTWVkaWEuaWRsIFwKIAkkKFdlYkNv
cmUpL2Nzcy9TdHlsZVNoZWV0LmlkbCBcCiAJJChXZWJDb3JlKS9jc3MvU3R5bGVTaGVldExpc3Qu
aWRsIFwKLQkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmlkbCBcCiAJJChXZWJD
b3JlKS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJL
aXRDU1NLZXlmcmFtZVJ1bGUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NLZXlmcmFt
ZXNSdWxlLmlkbCBcCiAJJChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NTTWF0cml4LmlkbCBcCi0JJChX
ZWJDb3JlKS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5pZGwgXAogCSQoV2ViQ29yZSkv
Y3NzL1dlYktpdENTU1JlZ2lvblJ1bGUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NU
cmFuc2Zvcm1WYWx1ZS5pZGwgXAogCSQoV2ViQ29yZSkvY3NzL1dlYktpdENTU1ZpZXdwb3J0UnVs
ZS5pZGwgXApAQCAtMjcxMSwxMCArMjcwNSw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291
cmNlL1dlYkNvcmUvY3NzL1RyYW5zZm9ybUZ1bmN0aW9ucy5oIFwKIAlTb3VyY2UvV2ViQ29yZS9j
c3MvVmlld3BvcnRTdHlsZVJlc29sdmVyLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1ZpZXdw
b3J0U3R5bGVSZXNvbHZlci5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTQXJyYXlG
dW5jdGlvblZhbHVlLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyUnVsZS5j
cHAgXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmggXAogCVNvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0
Q1NTS2V5ZnJhbWVSdWxlLmNwcCBcCkBAIC0yNzIzLDE0ICsyNzEzLDggQEAgd2ViY29yZV9zb3Vy
Y2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIFwK
IAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0cml4LmNwcCBcCiAJU291cmNlL1dlYkNv
cmUvY3NzL1dlYktpdENTU01hdHJpeC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZS5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNYXRG
dW5jdGlvblZhbHVlLmggXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlv
blZhbHVlLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFs
dWUuaCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1JlZ2lvblJ1bGUuY3BwIFwKIAlT
b3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTUmVnaW9uUnVsZS5oIFwKLQlTb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2Vi
S2l0Q1NTU2hhZGVyVmFsdWUuaCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5z
Zm9ybVZhbHVlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5zZm9ybVZh
bHVlLmggXAogCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3BwIFwK
QEAgLTM5MzgsOCArMzkyMiw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCBcCiAJU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAgXAogCVNvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuaCBcCi0JU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFNoYWRlci5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRTaGFkZXIuaCBcCiAJU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFN0eWxl
U2hlZXRDbGllbnQuaCBcCiAJU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFRleHRU
cmFjay5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRUZXh0VHJhY2su
aCBcCkBAIC00NjE3LDEyICs0NTk5LDYgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZS5oIFwKIAlTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZVNldC5jcHAgXAogCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZEltYWdlU2V0LmggXAotCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5jcHAgXAotCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5oIFwKLQlTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCBcCi0JU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIFwK
LQlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
Q2FjaGUuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtQ2FjaGUuaCBcCiAJU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlRGFzaGJvYXJkUmVnaW9uLmggXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9T
dHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU3R5bGVEZXByZWNhdGVkRmxleGlibGVCb3hEYXRhLmggXApAQCAtNDY0NCwx
MyArNDYyMCwxMSBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZU11bHRpQ29sRGF0YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZU11bHRpQ29sRGF0YS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVQZW5kaW5nSW1hZ2UuaCBcCi0JU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1N0eWxlUGVuZGluZ1NoYWRlci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmggXAogCVNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcCBcCiAJU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaCBcCiAJU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmVmbGVjdGlvbi5oIFwKLQlTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVTaGFkZXIuaCBcCiAJU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlU3Vycm91bmREYXRhLmNwcCBcCiAJU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlU3Vycm91bmREYXRhLmggXAogCVNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZVRyYW5zZm9ybURhdGEuY3BwIFwKQEAgLTU2NDMsMzUgKzU2MTcs
NiBAQCBwbGF0Zm9ybV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jcHUvYXJtL2ZpbHRlcnMvRkVHYXVzc2lhbkJsdXJORU9OLmggXAogCVNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAg
XAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxp
Z2h0aW5nTkVPTi5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb25zdGFudHMu
aCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0
ZXJHbG9iYWxDb250ZXh0LmNwcCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmggXAotCVNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5jcHAgXAotCVNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5oIFwKLQlT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hH
ZW5lcmF0b3IuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24u
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlck9wZXJhdGlvbi5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgXAotCVNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUGFyYW1ldGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIFwKLQlTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0u
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlclByb2dyYW0uaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwIFwKLQlTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1JbmZv
LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUmVuZGVyZXIuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFBy
b2dyYW0uaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCBcCi0JU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0
ZWRQcm9ncmFtLmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
RGlzdGFudExpZ2h0U291cmNlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9EaXN0YW50TGlnaHRTb3VyY2UuaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9GRUJsZW5kLmNwcCBcCkBAIC01Njg0LDggKzU2MjksNiBAQCBw
bGF0Zm9ybV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0ZFQ29tcG9zaXRlLmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNwcCBcCi0JU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5oIFwKIAlTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFRGlmZnVzZUxpZ2h0aW5nLmNw
cCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRURpZmZ1c2VM
aWdodGluZy5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZF
RGlzcGxhY2VtZW50TWFwLmNwcCBcCkBAIC02NDAwLDcgKzYzNDMsNiBAQCBlbmRpZgogaWYgVVNF
X0FDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HCiBpZiBVU0VfVEVYVFVSRV9NQVBQRVJfR0wKIHdlYmNv
cmVfc291cmNlcyArPSBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy90ZXhtYXAvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbVRleHR1cmVNYXBwZXIuY3BwIFwK
IAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL3RleG1hcC9UZXh0dXJl
TWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0uaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wuaCBcCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLm9yZGVyIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5v
cmRlcgppbmRleCA5NzU0ZGQ5Li43YjhiOWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLm9yZGVyCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUub3JkZXIKQEAgLTI3NDcs
NyArMjc0Nyw2IEBAIF9fWk43V2ViQ29yZTE4UmVuZGVyTGF5ZXJCYWNraW5nMTV1cGRhdGVUcmFu
c2Zvcm1FUEtOU18xMVJlbmRlclN0eWxlRQogX19aTjdXZWJDb3JlMTVHcmFwaGljc0xheWVyQ0Ex
MnNldFRyYW5zZm9ybUVSS05TXzIwVHJhbnNmb3JtYXRpb25NYXRyaXhFCiBfX1pOSzdXZWJDb3Jl
MjBUcmFuc2Zvcm1hdGlvbk1hdHJpeGVxRVJLUzBfCiBfX1pON1dlYkNvcmUxOFJlbmRlckxheWVy
QmFja2luZzEzdXBkYXRlRmlsdGVyc0VQS05TXzExUmVuZGVyU3R5bGVFCi1fX1pON1dlYkNvcmUx
MVJlbmRlckxheWVyMjNjb21wdXRlRmlsdGVyT3BlcmF0aW9uc0VQS05TXzExUmVuZGVyU3R5bGVF
CiBfX1pON1dlYkNvcmUxNkZpbHRlck9wZXJhdGlvbnNhU0VSS1MwXwogX19aTjNXVEY2VmVjdG9y
SU5TXzZSZWZQdHJJTjdXZWJDb3JlMTVGaWx0ZXJPcGVyYXRpb25FRUVMbTBFTlNfMTVDcmFzaE9u
T3ZlcmZsb3dFRWFTRVJLUzZfCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzTGF5ZXJDQTEwc2V0Rmls
dGVyc0VSS05TXzE2RmlsdGVyT3BlcmF0aW9uc0UKQEAgLTIwNjU5LDcgKzIwNjU4LDYgQEAgX19a
VFZON1dlYkNvcmUxMUNhY2hlZEltYWdlRQogX19aVFZON1dlYkNvcmUxN0NhY2hlZFJhd1Jlc291
cmNlRQogX19aVFZON1dlYkNvcmUxNENhY2hlZFJlc291cmNlRQogX19aVFZON1dlYkNvcmUxMkNh
Y2hlZFNjcmlwdEUKLV9fWlRWTjdXZWJDb3JlMTJDYWNoZWRTaGFkZXJFCiBfX1pUVk43V2ViQ29y
ZTE3Q2FjaGVkU1ZHRG9jdW1lbnRFCiBfX1pUVk43V2ViQ29yZTE1Q2FjaGVkVGV4dFRyYWNrRQog
X19aVFZON1dlYkNvcmUxOUNhY2hlZFhTTFN0eWxlU2hlZXRFCkBAIC0yMDcyMSw4ICsyMDcxOSw2
IEBAIF9fWlRWTjdXZWJDb3JlMTNDU1NTdHlsZVNoZWV0RQogX19aWk43V2ViQ29yZTIwQ1NTVmFs
dWVLZXl3b3Jkc0hhc2gxM2ZpbmRWYWx1ZUltcGxFUEtjakUxNXZhbHVlX3dvcmRfbGlzdAogX19a
TjdXZWJDb3JlTDl2YWx1ZUxpc3RFCiBfX1pUVk43V2ViQ29yZTExQ3VzdG9tRXZlbnRFCi1fX1pU
Vk43V2ViQ29yZTIxQ3VzdG9tRmlsdGVyT3BlcmF0aW9uRQotX19aVFZON1dlYkNvcmUxOUN1c3Rv
bUZpbHRlclByb2dyYW1FCiBfX1pUVk43V2ViQ29yZThEYXRhYmFzZUUKIF9fWlRWTjdXZWJDb3Jl
MTVEYXRhYmFzZUNvbnRleHRFCiBfX1pUVk43V2ViQ29yZTEyRGF0YWJhc2VTeW5jRQpAQCAtMjA4
MTAsNyArMjA4MDYsNiBAQCBfX1pUVk43V2ViQ29yZTEzRkVDb2xvck1hdHJpeEUKIF9fWlRWTjdX
ZWJDb3JlMTlGRUNvbXBvbmVudFRyYW5zZmVyRQogX19aVFZON1dlYkNvcmUxMUZFQ29tcG9zaXRl
RQogX19aVFZON1dlYkNvcmUxNkZFQ29udm9sdmVNYXRyaXhFCi1fX1pUVk43V2ViQ29yZTE0RkVD
dXN0b21GaWx0ZXJFCiBfX1pUVk43V2ViQ29yZTE3RkVEaWZmdXNlTGlnaHRpbmdFCiBfX1pUVk43
V2ViQ29yZTE3RkVEaXNwbGFjZW1lbnRNYXBFCiBfX1pUVk43V2ViQ29yZTEyRkVEcm9wU2hhZG93
RQpAQCAtMjM2MDQsNyArMjM1OTksNiBAQCBfX1pUVk43V2ViQ29yZTEyU3RvcmFnZUV2ZW50RQog
X19aVFZON1dlYkNvcmUyMFN0b3JhZ2VOYW1lc3BhY2VJbXBsRQogX19aVFZON1dlYkNvcmUxNlN0
eWxlQ2FjaGVkSW1hZ2VFCiBfX1pUVk43V2ViQ29yZTE5U3R5bGVDYWNoZWRJbWFnZVNldEUKLV9f
WlRWTjdXZWJDb3JlMTdTdHlsZUNhY2hlZFNoYWRlckUKIF9fWlRWTjdXZWJDb3JlMTNTdHlsZWRF
bGVtZW50RQogX19aVFZON1dlYkNvcmUxMlN0eWxlRWxlbWVudEUKIF9fWlRWTjdXZWJDb3JlMTlT
dHlsZUdlbmVyYXRlZEltYWdlRQpAQCAtMjM5MjgsMTYgKzIzOTIyLDExIEBAIF9fWlRWTjdXZWJD
b3JlNVhQYXRoMTdWYXJpYWJsZVJlZmVyZW5jZUUKIF9fWlRWTjdXZWJDb3JlMTNYU0xJbXBvcnRS
dWxlRQogX19aVFZON1dlYkNvcmUxM1hTTFN0eWxlU2hlZXRFCiBfX1pUVk43V2ViQ29yZTE0TG9h
ZGVyU3RyYXRlZ3lFCi1fX1pUVk43V2ViQ29yZTMwVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uRQogX19aVFZON1dlYkNvcmUxMk5vZGVSYXJlRGF0YUUKIF9fWlRWTjdXZWJDb3JlMjNTY3Jv
bGxpbmdTdGF0ZUZpeGVkTm9kZUUKIF9fWlRWTjdXZWJDb3JlMjJTY3JvbGxpbmdUcmVlRml4ZWRO
b2RlRQogX19aVFZON1dlYkNvcmUyMFJlbmRlclRoZW1lTWFjU2hhcmVkRQogX19aVFZON1dlYkNv
cmUyNFdlYkNvcmVBVkZSZXNvdXJjZUxvYWRlckUKLV9fWk43V2ViQ29yZTM4SlNXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlQ29uc3RydWN0b3I2c19pbmZvRQotX19aTjdXZWJDb3JlMzZKU1dlYktp
dENTU01peEZ1bmN0aW9uVmFsdWVQcm90b3R5cGU2c19pbmZvRQotX19aTjdXZWJDb3JlMjdKU1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWU2c19pbmZvRQotX19aTjdXZWJDb3JlTDM4SlNXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlVGFibGVWYWx1ZXNFCiBfX1pUVk43V2ViQ29yZTI1SW5iYW5kVGV4
dFRyYWNrUHJpdmF0ZUFWRkUKIF9fWlRWTjdXZWJDb3JlMjlJbmJhbmRUZXh0VHJhY2tQcml2YXRl
QVZGT2JqQ0UKIF9fWlRWTjdXZWJDb3JlMTVJbmJhbmRUZXh0VHJhY2tFCkBAIC0yNjIzOCw3ICsy
NjIyNyw2IEBAIF9fWlRWTjdXZWJDb3JlMTVTZWN1cmVUZXh0VGltZXJFCiBfX1paTjdXZWJDb3Jl
TDIwbWVkaWFDb250cm9sbGVyVGhlbWVFdkUxNWNvbnRyb2xsZXJUaGVtZQogX19aVFZOM1dURjIx
TWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJDb3JlMTZQT0RGcmVlTGlzdEFyZW5h
SU5TMl8xNVBPRFJlZEJsYWNrVHJlZUlOUzJfMTFQT0RJbnRlcnZhbElpUE5TMl8xMVJlbmRlckJs
b2NrMTRGbG9hdGluZ09iamVjdEVFRUU0Tm9kZUVFRUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0
cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyMEZsb3dUaHJlYWRDb250cm9sbGVyRUVFCi1f
X1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyNUN1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHRFRUUKIF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1lbnRhdGlv
bjdXcmFwcGVySU43V2ViQ29yZTIxUmVuZGVyTGF5ZXJDb21wb3NpdG9yRUVFCiBfX1pUVk4zV1RG
MjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUxMUxheW91dFN0YXRlRUVF
CiBfX1pUVk43V2ViQ29yZTE2UE9ERnJlZUxpc3RBcmVuYUlOU18xNVBPRFJlZEJsYWNrVHJlZUlO
U18xMVBPREludGVydmFsSWlQTlNfMTFSZW5kZXJCbG9jazE0RmxvYXRpbmdPYmplY3RFRUVFNE5v
ZGVFRUUKQEAgLTI2MzY0LDExICsyNjM1Miw2IEBAIF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1l
bnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE3U3RhdGljQ1NTUnVsZUxpc3RFRUUKIF9fWlRWTjNX
VEYyMU1lbW9yeUluc3RydW1lbnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE4U3R5bGVSdWxlS2V5
ZnJhbWVzRUVFCiBfX1pUVk43V2ViQ29yZTVUaW1lcklOU18xM1N0eWxlUmVzb2x2ZXJFRUUKIF9f
WlRWTjdXZWJDb3JlMjRSZWZlcmVuY2VGaWx0ZXJPcGVyYXRpb25FCi1fX1pUVk43V2ViQ29yZTI0
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtRQotX19aVFZON1dlYkNvcmUzMEN1c3RvbUZpbHRlclRy
YW5zZm9ybVBhcmFtZXRlckUKLV9fWlRWTjdXZWJDb3JlMjFDdXN0b21GaWx0ZXJQYXJhbWV0ZXJF
Ci1fX1pUVk43V2ViQ29yZTI3Q3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyRQotX19aVFZON1dl
YkNvcmUyNkN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyRQogX19aVFZON1dlYkNvcmUyNkNhY2hl
ZFNWR0RvY3VtZW50UmVmZXJlbmNlRQogX19aWk43V2ViQ29yZTExUmVuZGVyU3R5bGUxM2luaXRp
YWxGaWx0ZXJFdkUzb3BzCiBfX1pHVlpON1dlYkNvcmUxMVJlbmRlclN0eWxlMTNpbml0aWFsRmls
dGVyRXZFM29wcwpAQCAtMjY1MDAsNyArMjY0ODMsNiBAQCBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0
cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyMldlYktpdENTU0tleWZyYW1lc1J1bGVFRUUK
IF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1lbnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE1U3R5
bGVSdWxlUmVnaW9uRUVFCiBfX1pUVk43V2ViQ29yZTE1TGl2ZUNTU1J1bGVMaXN0SU5TXzE5V2Vi
S2l0Q1NTUmVnaW9uUnVsZUVFRQogX19aVFZOM1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dy
YXBwZXJJTjdXZWJDb3JlMTlXZWJLaXRDU1NSZWdpb25SdWxlRUVFCi1fX1pUVk43V2ViQ29yZTE4
U3R5bGVQZW5kaW5nU2hhZGVyRQogX19aVFZON1dlYkNvcmU1VGltZXJJTlNfMTZXZWJTb2NrZXRD
aGFubmVsRUVFCiBfX1pUVk43V2ViQ29yZTI3V2ViU29ja2V0RXh0ZW5zaW9uUHJvY2Vzc29yRQog
X19aTDIwZ2V0UVRNb3ZpZUxheWVyQ2xhc3MKQEAgLTI2NTk0LDkgKzI2NTc2LDYgQEAgX19aVFZO
M1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJDb3JlMTNFbGVtZW50U2hh
ZG93RUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNv
cmU5Q2xhc3NMaXN0RUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBl
cklON1dlYkNvcmUxOURhdGFzZXRET01TdHJpbmdNYXBFRUUKIF9fWlRWTjdXZWJDb3JlMTlWaWV3
cG9ydENvbnN0cmFpbnRzRQotX19aTjdXZWJDb3JlTDQzSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlQ29uc3RydWN0b3JUYWJsZUUKLV9fWk43V2ViQ29yZUw0MUpTV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZVByb3RvdHlwZVRhYmxlRQotX19aTjdXZWJDb3JlTDMySlNXZWJLaXRDU1NNaXhGdW5j
dGlvblZhbHVlVGFibGVFCiBfX1pUVk43V2ViQ29yZTVUaW1lcklOU185TGF5ZXJQb29sRUVFCiBf
X1pMMzVnZXRrQ01UZXh0TWFya3VwQXR0cmlidXRlX0FsaWdubWVudAogX19aTDM1Z2V0a0NNVGV4
dE1hcmt1cEFsaWdubWVudFR5cGVfU3RhcnQKQEAgLTI3MDA2LDEwICsyNjk4NSw2IEBAIF9fWlpO
N1dlYkNvcmUxMGdyYWJDdXJzb3JFdkUxYwogX19aR1ZaTjdXZWJDb3JlMTBncmFiQ3Vyc29yRXZF
MWMuYgogX19aWk43V2ViQ29yZTE0Z3JhYmJpbmdDdXJzb3JFdkUxYwogX19aR1ZaTjdXZWJDb3Jl
MTRncmFiYmluZ0N1cnNvckV2RTFjLmIKLV9fWlpON1dlYkNvcmUyOEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW0yNWRlZmF1bHRWZXJ0ZXhTaGFkZXJTdHJpbmdFdkUxOHZlcnRleFNoYWRlclN0
cmluZwotX19aR1ZaTjdXZWJDb3JlMjhDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtMjVkZWZh
dWx0VmVydGV4U2hhZGVyU3RyaW5nRXZFMTh2ZXJ0ZXhTaGFkZXJTdHJpbmcuYgotX19aWk43V2Vi
Q29yZTI4Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTI3ZGVmYXVsdEZyYWdtZW50U2hhZGVy
U3RyaW5nRXZFMjBmcmFnbWVudFNoYWRlclN0cmluZwotX19aR1ZaTjdXZWJDb3JlMjhDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtMjdkZWZhdWx0RnJhZ21lbnRTaGFkZXJTdHJpbmdFdkUyMGZy
YWdtZW50U2hhZGVyU3RyaW5nLmIKIF9fWlpON1dlYkNvcmVMMjdidWlsdEluVW5pZm9ybU5hbWVU
b1R5cGVNYXBFdkUxM25hbWVUb1R5cGVNYXAKIF9fWlpON1dlYkNvcmVMMjlidWlsdEluQXR0cmli
dXRlTmFtZVRvVHlwZU1hcEV2RTEzbmFtZVRvVHlwZU1hcAogX19aTjdXZWJDb3JlTDIxbm90aWZp
Y2F0aW9uU2NoZWR1bGVkRS5iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
eHByb2ovV2ViQ29yZS52Y3hwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvagppbmRleCBlZmY5NTJhLi4wOGU0ZDVkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKQEAgLTYxNDcsMjAgKzYxNDcsNiBA
QAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxk
PgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
ICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlv
bkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJp
dmVkU291cmNlc1xKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwIj4KLSAgICAgIDxFeGNs
dWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09
J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1
Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWls
ZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNh
aXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9t
QnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19X
aW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZy
b21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVn
U3VmZml4fFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1
Z1N1ZmZpeHx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZy
b21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVh
c2V8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21C
dWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8
eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQg
Q29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNh
aXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9t
QnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNl
X1dpbkNhaXJvfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJv
ZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJv
ZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICA8L0NsQ29tcGlsZT4K
ICAgICA8Q2xDb21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBs
YXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktp
dENTU1JlZ2lvblJ1bGUuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KQEAgLTcyMDMsNyArNzE4OSw2IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIu
Llxsb2FkZXJcY2FjaGVcQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCIgLz4KICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0
b3JzLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNo
ZWRTY3JpcHQuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hl
XENhY2hlZFNoYWRlci5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJc
Y2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5cbG9hZGVyXGNhY2hlXENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmNwcCIgLz4KICAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRUZXh0VHJhY2suY3BwIiAv
PgpAQCAtODEzMSwyMyArODExNiwxMiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxh
dGZvcm1cZ3JhcGhpY3NcdHJhbnNmb3Jtc1xUcmFuc2Zvcm1PcGVyYXRpb25zLmNwcCIgLz4KICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJh
bnNmb3JtU3RhdGUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcdHJhbnNmb3Jtc1xUcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uY3BwIiAvPgot
ICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0
b21GaWx0ZXJDb21waWxlZFByb2dyYW0uY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNw
cCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyTWVzaC5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuY3BwIiAv
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xD
dXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCIg
Lz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNc
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmNwcCIgLz4K
LSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3Vz
dG9tRmlsdGVyUmVuZGVyZXIuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxh
dGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCIg
Lz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNc
RGlzdGFudExpZ2h0U291cmNlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVCbGVuZC5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFQ29sb3JNYXRyaXguY3BwIiAv
PgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xG
RUNvbXBvbmVudFRyYW5zZmVyLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVDb21wb3NpdGUuY3BwIiAvPgogICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0cml4
LmNwcCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcRkVDdXN0b21GaWx0ZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VMaWdodGluZy5jcHAiIC8+CiAgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFRGlzcGxh
Y2VtZW50TWFwLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGZpbHRlcnNcRkVEcm9wU2hhZG93LmNwcCIgLz4KQEAgLTgxNjgsNyArODE0Miw2IEBA
CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFNv
dXJjZUFscGhhLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGZpbHRlcnNcU291cmNlR3JhcGhpYy5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFNwb3RMaWdodFNvdXJjZS5jcHAiIC8+
Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuY3BwIj4KICAgICAg
IDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZv
cm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAg
ICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
QEAgLTk1NDksMTUgKzk1MjIsMTEgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xT
VkdDU1NTdHlsZVNlbGVjdG9yLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNz
c1xUcmFuc2Zvcm1GdW5jdGlvbnMuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
Y3NzXFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxjc3NcV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcCIgLz4KICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAiIC8+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmNwcCIgLz4KICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcCIg
Lz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNYXRyaXguY3BwIiAv
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktp
dENTU1JlZ2lvblJ1bGUuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdl
YktpdENTU1NoYWRlclZhbHVlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNz
c1xXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxjc3NcV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9Ii4uXGNzc2ppdFxTZWxlY3RvckNvbXBpbGVyLmNwcCIgLz4KQEAgLTExNDI3LDcgKzEx
Mzk2LDYgQEAKICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9t
QnVpbGQ+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxyZW5k
ZXJpbmdcc3R5bGVcU3R5bGVDYWNoZWRTaGFkZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5j
bHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5j
cHAiPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
ICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQo
UGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgpAQCAtMTg1
MTcsNyArMTg0ODUsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9u
QnVpbGREaXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2
ZWRTb3VyY2VzXEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVy
ZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXRDU1NLZXlmcmFtZXNSdWxl
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilc
b2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNc
SlNXZWJLaXRDU1NNYXRyaXguaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmln
dXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1l
KVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIgLz4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3Jt
QXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU1Jl
Z2lvblJ1bGUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1
aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVk
U291cmNlc1xKU1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVy
ZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXROYW1lZEZsb3cuaCIgLz4K
QEAgLTE5MDIzLDcgKzE4OTkwLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGxvYWRl
clxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmgiIC8+
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU2NyaXB0Lmgi
IC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU2hhZGVy
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU3R5
bGVTaGVldENsaWVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNh
Y2hlXENhY2hlZFNWR0RvY3VtZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxs
b2FkZXJcY2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuaCIgLz4KQEAgLTE5MTE3LDgg
KzE5MDgzLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNz
XHRleG1hcFxjb29yZGluYXRlZFxBcmVhQWxsb2NhdG9yLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQ29tcG9zaXRp
bmdDb29yZGluYXRvci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcdGV4bWFwXGNvb3JkaW5hdGVkXENvb3JkaW5hdGVkQmFja2luZ1N0b3JlLmgiIC8+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29v
cmRpbmF0ZWRcQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIgLz4KLSAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxD
b29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW0uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEdy
YXBoaWNzTGF5ZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaCIgLz4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29y
ZGluYXRlZFxDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUuaCIgLz4KQEAgLTE5NDI4LDIzICsxOTM5
Miw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0cmFu
c2Zvcm1zXFRyYW5zZm9ybU9wZXJhdGlvbnMuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNmb3JtU3RhdGUuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJh
bnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIu
LlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmgi
IC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
XEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bS5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmls
dGVyc1xDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5o
IiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVy
c1xDdXN0b21GaWx0ZXJNZXNoLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCIgLz4KLSAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9t
RmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIiAvPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21G
aWx0ZXJQYXJhbWV0ZXIuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIiAvPgotICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0
ZXJQcm9ncmFtLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCIgLz4KLSAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8uaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyVHJhbnNmb3Jt
UGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRGlzdGFudExpZ2h0
U291cmNlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEZFQmxlbmQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRm
b3JtXGdyYXBoaWNzXGNwdVxhcm1cZmlsdGVyc1xGRUJsZW5kTkVPTi5oIiAvPgpAQCAtMTk0NTMs
NyArMTk0MDAsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyc1xGRUNvbXBvc2l0ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcY3B1XGFybVxmaWx0ZXJzXEZFQ29tcG9zaXRlQXJpdGhtZXRpY05F
T04uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcRkVDb252b2x2ZU1hdHJpeC5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUN1c3RvbUZpbHRlci5oIiAvPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VMaWdo
dGluZy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3Nc
ZmlsdGVyc1xGRURpc3BsYWNlbWVudE1hcC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURyb3BTaGFkb3cuaCIgLz4KQEAgLTE5NDc4
LDcgKzE5NDI0LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcU291cmNlQWxwaGEuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcU291cmNlR3JhcGhpYy5oIiAvPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3Vy
Y2UuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiIC8+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuaCIgLz4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGNhXFBsYXRmb3Jt
Q0FBbmltYXRpb24uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGNhXFBsYXRmb3JtQ0FMYXllci5oIiAvPgpAQCAtMTk4NjAsMTUgKzE5ODA1LDExIEBA
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcU3R5bGVTaGVldExpc3QuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xUcmFuc2Zvcm1GdW5jdGlvbnMuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xWaWV3cG9ydFN0eWxlUmVzb2x2ZXIuaCIgLz4K
LSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFs
dWUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU0tleWZy
YW1lUnVsZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU0tl
eWZyYW1lc1J1bGUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRD
U1NNYXRyaXguaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
Y3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XGNzc1xXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cY3NzXFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxjc3NcV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxjc3NqaXRcRnVuY3Rpb25DYWxsLmgiIC8+CkBAIC0yMDA3OCw4ICsyMDAxOSw2
IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVCYWNr
Z3JvdW5kRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0
eWxlXFN0eWxlQm94RGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVy
aW5nXHN0eWxlXFN0eWxlQ2FjaGVkSW1hZ2UuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZFNoYWRlci5oIiAvPgotICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRGVw
cmVjYXRlZEZsZXhpYmxlQm94RGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cmVuZGVyaW5nXHN0eWxlXFN0eWxlRmlsdGVyRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRmxleGlibGVCb3hEYXRhLmgiIC8+CkBAIC0y
MDA5MSwxMSArMjAwMzAsOSBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5n
XHN0eWxlXFN0eWxlTWFycXVlZURhdGEuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHJlbmRlcmluZ1xzdHlsZVxTdHlsZU11bHRpQ29sRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlUGVuZGluZ0ltYWdlLmgiIC8+Ci0gICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVQZW5kaW5nU2hhZGVy
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVS
YXJlSW5oZXJpdGVkRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVy
aW5nXHN0eWxlXFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaCIgLz4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVJlZmxlY3Rpb24uaCIgLz4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVNoYWRlci5oIiAvPgog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlU3Vycm91bmRE
YXRhLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5
bGVUcmFuc2Zvcm1EYXRhLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJp
bmdcc3R5bGVcU3R5bGVWYXJpYWJsZURhdGEuaCIgLz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwppbmRleCA4ZTk4OTUw
Li41ZjQxMjA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2Vi
Q29yZS52Y3hwcm9qLmZpbHRlcnMKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCkBAIC0xMDExLDkgKzEwMTEsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENhY2hlZFNjcmlwdC5jcHAiPgogICAgICAg
PEZpbHRlcj5sb2FkZXJcY2FjaGU8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRTaGFkZXIuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIj4K
ICAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBA
IC0xNjM1LDM2ICsxNjMyLDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uLmNwcCI+CiAg
ICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXM8L0ZpbHRlcj4KICAgICA8
L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNz
XGZpbHRlcnNcQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcCI+Ci0gICAgICA8RmlsdGVy
PnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9t
RmlsdGVyR2xvYmFsQ29udGV4dC5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2guY3BwIj4K
LSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwv
Q2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3Nc
ZmlsdGVyc1xDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCI+Ci0gICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmNwcCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAi
PgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAg
PC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW0uY3BwIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mby5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
PC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29t
cGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXERpc3RhbnRMaWdo
dFNvdXJjZS5jcHAiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0xNjgzLDkgKzE2NTAsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0
cml4LmNwcCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRl
cj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXGZpbHRlcnNcRkVDdXN0b21GaWx0ZXIuY3BwIj4KLSAgICAgIDxGaWx0ZXI+cGxh
dGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VM
aWdodGluZy5jcHAiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0xNzQ2LDkgKzE3MTAsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3Vy
Y2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcZmlsdGVyc1xWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwIj4KLSAg
ICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xD
b21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcY2Fc
R3JhcGhpY3NMYXllckNBLmNwcCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGNh
PC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0yMzQwLDkgKzIzMDEsNiBAQAogICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAiPgogICAg
ICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwIj4KICAgICAgIDxGaWx0ZXI+
Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0yMzU1LDE4ICsyMzEzLDkgQEAKICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNYXRyaXguY3BwIj4KICAgICAg
IDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAiPgotICAgICAgPEZp
bHRlcj5jc3M8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1
ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCI+Ci0gICAgICA8RmlsdGVy
PmNzczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5cY3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuY3BwIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0
ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2Vi
S2l0Q1NTU2hhZGVyVmFsdWUuY3BwIj4KLSAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+Ci0gICAg
PC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTVHJh
bnNmb3JtVmFsdWUuY3BwIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENv
bXBpbGU+CkBAIC0yODM1LDkgKzI3ODQsNiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cmVuZGVyaW5nXHN0eWxlXFN0eWxlQ2FjaGVkSW1hZ2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+cmVu
ZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVDYWNoZWRTaGFkZXIuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVEZXByZWNhdGVkRmxl
eGlibGVCb3hEYXRhLmNwcCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHlsZTwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgpAQCAtNjQzMyw5ICs2Mzc5LDYgQEAKICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0
dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU01hdHJpeC5jcHAi
PgogICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxl
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQo
UGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAiPgotICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNl
czwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iJChD
b25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVj
dE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAiPgogICAgICAg
PEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtNzk2
Nyw5ICs3OTEwLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxD
YWNoZWRTY3JpcHQuaCI+CiAgICAgICA8RmlsdGVyPmxvYWRlclxjYWNoZTwvRmlsdGVyPgogICAg
IDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENh
Y2hlZFNoYWRlci5oIj4KLSAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+Ci0gICAg
PC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2Fj
aGVkU3R5bGVTaGVldENsaWVudC5oIj4KICAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0
ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC04NTE2LDU3ICs4NDU2LDYgQEAKICAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNsYXRlVHJh
bnNmb3JtT3BlcmF0aW9uLmgiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0cmFu
c2Zvcm1zPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVy
LmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0g
ICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRl
cj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0g
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJDb25zdGFudHMu
aCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAg
ICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIj4KLSAgICAgIDxGaWx0ZXI+
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21G
aWx0ZXJNZXNoLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9y
bVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5j
bHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmls
dGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCI+Ci0gICAgICA8Rmls
dGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4K
LSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQcm9ncmFtLmgi
PgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAg
PC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCI+Ci0gICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmls
dGVyUHJvZ3JhbUluZm8uaCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0uaCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRGlzdGFudExpZ2h0U291cmNlLmgiPgogICAg
ICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbElu
Y2x1ZGU+CkBAIC04NTkxLDkgKzg0ODAsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0cml4LmgiPgogICAgICAgPEZp
bHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZF
Q3VzdG9tRmlsdGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
PC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFRGlmZnVzZUxpZ2h0aW5nLmgiPgogICAgICAgPEZp
bHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+
CkBAIC04NjY2LDkgKzg1NTIsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3VyY2UuaCI+CiAgICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcVmFsaWRhdGVk
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuaCI+CiAgICAgICA8
RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGNhPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBA
IC05MjYwLDkgKzkxNDMsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFZpZXdw
b3J0U3R5bGVSZXNvbHZlci5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9D
bEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTQXJyYXlG
dW5jdGlvblZhbHVlLmgiPgotICAgICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC05
Mjc1LDE4ICs5MTU1LDkgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRD
U1NNYXRyaXguaCI+CiAgICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRl
PgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUuaCI+Ci0gICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCI+
Ci0gICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuaCI+CiAgICAgICA8Rmls
dGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5cY3NzXFdlYktpdENTU1NoYWRlclZhbHVlLmgiPgotICAgICAgPEZpbHRlcj5jc3M8L0Zp
bHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xX
ZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+CkBAIC05ODEyLDEyICs5NjgzLDYgQEAKICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZEltYWdlLmgiPgogICAgICAgPEZp
bHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZFNoYWRlci5oIj4K
LSAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtLmgiPgotICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4K
LSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xz
dHlsZVxTdHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuaCI+CiAgICAgICA8RmlsdGVyPnJl
bmRlcmluZ1xzdHlsZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtOTg1MSw5ICs5NzE2
LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVBl
bmRpbmdJbWFnZS5oIj4KICAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5
bGVcU3R5bGVQZW5kaW5nU2hhZGVyLmgiPgotICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8
L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJl
bmRlcmluZ1xzdHlsZVxTdHlsZVJhcmVJbmhlcml0ZWREYXRhLmgiPgogICAgICAgPEZpbHRlcj5y
ZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTk4NjMsOSArOTcy
NSw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVS
ZWZsZWN0aW9uLmgiPgogICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAg
ICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHls
ZVxTdHlsZVNoYWRlci5oIj4KLSAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+
Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdc
c3R5bGVcU3R5bGVTdXJyb3VuZERhdGEuaCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHls
ZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTQyNzIsOSArMTQxMzEsNiBAQAogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZv
cm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2ViS2l0Q1NT
TWF0cml4LmgiPgogICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwv
Q2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGRE
aXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3Vy
Y2VzXEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIj4KLSAgICAgIDxGaWx0ZXI+RGVyaXZl
ZFNvdXJjZXM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwk
KFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU1JlZ2lvblJ1bGUuaCI+CiAg
ICAgICA8RmlsdGVyPkRlcml2ZWRTb3VyY2VzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBA
IC0xNDg0NSwxMiArMTQ3MDEsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcdGV4bWFwXGNvb3JkaW5hdGVkXENvb3JkaW5hdGVkQmFja2luZ1N0b3JlLmgi
PgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWQ8L0Zp
bHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRm
b3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcdGV4bWFwXGNvb3Jk
aW5hdGVkPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQ29vcmRpbmF0ZWRDdXN0
b21GaWx0ZXJQcm9ncmFtLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0ZXht
YXBcY29vcmRpbmF0ZWQ8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGlu
YXRlZEdyYXBoaWNzTGF5ZXIuaCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXHRl
eG1hcFxjb29yZGluYXRlZDwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGQ2ZjkzMWUu
LjRkZTM4MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKQEAgLTYxMiwxMSArNjEyLDYgQEAKIAkJMTRFODM3OEUwOUY4NUQ0RjAwQjg1
QUU0IC8qIEpTRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDE0RTgzNzhEMDlGODVENEYwMEI4NUFFNCAvKiBKU0V2ZW50LmggKi87IH07CiAJCTE0
RkZFMzFEMEFFMTk2MzMwMDEzNkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50QmFzZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTRGRkUzMUIwQUUxOTYzMzAw
MTM2QkY1IC8qIEhUTUxGcmFtZUVsZW1lbnRCYXNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMTRGRkUzMUUwQUUxOTYzMzAwMTM2QkY1IC8qIEhU
TUxGcmFtZUVsZW1lbnRCYXNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDE0RkZFMzFDMEFFMTk2MzMwMDEzNkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50
QmFzZS5jcHAgKi87IH07Ci0JCTE1MEI5MjM5MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NB
cnJheUZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTUwQjkyMzcxNUYwOERDNDAwRTEwOTg2IC8qIFdlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5jcHAgKi87IH07Ci0JCTE1MEI5MjNBMTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJL
aXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDE1MEI5MjM4MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJh
eUZ1bmN0aW9uVmFsdWUuaCAqLzsgfTsKLQkJMTVCM0ZDMTkxNUZCMjE3ODAwQTgxQkNCIC8qIEN1
c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxNUIzRkMxNzE1RkIyMTc4MDBBODFCQ0IgLyogQ3VzdG9tRmlsdGVy
QXJyYXlQYXJhbWV0ZXIuaCAqLzsgfTsKLQkJMTVCOEI3QzgxNjUyQzUyMjAwMzZFRjU1IC8qIEpT
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxNUI4QjdDNjE2NTJDNTIyMDAzNkVGNTUgLyogSlNXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlLmNwcCAqLzsgfTsKLQkJMTVCOEI3QzkxNjUyQzUyMjAwMzZFRjU1
IC8qIEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTVCOEI3QzcxNjUyQzUyMjAwMzZFRjU1IC8qIEpTV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovOyB9OwogCQkxNUM3NzA4RDEwMEQzQzZCMDA1QkEy
NjcgLyogVmFsaWRpdHlTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTVDNzcwOEExMDBEM0M2QTAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaCAq
LzsgfTsKIAkJMTVDNzcwOTMxMDBEM0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTVDNzcwOTExMDBE
M0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oICovOyB9OwogCQkxNUM3NzA5NDEwMEQz
Q0E4MDA1QkEyNjcgLyogSlNWYWxpZGl0eVN0YXRlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE1Qzc3MDkyMTAwRDNDQTgwMDVCQTI2NyAvKiBKU1Zh
bGlkaXR5U3RhdGUuY3BwICovOyB9OwpAQCAtMTAzMSw3ICsxMDI2LDYgQEAKIAkJMjlBODEyNEIw
RkJCOUNBOTAwNTEwMjkzIC8qIEFYT2JqZWN0Q2FjaGVNYWMubW0gaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyOUE4MTI0NzBGQkI5Q0E5MDA1MTAyOTMgLyog
QVhPYmplY3RDYWNoZU1hYy5tbSAqLzsgfTsKIAkJMjlBQ0IyMTIxNDNFNzEyODAwNkJDQTVGIC8q
IEFjY2Vzc2liaWxpdHlNb2NrT2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAyOUFDQjIxMTE0M0U3MTI4MDA2QkNBNUYgLyogQWNjZXNzaWJpbGl0
eU1vY2tPYmplY3QuaCAqLzsgfTsKIAkJMjlBQ0IyMTQxNDNFNzQ5ODAwNkJDQTVGIC8qIEFjY2Vz
c2liaWxpdHlNb2NrT2JqZWN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDI5QUNCMjEzMTQzRTc0OTgwMDZCQ0E1RiAvKiBBY2Nlc3NpYmlsaXR5TW9j
a09iamVjdC5jcHAgKi87IH07Ci0JCTI5Q0Q2MURFMTQ2RDAyODkwMDY4RTgyQSAvKiBXZWJLaXRD
U1NTaGFkZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTBCNDIxNTcxNDY5NzY5NjAwODdFNjA0IC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmgg
Ki87IH07CiAJCTI5RDdCQ0Y2MTQ0NEFGNTgwMDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3BpbkJ1
dHRvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAy
OUQ3QkNGNTE0NDRBRjU4MDA3MDYxOUMgLyogQWNjZXNzaWJpbGl0eVNwaW5CdXR0b24uY3BwICov
OyB9OwogCQkyOUQ3QkNGQTE0NDRBRjdEMDA3MDYxOUMgLyogQWNjZXNzaWJpbGl0eVNwaW5CdXR0
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI5RDdC
Q0Y5MTQ0NEFGN0QwMDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3BpbkJ1dHRvbi5oICovOyB9Owog
CQkyQjM2NUM4NDE1MjUxMTlFMDA5MUQyN0IgLyogUmVuZGVyU1ZHRWxsaXBzZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkI0MjM1QTAxNTI1MEY2MDAw
REJCQ0Q4IC8qIFJlbmRlclNWR0VsbGlwc2UuaCAqLzsgfTsKQEAgLTExNTIsNyArMTE0Niw2IEBA
CiAJCTMxMkQ2N0IxMTUzNTY5MUYwMDU2M0QwRCAvKiBEaWN0aW9uYXJ5LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxMkQ2N0IwMTUzNTY5MUYwMDU2
M0QwRCAvKiBEaWN0aW9uYXJ5LmNwcCAqLzsgfTsKIAkJMzEzMTNGNjUxNDQzQjM1RjAwNkUyQTkw
IC8qIEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxMzEzRjYzMTQ0M0IzNUUwMDZFMkE5MCAvKiBGaWx0ZXJFZmZl
Y3RSZW5kZXJlci5jcHAgKi87IH07CiAJCTMxMzEzRjY2MTQ0M0IzNUYwMDZFMkE5MCAvKiBGaWx0
ZXJFZmZlY3RSZW5kZXJlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzEzMTNGNjQxNDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRlckVmZmVjdFJlbmRlcmVy
LmggKi87IH07Ci0JCTMxMzhBOUU1MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNoYWRlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEzOEE5RTQxNDc0
NDM0NjAwQjBFRDEyIC8qIFN0eWxlU2hhZGVyLmggKi87IH07CiAJCTMxNDAzNzlCMTI0QkVBN0Yw
MEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0MDM3OTcxMjRCRUE3RjAwQUY0MEU0IC8qIFdlYkNv
cmVNb3Rpb25NYW5hZ2VyLmggKi87IH07CiAJCTMxNDAzNzlDMTI0QkVBN0YwMEFGNDBFNCAvKiBX
ZWJDb3JlTW90aW9uTWFuYWdlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNDAzNzk4MTI0QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFu
YWdlci5tbSAqLzsgfTsKIAkJMzE0MDM3OUQxMjRCRUE3RjAwQUY0MEU0IC8qIERldmljZU9yaWVu
dGF0aW9uQ2xpZW50SU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzMTQwMzc5OTEyNEJFQTdGMDBBRjQwRTQgLyogRGV2aWNlT3JpZW50YXRpb25DbGll
bnRJT1MuaCAqLzsgfTsKQEAgLTE3MTgsNDYgKzE3MTEsMTQgQEAKIAkJNEZGQzAyMkIxNjQzQjcx
MDAwNEUxNjM4IC8qIE5vZGVSYXJlRGF0YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0RkFCNDg2NjE2NDNBNjdFMDBGNzBDMDcgLyogTm9kZVJhcmVE
YXRhLmNwcCAqLzsgfTsKIAkJNEZGQzAyMkQxNjQzQjcyNjAwNEUxNjM4IC8qIEVsZW1lbnRSYXJl
RGF0YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
RkFCNDg2NDE2NDNBNjZEMDBGNzBDMDcgLyogRWxlbWVudFJhcmVEYXRhLmNwcCAqLzsgfTsKIAkJ
NTAxQkFBQTkxMzk1MEUyQzAwRjdBQ0VCIC8qIFdpbmRSdWxlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDFCQUFBODEzOTUwRTJDMDBGN0FDRUIgLyog
V2luZFJ1bGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwotCQk1MDM4QkMwNzE0NzExQ0RCMDA5NUUwRDEgLyogV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzOEJDMDYx
NDcxMUNEQjAwOTVFMEQxIC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmNwcCAqLzsgfTsKLQkJNTAz
OEJFMkYxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2FjaGVkU2hhZGVyLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwMzhCRTJEMTQ3MkFEMjMwMDk1
RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5jcHAgKi87IH07Ci0JCTUwMzhCRTMwMTQ3MkFEMjMw
MDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzOEJFMkUxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2Fj
aGVkU2hhZGVyLmggKi87IH07Ci0JCTUwMzhCRTQwMTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRT
aGFkZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTAzOEJFM0UxNDcyQUQ5ODAwOTVFMEQxIC8qIENhY2hlZFNoYWRlci5jcHAgKi87IH07Ci0JCTUw
MzhCRTQxMTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwMzhCRTNGMTQ3MkFEOTgwMDk1RTBEMSAv
KiBDYWNoZWRTaGFkZXIuaCAqLzsgfTsKLQkJNTAzRDBDQUExNEI1QjA4NzAwRjMyRjU3IC8qIEN1
c3RvbUZpbHRlclByb2dyYW0uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTAzRDBDQTcxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dy
YW0uY3BwICovOyB9OwotCQk1MDNEMENBQTE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmlsdGVy
UmVuZGVyZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTAzRDBDQTcxNEI1QjA4NzAwRjMyRjU4IC8qIEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCAq
LzsgfTsKLQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW0u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwM0QwQ0E4
MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoKTsgfTsgfTsKLQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU4IC8qIEN1
c3RvbUZpbHRlclJlbmRlcmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MDNEMENBODE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmlsdGVyUmVuZGVy
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9OwotCQk1MDNEMENBQzE0
QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzRDBDQTkxNEI1QjA4NzAwRjMy
RjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQk1MDNEMENBRTE0QjVCMEJBMDBGMzJGNTcgLyog
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MDNEMENBRDE0QjVCMEJBMDBGMzJGNTcgLyogU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoKTsgfTsgfTsKIAkJ
NTA0QUFDQ0QxODM0NDU1OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVGaW5kZXIuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA0QUFDQ0IxODM0NDU1
OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVGaW5kZXIuY3BwICovOyB9OwogCQk1MDRBQUNDRTE4
MzQ0NTU5MDBFM0Q5QkMgLyogSW5zcGVjdG9yTm9kZUZpbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA0QUFDQ0MxODM0NDU1OTAwRTNEOUJDIC8q
IEluc3BlY3Rvck5vZGVGaW5kZXIuaCAqLzsgfTsKIAkJNTA4MUUzQzMzQ0U1ODBDMTZFRjhCNDhC
IC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MDgxRTNERjNDRkM4MEMxNkVGOEI0OEIgLyogQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0LmNwcCAqLzsgfTsKIAkJNTA4MUUzRTAzQ0ZGODBDMTZFRjhCNDhCIC8qIENh
Y2hlZFJlc291cmNlUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTA4MUUzRTEzRDAyODBDMTZFRjhCNDhCIC8qIENhY2hlZFJlc291cmNlUmVx
dWVzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTUwOENDQTRGMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGbG93VGhyZWFkLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDhDQ0E0RDEzQ0YxMDZCMDAz
MTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5oICovOyB9OwogCQk1MDhDQ0E1MDEzQ0YxMDZCMDAz
MTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MDhDQ0E0RTEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxv
d1RocmVhZC5jcHAgKi87IH07Ci0JCTUwOTMzMzRGMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTMzMzREMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0LmNwcCAqLzsgfTsKLQkJNTA5MzMzNTAxNjNCMEU0MzAwMDk5QTYwIC8qIEN1c3Rv
bUZpbHRlclBhcmFtZXRlckxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTMzMzRFMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0LmggKi87IH07Ci0JCTUwOTg3QzI2MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21G
aWx0ZXJHbG9iYWxDb250ZXh0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTg3QzI0MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0LmNwcCAqLzsgfTsKLQkJNTA5ODdDMjcxNTdENjc2RDAwQkRBODM1IC8qIEN1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTg3QzI1MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0LmggKi87IH07Ci0JCTUwOUNDOUZCMTRDMDY5RUQwMEJCRUNCRCAvKiBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDUwOUNDOUZBMTRDMDY5RUQwMEJCRUNCRCAvKiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIu
aCAqLzsgfTsKLQkJNTBBQ0UyQ0IxNEI1RDc5MzAwNDQ2NjY2IC8qIEN1c3RvbUZpbHRlck9wZXJh
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBB
Q0UyQ0ExNEI1RDc5MzAwNDQ2NjY2IC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oICovOyB9Owot
CQk1MENDMDg5QTE0QzZFOTlDMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MENDMDg5
OTE0QzZFOTlDMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmggKi87IH07
Ci0JCTUwQ0MwQTM5MTRDNkY1QjEwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBDQzBBMzgx
NEM2RjVCMTAwMTdBQjUxIC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgKi87IH07CiAJCTUw
RDEwRDk5MTU0NUY1NzYwMDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBEMTBEOTcxNTQ1RjU3
NjAwOTZEMjg4IC8qIFJlbmRlckxheWVyRmlsdGVySW5mby5jcHAgKi87IH07CiAJCTUwRDEwRDlB
MTU0NUY1NzYwMDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwRDEwRDk4MTU0NUY1NzYwMDk2RDI4
OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwotCQk1MEQzMjg1NzE2M0IzMTNGMDAxNjExMUUgLyogVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUwRDMyODU1MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRD
dXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwICovOyB9OwotCQk1MEQzMjg1ODE2M0IzMTNGMDAxNjEx
MUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQzMjg1NjE2M0IzMTNGMDAxNjExMUUgLyog
VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggKi87IH07Ci0JCTUwRDQwM0M3MTQ3NjhD
OTQwMEQzMEJCNSAvKiBGRUN1c3RvbUZpbHRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDNDNTE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0
b21GaWx0ZXIuY3BwICovOyB9OwotCQk1MEQ0MDNDODE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0
b21GaWx0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUwRDQwM0M2MTQ3NjhDOTQwMEQzMEJCNSAvKiBGRUN1c3RvbUZpbHRlci5oICovOyB9OwotCQk1
MEQ0MDVGOTE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDVGNzE0N0QzMUYzMDBE
MzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5jcHAgKi87IH07Ci0JCTUwRDQwNUZBMTQ3RDMxRjMw
MEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDVGODE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyTWVzaC5oICovOyB9OwotCQk1MEQ0MDYxMTE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyQ29tcGlsZWRQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwRDQwNjBGMTQ3RDQ5REUwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJDb21w
aWxlZFByb2dyYW0uY3BwICovOyB9OwotCQk1MEQ0MDYxMjE0N0Q0OURFMDBEMzBCQjUgLyogQ3Vz
dG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDYxMDE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVy
Q29tcGlsZWRQcm9ncmFtLmggKi87IH07Ci0JCTUwRDg4Q0I1MTVCREZEQUEwMDE4MDlGNCAvKiBD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MEQ4OENCMzE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVy
UHJvZ3JhbUluZm8uY3BwICovOyB9OwotCQk1MEQ4OENCNjE1QkRGREFBMDAxODA5RjQgLyogQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwRDg4Q0I0MTVCREZEQUEwMDE4MDlGNCAvKiBDdXN0b21GaWx0ZXJQcm9n
cmFtSW5mby5oICovOyB9OwotCQk1MEUxOENEODE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUwRTE4Q0Q1MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW0uY3BwICovOyB9OwotCQk1MEUxOENEOTE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtQ2FjaGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTBFMThDRDYxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbUNhY2hlLmNwcCAqLzsgfTsKLQkJNTBFMThDREExNkY5Mjg1ODAwQzY1NDg2IC8q
IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEUxOENENzE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCAqLzsgfTsKIAkJNTEwMTg0NjkwQjA4NjAyQTAwNEE4
MjVGIC8qIENhY2hlZFBhZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUxMDE4NDY3MEIwODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTEwMTg0NkEwQjA4
NjAyQTAwNEE4MjVGIC8qIENhY2hlZFBhZ2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTEwMTg0NjgwQjA4NjAyQTAwNEE4MjVGIC8qIENhY2hlZFBh
Z2UuY3BwICovOyB9OwogCQk1MTAxOTQ0MDE4MzZEMjA4MDA5MjU1MjMgLyogSURCSW5kZXhXcml0
ZXJMZXZlbERCLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDUxMDE5NDNFMTgzNkQyMDgwMDkyNTUyMyAvKiBJREJJbmRleFdyaXRlckxldmVsREIuY3Bw
ICovOyB9OwpAQCAtMjMzMiw4ICsyMjkzLDYgQEAKIAkJN0NFNkNCRkIxODdGMzcwNzAwRDQ2QkY1
IC8qIEZvcm1hdENvbnZlcnRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0NFNkNCRkExODdGMzcwNzAwRDQ2QkY1IC8qIEZvcm1hdENvbnZlcnRlci5o
ICovOyB9OwogCQk3Q0U2Q0JGRDE4N0YzOTQ5MDBENDZCRjUgLyogRm9ybWF0Q29udmVydGVyLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDRTZDQkZD
MTg3RjM5NDkwMEQ0NkJGNSAvKiBGb3JtYXRDb252ZXJ0ZXIuY3BwICovOyB9OwogCQk3RDc0MUJE
QTE3NzIyNkFBMDA4NTkxNzAgLyogQ1NTVmFsdWVLZXl3b3Jkcy5oIGluIENvcHkgR2VuZXJhdGVk
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjU2NTgxNDgwOUQx
MzA0MzAwMEU2MUQ3IC8qIENTU1ZhbHVlS2V5d29yZHMuaCAqLzsgfTsKLQkJN0UxMkU5MEYxNUZB
NUQzQTAwNUU0MTI2IC8qIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMTJFOTBEMTVGQTVEM0EwMDVFNDEy
NiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggKi87IH07Ci0JCTdFMTJFOTEwMTVGQTVE
M0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMTJFOTBFMTVGQTVEM0EwMDVFNDEy
NiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCAqLzsgfTsKIAkJN0UzM0NEMDExMjdG
MzQwRDAwQkU4RjE3IC8qIFB1cmdlUHJpb3JpdHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMzNDRDAwMTI3RjM0MEQwMEJFOEYxNyAvKiBQdXJnZVBy
aW9yaXR5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJN0UzN0VGMkUxMzM5MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0UzN0VGMkQxMzM5
MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3BwICovOyB9OwogCQk3RTQyOENF
NTEzRTM0MDdGMDAzQjY2MUMgLyogUmVzb3VyY2VIYW5kbGVJT1MubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RTQyOENFNDEzRTM0MDdGMDAzQjY2MUMg
LyogUmVzb3VyY2VIYW5kbGVJT1MubW0gKi87IH07CkBAIC0zNjI5LDE5ICszNTg4LDcgQEAKIAkJ
QTFFMTE1NDQxMzAxNUMzRDAwNTRBQzhDIC8qIERpc3RhbnRMaWdodFNvdXJjZS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUUxMTU0MzEzMDE1QzNE
MDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNlLmNwcCAqLzsgfTsKIAkJQTFFMTE1NDYxMzAx
NUM0RTAwNTRBQzhDIC8qIFBvaW50TGlnaHRTb3VyY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFFMTE1NDUxMzAxNUM0RTAwNTRBQzhDIC8qIFBv
aW50TGlnaHRTb3VyY2UuY3BwICovOyB9OwogCQlBMUUxMTU0ODEzMDE1QzVEMDA1NEFDOEMgLyog
U3BvdExpZ2h0U291cmNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExRTExNTQ3MTMwMTVDNUQwMDU0QUM4QyAvKiBTcG90TGlnaHRTb3VyY2UuY3Bw
ICovOyB9OwotCQlBMjRCRjc3QjE1Q0MzQkFGMDAzMTkxRjIgLyogV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTI0QkY3NzkxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCAq
LzsgfTsKLQkJQTI0QkY3N0MxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTI0QkY3N0ExNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3Bw
ICovOyB9OwotCQlBMjk1MzJDRjE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRh
dGVkUHJvZ3JhbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBMjk1MzJDRDE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJv
Z3JhbS5jcHAgKi87IH07Ci0JCUEyOTUzMkQwMTVERDVFMTcwMDQ2OUVCQyAvKiBDdXN0b21GaWx0
ZXJWYWxpZGF0ZWRQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBMjk1MzJDRTE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRh
dGVkUHJvZ3JhbS5oICovOyB9OwotCQlBMkIyQUU3QzE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9t
RmlsdGVyQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBMkIyQUU3QjE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmggKi87IH07CiAJCUEyQjkyMTczMTZDNUNDNDIwMDQxRENEOSAvKiBJbnRSZWN0RXh0ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMkI5MjE3MjE2
QzVDQzQyMDA0MURDRDkgLyogSW50UmVjdEV4dGVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCUEyRThBRTMwMTZBNDhFMUMwMDZCQjNBQSAvKiBX
ZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEEyRThBRTJFMTZBNDhFMUMwMDZCQjNBQSAvKiBXZWJLaXRDU1NGaWx0ZXJS
dWxlLmNwcCAqLzsgfTsKLQkJQTJFOEFFMzExNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENTU0Zp
bHRlclJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEEyRThBRTJGMTZBNDhFMUMwMDZCQjNBQSAvKiBXZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi87IH07
Ci0JCUEyRThBRTM3MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTJFOEFFMzUx
NkE0OTg0MDAwNkJCM0FBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgKi87IH07Ci0JCUEy
RThBRTM4MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTM2MTZBNDk4NDAw
MDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAqLzsgfTsKLQkJQTJFOEFFNDAxNkE0
OThDRjAwNkJCM0FBIC8qIERPTVdlYktpdENTU0ZpbHRlclJ1bGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTNEMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi87IH07Ci0JCUEyRThBRTQxMTZBNDk4Q0YwMDZC
QjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTJFOEFFM0UxNkE0OThDRjAwNkJCM0FBIC8qIERPTVdl
YktpdENTU0ZpbHRlclJ1bGUubW0gKi87IH07Ci0JCUEyRThBRTQyMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTNGMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01X
ZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwuaCAqLzsgfTsKIAkJQTMxQzRFNEQxNkUwMkFBNjAw
MkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTMxQzRFNEMxNkUwMkFBNjAwMkY3OTU3IC8qIE9FU1Rl
eHR1cmVIYWxmRmxvYXQuY3BwICovOyB9OwogCQlBMzFDNEU0RjE2RTAyQUI0MDAyRjc5NTcgLyog
T0VTVGV4dHVyZUhhbGZGbG9hdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQTMxQzRFNEUxNkUwMkFCNDAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxv
YXQuaCAqLzsgfTsKIAkJQTMxQzRFNTIxNkUwMkIwODAwMkY3OTU3IC8qIEpTT0VTVGV4dHVyZUhh
bGZGbG9hdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMzFDNEU1MTE2RTAyQjA4MDAyRjc5NTcgLyogSlNPRVNUZXh0dXJlSGFsZkZsb2F0LmNwcCAq
LzsgfTsKQEAgLTYyMTIsOCArNjE1OSw2IEBACiAJCUZCNDg0RjRDMTcxRjgyMUUwMDA0MDc1NSAv
KiBUcmFuc2Zvcm1GdW5jdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRkI0ODRGNEExNzFGODIxRTAwMDQwNzU1IC8qIFRyYW5zZm9ybUZ1bmN0
aW9ucy5jcHAgKi87IH07CiAJCUZCNDg0RjREMTcxRjgyMUUwMDA0MDc1NSAvKiBUcmFuc2Zvcm1G
dW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEZCNDg0RjRCMTcxRjgyMUUwMDA0MDc1NSAvKiBUcmFuc2Zvcm1GdW5jdGlvbnMuaCAqLzsgfTsK
IAkJRkI0OUMzOUQxNjc4NDk0NzAwN0ZGQjVEIC8qIENTU0hvc3RSdWxlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQjQ5QzM5QzE2Nzg0OTQ3MDA3RkZC
NUQgLyogQ1NTSG9zdFJ1bGUuaCAqLzsgfTsKLQkJRkI3MTlDM0YxNzIzOENBODAwMjJERTM0IC8q
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZCMEI3NUVGMTcyMzQyODUwMEYwNUQyQSAvKiBXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmggKi87IH07Ci0JCUZCNzE5QzQwMTcyMzhDQUUwMDIyREUzNCAvKiBX
ZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZCMEI3NUVFMTcyMzQyODUwMEYwNUQyQSAvKiBXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmNwcCAqLzsgfTsKIAkJRkI3OEFEMkUxNTFCRjVFNjAwRkU1NEQzIC8q
IENTU1BhcnNlck1vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEZCNzhBRDJDMTUxQkY1RDIwMEZFNTREMyAvKiBDU1NQYXJzZXJNb2RlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRkI5MTM5MjQxNkFF
NEMxNzAwMUZFNjgyIC8qIERPTVBhdGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEZCOTEzOTIwMTZBRTRCMEIwMDFGRTY4MiAvKiBET01QYXRoLmggKi87
IH07CiAJCUZCOTEzOTI2MTZBRTRDMkYwMDFGRTY4MiAvKiBDYW52YXNQYXRoTWV0aG9kcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkI5MTM5MUYxNkFF
NEIwQjAwMUZFNjgyIC8qIENhbnZhc1BhdGhNZXRob2RzLmggKi87IH07CkBAIC03NDMxLDExICs3
Mzc2LDYgQEAKIAkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZlbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMTRGRkUzMUIwQUUxOTYzMzAwMTM2QkY1IC8qIEhUTUxGcmFtZUVsZW1lbnRC
YXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxGcmFtZUVsZW1lbnRC
YXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0RkZFMzFDMEFFMTk2MzMwMDEz
NkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50QmFzZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBIVE1MRnJhbWVFbGVtZW50QmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCTE1MEI5MjM3MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2Vi
S2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJMTUwQjkyMzgxNUYwOERDNDAwRTEwOTg2IC8qIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJLaXRDU1NBcnJheUZ1bmN0
aW9uVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMTVCM0ZDMTcxNUZCMjE3
ODAwQTgxQkNCIC8qIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmg7IHBhdGggPSBm
aWx0ZXJzL0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTE1QjhCN0M2MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0
aW9uVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJ
MTVCOEI3QzcxNjUyQzUyMjAwMzZFRjU1IC8qIEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMTVDNzcwODkxMDBEM0M2QTAw
NUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFZhbGlk
aXR5U3RhdGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNUM3NzA4QTEwMEQz
QzZBMDA1QkEyNjcgLyogVmFsaWRpdHlTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBWYWxpZGl0eVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE1
Qzc3MDkxMTAwRDNDQTgwMDVCQTI2NyAvKiBKU1ZhbGlkaXR5U3RhdGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNWYWxpZGl0eVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC04MDIzLDcgKzc5NjMsNiBAQAogCQkzMTJENjdCMDE1MzU2OTFGMDA1NjNE
MEQgLyogRGljdGlvbmFyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBEaWN0aW9uYXJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMTNGNjMx
NDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMTNGNjQxNDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRl
ckVmZmVjdFJlbmRlcmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbHRl
ckVmZmVjdFJlbmRlcmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTMxMzhBOUU0
MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNoYWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBTdHlsZVNoYWRlci5oOyBwYXRoID0gc3R5bGUvU3R5bGVTaGFkZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0MDM3OTcxMjRCRUE3RjAwQUY0MEU0IC8qIFdl
YkNvcmVNb3Rpb25NYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFdl
YkNvcmVNb3Rpb25NYW5hZ2VyLmg7IHBhdGggPSBpb3MvV2ViQ29yZU1vdGlvbk1hbmFnZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0MDM3OTgxMjRCRUE3RjAwQUY0MEU0IC8q
IFdlYkNvcmVNb3Rpb25NYW5hZ2VyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBuYW1lID0gV2ViQ29yZU1vdGlvbk1hbmFnZXIubW07IHBhdGggPSBpb3MvV2ViQ29yZU1vdGlv
bk1hbmFnZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxNDAzNzk5MTI0QkVB
N0YwMEFGNDBFNCAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oOyBwYXRoID0g
aW9zL0RldmljZU9yaWVudGF0aW9uQ2xpZW50SU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC04NjYyLDQ4ICs4NjAxLDE0IEBACiAJCTRGQUI0ODY2MTY0M0E2N0UwMEY3MEMwNyAv
KiBOb2RlUmFyZURhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Tm9kZVJhcmVEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNEZCMzkwQUMx
NUVGNjFGMzAwN0FENTFGIC8qIEdlbmVyYXRlZEltYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEdlbmVyYXRlZEltYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNTAxQkFBQTgxMzk1MEUyQzAwRjdBQ0VCIC8qIFdpbmRSdWxlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdpbmRSdWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCTUwMzhCQzA2MTQ3MTFDREIwMDk1RTBEMSAvKiBXZWJLaXRDU1NTaGFkZXJW
YWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJLaXRDU1NT
aGFkZXJWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwMzhCRTJEMTQ3
MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBTdHlsZUNhY2hlZFNoYWRlci5jcHA7IHBhdGggPSBzdHlsZS9T
dHlsZUNhY2hlZFNoYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwMzhC
RTJFMTQ3MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBTdHlsZUNhY2hlZFNoYWRlci5oOyBwYXRoID0gc3R5bGUvU3R5
bGVDYWNoZWRTaGFkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzOEJFM0Ux
NDcyQUQ5ODAwOTVFMEQxIC8qIENhY2hlZFNoYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRTaGFkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQk1MDM4QkUzRjE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZFNoYWRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwotCQk1MDNEMENBNzE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21G
aWx0ZXJQcm9ncmFtLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwM0QwQ0E3MTRCNUIwODcwMEYzMkY1OCAv
KiBDdXN0b21GaWx0ZXJSZW5kZXJlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBDdXN0b21GaWx0ZXJSZW5kZXJlci5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZp
bHRlclJlbmRlcmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzRDBDQTgx
NEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW0uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oOyBwYXRoID0gZmlsdGVycy9D
dXN0b21GaWx0ZXJQcm9ncmFtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwM0Qw
Q0E4MTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0b21GaWx0ZXJSZW5kZXJlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJSZW5kZXJlci5oOyBwYXRoID0gZmls
dGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk1MDNEMENBOTE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xp
ZW50Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzRDBDQUQxNEI1QjBCQTAwRjMyRjU3IC8qIFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaDsgcGF0aCA9IHN0eWxlL1N0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MDRBQUNDQjE4MzQ0NTU5
MDBFM0Q5QkMgLyogSW5zcGVjdG9yTm9kZUZpbmRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0b3JOb2RlRmluZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNTA0QUFDQ0MxODM0NDU1OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVG
aW5kZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yTm9kZUZp
bmRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MDgxRTNERjNDRkM4MEMxNkVG
OEI0OEIgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk1MDgxRTNFMTNEMDI4MEMxNkVGOEI0OEIgLyogQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRSZXNv
dXJjZVJlcXVlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTA4Q0NBNEQxM0NG
MTA2QjAwMzE1MUYzIC8qIFJlbmRlckZsb3dUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUmVuZGVyRmxvd1RocmVhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1MDhDQ0E0RTEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJGbG93VGhyZWFkLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5MzMzNEQxNjNCMEU0MzAwMDk5QTYwIC8q
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHA7IHBhdGggPSBmaWx0ZXJz
L0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQk1MDkzMzM0RTE2M0IwRTQzMDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlz
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXJMaXN0Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5ODdDMjQxNTdENjc2RDAwQkRBODM1IC8qIEN1
c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1
c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk1MDk4N0MyNTE1N0Q2NzZEMDBCREE4MzUgLyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJHbG9iYWxDb250
ZXh0Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5Q0M5RkExNEMwNjlFRDAwQkJFQ0JEIC8qIEN1c3Rv
bUZpbHRlclBhcmFtZXRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0
b21GaWx0ZXJQYXJhbWV0ZXIuaDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwOUVDMTA4MTVFODQ4Q0EwMEU4MjU4
MSAvKiBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmg7IHBhdGggPSBm
aWx0ZXJzL0N1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk1MEFDRTJDQTE0QjVENzkzMDA0NDY2NjYgLyogQ3VzdG9tRmlsdGVyT3Bl
cmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBCNDIxNTcxNDY5NzY5NjAwODdFNjA0IC8qIFdlYktp
dENTU1NoYWRlclZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYktp
dENTU1NoYWRlclZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwQ0MwODk5
MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmg7
IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQk1MENDMEEzODE0QzZGNUIxMDAxN0FCNTEgLyogQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEN1
c3RvbUZpbHRlck9wZXJhdGlvbi5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJh
dGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUwRDEwRDk3MTU0NUY1NzYw
MDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNTBEMTBEOTgxNTQ1RjU3NjAwOTZEMjg4IC8qIFJlbmRlckxheWVy
RmlsdGVySW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJMYXll
ckZpbHRlckluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBEMzI4NTUxNjNC
MzEzRjAwMTYxMTFFIC8qIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24uY3BwOyBwYXRoID0gZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24u
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQzMjg1NjE2M0IzMTNGMDAxNjEx
MUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgbmFtZSA9IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oOyBwYXRoID0g
ZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJNTBENDAzQzUxNDc2OEM5NDAwRDMwQkI1IC8qIEZFQ3VzdG9tRmlsdGVy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEZFQ3VzdG9tRmlsdGVy
LmNwcDsgcGF0aCA9IGZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk1MEQ0MDNDNjE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0b21GaWx0ZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRkVDdXN0b21GaWx0ZXIuaDsgcGF0
aCA9IGZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJNTBENDA1RjcxNDdEMzFGMzAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlck1lc2guY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ3VzdG9tRmlsdGVyTWVzaC5jcHA7IHBh
dGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQk1MEQ0MDVGODE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJNZXNoLmg7IHBhdGgg
PSBmaWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJNTBENDA2MEYxNDdENDlERTAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21GaWx0ZXJD
b21waWxlZFByb2dyYW0uY3BwOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFBy
b2dyYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQ0MDYxMDE0N0Q0OURF
MDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oOyBwYXRoID0g
ZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKLQkJNTBEODhDQjMxNUJERkRBQTAwMTgwOUY0IC8qIEN1c3RvbUZpbHRlclByb2dy
YW1JbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEN1c3RvbUZp
bHRlclByb2dyYW1JbmZvLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQ4OENCNDE1QkRGREFBMDAx
ODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaDsgcGF0aCA9IGZpbHRlcnMvQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBF
MThDRDUxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBTdHlsZUN1c3RvbUZpbHRlclByb2dy
YW0uY3BwOyBwYXRoID0gc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBFMThDRDYxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcDsgcGF0aCA9IHN0eWxl
L1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKLQkJNTBFMThDRDcxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJv
Z3JhbUNhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFN0eWxlQ3VzdG9t
RmlsdGVyUHJvZ3JhbUNhY2hlLmg7IHBhdGggPSBzdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dy
YW1DYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MTAxODQ2NzBCMDg2MDJB
MDA0QTgyNUYgLyogQ2FjaGVkUGFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDYWNoZWRQYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUxMDE4NDY4MEIw
ODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENhY2hlZFBhZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk1MTAxOTQzRTE4MzZEMjA4MDA5MjU1MjMgLyogSURCSW5kZXhXcml0ZXJMZXZlbERCLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElEQkluZGV4V3JpdGVyTGV2ZWxE
Qi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC05MzM3LDggKzkyNDIsNiBAQAog
CQk3Q0M3RTNENjE3MjA4QzBGMDAzQzUyNzcgLyogSUROU2NyaXB0V2hpdGVMaXN0LnR4dCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBJRE5TY3JpcHRXaGl0ZUxpc3QudHh0OyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk3Q0U2Q0JGQTE4N0YzNzA3MDBENDZCRjUgLyogRm9ybWF0Q29udmVy
dGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvcm1hdENvbnZlcnRlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3Q0U2Q0JGQzE4N0YzOTQ5MDBENDZCRjUg
LyogRm9ybWF0Q29udmVydGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEZvcm1hdENvbnZlcnRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdF
MTJFOTBEMTVGQTVEM0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3Iu
aDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQk3RTEyRTkwRTE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmls
dGVyTWVzaEdlbmVyYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmls
dGVyTWVzaEdlbmVyYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdFMzND
RDAwMTI3RjM0MEQwMEJFOEYxNyAvKiBQdXJnZVByaW9yaXR5LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFB1cmdlUHJpb3JpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJN0UzN0VGMkQxMzM5MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gU3VicmVzb3VyY2VMb2FkZXJD
Ri5jcHA7IHBhdGggPSBjZi9TdWJyZXNvdXJjZUxvYWRlckNGLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJN0U0MjhDRTQxM0UzNDA3RjAwM0I2NjFDIC8qIFJlc291cmNlSGFuZGxl
SU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUmVzb3VyY2VI
YW5kbGVJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMDY1MCwxOSArMTA1
NTMsNyBAQAogCQlBMUUxMTU0MzEzMDE1QzNEMDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IERpc3RhbnRMaWdodFNv
dXJjZS5jcHA7IHBhdGggPSBmaWx0ZXJzL0Rpc3RhbnRMaWdodFNvdXJjZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExRTExNTQ1MTMwMTVDNEUwMDU0QUM4QyAvKiBQb2ludExp
Z2h0U291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFBvaW50
TGlnaHRTb3VyY2UuY3BwOyBwYXRoID0gZmlsdGVycy9Qb2ludExpZ2h0U291cmNlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTFFMTE1NDcxMzAxNUM1RDAwNTRBQzhDIC8qIFNw
b3RMaWdodFNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBT
cG90TGlnaHRTb3VyY2UuY3BwOyBwYXRoID0gZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMjRCRjc3OTE1Q0MzQkFGMDAzMTkxRjIgLyog
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCUEyNEJGNzdBMTVDQzNCQUYwMDMxOTFGMiAvKiBXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMjk1MzJD
RDE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUEyOTUzMkNFMTVERDVFMTcwMDQ2OUVC
QyAvKiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaDsgcGF0aCA9IGZpbHRl
cnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQlBMkIyQUU3QjE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckNvbnN0YW50
cy5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb25zdGFudHMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQTJCOTIxNzIxNkM1Q0M0MjAwNDFEQ0Q5IC8qIEludFJlY3RFeHRl
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW50UmVjdEV4dGVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUyRTE2QTQ4RTFDMDA2QkIzQUEgLyog
V2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBXZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJQTJFOEFFMkYxNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENTU0ZpbHRlclJ1bGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUzNTE2QTQ5ODQwMDA2QkIzQUEgLyogSlNX
ZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCUEyRThBRTM2MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUEyRThBRTNEMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IERPTVdlYktpdENTU0ZpbHRlclJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJQTJFOEFFM0UxNkE0OThDRjAwNkJCM0FBIC8qIERPTVdlYktpdENTU0ZpbHRlclJ1bGUubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBET01XZWJLaXRDU1NGaWx0
ZXJSdWxlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUzRjE2QTQ5OENG
MDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZUludGVybmFsLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVdlYktpdENTU0ZpbHRlclJ1bGVJbnRlcm5hbC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMzFDNEU0QzE2RTAyQUE2MDAyRjc5NTcgLyog
T0VTVGV4dHVyZUhhbGZGbG9hdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBPRVNUZXh0dXJlSGFsZkZsb2F0LmNwcDsgcGF0aCA9IGNhbnZhcy9PRVNUZXh0dXJlSGFs
ZkZsb2F0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTMxQzRFNEUxNkUwMkFC
NDAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gT0VTVGV4dHVyZUhhbGZGbG9hdC5oOyBwYXRoID0gY2FudmFzL09FU1RleHR1
cmVIYWxmRmxvYXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTMxQzRFNTAxNkUw
MkFDNTAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IE9FU1RleHR1cmVI
YWxmRmxvYXQuaWRsOyBwYXRoID0gY2FudmFzL09FU1RleHR1cmVIYWxmRmxvYXQuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTM2MDIsOSArMTM0OTMsNiBAQAogCQlGQUJFNzJG
MzEwNTlDMUVCMDBEOTk5REQgLyogbWF0aHRhZ3MuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
bWF0aHRhZ3MuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUZBQkU3MkZCMTA1OUMy
MTEwMEQ5OTlERCAvKiBNYXRoTUxFbGVtZW50RmFjdG9yeS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBNYXRoTUxFbGVtZW50RmFjdG9yeS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUZBQkU3MkZDMTA1OUMyMTEwMEQ5OTlERCAvKiBNYXRoTUxOYW1l
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNYXRoTUxOYW1lcy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUZCMEI3NUVFMTcyMzQyODUwMEYwNUQy
QSAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQlGQjBCNzVFRjE3MjM0Mjg1MDBGMDVEMkEgLyogV2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJL
aXRDU1NNYXRGdW5jdGlvblZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUZC
MUE2NkQ5MTcyMjVBNjYwMEJBQTdBRiAvKiBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
ci5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlGQjJDMTVDMjE2NUQ2NDkwMDAzOUM5RjggLyogQ2FjaGVk
U1ZHRG9jdW1lbnRSZWZlcmVuY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
Q2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRkIzMDU2QzExNjlFNURBQzAwOTZBMjMyIC8qIENTU0dyb3VwaW5nUnVsZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NHcm91cGluZ1J1bGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJRkI0ODRGNEExNzFGODIxRTAwMDQwNzU1IC8qIFRyYW5zZm9ybUZ1
bmN0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUcmFuc2Zv
cm1GdW5jdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY1MjgsOSAr
MTY0MTYsNiBAQAogCQkJCTg1OEMzOEE0MEFBOEYyMDQwMEIxODdBNCAvKiBET01SZWN0Lm1tICov
LAogCQkJCTg1NUQzNTg5MEFENzA3MzEwMDE5QUFDNyAvKiBET01SR0JDb2xvci5oICovLAogCQkJ
CUJDQUVGQ0FEMTAxNkNFNEEwMDQwRDM0RSAvKiBET01SR0JDb2xvci5tbSAqLywKLQkJCQlBMkU4
QUUzRDE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5oICovLAotCQkJ
CUEyRThBRTNFMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLm1tICov
LAotCQkJCUEyRThBRTNGMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxl
SW50ZXJuYWwuaCAqLywKIAkJCQkzMTA2MDM3NjE0MzI4MUNEMDBBQkY0QkEgLyogRE9NV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuaCAqLywKIAkJCQkzMTA2MDM3NzE0MzI4MUNEMDBBQkY0QkEgLyogRE9N
V2ViS2l0Q1NTRmlsdGVyVmFsdWUubW0gKi8sCiAJCQkJMzEwNjAzNzgxNDMyODFDRDAwQUJGNEJB
IC8qIERPTVdlYktpdENTU0ZpbHRlclZhbHVlSW50ZXJuYWwuaCAqLywKQEAgLTE4MTAyLDMzICsx
Nzk4Nyw2IEBACiAJCUE3NUU4QjdGMEUxREUyQjAwMDdGMjQ4MSAvKiBmaWx0ZXJzICovID0gewog
CQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQkxNUIzRkMxNzE1RkIyMTc4
MDBBODFCQ0IgLyogQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCAqLywKLQkJCQlGQjFBNjZE
OTE3MjI1QTY2MDBCQUE3QUYgLyogQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaCAqLywKLQkJ
CQk1MEQ0MDYwRjE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
LmNwcCAqLywKLQkJCQk1MEQ0MDYxMDE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtLmggKi8sCi0JCQkJQTJCMkFFN0IxNjM3NUVFNTAwQ0ZBNTBCIC8qIEN1c3Rv
bUZpbHRlckNvbnN0YW50cy5oICovLAotCQkJCTUwOTg3QzI0MTU3RDY3NkQwMEJEQTgzNSAvKiBD
dXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcCAqLywKLQkJCQk1MDk4N0MyNTE1N0Q2NzZEMDBC
REE4MzUgLyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oICovLAotCQkJCTUwRDQwNUY3MTQ3
RDMxRjMwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmNwcCAqLywKLQkJCQk1MEQ0MDVGODE0
N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5oICovLAotCQkJCTdFMTJFOTBFMTVG
QTVEM0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCAqLywKLQkJCQk3
RTEyRTkwRDE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oICov
LAotCQkJCTUwQ0MwODk5MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJh
bWV0ZXIuaCAqLywKLQkJCQk1MENDMEEzODE0QzZGNUIxMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmNwcCAqLywKLQkJCQk1MEFDRTJDQTE0QjVENzkzMDA0NDY2NjYgLyogQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uLmggKi8sCi0JCQkJNTA5Q0M5RkExNEMwNjlFRDAwQkJFQ0JEIC8qIEN1
c3RvbUZpbHRlclBhcmFtZXRlci5oICovLAotCQkJCTUwOTMzMzREMTYzQjBFNDMwMDA5OUE2MCAv
KiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCAqLywKLQkJCQk1MDkzMzM0RTE2M0IwRTQz
MDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oICovLAotCQkJCTUwM0QwQ0E3
MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCAqLywKLQkJCQk1MDNE
MENBODE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oICovLAotCQkJCTUw
M0QwQ0E5MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggKi8s
Ci0JCQkJNTBEODhDQjMxNUJERkRBQTAwMTgwOUY0IC8qIEN1c3RvbUZpbHRlclByb2dyYW1JbmZv
LmNwcCAqLywKLQkJCQk1MEQ4OENCNDE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8uaCAqLywKLQkJCQk1MDNEMENBNzE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmls
dGVyUmVuZGVyZXIuY3BwICovLAotCQkJCTUwM0QwQ0E4MTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0
b21GaWx0ZXJSZW5kZXJlci5oICovLAotCQkJCTUwOUVDMTA4MTVFODQ4Q0EwMEU4MjU4MSAvKiBD
dXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCAqLywKLQkJCQlBMjk1MzJDRDE1REQ1RTE3
MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAgKi8sCi0JCQkJQTI5
NTMyQ0UxNURENUUxNzAwNDY5RUJDIC8qIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCAq
LywKIAkJCQlBMUUxMTU0MzEzMDE1QzNEMDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNlLmNw
cCAqLywKIAkJCQk4NDczMEQ1QTEyNDhGMEIzMDBEM0E5QzkgLyogRGlzdGFudExpZ2h0U291cmNl
LmggKi8sCiAJCQkJQTc1RThCODAwRTFERTJENjAwN0YyNDgxIC8qIEZFQmxlbmQuY3BwICovLApA
QCAtMTgxNDEsOCArMTc5OTksNiBAQAogCQkJCUE3NUU4Qjg3MEUxREUyRDYwMDdGMjQ4MSAvKiBG
RUNvbXBvc2l0ZS5oICovLAogCQkJCTg0NzMwRDVCMTI0OEYwQjMwMEQzQTlDOSAvKiBGRUNvbnZv
bHZlTWF0cml4LmNwcCAqLywKIAkJCQk4NDczMEQ1QzEyNDhGMEIzMDBEM0E5QzkgLyogRkVDb252
b2x2ZU1hdHJpeC5oICovLAotCQkJCTUwRDQwM0M1MTQ3NjhDOTQwMEQzMEJCNSAvKiBGRUN1c3Rv
bUZpbHRlci5jcHAgKi8sCi0JCQkJNTBENDAzQzYxNDc2OEM5NDAwRDMwQkI1IC8qIEZFQ3VzdG9t
RmlsdGVyLmggKi8sCiAJCQkJODQ3MzBENUQxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFRGlmZnVzZUxp
Z2h0aW5nLmNwcCAqLywKIAkJCQk4NDczMEQ1RTEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaWZmdXNl
TGlnaHRpbmcuaCAqLywKIAkJCQk4NDczMEQ1RjEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaXNwbGFj
ZW1lbnRNYXAuY3BwICovLApAQCAtMTgxODMsOCArMTgwMzksNiBAQAogCQkJCTg0QTgxRjQwMEZD
N0UwMjcwMDk1NTMwMCAvKiBTb3VyY2VHcmFwaGljLmggKi8sCiAJCQkJQTFFMTE1NDcxMzAxNUM1
RDAwNTRBQzhDIC8qIFNwb3RMaWdodFNvdXJjZS5jcHAgKi8sCiAJCQkJODQ3MzBENzYxMjQ4RjBC
MzAwRDNBOUM5IC8qIFNwb3RMaWdodFNvdXJjZS5oICovLAotCQkJCTUwRDMyODU1MTYzQjMxM0Yw
MDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwICovLAotCQkJCTUw
RDMyODU2MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24u
aCAqLywKIAkJCSk7CiAJCQluYW1lID0gZmlsdGVyczsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CkBAIC0xODgyNyw4ICsxODY4MSw2IEBACiAJCQkJQkNFMDEzOTkwQzBCRUYxODAwNDM4NjBB
IC8qIEpTU3R5bGVTaGVldC5oICovLAogCQkJCUE4NEVCRDgyMENCOEM5NzcwMDA3OTYwOSAvKiBK
U1N0eWxlU2hlZXRMaXN0LmNwcCAqLywKIAkJCQlBODRFQkQ4MTBDQjhDOTc3MDAwNzk2MDkgLyog
SlNTdHlsZVNoZWV0TGlzdC5oICovLAotCQkJCUEyRThBRTM1MTZBNDk4NDAwMDZCQjNBQSAvKiBK
U1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwICovLAotCQkJCUEyRThBRTM2MTZBNDk4NDAwMDZCQjNB
QSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAqLywKIAkJCQkzMTA2MDM3MjE0MzI4MTlDMDBB
QkY0QkEgLyogSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAgKi8sCiAJCQkJMzEwNjAzNzMxNDMy
ODE5QzAwQUJGNEJBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCAqLywKIAkJCQkzMTZGRTA2
RDBFNkNDQkVFMDBCRjYwODggLyogSlNXZWJLaXRDU1NLZXlmcmFtZVJ1bGUuY3BwICovLApAQCAt
MTg4MzcsOCArMTg2ODksNiBAQAogCQkJCTMxNkZFMDcwMEU2Q0NCRUUwMEJGNjA4OCAvKiBKU1dl
YktpdENTU0tleWZyYW1lc1J1bGUuaCAqLywKIAkJCQk0OTgzOTEzRDBGMUU3Njc1MDBDMjM3ODIg
LyogSlNXZWJLaXRDU1NNYXRyaXguY3BwICovLAogCQkJCTQ5ODM5MTNFMEYxRTc2NzUwMEMyMzc4
MiAvKiBKU1dlYktpdENTU01hdHJpeC5oICovLAotCQkJCTE1QjhCN0M2MTY1MkM1MjIwMDM2RUY1
NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwICovLAotCQkJCTE1QjhCN0M3MTY1
MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCAqLywKIAkJCQk4
QUNDMjRDRDE0OEUyNEIyMDBFRkNDMEQgLyogSlNXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCAqLywK
IAkJCQk4QUNDMjRDRTE0OEUyNEIyMDBFRkNDMEQgLyogSlNXZWJLaXRDU1NSZWdpb25SdWxlLmgg
Ki8sCiAJCQkJMzE2MTFFNTgwRTFDNERFMDAwRjZBNTc5IC8qIEpTV2ViS2l0Q1NTVHJhbnNmb3Jt
VmFsdWUuY3BwICovLApAQCAtMTkxMDgsOCArMTg5NTgsNiBAQAogCQkJCTZDNjM4ODkzQTk2Q0NF
RTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmggKi8sCiAJCQkJ
QkNCMTZDMEEwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFNjcmlwdC5jcHAgKi8sCiAJCQkJQkNC
MTZDMEIwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFNjcmlwdC5oICovLAotCQkJCTUwMzhCRTNF
MTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuY3BwICovLAotCQkJCTUwMzhCRTNGMTQ3
MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuaCAqLywKIAkJCQlEMEJDNTQ0ODE0NDNBQzRB
MDBFMTA1REEgLyogQ2FjaGVkU3R5bGVTaGVldENsaWVudC5oICovLAogCQkJCUExMDRGMjQxMTRD
NzFGN0EwMDlFMkMyMyAvKiBDYWNoZWRTVkdEb2N1bWVudC5jcHAgKi8sCiAJCQkJQTEwNEYyNDIx
NEM3MUY3QTAwOUUyQzIzIC8qIENhY2hlZFNWR0RvY3VtZW50LmggKi8sCkBAIC0yMDU3OSwxMiAr
MjA0MjcsNiBAQAogCQkJCUJDRUY0NDRDMEU2NzQ2MjgwMDFDMTI4NyAvKiBTdHlsZUNhY2hlZElt
YWdlLmggKi8sCiAJCQkJOTM5M0U2MDIxNTFBOUExODAwMDY2RjA2IC8qIFN0eWxlQ2FjaGVkSW1h
Z2VTZXQuY3BwICovLAogCQkJCTkzOTNFNjAzMTUxQTlBMTgwMDA2NkYwNiAvKiBTdHlsZUNhY2hl
ZEltYWdlU2V0LmggKi8sCi0JCQkJNTAzOEJFMkQxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2Fj
aGVkU2hhZGVyLmNwcCAqLywKLQkJCQk1MDM4QkUyRTE0NzJBRDIzMDA5NUUwRDEgLyogU3R5bGVD
YWNoZWRTaGFkZXIuaCAqLywKLQkJCQk1MEUxOENENTE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtLmNwcCAqLywKLQkJCQk1MDNEMENBRDE0QjVCMEJBMDBGMzJGNTcg
LyogU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmggKi8sCi0JCQkJNTBFMThDRDYxNkY5Mjg1ODAw
QzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCAqLywKLQkJCQk1MEUx
OENENzE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCAq
LywKIAkJCQlCQzVFQjY3RTBFODFENEE3MDBCMjU5NjUgLyogU3R5bGVEYXNoYm9hcmRSZWdpb24u
aCAqLywKIAkJCQlCQzVFQjhCNjBFODIwMUJEMDBCMjU5NjUgLyogU3R5bGVEZXByZWNhdGVkRmxl
eGlibGVCb3hEYXRhLmNwcCAqLywKIAkJCQlCQzVFQjhCNzBFODIwMUJEMDBCMjU5NjUgLyogU3R5
bGVEZXByZWNhdGVkRmxleGlibGVCb3hEYXRhLmggKi8sCkBAIC0yMDYxMCw3ICsyMDQ1Miw2IEBA
CiAJCQkJQkMyMjcyQkEwRTgyRUFBRTAwRTdGOTc1IC8qIFN0eWxlUmFyZU5vbkluaGVyaXRlZERh
dGEuY3BwICovLAogCQkJCUJDMjI3MkJCMEU4MkVBQUUwMEU3Rjk3NSAvKiBTdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhLmggKi8sCiAJCQkJQkMyMjcyODYwRTgyRTcwNzAwRTdGOTc1IC8qIFN0eWxl
UmVmbGVjdGlvbi5oICovLAotCQkJCTMxMzhBOUU0MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNo
YWRlci5oICovLAogCQkJCUJDNUVCNUU2MEU4MUJGRUYwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5k
RGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI1RTQwRTgxQkY2RDAwQjI1OTY1IC8qIFN0eWxlU3Vycm91
bmREYXRhLmggKi8sCiAJCQkJQkM1RUI4MEQwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNm
b3JtRGF0YS5jcHAgKi8sCkBAIC0yMTcxMywxMCArMjE1NTQsNiBAQAogCQkJCUJDNUVDMTc2MEE1
MDdFM0UwMDYwMDdGNSAvKiB2aWV3LXNvdXJjZS5jc3MgKi8sCiAJCQkJM0ZGRkY5QUIxNTlEOUIw
NjAwMjBCQkQ1IC8qIFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAgKi8sCiAJCQkJM0ZGRkY5QUMx
NTlEOUIwNjAwMjBCQkQ1IC8qIFZpZXdwb3J0U3R5bGVSZXNvbHZlci5oICovLAotCQkJCTE1MEI5
MjM3MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwICov
LAotCQkJCTE1MEI5MjM4MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1bmN0aW9u
VmFsdWUuaCAqLywKLQkJCQlBMkU4QUUyRTE2QTQ4RTFDMDA2QkIzQUEgLyogV2ViS2l0Q1NTRmls
dGVyUnVsZS5jcHAgKi8sCi0JCQkJQTJFOEFFMkYxNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENT
U0ZpbHRlclJ1bGUuaCAqLywKIAkJCQkzMTA2MDM2QzE0MzI3RDJFMDBBQkY0QkEgLyogV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuY3BwICovLAogCQkJCTMxMDYwMzZEMTQzMjdEMkUwMEFCRjRCQSAvKiBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oICovLAogCQkJCTMxMDYwMzZFMTQzMjdEMkUwMEFCRjRCQSAv
KiBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5pZGwgKi8sCkBAIC0yMTcyNiwxOCArMjE1NjMsMTIgQEAK
IAkJCQkzMTI4OEU3MDBFMzAwNUQ2MDAzNjE5QUUgLyogV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5j
cHAgKi8sCiAJCQkJMzEyODhFNzEwRTMwMDVENjAwMzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1l
c1J1bGUuaCAqLywKIAkJCQkzMTZGRTA5MjBFNkNDRDdGMDBCRjYwODggLyogV2ViS2l0Q1NTS2V5
ZnJhbWVzUnVsZS5pZGwgKi8sCi0JCQkJRkIwQjc1RUUxNzIzNDI4NTAwRjA1RDJBIC8qIFdlYktp
dENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwICovLAotCQkJCUZCMEI3NUVGMTcyMzQyODUwMEYwNUQy
QSAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmggKi8sCiAJCQkJNDk4MzkxNTUwRjFFNzc2
OTAwQzIzNzgyIC8qIFdlYktpdENTU01hdHJpeC5jcHAgKi8sCiAJCQkJNDk4MzkxNTYwRjFFNzc2
OTAwQzIzNzgyIC8qIFdlYktpdENTU01hdHJpeC5oICovLAogCQkJCTQ5ODM5MTU3MEYxRTc3Njkw
MEMyMzc4MiAvKiBXZWJLaXRDU1NNYXRyaXguaWRsICovLAotCQkJCUEyNEJGNzdBMTVDQzNCQUYw
MDMxOTFGMiAvKiBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCAqLywKLQkJCQlBMjRCRjc3
OTE1Q0MzQkFGMDAzMTkxRjIgLyogV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovLAogCQkJ
CThBQTYxQ0ZEMTQ0RDU5NUIwMEYzNzM1MCAvKiBXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCAqLywK
IAkJCQk4QUE2MUNGRTE0NEQ1OTVCMDBGMzczNTAgLyogV2ViS2l0Q1NTUmVnaW9uUnVsZS5oICov
LAogCQkJCThBRDBBNTU2MTRDODc0MjUwMDBEODNDNSAvKiBXZWJLaXRDU1NSZWdpb25SdWxlLmlk
bCAqLywKLQkJCQk1MDM4QkMwNjE0NzExQ0RCMDA5NUUwRDEgLyogV2ViS2l0Q1NTU2hhZGVyVmFs
dWUuY3BwICovLAotCQkJCTUwQjQyMTU3MTQ2OTc2OTYwMDg3RTYwNCAvKiBXZWJLaXRDU1NTaGFk
ZXJWYWx1ZS5oICovLAogCQkJCUJDOUFERDdGMENDNDA5MjIwMDA5OEM0QyAvKiBXZWJLaXRDU1NU
cmFuc2Zvcm1WYWx1ZS5jcHAgKi8sCiAJCQkJQkM5QUREMjIwQ0M0MDMyNjAwMDk4QzRDIC8qIFdl
YktpdENTU1RyYW5zZm9ybVZhbHVlLmggKi8sCiAJCQkJMzE2MTFFNTQwRTFDNEQ0QTAwRjZBNTc5
IC8qIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbCAqLywKQEAgLTIyOTk5LDcgKzIyODMwLDYg
QEAKIAkJCQk2QzYzODg5NUE5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
SW5pdGlhdG9ycy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNCMTZDMjQwOTc5QzNCRDAwNDY3NzQx
IC8qIENhY2hlZFNjcmlwdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNENTMzNjQwRUQ2ODQ4OTAw
ODg3NDY4IC8qIENhY2hlZFNjcmlwdFNvdXJjZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLywKLQkJ
CQk1MDM4QkU0MTE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmggaW4gSGVhZGVycyAq
LywKIAkJCQlEMEJDNTQ0OTE0NDNBQzRBMDBFMTA1REEgLyogQ2FjaGVkU3R5bGVTaGVldENsaWVu
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTEwNEYyNDQxNEM3MUY3QTAwOUUyQzIzIC8qIENhY2hl
ZFNWR0RvY3VtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUVGNEU2OTE3MEUxNzQ4MDBBQjI3
OTkgLyogQ2FjaGVkU1ZHRG9jdW1lbnRDbGllbnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjMxODgs
MjMgKzIzMDE4LDggQEAKIAkJCQk4NjgxNjBENjE4NzY2QTEzMDAyMUU3OUQgLyogVXNlckFjdGl2
aXR5LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzIyNzJBRDBFODJFOEYzMDBFN0Y5NzUgLyogQ3Vy
c29yTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjJDRDMyNUExMTU3RTU3QzAwNjNCMEE3IC8q
IEN1c3RvbUV2ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQkxNUIzRkMxOTE1RkIyMTc4MDBBODFC
Q0IgLyogQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUE1
ODQwRTFEMTg3Qjc0RDUwMDg0M0IxMCAvKiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUu
aCBpbiBIZWFkZXJzICovLAotCQkJCTUwRDQwNjEyMTQ3RDQ5REUwMEQzMEJCNSAvKiBDdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW0uaCBpbiBIZWFkZXJzICovLAotCQkJCUEyQjJBRTdDMTYzNzVF
RTUwMENGQTUwQiAvKiBDdXN0b21GaWx0ZXJDb25zdGFudHMuaCBpbiBIZWFkZXJzICovLAotCQkJ
CTUwOTg3QzI3MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0Lmgg
aW4gSGVhZGVycyAqLywKLQkJCQk1MEQ0MDVGQTE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyTWVzaC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJN0UxMkU5MEYxNUZBNUQzQTAwNUU0MTI2IC8q
IEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICovLAotCQkJCTUwQ0MwODlB
MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCBpbiBIZWFk
ZXJzICovLAotCQkJCTUwQUNFMkNCMTRCNUQ3OTMwMDQ0NjY2NiAvKiBDdXN0b21GaWx0ZXJPcGVy
YXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUU0QzkxQTE2MTgwOTk5RjEwMEExN0Y2RCAvKiBS
ZW5kZXJUZXh0TGluZUJveGVzLmggaW4gSGVhZGVycyAqLywKLQkJCQk1MDlDQzlGQjE0QzA2OUVE
MDBCQkVDQkQgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmggaW4gSGVhZGVycyAqLywKLQkJCQk1
MDkzMzM1MDE2M0IwRTQzMDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIGlu
IEhlYWRlcnMgKi8sCi0JCQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRl
clByb2dyYW0uaCBpbiBIZWFkZXJzICovLAotCQkJCTUwM0QwQ0FDMTRCNUIwODcwMEYzMkY1NyAv
KiBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQk1MEQ4OENC
NjE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCBpbiBIZWFkZXJz
ICovLAotCQkJCTUwM0QwQ0FCMTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0b21GaWx0ZXJSZW5kZXJl
ci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQTI5NTMyRDAxNURENUUxNzAwNDY5RUJDIC8qIEN1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCBpbiBIZWFkZXJzICovLAogCQkJCUE4Q0I0MTNFMEU4
NjMzRkQwMDMyQzRGMCAvKiBEYXNoQXJyYXkuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4MEU2RDBC
MEExOTg5Q0EwMDdGQjhDNSAvKiBEYXNoYm9hcmRSZWdpb24uaCBpbiBIZWFkZXJzICovLAogCQkJ
CTk3QkM2QTIxMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZS5oIGluIEhlYWRlcnMgKi8sCkBA
IC0yMzY0Nyw5ICsyMzQ2Miw3IEBACiAJCQkJQkMxQTM3QzAwOTdDNzE1RjAwMTlGM0Q4IC8qIERP
TVZpZXdzLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUMwRkY0OTBFNENFRkREMDA3RDZGRTUgLyog
RE9NV2ViS2l0QW5pbWF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQzBGRjRCMEU0
Q0VGREQwMDdENkZFNSAvKiBET01XZWJLaXRBbmltYXRpb25FdmVudEludGVybmFsLmggaW4gSGVh
ZGVycyAqLywKLQkJCQlBMkU4QUU0MDE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmls
dGVyUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE1QjNBNkUxN0NCRTI2NzAwMEZDQ0U4IC8q
IEFjY2Vzc2liaWxpdHlTZWFyY2hGaWVsZEJ1dHRvbnMuaCBpbiBIZWFkZXJzICovLAotCQkJCUEy
RThBRTQyMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwu
aCBpbiBIZWFkZXJzICovLAogCQkJCTMxMDYwMzc5MTQzMjgxQ0QwMEFCRjRCQSAvKiBET01XZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEwNjAzN0IxNDMyODFDRDAw
QUJGNEJBIC8qIERPTVdlYktpdENTU0ZpbHRlclZhbHVlSW50ZXJuYWwuaCBpbiBIZWFkZXJzICov
LAogCQkJCTMxNkZFMDdEMEU2Q0NDMjgwMEJGNjA4OCAvKiBET01XZWJLaXRDU1NLZXlmcmFtZVJ1
bGUuaCBpbiBIZWFkZXJzICovLApAQCAtMjM3NjcsNyArMjM1ODAsNiBAQAogCQkJCUE3NUU4QjhE
MEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbXBvbmVudFRyYW5zZmVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlBNzVFOEI4RjBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTg0NzMwRDc5MTI0OEYwQjMwMEQzQTlDOSAvKiBGRUNvbnZvbHZlTWF0cml4Lmgg
aW4gSGVhZGVycyAqLywKLQkJCQk1MEQ0MDNDODE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0b21G
aWx0ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTg0NzMwRDdCMTI0OEYwQjMwMEQzQTlDOSAvKiBG
RURpZmZ1c2VMaWdodGluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RBQjZEMzExN0M5MjU5NTAw
QzYwQjM0IC8qIFVzZXJBZ2VudFNjcmlwdHMuaCBpbiBIZWFkZXJzICovLAogCQkJCTg0NzMwRDdE
MTI0OEYwQjMwMEQzQTlDOSAvKiBGRURpc3BsYWNlbWVudE1hcC5oIGluIEhlYWRlcnMgKi8sCkBA
IC0yNDczNSwxMiArMjQ1NDcsMTAgQEAKIAkJCQk3N0VGNjJGNDEyRjlEQjc0MDBDNzdCRDIgLyog
SlNXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggaW4gSGVhZGVycyAqLywKIAkJCQlDREM4QjVB
QjE4MDQ3RkYxMDAxNkU2ODUgLyogU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTMxQzBGRjNFMEU0Q0VGQUMwMDdENkZFNSAvKiBKU1dlYktpdEFuaW1hdGlv
bkV2ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQlBMkU4QUUzODE2QTQ5ODQwMDA2QkIzQUEgLyog
SlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTA2MDM3NTE0MzI4
MTlDMDBBQkY0QkEgLyogSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMzE2RkUwNzIwRTZDQ0JFRTAwQkY2MDg4IC8qIEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMTZGRTA3NDBFNkNDQkVFMDBCRjYwODggLyogSlNXZWJLaXRD
U1NLZXlmcmFtZXNSdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQk0OTgzOTE0MDBGMUU3Njc1MDBD
MjM3ODIgLyogSlNXZWJLaXRDU1NNYXRyaXguaCBpbiBIZWFkZXJzICovLAotCQkJCTE1QjhCN0M5
MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFk
ZXJzICovLAogCQkJCThBRDBBNTk1MTRDODgzMzYwMDBEODNDNSAvKiBKU1dlYktpdENTU1JlZ2lv
blJ1bGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxNjExRTVCMEUxQzRERTAwMEY2QTU3OSAvKiBK
U1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzRjJCMzNFRjE2
NUFGMTU2MDBFMzk4N0MgLyogSlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuaCBpbiBIZWFkZXJzICov
LApAQCAtMjU1MTMsMTAgKzI1MzIzLDcgQEAKIAkJCQlCQzVFQjY3QjBFODFEM0JFMDBCMjU5NjUg
LyogU3R5bGVCb3hEYXRhLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0VGNDQ0RDBFNjc0NjI4MDAx
QzEyODcgLyogU3R5bGVDYWNoZWRJbWFnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM5M0U2MDUx
NTFBOUExODAwMDY2RjA2IC8qIFN0eWxlQ2FjaGVkSW1hZ2VTZXQuaCBpbiBIZWFkZXJzICovLAot
CQkJCTUwMzhCRTMwMTQ3MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJNTAzRDBDQUUxNEI1QjBCQTAwRjMyRjU3IC8qIFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTE2NjBBQzExODI4Qzg0NjAwMDc0Q0FE
IC8qIElEQkJhY2tpbmdTdG9yZUN1cnNvckxldmVsREIuaCBpbiBIZWFkZXJzICovLAotCQkJCTUw
RTE4Q0RBMTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI2N0YwRTgxRDRBNzAwQjI1OTY1IC8qIFN0eWxlRGFz
aGJvYXJkUmVnaW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEM0QTdGRDA5RDU2MzI3MDAwM0FD
OEQgLyogU3R5bGVkRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4QjkwRTgyMDFC
RDAwQjI1OTY1IC8qIFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5oIGluIEhlYWRlcnMg
Ki8sCkBAIC0yNTU0NSw3ICsyNTM1Miw2IEBACiAJCQkJRTRCQkVENEQxNEZDREJBMTAwM0YwQjk4
IC8qIFN0eWxlUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTQ5NDZFQUYxNTZFNjRERDAwRDMy
OTdGIC8qIFN0eWxlUnVsZUltcG9ydC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTdCNzYxQTExNjFF
RTUyNjAwMjA4M0QzIC8qIFN0eWxlU2NvcGVSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
MzEzOEE5RTUxNDc0NDM0NjAwQjBFRDEyIC8qIFN0eWxlU2hhZGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlBOEVBODAwQzBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMEY1NERDRTYxODgxMDUxRDAwM0VFREJCIC8qIFRleHRBdXRvU2l6aW5nLmggaW4g
SGVhZGVycyAqLywKIAkJCQlFNEY5RUVGMzE1NkRBMDA3MDBEMjNFN0UgLyogU3R5bGVTaGVldENv
bnRlbnRzLmggaW4gSGVhZGVycyAqLywKQEAgLTI1OTUwLDcgKzI1NzU2LDYgQEAKIAkJCQkxRkFG
QkYxOTE1QTVGQTc0MDAwODNBMjAgLyogVVRJVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkyRTNCQkYwODExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QTUwMTkyMEUxMzJFQkYyRTAwOEJGRTU1IC8qIEF1dG9jYXBpdGFsaXplLmggaW4gSGVhZGVycyAq
LywKLQkJCQk1MEQzMjg1ODE2M0IzMTNGMDAxNjExMUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlGNUExNTQyODEyNzk1MzREMDBEMEIwQzAg
LyogVmFsaWRhdGlvbk1lc3NhZ2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUY1MTNBM0VBMTVGRjQ4
NDEwMDE1MjZEQiAvKiBWYWxpZGF0aW9uTWVzc2FnZUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMTVDNzcwOEQxMDBEM0M2QjAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaCBpbiBIZWFkZXJz
ICovLApAQCAtMjYwMzAsMTcgKzI1ODM1LDEyIEBACiAJCQkJNzdBMTdBNzgxMkYyODY0MjAwNEUw
MkY2IC8qIFdlYkdMVmVydGV4QXJyYXlPYmplY3RPRVMuaCBpbiBIZWFkZXJzICovLAogCQkJCTMx
QzBGRjIyMEU0Q0VCNkUwMDdENkZFNSAvKiBXZWJLaXRBbmltYXRpb25FdmVudC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJOTc2RDZDN0MxMjJCOEEzRDAwMUZEMUY3IC8qIFdlYktpdEJsb2JCdWlsZGVy
LmggaW4gSGVhZGVycyAqLywKLQkJCQkxNTBCOTIzQTE1RjA4REM0MDBFMTA5ODYgLyogV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmggaW4gSGVhZGVycyAqLywKLQkJCQlBMkU4QUUzMTE2QTQ4
RTFDMDA2QkIzQUEgLyogV2ViS2l0Q1NTRmlsdGVyUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NTFENzE5Q0QxODExMDZFMDAwMTZEQzUxIC8qIElEQkRhdGFiYXNlRXJyb3IuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTMxMDYwMzcwMTQzMjdEMkUwMEFCRjRCQSAvKiBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEyODhFNzMwRTMwMDVENjAwMzYxOUFFIC8qIFdlYktp
dENTU0tleWZyYW1lUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEyODhFNzUwRTMwMDVENjAw
MzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1lc1J1bGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUZC
NzE5QzNGMTcyMzhDQTgwMDIyREUzNCAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmggaW4g
SGVhZGVycyAqLywKIAkJCQk0OTgzOTE1OTBGMUU3NzY5MDBDMjM3ODIgLyogV2ViS2l0Q1NTTWF0
cml4LmggaW4gSGVhZGVycyAqLywKLQkJCQlBMjRCRjc3QjE1Q0MzQkFGMDAzMTkxRjIgLyogV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOEFBNjFEMDAxNDRE
NTk1QjAwRjM3MzUwIC8qIFdlYktpdENTU1JlZ2lvblJ1bGUuaCBpbiBIZWFkZXJzICovLAotCQkJ
CTI5Q0Q2MURFMTQ2RDAyODkwMDY4RTgyQSAvKiBXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMDc4RTA5NDIxN0QxNkUxQzAwNDIwQUExIC8qIFJUQ1BlZXJDb25uZWN0
aW9uSGFuZGxlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM5QUREMjMwQ0M0MDMyNjAw
MDk4QzRDIC8qIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQkz
RkZGRjlBOTE1OUQ5QTU1MDAyMEJCRDUgLyogV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmggaW4gSGVh
ZGVycyAqLywKQEAgLTI2NjQyLDcgKzI2NDQyLDYgQEAKIAkJCQk1MDgxRTNDMzNDRTU4MEMxNkVG
OEI0OEIgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTZD
NjM4ODk2QTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3Jz
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDQjE2QzIzMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNo
ZWRTY3JpcHQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzOEJFNDAxNDcyQUQ5ODAwOTVFMEQx
IC8qIENhY2hlZFNoYWRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBMTA0RjI0MzE0QzcxRjdB
MDA5RTJDMjMgLyogQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTFC
NTMzNDcxNzE3RDBBMTAwRjIwNUY5IC8qIENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTA3NTM4NjAyMTQ0ODlFOTgwMEI3ODQ1MiAvKiBDYWNoZWRUZXh0
VHJhY2suY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yNjgwOCwxOCArMjY2MDcsOCBAQAogCQkJCTI2
NTU0MTUyMTQ4OUIyMzMwMDBERkM1RCAvKiBDdXJzb3JJT1MuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJOTNGMTlBMjYwODI0NUU1OTAwMUU5QUJDIC8qIEN1cnNvck1hYy5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTYyQ0QzMjU5MTE1N0U1N0MwMDYzQjBBNyAvKiBDdXN0b21FdmVudC5jcHAgaW4gU291
cmNlcyAqLywKLQkJCQk1MEQ0MDYxMTE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTUwOTg3QzI2MTU3RDY3NkQwMEJE
QTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcCBpbiBTb3VyY2VzICovLAotCQkJ
CTUwRDQwNUY5MTQ3RDMxRjMwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUUxQzI2NkRFMTgzMTlGMzEwMDNGOEIzMyAvKiBDcnlwdG9LZXlEYXRhUlNB
Q29tcG9uZW50cy5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk3RTEyRTkxMDE1RkE1RDNBMDA1RTQx
MjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlB
NTg0RkUzQjE4NjRFMkQ4MDA4NDNCMTAgLyogSlNDb21tYW5kTGluZUFQSUhvc3QuY3BwIGluIFNv
dXJjZXMgKi8sCi0JCQkJNTBDQzBBMzkxNEM2RjVCMTAwMTdBQjUxIC8qIEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MDkzMzM0RjE2M0IwRTQzMDAwOTlBNjAg
LyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MDNE
MENBQTE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgaW4gU291cmNl
cyAqLywKLQkJCQk1MEQ4OENCNTE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUluZm8uY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzRDBDQUExNEI1QjA4NzAwRjMyRjU4IC8q
IEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUEyOTUzMkNGMTVE
RDVFMTcwMDQ2OUVCQyAvKiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTk3QkM2QTIwMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQk5N0JDNkEyMzE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VBdXRo
b3JpemVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxMjVGODM1MTgyMkYxOEEwMEQ4NENEOSAv
KiBDcnlwdG9LZXlITUFDLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjcwODcsNyArMjY4NzYsNiBA
QAogCQkJCUJDMUEzN0JGMDk3QzcxNUYwMDE5RjNEOCAvKiBET01VdGlsaXR5Lm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMTVDNzcwQTUxMDBENDFDRDAwNUJBMjY3IC8qIERPTVZhbGlkaXR5U3RhdGUu
bW0gaW4gU291cmNlcyAqLywKIAkJCQkzMUMwRkY0QTBFNENFRkREMDA3RDZGRTUgLyogRE9NV2Vi
S2l0QW5pbWF0aW9uRXZlbnQubW0gaW4gU291cmNlcyAqLywKLQkJCQlBMkU4QUU0MTE2QTQ5OENG
MDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTMxMDYwMzdBMTQzMjgxQ0QwMEFCRjRCQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5tbSBp
biBTb3VyY2VzICovLAogCQkJCUNERjJCMDEwMTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrQm94LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTMxNkZFMDdFMEU2Q0NDMjgwMEJGNjA4OCAvKiBET01XZWJL
aXRDU1NLZXlmcmFtZVJ1bGUubW0gaW4gU291cmNlcyAqLywKQEAgLTI3MTcxLDcgKzI2OTU5LDYg
QEAKIAkJCQlBNzVFOEI4RTBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJODQ3MzBENzgxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFQ29udm9sdmVNYXRy
aXguY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RENzA4OTYxODM1OUY2RjAwMkIzREM2IC8qIFNh
bXBsZU1hcC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MEQ0MDNDNzE0NzY4Qzk0MDBEMzBCQjUg
LyogRkVDdXN0b21GaWx0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODQ3MzBEN0ExMjQ4RjBC
MzAwRDNBOUM5IC8qIEZFRGlmZnVzZUxpZ2h0aW5nLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA3
OEUwOTBCMTdEMTRDRUUwMDQyMEFBMSAvKiBSVENQZWVyQ29ubmVjdGlvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk4NDczMEQ3QzEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaXNwbGFjZW1lbnRNYXAu
Y3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yODE3OCwxMiArMjc5NjUsMTAgQEAKIAkJCQkwQzQ1MzQy
NzEwQ0RCQkZBMDA4NjkxNTcgLyogSlNXZWJHTFVuaWZvcm1Mb2NhdGlvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk3N0VGNjJGMzEyRjlEQjc0MDBDNzdCRDIgLyogSlNXZWJHTFZlcnRleEFycmF5
T2JqZWN0T0VTLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQzBGRjNEMEU0Q0VGQUMwMDdENkZF
NSAvKiBKU1dlYktpdEFuaW1hdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUEyRThB
RTM3MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMzEwNjAzNzQxNDMyODE5QzAwQUJGNEJBIC8qIEpTV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzE2RkUwNzEwRTZDQ0JFRTAwQkY2MDg4IC8q
IEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNkZFMDcz
MEU2Q0NCRUUwMEJGNjA4OCAvKiBKU1dlYktpdENTU0tleWZyYW1lc1J1bGUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNDk4MzkxM0YwRjFFNzY3NTAwQzIzNzgyIC8qIEpTV2ViS2l0Q1NTTWF0cml4
LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTE1QjhCN0M4MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOEFEMEE1OTQx
NEM4ODMzNjAwMEQ4M0M1IC8qIEpTV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQkzMTYxMUU1QTBFMUM0REUwMDBGNkE1NzkgLyogSlNXZWJLaXRDU1NUcmFuc2Zvcm1W
YWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzRjJCMzNFRTE2NUFGMTU2MDBFMzk4N0MgLyog
SlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yODg0MiwxMCAr
Mjg2MjcsNyBAQAogCQkJCUJDNUVCNjdEMEU4MUQ0MjAwMEIyNTk2NSAvKiBTdHlsZUJveERhdGEu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNFRjQ0N0EwRTY3NDdEMDAwMUMxMjg3IC8qIFN0eWxl
Q2FjaGVkSW1hZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTM5M0U2MDQxNTFBOUExODAwMDY2
RjA2IC8qIFN0eWxlQ2FjaGVkSW1hZ2VTZXQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzOEJF
MkYxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2FjaGVkU2hhZGVyLmNwcCBpbiBTb3VyY2VzICov
LAotCQkJCTUwRTE4Q0Q4MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dy
YW0uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTU4NDBFMjQxODdCOEFDMjAwODQzQjEwIC8qIFBh
Z2VJbmplY3RlZFNjcmlwdEhvc3QuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTBFMThDRDkxNkY5
Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUE4QzRBN0ZFMDlENTYzMjcwMDAzQUM4RCAvKiBTdHlsZWRFbGVtZW50LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUJDNUVCOEI4MEU4MjAxQkQwMEIyNTk2NSAvKiBTdHlsZURl
cHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQUE0QzNBNzYw
QjJCMTY3OTAwMjMzNEEyIC8qIElubGluZVN0eWxlU2hlZXRPd25lci5jcHAgaW4gU291cmNlcyAq
LywKQEAgLTI5MTg2LDcgKzI4OTY4LDYgQEAKIAkJCQlCQ0RGMzE3QjExRjhENjgzMDAzQzVCRjgg
LyogVXNlclR5cGluZ0dlc3R1cmVJbmRpY2F0b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUZB
RkJGMTgxNUE1RkE2RTAwMDgzQTIwIC8qIFVUSVV0aWxpdGllcy5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTJFM0JCRjA3MTE2MkRBMTEwMEI5NDA5QSAvKiBVVUlELmNwcCBpbiBTb3VyY2VzICovLAot
CQkJCTUwRDMyODU3MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTFGRTEzNzQxODQwMkE2NzAwODkyRjEzIC8q
IENvbW1vbkNyeXB0b1V0aWxpdGllcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGNUExNTQyNzEy
Nzk1MzREMDBEMEIwQzAgLyogVmFsaWRhdGlvbk1lc3NhZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJRkQzMTYwQUUxMkIwMjZGNzAwQzFBMzU5IC8qIFZlY3Rvck1hdGguY3BwIGluIFNvdXJjZXMg
Ki8sCkBAIC0yOTI1NywxOSArMjkwMzgsMTQgQEAKIAkJCQkzMUMwRkYyMTBFNENFQjZFMDA3RDZG
RTUgLyogV2ViS2l0QW5pbWF0aW9uRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDdGRTk5
REMxODgwN0E3RDAwMjU2NjQ4IC8qIEhUTUxNZWRpYVNlc3Npb24uY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOTc2RDZDN0IxMjJCOEEzRDAwMUZEMUY3IC8qIFdlYktpdEJsb2JCdWlsZGVyLmNwcCBp
biBTb3VyY2VzICovLAotCQkJCTE1MEI5MjM5MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NB
cnJheUZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJQTJFOEFFMzAxNkE0OEUx
QzAwNkJCM0FBIC8qIFdlYktpdENTU0ZpbHRlclJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QzU1QzdCQTExNzE4QUZCQTAwMTMyN0U0IC8qIFJlbmRlclRoZW1lSU9TLm1tIGluIFNvdXJjZXMg
Ki8sCiAJCQkJMzEwNjAzNkYxNDMyN0QyRTAwQUJGNEJBIC8qIFdlYktpdENTU0ZpbHRlclZhbHVl
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxMjg4RTcyMEUzMDA1RDYwMDM2MTlBRSAvKiBXZWJL
aXRDU1NLZXlmcmFtZVJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzEyODhFNzQwRTMwMDVE
NjAwMzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1lc1J1bGUuY3BwIGluIFNvdXJjZXMgKi8sCi0J
CQkJRkI3MTlDNDAxNzIzOENBRTAwMjJERTM0IC8qIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMDc4RTA5MTExN0QxNENFRTAwNDIwQUExIC8qIFJUQ1Zv
aWRSZXF1ZXN0SW1wbC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUZFMTM2NDE4MzQzNTExMDA4
OTJGMTMgLyogQ3J5cHRvRGlnZXN0TWFjLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQ5ODM5MTU4
MEYxRTc3NjkwMEMyMzc4MiAvKiBXZWJLaXRDU1NNYXRyaXguY3BwIGluIFNvdXJjZXMgKi8sCi0J
CQkJQTI0QkY3N0MxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOEFBNjFDRkYxNDRENTk1QjAwRjM3MzUwIC8qIFdlYktp
dENTU1JlZ2lvblJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzOEJDMDcxNDcxMUNEQjAw
OTVFMEQxIC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJD
OUFERDgwMENDNDA5MjIwMDA5OEM0QyAvKiBXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkzRkZGRjlBODE1OUQ5QTU1MDAyMEJCRDUgLyogV2ViS2l0Q1NTVmll
d3BvcnRSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBMTQxNEI1MTNBMEYwNTAwMDE5OTk2
QyAvKiBXZWJLaXRGb250RmFtaWx5TmFtZXMuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1J1bGVDdXN0b20uY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNDU1NSdWxlQ3VzdG9tLmNwcAppbmRleCBkYzkwNTMwLi4z
MDAzYTcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1J1bGVD
dXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ1NTUnVsZUN1c3Rv
bS5jcHAKQEAgLTQzLDEyICs0MywxMCBAQAogI2luY2x1ZGUgIkpTQ1NTU3VwcG9ydHNSdWxlLmgi
CiAjaW5jbHVkZSAiSlNOb2RlLmgiCiAjaW5jbHVkZSAiSlNTdHlsZVNoZWV0Q3VzdG9tLmgiCi0j
aW5jbHVkZSAiSlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmgiCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NL
ZXlmcmFtZVJ1bGUuaCIKICNpbmNsdWRlICJKU1dlYktpdENTU0tleWZyYW1lc1J1bGUuaCIKICNp
bmNsdWRlICJKU1dlYktpdENTU1JlZ2lvblJ1bGUuaCIKICNpbmNsdWRlICJKU1dlYktpdENTU1Zp
ZXdwb3J0UnVsZS5oIgotI2luY2x1ZGUgIldlYktpdENTU0ZpbHRlclJ1bGUuaCIKICNpbmNsdWRl
ICJXZWJLaXRDU1NLZXlmcmFtZVJ1bGUuaCIKICNpbmNsdWRlICJXZWJLaXRDU1NLZXlmcmFtZXNS
dWxlLmgiCiAjaW5jbHVkZSAiV2ViS2l0Q1NTUmVnaW9uUnVsZS5oIgpAQCAtMTIyLDExICsxMjAs
NiBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBDU1NSdWxlKiBydWxlKQogICAgICAgICAgICAgd3JhcHBlciA9IENSRUFURV9E
T01fV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIENTU0hvc3RSdWxlLCBydWxlKTsKICAgICAg
ICAgICAgIGJyZWFrOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBj
YXNlIENTU1J1bGU6OldFQktJVF9GSUxURVJfUlVMRToKLSAgICAgICAgICAgIHdyYXBwZXIgPSBD
UkVBVEVfRE9NX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBXZWJLaXRDU1NGaWx0ZXJSdWxl
LCBydWxlKTsKLSAgICAgICAgICAgIGJyZWFrOwotI2VuZGlmCiAgICAgICAgIGRlZmF1bHQ6CiAg
ICAgICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVj
dCwgQ1NTUnVsZSwgcnVsZSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcAppbmRleCBmZWVlMDE0Li4wNTBlNGI4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcApAQCAtMzksMTEg
KzM5LDYgQEAKICNpbmNsdWRlICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIgogI2VuZGlmCiAKLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIgotI2VuZGlmCi0K
ICNpZiBFTkFCTEUoU1ZHKQogI2luY2x1ZGUgIkpTU1ZHQ29sb3IuaCIKICNpbmNsdWRlICJKU1NW
R1BhaW50LmgiCkBAIC05OSwxMCArOTQsNiBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBleGVj
LCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDU1NWYWx1ZSogdmFsdWUpCiAgICAg
ZWxzZSBpZiAodmFsdWUtPmlzV2ViS2l0Q1NTRmlsdGVyVmFsdWUoKSkKICAgICAgICAgd3JhcHBl
ciA9IENSRUFURV9ET01fV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIFdlYktpdENTU0ZpbHRl
clZhbHVlLCB2YWx1ZSk7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgZWxz
ZSBpZiAodmFsdWUtPmlzV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpKQotICAgICAgICB3cmFw
cGVyID0gQ1JFQVRFX0RPTV9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgV2ViS2l0Q1NTTWl4
RnVuY3Rpb25WYWx1ZSwgdmFsdWUpOwotI2VuZGlmCiAgICAgZWxzZSBpZiAodmFsdWUtPmlzVmFs
dWVMaXN0KCkpCiAgICAgICAgIHdyYXBwZXIgPSBDUkVBVEVfRE9NX1dSQVBQRVIoZXhlYywgZ2xv
YmFsT2JqZWN0LCBDU1NWYWx1ZUxpc3QsIHZhbHVlKTsKICNpZiBFTkFCTEUoU1ZHKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvb2JqYy9ET01DU1MubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9vYmpjL0RPTUNTUy5tbQppbmRleCAwN2U5ZTFmLi45MGU0ZGE0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUNTUy5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUNTUy5tbQpAQCAtNTIsMTAgKzUyLDYgQEAKICNp
bXBvcnQgIkRPTVdlYktpdENTU0tleWZyYW1lc1J1bGUuaCIKICNpbXBvcnQgIkRPTVdlYktpdENT
U1RyYW5zZm9ybVZhbHVlLmgiCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW1wb3J0ICJE
T01XZWJLaXRDU1NGaWx0ZXJSdWxlLmgiCi0jZW5kaWYKLQogI2lmIEVOQUJMRShDU1NfRklMVEVS
UykKICNpbXBvcnQgIkRPTVdlYktpdENTU0ZpbHRlclZhbHVlLmgiCiAjZW5kaWYKQEAgLTEyMiwx
MCArMTE4LDYgQEAgQ2xhc3Mga2l0Q2xhc3MoV2ViQ29yZTo6Q1NTUnVsZSogaW1wbCkKICAgICAg
ICAgY2FzZSBET01fSE9TVF9SVUxFOgogICAgICAgICAgICAgcmV0dXJuIFtET01DU1NIb3N0UnVs
ZSBjbGFzc107CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGNhc2Ug
RE9NX1dFQktJVF9GSUxURVJfUlVMRToKLSAgICAgICAgICAgIHJldHVybiBbRE9NV2ViS2l0Q1NT
RmlsdGVyUnVsZSBjbGFzc107Ci0jZW5kaWYKICAgICB9CiAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7CiAgICAgcmV0dXJuIG5pbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1ND
b21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1
dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggY2YxNmRiMy4uMzQ4NWFmYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAg
LTcyLDIwICs3Miw3IEBACiAjaW5jbHVkZSAiU2hhcGVWYWx1ZS5oIgogI2VuZGlmCiAKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIu
aCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1
c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJh
dGlvbi5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1
c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oIgotI2luY2x1ZGUgIldlYktpdENTU0FycmF5
RnVuY3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCIK
LSNpbmNsdWRlICJXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgiCi0jZW5kaWYKLQogI2lmIEVO
QUJMRShDU1NfRklMVEVSUykKLSNpbmNsdWRlICJTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaCIK
ICNpbmNsdWRlICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIgogI2VuZGlmCiAKQEAgLTg1MSw3MiAr
ODM4LDYgQEAgc3RhdGljIFBhc3NSZWY8Q1NTVmFsdWU+IGNvbXB1dGVkVHJhbnNmb3JtKFJlbmRl
ck9iamVjdCogcmVuZGVyZXIsIGNvbnN0IFJlbmRlclMKICAgICByZXR1cm4gc3RkOjptb3ZlKGxp
c3QpOwogfQogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotc3RhdGljIFBhc3NSZWY8V2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlPiB2YWx1ZUZvckN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVy
KGNvbnN0IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKiBhcnJheVBhcmFtZXRlcikKLXsKLSAg
ICBhdXRvIGFycmF5UGFyYW1ldGVyVmFsdWUgPSBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU6
OmNyZWF0ZSgpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDAsIHNpemUgPSBhcnJheVBhcmFtZXRl
ci0+c2l6ZSgpOyBpIDwgc2l6ZTsgKytpKQotICAgICAgICBhcnJheVBhcmFtZXRlclZhbHVlLmdl
dCgpLmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShhcnJheVBhcmFtZXRlci0+dmFs
dWVBdChpKSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpKTsKLSAgICByZXR1cm4gYXJy
YXlQYXJhbWV0ZXJWYWx1ZTsKLX0KLQotc3RhdGljIFBhc3NSZWY8V2ViS2l0Q1NTTWF0RnVuY3Rp
b25WYWx1ZT4gdmFsdWVGb3JDdXN0b21GaWx0ZXJNYXRQYXJhbWV0ZXIoY29uc3QgQ3VzdG9tRmls
dGVyQXJyYXlQYXJhbWV0ZXIqIG1hdHJpeFBhcmFtZXRlcikKLXsKLSAgICBhdXRvIG1hdHJpeFBh
cmFtZXRlclZhbHVlID0gV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZTo6Y3JlYXRlKCk7Ci0gICAg
Zm9yICh1bnNpZ25lZCBpID0gMCwgc2l6ZSA9IG1hdHJpeFBhcmFtZXRlci0+c2l6ZSgpOyBpIDwg
c2l6ZTsgKytpKQotICAgICAgICBtYXRyaXhQYXJhbWV0ZXJWYWx1ZS5nZXQoKS5hcHBlbmQoY3Nz
VmFsdWVQb29sKCkuY3JlYXRlVmFsdWUobWF0cml4UGFyYW1ldGVyLT52YWx1ZUF0KGkpLCBDU1NQ
cmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwotICAgIHJldHVybiBtYXRyaXhQYXJhbWV0ZXJW
YWx1ZTsKLX0KLQotc3RhdGljIFBhc3NSZWY8Q1NTVmFsdWVMaXN0PiB2YWx1ZUZvckN1c3RvbUZp
bHRlckNvbG9yUGFyYW1ldGVyKGNvbnN0IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKiBjb2xv
clBhcmFtZXRlcikKLXsKLSAgICBhdXRvIGNvbG9yUGFyYW1ldGVyVmFsdWUgPSBDU1NWYWx1ZUxp
c3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgY29sb3JQYXJhbWV0ZXJWYWx1ZS5nZXQo
KS5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlQ29sb3JWYWx1ZShjb2xvclBhcmFtZXRlci0+
Y29sb3IoKS5yZ2IoKSkpOwotICAgIHJldHVybiBjb2xvclBhcmFtZXRlclZhbHVlOwotfQotCi1z
dGF0aWMgUGFzc1JlZjxDU1NWYWx1ZUxpc3Q+IHZhbHVlRm9yQ3VzdG9tRmlsdGVyTnVtYmVyUGFy
YW1ldGVyKGNvbnN0IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciogbnVtYmVyUGFyYW1ldGVy
KQotewotICAgIGF1dG8gbnVtYmVyUGFyYW1ldGVyVmFsdWUgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0
ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG51bWJlclBh
cmFtZXRlci0+c2l6ZSgpOyArK2kpCi0gICAgICAgIG51bWJlclBhcmFtZXRlclZhbHVlLmdldCgp
LmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShudW1iZXJQYXJhbWV0ZXItPnZhbHVl
QXQoaSksIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKSk7Ci0gICAgcmV0dXJuIG51bWJl
clBhcmFtZXRlclZhbHVlOwotfQotCi1zdGF0aWMgUGFzc1JlZjxXZWJLaXRDU1NUcmFuc2Zvcm1W
YWx1ZT4gdmFsdWVGb3JDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIoY29uc3QgUmVuZGVy
T2JqZWN0KiByZW5kZXJlciwgY29uc3QgUmVuZGVyU3R5bGUqIHN0eWxlLCBjb25zdCBDdXN0b21G
aWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqIHRyYW5zZm9ybVBhcmFtZXRlcikKLXsKLSAgICBJbnRT
aXplIHNpemU7Ci0gICAgaWYgKHJlbmRlcmVyICYmIHJlbmRlcmVyLT5pc0JveCgpKQotICAgICAg
ICBzaXplID0gcGl4ZWxTbmFwcGVkSW50UmVjdCh0b1JlbmRlckJveChyZW5kZXJlciktPmJvcmRl
ckJveFJlY3QoKSkuc2l6ZSgpOwotCi0gICAgVHJhbnNmb3JtYXRpb25NYXRyaXggdHJhbnNmb3Jt
OwotICAgIHRyYW5zZm9ybVBhcmFtZXRlci0+YXBwbHlUcmFuc2Zvcm0odHJhbnNmb3JtLCBzaXpl
KTsKLSAgICAvLyBGSVhNRTogTmVlZCB0byBwcmludCBvdXQgaW5kaXZpZHVhbCBmdW5jdGlvbnMg
KGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzkyNCkKLSAgICByZXR1
cm4gbWF0cml4VHJhbnNmb3JtVmFsdWUodHJhbnNmb3JtLCBzdHlsZSk7Ci19Ci0KLXN0YXRpYyBQ
YXNzUmVmUHRyPENTU1ZhbHVlPiB2YWx1ZUZvckN1c3RvbUZpbHRlclBhcmFtZXRlcihjb25zdCBS
ZW5kZXJPYmplY3QqIHJlbmRlcmVyLCBjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUsIGNvbnN0IEN1
c3RvbUZpbHRlclBhcmFtZXRlciogcGFyYW1ldGVyKQotewotICAgIC8vIEZJWE1FOiBBZGQgaGVy
ZSBjb21wdXRlZCBzdHlsZSBmb3IgdGhlIG90aGVyIHR5cGVzOiBib29sZWFuLCB0cmFuc2Zvcm0s
IG1hdHJpeCwgdGV4dHVyZS4KLSAgICBBU1NFUlQocGFyYW1ldGVyKTsKLSAgICBzd2l0Y2ggKHBh
cmFtZXRlci0+cGFyYW1ldGVyVHlwZSgpKSB7Ci0gICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXI6OkFSUkFZOgotICAgICAgICByZXR1cm4gdmFsdWVGb3JDdXN0b21GaWx0ZXJBcnJheVBhcmFt
ZXRlcihzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcio+KHBhcmFt
ZXRlcikpOwotICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpDT0xPUjoKLSAgICAgICAg
cmV0dXJuIHZhbHVlRm9yQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIoc3RhdGljX2Nhc3Q8Y29u
c3QgQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICBjYXNlIEN1
c3RvbUZpbHRlclBhcmFtZXRlcjo6TUFUUklYOgotICAgICAgICByZXR1cm4gdmFsdWVGb3JDdXN0
b21GaWx0ZXJNYXRQYXJhbWV0ZXIoc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6
TlVNQkVSOgotICAgICAgICByZXR1cm4gdmFsdWVGb3JDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0
ZXIoc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKj4ocGFyYW1l
dGVyKSk7Ci0gICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OlRSQU5TRk9STToKLSAgICAg
ICAgcmV0dXJuIHZhbHVlRm9yQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKHJlbmRlcmVy
LCBzdHlsZSwgc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVy
Kj4ocGFyYW1ldGVyKSk7Ci0gICAgfQotICAgIAotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwot
ICAgIHJldHVybiAwOwotfQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQogc3RhdGlj
IGlubGluZSBQYXNzUmVmPENTU1ByaW1pdGl2ZVZhbHVlPiBhZGp1c3RMZW5ndGhGb3Jab29tKGRv
dWJsZSBsZW5ndGgsIGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSwgQWRqdXN0UGl4ZWxWYWx1ZXNG
b3JDb21wdXRlZFN0eWxlIGFkanVzdCkKIHsKICAgICByZXR1cm4gYWRqdXN0ID09IEFkanVzdFBp
eGVsVmFsdWVzID8gem9vbUFkanVzdGVkUGl4ZWxWYWx1ZShsZW5ndGgsIHN0eWxlKSA6IGNzc1Zh
bHVlUG9vbCgpLmNyZWF0ZVZhbHVlKGxlbmd0aCwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19QWCk7
CkBAIC05NDYsMTEgKzg2Nyw4IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVF
eHRyYWN0b3I6OnZhbHVlRm9yU2hhZG93KGNvbnN0IFNoYWRvd0RhdGEqIHNoCiB9CiAKICNpZiBF
TkFCTEUoQ1NTX0ZJTFRFUlMpCi1QYXNzUmVmPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFj
dG9yOjp2YWx1ZUZvckZpbHRlcihjb25zdCBSZW5kZXJPYmplY3QqIHJlbmRlcmVyLCBjb25zdCBS
ZW5kZXJTdHlsZSogc3R5bGUsIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlck9wZXJhdGlv
bnMsIEFkanVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSBhZGp1c3QpCitQYXNzUmVmPENT
U1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvckZpbHRlcihjb25zdCBSZW5k
ZXJTdHlsZSogc3R5bGUsIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlck9wZXJhdGlvbnMs
IEFkanVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSBhZGp1c3QpCiB7Ci0jaWYgIUVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBVTlVTRURfUEFSQU0ocmVuZGVyZXIpOwotI2VuZGlmCiAgICAg
aWYgKGZpbHRlck9wZXJhdGlvbnMub3BlcmF0aW9ucygpLmlzRW1wdHkoKSkKICAgICAgICAgcmV0
dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwog
CkBAIC0xMDMwLDcwICs5NDgsNiBAQCBQYXNzUmVmPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0
cmFjdG9yOjp2YWx1ZUZvckZpbHRlcihjb25zdCBSZW5kZXJPYmplY3QqIHJlbgogICAgICAgICAg
ICAgZmlsdGVyVmFsdWUtPmFwcGVuZCh2YWx1ZUZvclNoYWRvdygmc2hhZG93RGF0YSwgQ1NTUHJv
cGVydHlUZXh0U2hhZG93LCBzdHlsZSwgYWRqdXN0KSk7CiAgICAgICAgICAgICBicmVhazsKICAg
ICAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVy
YXRpb246OlZBTElEQVRFRF9DVVNUT006Ci0gICAgICAgICAgICAvLyBWYWxpZGF0ZWRDdXN0b21G
aWx0ZXJPcGVyYXRpb24gaXMgbm90IHN1cHBvc2VkIHRvIGVuZCB1cCBpbiB0aGUgUmVuZGVyU3R5
bGUuCi0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgIGJyZWFr
OwotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOiB7Ci0gICAgICAgICAgICBD
dXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbU9wZXJhdGlvbiA9IHN0YXRpY19jYXN0PEN1c3Rv
bUZpbHRlck9wZXJhdGlvbio+KGZpbHRlck9wZXJhdGlvbik7Ci0gICAgICAgICAgICBmaWx0ZXJW
YWx1ZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoV2ViS2l0Q1NTRmlsdGVyVmFsdWU6
OkN1c3RvbUZpbHRlck9wZXJhdGlvbik7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIC8vIFRo
ZSBvdXRwdXQgc2hvdWxkIGJlIHZlcmJvc2UsIGV2ZW4gaWYgdGhlIHZhbHVlcyBhcmUgdGhlIGRl
ZmF1bHQgb25lcy4KLSAgICAgICAgICAgIAotICAgICAgICAgICAgQVNTRVJUKGN1c3RvbU9wZXJh
dGlvbi0+cHJvZ3JhbSgpKTsKLSAgICAgICAgICAgIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSog
cHJvZ3JhbSA9IHN0YXRpY19jYXN0PFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSo+KGN1c3RvbU9w
ZXJhdGlvbi0+cHJvZ3JhbSgpKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgUmVmUHRyPENT
U1ZhbHVlTGlzdD4gc2hhZGVyc0xpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJh
dGVkKCk7Ci0gICAgICAgICAgICBpZiAocHJvZ3JhbS0+dmVydGV4U2hhZGVyKCkpCi0gICAgICAg
ICAgICAgICAgc2hhZGVyc0xpc3QtPmFwcGVuZChwcm9ncmFtLT52ZXJ0ZXhTaGFkZXIoKS0+Y3Nz
VmFsdWUoKSk7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgc2hhZGVyc0xpc3Qt
PmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25l
KSk7Ci0KLSAgICAgICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyBt
aXhTZXR0aW5ncyA9IHByb2dyYW0tPm1peFNldHRpbmdzKCk7Ci0gICAgICAgICAgICBpZiAocHJv
Z3JhbS0+ZnJhZ21lbnRTaGFkZXIoKSkgewotICAgICAgICAgICAgICAgIGlmIChwcm9ncmFtLT5w
cm9ncmFtVHlwZSgpID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJFKSB7Ci0g
ICAgICAgICAgICAgICAgICAgIFJlZlB0cjxXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlPiBtaXhG
dW5jdGlvbiA9IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU6OmNyZWF0ZSgpOwotICAgICAgICAg
ICAgICAgICAgICBtaXhGdW5jdGlvbi0+YXBwZW5kKHByb2dyYW0tPmZyYWdtZW50U2hhZGVyKCkt
PmNzc1ZhbHVlKCkpOwotICAgICAgICAgICAgICAgICAgICBtaXhGdW5jdGlvbi0+YXBwZW5kKGNz
c1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKG1peFNldHRpbmdzLmJsZW5kTW9kZSkpOwotICAgICAg
ICAgICAgICAgICAgICBtaXhGdW5jdGlvbi0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZh
bHVlKG1peFNldHRpbmdzLmNvbXBvc2l0ZU9wZXJhdG9yKSk7Ci0gICAgICAgICAgICAgICAgICAg
IHNoYWRlcnNMaXN0LT5hcHBlbmQobWl4RnVuY3Rpb24ucmVsZWFzZSgpKTsKLSAgICAgICAgICAg
ICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgc2hhZGVyc0xpc3QtPmFwcGVuZChwcm9n
cmFtLT5mcmFnbWVudFNoYWRlcigpLT5jc3NWYWx1ZSgpKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBzaGFkZXJzTGlzdC0+YXBwZW5kKGNzc1ZhbHVl
UG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpKTsKLQotICAgICAgICAg
ICAgZmlsdGVyVmFsdWUtPmFwcGVuZChzaGFkZXJzTGlzdC5yZWxlYXNlKCkpOwotICAgICAgICAg
ICAgCi0gICAgICAgICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBtZXNoUGFyYW1ldGVycyA9IENT
U1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAgICAgICAgICAgIG1lc2hQYXJh
bWV0ZXJzLT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoY3VzdG9tT3BlcmF0aW9u
LT5tZXNoQ29sdW1ucygpLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwotICAgICAg
ICAgICAgbWVzaFBhcmFtZXRlcnMtPmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShj
dXN0b21PcGVyYXRpb24tPm1lc2hSb3dzKCksIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVS
KSk7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIC8vIEZJWE1FOiBUaGUgc3BlY2lmaWNhdGlv
biBkb2Vzbid0IGhhdmUgYW55ICJhdHRhY2hlZCIgaWRlbnRpZmllci4gU2hvdWxkIHdlIGFkZCBv
bmU/Ci0gICAgICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzI3MDAKLSAgICAgICAgICAgIGlmIChjdXN0b21PcGVyYXRpb24tPm1lc2hUeXBlKCkgPT0g
TWVzaFR5cGVEZXRhY2hlZCkKLSAgICAgICAgICAgICAgICBtZXNoUGFyYW1ldGVycy0+YXBwZW5k
KGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZURldGFjaGVkKSk7
Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQobWVzaFBhcmFt
ZXRlcnMucmVsZWFzZSgpKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgY29uc3QgQ3VzdG9t
RmlsdGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVycyA9IGN1c3RvbU9wZXJhdGlvbi0+cGFyYW1l
dGVycygpOwotICAgICAgICAgICAgc2l6ZV90IHBhcmFtZXRlcnNTaXplID0gcGFyYW1ldGVycy5z
aXplKCk7Ci0gICAgICAgICAgICBpZiAoIXBhcmFtZXRlcnNTaXplKQotICAgICAgICAgICAgICAg
IGJyZWFrOwotICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyYW1ldGVyc0NTU1Zh
bHVlID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVDb21tYVNlcGFyYXRlZCgpOwotICAgICAgICAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzU2l6ZTsgKytpKSB7Ci0gICAgICAgICAg
ICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBwYXJhbWV0ZXIgPSBwYXJhbWV0ZXJz
LmF0KGkpLmdldCgpOwotICAgICAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcmFt
ZXRlckNTU05hbWVBbmRWYWx1ZSA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQo
KTsKLSAgICAgICAgICAgICAgICBwYXJhbWV0ZXJDU1NOYW1lQW5kVmFsdWUtPmFwcGVuZChjc3NW
YWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShwYXJhbWV0ZXItPm5hbWUoKSwgQ1NTUHJpbWl0aXZlVmFs
dWU6OkNTU19TVFJJTkcpKTsKLSAgICAgICAgICAgICAgICBwYXJhbWV0ZXJDU1NOYW1lQW5kVmFs
dWUtPmFwcGVuZCh2YWx1ZUZvckN1c3RvbUZpbHRlclBhcmFtZXRlcihyZW5kZXJlciwgc3R5bGUs
IHBhcmFtZXRlcikpOwotICAgICAgICAgICAgICAgIHBhcmFtZXRlcnNDU1NWYWx1ZS0+YXBwZW5k
KHBhcmFtZXRlckNTU05hbWVBbmRWYWx1ZS5yZWxlYXNlKCkpOwotICAgICAgICAgICAgfQotICAg
ICAgICAgICAgCi0gICAgICAgICAgICBmaWx0ZXJWYWx1ZS0+YXBwZW5kKHBhcmFtZXRlcnNDU1NW
YWx1ZS5yZWxlYXNlKCkpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSNlbmRpZgog
ICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgZmlsdGVyVmFsdWUgPSBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZTo6Y3JlYXRlKFdlYktpdENTU0ZpbHRlclZhbHVlOjpVbmtub3duRmlsdGVyT3BlcmF0
aW9uKTsKICAgICAgICAgICAgIGJyZWFrOwpAQCAtMjk2OSw3ICsyODIzLDcgQEAgUGFzc1JlZlB0
cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZShDU1NQcm9w
ZXJ0eUlEIHByb3BlcnQKICNlbmRpZgogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEZpbHRlcjoKLSAgICAgICAgICAgIHJldHVybiB2YWx1ZUZv
ckZpbHRlcihyZW5kZXJlciwgc3R5bGUuZ2V0KCksIHN0eWxlLT5maWx0ZXIoKSk7CisgICAgICAg
ICAgICByZXR1cm4gdmFsdWVGb3JGaWx0ZXIoc3R5bGUuZ2V0KCksIHN0eWxlLT5maWx0ZXIoKSk7
CiAjZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQogICAgICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0QmxlbmRNb2RlOgpAQCAtMzA5Myw5ICsyOTQ3LDYgQEAgUGFzc1JlZlB0cjxD
U1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0
eUlEIHByb3BlcnQKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIC8qIE90aGVyIHVuaW1w
bGVtZW50ZWQgcHJvcGVydGllcyAqLwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eUdlb21ldHJ5OgotI2VuZGlmCiAgICAgICAgIGNhc2UgQ1NTUHJvcGVy
dHlQYWdlOiAvLyBmb3IgQHBhZ2UKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVF1b3RlczogLy8g
RklYTUU6IG5lZWRzIGltcGxlbWVudGF0aW9uCiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlTaXpl
OiAvLyBmb3IgQHBhZ2UKQEAgLTMxMTYsMTAgKzI5NjcsNiBAQCBQYXNzUmVmUHRyPENTU1ZhbHVl
PiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJv
cGVydAogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VHJhbnNmb3JtT3JpZ2luWDoKICAg
ICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRyYW5zZm9ybU9yaWdpblk6CiAgICAgICAgIGNh
c2UgQ1NTUHJvcGVydHlXZWJraXRUcmFuc2Zvcm1PcmlnaW5aOgotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eU1peDoKLSAgICAgICAgY2FzZSBDU1NQcm9w
ZXJ0eVBhcmFtZXRlcnM6Ci0jZW5kaWYKICAgICAgICAgICAgIGJyZWFrOwogCiAjaWYgRU5BQkxF
KENTU19ERVZJQ0VfQURBUFRBVElPTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21w
dXRlZFN0eWxlRGVjbGFyYXRpb24uaAppbmRleCBlZmZhMDMxLi45OTgxY2YyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5oCkBAIC00MSwx
MSArNDEsNiBAQCBjbGFzcyBTaGFkb3dEYXRhOwogY2xhc3MgU3R5bGVQcm9wZXJ0aWVzOwogY2xh
c3MgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZDsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLWNs
YXNzIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcjsKLWNsYXNzIEN1c3RvbUZpbHRlclBhcmFt
ZXRlcjsKLSNlbmRpZgotCiBlbnVtIEVVcGRhdGVMYXlvdXQgeyBEb05vdFVwZGF0ZUxheW91dCA9
IGZhbHNlLCBVcGRhdGVMYXlvdXQgPSB0cnVlIH07CiAKIGVudW0gQWRqdXN0UGl4ZWxWYWx1ZXNG
b3JDb21wdXRlZFN0eWxlIHsgQWRqdXN0UGl4ZWxWYWx1ZXMsIERvTm90QWRqdXN0UGl4ZWxWYWx1
ZXMgfTsKQEAgLTY0LDcgKzU5LDcgQEAgcHVibGljOgogICAgIGJvb2wgcHJvcGVydHlNYXRjaGVz
KENTU1Byb3BlcnR5SUQsIGNvbnN0IENTU1ZhbHVlKikgY29uc3Q7CiAKICNpZiBFTkFCTEUoQ1NT
X0ZJTFRFUlMpCi0gICAgc3RhdGljIFBhc3NSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yRmlsdGVyKGNv
bnN0IFJlbmRlck9iamVjdCosIGNvbnN0IFJlbmRlclN0eWxlKiwgY29uc3QgRmlsdGVyT3BlcmF0
aW9ucyYsIEFkanVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSA9IEFkanVzdFBpeGVsVmFs
dWVzKTsKKyAgICBzdGF0aWMgUGFzc1JlZjxDU1NWYWx1ZT4gdmFsdWVGb3JGaWx0ZXIoY29uc3Qg
UmVuZGVyU3R5bGUqLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiwgQWRqdXN0UGl4ZWxWYWx1ZXNG
b3JDb21wdXRlZFN0eWxlID0gQWRqdXN0UGl4ZWxWYWx1ZXMpOwogI2VuZGlmCiAKIHByaXZhdGU6
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55LmluIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueS5pbgppbmRleCA4YWEwYmMzLi5lYjExYmUzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55LmluCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkuaW4KQEAgLTI5MSwxNSArMjkxLDYgQEAgc3RhdGljIGlu
bGluZSBib29sIGlzQ1NTVG9rZW5BU3RyaW5nKGludCB5eXR5cGUpCiAKICNlbmRpZgogCi0jaWYg
RU5BQkxFX0NTU19TSEFERVJTCi0KLSV0b2tlbiBXRUJLSVRfRklMVEVSX1JVTEVfU1lNCi0KLSV0
eXBlIDxydWxlPiBmaWx0ZXIKLSVkZXN0cnVjdG9yIHsgaWYgKCQkKSAkJC0+ZGVyZWYoKTsgfSBm
aWx0ZXIKLQotI2VuZGlmCi0KICNpZiBFTkFCTEVfU0hBRE9XX0RPTQogCiAldG9rZW4gSE9TVF9T
WU0KQEAgLTQyMSw5ICs0MTIsNiBAQCB2YWxpZF9ydWxlOgogI2lmIEVOQUJMRV9DU1NfREVWSUNF
X0FEQVBUQVRJT04KICAgfCB2aWV3cG9ydAogI2VuZGlmCi0jaWYgRU5BQkxFX0NTU19TSEFERVJT
Ci0gIHwgZmlsdGVyCi0jZW5kaWYKICAgOwogCiBydWxlOgpAQCAtNDcyLDkgKzQ2MCw2IEBAIGJs
b2NrX3ZhbGlkX3J1bGU6CiAjaWYgRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTgogICB8IHZp
ZXdwb3J0CiAjZW5kaWYKLSNpZiBFTkFCTEVfQ1NTX1NIQURFUlMKLSAgfCBmaWx0ZXIKLSNlbmRp
ZgogICA7CiAKIGJsb2NrX3J1bGU6IGJsb2NrX3ZhbGlkX3J1bGUgfCBpbnZhbGlkX3J1bGUgeyAk
JCA9IG51bGxwdHI7IH0gfCBpbnZhbGlkX2F0IHsgJCQgPSBudWxscHRyOyB9IHwgbmFtZXNwYWNl
IHsgJCQgPSBudWxscHRyOyB9IHwgaW1wb3J0IHwgcmVnaW9uIDsKQEAgLTk2NSwyNCArOTUwLDYg
QEAgcmVnaW9uOgogICAgIH0KIDsKIAotI2lmIEVOQUJMRV9DU1NfU0hBREVSUwotCi1iZWZvcmVf
ZmlsdGVyX3J1bGU6Ci0gICAgLyogZW1wdHkgKi8gewotICAgICAgICBwYXJzZXItPm1hcmtSdWxl
SGVhZGVyU3RhcnQoQ1NTUnVsZVNvdXJjZURhdGE6OkZJTFRFUl9SVUxFKTsKLSAgICAgICAgcGFy
c2VyLT5tX2luRmlsdGVyUnVsZSA9IHRydWU7Ci0gICAgfQotICAgIDsKLQotZmlsdGVyOgotICAg
IGJlZm9yZV9maWx0ZXJfcnVsZSBXRUJLSVRfRklMVEVSX1JVTEVfU1lNIG1heWJlX3NwYWNlIElE
RU5UIGF0X3J1bGVfaGVhZGVyX2VuZF9tYXliZV9zcGFjZSAneycgYXRfcnVsZV9ib2R5X3N0YXJ0
IG1heWJlX3NwYWNlX2JlZm9yZV9kZWNsYXJhdGlvbiBkZWNsYXJhdGlvbl9saXN0IGNsb3Npbmdf
YnJhY2UgewotICAgICAgICBwYXJzZXItPm1faW5GaWx0ZXJSdWxlID0gZmFsc2U7Ci0gICAgICAg
ICQkID0gcGFyc2VyLT5jcmVhdGVGaWx0ZXJSdWxlKCQ0KS5sZWFrUmVmKCk7Ci0gICAgfQotICAg
IDsKLQotI2VuZGlmCi0KIGNvbWJpbmF0b3I6CiAgICAgJysnIG1heWJlX3NwYWNlIHsgJCQgPSBD
U1NTZWxlY3Rvcjo6RGlyZWN0QWRqYWNlbnQ7IH0KICAgfCAnficgbWF5YmVfc3BhY2UgeyAkJCA9
IENTU1NlbGVjdG9yOjpJbmRpcmVjdEFkamFjZW50OyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3Bw
CmluZGV4IDVjMWMwNTQuLjE0ZTA3Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCkBAIC0x
MDEsMTMgKzEwMSw2IEBACiAjaW5jbHVkZSAiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCIKICNlbmRp
ZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIldlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCIKLSNp
bmNsdWRlICJXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NT
U2hhZGVyVmFsdWUuaCIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKERBU0hCT0FSRF9TVVBQT1JUKQog
I2luY2x1ZGUgIkRhc2hib2FyZFJlZ2lvbi5oIgogI2VuZGlmCkBAIC0yNTIsNyArMjQ1LDYgQEAg
Q1NTUGFyc2VyQ29udGV4dDo6Q1NTUGFyc2VyQ29udGV4dChDU1NQYXJzZXJNb2RlIG1vZGUsIGNv
bnN0IFVSTCYgYmFzZVVSTCkKICAgICA6IGJhc2VVUkwoYmFzZVVSTCkKICAgICAsIG1vZGUobW9k
ZSkKICAgICAsIGlzSFRNTERvY3VtZW50KGZhbHNlKQotICAgICwgaXNDU1NDdXN0b21GaWx0ZXJF
bmFibGVkKGZhbHNlKQogICAgICwgaXNDU1NTdGlja3lQb3NpdGlvbkVuYWJsZWQoZmFsc2UpCiAg
ICAgLCBpc0NTU1JlZ2lvbnNFbmFibGVkKGZhbHNlKQogICAgICwgaXNDU1NDb21wb3NpdGluZ0Vu
YWJsZWQoZmFsc2UpCkBAIC0yNzQsNyArMjY2LDYgQEAgQ1NTUGFyc2VyQ29udGV4dDo6Q1NTUGFy
c2VyQ29udGV4dChEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IFVSTCYgYmFzZVVSTCwgY29uc3QK
ICAgICAsIGNoYXJzZXQoY2hhcnNldCkKICAgICAsIG1vZGUoZG9jdW1lbnQuaW5RdWlya3NNb2Rl
KCkgPyBDU1NRdWlya3NNb2RlIDogQ1NTU3RyaWN0TW9kZSkKICAgICAsIGlzSFRNTERvY3VtZW50
KGRvY3VtZW50LmlzSFRNTERvY3VtZW50KCkpCi0gICAgLCBpc0NTU0N1c3RvbUZpbHRlckVuYWJs
ZWQoZG9jdW1lbnQuc2V0dGluZ3MoKSA/IGRvY3VtZW50LnNldHRpbmdzKCktPmlzQ1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZCgpIDogZmFsc2UpCiAgICAgLCBpc0NTU1N0aWNreVBvc2l0aW9uRW5hYmxl
ZChkb2N1bWVudC5jc3NTdGlja3lQb3NpdGlvbkVuYWJsZWQoKSkKICAgICAsIGlzQ1NTUmVnaW9u
c0VuYWJsZWQoZG9jdW1lbnQuY3NzUmVnaW9uc0VuYWJsZWQoKSkKICAgICAsIGlzQ1NTQ29tcG9z
aXRpbmdFbmFibGVkKGRvY3VtZW50LmNzc0NvbXBvc2l0aW5nRW5hYmxlZCgpKQpAQCAtMjk3LDcg
KzI4OCw2IEBAIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBhLCBjb25z
dCBDU1NQYXJzZXJDb250ZXh0JiBiKQogICAgICAgICAmJiBhLmNoYXJzZXQgPT0gYi5jaGFyc2V0
CiAgICAgICAgICYmIGEubW9kZSA9PSBiLm1vZGUKICAgICAgICAgJiYgYS5pc0hUTUxEb2N1bWVu
dCA9PSBiLmlzSFRNTERvY3VtZW50Ci0gICAgICAgICYmIGEuaXNDU1NDdXN0b21GaWx0ZXJFbmFi
bGVkID09IGIuaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkCiAgICAgICAgICYmIGEuaXNDU1NTdGlj
a3lQb3NpdGlvbkVuYWJsZWQgPT0gYi5pc0NTU1N0aWNreVBvc2l0aW9uRW5hYmxlZAogICAgICAg
ICAmJiBhLmlzQ1NTUmVnaW9uc0VuYWJsZWQgPT0gYi5pc0NTU1JlZ2lvbnNFbmFibGVkCiAgICAg
ICAgICYmIGEuaXNDU1NDb21wb3NpdGluZ0VuYWJsZWQgPT0gYi5pc0NTU0NvbXBvc2l0aW5nRW5h
YmxlZApAQCAtMzI0LDkgKzMxNCw2IEBAIENTU1BhcnNlcjo6Q1NTUGFyc2VyKGNvbnN0IENTU1Bh
cnNlckNvbnRleHQmIGNvbnRleHQpCiAgICAgLCBtX2hhZFN5bnRhY3RpY2FsbHlWYWxpZENTU1J1
bGUoZmFsc2UpCiAgICAgLCBtX2xvZ0Vycm9ycyhmYWxzZSkKICAgICAsIG1faWdub3JlRXJyb3Jz
SW5EZWNsYXJhdGlvbihmYWxzZSkKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgLCBtX2lu
RmlsdGVyUnVsZShmYWxzZSkKLSNlbmRpZgogICAgICwgbV9kZWZhdWx0TmFtZXNwYWNlKHN0YXJB
dG9tKQogICAgICwgbV9wYXJzZWRUZXh0UHJlZml4TGVuZ3RoKDApCiAgICAgLCBtX3Byb3BlcnR5
UmFuZ2UoVUlOVF9NQVgsIFVJTlRfTUFYKQpAQCAtMjI5OCwyNSArMjI4NSw4IEBAIGJvb2wgQ1NT
UGFyc2VyOjpwYXJzZVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcElkLCBib29sIGltcG9ydGFudCkK
ICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIENTU1Byb3BlcnR5U3JjOiAvLyBPbmx5IHVzZWQg
d2l0aGluIEBmb250LWZhY2UgYW5kIEAtd2Via2l0LWZpbHRlciwgc28gY2Fubm90IHVzZSBpbmhl
cml0IHwgaW5pdGlhbCBvciBiZSAhaW1wb3J0YW50LiBUaGlzIGlzIGEgbGlzdCBvZiB1cmxzIG9y
IGxvY2FsIHJlZmVyZW5jZXMuCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBpZiAo
bV9pbkZpbHRlclJ1bGUpCi0gICAgICAgICAgICByZXR1cm4gcGFyc2VGaWx0ZXJSdWxlU3JjKCk7
Ci0jZW5kaWYKICAgICAgICAgcmV0dXJuIHBhcnNlRm9udEZhY2VTcmMoKTsKIAotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBjYXNlIENTU1Byb3BlcnR5TWl4OgotICAgICAgICAvLyBUaGUg
bWl4IHByb3BlcnR5IGlzIGp1c3Qgc3VwcG9ydGVkIGluc2lkZSBvZiBhbiBAZmlsdGVyIHJ1bGUu
Ci0gICAgICAgIGlmICghbV9pbkZpbHRlclJ1bGUpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgICAgIHJldHVybiBwYXJzZUZpbHRlclJ1bGVNaXgoKTsKLSAgICBjYXNlIENTU1Byb3Bl
cnR5UGFyYW1ldGVyczoKLSAgICAgICAgLy8gVGhlIHBhcmFtZXRlcnMgcHJvcGVydHkgaXMganVz
dCBzdXBwb3J0ZWQgaW5zaWRlIG9mIGFuIEBmaWx0ZXIgcnVsZS4KLSAgICAgICAgaWYgKCFtX2lu
RmlsdGVyUnVsZSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgcmV0dXJuIHBh
cnNlRmlsdGVyUnVsZVBhcmFtZXRlcnMoKTsKLSNlbmRpZgotCiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVVuaWNvZGVSYW5nZToKICAgICAgICAgcmV0dXJuIHBhcnNlRm9udEZhY2VVbmljb2RlUmFuZ2Uo
KTsKIApAQCAtMjkwMCwxMCArMjg3MCw2IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZhbHVlKENT
U1Byb3BlcnR5SUQgcHJvcElkLCBib29sIGltcG9ydGFudCkKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogICAgIGNhc2UgQ1NTUHJvcGVydHlQYWdlOgogICAgICAgICByZXR1cm4gcGFyc2VQYWdlKHBy
b3BJZCwgaW1wb3J0YW50KTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBDU1NQ
cm9wZXJ0eUdlb21ldHJ5OgotICAgICAgICByZXR1cm4gbV9pbkZpbHRlclJ1bGUgPyBwYXJzZUdl
b21ldHJ5KHByb3BJZCwgdmFsdWUsIGltcG9ydGFudCkgOiBmYWxzZTsKLSNlbmRpZgogICAgIGNh
c2UgQ1NTUHJvcGVydHlGb250U3RyZXRjaDoKICAgICBjYXNlIENTU1Byb3BlcnR5VGV4dExpbmVU
aHJvdWdoOgogICAgIGNhc2UgQ1NTUHJvcGVydHlUZXh0T3ZlcmxpbmU6CkBAIC05MTE1LDU4OSAr
OTA4MSw4IEBAIHN0YXRpYyB2b2lkIGZpbHRlckluZm9Gb3JOYW1lKGNvbnN0IENTU1BhcnNlclN0
cmluZyYgbmFtZSwgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6CiAgICAgICAgIGZpbHRlclR5cGUgPSBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6RHJvcFNoYWRvd0ZpbHRlck9wZXJhdGlvbjsKICAgICAgICAg
bWF4aW11bUFyZ3VtZW50Q291bnQgPSA0OyAgLy8geC1vZmZzZXQsIHktb2Zmc2V0LCBibHVyLXJh
ZGl1cywgY29sb3IgLS0gc3ByZWFkIGFuZCBpbnNldCBzdHlsZSBub3QgYWxsb3dlZC4KICAgICB9
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNl
KG5hbWUsICJjdXN0b20oIikpCi0gICAgICAgIGZpbHRlclR5cGUgPSBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZTo6Q3VzdG9tRmlsdGVyT3BlcmF0aW9uOwotI2VuZGlmCi19Ci0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi1zdGF0aWMgYm9vbCBhY2NlcHRDb21tYU9wZXJhdG9yKENTU1BhcnNlclZhbHVl
TGlzdCogYXJnc0xpc3QpCi17Ci0gICAgaWYgKENTU1BhcnNlclZhbHVlKiBhcmcgPSBhcmdzTGlz
dC0+Y3VycmVudCgpKSB7Ci0gICAgICAgIGlmICghaXNDb21tYShhcmcpKQotICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgICAgICBhcmdzTGlzdC0+bmV4dCgpOwotICAgIH0KLSAgICByZXR1
cm4gdHJ1ZTsKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+IENT
U1BhcnNlcjo6cGFyc2VDdXN0b21GaWx0ZXJBcnJheUZ1bmN0aW9uKENTU1BhcnNlclZhbHVlKiB2
YWx1ZSkKLXsKLSAgICBBU1NFUlQodmFsdWUtPnVuaXQgPT0gQ1NTUGFyc2VyVmFsdWU6OkZ1bmN0
aW9uICYmIHZhbHVlLT5mdW5jdGlvbik7Ci0KLSAgICBpZiAoIWVxdWFsSWdub3JpbmdDYXNlKHZh
bHVlLT5mdW5jdGlvbi0+bmFtZSwgImFycmF5KCIpKQotICAgICAgICByZXR1cm4gMDsKLQotICAg
IENTU1BhcnNlclZhbHVlTGlzdCogYXJyYXlBcmdzUGFyc2VyVmFsdWVMaXN0ID0gdmFsdWUtPmZ1
bmN0aW9uLT5hcmdzLmdldCgpOwotICAgIGlmICghYXJyYXlBcmdzUGFyc2VyVmFsdWVMaXN0IHx8
ICFhcnJheUFyZ3NQYXJzZXJWYWx1ZUxpc3QtPnNpemUoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0K
LSAgICAvLyBhcnJheSgpIHZhbHVlcyBhcmUgY29tbWEgc2VwYXJhdGVkLgotICAgIFJlZlB0cjxX
ZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+IGFycmF5RnVuY3Rpb24gPSBXZWJLaXRDU1NBcnJh
eUZ1bmN0aW9uVmFsdWU6OmNyZWF0ZSgpOwotICAgIHdoaWxlICh0cnVlKSB7Ci0gICAgICAgIC8v
IFdlIHBhcnNlIHBhaXJzIDxWYWx1ZSwgQ29tbWE+IGF0IGVhY2ggc3RlcC4KLSAgICAgICAgQ1NT
UGFyc2VyVmFsdWUqIGN1cnJlbnRQYXJzZXJWYWx1ZSA9IGFycmF5QXJnc1BhcnNlclZhbHVlTGlz
dC0+Y3VycmVudCgpOwotICAgICAgICBpZiAoIWN1cnJlbnRQYXJzZXJWYWx1ZSB8fCAhdmFsaWRV
bml0KGN1cnJlbnRQYXJzZXJWYWx1ZSwgRk51bWJlciwgQ1NTU3RyaWN0TW9kZSkpCi0gICAgICAg
ICAgICByZXR1cm4gMDsKLQotICAgICAgICBSZWZQdHI8Q1NTVmFsdWU+IGFycmF5VmFsdWUgPSBj
c3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShjdXJyZW50UGFyc2VyVmFsdWUtPmZWYWx1ZSwgQ1NT
UHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpOwotICAgICAgICBhcnJheUZ1bmN0aW9uLT5hcHBl
bmQoYXJyYXlWYWx1ZS5yZWxlYXNlKCkpOwotCi0gICAgICAgIENTU1BhcnNlclZhbHVlKiBuZXh0
UGFyc2VyVmFsdWUgPSBhcnJheUFyZ3NQYXJzZXJWYWx1ZUxpc3QtPm5leHQoKTsKLSAgICAgICAg
aWYgKCFuZXh0UGFyc2VyVmFsdWUpCi0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICBpZiAo
IWlzQ29tbWEobmV4dFBhcnNlclZhbHVlKSkKLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAg
ICAgIGFycmF5QXJnc1BhcnNlclZhbHVlTGlzdC0+bmV4dCgpOwotICAgIH0KLQotICAgIHJldHVy
biBhcnJheUZ1bmN0aW9uOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWU+IENTU1BhcnNlcjo6cGFyc2VNYXRWYWx1ZShDU1NQYXJzZXJWYWx1ZSogdmFsdWUpCi17Ci0g
ICAgaWYgKHZhbHVlLT51bml0ICE9IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiB8fCAhdmFsdWUt
PmZ1bmN0aW9uKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIHVuc2lnbmVkIG51bWJlck9mVmFs
dWVzID0gMDsKLSAgICBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UodmFsdWUtPmZ1bmN0aW9uLT5uYW1l
LCAibWF0MigiKSkKLSAgICAgICAgbnVtYmVyT2ZWYWx1ZXMgPSA0OwotICAgIGVsc2UgaWYgKGVx
dWFsSWdub3JpbmdDYXNlKHZhbHVlLT5mdW5jdGlvbi0+bmFtZSwgIm1hdDMoIikpCi0gICAgICAg
IG51bWJlck9mVmFsdWVzID0gOTsKLSAgICBlbHNlIGlmIChlcXVhbElnbm9yaW5nQ2FzZSh2YWx1
ZS0+ZnVuY3Rpb24tPm5hbWUsICJtYXQ0KCIpKQotICAgICAgICBudW1iZXJPZlZhbHVlcyA9IDE2
OwotICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBDU1NQYXJzZXJWYWx1ZUxpc3Qq
IGFyZ3MgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0gICAgaWYgKCFhcmdzIHx8IGFy
Z3MtPnNpemUoKSAhPSAobnVtYmVyT2ZWYWx1ZXMgKiAyIC0gMSkpCi0gICAgICAgIHJldHVybiAw
OwotCi0gICAgUmVmUHRyPFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU+IG1hdFZhbHVlTGlzdCA9
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU6OmNyZWF0ZSgpOwotICAgIENTU1BhcnNlclZhbHVl
KiBhcmcgPSBhcmdzLT5jdXJyZW50KCk7Ci0gICAgd2hpbGUgKGFyZykgewotICAgICAgICBpZiAo
IXZhbGlkVW5pdChhcmcsIEZOdW1iZXIsIENTU1N0cmljdE1vZGUpKQotICAgICAgICAgICAgcmV0
dXJuIDA7Ci0gICAgICAgIG1hdFZhbHVlTGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0
ZVZhbHVlKGFyZy0+ZlZhbHVlLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwotICAg
ICAgICBhcmcgPSBhcmdzLT5uZXh0KCk7Ci0KLSAgICAgICAgaWYgKCFhcmcpCi0gICAgICAgICAg
ICBicmVhazsKLQotICAgICAgICBpZiAoIWlzQ29tbWEoYXJnKSkKLSAgICAgICAgICAgIHJldHVy
biAwOwotCi0gICAgICAgIGFyZyA9IGFyZ3MtPm5leHQoKTsKLSAgICB9Ci0KLSAgICBpZiAoIW1h
dFZhbHVlTGlzdCB8fCBtYXRWYWx1ZUxpc3QtPmxlbmd0aCgpICE9IG51bWJlck9mVmFsdWVzKQot
ICAgICAgICByZXR1cm4gMDsKLQotICAgIHJldHVybiBtYXRWYWx1ZUxpc3QucmVsZWFzZSgpOwot
fQotCi1QYXNzUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU+IENTU1BhcnNlcjo6cGFy
c2VNaXhGdW5jdGlvbihDU1NQYXJzZXJWYWx1ZSogdmFsdWUpCi17Ci0gICAgQVNTRVJUKHZhbHVl
LT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiAmJiB2YWx1ZS0+ZnVuY3Rpb24pOwot
Ci0gICAgaWYgKCFlcXVhbElnbm9yaW5nQ2FzZSh2YWx1ZS0+ZnVuY3Rpb24tPm5hbWUsICJtaXgo
IikpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzTGlz
dCA9IHZhbHVlLT5mdW5jdGlvbi0+YXJncy5nZXQoKTsKLSAgICBpZiAoIWFyZ3NMaXN0KQotICAg
ICAgICByZXR1cm4gMDsKLQotICAgIHVuc2lnbmVkIG51bUFyZ3MgPSBhcmdzTGlzdC0+c2l6ZSgp
OwotICAgIGlmIChudW1BcmdzIDwgMSB8fCBudW1BcmdzID4gMykKLSAgICAgICAgcmV0dXJuIDA7
Ci0gICAgCi0gICAgUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU+IG1peEZ1bmN0aW9u
ID0gV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZTo6Y3JlYXRlKCk7Ci0KLSAgICBib29sIGhhc0Js
ZW5kTW9kZSA9IGZhbHNlOwotICAgIGJvb2wgaGFzQWxwaGFDb21wb3NpdGluZyA9IGZhbHNlOwot
Ci0gICAgZm9yIChDU1NQYXJzZXJWYWx1ZSogYXJnID0gYXJnc0xpc3QtPmN1cnJlbnQoKTsgYXJn
OyBhcmcgPSBhcmdzTGlzdC0+bmV4dCgpKSB7Ci0gICAgICAgIFJlZlB0cjxDU1NWYWx1ZT4gdmFs
dWU7Ci0KLSAgICAgICAgdW5zaWduZWQgYXJnTnVtYmVyID0gYXJnc0xpc3QtPmN1cnJlbnRJbmRl
eCgpOwotICAgICAgICBpZiAoIWFyZ051bWJlcikgewotICAgICAgICAgICAgaWYgKGFyZy0+dW5p
dCA9PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1VSSSkgewotICAgICAgICAgICAgICAgIFVSTCBz
aGFkZXJVUkwgPSBjb21wbGV0ZVVSTChhcmctPnN0cmluZyk7Ci0gICAgICAgICAgICAgICAgdmFs
dWUgPSBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y3JlYXRlKHNoYWRlclVSTC5zdHJpbmcoKSk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSBpZiAoYXJnTnVtYmVyID09IDEgfHwgYXJnTnVt
YmVyID09IDIpIHsKLSAgICAgICAgICAgIGlmICghaGFzQmxlbmRNb2RlICYmIGlzQmxlbmRNb2Rl
KGFyZy0+aWQpKSB7Ci0gICAgICAgICAgICAgICAgaGFzQmxlbmRNb2RlID0gdHJ1ZTsKLSAgICAg
ICAgICAgICAgICB2YWx1ZSA9IGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShh
cmctPmlkKTsKLSAgICAgICAgICAgIH0gZWxzZSBpZiAoIWhhc0FscGhhQ29tcG9zaXRpbmcgJiYg
aXNDb21wb3NpdGVPcGVyYXRvcihhcmctPmlkKSkgewotICAgICAgICAgICAgICAgIGhhc0FscGhh
Q29tcG9zaXRpbmcgPSB0cnVlOwotICAgICAgICAgICAgICAgIHZhbHVlID0gY3NzVmFsdWVQb29s
KCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKGFyZy0+aWQpOwotICAgICAgICAgICAgfQotICAgICAg
ICB9Ci0KLSAgICAgICAgaWYgKCF2YWx1ZSkKLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAg
ICAgIG1peEZ1bmN0aW9uLT5hcHBlbmQodmFsdWUucmVsZWFzZSgpKTsKLSAgICB9Ci0KLSAgICBy
ZXR1cm4gbWl4RnVuY3Rpb247CiB9CiAKLVBhc3NSZWZQdHI8Q1NTVmFsdWVMaXN0PiBDU1NQYXJz
ZXI6OnBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhDU1NQYXJzZXJWYWx1ZUxpc3QqIGFyZ3NM
aXN0KQotewotICAgIC8vCi0gICAgLy8gcGFyYW1zOiAgICAgIFs8cGFyYW0tZGVmPlssPHBhcmFt
LWRlZj4qXV0KLSAgICAvLyBwYXJhbS1kZWY6ICAgPHBhcmFtLW5hbWU+d3NwPHBhcmFtLXZhbHVl
PgotICAgIC8vIHBhcmFtLW5hbWU6ICA8aWRlbnQ+Ci0gICAgLy8gcGFyYW0tdmFsdWU6IHRydWV8
ZmFsc2Vbd3NwK3RydWV8ZmFsc2VdezAtM30gfAotICAgIC8vICAgICAgICAgICAgICA8bnVtYmVy
Plt3c3ArPG51bWJlcj5dezAtM30gfAotICAgIC8vICAgICAgICAgICAgICA8YXJyYXk+IHwKLSAg
ICAvLyAgICAgICAgICAgICAgPHRyYW5zZm9ybT4gfAotICAgIC8vICAgICAgICAgICAgICA8dGV4
dHVyZSg8dXJpPik+Ci0gICAgLy8gYXJyYXk6ICdhcnJheSgnPG51bWJlcj5bd3NwPG51bWJlcj5d
KicpJwotICAgIC8vIGNzcy0zZC10cmFuc2Zvcm06IDx0cmFuc2Zvcm0tZnVuY3Rpb24+O1s8dHJh
bnNmb3JtLWZ1bmN0aW9uPl0qCi0gICAgLy8gdHJhbnNmb3JtOiAgIDxjc3MtM2QtdHJhbnNmb3Jt
PiB8IDxtYXQ+Ci0gICAgLy8gbWF0OiAgICAgICAgICdtYXQyKCc8bnVtYmVyPigsPG51bWJlcj4p
ezN9JyknIHwgCi0gICAgLy8gICAgICAgICAgICAgICdtYXQzKCc8bnVtYmVyPigsPG51bWJlcj4p
ezh9JyknIHwgCi0gICAgLy8gICAgICAgICAgICAgICdtYXQ0KCc8bnVtYmVyPigsPG51bWJlcj4p
ezE1fScpJyApCi0gICAgLy8KLQotICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcmFtTGlzdCA9
IENTU1ZhbHVlTGlzdDo6Y3JlYXRlQ29tbWFTZXBhcmF0ZWQoKTsKLQotICAgIHdoaWxlIChDU1NQ
YXJzZXJWYWx1ZSogYXJnID0gYXJnc0xpc3QtPmN1cnJlbnQoKSkgewotICAgICAgICBpZiAoYXJn
LT51bml0ICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfSURFTlQpCi0gICAgICAgICAgICByZXR1
cm4gMDsKLQotICAgICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJhbWV0ZXIgPSBDU1NWYWx1
ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgICAgIHBhcmFtZXRlci0+YXBwZW5k
KGNyZWF0ZVByaW1pdGl2ZVN0cmluZ1ZhbHVlKGFyZykpOwotCi0gICAgICAgIGFyZyA9IGFyZ3NM
aXN0LT5uZXh0KCk7Ci0gICAgICAgIGlmICghYXJnKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0K
LSAgICAgICAgUmVmUHRyPENTU1ZhbHVlPiBwYXJhbWV0ZXJWYWx1ZTsKLQotICAgICAgICBpZiAo
YXJnLT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiAmJiBhcmctPmZ1bmN0aW9uKSB7
Ci0gICAgICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHBhcnNpbmcgZm9yIHRoZSBvdGhlciBw
YXJhbWV0ZXIgdHlwZXMuCi0gICAgICAgICAgICAvLyB0ZXh0dXJlczogaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDQyCi0gICAgICAgICAgICBpZiAoZXF1YWxJZ25v
cmluZ0Nhc2UoYXJnLT5mdW5jdGlvbi0+bmFtZSwgImFycmF5KCIpKSB7Ci0gICAgICAgICAgICAg
ICAgcGFyYW1ldGVyVmFsdWUgPSBwYXJzZUN1c3RvbUZpbHRlckFycmF5RnVuY3Rpb24oYXJnKTsK
LSAgICAgICAgICAgICAgICAvLyBUaGlzIHBhcnNpbmcgc3RlcCBvbmx5IGNvbnN1bWVzIGZ1bmN0
aW9uIGFyZ3VtZW50cywKLSAgICAgICAgICAgICAgICAvLyBhcmdzTGlzdCBpcyB0aGVyZWZvcmUg
bW92ZWQgZm9yd2FyZCBleHBsaWNpdGVseS4KLSAgICAgICAgICAgICAgICBhcmdzTGlzdC0+bmV4
dCgpOwotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAvLyBQYXJzZSBtYXQy
LCBtYXQzIGFuZCBtYXQ0IGZ1bmN0aW9ucy4KLSAgICAgICAgICAgICAgICBwYXJhbWV0ZXJWYWx1
ZSA9IHBhcnNlTWF0VmFsdWUoYXJnKTsKLSAgICAgICAgICAgICAgICBpZiAoIXBhcmFtZXRlclZh
bHVlICYmIGFyZykKLSAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyVmFsdWUgPSBwYXJzZUN1
c3RvbUZpbHRlclRyYW5zZm9ybShhcmdzTGlzdCk7Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAo
cGFyYW1ldGVyVmFsdWUpCi0gICAgICAgICAgICAgICAgICAgIGFyZ3NMaXN0LT5uZXh0KCk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSBpZiAodmFsaWRVbml0KGFyZywgRk51bWJlciwg
Q1NTU3RyaWN0TW9kZSkpIHsKLSAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcmFt
VmFsdWVMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOwotICAgICAg
ICAgICAgd2hpbGUgKGFyZykgewotICAgICAgICAgICAgICAgIC8vIElmIHdlIGhpdCBhIGNvbW1h
LCBpdCBtZWFucyB0aGF0IHdlIGZpbmlzaGVkIHRoaXMgcGFyYW1ldGVyJ3MgdmFsdWVzLgotICAg
ICAgICAgICAgICAgIGlmIChpc0NvbW1hKGFyZykpCi0gICAgICAgICAgICAgICAgICAgIGJyZWFr
OwotICAgICAgICAgICAgICAgIGlmICghdmFsaWRVbml0KGFyZywgRk51bWJlciwgQ1NTU3RyaWN0
TW9kZSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgICAgIHBh
cmFtVmFsdWVMaXN0LT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoYXJnLT5mVmFs
dWUsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKSk7Ci0gICAgICAgICAgICAgICAgYXJn
ID0gYXJnc0xpc3QtPm5leHQoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmICghcGFy
YW1WYWx1ZUxpc3QtPmxlbmd0aCgpIHx8IHBhcmFtVmFsdWVMaXN0LT5sZW5ndGgoKSA+IDQpCi0g
ICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICAgICBwYXJhbWV0ZXJWYWx1ZSA9IHBh
cmFtVmFsdWVMaXN0LnJlbGVhc2UoKTsKLSAgICAgICAgfQotICAgICAgICBpZiAoIXBhcmFtZXRl
clZhbHVlICYmIGFyZykgewotICAgICAgICAgICAgLy8gQWxsIHBhcmFtZXRlciB2YWx1ZXMgbmVl
ZCB0byBiZSBDU1NWYWx1ZUxpc3RzLgotICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4g
cGFyYW1WYWx1ZUxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0g
ICAgICAgICAgICBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbG9yVmFsdWUgPSBwYXJzZUNv
bG9yKGFyZyk7Ci0gICAgICAgICAgICBpZiAoIWNvbG9yVmFsdWUpCi0gICAgICAgICAgICAgICAg
cmV0dXJuIDA7Ci0gICAgICAgICAgICBwYXJhbVZhbHVlTGlzdC0+YXBwZW5kKGNvbG9yVmFsdWUu
cmVsZWFzZSgpKTsKLSAgICAgICAgICAgIHBhcmFtZXRlclZhbHVlID0gcGFyYW1WYWx1ZUxpc3Qu
cmVsZWFzZSgpOwotICAgICAgICAgICAgYXJnID0gYXJnc0xpc3QtPm5leHQoKTsKLSAgICAgICAg
fQotCi0gICAgICAgIGlmICghcGFyYW1ldGVyVmFsdWUgfHwgIWFjY2VwdENvbW1hT3BlcmF0b3Io
YXJnc0xpc3QpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgcGFyYW1ldGVyLT5h
cHBlbmQocGFyYW1ldGVyVmFsdWUucmVsZWFzZSgpKTsKLSAgICAgICAgcGFyYW1MaXN0LT5hcHBl
bmQocGFyYW1ldGVyLnJlbGVhc2UoKSk7Ci0gICAgfQotCi0gICAgcmV0dXJuIHBhcmFtTGlzdDsg
ICAKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gQ1NTUGFyc2VyOjpwYXJz
ZUN1c3RvbUZpbHRlckZ1bmN0aW9uV2l0aEF0UnVsZVJlZmVyZW5jZVN5bnRheChDU1NQYXJzZXJW
YWx1ZSogdmFsdWUpCi17Ci0gICAgLy8KLSAgICAvLyBDdXN0b20gZmlsdGVyIGZ1bmN0aW9uICJh
dC1ydWxlIHJlZmVyZW5jZSIgc3ludGF4OgotICAgIC8vCi0gICAgLy8gY3VzdG9tKDxmaWx0ZXIt
bmFtZT53c3BbLHdzcDxwYXJhbXM+XSkKLSAgICAvLwotICAgIC8vIGZpbHRlci1uYW1lOiA8Zmls
dGVyLW5hbWU+Ci0gICAgLy8gcGFyYW1zOiBTZWUgdGhlIGNvbW1lbnQgaW4gQ1NTUGFyc2VyOjpw
YXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcnMuCi0gICAgLy8KLQotICAgIEFTU0VSVCh2YWx1ZS0+
ZnVuY3Rpb24pOwotCi0gICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzTGlzdCA9IHZhbHVlLT5m
dW5jdGlvbi0+YXJncy5nZXQoKTsKLSAgICBpZiAoIWFyZ3NMaXN0IHx8ICFhcmdzTGlzdC0+c2l6
ZSgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIC8vIDEuIFBhcnNlIHRoZSBmaWx0ZXIgbmFt
ZS4KLSAgICBDU1NQYXJzZXJWYWx1ZSogYXJnID0gYXJnc0xpc3QtPmN1cnJlbnQoKTsKLSAgICBp
ZiAoYXJnLT51bml0ICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfSURFTlQpCi0gICAgICAgIHJl
dHVybiAwOwotCi0gICAgUmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBmaWx0ZXJWYWx1ZSA9
IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkN1c3Rv
bUZpbHRlck9wZXJhdGlvbik7Ci0KLSAgICBSZWZQdHI8Q1NTVmFsdWU+IGZpbHRlck5hbWUgPSBj
cmVhdGVQcmltaXRpdmVTdHJpbmdWYWx1ZShhcmcpOwotICAgIGZpbHRlclZhbHVlLT5hcHBlbmQo
ZmlsdGVyTmFtZSk7Ci0gICAgYXJnc0xpc3QtPm5leHQoKTsKLQotICAgIGlmICghYWNjZXB0Q29t
bWFPcGVyYXRvcihhcmdzTGlzdCkpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgLy8gMi4gUGFy
c2UgdGhlIHBhcmFtZXRlcnMuCi0gICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyYW1MaXN0ID0g
cGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzKGFyZ3NMaXN0KTsKLSAgICBpZiAoIXBhcmFtTGlz
dCkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBpZiAocGFyYW1MaXN0LT5sZW5ndGgoKSkKLSAg
ICAgICAgZmlsdGVyVmFsdWUtPmFwcGVuZChwYXJhbUxpc3QucmVsZWFzZSgpKTsKLQotICAgIHJl
dHVybiBmaWx0ZXJWYWx1ZTsKLX0KLQotLy8gRklYTUU6IFRoZSBjdXN0b20gZmlsdGVycyAiaW5s
aW5lIiBzeW50YXggaXMgZGVwcmVjYXRlZC4gV2Ugd2lsbCByZW1vdmUgaXQgZXZlbnR1YWxseS4K
LVBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+IENTU1BhcnNlcjo6cGFyc2VDdXN0b21G
aWx0ZXJGdW5jdGlvbldpdGhJbmxpbmVTeW50YXgoQ1NTUGFyc2VyVmFsdWUqIHZhbHVlKQotewot
ICAgIC8vCi0gICAgLy8gQ3VzdG9tIGZpbHRlciBmdW5jdGlvbiAiaW5saW5lIiBzeW50YXg6Ci0g
ICAgLy8KLSAgICAvLyBjdXN0b20oPHZlcnRleC1zaGFkZXI+W3dzcDxmcmFnbWVudC1zaGFkZXI+
XVssPHZlcnRleC1tZXNoPl1bLDxwYXJhbXM+XSkKLSAgICAvLwotICAgIC8vIHZlcnRleFNoYWRl
cjogICAgPHVyaT4gfCBub25lCi0gICAgLy8gZnJhZ21lbnRTaGFkZXI6ICA8dXJpPiB8IG5vbmUg
fCBtaXgoPHVyaT4gWyA8YmxlbmQtbW9kZT4gfHwgPGFscGhhLWNvbXBvc2l0aW5nPiBdPykKLSAg
ICAvLwotICAgIC8vIGJsZW5kLW1vZGU6IG5vcm1hbCB8IG11bHRpcGx5IHwgc2NyZWVuIHwgb3Zl
cmxheSB8IGRhcmtlbiB8IGxpZ2h0ZW4gfCBjb2xvci1kb2RnZSB8Ci0gICAgLy8gICAgICAgICAg
ICAgY29sb3ItYnVybiB8IGhhcmQtbGlnaHQgfCBzb2Z0LWxpZ2h0IHwgZGlmZmVyZW5jZSB8IGV4
Y2x1c2lvbiB8IGh1ZSB8Ci0gICAgLy8gICAgICAgICAgICAgc2F0dXJhdGlvbiB8IGNvbG9yIHwg
bHVtaW5vc2l0eQotICAgIC8vIGFscGhhLWNvbXBvc2l0aW5nOiBjbGVhciB8IHNyYyB8IGRzdCB8
IHNyYy1vdmVyIHwgZHN0LW92ZXIgfCBzcmMtaW4gfCBkc3QtaW4gfAotICAgIC8vICAgICAgICAg
ICAgICAgICAgICBzcmMtb3V0IHwgZHN0LW91dCB8IHNyYy1hdG9wIHwgZHN0LWF0b3AgfCB4b3Ig
fCBwbHVzCi0gICAgLy8KLSAgICAvLyB2ZXJ0ZXhNZXNoOiAgKzxpbnRlZ2VyPnsxLDJ9W3dzcDxi
b3g+XVt3c3AnZGV0YWNoZWQnXQotICAgIC8vIGJveDogZmlsdGVyLWJveCB8IGJvcmRlci1ib3gg
fCBwYWRkaW5nLWJveCB8IGNvbnRlbnQtYm94Ci0gICAgLy8KLSAgICAvLyBwYXJhbXM6IFNlZSB0
aGUgY29tbWVudCBpbiBDU1NQYXJzZXI6OnBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycy4KLSAg
ICAvLwotCi0gICAgQVNTRVJUKHZhbHVlLT5mdW5jdGlvbik7Ci0KLSAgICBDU1NQYXJzZXJWYWx1
ZUxpc3QqIGFyZ3NMaXN0ID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdldCgpOwotICAgIGlmICgh
YXJnc0xpc3QpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgUmVmUHRyPFdlYktpdENTU0ZpbHRl
clZhbHVlPiBmaWx0ZXJWYWx1ZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoV2ViS2l0
Q1NTRmlsdGVyVmFsdWU6OkN1c3RvbUZpbHRlck9wZXJhdGlvbik7Ci0KLSAgICAvLyAxLiBQYXJz
ZSB0aGUgc2hhZGVyIFVSTHM6IDx2ZXJ0ZXgtc2hhZGVyPlt3c3A8ZnJhZ21lbnQtc2hhZGVyPl0K
LSAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBzaGFkZXJzTGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3Jl
YXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAgICBib29sIGhhZEF0TGVhc3RPbmVDdXN0b21TaGFkZXIg
PSBmYWxzZTsKLSAgICBDU1NQYXJzZXJWYWx1ZSogYXJnOwotICAgIGZvciAoYXJnID0gYXJnc0xp
c3QtPmN1cnJlbnQoKTsgYXJnOyBhcmcgPSBhcmdzTGlzdC0+bmV4dCgpKSB7Ci0gICAgICAgIFJl
ZlB0cjxDU1NWYWx1ZT4gdmFsdWU7Ci0gICAgICAgIGlmIChhcmctPmlkID09IENTU1ZhbHVlTm9u
ZSkKLSAgICAgICAgICAgIHZhbHVlID0gY3NzVmFsdWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZh
bHVlKENTU1ZhbHVlTm9uZSk7Ci0gICAgICAgIGVsc2UgaWYgKGFyZy0+dW5pdCA9PSBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTX1VSSSkgewotICAgICAgICAgICAgVVJMIHNoYWRlclVSTCA9IGNvbXBs
ZXRlVVJMKGFyZy0+c3RyaW5nKTsKLSAgICAgICAgICAgIHZhbHVlID0gV2ViS2l0Q1NTU2hhZGVy
VmFsdWU6OmNyZWF0ZShzaGFkZXJVUkwuc3RyaW5nKCkpOwotICAgICAgICAgICAgaGFkQXRMZWFz
dE9uZUN1c3RvbVNoYWRlciA9IHRydWU7Ci0gICAgICAgIH0gZWxzZSBpZiAoYXJnc0xpc3QtPmN1
cnJlbnRJbmRleCgpID09IDEgJiYgYXJnLT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlv
bikgewotICAgICAgICAgICAgaWYgKCEodmFsdWUgPSBwYXJzZU1peEZ1bmN0aW9uKGFyZykpKQot
ICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgaGFkQXRMZWFzdE9uZUN1c3Rv
bVNoYWRlciA9IHRydWU7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoIXZhbHVlKQotICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgIHNoYWRlcnNMaXN0LT5hcHBlbmQodmFsdWUucmVsZWFzZSgp
KTsKLSAgICB9Ci0KLSAgICBpZiAoIXNoYWRlcnNMaXN0LT5sZW5ndGgoKSB8fCAhaGFkQXRMZWFz
dE9uZUN1c3RvbVNoYWRlciB8fCBzaGFkZXJzTGlzdC0+bGVuZ3RoKCkgPiAyIHx8ICFhY2NlcHRD
b21tYU9wZXJhdG9yKGFyZ3NMaXN0KSkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIAotICAg
IGZpbHRlclZhbHVlLT5hcHBlbmQoc2hhZGVyc0xpc3QucmVsZWFzZSgpKTsKLSAgICAKLSAgICAv
LyAyLiBQYXJzZSB0aGUgbWVzaCBzaXplIDx2ZXJ0ZXgtbWVzaD4KLSAgICBSZWZQdHI8Q1NTVmFs
dWVMaXN0PiBtZXNoU2l6ZUxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVk
KCk7Ci0gICAgCi0gICAgZm9yIChhcmcgPSBhcmdzTGlzdC0+Y3VycmVudCgpOyBhcmc7IGFyZyA9
IGFyZ3NMaXN0LT5uZXh0KCkpIHsKLSAgICAgICAgaWYgKCF2YWxpZFVuaXQoYXJnLCBGSW50ZWdl
ciB8IEZOb25OZWcsIENTU1N0cmljdE1vZGUpKQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAg
IGludCBpbnRlZ2VyVmFsdWUgPSBjbGFtcFRvSW50ZWdlcihhcmctPmZWYWx1ZSk7Ci0gICAgICAg
IC8vIEFjY29yZGluZyB0byB0aGUgc3BlY2lmaWNhdGlvbiB3ZSBjYW4gb25seSBhY2NlcHQgcG9z
aXRpdmUgbm9uLXplcm8gdmFsdWVzLgotICAgICAgICBpZiAoaW50ZWdlclZhbHVlIDwgMSkKLSAg
ICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBtZXNoU2l6ZUxpc3QtPmFwcGVuZChjc3NWYWx1
ZVBvb2woKS5jcmVhdGVWYWx1ZShpbnRlZ2VyVmFsdWUsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1Nf
TlVNQkVSKSk7Ci0gICAgfQotICAgIAotICAgIGlmIChtZXNoU2l6ZUxpc3QtPmxlbmd0aCgpID4g
MikKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgCi0gICAgLy8gRklYTUU6IEZvciBsZWdhY3kgY29u
dGVudCwgd2UgYWNjZXB0IHRoZSBtZXNoIGJveCB0eXBlcy4gV2UgZG9uJ3QgZG8gYW55dGhpbmcg
ZWxzZSB3aXRoIHRoZW0uCi0gICAgLy8gRXZlbnR1YWxseSwgd2UnbGwgcmVtb3ZlIHRoZW0gY29t
cGxldGVseS4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTAzNzc4Ci0gICAgaWYgKChhcmcgPSBhcmdzTGlzdC0+Y3VycmVudCgpKSAmJiAoYXJnLT5pZCA9
PSBDU1NWYWx1ZUJvcmRlckJveCB8fCBhcmctPmlkID09IENTU1ZhbHVlUGFkZGluZ0JveAotICAg
ICAgICB8fCBhcmctPmlkID09IENTU1ZhbHVlQ29udGVudEJveCB8fCBhcmctPmlkID09IENTU1Zh
bHVlRmlsdGVyQm94KSkKLSAgICAgICAgYXJnc0xpc3QtPm5leHQoKTsKLSAgICAKLSAgICBpZiAo
KGFyZyA9IGFyZ3NMaXN0LT5jdXJyZW50KCkpICYmIGFyZy0+aWQgPT0gQ1NTVmFsdWVEZXRhY2hl
ZCkgewotICAgICAgICBtZXNoU2l6ZUxpc3QtPmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVJ
ZGVudGlmaWVyVmFsdWUoYXJnLT5pZCkpOwotICAgICAgICBhcmdzTGlzdC0+bmV4dCgpOwotICAg
IH0KLSAgICAKLSAgICBpZiAobWVzaFNpemVMaXN0LT5sZW5ndGgoKSkgewotICAgICAgICBpZiAo
IWFjY2VwdENvbW1hT3BlcmF0b3IoYXJnc0xpc3QpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0g
ICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQobWVzaFNpemVMaXN0LnJlbGVhc2UoKSk7Ci0gICAg
fQotICAgIAotICAgIC8vIDMuIFBhcnNlIHRoZSBwYXJhbWV0ZXJzLgotICAgIFJlZlB0cjxDU1NW
YWx1ZUxpc3Q+IHBhcmFtTGlzdCA9IHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhhcmdzTGlz
dCk7Ci0gICAgaWYgKCFwYXJhbUxpc3QpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgaWYgKHBh
cmFtTGlzdC0+bGVuZ3RoKCkpCi0gICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQocGFyYW1MaXN0
LnJlbGVhc2UoKSk7Ci0gICAgCi0gICAgcmV0dXJuIGZpbHRlclZhbHVlOwotfQotCi1QYXNzUmVm
UHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlQ3VzdG9tRmlsdGVyRnVu
Y3Rpb24oQ1NTUGFyc2VyVmFsdWUqIHZhbHVlKQotewotICAgIEFTU0VSVCh2YWx1ZS0+ZnVuY3Rp
b24pOwotCi0gICAgLy8gTG9vayBhaGVhZCB0byBkZXRlcm1pbmUgd2hpY2ggc3ludGF4IHRoZSBj
dXN0b20gZnVuY3Rpb24gaXMgdXNpbmcuCi0gICAgLy8gQm90aCB0aGUgYXQtcnVsZSByZWZlcmVu
Y2Ugc3ludGF4IGFuZCB0aGUgaW5saW5lIHN5bnRheCByZXF1aXJlIGF0IGxlYXN0IG9uZSBhcmd1
bWVudC4KLSAgICBDU1NQYXJzZXJWYWx1ZUxpc3QqIGFyZ3NMaXN0ID0gdmFsdWUtPmZ1bmN0aW9u
LT5hcmdzLmdldCgpOwotICAgIGlmICghYXJnc0xpc3QgfHwgIWFyZ3NMaXN0LT5zaXplKCkpCi0g
ICAgICAgIHJldHVybiAwOwotCi0gICAgLy8gVGhlIGF0LXJ1bGUgcmVmZXJlbmNlIHN5bnRheCBl
eHBlY3RzIGEgc2luZ2xlIGlkZW50IG9yIGFuIGlkZW50IGZvbGxvd2VkIGJ5IGEgY29tbWEuIAot
ICAgIC8vIGUuZy4gY3VzdG9tKG15LWZpbHRlcikgb3IgY3VzdG9tKG15LWZpbHRlciwgLi4uKQot
ICAgIC8vIEluIGNvbnRyYXN0LCB3aGVuIHRoZSBpbmxpbmUgc3ludGF4IHN0YXJ0cyB3aXRoIGFu
IGlkZW50IGxpa2UgIm5vbmUiLCBpdCBleHBlY3RzIGEgdXJpIG9yIGEgbWl4IGZ1bmN0aW9uIG5l
eHQuCi0gICAgLy8gZS5nLiBjdXN0b20obm9uZSB1cmwoLi4uKSkgb3IgY3VzdG9tKG5vbmUgbWl4
KC4uLikKLSAgICBib29sIGlzQXRSdWxlUmVmZXJlbmNlU3ludGF4ID0gYXJnc0xpc3QtPnZhbHVl
QXQoMCktPnVuaXQgPT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19JREVOVCAKLSAgICAgICAgJiYg
KGFyZ3NMaXN0LT5zaXplKCkgPT0gMSB8fCBpc0NvbW1hKGFyZ3NMaXN0LT52YWx1ZUF0KDEpKSk7
Ci0gICAgcmV0dXJuIGlzQXRSdWxlUmVmZXJlbmNlU3ludGF4ID8gcGFyc2VDdXN0b21GaWx0ZXJG
dW5jdGlvbldpdGhBdFJ1bGVSZWZlcmVuY2VTeW50YXgodmFsdWUpIDogcGFyc2VDdXN0b21GaWx0
ZXJGdW5jdGlvbldpdGhJbmxpbmVTeW50YXgodmFsdWUpOwotfQotCi1QYXNzUmVmUHRyPENTU1Zh
bHVlTGlzdD4gQ1NTUGFyc2VyOjpwYXJzZUN1c3RvbUZpbHRlclRyYW5zZm9ybShDU1NQYXJzZXJW
YWx1ZUxpc3QqIHZhbHVlTGlzdCkKLXsKLSAgICBpZiAoIXZhbHVlTGlzdCkKLSAgICAgICAgcmV0
dXJuIDA7Ci0KLSAgICAvLyBDU1MgU2hhZGVycycgY3VzdG9tKCkgdHJhbnNmb3JtcyBhcmUgc3Bh
Y2Ugc2VwYXJhdGVkIGFuZCBjb21tYSB0ZXJtaW5hdGVkLgotICAgIFJlZlB0cjxDU1NWYWx1ZUxp
c3Q+IGxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgZm9y
IChDU1NQYXJzZXJWYWx1ZSogdmFsdWUgPSB2YWx1ZUxpc3QtPmN1cnJlbnQoKTsgdmFsdWU7IHZh
bHVlID0gdmFsdWVMaXN0LT5uZXh0KCkpIHsKLSAgICAgICAgaWYgKGlzQ29tbWEodmFsdWUpKQot
ICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgUmVmUHRyPENTU1ZhbHVlPiBwYXJzZWRUcmFu
c2Zvcm1WYWx1ZSA9IHBhcnNlVHJhbnNmb3JtVmFsdWUodmFsdWUpOwotICAgICAgICBpZiAoIXBh
cnNlZFRyYW5zZm9ybVZhbHVlKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgbGlz
dC0+YXBwZW5kKHBhcnNlZFRyYW5zZm9ybVZhbHVlLnJlbGVhc2UoKSk7Ci0gICAgfQotCi0gICAg
cmV0dXJuIGxpc3QucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU1NoYWRlclZh
bHVlPiBDU1NQYXJzZXI6OnBhcnNlRmlsdGVyUnVsZVNyY1VyaUFuZEZvcm1hdChDU1NQYXJzZXJW
YWx1ZUxpc3QqIHZhbHVlTGlzdCkKLXsKLSAgICBDU1NQYXJzZXJWYWx1ZSogdmFsdWUgPSB2YWx1
ZUxpc3QtPmN1cnJlbnQoKTsKLSAgICBBU1NFUlQodmFsdWUgJiYgdmFsdWUtPnVuaXQgPT0gQ1NT
UHJpbWl0aXZlVmFsdWU6OkNTU19VUkkpOwotICAgIFJlZlB0cjxXZWJLaXRDU1NTaGFkZXJWYWx1
ZT4gc2hhZGVyVmFsdWUgPSBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y3JlYXRlKGNvbXBsZXRlVVJM
KHZhbHVlLT5zdHJpbmcpKTsKLQotICAgIHZhbHVlID0gdmFsdWVMaXN0LT5uZXh0KCk7Ci0gICAg
aWYgKHZhbHVlICYmIHZhbHVlLT51bml0ID09IENTU1BhcnNlclZhbHVlOjpGdW5jdGlvbiAmJiBl
cXVhbElnbm9yaW5nQ2FzZSh2YWx1ZS0+ZnVuY3Rpb24tPm5hbWUsICJmb3JtYXQoIikpIHsKLSAg
ICAgICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdl
dCgpOwotICAgICAgICBpZiAoIWFyZ3MgfHwgYXJncy0+c2l6ZSgpICE9IDEpCi0gICAgICAgICAg
ICByZXR1cm4gMDsKLQotICAgICAgICBDU1NQYXJzZXJWYWx1ZSogYXJnID0gYXJncy0+Y3VycmVu
dCgpOwotICAgICAgICBpZiAoYXJnLT51bml0ICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfU1RS
SU5HKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgc2hhZGVyVmFsdWUtPnNldEZv
cm1hdChhcmctPnN0cmluZyk7Ci0gICAgICAgIHZhbHVlTGlzdC0+bmV4dCgpOwotICAgIH0KLQot
ICAgIHJldHVybiBzaGFkZXJWYWx1ZS5yZWxlYXNlKCk7Ci19Ci0KLWJvb2wgQ1NTUGFyc2VyOjpw
YXJzZUZpbHRlclJ1bGVTcmMoKQotewotICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHNyY0xpc3Qg
PSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZUNvbW1hU2VwYXJhdGVkKCk7Ci0KLSAgICBDU1NQYXJzZXJW
YWx1ZSogdmFsdWUgPSBtX3ZhbHVlTGlzdC0+Y3VycmVudCgpOwotICAgIHdoaWxlICh2YWx1ZSkg
ewotICAgICAgICBpZiAodmFsdWUtPnVuaXQgIT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19VUkkp
Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgUmVmUHRyPFdlYktpdENTU1No
YWRlclZhbHVlPiBzaGFkZXJWYWx1ZSA9IHBhcnNlRmlsdGVyUnVsZVNyY1VyaUFuZEZvcm1hdCht
X3ZhbHVlTGlzdC5nZXQoKSk7Ci0gICAgICAgIGlmICghc2hhZGVyVmFsdWUpCi0gICAgICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIHNyY0xpc3QtPmFwcGVuZChzaGFkZXJWYWx1ZS5yZWxl
YXNlKCkpOwotCi0gICAgICAgIGlmICghYWNjZXB0Q29tbWFPcGVyYXRvcihtX3ZhbHVlTGlzdC5n
ZXQoKSkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgdmFsdWUgPSBtX3Zh
bHVlTGlzdC0+Y3VycmVudCgpOwotICAgIH0KLQotICAgIGlmICghc3JjTGlzdC0+bGVuZ3RoKCkp
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGFkZFByb3BlcnR5KENTU1Byb3BlcnR5U3Jj
LCBzcmNMaXN0LnJlbGVhc2UoKSwgbV9pbXBvcnRhbnQpOwotICAgIHJldHVybiB0cnVlOwotfQot
Ci1ib29sIENTU1BhcnNlcjo6cGFyc2VGaWx0ZXJSdWxlTWl4KCkKLXsKLSAgICBpZiAobV92YWx1
ZUxpc3QtPnNpemUoKSA+IDIpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIFJlZlB0cjxD
U1NWYWx1ZUxpc3Q+IG1peExpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVk
KCk7Ci0KLSAgICBib29sIGhhc0JsZW5kTW9kZSA9IGZhbHNlOwotICAgIGJvb2wgaGFzQWxwaGFD
b21wb3NpdGluZyA9IGZhbHNlOwotICAgIENTU1BhcnNlclZhbHVlKiB2YWx1ZSA9IG1fdmFsdWVM
aXN0LT5jdXJyZW50KCk7Ci0gICAgd2hpbGUgKHZhbHVlKSB7Ci0gICAgICAgIFJlZlB0cjxDU1NW
YWx1ZT4gbWl4VmFsdWU7Ci0gICAgICAgIGlmICghaGFzQmxlbmRNb2RlICYmIGlzQmxlbmRNb2Rl
KHZhbHVlLT5pZCkpIHsKLSAgICAgICAgICAgIGhhc0JsZW5kTW9kZSA9IHRydWU7Ci0gICAgICAg
ICAgICBtaXhWYWx1ZSA9IGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZSh2YWx1
ZS0+aWQpOwotICAgICAgICB9IGVsc2UgaWYgKCFoYXNBbHBoYUNvbXBvc2l0aW5nICYmIGlzQ29t
cG9zaXRlT3BlcmF0b3IodmFsdWUtPmlkKSkgewotICAgICAgICAgICAgaGFzQWxwaGFDb21wb3Np
dGluZyA9IHRydWU7Ci0gICAgICAgICAgICBtaXhWYWx1ZSA9IGNzc1ZhbHVlUG9vbCgpLmNyZWF0
ZUlkZW50aWZpZXJWYWx1ZSh2YWx1ZS0+aWQpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKCFt
aXhWYWx1ZSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgICAgICBtaXhMaXN0LT5h
cHBlbmQobWl4VmFsdWUucmVsZWFzZSgpKTsKLSAgICAgICAgdmFsdWUgPSBtX3ZhbHVlTGlzdC0+
bmV4dCgpOwotICAgIH0KLQotICAgIGFkZFByb3BlcnR5KENTU1Byb3BlcnR5TWl4LCBtaXhMaXN0
LnJlbGVhc2UoKSwgbV9pbXBvcnRhbnQpOwotICAgIHJldHVybiB0cnVlOwotfQotCi1ib29sIENT
U1BhcnNlcjo6cGFyc2VHZW9tZXRyeShDU1NQcm9wZXJ0eUlEIHByb3BJZCwgQ1NTUGFyc2VyVmFs
dWUqIHZhbHVlLCBib29sIGltcG9ydGFudCkKLXsKLSAgICBBU1NFUlQocHJvcElkID09IENTU1By
b3BlcnR5R2VvbWV0cnkpOwotCi0gICAgLy8gPGdlb21ldHJ5LXNoYXBlPiA9IGdyaWQoPGludGVn
ZXI+ezEsMn0gfHwgWyBkZXRhY2hlZCB8IGF0dGFjaGVkIF0/KQotICAgIGlmICh2YWx1ZS0+dW5p
dCAhPSBDU1NQYXJzZXJWYWx1ZTo6RnVuY3Rpb24gfHwgIWVxdWFsSWdub3JpbmdDYXNlKHZhbHVl
LT5mdW5jdGlvbi0+bmFtZSwgImdyaWQoIikpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAg
IEFTU0VSVCh2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MpOwotCi0gICAgLy8gZ3JpZCgpIGZ1bmN0aW9u
IHNob3VsZCBoYXZlIGZyb20gMSB0byAzIGFyZ3VtZW50cy4KLSAgICB1bnNpZ25lZCBzaXplID0g
dmFsdWUtPmZ1bmN0aW9uLT5hcmdzLT5zaXplKCk7Ci0gICAgaWYgKCFzaXplIHx8IHNpemUgPiAz
KQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBDU1NQYXJzZXJWYWx1ZUxpc3QqIGdyaWRQ
YXJzZXJWYWx1ZUxpc3QgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0gICAgQ1NTUGFy
c2VyVmFsdWUqIGdyaWRQYXJzZXJWYWx1ZSA9IGdyaWRQYXJzZXJWYWx1ZUxpc3QtPmN1cnJlbnQo
KTsKLSAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBnZW9tZXRyeUxpc3QgPSBDU1NWYWx1ZUxpc3Q6
OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0KLSAgICBib29sIGhhc0RpbWVuc2lvbnMgPSBmYWxz
ZTsKLSAgICBib29sIGhhc0Nvbm5lY3Rpdml0eSA9IGZhbHNlOwotCi0gICAgd2hpbGUgKGdyaWRQ
YXJzZXJWYWx1ZSkgewotICAgICAgICBpZiAoaGFzRGltZW5zaW9ucyAmJiBoYXNDb25uZWN0aXZp
dHkpIHsKLSAgICAgICAgICAgIGdlb21ldHJ5TGlzdC5yZWxlYXNlKCk7Ci0gICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoZ3JpZFBhcnNlclZhbHVlLT5p
ZCA9PSBDU1NWYWx1ZUF0dGFjaGVkIHx8IGdyaWRQYXJzZXJWYWx1ZS0+aWQgPT0gQ1NTVmFsdWVE
ZXRhY2hlZCkgewotICAgICAgICAgICAgaGFzQ29ubmVjdGl2aXR5ID0gdHJ1ZTsKLSAgICAgICAg
ICAgIGdlb21ldHJ5TGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJW
YWx1ZShncmlkUGFyc2VyVmFsdWUtPmlkKSk7Ci0gICAgICAgICAgICBncmlkUGFyc2VyVmFsdWUg
PSBncmlkUGFyc2VyVmFsdWVMaXN0LT5uZXh0KCk7Ci0gICAgICAgIH0gZWxzZSBpZiAoIWhhc0Rp
bWVuc2lvbnMgJiYgcGFyc2VHcmlkRGltZW5zaW9ucyhncmlkUGFyc2VyVmFsdWVMaXN0LCBnZW9t
ZXRyeUxpc3QpKSB7Ci0gICAgICAgICAgICBoYXNEaW1lbnNpb25zID0gdHJ1ZTsKLSAgICAgICAg
ICAgIGdyaWRQYXJzZXJWYWx1ZSA9IGdyaWRQYXJzZXJWYWx1ZUxpc3QtPmN1cnJlbnQoKTsKLSAg
ICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGdlb21ldHJ5TGlzdC5yZWxlYXNlKCk7Ci0gICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBhZGRQcm9wZXJ0
eShwcm9wSWQsIGdlb21ldHJ5TGlzdC5yZWxlYXNlKCksIGltcG9ydGFudCk7Ci0gICAgcmV0dXJu
IGhhc0RpbWVuc2lvbnM7Ci19Ci0KLWJvb2wgQ1NTUGFyc2VyOjpwYXJzZUdyaWREaW1lbnNpb25z
KENTU1BhcnNlclZhbHVlTGlzdCogYXJncywgUmVmUHRyPENTU1ZhbHVlTGlzdD4mIGdyaWRWYWx1
ZUxpc3QpCi17Ci0gICAgQVNTRVJUKGFyZ3MpOwotCi0gICAgLy8gVGhlcmUgbXVzdCBiZSBhdCBs
ZWFzdCBvbmUgdmFsaWQgbnVtZXJpYyB2YWx1ZS4KLSAgICBDU1NQYXJzZXJWYWx1ZSogYXJnID0g
YXJncy0+Y3VycmVudCgpOwotICAgIGlmICghYXJnIHx8ICF2YWxpZFVuaXQoYXJnLCBGUG9zaXRp
dmVJbnRlZ2VyKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgLy8gQSB2YWxpZCBudW1l
cmljIHZhbHVlIGlzIHBhcnNlZCBhbmQgdGhlbiB3ZSBtb3ZlIG9uLgotICAgIGdyaWRWYWx1ZUxp
c3QtPmFwcGVuZChjcmVhdGVQcmltaXRpdmVOdW1lcmljVmFsdWUoYXJnKSk7Ci0gICAgYXJnID0g
YXJncy0+bmV4dCgpOwotCi0gICAgLy8gSWYgdGhlIG5leHQgYXJndW1lbnQgaXMgbm90IG51bWVy
aWMsIHdlIGFyZSBkb25lIHBhcnNpbmcgdGhlIGdyaWQgZGltZW5zaW9ucy4KLSAgICBpZiAoIWFy
ZyB8fCAhdmFsaWRVbml0KGFyZywgRlBvc2l0aXZlSW50ZWdlcikpCi0gICAgICAgIHJldHVybiB0
cnVlOwotCi0gICAgLy8gQ29tbWl0IHRoZSBzZWNvbmQgbnVtZXJpYyB2YWx1ZSB3ZSBmb3VuZC4K
LSAgICBncmlkVmFsdWVMaXN0LT5hcHBlbmQoY3JlYXRlUHJpbWl0aXZlTnVtZXJpY1ZhbHVlKGFy
ZykpOwotICAgIGFyZ3MtPm5leHQoKTsKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotYm9vbCBDU1NQ
YXJzZXI6OnBhcnNlRmlsdGVyUnVsZVBhcmFtZXRlcnMoKQotewotICAgIFJlZlB0cjxDU1NWYWx1
ZUxpc3Q+IHBhcmFtc0xpc3QgPSBwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcnMobV92YWx1ZUxp
c3QuZ2V0KCkpOwotICAgIGlmICghcGFyYW1zTGlzdCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwot
Ci0gICAgYWRkUHJvcGVydHkoQ1NTUHJvcGVydHlQYXJhbWV0ZXJzLCBwYXJhbXNMaXN0LnJlbGVh
c2UoKSwgbV9pbXBvcnRhbnQpOwotICAgIHJldHVybiB0cnVlOwotfQotCi1QYXNzUmVmUHRyPFN0
eWxlUnVsZUJhc2U+IENTU1BhcnNlcjo6Y3JlYXRlRmlsdGVyUnVsZShjb25zdCBDU1NQYXJzZXJT
dHJpbmcmIGZpbHRlck5hbWUpCi17Ci0gICAgUmVmUHRyPFN0eWxlUnVsZUZpbHRlcj4gcnVsZSA9
IFN0eWxlUnVsZUZpbHRlcjo6Y3JlYXRlKGZpbHRlck5hbWUsIGNyZWF0ZVN0eWxlUHJvcGVydGll
cygpKTsKLSAgICBjbGVhclByb3BlcnRpZXMoKTsKLSAgICBwcm9jZXNzQW5kQWRkTmV3UnVsZVRv
U291cmNlVHJlZUlmTmVlZGVkKCk7Ci0gICAgcmV0dXJuIHJ1bGUucmVsZWFzZSgpOwotfQotCi0j
ZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCiBQYXNzUmVmUHRyPFdlYktpdENTU0ZpbHRl
clZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlQnVpbHRpbkZpbHRlckFyZ3VtZW50cyhDU1NQYXJzZXJW
YWx1ZUxpc3QqIGFyZ3MsIFdlYktpdENTU0ZpbHRlclZhbHVlOjpGaWx0ZXJPcGVyYXRpb25UeXBl
IGZpbHRlclR5cGUpCiB7CiAgICAgUmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBmaWx0ZXJW
YWx1ZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoZmlsdGVyVHlwZSk7CkBAIC05ODE5
LDE5ICs5MjA0LDYgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlRmlsdGVyKENTU1BhcnNlclZhbHVl
TGlzdCogdmFsdWVMaXN0LCBSZWZQdHI8Q1NTVmFsdWU+JiByZXMKICAgICAgICAgICAgIGlmIChm
aWx0ZXJUeXBlID09IFdlYktpdENTU0ZpbHRlclZhbHVlOjpVbmtub3duRmlsdGVyT3BlcmF0aW9u
KQogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSAgICAgICAgICAgIGlmIChmaWx0ZXJUeXBlID09IFdlYktpdENTU0ZpbHRlclZhbHVlOjpD
dXN0b21GaWx0ZXJPcGVyYXRpb24pIHsKLSAgICAgICAgICAgICAgICAvLyBNYWtlIHN1cmUgcGFy
c2luZyBmYWlscyBpZiBjdXN0b20gZmlsdGVycyBhcmUgZGlzYWJsZWQuCi0gICAgICAgICAgICAg
ICAgaWYgKCFtX2NvbnRleHQuaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKQotICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAg
UmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBmaWx0ZXJWYWx1ZSA9IHBhcnNlQ3VzdG9tRmls
dGVyRnVuY3Rpb24odmFsdWUpOwotICAgICAgICAgICAgICAgIGlmICghZmlsdGVyVmFsdWUpCi0g
ICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgICAgICBsaXN0LT5h
cHBlbmQoZmlsdGVyVmFsdWUucmVsZWFzZSgpKTsKLSAgICAgICAgICAgICAgICBjb250aW51ZTsK
LSAgICAgICAgICAgIH0KLSNlbmRpZgogICAgICAgICAgICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBh
cmdzID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdldCgpOwogICAgICAgICAgICAgaWYgKCFhcmdz
KQogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTExNDkwLDE2ICsxMDg2Miw4IEBA
IGlubGluZSB2b2lkIENTU1BhcnNlcjo6ZGV0ZWN0QXRUb2tlbihpbnQgbGVuZ3RoLCBib29sIGhh
c0VzY2FwZSkKICAgICAgICAgICAgICAgICByZXR1cm47CiAKICNpZiBFTkFCTEUoQ1NTX1JFR0lP
TlMpCi0gICAgICAgICAgICBpZiAoaXNBU0NJSUFscGhhQ2FzZWxlc3NFcXVhbChuYW1lWzE0XSwg
J24nKSAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAyLCAid2Via2l0LXJlZ2lvIikp
IHsKKyAgICAgICAgICAgIGlmIChpc0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFsKG5hbWVbMTRdLCAn
bicpICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobmFtZSArIDIsICJ3ZWJraXQtcmVnaW8iKSkK
ICAgICAgICAgICAgICAgICBtX3Rva2VuID0gV0VCS0lUX1JFR0lPTl9SVUxFX1NZTTsKLSAgICAg
ICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9Ci0jZW5kaWYKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgICAgICAgICBpZiAoaXNBU0NJSUFscGhhQ2FzZWxlc3NFcXVhbChuYW1l
WzE0XSwgJ3InKSAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAyLCAid2Via2l0LWZp
bHRlIikpIHsKLSAgICAgICAgICAgICAgICBtX3Rva2VuID0gV0VCS0lUX0ZJTFRFUl9SVUxFX1NZ
TTsKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9CiAjZW5kaWYKICAgICAg
ICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
ci5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCmluZGV4IDQ3YjA1ZTYuLmE2NjMx
Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgKQEAgLTY3LDEzICs2Nyw2IEBAIGNsYXNzIFN0eWxl
S2V5ZnJhbWU7CiBjbGFzcyBTdHlsZVNoZWV0Q29udGVudHM7CiBjbGFzcyBTdHlsZWRFbGVtZW50
OwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotY2xhc3MgV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlOwotY2xhc3MgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZTsKLWNsYXNzIFdlYktpdENT
U01peEZ1bmN0aW9uVmFsdWU7Ci1jbGFzcyBXZWJLaXRDU1NTaGFkZXJWYWx1ZTsKLSNlbmRpZgot
CiBjbGFzcyBDU1NQYXJzZXIgewogICAgIGZyaWVuZCBpbmxpbmUgaW50IGNzc3l5bGV4KHZvaWQq
LCBDU1NQYXJzZXIqKTsKIApAQCAtMjYwLDIyICsyNTMsNiBAQCBwdWJsaWM6CiAKICAgICBib29s
IHBhcnNlRmlsdGVyKENTU1BhcnNlclZhbHVlTGlzdCosIFJlZlB0cjxDU1NWYWx1ZT4mKTsKICAg
ICBQYXNzUmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBwYXJzZUJ1aWx0aW5GaWx0ZXJBcmd1
bWVudHMoQ1NTUGFyc2VyVmFsdWVMaXN0KiwgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkZpbHRlck9w
ZXJhdGlvblR5cGUpOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBQYXNzUmVmUHRyPFdl
YktpdENTU01hdEZ1bmN0aW9uVmFsdWU+IHBhcnNlTWF0VmFsdWUoQ1NTUGFyc2VyVmFsdWUqKTsK
LSAgICBQYXNzUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU+IHBhcnNlTWl4RnVuY3Rp
b24oQ1NTUGFyc2VyVmFsdWUqKTsKLSAgICBQYXNzUmVmUHRyPFdlYktpdENTU0FycmF5RnVuY3Rp
b25WYWx1ZT4gcGFyc2VDdXN0b21GaWx0ZXJBcnJheUZ1bmN0aW9uKENTU1BhcnNlclZhbHVlKik7
Ci0gICAgUGFzc1JlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcnNlQ3VzdG9tRmlsdGVyVHJhbnNmb3Jt
KENTU1BhcnNlclZhbHVlTGlzdCopOwotICAgIFBhc3NSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJz
ZUN1c3RvbUZpbHRlclBhcmFtZXRlcnMoQ1NTUGFyc2VyVmFsdWVMaXN0Kik7Ci0gICAgUGFzc1Jl
ZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gcGFyc2VDdXN0b21GaWx0ZXJGdW5jdGlvbldpdGhB
dFJ1bGVSZWZlcmVuY2VTeW50YXgoQ1NTUGFyc2VyVmFsdWUqKTsKLSAgICBQYXNzUmVmUHRyPFdl
YktpdENTU0ZpbHRlclZhbHVlPiBwYXJzZUN1c3RvbUZpbHRlckZ1bmN0aW9uV2l0aElubGluZVN5
bnRheChDU1NQYXJzZXJWYWx1ZSopOwotICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFs
dWU+IHBhcnNlQ3VzdG9tRmlsdGVyRnVuY3Rpb24oQ1NTUGFyc2VyVmFsdWUqKTsKLSAgICBib29s
IHBhcnNlRmlsdGVyUnVsZVNyYygpOwotICAgIGJvb2wgcGFyc2VGaWx0ZXJSdWxlTWl4KCk7Ci0g
ICAgYm9vbCBwYXJzZUdlb21ldHJ5KENTU1Byb3BlcnR5SUQsIENTU1BhcnNlclZhbHVlKiwgYm9v
bCk7Ci0gICAgYm9vbCBwYXJzZUdyaWREaW1lbnNpb25zKENTU1BhcnNlclZhbHVlTGlzdCosIFJl
ZlB0cjxDU1NWYWx1ZUxpc3Q+Jik7IAotICAgIGJvb2wgcGFyc2VGaWx0ZXJSdWxlUGFyYW1ldGVy
cygpOwotICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NTU2hhZGVyVmFsdWU+IHBhcnNlRmlsdGVyUnVs
ZVNyY1VyaUFuZEZvcm1hdChDU1NQYXJzZXJWYWx1ZUxpc3QqKTsKLSNlbmRpZgogI2VuZGlmCiAK
ICAgICBQYXNzUmVmUHRyPENTU1ZhbHVlPiBwYXJzZUNsaXBQYXRoKCk7CkBAIC0zMzgsOSArMzE1
LDYgQEAgcHVibGljOgogI2lmIEVOQUJMRShTSEFET1dfRE9NKQogICAgIFBhc3NSZWZQdHI8U3R5
bGVSdWxlQmFzZT4gY3JlYXRlSG9zdFJ1bGUoUnVsZUxpc3QqKTsKICNlbmRpZgotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBQYXNzUmVmUHRyPFN0eWxlUnVsZUJhc2U+IGNyZWF0ZUZpbHRl
clJ1bGUoY29uc3QgQ1NTUGFyc2VyU3RyaW5nJik7Ci0jZW5kaWYKIAogICAgIHZvaWQgc3RhcnRE
ZWNsYXJhdGlvbnNGb3JNYXJnaW5Cb3goKTsKICAgICB2b2lkIGVuZERlY2xhcmF0aW9uc0Zvck1h
cmdpbkJveCgpOwpAQCAtMzg5LDEwICszNjMsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBtX2xvZ0Vy
cm9yczsKICAgICBib29sIG1faWdub3JlRXJyb3JzSW5EZWNsYXJhdGlvbjsKIAotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICBib29sIG1faW5GaWx0ZXJSdWxlOwotI2VuZGlmCi0KICAgICBB
dG9taWNTdHJpbmcgbV9kZWZhdWx0TmFtZXNwYWNlOwogCiAgICAgLy8gdG9rZW5pemVyIG1ldGhv
ZHMgYW5kIGRhdGEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJNb2Rl
LmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5oCmluZGV4IDY5N2E4MzUuLjAy
ZTA1MjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJNb2RlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlck1vZGUuaApAQCAtNjQsNyArNjQsNiBAQCBw
dWJsaWM6CiAgICAgU3RyaW5nIGNoYXJzZXQ7CiAgICAgQ1NTUGFyc2VyTW9kZSBtb2RlOwogICAg
IGJvb2wgaXNIVE1MRG9jdW1lbnQ7Ci0gICAgYm9vbCBpc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQ7
CiAgICAgYm9vbCBpc0NTU1N0aWNreVBvc2l0aW9uRW5hYmxlZDsKICAgICBib29sIGlzQ1NTUmVn
aW9uc0VuYWJsZWQ7CiAgICAgYm9vbCBpc0NTU0NvbXBvc2l0aW5nRW5hYmxlZDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KaW5kZXggOWRmZTFkNi4uMmM1ODA1MCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KQEAgLTEwOSw5ICsxMDksNiBAQCBjdXJz
b3IgW0luaGVyaXRlZF0KIGVtcHR5LWNlbGxzIFtJbmhlcml0ZWRdCiBmbG9hdAogZm9udC1zdHJl
dGNoCi0jaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpICYmIEVOQUJMRV9DU1NfU0hBREVS
UwotZ2VvbWV0cnkKLSNlbmRpZgogaGVpZ2h0CiAjaWYgZGVmaW5lZChFTkFCTEVfQ1NTX0lNQUdF
X09SSUVOVEFUSU9OKSAmJiBFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OCiBpbWFnZS1vcmll
bnRhdGlvbiBbSW5oZXJpdGVkXQpAQCAtMTM1LDEwICsxMzIsNiBAQCBtYXgtaGVpZ2h0CiBtYXgt
d2lkdGgKIG1pbi1oZWlnaHQKIG1pbi13aWR0aAotI2lmIGRlZmluZWQoRU5BQkxFX0NTU19TSEFE
RVJTKSAmJiBFTkFCTEVfQ1NTX1NIQURFUlMKLW1peAotcGFyYW1ldGVycwotI2VuZGlmCiBvYmpl
Y3QtZml0CiBvcGFjaXR5CiAvLyBIb25vciAtd2Via2l0LW9wYWNpdHkgYXMgYSBzeW5vbnltIGZv
ciBvcGFjaXR5LiBUaGlzIHdhcyB0aGUgb25seSBzeW50YXggdGhhdCB3b3JrZWQgaW4gU2FmYXJp
IDEuMSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eVNvdXJjZURh
dGEuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eVNvdXJjZURhdGEuaAppbmRleCBk
YTcxYmViLi5jOTk1YTAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVy
dHlTb3VyY2VEYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5U291cmNl
RGF0YS5oCkBAIC05Myw5ICs5Myw2IEBAIHN0cnVjdCBDU1NSdWxlU291cmNlRGF0YSA6IHB1Ymxp
YyBSZWZDb3VudGVkPENTU1J1bGVTb3VyY2VEYXRhPiB7CiAgICAgICAgIEhPU1RfUlVMRSwKICAg
ICAgICAgVklFV1BPUlRfUlVMRSwKICAgICAgICAgU1VQUE9SVFNfUlVMRSwKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0gICAgICAgIEZJTFRFUl9SVUxFCi0jZW5kaWYKICAgICB9OwogCiAgICAg
c3RhdGljIFBhc3NSZWZQdHI8Q1NTUnVsZVNvdXJjZURhdGE+IGNyZWF0ZShUeXBlIHR5cGUpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUnVsZS5oIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1J1bGUuaAppbmRleCA0YzdlYmRiLi5hODAzOTlkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUnVsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlLmgK
QEAgLTU5LDkgKzU5LDYgQEAgcHVibGljOgogI2lmIEVOQUJMRShDU1NfUkVHSU9OUykKICAgICAg
ICAgV0VCS0lUX1JFR0lPTl9SVUxFID0gMTYsCiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0gICAgICAgIFdFQktJVF9GSUxURVJfUlVMRSA9IDE3LAotI2VuZGlmCiAjaWYgRU5BQkxF
KFNIQURPV19ET00pCiAgICAgICAgIEhPU1RfUlVMRSA9IDEwMDEsCiAjZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NSdWxlLmlkbAppbmRleCBmNGQ0ZTZlLi41ODlmODk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUnVsZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGUuaWRs
CkBAIC00Niw5ICs0Niw2IEBACiAjaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1JFR0lPTlMpICYmIEVO
QUJMRV9DU1NfUkVHSU9OUwogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFdFQktJVF9SRUdJT05f
UlVMRSA9IDE2OwogI2VuZGlmCi0jaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpICYmIEVO
QUJMRV9DU1NfU0hBREVSUwotICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFdFQktJVF9GSUxURVJf
UlVMRSA9IDE3OwotI2VuZGlmCiAjaWYgZGVmaW5lZChFTkFCTEVfU0hBRE9XX0RPTSkgJiYgRU5B
QkxFX1NIQURPV19ET00KICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBIT1NUX1JVTEUgPSAxMDAx
OwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNwcAppbmRleCBkY2RlNzM2Li43NjBlOGQwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAKQEAgLTU0LDExICs1NCw3IEBACiAjaW5jbHVkZSAiQ1NT
VmFsdWVMaXN0LmgiCiAjaW5jbHVkZSAiU1ZHQ29sb3IuaCIKICNpbmNsdWRlICJTVkdQYWludC5o
IgotI2luY2x1ZGUgIldlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5oIgogI2luY2x1ZGUgIldl
YktpdENTU0ZpbHRlclZhbHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1
ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIKLSNpbmNsdWRlICJX
ZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIgogI2luY2x1ZGUgIldlYktpdENTU1RyYW5zZm9ybVZhbHVl
LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTIyMiwxNiArMjE4LDYgQEAgYm9vbCBDU1NW
YWx1ZTo6ZXF1YWxzKGNvbnN0IENTU1ZhbHVlJiBvdGhlcikgY29uc3QKICNpZiBFTkFCTEUoQ1NT
X0ZJTFRFUlMpCiAgICAgICAgIGNhc2UgV2ViS2l0Q1NTRmlsdGVyQ2xhc3M6CiAgICAgICAgICAg
ICByZXR1cm4gY29tcGFyZUNTU1ZhbHVlczxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4oKnRoaXMsIG90
aGVyKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGNhc2UgV2ViS2l0Q1NTQXJy
YXlGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgICAgICByZXR1cm4gY29tcGFyZUNTU1ZhbHVl
czxXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+KCp0aGlzLCBvdGhlcik7Ci0gICAgICAgIGNh
c2UgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAgICAgICAgICAgcmV0dXJuIGNv
bXBhcmVDU1NWYWx1ZXM8V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZT4oKnRoaXMsIG90aGVyKTsK
LSAgICAgICAgY2FzZSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgICAg
ICByZXR1cm4gY29tcGFyZUNTU1ZhbHVlczxXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlPigqdGhp
cywgb3RoZXIpOwotICAgICAgICBjYXNlIFdlYktpdENTU1NoYWRlckNsYXNzOgotICAgICAgICAg
ICAgcmV0dXJuIGNvbXBhcmVDU1NWYWx1ZXM8V2ViS2l0Q1NTU2hhZGVyVmFsdWU+KCp0aGlzLCBv
dGhlcik7Ci0jZW5kaWYKICNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAgICAgIGNhc2UgU1ZH
Q29sb3JDbGFzczoKQEAgLTMyMCwxNiArMzA2LDYgQEAgU3RyaW5nIENTU1ZhbHVlOjpjc3NUZXh0
KCkgY29uc3QKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAgICAgY2FzZSBXZWJLaXRDU1NGaWx0
ZXJDbGFzczoKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTRmlsdGVyVmFsdWUodGhpcyktPmN1
c3RvbUNTU1RleHQoKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBXZWJLaXRD
U1NBcnJheUZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTQXJy
YXlGdW5jdGlvblZhbHVlKHRoaXMpLT5jdXN0b21DU1NUZXh0KCk7Ci0gICAgY2FzZSBXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dlYktpdENTU01hdEZ1
bmN0aW9uVmFsdWUodGhpcyktPmN1c3RvbUNTU1RleHQoKTsKLSAgICBjYXNlIFdlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZSh0aGlzKS0+Y3VzdG9tQ1NTVGV4dCgpOwotICAgIGNhc2UgV2ViS2l0Q1NTU2hhZGVy
Q2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dlYktpdENTU1NoYWRlclZhbHVlKHRoaXMpLT5jdXN0
b21DU1NUZXh0KCk7Ci0jZW5kaWYKICNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAgY2FzZSBT
VkdDb2xvckNsYXNzOgpAQCAtNDM5LDIwICs0MTUsNiBAQCB2b2lkIENTU1ZhbHVlOjpkZXN0cm95
KCkKICAgICBjYXNlIFdlYktpdENTU0ZpbHRlckNsYXNzOgogICAgICAgICBkZWxldGUgdG9XZWJL
aXRDU1NGaWx0ZXJWYWx1ZSh0aGlzKTsKICAgICAgICAgcmV0dXJuOwotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICBjYXNlIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAg
ICAgICBkZWxldGUgdG9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUodGhpcyk7Ci0gICAgICAg
IHJldHVybjsKLSAgICBjYXNlIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAg
ICAgZGVsZXRlIHRvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSh0aGlzKTsKLSAgICAgICAgcmV0
dXJuOwotICAgIGNhc2UgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAgICAgICBk
ZWxldGUgdG9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKHRoaXMpOwotICAgICAgICByZXR1cm47
Ci0gICAgY2FzZSBXZWJLaXRDU1NTaGFkZXJDbGFzczoKLSAgICAgICAgZGVsZXRlIHRvV2ViS2l0
Q1NTU2hhZGVyVmFsdWUodGhpcyk7Ci0gICAgICAgIHJldHVybjsKLSNlbmRpZgogI2VuZGlmCiAj
aWYgRU5BQkxFKFNWRykKICAgICBjYXNlIFNWR0NvbG9yQ2xhc3M6CkBAIC00NzksMTQgKzQ0MSw2
IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENTU1ZhbHVlOjpjbG9uZUZvckNTU09NKCkgY29uc3QK
ICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAgICAgY2FzZSBXZWJLaXRDU1NGaWx0ZXJDbGFzczoK
ICAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTRmlsdGVyVmFsdWUodGhpcyktPmNsb25lRm9yQ1NT
T00oKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlKHRoaXMpLT5jbG9uZUZvckNTU09NKCk7Ci0gICAgY2FzZSBXZWJLaXRDU1NNYXRGdW5j
dGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUodGhpcyktPmNsb25lRm9yQ1NTT00oKTsKLSAgICBjYXNlIFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWVDbGFzczoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSh0
aGlzKS0+Y2xvbmVGb3JDU1NPTSgpOwotI2VuZGlmCiAjZW5kaWYKICAgICBjYXNlIFdlYktpdENT
U1RyYW5zZm9ybUNsYXNzOgogICAgICAgICByZXR1cm4gdG9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1
ZSh0aGlzKS0+Y2xvbmVGb3JDU1NPTSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAppbmRleCA2MDA1OWQ5
Li45NDJiNzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaApAQCAtOTYsMTIgKzk2LDYgQEAgcHVibGlj
OgogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICAgICBib29sIGlzRmlsdGVySW1hZ2VWYWx1ZSgp
IGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEZpbHRlckltYWdlQ2xhc3M7IH0KICAgICBi
b29sIGlzV2ViS2l0Q1NTRmlsdGVyVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9
PSBXZWJLaXRDU1NGaWx0ZXJDbGFzczsgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBi
b29sIGlzV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFz
c1R5cGUgPT0gV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlQ2xhc3M7IH0KLSAgICBib29sIGlz
V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVDbGFzczsgfQotICAgIGJvb2wgaXNXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gV2ViS2l0Q1NT
TWl4RnVuY3Rpb25WYWx1ZUNsYXNzOyB9Ci0gICAgYm9vbCBpc1dlYktpdENTU1NoYWRlclZhbHVl
KCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gV2ViS2l0Q1NTU2hhZGVyQ2xhc3M7IH0K
LSNlbmRpZgogI2VuZGlmIC8vIEVOQUJMRShDU1NfRklMVEVSUykKICAgICBib29sIGlzR3JpZFRl
bXBsYXRlVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBHcmlkVGVtcGxhdGVD
bGFzczsgfQogI2lmIEVOQUJMRShTVkcpCkBAIC0xNjcsOSArMTYxLDYgQEAgcHJvdGVjdGVkOgog
ICAgICAgICBVbmljb2RlUmFuZ2VDbGFzcywKICAgICAgICAgTGluZUJveENvbnRhaW5DbGFzcywK
ICAgICAgICAgQ2FsY3VsYXRpb25DbGFzcywKLSNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpICYmIEVO
QUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgV2ViS2l0Q1NTU2hhZGVyQ2xhc3MsCi0jZW5kaWYK
ICAgICAgICAgR3JpZFRlbXBsYXRlQ2xhc3MsCiAjaWYgRU5BQkxFKFNWRykKICAgICAgICAgU1ZH
Q29sb3JDbGFzcywKQEAgLTE4MywxMSArMTc0LDYgQEAgcHJvdGVjdGVkOgogI2VuZGlmCiAjaWYg
RU5BQkxFKENTU19GSUxURVJTKQogICAgICAgICBXZWJLaXRDU1NGaWx0ZXJDbGFzcywKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZUNs
YXNzLAotICAgICAgICBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlQ2xhc3MsCi0gICAgICAgIFdl
YktpdENTU01peEZ1bmN0aW9uVmFsdWVDbGFzcywKLSNlbmRpZgogI2VuZGlmCiAgICAgICAgIFdl
YktpdENTU1RyYW5zZm9ybUNsYXNzLAogICAgICAgICAvLyBEbyBub3QgYXBwZW5kIG5vbi1saXN0
IGNsYXNzIHR5cGVzIGhlcmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFs
dWVLZXl3b3Jkcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCmlu
ZGV4IDdhYjY4OWIuLmMyYWQ4MTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NW
YWx1ZUtleXdvcmRzLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRz
LmluCkBAIC0xMDEwLDE4ICsxMDEwLDYgQEAgYWxwaGFiZXRpYwogY29hcnNlCiBmaW5lCiAKLSNp
ZiAoZGVmaW5lZChFTkFCTEVfQ1NTX0ZJTFRFUlMpICYmIEVOQUJMRV9DU1NfRklMVEVSUykgfHwg
KGRlZmluZWQoRU5BQkxFX0NTU19DT01QT1NJVElORykgJiYgRU5BQkxFX0NTU19DT01QT1NJVElO
RykKLS8vIC13ZWJraXQtZmlsdGVyCi0jaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpICYm
IEVOQUJMRV9DU1NfU0hBREVSUwotLy8gdmFsdWVzIGZvciB0aGUgY3VzdG9tKCkgZnVuY3Rpb24K
LS8vIGJvcmRlci1ib3gKLS8vIHBhZGRpbmctYm94Ci0vLyBjb250ZW50LWJveAotYXR0YWNoZWQK
LWZpbHRlci1ib3gKLWRldGFjaGVkCi0jZW5kaWYgLy8gQ1NTX1NIQURFUlMKLSNlbmRpZiAvLyBD
U1NfRklMVEVSUwogLy8gYmxlbmQgbW9kZXMKIC8vIG5vcm1hbAogbXVsdGlwbHkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9TdHlsZVJlc29sdmVyLmNwcAppbmRleCAyY2ZjZTIyLi42MjgyNWI4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC0xNDEsMjQgKzE0MSw2IEBACiAjaW5jbHVkZSAi
U3R5bGVDYWNoZWRJbWFnZVNldC5oIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0
b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0YW50
cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oIgotI2luY2x1ZGUg
IkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRl
ci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmgiCi0jaW5jbHVkZSAiQ3Vz
dG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiU3R5bGVDYWNoZWRTaGFk
ZXIuaCIKLSNpbmNsdWRlICJTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5oIgotI2luY2x1ZGUgIlN0eWxlUGVuZGluZ1No
YWRlci5oIgotI2luY2x1ZGUgIlN0eWxlU2hhZGVyLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWl4
RnVuY3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU1NoYWRlclZhbHVlLmgiCi0jZW5k
aWYKLQogI2lmIEVOQUJMRShEQVNIQk9BUkRfU1VQUE9SVCkKICNpbmNsdWRlICJEYXNoYm9hcmRS
ZWdpb24uaCIKICNlbmRpZgpAQCAtMjU2LDkgKzIzOCw2IEBAIGlubGluZSB2b2lkIFN0eWxlUmVz
b2x2ZXI6OlN0YXRlOjpjbGVhcigpCiAgICAgbV9wYXJlbnROb2RlID0gbnVsbHB0cjsKICAgICBt
X3JlZ2lvbkZvclN0eWxpbmcgPSBudWxscHRyOwogICAgIG1fcGVuZGluZ0ltYWdlUHJvcGVydGll
cy5jbGVhcigpOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBtX2hhc1BlbmRpbmdTaGFk
ZXJzID0gZmFsc2U7Ci0jZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpICYmIEVOQUJMRShT
VkcpCiAgICAgbV9wZW5kaW5nU1ZHRG9jdW1lbnRzLmNsZWFyKCk7CiAjZW5kaWYKQEAgLTMxMDcs
MTAgKzMwODYsNiBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6OmFwcGx5UHJvcGVydHkoQ1NTUHJvcGVy
dHlJRCBpZCwgQ1NTVmFsdWUqIHZhbHVlKQogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRXcmFw
RmxvdzoKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0V3JhcFRocm91Z2g6CiAjZW5kaWYKLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBDU1NQcm9wZXJ0eU1peDoKLSAgICBjYXNl
IENTU1Byb3BlcnR5UGFyYW1ldGVyczoKLSNlbmRpZgogICAgIGNhc2UgQ1NTUHJvcGVydHlXaGl0
ZVNwYWNlOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXaWRvd3M6CiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVdpZHRoOgpAQCAtMzQwMiwxMCArMzM3Nyw2IEBAIHN0YXRpYyBGaWx0ZXJPcGVyYXRpb246Ok9w
ZXJhdGlvblR5cGUgZmlsdGVyT3BlcmF0aW9uRm9yVHlwZShXZWJLaXRDU1NGaWx0ZXJWYWx1CiAg
ICAgICAgIHJldHVybiBGaWx0ZXJPcGVyYXRpb246OkJMVVI7CiAgICAgY2FzZSBXZWJLaXRDU1NG
aWx0ZXJWYWx1ZTo6RHJvcFNoYWRvd0ZpbHRlck9wZXJhdGlvbjoKICAgICAgICAgcmV0dXJuIEZp
bHRlck9wZXJhdGlvbjo6RFJPUF9TSEFET1c7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
IGNhc2UgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkN1c3RvbUZpbHRlck9wZXJhdGlvbjoKLSAgICAg
ICAgcmV0dXJuIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOwotI2VuZGlmCiAgICAgY2FzZSBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZTo6VW5rbm93bkZpbHRlck9wZXJhdGlvbjoKICAgICAgICAgcmV0dXJu
IEZpbHRlck9wZXJhdGlvbjo6Tk9ORTsKICAgICB9CkBAIC0zNDMxLDM0MCArMzQwMiw2IEBAIHZv
aWQgU3R5bGVSZXNvbHZlcjo6bG9hZFBlbmRpbmdTVkdEb2N1bWVudHMoKQogfQogI2VuZGlmCiAK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi1TdHlsZVNoYWRlciogU3R5bGVSZXNvbHZlcjo6c3R5
bGVTaGFkZXIoQ1NTVmFsdWUqIHZhbHVlKQotewotICAgIGlmICh2YWx1ZS0+aXNXZWJLaXRDU1NT
aGFkZXJWYWx1ZSgpKQotICAgICAgICByZXR1cm4gY2FjaGVkT3JQZW5kaW5nU3R5bGVTaGFkZXJG
cm9tVmFsdWUodG9XZWJLaXRDU1NTaGFkZXJWYWx1ZSh2YWx1ZSkpOwotICAgIHJldHVybiAwOwot
fQotCi1TdHlsZVNoYWRlciogU3R5bGVSZXNvbHZlcjo6Y2FjaGVkT3JQZW5kaW5nU3R5bGVTaGFk
ZXJGcm9tVmFsdWUoV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIHZhbHVlKQotewotICAgIFN0eWxlU2hh
ZGVyKiBzaGFkZXIgPSB2YWx1ZS0+Y2FjaGVkT3JQZW5kaW5nU2hhZGVyKCk7Ci0gICAgaWYgKHNo
YWRlciAmJiBzaGFkZXItPmlzUGVuZGluZ1NoYWRlcigpKQotICAgICAgICBtX3N0YXRlLnNldEhh
c1BlbmRpbmdTaGFkZXJzKHRydWUpOwotICAgIHJldHVybiBzaGFkZXI7Ci19Ci0KLVBhc3NSZWZQ
dHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gU3R5bGVSZXNvbHZlcjo6bG9va3VwQ3VzdG9tRmlsdGVy
UHJvZ3JhbShXZWJLaXRDU1NTaGFkZXJWYWx1ZSogdmVydGV4U2hhZGVyLCBXZWJLaXRDU1NTaGFk
ZXJWYWx1ZSogZnJhZ21lbnRTaGFkZXIsIAotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHBy
b2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG1peFNldHRp
bmdzLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLXsKLSAgICBDYWNoZWRSZXNvdXJj
ZUxvYWRlciogY2FjaGVkUmVzb3VyY2VMb2FkZXIgPSBtX3N0YXRlLmRvY3VtZW50KCkuY2FjaGVk
UmVzb3VyY2VMb2FkZXIoKTsKLSAgICBVUkwgdmVydGV4U2hhZGVyVVJMID0gdmVydGV4U2hhZGVy
ID8gdmVydGV4U2hhZGVyLT5jb21wbGV0ZVVSTChjYWNoZWRSZXNvdXJjZUxvYWRlcikgOiBVUkwo
KTsKLSAgICBVUkwgZnJhZ21lbnRTaGFkZXJVUkwgPSBmcmFnbWVudFNoYWRlciA/IGZyYWdtZW50
U2hhZGVyLT5jb21wbGV0ZVVSTChjYWNoZWRSZXNvdXJjZUxvYWRlcikgOiBVUkwoKTsKLSAgICBS
ZWZQdHI8U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtPiBwcm9ncmFtOwotICAgIGlmIChtX2N1c3Rv
bUZpbHRlclByb2dyYW1DYWNoZSkKLSAgICAgICAgcHJvZ3JhbSA9IG1fY3VzdG9tRmlsdGVyUHJv
Z3JhbUNhY2hlLT5sb29rdXAoQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8odmVydGV4U2hhZGVyVVJM
LCBmcmFnbWVudFNoYWRlclVSTCwgcHJvZ3JhbVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSkp
OwotICAgIGlmICghcHJvZ3JhbSkgewotICAgICAgICAvLyBDcmVhdGUgYSBuZXcgU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtIHRoYXQgd2lsbCBiZSByZXNvbHZlZCBkdXJpbmcgdGhlIGxvYWRQZW5k
aW5nU2hhZGVycyBhbmQgYWRkZWQgdG8gdGhlIGNhY2hlLgotICAgICAgICBwcm9ncmFtID0gU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtOjpjcmVhdGUodmVydGV4U2hhZGVyVVJMLCB2ZXJ0ZXhTaGFk
ZXIgPyBzdHlsZVNoYWRlcih2ZXJ0ZXhTaGFkZXIpIDogMCwgCi0gICAgICAgICAgICBmcmFnbWVu
dFNoYWRlclVSTCwgZnJhZ21lbnRTaGFkZXIgPyBzdHlsZVNoYWRlcihmcmFnbWVudFNoYWRlcikg
OiAwLCBwcm9ncmFtVHlwZSwgbWl4U2V0dGluZ3MsIG1lc2hUeXBlKTsKLSAgICB9Ci0gICAgcmV0
dXJuIHByb2dyYW0ucmVsZWFzZSgpOwotfQotCi12b2lkIFN0eWxlUmVzb2x2ZXI6OmxvYWRQZW5k
aW5nU2hhZGVycygpCi17Ci0gICAgLy8gRklYTUU6IFdlIHNob3VsZG4ndCBoYXZlIHRvIGNoZWNr
IHRoYXQgc3R5bGUgaXMgbm9uLW51bGwuIFRoaXMgaXMgYSBzcGVjdWxhdGl2ZSBmaXggZm9yOgot
ICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTc2NjUKLSAg
ICBpZiAoIW1fc3RhdGUuaGFzUGVuZGluZ1NoYWRlcnMoKSB8fCAhbV9zdGF0ZS5zdHlsZSgpIHx8
ICFtX3N0YXRlLnN0eWxlKCktPmhhc0ZpbHRlcigpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBD
YWNoZWRSZXNvdXJjZUxvYWRlciogY2FjaGVkUmVzb3VyY2VMb2FkZXIgPSBtX3N0YXRlLmRvY3Vt
ZW50KCkuY2FjaGVkUmVzb3VyY2VMb2FkZXIoKTsKLQotICAgIFZlY3RvcjxSZWZQdHI8RmlsdGVy
T3BlcmF0aW9uPj4mIGZpbHRlck9wZXJhdGlvbnMgPSBtX3N0YXRlLnN0eWxlKCktPm11dGFibGVG
aWx0ZXIoKS5vcGVyYXRpb25zKCk7Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGZpbHRl
ck9wZXJhdGlvbnMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgUmVmUHRyPEZpbHRlck9wZXJhdGlv
bj4gZmlsdGVyT3BlcmF0aW9uID0gZmlsdGVyT3BlcmF0aW9ucy5hdChpKTsKLSAgICAgICAgaWYg
KGZpbHRlck9wZXJhdGlvbi0+dHlwZSgpID09IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NKSB7Ci0g
ICAgICAgICAgICBDdXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbUZpbHRlciA9IHN0YXRpY19j
YXN0PEN1c3RvbUZpbHRlck9wZXJhdGlvbio+KGZpbHRlck9wZXJhdGlvbi5nZXQoKSk7Ci0gICAg
ICAgICAgICBBU1NFUlQoY3VzdG9tRmlsdGVyLT5wcm9ncmFtKCkpOwotICAgICAgICAgICAgU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtKiBwcm9ncmFtID0gc3RhdGljX2Nhc3Q8U3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtKj4oY3VzdG9tRmlsdGVyLT5wcm9ncmFtKCkpOwotICAgICAgICAgICAgLy8g
Tm90ZSB0aGF0IHRoZSBTdHlsZVBlbmRpbmdTaGFkZXJzIGNvdWxkIGJlIGFscmVhZHkgcmVzb2x2
ZWQgdG8gU3R5bGVDYWNoZWRTaGFkZXJzLiBUaGF0J3MgYmVjYXVzZSB0aGUgcnVsZSB3YXMgbWF0
Y2hlZCBiZWZvcmUuCi0gICAgICAgICAgICAvLyBIb3dldmVyLCB0aGUgU3R5bGVDdXN0b21GaWx0
ZXJQcm9ncmFtIHRoYXQgd2FzIGluaXRpYWxseSBjcmVhdGVkIGNvdWxkIGhhdmUgYmVlbiByZW1v
dmVkIGZyb20gdGhlIGNhY2hlIGluIHRoZSBtZWFud2hpbGUsCi0gICAgICAgICAgICAvLyBtZWFu
aW5nIHRoYXQgd2UgZ2V0IGEgbmV3IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSBoZXJlIHRoYXQg
aXMgbm90IHlldCBpbiB0aGUgY2FjaGUsIGJ1dCBhbHJlYWR5IGhhcyBsb2FkZWQgU3R5bGVTaGFk
ZXJzLgotICAgICAgICAgICAgaWYgKCFwcm9ncmFtLT5oYXNQZW5kaW5nU2hhZGVycygpICYmIHBy
b2dyYW0tPmluQ2FjaGUoKSkKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAg
IGlmICghbV9jdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUpCi0gICAgICAgICAgICAgICAgbV9jdXN0
b21GaWx0ZXJQcm9ncmFtQ2FjaGUgPSBhZG9wdFB0cihuZXcgU3R5bGVDdXN0b21GaWx0ZXJQcm9n
cmFtQ2FjaGUoKSk7Ci0gICAgICAgICAgICBSZWZQdHI8U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
PiBzdHlsZVByb2dyYW0gPSBtX2N1c3RvbUZpbHRlclByb2dyYW1DYWNoZS0+bG9va3VwKHByb2dy
YW0pOwotICAgICAgICAgICAgaWYgKHN0eWxlUHJvZ3JhbS5nZXQoKSkKLSAgICAgICAgICAgICAg
ICBjdXN0b21GaWx0ZXItPnNldFByb2dyYW0oc3R5bGVQcm9ncmFtLnJlbGVhc2UoKSk7Ci0gICAg
ICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICBpZiAocHJvZ3JhbS0+dmVydGV4U2hhZGVy
KCkgJiYgcHJvZ3JhbS0+dmVydGV4U2hhZGVyKCktPmlzUGVuZGluZ1NoYWRlcigpKSB7Ci0gICAg
ICAgICAgICAgICAgICAgIFdlYktpdENTU1NoYWRlclZhbHVlKiBzaGFkZXJWYWx1ZSA9IHN0YXRp
Y19jYXN0PFN0eWxlUGVuZGluZ1NoYWRlcio+KHByb2dyYW0tPnZlcnRleFNoYWRlcigpKS0+Y3Nz
U2hhZGVyVmFsdWUoKTsKLSAgICAgICAgICAgICAgICAgICAgcHJvZ3JhbS0+c2V0VmVydGV4U2hh
ZGVyKHNoYWRlclZhbHVlLT5jYWNoZWRTaGFkZXIoY2FjaGVkUmVzb3VyY2VMb2FkZXIpKTsKLSAg
ICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKHByb2dyYW0tPmZyYWdtZW50U2hh
ZGVyKCkgJiYgcHJvZ3JhbS0+ZnJhZ21lbnRTaGFkZXIoKS0+aXNQZW5kaW5nU2hhZGVyKCkpIHsK
LSAgICAgICAgICAgICAgICAgICAgV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIHNoYWRlclZhbHVlID0g
c3RhdGljX2Nhc3Q8U3R5bGVQZW5kaW5nU2hhZGVyKj4ocHJvZ3JhbS0+ZnJhZ21lbnRTaGFkZXIo
KSktPmNzc1NoYWRlclZhbHVlKCk7Ci0gICAgICAgICAgICAgICAgICAgIHByb2dyYW0tPnNldEZy
YWdtZW50U2hhZGVyKHNoYWRlclZhbHVlLT5jYWNoZWRTaGFkZXIoY2FjaGVkUmVzb3VyY2VMb2Fk
ZXIpKTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgbV9jdXN0b21GaWx0ZXJQ
cm9ncmFtQ2FjaGUtPmFkZChwcm9ncmFtKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAg
IH0KLSAgICBtX3N0YXRlLnNldEhhc1BlbmRpbmdTaGFkZXJzKGZhbHNlKTsKLX0KLQotc3RhdGlj
IGJvb2wgc29ydFBhcmFtZXRlcnNCeU5hbWVDb21wYXJhdG9yKGNvbnN0IFJlZlB0cjxDdXN0b21G
aWx0ZXJQYXJhbWV0ZXI+JiBhLCBjb25zdCBSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiYg
YikKLXsKLSAgICByZXR1cm4gY29kZVBvaW50Q29tcGFyZUxlc3NUaGFuKGEtPm5hbWUoKSwgYi0+
bmFtZSgpKTsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IFN0eWxlUmVz
b2x2ZXI6OnBhcnNlQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1l
LCBDU1NWYWx1ZUxpc3QqIHZhbHVlcywgYm9vbCBpc0FycmF5KQotewotICAgIFJlZlB0cjxDdXN0
b21GaWx0ZXJBcnJheVBhcmFtZXRlcj4gYXJyYXlQYXJhbWV0ZXIgPSBDdXN0b21GaWx0ZXJBcnJh
eVBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUsIGlzQXJyYXkgPyBDdXN0b21GaWx0ZXJBcnJheVBhcmFt
ZXRlcjo6QVJSQVkgOiBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcjo6TUFUUklYKTsKLSAgICBm
b3IgKHVuc2lnbmVkIGkgPSAwLCBsZW5ndGggPSB2YWx1ZXMtPmxlbmd0aCgpOyBpIDwgbGVuZ3Ro
OyArK2kpIHsKLSAgICAgICAgQ1NTVmFsdWUqIHZhbHVlID0gdmFsdWVzLT5pdGVtV2l0aG91dEJv
dW5kc0NoZWNrKGkpOwotICAgICAgICBpZiAoIXZhbHVlLT5pc1ByaW1pdGl2ZVZhbHVlKCkpCi0g
ICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1pdGl2
ZVZhbHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZSh2YWx1ZSk7Ci0gICAgICAgIGlmIChwcmltaXRp
dmVWYWx1ZS0+cHJpbWl0aXZlVHlwZSgpICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVS
KQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIGFycmF5UGFyYW1ldGVyLT5hZGRWYWx1
ZShwcmltaXRpdmVWYWx1ZS0+Z2V0RG91YmxlVmFsdWUoKSk7Ci0gICAgfQotICAgIHJldHVybiBh
cnJheVBhcmFtZXRlci5yZWxlYXNlKCk7Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFy
YW1ldGVyPiBTdHlsZVJlc29sdmVyOjpwYXJzZUN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKGNv
bnN0IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWVMaXN0KiB2YWx1ZXMpCi17Ci0gICAgQVNTRVJUKHZh
bHVlcy0+bGVuZ3RoKCkpOwotICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBmaXJzdFByaW1pdGl2ZVZh
bHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZSh2YWx1ZXMtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2so
MCkpOwotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcj4gY29sb3JQYXJhbWV0
ZXIgPSBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUpOwotICAgIGNvbG9y
UGFyYW1ldGVyLT5zZXRDb2xvcihDb2xvcihmaXJzdFByaW1pdGl2ZVZhbHVlLT5nZXRSR0JBMzJW
YWx1ZSgpKSk7Ci0gICAgcmV0dXJuIGNvbG9yUGFyYW1ldGVyLnJlbGVhc2UoKTsKLX0KLQotUGFz
c1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IFN0eWxlUmVzb2x2ZXI6OnBhcnNlQ3VzdG9t
RmlsdGVyTnVtYmVyUGFyYW1ldGVyKGNvbnN0IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWVMaXN0KiB2
YWx1ZXMpCi17Ci0gICAgUmVmUHRyPEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcj4gbnVtYmVy
UGFyYW1ldGVyID0gQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyOjpjcmVhdGUobmFtZSk7Ci0g
ICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHZhbHVlcy0+bGVuZ3RoKCk7ICsraSkgewotICAg
ICAgICBDU1NWYWx1ZSogdmFsdWUgPSB2YWx1ZXMtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soaSk7
Ci0gICAgICAgIGlmICghdmFsdWUtPmlzUHJpbWl0aXZlVmFsdWUoKSkKLSAgICAgICAgICAgIHJl
dHVybiAwOwotICAgICAgICBDU1NQcmltaXRpdmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUgPSB0b0NT
U1ByaW1pdGl2ZVZhbHVlKHZhbHVlKTsKLSAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5wcmlt
aXRpdmVUeXBlKCkgIT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpCi0gICAgICAgICAg
ICByZXR1cm4gMDsKLSAgICAgICAgbnVtYmVyUGFyYW1ldGVyLT5hZGRWYWx1ZShwcmltaXRpdmVW
YWx1ZS0+Z2V0RG91YmxlVmFsdWUoKSk7Ci0gICAgfQotICAgIHJldHVybiBudW1iZXJQYXJhbWV0
ZXIucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gU3R5
bGVSZXNvbHZlcjo6cGFyc2VDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIoY29uc3QgU3Ry
aW5nJiBuYW1lLCBDU1NWYWx1ZUxpc3QqIHZhbHVlcykKLXsKLSAgICBSZWZQdHI8Q3VzdG9tRmls
dGVyVHJhbnNmb3JtUGFyYW1ldGVyPiB0cmFuc2Zvcm1QYXJhbWV0ZXIgPSBDdXN0b21GaWx0ZXJU
cmFuc2Zvcm1QYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKTsKLSAgICBUcmFuc2Zvcm1PcGVyYXRpb25z
IG9wZXJhdGlvbnM7Ci0gICAgdHJhbnNmb3Jtc0ZvclZhbHVlKG1fc3RhdGUuc3R5bGUoKSwgbV9z
dGF0ZS5yb290RWxlbWVudFN0eWxlKCksIHZhbHVlcywgb3BlcmF0aW9ucyk7Ci0gICAgdHJhbnNm
b3JtUGFyYW1ldGVyLT5zZXRPcGVyYXRpb25zKG9wZXJhdGlvbnMpOwotICAgIHJldHVybiB0cmFu
c2Zvcm1QYXJhbWV0ZXIucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBh
cmFtZXRlcj4gU3R5bGVSZXNvbHZlcjo6cGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXIoY29uc3Qg
U3RyaW5nJiBuYW1lLCBDU1NWYWx1ZSogcGFyYW1ldGVyVmFsdWUpCi17Ci0gICAgLy8gRklYTUU6
IEltcGxlbWVudCBvdGhlciBwYXJhbWV0ZXJzIHR5cGVzIHBhcnNpbmcuCi0gICAgLy8gdGV4dHVy
ZXM6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTQ0MgotICAgIC8v
IG1hdDIsIG1hdDMsIG1hdDQ6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD03MTQ0NAotICAgIC8vIE51bWJlciBwYXJhbWV0ZXJzIGFyZSB3cmFwcGVkIGluc2lkZSBhIENT
U1ZhbHVlTGlzdCBhbmQgYWxsCi0gICAgLy8gdGhlIG90aGVyIGZ1bmN0aW9ucyB2YWx1ZXMgaW5o
ZXJpdCBmcm9tIENTU1ZhbHVlTGlzdC4KLSAgICBpZiAoIXBhcmFtZXRlclZhbHVlLT5pc1ZhbHVl
TGlzdCgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIENTU1ZhbHVlTGlzdCogdmFsdWVzID0g
dG9DU1NWYWx1ZUxpc3QocGFyYW1ldGVyVmFsdWUpOwotICAgIGlmICghdmFsdWVzLT5sZW5ndGgo
KSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBpZiAocGFyYW1ldGVyVmFsdWUtPmlzV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlKCkpCi0gICAgICAgIHJldHVybiBwYXJzZUN1c3RvbUZpbHRl
ckFycmF5UGFyYW1ldGVyKG5hbWUsIHZhbHVlcywgdHJ1ZSk7Ci0KLSAgICBpZiAocGFyYW1ldGVy
VmFsdWUtPmlzV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSgpKQotICAgICAgICByZXR1cm4gcGFy
c2VDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcihuYW1lLCB2YWx1ZXMsIGZhbHNlKTsKLQotICAg
IC8vIElmIHRoZSBmaXJzdCB2YWx1ZSBvZiB0aGUgbGlzdCBpcyBhIHRyYW5zZm9ybSBmdW5jdGlv
biwKLSAgICAvLyB0aGVuIHdlIGNvdWxkIHNhZmVseSBhc3N1bWUgdGhhdCBhbGwgdGhlIHJlbWFp
bmluZyBpdGVtcwotICAgIC8vIGFyZSB0cmFuc2Zvcm1zLiBwYXJzZUN1c3RvbUZpbHRlclRyYW5z
Zm9ybVBhcmFtZXRlciB3aWxsCi0gICAgLy8gcmV0dXJuIDAgaWYgdGhhdCBhc3N1bXB0aW9uIGlz
IGluY29ycmVjdC4KLSAgICBpZiAodmFsdWVzLT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDApLT5p
c1dlYktpdENTU1RyYW5zZm9ybVZhbHVlKCkpCi0gICAgICAgIHJldHVybiBwYXJzZUN1c3RvbUZp
bHRlclRyYW5zZm9ybVBhcmFtZXRlcihuYW1lLCB2YWx1ZXMpOwotCi0gICAgLy8gV2UgY2FuIG9u
bHkgaGF2ZSBhcnJheXMgb2YgY29sb3JzIG9yIG51bWJlcnMsIHNvIHVzZSB0aGUgZmlyc3QgdmFs
dWUgdG8gY2hvb3NlIGJldHdlZW4gdGhvc2UgdHdvLgotICAgIC8vIFdlIG5lZWQgdXAgdG8gNCB2
YWx1ZXMgKGFsbCBib29sZWFucyBvciBhbGwgbnVtYmVycykuCi0gICAgaWYgKCF2YWx1ZXMtPml0
ZW1XaXRob3V0Qm91bmRzQ2hlY2soMCktPmlzUHJpbWl0aXZlVmFsdWUoKSB8fCB2YWx1ZXMtPmxl
bmd0aCgpID4gNCkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgCi0gICAgQ1NTUHJpbWl0aXZlVmFs
dWUqIGZpcnN0UHJpbWl0aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2ZVZhbHVlKHZhbHVlcy0+aXRl
bVdpdGhvdXRCb3VuZHNDaGVjaygwKSk7Ci0gICAgaWYgKGZpcnN0UHJpbWl0aXZlVmFsdWUtPnBy
aW1pdGl2ZVR5cGUoKSA9PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikKLSAgICAgICAg
cmV0dXJuIHBhcnNlQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKG5hbWUsIHZhbHVlcyk7Ci0K
LSAgICBpZiAoZmlyc3RQcmltaXRpdmVWYWx1ZS0+cHJpbWl0aXZlVHlwZSgpID09IENTU1ByaW1p
dGl2ZVZhbHVlOjpDU1NfUkdCQ09MT1IpCi0gICAgICAgIHJldHVybiBwYXJzZUN1c3RvbUZpbHRl
ckNvbG9yUGFyYW1ldGVyKG5hbWUsIHZhbHVlcyk7Ci0KLSAgICByZXR1cm4gMDsKLX0KLQotYm9v
bCBTdHlsZVJlc29sdmVyOjpwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QoQ1NTVmFsdWUq
IHBhcmFtZXRlcnNWYWx1ZSwgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVyTGlz
dCkKLXsKLSAgICBIYXNoU2V0PFN0cmluZz4ga25vd25QYXJhbWV0ZXJOYW1lczsKLSAgICBDU1NW
YWx1ZUxpc3RJdGVyYXRvciBwYXJhbWV0ZXJJdGVyYXRvcihwYXJhbWV0ZXJzVmFsdWUpOwotICAg
IGZvciAoOyBwYXJhbWV0ZXJJdGVyYXRvci5oYXNNb3JlKCk7IHBhcmFtZXRlckl0ZXJhdG9yLmFk
dmFuY2UoKSkgewotICAgICAgICBpZiAoIXBhcmFtZXRlckl0ZXJhdG9yLnZhbHVlKCktPmlzVmFs
dWVMaXN0KCkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIENTU1ZhbHVlTGlz
dEl0ZXJhdG9yIGl0ZXJhdG9yKHBhcmFtZXRlckl0ZXJhdG9yLnZhbHVlKCkpOwotICAgICAgICBp
ZiAoIWl0ZXJhdG9yLmlzUHJpbWl0aXZlVmFsdWUoKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1pdGl2ZVZhbHVlID0gdG9DU1NQcmlt
aXRpdmVWYWx1ZShpdGVyYXRvci52YWx1ZSgpKTsKLSAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVl
LT5wcmltaXRpdmVUeXBlKCkgIT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19TVFJJTkcpCi0gICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIAotICAgICAgICBTdHJpbmcgbmFtZSA9IHBy
aW1pdGl2ZVZhbHVlLT5nZXRTdHJpbmdWYWx1ZSgpOwotICAgICAgICAvLyBEbyBub3QgYWxsb3cg
ZHVwbGljYXRlIHBhcmFtZXRlciBuYW1lcy4KLSAgICAgICAgaWYgKGtub3duUGFyYW1ldGVyTmFt
ZXMuY29udGFpbnMobmFtZSkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIGtu
b3duUGFyYW1ldGVyTmFtZXMuYWRkKG5hbWUpOwotICAgICAgICAKLSAgICAgICAgaXRlcmF0b3Iu
YWR2YW5jZSgpOwotICAgICAgICAKLSAgICAgICAgaWYgKCFpdGVyYXRvci5oYXNNb3JlKCkpCi0g
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIAotICAgICAgICBSZWZQdHI8Q3VzdG9t
RmlsdGVyUGFyYW1ldGVyPiBwYXJhbWV0ZXIgPSBwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcihu
YW1lLCBpdGVyYXRvci52YWx1ZSgpKTsKLSAgICAgICAgaWYgKCFwYXJhbWV0ZXIpCi0gICAgICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIHBhcmFtZXRlckxpc3QuYXBwZW5kKHBhcmFtZXRl
ci5yZWxlYXNlKCkpOwotICAgIH0KLSAgICAKLSAgICAvLyBNYWtlIHN1cmUgd2Ugc29ydCB0aGUg
cGFyYW1ldGVycyBiZWZvcmUgcGFzc2luZyB0aGVtIGRvd24gdG8gdGhlIEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi4KLSAgICBzdGQ6OnNvcnQocGFyYW1ldGVyTGlzdC5iZWdpbigpLCBwYXJhbWV0ZXJM
aXN0LmVuZCgpLCBzb3J0UGFyYW1ldGVyc0J5TmFtZUNvbXBhcmF0b3IpOwotICAgIAotICAgIHJl
dHVybiB0cnVlOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gU3R5bGVS
ZXNvbHZlcjo6Y3JlYXRlQ3VzdG9tRmlsdGVyT3BlcmF0aW9uV2l0aEF0UnVsZVJlZmVyZW5jZVN5
bnRheChXZWJLaXRDU1NGaWx0ZXJWYWx1ZSogZmlsdGVyVmFsdWUpCi17Ci0gICAgLy8gRklYTUU6
IEltcGxlbWVudCBzdHlsZSByZXNvbHV0aW9uIGZvciB0aGUgY3VzdG9tIGZpbHRlciBhdC1ydWxl
IHJlZmVyZW5jZSBzeW50YXguCi0gICAgVU5VU0VEX1BBUkFNKGZpbHRlclZhbHVlKTsKLSAgICBy
ZXR1cm4gMDsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJPcGVyYXRpb24+IFN0eWxlUmVz
b2x2ZXI6OmNyZWF0ZUN1c3RvbUZpbHRlck9wZXJhdGlvbldpdGhJbmxpbmVTeW50YXgoV2ViS2l0
Q1NTRmlsdGVyVmFsdWUqIGZpbHRlclZhbHVlKQotewotICAgIENTU1ZhbHVlKiBzaGFkZXJzVmFs
dWUgPSBmaWx0ZXJWYWx1ZS0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjaygwKTsKLSAgICBBU1NFUlRf
V0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTihzaGFkZXJzVmFsdWUtPmlzVmFsdWVMaXN0KCkpOwot
ICAgIENTU1ZhbHVlTGlzdCogc2hhZGVyc0xpc3QgPSB0b0NTU1ZhbHVlTGlzdChzaGFkZXJzVmFs
dWUpOwotCi0gICAgdW5zaWduZWQgc2hhZGVyc0xpc3RMZW5ndGggPSBzaGFkZXJzTGlzdC0+bGVu
Z3RoKCk7Ci0gICAgQVNTRVJUKHNoYWRlcnNMaXN0TGVuZ3RoKTsKLQotCi0gICAgV2ViS2l0Q1NT
U2hhZGVyVmFsdWUqIHZlcnRleFNoYWRlciA9IDA7Ci0gICAgV2ViS2l0Q1NTU2hhZGVyVmFsdWUq
IGZyYWdtZW50U2hhZGVyID0gMDsKLQotICAgIGlmIChzaGFkZXJzTGlzdC0+aXRlbVdpdGhvdXRC
b3VuZHNDaGVjaygwKS0+aXNXZWJLaXRDU1NTaGFkZXJWYWx1ZSgpKQotICAgICAgICB2ZXJ0ZXhT
aGFkZXIgPSB0b1dlYktpdENTU1NoYWRlclZhbHVlKHNoYWRlcnNMaXN0LT5pdGVtV2l0aG91dEJv
dW5kc0NoZWNrKDApKTsKLQotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBl
ID0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkU7Ci0gICAgQ3VzdG9tRmlsdGVy
UHJvZ3JhbU1peFNldHRpbmdzIG1peFNldHRpbmdzOwotCi0gICAgaWYgKHNoYWRlcnNMaXN0TGVu
Z3RoID4gMSkgewotICAgICAgICBDU1NWYWx1ZSogZnJhZ21lbnRTaGFkZXJPck1peEZ1bmN0aW9u
ID0gc2hhZGVyc0xpc3QtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMSk7Ci0gICAgICAgIGlmIChm
cmFnbWVudFNoYWRlck9yTWl4RnVuY3Rpb24tPmlzV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgp
KSB7Ci0gICAgICAgICAgICBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKiBtaXhGdW5jdGlvbiA9
IHRvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZShmcmFnbWVudFNoYWRlck9yTWl4RnVuY3Rpb24p
OwotICAgICAgICAgICAgQ1NTVmFsdWVMaXN0SXRlcmF0b3IgaXRlcmF0b3IobWl4RnVuY3Rpb24p
OwotCi0gICAgICAgICAgICBBU1NFUlQobWl4RnVuY3Rpb24tPmxlbmd0aCgpKTsKLSAgICAgICAg
ICAgIGlmIChpdGVyYXRvci52YWx1ZSgpLT5pc1dlYktpdENTU1NoYWRlclZhbHVlKCkpCi0gICAg
ICAgICAgICAgICAgZnJhZ21lbnRTaGFkZXIgPSB0b1dlYktpdENTU1NoYWRlclZhbHVlKGl0ZXJh
dG9yLnZhbHVlKCkpOwotCi0gICAgICAgICAgICBpdGVyYXRvci5hZHZhbmNlKCk7Ci0KLSAgICAg
ICAgICAgIEFTU0VSVChtaXhGdW5jdGlvbi0+bGVuZ3RoKCkgPD0gMyk7Ci0gICAgICAgICAgICB3
aGlsZSAoaXRlcmF0b3IuaGFzTW9yZSgpKSB7Ci0gICAgICAgICAgICAgICAgQ1NTUHJpbWl0aXZl
VmFsdWUqIHByaW1pdGl2ZVZhbHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZShpdGVyYXRvci52YWx1
ZSgpKTsKLSAgICAgICAgICAgICAgICBpZiAoQ1NTUGFyc2VyOjppc0JsZW5kTW9kZShwcmltaXRp
dmVWYWx1ZS0+Z2V0VmFsdWVJRCgpKSkKLSAgICAgICAgICAgICAgICAgICAgbWl4U2V0dGluZ3Mu
YmxlbmRNb2RlID0gKnByaW1pdGl2ZVZhbHVlOwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKENT
U1BhcnNlcjo6aXNDb21wb3NpdGVPcGVyYXRvcihwcmltaXRpdmVWYWx1ZS0+Z2V0VmFsdWVJRCgp
KSkKLSAgICAgICAgICAgICAgICAgICAgbWl4U2V0dGluZ3MuY29tcG9zaXRlT3BlcmF0b3IgPSAq
cHJpbWl0aXZlVmFsdWU7Ci0gICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgICAgICBpdGVyYXRvci5hZHZhbmNl
KCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBwcm9ncmFt
VHlwZSA9IFBST0dSQU1fVFlQRV9OT19FTEVNRU5UX1RFWFRVUkU7Ci0gICAgICAgICAgICBpZiAo
ZnJhZ21lbnRTaGFkZXJPck1peEZ1bmN0aW9uLT5pc1dlYktpdENTU1NoYWRlclZhbHVlKCkpCi0g
ICAgICAgICAgICAgICAgZnJhZ21lbnRTaGFkZXIgPSB0b1dlYktpdENTU1NoYWRlclZhbHVlKGZy
YWdtZW50U2hhZGVyT3JNaXhGdW5jdGlvbik7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAo
IXZlcnRleFNoYWRlciAmJiAhZnJhZ21lbnRTaGFkZXIpCi0gICAgICAgIHJldHVybiAwOwotCi0g
ICAgdW5zaWduZWQgbWVzaFJvd3MgPSAxOwotICAgIHVuc2lnbmVkIG1lc2hDb2x1bW5zID0gMTsK
LSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSA9IE1lc2hUeXBlQXR0YWNoZWQ7Ci0g
ICAgCi0gICAgQ1NTVmFsdWUqIHBhcmFtZXRlcnNWYWx1ZSA9IDA7Ci0gICAgCi0gICAgaWYgKGZp
bHRlclZhbHVlLT5sZW5ndGgoKSA+IDEpIHsKLSAgICAgICAgQ1NTVmFsdWVMaXN0SXRlcmF0b3Ig
aXRlcmF0b3IoZmlsdGVyVmFsdWUtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMSkpOwotICAgICAg
ICAKLSAgICAgICAgLy8gVGhlIHNlY29uZCB2YWx1ZSBtaWdodCBiZSB0aGUgbWVzaCBib3ggb3Ig
dGhlIGxpc3Qgb2YgcGFyYW1ldGVyczoKLSAgICAgICAgLy8gSWYgaXQgc3RhcnRzIHdpdGggYSBu
dW1iZXIgb3IgYW55IG9mIHRoZSBtZXNoLWJveCBpZGVudGlmaWVycyBpdCBpcyAKLSAgICAgICAg
Ly8gdGhlIG1lc2gtYm94IGxpc3QsIGlmIG5vdCBpdCBtZWFucyBpdCBpcyB0aGUgcGFyYW1ldGVy
cyBsaXN0LgotCi0gICAgICAgIGlmIChpdGVyYXRvci5oYXNNb3JlKCkgJiYgaXRlcmF0b3IuaXNQ
cmltaXRpdmVWYWx1ZSgpKSB7Ci0gICAgICAgICAgICBDU1NQcmltaXRpdmVWYWx1ZSogcHJpbWl0
aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2ZVZhbHVlKGl0ZXJhdG9yLnZhbHVlKCkpOwotICAgICAg
ICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5pc051bWJlcigpKSB7Ci0gICAgICAgICAgICAgICAg
Ly8gSWYgb25seSBvbmUgaW50ZWdlciB2YWx1ZSBpcyBzcGVjaWZpZWQsIGl0IHdpbGwgc2V0IGJv
dGgKLSAgICAgICAgICAgICAgICAvLyB0aGUgcm93cyBhbmQgdGhlIGNvbHVtbnMuCi0gICAgICAg
ICAgICAgICAgbWVzaENvbHVtbnMgPSBtZXNoUm93cyA9IHByaW1pdGl2ZVZhbHVlLT5nZXRJbnRW
YWx1ZSgpOwotICAgICAgICAgICAgICAgIGl0ZXJhdG9yLmFkdmFuY2UoKTsKLSAgICAgICAgICAg
ICAgICAKLSAgICAgICAgICAgICAgICAvLyBUcnkgdG8gbWF0Y2ggYW5vdGhlciBudW1iZXIgZm9y
IHRoZSByb3dzLgotICAgICAgICAgICAgICAgIGlmIChpdGVyYXRvci5oYXNNb3JlKCkgJiYgaXRl
cmF0b3IuaXNQcmltaXRpdmVWYWx1ZSgpKSB7Ci0gICAgICAgICAgICAgICAgICAgIENTU1ByaW1p
dGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUoaXRlcmF0b3Iu
dmFsdWUoKSk7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChwcmltaXRpdmVWYWx1ZS0+aXNOdW1i
ZXIoKSkgewotICAgICAgICAgICAgICAgICAgICAgICAgbWVzaFJvd3MgPSBwcmltaXRpdmVWYWx1
ZS0+Z2V0SW50VmFsdWUoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGl0ZXJhdG9yLmFkdmFu
Y2UoKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIH0KLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgaWYgKGl0ZXJhdG9yLmhhc01vcmUo
KSAmJiBpdGVyYXRvci5pc1ByaW1pdGl2ZVZhbHVlKCkpIHsKLSAgICAgICAgICAgIENTU1ByaW1p
dGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUoaXRlcmF0b3Iu
dmFsdWUoKSk7Ci0gICAgICAgICAgICBpZiAocHJpbWl0aXZlVmFsdWUtPmdldFZhbHVlSUQoKSA9
PSBDU1NWYWx1ZURldGFjaGVkKSB7Ci0gICAgICAgICAgICAgICAgbWVzaFR5cGUgPSBNZXNoVHlw
ZURldGFjaGVkOwotICAgICAgICAgICAgICAgIGl0ZXJhdG9yLmFkdmFuY2UoKTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgaWYgKCFpdGVyYXRvci5pbmRleCgp
KSB7Ci0gICAgICAgICAgICAvLyBJZiBubyB2YWx1ZSB3YXMgY29uc3VtZWQgZnJvbSB0aGUgbWVz
aCB2YWx1ZSwgdGhlbiBpdCBpcyBqdXN0IGEgcGFyYW1ldGVyIGxpc3QsIG1lYW5pbmcgdGhhdCB3
ZSBlbmQgdXAKLSAgICAgICAgICAgIC8vIGhhdmluZyBqdXN0IHR3byBDU1NMaXN0VmFsdWVzOiBs
aXN0IG9mIHNoYWRlcnMgYW5kIGxpc3Qgb2YgcGFyYW1ldGVycy4KLSAgICAgICAgICAgIEFTU0VS
VChmaWx0ZXJWYWx1ZS0+bGVuZ3RoKCkgPT0gMik7Ci0gICAgICAgICAgICBwYXJhbWV0ZXJzVmFs
dWUgPSBmaWx0ZXJWYWx1ZS0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjaygxKTsKLSAgICAgICAgfQot
ICAgIH0KLSAgICAKLSAgICBpZiAoZmlsdGVyVmFsdWUtPmxlbmd0aCgpID4gMiAmJiAhcGFyYW1l
dGVyc1ZhbHVlKQotICAgICAgICBwYXJhbWV0ZXJzVmFsdWUgPSBmaWx0ZXJWYWx1ZS0+aXRlbVdp
dGhvdXRCb3VuZHNDaGVjaygyKTsKLSAgICAKLSAgICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0
IHBhcmFtZXRlckxpc3Q7Ci0gICAgaWYgKHBhcmFtZXRlcnNWYWx1ZSAmJiAhcGFyc2VDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJMaXN0KHBhcmFtZXRlcnNWYWx1ZSwgcGFyYW1ldGVyTGlzdCkpCi0gICAg
ICAgIHJldHVybiAwOwotCi0gICAgUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IHByb2dyYW0g
PSBsb29rdXBDdXN0b21GaWx0ZXJQcm9ncmFtKHZlcnRleFNoYWRlciwgZnJhZ21lbnRTaGFkZXIs
IHByb2dyYW1UeXBlLCBtaXhTZXR0aW5ncywgbWVzaFR5cGUpOwotICAgIHJldHVybiBDdXN0b21G
aWx0ZXJPcGVyYXRpb246OmNyZWF0ZShwcm9ncmFtLnJlbGVhc2UoKSwgcGFyYW1ldGVyTGlzdCwg
bWVzaFJvd3MsIG1lc2hDb2x1bW5zKTsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJPcGVy
YXRpb24+IFN0eWxlUmVzb2x2ZXI6OmNyZWF0ZUN1c3RvbUZpbHRlck9wZXJhdGlvbihXZWJLaXRD
U1NGaWx0ZXJWYWx1ZSogZmlsdGVyVmFsdWUpCi17Ci0gICAgQVNTRVJUKGZpbHRlclZhbHVlLT5s
ZW5ndGgoKSk7Ci0gICAgYm9vbCBpc0F0UnVsZVJlZmVyZW5jZVN5bnRheCA9IGZpbHRlclZhbHVl
LT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDApLT5pc1ByaW1pdGl2ZVZhbHVlKCk7Ci0gICAgcmV0
dXJuIGlzQXRSdWxlUmVmZXJlbmNlU3ludGF4ID8gY3JlYXRlQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
V2l0aEF0UnVsZVJlZmVyZW5jZVN5bnRheChmaWx0ZXJWYWx1ZSkgOiBjcmVhdGVDdXN0b21GaWx0
ZXJPcGVyYXRpb25XaXRoSW5saW5lU3ludGF4KGZpbHRlclZhbHVlKTsKLX0KLQotI2VuZGlmCi0K
IGJvb2wgU3R5bGVSZXNvbHZlcjo6Y3JlYXRlRmlsdGVyT3BlcmF0aW9ucyhDU1NWYWx1ZSogaW5W
YWx1ZSwgRmlsdGVyT3BlcmF0aW9ucyYgb3V0T3BlcmF0aW9ucykKIHsKICAgICBTdGF0ZSYgc3Rh
dGUgPSBtX3N0YXRlOwpAQCAtMzc5NCwyMSArMzQzMSw2IEBAIGJvb2wgU3R5bGVSZXNvbHZlcjo6
Y3JlYXRlRmlsdGVyT3BlcmF0aW9ucyhDU1NWYWx1ZSogaW5WYWx1ZSwgRmlsdGVyT3BlcmF0aW9u
cyYKICAgICAgICAgV2ViS2l0Q1NTRmlsdGVyVmFsdWUqIGZpbHRlclZhbHVlID0gdG9XZWJLaXRD
U1NGaWx0ZXJWYWx1ZShpLnZhbHVlKCkpOwogICAgICAgICBGaWx0ZXJPcGVyYXRpb246Ok9wZXJh
dGlvblR5cGUgb3BlcmF0aW9uVHlwZSA9IGZpbHRlck9wZXJhdGlvbkZvclR5cGUoZmlsdGVyVmFs
dWUtPm9wZXJhdGlvblR5cGUoKSk7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAg
IGlmIChvcGVyYXRpb25UeXBlID09IEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RPTSkg
ewotICAgICAgICAgICAgLy8gVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIGlzIG5vdCBz
dXBwb3NlZCB0byBlbmQgdXAgaW4gdGhlIFJlbmRlclN0eWxlLgotICAgICAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQotICAgICAg
ICBpZiAob3BlcmF0aW9uVHlwZSA9PSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTSkgewotICAgICAg
ICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gb3BlcmF0aW9uID0gY3JlYXRlQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uKGZpbHRlclZhbHVlKTsKLSAgICAgICAgICAgIGlmICghb3BlcmF0
aW9uKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIAotICAgICAg
ICAgICAgb3BlcmF0aW9ucy5vcGVyYXRpb25zKCkuYXBwZW5kKG9wZXJhdGlvbik7Ci0gICAgICAg
ICAgICBjb250aW51ZTsKLSAgICAgICAgfQotI2VuZGlmCiAgICAgICAgIGlmIChvcGVyYXRpb25U
eXBlID09IEZpbHRlck9wZXJhdGlvbjo6UkVGRVJFTkNFKSB7CiAjaWYgRU5BQkxFKFNWRykKICAg
ICAgICAgICAgIGlmIChmaWx0ZXJWYWx1ZS0+bGVuZ3RoKCkgIT0gMSkKQEAgLTQwOTAsMTEgKzM3
MTIsNiBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6OmxvYWRQZW5kaW5nUmVzb3VyY2VzKCkKICAgICAv
LyBTdGFydCBsb2FkaW5nIGltYWdlcyByZWZlcmVuY2VkIGJ5IHRoaXMgc3R5bGUuCiAgICAgbG9h
ZFBlbmRpbmdJbWFnZXMoKTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAvLyBTdGFy
dCBsb2FkaW5nIHRoZSBzaGFkZXJzIHJlZmVyZW5jZWQgYnkgdGhpcyBzdHlsZS4KLSAgICBsb2Fk
UGVuZGluZ1NoYWRlcnMoKTsKLSNlbmRpZgotICAgIAogI2lmIEVOQUJMRShDU1NfRklMVEVSUykg
JiYgRU5BQkxFKFNWRykKICAgICAvLyBTdGFydCBsb2FkaW5nIHRoZSBTVkcgRG9jdW1lbnRzIHJl
ZmVyZW5jZWQgYnkgdGhpcyBzdHlsZS4KICAgICBsb2FkUGVuZGluZ1NWR0RvY3VtZW50cygpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmgKaW5kZXggY2E1ODVmZC4uYjA1Y2E3NiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVSZXNvbHZlci5oCkBAIC0zOCw5ICszOCw2IEBACiAjaW5jbHVkZSAiU3R5
bGVJbmhlcml0ZWREYXRhLmgiCiAjaW5jbHVkZSAiU3R5bGVTY29wZVJlc29sdmVyLmgiCiAjaW5j
bHVkZSAiVmlld3BvcnRTdHlsZVJlc29sdmVyLmgiCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQot
I2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0YW50cy5oIgotI2VuZGlmCiAjaW5jbHVkZSA8d3Rm
L0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQ
dHIuaD4KQEAgLTY0LDExICs2MSw2IEBAIGNsYXNzIENTU1NlbGVjdG9yOwogY2xhc3MgQ1NTU3R5
bGVTaGVldDsKIGNsYXNzIENTU1ZhbHVlOwogY2xhc3MgQ29udGFpbmVyTm9kZTsKLWNsYXNzIEN1
c3RvbUZpbHRlck9wZXJhdGlvbjsKLWNsYXNzIEN1c3RvbUZpbHRlclBhcmFtZXRlcjsKLWNsYXNz
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3Q7Ci1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtOwot
c3RydWN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5nczsKIGNsYXNzIERvY3VtZW50Owog
Y2xhc3MgRGVwcmVjYXRlZFN0eWxlQnVpbGRlcjsKIGNsYXNzIEVsZW1lbnQ7CkBAIC04NCw3ICs3
Niw2IEBAIGNsYXNzIFJlbmRlclNjcm9sbGJhcjsKIGNsYXNzIFJ1bGVEYXRhOwogY2xhc3MgUnVs
ZVNldDsKIGNsYXNzIFNldHRpbmdzOwotY2xhc3MgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2Fj
aGU7CiBjbGFzcyBTdHlsZVNjb3BlUmVzb2x2ZXI7CiBjbGFzcyBTdHlsZUltYWdlOwogY2xhc3Mg
U3R5bGVLZXlmcmFtZTsKQEAgLTk3LDEzICs4OCwxMSBAQCBjbGFzcyBTdHlsZVJ1bGVIb3N0Owog
Y2xhc3MgU3R5bGVSdWxlS2V5ZnJhbWVzOwogY2xhc3MgU3R5bGVSdWxlUGFnZTsKIGNsYXNzIFN0
eWxlUnVsZVJlZ2lvbjsKLWNsYXNzIFN0eWxlU2hhZGVyOwogY2xhc3MgU3R5bGVTaGVldDsKIGNs
YXNzIFN0eWxlU2hlZXRMaXN0OwogY2xhc3MgU3R5bGVkRWxlbWVudDsKIGNsYXNzIFZpZXdwb3J0
U3R5bGVSZXNvbHZlcjsKIGNsYXNzIFdlYktpdENTU0ZpbHRlclZhbHVlOwotY2xhc3MgV2ViS2l0
Q1NTU2hhZGVyVmFsdWU7CiAKIGNsYXNzIE1lZGlhUXVlcnlSZXN1bHQgewogICAgIFdURl9NQUtF
X05PTkNPUFlBQkxFKE1lZGlhUXVlcnlSZXN1bHQpOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
QEAgLTI2NCwyMiArMjUzLDYgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQog
ICAgIGJvb2wgY3JlYXRlRmlsdGVyT3BlcmF0aW9ucyhDU1NWYWx1ZSogaW5WYWx1ZSwgRmlsdGVy
T3BlcmF0aW9ucyYgb3V0T3BlcmF0aW9ucyk7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
IFN0eWxlU2hhZGVyKiBzdHlsZVNoYWRlcihDU1NWYWx1ZSopOwotICAgIFN0eWxlU2hhZGVyKiBj
YWNoZWRPclBlbmRpbmdTdHlsZVNoYWRlckZyb21WYWx1ZShXZWJLaXRDU1NTaGFkZXJWYWx1ZSop
OwotICAgIGJvb2wgcGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0KENTU1ZhbHVlKiwgQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYpOwotICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFy
YW1ldGVyPiBwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENT
U1ZhbHVlKik7Ci0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IHBhcnNlQ3Vz
dG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lLCBDU1NWYWx1ZUxpc3Qq
KTsKLSAgICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gcGFyc2VDdXN0b21GaWx0
ZXJBcnJheVBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlzdCosIGJvb2wp
OwotICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBwYXJzZUN1c3RvbUZpbHRl
ck51bWJlclBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlzdCopOwotICAg
IFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBwYXJzZUN1c3RvbUZpbHRlclRyYW5z
Zm9ybVBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlzdCopOwotICAgIFBh
c3NSZWZQdHI8Q3VzdG9tRmlsdGVyT3BlcmF0aW9uPiBjcmVhdGVDdXN0b21GaWx0ZXJPcGVyYXRp
b25XaXRoQXRSdWxlUmVmZXJlbmNlU3ludGF4KFdlYktpdENTU0ZpbHRlclZhbHVlKik7Ci0gICAg
UGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJPcGVyYXRpb24+IGNyZWF0ZUN1c3RvbUZpbHRlck9wZXJh
dGlvbldpdGhJbmxpbmVTeW50YXgoV2ViS2l0Q1NTRmlsdGVyVmFsdWUqKTsKLSAgICBQYXNzUmVm
UHRyPEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gY3JlYXRlQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKFdl
YktpdENTU0ZpbHRlclZhbHVlKik7Ci0gICAgdm9pZCBsb2FkUGVuZGluZ1NoYWRlcnMoKTsKLSAg
ICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IGxvb2t1cEN1c3RvbUZpbHRlclByb2dy
YW0oV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIHZlcnRleFNoYWRlciwgV2ViS2l0Q1NTU2hhZGVyVmFs
dWUqIGZyYWdtZW50U2hhZGVyLCAKLSAgICAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUsIGNv
bnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyYsIEN1c3RvbUZpbHRlck1lc2hUeXBl
KTsKLSNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAgdm9pZCBsb2FkUGVuZGluZ1NWR0RvY3Vt
ZW50cygpOwogI2VuZGlmCkBAIC0zOTIsOSArMzY1LDYgQEAgcHVibGljOgogICAgICAgICAsIG1f
ZWxlbWVudEFmZmVjdGVkQnlDbGFzc1J1bGVzKGZhbHNlKQogICAgICAgICAsIG1fYXBwbHlQcm9w
ZXJ0eVRvUmVndWxhclN0eWxlKHRydWUpCiAgICAgICAgICwgbV9hcHBseVByb3BlcnR5VG9WaXNp
dGVkTGlua1N0eWxlKGZhbHNlKQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgLCBt
X2hhc1BlbmRpbmdTaGFkZXJzKGZhbHNlKQotI2VuZGlmCiAgICAgICAgICwgbV9saW5lSGVpZ2h0
VmFsdWUoMCkKICAgICAgICAgLCBtX2ZvbnREaXJ0eShmYWxzZSkKICAgICAgICAgLCBtX2hhc1VB
QXBwZWFyYW5jZShmYWxzZSkKQEAgLTQzMCwxMCArNDAwLDYgQEAgcHVibGljOgogI2lmIEVOQUJM
RShDU1NfRklMVEVSUykgJiYgRU5BQkxFKFNWRykKICAgICAgICAgUGVuZGluZ1NWR0RvY3VtZW50
U2V0JiBwZW5kaW5nU1ZHRG9jdW1lbnRzKCkgeyByZXR1cm4gbV9wZW5kaW5nU1ZHRG9jdW1lbnRz
OyB9CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIHZvaWQgc2V0SGFz
UGVuZGluZ1NoYWRlcnMoYm9vbCBoYXNQZW5kaW5nU2hhZGVycykgeyBtX2hhc1BlbmRpbmdTaGFk
ZXJzID0gaGFzUGVuZGluZ1NoYWRlcnM7IH0KLSAgICAgICAgYm9vbCBoYXNQZW5kaW5nU2hhZGVy
cygpIGNvbnN0IHsgcmV0dXJuIG1faGFzUGVuZGluZ1NoYWRlcnM7IH0KLSNlbmRpZgogCiAgICAg
ICAgIHZvaWQgc2V0TGluZUhlaWdodFZhbHVlKENTU1ZhbHVlKiB2YWx1ZSkgeyBtX2xpbmVIZWln
aHRWYWx1ZSA9IHZhbHVlOyB9CiAgICAgICAgIENTU1ZhbHVlKiBsaW5lSGVpZ2h0VmFsdWUoKSB7
IHJldHVybiBtX2xpbmVIZWlnaHRWYWx1ZTsgfQpAQCAtNDc4LDkgKzQ0NCw2IEBAIHB1YmxpYzoK
ICAgICAgICAgYm9vbCBtX2FwcGx5UHJvcGVydHlUb1Zpc2l0ZWRMaW5rU3R5bGU7CiAKICAgICAg
ICAgUGVuZGluZ0ltYWdlUHJvcGVydHlNYXAgbV9wZW5kaW5nSW1hZ2VQcm9wZXJ0aWVzOwotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgYm9vbCBtX2hhc1BlbmRpbmdTaGFkZXJzOwot
I2VuZGlmCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKSAmJiBFTkFCTEUoU1ZHKQogICAgICAgICBQ
ZW5kaW5nU1ZHRG9jdW1lbnRTZXQgbV9wZW5kaW5nU1ZHRG9jdW1lbnRzOwogI2VuZGlmCkBAIC01
OTAsMTAgKzU1Myw2IEBAIHByaXZhdGU6CiAKICAgICBTdGF0ZSBtX3N0YXRlOwogCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgIE93blB0cjxTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNo
ZT4gbV9jdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGU7Ci0jZW5kaWYKLQogICAgIGZyaWVuZCBjbGFz
cyBEZXByZWNhdGVkU3R5bGVCdWlsZGVyOwogICAgIGZyaWVuZCBib29sIG9wZXJhdG9yPT0oY29u
c3QgTWF0Y2hlZFByb3BlcnRpZXMmLCBjb25zdCBNYXRjaGVkUHJvcGVydGllcyYpOwogICAgIGZy
aWVuZCBib29sIG9wZXJhdG9yIT0oY29uc3QgTWF0Y2hlZFByb3BlcnRpZXMmLCBjb25zdCBNYXRj
aGVkUHJvcGVydGllcyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVs
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmNwcAppbmRleCA4YjNlZjAyLi5j
ZTExYTYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmNwcApAQCAtMzMsNyArMzMsNiBAQAogI2lu
Y2x1ZGUgIkNTU1Vua25vd25SdWxlLmgiCiAjaW5jbHVkZSAiU3R5bGVQcm9wZXJ0aWVzLmgiCiAj
aW5jbHVkZSAiU3R5bGVSdWxlSW1wb3J0LmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTRmlsdGVyUnVs
ZS5oIgogI2luY2x1ZGUgIldlYktpdENTU0tleWZyYW1lUnVsZS5oIgogI2luY2x1ZGUgIldlYktp
dENTU0tleWZyYW1lc1J1bGUuaCIKICNpbmNsdWRlICJXZWJLaXRDU1NSZWdpb25SdWxlLmgiCkBA
IC05OCwxMSArOTcsNiBAQCB2b2lkIFN0eWxlUnVsZUJhc2U6OmRlc3Ryb3koKQogICAgICAgICBk
ZWxldGUgc3RhdGljX2Nhc3Q8U3R5bGVSdWxlVmlld3BvcnQqPih0aGlzKTsKICAgICAgICAgcmV0
dXJuOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgRmlsdGVyOgot
ICAgICAgICBkZWxldGUgc3RhdGljX2Nhc3Q8U3R5bGVSdWxlRmlsdGVyKj4odGhpcyk7Ci0gICAg
ICAgIHJldHVybjsKLSNlbmRpZgogICAgIGNhc2UgVW5rbm93bjoKICAgICBjYXNlIENoYXJzZXQ6
CiAgICAgY2FzZSBLZXlmcmFtZToKQEAgLTE0NCwxMCArMTM4LDYgQEAgUGFzc1JlZjxTdHlsZVJ1
bGVCYXNlPiBTdHlsZVJ1bGVCYXNlOjpjb3B5KCkgY29uc3QKICAgICBjYXNlIFZpZXdwb3J0Ogog
ICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgU3R5bGVSdWxlVmlld3BvcnQqPih0aGlz
KS0+Y29weSgpOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgRmls
dGVyOgotICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgU3R5bGVSdWxlRmlsdGVyKj4o
dGhpcyktPmNvcHkoKTsKLSNlbmRpZgogICAgIGNhc2UgSW1wb3J0OgogICAgICAgICAvLyBGSVhN
RTogQ29weSBpbXBvcnQgcnVsZXMuCiAgICAgICAgIGJyZWFrOwpAQCAtMjA3LDExICsxOTcsNiBA
QCBQYXNzUmVmUHRyPENTU1J1bGU+IFN0eWxlUnVsZUJhc2U6OmNyZWF0ZUNTU09NV3JhcHBlcihD
U1NTdHlsZVNoZWV0KiBwYXJlbnRTaGVldAogICAgICAgICBydWxlID0gQ1NTSG9zdFJ1bGU6OmNy
ZWF0ZShzdGF0aWNfY2FzdDxTdHlsZVJ1bGVIb3N0Kj4oc2VsZiksIHBhcmVudFNoZWV0KTsKICAg
ICAgICAgYnJlYWs7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBG
aWx0ZXI6Ci0gICAgICAgIHJ1bGUgPSBXZWJLaXRDU1NGaWx0ZXJSdWxlOjpjcmVhdGUoc3RhdGlj
X2Nhc3Q8U3R5bGVSdWxlRmlsdGVyKj4oc2VsZiksIHBhcmVudFNoZWV0KTsKLSAgICAgICAgYnJl
YWs7Ci0jZW5kaWYKICAgICBjYXNlIFVua25vd246CiAgICAgY2FzZSBDaGFyc2V0OgogICAgIGNh
c2UgS2V5ZnJhbWU6CkBAIC00MzIsMzIgKzQxNyw0IEBAIE11dGFibGVTdHlsZVByb3BlcnRpZXMm
IFN0eWxlUnVsZVZpZXdwb3J0OjptdXRhYmxlUHJvcGVydGllcygpCiB9CiAjZW5kaWYgLy8gRU5B
QkxFKENTU19ERVZJQ0VfQURBUFRBVElPTikKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLVN0
eWxlUnVsZUZpbHRlcjo6U3R5bGVSdWxlRmlsdGVyKGNvbnN0IFN0cmluZyYgZmlsdGVyTmFtZSwg
UGFzc1JlZjxTdHlsZVByb3BlcnRpZXM+IHByb3BlcnRpZXMpCi0gICAgOiBTdHlsZVJ1bGVCYXNl
KEZpbHRlciwgMCkKLSAgICAsIG1fZmlsdGVyTmFtZShmaWx0ZXJOYW1lKQotICAgICwgbV9wcm9w
ZXJ0aWVzKHN0ZDo6bW92ZShwcm9wZXJ0aWVzKSkKLXsKLX0KLQotU3R5bGVSdWxlRmlsdGVyOjpT
dHlsZVJ1bGVGaWx0ZXIoY29uc3QgU3R5bGVSdWxlRmlsdGVyJiBvKQotICAgIDogU3R5bGVSdWxl
QmFzZShvKQotICAgICwgbV9maWx0ZXJOYW1lKG8ubV9maWx0ZXJOYW1lKQotICAgICwgbV9wcm9w
ZXJ0aWVzKG8ubV9wcm9wZXJ0aWVzLT5tdXRhYmxlQ29weSgpKQotewotfQotCi1TdHlsZVJ1bGVG
aWx0ZXI6On5TdHlsZVJ1bGVGaWx0ZXIoKQotewotfQotCi1NdXRhYmxlU3R5bGVQcm9wZXJ0aWVz
JiBTdHlsZVJ1bGVGaWx0ZXI6Om11dGFibGVQcm9wZXJ0aWVzKCkKLXsKLSAgICBpZiAoIW1fcHJv
cGVydGllcy0+aXNNdXRhYmxlKCkpCi0gICAgICAgIG1fcHJvcGVydGllcyA9IG1fcHJvcGVydGll
cy0+bXV0YWJsZUNvcHkoKTsKLSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8TXV0YWJsZVN0eWxlUHJv
cGVydGllcyY+KG1fcHJvcGVydGllcy5nZXQoKSk7Ci19Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0KIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZVJ1bGUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJ1bGUuaApp
bmRleCA1NGY1YzI2Li45MWRmNGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVSdWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5oCkBAIC01NSw5ICs1
NSw2IEBAIHB1YmxpYzoKICAgICAgICAgVmlld3BvcnQgPSAxNSwKICNlbmRpZgogICAgICAgICBS
ZWdpb24gPSAxNiwKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIEZpbHRlciA9IDE3
LAotI2VuZGlmCiAjaWYgRU5BQkxFKFNIQURPV19ET00pCiAgICAgICAgIEhvc3RJbnRlcm5hbCA9
IDE4LCAvLyBTcGVjIHNheXMgSG9zdCA9IDEwMDEsIGJ1dCB3ZSBjYW4gdXNlIG9ubHkgNSBiaXQg
Zm9yIHR5cGUoKS4KICNlbmRpZgpAQCAtODIsOSArNzksNiBAQCBwdWJsaWM6CiAjaWYgRU5BQkxF
KFNIQURPV19ET00pCiAgICAgYm9vbCBpc0hvc3RSdWxlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgp
ID09IEhvc3RJbnRlcm5hbDsgfQogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
IGJvb2wgaXNGaWx0ZXJSdWxlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IEZpbHRlcjsgfQot
I2VuZGlmCiAKICAgICBQYXNzUmVmPFN0eWxlUnVsZUJhc2U+IGNvcHkoKSBjb25zdDsKIApAQCAt
MzI1LDMyICszMTksNiBAQCBpbmxpbmUgY29uc3QgU3R5bGVSdWxlUmVnaW9uKiB0b1N0eWxlUnVs
ZVJlZ2lvbihjb25zdCBTdHlsZVJ1bGVHcm91cCogcnVsZSkKICAgICByZXR1cm4gc3RhdGljX2Nh
c3Q8Y29uc3QgU3R5bGVSdWxlUmVnaW9uKj4ocnVsZSk7CiB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi1jbGFzcyBTdHlsZVJ1bGVGaWx0ZXIgOiBwdWJsaWMgU3R5bGVSdWxlQmFzZSB7Ci1w
dWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWY8U3R5bGVSdWxlRmlsdGVyPiBjcmVhdGUoY29uc3Qg
U3RyaW5nJiBmaWx0ZXJOYW1lLCBQYXNzUmVmPFN0eWxlUHJvcGVydGllcz4gcHJvcGVydGllcykK
LSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFN0eWxlUnVsZUZpbHRlcihmaWx0
ZXJOYW1lLCBzdGQ6Om1vdmUocHJvcGVydGllcykpKTsKLSAgICB9Ci0KLSAgICB+U3R5bGVSdWxl
RmlsdGVyKCk7Ci0KLSAgICBjb25zdCBTdHJpbmcmIGZpbHRlck5hbWUoKSBjb25zdCB7IHJldHVy
biBtX2ZpbHRlck5hbWU7IH0KLQotICAgIGNvbnN0IFN0eWxlUHJvcGVydGllcyYgcHJvcGVydGll
cygpIGNvbnN0IHsgcmV0dXJuIG1fcHJvcGVydGllcy5nZXQoKTsgfQotICAgIE11dGFibGVTdHls
ZVByb3BlcnRpZXMmIG11dGFibGVQcm9wZXJ0aWVzKCk7Ci0KLSAgICBQYXNzUmVmPFN0eWxlUnVs
ZUZpbHRlcj4gY29weSgpIGNvbnN0IHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgU3R5bGVSdWxlRmls
dGVyKCp0aGlzKSk7IH0KLQotcHJpdmF0ZToKLSAgICBTdHlsZVJ1bGVGaWx0ZXIoY29uc3QgU3Ry
aW5nJiwgUGFzc1JlZjxTdHlsZVByb3BlcnRpZXM+KTsKLSAgICBTdHlsZVJ1bGVGaWx0ZXIoY29u
c3QgU3R5bGVSdWxlRmlsdGVyJik7Ci0KLSAgICBTdHJpbmcgbV9maWx0ZXJOYW1lOwotICAgIFJl
ZjxTdHlsZVByb3BlcnRpZXM+IG1fcHJvcGVydGllczsKLX07Ci0jZW5kaWYgLy8gRU5BQkxFKENT
U19TSEFERVJTKQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBTdHlsZVJ1
bGVfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlU2hlZXRDb250ZW50cy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENvbnRlbnRzLmNwcAppbmRleCA5OTEy
N2E0Li45YTM4NDljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENv
bnRlbnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENvbnRlbnRzLmNw
cApAQCAtNDY3LDkgKzQ2Nyw2IEBAIHN0YXRpYyBib29sIGNoaWxkUnVsZXNIYXZlRmFpbGVkT3JD
YW5jZWxlZFN1YnJlc291cmNlcyhjb25zdCBWZWN0b3I8UmVmUHRyPFN0eWxlCiAjaWYgRU5BQkxF
KENTU19ERVZJQ0VfQURBUFRBVElPTikKICAgICAgICAgY2FzZSBTdHlsZVJ1bGVCYXNlOjpWaWV3
cG9ydDoKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgY2FzZSBTdHls
ZVJ1bGVCYXNlOjpGaWx0ZXI6Ci0jZW5kaWYKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9
CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODEzMDE2OS4uMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNw
cAorKysgL2Rldi9udWxsCkBAIC0xLDY0ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgot
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
LSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQot
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgot
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdF
LgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWUuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU6OldlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZSgpCi0gICAgOiBDU1NWYWx1ZUxpc3QoV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZh
bHVlQ2xhc3MsIENvbW1hU2VwYXJhdG9yKQotewotfQotCi1XZWJLaXRDU1NBcnJheUZ1bmN0aW9u
VmFsdWU6OldlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZShjb25zdCBXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWUmIGNsb25lRnJvbSkKLSAgICA6IENTU1ZhbHVlTGlzdChjbG9uZUZyb20pCi17
Ci19Ci0KLVN0cmluZyBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU6OmN1c3RvbUNTU1RleHQo
KSBjb25zdAotewotICAgIHJldHVybiAiYXJyYXkoIiArIENTU1ZhbHVlTGlzdDo6Y3VzdG9tQ1NT
VGV4dCgpICsgJyknOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1
ZT4gV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlOjpjbG9uZUZvckNTU09NKCkgY29uc3QKLXsK
LSAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSgqdGhp
cykpOwotfQotCi1ib29sIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZTo6ZXF1YWxzKGNvbnN0
IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSYgb3RoZXIpIGNvbnN0Ci17Ci0gICAgcmV0dXJu
IENTU1ZhbHVlTGlzdDo6ZXF1YWxzKG90aGVyKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUv
Y3NzL1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAxYzIzNzFlLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRD
U1NBcnJheUZ1bmN0aW9uVmFsdWUuaAorKysgL2Rldi9udWxsCkBAIC0xLDY0ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwot
ICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBB
TkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViS2l0Q1NTQXJyYXlGdW5j
dGlvblZhbHVlX2gKLSNkZWZpbmUgV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlX2gKLQotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkNTU1ZhbHVlTGlzdC5oIgotI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgV2Vi
S2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlIDogcHVibGljIENTU1ZhbHVlTGlzdCB7Ci1wdWJsaWM6
Ci0gICAgc3RhdGljIFBhc3NSZWY8V2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlPiBjcmVhdGUo
KQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViS2l0Q1NTQXJyYXlGdW5j
dGlvblZhbHVlKCkpOwotICAgIH0KLQotICAgIFN0cmluZyBjdXN0b21DU1NUZXh0KCkgY29uc3Q7
Ci0KLSAgICBQYXNzUmVmUHRyPFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZT4gY2xvbmVGb3JD
U1NPTSgpIGNvbnN0OwotCi0gICAgYm9vbCBlcXVhbHMoY29uc3QgV2ViS2l0Q1NTQXJyYXlGdW5j
dGlvblZhbHVlJikgY29uc3Q7Ci0KLXByaXZhdGU6Ci0gICAgV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlKCk7Ci0gICAgV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlKGNvbnN0IFdlYktpdENT
U0FycmF5RnVuY3Rpb25WYWx1ZSYgY2xvbmVGcm9tKTsKLX07Ci0KLUNTU19WQUxVRV9UWVBFX0NB
U1RTKFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSwgaXNXZWJLaXRDU1NBcnJheUZ1bmN0aW9u
VmFsdWUoKSkKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENT
U19TSEFERVJTKQotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJL
aXRDU1NGaWx0ZXJSdWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJS
dWxlLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjdmMGE0Zi4uMDAwMDAwMAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAKKysrIC9kZXYv
bnVsbApAQCAtMSw5MCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0g
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
IEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NGaWx0ZXJSdWxlLmgiCi0KLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJQcm9wZXJ0eVNldENTU1N0eWxlRGVjbGFy
YXRpb24uaCIKLSNpbmNsdWRlICJTdHlsZVByb3BlcnRpZXMuaCIKLSNpbmNsdWRlICJTdHlsZVJ1
bGUuaCIKLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+Ci0KLW5hbWVzcGFjZSBX
ZWJDb3JlIHsKLQotV2ViS2l0Q1NTRmlsdGVyUnVsZTo6V2ViS2l0Q1NTRmlsdGVyUnVsZShTdHls
ZVJ1bGVGaWx0ZXIqIGZpbHRlclJ1bGUsIENTU1N0eWxlU2hlZXQqIHBhcmVudCkKLSAgICA6IENT
U1J1bGUocGFyZW50KQotICAgICwgbV9maWx0ZXJSdWxlKGZpbHRlclJ1bGUpCi17Ci19Ci0KLVdl
YktpdENTU0ZpbHRlclJ1bGU6On5XZWJLaXRDU1NGaWx0ZXJSdWxlKCkKLXsKLSAgICBpZiAobV9w
cm9wZXJ0aWVzQ1NTT01XcmFwcGVyKQotICAgICAgICBtX3Byb3BlcnRpZXNDU1NPTVdyYXBwZXIt
PmNsZWFyUGFyZW50UnVsZSgpOwotfQotCi1DU1NTdHlsZURlY2xhcmF0aW9uKiBXZWJLaXRDU1NG
aWx0ZXJSdWxlOjpzdHlsZSgpCi17Ci0gICAgaWYgKCFtX3Byb3BlcnRpZXNDU1NPTVdyYXBwZXIp
Ci0gICAgICAgIG1fcHJvcGVydGllc0NTU09NV3JhcHBlciA9IFN0eWxlUnVsZUNTU1N0eWxlRGVj
bGFyYXRpb246OmNyZWF0ZShtX2ZpbHRlclJ1bGUtPm11dGFibGVQcm9wZXJ0aWVzKCksICp0aGlz
KTsKLSAgICByZXR1cm4gbV9wcm9wZXJ0aWVzQ1NTT01XcmFwcGVyLmdldCgpOwotfQotCi1TdHJp
bmcgV2ViS2l0Q1NTRmlsdGVyUnVsZTo6Y3NzVGV4dCgpIGNvbnN0Ci17Ci0gICAgU3RyaW5nQnVp
bGRlciByZXN1bHQ7Ci0gICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoIkAtd2Via2l0LWZpbHRlciAi
KTsKLQotICAgIFN0cmluZyBmaWx0ZXJOYW1lID0gbV9maWx0ZXJSdWxlLT5maWx0ZXJOYW1lKCk7
Ci0gICAgcmVzdWx0LmFwcGVuZChmaWx0ZXJOYW1lKTsKLSAgICByZXN1bHQuYXBwZW5kTGl0ZXJh
bCgiIHsgIik7Ci0KLSAgICBTdHJpbmcgZGVzY3MgPSBtX2ZpbHRlclJ1bGUtPnByb3BlcnRpZXMo
KS5hc1RleHQoKTsKLSAgICByZXN1bHQuYXBwZW5kKGRlc2NzKTsKLSAgICBpZiAoIWRlc2NzLmlz
RW1wdHkoKSkKLSAgICAgICAgcmVzdWx0LmFwcGVuZCgnICcpOwotICAgIHJlc3VsdC5hcHBlbmQo
J30nKTsKLQotICAgIHJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKLX0KLQotdm9pZCBXZWJLaXRD
U1NGaWx0ZXJSdWxlOjpyZWF0dGFjaChTdHlsZVJ1bGVCYXNlKiBydWxlKQotewotICAgIEFTU0VS
VChydWxlKTsKLSAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTihydWxlLT5pc0Zp
bHRlclJ1bGUoKSk7Ci0gICAgbV9maWx0ZXJSdWxlID0gc3RhdGljX2Nhc3Q8U3R5bGVSdWxlRmls
dGVyKj4ocnVsZSk7Ci0gICAgaWYgKG1fcHJvcGVydGllc0NTU09NV3JhcHBlcikKLSAgICAgICAg
bV9wcm9wZXJ0aWVzQ1NTT01XcmFwcGVyLT5yZWF0dGFjaChtX2ZpbHRlclJ1bGUtPm11dGFibGVQ
cm9wZXJ0aWVzKCkpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBF
TkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0
Q1NTRmlsdGVyUnVsZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUu
aApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzU1YzU1MS4uMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyUnVsZS5oCisrKyAvZGV2L251bGwKQEAg
LTEsNjYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBBZG9iZSBTeXN0ZW1zIElu
Y29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4K
LSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIg
QkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFdlYktp
dENTU0ZpbHRlclJ1bGVfaAotI2RlZmluZSBXZWJLaXRDU1NGaWx0ZXJSdWxlX2gKLQotI2luY2x1
ZGUgIkNTU1J1bGUuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1jbGFzcyBDU1NTdHlsZURlY2xhcmF0aW9uOwotY2xhc3MgU3R5bGVSdWxlRmls
dGVyOwotY2xhc3MgU3R5bGVSdWxlQ1NTU3R5bGVEZWNsYXJhdGlvbjsKLQotY2xhc3MgV2ViS2l0
Q1NTRmlsdGVyUnVsZSA6IHB1YmxpYyBDU1NSdWxlIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFz
c1JlZlB0cjxXZWJLaXRDU1NGaWx0ZXJSdWxlPiBjcmVhdGUoU3R5bGVSdWxlRmlsdGVyKiBydWxl
LCBDU1NTdHlsZVNoZWV0KiBzaGVldCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IFdlYktpdENTU0Zp
bHRlclJ1bGUocnVsZSwgc2hlZXQpKTsgfQotCi0gICAgdmlydHVhbCB+V2ViS2l0Q1NTRmlsdGVy
UnVsZSgpOwotCi0gICAgdmlydHVhbCBDU1NSdWxlOjpUeXBlIHR5cGUoKSBjb25zdCBvdmVycmlk
ZSB7IHJldHVybiBXRUJLSVRfRklMVEVSX1JVTEU7IH0KLSAgICB2aXJ0dWFsIFN0cmluZyBjc3NU
ZXh0KCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIHJlYXR0YWNoKFN0eWxlUnVs
ZUJhc2UqKSBvdmVycmlkZTsKLQotICAgIENTU1N0eWxlRGVjbGFyYXRpb24qIHN0eWxlKCk7Ci0K
LXByaXZhdGU6Ci0gICAgV2ViS2l0Q1NTRmlsdGVyUnVsZShTdHlsZVJ1bGVGaWx0ZXIqLCBDU1NT
dHlsZVNoZWV0KiBwYXJlbnQpOwotCi0gICAgUmVmUHRyPFN0eWxlUnVsZUZpbHRlcj4gbV9maWx0
ZXJSdWxlOwotICAgIG11dGFibGUgUmVmUHRyPFN0eWxlUnVsZUNTU1N0eWxlRGVjbGFyYXRpb24+
IG1fcHJvcGVydGllc0NTU09NV3JhcHBlcjsKLX07Ci0KLX0KLQotI2VuZGlmIC8vIEVOQUJMRShD
U1NfU0hBREVSUykKLQotI2VuZGlmIC8vIFdlYktpdENTU0ZpbHRlclJ1bGVfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuaWRsIGIvU291cmNlL1dl
YkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuaWRsCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAyOGU4Yzc2Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRD
U1NGaWx0ZXJSdWxlLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0g
KiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotWwotICAgIENvbmRpdGlvbmFsPUNTU19TSEFERVJTLAotXSBp
bnRlcmZhY2UgV2ViS2l0Q1NTRmlsdGVyUnVsZSA6IENTU1J1bGUgewotICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBDU1NTdHlsZURlY2xhcmF0aW9uIHN0eWxlOwotCi0gICAgLy8gRklYTUU6IFdlIHNo
b3VsZCBleHBvc2UgdGhlIGZpbHRlciBuYW1lIG9uY2UgdGhlIENTU09NIGZvciB0aGUgQGZpbHRl
ciBydWxlIGlzIHNwZWNpZmllZC4KLX07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0Zp
bHRlclZhbHVlLmNwcAppbmRleCA5OTRkMzE2Li41OGE4YTIwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAKQEAgLTM1LDIxICszNSwxMSBAQAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCiBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6V2ViS2l0Q1NTRmlsdGVyVmFs
dWUoRmlsdGVyT3BlcmF0aW9uVHlwZSBvcGVyYXRpb25UeXBlKQotICAgIDogQ1NTVmFsdWVMaXN0
KFdlYktpdENTU0ZpbHRlckNsYXNzLCB0eXBlVXNlc1NwYWNlU2VwYXJhdG9yKG9wZXJhdGlvblR5
cGUpID8gU3BhY2VTZXBhcmF0b3IgOiBDb21tYVNlcGFyYXRvcikKKyAgICA6IENTU1ZhbHVlTGlz
dChXZWJLaXRDU1NGaWx0ZXJDbGFzcywgU3BhY2VTZXBhcmF0b3IpCiAgICAgLCBtX3R5cGUob3Bl
cmF0aW9uVHlwZSkKIHsKIH0KIAotYm9vbCBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6dHlwZVVzZXNT
cGFjZVNlcGFyYXRvcihGaWx0ZXJPcGVyYXRpb25UeXBlIG9wZXJhdGlvblR5cGUpCi17Ci0jaWYg
RU5BQkxFKENTU19TSEFERVJTKQotICAgIHJldHVybiBvcGVyYXRpb25UeXBlICE9IEN1c3RvbUZp
bHRlck9wZXJhdGlvbjsKLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKG9wZXJhdGlvblR5cGUpOwot
ICAgIHJldHVybiB0cnVlOwotI2VuZGlmCi19Ci0KIFN0cmluZyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNvbnN0CiB7CiAgICAgY29uc3QgY2hhciogcmVzdWx0ID0gIiI7
CkBAIC04OSwxMSArNzksNiBAQCBTdHJpbmcgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OmN1c3RvbUNT
U1RleHQoKSBjb25zdAogICAgIGNhc2UgRHJvcFNoYWRvd0ZpbHRlck9wZXJhdGlvbjoKICAgICAg
ICAgcmVzdWx0ID0gImRyb3Atc2hhZG93KCI7CiAgICAgICAgIGJyZWFrOwotI2lmIEVOQUJMRShD
U1NfU0hBREVSUykKLSAgICBjYXNlIEN1c3RvbUZpbHRlck9wZXJhdGlvbjoKLSAgICAgICAgcmVz
dWx0ID0gImN1c3RvbSgiOwotICAgICAgICBicmVhazsKLSNlbmRpZgogICAgIH0KIAogICAgIHJl
dHVybiByZXN1bHQgKyBDU1NWYWx1ZUxpc3Q6OmN1c3RvbUNTU1RleHQoKSArICcpJzsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIGIvU291cmNl
L1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmgKaW5kZXggYjA5ZTg4Mi4uNmMwOWE1
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmgKQEAgLTUwLDEz
ICs1MCw4IEBAIHB1YmxpYzoKICAgICAgICAgQ29udHJhc3RGaWx0ZXJPcGVyYXRpb24sCiAgICAg
ICAgIEJsdXJGaWx0ZXJPcGVyYXRpb24sCiAgICAgICAgIERyb3BTaGFkb3dGaWx0ZXJPcGVyYXRp
b24KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgICwgQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uCi0jZW5kaWYKICAgICB9OwogCi0gICAgc3RhdGljIGJvb2wgdHlwZVVzZXNTcGFjZVNlcGFy
YXRvcihGaWx0ZXJPcGVyYXRpb25UeXBlKTsKLQogICAgIHN0YXRpYyBQYXNzUmVmPFdlYktpdENT
U0ZpbHRlclZhbHVlPiBjcmVhdGUoRmlsdGVyT3BlcmF0aW9uVHlwZSB0eXBlKQogICAgIHsKICAg
ICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViS2l0Q1NTRmlsdGVyVmFsdWUodHlwZSkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5pZGwKaW5kZXggNWY4NDE0
NC4uOTZiYTFmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRl
clZhbHVlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
aWRsCkBAIC00MywxMCArNDMsNiBAQAogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IENTU19GSUxU
RVJfQkxVUiA9IDEwOwogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IENTU19GSUxURVJfRFJPUF9T
SEFET1cgPSAxMTsKIAotI2lmIGRlZmluZWQoRU5BQkxFX0NTU19TSEFERVJTKSAmJiBFTkFCTEVf
Q1NTX1NIQURFUlMKLSAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBDU1NfRklMVEVSX0NVU1RPTSA9
IDEyOwotI2VuZGlmCi0KICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgb3Bl
cmF0aW9uVHlwZTsKIAogICAgIGdldHRlciBDU1NWYWx1ZSAoW0RlZmF1bHQ9VW5kZWZpbmVkXSBv
cHRpb25hbCB1bnNpZ25lZCBsb25nIGluZGV4KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9X
ZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggNTlkODRhNi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0
RnVuY3Rpb25WYWx1ZS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw4MSArMCwwIEBACi0vKgotICog
Q29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAq
Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBk
aXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAq
ICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkK
LSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAot
ICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgot
ICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIldl
YktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCIKLQotI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1
aWxkZXIuaD4KLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotbmFtZXNwYWNlIFdlYkNvcmUg
ewotCi1XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlOjpXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVl
KCkKLSAgICA6IENTU1ZhbHVlTGlzdChXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlQ2xhc3MsIENv
bW1hU2VwYXJhdG9yKQotewotfQotCi1XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlOjpXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlKGNvbnN0IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUmIGNsb25l
RnJvbSkKLSAgICA6IENTU1ZhbHVlTGlzdChjbG9uZUZyb20pCi17Ci19Ci0KLVN0cmluZyBXZWJL
aXRDU1NNYXRGdW5jdGlvblZhbHVlOjpjdXN0b21DU1NUZXh0KCkgY29uc3QKLXsKLSAgICBTdHJp
bmdCdWlsZGVyIGJ1aWxkZXI7Ci0gICAgaWYgKGxlbmd0aCgpID09IDQpCi0gICAgICAgIGJ1aWxk
ZXIuYXBwZW5kTGl0ZXJhbCgibWF0MigiKTsKLSAgICBlbHNlIGlmIChsZW5ndGgoKSA9PSA5KQot
ICAgICAgICBidWlsZGVyLmFwcGVuZExpdGVyYWwoIm1hdDMoIik7Ci0gICAgZWxzZSBpZiAobGVu
Z3RoKCkgPT0gMTYpCi0gICAgICAgIGJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgibWF0NCgiKTsKLSAg
ICBlbHNlIHsKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgIHJldHVybiBT
dHJpbmcoKTsKLSAgICB9Ci0KLSAgICBidWlsZGVyLmFwcGVuZChDU1NWYWx1ZUxpc3Q6OmN1c3Rv
bUNTU1RleHQoKSk7Ci0gICAgYnVpbGRlci5hcHBlbmQoJyknKTsKLSAgICByZXR1cm4gYnVpbGRl
ci50b1N0cmluZygpOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU+
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU6OmNsb25lRm9yQ1NTT00oKSBjb25zdAotewotICAg
IHJldHVybiBhZG9wdFJlZihuZXcgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSgqdGhpcykpOwot
fQotCi1ib29sIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU6OmVxdWFscyhjb25zdCBXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlJiBvdGhlcikgY29uc3QKLXsKLSAgICByZXR1cm4gQ1NTVmFsdWVM
aXN0OjplcXVhbHMob3RoZXIpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENT
U01hdEZ1bmN0aW9uVmFsdWUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDlhNWI5
MC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25W
YWx1ZS5oCisrKyAvZGV2L251bGwKQEAgLTEsNjQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMyBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlX2gKLSNkZWZp
bmUgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0KLSNpbmNsdWRlICJDU1NWYWx1ZUxpc3QuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5o
PgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUgOiBwdWJsaWMgQ1NTVmFsdWVMaXN0IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZjxX
ZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlPiBjcmVhdGUoKQotICAgIHsKLSAgICAgICAgcmV0dXJu
IGFkb3B0UmVmKCpuZXcgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSk7Ci0gICAgfQotCi0gICAg
U3RyaW5nIGN1c3RvbUNTU1RleHQoKSBjb25zdDsKLQotICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZT4gY2xvbmVGb3JDU1NPTSgpIGNvbnN0OwotCi0gICAgYm9vbCBlcXVh
bHMoY29uc3QgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSYpIGNvbnN0OwotCi1wcml2YXRlOgot
ICAgIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUoKTsKLSAgICBXZWJLaXRDU1NNYXRGdW5jdGlv
blZhbHVlKGNvbnN0IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUmIGNsb25lRnJvbSk7Ci19Owot
Ci1DU1NfVkFMVUVfVFlQRV9DQVNUUyhXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLCBpc1dlYktp
dENTU01hdEZ1bmN0aW9uVmFsdWUoKSkKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggYWU1NDQxMS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw2NSArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
Ci0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotICAgIAotV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1
ZTo6V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpCi0gICAgOiBDU1NWYWx1ZUxpc3QoV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZUNsYXNzLCBTcGFjZVNlcGFyYXRvcikKLXsKLX0KLQotV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZTo6V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZShjb25zdCBXZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlJiBjbG9uZUZyb20pCi0gICAgOiBDU1NWYWx1ZUxpc3QoY2xv
bmVGcm9tKQotewotfQotCi1TdHJpbmcgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZTo6Y3VzdG9t
Q1NTVGV4dCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuICJtaXgoIiArIENTU1ZhbHVlTGlzdDo6Y3Vz
dG9tQ1NTVGV4dCgpICsgJyknOwotfQotCi1QYXNzUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWU+IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU6OmNsb25lRm9yQ1NTT00oKSBjb25zdAot
ewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgqdGhp
cykpOwotfQotCi1ib29sIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU6OmVxdWFscyhjb25zdCBX
ZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJiBvdGhlcikgY29uc3QKLXsKLSAgICByZXR1cm4gQ1NT
VmFsdWVMaXN0OjplcXVhbHMob3RoZXIpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWU0MzM4OS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWl4RnVu
Y3Rpb25WYWx1ZS5oCisrKyAvZGV2L251bGwKQEAgLTEsNjQgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlX2gK
LSNkZWZpbmUgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KLSNpbmNsdWRlICJDU1NWYWx1ZUxpc3QuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIFdlYktpdENTU01peEZ1bmN0
aW9uVmFsdWUgOiBwdWJsaWMgQ1NTVmFsdWVMaXN0IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFz
c1JlZjxXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlPiBjcmVhdGUoKQotICAgIHsKLSAgICAgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpKTsKLSAgICB9
Ci0KLSAgICBTdHJpbmcgY3VzdG9tQ1NTVGV4dCgpIGNvbnN0OwotCi0gICAgUGFzc1JlZlB0cjxX
ZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlPiBjbG9uZUZvckNTU09NKCkgY29uc3Q7Ci0KLSAgICBi
b29sIGVxdWFscyhjb25zdCBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJikgY29uc3Q7Ci0KLXBy
aXZhdGU6Ci0gICAgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpOwotICAgIFdlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUoY29uc3QgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSYgY2xvbmVGcm9t
KTsKLX07Ci0KLUNTU19WQUxVRV9UWVBFX0NBU1RTKFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUs
IGlzV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpKQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaWRsIGIvU291cmNl
L1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaWRsCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAzYTdjMDJmLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDM1ICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0
ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMg
SVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YK
LSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotWwotICAgIENvbmRpdGlvbmFsPUNT
U19TSEFERVJTLAotICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKLV0gaW50ZXJmYWNlIFdl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUgOiBDU1NWYWx1ZUxpc3QgewotfTsKLQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9XZWJLaXRDU1NTaGFkZXJWYWx1ZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDVjOTYyYzUuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktp
dENTU1NoYWRlclZhbHVlLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDEwOCArMCwwIEBACi0vKgot
ICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0
OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5E
IEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwK
LSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaCIKLQot
I2luY2x1ZGUgIkNTU1BhcnNlci5oIgotI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlTG9hZGVyLmgi
Ci0jaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmgiCi0jaW5jbHVkZSAiQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oIgotI2luY2x1ZGUgIkRvY3VtZW50LmgiCi0jaW5jbHVk
ZSAiVVJMLmgiCi0jaW5jbHVkZSAiU3R5bGVDYWNoZWRTaGFkZXIuaCIKLSNpbmNsdWRlICJTdHls
ZVBlbmRpbmdTaGFkZXIuaCIKLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+Ci0K
LW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotV2ViS2l0Q1NTU2hhZGVyVmFsdWU6OldlYktpdENTU1No
YWRlclZhbHVlKGNvbnN0IFN0cmluZyYgdXJsKQotICAgIDogQ1NTVmFsdWUoV2ViS2l0Q1NTU2hh
ZGVyQ2xhc3MpCi0gICAgLCBtX3VybCh1cmwpCi0gICAgLCBtX2FjY2Vzc2VkU2hhZGVyKGZhbHNl
KQotewotfQotCi1XZWJLaXRDU1NTaGFkZXJWYWx1ZTo6fldlYktpdENTU1NoYWRlclZhbHVlKCkK
LXsKLX0KLQotVVJMIFdlYktpdENTU1NoYWRlclZhbHVlOjpjb21wbGV0ZVVSTChDYWNoZWRSZXNv
dXJjZUxvYWRlciogbG9hZGVyKSBjb25zdAotewotICAgIHJldHVybiBsb2FkZXItPmRvY3VtZW50
KCktPmNvbXBsZXRlVVJMKG1fdXJsKTsKLX0KLQotU3R5bGVDYWNoZWRTaGFkZXIqIFdlYktpdENT
U1NoYWRlclZhbHVlOjpjYWNoZWRTaGFkZXIoQ2FjaGVkUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikK
LXsKLSAgICBBU1NFUlQobG9hZGVyKTsKLQotICAgIGlmICghbV9hY2Nlc3NlZFNoYWRlcikgewot
ICAgICAgICBtX2FjY2Vzc2VkU2hhZGVyID0gdHJ1ZTsKLQotICAgICAgICBDYWNoZWRSZXNvdXJj
ZVJlcXVlc3QgcmVxdWVzdChSZXNvdXJjZVJlcXVlc3QoY29tcGxldGVVUkwobG9hZGVyKSkpOwot
ICAgICAgICByZXF1ZXN0LnNldEluaXRpYXRvcihjYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0
b3JzKCkuY3NzKTsKLSAgICAgICAgaWYgKENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFNoYWRl
cj4gY2FjaGVkU2hhZGVyID0gbG9hZGVyLT5yZXF1ZXN0U2hhZGVyKHJlcXVlc3QpKQotICAgICAg
ICAgICAgbV9zaGFkZXIgPSBTdHlsZUNhY2hlZFNoYWRlcjo6Y3JlYXRlKGNhY2hlZFNoYWRlci5n
ZXQoKSk7Ci0gICAgfQotCi0gICAgcmV0dXJuIChtX3NoYWRlciAmJiBtX3NoYWRlci0+aXNDYWNo
ZWRTaGFkZXIoKSkgPyBzdGF0aWNfY2FzdDxTdHlsZUNhY2hlZFNoYWRlcio+KG1fc2hhZGVyLmdl
dCgpKSA6IDA7Ci19Ci0KLVN0eWxlU2hhZGVyKiBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y2FjaGVk
T3JQZW5kaW5nU2hhZGVyKCkKLXsKLSAgICBpZiAoIW1fc2hhZGVyKQotICAgICAgICBtX3NoYWRl
ciA9IFN0eWxlUGVuZGluZ1NoYWRlcjo6Y3JlYXRlKHRoaXMpOwotCi0gICAgcmV0dXJuIG1fc2hh
ZGVyLmdldCgpOwotfQotCi1TdHJpbmcgV2ViS2l0Q1NTU2hhZGVyVmFsdWU6OmN1c3RvbUNTU1Rl
eHQoKSBjb25zdAotewotICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OwotICAgIHJlc3VsdC5hcHBl
bmRMaXRlcmFsKCJ1cmwoIik7Ci0gICAgcmVzdWx0LmFwcGVuZChxdW90ZUNTU1VSTElmTmVlZGVk
KG1fdXJsKSk7Ci0gICAgcmVzdWx0LmFwcGVuZCgnKScpOwotICAgIGlmICghbV9mb3JtYXQuaXNF
bXB0eSgpKSB7Ci0gICAgICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCIgZm9ybWF0KCciKTsKLSAg
ICAgICAgcmVzdWx0LmFwcGVuZChtX2Zvcm1hdCk7Ci0gICAgICAgIHJlc3VsdC5hcHBlbmRMaXRl
cmFsKCInKSIpOwotICAgIH0KLSAgICByZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7Ci19Ci0KLWJv
b2wgV2ViS2l0Q1NTU2hhZGVyVmFsdWU6OmVxdWFscyhjb25zdCBXZWJLaXRDU1NTaGFkZXJWYWx1
ZSYgb3RoZXIpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fdXJsID09IG90aGVyLm1fdXJsOwotfQot
ICAgIAotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFE
RVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1NoYWRlclZhbHVl
LmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNzlkMzU4OS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaAorKysgL2Rldi9udWxsCkBAIC0xLDc1ICswLDAg
QEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJ
U+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICog
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
Ci0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViS2l0Q1NTU2hh
ZGVyVmFsdWVfaAotI2RlZmluZSBXZWJLaXRDU1NTaGFkZXJWYWx1ZV9oCi0KLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJDU1NWYWx1ZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLWNsYXNzIENhY2hlZFJlc291cmNlTG9hZGVyOwotY2xhc3MgVVJMOwotY2xhc3MgU3R5
bGVDYWNoZWRTaGFkZXI7Ci1jbGFzcyBTdHlsZVNoYWRlcjsKLQotY2xhc3MgV2ViS2l0Q1NTU2hh
ZGVyVmFsdWUgOiBwdWJsaWMgQ1NTVmFsdWUgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVm
PFdlYktpdENTU1NoYWRlclZhbHVlPiBjcmVhdGUoY29uc3QgU3RyaW5nJiB1cmwpIHsgcmV0dXJu
IGFkb3B0UmVmKCpuZXcgV2ViS2l0Q1NTU2hhZGVyVmFsdWUodXJsKSk7IH0KLSAgICB+V2ViS2l0
Q1NTU2hhZGVyVmFsdWUoKTsKLQotICAgIGNvbnN0IFN0cmluZyYgZm9ybWF0KCkgY29uc3QgeyBy
ZXR1cm4gbV9mb3JtYXQ7IH0KLSAgICB2b2lkIHNldEZvcm1hdChjb25zdCBTdHJpbmcmIGZvcm1h
dCkgeyBtX2Zvcm1hdCA9IGZvcm1hdDsgfQotCi0gICAgVVJMIGNvbXBsZXRlVVJMKENhY2hlZFJl
c291cmNlTG9hZGVyKikgY29uc3Q7Ci0gICAgU3R5bGVDYWNoZWRTaGFkZXIqIGNhY2hlZFNoYWRl
cihDYWNoZWRSZXNvdXJjZUxvYWRlciopOwotICAgIFN0eWxlU2hhZGVyKiBjYWNoZWRPclBlbmRp
bmdTaGFkZXIoKTsKLQotICAgIFN0cmluZyBjdXN0b21DU1NUZXh0KCkgY29uc3Q7Ci0KLSAgICBi
b29sIGVxdWFscyhjb25zdCBXZWJLaXRDU1NTaGFkZXJWYWx1ZSYpIGNvbnN0OwotCi1wcml2YXRl
OgotICAgIGV4cGxpY2l0IFdlYktpdENTU1NoYWRlclZhbHVlKGNvbnN0IFN0cmluZyYgdXJsKTsK
LQotICAgIFN0cmluZyBtX3VybDsKLSAgICBTdHJpbmcgbV9mb3JtYXQ7Ci0gICAgUmVmUHRyPFN0
eWxlU2hhZGVyPiBtX3NoYWRlcjsKLSAgICBib29sIG1fYWNjZXNzZWRTaGFkZXI7Ci19OwotCi1D
U1NfVkFMVUVfVFlQRV9DQVNUUyhXZWJLaXRDU1NTaGFkZXJWYWx1ZSwgaXNXZWJLaXRDU1NTaGFk
ZXJWYWx1ZSgpKQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBXZWJLaXRDU1NTaGFkZXJWYWx1ZV9oCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcAppbmRleCA1NjNkNTA2
Li41ZjBiYzc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZS5jcHAKQEAgLTEzNSwxMCArMTM1LDYgQEAgc3RhdGljIFJlc291cmNlTG9hZFByaW9yaXR5
IGRlZmF1bHRQcmlvcml0eUZvclJlc291cmNlVHlwZShDYWNoZWRSZXNvdXJjZTo6VHlwZQogICAg
IGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlRleHRUcmFja1Jlc291cmNlOgogICAgICAgICByZXR1cm4g
UmVzb3VyY2VMb2FkUHJpb3JpdHlMb3c7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6U2hhZGVyUmVzb3VyY2U6Ci0gICAgICAgIHJldHVy
biBSZXNvdXJjZUxvYWRQcmlvcml0eU1lZGl1bTsKLSNlbmRpZgogICAgIH0KICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKICAgICByZXR1cm4gUmVzb3VyY2VMb2FkUHJpb3JpdHlMb3c7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oCmluZGV4IDkxNzk0ZjIu
LjhkZTY5Y2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZS5oCkBAIC04MSw5ICs4MSw2IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAg
ICAgICAgICwgVGV4dFRyYWNrUmVzb3VyY2UKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSAgICAgICAgLCBTaGFkZXJSZXNvdXJjZQotI2VuZGlmCiAgICAgfTsKIAogICAgIGVudW0g
U3RhdHVzIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VMb2FkZXIuY3BwCmluZGV4IDU2NmEwNzMuLjFjNjU5MzcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcApAQCAtNjIs
MTAgKzYyLDYgQEAKICNpbmNsdWRlICJDYWNoZWRUZXh0VHJhY2suaCIKICNlbmRpZgogCi0jaWYg
RU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkNhY2hlZFNoYWRlci5oIgotI2VuZGlmCi0K
ICNpZiBFTkFCTEUoUkVTT1VSQ0VfVElNSU5HKQogI2luY2x1ZGUgIlBlcmZvcm1hbmNlLmgiCiAj
ZW5kaWYKQEAgLTEwNiwxMCArMTAyLDYgQEAgc3RhdGljIENhY2hlZFJlc291cmNlKiBjcmVhdGVS
ZXNvdXJjZShDYWNoZWRSZXNvdXJjZTo6VHlwZSB0eXBlLCBSZXNvdXJjZVJlcXVlc3QKICAgICBj
YXNlIENhY2hlZFJlc291cmNlOjpUZXh0VHJhY2tSZXNvdXJjZToKICAgICAgICAgcmV0dXJuIG5l
dyBDYWNoZWRUZXh0VHJhY2socmVxdWVzdCk7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6U2hhZGVyUmVzb3VyY2U6Ci0gICAgICAgIHJl
dHVybiBuZXcgQ2FjaGVkU2hhZGVyKHJlcXVlc3QpOwotI2VuZGlmCiAgICAgfQogICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiAwOwpAQCAtMTgzLDEzICsxNzUsNiBAQCBDYWNo
ZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRUZXh0VHJhY2s+IENhY2hlZFJlc291cmNlTG9hZGVyOjpy
ZXF1ZXN0VGV4dFRyYWNrKENhYwogfQogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci1DYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRTaGFkZXI+IENhY2hlZFJlc291cmNlTG9hZGVy
OjpyZXF1ZXN0U2hhZGVyKENhY2hlZFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKLXsKLSAgICBy
ZXR1cm4gc3RhdGljX2Nhc3Q8Q2FjaGVkU2hhZGVyKj4ocmVxdWVzdFJlc291cmNlKENhY2hlZFJl
c291cmNlOjpTaGFkZXJSZXNvdXJjZSwgcmVxdWVzdCkuZ2V0KCkpOwotfQotI2VuZGlmCi0KIENh
Y2hlZFJlc291cmNlSGFuZGxlPENhY2hlZENTU1N0eWxlU2hlZXQ+IENhY2hlZFJlc291cmNlTG9h
ZGVyOjpyZXF1ZXN0Q1NTU3R5bGVTaGVldChDYWNoZWRSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qp
CiB7CiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PENhY2hlZENTU1N0eWxlU2hlZXQqPihyZXF1ZXN0
UmVzb3VyY2UoQ2FjaGVkUmVzb3VyY2U6OkNTU1N0eWxlU2hlZXQsIHJlcXVlc3QpLmdldCgpKTsK
QEAgLTI3OSw5ICsyNjQsNiBAQCBib29sIENhY2hlZFJlc291cmNlTG9hZGVyOjpjaGVja0luc2Vj
dXJlQ29udGVudChDYWNoZWRSZXNvdXJjZTo6VHlwZSB0eXBlLCBjb25zdAogI2lmIEVOQUJMRShW
SURFT19UUkFDSykKICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpUZXh0VHJhY2tSZXNvdXJjZToK
ICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIENhY2hlZFJlc291cmNl
OjpTaGFkZXJSZXNvdXJjZToKLSNlbmRpZgogICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlJhd1Jl
c291cmNlOgogICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkltYWdlUmVzb3VyY2U6CiAgICAgY2Fz
ZSBDYWNoZWRSZXNvdXJjZTo6Rm9udFJlc291cmNlOiB7CkBAIC0zMzMsOSArMzE1LDYgQEAgYm9v
bCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVxdWVzdChDYWNoZWRSZXNvdXJjZTo6VHlwZSB0
eXBlLCBjb25zdCBVUkwmIHVybCwKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgY2FzZSBD
YWNoZWRSZXNvdXJjZTo6VGV4dFRyYWNrUmVzb3VyY2U6CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6U2hhZGVyUmVzb3VyY2U6Ci0jZW5k
aWYKICAgICAgICAgaWYgKG9wdGlvbnMucmVxdWVzdE9yaWdpblBvbGljeSA9PSBSZXN0cmljdFRv
U2FtZU9yaWdpbiAmJiAhbV9kb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuUmVxdWVzdCh1
cmwpKSB7CiAgICAgICAgICAgICBwcmludEFjY2Vzc0RlbmllZE1lc3NhZ2UodXJsKTsKICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTM3MCwxMCArMzQ5LDYgQEAgYm9vbCBDYWNoZWRSZXNv
dXJjZUxvYWRlcjo6Y2FuUmVxdWVzdChDYWNoZWRSZXNvdXJjZTo6VHlwZSB0eXBlLCBjb25zdCBV
UkwmIHVybCwKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIH0KICAgICAg
ICAgYnJlYWs7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgQ2FjaGVkUmVzb3Vy
Y2U6OlNoYWRlclJlc291cmNlOgotICAgICAgICAvLyBTaW5jZSBzaGFkZXJzIGFyZSByZWZlcmVu
Y2VkIGZyb20gQ1NTIFN0eWxlcyB1c2UgdGhlIHNhbWUgcnVsZXMgaGVyZS4KLSNlbmRpZgogICAg
IGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkNTU1N0eWxlU2hlZXQ6CiAgICAgICAgIGlmICghc2hvdWxk
QnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5ICYmICFtX2RvY3VtZW50LT5jb250
ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dTdHlsZUZyb21Tb3VyY2UodXJsKSkKICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlTG9hZGVyLmgKaW5kZXggNTk3ZDYxMC4uYmNjNzkzZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKQEAgLTQ2
LDcgKzQ2LDYgQEAgY2xhc3MgQ2FjaGVkRm9udDsKIGNsYXNzIENhY2hlZEltYWdlOwogY2xhc3Mg
Q2FjaGVkUmF3UmVzb3VyY2U7CiBjbGFzcyBDYWNoZWRTY3JpcHQ7Ci1jbGFzcyBDYWNoZWRTaGFk
ZXI7CiBjbGFzcyBDYWNoZWRUZXh0VHJhY2s7CiBjbGFzcyBDYWNoZWRYU0xTdHlsZVNoZWV0Owog
Y2xhc3MgRG9jdW1lbnQ7CkBAIC05Miw5ICs5MSw2IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUoVklE
RU9fVFJBQ0spCiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkVGV4dFRyYWNrPiByZXF1
ZXN0VGV4dFRyYWNrKENhY2hlZFJlc291cmNlUmVxdWVzdCYpOwogI2VuZGlmCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFNoYWRlcj4gcmVx
dWVzdFNoYWRlcihDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKLSNlbmRpZgogCiAgICAgLy8gTG9n
cyBhbiBhY2Nlc3MgZGVuaWVkIG1lc3NhZ2UgdG8gdGhlIGNvbnNvbGUgZm9yIHRoZSBzcGVjaWZp
ZWQgVVJMLgogICAgIHZvaWQgcHJpbnRBY2Nlc3NEZW5pZWRNZXNzYWdlKGNvbnN0IFVSTCYgdXJs
KSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRT
aGFkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5jcHAK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE1NzQ4ZmUuLjAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5jcHAKKysrIC9kZXYvbnVsbApA
QCAtMSw3MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMg
SW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
LgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBI
T0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IK
LSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVk
ZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJDYWNo
ZWRTaGFkZXIuaCIKLSNpbmNsdWRlICJSZXNvdXJjZUJ1ZmZlci5oIgotI2luY2x1ZGUgIlRleHRS
ZXNvdXJjZURlY29kZXIuaCIKLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+Ci0K
LW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotQ2FjaGVkU2hhZGVyOjpDYWNoZWRTaGFkZXIoY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3QpCi0gICAgOiBDYWNoZWRSZXNvdXJjZShy
ZXNvdXJjZVJlcXVlc3QsIFNoYWRlclJlc291cmNlKQotICAgICwgbV9kZWNvZGVyKFRleHRSZXNv
dXJjZURlY29kZXI6OmNyZWF0ZSgiYXBwbGljYXRpb24vc2hhZGVyIikpCi17Ci19Ci0KLUNhY2hl
ZFNoYWRlcjo6fkNhY2hlZFNoYWRlcigpCi17Ci19Ci0KLWNvbnN0IFN0cmluZyYgQ2FjaGVkU2hh
ZGVyOjpzaGFkZXJTdHJpbmcoKQotewotICAgIGlmIChtX3NoYWRlclN0cmluZy5pc051bGwoKSAm
JiBtX2RhdGEpIHsKLSAgICAgICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOwotICAgICAgICBidWls
ZGVyLmFwcGVuZChtX2RlY29kZXItPmRlY29kZShtX2RhdGEtPmRhdGEoKSwgbV9kYXRhLT5zaXpl
KCkpKTsKLSAgICAgICAgYnVpbGRlci5hcHBlbmQobV9kZWNvZGVyLT5mbHVzaCgpKTsKLSAgICAg
ICAgbV9zaGFkZXJTdHJpbmcgPSBidWlsZGVyLnRvU3RyaW5nKCk7Ci0gICAgfQotCi0gICAgcmV0
dXJuIG1fc2hhZGVyU3RyaW5nOwotfQotCi12b2lkIENhY2hlZFNoYWRlcjo6ZmluaXNoTG9hZGlu
ZyhSZXNvdXJjZUJ1ZmZlciogZGF0YSkKLXsKLSAgICBtX2RhdGEgPSBkYXRhOwotICAgIENhY2hl
ZFJlc291cmNlOjpmaW5pc2hMb2FkaW5nKDApOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkU2hhZGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYyYmQ0
ZmQuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRl
ci5oCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
Ci0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
Ci0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1B
R0UuCi0gKi8KLQotI2lmbmRlZiBDYWNoZWRTaGFkZXJfaAotI2RlZmluZSBDYWNoZWRTaGFkZXJf
aAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2Uu
aCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBUZXh0UmVzb3VyY2VEZWNvZGVyOwot
Ci1jbGFzcyBDYWNoZWRTaGFkZXIgZmluYWwgOiBwdWJsaWMgQ2FjaGVkUmVzb3VyY2UgewotcHVi
bGljOgotICAgIENhY2hlZFNoYWRlcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKLSAgICB2aXJ0
dWFsIH5DYWNoZWRTaGFkZXIoKTsKLSAgICAKLSAgICBjb25zdCBTdHJpbmcmIHNoYWRlclN0cmlu
ZygpOwotCi1wcml2YXRlOgotICAgIHZpcnR1YWwgYm9vbCBtYXlUcnlSZXBsYWNlRW5jb2RlZERh
dGEoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVhbCB2b2lkIGZp
bmlzaExvYWRpbmcoUmVzb3VyY2VCdWZmZXIqKSBvdmVycmlkZTsKLQotICAgIFJlZlB0cjxUZXh0
UmVzb3VyY2VEZWNvZGVyPiBtX2RlY29kZXI7Ci0gICAgU3RyaW5nIG1fc2hhZGVyU3RyaW5nOwot
fTsKLQotfQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ2Fj
aGVkU2hhZGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKaW5kZXggNzFjNGI3Yy4uM2JhMjNi
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKQEAgLTE3OCw3ICsxNzgsNiBAQCBTZXR0aW5n
czo6U2V0dGluZ3MoUGFnZSogcGFnZSkKICAgICAsIG1fbmVlZHNBZG9iZUZyYW1lUmVsb2FkaW5n
UXVpcmsoZmFsc2UpCiAgICAgLCBtX3VzZXNQYWdlQ2FjaGUoZmFsc2UpCiAgICAgLCBtX2ZvbnRS
ZW5kZXJpbmdNb2RlKDApCi0gICAgLCBtX2lzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChmYWxzZSkK
ICNpZiBQTEFURk9STShJT1MpCiAgICAgLCBtX3N0YW5kYWxvbmUoZmFsc2UpCiAgICAgLCBtX3Rl
bGVwaG9uZU51bWJlclBhcnNpbmdFbmFibGVkKGZhbHNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9TZXR0aW5ncy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCmlu
ZGV4IDU1ZjZkZWIuLmNiMmVjOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0
dGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKQEAgLTIxMyw5ICsy
MTMsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRGb250UmVuZGVyaW5nTW9kZShGb250UmVuZGVy
aW5nTW9kZSBtb2RlKTsKICAgICBGb250UmVuZGVyaW5nTW9kZSBmb250UmVuZGVyaW5nTW9kZSgp
IGNvbnN0OwogCi0gICAgdm9pZCBzZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGJvb2wgZW5hYmxl
ZCkgeyBtX2lzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCA9IGVuYWJsZWQ7IH0KLSAgICBib29sIGlz
Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNDU1NDdXN0b21GaWx0
ZXJFbmFibGVkOyB9Ci0KICNpZiBFTkFCTEUoQ1NTX1NUSUNLWV9QT1NJVElPTikKICAgICB2b2lk
IHNldENTU1N0aWNreVBvc2l0aW9uRW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV9jc3NTdGlja3lQ
b3NpdGlvbkVuYWJsZWQgPSBlbmFibGVkOyB9CiAgICAgYm9vbCBjc3NTdGlja3lQb3NpdGlvbkVu
YWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2Nzc1N0aWNreVBvc2l0aW9uRW5hYmxlZDsgfQpAQCAt
MzQ3LDcgKzM0NCw2IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX25lZWRzQWRvYmVGcmFtZVJlbG9h
ZGluZ1F1aXJrIDogMTsKICAgICBib29sIG1fdXNlc1BhZ2VDYWNoZSA6IDE7CiAgICAgdW5zaWdu
ZWQgbV9mb250UmVuZGVyaW5nTW9kZSA6IDE7Ci0gICAgYm9vbCBtX2lzQ1NTQ3VzdG9tRmlsdGVy
RW5hYmxlZCA6IDE7CiAjaWYgUExBVEZPUk0oSU9TKQogICAgIGJvb2wgbV9zdGFuZGFsb25lIDog
MTsKICAgICBib29sIG1fdGVsZXBob25lTnVtYmVyUGFyc2luZ0VuYWJsZWQgOiAxOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24u
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24u
Y3BwCmluZGV4IGEzOThhN2EuLjI5MTEyOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAKQEAgLTIyMyw3ICsyMjMs
NyBAQCBzdGF0aWMgaW5saW5lIFBhc3NSZWZQdHI8U3R5bGVJbWFnZT4gYmxlbmRGaWx0ZXIoY29u
c3QgQW5pbWF0aW9uQmFzZSogYW5pbSwgQ2FjaAogCiAgICAgUmVmUHRyPFN0eWxlQ2FjaGVkSW1h
Z2U+IHN0eWxlZEltYWdlID0gU3R5bGVDYWNoZWRJbWFnZTo6Y3JlYXRlKGltYWdlKTsKICAgICBh
dXRvIGltYWdlVmFsdWUgPSBDU1NJbWFnZVZhbHVlOjpjcmVhdGUoaW1hZ2UtPnVybCgpLCBzdHls
ZWRJbWFnZS5nZXQoKSk7Ci0gICAgYXV0byBmaWx0ZXJWYWx1ZSA9IENvbXB1dGVkU3R5bGVFeHRy
YWN0b3I6OnZhbHVlRm9yRmlsdGVyKGFuaW0tPnJlbmRlcmVyKCksICZhbmltLT5yZW5kZXJlcigp
LT5zdHlsZSgpLCBmaWx0ZXJSZXN1bHQsIERvTm90QWRqdXN0UGl4ZWxWYWx1ZXMpOworICAgIGF1
dG8gZmlsdGVyVmFsdWUgPSBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvckZpbHRlcigm
YW5pbS0+cmVuZGVyZXIoKS0+c3R5bGUoKSwgZmlsdGVyUmVzdWx0LCBEb05vdEFkanVzdFBpeGVs
VmFsdWVzKTsKIAogICAgIGF1dG8gcmVzdWx0ID0gQ1NTRmlsdGVySW1hZ2VWYWx1ZTo6Y3JlYXRl
KHN0ZDo6bW92ZShpbWFnZVZhbHVlKSwgc3RkOjptb3ZlKGZpbHRlclZhbHVlKSk7CiAgICAgcmVz
dWx0LmdldCgpLnNldEZpbHRlck9wZXJhdGlvbnMoZmlsdGVyUmVzdWx0KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9QbGF0Zm9ybUNBTGF5ZXJN
YWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvUGxhdGZvcm1D
QUxheWVyTWFjLm1tCmluZGV4IDgxZGFhZDkuLjU2N2RjMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9QbGF0Zm9ybUNBTGF5ZXJNYWMubW0KKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1BsYXRmb3JtQ0FMYXll
ck1hYy5tbQpAQCAtNjY0LDEwICs2NjQsNiBAQCBib29sIFBsYXRmb3JtQ0FMYXllck1hYzo6Zmls
dGVyc0NhbkJlQ29tcG9zaXRlZChjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiBmaWx0ZXJzKQogICAg
ICAgICBjb25zdCBGaWx0ZXJPcGVyYXRpb24qIGZpbHRlck9wZXJhdGlvbiA9IGZpbHRlcnMuYXQo
aSk7CiAgICAgICAgIHN3aXRjaCAoZmlsdGVyT3BlcmF0aW9uLT50eXBlKCkpIHsKICAgICAgICAg
ICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpSRUZFUkVOQ0U6Ci0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgICAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICAgICAg
ICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOgotI2VuZGlmCiAgICAg
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRp
b246OkRST1BfU0hBRE9XOgogICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBGb3Igbm93IHdlIGNh
biBvbmx5IGhhbmRsZSBkcm9wLXNoYWRvdyBpcyBpZiBpdCdzIGxhc3QgaW4gdGhlIGxpc3QKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZGY2OTBhMC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmgKKysrIC9kZXYv
bnVsbApAQCAtMSw5MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aWZuZGVmIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVy
QXJyYXlQYXJhbWV0ZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkFu
aW1hdGlvblV0aWxpdGllcy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlci5oIgot
I2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBD
dXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciA6IHB1YmxpYyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIg
ewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlckFycmF5UGFyYW1l
dGVyPiBjcmVhdGUoY29uc3QgU3RyaW5nJiBuYW1lLCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OlBh
cmFtZXRlclR5cGUgcGFyYW1ldGVyVHlwZSA9IEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6QVJSQVkp
Ci0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEN1c3RvbUZpbHRlckFycmF5UGFy
YW1ldGVyKHBhcmFtZXRlclR5cGUsIG5hbWUpKTsKLSAgICB9Ci0KLSAgICB1bnNpZ25lZCBzaXpl
KCkgY29uc3QgeyByZXR1cm4gbV9kYXRhLnNpemUoKTsgfQotICAgIGRvdWJsZSB2YWx1ZUF0KHVu
c2lnbmVkIGluZGV4KSBjb25zdCB7IHJldHVybiBtX2RhdGEuYXQoaW5kZXgpOyB9Ci0KLSAgICB2
b2lkIGFkZFZhbHVlKGRvdWJsZSB2YWx1ZSkgeyBtX2RhdGEuYXBwZW5kKHZhbHVlKTsgfQotCi0g
ICAgdmlydHVhbCBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gYmxlbmQoY29uc3Qg
Q3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91
dFNpemUmKQotICAgIHsKLSAgICAgICAgaWYgKCFmcm9tIHx8ICFpc1NhbWVUeXBlKCpmcm9tKSkK
LSAgICAgICAgICAgIHJldHVybiB0aGlzOwotCi0gICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlckFy
cmF5UGFyYW1ldGVyKiBmcm9tQXJyYXkgPSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJB
cnJheVBhcmFtZXRlcio+KGZyb20pOwotCi0gICAgICAgIGlmIChzaXplKCkgIT0gZnJvbUFycmF5
LT5zaXplKCkpCi0gICAgICAgICAgICByZXR1cm4gdGhpczsKLQotICAgICAgICBSZWZQdHI8Q3Vz
dG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI+IHJlc3VsdCA9IEN1c3RvbUZpbHRlckFycmF5UGFyYW1l
dGVyOjpjcmVhdGUobmFtZSgpKTsKLSAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXpl
KCk7ICsraSkKLSAgICAgICAgICAgIHJlc3VsdC0+YWRkVmFsdWUoV2ViQ29yZTo6YmxlbmQoZnJv
bUFycmF5LT52YWx1ZUF0KGkpLCB2YWx1ZUF0KGkpLCBwcm9ncmVzcykpOwotCi0gICAgICAgIHJl
dHVybiByZXN1bHQucmVsZWFzZSgpOwotICAgIH0KLQotICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRv
cj09KGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlciYgbykgY29uc3QKLSAgICB7Ci0gICAgICAg
IGlmICghaXNTYW1lVHlwZShvKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgICAg
ICBjb25zdCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciogb3RoZXIgPSBzdGF0aWNfY2FzdDxj
b25zdCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcio+KCZvKTsKLSAgICAgICAgcmV0dXJuIG1f
ZGF0YSA9PSBvdGhlci0+bV9kYXRhOwotICAgIH0KLQotcHJpdmF0ZToKLSAgICBDdXN0b21GaWx0
ZXJBcnJheVBhcmFtZXRlcihQYXJhbWV0ZXJUeXBlIHBhcmFtZXRlclR5cGUsIGNvbnN0IFN0cmlu
ZyYgbmFtZSkKLSAgICAgICAgOiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIocGFyYW1ldGVyVHlwZSwg
bmFtZSkKLSAgICB7Ci0gICAgfQotCi0gICAgVmVjdG9yPGRvdWJsZT4gbV9kYXRhOwotfTsKLQot
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQot
Ci0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXJfaApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb2xvclBh
cmFtZXRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBj
NjkyNDVkLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDg5
ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBv
cmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0g
KgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDi
gJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBC
RQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9t
RmlsdGVyQ29sb3JQYXJhbWV0ZXJfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
cl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ29sb3IuaCIKLSNpbmNs
dWRlICJDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1z
dGF0aWMgaW5saW5lIENvbG9yIGJsZW5kRnVuYyhjb25zdCBDb2xvciYgZnJvbSwgY29uc3QgQ29s
b3ImIHRvLCBkb3VibGUgcHJvZ3Jlc3MpCi17Ci0gICAgcmV0dXJuIGJsZW5kKGZyb20sIHRvLCBw
cm9ncmVzcyk7Ci19Ci0KLWNsYXNzIEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyIDogcHVibGlj
IEN1c3RvbUZpbHRlclBhcmFtZXRlciB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI+IGNyZWF0ZShjb25zdCBTdHJpbmcmIG5hbWUpCi0g
ICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1l
dGVyKG5hbWUpKTsKLSAgICB9Ci0KLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVy
UGFyYW1ldGVyPiBibGVuZChjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIqIGZyb21QYXJhbWV0
ZXIsIGRvdWJsZSBwcm9ncmVzcywgY29uc3QgTGF5b3V0U2l6ZSYpCi0gICAgewotICAgICAgICBp
ZiAoIWZyb21QYXJhbWV0ZXIgfHwgIWlzU2FtZVR5cGUoKmZyb21QYXJhbWV0ZXIpKQotICAgICAg
ICAgICAgcmV0dXJuIHRoaXM7Ci0gICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1l
dGVyKiBmcm9tQ29sb3IgPSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJDb2xvclBhcmFt
ZXRlcio+KGZyb21QYXJhbWV0ZXIpOwotCi0gICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJDb2xv
clBhcmFtZXRlcj4gcmVzdWx0ID0gQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI6OmNyZWF0ZShu
YW1lKCkpOwotICAgICAgICByZXN1bHQtPnNldENvbG9yKGJsZW5kRnVuYyhmcm9tQ29sb3ItPmNv
bG9yKCksIGNvbG9yKCksIHByb2dyZXNzKSk7Ci0gICAgICAgIHJldHVybiByZXN1bHQ7Ci0gICAg
fQotCi0gICAgY29uc3QgQ29sb3ImIGNvbG9yKCkgY29uc3QgeyByZXR1cm4gbV9jb2xvcjsgfQot
ICAgIHZvaWQgc2V0Q29sb3IoY29uc3QgQ29sb3ImIGNvbG9yKSB7IG1fY29sb3IgPSBjb2xvcjsg
fQotCi0gICAgdmlydHVhbCBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyJiBvKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKCFpc1NhbWVUeXBlKG8pKQotICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJDb2xvclBhcmFt
ZXRlciogb3RoZXIgPSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
cio+KCZvKTsKLSAgICAgICAgcmV0dXJuIG1fY29sb3IgPT0gb3RoZXItPm1fY29sb3I7Ci0gICAg
fQotICAgIAotcHJpdmF0ZToKLSAgICBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcihjb25zdCBT
dHJpbmcmIG5hbWUpCi0gICAgICAgIDogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKENPTE9SLCBuYW1l
KQotICAgIHsKLSAgICB9Ci0gICAgdmlydHVhbCB+Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIo
KQotICAgIHsKLSAgICB9Ci0gICAgCi0gICAgQ29sb3IgbV9jb2xvcjsKLX07Ci0KLX0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlm
IC8vIEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyQ29tcGlsZWRQcm9ncmFtLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzRi
NzU2Mi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwx
NTYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29y
cG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
IOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVS
IEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0j
aW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmgiCi0gCi0jaW5jbHVkZSAiQ3Vz
dG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLUN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbTo6Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtKFBhc3NS
ZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNvbnRleHQsIGNvbnN0IFN0cmluZyYgdmFsaWRhdGVk
VmVydGV4U2hhZGVyLCBjb25zdCBTdHJpbmcmIHZhbGlkYXRlZEZyYWdtZW50U2hhZGVyLCBDdXN0
b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSkKLSAgICA6IG1fY29udGV4dChjb250ZXh0
KQotICAgICwgbV9wcm9ncmFtKDApCi0gICAgLCBtX3Bvc2l0aW9uQXR0cmliTG9jYXRpb24oLTEp
Ci0gICAgLCBtX3RleEF0dHJpYkxvY2F0aW9uKC0xKQotICAgICwgbV9tZXNoQXR0cmliTG9jYXRp
b24oLTEpCi0gICAgLCBtX3RyaWFuZ2xlQXR0cmliTG9jYXRpb24oLTEpCi0gICAgLCBtX21lc2hC
b3hMb2NhdGlvbigtMSkKLSAgICAsIG1fcHJvamVjdGlvbk1hdHJpeExvY2F0aW9uKC0xKQotICAg
ICwgbV90aWxlU2l6ZUxvY2F0aW9uKC0xKQotICAgICwgbV9tZXNoU2l6ZUxvY2F0aW9uKC0xKQot
ICAgICwgbV9zYW1wbGVyTG9jYXRpb24oLTEpCi0gICAgLCBtX3NhbXBsZXJTaXplTG9jYXRpb24o
LTEpCi0gICAgLCBtX2NvbnRlbnRTYW1wbGVyTG9jYXRpb24oLTEpCi0gICAgLCBtX2lzSW5pdGlh
bGl6ZWQoZmFsc2UpCi17Ci0gICAgQVNTRVJUKCF2YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIuaXNOdWxs
KCkgJiYgIXZhbGlkYXRlZEZyYWdtZW50U2hhZGVyLmlzTnVsbCgpKTsKLQotICAgIG1fY29udGV4
dC0+bWFrZUNvbnRleHRDdXJyZW50KCk7Ci0KLSAgICBQbGF0Zm9ybTNET2JqZWN0IHZlcnRleFNo
YWRlciA9IGNvbXBpbGVTaGFkZXIoR3JhcGhpY3NDb250ZXh0M0Q6OlZFUlRFWF9TSEFERVIsIHZh
bGlkYXRlZFZlcnRleFNoYWRlcik7Ci0gICAgaWYgKCF2ZXJ0ZXhTaGFkZXIpCi0gICAgICAgIHJl
dHVybjsKLSAgICAKLSAgICBQbGF0Zm9ybTNET2JqZWN0IGZyYWdtZW50U2hhZGVyID0gY29tcGls
ZVNoYWRlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBR01FTlRfU0hBREVSLCB2YWxpZGF0ZWRGcmFn
bWVudFNoYWRlcik7Ci0gICAgaWYgKCFmcmFnbWVudFNoYWRlcikgewotICAgICAgICBtX2NvbnRl
eHQtPmRlbGV0ZVNoYWRlcih2ZXJ0ZXhTaGFkZXIpOwotICAgICAgICByZXR1cm47Ci0gICAgfQot
ICAgIAotICAgIG1fcHJvZ3JhbSA9IGxpbmtQcm9ncmFtKHZlcnRleFNoYWRlciwgZnJhZ21lbnRT
aGFkZXIpOwotICAgIAotICAgIG1fY29udGV4dC0+ZGVsZXRlU2hhZGVyKHZlcnRleFNoYWRlcik7
Ci0gICAgbV9jb250ZXh0LT5kZWxldGVTaGFkZXIoZnJhZ21lbnRTaGFkZXIpOwotICAgIAotICAg
IGlmICghbV9wcm9ncmFtKQotICAgICAgICByZXR1cm47Ci0gICAgCi0gICAgaW5pdGlhbGl6ZVBh
cmFtZXRlckxvY2F0aW9ucyhwcm9ncmFtVHlwZSk7Ci0gICAgCi0gICAgbV9pc0luaXRpYWxpemVk
ID0gdHJ1ZTsKLX0KLQotUGxhdGZvcm0zRE9iamVjdCBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dy
YW06OmNvbXBpbGVTaGFkZXIoR0MzRGVudW0gc2hhZGVyVHlwZSwgY29uc3QgU3RyaW5nJiBzaGFk
ZXJTdHJpbmcpCi17Ci0gICAgQVNTRVJUKCFzaGFkZXJTdHJpbmcuaXNOdWxsKCkpOwotCi0gICAg
UGxhdGZvcm0zRE9iamVjdCBzaGFkZXIgPSBtX2NvbnRleHQtPmNyZWF0ZVNoYWRlcihzaGFkZXJU
eXBlKTsKLSAgICBtX2NvbnRleHQtPnNoYWRlclNvdXJjZShzaGFkZXIsIHNoYWRlclN0cmluZyk7
Ci0gICAgbV9jb250ZXh0LT5jb21waWxlU2hhZGVyKHNoYWRlcik7Ci0gICAgCi0gICAgaW50IGNv
bXBpbGVkID0gMDsKLSAgICBtX2NvbnRleHQtPmdldFNoYWRlcml2KHNoYWRlciwgR3JhcGhpY3ND
b250ZXh0M0Q6OkNPTVBJTEVfU1RBVFVTLCAmY29tcGlsZWQpOwotICAgIGlmICghY29tcGlsZWQp
IHsKLSAgICAgICAgLy8gRklYTUU6IFRoaXMgaXMgYW4gaW52YWxpZCBzaGFkZXIuIFRocm93IHNv
bWUgZXJyb3JzLgotICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzQ0MTYKLSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVTaGFkZXIoc2hhZGVyKTsKLSAg
ICAgICAgcmV0dXJuIDA7Ci0gICAgfQotICAgIAotICAgIHJldHVybiBzaGFkZXI7Ci19Ci0KLVBs
YXRmb3JtM0RPYmplY3QgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOjpsaW5rUHJvZ3JhbShQ
bGF0Zm9ybTNET2JqZWN0IHZlcnRleFNoYWRlciwgUGxhdGZvcm0zRE9iamVjdCBmcmFnbWVudFNo
YWRlcikKLXsKLSAgICBQbGF0Zm9ybTNET2JqZWN0IHByb2dyYW0gPSBtX2NvbnRleHQtPmNyZWF0
ZVByb2dyYW0oKTsKLSAgICBtX2NvbnRleHQtPmF0dGFjaFNoYWRlcihwcm9ncmFtLCB2ZXJ0ZXhT
aGFkZXIpOwotICAgIG1fY29udGV4dC0+YXR0YWNoU2hhZGVyKHByb2dyYW0sIGZyYWdtZW50U2hh
ZGVyKTsKLSAgICBtX2NvbnRleHQtPmxpbmtQcm9ncmFtKHByb2dyYW0pOwotICAgIAotICAgIGlu
dCBsaW5rZWQgPSAwOwotICAgIG1fY29udGV4dC0+Z2V0UHJvZ3JhbWl2KHByb2dyYW0sIEdyYXBo
aWNzQ29udGV4dDNEOjpMSU5LX1NUQVRVUywgJmxpbmtlZCk7Ci0gICAgaWYgKCFsaW5rZWQpIHsK
LSAgICAgICAgLy8gRklYTUU6IEludmFsaWQgdmVydGV4L2ZyYWdtZW50IHNoYWRlciBjb21iaW5h
dGlvbi4gVGhyb3cgc29tZSBlcnJvcnMgaGVyZS4KLSAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NDE2Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRl
UHJvZ3JhbShwcm9ncmFtKTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotICAgIAotICAgIHJl
dHVybiBwcm9ncmFtOwotfQotCi12b2lkIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbTo6aW5p
dGlhbGl6ZVBhcmFtZXRlckxvY2F0aW9ucyhDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFt
VHlwZSkKLXsKLSAgICBtX3Bvc2l0aW9uQXR0cmliTG9jYXRpb24gPSBtX2NvbnRleHQtPmdldEF0
dHJpYkxvY2F0aW9uKG1fcHJvZ3JhbSwgImFfcG9zaXRpb24iKTsKLSAgICBtX3RleEF0dHJpYkxv
Y2F0aW9uID0gbV9jb250ZXh0LT5nZXRBdHRyaWJMb2NhdGlvbihtX3Byb2dyYW0sICJhX3RleENv
b3JkIik7Ci0gICAgbV9tZXNoQXR0cmliTG9jYXRpb24gPSBtX2NvbnRleHQtPmdldEF0dHJpYkxv
Y2F0aW9uKG1fcHJvZ3JhbSwgImFfbWVzaENvb3JkIik7Ci0gICAgbV90cmlhbmdsZUF0dHJpYkxv
Y2F0aW9uID0gbV9jb250ZXh0LT5nZXRBdHRyaWJMb2NhdGlvbihtX3Byb2dyYW0sICJhX3RyaWFu
Z2xlQ29vcmQiKTsKLSAgICBtX21lc2hCb3hMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0VW5pZm9y
bUxvY2F0aW9uKG1fcHJvZ3JhbSwgInVfbWVzaEJveCIpOwotICAgIG1fdGlsZVNpemVMb2NhdGlv
biA9IG1fY29udGV4dC0+Z2V0VW5pZm9ybUxvY2F0aW9uKG1fcHJvZ3JhbSwgInVfdGlsZVNpemUi
KTsKLSAgICBtX21lc2hTaXplTG9jYXRpb24gPSBtX2NvbnRleHQtPmdldFVuaWZvcm1Mb2NhdGlv
bihtX3Byb2dyYW0sICJ1X21lc2hTaXplIik7Ci0gICAgbV9wcm9qZWN0aW9uTWF0cml4TG9jYXRp
b24gPSBtX2NvbnRleHQtPmdldFVuaWZvcm1Mb2NhdGlvbihtX3Byb2dyYW0sICJ1X3Byb2plY3Rp
b25NYXRyaXgiKTsKLSAgICBtX3NhbXBsZXJTaXplTG9jYXRpb24gPSBtX2NvbnRleHQtPmdldFVu
aWZvcm1Mb2NhdGlvbihtX3Byb2dyYW0sICJ1X3RleHR1cmVTaXplIik7Ci0gICAgbV9jb250ZW50
U2FtcGxlckxvY2F0aW9uID0gbV9jb250ZXh0LT5nZXRVbmlmb3JtTG9jYXRpb24obV9wcm9ncmFt
LCAidV9jb250ZW50VGV4dHVyZSIpOwotICAgIGlmIChwcm9ncmFtVHlwZSA9PSBQUk9HUkFNX1RZ
UEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRSkgewotICAgICAgICAvLyBXaGVuIHRoZSBhdXRob3Ig
dXNlcyB0aGUgQ1NTIG1peCBmdW5jdGlvbiBpbiBhIGN1c3RvbSBmaWx0ZXIsIFdlYktpdCBhZGRz
IHRoZSBpbnRlcm5hbAotICAgICAgICAvLyBzeW1ib2wgY3NzX3VfdGV4dHVyZSB0byB0aGUgc2hh
ZGVyIGNvZGUsIHdoaWNoIHJlZmVyZW5jZXMgdGhlIHRleHR1cmUgb2YgdGhlIGVsZW1lbnQuCi0g
ICAgICAgIG1fc2FtcGxlckxvY2F0aW9uID0gbV9jb250ZXh0LT5nZXRVbmlmb3JtTG9jYXRpb24o
bV9wcm9ncmFtLCAiY3NzX3VfdGV4dHVyZSIpOwotICAgIH0KLX0KLQotaW50IEN1c3RvbUZpbHRl
ckNvbXBpbGVkUHJvZ3JhbTo6dW5pZm9ybUxvY2F0aW9uQnlOYW1lKGNvbnN0IFN0cmluZyYgbmFt
ZSkKLXsKLSAgICBBU1NFUlQobV9pc0luaXRpYWxpemVkKTsKLSAgICAvLyBGSVhNRTogSW1wcm92
ZSB0aGlzIGJ5IGNhY2hpbmcgdGhlIHVuaWZvcm0gbG9jYXRpb25zLgotICAgIHJldHVybiBtX2Nv
bnRleHQtPmdldFVuaWZvcm1Mb2NhdGlvbihtX3Byb2dyYW0sIG5hbWUpOwotfQotICAgIAotQ3Vz
dG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOjp+Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtKCkK
LXsKLSAgICBpZiAobV9wcm9ncmFtKSB7Ci0gICAgICAgIG1fY29udGV4dC0+bWFrZUNvbnRleHRD
dXJyZW50KCk7Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlUHJvZ3JhbShtX3Byb2dyYW0pOwot
ICAgIH0KLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotI2VuZGlmIC8vIEVOQUJMRShDU1Nf
U0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVkYmYwZDQuLjAw
MDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaAorKysgL2Rldi9udWxsCkBAIC0xLDk5ICswLDAgQEAK
LS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KA
nSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0g
KiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtX2gKLQot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5o
IgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3Ry
aW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyR2xvYmFs
Q29udGV4dDsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOiBwdWJsaWMgUmVm
Q291bnRlZDxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IHsKLXB1YmxpYzoKLSAgICBzdGF0
aWMgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IGNyZWF0ZShQYXNzUmVm
UHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIHZhbGlkYXRlZFZl
cnRleFNoYWRlciwgY29uc3QgU3RyaW5nJiB2YWxpZGF0ZWRGcmFnbWVudFNoYWRlciwgQ3VzdG9t
RmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUpCi0gICAgewotICAgICAgICByZXR1cm4gYWRv
cHRSZWYobmV3IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbShjb250ZXh0LCB2YWxpZGF0ZWRW
ZXJ0ZXhTaGFkZXIsIHZhbGlkYXRlZEZyYWdtZW50U2hhZGVyLCBwcm9ncmFtVHlwZSkpOwotICAg
IH0KLSAgICAKLSAgICB+Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtKCk7Ci0gICAgCi0gICAg
aW50IHBvc2l0aW9uQXR0cmliTG9jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX3Bvc2l0aW9uQXR0
cmliTG9jYXRpb247IH0KLSAgICBpbnQgdGV4QXR0cmliTG9jYXRpb24oKSBjb25zdCB7IHJldHVy
biBtX3RleEF0dHJpYkxvY2F0aW9uOyB9Ci0gICAgaW50IG1lc2hBdHRyaWJMb2NhdGlvbigpIGNv
bnN0IHsgcmV0dXJuIG1fbWVzaEF0dHJpYkxvY2F0aW9uOyB9Ci0gICAgaW50IHRyaWFuZ2xlQXR0
cmliTG9jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX3RyaWFuZ2xlQXR0cmliTG9jYXRpb247IH0K
LSAgICBpbnQgbWVzaEJveExvY2F0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoQm94TG9jYXRp
b247IH0KLSAgICBpbnQgcHJvamVjdGlvbk1hdHJpeExvY2F0aW9uKCkgY29uc3QgeyByZXR1cm4g
bV9wcm9qZWN0aW9uTWF0cml4TG9jYXRpb247IH0KLSAgICBpbnQgdGlsZVNpemVMb2NhdGlvbigp
IGNvbnN0IHsgcmV0dXJuIG1fdGlsZVNpemVMb2NhdGlvbjsgfQotICAgIGludCBtZXNoU2l6ZUxv
Y2F0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoU2l6ZUxvY2F0aW9uOyB9Ci0gICAgaW50IHNh
bXBsZXJMb2NhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fc2FtcGxlckxvY2F0aW9uOyB9Ci0gICAg
aW50IGNvbnRlbnRTYW1wbGVyTG9jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX2NvbnRlbnRTYW1w
bGVyTG9jYXRpb247IH0KLSAgICBpbnQgc2FtcGxlclNpemVMb2NhdGlvbigpIGNvbnN0IHsgcmV0
dXJuIG1fc2FtcGxlclNpemVMb2NhdGlvbjsgfQotCi0gICAgaW50IHVuaWZvcm1Mb2NhdGlvbkJ5
TmFtZShjb25zdCBTdHJpbmcmKTsKLSAgICAKLSAgICBib29sIGlzSW5pdGlhbGl6ZWQoKSBjb25z
dCB7IHJldHVybiBtX2lzSW5pdGlhbGl6ZWQ7IH0KLSAgICAKLSAgICBQbGF0Zm9ybTNET2JqZWN0
IHByb2dyYW0oKSBjb25zdCB7IHJldHVybiBtX3Byb2dyYW07IH0KLXByaXZhdGU6Ci0gICAgQ3Vz
dG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtKFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+LCBj
b25zdCBTdHJpbmcmIHZhbGlkYXRlZFZlcnRleFNoYWRlciwgY29uc3QgU3RyaW5nJiB2YWxpZGF0
ZWRGcmFnbWVudFNoYWRlciwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUpOwotICAgIAotICAgIFBs
YXRmb3JtM0RPYmplY3QgY29tcGlsZVNoYWRlcihHQzNEZW51bSBzaGFkZXJUeXBlLCBjb25zdCBT
dHJpbmcmIHNoYWRlclN0cmluZyk7Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBsaW5rUHJvZ3JhbShQ
bGF0Zm9ybTNET2JqZWN0IHZlcnRleFNoYWRlciwgUGxhdGZvcm0zRE9iamVjdCBmcmFnbWVudFNo
YWRlcik7Ci0gICAgdm9pZCBpbml0aWFsaXplUGFyYW1ldGVyTG9jYXRpb25zKEN1c3RvbUZpbHRl
clByb2dyYW1UeXBlKTsKLSAgICAKLSAgICBSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IG1fY29u
dGV4dDsKLSAgICBQbGF0Zm9ybTNET2JqZWN0IG1fcHJvZ3JhbTsKLSAgICAKLSAgICBpbnQgbV9w
b3NpdGlvbkF0dHJpYkxvY2F0aW9uOwotICAgIGludCBtX3RleEF0dHJpYkxvY2F0aW9uOwotICAg
IGludCBtX21lc2hBdHRyaWJMb2NhdGlvbjsKLSAgICBpbnQgbV90cmlhbmdsZUF0dHJpYkxvY2F0
aW9uOwotICAgIGludCBtX21lc2hCb3hMb2NhdGlvbjsKLSAgICBpbnQgbV9wcm9qZWN0aW9uTWF0
cml4TG9jYXRpb247Ci0gICAgaW50IG1fdGlsZVNpemVMb2NhdGlvbjsKLSAgICBpbnQgbV9tZXNo
U2l6ZUxvY2F0aW9uOwotICAgIGludCBtX3NhbXBsZXJMb2NhdGlvbjsKLSAgICBpbnQgbV9zYW1w
bGVyU2l6ZUxvY2F0aW9uOwotICAgIGludCBtX2NvbnRlbnRTYW1wbGVyTG9jYXRpb247Ci0gICAg
Ci0gICAgYm9vbCBtX2lzSW5pdGlhbGl6ZWQ7Ci19OwotCi19Ci0KLSNlbmRpZiAvLyBFTkFCTEUo
Q1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbnN0
YW50cy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21G
aWx0ZXJDb25zdGFudHMuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTU5ZGJjOC4u
MDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlckNvbnN0YW50cy5oCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
Ci0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJDb25zdGFu
dHNfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJDb25zdGFudHNfaAotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLWVudW0gQ3VzdG9tRmlsdGVyTWVzaENvbnN0YW50cyB7Ci0gICAgLy8gVmVydGV4IGF0
dHJpYnV0ZSBzaXplcwotICAgIFBvc2l0aW9uQXR0cmliU2l6ZSA9IDQsCi0gICAgVGV4QXR0cmli
U2l6ZSA9IDIsCi0gICAgTWVzaEF0dHJpYlNpemUgPSAyLAotICAgIFRyaWFuZ2xlQXR0cmliU2l6
ZSA9IDMsCi0gICAgLy8gVmVydGV4IGF0dHJpYnV0ZSBvZmZzZXRzCi0gICAgUG9zaXRpb25BdHRy
aWJPZmZzZXQgPSAwLAotICAgIFRleEF0dHJpYk9mZnNldCA9IFBvc2l0aW9uQXR0cmliT2Zmc2V0
ICsgUG9zaXRpb25BdHRyaWJTaXplICogc2l6ZW9mKGZsb2F0KSwKLSAgICBNZXNoQXR0cmliT2Zm
c2V0ID0gVGV4QXR0cmliT2Zmc2V0ICsgVGV4QXR0cmliU2l6ZSAqIHNpemVvZihmbG9hdCksCi0g
ICAgVHJpYW5nbGVBdHRyaWJPZmZzZXQgPSBNZXNoQXR0cmliT2Zmc2V0ICsgTWVzaEF0dHJpYlNp
emUgKiBzaXplb2YoZmxvYXQpCi19OwotCi1lbnVtIEN1c3RvbUZpbHRlck1lc2hUeXBlIHsKLSAg
ICBNZXNoVHlwZUF0dGFjaGVkLAotICAgIE1lc2hUeXBlRGV0YWNoZWQKLX07Ci0KLWVudW0gQ3Vz
dG9tRmlsdGVyUHJvZ3JhbVR5cGUgewotICAgIFBST0dSQU1fVFlQRV9OT19FTEVNRU5UX1RFWFRV
UkUsCi0gICAgUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUKLX07Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEN1c3RvbUZpbHRlckNvbnN0YW50c19oCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggODcxMzIzOC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3BwCisrKyAv
ZGV2L251bGwKQEAgLTEsOTMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9i
ZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0Uo
M0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIgotCi0j
aW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0M0QuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1D
dXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0OjpDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0KCkKLXsK
LX0KLQotQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dDo6fkN1c3RvbUZpbHRlckdsb2JhbENvbnRl
eHQoKQotewotfQotCi1BTkdMRVdlYktpdEJyaWRnZSogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dDo6d2ViZ2xTaGFkZXJWYWxpZGF0b3IoKQotewotICAgIGlmICghbV93ZWJnbFNoYWRlclZhbGlk
YXRvcikKLSAgICAgICAgbV93ZWJnbFNoYWRlclZhbGlkYXRvciA9IGNyZWF0ZVNoYWRlclZhbGlk
YXRvcihTSF9XRUJHTF9TUEVDKTsKLSAgICByZXR1cm4gbV93ZWJnbFNoYWRlclZhbGlkYXRvci5n
ZXQoKTsKLX0KLQotQU5HTEVXZWJLaXRCcmlkZ2UqIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQ6
Om1peFNoYWRlclZhbGlkYXRvcigpCi17Ci0gICAgaWYgKCFtX21peFNoYWRlclZhbGlkYXRvcikK
LSAgICAgICAgbV9taXhTaGFkZXJWYWxpZGF0b3IgPSBjcmVhdGVTaGFkZXJWYWxpZGF0b3IoU0hf
Q1NTX1NIQURFUlNfU1BFQyk7Ci0gICAgcmV0dXJuIG1fbWl4U2hhZGVyVmFsaWRhdG9yLmdldCgp
OwotfQotCi1QYXNzT3duUHRyPEFOR0xFV2ViS2l0QnJpZGdlPiBDdXN0b21GaWx0ZXJHbG9iYWxD
b250ZXh0OjpjcmVhdGVTaGFkZXJWYWxpZGF0b3IoU2hTaGFkZXJTcGVjIHNoYWRlclNwZWMpCi17
Ci0gICAgT3duUHRyPEFOR0xFV2ViS2l0QnJpZGdlPiB2YWxpZGF0b3IgPSBhZG9wdFB0cihuZXcg
QU5HTEVXZWJLaXRCcmlkZ2UoU0hfRVNTTF9PVVRQVVQsIHNoYWRlclNwZWMpKTsKLSAgICBTaEJ1
aWx0SW5SZXNvdXJjZXMgcmVzb3VyY2VzOwotICAgIFNoSW5pdEJ1aWx0SW5SZXNvdXJjZXMoJnJl
c291cmNlcyk7Ci0gICAgdmFsaWRhdG9yLT5zZXRSZXNvdXJjZXMocmVzb3VyY2VzKTsKLSAgICBy
ZXR1cm4gdmFsaWRhdG9yLnJlbGVhc2UoKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJHbG9iYWxD
b250ZXh0OjpwcmVwYXJlQ29udGV4dElmTmVlZGVkKEhvc3RXaW5kb3cqIGhvc3RXaW5kb3csIGJv
b2wgZm9yY2VTb2Z0d2FyZVJlbmRlcmluZykKLXsKLSAgICBpZiAobV9jb250ZXh0LmdldCgpKQot
ICAgICAgICByZXR1cm47Ci0KLSAgICBHcmFwaGljc0NvbnRleHQzRDo6QXR0cmlidXRlcyBhdHRy
aWJ1dGVzOwotICAgIGF0dHJpYnV0ZXMucHJlc2VydmVEcmF3aW5nQnVmZmVyID0gdHJ1ZTsKLSAg
ICBhdHRyaWJ1dGVzLnByZW11bHRpcGxpZWRBbHBoYSA9IGZhbHNlOwotICAgIGF0dHJpYnV0ZXMu
c2hhcmVSZXNvdXJjZXMgPSB0cnVlOwotICAgIGF0dHJpYnV0ZXMucHJlZmVyRGlzY3JldGVHUFUg
PSB0cnVlOwotCi0gICAgaWYgKGZvcmNlU29mdHdhcmVSZW5kZXJpbmcpCi0gICAgICAgIGF0dHJp
YnV0ZXMuZm9yY2VTb2Z0d2FyZVJlbmRlcmVyID0gdHJ1ZTsKLQotICAgIG1fY29udGV4dCA9IEdy
YXBoaWNzQ29udGV4dDNEOjpjcmVhdGUoYXR0cmlidXRlcywgaG9zdFdpbmRvdywgR3JhcGhpY3ND
b250ZXh0M0Q6OlJlbmRlck9mZnNjcmVlbik7Ci0gICAgaWYgKCFtX2NvbnRleHQpCi0gICAgICAg
IHJldHVybjsKLSAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotICAgIG1fY29u
dGV4dC0+ZW5hYmxlKEdyYXBoaWNzQ29udGV4dDNEOjpERVBUSF9URVNUKTsKLX0KLQotfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0Uo
M0RfR1JBUEhJQ1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZThmNmJkLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dC5oCisrKyAvZGV2L251bGwKQEAgLTEsNzcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
Ci0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
Ci0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1B
R0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0X2gKLSNkZWZpbmUg
Q3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dF9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYm
IFVTRSgzRF9HUkFQSElDUykKLSNpbmNsdWRlICJBTkdMRVdlYktpdEJyaWRnZS5oIgotI2luY2x1
ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgotCi1uYW1lc3BhY2Ug
V2ViQ29yZSB7Ci0KLWNsYXNzIEhvc3RXaW5kb3c7Ci1jbGFzcyBHcmFwaGljc0NvbnRleHQzRDsK
LQotY2xhc3MgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCB7Ci1wdWJsaWM6Ci0gICAgQ3VzdG9t
RmlsdGVyR2xvYmFsQ29udGV4dCgpOwotICAgIH5DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0KCk7
Ci0gICAgCi0gICAgR3JhcGhpY3NDb250ZXh0M0QqIGNvbnRleHQoKSBjb25zdCB7IHJldHVybiBt
X2NvbnRleHQuZ2V0KCk7IH0KLQotICAgIC8vIENTUyBzaGFkZXJzIG5vdCByZWZlcmVuY2VkIGZy
b20gdGhlIENTUyBtaXggZnVuY3Rpb24gc2hvdWxkIGJlIHZhbGlkYXRlZCBqdXN0IGxpa2UgcmVn
dWxhciBXZWJHTCBzaGFkZXJzLgotICAgIC8vIFRoaXMgQU5HTEUgdmFsaWRhdG9yIHVzZXMgdGhl
IFNIX1dFQkdMX1NQRUMgZmxhZy4KLSAgICBBTkdMRVdlYktpdEJyaWRnZSogd2ViZ2xTaGFkZXJW
YWxpZGF0b3IoKTsKLQotICAgIC8vIENTUyBzaGFkZXJzIHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NT
IG1peCBmdW5jdGlvbiBzaG91bGQgYmUgdmFsaWRhdGVkIHNsaWdodGx5IGRpZmZlcmVudGx5IHRo
YW4gV2ViR0wgc2hhZGVycy4KLSAgICAvLyBUaGlzIEFOR0xFIHZhbGlkYXRvciB1c2VzIHRoZSBT
SF9DU1NfU0hBREVSU19TUEVDIGZsYWcuCi0gICAgLy8gVW5kZXIgdGhpcyBmbGFnLCBtb3N0IG5v
dGFibHk6Ci0gICAgLy8gLSBUaGUgImdsX0ZyYWdDb2xvciIgYnVpbHQtaW4gaXMgbm90IGF2YWls
YWJsZS4KLSAgICAvLyAtIEluc3RlYWQsIHRoZSAiY3NzX01peENvbG9yIiBhbmQgImNzc19Db2xv
ck1hdHJpeCIgYnVpbHQtaW5zIGFyZSBhdmFpbGFibGUuCi0gICAgLy8gLSBUaGUgImNzc18iIHBy
ZWZpeCBpcyByZXNlcnZlZC4KLSAgICAvLyAtIEluIHRoZSB0cmFuc2xhdGVkIHNvdXJjZSB0aGF0
IEFOR0xFIHJldHVybnMsIEFOR0xFIHJlbmFtZXMgdGhlIGF1dGhvcidzICJtYWluIiBmdW5jdGlv
biB0byAiY3NzX21haW4iLgotICAgIC8vIFRoZSBjb21wbGV0ZSBkZXRhaWxzIGFyZSBkb2N1bWVu
dGVkIGluIEFOR0xFL1NoYWRlckxhbmcuaC4KLSAgICBBTkdMRVdlYktpdEJyaWRnZSogbWl4U2hh
ZGVyVmFsaWRhdG9yKCk7Ci0gICAgCi0gICAgdm9pZCBwcmVwYXJlQ29udGV4dElmTmVlZGVkKEhv
c3RXaW5kb3cqLCBib29sIGZvcmNlU29mdHdhcmVSZW5kZXJpbmcpOwotcHJpdmF0ZToKLSAgICBz
dGF0aWMgUGFzc093blB0cjxBTkdMRVdlYktpdEJyaWRnZT4gY3JlYXRlU2hhZGVyVmFsaWRhdG9y
KFNoU2hhZGVyU3BlYyk7Ci0KLSAgICBSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IG1fY29udGV4
dDsKLSAgICBPd25QdHI8QU5HTEVXZWJLaXRCcmlkZ2U+IG1fd2ViZ2xTaGFkZXJWYWxpZGF0b3I7
Ci0gICAgT3duUHRyPEFOR0xFV2ViS2l0QnJpZGdlPiBtX21peFNoYWRlclZhbGlkYXRvcjsKLX07
Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVS
UykgJiYgVVNFKDNEX0dSQVBISUNTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyR2xvYmFsQ29u
dGV4dF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlck1lc2guY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggZWZmMDc4OC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNzIg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9y
YXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKA
nEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJF
Ci0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZp
Zy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5j
bHVkZSAiQ3VzdG9tRmlsdGVyTWVzaC5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck1lc2hHZW5l
cmF0b3IuaCIKLSNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5oIgotCi1uYW1lc3BhY2UgV2Vi
Q29yZSB7Ci0KLUN1c3RvbUZpbHRlck1lc2g6OkN1c3RvbUZpbHRlck1lc2goR3JhcGhpY3NDb250
ZXh0M0QqIGNvbnRleHQsIHVuc2lnbmVkIGNvbHVtbnMsIHVuc2lnbmVkIHJvd3MsCi0gICAgY29u
c3QgRmxvYXRSZWN0JiBtZXNoQm94LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAg
ICA6IG1fY29udGV4dChjb250ZXh0KQotICAgICwgbV92ZXJ0aWNlc0J1ZmZlck9iamVjdCgwKQot
ICAgICwgbV9lbGVtZW50c0J1ZmZlck9iamVjdCgwKQotICAgICwgbV9tZXNoQm94KG1lc2hCb3gp
Ci0gICAgLCBtX21lc2hUeXBlKG1lc2hUeXBlKQotewotICAgIEN1c3RvbUZpbHRlck1lc2hHZW5l
cmF0b3IgZ2VuZXJhdG9yKGNvbHVtbnMsIHJvd3MsIG1lc2hCb3gsIG1lc2hUeXBlKTsKLSAgICBt
X2luZGljZXNDb3VudCA9IGdlbmVyYXRvci5pbmRpY2VzQ291bnQoKTsKLSAgICBtX2J5dGVzUGVy
VmVydGV4ID0gZ2VuZXJhdG9yLmZsb2F0c1BlclZlcnRleCgpICogc2l6ZW9mKGZsb2F0KTsgICAg
Ci0KLSAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotCi0gICAgbV92ZXJ0aWNl
c0J1ZmZlck9iamVjdCA9IG1fY29udGV4dC0+Y3JlYXRlQnVmZmVyKCk7Ci0gICAgbV9jb250ZXh0
LT5iaW5kQnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpBUlJBWV9CVUZGRVIsIG1fdmVydGljZXNC
dWZmZXJPYmplY3QpOwotICAgIG1fY29udGV4dC0+YnVmZmVyRGF0YShHcmFwaGljc0NvbnRleHQz
RDo6QVJSQVlfQlVGRkVSLCBnZW5lcmF0b3IudmVydGljZXMoKS5zaXplKCkgKiBzaXplb2YoZmxv
YXQpLCBnZW5lcmF0b3IudmVydGljZXMoKS5kYXRhKCksIEdyYXBoaWNzQ29udGV4dDNEOjpTVEFU
SUNfRFJBVyk7Ci0gICAgCi0gICAgbV9lbGVtZW50c0J1ZmZlck9iamVjdCA9IG1fY29udGV4dC0+
Y3JlYXRlQnVmZmVyKCk7Ci0gICAgbV9jb250ZXh0LT5iaW5kQnVmZmVyKEdyYXBoaWNzQ29udGV4
dDNEOjpFTEVNRU5UX0FSUkFZX0JVRkZFUiwgbV9lbGVtZW50c0J1ZmZlck9iamVjdCk7Ci0gICAg
bV9jb250ZXh0LT5idWZmZXJEYXRhKEdyYXBoaWNzQ29udGV4dDNEOjpFTEVNRU5UX0FSUkFZX0JV
RkZFUiwgZ2VuZXJhdG9yLmluZGljZXMoKS5zaXplKCkgKiBzaXplb2YodWludDE2X3QpLCBnZW5l
cmF0b3IuaW5kaWNlcygpLmRhdGEoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OlNUQVRJQ19EUkFXKTsK
LX0KLQotQ3VzdG9tRmlsdGVyTWVzaDo6fkN1c3RvbUZpbHRlck1lc2goKQotewotICAgIG1fY29u
dGV4dC0+bWFrZUNvbnRleHRDdXJyZW50KCk7Ci0gICAgbV9jb250ZXh0LT5kZWxldGVCdWZmZXIo
bV92ZXJ0aWNlc0J1ZmZlck9iamVjdCk7Ci0gICAgbV9jb250ZXh0LT5kZWxldGVCdWZmZXIobV9l
bGVtZW50c0J1ZmZlck9iamVjdCk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2Vu
ZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
ck1lc2guaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyTWVzaC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyYmIzZDVhLi4wMDAw
MDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyTWVzaC5oCisrKyAvZGV2L251bGwKQEAgLTEsODAgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJNZXNoX2gKLSNkZWZpbmUg
Q3VzdG9tRmlsdGVyTWVzaF9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9H
UkFQSElDUykKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUg
IkZsb2F0UmVjdC5oIgotI2luY2x1ZGUgIkdyYXBoaWNzVHlwZXMzRC5oIgotI2luY2x1ZGUgPHd0
Zi9SZWZDb3VudGVkLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgR3JhcGhpY3ND
b250ZXh0M0Q7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlck1lc2ggOiBwdWJsaWMgUmVmQ291bnRlZDxD
dXN0b21GaWx0ZXJNZXNoPiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8Q3VzdG9t
RmlsdGVyTWVzaD4gY3JlYXRlKEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0LCB1bnNpZ25lZCBj
b2xzLCB1bnNpZ25lZCByb3dzLCBjb25zdCBGbG9hdFJlY3QmIG1lc2hCb3gsIEN1c3RvbUZpbHRl
ck1lc2hUeXBlIG1lc2hUeXBlKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBD
dXN0b21GaWx0ZXJNZXNoKGNvbnRleHQsIGNvbHMsIHJvd3MsIG1lc2hCb3gsIG1lc2hUeXBlKSk7
Ci0gICAgfQotICAgIH5DdXN0b21GaWx0ZXJNZXNoKCk7Ci0KLSAgICBQbGF0Zm9ybTNET2JqZWN0
IHZlcnRpY2VzQnVmZmVyT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV92ZXJ0aWNlc0J1ZmZlck9i
amVjdDsgfQotICAgIHVuc2lnbmVkIGJ5dGVzUGVyVmVydGV4KCkgY29uc3QgeyByZXR1cm4gbV9i
eXRlc1BlclZlcnRleDsgfQotICAgIAotICAgIFBsYXRmb3JtM0RPYmplY3QgZWxlbWVudHNCdWZm
ZXJPYmplY3QoKSBjb25zdCB7IHJldHVybiBtX2VsZW1lbnRzQnVmZmVyT2JqZWN0OyB9Ci0gICAg
dW5zaWduZWQgaW5kaWNlc0NvdW50KCkgY29uc3QgeyByZXR1cm4gbV9pbmRpY2VzQ291bnQ7IH0K
LSAgICAKLSAgICBjb25zdCBGbG9hdFJlY3QmIG1lc2hCb3goKSBjb25zdCB7IHJldHVybiBtX21l
c2hCb3g7IH0KLSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSgpIGNvbnN0IHsgcmV0
dXJuIG1fbWVzaFR5cGU7IH0KLQotcHJpdmF0ZToKLSAgICBDdXN0b21GaWx0ZXJNZXNoKEdyYXBo
aWNzQ29udGV4dDNEKiwgdW5zaWduZWQgY29scywgdW5zaWduZWQgcm93cywgY29uc3QgRmxvYXRS
ZWN0JiBtZXNoQm94LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSk7Ci0gICAgCi0gICAgR3JhcGhpY3ND
b250ZXh0M0QqIG1fY29udGV4dDsKLSAgICAKLSAgICBQbGF0Zm9ybTNET2JqZWN0IG1fdmVydGlj
ZXNCdWZmZXJPYmplY3Q7Ci0gICAgdW5zaWduZWQgbV9ieXRlc1BlclZlcnRleDsKLSAgICAKLSAg
ICBQbGF0Zm9ybTNET2JqZWN0IG1fZWxlbWVudHNCdWZmZXJPYmplY3Q7Ci0gICAgdW5zaWduZWQg
bV9pbmRpY2VzQ291bnQ7Ci0gICAgCi0gICAgRmxvYXRSZWN0IG1fbWVzaEJveDsKLSAgICBDdXN0
b21GaWx0ZXJNZXNoVHlwZSBtX21lc2hUeXBlOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0K
LSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJNZXNoX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1l
c2hHZW5lcmF0b3IuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3NzQ2OTE0Li4w
MDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3Vz
dG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwxNzMgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICog
YXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT
4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YK
LSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgot
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLSNp
Zm5kZWYgTkRFQlVHCi0vLyBVc2UgImNhbGwgJ1dlYkNvcmU6OnNfZHVtcEN1c3RvbUZpbHRlck1l
c2hCdWZmZXJzJyA9IDEiIGluIEdEQiB0byBhY3RpdmF0ZSBwcmludGluZyBvZiB0aGUgbWVzaCBi
dWZmZXJzLgotc3RhdGljIGJvb2wgc19kdW1wQ3VzdG9tRmlsdGVyTWVzaEJ1ZmZlcnMgPSBmYWxz
ZTsKLSNlbmRpZgotCi1DdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjpDdXN0b21GaWx0ZXJNZXNo
R2VuZXJhdG9yKHVuc2lnbmVkIGNvbHVtbnMsIHVuc2lnbmVkIHJvd3MsIGNvbnN0IEZsb2F0UmVj
dCYgbWVzaEJveCwgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAgOiBtX21lc2hU
eXBlKG1lc2hUeXBlKQotICAgICwgbV9wb2ludHMoY29sdW1ucyArIDEsIHJvd3MgKyAxKQotICAg
ICwgbV90aWxlcyhjb2x1bW5zLCByb3dzKQotICAgICwgbV90aWxlU2l6ZUluUGl4ZWxzKG1lc2hC
b3gud2lkdGgoKSAvIG1fdGlsZXMud2lkdGgoKSwgbWVzaEJveC5oZWlnaHQoKSAvIG1fdGlsZXMu
aGVpZ2h0KCkpCi0gICAgLCBtX3RpbGVTaXplSW5EZXZpY2VTcGFjZSgxLjBmIC8gbV90aWxlcy53
aWR0aCgpLCAxLjBmIC8gbV90aWxlcy5oZWlnaHQoKSkKLSAgICAsIG1fbWVzaEJveChtZXNoQm94
KQotewotICAgIC8vIEJ1aWxkIHRoZSB0d28gYnVmZmVycyBuZWVkZWQgdG8gZHJhdyB0cmlhbmds
ZXM6Ci0gICAgLy8gKiBtX3ZlcnRpY2VzIGhhcyBhIG51bWJlciBvZiBmbG9hdCBhdHRyaWJ1dGVz
IHRoYXQgd2lsbCBiZSBwYXNzZWQgdG8gdGhlIHZlcnRleCBzaGFkZXIKLSAgICAvLyBmb3IgZWFj
aCBjb21wdXRlZCB2ZXJ0ZXguIFRoaXMgbnVtYmVyIGlzIGNhbGN1bGF0ZWQgaW4gZmxvYXRzUGVy
VmVydGV4KCkgYmFzZWQgb24gdGhlIG1lc2hUeXBlLgotICAgIC8vICogbV9pbmRpY2VzIGlzIGEg
YnVmZmVyIHRoYXQgd2lsbCBoYXZlIDMgaW5kaWNlcyBwZXIgdHJpYW5nbGUuIEVhY2ggaW5kZXgg
d2lsbCBwb2ludCBpbnNpZGUKLSAgICAvLyB0aGUgbV92ZXJ0aWNlcyBidWZmZXIuCi0gICAgbV92
ZXJ0aWNlcy5yZXNlcnZlQ2FwYWNpdHkodmVydGljZXNDb3VudCgpICogZmxvYXRzUGVyVmVydGV4
KCkpOwotICAgIG1faW5kaWNlcy5yZXNlcnZlQ2FwYWNpdHkoaW5kaWNlc0NvdW50KCkpOwotCi0g
ICAgLy8gQmFzZWQgb24gdGhlIG1lc2hUeXBlIHRoZXJlIGNhbiBiZSB0d28gdHlwZXMgb2YgbWVz
aGVzLgotICAgIC8vICogYXR0YWNoZWQ6IGVhY2ggdHJpYW5nbGUgdXNlcyB2ZXJ0aWNlcyBmcm9t
IHRoZSBuZWlnaGJvciB0cmlhbmdsZXMuIFRoaXMgaXMgdXNlZnVsIHRvIHNhdmUgc29tZSBHUFUg
bWVtb3J5Ci0gICAgLy8gd2hlbiB0aGVyZSdzIG5vIG5lZWQgdG8gZXhwbG9kZSB0aGUgdGlsZXMu
Ci0gICAgLy8gKiBkZXRhY2hlZDogZWFjaCB0cmlhbmdsZSBoYXMgaXRzIG93biB2ZXJ0aWNlcy4g
VGhpcyBtZWFucyBlYWNoIHRyaWFuZ2xlIGNhbiBiZSBtb3ZlZCBpbmRlcGVuZGVudGx5IGFuZCBh
IHZlYzMKLSAgICAvLyBhdHRyaWJ1dGUgaXMgcGFzc2VkLCBzbyB0aGF0IGVhY2ggdmVydGV4IGNh
biBiZSB1bmlxdWVseSBpZGVudGlmaWVkLgotICAgIGlmIChtX21lc2hUeXBlID09IE1lc2hUeXBl
QXR0YWNoZWQpCi0gICAgICAgIGdlbmVyYXRlQXR0YWNoZWRNZXNoKCk7Ci0gICAgZWxzZQotICAg
ICAgICBnZW5lcmF0ZURldGFjaGVkTWVzaCgpOwotCi0jaWZuZGVmIE5ERUJVRwotICAgIGlmIChz
X2R1bXBDdXN0b21GaWx0ZXJNZXNoQnVmZmVycykKLSAgICAgICAgZHVtcEJ1ZmZlcnMoKTsKLSNl
bmRpZgotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6OmFkZEF0dGFjaGVkTWVz
aEluZGV4KGludCBxdWFkWCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZ
LCBpbnQgdHJpYW5nbGUpCi17Ci0gICAgVU5VU0VEX1BBUkFNKHRyaWFuZ2xlKTsKLSAgICBtX2lu
ZGljZXMuYXBwZW5kKChxdWFkWSArIHRyaWFuZ2xlWSkgKiBtX3BvaW50cy53aWR0aCgpICsgKHF1
YWRYICsgdHJpYW5nbGVYKSk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6
Z2VuZXJhdGVBdHRhY2hlZE1lc2goKQotewotICAgIGZvciAoaW50IGogPSAwOyBqIDwgbV9wb2lu
dHMuaGVpZ2h0KCk7ICsraikgewotICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IG1fcG9pbnRz
LndpZHRoKCk7ICsraSkKLSAgICAgICAgICAgIGFkZEF0dGFjaGVkTWVzaFZlcnRleEF0dHJpYnV0
ZXMoaSwgaik7Ci0gICAgfQotCi0gICAgZm9yIChpbnQgaiA9IDA7IGogPCBtX3RpbGVzLmhlaWdo
dCgpOyArK2opIHsKLSAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBtX3RpbGVzLndpZHRoKCk7
ICsraSkKLSAgICAgICAgICAgIGFkZFRpbGU8JkN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6OmFk
ZEF0dGFjaGVkTWVzaEluZGV4PihpLCBqKTsKLSAgICB9Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVy
TWVzaEdlbmVyYXRvcjo6YWRkRGV0YWNoZWRNZXNoVmVydGV4QW5kSW5kZXgoaW50IHF1YWRYLCBp
bnQgcXVhZFksIGludCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGludCB0cmlhbmdsZSkKLXsK
LSAgICBhZGREZXRhY2hlZE1lc2hWZXJ0ZXhBdHRyaWJ1dGVzKHF1YWRYLCBxdWFkWSwgdHJpYW5n
bGVYLCB0cmlhbmdsZVksIHRyaWFuZ2xlKTsKLSAgICBtX2luZGljZXMuYXBwZW5kKG1faW5kaWNl
cy5zaXplKCkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6OmdlbmVyYXRl
RGV0YWNoZWRNZXNoKCkKLXsKLSAgICBmb3IgKGludCBqID0gMDsgaiA8IG1fdGlsZXMuaGVpZ2h0
KCk7ICsraikgewotICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IG1fdGlsZXMud2lkdGgoKTsg
KytpKQotICAgICAgICAgICAgYWRkVGlsZTwmQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRk
RGV0YWNoZWRNZXNoVmVydGV4QW5kSW5kZXg+KGksIGopOwotICAgIH0KLX0KLQotdm9pZCBDdXN0
b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjphZGRQb3NpdGlvbkF0dHJpYnV0ZShpbnQgcXVhZFgsIGlu
dCBxdWFkWSkKLXsKLSAgICAvLyB2ZWM0IGFfcG9zaXRpb24KLSAgICBtX3ZlcnRpY2VzLmFwcGVu
ZChtX3RpbGVTaXplSW5QaXhlbHMud2lkdGgoKSAqIHF1YWRYIC0gMC41ZiArIG1fbWVzaEJveC54
KCkpOwotICAgIG1fdmVydGljZXMuYXBwZW5kKG1fdGlsZVNpemVJblBpeGVscy5oZWlnaHQoKSAq
IHF1YWRZIC0gMC41ZiArIG1fbWVzaEJveC55KCkpOwotICAgIG1fdmVydGljZXMuYXBwZW5kKDAu
MGYpOyAvLyB6Ci0gICAgbV92ZXJ0aWNlcy5hcHBlbmQoMS4wZik7Ci19Ci0KLXZvaWQgQ3VzdG9t
RmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRkVGV4Q29vcmRBdHRyaWJ1dGUoaW50IHF1YWRYLCBpbnQg
cXVhZFkpCi17Ci0gICAgLy8gdmVjMiBhX3RleENvb3JkCi0gICAgbV92ZXJ0aWNlcy5hcHBlbmQo
bV90aWxlU2l6ZUluUGl4ZWxzLndpZHRoKCkgKiBxdWFkWCArIG1fbWVzaEJveC54KCkpOwotICAg
IG1fdmVydGljZXMuYXBwZW5kKG1fdGlsZVNpemVJblBpeGVscy5oZWlnaHQoKSAqIHF1YWRZICsg
bV9tZXNoQm94LnkoKSk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRk
TWVzaENvb3JkQXR0cmlidXRlKGludCBxdWFkWCwgaW50IHF1YWRZKQotewotICAgIC8vIHZlYzIg
YV9tZXNoQ29vcmQKLSAgICBtX3ZlcnRpY2VzLmFwcGVuZChtX3RpbGVTaXplSW5EZXZpY2VTcGFj
ZS53aWR0aCgpICogcXVhZFgpOwotICAgIG1fdmVydGljZXMuYXBwZW5kKG1fdGlsZVNpemVJbkRl
dmljZVNwYWNlLmhlaWdodCgpICogcXVhZFkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hH
ZW5lcmF0b3I6OmFkZFRyaWFuZ2xlQ29vcmRBdHRyaWJ1dGUoaW50IHF1YWRYLCBpbnQgcXVhZFks
IGludCB0cmlhbmdsZSkKLXsKLSAgICAvLyB2ZWMzIGFfdHJpYW5nbGVDb29yZAotICAgIG1fdmVy
dGljZXMuYXBwZW5kKHF1YWRYKTsKLSAgICBtX3ZlcnRpY2VzLmFwcGVuZChxdWFkWSk7Ci0gICAg
bV92ZXJ0aWNlcy5hcHBlbmQodHJpYW5nbGUpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hH
ZW5lcmF0b3I6OmFkZEF0dGFjaGVkTWVzaFZlcnRleEF0dHJpYnV0ZXMoaW50IHF1YWRYLCBpbnQg
cXVhZFkpCi17Ci0gICAgYWRkUG9zaXRpb25BdHRyaWJ1dGUocXVhZFgsIHF1YWRZKTsKLSAgICBh
ZGRUZXhDb29yZEF0dHJpYnV0ZShxdWFkWCwgcXVhZFkpOwotICAgIGFkZE1lc2hDb29yZEF0dHJp
YnV0ZShxdWFkWCwgcXVhZFkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6
OmFkZERldGFjaGVkTWVzaFZlcnRleEF0dHJpYnV0ZXMoaW50IHF1YWRYLCBpbnQgcXVhZFksIGlu
dCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGludCB0cmlhbmdsZSkKLXsKLSAgICBhZGRBdHRh
Y2hlZE1lc2hWZXJ0ZXhBdHRyaWJ1dGVzKHF1YWRYICsgdHJpYW5nbGVYLCBxdWFkWSArIHRyaWFu
Z2xlWSk7Ci0gICAgYWRkVHJpYW5nbGVDb29yZEF0dHJpYnV0ZShxdWFkWCwgcXVhZFksIHRyaWFu
Z2xlKTsKLX0KLQotI2lmbmRlZiBOREVCVUcKLXZvaWQgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRv
cjo6ZHVtcEJ1ZmZlcnMoKSBjb25zdAotewotICAgIHByaW50ZigiTWVzaCBidWZmZXJzOiBQb2lu
dHMud2lkdGgoKTogJWQsIFBvaW50cy5oZWlnaHQoKTogJWQgbWVzaEJveDogJWYsICVmLCAlZiwg
JWYsIHR5cGU6ICVzXG4iLAotICAgICAgICBtX3BvaW50cy53aWR0aCgpLCBtX3BvaW50cy5oZWln
aHQoKSwgbV9tZXNoQm94LngoKSwgbV9tZXNoQm94LnkoKSwgbV9tZXNoQm94LndpZHRoKCksIG1f
bWVzaEJveC5oZWlnaHQoKSwKLSAgICAgICAgKG1fbWVzaFR5cGUgPT0gTWVzaFR5cGVBdHRhY2hl
ZCkgPyAiQXR0YWNoZWQiIDogIkRldGFjaGVkIik7Ci0gICAgcHJpbnRmKCItLS1WZXJ0ZXg6XG5c
dCIpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBtX3ZlcnRpY2VzLnNpemUoKTsgKytp
KSB7Ci0gICAgICAgIHByaW50ZigiJWYgIiwgbV92ZXJ0aWNlcy5hdChpKSk7Ci0gICAgICAgIGlm
ICghKChpICsgMSkgJSBmbG9hdHNQZXJWZXJ0ZXgoKSkpCi0gICAgICAgICAgICBwcmludGYoIlxu
XHQiKTsKLSAgICB9Ci0gICAgcHJpbnRmKCJcbi0tLUluZGljZXM6ICIpOwotICAgIGZvciAodW5z
aWduZWQgaSA9IDA7IGkgPCBtX2luZGljZXMuc2l6ZSgpOyArK2kpCi0gICAgICAgIHByaW50Zigi
JWQgIiwgbV9pbmRpY2VzLmF0KGkpKTsKLSAgICBwcmludGYoIlxuIik7Ci19Ci0jZW5kaWYKLQot
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAm
JiBVU0UoM0RfR1JBUEhJQ1MpCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9y
LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdmOWFmNjQuLjAwMDAwMDAKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNo
R2VuZXJhdG9yLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMjYgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yX2gK
LSNkZWZpbmUgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0
YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkZs
b2F0UmVjdC5oIgotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQot
Y2xhc3MgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvciB7Ci1wdWJsaWM6Ci0gICAgLy8gTGluZXMg
YW5kIGNvbHVtbnMgYXJlIHRoZSB2YWx1ZXMgcGFzc2VkIGluIENTUy4gVGhlIHJlc3VsdCBpcyB2
ZXJ0ZXggbWVzaCB0aGF0IGhhcyAncm93cycgbnVtYmVycyBvZiByb3dzCi0gICAgLy8gYW5kICdj
b2x1bW5zJyBudW1iZXIgb2YgY29sdW1ucyB3aXRoIGEgdG90YWwgb2YgJ3Jvd3MgKyAxJyAqICdj
b2x1bW5zICsgMScgdmVydGljZXMuCi0gICAgLy8gTWVzaEJveCBpcyB0aGUgZmlsdGVyZWQgYXJl
YSBjYWxjdWxhdGVkIGRlZmluZWQgdXNpbmcgdGhlIGJvcmRlci1ib3gsIHBhZGRpbmctYm94LCBj
b250ZW50LWJveCBvciBmaWx0ZXItYm94Ci0gICAgLy8gYXR0cmlidXRlcy4gQSB2YWx1ZSBvZiAo
MCwgMCwgMSwgMSkgd2lsbCBjb3ZlciB0aGUgZW50aXJlIG91dHB1dCBzdXJmYWNlLgotICAgIEN1
c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IodW5zaWduZWQgY29sdW1ucywgdW5zaWduZWQgcm93cywg
Y29uc3QgRmxvYXRSZWN0JiBtZXNoQm94LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSk7Ci0KLSAgICBj
b25zdCBWZWN0b3I8ZmxvYXQ+JiB2ZXJ0aWNlcygpIGNvbnN0IHsgcmV0dXJuIG1fdmVydGljZXM7
IH0KLSAgICBjb25zdCBWZWN0b3I8dWludDE2X3Q+JiBpbmRpY2VzKCkgY29uc3QgeyByZXR1cm4g
bV9pbmRpY2VzOyB9Ci0KLSAgICBjb25zdCBJbnRTaXplJiBwb2ludHMoKSBjb25zdCB7IHJldHVy
biBtX3BvaW50czsgfQotICAgIHVuc2lnbmVkIHBvaW50c0NvdW50KCkgY29uc3QgeyByZXR1cm4g
bV9wb2ludHMud2lkdGgoKSAqIG1fcG9pbnRzLmhlaWdodCgpOyB9Ci0KLSAgICBjb25zdCBJbnRT
aXplJiB0aWxlcygpIGNvbnN0IHsgcmV0dXJuIG1fdGlsZXM7IH0KLSAgICB1bnNpZ25lZCB0aWxl
c0NvdW50KCkgY29uc3QgeyByZXR1cm4gbV90aWxlcy53aWR0aCgpICogbV90aWxlcy5oZWlnaHQo
KTsgfQotCi0gICAgdW5zaWduZWQgaW5kaWNlc0NvdW50KCkgY29uc3QKLSAgICB7Ci0gICAgICAg
IGNvbnN0IHVuc2lnbmVkIHRyaWFuZ2xlc1BlclRpbGUgPSAyOwotICAgICAgICBjb25zdCB1bnNp
Z25lZCBpbmRpY2VzUGVyVHJpYW5nbGUgPSAzOwotICAgICAgICByZXR1cm4gdGlsZXNDb3VudCgp
ICogdHJpYW5nbGVzUGVyVGlsZSAqIGluZGljZXNQZXJUcmlhbmdsZTsKLSAgICB9Ci0KLSAgICB1
bnNpZ25lZCBmbG9hdHNQZXJWZXJ0ZXgoKSBjb25zdAotICAgIHsKLSAgICAgICAgc3RhdGljIGNv
bnN0IHVuc2lnbmVkIEF0dGFjaGVkTWVzaFZlcnRleFNpemUgPSBQb3NpdGlvbkF0dHJpYlNpemUg
KyBUZXhBdHRyaWJTaXplICsgTWVzaEF0dHJpYlNpemU7Ci0gICAgICAgIHN0YXRpYyBjb25zdCB1
bnNpZ25lZCBEZXRhY2hlZE1lc2hWZXJ0ZXhTaXplID0gQXR0YWNoZWRNZXNoVmVydGV4U2l6ZSAr
IFRyaWFuZ2xlQXR0cmliU2l6ZTsKLSAgICAgICAgcmV0dXJuIG1fbWVzaFR5cGUgPT0gTWVzaFR5
cGVBdHRhY2hlZCA/IEF0dGFjaGVkTWVzaFZlcnRleFNpemUgOiBEZXRhY2hlZE1lc2hWZXJ0ZXhT
aXplOwotICAgIH0KLQotICAgIHVuc2lnbmVkIHZlcnRpY2VzQ291bnQoKSBjb25zdAotICAgIHsK
LSAgICAgICAgcmV0dXJuIG1fbWVzaFR5cGUgPT0gTWVzaFR5cGVBdHRhY2hlZCA/IHBvaW50c0Nv
dW50KCkgOiBpbmRpY2VzQ291bnQoKTsKLSAgICB9Ci0KLXByaXZhdGU6Ci0gICAgdHlwZWRlZiB2
b2lkIChDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjoqQWRkVHJpYW5nbGVWZXJ0ZXhGdW5jdGlv
bikoaW50IHF1YWRYLCBpbnQgcXVhZFksIGludCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGlu
dCB0cmlhbmdsZSk7Ci0KLSAgICB0ZW1wbGF0ZSA8QWRkVHJpYW5nbGVWZXJ0ZXhGdW5jdGlvbiBh
ZGRUcmlhbmdsZVZlcnRleD4KLSAgICB2b2lkIGFkZFRpbGUoaW50IHF1YWRYLCBpbnQgcXVhZFkp
Ci0gICAgewotICAgICAgICAoKCp0aGlzKS4qKGFkZFRyaWFuZ2xlVmVydGV4KSkocXVhZFgsIHF1
YWRZLCAwLCAwLCAxKTsKLSAgICAgICAgKCgqdGhpcykuKihhZGRUcmlhbmdsZVZlcnRleCkpKHF1
YWRYLCBxdWFkWSwgMSwgMCwgMik7Ci0gICAgICAgICgoKnRoaXMpLiooYWRkVHJpYW5nbGVWZXJ0
ZXgpKShxdWFkWCwgcXVhZFksIDEsIDEsIDMpOwotICAgICAgICAoKCp0aGlzKS4qKGFkZFRyaWFu
Z2xlVmVydGV4KSkocXVhZFgsIHF1YWRZLCAwLCAwLCA0KTsKLSAgICAgICAgKCgqdGhpcykuKihh
ZGRUcmlhbmdsZVZlcnRleCkpKHF1YWRYLCBxdWFkWSwgMSwgMSwgNSk7Ci0gICAgICAgICgoKnRo
aXMpLiooYWRkVHJpYW5nbGVWZXJ0ZXgpKShxdWFkWCwgcXVhZFksIDAsIDEsIDYpOwotICAgIH0K
LQotICAgIHZvaWQgYWRkQXR0YWNoZWRNZXNoSW5kZXgoaW50IHF1YWRYLCBpbnQgcXVhZFksIGlu
dCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGludCB0cmlhbmdsZSk7Ci0KLSAgICB2b2lkIGdl
bmVyYXRlQXR0YWNoZWRNZXNoKCk7Ci0KLSAgICB2b2lkIGFkZERldGFjaGVkTWVzaFZlcnRleEFu
ZEluZGV4KGludCBxdWFkWCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZ
LCBpbnQgdHJpYW5nbGUpOwotCi0gICAgdm9pZCBnZW5lcmF0ZURldGFjaGVkTWVzaCgpOwotICAg
IHZvaWQgYWRkUG9zaXRpb25BdHRyaWJ1dGUoaW50IHF1YWRYLCBpbnQgcXVhZFkpOwotICAgIHZv
aWQgYWRkVGV4Q29vcmRBdHRyaWJ1dGUoaW50IHF1YWRYLCBpbnQgcXVhZFkpOwotICAgIHZvaWQg
YWRkTWVzaENvb3JkQXR0cmlidXRlKGludCBxdWFkWCwgaW50IHF1YWRZKTsKLSAgICB2b2lkIGFk
ZFRyaWFuZ2xlQ29vcmRBdHRyaWJ1dGUoaW50IHF1YWRYLCBpbnQgcXVhZFksIGludCB0cmlhbmds
ZSk7Ci0gICAgdm9pZCBhZGRBdHRhY2hlZE1lc2hWZXJ0ZXhBdHRyaWJ1dGVzKGludCBxdWFkWCwg
aW50IHF1YWRZKTsKLSAgICB2b2lkIGFkZERldGFjaGVkTWVzaFZlcnRleEF0dHJpYnV0ZXMoaW50
IHF1YWRYLCBpbnQgcXVhZFksIGludCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGludCB0cmlh
bmdsZSk7Ci0KLSNpZm5kZWYgTkRFQlVHCi0gICAgdm9pZCBkdW1wQnVmZmVycygpIGNvbnN0Owot
I2VuZGlmCi0KLXByaXZhdGU6Ci0gICAgVmVjdG9yPGZsb2F0PiBtX3ZlcnRpY2VzOwotICAgIFZl
Y3Rvcjx1aW50MTZfdD4gbV9pbmRpY2VzOwotCi0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbV9t
ZXNoVHlwZTsKLSAgICBJbnRTaXplIG1fcG9pbnRzOwotICAgIEludFNpemUgbV90aWxlczsKLSAg
ICBGbG9hdFNpemUgbV90aWxlU2l6ZUluUGl4ZWxzOwotICAgIEZsb2F0U2l6ZSBtX3RpbGVTaXpl
SW5EZXZpY2VTcGFjZTsKLSAgICBGbG9hdFJlY3QgbV9tZXNoQm94OwotfTsKLQotfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0Rf
R1JBUEhJQ1MpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yX2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyTnVtYmVyUGFyYW1ldGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0N1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwOTM3ODU4Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgKKysrIC9kZXYv
bnVsbApAQCAtMSw4NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aWZuZGVmIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcl9oCi0jZGVmaW5lIEN1c3RvbUZpbHRl
ck51bWJlclBhcmFtZXRlcl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAi
QW5pbWF0aW9uVXRpbGl0aWVzLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgi
Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNz
IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciA6IHB1YmxpYyBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXIgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlck51bWJlclBh
cmFtZXRlcj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgbmFtZSkKLSAgICB7Ci0gICAgICAgIHJldHVy
biBhZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKG5hbWUpKTsKLSAgICB9
Ci0gICAgCi0gICAgdW5zaWduZWQgc2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGF0YS5zaXplKCk7
IH0KLSAgICBkb3VibGUgdmFsdWVBdCh1bnNpZ25lZCBpbmRleCkgY29uc3QgeyByZXR1cm4gbV9k
YXRhLmF0KGluZGV4KTsgfQotCi0gICAgdm9pZCBhZGRWYWx1ZShkb3VibGUgdmFsdWUpIHsgbV9k
YXRhLmFwcGVuZCh2YWx1ZSk7IH0KLSAgICAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Q3VzdG9t
RmlsdGVyUGFyYW1ldGVyPiBibGVuZChjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIqIGZyb20s
IGRvdWJsZSBwcm9ncmVzcywgY29uc3QgTGF5b3V0U2l6ZSYpCi0gICAgewotICAgICAgICBpZiAo
IWZyb20gfHwgIWlzU2FtZVR5cGUoKmZyb20pKQotICAgICAgICAgICAgcmV0dXJuIHRoaXM7Ci0g
ICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciogZnJvbU51bWJlciA9IHN0
YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcio+KGZyb20pOwotICAg
ICAgICBpZiAoc2l6ZSgpICE9IGZyb21OdW1iZXItPnNpemUoKSkKLSAgICAgICAgICAgIHJldHVy
biB0aGlzOwotICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyPiByZXN1
bHQgPSBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKCkpOwotICAgICAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemUoKTsgKytpKQotICAgICAgICAgICAgcmVzdWx0
LT5hZGRWYWx1ZShXZWJDb3JlOjpibGVuZChmcm9tTnVtYmVyLT52YWx1ZUF0KGkpLCB2YWx1ZUF0
KGkpLCBwcm9ncmVzcykpOwotICAgICAgICByZXR1cm4gcmVzdWx0LnJlbGVhc2UoKTsKLSAgICB9
Ci0gICAgCi0gICAgdmlydHVhbCBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFy
YW1ldGVyJiBvKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKCFpc1NhbWVUeXBlKG8pKQotICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJOdW1iZXJQ
YXJhbWV0ZXIqIG90aGVyID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyTnVtYmVyUGFy
YW1ldGVyKj4oJm8pOwotICAgICAgICByZXR1cm4gbV9kYXRhID09IG90aGVyLT5tX2RhdGE7Ci0g
ICAgfQotICAgIAotcHJpdmF0ZToKLSAgICBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIoY29u
c3QgU3RyaW5nJiBuYW1lKQotICAgICAgICA6IEN1c3RvbUZpbHRlclBhcmFtZXRlcihOVU1CRVIs
IG5hbWUpCi0gICAgewotICAgIH0KLSAgICAKLSAgICBWZWN0b3I8ZG91YmxlLCA0PiBtX2RhdGE7
Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXJfaApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0
ZXJPcGVyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA1MDlhNzZjLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDc3
ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBv
cmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0g
KgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDi
gJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBC
RQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25m
aWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJP
cGVyYXRpb24uaCIKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlci5oIgotI2luY2x1
ZGUgIkN1c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJGaWx0ZXJPcGVyYXRpb24uaCIK
LQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1DdXN0b21GaWx0ZXJPcGVyYXRpb246OkN1c3RvbUZp
bHRlck9wZXJhdGlvbihQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IHByb2dyYW0sIGNv
bnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHNvcnRlZFBhcmFtZXRlcnMsIHVuc2lnbmVk
IG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucykKLSAgICA6IEZpbHRlck9wZXJhdGlvbihD
VVNUT00pCi0gICAgLCBtX3Byb2dyYW0ocHJvZ3JhbSkKLSAgICAsIG1fcGFyYW1ldGVycyhzb3J0
ZWRQYXJhbWV0ZXJzKQotICAgICwgbV9tZXNoUm93cyhtZXNoUm93cykKLSAgICAsIG1fbWVzaENv
bHVtbnMobWVzaENvbHVtbnMpCi17Ci0gICAgLy8gTWFrZSBzdXJlIHRoYXQgdGhlIHBhcmFtZXRl
cnMgYXJlIGFsd3lhcyBzb3J0ZWQgYnkgbmFtZS4gV2UgdXNlIHRoYXQgdG8gbWVyZ2UgdHdvIEN1
c3RvbUZpbHRlck9wZXJhdGlvbnMgaW4gYW5pbWF0aW9ucy4KLSAgICBBU1NFUlQobV9wYXJhbWV0
ZXJzLmNoZWNrQWxwaGFiZXRpY2FsT3JkZXIoKSk7Ci19Ci0gICAgCi1DdXN0b21GaWx0ZXJPcGVy
YXRpb246On5DdXN0b21GaWx0ZXJPcGVyYXRpb24oKQotewotfQotCi1QYXNzUmVmUHRyPEZpbHRl
ck9wZXJhdGlvbj4gQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOjpibGVuZChjb25zdCBGaWx0ZXJPcGVy
YXRpb24qIGZyb20sIGRvdWJsZSBwcm9ncmVzcywgY29uc3QgTGF5b3V0U2l6ZSYgc2l6ZSwgYm9v
bCBibGVuZFRvUGFzc3Rocm91Z2gpCi17Ci0gICAgLy8gRklYTUU6IFRoZXJlJ3Mgbm8gd2F5IHRv
IGRlY2lkZSB3aGF0IGlzIHRoZSAicGFzc3Rocm91Z2ggZmlsdGVyIiBmb3Igc2hhZGVycyB1c2lu
ZyB0aGUgY3VycmVudCBDU1MgU3ludGF4LgotICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NDkwMwotICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9CdWdzL1B1
YmxpYy9zaG93X2J1Zy5jZ2k/aWQ9MTY4NjEKLSAgICBpZiAoYmxlbmRUb1Bhc3N0aHJvdWdoIHx8
ICFmcm9tIHx8ICFmcm9tLT5pc1NhbWVUeXBlKCp0aGlzKSkKLSAgICAgICAgcmV0dXJuIHRoaXM7
Ci0gICAgCi0gICAgY29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKiBmcm9tT3AgPSBzdGF0aWNf
Y2FzdDxjb25zdCBDdXN0b21GaWx0ZXJPcGVyYXRpb24qPihmcm9tKTsKLSAgICBpZiAobV9wcm9n
cmFtLmdldCgpICE9IGZyb21PcC0+bV9wcm9ncmFtLmdldCgpCi0gICAgICAgIHx8IG1fbWVzaFJv
d3MgIT0gZnJvbU9wLT5tX21lc2hSb3dzCi0gICAgICAgIHx8IG1fbWVzaENvbHVtbnMgIT0gZnJv
bU9wLT5tX21lc2hDb2x1bW5zKQotICAgICAgICByZXR1cm4gdGhpczsKLSAgICAKLSAgICBDdXN0
b21GaWx0ZXJQYXJhbWV0ZXJMaXN0IGFuaW1hdGVkUGFyYW1ldGVyczsKLSAgICBtX3BhcmFtZXRl
cnMuYmxlbmQoZnJvbU9wLT5tX3BhcmFtZXRlcnMsIHByb2dyZXNzLCBzaXplLCBhbmltYXRlZFBh
cmFtZXRlcnMpOwotICAgIHJldHVybiBDdXN0b21GaWx0ZXJPcGVyYXRpb246OmNyZWF0ZShtX3By
b2dyYW0sIGFuaW1hdGVkUGFyYW1ldGVycywgbV9tZXNoUm93cywgbV9tZXNoQ29sdW1ucyk7Ci19
Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVS
UykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJhdGlvbi5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA0NDdjNjA1Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgKKysrIC9kZXYvbnVsbApAQCAt
MSw5NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5j
b3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xE
RVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAq
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1
c3RvbUZpbHRlck9wZXJhdGlvbl9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlck9wZXJhdGlvbl9oCi0K
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIgotI2luY2x1ZGUgIkN1
c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJGaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNs
dWRlICJMYXlvdXRTaXplLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotLy8gQ1NTIFNoYWRl
cnMKLQotY2xhc3MgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIDogcHVibGljIEZpbHRlck9wZXJhdGlv
biB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyT3BlcmF0aW9u
PiBjcmVhdGUoUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiBwcm9ncmFtLCBjb25zdCBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBzb3J0ZWRQYXJhbWV0ZXJzLCB1bnNpZ25lZCBtZXNo
Um93cywgdW5zaWduZWQgbWVzaENvbHVtbnMpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IEN1c3RvbUZpbHRlck9wZXJhdGlvbihwcm9ncmFtLCBzb3J0ZWRQYXJhbWV0ZXJzLCBt
ZXNoUm93cywgbWVzaENvbHVtbnMpKTsKLSAgICB9Ci0gICAgCi0gICAgQ3VzdG9tRmlsdGVyUHJv
Z3JhbSogcHJvZ3JhbSgpIGNvbnN0IHsgcmV0dXJuIG1fcHJvZ3JhbS5nZXQoKTsgfQotICAgIHZv
aWQgc2V0UHJvZ3JhbShQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IHByb2dyYW0pIHsg
bV9wcm9ncmFtID0gcHJvZ3JhbTsgfQotICAgIAotICAgIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3QmIHBhcmFtZXRlcnMoKSBjb25zdCB7IHJldHVybiBtX3BhcmFtZXRlcnM7IH0KLSAg
ICAKLSAgICB1bnNpZ25lZCBtZXNoUm93cygpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaFJvd3M7IH0K
LSAgICB1bnNpZ25lZCBtZXNoQ29sdW1ucygpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaENvbHVtbnM7
IH0KLQotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKCkgY29uc3QgeyByZXR1cm4g
cHJvZ3JhbSgpID8gcHJvZ3JhbSgpLT5tZXNoVHlwZSgpIDogTWVzaFR5cGVBdHRhY2hlZDsgfQot
ICAgIAotICAgIHZpcnR1YWwgfkN1c3RvbUZpbHRlck9wZXJhdGlvbigpOwotICAgIAotICAgIHZp
cnR1YWwgYm9vbCBhZmZlY3RzT3BhY2l0eSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KLSAgICB2
aXJ0dWFsIGJvb2wgbW92ZXNQaXhlbHMoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmly
dHVhbCBib29sIGJsZW5kaW5nTmVlZHNSZW5kZXJlclNpemUoKSBjb25zdCB7IHJldHVybiB0cnVl
OyB9Ci0gICAgCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPEZpbHRlck9wZXJhdGlvbj4gYmxlbmQo
Y29uc3QgRmlsdGVyT3BlcmF0aW9uKiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91
dFNpemUmLCBib29sIGJsZW5kVG9QYXNzdGhyb3VnaCA9IGZhbHNlKTsKLQotcHJvdGVjdGVkOgot
ICAgIEN1c3RvbUZpbHRlck9wZXJhdGlvbihQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+
LCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiwgdW5zaWduZWQgbWVzaFJvd3MsIHVu
c2lnbmVkIG1lc2hDb2x1bW5zKTsKLSAgICAKLXByaXZhdGU6Ci0gICAgdmlydHVhbCBib29sIG9w
ZXJhdG9yPT0oY29uc3QgRmlsdGVyT3BlcmF0aW9uJiBvKSBjb25zdAotICAgIHsKLSAgICAgICAg
aWYgKCFpc1NhbWVUeXBlKG8pKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAg
IGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbiogb3RoZXIgPSBzdGF0aWNfY2FzdDxjb25zdCBD
dXN0b21GaWx0ZXJPcGVyYXRpb24qPigmbyk7Ci0gICAgICAgIHJldHVybiBtX3Byb2dyYW0uZ2V0
KCkgPT0gb3RoZXItPm1fcHJvZ3JhbS5nZXQoKQotICAgICAgICAgICAgJiYgbV9tZXNoUm93cyA9
PSBvdGhlci0+bV9tZXNoUm93cwotICAgICAgICAgICAgJiYgbV9tZXNoQ29sdW1ucyA9PSBvdGhl
ci0+bV9tZXNoQ29sdW1ucwotICAgICAgICAgICAgJiYgbV9wYXJhbWV0ZXJzID09IG90aGVyLT5t
X3BhcmFtZXRlcnM7Ci0gICAgfQotCi0gICAgUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IG1f
cHJvZ3JhbTsKLSAgICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0IG1fcGFyYW1ldGVyczsKLSAg
ICAKLSAgICB1bnNpZ25lZCBtX21lc2hSb3dzOwotICAgIHVuc2lnbmVkIG1fbWVzaENvbHVtbnM7
Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJPcGVyYXRpb25faApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJh
bWV0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyUGFyYW1ldGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNiYWIyZDgu
LjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJQYXJhbWV0ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDc4ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwot
ICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBB
TkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyX2gKLQotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBX
ZWJDb3JlIHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyIDogcHVibGljIFJlZkNvdW50
ZWQ8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiB7Ci1wdWJsaWM6Ci0gICAgLy8gRklYTUU6IEltcGxl
bWVudCBvdGhlciBwYXJhbWV0ZXJzIHR5cGVzOgotICAgIC8vIHRleHR1cmVzOiBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE0NDIKLSAgICBlbnVtIFBhcmFtZXRlclR5
cGUgewotICAgICAgICBBUlJBWSwKLSAgICAgICAgQ09MT1IsCi0gICAgICAgIE1BVFJJWCwKLSAg
ICAgICAgTlVNQkVSLAotICAgICAgICBUUkFOU0ZPUk0KLSAgICB9OwotICAgIAotICAgIHZpcnR1
YWwgfkN1c3RvbUZpbHRlclBhcmFtZXRlcigpIHsgfQotICAgIAotICAgIFBhcmFtZXRlclR5cGUg
cGFyYW1ldGVyVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfQotICAgIGNvbnN0IFN0cmlu
ZyYgbmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmFtZTsgfQotICAgIAotICAgIGJvb2wgaXNTYW1l
VHlwZShjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXImIG90aGVyKSBjb25zdCB7IHJldHVybiBw
YXJhbWV0ZXJUeXBlKCkgPT0gb3RoZXIucGFyYW1ldGVyVHlwZSgpOyB9Ci0gICAgCi0gICAgdmly
dHVhbCBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gYmxlbmQoY29uc3QgQ3VzdG9t
RmlsdGVyUGFyYW1ldGVyKiwgZG91YmxlIHByb2dyZXNzLCBjb25zdCBMYXlvdXRTaXplJikgPSAw
OwotICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRl
ciYpIGNvbnN0ID0gMDsKLSAgICBib29sIG9wZXJhdG9yIT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFy
YW1ldGVyJiBvKSBjb25zdCB7IHJldHVybiAhKCp0aGlzID09IG8pOyB9Ci1wcm90ZWN0ZWQ6Ci0g
ICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKFBhcmFtZXRlclR5cGUgdHlwZSwgY29uc3QgU3RyaW5n
JiBuYW1lKQotICAgICAgICA6IG1fbmFtZShuYW1lKQotICAgICAgICAsIG1fdHlwZSh0eXBlKQot
ICAgIHsKLSAgICB9Ci0KLXByaXZhdGU6Ci0gICAgU3RyaW5nIG1fbmFtZTsKLSAgICBQYXJhbWV0
ZXJUeXBlIG1fdHlwZTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIEN1c3RvbUZpbHRlclBhcmFtZXRlcl9o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggY2M2MzNlOS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwCisr
KyAvZGV2L251bGwKQEAgLTEsMTA0ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIg
QWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1
ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaCIKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
clBhcmFtZXRlci5oIgotI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KLQotbmFtZXNw
YWNlIFdlYkNvcmUgewotCi1DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0OjpDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0KCkKLXsKLX0KLQotQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdDo6Q3VzdG9t
RmlsdGVyUGFyYW1ldGVyTGlzdChzaXplX3Qgc2l6ZSkKLSAgICA6IEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3RCYXNlKHNpemUpIAotewotfQotCi1ib29sIEN1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3Q6Om9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgb3RoZXIpIGNv
bnN0Ci17Ci0gICAgaWYgKHNpemUoKSAhPSBvdGhlci5zaXplKCkpCi0gICAgICAgIHJldHVybiBm
YWxzZTsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemUoKTsgKytpKSB7Ci0gICAgICAg
IGlmIChhdChpKS5nZXQoKSAhPSBvdGhlci5hdChpKS5nZXQoKSAKLSAgICAgICAgICAgICYmICph
dChpKS5nZXQoKSAhPSAqb3RoZXIuYXQoaSkuZ2V0KCkpCi0gICAgICAgICAgICByZXR1cm4gZmFs
c2U7Ci0gICAgfQotICAgIHJldHVybiB0cnVlOwotfQotCi1ib29sIEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3Q6OmNoZWNrQWxwaGFiZXRpY2FsT3JkZXIoKSBjb25zdAotewotICAgIGZvciAodW5z
aWduZWQgaSA9IDE7IGkgPCBzaXplKCk7ICsraSkgewotICAgICAgICAvLyBCcmVhayBmb3IgZXF1
YWwgb3Igbm90LXNvcnRlZCBwYXJhbWV0ZXJzLgotICAgICAgICBpZiAoIWNvZGVQb2ludENvbXBh
cmVMZXNzVGhhbihhdChpIC0gMSktPm5hbWUoKSwgYXQoaSktPm5hbWUoKSkpCi0gICAgICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgfQotICAgIHJldHVybiB0cnVlOwotfQotCi12b2lkIEN1c3Rv
bUZpbHRlclBhcmFtZXRlckxpc3Q6OmJsZW5kKGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3QmIGZyb21MaXN0LCAKLSAgICBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmIGZy
YW1lU2l6ZSwgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgcmVzdWx0TGlzdCkgY29uc3QKLXsK
LSAgICAvLyBUaGlzIG1ldGhvZCBleHBlY3RzIGJvdGggbGlzdHMgdG8gYmUgc29ydGVkIGJ5IHBh
cmFtZXRlciBuYW1lIGFuZCB0aGUgcmVzdWx0IGxpc3QgaXMgYWxzbyBzb3J0ZWQuCi0gICAgQVNT
RVJUKGNoZWNrQWxwaGFiZXRpY2FsT3JkZXIoKSk7Ci0gICAgQVNTRVJUKGZyb21MaXN0LmNoZWNr
QWxwaGFiZXRpY2FsT3JkZXIoKSk7Ci0gICAgc2l6ZV90IGZyb21MaXN0SW5kZXggPSAwLCB0b0xp
c3RJbmRleCA9IDA7Ci0gICAgd2hpbGUgKGZyb21MaXN0SW5kZXggPCBmcm9tTGlzdC5zaXplKCkg
JiYgdG9MaXN0SW5kZXggPCBzaXplKCkpIHsKLSAgICAgICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
KiBwYXJhbUZyb20gPSBmcm9tTGlzdC5hdChmcm9tTGlzdEluZGV4KS5nZXQoKTsKLSAgICAgICAg
Q3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBwYXJhbVRvID0gYXQodG9MaXN0SW5kZXgpLmdldCgpOwot
ICAgICAgICBpZiAocGFyYW1Gcm9tLT5uYW1lKCkgPT0gcGFyYW1Uby0+bmFtZSgpKSB7Ci0gICAg
ICAgICAgICByZXN1bHRMaXN0LmFwcGVuZChwYXJhbVRvLT5ibGVuZChwYXJhbUZyb20sIHByb2dy
ZXNzLCBmcmFtZVNpemUpKTsKLSAgICAgICAgICAgICsrZnJvbUxpc3RJbmRleDsKLSAgICAgICAg
ICAgICsrdG9MaXN0SW5kZXg7Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQotICAg
ICAgICBpZiAoY29kZVBvaW50Q29tcGFyZUxlc3NUaGFuKHBhcmFtRnJvbS0+bmFtZSgpLCBwYXJh
bVRvLT5uYW1lKCkpKSB7Ci0gICAgICAgICAgICByZXN1bHRMaXN0LmFwcGVuZChwYXJhbUZyb20p
OwotICAgICAgICAgICAgKytmcm9tTGlzdEluZGV4OwotICAgICAgICAgICAgY29udGludWU7Ci0g
ICAgICAgIH0KLSAgICAgICAgcmVzdWx0TGlzdC5hcHBlbmQocGFyYW1Ubyk7Ci0gICAgICAgICsr
dG9MaXN0SW5kZXg7Ci0gICAgfQotICAgIGZvciAoOyBmcm9tTGlzdEluZGV4IDwgZnJvbUxpc3Qu
c2l6ZSgpOyArK2Zyb21MaXN0SW5kZXgpCi0gICAgICAgIHJlc3VsdExpc3QuYXBwZW5kKGZyb21M
aXN0LmF0KGZyb21MaXN0SW5kZXgpKTsKLSAgICBmb3IgKDsgdG9MaXN0SW5kZXggPCBzaXplKCk7
ICsrdG9MaXN0SW5kZXgpCi0gICAgICAgIHJlc3VsdExpc3QuYXBwZW5kKGF0KHRvTGlzdEluZGV4
KSk7Ci0gICAgQVNTRVJUKHJlc3VsdExpc3QuY2hlY2tBbHBoYWJldGljYWxPcmRlcigpKTsKLX0K
LQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJT
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggYTliYzAxZi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaAorKysgL2Rl
di9udWxsCkBAIC0xLDU2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUg
U3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lm
bmRlZiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0X2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyUGFy
YW1ldGVyTGlzdF9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiTGF5b3V0
U2l6ZS5oIgotI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewot
Ci1jbGFzcyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI7Ci10eXBlZGVmIFZlY3RvcjxSZWZQdHI8Q3Vz
dG9tRmlsdGVyUGFyYW1ldGVyPj4gQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdEJhc2U7Ci0KLWNs
YXNzIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QgOiBwdWJsaWMgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyTGlzdEJhc2UgewotcHVibGljOgotICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QoKTsK
LSAgICBleHBsaWNpdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0KHNpemVfdCk7Ci0KLSAgICBi
b29sIGNoZWNrQWxwaGFiZXRpY2FsT3JkZXIoKSBjb25zdDsKLSAgICB2b2lkIGJsZW5kKGNvbnN0
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIGZyb20sIGRvdWJsZSBwcm9ncmVzcywgY29uc3Qg
TGF5b3V0U2l6ZSYsIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHJlc3VsdExpc3QpIGNvbnN0
OwotICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0Jikg
Y29uc3Q7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0X2gKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyUHJvZ3JhbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0uY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBmMjc2OWY3Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwxMDEg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9y
YXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKA
nEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJF
Ci0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZp
Zy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBy
b2dyYW0uaCIKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIgotI2lu
Y2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0
ZXJQcm9ncmFtSW5mby5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0u
aCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1DdXN0b21GaWx0ZXJQcm9ncmFtOjpDdXN0b21G
aWx0ZXJQcm9ncmFtKEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlLCBjb25zdCBD
dXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG1peFNldHRpbmdzLCBDdXN0b21GaWx0ZXJN
ZXNoVHlwZSBtZXNoVHlwZSkKLSAgICA6IG1fcHJvZ3JhbVR5cGUocHJvZ3JhbVR5cGUpCi0gICAg
LCBtX21peFNldHRpbmdzKG1peFNldHRpbmdzKQotICAgICwgbV9tZXNoVHlwZShtZXNoVHlwZSkK
LXsKLSAgICAvLyBLZWVwIHRoZSBjb25zdHJ1Y3RvciBwcm90ZWN0ZWQgdG8gcHJldmVudCBjcmVh
dGluZyB0aGlzIG9iamVjdCBkaXJlY3RseS4KLX0KLQotQ3VzdG9tRmlsdGVyUHJvZ3JhbTo6fkN1
c3RvbUZpbHRlclByb2dyYW0oKQotewotICAgIC8vIEFsbCB0aGUgY2xpZW50cyBzaG91bGQga2Vl
cCBhIHJlZmVyZW5jZSB0byB0aGlzIG9iamVjdC4KLSAgICBBU1NFUlQobV9jbGllbnRzLmlzRW1w
dHkoKSk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUHJvZ3JhbTo6YWRkQ2xpZW50KEN1c3RvbUZp
bHRlclByb2dyYW1DbGllbnQqIGNsaWVudCkKLXsKLSAgICBpZiAobV9jbGllbnRzLmlzRW1wdHko
KSkgewotICAgICAgICAvLyBOb3RpZnkgdGhlIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSB0aGF0
IHdlIG5vdyBoYXZlIGF0IGxlYXN0IGEgY2xpZW50Ci0gICAgICAgIC8vIGFuZCB0aGUgbG9hZGlu
ZyBjYW4gYmVnaW4uCi0gICAgICAgIC8vIE5vdGU6IElmIHRoZSBzaGFkZXIgaXMgYWxyZWFkeSBj
YWNoZWQgdGhlIGZpcnN0IGNsaWVudCB3aWxsIGJlIG5vdGlmaWVkLAotICAgICAgICAvLyBldmVu
IGlmIHRoZSBmaWx0ZXIgd2FzIGFscmVhZHkgYnVpbHQuIEFkZCB0aGUgY2xpZW50IG9ubHkgYWZ0
ZXIgbm90aWZ5aW5nCi0gICAgICAgIC8vIHRoZSBjYWNoZSBhYm91dCB0aGVtLCBzbyB0aGF0IHdl
IGF2b2lkIGEgdXNlbGVzcyByZWNyZWF0aW9uIG9mIHRoZSBmaWx0ZXJzIGNoYWluLgotICAgICAg
ICB3aWxsSGF2ZUNsaWVudHMoKTsKLSAgICB9Ci0gICAgbV9jbGllbnRzLmFkZChjbGllbnQpOwot
fQotCi12b2lkIEN1c3RvbUZpbHRlclByb2dyYW06OnJlbW92ZUNsaWVudChDdXN0b21GaWx0ZXJQ
cm9ncmFtQ2xpZW50KiBjbGllbnQpCi17Ci0gICAgbV9jbGllbnRzLnJlbW92ZShjbGllbnQpOwot
ICAgIGlmIChtX2NsaWVudHMuaXNFbXB0eSgpKSB7Ci0gICAgICAgIC8vIFdlIGhhdmUgbm8gY2xp
ZW50cyBhbnltb3JlLCB0aGUgY2FjaGVkIHJlc291cmNlcyBjYW4gYmUgcHVyZ2VkIGZyb20gbWVt
b3J5LgotICAgICAgICBkaWRSZW1vdmVMYXN0Q2xpZW50KCk7Ci0gICAgfQotfQotCi12b2lkIEN1
c3RvbUZpbHRlclByb2dyYW06Om5vdGlmeUNsaWVudHMoKQotewotICAgIGZvciAoQ3VzdG9tRmls
dGVyUHJvZ3JhbUNsaWVudExpc3Q6Oml0ZXJhdG9yIGl0ZXIgPSBtX2NsaWVudHMuYmVnaW4oKSwg
ZW5kID0gbV9jbGllbnRzLmVuZCgpOyBpdGVyICE9IGVuZDsgKytpdGVyKQotICAgICAgICBpdGVy
LT5rZXktPm5vdGlmeUN1c3RvbUZpbHRlclByb2dyYW1Mb2FkZWQodGhpcyk7Ci19Ci0KLUN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvIEN1c3RvbUZpbHRlclByb2dyYW06OnByb2dyYW1JbmZvKCkgY29u
c3QKLXsKLSAgICBBU1NFUlQoaXNMb2FkZWQoKSk7Ci0gICAgcmV0dXJuIEN1c3RvbUZpbHRlclBy
b2dyYW1JbmZvKHZlcnRleFNoYWRlclN0cmluZygpLCBmcmFnbWVudFNoYWRlclN0cmluZygpLCBt
X3Byb2dyYW1UeXBlLCBtX21peFNldHRpbmdzLCBtX21lc2hUeXBlKTsKLX0KLQotUGFzc1JlZlB0
cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiBDdXN0b21GaWx0ZXJQcm9ncmFtOjp2YWxp
ZGF0ZWRQcm9ncmFtKCkKLXsKLSAgICByZXR1cm4gbV92YWxpZGF0ZWRQcm9ncmFtOwotfQotCi12
b2lkIEN1c3RvbUZpbHRlclByb2dyYW06OnNldFZhbGlkYXRlZFByb2dyYW0oUGFzc1JlZlB0cjxD
dXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2YWxpZGF0ZWRQcm9ncmFtKQotewotICAgIG1f
dmFsaWRhdGVkUHJvZ3JhbSA9IHZhbGlkYXRlZFByb2dyYW07Ci19Ci0KLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0u
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhZDg5NjVjLi4wMDAwMDAw
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUHJvZ3JhbS5oCisrKyAvZGV2L251bGwKQEAgLTEsOTkgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJQcm9ncmFtX2gKLSNkZWZp
bmUgQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNp
bmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIgotCi0jaW5jbHVkZSA8d3RmL0hhc2hD
b3VudGVkU2V0Lmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYv
dGV4dC9XVEZTdHJpbmcuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBHcmFwaGlj
c0NvbnRleHQzRDsKLWNsYXNzIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQ7Ci1jbGFzcyBDdXN0
b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOwotCi0vLyBUaGlzIGlzIHRoZSBiYXNlIGNsYXNzIGZv
ciB0aGUgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtIGNsYXNzIHdoaWNoIGtub3dzIGhvdyB0byBr
ZWVwCi0vLyByZWZlcmVuY2VzIHRvIHRoZSBjYWNoZWQgc2hhZGVycy4KLWNsYXNzIEN1c3RvbUZp
bHRlclByb2dyYW06IHB1YmxpYyBSZWZDb3VudGVkPEN1c3RvbUZpbHRlclByb2dyYW0+IHsKLXB1
YmxpYzoKLSAgICB2aXJ0dWFsIH5DdXN0b21GaWx0ZXJQcm9ncmFtKCk7Ci0KLSAgICB2aXJ0dWFs
IGJvb2wgaXNMb2FkZWQoKSBjb25zdCA9IDA7Ci0KLSAgICB2b2lkIGFkZENsaWVudChDdXN0b21G
aWx0ZXJQcm9ncmFtQ2xpZW50Kik7Ci0gICAgdm9pZCByZW1vdmVDbGllbnQoQ3VzdG9tRmlsdGVy
UHJvZ3JhbUNsaWVudCopOwotICAgIAotICAgIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvIHByb2dy
YW1JbmZvKCkgY29uc3Q7Ci0KLSAgICB2aXJ0dWFsIFN0cmluZyB2ZXJ0ZXhTaGFkZXJTdHJpbmco
KSBjb25zdCA9IDA7Ci0gICAgdmlydHVhbCBTdHJpbmcgZnJhZ21lbnRTaGFkZXJTdHJpbmcoKSBj
b25zdCA9IDA7Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUoKSBjb25z
dCB7IHJldHVybiBtX3Byb2dyYW1UeXBlOyB9Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNl
dHRpbmdzIG1peFNldHRpbmdzKCkgY29uc3QgeyByZXR1cm4gbV9taXhTZXR0aW5nczsgfQotICAg
IEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoVHlw
ZTsgfQotCi0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2YWxp
ZGF0ZWRQcm9ncmFtKCk7Ci0gICAgdm9pZCBzZXRWYWxpZGF0ZWRQcm9ncmFtKFBhc3NSZWZQdHI8
Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4pOwotCi1wcm90ZWN0ZWQ6Ci0gICAgLy8gU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtIGNhbiBub3RpZnkgdGhlIGNsaWVudHMgdGhhdCB0aGUgY2Fj
aGVkIHJlc291cmNlcyBhcmUKLSAgICAvLyBsb2FkZWQgYW5kIGl0IGlzIHJlYWR5IHRvIGNyZWF0
ZSBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0gb2JqZWN0cy4KLSAgICB2b2lkIG5vdGlmeUNs
aWVudHMoKTsKLQotICAgIHZpcnR1YWwgdm9pZCB3aWxsSGF2ZUNsaWVudHMoKSA9IDA7Ci0gICAg
dmlydHVhbCB2b2lkIGRpZFJlbW92ZUxhc3RDbGllbnQoKSA9IDA7Ci0KLSAgICAvLyBLZWVwIHRo
ZSBjb25zdHJ1Y3RvciBwcm90ZWN0ZWQgdG8gcHJldmVudCBjcmVhdGluZyB0aGlzIG9iamVjdCBk
aXJlY3RseS4KLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtKEN1c3RvbUZpbHRlclByb2dyYW1UeXBl
LCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmLCBDdXN0b21GaWx0ZXJNZXNo
VHlwZSk7Ci0KLXByaXZhdGU6Ci0gICAgLy8gQ3VzdG9tRmlsdGVyUHJvZ3JhbXMgYXJlIHVuaXF1
ZSBjb21iaW5hdGlvbnMgb2Ygc2hhZGVycyBhbmQgY2FuIGJlIAotICAgIC8vIGNvbXBhcmVkIHVz
aW5nIGp1c3QgdGhlIHBvaW50ZXIgdmFsdWUgaW5zdGVhZC4KLSAgICAvLyBUaGVzZSB3aWxsIGNh
dGNoIGFueW9uZSBkb2luZyBhIHZhbHVlIGVxdWFsIGNvbXBhcmlzb24uCi0gICAgYm9vbCBvcGVy
YXRvcj09KGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW0mKSBjb25zdDsKLSAgICBib29sIG9wZXJh
dG9yIT0oY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbSYpIGNvbnN0OwotCi0gICAgdHlwZWRlZiBI
YXNoQ291bnRlZFNldDxDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50Kj4gQ3VzdG9tRmlsdGVyUHJv
Z3JhbUNsaWVudExpc3Q7Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudExpc3QgbV9jbGll
bnRzOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIG1fcHJvZ3JhbVR5cGU7Ci0gICAgQ3Vz
dG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzIG1fbWl4U2V0dGluZ3M7Ci0gICAgQ3VzdG9tRmls
dGVyTWVzaFR5cGUgbV9tZXNoVHlwZTsKLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVk
UHJvZ3JhbT4gbV92YWxpZGF0ZWRQcm9ncmFtOwotfTsKLQotfQotCi0jZW5kaWYgLy8gRU5BQkxF
KENTU19TSEFERVJTKQotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtQ2xp
ZW50LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNiMGI3YzAuLjAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQ
cm9ncmFtQ2xpZW50LmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoK
LSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICog
ICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0g
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0g
KiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnRf
aAotI2RlZmluZSBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50X2gKLQotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBDdXN0b21GaWx0ZXJQcm9n
cmFtOwotCi1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50IHsKLXB1YmxpYzoKLSAgICB2
aXJ0dWFsIH5DdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50KCkKLSAgICB7Ci0gICAgfQotICAgIAot
ICAgIHZpcnR1YWwgdm9pZCBub3RpZnlDdXN0b21GaWx0ZXJQcm9ncmFtTG9hZGVkKEN1c3RvbUZp
bHRlclByb2dyYW0qKSA9IDA7Ci19OwotCi19Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50X2gKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGRkYWI5YTcuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwx
MDkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29y
cG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
IOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVS
IEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
clByb2dyYW1JbmZvLmgiCi0KLSNpbmNsdWRlIDx3dGYvSGFzaEZ1bmN0aW9ucy5oPgotI2luY2x1
ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1zdGF0
aWMgdW5zaWduZWQgaGFzaFBvc3NpYmx5TnVsbFN0cmluZyhjb25zdCBTdHJpbmcmIHN0cmluZykK
LXsKLSAgICByZXR1cm4gc3RyaW5nLmlzTnVsbCgpID8gMCA6IERlZmF1bHRIYXNoPFN0cmluZz46
Okhhc2g6Omhhc2goc3RyaW5nKTsKLX0KLQotQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm86OkN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvKCkKLXsKLX0KLQotYm9vbCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5m
bzo6aXNFbXB0eVZhbHVlKCkgY29uc3QgCi17IAotICAgIHJldHVybiBtX3ZlcnRleFNoYWRlclN0
cmluZy5pc051bGwoKSAKLSAgICAgICAgJiYgbV9mcmFnbWVudFNoYWRlclN0cmluZy5pc051bGwo
KTsKLX0KLQotQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm86OkN1c3RvbUZpbHRlclByb2dyYW1JbmZv
KFdURjo6SGFzaFRhYmxlRGVsZXRlZFZhbHVlVHlwZSkKLSAgICA6IG1fdmVydGV4U2hhZGVyU3Ry
aW5nKFdURjo6SGFzaFRhYmxlRGVsZXRlZFZhbHVlKQotICAgICwgbV9mcmFnbWVudFNoYWRlclN0
cmluZyhXVEY6Okhhc2hUYWJsZURlbGV0ZWRWYWx1ZSkKLXsKLX0KLQotYm9vbCBDdXN0b21GaWx0
ZXJQcm9ncmFtSW5mbzo6aXNIYXNoVGFibGVEZWxldGVkVmFsdWUoKSBjb25zdAotewotICAgIHJl
dHVybiBtX3ZlcnRleFNoYWRlclN0cmluZy5pc0hhc2hUYWJsZURlbGV0ZWRWYWx1ZSgpIAotICAg
ICAgICAmJiBtX2ZyYWdtZW50U2hhZGVyU3RyaW5nLmlzSGFzaFRhYmxlRGVsZXRlZFZhbHVlKCk7
Ci19Ci0KLUN1c3RvbUZpbHRlclByb2dyYW1JbmZvOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyhj
b25zdCBTdHJpbmcmIHZlcnRleFNoYWRlciwgY29uc3QgU3RyaW5nJiBmcmFnbWVudFNoYWRlciwg
Q3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclBy
b2dyYW1NaXhTZXR0aW5ncyYgbWl4U2V0dGluZ3MsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hU
eXBlKQotICAgIDogbV92ZXJ0ZXhTaGFkZXJTdHJpbmcodmVydGV4U2hhZGVyKQotICAgICwgbV9m
cmFnbWVudFNoYWRlclN0cmluZyhmcmFnbWVudFNoYWRlcikKLSAgICAsIG1fcHJvZ3JhbVR5cGUo
cHJvZ3JhbVR5cGUpCi0gICAgLCBtX21peFNldHRpbmdzKG1peFNldHRpbmdzKQotICAgICwgbV9t
ZXNoVHlwZShtZXNoVHlwZSkKLXsKLSAgICAvLyBBdCBsZWFzdCBvbmUgb2YgdGhlIHNoYWRlcnMg
bmVlZHMgdG8gYmUgbm9uLW51bGwuCi0gICAgQVNTRVJUKCFtX3ZlcnRleFNoYWRlclN0cmluZy5p
c051bGwoKSB8fCAhbV9mcmFnbWVudFNoYWRlclN0cmluZy5pc051bGwoKSk7Ci19Ci0KLXVuc2ln
bmVkIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvOjpoYXNoKCkgY29uc3QKLXsKLSAgICAvLyBBdCBs
ZWFzdCBvbmUgb2YgdGhlIHNoYWRlcnMgbmVlZHMgdG8gYmUgbm9uLW51bGwuCi0gICAgQVNTRVJU
KCFtX3ZlcnRleFNoYWRlclN0cmluZy5pc051bGwoKSB8fCAhbV9mcmFnbWVudFNoYWRlclN0cmlu
Zy5pc051bGwoKSk7Ci0KLSAgICBib29sIGJsZW5kc0VsZW1lbnRUZXh0dXJlID0gKG1fcHJvZ3Jh
bVR5cGUgPT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUpOwotICAgIHVpbnRw
dHJfdCBoYXNoQ29kZXNbNl0gPSB7Ci0gICAgICAgIGhhc2hQb3NzaWJseU51bGxTdHJpbmcobV92
ZXJ0ZXhTaGFkZXJTdHJpbmcpLAotICAgICAgICBoYXNoUG9zc2libHlOdWxsU3RyaW5nKG1fZnJh
Z21lbnRTaGFkZXJTdHJpbmcpLAotICAgICAgICBibGVuZHNFbGVtZW50VGV4dHVyZSwKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8dWludHB0cl90PihibGVuZHNFbGVtZW50VGV4dHVyZSA/IG1fbWl4U2V0
dGluZ3MuYmxlbmRNb2RlIDogMCksCi0gICAgICAgIHN0YXRpY19jYXN0PHVpbnRwdHJfdD4oYmxl
bmRzRWxlbWVudFRleHR1cmUgPyBtX21peFNldHRpbmdzLmNvbXBvc2l0ZU9wZXJhdG9yIDogMCks
Ci0gICAgICAgIG1fbWVzaFR5cGUKLSAgICB9OwotICAgIHJldHVybiBTdHJpbmdIYXNoZXI6Omhh
c2hNZW1vcnk8c2l6ZW9mKGhhc2hDb2Rlcyk+KCZoYXNoQ29kZXMpOwotfQotCi1ib29sIEN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvOjpvcGVyYXRvcj09KGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1J
bmZvJiBvKSBjb25zdCAKLXsKLSAgICBBU1NFUlQoIWlzSGFzaFRhYmxlRGVsZXRlZFZhbHVlKCkp
OwotICAgIEFTU0VSVCghby5pc0hhc2hUYWJsZURlbGV0ZWRWYWx1ZSgpKTsKLQotICAgIHJldHVy
biBtX3Byb2dyYW1UeXBlID09IG8ubV9wcm9ncmFtVHlwZQotICAgICAgICAmJiAobV9wcm9ncmFt
VHlwZSAhPSBQUk9HUkFNX1RZUEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRSB8fCBtX21peFNldHRp
bmdzID09IG8ubV9taXhTZXR0aW5ncykKLSAgICAgICAgJiYgbV9tZXNoVHlwZSA9PSBvLm1fbWVz
aFR5cGUKLSAgICAgICAgJiYgbV92ZXJ0ZXhTaGFkZXJTdHJpbmcgPT0gby5tX3ZlcnRleFNoYWRl
clN0cmluZwotICAgICAgICAmJiBtX2ZyYWdtZW50U2hhZGVyU3RyaW5nID09IG8ubV9mcmFnbWVu
dFNoYWRlclN0cmluZzsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZWI2OGYyLi4wMDAwMDAwCi0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8uaAorKysgL2Rldi9udWxsCkBAIC0xLDExMSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERB
TUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvX2gKLSNkZWZpbmUg
Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm9faAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2lu
Y2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0YW50cy5oIgotI2luY2x1ZGUgIkdyYXBoaWNzVHlwZXMu
aCIKLQotI2luY2x1ZGUgPHd0Zi9IYXNoVHJhaXRzLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotCi1zdHJ1Y3QgQ3VzdG9tRmlsdGVy
UHJvZ3JhbU1peFNldHRpbmdzIHsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3Mo
KQotICAgICAgICA6IGJsZW5kTW9kZShCbGVuZE1vZGVOb3JtYWwpCi0gICAgICAgICwgY29tcG9z
aXRlT3BlcmF0b3IoQ29tcG9zaXRlU291cmNlQXRvcCkKLSAgICB7Ci0gICAgfQotICAgIAotICAg
IGJvb2wgb3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG8p
IGNvbnN0Ci0gICAgewotICAgICAgICByZXR1cm4gYmxlbmRNb2RlID09IG8uYmxlbmRNb2RlICYm
IGNvbXBvc2l0ZU9wZXJhdG9yID09IG8uY29tcG9zaXRlT3BlcmF0b3I7Ci0gICAgfQotICAgIAot
ICAgIEJsZW5kTW9kZSBibGVuZE1vZGU7Ci0gICAgQ29tcG9zaXRlT3BlcmF0b3IgY29tcG9zaXRl
T3BlcmF0b3I7Ci19OwotCi0vLyBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyBpcyB0aGUga2V5IHVz
ZWQgdG8gbGluayBDdXN0b21GaWx0ZXJQcm9ncmFtIHdpdGggQ3VzdG9tRmlsdGVyQ29tcGlsZWRQ
cm9ncmFtLgotLy8gSXQgY2FuIGJlIHVzZWQgYXMgYSBrZXkgaW4gYSBIYXNoTWFwLCB3aXRoIHRo
ZSBub3RlIHRoYXQgYXQgbGVhc3Qgb25lIG9mIFN0cmluZ3MgbmVlZHMgdG8gYmUgbm9uLW51bGwu
IAotLy8gTnVsbCBzdHJpbmdzIGFyZSBwbGFjZWhvbGRlcnMgZm9yIHRoZSBkZWZhdWx0IHNoYWRl
ci4KLWNsYXNzIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvIHsKLXB1YmxpYzoKLSAgICBDdXN0b21G
aWx0ZXJQcm9ncmFtSW5mbyhjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmLCBDdXN0b21GaWx0
ZXJQcm9ncmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiwgQ3Vz
dG9tRmlsdGVyTWVzaFR5cGUpOwotCi0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8oKTsKLSAg
ICBib29sIGlzRW1wdHlWYWx1ZSgpIGNvbnN0OwotCi0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8oV1RGOjpIYXNoVGFibGVEZWxldGVkVmFsdWVUeXBlKTsKLSAgICBib29sIGlzSGFzaFRhYmxl
RGVsZXRlZFZhbHVlKCkgY29uc3Q7Ci0gICAgCi0gICAgdW5zaWduZWQgaGFzaCgpIGNvbnN0Owot
ICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYpIGNvbnN0
OwotCi0gICAgY29uc3QgU3RyaW5nJiB2ZXJ0ZXhTaGFkZXJTdHJpbmcoKSBjb25zdCB7IHJldHVy
biBtX3ZlcnRleFNoYWRlclN0cmluZzsgfQotICAgIGNvbnN0IFN0cmluZyYgZnJhZ21lbnRTaGFk
ZXJTdHJpbmcoKSBjb25zdCB7IHJldHVybiBtX2ZyYWdtZW50U2hhZGVyU3RyaW5nOyB9Ci0gICAg
Q3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUoKSBjb25zdCB7IHJldHVybiBtX3By
b2dyYW1UeXBlOyB9Ci0gICAgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiBt
aXhTZXR0aW5ncygpIGNvbnN0IHsgcmV0dXJuIG1fbWl4U2V0dGluZ3M7IH0KLSAgICBDdXN0b21G
aWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaFR5cGU7IH0KLXBy
aXZhdGU6Ci0gICAgU3RyaW5nIG1fdmVydGV4U2hhZGVyU3RyaW5nOwotICAgIFN0cmluZyBtX2Zy
YWdtZW50U2hhZGVyU3RyaW5nOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIG1fcHJvZ3Jh
bVR5cGU7Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzIG1fbWl4U2V0dGluZ3M7
Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbV9tZXNoVHlwZTsKLX07Ci0KLXN0cnVjdCBDdXN0
b21GaWx0ZXJQcm9ncmFtSW5mb0hhc2ggewotICAgIHN0YXRpYyB1bnNpZ25lZCBoYXNoKGNvbnN0
IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9ncmFtSW5mbykgeyByZXR1cm4gcHJvZ3JhbUlu
Zm8uaGFzaCgpOyB9Ci0gICAgc3RhdGljIGJvb2wgZXF1YWwoY29uc3QgQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8mIGEsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBiKSB7IHJldHVybiBh
ID09IGI7IH0KLSAgICBzdGF0aWMgY29uc3QgYm9vbCBzYWZlVG9Db21wYXJlVG9FbXB0eU9yRGVs
ZXRlZCA9IGZhbHNlOwotfTsKLQotc3RydWN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvSGFzaFRy
YWl0cyA6IFdURjo6U2ltcGxlQ2xhc3NIYXNoVHJhaXRzPEN1c3RvbUZpbHRlclByb2dyYW1JbmZv
PiB7Ci0gICAgc3RhdGljIGNvbnN0IGJvb2wgaGFzSXNFbXB0eVZhbHVlRnVuY3Rpb24gPSB0cnVl
OwotICAgIHN0YXRpYyBib29sIGlzRW1wdHlWYWx1ZShjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFt
SW5mbyYgaW5mbykgeyByZXR1cm4gaW5mby5pc0VtcHR5VmFsdWUoKTsgfQotfTsKLQotfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi1uYW1lc3BhY2UgV1RGIHsKLQotdGVtcGxhdGU8PiBzdHJ1Y3Qg
SGFzaFRyYWl0czxXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbz4gOiBXZWJDb3JlOjpD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mb0hhc2hUcmFpdHMgeyB9OwotdGVtcGxhdGU8PiBzdHJ1Y3Qg
RGVmYXVsdEhhc2g8V2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8+IHsgCi0gICAgdHlw
ZWRlZiBXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mb0hhc2ggSGFzaDsgCi19OwotCi19
Ci0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVy
UHJvZ3JhbUluZm9faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmNwcApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNjJlZDM5My4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmNwcAorKysg
L2Rldi9udWxsCkBAIC0xLDMzNSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFk
b2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJp
Z2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEyIENvbXBhbnkgMTAwLCBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0g
KiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5Z
Ci0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICog
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
LSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YK
LSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
clJlbmRlcmVyLmgiCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlci5oIgot
I2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9t
RmlsdGVyQ29tcGlsZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyTWVzaC5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
ck51bWJlclBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlci5oIgot
I2luY2x1ZGUgIkN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkdy
YXBoaWNzQ29udGV4dDNELmgiCi0jaW5jbHVkZSAiVHJhbnNmb3JtYXRpb25NYXRyaXguaCIKLQot
bmFtZXNwYWNlIFdlYkNvcmUgewotCi1zdGF0aWMgdm9pZCBvcnRob2dvbmFsUHJvamVjdGlvbk1h
dHJpeChUcmFuc2Zvcm1hdGlvbk1hdHJpeCYgbWF0cml4LCBmbG9hdCBsZWZ0LCBmbG9hdCByaWdo
dCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3ApCi17Ci0gICAgQVNTRVJUKG1hdHJpeC5pc0lkZW50
aXR5KCkpOwotCi0gICAgZmxvYXQgZGVsdGFYID0gcmlnaHQgLSBsZWZ0OwotICAgIGZsb2F0IGRl
bHRhWSA9IHRvcCAtIGJvdHRvbTsKLSAgICBpZiAoIWRlbHRhWCB8fCAhZGVsdGFZKQotICAgICAg
ICByZXR1cm47Ci0gICAgbWF0cml4LnNldE0xMSgyLjBmIC8gZGVsdGFYKTsKLSAgICBtYXRyaXgu
c2V0TTQxKC0ocmlnaHQgKyBsZWZ0KSAvIGRlbHRhWCk7Ci0gICAgbWF0cml4LnNldE0yMigyLjBm
IC8gZGVsdGFZKTsKLSAgICBtYXRyaXguc2V0TTQyKC0odG9wICsgYm90dG9tKSAvIGRlbHRhWSk7
Ci0KLSAgICAvLyBVc2UgYmlnIGVub3VnaCBuZWFyL2ZhciB2YWx1ZXMsIHNvIHRoYXQgc2ltcGxl
IHJvdGF0aW9ucyBvZiByYXRoZXIgbGFyZ2Ugb2JqZWN0cyB3aWxsIG5vdAotICAgIC8vIGdldCBj
bGlwcGVkLiAxMDAwMCBzaG91bGQgY292ZXIgbW9zdCBvZiB0aGUgc2NyZWVuIHJlc29sdXRpb25z
LgotICAgIGNvbnN0IGZsb2F0IGZhclZhbHVlID0gMTAwMDA7Ci0gICAgY29uc3QgZmxvYXQgbmVh
clZhbHVlID0gLTEwMDAwOwotICAgIG1hdHJpeC5zZXRNMzMoLTIuMGYgLyAoZmFyVmFsdWUgLSBu
ZWFyVmFsdWUpKTsKLSAgICBtYXRyaXguc2V0TTQzKC0gKGZhclZhbHVlICsgbmVhclZhbHVlKSAv
IChmYXJWYWx1ZSAtIG5lYXJWYWx1ZSkpOwotICAgIG1hdHJpeC5zZXRNNDQoMS4wZik7Ci19Ci0K
LVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUmVuZGVyZXI+IEN1c3RvbUZpbHRlclJlbmRlcmVyOjpj
cmVhdGUoUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gY29udGV4dCwgQ3VzdG9tRmlsdGVy
UHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3Qm
IHBhcmFtZXRlcnMsCi0gICAgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5z
LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYo
bmV3IEN1c3RvbUZpbHRlclJlbmRlcmVyKGNvbnRleHQsIHByb2dyYW1UeXBlLCBwYXJhbWV0ZXJz
LCBtZXNoUm93cywgbWVzaENvbHVtbnMsIG1lc2hUeXBlKSk7Ci19Ci0KLUN1c3RvbUZpbHRlclJl
bmRlcmVyOjpDdXN0b21GaWx0ZXJSZW5kZXJlcihQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNE
PiBjb250ZXh0LCBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSwgY29uc3QgQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVycywKLSAgICB1bnNpZ25lZCBtZXNoUm93
cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQot
ICAgIDogbV9jb250ZXh0KGNvbnRleHQpCi0gICAgLCBtX3Byb2dyYW1UeXBlKHByb2dyYW1UeXBl
KQotICAgICwgbV9wYXJhbWV0ZXJzKHBhcmFtZXRlcnMpCi0gICAgLCBtX21lc2hSb3dzKG1lc2hS
b3dzKQotICAgICwgbV9tZXNoQ29sdW1ucyhtZXNoQ29sdW1ucykKLSAgICAsIG1fbWVzaFR5cGUo
bWVzaFR5cGUpCi17Ci19Ci0KLUN1c3RvbUZpbHRlclJlbmRlcmVyOjp+Q3VzdG9tRmlsdGVyUmVu
ZGVyZXIoKQotewotfQotCi1ib29sIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpwcmVtdWx0aXBsaWVk
QWxwaGEoKSBjb25zdAotewotICAgIHJldHVybiBtX3Byb2dyYW1UeXBlID09IFBST0dSQU1fVFlQ
RV9CTEVORFNfRUxFTUVOVF9URVhUVVJFOwotfQotCi1ib29sIEN1c3RvbUZpbHRlclJlbmRlcmVy
Ojpwcm9ncmFtTmVlZHNJbnB1dFRleHR1cmUoKSBjb25zdAotewotICAgIEFTU0VSVChtX2NvbXBp
bGVkUHJvZ3JhbS5nZXQoKSk7Ci0gICAgcmV0dXJuIG1fY29tcGlsZWRQcm9ncmFtLT5zYW1wbGVy
TG9jYXRpb24oKSAhPSAtMTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6ZHJhdyhQ
bGF0Zm9ybTNET2JqZWN0IGlucHV0VGV4dHVyZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkKLXsKLSAg
ICAvLyBGSVhNRTogV2Ugd291bGQgbmVlZCBzb21ldGhpbmcgbGlrZSBDdXN0b21GaWx0ZXJSZW5k
ZXJlclN0YXRlIHRoYXQgd2lsbCBjb250YWluIHRoZSBzaXplIGFuZCBvdGhlciBwYXJhbWV0ZXJz
IGluIHRoZSBmdXR1cmUuIFdlIHNob3VsZCBwYXNzIHRoYXQgdG8gYmluZFByb2dyYW1CdWZmZXJz
IGluc3RlYWQgb2Ygc3RvcmluZyBpdC4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTAwMTA3Ci0gICAgbV9jb250ZXh0U2l6ZSA9IHNpemU7Ci0KLSAgICBi
aW5kUHJvZ3JhbUFuZEJ1ZmZlcnMoaW5wdXRUZXh0dXJlKTsKLSAgICBtX2NvbnRleHQtPmRyYXdF
bGVtZW50cyhHcmFwaGljc0NvbnRleHQzRDo6VFJJQU5HTEVTLCBtX21lc2gtPmluZGljZXNDb3Vu
dCgpLCBHcmFwaGljc0NvbnRleHQzRDo6VU5TSUdORURfU0hPUlQsIDApOwotICAgIHVuYmluZFZl
cnRleEF0dHJpYnV0ZXMoKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6c2V0Q29t
cGlsZWRQcm9ncmFtKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiBjb21w
aWxlZFByb2dyYW0pCi17Ci0gICAgbV9jb21waWxlZFByb2dyYW0gPSBjb21waWxlZFByb2dyYW07
Ci19Ci0KLWJvb2wgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OnByZXBhcmVGb3JEcmF3aW5nKCkKLXsK
LSAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotICAgIGlmICghbV9jb21waWxl
ZFByb2dyYW0gfHwgIW1fY29tcGlsZWRQcm9ncmFtLT5pc0luaXRpYWxpemVkKCkpCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLSAgICBpbml0aWFsaXplTWVzaElmTmVlZGVkKCk7Ci0gICAgcmV0dXJu
IHRydWU7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmluaXRpYWxpemVNZXNoSWZO
ZWVkZWQoKQotewotICAgIGlmIChtX21lc2guZ2V0KCkpCi0gICAgICAgIHJldHVybjsKLQotICAg
IC8vIEZJWE1FOiBTaGFyaW5nIHRoZSBtZXNoIHdvdWxkIGp1c3Qgc2F2ZSB0aGUgdGltZSBuZWVk
ZWQgdG8gdXBsb2FkIGl0IHRvIHRoZSBHUFUsIHNvIEkgYXNzdW1lIHdlIGNvdWxkCi0gICAgLy8g
YmVuY2htYXJrIHRoYXQgZm9yIHBlcmZvcm1hbmNlLgotICAgIC8vIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODQyOQotICAgIG1fbWVzaCA9IEN1c3RvbUZpbHRlck1l
c2g6OmNyZWF0ZShtX2NvbnRleHQuZ2V0KCksIG1fbWVzaENvbHVtbnMsIG1fbWVzaFJvd3MsIEZs
b2F0UmVjdCgwLCAwLCAxLCAxKSwgbV9tZXNoVHlwZSk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVy
UmVuZGVyZXI6OmJpbmRWZXJ0ZXhBdHRyaWJ1dGUoaW50IGF0dHJpYnV0ZUxvY2F0aW9uLCB1bnNp
Z25lZCBzaXplLCB1bnNpZ25lZCBvZmZzZXQpCi17Ci0gICAgaWYgKGF0dHJpYnV0ZUxvY2F0aW9u
ICE9IC0xKSB7Ci0gICAgICAgIG1fY29udGV4dC0+dmVydGV4QXR0cmliUG9pbnRlcihhdHRyaWJ1
dGVMb2NhdGlvbiwgc2l6ZSwgR3JhcGhpY3NDb250ZXh0M0Q6OkZMT0FULCBmYWxzZSwgbV9tZXNo
LT5ieXRlc1BlclZlcnRleCgpLCBvZmZzZXQpOwotICAgICAgICBtX2NvbnRleHQtPmVuYWJsZVZl
cnRleEF0dHJpYkFycmF5KGF0dHJpYnV0ZUxvY2F0aW9uKTsKLSAgICB9Ci19Ci0KLXZvaWQgQ3Vz
dG9tRmlsdGVyUmVuZGVyZXI6OnVuYmluZFZlcnRleEF0dHJpYnV0ZShpbnQgYXR0cmlidXRlTG9j
YXRpb24pCi17Ci0gICAgaWYgKGF0dHJpYnV0ZUxvY2F0aW9uICE9IC0xKQotICAgICAgICBtX2Nv
bnRleHQtPmRpc2FibGVWZXJ0ZXhBdHRyaWJBcnJheShhdHRyaWJ1dGVMb2NhdGlvbik7Ci19Ci0K
LXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9ncmFtQXJyYXlQYXJhbWV0ZXJzKGlu
dCB1bmlmb3JtTG9jYXRpb24sIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKiBhcnJheVBhcmFt
ZXRlcikKLXsKLSAgICB1bnNpZ25lZCBwYXJhbWV0ZXJTaXplID0gYXJyYXlQYXJhbWV0ZXItPnNp
emUoKTsKLSAgICBWZWN0b3I8R0MzRGZsb2F0PiBmbG9hdFZlY3RvcjsKLQotICAgIGZvciAodW5z
aWduZWQgaSA9IDA7IGkgPCBwYXJhbWV0ZXJTaXplOyArK2kpCi0gICAgICAgIGZsb2F0VmVjdG9y
LmFwcGVuZChhcnJheVBhcmFtZXRlci0+dmFsdWVBdChpKSk7Ci0KLSAgICBtX2NvbnRleHQtPnVu
aWZvcm0xZnYodW5pZm9ybUxvY2F0aW9uLCBwYXJhbWV0ZXJTaXplLCBmbG9hdFZlY3Rvci5kYXRh
KCkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpiaW5kUHJvZ3JhbUNvbG9yUGFy
YW1ldGVycyhpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlciog
Y29sb3JQYXJhbWV0ZXIpCi17Ci0gICAgZmxvYXQgciwgZywgYiwgYTsKLSAgICBjb2xvclBhcmFt
ZXRlci0+Y29sb3IoKS5nZXRSR0JBKHIsIGcsIGIsIGEpOwotCi0gICAgbV9jb250ZXh0LT51bmlm
b3JtNGYodW5pZm9ybUxvY2F0aW9uLCByLCBnLCBiLCBhKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0
ZXJSZW5kZXJlcjo6YmluZFByb2dyYW1NYXRyaXhQYXJhbWV0ZXJzKGludCB1bmlmb3JtTG9jYXRp
b24sIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKiBtYXRyaXhQYXJhbWV0ZXIpCi17Ci0gICAg
dW5zaWduZWQgcGFyYW1ldGVyU2l6ZSA9IG1hdHJpeFBhcmFtZXRlci0+c2l6ZSgpOwotICAgIFZl
Y3RvcjxHQzNEZmxvYXQsIDE2PiBmbG9hdFZlY3RvcjsKLQotICAgIGZvciAodW5zaWduZWQgaSA9
IDA7IGkgPCBwYXJhbWV0ZXJTaXplOyArK2kpCi0gICAgICAgIGZsb2F0VmVjdG9yLmFwcGVuZCht
YXRyaXhQYXJhbWV0ZXItPnZhbHVlQXQoaSkpOwotCi0gICAgc3dpdGNoIChwYXJhbWV0ZXJTaXpl
KSB7Ci0gICAgY2FzZSA0OgotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm1NYXRyaXgyZnYodW5p
Zm9ybUxvY2F0aW9uLCAxLCBmYWxzZSwgZmxvYXRWZWN0b3IuZGF0YSgpKTsKLSAgICAgICAgYnJl
YWs7Ci0gICAgY2FzZSA5OgotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm1NYXRyaXgzZnYodW5p
Zm9ybUxvY2F0aW9uLCAxLCBmYWxzZSwgZmxvYXRWZWN0b3IuZGF0YSgpKTsKLSAgICAgICAgYnJl
YWs7Ci0gICAgY2FzZSAxNjoKLSAgICAgICAgbV9jb250ZXh0LT51bmlmb3JtTWF0cml4NGZ2KHVu
aWZvcm1Mb2NhdGlvbiwgMSwgZmFsc2UsIGZsb2F0VmVjdG9yLmRhdGEoKSk7Ci0gICAgICAgIGJy
ZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIH0K
LX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6YmluZFByb2dyYW1OdW1iZXJQYXJhbWV0
ZXJzKGludCB1bmlmb3JtTG9jYXRpb24sIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciogbnVt
YmVyUGFyYW1ldGVyKQotewotICAgIHN3aXRjaCAobnVtYmVyUGFyYW1ldGVyLT5zaXplKCkpIHsK
LSAgICBjYXNlIDE6Ci0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybTFmKHVuaWZvcm1Mb2NhdGlv
biwgbnVtYmVyUGFyYW1ldGVyLT52YWx1ZUF0KDApKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2Fz
ZSAyOgotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm0yZih1bmlmb3JtTG9jYXRpb24sIG51bWJl
clBhcmFtZXRlci0+dmFsdWVBdCgwKSwgbnVtYmVyUGFyYW1ldGVyLT52YWx1ZUF0KDEpKTsKLSAg
ICAgICAgYnJlYWs7Ci0gICAgY2FzZSAzOgotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm0zZih1
bmlmb3JtTG9jYXRpb24sIG51bWJlclBhcmFtZXRlci0+dmFsdWVBdCgwKSwgbnVtYmVyUGFyYW1l
dGVyLT52YWx1ZUF0KDEpLCBudW1iZXJQYXJhbWV0ZXItPnZhbHVlQXQoMikpOwotICAgICAgICBi
cmVhazsKLSAgICBjYXNlIDQ6Ci0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybTRmKHVuaWZvcm1M
b2NhdGlvbiwgbnVtYmVyUGFyYW1ldGVyLT52YWx1ZUF0KDApLCBudW1iZXJQYXJhbWV0ZXItPnZh
bHVlQXQoMSksIG51bWJlclBhcmFtZXRlci0+dmFsdWVBdCgyKSwgbnVtYmVyUGFyYW1ldGVyLT52
YWx1ZUF0KDMpKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7Ci0gICAgfQotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpi
aW5kUHJvZ3JhbVRyYW5zZm9ybVBhcmFtZXRlcihpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21G
aWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqIHRyYW5zZm9ybVBhcmFtZXRlcikKLXsKLSAgICBUcmFu
c2Zvcm1hdGlvbk1hdHJpeCBtYXRyaXg7Ci0gICAgaWYgKG1fY29udGV4dFNpemUud2lkdGgoKSAm
JiBtX2NvbnRleHRTaXplLmhlaWdodCgpKSB7Ci0gICAgICAgIC8vIFRoZSB2aWV3cG9ydCBpcyBh
IGJveCB3aXRoIHRoZSBzaXplIG9mIDEgdW5pdCwgc28gd2UgYXJlIHNjYWxpbmcgdXAgaGVyZSB0
byBtYWtlIHN1cmUgdGhhdCB0cmFuc2xhdGlvbnMgaGFwcGVuIHVzaW5nIHJlYWwgcGl4ZWwKLSAg
ICAgICAgLy8gdW5pdHMuIEF0IHRoZSBlbmQgd2Ugc2NhbGUgYmFjayBkb3duIGluIG9yZGVyIHRv
IG1hcCBpdCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBib3guIE5vdGUgdGhhdCB0cmFuc2Zvcm1zIGNv
bWUgaW4gcmV2ZXJzZSBvcmRlciwgYmVjYXVzZSBpdCBpcwotICAgICAgICAvLyBzdXBwb3NlZCB0
byBtdWx0aXBseSB0byB0aGUgbGVmdCBvZiB0aGUgY29vcmRpbmF0ZXMgb2YgdGhlIHZlcnRpY2Vz
LgotICAgICAgICAvLyBOb3RlIHRoYXQgdGhlIG9yaWdpbiAoMCwgMCkgb2YgdGhlIHZpZXdwb3J0
IGlzIGluIHRoZSBtaWRkbGUgb2YgdGhlIGNvbnRleHQsIHNvIHRoZXJlJ3Mgbm8gbmVlZCB0byBj
aGFuZ2UgdGhlIG9yaWdpbiBvZiB0aGUgdHJhbnNmb3JtCi0gICAgICAgIC8vIGluIG9yZGVyIHRv
IHJvdGF0ZSBhcm91bmQgdGhlIG1pZGRsZSBvZiBtZXNoLgotICAgICAgICBtYXRyaXguc2NhbGUz
ZCgxLjAgLyBtX2NvbnRleHRTaXplLndpZHRoKCksIDEuMCAvIG1fY29udGV4dFNpemUuaGVpZ2h0
KCksIDEpOwotICAgICAgICB0cmFuc2Zvcm1QYXJhbWV0ZXItPmFwcGx5VHJhbnNmb3JtKG1hdHJp
eCwgbV9jb250ZXh0U2l6ZSk7Ci0gICAgICAgIG1hdHJpeC5zY2FsZTNkKG1fY29udGV4dFNpemUu
d2lkdGgoKSwgbV9jb250ZXh0U2l6ZS5oZWlnaHQoKSwgMSk7Ci0gICAgfQotICAgIGZsb2F0IGds
TWF0cml4WzE2XTsKLSAgICBtYXRyaXgudG9Db2x1bW5NYWpvckZsb2F0QXJyYXkoZ2xNYXRyaXgp
OwotICAgIG1fY29udGV4dC0+dW5pZm9ybU1hdHJpeDRmdih1bmlmb3JtTG9jYXRpb24sIDEsIGZh
bHNlLCAmZ2xNYXRyaXhbMF0pOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpiaW5k
UHJvZ3JhbVBhcmFtZXRlcnMoKQotewotICAgIC8vIEZJWE1FOiBGaW5kIGEgd2F5IHRvIHJlc2V0
IHVuaWZvcm1zIHRoYXQgYXJlIG5vdCBzcGVjaWZpZWQgaW4gQ1NTLiBUaGlzIGlzIG5lZWRlZCB0
byBhdm9pZCB1c2luZyB2YWx1ZXMKLSAgICAvLyBzZXQgYnkgb3RoZXIgcHJldmlvdXMgcmVuZGVy
ZWQgZmlsdGVycy4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzY0NDAKLQotICAgIHNpemVfdCBwYXJhbWV0ZXJzU2l6ZSA9IG1fcGFyYW1ldGVycy5zaXpl
KCk7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzU2l6ZTsgKytpKSB7Ci0g
ICAgICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlciogcGFyYW1ldGVyID0gbV9wYXJhbWV0ZXJzLmF0
KGkpLmdldCgpOwotICAgICAgICBpbnQgdW5pZm9ybUxvY2F0aW9uID0gbV9jb21waWxlZFByb2dy
YW0tPnVuaWZvcm1Mb2NhdGlvbkJ5TmFtZShwYXJhbWV0ZXItPm5hbWUoKSk7Ci0gICAgICAgIGlm
ICh1bmlmb3JtTG9jYXRpb24gPT0gLTEpCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAg
c3dpdGNoIChwYXJhbWV0ZXItPnBhcmFtZXRlclR5cGUoKSkgewotICAgICAgICBjYXNlIEN1c3Rv
bUZpbHRlclBhcmFtZXRlcjo6QVJSQVk6Ci0gICAgICAgICAgICBiaW5kUHJvZ3JhbUFycmF5UGFy
YW1ldGVycyh1bmlmb3JtTG9jYXRpb24sIHN0YXRpY19jYXN0PEN1c3RvbUZpbHRlckFycmF5UGFy
YW1ldGVyKj4ocGFyYW1ldGVyKSk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXI6OkNPTE9SOiAgICAgICAgCi0gICAgICAgICAgICBiaW5kUHJv
Z3JhbUNvbG9yUGFyYW1ldGVycyh1bmlmb3JtTG9jYXRpb24sIHN0YXRpY19jYXN0PEN1c3RvbUZp
bHRlckNvbG9yUGFyYW1ldGVyKj4ocGFyYW1ldGVyKSk7Ci0gICAgICAgICAgICBicmVhazsKLSAg
ICAgICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6Ok1BVFJJWDoKLSAgICAgICAgICAgIGJp
bmRQcm9ncmFtTWF0cml4UGFyYW1ldGVycyh1bmlmb3JtTG9jYXRpb24sIHN0YXRpY19jYXN0PEN1
c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKj4ocGFyYW1ldGVyKSk7Ci0gICAgICAgICAgICBicmVh
azsKLSAgICAgICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6Ok5VTUJFUjoKLSAgICAgICAg
ICAgIGJpbmRQcm9ncmFtTnVtYmVyUGFyYW1ldGVycyh1bmlmb3JtTG9jYXRpb24sIHN0YXRpY19j
YXN0PEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcio+KHBhcmFtZXRlcikpOwotICAgICAgICAg
ICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpUUkFOU0ZPUk06
Ci0gICAgICAgICAgICBiaW5kUHJvZ3JhbVRyYW5zZm9ybVBhcmFtZXRlcih1bmlmb3JtTG9jYXRp
b24sIHN0YXRpY19jYXN0PEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcio+KHBhcmFtZXRl
cikpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLXZvaWQgQ3Vz
dG9tRmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9ncmFtQW5kQnVmZmVycyhQbGF0Zm9ybTNET2JqZWN0
IGlucHV0VGV4dHVyZSkKLXsKLSAgICBBU1NFUlQobV9jb21waWxlZFByb2dyYW0tPmlzSW5pdGlh
bGl6ZWQoKSk7Ci0KLSAgICBtX2NvbnRleHQtPnVzZVByb2dyYW0obV9jb21waWxlZFByb2dyYW0t
PnByb2dyYW0oKSk7Ci0KLSAgICBpZiAocHJvZ3JhbU5lZWRzSW5wdXRUZXh0dXJlKCkpIHsKLSAg
ICAgICAgLy8gV2Ugc2hvdWxkIGJlIGJpbmRpbmcgdGhlIERPTSBlbGVtZW50IHRleHR1cmUgc2Ft
cGxlciBvbmx5IGlmIHRoZSBhdXRob3IgaXMgdXNpbmcgdGhlIENTUyBtaXggZnVuY3Rpb24uCi0g
ICAgICAgIEFTU0VSVChtX3Byb2dyYW1UeXBlID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVO
VF9URVhUVVJFKTsKLSAgICAgICAgQVNTRVJUKG1fY29tcGlsZWRQcm9ncmFtLT5zYW1wbGVyTG9j
YXRpb24oKSAhPSAtMSk7Ci0KLSAgICAgICAgbV9jb250ZXh0LT5hY3RpdmVUZXh0dXJlKEdyYXBo
aWNzQ29udGV4dDNEOjpURVhUVVJFMCk7Ci0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybTFpKG1f
Y29tcGlsZWRQcm9ncmFtLT5zYW1wbGVyTG9jYXRpb24oKSwgMCk7Ci0gICAgICAgIG1fY29udGV4
dC0+YmluZFRleHR1cmUoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfMkQsIGlucHV0VGV4dHVy
ZSk7Ci0gICAgICAgIG1fY29udGV4dC0+dGV4UGFyYW1ldGVyaShHcmFwaGljc0NvbnRleHQzRDo6
VEVYVFVSRV8yRCwgR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfTUlOX0ZJTFRFUiwgR3JhcGhp
Y3NDb250ZXh0M0Q6OkxJTkVBUik7Ci0gICAgICAgIG1fY29udGV4dC0+dGV4UGFyYW1ldGVyaShH
cmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV8yRCwgR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVf
TUFHX0ZJTFRFUiwgR3JhcGhpY3NDb250ZXh0M0Q6OkxJTkVBUik7Ci0gICAgICAgIG1fY29udGV4
dC0+dGV4UGFyYW1ldGVyaShHcmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV8yRCwgR3JhcGhpY3ND
b250ZXh0M0Q6OlRFWFRVUkVfV1JBUF9TLCBHcmFwaGljc0NvbnRleHQzRDo6Q0xBTVBfVE9fRURH
RSk7Ci0gICAgICAgIG1fY29udGV4dC0+dGV4UGFyYW1ldGVyaShHcmFwaGljc0NvbnRleHQzRDo6
VEVYVFVSRV8yRCwgR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfV1JBUF9ULCBHcmFwaGljc0Nv
bnRleHQzRDo6Q0xBTVBfVE9fRURHRSk7Ci0gICAgfQotCi0gICAgaWYgKG1fY29tcGlsZWRQcm9n
cmFtLT5wcm9qZWN0aW9uTWF0cml4TG9jYXRpb24oKSAhPSAtMSkgewotICAgICAgICBUcmFuc2Zv
cm1hdGlvbk1hdHJpeCBwcm9qZWN0aW9uTWF0cml4OwotICAgICAgICBvcnRob2dvbmFsUHJvamVj
dGlvbk1hdHJpeChwcm9qZWN0aW9uTWF0cml4LCAtMC41LCAwLjUsIC0wLjUsIDAuNSk7Ci0gICAg
ICAgIGZsb2F0IGdsUHJvamVjdGlvbk1hdHJpeFsxNl07Ci0gICAgICAgIHByb2plY3Rpb25NYXRy
aXgudG9Db2x1bW5NYWpvckZsb2F0QXJyYXkoZ2xQcm9qZWN0aW9uTWF0cml4KTsKLSAgICAgICAg
bV9jb250ZXh0LT51bmlmb3JtTWF0cml4NGZ2KG1fY29tcGlsZWRQcm9ncmFtLT5wcm9qZWN0aW9u
TWF0cml4TG9jYXRpb24oKSwgMSwgZmFsc2UsICZnbFByb2plY3Rpb25NYXRyaXhbMF0pOwotICAg
IH0KLQotICAgIEFTU0VSVChtX21lc2hDb2x1bW5zKTsKLSAgICBBU1NFUlQobV9tZXNoUm93cyk7
Ci0KLSAgICBpZiAobV9jb21waWxlZFByb2dyYW0tPm1lc2hTaXplTG9jYXRpb24oKSAhPSAtMSkK
LSAgICAgICAgbV9jb250ZXh0LT51bmlmb3JtMmYobV9jb21waWxlZFByb2dyYW0tPm1lc2hTaXpl
TG9jYXRpb24oKSwgbV9tZXNoQ29sdW1ucywgbV9tZXNoUm93cyk7Ci0KLSAgICBpZiAobV9jb21w
aWxlZFByb2dyYW0tPnRpbGVTaXplTG9jYXRpb24oKSAhPSAtMSkKLSAgICAgICAgbV9jb250ZXh0
LT51bmlmb3JtMmYobV9jb21waWxlZFByb2dyYW0tPnRpbGVTaXplTG9jYXRpb24oKSwgMS4wIC8g
bV9tZXNoQ29sdW1ucywgMS4wIC8gbV9tZXNoUm93cyk7Ci0KLSAgICBpZiAobV9jb21waWxlZFBy
b2dyYW0tPm1lc2hCb3hMb2NhdGlvbigpICE9IC0xKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBUaGlz
IHdpbGwgY2hhbmdlIHdoZW4gZmlsdGVyIG1hcmdpbnMgd2lsbCBiZSBpbXBsZW1lbnRlZCwKLSAg
ICAgICAgLy8gc2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTQw
MAotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm00ZihtX2NvbXBpbGVkUHJvZ3JhbS0+bWVzaEJv
eExvY2F0aW9uKCksIC0wLjUsIC0wLjUsIDEuMCwgMS4wKTsKLSAgICB9Ci0KLSAgICBpZiAobV9j
b21waWxlZFByb2dyYW0tPnNhbXBsZXJTaXplTG9jYXRpb24oKSAhPSAtMSkKLSAgICAgICAgbV9j
b250ZXh0LT51bmlmb3JtMmYobV9jb21waWxlZFByb2dyYW0tPnNhbXBsZXJTaXplTG9jYXRpb24o
KSwgbV9jb250ZXh0U2l6ZS53aWR0aCgpLCBtX2NvbnRleHRTaXplLmhlaWdodCgpKTsKLQotICAg
IG1fY29udGV4dC0+YmluZEJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6QVJSQVlfQlVGRkVSLCBt
X21lc2gtPnZlcnRpY2VzQnVmZmVyT2JqZWN0KCkpOwotICAgIG1fY29udGV4dC0+YmluZEJ1ZmZl
cihHcmFwaGljc0NvbnRleHQzRDo6RUxFTUVOVF9BUlJBWV9CVUZGRVIsIG1fbWVzaC0+ZWxlbWVu
dHNCdWZmZXJPYmplY3QoKSk7Ci0KLSAgICBiaW5kVmVydGV4QXR0cmlidXRlKG1fY29tcGlsZWRQ
cm9ncmFtLT5wb3NpdGlvbkF0dHJpYkxvY2F0aW9uKCksIFBvc2l0aW9uQXR0cmliU2l6ZSwgUG9z
aXRpb25BdHRyaWJPZmZzZXQpOwotICAgIGJpbmRWZXJ0ZXhBdHRyaWJ1dGUobV9jb21waWxlZFBy
b2dyYW0tPnRleEF0dHJpYkxvY2F0aW9uKCksIFRleEF0dHJpYlNpemUsIFRleEF0dHJpYk9mZnNl
dCk7Ci0gICAgYmluZFZlcnRleEF0dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3JhbS0+bWVzaEF0dHJp
YkxvY2F0aW9uKCksIE1lc2hBdHRyaWJTaXplLCBNZXNoQXR0cmliT2Zmc2V0KTsKLSAgICBpZiAo
bV9tZXNoVHlwZSA9PSBNZXNoVHlwZURldGFjaGVkKQotICAgICAgICBiaW5kVmVydGV4QXR0cmli
dXRlKG1fY29tcGlsZWRQcm9ncmFtLT50cmlhbmdsZUF0dHJpYkxvY2F0aW9uKCksIFRyaWFuZ2xl
QXR0cmliU2l6ZSwgVHJpYW5nbGVBdHRyaWJPZmZzZXQpOwotCi0gICAgYmluZFByb2dyYW1QYXJh
bWV0ZXJzKCk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OnVuYmluZFZlcnRleEF0
dHJpYnV0ZXMoKQotewotICAgIHVuYmluZFZlcnRleEF0dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3Jh
bS0+cG9zaXRpb25BdHRyaWJMb2NhdGlvbigpKTsKLSAgICB1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGUo
bV9jb21waWxlZFByb2dyYW0tPnRleEF0dHJpYkxvY2F0aW9uKCkpOwotICAgIHVuYmluZFZlcnRl
eEF0dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3JhbS0+bWVzaEF0dHJpYkxvY2F0aW9uKCkpOwotICAg
IGlmIChtX21lc2hUeXBlID09IE1lc2hUeXBlRGV0YWNoZWQpCi0gICAgICAgIHVuYmluZFZlcnRl
eEF0dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3JhbS0+dHJpYW5nbGVBdHRyaWJMb2NhdGlvbigpKTsK
LX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFE
RVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmgKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNjZGMyOWYuLjAwMDAwMDAKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5o
CisrKyAvZGV2L251bGwKQEAgLTEsMTA1ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQ29tcGFueSAxMDAsIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
Ci0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJSZW5kZXJl
cl9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlclJlbmRlcmVyX2gKLQotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3Rh
bnRzLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIgotI2luY2x1ZGUg
IkdyYXBoaWNzVHlwZXMzRC5oIgotI2luY2x1ZGUgIkludFNpemUuaCIKLSNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KLQotbmFtZXNwYWNlIFdlYkNv
cmUgewotCi1jbGFzcyBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcjsKLWNsYXNzIEN1c3RvbUZp
bHRlckNvbG9yUGFyYW1ldGVyOwotY2xhc3MgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOwot
Y2xhc3MgQ3VzdG9tRmlsdGVyTWVzaDsKLWNsYXNzIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRl
cjsKLWNsYXNzIEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcjsKLWNsYXNzIEdyYXBoaWNz
Q29udGV4dDNEOwotCi1jbGFzcyBDdXN0b21GaWx0ZXJSZW5kZXJlciA6IHB1YmxpYyBSZWZDb3Vu
dGVkPEN1c3RvbUZpbHRlclJlbmRlcmVyPiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQ
dHI8Q3VzdG9tRmlsdGVyUmVuZGVyZXI+IGNyZWF0ZShQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4
dDNEPiwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRl
ckxpc3QmLAotICAgICAgICB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMs
IEN1c3RvbUZpbHRlck1lc2hUeXBlKTsKLSAgICB+Q3VzdG9tRmlsdGVyUmVuZGVyZXIoKTsKLQot
ICAgIGJvb2wgcHJlbXVsdGlwbGllZEFscGhhKCkgY29uc3Q7Ci0gICAgYm9vbCBwcm9ncmFtTmVl
ZHNJbnB1dFRleHR1cmUoKSBjb25zdDsKLQotICAgIGJvb2wgcHJlcGFyZUZvckRyYXdpbmcoKTsK
LQotICAgIHZvaWQgZHJhdyhQbGF0Zm9ybTNET2JqZWN0LCBjb25zdCBJbnRTaXplJik7Ci0KLSAg
ICBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0qIGNvbXBpbGVkUHJvZ3JhbSgpIGNvbnN0IHsg
cmV0dXJuIG1fY29tcGlsZWRQcm9ncmFtLmdldCgpOyB9Ci0gICAgdm9pZCBzZXRDb21waWxlZFBy
b2dyYW0oUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+KTsKLQotcHJpdmF0
ZToKLSAgICBDdXN0b21GaWx0ZXJSZW5kZXJlcihQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNE
PiwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3QmLAotICAgICAgICB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1
c3RvbUZpbHRlck1lc2hUeXBlKTsKLQotICAgIHZvaWQgaW5pdGlhbGl6ZUNvbXBpbGVkUHJvZ3Jh
bUlmTmVlZGVkKCk7Ci0gICAgdm9pZCBpbml0aWFsaXplTWVzaElmTmVlZGVkKCk7Ci0KLSAgICB2
b2lkIGJpbmRWZXJ0ZXhBdHRyaWJ1dGUoaW50IGF0dHJpYnV0ZUxvY2F0aW9uLCB1bnNpZ25lZCBz
aXplLCB1bnNpZ25lZCBvZmZzZXQpOwotICAgIHZvaWQgdW5iaW5kVmVydGV4QXR0cmlidXRlKGlu
dCBhdHRyaWJ1dGVMb2NhdGlvbik7Ci0gICAgdm9pZCBiaW5kUHJvZ3JhbUFycmF5UGFyYW1ldGVy
cyhpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciopOwotICAg
IHZvaWQgYmluZFByb2dyYW1Db2xvclBhcmFtZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3Vz
dG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIqKTsKLSAgICB2b2lkIGJpbmRQcm9ncmFtTWF0cml4UGFy
YW1ldGVycyhpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciop
OwotICAgIHZvaWQgYmluZFByb2dyYW1OdW1iZXJQYXJhbWV0ZXJzKGludCB1bmlmb3JtTG9jYXRp
b24sIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciopOwotICAgIHZvaWQgYmluZFByb2dyYW1U
cmFuc2Zvcm1QYXJhbWV0ZXIoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3VzdG9tRmlsdGVyVHJhbnNm
b3JtUGFyYW1ldGVyKik7Ci0gICAgdm9pZCBiaW5kUHJvZ3JhbVBhcmFtZXRlcnMoKTsKLSAgICB2
b2lkIGJpbmRQcm9ncmFtQW5kQnVmZmVycyhQbGF0Zm9ybTNET2JqZWN0IGlucHV0VGV4dHVyZSk7
Ci0gICAgdm9pZCB1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGVzKCk7Ci0KLSAgICBSZWZQdHI8R3JhcGhp
Y3NDb250ZXh0M0Q+IG1fY29udGV4dDsKLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQ
cm9ncmFtPiBtX2NvbXBpbGVkUHJvZ3JhbTsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBt
X3Byb2dyYW1UeXBlOwotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJNZXNoPiBtX21lc2g7Ci0gICAg
SW50U2l6ZSBtX2NvbnRleHRTaXplOwotCi0gICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCBt
X3BhcmFtZXRlcnM7Ci0KLSAgICB1bnNpZ25lZCBtX21lc2hSb3dzOwotICAgIHVuc2lnbmVkIG1f
bWVzaENvbHVtbnM7Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbV9tZXNoVHlwZTsKLX07Ci0K
LX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykg
JiYgVVNFKDNEX0dSQVBISUNTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyUmVuZGVyZXJfaApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmgKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDViZDY2MTEuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0
ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDEwMiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERB
TUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcl9oCi0j
ZGVmaW5lIEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcl9oCi0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAi
RmxvYXRTaXplLmgiCi0jaW5jbHVkZSAiVHJhbnNmb3JtT3BlcmF0aW9ucy5oIgotCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEZsb2F0UmVjdDsKLWNsYXNzIFRyYW5zZm9ybWF0aW9uTWF0
cml4OwotCi1jbGFzcyBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIgOiBwdWJsaWMgQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDdXN0
b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXI+IGNyZWF0ZShjb25zdCBTdHJpbmcmIG5hbWUpCi0g
ICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBh
cmFtZXRlcihuYW1lKSk7Ci0gICAgfQotCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPEN1c3RvbUZp
bHRlclBhcmFtZXRlcj4gYmxlbmQoY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBmcm9tUGFy
YW1ldGVyLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmIHNpemUpCi0gICAgewot
ICAgICAgICBpZiAoIWZyb21QYXJhbWV0ZXIgfHwgIWlzU2FtZVR5cGUoKmZyb21QYXJhbWV0ZXIp
KQotICAgICAgICAgICAgcmV0dXJuIHRoaXM7Ci0KLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVy
VHJhbnNmb3JtUGFyYW1ldGVyKiBmcm9tVHJhbnNmb3JtUGFyYW1ldGVyID0gc3RhdGljX2Nhc3Q8
Y29uc3QgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKj4oZnJvbVBhcmFtZXRlcik7Ci0g
ICAgICAgIGNvbnN0IFRyYW5zZm9ybU9wZXJhdGlvbnMmIGZyb20gPSBmcm9tVHJhbnNmb3JtUGFy
YW1ldGVyLT5vcGVyYXRpb25zKCk7Ci0gICAgICAgIGNvbnN0IFRyYW5zZm9ybU9wZXJhdGlvbnMm
IHRvID0gb3BlcmF0aW9ucygpOwotICAgICAgICBpZiAoZnJvbSA9PSB0bykKLSAgICAgICAgICAg
IHJldHVybiB0aGlzOwotICAgICAgIAotICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyVHJhbnNm
b3JtUGFyYW1ldGVyPiByZXN1bHQgPSBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXI6OmNy
ZWF0ZShuYW1lKCkpOwotICAgICAgICBpZiAoZnJvbS5zaXplKCkgJiYgdG8uc2l6ZSgpKQotICAg
ICAgICAgICAgcmVzdWx0LT5zZXRPcGVyYXRpb25zKHRvLmJsZW5kKGZyb20sIHByb2dyZXNzLCBz
aXplKSk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIHJlc3VsdC0+c2V0T3BlcmF0aW9ucyhw
cm9ncmVzcyA+IDAuNSA/IHRvIDogZnJvbSk7Ci0gICAgICAgIHJldHVybiByZXN1bHQ7Ci0gICAg
fQotCi0gICAgdmlydHVhbCBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyJiBvKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKCFpc1NhbWVUeXBlKG8pKQotICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1Q
YXJhbWV0ZXIqIG90aGVyID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyVHJhbnNmb3Jt
UGFyYW1ldGVyKj4oJm8pOwotICAgICAgICByZXR1cm4gbV9vcGVyYXRpb25zID09IG90aGVyLT5t
X29wZXJhdGlvbnM7Ci0gICAgfQotCi0gICAgdm9pZCBhcHBseVRyYW5zZm9ybShUcmFuc2Zvcm1h
dGlvbk1hdHJpeCYgdHJhbnNmb3JtLCBjb25zdCBGbG9hdFNpemUmIGJveFNpemUpIGNvbnN0Ci0g
ICAgewotICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwLCBzaXplID0gbV9vcGVyYXRpb25zLnNp
emUoKTsgaSA8IHNpemU7ICsraSkKLSAgICAgICAgICAgIG1fb3BlcmF0aW9ucy5hdChpKS0+YXBw
bHkodHJhbnNmb3JtLCBib3hTaXplKTsKLSAgICB9Ci0KLSAgICBjb25zdCBUcmFuc2Zvcm1PcGVy
YXRpb25zJiBvcGVyYXRpb25zKCkgY29uc3QgeyByZXR1cm4gbV9vcGVyYXRpb25zOyB9Ci0gICAg
dm9pZCBzZXRPcGVyYXRpb25zKGNvbnN0IFRyYW5zZm9ybU9wZXJhdGlvbnMmIHZhbHVlKSB7IG1f
b3BlcmF0aW9ucyA9IHZhbHVlOyB9Ci0gICAgCi1wcml2YXRlOgotICAgIEN1c3RvbUZpbHRlclRy
YW5zZm9ybVBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUpCi0gICAgICAgIDogQ3VzdG9tRmls
dGVyUGFyYW1ldGVyKFRSQU5TRk9STSwgbmFtZSkKLSAgICB7Ci0gICAgfQotICAgIHZpcnR1YWwg
fkN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcigpCi0gICAgewotICAgIH0KLSAgICAKLSAg
ICBUcmFuc2Zvcm1PcGVyYXRpb25zIG1fb3BlcmF0aW9uczsKLX07Ci0KLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIEN1
c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0u
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0
ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWRj
ZTFhOC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uY3BwCisrKyAvZGV2L251bGwKQEAgLTEs
NjIyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNv
cnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERF
UiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICog
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJj
b25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkN1c3RvbUZp
bHRlclZhbGlkYXRlZFByb2dyYW0uaCIKLQotI2luY2x1ZGUgIkFOR0xFV2ViS2l0QnJpZGdlLmgi
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiQ3Vz
dG9tRmlsdGVyQ29uc3RhbnRzLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dC5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmgiCi0jaW5jbHVkZSAiTm90
SW1wbGVtZW50ZWQuaCIKLSNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi9W
ZWN0b3IuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+Ci0jaW5jbHVkZSA8
d3RmL3RleHQvU3RyaW5nSGFzaC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLSNkZWZpbmUg
U0hBREVSKFNyYykgKCNTcmMpIAotCi10eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCBTaERhdGFUeXBl
PiBTeW1ib2xOYW1lVG9UeXBlTWFwOwotCi1zdGF0aWMgU3ltYm9sTmFtZVRvVHlwZU1hcCogYnVp
bHRJbkF0dHJpYnV0ZU5hbWVUb1R5cGVNYXAoKQotewotICAgIHN0YXRpYyBTeW1ib2xOYW1lVG9U
eXBlTWFwKiBuYW1lVG9UeXBlTWFwID0gMDsKLSAgICBpZiAoIW5hbWVUb1R5cGVNYXApIHsKLSAg
ICAgICAgbmFtZVRvVHlwZU1hcCA9IG5ldyBTeW1ib2xOYW1lVG9UeXBlTWFwOyAgICAgICAgCi0g
ICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgiYV9tZXNoQ29vcmQiLCBTSF9GTE9BVF9WRUMyKTsK
LSAgICAgICAgbmFtZVRvVHlwZU1hcC0+c2V0KCJhX3Bvc2l0aW9uIiwgU0hfRkxPQVRfVkVDNCk7
Ci0gICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgiYV90ZXhDb29yZCIsIFNIX0ZMT0FUX1ZFQzIp
OwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoImFfdHJpYW5nbGVDb29yZCIsIFNIX0ZMT0FU
X1ZFQzMpOwotICAgIH0KLSAgICByZXR1cm4gbmFtZVRvVHlwZU1hcDsKLX0KLQotc3RhdGljIFN5
bWJvbE5hbWVUb1R5cGVNYXAqIGJ1aWx0SW5Vbmlmb3JtTmFtZVRvVHlwZU1hcCgpCi17Ci0gICAg
c3RhdGljIFN5bWJvbE5hbWVUb1R5cGVNYXAqIG5hbWVUb1R5cGVNYXAgPSAwOwotICAgIGlmICgh
bmFtZVRvVHlwZU1hcCkgewotICAgICAgICBuYW1lVG9UeXBlTWFwID0gbmV3IFN5bWJvbE5hbWVU
b1R5cGVNYXA7Ci0gICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgidV9tZXNoQm94IiwgU0hfRkxP
QVRfVkVDNCk7Ci0gICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgidV9tZXNoU2l6ZSIsIFNIX0ZM
T0FUX1ZFQzIpOwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoInVfcHJvamVjdGlvbk1hdHJp
eCIsIFNIX0ZMT0FUX01BVDQpOwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoInVfdGV4dHVy
ZVNpemUiLCBTSF9GTE9BVF9WRUMyKTsKLSAgICAgICAgbmFtZVRvVHlwZU1hcC0+c2V0KCJ1X3Rp
bGVTaXplIiwgU0hfRkxPQVRfVkVDMik7Ci0gICAgfQotICAgIHJldHVybiBuYW1lVG9UeXBlTWFw
OwotfQotCi1zdGF0aWMgYm9vbCB2YWxpZGF0ZVN5bWJvbHMoY29uc3QgVmVjdG9yPEFOR0xFU2hh
ZGVyU3ltYm9sPiYgc3ltYm9scywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi17Ci0g
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzeW1ib2xzLnNpemUoKTsgKytpKSB7Ci0gICAgICAg
IGNvbnN0IEFOR0xFU2hhZGVyU3ltYm9sJiBzeW1ib2wgPSBzeW1ib2xzW2ldOwotICAgICAgICBz
d2l0Y2ggKHN5bWJvbC5zeW1ib2xUeXBlKSB7Ci0gICAgICAgIGNhc2UgU0hBREVSX1NZTUJPTF9U
WVBFX0FUVFJJQlVURTogewotICAgICAgICAgICAgU3ltYm9sTmFtZVRvVHlwZU1hcCogYXR0cmli
dXRlTmFtZVRvVHlwZU1hcCA9IGJ1aWx0SW5BdHRyaWJ1dGVOYW1lVG9UeXBlTWFwKCk7Ci0gICAg
ICAgICAgICBTeW1ib2xOYW1lVG9UeXBlTWFwOjppdGVyYXRvciBidWlsdEluQXR0cmlidXRlID0g
YXR0cmlidXRlTmFtZVRvVHlwZU1hcC0+ZmluZChzeW1ib2wubmFtZSk7Ci0gICAgICAgICAgICBp
ZiAoYnVpbHRJbkF0dHJpYnV0ZSA9PSBhdHRyaWJ1dGVOYW1lVG9UeXBlTWFwLT5lbmQoKSkgewot
ICAgICAgICAgICAgICAgIC8vIFRoZSBhdXRob3IgZGVmaW5lZCBhIGN1c3RvbSBhdHRyaWJ1dGUu
Ci0gICAgICAgICAgICAgICAgLy8gRklYTUU6IFJlcG9ydCB0aGUgdmFsaWRhdGlvbiBlcnJvci4K
LSAgICAgICAgICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzQ0MTYKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgICAgICBpZiAobWVzaFR5cGUgPT0gTWVzaFR5cGVBdHRhY2hlZCAmJiBzeW1ib2wubmFt
ZSA9PSAiYV90cmlhbmdsZUNvb3JkIikgewotICAgICAgICAgICAgICAgIC8vIGFfdHJpYW5nbGVD
b29yZCBpcyBvbmx5IGF2YWlsYWJsZSBmb3IgZGV0YWNoZWQgbWVzaGVzLgotICAgICAgICAgICAg
ICAgIC8vIEZJWE1FOiBSZXBvcnQgdGhlIHZhbGlkYXRpb24gZXJyb3IuCi0gICAgICAgICAgICAg
ICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NDE2Ci0gICAg
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYg
KHN5bWJvbC5kYXRhVHlwZSAhPSBidWlsdEluQXR0cmlidXRlLT52YWx1ZSkgewotICAgICAgICAg
ICAgICAgIC8vIFRoZSBhdXRob3IgZGVmaW5lZCBvbmUgb2YgdGhlIGJ1aWx0LWluIGF0dHJpYnV0
ZXMgd2l0aCB0aGUgd3JvbmcgdHlwZS4KLSAgICAgICAgICAgICAgICAvLyBGSVhNRTogUmVwb3J0
IHRoZSB2YWxpZGF0aW9uIGVycm9yLgotICAgICAgICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDQxNgotICAgICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAg
ICAgIGNhc2UgU0hBREVSX1NZTUJPTF9UWVBFX1VOSUZPUk06IHsKLSAgICAgICAgICAgIGlmIChz
eW1ib2wuaXNTYW1wbGVyKCkpIHsKLSAgICAgICAgICAgICAgICAvLyBGSVhNRTogRm9yIG5vdywg
d2UgcmVzdHJpY3Qgc2hhZGVycyB3aXRoIGFueSBzYW1wbGVyIGRlZmluZWQuCi0gICAgICAgICAg
ICAgICAgLy8gV2hlbiB3ZSBpbXBsZW1lbnQgdGV4dHVyZSBwYXJhbWV0ZXJzLCB3ZSB3aWxsIGFs
bG93IHNoYWRlcnMgd2hvc2Ugc2FtcGxlcnMgYXJlIGJvdW5kIHRvIHZhbGlkIHRleHR1cmVzLgot
ICAgICAgICAgICAgICAgIC8vIFdlIG11c3Qgbm90IGFsbG93IE9wZW5HTCB0byBnaXZlIHVuYm91
bmQgc2FtcGxlcnMgYSBkZWZhdWx0IHZhbHVlIG9mIDAgYmVjYXVzZSB0aGF0IHJlZmVyZW5jZXMg
dGhlIGVsZW1lbnQgdGV4dHVyZSwKLSAgICAgICAgICAgICAgICAvLyB3aGljaCBzaG91bGQgYmUg
aW5hY2Nlc3NpYmxlIHRvIHRoZSBhdXRob3IncyBzaGFkZXIgY29kZS4KLSAgICAgICAgICAgICAg
ICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTYyMzAKLSAgICAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIFN5
bWJvbE5hbWVUb1R5cGVNYXAqIHVuaWZvcm1OYW1lVG9UeXBlTWFwID0gYnVpbHRJblVuaWZvcm1O
YW1lVG9UeXBlTWFwKCk7Ci0gICAgICAgICAgICBTeW1ib2xOYW1lVG9UeXBlTWFwOjppdGVyYXRv
ciBidWlsdEluVW5pZm9ybSA9IHVuaWZvcm1OYW1lVG9UeXBlTWFwLT5maW5kKHN5bWJvbC5uYW1l
KTsKLSAgICAgICAgICAgIGlmIChidWlsdEluVW5pZm9ybSAhPSB1bmlmb3JtTmFtZVRvVHlwZU1h
cC0+ZW5kKCkgJiYgKHN5bWJvbC5pc0FycmF5IHx8IHN5bWJvbC5kYXRhVHlwZSAhPSBidWlsdElu
VW5pZm9ybS0+dmFsdWUpKSB7Ci0gICAgICAgICAgICAgICAgLy8gVGhlIGF1dGhvciBkZWZpbmVk
IG9uZSBvZiB0aGUgYnVpbHQtaW4gdW5pZm9ybXMgd2l0aCB0aGUgd3JvbmcgdHlwZS4KLSAgICAg
ICAgICAgICAgICAvLyBGSVhNRTogUmVwb3J0IHRoZSB2YWxpZGF0aW9uIGVycm9yLgotICAgICAg
ICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDQx
NgotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgICAgIGNhc2UgU0hBREVSX1NZTUJPTF9UWVBFX1ZB
UllJTkc6Ci0gICAgICAgICAgICAvLyBObyBzcGVjaWFsIHZhbGlkYXRpb24gZm9yIHZhcnlpbmcg
dHlwZXMuCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAg
ICB9Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotU3RyaW5nIEN1c3RvbUZpbHRlclZhbGlkYXRl
ZFByb2dyYW06OmRlZmF1bHRWZXJ0ZXhTaGFkZXJTdHJpbmcoKQotewotICAgIERFRklORV9TVEFU
SUNfTE9DQUwoU3RyaW5nLCB2ZXJ0ZXhTaGFkZXJTdHJpbmcsIChBU0NJSUxpdGVyYWwoU0hBREVS
KAotICAgICAgICBhdHRyaWJ1dGUgbWVkaXVtcCB2ZWM0IGFfcG9zaXRpb247Ci0gICAgICAgIHVu
aWZvcm0gbWVkaXVtcCBtYXQ0IHVfcHJvamVjdGlvbk1hdHJpeDsKLQotICAgICAgICB2b2lkIG1h
aW4oKQotICAgICAgICB7Ci0gICAgICAgICAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1h
dHJpeCAqIGFfcG9zaXRpb247Ci0gICAgICAgIH0KLSAgICApKSkpOwotICAgIHJldHVybiB2ZXJ0
ZXhTaGFkZXJTdHJpbmc7Ci19Ci0KLVN0cmluZyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFt
OjpkZWZhdWx0RnJhZ21lbnRTaGFkZXJTdHJpbmcoKQotewotICAgIERFRklORV9TVEFUSUNfTE9D
QUwoU3RyaW5nLCBmcmFnbWVudFNoYWRlclN0cmluZywgKEFTQ0lJTGl0ZXJhbChTSEFERVIoCi0g
ICAgICAgIHZvaWQgbWFpbigpCi0gICAgICAgIHsKLSAgICAgICAgfQotICAgICkpKSk7Ci0gICAg
cmV0dXJuIGZyYWdtZW50U2hhZGVyU3RyaW5nOwotfQotCi1DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtOjpDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtKEN1c3RvbUZpbHRlckdsb2JhbENv
bnRleHQqIGdsb2JhbENvbnRleHQsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9n
cmFtSW5mbykKLSAgICA6IG1fcHJvZ3JhbUluZm8ocHJvZ3JhbUluZm8pCi0gICAgLCBtX2lzSW5p
dGlhbGl6ZWQoZmFsc2UpCi17Ci0gICAgcGxhdGZvcm1Jbml0KCk7Ci0KLSAgICBTdHJpbmcgb3Jp
Z2luYWxWZXJ0ZXhTaGFkZXIgPSBwcm9ncmFtSW5mby52ZXJ0ZXhTaGFkZXJTdHJpbmcoKTsKLSAg
ICBpZiAob3JpZ2luYWxWZXJ0ZXhTaGFkZXIuaXNOdWxsKCkpCi0gICAgICAgIG9yaWdpbmFsVmVy
dGV4U2hhZGVyID0gZGVmYXVsdFZlcnRleFNoYWRlclN0cmluZygpOwotCi0gICAgU3RyaW5nIG9y
aWdpbmFsRnJhZ21lbnRTaGFkZXIgPSBwcm9ncmFtSW5mby5mcmFnbWVudFNoYWRlclN0cmluZygp
OwotICAgIGlmIChvcmlnaW5hbEZyYWdtZW50U2hhZGVyLmlzTnVsbCgpKQotICAgICAgICBvcmln
aW5hbEZyYWdtZW50U2hhZGVyID0gZGVmYXVsdEZyYWdtZW50U2hhZGVyU3RyaW5nKCk7Ci0KLSAg
ICAvLyBTaGFkZXJzIHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlvbiB1c2UgYSBk
aWZmZXJlbnQgdmFsaWRhdG9yIHRoYW4gcmVndWxhciBXZWJHTCBzaGFkZXJzLiBTZWUgQ3VzdG9t
RmlsdGVyR2xvYmFsQ29udGV4dC5oIGZvciBtb3JlIGRldGFpbHMuCi0gICAgYm9vbCBibGVuZHNF
bGVtZW50VGV4dHVyZSA9IChwcm9ncmFtSW5mby5wcm9ncmFtVHlwZSgpID09IFBST0dSQU1fVFlQ
RV9CTEVORFNfRUxFTUVOVF9URVhUVVJFKTsKLSAgICBBTkdMRVdlYktpdEJyaWRnZSogdmFsaWRh
dG9yID0gYmxlbmRzRWxlbWVudFRleHR1cmUgPyBnbG9iYWxDb250ZXh0LT5taXhTaGFkZXJWYWxp
ZGF0b3IoKSA6IGdsb2JhbENvbnRleHQtPndlYmdsU2hhZGVyVmFsaWRhdG9yKCk7Ci0gICAgU3Ry
aW5nIHZlcnRleFNoYWRlckxvZywgZnJhZ21lbnRTaGFkZXJMb2c7Ci0gICAgVmVjdG9yPEFOR0xF
U2hhZGVyU3ltYm9sPiBzeW1ib2xzOwotICAgIGJvb2wgdmVydGV4U2hhZGVyVmFsaWQgPSB2YWxp
ZGF0b3ItPmNvbXBpbGVTaGFkZXJTb3VyY2Uob3JpZ2luYWxWZXJ0ZXhTaGFkZXIudXRmOCgpLmRh
dGEoKSwgU0hBREVSX1RZUEVfVkVSVEVYLCBtX3ZhbGlkYXRlZFZlcnRleFNoYWRlciwgdmVydGV4
U2hhZGVyTG9nLCBzeW1ib2xzKTsKLSAgICBib29sIGZyYWdtZW50U2hhZGVyVmFsaWQgPSB2YWxp
ZGF0b3ItPmNvbXBpbGVTaGFkZXJTb3VyY2Uob3JpZ2luYWxGcmFnbWVudFNoYWRlci51dGY4KCku
ZGF0YSgpLCBTSEFERVJfVFlQRV9GUkFHTUVOVCwgbV92YWxpZGF0ZWRGcmFnbWVudFNoYWRlciwg
ZnJhZ21lbnRTaGFkZXJMb2csIHN5bWJvbHMpOwotICAgIGlmICghdmVydGV4U2hhZGVyVmFsaWQg
fHwgIWZyYWdtZW50U2hhZGVyVmFsaWQpIHsKLSAgICAgICAgLy8gRklYTUU6IFJlcG9ydCB0aGUg
dmFsaWRhdGlvbiBlcnJvcnMuCi0gICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD03NDQxNgotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgaWYgKCF2
YWxpZGF0ZVN5bWJvbHMoc3ltYm9scywgbV9wcm9ncmFtSW5mby5tZXNoVHlwZSgpKSkgewotICAg
ICAgICAvLyBGSVhNRTogUmVwb3J0IHZhbGlkYXRpb24gZXJyb3JzLgotICAgICAgICAvLyBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQ0MTYKLSAgICAgICAgcmV0dXJu
OwotICAgIH0KLQotICAgIC8vIFdlIG5lZWQgdG8gYWRkIHRleHR1cmUgYWNjZXNzLCBibGVuZGlu
ZywgYW5kIGNvbXBvc2l0aW5nIGNvZGUgdG8gc2hhZGVycyB0aGF0IGFyZSByZWZlcmVuY2VkIGZy
b20gdGhlIENTUyBtaXggZnVuY3Rpb24uCi0gICAgaWYgKGJsZW5kc0VsZW1lbnRUZXh0dXJlKSB7
Ci0gICAgICAgIHJld3JpdGVNaXhWZXJ0ZXhTaGFkZXIoc3ltYm9scyk7Ci0gICAgICAgIHJld3Jp
dGVNaXhGcmFnbWVudFNoYWRlcigpOwotICAgIH0KLQotICAgIG1faXNJbml0aWFsaXplZCA9IHRy
dWU7Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiBDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpjb21waWxlZFByb2dyYW0oKQotewotICAgIHJldHVybiBt
X2NvbXBpbGVkUHJvZ3JhbTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFt
OjpzZXRDb21waWxlZFByb2dyYW0oUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dy
YW0+IGNvbXBpbGVkUHJvZ3JhbSkKLXsKLSAgICBtX2NvbXBpbGVkUHJvZ3JhbSA9IGNvbXBpbGVk
UHJvZ3JhbTsKLX0KLQotYm9vbCBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpuZWVkc0lu
cHV0VGV4dHVyZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fcHJvZ3JhbUluZm8ucHJvZ3JhbVR5
cGUoKSA9PSBQUk9HUkFNX1RZUEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRQotICAgICAgICAmJiBt
X3Byb2dyYW1JbmZvLm1peFNldHRpbmdzKCkuY29tcG9zaXRlT3BlcmF0b3IgIT0gQ29tcG9zaXRl
Q2xlYXIKLSAgICAgICAgJiYgbV9wcm9ncmFtSW5mby5taXhTZXR0aW5ncygpLmNvbXBvc2l0ZU9w
ZXJhdG9yICE9IENvbXBvc2l0ZUNvcHk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyVmFsaWRhdGVk
UHJvZ3JhbTo6cmV3cml0ZU1peFZlcnRleFNoYWRlcihjb25zdCBWZWN0b3I8QU5HTEVTaGFkZXJT
eW1ib2w+JiBzeW1ib2xzKQotewotICAgIEFTU0VSVChtX3Byb2dyYW1JbmZvLnByb2dyYW1UeXBl
KCkgPT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUpOwotCi0gICAgLy8gSWYg
dGhlIGF1dGhvciBkZWZpbmVkIGFfdGV4Q29vcmQsIHdlIGNhbiB1c2UgaXQgdG8gc2h1dHRsZSB0
aGUgdGV4dHVyZSBjb29yZGluYXRlIHRvIHRoZSBmcmFnbWVudCBzaGFkZXIuCi0gICAgLy8gTm90
ZSB0aGF0IHZlcnRleCBhdHRyaWJ1dGVzIGFyZSByZWFkLW9ubHkgaW4gR0xTTCwgc28gdGhlIGF1
dGhvciBjb3VsZCBub3QgaGF2ZSBjaGFuZ2VkIGFfdGV4Q29vcmQncyB2YWx1ZS4KLSAgICAvLyBB
bHNvLCBub3RlIHRoYXQgd2Ugd291bGQgaGF2ZSBhbHJlYWR5IHJlamVjdGVkIHRoZSBzaGFkZXIg
aWYgdGhlIGF1dGhvciBkZWZpbmVkIGFfdGV4Q29vcmQgd2l0aCB0aGUgd3JvbmcgdHlwZS4KLSAg
ICBib29sIHRleENvb3JkQXR0cmlidXRlRGVmaW5lZCA9IGZhbHNlOwotICAgIGZvciAoc2l6ZV90
IGkgPSAwOyBpIDwgc3ltYm9scy5zaXplKCk7ICsraSkgewotICAgICAgICBpZiAoc3ltYm9sc1tp
XS5uYW1lID09ICJhX3RleENvb3JkIikKLSAgICAgICAgICAgIHRleENvb3JkQXR0cmlidXRlRGVm
aW5lZCA9IHRydWU7Ci0gICAgfQotCi0gICAgaWYgKCF0ZXhDb29yZEF0dHJpYnV0ZURlZmluZWQp
Ci0gICAgICAgIG1fdmFsaWRhdGVkVmVydGV4U2hhZGVyLmFwcGVuZCgiYXR0cmlidXRlIG1lZGl1
bXAgdmVjMiBhX3RleENvb3JkOyIpOwotCi0gICAgLy8gRHVyaW5nIHZhbGlkYXRpb24sIEFOR0xF
IHJlbmFtZWQgdGhlIGF1dGhvcidzICJtYWluIiBmdW5jdGlvbiB0byAiY3NzX21haW4iLgotICAg
IC8vIFdlIHdyaXRlIG91ciBvd24gIm1haW4iIGZ1bmN0aW9uIGFuZCBjYWxsICJjc3NfbWFpbiIg
ZnJvbSBpdC4KLSAgICAvLyBUaGlzIG1ha2VzIHJld3JpdGluZyBlYXN5IGFuZCBlbnN1cmVzIHRo
YXQgb3VyIGNvZGUgcnVucyBhZnRlciBhbGwgYXV0aG9yIGNvZGUuCi0gICAgbV92YWxpZGF0ZWRW
ZXJ0ZXhTaGFkZXIuYXBwZW5kKFNIQURFUigKLSAgICAgICAgdmFyeWluZyBtZWRpdW1wIHZlYzIg
Y3NzX3ZfdGV4Q29vcmQ7Ci0KLSAgICAgICAgdm9pZCBtYWluKCkKLSAgICAgICAgewotICAgICAg
ICAgICAgY3NzX21haW4oKTsKLSAgICAgICAgICAgIGNzc192X3RleENvb3JkID0gYV90ZXhDb29y
ZDsKLSAgICAgICAgfQotICAgICkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclZhbGlkYXRlZFBy
b2dyYW06OnJld3JpdGVNaXhGcmFnbWVudFNoYWRlcigpCi17Ci0gICAgQVNTRVJUKG1fcHJvZ3Jh
bUluZm8ucHJvZ3JhbVR5cGUoKSA9PSBQUk9HUkFNX1RZUEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVS
RSk7Ci0KLSAgICBTdHJpbmdCdWlsZGVyIGJ1aWxkZXI7Ci0gICAgLy8gQU5HTEUgY29uc2lkZXJl
ZCB0aGVzZSBzeW1ib2xzIGFzIGJ1aWx0LWlucyBkdXJpbmcgdmFsaWRhdGlvbiB1bmRlciB0aGUg
U0hfQ1NTX1NIQURFUlNfU1BFQyBmbGFnLgotICAgIC8vIE5vdywgd2UgaGF2ZSB0byBkZWZpbmUg
dGhlc2Ugc3ltYm9scyBpbiBvcmRlciB0byBtYWtlIHRoaXMgc2hhZGVyIHZhbGlkIEdMU0wuCi0g
ICAgLy8gV2UgZGVmaW5lIHRoZXNlIHN5bWJvbHMgYmVmb3JlIHRoZSBhdXRob3IncyBzaGFkZXIg
Y29kZSwgd2hpY2ggbWFrZXMgdGhlbSBhY2Nlc3NpYmxlIHRvIGF1dGhvciBjb2RlLgotICAgIGJ1
aWxkZXIuYXBwZW5kKFNIQURFUigKLSAgICAgICAgbWVkaXVtcCB2ZWM0IGNzc19NaXhDb2xvciA9
IHZlYzQoMC4wKTsKLSAgICAgICAgbWVkaXVtcCBtYXQ0IGNzc19Db2xvck1hdHJpeCA9IG1hdDQo
MS4wKTsKLSAgICApKTsKLSAgICBidWlsZGVyLmFwcGVuZChtX3ZhbGlkYXRlZEZyYWdtZW50U2hh
ZGVyKTsKLSAgICBidWlsZGVyLmFwcGVuZChibGVuZEZ1bmN0aW9uU3RyaW5nKG1fcHJvZ3JhbUlu
Zm8ubWl4U2V0dGluZ3MoKS5ibGVuZE1vZGUpKTsKLSAgICBidWlsZGVyLmFwcGVuZChjb21wb3Np
dGVGdW5jdGlvblN0cmluZyhtX3Byb2dyYW1JbmZvLm1peFNldHRpbmdzKCkuY29tcG9zaXRlT3Bl
cmF0b3IpKTsKLSAgICAvLyBXZSBkZWZpbmUgc3ltYm9scyBsaWtlICJjc3NfdV90ZXh0dXJlIiBh
ZnRlciB0aGUgYXV0aG9yJ3Mgc2hhZGVyIGNvZGUsIHdoaWNoIG1ha2VzIHRoZW0gaW5hY2Nlc3Np
YmxlIHRvIGF1dGhvciBjb2RlLgotICAgIC8vIEluIHBhcnRpY3VsYXIsICJjc3NfdV90ZXh0dXJl
IiByZXByZXNlbnRzIHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLCBzbyBpdCdzIGltcG9ydGFudCB0
byBrZWVwIGl0IGluYWNjZXNzaWJsZSB0bwotICAgIC8vIGF1dGhvciBjb2RlIGZvciBzZWN1cml0
eSByZWFzb25zLgotICAgIGJ1aWxkZXIuYXBwZW5kKFNIQURFUigKLSAgICAgICAgdW5pZm9ybSBz
YW1wbGVyMkQgY3NzX3VfdGV4dHVyZTsKLSAgICAgICAgdmFyeWluZyBtZWRpdW1wIHZlYzIgY3Nz
X3ZfdGV4Q29vcmQ7Ci0KLSAgICAgICAgdm9pZCBtYWluKCkKLSAgICAgICAgewotICAgICAgICAg
ICAgY3NzX21haW4oKTsKLSAgICAgICAgICAgIG1lZGl1bXAgdmVjNCBvcmlnaW5hbENvbG9yID0g
dGV4dHVyZTJEKGNzc191X3RleHR1cmUsIGNzc192X3RleENvb3JkKTsKLSAgICAgICAgICAgIG1l
ZGl1bXAgdmVjNCBtdWx0aXBsaWVkQ29sb3IgPSBjbGFtcChjc3NfQ29sb3JNYXRyaXggKiBvcmln
aW5hbENvbG9yLCAwLjAsIDEuMCk7Ci0gICAgICAgICAgICBtZWRpdW1wIHZlYzQgY2xhbXBlZE1p
eENvbG9yID0gY2xhbXAoY3NzX01peENvbG9yLCAwLjAsIDEuMCk7Ci0gICAgICAgICAgICBtZWRp
dW1wIHZlYzMgYmxlbmRlZENvbG9yID0gY3NzX0JsZW5kQ29sb3IobXVsdGlwbGllZENvbG9yLnJn
YiwgY2xhbXBlZE1peENvbG9yLnJnYik7Ci0gICAgICAgICAgICBtZWRpdW1wIHZlYzMgd2VpZ2h0
ZWRDb2xvciA9ICgxLjAgLSBtdWx0aXBsaWVkQ29sb3IuYSkgKiBjbGFtcGVkTWl4Q29sb3Iucmdi
ICsgbXVsdGlwbGllZENvbG9yLmEgKiBibGVuZGVkQ29sb3I7Ci0gICAgICAgICAgICBnbF9GcmFn
Q29sb3IgPSBjc3NfQ29tcG9zaXRlKG11bHRpcGxpZWRDb2xvci5yZ2IsIG11bHRpcGxpZWRDb2xv
ci5hLCB3ZWlnaHRlZENvbG9yLnJnYiwgY2xhbXBlZE1peENvbG9yLmEpOwotICAgICAgICB9Ci0g
ICAgKSk7Ci0gICAgbV92YWxpZGF0ZWRGcmFnbWVudFNoYWRlciA9IGJ1aWxkZXIudG9TdHJpbmco
KTsKLX0KLQotU3RyaW5nIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW06OmJsZW5kRnVuY3Rp
b25TdHJpbmcoQmxlbmRNb2RlIGJsZW5kTW9kZSkKLXsKLSAgICAvLyBJbXBsZW1lbnRlZCB1c2lu
ZyB0aGUgc2FtZSBzeW1ib2wgbmFtZXMgYXMgdGhlIENvbXBvc2l0aW5nIGFuZCBCbGVuZGluZyBz
cGVjOgotICAgIC8vIGh0dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxlL3RpcC9jb21w
b3NpdGluZy9pbmRleC5odG1sI2JsZW5kaW5nbm9ybWFsCi0gICAgLy8gQ3M6IGlzIHRoZSBzb3Vy
Y2UgY29sb3IgaW4gY3NzX0JsZW5kQ29sb3IoKSBhbmQgdGhlIHNvdXJjZSBjb2xvciBjb21wb25l
bnQgaW4gY3NzX0JsZW5kQ29tcG9uZW50KCkKLSAgICAvLyBDYjogaXMgdGhlIGJhY2tkcm9wIGNv
bG9yIGluIGNzc19CbGVuZENvbG9yKCkgYW5kIHRoZSBiYWNrZHJvcCBjb2xvciBjb21wb25lbnQg
aW4gY3NzX0JsZW5kQ29tcG9uZW50KCkKLSAgICBjb25zdCBjaGFyKiBibGVuZENvbG9yRXhwcmVz
c2lvbiA9ICJ2ZWMzKGNzc19CbGVuZENvbXBvbmVudChDYi5yLCBDcy5yKSwgY3NzX0JsZW5kQ29t
cG9uZW50KENiLmcsIENzLmcpLCBjc3NfQmxlbmRDb21wb25lbnQoQ2IuYiwgQ3MuYikpIjsKLSAg
ICBjb25zdCBjaGFyKiBibGVuZENvbXBvbmVudEV4cHJlc3Npb24gPSAiQ28gPSAwLjA7IjsKLSAg
ICBib29sIG5lZWRzTHVtaW5vc2l0eUhlbHBlckZ1bmN0aW9ucyA9IGZhbHNlOwotICAgIGJvb2wg
bmVlZHNTYXR1cmF0aW9uSGVscGVyRnVuY3Rpb25zID0gZmFsc2U7Ci0gICAgU3RyaW5nIGJsZW5k
RnVuY3Rpb25TdHJpbmc7Ci0gICAgc3dpdGNoIChibGVuZE1vZGUpIHsKLSAgICBjYXNlIEJsZW5k
TW9kZU5vcm1hbDoKLSAgICAgICAgYmxlbmRDb2xvckV4cHJlc3Npb24gPSAiQ3MiOwotICAgICAg
ICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZU11bHRpcGx5OgotICAgICAgICBibGVuZENvbG9y
RXhwcmVzc2lvbiA9ICJDcyAqIENiIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1v
ZGVTY3JlZW46Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gIkNiICsgQ3MgLSAoQ2Ig
KiBDcykiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZURhcmtlbjoKLSAgICAg
ICAgYmxlbmRDb2xvckV4cHJlc3Npb24gPSAibWluKENiLCBDcykiOwotICAgICAgICBicmVhazsK
LSAgICBjYXNlIEJsZW5kTW9kZUxpZ2h0ZW46Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9u
ID0gIm1heChDYiwgQ3MpIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVEaWZm
ZXJlbmNlOgotICAgICAgICBibGVuZENvbG9yRXhwcmVzc2lvbiA9ICJhYnMoQ2IgLSBDcykiOwot
ICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZUV4Y2x1c2lvbjoKLSAgICAgICAgYmxl
bmRDb2xvckV4cHJlc3Npb24gPSAiQ2IgKyBDcyAtIDIuMCAqIENiICogQ3MiOwotICAgICAgICBi
cmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZU92ZXJsYXk6Ci0gICAgICAgIC8qCi0gICAgICAgICAg
ICBDbyA9IEhhcmRMaWdodChDcywgQ2IpCi0gICAgICAgICAgICAgICA9IGlmKENiIDw9IDAuNSkK
LSAgICAgICAgICAgICAgICAgICAgIE11bHRpcGx5KENzLCAyIHggQ2IpCi0gICAgICAgICAgICAg
ICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIFNjcmVlbihDcywgMiB4IENiIC0gMSkKLSAg
ICAgICAgICAgICAgID0gaWYoQ2IgPD0gMC41KQotICAgICAgICAgICAgICAgICAgICAgQ3MgeCAo
MiB4IENiKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBDcyAr
ICgyIHggQ2IgLSAxKSAtIChDcyB4ICgyIHggQ2IgLSAxKSkKLSAgICAgICAgKi8KLSAgICAgICAg
YmxlbmRDb21wb25lbnRFeHByZXNzaW9uID0gU0hBREVSKAotICAgICAgICAgICAgaWYgKENiIDw9
IDAuNSkKLSAgICAgICAgICAgICAgICBDbyA9IENzICogKDIuMCAqIENiKTsKLSAgICAgICAgICAg
IGVsc2UKLSAgICAgICAgICAgICAgICBDbyA9IENzICsgKDIuMCAqIENiIC0gMS4wKSAtIChDcyAq
ICgyLjAgKiBDYiAtIDEuMCkpOwotICAgICAgICApOwotICAgICAgICBicmVhazsKLSAgICBjYXNl
IEJsZW5kTW9kZUNvbG9yRG9kZ2U6Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBDbyA9IGlmKENz
IDwgMSkKLSAgICAgICAgICAgICAgICAgICAgIG1pbigxLCBDYiAvICgxIC0gQ3MpKQotICAgICAg
ICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAxCi0gICAgICAgICovCi0gICAg
ICAgIGJsZW5kQ29tcG9uZW50RXhwcmVzc2lvbiA9IFNIQURFUigKLSAgICAgICAgICAgIGlmIChD
cyA8IDEuMCkKLSAgICAgICAgICAgICAgICBDbyA9IG1pbigxLjAsIENiIC8gKDEuMCAtIENzKSk7
Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgQ28gPSAxLjA7Ci0gICAgICAgICk7
Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRNb2RlQ29sb3JCdXJuOgotICAgICAgICAv
KgotICAgICAgICAgICAgQ28gPSBpZihDcyA+IDApCi0gICAgICAgICAgICAgICAgICAgICAxIC0g
bWluKDEsICgxIC0gQ2IpIC8gQ3MpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAg
ICAgICAgICAgIDAKLSAgICAgICAgKi8KLSAgICAgICAgYmxlbmRDb21wb25lbnRFeHByZXNzaW9u
ID0gU0hBREVSKAotICAgICAgICAgICAgaWYgKENzID4gMC4wKQotICAgICAgICAgICAgICAgIENv
ID0gMS4wIC0gbWluKDEuMCwgKDEuMCAtIENiKSAvIENzKTsKLSAgICAgICAgICAgIGVsc2UKLSAg
ICAgICAgICAgICAgICBDbyA9IDAuMDsKLSAgICAgICAgKTsKLSAgICAgICAgYnJlYWs7Ci0gICAg
Y2FzZSBCbGVuZE1vZGVIYXJkTGlnaHQ6Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBDbyA9IGlm
KENzIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIE11bHRpcGx5KENiLCAyIHggQ3MpCi0g
ICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIFNjcmVlbihDYiwgMiB4
IENzIC0xKQotICAgICAgICAgICAgICAgPSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAg
ICAgICBDYiB4ICgyIHggQ3MpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAg
ICAgICAgIENiICsgKDIgeCBDcyAtIDEpIC0gKENiIHggKDIgeCBDcyAtIDEpKQotICAgICAgICAq
LwotICAgICAgICBibGVuZENvbXBvbmVudEV4cHJlc3Npb24gPSBTSEFERVIoCi0gICAgICAgICAg
ICBpZiAoQ3MgPD0gMC41KQotICAgICAgICAgICAgICAgIENvID0gQ2IgKiAoMi4wICogQ3MpOwot
ICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIENvID0gQ2IgKyAoMi4wICogQ3MgLSAx
LjApIC0gKENiICogKDIuMCAqIENzIC0gMS4wKSk7Ci0gICAgICAgICk7Ci0gICAgICAgIGJyZWFr
OwotICAgIGNhc2UgQmxlbmRNb2RlU29mdExpZ2h0OgotICAgICAgICAvKgotICAgICAgICAgICAg
Q28gPSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBDYiAtICgxIC0gMiB4IENz
KSB4IENiIHggKDEgLSBDYikKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAg
ICAgICAgQ2IgKyAoMiB4IENzIC0gMSkgeCAoRChDYikgLSBDYikKLQotICAgICAgICAgICAgd2l0
aAotCi0gICAgICAgICAgICBEKENiKSA9IGlmKENiIDw9IDAuMjUpCi0gICAgICAgICAgICAgICAg
ICAgICAgICAoMTYgKiBDYiAtIDEyKSB4IENiICsgNCkgeCBDYgotICAgICAgICAgICAgICAgICAg
ICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBzcXJ0KENiKQotICAgICAgICAqLwotICAg
ICAgICBibGVuZENvbXBvbmVudEV4cHJlc3Npb24gPSBTSEFERVIoCi0gICAgICAgICAgICBtZWRp
dW1wIGZsb2F0IEQ7Ci0gICAgICAgICAgICBpZiAoQ2IgPD0gMC4yNSkKLSAgICAgICAgICAgICAg
ICBEID0gKCgxNi4wICogQ2IgLSAxMi4wKSAqIENiICsgNC4wKSAqIENiOwotICAgICAgICAgICAg
ZWxzZQotICAgICAgICAgICAgICAgIEQgPSBzcXJ0KENiKTsKLQotICAgICAgICAgICAgaWYgKENz
IDw9IDAuNSkKLSAgICAgICAgICAgICAgICBDbyA9IENiIC0gKDEuMCAtIDIuMCAqIENzKSAqIENi
ICogKDEuMCAtIENiKTsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBDbyA9IENi
ICsgKDIuMCAqIENzIC0gMS4wKSAqIChEIC0gQ2IpOwotICAgICAgICApOwotICAgICAgICBicmVh
azsKLSAgICBjYXNlIEJsZW5kTW9kZUNvbG9yOgotICAgICAgICBuZWVkc0x1bWlub3NpdHlIZWxw
ZXJGdW5jdGlvbnMgPSB0cnVlOwotICAgICAgICBibGVuZENvbG9yRXhwcmVzc2lvbiA9ICJjc3Nf
U2V0THVtKENzLCBjc3NfTHVtKENiKSkiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5k
TW9kZUx1bWlub3NpdHk6Ci0gICAgICAgIG5lZWRzTHVtaW5vc2l0eUhlbHBlckZ1bmN0aW9ucyA9
IHRydWU7Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gImNzc19TZXRMdW0oQ2IsIGNz
c19MdW0oQ3MpKSI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRNb2RlSHVlOgotICAg
ICAgICBuZWVkc0x1bWlub3NpdHlIZWxwZXJGdW5jdGlvbnMgPSB0cnVlOwotICAgICAgICBuZWVk
c1NhdHVyYXRpb25IZWxwZXJGdW5jdGlvbnMgPSB0cnVlOwotICAgICAgICBibGVuZENvbG9yRXhw
cmVzc2lvbiA9ICJjc3NfU2V0THVtKGNzc19TZXRTYXQoQ3MsIGNzc19TYXQoQ2IpKSwgY3NzX0x1
bShDYikpIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVTYXR1cmF0aW9uOgot
ICAgICAgICBuZWVkc0x1bWlub3NpdHlIZWxwZXJGdW5jdGlvbnMgPSB0cnVlOwotICAgICAgICBu
ZWVkc1NhdHVyYXRpb25IZWxwZXJGdW5jdGlvbnMgPSB0cnVlOwotICAgICAgICBibGVuZENvbG9y
RXhwcmVzc2lvbiA9ICJjc3NfU2V0THVtKGNzc19TZXRTYXQoQ2IsIGNzc19TYXQoQ3MpKSwgY3Nz
X0x1bShDYikpIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7Ci0gICAgfQotCi0gICAgaWYgKG5lZWRzTHVtaW5vc2l0eUhlbHBlckZ1
bmN0aW9ucykgewotICAgICAgICBibGVuZEZ1bmN0aW9uU3RyaW5nLmFwcGVuZChTSEFERVIoCi0g
ICAgICAgICAgICBtZWRpdW1wIGZsb2F0IGNzc19MdW0obWVkaXVtcCB2ZWMzIEMpCi0gICAgICAg
ICAgICB7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIDAuMyAqIEMuciArIDAuNTkgKiBDLmcgKyAw
LjExICogQy5iOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgbWVkaXVtcCB2ZWMzIGNzc19D
bGlwQ29sb3IobWVkaXVtcCB2ZWMzIEMpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
bWVkaXVtcCBmbG9hdCBMID0gY3NzX0x1bShDKTsKLSAgICAgICAgICAgICAgICBtZWRpdW1wIGZs
b2F0IG4gPSBtaW4obWluKEMuciwgQy5nKSwgQy5iKTsKLSAgICAgICAgICAgICAgICBtZWRpdW1w
IGZsb2F0IHggPSBtYXgobWF4KEMuciwgQy5nKSwgQy5iKTsKLSAgICAgICAgICAgICAgICBpZiAo
biA8IDAuMCkKLSAgICAgICAgICAgICAgICAgICAgQyA9IEwgKyAoKChDIC0gTCkgKiBMKSAvIChM
IC0gbikpOwotICAgICAgICAgICAgICAgIGlmICh4ID4gMS4wKQotICAgICAgICAgICAgICAgICAg
ICBDID0gTCArICgoKEMgLSBMKSAqICgxLjAgLSBMKSAvICh4IC0gTCkpKTsKLSAgICAgICAgICAg
ICAgICByZXR1cm4gQzsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIG1lZGl1bXAgdmVjMyBj
c3NfU2V0THVtKG1lZGl1bXAgdmVjMyBDLCBtZWRpdW1wIGZsb2F0IGwpCi0gICAgICAgICAgICB7
Ci0gICAgICAgICAgICAgICAgQyArPSBsIC0gY3NzX0x1bShDKTsKLSAgICAgICAgICAgICAgICBy
ZXR1cm4gY3NzX0NsaXBDb2xvcihDKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgKSk7Ci0gICAg
fQotCi0gICAgaWYgKG5lZWRzU2F0dXJhdGlvbkhlbHBlckZ1bmN0aW9ucykgewotICAgICAgICBi
bGVuZEZ1bmN0aW9uU3RyaW5nLmFwcGVuZChTSEFERVIoCi0gICAgICAgICAgICBtZWRpdW1wIGZs
b2F0IGNzc19TYXQobWVkaXVtcCB2ZWMzIEMpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAg
ICAgbWVkaXVtcCBmbG9hdCBjTWluID0gbWluKG1pbihDLnIsIEMuZyksIEMuYik7Ci0gICAgICAg
ICAgICAgICAgbWVkaXVtcCBmbG9hdCBjTWF4ID0gbWF4KG1heChDLnIsIEMuZyksIEMuYik7Ci0g
ICAgICAgICAgICAgICAgcmV0dXJuIGNNYXggLSBjTWluOwotICAgICAgICAgICAgfQotICAgICAg
ICAgICAgdm9pZCBjc3NfU2V0U2F0SGVscGVyKGlub3V0IG1lZGl1bXAgZmxvYXQgY01pbiwgaW5v
dXQgbWVkaXVtcCBmbG9hdCBjTWlkLCBpbm91dCBtZWRpdW1wIGZsb2F0IGNNYXgsIG1lZGl1bXAg
ZmxvYXQgcykKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBpZiAoY01heCA+IGNNaW4p
IHsKLSAgICAgICAgICAgICAgICAgICAgY01pZCA9ICgoKGNNaWQgLSBjTWluKSAqIHMpIC8gKGNN
YXggLSBjTWluKSk7Ci0gICAgICAgICAgICAgICAgICAgIGNNYXggPSBzOwotICAgICAgICAgICAg
ICAgIH0gZWxzZQotICAgICAgICAgICAgICAgICAgICBjTWlkID0gY01heCA9IDAuMDsKLSAgICAg
ICAgICAgICAgICBjTWluID0gMC4wOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgbWVkaXVt
cCB2ZWMzIGNzc19TZXRTYXQobWVkaXVtcCB2ZWMzIEMsIG1lZGl1bXAgZmxvYXQgcykKLSAgICAg
ICAgICAgIHsKLSAgICAgICAgICAgICAgICBpZiAoQy5yIDw9IEMuZykgewotICAgICAgICAgICAg
ICAgICAgICBpZiAoQy5nIDw9IEMuYikKLSAgICAgICAgICAgICAgICAgICAgICAgIGNzc19TZXRT
YXRIZWxwZXIoQy5yLCBDLmcsIEMuYiwgcyk7Ci0gICAgICAgICAgICAgICAgICAgIGVsc2Ugewot
ICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEMuciA8PSBDLmIpCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY3NzX1NldFNhdEhlbHBlcihDLnIsIEMuYiwgQy5nLCBzKTsKLSAgICAgICAg
ICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjc3NfU2V0
U2F0SGVscGVyKEMuYiwgQy5yLCBDLmcsIHMpOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKEMuciA8PSBDLmIp
Ci0gICAgICAgICAgICAgICAgICAgICAgICBjc3NfU2V0U2F0SGVscGVyKEMuZywgQy5yLCBDLmIs
IHMpOwotICAgICAgICAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAg
IGlmIChDLmcgPD0gQy5iKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzc19TZXRTYXRI
ZWxwZXIoQy5nLCBDLmIsIEMuciwgcyk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBlbHNlCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY3NzX1NldFNhdEhlbHBlcihDLmIsIEMuZywgQy5y
LCBzKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgICAgICByZXR1cm4gQzsKLSAgICAgICAgICAgIH0KLSAgICAgICAgKSk7Ci0gICAgfQotCi0g
ICAgYmxlbmRGdW5jdGlvblN0cmluZy5hcHBlbmQoU3RyaW5nOjpmb3JtYXQoU0hBREVSKAotICAg
ICAgICBtZWRpdW1wIGZsb2F0IGNzc19CbGVuZENvbXBvbmVudChtZWRpdW1wIGZsb2F0IENiLCBt
ZWRpdW1wIGZsb2F0IENzKQotICAgICAgICB7Ci0gICAgICAgICAgICBtZWRpdW1wIGZsb2F0IENv
OwotICAgICAgICAgICAgJXMKLSAgICAgICAgICAgIHJldHVybiBDbzsKLSAgICAgICAgfQotICAg
ICAgICBtZWRpdW1wIHZlYzMgY3NzX0JsZW5kQ29sb3IobWVkaXVtcCB2ZWMzIENiLCBtZWRpdW1w
IHZlYzMgQ3MpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHJldHVybiAlczsKLSAgICAgICAgfQot
ICAgICksIGJsZW5kQ29tcG9uZW50RXhwcmVzc2lvbiwgYmxlbmRDb2xvckV4cHJlc3Npb24pKTsK
LQotICAgIHJldHVybiBibGVuZEZ1bmN0aW9uU3RyaW5nOwotfQotCi1TdHJpbmcgQ3VzdG9tRmls
dGVyVmFsaWRhdGVkUHJvZ3JhbTo6Y29tcG9zaXRlRnVuY3Rpb25TdHJpbmcoQ29tcG9zaXRlT3Bl
cmF0b3IgY29tcG9zaXRlT3BlcmF0b3IpCi17Ci0gICAgLy8gVXNlIHRoZSBzYW1lIHN5bWJvbCBu
YW1lcyBhcyB0aGUgQ29tcG9zaXRpbmcgYW5kIEJsZW5kaW5nIHNwZWM6Ci0gICAgLy8gaHR0cHM6
Ly9kdmNzLnczLm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwj
YmxlbmRpbmdub3JtYWwKLSAgICAvLyBDczogaXMgdGhlIHNvdXJjZSBjb2xvcgotICAgIC8vIENi
OiBpcyB0aGUgYmFja2Ryb3AgY29sb3IKLSAgICAvLyBhczogaXMgdGhlIHNvdXJjZSBhbHBoYQot
ICAgIC8vIGFiOiBpcyB0aGUgYmFja2Ryb3AgYWxwaGEKLSAgICAvLyBGYTogaXMgZGVmaW5lZCBi
eSB0aGUgUG9ydGVyIER1ZmYgb3BlcmF0b3IgaW4gdXNlCi0gICAgLy8gRmI6IGlzIGRlZmluZWQg
YnkgdGhlIFBvcnRlciBEdWZmIG9wZXJhdG9yIGluIHVzZQotICAgIGNvbnN0IGNoYXIqIEZhID0g
MDsKLSAgICBjb25zdCBjaGFyKiBGYiA9IDA7Ci0gICAgc3dpdGNoIChjb21wb3NpdGVPcGVyYXRv
cikgewotICAgIGNhc2UgQ29tcG9zaXRlU291cmNlQXRvcDoKLSAgICAgICAgRmEgPSAiYWIiOwot
ICAgICAgICBGYiA9ICIxLjAgLSBhcyI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9z
aXRlQ2xlYXI6Ci0gICAgICAgIEZhID0gIjAuMCI7Ci0gICAgICAgIEZiID0gIjAuMCI7Ci0gICAg
ICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9zaXRlQ29weToKLSAgICAgICAgRmEgPSAiMS4wIjsK
LSAgICAgICAgRmIgPSAiMC4wIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVT
b3VyY2VPdmVyOgotICAgICAgICBGYSA9ICIxLjAiOwotICAgICAgICBGYiA9ICIxLjAgLSBhcyI7
Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9zaXRlU291cmNlSW46Ci0gICAgICAgIEZh
ID0gImFiIjsKLSAgICAgICAgRmIgPSAiMC4wIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBD
b21wb3NpdGVTb3VyY2VPdXQ6Ci0gICAgICAgIEZhID0gIjEuMCAtIGFiIjsKLSAgICAgICAgRmIg
PSAiMC4wIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVEZXN0aW5hdGlvbk92
ZXI6Ci0gICAgICAgIEZhID0gIjEuMCAtIGFiIjsKLSAgICAgICAgRmIgPSAiMS4wIjsKLSAgICAg
ICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVEZXN0aW5hdGlvbkluOgotICAgICAgICBGYSA9
ICIwLjAiOwotICAgICAgICBGYiA9ICJhcyI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29t
cG9zaXRlRGVzdGluYXRpb25PdXQ6Ci0gICAgICAgIEZhID0gIjAuMCI7Ci0gICAgICAgIEZiID0g
IjEuMCAtIGFzIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVEZXN0aW5hdGlv
bkF0b3A6Ci0gICAgICAgIEZhID0gIjEuMCAtIGFiIjsKLSAgICAgICAgRmIgPSAiYXMiOwotICAg
ICAgICBicmVhazsKLSAgICBjYXNlIENvbXBvc2l0ZVhPUjoKLSAgICAgICAgRmEgPSAiMS4wIC0g
YWIiOwotICAgICAgICBGYiA9ICIxLjAgLSBhcyI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2Ug
Q29tcG9zaXRlUGx1c0xpZ2h0ZXI6Ci0gICAgICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgICAg
IHJldHVybiBTdHJpbmcoKTsKLSAgICBkZWZhdWx0OgotICAgICAgICAvLyBUaGUgQ1NTIHBhcnNl
ciBzaG91bGQgbm90IGhhdmUgYWNjZXB0ZWQgYW55IG90aGVyIGNvbXBvc2l0ZSBvcGVyYXRvcnMu
Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICByZXR1cm4gU3RyaW5nKCk7
Ci0gICAgfQotCi0gICAgQVNTRVJUKEZhICYmIEZiKTsKLSAgICAvLyBVc2UgdGhlIGdlbmVyYWwg
Zm9ybXVsYSBmb3IgY29tcG9zaXRpbmcsIGxpZnRlZCBmcm9tIHRoZSBzcGVjOgotICAgIC8vIGh0
dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxlL3RpcC9jb21wb3NpdGluZy9pbmRleC5o
dG1sI2dlbmVyYWxmb3JtdWxhCi0gICAgcmV0dXJuIFN0cmluZzo6Zm9ybWF0KFNIQURFUigKLSAg
ICAgICAgbWVkaXVtcCB2ZWM0IGNzc19Db21wb3NpdGUobWVkaXVtcCB2ZWMzIENiLCBtZWRpdW1w
IGZsb2F0IGFiLCBtZWRpdW1wIHZlYzMgQ3MsIG1lZGl1bXAgZmxvYXQgYXMpCi0gICAgICAgIHsK
LSAgICAgICAgICAgIG1lZGl1bXAgZmxvYXQgRmEgPSAlczsKLSAgICAgICAgICAgIG1lZGl1bXAg
ZmxvYXQgRmIgPSAlczsKLSAgICAgICAgICAgIHJldHVybiB2ZWM0KGFzICogRmEgKiBDcyArIGFi
ICogRmIgKiBDYiwgYXMgKiBGYSArIGFiICogRmIpOyAKLSAgICAgICAgfQotICAgICksIEZhLCBG
Yik7Ci19Ci0gICAgCi1DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjp+Q3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbSgpCi17Ci0gICAgcGxhdGZvcm1EZXN0cm95KCk7Ci19Ci0KLUN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW06OnZhbGlkYXRl
ZFByb2dyYW1JbmZvKCkgY29uc3QKLXsKLSAgICBBU1NFUlQobV9pc0luaXRpYWxpemVkKTsKLSAg
ICByZXR1cm4gQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8obV92YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIs
IG1fdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXIsIG1fcHJvZ3JhbUluZm8ucHJvZ3JhbVR5cGUoKSwg
bV9wcm9ncmFtSW5mby5taXhTZXR0aW5ncygpLCBtX3Byb2dyYW1JbmZvLm1lc2hUeXBlKCkpOwot
fQotCi0jaWYgIVVTRShURVhUVVJFX01BUFBFUikKLXZvaWQgQ3VzdG9tRmlsdGVyVmFsaWRhdGVk
UHJvZ3JhbTo6cGxhdGZvcm1Jbml0KCkKLXsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJWYWxpZGF0
ZWRQcm9ncmFtOjpwbGF0Zm9ybURlc3Ryb3koKQotewotfQotI2VuZGlmCi0KLX0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDY3MDQyZjIuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgKKysrIC9kZXYvbnVs
bApAQCAtMSwxMjMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0
ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xh
aW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lm
bmRlZiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRl
ICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+
Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0j
aW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQot
c3RydWN0IEFOR0xFU2hhZGVyU3ltYm9sOwotY2xhc3MgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9n
cmFtOwotY2xhc3MgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dDsKLQotI2lmIFVTRShURVhUVVJF
X01BUFBFUikKLWNsYXNzIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbTsKLXR5
cGVkZWYgVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtIFBsYXRmb3JtQ29tcGls
ZWRQcm9ncmFtOwotI2VuZGlmCi0KLS8vCi0vLyBBIHVuaXF1ZSBjb21iaW5hdGlvbiBvZiB2ZXJ0
ZXggc2hhZGVyIGFuZCBmcmFnbWVudCBzaGFkZXIgaXMgb25seSB2YWxpZGF0ZWQgYW5kIGNvbXBp
bGVkIG9uY2UuCi0vLyBBbGwgc2hhZGVycyBhcmUgdmFsaWRhdGVkIHRocm91Z2ggQU5HTEUgaW4g
Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbSBiZWZvcmUgYmVpbmcgY29tcGlsZWQgYnkgdGhl
IEdyYXBoaWNzQ29udGV4dDNEIGluIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS4KLS8vIEZv
ciBzaGFkZXJzIHRoYXQgdXNlIHRoZSBDU1MgbWl4IGZ1bmN0aW9uLCBDdXN0b21GaWx0ZXJWYWxp
ZGF0ZWRQcm9ncmFtIGFkZHMgc2hhZGVyIGNvZGUgdG8gcGVyZm9ybSBET00gdGV4dHVyZSBhY2Nl
c3MsIGJsZW5kaW5nLCBhbmQgY29tcG9zaXRpbmcuCi0vLwotY2xhc3MgQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbSA6IHB1YmxpYyBSZWZDb3VudGVkPEN1c3RvbUZpbHRlclZhbGlkYXRlZFBy
b2dyYW0+IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxp
ZGF0ZWRQcm9ncmFtPiBjcmVhdGUoQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCogZ2xvYmFsQ29u
dGV4dCwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvKQotICAgIHsK
LSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFt
KGdsb2JhbENvbnRleHQsIHByb2dyYW1JbmZvKSk7Ci0gICAgfQotCi0gICAgfkN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0oKTsKLQotICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZv
JiBwcm9ncmFtSW5mbygpIGNvbnN0IHsgcmV0dXJuIG1fcHJvZ3JhbUluZm87IH0KLSAgICBDdXN0
b21GaWx0ZXJQcm9ncmFtSW5mbyB2YWxpZGF0ZWRQcm9ncmFtSW5mbygpIGNvbnN0OwotICAgIAot
ICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiBjb21waWxlZFByb2dy
YW0oKTsKLSAgICB2b2lkIHNldENvbXBpbGVkUHJvZ3JhbShQYXNzUmVmUHRyPEN1c3RvbUZpbHRl
ckNvbXBpbGVkUHJvZ3JhbT4pOwotCi0gICAgY29uc3QgU3RyaW5nJiB2YWxpZGF0ZWRWZXJ0ZXhT
aGFkZXIoKSBjb25zdCAKLSAgICB7Ci0gICAgICAgIEFTU0VSVChtX2lzSW5pdGlhbGl6ZWQpOyAK
LSAgICAgICAgcmV0dXJuIG1fdmFsaWRhdGVkVmVydGV4U2hhZGVyOyAKLSAgICB9Ci0KLSAgICBj
b25zdCBTdHJpbmcmIHZhbGlkYXRlZEZyYWdtZW50U2hhZGVyKCkgY29uc3QgCi0gICAgeyAKLSAg
ICAgICAgQVNTRVJUKG1faXNJbml0aWFsaXplZCk7IAotICAgICAgICByZXR1cm4gbV92YWxpZGF0
ZWRGcmFnbWVudFNoYWRlcjsgCi0gICAgfQotCi0jaWYgVVNFKFRFWFRVUkVfTUFQUEVSKQotICAg
IFBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKiBwbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSgpOwotI2Vu
ZGlmCi0KLSAgICBib29sIGlzSW5pdGlhbGl6ZWQoKSBjb25zdCB7IHJldHVybiBtX2lzSW5pdGlh
bGl6ZWQ7IH0KLXByaXZhdGU6Ci0gICAgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbShDdXN0
b21GaWx0ZXJHbG9iYWxDb250ZXh0KiwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mKTsK
LQotICAgIHZvaWQgcGxhdGZvcm1Jbml0KCk7Ci0gICAgdm9pZCBwbGF0Zm9ybURlc3Ryb3koKTsK
LQotICAgIHN0YXRpYyBTdHJpbmcgZGVmYXVsdFZlcnRleFNoYWRlclN0cmluZygpOwotICAgIHN0
YXRpYyBTdHJpbmcgZGVmYXVsdEZyYWdtZW50U2hhZGVyU3RyaW5nKCk7Ci0KLSAgICBzdGF0aWMg
U3RyaW5nIGJsZW5kRnVuY3Rpb25TdHJpbmcoQmxlbmRNb2RlKTsKLSAgICBzdGF0aWMgU3RyaW5n
IGNvbXBvc2l0ZUZ1bmN0aW9uU3RyaW5nKENvbXBvc2l0ZU9wZXJhdG9yKTsKLQotICAgIHZvaWQg
cmV3cml0ZU1peFZlcnRleFNoYWRlcihjb25zdCBWZWN0b3I8QU5HTEVTaGFkZXJTeW1ib2w+JiBz
eW1ib2xzKTsKLSAgICB2b2lkIHJld3JpdGVNaXhGcmFnbWVudFNoYWRlcigpOwotCi0gICAgYm9v
bCBuZWVkc0lucHV0VGV4dHVyZSgpIGNvbnN0OwotCi0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8gbV9wcm9ncmFtSW5mbzsKLQotICAgIFN0cmluZyBtX3ZhbGlkYXRlZFZlcnRleFNoYWRlcjsK
LSAgICBTdHJpbmcgbV92YWxpZGF0ZWRGcmFnbWVudFNoYWRlcjsKLQotICAgIFJlZlB0cjxDdXN0
b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IG1fY29tcGlsZWRQcm9ncmFtOwotI2lmIFVTRShURVhU
VVJFX01BUFBFUikKLSAgICBQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSogbV9wbGF0Zm9ybUNvbXBp
bGVkUHJvZ3JhbTsKLSNlbmRpZgotCi0gICAgYm9vbCBtX2lzSW5pdGlhbGl6ZWQ7Ci19OwotCi19
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmls
dGVyLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZGM1NjExZC4uMDAwMDAwMAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmls
dGVyLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDM4MyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
LSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0g
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICog
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLSNpbmNsdWRlICJGRUN1
c3RvbUZpbHRlci5oIgotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmgi
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0
ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiRXh0ZW5zaW9uczNELmgiCi0jaW5jbHVk
ZSAiR3JhcGhpY3NDb250ZXh0M0QuaCIKLSNpbmNsdWRlICJUZXh0U3RyZWFtLmgiCi0KLSNpbmNs
dWRlIDxydW50aW1lL1VpbnQ4Q2xhbXBlZEFycmF5Lmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsK
LQotRkVDdXN0b21GaWx0ZXI6OkZFQ3VzdG9tRmlsdGVyKEZpbHRlciogZmlsdGVyLCBQYXNzUmVm
UHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjb250ZXh0LCBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZh
bGlkYXRlZFByb2dyYW0+IHZhbGlkYXRlZFByb2dyYW0sIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3QmIHBhcmFtZXRlcnMsCi0gICAgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1l
c2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAgICA6IEZpbHRlckVm
ZmVjdChmaWx0ZXIpCi0gICAgLCBtX2NvbnRleHQoY29udGV4dCkKLSAgICAsIG1fdmFsaWRhdGVk
UHJvZ3JhbSh2YWxpZGF0ZWRQcm9ncmFtKQotICAgICwgbV9pbnB1dFRleHR1cmUoMCkKLSAgICAs
IG1fZnJhbWVCdWZmZXIoMCkKLSAgICAsIG1fZGVwdGhCdWZmZXIoMCkKLSAgICAsIG1fZGVzdFRl
eHR1cmUoMCkKLSAgICAsIG1fdHJpZWRNdWx0aXNhbXBsZUJ1ZmZlcihmYWxzZSkKLSAgICAsIG1f
bXVsdGlzYW1wbGVGcmFtZUJ1ZmZlcigwKQotICAgICwgbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZl
cigwKQotICAgICwgbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKDApCi17Ci0gICAgLy8gV2Ugd2ls
bCBub3QgcGFzcyBhIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbSBoZXJlLCBhcyB3ZSBvbmx5
IHdhbnQgdG8gY29tcGlsZSBpdCB3aGVuIHdlIGFjdHVhbGx5IG5lZWQgaXQgaW4gdGhlIGZpcnN0
IHBhaW50LgotICAgIG1fY3VzdG9tRmlsdGVyUmVuZGVyZXIgPSBDdXN0b21GaWx0ZXJSZW5kZXJl
cjo6Y3JlYXRlKG1fY29udGV4dCwgbV92YWxpZGF0ZWRQcm9ncmFtLT5wcm9ncmFtSW5mbygpLnBy
b2dyYW1UeXBlKCksIHBhcmFtZXRlcnMsIG1lc2hSb3dzLCBtZXNoQ29sdW1ucywgbWVzaFR5cGUp
OwotfQotCi1QYXNzUmVmUHRyPEZFQ3VzdG9tRmlsdGVyPiBGRUN1c3RvbUZpbHRlcjo6Y3JlYXRl
KEZpbHRlciogZmlsdGVyLCBQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjb250ZXh0LCBQ
YXNzUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+IHZhbGlkYXRlZFByb2dyYW0s
IGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHBhcmFtZXRlcnMsCi0gICAgdW5zaWdu
ZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBt
ZXNoVHlwZSkKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IEZFQ3VzdG9tRmlsdGVyKGZpbHRl
ciwgY29udGV4dCwgdmFsaWRhdGVkUHJvZ3JhbSwgcGFyYW1ldGVycywgbWVzaFJvd3MsIG1lc2hD
b2x1bW5zLCBtZXNoVHlwZSkpOwotfQotCi1GRUN1c3RvbUZpbHRlcjo6fkZFQ3VzdG9tRmlsdGVy
KCkKLXsKLSAgICBkZWxldGVSZW5kZXJCdWZmZXJzKCk7Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0
ZXI6OmRlbGV0ZVJlbmRlckJ1ZmZlcnMoKQotewotICAgIEFTU0VSVChtX2NvbnRleHQpOwotICAg
IG1fY29udGV4dC0+bWFrZUNvbnRleHRDdXJyZW50KCk7Ci0gICAgaWYgKG1faW5wdXRUZXh0dXJl
KSB7Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlVGV4dHVyZShtX2lucHV0VGV4dHVyZSk7Ci0g
ICAgICAgIG1faW5wdXRUZXh0dXJlID0gMDsKLSAgICB9Ci0gICAgaWYgKG1fZnJhbWVCdWZmZXIp
IHsKLSAgICAgICAgLy8gTWFrZSBzdXJlIHRvIHVuYmluZCBhbnkgZnJhbWVidWZmZXIgZnJvbSB0
aGUgY29udGV4dCBmaXJzdCwgb3RoZXJ3aXNlCi0gICAgICAgIC8vIHNvbWUgcGxhdGZvcm1zIG1p
Z2h0IHJlZnVzZSB0byBiaW5kIHRoZSBzYW1lIGJ1ZmZlciBpZCBhZ2Fpbi4KLSAgICAgICAgbV9j
b250ZXh0LT5iaW5kRnJhbWVidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSLCAw
KTsKLSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVGcmFtZWJ1ZmZlcihtX2ZyYW1lQnVmZmVyKTsK
LSAgICAgICAgbV9mcmFtZUJ1ZmZlciA9IDA7Ci0gICAgfQotICAgIGlmIChtX2RlcHRoQnVmZmVy
KSB7Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlUmVuZGVyYnVmZmVyKG1fZGVwdGhCdWZmZXIp
OwotICAgICAgICBtX2RlcHRoQnVmZmVyID0gMDsKLSAgICB9Ci0gICAgaWYgKG1fZGVzdFRleHR1
cmUpIHsKLSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVUZXh0dXJlKG1fZGVzdFRleHR1cmUpOwot
ICAgICAgICBtX2Rlc3RUZXh0dXJlID0gMDsKLSAgICB9Ci0gICAgZGVsZXRlTXVsdGlzYW1wbGVS
ZW5kZXJCdWZmZXJzKCk7Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0ZXI6OmRlbGV0ZU11bHRpc2Ft
cGxlUmVuZGVyQnVmZmVycygpCi17Ci0gICAgaWYgKG1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZlcikg
ewotICAgICAgICAvLyBNYWtlIHN1cmUgdG8gdW5iaW5kIGFueSBmcmFtZWJ1ZmZlciBmcm9tIHRo
ZSBjb250ZXh0IGZpcnN0LCBvdGhlcndpc2UKLSAgICAgICAgLy8gc29tZSBwbGF0Zm9ybXMgbWln
aHQgcmVmdXNlIHRvIGJpbmQgdGhlIHNhbWUgYnVmZmVyIGlkIGFnYWluLgotICAgICAgICBtX2Nv
bnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVIsIDAp
OwotICAgICAgICBtX2NvbnRleHQtPmRlbGV0ZUZyYW1lYnVmZmVyKG1fbXVsdGlzYW1wbGVGcmFt
ZUJ1ZmZlcik7Ci0gICAgICAgIG1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZlciA9IDA7Ci0gICAgfQot
ICAgIGlmIChtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyKSB7Ci0gICAgICAgIG1fY29udGV4dC0+
ZGVsZXRlUmVuZGVyYnVmZmVyKG1fbXVsdGlzYW1wbGVSZW5kZXJCdWZmZXIpOwotICAgICAgICBt
X211bHRpc2FtcGxlUmVuZGVyQnVmZmVyID0gMDsKLSAgICB9Ci0gICAgaWYgKG1fbXVsdGlzYW1w
bGVEZXB0aEJ1ZmZlcikgewotICAgICAgICBtX2NvbnRleHQtPmRlbGV0ZVJlbmRlcmJ1ZmZlciht
X211bHRpc2FtcGxlRGVwdGhCdWZmZXIpOwotICAgICAgICBtX211bHRpc2FtcGxlRGVwdGhCdWZm
ZXIgPSAwOwotICAgIH0KLX0KLQotdm9pZCBGRUN1c3RvbUZpbHRlcjo6cGxhdGZvcm1BcHBseVNv
ZnR3YXJlKCkKLXsKLSAgICBpZiAoIWFwcGx5U2hhZGVyKCkpCi0gICAgICAgIGNsZWFyU2hhZGVy
UmVzdWx0KCk7Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0ZXI6OmNsZWFyU2hhZGVyUmVzdWx0KCkK
LXsKLSAgICBjbGVhclJlc3VsdCgpOwotICAgIFVpbnQ4Q2xhbXBlZEFycmF5KiBkc3RQaXhlbEFy
cmF5ID0gY3JlYXRlVW5tdWx0aXBsaWVkSW1hZ2VSZXN1bHQoKTsKLSAgICBpZiAoIWRzdFBpeGVs
QXJyYXkpCi0gICAgICAgIHJldHVybjsKLQotICAgIEZpbHRlckVmZmVjdCogaW4gPSBpbnB1dEVm
ZmVjdCgwKTsKLSAgICBzZXRJc0FscGhhSW1hZ2UoaW4tPmlzQWxwaGFJbWFnZSgpKTsKLSAgICBJ
bnRSZWN0IGVmZmVjdERyYXdpbmdSZWN0ID0gcmVxdWVzdGVkUmVnaW9uT2ZJbnB1dEltYWdlRGF0
YShpbi0+YWJzb2x1dGVQYWludFJlY3QoKSk7Ci0gICAgaW4tPmNvcHlVbm11bHRpcGxpZWRJbWFn
ZShkc3RQaXhlbEFycmF5LCBlZmZlY3REcmF3aW5nUmVjdCk7Ci19Ci0KLXZvaWQgRkVDdXN0b21G
aWx0ZXI6OmRyYXdGaWx0ZXJNZXNoKFBsYXRmb3JtM0RPYmplY3QgaW5wdXRUZXh0dXJlKQotewot
ICAgIGJvb2wgbXVsdGlzYW1wbGUgPSBjYW5Vc2VNdWx0aXNhbXBsZUJ1ZmZlcnMoKTsKLSAgICBt
X2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVIs
IG11bHRpc2FtcGxlID8gbV9tdWx0aXNhbXBsZUZyYW1lQnVmZmVyIDogbV9mcmFtZUJ1ZmZlcik7
Ci0gICAgbV9jb250ZXh0LT52aWV3cG9ydCgwLCAwLCBtX2NvbnRleHRTaXplLndpZHRoKCksIG1f
Y29udGV4dFNpemUuaGVpZ2h0KCkpOwotCi0gICAgbV9jb250ZXh0LT5jbGVhckNvbG9yKDAsIDAs
IDAsIDApOwotICAgIG1fY29udGV4dC0+Y2xlYXIoR3JhcGhpY3NDb250ZXh0M0Q6OkNPTE9SX0JV
RkZFUl9CSVQgfCBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfQlVGRkVSX0JJVCk7Ci0KLSAgICBt
X2N1c3RvbUZpbHRlclJlbmRlcmVyLT5kcmF3KGlucHV0VGV4dHVyZSwgbV9jb250ZXh0U2l6ZSk7
Ci0KLSAgICBpZiAobXVsdGlzYW1wbGUpCi0gICAgICAgIHJlc29sdmVNdWx0aXNhbXBsZUJ1ZmZl
cigpOwotfQotCi1ib29sIEZFQ3VzdG9tRmlsdGVyOjpwcmVwYXJlRm9yRHJhd2luZygpCi17Ci0g
ICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJlbnQoKTsKLQotICAgIGlmICghbV9jdXN0b21G
aWx0ZXJSZW5kZXJlci0+Y29tcGlsZWRQcm9ncmFtKCkpIHsKLSAgICAgICAgUmVmUHRyPEN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbT4gY29tcGlsZWRQcm9ncmFtID0gbV92YWxpZGF0ZWRQcm9n
cmFtLT5jb21waWxlZFByb2dyYW0oKTsKLSAgICAgICAgaWYgKCFjb21waWxlZFByb2dyYW0pIHsK
LSAgICAgICAgICAgIC8vIExhemlseSBjcmVhdGUgYSBjb21waWxlZCBwcm9ncmFtIGFuZCBsZXQg
Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbSBob2xkIG9uIHRvIGl0LgotICAgICAgICAgICAg
Y29tcGlsZWRQcm9ncmFtID0gQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOjpjcmVhdGUobV9j
b250ZXh0LCBtX3ZhbGlkYXRlZFByb2dyYW0tPnZhbGlkYXRlZFZlcnRleFNoYWRlcigpLCBtX3Zh
bGlkYXRlZFByb2dyYW0tPnZhbGlkYXRlZEZyYWdtZW50U2hhZGVyKCksIG1fdmFsaWRhdGVkUHJv
Z3JhbS0+cHJvZ3JhbUluZm8oKS5wcm9ncmFtVHlwZSgpKTsKLSAgICAgICAgICAgIG1fdmFsaWRh
dGVkUHJvZ3JhbS0+c2V0Q29tcGlsZWRQcm9ncmFtKGNvbXBpbGVkUHJvZ3JhbSk7Ci0gICAgICAg
IH0KLSAgICAgICAgLy8gTGF6aWx5IGluamVjdCB0aGUgY29tcGlsZWQgcHJvZ3JhbSBpbnRvIHRo
ZSBDdXN0b21GaWx0ZXJSZW5kZXJlci4KLSAgICAgICAgbV9jdXN0b21GaWx0ZXJSZW5kZXJlci0+
c2V0Q29tcGlsZWRQcm9ncmFtKGNvbXBpbGVkUHJvZ3JhbS5yZWxlYXNlKCkpOwotICAgIH0KLQot
ICAgIGlmICghbV9jdXN0b21GaWx0ZXJSZW5kZXJlci0+cHJlcGFyZUZvckRyYXdpbmcoKSkKLSAg
ICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgLy8gT25seSBhbGxvY2F0ZSBhIHRleHR1cmUgaWYg
dGhlIHByb2dyYW0gbmVlZHMgb25lIGFuZCB0aGUgY2FsbGVyIGRvZXNuJ3QgYWxsb2NhdGUgb25l
IGJ5IGl0c2VsZi4KLSAgICBpZiAoKG1fY3VzdG9tRmlsdGVyUmVuZGVyZXItPnByb2dyYW1OZWVk
c0lucHV0VGV4dHVyZSgpICYmICFlbnN1cmVJbnB1dFRleHR1cmUoKSkgfHwgIWVuc3VyZUZyYW1l
QnVmZmVyKCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIHJldHVybiB0cnVlOwotfQot
Ci1ib29sIEZFQ3VzdG9tRmlsdGVyOjphcHBseVNoYWRlcigpCi17Ci0gICAgVWludDhDbGFtcGVk
QXJyYXkqIGRzdFBpeGVsQXJyYXkgPSBtX2N1c3RvbUZpbHRlclJlbmRlcmVyLT5wcmVtdWx0aXBs
aWVkQWxwaGEoKSA/IGNyZWF0ZVByZW11bHRpcGxpZWRJbWFnZVJlc3VsdCgpIDogY3JlYXRlVW5t
dWx0aXBsaWVkSW1hZ2VSZXN1bHQoKTsKLSAgICBpZiAoIWRzdFBpeGVsQXJyYXkpCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLQotICAgIGlmICghcHJlcGFyZUZvckRyYXdpbmcoKSkKLSAgICAgICAg
cmV0dXJuIGZhbHNlOwotCi0gICAgRmlsdGVyRWZmZWN0KiBpbiA9IGlucHV0RWZmZWN0KDApOwot
ICAgIEludFJlY3QgZWZmZWN0RHJhd2luZ1JlY3QgPSByZXF1ZXN0ZWRSZWdpb25PZklucHV0SW1h
Z2VEYXRhKGluLT5hYnNvbHV0ZVBhaW50UmVjdCgpKTsKLSAgICBJbnRTaXplIG5ld0NvbnRleHRT
aXplKGVmZmVjdERyYXdpbmdSZWN0LnNpemUoKSk7Ci0gICAgaWYgKCFyZXNpemVDb250ZXh0SWZO
ZWVkZWQobmV3Q29udGV4dFNpemUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBib29s
IG5lZWRzSW5wdXRUZXh0dXJlID0gbV9jdXN0b21GaWx0ZXJSZW5kZXJlci0+cHJvZ3JhbU5lZWRz
SW5wdXRUZXh0dXJlKCk7Ci0gICAgaWYgKG5lZWRzSW5wdXRUZXh0dXJlKSB7Ci0gICAgICAgIFJl
ZlB0cjxVaW50OENsYW1wZWRBcnJheT4gc3JjUGl4ZWxBcnJheSA9IGluLT5hc1VubXVsdGlwbGll
ZEltYWdlKGVmZmVjdERyYXdpbmdSZWN0KTsKLSAgICAgICAgdXBsb2FkSW5wdXRUZXh0dXJlKHNy
Y1BpeGVsQXJyYXkuZ2V0KCkpOwotICAgIH0KLSAgICBkcmF3RmlsdGVyTWVzaChuZWVkc0lucHV0
VGV4dHVyZSA/IG1faW5wdXRUZXh0dXJlIDogMCk7Ci0KLSAgICBBU1NFUlQoc3RhdGljX2Nhc3Q8
c2l6ZV90PihuZXdDb250ZXh0U2l6ZS53aWR0aCgpICogbmV3Q29udGV4dFNpemUuaGVpZ2h0KCkg
KiA0KSA9PSBkc3RQaXhlbEFycmF5LT5sZW5ndGgoKSk7Ci0gICAgbV9jb250ZXh0LT5yZWFkUGl4
ZWxzKDAsIDAsIG5ld0NvbnRleHRTaXplLndpZHRoKCksIG5ld0NvbnRleHRTaXplLmhlaWdodCgp
LCBHcmFwaGljc0NvbnRleHQzRDo6UkdCQSwgR3JhcGhpY3NDb250ZXh0M0Q6OlVOU0lHTkVEX0JZ
VEUsIGRzdFBpeGVsQXJyYXktPmRhdGEoKSk7Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotYm9v
bCBGRUN1c3RvbUZpbHRlcjo6ZW5zdXJlSW5wdXRUZXh0dXJlKCkKLXsKLSAgICBpZiAoIW1faW5w
dXRUZXh0dXJlKQotICAgICAgICBtX2lucHV0VGV4dHVyZSA9IG1fY29udGV4dC0+Y3JlYXRlVGV4
dHVyZSgpOwotICAgIHJldHVybiBtX2lucHV0VGV4dHVyZTsKLX0KLQotdm9pZCBGRUN1c3RvbUZp
bHRlcjo6dXBsb2FkSW5wdXRUZXh0dXJlKFVpbnQ4Q2xhbXBlZEFycmF5KiBzcmNQaXhlbEFycmF5
KQotewotICAgIG1fY29udGV4dC0+YmluZFRleHR1cmUoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRV
UkVfMkQsIG1faW5wdXRUZXh0dXJlKTsKLSAgICBtX2NvbnRleHQtPnRleEltYWdlMkQoR3JhcGhp
Y3NDb250ZXh0M0Q6OlRFWFRVUkVfMkQsIDAsIEdyYXBoaWNzQ29udGV4dDNEOjpSR0JBLCBtX2Nv
bnRleHRTaXplLndpZHRoKCksIG1fY29udGV4dFNpemUuaGVpZ2h0KCksIDAsIEdyYXBoaWNzQ29u
dGV4dDNEOjpSR0JBLCBHcmFwaGljc0NvbnRleHQzRDo6VU5TSUdORURfQllURSwgc3JjUGl4ZWxB
cnJheS0+ZGF0YSgpKTsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6ZW5zdXJlRnJhbWVCdWZm
ZXIoKQotewotICAgIGlmICghbV9mcmFtZUJ1ZmZlcikKLSAgICAgICAgbV9mcmFtZUJ1ZmZlciA9
IG1fY29udGV4dC0+Y3JlYXRlRnJhbWVidWZmZXIoKTsKLSAgICBpZiAoIW1fZGVwdGhCdWZmZXIp
Ci0gICAgICAgIG1fZGVwdGhCdWZmZXIgPSBtX2NvbnRleHQtPmNyZWF0ZVJlbmRlcmJ1ZmZlcigp
OwotICAgIGlmICghbV9kZXN0VGV4dHVyZSkKLSAgICAgICAgbV9kZXN0VGV4dHVyZSA9IG1fY29u
dGV4dC0+Y3JlYXRlVGV4dHVyZSgpOwotICAgIHJldHVybiBtX2ZyYW1lQnVmZmVyICYmIG1fZGVw
dGhCdWZmZXIgJiYgbV9kZXN0VGV4dHVyZTsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6Y3Jl
YXRlTXVsdGlzYW1wbGVCdWZmZXIoKQotewotICAgIEFTU0VSVCghbV90cmllZE11bHRpc2FtcGxl
QnVmZmVyKTsKLSAgICBtX3RyaWVkTXVsdGlzYW1wbGVCdWZmZXIgPSB0cnVlOwotCi0gICAgRXh0
ZW5zaW9uczNEKiBleHRlbnNpb25zID0gbV9jb250ZXh0LT5nZXRFeHRlbnNpb25zKCk7Ci0gICAg
aWYgKCFleHRlbnNpb25zCi0gICAgICAgIHx8ICFleHRlbnNpb25zLT5tYXlTdXBwb3J0TXVsdGlz
YW1wbGluZygpCi0gICAgICAgIHx8ICFleHRlbnNpb25zLT5zdXBwb3J0cygiR0xfQU5HTEVfZnJh
bWVidWZmZXJfbXVsdGlzYW1wbGUiKQotICAgICAgICB8fCAhZXh0ZW5zaW9ucy0+c3VwcG9ydHMo
IkdMX0FOR0xFX2ZyYW1lYnVmZmVyX2JsaXQiKQotICAgICAgICB8fCAhZXh0ZW5zaW9ucy0+c3Vw
cG9ydHMoIkdMX09FU19yZ2I4X3JnYmE4IikpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAg
IGV4dGVuc2lvbnMtPmVuc3VyZUVuYWJsZWQoIkdMX0FOR0xFX2ZyYW1lYnVmZmVyX2JsaXQiKTsK
LSAgICBleHRlbnNpb25zLT5lbnN1cmVFbmFibGVkKCJHTF9BTkdMRV9mcmFtZWJ1ZmZlcl9tdWx0
aXNhbXBsZSIpOwotICAgIGV4dGVuc2lvbnMtPmVuc3VyZUVuYWJsZWQoIkdMX09FU19yZ2I4X3Jn
YmE4Iik7Ci0KLSAgICBpZiAoIW1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZlcikKLSAgICAgICAgbV9t
dWx0aXNhbXBsZUZyYW1lQnVmZmVyID0gbV9jb250ZXh0LT5jcmVhdGVGcmFtZWJ1ZmZlcigpOwot
ICAgIGlmICghbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcikKLSAgICAgICAgbV9tdWx0aXNhbXBs
ZVJlbmRlckJ1ZmZlciA9IG1fY29udGV4dC0+Y3JlYXRlUmVuZGVyYnVmZmVyKCk7Ci0gICAgaWYg
KCFtX211bHRpc2FtcGxlRGVwdGhCdWZmZXIpCi0gICAgICAgIG1fbXVsdGlzYW1wbGVEZXB0aEJ1
ZmZlciA9IG1fY29udGV4dC0+Y3JlYXRlUmVuZGVyYnVmZmVyKCk7Ci0KLSAgICByZXR1cm4gdHJ1
ZTsKLX0KLQotdm9pZCBGRUN1c3RvbUZpbHRlcjo6cmVzb2x2ZU11bHRpc2FtcGxlQnVmZmVyKCkK
LXsKLSAgICBBU1NFUlQobV90cmllZE11bHRpc2FtcGxlQnVmZmVyICYmIG1fbXVsdGlzYW1wbGVG
cmFtZUJ1ZmZlciAmJiBtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyICYmIG1fbXVsdGlzYW1wbGVE
ZXB0aEJ1ZmZlcik7Ci0gICAgbV9jb250ZXh0LT5iaW5kRnJhbWVidWZmZXIoRXh0ZW5zaW9uczNE
OjpSRUFEX0ZSQU1FQlVGRkVSLCBtX211bHRpc2FtcGxlRnJhbWVCdWZmZXIpOwotICAgIG1fY29u
dGV4dC0+YmluZEZyYW1lYnVmZmVyKEV4dGVuc2lvbnMzRDo6RFJBV19GUkFNRUJVRkZFUiwgbV9m
cmFtZUJ1ZmZlcik7Ci0KLSAgICBBU1NFUlQobV9jb250ZXh0LT5nZXRFeHRlbnNpb25zKCkpOwot
ICAgIG1fY29udGV4dC0+Z2V0RXh0ZW5zaW9ucygpLT5ibGl0RnJhbWVidWZmZXIoMCwgMCwgbV9j
b250ZXh0U2l6ZS53aWR0aCgpLCBtX2NvbnRleHRTaXplLmhlaWdodCgpLCAwLCAwLCBtX2NvbnRl
eHRTaXplLndpZHRoKCksIG1fY29udGV4dFNpemUuaGVpZ2h0KCksIEdyYXBoaWNzQ29udGV4dDNE
OjpDT0xPUl9CVUZGRVJfQklULCBHcmFwaGljc0NvbnRleHQzRDo6TkVBUkVTVCk7Ci0KLSAgICBt
X2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihFeHRlbnNpb25zM0Q6OlJFQURfRlJBTUVCVUZGRVIs
IDApOwotICAgIG1fY29udGV4dC0+YmluZEZyYW1lYnVmZmVyKEV4dGVuc2lvbnMzRDo6RFJBV19G
UkFNRUJVRkZFUiwgMCk7Ci0KLSAgICBtX2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihHcmFwaGlj
c0NvbnRleHQzRDo6RlJBTUVCVUZGRVIsIG1fZnJhbWVCdWZmZXIpOwotfQotCi1ib29sIEZFQ3Vz
dG9tRmlsdGVyOjpjYW5Vc2VNdWx0aXNhbXBsZUJ1ZmZlcnMoKSBjb25zdAotewotICAgIHJldHVy
biBtX3RyaWVkTXVsdGlzYW1wbGVCdWZmZXIgJiYgbV9tdWx0aXNhbXBsZUZyYW1lQnVmZmVyICYm
IG1fbXVsdGlzYW1wbGVSZW5kZXJCdWZmZXIgJiYgbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyOwot
fQotCi1ib29sIEZFQ3VzdG9tRmlsdGVyOjpyZXNpemVNdWx0aXNhbXBsZUJ1ZmZlcnMoY29uc3Qg
SW50U2l6ZSYgbmV3Q29udGV4dFNpemUpCi17Ci0gICAgaWYgKCFtX3RyaWVkTXVsdGlzYW1wbGVC
dWZmZXIgJiYgIWNyZWF0ZU11bHRpc2FtcGxlQnVmZmVyKCkpCi0gICAgICAgIHJldHVybiBmYWxz
ZTsKLQotICAgIGlmICghY2FuVXNlTXVsdGlzYW1wbGVCdWZmZXJzKCkpCi0gICAgICAgIHJldHVy
biBmYWxzZTsKLQotICAgIHN0YXRpYyBjb25zdCBpbnQga01heFNhbXBsZUNvdW50ID0gNDsKLSAg
ICBpbnQgbWF4U3VwcG9ydGVkU2FtcGxlQ291bnQgPSAwOwotICAgIG1fY29udGV4dC0+Z2V0SW50
ZWdlcnYoRXh0ZW5zaW9uczNEOjpNQVhfU0FNUExFUywgJm1heFN1cHBvcnRlZFNhbXBsZUNvdW50
KTsKLSAgICBpbnQgc2FtcGxlQ291bnQgPSBzdGQ6Om1pbihrTWF4U2FtcGxlQ291bnQsIG1heFN1
cHBvcnRlZFNhbXBsZUNvdW50KTsKLSAgICBpZiAoIXNhbXBsZUNvdW50KSB7Ci0gICAgICAgIGRl
bGV0ZU11bHRpc2FtcGxlUmVuZGVyQnVmZmVycygpOwotICAgICAgICByZXR1cm4gZmFsc2U7Ci0g
ICAgfQotCi0gICAgRXh0ZW5zaW9uczNEKiBleHRlbnNpb25zID0gbV9jb250ZXh0LT5nZXRFeHRl
bnNpb25zKCk7Ci0gICAgQVNTRVJUKGV4dGVuc2lvbnMpOwotCi0gICAgbV9jb250ZXh0LT5iaW5k
RnJhbWVidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSLCBtX211bHRpc2FtcGxl
RnJhbWVCdWZmZXIpOwotCi0gICAgbV9jb250ZXh0LT5iaW5kUmVuZGVyYnVmZmVyKEdyYXBoaWNz
Q29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIG1fbXVsdGlzYW1wbGVSZW5kZXJCdWZmZXIpOwotICAg
IGV4dGVuc2lvbnMtPnJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZShHcmFwaGljc0NvbnRl
eHQzRDo6UkVOREVSQlVGRkVSLCBzYW1wbGVDb3VudCwgRXh0ZW5zaW9uczNEOjpSR0JBOF9PRVMs
IG5ld0NvbnRleHRTaXplLndpZHRoKCksIG5ld0NvbnRleHRTaXplLmhlaWdodCgpKTsKLSAgICBt
X2NvbnRleHQtPmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFN
RUJVRkZFUiwgR3JhcGhpY3NDb250ZXh0M0Q6OkNPTE9SX0FUVEFDSE1FTlQwLCBHcmFwaGljc0Nv
bnRleHQzRDo6UkVOREVSQlVGRkVSLCBtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyKTsKLQotICAg
IG1fY29udGV4dC0+YmluZFJlbmRlcmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6UkVOREVSQlVG
RkVSLCBtX211bHRpc2FtcGxlRGVwdGhCdWZmZXIpOwotICAgIGV4dGVuc2lvbnMtPnJlbmRlcmJ1
ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZShHcmFwaGljc0NvbnRleHQzRDo6UkVOREVSQlVGRkVSLCBz
YW1wbGVDb3VudCwgR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX0NPTVBPTkVOVDE2LCBuZXdDb250
ZXh0U2l6ZS53aWR0aCgpLCBuZXdDb250ZXh0U2l6ZS5oZWlnaHQoKSk7Ci0gICAgbV9jb250ZXh0
LT5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVIs
IEdyYXBoaWNzQ29udGV4dDNEOjpERVBUSF9BVFRBQ0hNRU5ULCBHcmFwaGljc0NvbnRleHQzRDo6
UkVOREVSQlVGRkVSLCBtX211bHRpc2FtcGxlRGVwdGhCdWZmZXIpOwotCi0gICAgbV9jb250ZXh0
LT5iaW5kUmVuZGVyYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIDApOwot
Ci0gICAgaWYgKG1fY29udGV4dC0+Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhHcmFwaGljc0NvbnRl
eHQzRDo6RlJBTUVCVUZGRVIpICE9IEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9DT01Q
TEVURSkgewotICAgICAgICBkZWxldGVNdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcnMoKTsKLSAgICAg
ICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLQotICAgIHJldHVybiB0cnVlOwotfQotCi1ib29sIEZF
Q3VzdG9tRmlsdGVyOjpyZXNpemVDb250ZXh0SWZOZWVkZWQoY29uc3QgSW50U2l6ZSYgbmV3Q29u
dGV4dFNpemUpCi17Ci0gICAgaWYgKG5ld0NvbnRleHRTaXplLmlzRW1wdHkoKSkKLSAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgIGlmIChtX2NvbnRleHRTaXplID09IG5ld0NvbnRleHRTaXplKQot
ICAgICAgICByZXR1cm4gdHJ1ZTsKLQotICAgIGludCBtYXhUZXh0dXJlU2l6ZSA9IDA7Ci0gICAg
bV9jb250ZXh0LT5nZXRJbnRlZ2VydihHcmFwaGljc0NvbnRleHQzRDo6TUFYX1RFWFRVUkVfU0la
RSwgJm1heFRleHR1cmVTaXplKTsKLSAgICBpZiAobmV3Q29udGV4dFNpemUuaGVpZ2h0KCkgPiBt
YXhUZXh0dXJlU2l6ZSB8fCBuZXdDb250ZXh0U2l6ZS53aWR0aCgpID4gbWF4VGV4dHVyZVNpemUp
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIHJldHVybiByZXNpemVDb250ZXh0KG5ld0Nv
bnRleHRTaXplKTsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6cmVzaXplQ29udGV4dChjb25z
dCBJbnRTaXplJiBuZXdDb250ZXh0U2l6ZSkKLXsKLSAgICBib29sIG11bHRpc2FtcGxlID0gcmVz
aXplTXVsdGlzYW1wbGVCdWZmZXJzKG5ld0NvbnRleHRTaXplKTsKLQotICAgIG1fY29udGV4dC0+
YmluZEZyYW1lYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUiwgbV9mcmFtZUJ1
ZmZlcik7Ci0gICAgbV9jb250ZXh0LT5iaW5kVGV4dHVyZShHcmFwaGljc0NvbnRleHQzRDo6VEVY
VFVSRV8yRCwgbV9kZXN0VGV4dHVyZSk7Ci0gICAgLy8gV2UgYXJlIGdvaW5nIHRvIGNsZWFyIHRo
ZSBvdXRwdXQgYnVmZmVyIGFueXdheSwgc28gd2UgY2FuIHNhZmVseSBpbml0aWFsaXplIHRoZSBk
ZXN0aW5hdGlvbiB0ZXh0dXJlIHdpdGggZ2FyYmFnZSBkYXRhLgotICAgIG1fY29udGV4dC0+dGV4
SW1hZ2UyRERpcmVjdChHcmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV8yRCwgMCwgR3JhcGhpY3ND
b250ZXh0M0Q6OlJHQkEsIG5ld0NvbnRleHRTaXplLndpZHRoKCksIG5ld0NvbnRleHRTaXplLmhl
aWdodCgpLCAwLCBHcmFwaGljc0NvbnRleHQzRDo6UkdCQSwgR3JhcGhpY3NDb250ZXh0M0Q6OlVO
U0lHTkVEX0JZVEUsIDApOwotICAgIG1fY29udGV4dC0+ZnJhbWVidWZmZXJUZXh0dXJlMkQoR3Jh
cGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSLCBHcmFwaGljc0NvbnRleHQzRDo6Q09MT1JfQVRU
QUNITUVOVDAsIEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFXzJELCBtX2Rlc3RUZXh0dXJlLCAw
KTsKLQotICAgIC8vIFdlIGRvbid0IG5lZWQgdGhlIGRlcHRoIGJ1ZmZlciBmb3IgdGhlIHRleHR1
cmUgZnJhbWVidWZmZXIsIGlmIHdlIGFscmVhZHkKLSAgICAvLyBoYXZlIGEgbXVsdGlzYW1wbGUg
YnVmZmVyLgotICAgIGlmICghbXVsdGlzYW1wbGUpIHsKLSAgICAgICAgbV9jb250ZXh0LT5iaW5k
UmVuZGVyYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIG1fZGVwdGhCdWZm
ZXIpOwotICAgICAgICBtX2NvbnRleHQtPnJlbmRlcmJ1ZmZlclN0b3JhZ2UoR3JhcGhpY3NDb250
ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX0NPTVBPTkVOVDE2
LCBuZXdDb250ZXh0U2l6ZS53aWR0aCgpLCBuZXdDb250ZXh0U2l6ZS5oZWlnaHQoKSk7Ci0gICAg
ICAgIG1fY29udGV4dC0+ZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6
OkZSQU1FQlVGRkVSLCBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfQVRUQUNITUVOVCwgR3JhcGhp
Y3NDb250ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgbV9kZXB0aEJ1ZmZlcik7Ci0gICAgfQotCi0gICAg
aWYgKG1fY29udGV4dC0+Y2hlY2tGcmFtZWJ1ZmZlclN0YXR1cyhHcmFwaGljc0NvbnRleHQzRDo6
RlJBTUVCVUZGRVIpICE9IEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUl9DT01QTEVURSkK
LSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgaWYgKG11bHRpc2FtcGxlKSB7Ci0gICAgICAg
IC8vIENsZWFyIHRoZSBmcmFtZWJ1ZmZlciBmaXJzdCwgb3RoZXJ3aXNlIHRoZSBmaXJzdCBibGl0
IHdpbGwgZmFpbC4KLSAgICAgICAgbV9jb250ZXh0LT5jbGVhckNvbG9yKDAsIDAsIDAsIDApOwot
ICAgICAgICBtX2NvbnRleHQtPmNsZWFyKEdyYXBoaWNzQ29udGV4dDNEOjpDT0xPUl9CVUZGRVJf
QklUKTsKLSAgICB9Ci0KLSAgICBtX2NvbnRleHQtPmJpbmRSZW5kZXJidWZmZXIoR3JhcGhpY3ND
b250ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgMCk7Ci0KLSAgICBtX2NvbnRleHRTaXplID0gbmV3Q29u
dGV4dFNpemU7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0ZXI6OmR1
bXAoKQotewotfQotCi1UZXh0U3RyZWFtJiBGRUN1c3RvbUZpbHRlcjo6ZXh0ZXJuYWxSZXByZXNl
bnRhdGlvbihUZXh0U3RyZWFtJiB0cywgaW50IGluZGVudCkgY29uc3QKLXsKLSAgICB3cml0ZUlu
ZGVudCh0cywgaW5kZW50KTsKLSAgICB0cyA8PCAiW2ZlQ3VzdG9tRmlsdGVyIjsKLSAgICBGaWx0
ZXJFZmZlY3Q6OmV4dGVybmFsUmVwcmVzZW50YXRpb24odHMpOwotICAgIHRzIDw8ICJdXG4iOwot
ICAgIGlucHV0RWZmZWN0KDApLT5leHRlcm5hbFJlcHJlc2VudGF0aW9uKHRzLCBpbmRlbnQgKyAx
KTsKLSAgICByZXR1cm4gdHM7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRl
ci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3OTk2ZjRkLi4wMDAwMDAwCi0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDdXN0b21GaWx0ZXIu
aAorKysgL2Rldi9udWxsCkBAIC0xLDEwNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
Ci0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
LSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
LSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaWZuZGVmIEZFQ3VzdG9tRmlsdGVyX2gKLSNkZWZpbmUgRkVDdXN0b21GaWx0
ZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0KLSNp
bmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJP
cGVyYXRpb24uaCIKLSNpbmNsdWRlICJGaWx0ZXIuaCIKLSNpbmNsdWRlICJGaWx0ZXJFZmZlY3Qu
aCIKLSNpbmNsdWRlICJHcmFwaGljc1R5cGVzM0QuaCIKLSNpbmNsdWRlIDxydW50aW1lL1VpbnQ4
Q2xhbXBlZEFycmF5Lmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgotCi1uYW1lc3BhY2UgV2Vi
Q29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlclJlbmRlcmVyOwotY2xhc3MgQ3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbTsKLWNsYXNzIEdyYXBoaWNzQ29udGV4dDNEOwotY2xhc3MgSW50U2l6
ZTsKLQotY2xhc3MgRkVDdXN0b21GaWx0ZXIgOiBwdWJsaWMgRmlsdGVyRWZmZWN0IHsKLXB1Ymxp
YzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxGRUN1c3RvbUZpbHRlcj4gY3JlYXRlKEZpbHRlcios
IFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+LCBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZh
bGlkYXRlZFByb2dyYW0+LCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiwKLSAgICAg
ICAgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJN
ZXNoVHlwZSk7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgcGxhdGZvcm1BcHBseVNvZnR3YXJlKCk7Ci0g
ICAgdmlydHVhbCB2b2lkIGR1bXAoKTsKLQotICAgIHZpcnR1YWwgVGV4dFN0cmVhbSYgZXh0ZXJu
YWxSZXByZXNlbnRhdGlvbihUZXh0U3RyZWFtJiwgaW50IGluZGVudGlvbikgY29uc3Q7Ci0KLXBy
aXZhdGU6Ci0gICAgRkVDdXN0b21GaWx0ZXIoRmlsdGVyKiwgUGFzc1JlZlB0cjxHcmFwaGljc0Nv
bnRleHQzRD4sIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4sIGNvbnN0
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmLAotICAgICAgICB1bnNpZ25lZCBtZXNoUm93cywg
dW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1lc2hUeXBlKTsKLSAgICB+RkVDdXN0
b21GaWx0ZXIoKTsKLQotICAgIGJvb2wgYXBwbHlTaGFkZXIoKTsKLSAgICB2b2lkIGNsZWFyU2hh
ZGVyUmVzdWx0KCk7Ci0gICAgYm9vbCBpbml0aWFsaXplQ29udGV4dCgpOwotCi0gICAgYm9vbCBw
cmVwYXJlRm9yRHJhd2luZygpOwotCi0gICAgdm9pZCBkcmF3RmlsdGVyTWVzaChQbGF0Zm9ybTNE
T2JqZWN0IGlucHV0VGV4dHVyZSk7Ci0gICAgYm9vbCBlbnN1cmVJbnB1dFRleHR1cmUoKTsKLSAg
ICB2b2lkIHVwbG9hZElucHV0VGV4dHVyZShVaW50OENsYW1wZWRBcnJheSogc3JjUGl4ZWxBcnJh
eSk7Ci0gICAgYm9vbCByZXNpemVDb250ZXh0SWZOZWVkZWQoY29uc3QgSW50U2l6ZSYpOwotICAg
IGJvb2wgcmVzaXplQ29udGV4dChjb25zdCBJbnRTaXplJik7Ci0KLSAgICBib29sIGNhblVzZU11
bHRpc2FtcGxlQnVmZmVycygpIGNvbnN0OwotICAgIGJvb2wgY3JlYXRlTXVsdGlzYW1wbGVCdWZm
ZXIoKTsKLSAgICBib29sIHJlc2l6ZU11bHRpc2FtcGxlQnVmZmVycyhjb25zdCBJbnRTaXplJik7
Ci0gICAgdm9pZCByZXNvbHZlTXVsdGlzYW1wbGVCdWZmZXIoKTsKLSAgICB2b2lkIGRlbGV0ZU11
bHRpc2FtcGxlUmVuZGVyQnVmZmVycygpOwotCi0gICAgYm9vbCBlbnN1cmVGcmFtZUJ1ZmZlcigp
OwotICAgIHZvaWQgZGVsZXRlUmVuZGVyQnVmZmVycygpOwotCi0gICAgUmVmUHRyPEdyYXBoaWNz
Q29udGV4dDNEPiBtX2NvbnRleHQ7Ci0gICAgUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFBy
b2dyYW0+IG1fdmFsaWRhdGVkUHJvZ3JhbTsKLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyUmVuZGVy
ZXI+IG1fY3VzdG9tRmlsdGVyUmVuZGVyZXI7Ci0gICAgSW50U2l6ZSBtX2NvbnRleHRTaXplOwot
Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBtX2lucHV0VGV4dHVyZTsKLSAgICBQbGF0Zm9ybTNET2Jq
ZWN0IG1fZnJhbWVCdWZmZXI7Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBtX2RlcHRoQnVmZmVyOwot
ICAgIFBsYXRmb3JtM0RPYmplY3QgbV9kZXN0VGV4dHVyZTsKLQotICAgIGJvb2wgbV90cmllZE11
bHRpc2FtcGxlQnVmZmVyOwotICAgIFBsYXRmb3JtM0RPYmplY3QgbV9tdWx0aXNhbXBsZUZyYW1l
QnVmZmVyOwotICAgIFBsYXRmb3JtM0RPYmplY3QgbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcjsK
LSAgICBQbGF0Zm9ybTNET2JqZWN0IG1fbXVsdGlzYW1wbGVEZXB0aEJ1ZmZlcjsKLX07Ci0KLX0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYg
VVNFKDNEX0dSQVBISUNTKQotCi0jZW5kaWYgLy8gRkVDdXN0b21GaWx0ZXJfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRp
b24uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3Bl
cmF0aW9uLmgKaW5kZXggZDY1ZDc0My4uMGM0MTljMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb24uaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbi5oCkBA
IC02NCwxMCArNjQsNiBAQCBwdWJsaWM6CiAgICAgICAgIENPTlRSQVNULAogICAgICAgICBCTFVS
LAogICAgICAgICBEUk9QX1NIQURPVywKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAg
IENVU1RPTSwKLSAgICAgICAgVkFMSURBVEVEX0NVU1RPTSwKLSNlbmRpZgogICAgICAgICBQQVNT
VEhST1VHSCwKICAgICAgICAgTk9ORQogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmNwcApp
bmRleCBhMjg1MzhhLi40Mjc5MTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3BlcmF0aW9ucy5jcHAKQEAgLTg3
LDE4ICs4Nyw2IEBAIGJvb2wgRmlsdGVyT3BlcmF0aW9uczo6b3BlcmF0aW9uc01hdGNoKGNvbnN0
IEZpbHRlck9wZXJhdGlvbnMmIG90aGVyKSBjb25zdAogICAgIHJldHVybiB0cnVlOwogfQogCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotYm9vbCBGaWx0ZXJPcGVyYXRpb25zOjpoYXNDdXN0b21G
aWx0ZXIoKSBjb25zdAotewotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9vcGVyYXRpb25z
LnNpemUoKTsgKytpKSB7Ci0gICAgICAgIEZpbHRlck9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSB0
eXBlID0gbV9vcGVyYXRpb25zLmF0KGkpLT50eXBlKCk7Ci0gICAgICAgIGlmICh0eXBlID09IEZp
bHRlck9wZXJhdGlvbjo6Q1VTVE9NIHx8IHR5cGUgPT0gRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFU
RURfQ1VTVE9NKQotICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotICAgIHJldHVybiBm
YWxzZTsKLX0KLSNlbmRpZgotCiBib29sIEZpbHRlck9wZXJhdGlvbnM6Omhhc1JlZmVyZW5jZUZp
bHRlcigpIGNvbnN0CiB7CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX29wZXJhdGlvbnMu
c2l6ZSgpOyArK2kpIHsKQEAgLTE0NCwxNCArMTMyLDYgQEAgRmlsdGVyT3V0c2V0cyBGaWx0ZXJP
cGVyYXRpb25zOjpvdXRzZXRzKCkgY29uc3QKICAgICAgICAgICAgIHRvdGFsT3V0c2V0cyArPSBv
dXRzZXRzOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0gICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAgICAgIGNh
c2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOiB7Ci0gICAgICAgICAgICAvLyBG
SVhNRTogTmVlZCB0byBpbmNsdWRlIHRoZSBmaWx0ZXIgbWFyZ2lucyBoZXJlLgotICAgICAgICAg
ICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDAwCi0gICAg
ICAgICAgICBicmVhazsKLSAgICAgICAgfQotI2VuZGlmCiAgICAgICAgIGRlZmF1bHQ6CiAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuaAppbmRleCA3N2Jm
M2U4Li5jMzc5OThlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuaApAQCAtNzEsOSArNzEsNiBAQCBw
dWJsaWM6CiAgICAgYm9vbCBoYXNGaWx0ZXJUaGF0QWZmZWN0c09wYWNpdHkoKSBjb25zdDsKICAg
ICBib29sIGhhc0ZpbHRlclRoYXRNb3Zlc1BpeGVscygpIGNvbnN0OwogCi0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotICAgIGJvb2wgaGFzQ3VzdG9tRmlsdGVyKCkgY29uc3Q7Ci0jZW5kaWYKICAg
ICBib29sIGhhc1JlZmVyZW5jZUZpbHRlcigpIGNvbnN0OwogcHJpdmF0ZToKICAgICBWZWN0b3I8
UmVmUHRyPEZpbHRlck9wZXJhdGlvbj4+IG1fb3BlcmF0aW9uczsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMWY2NGQ1Ny4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9maWx0ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAKKysrIC9k
ZXYvbnVsbApAQCAtMSw2OCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2Jl
IFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBk
aXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
Ci0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJ
R0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNp
bmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJW
YWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
clBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIK
LSNpbmNsdWRlICJMYXlvdXRTaXplLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOjpWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24o
UGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2YWxpZGF0ZWRQcm9ncmFt
LCAKLSAgICBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBzb3J0ZWRQYXJhbWV0ZXJz
LCB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1l
c2hUeXBlIG1lc2hUeXBlKQotICAgIDogRmlsdGVyT3BlcmF0aW9uKFZBTElEQVRFRF9DVVNUT00p
Ci0gICAgLCBtX3ZhbGlkYXRlZFByb2dyYW0odmFsaWRhdGVkUHJvZ3JhbSkKLSAgICAsIG1fcGFy
YW1ldGVycyhzb3J0ZWRQYXJhbWV0ZXJzKQotICAgICwgbV9tZXNoUm93cyhtZXNoUm93cykKLSAg
ICAsIG1fbWVzaENvbHVtbnMobWVzaENvbHVtbnMpCi0gICAgLCBtX21lc2hUeXBlKG1lc2hUeXBl
KQotewotfQotCi1WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb246On5WYWxpZGF0ZWRDdXN0
b21GaWx0ZXJPcGVyYXRpb24oKQotewotfQotCi1QYXNzUmVmUHRyPEZpbHRlck9wZXJhdGlvbj4g
VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOjpibGVuZChjb25zdCBGaWx0ZXJPcGVyYXRp
b24qLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmIHNpemUsIGJvb2wgYmxlbmRU
b1Bhc3N0aHJvdWdoKQotewotICAgIFVOVVNFRF9QQVJBTShwcm9ncmVzcyk7Ci0gICAgVU5VU0VE
X1BBUkFNKHNpemUpOwotICAgIFVOVVNFRF9QQVJBTShibGVuZFRvUGFzc3Rocm91Z2gpOwotCi0g
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIHRoaXM7Ci19Ci0KLX0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBlYWJiMGQ1Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgKKysr
IC9kZXYvbnVsbApAQCAtMSw5NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFk
b2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAg
ICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0g
KiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0K
LSNpZm5kZWYgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uX2gKLSNkZWZpbmUgVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNp
bmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0LmgiCi0jaW5jbHVkZSAiRmlsdGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAi
TGF5b3V0U2l6ZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW07Ci0KLWNsYXNzIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlv
biA6IHB1YmxpYyBGaWx0ZXJPcGVyYXRpb24gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVm
UHRyPFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gY3JlYXRlKFBhc3NSZWZQdHI8Q3Vz
dG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gdmFsaWRhdGVkUHJvZ3JhbSwgCi0gICAgICAgIGNv
bnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHNvcnRlZFBhcmFtZXRlcnMsIHVuc2lnbmVk
IG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVz
aFR5cGUpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFZhbGlkYXRlZEN1c3Rv
bUZpbHRlck9wZXJhdGlvbih2YWxpZGF0ZWRQcm9ncmFtLCBzb3J0ZWRQYXJhbWV0ZXJzLCBtZXNo
Um93cywgbWVzaENvbHVtbnMsIG1lc2hUeXBlKSk7Ci0gICAgfQotCi0gICAgdmlydHVhbCB+VmFs
aWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKCk7Ci0KLSAgICB2aXJ0dWFsIGJvb2wgYWZmZWN0
c09wYWNpdHkoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVhbCBib29sIG1vdmVz
UGl4ZWxzKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotICAgIHZpcnR1YWwgYm9vbCBibGVuZGlu
Z05lZWRzUmVuZGVyZXJTaXplKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotCi0gICAgdmlydHVh
bCBQYXNzUmVmUHRyPEZpbHRlck9wZXJhdGlvbj4gYmxlbmQoY29uc3QgRmlsdGVyT3BlcmF0aW9u
KiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmLCBib29sIGJsZW5kVG9Q
YXNzdGhyb3VnaCA9IGZhbHNlKTsKLQotICAgIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0q
IHZhbGlkYXRlZFByb2dyYW0oKSBjb25zdCB7IHJldHVybiBtX3ZhbGlkYXRlZFByb2dyYW0uZ2V0
KCk7IH0KLSAgICBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBwYXJhbWV0ZXJzKCkg
Y29uc3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJzOyB9Ci0KLSAgICB1bnNpZ25lZCBtZXNoUm93cygp
IGNvbnN0IHsgcmV0dXJuIG1fbWVzaFJvd3M7IH0KLSAgICB1bnNpZ25lZCBtZXNoQ29sdW1ucygp
IGNvbnN0IHsgcmV0dXJuIG1fbWVzaENvbHVtbnM7IH0KLQotICAgIEN1c3RvbUZpbHRlck1lc2hU
eXBlIG1lc2hUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoVHlwZTsgfQotCi1wcml2YXRlOgot
ICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEZpbHRlck9wZXJhdGlvbiYgbykgY29u
c3QKLSAgICB7Ci0gICAgICAgIGlmICghaXNTYW1lVHlwZShvKSkKLSAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKLQotICAgICAgICBjb25zdCBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24q
IG90aGVyID0gc3RhdGljX2Nhc3Q8Y29uc3QgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
Kj4oJm8pOwotICAgICAgICByZXR1cm4gbV92YWxpZGF0ZWRQcm9ncmFtLmdldCgpID09IG90aGVy
LT5tX3ZhbGlkYXRlZFByb2dyYW0uZ2V0KCkKLSAgICAgICAgICAgICYmIG1fbWVzaFJvd3MgPT0g
b3RoZXItPm1fbWVzaFJvd3MKLSAgICAgICAgICAgICYmIG1fbWVzaENvbHVtbnMgPT0gb3RoZXIt
Pm1fbWVzaENvbHVtbnMKLSAgICAgICAgICAgICYmIG1fbWVzaFR5cGUgPT0gb3RoZXItPm1fbWVz
aFR5cGUKLSAgICAgICAgICAgICYmIG1fcGFyYW1ldGVycyA9PSBvdGhlci0+bV9wYXJhbWV0ZXJz
OwotICAgIH0KLQotICAgIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbihQYXNzUmVmUHRy
PEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+LCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXJMaXN0JiwgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0b21G
aWx0ZXJNZXNoVHlwZSk7Ci0KLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3Jh
bT4gbV92YWxpZGF0ZWRQcm9ncmFtOwotCi0gICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCBt
X3BhcmFtZXRlcnM7Ci0gICAgdW5zaWduZWQgbV9tZXNoUm93czsKLSAgICB1bnNpZ25lZCBtX21l
c2hDb2x1bW5zOwotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1fbWVzaFR5cGU7Ci19OwotCi19
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0K
LSNlbmRpZiAvLyBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb25faApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy90ZXhtYXAvQ3VzdG9tRmls
dGVyVmFsaWRhdGVkUHJvZ3JhbVRleHR1cmVNYXBwZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy90ZXhtYXAvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3Jh
bVRleHR1cmVNYXBwZXIuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiZWQwZTZl
Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
dGV4bWFwL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW1UZXh0dXJlTWFwcGVyLmNwcAorKysg
L2Rldi9udWxsCkBAIC0xLDU4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRv
YmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAg
IGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAq
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQot
I2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoVEVY
VFVSRV9NQVBQRVIpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oIgot
Ci0jaW5jbHVkZSAiVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtLmgiCi0KLW5h
bWVzcGFjZSBXZWJDb3JlIHsKLQotUGxhdGZvcm1Db21waWxlZFByb2dyYW0qIEN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW06OnBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKCkKLXsKLSAgICBpZiAo
IW1fcGxhdGZvcm1Db21waWxlZFByb2dyYW0pCi0gICAgICAgIG1fcGxhdGZvcm1Db21waWxlZFBy
b2dyYW0gPSBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW06OmNyZWF0ZSgpLmxl
YWtSZWYoKTsKLSAgICByZXR1cm4gbV9wbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbTsKLX0KLQotdm9p
ZCBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpwbGF0Zm9ybUluaXQoKQotewotICAgIG1f
cGxhdGZvcm1Db21waWxlZFByb2dyYW0gPSAwOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW06OnBsYXRmb3JtRGVzdHJveSgpCi17Ci0gICAgZGVyZWZJZk5vdE51bGwobV9w
bGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQot
I2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKFRFWFRVUkVfTUFQUEVSKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy90ZXhtYXAv
VGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL3RleG1hcC9UZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21w
aWxlZFByb2dyYW0uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWZhNmNhNS4uMDAw
MDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL3RleG1h
cC9UZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0uaAorKysgL2Rldi9udWxsCkBA
IC0xLDcxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJ
bmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIu
Ci0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVS
IEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBUZXh0
dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW1faAotI2RlZmluZSBUZXh0dXJlTWFwcGVy
UGxhdGZvcm1Db21waWxlZFByb2dyYW1faAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2lu
Y2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgVGV4
dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtQ2xpZW50IHsKLXB1YmxpYzoKLSAgICB2
b2lkIHJlZigpIHsgcmVmRnJvbVZhbGlkYXRlZFByb2dyYW0oKTsgfQotICAgIHZvaWQgZGVyZWYo
KSB7IGRlcmVmRnJvbVZhbGlkYXRlZFByb2dyYW0oKTsgfQotCi0gICAgdmlydHVhbCB2b2lkIHJl
ZkZyb21WYWxpZGF0ZWRQcm9ncmFtKCkgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkZXJlZkZyb21W
YWxpZGF0ZWRQcm9ncmFtKCkgPSAwOwotfTsKLQotY2xhc3MgVGV4dHVyZU1hcHBlclBsYXRmb3Jt
Q29tcGlsZWRQcm9ncmFtIDogcHVibGljIFJlZkNvdW50ZWQ8VGV4dHVyZU1hcHBlclBsYXRmb3Jt
Q29tcGlsZWRQcm9ncmFtPiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8VGV4dHVy
ZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtPiBjcmVhdGUoKQotICAgIHsKLSAgICAgICAg
cmV0dXJuIGFkb3B0UmVmKG5ldyBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0o
KSk7Ci0gICAgfQotICAgIAotICAgIHZvaWQgc2V0Q2xpZW50KFBhc3NSZWZQdHI8VGV4dHVyZU1h
cHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtQ2xpZW50PiBjbGllbnQpIHsgbV9jbGllbnQgPSBj
bGllbnQ7IH0KLSAgICBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW1DbGllbnQq
IGNsaWVudCgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpZW50LmdldCgpOyB9Ci0KLXByaXZhdGU6Ci0g
ICAgVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKCkKLSAgICB7Ci0gICAgfQot
Ci0gICAgUmVmUHRyPFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbUNsaWVudD4g
bV9jbGllbnQ7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxl
ZFByb2dyYW1faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3B1L1RleHR1cmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1Rl
eHR1cmUuY3BwCmluZGV4IDY0MmIwZDUuLjMxYWFhNjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9UZXh0dXJlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAog
I2luY2x1ZGUgImNvbmZpZy5oIgogCi0jaWYgRU5BQkxFKEFDQ0VMRVJBVEVEXzJEX0NBTlZBUykg
fHwgRU5BQkxFKENTU19TSEFERVJTKQorI2lmIEVOQUJMRShBQ0NFTEVSQVRFRF8yRF9DQU5WQVMp
CiAKICNpbmNsdWRlICJUZXh0dXJlLmgiCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oCmluZGV4IDRjODBkMTMuLmEw
YTE3MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9UZXh0dXJlTWFwcGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
dGV4bWFwL1RleHR1cmVNYXBwZXIuaApAQCAtMzksNyArMzksNiBAQAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCiBjbGFzcyBCaXRtYXBUZXh0dXJlUG9vbDsKLWNsYXNzIEN1c3RvbUZpbHRlclByb2dy
YW07CiBjbGFzcyBHcmFwaGljc0xheWVyOwogY2xhc3MgVGV4dHVyZU1hcHBlcjsKIGNsYXNzIEZp
bHRlck9wZXJhdGlvbnM7CkBAIC0xNTksMTAgKzE1OCw2IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1
YWwgUGFzc1JlZlB0cjxCaXRtYXBUZXh0dXJlPiBhY3F1aXJlVGV4dHVyZUZyb21Qb29sKGNvbnN0
IEludFNpemUmKTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICB2aXJ0dWFsIHZvaWQg
cmVtb3ZlQ2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbShDdXN0b21GaWx0ZXJQcm9ncmFtKikgeyB9
Ci0jZW5kaWYKLQogICAgIHZvaWQgc2V0UGF0dGVyblRyYW5zZm9ybShjb25zdCBUcmFuc2Zvcm1h
dGlvbk1hdHJpeCYgcCkgeyBtX3BhdHRlcm5UcmFuc2Zvcm0gPSBwOyB9CiAgICAgdm9pZCBzZXRX
cmFwTW9kZShXcmFwTW9kZSBtKSB7IG1fd3JhcE1vZGUgPSBtOyB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJH
TC5jcHAKaW5kZXggODRmNzVmNy4uMDViODg0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5jcHAKQEAg
LTQyLDE1ICs0Miw2IEBACiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2VuZGlmCiAK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29tcGlsZWRQ
cm9ncmFtLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclJlbmRlcmVyLmgi
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIlZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2VuZGlmCi0KICNpZiAhVVNFKFRFWE1B
UF9PUEVOR0xfRVNfMikKIC8vIEZJWE1FOiBNb3ZlIHRvIEV4dGVuc2lvbnMzRC5oLgogI2RlZmlu
ZSBHTF9VTlNJR05FRF9JTlRfOF84XzhfOF9SRVYgMHg4MzY3CkBAIC00MTksMTAgKzQxMCw2IEBA
IHN0YXRpYyB1bnNpZ25lZCBnZXRQYXNzZXNSZXF1aXJlZEZvckZpbHRlcihGaWx0ZXJPcGVyYXRp
b246Ok9wZXJhdGlvblR5cGUgdHlwZSkKICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6QlJJR0hU
TkVTUzoKICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q09OVFJBU1Q6CiAgICAgY2FzZSBGaWx0
ZXJPcGVyYXRpb246Ok9QQUNJVFk6Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2Ug
RmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OlZBTElE
QVRFRF9DVVNUT006Ci0jZW5kaWYKICAgICAgICAgcmV0dXJuIDE7CiAgICAgY2FzZSBGaWx0ZXJP
cGVyYXRpb246OkJMVVI6CiAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkRST1BfU0hBRE9XOgpA
QCAtODcwLDY1ICs4NTcsNiBAQCB2b2lkIEJpdG1hcFRleHR1cmVHTDo6dXBkYXRlQ29udGVudHMo
SW1hZ2UqIGltYWdlLCBjb25zdCBJbnRSZWN0JiB0YXJnZXRSZWN0LCBjbwogICAgIHVwZGF0ZUNv
bnRlbnRzKGltYWdlRGF0YSwgdGFyZ2V0UmVjdCwgb2Zmc2V0LCBieXRlc1BlckxpbmUsIHVwZGF0
ZUNvbnRlbnRzRmxhZyk7CiB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi12b2lkIFRleHR1
cmVNYXBwZXJHTDo6cmVtb3ZlQ2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbShDdXN0b21GaWx0ZXJQ
cm9ncmFtKiBwcm9ncmFtKQotewotICAgIG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMucmVtb3ZlKHBy
b2dyYW0tPnByb2dyYW1JbmZvKCkpOwotfQotCi1ib29sIFRleHR1cmVNYXBwZXJHTDo6ZHJhd1Vz
aW5nQ3VzdG9tRmlsdGVyKEJpdG1hcFRleHR1cmUmIHRhcmdldCwgY29uc3QgQml0bWFwVGV4dHVy
ZSYgc291cmNlLCBjb25zdCBGaWx0ZXJPcGVyYXRpb24mIGZpbHRlcikKLXsKLSAgICBSZWZQdHI8
Q3VzdG9tRmlsdGVyUmVuZGVyZXI+IHJlbmRlcmVyOwotICAgIHN3aXRjaCAoZmlsdGVyLnR5cGUo
KSkgewotICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006IHsKLSAgICAgICAgLy8gV2Vi
S2l0MiBwaXBlbGluZSBpcyB1c2luZyB0aGUgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLCB0aGF0J3Mg
YmVjYXVzZSBvZiB0aGUgImRlLXNlcmlhbGl6YXRpb24iIHRoYXQKLSAgICAgICAgLy8gaGFwcGVu
cyBpbiBDb29yZGluYXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuCi0gICAgICAgIGNvbnN0IEN1
c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9tRmlsdGVyID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uKj4oJmZpbHRlcik7Ci0gICAgICAgIFJlZlB0cjxDdXN0b21GaWx0
ZXJQcm9ncmFtPiBwcm9ncmFtID0gY3VzdG9tRmlsdGVyLT5wcm9ncmFtKCk7Ci0gICAgICAgIHJl
bmRlcmVyID0gQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmNyZWF0ZShtX2NvbnRleHQzRCwgcHJvZ3Jh
bS0+cHJvZ3JhbVR5cGUoKSwgY3VzdG9tRmlsdGVyLT5wYXJhbWV0ZXJzKCksIAotICAgICAgICAg
ICAgY3VzdG9tRmlsdGVyLT5tZXNoUm93cygpLCBjdXN0b21GaWx0ZXItPm1lc2hDb2x1bW5zKCks
IGN1c3RvbUZpbHRlci0+bWVzaFR5cGUoKSk7Ci0gICAgICAgIEN1c3RvbUZpbHRlclByb2dyYW1N
YXA6OkFkZFJlc3VsdCByZXN1bHQgPSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmFkZChwcm9ncmFt
LT5wcm9ncmFtSW5mbygpLCBudWxscHRyKTsKLSAgICAgICAgaWYgKHJlc3VsdC5pc05ld0VudHJ5
KQotICAgICAgICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSA9IEN1c3RvbUZpbHRlckNvbXBp
bGVkUHJvZ3JhbTo6Y3JlYXRlKG1fY29udGV4dDNELCBwcm9ncmFtLT52ZXJ0ZXhTaGFkZXJTdHJp
bmcoKSwgcHJvZ3JhbS0+ZnJhZ21lbnRTaGFkZXJTdHJpbmcoKSwgcHJvZ3JhbS0+cHJvZ3JhbVR5
cGUoKSk7Ci0gICAgICAgIHJlbmRlcmVyLT5zZXRDb21waWxlZFByb2dyYW0ocmVzdWx0Lml0ZXJh
dG9yLT52YWx1ZSk7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLSAgICBjYXNlIEZpbHRlck9wZXJh
dGlvbjo6VkFMSURBVEVEX0NVU1RPTTogewotICAgICAgICAvLyBXZWJLaXQxIHVzZXMgdGhlIFZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi4KLSAgICAgICAgY29uc3QgVmFsaWRhdGVkQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uKiBjdXN0b21GaWx0ZXIgPSBzdGF0aWNfY2FzdDxjb25zdCBWYWxp
ZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qPigmZmlsdGVyKTsKLSAgICAgICAgUmVmUHRyPEN1
c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+IHByb2dyYW0gPSBjdXN0b21GaWx0ZXItPnZhbGlk
YXRlZFByb2dyYW0oKTsKLSAgICAgICAgcmVuZGVyZXIgPSBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6
Y3JlYXRlKG1fY29udGV4dDNELCBwcm9ncmFtLT5wcm9ncmFtSW5mbygpLnByb2dyYW1UeXBlKCks
IGN1c3RvbUZpbHRlci0+cGFyYW1ldGVycygpLAotICAgICAgICAgICAgY3VzdG9tRmlsdGVyLT5t
ZXNoUm93cygpLCBjdXN0b21GaWx0ZXItPm1lc2hDb2x1bW5zKCksIGN1c3RvbUZpbHRlci0+bWVz
aFR5cGUoKSk7Ci0gICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IGNv
bXBpbGVkUHJvZ3JhbTsKLSAgICAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1hcDo6QWRkUmVzdWx0
IHJlc3VsdCA9IG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMuYWRkKHByb2dyYW0tPnByb2dyYW1JbmZv
KCksIG51bGxwdHIpOwotICAgICAgICBpZiAocmVzdWx0LmlzTmV3RW50cnkpCi0gICAgICAgICAg
ICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOjpj
cmVhdGUobV9jb250ZXh0M0QsIHByb2dyYW0tPnZhbGlkYXRlZFZlcnRleFNoYWRlcigpLCBwcm9n
cmFtLT52YWxpZGF0ZWRGcmFnbWVudFNoYWRlcigpLCBwcm9ncmFtLT5wcm9ncmFtSW5mbygpLnBy
b2dyYW1UeXBlKCkpOwotICAgICAgICByZW5kZXJlci0+c2V0Q29tcGlsZWRQcm9ncmFtKHJlc3Vs
dC5pdGVyYXRvci0+dmFsdWUpOwotICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgZGVmYXVsdDoK
LSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAg
ICB9Ci0gICAgaWYgKCFyZW5kZXJlciB8fCAhcmVuZGVyZXItPnByZXBhcmVGb3JEcmF3aW5nKCkp
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBzdGF0aWNfY2FzdDxCaXRtYXBUZXh0dXJlR0wm
Pih0YXJnZXQpLmluaXRpYWxpemVEZXB0aEJ1ZmZlcigpOwotICAgIG1fY29udGV4dDNELT5lbmFi
bGUoR3JhcGhpY3NDb250ZXh0M0Q6OkJMRU5EKTsKLSAgICBtX2NvbnRleHQzRC0+YmxlbmRGdW5j
KEdyYXBoaWNzQ29udGV4dDNEOjpPTkUsIEdyYXBoaWNzQ29udGV4dDNEOjpPTkVfTUlOVVNfU1JD
X0FMUEhBKTsKLSAgICBtX2NvbnRleHQzRC0+ZW5hYmxlKEdyYXBoaWNzQ29udGV4dDNEOjpERVBU
SF9URVNUKTsKLSAgICBtX2NvbnRleHQzRC0+ZGVwdGhGdW5jKEdyYXBoaWNzQ29udGV4dDNEOjpM
RVNTKTsKLSAgICBtX2NvbnRleHQzRC0+Y2xlYXJEZXB0aCgxKTsKLSAgICBtX2NvbnRleHQzRC0+
ZGVwdGhNYXNrKDEpOwotICAgIG1fY29udGV4dDNELT5jbGVhckNvbG9yKDAsIDAsIDAsIDApOwot
ICAgIG1fY29udGV4dDNELT5jbGVhcihHcmFwaGljc0NvbnRleHQzRDo6Q09MT1JfQlVGRkVSX0JJ
VCB8IEdyYXBoaWNzQ29udGV4dDNEOjpERVBUSF9CVUZGRVJfQklUKTsKLSAgICByZW5kZXJlci0+
ZHJhdyhzdGF0aWNfY2FzdDxjb25zdCBCaXRtYXBUZXh0dXJlR0wmPihzb3VyY2UpLmlkKCksIHNv
dXJjZS5zaXplKCkpOwotICAgIG1fY29udGV4dDNELT5kaXNhYmxlKEdyYXBoaWNzQ29udGV4dDNE
OjpERVBUSF9URVNUKTsKLSAgICBtX2NvbnRleHQzRC0+ZGlzYWJsZShHcmFwaGljc0NvbnRleHQz
RDo6QkxFTkQpOwotICAgIG1fY29udGV4dDNELT5kZXB0aE1hc2soMCk7Ci0gICAgcmV0dXJuIHRy
dWU7Ci19Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKIHZvaWQgVGV4dHVyZU1h
cHBlckdMOjpkcmF3RmlsdGVyZWQoY29uc3QgQml0bWFwVGV4dHVyZSYgc2FtcGxlciwgY29uc3Qg
Qml0bWFwVGV4dHVyZSogY29udGVudFRleHR1cmUsIGNvbnN0IEZpbHRlck9wZXJhdGlvbiYgZmls
dGVyLCBpbnQgcGFzcykKIHsKQEAgLTk0MiwxNSArODcwLDYgQEAgdm9pZCBUZXh0dXJlTWFwcGVy
R0w6OmRyYXdGaWx0ZXJlZChjb25zdCBCaXRtYXBUZXh0dXJlJiBzYW1wbGVyLCBjb25zdCBCaXRt
YXBUZXgKICAgICBkcmF3VGV4dHVyZWRRdWFkV2l0aFByb2dyYW0ocHJvZ3JhbS5nZXQoKSwgc3Rh
dGljX2Nhc3Q8Y29uc3QgQml0bWFwVGV4dHVyZUdMJj4oc2FtcGxlcikuaWQoKSwgMCwgSW50U2l6
ZSgxLCAxKSwgdGFyZ2V0UmVjdCwgVHJhbnNmb3JtYXRpb25NYXRyaXgoKSwgMSk7CiB9CiAKLXN0
YXRpYyBib29sIGlzQ3VzdG9tRmlsdGVyKEZpbHRlck9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSB0
eXBlKQotewotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICByZXR1cm4gdHlwZSA9PSBGaWx0
ZXJPcGVyYXRpb246OkNVU1RPTSB8fCB0eXBlID09IEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVE
X0NVU1RPTTsKLSNlbHNlCi0gICAgcmV0dXJuIGZhbHNlOwotI2VuZGlmCi19Ci0KIFBhc3NSZWZQ
dHI8Qml0bWFwVGV4dHVyZT4gQml0bWFwVGV4dHVyZUdMOjphcHBseUZpbHRlcnMoVGV4dHVyZU1h
cHBlciogdGV4dHVyZU1hcHBlciwgY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYgZmlsdGVycykKIHsK
ICAgICBpZiAoZmlsdGVycy5pc0VtcHR5KCkpCkBAIC05NjgsMjQgKzg4NywxNSBAQCBQYXNzUmVm
UHRyPEJpdG1hcFRleHR1cmU+IEJpdG1hcFRleHR1cmVHTDo6YXBwbHlGaWx0ZXJzKFRleHR1cmVN
YXBwZXIqIHRleHR1cmVNYQogICAgICAgICBSZWZQdHI8RmlsdGVyT3BlcmF0aW9uPiBmaWx0ZXIg
PSBmaWx0ZXJzLm9wZXJhdGlvbnMoKVtpXTsKICAgICAgICAgQVNTRVJUKGZpbHRlcik7CiAKLSAg
ICAgICAgYm9vbCBjdXN0b20gPSBpc0N1c3RvbUZpbHRlcihmaWx0ZXItPnR5cGUoKSk7Ci0KICAg
ICAgICAgaW50IG51bVBhc3NlcyA9IGdldFBhc3Nlc1JlcXVpcmVkRm9yRmlsdGVyKGZpbHRlci0+
dHlwZSgpKTsKICAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCBudW1QYXNzZXM7ICsraikgewog
ICAgICAgICAgICAgYm9vbCBsYXN0ID0gKGkgPT0gZmlsdGVycy5zaXplKCkgLSAxKSAmJiAoaiA9
PSBudW1QYXNzZXMgLSAxKTsKLSAgICAgICAgICAgIGlmIChjdXN0b20gfHwgIWxhc3QpIHsKKyAg
ICAgICAgICAgIGlmICghbGFzdCkgewogICAgICAgICAgICAgICAgIGlmICghaW50ZXJtZWRpYXRl
U3VyZmFjZSkKICAgICAgICAgICAgICAgICAgICAgaW50ZXJtZWRpYXRlU3VyZmFjZSA9IHRleG1h
cEdMLT5hY3F1aXJlVGV4dHVyZUZyb21Qb29sKGNvbnRlbnRTaXplKCkpOwogICAgICAgICAgICAg
ICAgIHRleG1hcEdMLT5iaW5kU3VyZmFjZShpbnRlcm1lZGlhdGVTdXJmYWNlLmdldCgpKTsKICAg
ICAgICAgICAgIH0KIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgICAgIGlmIChj
dXN0b20pIHsKLSAgICAgICAgICAgICAgICBpZiAodGV4bWFwR0wtPmRyYXdVc2luZ0N1c3RvbUZp
bHRlcigqaW50ZXJtZWRpYXRlU3VyZmFjZS5nZXQoKSwgKnJlc3VsdFN1cmZhY2UuZ2V0KCksICpm
aWx0ZXIpKQotICAgICAgICAgICAgICAgICAgICBzdGQ6OnN3YXAocmVzdWx0U3VyZmFjZSwgaW50
ZXJtZWRpYXRlU3VyZmFjZSk7Ci0gICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAg
ICB9Ci0jZW5kaWYKICAgICAgICAgICAgIGlmIChsYXN0KSB7CiAgICAgICAgICAgICAgICAgdG9C
aXRtYXBUZXh0dXJlR0wocmVzdWx0U3VyZmFjZS5nZXQoKSktPm1fZmlsdGVySW5mbyA9IEJpdG1h
cFRleHR1cmVHTDo6RmlsdGVySW5mbyhmaWx0ZXIsIGosIHNwYXJlU3VyZmFjZSk7CiAgICAgICAg
ICAgICAgICAgYnJlYWs7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckdMLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckdMLmgKaW5kZXggNjFjYTE0YS4uMDgxNDAzZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1
cmVNYXBwZXJHTC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9UZXh0dXJlTWFwcGVyR0wuaApAQCAtMjIsNyArMjIsNiBAQAogCiAjaWYgVVNFKEFDQ0VMRVJB
VEVEX0NPTVBPU0lUSU5HKSAmJiBVU0UoVEVYVFVSRV9NQVBQRVIpCiAKLSNpbmNsdWRlICJDdXN0
b21GaWx0ZXJQcm9ncmFtSW5mby5oIgogI2luY2x1ZGUgIkZpbHRlck9wZXJhdGlvbi5oIgogI2lu
Y2x1ZGUgIkZsb2F0UXVhZC5oIgogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCkBAIC0z
Miw4ICszMSw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgQ3VzdG9tRmlsdGVy
UHJvZ3JhbTsKLWNsYXNzIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbTsKIGNsYXNzIFRleHR1
cmVNYXBwZXJHTERhdGE7CiBjbGFzcyBUZXh0dXJlTWFwcGVyU2hhZGVyUHJvZ3JhbTsKIGNsYXNz
IEZpbHRlck9wZXJhdGlvbjsKQEAgLTczLDEwICs3MCw2IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUo
Q1NTX0ZJTFRFUlMpCiAgICAgdm9pZCBkcmF3RmlsdGVyZWQoY29uc3QgQml0bWFwVGV4dHVyZSYg
c291cmNlVGV4dHVyZSwgY29uc3QgQml0bWFwVGV4dHVyZSogY29udGVudFRleHR1cmUsIGNvbnN0
IEZpbHRlck9wZXJhdGlvbiYsIGludCBwYXNzKTsKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICBib29sIGRyYXdVc2luZ0N1c3RvbUZpbHRlcihCaXRtYXBUZXh0dXJlJiB0YXJn
ZXRUZXh0dXJlLCBjb25zdCBCaXRtYXBUZXh0dXJlJiBzb3VyY2VUZXh0dXJlLCBjb25zdCBGaWx0
ZXJPcGVyYXRpb24mKTsKLSAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlQ2FjaGVkQ3VzdG9tRmlsdGVy
UHJvZ3JhbShDdXN0b21GaWx0ZXJQcm9ncmFtKik7Ci0jZW5kaWYKIAogICAgIHZvaWQgc2V0RW5h
YmxlRWRnZURpc3RhbmNlQW50aWFsaWFzaW5nKGJvb2wgZW5hYmxlZCkgeyBtX2VuYWJsZUVkZ2VE
aXN0YW5jZUFudGlhbGlhc2luZyA9IGVuYWJsZWQ7IH0KIApAQCAtMTQ0LDExICsxMzcsNiBAQCBw
cml2YXRlOgogICAgIENsaXBTdGFjayBtX2NsaXBTdGFjazsKICAgICBib29sIG1fZW5hYmxlRWRn
ZURpc3RhbmNlQW50aWFsaWFzaW5nOwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIHR5
cGVkZWYgSGFzaE1hcDxDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbywgUmVmUHRyPEN1c3RvbUZpbHRl
ckNvbXBpbGVkUHJvZ3JhbT4gPiBDdXN0b21GaWx0ZXJQcm9ncmFtTWFwOwotICAgIEN1c3RvbUZp
bHRlclByb2dyYW1NYXAgbV9jdXN0b21GaWx0ZXJQcm9ncmFtczsKLSNlbmRpZgotCiAgICAgZnJp
ZW5kIGNsYXNzIEJpdG1hcFRleHR1cmVHTDsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db21wb3NpdGluZ0Nvb3Jk
aW5hdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29y
ZGluYXRlZC9Db21wb3NpdGluZ0Nvb3JkaW5hdG9yLmNwcAppbmRleCAxOGVjNWVhLi4yYjViMTE5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29v
cmRpbmF0ZWQvQ29tcG9zaXRpbmdDb29yZGluYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0NvbXBvc2l0aW5nQ29vcmRpbmF0
b3IuY3BwCkBAIC0xNTksMTEgKzE1OSw2IEBAIHZvaWQgQ29tcG9zaXRpbmdDb29yZGluYXRvcjo6
Y2xlYXJQZW5kaW5nU3RhdGVDaGFuZ2VzKCkKIAogICAgIG1fc3RhdGUudXBkYXRlQXRsYXNlc1Rv
Q3JlYXRlLmNsZWFyKCk7CiAgICAgbV9zdGF0ZS51cGRhdGVBdGxhc2VzVG9SZW1vdmUuY2xlYXIo
KTsKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBtX3N0YXRlLmN1c3RvbUZpbHRlcnNU
b0NyZWF0ZS5jbGVhcigpOwotICAgIG1fc3RhdGUuY3VzdG9tRmlsdGVyc1RvUmVtb3ZlLmNsZWFy
KCk7Ci0jZW5kaWYKIH0KIAogdm9pZCBDb21wb3NpdGluZ0Nvb3JkaW5hdG9yOjppbml0aWFsaXpl
Um9vdENvbXBvc2l0aW5nTGF5ZXJJZk5lZWRlZCgpCkBAIC0xOTEsNyArMTg2LDYgQEAgdm9pZCBD
b21wb3NpdGluZ0Nvb3JkaW5hdG9yOjpjcmVhdGVSb290TGF5ZXIoY29uc3QgSW50U2l6ZSYgc2l6
ZSkKIHZvaWQgQ29tcG9zaXRpbmdDb29yZGluYXRvcjo6c3luY0xheWVyU3RhdGUoQ29vcmRpbmF0
ZWRMYXllcklEIGlkLCBDb29yZGluYXRlZEdyYXBoaWNzTGF5ZXJTdGF0ZSYgc3RhdGUpCiB7CiAg
ICAgbV9zaG91bGRTeW5jRnJhbWUgPSB0cnVlOwotICAgIG1fY2xpZW50LT53aWxsU3luY0xheWVy
U3RhdGUoc3RhdGUpOwogICAgIG1fc3RhdGUubGF5ZXJzVG9VcGRhdGUuYXBwZW5kKHN0ZDo6bWFr
ZV9wYWlyKGlkLCBzdGF0ZSkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29tcG9zaXRpbmdDb29yZGluYXRvci5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nv
bXBvc2l0aW5nQ29vcmRpbmF0b3IuaAppbmRleCA2ZmQxOWZkLi44NGI4NTMyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29t
cG9zaXRpbmdDb29yZGluYXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL3RleG1hcC9jb29yZGluYXRlZC9Db21wb3NpdGluZ0Nvb3JkaW5hdG9yLmgKQEAgLTM5LDEw
ICszOSw2IEBACiAjaW5jbHVkZSAiVGltZXIuaCIKICNpbmNsdWRlICJVcGRhdGVBdGxhcy5oIgog
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkZpbHRlck9wZXJhdGlvbnMuaCIK
LSNlbmRpZgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFBhZ2U7CkBAIC02MCw3ICs1
Niw2IEBAIHB1YmxpYzoKICAgICBjbGFzcyBDbGllbnQgewogICAgIHB1YmxpYzoKICAgICAgICAg
dmlydHVhbCB2b2lkIGRpZEZsdXNoUm9vdExheWVyKCkgPSAwOwotICAgICAgICB2aXJ0dWFsIHZv
aWQgd2lsbFN5bmNMYXllclN0YXRlKENvb3JkaW5hdGVkR3JhcGhpY3NMYXllclN0YXRlJikgPSAw
OwogICAgICAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5Rmx1c2hSZXF1aXJlZCgpID0gMDsKICAgICAg
ICAgdmlydHVhbCB2b2lkIGNvbW1pdFNjZW5lU3RhdGUoY29uc3QgQ29vcmRpbmF0ZWRHcmFwaGlj
c1N0YXRlJikgPSAwOwogICAgICAgICB2aXJ0dWFsIHZvaWQgcGFpbnRMYXllckNvbnRlbnRzKGNv
bnN0IEdyYXBoaWNzTGF5ZXIqLCBHcmFwaGljc0NvbnRleHQmLCBjb25zdCBJbnRSZWN0JiBjbGlw
UmVjdCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
dGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRp
bmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMTdhNzE4Mi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaAor
KysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIg
QWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2lmbmRlZiBDb29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbl9oCi0jZGVmaW5lIENv
b3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLQotbmFtZXNwYWNlIFdlYkNv
cmUgewotCi0vLyBUaGlzIGNsYXNzIGlzIG9ubHkgYWRkaW5nIHRoZSBwcm9ncmFtSWQgb24gdG9w
IG9mIEN1c3RvbUZpbHRlck9wZXJhdGlvbi4gVGhlIGFyZ3VtZW50IGRlY29kZXIgaGFzIG5vCi0v
LyBjb250ZXh0LCBzbyB3ZSBjYW5ub3Qgc2VhcmNoIGluIG91ciBjYWNoZWQgQ3VzdG9tRmlsdGVy
UHJvZ3JhbXMgd2hpbGUgZGVjb2RpbmcuIEluIHRoYXQgY2FzZQotLy8gaXQgd2lsbCBqdXN0IHN0
b3JlIHRoZSBwcm9ncmFtSWQgYW5kIG5vIEN1c3RvbUZpbHRlclByb2dyYW0gaW5zdGFuY2UuIFRo
ZSByZWNlaXZlciBpcyBzdXBwb3NlZCB0bwotLy8gaXRlcmF0ZSBvbiB0aGlzIHN0cnVjdHVyZSBh
bmQgaW5qZWN0IHRoZSByaWdodCBDdXN0b21GaWx0ZXJQcm9ncmFtcy4KLQotY2xhc3MgQ29vcmRp
bmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24gOiBwdWJsaWMgQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDb29yZGluYXRlZEN1c3RvbUZpbHRl
ck9wZXJhdGlvbj4gY3JlYXRlKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3Jh
bSwgaW50IHByb2dyYW1JRCwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgc29ydGVk
UGFyYW1ldGVycywgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zKQotICAg
IHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDb29yZGluYXRlZEN1c3RvbUZpbHRlck9w
ZXJhdGlvbihwcm9ncmFtLCBwcm9ncmFtSUQsIHNvcnRlZFBhcmFtZXRlcnMsIG1lc2hSb3dzLCBt
ZXNoQ29sdW1ucykpOwotICAgIH0KLQotICAgIGludCBwcm9ncmFtSUQoKSBjb25zdCB7IHJldHVy
biBtX3Byb2dyYW1JRDsgfQotCi1wcml2YXRlOgotICAgIENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3JhbSwgaW50IHBy
b2dyYW1JRCwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgc29ydGVkUGFyYW1ldGVy
cywgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zKQotICAgICAgICA6IEN1
c3RvbUZpbHRlck9wZXJhdGlvbihwcm9ncmFtLCBzb3J0ZWRQYXJhbWV0ZXJzLCBtZXNoUm93cywg
bWVzaENvbHVtbnMpCi0gICAgICAgICwgbV9wcm9ncmFtSUQocHJvZ3JhbUlEKQotICAgIHsKLSAg
ICB9Ci0KLSAgICBpbnQgbV9wcm9ncmFtSUQ7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBDb29yZGluYXRl
ZEN1c3RvbUZpbHRlck9wZXJhdGlvbl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQ
cm9ncmFtLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRp
bmF0ZWQvQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQcm9ncmFtLmgKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDIzNGFhNTYuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJv
Z3JhbS5oCisrKyAvZGV2L251bGwKQEAgLTEsNjcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMiBDb21wYW55IDEwMCwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgot
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwot
Ci0jaWZuZGVmIENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCi0jZGVmaW5lIENvb3Jk
aW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCi0KLSNpZiBVU0UoQ09PUkRJTkFURURfR1JBUEhJ
Q1MpICYmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFu
dHMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtLmgiCi0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotY2xhc3MgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQcm9ncmFtIDogcHVibGljIEN1
c3RvbUZpbHRlclByb2dyYW0gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPENvb3Jk
aW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbT4gY3JlYXRlKGNvbnN0IFN0cmluZyYgdmVydGV4U2hh
ZGVyU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZyYWdtZW50U2hhZGVyU3RyaW5nLCBDdXN0b21GaWx0
ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNl
dHRpbmdzJiBtaXhTZXR0aW5ncywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAg
ewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJv
Z3JhbSh2ZXJ0ZXhTaGFkZXJTdHJpbmcsIGZyYWdtZW50U2hhZGVyU3RyaW5nLCBwcm9ncmFtVHlw
ZSwgbWl4U2V0dGluZ3MsIG1lc2hUeXBlKSk7Ci0gICAgfQotCi0gICAgdmlydHVhbCBib29sIGlz
TG9hZGVkKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsgfQotCi1wcm90ZWN0ZWQ6Ci0g
ICAgdmlydHVhbCBTdHJpbmcgdmVydGV4U2hhZGVyU3RyaW5nKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gbV92ZXJ0ZXhTaGFkZXJTdHJpbmc7IH0KLSAgICB2aXJ0dWFsIFN0cmluZyBmcmFnbWVu
dFNoYWRlclN0cmluZygpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fZnJhZ21lbnRTaGFkZXJT
dHJpbmc7IH0KLQotICAgIHZpcnR1YWwgdm9pZCB3aWxsSGF2ZUNsaWVudHMoKSBvdmVycmlkZSB7
IG5vdGlmeUNsaWVudHMoKTsgfQotICAgIHZpcnR1YWwgdm9pZCBkaWRSZW1vdmVMYXN0Q2xpZW50
KCkgb3ZlcnJpZGUgeyB9Ci0KLXByaXZhdGU6Ci0gICAgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQ
cm9ncmFtKGNvbnN0IFN0cmluZyYgdmVydGV4U2hhZGVyU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZy
YWdtZW50U2hhZGVyU3RyaW5nLCBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSwg
Y29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiBtaXhTZXR0aW5ncywgQ3VzdG9t
RmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAgICAgIDogQ3VzdG9tRmlsdGVyUHJvZ3JhbShw
cm9ncmFtVHlwZSwgbWl4U2V0dGluZ3MsIG1lc2hUeXBlKQotICAgICAgICAsIG1fdmVydGV4U2hh
ZGVyU3RyaW5nKHZlcnRleFNoYWRlclN0cmluZykKLSAgICAgICAgLCBtX2ZyYWdtZW50U2hhZGVy
U3RyaW5nKGZyYWdtZW50U2hhZGVyU3RyaW5nKQotICAgIHsKLSAgICB9Ci0KLSAgICBTdHJpbmcg
bV92ZXJ0ZXhTaGFkZXJTdHJpbmc7Ci0gICAgU3RyaW5nIG1fZnJhZ21lbnRTaGFkZXJTdHJpbmc7
Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBVU0UoQ09PUkRJTkFU
RURfR1JBUEhJQ1MpICYmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIENvb3JkaW5h
dGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5l
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRl
ZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCmluZGV4IDg2NjI3ODguLjM3Y2M1ZDQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGlu
YXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2Nl
bmUuY3BwCkBAIC0zMiwxMyArMzIsNiBAQAogI2luY2x1ZGUgPHd0Zi9BdG9taWNzLmg+CiAjaW5j
bHVkZSA8d3RmL01haW5UaHJlYWQuaD4KIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNs
dWRlICJDb29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkNvb3Jk
aW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dy
YW0uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIgotI2VuZGlmCi0KIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmRpc3Bh
dGNoT25NYWluVGhyZWFkKGNvbnN0IEZ1bmN0aW9uPHZvaWQoKT4mIGZ1bmN0aW9uKQpAQCAtMjI5
LDU0ICsyMjIsMTAgQEAgdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnNldExheWVyRmls
dGVyc0lmTmVlZGVkKFRleHR1cmVNYXBwZXJMYXllciogbGF5ZXIKICAgICBpZiAoIXN0YXRlLmZp
bHRlcnNDaGFuZ2VkKQogICAgICAgICByZXR1cm47CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0gICAgaW5qZWN0Q2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbXMoc3RhdGUuZmlsdGVycyk7Ci0j
ZW5kaWYKICAgICBsYXllci0+c2V0RmlsdGVycyhzdGF0ZS5maWx0ZXJzKTsKIH0KICNlbmRpZgog
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6
OnN5bmNDdXN0b21GaWx0ZXJQcm9ncmFtcyhjb25zdCBDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUm
IHN0YXRlKQotewotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3RhdGUuY3VzdG9tRmlsdGVy
c1RvQ3JlYXRlLnNpemUoKTsgKytpKQotICAgICAgICBjcmVhdGVDdXN0b21GaWx0ZXJQcm9ncmFt
KHN0YXRlLmN1c3RvbUZpbHRlcnNUb0NyZWF0ZVtpXS5maXJzdCwgc3RhdGUuY3VzdG9tRmlsdGVy
c1RvQ3JlYXRlW2ldLnNlY29uZCk7Ci0KLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0YXRl
LmN1c3RvbUZpbHRlcnNUb1JlbW92ZS5zaXplKCk7ICsraSkKLSAgICAgICAgcmVtb3ZlQ3VzdG9t
RmlsdGVyUHJvZ3JhbShzdGF0ZS5jdXN0b21GaWx0ZXJzVG9SZW1vdmVbaV0pOwotfQotCi12b2lk
IENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6aW5qZWN0Q2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3Jh
bXMoY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYgZmlsdGVycykgY29uc3QKLXsKLSAgICBmb3IgKHNp
emVfdCBpID0gMDsgaSA8IGZpbHRlcnMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgRmlsdGVyT3Bl
cmF0aW9uKiBvcGVyYXRpb24gPSBmaWx0ZXJzLm9wZXJhdGlvbnMoKS5hdChpKS5nZXQoKTsKLSAg
ICAgICAgaWYgKG9wZXJhdGlvbi0+dHlwZSgpICE9IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NKQot
ICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJP
cGVyYXRpb24qIGN1c3RvbU9wZXJhdGlvbiA9IHN0YXRpY19jYXN0PENvb3JkaW5hdGVkQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uKj4ob3BlcmF0aW9uKTsKLSAgICAgICAgQVNTRVJUKCFjdXN0b21PcGVy
YXRpb24tPnByb2dyYW0oKSk7Ci0gICAgICAgIEN1c3RvbUZpbHRlclByb2dyYW1NYXA6OmNvbnN0
X2l0ZXJhdG9yIGl0ZXIgPSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmZpbmQoY3VzdG9tT3BlcmF0
aW9uLT5wcm9ncmFtSUQoKSk7Ci0gICAgICAgIEFTU0VSVChpdGVyICE9IG1fY3VzdG9tRmlsdGVy
UHJvZ3JhbXMuZW5kKCkpOwotICAgICAgICBjdXN0b21PcGVyYXRpb24tPnNldFByb2dyYW0oaXRl
ci0+dmFsdWUuZ2V0KCkpOwotICAgIH0KLX0KLQotdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2Nl
bmU6OmNyZWF0ZUN1c3RvbUZpbHRlclByb2dyYW0oaW50IGlkLCBjb25zdCBDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8pCi17Ci0gICAgQVNTRVJUKCFtX2N1c3RvbUZpbHRlclBy
b2dyYW1zLmNvbnRhaW5zKGlkKSk7Ci0gICAgbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5zZXQoaWQs
IENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbTo6Y3JlYXRlKHByb2dyYW1JbmZvLnZlcnRl
eFNoYWRlclN0cmluZygpLCBwcm9ncmFtSW5mby5mcmFnbWVudFNoYWRlclN0cmluZygpLCBwcm9n
cmFtSW5mby5wcm9ncmFtVHlwZSgpLCBwcm9ncmFtSW5mby5taXhTZXR0aW5ncygpLCBwcm9ncmFt
SW5mby5tZXNoVHlwZSgpKSk7Ci19Ci0KLXZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpy
ZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtKGludCBpZCkKLXsKLSAgICBDdXN0b21GaWx0ZXJQcm9n
cmFtTWFwOjppdGVyYXRvciBpdGVyID0gbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5maW5kKGlkKTsK
LSAgICBBU1NFUlQoaXRlciAhPSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmVuZCgpKTsKLSAgICBp
ZiAobV90ZXh0dXJlTWFwcGVyKQotICAgICAgICBtX3RleHR1cmVNYXBwZXItPnJlbW92ZUNhY2hl
ZEN1c3RvbUZpbHRlclByb2dyYW0oaXRlci0+dmFsdWUuZ2V0KCkpOwotICAgIG1fY3VzdG9tRmls
dGVyUHJvZ3JhbXMucmVtb3ZlKGl0ZXIpOwotfQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVS
UykKLQogdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnNldExheWVyU3RhdGUoQ29vcmRp
bmF0ZWRMYXllcklEIGlkLCBjb25zdCBDb29yZGluYXRlZEdyYXBoaWNzTGF5ZXJTdGF0ZSYgbGF5
ZXJTdGF0ZSkKIHsKICAgICBBU1NFUlQobV9yb290TGF5ZXJJRCAhPSBJbnZhbGlkQ29vcmRpbmF0
ZWRMYXllcklEKTsKQEAgLTYxOSw5ICs1NjgsNiBAQCB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NT
Y2VuZTo6Y29tbWl0U2NlbmVTdGF0ZShjb25zdCBDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUmCiAK
ICAgICBzeW5jSW1hZ2VCYWNraW5ncyhzdGF0ZSk7CiAgICAgc3luY1VwZGF0ZUF0bGFzZXMoc3Rh
dGUpOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBzeW5jQ3VzdG9tRmlsdGVyUHJvZ3Jh
bXMoc3RhdGUpOwotI2VuZGlmCiAKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0YXRlLmxh
eWVyc1RvVXBkYXRlLnNpemUoKTsgKytpKQogICAgICAgICBzZXRMYXllclN0YXRlKHN0YXRlLmxh
eWVyc1RvVXBkYXRlW2ldLmZpcnN0LCBzdGF0ZS5sYXllcnNUb1VwZGF0ZVtpXS5zZWNvbmQpOwpA
QCAtNzE1LDE3ICs2NjEsNiBAQCB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6c2V0TGF5
ZXJBbmltYXRpb25zSWZOZWVkZWQoVGV4dHVyZU1hcHBlckxheWVyKiBsYQogICAgIGlmICghc3Rh
dGUuYW5pbWF0aW9uc0NoYW5nZWQpCiAgICAgICAgIHJldHVybjsKIAotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0YXRlLmFuaW1hdGlvbnMuYW5p
bWF0aW9ucygpLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGNvbnN0IEtleWZyYW1lVmFsdWVMaXN0
JiBrZXlmcmFtZXMgPSBzdGF0ZS5hbmltYXRpb25zLmFuaW1hdGlvbnMoKS5hdChpKS5rZXlmcmFt
ZXMoKTsKLSAgICAgICAgaWYgKGtleWZyYW1lcy5wcm9wZXJ0eSgpICE9IEFuaW1hdGVkUHJvcGVy
dHlXZWJraXRGaWx0ZXIpCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgZm9yIChzaXpl
X3QgaiA9IDA7IGogPCBrZXlmcmFtZXMuc2l6ZSgpOyArK2opIHsKLSAgICAgICAgICAgIGNvbnN0
IEZpbHRlckFuaW1hdGlvblZhbHVlJiBmaWx0ZXJWYWx1ZSA9IHN0YXRpY19jYXN0PGNvbnN0IEZp
bHRlckFuaW1hdGlvblZhbHVlJj4oa2V5ZnJhbWVzLmF0KGopKTsKLSAgICAgICAgICAgIGluamVj
dENhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zKGZpbHRlclZhbHVlLnZhbHVlKCkpOwotICAgICAg
ICB9Ci0gICAgfQotI2VuZGlmCiAgICAgbGF5ZXItPnNldEFuaW1hdGlvbnMoc3RhdGUuYW5pbWF0
aW9ucyk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdy
YXBoaWNzU2NlbmUuaAppbmRleCAwN2NkNTYzLi4wMjVkZDFmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRH
cmFwaGljc1NjZW5lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4
bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oCkBAIC00Nyw4ICs0Nyw2
IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENvb3JkaW5hdGVkQmFja2luZ1N0b3Jl
OwotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbTsKLWNsYXNzIEN1c3RvbUZpbHRlclByb2dyYW1J
bmZvOwogCiBjbGFzcyBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmVDbGllbnQgewogcHVibGljOgpA
QCAtMTE1LDEzICsxMTMsNiBAQCBwcml2YXRlOgogICAgIHZvaWQgY2xlYXJJbWFnZUJhY2tpbmdD
b250ZW50cyhDb29yZGluYXRlZEltYWdlQmFja2luZ0lEKTsKICAgICB2b2lkIHJlbW92ZUltYWdl
QmFja2luZyhDb29yZGluYXRlZEltYWdlQmFja2luZ0lEKTsKIAotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICB2b2lkIHN5bmNDdXN0b21GaWx0ZXJQcm9ncmFtcyhjb25zdCBDb29yZGluYXRl
ZEdyYXBoaWNzU3RhdGUmKTsKLSAgICB2b2lkIGluamVjdENhY2hlZEN1c3RvbUZpbHRlclByb2dy
YW1zKGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlcnMpIGNvbnN0OwotICAgIHZvaWQgY3Jl
YXRlQ3VzdG9tRmlsdGVyUHJvZ3JhbShpbnQgaWQsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1J
bmZvJik7Ci0gICAgdm9pZCByZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtKGludCBpZCk7Ci0jZW5k
aWYKLQogICAgIFRleHR1cmVNYXBwZXJMYXllciogbGF5ZXJCeUlEKENvb3JkaW5hdGVkTGF5ZXJJ
RCBpZCkKICAgICB7CiAgICAgICAgIEFTU0VSVChtX2xheWVycy5jb250YWlucyhpZCkpOwpAQCAt
MTkzLDExICsxODQsNiBAQCBwcml2YXRlOgogICAgIENvbG9yIG1fYmFja2dyb3VuZENvbG9yOwog
ICAgIGJvb2wgbV9zZXREcmF3c0JhY2tncm91bmQ7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0gICAgdHlwZWRlZiBIYXNoTWFwPGludCwgUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+ID4g
Q3VzdG9tRmlsdGVyUHJvZ3JhbU1hcDsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtTWFwIG1fY3Vz
dG9tRmlsdGVyUHJvZ3JhbXM7Ci0jZW5kaWYKLQogICAgIFRleHR1cmVNYXBwZXJGUFNDb3VudGVy
IG1fZnBzQ291bnRlcjsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU3RhdGUuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU3RhdGUuaAppbmRleCA1NDQ1ZTYyLi5jMmMyY2Y1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29v
cmRpbmF0ZWRHcmFwaGljc1N0YXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZS5oCkBAIC00
MiwxMCArNDIsNiBAQAogI2luY2x1ZGUgIkZpbHRlck9wZXJhdGlvbnMuaCIKICNlbmRpZgogCi0j
aWYgRU5BQkxFKENTU19GSUxURVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1JbmZv
LmgiCi0jZW5kaWYKLQogI2lmIFVTRShHUkFQSElDU19TVVJGQUNFKQogI2luY2x1ZGUgIkdyYXBo
aWNzU3VyZmFjZS5oIgogI2luY2x1ZGUgIkdyYXBoaWNzU3VyZmFjZVRva2VuLmgiCkBAIC0xOTgs
MTEgKzE5NCw2IEBAIHN0cnVjdCBDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUgewogCiAgICAgVmVj
dG9yPHN0ZDo6cGFpcjx1aW50MzJfdCAvKiBhdGxhc0lEICovLCBSZWZQdHI8Q29vcmRpbmF0ZWRT
dXJmYWNlPiA+ID4gdXBkYXRlQXRsYXNlc1RvQ3JlYXRlOwogICAgIFZlY3Rvcjx1aW50MzJfdCAv
KiBhdGxhc0lEICovPiB1cGRhdGVBdGxhc2VzVG9SZW1vdmU7Ci0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0gICAgVmVjdG9yPHN0ZDo6cGFpcjx1aW50MzJfdCAvKiBGaWx0ZXJJRCAqLywgQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8+ID4gY3VzdG9tRmlsdGVyc1RvQ3JlYXRlOwotICAgIFZlY3Rv
cjx1aW50MzJfdD4gY3VzdG9tRmlsdGVyc1RvUmVtb3ZlOwotI2VuZGlmCiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vYXIucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYXIucG8KaW5kZXggNWU0
YWFmMC4uNTg1ZWNjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L2FyLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9hci5wbwpAQCAtMTcz
NCwxNiArMTczNCw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sg
YWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mg
c2hhZGVycyIKLW1zZ3N0ciAi2YHYudmR2YQg2YXYsdin2KzYuSBYU1MiCi0KLSM6IC4uLy4uLy4u
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1t
c2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgItmF2Kcg2KXYsNin
INiz2YrZgdi52YQg2YTYtdmCIERPTSIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNl
Y3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vYXMucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYXMucG8K
aW5kZXggYmNkODIyOS4uNzg2Zjg2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL2FzLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9hcy5w
bwpAQCAtMTcxNywxNCArMTcxNyw2IEBAIG1zZ3N0ciAi4Kau4Ka+4Kan4KeN4Kav4KauIOCmquCn
jeCmsuCnh+CmrOCnh+CmleCnhyDgpofgpqjgprLgpr7gpofgpqjgp7Ag4KaF4KaoCiBtc2dpZCAi
V2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLgpq7gpr7gpqfg
p43gpq/gpq4g4Kaq4KeN4Kay4KeH4Kas4KeH4KaV4KeHIOCmh+CmqOCmsuCmvuCmh+CmqOCnsCDg
poXgpqjgp4Hgpq7gpqTgpr8g4Kam4Ka/4Kef4KeHIOCmqOCnhyIKIAotIzogLi4vLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJs
ZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCmtuCnh+Cmh+CmoeCmvuCnsOCmuOCmruCnguCm
uSDgprjgpr7gpq7gp7Dgp43gpqXgpqzgpr7gpqgg4KaV4Kew4KaVIgotCi0jOiAuLi8uLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hl
dGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgImNzcyDgprbgp4fgpofgpqHgpr7g
p7Dgprjgpq7gp4Lgprkg4Ka44Ka+4Kau4Kew4KeN4Kal4Kas4Ka+4KaoIOCmleCnsOCmviDgprng
pqwg4Kao4KeHIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRl
bnQiCiBtc2dzdHIgIuCmheCmuOCngeCnsOCmleCnjeCmt+Cmv+CmpCDgprjgpq7gprLgp7Ag4Kaq
4KeN4Kew4Kam4Kew4KeN4Ka24KaoIOCmuOCmvuCmruCnsOCnjeCmpeCmrOCmvuCmqCDgppXgp7Dg
ppUiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYmcucG8gYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYmcucG8KaW5kZXggMzJhMmVkNC4uYzAzZjNk
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2JnLnBvCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9iZy5wbwpAQCAtMTc2MCwxNiArMTc2MCw2
IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGlu
ZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1z
Z3N0ciAi0JLQutC70Y7Rh9Cy0LDQvdC1INC90LAg0L/RgNC+0LLQtdGA0LrQsCDQt9CwIFhTUyIK
LQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5
MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0
ciAi0JTQsNC70Lgg0LTQsCDRgdC1INCy0LrQu9GO0YfQuCDQstGK0LfQvNC+0LbQvdC+0YHRgtGC
0LAg0LfQsCDQv9C+0YHRgtCw0LLRj9C90LUg0LIgRE9NIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNw
bGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9jcy5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9jcy5wbwppbmRleCBiODdiMWM4Li4xYjRiOTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vY3MucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2NzLnBvCkBAIC0xNzQzLDE2ICsxNzQzLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hl
dGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5
Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJQb3ZvbGl0IHJldml6aSBYU1Mi
Ci0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5
OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dz
dHIgIkplc3RsaSBwb3ZvbGl0IHZrbMOhZMOhbsOtIERPTSIKLQogIzogLi4vLi4vLi4vV2ViS2l0
L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlz
cGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZGUucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vZGUucG8KaW5kZXggMGY4Y2Y1YS4uY2EyOGY4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2RlLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9wby9kZS5wbwpAQCAtMTc2MSwxNCArMTc2MSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldo
ZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiTGVndCBmZXN0LCBv
YiAiCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUy1TaGFkZXIg
YWt0aXZpZXJlbiIKLQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgot
bXNnc3RyICJMZWd0IGZlc3QsIG9iIENTUy1TaGFkZXIgYWt0aXZpZXJ0IHdlcmRlbiBzb2xsZW4i
Ci0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNw
cDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0
ciAiQW56ZWlnZSB2b24gdW5zaWNoZXJlbSBJbmhhbHQgYWt0aXZpZXJlbiIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lbC5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9lbC5wbwppbmRleCA4NTQxOTQ0Li44N2VmNWM3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZWwucG8KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2VsLnBvCkBAIC0xNzQ5LDE1ICsxNzQ5LDYgQEAgbXNnc3RyICIiCiBt
c2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAK
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEK
LSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICLOlc69zrXPgc6z
zr/PgM6/zq/Ot8+Dzrcgz4POtc69zrHPgc6vz4nOvSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0
ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5h
YmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICIiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2Yg
aW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2VuX0NBLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L2VuX0NBLnBvCmluZGV4IDI2YWE0Y2IuLmI1YmEyZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9lbl9DQS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vZW5fQ0EucG8KQEAgLTE3MjMsMTYgKzE3MjMsNiBAQCBtc2dzdHIgIiIKIG1zZ2lk
ICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzog
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywg
ZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkVuYWJsZSBYU1MgQXVk
aXRvciIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIK
LW1zZ3N0ciAiV2hldGhlciB0byBlbmFibGUgRE9NIHBhc3RlIgotCiAjOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBk
aXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lbl9HQi5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9lbl9HQi5wbwppbmRleCAwMDhiMTc2Li4zZTBmMzA4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW5fR0IucG8KKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL2VuX0dCLnBvCkBAIC0xNzUwLDE0ICsxNzUwLDYgQEAgbXNnc3Ry
ICJNZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxh
eWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxv
d3MgaW5saW5lIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJFbmFi
bGUgQ1NTIHNoYWRlcnMiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVy
cyIKLW1zZ3N0ciAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi0KICM6IC4uLy4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAi
RW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiRW5hYmxlIGRpc3Bs
YXkgb2YgaW5zZWN1cmUgY29udGVudCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9lby5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lby5wbwpp
bmRleCBmY2UyNWYzLi4zMDE2MDgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vZW8ucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VvLnBv
CkBAIC0xNjk5LDE1ICsxNjk5LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBw
bGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNo
YWRlcnMiCi1tc2dzdHIgIiIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBj
c3Mgc2hhZGVycyIKLW1zZ3N0ciAixIh1IGVuxZ1hbHRpIGxhIHN1YnRlbm9uIHBvciBsYSBIVE1M
NS1kYXR1bWJhem8/IgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRl
bnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9lcy5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lcy5wbwppbmRleCA3ODZk
ZGQ1Li43ZTk2OWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
ZXMucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VzLnBvCkBAIC0xNzc3
LDE2ICsxNzc3LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBh
bGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENT
UyBzaGFkZXJzIgotbXNnc3RyICJBY3RpdmFyIGVsIGF1ZGl0b3IgZGUgWFNTIgotCi0jOiAuLi8u
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBm
dXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJJbmRp
Y2Egc2kgZGViZSBhY3RpdmFyIGVsIHBlZ2FkbyBET00iCi0KICM6IC4uLy4uLy4uLy4uL1dlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRp
c3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2V0LnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2V0LnBvCmluZGV4IDRkMWUzYjcuLmExOGRiOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ldC5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vZXQucG8KQEAgLTE3NDEsMTYgKzE3NDEsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJX
aGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6
enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIlhTUyBhdWRpaXRvcmkgbHVi
YW1pbmUiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMi
Ci1tc2dzdHIgIkthcyBsdWJhZGEgRE9NLXDDtWhpbmUgYXNldGFtaW5lIgotCiAjOiAuLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVu
YWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ldS5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9ldS5wbwppbmRleCA1YTMyMzNmLi5lM2Y3NmY2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZXUucG8KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2V1LnBvCkBAIC0xNzQ1LDE2ICsxNzQ1LDYgQEAgbXNnc3RyICIiCiBt
c2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAK
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEK
LSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJHYWl0dSBYU1Mg
YmVnaXJhbGVhIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFk
ZXJzIgotbXNnc3RyICJET00gaXRzYXN0ZWEgZ2FpdHVrbyBkZW4gYWxhIGV6IgotCiAjOiAuLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQg
IkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9mci5wbyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9mci5wbwppbmRleCBjNGU5N2NkLi44MDc2YTA3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZnIucG8KKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL2ZyLnBvCkBAIC0xNzE1LDE0ICsxNzE1LDYgQEAgbXNnc3RyICJM
YSBsZWN0dXJlIGR1IG3DqWRpYSBhdXRvcmlzZSBsJ2ludMOpZ3JhdGlvbiIKIG1zZ2lkICJXaGV0
aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIkluZGlxdWUgc2kgbGEg
bGVjdHVyZSBkdSBtw6lkaWEgYXV0b3Jpc2UgbCdpbnTDqWdyYXRpb24iCiAKLSM6IC4uLy4uLy4u
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFi
bGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkFjdGl2ZXIgbGVzIG9tYnJhZ2VzIENTUyIKLQotIzog
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNn
aWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJJbmRpcXVlIHMnaWwg
ZmF1dCBhY3RpdmVyIGxlcyBvbWJyYWdlcyBDU1MiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkg
b2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiQWN0aXZlciBsJ2FmZmljaGFnZSBkZSBjb250
ZW51IG5vbiBzw6ljdXJpdGFpcmUiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vZ2wucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZ2wucG8KaW5k
ZXggYTcyYzA0NS4uMGQ4MjY2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2dsLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9nbC5wbwpA
QCAtMTczMCwxNCArMTczMCw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxh
eWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBz
aGFkZXJzIgotbXNnc3RyICJBY3RpdmFyIHNvbWJyZWFkb3JlcyBDU1MiCi0KLSM6IC4uLy4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJX
aGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiSW5kaWNhIHNlIGFjdGl2YXIg
b3Mgc29tYnJlYWRvcmVzIENTUyIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNl
Y3VyZSBjb250ZW50IgogbXNnc3RyICJBY3RpdmFyIHZpc3VhbGl6YWNpw7NuIGRlIGNvbnRpZG8g
bm9uIHNlZ3VybyIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9n
dS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ndS5wbwppbmRleCAyNjI4YTg3
Li5lYjMxZmIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZ3Uu
cG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2d1LnBvCkBAIC0xNjIxLDE0
ICsxNjIxLDYgQEAgbXNnc3RyICLgqq7gq4DgqqHgqr/gqq/gqr4g4Kqq4KuN4Kqy4KuH4Kqv4Kqw
4Kqo4KuHIOCqh+CqqOCqsuCqvuCqh+CqqOCqqOCrgCDgqpwKIG1zZ2lkICJXaGV0aGVyIG1lZGlh
IHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIuCqtuCrgeCqgiDgqq7gq4DgqqHgqr/g
qq/gqr4g4Kqq4KuN4Kqy4KuH4Kqs4KuH4KqV4Kqo4KuHIOCqh+CqqOCqsuCqvuCqh+CqqOCqqOCr
gCDgqqrgqrDgqrXgqr7gqqjgqpfgq4Ag4KqG4Kqq4KuH4KqyIOCqm+CrhyIKIAotIzogLi4vd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5ODEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMi
Ci1tc2dzdHIgIkNTUyDgqrbgq4XgqqHgqrDgqqjgq4cg4Kq44KqV4KuN4Kqw4Kq/4KqvIOCqleCq
sOCriyIKLQotIzogLi4vd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5ODIKLW1zZ2lkICJX
aGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi4Kq24KuB4KqCIGNzcyDgqrbg
q4XgqqHgqrDgqqjgq4cg4Kq44KqV4KuN4Kqw4Kq/4KqvIOCqleCqsOCqteCqvuCqqOCrgeCqgiDg
qpvgq4ciCi0KICM6IC4uL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTk3CiBtc2dpZCAi
RW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAi4KqF4Kq44KuB4Kqw
4KqV4KuN4Kq34Kq/4KqkIOCquOCqruCqvuCqteCqv+Cqt+CrjeCqn+CqqOCrhyDgqqbgqrDgq43g
qrbgqr7gqrXgqrXgqr4g4Kq44KqV4KuN4Kqw4Kq/4KqvIOCqleCqsOCriyIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9oZS5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9oZS5wbwppbmRleCA5NDk1NDc2Li5iOGJlYzhkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaGUucG8KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2hlLnBvCkBAIC0xNzM3LDE2ICsxNzM3LDYgQEAgbXNnc3RyICIiCiBt
c2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAK
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEK
LSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICLXkNek16nXqCDX
qteh16jXmdeY15nXnSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mg
c2hhZGVycyIKLW1zZ3N0ciAi15TXkNedINeq157Xldeg15XXqiDXlNeo16fXoiDXpteo15nXm9eV
16og15zXlNeZ15XXqiDXnteV15PXpNeh15XXqi4iCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkg
b2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL2hpLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L2hpLnBvCmluZGV4IGFjOTcyMTguLmUxOWExMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9oaS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vaGkucG8KQEAgLTE3MzksMTQgKzE3MzksNiBAQCBtc2dzdHIgIuCkruClgOCkoeCkv+Ckr+Ck
viDgpKrgpY3gpLLgpYfgpKzgpYjgpJUg4KSH4KSo4KSy4KS+4KSH4KSoIOCkleClgCDgpLgKIG1z
Z2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIuCkleCl
jeCkr+CkviDgpK7gpYDgpKHgpL/gpK/gpL4g4KSq4KWN4KSy4KWH4KSs4KWI4KSVIOCkh+CkqOCk
suCkvuCkh+CkqCDgpJXgpYAg4KS44KWN4KS14KWA4KSV4KWD4KSk4KS/IOCkpuClh+CkpOCkviDg
pLngpYgiCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRp
bmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUyDgpLbg
pYfgpKHgpLAg4KS44KSV4KWN4KS34KSuIOCkleCksOClh+CkgiIKLQotIzogLi4vLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRo
ZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICLgpJXgpY3gpK/gpL4g4KS44KWA4KSP
4KS44KSP4KS4IOCktuClh+CkoeCksCDgpJXgpYsg4KS44KSV4KWN4KSw4KS/4KSvIOCkleCksOCk
qOCkviDgpLngpYgiCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29u
dGVudCIKIG1zZ3N0ciAi4KSF4KS44KWB4KSw4KSV4KWN4KS34KS/4KSkIOCkleCkguCkn+Clh+Ck
guCknyDgpJXgpL4g4KSq4KWN4KSw4KSm4KSw4KWN4KS24KSoIOCkuOCkleCljeCksOCkv+CkryDg
pJXgpLDgpKjgpL4g4KS54KWIIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2h1LnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2h1LnBvCmluZGV4
IGQxYTI2M2IuLjQyMTlmMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9odS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaHUucG8KQEAg
LTE3NTAsMTYgKzE3NTAsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXli
YWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUg
Q1NTIHNoYWRlcnMiCi1tc2dzdHIgIlhTUy1hdWRpdMOhbMOzIGVuZ2Vkw6lseWV6w6lzZSIKLQot
IzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5Mgot
IywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
RE9NIGJlaWxsZXN6dMOpcyBlbmdlZMOpbHllesOpc2UiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3Bs
YXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2lkLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL2lkLnBvCmluZGV4IDM1MTM2YjYuLjM4NzE1MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9pZC5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vaWQucG8KQEAgLTE2OTIsMTQgKzE2OTIsNiBAQCBtc2dzdHIgIlBlbXV0YXJhbiBtZWRp
YSBtZW5naWppbmthbiBpbmxpbmUiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxv
d3MgaW5saW5lIgogbXNnc3RyICJBcGFrYWggcGVtdXRhcmFuIG1lZGlhIG1lbmdpamlua2FuIGlu
bGluZSIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiRnVuZ3Npa2FuIHNo
YWRlciBDU1MiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRp
bmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0
ciAiQXBha2FoIG1lbWZ1bmdzaWthbiBzaGFkZXIgQ1NTIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNw
bGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9pdC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9pdC5wbwppbmRleCAyZDE4NDA0Li42NmVkOWE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vaXQucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2l0LnBvCkBAIC0xODI5LDE2ICsxODI5LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hl
dGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5
Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJBYmlsaXRhIGF1ZGl0b3IgWFNT
IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNn
c3RyICJJbmRpY2Egc2UgYWJpbGl0YXJlIGlsIERPTSBwYXN0aW5nIgotCiAjOiAuLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJs
ZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9rbi5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9rbi5wbwppbmRleCAzYzFiYzllLi45MDUwNDA3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8va24ucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2tuLnBvCkBAIC0xNzI0LDE0ICsxNzI0LDYgQEAgbXNnc3RyICLgsq7gs4Dg
sqHgsr/gsq8g4LKq4LON4LKy4LOH4LKs4LON4LKv4LK+4LKV4LONIOCyuOCyvuCysuCyv+CyqOCz
iuCys+CylwogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1z
Z3N0ciAi4LKu4LOA4LKh4LK/4LKvIOCyquCzjeCysuCzh+CyrOCzjeCyr+CyvuCyleCzjSDgsrjg
sr7gsrLgsr/gsqjgs4rgsrPgspfgsr/gsrDgs4HgsrXgs4HgsqbgspXgs43gspXgs4Yg4LKF4LKo
4LOB4LKu4LKk4LK/4LK44LOB4LKk4LON4LKk4LKm4LOG4LKv4LOGIgogCi0jOiAuLi8uLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5h
YmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJDU1Mg4LK24LOH4LKh4LKw4LOB4LKX4LKz4LKo4LON
4LKo4LOBIOCyuOCyleCzjeCysOCyv+Cyr+Cyl+CziuCys+Cyv+CyuOCzgSIKLQotIzogLi4vLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQg
IldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJDU1Mg4LK24LOH4LKh4LKw
4LOB4LKX4LKz4LKo4LON4LKo4LOBIOCyuOCyleCzjeCysOCyv+Cyr+Cyl+CziuCys+Cyv+CyuOCy
rOCzh+CyleCzhiIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250
ZW50IgogbXNnc3RyICLgsoXgsrjgs4HgsrDgspXgs43gsrfgsr/gsqQg4LK14LK/4LK34LKv4LK1
4LKo4LON4LKo4LOBIOCypOCzi+CysOCyv+CyuOCzgeCyteCzgeCypuCyqOCzjeCyqOCzgSDgsrjg
spXgs43gsrDgsr/gsq/gspfgs4rgsrPgsr/gsrjgsqzgs4fgspXgs4YiCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8va28ucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8va28ucG8KaW5kZXggNDFhZjdkNi4uMGE3NWQxMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2tvLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9rby5wbwpAQCAtMTcyNiwxNiArMTcyNiw2IEBAIG1zZ3N0ciAiIgogbXNn
aWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0j
OiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0j
LCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiWFNTIOqygOyCrCDq
uLDriqUg7IKs7JqpIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBz
aGFkZXJzIgotbXNnc3RyICJET00g67aZ7Jes64Sj6riw66W8IOyCrOyaqe2VoOyngCDsl6zrtoAi
Ci0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDox
MDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAi
IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x0LnBvIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x0LnBvCmluZGV4IGU0N2MzYzcuLmJhYWNlMmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdC5wbworKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbHQucG8KQEAgLTE3NDgsMTYgKzE3NDgsNiBA
QCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUi
CiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0
dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dz
dHIgIsSuanVuZ3RpIFhTUyBhdWRpdGF2aW3EhSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVy
IHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiQXIgxK9qdW5ndGkgRE9NIMSvZMSXamlt
xIUiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNw
cDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0
ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x2LnBvIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x2LnBvCmluZGV4IDEzYWU2N2QuLjM0Y2Fi
MTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdi5wbworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbHYucG8KQEAgLTE3MzUsMTUgKzE3MzUs
NiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxp
bmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1t
c2dzdHIgIkFrdGl2aXrEk3Qgc2tyaXB0dXMiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBj
c3Mgc2hhZGVycyIKLW1zZ3N0ciAiIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2Vj
dXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9tbC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9tbC5wbwpp
bmRleCBlNmJmOGMwLi41MjhjZjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vbWwucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL21sLnBv
CkBAIC0xNzE0LDE0ICsxNzE0LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBw
bGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NT
IHNoYWRlcnMiCi1tc2dzdHIgIiIKLQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBz
aGFkZXJzIgotbXNnc3RyICIiCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dl
YmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1
cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL21yLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL21yLnBvCmlu
ZGV4IGE0NDFkNDcuLmY0ZDlmOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9wby9tci5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbXIucG8K
QEAgLTE3NDAsMTQgKzE3NDAsNiBAQCBtc2dzdHIgIuCkruCkv+CkoeClgOCkr+CkviDgpKrgpY3g
pLLgpYfgpKzgpYXgpJUg4KSH4KSC4KSy4KS+4KSH4KSoIOCkuOCljeCkteClgAogbXNnaWQgIldo
ZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAi4KSu4KS/4KSh4KWA
4KSv4KS+IOCkquCljeCksuClh+CkrOClheCklSDgpIfgpILgpLLgpL7gpIfgpKgg4KS44KWN4KS1
4KWA4KSV4KS+4KSw4KS+4KSv4KSa4KWHIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJz
IgotbXNnc3RyICJDU1Mg4KS24KWH4KSh4KSw4KWN4KS44KWNIOCkuOClgeCksOClgiDgpJXgpLDg
pL4iCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
Y3NzIOCktuClh+CkoeCksOCljeCkuOCljSDgpLjgpYHgpLDgpYIg4KSV4KSw4KS+4KSv4KSa4KWH
IgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dz
dHIgIuCkheCkuOClgeCksOCkleCljeCkt+ClgOCkpCDgpIXgpILgpKTgpLDgpY3gpK3gpYHgpKQg
4KSu4KS+4KS54KS/4KSk4KWAIOCkpuCkvuCkluCkteCko+ClhyDgpLjgpK7gpLDgpY3gpKXgpYDg
pKQg4KSV4KSw4KS+IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L25iLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL25iLnBvCmluZGV4IDYyYTE0
ZWYuLmJkODM3NDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9u
Yi5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbmIucG8KQEAgLTE3MzEs
MTYgKzE3MzEsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFs
bG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNo
YWRlcnMiCi1tc2dzdHIgIlNsw6UgcMOlIEphdmFTY3JpcHQiCi0KLSM6IC4uLy4uLy4uL1dlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAi
V2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIk9tIGJha2dydW5uZW4gc2th
bCBza3JpdmVzIHV0IgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRl
bnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9ubC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ubC5wbwppbmRleCAxNjEx
MzJiLi5mZjE4YWZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
bmwucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL25sLnBvCkBAIC0xNzM1
LDE0ICsxNzM1LDYgQEAgbXNnc3RyICJJbmxpbmUgbWVkaWEgYWZzcGVsZW4gdG9lZ2VzdGFhbiIK
IG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIk9m
IGhldCBpbmxpbmUgYWZzcGVsZW4gdmFuIG1lZGlhIGlzIHRvZWdlc3RhYW4iCiAKLSM6IC4uLy4u
Ly4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDAzCi1tc2dp
ZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJDU1Mtc2hhZGVycyBpbnNjaGFrZWxlbiIK
LQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
OjEwMDQKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiT2Yg
Q1NTLXNoYWRlcnMgbW9ldGVuIHdvcmRlbiBpbmdlc2NoYWtlbGQiCi0KICM6IC4uLy4uLy4uLy4u
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDE5CiBtc2dpZCAiRW5h
YmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiV2VlcmdhdmUgdmFuIG9u
dmVpbGlnZSBpbmhvdWQgaW5zY2hha2VsZW4iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vb3IucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vb3Iu
cG8KaW5kZXggNDA0YWJiNy4uOGYwYTUyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL29yLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9v
ci5wbwpAQCAtMTcyNiwxNCArMTcyNiw2IEBAIG1zZ3N0ciAi4Kyu4Ky/4Kyh4Ky/4KyGIOCsquCt
jeCssuCth+CsrOCth+CsleCtjSDgrIfgrKjgrLLgrL7grIfgrKjgrLDgrYcg4KyF4KyoCiBtc2dp
ZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLgrK7grL/g
rKHgrL/grIYg4Kyq4K2N4Kyy4K2H4Kys4K2H4KyV4K2NIOCsh+CsqOCssuCsvuCsh+CsqOCssOCt
hyDgrIXgrKjgrYHgrK7grKTgrL8g4Kym4K2H4KyH4Kyl4Ky+4KyPIOCsleCsvyIKIAotIzogLi4v
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNn
aWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCsuOCth+CsoeCssOCsleCtgSDg
rLjgrJXgrY3grLDgrL/grZ8g4KyV4Kyw4Kyo4K2N4Kyk4K2BIgotCi0jOiAuLi8uLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhl
ciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgImNzcyDgrLjgrYfgrKHgrLDgrJXgrYEg
4Ky44KyV4K2N4Kyw4Ky/4K2fIOCsleCssOCsv+CsrOCsviDgrIngrJrgrL/grKQg4KyV4Ky/Igot
CiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIg
IuCsheCsuOCtgeCssOCsleCtjeCst+Csv+CspCDgrKzgrL/grLfgrZ/grKzgrLjgrY3grKTgrYHg
rLAg4Kyq4K2N4Kyw4Kym4Kyw4K2N4Ky24Kyo4KyV4K2BIOCsuOCsleCtjeCssOCsv+CtnyDgrJXg
rLDgrKjgrY3grKTgrYEiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vcGEucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcGEucG8KaW5kZXggOWVl
NDBlMC4uNWMzMjM2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L3BhLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wYS5wbwpAQCAtMTcz
NiwxNiArMTczNiw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sg
YWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mg
c2hhZGVycyIKLW1zZ3N0ciAi4Ki44KiV4KmN4Kiw4Ki/4Kiq4Kif4Ki+4KiCIOCor+Cpi+ColyIK
LQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5
MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0
ciAi4KiV4KmAIOCorOCpiOColeCol+CosOCovuCoiuCoguCooSDgqJrgqL/gqbHgqKTgqLDgqL7g
qIIg4Kio4KmC4KmwIOCom+CovuCoquCoo+CoviDgqLngqYjgpaQiCi0KICM6IC4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxl
IGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3BsLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL3BsLnBvCmluZGV4IGMzOThjZmYuLjViYzE1ZTkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wbC5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vcGwucG8KQEAgLTE3NjQsMTQgKzE3NjQsNiBAQCBtc2dzdHIgIk9kdHdhcnph
bmllIG11bHRpbWVkacOzdyB6ZXp3YWxhIG5hIHdzdGF3aWFuaWUiCiBtc2dpZCAiV2hldGhlciBt
ZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICJPa3JlxZtsYSwgY3p5IG9kdHdh
cnphbmllIG11bHRpbWVkacOzdyB6ZXp3YWxhIG5hIHdzdGF3aWFuaWUiCiAKLSM6IC4uLy4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJF
bmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIlfFgsSFY3plbmllIGNpZW5pb3dhbmlhIENTUyIK
LQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
Ojk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJPa3Jl
xZtsYSwgY3p5IHfFgsSFY3phxIcgY2llbmlvd2FuaWUgQ1NTIgotCiAjOiAuLi8uLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJs
ZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIlfFgsSFY3plbmllIHd5xZt3
aWV0bGFuaWEgbmllYmV6cGllY3puZWogdHJlxZtjaSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9wdC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9wdC5wbwppbmRleCAzM2Q5YzdiLi4wODUyNDc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vcHQucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL3B0LnBvCkBAIC0xNzQ1LDE2ICsxNzQ1LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhl
ciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4u
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1t
c2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJBY3RpdmFyIEF1ZGl0b3IgWFNTIgot
Ci0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTky
Ci0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3Ry
ICJTZSBkZXZlIHNlciBhY3RpdmFkbyBvIGNvbGFyIERPTSIKLQogIzogLi4vLi4vLi4vV2ViS2l0
L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlz
cGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcHRfQlIucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vcHRfQlIucG8KaW5kZXggMTg3MGNkNy4uMzk1MjA2OCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3B0X0JSLnBvCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9wdF9CUi5wbwpAQCAtMTczMiwxNCArMTczMiw2IEBAIG1zZ3N0ciAi
UGVybWl0aXIgcmVwcm9kdcOnw6NvIGRlIG3DrWRpYSBzZXIgZW1idXRpZGEiCiBtc2dpZCAiV2hl
dGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICJTZSBhIHJlcHJvZHXD
p8OjbyBkZSBtw61kaWEgZGV2ZSBwZXJtaXRpciwgb3UgbsOjbywgc2VyIGVtYnV0aWRhIgogCi0j
OiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAw
MwotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiSGFiaWxpdGFyIHNvbWJyZWFk
b3JlcyBDU1MiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNl
dHRpbmdzLmNwcDoxMDA0Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1t
c2dzdHIgIlNlIHNvbWJyZWFtZW50byBDU1MgZGV2ZSBvdSBuw6NvIHNlciBoYWJpbGl0YWRvIgot
CiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
MTAxOQogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIg
IkhhYmlsaXRhciBleGliacOnw6NvIGRlIGNvbnRlw7pkbyBpbnNlZ3VybyIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9yby5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9yby5wbwppbmRleCA5ZDgzODExLi4xMzJiOTkxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcm8ucG8KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL3JvLnBvCkBAIC0xNzE3LDE0ICsxNzE3LDYgQEAgbXNnc3RyICJSZWRh
cmVhIG11bHRpbWVkaWEgZXN0ZSDDrm5nbG9iYXTEgyIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBs
YXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIlNwZWNpZmljxIMgZGFjxIMgcmVkYXJlYSBt
dWx0aW1lZGlhIHNlIGZhY2Ugw65uIGNhZHJ1bCBwYWdpbmlpIgogCi0jOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENT
UyBzaGFkZXJzIgotbXNnc3RyICJBY3RpdmVhesSDIGZpbHRyZWxlIHBlcnNvbmFsaXphdGUgQ1NT
IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIlNwZWNp
ZmljxIMgZGFjxIMgc2UgYWN0aXZlYXrEgyBmaWx0cmVsZSBwZXJzb25hbGl6YXRlIENTUyAoc2hh
ZGVycykiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1z
Z3N0ciAiQWN0aXZlYXrEgyBhZmnImWFyZWEgY29uyJtpbnV0dWx1aSBuZXNpZ3VyIgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3J1LnBvIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL3J1LnBvCmluZGV4IGJmNDQyNDYuLmM0ODA2ZWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ydS5wbworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vcnUucG8KQEAgLTE3MzQsMTYgKzE3MzQsNiBAQCBtc2dzdHIg
IiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIg
IiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
Ojk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgItCS0YvQ
v9C+0LvQvdGP0YLRjCDRgdGG0LXQvdCw0YDQuNC4IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3Rr
L3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRo
ZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICLQlNC+0LvQttC90Ysg0LvQuCDQsdGL
0YLRjCDQstGL0LLQtdC00LXQvdGLINC90LAg0L/QtdGH0LDRgtGMINGE0L7QvdC+0LLRi9C1INC4
0LfQvtCx0YDQsNC20LXQvdC40Y8uIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2Vj
dXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9zbC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zbC5wbwpp
bmRleCA3YjdiNjgyLi45NDE2MGRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vc2wucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3NsLnBv
CkBAIC0xNzUzLDE0ICsxNzUzLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBw
bGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NT
IHNoYWRlcnMiCi1tc2dzdHIgIk9tb2dvxI1pIHNlbsSNaWxuaWtlIENTUyIKLQotIzogLi4vLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQg
IldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJBbGkgbmFqIGJvZG8gc2Vu
xI1pbG5pa2kgQ1NTIG9tb2dvxI1lbmkiCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2Yg
aW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiT21vZ2/EjWkgcHJpa2F6IHZzZWJpbiwga2kgbmlz
byB2YXJuZSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zci5w
byBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zci5wbwppbmRleCAwZTI5ZmI3Li4z
M2U1YmYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3IucG8K
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3NyLnBvCkBAIC0xNzQxLDE2ICsx
NzQxLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3Mg
aW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJz
IgotbXNnc3RyICLQntC80L7Qs9GD0ZvQuCDQmNC60YHQodChINGA0LXQstC40LfQuNGY0YMiCi0K
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIK
LSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIg
ItCe0LTRgNC10ZLRg9GY0LUg0LTQsCDQu9C4INGY0LUg0L7QvNC+0LPRg9Gb0LXQvdC+INCU0J7Q
nCDRg9Cx0LDRhtC40LLQsNGa0LUiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dl
YmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1
cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL3NyQGxhdGluLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3Ny
QGxhdGluLnBvCmluZGV4IGE2MGFkNTMuLmYyYTI1M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9zckBsYXRpbi5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vc3JAbGF0aW4ucG8KQEAgLTE3NDIsMTYgKzE3NDIsNiBAQCBtc2dzdHIgIiIK
IG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIK
IAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5
MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIk9tb2d1xIdp
IElrc1NTIHJldml6aWp1IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3
ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNz
cyBzaGFkZXJzIgotbXNnc3RyICJPZHJlxJF1amUgZGEgbGkgamUgb21vZ3XEh2VubyBET00gdWJh
Y2l2YW5qZSIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGlu
Z3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50Igog
bXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3Yu
cG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3YucG8KaW5kZXggODZhYzgwYi4u
Mjk5NGJiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3N2LnBv
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zdi5wbwpAQCAtMTc0MCwxNiAr
MTc0MCw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dz
IGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVy
cyIKLW1zZ3N0ciAiQWt0aXZlcmEgc2tyaXB0IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIg
dG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJIdXJ1dmlkYSBiYWtncnVuZHNiaWxkZXIg
c2thIHNrcml2YXMgdXQuIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3
ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNv
bnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby90YS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby90YS5wbwppbmRleCA5
ODhlMTFkLi5iOGY3N2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vdGEucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3RhLnBvCkBAIC0x
NzEzLDE0ICsxNzEzLDYgQEAgbXNnc3RyICLgrofgrqngr43grrLgr4jgrqngrr/grrLgr40g4K6u
4K+A4K6f4K6/4K6v4K6+4K614K+IIOCuh+Cur+CuleCvjeCulSDgrq4KIG1zZ2lkICJXaGV0aGVy
IG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIuCuh+CuqeCvjeCusuCviOCu
qeCuv+CusuCvjSDgrq7gr4Dgrp/grr/grq/grr7grrXgr4gg4K6H4K6v4K6V4K+N4K6VIOCuruCv
geCun+Cuv+Cur+CvgeCuruCuviIKIAotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1z
Z3N0ciAiQ1NTIOCut+Cvh+Cun+CusOCvjeCuleCus+CviCDgrprgr4bgrq/grrLgr43grqrgrp/g
r4HgrqTgr43grqQg4K614K+H4K6j4K+N4K6f4K+B4K6u4K6+IgotCi0jOiAuLi8uLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhl
ciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgImNzcyDgrrfgr4fgrp/grrDgr43grpXg
rrPgr4gg4K6a4K+G4K6v4K6y4K+N4K6q4K6f4K+B4K6k4K+N4K6kIOCuteCvh+Cuo+CvjeCun+Cv
geCuruCuviIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0
dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50
IgogbXNnc3RyICLgrqrgrr7grqTgr4HgrpXgrr7grqrgr43grqrgrrHgr43grrEg4K6J4K6z4K+N
4K6z4K6f4K6V4K+N4K6V4K6k4K+N4K6k4K+I4K6V4K+NIOCuleCuvuCun+CvjeCumuCuv+CuquCv
jeCuquCun+CvgeCupOCvjeCupOCvgeCuteCupOCviOCumuCvjSDgrprgr4bgrq/grrLgr43grqrg
rp/gr4HgrqTgr43grqTgr4EiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vdGUucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdGUucG8KaW5kZXgg
ZjNlMmU4Ny4uMWE1ZmM1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL3RlLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby90ZS5wbwpAQCAt
MTcxNywxNCArMTcxNyw2IEBAIG1zZ3N0ciAi4LCu4LC+4LCn4LGN4LCv4LCuIOCwquCxjeCwsuCx
h+CwrOCwvuCwleCxjSDgsK/gsL/gsKjgsY3igIzgsLLgsYjgsKjgsY0KIG1zZ2lkICJXaGV0aGVy
IG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIuCwruCwvuCwp+CxjeCwr+Cw
riDgsKrgsY3gsLLgsYfgsKzgsY3gsK/gsL7gsJXgsY0g4LCv4LC/4LCo4LGN4oCM4LCy4LGI4LCo
4LGNIOCwheCwqOCxgeCwruCwpOCwv+CwguCwmuCwvuCwsuCwviIKIAotIzogLi4vLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJs
ZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCwt+Cxh+CwoeCwsOCxjeCwuOCxjSDgsJrgsYfg
sKTgsKjgsILgsJrgsYfgsK/gsL8iCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0
L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mg
c2hhZGVycyIKLW1zZ3N0ciAiY3NzIOCwt+Cxh+CwoeCwsOCxjeCwuOCxjSDgsJrgsYfgsKTgsKjg
sIIg4LCa4LGH4LCv4LC+4LCy4LC+IgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGlu
c2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIuCwuOCxgeCwsOCwleCxjeCwt+Cwv+CwpOCwgiDgsJXg
sL7gsKjgsL8g4LC14LC/4LC34LCvIOCwquCxjeCwsOCwpuCwsOCxjeCwtuCwqOCwqOCxgSDgsJrg
sYfgsKTgsKjgsILgsJrgsYfgsK/gsL8iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vdWsucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdWsucG8K
aW5kZXggMWE2Zjg4MS4uMWY3MjhmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL3VrLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby91ay5w
bwpAQCAtMTczNywxNiArMTczNyw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEg
cGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVu
YWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAi0KPQstGW0LzQutC90YPRgtC4INGW0L3RgdGC0YDR
g9C80LXQvdGCINC/0LXRgNC10LLRltGA0LrQuCBYU1MiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hl
dGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgItCn0Lgg0YHQu9GW0LQg0LLQvNC4
0LrQsNGC0Lgg0LLRgdGC0LDQstC60YMgRE9NIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9m
IGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby92aS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby92
aS5wbwppbmRleCBjNmQ5NmIzLi45ZGZjNzYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vdmkucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L3ZpLnBvCkBAIC0xNzMzLDE2ICsxNzMzLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBt
ZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dp
ZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJC4bqtdCBraeG7g20gdHJhIFhTUyIKLQot
IzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5Mgot
IywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
Q8OzIGNobyBkw6FuIERPTSBraMO0bmciCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0
L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5z
ZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL3poX0NOLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3po
X0NOLnBvCmluZGV4IGI2MDczMTYuLmEzZTlhYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby96aF9DTi5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vemhfQ04ucG8KQEAgLTE3MzUsMTYgKzE3MzUsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJX
aGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6
enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIuWQr+eUqCBYU1Mg5a6h6K6h
IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNn
c3RyICLmmK/lkKblkK/nlKggRE9NIOeymOi0tCIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBv
ZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvRmlsdGVyRWZmZWN0UmVuZGVyZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL0ZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcAppbmRleCA0YWNlNTdlLi42ZWVhZjI1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRmlsdGVyRWZmZWN0UmVuZGVyZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5j
cHAKQEAgLTQ1LDE3ICs0NSw2IEBACiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHd0
Zi9NYXRoRXh0cmFzLmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQ
SElDUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmgiCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbS5o
IgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIKLSNpbmNsdWRlICJG
RUN1c3RvbUZpbHRlci5oIgotI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCi0jaW5jbHVk
ZSAiUmVuZGVyVmlldy5oIgotI2luY2x1ZGUgIlZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlv
bi5oIgotI2VuZGlmCi0KICNpZiBFTkFCTEUoU1ZHKQogI2luY2x1ZGUgIkNhY2hlZFNWR0RvY3Vt
ZW50LmgiCiAjaW5jbHVkZSAiQ2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuaCIKQEAgLTg5LDI4
ICs3OCw5IEBAIGlubGluZSBib29sIGlzRmlsdGVyU2l6ZVZhbGlkKEZsb2F0UmVjdCByZWN0KQog
ICAgIHJldHVybiB0cnVlOwogfQogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0Rf
R1JBUEhJQ1MpCi1zdGF0aWMgUGFzc1JlZlB0cjxGRUN1c3RvbUZpbHRlcj4gY3JlYXRlQ3VzdG9t
RmlsdGVyRWZmZWN0KEZpbHRlciogZmlsdGVyLCBEb2N1bWVudCogZG9jdW1lbnQsIFZhbGlkYXRl
ZEN1c3RvbUZpbHRlck9wZXJhdGlvbiogb3BlcmF0aW9uKQotewotICAgIGlmICghZG9jdW1lbnQp
Ci0gICAgICAgIHJldHVybiAwOwotCi0gICAgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCogZ2xv
YmFsQ29udGV4dCA9IGRvY3VtZW50LT5yZW5kZXJWaWV3KCktPmN1c3RvbUZpbHRlckdsb2JhbENv
bnRleHQoKTsKLSAgICBnbG9iYWxDb250ZXh0LT5wcmVwYXJlQ29udGV4dElmTmVlZGVkKGRvY3Vt
ZW50LT52aWV3KCktPmhvc3RXaW5kb3coKSwgZG9jdW1lbnQtPmZyYW1lKCktPnNldHRpbmdzKCku
Zm9yY2VTb2Z0d2FyZVdlYkdMUmVuZGVyaW5nKCkpOwotICAgIGlmICghZ2xvYmFsQ29udGV4dC0+
Y29udGV4dCgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIHJldHVybiBGRUN1c3RvbUZpbHRl
cjo6Y3JlYXRlKGZpbHRlciwgZ2xvYmFsQ29udGV4dC0+Y29udGV4dCgpLCBvcGVyYXRpb24tPnZh
bGlkYXRlZFByb2dyYW0oKSwgb3BlcmF0aW9uLT5wYXJhbWV0ZXJzKCksCi0gICAgICAgIG9wZXJh
dGlvbi0+bWVzaFJvd3MoKSwgb3BlcmF0aW9uLT5tZXNoQ29sdW1ucygpLCAgb3BlcmF0aW9uLT5t
ZXNoVHlwZSgpKTsKLX0KLSNlbmRpZgotCiBGaWx0ZXJFZmZlY3RSZW5kZXJlcjo6RmlsdGVyRWZm
ZWN0UmVuZGVyZXIoKQogICAgIDogbV9ncmFwaGljc0J1ZmZlckF0dGFjaGVkKGZhbHNlKQogICAg
ICwgbV9oYXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHMoZmFsc2UpCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgICwgbV9oYXNDdXN0b21TaGFkZXJGaWx0ZXIoZmFsc2UpCi0jZW5kaWYKIHsKICAg
ICBzZXRGaWx0ZXJSZXNvbHV0aW9uKEZsb2F0U2l6ZSgxLCAxKSk7CiAgICAgbV9zb3VyY2VHcmFw
aGljID0gU291cmNlR3JhcGhpYzo6Y3JlYXRlKHRoaXMpOwpAQCAtMTgxLDE3ICsxNTEsMTEgQEAg
UGFzc1JlZlB0cjxGaWx0ZXJFZmZlY3Q+IEZpbHRlckVmZmVjdFJlbmRlcmVyOjpidWlsZFJlZmVy
ZW5jZUZpbHRlcihSZW5kZXJFbGVtZW4KIAogYm9vbCBGaWx0ZXJFZmZlY3RSZW5kZXJlcjo6YnVp
bGQoUmVuZGVyRWxlbWVudCogcmVuZGVyZXIsIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIG9wZXJh
dGlvbnMsIEZpbHRlckNvbnN1bWVyIGNvbnN1bWVyKQogewotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSAgICBtX2hhc0N1c3RvbVNoYWRlckZpbHRlciA9IGZhbHNlOwotI2VuZGlmCiAgICAgbV9o
YXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHMgPSBvcGVyYXRpb25zLmhhc0ZpbHRlclRoYXRNb3Zlc1Bp
eGVscygpOwogICAgIGlmIChtX2hhc0ZpbHRlclRoYXRNb3Zlc1BpeGVscykKICAgICAgICAgbV9v
dXRzZXRzID0gb3BlcmF0aW9ucy5vdXRzZXRzKCk7Ci0gICAgCi0gICAgLy8gS2VlcCB0aGUgb2xk
IGVmZmVjdHMgb24gdGhlIHN0YWNrIHVudGlsIHdlJ3ZlIGNyZWF0ZWQgdGhlIG5ldyBlZmZlY3Rz
LgotICAgIC8vIE5ldyBGRUN1c3RvbUZpbHRlcnMgY2FuIHJldXNlIGNhY2hlZCByZXNvdXJjZXMg
ZnJvbSBvbGQgRkVDdXN0b21GaWx0ZXJzLgotICAgIEZpbHRlckVmZmVjdExpc3Qgb2xkRWZmZWN0
czsKLSAgICBtX2VmZmVjdHMuc3dhcChvbGRFZmZlY3RzKTsKKworICAgIG1fZWZmZWN0cy5jbGVh
cigpOwogCiAgICAgUmVmUHRyPEZpbHRlckVmZmVjdD4gcHJldmlvdXNFZmZlY3QgPSBtX3NvdXJj
ZUdyYXBoaWM7CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBvcGVyYXRpb25zLm9wZXJhdGlv
bnMoKS5zaXplKCk7ICsraSkgewpAQCAtMzM1LDIxICsyOTksNiBAQCBib29sIEZpbHRlckVmZmVj
dFJlbmRlcmVyOjpidWlsZChSZW5kZXJFbGVtZW50KiByZW5kZXJlciwgY29uc3QgRmlsdGVyT3Bl
cmF0aW9ucwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZHJvcFNoYWRvd09wZXJhdGlvbi0+eCgpLCBkcm9wU2hhZG93T3BlcmF0aW9uLT55KCksIGRyb3BT
aGFkb3dPcGVyYXRpb24tPmNvbG9yKCksIDEpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
IH0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLSAgICAgICAg
Y2FzZSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICAgICAgICAgIC8vIENVU1RPTSBvcGVy
YXRpb25zIGFyZSBhbHdheXMgY29udmVydGVkIHRvIFZBTElEQVRFRF9DVVNUT00gYmVmb3JlIGdl
dHRpbmcgaGVyZS4KLSAgICAgICAgICAgIC8vIFRoZSBjb252ZXJzaW9uIGhhcHBlbnMgaW4gUmVu
ZGVyTGF5ZXI6OmNvbXB1dGVGaWx0ZXJPcGVyYXRpb25zLgotICAgICAgICAgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVy
YXRpb246OlZBTElEQVRFRF9DVVNUT006IHsKLSAgICAgICAgICAgIFZhbGlkYXRlZEN1c3RvbUZp
bHRlck9wZXJhdGlvbiogY3VzdG9tRmlsdGVyT3BlcmF0aW9uID0gc3RhdGljX2Nhc3Q8VmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oZmlsdGVyT3BlcmF0aW9uKTsKLSAgICAgICAgICAg
IERvY3VtZW50KiBkb2N1bWVudCA9IHJlbmRlcmVyID8gJnJlbmRlcmVyLT5kb2N1bWVudCgpIDog
MDsKLSAgICAgICAgICAgIGVmZmVjdCA9IGNyZWF0ZUN1c3RvbUZpbHRlckVmZmVjdCh0aGlzLCBk
b2N1bWVudCwgY3VzdG9tRmlsdGVyT3BlcmF0aW9uKTsKLSAgICAgICAgICAgIGlmIChlZmZlY3Qp
Ci0gICAgICAgICAgICAgICAgbV9oYXNDdXN0b21TaGFkZXJGaWx0ZXIgPSB0cnVlOwotICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSNlbmRpZgogICAgICAgICBkZWZhdWx0OgogICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgIH0KQEAgLTQxOCwxMyArMzY3LDYgQEAgdm9pZCBGaWx0ZXJF
ZmZlY3RSZW5kZXJlcjo6YXBwbHkoKQogCiBMYXlvdXRSZWN0IEZpbHRlckVmZmVjdFJlbmRlcmVy
Ojpjb21wdXRlU291cmNlSW1hZ2VSZWN0Rm9yRGlydHlSZWN0KGNvbnN0IExheW91dFJlY3QmIGZp
bHRlckJveFJlY3QsIGNvbnN0IExheW91dFJlY3QmIGRpcnR5UmVjdCkKIHsKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0gICAgaWYgKGhhc0N1c3RvbVNoYWRlckZpbHRlcigpKSB7Ci0gICAgICAg
IC8vIFdoZW4gd2UgaGF2ZSBhdCBsZWFzdCBhIGN1c3RvbSBzaGFkZXIgaW4gdGhlIGNoYWluLCB3
ZSBuZWVkIHRvIGNvbXB1dGUgdGhlIHdob2xlIHNvdXJjZSBpbWFnZSwgYmVjYXVzZSB0aGUgc2hh
ZGVyIGNhbgotICAgICAgICAvLyByZWZlcmVuY2UgYW55IHBpeGVsIGFuZCB3ZSBjYW5ub3QgY29u
dHJvbCB0aGF0LgotICAgICAgICByZXR1cm4gZmlsdGVyQm94UmVjdDsKLSAgICB9Ci0jZW5kaWYK
ICAgICAvLyBUaGUgcmVzdWx0IG9mIHRoaXMgZnVuY3Rpb24gaXMgdGhlIGFyZWEgaW4gdGhlICJm
aWx0ZXJCb3hSZWN0IiB0aGF0IG5lZWRzIHRvIGJlIHJlcGFpbnRlZCwgc28gdGhhdCB3ZSBmdWxs
eSBjb3ZlciB0aGUgImRpcnR5UmVjdCIuCiAgICAgTGF5b3V0UmVjdCByZWN0Rm9yUmVwYWludCA9
IGRpcnR5UmVjdDsKICAgICBpZiAoaGFzRmlsdGVyVGhhdE1vdmVzUGl4ZWxzKCkpIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5oIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpbHRlckVmZmVjdFJlbmRlcmVyLmgKaW5kZXggN2Nh
Mjc1OS4uOWQ4OGZhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpbHRl
ckVmZmVjdFJlbmRlcmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpbHRlckVm
ZmVjdFJlbmRlcmVyLmgKQEAgLTQ0LDggKzQ0LDYgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
Ci1jbGFzcyBDYWNoZWRTaGFkZXI7Ci1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtOwogY2xhc3Mg
RG9jdW1lbnQ7CiBjbGFzcyBHcmFwaGljc0NvbnRleHQ7CiBjbGFzcyBSZW5kZXJFbGVtZW50OwpA
QCAtMTIxLDEwICsxMTksNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBoYXNGaWx0ZXJUaGF0TW92ZXNQ
aXhlbHMoKSBjb25zdCB7IHJldHVybiBtX2hhc0ZpbHRlclRoYXRNb3Zlc1BpeGVsczsgfQogICAg
IExheW91dFJlY3QgY29tcHV0ZVNvdXJjZUltYWdlUmVjdEZvckRpcnR5UmVjdChjb25zdCBMYXlv
dXRSZWN0JiBmaWx0ZXJCb3hSZWN0LCBjb25zdCBMYXlvdXRSZWN0JiBkaXJ0eVJlY3QpOwogCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGJvb2wgaGFzQ3VzdG9tU2hhZGVyRmlsdGVyKCkg
Y29uc3QgeyByZXR1cm4gbV9oYXNDdXN0b21TaGFkZXJGaWx0ZXI7IH0KLSNlbmRpZgotCiBwcml2
YXRlOgogICAgIHZvaWQgc2V0TWF4RWZmZWN0UmVjdHMoY29uc3QgRmxvYXRSZWN0JiBlZmZlY3RS
ZWN0KQogICAgIHsKQEAgLTE1NCw5ICsxNDgsNiBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBtX2dy
YXBoaWNzQnVmZmVyQXR0YWNoZWQ7CiAgICAgYm9vbCBtX2hhc0ZpbHRlclRoYXRNb3Zlc1BpeGVs
czsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgYm9vbCBtX2hhc0N1c3RvbVNoYWRlckZp
bHRlcjsKLSNlbmRpZgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKaW5kZXggYmFlNmQzOC4uOTNiOGZiZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCkBAIC0xMjYsMTMgKzEyNiw2IEBA
CiAjaW5jbHVkZSAiU1ZHTmFtZXMuaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dC5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkN1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIKLSNpbmNsdWRlICJWYWxpZGF0ZWRDdXN0b21GaWx0
ZXJPcGVyYXRpb24uaCIKLSNlbmRpZgotCiAjZGVmaW5lIE1JTl9JTlRFUlNFQ1RfRk9SX1JFVkVB
TCAzMgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0xNTEyLDE2ICsxNTA1LDYgQEAgdm9pZCBS
ZW5kZXJMYXllcjo6c2V0RmlsdGVyQmFja2VuZE5lZWRzUmVwYWludGluZ0luUmVjdChjb25zdCBM
YXlvdXRSZWN0JiByZWN0LAogICAgIEZpbHRlckluZm8mIGZpbHRlckluZm8gPSBGaWx0ZXJJbmZv
OjpnZXQoKnRoaXMpOwogICAgIGZpbHRlckluZm8uZXhwYW5kRGlydHlTb3VyY2VSZWN0KHJlY3RG
b3JSZXBhaW50KTsKICAgICAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgQVNTRVJUKGZp
bHRlckluZm8ucmVuZGVyZXIoKSk7Ci0gICAgaWYgKGZpbHRlckluZm8ucmVuZGVyZXIoKS0+aGFz
Q3VzdG9tU2hhZGVyRmlsdGVyKCkpIHsKLSAgICAgICAgLy8gSWYgd2UgaGF2ZSBhdCBsZWFzdCBv
bmUgY3VzdG9tIHNoYWRlciwgd2UgbmVlZCB0byB1cGRhdGUgdGhlIHdob2xlIGJvdW5kaW5nIGJv
eCBvZiB0aGUgbGF5ZXIsIGJlY2F1c2UgdGhlCi0gICAgICAgIC8vIHNoYWRlciBjYW4gYWRkcmVz
cyBhbnkgb3VwdXQgcGl4ZWwuCi0gICAgICAgIC8vIE5vdGU6IFRoaXMgaXMgb25seSBmb3Igb3V0
cHV0IHJlY3QsIHNvIHRoZXJlJ3Mgbm8gbmVlZCB0byBleHBhbmQgdGhlIGRpcnR5IHNvdXJjZSBy
ZWN0LgotICAgICAgICByZWN0Rm9yUmVwYWludC51bml0ZShjYWxjdWxhdGVMYXllckJvdW5kcyh0
aGlzKSk7Ci0gICAgfQotI2VuZGlmCi0gICAgCiAgICAgUmVuZGVyTGF5ZXIqIHBhcmVudExheWVy
ID0gZW5jbG9zaW5nRmlsdGVyUmVwYWludExheWVyKCk7CiAgICAgQVNTRVJUKHBhcmVudExheWVy
KTsKICAgICBGbG9hdFF1YWQgcmVwYWludFF1YWQocmVjdEZvclJlcGFpbnQpOwpAQCAtNjgwOCw2
OCArNjc5MSw4IEBAIFBhc3NSZWY8UmVuZGVyU3R5bGU+IFJlbmRlckxheWVyOjpjcmVhdGVSZWZs
ZWN0aW9uU3R5bGUoKQogICAgIHJldHVybiBuZXdTdHlsZTsKIH0KIAotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLQotYm9vbCBSZW5kZXJMYXllcjo6aXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKCkg
Y29uc3QKLXsKLSAgICAvLyBXZSBvbmx5IHdhbnQgdG8gZW5hYmxlIHNoYWRlcnMgaWYgV2ViR0wg
aXMgYWxzbyBlbmFibGVkIG9uIHRoaXMgcGxhdGZvcm0uCi0gICAgY29uc3QgU2V0dGluZ3MmIHNl
dHRpbmdzID0gcmVuZGVyZXIoKS5mcmFtZSgpLnNldHRpbmdzKCk7Ci0gICAgcmV0dXJuIHNldHRp
bmdzLmlzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCgpICYmIHNldHRpbmdzLndlYkdMRW5hYmxlZCgp
OwotfQotCi0jZW5kaWYKLQogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKIAotRmlsdGVyT3BlcmF0
aW9ucyBSZW5kZXJMYXllcjo6Y29tcHV0ZUZpbHRlck9wZXJhdGlvbnMoY29uc3QgUmVuZGVyU3R5
bGUqIHN0eWxlKQotewotI2lmICFFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgcmV0dXJuIHN0eWxl
LT5maWx0ZXIoKTsKLSNlbHNlCi0gICAgY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYgZmlsdGVycyA9
IHN0eWxlLT5maWx0ZXIoKTsKLSAgICBpZiAoIWZpbHRlcnMuaGFzQ3VzdG9tRmlsdGVyKCkpCi0g
ICAgICAgIHJldHVybiBmaWx0ZXJzOwotCi0gICAgaWYgKCFpc0NTU0N1c3RvbUZpbHRlckVuYWJs
ZWQoKSkgewotICAgICAgICAvLyBDU1MgQ3VzdG9tIGZpbHRlcnMgc2hvdWxkIG5vdCBwYXJzZSBh
dCBhbGwgaW4gdGhpcyBjYXNlLCBidXQgdGhlcmUgbWlnaHQgYmUKLSAgICAgICAgLy8gcmVtYWlu
aW5nIHN0eWxlcyB0aGF0IHdlcmUgcGFyc2VkIHdoZW4gdGhlIGZsYWcgd2FzIGVuYWJsZWQuIFJl
cHJvZHVjZXMgaW4gRHVtcFJlbmRlclRyZWUKLSAgICAgICAgLy8gYmVjYXVzZSBpdCByZXNldHMg
dGhlIGZsYWcgd2hpbGUgdGhlIHByZXZpb3VzIHRlc3QgaXMgc3RpbGwgbG9hZGVkLgotICAgICAg
ICByZXR1cm4gRmlsdGVyT3BlcmF0aW9ucygpOwotICAgIH0KLQotICAgIEZpbHRlck9wZXJhdGlv
bnMgb3V0cHV0RmlsdGVyczsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGZpbHRlcnMuc2l6
ZSgpOyArK2kpIHsKLSAgICAgICAgUmVmUHRyPEZpbHRlck9wZXJhdGlvbj4gZmlsdGVyT3BlcmF0
aW9uID0gZmlsdGVycy5vcGVyYXRpb25zKCkuYXQoaSk7Ci0gICAgICAgIGlmIChmaWx0ZXJPcGVy
YXRpb24tPnR5cGUoKSA9PSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTSkgewotICAgICAgICAgICAg
Ly8gV2UgaGF2ZSB0byB3YWl0IHVudGlsIHRoZSBwcm9ncmFtIG9mIENTUyBTaGFkZXJzIGlzIGxv
YWRlZCBiZWZvcmUgc2V0dGluZyBpdCBvbiB0aGUgbGF5ZXIuCi0gICAgICAgICAgICAvLyBOb3Rl
IHRoYXQgd2Ugd2lsbCBoYW5kbGUgdGhlIGxvYWRpbmcgb2YgdGhlIHNoYWRlcnMgYW5kIHJlcGFp
bnRpbmcgb2YgdGhlIGxheWVyIGluIHVwZGF0ZU9yUmVtb3ZlRmlsdGVyQ2xpZW50cy4KLSAgICAg
ICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9tT3BlcmF0aW9uID0gc3Rh
dGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oZmlsdGVyT3BlcmF0aW9uLmdl
dCgpKTsKLSAgICAgICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiBwcm9ncmFtID0g
Y3VzdG9tT3BlcmF0aW9uLT5wcm9ncmFtKCk7Ci0gICAgICAgICAgICBpZiAoIXByb2dyYW0tPmlz
TG9hZGVkKCkpCi0gICAgICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgICAgIFJlZlB0
cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2YWxpZGF0ZWRQcm9ncmFtID0gcHJvZ3Jh
bS0+dmFsaWRhdGVkUHJvZ3JhbSgpOwotICAgICAgICAgICAgaWYgKCF2YWxpZGF0ZWRQcm9ncmFt
KSB7Ci0gICAgICAgICAgICAgICAgLy8gTGF6aWx5IGNyZWF0ZSBhIHZhbGlkYXRlZCBwcm9ncmFt
IGFuZCBzdG9yZSBpdCBvbiB0aGUgQ3VzdG9tRmlsdGVyUHJvZ3JhbS4KLSAgICAgICAgICAgICAg
ICBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0KiBnbG9iYWxDb250ZXh0ID0gcmVuZGVyZXIoKS52
aWV3KCkuY3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCgpOwotICAgICAgICAgICAgICAgIHZhbGlk
YXRlZFByb2dyYW0gPSBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpjcmVhdGUoZ2xvYmFs
Q29udGV4dCwgcHJvZ3JhbS0+cHJvZ3JhbUluZm8oKSk7Ci0gICAgICAgICAgICAgICAgcHJvZ3Jh
bS0+c2V0VmFsaWRhdGVkUHJvZ3JhbSh2YWxpZGF0ZWRQcm9ncmFtKTsKLSAgICAgICAgICAgIH0K
LQotICAgICAgICAgICAgaWYgKCF2YWxpZGF0ZWRQcm9ncmFtLT5pc0luaXRpYWxpemVkKCkpCi0g
ICAgICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgICAgIFJlZlB0cjxWYWxpZGF0ZWRD
dXN0b21GaWx0ZXJPcGVyYXRpb24+IHZhbGlkYXRlZE9wZXJhdGlvbiA9IFZhbGlkYXRlZEN1c3Rv
bUZpbHRlck9wZXJhdGlvbjo6Y3JlYXRlKHZhbGlkYXRlZFByb2dyYW0ucmVsZWFzZSgpLCAKLSAg
ICAgICAgICAgICAgICBjdXN0b21PcGVyYXRpb24tPnBhcmFtZXRlcnMoKSwgY3VzdG9tT3BlcmF0
aW9uLT5tZXNoUm93cygpLCBjdXN0b21PcGVyYXRpb24tPm1lc2hDb2x1bW5zKCksIGN1c3RvbU9w
ZXJhdGlvbi0+bWVzaFR5cGUoKSk7Ci0gICAgICAgICAgICBvdXRwdXRGaWx0ZXJzLm9wZXJhdGlv
bnMoKS5hcHBlbmQodmFsaWRhdGVkT3BlcmF0aW9uLnJlbGVhc2UoKSk7Ci0gICAgICAgICAgICBj
b250aW51ZTsKLSAgICAgICAgfQotICAgICAgICBvdXRwdXRGaWx0ZXJzLm9wZXJhdGlvbnMoKS5h
cHBlbmQoZmlsdGVyT3BlcmF0aW9uLnJlbGVhc2UoKSk7Ci0gICAgfQotICAgIHJldHVybiBvdXRw
dXRGaWx0ZXJzOwotI2VuZGlmCi19Ci0KIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZU9yUmVtb3Zl
RmlsdGVyQ2xpZW50cygpCiB7CiAgICAgaWYgKCFoYXNGaWx0ZXIoKSkgewpAQCAtNjg3NywxMyAr
NjgwMCw2IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZU9yUmVtb3ZlRmlsdGVyQ2xpZW50cygp
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAg
aWYgKHJlbmRlcmVyKCkuc3R5bGUoKS5maWx0ZXIoKS5oYXNDdXN0b21GaWx0ZXIoKSkKLSAgICAg
ICAgRmlsdGVySW5mbzo6Z2V0KCp0aGlzKS51cGRhdGVDdXN0b21GaWx0ZXJDbGllbnRzKHJlbmRl
cmVyKCkuc3R5bGUoKS5maWx0ZXIoKSk7Ci0gICAgZWxzZSBpZiAoRmlsdGVySW5mbyogZmlsdGVy
SW5mbyA9IEZpbHRlckluZm86OmdldElmRXhpc3RzKCp0aGlzKSkKLSAgICAgICAgZmlsdGVySW5m
by0+cmVtb3ZlQ3VzdG9tRmlsdGVyQ2xpZW50cygpOwotI2VuZGlmCi0KICNpZiBFTkFCTEUoU1ZH
KQogICAgIGlmIChyZW5kZXJlcigpLnN0eWxlKCkuZmlsdGVyKCkuaGFzUmVmZXJlbmNlRmlsdGVy
KCkpCiAgICAgICAgIEZpbHRlckluZm86OmdldCgqdGhpcykudXBkYXRlUmVmZXJlbmNlRmlsdGVy
Q2xpZW50cyhyZW5kZXJlcigpLnN0eWxlKCkuZmlsdGVyKCkpOwpAQCAtNjg5OSw3ICs2ODE1LDcg
QEAgdm9pZCBSZW5kZXJMYXllcjo6dXBkYXRlT3JSZW1vdmVGaWx0ZXJFZmZlY3RSZW5kZXJlcigp
CiAgICAgLy8gbW9kZSBtaWdodCBoYXZlIGNoYW5nZWQgZm9yIHRoaXMgbGF5ZXIuCiAgICAgaWYg
KCFwYWludHNXaXRoRmlsdGVycygpKSB7CiAgICAgICAgIC8vIERvbid0IGRlbGV0ZSB0aGUgd2hv
bGUgZmlsdGVyIGluZm8gaGVyZSwgYmVjYXVzZSB3ZSBtaWdodCB1c2UgaXQKLSAgICAgICAgLy8g
Zm9yIGxvYWRpbmcgQ1NTIHNoYWRlciBmaWxlcy4KKyAgICAgICAgLy8gZm9yIGxvYWRpbmcgU1ZH
IHJlZmVyZW5jZSBmaWx0ZXIgZmlsZXMuCiAgICAgICAgIGlmIChGaWx0ZXJJbmZvKiBmaWx0ZXJJ
bmZvID0gRmlsdGVySW5mbzo6Z2V0SWZFeGlzdHMoKnRoaXMpKQogICAgICAgICAgICAgZmlsdGVy
SW5mby0+c2V0UmVuZGVyZXIoMCk7CiAKQEAgLTY5MjMsNyArNjgzOSw3IEBAIHZvaWQgUmVuZGVy
TGF5ZXI6OnVwZGF0ZU9yUmVtb3ZlRmlsdGVyRWZmZWN0UmVuZGVyZXIoKQogCiAgICAgLy8gSWYg
dGhlIGZpbHRlciBmYWlscyB0byBidWlsZCwgcmVtb3ZlIGl0IGZyb20gdGhlIGxheWVyLiBJdCB3
aWxsIHN0aWxsIGF0dGVtcHQgdG8KICAgICAvLyBnbyB0aHJvdWdoIHJlZ3VsYXIgcHJvY2Vzc2lu
ZyAoZS5nLiBjb21wb3NpdGluZyksIGJ1dCBuZXZlciBhcHBseSBhbnl0aGluZy4KLSAgICBpZiAo
IWZpbHRlckluZm8ucmVuZGVyZXIoKS0+YnVpbGQoJnJlbmRlcmVyKCksIGNvbXB1dGVGaWx0ZXJP
cGVyYXRpb25zKCZyZW5kZXJlcigpLnN0eWxlKCkpLCBGaWx0ZXJQcm9wZXJ0eSkpCisgICAgaWYg
KCFmaWx0ZXJJbmZvLnJlbmRlcmVyKCktPmJ1aWxkKCZyZW5kZXJlcigpLCByZW5kZXJlcigpLnN0
eWxlKCkuZmlsdGVyKCksIEZpbHRlclByb3BlcnR5KSkKICAgICAgICAgZmlsdGVySW5mby5zZXRS
ZW5kZXJlcigwKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckxheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaAppbmRl
eCBkNjA2ZDlhLi5lNTlkNGQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGF5ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIu
aApAQCAtODI4LDEyICs4MjgsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBjb250YWluc0RpcnR5T3Zl
cmxheVNjcm9sbGJhcnMoKSBjb25zdCB7IHJldHVybiBtX2NvbnRhaW5zRGlydHlPdmVybGF5U2Ny
b2xsYmFyczsgfQogICAgIHZvaWQgc2V0Q29udGFpbnNEaXJ0eU92ZXJsYXlTY3JvbGxiYXJzKGJv
b2wgZGlydHlTY3JvbGxiYXJzKSB7IG1fY29udGFpbnNEaXJ0eU92ZXJsYXlTY3JvbGxiYXJzID0g
ZGlydHlTY3JvbGxiYXJzOyB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgYm9vbCBp
c0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoKSBjb25zdDsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKENT
U19GSUxURVJTKQotICAgIEZpbHRlck9wZXJhdGlvbnMgY29tcHV0ZUZpbHRlck9wZXJhdGlvbnMo
Y29uc3QgUmVuZGVyU3R5bGUqKTsKICAgICBib29sIHBhaW50c1dpdGhGaWx0ZXJzKCkgY29uc3Q7
CiAgICAgYm9vbCByZXF1aXJlc0Z1bGxMYXllckltYWdlRm9yRmlsdGVycygpIGNvbnN0OwogICAg
IEZpbHRlckVmZmVjdFJlbmRlcmVyKiBmaWx0ZXJSZW5kZXJlcigpIGNvbnN0OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcAppbmRleCBhNmRmYjIw
Li43MGJiNTEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXJCYWNraW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJC
YWNraW5nLmNwcApAQCAtNjUsOSArNjUsNiBAQAogCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQog
I2luY2x1ZGUgIkZpbHRlckVmZmVjdFJlbmRlcmVyLmgiCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2VuZGlmCiAjZW5kaWYKIAog
I2lmIEVOQUJMRShXRUJHTCkgfHwgRU5BQkxFKEFDQ0VMRVJBVEVEXzJEX0NBTlZBUykKQEAgLTQw
Nyw3ICs0MDQsNyBAQCB2b2lkIFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlVHJhbnNmb3JtKGNv
bnN0IFJlbmRlclN0eWxlKiBzdHlsZSkKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiB2b2lkIFJl
bmRlckxheWVyQmFja2luZzo6dXBkYXRlRmlsdGVycyhjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUp
CiB7Ci0gICAgbV9jYW5Db21wb3NpdGVGaWx0ZXJzID0gbV9ncmFwaGljc0xheWVyLT5zZXRGaWx0
ZXJzKG93bmluZ0xheWVyKCkuY29tcHV0ZUZpbHRlck9wZXJhdGlvbnMoc3R5bGUpKTsKKyAgICBt
X2NhbkNvbXBvc2l0ZUZpbHRlcnMgPSBtX2dyYXBoaWNzTGF5ZXItPnNldEZpbHRlcnMoc3R5bGUt
PmZpbHRlcigpKTsKIH0KICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllckZpbHRlckluZm8uY3BwCmluZGV4IDkwYTFlNTEuLjMxMjVlZjYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckZpbHRlckluZm8uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckZpbHRlckluZm8uY3Bw
CkBAIC0zNSw4ICszNSw2IEBACiAKICNpbmNsdWRlICJDYWNoZWRTVkdEb2N1bWVudC5oIgogI2lu
Y2x1ZGUgIkNhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgogI2luY2x1
ZGUgIkZpbHRlckVmZmVjdFJlbmRlcmVyLmgiCiAjaW5jbHVkZSAiU1ZHRWxlbWVudC5oIgogI2lu
Y2x1ZGUgIlNWR0ZpbHRlci5oIgpAQCAtODUsOSArODMsNiBAQCBSZW5kZXJMYXllcjo6RmlsdGVy
SW5mbzo6RmlsdGVySW5mbyhSZW5kZXJMYXllciYgbGF5ZXIpCiAKIFJlbmRlckxheWVyOjpGaWx0
ZXJJbmZvOjp+RmlsdGVySW5mbygpCiB7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIHJl
bW92ZUN1c3RvbUZpbHRlckNsaWVudHMoKTsKLSNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAg
cmVtb3ZlUmVmZXJlbmNlRmlsdGVyQ2xpZW50cygpOwogI2VuZGlmCkBAIC0xNDksNDQgKzE0NCw2
IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OkZpbHRlckluZm86OnJlbW92ZVJlZmVyZW5jZUZpbHRlckNs
aWVudHMoKQogCiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotdm9pZCBSZW5k
ZXJMYXllcjo6RmlsdGVySW5mbzo6bm90aWZ5Q3VzdG9tRmlsdGVyUHJvZ3JhbUxvYWRlZChDdXN0
b21GaWx0ZXJQcm9ncmFtKikKLXsKLSAgICBtX2xheWVyLnJlbmRlcmVyKCkuZWxlbWVudCgpLT5z
ZXROZWVkc1N0eWxlUmVjYWxjKFN5bnRoZXRpY1N0eWxlQ2hhbmdlKTsKLSAgICBtX2xheWVyLnJl
bmRlcmVyKCkucmVwYWludCgpOwotfQotCi12b2lkIFJlbmRlckxheWVyOjpGaWx0ZXJJbmZvOjp1
cGRhdGVDdXN0b21GaWx0ZXJDbGllbnRzKGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIG9wZXJhdGlv
bnMpCi17Ci0gICAgaWYgKCFvcGVyYXRpb25zLnNpemUoKSkgewotICAgICAgICByZW1vdmVDdXN0
b21GaWx0ZXJDbGllbnRzKCk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgVmVjdG9yPFJl
ZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPj4gY2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbXM7Ci0g
ICAgZm9yIChzaXplX3QgaSA9IDAsIHNpemUgPSBvcGVyYXRpb25zLnNpemUoKTsgaSA8IHNpemU7
ICsraSkgewotICAgICAgICBjb25zdCBGaWx0ZXJPcGVyYXRpb24qIGZpbHRlck9wZXJhdGlvbiA9
IG9wZXJhdGlvbnMub3BlcmF0aW9ucygpW2ldLmdldCgpOwotICAgICAgICBpZiAoZmlsdGVyT3Bl
cmF0aW9uLT50eXBlKCkgIT0gRmlsdGVyT3BlcmF0aW9uOjpDVVNUT00pCi0gICAgICAgICAgICBj
b250aW51ZTsKLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKiBjdXN0b21GaWx0
ZXJPcGVyYXRpb24gPSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJPcGVyYXRpb24qPihm
aWx0ZXJPcGVyYXRpb24pOwotICAgICAgICBDdXN0b21GaWx0ZXJQcm9ncmFtKiBwcm9ncmFtID0g
Y3VzdG9tRmlsdGVyT3BlcmF0aW9uLT5wcm9ncmFtKCk7Ci0gICAgICAgIGNhY2hlZEN1c3RvbUZp
bHRlclByb2dyYW1zLmFwcGVuZChwcm9ncmFtKTsKLSAgICAgICAgcHJvZ3JhbS0+YWRkQ2xpZW50
KHRoaXMpOwotICAgIH0KLSAgICAvLyBSZW1vdmUgdGhlIG9sZCBjbGllbnRzIGhlcmUsIGFmdGVy
IHdlJ3ZlIGFkZGVkIHRoZSBuZXcgb25lcywgc28gdGhhdCB3ZSBkb24ndCBmbGlja2VyIGlmIHNv
bWUgc2hhZGVycyBhcmUgdW5jaGFuZ2VkLgotICAgIHJlbW92ZUN1c3RvbUZpbHRlckNsaWVudHMo
KTsKLSAgICBtX2NhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zLnN3YXAoY2FjaGVkQ3VzdG9tRmls
dGVyUHJvZ3JhbXMpOwotfQotCi12b2lkIFJlbmRlckxheWVyOjpGaWx0ZXJJbmZvOjpyZW1vdmVD
dXN0b21GaWx0ZXJDbGllbnRzKCkKLXsKLSAgICBmb3IgKHNpemVfdCBpID0gMCwgc2l6ZSA9IG1f
Y2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbXMuc2l6ZSgpOyBpIDwgc2l6ZTsgKytpKQotICAgICAg
ICBtX2NhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zW2ldLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0g
ICAgbV9jYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtcy5jbGVhcigpOwotfQotCi0jZW5kaWYKLQog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKENTU19GSUxURVJTKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyRmlsdGVySW5m
by5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyRmlsdGVySW5mby5oCmlu
ZGV4IDBmZjcxZjEuLjFhNmYyZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllckZpbHRlckluZm8uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmgKQEAgLTM1LDcgKzM1LDYgQEAKIAogI2luY2x1ZGUgIkNh
Y2hlZFJlc291cmNlSGFuZGxlLmgiCiAjaW5jbHVkZSAiQ2FjaGVkU1ZHRG9jdW1lbnRDbGllbnQu
aCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmgiCiAjaW5jbHVkZSAiUmVu
ZGVyTGF5ZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDMsMTEgKzQyLDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgRWxlbWVudDsKIAogY2xhc3MgUmVuZGVyTGF5ZXI6OkZp
bHRlckluZm8KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIEVOQUJMRShTVkcpCi0gICAgZmlu
YWwgOiBwdWJsaWMgQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudCwgcHVibGljIENhY2hlZFNWR0Rv
Y3VtZW50Q2xpZW50Ci0jZWxpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgZmluYWwgOiBwdWJs
aWMgQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudAotI2VsaWYgRU5BQkxFKFNWRykKKyNpZiBFTkFC
TEUoU1ZHKQogICAgIGZpbmFsIDogcHVibGljIENhY2hlZFNWR0RvY3VtZW50Q2xpZW50CiAjZW5k
aWYKIHsKQEAgLTYzLDExICs1OCw2IEBAIHB1YmxpYzoKICAgICBGaWx0ZXJFZmZlY3RSZW5kZXJl
ciogcmVuZGVyZXIoKSBjb25zdCB7IHJldHVybiBtX3JlbmRlcmVyLmdldCgpOyB9CiAgICAgdm9p
ZCBzZXRSZW5kZXJlcihQYXNzUmVmUHRyPEZpbHRlckVmZmVjdFJlbmRlcmVyPik7CiAgICAgCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIHZvaWQgdXBkYXRlQ3VzdG9tRmlsdGVyQ2xpZW50
cyhjb25zdCBGaWx0ZXJPcGVyYXRpb25zJik7Ci0gICAgdm9pZCByZW1vdmVDdXN0b21GaWx0ZXJD
bGllbnRzKCk7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShTVkcpCiAgICAgdm9pZCB1cGRhdGVSZWZl
cmVuY2VGaWx0ZXJDbGllbnRzKGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmKTsKICAgICB2b2lkIHJl
bW92ZVJlZmVyZW5jZUZpbHRlckNsaWVudHMoKTsKQEAgLTc5LDEwICs2OSw2IEBAIHByaXZhdGU6
CiAKICAgICBmcmllbmQgdm9pZCBXVEY6OmRlbGV0ZU93bmVkUHRyPEZpbHRlckluZm8+KEZpbHRl
ckluZm8qKTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICB2aXJ0dWFsIHZvaWQgbm90
aWZ5Q3VzdG9tRmlsdGVyUHJvZ3JhbUxvYWRlZChDdXN0b21GaWx0ZXJQcm9ncmFtKikgb3ZlcnJp
ZGU7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShTVkcpCiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZp
bmlzaGVkKENhY2hlZFJlc291cmNlKikgb3ZlcnJpZGU7CiAjZW5kaWYKQEAgLTEwMywxMCArODks
NiBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxGaWx0ZXJFZmZlY3RSZW5kZXJlcj4gbV9yZW5kZXJl
cjsKICAgICBMYXlvdXRSZWN0IG1fZGlydHlTb3VyY2VSZWN0OwogCi0jaWYgRU5BQkxFKENTU19T
SEFERVJTKQotICAgIFZlY3RvcjxSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4+IG1fY2FjaGVk
Q3VzdG9tRmlsdGVyUHJvZ3JhbXM7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShTVkcpCiAgICAgVmVj
dG9yPFJlZlB0cjxFbGVtZW50Pj4gbV9pbnRlcm5hbFNWR1JlZmVyZW5jZXM7CiAgICAgVmVjdG9y
PENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFNWR0RvY3VtZW50Pj4gbV9leHRlcm5hbFNWR1Jl
ZmVyZW5jZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmll
dy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAKaW5kZXggNGE0
YjM1Yy4uN2I2NDZiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcApA
QCAtNTEsMTAgKzUxLDYgQEAKICNpbmNsdWRlICJSZW5kZXJMYXllckNvbXBvc2l0b3IuaCIKICNl
bmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5j
bHVkZSAiQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIgotI2VuZGlmCi0KIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogUmVuZGVyVmlldzo6UmVuZGVyVmlldyhEb2N1bWVudCYgZG9jdW1lbnQsIFBh
c3NSZWY8UmVuZGVyU3R5bGU+IHN0eWxlKQpAQCAtMTE4MCwxNSArMTE3Niw2IEBAIHZvaWQgUmVu
ZGVyVmlldzo6c2V0SXNJbldpbmRvdyhib29sIGlzSW5XaW5kb3cpCiAjZW5kaWYKIH0KIAotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotQ3VzdG9tRmlsdGVyR2xv
YmFsQ29udGV4dCogUmVuZGVyVmlldzo6Y3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCgpCi17Ci0g
ICAgaWYgKCFtX2N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQpCi0gICAgICAgIG1fY3VzdG9tRmls
dGVyR2xvYmFsQ29udGV4dCA9IGFkb3B0UHRyKG5ldyBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0
KCkpOwotICAgIHJldHVybiBtX2N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuZ2V0KCk7Ci19Ci0j
ZW5kaWYKLQogdm9pZCBSZW5kZXJWaWV3OjpzdHlsZURpZENoYW5nZShTdHlsZURpZmZlcmVuY2Ug
ZGlmZiwgY29uc3QgUmVuZGVyU3R5bGUqIG9sZFN0eWxlKQogewogICAgIFJlbmRlckJsb2NrRmxv
dzo6c3R5bGVEaWRDaGFuZ2UoZGlmZiwgb2xkU3R5bGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJWaWV3LmgKaW5kZXggYzc1NWMxMi4uMmFlZWViMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyVmlldy5oCkBAIC0zOCwxMCArMzgsNiBAQCBjbGFzcyBSZW5kZXJRdW90ZTsKIGNs
YXNzIFJlbmRlckxheWVyQ29tcG9zaXRvcjsKICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi1jbGFzcyBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0
OwotI2VuZGlmCi0KIGNsYXNzIFJlbmRlclZpZXcgZmluYWwgOiBwdWJsaWMgUmVuZGVyQmxvY2tG
bG93IHsKIHB1YmxpYzoKICAgICBSZW5kZXJWaWV3KERvY3VtZW50JiwgUGFzc1JlZjxSZW5kZXJT
dHlsZT4pOwpAQCAtMTg5LDEwICsxODUsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCB1c2VzQ29tcG9z
aXRpbmcoKSBjb25zdDsKICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0Uo
M0RfR1JBUEhJQ1MpCi0gICAgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCogY3VzdG9tRmlsdGVy
R2xvYmFsQ29udGV4dCgpOwotI2VuZGlmCi0KICAgICBJbnRSZWN0IHVuc2NhbGVkRG9jdW1lbnRS
ZWN0KCkgY29uc3Q7CiAgICAgTGF5b3V0UmVjdCBiYWNrZ3JvdW5kUmVjdChSZW5kZXJCb3gqIGJh
Y2tncm91bmRSZW5kZXJlcikgY29uc3Q7CiAKQEAgLTM0MSw5ICszMzMsNiBAQCBwcml2YXRlOgog
I2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAgICBPd25QdHI8UmVuZGVyTGF5ZXJD
b21wb3NpdG9yPiBtX2NvbXBvc2l0b3I7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
ICYmIFVTRSgzRF9HUkFQSElDUykKLSAgICBPd25QdHI8Q3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dD4gbV9jdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0OwotI2VuZGlmCiAgICAgT3duUHRyPEZsb3dU
aHJlYWRDb250cm9sbGVyPiBtX2Zsb3dUaHJlYWRDb250cm9sbGVyOwogICAgIFJlZlB0cjxJbnRl
cnZhbEFyZW5hPiBtX2ludGVydmFsQXJlbmE7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBkOTExOGExLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw1NiArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVk
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICog
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMg
SVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAq
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgi
Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJTdHlsZUNhY2hlZFNoYWRl
ci5oIgotCi0jaW5jbHVkZSAiQ1NTUHJpbWl0aXZlVmFsdWUuaCIKLSNpbmNsdWRlICJDYWNoZWRT
aGFkZXIuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi0KLVN0eWxlQ2FjaGVkU2hhZGVyOjpT
dHlsZUNhY2hlZFNoYWRlcihDYWNoZWRTaGFkZXIqIHNoYWRlcikKLSAgICA6IG1fc2hhZGVyKHNo
YWRlcikKLXsKLSAgICAgbV9pc0NhY2hlZFNoYWRlciA9IHRydWU7Ci19Ci0KLVBhc3NSZWZQdHI8
Q1NTVmFsdWU+IFN0eWxlQ2FjaGVkU2hhZGVyOjpjc3NWYWx1ZSgpIGNvbnN0Ci17Ci0gICAgcmV0
dXJuIENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUobV9zaGFkZXItPnVybCgpLCBDU1NQcmltaXRp
dmVWYWx1ZTo6Q1NTX1VSSSk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMTUyMzQyOS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U3R5bGVDYWNoZWRTaGFkZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDYxICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6
Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICog
ICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
Ci0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQg
QU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAot
ICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgU3R5bGVDYWNoZWRTaGFkZXJfaAot
I2RlZmluZSBTdHlsZUNhY2hlZFNoYWRlcl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0K
LSNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUhhbmRsZS5oIgotI2luY2x1ZGUgIlN0eWxlU2hhZGVy
LmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewot
Ci1jbGFzcyBDYWNoZWRTaGFkZXI7Ci0KLWNsYXNzIFN0eWxlQ2FjaGVkU2hhZGVyIDogcHVibGlj
IFN0eWxlU2hhZGVyIHsKLXB1YmxpYzoKLSAgICAvLyBGSVhNRTogS2VlcCBhIHJlZmVyZW5jZSB0
byB0aGUgYWN0dWFsIENhY2hlZFNoYWRlciBpbiB0aGlzIGNsYXNzLgotICAgIHN0YXRpYyBQYXNz
UmVmUHRyPFN0eWxlQ2FjaGVkU2hhZGVyPiBjcmVhdGUoQ2FjaGVkU2hhZGVyKiBzaGFkZXIpIHsg
cmV0dXJuIGFkb3B0UmVmKG5ldyBTdHlsZUNhY2hlZFNoYWRlcihzaGFkZXIpKTsgfQotICAgIAot
ICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gY3NzVmFsdWUoKSBjb25zdDsKLSAgICAK
LSAgICB2aXJ0dWFsIENhY2hlZFNoYWRlciogY2FjaGVkU2hhZGVyKCkgY29uc3QgeyByZXR1cm4g
bV9zaGFkZXIuZ2V0KCk7IH0KLSAgICAKLXByaXZhdGU6Ci0gICAgU3R5bGVDYWNoZWRTaGFkZXIo
Q2FjaGVkU2hhZGVyKik7Ci0gICAgCi0gICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2hh
ZGVyPiBtX3NoYWRlcjsKLX07Ci0KLX0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0K
LSNlbmRpZiAvLyBTdHlsZUNhY2hlZFNoYWRlcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uY3BwCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZjQwMTJmLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uY3BwCisrKyAv
ZGV2L251bGwKQEAgLTEsNDkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBBZG9i
ZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5j
bHVkZSAiU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmgiCi0KLSNpbmNsdWRlICJTdHlsZUN1c3Rv
bUZpbHRlclByb2dyYW1DYWNoZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVN0eWxlQ3Vz
dG9tRmlsdGVyUHJvZ3JhbTo6flN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSgpCi17Ci0gICAgaWYg
KG1fY2FjaGUpCi0gICAgICAgIG1fY2FjaGUtPnJlbW92ZSh0aGlzKTsKLX0KLQotfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9n
cmFtLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY4Y2JlYTguLjAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJv
Z3JhbS5oCisrKyAvZGV2L251bGwKQEAgLTEsMTg3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICog
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1l
ciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0gg
REFNQUdFLgotICovCi0KLSNpZm5kZWYgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtX2gKLSNkZWZp
bmUgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykK
LSNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUNsaWVudC5oIgotI2luY2x1ZGUgIkNhY2hlZFJlc291
cmNlSGFuZGxlLmgiCi0jaW5jbHVkZSAiQ2FjaGVkU2hhZGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9t
RmlsdGVyUHJvZ3JhbS5oIgotI2luY2x1ZGUgIlVSTC5oIgotI2luY2x1ZGUgIlN0eWxlU2hhZGVy
LmgiCi0jaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewot
Ci0vLyBDU1MgU2hhZGVycwotCi1jbGFzcyBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZTsK
LQotY2xhc3MgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtIDogcHVibGljIEN1c3RvbUZpbHRlclBy
b2dyYW0sIHB1YmxpYyBDYWNoZWRSZXNvdXJjZUNsaWVudCB7Ci0gICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8U3R5bGVDdXN0b21GaWx0
ZXJQcm9ncmFtPiBjcmVhdGUoVVJMIHZlcnRleFNoYWRlclVSTCwgUGFzc1JlZlB0cjxTdHlsZVNo
YWRlcj4gdmVydGV4U2hhZGVyLCAKLSAgICAgICAgVVJMIGZyYWdtZW50U2hhZGVyVVJMLCBQYXNz
UmVmUHRyPFN0eWxlU2hhZGVyPiBmcmFnbWVudFNoYWRlciwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5
cGUgcHJvZ3JhbVR5cGUsCi0gICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0
aW5ncyYgbWl4U2V0dGluZ3MsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQotICAgIHsK
LSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0odmVy
dGV4U2hhZGVyVVJMLCB2ZXJ0ZXhTaGFkZXIsIGZyYWdtZW50U2hhZGVyVVJMLCBmcmFnbWVudFNo
YWRlciwgcHJvZ3JhbVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSkpOwotICAgIH0KLSAgICAK
LSAgICB2b2lkIHNldFZlcnRleFNoYWRlcihQYXNzUmVmUHRyPFN0eWxlU2hhZGVyPiBzaGFkZXIp
Ci0gICAgewotICAgICAgICAvLyBUaGUgc2hhZGVyIGlzIGltbXV0YWJsZSB3aGlsZSBpbiB0aGUg
Y2FjaGUuCi0gICAgICAgIEFTU0VSVCghbV9jYWNoZSk7Ci0gICAgICAgIG1fdmVydGV4U2hhZGVy
ID0gc2hhZGVyOyAKLSAgICB9Ci0gICAgU3R5bGVTaGFkZXIqIHZlcnRleFNoYWRlcigpIGNvbnN0
IHsgcmV0dXJuIG1fdmVydGV4U2hhZGVyLmdldCgpOyB9Ci0gICAgCi0gICAgdm9pZCBzZXRGcmFn
bWVudFNoYWRlcihQYXNzUmVmUHRyPFN0eWxlU2hhZGVyPiBzaGFkZXIpCi0gICAgewotICAgICAg
ICAvLyBUaGUgc2hhZGVyIGlzIGltbXV0YWJsZSB3aGlsZSBpbiB0aGUgY2FjaGUuCi0gICAgICAg
IEFTU0VSVCghbV9jYWNoZSk7Ci0gICAgICAgIG1fZnJhZ21lbnRTaGFkZXIgPSBzaGFkZXI7IAot
ICAgIH0KLSAgICBTdHlsZVNoYWRlciogZnJhZ21lbnRTaGFkZXIoKSBjb25zdCB7IHJldHVybiBt
X2ZyYWdtZW50U2hhZGVyLmdldCgpOyB9Ci0gICAgCi0gICAgdmlydHVhbCBTdHJpbmcgdmVydGV4
U2hhZGVyU3RyaW5nKCkgY29uc3QKLSAgICB7Ci0gICAgICAgIEFTU0VSVChpc0xvYWRlZCgpKTsK
LSAgICAgICAgcmV0dXJuIG1fY2FjaGVkVmVydGV4U2hhZGVyLmdldCgpID8gbV9jYWNoZWRWZXJ0
ZXhTaGFkZXItPnNoYWRlclN0cmluZygpIDogU3RyaW5nKCk7Ci0gICAgfQotICAgIAotICAgIHZp
cnR1YWwgU3RyaW5nIGZyYWdtZW50U2hhZGVyU3RyaW5nKCkgY29uc3QKLSAgICB7Ci0gICAgICAg
IEFTU0VSVChpc0xvYWRlZCgpKTsKLSAgICAgICAgcmV0dXJuIG1fY2FjaGVkRnJhZ21lbnRTaGFk
ZXIuZ2V0KCkgPyBtX2NhY2hlZEZyYWdtZW50U2hhZGVyLT5zaGFkZXJTdHJpbmcoKSA6IFN0cmlu
ZygpOwotICAgIH0KLQotICAgIHZpcnR1YWwgYm9vbCBpc0xvYWRlZCgpIGNvbnN0Ci0gICAgewot
ICAgICAgICAvLyBEbyBub3QgdXNlIHRoZSBDYWNoZWRSZXNvdXJjZTppc0xvYWRlZCBtZXRob2Qg
aGVyZSwgYmVjYXVzZSBpdCBhY3R1YWxseSBtZWFucyAhaXNMb2FkaW5nKCksCi0gICAgICAgIC8v
IHNvIG1pc3NpbmcgYW5kIGNhbmNlbGVkIHJlc291cmNlcyB3aWxsIGhhdmUgaXNMb2FkZWQgc2V0
IHRvIHRydWUsIGV2ZW4gaWYgdGhleSBhcmUgbm90IGxvYWRlZCB5ZXQuCi0gICAgICAgIEFTU0VS
VCghbV92ZXJ0ZXhTaGFkZXIgfHwgbV92ZXJ0ZXhTaGFkZXItPmlzQ2FjaGVkU2hhZGVyKCkpOwot
ICAgICAgICBBU1NFUlQoIW1fZnJhZ21lbnRTaGFkZXIgfHwgbV9mcmFnbWVudFNoYWRlci0+aXND
YWNoZWRTaGFkZXIoKSk7Ci0gICAgICAgIEFTU0VSVChtX2NhY2hlZFZlcnRleFNoYWRlci5nZXQo
KSB8fCBtX2NhY2hlZEZyYWdtZW50U2hhZGVyLmdldCgpKTsKLSAgICAgICAgcmV0dXJuICghbV9j
YWNoZWRWZXJ0ZXhTaGFkZXIuZ2V0KCkgfHwgbV9pc1ZlcnRleFNoYWRlckxvYWRlZCkKLSAgICAg
ICAgICAgICYmICghbV9jYWNoZWRGcmFnbWVudFNoYWRlci5nZXQoKSB8fCBtX2lzRnJhZ21lbnRT
aGFkZXJMb2FkZWQpOwotICAgIH0KLQotICAgIHZpcnR1YWwgdm9pZCB3aWxsSGF2ZUNsaWVudHMo
KQotICAgIHsKLSAgICAgICAgaWYgKG1fdmVydGV4U2hhZGVyKSB7Ci0gICAgICAgICAgICBtX2Nh
Y2hlZFZlcnRleFNoYWRlciA9IG1fdmVydGV4U2hhZGVyLT5jYWNoZWRTaGFkZXIoKTsKLSAgICAg
ICAgICAgIG1fY2FjaGVkVmVydGV4U2hhZGVyLT5hZGRDbGllbnQodGhpcyk7Ci0gICAgICAgIH0K
LSAgICAgICAgaWYgKG1fZnJhZ21lbnRTaGFkZXIpIHsKLSAgICAgICAgICAgIG1fY2FjaGVkRnJh
Z21lbnRTaGFkZXIgPSBtX2ZyYWdtZW50U2hhZGVyLT5jYWNoZWRTaGFkZXIoKTsKLSAgICAgICAg
ICAgIG1fY2FjaGVkRnJhZ21lbnRTaGFkZXItPmFkZENsaWVudCh0aGlzKTsKLSAgICAgICAgfQot
ICAgIH0KLSAgICAKLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVtb3ZlTGFzdENsaWVudCgpCi0gICAg
ewotICAgICAgICBpZiAobV9jYWNoZWRWZXJ0ZXhTaGFkZXIuZ2V0KCkpIHsKLSAgICAgICAgICAg
IG1fY2FjaGVkVmVydGV4U2hhZGVyLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0gICAgICAgICAgICBt
X2NhY2hlZFZlcnRleFNoYWRlciA9IDA7Ci0gICAgICAgICAgICBtX2lzVmVydGV4U2hhZGVyTG9h
ZGVkID0gZmFsc2U7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKG1fY2FjaGVkRnJhZ21lbnRTaGFk
ZXIuZ2V0KCkpIHsKLSAgICAgICAgICAgIG1fY2FjaGVkRnJhZ21lbnRTaGFkZXItPnJlbW92ZUNs
aWVudCh0aGlzKTsKLSAgICAgICAgICAgIG1fY2FjaGVkRnJhZ21lbnRTaGFkZXIgPSAwOwotICAg
ICAgICAgICAgbV9pc0ZyYWdtZW50U2hhZGVyTG9hZGVkID0gZmFsc2U7Ci0gICAgICAgIH0KLSAg
ICB9Ci0gICAgCi0gICAgdmlydHVhbCB2b2lkIG5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNl
KiByZXNvdXJjZSkKLSAgICB7Ci0gICAgICAgIGlmIChyZXNvdXJjZS0+ZXJyb3JPY2N1cnJlZCgp
KQotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAvLyBOb3RlIHRoYXQgbV9jYWNoZWRWZXJ0
ZXhTaGFkZXIgbWlnaHQgYmUgZXF1YWwgdG8gbV9jYWNoZWRGcmFnbWVudFNoYWRlciBhbmQgaXQg
d291bGQgb25seSBnZXQgb25lIGV2ZW50IGluIHRoYXQgY2FzZS4KLSAgICAgICAgaWYgKHJlc291
cmNlID09IG1fY2FjaGVkVmVydGV4U2hhZGVyLmdldCgpKQotICAgICAgICAgICAgbV9pc1ZlcnRl
eFNoYWRlckxvYWRlZCA9IHRydWU7Ci0gICAgICAgIGlmIChyZXNvdXJjZSA9PSBtX2NhY2hlZEZy
YWdtZW50U2hhZGVyLmdldCgpKQotICAgICAgICAgICAgbV9pc0ZyYWdtZW50U2hhZGVyTG9hZGVk
ID0gdHJ1ZTsKLSAgICAgICAgaWYgKGlzTG9hZGVkKCkpCi0gICAgICAgICAgICBub3RpZnlDbGll
bnRzKCk7Ci0gICAgfQotCi0gICAgYm9vbCBoYXNQZW5kaW5nU2hhZGVycygpIGNvbnN0Ci0gICAg
ewotICAgICAgICByZXR1cm4gKG1fdmVydGV4U2hhZGVyICYmIG1fdmVydGV4U2hhZGVyLT5pc1Bl
bmRpbmdTaGFkZXIoKSkgCi0gICAgICAgICAgICB8fCAobV9mcmFnbWVudFNoYWRlciAmJiBtX2Zy
YWdtZW50U2hhZGVyLT5pc1BlbmRpbmdTaGFkZXIoKSk7Ci0gICAgfQotCi0gICAgLy8gU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUgaXMgcmVzcG9uc2libGUgd2l0aCB1cGRhdGluZyB0aGUg
cmVmZXJlbmNlIHRvIHRoZSBjYWNoZS4KLSAgICB2b2lkIHNldENhY2hlKFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbUNhY2hlKiBjYWNoZSkgeyBtX2NhY2hlID0gY2FjaGU7IH0KLSAgICBib29sIGlu
Q2FjaGUoKSBjb25zdCB7IHJldHVybiBtX2NhY2hlOyB9Ci0gICAgCi0gICAgVVJMIHZlcnRleFNo
YWRlclVSTCgpIGNvbnN0IHsgcmV0dXJuIG1fdmVydGV4U2hhZGVyVVJMOyB9Ci0gICAgVVJMIGZy
YWdtZW50U2hhZGVyVVJMKCkgY29uc3QgeyByZXR1cm4gbV9mcmFnbWVudFNoYWRlclVSTDsgfQot
Ci1wcml2YXRlOgotICAgIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbShVUkwgdmVydGV4U2hhZGVy
VVJMLCBQYXNzUmVmUHRyPFN0eWxlU2hhZGVyPiB2ZXJ0ZXhTaGFkZXIsIFVSTCBmcmFnbWVudFNo
YWRlclVSTCwgUGFzc1JlZlB0cjxTdHlsZVNoYWRlcj4gZnJhZ21lbnRTaGFkZXIsIAotICAgICAg
ICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVy
UHJvZ3JhbU1peFNldHRpbmdzJiBtaXhTZXR0aW5ncywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVz
aFR5cGUpCi0gICAgICAgIDogQ3VzdG9tRmlsdGVyUHJvZ3JhbShwcm9ncmFtVHlwZSwgbWl4U2V0
dGluZ3MsIG1lc2hUeXBlKQotICAgICAgICAsIG1fdmVydGV4U2hhZGVyKHZlcnRleFNoYWRlcikK
LSAgICAgICAgLCBtX2ZyYWdtZW50U2hhZGVyKGZyYWdtZW50U2hhZGVyKQotICAgICAgICAsIG1f
dmVydGV4U2hhZGVyVVJMKHZlcnRleFNoYWRlclVSTCkKLSAgICAgICAgLCBtX2ZyYWdtZW50U2hh
ZGVyVVJMKGZyYWdtZW50U2hhZGVyVVJMKQotICAgICAgICAsIG1fY2FjaGUoMCkKLSAgICAgICAg
LCBtX2lzVmVydGV4U2hhZGVyTG9hZGVkKGZhbHNlKQotICAgICAgICAsIG1faXNGcmFnbWVudFNo
YWRlckxvYWRlZChmYWxzZSkKLSAgICB7Ci0gICAgfQotCi0gICAgflN0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbSgpOwotICAgIAotICAgIFJlZlB0cjxTdHlsZVNoYWRlcj4gbV92ZXJ0ZXhTaGFkZXI7
Ci0gICAgUmVmUHRyPFN0eWxlU2hhZGVyPiBtX2ZyYWdtZW50U2hhZGVyOwotCi0gICAgQ2FjaGVk
UmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2hhZGVyPiBtX2NhY2hlZFZlcnRleFNoYWRlcjsKLSAgICBD
YWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRTaGFkZXI+IG1fY2FjaGVkRnJhZ21lbnRTaGFkZXI7
Ci0KLSAgICAvLyBUaGUgVVJMcyBmb3JtIHRoZSBrZXkgb2YgdGhlIFN0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbSBpbiB0aGUgY2FjaGUgYW5kIGFyZSB1c2VkCi0gICAgLy8gdG8gbG9va3VwIHRoZSBT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW0gd2hlbiBpdCdzIHJlbW92ZWQgZnJvbSB0aGUgY2FjaGUu
Ci0gICAgVVJMIG1fdmVydGV4U2hhZGVyVVJMOwotICAgIFVSTCBtX2ZyYWdtZW50U2hhZGVyVVJM
OwotCi0gICAgLy8gVGhlIENhY2hlIGlzIHJlc3BvbnNpYmxlIG9mIGludmFsaWRhdGluZyB0aGlz
IHJlZmVyZW5jZS4KLSAgICBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZSogbV9jYWNoZTsK
LSAgICAKLSAgICBib29sIG1faXNWZXJ0ZXhTaGFkZXJMb2FkZWQ7Ci0gICAgYm9vbCBtX2lzRnJh
Z21lbnRTaGFkZXJMb2FkZWQ7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBTdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW1faApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDg2YTcyNGQuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcAorKysgL2Rldi9udWxs
CkBAIC0xLDg0ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVt
cyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWlt
ZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0g
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
IEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNs
dWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIlN0
eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmgiCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mby5oIgotI2luY2x1ZGUgIlN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotCi1u
YW1lc3BhY2UgV2ViQ29yZSB7Ci0KLXN0YXRpYyBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyBwcm9n
cmFtQ2FjaGVLZXkoU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKiBwcm9ncmFtKSAKLXsKLSAgICBB
U1NFUlQocHJvZ3JhbS0+dmVydGV4U2hhZGVyVVJMKCkuaXNWYWxpZCgpIHx8IHByb2dyYW0tPmZy
YWdtZW50U2hhZGVyVVJMKCkuaXNWYWxpZCgpKTsKLSAgICByZXR1cm4gQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8ocHJvZ3JhbS0+dmVydGV4U2hhZGVyVVJMKCksIHByb2dyYW0tPmZyYWdtZW50U2hh
ZGVyVVJMKCksIAotICAgICAgICBwcm9ncmFtLT5wcm9ncmFtVHlwZSgpLCBwcm9ncmFtLT5taXhT
ZXR0aW5ncygpLCBwcm9ncmFtLT5tZXNoVHlwZSgpKTsKLX0KLQotU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtQ2FjaGU6OlN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlKCkKLXsKLX0KLQotU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGU6On5TdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNo
ZSgpCi17Ci0gICAgLy8gTWFrZSBzdXJlIHRoZSBwcm9ncmFtcyBhcmUgbm90IGNhbGxpbmcgYmFj
ayBpbnRvIHRoaXMgb2JqZWN0LgotICAgIGZvciAoQ2FjaGVNYXA6Oml0ZXJhdG9yIGl0ZXIgPSBt
X2NhY2hlLmJlZ2luKCksIGVuZCA9IG1fY2FjaGUuZW5kKCk7IGl0ZXIgIT0gZW5kOyArK2l0ZXIp
Ci0gICAgICAgIGl0ZXItPnZhbHVlLT5zZXRDYWNoZSgwKTsKLX0KLQotU3R5bGVDdXN0b21GaWx0
ZXJQcm9ncmFtKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZTo6bG9va3VwKGNvbnN0IEN1
c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9ncmFtSW5mbykgY29uc3QKLXsKLSAgICByZXR1cm4g
bV9jYWNoZS5nZXQocHJvZ3JhbUluZm8pOwotfQotCi1TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0q
IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlOjpsb29rdXAoU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtKiBwcm9ncmFtKSBjb25zdAotewotICAgIHJldHVybiBsb29rdXAocHJvZ3JhbUNhY2hl
S2V5KHByb2dyYW0pKTsKLX0KLQotdm9pZCBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZTo6
YWRkKFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSkKLXsKLSAgICBBU1NFUlQoIW1f
Y2FjaGUuY29udGFpbnMocHJvZ3JhbUNhY2hlS2V5KHByb2dyYW0pKSk7Ci0gICAgbV9jYWNoZS5z
ZXQocHJvZ3JhbUNhY2hlS2V5KHByb2dyYW0pLCBwcm9ncmFtKTsKLSAgICBwcm9ncmFtLT5zZXRD
YWNoZSh0aGlzKTsKLX0KLQotdm9pZCBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZTo6cmVt
b3ZlKFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSkKLXsKLSAgICBBU1NFUlQobV9j
YWNoZS5jb250YWlucyhwcm9ncmFtQ2FjaGVLZXkocHJvZ3JhbSkpKTsKLSAgICBtX2NhY2hlLnJl
bW92ZShwcm9ncmFtQ2FjaGVLZXkocHJvZ3JhbSkpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW1D
YWNoZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyOWE1MTQzLi4wMDAwMDAwCi0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dy
YW1DYWNoZS5oCisrKyAvZGV2L251bGwKQEAgLTEsNjUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxMyBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFp
bWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VD
SCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZV9o
Ci0jZGVmaW5lIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlX2gKLQotI2lmIEVOQUJMRShD
U1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIgotI2luY2x1
ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+Ci0jaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLQotbmFtZXNw
YWNlIFdlYkNvcmUgewotCi1jbGFzcyBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW07Ci1jbGFzcyBD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mbzsKLQotY2xhc3MgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
Q2FjaGUgewotICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwotcHVibGljOgotICAgIFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlKCk7Ci0gICAgflN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUNhY2hlKCk7Ci0KLSAgICAvLyBMb29rdXBzIGEgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtIHRo
YXQgaGFzIHNpbWlsYXIgcGFyYW1ldGVycyB3aXRoIHRoZSBzcGVjaWZpZWQgcHJvZ3JhbS4KLSAg
ICBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0qIGxvb2t1cChTdHlsZUN1c3RvbUZpbHRlclByb2dy
YW0qKSBjb25zdDsKLSAgICBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0qIGxvb2t1cChjb25zdCBD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYpIGNvbnN0OwotCi0gICAgdm9pZCBhZGQoU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtKik7Ci0gICAgdm9pZCByZW1vdmUoU3R5bGVDdXN0b21GaWx0ZXJQcm9n
cmFtKik7Ci0KLXByaXZhdGU6Ci0gICAgdHlwZWRlZiBIYXNoTWFwPEN1c3RvbUZpbHRlclByb2dy
YW1JbmZvLCBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0qPiBDYWNoZU1hcDsKLSAgICBDYWNoZU1h
cCBtX2NhY2hlOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2Fj
aGVfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUGVu
ZGluZ1NoYWRlci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUGVuZGlu
Z1NoYWRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5OGFkOTFjLi4wMDAwMDAw
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVBlbmRpbmdTaGFkZXIu
aAorKysgL2Rldi9udWxsCkBAIC0xLDYzICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgot
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
LSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQot
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgot
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdF
LgotICovCi0KLSNpZm5kZWYgU3R5bGVQZW5kaW5nU2hhZGVyX2gKLSNkZWZpbmUgU3R5bGVQZW5k
aW5nU2hhZGVyX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkNTU1Zh
bHVlLmgiCi0jaW5jbHVkZSAiU3R5bGVTaGFkZXIuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NTaGFk
ZXJWYWx1ZS5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotY2xhc3MgV2ViS2l0Q1NTU2hhZGVyVmFsdWU7Ci0KLWNsYXNzIFN0eWxlUGVuZGlu
Z1NoYWRlciA6IHB1YmxpYyBTdHlsZVNoYWRlciB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NS
ZWZQdHI8U3R5bGVQZW5kaW5nU2hhZGVyPiBjcmVhdGUoV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIHZh
bHVlKSB7IHJldHVybiBhZG9wdFJlZihuZXcgU3R5bGVQZW5kaW5nU2hhZGVyKHZhbHVlKSk7IH0K
LSAgICAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IGNzc1ZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV92YWx1ZTsgfQotICAgIFdlYktpdENTU1NoYWRlclZhbHVlKiBjc3NTaGFkZXJW
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdmFsdWU7IH0KLXByaXZhdGU6Ci0gICAgU3R5bGVQZW5k
aW5nU2hhZGVyKFdlYktpdENTU1NoYWRlclZhbHVlKiB2YWx1ZSkKLSAgICAgICAgOiBtX3ZhbHVl
KHZhbHVlKQotICAgIHsKLSAgICAgICAgIG1faXNQZW5kaW5nU2hhZGVyID0gdHJ1ZTsKLSAgICB9
Ci0gICAgCi0gICAgV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIG1fdmFsdWU7IC8vIE5vdCByZXRhaW5l
ZDsgaXQgb3ducyB1cy4KLX07Ci0KLX0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0K
LSNlbmRpZiAvLyBTdHlsZVBlbmRpbmdTaGFkZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlU2hhZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVTaGFkZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTM4
ZjliZi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVT
aGFkZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDY3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICog
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1l
ciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0gg
REFNQUdFLgotICovCi0KLSNpZm5kZWYgU3R5bGVTaGFkZXJfaAotI2RlZmluZSBTdHlsZVNoYWRl
cl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIENhY2hlZFNoYWRlcjsKLWNsYXNz
IENTU1ZhbHVlOwotCi1jbGFzcyBTdHlsZVNoYWRlciA6IHB1YmxpYyBSZWZDb3VudGVkPFN0eWxl
U2hhZGVyPiB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+U3R5bGVTaGFkZXIoKSB7IH0KLQotICAg
IEFMV0FZU19JTkxJTkUgYm9vbCBpc0NhY2hlZFNoYWRlcigpIGNvbnN0IHsgcmV0dXJuIG1faXND
YWNoZWRTaGFkZXI7IH0KLSAgICBBTFdBWVNfSU5MSU5FIGJvb2wgaXNQZW5kaW5nU2hhZGVyKCkg
Y29uc3QgeyByZXR1cm4gbV9pc1BlbmRpbmdTaGFkZXI7IH0KLSAgICAKLSAgICB2aXJ0dWFsIFBh
c3NSZWZQdHI8Q1NTVmFsdWU+IGNzc1ZhbHVlKCkgY29uc3QgPSAwOwotICAgIAotICAgIHZpcnR1
YWwgQ2FjaGVkU2hhZGVyKiBjYWNoZWRTaGFkZXIoKSBjb25zdCB7IHJldHVybiAwOyB9Ci0gICAg
Ci1wcm90ZWN0ZWQ6Ci0gICAgU3R5bGVTaGFkZXIoKQotICAgICAgICA6IG1faXNDYWNoZWRTaGFk
ZXIoZmFsc2UpCi0gICAgICAgICwgbV9pc1BlbmRpbmdTaGFkZXIoZmFsc2UpCi0gICAgewotICAg
IH0KLSAgICBib29sIG1faXNDYWNoZWRTaGFkZXIgOiAxOwotICAgIGJvb2wgbV9pc1BlbmRpbmdT
aGFkZXIgOiAxOwotfTsKLQotfQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0j
ZW5kaWYgLy8gU3R5bGVTaGFkZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvV2Vi
Q29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmNwcCBiL1NvdXJjZS9XZWJLaXQv
Z3RrL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0ay5jcHAKaW5kZXggOGM5
ZTc2Mi4uNmIzZTZjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBv
cnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay9X
ZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGsuY3BwCkBAIC01NzcsMTMgKzU3
Nyw2IEBAIHZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRDU1NSZWdpb25zRW5hYmxl
ZChXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBib29sCiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJl
czo6c2hhcmVkRmVhdHVyZXMoKS5zZXRDU1NSZWdpb25zRW5hYmxlZChlbmFibGVkKTsKIH0KIAot
dm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGs6OnNldENTU0N1c3RvbUZpbHRlckVuYWJsZWQo
V2ViS2l0V2ViVmlldyogd2ViVmlldywgYm9vbCBlbmFibGVkKQotewotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICBjb3JlKHdlYlZpZXcpLT5zZXR0aW5ncygpLnNldENTU0N1c3RvbUZpbHRl
ckVuYWJsZWQoZW5hYmxlZCk7Ci0jZW5kaWYKLX0KLQogdm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBv
cnRHdGs6OnNldEV4cGVyaW1lbnRhbENvbnRlbnRTZWN1cml0eVBvbGljeUZlYXR1cmVzRW5hYmxl
ZChib29sIGVuYWJsZWQpCiB7CiAjaWYgRU5BQkxFKENTUF9ORVhUKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmgg
Yi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRH
dGsuaAppbmRleCA0ZmQ2MjU1Li40MDBiYTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0
ay9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGsuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGsuaApAQCAt
MTA0LDcgKzEwNCw2IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBzZXRQYWdlQ2FjaGVTdXBw
b3J0c1BsdWdpbnMoV2ViS2l0V2ViVmlldyosIGJvb2wgZW5hYmxlZCk7CiAgICAgc3RhdGljIHZv
aWQgc2V0Q1NTR3JpZExheW91dEVuYWJsZWQoV2ViS2l0V2ViVmlldyosIGJvb2wgZW5hYmxlZCk7
CiAgICAgc3RhdGljIHZvaWQgc2V0Q1NTUmVnaW9uc0VuYWJsZWQoV2ViS2l0V2ViVmlldyosIGJv
b2wgZW5hYmxlZCk7Ci0gICAgc3RhdGljIHZvaWQgc2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChX
ZWJLaXRXZWJWaWV3KiwgYm9vbCBlbmFibGVkKTsKICAgICBzdGF0aWMgdm9pZCBzZXRFeHBlcmlt
ZW50YWxDb250ZW50U2VjdXJpdHlQb2xpY3lGZWF0dXJlc0VuYWJsZWQoYm9vbCk7CiAgICAgc3Rh
dGljIHZvaWQgc2V0U2VhbWxlc3NJRnJhbWVzRW5hYmxlZChib29sKTsKICAgICBzdGF0aWMgdm9p
ZCBzZXRTaGFkb3dET01FbmFibGVkKGJvb2wpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHAKaW5kZXggMDlhY2NmOC4uZjY1NGI5ZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwCkBAIC0xMjEsNyAr
MTIxLDYgQEAgZW51bSB7CiAgICAgUFJPUF9FTkFCTEVfU01PT1RIX1NDUk9MTElORywKICAgICBQ
Uk9QX01FRElBX1BMQVlCQUNLX1JFUVVJUkVTX1VTRVJfR0VTVFVSRSwKICAgICBQUk9QX01FRElB
X1BMQVlCQUNLX0FMTE9XU19JTkxJTkUsCi0gICAgUFJPUF9FTkFCTEVfQ1NTX1NIQURFUlMsCiAg
ICAgUFJPUF9FTkFCTEVfUlVOTklOR19PRl9JTlNFQ1VSRV9DT05URU5ULAogICAgIFBST1BfRU5B
QkxFX0RJU1BMQVlfT0ZfSU5TRUNVUkVfQ09OVEVOVCwKICAgICBQUk9QX0VOQUJMRV9NRURJQV9T
T1VSQ0UKQEAgLTk4NywyNSArOTg2LDYgQEAgc3RhdGljIHZvaWQgd2Via2l0X3dlYl9zZXR0aW5n
c19jbGFzc19pbml0KFdlYktpdFdlYlNldHRpbmdzQ2xhc3MqIGtsYXNzKQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MpKTsKIAog
ICAgIC8qKgotICAgICogV2ViS2l0V2ViU2V0dGluZ3M6ZW5hYmxlLWNzcy1zaGFkZXJzOgotICAg
ICoKLSAgICAqIEVuYWJsZSBvciBkaXNhYmxlIHN1cHBvcnQgZm9yIGNzcyBzaGFkZXJzIChjc3Mg
Y3VzdG9tIGZpbHRlcnMpLgotICAgICogQWNjZWxlcmF0ZWQgY29tcG9zaXRpbmcgbmVlZHMgdG8g
YmUgZW5hYmxlZCBhdCBjb21waWxlIHRpbWUsIGJ1dCBuZWVkcwotICAgICogbm90IGJlIGVuYWJs
ZWQgYXQgcnVudGltZS4KLSAgICAqCi0gICAgKiBTZWUgYWxzbyBodHRwczovL2R2Y3MudzMub3Jn
L2hnL0ZYVEYvcmF3LWZpbGUvdGlwL2N1c3RvbS9pbmRleC5odG1sCi0gICAgKgotICAgICogU2lu
Y2U6IDIuMAotICAgICovCi0gICAgZ19vYmplY3RfY2xhc3NfaW5zdGFsbF9wcm9wZXJ0eShnb2Jq
ZWN0X2NsYXNzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUFJPUF9FTkFC
TEVfQ1NTX1NIQURFUlMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnX3Bh
cmFtX3NwZWNfYm9vbGVhbigiZW5hYmxlLWNzcy1zaGFkZXJzIiwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF8oIkVuYWJsZSBDU1Mgc2hh
ZGVycyIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXygiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiKSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZBTFNFLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxh
Z3MpKTsKLQotICAgIC8qKgogICAgICogV2ViS2l0V2ViU2V0dGluZ3M6ZW5hYmxlLWRpc3BsYXkt
b2YtaW5zZWN1cmUtY29udGVudDoKICAgICAqCiAgICAgKiBXaGV0aGVyIHBhZ2VzIGxvYWRlZCB2
aWEgSFRUUFMgc2hvdWxkIGxvYWQgc3VicmVzb3VyY2VzIHN1Y2ggYXMKQEAgLTEyNDAsOSArMTIy
MCw2IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfc2V0dGluZ3Nfc2V0X3Byb3BlcnR5KEdPYmpl
Y3QqIG9iamVjdCwgZ3VpbnQgcHJvcF9pZCwgY29uCiAgICAgY2FzZSBQUk9QX0VOQUJMRV9TTU9P
VEhfU0NST0xMSU5HOgogICAgICAgICBwcml2LT5lbmFibGVTbW9vdGhTY3JvbGxpbmcgPSBnX3Zh
bHVlX2dldF9ib29sZWFuKHZhbHVlKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBQUk9QX0VO
QUJMRV9DU1NfU0hBREVSUzoKLSAgICAgICAgcHJpdi0+ZW5hYmxlQ1NTU2hhZGVycyA9IGdfdmFs
dWVfZ2V0X2Jvb2xlYW4odmFsdWUpOwotICAgICAgICBicmVhazsKICAgICBjYXNlIFBST1BfTUVE
SUFfUExBWUJBQ0tfUkVRVUlSRVNfVVNFUl9HRVNUVVJFOgogICAgICAgICBwcml2LT5tZWRpYVBs
YXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZSA9IGdfdmFsdWVfZ2V0X2Jvb2xlYW4odmFsdWUpOwog
ICAgICAgICBicmVhazsKQEAgLTE0MzIsOSArMTQwOSw2IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93
ZWJfc2V0dGluZ3NfZ2V0X3Byb3BlcnR5KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcF9pZCwg
R1ZhCiAgICAgY2FzZSBQUk9QX0VOQUJMRV9TTU9PVEhfU0NST0xMSU5HOgogICAgICAgICBnX3Zh
bHVlX3NldF9ib29sZWFuKHZhbHVlLCBwcml2LT5lbmFibGVTbW9vdGhTY3JvbGxpbmcpOwogICAg
ICAgICBicmVhazsKLSAgICBjYXNlIFBST1BfRU5BQkxFX0NTU19TSEFERVJTOgotICAgICAgICBn
X3ZhbHVlX3NldF9ib29sZWFuKHZhbHVlLCBwcml2LT5lbmFibGVDU1NTaGFkZXJzKTsKLSAgICAg
ICAgYnJlYWs7CiAgICAgY2FzZSBQUk9QX01FRElBX1BMQVlCQUNLX1JFUVVJUkVTX1VTRVJfR0VT
VFVSRToKICAgICAgICAgZ192YWx1ZV9zZXRfYm9vbGVhbih2YWx1ZSwgcHJpdi0+bWVkaWFQbGF5
YmFja1JlcXVpcmVzVXNlckdlc3R1cmUpOwogICAgICAgICBicmVhazsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5nc3ByaXZhdGUuaCBiL1NvdXJj
ZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5nc3ByaXZhdGUuaAppbmRleCAyYzZm
MzE3Li5iNWU0NmY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3Nwcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzcHJpdmF0ZS5oCkBAIC04Myw3ICs4Myw2IEBAIHN0cnVjdCBfV2ViS2l0V2Vi
U2V0dGluZ3NQcml2YXRlIHsKICAgICBnYm9vbGVhbiBlbmFibGVXZWJBdWRpbzsKICAgICBnYm9v
bGVhbiBlbmFibGVBY2NlbGVyYXRlZENvbXBvc2l0aW5nOwogICAgIGdib29sZWFuIGVuYWJsZVNt
b290aFNjcm9sbGluZzsKLSAgICBnYm9vbGVhbiBlbmFibGVDU1NTaGFkZXJzOwogICAgIGdib29s
ZWFuIG1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlOwogICAgIGdib29sZWFuIG1lZGlh
UGxheWJhY2tBbGxvd3NJbmxpbmU7CiAgICAgZ2Jvb2xlYW4gZW5hYmxlRGlzcGxheU9mSW5zZWN1
cmVDb250ZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnZpZXcuY3BwIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwCmlu
ZGV4IDMyOTY1ZTAuLjkwZTRmMWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJ2aWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vidmlldy5jcHAKQEAgLTM2MjEsMTAgKzM2MjEsNiBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2Vi
X3ZpZXdfdXBkYXRlX3NldHRpbmdzKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcpCiAgICAgY29yZVNl
dHRpbmdzLnNldFNjcm9sbEFuaW1hdG9yRW5hYmxlZChzZXR0aW5nc1ByaXZhdGUtPmVuYWJsZVNt
b290aFNjcm9sbGluZyk7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBj
b3JlU2V0dGluZ3Muc2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChzZXR0aW5nc1ByaXZhdGUtPmVu
YWJsZUNTU1NoYWRlcnMpOwotI2VuZGlmCi0KICNpZiBFTkFCTEUoQ1NTX1JFR0lPTlMpCiAgICAg
V2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRDU1NS
ZWdpb25zRW5hYmxlZCh0cnVlKTsKICNlbmRpZgpAQCAtMzc3NiwxMSArMzc3Miw2IEBAIHN0YXRp
YyB2b2lkIHdlYmtpdF93ZWJfdmlld19zZXR0aW5nc19ub3RpZnkoV2ViS2l0V2ViU2V0dGluZ3Mq
IHdlYlNldHRpbmdzLCBHUGFyCiAgICAgICAgIHNldHRpbmdzLnNldFNjcm9sbEFuaW1hdG9yRW5h
YmxlZChnX3ZhbHVlX2dldF9ib29sZWFuKCZ2YWx1ZSkpOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0gICAgZWxzZSBpZiAobmFtZSA9PSBnX2ludGVybl9zdHJpbmcoImVuYWJs
ZS1jc3Mtc2hhZGVycyIpKQotICAgICAgICBzZXR0aW5ncy5zZXRDU1NDdXN0b21GaWx0ZXJFbmFi
bGVkKGdfdmFsdWVfZ2V0X2Jvb2xlYW4oJnZhbHVlKSk7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShN
RURJQV9TT1VSQ0UpCiAgICAgZWxzZSBpZiAobmFtZSA9PSBnX2ludGVybl9zdHJpbmcoImVuYWJs
ZS1tZWRpYXNvdXJjZSIpKQogICAgICAgICBzZXR0aW5ncy5zZXRNZWRpYVNvdXJjZUVuYWJsZWQo
Z192YWx1ZV9nZXRfYm9vbGVhbigmdmFsdWUpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
bWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYktp
dC9tYWMvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYWEzNzU4
OGQuLjk0NjhjODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25z
L0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3Vy
YXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC01MCw3ICs1MCw2IEBAIEVOQUJMRV9D
U1NfRklMVEVSUyA9IEVOQUJMRV9DU1NfRklMVEVSUzsKIEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5U
QVRJT04gPSA7CiBFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04gPSA7CiBFTkFCTEVfQ1NTX1JF
R0lPTlMgPSBFTkFCTEVfQ1NTX1JFR0lPTlM7Ci1FTkFCTEVfQ1NTX1NIQURFUlMgPSBFTkFCTEVf
Q1NTX1NIQURFUlM7CiBFTkFCTEVfQ1NTX1NIQVBFUyA9IEVOQUJMRV9DU1NfU0hBUEVTOwogRU5B
QkxFX0NTU19TVElDS1lfUE9TSVRJT04gPSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTjsKIEVO
QUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQgPSBFTkFCTEVfQ1NTX1RS
QU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEOwpAQCAtMTk4LDQgKzE5Nyw0IEBAIEVOQUJM
RV9YU0xUID0gRU5BQkxFX1hTTFQ7CiBFTkFCTEVfRlRMX0pJVCA9IDsKIEVOQUJMRV9MTElOVF9D
X0xPT1AgPSA7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChF
TkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxP
V19TQ1JPTExJTkcpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykg
JChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hB
Tk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NTUF9ORVhUKSAkKEVOQUJMRV9DU1NfQk9YX0RFQ09S
QVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19DT01QT1NJVElORykgJChFTkFCTEVfQ1NTX0RFVklD
RV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1NfRVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0ZJTFRF
UlMpICQoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX1JF
U09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChF
TkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVf
Q1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJ
VElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNP
UkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJ
U0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJP
QVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJB
TlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09S
SUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5U
U19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQ
VEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMp
ICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVO
QUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSElEREVOX1BBR0Vf
RE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVf
SUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURf
REFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5B
QkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikg
JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lO
Q09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0la
SU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZF
TkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xF
R0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxF
X0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQo
RU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVO
QUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9N
SFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09O
VEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklM
SVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZP
Ul9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQo
RU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChF
TkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9S
RU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJM
RV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9X
T1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0Up
ICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFC
TEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQo
RU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9U
T1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURF
TykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQo
RU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElP
KSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VC
X1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxF
X1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJF
X0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8z
RF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUND
RUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNI
RV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJP
WFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFC
TEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQo
RU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQo
RU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5B
QkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVf
Q1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RS
QU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFM
X1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9O
KSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJ
VFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NV
UFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJf
SVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFU
SU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05T
VFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01F
RElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5B
QkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9H
QU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJ
TUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRB
VEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJB
U0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lO
UFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFC
TEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExF
VEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQ
RV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dF
RUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAk
KEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9Q
UkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9W
RU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRF
UlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxF
X01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9N
RURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkg
JChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9V
VElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQ
SSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURF
TykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxF
X1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVf
UVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVf
SU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJ
UFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJT
KSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5B
QkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZH
KSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxF
X1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9J
Q09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChF
TkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxF
X1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVO
QUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlO
RykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQp
ICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklO
RVNfJChQTEFURk9STV9OQU1FKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaAppbmRleCA4OGE0NGZkLi42ZjU2MzhiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0
ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2
YXRlLmgKQEAgLTEwMCw3ICsxMDAsNiBAQAogI2RlZmluZSBXZWJLaXRBY2NlbGVyYXRlZERyYXdp
bmdFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdEFjY2VsZXJhdGVkRHJhd2luZ0VuYWJsZWQi
CiAjZGVmaW5lIFdlYktpdENhbnZhc1VzZXNBY2NlbGVyYXRlZERyYXdpbmdQcmVmZXJlbmNlS2V5
IEAiV2ViS2l0Q2FudmFzVXNlc0FjY2VsZXJhdGVkRHJhd2luZyIKICNkZWZpbmUgV2ViS2l0QWNj
ZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0QWNjZWxlcmF0
ZWRDb21wb3NpdGluZ0VuYWJsZWQiCi0jZGVmaW5lIFdlYktpdENTU0N1c3RvbUZpbHRlckVuYWJs
ZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIKICNkZWZpbmUg
V2ViS2l0Q1NTUmVnaW9uc0VuYWJsZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0Q1NTUmVnaW9uc0Vu
YWJsZWQiCiAjZGVmaW5lIFdlYktpdENTU0NvbXBvc2l0aW5nRW5hYmxlZFByZWZlcmVuY2VLZXkg
QCJXZWJLaXRDU1NDb21wb3NpdGluZ0VuYWJsZWQiCiAjZGVmaW5lIFdlYktpdENTU0dyaWRMYXlv
dXRFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdENTU0dyaWRMYXlvdXRFbmFibGVkIgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbSBiL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KaW5kZXggNTZkZmRjMi4u
MjE0OGRiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJl
bmNlcy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1t
CkBAIC00ODMsOCArNDgzLDYgQEAgcHVibGljOgogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0
aEJvb2w6Tk9dLCAgIFdlYktpdEphdmFTY3JpcHRDYW5BY2Nlc3NDbGlwYm9hcmRQcmVmZXJlbmNl
S2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgIFdlYktpdFhTU0F1
ZGl0b3JFbmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhC
b29sOllFU10sICBXZWJLaXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZFByZWZlcmVuY2VL
ZXksCi0gICAgICAgIC8vIENTUyBTaGFkZXJzIGFsc28gbmVlZCBXZWJHTCBlbmFibGVkICh3aGlj
aCBpcyBkaXNhYmxlZCBieSBkZWZhdWx0KSwgc28gd2UgY2FuIGtlZXAgaXQgZW5hYmxlZCBmb3Ig
bm93LgotICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZFByZWZlcmVuY2VLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJX
aXRoQm9vbDpZRVNdLCBXZWJLaXRDU1NSZWdpb25zRW5hYmxlZFByZWZlcmVuY2VLZXksCiAgICAg
ICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpZRVNdLCBXZWJLaXRDU1NDb21wb3NpdGluZ0Vu
YWJsZWRQcmVmZXJlbmNlS2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9d
LCAgV2ViS2l0Q1NTR3JpZExheW91dEVuYWJsZWRQcmVmZXJlbmNlS2V5LApAQCAtMTg3NCwxNiAr
MTg3Miw2IEBAIHN0YXRpYyBOU1N0cmluZyAqY2xhc3NJQkNyZWF0b3JJRCA9IG5pbDsKICAgICBb
c2VsZiBfc2V0Qm9vbFZhbHVlOmVuYWJsZWQgZm9yS2V5OldlYktpdEFjY2VsZXJhdGVkQ29tcG9z
aXRpbmdFbmFibGVkUHJlZmVyZW5jZUtleV07CiB9CiAKLS0gKEJPT0wpY3NzQ3VzdG9tRmlsdGVy
RW5hYmxlZAotewotICAgIHJldHVybiBbc2VsZiBfYm9vbFZhbHVlRm9yS2V5OldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWRQcmVmZXJlbmNlS2V5XTsKLX0KLQotLSAodm9pZClzZXRDU1NDdXN0
b21GaWx0ZXJFbmFibGVkOihCT09MKWVuYWJsZWQKLXsKLSAgICBbc2VsZiBfc2V0Qm9vbFZhbHVl
OmVuYWJsZWQgZm9yS2V5OldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWRQcmVmZXJlbmNlS2V5
XTsKLX0KLQogLSAoQk9PTCljc3NSZWdpb25zRW5hYmxlZAogewogICAgIHJldHVybiBbc2VsZiBf
Ym9vbFZhbHVlRm9yS2V5OldlYktpdENTU1JlZ2lvbnNFbmFibGVkUHJlZmVyZW5jZUtleV07CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0
ZS5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUuaApp
bmRleCBjMTI5MTlmLi43NjEzZTczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmgKQEAgLTE5OSw5ICsxOTksNiBAQCBleHRlcm4gTlNT
dHJpbmcgKldlYlByZWZlcmVuY2VzQ2FjaGVNb2RlbENoYW5nZWRJbnRlcm5hbE5vdGlmaWNhdGlv
bjsKIC0gKEJPT0wpYWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWQ7CiAtICh2b2lkKXNldEFj
Y2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkOihCT09MKWVuYWJsZWQ7CiAKLS0gKEJPT0wpY3Nz
Q3VzdG9tRmlsdGVyRW5hYmxlZDsKLS0gKHZvaWQpc2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZDoo
Qk9PTCllbmFibGVkOwotCiAtIChCT09MKWNzc1JlZ2lvbnNFbmFibGVkOwogLSAodm9pZClzZXRD
U1NSZWdpb25zRW5hYmxlZDooQk9PTCllbmFibGVkOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dl
YlZpZXcubW0KaW5kZXggNWZjZWNlYS4uZjFkMzg3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViVmlldy5tbQpAQCAtMjMyMyw5ICsyMzIzLDYgQEAgc3RhdGljIGJvb2wgbmVlZHNTZWxmUmV0
YWluV2hpbGVMb2FkaW5nUXVpcmsoKQogICAgIHNldHRpbmdzLnNldEZyYW1lRmxhdHRlbmluZ0Vu
YWJsZWQoW3ByZWZlcmVuY2VzIGlzRnJhbWVGbGF0dGVuaW5nRW5hYmxlZF0pOwogICAgIHNldHRp
bmdzLnNldFNwYXRpYWxOYXZpZ2F0aW9uRW5hYmxlZChbcHJlZmVyZW5jZXMgaXNTcGF0aWFsTmF2
aWdhdGlvbkVuYWJsZWRdKTsKICAgICBzZXR0aW5ncy5zZXRQYWdpbmF0ZUR1cmluZ0xheW91dEVu
YWJsZWQoW3ByZWZlcmVuY2VzIHBhZ2luYXRlRHVyaW5nTGF5b3V0RW5hYmxlZF0pOwotI2lmIEVO
QUJMRShDU1NfU0hBREVSUykKLSAgICBzZXR0aW5ncy5zZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVk
KFtwcmVmZXJlbmNlcyBjc3NDdXN0b21GaWx0ZXJFbmFibGVkXSk7Ci0jZW5kaWYKICAgICBSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldENTU1JlZ2lvbnNFbmFibGVk
KFtwcmVmZXJlbmNlcyBjc3NSZWdpb25zRW5hYmxlZF0pOwogICAgIFJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0Q1NTQ29tcG9zaXRpbmdFbmFibGVkKFtwcmVmZXJl
bmNlcyBjc3NDb21wb3NpdGluZ0VuYWJsZWRdKTsKICNpZiBFTkFCTEUoV0VCX0FVRElPKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViS2l0Mi9D
TWFrZUxpc3RzLnR4dAppbmRleCBiMTdmNmNjLi4zYWU0YzY3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9DTWFrZUxpc3RzLnR4
dApAQCAtMjcwLDcgKzI3MCw2IEBAIHNldChXZWJLaXQyX1NPVVJDRVMKIAogICAgIFNoYXJlZC9D
b29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5jcHAK
ICAgICBTaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJDb29yZGluYXRlZFN1cmZhY2UuY3Bw
Ci0gICAgU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5LmNwcAogCiAgICAgU2hhcmVkL0Rvd25sb2Fkcy9Eb3dubG9hZC5jcHAKICAgICBTaGFyZWQv
RG93bmxvYWRzL0Rvd25sb2FkQXV0aGVudGljYXRpb25DbGllbnQuY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL1Nv
dXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCmluZGV4
IGFhMzc1ODhkLi45NDY4YzgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0
aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9Db25maWd1
cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNTAsNyArNTAsNiBAQCBFTkFCTEVf
Q1NTX0ZJTFRFUlMgPSBFTkFCTEVfQ1NTX0ZJTFRFUlM7CiBFTkFCTEVfQ1NTX0lNQUdFX09SSUVO
VEFUSU9OID0gOwogRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OID0gOwogRU5BQkxFX0NTU19S
RUdJT05TID0gRU5BQkxFX0NTU19SRUdJT05TOwotRU5BQkxFX0NTU19TSEFERVJTID0gRU5BQkxF
X0NTU19TSEFERVJTOwogRU5BQkxFX0NTU19TSEFQRVMgPSBFTkFCTEVfQ1NTX1NIQVBFUzsKIEVO
QUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9OID0gRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT047CiBF
TkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEID0gRU5BQkxFX0NTU19U
UkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRDsKQEAgLTE5OCw0ICsxOTcsNCBAQCBFTkFC
TEVfWFNMVCA9IEVOQUJMRV9YU0xUOwogRU5BQkxFX0ZUTF9KSVQgPSA7CiBFTkFCTEVfTExJTlRf
Q19MT09QID0gOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQo
RU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZM
T1dfU0NST0xMSU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcp
ICQoRU5BQkxFX0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NI
QU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNP
UkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJ
Q0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxU
RVJTKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9S
RVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQo
RU5BQkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04pICQoRU5BQkxF
X0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCkgJChFTkFCTEVfQ1NTM19DT05E
SVRJT05BTF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DU1MzX1RFWFRfREVD
T1JBVElPTikgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNPUl9W
SVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hC
T0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RS
QU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9P
UklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFCTEVfRE9NNF9FVkVO
VFNfQ09OU1RSVUNUT1IpICQoRU5BQkxFX0RSQUdHQUJMRV9SRUdJT04pICQoRU5BQkxFX0VOQ1JZ
UFRFRF9NRURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxURVJT
KSAkKEVOQUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChF
TkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0hJRERFTl9QQUdF
X0RPTV9USU1FUl9USFJPVFRMSU5HKSAkKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpICQoRU5BQkxF
X0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSUZSQU1FX1NFQU1MRVNTKSAkKEVOQUJMRV9JTkRFWEVE
X0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRJRV9VSSkgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVO
QUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIp
ICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9J
TkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lO
UFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRf
VFlQRV9XRUVLKSAkKEVOQUJMRV9JT1NfQUlSUExBWSkgJChFTkFCTEVfSU9TX1RFWFRfQVVUT1NJ
WklORykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTEVHQUNZX0NTU19W
RU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9M
RUdBQ1lfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElPKSAkKEVOQUJM
RV9MRVRURVJQUkVTUykgJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAk
KEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChF
TkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFCTEVf
TUhUTUwpICQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFWSUdBVE9SX0NP
TlRFTlRfVVRJTFMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJ
TElUWV9BUEkpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BMVUdJTl9QUk9YWV9G
T1JfVklERU8pICQoRU5BQkxFX1BST0dSRVNTX0VMRU1FTlQpICQoRU5BQkxFX1BST01JU0VTKSAk
KEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRTKSAkKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1QpICQo
RU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVf
UkVNT1RFX0lOU1BFQ1RPUikgJChFTkFCTEVfUkVTT0xVVElPTl9NRURJQV9RVUVSWSkgJChFTkFC
TEVfU0NSSVBURURfU1BFRUNIKSAkKEVOQUJMRV9TSEFET1dfRE9NKSAkKEVOQUJMRV9TSEFSRURf
V09SS0VSUykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNF
KSAkKEVOQUJMRV9TVUJQSVhFTF9MQVlPVVQpICQoRU5BQkxFX1NVQlRMRV9DUllQVE8pICQoRU5B
QkxFX1NWRykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5UKSAk
KEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVf
VE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklE
RU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAk
KEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FOSU1BVElPTlMpICQoRU5BQkxFX1dFQl9BVURJ
TykgJChFTkFCTEVfV0VCX1JFUExBWSkgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dF
Ql9USU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVOQUJM
RV9YU0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRkVBVFVS
RV9ERUZJTkVTXyQoUExBVEZPUk1fTkFNRSkpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVf
M0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FD
Q0VMRVJBVEVEX09WRVJGTE9XX1NDUk9MTElORykgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0FD
SEVfUEFSVElUSU9OSU5HKSAkKEVOQUJMRV9DQU5WQVNfUEFUSCkgJChFTkFCTEVfQ0FOVkFTX1BS
T1hZKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ1NQX05FWFQpICQoRU5B
QkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKSAk
KEVOQUJMRV9DU1NfREVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NTU19FWENMVVNJT05TKSAk
KEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OKSAkKEVO
QUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQoRU5BQkxF
X0NTU19TSEFQRVMpICQoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04pICQoRU5BQkxFX0NTU19U
UkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCkgJChFTkFCTEVfQ1NTM19DT05ESVRJT05B
TF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DU1MzX1RFWFRfREVDT1JBVElP
TikgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNPUl9WSVNJQklM
SVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FSRF9T
VVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVS
X0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklFTlRB
VElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFCTEVfRE9NNF9FVkVOVFNfQ09O
U1RSVUNUT1IpICQoRU5BQkxFX0RSQUdHQUJMRV9SRUdJT04pICQoRU5BQkxFX0VOQ1JZUFRFRF9N
RURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVO
QUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChFTkFCTEVf
R0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0hJRERFTl9QQUdFX0RPTV9U
SU1FUl9USFJPVFRMSU5HKSAkKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpICQoRU5BQkxFX0lDT05E
QVRBQkFTRSkgJChFTkFCTEVfSUZSQU1FX1NFQU1MRVNTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFC
QVNFKSAkKEVOQUJMRV9JTkRJRV9VSSkgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIpICQoRU5B
QkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNPTVBM
RVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZ
UEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9X
RUVLKSAkKEVOQUJMRV9JT1NfQUlSUExBWSkgJChFTkFCTEVfSU9TX1RFWFRfQVVUT1NJWklORykg
JChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1Jf
UFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9MRUdBQ1lf
VkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElPKSAkKEVOQUJMRV9MRVRU
RVJQUkVTUykgJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJM
RV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFCTEVf
TUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFCTEVfTUhUTUwp
ICQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFWSUdBVE9SX0NPTlRFTlRf
VVRJTFMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9B
UEkpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BMVUdJTl9QUk9YWV9GT1JfVklE
RU8pICQoRU5BQkxFX1BST0dSRVNTX0VMRU1FTlQpICQoRU5BQkxFX1BST01JU0VTKSAkKEVOQUJM
RV9QUk9YSU1JVFlfRVZFTlRTKSAkKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1QpICQoRU5BQkxF
X1FVT1RBKSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfUkVNT1RF
X0lOU1BFQ1RPUikgJChFTkFCTEVfUkVTT0xVVElPTl9NRURJQV9RVUVSWSkgJChFTkFCTEVfU0NS
SVBURURfU1BFRUNIKSAkKEVOQUJMRV9TSEFET1dfRE9NKSAkKEVOQUJMRV9TSEFSRURfV09SS0VS
UykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVO
QUJMRV9TVUJQSVhFTF9MQVlPVVQpICQoRU5BQkxFX1NVQlRMRV9DUllQVE8pICQoRU5BQkxFX1NW
RykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5UKSAkKEVOQUJM
RV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9VQ0hf
SUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQo
RU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJM
RV9XRUJHTCkgJChFTkFCTEVfV0VCX0FOSU1BVElPTlMpICQoRU5BQkxFX1dFQl9BVURJTykgJChF
TkFCTEVfV0VCX1JFUExBWSkgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9USU1J
TkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVOQUJMRV9YU0xU
KSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRkVBVFVSRV9ERUZJ
TkVTXyQoUExBVEZPUk1fTkFNRSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVk
R3JhcGhpY3NBcmd1bWVudENvZGVycy5jcHAKaW5kZXggMzA3M2RjZS4uOTI4ZmQ3MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0
ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
Q29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuY3Bw
CkBAIC01NCwyMiArNTQsNiBAQAogI2luY2x1ZGUgPFdlYkNvcmUvRmlsdGVyT3BlcmF0aW9ucy5o
PgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiV2ViQ3VzdG9t
RmlsdGVyUHJvZ3JhbVByb3h5LmgiCi0jaW5jbHVkZSA8V2ViQ29yZS9Db29yZGluYXRlZEN1c3Rv
bUZpbHRlck9wZXJhdGlvbi5oPgotI2luY2x1ZGUgPFdlYkNvcmUvQ29vcmRpbmF0ZWRDdXN0b21G
aWx0ZXJQcm9ncmFtLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0ZXJBcnJheVBhcmFt
ZXRlci5oPgotI2luY2x1ZGUgPFdlYkNvcmUvQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaD4K
LSNpbmNsdWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlckNvbnN0YW50cy5oPgotI2luY2x1ZGUgPFdl
YkNvcmUvQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9D
dXN0b21GaWx0ZXJPcGVyYXRpb24uaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlclBy
b2dyYW0uaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlclByb2dyYW1JbmZvLmg+Ci0j
aW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaD4KLSNpbmNs
dWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaD4KLSNpbmNsdWRlIDxX
ZWJDb3JlL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oPgotI2VuZGlmCi0KICNpZiBV
U0UoR1JBUEhJQ1NfU1VSRkFDRSkKICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzU3VyZmFjZS5o
PgogI2VuZGlmCkBAIC0xMTAsNjcgKzk0LDYgQEAgdm9pZCBBcmd1bWVudENvZGVyPFdlYkNvcmU6
OkZpbHRlck9wZXJhdGlvbnM+OjplbmNvZGUoQXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyLAogICAg
ICAgICAgICAgQXJndW1lbnRDb2RlcjxDb2xvcj46OmVuY29kZShlbmNvZGVyLCBzaGFkb3ctPmNv
bG9yKCkpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0gICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAgICAgICAg
ICAvLyBDdXN0b20gRmlsdGVycyBhcmUgY29udmVydGVkIHRvIFZBTElEQVRFRF9DVVNUT00gYmVm
b3JlIHJlYWNoaW5nIHRoaXMgcG9pbnQuCi0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6VkFM
SURBVEVEX0NVU1RPTTogewotICAgICAgICAgICAgY29uc3QgVmFsaWRhdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uKiBjdXN0b21PcGVyYXRpb24gPSBzdGF0aWNfY2FzdDxjb25zdCBWYWxpZGF0ZWRD
dXN0b21GaWx0ZXJPcGVyYXRpb24qPihmaWx0ZXIpOwotICAgICAgICAgICAgQVNTRVJUKGN1c3Rv
bU9wZXJhdGlvbi0+dmFsaWRhdGVkUHJvZ3JhbSgpKTsKLSAgICAgICAgICAgIFJlZlB0cjxDdXN0
b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiBwcm9ncmFtID0gY3VzdG9tT3BlcmF0aW9uLT52YWxp
ZGF0ZWRQcm9ncmFtKCk7Ci0gICAgICAgICAgICBBU1NFUlQocHJvZ3JhbS0+aXNJbml0aWFsaXpl
ZCgpKTsKLSAgICAgICAgICAgIEFTU0VSVChwcm9ncmFtLT5wbGF0Zm9ybUNvbXBpbGVkUHJvZ3Jh
bSgpKTsKLSAgICAgICAgICAgIEFTU0VSVChwcm9ncmFtLT5wbGF0Zm9ybUNvbXBpbGVkUHJvZ3Jh
bSgpLT5jbGllbnQoKSk7Ci0gICAgICAgICAgICBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkq
IGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSA9IHN0YXRpY19jYXN0PFdlYkN1c3RvbUZpbHRlclBy
b2dyYW1Qcm94eSo+KHByb2dyYW0tPnBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKCktPmNsaWVudCgp
KTsKLSAgICAgICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9ncmFtSW5m
byA9IHByb2dyYW0tPnByb2dyYW1JbmZvKCk7Ci0gICAgICAgICAgICBlbmNvZGVyLmVuY29kZUVu
dW0ocHJvZ3JhbUluZm8ubWVzaFR5cGUoKSk7Ci0gICAgICAgICAgICBlbmNvZGVyIDw8IGN1c3Rv
bUZpbHRlclByb2dyYW1Qcm94eS0+aWQoKTsKLSAgICAgICAgICAgIEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3QgcGFyYW1ldGVycyA9IGN1c3RvbU9wZXJhdGlvbi0+cGFyYW1ldGVycygpOwotICAg
ICAgICAgICAgZW5jb2RlciA8PCBzdGF0aWNfY2FzdDx1aW50MzJfdD4ocGFyYW1ldGVycy5zaXpl
KCkpOwotICAgICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzLnNpemUo
KTsgKytpKSB7Ci0gICAgICAgICAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4g
cGFyYW1ldGVyID0gcGFyYW1ldGVyc1tpXTsKLSAgICAgICAgICAgICAgICBlbmNvZGVyIDw8IHBh
cmFtZXRlci0+bmFtZSgpOwotICAgICAgICAgICAgICAgIGVuY29kZXIuZW5jb2RlRW51bShwYXJh
bWV0ZXItPnBhcmFtZXRlclR5cGUoKSk7Ci0KLSAgICAgICAgICAgICAgICBzd2l0Y2ggKHBhcmFt
ZXRlci0+cGFyYW1ldGVyVHlwZSgpKSB7Ci0gICAgICAgICAgICAgICAgY2FzZSBDdXN0b21GaWx0
ZXJQYXJhbWV0ZXI6Ok1BVFJJWDoKLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBh
cmFtZXRlcjo6QVJSQVk6IHsKLSAgICAgICAgICAgICAgICAgICAgQ3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXIqIGFycmF5UGFyYW1ldGVyID0gc3RhdGljX2Nhc3Q8Q3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXIqPihwYXJhbWV0ZXIuZ2V0KCkpOwotICAgICAgICAgICAgICAgICAgICBlbmNvZGVy
IDw8IHN0YXRpY19jYXN0PHVpbnQzMl90PihhcnJheVBhcmFtZXRlci0+c2l6ZSgpKTsKLSAgICAg
ICAgICAgICAgICAgICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBhcnJheVBhcmFtZXRlci0+c2l6
ZSgpOyArK2opCi0gICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGVyIDw8IGFycmF5UGFyYW1l
dGVyLT52YWx1ZUF0KGopOwotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAgICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OkNPTE9S
OiB7Ci0gICAgICAgICAgICAgICAgICAgIEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKiBjb2xv
clBhcmFtZXRlciA9IHN0YXRpY19jYXN0PEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKj4ocGFy
YW1ldGVyLmdldCgpKTsKLSAgICAgICAgICAgICAgICAgICAgZW5jb2RlciA8PCBjb2xvclBhcmFt
ZXRlci0+Y29sb3IoKTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAg
ICAgfQotICAgICAgICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpOVU1CRVI6
IHsKLSAgICAgICAgICAgICAgICAgICAgQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKiBudWJt
ZXJQYXJhbWV0ZXIgPSBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIqPihw
YXJhbWV0ZXIuZ2V0KCkpOwotICAgICAgICAgICAgICAgICAgICBlbmNvZGVyIDw8IHN0YXRpY19j
YXN0PHVpbnQzMl90PihudWJtZXJQYXJhbWV0ZXItPnNpemUoKSk7Ci0gICAgICAgICAgICAgICAg
ICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgbnVibWVyUGFyYW1ldGVyLT5zaXplKCk7ICsraikK
LSAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kZXIgPDwgbnVibWVyUGFyYW1ldGVyLT52YWx1
ZUF0KGopOwotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0g
ICAgICAgICAgICAgICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OlRSQU5TRk9STTogewot
ICAgICAgICAgICAgICAgICAgICBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqIHRyYW5z
Zm9ybVBhcmFtZXRlciA9IHN0YXRpY19jYXN0PEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRl
cio+KHBhcmFtZXRlci5nZXQoKSk7Ci0gICAgICAgICAgICAgICAgICAgIEFyZ3VtZW50Q29kZXI8
VHJhbnNmb3JtT3BlcmF0aW9ucz46OmVuY29kZShlbmNvZGVyLCB0cmFuc2Zvcm1QYXJhbWV0ZXIt
Pm9wZXJhdGlvbnMoKSk7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgICAgICBkZWZhdWx0OiB7Ci0gICAgICAgICAgICAgICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotCi0gICAgICAgICAg
ICBlbmNvZGVyIDw8IGN1c3RvbU9wZXJhdGlvbi0+bWVzaFJvd3MoKTsKLSAgICAgICAgICAgIGVu
Y29kZXIgPDwgY3VzdG9tT3BlcmF0aW9uLT5tZXNoQ29sdW1ucygpOwotICAgICAgICAgICAgYnJl
YWs7Ci0gICAgICAgIH0KLSNlbmRpZgogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgYnJl
YWs7CiAgICAgICAgIH0KQEAgLTIzMiwxMDEgKzE1NSw2IEBAIGJvb2wgQXJndW1lbnRDb2RlcjxX
ZWJDb3JlOjpGaWx0ZXJPcGVyYXRpb25zPjo6ZGVjb2RlKEFyZ3VtZW50RGVjb2RlciYgZGVjb2Rl
ciwKICAgICAgICAgICAgIGZpbHRlciA9IERyb3BTaGFkb3dGaWx0ZXJPcGVyYXRpb246OmNyZWF0
ZShsb2NhdGlvbiwgc3RkRGV2aWF0aW9uLCBjb2xvciwgdHlwZSk7CiAgICAgICAgICAgICBicmVh
azsKICAgICAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgY2FzZSBGaWx0
ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICAgICAgICAgIC8vIEN1c3RvbSBGaWx0ZXJzIGFyZSBj
b252ZXJ0ZWQgdG8gVkFMSURBVEVEX0NVU1RPTSBiZWZvcmUgcmVhY2hpbmcgdGhpcyBwb2ludC4K
LSAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgYnJlYWs7Ci0g
ICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOiB7Ci0gICAgICAg
ICAgICAvLyBGSVhNRTogQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIHNob3VsZCBub3QgbmVlZCB0aGUg
bWVzaFR5cGUuCi0gICAgICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTAyNTI5Ci0gICAgICAgICAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlw
ZTsKLSAgICAgICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKG1lc2hUeXBlKSkKLSAgICAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICBpbnQgcHJvZ3JhbUlEID0gMDsK
LSAgICAgICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGUocHJvZ3JhbUlEKSkKLSAgICAgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgICAgIHVpbnQzMl90IHBhcmFtZXRlcnNTaXpl
OwotICAgICAgICAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzU2l6ZSkpCi0gICAg
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgICAgICBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0IHBhcmFtZXRlcnMocGFyYW1ldGVyc1NpemUpOwotICAgICAgICAgICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzU2l6ZTsgKytpKSB7Ci0gICAgICAgICAgICAgICAg
U3RyaW5nIG5hbWU7Ci0gICAgICAgICAgICAgICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpQYXJh
bWV0ZXJUeXBlIHBhcmFtZXRlclR5cGU7Ci0gICAgICAgICAgICAgICAgaWYgKCFkZWNvZGVyLmRl
Y29kZShuYW1lKSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAg
ICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKHBhcmFtZXRlclR5cGUpKQotICAgICAgICAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgICAgICAgICBzd2l0Y2ggKHBhcmFt
ZXRlclR5cGUpIHsKLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6
TUFUUklYOgotICAgICAgICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpBUlJB
WTogewotICAgICAgICAgICAgICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0
ZXI+IGFycmF5UGFyYW1ldGVyID0gQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI6OmNyZWF0ZShu
YW1lLCBwYXJhbWV0ZXJUeXBlKTsKLSAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgYXJyYXlQ
YXJhbWV0ZXJTaXplOwotICAgICAgICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGFy
cmF5UGFyYW1ldGVyU2l6ZSkpCi0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgICAgICAgICAgICAgICAgIGRvdWJsZSBhcnJheVBhcmFtZXRlclZhbHVlOwotICAgICAg
ICAgICAgICAgICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IGFycmF5UGFyYW1ldGVyU2l6ZTsg
KytqKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGFycmF5
UGFyYW1ldGVyVmFsdWUpKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5UGFyYW1ldGVyLT5hZGRWYWx1ZShhcnJh
eVBhcmFtZXRlclZhbHVlKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAg
ICAgICBwYXJhbWV0ZXJzW2ldID0gYXJyYXlQYXJhbWV0ZXIucmVsZWFzZSgpOwotICAgICAgICAg
ICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgY2Fz
ZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OkNPTE9SOiB7Ci0gICAgICAgICAgICAgICAgICAgIFJl
ZlB0cjxDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcj4gY29sb3JQYXJhbWV0ZXIgPSBDdXN0b21G
aWx0ZXJDb2xvclBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUpOwotICAgICAgICAgICAgICAgICAgICBD
b2xvciBjOwotICAgICAgICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGMpKQotICAg
ICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgICAgICBj
b2xvclBhcmFtZXRlci0+c2V0Q29sb3IoYyk7Ci0gICAgICAgICAgICAgICAgICAgIHBhcmFtZXRl
cnNbaV0gPSBjb2xvclBhcmFtZXRlci5yZWxlYXNlKCk7Ci0gICAgICAgICAgICAgICAgICAgIGJy
ZWFrOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRl
clBhcmFtZXRlcjo6TlVNQkVSOiB7Ci0gICAgICAgICAgICAgICAgICAgIFJlZlB0cjxDdXN0b21G
aWx0ZXJOdW1iZXJQYXJhbWV0ZXI+IG51bWJlclBhcmFtZXRlciA9IEN1c3RvbUZpbHRlck51bWJl
clBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUpOwotICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBu
dW1iZXJQYXJhbWV0ZXJTaXplOwotICAgICAgICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVj
b2RlKG51bWJlclBhcmFtZXRlclNpemUpKQotICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgICAgICAgICAgICAgICAgICBkb3VibGUgbnVtYmVyUGFyYW1ldGVyVmFsdWU7
Ci0gICAgICAgICAgICAgICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgbnVtYmVyUGFyYW1l
dGVyU2l6ZTsgKytqKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVj
b2RlKG51bWJlclBhcmFtZXRlclZhbHVlKSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgICAgICAgICBudW1iZXJQYXJhbWV0ZXItPmFk
ZFZhbHVlKG51bWJlclBhcmFtZXRlclZhbHVlKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzW2ldID0gbnVtYmVyUGFyYW1ldGVyLnJlbGVhc2Uo
KTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgfQotICAgICAg
ICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpUUkFOU0ZPUk06IHsKLSAgICAg
ICAgICAgICAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcj4gdHJh
bnNmb3JtUGFyYW1ldGVyID0gQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyOjpjcmVhdGUo
bmFtZSk7Ci0gICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybU9wZXJhdGlvbnMgb3BlcmF0aW9u
czsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCFBcmd1bWVudENvZGVyPFRyYW5zZm9ybU9wZXJh
dGlvbnM+OjpkZWNvZGUoZGVjb2Rlciwgb3BlcmF0aW9ucykpCi0gICAgICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybVBhcmFtZXRl
ci0+c2V0T3BlcmF0aW9ucyhvcGVyYXRpb25zKTsKLSAgICAgICAgICAgICAgICAgICAgcGFyYW1l
dGVyc1tpXSA9IHRyYW5zZm9ybVBhcmFtZXRlci5yZWxlYXNlKCk7Ci0gICAgICAgICAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBkZWZhdWx0OiB7
Ci0gICAgICAgICAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAg
IH0KLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgdW5zaWduZWQgbWVzaFJvd3M7Ci0gICAg
ICAgICAgICB1bnNpZ25lZCBtZXNoQ29sdW1uczsKLSAgICAgICAgICAgIGlmICghZGVjb2Rlci5k
ZWNvZGUobWVzaFJvd3MpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAg
ICAgIGlmICghZGVjb2Rlci5kZWNvZGUobWVzaENvbHVtbnMpKQotICAgICAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKLQotICAgICAgICAgICAgLy8gQXQgdGhpcyBwb2ludCB0aGUgU2hhZGVycyBh
cmUgYWxyZWFkeSB2YWxpZGF0ZWQsIHNvIHdlIGp1c3QgdXNlIFdlYkN1c3RvbUZpbHRlck9wZXJh
dGlvbiBmb3IgdHJhbnNwb3J0YXRpb24uCi0gICAgICAgICAgICBmaWx0ZXIgPSBDb29yZGluYXRl
ZEN1c3RvbUZpbHRlck9wZXJhdGlvbjo6Y3JlYXRlKDAsIHByb2dyYW1JRCwgcGFyYW1ldGVycywg
bWVzaFJvd3MsIG1lc2hDb2x1bW5zKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0j
ZW5kaWYKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBA
IC0zMzksNDIgKzE2Nyw2IEBAIGJvb2wgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpGaWx0ZXJPcGVy
YXRpb25zPjo6ZGVjb2RlKEFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwKIH0KICNlbmRpZgogCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotdm9pZCBBcmd1bWVudENvZGVyPFdlYkNvcmU6OkN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvPjo6ZW5jb2RlKEFyZ3VtZW50RW5jb2RlciYgZW5jb2RlciwgY29u
c3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvKQotewotICAgIGVuY29kZXIg
PDwgcHJvZ3JhbUluZm8udmVydGV4U2hhZGVyU3RyaW5nKCk7Ci0gICAgZW5jb2RlciA8PCBwcm9n
cmFtSW5mby5mcmFnbWVudFNoYWRlclN0cmluZygpOwotICAgIGVuY29kZXIuZW5jb2RlRW51bShw
cm9ncmFtSW5mby5wcm9ncmFtVHlwZSgpKTsKLSAgICBlbmNvZGVyLmVuY29kZUVudW0ocHJvZ3Jh
bUluZm8ubWVzaFR5cGUoKSk7Ci0gICAgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRp
bmdzJiBtaXhTZXR0aW5ncyA9IHByb2dyYW1JbmZvLm1peFNldHRpbmdzKCk7Ci0gICAgZW5jb2Rl
ci5lbmNvZGVFbnVtKG1peFNldHRpbmdzLmJsZW5kTW9kZSk7Ci0gICAgZW5jb2Rlci5lbmNvZGVF
bnVtKG1peFNldHRpbmdzLmNvbXBvc2l0ZU9wZXJhdG9yKTsKLX0KLQotYm9vbCBBcmd1bWVudENv
ZGVyPFdlYkNvcmU6OkN1c3RvbUZpbHRlclByb2dyYW1JbmZvPjo6ZGVjb2RlKEFyZ3VtZW50RGVj
b2RlciYgZGVjb2RlciwgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvKQotewot
ICAgIFN0cmluZyB2ZXJ0ZXhTaGFkZXJTdHJpbmc7Ci0gICAgU3RyaW5nIGZyYWdtZW50U2hhZGVy
U3RyaW5nOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlOwotICAgIEN1
c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1NaXhT
ZXR0aW5ncyBtaXhTZXR0aW5nczsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHZlcnRleFNoYWRl
clN0cmluZykpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KGZyYWdtZW50U2hhZGVyU3RyaW5nKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIGlmICgh
ZGVjb2Rlci5kZWNvZGVFbnVtKHByb2dyYW1UeXBlKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwot
ICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKG1lc2hUeXBlKSkKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKG1peFNldHRpbmdzLmJsZW5kTW9kZSkp
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bShtaXhT
ZXR0aW5ncy5jb21wb3NpdGVPcGVyYXRvcikpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBw
cm9ncmFtSW5mbyA9IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvKHZlcnRleFNoYWRlclN0cmluZywg
ZnJhZ21lbnRTaGFkZXJTdHJpbmcsIHByb2dyYW1UeXBlLCBtaXhTZXR0aW5ncywgbWVzaFR5cGUp
OwotICAgIHJldHVybiB0cnVlOwotfQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQog
dm9pZCBBcmd1bWVudENvZGVyPFRyYW5zZm9ybU9wZXJhdGlvbnM+OjplbmNvZGUoQXJndW1lbnRF
bmNvZGVyJiBlbmNvZGVyLCBjb25zdCBUcmFuc2Zvcm1PcGVyYXRpb25zJiB0cmFuc2Zvcm1PcGVy
YXRpb25zKQogewogICAgIGVuY29kZXIgPDwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHRyYW5zZm9y
bU9wZXJhdGlvbnMuc2l6ZSgpKTsKQEAgLTEwODQsMTUgKzg3Niw2IEBAIHZvaWQgQXJndW1lbnRD
b2RlcjxDb29yZGluYXRlZEdyYXBoaWNzU3RhdGU+OjplbmNvZGUoQXJndW1lbnRFbmNvZGVyJiBl
bmNvZGVyLCBjCiAgICAgICAgIGVuY29kZUNvb3JkaW5hdGVkU3VyZmFjZShlbmNvZGVyLCBzdGF0
ZS51cGRhdGVBdGxhc2VzVG9DcmVhdGVbaV0uc2Vjb25kKTsKICAgICB9CiAgICAgZW5jb2RlciA8
PCBzdGF0ZS51cGRhdGVBdGxhc2VzVG9SZW1vdmU7Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0gICAgZW5jb2RlciA8PCBzdGF0aWNfY2FzdDx1aW50NjRfdD4oc3RhdGUuY3VzdG9tRmlsdGVy
c1RvQ3JlYXRlLnNpemUoKSk7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdGF0ZS5jdXN0
b21GaWx0ZXJzVG9DcmVhdGUuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgZW5jb2RlciA8PCBzdGF0
ZS5jdXN0b21GaWx0ZXJzVG9DcmVhdGVbaV0uZmlyc3Q7Ci0gICAgICAgIGVuY29kZXIgPDwgc3Rh
dGUuY3VzdG9tRmlsdGVyc1RvQ3JlYXRlW2ldLnNlY29uZDsKLSAgICB9Ci0gICAgZW5jb2RlciA8
PCBzdGF0ZS5jdXN0b21GaWx0ZXJzVG9SZW1vdmU7Ci0jZW5kaWYKIH0KIAogYm9vbCBBcmd1bWVu
dENvZGVyPENvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZT46OmRlY29kZShBcmd1bWVudERlY29kZXIm
IGRlY29kZXIsIENvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZSYgc3RhdGUpCkBAIC0xMTYyLDI1ICs5
NDUsNiBAQCBib29sIEFyZ3VtZW50Q29kZXI8Q29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlPjo6ZGVj
b2RlKEFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwgQwogICAgIGlmICghZGVjb2Rlci5kZWNvZGUo
c3RhdGUudXBkYXRlQXRsYXNlc1RvUmVtb3ZlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIHVpbnQ2NF90IHNpemVPZkN1c3RvbUZpbHRlcnNU
b0NyZWF0ZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHNpemVPZkN1c3RvbUZpbHRlcnNUb0Ny
ZWF0ZSkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGZvciAodWludDY0X3QgaSA9IDA7
IGkgPCBzaXplT2ZDdXN0b21GaWx0ZXJzVG9DcmVhdGU7ICsraSkgewotICAgICAgICB1aW50MzJf
dCBmaWx0ZXJJRDsKLSAgICAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShmaWx0ZXJJRCkpCi0gICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvIGZp
bHRlckluZm87Ci0gICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGUoZmlsdGVySW5mbykpCi0gICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIHN0YXRlLmN1c3RvbUZpbHRlcnNUb0NyZWF0
ZS5hcHBlbmQoc3RkOjptYWtlX3BhaXIoZmlsdGVySUQsIGZpbHRlckluZm8pKTsKLSAgICB9Ci0K
LSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHN0YXRlLmN1c3RvbUZpbHRlcnNUb1JlbW92ZSkpCi0g
ICAgICAgIHJldHVybiBmYWxzZTsKLSNlbmRpZgotCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3Jk
aW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nv
b3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLmgKaW5k
ZXggYTNjZGMwNC4uZWRjNGMzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nv
b3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLmgKKysr
IGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRH
cmFwaGljc0FyZ3VtZW50Q29kZXJzLmgKQEAgLTQ4LDEwICs0OCw2IEBAIHN0cnVjdCBMZW5ndGg7
CiBjbGFzcyBGaWx0ZXJPcGVyYXRpb25zOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbzsKLSNlbmRpZgotCiAjaWYgVVNFKEdS
QVBISUNTX1NVUkZBQ0UpCiBzdHJ1Y3QgR3JhcGhpY3NTdXJmYWNlVG9rZW47CiAjZW5kaWYKQEAg
LTY2LDEzICs2Miw2IEBAIHRlbXBsYXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6
RmlsdGVyT3BlcmF0aW9ucz4gewogfTsKICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KQotdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mbz4gewotICAgIHN0YXRpYyB2b2lkIGVuY29kZShBcmd1bWVudEVuY29kZXImLCBj
b25zdCBXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYpOwotICAgIHN0YXRpYyBib29s
IGRlY29kZShBcmd1bWVudERlY29kZXImLCBXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5m
byYpOwotfTsKLSNlbmRpZgotCiB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYkNv
cmU6OlRyYW5zZm9ybU9wZXJhdGlvbnM+IHsKICAgICBzdGF0aWMgdm9pZCBlbmNvZGUoQXJndW1l
bnRFbmNvZGVyJiwgY29uc3QgV2ViQ29yZTo6VHJhbnNmb3JtT3BlcmF0aW9ucyYpOwogICAgIHN0
YXRpYyBib29sIGRlY29kZShBcmd1bWVudERlY29kZXImLCBXZWJDb3JlOjpUcmFuc2Zvcm1PcGVy
YXRpb25zJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRH
cmFwaGljcy9XZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIv
U2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmNw
cApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTZmNzA3Ni4uMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJDdXN0b21GaWx0ZXJQ
cm9ncmFtUHJveHkuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNDkgKzAsMCBAQAotLyoKLSAqIENv
cHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAq
Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBk
aXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAq
ICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQotICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0jaW5jbHVkZSAiV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmgiCi0KLW5h
bWVzcGFjZSBXZWJLaXQgewotCi1pbnQgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5OjpzX25l
eHRJZCA9IDE7Ci0KLVdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eTo6fldlYkN1c3RvbUZpbHRl
clByb2dyYW1Qcm94eSgpCi17Ci0gICAgaWYgKG1fY2xpZW50KSB7Ci0gICAgICAgIG1fY2xpZW50
LT5yZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkodGhpcyk7Ci0gICAgICAgIG1fY2xpZW50
ID0gMDsKLSAgICB9Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gRU5B
QkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3Jk
aW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmggYi9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJv
eHkuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGEwODdhMC4uMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJDdXN0b21GaWx0
ZXJQcm9ncmFtUHJveHkuaAorKysgL2Rldi9udWxsCkBAIC0xLDkzICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0g
KiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHlf
aAotI2RlZmluZSBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHlfaAotCi0jaWYgVVNFKENPT1JE
SU5BVEVEX0dSQVBISUNTKSAmJiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlIDxXZWJD
b3JlL1RleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbS5oPgotI2luY2x1ZGUgPHd0
Zi9SZWZDb3VudGVkLmg+Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1jbGFzcyBXZWJDdXN0b21G
aWx0ZXJQcm9ncmFtUHJveHk7Ci0KLWNsYXNzIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eUNs
aWVudCB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB2b2lkIHJlbW92ZUN1c3RvbUZpbHRlclByb2dy
YW1Qcm94eShXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkqKSA9IDA7Ci19OwotCi0vLyBUaGlz
IGlzIGEgcHJveHkgY2xhc3MgdXNlZCB0byBzdG9yZSB0aGUgSUQgb2YgdGhlIGN1c3RvbSBmaWx0
ZXIgcHJvZ3JhbSBzZXJpYWxpemVkIHRvIHRoZSBvdGhlciBwcm9jZXNzLgotLy8gSXQgbGl2ZXMg
aW4gdGhlIFdlYlByb2Nlc3MgYW5kIGlzIHJlZmVyZW5jZWQgZnJvbSB0aGUgQ3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbSBtZWFuaW5nIHRoYXQgaXQgd2lsbCBiZSBrZXB0IGFsaXZlIGFzCi0v
LyBsb25nIGFzIGEgbGF5ZXIgb24gdGhlIHBhZ2Ugd2lsbCByZW5kZXIgd2l0aCB0aGlzIHByb2dy
YW0uIEl0IHdpbGwgY2FsbCByZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkgb24gdGhlIG1f
Y2xpZW50Ci0vLyB3aGVuIHRoZSBwcm9ncmFtIGlzIG5vIGxvbmdlciBuZWVkZWQgdG8gcmVuZGVy
IHRoZSBmaWx0ZXIuIFRoZSBjbGllbnQgY2FuIHRoZW4gc2VuZCBhIG1lc3NhZ2UgdG8gdGhlIFVJ
IHByb2Nlc3MKLS8vIHRvIGRlc3Ryb3kgdGhlIGFzc29jaWF0ZWQgcmVmZXJlbmNlLiBOb3RlIHRo
YXQgbW9yZSBsYXllcnMgY2FuIHNoYXJlIHRoZSBzYW1lIHByb2dyYW0gYW5kIHRoZXJlJ3MKLS8v
IG5vIG5lZWQgdG8gaW1wbGVtZW50IGEgY2FjaGluZyBtZWNoYW5pc20gaW4gdGhlIGNvbXBvc2l0
b3Igc2lkZS4KLQotY2xhc3MgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5IDogcHVibGljIFJl
ZkNvdW50ZWQ8V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5PiwgcHVibGljIFdlYkNvcmU6OlRl
eHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbUNsaWVudCB7Ci1wdWJsaWM6Ci0gICAg
dXNpbmcgUmVmQ291bnRlZDxXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHk+OjpyZWY7Ci0gICAg
dXNpbmcgUmVmQ291bnRlZDxXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHk+OjpkZXJlZjsKLQot
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eT4gY3JlYXRl
KCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgV2ViQ3VzdG9tRmlsdGVyUHJv
Z3JhbVByb3h5KCkpOwotICAgIH0KLQotICAgIGludCBpZCgpIGNvbnN0IHsgcmV0dXJuIG1faWQ7
IH0KLQotICAgIC8vIE5lZWRlZCB0byBtYWtlIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVk
UHJvZ3JhbUNsaWVudCBsb29rIGxpa2UgYSBSZWZDb3VudGVkIG9iamVjdC4KLSAgICB2aXJ0dWFs
IHZvaWQgcmVmRnJvbVZhbGlkYXRlZFByb2dyYW0oKSB7IHJlZigpOyB9Ci0gICAgdmlydHVhbCB2
b2lkIGRlcmVmRnJvbVZhbGlkYXRlZFByb2dyYW0oKSB7IGRlcmVmKCk7IH0KLQotICAgIHZpcnR1
YWwgfldlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSgpOwotICAgIAotICAgIHZvaWQgc2V0Q2xp
ZW50KFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eUNsaWVudCogY2xpZW50KSB7IG1fY2xpZW50
ID0gY2xpZW50OyB9Ci0gICAgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Q2xpZW50KiBjbGll
bnQoKSBjb25zdCB7IHJldHVybiBtX2NsaWVudDsgfQotCi1wcml2YXRlOgotICAgIFdlYkN1c3Rv
bUZpbHRlclByb2dyYW1Qcm94eSgpCi0gICAgICAgIDogbV9jbGllbnQoMCkKLSAgICAgICAgLCBt
X2lkKHNfbmV4dElkKyspCi0gICAgewotICAgIH0KLSAgICAKLSAgICBXZWJDdXN0b21GaWx0ZXJQ
cm9ncmFtUHJveHlDbGllbnQqIG1fY2xpZW50OwotICAgIGludCBtX2lkOwotICAgIAotICAgIHN0
YXRpYyBpbnQgc19uZXh0SWQ7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlm
IC8vIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykgJiYgRU5BQkxFKENTU19TSEFERVJTKQotCi0j
ZW5kaWYgLy8gV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5X2gKLQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAppbmRleCBkNGQ1Zjg4Li4zMjM1
MzUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29k
ZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJz
LmNwcApAQCAtMTQ2MiwxMiArMTQ2Miw2IEBAIHN0YXRpYyB2b2lkIGVuY29kZUZpbHRlck9wZXJh
dGlvbihBcmd1bWVudEVuY29kZXImIGVuY29kZXIsIGNvbnN0IEZpbHRlck9wZXJhdGlvCiAgICAg
ICAgIGVuY29kZXIgPDwgZHJvcFNoYWRvd0ZpbHRlci5jb2xvcigpOwogICAgICAgICBicmVhazsK
ICAgICB9Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9u
OjpDVVNUT006Ci0gICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OlZBTElEQVRFRF9DVVNUT006Ci0g
ICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICBicmVhazsKLSNlbmRpZgogICAg
IGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpQQVNTVEhST1VHSDoKICAgICBjYXNlIEZpbHRlck9wZXJh
dGlvbjo6Tk9ORToKICAgICAgICAgYnJlYWs7CkBAIC0xNTMxLDEyICsxNTI1LDYgQEAgc3RhdGlj
IGJvb2wgZGVjb2RlRmlsdGVyT3BlcmF0aW9uKEFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwgUmVm
UHRyPEZpbHRlck9wZXJhdGkKICAgICAgICAgZmlsdGVyID0gRHJvcFNoYWRvd0ZpbHRlck9wZXJh
dGlvbjo6Y3JlYXRlKGxvY2F0aW9uLCBzdGREZXZpYXRpb24sIGNvbG9yLCB0eXBlKTsKICAgICAg
ICAgYnJlYWs7CiAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIEZpbHRl
ck9wZXJhdGlvbjo6Q1VTVE9NOgotICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURf
Q1VTVE9NOgotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgYnJlYWs7Ci0j
ZW5kaWYKICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6UEFTU1RIUk9VR0g6CiAgICAgY2FzZSBG
aWx0ZXJPcGVyYXRpb246Ok5PTkU6CiAgICAgICAgIGJyZWFrOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaCBiL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKaW5kZXggZTlmNzExNC4uMjkzMjJmOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCkBAIC05Nyw3ICs5Nyw2
IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogICAgIG1hY3JvKENvbXBvc2l0aW5nQm9yZGVyc1Zpc2li
bGUsIGNvbXBvc2l0aW5nQm9yZGVyc1Zpc2libGUsIEJvb2wsIGJvb2wsIGZhbHNlKSBcCiAgICAg
bWFjcm8oQ29tcG9zaXRpbmdSZXBhaW50Q291bnRlcnNWaXNpYmxlLCBjb21wb3NpdGluZ1JlcGFp
bnRDb3VudGVyc1Zpc2libGUsIEJvb2wsIGJvb2wsIGZhbHNlKSBcCiAgICAgbWFjcm8oVGlsZWRT
Y3JvbGxpbmdJbmRpY2F0b3JWaXNpYmxlLCB0aWxlZFNjcm9sbGluZ0luZGljYXRvclZpc2libGUs
IEJvb2wsIGJvb2wsIGZhbHNlKSBcCi0gICAgbWFjcm8oQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCwg
Y3NzQ3VzdG9tRmlsdGVyRW5hYmxlZCwgQm9vbCwgYm9vbCwgdHJ1ZSkgXAogICAgIG1hY3JvKFdl
YkdMRW5hYmxlZCwgd2ViR0xFbmFibGVkLCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAgbWFjcm8o
TXVsdGl0aHJlYWRlZFdlYkdMRW5hYmxlZCwgbXVsdGl0aHJlYWRlZFdlYkdMRW5hYmxlZCwgQm9v
bCwgYm9vbCwgZmFsc2UpIFwKICAgICBtYWNybyhGb3JjZVNvZnR3YXJlV2ViR0xSZW5kZXJpbmcs
IGZvcmNlU29mdHdhcmVXZWJHTFJlbmRlcmluZywgQm9vbCwgYm9vbCwgZmFsc2UpIFwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rp
b24ubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVRyYW5zYWN0
aW9uLm1tCmluZGV4IGQ5OTNlZDAuLjUxOTdhYjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24ubW0KKysrIGIvU291cmNlL1dl
YktpdDIvU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5tbQpAQCAtNDk1LDE0
ICs0OTUsNiBAQCBSZW1vdGVMYXllclRyZWVUZXh0U3RyZWFtJiBSZW1vdGVMYXllclRyZWVUZXh0
U3RyZWFtOjpvcGVyYXRvcjw8KGNvbnN0IEZpbHRlck9wZQogICAgICAgICBjYXNlIEZpbHRlck9w
ZXJhdGlvbjo6RFJPUF9TSEFET1c6CiAgICAgICAgICAgICB0cyA8PCAiZHJvcCBzaGFkb3ciOwog
ICAgICAgICAgICAgYnJlYWs7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBjYXNl
IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOgotICAgICAgICAgICAgdHMgPDwgImN1c3RvbSI7Ci0g
ICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OlZBTElEQVRF
RF9DVVNUT006Ci0gICAgICAgICAgICB0cyA8PCAiY3VzdG9tICh2YWxpZGF0ZWQpIjsKLSAgICAg
ICAgICAgIGJyZWFrOwotI2VuZGlmCiAgICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpQQVNT
VEhST1VHSDoKICAgICAgICAgICAgIHRzIDw8ICJwYXNzdGhyb3VnaCI7CiAgICAgICAgICAgICBi
cmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZl
cmVuY2VzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2Vz
LmNwcAppbmRleCBlZGUwOWQ5Li44ZDI1YzcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCkBAIC00NTksMTYgKzQ1OSw2IEBAIGJvb2wg
V0tQcmVmZXJlbmNlc0dldFRpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlzaWJsZShXS1ByZWZlcmVu
Y2VzUmVmIHByZWZlcmVuY2VzCiAgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnRp
bGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlzaWJsZSgpOwogfQogCi12b2lkIFdLUHJlZmVyZW5jZXNT
ZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYs
IGJvb2wgZmxhZykKLXsKLSAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zZXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkKGZsYWcpOwotfQotCi1ib29sIFdLUHJlZmVyZW5jZXNHZXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpCi17Ci0gICAgcmV0
dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPmNzc0N1c3RvbUZpbHRlckVuYWJsZWQoKTsKLX0K
LQogdm9pZCBXS1ByZWZlcmVuY2VzU2V0V2ViR0xFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJl
ZmVyZW5jZXNSZWYsIGJvb2wgZmxhZykKIHsKICAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5z
ZXRXZWJHTEVuYWJsZWQoZmxhZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oCmluZGV4IDg2N2M5OTcuLmU4YmIxMWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJp
dmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2Vz
UHJpdmF0ZS5oCkBAIC04OSwxMCArODksNiBAQCBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2Vz
U2V0VGlsZWRTY3JvbGxpbmdJbmRpY2F0b3JWaXNpYmxlKFdLUHJlZmVyZW5jZXNSZWYsCiBXS19F
WFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0VGlsZWRTY3JvbGxpbmdJbmRpY2F0b3JWaXNpYmxl
KFdLUHJlZmVyZW5jZXNSZWYpOwogCiAvLyBEZWZhdWx0cyB0byB0cnVlLgotV0tfRVhQT1JUIHZv
aWQgV0tQcmVmZXJlbmNlc1NldENTU0N1c3RvbUZpbHRlckVuYWJsZWQoV0tQcmVmZXJlbmNlc1Jl
ZiwgYm9vbCBmbGFnKTsKLVdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYpOwotCi0vLyBEZWZhdWx0cyB0byB0cnVlLgog
V0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFdlYkdMRW5hYmxlZChXS1ByZWZlcmVuY2Vz
UmVmLCBib29sKTsKIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRXZWJHTEVuYWJsZWQo
V0tQcmVmZXJlbmNlc1JlZik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKaW5kZXggZGJmMGNmMC4u
YzIzY2U0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKQEAgLTIwMyw3ICsyMDMsNiBAQCB2b2lk
IEluamVjdGVkQnVuZGxlOjpvdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVzdFJ1bm5lcihXZWJQ
YWdlR3JvdXBQcm94eSogcGFnZQogI2RlZmluZSBGT1JfRUFDSF9PVkVSUklERV9CT09MX1BSRUZF
UkVOQ0UobWFjcm8pIFwKICAgICBtYWNybyhXZWJLaXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5h
YmxlZCwgQWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWQsIGFjY2VsZXJhdGVkQ29tcG9zaXRp
bmdFbmFibGVkKSBcCiAgICAgbWFjcm8oV2ViS2l0Q2FudmFzVXNlc0FjY2VsZXJhdGVkRHJhd2lu
ZywgQ2FudmFzVXNlc0FjY2VsZXJhdGVkRHJhd2luZywgY2FudmFzVXNlc0FjY2VsZXJhdGVkRHJh
d2luZykgXAotICAgIG1hY3JvKFdlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQsIENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQsIGNzc0N1c3RvbUZpbHRlckVuYWJsZWQpIFwKICAgICBtYWNybyhXZWJL
aXRDU1NHcmlkTGF5b3V0RW5hYmxlZCwgQ1NTR3JpZExheW91dEVuYWJsZWQsIGNzc0dyaWRMYXlv
dXRFbmFibGVkKSBcCiAgICAgbWFjcm8oV2ViS2l0RnJhbWVGbGF0dGVuaW5nRW5hYmxlZCwgRnJh
bWVGbGF0dGVuaW5nRW5hYmxlZCwgZnJhbWVGbGF0dGVuaW5nRW5hYmxlZCkgXAogICAgIG1hY3Jv
KFdlYktpdEphdmFFbmFibGVkLCBKYXZhRW5hYmxlZCwgamF2YUVuYWJsZWQpIFwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNz
L0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExheWVyVHJlZUhvc3QuY3Bw
CmluZGV4IDI4ZTA2MzUuLjI1NzQ3YTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9z
dC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVk
R3JhcGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmNwcApAQCAtNDMsMTEgKzQzLDYgQEAK
ICNpbmNsdWRlIDxXZWJDb3JlL1NldHRpbmdzLmg+CiAjaW5jbHVkZSA8d3RmL0N1cnJlbnRUaW1l
Lmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIlZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlv
bi5oIgotI2VuZGlmCi0KIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgV2Vi
S2l0IHsKQEAgLTU5LDkgKzU0LDYgQEAgUGFzc1JlZlB0cjxDb29yZGluYXRlZExheWVyVHJlZUhv
c3Q+IENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6Y3JlYXRlKFdlYlBhZ2UqIHcKIAogQ29vcmRp
bmF0ZWRMYXllclRyZWVIb3N0Ojp+Q29vcmRpbmF0ZWRMYXllclRyZWVIb3N0KCkKIHsKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgZGlzY29ubmVjdEN1c3RvbUZpbHRlclByb2dyYW1zKCk7
Ci0jZW5kaWYKIH0KIAogQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0OjpDb29yZGluYXRlZExheWVy
VHJlZUhvc3QoV2ViUGFnZSogd2ViUGFnZSkKQEAgLTIxNSw4NSArMjA3LDYgQEAgdm9pZCBDb29y
ZGluYXRlZExheWVyVHJlZUhvc3Q6OnB1cmdlQmFja2luZ1N0b3JlcygpCiAgICAgbV9jb29yZGlu
YXRvci0+cHVyZ2VCYWNraW5nU3RvcmVzKCk7CiB9CiAKLXZvaWQgQ29vcmRpbmF0ZWRMYXllclRy
ZWVIb3N0Ojp3aWxsU3luY0xheWVyU3RhdGUoQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyU3RhdGUm
IHN0YXRlKQotewotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBpZiAoc3RhdGUuYW5pbWF0
aW9uc0NoYW5nZWQpCi0gICAgICAgIHByZXBhcmVDdXN0b21GaWx0ZXJQcm94aWVzRm9yQW5pbWF0
aW9ucyhzdGF0ZS5hbmltYXRpb25zKTsKLQotICAgIGlmIChzdGF0ZS5maWx0ZXJzQ2hhbmdlZCkK
LSAgICAgICAgY2hlY2tDdXN0b21GaWx0ZXJQcm9ncmFtUHJveGllcyhzdGF0ZS5maWx0ZXJzKTsK
LSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKHN0YXRlKTsKLSNlbmRpZgotfQotCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotdm9pZCBDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6OnByZXBhcmVDdXN0
b21GaWx0ZXJQcm94aWVzRm9yQW5pbWF0aW9ucyhHcmFwaGljc0xheWVyQW5pbWF0aW9ucyYgYWN0
aXZlQW5pbWF0aW9ucykKLXsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGFjdGl2ZUFuaW1h
dGlvbnMuYW5pbWF0aW9ucygpLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGNvbnN0IEtleWZyYW1l
VmFsdWVMaXN0JiBrZXlmcmFtZXMgPSBhY3RpdmVBbmltYXRpb25zLmFuaW1hdGlvbnMoKS5hdChp
KS5rZXlmcmFtZXMoKTsKLSAgICAgICAgaWYgKGtleWZyYW1lcy5wcm9wZXJ0eSgpICE9IEFuaW1h
dGVkUHJvcGVydHlXZWJraXRGaWx0ZXIpCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAg
Zm9yIChzaXplX3QgaiA9IDA7IGogPCBrZXlmcmFtZXMuc2l6ZSgpOyArK2opIHsKLSAgICAgICAg
ICAgIGNvbnN0IEZpbHRlckFuaW1hdGlvblZhbHVlJiBmaWx0ZXJWYWx1ZSA9IHN0YXRpY19jYXN0
PGNvbnN0IEZpbHRlckFuaW1hdGlvblZhbHVlJj4oa2V5ZnJhbWVzLmF0KGopKTsKLSAgICAgICAg
ICAgIGNoZWNrQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3hpZXMoZmlsdGVyVmFsdWUudmFsdWUoKSk7
Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLXZvaWQgQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0Ojpj
aGVja0N1c3RvbUZpbHRlclByb2dyYW1Qcm94aWVzKGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZp
bHRlcnMpCi17Ci0gICAgLy8gV2UgbmVlZCB0byBjcmVhdGUgdGhlIFdlYkN1c3RvbUZpbHRlclBy
b2dyYW1Qcm94eSBvYmplY3RzIGJlZm9yZSB3ZSBnZXQgdG8gc2VyaWFsaXplIHRoZQotICAgIC8v
IGN1c3RvbSBmaWx0ZXJzIHRvIHRoZSBvdGhlciBwcm9jZXNzLiBUaGF0J3MgYmVjYXVzZSBXZWJD
dXN0b21GaWx0ZXJQcm9ncmFtUHJveHkgbmVlZHMKLSAgICAvLyB0byBsaW5rIGJhY2sgdG8gdGhl
IGNvb3JkaW5hdG9yLCBzbyB0aGF0IHdlIGNhbiBzZW5kIGEgbWVzc2FnZSB0byB0aGUgVUkgcHJv
Y2VzcyB3aGVuCi0gICAgLy8gdGhlIHByb2dyYW0gaXMgbm90IG5lZWRlZCBhbnltb3JlLgotICAg
IC8vIE5vdGUgdGhhdCB0aGUgc2VyaWFsaXphdGlvbiB3aWxsIG9ubHkgaGFwcGVuIGF0IGEgbGF0
ZXIgdGltZSBpbiBBcmd1bWVudENvZGVyPFdlYkNvcmU6OkZpbHRlck9wZXJhdGlvbnM+OjplbmNv
ZGUuCi0gICAgLy8gQXQgdGhhdCBwb2ludCB0aGUgcHJvZ3JhbSB3aWxsIG9ubHkgYmUgc2VyaWFs
aXplZCBvbmNlLiBBbGwgdGhlIG90aGVyIHRpbWVzIGl0IHdpbGwgb25seSB1c2UgdGhlIElEIG9m
IHRoZSBwcm9ncmFtLgotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZmlsdGVycy5zaXplKCk7
ICsraSkgewotICAgICAgICBjb25zdCBGaWx0ZXJPcGVyYXRpb24qIG9wZXJhdGlvbiA9IGZpbHRl
cnMuYXQoaSk7Ci0gICAgICAgIGlmIChvcGVyYXRpb24tPnR5cGUoKSAhPSBGaWx0ZXJPcGVyYXRp
b246OlZBTElEQVRFRF9DVVNUT00pCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgY29u
c3QgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKiBjdXN0b21PcGVyYXRpb24gPSBzdGF0
aWNfY2FzdDxjb25zdCBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qPihvcGVyYXRpb24p
OwotICAgICAgICBBU1NFUlQoY3VzdG9tT3BlcmF0aW9uLT52YWxpZGF0ZWRQcm9ncmFtKCktPmlz
SW5pdGlhbGl6ZWQoKSk7Ci0gICAgICAgIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJv
Z3JhbSogcHJvZ3JhbSA9IGN1c3RvbU9wZXJhdGlvbi0+dmFsaWRhdGVkUHJvZ3JhbSgpLT5wbGF0
Zm9ybUNvbXBpbGVkUHJvZ3JhbSgpOwotCi0gICAgICAgIFJlZlB0cjxXZWJDdXN0b21GaWx0ZXJQ
cm9ncmFtUHJveHk+IGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eTsKLSAgICAgICAgaWYgKHByb2dy
YW0tPmNsaWVudCgpKQotICAgICAgICAgICAgY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5ID0gc3Rh
dGljX2Nhc3Q8V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Kj4ocHJvZ3JhbS0+Y2xpZW50KCkp
OwotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSA9
IFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eTo6Y3JlYXRlKCk7Ci0gICAgICAgICAgICBwcm9n
cmFtLT5zZXRDbGllbnQoY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KTsKLSAgICAgICAgfQotCi0g
ICAgICAgIGlmICghY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LT5jbGllbnQoKSkgewotICAgICAg
ICAgICAgY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LT5zZXRDbGllbnQodGhpcyk7Ci0gICAgICAg
ICAgICBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmFkZChjdXN0b21GaWx0ZXJQcm9ncmFtUHJveHku
Z2V0KCkpOwotICAgICAgICAgICAgbV9jb29yZGluYXRvci0+c3RhdGUoKS5jdXN0b21GaWx0ZXJz
VG9DcmVhdGUuYXBwZW5kKHN0ZDo6bWFrZV9wYWlyKGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS0+
aWQoKSwgY3VzdG9tT3BlcmF0aW9uLT52YWxpZGF0ZWRQcm9ncmFtKCktPnZhbGlkYXRlZFByb2dy
YW1JbmZvKCkpKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIC8vIElmIHRoZSBjbGll
bnQgd2FzIG5vdCBkaXNjb25uZWN0ZWQgdGhlbiB0aGlzIGNvb3JkaW5hdG9yIG11c3QgYmUgdGhl
IGNsaWVudCBmb3IgaXQuCi0gICAgICAgICAgICBBU1NFUlQoY3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5LT5jbGllbnQoKSA9PSB0aGlzKTsKLSAgICAgICAgfQotICAgIH0KLX0KLQotdm9pZCBDb29y
ZGluYXRlZExheWVyVHJlZUhvc3Q6OnJlbW92ZUN1c3RvbUZpbHRlclByb2dyYW1Qcm94eShXZWJD
dXN0b21GaWx0ZXJQcm9ncmFtUHJveHkqIGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSkKLXsKLSAg
ICAvLyBBdCB0aGlzIHRpbWUgdGhlIHNoYWRlciBpcyBub3QgbmVlZGVkIGFueW1vcmUsIHNvIHdl
IHJlbW92ZSBpdCBmcm9tIG91ciBzZXQgYW5kCi0gICAgLy8gc2VuZCBhIG1lc3NhZ2UgdG8gdGhl
IG90aGVyIHByb2Nlc3MgdG8gZGVsZXRlIGl0LgotICAgIG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMu
cmVtb3ZlKGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSk7Ci0gICAgbV9jb29yZGluYXRvci0+c3Rh
dGUoKS5jdXN0b21GaWx0ZXJzVG9SZW1vdmUuYXBwZW5kKGN1c3RvbUZpbHRlclByb2dyYW1Qcm94
eS0+aWQoKSk7Ci19Ci0KLXZvaWQgQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0OjpkaXNjb25uZWN0
Q3VzdG9tRmlsdGVyUHJvZ3JhbXMoKQotewotICAgIC8vIE1ha2Ugc3VyZSB0aGF0IFdlYkNvcmUg
d2lsbCBub3QgY2FsbCBpbnRvIHRoaXMgY29vcmRpbmF0b3IgYW55bW9yZS4KLSAgICBIYXNoU2V0
PFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSo+OjppdGVyYXRvciBpdGVyID0gbV9jdXN0b21G
aWx0ZXJQcm9ncmFtcy5iZWdpbigpOwotICAgIGZvciAoOyBpdGVyICE9IG1fY3VzdG9tRmlsdGVy
UHJvZ3JhbXMuZW5kKCk7ICsraXRlcikKLSAgICAgICAgKCppdGVyKS0+c2V0Q2xpZW50KDApOwot
fQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQogdm9pZCBDb29yZGluYXRlZExheWVy
VHJlZUhvc3Q6OmRpZEZsdXNoUm9vdExheWVyKCkKIHsKICAgICBpZiAobV9wYWdlT3ZlcmxheUxh
eWVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3Jk
aW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmggYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExheWVy
VHJlZUhvc3QuaAppbmRleCA1NDRlODI4Li41MTI4MTBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExh
eWVyVHJlZUhvc3QuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29v
cmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExheWVyVHJlZUhvc3QuaApAQCAtMjksMTAgKzI5
LDYgQEAKICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzTGF5ZXJGYWN0b3J5Lmg+CiAjaW5jbHVk
ZSA8d3RmL0hhc2hTZXQuaD4KIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJX
ZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkuaCIKLSNlbmRpZgotCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiBjbGFzcyBDb29yZGluYXRlZFN1cmZhY2U7CiB9CkBAIC00Miw5ICszOCw2IEBAIG5hbWVz
cGFjZSBXZWJLaXQgewogY2xhc3MgV2ViUGFnZTsKIAogY2xhc3MgQ29vcmRpbmF0ZWRMYXllclRy
ZWVIb3N0IDogcHVibGljIExheWVyVHJlZUhvc3QsIHB1YmxpYyBXZWJDb3JlOjpDb21wb3NpdGlu
Z0Nvb3JkaW5hdG9yOjpDbGllbnQKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgLCBXZWJD
dXN0b21GaWx0ZXJQcm9ncmFtUHJveHlDbGllbnQKLSNlbmRpZgogewogcHVibGljOgogICAgIHN0
YXRpYyBQYXNzUmVmUHRyPENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdD4gY3JlYXRlKFdlYlBhZ2Uq
KTsKQEAgLTEwMywzMSArOTYsMTYgQEAgcHJpdmF0ZToKIAogICAgIC8vIENvbXBvc2l0aW5nQ29v
cmRpbmF0b3I6OkNsaWVudAogICAgIHZpcnR1YWwgdm9pZCBkaWRGbHVzaFJvb3RMYXllcigpIG92
ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCB3aWxsU3luY0xheWVyU3RhdGUoV2ViQ29yZTo6Q29v
cmRpbmF0ZWRHcmFwaGljc0xheWVyU3RhdGUmKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQg
bm90aWZ5Rmx1c2hSZXF1aXJlZCgpIG92ZXJyaWRlIHsgc2NoZWR1bGVMYXllckZsdXNoKCk7IH07
CiAgICAgdmlydHVhbCB2b2lkIGNvbW1pdFNjZW5lU3RhdGUoY29uc3QgV2ViQ29yZTo6Q29vcmRp
bmF0ZWRHcmFwaGljc1N0YXRlJikgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIHBhaW50TGF5
ZXJDb250ZW50cyhjb25zdCBXZWJDb3JlOjpHcmFwaGljc0xheWVyKiwgV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0JiwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgY2xpcFJlY3QpIG92ZXJyaWRlOwog
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIHZvaWQgcHJlcGFyZUN1c3RvbUZpbHRlclBy
b3hpZXNGb3JBbmltYXRpb25zKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJBbmltYXRpb25zJik7Ci0K
LSAgICAvLyBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHlDbGllbnQKLSAgICB2b2lkIHJlbW92
ZUN1c3RvbUZpbHRlclByb2dyYW1Qcm94eShXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkqKTsK
LQotICAgIHZvaWQgY2hlY2tDdXN0b21GaWx0ZXJQcm9ncmFtUHJveGllcyhjb25zdCBXZWJDb3Jl
OjpGaWx0ZXJPcGVyYXRpb25zJik7Ci0gICAgdm9pZCBkaXNjb25uZWN0Q3VzdG9tRmlsdGVyUHJv
Z3JhbXMoKTsKLSNlbmRpZgotCiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OkNvbXBvc2l0
aW5nQ29vcmRpbmF0b3I+IG1fY29vcmRpbmF0b3I7CiAKICAgICAvLyBUaGUgcGFnZSBvdmVybGF5
IGxheWVyLiBXaWxsIGJlIG51bGwgaWYgdGhlcmUncyBubyBwYWdlIG92ZXJsYXkuCiAgICAgc3Rk
Ojp1bmlxdWVfcHRyPFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXI+IG1fcGFnZU92ZXJsYXlMYXllcjsK
ICAgICBSZWZQdHI8UGFnZU92ZXJsYXk+IG1fcGFnZU92ZXJsYXk7CiAKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgSGFzaFNldDxXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkqPiBtX2N1
c3RvbUZpbHRlclByb2dyYW1zOwotI2VuZGlmCi0KICAgICBib29sIG1fbm90aWZ5QWZ0ZXJTY2hl
ZHVsZWRMYXllckZsdXNoOwogICAgIGJvb2wgbV9pc1ZhbGlkOwogICAgIGJvb2wgbV9pc1N1c3Bl
bmRlZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApp
bmRleCAzYTZiOTliLi42NTA3MmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0yNDY5LDcgKzI0NjksNiBAQCB2b2lkIFdlYlBhZ2U6OnVw
ZGF0ZVByZWZlcmVuY2VzKGNvbnN0IFdlYlByZWZlcmVuY2VzU3RvcmUmIHN0b3JlKQogICAgIHNl
dHRpbmdzLnNldFNob3dSZXBhaW50Q291bnRlcihzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2Vi
UHJlZmVyZW5jZXNLZXk6OmNvbXBvc2l0aW5nUmVwYWludENvdW50ZXJzVmlzaWJsZUtleSgpKSk7
CiAgICAgc2V0dGluZ3Muc2V0U2hvd1RpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yKHN0b3JlLmdldEJv
b2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6dGlsZWRTY3JvbGxpbmdJbmRpY2F0b3JW
aXNpYmxlS2V5KCkpKTsKICAgICBzZXR0aW5ncy5zZXRBZ2dyZXNzaXZlVGlsZVJldGVudGlvbkVu
YWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjphZ2dyZXNz
aXZlVGlsZVJldGVudGlvbkVuYWJsZWRLZXkoKSkpOwotICAgIHNldHRpbmdzLnNldENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5
Ojpjc3NDdXN0b21GaWx0ZXJFbmFibGVkS2V5KCkpKTsKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1
cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldENTU1JlZ2lvbnNFbmFibGVkKHN0b3JlLmdldEJvb2xW
YWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6Y3NzUmVnaW9uc0VuYWJsZWRLZXkoKSkpOwog
ICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0Q1NTQ29tcG9z
aXRpbmdFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6
Y3NzQ29tcG9zaXRpbmdFbmFibGVkS2V5KCkpKTsKICAgICBzZXR0aW5ncy5zZXRDU1NHcmlkTGF5
b3V0RW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmNz
c0dyaWRMYXlvdXRFbmFibGVkS2V5KCkpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL21h
Yy9XZWJLaXQyLm9yZGVyIGIvU291cmNlL1dlYktpdDIvbWFjL1dlYktpdDIub3JkZXIKaW5kZXgg
OWRmOTQwNS4uZWY1NWVlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvbWFjL1dlYktpdDIu
b3JkZXIKKysrIGIvU291cmNlL1dlYktpdDIvbWFjL1dlYktpdDIub3JkZXIKQEAgLTE4OSw3ICsx
ODksNiBAQCBfX1pONldlYktpdDE3V2ViUHJlZmVyZW5jZXNLZXkzMWNhbnZhc1VzZXNBY2NlbGVy
YXRlZERyYXdpbmdLZXlFdgogX19aTjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5Mjhjb21wb3Np
dGluZ0JvcmRlcnNWaXNpYmxlS2V5RXYKIF9fWk42V2ViS2l0MTdXZWJQcmVmZXJlbmNlc0tleTM2
Y29tcG9zaXRpbmdSZXBhaW50Q291bnRlcnNWaXNpYmxlS2V5RXYKIF9fWk42V2ViS2l0MTdXZWJQ
cmVmZXJlbmNlc0tleTMzdGlsZWRTY3JvbGxpbmdJbmRpY2F0b3JWaXNpYmxlS2V5RXYKLV9fWk42
V2ViS2l0MTdXZWJQcmVmZXJlbmNlc0tleTI1Y3NzQ3VzdG9tRmlsdGVyRW5hYmxlZEtleUV2CiBf
X1pONldlYktpdDE3V2ViUHJlZmVyZW5jZXNLZXkxNXdlYkdMRW5hYmxlZEtleUV2CiBfX1pONldl
YktpdDE3V2ViUHJlZmVyZW5jZXNLZXkyOG11bHRpdGhyZWFkZWRXZWJHTEVuYWJsZWRLZXlFdgog
X19aTjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5MzBmb3JjZVNvZnR3YXJlV2ViR0xSZW5kZXJp
bmdLZXlFdgpkaWZmIC0tZ2l0IGEvU291cmNlL2F1dG90b29scy9GaW5kRGVwZW5kZW5jaWVzLm00
IGIvU291cmNlL2F1dG90b29scy9GaW5kRGVwZW5kZW5jaWVzLm00CmluZGV4IGVmYzJkYjMuLjRi
ZThhOGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9hdXRvdG9vbHMvRmluZERlcGVuZGVuY2llcy5tNAor
KysgYi9Tb3VyY2UvYXV0b3Rvb2xzL0ZpbmREZXBlbmRlbmNpZXMubTQKQEAgLTM0MCwxMyArMzQw
LDExIEBAIGlmIHRlc3QgIiRlbmFibGVfb3Bjb2RlX3N0YXRzIiA9ICJ5ZXMiOyB0aGVuCiAgICAg
ZmkKIGZpCiAKLSMgRW5hYmxlIENTUyBGaWx0ZXJzIGFuZCBTaGFkZXJzIGlmIGFjY2VsZXJhdGVk
X2NvbXBvc2l0aW5nIGlzIHR1cm5lZCBvbi4KKyMgRW5hYmxlIENTUyBGaWx0ZXJzIGlmIGFjY2Vs
ZXJhdGVkX2NvbXBvc2l0aW5nIGlzIHR1cm5lZCBvbi4KIGVuYWJsZV9jc3NfZmlsdGVycz1ubzsK
LWVuYWJsZV9jc3Nfc2hhZGVycz1ubzsKLUFDX01TR19DSEVDS0lORyhbd2hldGhlciB0byBlbmFi
bGUgQ1NTIEZpbHRlcnMgYW5kIFNoYWRlcnNdKQorQUNfTVNHX0NIRUNLSU5HKFt3aGV0aGVyIHRv
IGVuYWJsZSBDU1MgRmlsdGVyc10pCiBpZiB0ZXN0ICIkZW5hYmxlX2FjY2VsZXJhdGVkX2NvbXBv
c2l0aW5nIiA9ICJ5ZXMiICYmIHRlc3QgIiRmb3VuZF9vcGVuZ2wiID0gInllcyI7IHRoZW4KICAg
ICBlbmFibGVfY3NzX2ZpbHRlcnM9eWVzOwotICAgIGVuYWJsZV9jc3Nfc2hhZGVycz15ZXM7CiBm
aQogQUNfTVNHX1JFU1VMVChbJGVuYWJsZV9jc3NfZmlsdGVyc10pCiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9hdXRvdG9vbHMvU2V0dXBXZWJLaXRGZWF0dXJlcy5tNCBiL1NvdXJjZS9hdXRvdG9vbHMv
U2V0dXBXZWJLaXRGZWF0dXJlcy5tNAppbmRleCA5ZTg1M2JhLi45ZDZhYjZkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvYXV0b3Rvb2xzL1NldHVwV2ViS2l0RmVhdHVyZXMubTQKKysrIGIvU291cmNlL2F1
dG90b29scy9TZXR1cFdlYktpdEZlYXR1cmVzLm00CkBAIC0yOSwxMiArMjksNiBAQCBlbHNlCiAg
ICAgQ09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUz0iJENPTkZJR1VSQUJMRV9GRUFUVVJFX0RF
RklORVMgRU5BQkxFX1ZJREVPPTAiCiBmaQogCi1pZiB0ZXN0ICIkZW5hYmxlX2Nzc19zaGFkZXJz
IiA9ICJ5ZXMiOyB0aGVuCi0gICAgQ09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUz0iJENPTkZJ
R1VSQUJMRV9GRUFUVVJFX0RFRklORVMgRU5BQkxFX0NTU19TSEFERVJTPTEiCi1lbHNlCi0gICAg
Q09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUz0iJENPTkZJR1VSQUJMRV9GRUFUVVJFX0RFRklO
RVMgRU5BQkxFX0NTU19TSEFERVJTPTAiCi1maQotCiBpZiB0ZXN0ICIkZW5hYmxlX2Nzc19maWx0
ZXJzIiA9ICJ5ZXMiOyB0aGVuCiAgICAgQ09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUz0iJENP
TkZJR1VSQUJMRV9GRUFUVVJFX0RFRklORVMgRU5BQkxFX0NTU19GSUxURVJTPTEiCiBlbHNlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9Tb3VyY2UvY21h
a2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggOTIzODJiZC4uYjA2N2I5NiAxMDA2NDQKLS0t
IGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9X
ZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtMzUsNyArMzUsNiBAQCBtYWNybyhXRUJLSVRfT1BUSU9O
X0JFR0lOKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xV
VElPTiAiVG9nZ2xlIENTUyBpbWFnZS1yZXNvbHV0aW9uIHN1cHBvcnQiIE9GRikKICAgICBXRUJL
SVRfT1BUSU9OX0RFRklORShFTkFCTEVfQ1NTX0lNQUdFX1NFVCAiVG9nZ2xlIENTUyBpbWFnZS1z
ZXQgc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9DU1NfUkVH
SU9OUyAiVG9nZ2xlIENTUyByZWdpb25zIHN1cHBvcnQiIE9GRikKLSAgICBXRUJLSVRfT1BUSU9O
X0RFRklORShFTkFCTEVfQ1NTX1NIQURFUlMgIlRvZ2dsZSBDU1MgU2hhZGVycyAod2l0aGluIENT
UyBGaWx0ZXJzKSBzdXBwb3J0IiBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxF
X0NTU19TSEFQRVMgIlRvZ2dsZSBDU1MgU2hhcGVzIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRf
T1BUSU9OX0RFRklORShFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTiAiVG9nZ2xlIENTUyBzdGlj
a3kgcG9zaXRpb24gc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJM
RV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQgIlRvZ2dsZSBzdXBwb3J0IGZv
ciB1bnByZWZpeGVkIENTUyBhbmltYXRpb25zIGFuZCB0cmFuc2Zvcm1zIiBPTikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlIGIvU291cmNlL2NtYWtlY29uZmlnLmguY21h
a2UKaW5kZXggMDYxMjk5YS4uNjRlMjQ2YiAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlY29uZmln
LmguY21ha2UKKysrIGIvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UKQEAgLTI0LDcgKzI0LDYg
QEAKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTgogI2NtYWtlZGVm
aW5lMDEgRU5BQkxFX0NTU19JTUFHRV9TRVQKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9DU1NfUkVH
SU9OUwotI2NtYWtlZGVmaW5lMDEgRU5BQkxFX0NTU19TSEFERVJTCiAjY21ha2VkZWZpbmUwMSBF
TkFCTEVfQ1NTX1NIQVBFUwogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJ
T04KICNjbWFrZWRlZmluZTAxIEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJF
RklYRUQKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9EdW1wUmVuZGVyVHJl
ZS5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9ndGsvRHVtcFJlbmRlclRyZWUuY3BwCmluZGV4
IDQwYzM1YzQuLjQyOGE4MGMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9E
dW1wUmVuZGVyVHJlZS5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL0R1bXBSZW5k
ZXJUcmVlLmNwcApAQCAtNTQzLDcgKzU0Myw2IEBAIHN0YXRpYyB2b2lkIHJlc2V0RGVmYXVsdHNU
b0NvbnNpc3RlbnRWYWx1ZXMoKQogCiAgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRD
U1NHcmlkTGF5b3V0RW5hYmxlZCh3ZWJWaWV3LCBmYWxzZSk7CiAgICAgRHVtcFJlbmRlclRyZWVT
dXBwb3J0R3RrOjpzZXRDU1NSZWdpb25zRW5hYmxlZCh3ZWJWaWV3LCB0cnVlKTsKLSAgICBEdW1w
UmVuZGVyVHJlZVN1cHBvcnRHdGs6OnNldENTU0N1c3RvbUZpbHRlckVuYWJsZWQod2ViVmlldywg
ZmFsc2UpOwogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEd0azo6c2V0RXhwZXJpbWVudGFsQ29u
dGVudFNlY3VyaXR5UG9saWN5RmVhdHVyZXNFbmFibGVkKHRydWUpOwogICAgIER1bXBSZW5kZXJU
cmVlU3VwcG9ydEd0azo6c2V0U2VhbWxlc3NJRnJhbWVzRW5hYmxlZCh0cnVlKTsKICAgICBEdW1w
UmVuZGVyVHJlZVN1cHBvcnRHdGs6OnNldFNoYWRvd0RPTUVuYWJsZWQodHJ1ZSk7CmRpZmYgLS1n
aXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9ndGsvVGVzdFJ1bm5lckd0ay5jcHAgYi9Ub29scy9E
dW1wUmVuZGVyVHJlZS9ndGsvVGVzdFJ1bm5lckd0ay5jcHAKaW5kZXggZWE1N2QyMy4uMWFmYjhj
MCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL1Rlc3RSdW5uZXJHdGsuY3Bw
CisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9UZXN0UnVubmVyR3RrLmNwcApAQCAtNzAz
LDkgKzcwMyw2IEBAIHZvaWQgVGVzdFJ1bm5lcjo6b3ZlcnJpZGVQcmVmZXJlbmNlKEpTU3RyaW5n
UmVmIGtleSwgSlNTdHJpbmdSZWYgdmFsdWUpCiAgICAgfSBlbHNlIGlmIChnX3N0cl9lcXVhbChv
cmlnaW5hbE5hbWUuZ2V0KCksICJXZWJLaXRDU1NSZWdpb25zRW5hYmxlZCIpKSB7CiAgICAgICAg
IER1bXBSZW5kZXJUcmVlU3VwcG9ydEd0azo6c2V0Q1NTUmVnaW9uc0VuYWJsZWQod2Via2l0X3dl
Yl9mcmFtZV9nZXRfd2ViX3ZpZXcobWFpbkZyYW1lKSwgYm9vbGVhbkZyb21WYWx1ZSh2YWx1ZUFz
U3RyaW5nLmdldCgpKSk7CiAgICAgICAgIHJldHVybjsKLSAgICB9IGVsc2UgaWYgKGdfc3RyX2Vx
dWFsKG9yaWdpbmFsTmFtZS5nZXQoKSwgIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiKSkg
ewotICAgICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGs6OnNldENTU0N1c3RvbUZpbHRlckVu
YWJsZWQod2Via2l0X3dlYl9mcmFtZV9nZXRfd2ViX3ZpZXcobWFpbkZyYW1lKSwgYm9vbGVhbkZy
b21WYWx1ZSh2YWx1ZUFzU3RyaW5nLmdldCgpKSk7Ci0gICAgICAgIHJldHVybjsKICAgICB9IGVs
c2UgewogICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIlRlc3RSdW5uZXI6Om92ZXJyaWRlUHJlZmVy
ZW5jZSB0cmllZCB0byBvdmVycmlkZSAiCiAgICAgICAgICAgICAgICAgInVua25vd24gcHJlZmVy
ZW5jZSAnJXMnLlxuIiwgb3JpZ2luYWxOYW1lLmdldCgpKTsK
</data>
<flag name="commit-queue"
          id="245892"
          type_id="3"
          status="-"
          setter="mvujovic"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221922</attachid>
            <date>2014-01-22 16:36:07 -0800</date>
            <delta_ts>2014-01-23 11:14:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>127382-4.patch</filename>
            <type>text/plain</type>
            <size>1340407</size>
            <attacher name="Max Vujovic">mvujovic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10
ZXN0LWhlbHBlcnMuanMgYi9MYXlvdXRUZXN0cy9hbmltYXRpb25zL3Jlc291cmNlcy9hbmltYXRp
b24tdGVzdC1oZWxwZXJzLmpzCmluZGV4IDgxZmFmODAuLmE3MjNiNGEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10ZXN0LWhlbHBlcnMuanMK
KysrIGIvTGF5b3V0VGVzdHMvYW5pbWF0aW9ucy9yZXNvdXJjZXMvYW5pbWF0aW9uLXRlc3QtaGVs
cGVycy5qcwpAQCAtMTQ3LDE4ICsxNDcsMTMgQEAgZnVuY3Rpb24gcGFyc2VGaWx0ZXJJbWFnZShz
KQogCiBmdW5jdGlvbiBwYXJzZUZpbHRlckZ1bmN0aW9uTGlzdChzKQogewotICAgIHZhciByZWcg
PSAvXCkqXHMqKGJsdXJ8YnJpZ2h0bmVzc3xjb250cmFzdHxjdXN0b218ZHJvcFwtc2hhZG93fGdy
YXlzY2FsZXxodWVcLXJvdGF0ZXxpbnZlcnR8b3BhY2l0eXxzYXR1cmF0ZXxzZXBpYXx1cmwpXCgv
CisgICAgdmFyIHJlZyA9IC9cKSpccyooYmx1cnxicmlnaHRuZXNzfGNvbnRyYXN0fGRyb3BcLXNo
YWRvd3xncmF5c2NhbGV8aHVlXC1yb3RhdGV8aW52ZXJ0fG9wYWNpdHl8c2F0dXJhdGV8c2VwaWF8
dXJsKVwoLwogICAgIHZhciBtYXRjaGVzID0gcy5zcGxpdChyZWcpOwogCiAgICAgLy8gRmlyc3Qg
aXRlbSBtdXN0IGJlIGVtcHR5LiBBbGwgb3RoZXIgaXRlbXMgYXJlIG9mIGZ1bmN0aW9uTmFtZSwg
ZnVuY3Rpb25WYWx1ZS4KICAgICBpZiAoIW1hdGNoZXMgfHwgbWF0Y2hlcy5zaGlmdCgpICE9ICIi
KQogICAgICAgICByZXR1cm4gbnVsbDsKIAotICAgIC8vIFJlZ0V4IGFib3ZlIGNhbiBub3QgaGFu
ZGxlIGRlcHJlY2F0ZWQgY3VzdG9tKCkgZnVuY3Rpb24KLSAgICB2YXIgY3VzdG9tUG9zID0gbWF0
Y2hlcy5pbmRleE9mKCJjdXN0b20iKTsKLSAgICBpZiAoY3VzdG9tUG9zID49IDAgJiYgbWF0Y2hl
c1tjdXN0b21Qb3MrMV0gPT09ICIiKQotICAgICAgICByZXR1cm4gcGFyc2VEZXByZWNhdGVkQ3Vz
dG9tRmlsdGVyRnVuY3Rpb24ocyk7Ci0KICAgICAvLyBPZGQgaXRlbXMgYXJlIHRoZSBmdW5jdGlv
biBuYW1lLCBldmVuIGl0ZW1zIHRoZSBmdW5jdGlvbiB2YWx1ZS4KICAgICBpZiAoIW1hdGNoZXMu
bGVuZ3RoIHx8IG1hdGNoZXMubGVuZ3RoICUgMikKICAgICAgICAgcmV0dXJuIG51bGw7CkBAIC0x
NzIsMzggKzE2NywxMiBAQCBmdW5jdGlvbiBwYXJzZUZpbHRlckZ1bmN0aW9uTGlzdChzKQogICAg
ICAgICAgICAgLy8gRklYTUU6IFN1cHBvcnQgcGFyc2luZyBvZiBkcm9wLXNoYWRvdy4KICAgICAg
ICAgICAgIGZ1bmN0aW9uTGlzdC5wdXNoKGZ1bmN0aW9uVmFsdWUpOwogICAgICAgICAgICAgY29u
dGludWU7Ci0gICAgICAgIH0gZWxzZSBpZiAoZnVuY3Rpb25OYW1lID09ICJjdXN0b20iKSB7Ci0g
ICAgICAgICAgICB2YXIgZmlsdGVyUGFyYW1zOwotICAgICAgICAgICAgaWYgKCF3aW5kb3cuZ2V0
Q3VzdG9tRmlsdGVyUGFyYW1ldGVycykKLSAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3Io
ImdldEN1c3RvbUZpbHRlclBhcmFtZXRlcnMgbm90IGZvdW5kLiBEaWQgeW91IGluY2x1ZGUgY3Vz
dG9tLWZpbHRlci1wYXJzZXIuanM/Iik7Ci0gICAgICAgICAgICB2YXIgZmlsdGVyUGFyYW1zID0g
Z2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhmdW5jdGlvblZhbHVlKTsKLSAgICAgICAgICAgIGlm
ICghZmlsdGVyUGFyYW1zKSB7Ci0gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcigiRXJyb3Ig
b24gcGFyc2luZyBjdXN0b20gZmlsdGVyIHBhcmFtZXRlcnMgIiwgZnVuY3Rpb25WYWx1ZSk7Ci0g
ICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBm
dW5jdGlvbkxpc3QucHVzaChmaWx0ZXJQYXJhbXMpOwotICAgICAgICAgICAgY29udGludWU7CiAg
ICAgICAgIH0KICAgICAgICAgZnVuY3Rpb25MaXN0LnB1c2gocGFyc2VGbG9hdChmdW5jdGlvblZh
bHVlKSk7CiAgICAgfQogICAgIHJldHVybiBmdW5jdGlvbkxpc3Q7CiB9CiAKLS8vIEZJWE1FOiBS
ZW1vdmUgZnVuY3Rpb24gYW5kIGNhbGxlciB3aGVuIHdlIHJlbW92ZWQgdGhlIGRlcHJlY2F0ZWQg
c3ludGF4IG9mCi0vLyB0aGUgY3VzdG9tIGZpbHRlciBmdW5jdGlvbi4KLWZ1bmN0aW9uIHBhcnNl
RGVwcmVjYXRlZEN1c3RvbUZpbHRlckZ1bmN0aW9uKHMpCi17Ci0gICAgdmFyIGZpbHRlclJlc3Vs
dCA9IHMubWF0Y2goLyhcdyspXCgoLispXCkvKTsKLSAgICB2YXIgZmlsdGVyUGFyYW1zID0gZmls
dGVyUmVzdWx0WzJdOwotCi0gICAgaWYgKGZpbHRlclJlc3VsdFsxXSAhPSAiY3VzdG9tIikKLSAg
ICAgICAgcmV0dXJuIG51bGw7Ci0KLSAgICBpZiAoIXdpbmRvdy5nZXRDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJzKQotICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImdldEN1c3RvbUZpbHRlclBhcmFtZXRl
cnMgbm90IGZvdW5kLiBEaWQgeW91IGluY2x1ZGUgY3VzdG9tLWZpbHRlci1wYXJzZXIuanM/Iik7
Ci0gICAgcmV0dXJuIFsiY3VzdG9tIiwgZ2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhmaWx0ZXJQ
YXJhbXMpXTsKLX0KLQogZnVuY3Rpb24gcGFyc2VCYXNpY1NoYXBlKHMpCiB7CiAgICAgdmFyIHNo
YXBlRnVuY3Rpb24gPSBzLm1hdGNoKC8oXHcrKVwoKC4rKVwpLyk7CkBAIC0yOTcsMTMgKzI2Niw2
IEBAIGZ1bmN0aW9uIGNvbXBhcmVGaWx0ZXJGdW5jdGlvbnMoY29tcHV0ZWRWYWx1ZSwgZXhwZWN0
ZWRWYWx1ZSwgdG9sZXJhbmNlKQogICAgICAgICAgICAgY29uc29sZS5lcnJvcigiRmlsdGVyIGZ1
bmN0aW9ucyBkbyBub3QgbWF0Y2guIik7CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAg
ICAgIH0KLSAgICAgICAgaWYgKGFjdHVhbFtpXSA9PSAiY3VzdG9tIikgewotICAgICAgICAgICAg
aWYgKCFjdXN0b21GaWx0ZXJQYXJhbWV0ZXJNYXRjaChhY3R1YWxbaSsxXSwgZXhwZWN0ZWRbaSsx
XSwgdG9sZXJhbmNlKSkgewotICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoIkN1c3RvbSBm
aWx0ZXIgcGFyYW1ldGVycyBkbyBub3QgbWF0Y2guIik7Ci0gICAgICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0K
ICAgICAgICAgaWYgKCFpc0Nsb3NlRW5vdWdoKGFjdHVhbFtpKzFdLCBleHBlY3RlZFtpKzFdLCB0
b2xlcmFuY2UpKSB7CiAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCJGaWx0ZXIgZnVuY3Rpb24g
dmFsdWVzIGRvIG5vdCBtYXRjaC4iKTsKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTMz
MCw0OSArMjkyLDYgQEAgZnVuY3Rpb24gYmFzaWNTaGFwZVBhcmFtZXRlcnNNYXRjaChwYXJhbUxp
c3QxLCBwYXJhbUxpc3QyLCB0b2xlcmFuY2UpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWZ1bmN0
aW9uIGN1c3RvbUZpbHRlclBhcmFtZXRlck1hdGNoKHBhcmFtMSwgcGFyYW0yLCB0b2xlcmFuY2Up
Ci17Ci0gICAgaWYgKHBhcmFtMS50eXBlICE9ICJwYXJhbWV0ZXIiKSB7Ci0gICAgICAgIC8vIENo
ZWNraW5nIGZvciBzaGFkZXIgdXJpcyBhbmQgb3RoZXIga2V5d29yZHMuIFRoZXkgbmVlZCB0byBi
ZSBleGFjdGx5IHRoZSBzYW1lLgotICAgICAgICByZXR1cm4gKHBhcmFtMS50eXBlID09IHBhcmFt
Mi50eXBlICYmIHBhcmFtMS52YWx1ZSA9PSBwYXJhbTIudmFsdWUpOwotICAgIH0KLQotICAgIGlm
IChwYXJhbTEubmFtZSAhPSBwYXJhbTIubmFtZSB8fCBwYXJhbTEudmFsdWUubGVuZ3RoICE9IHBh
cmFtMi52YWx1ZS5sZW5ndGgpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGZvciAodmFy
IGogPSAwOyBqIDwgcGFyYW0xLnZhbHVlLmxlbmd0aDsgKytqKSB7Ci0gICAgICAgIHZhciB2YWwx
ID0gcGFyYW0xLnZhbHVlW2pdLAotICAgICAgICAgICAgdmFsMiA9IHBhcmFtMi52YWx1ZVtqXTsK
LSAgICAgICAgaWYgKHZhbDEudHlwZSAhPSB2YWwyLnR5cGUpCi0gICAgICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgICAgIHN3aXRjaCAodmFsMS50eXBlKSB7Ci0gICAgICAgIGNhc2UgImZ1bmN0
aW9uIjoKLSAgICAgICAgICAgIGlmICh2YWwxLm5hbWUgIT0gdmFsMi5uYW1lKQotICAgICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIGlmICh2YWwxLmFyZ3VtZW50cy5sZW5n
dGggIT0gdmFsMi5hcmd1bWVudHMubGVuZ3RoKSB7Ci0gICAgICAgICAgICAgICAgY29uc29sZS5l
cnJvcigiQXJndW1lbnRzIGxlbmd0aCBtaXNtYXRjaDogIiwgdmFsMS5hcmd1bWVudHMubGVuZ3Ro
LCAiLyIsIHZhbDIuYXJndW1lbnRzLmxlbmd0aCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZm9yICh2YXIgdCA9IDA7IHQgPCB2YWwx
LmFyZ3VtZW50cy5sZW5ndGg7ICsrdCkgewotICAgICAgICAgICAgICAgIGlmICh2YWwxLmFyZ3Vt
ZW50c1t0XS50eXBlICE9ICJudW1iZXIiIHx8IHZhbDIuYXJndW1lbnRzW3RdLnR5cGUgIT0gIm51
bWJlciIpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgICAg
ICBpZiAoIWlzQ2xvc2VFbm91Z2godmFsMS5hcmd1bWVudHNbdF0udmFsdWUsIHZhbDIuYXJndW1l
bnRzW3RdLnZhbHVlLCB0b2xlcmFuY2UpKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFs
c2U7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSAibnVt
YmVyIjoKLSAgICAgICAgICAgIGlmICghaXNDbG9zZUVub3VnaCh2YWwxLnZhbHVlLCB2YWwyLnZh
bHVlLCB0b2xlcmFuY2UpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgY29uc29sZS5lcnJvcigi
VW5zdXBwb3J0ZWQgcGFyYW1ldGVyIHR5cGUgIiwgdmFsMS50eXBlKTsKLSAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIHJldHVybiB0cnVlOwotfQotCiBm
dW5jdGlvbiBjaGVja0V4cGVjdGVkVmFsdWUoZXhwZWN0ZWQsIGluZGV4KQogewogICAgIHZhciBh
bmltYXRpb25OYW1lID0gZXhwZWN0ZWRbaW5kZXhdWzBdOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVs
ZS1pbnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU0YzI5ZjguLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
YXQtcnVsZS1pbnZhbGlkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDU2ICswLDAg
QEAKLVRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtpdC1maWx0ZXIuCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLUZpbHRlciBhdC1ydWxlIHN5bWJvbCB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotVW5wcmVmaXhlZCBydWxlLgotQGZpbHRlciBteS1m
aWx0ZXIgeyB9Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24gaW5zdGFuY2VvZiBET01FeGNlcHRp
b24gaXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0aW9uLmNvZGUgaXMgRE9NRXhjZXB0aW9u
LlNZTlRBWF9FUlIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
RmlsdGVyIG5hbWUgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0KLU1pc3NpbmcgZmlsdGVyIG5hbWUgaWRlbnRpZmllci4KLUAtd2Via2l0LWZpbHRlciB7
IH0KLVBBU1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0
cnVlCi1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFY
X0VSUgotCi1GaWx0ZXIgbmFtZSBhcyBzdHJpbmcuCi1ALXdlYmtpdC1maWx0ZXIgJ215LWZpbHRl
cicgeyB9Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24gaW5zdGFuY2VvZiBET01FeGNlcHRpb24g
aXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0aW9uLmNvZGUgaXMgRE9NRXhjZXB0aW9uLlNZ
TlRBWF9FUlIKLQotRmlsdGVyIG5hbWUgYXMgbnVtYmVyLgotQC13ZWJraXQtZmlsdGVyIDEyMyB7
IH0KLVBBU1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0
cnVlCi1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFY
X0VSUgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1GaWx0ZXIg
YXQtcnVsZSBib2R5IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1NaXNzaW5nIHJ1bGUgYm9keS4KLUAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIKLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
Ci1NaXNzaW5nIG9wZW5pbmcgYnJhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIH0KLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
Ci1NaXNzaW5nIGNsb3NpbmcgYnJhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsKLVBB
U1MgaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiBpcyB0cnVlCi1Q
QVNTIGluc2VydFJ1bGVFeGNlcHRpb24uY29kZSBpcyBET01FeGNlcHRpb24uU1lOVEFYX0VSUgot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE4YmYxMTIuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
YXQtcnVsZS1pbnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IURP
Q1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFk
PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0i
Y29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0
ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0
cy9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1hdC1ydWxlLXZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1
bGUtdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNDhk
ZGRhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsMTI4ICswLDAgQEAKLVRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtp
dC1maWx0ZXIuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUZpbHRlciBhdC1ydWxlIHRlc3RzLgotPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBydWxlLCBzZXBh
cmF0ZWQgYnkgc2luZ2xlIHNwYWNlcy4KLUAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Ci1Q
QVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NS
dWxlIGluc3RhbmNlb2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUu
Y29uc3RydWN0b3IgPT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxl
Ll9fcHJvdG9fXyA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotCi1FbXB0eSBydWxlLCBzZXBhcmF0ZWQgYnkgbXVs
dGlwbGUgc3BhY2VzLgotICAgQC13ZWJraXQtZmlsdGVyICAgbXktZmlsdGVyICAgeyAgIH0gICAK
LVBBU1MgY3NzUnVsZS5jc3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNz
c1J1bGUgaW5zdGFuY2VvZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVs
ZS5jb25zdHJ1Y3RvciA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1
bGUuX19wcm90b19fID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi0KLUVtcHR5IHJ1bGUsIG5vIGV4dHJhIHdoaXRl
c3BhY2UuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVye30KLVBBU1MgY3NzUnVsZS5jc3NUZXh0
IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNzc1J1bGUgaW5zdGFuY2VvZiBXZWJL
aXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9PT0gV2Vi
S2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90b19fID09PSBXZWJL
aXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi0KLVJ1bGUgd2l0aCBhcmJpdHJhcnkgcHJvcGVydGllcy4KLUAtd2Via2l0LWZpbHRl
ciBteS1maWx0ZXIgeyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IH0KLVBBU1MgY3NzUnVs
ZS5jc3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgd2lkdGg6IDEwMHB4OyBo
ZWlnaHQ6IDEwMHB4OyB9IgotUEFTUyBjc3NSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMg
dHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlz
IHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnd2lkdGgn
KSBpcyAiMTAwcHgiCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2hlaWdodCcp
IGlzICIxMDBweCIKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDIKLQotRW1wdHkgcnVsZSwg
Y29tbWVudCBzZXBhcmF0b3JzCi1ALXdlYmtpdC1maWx0ZXIvKiovbXktZmlsdGVyLyoqL3sgfQot
UEFTUyBjc3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Igot
UEFTUyBjc3NSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1MgY3Nz
UnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxl
LmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVs
ZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJvdG90eXBlIGlzIHRydWUKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLQotRW1wdHkgcnVsZSwgY29tbWVudCtzcGFjZSBz
ZXBhcmF0b3JzCi1ALXdlYmtpdC1maWx0ZXIvKiovIG15LWZpbHRlci8qKi8geyB9Ci1QQVNTIGNz
c1J1bGUuY3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NSdWxlIGlu
c3RhbmNlb2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29uc3Ry
dWN0b3IgPT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLl9fcHJv
dG9fXyA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotCi1FbXB0eSBydWxlLCBzcGFjZStjb21tZW50IHNlcGFyYXRv
cnMKLUAtd2Via2l0LWZpbHRlciAvKiovbXktZmlsdGVyIC8qKi97IH0KLVBBU1MgY3NzUnVsZS5j
c3NUZXh0IGlzICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNzc1J1bGUgaW5zdGFuY2Vv
ZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9
PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90b19fID09
PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi0KLUVtcHR5IHJ1bGUsIHNwYWNlK2NvbW1lbnQrc3BhY2Ugc2VwYXJhdG9y
cwotQC13ZWJraXQtZmlsdGVyIC8qKi8gbXktZmlsdGVyIC8qKi8geyB9Ci1QQVNTIGNzc1J1bGUu
Y3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1QQVNTIGNzc1J1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NSdWxlIGluc3RhbmNl
b2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29uc3RydWN0b3Ig
PT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLl9fcHJvdG9fXyA9
PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci1OZXN0ZWQgZmlsdGVyIGF0LXJ1bGUgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU5lc3RlZCBydWxlLgotQC13ZWJraXQtZmlsdGVyIHBhcmVudC1m
aWx0ZXIgeyBALXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSB9Ci1QQVNTIGNzc1J1bGUu
Y3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IgotUEFTUyBjc3NS
dWxlLnR5cGUgaXMgMTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1
bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJS
dWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1
bGUucHJvdG90eXBlIGlzIHRydWUKLQotVHdpY2UgbmVzdGVkIHJ1bGUuCi1ALXdlYmtpdC1maWx0
ZXIgcGFyZW50LWZpbHRlciB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyBALXdlYmtp
dC1maWx0ZXIgZ3JhbmRjaGlsZC1maWx0ZXIgfSB9Ci1QQVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAi
QC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IgotUEFTUyBjc3NSdWxlLnR5cGUgaXMg
MTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQot
UEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUK
LVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJvdG90eXBl
IGlzIHRydWUKLQotTmVzdGVkIHJ1bGUgaW5zaWRlIGFyYml0cmFyeSBydWxlLgotQGZvbnQtZmFj
ZSB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IH0KLVBBU1MgY3NzUnVsZS5jc3NU
ZXh0IGlzICJAZm9udC1mYWNlIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDUKLVBBU1MgY3Nz
UnVsZSBpbnN0YW5jZW9mIENTU0ZvbnRGYWNlUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29u
c3RydWN0b3IgPT09IENTU0ZvbnRGYWNlUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90
b19fID09PSBDU1NGb250RmFjZVJ1bGUucHJvdG90eXBlIGlzIHRydWUKLQotTmVzdGVkIHJ1bGUg
aW5zaWRlIG1lZGlhIHF1ZXJ5LgotQG1lZGlhIHNjcmVlbiB7IEAtd2Via2l0LWZpbHRlciBjaGls
ZC1maWx0ZXIgeyB9IH0KLVBBU1MgY3NzUnVsZS5jc3NUZXh0IGlzICJAbWVkaWEgc2NyZWVuIHsg
XG4gIEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9XG59IgotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgNAotUEFTUyBjc3NSdWxlIGluc3RhbmNlb2YgQ1NTTWVkaWFSdWxlIGlzIHRydWUKLVBB
U1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9PT0gQ1NTTWVkaWFSdWxlIGlzIHRydWUKLVBBU1MgY3Nz
UnVsZS5fX3Byb3RvX18gPT09IENTU01lZGlhUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBj
c3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IgotUEFT
UyBjc3NSdWxlLnR5cGUgaXMgMTcKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0Zp
bHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NG
aWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0Zp
bHRlclJ1bGUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFy
c2luZy1hdC1ydWxlLXZhbGlkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk4
YTM5YTQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRo
LWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVsZS12YWxpZC5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsMTMgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRN
TC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3Jp
cHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3Nj
cmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1p
bnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1pbnZhbGlkLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODQ4YTlmZi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFy
c2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSw2MzcgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiBjdXN0b20oKSBmdW5jdGlvbiBv
ZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUN1c3Rv
bSBmdW5jdGlvbiB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLQotRW1wdHkgY3VzdG9tIGZ1bmN0aW9uLgotY3VzdG9tKCkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1PbmUgY29tbWEgaW4gY3VzdG9tIGZ1bmN0aW9uLgotY3VzdG9tKCwpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTXVsdGlwbGUgY29tbWFzIGluIGN1c3RvbSBmdW5jdGlvbi4KLWN1c3RvbSgs
LCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci1GaWx0ZXIgbmFtZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLQotTm8gZmlsdGVyIG5hbWUgd2l0aCBwYXJhbWV0ZXIuCi1jdXN0b20o
biAxKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IGZpbHRlciBuYW1lcy4KLWN1c3Rv
bShteS1maWx0ZXItMSBteS1maWx0ZXItMikKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1GaWx0ZXIg
bmFtZSBhcyBzdHJpbmcuCi1jdXN0b20oJ215LWZpbHRlci0xJykKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1GaWx0ZXIgbmFtZSBhcyBudW1iZXIuCi1jdXN0b20oMSkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1TcGFjZSBiZXR3ZWVuIGZpbHRlciBuYW1lIGFuZCBwYXJhbWV0ZXIuCi1jdXN0b20obXkt
ZmlsdGVyIG4gMSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVz
LgotY3VzdG9tKG15LWZpbHRlciwgbiAxIDIgMyA0IDUpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
SW52YWxpZCBwYXJhbWV0ZXIgdHlwZS4KLWN1c3RvbShteS1maWx0ZXIsIG4gMS4wIDIuMCAndGV4
dCcpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gYWZ0ZXIg
Y29tbWEuCi1jdXN0b20obXktZmlsdGVyLCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJh
bWV0ZXIgZGVmaW5pdGlvbiB3aXRoIHR3byBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCwpCi1Q
QVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gYmVmb3JlIHZhbGlk
IHBhcmFtZXRlciBkZWZpbnRpb24uCi1jdXN0b20obXktZmlsdGVyLCAsIG4gMSkKLVBBU1Mgc3R5
bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVy
JykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUuCi1jdXN0b20obXktZmlsdGVyLCBuKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHBhcmFtZXRlciB2YWx1ZSB3aXRoIG11bHRpcGxlIHBh
cmFtZXRlcnMuCi1jdXN0b20obXktZmlsdGVyLCBuMSwgbjIsIG4zKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUNvbG9yIHBh
cmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LQotTm8gcmdiIGNvbG9yIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIGMgcmdiKCwsKSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1ObyBoc2wgY29sb3IgdmFsdWVzLgotY3VzdG9tKG15LWZpbHRl
ciwgYyBoc2woLCwpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUhleCB3aXRoIDggY2hhcmFjdGVy
cy4KLWN1c3RvbShteS1maWx0ZXIsIGMgI0ZGMDAwMEZGKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LUhleCB3aXRoIDIgY2hhcmFjdGVyLgotY3VzdG9tKG15LWZpbHRlciwgYyAjRkYpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpIGlzIG51bGwKLQotUmdiYSB3aXRoIDMgdmFsdWVzIGFuZCAyIGNvbW1hcy4KLWN1c3RvbSht
eS1maWx0ZXIsIGMgcmdiYSgyNTUsIDAsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIg
dGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBp
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1y
b3RhdGUoMGRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTXVsdGlwbGUgaW52YWxpZCB0cmFu
c2Zvcm0gZnVuY3Rpb25zLgotY3VzdG9tKG15LWZpbHRlciwgdCBpbnZhbGlkLXJvdGF0ZSgwZGVn
KSBpbnZhbGlkLXBlcnNwZWN0aXZlKDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQg
dHJhbnNmb3JtIGZ1bmN0aW9uIGJldHdlZW4gdmFsaWQgb25lcy4KLWN1c3RvbShteS1maWx0ZXIs
IHQgcm90YXRlKDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApKQotUEFT
UyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIGludmFs
aWQgb25lcy4KLWN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUoMGRlZykgcGVyc3Bl
Y3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENT
U1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVmFs
aWQgdHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGhvdXQgbGVhZGluZyBjb21tYS4KLWN1c3RvbShteS1m
aWx0ZXIgdCBwZXJzcGVjdGl2ZSgwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFu
c2Zvcm0gZnVuY3Rpb24gd2l0aCB0cmFpbGluZyBjb21tYS4KLWN1c3RvbShteS1maWx0ZXIsIHQg
cGVyc3BlY3RpdmUoMCksKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JV
TEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBm
dW5jdGlvbiB3aXRoIHRyYWlsaW5nIGNvbW1hIGFuZCB3aXRob3V0IGxlYWRpbmcgY29tbWEuCi1j
dXN0b20obXktZmlsdGVyIHQgcGVyc3BlY3RpdmUoMCksKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LUludmFsaWQgdHJhbnNmb3JtIHdpdGggdHJhaWxpbmcgY29tbWEuCi1jdXN0b20obXktZmlsdGVy
LCB0IGludmFsaWQtcm90YXRlKDBkZWcpLCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHRyYW5zZm9ybSB3aXRob3V0IGxlYWRpbmcgY29tbWEuCi1jdXN0b20obXktZmlsdGVyIHQgaW52
YWxpZF9yb3RhdGUoMGRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVf
UlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3Jt
IHdpdGggaW52YWxpZCBjaGFyYWN0ZXJzCi1jdXN0b20obXktZmlsdGVyLHQgcm90YXRlKDBkZWcp
ICouLSwpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1PbmUgY29tbWEgaW4gYXJyYXkuCi1j
dXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRp
cGxlIGNvbW1hcyBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCwsKSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1NdWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5
LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgsLDEsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci1PbmUgY29tbWEgZm9sbG93ZWQgYnkgYSBuZWdhdGl2ZSB2YWx1ZSBpbiBhcnJheS4KLWN1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoLC00KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1PbmUgY29t
bWEgZm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoLDQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBuZWdhdGl2ZSB2YWx1ZSBmb2xsb3dl
ZCBieSBhIGNvbW1hIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgtNCwpKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFy
cmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSg0LCkpCi1QQVNTIHN0eWxlUnVsZS50eXBl
IGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxp
ZCB2YWx1ZXMgZm9sbG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KDEsIDIsIDMsIDQsIHgpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVR3byBjb21t
YXMgYXMgc2VwYXJhdG9yIGJldHdlZW4gdmFsdWVzIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgxLCAyLCAsIDQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNU
WUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUxlYWRpbmcgY29t
bWEgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwxLCAyLCAzLCA0KSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheS4K
LWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMTsgMjsgMzsgNCkpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoMSAyIDMgNCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVf
UlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVk
IHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KDEgMiAzIDQsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0
ZWQgdmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIs
IGEgYXJyYXkoLCAxIDIgMyA0KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1OYU4gaW4gYXJyYXku
Ci1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KE5hTikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
TmFOIGJldHdlZW4gdmFsaWQgdmFsdWVzIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBh
cnJheSgxLCAyLCBOYU4sIDMpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUg
J25vbmUnIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheShub25lKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheS4KLWN1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHZhbHVlIHVuaXQgJ2RlZycgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDFk
ZWcpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFy
cmF5IGFmdGVyIHZhbGlkIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwg
MywgNHB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1wdHkgbWF0Mi4KLWN1c3RvbShteS1maWx0ZXIs
IGEgbWF0MigpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyB2aWV3IGFyZ3VtZW50cy4KLWN1
c3RvbShteS1maWx0ZXIsIGEgbWF0MigwLCAwLCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1O
byBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigsLCwpKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBh
IG1hdDIoMCwgMCwsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JZGVudHMgaW4gbWF0MiBmdW5j
dGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigwLCAwLCBhLCBiKSkKLVBBU1Mgc3R5bGVS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIo
MCwgMCwgMCwgMCwgMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVM
RQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gY29tbWFzLgotY3VzdG9t
KG15LWZpbHRlciwgYSBtYXQyKDEgMCAwIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVNvbWUg
Y29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDEsIDAsIDAgMSkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTGVhZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIoLCAw
LCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBsZW5ndGggdW5pdHMuCi1jdXN0b20o
bXktZmlsdGVyLCBhIG1hdDIoMXB4LCAwcHgsIDBweCwgMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1ObyBkZWdyZWUgdW5pdHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMWRlZywgMGRl
ZywgMGRlZywgMWRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVM
RQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTmFOIGluIG1hdDIuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDIoMSwgMCwgMCwgTmFOKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQzIHBhcmFtZXRl
ciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1w
dHkgbWF0My4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygpKQotUEFTUyBzdHlsZVJ1bGUudHlw
ZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVRvbyB2aWV3IGFyZ3VtZW50cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygwLCAwLCAw
LCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLWN1
c3RvbShteS1maWx0ZXIsIGEgbWF0MygsLCwsLCwsLCwsLCwsLCwpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JZGVudHMgaW4gbWF0MyBmdW5j
dGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCBhLCBi
KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSwgMCkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTm8gY29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEgMCAwIDAg
MSAwIDAgMCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Tb21lIGNvbW1hcy4KLWN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwIDAgMCAxKSkKLVBBU1Mgc3R5bGVSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
bnVsbAotCi1MZWFkaW5nIGNvbW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygsIDAsIDAs
IDAsIDEsIDAsIDAsIDAsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0
cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxcHgsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwg
MXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBkZWdyZWUgdW5pdHMuCi1jdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMWRlZywgMCwgMCwgMCwgMWRlZywgMCwgMCwgMCwgMWRlZykpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTmFOIGluIG1hdDMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIo
TmFOLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQ0IHBhcmFtZXRlciB0ZXN0
cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotRW1wdHkgbWF0
NC4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRv
byB2aWV3IGFyZ3VtZW50cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgxLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNv
bW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgsLCwsLCwsLCwsLCwsLCwpKQotUEFTUyBz
dHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyBudWxsCi0KLUVuZGluZyBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQo
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwsKSkKLVBBU1Mgc3R5bGVS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1JZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAxLCAwLCAwLCBhLCBiKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1U
b28gbWFueSBhcmd1bWVudHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCkpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotTm8gY29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEgMCAwIDAgMCAxIDAg
MCAwIDAgMSAwIDAgMCAwIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVNvbWUgY29tbWFzLgot
Y3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEs
IDAgMCAwIDAgMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTGVhZGluZyBjb21tYXMuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDQoLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBsZW5ndGggdW5pdHMuCi1jdXN0
b20obXktZmlsdGVyLCBhIG1hdDQoMXB4LCAwLCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDAsIDFw
eCwgMCwgMCwgMCwgMCwgMXB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBkZWdyZWUgdW5p
dHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMWRlZywgMCwgMCwgMCwgMCwgMWRlZywgMCwg
MCwgMCwgMCwgMWRlZywgMCwgMCwgMCwgMCwgMWRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
TmFOIGluIG1hdDQuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoTmFOLCAwLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NaXhpbmcgcGFyYW1ldGVy
IHR5cGVzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1OdW1i
ZXIgcGFyYW1ldGVyIHdpdGggaGV4IGNvbG9yLgotY3VzdG9tKG15LWZpbHRlciwgbjEgMSAyICNG
RjAwMDApCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTnVtYmVyIHBhcmFtZXRlciB3aXRoIGNvbG9y
IGtleXdvcmQuCi1jdXN0b20obXktZmlsdGVyLCBuMSAxIDIgcmVkKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLU51bWJlciBwYXJhbWV0ZXIgd2l0aCByZ2IgY29sb3IuCi1jdXN0b20obXktZmlsdGVy
LCBuMSAxIDIgcmdiKDI1NSwgMCwgMCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUu
U1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQ29sb3Igd2l0
aCBudW1iZXIgcGFyYW1ldGVyLgotY3VzdG9tKG15LWZpbHRlciwgYSByZ2IoMjU1LCAwLCAwKSAx
KQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUNvbG9yIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgwLCByZ2IoMjU1LCAwLCAwKSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENT
U1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQ29s
b3IgYW5kIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgwLCAwKSByZ2IoMjU1LCAw
LCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIHRyYW5zZm9ybSB2YWx1ZXMu
Ci1jdXN0b20obXktZmlsdGVyLCBhIHJvdGF0ZSg0NWRlZykgcmdiKDI1NSwgMCwgMCkpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotQ29sb3Igd2l0aCB0cmFuc2Zvcm0gdmFsdWVzLgotY3VzdG9tKG15
LWZpbHRlciwgYSByZ2IoMjU1LCAwLCAwKSByb3RhdGUoNDVkZWcpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLUNvbG9yIHdpdGggbWF0Mi4KLWN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwgMCwg
MCkgbWF0MigwLCAwLCAwLCAwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlM
RV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1tYXQyIHdpdGggbWF0
My4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigxLCAwLCAwLCAxKSBtYXQzKDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JV
TEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi1QQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1
bmN0aW9uLWludmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1pbnZhbGlkLmh0bWwKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZkZTRjZDMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3Vz
dG9tLWZ1bmN0aW9uLWludmFsaWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAK
LTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBp
ZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBz
cmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3Nj
cmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24t
aW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2lu
Zy1jdXN0b20tZnVuY3Rpb24tdmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9u
LXZhbGlkLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWU0NTcw
MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQtZXhwZWN0ZWQudHh0Cisr
KyAvZGV2L251bGwKQEAgLTEsNDc3ICswLDAgQEAKLVRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1
c3RvbSgpIGZ1bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4KLQotT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotQ3VzdG9tIGZ1bmN0aW9uIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotCi1DdXN0b20gZnVuY3Rpb24gaW4gQ0FQUy4KLUNVU1RPTSht
eS1maWx0ZXIpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVy
KScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotRmlsdGVyIGNo
YWluIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1D
dXN0b20gZnVuY3Rpb24gaW4gbWlkZGxlIG9mIGZpbHRlciBjaGFpbi4KLWdyYXlzY2FsZSgpIGN1
c3RvbShteS1maWx0ZXIpIHNlcGlhKCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdncmF5c2Nh
bGUoKSBjdXN0b20obXktZmlsdGVyKSBzZXBpYSgpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVy
dHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUKLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnZ3JheXNjYWxlKCknCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3Vi
VmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9TRVBJQQotUEFTUyBz
dWJWYWx1ZS5jc3NUZXh0IGlzICdzZXBpYSgpJwotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1GaWx0ZXIgbmFtZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLQotRmlsdGVyIG5hbWUgb25seS4KLWN1c3RvbShteS1maWx0
ZXIpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciknCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyKScKLQot
RmlsdGVyIG5hbWUgYXMgQ1NTICdub25lJyBrZXl3b3JkLgotY3VzdG9tKG5vbmUpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG5vbmUpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVy
dHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3Vi
VmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG5vbmUpJwotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1JbnRlZ2VyIHBhcmFtZXRlcnMuCi1jdXN0
b20obXktZmlsdGVyLCBuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3KQotUEFTUyBz
dHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG4xIDEsIG4yIDIgMywgbjMgMyA0
IDUsIG40IDQgNSA2IDcpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9
PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBp
cyAnY3VzdG9tKG15LWZpbHRlciwgbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNykn
Ci0KLUZsb2F0IHBhcmFtZXRlcnMuCi1jdXN0b20obXktZmlsdGVyLCBuMSAxLjEsIG4yIDIuMiAz
LjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbjEgMS4xLCBuMiAyLjIgMy4zLCBuMyAzLjEgNC4x
IDUuMSwgbjQgNC4xIDUuMiA2LjMgNy40KScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0
YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVl
LmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG4xIDEuMSwgbjIgMi4yIDMuMywgbjMgMy4x
IDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCknCi0KLVBhcmFtZXRlciBuYW1lIHNhbWUgYXMg
Q1NTIGtleXdvcmQuCi1jdXN0b20obXktZmlsdGVyLCBiYWNrZ3JvdW5kIDAgMSAwIDEpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgYmFja2dyb3VuZCAwIDEgMCAx
KScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1
ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1m
aWx0ZXIsIGJhY2tncm91bmQgMCAxIDAgMSknCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLUNvbG9yIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotSGV4IGNvbG9yLgotY3VzdG9tKG15LWZpbHRlciwg
YyAjMDBGRjAwKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGMg
cmdiKDAsIDI1NSwgMCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9
PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBp
cyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwgMjU1LCAwKSknCi0KLUNvbG9yIGtleXdvcmQu
Ci1jdXN0b20obXktZmlsdGVyLCBjIGdyZWVuKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDEyOCwgMCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwgMTI4LCAwKSkn
Ci0KLUNvbG9yIHJnYiBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDEyOCwg
MCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwg
MTI4LCAwKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0g
Q1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
bGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0
b20obXktZmlsdGVyLCBjIHJnYigwLCAxMjgsIDApKScKLQotQ29sb3IgaHNsIGZ1bmN0aW9uLgot
Y3VzdG9tKG15LWZpbHRlciwgYyBoc2woMTIwLCAxMDAlLCA1MCUpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpJwotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5
cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1
YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2Io
MCwgMjU1LCAwKSknCi0KLUNvbG9yIHJnYmEgZnVuY3Rpb24uCi1jdXN0b20obXktZmlsdGVyLCBj
IHJnYmEoMCwgMjU1LCAwLCAwLjIpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNU
WUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbSht
eS1maWx0ZXIsIGMgcmdiYSgwLCAyNTUsIDAsIDAuMikpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2JhKDAsIDI1NSwgMCwg
MC4yKSknCi0KLUNvbG9yIGhzbGEgZnVuY3Rpb24uCi1jdXN0b20obXktZmlsdGVyLCBjIGhzbGEo
MTIwLCAxMDAlLCA1MCUsIDAuMikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZ
TEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15
LWZpbHRlciwgYyByZ2JhKDAsIDI1NSwgMCwgMC4yKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9w
ZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBz
dWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAwLCAw
LjIpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotVHJhbnNm
b3JtIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLQotVHJhbnNmb3JtIHBhcmFtZXRlciB3aXRoIG9uZSB0cmFuc2Zvcm0gZnVuY3Rpb24u
Ci1jdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzICdjdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSknCi1QQVNTIGZpbHRlclByb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9w
ZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0
cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVn
KSknCi0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSB0cmFuc2Zvcm0gZnVuY3Rp
b25zLgotY3VzdG9tKG15LWZpbHRlciwgdCByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2Nh
bGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdj
dXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAw
KSB0cmFuc2xhdGUoMHB4LCAwcHgpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5j
ZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3Ry
dWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVy
UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNz
c1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDAp
IHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkpJwotCi1NdWxpdHBsZSB0cmFuc2Zvcm0g
cGFyYW1ldGVycy4KLWN1c3RvbShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRl
KDBkZWcpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQxIHJv
dGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBp
bnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5
VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
ZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25U
eXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZh
bHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90
YXRlKDBkZWcpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
QXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotCi1BcnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScuCi1jdXN0b20obXkt
ZmlsdGVyLCBhcnJheSBhcnJheSgxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20o
bXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNv
bnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1
ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSknCi0KLUFycmF5
IHBhcmFtZXRlciB3aXRoIG9uZSBwb3NpdGl2ZSBpbnRlZ2VyLgotY3VzdG9tKG15LWZpbHRlciwg
YSBhcnJheSgxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBh
IGFycmF5KDEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSkpJwotCi1BcnJheSBwYXJhbWV0ZXIgd2l0aCBvbmUg
bmVnYXRpdmUgZmxvYXQuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KC0xLjAxKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KC0xLjAxKSknCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVy
LCBhIGFycmF5KC0xLjAxKSknCi0KLUFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHBvc2l0
aXZlIGludGVnZXJzLgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAzLCA0LCA1KSkK
LVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIs
IDMsIDQsIDUpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgMywgNCwgNSkpJwotCi1BcnJheSBwYXJhbWV0
ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRzLgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJh
eSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3Rv
bShteS1maWx0ZXIsIGEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSknCi1QQVNTIGZpbHRl
clByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
VmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NV
U1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5
KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkpJwotCi1NdWx0aXBsZSBhcnJheSBwYXJhbWV0ZXJzLgot
Y3VzdG9tKG15LWZpbHRlciwgYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJy
YXkoMSwgMiwgMykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwg
YTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykpJwotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5w
cm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwg
YTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykpJwotCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0
ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MiBw
YXJhbWV0ZXIuCi1jdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgMCwgMCwgMSkpCi1QQVNTIHN0
eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKDEsIDAsIDAsIDEpKScK
LVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0
ZXIsIG0gbWF0MigxLCAwLCAwLCAxKSknCi0KLU1hdDIgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUg
dmFsdWVzLgotY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAtMSwgLTEsIC0xKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIC0xLCAtMSwg
LTEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NW
YWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbSht
eS1maWx0ZXIsIG0gbWF0MigtMSwgLTEsIC0xLCAtMSkpJwotCi1NYXQyIHBhcmFtZXRlciB3aXRo
IG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuCi1jdXN0b20obXktZmlsdGVyLCBtIG1hdDIo
LTEsIDEsIDEsIC0xKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVy
LCBtIG1hdDIoLTEsIDEsIDEsIC0xKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFu
Y2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0
cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRl
clByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5j
c3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIDEsIDEsIC0xKSknCi0KLU1h
dDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLWN1c3RvbShteS1maWx0
ZXIsIG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpKScKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJf
Q1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0
MigxLCAtMi4yLCAzLjE0LCAwLjQpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotTWF0MyBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0KLU1hdDMgcGFyYW1ldGVyLgotY3VzdG9tKG15LWZpbHRlciwg
bSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSkn
Ci1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVM
aXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmls
dGVyLCBtIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkpJwotCi1NYXQzIHBhcmFtZXRl
ciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdj
dXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlz
IHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1Zh
bHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15
LWZpbHRlciwgbSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpKScKLQot
TWF0MyBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotY3VzdG9t
KG15LWZpbHRlciwgbSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIDEsIDEsIC0x
LCAtMSwgMSwgMSwgLTEsIDEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19w
cm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1Rl
eHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAt
MSwgMSkpJwotCi1NYXQzIHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuCi1j
dXN0b20obXktZmlsdGVyLCBtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0
LCAwLjQsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0g
bWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSkpJwotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
ZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90
b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBt
YXQzKDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxKSknCi0KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDQgcGFyYW1ldGVyIHRlc3Rz
LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1NYXQ0IHBhcmFt
ZXRlci4KLWN1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20o
bXktZmlsdGVyLCBtIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
Lmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmls
dGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3Vz
dG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEpKScKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1j
dXN0b20obXktZmlsdGVyLCBtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBD
U1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
c3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSknCi0K
LU1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5kIHBvc2l0aXZlIHZhbHVlcy4KLWN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEs
IC0xLCAtMSwgMSwgMSwgLTEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1m
aWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAt
MSwgMSwgMSwgLTEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMg
J2N1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEs
IDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEpKScKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBs
ZSBzaWduZWQgZmxvYXRzLgotY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIC0yLjIsIDMuMTQs
IDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMu
MTQsIDAuNCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBt
YXQ0KDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0
LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5
cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFs
dWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQs
IDAuNCkpJwotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1Db21i
aW5lZCBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJhbnNmb3JtIHBh
cmFtZXRlciwgbWF0cml4IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4KLWN1c3RvbSht
eS1maWx0ZXIsIG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIo
MSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQo
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXko
MSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbiAxLCBjIHJn
YigwLCAxMjgsIDApLCB0IHJvdGF0ZSgwZGVnKSwgbTEgbWF0MigxLCAwLCAwLCAxKSwgbTIgbWF0
MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSwgbTMgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSwgYSBhcnJheSgxKSknCi1QQVNTIGZpbHRlclBy
b3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFs
dWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBuIDEsIGMgcmdi
KDAsIDEyOCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAsIDEpLCBtMiBtYXQz
KDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFycmF5KDEpKScKLVBBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1jdXN0
b20tZnVuY3Rpb24tdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12YWxpZC5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNjliNWExLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1
c3RvbS1mdW5jdGlvbi12YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAot
PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlk
PSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNy
Yz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12
YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1n
ZW9tZXRyeS1wcm9wZXJ0eS1pbnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3Bl
cnR5LWludmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBh
OTFlOTk5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQtZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTUxICswLDAgQEAKLVRlc3QgZ2VvbWV0cnkgcHJv
cGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLUdlb21ldHJ5IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotCi1ObyBwcm9wZXJ0eSB2YWx1ZS4KLWdlb21ldHJ5OiA7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotRW1wdHkgZ3JpZC4KLWdlb21ldHJ5OiBncmlkKCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotTWlzcGVsbGVkIGdyaWQgZnVu
Y3Rpb24uCi1nZW9tZXRyeTogZ3JpaWQoMSAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5Jykg
aXMgbnVsbAotCi1TaW5nbGUgbmVnYXRpdmUgdmFsdWUgaW4gZ3JpZC4KLWdlb21ldHJ5OiBncmlk
KC0xKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1OZWdhdGl2ZSB2YWx1
ZSBpbiBncmlkIGFsb25nIHdpdGggYSB2YWxpZCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKDEgLTEp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLU5lZ2F0aXZlIHZhbHVlIGlu
IGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4KLWdlb21ldHJ5OiBncmlk
KC0xIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLVR3byBuZWdhdGl2
ZSB2YWx1ZXMuCi1nZW9tZXRyeTogZ3JpZCgtMSAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRy
eScpIGlzIG51bGwKLQotU2luZ2xlIHplcm8gdmFsdWUuCi1nZW9tZXRyeTogZ3JpZCgwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1aZXJvIHdpdGggYSB2YWxpZCB2YWx1
ZS4KLWdlb21ldHJ5OiBncmlkKDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51
bGwKLQotWmVybyB3aXRoIGEgdmFsaWQgdmFsdWUsIGludmVydGVkLgotZ2VvbWV0cnk6IGdyaWQo
MSAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1BdHRhY2hlZCB2YWx1
ZSBhbG9uZS4KLWdlb21ldHJ5OiBncmlkKGF0dGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21l
dHJ5JykgaXMgbnVsbAotCi1EZXRhY2hlZCB2YWx1ZSBhbG9uZS4KLWdlb21ldHJ5OiBncmlkKGRl
dGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1EZXRhY2hlZCBh
bmQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZChhdHRhY2hlZCBhdHRhY2hlZCk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotVG9vIG1hbnkgdmFsdWVzLgotZ2VvbWV0cnk6
IGdyaWQoMSAxIGF0dGFjaGVkIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5Jykg
aXMgbnVsbAotCi1NaXNwZWxsZWQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZCgxIDEgYXR0YWNk
KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1NaXNwZWxsZWQgZGV0YWNo
ZWQuCi1nZW9tZXRyeTogZ3JpZCgxIDEgZGV0YWNoZSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRy
eScpIGlzIG51bGwKLQotSW52YWxpZCBkaXZpZGVyLgotZ2VvbWV0cnk6IGdyaWQoMSwgMSBhdHRh
Y2hlZCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotSW52YWxpZCBkaXZp
ZGVyLCByZWxvYWRlZC4KLWdlb21ldHJ5OiBncmlkKDEgMSwgYXR0YWNoZWQpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLU5vbiBpbnRlZ2VyIHZhbHVlcy4KLWdlb21ldHJ5
OiBncmlkKDEuMyAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAotCi1Ob24g
aW50ZWdlciB2YWx1ZXMuCi1nZW9tZXRyeTogZ3JpZCgxIDEuMyk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdn
ZW9tZXRyeScpIGlzIG51bGwKLQotVGhyZWUgaW50ZWdlcnMuCi1nZW9tZXRyeTogZ3JpZCgxIDIg
Myk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotQXR0YWNoZWQgaW4gYmV0
d2VlbiB0d28gaW50ZWdlcnMuCi1nZW9tZXRyeTogZ3JpZCgxIGF0dGFjaGVkIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLURldGFjaGVkIGluIGJldHdlZW4gdHdvIGlu
dGVnZXJzLgotZ2VvbWV0cnk6IGdyaWQoMSBkZXRhY2hlZCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dl
b21ldHJ5JykgaXMgbnVsbAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggNjRmNzhhYi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1p
bnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9u
Ij48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQt
dGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktaW52YWxpZC5qcyI+
PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1w
cm9wZXJ0eS12YWxpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12YWxpZC1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDMwZmJkN2IuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsMTEzICswLDAgQEAKLVRlc3QgZ2VvbWV0cnkgcHJvcGVydHkgcGFyc2luZyBp
biB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUdlb21l
dHJ5IHByb3BlcnR5LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
Ci1HZW9tZXRyeSB3aXRoIGZ1bGwgbWVzaCBhbmQgYXR0YWNoZWQuCi1nZW9tZXRyeTogZ3JpZCgx
IDEgYXR0YWNoZWQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBp
cyAiMSAxIGF0dGFjaGVkIgotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBnZW9tZXRy
eVByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDMKLQotR2VvbWV0cnkgd2l0aCBmdWxsIG1lc2ggYW5k
IGRldGFjaGVkLgotZ2VvbWV0cnk6IGdyaWQoMSAxIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSkgaXMgIjEgMSBkZXRhY2hlZCIKLVBBU1MgZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2Vv
bWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi0K
LUdlb21ldHJ5IHdpdGggZnVsbCBtZXNoIGFuZCBubyBhdHRhY2hlZCwgbm9yIGRldGFjaGVkLgot
Z2VvbWV0cnk6IGdyaWQoMSAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0
cnknKSkgaXMgIjEgMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19w
cm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAyCi0KLUdlb21ldHJ5IHdpdGggb25seSBvbmUgbWVzaCB2
YWx1ZS4KLWdlb21ldHJ5OiBncmlkKDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdn
ZW9tZXRyeScpKSBpcyAiMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2Yg
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVj
dG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi0KLUdlb21ldHJ5IHdpdGggb25lIG1lc2ggdmFs
dWUgYW5kIGF0dGFjaGVkLgotZ2VvbWV0cnk6IGdyaWQoMSBhdHRhY2hlZCk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykpIGlzICIxIGF0dGFjaGVkIgotUEFTUyBnZW9t
ZXRyeVByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBn
ZW9tZXRyeVByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5w
cm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIK
LQotR2VvbWV0cnkgd2l0aCBvbmUgbWVzaCB2YWx1ZSBhbmQgZGV0YWNoZWQuCi1nZW9tZXRyeTog
Z3JpZCgxIGRldGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnkn
KSkgaXMgIjEgZGV0YWNoZWQiCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotCi1HZW9tZXRyeSB3aXRoIGF0dGFjaGVkIGJl
Zm9yZSBvbmUgbWVzaCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKGF0dGFjaGVkIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBpcyAiYXR0YWNoZWQgMSIKLVBBU1Mg
Z2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBp
cyAyCi0KLUdlb21ldHJ5IHdpdGggYXR0YWNoZWQgYmVmb3JlIHR3byBtZXNoIHZhbHVlcy4KLWdl
b21ldHJ5OiBncmlkKGF0dGFjaGVkIDEgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J2dlb21ldHJ5JykpIGlzICJhdHRhY2hlZCAxIDEiCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1
ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQ
cm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwotCi1HZW9tZXRyeSB3aXRo
IGRldGFjaGVkIGJlZm9yZSBvbmUgbWVzaCB2YWx1ZS4KLWdlb21ldHJ5OiBncmlkKGRldGFjaGVk
IDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBpcyAiZGV0YWNo
ZWQgMSIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZh
bHVlLmxlbmd0aCBpcyAyCi0KLUdlb21ldHJ5IHdpdGggZGV0YWNoZWQgYmVmb3JlIHR3byBtZXNo
IHZhbHVlcy4KLWdlb21ldHJ5OiBncmlkKGRldGFjaGVkIDEgMSk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykpIGlzICJkZXRhY2hlZCAxIDEiCi1QQVNTIGdlb21ldHJ5
UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwotUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LXZhbGlkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0
eS12YWxpZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNzY3YjAyLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LXZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVh
ZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48
L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5n
LWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmct
Z2VvbWV0cnktcHJvcGVydHktdmFsaWQuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1
bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmct
bWl4LXByb3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBjMGQzOWVhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDU1ICswLDAgQEAKLVRlc3QgbWl4IHByb3Bl
cnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgotCi1PbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci1WYWx1ZSB0ZXN0LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1ObyBwcm9wZXJ0eSB2YWx1ZS4KLW1peDogOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4Jykg
aXMgbnVsbAotCi1UaHJlZSB2YWx1ZXMuCi1taXg6IHNjcmVlbiBzb3VyY2Utb3ZlciBzY3JlZW47
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSBpcyBudWxsCi0KLVRocmVlIHZhbHVlcy4KLW1peDogc2Ny
ZWVuIHNvdXJjZS1vdmVyIHNvdXJjZS1vdmVyOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykgaXMgbnVs
bAotCi1Ud28gYmxlbmQgbW9kZXMuCi1taXg6IHNjcmVlbiBzY3JlZW47Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdtaXgnKSBpcyBudWxsCi0KLVR3byBjb21wb3NpdGUgb3BlcmF0b3JzLgotbWl4OiBzb3VyY2Ut
b3ZlciBzb3VyY2Utb3ZlcjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpIGlzIG51bGwKLQotVHdvIGJs
ZW5kIG1vZGVzLgotbWl4OiBzY3JlZW4gc2NyZWVuOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykgaXMg
bnVsbAotCi1Db21tYSBiZXR3ZWVuIHZhbHVlcy4KLW1peDogc2NyZWVuLCBzb3VyY2Utb3ZlcjsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ21peCcpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktaW52
YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZjkxZDFlMi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktaW52
YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+
Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+
PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRl
c3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBz
cmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxp
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYzhjZjAzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1w
cm9wZXJ0eS12YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwzOTMgKzAsMCBA
QAotVGVzdCBtaXggcHJvcGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1
bGUuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLVRlc3QgYmxlbmQgbW9kZSBrZXl3b3Jkcy4KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotVGVzdCBtdWx0aXBseS4KLW1p
eDogbXVsdGlwbHk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJ
TFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibXVs
dGlwbHkiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibXVsdGlwbHkiCi0KLVRl
c3Qgc2NyZWVuLgotbWl4OiBzY3JlZW47Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21p
eCcpKSBpcyAic2NyZWVuIgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlU
SVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNjcmVl
biIKLQotVGVzdCBvdmVybGF5LgotbWl4OiBvdmVybGF5OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdtaXgnKSkgaXMgIm92ZXJsYXkiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFu
Y2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVj
dG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJv
dG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVl
LkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0
KSBpcyAib3ZlcmxheSIKLQotVGVzdCBkYXJrZW4uCi1taXg6IGRhcmtlbjsKLVBBU1MgZmlsdGVy
QXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJkYXJrZW4iCi1QQVNTIG1peFByb3BlcnR5VmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVl
LmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlz
IENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1
ZS5jc3NUZXh0KSBpcyAiZGFya2VuIgotCi1UZXN0IGxpZ2h0ZW4uCi1taXg6IGxpZ2h0ZW47Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibGlnaHRlbiIKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFBy
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NW
YWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJsaWdodGVuIgotCi1UZXN0IGNvbG9yLWRvZGdlLgot
bWl4OiBjb2xvci1kb2RnZTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlz
ICJjb2xvci1kb2RnZSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NW
YWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElW
RV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjb2xvci1k
b2RnZSIKLQotVGVzdCBjb2xvci1idXJuLgotbWl4OiBjb2xvci1idXJuOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImNvbG9yLWJ1cm4iCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAiY29sb3ItYnVybiIKLQotVGVzdCBoYXJkLWxpZ2h0LgotbWl4OiBo
YXJkLWxpZ2h0OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImhhcmQt
bGlnaHQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiaGFyZC1saWdodCIKLQot
VGVzdCBzb2Z0LWxpZ2h0LgotbWl4OiBzb2Z0LWxpZ2h0OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdtaXgnKSkgaXMgInNvZnQtbGlnaHQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0
cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NU
ZXh0KSBpcyAic29mdC1saWdodCIKLQotVGVzdCBkaWZmZXJlbmNlLgotbWl4OiBkaWZmZXJlbmNl
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImRpZmZlcmVuY2UiCi1Q
QVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZGlmZmVyZW5jZSIKLQotVGVzdCBleGNs
dXNpb24uCi1taXg6IGV4Y2x1c2lvbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4
JykpIGlzICJleGNsdXNpb24iCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0g
Q1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklN
SVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZXhj
bHVzaW9uIgotCi1UZXN0IGh1ZS4KLW1peDogaHVlOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdtaXgnKSkgaXMgImh1ZSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BS
SU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJo
dWUiCi0KLVRlc3Qgc2F0dXJhdGlvbi4KLW1peDogc2F0dXJhdGlvbjsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJzYXR1cmF0aW9uIgotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgInNhdHVyYXRpb24iCi0KLVRlc3QgY29sb3IuCi1taXg6IGNvbG9yOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImNvbG9yIgotUEFTUyBtaXhQ
cm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImNvbG9yIgotCi1UZXN0IGx1bWlub3NpdHkuCi1taXg6
IGx1bWlub3NpdHk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJ
TFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAibHVt
aW5vc2l0eSIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxV
RQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJsdW1pbm9zaXR5Igot
Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1UZXN0IGNvbXBvc2l0
ZSBrZXl3b3Jkcy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQot
VGVzdCBjbGVhci4KLW1peDogY2xlYXI7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21p
eCcpKSBpcyAiY2xlYXIiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1
ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NT
VmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJ
VkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiY2xlYXIi
Ci0KLVRlc3QgY29weS4KLW1peDogY29weTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
bWl4JykpIGlzICJjb3B5IgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlU
SVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImNvcHki
Ci0KLVRlc3Qgc291cmNlLW92ZXIuCi1taXg6IHNvdXJjZS1vdmVyOwotUEFTUyBmaWx0ZXJBdFJ1
bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1vdmVyIgotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotCi1UZXN0IHNvdXJjZS1pbi4KLW1peDogc291
cmNlLWluOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1p
biIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzb3VyY2UtaW4iCi0KLVRlc3Qg
c291cmNlLW91dC4KLW1peDogc291cmNlLW91dDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnbWl4JykpIGlzICJzb3VyY2Utb3V0IgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNl
b2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3Rv
ciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgInNvdXJjZS1vdXQiCi0KLVRlc3Qgc291cmNlLWF0b3AuCi1taXg6IHNvdXJjZS1hdG9wOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNvdXJjZS1hdG9wIgotUEFT
UyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1hdG9wIgotCi1UZXN0IGRlc3Rp
bmF0aW9uLW92ZXIuCi1taXg6IGRlc3RpbmF0aW9uLW92ZXI7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ21peCcpKSBpcyAiZGVzdGluYXRpb24tb3ZlciIKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFs
dWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZh
bHVlLmNzc1RleHQpIGlzICJkZXN0aW5hdGlvbi1vdmVyIgotCi1UZXN0IGRlc3RpbmF0aW9uLWlu
LgotbWl4OiBkZXN0aW5hdGlvbi1pbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4
JykpIGlzICJkZXN0aW5hdGlvbi1pbiIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NT
X1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlz
ICJkZXN0aW5hdGlvbi1pbiIKLQotVGVzdCBkZXN0aW5hdGlvbi1vdXQuCi1taXg6IGRlc3RpbmF0
aW9uLW91dDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNl
VVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJkZXN0aW5h
dGlvbi1vdXQiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVM
aXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFM
VUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZGVzdGluYXRpb24t
b3V0IgotCi1UZXN0IGRlc3RpbmF0aW9uLWF0b3AuCi1taXg6IGRlc3RpbmF0aW9uLWF0b3A7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAiZGVzdGluYXRpb24tYXRvcCIK
LVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJW
YWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJkZXN0aW5hdGlvbi1hdG9wIgotCi1U
ZXN0IHhvci4KLW1peDogeG9yOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkg
aXMgInhvciIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxV
RQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ4b3IiCi0KLUJsZW5k
IG1vZGUgYW5kIGNvbXBvc2l0ZSB0b2dldGhlci4KLW1peDogc2NyZWVuIHNvdXJjZS1vdmVyOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNjcmVlbiBzb3VyY2Utb3Zl
ciIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzY3JlZW4iCi1QQVNTIHN1YlZh
bHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotCi1Db21wb3Np
dGUgYW5kIGJsZW5kIG1vZGUgdG9nZXRoZXIuCi1taXg6IHNvdXJjZS1vdmVyIHNjcmVlbjsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJzb3VyY2Utb3ZlciBzY3JlZW4i
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3Vi
VmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAic291cmNlLW92ZXIiCi1QQVNTIHN1
YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNjcmVlbiIKLQotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQ2FwaXRhbGl6YXRpb24gdGVzdHMuCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUFsbCB0b2tlbnMgY2Fw
aXRhbGl6ZWQuCi1taXg6IFNDUkVFTiBTT1VSQ0UtT1ZFUjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnbWl4JykpIGlzICJzY3JlZW4gc291cmNlLW92ZXIiCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAic2NyZWVuIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMg
Q1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVl
LmNzc1RleHQpIGlzICJzb3VyY2Utb3ZlciIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotV2hpdGVzcGFjZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLQotRXh0cmEgbGVhZGluZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcg
d2hpdGVzcGFjZS4gCi1taXg6ICAgIHNjcmVlbiAgIHNvdXJjZS1vdmVyICAgOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNjcmVlbiBzb3VyY2Utb3ZlciIKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlz
IHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFTUyBzdWJWYWx1ZS5j
c3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzY3JlZW4iCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvdXJjZS1vdmVyIgotUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9w
ZXJ0eS12YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0
LXJ1bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LXZhbGlkLmh0bWwKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwODM5NjkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5
LXZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9u
Ij48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQt
dGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctbWl4LXByb3BlcnR5LXZhbGlkLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVy
dHktaW52YWxpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
LXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQt
ZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMTdhZTQyLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC1leHBlY3RlZC50eHQKKysr
IC9kZXYvbnVsbApAQCAtMSw1NjkgKzAsMCBAQAotVGVzdCBwYXJhbWV0ZXJzIHByb3BlcnR5IHBh
cnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgotCi1PbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci1OdW1iZXIgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVzLgotcGFyYW1ldGVyczogbiAx
IDIgMyA0IDU7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1JbnZhbGlk
IHBhcmFtZXRlciB0eXBlLgotcGFyYW1ldGVyczogbiAxLjAgMi4wICd0ZXh0JzsKLVBBU1MgZmls
dGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIHBhcmFtZXRlciBkZWZpbml0aW9uLgot
cGFyYW1ldGVyczogOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8g
cGFyYW1ldGVyIGRlZmluaXRpb24gd2l0aCBjb21tYS4KLXBhcmFtZXRlcnM6ICw7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgZGVmaW5pdGlvbiBi
ZWZvcmUgdmFsaWQgcGFyYW1ldGVyIGRlZmludGlvbi4KLXBhcmFtZXRlcnM6ICwgbiAxOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIHZhbHVlLgot
cGFyYW1ldGVyczogbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5v
IHBhcmFtZXRlciB2YWx1ZSB3aXRoIG11bHRpcGxlIHBhcmFtZXRlcnMuCi1wYXJhbWV0ZXJzOiBu
MSwgbjIsIG4zOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQ29sb3IgcGFyYW1ldGVyIHRlc3Rz
LgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1ObyByZ2IgY29s
b3IgdmFsdWVzLgotcGFyYW1ldGVyczogYyByZ2IoLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotTm8gaHNsIGNvbG9yIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGMgaHNs
KCwsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUhleCB3aXRoIDgg
Y2hhcmFjdGVycy4KLXBhcmFtZXRlcnM6IGMgI0ZGMDAwMEZGOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFy
YW1ldGVycycpIGlzIG51bGwKLQotSGV4IHdpdGggMiBjaGFyYWN0ZXIuCi1wYXJhbWV0ZXJzOiBj
ICNGRjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVJnYmEgd2l0aCAz
IHZhbHVlcyBhbmQgMiBjb21tYXMuCi1wYXJhbWV0ZXJzOiBjIHJnYmEoMjU1LCAwLCAwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBpbnZhbGlkIHRyYW5zZm9y
bSBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUoMGRlZyk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1NdWx0aXBsZSBpbnZhbGlkIHRyYW5zZm9y
bSBmdW5jdGlvbnMuCi1wYXJhbWV0ZXJzOiB0IGludmFsaWQtcm90YXRlKDBkZWcpIGludmFsaWQt
cGVyc3BlY3RpdmUoMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1J
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuCi1wYXJhbWV0ZXJz
OiB0IHJvdGF0ZSgwZGVnKSBpbnZhbGlkLXJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBmdW5j
dGlvbiBiZXR3ZWVuIGludmFsaWQgb25lcy4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUo
MGRlZykgcGVyc3BlY3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gd2l0aCB0
cmFpbGluZyBjb21tYS4KLXBhcmFtZXRlcnM6IHQgcGVyc3BlY3RpdmUoMCksOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSW52YWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFp
bGluZyBjb21tYS4KLXBhcmFtZXRlcnM6IHQgaW52YWxpZC1yb3RhdGUoMGRlZyksOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3JtIHdpdGggaW52
YWxpZCBjaGFyYWN0ZXJzCi1wYXJhbWV0ZXJzOiB0IHJvdGF0ZSgwZGVnKSAqLi0sOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBhcnJheS4KLXBhcmFtZXRlcnM6IGEg
YXJyYXkoKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBjb21t
YSBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoLCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJh
bWV0ZXJzJykgaXMgbnVsbAotCi1NdWx0aXBsZSBjb21tYXMgaW4gYXJyYXkuCi1wYXJhbWV0ZXJz
OiBhIGFycmF5KCwsLCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1N
dWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJh
eSgsLDEsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBjb21t
YSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBh
cnJheSgsLTQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotT25lIGNv
bW1hIGZvbGxvd2VkIGJ5IGEgdmFsdWUgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KCw0
KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBuZWdhdGl2ZSB2
YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgt
NCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotT25lIHZhbHVlIGZv
bGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDQsKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVZhbGlkIHZhbHVlcyBmb2xsb3dl
ZCBieSBhIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxLCAyLCAzLCA0LCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1WYWxpZCB2YWx1ZXMgZm9s
bG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDEsIDIsIDMs
IDQsIHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotVHdvIGNvbW1h
cyBhcyBzZXBhcmF0b3IgYmV0d2VlbiB2YWx1ZXMgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFy
cmF5KDEsIDIsICwgNCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1M
ZWFkaW5nIGNvbW1hIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgsMSwgMiwgMywgNCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2VwYXJh
dGVkIHZhbHVlcyBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMTsgMjsgMzsgNCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQgdmFs
dWVzIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxIDIgMyA0KTsKLVBBU1MgZmlsdGVy
QXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLVNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgd2l0aCBj
b21tYSB0ZXJtaW5hdG9yIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxIDIgMyA0LCk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQg
dmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXko
LCAxIDIgMyA0KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5hTiBp
biBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoTmFOKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFt
ZXRlcnMnKSBpcyBudWxsCi0KLU5hTiBiZXR3ZWVuIHZhbGlkIHZhbHVlcyBpbiBhcnJheS4KLXBh
cmFtZXRlcnM6IGEgYXJyYXkoMSwgMiwgTmFOLCAzKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgJ25vbmUnIGluIGFycmF5LgotcGFyYW1ldGVy
czogYSBhcnJheShub25lKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0K
LUludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgx
cHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSW52YWxpZCB2YWx1
ZSB1bml0ICdkZWcnIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxZGVnKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgdW5pdCAncHgn
IGluIGFycmF5IGFmdGVyIHZhbGlkIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMSwgMiwg
MywgNHB4KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDIgcGFyYW1ldGVyIHRlc3RzLgot
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQyLgot
cGFyYW1ldGVyczogYSBtYXQyKCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVs
bAotCi1Ub28gdmlldyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMCwgMCwgMCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNv
bW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MigsLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MigwLCAwLCwp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSWRlbnRzIGluIG1hdDIg
ZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMCwgMCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gbWFueSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJz
OiBhIG1hdDIoMCwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMg
bnVsbAotCi1ObyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMSAwIDAgMSk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Tb21lIGNvbW1hcy4KLXBhcmFtZXRlcnM6
IGEgbWF0MigxLCAwLCAwIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTGVhZGluZyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoLCAwLCAwLCAxKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0cy4KLXBhcmFt
ZXRlcnM6IGEgbWF0MigxcHgsIDBweCwgMHB4LCAxcHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotTm8gZGVncmVlIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQyKDFk
ZWcsIDBkZWcsIDBkZWcsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTmFOIGluIG1hdDIuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMSwgMCwgMCwgTmFOKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLU1hdDMgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQzLgotcGFyYW1ldGVyczog
YSBtYXQzKCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gdmll
dyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMCwgMCwgMCwgMCk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLXBh
cmFtZXRlcnM6IGEgbWF0MygsLCwsLCwsLCwsLCwsLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MygxLCAw
LCAwLCAwLCAxLCAwLCAwLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotSWRlbnRzIGluIG1hdDMgZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAot
Ci1Ub28gbWFueSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSwgMCwgMCwgMCwgMSwg
MCwgMCwgMCwgMSwgMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1O
byBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSAwIDAgMCAxIDAgMCAwIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotU29tZSBjb21tYXMuCi1wYXJhbWV0ZXJz
OiBhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCAwIDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0
ZXJzJykgaXMgbnVsbAotCi1MZWFkaW5nIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0MygsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTm8gbGVuZ3RoIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQzKDFweCwgMCwgMCwgMCwg
MXB4LCAwLCAwLCAwLCAxcHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTm8gZGVncmVlIHVuaXRzLgotcGFyYW1ldGVyczogYSBtYXQzKDFkZWcsIDAsIDAsIDAsIDFk
ZWcsIDAsIDAsIDAsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTmFOIGluIG1hdDMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoTmFOLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDQgcGFyYW1ldGVyIHRlc3RzLgot
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1FbXB0eSBtYXQ0Lgot
cGFyYW1ldGVyczogYSBtYXQ0KCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVs
bAotCi1Ub28gdmlldyBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1O
byBhcmd1bWVudHMgYnV0IGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgsLCwsLCwsLCwsLCws
LCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotRW5kaW5nIGNvbW1h
cy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSWRlbnRz
IGluIG1hdDQgZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwgMSwgMCwg
MCwgYSwgYik7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Ub28gbWFu
eSBhcmd1bWVudHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykg
aXMgbnVsbAotCi1ObyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSAwIDAgMCAwIDEgMCAw
IDAgMCAxIDAgMCAwIDAgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAot
Ci1Tb21lIGNvbW1hcy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAwLCAxLCAwIDAgMCAwIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTGVhZGluZyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoLCAwLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0cy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxcHgs
IDAsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAxcHgpOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gZGVncmVlIHVuaXRzLgotcGFy
YW1ldGVyczogYSBtYXQ0KDFkZWcsIDAsIDAsIDAsIDAsIDFkZWcsIDAsIDAsIDAsIDAsIDFkZWcs
IDAsIDAsIDAsIDAsIDFkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTmFOIGluIG1hdDQuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoTmFOLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMn
KSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1p
eGluZyBwYXJhbWV0ZXIgdHlwZXMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIgd2l0aCBoZXggY29sb3IuCi1wYXJhbWV0ZXJzOiBu
MSAxIDIgI0ZGMDAwMDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU51
bWJlciBwYXJhbWV0ZXIgd2l0aCBjb2xvciBrZXl3b3JkLgotcGFyYW1ldGVyczogbjEgMSAyIHJl
ZDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU51bWJlciBwYXJhbWV0
ZXIgd2l0aCByZ2IgY29sb3IuCi1wYXJhbWV0ZXJzOiBuMSAxIDIgcmdiKDI1NSwgMCwgMCk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIG51bWJlciBw
YXJhbWV0ZXIuCi1wYXJhbWV0ZXJzOiBhIHJnYigyNTUsIDAsIDApIDE7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEg
YXJyYXkoMCwgcmdiKDI1NSwgMCwgMCkpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlz
IG51bGwKLQotQ29sb3IgYW5kIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgwLCAwKSByZ2Io
MjU1LCAwLCAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgcm90YXRlKDQ1ZGVnKSByZ2Io
MjU1LCAwLCAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgcmdiKDI1NSwgMCwgMCkgcm90
YXRlKDQ1ZGVnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9y
IGFmdGVyIGFycmF5IHZhbHVlcy4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMCkgcmdiKDI1NSwgMCwg
MCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIG1h
dDIuCi1wYXJhbWV0ZXJzOiBhIHJnYigyNTUsIDAsIDApIG1hdDIoMCwgMCwgMCwgMCk7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1tYXQyIHdpdGggbWF0My4KLXBhcmFt
ZXRlcnM6IGEgbWF0MigxLCAwLCAwLCAxKSBtYXQzKDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0
ZXJzLXByb3BlcnR5LWludmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxp
ZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmZDVmYzQ1Li4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+
Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1j
b21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLXBh
cmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA3ZWU3MGJhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMt
cHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNDQxICswLDAg
QEAKLVRlc3QgcGFyYW1ldGVycyBwcm9wZXJ0eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0
ZXIgYXQtcnVsZS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTnVtYmVyIHBhcmFtZXRlciB0ZXN0cy4K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotSW50ZWdlciBwYXJh
bWV0ZXJzLgotcGFyYW1ldGVyczogbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNzsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAibjEgMSwgbjIg
MiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNyIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUg
aW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDQKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4xIDEiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVl
VHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZh
bHVlLmNzc1RleHQpIGlzICJuMiAyIDMiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBD
U1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJuMyAzIDQgNSIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVl
LkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMg
Im40IDQgNSA2IDciCi0KLUZsb2F0IHBhcmFtZXRlcnMuCi1wYXJhbWV0ZXJzOiBuMSAxLjEsIG4y
IDIuMiAzLjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQ7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm4xIDEuMSwgbjIgMi4yIDMuMywg
bjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
cGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDQKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4xIDEuMSIKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm4yIDIuMiAzLjMiCi1QQVNTIHN1YlZhbHVlLmNz
c1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlZhbHVlLmNzc1RleHQpIGlzICJuMyAzLjEgNC4xIDUuMSIKLVBBU1Mgc3ViVmFsdWUuY3Nz
VmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViVmFsdWUuY3NzVGV4dCkgaXMgIm40IDQuMSA1LjIgNi4zIDcuNCIKLQotUGFyYW1ldGVyIG5h
bWUgc2FtZSBhcyBDU1Mga2V5d29yZC4KLXBhcmFtZXRlcnM6IGJhY2tncm91bmQgMCAxIDAgMTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYmFja2dyb3Vu
ZCAwIDEgMCAxIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5j
c3NUZXh0KSBpcyAiYmFja2dyb3VuZCAwIDEgMCAxIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1UcmFuc2Zvcm0gcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1UcmFuc2Zvcm0gcGFyYW1ldGVyIHdp
dGggb25lIHRyYW5zZm9ybSBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IHQgcm90YXRlKDBkZWcpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJ0IHJvdGF0ZSgw
ZGVnKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90
b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENT
U1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgInQgcm90YXRlKDBkZWcpIgotCi1UcmFuc2Zvcm0gcGFyYW1ldGVyIHdpdGggbXVsdGlw
bGUgdHJhbnNmb3JtIGZ1bmN0aW9ucy4KLXBhcmFtZXRlcnM6IHQgcm90YXRlKDBkZWcpIHBlcnNw
ZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgInQgcm90YXRlKDBkZWcpIHBlcnNwZWN0
aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkiCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ0IHJvdGF0ZSgwZGVnKSBw
ZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIgotCi1NdWxpdHBs
ZSB0cmFuc2Zvcm0gcGFyYW1ldGVycy4KLXBhcmFtZXRlcnM6IHQxIHJvdGF0ZSgwZGVnKSwgdDIg
cm90YXRlKDBkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykp
IGlzICJ0MSByb3RhdGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVnKSIKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInQxIHJvdGF0ZSgwZGVnKSIK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInQyIHJvdGF0ZSgwZGVnKSIK
LQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQXJyYXkgcGFyYW1l
dGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1B
cnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScuCi1wYXJhbWV0ZXJzOiBhcnJheSBhcnJh
eSgxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYXJy
YXkgYXJyYXkoMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFt
ZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVl
LmNzc1RleHQpIGlzICJhcnJheSBhcnJheSgxKSIKLQotQXJyYXkgcGFyYW1ldGVyIHdpdGggb25l
IHBvc2l0aXZlIGludGVnZXIuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDEpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJhIGFycmF5KDEpIgotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVl
TGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVF
X0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYSBhcnJheSgx
KSIKLQotQXJyYXkgcGFyYW1ldGVyIHdpdGggb25lIG5lZ2F0aXZlIGZsb2F0LgotcGFyYW1ldGVy
czogYSBhcnJheSgtMS4wMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSkgaXMgImEgYXJyYXkoLTEuMDEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBp
bnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1
ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYSBhcnJheSgtMS4wMSkiCi0KLUFycmF5IHBhcmFt
ZXRlciB3aXRoIG11bHRpcGxlIHBvc2l0aXZlIGludGVnZXJzLgotcGFyYW1ldGVyczogYSBhcnJh
eSgxLCAyLCAzLCA0LCA1KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpKSBpcyAiYSBhcnJheSgxLCAyLCAzLCA0LCA1KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBl
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImEgYXJyYXkoMSwgMiwgMywgNCwgNSki
Ci0KLUFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuCi1wYXJhbWV0
ZXJzOiBhIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIKLQotTXVsdGlwbGUgYXJyYXkgcGFy
YW1ldGVycy4KLXBhcmFtZXRlcnM6IGExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSksIGEy
IGFycmF5KDEsIDIsIDMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJz
JykpIGlzICJhMSBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCBhMiBhcnJheSgxLCAyLCAz
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgImExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkiCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlZhbHVlLmNzc1RleHQpIGlzICJhMiBhcnJheSgxLCAyLCAzKSIKLQotPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotQ29sb3IgcGFyYW1ldGVyIHRlc3RzLgotPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1IZXggY29sb3IuCi1wYXJhbWV0
ZXJzOiBjICMwMEZGMDA7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMn
KSkgaXMgImMgcmdiKDAsIDI1NSwgMCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFs
dWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAyNTUsIDApIgotCi1Db2xvciBrZXl3
b3JkLgotcGFyYW1ldGVyczogYyBncmVlbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
cGFyYW1ldGVycycpKSBpcyAiYyByZ2IoMCwgMTI4LCAwKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
cGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImMgcmdiKDAsIDEyOCwgMCkiCi0K
LUNvbG9yIHJnYiBmdW5jdGlvbi4KLXBhcmFtZXRlcnM6IGMgcmdiKDAsIDEyOCwgMCk7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImMgcmdiKDAsIDEyOCwg
MCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9f
XyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9w
ZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NW
YWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQp
IGlzICJjIHJnYigwLCAxMjgsIDApIgotCi1Db2xvciBoc2wgZnVuY3Rpb24uCi1wYXJhbWV0ZXJz
OiBjIGhzbCgxMjAsIDEwMCUsIDUwJSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3Bh
cmFtZXRlcnMnKSkgaXMgImMgcmdiKDAsIDI1NSwgMCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAyNTUsIDApIgotCi1D
b2xvciByZ2JhIGZ1bmN0aW9uLgotcGFyYW1ldGVyczogYyByZ2JhKDAsIDI1NSwgMCwgMC4yKTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYyByZ2JhKDAs
IDI1NSwgMCwgMC4yKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVU
eXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiCi0KLUNvbG9yIGhzbGEgZnVu
Y3Rpb24uCi1wYXJhbWV0ZXJzOiBjIGhzbGEoMTIwLCAxMDAlLCA1MCUsIDAuMik7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImMgcmdiYSgwLCAyNTUsIDAs
IDAuMikiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJv
dG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBD
U1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJjIHJnYmEoMCwgMjU1LCAwLCAwLjIpIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MiBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJz
OiBtIG1hdDIoMSwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFt
ZXRlcnMnKSkgaXMgIm0gbWF0MigxLCAwLCAwLCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBl
IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0MigxLCAwLCAwLCAxKSIKLQot
TWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDIo
LTEsIC0xLCAtMSwgLTEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJz
JykpIGlzICJtIG1hdDIoLTEsIC0xLCAtMSwgLTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlW
YWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9w
ZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQyKC0xLCAtMSwgLTEsIC0xKSIK
LQotTWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotcGFy
YW1ldGVyczogbSBtYXQyKC0xLCAxLCAxLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MigtMSwgMSwgMSwgLTEpIgotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlz
dC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJ
U1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQyKC0xLCAx
LCAxLCAtMSkiCi0KLU1hdDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4K
LXBhcmFtZXRlcnM6IG0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpOwotUEFTUyBmaWx0ZXJBdFJ1
bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpIgotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1NYXQzIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0MyBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJz
OiBtIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAw
LCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90
b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENT
U1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgIm0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSIKLQotTWF0MyBwYXJhbWV0
ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDMoLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3Bh
cmFtZXRlcnMnKSkgaXMgIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
KSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSIKLQotTWF0MyBw
YXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLgotcGFyYW1ldGVyczog
bSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAibSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEs
IDEsIC0xLCAxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NW
YWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3Rv
ciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUu
Y3NzVGV4dCkgaXMgIm0gbWF0MygtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgMSkiCi0KLU1h
dDMgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLXBhcmFtZXRlcnM6IG0g
bWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0MygxLCAtMi4yLCAz
LjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtIG1hdDMoMSwgLTIuMiwgMy4xNCwg
MC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1NYXQ0IHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWF0NCBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJzOiBt
IG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSk7Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0NCgxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIKLVBBU1MgcGFyYW1l
dGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBw
YXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9M
SVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0NCgxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIKLQotTWF0NCBwYXJh
bWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBtIG1hdDQoLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJtIG1hdDQoLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NT
VmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0
KSBpcyAibSBtYXQ0KC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xKSIKLQotTWF0NCBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQg
cG9zaXRpdmUgdmFsdWVzLgotcGFyYW1ldGVyczogbSBtYXQ0KC0xLCAxLCAxLCAtMSwgLTEsIDEs
IDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVy
dHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBw
YXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5
cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibSBtYXQ0KC0xLCAxLCAxLCAtMSwg
LTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSkiCi0KLU1hdDQgcGFyYW1l
dGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLXBhcmFtZXRlcnM6IG0gbWF0NCgxLCAt
Mi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAx
LCAtMi4yLCAzLjE0LCAwLjQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0
ZXJzJykpIGlzICJtIG1hdDQoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQs
IDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40KSIKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNU
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0NCgxLCAtMi4y
LCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAt
Mi4yLCAzLjE0LCAwLjQpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci1Db21iaW5lZCBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU51bWJlciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJh
bnNmb3JtIHBhcmFtZXRlciwgbWF0cml4IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4K
LXBhcmFtZXRlcnM6IG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1h
dDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1h
dDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJy
YXkoMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm4g
MSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIoMSwgMCwgMCwgMSks
IG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQoMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXkoMSkiCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBB
U1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFs
dWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxl
bmd0aCBpcyA3Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFM
VUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJuIDEiCi1Q
QVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYigwLCAxMjgsIDApIgot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidCByb3RhdGUoMGRlZykiCi1Q
QVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtMSBtYXQyKDEsIDAsIDAsIDEp
IgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QK
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibTIgbWF0MygxLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAxKSIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgIm0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSkiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElT
VAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJhIGFycmF5KDEpIgot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXBhcmFtZXRlcnMt
cHJvcGVydHktdmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTQ4ZDNk
MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+
Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRl
ci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3Rz
L3BhcnNpbmctcGFyYW1ldGVycy1wcm9wZXJ0eS12YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
LXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDMwYjg4Y2QuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctc3JjLXByb3BlcnR5
LWludmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTY1ICswLDAgQEAKLVRl
c3Qgc3JjIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgot
Ci1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci1VUkwgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLU5vIHByb3BlcnR5IHZhbHVlLgotc3JjOiA7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdzcmMnKSBpcyBudWxsCi0KLU9ubHkgYSBzaW5nbGUgY29tbWEuCi1zcmM6ICw7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLU9ubHkgdHdvIGNvbW1hcy4KLXNyYzogLCAsOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1JZGVudGlmaWVyIGluc3RlYWQgb2YgVVJM
Lgotc3JjOiB2ZXJ0ZXgtc2hhZGVyOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1J
ZGVudGlmaWVyIHdpdGggZm9ybWF0IGluc3RlYWQgb2YgVVJMIHdpdGggZm9ybWF0Lgotc3JjOiB2
ZXJ0ZXgtc2hhZGVyIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKTsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J3NyYycpIGlzIG51bGwKLQotTG9jYWwgZnVuY3Rpb24gaW5zdGVhZCBvZiBVUkwgZnVuY3Rpb24u
Ci1zcmM6IGxvY2FsKHNoYWRlci52cyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUZvcm1hdCBmdW5jdGlv
biB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotSWRl
bnRpZmllciBpbnN0ZWFkIG9mIGZvcm1hdCBmdW5jdGlvbi4KLXNyYzogdXJsKHNoYWRlci52cykg
dmVydGV4LXNoYWRlcjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotU3RyaW5nIGlu
c3RlYWQgb2YgZm9ybWF0IGZ1bmN0aW9uLgotc3JjOiB1cmwoc2hhZGVyLnZzKSAneC1zaGFkZXIv
eC12ZXJ0ZXgnOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Gb3JtYXQgZnVuY3Rp
b24gbWlzc3BlbGxlZC4KLXNyYzogdXJsKHNoYWRlci52cykgZnJtdCgneC1zaGFkZXIveC12ZXJ0
ZXgnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotRm9ybWF0IGZ1bmN0aW9uIGVt
cHR5Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycp
IGlzIG51bGwKLQotRm9ybWF0IGZ1bmN0aW9uIHdpdGggc2luZ2xlIGlkZW50aWZlciBhcmd1bWVu
dC4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KHZlcnRleC1zaGFkZXIpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Gb3JtYXQgZnVuY3Rpb24gd2l0aCBzaW5nbGUgbnVtYmVy
IGFyZ3VtZW50Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoMCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdzcmMnKSBpcyBudWxsCi0KLUZvcm1hdCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIHNwYWNlLXNl
cGFyYXRlZCBpZGVudGlmZXIgYXJndW1lbnRzLgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
dmVydGV4LXNoYWRlciBmcmFnbWVudC1zaGFkZXIpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMg
bnVsbAotCi1Gb3JtYXQgZnVuY3Rpb24gd2l0aCBtdWx0aXBsZSBjb21tYS1zZXBhcmF0ZWQgaWRl
bnRpZmVyIGFyZ3VtZW50cy4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KHZlcnRleC1zaGFk
ZXIsZnJhZ21lbnQtc2hhZGVyKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotRm9y
bWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUgc3BhY2Utc2VwYXJhdGVkIHN0cmluZyBhcmd1bWVu
dHMuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnICd4LXNo
YWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLUZvcm1h
dCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIGNvbW1hLXNlcGFyYXRlZCBzdHJpbmcgYXJndW1lbnRz
Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JywneC1zaGFk
ZXIveC1mcmFnbWVudCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1NdWx0aXBs
ZSB2YWxpZCBmb3JtYXQgZnVuY3Rpb25zLgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gt
c2hhZGVyL3gtdmVydGV4JykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLVB1bmN0dWF0aW9uIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotCi1MZWFkaW5nIGNvbW1hIGJlZm9yZSBmaXJzdCBVUkwuCi1zcmM6ICwg
dXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnc3JjJykgaXMgbnVsbAotCi1Db21tYSBiZXR3ZWVuIFVSTCBhbmQgZm9ybWF0Lgotc3JjOiB1
cmwoc2hhZGVyLnZzKSwgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpOwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnc3JjJykgaXMgbnVsbAotCi1UcmFpbGluZyBjb21tYSBhZnRlciBmb3JtYXQuCi1zcmM6IHVy
bChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSw7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdzcmMnKSBpcyBudWxsCi0KLVR3byBjb21tYXMgYmV0d2VlbiBVUkxzLgotc3JjOiB1cmwoc2hh
ZGVyLnZzKSwsdXJsKHNoYWRlci5mcyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0K
LVR3byBjb21tYXMgYmV0d2VlbiBVUkxzIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZz
KSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksLHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1z
aGFkZXIveC1mcmFnbWVudCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1ObyBj
b21tYSBiZXR3ZWVuIFVSTHMuCi1zcmM6IHVybChzaGFkZXIudnMpIHVybChzaGFkZXIuZnMpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1ObyBjb21tYSBiZXR3ZWVuIFVSTHMgd2l0
aCBmb3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgn
KSB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKTsKLVBBU1MgZmls
dGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJ3NyYycpIGlzIG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQot
VEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC5odG1s
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3Bh
cnNpbmctc3JjLXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggN2EyNWMyMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4K
LTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRp
diBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3Rv
bS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlw
dC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLmpzIj48L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxpZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwY2I0NGY0Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12
YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwyNjkgKzAsMCBAQAotVGVzdCBz
cmMgcHJvcGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLVVSTHMgd2l0aG91dCBmb3JtYXQgdGVzdHMuCi09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9uZSBVUkwgd2l0aG91dCBmb3JtYXQuCi1z
cmM6IHVybChzaGFkZXIudnMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkg
aXMgInVybChzaGFkZXIudnMpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVl
LmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIgotCi1Ud28gVVJMcyB3aXRob3V0
IGZvcm1hdC4KLXNyYzogdXJsKHNoYWRlci52cyksIHVybChzaGFkZXIuZnMpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVy
LmZzKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLnZzKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1
ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVl
Ci1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykiCi0KLVRo
cmVlIFVSTHMgd2l0aG91dCBmb3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVy
LmZzKSwgdXJsKHNoYWRlcjMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkg
aXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMpIgotUEFTUyBz
cmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3Jj
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
c3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMg
dHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChz
aGFkZXIudnMpIgotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBB
U1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyLmZzKSIKLVBBU1Mgc3ViVmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBD
U1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJv
dG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNT
U19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNo
YWRlcjMpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1VUkxz
IHdpdGggZm9ybWF0IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotCi1PbmUgVVJMIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycp
KSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIgotUEFTUyBz
cmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3Jj
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
c3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMg
dHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5D
U1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChz
aGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIKLQotVHdvIFVSTHMgd2l0aCBm
b3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwg
dXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNo
YWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21l
bnQnKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiCi1QQVNT
IHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25z
dHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgInVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIgotCi1U
aHJlZSBVUkxzIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVu
dCcpLCB1cmwoc2hhZGVyMykgZm9ybWF0KCd1bmtub3duJyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZl
cnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJs
KHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3Rh
bmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3By
b3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMg
dHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1z
aGFkZXIveC12ZXJ0ZXgnKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0
cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNo
YWRlci94LWZyYWdtZW50JykiCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMg
dHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25v
d24nKSIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTWl4ZWQg
VVJMcyB3aXRoIGFuZCB3aXRob3V0IGZvcm1hdCB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLQotVGhyZWUgVVJMcy4gTWlkZGxlIFVSTCB3aXRob3V0IGZv
cm1hdC4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLCB1
cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1z
aGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vu
a25vd24nKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwot
UEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5
cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiCi1Q
QVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18g
PT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3Nz
VGV4dCkgaXMgInVybChzaGFkZXIuZnMpIgotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRy
dWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyMykgZm9ybWF0
KCd1bmtub3duJykiCi0KLVRocmVlIFVSTHMuIEZpcnN0IGFuZCBsYXN0IFVSTHMgd2l0aG91dCBm
b3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gt
c2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1
ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1
ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIgotUEFT
UyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIKLVBB
U1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNv
bnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9
PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NU
ZXh0KSBpcyAidXJsKHNoYWRlcjMpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci1DYXBpdGFsaXphdGlvbiB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLQotQWxsIHRva2VucyBjYXBpdGFsaXplZC4KLXNyYzogVVJMKFNI
QURFUi5WUykgRk9STUFUKCdYLVNIQURFUi9YLVZFUlRFWCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChTSEFERVIuVlMpIGZvcm1hdCgnWC1TSEFERVIvWC1W
RVJURVgnKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5
cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJ1cmwoU0hBREVSLlZTKSBmb3JtYXQoJ1gtU0hBREVSL1gtVkVSVEVYJykiCi0K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVdoaXRlc3BhY2UgdGVz
dHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUV4dHJhIGxl
YWRpbmcsIG1pZGRsZSwgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UuIAotc3JjOiAgICB1cmwoc2hh
ZGVyLnZzKSAgIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSAgICwgICB1cmwoc2hhZGVyLmZz
KSAgIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpICAgOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12
ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiCi1Q
QVNTIHNyY1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBzcmNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBzcmNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFs
dWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAi
dXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIgotUEFTUyBzdWJWYWx1
ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1
ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFs
dWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1
cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIKLQotTm8gd2hpdGVz
cGFjZSBhcm91bmQgY29tbWEuCi1zcmM6IHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIv
eC12ZXJ0ZXgnKSx1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykpIGlzICJ1cmwoc2hhZGVyLnZzKSBm
b3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFk
ZXIveC1mcmFnbWVudCcpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAyCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBz
dWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNz
c1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
VmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0
ZXgnKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1
YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3Nz
VmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdt
ZW50JykiCi0KLU5vIHdoaXRlc3BhY2UgYmV0d2VlbiBVUkwgYW5kIGZvcm1hdC4KLXNyYzogdXJs
KHNoYWRlci52cylmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4Jyk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94
LXZlcnRleCcpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVl
TGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVl
VHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUu
Y3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxp
ZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2MGNmNWUzLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4K
LTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2Ny
aXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0
eS12YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0
LXRlc3RzL3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1
bGUtaW52YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDRlODIyNi4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1z
eW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctYXQtcnVsZS1pbnZhbGlkLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsMzMgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNv
bW1vbi5qcy4KLQotZGVzY3JpcHRpb24oIlRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtp
dC1maWx0ZXIuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBo
ZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGNzc1J1bGUsIGluc2VydFJ1bGVFeGNlcHRpb247Ci0K
LWZ1bmN0aW9uIHRlc3RJbnZhbGlkRmlsdGVyQXRSdWxlKGRlc2NyaXB0aW9uLCBydWxlKQotewot
ICAgIGRlYnVnKCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBydWxlKTsKLQotICAgIHRyeSB7
Ci0gICAgICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZShydWxlLCAwKTsKLSAgICAgICAgdGVzdEZh
aWxlZCgiXCIiICsgcnVsZSArICJcIiBkaWQgbm90IHRocm93IGEgc3ludGF4IGVycm9yLiIpOwot
ICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAgICAgaW5zZXJ0UnVsZUV4Y2VwdGlvbiA9IGU7Ci0gICAg
ICAgIHNob3VsZEJlVHJ1ZSgiaW5zZXJ0UnVsZUV4Y2VwdGlvbiBpbnN0YW5jZW9mIERPTUV4Y2Vw
dGlvbiIpOwotICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJpbnNlcnRSdWxlRXhjZXB0aW9uLmNv
ZGUiLCAiRE9NRXhjZXB0aW9uLlNZTlRBWF9FUlIiKQotICAgIH0KLX0KLQotaGVhZGluZygiRmls
dGVyIGF0LXJ1bGUgc3ltYm9sIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIlVu
cHJlZml4ZWQgcnVsZS4iLCAiQGZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci0KLWhlYWRpbmcoIkZp
bHRlciBuYW1lIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIk1pc3NpbmcgZmls
dGVyIG5hbWUgaWRlbnRpZmllci4iLCAiQC13ZWJraXQtZmlsdGVyIHsgfSIpOwotdGVzdEludmFs
aWRGaWx0ZXJBdFJ1bGUoIkZpbHRlciBuYW1lIGFzIHN0cmluZy4iLCAiQC13ZWJraXQtZmlsdGVy
ICdteS1maWx0ZXInIHsgfSIpOwotdGVzdEludmFsaWRGaWx0ZXJBdFJ1bGUoIkZpbHRlciBuYW1l
IGFzIG51bWJlci4iLCAiQC13ZWJraXQtZmlsdGVyIDEyMyB7IH0iKTsKLQotaGVhZGluZygiRmls
dGVyIGF0LXJ1bGUgYm9keSB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyQXRSdWxlKCJNaXNz
aW5nIHJ1bGUgYm9keS4iLCAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciIpOwotdGVzdEludmFs
aWRGaWx0ZXJBdFJ1bGUoIk1pc3Npbmcgb3BlbmluZyBicmFjZS4iLCAiQC13ZWJraXQtZmlsdGVy
IG15LWZpbHRlciB9Iik7Ci10ZXN0SW52YWxpZEZpbHRlckF0UnVsZSgiTWlzc2luZyBjbG9zaW5n
IGJyYWNlLiIsICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsiKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQt
dGVzdHMvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1bGUt
dmFsaWQuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE4ZTU5OTYuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4
L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1bGUtdmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAt
MSwxMTkgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cy4KLQotZGVzY3JpcHRpb24oIlRlc3QgYXQtcnVsZSBwYXJzaW5nIGZvciBALXdlYmtpdC1maWx0
ZXIuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJz
IHRvIHNlZSB0aGVtLgotdmFyIGNzc1J1bGUsIGRlY2xhcmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0
RmlsdGVyQXRSdWxlKGRlc2NyaXB0aW9uLCBydWxlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFBy
b3BlcnRpZXMpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHJ1bGUp
OwotCi0gICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKHJ1bGUsIDApOwotCi0gICAgLy8gQ2hlY2sg
dGhlIHJ1bGUncyB0ZXh0IGFuZCB0eXBlLgotICAgIGNzc1J1bGUgPSBzdHlsZXNoZWV0LmNzc1J1
bGVzLml0ZW0oMCk7Ci0gICAgY2hlY2tSdWxlKGV4cGVjdGVkVmFsdWUsICJDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRSIsICJXZWJLaXRDU1NGaWx0ZXJSdWxlIik7Ci0KLSAgICAvLyBDaGVjayB0
aGUgcnVsZSdzIENTU1N0eWxlRGVjbGFyYXRpb24gcHJvcGVydGllcy4KLSAgICBkZWNsYXJhdGlv
biA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgaWYgKCFleHBlY3RlZFByb3BlcnRpZXMpCi0gICAgICAg
IGV4cGVjdGVkUHJvcGVydGllcyA9IFtdOwotICAgIHZhciBudW1Qcm9wZXJ0aWVzID0gMDsKLSAg
ICBmb3IgKHZhciBwcm9wZXJ0eU5hbWUgaW4gZXhwZWN0ZWRQcm9wZXJ0aWVzKSB7Ci0gICAgICAg
IHZhciBwcm9wZXJ0eVZhbHVlID0gZXhwZWN0ZWRQcm9wZXJ0aWVzW3Byb3BlcnR5TmFtZV07Ci0g
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnIiArIHByb3BlcnR5TmFtZSArICInKSIsIHByb3BlcnR5VmFsdWUpOwotICAgICAgICBudW1Q
cm9wZXJ0aWVzKys7Ci0gICAgfQotICAgIHNob3VsZEV2YWx1YXRlVG8oImRlY2xhcmF0aW9uLmxl
bmd0aCIsIG51bVByb3BlcnRpZXMpOwotfQotCi1mdW5jdGlvbiB0ZXN0TmVzdGVkUnVsZXMoZGVz
Y3JpcHRpb24sIHBhcmVudFJ1bGUsIHBhcmVudEV4cGVjdGF0aW9ucywgY2hpbGRFeHBlY3RhdGlv
bnMpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHBhcmVudFJ1bGUp
OwotCi0gICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKHBhcmVudFJ1bGUsIDApOwotCi0gICAgY3Nz
UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBjaGVja1J1bGUocGFyZW50
RXhwZWN0YXRpb25zLmNzc1RleHQsIHBhcmVudEV4cGVjdGF0aW9ucy5ydWxlVHlwZSwgcGFyZW50
RXhwZWN0YXRpb25zLmNvbnN0cnVjdG9yTmFtZSk7Ci0KLSAgICBpZiAoY2hpbGRFeHBlY3RhdGlv
bnMpIHsKLSAgICAgICAgY3NzUnVsZSA9IGNzc1J1bGUuY3NzUnVsZXNbMF07Ci0gICAgICAgIGNo
ZWNrUnVsZShjaGlsZEV4cGVjdGF0aW9ucy5jc3NUZXh0LCBjaGlsZEV4cGVjdGF0aW9ucy5ydWxl
VHlwZSwgY2hpbGRFeHBlY3RhdGlvbnMuY29uc3RydWN0b3JOYW1lKTsKLQotICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IGNzc1J1bGUuY3NzVGV4dC5sZW5ndGg7IGkrKykgewotICAgICAgICAg
ICAgaWYgKGNzc1J1bGUuY3NzVGV4dFtpXSAhPSBjaGlsZEV4cGVjdGF0aW9ucy5jc3NUZXh0W2ld
KQotICAgICAgICAgICAgICAgIHdpbmRvdy5hbGVydChpICsgIjogIiArIGNzc1J1bGUuY3NzVGV4
dFtpXSk7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLS8vIENoZWNrcyB0aGUgZ2xvYmFsICJjc3NS
dWxlIiBhZ2FpbnN0IHNvbWUgZXhwZWN0ZWQgcHJvcGVydGllcy4KLWZ1bmN0aW9uIGNoZWNrUnVs
ZShleHBlY3RlZENTU1RleHQsIGV4cGVjdGVkUnVsZVR5cGUsIGV4cGVjdGVkQ29uc3RydWN0b3JO
YW1lKQotewotICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiY3NzUnVsZS5jc3NUZXh0IiwgZXhw
ZWN0ZWRDU1NUZXh0KTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJjc3NSdWxlLnR5cGUiLCBleHBl
Y3RlZFJ1bGVUeXBlKTsKLSAgICBzaG91bGRIYXZlQ29uc3RydWN0b3IoImNzc1J1bGUiLCBleHBl
Y3RlZENvbnN0cnVjdG9yTmFtZSk7Ci19Ci0KLWhlYWRpbmcoIkZpbHRlciBhdC1ydWxlIHRlc3Rz
LiIpOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVsZSwgc2VwYXJhdGVkIGJ5IHNpbmdsZSBz
cGFjZXMuIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iLAotICAgICJALXdl
YmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIpOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVs
ZSwgc2VwYXJhdGVkIGJ5IG11bHRpcGxlIHNwYWNlcy4iLAotICAgICIgICBALXdlYmtpdC1maWx0
ZXIgICBteS1maWx0ZXIgICB7ICAgfSAgICIsCi0gICAgIkAtd2Via2l0LWZpbHRlciBteS1maWx0
ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJFbXB0eSBydWxlLCBubyBleHRyYSB3aGl0ZXNw
YWNlLiIsCi0gICAgIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXJ7fSIsCi0gICAgIkAtd2Via2l0
LWZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJSdWxlIHdpdGggYXJi
aXRyYXJ5IHByb3BlcnRpZXMuIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IHdp
ZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgfSIsIAotICAgICJALXdlYmtpdC1maWx0ZXIgbXkt
ZmlsdGVyIHsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyB9IiwKLSAgICB7d2lkdGg6ICIx
MDBweCIsIGhlaWdodDogIjEwMHB4In0pOwotdGVzdEZpbHRlckF0UnVsZSgiRW1wdHkgcnVsZSwg
Y29tbWVudCBzZXBhcmF0b3JzIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyLyoqL215LWZpbHRlci8q
Ki97IH0iLAotICAgICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIpOwotdGVzdEZpbHRl
ckF0UnVsZSgiRW1wdHkgcnVsZSwgY29tbWVudCtzcGFjZSBzZXBhcmF0b3JzIiwKLSAgICAiQC13
ZWJraXQtZmlsdGVyLyoqLyBteS1maWx0ZXIvKiovIHsgfSIsCi0gICAgIkAtd2Via2l0LWZpbHRl
ciBteS1maWx0ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJFbXB0eSBydWxlLCBzcGFjZStj
b21tZW50IHNlcGFyYXRvcnMiLAotICAgICJALXdlYmtpdC1maWx0ZXIgLyoqL215LWZpbHRlciAv
KioveyB9IiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iKTsKLXRlc3RGaWx0
ZXJBdFJ1bGUoIkVtcHR5IHJ1bGUsIHNwYWNlK2NvbW1lbnQrc3BhY2Ugc2VwYXJhdG9ycyIsCi0g
ICAgIkAtd2Via2l0LWZpbHRlciAvKiovIG15LWZpbHRlciAvKiovIHsgfSIsCi0gICAgIkAtd2Vi
a2l0LWZpbHRlciBteS1maWx0ZXIgeyB9Iik7Ci0KLWhlYWRpbmcoIk5lc3RlZCBmaWx0ZXIgYXQt
cnVsZSB0ZXN0cy4iKTsKLXRlc3ROZXN0ZWRSdWxlcygiTmVzdGVkIHJ1bGUuIiwKLSAgICAiQC13
ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyBALXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVy
IHsgfSB9IiwgCi0gICAgewotICAgICAgICBjc3NUZXh0OiAiQC13ZWJraXQtZmlsdGVyIHBhcmVu
dC1maWx0ZXIgeyB9IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFLAotICAgICAgICBjb25zdHJ1Y3Rvck5hbWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIgotICAg
IH0pOwotdGVzdE5lc3RlZFJ1bGVzKCJUd2ljZSBuZXN0ZWQgcnVsZS4iLAotICAgICJALXdlYmtp
dC1maWx0ZXIgcGFyZW50LWZpbHRlciB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyBA
LXdlYmtpdC1maWx0ZXIgZ3JhbmRjaGlsZC1maWx0ZXIgfSB9IiwgCi0gICAgewotICAgICAgICBj
c3NUZXh0OiAiQC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyB9IiwKLSAgICAgICAgcnVs
ZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFLAotICAgICAgICBjb25zdHJ1Y3Rvck5h
bWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIgotICAgIH0pOwotdGVzdE5lc3RlZFJ1bGVzKCJOZXN0
ZWQgcnVsZSBpbnNpZGUgYXJiaXRyYXJ5IHJ1bGUuIiwgCi0gICAgIkBmb250LWZhY2UgeyBALXdl
YmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSB9IiwgCi0gICAgewotICAgICAgICBjc3NUZXh0
OiAiQGZvbnQtZmFjZSB7IH0iLAotICAgICAgICBydWxlVHlwZTogQ1NTUnVsZS5GT05UX0ZBQ0Vf
UlVMRSwKLSAgICAgICAgY29uc3RydWN0b3JOYW1lOiAiQ1NTRm9udEZhY2VSdWxlIgotICAgIH0p
OwotdGVzdE5lc3RlZFJ1bGVzKCJOZXN0ZWQgcnVsZSBpbnNpZGUgbWVkaWEgcXVlcnkuIiwKLSAg
ICAiQG1lZGlhIHNjcmVlbiB7IEAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIgeyB9IH0iLCAK
LSAgICB7Ci0gICAgICAgIGNzc1RleHQ6ICJAbWVkaWEgc2NyZWVuIHsgXG4gIEAtd2Via2l0LWZp
bHRlciBjaGlsZC1maWx0ZXIgeyB9XG59IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuTUVE
SUFfUlVMRSwKLSAgICAgICAgY29uc3RydWN0b3JOYW1lOiAiQ1NTTWVkaWFSdWxlIiwKLSAgICB9
LAotICAgIHsKLSAgICAgICAgY3NzVGV4dDogIkAtd2Via2l0LWZpbHRlciBjaGlsZC1maWx0ZXIg
eyB9IiwKLSAgICAgICAgcnVsZVR5cGU6IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFLAotICAg
ICAgICBjb25zdHJ1Y3Rvck5hbWU6ICJXZWJLaXRDU1NGaWx0ZXJSdWxlIiwKLSAgICB9KTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC5qcyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQt
dGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZDRmYWNhMy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctY3Vz
dG9tLWZ1bmN0aW9uLWludmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxMzkgKzAsMCBAQAot
ZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgY3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhl
IC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2Jh
bCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBzdHlsZVJ1bGUsIGRlY2xh
cmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0SW52YWxpZEZpbHRlclJ1bGUoZGVzY3JpcHRpb24sIHJ1
bGUpCi17Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHJ1bGUpOwotCi0g
ICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKCJib2R5IHsgLXdlYmtpdC1maWx0ZXI6ICIgKyBydWxl
ICsgIjsgfSIsIDApOwotCi0gICAgc3R5bGVSdWxlID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVt
KDApOwotICAgIHNob3VsZEJlKCJzdHlsZVJ1bGUudHlwZSIsICJDU1NSdWxlLlNUWUxFX1JVTEUi
KTsKLQotICAgIGRlY2xhcmF0aW9uID0gc3R5bGVSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJk
ZWNsYXJhdGlvbi5sZW5ndGgiLCAiMCIpOwotICAgIHNob3VsZEJlKCJkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygi
Q3VzdG9tIGZ1bmN0aW9uIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJFbXB0eSBj
dXN0b20gZnVuY3Rpb24uIiwgImN1c3RvbSgpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk9u
ZSBjb21tYSBpbiBjdXN0b20gZnVuY3Rpb24uIiwgImN1c3RvbSgsKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNdWx0aXBsZSBjb21tYXMgaW4gY3VzdG9tIGZ1bmN0aW9uLiIsICJjdXN0b20o
LCwpIik7Ci0KLWhlYWRpbmcoIkZpbHRlciBuYW1lIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJObyBmaWx0ZXIgbmFtZSB3aXRoIHBhcmFtZXRlci4iLCAiY3VzdG9tKG4gMSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1hbnkgZmlsdGVyIG5hbWVzLiIsICJjdXN0b20o
bXktZmlsdGVyLTEgbXktZmlsdGVyLTIpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkZpbHRl
ciBuYW1lIGFzIHN0cmluZy4iLCAiY3VzdG9tKCdteS1maWx0ZXItMScpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIkZpbHRlciBuYW1lIGFzIG51bWJlci4iLCAiY3VzdG9tKDEpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIGJldHdlZW4gZmlsdGVyIG5hbWUgYW5kIHBhcmFtZXRl
ci4iLCAiY3VzdG9tKG15LWZpbHRlciBuIDEpIik7Ci0KLWhlYWRpbmcoIk51bWJlciBwYXJhbWV0
ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IHBhcmFtZXRlciB2
YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIG4gMSAyIDMgNCA1KSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJJbnZhbGlkIHBhcmFtZXRlciB0eXBlLiIsICJjdXN0b20obXktZmlsdGVyLCBu
IDEuMCAyLjAgJ3RleHQnKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHBhcmFtZXRl
ciBkZWZpbml0aW9uIGFmdGVyIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyLCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gd2l0aCB0d28gY29tbWFz
LiIsICJjdXN0b20obXktZmlsdGVyLCwpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHBh
cmFtZXRlciBkZWZpbml0aW9uIGJlZm9yZSB2YWxpZCBwYXJhbWV0ZXIgZGVmaW50aW9uLiIsICJj
dXN0b20obXktZmlsdGVyLCAsIG4gMSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gcGFy
YW1ldGVyIHZhbHVlLiIsICJjdXN0b20obXktZmlsdGVyLCBuKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgd2l0aCBtdWx0aXBsZSBwYXJhbWV0ZXJzLiIsICJj
dXN0b20obXktZmlsdGVyLCBuMSwgbjIsIG4zKSIpOwotCi1oZWFkaW5nKCJDb2xvciBwYXJhbWV0
ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHJnYiBjb2xvciB2YWx1ZXMu
IiwgImN1c3RvbShteS1maWx0ZXIsIGMgcmdiKCwsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiTm8gaHNsIGNvbG9yIHZhbHVlcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYyBoc2woLCwpKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJIZXggd2l0aCA4IGNoYXJhY3RlcnMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGMgI0ZGMDAwMEZGKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJIZXgg
d2l0aCAyIGNoYXJhY3Rlci4iLCAiY3VzdG9tKG15LWZpbHRlciwgYyAjRkYpIik7Ci10ZXN0SW52
YWxpZEZpbHRlclJ1bGUoIlJnYmEgd2l0aCAzIHZhbHVlcyBhbmQgMiBjb21tYXMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGMgcmdiYSgyNTUsIDAsIDApKSIpOwotCi1oZWFkaW5nKCJUcmFuc2Zvcm0g
cGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgaW52YWxpZCB0
cmFuc2Zvcm0gZnVuY3Rpb24uIiwgImN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUo
MGRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk11bHRpcGxlIGludmFsaWQgdHJhbnNm
b3JtIGZ1bmN0aW9ucy4iLCAiY3VzdG9tKG15LWZpbHRlciwgdCBpbnZhbGlkLXJvdGF0ZSgwZGVn
KSBpbnZhbGlkLXBlcnNwZWN0aXZlKDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZh
bGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuIiwgImN1c3RvbShteS1m
aWx0ZXIsIHQgcm90YXRlKDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDAp
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gYmV0
d2VlbiBpbnZhbGlkIG9uZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUo
MGRlZykgcGVyc3BlY3RpdmUoMCkgaW52YWxpZC10cmFuc2xhdGUoMCkpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiB3aXRob3V0IGxlYWRpbmcgY29t
bWEuIiwgImN1c3RvbShteS1maWx0ZXIgdCBwZXJzcGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiVmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGggdHJhaWxpbmcgY29tbWEu
IiwgImN1c3RvbShteS1maWx0ZXIsIHQgcGVyc3BlY3RpdmUoMCksKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gd2l0aCB0cmFpbGluZyBjb21tYSBh
bmQgd2l0aG91dCBsZWFkaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyIHQgcGVyc3BlY3Rp
dmUoMCksKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHRyYW5zZm9ybSB3aXRo
IHRyYWlsaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyLCB0IGludmFsaWQtcm90YXRlKDBk
ZWcpLCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aG91
dCBsZWFkaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyIHQgaW52YWxpZF9yb3RhdGUoMGRl
ZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3aXRoIGludmFs
aWQgY2hhcmFjdGVycyIsICJjdXN0b20obXktZmlsdGVyLHQgcm90YXRlKDBkZWcpICouLSwpIik7
Ci0KLWhlYWRpbmcoIkFycmF5IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiRW1wdHkgYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoKSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiT25lIGNvbW1hIGluIGFycmF5LiIsICJjdXN0b20obXktZmls
dGVyLCBhIGFycmF5KCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aXBsZSBjb21t
YXMgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCwsKSkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTXVsdGlwbGUgY29tbWFzIHdpdGggYSB2YWx1ZSBpbiBhcnJheS4i
LCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgsLDEsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEgbmVnYXRpdmUgdmFsdWUgaW4gYXJyYXkuIiwg
ImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLC00KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEgdmFsdWUgaW4gYXJyYXkuIiwgImN1c3RvbShteS1m
aWx0ZXIsIGEgYXJyYXkoLDQpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgbmVnYXRp
dmUgdmFsdWUgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRl
ciwgYSBhcnJheSgtNCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgdmFsdWUgZm9s
bG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSg0
LCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHZhbHVlcyBmb2xsb3dlZCBieSBh
IGNvbW1hIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQs
KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEg
bGV0dGVyIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQs
IHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUd28gY29tbWFzIGFzIHNlcGFyYXRvciBi
ZXR3ZWVuIHZhbHVlcyBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAy
LCAsIDQpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJMZWFkaW5nIGNvbW1hIGluIGFycmF5
LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwxLCAyLCAzLCA0KSkiKTsKLXRlc3RJbnZh
bGlkRmlsdGVyUnVsZSgiU2VtaWNvbG9uIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMTsgMjsgMzsgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIlNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0
ZXIsIGEgYXJyYXkoMSAyIDMgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIHNl
cGFyYXRlZCB2YWx1ZXMgd2l0aCBjb21tYSB0ZXJtaW5hdG9yIGluIGFycmF5LiIsICJjdXN0b20o
bXktZmlsdGVyLCBhIGFycmF5KDEgMiAzIDQsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgi
U3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLCAxIDIgMyA0KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiTmFOIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KE5hTikpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5hTiBiZXR3ZWVuIHZhbGlkIHZhbHVlcyBpbiBhcnJh
eS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCBOYU4sIDMpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHZhbHVlICdub25lJyBpbiBhcnJheS4iLCAiY3VzdG9t
KG15LWZpbHRlciwgYSBhcnJheShub25lKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52
YWxpZCB2YWx1ZSB1bml0ICdweCcgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoMXB4KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB2YWx1ZSB1bml0ICdk
ZWcnIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDFkZWcpKSIpOwotdGVz
dEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheSBhZnRl
ciB2YWxpZCB2YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgMywgNHB4
KSkiKTsKLQotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiRW1wdHkgbWF0Mi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2aWV3IGFyZ3VtZW50cy4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQyKDAsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBh
cmd1bWVudHMgYnV0IGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKCwsLCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0
ZXIsIGEgbWF0MigwLCAwLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4g
bWF0MiBmdW5jdGlvbi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDAsIDAsIGEsIGIpKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVudHMuIiwgImN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MigwLCAwLCAwLCAwLCAxKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMSAwIDAgMSkpIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNvbWUgY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBh
IG1hdDIoMSwgMCwgMCAxKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTGVhZGluZyBjb21t
YXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigsIDAsIDAsIDEpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJObyBsZW5ndGggdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0
MigxcHgsIDBweCwgMHB4LCAxcHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdy
ZWUgdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigxZGVnLCAwZGVnLCAwZGVnLCAx
ZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGluIG1hdDIuIiwgImN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MigxLCAwLCAwLCBOYU4pKSIpOwotCi1oZWFkaW5nKCJNYXQzIHBhcmFt
ZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgbWF0My4iLCAiY3Vz
dG9tKG15LWZpbHRlciwgYSBtYXQzKCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2
aWV3IGFyZ3VtZW50cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDAsIDAsIDAsIDApKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBhcmd1bWVudHMgYnV0IGNvbW1hcy4iLCAiY3Vz
dG9tKG15LWZpbHRlciwgYSBtYXQzKCwsLCwsLCwsLCwsLCwsLCkpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAw
LCAwLCAwLCAxLCAwLCAwLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4g
bWF0MyBmdW5jdGlvbi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEsIDAsIDAsIDAsIDEs
IDAsIDAsIGEsIGIpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVu
dHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAx
LCAwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDMoMSAwIDAgMCAxIDAgMCAwIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJS
dWxlKCJTb21lIGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEsIDAsIDAsIDAs
IDEsIDAgMCAwIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJMZWFkaW5nIGNvbW1hcy4i
LCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIGxlbmd0aCB1bml0cy4iLCAiY3VzdG9tKG15LWZp
bHRlciwgYSBtYXQzKDFweCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAxcHgpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdyZWUgdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0MygxZGVnLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAxZGVnKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiTmFOIGluIG1hdDMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MihOYU4s
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpKSIpOwotCi1oZWFkaW5nKCJNYXQ0IHBhcmFtZXRlciB0
ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgbWF0NC4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQ0KCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyB2aWV3IGFy
Z3VtZW50cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDEsIDAsIDAs
IDAsIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBhcmd1bWVudHMgYnV0IGNvbW1h
cy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KCwsLCwsLCwsLCwsLCwsLCkpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIkVuZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCwpKSIpOwotdGVz
dEludmFsaWRGaWx0ZXJSdWxlKCJJZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDEsIDAsIDAsIGEsIGIpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJUb28gbWFueSBhcmd1bWVudHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwKSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVy
LCBhIG1hdDQoMSAwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSkpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIlNvbWUgY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMSwg
MCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCAwIDAgMCAxKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiTGVhZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgs
IDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBsZW5ndGggdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgxcHgsIDAsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAx
cHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBkZWdyZWUgdW5pdHMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGEgbWF0NCgxZGVnLCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAx
ZGVnLCAwLCAwLCAwLCAwLCAxZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGlu
IG1hdDQuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0NChOYU4sIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotCi0KLWhlYWRpbmcoIk1peGluZyBwYXJh
bWV0ZXIgdHlwZXMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk51bWJlciBwYXJhbWV0ZXIg
d2l0aCBoZXggY29sb3IuIiwgImN1c3RvbShteS1maWx0ZXIsIG4xIDEgMiAjRkYwMDAwKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJOdW1iZXIgcGFyYW1ldGVyIHdpdGggY29sb3Iga2V5d29y
ZC4iLCAiY3VzdG9tKG15LWZpbHRlciwgbjEgMSAyIHJlZCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiTnVtYmVyIHBhcmFtZXRlciB3aXRoIHJnYiBjb2xvci4iLCAiY3VzdG9tKG15LWZpbHRl
ciwgbjEgMSAyIHJnYigyNTUsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJDb2xv
ciB3aXRoIG51bWJlciBwYXJhbWV0ZXIuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwg
MCwgMCkgMSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiQ29sb3IgaW4gYXJyYXkuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMCwgcmdiKDI1NSwgMCwgMCkpKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJDb2xvciBhbmQgYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoMCwgMCkgcmdiKDI1NSwgMCwgMCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkNvbG9y
IHdpdGggdHJhbnNmb3JtIHZhbHVlcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSByb3RhdGUoNDVk
ZWcpIHJnYigyNTUsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJDb2xvciB3aXRo
IHRyYW5zZm9ybSB2YWx1ZXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwgMCwgMCkg
cm90YXRlKDQ1ZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiQ29sb3Igd2l0aCBtYXQy
LiIsICJjdXN0b20obXktZmlsdGVyLCBhIHJnYigyNTUsIDAsIDApIG1hdDIoMCwgMCwgMCwgMCkp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIm1hdDIgd2l0aCBtYXQzLiIsICJjdXN0b20obXkt
ZmlsdGVyLCBhIG1hdDIoMSwgMCwgMCwgMSkgbWF0MygwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQu
anMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgv
c2NyaXB0LXRlc3RzL3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9uLXZhbGlkLmpzCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA3MWM1YTBmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2lu
Zy1jdXN0b20tZnVuY3Rpb24tdmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxNjcgKzAsMCBA
QAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9u
IG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBi
ZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgc3R5bGVSdWxl
LCBzdHlsZURlY2xhcmF0aW9uLCBmaWx0ZXJQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1ZTsKLQotZnVu
Y3Rpb24gdGVzdEZpbHRlclByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlLCBleHBl
Y3RlZFZhbHVlLCBleHBlY3RlZFR5cGVzLCBleHBlY3RlZFRleHRzKQotewotICAgIGRlYnVnKCJc
biIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBwcm9wZXJ0eVZhbHVlKTsKLQotICAgIHN0eWxlc2hl
ZXQuaW5zZXJ0UnVsZSgiYm9keSB7IC13ZWJraXQtZmlsdGVyOiAiICsgcHJvcGVydHlWYWx1ZSAr
ICI7IH0iLCAwKTsKLSAgICBzdHlsZVJ1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVzLml0ZW0oMCk7
Ci0gICAgc2hvdWxkQmUoInN0eWxlUnVsZS50eXBlIiwgIkNTU1J1bGUuU1RZTEVfUlVMRSIpOwot
Ci0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IHN0eWxlUnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgi
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgiLCAiMSIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykiLCAiJyIgKyBleHBlY3Rl
ZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclByb3BlcnR5VmFsdWUgPSBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5Q1NTVmFsdWUoJy13ZWJraXQtZmlsdGVyJyk7Ci0gICAgc2hvdWxkSGF2
ZUNvbnN0cnVjdG9yKCJmaWx0ZXJQcm9wZXJ0eVZhbHVlIiwgIkNTU1ZhbHVlTGlzdCIpOwotCi0g
ICAgaWYgKCFleHBlY3RlZFR5cGVzKSB7Ci0gICAgICAgIGV4cGVjdGVkVHlwZXMgPSBbIldlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NIl07Ci0gICAgICAgIGV4cGVjdGVkVGV4
dHMgPSBbZXhwZWN0ZWRWYWx1ZV07Ci0gICAgfQotICAgIAotICAgIHNob3VsZEJlKCJmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCIsICIiICsgZXhwZWN0ZWRUeXBlcy5sZW5ndGgpOyAvLyBzaG91
bGRCZSBleHBlY3RzIHN0cmluZyBhcmd1bWVudHMKLSAgCi0gICAgaWYgKGZpbHRlclByb3BlcnR5
VmFsdWUpIHsKLSAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBleHBlY3RlZFR5cGVzLmxlbmd0
aDsgaSsrKSB7Ci0gICAgICAgICAgICBzdWJWYWx1ZSA9IGZpbHRlclByb3BlcnR5VmFsdWVbaV07
Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViVmFsdWUub3BlcmF0aW9uVHlwZSIsIGV4cGVjdGVk
VHlwZXNbaV0pOwotICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1RleHQiLCAiJyIg
KyBleHBlY3RlZFRleHRzW2ldICsgIiciKTsKLSAgICAgICAgfQotICAgIH0KLX0KLQotaGVhZGlu
ZygiQ3VzdG9tIGZ1bmN0aW9uIHRlc3RzLiIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDdXN0b20g
ZnVuY3Rpb24gaW4gQ0FQUy4iLAotICAgICJDVVNUT00obXktZmlsdGVyKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIpIik7Ci0KLWhlYWRpbmcoIkZpbHRlciBjaGFpbiB0ZXN0cy4iKQotdGVzdEZp
bHRlclByb3BlcnR5KCJDdXN0b20gZnVuY3Rpb24gaW4gbWlkZGxlIG9mIGZpbHRlciBjaGFpbi4i
LAotICAgICJncmF5c2NhbGUoKSBjdXN0b20obXktZmlsdGVyKSBzZXBpYSgpIiwgImdyYXlzY2Fs
ZSgpIGN1c3RvbShteS1maWx0ZXIpIHNlcGlhKCkiLAotICAgIFsiV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUiLAotICAgICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTSIsCi0gICAgIldlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfU0VQ
SUEiXSwKLSAgICBbImdyYXlzY2FsZSgpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlcikiLAotICAg
ICJzZXBpYSgpIl0pOwotCi1oZWFkaW5nKCJGaWx0ZXIgbmFtZSB0ZXN0cy4iKTsKLXRlc3RGaWx0
ZXJQcm9wZXJ0eSgiRmlsdGVyIG5hbWUgb25seS4iLAotICAgICJjdXN0b20obXktZmlsdGVyKSIs
Ci0gICAgImN1c3RvbShteS1maWx0ZXIpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkZpbHRlciBu
YW1lIGFzIENTUyAnbm9uZScga2V5d29yZC4iLAotICAgICJjdXN0b20obm9uZSkiLAotICAgICJj
dXN0b20obm9uZSkiKTsKLQotaGVhZGluZygiTnVtYmVyIHBhcmFtZXRlciB0ZXN0cy4iKQotdGVz
dEZpbHRlclByb3BlcnR5KCJJbnRlZ2VyIHBhcmFtZXRlcnMuIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgbjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNykiLAotICAgICJjdXN0b20o
bXktZmlsdGVyLCBuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3KSIpOwotdGVzdEZp
bHRlclByb3BlcnR5KCJGbG9hdCBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIs
IG4xIDEuMSwgbjIgMi4yIDMuMywgbjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCki
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBuMSAxLjEsIG4yIDIuMiAzLjMsIG4zIDMuMSA0LjEg
NS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIlBhcmFtZXRl
ciBuYW1lIHNhbWUgYXMgQ1NTIGtleXdvcmQuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYmFj
a2dyb3VuZCAwIDEgMCAxKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGJhY2tncm91bmQgMCAx
IDAgMSkiKTsKLQotaGVhZGluZygiQ29sb3IgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdEZpbHRl
clByb3BlcnR5KCJIZXggY29sb3IuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyAjMDBGRjAw
KSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpIik7Ci10ZXN0Rmls
dGVyUHJvcGVydHkoIkNvbG9yIGtleXdvcmQuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyBn
cmVlbikiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYigwLCAxMjgsIDApKSIpOwotdGVz
dEZpbHRlclByb3BlcnR5KCJDb2xvciByZ2IgZnVuY3Rpb24uIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgYyByZ2IoMCwgMTI4LCAwKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYigw
LCAxMjgsIDApKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDb2xvciBoc2wgZnVuY3Rpb24uIiwK
LSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyBoc2woMTIwLCAxMDAlLCA1MCUpKSIsCi0gICAgImN1
c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHko
IkNvbG9yIHJnYmEgZnVuY3Rpb24uIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyByZ2JhKDAs
IDI1NSwgMCwgMC4yKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAw
LCAwLjIpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDb2xvciBoc2xhIGZ1bmN0aW9uLiIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIGMgaHNsYSgxMjAsIDEwMCUsIDUwJSwgMC4yKSkiLAotICAg
ICJjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAwLCAwLjIpKSIpOwotCi1oZWFkaW5n
KCJUcmFuc2Zvcm0gcGFyYW1ldGVyIHRlc3RzLiIpCi10ZXN0RmlsdGVyUHJvcGVydHkoIlRyYW5z
Zm9ybSBwYXJhbWV0ZXIgd2l0aCBvbmUgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIHQg
cm90YXRlKDBkZWcpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJUcmFuc2Zvcm0gcGFyYW1ldGVy
IHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtIGZ1bmN0aW9ucy4iLAotICAgICJjdXN0b20obXktZmls
dGVyLCB0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUo
MHB4LCAwcHgpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIHQgcm90YXRlKDBkZWcpIHBlcnNw
ZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkpIik7Ci10ZXN0RmlsdGVy
UHJvcGVydHkoIk11bGl0cGxlIHRyYW5zZm9ybSBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbSht
eS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIHQxIHJvdGF0ZSgwZGVnKSwgdDIgcm90YXRlKDBkZWcpKSIpOwotCi1oZWFk
aW5nKCJBcnJheSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkFycmF5
IHBhcmFtZXRlciB3aXRoIG5hbWUgJ2FycmF5Jy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBh
cnJheSBhcnJheSgxKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBhcnJheSBhcnJheSgxKSki
KTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQXJyYXkgcGFyYW1ldGVyIHdpdGggb25lIHBvc2l0aXZl
IGludGVnZXIuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxKSkiLAotICAgICJj
dXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJBcnJh
eSBwYXJhbWV0ZXIgd2l0aCBvbmUgbmVnYXRpdmUgZmxvYXQuIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgYSBhcnJheSgtMS4wMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgt
MS4wMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRp
cGxlIHBvc2l0aXZlIGludGVnZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXko
MSwgMiwgMywgNCwgNSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAz
LCA0LCA1KSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQXJyYXkgcGFyYW1ldGVyIHdpdGggbXVs
dGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEs
IC0yLjIsIDMuMTQsIDAuNCwgNSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgx
LCAtMi4yLCAzLjE0LCAwLjQsIDUpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNdWx0aXBsZSBh
cnJheSBwYXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGExIGFycmF5KDEsIC0y
LjIsIDMuMTQsIDAuNCwgNSksIGEyIGFycmF5KDEsIDIsIDMpKSIsCi0gICAgImN1c3RvbShteS1m
aWx0ZXIsIGExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSksIGEyIGFycmF5KDEsIDIsIDMp
KSIpOwotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RGaWx0ZXJQcm9w
ZXJ0eSgiTWF0MiBwYXJhbWV0ZXIuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKDEs
IDAsIDAsIDEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MigxLCAwLCAwLCAxKSki
KTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiTWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1
ZXMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAtMSwgLTEsIC0xKSkiLAot
ICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIC0xLCAtMSwgLTEpKSIpOwotdGVzdEZp
bHRlclByb3BlcnR5KCJNYXQyIHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2
YWx1ZXMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAxLCAxLCAtMSkpIiwK
LSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAxLCAxLCAtMSkpIik7Ci10ZXN0Rmls
dGVyUHJvcGVydHkoIk1hdDIgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4i
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSkiLAot
ICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSkiKTsKLQot
aGVhZGluZygiTWF0MyBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1h
dDMgcGFyYW1ldGVyLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAwLCAwLCAw
LCAxLCAwLCAwLCAwLCAxKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoMSwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMgcGFyYW1l
dGVyIHdpdGggbmVnYXRpdmUgdmFsdWVzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0
MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSkiLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDMoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkpIik7Ci10
ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5kIHBvc2l0
aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIDEsIDEsIC0x
LCAtMSwgMSwgMSwgLTEsIDEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwg
MSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDMg
cGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEp
KSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEs
IC0yLjIsIDMuMTQsIDAuNCwgMSkpIik7Ci0KLWhlYWRpbmcoIk1hdDQgcGFyYW1ldGVyIHRlc3Rz
LiIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNYXQ0IHBhcmFtZXRlci4iLAotICAgICJjdXN0b20o
bXktZmlsdGVyLCBtIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIDAsIDAsIDAsIDAs
IDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5
KCJNYXQ0IHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXkt
ZmlsdGVyLCBtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSwgLTEsIC0xLCAtMSwgLTEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRp
dmUgYW5kIHBvc2l0aXZlIHZhbHVlcy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDQo
LTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xKSki
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwg
LTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xKSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgi
TWF0NCBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRzLiIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpKSIsCi0gICAgImN1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpKSIpOwotCi1oZWFkaW5n
KCJDb21iaW5lZCBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk51bWJl
ciBwYXJhbWV0ZXIsIGNvbG9yIHBhcmFtZXRlciwgdHJhbnNmb3JtIHBhcmFtZXRlciwgbWF0cml4
IHBhcmFtZXRlcnMgYW5kIGFycmF5IHBhcmFtZXRlci4iLAotICAgICJjdXN0b20obXktZmlsdGVy
LCBuIDEsIGMgcmdiKDAsIDEyOCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAs
IDEpLCBtMiBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFycmF5KDEpKSIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRl
ZyksIG0xIG1hdDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MSksIG0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSksIGEgYXJyYXkoMSkpIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctZ2VvbWV0cnkt
cHJvcGVydHktaW52YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1p
bnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzOTU5OTNhLi4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1pbnZhbGlkLmpzCisrKyAv
ZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJz
aW5nLWNvbW1vbi5qcy4KLQotZGVzY3JpcHRpb24oIlRlc3QgZ2VvbWV0cnkgcHJvcGVydHkgcGFy
c2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuIik7Ci0KLS8vIFRoZXNlIGhhdmUg
dG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGZpbHRl
ckF0UnVsZSwgc3R5bGVEZWNsYXJhdGlvbjsKLQotZnVuY3Rpb24gdGVzdEludmFsaWRHZW9tZXRy
eVByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBnZW9tZXRy
eVByb3BlcnR5ID0gImdlb21ldHJ5OiAiICsgcHJvcGVydHlWYWx1ZSArICI7IjsKLSAgICBkZWJ1
ZygiXG4iICsgZGVzY3JpcHRpb24gKyAiXG4iICsgZ2VvbWV0cnlQcm9wZXJ0eSk7Ci0KLSAgICBz
dHlsZXNoZWV0Lmluc2VydFJ1bGUoIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgZ2Vv
bWV0cnlQcm9wZXJ0eSArICIgfSIsIDApOwotCi0gICAgZmlsdGVyQXRSdWxlID0gc3R5bGVzaGVl
dC5jc3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJBdFJ1bGUudHlwZSIsICJD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IGZp
bHRlckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgi
LCAiMCIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J2dlb21ldHJ5JykiLCAibnVsbCIpOwotfQotCi1oZWFkaW5nKCJHZW9tZXRyeSB0ZXN0cy4iKTsK
LXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiTm8gcHJvcGVydHkgdmFsdWUuIiwgIiIpOwot
dGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJFbXB0eSBncmlkLiIsICJncmlkKCkiKTsKLXRl
c3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiTWlzcGVsbGVkIGdyaWQgZnVuY3Rpb24uIiwgImdy
aWlkKDEgMSkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiU2luZ2xlIG5lZ2F0aXZl
IHZhbHVlIGluIGdyaWQuIiwgImdyaWQoLTEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVy
dHkoIk5lZ2F0aXZlIHZhbHVlIGluIGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLiIsICJn
cmlkKDEgLTEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIk5lZ2F0aXZlIHZhbHVl
IGluIGdyaWQgYWxvbmcgd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4iLCAiZ3JpZCgtMSAx
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJUd28gbmVnYXRpdmUgdmFsdWVzLiIs
ICJncmlkKC0xIC0xKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJTaW5nbGUgemVy
byB2YWx1ZS4iLCAiZ3JpZCgwKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJaZXJv
IHdpdGggYSB2YWxpZCB2YWx1ZS4iLCAiZ3JpZCgwIDEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5
UHJvcGVydHkoIlplcm8gd2l0aCBhIHZhbGlkIHZhbHVlLCBpbnZlcnRlZC4iLCAiZ3JpZCgxIDAp
Iik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIkF0dGFjaGVkIHZhbHVlIGFsb25lLiIs
ICJncmlkKGF0dGFjaGVkKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJEZXRhY2hl
ZCB2YWx1ZSBhbG9uZS4iLCAiZ3JpZChkZXRhY2hlZCkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQ
cm9wZXJ0eSgiRGV0YWNoZWQgYW5kIGF0dGFjaGVkLiIsICJncmlkKGF0dGFjaGVkIGF0dGFjaGVk
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJUb28gbWFueSB2YWx1ZXMuIiwgImdy
aWQoMSAxIGF0dGFjaGVkIGRldGFjaGVkKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5
KCJNaXNwZWxsZWQgYXR0YWNoZWQuIiwgImdyaWQoMSAxIGF0dGFjZCkiKTsKLXRlc3RJbnZhbGlk
R2VvbWV0cnlQcm9wZXJ0eSgiTWlzcGVsbGVkIGRldGFjaGVkLiIsICJncmlkKDEgMSBkZXRhY2hl
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJJbnZhbGlkIGRpdmlkZXIuIiwgImdy
aWQoMSwgMSBhdHRhY2hlZCkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiSW52YWxp
ZCBkaXZpZGVyLCByZWxvYWRlZC4iLCAiZ3JpZCgxIDEsIGF0dGFjaGVkKSIpOwotdGVzdEludmFs
aWRHZW9tZXRyeVByb3BlcnR5KCJOb24gaW50ZWdlciB2YWx1ZXMuIiwgImdyaWQoMS4zIDEpIik7
Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIk5vbiBpbnRlZ2VyIHZhbHVlcy4iLCAiZ3Jp
ZCgxIDEuMykiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiVGhyZWUgaW50ZWdlcnMu
IiwgImdyaWQoMSAyIDMpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIkF0dGFjaGVk
IGluIGJldHdlZW4gdHdvIGludGVnZXJzLiIsICJncmlkKDEgYXR0YWNoZWQgMSkiKTsKLXRlc3RJ
bnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiRGV0YWNoZWQgaW4gYmV0d2VlbiB0d28gaW50ZWdlcnMu
IiwgImdyaWQoMSBkZXRhY2hlZCAxKSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWdl
b21ldHJ5LXByb3BlcnR5LXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWdlb21ldHJ5LXByb3Bl
cnR5LXZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMmUxMmFiLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12YWxpZC5qcworKysg
L2Rldi9udWxsCkBAIC0xLDc3ICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFy
c2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IGdlb21ldHJ5IHByb3BlcnR5IHBh
cnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZl
IHRvIGJlIGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0
ZXJBdFJ1bGUsIHN0eWxlRGVjbGFyYXRpb24sIGdlb21ldHJ5UHJvcGVydHlWYWx1ZSwgc3ViVmFs
dWU7Ci0KLWZ1bmN0aW9uIHRlc3RHZW9tZXRyeVByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0
eVZhbHVlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBnZW9tZXRy
eVByb3BlcnR5ID0gImdlb21ldHJ5OiAiICsgcHJvcGVydHlWYWx1ZSArICI7IgotICAgIGRlYnVn
KCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBnZW9tZXRyeVByb3BlcnR5KTsKLQotICAgIHN0
eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBnZW9t
ZXRyeVByb3BlcnR5ICsgIiB9IiwgMCk7Ci0gICAgZmlsdGVyQXRSdWxlID0gc3R5bGVzaGVldC5j
c3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJBdFJ1bGUudHlwZSIsICJDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IGZpbHRl
ckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgiLCAi
MSIpOwotICAgIHNob3VsZEJlKCJyZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnZ2VvbWV0cnknKSkiLCAiXCIiICsgZXhwZWN0ZWRWYWx1ZSArICJcIiIpOwot
Ci0gICAgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eUNTU1ZhbHVlKCdnZW9tZXRyeScpOwotICAgIHNob3VsZEhhdmVDb25zdHJ1Y3RvcigiZ2VvbWV0
cnlQcm9wZXJ0eVZhbHVlIiwgIkNTU1ZhbHVlTGlzdCIpOwotCi0gICAgc2hvdWxkQmUoImdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0cmluZygp
KTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi19Ci0KLWhlYWRpbmcoIkdl
b21ldHJ5IHByb3BlcnR5LiIpOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0cnkgd2l0
aCBmdWxsIG1lc2ggYW5kIGF0dGFjaGVkLiIsCi0gICAgImdyaWQoMSAxIGF0dGFjaGVkKSIsCi0g
ICAgIjEgMSBhdHRhY2hlZCIsCi0gICAgWyIxIiwgIjEiLCAiYXR0YWNoZWQiXSk7Ci0KLXRlc3RH
ZW9tZXRyeVByb3BlcnR5KCJHZW9tZXRyeSB3aXRoIGZ1bGwgbWVzaCBhbmQgZGV0YWNoZWQuIiwK
LSAgICAiZ3JpZCgxIDEgZGV0YWNoZWQpIiwKLSAgICAiMSAxIGRldGFjaGVkIiwKLSAgICBbIjEi
LCAiMSIsICJkZXRhY2hlZCJdKTsKLQotdGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdp
dGggZnVsbCBtZXNoIGFuZCBubyBhdHRhY2hlZCwgbm9yIGRldGFjaGVkLiIsCi0gICAgImdyaWQo
MSAxKSIsCi0gICAgIjEgMSIsCi0gICAgWyIxIiwgIjEiXSk7Ci0KLXRlc3RHZW9tZXRyeVByb3Bl
cnR5KCJHZW9tZXRyeSB3aXRoIG9ubHkgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZCgxKSIs
Ci0gICAgIjEiLAotICAgIFsiMSJdKTsKLQotdGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5
IHdpdGggb25lIG1lc2ggdmFsdWUgYW5kIGF0dGFjaGVkLiIsCi0gICAgImdyaWQoMSBhdHRhY2hl
ZCkiLAotICAgICIxIGF0dGFjaGVkIiwKLSAgICBbIjEiLCAiYXR0YWNoZWQiXSk7Ci0KLXRlc3RH
ZW9tZXRyeVByb3BlcnR5KCJHZW9tZXRyeSB3aXRoIG9uZSBtZXNoIHZhbHVlIGFuZCBkZXRhY2hl
ZC4iLAotICAgICJncmlkKDEgZGV0YWNoZWQpIiwKLSAgICAiMSBkZXRhY2hlZCIsCi0gICAgWyIx
IiwgImRldGFjaGVkIl0pOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0cnkgd2l0aCBh
dHRhY2hlZCBiZWZvcmUgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZChhdHRhY2hlZCAxKSIs
Ci0gICAgImF0dGFjaGVkIDEiLAotICAgIFsiYXR0YWNoZWQiLCAiMSJdKTsKLQotdGVzdEdlb21l
dHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdpdGggYXR0YWNoZWQgYmVmb3JlIHR3byBtZXNoIHZhbHVl
cy4iLAotICAgICJncmlkKGF0dGFjaGVkIDEgMSkiLAotICAgICJhdHRhY2hlZCAxIDEiLAotICAg
IFsiYXR0YWNoZWQiLCAiMSIsICIxIl0pOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0
cnkgd2l0aCBkZXRhY2hlZCBiZWZvcmUgb25lIG1lc2ggdmFsdWUuIiwKLSAgICAiZ3JpZChkZXRh
Y2hlZCAxKSIsCi0gICAgImRldGFjaGVkIDEiLAotICAgIFsiZGV0YWNoZWQiLCAiMSJdKTsKLQot
dGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdpdGggZGV0YWNoZWQgYmVmb3JlIHR3byBt
ZXNoIHZhbHVlcy4iLAotICAgICJncmlkKGRldGFjaGVkIDEgMSkiLAotICAgICJkZXRhY2hlZCAx
IDEiLAotICAgIFsiZGV0YWNoZWQiLCAiMSIsICIxIl0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9w
YXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9w
ZXJ0eS1pbnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNTJjOGFiLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxl
LXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJvcGVydHktaW52YWxpZC5qcworKysg
L2Rldi9udWxsCkBAIC0xLDMwICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFy
c2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IG1peCBwcm9wZXJ0eSBwYXJzaW5n
IGluIHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBi
ZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgZmlsdGVyQXRS
dWxlLCBzdHlsZURlY2xhcmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0SW52YWxpZE1peFByb3BlcnR5
KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBtaXhQcm9wZXJ0eSA9ICJt
aXg6ICIgKyBwcm9wZXJ0eVZhbHVlICsgIjsiOwotICAgIGRlYnVnKCJcbiIgKyBkZXNjcmlwdGlv
biArICJcbiIgKyBtaXhQcm9wZXJ0eSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoIkAt
d2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgbWl4UHJvcGVydHkgKyAiIH0iLCAwKTsKLQot
ICAgIGZpbHRlckF0UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91
bGRCZSgiZmlsdGVyQXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsK
LQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxk
QmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwgIjAiKTsKLSAgICBzaG91bGRCZSgic3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSIsICJudWxsIik7Ci19Ci0KLWhlYWRp
bmcoIlZhbHVlIHRlc3QuIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJObyBwcm9wZXJ0eSB2
YWx1ZS4iLCAiIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJUaHJlZSB2YWx1ZXMuIiwgInNj
cmVlbiBzb3VyY2Utb3ZlciBzY3JlZW4iKTsKLXRlc3RJbnZhbGlkTWl4UHJvcGVydHkoIlRocmVl
IHZhbHVlcy4iLCAic2NyZWVuIHNvdXJjZS1vdmVyIHNvdXJjZS1vdmVyIik7Ci10ZXN0SW52YWxp
ZE1peFByb3BlcnR5KCJUd28gYmxlbmQgbW9kZXMuIiwgInNjcmVlbiBzY3JlZW4iKTsKLXRlc3RJ
bnZhbGlkTWl4UHJvcGVydHkoIlR3byBjb21wb3NpdGUgb3BlcmF0b3JzLiIsICJzb3VyY2Utb3Zl
ciBzb3VyY2Utb3ZlciIpOwotdGVzdEludmFsaWRNaXhQcm9wZXJ0eSgiVHdvIGJsZW5kIG1vZGVz
LiIsICJzY3JlZW4gc2NyZWVuIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJDb21tYSBiZXR3
ZWVuIHZhbHVlcy4iLCAic2NyZWVuLCBzb3VyY2Utb3ZlciIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0
cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJv
cGVydHktdmFsaWQuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEyYTYzMjIuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxpZC5qcworKysgL2Rl
di9udWxsCkBAIC0xLDg1ICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFyc2lu
Zy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IG1peCBwcm9wZXJ0eSBwYXJzaW5nIGlu
IHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBiZSBn
bG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgZmlsdGVyQXRSdWxl
LCBzdHlsZURlY2xhcmF0aW9uLCBtaXhQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1ZTsKLQotZnVuY3Rp
b24gdGVzdE1peFByb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlLCBleHBlY3RlZFZh
bHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBtaXhQcm9wZXJ0eSA9ICJtaXg6ICIgKyBw
cm9wZXJ0eVZhbHVlICsgIjsiCi0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiAr
IG1peFByb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmls
dGVyIG15LWZpbHRlciB7ICIgKyBtaXhQcm9wZXJ0eSArICIgfSIsIDApOwotICAgIGZpbHRlckF0
UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91bGRCZSgiZmlsdGVy
QXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsKLQotICAgIHN0eWxl
RGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUoInN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIiwgIjEiKTsKLSAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSIsICJcIiIgKyBleHBlY3RlZFZh
bHVlICsgIlwiIik7Ci0KLSAgICBtaXhQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eUNTU1ZhbHVlKCdtaXgnKTsKLSAgICBzaG91bGRIYXZlQ29uc3RydWN0b3IoIm1p
eFByb3BlcnR5VmFsdWUiLCAiQ1NTVmFsdWVMaXN0Iik7Ci0KLSAgICBzaG91bGRCZSgibWl4UHJv
cGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0cmluZygpKTsgLy8g
c2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAotICAgIGlmIChtaXhQcm9wZXJ0
eVZhbHVlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0ZWRUZXh0cy5sZW5n
dGg7IGkrKykgewotICAgICAgICAgICAgc3ViVmFsdWUgPSBtaXhQcm9wZXJ0eVZhbHVlW2ldOwot
ICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1ZhbHVlVHlwZSIsICJDU1NWYWx1ZS5D
U1NfUFJJTUlUSVZFX1ZBTFVFIik7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVS
TChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBleHBlY3RlZFRleHRzW2ldICsgIlwiIik7Ci0g
ICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmcoIlRlc3QgYmxlbmQgbW9kZSBrZXl3b3Jkcy4i
KTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBtdWx0aXBseS4iLCAibXVsdGlwbHkiLCAibXVsdGlw
bHkiLCBbIm11bHRpcGx5Il0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNjcmVlbi4iLCAic2Ny
ZWVuIiwgInNjcmVlbiIsIFsic2NyZWVuIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IG92ZXJs
YXkuIiwgIm92ZXJsYXkiLCAib3ZlcmxheSIsIFsib3ZlcmxheSJdKTsKLXRlc3RNaXhQcm9wZXJ0
eSgiVGVzdCBkYXJrZW4uIiwgImRhcmtlbiIsICJkYXJrZW4iLCBbImRhcmtlbiJdKTsKLXRlc3RN
aXhQcm9wZXJ0eSgiVGVzdCBsaWdodGVuLiIsICJsaWdodGVuIiwgImxpZ2h0ZW4iLCBbImxpZ2h0
ZW4iXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgY29sb3ItZG9kZ2UuIiwgImNvbG9yLWRvZGdl
IiwgImNvbG9yLWRvZGdlIiwgWyJjb2xvci1kb2RnZSJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVz
dCBjb2xvci1idXJuLiIsICJjb2xvci1idXJuIiwgImNvbG9yLWJ1cm4iLCBbImNvbG9yLWJ1cm4i
XSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgaGFyZC1saWdodC4iLCAiaGFyZC1saWdodCIsICJo
YXJkLWxpZ2h0IiwgWyJoYXJkLWxpZ2h0Il0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNvZnQt
bGlnaHQuIiwgInNvZnQtbGlnaHQiLCAic29mdC1saWdodCIsIFsic29mdC1saWdodCJdKTsKLXRl
c3RNaXhQcm9wZXJ0eSgiVGVzdCBkaWZmZXJlbmNlLiIsICJkaWZmZXJlbmNlIiwgImRpZmZlcmVu
Y2UiLCBbImRpZmZlcmVuY2UiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgZXhjbHVzaW9uLiIs
ICJleGNsdXNpb24iLCAiZXhjbHVzaW9uIiwgWyJleGNsdXNpb24iXSk7Ci10ZXN0TWl4UHJvcGVy
dHkoIlRlc3QgaHVlLiIsICJodWUiLCAiaHVlIiwgWyJodWUiXSk7Ci10ZXN0TWl4UHJvcGVydHko
IlRlc3Qgc2F0dXJhdGlvbi4iLCAic2F0dXJhdGlvbiIsICJzYXR1cmF0aW9uIiwgWyJzYXR1cmF0
aW9uIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGNvbG9yLiIsICJjb2xvciIsICJjb2xvciIs
IFsiY29sb3IiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgbHVtaW5vc2l0eS4iLCAibHVtaW5v
c2l0eSIsICJsdW1pbm9zaXR5IiwgWyJsdW1pbm9zaXR5Il0pOwotCi1oZWFkaW5nKCJUZXN0IGNv
bXBvc2l0ZSBrZXl3b3Jkcy4iKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBjbGVhci4iLCAiY2xl
YXIiLCAiY2xlYXIiLCBbImNsZWFyIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGNvcHkuIiwg
ImNvcHkiLCAiY29weSIsIFsiY29weSJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBzb3VyY2Ut
b3Zlci4iLCAic291cmNlLW92ZXIiLCAic291cmNlLW92ZXIiLCBbInNvdXJjZS1vdmVyIl0pOwot
dGVzdE1peFByb3BlcnR5KCJUZXN0IHNvdXJjZS1pbi4iLCAic291cmNlLWluIiwgInNvdXJjZS1p
biIsIFsic291cmNlLWluIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNvdXJjZS1vdXQuIiwg
InNvdXJjZS1vdXQiLCAic291cmNlLW91dCIsIFsic291cmNlLW91dCJdKTsKLXRlc3RNaXhQcm9w
ZXJ0eSgiVGVzdCBzb3VyY2UtYXRvcC4iLCAic291cmNlLWF0b3AiLCAic291cmNlLWF0b3AiLCBb
InNvdXJjZS1hdG9wIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGRlc3RpbmF0aW9uLW92ZXIu
IiwgImRlc3RpbmF0aW9uLW92ZXIiLCAiZGVzdGluYXRpb24tb3ZlciIsIFsiZGVzdGluYXRpb24t
b3ZlciJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBkZXN0aW5hdGlvbi1pbi4iLCAiZGVzdGlu
YXRpb24taW4iLCAiZGVzdGluYXRpb24taW4iLCBbImRlc3RpbmF0aW9uLWluIl0pOwotdGVzdE1p
eFByb3BlcnR5KCJUZXN0IGRlc3RpbmF0aW9uLW91dC4iLCAiZGVzdGluYXRpb24tb3V0IiwgImRl
c3RpbmF0aW9uLW91dCIsIFsiZGVzdGluYXRpb24tb3V0Il0pOwotdGVzdE1peFByb3BlcnR5KCJU
ZXN0IGRlc3RpbmF0aW9uLWF0b3AuIiwgImRlc3RpbmF0aW9uLWF0b3AiLCAiZGVzdGluYXRpb24t
YXRvcCIsIFsiZGVzdGluYXRpb24tYXRvcCJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCB4b3Iu
IiwgInhvciIsICJ4b3IiLCBbInhvciJdKTsKLQotdGVzdE1peFByb3BlcnR5KCJCbGVuZCBtb2Rl
IGFuZCBjb21wb3NpdGUgdG9nZXRoZXIuIiwKLSAgICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAg
ICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAgICBbInNjcmVlbiIsICJzb3VyY2Utb3ZlciJdKTsK
LQotdGVzdE1peFByb3BlcnR5KCJDb21wb3NpdGUgYW5kIGJsZW5kIG1vZGUgdG9nZXRoZXIuIiwK
LSAgICAic291cmNlLW92ZXIgc2NyZWVuIiwKLSAgICAic291cmNlLW92ZXIgc2NyZWVuIiwKLSAg
ICBbInNvdXJjZS1vdmVyIiwgInNjcmVlbiJdKTsKLQotaGVhZGluZygiQ2FwaXRhbGl6YXRpb24g
dGVzdHMuIik7Ci10ZXN0TWl4UHJvcGVydHkoIkFsbCB0b2tlbnMgY2FwaXRhbGl6ZWQuIiwKLSAg
ICAiU0NSRUVOIFNPVVJDRS1PVkVSIiwKLSAgICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAgICBb
InNjcmVlbiIsICJzb3VyY2Utb3ZlciJdKTsKLQotaGVhZGluZygiV2hpdGVzcGFjZSB0ZXN0cy4i
KTsKLXRlc3RNaXhQcm9wZXJ0eSgiRXh0cmEgbGVhZGluZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcg
d2hpdGVzcGFjZS4gIiwKLSAgICAiICAgc2NyZWVuICAgc291cmNlLW92ZXIgICAiLAotICAgICJz
Y3JlZW4gc291cmNlLW92ZXIiLAotICAgIFsic2NyZWVuIiwgInNvdXJjZS1vdmVyIl0pOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcyBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3Jp
cHQtdGVzdHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQuanMKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZhZGRhMTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJz
aW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qcworKysgL2Rldi9udWxsCkBAIC0xLDEy
NyArMCwwIEBACi0vLyBSZXF1aXJlcyBjdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzLgot
Ci1kZXNjcmlwdGlvbigiVGVzdCBwYXJhbWV0ZXJzIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAt
d2Via2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2JhbCBm
b3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0ZXJBdFJ1bGUsIHN0eWxl
RGVjbGFyYXRpb247Ci0KLWZ1bmN0aW9uIHRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KGRl
c2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZhciBwYXJhbWV0ZXJzUHJvcGVydHkg
PSAicGFyYW1ldGVyczogIiArIHByb3BlcnR5VmFsdWUgKyAiOyI7Ci0gICAgZGVidWcoIlxuIiAr
IGRlc2NyaXB0aW9uICsgIlxuIiArIHBhcmFtZXRlcnNQcm9wZXJ0eSk7Ci0KLSAgICBzdHlsZXNo
ZWV0Lmluc2VydFJ1bGUoIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgcGFyYW1ldGVy
c1Byb3BlcnR5ICsgIiB9IiwgMCk7Ci0KLSAgICBmaWx0ZXJBdFJ1bGUgPSBzdHlsZXNoZWV0LmNz
c1J1bGVzLml0ZW0oMCk7Ci0gICAgc2hvdWxkQmUoImZpbHRlckF0UnVsZS50eXBlIiwgIkNTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFIik7Ci0KLSAgICBzdHlsZURlY2xhcmF0aW9uID0gZmlsdGVy
QXRSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCIsICIw
Iik7Ci0gICAgc2hvdWxkQmUoInN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFy
YW1ldGVycycpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygiTnVtYmVyIHBhcmFtZXRlciB0ZXN0
cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJUb28gbWFueSBwYXJhbWV0ZXIg
dmFsdWVzLiIsICJuIDEgMiAzIDQgNSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHko
IkludmFsaWQgcGFyYW1ldGVyIHR5cGUuIiwgIm4gMS4wIDIuMCAndGV4dCciKTsKLQotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIHBhcmFtZXRlciBkZWZpbml0aW9uLiIsICIiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBwYXJhbWV0ZXIgZGVmaW5pdGlvbiB3
aXRoIGNvbW1hLiIsICIsIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFy
YW1ldGVyIGRlZmluaXRpb24gYmVmb3JlIHZhbGlkIHBhcmFtZXRlciBkZWZpbnRpb24uIiwgIiwg
biAxIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFyYW1ldGVyIHZhbHVl
LiIsICJuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gcGFyYW1ldGVyIHZh
bHVlIHdpdGggbXVsdGlwbGUgcGFyYW1ldGVycy4iLCAibjEsIG4yLCBuMyIpOwotCi1oZWFkaW5n
KCJDb2xvciBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0
eSgiTm8gcmdiIGNvbG9yIHZhbHVlcy4iLCAiYyByZ2IoLCwpIik7Ci10ZXN0SW52YWxpZFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTm8gaHNsIGNvbG9yIHZhbHVlcy4iLCAiYyBoc2woLCwpIik7Ci10ZXN0
SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSGV4IHdpdGggOCBjaGFyYWN0ZXJzLiIsICJjICNG
RjAwMDBGRiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkhleCB3aXRoIDIgY2hh
cmFjdGVyLiIsICJjICNGRiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlJnYmEg
d2l0aCAzIHZhbHVlcyBhbmQgMiBjb21tYXMuIiwgImMgcmdiYSgyNTUsIDAsIDApIik7Ci0KLWhl
YWRpbmcoIlRyYW5zZm9ybSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRl
cnNQcm9wZXJ0eSgiT25lIGludmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsICJ0IGludmFsaWQt
cm90YXRlKDBkZWcpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsdGlwbGUg
aW52YWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb25zLiIsICJ0IGludmFsaWQtcm90YXRlKDBkZWcpIGlu
dmFsaWQtcGVyc3BlY3RpdmUoMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJ
bnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIHZhbGlkIG9uZXMuIiwgInQgcm90YXRl
KDBkZWcpIGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIik7Ci10ZXN0SW52YWxp
ZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uIGJldHdlZW4gaW52
YWxpZCBvbmVzLiIsICJ0IGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIGludmFs
aWQtdHJhbnNsYXRlKDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQg
dHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGggdHJhaWxpbmcgY29tbWEuIiwgInQgcGVyc3BlY3RpdmUo
MCksIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSW52YWxpZCB0cmFuc2Zvcm0g
d2l0aCB0cmFpbGluZyBjb21tYS4iLCAidCBpbnZhbGlkLXJvdGF0ZSgwZGVnKSwiKTsKLXRlc3RJ
bnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJWYWxpZCB0cmFuc2Zvcm0gd2l0aCBpbnZhbGlkIGNo
YXJhY3RlcnMiLCAidCByb3RhdGUoMGRlZykgKi4tLCIpOwotCi1oZWFkaW5nKCJBcnJheSBwYXJh
bWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW1wdHkgYXJy
YXkuIiwgImEgYXJyYXkoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk9uZSBj
b21tYSBpbiBhcnJheS4iLCAiYSBhcnJheSgsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJv
cGVydHkoIk11bHRpcGxlIGNvbW1hcyBpbiBhcnJheS4iLCAiYSBhcnJheSgsLCwpIik7Ci10ZXN0
SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsdGlwbGUgY29tbWFzIHdpdGggYSB2YWx1ZSBp
biBhcnJheS4iLCAiYSBhcnJheSgsLDEsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVy
dHkoIk9uZSBjb21tYSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFycmF5LiIsICJh
IGFycmF5KCwtNCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJPbmUgY29tbWEg
Zm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheS4iLCAiYSBhcnJheSgsNCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJPbmUgbmVnYXRpdmUgdmFsdWUgZm9sbG93ZWQgYnkgYSBj
b21tYSBpbiBhcnJheS4iLCAiYSBhcnJheSgtNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQ
cm9wZXJ0eSgiT25lIHZhbHVlIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJy
YXkoNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdmFsdWVzIGZv
bGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoMSwgMiwgMywgNCwpIik7Ci10
ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEg
bGV0dGVyIGluIGFycmF5LiIsICJhIGFycmF5KDEsIDIsIDMsIDQsIHgpIik7Ci10ZXN0SW52YWxp
ZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVHdvIGNvbW1hcyBhcyBzZXBhcmF0b3IgYmV0d2VlbiB2YWx1
ZXMgaW4gYXJyYXkuIiwgImEgYXJyYXkoMSwgMiwgLCA0KSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoLDEsIDIsIDMs
IDQpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU2VtaWNvbG9uIHNlcGFyYXRl
ZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImEgYXJyYXkoMTsgMjsgMzsgNCkiKTsKLXRlc3RJbnZhbGlk
UGFyYW1ldGVyc1Byb3BlcnR5KCJTcGFjZSBzZXBhcmF0ZWQgdmFsdWVzIGluIGFycmF5LiIsICJh
IGFycmF5KDEgMiAzIDQpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU3BhY2Ug
c2VwYXJhdGVkIHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkuIiwgImEgYXJy
YXkoMSAyIDMgNCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU3BhY2Ugc2Vw
YXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXkoLCAx
IDIgMyA0KSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBpbiBhcnJheS4i
LCAiYSBhcnJheShOYU4pIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTmFOIGJl
dHdlZW4gdmFsaWQgdmFsdWVzIGluIGFycmF5LiIsICJhIGFycmF5KDEsIDIsIE5hTiwgMykiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJbnZhbGlkIHZhbHVlICdub25lJyBpbiBh
cnJheS4iLCAiYSBhcnJheShub25lKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHko
IkludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFycmF5LiIsICJhIGFycmF5KDFweCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJbnZhbGlkIHZhbHVlIHVuaXQgJ2RlZycgaW4g
YXJyYXkuIiwgImEgYXJyYXkoMWRlZykiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5
KCJJbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheSBhZnRlciB2YWxpZCB2YWx1ZXMuIiwg
ImEgYXJyYXkoMSwgMiwgMywgNHB4KSIpOwotCi1oZWFkaW5nKCJNYXQyIHBhcmFtZXRlciB0ZXN0
cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQyLiIsICJhIG1h
dDIoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3IGFyZ3VtZW50
cy4iLCAiYSBtYXQyKDAsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgi
Tm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0MigsLCwpIik7Ci10ZXN0SW52YWxpZFBh
cmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4iLCAiYSBtYXQyKDAsIDAsLCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0MiBmdW5jdGlvbi4iLCAi
YSBtYXQyKDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVG9v
IG1hbnkgYXJndW1lbnRzLiIsICJhIG1hdDIoMCwgMCwgMCwgMCwgMSkiKTsKLXRlc3RJbnZhbGlk
UGFyYW1ldGVyc1Byb3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0MigxIDAgMCAxKSIpOwotdGVz
dEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlNvbWUgY29tbWFzLiIsICJhIG1hdDIoMSwgMCwg
MCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWFzLiIs
ICJhIG1hdDIoLCAwLCAwLCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5v
IGxlbmd0aCB1bml0cy4iLCAiYSBtYXQyKDFweCwgMHB4LCAwcHgsIDFweCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0MigxZGVnLCAw
ZGVnLCAwZGVnLCAxZGVnKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBp
biBtYXQyLiIsICJhIG1hdDIoMSwgMCwgMCwgTmFOKSIpOwotCi1oZWFkaW5nKCJNYXQzIHBhcmFt
ZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQz
LiIsICJhIG1hdDMoKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3
IGFyZ3VtZW50cy4iLCAiYSBtYXQzKDAsIDAsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRl
cnNQcm9wZXJ0eSgiTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0MygsLCwsLCwsLCws
LCwsLCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4i
LCAiYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsLCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVy
c1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0MyBmdW5jdGlvbi4iLCAiYSBtYXQzKDEsIDAsIDAsIDAs
IDEsIDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiVG9vIG1h
bnkgYXJndW1lbnRzLiIsICJhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSwgMCkiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0MygxIDAg
MCAwIDEgMCAwIDAgMSkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJTb21lIGNv
bW1hcy4iLCAiYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAgMCAwIDEpIik7Ci10ZXN0SW52YWxpZFBh
cmFtZXRlcnNQcm9wZXJ0eSgiTGVhZGluZyBjb21tYXMuIiwgImEgbWF0MygsIDAsIDAsIDAsIDEs
IDAsIDAsIDAsIDEpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gbGVuZ3Ro
IHVuaXRzLiIsICJhIG1hdDMoMXB4LCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDFweCkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0Mygx
ZGVnLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAxZGVnKSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIk5hTiBpbiBtYXQzLiIsICJhIG1hdDIoTmFOLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAxKSIpOwotCi1oZWFkaW5nKCJNYXQ0IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJFbXB0eSBtYXQ0LiIsICJhIG1hdDQoKSIpOwotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyB2aWV3IGFyZ3VtZW50cy4iLCAiYSBtYXQ0KDEs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0
eSgiTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImEgbWF0NCgsLCwsLCwsLCwsLCwsLCwpIik7
Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW5kaW5nIGNvbW1hcy4iLCAiYSBtYXQ0
KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsLCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJZGVudHMgaW4gbWF0NCBmdW5jdGlvbi4iLCAiYSBtYXQ0
KDEsIDAsIDAsIDAsIDEsIDAsIDAsIGEsIGIpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9w
ZXJ0eSgiVG9vIG1hbnkgYXJndW1lbnRzLiIsICJhIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwg
MCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1By
b3BlcnR5KCJObyBjb21tYXMuIiwgImEgbWF0NCgxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAg
MCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlNvbWUgY29tbWFzLiIsICJh
IG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCAwIDAgMCAxKSIpOwotdGVz
dEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkxlYWRpbmcgY29tbWFzLiIsICJhIG1hdDQoLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIpOwotdGVzdEludmFs
aWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIGxlbmd0aCB1bml0cy4iLCAiYSBtYXQ0KDFweCwgMCwg
MCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDAsIDFweCkiKTsKLXRlc3RJ
bnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBkZWdyZWUgdW5pdHMuIiwgImEgbWF0NCgxZGVn
LCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAxZGVnKSIp
OwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBpbiBtYXQ0LiIsICJhIG1hdDQo
TmFOLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSIpOwotCi1o
ZWFkaW5nKCJNaXhpbmcgcGFyYW1ldGVyIHR5cGVzLiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJz
UHJvcGVydHkoIk51bWJlciBwYXJhbWV0ZXIgd2l0aCBoZXggY29sb3IuIiwgIm4xIDEgMiAjRkYw
MDAwIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTnVtYmVyIHBhcmFtZXRlciB3
aXRoIGNvbG9yIGtleXdvcmQuIiwgIm4xIDEgMiByZWQiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVy
c1Byb3BlcnR5KCJOdW1iZXIgcGFyYW1ldGVyIHdpdGggcmdiIGNvbG9yLiIsICJuMSAxIDIgcmdi
KDI1NSwgMCwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJDb2xvciB3aXRo
IG51bWJlciBwYXJhbWV0ZXIuIiwgImEgcmdiKDI1NSwgMCwgMCkgMSIpOwotdGVzdEludmFsaWRQ
YXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGluIGFycmF5LiIsICJhIGFycmF5KDAsIHJnYigyNTUs
IDAsIDApKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGFuZCBhcnJh
eS4iLCAiYSBhcnJheSgwLCAwKSByZ2IoMjU1LCAwLCAwKSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIkNvbG9yIHdpdGggdHJhbnNmb3JtIHZhbHVlcy4iLCAiYSByb3RhdGUoNDVk
ZWcpIHJnYigyNTUsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiQ29s
b3Igd2l0aCB0cmFuc2Zvcm0gdmFsdWVzLiIsICJhIHJnYigyNTUsIDAsIDApIHJvdGF0ZSg0NWRl
ZykiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJDb2xvciBhZnRlciBhcnJheSB2
YWx1ZXMuIiwgImEgYXJyYXkoMCkgcmdiKDI1NSwgMCwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1l
dGVyc1Byb3BlcnR5KCJDb2xvciB3aXRoIG1hdDIuIiwgImEgcmdiKDI1NSwgMCwgMCkgbWF0Migw
LCAwLCAwLCAwKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIm1hdDIgd2l0aCBt
YXQzLiIsICJhIG1hdDIoMSwgMCwgMCwgMSkgbWF0MygwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
KSIpOwotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgt
YXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctcGFyYW1ldGVycy1wcm9wZXJ0eS12
YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmpzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMjk0MGY2Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVz
dHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmpzCisrKyAvZGV2L251bGwKQEAg
LTEsMTczICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24u
anMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IHBhcmFtZXRlcnMgcHJvcGVydHkgcGFyc2luZyBpbiB0
aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xv
YmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGZpbHRlckF0UnVsZSwg
c3R5bGVEZWNsYXJhdGlvbiwgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUsIHN1YlZhbHVlOwotCi1m
dW5jdGlvbiB0ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVl
LCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBwYXJhbWV0ZXJzUHJv
cGVydHkgPSAicGFyYW1ldGVyczogIiArIHByb3BlcnR5VmFsdWUgKyAiOyIKLSAgICBkZWJ1Zygi
XG4iICsgZGVzY3JpcHRpb24gKyAiXG4iICsgcGFyYW1ldGVyc1Byb3BlcnR5KTsKLQotICAgIHN0
eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBwYXJh
bWV0ZXJzUHJvcGVydHkgKyAiIH0iLCAwKTsKLSAgICBmaWx0ZXJBdFJ1bGUgPSBzdHlsZXNoZWV0
LmNzc1J1bGVzLml0ZW0oMCk7Ci0gICAgc2hvdWxkQmUoImZpbHRlckF0UnVsZS50eXBlIiwgIkNT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFIik7Ci0KLSAgICBzdHlsZURlY2xhcmF0aW9uID0gZmls
dGVyQXRSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCIs
ICIxIik7Ci0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIiwgIlwiIiArIGV4cGVjdGVkVmFsdWUgKyAiXCIi
KTsKLQotICAgIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCdwYXJhbWV0ZXJzJyk7Ci0gICAgc2hvdWxkSGF2ZUNvbnN0cnVjdG9y
KCJwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIHNob3Vs
ZEJlKCJwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0
aC50b1N0cmluZygpKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSkgewotICAgICAgICBmb3IgKHZhciBpID0g
MDsgaSA8IGV4cGVjdGVkVGV4dHMubGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICAgIHN1YlZhbHVl
ID0gcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWVbaV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3Vi
VmFsdWUuY3NzVmFsdWVUeXBlIiwgIkNTU1ZhbHVlLkNTU19WQUxVRV9MSVNUIik7Ci0gICAgICAg
ICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBl
eHBlY3RlZFRleHRzW2ldICsgIlwiIik7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmco
Ik51bWJlciBwYXJhbWV0ZXIgdGVzdHMuIikKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkludGVn
ZXIgcGFyYW1ldGVycy4iLAotICAgICJuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3
IiwKLSAgICAibjEgMSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNyIsCi0gICAgWyJuMSAx
IiwibjIgMiAzIiwgIm4zIDMgNCA1IiwgIm40IDQgNSA2IDciXSk7Ci10ZXN0UGFyYW1ldGVyc1By
b3BlcnR5KCJGbG9hdCBwYXJhbWV0ZXJzLiIsCi0gICAgIm4xIDEuMSwgbjIgMi4yIDMuMywgbjMg
My4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIsCi0gICAgIm4xIDEuMSwgbjIgMi4yIDMu
MywgbjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCIsCi0gICAgWyJuMSAxLjEiLCAi
bjIgMi4yIDMuMyIsICJuMyAzLjEgNC4xIDUuMSIsICJuNCA0LjEgNS4yIDYuMyA3LjQiXSk7Ci10
ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJQYXJhbWV0ZXIgbmFtZSBzYW1lIGFzIENTUyBrZXl3b3Jk
LiIsCi0gICAgImJhY2tncm91bmQgMCAxIDAgMSIsCi0gICAgImJhY2tncm91bmQgMCAxIDAgMSIs
Ci0gICAgWyJiYWNrZ3JvdW5kIDAgMSAwIDEiXSk7Ci0KLWhlYWRpbmcoIlRyYW5zZm9ybSBwYXJh
bWV0ZXIgdGVzdHMuIikKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIlRyYW5zZm9ybSBwYXJhbWV0
ZXIgd2l0aCBvbmUgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsCi0gICAgInQgcm90YXRlKDBkZWcpIiwK
LSAgICAidCByb3RhdGUoMGRlZykiLAotICAgIFsidCByb3RhdGUoMGRlZykiXSk7Ci10ZXN0UGFy
YW1ldGVyc1Byb3BlcnR5KCJUcmFuc2Zvcm0gcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgdHJhbnNm
b3JtIGZ1bmN0aW9ucy4iLAotICAgICJ0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2Fs
ZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIiwKLSAgICAidCByb3RhdGUoMGRlZykgcGVyc3Bl
Y3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSIsCi0gICAgWyJ0IHJvdGF0
ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpIl0p
OwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsaXRwbGUgdHJhbnNmb3JtIHBhcmFtZXRlcnMu
IiwKLSAgICAidDEgcm90YXRlKDBkZWcpLCB0MiByb3RhdGUoMGRlZykiLAotICAgICJ0MSByb3Rh
dGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVnKSIsCi0gICAgWyJ0MSByb3RhdGUoMGRlZykiLCAidDIg
cm90YXRlKDBkZWcpIl0pOwotCi1oZWFkaW5nKCJBcnJheSBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10
ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJheScu
IiwKLSAgICAiYXJyYXkgYXJyYXkoMSkiLAotICAgICJhcnJheSBhcnJheSgxKSIsCi0gICAgWyJh
cnJheSBhcnJheSgxKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkFycmF5IHBhcmFtZXRl
ciB3aXRoIG9uZSBwb3NpdGl2ZSBpbnRlZ2VyLiIsCi0gICAgImEgYXJyYXkoMSkiLAotICAgICJh
IGFycmF5KDEpIiwKLSAgICBbImEgYXJyYXkoMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5
KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBvbmUgbmVnYXRpdmUgZmxvYXQuIiwKLSAgICAiYSBhcnJh
eSgtMS4wMSkiLAotICAgICJhIGFycmF5KC0xLjAxKSIsCi0gICAgWyJhIGFycmF5KC0xLjAxKSJd
KTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxl
IHBvc2l0aXZlIGludGVnZXJzLiIsCi0gICAgImEgYXJyYXkoMSwgMiwgMywgNCwgNSkiLAotICAg
ICJhIGFycmF5KDEsIDIsIDMsIDQsIDUpIiwKLSAgICBbImEgYXJyYXkoMSwgMiwgMywgNCwgNSki
XSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBs
ZSBzaWduZWQgZmxvYXRzLiIsCi0gICAgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIs
Ci0gICAgImEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSIsCi0gICAgWyJhIGFycmF5KDEs
IC0yLjIsIDMuMTQsIDAuNCwgNSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNdWx0aXBs
ZSBhcnJheSBwYXJhbWV0ZXJzLiIsCi0gICAgImExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwg
NSksIGEyIGFycmF5KDEsIDIsIDMpIiwKLSAgICAiYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40
LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykiLAotICAgIFsiYTEgYXJyYXkoMSwgLTIuMiwgMy4xNCwg
MC40LCA1KSIsICJhMiBhcnJheSgxLCAyLCAzKSJdKTsKLQotaGVhZGluZygiQ29sb3IgcGFyYW1l
dGVyIHRlc3RzLiIpOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiSGV4IGNvbG9yLiIsCi0gICAg
ImMgIzAwRkYwMCIsCi0gICAgImMgcmdiKDAsIDI1NSwgMCkiLAotICAgIFsiYyByZ2IoMCwgMjU1
LCAwKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGtleXdvcmQuIiwKLSAgICAi
YyBncmVlbiIsCi0gICAgImMgcmdiKDAsIDEyOCwgMCkiLAotICAgIFsiYyByZ2IoMCwgMTI4LCAw
KSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIHJnYiBmdW5jdGlvbi4iLAotICAg
ICJjIHJnYigwLCAxMjgsIDApIiwKLSAgICAiYyByZ2IoMCwgMTI4LCAwKSIsCi0gICAgWyJjIHJn
YigwLCAxMjgsIDApIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiQ29sb3IgaHNsIGZ1bmN0
aW9uLiIsCi0gICAgImMgaHNsKDEyMCwgMTAwJSwgNTAlKSIsCi0gICAgImMgcmdiKDAsIDI1NSwg
MCkiLAotICAgIFsiYyByZ2IoMCwgMjU1LCAwKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHko
IkNvbG9yIHJnYmEgZnVuY3Rpb24uIiwKLSAgICAiYyByZ2JhKDAsIDI1NSwgMCwgMC4yKSIsCi0g
ICAgImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiLAotICAgIFsiYyByZ2JhKDAsIDI1NSwgMCwgMC4y
KSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIGhzbGEgZnVuY3Rpb24uIiwKLSAg
ICAiYyBoc2xhKDEyMCwgMTAwJSwgNTAlLCAwLjIpIiwKLSAgICAiYyByZ2JhKDAsIDI1NSwgMCwg
MC4yKSIsCi0gICAgWyJjIHJnYmEoMCwgMjU1LCAwLCAwLjIpIl0pOwotCi1oZWFkaW5nKCJNYXQy
IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDIgcGFyYW1l
dGVyLiIsCi0gICAgIm0gbWF0MigxLCAwLCAwLCAxKSIsCi0gICAgIm0gbWF0MigxLCAwLCAwLCAx
KSIsCi0gICAgWyJtIG1hdDIoMSwgMCwgMCwgMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5
KCJNYXQyIHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4iLAotICAgICJtIG1hdDIoLTEs
IC0xLCAtMSwgLTEpIiwKLSAgICAibSBtYXQyKC0xLCAtMSwgLTEsIC0xKSIsCi0gICAgWyJtIG1h
dDIoLTEsIC0xLCAtMSwgLTEpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTWF0MiBwYXJh
bWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLiIsCi0gICAgIm0gbWF0Migt
MSwgMSwgMSwgLTEpIiwKLSAgICAibSBtYXQyKC0xLCAxLCAxLCAtMSkiLAotICAgIFsibSBtYXQy
KC0xLCAxLCAxLCAtMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQyIHBhcmFtZXRl
ciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuIiwKLSAgICAibSBtYXQyKDEsIC0yLjIsIDMu
MTQsIDAuNCkiLAotICAgICJtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSIsCi0gICAgWyJtIG1h
dDIoMSwgLTIuMiwgMy4xNCwgMC40KSJdKTsKLQotaGVhZGluZygiTWF0MyBwYXJhbWV0ZXIgdGVz
dHMuIik7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQzIHBhcmFtZXRlci4iLAotICAgICJt
IG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkiLAotICAgICJtIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMSkiLAotICAgIFsibSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAs
IDEpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTWF0MyBwYXJhbWV0ZXIgd2l0aCBuZWdh
dGl2ZSB2YWx1ZXMuIiwKLSAgICAibSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEpIiwKLSAgICAibSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEp
IiwKLSAgICBbIm0gbWF0MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSJdKTsK
LXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5k
IHBvc2l0aXZlIHZhbHVlcy4iLAotICAgICJtIG1hdDMoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwg
LTEsIDEpIiwKLSAgICAibSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKSIsCi0g
ICAgWyJtIG1hdDMoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIDEpIl0pOwotdGVzdFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTWF0MyBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRz
LiIsCi0gICAgIm0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwg
MSkiLAotICAgICJtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQs
IDEpIiwKLSAgICBbIm0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAu
NCwgMSkiXSk7Ci0KLWhlYWRpbmcoIk1hdDQgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTWF0NCBwYXJhbWV0ZXIuIiwKLSAgICAibSBtYXQ0KDEsIDAsIDAsIDAs
IDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpIiwKLSAgICAibSBtYXQ0KDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpIiwKLSAgICBbIm0gbWF0
NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSJdKTsKLXRl
c3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgdmFsdWVz
LiIsCi0gICAgIm0gbWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkiLAotICAgICJtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0x
LCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpIiwKLSAgICBbIm0g
bWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQ0IHBhcmFtZXRlciB3
aXRoIG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuIiwKLSAgICAibSBtYXQ0KC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSkiLAotICAgICJt
IG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEs
IC0xKSIsCi0gICAgWyJtIG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAx
LCAtMSwgLTEsIDEsIDEsIC0xKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDQgcGFy
YW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJtIG1hdDQoMSwgLTIu
MiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwg
LTIuMiwgMy4xNCwgMC40KSIsCi0gICAgIm0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0y
LjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpIiwK
LSAgICBbIm0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwg
LTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpIl0pOwotCi1oZWFkaW5nKCJDb21i
aW5lZCBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJOdW1iZXIg
cGFyYW1ldGVyLCBjb2xvciBwYXJhbWV0ZXIsIHRyYW5zZm9ybSBwYXJhbWV0ZXIsIG1hdHJpeCBw
YXJhbWV0ZXJzIGFuZCBhcnJheSBwYXJhbWV0ZXIuIiwKLSAgICAibiAxLCBjIHJnYigwLCAxMjgs
IDApLCB0IHJvdGF0ZSgwZGVnKSwgbTEgbWF0MigxLCAwLCAwLCAxKSwgbTIgbWF0MygxLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCAxKSwgbTMgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAw
LCAxLCAwLCAwLCAwLCAwLCAxKSwgYSBhcnJheSgxKSIsCi0gICAgIm4gMSwgYyByZ2IoMCwgMTI4
LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1hdDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJyYXkoMSkiLAotICAgIFsibiAxIiwgImMgcmdiKDAs
IDEyOCwgMCkiLCAidCByb3RhdGUoMGRlZykiLCAibTEgbWF0MigxLCAwLCAwLCAxKSIsICJtMiBt
YXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpIiwgIm0zIG1hdDQoMSwgMCwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSkiLCAiYSBhcnJheSgxKSJdKTsKXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXBy
b3BlcnR5LWludmFsaWQuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgt
YXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LWludmFsaWQu
anMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBkNGEyNGEuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3Njcmlw
dC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLmpzCisrKyAvZGV2L251bGwKQEAg
LTEsNTEgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cy4KLQotZGVzY3JpcHRpb24oIlRlc3Qgc3JjIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Vi
a2l0LWZpbHRlciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2JhbCBmb3Ig
dGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0ZXJBdFJ1bGUsIHN0eWxlRGVj
bGFyYXRpb247Ci0KLWZ1bmN0aW9uIHRlc3RJbnZhbGlkU3JjUHJvcGVydHkoZGVzY3JpcHRpb24s
IHByb3BlcnR5VmFsdWUpCi17Ci0gICAgdmFyIHNyY1Byb3BlcnR5ID0gInNyYzogIiArIHByb3Bl
cnR5VmFsdWUgKyAiOyI7Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiArIHNy
Y1Byb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiQC13ZWJraXQtZmlsdGVy
IG15LWZpbHRlciB7ICIgKyBzcmNQcm9wZXJ0eSArICIgfSIsIDApOwotCi0gICAgZmlsdGVyQXRS
dWxlID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJmaWx0ZXJB
dFJ1bGUudHlwZSIsICJDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwotCi0gICAgc3R5bGVE
ZWNsYXJhdGlvbiA9IGZpbHRlckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGgiLCAiMCIpOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ3NyYycpIiwgIm51bGwiKTsKLX0KLQotaGVhZGluZygiVVJMIHRlc3Rz
LiIpOwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiTm8gcHJvcGVydHkgdmFsdWUuIiwgIiIpOwot
dGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiT25seSBhIHNpbmdsZSBjb21tYS4iLCAiLCIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiT25seSB0d28gY29tbWFzLiIsICIsICwiKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIklkZW50aWZpZXIgaW5zdGVhZCBvZiBVUkwuIiwgInZlcnRleC1zaGFk
ZXIiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIklkZW50aWZpZXIgd2l0aCBmb3JtYXQgaW5z
dGVhZCBvZiBVUkwgd2l0aCBmb3JtYXQuIiwgInZlcnRleC1zaGFkZXIgZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJMb2NhbCBmdW5jdGlvbiBp
bnN0ZWFkIG9mIFVSTCBmdW5jdGlvbi4iLCAibG9jYWwoc2hhZGVyLnZzKSIpOwotCi1oZWFkaW5n
KCJGb3JtYXQgZnVuY3Rpb24gdGVzdHMuIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJJZGVu
dGlmaWVyIGluc3RlYWQgb2YgZm9ybWF0IGZ1bmN0aW9uLiIsICJ1cmwoc2hhZGVyLnZzKSB2ZXJ0
ZXgtc2hhZGVyIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJTdHJpbmcgaW5zdGVhZCBvZiBm
b3JtYXQgZnVuY3Rpb24uIiwgInVybChzaGFkZXIudnMpICd4LXNoYWRlci94LXZlcnRleCciKTsK
LXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIkZvcm1hdCBmdW5jdGlvbiBtaXNzcGVsbGVkLiIsICJ1
cmwoc2hhZGVyLnZzKSBmcm10KCd4LXNoYWRlci94LXZlcnRleCcpIik7Ci10ZXN0SW52YWxpZFNy
Y1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gZW1wdHkuIiwgInVybChzaGFkZXIudnMpIGZvcm1h
dCgpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gd2l0aCBzaW5n
bGUgaWRlbnRpZmVyIGFyZ3VtZW50LiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQodmVydGV4LXNo
YWRlcikiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIkZvcm1hdCBmdW5jdGlvbiB3aXRoIHNp
bmdsZSBudW1iZXIgYXJndW1lbnQuIiwgInVybChzaGFkZXIudnMpIGZvcm1hdCgwKSIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiRm9ybWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUgc3BhY2Ut
c2VwYXJhdGVkIGlkZW50aWZlciBhcmd1bWVudHMuIiwgInVybChzaGFkZXIudnMpIGZvcm1hdCh2
ZXJ0ZXgtc2hhZGVyIGZyYWdtZW50LXNoYWRlcikiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHko
IkZvcm1hdCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIGNvbW1hLXNlcGFyYXRlZCBpZGVudGlmZXIg
YXJndW1lbnRzLiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQodmVydGV4LXNoYWRlcixmcmFnbWVu
dC1zaGFkZXIpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gd2l0
aCBtdWx0aXBsZSBzcGFjZS1zZXBhcmF0ZWQgc3RyaW5nIGFyZ3VtZW50cy4iLCAidXJsKHNoYWRl
ci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcgJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIp
OwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiRm9ybWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUg
Y29tbWEtc2VwYXJhdGVkIHN0cmluZyBhcmd1bWVudHMuIiwgInVybChzaGFkZXIudnMpIGZvcm1h
dCgneC1zaGFkZXIveC12ZXJ0ZXgnLCd4LXNoYWRlci94LWZyYWdtZW50JykiKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIk11bHRpcGxlIHZhbGlkIGZvcm1hdCBmdW5jdGlvbnMuIiwgInVybChz
aGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSBmb3JtYXQoJ3gtc2hhZGVyL3gt
ZnJhZ21lbnQnKSIpOwotCi1oZWFkaW5nKCJQdW5jdHVhdGlvbiB0ZXN0cy4iKTsKLXRlc3RJbnZh
bGlkU3JjUHJvcGVydHkoIkxlYWRpbmcgY29tbWEgYmVmb3JlIGZpcnN0IFVSTC4iLCAiLCB1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiKTsKLXRlc3RJbnZhbGlkU3Jj
UHJvcGVydHkoIkNvbW1hIGJldHdlZW4gVVJMIGFuZCBmb3JtYXQuIiwgInVybChzaGFkZXIudnMp
LCBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHko
IlRyYWlsaW5nIGNvbW1hIGFmdGVyIGZvcm1hdC4iLCAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4
LXNoYWRlci94LXZlcnRleCcpLCIpOwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiVHdvIGNvbW1h
cyBiZXR3ZWVuIFVSTHMuIiwgInVybChzaGFkZXIudnMpLCx1cmwoc2hhZGVyLmZzKSIpOwotdGVz
dEludmFsaWRTcmNQcm9wZXJ0eSgiVHdvIGNvbW1hcyBiZXR3ZWVuIFVSTHMgd2l0aCBmb3JtYXQu
IiwgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwsdXJsKHNoYWRl
ci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiKTsKLXRlc3RJbnZhbGlkU3JjUHJv
cGVydHkoIk5vIGNvbW1hIGJldHdlZW4gVVJMcy4iLCAidXJsKHNoYWRlci52cykgdXJsKHNoYWRl
ci5mcykiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIk5vIGNvbW1hIGJldHdlZW4gVVJMcyB3
aXRoIGZvcm1hdC4iLCAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcp
IHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgv
c2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJz
aW5nLXNyYy1wcm9wZXJ0eS12YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MmU4MDZmYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdp
dGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LXZhbGlk
LmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTExICswLDAgQEAKLS8vIFJlcXVpcmVzIGN1c3RvbS1m
aWx0ZXItcGFyc2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IHNyYyBwcm9wZXJ0
eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2Ug
aGF2ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIg
ZmlsdGVyQXRSdWxlLCBzdHlsZURlY2xhcmF0aW9uLCBzcmNQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1
ZTsKLQotZnVuY3Rpb24gdGVzdFNyY1Byb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVl
LCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFRleHRzKQotewotICAgIHZhciBzcmNQcm9wZXJ0eSA9
ICJzcmM6ICIgKyBwcm9wZXJ0eVZhbHVlICsgIjsiCi0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0
aW9uICsgIlxuIiArIHNyY1Byb3BlcnR5KTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgi
QC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7ICIgKyBzcmNQcm9wZXJ0eSArICIgfSIsIDApOwot
ICAgIGZpbHRlckF0UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91
bGRCZSgiZmlsdGVyQXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsK
LQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxk
QmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwgIjEiKTsKLSAgICBzaG91bGRCZSgicmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpKSIsICJcIiIg
KyBleHBlY3RlZFZhbHVlICsgIlwiIik7Ci0KLSAgICBzcmNQcm9wZXJ0eVZhbHVlID0gc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eUNTU1ZhbHVlKCdzcmMnKTsKLSAgICBzaG91bGRIYXZlQ29u
c3RydWN0b3IoInNyY1Byb3BlcnR5VmFsdWUiLCAiQ1NTVmFsdWVMaXN0Iik7Ci0KLSAgICBzaG91
bGRCZSgic3JjUHJvcGVydHlWYWx1ZS5sZW5ndGgiLCBleHBlY3RlZFRleHRzLmxlbmd0aC50b1N0
cmluZygpKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAotICAgIGlm
IChzcmNQcm9wZXJ0eVZhbHVlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUZXh0cy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViVmFsdWUgPSBzcmNQcm9wZXJ0
eVZhbHVlW2ldOwotICAgICAgICAgICAgc2hvdWxkSGF2ZUNvbnN0cnVjdG9yKCJzdWJWYWx1ZSIs
ICJDU1NWYWx1ZSIpOwotICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSIsICJDU1NWYWx1ZS5DU1NfQ1VTVE9NIik7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3Zl
QmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSIsICJcIiIgKyBleHBlY3RlZFRleHRzW2ldICsgIlwi
Iik7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmcoIlVSTHMgd2l0aG91dCBmb3JtYXQg
dGVzdHMuIik7Ci10ZXN0U3JjUHJvcGVydHkoIk9uZSBVUkwgd2l0aG91dCBmb3JtYXQuIiwKLSAg
ICAidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSIsCi0gICAgWyJ1cmwoc2hh
ZGVyLnZzKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJUd28gVVJMcyB3aXRob3V0IGZvcm1hdC4i
LAotICAgICJ1cmwoc2hhZGVyLnZzKSwgdXJsKHNoYWRlci5mcykiLAotICAgICJ1cmwoc2hhZGVy
LnZzKSwgdXJsKHNoYWRlci5mcykiLAotICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwo
c2hhZGVyLmZzKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJUaHJlZSBVUkxzIHdpdGhvdXQgZm9y
bWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMp
IiwKLSAgICAidXJsKHNoYWRlci52cyksIHVybChzaGFkZXIuZnMpLCB1cmwoc2hhZGVyMykiLAot
ICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSIsCi0gICAgInVybChz
aGFkZXIzKSJdKTsKLQotaGVhZGluZygiVVJMcyB3aXRoIGZvcm1hdCB0ZXN0cy4iKTsKLXRlc3RT
cmNQcm9wZXJ0eSgiT25lIFVSTCB3aXRoIGZvcm1hdC4iLAotICAgICJ1cmwoc2hhZGVyLnZzKSBm
b3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNo
YWRlci94LXZlcnRleCcpIl0pOwotCi10ZXN0U3JjUHJvcGVydHkoIlR3byBVUkxzIHdpdGggZm9y
bWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwg
dXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiLAotICAgICJ1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZv
cm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICBbInVybChzaGFkZXIudnMpIGZvcm1h
dCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIsCi0gICAgInVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1z
aGFkZXIveC1mcmFnbWVudCcpIl0pOwotCi10ZXN0U3JjUHJvcGVydHkoIlRocmVlIFVSTHMgd2l0
aCBmb3JtYXQuIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRl
eCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNo
YWRlcjMpIGZvcm1hdCgndW5rbm93bicpIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4
LXNoYWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJh
Z21lbnQnKSwgdXJsKHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpIiwKLSAgICBbInVybChzaGFk
ZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIsCi0gICAgInVybChzaGFkZXIuZnMp
IGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICAidXJsKHNoYWRlcjMpIGZvcm1h
dCgndW5rbm93bicpIl0pOwotCi1oZWFkaW5nKCJNaXhlZCBVUkxzIHdpdGggYW5kIHdpdGhvdXQg
Zm9ybWF0IHRlc3RzLiIpOwotdGVzdFNyY1Byb3BlcnR5KCJUaHJlZSBVUkxzLiBNaWRkbGUgVVJM
IHdpdGhvdXQgZm9ybWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIv
eC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24n
KSIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJs
KHNoYWRlci5mcyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24nKSIsCi0gICAgWyJ1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVy
LmZzKSIsCi0gICAgInVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24nKSJdKTsKLQotdGVzdFNy
Y1Byb3BlcnR5KCJUaHJlZSBVUkxzLiBGaXJzdCBhbmQgbGFzdCBVUkxzIHdpdGhvdXQgZm9ybWF0
LiIsCi0gICAgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVy
L3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpIiwKLSAgICAidXJsKHNoYWRlci52cyksIHVybChz
aGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpLCB1cmwoc2hhZGVyMykiLAot
ICAgIFsidXJsKHNoYWRlci52cykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSIsCi0gICAgInVybChzaGFkZXIzKSJdKTsKLQotaGVhZGluZygiQ2Fw
aXRhbGl6YXRpb24gdGVzdHMuIik7Ci10ZXN0U3JjUHJvcGVydHkoIkFsbCB0b2tlbnMgY2FwaXRh
bGl6ZWQuIiwKLSAgICAiVVJMKFNIQURFUi5WUykgRk9STUFUKCdYLVNIQURFUi9YLVZFUlRFWCcp
IiwKLSAgICAidXJsKFNIQURFUi5WUykgZm9ybWF0KCdYLVNIQURFUi9YLVZFUlRFWCcpIiwKLSAg
ICBbInVybChTSEFERVIuVlMpIGZvcm1hdCgnWC1TSEFERVIvWC1WRVJURVgnKSJdKTsKLQotaGVh
ZGluZygiV2hpdGVzcGFjZSB0ZXN0cy4iKTsKLXRlc3RTcmNQcm9wZXJ0eSgiRXh0cmEgbGVhZGlu
ZywgbWlkZGxlLCBhbmQgdHJhaWxpbmcgd2hpdGVzcGFjZS4gIiwKLSAgICAiICAgdXJsKHNoYWRl
ci52cykgICBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykgICAsICAgdXJsKHNoYWRlci5mcykg
ICBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSAgICIsCi0gICAgInVybChzaGFkZXIudnMp
IGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNo
YWRlci94LWZyYWdtZW50JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpIiwKLSAgICAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZy
YWdtZW50JykiXSk7Ci0KLXRlc3RTcmNQcm9wZXJ0eSgiTm8gd2hpdGVzcGFjZSBhcm91bmQgY29t
bWEuIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLHVy
bChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICAidXJsKHNo
YWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3Jt
YXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIsCi0gICAgWyJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSJdKTsKLQotdGVzdFNyY1Byb3BlcnR5KCJObyB3aGl0ZXNwYWNlIGJl
dHdlZW4gVVJMIGFuZCBmb3JtYXQuIiwKLSAgICAidXJsKHNoYWRlci52cylmb3JtYXQoJ3gtc2hh
ZGVyL3gtdmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gt
dmVydGV4JykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRl
eCcpIl0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21w
b3NpdGVkL2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5kLW1v
ZGVzLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY4MjQwM2Qu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21wb3NpdGVk
L2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDExNCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlciBibGVuZCBtb2RlcyBjb21wdXRlIGNvbG9yIHZh
bHVlcyBjb3JyZWN0bHkuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMgaXMgdGhlIHJl
ZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFzc2VzIGlmIGVh
Y2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29sb3Iu
Ci0gICAgICAgIFRoZSB0ZXN0IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3IgdmFsdWVzIGlu
IHRoaXMgcmVmZXJlbmNlIGZpbGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAgIDxzdHlsZT4K
LSAgICAucGFpci1vZi1zcXVhcmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAg
IC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAg
ICAgICAgd2lkdGg6IDIwcHg7Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2lu
OiAycHg7Ci0gICAgICAgIGZsb2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAq
LwotICAgIC5ub3JtYWwtZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0gICAgLm11bHRpcGx5LWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCAxOCUsIDI1JSk7Ci0gICAgfQotICAgIC5zY3JlZW4t
ZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAxODMsIDE5Mik7
Ci0gICAgfQotICAgIC5kYXJrZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMCUsIDMwJSwgNTAlKTsKLSAgICB9Ci0gICAgLmxpZ2h0ZW4tZXhwZWN0ZWQgewotICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAu
ZGlmZmVyZW5jZS1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUs
IDc3LCAxKTsKLSAgICB9Ci0gICAgLmV4Y2x1c2lvbi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYigyNTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhw
ZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA5MSwgMTI4KTsKLSAg
ICB9Ci0gICAgLmNvbG9yLWRvZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmdiKDI1NSwgMTkwLCAyNTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAgfQotICAg
IC5oYXJkLWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAl
LCA0NCUsIDUwJSk7Ci0gICAgfQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgODksIDEyOCk7Ci0gICAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAg
ICAgICA8ZGl2IGNsYXNzPSJub3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNs
YXNzPSJub3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9
InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4cGVjdGVk
Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibXVsdGlwbHktZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9InNjcmVlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNj
cmVlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1v
Zi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJs
aWdodGVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibGlnaHRlbi1leHBl
Y3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVz
Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9ImRpZmZlcmVuY2UtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2Pgot
ICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4
Y2x1c2lvbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1l
eHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVh
cmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9Im92ZXJsYXktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAg
IDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9y
LWRvZGdlLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iY29sb3ItZG9kZ2Ut
ZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1
YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWJ1cm4tZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgICAgICA8ZGl2IGNsYXNzPSJjb2xvci1idXJuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rp
dj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNz
PSJoYXJkLWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGFyZC1s
aWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1v
Zi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNvZnQtbGlnaHQtZXhwZWN0ZWQiPjwvZGl2PgotICAg
IDwvZGl2PgotICAgIDwhLS0KLSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGJsZW5kIG1vZGVzIHRv
IHRoaXMgcGFnZSwgYmUgY2FyZWZ1bCBub3QgdG8gZXhjZWVkIDYwMHB4IGluIAotICAgICAgICBo
ZWlnaHQsIHNpbmNlIER1bXBSZW5kZXJUcmVlIGNvbXBhcmVzIDgwMHg2MDAgc25hcHNob3RzIG9m
IHRoaXMgcGFnZS4KLSAgICAtLT4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5k
LW1vZGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2NvbXBvc2l0ZWQv
Y3VzdG9tLWZpbHRlci1ibGVuZC1tb2Rlcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBmOWNmN2NjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSwzMjkgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotICAg
IDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgYmxlbmQgbW9kZXMgY29tcHV0ZSBjb2xv
ciB2YWx1ZXMgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBUaGlzIHRlc3QgcGFzc2VzIGlm
IGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29s
b3IuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRD
U1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAg
ICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVhcmVzIHsK
LSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYg
ewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7Ci0gICAg
ICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZsb2F0OiBs
ZWZ0OwotICAgIH0KLSAgICAuZGVzdGluYXRpb24gewotICAgICAgICAvKiBEZXN0aW5hdGlvbiBj
b2xvciAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMzAlLCA1MCUpOwot
ICAgICAgICAvKiBGb3JjZSBhIEdQVSBjb21wb3NpdGVkIGxheWVyLiAqLwotICAgICAgICAtd2Vi
a2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7Ci0gICAgfQotICAgIC8qIEJsZW5k
IG1vZGVzICovCi0gICAgLm5vcm1hbCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
bm9uZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJj
ZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC8qCi0gICAg
ICAgIFRoZSBlcXVhdGlvbnMgYmVsb3cgdXNlIHRoZSBzeW1ib2xzIGFuZCBlcXVhdGlvbnMgZGVm
aW5lZCBpbiB0aGUgQ1NTIEJsZW5kaW5nIGFuZCBDb21wb3NpdGluZyBzcGVjLCB3aGVyZToKLSAg
ICAgICAgICAgIENvID0gb3V0cHV0IGNvbG9yCi0gICAgICAgICAgICBDcyA9IHNvdXJjZSBjb2xv
ciAoYWthICJtaXggY29sb3IiLCAiY3NzX01peENvbG9yIikKLSAgICAgICAgICAgIENiID0gZGVz
dGluYXRpb24gY29sb3IgKGFrYSAiYmFja2Ryb3AgY29sb3IiLCAib3JpZ2luYWwgRE9NIGVsZW1l
bnQgY29sb3IiKQotCi0gICAgICAgIGh0dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxl
L3RpcC9jb21wb3NpdGluZy9pbmRleC5odG1sI2dlbmVyYWxmb3JtdWxhCi0gICAgKi8KLSAgICAu
bm9ybWFsLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIE5vcm1hbDoKLQotICAg
ICAgICAgICAgQ28gPSBDcwotCi0gICAgICAgICAgICByID0gMC4wCi0gICAgICAgICAgICBnID0g
MC42Ci0gICAgICAgICAgICBiID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAubXVsdGlwbHkgewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21p
eC1jb2xvci5mcycpIG11bHRpcGx5IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41
IDEuMCk7Ci0gICAgfQotICAgIC5tdWx0aXBseS1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAg
ICAgICAgICBNdWx0aXBseToKLQotICAgICAgICAgICAgQ28gPSBDYiAqIENzCi0KLSAgICAgICAg
ICAgIHIgPSAxLjAgKiAwLjAgPSAwLjAKLSAgICAgICAgICAgIGcgPSAwLjMgKiAwLjYgPSAwLjE4
Ci0gICAgICAgICAgICBiID0gMC41ICogMC41ID0gMC4yNQotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDE4JSwgMjUlKTsKLSAgICB9Ci0gICAgLnNjcmVlbiB7
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8uLi9yZXNv
dXJjZXMvbWl4LWNvbG9yLmZzJykgc2NyZWVuIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAw
LjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5zY3JlZW4tZXhwZWN0ZWQgewotICAgICAgICAvKgot
ICAgICAgICAgICAgU2NyZWVuOgotCi0gICAgICAgICAgICBDbyA9IENiICsgQ3MgLSBDYiAqIENz
Ci0KLSAgICAgICAgICAgIHIgPSAxLjAgKyAwLjAgLSAxLjAgKiAwLjAgPSAxLjAKLSAgICAgICAg
ICAgIGcgPSAwLjMgKyAwLjYgLSAwLjMgKiAwLjYgPSAwLjcyCi0gICAgICAgICAgICBiID0gMC41
ICsgMC41IC0gMC41ICogMC41ID0gMC43NQotCi0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhl
IGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZv
cjoKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDAlLCA3MiUsIDc1JSk7Ci0g
ICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDE4MywgMTkyKTsK
LSAgICB9Ci0gICAgLmRhcmtlbiB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9u
ZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgZGFya2VuIHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5kYXJrZW4tZXhw
ZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgRGFya2VuOgotCi0gICAgICAgICAgICBD
byA9IG1pbihDYiwgQ3MpCi0KLSAgICAgICAgICAgIHIgPSBtaW4oMS4wLCAwLjApID0gMC4wCi0g
ICAgICAgICAgICBnID0gbWluKDAuMywgMC42KSA9IDAuMwotICAgICAgICAgICAgYiA9IG1pbigw
LjUsIDAuNSkgPSAwLjUKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDAlLCAzMCUsIDUwJSk7Ci0gICAgfQotICAgIC5saWdodGVuIHsKLSAgICAgICAgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uLy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMn
KSBsaWdodGVuIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAg
fQotICAgIC5saWdodGVuLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIExpZ2h0
ZW46Ci0KLSAgICAgICAgICAgIENvID0gbWF4KENiLCBDcykKLQotICAgICAgICAgICAgciA9IG1h
eCgxLjAsIDAuMCkgPSAxLjAKLSAgICAgICAgICAgIGcgPSBtYXgoMC4zLCAwLjYpID0gMC42Ci0g
ICAgICAgICAgICBiID0gbWF4KDAuNSwgMC41KSA9IDAuNQotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAuZGlmZmVy
ZW5jZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8u
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgZGlmZmVyZW5jZSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuZGlmZmVyZW5jZS1leHBlY3RlZCB7
Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBEaWZmZXJlbmNlOgotCi0gICAgICAgICAgICBDbyA9
IGFicyhDYiAtIENzKQotCi0gICAgICAgICAgICByID0gYWJzKDEuMCAtIDAuMCkgPSAxLjAKLSAg
ICAgICAgICAgIGcgPSBhYnMoMC4zIC0gMC42KSA9IDAuMwotICAgICAgICAgICAgYiA9IGFicygw
LjUgLSAwLjUpID0gMC4wCi0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2Fs
Y3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDMwJSwgMCUpOwotICAgICAgICAqLwot
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA3NywgMSk7Ci0gICAgfQotICAgIC5l
eGNsdXNpb24gewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgn
Li4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGV4Y2x1c2lvbiBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuZXhjbHVzaW9uLWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIEV4Y2x1c2lvbjoKLQotICAgICAgICAgICAgQ28g
PSBDYiArIENzIC0gMiAqIENiICogQ3MKLQotICAgICAgICAgICAgciA9IDEuMCArIDAuMCAtIDIu
MCAqIDEuMCAqIDAuMCA9IDEuMAotICAgICAgICAgICAgZyA9IDAuMyArIDAuNiAtIDIuMCAqIDAu
MyAqIDAuNiA9IDAuNTQKLSAgICAgICAgICAgIGIgPSAwLjUgKyAwLjUgLSAyLjAgKiAwLjUgKiAw
LjUgPSAwLjUKLQotICAgICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlv
biByZXF1aXJlcyB1cyB0byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgNTQlLCA1MCUpOyAKLSAgICAgICAgKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMTM4LCAxMjcpOwotICAgIH0KLSAgICAub3Zl
cmxheSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8u
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgb3ZlcmxheSBzb3VyY2UtYXRvcCksIG1peF9jb2xv
ciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAub3ZlcmxheS1leHBlY3RlZCB7Ci0gICAg
ICAgIC8qCi0gICAgICAgICAgICBPdmVybGF5OgotCi0gICAgICAgICAgICBDbyA9IEhhcmRMaWdo
dChDcywgQ2IpCi0gICAgICAgICAgICAgICA9IGlmKENiIDw9IDAuNSkKLSAgICAgICAgICAgICAg
ICAgICAgIE11bHRpcGx5KENzLCAyICogQ2IpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAg
ICAgICAgICAgICAgICAgIFNjcmVlbihDcywgMiAqIENiIC0gMSkKLSAgICAgICAgICAgICAgID0g
aWYoQ2IgPD0gMC41KQotICAgICAgICAgICAgICAgICAgICAgQ3MgKiAoMiAqIENiKQotICAgICAg
ICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBDcyArICgyICogQ2IgLSAxKSAt
IChDcyAqICgyICogQ2IgLSAxKSkKLQotICAgICAgICAgICAgciA9IDAgKyAoMiAqIDEgLSAxKSAt
ICgwICogKDIgKiAxIC0gMSkpID0gMQotICAgICAgICAgICAgZyA9IDAuNiAqICgyICogMC4zKSA9
IDAuMzYKLSAgICAgICAgICAgIGIgPSAwLjUgKiAoMiAqIDAuNSkgPSAwLjUKLQotICAgICAgICAg
ICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2Ug
dGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MTAwJSwgMzYlLCA1MCUpOwotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
Z2IoMjU1LCA5MSwgMTI4KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRvZGdlIHsKLSAgICAgICAgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uLy4uL3Jlc291cmNlcy9taXgtY29s
b3IuZnMnKSBjb2xvci1kb2RnZSBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAx
LjApOwotICAgIH0KLSAgICAuY29sb3ItZG9kZ2UtZXhwZWN0ZWQgewotICAgICAgICAvKgotICAg
ICAgICAgICAgQ29sb3JEb2RnZToKLQotICAgICAgICAgICAgQ28gPSBpZihDcyA8IDEpCi0gICAg
ICAgICAgICAgICAgICAgICBtaW4oMSwgQ2IgLyAoMSAtIENzKSkKLSAgICAgICAgICAgICAgICAg
ZWxzZQotICAgICAgICAgICAgICAgICAgICAgMQotCi0gICAgICAgICAgICByID0gbWluKDEsIDEg
LyAoMSAtIDApKSA9IDEKLSAgICAgICAgICAgIGcgPSBtaW4oMSwgMC4zIC8gKDEgLSAwLjYpKSA9
IDAuNzUKLSAgICAgICAgICAgIGIgPSBtaW4oMSwgMC41IC8gKDEgLSAwLjUpKSA9IDEKLQotICAg
ICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0
byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMTAwJSwgNzUlLCAxMDAlKTsKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogcmdiKDI1NSwgMTkwLCAyNTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybiB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMv
bWl4LWNvbG9yLmZzJykgY29sb3ItYnVybiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjggMC44
IDAuOCAxLjApOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7Ci0gICAgICAgIC8q
Ci0gICAgICAgICAgICBDb2xvckJ1cm46Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPiAwKQot
ICAgICAgICAgICAgICAgICAgICAgMSAtIG1pbigxLCAoMSAtIENiKSAvIENzKQotICAgICAgICAg
ICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAwCi0KLSAgICAgICAgICAgICByID0g
MSAtIG1pbigxLCAoMSAtIDEpIC8gMC44KSA9IDEKLSAgICAgICAgICAgICBnID0gMSAtIG1pbigx
LCAoMSAtIDAuMykgLyAwLjgpID0gMC4xMjUKLSAgICAgICAgICAgICBiID0gMSAtIG1pbigxLCAo
MSAtIDAuNSkgLyAwLjgpID0gMC4zNzUKLQotICAgICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBj
b2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMTIuNSUsIDM3LjUlKTsK
LSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMzEsIDk2KTsK
LSAgICB9Ci0gICAgLmhhcmQtbGlnaHQgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9t
KG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGhhcmQtbGlnaHQg
c291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmhh
cmQtbGlnaHQtZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgSGFyZExpZ2h0Ogot
Ci0gICAgICAgICAgICBDbyA9IGlmKENzIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIE11
bHRpcGx5KENiLCAyICogQ3MpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAg
ICAgICAgIFNjcmVlbihDYiwgMiAqIENzIC0xKQotICAgICAgICAgICAgICAgPSBpZihDcyA8PSAw
LjUpCi0gICAgICAgICAgICAgICAgICAgICBDYiAqICgyICogQ3MpCi0gICAgICAgICAgICAgICAg
IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIENiICsgKDIgKiBDcyAtIDEpIC0gKENiICogKDIg
KiBDcyAtIDEpKQotCi0gICAgICAgICAgICByID0gMSAqICgyICogMCkgPSAwCi0gICAgICAgICAg
ICBnID0gMC4zICsgKDIgKiAwLjYgLSAxKSAtICgwLjMgKiAoMiAqIDAuNiAtIDEpKSA9IDAuNDQK
LSAgICAgICAgICAgIGIgPSAwLjUgKiAoMiAqIDAuNSkgPSAwLjUKLSAgICAgICAgKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCA0NCUsIDUwJSk7Ci0gICAgfQotICAgIC5zb2Z0
LWxpZ2h0IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4u
Ly4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBzb2Z0LWxpZ2h0IHNvdXJjZS1hdG9wKSwgbWl4
X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIFNvZnRMaWdodDoKLQotICAgICAgICAgICAgQ28g
PSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBDYiAtICgxIC0gMiAqIENzKSAq
IENiICogKDEgLSBDYikKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAg
ICAgQ2IgKyAoMiAqIENzIC0gMSkgKiAoRChDYikgLSBDYikKLQotICAgICAgICAgICAgd2l0aAot
Ci0gICAgICAgICAgICBEKENiKSA9IGlmKENiIDw9IDAuMjUpCi0gICAgICAgICAgICAgICAgICAg
ICAgICAoMTYgKiBDYiAtIDEyKSAqIENiICsgNCkgKiBDYgotICAgICAgICAgICAgICAgICAgICBl
bHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBzcXJ0KENiKQotCi0gICAgICAgICAgICBELnIg
PSBzcXJ0KDEpID0gMQotICAgICAgICAgICAgRC5nID0gc3FydCgwLjMpID0gMC41NDc3MjI1NTc1
MDUxNjYKLSAgICAgICAgICAgIEQuYiA9IHNxcnQoMC41KSA9IDAuNzA3MTA2NzgxMTg2NTQ4Ci0g
ICAgICAgICAgICByID0gMSAtICgxIC0gMiAqIDApICogMSAqICgxIC0gMSkgPSAxCi0gICAgICAg
ICAgICBnID0gMC4zICsgKDIgKiAwLjYgLSAxKSAqIChELmcgLSAwLjMpID0gMC4zNDk1NDQ1MTE1
MDEwMzMKLSAgICAgICAgICAgIGIgPSAwLjUgLSAoMSAtIDIgKiAwLjUpICogMC41ICogKDEgLSAw
LjUpID0gMC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRp
b24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDM0Ljk1NDQ1MSUsIDUwJSk7Ci0gICAgICAgICov
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDg5LCAxMjgpOwotICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVh
cmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbm9ybWFsIj48L2Rpdj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0ibm9ybWFsLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAg
ICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0
aW5hdGlvbiBtdWx0aXBseSI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4
cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFy
ZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzY3JlZW4iPjwvZGl2PgotICAg
ICAgICA8ZGl2IGNsYXNzPSJzY3JlZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAg
IDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3Rp
bmF0aW9uIGRhcmtlbiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRhcmtlbi1leHBlY3Rl
ZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbGlnaHRlbiI+PC9kaXY+Ci0gICAgICAg
IDxkaXYgY2xhc3M9ImxpZ2h0ZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxk
aXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0
aW9uIGRpZmZlcmVuY2UiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJkaWZmZXJlbmNlLWV4
cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFy
ZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBleGNsdXNpb24iPjwvZGl2Pgot
ICAgICAgICA8ZGl2IGNsYXNzPSJleGNsdXNpb24tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2
PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9
ImRlc3RpbmF0aW9uIG92ZXJsYXkiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJvdmVybGF5
LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNx
dWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBjb2xvci1kb2RnZSI+PC9k
aXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWRvZGdlLWV4cGVjdGVkIj48L2Rpdj4KLSAg
ICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBjb2xvci1idXJuIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0iY29sb3ItYnVybi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gaGFy
ZC1saWdodCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImhhcmQtbGlnaHQtZXhwZWN0ZWQi
PjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0g
ICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIHNvZnQtbGlnaHQiPjwvZGl2PgotICAgICAg
ICA8ZGl2IGNsYXNzPSJzb2Z0LWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAg
ICA8IS0tCi0gICAgICAgIElmIHlvdSBhZGQgbW9yZSBibGVuZCBtb2RlcyB0byB0aGlzIHBhZ2Us
IGJlIGNhcmVmdWwgbm90IHRvIGV4Y2VlZCA2MDBweCBpbiAKLSAgICAgICAgaGVpZ2h0LCBzaW5j
ZSBEdW1wUmVuZGVyVHJlZSBjb21wYXJlcyA4MDB4NjAwIHNuYXBzaG90cyBvZiB0aGlzIHBhZ2Uu
Ci0gICAgLS0+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwtZXhwZWN0
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1h
LXRleC1jb29yZC1vcHRpb25hbC1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA1ZDkwNGIwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hLXRleC1jb29yZC1vcHRpb25hbC1leHBlY3RlZC5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxo
ZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXJzIHdpdGggYmxlbmRpbmcg
YW5kIGNvbXBvc2l0aW5nIGV4ZWN1dGUgd2hldGhlciBvciBub3QgdGhlIGF1dGhvciBkZWZpbmVz
IGFfdGV4Q29vcmQuPC90aXRsZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNo
b3VsZCBzZWUgMiB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0tPgotICAgIDxzdHls
ZT4KLSAgICBkaXYgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsK
LSAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgbWFy
Z2luOiAxMHB4OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRp
dj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWEtdGV4LWNvb3Jk
LW9wdGlvbmFsLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMGM0NmI5MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDQwICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyB3aXRoIGJsZW5kaW5nIGFuZCBjb21wb3Np
dGluZyBleGVjdXRlIHdoZXRoZXIgb3Igbm90IHRoZSBhdXRob3IgZGVmaW5lcyBhX3RleENvb3Jk
LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIDIg
dmVydGljYWxseS1zdGFja2VkIGdyZWVuIGJveGVzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRl
c3QoKQotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMg
YWZ0ZXIgdGhlIHNoYWRlcnMgZG93bmxvYWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwot
ICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7Ci0gICAgICAg
IC8qIElmIHRoZSBzaGFkZXJzIGV4ZWN1dGUsIHRoZXkgd2lsbCB0dXJuIHRoZSBlbGVtZW50J3Mg
Y29sb3IgZnJvbSByZWQgdG8gZ3JlZW4uICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJn
YigyNTUsIDAsIDApOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4
OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0gICAgfQotICAgIC5hLXRleC1jb29yZC1kZWZpbmVk
IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hLXRl
eC1jb29yZC1kZWZpbmVkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycp
IG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMS4wIDAuMCAxLjApOwotICAgIH0K
LSAgICAuYS10ZXgtY29vcmQtdW5kZWZpbmVkIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hLXRleC1jb29yZC11bmRlZmluZWQudnMnKSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2Nv
bG9yIDAuMCAxLjAgMC4wIDEuMCk7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9k
eSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBjbGFzcz0iYS10ZXgtY29vcmQtZGVmaW5l
ZCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYS10ZXgtY29vcmQtdW5kZWZpbmVkIj48L2Rpdj4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFuaW1hdGlvbi1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIzMDk4NGMuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFuaW1hdGlvbi1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0gICAgICAgCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tZnJvbS1ub25lLWJveCIgZWxlbWVu
dCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUu
dnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0
ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLXRvLW5vbmUtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBz
b21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAx
LCByb3RhdGVCeSAzMCwgb2Zmc2V0IDApCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkg
Zm9yICJjdXN0b20tZnJvbS1uby1wYXJhbXMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhp
bmcgY2xvc2UgdG86IGN1c3RvbSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCByb3Rh
dGVCeSAzMCwgb2Zmc2V0IDApCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJj
dXN0b20tdG8tbm8tcGFyYW1zLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3Nl
IHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAs
IG9mZnNldCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1p
eC1hdHRyaWJ1dGVzLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBj
dXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDUgNSwgcm90YXRlQnkgMzAsIG9mZnNl
dCAwKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLWZyb20tZGlm
Zi1wYXJhbXMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3Rv
bSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCBwYXJhbSAxMCwgcm90YXRlQnkgNjAs
IG9mZnNldCAxMCwgYW5vdGhlcl9wYXJhbSA1KQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3Bl
cnR5IGZvciAiY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29t
ZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwg
cGFyYW0gMTAsIHJvdGF0ZUJ5IDYwLCBvZmZzZXQgMTAsIGFub3RoZXJfcGFyYW0gNSkKLVBBU1Mg
LSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1taXgtcGFyYW1zLWJveCIgZWxl
bWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3Rh
dGUudnMpIG5vbmUsIDEgMSwgcGFyYW0gMTAsIGFub3RoZXJfcGFyYW0gNSwgZmlyc3RfcGFyYW0g
Niwgcm90YXRlQnkgNjAsIG9mZnNldCAxMCwgbGFzdF9wYXJhbSA0KQotUEFTUyAtICJ3ZWJraXRG
aWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1peC1udW1iZXJzLWJveCIgZWxlbWVudCBhdCAx
cyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5v
bmUsIDEgMSwgcm90YXRlQnkgNDUsIGEgNS41LCBiIDExIDE2LjUsIGMgMjIgMjcuNSAzMywgZCAz
OC41IDQ0IDQ5LjUpCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24uaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZmM5M2IxMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYW5pbWF0aW9uLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxMzkgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNj
cmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVu
YWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVm
ZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICB9Ci0gICAgPC9zY3Jp
cHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBtYXJnaW46IDEwcHg7
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwotICAgICAgICAgICAgZGlzcGxh
eTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0b20tZnJvbS1u
b25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWZyb20tbm9u
ZS1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLXRvLW5v
bmUtYm94IHsKLSAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tdG8tbm9uZS1h
bmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLWZyb20tbm8t
cGFyYW1zLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWZyb20t
bm8tcGFyYW1zLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0
b20tdG8tbm8tcGFyYW1zLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3Vz
dG9tLXRvLW5vLXBhcmFtcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotICAgICAgICAKLSAg
ICAgICAgI2N1c3RvbS1taXgtYXR0cmlidXRlcy1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1h
bmltYXRpb246IGN1c3RvbS1taXgtYXR0cmlidXRlcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAg
fQotICAgIAotICAgICAgICAjY3VzdG9tLWZyb20tZGlmZi1wYXJhbXMtYm94IHsKLSAgICAgICAg
ICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIDJzIGxp
bmVhcjsKLSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLXRvLWRpZmYtcGFyYW1z
LWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgICNjdXN0b20tbWl4LXBh
cmFtcy1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGN1c3RvbS1taXgtcGFy
YW1zLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICAjY3VzdG9t
LW1peC1udW1iZXJzLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9t
LW1peC1udW1iZXJzLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgIEAt
d2Via2l0LWtleWZyYW1lcyBjdXN0b20tZnJvbS1ub25lLWFuaW0gewotICAgICAgICAgICAgZnJv
bSB7IC13ZWJraXQtZmlsdGVyOiBub25lOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCByb3RhdGVC
eSAzMCwgb2Zmc2V0IDApOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFt
ZXMgY3VzdG9tLXRvLW5vbmUtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCByb3RhdGVCeSAz
MCwgb2Zmc2V0IDApOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IG5vbmU7
IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWZy
b20tbm8tcGFyYW1zLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSk7IH0KLSAgICAgICAgICAg
IHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LXJv
dGF0ZS52cyksIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCk7IH0KLSAgICAgICAgfQotCi0gICAgICAg
IEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tdG8tbm8tcGFyYW1zLWFuaW0gewotICAgICAgICAg
ICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzKSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKTsgfQotICAgICAgICAgICAgdG8gICB7
IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZz
KSk7IH0KLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1
c3RvbS1taXgtYXR0cmlidXRlcy1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cyksIHJvdGF0ZUJ5
X2EgMzAsIG9mZnNldF9hIDApOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCA1IDUgYm9yZGVyLWJv
eCwgcm90YXRlQnkgMzAsIG9mZnNldCAwKTsgfQotICAgICAgICB9Ci0gICAgCi0gICAgICAgIEAt
d2Via2l0LWtleWZyYW1lcyBjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIHsKLSAgICAgICAg
ICAgIGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4
LXJvdGF0ZS52cyksIHBhcmFtIDEwLCByb3RhdGVCeSAzMCwgb2Zmc2V0IDAsIGFub3RoZXJfcGFy
YW0gNSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgu
Li9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cyksIHJvdGF0ZUJ5IDkwLCBvZmZzZXQgMjApOyB9
Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLXRvLWRpZmYt
cGFyYW1zLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSwgcm90YXRlQnkgOTAsIG9mZnNldCAy
MCk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9y
ZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cyksIHBhcmFtIDEwLCByb3RhdGVCeSAzMCwgb2Zmc2V0
IDAsIGFub3RoZXJfcGFyYW0gNSk7IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtp
dC1rZXlmcmFtZXMgY3VzdG9tLW1peC1wYXJhbXMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMp
LCBmaXJzdF9wYXJhbSA2LCByb3RhdGVCeSA5MCwgb2Zmc2V0IDIwLCBsYXN0X3BhcmFtIDQpOyB9
Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3Vy
Y2VzL3ZlcnRleC1yb3RhdGUudnMpLCBwYXJhbSAxMCwgcm90YXRlQnkgMzAsIG9mZnNldCAwLCBh
bm90aGVyX3BhcmFtIDUpOyB9Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIEAtd2Via2l0
LWtleWZyYW1lcyBjdXN0b20tbWl4LW51bWJlcnMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMp
LCByb3RhdGVCeSAwLCBhIDEsIGIgMiAzLCBjIDQgNSA2LCBkIDcgOCA5KTsgfQotICAgICAgICAg
ICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzKSwgcm90YXRlQnkgOTAsIGEgMTAsIGIgMjAgMzAsIGMgNDAgNTAgNjAsIGQgNzAg
ODAgOTApOyB9Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotICAgIDxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1wYXJzZXIuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9hbmltYXRpb25zL3Jlc291cmNlcy9hbmltYXRpb24tdGVzdC1oZWxwZXJz
LmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci0gICAg
ICAgIGNvbnN0IGV4cGVjdGVkVmFsdWVzID0gWwotICAgICAgICAgICAgLy8gW2FuaW1hdGlvbi1u
YW1lLCB0aW1lLCBlbGVtZW50LWlkLCBwcm9wZXJ0eSwgZXhwZWN0ZWQtdmFsdWUsIHRvbGVyYW5j
ZV0KLSAgICAgICAgICAgIFsiY3VzdG9tLWZyb20tbm9uZS1hbmltIiwgIDEsICJjdXN0b20tZnJv
bS1ub25lLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZz
KSBub25lLCAxIDEsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCknLCAwXSwKLSAgICAgICAgICAgIFsi
Y3VzdG9tLXRvLW5vbmUtYW5pbSIsICAxLCAiY3VzdG9tLXRvLW5vbmUtYm94IiwgIndlYmtpdEZp
bHRlciIsICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkg
MzAsIG9mZnNldCAwKScsIDBdLAotCi0gICAgICAgICAgICBbImN1c3RvbS1mcm9tLW5vLXBhcmFt
cy1hbmltIiwgIDEsICJjdXN0b20tZnJvbS1uby1wYXJhbXMtYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9m
ZnNldCAwKScsIDBdLAotICAgICAgICAgICAgWyJjdXN0b20tdG8tbm8tcGFyYW1zLWFuaW0iLCAg
MSwgImN1c3RvbS10by1uby1wYXJhbXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJs
KHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKScsIDBd
LAotICAgICAgICAgICAgCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtYXR0cmlidXRlcy1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LWF0dHJpYnV0ZXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0
b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDUgNSwgcm90YXRlQnkgMzAsIG9mZnNldCAw
KScsIDBdLAotCi0gICAgICAgICAgICAvLyBGSVhNRTogQ1NTIFNoYWRlcnMgZG8gbm90IGdldCBn
b29kIEZQUyBpbiBkZWJ1ZyBtb2RlLCBzbyB0aGUgdG9sZXJhbmNlIG5lZWRzIHRvIGJlIGhpZ2hl
ci4KLSAgICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04NTA4NgotICAgICAgICAgICAgWyJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1hbmltIiwgIDEs
ICJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1
cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCBwYXJhbSAxMCwgcm90YXRlQnkgNjAsIG9m
ZnNldCAxMCwgYW5vdGhlcl9wYXJhbSA1KScsIDVdLAotICAgICAgICAgICAgWyJjdXN0b20tdG8t
ZGlmZi1wYXJhbXMtYW5pbSIsICAxLCAiY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWJveCIsICJ3ZWJr
aXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHBhcmFt
IDEwLCByb3RhdGVCeSA2MCwgb2Zmc2V0IDEwLCBhbm90aGVyX3BhcmFtIDUpJywgNV0sCi0KLSAg
ICAgICAgICAgIFsiY3VzdG9tLW1peC1wYXJhbXMtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1wYXJh
bXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5v
bmUsIDEgMSwgcGFyYW0gMTAsIGFub3RoZXJfcGFyYW0gNSwgZmlyc3RfcGFyYW0gNiwgcm90YXRl
QnkgNjAsIG9mZnNldCAxMCwgbGFzdF9wYXJhbSA0KScsIDVdLAotICAgICAgICAgICAgWyJjdXN0
b20tbWl4LW51bWJlcnMtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1udW1iZXJzLWJveCIsICJ3ZWJr
aXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHJvdGF0
ZUJ5IDQ1LCBhIDUuNSwgYiAxMSAxNi41LCBjIDIyIDI3LjUgMzMsIGQgMzguNSA0NCA0OS41KScs
IDEwXQotICAgICAgICBdOwotICAgICAgICBydW5BbmltYXRpb25UZXN0KGV4cGVjdGVkVmFsdWVz
KTsKLSAgICA8L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xhc3M9ImJveCIg
aWQ9ImN1c3RvbS1mcm9tLW5vbmUtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlk
PSJjdXN0b20tdG8tbm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1
c3RvbS1mcm9tLW5vLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9
ImN1c3RvbS10by1uby1wYXJhbXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlk
PSJjdXN0b20tbWl4LWF0dHJpYnV0ZXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3gi
IGlkPSJjdXN0b20tZnJvbS1kaWZmLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9
ImJveCIgaWQ9ImN1c3RvbS10by1kaWZmLXBhcmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xh
c3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtcGFyYW1zLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0iYm94IiBpZD0iY3VzdG9tLW1peC1udW1iZXJzLWJveCI+PC9kaXY+Ci0KLSAgICA8ZGl2IGlk
PSJyZXN1bHQiPgotICAgIDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5n
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1hcnJheS1ibGVuZGluZy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDM2OWM5MzQ5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1ibGVuZGluZy1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSw5ICswLDAgQEAKLSAgICAgCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVy
dHkgZm9yICJjdXN0b20tYmxlbmQtZnJvbS1ub25lLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29t
ZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEg
MSwgYXJyYXlGcm9tTm9uZUFuaW0gYXJyYXkoMTAsIDIwKSkKLVBBU1MgLSAid2Via2l0RmlsdGVy
IiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1ibGVuZC10by1ub25lLWJveCIgZWxlbWVudCBhdCAxcyBz
YXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5v
bmUsIDEgMSwgYXJyYXlUb05vbmVBbmltIGFycmF5KDEwLCAyMCkpCi1QQVNTIC0gIndlYmtpdEZp
bHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtc2luZ2xlLWVsZW1lbnQtYm94IiBlbGVt
ZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5l
ZWRlZC52cykgbm9uZSwgMSAxLCBzaW5nbGVFbGVtZW50QXJyYXkgYXJyYXkoNSkpCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtdHdvLWZsb2F0cy1ib3gi
IGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1zaGFk
ZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHR3b0Zsb2F0c0FycmF5IGFycmF5KDIsIDYuNCkpCi1Q
QVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxlbmQtbXVsdGlwbGUt
ZWxlbWVudHMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3Rv
bSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCBtdWx0aXBsZUVsZW1lbnRzQXJy
YXkgYXJyYXkoNSwgMTAsIDUsIDEwLCA1LCAxMCwgNSwgMTAsIDUpKQotUEFTUyAtICJ3ZWJraXRG
aWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLWJsZW5kLWZpcnN0LWxvbmdlci1ib3giIGVsZW1l
bnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1zaGFkZXItbmVl
ZGVkLnZzKSBub25lLCAxIDEsIGZpcnN0TG9uZ2VyIGFycmF5KDEwLCAxMCwgMTAsIDEwKSkKLVBB
U1MgLSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1ibGVuZC1zZWNvbmQtbG9u
Z2VyLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJs
KG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgc2Vjb25kTG9uZ2VyIGFycmF5KDEwLCAx
MCwgMTAsIDEwLCAxMCkpCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1ibGVuZGluZy5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5nLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhmOWEwYWEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5nLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwxMTUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1s
PgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAg
ICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAg
ICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAg
ICAgICBtYXJnaW46IDEwcHg7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwot
ICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0KLSAgICAgICAg
I2N1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94IHsKLSAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0
aW9uOiBjdXN0b20tYmxlbmQtZnJvbS1ub25lLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0K
LSAgICAgICAgI2N1c3RvbS1ibGVuZC10by1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0
LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXRvLW5vbmUtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAg
IH0KLQotICAgICAgICAjY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWJveCB7Ci0gICAgICAg
ICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWFuaW0g
MnMgbGluZWFyOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC10d28tZmxvYXRz
LWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXR3by1m
bG9hdHMtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICAjY3VzdG9tLWJsZW5k
LW11bHRpcGxlLWVsZW1lbnRzLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjog
Y3VzdG9tLWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9
Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC1maXJzdC1sb25nZXItYm94IHsKLSAgICAgICAgICAg
IC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tYmxlbmQtZmlyc3QtbG9uZ2VyLWFuaW0gMnMgbGlu
ZWFyOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLXNlY29uZC1s
b25nZXItYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlm
cmFtZXMgY3VzdG9tLWJsZW5kLWZyb20tbm9uZS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSk7IH0KLSAgICAg
ICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVk
LnZzKSwgYXJyYXlGcm9tTm9uZUFuaW0gYXJyYXkoMTAuMCwgMjAuMCkpOyB9Ci0gICAgICAgIH0K
LQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWJsZW5kLXRvLW5vbmUtYW5pbSB7
Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVy
LW5lZWRlZC52cyksIGFycmF5VG9Ob25lQW5pbSBhcnJheSgxMC4wLCAyMC4wKSk7IH0KLSAgICAg
ICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVk
LnZzKSk7IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3Vz
dG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJr
aXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzaW5nbGVFbGVtZW50
QXJyYXkgYXJyYXkoMCkpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHNpbmdsZUVsZW1lbnRBcnJheSBhcnJheSgx
MCkpOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWJs
ZW5kLXR3by1mbG9hdHMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHR3b0Zsb2F0c0FycmF5IGFycmF5KDEu
MDEsIDMuMTQpKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0d29GbG9hdHNBcnJheSBhcnJheSgzLjAzLCA5LjQy
KSk7IH0KLSAgICAgICAgfQotCi0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1i
bGVuZC1tdWx0aXBsZS1lbGVtZW50cy1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0
LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgbXVsdGlwbGVFbGVtZW50
c0FycmF5IGFycmF5KDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDApKTsgfQotICAgICAgICAgICAg
dG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBt
dWx0aXBsZUVsZW1lbnRzQXJyYXkgYXJyYXkoMTAsIDIwLCAxMCwgMjAsIDEwLCAyMCwgMTAsIDIw
LCAxMCkpOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9t
LWJsZW5kLWZpcnN0LWxvbmdlci1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgZmlyc3RMb25nZXIgYXJyYXko
MTAsIDEwLCAxMCwgMTAsIDEwKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgZmlyc3RMb25nZXIgYXJyYXkoMTAs
IDEwLCAxMCwgMTApKTsgfQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVz
IGN1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzZWNvbmRMb25n
ZXIgYXJyYXkoMTAsIDEwLCAxMCwgMTApKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBzZWNvbmRMb25nZXIgYXJy
YXkoMTAsIDEwLCAxMCwgMTAsIDEwKSk7IH0KLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci0gICAg
PHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLXBhcnNlci5qcyI+PC9zY3Jp
cHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2FuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1h
dGlvbi10ZXN0LWhlbHBlcnMuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KLSAgICAgICAgY29uc3QgZXhwZWN0ZWRWYWx1ZXMgPSBbCi0gICAgICAgICAg
ICAvLyBbYW5pbWF0aW9uLW5hbWUsIHRpbWUsIGVsZW1lbnQtaWQsIHByb3BlcnR5LCBleHBlY3Rl
ZC12YWx1ZSwgdG9sZXJhbmNlXQotICAgICAgICAgICAgWyJjdXN0b20tYmxlbmQtZnJvbS1ub25l
LWFuaW0iLCAgMSwgImN1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgYXJyYXlGcm9tTm9u
ZUFuaW0gYXJyYXkoMTAsIDIwKSknLCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLWJsZW5kLXRv
LW5vbmUtYW5pbSIsICAxLCAiY3VzdG9tLWJsZW5kLXRvLW5vbmUtYm94IiwgIndlYmtpdEZpbHRl
ciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgYXJyYXlUb05v
bmVBbmltIGFycmF5KDEwLCAyMCkpJywgMl0sCi0KLSAgICAgICAgICAgIFsiY3VzdG9tLWJsZW5k
LXNpbmdsZS1lbGVtZW50LWFuaW0iLCAxLCAiY3VzdG9tLWJsZW5kLXNpbmdsZS1lbGVtZW50LWJv
eCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25l
LCAxIDEsIHNpbmdsZUVsZW1lbnRBcnJheSBhcnJheSg1KSknLCAyXSwKLQotICAgICAgICAgICAg
WyJjdXN0b20tYmxlbmQtdHdvLWZsb2F0cy1hbmltIiwgMSwgImN1c3RvbS1ibGVuZC10d28tZmxv
YXRzLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZz
KSBub25lLCAxIDEsIHR3b0Zsb2F0c0FycmF5IGFycmF5KDIsIDYuNCkpJywgMl0sCi0KLSAgICAg
ICAgICAgIFsiY3VzdG9tLWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWFuaW0iLCAxLCAiY3VzdG9t
LWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVy
bChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIG11bHRpcGxlRWxlbWVudHNBcnJheSBh
cnJheSg1LCAxMCwgNSwgMTAsIDUsIDEwLCA1LCAxMCwgNSkpJywgNF0sCi0KLSAgICAgICAgICAg
IFsiY3VzdG9tLWJsZW5kLWZpcnN0LWxvbmdlci1hbmltIiwgMSwgImN1c3RvbS1ibGVuZC1maXJz
dC1sb25nZXItYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVk
ZWQudnMpIG5vbmUsIDEgMSwgZmlyc3RMb25nZXIgYXJyYXkoMTAsIDEwLCAxMCwgMTApKScsIDJd
LAotCi0gICAgICAgICAgICBbImN1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWFuaW0iLCAxLCAi
Y3VzdG9tLWJsZW5kLXNlY29uZC1sb25nZXItYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20o
dXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgc2Vjb25kTG9uZ2VyIGFycmF5KDEw
LCAxMCwgMTAsIDEwLCAxMCkpJywgMl1dOwotICAgICAgICBydW5BbmltYXRpb25UZXN0KGV4cGVj
dGVkVmFsdWVzKTsKLSAgICA8L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xh
c3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC1mcm9tLW5vbmUtYm94Ij48L2Rpdj4KLSAgICA8ZGl2
IGNsYXNzPSJib3giIGlkPSJjdXN0b20tYmxlbmQtdG8tbm9uZS1ib3giPjwvZGl2PgotICAgIDxk
aXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC1zaW5nbGUtZWxlbWVudC1ib3giPjwvZGl2
PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC10d28tZmxvYXRzLWJveCI+
PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLWJsZW5kLW11bHRpcGxlLWVs
ZW1lbnRzLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLWJsZW5k
LWZpcnN0LWxvbmdlci1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3Rv
bS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0icmVzdWx0Ij4K
LSAgICA8L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1leHBlY3RlZC5odG1sIGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI4M2QwNjIuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWV4
cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdHMgdGhlIGFycmF5KCkg
ZnVuY3Rpb24gaW4gY3VzdG9tIGZpbHRlcnM8L3RpdGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAg
ICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsK
LSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+
Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRp
diBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5
LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4
LWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNhNmJlZTIuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWFycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDE3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCB2ZXJ0ZXggc2hhZGVycyBjYW4gaW5kaXJlY3RseSBpbmRleCB1bmlm
b3JtIGFycmF5cy48L3RpdGxlPgotICAgIDwhLS0gVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZpbGUg
Zm9yIHRoZSB0ZXN0LiBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgZ3JlZW4g
c3F1YXJlLiAtLT4KLSAgICA8c3R5bGU+Ci0gICAgICAgIGRpdiB7Ci0gICAgICAgICAgICBiYWNr
Z3JvdW5kLWNvbG9yOiAjMGYwOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAg
ICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9k
eT4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5k
aXJlY3QtaW5kZXguaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4Lmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGE5YjY3OGMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDM3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCB2ZXJ0ZXggc2hhZGVycyBjYW4gaW5k
aXJlY3RseSBpbmRleCB1bmlmb3JtIGFycmF5cy48L3RpdGxlPgotICAgIDwhLS0gSWYgdGhlIHRl
c3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHNjcmlw
dD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJl
bmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gUnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUg
c2hhZGVycyBkb3dubG9hZC4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0K
LSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgICAgIGRpdiB7Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiAjZjAwOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAuYXJyYXktaW5kaXJlY3Qt
aW5kZXggewotICAgICAgICAgICAgLyogVGhpcyBjdXN0b20gZmlsdGVyIHdpbGwgdHVybiB0aGUg
ZWxlbWVudCdzIGNvbG9yIGZyb20gcmVkIHRvIGdyZWVuIGlmIGl0IGV4ZWN1dGVzLiAqLwotICAg
ICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9hcnJheS11
bmlmb3JtLWluZGlyZWN0LWluZGV4LnZzJykgCi0gICAgICAgICAgICAgICAgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL3ZhcnlpbmctbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgCi0g
ICAgICAgICAgICAgICAgdmFsdWVzIGFycmF5KDAuMCwgMS4wKSwgcmVkSW5kZXggMCwgZ3JlZW5J
bmRleCAxLCBibHVlSW5kZXggMCwgYWxwaGFJbmRleCAxKTsKLSAgICAgICAgfQotICAgIDwvc3R5
bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBjbGFzcz0i
YXJyYXktaW5kaXJlY3QtaW5kZXgiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5Lmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXku
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjg2MDE4Yy4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXkuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+
Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0cyB0aGUgYXJyYXkoKSBmdW5jdGlvbiBp
biBjdXN0b20gZmlsdGVyczwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIp
OwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgi
V2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0
aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQg
dG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Nj
cmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAg
ICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNvdXJjZXMvZnJhZ21lbnQt
Y29sb3IuZnMnKSwgY29sb3JBcnJheSBhcnJheSgwLjAsIDEuMCwgMC4wLCAxLjApKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQg
ZGl2IGlzIGNvbG91cmVkIGdyZWVuIGJ5IGZyYWdtZW50LWNvbG9yLmZzLCBhIGZyYWdtZW50IHNo
YWRlci4KLSAgICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYgc3RheXMgcmVkLgotICAgICAgICAt
LT4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGluYXRpb24tYWxwaGEtZXhwZWN0ZWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1m
cmFjdGlvbmFsLWRlc3RpbmF0aW9uLWFscGhhLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDRiZGViNjUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGluYXRpb24t
YWxwaGEtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLTwhRE9D
VFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPkJsZW5kaW5n
IHdpdGggZnJhY3Rpb25hbCBhbHBoYSBvbiBkZXN0aW5hdGlvbjwvdGl0bGU+Ci0gICAgPHN0eWxl
IHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2Rlc3RpbmF0aW9uIHsKLSAgICAgICAgICAgIC8q
IFRoaXMgaXMgdGhlIEVYQUNUIGNvbG9yIHZhbHVlIHdlIGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMg
bWF5IGhhdmUgc2xpZ2h0IGRpZmZlcmVudAotICAgICAgICAgICAgICAgY29sb3IgdmFsdWUuICov
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc5LCAxNjYsIDEyOCk7Ci0gICAg
ICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImRlc3RpbmF0
aW9uIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1mcmFjdGlvbmFsLWRlc3RpbmF0
aW9uLWFscGhhLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItYmxlbmQtZnJhY3Rpb25hbC1kZXN0aW5hdGlvbi1hbHBoYS5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAxMmIyNGYwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1mcmFjdGlvbmFsLWRlc3RpbmF0
aW9uLWFscGhhLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMDQgKzAsMCBAQAotPCFET0NUWVBF
IEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBi
bGVuZGluZyB3aXRoIGEgdHJhbnNsdWNlbnQgZWxlbWVudCB0ZXh0dXJlIGNvbXB1dGVzIHRoZSBj
b3JyZWN0IGNvbG9yIHZhbHVlLjwvdGl0bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVu
YWJsZWQiLCAiMSIpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9
InRleHQvY3NzIj4KLSAgICAgICAgI2Rlc3RpbmF0aW9uIHsKLSAgICAgICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYmEoMTAwJSwgMCUsIDAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbXVs
dGlwbHkgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDEuMCAwLjAgMC42KTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBUaGUgcmVzdWx0IG9m
IHRoZSBibGVuZGluZyBmdW5jdGlvbiBpcyBhdmVyYWdlZCB3aXRoIHRoZSBkZXN0aW5hdGlvbiBj
b2xvciB1c2luZyB0aGUgZGVzdGluYXRpb24ncyBhbHBoYSBhcyB0aGUgZGVzdGluYXRpb24ncyB3
ZWlnaHQuCi0KLSAgICBUaGUgcmVzdWx0aW5nIGNvbG9yIHdpbGwgYmU6Ci0gICAgICAgIENyID0g
KDEgLSBhYikgeCBDcyArIGFiIHggQihDYiwgQ3MpCi0KLSAgICBXaXRoOgotICAgICAgICBDcjog
dGhlIHJlc3VsdCBjb2xvcgotICAgICAgICBCOiAgdGhlIGJsZW5kaW5nIGZ1bmN0aW9uCi0gICAg
ICAgIENzOiB0aGUgc291cmNlIGNvbG9yIChha2EgIm1peCBjb2xvciIsICJjc3NfTWl4Q29sb3Ii
KQotICAgICAgICBhczogdGhlIHNvdXJjZSBhbHBoYSAodXNlZCBkdXJpbmcgY29tcG9zaXRpbmcp
Ci0gICAgICAgIENiOiB0aGUgYmFja2Ryb3AgY29sb3IgKCJvcmlnaW5hbCBET00gZWxlbWVudCBj
b2xvciIpCi0gICAgICAgIGFiOiB0aGUgYmFja2Ryb3AgYWxwaGEKLQotICAgIEluIHRoaXMgY2Fz
ZToKLSAgICAgICAgQ3MgPSAoMC4wLCAxLjAsIDAuMCkKLSAgICAgICAgQ2IgPSAoMS4wLCAwLjAs
IDAuMCkKLSAgICAgICAgYWIgPSAwLjUKLQotICAgICAgICBCZWNhdXNlIHdlJ3JlIHVzaW5nIHRo
ZSAibXVsdGlwbHkiIGJsZW5kIG9wZXJhdG9yOgotICAgICAgICBCKENiLCBDcykgPSBDYiAqIENz
Ci0gICAgICAgIEIoQ2IsIENzKSA9ICgxLjAsIDAuMCwgMC4wKSAqICgwLjAsIDEuMCwgMC4wKQot
ICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAwLjAsIDAuMCkKLQotICAgICAgICBDciA9ICgxIC0g
MC41KSAqICgwLjAsIDEuMCwgMC4wKSArIDAuNSAqICgwLjAsIDAuMCwgMC4wKQotICAgICAgICBD
ciA9IDAuNSAqICgwLjAsIDEuMCwgMC4wKSArIDAuMAotICAgICAgICBDciA9ICgwLjAsIDAuNSwg
MC4wKQotCi0gICAgQXQgdGhpcyBwb2ludCwgd2UgY29tcG9zaXRlIHRoZSB0ZXh0dXJlIHdpdGgg
dGhlIFBvcnRlci1EdWZmIFNvdXJjZUF0b3AgY29tcG9zaXRlIG9wZXJhdG9yLgotICAgIFRoZSBn
ZW5lcmFsIGNvbXBvc2l0aW5nIGZvcm11bGEgaXM6Ci0KLSAgICAgICAgY28gPSBhcyAqIEZhICog
Q3MgKyBhYiAqIEZiICogQ2IKLQotICAgICAgICBhbyA9IGFzICogMSArIGFiICogKDEgLSBhcykK
LSAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICBXaXRoIHRoZSBTb3VyY2VBdG9wIGNvbXBvc2l0
ZSBvcGVyYXRvcjoKLQotICAgICAgICBGYSA9IGFiCi0gICAgICAgIEZiID0gMSAtIGFzCi0KLSAg
ICBJbiB0aGlzIGNhc2UsIENzID0gQ3IsIHdoZXJlIENyIGlzIHRoZSByZXN1bHQgb2YgdGhlIGJs
ZW5kaW5nIGZ1bmN0aW9uLgotICAgIFN1YnN0aXR1dGluZyBGYSBhbmQgRmIsIHdlIGdldCBmb2xs
b3dpbmcgc3BlY2lmaWMgZm9ybXVsYToKLQotICAgICAgICBjbyA9IGFzICogQ3MgKiBhYiArIGFi
ICogQ2IgKiAoMSAtIGFzKQotCi0gICAgICAgIGFvID0gYXMgKiBhYiArIGFiICogKDEgLSBhcykK
LSAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICBTdWJzdGl0dXRpbmcgQ3IgZm9yIENzOgotICAg
ICAgICBjbyA9IGFzICogQ3IgKiBhYiArIGFiICogQ2IgKiAoMSAtIGFzKQotCi0gICAgRnJvbSB0
aGlzIHdlIGdldDoKLSAgICAgICAgY28gPSAwLjYgKiAoMC4wLCAwLjUsIDAuMCkgKiAwLjUgKyAw
LjUgKiAoMS4wLCAwLjAsIDAuMCkgKiAoMSAtIDAuNikKLSAgICAgICAgY28gPSAwLjMgKiAoMC4w
LCAwLjUsIDAuMCkgKyAwLjIgKiAoMS4wLCAwLjAsIDAuMCkKLSAgICAgICAgY28gPSAoMC4wLCAw
LjE1LCAwLjApICsgKDAuMiwgMC4wLCAwLjApCi0gICAgICAgIGNvID0gKDAuMiwgMC4xNSwgMC4w
KQotCi0gICAgVGhlIHJlc3VsdGluZyBhbHBoYSBpczoKLSAgICAgICAgYW8gPSAwLjYgKiAwLjUg
KyAwLjUgKiAoMSAtIDAuNikKLSAgICAgICAgYW8gPSAwLjMgKyAwLjIKLSAgICAgICAgYW8gPSAw
LjUKLQotICAgIFRoZSBmaW5hbCByZXN1bHQgaXMgdGhlbjoKLSAgICAgICAgQ28gPSAoMC4yLCAw
LjE1LCAwLjApIC8gMC41Ci0gICAgICAgIENvID0gKDAuNCwgMC4zLCAwLjApCi0KLQotICAgIEF0
IHRoaXMgcG9pbnQgdGhlIHRleHR1cmUgaGFzIHRvIGJlIGNvbXBvc2l0ZWQgd2l0aCB0aGUgdW5k
ZXJseWluZyB3aGl0ZSBmcm9tIHRoZSBwYWdlIHRvIGdldCB0aGUgZmluYWwKLSAgICByZXN1bHRz
IGluIGxpZ2h0IG9mIHRoZSBhbHBoYSAoYW8pIHZhbHVlOgotCi0gICAgICAgIEV4cGVjdGVkIGNv
bG9yIG9uIHNjcmVlbiA9IENvICogYW8gKyAoMS4wIC0gYW8pICogV2hpdGUKLQotICAgICAgICBS
ID0gMC40ICogMC41ICsgKDEuMCAtIDAuNSkgKiAxLjAgPSAwLjIgKyAwLjUgPSAwLjcKLSAgICAg
ICAgRyA9IDAuMyAqIDAuNSArICgxLjAgLSAwLjUpICogMS4wID0gMC4xNSArIDAuNSA9IDAuNjUK
LSAgICAgICAgQiA9IDAuMCAqIDAuNSArICgxLjAgLSAwLjUpICogMS4wID0gMCArIDAuNSA9IDAu
NQotCi0gICAgU28gdGhlIGV4cGVjdGVkIChjb3JyZWN0KSB2YWx1ZSBpcyByZ2IoNzAlLCA2NSUs
IDUwJSksIG1lYW5pbmcgcmdiKDE3OSwgMTY2LCAxMjgpLgotCi0gICAgSU1QT1JUQU5UOiB0aGlz
IGlzIHRoZSBleGFjdCBleHBlY3RlZCBjb2xvci4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xp
Z2h0IGNvbG9yIGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBpZD0iZGVzdGluYXRpb24iPjwv
ZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLWV4cGVjdGVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhw
ZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjgyNDAzZC4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYmxl
bmQtbW9kZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDExNCArMCwwIEBACi08
IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3Vz
dG9tIGZpbHRlciBibGVuZCBtb2RlcyBjb21wdXRlIGNvbG9yIHZhbHVlcyBjb3JyZWN0bHkuPC90
aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0
aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFzc2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWly
IG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNhbWUgY29sb3IuCi0gICAgICAgIFRoZSB0ZXN0
IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3IgdmFsdWVzIGluIHRoaXMgcmVmZXJlbmNlIGZp
bGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVh
cmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMg
PiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7
Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZs
b2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAqLwotICAgIC5ub3JtYWwtZXhw
ZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDYwJSwgNTAlKTsKLSAg
ICB9Ci0gICAgLm11bHRpcGx5LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDAlLCAxOCUsIDI1JSk7Ci0gICAgfQotICAgIC5zY3JlZW4tZXhwZWN0ZWQgewotICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAxODMsIDE5Mik7Ci0gICAgfQotICAgIC5kYXJr
ZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDMwJSwgNTAl
KTsKLSAgICB9Ci0gICAgLmxpZ2h0ZW4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2IoMTAwJSwgNjAlLCA1MCUpOwotICAgIH0KLSAgICAuZGlmZmVyZW5jZS1leHBlY3Rl
ZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDc3LCAxKTsKLSAgICB9Ci0g
ICAgLmV4Y2x1c2lvbi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigy
NTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhwZWN0ZWQgewotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA5MSwgMTI4KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRv
ZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMTkwLCAy
NTUpOwotICAgIH0KLSAgICAuY29sb3ItYnVybi1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAgfQotICAgIC5oYXJkLWxpZ2h0LWV4cGVj
dGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCA0NCUsIDUwJSk7Ci0gICAg
fQotICAgIC5zb2Z0LWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDI1NSwgODksIDEyOCk7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4K
LSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJu
b3JtYWwtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJub3JtYWwtZXhwZWN0
ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+
Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAg
PGRpdiBjbGFzcz0ibXVsdGlwbHktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxk
aXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNjcmVlbi1l
eHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNjcmVlbi1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJw
YWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJsaWdodGVuLWV4cGVjdGVkIj48
L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibGlnaHRlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAg
PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBj
bGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRp
ZmZlcmVuY2UtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBh
aXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1leHBlY3RlZCI+
PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1leHBlY3RlZCI+PC9kaXY+Ci0g
ICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRp
diBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im92
ZXJsYXktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXIt
b2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWRvZGdlLWV4cGVjdGVkIj48
L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iY29sb3ItZG9kZ2UtZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9ImNvbG9yLWJ1cm4tZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNz
PSJjb2xvci1idXJuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJoYXJkLWxpZ2h0LWV4cGVj
dGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGFyZC1saWdodC1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9InNvZnQtbGlnaHQtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDwhLS0K
LSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGJsZW5kIG1vZGVzIHRvIHRoaXMgcGFnZSwgYmUgY2Fy
ZWZ1bCBub3QgdG8gZXhjZWVkIDYwMHB4IGluIAotICAgICAgICBoZWlnaHQsIHNpbmNlIER1bXBS
ZW5kZXJUcmVlIGNvbXBhcmVzIDgwMHg2MDAgc25hcHNob3RzIG9mIHRoaXMgcGFnZS4KLSAgICAt
LT4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1tb2Rlcy5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIyZjQwOTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwzMjcgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgYmxlbmQgbW9kZXMgY29tcHV0
ZSBjb2xvciB2YWx1ZXMgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBUaGlzIHRlc3QgcGFz
c2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNh
bWUgY29sb3IuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJX
ZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsK
LSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVh
cmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMg
PiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7
Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZs
b2F0OiBsZWZ0OwotICAgIH0KLSAgICAuZGVzdGluYXRpb24gewotICAgICAgICAvKiBEZXN0aW5h
dGlvbiBjb2xvciAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMzAlLCA1
MCUpOwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAqLwotICAgIC5ub3JtYWwgewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjAp
OwotICAgIH0KLSAgICAvKgotICAgICAgICBUaGUgZXF1YXRpb25zIGJlbG93IHVzZSB0aGUgc3lt
Ym9scyBhbmQgZXF1YXRpb25zIGRlZmluZWQgaW4gdGhlIENTUyBCbGVuZGluZyBhbmQgQ29tcG9z
aXRpbmcgc3BlYywgd2hlcmU6Ci0gICAgICAgICAgICBDbyA9IG91dHB1dCBjb2xvcgotICAgICAg
ICAgICAgQ3MgPSBzb3VyY2UgY29sb3IgKGFrYSAibWl4IGNvbG9yIiwgImNzc19NaXhDb2xvciIp
Ci0gICAgICAgICAgICBDYiA9IGRlc3RpbmF0aW9uIGNvbG9yIChha2EgImJhY2tkcm9wIGNvbG9y
IiwgIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9yIikKLQotICAgICAgICBodHRwczovL2R2Y3Mu
dzMub3JnL2hnL0ZYVEYvcmF3ZmlsZS90aXAvY29tcG9zaXRpbmcvaW5kZXguaHRtbCNnZW5lcmFs
Zm9ybXVsYQotICAgICovCi0gICAgLm5vcm1hbC1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAg
ICAgICAgICBOb3JtYWw6Ci0KLSAgICAgICAgICAgIENvID0gQ3MKLQotICAgICAgICAgICAgciA9
IDAuMAotICAgICAgICAgICAgZyA9IDAuNgotICAgICAgICAgICAgYiA9IDAuNQotICAgICAgICAq
LwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0g
ICAgLm11bHRpcGx5IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1
cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBtdWx0aXBseSBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAubXVsdGlwbHktZXhwZWN0ZWQg
ewotICAgICAgICAvKgotICAgICAgICAgICAgTXVsdGlwbHk6Ci0KLSAgICAgICAgICAgIENvID0g
Q2IgKiBDcwotCi0gICAgICAgICAgICByID0gMS4wICogMC4wID0gMC4wCi0gICAgICAgICAgICBn
ID0gMC4zICogMC42ID0gMC4xOAotICAgICAgICAgICAgYiA9IDAuNSAqIDAuNSA9IDAuMjUKLSAg
ICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCAxOCUsIDI1JSk7Ci0g
ICAgfQotICAgIC5zY3JlZW4gewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIHNjcmVlbiBzb3VyY2UtYXRvcCks
IG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuc2NyZWVuLWV4cGVjdGVk
IHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIFNjcmVlbjoKLQotICAgICAgICAgICAgQ28gPSBD
YiArIENzIC0gQ2IgKiBDcwotCi0gICAgICAgICAgICByID0gMS4wICsgMC4wIC0gMS4wICogMC4w
ID0gMS4wCi0gICAgICAgICAgICBnID0gMC4zICsgMC42IC0gMC4zICogMC42ID0gMC43MgotICAg
ICAgICAgICAgYiA9IDAuNSArIDAuNSAtIDAuNSAqIDAuNSA9IDAuNzUKLQotICAgICAgICAgICAg
VGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2UgdGhl
IDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAw
JSwgNzIlLCA3NSUpOwotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
MjU1LCAxODMsIDE5Mik7Ci0gICAgfQotICAgIC5kYXJrZW4gewotICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRh
cmtlbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAg
ICAuZGFya2VuLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIERhcmtlbjoKLQot
ICAgICAgICAgICAgQ28gPSBtaW4oQ2IsIENzKQotCi0gICAgICAgICAgICByID0gbWluKDEuMCwg
MC4wKSA9IDAuMAotICAgICAgICAgICAgZyA9IG1pbigwLjMsIDAuNikgPSAwLjMKLSAgICAgICAg
ICAgIGIgPSBtaW4oMC41LCAwLjUpID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYigwJSwgMzAlLCA1MCUpOwotICAgIH0KLSAgICAubGlnaHRlbiB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4
LWNvbG9yLmZzJykgbGlnaHRlbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAx
LjApOwotICAgIH0KLSAgICAubGlnaHRlbi1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAg
ICAgICBMaWdodGVuOgotCi0gICAgICAgICAgICBDbyA9IG1heChDYiwgQ3MpCi0KLSAgICAgICAg
ICAgIHIgPSBtYXgoMS4wLCAwLjApID0gMS4wCi0gICAgICAgICAgICBnID0gbWF4KDAuMywgMC42
KSA9IDAuNgotICAgICAgICAgICAgYiA9IG1heCgwLjUsIDAuNSkgPSAwLjUKLSAgICAgICAgKi8K
LSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0g
ICAgLmRpZmZlcmVuY2UgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRpZmZlcmVuY2Ugc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmRpZmZlcmVuY2UtZXhw
ZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgRGlmZmVyZW5jZToKLQotICAgICAgICAg
ICAgQ28gPSBhYnMoQ2IgLSBDcykKLQotICAgICAgICAgICAgciA9IGFicygxLjAgLSAwLjApID0g
MS4wCi0gICAgICAgICAgICBnID0gYWJzKDAuMyAtIDAuNikgPSAwLjMKLSAgICAgICAgICAgIGIg
PSBhYnMoMC41IC0gMC41KSA9IDAuMAotCi0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhlIGNv
bG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoK
LSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDAlLCAzMCUsIDAlKTsKLSAgICAg
ICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgNzcsIDEpOwotICAgIH0K
LSAgICAuZXhjbHVzaW9uIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1p
eCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBleGNsdXNpb24gc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmV4Y2x1c2lvbi1leHBl
Y3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBFeGNsdXNpb246Ci0KLSAgICAgICAgICAg
IENvID0gQ2IgKyBDcyAtIDIgKiBDYiAqIENzCi0KLSAgICAgICAgICAgIHIgPSAxLjAgKyAwLjAg
LSAyLjAgKiAxLjAgKiAwLjAgPSAxLjAKLSAgICAgICAgICAgIGcgPSAwLjMgKyAwLjYgLSAyLjAg
KiAwLjMgKiAwLjYgPSAwLjU0Ci0gICAgICAgICAgICBiID0gMC41ICsgMC41IC0gMi4wICogMC41
ICogMC41ID0gMC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3Vs
YXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDU0JSwgNTAlKTsgCi0gICAgICAgICovCi0g
ICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAg
Lm92ZXJsYXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG92ZXJsYXkgc291cmNlLWF0b3ApLCBtaXhfY29s
b3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLm92ZXJsYXktZXhwZWN0ZWQgewotICAg
ICAgICAvKgotICAgICAgICAgICAgT3ZlcmxheToKLQotICAgICAgICAgICAgQ28gPSBIYXJkTGln
aHQoQ3MsIENiKQotICAgICAgICAgICAgICAgPSBpZihDYiA8PSAwLjUpCi0gICAgICAgICAgICAg
ICAgICAgICBNdWx0aXBseShDcywgMiAqIENiKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAg
ICAgICAgICAgICAgICAgICBTY3JlZW4oQ3MsIDIgKiBDYiAtIDEpCi0gICAgICAgICAgICAgICA9
IGlmKENiIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIENzICogKDIgKiBDYikKLSAgICAg
ICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgQ3MgKyAoMiAqIENiIC0gMSkg
LSAoQ3MgKiAoMiAqIENiIC0gMSkpCi0KLSAgICAgICAgICAgIHIgPSAwICsgKDIgKiAxIC0gMSkg
LSAoMCAqICgyICogMSAtIDEpKSA9IDEKLSAgICAgICAgICAgIGcgPSAwLjYgKiAoMiAqIDAuMykg
PSAwLjM2Ci0gICAgICAgICAgICBiID0gMC41ICogKDIgKiAwLjUpID0gMC41Ci0KLSAgICAgICAg
ICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNl
IHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDEwMCUsIDM2JSwgNTAlKTsKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDI1NSwgOTEsIDEyOCk7Ci0gICAgfQotICAgIC5jb2xvci1kb2RnZSB7Ci0gICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9y
LmZzJykgY29sb3ItZG9kZ2Ugc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4w
KTsKLSAgICB9Ci0gICAgLmNvbG9yLWRvZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAg
ICAgICAgIENvbG9yRG9kZ2U6Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPCAxKQotICAgICAg
ICAgICAgICAgICAgICAgbWluKDEsIENiIC8gKDEgLSBDcykpCi0gICAgICAgICAgICAgICAgIGVs
c2UKLSAgICAgICAgICAgICAgICAgICAgIDEKLQotICAgICAgICAgICAgciA9IG1pbigxLCAxIC8g
KDEgLSAwKSkgPSAxCi0gICAgICAgICAgICBnID0gbWluKDEsIDAuMyAvICgxIC0gMC42KSkgPSAw
Ljc1Ci0gICAgICAgICAgICBiID0gbWluKDEsIDAuNSAvICgxIC0gMC41KSkgPSAxCi0KLSAgICAg
ICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8g
dXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDEwMCUsIDc1JSwgMTAwJSk7Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29s
b3I6IHJnYigyNTUsIDE5MCwgMjU1KTsKLSAgICB9Ci0gICAgLmNvbG9yLWJ1cm4gewotICAgICAg
ICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcycpIGNvbG9yLWJ1cm4gc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC44IDAuOCAwLjgg
MS4wKTsKLSAgICB9Ci0gICAgLmNvbG9yLWJ1cm4tZXhwZWN0ZWQgewotICAgICAgICAvKgotICAg
ICAgICAgICAgQ29sb3JCdXJuOgotCi0gICAgICAgICAgICBDbyA9IGlmKENzID4gMCkKLSAgICAg
ICAgICAgICAgICAgICAgIDEgLSBtaW4oMSwgKDEgLSBDYikgLyBDcykKLSAgICAgICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgMAotCi0gICAgICAgICAgICAgciA9IDEgLSBt
aW4oMSwgKDEgLSAxKSAvIDAuOCkgPSAxCi0gICAgICAgICAgICAgZyA9IDEgLSBtaW4oMSwgKDEg
LSAwLjMpIC8gMC44KSA9IDAuMTI1Ci0gICAgICAgICAgICAgYiA9IDEgLSBtaW4oMSwgKDEgLSAw
LjUpIC8gMC44KSA9IDAuMzc1Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3Ig
Y2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAg
ICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDEyLjUlLCAzNy41JSk7Ci0gICAg
ICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAg
fQotICAgIC5oYXJkLWxpZ2h0IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25l
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBoYXJkLWxpZ2h0IHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5oYXJkLWxpZ2h0
LWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIEhhcmRMaWdodDoKLQotICAgICAg
ICAgICAgQ28gPSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBNdWx0aXBseShD
YiwgMiAqIENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBT
Y3JlZW4oQ2IsIDIgKiBDcyAtMSkKLSAgICAgICAgICAgICAgID0gaWYoQ3MgPD0gMC41KQotICAg
ICAgICAgICAgICAgICAgICAgQ2IgKiAoMiAqIENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0g
ICAgICAgICAgICAgICAgICAgICBDYiArICgyICogQ3MgLSAxKSAtIChDYiAqICgyICogQ3MgLSAx
KSkKLQotICAgICAgICAgICAgciA9IDEgKiAoMiAqIDApID0gMAotICAgICAgICAgICAgZyA9IDAu
MyArICgyICogMC42IC0gMSkgLSAoMC4zICogKDIgKiAwLjYgLSAxKSkgPSAwLjQ0Ci0gICAgICAg
ICAgICBiID0gMC41ICogKDIgKiAwLjUpID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYigwJSwgNDQlLCA1MCUpOwotICAgIH0KLSAgICAuc29mdC1saWdodCB7
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgc29mdC1saWdodCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAg
MC42IDAuNSAxLjApOwotICAgIH0KLSAgICAuc29mdC1saWdodC1leHBlY3RlZCB7Ci0gICAgICAg
IC8qCi0gICAgICAgICAgICBTb2Z0TGlnaHQ6Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPD0g
MC41KQotICAgICAgICAgICAgICAgICAgICAgQ2IgLSAoMSAtIDIgKiBDcykgKiBDYiAqICgxIC0g
Q2IpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIENiICsgKDIg
KiBDcyAtIDEpICogKEQoQ2IpIC0gQ2IpCi0KLSAgICAgICAgICAgIHdpdGgKLQotICAgICAgICAg
ICAgRChDYikgPSBpZihDYiA8PSAwLjI1KQotICAgICAgICAgICAgICAgICAgICAgICAgKDE2ICog
Q2IgLSAxMikgKiBDYiArIDQpICogQ2IKLSAgICAgICAgICAgICAgICAgICAgZWxzZQotICAgICAg
ICAgICAgICAgICAgICAgICAgc3FydChDYikKLQotICAgICAgICAgICAgRC5yID0gc3FydCgxKSA9
IDEKLSAgICAgICAgICAgIEQuZyA9IHNxcnQoMC4zKSA9IDAuNTQ3NzIyNTU3NTA1MTY2Ci0gICAg
ICAgICAgICBELmIgPSBzcXJ0KDAuNSkgPSAwLjcwNzEwNjc4MTE4NjU0OAotICAgICAgICAgICAg
ciA9IDEgLSAoMSAtIDIgKiAwKSAqIDEgKiAoMSAtIDEpID0gMQotICAgICAgICAgICAgZyA9IDAu
MyArICgyICogMC42IC0gMSkgKiAoRC5nIC0gMC4zKSA9IDAuMzQ5NTQ0NTExNTAxMDMzCi0gICAg
ICAgICAgICBiID0gMC41IC0gKDEgLSAyICogMC41KSAqIDAuNSAqICgxIC0gMC41KSA9IDAuNQot
Ci0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhlIGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVz
IHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoKLSAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigxMDAlLCAzNC45NTQ0NTElLCA1MCUpOwotICAgICAgICAqLwotICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA4OSwgMTI4KTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIG5vcm1hbCI+PC9kaXY+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9Im5vcm1hbC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbXVs
dGlwbHkiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJtdWx0aXBseS1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gc2NyZWVuIj48L2Rpdj4KLSAgICAgICAgPGRpdiBj
bGFzcz0ic2NyZWVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBkYXJr
ZW4iPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJkYXJrZW4tZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxk
aXYgY2xhc3M9ImRlc3RpbmF0aW9uIGxpZ2h0ZW4iPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNz
PSJsaWdodGVuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJw
YWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBkaWZmZXJl
bmNlIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZXhjbHVzaW9uIj48L2Rpdj4KLSAgICAgICAgPGRp
diBjbGFzcz0iZXhjbHVzaW9uLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2
IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlv
biBvdmVybGF5Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+
PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gY29sb3ItZG9kZ2UiPjwvZGl2PgotICAgICAg
ICA8ZGl2IGNsYXNzPSJjb2xvci1kb2RnZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0g
ICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVz
dGluYXRpb24gY29sb3ItYnVybiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWJ1
cm4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Yt
c3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIGhhcmQtbGlnaHQiPjwv
ZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJoYXJkLWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAg
ICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBzb2Z0LWxpZ2h0Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0ic29mdC1saWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPCEtLQotICAg
ICAgICBJZiB5b3UgYWRkIG1vcmUgYmxlbmQgbW9kZXMgdG8gdGhpcyBwYWdlLCBiZSBjYXJlZnVs
IG5vdCB0byBleGNlZWQgNjAwcHggaW4gCi0gICAgICAgIGhlaWdodCwgc2luY2UgRHVtcFJlbmRl
clRyZWUgY29tcGFyZXMgODAweDYwMCBzbmFwc2hvdHMgb2YgdGhpcyBwYWdlLgotICAgIC0tPgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLWV4cGVjdGVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2hhbmdlLWJsZW5kLW1v
ZGUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmNlZTUxNS4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY2hhbmdlLWJsZW5kLW1vZGUtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDIw
ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVz
dHMgdGhhdCBhIGN1c3RvbSBmaWx0ZXIgZGV0ZWN0cyBhIGJsZW5kIG1vZGUgY2hhbmdlIGFuZCBw
YWludHMgd2l0aCB0aGUgbmV3IGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8IS0tIAotICAgICAg
ICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRlc3QuCi0gICAgICAgIElmIHRo
ZSB0ZXN0IHBhc3NlcywgeW91IHdpbGwgc2VlIGEgZ3JlZW4gc3F1YXJlLgotICAgIC0tPgotICAg
IDxzdHlsZT4KLSAgICBkaXYgewotICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgIGhlaWdo
dDogMTAwcHg7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAg
IH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdj48L2Rpdj4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jaGFuZ2UtYmxlbmQtbW9kZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFiM2E2NWUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLmh0
bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1NCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1s
PgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgYSBjdXN0b20gZmlsdGVyIGRldGVjdHMg
YSBibGVuZCBtb2RlIGNoYW5nZSBhbmQgcGFpbnRzIHdpdGggdGhlIG5ldyBibGVuZCBtb2RlLjwv
dGl0bGU+Ci0gICAgPCEtLQotICAgICAgICBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSB3aWxsIHNl
ZSBhIGdyZWVuIHNxdWFyZS4KLSAgICAgICAgVGhpcyB0ZXN0IGNhbiBydW4gaW4gRFJUIG9yIG1h
bnVhbGx5LgotICAgIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNl
KCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEi
KTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAg
ICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAgICAgICAg
ICB2YXIgZmlsdGVyVGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbHRlclRhcmdl
dCIpOwotCi0gICAgICAgICAgICAvLyBJbml0aWFsbHksIGFwcGx5IGEgY3VzdG9tIGZpbHRlciBv
biB0aGUgZGl2IHVzaW5nIGJsZW5kIG1vZGUgbXVsdGlwbHkuCi0gICAgICAgICAgICAvLyBUaGUg
cmVzdWx0IHNob3VsZCBiZSBhIGJsYWNrIHNxdWFyZSAocmVkIGJhY2tncm91bmQgKiBncmVlbiBt
aXggY29sb3IgPSBibGFjaykuCi0gICAgICAgICAgICBmaWx0ZXJUYXJnZXQuY2xhc3NOYW1lID0g
Im11bHRpcGx5IjsKLQotICAgICAgICAgICAgLy8gVHJpZ2dlciBhIHN0eWxlIHJlc29sdXRpb24g
d2l0aCBibGVuZCBtb2RlIG11bHRpcGx5LgotICAgICAgICAgICAgLy8gVGhpcyBpcyByZXF1aXJl
ZCB0byByZXByb2R1Y2UgdGhpcyB0ZXN0J3MgYXNzb2NpYXRlZCBidWcuCi0gICAgICAgICAgICBm
aWx0ZXJUYXJnZXQuY2xpZW50V2lkdGg7Ci0KLSAgICAgICAgICAgIC8vIENoYW5nZSB0aGUgYmxl
bmQgbW9kZSB0byBub3JtYWwsIGFuZCBrZWVwIGFsbCBvdGhlciBmaWx0ZXIgcGFyYW1ldGVycyBp
ZGVudGljYWwuCi0gICAgICAgICAgICAvLyBUaGUgcmVzdWx0IHNob3VsZCBiZSBhIGdyZWVuIHNx
dWFyZSBpZiB0aGUgYmxlbmQgbW9kZSBjaGFuZ2VkIGNvcnJlY3RseS4gICAgICAgICAgICAKLSAg
ICAgICAgICAgIGZpbHRlclRhcmdldC5jbGFzc05hbWUgPSAibm9ybWFsIjsKLQotICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4K
LSAgICAjZmlsdGVyVGFyZ2V0IHsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICBoZWln
aHQ6IDEwMHB4OwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgfQotICAgIC5t
dWx0aXBseSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbXVsdGlwbHkgc291cmNlLWF0b3ApLCBtaXhfY29s
b3IgMCAxIDAgMSk7Ci0gICAgfQotICAgIC5ub3JtYWwgewotICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1h
bCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwIDEgMCAxKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LSAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9yZXBhaW50L3Jlc291cmNlcy9yZXBhaW50
LmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8
ZGl2IGlkPSJmaWx0ZXJUYXJnZXQiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNz
cy1jb2xvci1tYXRyaXgtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LWV4cGVjdGVkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY2NmI0ZTEuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xv
ci1tYXRyaXgtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLTwh
RE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPG1ldGEgY2hhcnNl
dD0iVVRGLTgiPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGNzc19jb2xvck1hdHJpeCBtdWx0aXBs
aWNhdGlvbiByZXN1bHQgaXMgY2xhbXBlZCB0byAxPC90aXRsZT4KLSAgICA8c3R5bGU+Ci0gICAg
ICAgICNsb25lbHlkaXYgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOwotICAg
ICAgICAgICAgYmFja2dyb3VuZDogcmdiKDUwJSwgNTAlLCA1MCUpOwotICAgICAgICB9Ci0gICAg
PC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImxvbmVseWRpdiI+PC9kaXY+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1uZWdhdGl2ZS1leHBl
Y3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWNsYW1wLWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNzIzMmQ4Yy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1u
ZWdhdGl2ZS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTggKzAsMCBAQAotPCFE
T0NUWVBFIEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8bWV0YSBjaGFyc2V0
PSJVVEYtOCI+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3NzX2NvbG9yTWF0cml4IG11bHRpcGxp
Y2F0aW9uIHJlc3VsdCBpcyBjbGFtcGVkIHRvIDA8L3RpdGxlPgotICAgIDxzdHlsZT4KLSAgICAg
ICAgI2xvbmVseWRpdiB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBo
ZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0gICAg
ICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMCwgMCwgMCk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxl
PgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0ibG9uZWx5ZGl2Ij48L2Rpdj4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9y
LW1hdHJpeC1uZWdhdGl2ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiOWY0
NzM1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw1NCArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9ImVuIj4KLTxo
ZWFkPgotICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBj
c3NfY29sb3JNYXRyaXggbXVsdGlwbGljYXRpb24gcmVzdWx0IGlzIGNsYW1wZWQgdG8gMDwvdGl0
bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAg
ICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKLSAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRo
ZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5v
dGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAg
ICAgI2xvbmVseWRpdiB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBo
ZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0gICAg
ICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjAlLCAyMCUsIDIwJSk7Ci0gICAgICAgICAgICAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2N1c3RvbS1maWx0
ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1uZWdhdGl2ZS5mcycpIG11bHRpcGx5IHNvdXJjZS1h
dG9wKSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJy
dW5UZXN0KCkiPgotICAgIDwhLS0KLSAgICAgICAgTGV0OgotICAgICAgICBjbGFtcCh2YWx1ZSkg
PSBBIGZ1bmN0aW9uIHRoYXQgY2xhbXBzIHZhbHVlcyBiZXR3ZWVuIDAuMCBhbmQgMS4wCi0gICAg
ICAgIGVsZW1lbnRDb2xvciA9IHZlYzQoMC4yLCAwLjIsIDAuMiwgMS4wKQotICAgICAgICBjc3Nf
Q29sb3JNYXRyaXggPSBNYXRyaXggd2l0aCBkaWFnb25hbCAoLTEwLjAsIC0xMC4wLCAtMTAuMCwg
MS4wKQotICAgICAgICBjc3NfTWl4Q29sb3IgPSB2ZWM0KC0wLjUsIC0wLjUsIC0wLjUsIDEuMCkK
LQotICAgICAgICBDb3JyZWN0IGNsYW1wZWQgcmVzdWx0OgotICAgICAgICByZXN1bHQgPSBjbGFt
cChjc3NfQ29sb3JNYXRyaXggKiBlbGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAg
IHJlc3VsdC5yID0gY2xhbXAoLTEwLjAgKiAwLjIpICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0g
Y2xhbXAoLTIuMCkgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIgPSAwLjAgKiAtMC41Ci0gICAgICAg
IHJlc3VsdC5yID0gMC4wCi0gICAgICAgIHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9
PiBibGFjawotCi0gICAgICAgIEluY29ycmVjdCB1bmNsYW1wZWQgcmVzdWx0OgotICAgICAgICBy
ZXN1bHQgPSAoY3NzX0NvbG9yTWF0cml4ICogZWxlbWVudENvbG9yKSAqIGNzc19NaXhDb2xvcgot
ICAgICAgICByZXN1bHQuciA9ICgtMTAuMCAqIDAuMikgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIg
PSAtMi4wICogLTAuNQotICAgICAgICByZXN1bHQuciA9IDEuMAotICAgICAgICByZXN1bHQuciA9
IHJlc3VsdC5nID0gcmVzdWx0LmIgPT4gd2hpdGUKLSAgICAtLT4KLSAgICA8ZGl2IGlkPSJsb25l
bHlkaXYiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgu
aHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFt
cC1jc3MtY29sb3ItbWF0cml4Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZh
MTYwYTguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDU0ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0g
ICAgPG1ldGEgY2hhcnNldD0iVVRGLTgiPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGNzc19jb2xv
ck1hdHJpeCBtdWx0aXBsaWNhdGlvbiByZXN1bHQgaXMgY2xhbXBlZCB0byAxPC90aXRsZT4KLSAg
ICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmls
dGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5j
dGlvbiBydW5UZXN0KCkgewotICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3Rz
IGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9u
ZSgpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAjbG9u
ZWx5ZGl2IHsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDog
MTAwcHg7Ci0gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICAgICAgICAg
IGJhY2tncm91bmQ6IHJnYigyMCUsIDIwJSwgMjAlKTsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1jbGFt
cC1jc3MtY29sb3ItbWF0cml4LmZzJykgbXVsdGlwbHkgc291cmNlLWF0b3ApKTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAg
PCEtLQotICAgICAgICBMZXQ6Ci0gICAgICAgIGNsYW1wKHZhbHVlKSA9IEEgZnVuY3Rpb24gdGhh
dCBjbGFtcHMgdmFsdWVzIGJldHdlZW4gMC4wIGFuZCAxLjAKLSAgICAgICAgZWxlbWVudENvbG9y
ID0gdmVjNCgwLjIsIDAuMiwgMC4yLCAxLjApCi0gICAgICAgIGNzc19Db2xvck1hdHJpeCA9IE1h
dHJpeCB3aXRoIGRpYWdvbmFsICgxMC4wLCAxMC4wLCAxMC4wLCAxMC4wKQotICAgICAgICBjc3Nf
TWl4Q29sb3IgPSB2ZWM0KDAuNSwgMC41LCAwLjUsIDEuMCkKLQotICAgICAgICBDb3JyZWN0IGNs
YW1wZWQgcmVzdWx0OgotICAgICAgICByZXN1bHQgPSBjbGFtcChjc3NfQ29sb3JNYXRyaXggKiBl
bGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAgIHJlc3VsdC5yID0gY2xhbXAoMTAu
MCAqIDAuMikgKiAwLjUKLSAgICAgICAgcmVzdWx0LnIgPSBjbGFtcCgyLjApICogMC41Ci0gICAg
ICAgIHJlc3VsdC5yID0gMS4wICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0gMC41Ci0gICAgICAg
IHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9PiBncmF5Ci0KLSAgICAgICAgSW5jb3Jy
ZWN0IHVuY2xhbXBlZCByZXN1bHQ6Ci0gICAgICAgIHJlc3VsdCA9IChjc3NfQ29sb3JNYXRyaXgg
KiBlbGVtZW50Q29sb3IpICogY3NzX01peENvbG9yCi0gICAgICAgIHJlc3VsdC5yID0gKDEwLjAg
KiAwLjIpICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0gMi4wICogMC41Ci0gICAgICAgIHJlc3Vs
dC5yID0gMS4wCi0gICAgICAgIHJlc3VsdC5yID0gcmVzdWx0LmcgPSByZXN1bHQuYiA9PiB3aGl0
ZQotICAgIC0tPgotICAgIDxkaXYgaWQ9ImxvbmVseWRpdiI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItY2xhbXAtY3NzLW1peC1jb2xvci1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItZXhwZWN0
ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWEwYjY1ZC4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAt
Y3NzLW1peC1jb2xvci1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAsMCBA
QAotPCFET0NUWVBFIEhUTUw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0
IGNzc19NaXhDb2xvciB2YWx1ZXMgZ3JlYXRlciB0aGFuIDEuMCBhcmUgY2xhbXBlZCB0byAxLjAg
YmVmb3JlIGJsZW5kaW5nIGFuZCBjb21wb3NpdGluZy48L3RpdGxlPgotICAgIDwhLS0KLSAgICAg
ICAgVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZpbGUgZm9yIHRoZSB0ZXN0LgotICAgICAgICBUaGUg
dGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBncmVlbiBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMg
YSBkaWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0IGZhaWxzLgotICAgIC0tPgotICAgIDxzdHlsZSB0
eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHJnYigxMCUsIDUwJSwgMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLW5lZ2F0aXZlLWV4cGVjdGVkLmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAt
Y3NzLW1peC1jb2xvci1uZWdhdGl2ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAxMzkxMTU3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLW5lZ2F0aXZlLWV4cGVj
dGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyMCArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4K
LTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgbmVnYXRpdmUgY3NzX01peENv
bG9yIHZhbHVlcyBhcmUgY2xhbXBlZCB0byAwLjAgYmVmb3JlIGJsZW5kaW5nIGFuZCBjb21wb3Np
dGluZy48L3RpdGxlPgotICAgIDwhLS0KLSAgICAgICAgVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZp
bGUgZm9yIHRoZSB0ZXN0LgotICAgICAgICBUaGUgdGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBi
bGFjayBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMgYSBkaWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0
IGZhaWxzLgotICAgIC0tPgotICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNm
aWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwJSwgMCUs
IDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBp
ZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLW1p
eC1jb2xvci1uZWdhdGl2ZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItbmVnYXRpdmUuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNDA2ZTQzNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLW1peC1jb2xvci1uZWdh
dGl2ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAotPCFET0NUWVBFIEhUTUw+
Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IG5lZ2F0aXZlIGNzc19NaXhD
b2xvciB2YWx1ZXMgYXJlIGNsYW1wZWQgdG8gMC4wIGJlZm9yZSBibGVuZGluZyBhbmQgY29tcG9z
aXRpbmcuPC90aXRsZT4KLSAgICA8IS0tIFRoZSB0ZXN0IHBhc3NlcyBpZiB0aGVyZSBpcyBhIGJs
YWNrIHNxdWFyZS4gSWYgdGhlIHNxdWFyZSBpcyBhIGRpZmZlcmVudCBjb2xvciwgdGhlIHRlc3Qg
ZmFpbHMuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikg
ewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQot
Ci0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7Ci0gICAgICAgICAgICAvLyBXZSBuZWVkIHRv
IHJ1biB0aGUgdGVzdCBhZnRlciB0aGUgc2hhZGVycyBhcmUgZG93bmxvYWRlZC4KLSAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGUg
dHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjZmlsdGVyLXRhcmdldCB7Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMCUsIDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAx
MDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGRp
ZmZlcmVuY2UgY29weSksIG1peF9jb2xvciAxLjAgLTEuMCAtMi4wIDEuMCk7Ci0gICAgICAgIH0K
LSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgIDwh
LS0KLSAgICAgICAgSW5pdGlhbCB2YWx1ZXM6Ci0gICAgICAgICAgICBDYiA9ICgxLjAsIDAuMCwg
MC4wKQotICAgICAgICAgICAgQ3MgPSAoMS4wLCAtMS4wLCAtMi4wKQotCi0gICAgICAgIENvcnJl
Y3QgcmVzdWx0OgotCi0gICAgICAgICAgICBDbGFtcCBDczoKLSAgICAgICAgICAgICAgICBDcyA9
ICgwLjUsIDAuMCwgMC4wKQotCi0gICAgICAgICAgICBEaWZmZXJlbmNlIGJsZW5kIG1vZGU6Ci0g
ICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gYWJzKENiIC0gQ3MpCi0gICAgICAgICAgICAgICAg
QihDYiwgQ3MpID0gYWJzKCgxLjAsIDAuMCwgMC4wKSAtICgxLjAsIDAuMCwgMC4wKSkKLSAgICAg
ICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAwLjAsIDAuMCkgPT4gQmxhY2sKLQotICAgICAg
ICBJbmNvcnJlY3QgcmVzdWx0OgotCi0gICAgICAgICAgICBVc2UgdW5jbGFtcGVkIENzOgotICAg
ICAgICAgICAgICAgIENzID0gKDAuNSwgLTEuMCwgLTIuMCkKLQotICAgICAgICAgICAgRGlmZmVy
ZW5jZSBibGVuZCBtb2RlOgotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9IGFicyhDYiAtIENz
KQotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9IGFicygoMS4wLCAwLjAsIDAuMCkgLSAoMS4w
LCAtMS4wLCAtMi4wKSkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAxLjAsIDIu
MCkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMC4wLCAxLjAsIDEuMCkgPT4gQ3lhbgot
Ci0gICAgICAgIElmIHRoZSBjdXN0b20gZmlsdGVyIGZhaWxzIHRvIGFwcGx5LCB0aGUgcmVzdWx0
IHdpbGwgc2ltcGx5IGJlIHRoZSBiYWNrZHJvcCBjb2xvcjoKLSAgICAgICAgICAgICAgICBDYiA9
ICgxLjAsIDAuMCwgMC4wKSA9PiBSZWQKLSAgICAtLT4KLSAgICA8ZGl2IGlkPSJmaWx0ZXItdGFy
Z2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LW1peC1jb2xvci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMDYzZjIyLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci1jbGFtcC1jc3MtbWl4LWNvbG9yLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1OSArMCwwIEBA
Ci08IURPQ1RZUEUgSFRNTD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQg
Y3NzX01peENvbG9yIHZhbHVlcyBncmVhdGVyIHRoYW4gMS4wIGFyZSBjbGFtcGVkIHRvIDEuMCBi
ZWZvcmUgYmxlbmRpbmcgYW5kIGNvbXBvc2l0aW5nLjwvdGl0bGU+Ci0gICAgPCEtLSBUaGUgdGVz
dCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBncmVlbiBzcXVhcmUuIElmIHRoZSBzcXVhcmUgaXMgYSBk
aWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0IGZhaWxzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkgewot
ICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3QgYWZ0ZXIgdGhlIHNoYWRlcnMg
YXJlIGRvd25sb2FkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0g
ICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2ZpbHRl
ci10YXJnZXQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwJSwgNTAlLCAx
MDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIG11bHRpcGx5IGNvcHkpLCBtaXhfY29sb3IgMTAuMCAx
LjAgMC4wIDEuMCk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25s
b2FkPSJydW5UZXN0KCkiPgotICAgIDwhLS0KLSAgICAgICAgSW5pdGlhbCB2YWx1ZXM6Ci0gICAg
ICAgICAgICBDYiA9ICgwLjEsIDAuNSwgMS4wKQotICAgICAgICAgICAgQ3MgPSAoMTAuMCwgMS4w
LCAwLjApCi0KLSAgICAgICAgQ29ycmVjdCByZXN1bHQ6Ci0KLSAgICAgICAgICAgIENsYW1wIENz
OgotICAgICAgICAgICAgICAgIENzID0gKDEuMCwgMS4wLCAwLjApCi0KLSAgICAgICAgICAgIE11
bHRpcGx5IGJsZW5kIG1vZGU6Ci0gICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gQ2IgKiBDcwot
ICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMS4wKSAqICgxLjAsIDEuMCwg
MC4wKQotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMC4wKSA9PiBHcmVl
bgotCi0gICAgICAgIEluY29ycmVjdCByZXN1bHQ6Ci0KLSAgICAgICAgICAgIFVzZSB1bmNsYW1w
ZWQgQ3M6Ci0gICAgICAgICAgICAgICAgQ3MgPSAoMTAuMCwgMS4wLCAwLjApCi0KLSAgICAgICAg
ICAgIE11bHRpcGx5IGJsZW5kIG1vZGU6Ci0gICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gQ2Ig
KiBDcwotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9ICgwLjEsIDAuNSwgMS4wKSAqICgxMC4w
LCAxLjAsIDAuMCkKLSAgICAgICAgICAgICAgICBCKENiLCBDcykgPSAoMS4wLCAwLjUsIDAuMCkg
PT4gT3JhbmdlCi0KLSAgICAgICAgSWYgdGhlIGN1c3RvbSBmaWx0ZXIgZmFpbHMgdG8gYXBwbHks
IHRoZSByZXN1bHQgd2lsbCBzaW1wbHkgYmUgdGhlIGJhY2tkcm9wIGNvbG9yOgotICAgICAgICAg
ICAgICAgIENiID0gKDAuMSwgMC41LCAxLjApID0+IEJsdWUKLSAgICAtLT4KLSAgICA8ZGl2IGlk
PSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29sb3ItZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA4ZTk4ZWE0Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1leHBlY3RlZC5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8
aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3RzIGNvbG9yIHZhbHVlcyBpbiBjdXN0b20gZmlsdGVy
czwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNmaWx0ZXJ0ZXN0Ym94IHsK
LSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgICAgIHdpZHRoOiAx
MDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkg
b25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rp
dj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnBuZyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1tYXRyaXgt
ZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1M2NkOGY1YzgxNzBj
NmQ3ZGE3ZjI3ZTQwYTQyNTIyNTk2MmExZDliLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpsaXRl
cmFsIDExMTk5CnpjbWVITllmdXdjNnlBaSQtfiRaV0RVPjNfcUFpTHdMMTc/OGw0JFVPVEpUWHZa
QmZ3cHM1Jmh2ZmcoaGJVfjgkdgp6aCs0Nn1yRC1iSUdMbndnM1FEcTM+KT5OKnF9YkFfa3dnVmFx
JEZUTTB+QG1HcF9hWHdfRnJmRyhWNnxsPGM0JFoKeklwNnYySWR7TCE/ajslWGdHV1YtIVowajJl
TD5uWDM9ODAzNzt7eG5BZ21ueWFIa2FoT3YjX1NEcXImTU0jKGw9CnohRnlPZFUmNHp8TlN1K2xl
cjk2UTQyZmk4VnRnVm1kQno2R0NjYjNEYGdKcSF6Zl8ldFZSMXstKGBMVzVvelo9Tgp6KGJpNDcr
TzlwfEV9UG5NTSlTcSNNYHpXdEo5UUgyKVI1VX1xMzIpVW5RX0gpTl48Wn0lK3ZqdyZocHpFPnJS
LUwKenBBbWlVQWhueDI0NkREfFV5R0JaVFM8bTtMQEpFSVdDZ0p+QWA2cTVuUHIpPGJ+ZCU1IWIr
OF9GPkdQYlUqQTdsCnomUlQ1MThwNitxYEJ+PHVgZHsrKnZ6ezR2e259fldyXkFsSEZ5SUhILXpS
MytjJUVxYnl6YVN2ZXJNSjF2RnU0fAp6dE1BXmcpY2Z3YDtgZVFgeS19JTAkd3AwNHZ7MTFsd3lD
KWhfbUxqOEZAPFE7N2A/cXMoWX44PD9+JFk4LT1ram4KekpCUT0qNDdzOT08cDskaEEpOUI+OT92
I2xkfVl9PFlKcmArTjUjbEhgYzMzUURvZXtDIzU8NXVOaUM9aFRVY1pFCnp3WT00XzxRWHRTVXYh
ND9NN1BhcTdLJTZ7Q1AjST1kVFFDWTtsMD8mSUpoUTVDUX1PPlgjXnZuSnopakVsMWtuJQp6Rnll
amhCNVM1I3BqfTxMYV49ZGhsUFNjVlc/YmQldFdyaTEqRVB4O3AzNUotbFRIP3lvODNgQWUmRXQ7
ajElVmMKenZpfmotNmxDPTF7XjBBb0Y2JH5ObSFqMU1Ze35fMGl2UnpGYkhXMU1aPW1vdUc2S0Zi
PjM+SmpQb0l7ZiRfaDdpCno0SGY9YjsqfSVEPzkyMDw5WTZlO1VIPmhsdnJlandwKHdLQ01We3pw
X3BKO0hEYSNkcj9qT05lZWkzQFN7a0BPRwp6MDt1MWBtZCo7aitpZ3x+VTJQaVc/Nz0jciF6JGte
RDBGZGFxeUtNZDtVQU52I31XT3M9PCQpd0EqdEBXJVFHaHcKeithRnZsRDxuK2tpfl9tVVNAQWZU
Q144Q3RnS0Q/SFpJWiF5diU5VE4jJT03bXFLPSR6bVJxbVJOKmpnX24xTTYrCnpaPnxXTE9yYX1Q
MDlnaG5FVGs0aG1JUSF6JVF0emtzSTw8fTtoYXYjNSsqOGJPKF5nQWstb2w8dEY5NyQkdHMqRQp6
RWhzM2tPNil7fm5BPUN1NWV+ez07SipreVd9bVkjbVZzaCEyQDI9YmUwQGBtKm1zKT9YOXBMTE1D
Xm1KaSM8MHUKekVIMzNwQDl4Kmc2VHQ8bzRxWD97UU1qTzNePEJta3BEJXdCTWZtPCk3SjAod0Nl
MnctQFFIcF5hNnVKcGFXNCMpCnpQTlhzdkw0Uj1PY1AjVSgwYCFOQlkmR1ZXPDR9TDdpOTYpaUE5
UWVfaCoyWWA0TFE7JURFWHs0NFN4Tj4yRkl7dgp6V2hgfk51fkh8JSpKLTxYM2MxZVVPOFoqUEtL
bT16bEZVMH5SIU4xeC1GPzl2TUtvJVJDR1B1JFdkZXMpVz4pJlYKellOT3t0UyMoSGhxMDZabD59
P1dQeHQmSH5iZ3tqck83VnV2cXtZZU44bCg1PUVpTT5UQ314ZS0tNGF1S19+Z0xQCnowclNpOTBJ
SDQqclZxOzJ6WjhXcHZpenIzQUk/eihxUk8tRDQrQVhtVGUtdCs5NkZLIz56Iz1UcGZYJG95dnZ1
JAp6TDtZZUlgK20lSlB4cG1mZDMlKXVBQUVZTj80OyptSVR6MDU/RyM2M3ZBcykrM3RYbCtaRFhG
Ykt+dj5eUW1YfWMKencwaCNuOWhwUCN2OHlgO2dqRkxwPmkrbWA4KDZqPCRPS0VHT0FGd0BTeCN9
ODRyTUVmdG8qVW1scndQd2tCMDEkCnpnPF5eWklkMj1WQlh2ejVQPylqb2hhZU4yc1FpU2dwNVok
Y1c1JH1qazVJYmNENDw9QEh6azxMckYwNztWOGd8egp6Q1RjSHNlS3MpOGAoJHxwOyNVaS08Zm00
a1VNJDR7NlZKfnozMjZLMzVwXld0Rn4xcTZjZWx4dE48NCUtZFBtUlkKenpTZzlZLWt0fG5rTGdS
aXkwR2pXeStxZUJ7cWBQYyh+bjdgbDd2Qk9jRXpgdjw8MXxJdzdBfEBLMnx1YFE9T1p3CnpibDdV
RF5kd1F1VTBaQkJeX092TlpFY3F9bXc0RWNEYig1U2ZsMWV5M3cxKiNtK1Y4dCFmZ2V1PTFVei1Q
Sio5Sgp6T19rJGZuOH4tQjU1JUZGWSNJIyt0aTJue0xJfXUpQ35tIVI1YW5YdTF5Rkxnek9XTlAk
JWxreHVKKGxwNiEjcHMKemktYVlQTE5edm1CO2RwXiZZTyZVJU9+Y2pPeXY9fjVOKUwpNUl8JlYh
KU02MWp5PUByJTtsQUhzTDB0SS1iNzBoCnpYTUFFWmlhe2hjVXxVPyV7SmY4WitJPC1+QTZkTiVz
cThzPFk3I3xYOV8rdlB0fGJWQzlTcDtgYENLSlJfRXBHaQp6Y1NJeWc7fHM3IURFezBwej5rNFBP
RnhRMUpXMnFZZEIkYV55QnVjb002WWdAYGwwJVhpdCY/bXdJNSNOMGkza3AKejNXVVRSdSElQHJs
I1Z6Smgjb244SVRYYmYhMzxvVyoqcGM2WiFzaURnRj1Ic0dsZkdSOXxuYHxET2Y0cFh4YTRpCnpW
Rmw0NlMhSk5fREkpc3YjJD9lcVNfWUg4PUVEO2R7cD4/TzVNcmhEUT9pUGQ0cD4zN2JpaWNNZFd0
QkFtSlZwPwp6MEpLK0hJLXNRazVTblN9ZlIreTZsPnt2dmFBQGZPVWZhPnEwV0JUQ1lmZjReMng4
T0gwV0JUQ1dUZDVvPU8tUE0KYmBtbCRoVSYkMiU8eVFEYkV8eHd3QmR1O3UmZHhzcHVeTSZoCgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWNvbG9yLW1hdHJpeC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnR4dAor
KysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLW1hdHJpeC5odG1sIGIvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLW1hdHJpeC5odG1s
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzg1YTEwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1tYXRyaXgu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCBjc3NfQ29sb3JNYXRyaXguPC90aXRsZT4KLSAg
ICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgdGhlIHJlZmVyZW5jZSBp
bWFnZSBhcyBncmF5c2NhbGUuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVm
ZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
IH0KLSAgICAgICAgCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAg
ICAgICAgICAvLyBSdW4gdGhlIHRlc3QgYWZ0ZXIgdGhlIGltYWdlIGxvYWRzLgotICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotPC9oZWFkPgotPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBj
dXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvZ3JheXNjYWxlLWNvbG9yLW1hdHJpeC5m
cycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5n
Ij4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDIwZTlkNWYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MiAr
MCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0
bGU+VGVzdHMgY29sb3IgdmFsdWVzIGluIGN1c3RvbSBmaWx0ZXJzPC90aXRsZT4KLSAgICAgICAg
PHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAg
IH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAg
ICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9h
ZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQot
ICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAg
ICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAg
ICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmVkOwotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSB1cmwo
Jy4uL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvcnMuZnMnKSwKLSAgICAgICAgICAgICAgICAgICAg
YzEgcmdiKDAsIDI1NSwgMCksCi0gICAgICAgICAgICAgICAgICAgIGMyIHJnYmEoMCwgMjU1LCAw
LCAxLjApLAotICAgICAgICAgICAgICAgICAgICBjMyBsaW1lLAotICAgICAgICAgICAgICAgICAg
ICBjNCBoc2woMTIwLCAxMDAlLCA1MCUpLAotICAgICAgICAgICAgICAgICAgICBjNSBoc2xhKDEy
MCwgMTAwJSwgNTAlLCAxLjApLAotICAgICAgICAgICAgICAgICAgICBjNiAjMDBGRjAwCi0gICAg
ICAgICAgICAgICAgKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hl
YWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAg
ICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVkIGxpbWUgYnkgZnJhZ21lbnQtY29s
b3JzLmZzLCBhIGZyYWdtZW50IHNoYWRlci4KLSAgICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYg
c3RheXMgcmVkLgotICAgICAgICAtLT4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+
PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJj
ZS1hbHBoYS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS1leHBlY3RlZC5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYjJmMmIwLi4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUt
ZnJhY3Rpb25hbC1zb3VyY2UtYWxwaGEtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDMzICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+
VGVzdHMgdGhlIHNvdXJjZS1hdG9wIGNvbXBvc2l0ZSBvcGVyYXRvciB3aGVuIHNvdXJjZSBhbHBo
YSBpcyBhIGZyYWN0aW9uYWwgdmFsdWUuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMg
aXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFz
c2VzIGlmIGVhY2ggaG9yaXpvbnRhbCBwYWlyIG9mIHNxdWFyZXMgYXJlIGV4YWN0bHkgdGhlIHNh
bWUgY29sb3IuCi0gICAgICAgIFRoZSB0ZXN0IGZpbGUgZGVzY3JpYmVzIGhvdyB0aGUgY29sb3Ig
dmFsdWVzIGluIHRoaXMgcmVmZXJlbmNlIGZpbGUgYXJlIGNvbXB1dGVkLgotICAgIC0tPgotICAg
IDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVhcmVzIHsKLSAgICAgICAgY2xlYXI6IGJvdGg7Ci0g
ICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYgewotICAgICAgICAvKiBTcXVhcmUgc2l6
ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7Ci0gICAgICAgIGhlaWdodDogMjBweDsKLSAgICAg
ICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZsb2F0OiBsZWZ0OwotICAgIH0KLSAgICAvKiBDb21w
b3NpdGUgb3BlcmF0b3JzICovCi0gICAgLnNvdXJjZS1hdG9wLWV4cGVjdGVkIHsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDE3OSwgMjE3LCAxOTIpOwotICAgIH0KLSAgICA8L3N0eWxl
PgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0ic291cmNlLWF0b3AtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8
ZGl2IGNsYXNzPSJzb3VyY2UtYXRvcC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLWZyYWN0aW9uYWwtc291cmNlLWFscGhhLmh0bWwgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLWZy
YWN0aW9uYWwtc291cmNlLWFscGhhLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDFlYjViYWYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsNzEgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGUgc291cmNlLWF0b3AgY29tcG9zaXRlIG9wZXJhdG9yIHdo
ZW4gc291cmNlIGFscGhhIGlzIGEgZnJhY3Rpb25hbCB2YWx1ZS48L3RpdGxlPgotICAgIDwhLS0g
VGhpcyB0ZXN0IHBhc3NlcyBpZiBlYWNoIGhvcml6b250YWwgcGFpciBvZiBzcXVhcmVzIGFyZSBl
eGFjdGx5IHRoZSBzYW1lIGNvbG9yLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRl
UHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5h
YmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRy
dWUpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC5wYWlyLW9m
LXNxdWFyZXMgewotICAgICAgICBjbGVhcjogYm90aDsKLSAgICB9Ci0gICAgLnBhaXItb2Ytc3F1
YXJlcyA+IGRpdiB7Ci0gICAgICAgIC8qIFNxdWFyZSBzaXplLiAqLwotICAgICAgICB3aWR0aDog
MjBweDsKLSAgICAgICAgaGVpZ2h0OiAyMHB4OwotICAgICAgICBtYXJnaW46IDJweDsKLSAgICAg
ICAgZmxvYXQ6IGxlZnQ7Ci0gICAgfQotICAgIC5kZXN0aW5hdGlvbiB7Ci0gICAgICAgIC8qIERl
c3RpbmF0aW9uIGNvbG9yICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwJSwg
NDAlLCA1MCUsIDAuNSk7Ci0gICAgfQotICAgIC8qIENvbXBvc2l0ZSBvcGVyYXRvcnMgKi8KLSAg
ICAvKgotICAgICAgICBUaGUgZXF1YXRpb25zIGJlbG93IHVzZSB0aGUgc3ltYm9scyBhbmQgZXF1
YXRpb25zIGRlZmluZWQgaW4gdGhlIENTUyBCbGVuZGluZyBhbmQgQ29tcG9zaXRpbmcgc3BlYywg
d2hlcmU6Ci0gICAgICAgICAgICBDbyA9IG91dHB1dCBjb2xvcgotICAgICAgICAgICAgQ3MgPSBz
b3VyY2UgY29sb3IgKGFrYSAibWl4IGNvbG9yIiwgImNzc19NaXhDb2xvciIpCi0gICAgICAgICAg
ICBDYiA9IGRlc3RpbmF0aW9uIGNvbG9yIChha2EgImJhY2tkcm9wIGNvbG9yIiwgIm9yaWdpbmFs
IERPTSBlbGVtZW50IGNvbG9yIikKLQotICAgICAgICAgICAgY28gPSBhcyB4IEZhIHggQ3MgKyBh
YiB4IEZiIHggQ2IKLSAgICAgICAgICAgIGFvID0gYXMgeCAxICsgYWIgeCAoMSAtIGFzKQotICAg
ICAgICAgICAgQ28gPSBjbyAvIGFvCi0KLSAgICAgICAgaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy9G
WFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwjZ2VuZXJhbGZvcm11bGEKLSAg
ICAqLwotICAgIC5zb3VyY2UtYXRvcCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
bm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjkgMC41IDAuNik7Ci0gICAgfQotICAgIC5zb3VyY2UtYXRv
cC1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBTb3VyY2VBdG9wOgotCi0gICAg
ICAgICAgICBGYSA9IGFiOyBGYiA9IDEgLSBhcwotICAgICAgICAgICAgY28gPSBhcyB4IENzIHgg
YWIgKyBhYiB4IENiIHggKDEgLSBhcykKLSAgICAgICAgICAgIGFvID0gYXMgeCBhYiArIGFiIHgg
KDEgLSBhcykKLSAgICAgICAgICAgIENvID0gY28gLyBhbwotCi0gICAgICAgICAgICBhID0gMC42
IHggMSArIDAuNSB4ICgxIC0gMC42KSA9IDAuNQotICAgICAgICAgICAgciA9ICgwLjYgeCAwIHgg
MC41ICsgMC41IHggMSB4ICgxIC0gMC42KSkgLyBhID0gMC40Ci0gICAgICAgICAgICBnID0gKDAu
NiB4IDAuOSB4IDAuNSArIDAuNSB4IDAuNCB4ICgxIC0gMC42KSkgLyBhID0gMC43Ci0gICAgICAg
ICAgICBiID0gKDAuNiB4IDAuNSB4IDAuNSArIDAuNSB4IDAuNSB4ICgxIC0gMC42KSkgLyBhID0g
MC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVx
dWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmdiYSg0MCUsIDcwJSwgNTAlLCAwLjUpOwotICAgICAgICAqLwotICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc5LCAyMTcsIDE5Mik7Ci0gICAgfQotICAgIDwvc3R5
bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgot
ICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2UtYXRvcCI+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9InNvdXJjZS1hdG9wLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVkLnBuZyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3Bl
cmF0b3JzLWV4cGVjdGVkLnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTVhMzc2
MTExMTgxYzZhNDc3YzQ0YzVkMjcwZGJlYTcxN2U4ZTQ4ZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAw
MQoKbGl0ZXJhbCAzMTgxCnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEweX55VXsrdllWMmE+aTAqWik9
aF5obEElQFdzJGxIYG9rPG19P29UbjU4cgp6cW9oPVd2QHtjPWx2SHlnM2xucExSQWJZbTZlQllP
XkF4aldeVz5rfjQ9dz59Vm9VT05jVllNc2YoIU84cFVsOSgKentucGRQRntFUDcrZEdiWncrJSND
NUJfUVJ6VGM/MCQtd05BYTx0UmNYPjNQUkFNK1kpe3tEfVohUXVKJDw/OyorCnpBNTU2STg1R251
RmZiJXhHRzZEaTh5NyNkS0tFeXs5Plc4LWVeTD9xX28tIz8pQjRLNUBiQmImNG59TlJGYnheaAp6
QkhRQFZqZi16dUdjZD48WmVuRSt1LTEqSmV0LUkyVlMpIVUhQEh2KDUjYjAxMkUjXmo3I2wtbE9A
aTtURmNqcEEKej1gYnxSSUthZnYhOHVUajgmLTQ5bz1KVnJ6KS09JUV5bSNSVz1xMWB6czJgIUE3
P3BCRiU7LWk9KVNlRDdSYCl9CnpXbzBQSHJxck92RlphQz1XbmtiPkkhSUFxKGJsKjlIS29zIz1k
JntHWGt4e2tiQklhd3VQYilOQDZVSzxBSjQ/Xwp6TDRlWXJKQUNzQCVyYCFVaFR8SSY3I1dXRWFi
TFVsZHNEZkwjM2hEPz5XdkB+N0dTamRrajJPZTYrZ1NAPEt3LW4KeiZvZVI5JGJ5bSZkRkZ0MWdf
VH5zY2gjNEg7ZD5nQHFqO309XzM9aFVVV09nd2wpQUN9PlltUyFANzlWbEpsR3c5Cnp5PGo5SmRP
PlFvP09JKHtGM05EQUg8Q2hnWGpue3Jvdyl2NyY2Q1h4NEJfQ1VMcz4hekY9dTRCR24+K2tRRDl+
fgp6ZUo/WV4xNEE4UD5BVWZBKTdKMGpZcnByZD1GTWF7dXk/UztOWjwwYGleM1RnWSZyKEJYSUZL
bmVTMit4RmFNN2kKeiEtRihYVjNKcHJmcHRZNnp4Py0/PitqekNPYmorTnNxZzgxWilEbHFPYykt
LVFSPlhRcGBWWldyPGRQblclIXstCnpYe2shSm5obXBmdypQK0RlNFdgNk11eld7KV5ATWYtQ0Y7
QFdaNz5XaDZCP25FJGUwZHpyUGtnYHslaGd1dGp1Owp6IXVDKDgjcTYxPD89ZG9ia05gRn56ZW9k
M0pVVG9Zald9QSUjOHdLXygqQktJb3pYP1AoUnhZPHVxKGplPkZWZFEKSSZNQmJAMEcmVnwyPjx7
OQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRl
LW9wZXJhdG9ycy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1j
b21wb3NpdGUtb3BlcmF0b3JzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLW9wZXJhdG9ycy5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA1NGNkODMzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwxMzIgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgY29tcG9zaXRlIG9wZXJhdG9y
cyBjb21wdXRlIGNvbG9yIHZhbHVlcyBjb3JyZWN0bHkuPC90aXRsZT4KLSAgICA8IS0tCi0gICAg
ICAgIFRoaXMgdGVzdCBtaW1pY3MgdGhlIFBvcnRlciBEdWZmIENvbXBvc2l0aW5nIE9wZXJhdG9y
cyBleGFtcGxlIGltYWdlIGluIHRoZSBDb21wb3NpdGluZyBhbmQgQmxlbmRpbmcgc3BlYzoKLSAg
ICAgICAgaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5n
L2luZGV4Lmh0bWwjcG9ydGVyZHVmZmNvbXBvc2l0aW5nb3BlcmF0b3JzX3NyY2F0b3AKLSAgICAt
LT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICB9Ci0gICAgPC9z
Y3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC8qIERyYXdzIGEgYmxhY2sgYm9yZGVyIGFyb3VuZCB0
aGUgc2hhZGVkIGRlc3RpbmF0aW9uIGRpdi4gKi8KLSAgICAjYm9yZGVyLWNvbnRhaW5lciB7Ci0g
ICAgICAgIHdpZHRoOiA0NXB4OwotICAgICAgICBoZWlnaHQ6IDQ1cHg7Ci0gICAgICAgIGJvcmRl
cjogMXB4IHNvbGlkIGJsYWNrOwotICAgIH0KLSAgICAvKiBUaGUgc2hhZGVkIGRpdi4gKi8KLSAg
ICAuZGVzdGluYXRpb24gewotICAgICAgICB3aWR0aDogMTAwJTsKLSAgICAgICAgaGVpZ2h0OiAx
MDAlOwotICAgIH0KLSAgICAvKiBEcmF3cyBhIHllbGxvdyBzcXVhcmUgaW4gdGhlIHVwcGVyIGxl
ZnQgY29ybmVyIG9mIHRoZSBkZXN0aW5hdGlvbiBkaXYuICovCi0gICAgLyogVGhlIHJlc3Qgb2Yg
dGhlIGRlc3RpbmF0aW9uIGRpdiBpcyB0cmFuc3BhcmVudC4gKi8KLSAgICAjZGVzdGluYXRpb24t
b3BhcXVlLWNoaWxkIHsKLSAgICAgICAgd2lkdGg6IDY3JTsKLSAgICAgICAgaGVpZ2h0OiA2NyU7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHllbGxvdzsKLSAgICB9Ci0gICAgLyogQ29tcG9z
aXRlIG9wZXJhdG9ycyAqLwotICAgIC5jbGVhciB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9y
ZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGNsZWFyKSk7Ci0gICAgfQotICAgIC5jb3B5
IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNz
LXRleC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb21wb3NpdGUuZnMnKSBub3Jt
YWwgY29weSkpOwotICAgIH0KLSAgICAuc291cmNlLW92ZXIgewotICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVy
bCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1hbCBzb3VyY2Utb3ZlcikpOwotICAg
IH0KLSAgICAuZGVzdGluYXRpb24tb3ZlciB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNv
dXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLW92ZXIpKTsKLSAgICB9Ci0g
ICAgLnNvdXJjZS1pbiB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9y
ZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9z
aXRlLmZzJykgbm9ybWFsIHNvdXJjZS1pbikpOwotICAgIH0KLSAgICAuZGVzdGluYXRpb24taW4g
ewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3Mt
dGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1h
bCBkZXN0aW5hdGlvbi1pbikpOwotICAgIH0KLSAgICAuc291cmNlLW91dCB7Ci0gICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMn
KSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIHNvdXJjZS1vdXQp
KTsKLSAgICB9Ci0gICAgLmRlc3RpbmF0aW9uLW91dCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLW91dCkpOwotICAg
IH0KLSAgICAuc291cmNlLWF0b3AgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVy
bCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2Vz
L2NvbXBvc2l0ZS5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAgIH0KLSAgICAuZGVzdGlu
YXRpb24tYXRvcCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRl
LmZzJykgbm9ybWFsIGRlc3RpbmF0aW9uLWF0b3ApKTsKLSAgICB9Ci0gICAgLnhvciB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29v
cmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIHhvcikp
OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0iYm9y
ZGVyLWNvbnRhaW5lciI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIGNsZWFyIj4K
LSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0g
ICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWluZXIi
PgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBjb3B5Ij4KLSAgICAgICAgICAgIDxk
aXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2Pgot
ICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWluZXIiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2Utb3ZlciI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJk
ZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rp
dj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0i
ZGVzdGluYXRpb24gZGVzdGluYXRpb24tb3ZlciI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0
aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4K
LSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVz
dGluYXRpb24gc291cmNlLWluIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9w
YXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYg
aWQ9ImJvcmRlci1jb250YWluZXIiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBk
ZXN0aW5hdGlvbi1pbiI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUt
Y2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJi
b3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gc291cmNl
LW91dCI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwv
ZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29u
dGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZGVzdGluYXRpb24tb3V0
Ij4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+
Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWlu
ZXIiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBzb3VyY2UtYXRvcCI+Ci0gICAg
ICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAg
ICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZGVzdGluYXRpb24tYXRvcCI+Ci0gICAgICAg
ICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8
L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24geG9yIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImRl
c3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2
PgotICAgIDwhLS0KLSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGNvbXBvc2l0ZSBvcGVyYXRvcnMg
dG8gdGhpcyBwYWdlLCBiZSBjYXJlZnVsIG5vdCB0byBleGNlZWQgNjAwcHggaW4KLSAgICAgICAg
aGVpZ2h0LCBzaW5jZSBEdW1wUmVuZGVyVHJlZSBjb21wYXJlcyA4MDB4NjAwIHNuYXBzaG90cyBv
ZiB0aGlzIHBhZ2UuCi0gICAgLS0+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLXNvdXJj
ZS1hdG9wLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1jb21wb3NpdGUtc291cmNlLWF0b3AtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAzYTFiMDAxZmRiYmMxZGU4MTEyZjRiZDVjYTRkZTllNWRiYzk1
MGE3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkg
cGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpsaXRlcmFsIDEwNzk2CnpjbWVJMlpBZXA1N3t8
fU91MzhoQEV1IyshK3BSM0pCeHFUaThoWHVIOFk7Yn5MQ3ZPUyhUaDxVUj1Sc09xY15nbwp6SCZV
YHleYTNSKytKezFNbWs2PlZpeX1ydkg3SyZzTFd7IUQtMGlyey1TZlN1RlZCYXUtTlFOMElwP3ww
XkZQMXkKenVwYFRJbXFja01ZWTsrRlMoKVkpMnUxSit2M2NzenFAe2szVjwtOEZFNmQwJEU4SlhN
eE9JMj1jMnV9JlVoemcjCnpxUzNVZWg8dlB4KjcqeGUyQlh6I0RxM0pMOEh5NC08RSg+Wk9sT3Vr
WkIrJkg8O35vdGc4U3RlJWQ0c3tvYSlpPAp6VSN3WW92U0g/cEJ5SWFzYEBWQVg8P2k7Vklrd1I7
djY5bXdgK2dXKllLfDgkVnB0WFYoSTJEb19ab2RWVFYmdWQKeiliNFgpRypCSnhCdyhwRG4mVndI
dVMoNCQwfGlYRiU9X34kbEV2dDdJLVJmWUNFSFVzTk9FcV4zMylzVW5MV24zCnprPU5afDUldFk9
TDswLWU3NCFWUHJNRU5YSGUyNyZpd1ZKOTxWZDM5Z3w5TTRTKHI0MlZaSmVzUEtVTmdqTS09Swp6
TGNPemp0Z2BWem8pPU9JPk93WSNKQEhoZiVLWkwpZSRYdn0xP1d8KHR9KmN8RGFYYGZ3OGhwckwp
bz5iOFkzPyoKelVhQ3drNUp4P0o7dlRqYj5RPjJkeXVLeHludFVfTVVoI1ZDc3I2fURfQ3Yoa0lC
TjE3MFZrd2RxRFBGN0g8YyNmCnpPMzUlP25mJjVkYj93S1Z0PD9IYilhcUpvLVpnNlMxY3JHQSZJ
IUM4YTg1VyVBIyVjNV53LWtMP24+RHY0fUtRcQp6QyhXc0VKP3xMNS16RUQ/e083YDFGMEdlYiUk
PUQwdXJRRkUmSl4lTU43PXp9QTdwUkcyPk9mIUQpPEx0QlkyUVAKelVpPzRaQGJ0Si0jZkJZMktB
LVE0QStoUmZqVTt3cGFrMmxzSm4yX3RZKjB5Y25uNUc0byFjLXFFVWJiam8pQH1QCnpIYztHQ0Zf
UlpgKX0pTSleZD8tSEZXfmM0OVRiTjNGQyZ0OHVrMHUjaUVTN3F7O0h0QiQ4IW16eUB4K2ZxO1JR
KAp6VlJyby1wZzJyUUNsSlV6a0U3X1FuP1AzSWAha2Z+TCFAUU93VXJidm9nYnlAZFU8fn5XbSF2
Rih6Q0JDSmphPEwKeil3T0xXKT40KnI4Zz1jVmJHaFJjVEg4NV48NGczLWw7d3BKSWRCai1DPWdp
P0xIe2hwYHJUZnlZIVBqP3Z2cEJhCnpSOyFLPS16fFVpeChEelFEdntOVnRVdFBPXn4yK29ORHZ0
X1QjQkdGeHNoZHkmYV9UYmwjVkJZa29gIyshbXV8bgp6JUQ+dTJYK3teeiN6clM4TCRFWjk3dUxp
alEqKmFzXngoaWFpVmo8ZHM9IWpmRC1iS2dTcHBlRTFPe300N2VILUUKekk9fnIzcz05RDhiMzh4
LXAqbGIoYStMPDQxVnsqNkZhUXomNSgxWXxmQ1BZcUshRWB1MFUja3ppfj5sMk48eSMoCnQ1MEMo
bTBGViU+Pk8mPWdvREtqOXt9ZDhydn5SdWNSP1hleUY3byRKbCREV2RaZHoyfV96am9AQkRlcW0K
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtc291cmNlLWF0b3AtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YjEzNzg5Li4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3Np
dGUtc291cmNlLWF0b3AtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAot
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZhNmM2OTYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1zb3VyY2UtYXRvcC5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGUgc291cmNlLWF0b3AgY29tcG9zaXRlIG9w
ZXJhdG9yIHdpdGggdGhlIG5vcm1hbCBibGVuZCBtb2RlLjwvdGl0bGU+Ci0gICAgPCEtLQotICAg
ICAgICBUaGlzIHRlc3QgbWltaWNzIHRoZSBzb3VyY2UtYXRvcCBleGFtcGxlIGltYWdlIGluIHRo
ZSBDb21wb3NpdGluZyBhbmQgQmxlbmRpbmcgc3BlYzoKLSAgICAgICAgaHR0cHM6Ly9kdmNzLncz
Lm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwjcG9ydGVyZHVm
ZmNvbXBvc2l0aW5nb3BlcmF0b3JzX3NyY2F0b3AKLQotICAgICAgICBJZiBpdCBwYXNzZXMsIHlv
dSBzaG91bGQgc2VlIGEgeWVsbG93IHNxdWFyZSB3aXRoIGEgYmx1ZSBzcXVhcmUgaW4gaXRzIGxv
d2VyIHJpZ2h0IGNvcm5lci4KLSAgICAgICAgVGhpcyBzaG91bGQgYmUgaW4gdGhlIHVwcGVyIGxl
ZnQgY29ybmVyIG9mIGEgd2hpdGUgYm94IHdpdGggYSBibGFjayBib3JkZXIuCi0gICAgLS0+Ci0g
ICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZp
bHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0
PgotICAgIDxzdHlsZT4KLSAgICAvKiBEcmF3cyBhIGJsYWNrIGJvcmRlciBhcm91bmQgdGhlIHNo
YWRlZCBkZXN0aW5hdGlvbiBkaXYuICovCi0gICAgI2JvcmRlci1jb250YWluZXIgewotICAgICAg
ICB3aWR0aDogMjAwcHg7Ci0gICAgICAgIGhlaWdodDogMjAwcHg7Ci0gICAgICAgIGJvcmRlcjog
MXB4IHNvbGlkIGJsYWNrOwotICAgIH0KLSAgICAvKiBUaGUgc2hhZGVkIGRpdi4gKi8KLSAgICAj
ZGVzdGluYXRpb24gewotICAgICAgICB3aWR0aDogMTAwJTsKLSAgICAgICAgaGVpZ2h0OiAxMDAl
OwotICAgICAgICAvKiBUaGUgZnJhZ21lbnQgc2hhZGVyIHdyaXRlcyBhIGJsdWUgc3F1YXJlIHRv
IGNzc19NaXhDb2xvciBpbiB0aGUgbG93ZXIgcmlnaHQgY29ybmVyIG9mIHRoZSBkZXN0aW5hdGlv
biBkaXYuICovCi0gICAgICAgIC8qIEl0IHdyaXRlcyB0cmFuc3BhcmVudCBlbHNld2hlcmUuICov
Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10
ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSk7Ci0gICAgfQotICAgIC8qIERyYXdzIGEgeWVsbG93IHNxdWFyZSBpbiB0
aGUgdXBwZXIgbGVmdCBjb3JuZXIgb2YgdGhlIGRlc3RpbmF0aW9uIGRpdi4gKi8KLSAgICAvKiBU
aGUgcmVzdCBvZiB0aGUgZGVzdGluYXRpb24gZGl2IGlzIHRyYW5zcGFyZW50LiAqLwotICAgICNk
ZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQgewotICAgICAgICB3aWR0aDogNjclOwotICAgICAgICBo
ZWlnaHQ6IDY3JTsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93OwotICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0iYm9yZGVyLWNvbnRhaW5l
ciI+Ci0gICAgICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9
ImRlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCI+Ci0gICAgICAgICAgICA8L2Rpdj4KLSAgICAgICAg
PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5saW5lLWNvbXB1
dGVkLXN0eWxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0CmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlM2Y1ZDc3Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29t
cHV0ZWQtc3R5bGUtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAot
VGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgd2UgZG9uJ3QgYXNzZXJ0IHdoZW4gd2UgZ2VuZXJhdGUg
dGhlIGNvbXB1dGVkIHN0eWxlIGZvciBhbiBlbGVtZW50IHRoYXQgbWVldHMgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zOgotKDEpIFRoZSBlbGVtZW50IGhhcyBhIGN1c3RvbSBmaWx0ZXIgY29udGFp
bmluZyBhIHRyYW5zZm9ybSBwYXJhbWV0ZXIuCi0oMikgVGhlIGVsZW1lbnQgZG9lcyBub3QgaGF2
ZSBhIENTUyBib3guIEZvciBleGFtcGxlLCB0aGUgZWxlbWVudCBpcyBkaXNwbGF5OiBpbmxpbmUu
Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGVsZW1lbnQgaXMgbm9uLW51
bGwuCi1QQVNTIENvbXB1dGluZyB0aGUgZmlsdGVyIHN0eWxlIGZvciB0aGUgZWxlbWVudCBkaWQg
bm90IGNyYXNoIHRoZSBicm93c2VyLgotUEFTUyBmaWx0ZXJQcm9wZXJ0eUNTU1ZhbHVlIGlzIG5v
bi1udWxsLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRF
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jcmFzaC1pbmxpbmUtY29tcHV0ZWQtc3R5bGUu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTkzNmZlNi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5s
aW5lLWNvbXB1dGVkLXN0eWxlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi08
IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdD4KLSAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAg
I2ZpbHRlci10YXJnZXQgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwo
bm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgyKSk7Ci0gICAgICAgIH0KLSAg
ICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Ci0gICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci0gICAgPHNwYW4gaWQ9ImZpbHRlci10YXJn
ZXQiPjwvc3Bhbj4KLSAgICA8c2NyaXB0PgotICAgICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0
IHZlcmlmaWVzIHRoYXQgd2UgZG9uJ3QgYXNzZXJ0IHdoZW4gd2UgZ2VuZXJhdGUgdGhlIGNvbXB1
dGVkIHN0eWxlXAotICAgICAgICAgICAgZm9yIGFuIGVsZW1lbnQgdGhhdCBtZWV0cyB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnM6PGJyLz5cCi0gICAgICAgICAgICAoMSkgVGhlIGVsZW1lbnQgaGFz
IGEgY3VzdG9tIGZpbHRlciBjb250YWluaW5nIGEgdHJhbnNmb3JtIHBhcmFtZXRlci48YnIvPlwK
LSAgICAgICAgICAgICgyKSBUaGUgZWxlbWVudCBkb2VzIG5vdCBoYXZlIGEgQ1NTIGJveC4gRm9y
IGV4YW1wbGUsIHRoZSBlbGVtZW50IGlzIGRpc3BsYXk6IGlubGluZS4iKTsKLQotICAgICAgICB2
YXIgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWx0ZXItdGFyZ2V0Iik7Ci0g
ICAgICAgIHNob3VsZEJlTm9uTnVsbCgiZWxlbWVudCIpOwotCi0gICAgICAgIHZhciBmaWx0ZXJQ
cm9wZXJ0eUNTU1ZhbHVlID0gZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS5nZXRQcm9wZXJ0eUNT
U1ZhbHVlKCItd2Via2l0LWZpbHRlciIpOwotICAgICAgICB0ZXN0UGFzc2VkKCJDb21wdXRpbmcg
dGhlIGZpbHRlciBzdHlsZSBmb3IgdGhlIGVsZW1lbnQgZGlkIG5vdCBjcmFzaCB0aGUgYnJvd3Nl
ci4iKTsKLSAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJmaWx0ZXJQcm9wZXJ0eUNTU1ZhbHVlIik7
Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1rZXl3b3JkLWFz
LXBhcmFtZXRlci1uYW1lLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS1leHBlY3Rl
ZC5wbmcKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgxMzE2ZmZkN2NiOWIyN2QzNDI2
N2Q5YWFhNWZiZjk3OWE2MzM4OGEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgMTA1
NjkKemNtZUhOVH14QyE3QGpqYiVKQ350OG00NzJUM0xkSHRFO0k9akpsJHRoKVUyKG43U1Z0Zyhr
VSVQe14hTnQzPFV8CnpoUVdlUmZwdC1jbT0obyhBdGV8Wik+WFRLTUJvUVJkUW43U0hMST4/ZW5Q
PX1iQG57JEpUdm4kXkZBfXJkLWBqdAp6JVZIdlRNSXdZXkQkMzF1MnBLM3Mqcko5RDxqJSQzNClJ
OExtUmcqKUdZO0ZpJmFPNk9HK0ZKb21ZblM3ZTNSOWYKeld5KjlvQHx0WlhZaV8yPW1oWjQxJV40
bzhKJS1SQmV9JWN8TTdRJGdxdyh5WCs4dn5KSWBQdDw+OU0lX0pmRX1mCnojYlZXbVB1cjV5KHRD
eihKXnM0amJ8VkU3UmlsaUhBRi10OGMoP29IPUchX3ZAOGY3U01NNzRwNyUjbTBKeW1aLQp6Tlo8
S2o+ckVQMEU1QEliIyYmTXM7MCZVYVR7ZGlXTGUjPXxqbXszZz8zM0N3VVowO2BjPk9jfVNCY0Ij
VGt7WE4KejFFKSh2b0xiYjZ1PklqKEg+Sk95Vm15JFc1YjlCTVpCPi1HRCtPaHRDWDchVXJtVEg7
KVlobUpKaTx8YmskMnp2CnpMXnIwRXB3YU9nUzAhMnQ8QzgtKCghZXtTUkZENXZ1fTtlfUQ2YGZx
Z2FSZ2JvYCNYQkhkfjVMTzlpY1F4S287TQp6S21fRTtoIWpJaiY/ZGdtbSZWXyZDPlEofGlNQjZ7
bHQoV29PWERCcz12aUJhTF8zS3dnYXQhYiNGQnYzNjVQZUcKemk5YFp7KyFEOzB8NVZDZFNeYyZh
Nz9wJVohQ3YwVDNNeXwpMnxwMklJfnQ3OFJicjhsXjQ2c3xOZFpiMmtFWW9ZCno7TkBzM3FhanQt
bytlZkdERTJmUjchcCRKeTxhSipNem9AMkBpITlTI1E1SCp2dE4/STZ3MU9xZ0EhMjl4TzNvJAp6
cT5HdF5PcmZsSlVFJHdHc0dnYSoxQ3BYJDwweSU+TkktJDIlKylfUD5zbVVZWTFBLVByMzM2Qmdg
aHhDMiZAIUwKelZFYShXREg/QERpKEheUyRPViREIWEwU2dhQ2w+SXFOTk91YE4xMCQrPG85ZXNL
RzUrKXhiTDdVPiU1KDJVckpTCno5U0M8MnRPS3dQZ3N9fFAwYXlwMzVDR056MHFhMU5WWmJeNz5w
JkQyITghb3pBWHNxKT5qMTArQGUjbShXKnopaQpaOFg5NkI/MHZaV1BKQTFRRG9VJShrQlhhbXt7
cSVJXyY1TG4KCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1ldGVyLW5hbWUtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1rZXl3b3Jk
LWFzLXBhcmFtZXRlci1uYW1lLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1ldGVyLW5hbWUtZXhwZWN0ZWQu
dHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1l
dGVyLW5hbWUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA3ZjBkYzcyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGEgQ1NTIGtleXdvcmQgY2FuIGJlIGEg
cGFyYW1ldGVyIG5hbWUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJl
ZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxl
ZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUp
OwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIC8qIFRlc3RzIHRo
YXQgdGhlIENTUyBrZXl3b3JkICJiYWNrZ3JvdW5kIiBjYW4gYmUgYSBwYXJhbWV0ZXIgbmFtZS4g
Ki8KLSAgICAuc2hhZGVkIHsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICBoZWlnaHQ6
IDEwMHB4OwotICAgICAgICAvKiBUaGUgc2hhZGVyIHNob3VsZCByZXBsYWNlIHRoZSBkaXYncyBy
ZWQgYmFja2dyb3VuZCB3aXRoIGdyZWVuLiAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
ZWQ7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSB1cmwoJy4uL3Jlc291cmNl
cy9jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5mcycpLCBiYWNrZ3JvdW5kIDAgMSAwIDEp
OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0i
c2hhZGVkIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hlZC1tZXNoLXdpdGgtbWVz
aC1ib3gtdHlwZS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI4NmM0ZDIuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVk
LW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxNyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxl
PlRlc3QgdGhhdCBhIGRldGFjaGVkIGlkZW50aWZpZXIgYWZ0ZXIgdGhlIG1lc2ggYm94IHR5cGUg
aXMgaW50ZXJwcmV0ZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBw
YXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgc2luZ2xlIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHN0
eWxlPgotICAgICAgICAjZmlsdGVyLXRhcmdldCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogIzBmMDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8
ZGl2IGlkPSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hl
ZC1tZXNoLXdpdGgtbWVzaC1ib3gtdHlwZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10eXBlLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE5NWFjNDguLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1l
c2gtd2l0aC1tZXNoLWJveC10eXBlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MSArMCwwIEBA
Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBh
IGRldGFjaGVkIGlkZW50aWZpZXIgYWZ0ZXIgdGhlIG1lc2ggYm94IHR5cGUgaXMgaW50ZXJwcmV0
ZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBz
aG91bGQgc2VlIGEgc2luZ2xlIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHNjcmlwdD4KLSAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIp
OwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2Fp
dFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3Rz
IGFmdGVyIHRoZSBzaGFkZXJzIGRvd25sb2FkLgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsK
LSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAgI2ZpbHRlci10
YXJnZXQgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgIC8q
IAotICAgICAgICAgICAgICAgIFRoaXMgY3VzdG9tIGZpbHRlcidzIHZlcnRleCBzaGFkZXIgZGVm
aW5lcyBhX3RyaWFuZ2xlQ29vcmQsIHdoaWNoIGlzIG9ubHkgYXZhaWxhYmxlIHdpdGggZGV0YWNo
ZWQgbWVzaGVzLgotICAgICAgICAgICAgICAgIFRodXMsIHRoaXMgY3VzdG9tIGZpbHRlciB3aWxs
IG9ubHkgZXhlY3V0ZSBpZiB0aGUgbWVzaCBpcyBkZXRhY2hlZC4KLSAgICAgICAgICAgICAgICBJ
ZiB0aGUgY3VzdG9tIGZpbHRlciBleGVjdXRlcywgaXRzIGZyYWdtZW50IHNoYWRlciB3aWxsIHR1
cm4gdGhpcyBlbGVtZW50IGdyZWVuLgotICAgICAgICAgICAgICovCi0gICAgICAgICAgICAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvYS10cmlhbmdsZS1jb29yZC1kZWZp
bmVkLnZzKSAKLSAgICAgICAgICAgICAgICBtaXgodXJsKC4uL3Jlc291cmNlcy9taXgtY29sb3Iu
ZnMpIG5vcm1hbCBzb3VyY2UtYXRvcCksCi0gICAgICAgICAgICAgICAgMSAxIGJvcmRlci1ib3gg
ZGV0YWNoZWQsCi0gICAgICAgICAgICAgICAgbWl4X2NvbG9yIDAgMSAwIDEKLSAgICAgICAgICAg
ICk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJydW5U
ZXN0KCkiPgotICAgIDxkaXYgaWQ9ImZpbHRlci10YXJnZXQiPjwvZGl2PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLW1hdE4tZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1tYXROLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDk4NzBkNGUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLW1hdE4tZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDE2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAg
ICAgIDx0aXRsZT5UZXN0cyBtYXROKCkgZnVuY3Rpb25zIGluIGN1c3RvbSBmaWx0ZXJzPC90aXRs
ZT4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAg
ICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9
InJ1blRlc3QoKSI+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAg
IDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1tYXROLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbWF0Ti5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA5YjUxOTFmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1tYXROLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzOSArMCwwIEBA
Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVz
dHMgbWF0TigpIGZ1bmN0aW9ucyBpbiBjdXN0b20gZmlsdGVyczwvdGl0bGU+Ci0gICAgICAgIDxz
Y3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAg
ICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRp
bmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAg
ICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAg
I2ZpbHRlcnRlc3Rib3ggewotICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6
IHJlZDsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcu
Li9yZXNvdXJjZXMvZnJhZ21lbnQtbWF0Ti5mcycpLAotICAgICAgICAgICAgICAgICAgICBtMSBt
YXQyKDEsIDEsIDAsIDApLAotICAgICAgICAgICAgICAgICAgICBtMiBtYXQzKDEsIDAsIDEsIDAs
IDEsIDEsIDAsIDEsIDApLAotICAgICAgICAgICAgICAgICAgICBtMyBtYXQ0KDEsIDEsIDAsIDAs
IDAsIDEsIDEsIDAsIDEsIDAsIDAsIDEsIDEsIDEsIDEsIDEpCi0gICAgICAgICAgICAgICAgKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkg
b25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBw
eCByZWQgZGl2IGlzIGNvbG91cmVkIGxpbWUgYnkgZnJhZ21lbnQtbWF0Ti5mcywgYSBmcmFnbWVu
dCBzaGFkZXIuCi0gICAgICAgICAgICBGYWlscyBpZiB0aGUgZGl2IHN0YXlzIHJlZC4KLSAgICAg
ICAgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1tZXNoLWNvbHVtbi1yb3ctb3JkZXItZXhwZWN0ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1tZXNoLWNvbHVtbi1yb3ct
b3JkZXItZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDliMGM4
Ni4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwzMiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3QgdGhhdCBpbiBDU1MsIHRoZSB2ZXJ0ZXggbWVzaCBkaW1lbnNpb25zIGFyZSBzcGVj
aWZpZWQgaW4gY29sdW1uLCByb3cgb3JkZXIuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRo
aXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgSWYgdGhlIHRl
c3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIGNoZWNrYm9hcmQgd2l0aCAyIGNvbHVtbnMgYW5k
IDQgcm93cyBvZiBibGFjayBhbmQgZ3JlZW4gc3F1YXJlcy4KLSAgICAtLT4KLSAgICA8c3R5bGU+
Ci0gICAgYm9keSB7Ci0gICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICB9Ci0gICAgZGl2IHsKLSAg
ICAgICAgZmxvYXQ6IGxlZnQ7Ci0gICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6
IDUwcHg7Ci0gICAgfQotICAgIGRpdjpudGgtY2hpbGQoNG4pLCBkaXY6bnRoLWNoaWxkKDRuKzEp
IHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMCB9Ci0gICAgZGl2Om50aC1jaGlsZCg0bisyKSwgZGl2
Om50aC1jaGlsZCg0biszKSB7IGJhY2tncm91bmQtY29sb3I6ICMwZjAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAg
PGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48
L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkwYjc0ZDkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW1lc2gtY29sdW1uLXJvdy1vcmRlci5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgaW4gQ1NTLCB0aGUgdmVydGV4IG1lc2gg
ZGltZW5zaW9ucyBhcmUgc3BlY2lmaWVkIGluIGNvbHVtbiwgcm93IG9yZGVyLjwvdGl0bGU+Ci0g
ICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIGEgY2hlY2tib2FyZCB3
aXRoIDIgY29sdW1ucyBhbmQgNCByb3dzIG9mIGJsYWNrIGFuZCBncmVlbiBzcXVhcmVzLiAtLT4K
LSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVy
cmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLSAgICAgICAgCi0g
ICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBXZSBu
ZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIHNoYWRlcnMgZG93bmxvYWQuCi0gICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxl
PgotICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwotICAg
ICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgIGhlaWdodDogMjAwcHg7Ci0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4v
cmVzb3VyY2VzL2NoZWNrZXJib2FyZC52cykgbWl4KHVybCguLi9yZXNvdXJjZXMvdmFyeWluZy1t
aXgtY29sb3IuZnMpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDIgNCBkZXRhY2hlZCk7Ci0gICAgfQot
ICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRp
diBpZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRp
bmdzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1taXgtYmluZGluZ3MtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA4N2RjZTRkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251
bGwKQEAgLTEsMTUgKzAsMCBAQAotVGVzdCBtaXgoKSBmdW5jdGlvbiBKUyBiaW5kaW5ncy4KLQot
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MganNXcmFwcGVyQ2xhc3MobWl4RnVuY3Rp
b24pIGlzICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyht
aXhGdW5jdGlvbi5fX3Byb3RvX18pIGlzICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlUHJvdG90
eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhtaXhGdW5jdGlvbi5jb25zdHJ1Y3RvcikgaXMgJ1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWVDb25zdHJ1Y3RvcicKLVBBU1MgbWl4RnVuY3Rpb25Db250
ZW50IGlzICJtaXgodXJsKGNvbG9yLW9mZnNldC5mcykpIgotUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTYxNWM0MS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRpbmdz
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJM
SUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRpbmdz
LmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUt
YWNjZXNzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItbm8tZWxlbWVudC10ZXh0dXJlLWFjY2Vzcy1leHBlY3RlZC5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZDg0MDQ4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUt
YWNjZXNzLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyNiArMCwwIEBACi08IWRv
Y3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgYW4gYXV0
aG9yJ3Mgc2hhZGVyIGNvZGUgY2Fubm90IHNhbXBsZSBhIHNoYWRlZCBlbGVtZW50J3MgdGV4dHVy
ZS48L3RpdGxlPgotICAgIDwhLS0gCi0gICAgICAgIFRoaXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxl
IGZvciB0aGUgdGVzdC4KLSAgICAgICAgSWYgdGhlIHRlc3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNl
ZSA2IHZlcnRpY2FsbHktc3RhY2tlZCBncmVlbiBib3hlcy4KLSAgICAtLT4KLSAgICA8c3R5bGU+
Ci0gICAgZGl2IHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0g
ICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgIG1hcmdp
bjogMTBweDsKLSAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXY+
PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+
Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5v
LWVsZW1lbnQtdGV4dHVyZS1hY2Nlc3MuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUtYWNjZXNzLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVhODQ5MzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vLWVsZW1lbnQtdGV4dHVyZS1h
Y2Nlc3MuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ4ICswLDAgQEAKLTwhZG9jdHlwZSBodG1s
PgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBhbiBhdXRob3IncyBzaGFk
ZXIgY29kZSBjYW5ub3Qgc2FtcGxlIGEgc2hhZGVkIGVsZW1lbnQncyB0ZXh0dXJlLjwvdGl0bGU+
Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIDYgdmVydGljYWxs
eS1zdGFja2VkIGdyZWVuIGJveGVzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRl
UHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5h
YmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAg
ZGl2IHsKLSAgICAgICAgLyogVGhlIHNoYWRlcnMgd2lsbCB0dXJuIHRoZSBlbGVtZW50J3MgY29s
b3IgZnJvbSBncmVlbiB0byByZWQgaWYgdGhleSBhcmUgYWJsZSB0byBzYW1wbGUgaXRzIHRleHR1
cmUuICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAg
ICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEw
cHg7Ci0gICAgfQotICAgIC5zYW1wbGUtdS10ZXh0dXJlIHsKLSAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRleC1jb29yZC52cycpIHVybCgnLi4v
cmVzb3VyY2VzL3NhbXBsZS11LXRleHR1cmUuZnMnKSk7Ci0gICAgfQotICAgIC5zYW1wbGUtdS10
ZXh0dXJlLW1peCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvc2FtcGxlLXUt
dGV4dHVyZS1taXguZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLnNhbXBs
ZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSB1cmwoJy4uL3Jlc291cmNl
cy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUuZnMnKSk7ICAKLSAgICB9Ci0gICAgLnNh
bXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXggewotICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXguZnMnKSBub3Jt
YWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLnNhbXBsZS1kZWZpbmVkLWNzcy11LXRleHR1
cmUgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bh
c3MtdGV4LWNvb3JkLnZzJykgdXJsKCcuLi9yZXNvdXJjZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUt
dGV4dHVyZS5mcycpKTsgIAotICAgIH0KLSAgICAuc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVy
ZS1taXggewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2Vz
L3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL3NhbXBsZS1kZWZpbmVk
LWNzcy11LXRleHR1cmUtbWl4LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgfQotICAg
IDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdS10ZXh0
dXJlIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdS10ZXh0dXJlLW1peCI+PC9kaXY+
Ci0gICAgPGRpdiBjbGFzcz0ic2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10ZXh0dXJlIj48L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4Ij48L2Rp
dj4KLSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlIj48L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJzYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peCI+PC9kaXY+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3ItZXhwZWN0
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xvci1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBlOTYzYTYxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xv
ci1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotPCFET0NUWVBF
IEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCB0aGF0IGJs
ZW5kcyB0aGUgc291cmNlIGFuZCB0aGUgYmFja2Ryb3Agd2l0aCB0aGUgY29sb3IgYmxlbmQgbW9k
ZS48L3RpdGxlPgotICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgIC8qIFRoZXNl
IGFyZSBleGFjdGx5IHRoZSBjb2xvciB2YWx1ZXMgd2UgZXhwZWN0LiBTb21lIHBsYXRmb3JtcyBt
YXkgaGF2ZSBzbGlnaHRseSBkaWZmZXJlbnQKLSAgICAgICAgICAgY29sb3IgcmVzdWx0LiAqLwot
ICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDEwOCwgMTU3LCAyNTUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtc29saWQgewotICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2NywgMTkyLCAyNDIpOwotICAgICAgICAgICAg
d2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAg
ICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2
OSwgMTQyLCAxNjYpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVp
Z2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIwNSwgMTkyLCAyMDQpOwotICAgICAgICAgICAgd2lk
dGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwv
c3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJzb2xpZC1zb2xpZCI+PC9kaXY+
Ci0gICAgPGRpdiBpZD0iYWxwaGEtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9InNvbGlkLWFs
cGhhIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1hbHBoYSI+PC9kaXY+Ci08L2JvZHk+Ci08
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3IuaHRtbCBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9k
ZS1jb2xvci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYzM3MDQwLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1jb2xvci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTI5
ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAg
PHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGgg
dGhlIGNvbG9yIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdM
RW5hYmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGUgdHlw
ZT0idGV4dC9jc3MiPgotICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Ig
c291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsKLSAgICAgICAgfQotICAg
ICAgICAjYWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5
MCUsIDUwJSwgMzAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAg
ICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9u
ZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Igc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsKLSAgICAgICAgfQotICAgICAgICAjc29saWQt
YWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUp
OwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsK
LSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNv
dXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3Igc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAu
NCAwLjggMC41KTsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwgMzAlLCAwLjUpOwotICAgICAgICAg
ICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAg
IC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNv
bG9yLmZzJykgY29sb3Igc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41KTsK
LSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBUaGUg
Zm9sbG93aW5nIHByb29mIGFwcGxpZXMgdG8gdGhlIGZpcnN0IGNhc2UgKCNzb2xpZC1zb2xpZCkg
d2hlcmUgYm90aCB0aGUgYmFja2Ryb3AgYW5kIHRoZQotICAgIHNvdXJjZSBhcmUgc29saWQuCi0K
LSAgICBJbiB0aGlzIHRlc3QgdGhlIGZvbGxvd2luZyBjb21iaW5hdGlvbnMgYXJlIGFsc28gdGVz
dGVkOgotICAgICAgICBCYWNrZHJvcCB3aXRoIDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc29saWQg
c291cmNlCi0gICAgICAgIFNvbGlkIGJhY2tkcm9wIGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0aCAw
LjUgYWxwaGEKLSAgICAgICAgQmFja2Ryb3Agd2l0aCAwLjUgYmxlbmRlZCB3aXRoIHNvdXJjZSB3
aXRoIDAuNSBhbHBoYQotICAgIFRoZSB1bmRlcmxheWluZyBwcm9vZiBvZiB0aGUgYWJvdmUgbWVu
dGlvbmVkIGNhc2VzIGlzIHRoZSBzYW1lOiB0aGUgY29sb3JzIGFyZSBwcmVtdWx0aXBsaWVkCi0g
ICAgYW5kIHRoZW4gYmxlbmRlZCB0b2dldGhlci4KLQotICAgIFRoZSBmaW5hbCBjb2xvciBvZiAj
c29saWQtc29saWQgZGVwZW5kcyBvbiB0aGUgImNvbG9yIiBibGVuZCBtb2RlLCB3aGljaCBpcyBh
IG5vbi1zZXBhcmFibGUKLSAgICBibGVuZCBtb2RlLiBUaGlzIG1lYW5zIHRoYXQgY29sb3JzIGFy
ZSBibGVuZGVkIHRvZ2V0aGVyIGFzIGEgd2hvbGUsIG5vdCBjb21wb25lbnQgYnkgY29tcG9uZW50
LgotCi0gICAgVGhlIGZvcm11bGEgZm9yIHRoaXMgYmxlbmQgbW9kZSBpczoKLSAgICAgICAgQ3Ig
PSBCKENiLCBDcykgPSBTZXRMdW0oQ3MsIEx1bShDYikpCi0KLSAgICBXaXRoOgotICAgICAgICBD
cjogdGhlIHJlc3VsdGluZyBjb2xvcgotICAgICAgICBDYjogdGhlIGJhY2tkcm9wIGNvbG9yLCB3
aGljaCBpcyAjc29saWQtc29saWQgKCJvcmlnaW5hbCBET00gZWxlbWVudCBjb2xvciIpCi0gICAg
ICAgIENzOiB0aGUgc291cmNlIGNvbG9yLCB3aGljaCBpcyBtaXhfY29sb3IKLSAgICAgICAgTHVt
KENiKTogdGhlIGx1bWlub3NpdHkgb2YgQ2IuIEx1bWlub3NpdHkgZm9yIGNvbG9yIEMgaXMgZ2Vu
ZXJhbGx5IGRlZmluZWQgYnkKLSAgICAgICAgICAgTHVtKEMpOiAwLjMgKiBDcmVkICsgMC41OSAq
IENncmVlbiArIDAuMTEgKiBDYmx1ZQotICAgICAgICBTZXRMdW0oQ3MsIEx1bShDYikpOiB0aGUg
ZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAgZCA9IGwgLSBMdW0o
QykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAgQ2dyZWVuID0gQ2dy
ZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAgICAgICAgIHJldHVy
biBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9yIEMgaGFzIHRvIGJl
IGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVuY3Rpb24sIHdoaWNo
IGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xpcENvbG9yKEMpCi0g
ICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENyZWQsIENncmVlbiwg
Q2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAg
ICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkg
KiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAt
IGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVl
IC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4wCi0gICAgICAgICAg
ICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAg
ICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEgLSBsKSkgLyAoeCAt
IGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgSW4gdGhpcyB0ZXN0IGNh
c2U6Ci0gICAgICAgIEx1bShDYikgPSAwLjMgKiAwLjkgKyAwLjU5ICogMC41ICsgMC4xMSAqIDAu
MwotICAgICAgICBMdW0oQ2IpID0gMC4yNyArIDAuMjk1ICsgMC4wMzMKLSAgICAgICAgTHVtKENi
KSA9IDAuNTk4Ci0KLSAgICAgICAgTHVtKENzKSA9IDAuMyAqIDAuMiArIDAuNTkgKiAwLjQgKyAw
LjExICogMC44Ci0gICAgICAgIEx1bShDcykgPSAwLjA2ICsgMC4yMzYgKyAwLjA4OAotICAgICAg
ICBMdW0oQ3MpID0gMC4zODQKLQotICAgICAgICBDciA9IFNldEx1bShDcywgMC41OTgpCi0gICAg
ICAgICAgICBkID0gMC41OTggLSBMdW0oQ3MpCi0gICAgICAgICAgICBkID0gMC41OTggLSAwLjM4
NAotICAgICAgICAgICAgZCA9IDAuMjE0Ci0gICAgICAgICAgICBDcmVkID0gMC4yICsgMC4yMTQg
PSAwLjQxNAotICAgICAgICAgICAgR3JlZW4gPSAwLjQgKyAwLjIxNCA9IDAuNjE0Ci0gICAgICAg
ICAgICBDYmx1ZSA9IDAuOCArIDAuMjE0ID0gMS4wMTQKLSAgICAgICAgICAgIHJldHVybiBDbGlw
Q29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLQotICAgICAgICBDbGlwQ29sb3IoMC40MTQsIDAu
NjE0LCAxLjAxNCkKLSAgICAgICAgICAgIGwgPSAwLjMgKiAwLjQxNCArIDAuNTkgKiAwLjYxNCAr
IDAuMTEgKiAxLjEwMTQgPSAwLjEyNDIgKyAwLjM2MjI2ICsgMC4xMjExNTQgPSAwLjYwNzYxNAot
ICAgICAgICAgICAgbiA9IG1pbigwLjQxNCwgMC42MTQsIDEuMDE0KSA9IDAuNDE0Ci0gICAgICAg
ICAgICB4ID0gbWF4KDAuNDE0LCAwLjYxNCwgMS4wMTQpID0gMS4wMTQKLSAgICAgICAgICAgIHgg
PiAxLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gMC42MDc2MTQgKyAoKCgwLjQxNCAtIDAuNjA3
NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3NjE0KSkgPSAKLSAgICAgICAg
ICAgICAgICAgICAgID0gMC42MDc2MTQgKyAoKC0wLjE5MzYxNCAqIDAuMzkyMzg2KSAvIDAuNDA2
Mzg2KSA9IDAuNjA3NjE0IC0gKDAuMDc1OTcxNDIgLyAwLjQwNjM4NikgPSAwLjYwNzYxNCAtIDAu
MTg2OTQzOTkgPSAwLjQyMDY3MDAxCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gMC42MDc2MTQg
KyAoKCgwLjYxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3
NjE0KSkgPQotICAgICAgICAgICAgICAgICAgICAgICA9IDAuNjA3NjE0ICsgKCgwLjAwMzM4NiAq
IDAuMzkyMzg2KSAvIDAuNDA2Mzg2ID0gMC42MDc2MTQgKyAoMC4wMDEzMjg2MiAvIDAuNDA2Mzg2
KSA9IDAuNjA3NjE0ICsgMC4wMDMyNjkzNSA9IDAuNjEwODgzMzUKLSAgICAgICAgICAgICAgICBD
Ymx1ZSA9IDAuNjA3NjE0ICsgKCgoMS4wMTQgLSAwLjYwNzYxNCkgKiAoMSAtIDAuNjA3NjE0KSkg
LyAoMS4wMTQgLSAwLjYwNzYxNCkgPQotICAgICAgICAgICAgICAgICAgICAgID0gMC42MDc2MTQg
KyAoKDAuNDA2Mzg2ICogMC4zOTIzODYpIC8gMC40MDYzODYpID0gMC42MDc2MTQgKyAoMC4xNTk0
NjAxOCAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4zOTIzODYwMSA9IDEuMAotICAgICAgICAg
ICAgcmV0dXJuICgwLjQyLCAwLjYxLCAxLjApCi0KLSAgICBUaGlzIHZhbHVlIGlzIGVxdWl2YWxl
bnQgdG8gKDEwOCwgMTU3LCAyNTUpLCB3aGljaCBpcyB0aGUgZXhwZWN0ZWQgY29sb3IuCi0gICAg
VGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90aGVyIHBvcnRzIG1pZ2h0IGV4cGVyaWVu
Y2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBpZD0ic29saWQtc29saWQiPjwv
ZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xp
ZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxwaGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5
PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLWh1ZS1leHBlY3RlZC5odG1sIGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJs
ZS1ibGVuZC1tb2RlLWh1ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAzZjE3Zjg3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1odWUtZXhwZWN0ZWQuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwg
bGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJj
ZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGggdGhlIGh1ZSBibGVuZCBtb2RlLjwvdGl0bGU+Ci0gICAg
PHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgLyogVGhlc2UgYXJlIGV4YWN0bHkgdGhl
IGNvbG9yIHZhbHVlcyB3ZSBleHBlY3QuIFNvbWUgcGxhdGZvcm1zIG1heSBoYXZlIHNsaWdodCBk
aWZmZXJlbnQKLSAgICAgICAgICAgY29sb3IgcmVzdWx0LiAqLwotICAgICAgICAjc29saWQtc29s
aWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwOCwgMTU3LCAyNTUpOwot
ICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAg
ICAgICAgfQotICAgICAgICAjYWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogcmdiKDE2NywgMTkyLCAyNDIpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAg
ICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEg
ewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2OSwgMTQyLCAxNjYpOwotICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAg
ICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmdiKDIwNSwgMTkyLCAyMDQpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08
Ym9keT4KLSAgICA8ZGl2IGlkPSJzb2xpZC1zb2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxw
aGEtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9InNvbGlkLWFscGhhIj48L2Rpdj4KLSAgICA8
ZGl2IGlkPSJhbHBoYS1hbHBoYSI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJh
YmxlLWJsZW5kLW1vZGUtaHVlLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtaHVlLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVkMTcxMTguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2Rl
LWh1ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTUxICswLDAgQEAKLTwhRE9DVFlQRSBIVE1M
PgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMg
dGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9wIHdpdGggdGhlIGh1ZSBibGVuZCBtb2RlLjwvdGl0
bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICB9
Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI3Nv
bGlkLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5MCUsIDUwJSwg
MzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIGh1ZSBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjIg
MC40IDAuOCAxLjApOwotICAgICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDkwJSwgNTAlLCAzMCUsIDAuNSk7Ci0gICAgICAg
ICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAg
ICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgt
Y29sb3IuZnMnKSBodWUgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsK
LSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgaHVlIHNvdXJj
ZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDAuNSk7Ci0gICAgICAgIH0KLSAgICAgICAg
I2FscGhhLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTAlLCA1
MCUsIDMwJSwgMC41KTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhl
aWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGh1ZSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjIgMC40IDAuOCAwLjUpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4K
LTxib2R5PgotPCEtLQotICAgIFRoZSBmb2xsb3dpbmcgcHJvb2YgYXBwbGllcyB0byB0aGUgZmly
c3QgY2FzZSAoI3NvbGlkLXNvbGlkKSB3aGVyZSBib3RoIHRoZSBiYWNrZHJvcCBhbmQgdGhlCi0g
ICAgc291cmNlIGFyZSBzb2xpZC4KLQotICAgIEluIHRoaXMgdGVzdCB0aGUgZm9sbG93aW5nIGNv
bWJpbmF0aW9ucyBhcmUgYWxzbyB0ZXN0ZWQ6Ci0gICAgICAgIEJhY2tkcm9wIHdpdGggMC41IGFs
cGhhIGJsZW5kZWQgd2l0aCBzb2xpZCBzb3VyY2UKLSAgICAgICAgU29saWQgYmFja2Ryb3AgYmxl
bmRlZCB3aXRoIHNvdXJjZSB3aXRoIDAuNSBhbHBoYQotICAgICAgICBCYWNrZHJvcCB3aXRoIDAu
NSBhbHBoYSBibGVuZGVkIHdpdGggc291cmNlIHdpdGggMC41IGFscGhhCi0gICAgVGhlIHVuZGVy
bHlpbmcgcHJvb2Ygb2YgdGhlIGFib3ZlIG1lbnRpb25lZCBjYXNlcyBpcyB0aGUgc2FtZTogdGhl
IGNvbG9ycyBhcmUgcHJlbXVsdGlwbGllZAotICAgIGFuZCB0aGVuIGJsZW5kZWQgdG9nZXRoZXIu
Ci0KLSAgICBUaGUgZmluYWwgY29sb3Igb2YgI3NvbGlkLXNvbGlkIGRlcGVuZHMgb24gdGhlICJo
dWUiIGJsZW5kIG1vZGUsIHdoaWNoIGlzIGEgbm9uLXNlcGFyYWJsZQotICAgIGJsZW5kIG1vZGUu
IFRoaXMgbWVhbnMgdGhhdCBjb2xvcnMgYXJlIGJsZW5kZWQgdG9nZXRoZXIgYXMgYSB3aG9sZSwg
bm90IGNvbXBvbmVudCBieSBjb21wb25lbnQuCi0KLSAgICBUaGUgZm9ybXVsYSBmb3IgdGhpcyBi
bGVuZCBtb2RlIGlzOgotICAgICAgICBDciA9IEIoQ2IsIENzKSA9IFNldEx1bShTZXRTYXQoQ3Ms
IFNhdChDYikpLCBMdW0oQ2IpKQotCi0gICAgV2l0aDoKLSAgICAgICAgQ3I6IHRoZSByZXN1bHRp
bmcgY29sb3IKLSAgICAgICAgQ2I6IHRoZSBiYWNrZHJvcCBjb2xvciwgd2hpY2ggaXMgI3NvbGlk
LXNvbGlkICgib3JpZ2luYWwgRE9NIGVsZW1lbnQgY29sb3IiKQotICAgICAgICBDczogdGhlIHNv
dXJjZSBjb2xvciwgd2hpY2ggaXMgbWl4X2NvbG9yCi0gICAgICAgIEx1bShDYik6IHRoZSBsdW1p
bm9zaXR5IG9mIENiLiBMdW1pbm9zaXR5IGZvciBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZpbmVk
IGJ5Ci0gICAgICAgICAgIEx1bShDKTogMC4zICogQ3JlZCArIDAuNTkgKiBDZ3JlZW4gKyAwLjEx
ICogQ2JsdWUKLSAgICAgICAgU2F0KENiKTogdGhlIHNhdHVyYXRpb24gb2YgQ2IuIFNhdHVyYXRp
b24gZm9yIGNvbG9yIEMgaXMgZ2VuZXJhbGx5IGRlZmluZWQgYnkKLSAgICAgICAgICAgU2F0KEMp
OiBtYXgoQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkgLSBtaW4oQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkKLSAg
ICAgICBTZXRTYXQoQ3MsIFNhdChDYikpOiB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBzYXR1
cmF0aW9uCi0gICAgICAgU2V0THVtKFNldFNhdChDcywgU2F0KENiKSksIEx1bShDYikpOiB0aGUg
ZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAgZCA9IGwgLSBMdW0o
QykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAgQ2dyZWVuID0gQ2dy
ZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAgICAgICAgIHJldHVy
biBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9yIEMgaGFzIHRvIGJl
IGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVuY3Rpb24sIHdoaWNo
IGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xpcENvbG9yKEMpCi0g
ICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENyZWQsIENncmVlbiwg
Q2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAg
ICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkg
KiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAt
IGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVl
IC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4wCi0gICAgICAgICAg
ICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAg
ICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEgLSBsKSkgLyAoeCAt
IGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgVGhlIGZ1bmN0aW9uIHRo
YXQgc2V0cyB0aGUgc2F0dXJhdGlvbiBzIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZp
bmVkIGJ5OgotCi0gICAgICAgIFNldFNhdChDLCBzKQotICAgICAgICAgICAgaWYoQ21heCA+IENt
aW4pCi0gICAgICAgICAgICAgICAgQ21pZCA9ICgoKENtaWQgLSBDbWluKSAqIHMpIC8gKENtYXgg
LSBDbWluKSkKLSAgICAgICAgICAgICAgICBDbWF4ID0gcwotICAgICAgICAgICAgZWxzZQotICAg
ICAgICAgICAgICAgIENtaWQgPSBDbWF4ID0gMAotICAgICAgICAgICAgQ21pbiA9IDAKLSAgICAg
ICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlzIHRlc3QgY2FzZToKLSAgICAgICAgTHVtKENi
KSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAwLjExICogMC4zCi0gICAgICAgIEx1bShDYikg
PSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAgICBMdW0oQ2IpID0gMC41OTgKLQotICAgICAg
ICBTYXQoQ2IpID0gbWF4KDAuOSwgMC41LCAwLjMpIC0gbWluKDAuOSwgMC41LCAwLjMpCi0gICAg
ICAgIFNhdChDYikgPSAwLjkgLSAwLjMKLSAgICAgICAgU2F0KENiKSA9IDAuNgotCi0gICAgICAg
IEZvciB0aGUgc2FrZSBvZiBicmV2aXR5IHRoZSByZXN1bHQgb2YgdGhpcyBjb21wdXRhdGlvbiBp
cyBjYWxsZWQgQ3QKLSAgICAgICAgQ3QgPSBTZXRTYXQoQ3MsIFNhdChDYikpCi0gICAgICAgICAg
ICAwLjggPiAwLjIKLSAgICAgICAgICAgICAgICBDbWlkID0gKCgoMC40IC0gMC4yKSAqIDAuNikg
LyAoMC44IC0gMC4yKSkgPSAoMC4yICogMC42KSAvIDAuNiA9IDAuMgotICAgICAgICAgICAgICAg
IENtYXggPSAwLjYKLSAgICAgICAgICAgIENtaW4gPSAwCi0gICAgICAgICAgICByZXR1cm4gKDAs
IDAuMiwgMC42KQotCi0gICAgICAgIENyID0gU2V0THVtKEN0LCBMdW0oQ2IpKQotICAgICAgICAg
ICAgZCA9IDAuNTk4IC0gKDAuMyAqIDAuMCArIDAuNTkgKiAwLjIgKyAwLjExICogMC42KSA9IDAu
MTE4ICsgMC4wNjYgPSAwLjE4NAotICAgICAgICAgICAgZCA9IDAuNTk4IC0gKDAuMTE4ICsgMC4w
NjYpID0gMC41OTggLSAwLjE4NAotICAgICAgICAgICAgZCA9IDAuNDE0Ci0gICAgICAgICAgICBD
cmVkID0gMC4wICsgMC40MTQgPSAwLjQxNAotICAgICAgICAgICAgR3JlZW4gPSAwLjIgKyAwLjQx
NCA9IDAuNjE0Ci0gICAgICAgICAgICBDYmx1ZSA9IDAuNiArIDAuNDE0ID0gMS4wMTQKLSAgICAg
ICAgICAgIHJldHVybiBDbGlwQ29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLQotICAgICAgICBD
bGlwQ29sb3IoMC40MTQsIDAuNjE0LCAxLjAxNCkKLSAgICAgICAgICAgIGwgPSAwLjMgKiAwLjQx
NCArIDAuNTkgKiAwLjYxNCArIDAuMTEgKiAxLjEwMTQgPSAwLjEyNDIgKyAwLjM2MjI2ICsgMC4x
MjExNTQgPSAwLjYwNzYxNAotICAgICAgICAgICAgbiA9IG1pbigwLjQxNCwgMC42MTQsIDEuMDE0
KSA9IDAuNDE0Ci0gICAgICAgICAgICB4ID0gbWF4KDAuNDE0LCAwLjYxNCwgMS4wMTQpID0gMS4w
MTQKLSAgICAgICAgICAgIHggPiAxLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gMC42MDc2MTQg
KyAoKCgwLjQxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQpKSAvICgxLjAxNCAtIDAuNjA3
NjE0KSkgPSAKLSAgICAgICAgICAgICAgICAgICAgID0gMC42MDc2MTQgKyAoKC0wLjE5MzYxNCAq
IDAuMzkyMzg2KSAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0IC0gKDAuMDc1OTcxNDIgLyAwLjQwNjM4
NikgPSAwLjYwNzYxNCAtIDAuMTg2OTQzOTkgPSAwLjQyMDY3MDAxCi0gICAgICAgICAgICAgICAg
Q2dyZWVuID0gMC42MDc2MTQgKyAoKCgwLjYxNCAtIDAuNjA3NjE0KSAqICgxIC0gMC42MDc2MTQp
KSAvICgxLjAxNCAtIDAuNjA3NjE0KSkgPQotICAgICAgICAgICAgICAgICAgICAgICA9IDAuNjA3
NjE0ICsgKCgwLjAwMzM4NiAqIDAuMzkyMzg2KSAvIDAuNDA2Mzg2ID0gMC42MDc2MTQgKyAoMC4w
MDEzMjg2MiAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4wMDMyNjkzNSA9IDAuNjEwODgzMzUK
LSAgICAgICAgICAgICAgICBDYmx1ZSA9IDAuNjA3NjE0ICsgKCgoMS4wMTQgLSAwLjYwNzYxNCkg
KiAoMSAtIDAuNjA3NjE0KSkgLyAoMS4wMTQgLSAwLjYwNzYxNCkgPQotICAgICAgICAgICAgICAg
ICAgICAgID0gMC42MDc2MTQgKyAoKDAuNDA2Mzg2ICogMC4zOTIzODYpIC8gMC40MDYzODYpID0g
MC42MDc2MTQgKyAoMC4xNTk0NjAxOCAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgMC4zOTIzODYw
MSA9IDEuMAotICAgICAgICAgICAgcmV0dXJuICgwLjQyLCAwLjYxLCAxLjApCi0KLSAgICBUaGlz
IHZhbHVlIGlzIGVxdWl2YWxlbnQgdG8gKDEwOCwgMTU3LCAyNTUpLCB3aGljaCBpcyB0aGUgZXhw
ZWN0ZWQgY29sb3IuCi0gICAgVGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90aGVyIHBv
cnRzIG1pZ2h0IGV4cGVyaWVuY2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAgPGRpdiBp
ZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48L2Rpdj4K
LSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxwaGEtYWxw
aGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLWx1
bWlub3NpdHktZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1pbm9zaXR5LWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkwOWFhYzMuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFy
YWJsZS1ibGVuZC1tb2RlLWx1bWlub3NpdHktZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDM2ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhlYWQ+
Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tkcm9w
IHdpdGggdGhlIGNvbG9yIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c3R5bGUgdHlwZT0idGV4
dC9jc3MiPgotICAgICAgICAvKiBUaGVyZSBhcmUgZXhhY3RseSB0aGUgY29sb3IgdmFsdWVzIHdl
IGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xpZ2h0bHkgZGlmZmVyZW50Ci0gICAg
ICAgICAgIGNvbG9yIHJlc3VsdC4gKi8KLSAgICAgICAgI3NvbGlkLXNvbGlkIHsKLSAgICAgICAg
ICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5OCwgMzMsIDApOwotICAgICAgICAgICAgd2lkdGg6
IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAj
YWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4NCwgMTcy
LCAxODQpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogcmdiKDIwMywgMTAxLCA0OSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAw
cHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICB9Ci0gICAgICAgICNhbHBo
YS1hbHBoYSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjEzLCAxODIsIDE3
NSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9
InNvbGlkLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1zb2xpZCI+PC9kaXY+Ci0g
ICAgPGRpdiBpZD0ic29saWQtYWxwaGEiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLWFscGhh
Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1p
bm9zaXR5Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtbHVtaW5vc2l0eS5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA1ZTk3YzAwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1p
bm9zaXR5Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMjggKzAsMCBAQAotPCFET0NUWVBFIEhU
TUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCB0aGF0IGJsZW5k
cyB0aGUgc291cmNlIGFuZCB0aGUgYmFja2Ryb3Agd2l0aCB0aGUgbHVtaW5vc2l0eSBibGVuZCBt
b2RlLjwvdGl0bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAg
ICAgICAgI3NvbGlkLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5
MCUsIDUwJSwgMzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhl
aWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGx1bWlub3NpdHkgc291cmNlLWF0b3Ap
LCBtaXhfY29sb3IgMC4xIDAuMiAwLjQgMS4wKTsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEt
c29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwgMzAl
LCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbHVtaW5vc2l0eSBzb3VyY2UtYXRvcCksIG1peF9j
b2xvciAwLjIgMC40IDAuOCAxLjApOwotICAgICAgICB9Ci0gICAgICAgICNzb2xpZC1hbHBoYSB7
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoOTAlLCA1MCUsIDMwJSk7Ci0gICAg
ICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9t
aXgtY29sb3IuZnMnKSBsdW1pbm9zaXR5IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQg
MC44IDAuNSk7Ci0gICAgICAgIH0KLSAgICAgICAgI2FscGhhLWFscGhhIHsKLSAgICAgICAgICAg
IGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTAlLCA1MCUsIDMwJSwgMC41KTsKLSAgICAgICAgICAg
IHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xv
ci5mcycpIGx1bWlub3NpdHkgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41
KTsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBU
aGUgZm9sbG93aW5nIHByb29mIGFwcGxpZXMgdG8gdGhlIGZpcnN0IGNhc2UgKCNzb2xpZC1zb2xp
ZCkgd2hlcmUgYm90aCB0aGUgYmFja2Ryb3AgYW5kIHRoZQotICAgIHNvdXJjZSBhcmUgc29saWQu
Ci0KLSAgICBJbiB0aGlzIHRlc3QgdGhlIGZvbGxvd2luZyBjb21iaW5hdGlvbnMgYXJlIGFsc28g
dGVzdGVkOgotICAgICAgICBCYWNrZHJvcCB3aXRoIDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc29s
aWQgc291cmNlCi0gICAgICAgIFNvbGlkIGJhY2tkcm9wIGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0
aCAwLjUgYWxwaGEKLSAgICAgICAgQmFja2Ryb3Agd2l0aCAwLjUgYmxlbmRlZCB3aXRoIHNvdXJj
ZSB3aXRoIDAuNSBhbHBoYQotICAgIFRoZSB1bmRlcmxheWluZyBwcm9vZiBvZiB0aGUgYWJvdmUg
bWVudGlvbmVkIGNhc2VzIGlzIHRoZSBzYW1lOiB0aGUgY29sb3JzIGFyZSBwcmVtdWx0aXBsaWVk
Ci0gICAgYW5kIHRoZW4gYmxlbmRlZCB0b2dldGhlci4KLQotICAgIFRoZSBmaW5hbCBjb2xvciBv
ZiAjc29saWQtc29saWQgZGVwZW5kcyBvbiB0aGUgImx1bWlub3NpdHkiIGJsZW5kIG1vZGUsIHdo
aWNoIGlzIGEgbm9uLXNlcGFyYWJsZQotICAgIGJsZW5kIG1vZGUuIFRoaXMgbWVhbnMgdGhhdCBj
b2xvcnMgYXJlIGJsZW5kZWQgdG9nZXRoZXIgYXMgYSB3aG9sZSwgbm90IGNvbXBvbmVudCBieSBj
b21wb25lbnQuCi0KLSAgICBUaGUgZm9ybXVsYSBmb3IgdGhpcyBibGVuZCBtb2RlIGlzOgotICAg
ICAgICBDciA9IEIoQ2IsIENzKSA9IFNldEx1bShDYiwgTHVtKENzKSkKLQotICAgIFdpdGg6Ci0g
ICAgICAgIENyOiB0aGUgcmVzdWx0aW5nIGNvbG9yCi0gICAgICAgIENiOiB0aGUgYmFja2Ryb3Ag
Y29sb3IsIHdoaWNoIGlzICNzb2xpZC1zb2xpZCAoIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9y
IikKLSAgICAgICAgQ3M6IHRoZSBzb3VyY2UgY29sb3IsIHdoaWNoIGlzIG1peF9jb2xvcgotICAg
ICAgICBMdW0oQ3MpOiB0aGUgbHVtaW5vc2l0eSBvZiBDcy4gTHVtaW5vc2l0eSBmb3IgY29sb3Ig
QyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBieQotICAgICAgICAgICBMdW0oQyk6IDAuMyAqIENyZWQg
KyAwLjU5ICogQ2dyZWVuICsgMC4xMSAqIENibHVlCi0gICAgICAgIFNldEx1bShDYiwgTHVtKENz
KSk6IHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdGhlIGx1bWlub3NpdHkuCi0KLSAgICBUaGUgZnVu
Y3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5IGwgb24gdGhlIGNvbG9yIEMgaXMgZ2VuZXJh
bGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgU2V0THVtKEMsIGwpCi0gICAgICAgICAgICBkID0g
bCAtIEx1bShDKQotICAgICAgICAgICAgQ3JlZCA9IENyZWQgKyBkCi0gICAgICAgICAgICBDZ3Jl
ZW4gPSBDZ3JlZW4gKyBkCi0gICAgICAgICAgICBDYmx1ZSA9IENibHVlICsgZAotICAgICAgICAg
ICAgcmV0dXJuIENsaXBDb2xvcihDKQotCi0gICAgQXQgdGhpcyBwb2ludCB0aGUgY29sb3IgQyBo
YXMgdG8gYmUgY2xpcHBlZCBiZXR3ZWVuIFswLi4xXSAgYnkgdGhlIENsaXBDb2xvciBmdW5jdGlv
biwgd2hpY2ggaXMKLSAgICBnZW5lcmFsbHkgZGVmaW5lZCBieToKLQotICAgICAgICBDbGlwQ29s
b3IoQykKLSAgICAgICAgICAgIGwgPSBMdW0oQykKLSAgICAgICAgICAgIG4gPSBtaW4oQ3JlZCwg
Q2dyZWVuLCBDYmx1ZSkKLSAgICAgICAgICAgIHggPSBtYXgoQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkK
LSAgICAgICAgICAgIGlmIG4gPCAwLjAKLSAgICAgICAgICAgICAgICBDcmVkID0gbCArICgoKENy
ZWQgLSBsKSAqIGwpIC8gKGwgLSBuKSkKLSAgICAgICAgICAgICAgICBDZ3JlZW4gPSBsICsgKCgo
Q2dyZWVuIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2JsdWUgPSBsICsg
KCgoQ2JsdWUgLSBsKSAqIGwpIC8gKGwgLSBuKSkKLSAgICAgICAgICAgIGlmIHggPiAxLjAKLSAg
ICAgICAgICAgICAgICBDcmVkID0gbCArICgoKENyZWQgLSBsKSAqICgxIC0gbCkpIC8gKHggLSBs
KSkKLSAgICAgICAgICAgICAgICBDZ3JlZW4gPSBsICsgKCgoQ2dyZWVuIC0gbCkgKiAoMSAtIGwp
KSAvICh4IC0gbCkpCi0gICAgICAgICAgICAgICAgQ2JsdWUgPSBsICsgKCgoQ2JsdWUgLSBsKSAq
ICgxIC0gbCkpIC8gKHggLSBsKSkKLSAgICAgICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlz
IHRlc3QgY2FzZToKLSAgICAgICAgTHVtKENiKSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAw
LjExICogMC4zCi0gICAgICAgIEx1bShDYikgPSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAg
ICBMdW0oQ2IpID0gMC41OTgKLQotICAgICAgICBMdW0oQ3MpID0gMC4zICogMC4xICsgMC41OSAq
IDAuMiArIDAuMTEgKiAwLjQKLSAgICAgICAgTHVtKENzKSA9IDAuMDMgKyAwLjExOCArIDAuMDQ0
Ci0gICAgICAgIEx1bShDcykgPSAwLjE5MgotCi0gICBDciA9IFNldEx1bShDYiwgMC4xOTIpCi0g
ICAgICAgIGQgPSAwLjE5MiAtIDAuNTk4Ci0gICAgICAgIGQgPSAwLjQwNgotICAgICAgICBDcmVk
ID0gMC45IC0gMC40MDYgPSAwLjQ5NAotICAgICAgICBDZ3JlZW4gPSAwLjUgLSAwLjQwNiA9IDAu
MDk0Ci0gICAgICAgIENibHVlID0gMC4zIC0gMC40MDYgPSAtMC4xMDYKLSAgICAgICAgcmV0dXJu
IENsaXBDb2xvcigwLjQ5NCwgMC4wOTQsIC0wLjEwNikKLQotICAgIENsaXBDb2xvcigwLjQ5NCwg
MC4wOTQsIC0wLjEwNikKLSAgICAgICAgbCA9IDAuNDk0ICogMC4zICsgMC4wOTQgKiAwLjU5IC0g
MC4xMDYgKiAwLjExID0gMC4xNDgyICsgMC4wNTU0NiAtIDAuMDExNjYgPSAwLjE5MgotICAgICAg
ICBuID0gbWluKDAuNDk0LCAwLjA5NCwgLTAuMTA2KSA9IC0wLjEwNgotICAgICAgICB4ID0gbWF4
KDAuNDk0LCAwLjA5NCwgLTAuMTA2KSA9IDAuNDk0Ci0gICAgICAgIG4gPCAwLjAKLSAgICAgICAg
ICAgIENyZWQgPSAwLjE5MiArICgoKDAuNDk0IC0gMC4xOTIpICogMC4xOTIpIC8gKDAuMTkyICsg
MC4xMDYpKSA9Ci0gICAgICAgICAgICAgICAgID0gMC4xOTIgKyAoMC4zMDIgKiAwLjE5MikgLyAw
LjI5OCA9IDAuMTkyICsgKDAuMDU3OTg0IC8gMC4yOTgpID0gMC4xOTIgKyAwLjE5NDU3NzE4ID0g
MC4zODY1NzcxOAotICAgICAgICAgICAgQ2dyZWVuID0gMC4xOTIgKyAoKCgwLjA5NCAtIDAuMTky
KSAqIDAuMTkyKSAvICgwLjE5MiArIDAuMTA2KSkgPQotICAgICAgICAgICAgICAgICAgID0gMC4x
OTIgKyAoLTAuMDk4ICogMC4xOTIpIC8gMC4yOTggPSAwLjE5MiAtICgwLjAxODgxNiAvIDAuMjk4
KSA9IDAuMTkyIC0gMC4wNjMxNDA5NCA9IDAuMTI4ODU5MDYKLSAgICAgICAgICAgIENibHVlID0g
MC4xOTIgKyAoKCgtMC4xMDYgLSAwLjE5MikgKiAwLjE5MikgLyAoMC4xOTIgKyAwLjEwNikpID0K
LSAgICAgICAgICAgICAgICAgID0gMC4xOTIgKyAoLTAuMjk4ICogMC4xOTIpIC8gMC4yOTggPSAw
LjE5MiAtIDAuMTkyID0gMC4wCi0gICAgICAgIHJldHVybiAoMC4zODY1NzcxOCwgMC4xMjg4NTkw
NiwgMC4wMCkKLQotICAgIFRoaXMgdmFsdWUgaXMgZXF1aXZhbGVudCB0byAoOTgsIDMzLCAwKSwg
d2hpY2ggaXMgdGhlIGV4cGVjdGVkIGNvbG9yLgotICAgIFRoaXMgaXMgdGhlIGV4YWN0IGNvbG9y
IHZhbHVlLCBvdGhlciBwb3J0cyBtaWdodCBleHBlcmllbmNlIHNsaWdodCBkaWZmZXJlbmNlcy4K
LS0tPgotICAgIDxkaXYgaWQ9InNvbGlkLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBo
YS1zb2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0ic29saWQtYWxwaGEiPjwvZGl2PgotICAgIDxk
aXYgaWQ9ImFscGhhLWFscGhhIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFi
bGUtYmxlbmQtbW9kZS1zYXR1cmF0aW9uLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtc2F0
dXJhdGlvbi1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMWQ0
OWM4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1zYXR1cmF0aW9uLWV4cGVjdGVkLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxh
bmc9ImVuIj4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgYmxlbmRzIHRoZSBzb3VyY2Ug
YW5kIHRoZSBiYWNrZHJvcCB3aXRoIHRoZSBzYXR1cmF0aW9uIGJsZW5kIG1vZGUuPC90aXRsZT4K
LSAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAvKiBUaGVzZSBhcmUgZXhhY3Rs
eSB0aGUgY29sb3IgdmFsdWVzIHdlIGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xp
Z2h0IGRpZmZlcmVudAotICAgICAgICAgICBjb2xvciByZXN1bHQuICovCi0gICAgICAgICNzb2xp
ZC1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTkxLCAxNDEsIDEx
NSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiByZ2IoMTk4LCAxODUsIDE5OCk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICB9Ci0gICAgICAgICNzb2xpZC1h
bHBoYSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjMwLCAxMjgsIDc2KTsK
LSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0g
ICAgICAgIH0KLSAgICAgICAgI2FscGhhLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigyMjAsIDE4OSwgMTgyKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFk
PgotPGJvZHk+Ci0gICAgPGRpdiBpZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9
ImFscGhhLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0g
ICAgPGRpdiBpZD0iYWxwaGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNl
cGFyYWJsZS1ibGVuZC1tb2RlLXNhdHVyYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1zYXR1cmF0
aW9uLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFjMzI4YmIuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNl
cGFyYWJsZS1ibGVuZC1tb2RlLXNhdHVyYXRpb24uaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEz
NyArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9ImVuIj4KLTxoZWFkPgotICAg
IDx0aXRsZT5UZXN0IHRoYXQgYmxlbmRzIHRoZSBzb3VyY2UgYW5kIHRoZSBiYWNrZHJvcCB3aXRo
IHRoZSBzYXR1cmF0aW9uIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c2NyaXB0PgotICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5
bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6
IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykg
c2F0dXJhdGlvbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjEgMC4yIDAuNCAxLjApOwotICAg
ICAgICB9Ci0gICAgICAgICNhbHBoYS1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2JhKDkwJSwgNTAlLCAzMCUsIDAuNSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBzYXR1cmF0
aW9uIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDEuMCk7Ci0gICAgICAgIH0K
LSAgICAgICAgI3NvbGlkLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJn
Yig5MCUsIDUwJSwgMzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAg
IGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIHNhdHVyYXRpb24gc291cmNlLWF0
b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41KTsKLSAgICAgICAgfQotICAgICAgICAjYWxw
aGEtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwg
MzAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0
OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgc2F0dXJhdGlvbiBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjIgMC40IDAuOCAwLjUpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVh
ZD4KLTxib2R5PgotPCEtLQotICAgIFRoZSBmb2xsb3dpbmcgcHJvb2YgYXBwbGllcyB0byB0aGUg
Zmlyc3QgY2FzZSAoI3NvbGlkLXNvbGlkKSB3aGVyZSBib3RoIHRoZSBiYWNrZHJvcCBhbmQgdGhl
Ci0gICAgc291cmNlIGFyZSBzb2xpZC4KLQotICAgIEluIHRoaXMgdGVzdCB0aGUgZm9sbG93aW5n
IGNvbWJpbmF0aW9ucyBhcmUgYWxzbyB0ZXN0ZWQ6Ci0gICAgICAgIEJhY2tkcm9wIHdpdGggMC41
IGFscGhhIGJsZW5kZWQgd2l0aCBzb2xpZCBzb3VyY2UKLSAgICAgICAgU29saWQgYmFja2Ryb3Ag
YmxlbmRlZCB3aXRoIHNvdXJjZSB3aXRoIDAuNSBhbHBoYQotICAgICAgICBCYWNrZHJvcCB3aXRo
IDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc291cmNlIHdpdGggMC41IGFscGhhCi0gICAgVGhlIHVu
ZGVybHlpbmcgcHJvb2Ygb2YgdGhlIGFib3ZlIG1lbnRpb25lZCBjYXNlcyBpcyB0aGUgc2FtZTog
dGhlIGNvbG9ycyBhcmUgcHJlbXVsdGlwbGllZAotICAgIGFuZCB0aGVuIGJsZW5kZWQgdG9nZXRo
ZXIuCi0KLSAgICBUaGUgZmluYWwgY29sb3Igb2YgI3NvbGlkLXNvbGlkIGRlcGVuZHMgb24gdGhl
ICJzYXR1cmF0aW9uIiBibGVuZCBtb2RlLCB3aGljaCBpcyBhIG5vbi1zZXBhcmFibGUKLSAgICBi
bGVuZCBtb2RlLiBUaGlzIG1lYW5zIHRoYXQgY29sb3JzIGFyZSBibGVuZGVkIHRvZ2V0aGVyIGFz
IGEgd2hvbGUsIG5vdCBjb21wb25lbnQgYnkgY29tcG9uZW50LgotCi0gICAgVGhlIGZvcm11bGEg
Zm9yIHRoaXMgYmxlbmQgbW9kZSBpczoKLSAgICAgICAgQ3IgPSBCKENiLCBDcykgPSBTZXRMdW0o
U2V0U2F0KENiLCBTYXQoQ3MpKSwgTHVtKENiKSkKLQotICAgIFdpdGg6Ci0gICAgICAgIENyOiB0
aGUgcmVzdWx0aW5nIGNvbG9yCi0gICAgICAgIENiOiB0aGUgYmFja2Ryb3AgY29sb3IsIHdoaWNo
IGlzICNzb2xpZC1zb2xpZCAoIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9yIikKLSAgICAgICAg
Q3M6IHRoZSBzb3VyY2UgY29sb3IsIHdoaWNoIGlzIG1peF9jb2xvcgotICAgICAgICBTYXQoQ2Ip
OiB0aGUgc2F0dXJhdGlvbiBvZiBDYi4gU2F0dXJhdGlvbiBmb3IgY29sb3IgQyBpcyBnZW5lcmFs
bHkgZGVmaW5lZCBieQotICAgICAgICAgICBTYXQoQyk6IG1heChDcmVkLCBDZ3JlZW4sIENibHVl
KSAtIG1pbihDcmVkLCBDZ3JlZW4sIENibHVlKQotICAgICAgICBMdW0oQ3MpOiB0aGUgbHVtaW5v
c2l0eSBvZiBDcy4gTHVtaW5vc2l0eSBmb3IgY29sb3IgQyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBi
eQotICAgICAgICAgICBMdW0oQyk6IDAuMyAqIENyZWQgKyAwLjU5ICogQ2dyZWVuICsgMC4xMSAq
IENibHVlCi0gICAgICAgIFNldFNhdChDYiwgU2F0KENzKSk6IHRoZSBmdW5jdGlvbiB0aGF0IHNl
dHMgdGhlIHNhdHVyYXRpb24KLSAgICAgICAgU2V0THVtKFNldFNhdChDYiwgU2F0KENzKSksIEx1
bShDYikpOiB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhl
IGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgbHVtaW5vc2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdl
bmVyYWxseSBkZWZpbmVkIGJ5OgotCi0gICAgICAgIFNldEx1bShDLCBsKQotICAgICAgICAgICAg
ZCA9IGwgLSBMdW0oQykKLSAgICAgICAgICAgIENyZWQgPSBDcmVkICsgZAotICAgICAgICAgICAg
Q2dyZWVuID0gQ2dyZWVuICsgZAotICAgICAgICAgICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAg
ICAgICAgIHJldHVybiBDbGlwQ29sb3IoQykKLQotICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9y
IEMgaGFzIHRvIGJlIGNsaXBwZWQgYmV0d2VlbiBbMC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVu
Y3Rpb24sIHdoaWNoIGlzCi0gICAgZ2VuZXJhbGx5IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xp
cENvbG9yKEMpCi0gICAgICAgICAgICBsID0gTHVtKEMpCi0gICAgICAgICAgICBuID0gbWluKENy
ZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAgICAgICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2Js
dWUpCi0gICAgICAgICAgICBpZiBuIDwgMC4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAo
KChDcmVkIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCAr
ICgoKENncmVlbiAtIGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAgICAgICAgIENibHVlID0g
bCArICgoKENibHVlIC0gbCkgKiBsKSAvIChsIC0gbikpCi0gICAgICAgICAgICBpZiB4ID4gMS4w
Ci0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4
IC0gbCkpCi0gICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogKDEg
LSBsKSkgLyAoeCAtIGwpKQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0g
bCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgVGhl
IGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgc2F0dXJhdGlvbiBzIG9uIHRoZSBjb2xvciBDIGlzIGdl
bmVyYWxseSBkZWZpbmVkIGJ5OgotCi0gICAgICAgIFNldFNhdChDLCBzKQotICAgICAgICAgICAg
aWYoQ21heCA+IENtaW4pCi0gICAgICAgICAgICAgICAgQ21pZCA9ICgoKENtaWQgLSBDbWluKSAq
IHMpIC8gKENtYXggLSBDbWluKSkKLSAgICAgICAgICAgICAgICBDbWF4ID0gcwotICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgICAgIENtaWQgPSBDbWF4ID0gMAotICAgICAgICAgICAgQ21p
biA9IDAKLSAgICAgICAgICAgIHJldHVybiBDCi0KLSAgICBJbiB0aGlzIHRlc3QgY2FzZToKLSAg
ICAgICAgTHVtKENiKSA9IDAuMyAqIDAuOSArIDAuNTkgKiAwLjUgKyAwLjExICogMC4zCi0gICAg
ICAgIEx1bShDYikgPSAwLjI3ICsgMC4yOTUgKyAwLjAzMwotICAgICAgICBMdW0oQ2IpID0gMC41
OTgKLQotICAgICAgICBTYXQoQ3MpID0gbWF4KDAuMSwgMC4yLCAwLjQpIC0gbWluKDAuMSwgMC4y
LCAwLjQpCi0gICAgICAgIFNhdChDcykgPSAwLjQgLSAwLjEKLSAgICAgICAgU2F0KENzKSA9IDAu
MwotCi0gICAgICAgIEZvciB0aGUgc2FrZSBvZiBicmV2aXR5IHRoZSByZXN1bHQgb2YgdGhpcyBj
b21wdXRhdGlvbiBpcyBjYWxsZWQgQ3QKLSAgICAgICAgQ3QgPSBTZXRTYXQoQ2IsIFNhdChDcykp
Ci0gICAgICAgICAgICAwLjkgPiAwLjMKLSAgICAgICAgICAgICAgICBDbWlkID0gKCgoMC41IC0g
MC4zKSAqIDAuMykgLyAoMC45IC0gMC4zKSA9IDAuMiAqIDAuMyAvIDAuNiA9IDAuMDYgLyAwLjYg
PSAwLjEwCi0gICAgICAgICAgICAgICAgQ21heCA9IDAuMwotICAgICAgICAgICAgQ21pbiA9IDAK
LSAgICAgICAgICAgIHJldHVybiAoMC4zLCAwLjEwLCAwLjApCi0KLSAgICBDciA9IFNldEx1bShD
dCwgMC41OTgpCi0gICAgICAgIGQgPSAwLjU5OCAtICgwLjMgKiAwLjMgKyAwLjU5ICogMC4xMCAr
IDAuMTEgKiAwLjApID0gMC41OTggLSAoMC4wOSArIDAuMDU5KSA9IDAuNTk4IC0gMC4xNDkKLSAg
ICAgICAgZCA9IDAuNDQ5Ci0gICAgICAgIENyZWQgPSAwLjMgKyAwLjQ0OSA9IDAuNzQ5Ci0gICAg
ICAgIENncmVlbiA9IDAuMTAgKyAwLjQ0OSA9IDAuNTQ5Ci0gICAgICAgIENibHVlID0gMC4wICsg
MC40NDkgPSAwLjQ0OQotICAgICAgICByZXR1cm4gKDAuNzQ5LCAwLjU0OSwgMC40NDkpCi0KLSAg
ICBUaGlzIHZhbHVlIGlzIGVxdWl2YWxlbnQgdG8gKDE5MSwgMTQwLCAxMTUpLCB3aGljaCBpcyB0
aGUgZXhwZWN0ZWQgY29sb3IuCi0gICAgVGhpcyBpcyB0aGUgZXhhY3QgY29sb3IgdmFsdWUsIG90
aGVyIHBvcnRzIG1pZ2h0IGV4cGVyaWVuY2Ugc2xpZ2h0IGRpZmZlcmVuY2VzLgotLS0+Ci0gICAg
PGRpdiBpZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48
L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxw
aGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1dGVkLXN0
eWxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDUwZGEwYTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1dGVkLXN0eWxlLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDUwOCArMCwwIEBACi1UZXN0cyB0aGUgY29t
cHV0ZWQgc3R5bGUgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRl
ciBwcm9wZXJ0eS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotQ3VzdG9tIHdp
dGggdmVydGV4IHNoYWRlciA6IGN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMSAxKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFk
ZXIpIG5vbmUsIDEgMSknCi0KLUN1c3RvbSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxl
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3Rv
X18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmls
dGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJS
dWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggYm90aCBzaGFkZXJzIDogY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hh
ZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicK
LVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUg
aXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFz
ZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZp
bHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90
b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdD
U1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIG5vcm1hbCA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwpKQotUEFTUyByZW1vdmVCYXNl
VVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwg
MSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxp
c3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3Ip
IGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwg
MSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIG11bHRpcGx5
IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5KSkKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IHNv
dXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NT
U1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlz
ICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
Y29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVs
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmls
dGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNz
c1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkg
c291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5k
IG1vZGUgc2NyZWVuIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNjcmVl
bikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
Y3JlZW4gc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
Y3JlZW4gc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGJsZW5kIG1vZGUgb3ZlcmxheSA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBvdmVybGF5KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIG92ZXJsYXkgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBvdmVybGF5IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1
bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRhcmtlbiA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBkYXJrZW4pKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgZGFya2VuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgZGFya2VuIHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGgg
bWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGxpZ2h0ZW4gOiBjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5
bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBsaWdodGVuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBt
aXgodXJsKGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbiBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBjb2xvci1kb2RnZSA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1kb2RnZSkpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1kb2RnZSBzb3Vy
Y2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAn
Q1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNv
bnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUu
bGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NU
ZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvbG9yLWRvZGdl
IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVu
ZCBtb2RlIGNvbG9yLWJ1cm4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
Y29sb3ItYnVybikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBjb2xvci1idXJuIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1
Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY29sb3ItYnVybiBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRo
IG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBoYXJkLWxpZ2h0IDogY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIGhhcmQtbGlnaHQpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZp
bHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaGFyZC1saWdodCBzb3VyY2UtYXRvcCksIDEg
MSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGhhcmQtbGlnaHQgc291cmNlLWF0b3Ap
LCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgc29mdC1s
aWdodCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb2Z0LWxpZ2h0KSkK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvZnQt
bGlnaHQgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
b2Z0LWxpZ2h0IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9u
IGFuZCBibGVuZCBtb2RlIGRpZmZlcmVuY2UgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50
LnNoYWRlcikgZGlmZmVyZW5jZSkpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBkaWZmZXJlbmNlIHNvdXJjZS1hdG9wKSwgMSAxKScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxp
c3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxl
Lm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00K
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgZGlmZmVyZW5jZSBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBleGNsdXNpb24gOiBjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZXhjbHVzaW9uKSkKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGV4Y2x1c2lvbiBzb3VyY2UtYXRv
cCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGV4Y2x1c2lvbiBzb3VyY2Ut
YXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBo
dWUgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaHVlKSkKLVBBU1MgcmVt
b3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSBzb3VyY2UtYXRv
cCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSBzb3VyY2UtYXRvcCks
IDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBzYXR1cmF0
aW9uIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNhdHVyYXRpb24pKQot
UEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2F0dXJh
dGlvbiBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNh
dHVyYXRpb24gc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24g
YW5kIGJsZW5kIG1vZGUgY29sb3IgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRl
cikgY29sb3IpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgY29sb3Igc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hh
ZGVyKSBjb2xvciBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlv
biBhbmQgYmxlbmQgbW9kZSBsdW1pbm9zaXR5IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIGx1bWlub3NpdHkpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbHVtaW5vc2l0eSBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVM
aXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVs
ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9N
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIGx1bWlub3NpdHkgc291cmNlLWF0b3ApLCAxIDEpJwotCi1D
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgY2xlYXIg
OiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY2xlYXIpKQotUEFTUyByZW1v
dmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGNsZWFyKSwg
MSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxp
c3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3Ip
IGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGNsZWFyKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGNv
cHkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29weSkpCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgY29weSks
IDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBjb3B5KSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNv
dXJjZS1vdmVyIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1v
dmVyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG5vcm1hbCBzb3VyY2Utb3ZlciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG5vcm1hbCBzb3VyY2Utb3ZlciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBh
bmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1vdmVyIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLW92ZXIpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGRlc3RpbmF0aW9u
LW92ZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4
dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgZGVzdGlu
YXRpb24tb3ZlciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSBzb3VyY2UtaW4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50
LnNoYWRlcikgc291cmNlLWluKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtaW4pLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNlLWluKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4
IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGRlc3RpbmF0aW9uLWluIDogY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWluKSkKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBkZXN0
aW5hdGlvbi1pbiksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBp
cyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
LmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1
bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5j
c3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBk
ZXN0aW5hdGlvbi1pbiksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxw
aGEgY29tcG9zaXRpbmcgbW9kZSBzb3VyY2Utb3V0IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIHNvdXJjZS1vdXQpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxl
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1vdXQpLCAxIDEpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNlLW91dCksIDEgMSknCi0KLUN1c3RvbSB3
aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1v
dXQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tb3V0
KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5v
cm1hbCBkZXN0aW5hdGlvbi1vdXQpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBub3JtYWwgZGVzdGluYXRpb24tb3V0KSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNvdXJjZS1hdG9wIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1hdG9wKSkKLVBBU1MgcmVtb3ZlQmFzZVVS
TChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEg
MSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEg
MSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9k
ZSBkZXN0aW5hdGlvbi1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IGRlc3RpbmF0aW9uLWF0b3ApKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgbm9ybWFsIGRlc3RpbmF0aW9uLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgZGVzdGluYXRpb24tYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSB4b3IgOiBj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgeG9yKSkKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCB4b3IpLCAxIDEpJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3Rv
dHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NT
U1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgeG9yKSwgMSAxKScKLQotQ3VzdG9t
IHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0LCBhbHBoYSBjb21wb3NpdGlu
ZyBtb2RlIHNlY29uZCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0
aXBseSBjbGVhcikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBtdWx0aXBseSBjbGVhciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIG11bHRpcGx5IGNsZWFyKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFu
ZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGZpcnN0LCBibGVuZCBtb2RlIHNlY29uZCA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVh
ciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSwg
MSAxKScKLQotQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciBhbmQgbWl4IGZ1bmN0aW9uIDogY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKQotUEFTUyBy
ZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVy
JykpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBub3JtYWwgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRo
IG1peCBmdW5jdGlvbiBhbmQgbWVzaCBzaXplIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpKSwgMTApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBub3JtYWwgc291cmNlLWF0b3ApLCAxMCAxMCknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEwIDEwKScKLQotQ3VzdG9tIHdpdGgg
bWVzaCBzaXplIDogY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApCi1QQVNTIHJlbW92ZUJh
c2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMg
J2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMTAgMTApJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRl
cikgbm9uZSwgMTAgMTApJwotCi1DdXN0b20gd2l0aCBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmls
dGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIDIwKScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIDogY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSwgMTApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9u
ZSwgMTAgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMTAgMTApJwotCi1DdXN0b20gd2l0
aCBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAg
MjApCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKScKLQotQ3VzdG9tIHdpdGggZGV0
YWNoZWQgbWVzaCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRhY2hlZCkK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSBkZXRh
Y2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSBkZXRhY2hlZCknCi0KLUN1c3Rv
bSB3aXRoIGRldGFjaGVkIGFuZCBtZXNoIHNpemUgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUu
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIDIwIGRldGFjaGVkKScKLQotQ3VzdG9tIHdpdGggZGVmYXVsdCBmaWx0ZXItYm94IDog
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmls
dGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCAxIDEpJwotCi1DdXN0b20gd2l0aCBpbnRlZ2VyIHBhcmFtZXRlcnMgOiBjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNykK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEg
MSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEgMSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi0KLUN1c3RvbSB3
aXRoIGZsb2F0IHBhcmFtZXRlcnMgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
cDEgMS4xLCBwMiAyLjIgMy4zLCBwMyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KQot
UEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSAx
LjEsIHAyIDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4yIDYuMyA3LjQpJwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlw
ZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1Zh
bHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1
YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NV
U1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQu
MSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCknCi0KLUN1c3RvbSB3aXRoIHRyYW5zZm9ybSB0cmFu
c2xhdGUgcGFyYW1ldGVyIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIHRy
YW5zbGF0ZSgxMHB4LCAxMHB4KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDEsIDAsIDAsIDEsIDEwLCAxMCkpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVy
bChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIG1hdHJpeCgxLCAwLCAwLCAxLCAxMCwgMTApKScK
LQotQ3VzdG9tIHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtIHBhcmFtZXRlcnMgOiBjdXN0b20obm9u
ZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgdHJhbnNsYXRlKDEwcHgsIDEwcHgpLCBwMiBzY2Fs
ZSgyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEg
MSwgcDEgbWF0cml4KDEsIDAsIDAsIDEsIDEwLCAxMCksIHAyIG1hdHJpeCgyLCAwLCAwLCAyLCAw
LCAwKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDEsIDAsIDAs
IDEsIDEwLCAxMCksIHAyIG1hdHJpeCgyLCAwLCAwLCAyLCAwLCAwKSknCi0KLUN1c3RvbSB3aXRo
IG11bHRpcGxlIHRyYW5zZm9ybXMgc2luZ2xlIHBhcmFtZXRlciA6IGN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBweCkgc2NhbGUoMikpCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIG1hdHJp
eCgyLCAwLCAwLCAyLCAxMCwgMTApKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3Rv
X18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmls
dGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJS
dWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBw
MSBtYXRyaXgoMiwgMCwgMCwgMiwgMTAsIDEwKSknCi0KLUN1c3RvbSB3aXRoIHBlcmNlbnQgdHJh
bnNmb3JtIHBhcmFtZXRlciA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0
cmFuc2xhdGUoNTAlLCA1MCUpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMjUwLCAzMDApKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMjUwLCAzMDAp
KScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyA6IGN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAzIDQg
NSwgcDQgNCA1IDYgNykKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQg
NSA2IDcpJwotCi1NdWx0aXBsZSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGdyYXlzY2FsZSgpIGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpCi1QQVNTIHJlbW92ZUJhc2VV
UkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2dy
YXlzY2FsZSgxKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSBzZXBpYSgx
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMwot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9HUkFZU0NBTEUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdn
cmF5c2NhbGUoMSknCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3Nz
VGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9T
RVBJQQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ3NlcGlhKDEpJwot
Ci1DdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2YgdGhyZWUgdmFsdWVzIDogY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEsIDIsIDMpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLCAyLCAz
KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMSwgMiwgMykpJwot
Ci1DdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2YgdGhyZWUgZmxvYXRpbmcgcG9pbnQgdmFs
dWVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEuNjE4MCwg
LTIuNzE4MiwgMy4xNDE1KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMS42MTgsIC0yLjcxODIsIDMuMTQxNSkpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVy
bChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDEuNjE4LCAtMi43MTgyLCAzLjE0MTUp
KScKLQotQ3VzdG9tIHdpdGggYXJyYXkoKSBtYWRlIHVwIG9mIHNldmVyYWwgZmxvYXRpbmcgcG9p
bnQgYW5kIGludGVnZXIgdmFsdWVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciks
IGExIGFycmF5KDEuNjE4MCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLjYxOCwg
MSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAx
LCBhMSBhcnJheSgxLjYxOCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKScKLQotQ3VzdG9tIHdp
dGggYXJyYXkoKSBtYWRlIHVwIG9mIDI0NyBkaWZmZXJlbnQgZmxvYXRpbmcgcG9pbnQgdmFsdWVz
IDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDYuMDAsIDM4LjU4
LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEs
IDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAy
MS45NCwgNjIuNzAsIDc3Ljk2LCA2Ny4yNywgMi43NSwgMjguMTYsIDguODgsIDExLjYxLCAzNC44
OSwgNDUuNzUsIDU0LjU1LCAzNS4wNCwgNi4xMywgNjkuNjgsIDgxLjIxLCA0OS40NCwgNTQuNzQs
IDI2Ljc0LCA5MS40OSwgNjguMjAsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44Nywg
NzEuNzMsIDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAu
NDgsIDgxLjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4y
NiwgMzQuNjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUs
IDM1LjAyLCAzOS4wMCwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwg
MjcuNzIsIDI4LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5
OC40NSwgODcuNTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMx
LjczLCAyLjkwLCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIs
IDUzLjk2LCAzNS4wNiwgNjcuNTAsIDc2LjYyLCAzNS4wMiwgMS42MiwgMTMuMDUsIDMzLjU5LCAy
Ni44OSwgMzYuOTQsIDc0LjEzLCA5NS4wOSwgNTYuODcsIDQ2LjAxLCAxMS45NCwgMTIuOTIsIDQ4
Ljg4LCAxMS4wMywgMjQuODAsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAu
MzUsIDQxLjEwLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUwLCA4OC40MSwgOTAuMzQs
IDk3LjYyLCA1OC43MCwgMjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwg
OTEuMjIsIDc4LjIxLCA2Mi4zMCwgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5
Ny40MiwgOTYuNDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIwLCAyNi42NSwgNzgu
MzksIDk1LjI2LCA2Ni44MCwgMzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3
LCA2MS4wMSwgOTUuNjgsIDguNTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNDAsIDEyLjM1LCA5
OS4zOSwgNS44MCwgNjguMTAsIDczLjg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4w
OCwgNTQuNDUsIDg3LjY0LCAzNi4xNCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQw
LCA1LjkwLCAxNS43MCwgMTAuODgsIDU1LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywg
NjAuMzAsIDQuMzIsIDcuMDUsIDMuMzQsIDkuODcsIDY0LjUxLCA0LjYwLCA1NC4xNiwgNDguODAs
IDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgsIDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5
My43MCwgMjMuNzksIDg5LjU3LCAxNC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5
LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcu
NzUsIDQxLjY1LCA2Mi4zNSwgOTAuNDAsIDQwLjc3LCA1My45MywgODAuMjMsIDg0LjQ5LCAyMC4x
OCwgNDUuMzYsIDI2LjAyLCA5My43MiwgNjUuNTQsIDMyLjg2KSkKLVBBU1MgcmVtb3ZlQmFzZVVS
TChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoNiwgMzguNTgsIDQw
LjE0LCAzNC4wMywgODMuMzMsIDI0LjE4LCA2OC4zNywgMTUuODcsIDU2LjU2LCA3My4yMSwgOTku
MDUsIDI0LjY0LCA2LjM5LCA2OS4zNCwgOTEuMTksIDI3Ljk4LCAzNy41MiwgNjAuNzEsIDIxLjk0
LCA2Mi43LCA3Ny45NiwgNjcuMjcsIDIuNzUsIDI4LjE2LCA4Ljg4LCAxMS42MSwgMzQuODksIDQ1
Ljc1LCA1NC41NSwgMzUuMDQsIDYuMTMsIDY5LjY4LCA4MS4yMSwgNDkuNDQsIDU0Ljc0LCAyNi43
NCwgOTEuNDksIDY4LjIsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44NywgNzEuNzMs
IDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAuNDgsIDgx
LjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4yNiwgMzQu
NjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUsIDM1LjAy
LCAzOSwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwgMjcuNzIsIDI4
LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5OC40NSwgODcu
NTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMxLjczLCAyLjks
IDguMjMsIDkzLjc0LCAzMS4yNiwgODQuNzMsIDYuNDgsIDQxLjk2LCA3NS43MiwgNTMuOTYsIDM1
LjA2LCA2Ny41LCA3Ni42MiwgMzUuMDIsIDEuNjIsIDEzLjA1LCAzMy41OSwgMjYuODksIDM2Ljk0
LCA3NC4xMywgOTUuMDksIDU2Ljg3LCA0Ni4wMSwgMTEuOTQsIDEyLjkyLCA0OC44OCwgMTEuMDMs
IDI0LjgsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAuMzUsIDQxLjEsIDUu
MzEsIDQzLjk2LCA5LjAyLCA5Mi4zMiwgMzQuNSwgODguNDEsIDkwLjM0LCA5Ny42MiwgNTguNywg
MjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwgOTEuMjIsIDc4LjIxLCA2
Mi4zLCA2MC45MywgMzMuMjYsIDE2LjEzLCA5NS42MSwgNzguNjIsIDk3LjQyLCA5Ni40MiwgMzgu
MDQsIDguNDksIDQ1LjQ3LCA2OC43MywgMTguMiwgMjYuNjUsIDc4LjM5LCA5NS4yNiwgNjYuOCwg
MzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3LCA2MS4wMSwgOTUuNjgsIDgu
NTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNCwgMTIuMzUsIDk5LjM5LCA1LjgsIDY4LjEsIDcz
Ljg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4wOCwgNTQuNDUsIDg3LjY0LCAzNi4x
NCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQsIDUuOSwgMTUuNywgMTAuODgsIDU1
LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywgNjAuMywgNC4zMiwgNy4wNSwgMy4zNCwg
OS44NywgNjQuNTEsIDQuNiwgNTQuMTYsIDQ4LjgsIDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgs
IDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5My43LCAyMy43OSwgODkuNTcsIDE0Ljg0LCA3
OS41OCwgNjIuMjksIDU4Ljc2LCAyOS40MywgMTkuMTYsIDQ0LjQ3LCAzOC4zMSwgNDQuNzcsIDQy
LjY2LCA4OC44NSwgNzQuOTYsIDI0LjA3LCAzNy43NSwgNDEuNjUsIDYyLjM1LCA5MC40LCA0MC43
NywgNTMuOTMsIDgwLjIzLCA4NC40OSwgMjAuMTgsIDQ1LjM2LCAyNi4wMiwgOTMuNzIsIDY1LjU0
LCAzMi44NikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDYsIDM4
LjU4LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMu
MjEsIDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcx
LCAyMS45NCwgNjIuNywgNzcuOTYsIDY3LjI3LCAyLjc1LCAyOC4xNiwgOC44OCwgMTEuNjEsIDM0
Ljg5LCA0NS43NSwgNTQuNTUsIDM1LjA0LCA2LjEzLCA2OS42OCwgODEuMjEsIDQ5LjQ0LCA1NC43
NCwgMjYuNzQsIDkxLjQ5LCA2OC4yLCA4NC4wNSwgNjUuODEsIDU3Ljg5LCA3My4yMiwgMTMuODcs
IDcxLjczLCAxOC42MSwgOC41NCwgOS43OSwgMjguMDUsIDE0LjExLCA2OS45MywgNDcuMTksIDEw
LjQ4LCA4MS4zNSwgMzcuMTUsIDE5LjI5LCAxNC45OCwgMzIuNTQsIDk4Ljk2LCA2OS4zNywgOTIu
MjYsIDM0LjY0LCA2Ny40MywgNzEuOTIsIDQ1LjUyLCA5LjIyLCA0MS45NiwgMzEuMjYsIDkyLjY1
LCAzNS4wMiwgMzksIDc2Ljc2LCAyOS4zMywgMjIuOTMsIDgwLjY1LCA3MC43OCwgNDIuOTQsIDI3
LjcyLCAyOC4xOSwgNzUuMTUsIDE4LjE0LCA4OS43MSwgOTUuMzgsIDU0LjUxLCAzNi45MywgOTgu
NDUsIDg3LjU4LCA0NC41MSwgNzEuNzMsIDc1LjcxLCA3MC40MywgNzguNTEsIDgyLjE5LCAzMS43
MywgMi45LCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIsIDUz
Ljk2LCAzNS4wNiwgNjcuNSwgNzYuNjIsIDM1LjAyLCAxLjYyLCAxMy4wNSwgMzMuNTksIDI2Ljg5
LCAzNi45NCwgNzQuMTMsIDk1LjA5LCA1Ni44NywgNDYuMDEsIDExLjk0LCAxMi45MiwgNDguODgs
IDExLjAzLCAyNC44LCA2OC4wNiwgMTkuODMsIDEyLjk4LCA0MS41NiwgNjIuMDMsIDgwLjM1LCA0
MS4xLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUsIDg4LjQxLCA5MC4zNCwgOTcuNjIs
IDU4LjcsIDIzLjYyLCAxMy4wMywgODUuNDEsIDI5LjczLCAzMC4yMSwgNTkuMjUsIDkxLjIyLCA3
OC4yMSwgNjIuMywgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5Ny40MiwgOTYu
NDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIsIDI2LjY1LCA3OC4zOSwgOTUuMjYs
IDY2LjgsIDM0LjQxLCAxMC42OSwgOTQuNDMsIDcxLjY5LCA0LjU4LCAyMy44NywgNjEuMDEsIDk1
LjY4LCA4LjUxLCAxNC45MiwgMTYuMjcsIDMwLjQxLCAxLjQsIDEyLjM1LCA5OS4zOSwgNS44LCA2
OC4xLCA3My44NywgMjguMzYsIDI0Ljk4LCA3Ny41OCwgOC43MywgMzQuMDgsIDU0LjQ1LCA4Ny42
NCwgMzYuMTQsIDc0LjY4LCAzOC4wNCwgNTYuNTQsIDQ2LjQyLCAxMi40LCA1LjksIDE1LjcsIDEw
Ljg4LCA1NS44MiwgODQuNjYsIDc1Ljc0LCA4Ny45MiwgNTkuMDMsIDYwLjMsIDQuMzIsIDcuMDUs
IDMuMzQsIDkuODcsIDY0LjUxLCA0LjYsIDU0LjE2LCA0OC44LCA0Ni45MywgNS44NCwgOTAuMzQs
IDc1LjQ4LCAzMi41OSwgMjkuNjUsIDk0LjU3LCAyOC4yMiwgOTMuNywgMjMuNzksIDg5LjU3LCAx
NC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5LjE2LCA0NC40NywgMzguMzEsIDQ0
Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcuNzUsIDQxLjY1LCA2Mi4zNSwgOTAu
NCwgNDAuNzcsIDUzLjkzLCA4MC4yMywgODQuNDksIDIwLjE4LCA0NS4zNiwgMjYuMDIsIDkzLjcy
LCA2NS41NCwgMzIuODYpKScKLQotQ3VzdG9tIHdpdGggdHdvIGFycmF5KCkgbWFkZSB1cCBvZiB0
aHJlZSBhbmQgc2l4IHZhbHVlcyA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBh
MSBhcnJheSgxLCAyLCAzKSwgYTIgYXJyYXkoMSwgMiwgMywgNCwgNSwgNikpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDEsIDIs
IDMpLCBhMiBhcnJheSgxLCAyLCAzLCA0LCA1LCA2KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEgMSwgYTEgYXJyYXkoMSwgMiwgMyksIGEyIGFycmF5KDEsIDIsIDMsIDQsIDUsIDYpKScK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJv
cGVydHktY29tcHV0ZWQtc3R5bGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA5NWMyNGIwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJv
ZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2Pgot
PHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1
dGVkLXN0eWxlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1w
YXJzaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggM2U0NTQ3NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1leHBlY3RlZC50eHQK
KysrIC9kZXYvbnVsbApAQCAtMSw2ODQgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiB0aGUg
Y3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LgotCi1PbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi1DdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIDog
Y3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSknCi0KLUN1c3RvbSB3aXRoIGZyYWdtZW50IHNo
YWRlciA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikp
JwotCi1DdXN0b20gd2l0aCBib3RoIHNoYWRlcnMgOiBjdXN0b20odXJsKHZlcnRleC5zaGFkZXIp
IHVybChmcmFnbWVudC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFk
ZXIpIHVybChmcmFnbWVudC5zaGFkZXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVu
dC5zaGFkZXIpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIDogY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdD
U1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBp
cyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
LmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1
bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0Zp
bHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5j
c3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBub3JtYWwgOiBjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5v
bmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCkpJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVj
dG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1v
dmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBub3JtYWwpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVu
ZCBtb2RlIG11bHRpcGx5IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11
bHRpcGx5KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG11bHRpcGx5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5KSknCi0K
LUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBzY3JlZW4gOiBjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2NyZWVuKSkKLVBBU1MgY3NzUnVsZS50eXBl
IGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNjcmVlbikpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBzY3JlZW4pKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBi
bGVuZCBtb2RlIG92ZXJsYXkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
b3ZlcmxheSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBvdmVybGF5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG92ZXJsYXkpKScKLQot
Q3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRhcmtlbiA6IGN1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkYXJrZW4pKQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGFya2VuKSknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIGRhcmtlbikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJs
ZW5kIG1vZGUgbGlnaHRlbiA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBs
aWdodGVuKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IGxpZ2h0ZW4pKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVl
TGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NW
YWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3Ry
dWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbikpJwotCi1D
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgY29sb3ItZG9kZ2UgOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKQotUEFTUyBjc3NS
dWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVC
YXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5
cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NW
YWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2UpKScKLQotQ3VzdG9tIHdpdGgg
bWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGNvbG9yLWJ1cm4gOiBjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItYnVybikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAx
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25l
IG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1idXJuKSknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIGNvbG9yLWJ1cm4pKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFu
ZCBibGVuZCBtb2RlIGhhcmQtbGlnaHQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgaGFyZC1saWdodCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBoYXJkLWxpZ2h0KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGhh
cmQtbGlnaHQpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIHNv
ZnQtbGlnaHQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc29mdC1saWdo
dCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb2Z0
LWxpZ2h0KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxp
c3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFs
dWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVj
dG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBp
cyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvZnQtbGlnaHQpKScKLQot
Q3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGRpZmZlcmVuY2UgOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGlmZmVyZW5jZSkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMg
J2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkaWZmZXJlbmNlKSknCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBl
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFs
dWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
UnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VT
VE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRpZmZlcmVuY2UpKScKLQotQ3VzdG9tIHdpdGggbWl4
IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGV4Y2x1c2lvbiA6IGN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBleGNsdXNpb24pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgZXhjbHVzaW9uKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIGV4Y2x1c2lvbikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5k
IG1vZGUgaHVlIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGh1ZSkpCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBodWUpKScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5
cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NW
YWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaHVlKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5j
dGlvbiBhbmQgYmxlbmQgbW9kZSBzYXR1cmF0aW9uIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIHNhdHVyYXRpb24pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgc2F0dXJhdGlvbikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
Ll9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwot
UEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBp
cyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hh
ZGVyKSBzYXR1cmF0aW9uKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQg
bW9kZSBjb2xvciA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikp
Ci1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikp
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFBy
b3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMg
J0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklM
VEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvcikpJwotCi1DdXN0b20gd2l0aCBt
aXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgbHVtaW5vc2l0eSA6IGN1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBsdW1pbm9zaXR5KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGx1bWlub3NpdHkpKScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1
Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgbHVtaW5vc2l0eSkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgY2xlYXIgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY2xlYXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgY2xlYXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMg
J0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18p
IGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVy
UnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NT
RmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY2xlYXIp
KScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2Rl
IGNvcHkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29weSkpCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb3B5KSknCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBl
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFs
dWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
UnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VT
VE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvcHkpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNvdXJjZS1vdmVyIDogY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSkKLVBBU1MgY3NzUnVsZS50eXBl
IGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSknCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0
Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5v
cGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdmVyKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5j
dGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1vdmVyIDogY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLW92ZXIpKQotUEFTUyBj
c3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1v
dmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tb3Zl
cikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1vdmVyKSknCi0K
LUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBzb3Vy
Y2UtaW4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc291cmNlLWluKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1p
bikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2UtaW4pKScKLQotQ3VzdG9t
IHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGRlc3RpbmF0aW9u
LWluIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWlu
KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3Rp
bmF0aW9uLWluKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWlu
KSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9k
ZSBzb3VyY2Utb3V0IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJj
ZS1vdXQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
c291cmNlLW91dCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4
dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2Utb3V0KSkn
Ci0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBk
ZXN0aW5hdGlvbi1vdXQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVz
dGluYXRpb24tb3V0KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIGRlc3RpbmF0aW9uLW91dCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBk
ZXN0aW5hdGlvbi1vdXQpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBj
b21wb3NpdGluZyBtb2RlIHNvdXJjZS1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIHNvdXJjZS1hdG9wKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIHNvdXJjZS1hdG9wKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIHNvdXJjZS1hdG9wKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1hdG9wIDogY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLWF0b3ApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMg
MQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tYXRvcCkpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1hdG9wKSknCi0KLUN1c3RvbSB3aXRoIG1p
eCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSB4b3IgOiBjdXN0b20obm9uZSBt
aXgodXJsKGZyYWdtZW50LnNoYWRlcikgeG9yKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIHhvcikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSB4b3IpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0
LCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNlY29uZCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rp
b24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgZmlyc3QsIGJsZW5kIG1vZGUgc2Vjb25kIDog
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRpcGx5KSkKLVBB
U1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRp
cGx5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11bHRpcGx5KSknCi0K
LUN1c3RvbSB3aXRoIHZlcnRleCBzaGFkZXIgYW5kIG1peCBmdW5jdGlvbiA6IGN1c3RvbSh1cmwo
dmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwotCi1DdXN0b20gd2l0aCBt
aXggZnVuY3Rpb24gaW4gQ0FQUyA6IGN1c3RvbShub25lIE1JWCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3Rv
dHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NT
U1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rp
b24gYW5kIG1lc2ggc2l6ZSA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSks
IDEwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpLCAx
MCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSwgMTApJwotCi1DdXN0b20gd2l0aCBt
ZXNoIHNpemUgOiBjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpLCAxMCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9f
cHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFT
UyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJM
KHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlciksIDEwKScKLQot
Q3VzdG9tIHdpdGggYm90aCBtZXNoIHNpemVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgMTAgMjApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCknCi0KLUN1c3RvbSB3
aXRoIGRldGFjaGVkIG1lc2ggOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0
YWNoZWQpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRh
Y2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGRldGFjaGVkKScKLQotQ3VzdG9tIHdp
dGggZGV0YWNoZWQgYW5kIG1lc2ggc2l6ZSA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCAyMCBkZXRhY2hlZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIDEwIDIwIGRldGFjaGVkKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAg
MjAgZGV0YWNoZWQpJwotCi1DdXN0b20gd2l0aCBudW1iZXIgcGFyYW1ldGVycyA6IGN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUg
NiA3KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwg
cDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciks
IHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpJwotCi1DdXN0b20gd2l0aCBmbG9h
dCBwYXJhbWV0ZXJzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEuMSwg
cDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBp
cyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywg
cDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCknCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0
b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25U
eXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4z
IDcuNCknCi0KLUN1c3RvbSB3aXRoIHBhcmFtZXRlciBuYW1lIHNhbWUgYXMgQ1NTIHZhbHVlIGtl
eXdvcmQgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEg
MCAxKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dy
b3VuZCAwIDEgMCAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1Zh
bHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdD
U1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29u
c3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1Rl
eHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEg
MCAxKScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyA6IGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1
ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJS
dWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNU
T00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQg
NSA2IDcpJwotCi1NdWx0aXBsZSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGdyYXlzY2FsZSgpIGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwo
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2dyYXlz
Y2FsZSgpIGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAzCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0dSQVlT
Q0FMRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2dyYXlzY2FsZSgp
JwotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSknCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX1NFUElBCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnc2VwaWEoKScKLQotQ3VzdG9tIGluIENBUFMg
OiBDVVNUT00odXJsKHZlcnRleC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20odXJsKHZlcnRl
eC5zaGFkZXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVl
TGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NW
YWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3Ry
dWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQp
IGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpKScKLQotQ3VzdG9tIHdpdGggb25lIHRyYW5z
Zm9ybSA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBvbmVUcmFuc2Zvcm0gcm90
YXRlKDBkZWcpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
b25lVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG9u
ZVRyYW5zZm9ybSByb3RhdGUoMGRlZykpJwotCi1DdXN0b20gd2l0aCBtdWx0aXBsZSB0cmFuc2Zv
cm1zIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJhbnNmb3Jt
IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAw
cHgpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgbXVsdGlw
bGVUcmFuc2Zvcm0gcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5z
bGF0ZSgwcHgsIDBweCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NT
VmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMg
J0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5j
b25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxl
Lmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3Nz
VGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBtdWx0aXBsZVRyYW5z
Zm9ybSByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBw
eCwgMHB4KSknCi0KLUN1c3RvbSB3aXRoIHR3byBzZXBhcmF0ZSB0cmFuc2Zvcm1zIDogY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSwg
c2Vjb25kVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSwgc2Vjb25kVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlz
ICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19f
KSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRl
clJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVs
ZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSwgc2Vjb25kVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSknCi0KLUN1
c3RvbSB3aXRoIGEgc2luZ2xlIGVsZW1lbnQgYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCB0MCBhcnJheSgxKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIHQwIGFycmF5KDEpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5f
X3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBB
U1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMg
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
dDAgYXJyYXkoMSkpJwotCi1DdXN0b20gd2l0aCBhIHNpbmdsZSBuZWdhdGl2ZSBlbGVtZW50IGFy
cmF5KCkgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXkoLTEuMDEp
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXko
LTEuMDEpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlz
dCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1
ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0
b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
Q1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDEgYXJyYXkoLTEuMDEpKScKLQot
Q3VzdG9tIHdpdGggbXVsdGlwbGUgZWxlbWVudHMgYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCB0MiBhcnJheSgxLCAyLCAzLCA0LCA1KSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQyIGFycmF5KDEsIDIsIDMsIDQsIDUpKScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90
b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdD
U1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDIgYXJyYXkoMSwgMiwgMywgNCwgNSkpJwotCi1D
dXN0b20gd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXQgZWxlbWVudHMgYXJyYXkoKSA6IGN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0MyBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQs
IDUpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDMgYXJy
YXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQz
IGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkpJwotCi1NdWx0aXBsZSBhcnJheSgpIDogY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQ0IGFycmF5KDEsIC0yLjIsIDMuMTQsIDAu
NCwgNSksIHQ1IGFycmF5KDEsIDIsIDMpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJh
Z21lbnQuc2hhZGVyKSwgdDQgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgdDUgYXJyYXko
MSwgMiwgMykpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAz
LjE0LCAwLjQsIDUpLCB0NSBhcnJheSgxLCAyLCAzKSknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRo
IG1lc2ggYm94IHNpemVzIGFuZCBjb250ZW50LWJveCA6IGN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxIDEgY29udGVudC1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBp
cyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9f
XykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0
ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRD
U1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1
bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwot
Ci1MZWdhY3kgLSBDdXN0b20gd2l0aCBtZXNoIGJveCBzaXplcyBhbmQgYm9yZGVyLWJveCA6IGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgYm9yZGVyLWJveCkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBp
cyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSknCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29u
c3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVy
YXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEgMSknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIG1lc2ggYm94IHNpemVz
IGFuZCBwYWRkaW5nLWJveCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEg
cGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVl
TGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMg
J2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotCi1MZWdhY3kgLSBDdXN0
b20gd2l0aCBwYXJ0aWFsIG1lc2ggYm94IHNpemUgYW5kIHBhZGRpbmctYm94IDogY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIHBhZGRpbmctYm94KQotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIHBhZGRpbmctYm94IGFuZCBkZXRhY2hl
ZCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwYWRkaW5nLWJveCBkZXRhY2hl
ZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGRldGFjaGVk
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0YWNoZWQpJwotCi1MZWdhY3kgLSBDdXN0
b20gd2l0aCBib3RoIG1lc2gtc2l6ZXMgYW5kIHBhZGRpbmctYm94IDogY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIDEwIDIwIHBhZGRpbmctYm94KQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCAyMCknCi0KLUxlZ2FjeSAtIEN1c3RvbSB3aXRoIG1lc2gtc2l6ZXMsIHBhZGRpbmct
Ym94IGFuZCBkZXRhY2hlZCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCBwYWRkaW5nLWJveCBkZXRhY2hlZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEwIDIwIGRldGFjaGVkKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5f
X3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBB
U1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMg
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
MTAgMjAgZGV0YWNoZWQpJwotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNp
bmctaW52YWxpZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEx
MGY1YjQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmctaW52YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSw0MDQgKzAsMCBAQAotVGVzdCB0aGUgcGFyc2luZyBvZiBjdXN0b20oKSBmdW5j
dGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KLQotCi0KLUVtcHR5IGZ1bmN0aW9uIDogY3VzdG9tKCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHZhbHVlcyAx
IDogY3VzdG9tKCwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1ObyB2YWx1ZXMgMiA6IGN1c3RvbSgsLCkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IHNo
YWRlcnMgMSA6IGN1c3RvbSh1cmwoc2hhZGVyMSkgdXJsKHNoYWRlcjIpIHVybChzaGFkZXIyKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVRvbyBtYW55IHNoYWRlcnMgMiA6IGN1c3RvbShub25lIG5vbmUgbm9uZSkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBt
YW55IHNoYWRlcnMgMyA6IGN1c3RvbShub25lIHVybChzaGFkZXIxKSB1cmwoc2hhZGVyMikgdXJs
KHNoYWRlcjIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIGFzIHZlcnRleCBzaGFkZXIgOiBjdXN0b20obWl4
KHVybChzaGFkZXIpKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIHdyb25nIG5hbWUgOiBjdXN0b20o
bm9uZSBmbih1cmwoc2hhZGVyKSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24gd2l0aCAwIGFyZ3MgOiBjdXN0
b20obm9uZSBtaXgoKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIGZpcnN0IGFyZyBub3QgYSBVUkkg
OiBjdXN0b20obm9uZSBtaXgobm9uZSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24gd2l0aCBzZWNvbmQgYXJn
IG5vdCBhIGJsZW5kIG1vZGUgb3IgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSA6IGN1c3RvbShub25l
IG1peCh1cmwoc2hhZGVyKSAwKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIHRoaXJkIGFyZyBub3Qg
YSBibGVuZCBtb2RlIG9yIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgOiBjdXN0b20obm9uZSBtaXgo
dXJsKHNoYWRlcikgbm9ybWFsIDApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggdHdvIGJsZW5kIG1v
ZGVzIDogY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIG11bHRpcGx5IHNjcmVlbikpCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1N
aXggZnVuY3Rpb24gd2l0aCB0d28gYWxwaGEgY29tcG9zaXRpbmcgbW9kZXMgOiBjdXN0b20obm9u
ZSBtaXgodXJsKHNoYWRlcikgc291cmNlLW92ZXIgZGVzdGluYXRpb24tb3ZlcikpCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXgg
ZnVuY3Rpb24gd2l0aCBhbHBoYSBjb21wb3NpdGluZyBtb2RlICdwbHVzLWRhcmtlcicsIHdoaWNo
IHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1jb21wb3NpdGUgOiBjdXN0
b20obm9uZSBtaXgodXJsKHNoYWRlcikgcGx1cy1kYXJrZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdp
dGggYWxwaGEgY29tcG9zaXRpbmcgbW9kZSAncGx1cy1saWdodGVyJywgd2hpY2ggc2hvdWxkIG9u
bHkgYXBwbHkgdG8gLXdlYmtpdC1iYWNrZ3JvdW5kLWNvbXBvc2l0ZSA6IGN1c3RvbShub25lIG1p
eCh1cmwoc2hhZGVyKSBwbHVzLWxpZ2h0ZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggYWxwaGEg
Y29tcG9zaXRpbmcgbW9kZSAnaGlnaGxpZ2h0Jywgd2hpY2ggc2hvdWxkIG9ubHkgYXBwbHkgdG8g
LXdlYmtpdC1iYWNrZ3JvdW5kLWNvbXBvc2l0ZSA6IGN1c3RvbShub25lIG1peCh1cmwoc2hhZGVy
KSBoaWdobGlnaHQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggNCBhcmdzIDogY3VzdG9tKG5vbmUg
bWl4KHVybChzaGFkZXIpIG11bHRpcGx5IGNsZWFyIG5vcm1hbCkpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24g
d2l0aCBjb21tYSBzZXBhcmF0b3JzIDogY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpLCBtdWx0
aXBseSwgY2xlYXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggY29tbWEgdGVybWluYXRvciA6IGN1
c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSwgbXVsdGlwbHkgY2xlYXIsKSkKLVBBU1MgY3NzUnVs
ZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5j
dGlvbiB3aXRoIG9uZSBjb21tYSA6IGN1c3RvbShub25lIG1peCgsKSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHNoYWRlciA6
IGN1c3RvbShub25lLCAxMCAyMCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRvbyBtYW55IG1lc2ggc2l6ZXMgOiBjdXN0b20obm9u
ZSwgMTAgMjAgMzApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1Xcm9uZyBtZXNoLWJveCB0eXBlIC0gJ3BhZGRpbmcnIDogY3VzdG9t
KHVybChzaGFkZXIpLCBwYWRkaW5nKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotV3JvbmcgbWVzaC1ib3ggdHlwZSAtICdub25lJyA6
IGN1c3RvbSh1cmwoc2hhZGVyKSwgbm9uZSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1vcmUgbWVzaC1ib3ggdHlwZXMgOiBjdXN0
b20odXJsKHNoYWRlciksIHBhZGRpbmctYm94IGZpbHRlci1ib3gpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Xcm9uZyBvcmRlciBm
b3IgbWVzaC1kZXRhY2hlZCBhbmQgbWVzaC1ib3ggdHlwZSA6IGN1c3RvbSh1cmwoc2hhZGVyKSwg
ZGV0YWNoZWQgcGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Xcm9uZyBvcmRlciBmb3IgbWVzaCBzaXplIGFuZCBt
ZXNoLWJveCB0eXBlIDogY3VzdG9tKHVybChzaGFkZXIpLCBwYWRkaW5nLWJveCAxMCkKLVBBU1Mg
Y3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVRv
byBtYW55IG1lc2ggc2l6ZXMgd2l0aCBtZXNoLWJveCB0eXBlIDogY3VzdG9tKHVybChzaGFkZXIp
LCAyMCAzMCA0MCBwYWRkaW5nLWJveCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgY29tbWEgYmV0d2VlbiBtZXNoLXNp
emVzIDogY3VzdG9tKHVybChzaGFkZXIpLCAyMCwgNDAgcGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IGNvbW1hIGJlZm9yZSBtZXNoIHR5cGUgOiBjdXN0b20odXJsKHNoYWRlciksIDIwLCBwYWRkaW5n
LWJveCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBp
cyBudWxsCi0KLU5vIG1lc2ggcGFyYW1ldGVyIDogY3VzdG9tKHVybChzaGFkZXIpLCApCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1X
cm9uZyBtZXNoIHR5cGUgLSBjb3JyZWN0IGlkZW50aWZpZXIgaXMgJ2RldGFjaGVkJyA6IGN1c3Rv
bSh1cmwoc2hhZGVyKSwgZGV0YWNoKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gbWVzaCBzaXplIDogY3VzdG9tKHVybChzaGFk
ZXIpLCAsIHAxIDIpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBzaW5nbGUgbWVzaCBzaXplIDogY3VzdG9tKHVybChz
aGFkZXIpLCAtMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20odXJsKHNo
YWRlciksIC0xMCAtMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1OZWdhdGl2ZSBhbmQgcG9zaXRpdmUgbWVzaCBzaXplIDogY3Vz
dG9tKHVybChzaGFkZXIpLCAtMTAgMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1aZXJvIHNpbmdsZSBtZXNoIHNpemUgOiBjdXN0
b20odXJsKHNoYWRlciksIDApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykgaXMgbnVsbAotCi1aZXJvIGJvdGggbWVzaCBzaXplcyA6IGN1c3RvbSh1cmwo
c2hhZGVyKSwgMCAwKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotMCBhbmQgMSBtZXNoIHNpemVzIDogY3VzdG9tKHVybChzaGFkZXIp
LCAwIDEpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1Ub28gbWFueSBwYXJhbWV0ZXIgdmFsdWVzIDogY3VzdG9tKHVybChzaGFkZXIp
LCBwMSAxIDIgMyA0IDUpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHBhcmFtZXRlciB0eXBlcyA6IGN1c3RvbSh1cmwo
c2hhZGVyKSwgcDEgMS4wIDIuMCAndGV4dCcpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUgMSA6IGN1
c3RvbSh1cmwoc2hhZGVyKSwgcDEpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUgMiA6IGN1c3RvbSh1
cmwoc2hhZGVyKSwgcDEsIHAyLCBwMykKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBpbnZhbGlkIHRyYW5zZm9ybSA6IGN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykpCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NdWx0
aXBsZSBpbnZhbGlkIHRyYW5zZm9ybXMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlk
IGludmFsaWRfcm90YXRlKDBkZWcpIGludmFsaWRfcGVyc3BlY3RpdmUoMCkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHRyYW5zZm9ybSBiZXR3ZWVuIHZhbGlkIG9uZXMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwg
c29tZUlkIHJvdGF0ZSgwZGVnKSBpbnZhbGlkX3JvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLVZhbGlkIHRyYW5zZm9ybSBiZXR3ZWVuIGludmFsaWQgb25lcyA6IGN1c3RvbShub25lIHVy
bChzaGFkZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgYW5v
dGhlcl9pbnZhbGlkKDApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3JtIHdpdGhvdXQgbGVhZGluZyBjb21t
YSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBwZXJzcGVjdGl2ZSgwKSkKLVBBU1Mg
Y3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVZh
bGlkIHRyYW5zZm9ybSB3aXRoIHRyYWlsaW5nIGNvbW1hIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIHNvbWVJZCBwZXJzcGVjdGl2ZSgwKSwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFp
bGluZyBjb21tYSBhbmQgd2l0aG91dCBsZWFkaW5nIGNvbW1hIDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlcikgc29tZUlkIHBlcnNwZWN0aXZlKDApLCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdHJhbnNmb3JtIHdpdGgg
dHJhaWxpbmcgY29tbWEgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIGludmFsaWRf
cm90YXRlKDBkZWcpLCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdHJhbnNmb3JtIHdpdGhvdXQgbGVhZGluZyBjb21t
YSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBpbnZhbGlkX3JvdGF0ZSgwZGVnKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLUVtcHR5IHRyYW5zZm9ybSAob25seSB0aGUgaWQpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIHNvbWVJZCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyBudWxsCi0KLUVtcHR5IHRyYW5zZm9ybSAod2l0aG91dCB0aGUgaWQpIDogY3VzdG9t
KG5vbmUgdXJsKHNoYWRlciksKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotRW1wdHkgdHJhbnNmb3JtICh0d28gZW1wdHkgY29tbWFz
KSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gd2l0aCBp
bnZhbGlkIGNoYXJhY3RlcnMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSxzb21lSWQgcm90YXRl
KDBkZWcpICouLSwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1FbXB0eSBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciks
IGlkIGFycmF5KCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1PbmUgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChz
aGFkZXIpLCBpZCBhcnJheSgsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRpbGUgY29tbWFzIGluIGFycmF5KCkgOiBjdXN0
b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLCwsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRpcGxlIGNvbW1hcyB3
aXRoIGEgdmFsdWUgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJh
eSgsLDEsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSBpcyBudWxsCi0KLU9uZSBjb21tYSBmb2xsb3dlZCBieSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFy
cmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLC00KSkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSBj
b21tYSBmb2xsb3dlZCBieSBhIHZhbHVlIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoLDQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotT25lIG5lZ2F0aXZlIHZhbHVlIGZvbGxvd2VkIGJ5IGEg
Y29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgtNCwp
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotT25lIHZhbHVlIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSg0LCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1BIHNlcmllcyBvZiBjb3JyZWN0IHZh
bHVlcyBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMSwgMiwgMywgNCwpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotQSBzZXJpZXMgb2YgY29ycmVjdCB2YWx1
ZXMgZm9sbG93ZWQgYnkgYSBsZXR0ZXIgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFk
ZXIpLCBpZCBhcnJheSgxLCAyLCAzLCA0LCB4KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVR3byBjb21tYXMgYXMgc2VwYXJhdG9y
IGJldHdlZW4gdmFsdWVzIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQg
YXJyYXkoMSwgMiwgLCA0KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUxlYWRpbmcgY29tbWEgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsMSwgMiwgMywgNCkpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TZW1pY29sb24gc2Vw
YXJhdGVkIHZhbHVlcyBpbiBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFy
cmF5KDE7IDI7IDM7IDQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheSgpIDog
Y3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEgMiAzIDQpKQotUEFTUyBjc3NSdWxl
LnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2Vw
YXJhdGVkIHZhbHVlcyB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxIDIgMyA0LCkpCi1QQVNTIGNzc1J1bGUudHlwZSBp
cyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1TcGFjZSBzZXBhcmF0ZWQg
dmFsdWVzIHdpdGggbGVhZGluZyBjb21tYSBpbiBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlciksIGlkIGFycmF5KCwgMSAyIDMgNCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1OYU4gaW4gYXJyYXkoKSA6IGN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheShOYU4pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTmFOIGFuZCB2YWx1ZXMgaW4gYXJy
YXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCBOYU4sIDMpKQot
UEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSwgaWQgYXJyYXkoMXB4KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdW5pdCB2YWx1ZSBpbiBhcnJheSgpLCBzZWNv
bmQgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkobm9uZSkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHVuaXQgdmFsdWUgaW4gYXJyYXkoKSwgdGhpcmQgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwg
aWQgYXJyYXkoMWRlZykpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHVuaXQgdmFsdWUgaW4gYXJyYXkoKSwgYXQgdGhl
IGVuZCBvZiBhIHBhcnRpYWxseSB2YWxpZCB2YWx1ZSBsaXN0IDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlciksIGlkIGFycmF5KDEsIDIsIDMsIDRweCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0
eS1wYXJzaW5nLWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWY4
NWNhMC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1pbnZhbGlkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxMyArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9F
TiI+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlv
biI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0
LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmctaW52
YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2lu
Zy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXBy
b3BlcnR5LXBhcnNpbmcuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzMwOTE0
MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItcHJvcGVydHktcGFyc2luZy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBA
QAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+
Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxk
aXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0
b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi9z
Y3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLmpzIj48L3NjcmlwdD4K
LTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXJlbG9hZC1leHBlY3RlZC50eHQKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXJlbG9hZC1leHBlY3RlZC50
eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQuaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTc5ZDEzZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcmVsb2FkLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSw3NSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTwhLS0gCi0gICAgVGhpcyB0
ZXN0cyB2ZXJpZmllcyB0aGF0IHdlIGRvbid0IGFzc2VydCB3aGVuIHRoZSBzdHlsZSBpcyByZWNh
bGN1bGF0ZWQgYnV0IHRoZSBmaWx0ZXIgcHJvcGVydHkgZG9lc24ndCBjaGFuZ2UuCi0tLT4KLTxo
dG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICAgICAg
d2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0KLSAgICAgICAg
ZnVuY3Rpb24gdGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8vIEZvcmNlIGEgbGF5b3V0
LgotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQ7Ci0gICAgICAgICAgICB2
YXIgYm94ZXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuYm94Iik7Ci0gICAgICAgICAg
ICBmb3IgKHZhciBpID0gMDsgaSA8IGJveGVzLmxlbmd0aDsgKytpKQotICAgICAgICAgICAgICAg
IGJveGVzW2ldLmNsYXNzTGlzdC5hZGQoInRyaWdnZXItc3R5bGUtcmVjYWxjIik7Ci0gICAgICAg
ICAgICAKLSAgICAgICAgICAgIC8vIFN3aXRjaCB0aGUgcGFyZW50IHRvIGNvbXBvc2l0ZWQgbW9k
ZSwgc28gdGhhdCB3ZSBjYW4gdHJpZ2dlciAKLSAgICAgICAgICAgIC8vIGEgcmVidWlsZCBvZiB0
aGUgY29tcG9zaXRpbmcgbGF5ZXIgdHJlZS4KLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5
bGUud2Via2l0VHJhbnNmb3JtID0gInRyYW5zbGF0ZVooMHB4KSIKLQotICAgICAgICAgICAgLy8g
Rm9yY2UgYSBsYXlvdXQuCi0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodDsK
LQotICAgICAgICAgICAgLy8gSWYgd2UgZ2V0IHRoaXMgZmFyIHdpdGggbm8gYXNzZXJ0LCB0aGUg
dGVzdCBwYXNzZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0gICAg
PC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhlaWdo
dDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRl
WigwKTsKLSAgICAgICAgfQotCi0gICAgICAgIC52ZXJ0ZXhfc2hhZGVyCi0gICAgICAgIHsKLSAg
ICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4
LW9mZnNldC52cycpKTsKLSAgICAgICAgfQotCi0gICAgICAgIC5mcmFnbWVudF9zaGFkZXIKLSAg
ICAgICAgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwo
Jy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAg
ICAgICAgfQotCi0gICAgICAgIC5ib3RoX3NoYWRlcnMKLSAgICAgICAgewotICAgICAgICAgICAg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZz
JykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCkpOwotICAgICAgICB9Ci0KLSAgICAgICAgLnRyaWdnZXItc3R5bGUtcmVjYWxjIHsKLSAg
ICAgICAgICAgIC8qIE5vIGNoYW5nZSwgd2UganVzdCBuZWVkIGEgbmV3IHN0eWxlIHJlY2FsY3Vs
YXRpb24uICovCi0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotCi08Ym9keSBvbmxv
YWQ9InRlc3QoKSI+Ci0gICAgPCEtLSAKLSAgICAgICAgWW91IHNob3VsZCBzZWUgdGhyZWUgZ3Jl
ZW4gYm94ZXMuIExhc3QgdHdvIGJveGVzIGhhdmUgYSBkaWZmZXJlbnQgc2hhZGUgb2YgZ3JlZW4u
IExhc3QgYm94IGlzIHNsaWdodGx5IGJpZ2dlciBvbiB0aGUgbGVmdCBzaWRlLgotICAgICAgICBU
aGUgdGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgbm8gY3Jhc2ggb3IgYXNzZXJ0LgotICAgIC0tPgot
Ci0gICAgPGRpdiBjbGFzcz0iYm94IHZlcnRleF9zaGFkZXIiPjwvZGl2PgotICAgIDxkaXYgY2xh
c3M9ImJveCBib3RoX3NoYWRlcnMiPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCBmcmFnbWVu
dF9zaGFkZXIiPjwvZGl2PgotCi08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLWNhY2hlLWV4cGVj
dGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1z
aGFkZXItY2FjaGUtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBk
ZDNiZDQ1YWVhYzU0NjVhZmVjMmViZThhYTc4MTAxYTg0ZDFiODA2Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/
ZDAwMDAxCgpsaXRlcmFsIDE2MTYwCnpjbWVIdWN+bnpaKkZNZXomWjFDfXA7YHJuMXs1PyowamVT
QE48XihWNUQ9TjlZR1JsfCROKkhTbVFoOEZoJEpFKwp6UVl0NzhnZHFYcDEmUnp8UCFMRm41RnZ5
aSEyfTJpMGxwTGFtZG9uKlRkU19GX1VvQH1gQiMkVEoodHtfWFljYm8KeiYpKXVjKDl3U0ohWml6
M1I4JHU0LUx2YkVpcG5mcTZfdUlDPUZiSHl3fVphRjBBNGwpKmN9Vi1JT0ZBVSk8NXZQCnolSiF9
MW9eYTJ0LWQ+KWI5YDQ0YyY5PDRGbnIkfldHZEpJNjs8ZXE+XlIpTWlHWUtqeCk7VzgzZVJDdnUj
c0hAIwp6RCVuUmlaX3d4NVJ7WXNrQDlXc0VlZjBeZCZYNGw1P09ZYVE8cXo2QzkhYHNURm5fMSp1
R2Mzci1qenFGeV5MXmgKeitNS3A5fEhHVzBqP084I2thfnF3PV8kNUleel5waXRDUmglLWw2aGAr
Tnc8fDE4Y2BDejVScyNoLVFCZHQqPmUxCnp3NyNeVnItQGRwR2pzTypXeEJSdURsQDx2X01DN2pD
anU4ZE5CUUJtKWR7eV5sfV9FP0s3cio2JjlmS2o7JG04KAp6cllAUGslczkrITdQTXRQZCl0Z3p6
bzFlXyk9aig1QkhofUxmOEBWKyFXfTQ5QG9ScF94QkBNUEAwe20yY3JDNEcKelJVZ0xRb2c/RUlx
RGstUXNfc25INChzaERMYGA+UTZkfCFIJjZ3TFk3PDRQTTwhbkt3RllgeWJMNDVQO0pDXkU8Cno0
PFR4QTArWlpiWlgzbjR0cj16YkdFSWZNazgkZztaNTsmNjRfTlJLZWc2RXtNMVBITERgZG56bWhU
JClrb2ZeZwp6OG8kPyhDMjJgdkBtYH5rZVB0VX5KVUVqKVlpblVmXnQ1TGdueStDU2E+e1YhWiRW
bjdZZ2B5TSEhIThzN1ltQEUKel5laV9IOCFBNHdAeE9ydHw4T2M4Z2tiUSYpKW1tY3k3aX0yMW1S
RWl7fkIhTlg3S21zVWhPI0cxXilESlZZcTh3Cnp0a04qY0Jre00tVkpoSnJhfkEyQUNjV0EtYnhv
TFVUeVokfTU+dVdfZyhEM3k1emdnSShXNCpkNXYtWGNDT0BqTwp6JU5RKnhkNEk5ZENheCh4ODxg
YmJMZ2JXSD5aT05qcFdwOUJiSjI+QmpsaHVCPUhycntTM3w+PFpfPmNrdD8lUD0KekxucTJqYXps
azxydWdzPmo3IUw+NURvYWc+PlcjYW95M2xXeD5WeVZSby1xdkxZK0lpJDEoZW9AYSU9ck5kdUk7
CnpvaGZCXjxWKURJREFYZTN0VUwrM15nSERqfDh9LXc/KWBtd3VmTGk0IyY+N1RuNitvdGZmc2ZW
QWlmMUNgcW08NAp6M0FDfnBNMChBY29VZnNmSnpSSDZDOEo/TUFRYjJgd2pleVZAI244aSNtOUNQ
eE9JWiMhOzg/JEVEK1ZYeDZlZ0UKenp2NTVlKTt8VTgoMUtSaEVIZktTc3h1PF9zY25mMyR9en5k
RlgodkYpI2xEZDJNNVg9U0hvS3VXU2VtcFhUIUokCnpQJnN0OF53OEAjdns2aHwpXyRGc0VOe18o
eDcle0VyMD1YZGJ0ditFaSU3SFJUdC0jYTRqcVFXSUZFPjBPQSZoWAp6JjxBX1A9cE9wZUtDdm05
QU50OzhAQDk4WjsoSjc+eilFX31vWW07bkFoODx2JT4+YCg7a3RNNWU+TSFwVld4R1MKekNte3FM
dkAyRlFsKHc+VzhnOWNycUhYTmVxNWxOPzJ8UDckcD0hOSQrYWwoP1JOXyp0U0RvNWNMa0RrJlVV
d1hKCnpWISEmM1YyR0NPSmtJV0RiWWNzLTQyOUpsQ1FlTH5zIVMoI1okV3UtbC1Ma2dITEY3Rk4z
b1Y1aG58WE0qWV9+Jgp6M3B8fElQdDBKSkk2UloqTTUtdW89USMlR2x9TnFHUEJ+SndfZnwtckEy
bUhBQWxLMTloPztKNUpefXA3Zmw3RWUKejhYZWcmMStQPWU2ajl9Iyl8fmJqQWRlMkV0OGV+dER6
elJmbFB2PUNXYnJoN2ZzRCooUjg0XkpieGZKSUNBbnxzCnpMZHBGYTxvMFZwIzZHQ3A4N2QxdiRI
e1hTQXZwQntmYnxhVCpaezRwYzcwY2oqQDJ2cz9YNytYPWokVDE5cXNPKQp6SWcoV2NHYj5zSmY4
fFIyP2o2MCtvdGVPUiRWQFhpJlVEZ2ZlZ3VHMyVoc2xSYD1SI2heRkhiK1V7ZiNfNC1hKzsKelN7
fkFAcko1R3wxR2JgK0pfSmV8VlVAWj9IYmU0fGxhTWZVPUs9TzJ0I1NSQUpBMy1BcWB7NX41empU
Ymc0KE9CCnpTR3ViUUhMdT48ciNyMmhrRjdFZT52eWhgS3dvcUllP1YwSjtmd1ZCU0lSNVhHVjVL
MXE4eGZXcl9ZSHdQWlUqPgp6S2tzR157YztJQyFCfXwyWX4ySHk8SzsxZzc4QUZ2OG4tZH1CKkp1
b3w1IzFXYXJKeU8tcSYmPU58LX1tJnZ+eHoKejdWX29Md2FXNyZvO0dYQndmZ1g2S2w1NjNyWmlY
c1hCY2d7eWoqSzMlVih7K3RELSRuK0FafHU8SGNXMU59byFJCnptfEVUdGBxJjJCRms5SE4yQGZs
entgSUwrMF5YMjdlNX05ZG4tO019dXYwMnUrJlF1WHMkOD8+cHFQPWlIYkowUwp6cnJ9Ym92ZWhp
KCh6SmE7M3A4eHlvPEMxTk4kM0RiN1k7MyR3eSRSO0k3dXB4PX1wMWJfUzZMYyQjP2Z4SyhOKVYK
eih8Y14xS2IkVkFEIyM7R0N9Y2Y+ekhHVFg8YzNqOSFHKD87O0hCO0QrYmQjSlZlcG5uMk1IPWFW
QUNzSCpRKjQ1CnpwfTRFY2lUKFUrJVlueyN0Z2x3US04blNjNXE0bWxJNCZRfj0hPWglWmJxTHlk
cDc0cjJKTGNlMGhVKyhURGwqJAp6TDw9WUJ1Qm1rMUtWSGE0PUE1eiNWN0luMV42OyZBWVJJRGVB
QCkqfFY8VH1NaU9RbFBFVmFydjFFZlcmanhPSHcKelZlWTI1c1RkWm8xSkF1V0JXVlE2KlNwfWs/
KzBKSlZHbXtTSDR3cTUqOVFudHo4KFktSlhIQTJ0TXlaJWMpU1B2Cno3SXdXNDcqTXxJZ1dxQ1B5
S2RMPXNkOURmRC1mPUFmc0wrRXpOKURraHBBeiVpbEcoNT4lfVAtK3A3flZLWlJSYQp6PHtLQHYh
WFhTfm1OcXI4O0teMjVTYFVMT19mY3pONDQmQkRoPiVoWXh6NDM+PlpFZyEkQjBSMmR5SzBoKXk1
bHMKeiRZeHhjbkBaJHtacCMjOWd0QlUtSDlFVnBgP1NaOU9fJHdwJEp5ITN0STZxSFB4WiZSSUIp
ZXxhTUBXdGU5MDVJCnozQn5RYXJfNmVNJG5uTT8xeWUwLUhtbWU7VnxCV152aExWT2J8MitCSU9o
PHZKPUhWZ2EhdVlNYEZNKm9pNHx1OQp6ZzRJWlN1QENTN2k8dkQmcSZGR1AofjhYZT5MJm19dX1T
Rng1RXZ5SlBwS3M0IyU1NVVVdHExT2hIVzw7ellqdXsKekYkUlBaLSorbm5nNUY8eEU4Q3opcXRA
RjtDMmBpUDVhVD9DUGIkNk1gPStRQU53JDA/P1ArcXBON3ZoWm9NYzFqCnpiOHVwK0o2ZnJpRzBm
JERZUHNTaz5aeEA1N2ZnKlo1P1dOPyNJNzx4PyF3di1jYHwrQl5FNXI1YT5UPzAjaFl3MQp6QTxv
ViQod1lxSFctJGhrKWU1cXI+eT1Sc1FITmJBWDF3KjFYPiUyJF5oPTMwWlV7dnxBfiZ2eFpJI2V2
SWw+NXkKeik9ODh9Vz85QzQrPDtzJU5tZXVgK1NuQXkyQ0dGQ1pXOT99cks4eTxwO0BAJkJveVRo
VDtoY3Ixa3U7MyFCZDZUCnpYP3l8ZXFfUkcmbm8lXzRae3M3TWF1OT5HM0UkWVpabU9iKFp3NWMo
PUghRihwcTA2Xlp8PV5XRm54QGljQmIzagp6NEdaSWpzaCM8TDEoWDhNMEpyaUBZYUgxLW00bzEt
OFRWfmgtazhjYStxPGcoQ3VpMmo4UU50WjMkPEw+UzFhPHkKel9SWHE1JjZsOSZPUD8oN1pVYi1G
Ulc3Z3k4U0xfO1NLWFdiPWJTZ0QrK0ZPMSVFP148YzN3fFJiTHp2YXduZS1LCnpxQSRDdFNPZj8r
N0c1SSVBK35KXm10WWRAMDZ2MCgofihxYSUqU3MmNjVgbE1QaHQ3cUhiT1kjTGEzfUlCPD1LfAp6
UXN0eG1wYnBObEtnRSo0XlVOI1hJdSlCNEdmUDF0YH5YalkqclE2Z0hsVUE3cXJJVH4wZXthcFkh
UFBqYGYyK1IKekFrNWt0Um52PDNBfHI0SnY+KHwkWkN9WGpDNW53aFo7Rk5zQHUlP3lnPEQ1Um07
K1hDQl85U1AyKUYmUCVVRlc/CnpNeDhxb18tRUU2bDMkPSZjT1Q0QSQtPldnJG1RPlFee2FEbmN5
WG5HWDdCc31hQ1RTKG1lOVBCUnlaeiFRfWYzQwp6eCNeWHZ1TC08eyUoX3kjbGFpWE5eSHNBaVgt
OG1ETnxKdFEzMiEkcFdKN0A0I25NU1BMNCRPSiFDJXN4JS01ejUKekRJJX5uO0xUQ3g3eXRKI098
bD85XiRQWWBKZ09laXMtKW1jY3RORl5SayQyX3k8PjJoT2k5cXV6MVBiRTNuPSU8CnowUiYle0FU
Umx1Zk5jWn1kQE9QPiQ8MGt3YV5Md1k3TVZOaDwkd3hXQ0dTRD8+aFN3ST0+YS1CRDxZZ0p4U2JW
Zwp6JmV6a2ltWHFzZ3ZScVNjXjthVTkxM3hkVzhjJjdBUX4zaHF6Yk1hQFh5WjhGVHZzME5walMj
Q09RbnhCNX5UPUAKekU8KEAyKXpXdDxtK3VrTm0oVV9Sa0glKHVWeWtwc2J1T1hCYn4rbVFWMTFV
KmVpU0RrY2E3O2glSDFZKHgjNSN7CnpRcms/cD1aMHR4ckEjWV43clJAOFh3ezE5ajRpe3E8Vyko
dTsoOUlIN2k7M35TdVNWN0J+ak5JPkFIT1U4ajhmfgp6S3czZkk/V2E+aFc8M3h4Zmd2ZD9wb0NC
YkRSTyp0YihgKX5CN3F9cD9vfHVNITNFR3QxVn1iUlYkfUpvUT5UQCEKejdSYm5DKk4yeTtSKkZr
TitPQjRuWkhGWkEtQl4mQGVAWCspQmQta0U5SzVhSVU3LVVuZV9qZFAyYnxIVXBxSHtvCnpiZj1O
ZCE/UC1xbXE7RzwrWU51NlRxJXd6cGAhdD9hTlEmSHBDZlQtVSgxNXwzPHE5R1I4XyVDVVFTZTlm
JCo0cQp6cGxQKEZjNmt+b1pKYlBjOWV5QyRland9VGArVTxGT35vRFUxeitzJjtwYktPY1pUWG5k
I3klfV8kYkJrNkh0bCYKemI3VXJUP2s7PHE0YkplUUAyU3d+NDUrKkRLWWZ2SFZwMUl2aEtkPlMz
I0Y3TF9xKWM0NXk1VjFPXkMtZyRgRVNoCnprMWs9O09PfGhgIUNBMEhmPFo+NkpKWkNTLUo3IWFS
dlR0RkU1OXpWJUF3N3YjfUQ5MWtZeSlwUCkmKjNrQUE4Kgp6UiZPamsjKilOV1ZWUSNycGsrTVYq
Kl9XIWdNK1BrXnViUFBSc2tHYHZ9REVXJCU8Jm5lMWdBckk8OGQ3REUtMCoKemIkSXc0KlFPUVVX
dU01QmYhYEFVI0J1Nj8zb0N2SEBiX30+MjFxOF8tYkRnS0xDKygzM1QhSWpGTSppNjd7M24hCnpU
Ykx+a3BiYzRXRiRMUWhHY04qMiZlY25SVjU8XnQ5aUNTSSRjRShCVU5iRD12K1QxU2N1bWRDc28+
fn5QKnVNTgp6VWRxZE4tdzxfe01MRF9MN0IhPis9NDBUVHdGXnJ6YSpPVEVMUkZ6eCg0cm1zWlcq
NVRfeEpibj9kQTcxWENxTkcKem1xS1VrJCYpQUopQW87QjErWmZAO1NaUVRlJUt5KjUqKnttSmwp
RzU4MGVvbm1jbmFsNjR1bC0pPUZNYClUUXlzCnpKXnJgNUVxZiV5a15VQmVAbGsqQEsmM0laaz89
aXVEMkEpfDdPVWohO1hHNF5eMGY+K2NiVnBXRGArTF5FMERxVwp6KFhGYWU0PDZuTEJHfGUza1Qk
ZXB3KnFBRkFeMVNWUjB3VWNBY095dTIzVnBzPFh2bFpodGJoZVBqWSZmKkxTPjwKekVBdEl7SW80
Y2pXRzVQTHZQcGRgakEraEQ2eV9DcSU5dn1LcT43PigmOElZKDFVPU5MR3JwelpucHt2K3F9NFN4
CnprJEllaTk0Nz1aRiUhQldEQ3loSzlCVn4+UmoyaUVNOERQZSMpMj5nIUwtMVpOZUR6KCgmOEEy
ZDVaN1dTNGpvdwp6eE88bjFoI287ajwkSkJpTFJMJH5BPkUyWmMjaG1QfDlUZjtMJX1ncFZlKDZ8
MSo+c1dHRzcxXztIZVlPejZGdGIKeno1SkpuZmxOb25HXjRAeFI0ajwzS2lldHxsNnRxYEskUjIq
P3FAKjFLPSgxQTVHIWc5TCNQVkoxTXlkVnZme1BGCno2bERMfVRqaVdCbFJrTSMzbXdZbjUkSzJ6
bnFAS0RwQXZQKjt4O0Z5ZUoqb0Y4RGgoOy1tI1hHWmpvWmZoMFoqRQp6Vk5FP0htN1dtQyY/ck9Y
NDQzSCh7UiFMe3BqUG5mQkY4IzNTQHppTXVNeUBaIVZsNlNRXzB1fE4rQGM0Sypeem4Kej1SOzMt
T0w8MWw8WkU0SD87TE42JTN4S30oZTg/aDRiPSkrWndJJFYkPUpJeTQ3cEU0O350NyVzJWJpSkB0
KD5KCnpwPzslTVVRdys9Q2FieVpxb255cmohdD1LdmRvYFIpIVVjPEdjKGJzO0d6K1R7K1VgeTA3
WVNpM35nN3xobzl5SAp6I3JiQ3B6YHUtZUZWYkNYK09pc3w9dHFFS2JWUDg7MHdVWHt4KnI5NUlI
P3VsP2xXZjJRNXNwbEJpdFohNDNifFUKenAmWG44Z3o9byljVnxOQGtMSXRuNz5wciVaVkQtcnc+
Y2Zkaz5PRCViPEJpMlppI2wjPDY/fXR5S2pqKVVBejRACnpScFpQUk1pO1padmo/JnMkVG9Jbj9W
ciV3JEZIQCs2bCZXQWE9Yk10LTQ0N0xiSUJPc209YFE+ZihOakpNJSNaaQp6Jl9UZ2I8Knhtfm9P
TCoqIVQpeW9WeGBDejxtRVI/aChTRlB2KigpMU0rR0swX2ZOOXFNWTsmJW5eM2Z0WH1FJCEKemAx
PyV2My05MTUqJU9jV0g3bCE1YnxnRno1emNuTHF7ZC1yQkgzdl9eWFJxJFc3KWVRUl9kXnpGRnJI
WCpiUnNNCnokaWcpbm9Bc1JTLUk8SzRjJTxXYFJzTDJiWFdzO18tWSREVEtyOHhDSndPfD9LSHok
e1U2Yk0ocDxOI0hrKCEmaQp6MSNjTUFrTTFpMEJ6OzRHMjBYdmZBWjJYTCtLSWAxNmxTZ25mdWpx
cHF7VjRgcXYqNVgmRXBmR1RrdFBZbHVELVEKekt3RTFVb3RvU3FEWGRwZ0BGMHlgTzs7MiV6QVBy
RiNHbj9aQjxQMUpoRk5WNHdjKnFAMlZSYXJxa1U+LTMhJExKCnpgNFUkbEtYRlRzdT97fm5SJkky
JUh6JXtzVVVYPkUldVQlX1pBYC1nUit3TD9YI3J6Z3d+QT8jPkJ5PiEocSFIbgp6QGhtcUI3UmVM
amRFeVlyXlZXWSlvLTVITlYmPHJBcH1KVW5RTz9tUjxJdVZiTEApS1pKMV4oWj1QZ0MzYnkpX0UK
ejkjUEJuQld7UX5JZE8wYFpadHAqN2gpYnw9fDgmdmhOeFFub20jRnUzKExQfVJtQmsoVzl7enw/
ZWgoVlhWJjZPCnpMcXpxJFZgQDBWKnM1OS1SVE8tTGB2THV5ekxOOWZBUzJRM01uN1Q+WGUtZH5A
Tz9MUDl5UShwSFMkKj5xb3Aofgp6e3gqWGZGbz9tZ1V3aXtxcmEofXV7KihxI19GQGpkJXhzeSVO
M0NmX0VNdUMzR3JCS0Z3SDh3cmxjUD5zVjxycl4Kemg0Q2BfMl94OGw2UWZvaHMwNVp0WmlVeWto
NWluMEVwfFBxSFJgU3w/VGZXM3M3dmpFNisxRmctUHM/RVZJPDZMCnprIXg4Kj9PQm80Y1F+Jk5o
OygxfUpPMHB+VXpTLXx2SmxqamxWZnlleyohYklyOHZHYU09fCVTMlA+dmd6RzU7cwp6IV5jKClT
eHBmZ0MzVDxpUGhhJGtlVG5RUmAwZzJIdGlWdntER2orSGRPM0ZRdWBvUSVQPyV6ai1Wa2xNRCl4
I20KenYkMkRXeWV2WDNtTHhDVzliSX4kZ2lTVUhYXk99Pz5EbjUqZzkwfTAhRn5PVDt5Uno/PjZl
NlBpMzVGdzVHdV9qCnpSdVVtWFhxUmlMQCpGUkxQSmByJmlVez4wOUVYdWQwQil+VTw+WXczNipv
eUAjP1Z3VSVCIWxFQ04pP3FCZDBPeAp6UGk0dkFncmh8VkxaRiNGU0x3R25adkp2d3IyazZPLTdw
M3tFKktNfHZ1SE08KSorfWh4bEU+Wm1qZSZ4TFNGYDYKendyfTVsa0VtfHM4cnw3SXFgKiotVnBO
e3JoUjZiPCV1ZndCYTNVeXYpWUlpZWgzRTM1cUA7TDwhIX5ZM1dLeXNFCnplSjNOYnQrbjtHcDtz
P0lnQDxPLXcrdGlWcWpwd3MzaTFCcFJmbGFiNyQ1bENyQ1BaIWYtcTwqWGpeR3RnZHdDbQp6WF5w
MWJaKXA2ZEp9ayR9UG4zUmNDdWxiUmVGaXRzbC1LZm9qVWNgbTJeN25wKGZ9OEY/IXhgTUpOZyYx
VnVldk4KelN0IT1OaUNXfVMpJUt6d0B9PnxgPyEqQG5ma3VUbFlYVnJ+OD4qeWw5eTlycTM3bEt3
KWloa0hgZWFYQk9VIUhKCno8b0pMLVNMIztOT1glZjNtNT9PIT5paEM1Q2dPKVhubytCejhBaEli
MGxaflNLUFI8aWorbTMjKkNIZUsqSG17bwp6WWFWQUpaNVMmekQ3ck1DaiV7LWt3PV9TY1E8X2Nx
dGlvJD1xendzJVQhV1VmVWYjZj5rdyFlI1FEQjl7P1BXPVoKeihqUzM3JD16N241c1hgNEAzKVpB
Rmtffl9BQElkey1KMmsoUzZtMT42V3h6SWRWI241VS00cEcwclpWSW4lViZJCnpsajxaOCU2NXdm
dGBLRFoocHowYzg4RzcoUGJnQjZjRjQoS1FId3RNU3pfMU5VXzNXZ2pMMDdiWkpRc1JqJmZQOwp6
QDxUVTc1aTQxQ1NXR04pWlBfRFlLajdvbjl2U1YlKCVReipZRXRwNWx9X3hYKytnY1MhZylidUF+
dnBRR0VNMXoKekVCYm1kNi1vfGA4Q3oqbXEhWEdhanh5eFYhe3JjLWZ7cnNROzVPRFVfaW1RKyhu
KytFZld3aHF2UklOeGhpQzZTCnpwKHc2aHVpUE11RkQ9cWhkaElOWHdiZShPLSNjTUUoTnw2RExt
aFElXzhQN3N3ckNNU156SHFyPT5fbGtjKTNKYgp6QTN6cndeUz9Vb3xFR2kteFo4SXRVcUJXOFpZ
MHB+eloqKlVEQSpWR0ghMkQzWnhHUGUxeEQ4STNBY3ZyM0JmWkcKeilQZDkyMSNQRmcqJkNwM1hZ
QWg5Zz0yPStKSmNJQWFicnZKQj9aVVhAP3h4ZDJ+b1gtYm5jUTJPdDdkK3deQUozCnpuTj1PM1Vq
Vj1JSlpAVkpkXnlmYll+eTVzZ041KmhePyZOeVVQP0UwVGEmd09ra0FQSGZ8JHE1NnlBJGNZNVQ3
Ugp6ZFRaOzYoUWFkNFI0ej1RSGt6VzlCSHd9YUNZajJBeHwzRnMhRmRjRzZeeDF+PUtqOzhEVzdE
emh0RGNuS3BNcyUKekZ3fHIxMyR2cTErPjxNcGp1NDRzTTMjRGRsez5wVnFILVA+U2Iyb31iem1o
dz5MVXdweX5WVzd2c2ZxQEt2OVcpCnphKDtiK2xDd0wydERqZnVWSX56WktJbG9kKUtAJW54U2Mr
PGRCXy1qTHJLbGNXRi1iRV9VPG1+ZlRTQ3dsK3g+eQp6VF5EZWctd2pTVz1NT1BScVApXlRlJT9H
N0JHbGMqcFB6VTZqan4odD9AKkxWcnMqYnN1WVk+JmZUd2Rub1lFdUQKekV2MGs3PFZtdDJgcUBm
WEVLXkMpbGt6Plc5QVZsKzlnZ2M3M00kY2g0WFVRU3Qla1d5KGNSbyFWa0tCcmBJSE1NCnp3O1pD
TkJDSkN3QChOa0w4SGBnPWhYdW5ob0kwIV47a19AcmNKZGRXaUxZem1DWTZNVjJFMUBSJG4mY0VB
a1EyQgp6TVJ+NDduPX5RcSU3XnoybUJ6dmVlY147RG0kWT1aT3hwc3VuWlozTmByTTR0Xm4zSUtw
MjJhcDchZFcrXmkrQ2QKeilwMiVXc24wIzQmclJvNGBXc3d+ckZ6JEs7bXZ1bW1NZ2p9OEAjYWdK
YkckOUF1ZyFtOV5DYCQ1K29FOERebGdMCnp4WUZ8RTk+K19mOHBTPE4oV1lQVSliY0pYPFk1Nml4
eDQ+MkE9OWZnRWRELSZgITVARVFCTTYoN3JOSEsldFFAegp6VmZiSlRJSE9TJSlDSUJ1YFVZZTRi
dWwpKmx4UlMzQjAyY3Y1VyNAaE5kVDxtSk9uSldHeD1tfEVvPXdhR310TGQKejU3UFZCNFB7eGIt
bHcmZzdrZTJpMEhzYTM4NVpENTs1IXU8N3pvU3tAYUVkMit3Yl9IdF8zZ3JhQSVaVCFMVyEhCnp5
ZzlCRSRBK0wxWiVNRikmZlZEfjJCJWI3dmhWVnopJDEjT3J+a3RqOXFpc1g2enx9aSUzeVE3dXpD
ZiteSWg3bQp6OXVjX0kmPG5kWDAmQyNUJmJZOF56YSk4eWx3ZCY9ZVJvVD1VbjRpPCUhPS1qcjI0
MEAwRkptSk5HK2NZQFJXYm4Kemk4LXtSWE1LRUllPGQwODZgQ1o5X2tNU2JoQHVhYEhySyRkMUR5
c2MlTTRhSCVJRmk7YURkelVlKCF8SGhjOWN0CnpRejc2eVJ4KE4jVH00R09fMjVfMm5EcWJzWHYh
eTw/eCViTWBqQWAtJlZPN1hsaHBTJCgxKFlJXzEpSXNJIVlxSQp6T1lWfj0lZXhBS0tiJSZoYlFj
NSYwUH1nM1ZCb349c3NlVzgrMikrMnxMRX09RUgqfkhXd1k8Tis/TERhIStuUkYKel8wJmIqdllW
UWtKVTFQLVMqbkhPbUIoYT01PyQ2PjIpaz5OOzxJbmJAZFYzKW0qZ0okXlhDTUEkdW8pN3V0dEMm
CnpQZSo+fGZvekd+aWlSS3JTd3QpU1RzMzkwYFJfQmh8RlIoJCgzb2M9bmtAQ2YxUDJBVXNSYXV8
aio0O1Erby17Ygp6PU1zbHtMZVZmd3w3U3dTXkslYWZMWmpvJT4+cXtebGlCXnt7WFA/Z252N0JW
Jn0jSTN2UnM2Km1vWD41SklYeWcKek5sZ3xkKjw1akxNdlR5WVVSbmYoc2dSXkVFcztmKXV1fiVL
OHJXNWxEfmVVaV9yUTM9aWR1Z1dsak1TQXtTRzdVCnpFbHhKfUkqVW15Vi0hLSZMJVU7c1c+VF58
V3YtUjVxZEZMJCQyNEh4P0JuQ305WVViRnlgMGRvcEFLaEZvMXxOSQp6JUxEbDBZdkQpJXEqSj1W
V2Jqc3UpP3VTNTZvO0ZHYzMzcjVhc3o3Um9ONVBGZ1FSSzhGdlE5SihwIWMxcFpHdkoKekhefG9e
WjRReEY1TG1taHNXcGImJVFRdk00Tj84MD58SSE3YmRIPW4oblBzT0dgYlRFaXpONkRiP0t3S0pP
Q2UkCnpKNGYwUUltVHxzclAzK1IpR005aihRPTZzYD5YQDlIa3pPcUh+USMpeUUldGlEbWdUdmpk
bnttSzNiTEYyRjhOdQp6QG0rKWBSYm04Rl81cilWQiRPRjRpdT1nZUB0ZG5+e2UoI2tvMj9UNXlk
ZHBGPHAkYz9pRSpYWlA5e3FfS0dPV2QKeigjcyMqZD9zOChJcjRtMUNaQFllX3w1QEw1WnpXejVa
UW5VcUZpTnQqc041WHpua3BAYm5UQnZOPFBLbXt1SUl1Cnp3RXJKWjBWQFQmPzx2fGU/akJ9NDB+
bEdxQyl9V013PWFEbDklPyUmaG02QkY+VzQhczIwK2Fud0t6fE0oNnRaQAp6WUEhVldXJnlOdjA9
Vl9oOGhwbmZFOGAjLUdDcCo3IU0tVT9wailSRDQrKU5LZEpyYU9mP0xsI2FCd0VIYXVoKUYKelE5
IUZUYlUzTWohVDNLamJATkcwZktTbVJwRntNQXZoOHotSzhGWm1uRSRWQyt2aTA0IS1uTU41UGM1
T1p4KlVACnoqenx3UmskeWhXeyYzWHhiQkkyTj1yZVd2YiFIfn5HclJzUUt0NX08fE1GN1h7fHt5
Q1ZDZTJzLSM/N2plUlR4PApSbXZAIURjODxIVWNBV2JEZSpqR0k8dW17UQoKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXItY2Fj
aGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLXNoYWRlci1jYWNoZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGNkYzU5NWQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLXNoYWRlci1jYWNoZS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSw0ICswLDAgQEAKLSAgICAgCi0gICAgIAotICAgICAKLSAgICAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXItY2Fj
aGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1z
aGFkZXItY2FjaGUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODdmYTY1Ni4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItc2hhZGVyLWNhY2hlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi08IS0t
IFRoaXMgZmlsZSBzaG91bGQgdGVzdCB0aGF0IGN1c3RvbS1maWx0ZXJzIGNhY2hlZCByZXNvdXJj
ZXMgYXJlIHNoYXJlZCBiZXR3ZWVuIG11bHRpcGxlIGVsZW1lbnRzLiAtLT4KLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgY2Fj
aGVkIHNoYWRlciByZXNvdXJjZXMgYXJlIHNoYXJlZCBjb3JyZWN0bHkgYmV0d2VlbiBlbGVtZW50
czwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFi
bGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0
KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUo
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAotICAgICAgICAgICAgZnVuY3Rpb24gcnVu
VGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4g
dGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0Pgot
ICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAudmVydGV4X3NoYWRlcgotICAgICAgICAgICAg
ewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvdmVydGV4LW9mZnNldC52cycpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5mcmFn
bWVudF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
ICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hhZGVycwotICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVy
dGV4LW9mZnNldC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBu
b3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAg
ICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tIFRl
c3Qgb2YgY2FjaGVkIGN1c3RvbSBmaWx0ZXIgc2hhZGVycy4gWW91IHNob3VsZCBzZWUgMTIgYmxv
Y2tzIG9mIGNvbG9yIGJhcnM6IDQgaWRlbnRpY2FsIGxpbmVzIHdpdGggMyBibG9ja3MgZWFjaC4g
RWFjaCBsaW5lIGNvbnRhaW5zCi0gICAgICAgICAgICBhIGZyb20gbGVmdCB0byByaWdodCBhIGJs
b2NrIGEgYml0IG9mZnNldCB0byB0aGUgcmlnaHQsIGEgd2FzaGVkIG91dCBibG9jayBhbmQgYSBi
bG9jayB3aXRoIG9mZnNldCB0byB0aGUgcmlnaHQgYW5kIHdhc2hlZCBvdXQuIC0tPgotICAgICAg
ICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2Uu
cG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVz
b3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVy
cyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAgICA8YnIgLz4K
LQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9y
ZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNy
Yz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJv
dGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAg
ICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9z
aGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcg
Y2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBz
cmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJm
cmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNl
LnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXIt
cmV1c2UtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZGM1OTVk
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1zaGFkZXItcmV1c2UtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCArMCww
IEBACi0gICAgIAotICAgICAKLSAgICAgCi0gICAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUzNGMxZjguLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXNoYWRlci1yZXVz
ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzQgKzAsMCBAQAotPCEtLSBUaGlzIGZpbGUgc2hv
dWxkIHRlc3QgdGhhdCBjb21waWxlZCBjdXN0b20tZmlsdGVycyBhcmUgc2hhcmVkIGJldHdlZW4g
bXVsdGlwbGUgZWxlbWVudHMgYW5kIHRoZXkgZG8gbm90IGNyYXNoLiBUZXN0IHBhc3NlcyBpZiB0
aGVyZSdzIG5vIGNyYXNoLiAtLT4KLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+
Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgY29tcGlsZWQgY3VzdG9tLWZpbHRlcnMgYXJl
IHNoYXJlZCBjb3JyZWN0bHkgYmV0d2VlbiBlbGVtZW50czwvdGl0bGU+Ci0gICAgICAgIDxzY3Jp
cHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZp
bHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KGZhbHNlKTsKLSAgICAgICAgICAgICAg
ICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2Nl
ZWRlZC4KLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIGNoYW5nZVN0YXRlKHN0YXRl
KSB7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSBzdGF0ZTsKLSAg
ICAgICAgICAgICAgICAvLyBGb3JjZSBhIGxheW91dC4KLSAgICAgICAgICAgICAgICBkb2N1bWVu
dC5ib2R5LmNsaWVudEhlaWdodDsKLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpIHsKLSAgICAgICAgICAgICAgICAgICAgLy8gRm9yY2UgYSByZW5kZXJpbmcuCi0gICAgICAg
ICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmRpc3BsYXkoKTsKLSAgICAgICAgICAgICAg
ICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1
blRlc3QoKSB7Ci0gICAgICAgICAgICAgICAgLy8gVHVybiB0aGUgc2hhZGVycyBvbi4KLSAgICAg
ICAgICAgICAgICBjaGFuZ2VTdGF0ZSgiYWxsLXNoYWRlcnMtYXBwbGllZCIpOwotICAgICAgICAg
ICAgICAgIC8vIFJlbW92ZSBhbGwgdGhlIHNoYWRlcnMsIHRlc3RpbmcgdGhhdCB0aGUgY29tcGls
ZWQgc2hhZGVyIGNhY2hlIGlzIGludmFsaWRhdGUgY29yZWN0bHkuCi0gICAgICAgICAgICAgICAg
Y2hhbmdlU3RhdGUoIiIpOwotICAgICAgICAgICAgICAgIC8vIEFkZCBiYWNrIGp1c3Qgc29tZSBv
ZiB0aGUgc2hhZGVycy4KLSAgICAgICAgICAgICAgICBjaGFuZ2VTdGF0ZSgic29tZS1zaGFkZXJz
LWFwcGxpZWQiKTsKLSAgICAgICAgICAgICAgICAvLyBUdXJuIG9uIGFsbCB0aGUgc2hhZGVycyBh
Z2Fpbiwgc28gdGhhdCB3ZSB0ZXN0IHRoZSBkZXN0cnVjdGlvbiBvZiB0aGUgY2FjaGUuCi0gICAg
ICAgICAgICAgICAgY2hhbmdlU3RhdGUoImFsbC1zaGFkZXJzLWFwcGxpZWQiKTsKLSAgICAgICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3Jp
cHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIGJvZHkuYWxsLXNoYWRlcnMtYXBwbGll
ZCAudmVydGV4X3NoYWRlciB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3Rv
bSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzJykpOwotICAgICAgICAgICAgfQot
ICAgICAgICAgICAgYm9keS5hbGwtc2hhZGVycy1hcHBsaWVkIC5mcmFnbWVudF9zaGFkZXIsIAot
ICAgICAgICAgICAgYm9keS5zb21lLXNoYWRlcnMtYXBwbGllZCAuZnJhZ21lbnRfc2hhZGVyIHsK
LSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNv
dXJjZXMvY29sb3Itb2Zmc2V0LmZzJykpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgYm9k
eS5hbGwtc2hhZGVycy1hcHBsaWVkIC5ib3RoX3NoYWRlcnMgewotICAgICAgICAgICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycp
IHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpKTsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCki
PgotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9y
ZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNy
Yz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJv
dGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLQotICAgICAg
ICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmcmFnbWVudF9z
aGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcg
Y2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhfc2hhZGVyIiBz
cmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJm
cmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNl
LnBuZyIgLz4KLQotICAgICAgICA8YnIgLz4KLQotICAgICAgICA8aW1nIGNsYXNzPSJ2ZXJ0ZXhf
c2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1n
IGNsYXNzPSJmcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmci
IC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVycyIgc3JjPSIuLi9yZXNvdXJjZXMv
cmVmZXJlbmNlLnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdHJhbnNmb3Jtcy1hbmlt
YXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggOWNhNTY5ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdHJhbnNmb3Jtcy1hbmltYXRpb24tZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi0gICAgIAotUEFTUyAtICJ3ZWJr
aXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1peC1mcm9tLW5vbmUtYm94IiBlbGVtZW50
IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRl
ZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwgMCwgMCkpCi1Q
QVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LXRvLW5vbmUtYm94
IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hh
ZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwg
MCwgMCkpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LXNp
bmdsZS10cmFuc2Zvcm0tYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86
IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0
cml4KDE1LCAwLCAwLCAxNSwgMCwgMCkpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkg
Zm9yICJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWJveCIgZWxlbWVudCBhdCAxcyBz
YXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5v
bmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCgxMDAsIDAsIDAsIDEwMCwgMCwgMCkpCi1QQVNTIC0g
IndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tbWl4LW11bHRpLXRyYW5zZm9ybS1i
b3giIGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1z
aGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybTEgbWF0cml4KDE1LCAwLCAwLCAx
NSwgMCwgMCksIHRyYW5zZm9ybTIgbWF0cml4KDEwMCwgMCwgMCwgMTAwLCAwLCAwKSkKLVBBU1Mg
LSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5z
Zm9ybXMtY291bnQxLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBj
dXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJp
eCg1MCwgMCwgMCwgNTAsIDAsIDApKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZv
ciAiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYm94IiBlbGVtZW50IGF0
IDFzIHNhdyBzb21ldGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52
cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDUwLCAwLCAwLCA1MCwgMCwgMCkpCi0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci10
cmFuc2Zvcm1zLWFuaW1hdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDViMWJhZjYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSwxMTAgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxodG1sPgot
PGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENT
U0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAg
ICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAg
ICBtYXJnaW46IDEwcHg7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwotICAg
ICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1
c3RvbS1taXgtZnJvbS1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjog
Y3VzdG9tLW1peC1mcm9tLW5vbmUtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAg
ICAjY3VzdG9tLW1peC10by1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlv
bjogY3VzdG9tLW1peC10by1ub25lLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0KLSAgICAg
ICAgI2N1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1ib3ggewotICAgICAgICAgICAgLXdlYmtp
dC1hbmltYXRpb246IGN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmltIDJzIGxpbmVhcjsK
LSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLW1peC1kaWZmZXJlbnQt
dHJhbnNmb3Jtcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20t
bWl4LW11bHRpLXRyYW5zZm9ybS1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246
IGN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0K
LSAgICAgICAgI2N1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQxLWJveCB7Ci0g
ICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNm
b3Jtcy1jb3VudDEtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICAjY3VzdG9t
LW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYm94IHsKLSAgICAgICAgICAgIC13ZWJr
aXQtYW5pbWF0aW9uOiBjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1hbmlt
IDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0
b20tbWl4LWZyb20tbm9uZS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSk7IH0KLSAgICAgICAgICAgIHRvICAg
eyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNm
b3JtIHNjYWxlKDMwKSk7IH0KLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1l
cyBjdXN0b20tbWl4LXRvLW5vbmUtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgz
MCkpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8t
c2hhZGVyLW5lZWRlZC52cykpOyB9Ci0gICAgICAgIH0KLSAgICAKLSAgICAgICAgQC13ZWJraXQt
a2V5ZnJhbWVzIGN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmltIHsKLSAgICAgICAgICAg
IGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwg
dHJhbnNmb3JtIHNjYWxlKDApKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0gc2NhbGUoMzApKTsg
fQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1taXgtZGlm
ZmVyZW50LXRyYW5zZm9ybXMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgxMDAp
IHJvdGF0ZSgwZGVnKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSBzY2Fs
ZSgxMDApKTsgfQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3Rv
bS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0xIHNjYWxl
KDApLCB0cmFuc2Zvcm0yIHNjYWxlKDEwMCkgcm90YXRlKDBkZWcpKTsgfQotICAgICAgICAgICAg
dG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0
cmFuc2Zvcm0xIHNjYWxlKDMwKSwgdHJhbnNmb3JtMiByb3RhdGUoMGRlZykgc2NhbGUoMTAwKSk7
IH0KLSAgICAgICAgfQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tbWl4LWRp
ZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50MS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHNj
YWxlKDEpKTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0gcm90YXRlKDBkZWcpIHNjYWxlKDEwMCkp
OyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLW1peC1k
aWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBy
b3RhdGUoMGRlZykgc2NhbGUoMTAwKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtIHNjYWxlKDEp
KTsgfQotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLSAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3Vy
Y2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vYW5pbWF0aW9ucy9yZXNvdXJjZXMvYW5pbWF0aW9uLXRlc3QtaGVscGVycy5qcyI+
PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotICAgICAgICBj
b25zdCBleHBlY3RlZFZhbHVlcyA9IFsKLSAgICAgICAgICAgIC8vIFthbmltYXRpb24tbmFtZSwg
dGltZSwgZWxlbWVudC1pZCwgcHJvcGVydHksIGV4cGVjdGVkLXZhbHVlLCB0b2xlcmFuY2VdCi0g
ICAgICAgICAgICBbImN1c3RvbS1taXgtZnJvbS1ub25lLWFuaW0iLCAgMSwgImN1c3RvbS1taXgt
ZnJvbS1ub25lLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVl
ZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybSBtYXRyaXgoMzAsIDAsIDAsIDMwLCAwLCAwKSkn
LCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLW1peC10by1ub25lLWFuaW0iLCAgMSwgImN1c3Rv
bS1taXgtdG8tbm9uZS1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwobm8tc2hhZGVy
LW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0gbWF0cml4KDMwLCAwLCAwLCAzMCwgMCwg
MCkpJywgMl0sCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtc2luZ2xlLXRyYW5zZm9ybS1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LXNpbmdsZS10cmFuc2Zvcm0tYm94IiwgIndlYmtpdEZpbHRlciIs
ICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1h
dHJpeCgxNSwgMCwgMCwgMTUsIDAsIDApKScsIDJdLAotICAgICAgICAgICAgWyJjdXN0b20tbWl4
LWRpZmZlcmVudC10cmFuc2Zvcm1zLWFuaW0iLCAgMSwgImN1c3RvbS1taXgtZGlmZmVyZW50LXRy
YW5zZm9ybXMtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVk
ZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCgxMDAsIDAsIDAsIDEwMCwgMCwgMCkp
JywgMF0sCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWFuaW0iLCAg
MSwgImN1c3RvbS1taXgtbXVsdGktdHJhbnNmb3JtLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybTEgbWF0cml4
KDE1LCAwLCAwLCAxNSwgMCwgMCksIHRyYW5zZm9ybTIgbWF0cml4KDEwMCwgMCwgMCwgMTAwLCAw
LCAwKSknLCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jt
cy1jb3VudDEtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3Vu
dDEtYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMp
IG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCg1MCwgMCwgMCwgNTAsIDAsIDApKScsIDJdLAot
ICAgICAgICAgICAgWyJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50Mi1ib3giLCAid2Vi
a2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0
cmFuc2Zvcm0gbWF0cml4KDUwLCAwLCAwLCA1MCwgMCwgMCkpJywgMl0KLSAgICAgICAgXTsKLSAg
ICAgICAgcnVuQW5pbWF0aW9uVGVzdChleHBlY3RlZFZhbHVlcyk7Ci0gICAgPC9zY3JpcHQ+Ci08
L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tbWl4LWZyb20t
bm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtdG8t
bm9uZS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtc2lu
Z2xlLXRyYW5zZm9ybS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3Rv
bS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJi
b3giIGlkPSJjdXN0b20tbWl4LW11bHRpLXRyYW5zZm9ybS1ib3giPjwvZGl2PgotICAgIDxkaXYg
Y2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQxLWJv
eCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLW1peC1kaWZmZXJlbnQt
dHJhbnNmb3Jtcy1jb3VudDItYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGlkPSJyZXN1bHQiPgotICAg
IDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3gtZXhwZWN0ZWQuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtYm94LWV4
cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJhMGNkZjcuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUt
bWVzaC1ib3gtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLTwh
ZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVf
bWVzaFNpemU8L3RpdGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVz
dGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3
aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1
NSwgMCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAg
IDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJv
eCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3guaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtYm94Lmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZlNjVkYTQuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3guaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+
Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfbWVzaEJveDwvdGl0bGU+Ci0gICAg
ICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENT
U0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewot
ICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93
bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwot
ICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAg
ICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0g
ICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJlZDsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
dXJsKCcuLi9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcycpKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQg
ZGl2IGlzIGNvbG91cmVkIGdyZWVuIGlmIHVfbWVzaEJveCBpcyBjb3JyZWN0bHkgc2V0IGFuZAot
ICAgICAgICAgICAgcGFzc2VkIHRvIHRoZSBzaGFkZXIuCi0gICAgICAgICAgICBBcyBvZiBub3cg
dV9tZXNoQm94IGFsd2F5cyByZXR1cm5zICgtMC41LCAtMC41LCAxLCAxKTsgdGhpcyBzaGFsbCBj
aGFuZ2UKLSAgICAgICAgICAgIHdoZW4gZmlsdGVyIG1hcmdpbnMgd2lsbCBiZSBpbXBsZW1lbnRl
ZCwgc2VlOgotICAgICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTcxNDAwCi0gICAgICAgICAgICBGYWlscyBpZiB0aGUgZGl2IHN0YXlzIHJlZC4KLSAgICAg
ICAgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci11LW1lc2gtc2l6ZS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLWV4cGVjdGVkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZkYmNjM2UuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLWV4
cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdCB1X21lc2hCb3g8L3Rp
dGxlPgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAg
ICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9h
ZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0g
ICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS1tZXNoLXNpemUuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggZTI4MWQ4NC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS1tZXNoLXNpemUuaHRtbAorKysgL2Rl
di9udWxsCkBAIC0xLDM2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhl
YWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfbWVzaFNpemU8L3RpdGxlPgotICAgICAgICA8c2Ny
aXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQot
Ci0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5n
IHN1Y2NlZWRlZC4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNm
aWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAg
ICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
ZWQ7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIHVybCgnLi4v
cmVzb3VyY2VzL3UtbWVzaC1zaXplLmZzJyksIDEwIDIwKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgot
ICAgICAgICA8IS0tCi0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVk
IGdyZWVuIGlmIHVfbWVzaFNpemUgaXMgY29ycmVjdGx5IHNldCBhbmQKLSAgICAgICAgICAgIHBh
c3NlZCB0byB0aGUgc2hhZGVyLgotICAgICAgICAgICAgRmFpbHMgaWYgdGhlIGRpdiBzdGF5cyBy
ZWQuCi0gICAgICAgIC0tPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4K
LSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNpemUtZXhwZWN0ZWQuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LXRleHR1cmUtc2l6
ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlMzY2YTFkLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci11LXRleHR1cmUtc2l6ZS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxl
PlRlc3QgdV90ZXh0dXJlU2l6ZTwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAg
ICNmaWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMCwgMjU1LCAwKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8
L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGlkPSJm
aWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNp
emUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11
LXRleHR1cmUtc2l6ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNTkyMDZi
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci11LXRleHR1cmUtc2l6ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAot
PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3Qg
dV90ZXh0dXJlU2l6ZTwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2Vi
S2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9u
IHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8g
cnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Njcmlw
dD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNvdXJjZXMvdS10ZXh0dXJlLXNp
emUuZnMnKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgot
ICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAg
QSAxMDB4MTAwcHggcmVkIGRpdiBpcyBjb2xvdXJlZCBncmVlbiBpZiB1X3RleHR1cmVTaXplIGlz
IGNvcnJlY3RseSBzZXQgYW5kCi0gICAgICAgICAgICBwYXNzZWQgdG8gdGhlIHNoYWRlci4KLSAg
ICAgICAgICAgIEZhaWxzIGlmIHRoZSBkaXYgc3RheXMgcmVkLgotICAgICAgICAtLT4KLSAgICAg
ICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LXUtdGlsZS1zaXplLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggY2VjYTA2Ni4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUtZXhwZWN0ZWQuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0g
ICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfdGlsZVNpemU8L3RpdGxlPgotICAgICAg
ICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAg
aGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgp
Ij4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXUtdGlsZS1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggODk4MDQ5Ny4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDM2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAg
IDx0aXRsZT5UZXN0IHVfdGlsZVNpemU8L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAg
ICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAvLyBX
ZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4K
LSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNmaWx0ZXJ0ZXN0Ym94
IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgICAgIHdpZHRo
OiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgICAg
ICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIHVybCgnLi4vcmVzb3VyY2VzL3Ut
dGlsZS1zaXplLmZzJyksIDEwIDIwKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4K
LSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8IS0t
Ci0gICAgICAgICAgICBBIDEwMHgxMDBweCByZWQgZGl2IGlzIGNvbG91cmVkIGdyZWVuIGlmIHVf
dGlsZVNpemUgaXMgY29ycmVjdGx5IHNldCBhbmQKLSAgICAgICAgICAgIHBhc3NlZCB0byB0aGUg
c2hhZGVyLgotICAgICAgICAgICAgRmFpbHMgaWYgdGhlIGRpdiBzdGF5cyByZWQuCi0gICAgICAg
IC0tPgotICAgICAgICA8ZGl2IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4KLSAgICA8L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItdW5hdmFpbGFibGUtdmFyeWluZy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXVuYXZhaWxhYmxlLXZhcnlpbmct
ZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzJlZTAzOC4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
dW5hdmFpbGFibGUtdmFyeWluZy1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTUg
KzAsMCBAQAotPCFET0NUWVBFIEhUTUw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VW5hdmFpbGFibGUg
dmFyeWluZzwvdGl0bGU+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2Zp
bHRlci10YXJnZXQgewotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVp
Z2h0OiAxMDBweDsKLSAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAyNTUsIDApOwotICAg
ICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImZpbHRl
ci10YXJnZXQiPjwvZGl2PiAKLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11bmF2YWlsYWJsZS12YXJ5aW5n
Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdW5h
dmFpbGFibGUtdmFyeWluZy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0OTA5
Nzg2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci11bmF2YWlsYWJsZS12YXJ5aW5nLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyMCAr
MCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxoZWFkPgotICAgIDx0aXRsZT5VbmF2YWlsYWJsZSB2
YXJ5aW5nPC90aXRsZT4KLSAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjZmls
dGVyLXRhcmdldCB7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWln
aHQ6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7Ci0gICAg
ICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2Vz
L3VuYXZhaWxhYmxlLXZhcnlpbmcuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAg
fQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMg
aXMgYSBuZWdhdGl2ZSB0ZXN0IGFpbWVkIHRvIGNoZWNrIHdlIGRvbid0IGNyYXNoIHdoaWxlIGxp
bmtpbmcgYSB2ZXJ0ZXggc2hhZGVyIGFnYWluc3QgYSBmcmFnbWVudCBzaGFkZXIgd2hlbiB0aGUg
bGF0dGVyIG1ha2VzCi0gICAgICAgIHVzZSBvZiBhbiB1bmF2YWlsYWJsZSB2YXJ5aW5nIHdoaWNo
IGlzIG5vdCBiZWluZyBwYXNzZWQgZnJvbSB0aGUgdmVydGV4IHNoYWRlci4gCi0gICAgLS0+Ci0g
ICAgPGRpdiBpZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+IAotPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY29sb3ItY2hl
Y2stZXhwZWN0ZWQucG5nIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3Qt
Y29sb3ItY2hlY2stZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1
YTI4ZGY2M2M0OGMyNDE3ZjU2MGFjZDc5MDg1MTQ4NTM5OTAxMDdmLi4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/
ZDAwMDAxCgpsaXRlcmFsIDMxNDE3CnpjbWJAdVhILSpQQEhRJCVRQmU/NGA2MGNGRy0pQ29tRUl5
PEFQfCtfckkhJGppaHYtIW0hTEBSeShoOElMVEoobgp6NVR0fTJBfXMqfDxpYEt8dUtWNyo/JGBT
JVN0bj1qR2tlYkxuUDw7RGxoX3hBU35zdVh6a2NiYHJKRmsxPmMqRVkKeihRc2U3TUUmeVc3MFEq
SWZPbF54QUhzZWJGYTdNQzlxaW5Fe1hIJjglZ1EtOCRqQ3sqdjZHUlBtOX0kfmxYakd+Cnptdzlk
ZmBtdjs9alFrU15YXkdieW1vQk1ZKG91aEU4YnF+fFBaej03bFV9I3pLQX4mbigpP2haLTYtUzVD
R315IQp6PntvQlEzOXM0TT9BKkIrVz5nPXlqUHgkO3ZYMm0wd2NmVV48byU3NWJmVjRUPVUyWnNh
UDZ9Qm9BaFFZazM2eSYKekBsYz1tMFNhQjFvZl9QPWMje3BTdjhiKHBobmQqYWl1bXpZSmlVND07
dTA8UUM5MTF4bSNGYEplYThMYl9BXmQ8Cnpze2l9S3xOUW95SC1oRkomO1AjVmY4WUk7PXt3YzZv
M2dBPXxKVDYoZWYwX1YlPlFkWD9weWIlKnBvKElxJSE/Swp6cFRiUjw/JmtsRyk0ak5OPVBCO3tU
KExUdGlGPWdlWUxpfilQQSVFQng1QmclTW8pa3lHY3hzUGV6OGU3bytXKmUKel9Ad1Q8Nz5CRGMj
QHdKU2JqNXBCNyUrMlJpaEwoPFlsY2NWSEQraHdoPHY/O19zJExLX0ZNbGNFJGRsIV5CSUVACnpW
TlF8aWUjeTd+ZC01bV9yWnJGJCowJnk0XiFOQGxeIyQjZmd3cyFtT1pCJVJ6RiFtaUgkIXJuSGtm
b3g7P2Q7QAp6SEk9SWAyfEpZIUQodmBZSXdnMns8NjxJTzdVNFk0NHQ3enx7bVo8IWdsbT9LdCoj
IWJRQWN2emlvNDA2JV94JSQKendaO1o7XmFgbmMoWWg3JEMqbSs+ZCowKz5JWUZRRFFtKkgheWBu
MmhWQG1vN1BlfklPcVJ2bnptQXM8dVc/QFgkCnooRUpgdyVVQHtYOXQ9ME4mckRsKDxiU28zTz9q
Smw5IUd2PnhOMV4mbyVHRE9XQiNncns9Mig5UkxJV3sjeDVKRQp6O2J2OTtMPndSUnc2dENRNkxE
d3lzSVc7bmBRUTgjXldWfHY1TUk4bWBKMn0kdlJsK0BvMXpjN3NIaGotTVc3cVEKelZAQTczR2B1
Wmt8SGUjVzMrdDNxQ31ZJCs3VmNDRCZLe3I5OCY4V0dpO0pEc0FfanBeXmp2aik+KSM4YClfY2RY
CnpKQnl8PW5GdTB2KCVYd1AyO0h+KSQ5UDBHSl44cEwhQ3BFdXFeaXF9TWQxa3F4Yk9KQVNeTnlS
Q2w+WkA2LXE8Wgp6PzZmJEZufkVyRSE4Yk5STXJKV2BwNXxiUVFWM0JOTiohOzFRPTd7NiZMPihi
M0NhU3NtI1YzTHZrZipANzh4cDwKeiUxNW1eWm1JPys1OGtpU1Amdj1nITxKOUkrLWZrdileM3h6
NF5DKyhUZVJUaERhKENxc29ubHZtVnBBJGFraSs2CnphNER6Rj4wbDBffDVORmR3cURmMkZTbGZq
bG96dD0mVSVeNHFNK3I4YWxVcEhwTDFUQmlEOWxWTUE+VDJlcUNlKQp6YFNIMmZtYjElP1h0ekp7
UUJvZS1CWlEyRzhZPHhAYlZXTGt7a3QqTj8lKUU7TWgoeC1tcEVsbEhkbFBFWnltNz0Kek9gM0dZ
QyVvSDtAKiQlT2tjRFdhOFNudlRAWUQ+ci1KXmZWNkBNXl5ObVl6OUFqdSZnK1RrO0oqaTNkTTt3
Q1VLCnopITdkKVlqaExqaUhpYjNlM21gd29pKXZ5OWYkKVJJPyZeP1B5dyVXR1gjTktNeSgxdmFt
Q3R9QjA8eHV1a2dtRAp6SUZoQF5xRFA8RG5BUkxJLTQhbyU4U2M7PD9qbFRRO09+bUJicz40T2A3
fk8rd0V7MTt7JSM/QEJ6ZXd9c2AkWlAKenBJaC02U3VKPj5wKG4rQ3RAdTtwKyZlcFl8TGlWSz9h
ITJxdWA/Z3smRHdzYVREVUhCYUZXWENWcUFxN3A+enRzCnpOJigldHl4RWdkVCFyTi1BTFgtfFhL
WVYmOUdDXldyJm5nWGc9dzM2RFR+SUA5Z2RfKGYmSW5fU2Y4RmJ1Y05DTQp6ZWJSSFEpcGxLbXpk
a041M1FvYE9gOH0oIyZwOFZvXjA4Yk17dXk/MUFlTT5Eb0VHZD5gRm1pdFVyZXRsWG42UlkKejQr
VEJuc3h+cGQ/I2dEe09xe0R9KCo7YDApZ0Q2SUhweklaVjA5ZCVqMDl5YiZscUVPb29PTU4xJFch
O1pwMHxACnppP25pT0xeWDVUOWp2ayk+V3dGMGVKbVNid0tJWWlnMHJMIVJnOW5vMVlfX2o9Z2I5
JDJDR15he3l5TER2ekFEJAp6P2FGdlVqMER4QkQzMEp+M0Y0THx1Yk5xTVh2WFJeUmdSfEl1O21Q
Y0BBN0pKb2V1Y29FJXJZMmZ3cWdQdTxRYHsKekl8MWdnWmVAQWx6VDZaNGB5KTl1LUl+cSp3Sm48
MVhNI0o9bUxYaF9NaDQ2UnBLdjEzelVeb2QzVysxfW9VRGpoCnozfE9SfmlIaEpMbElRPX51aThJ
OE4ySHw8SlE5UHIoNkp8Wi0oQmwxR0R2R044YXxqU1RYfVVFX096S2otQVRxdgp6Mi1aSHgpYWM8
aHMrZ0IoVzE1Z0hnNU1SfS0/cUU8XihkRFI3a0B3SDNEMzwyMDx1KjNNMn08QD5fNWszREttYmcK
ei19WEFVM2JYVURSNipFaiRYR2V9TDIyYjlqbGU4XytNPWZLPmA2WSZmdnhwZXdOVFVBdGpaLXJF
XkIrUChmUSlgCnpxY1NDJlZlUUc+aGoqXzF6KDQhLXpTdzs5Ym0jUD4pNX1oTzFXPXtkMHNzNG88
dzI3STdnVlkkSnJrdExPQWlRYAp6Q0RuVTB4YVAwaiZDQ0A8dD0mTldtPmQ4TzdiWH5pMzU9SXB1
RU53ZyleNXdqRmcpU3JeU0EldWkyK19JXzZuOTsKemZBPChYQnpBTV90Wmh0MHNxdSFDYkJPOGAp
QH1gQEQ4bEZDVyVBNHdTTXVKY3klZUpRJjx6QEBjXlQ7N1kkK3QrCnpyVENFRXNpVWB6dHAhIV9T
di00eHYlITY4dkAxPjhzTjs+MmtFQyQjdldlcj4hJUd6M24pSHMxJHxaMz81Kz82bwp6bDxpV3Ql
TzdBUjFuQ04rQkFLTHJUU0kxIUZ0QExlLTk9KGVaR2BESEUyZmhZNjsxNnc8YXROK2R4ZlJlZVA7
cDkKekpAbzFRKGo4bForaDFpYUtNRnItI18+dipea05leyEhPGFrVUkmKiNyOGFNOHQ3cyN6LX0z
Zj1wWVlzc1NHQWkpCnoqPkItP3hnSW14SHktaGcxMyZSaUlWVDh5V3tiU09uVSk2eFJfKl5qU1JK
TzxmZDZmTWNfbXJJMGg1SX0qX19GWQp6UGE0Tm1HeFduXmY3YVR6bnhSTWhYMkdheztOe24hMUUt
JU47QjVoJk8kQiolI0U8IzR7Zm9DNVljeHRneWU1K3YKemRSR3x7cW9MNytjeDYmRndYYSRlaHN0
ZSNrVCFYJig9TUA+Sip1cDJkfE5fPWo7PChsOyN2RGFtK3tGQF42V2hDCnpkMkxFQ0E4RUM4SGE8
Uk95eWpzdCphazsoXj1PP05jYEg5fXBvb3B0YGRrbWJkQ0BaK3B4YXBxQHRWMkZJamYjRAp6OGA7
YU9mTXNHIV5FfUhtMChZP0hlbSRrJVoqNVN+UVkmJl9tWkw1TmdrMEU3cUlfaUYoaVl7VzhKdVlh
RnB1b0IKeiUzJGpJXmpzJUJKfH07Rk12aElTMSpNdEtCRnV9OSUoZS11TilLZFB2dHVeWHchP3E/
PFBLZzB3RGIkaTFyOFZxCnpyfUZTPVhAa0NyTl5wPlR2TzZ8IyMje1NwPTFMdjU0M017eCF5JkVE
JEc2P0VCY0pRKFU/ISFwUm5+NEFYTTYxaQp6YD0yV1g8REBPIU0pWWQ9SWo+WjlQdzNyNENVdkRy
bmtWc3xfYlg1dkpHLWVwRUl+MmFMTS1vRmFWUyNhaH5maVAKem1ecDMlZW1JcVcrK1VsNCh6O2lL
Mjd+NytaXzUla3gxd19sZ0oxYjMtYmk3YXoofUI5JnloeCVfPSp5QFAqMHliCno+Y3lzXlIocmdO
TEd1N3J4R2xxZjtLVT1vOTYjTWJ1RHF9Km5QeV5oS3IjOTZQcj4kVypKZmhZe0h9JHEoZlkmVwp6
JCUkNmNsJjhzRVg7TlJDeyE5R2lhWn4kNXxLd3N6YzVITlFGaj1lLTlmLW9uQHIhP3Q0dT1DaFRo
TWA4aEQ4bHoKem92fDdtYyVtdEVGVSorfEN3WlN3VXxJKD48Xm5Cb3EhJThHVnFuSXpfZDAya01g
Z3g+NStSeFdVZCl7UjxCNlc4CnpWQVk7VWN4fGRgUX0yTVAyRksxMyEycmlOOypzMjBsWEtyfEYl
WiREeCRQVl82T2F7dnl2PkAxQCkqPmEhS3RqVQp6en4/Njh1UnMwTGRGJCM8ZyE7YmhNVl4qVmBz
QyFeI35Fe0wtZTNMfGZ3M3FtUiFoWn5yeytoJFJSZW9WcUZWNiQKenZHN2xYTEVTP2pEbEIqcD5F
dUJBO1YzKzxAa2pQbzNGPUpWRUBpKm9Vdl83KWxLIzdoZU1GZVlqSXsqenh2Ui0pCno0ZylTRjY5
ZzNMV1pkSFlkO0tuNmA5LWZtOT1EejVNOCNaK2UwLWpZMTw1RnVFdj43RlVXJTxZXkZuZkAmfnFX
cQp6VHZiSEQ2MGEoYHslZWVJcmRkQVNAd3BCemdGS3g/Y29YfHAjb35KVncjQ1F6TnYmUn5MdnNR
QnhxWEFjN0RwR0MKelVBfHdGVSRiUSRLRDNHKE1CN2B5STs8UUBDYVRCS1JzdUI1Mzw9LXQ5N0BT
PEdZQm4pJDFQU3EpeiNId2ZxIUN4Cnp2Tl5KITlYSVhGKV5oaCEzRD9QZSY4Jm4/Mk1xdnVwWjlI
Q3Z4cyYte3tGKnd2TlEzYntjPHg2WDM4QCRxV2gtcAp6d3VSPyNCfX47fTRqZ3NnbllgcVJaPEx4
THtlWD5PXmMrbCZtTE55UVFWKSghPHY0VV5JeFgkMkY/fXQ+YGRfWmYKejMzWikqWWVDMEA/T08o
JkpDR2pUKiMjZSU+RDshVDFNIXJfISl4d0Z6PD1QdFE9bytCOWtLTklJYCZGSU9YOW4mCnp4Njd1
NyVLfEdsKD8mUSp2PExwXlcoIVFOd1I7QypvQzBldHN0Pkd3e3QzcFZaLT1qISRfPUB6LUBnYGQ9
YTJZSAp6P0JzZHM0b3ZASmYtdyFuOE9OWiU4Vy1jaD43fGc/K19xSndxeVBpN1hFUj07M0Y3cztx
IVcwYG43Y0YlJEVPbEwKeip8eHkmM2xhaXc5SnNPbHU2OGl+c1gwbC1kYD5meXdJdTd1LV8zKWdk
SG5KXnBJYnJkIWVATmFSI3FnPXdsdHkxCnpyQ24mVkZUYFlOaExMek8pTGBMZFZufkFUJTc1ZCNT
RXxKI21he1JCS0N+YGApVCZOWkVte3x+TT5wWjgmUm5Zewp6c2k8IX4wOClvUlVJRUpLSiEhajU2
eFFRdndqWUlrSTUxUFNFPTIhcjVuOU9DPz1vREhsOGIzYGNpfTFyP0BedGMKemtVVFJ+VyQjbTJX
UyFaYm9XbHl6PCMjIzRiRWYpKjN9Tn5neU1yclkqOEdVKztmdVV1enIqd1dYKkBZQHt0VHp1Cnpl
eTUjNWc4WkBUdGt5eVI9YlJFIyVkWVlxUV8rKTxTLWJ+bXhjRlE8a29KM3hWTiNJSUxPSzVkbV5a
dEJ0I3RNMQp6RyUqSDRtZjE7e1ckZjUwYXt3d0NiPUtqOzhaSyY4KDxMQ3crWUxWdGV+bT5VRSYz
QT9memYlMktSQTc3a0JGVzIKenZzJW5AYGwralowRk5aIT1yKyRyazZkaVJfeXsxKShnOCNHN1Qj
fCQoKElNRiomdUpVez5oVjtVIyFmJl5qUmwrCnp2TGh+YHZfNFMhYUgrJHpGciRAKHJDVGtYRXs2
JGlMbntiamlSZXgrVUBKcWBYUGRnMmM+Rz9ZblYzMD1TK09qSwp6ayl6UWhNNSVMUUd3M1ZmVnJZ
PEh0SyN6IV8qSiE2ZU09UklSdEJaKEBPZ2tpPFRIfk5vP0leWEdwKSkjSGZWfG0Kem9odDlJaUtA
PnEjNkQ+RVNpQCZ2XiopdnxUQ1NPeEpCailIdmc0NSU/ITQwI3p3KDl2S1hZcj9hcmBGQTZuNTV4
CnpDVUxXTFojYlR1SiE+WEBoeWZCOyF1dF88SGJEZzIoOVQhd1VwZzRSPjVNbno2anMrVHdDZEZA
ezh4Y2BGO0wrXgp6ajA7YU1mTHI1fkMxMVZ+ZFc3cSZDbChSVD9leFNgd2IqQVhkaUZfOVZma295
Y3B2MSo8Xjs2MTIrdzNKNVZsQjUKej8/JkJMNG48VCFSPlpVS3hHaGZDJTRCUmtNMF5ZQnlGUDE5
SFpsVWVkPUJnS0xGajNzK1RPbVktZ2o9Q0JVKD5sCnphTz5gZFRpdkJEaT1TYkFiNDBLSDI1U25D
NTtCPTFqen0xUjFHQ0NudyFfS0B3aF8yYXcrI15eci1YbHBKS2pJOAp6dXJwTnBPVE1wU0lqcVZM
Q1JEM0dtWnUlOFROdGsyYjNuUyVreFJDe0dEd3ByWl53Rjc8PDVYTEQjUyY1MyotRHMKekdqNElf
TUdhSilPSW94Xz5rQ2gjYnZ7bn4hJkdePj5OV24mXnI4YHlzcnt0fXpqOGY5JCF3ZDM3TythRDZJ
LWxXCnopIyQoZHROdmliR09mUyMkYTEjc0pWTU4oKXJpd2VkbjBDMDYobmVweVUmcXZtbCRlZVVV
ODZJOXhBfD0pXzNffQp6XntkQnFeI2dXcV5yVE9pTUQ1dmdrKFM7OHlTZUElUXxxdl4wVCFoN0le
I2lxKEFJX3BTdiYjTmFpdSN4Oz82SGIKejUmZWRSWWJFfChDT0l8cUZBbUtiN2FxdDtJYzFvWXA1
XlhuUzBKK0FyOUFyMmlBQyZyeGVAMnQmdTh0a2UhWEx4Cno8R3Y8dGZVJClfTks2R3hMUz9aVSND
N0g9Wk82OEA9byEzfXgkVXZ3aWVKd3xecnckQkhpWSQyUz1XU3BkcFcrQQp6RkQwckI2MENyPXFG
eDhEJClRPCZoZjdKT1ZEZ2ArZ1ZvNlYmbHhxWlE4bWZGc2pIbThfUV8hKDA9WEFBQkQ4MUMKenBE
RHE8bWJfUSlVRlAlS29zVjA9cUM3NiM9ajZCN1BgTkpmS1BNWmxqKXBsdD9pVG1NKFF7WFB0TWpe
aUA/JWVSCnp3bEhBfTFhX3swWj9rMTsrRkB8bHJVXlpseUJhd01GYWplTS1SaV9vJTRPZGRAIysr
bSMkKSokX019RVF3NVBudgp6NkQyRUJTdVUoYDNtYkRVZERvJUVhQDFPWkU0cjQ1XkNYSmFFaT5m
V3gxPGszdnJScDZ0UVdZazdfWUt9ckJBK04KemlVa3l7Tjcxa1RAR3pqclV1cSs9VWlTUlhoISZP
O187dVNEPTxocyNTe014fmF4RGp7Z24hV0w2JHxIMF5qMTRHCnp6Um1zTzUzUFAyXk1oX0pIQURO
Iyt1VUFHd0IwVmNJRGR7Ql5OSGVMYjchNW9uMkQ5S1UjY25Pa2dubkpZKG1Nagp6KDRnZGtMR0FA
RipMWlpQQT94NyFVOUw2KmNxcGxGXl4/aVlmbTRDM1dvd2leTlpjQmJLQiNvZ298dXFuaSpaO3QK
ellTclBLPTRjUS03ZjhqJVNKb3RwOU9eV3NFO2hQaD5RKUl9KTxTSWwkT3p4QyV9d2NJTTdtUzZY
IzB+QT52MGV7CnpHNypgSDJxX0ljVUJIfl9jVVojQGw0UD1GJSpMXn1ZNW14M0RRX1pxYG52cFQj
Vl44TExSb3cmWCFXTz9lRl5zTwp6QCNIfnd3KndvTWFRIV9gN0cwdkd1WTZTJHcpZDdAYygjQ1NG
WXYkMkQhZXhgYWE5ZzU4TFd1aEpydCpfX01RVysKemVzaXEqVVFCQXBeLU5WSEZaUWpEMkBwPUNo
cUo0R2haUj8qdXNZP2Z7TkRSbip8fkcpREEmRnt3SDNZSDs4djVZCnpteWdkYEgqczY2VGlwVkln
dG1kfUVjdWNxNzFkZDteNE9GdFBYbHNHdThMcV8qdHVhbDRufnB3I09ubX1lOU8+OQp6ZWlCbSkj
QF8pMVV4WTRSazhNfVRuNXFeakFhdFlkUFdSdEhFJHZtViRIcXolY0RPJE1xS2RWbSYlWFV9JXs0
NDwKelA0MHIjcFVwbUZXZ31OTFZeTzdzcHwoPGZ6Yk1oYk5QNiNjRUB6VlV0fWtvTzdXfUxpZlhY
ajhadihjQnMpWUFpCnpuKW47TUtGaiM/K2ltQH5tZzl6VnthbDE/a1JAKVdzQzxxJChKQ1Fvc197
KXVVZjVCeWtFTGJkRnJhcVU0bXMmSAp6JEd2VEheTHlkPWRkJE43N1VfJWxyX0hIRHVnPCp7cExJ
bTJyNitoZzc8IzZVO1d7N3dIUmlsdXJDP2N1MitJKz0KejckRytzR3FpMmhgQTR5KT4hazY4M14l
KnQhfkIpSnkjd1QlK2kwKDxlUip8XzdXJlJDIyFieio5TmloLTMzYHt+Cno/RlAoJD1NV0k9aHRq
b2cyKnBqU0NXfDtSV31MSDhFREF2fCp7XmNAR3pRP2I3Mn1kV3E2VHZZPHMxKDQ1PFlndwp6RFRW
T1NoalRBPjlsMk13T35WZUpgXj8+ZyM0RW59dlk9M0UmS3VefmpmXnVMO29ITWtuIUJmY1dFQEhA
Rl8xdUEKekBmV1JYdXJOI3laWSk4WCElX0B3SUJqNXQ9JGlab3slKzkzMCVfZjBZYjZFZmBVaCNS
d0Q5d2JYbCN8a2NyanI5CnpkUUpORjs7Qnx9LSgpTEZWYmJmX3Mja2RXUTZQfUZAbEBSJlZ9Pyll
aHFjWnozR1BQR0llNDVtSF9ZVFB5dyRjbgp6P21MSGBzclhAXm1DRlE5UH5WODBpZzE9fHRiMT94
TCtZR0VUOGZGQCRuQSVKaG1SWkcjMzRzfjdxY0pMWndzPEQKej8lY2pQJl83NGpJfigxWjkyLT98
MjVBblJwK3dJcFJLNl8me1l8WEhgblJvcmtjfnI8aEg2cjYtX0UmSkdja05CCnpBKkRXV3tEP3NS
JVc8PGApOCF8fHFHdFlxUnlAcWgyJU1NK3R7QlhnSGhBMkpoKkxXS3NvLUpgVVc1XlgwckpDXgp6
M1kxMDhHPHYwWkZfP29AcFd+RW1gYG9ZfDdHeHQjKmV0SCRoZGVQOEcyak8zUWdeaF91cGdlcEdx
bnI3I3k0eXwKendlKT5+VGdjaDwqRVV4ejJZazBWeTcrRUpmNVpfeD4kPDcrZz9ePnNiQTxEWChI
QilTI3lmTXUrUTc1MmZiWmlPCnpiTldBZyNELWhhTyFicCVGUDJzOWEzdTE4UHp+R3dgbmxPeEBT
PXxxITdWM0dmVHFDdDtjLSpSOW0pQEo5ZT5nQQp6I2s7TFVNd0MhQjByS3xMJE1TTUxTI0hPRUMx
M1R2PmNQJEBOKHphLTJALUNgTDJuJmlNM2wqdmNLaGZxZ19uc24KemZQfmx8VTE9c0Y4XkEreEln
Z0RKZUQ1WDN0Oy1WejhJZnt5bjdqISVOWFNiWE4zITteSTFnd14/anNBPGE8clF8CnpadlMxJlls
VG5TO2dlKzxrdlhUXloqWmo3bWdtUEhyNHpgWDBnY21MUUNNLWUrWTI/aTtpMDtTUHdHYUwjSUhv
OAp6eTU2cEchRzNqP3JrWn4wJlk4eDlRSnN+O19Ve3hJRzNNfStrKXs2WmshfD5xT31rR0M/IU83
Y0VfSFpOVW9ySCEKenpsRGIydGZuNj0yWUg2eWA9fC0lTlRGZHcobiMjNHdZPT4zVko5XjNzdUY4
aDxlaUM8LTw1VlAkdHhYKT0xRkNBCnpIQ1ZCNXg5QmExKUN2dns8Py07amVuZDgxN0h7djk+c1FJ
WSgmRkY0PWlOVEctKUspTD50M2xDaTxIS1NJVEB5Xwp6Ym9fO0h6Ukd0R0A9ak1lOWV1dChiMEcy
Wm8xaF9kP2RFTlZkTExxVG80Ukx5Uik0OCFET2VmcSg+Wms1WiFTNEUKeilpLXxCVkplPSo8bEZG
T0dlNnwrUHAxfjlUaGRNIS1BYXxpVmlwSU5DZyREcFJoQGhue0h6OWh5aktVO1dmI3dECnpmTUVA
azwoMHcwRktZQ1pfeDRZenoldHlMS2wzcU5sUzN6Z1JyU0FmY21GKSEmJEl+SyVEQj9mdD0zRzhi
bz5GJQp6MnNnOEg5R0ZHKCR+KGxAMEwye0w/VDklUkU5PDsqUDglVkt1Y2ZmUyV6M2lzPTxNSW00
SzckZForVCZQSjsjTGwKeksyPzNWZkdlSio1QHUyVWVrIVFSYTA9RjslWHZacUloQDN+OyVrJSlV
Xn1mUDhAbCU/RnQxY19LVU4pQGp2ZXU2CnpiXkcwQmNKVVJXUmEka3MtRT9Ab2gwbUc7VT5aNnEl
WUZJUzxWYzFFJDtXK1JRYTkwVzFLNm9PS0AoVF52cz4oNQp6TmJpYTVwR2VzNSMlNmolQEJFSDwq
fEBfPld1KGxJWWpAS0M8NDREdGYjXzxwJmF2Q1BsOHwzVCpsbk5lOSM+RXAKemJlYiVpXj1XYWw9
V0UhejlRPUYpQUJKc2l5ViZUP2NFJDdBWns3Qi1ZfXNiRVl9Yip5P34qYms1YFM9OChFP0k0Cnok
VVozbjF0N20keTVoJStieUg9eCl8aj8hZm50ZURoanBVaTdYbCs/dXshdiFGWkhnPTx2c2A5Pk1G
bk9MPnh8Wgp6Xko4NEx7T3hua1IqPnF6cUJTM1J1YTg0eEhsQCR4VGlQRlJRcXl3M3NIMHNUZmo2
ZVZDP0w7PnhqejJFZUJWcHIKem5WZGxiXlJoYEA5YGtUJU9XSDZGc2M8KSYtXnF8YHhxUmkxaT8z
Tykob3l+VSpSS3E2cjlpM1Urcm16P19XajQjCnpHQ1VSMkZGKnoyO2lud28kc190dF5pKGJgaTJh
azlnRGdaOz91cmtSJmdgMjgkJEVjZD4hdGNPPWQza0lmJj5MfAp6UDl1VlQrfVJ3cjYqbj1JSHtu
ZkdjQkpRQTxvOCE+TWN5fUhhakhNYCVZTmFvJU85JkJmRlA5MzJhZHFAUXxULU8KejRZIVB4NDBm
dGFCJDZZMmV2b1ExQFFXOSEtWH54QE5UNzkjeDRVSDhlQmZLM2paM1dwcG9BYUcweC1RcU4ydm0m
CnpmQlM9Pk52V3dyPVRFOVUtRmFPdWtRN1lZJV87VTlSTEBiRXhfWCFqbGh8T0J2OCZuQW8kMV9j
YSV+bEhsK3hLVwp6aShBTXh1Tjx7bW4wSDdUM1FxPTwhQF55QzF+QyNoSm5eTlhfaSU/I3FVUVBo
cWJEIyZ4UkhibGxZNDtRMHRCcC0Kel9uemYjJGVgYk17VGNxdz9HfExePjExK2hCT3VlO0hDKV94
ST1eV0c2WWdJLWV+I0ZAdjlzRmk3STMtTHdpaCNrCnpGdjZYV1Vqcmw3QmhCX0Q/ZU4+cHpLKkFN
aE5HS2UlJkdnbmgxWnVHWERHNSRTJUpydmVmcD8kbUBNUjFiYkZyewp6cWUrS0w9MXlwTkljSWRK
YV9JTXlpVUtBdUkhIShgNHxCeChEe0A3c0dENUdfNVAzU0djPDhrfXlUMz13Q09+WXoKejZDaFEy
UWwrTihSO2diPFgyPn1KJlopfTdmNk8jamxoZE5NKVNEfkB4PWtpbCFyYT5oMXA4VkNjSnBnZHNI
czloCnpsQnBqP3N5VDRHI2xCI2FqMVIqfWRNeDZUSjV3b1hte3gmfWlwPjYzQD9eKyMyJH40cTRZ
JFFYKHB2QiVOU3tXcgp6eDEjRDI/RyVyblRmbDdiVWpaXyh7XnhfYyNndFV9WlFBK1AoZTdDcEVw
TkpfN282VnE1Mkdee1dLeEdncTFWa24KemJ0enYpQzV1I05pOVd5YmZGVG4mUzEtMmA1KVlpdXVE
NEdhVntAITtEJmB3YkUhY2IhMHR+RUQ2M0ZGQiRJcGtvCnpoa3d9Ry1xKGZyMHg+JDdyP1ZFMGA1
bGtHbWlpYSglK3pVNGJ0UlE4N0dBYSFScHY4PHJZNS1zbzBATXdLemluQAp6dGZlaUBuPmR3IWQm
N1J+VXxMaXB7TWZkQTxKNVo5RGE2O3VVSkJCSWxISHhxdi1qM2A9N2soYkltOCtBViZNQmEKemlC
TiM7cXY/UkQ8elIoaW1SX2dGYlZWPzJPfGAwdnRRRFBZciF7WGo0bU5NMyZaYSU5VWthUzwkNUFh
ZDIhP3l3CnppPUQ2Nis1RWkxdFk9K0Z4SlhVaHgmPjZxS2RJa1g/QTV8OXNgfGRxSjhoeyY9fCQp
NS1EKHxQVTRpQFR5TGMqIwp6SUZOY31fcVhnTUFyLXpxZW9DNnh7Qmp4IXohSi08Q1g3LXpkTCEl
e29AXmdsWmswVmImMntLbXpeQnQ9MF47VisKekJOVnVoU2lrVlZObUxRMUZJd1BzP3Z6KlF4WiQ3
UGpEWHFHZDFnLUtSJEtkKXBANG1uP3xeMH0jNEZDZUl+I3lXCno2TEhjNFhVTEI/JmpHYGBlPlZw
X1pONmp5aS1ATUlOQHsmQXojI3l0cDJrfV8xM3UjP3VHTzI1Vk9KYkJNOD9wcwp6M1VRNVh6OG42
VmN+RmljQTtKeEQ9TWBROWRQZzQ2Rjd8eFBOU00kNSphenJGeTsrMCpGU3FAek0lTkZMYFNrYlYK
ejh4TDx4NkJndUlsblYocC19cFBObkF3TEZ7MVglJjR2UTVWbjRrU0VTZiNlezNuempzZGRCNTls
PyFTQHZLdjBqCno5fm9QfCRRZmxiYSZrOEw3Nlpjd2R0YUNAZUNnaD8hZEM7UkFneTdtVmZPJit3
QV5uQ3VRfV9uaH45fiNkMnthfgp6VFVTMlp3KURyYDgmfWBebkliT0p4V1lXaSE8VXMtUnp8cm83
UEc0XiZkfGYqdEk2cHQ+VzF4bShmZyNAI1o/YEEKelREamppWWA7YlhwQ0whbmd5Q30lS2lYKStX
NV5sbmhhWD5VS0QyKHwrcT8wPloqdHUwU2pNc19BdV9lXnhvVT9OCno9UVB1YGImXlp0JDZoPnht
JnpXXiQpN31NVCVWPVhMMmIlTkQwVUdXaCMtfkVTMjE0Nl9ZPENtO2dTMF9kY2VKewp6OWlgNUZg
Q3h4K01OcDNScT95bEQ4aHIyVWBrcnxENVM0ST1ASnI3VEsmTFYqeGdBP25edDc8cmMyK3diezx7
fCEKejx5dCFGRWZzST8xTFhDTzYrSkhIOFZEIVA4UThMRld1aSVuQlhEY0tQNH10clVycSZFenhQ
MGhiMSV0ck5reDI9Cno2Z1kzenl3JkQzQXkxSD08TldtR2B2UzR3JlJhZk4hMXJWQzBsSU9TJlMh
PTNOVX5BU184IThfbFhRd2VkMHFUOQp6WTFoJVJTQHVSSWwlaCM8d2NkVEk0QEp5WGcoUV5NcnZs
U09iMWB5STVXKHVCTTYmPCZqRFIyLTg3KDFURlhwNDEKekhfIVFpeUhedXVzPmdXczxyTF9OZEpf
Wnk0Qn1oJlhpKFp6WDBSJDNaUUpZSFVrcnJFMnQhMGBoWS1udWghdi1YCnpLNShaRiVKWDx8VHVJ
PyNkeiNFQWxIO01BakVRcH5XS28lU3omcGY5KVF0QE1qJUFFeiQ4ITc1KjJ8PFpPVHRGTgp6UXZH
QD9JZipVWXtvQGV4bylxNHk5ZncqPlR8NlZPXz4zen0yTG9WRDdaNHx1cVBYNSFRbFM9U3JqeG1m
Z2hhTE8Kek0lO3cwMiYjbT8xYmt4aXA4MmtteXJwaSR6akNqNTxhZCswPCs7RTJKWitsbjJ+N3tq
TGx0Oy1CYzJINTBYJGZUCnpvfGs7NkdMKTtnKCRpQW9WJFk2Umk+OyszNDNKc0FtZ0FaSS1IbGAm
K28xaTJtYzskKkMrRHB5NjUldDsjc1NDQwp6YH41bEYqYmJMSG1ncUtLPTRoSlVHQ0wjVGg1PiFX
c2srVkJ6QUF1OCV8X09WUjFLbVh3VjhSclhQPzBrVFJXQk8Kej8kPFRvRmBNLU9qT34kZkR3NEx2
QEs8dTNTQElnRExjST9YUzk5XzhUMl9PKWVZcDIkWkU1e0tNYVkpQTdzcTBpCno+fSVuUm8hSWoh
TnxyUm1QPmE8fm5LTGYjJml2Q0JrRHd1WDJZdEV2RllrbC0tTSVSUEY/Y080X0g2bjlXQVZXRwp6
VHkkM2JyckZQTEI4QjxoYjZATF5QRD4/e3Vlc3RZM3QrbGFAVE8tTXVYWjNOJnN6SCN1fWUzblFB
ZXJnSTJnSWoKenI5b31gK1g3Z2B7akFSfVI+fmtwIXRTKUVNaTs+KF4mRVM2UW5SdDZHdXp+Q19z
bWN7IX0xJCRrTVRnTkJ8WkUrCnpUWkd+WEdQc2EobkMzP1ctY2o+ZURmUlNqUnpZOWs8UCFeV1Yr
O3l8STUzKlM8amJVYkRnYik8PnpsNHFzeFMweQp6XnlXTnc8KG95PEVaN2gpJSR1WWlDaUEqfHl5
NzJYcSFkKGdmN1U2cilIaj53PWRsPksrb15GZ2s8SDxWKiNkPm0KekVIREY7XlVod29EYXBBazlg
RlNSNEpvZGt5MTx4KSNAVWEhekRZYjI2LSVEMUBBO2J4SiZ4QXg4QmpqRiEjY2okCnpHM2lXRihS
SXdvP0R5NjU+fmRLZ048P01FTyN1MCZ3RnZiQ3AwPExXYCMoVjREfkQ+cyQxJio2N0NkMUhacVJi
JAp6KTIzWHFGaV9Yd0JFOEBAJVlOdjF4N0NzJlNFckZHdnhefG1LUWpKej9NSmh2RCtmVkl8NGQz
TVFvUzt6SUJqYTIKentNaDZDYHNxbDNuKktPNVN2cylIJm1scGMjYXJHYTkxQHdUVyFeX3oqeUZ0
TmJTeVUlYiY4d19VUHJCbTljMFoxCnpNXip4SllAI2dCR2klJjtlYXwmZkthJkdHUW0kYlJQNWlB
VXpxR2wzOSNycnhHe2RCYip8enMqPilIRWRvM3NXOQp6PEdvUHd7PCUqQUU3RSQ4Y0o0TEMjeFht
b3FfIVZJeVl3LSZhKzxDMnErXyhTQUohOUNrbX5nc1ZsX1FCQSFhZnYKemY4Y1NNM3tZSjB7MlNz
dlV2aHt3JXo1VTMzPXQ1Yz5uQGdYJjhzV3BPSTN5bWxvTTFlN3YmREo3bktBOXlFSytNCno0JTBJ
bzlfRlMtaGdIQnYzZmAyKWIqcGYyRmxQPj5wa3clfmBKYCllb0hyQTU7OGBMQ3tuaT0lND01MCE7
TmsqeAp6V3lVOUF1PGZLbnF2RS02aHhLQypMSjB1QTQtKnRpV3oqTiY5UVh3Wlo1SDxvKUhOJEJ4
YyV5O2J8bCVwVENtNDsKej45WlhaTiFwfXRFVzxrMjlBKVdrZkFtZ1pAajd9YVBoQUtUZFlgVl9y
RyZidWJ6aDgpSjlYV3JqQnhRYC1XelRLCnpZRztyczV+QiFydkxrMUhGRnY3fEV3ZTBCYylIdWZO
elZnRjtGbXVNSiU1X3o8OVJmbzBneU0pdE8jNk1ISmVmdQp6YmgxRDRueEFKYVJMeTtQI0A2cn4/
YXghZmNRZXlBYnRIKWBCPjNSMVpedjNaPnQwdSQ1PFNqRHEoPTRTS1laTHoKeittd0ZvLVpDSGU2
ZCRpZ0tLK3IybW98RjBrOTs9WmwyaTdmTn03N1ArTTNya1M3elBZeEB3bm85Qig1NEkkT3UxCnpx
fWx3UD8mTTImcmhtbmohUDZKPTN1QCV1ciE/K2MlMTtnSzZkelJrV1ZqUGJSM1hGODdOPTZJJTB6
biQkbjZGVAp6aVI+emc5LXBtQShkYTtye2VEPi09Qn4mSlB3K0F3Qz5pOWJRelhsQXZ8YEF5dFop
VCZTcWAtRW5gd1E1c05DUn0Kej1lY2s8KHw9I0FZTlUjZjgpQFIqV0N3fk5SfmZ9VjJfMjgjN2NT
TnRfUn1gdW0jdG5lKzxLNik0a3xlJG5Ja3owCnpQVCkhfnw1bzx0I2g3I2FLant1PVFjR0l5KXgh
TjJkN0d1U3txa3diZjtaIU9tOWdednlCcTRDdzZvKiQhVylEegp6IVgmS1Q1cj84VChvejJKJEIr
aiM0UDErQ1YxKUt6bEZ+JjFNWn09fVNsI0VqQ2VicmFfSH12MEQwKmR1K291PmwKejNPXiYmX3w4
MUIlQX5JOG0tISE2JWdSdUtfeys1eDJlUVRfNEZLZm4pV2sxWCQrMmZEWn07VnolXnVVTyVKT3wz
CnoxV34/eXI2QndQel5pSiFNUklEUVN3PWd4bmRhRnVrY25AU0tsZ2gtaVpXPj11YD9Pa1pnN2Nn
PV8jfGQ+I1h2RAp6OExlSVE0V040YWllMXdVbmY3WCpTREJJPEE4SjsteC1rLUNLSSl3MEFKZU91
eV4tRl89X3R1azI1KmpFdDZjeksKek4pcEE/cUBefD51NlVSWSlgeX0rMFEpVWlEREJsZFBwSDdB
a0pXZnE3Xz18Vkc3QS1zXnU1VXNFeGlGWnNXYV9BCnopWUVeb0FsWWZ3aklidDg4IS1yQlI0TkND
WXpBcjF7WjF7YERpdDlNWlgqTX4wMmMkTigldUphIT5RfF8oWkQ7LQp6RzIwXmY0fU1rSmFybGJ9
OSp9IzdwKitSSkVjdiNZRlByTkxmeFlYdmdJfDV3Ml5Pd2RhdDc7SlBxMChEKzZMfHcKejIpXkom
R0J8cGs3IyVGTmwpbW9aVFVpO2VgMzF8PkBPcXNtVGU9dnspVCR5UitPOTVgc2NldHo8VEU2WHdv
QSFDCnpHWmpuZjVAX1ZQZHpWQnZ6UyFMfTxhJWdzaF5wNE1fTjxQUldSUUk9QCs5SFlmZWs8cUBT
fnlIcyZndHNmOT1xSgp6OD00KnNKeClKekAqQnltQ0JWQHdmdEMwLWhNSXh7cVplbytmYzBhKHFe
c1chVzI/XnxBfkNZKEozOG1lbzYtNmMKejNvLWhqaHIpeEJvIzM3VztwOHdIditufUwmSm8hMnV1
X00tPEZrVlg8aXlaanA/eVk2MVN4NFNYUVA/dS1TSHBmCnomRjFyI0UpbTRJRHhfd1lXQSV9YiN2
U3htZyRYIU0lYXZ9Nmwxc2NFYm9AclFlNno8TiVTezJNN3chd1AteFhANgp6b0NwTH5zQF9YZHQ4
OHhqWF9aQW87ZURzbGckR1V9c2dufHtWOEYmRlFeVGFNbEwxLV97bGAmOGpaVUE9UEFAME0Kej0l
X2t7UitvQXtANz9UZzVNZFBoaz58M3owMj9TT25BUHUqclQqS2doIUhATHhTRUw7NmdKVjtVRkVa
KXM8fml3CnpONU4rTk4oUyZEdm1SI3hRYypyT2s1Rl5xUTE9QDgjNEpuOEYtLVBmTEMlPlBZRiFK
YHNUTEx+RFZGJUZpY19eZAp6emgpdj8kcmBaeDAqVW9adW1aeXNlYiVPeXg9UShNd0t4XzdteHI5
biF4QjtVYHIkeV47OGhFI3BHM3ZNKHYpMy0Kek1BdVAoSmYhWSUzS0ZZKDBRcjhyRE9FcGpVN0ok
VEJoQG1NM3hDc1pZRlZQRXRRMzZJWmVEVzNUdmZXSlJYK29eCnpFblhZe3k0WWQ5OzspaitRMUgx
UD1TaldhUTcjWEApNDl0Nj9oWFpaeTYxYDF7JXA/dHBJenB0YTFlRW9zV2d5Twp6LWk1MF53Tzw3
NCtpazE/NXtINjVTWXYkREBgQVJkP2BJPE9GNTA+ZEgpP04oJFN4ZDZ4SD03ZiheQD9QRVEqJmgK
ek5PPX4+anJjOCswRDBvZkRQd3hiSD59RnZiSyZrWXJ0KUdNeUg/cFVPQHJ4eD5edVVyKHxDWi1z
QEs0aVEoU3AtCno7NyZEXk0tQ3xZcXE1VzwzaU1yalZxclZHb25hbiROaWc0RitEMjA/Q3deKG0x
aVVfP3xLcFJLJExeWnVeaVNFVwp6cktlaXZpbVNwaj9KZ3krZEt7IW15ZlFMNSt2VURtOU15KGRn
MDYwP0dMd3xaelh+I28tQGBnUmleV1BhK1I0WU0KejQkb3BNdDE5QCQkVEYtcCtYa1M9PldpT2h3
bChJMUhMbG5TckN6YVVgX0hzMl5+PChnJF5jKCZTSmBsKlRzMj42CnojJW5+aiZvN09Sd3QtQHl2
QXtAUnF4KENOKzhhOXkoQFY0KlphPG9uYDYlcWxEMTl+U3FFfGMpYXoqO3BvN1lxcAp6PWxzNG08
R2UzVWJLZChvSmdpTShEbHgoTFhBbHcpWiUyfFBNOU91JGF8IU9SRVo/fXojJjRxUl91Qzg3PV5Y
KW8KemkkMVNRbGNZfDVoUitLSDB1Pn03P1BGPXBPIyQhbjl7KTVtN2VmYEg5OHE4RlhLa09gQmpA
P3M+RExGZXJKSCpOCnp0UUNVRm1DaDxfa3g/c000SkdsSjttZFJUanA0IUpnKihNNzRsbGVlVnxC
Zl9HSWVsdTd1VnpzdGJKeD5yTDxWQwp6bEA4cCl2eyFZJCtJKjI/OERYOyNaVSZoWUFGNiNxdXJU
djltbitLWGdmJT8tKnVHaispR0R8KWtlKChHVClXa18KejwhaCUwVDAzLSorSSUtTTVQWjxyaHgo
SiZiRDleUEotPTUjTTZOR05OcVYlOHJPUWdhZE1FbERvQGhPQzk1fEFaCnpubGRuRkUzYll9OyRY
bV8mOWkzWDsxJDMmYEtjY0VEPTZHeDclPTg/Mm52e00jcU1AdUBCP21MNjloNDBRN2hgRAp6cGUm
eiVfd1N4WkpgMXVeanAkczlqPys2bzw9dmNMOGFYaDtHUUNTSDIlJE87dHNLbGZzdjBoU3tOJldx
WSNDUzcKemhxQUAhZWF5a3hiSWd2eGgzOSVSSG9Va3d5O2NuPzkpWHxDM3xhSVotaiYqJUEzKzhT
dkR4YC0xfH5TIWlVKT9gCnohJmlNWDRYQDRMJn56MFZOSitNfXVeV04lM0NUTm50QUtCMllDeDYw
QD01STsyMUB9YGQkKzNfbDdFeVVwUXxHRAp6aFN7KV9FKDc0JUtEYkVXVno2RDs0aWlMRyo4e0gk
MihoK15ueiU4fWFXNms0ZCpxLWRKXlE+WHhjeHdeJGdYcVYKekQpZktsJDlSb3lLR2hBfWl5I2lY
NUFXY0tjXzFaOEo9Qi1ienJAIzlHK1Erfns9JiRIa0gtSGN7T3o7RzM0RDJgCnpvcV4tTGJga01B
bFQ9LTZAU1F3bV9QUEJlcHgtd1klWVowfWdAYyRwTnVgJHw3N2Zma0wzPykqTnB5XjdOX0g1Pwp6
dXJaaVN5Mi1pe3QxVTEoQDI4JG4yOXhYQWZmP2hAaSFmMFJjKyNOO15yaj5qfEJWbzQ/Qz1Qeis7
WXktejYhR2kKemxiNXxGRzEwVm8xLWNeaChrdWxlZFkyJVhNaWBPdiNQPypvYzlHNVY+bkEwLWFk
X3pySUk8Wn1ZSncxRnp6akgyCno1NyQxTGwjaDQtQzdjJXFvJmdoWi1PI3UqQTxleGBgTiUoUllJ
KXZoUFhfKmkkO3lwTXR0KHB2TFJvJDRtemY5Ygp6fDhQVDhWLSNzMEVKN19WMVBlJXEpM0M8bStB
Y2pxd2g5MX14K3Veb3VyT2lyZkgwKFItfT1MQGg8WmA5bnh6OTUKej56REF8U05FSikzP0hPWShM
e2R8a05nelBqaCQ7O15ZUzU4ZzgqRikzcUBodUhhPVVvcSpZOXtrSyF5dXUtfDdJCnohfFN4diZL
elI9bklDTU1pUDBSNmE5cG9Fc1o2NEp7fUdIK2olZVF2I2AydVpkbn1IK1g4JGdFKnxzQllzVzhG
bQp6O2JWQjBQPlBBODVWWH52R0Uqb3omZl9MQmBLV2gtdyV0KX5pY04tTGQpMnd2UnVQPFR3LSo0
YmhYdnkmPFBhPVYKejMpN2lSNGtLWj0+cDh4aHNtRSslWHdlaiVsWEtDZWFqVEtHYGRrSHhiVVo/
OWFtSDM9SChFRzYxTH5BNGBiX1RkCnpuJDdic3hLWFE8OXorRjkpa3koPT9TMH1RcjdSIyFJQmNw
eER2KyUjS1MwQXZvSWp7UnVoOW1tRXhXMWgxMjBZNwp6V3NFRlFYMlMrbmBVUUI1e1ZIWmRvTykr
WiV7P2pXRzBBanlReWJKZnspRjhPKm4xJlNsZm9KOWB8VF9zRG50R14Kek9YSWA4MDVhdnFEdVMq
MFQ4JiNRRTB3VkxIYSgpTGtMWFVSdUtWalFrLVckaEhkZWlJeFBGSURSQU1TUyYhdEZGCnorSU5j
RlllYitycHNqSHRjWjE+OWhPJHBpVWE3UXVoOCtLRzFVVXxvOyNSVVBeTVNZVlg1JH0+b081WW9U
U3BlVwp6bld1cTxfRjxvWFlVM25CTXlFVVc5Q1ZRbXRSfnB7d0lye3E3eWxWdU5jZ2xQbHhLWHwm
QFZ2Xit0MkN+VT5QZ2cKem5uYE9sZkMtUFQ0X3Z0RCRtO1NpQG81Q0p7SUI+KDtiP0VldTR6blB6
Yml2cDc2SHpfa2F4KUd3O1BFUzRNV2prCnphVFlmRyU+TF9IJWJra1olRWs+IU9wbT4mQnIyVGRk
ej1nfWdPPG0+SG9QaVY7Mnd6KT9idl82JnRRal8/WkNRNwp6cU45U0pyZyopJjg2eUZPLW0taVF5
ZjxofXc7RUxAK09oR3gxP0VQdyYxOzJCbzRrajwjZyp+VmVvQ1NjdEAkckYKemxYJEU2SEhLTHRy
UjJ7fGgpQ1lAcT40ezdGQ2dCU2RfTzhrMV9QQH0tTSlqMk1wZGM0O3JTck1yPVhyX0pjbyVKCnpK
OSVVZ0FeY0xxSl5KLXMqZlljUDNBX2g1dV5GI3s/aDwqI28+VykkRl9lNE09cE99ckQjR3VNSCZO
SFolM1MhZwp6QzhtKTU9cSlJZ0AqV0V2O3Y/RkVrMHdeTVU1WldiYCUzZzBGLX5qekU0PTxrd1lO
U2x7ZjYmVW9Fd0ZTXkI2RTIKeiEyWTFwZEhWQygpalIpRGAyTihMKztAYzdzYj92UCRtUGM/P3sw
Q0FpZTB0T2VzfFlfck9NTWd5Wm5RfV9aakpiCnpzJiVKKyFXeypISmd7TTVxN2F6V2IjWmNFMUMw
bn1RRUZ3aDZqbWRocnJPIWJFbyZne1RlVk55QXgzRFpIZ19HKAp6P2J4bUhLZzs+SSg5RUBCe3Nm
Kl52eUZnSU1MZ0JzKlhPNDdPcGdkVkVOSzU+ckordFBwNTslbTUlb18wSmwpSmMKenJsUk9HI3Zt
VEgja0EmYXFJUnhFaTx2R3NGfmVvV1pDdUVGKjIydHU0RWROVlVEPDBsXlBHO0xfdmBtSnBUam5v
CnorIzVaO3hUY21FKGBrbTMtKiRiZGpqIWlwK2lPKTRrP3dKJGRNYGlocTlpekheWCYxRTM1PUZn
VTEwanJPczkzcgp6ZEQjU1JMNHEhMjJXRXpZU3NFWX5GSHM8KEUxc3NGXz1McEhATlo0Kng1OEVH
WElfI3A2Jj9aVmBYbSsySVU/MCYKellBPjRUdFQ0TkZyNXg7QUZiVV85IykwanNBaykxejJEWWNh
O2lYUlprM3xgQFV6dUtnX0pAfEt0XkB2YlVwKTJeCnpfM2FOUEQ+ZG1wPiNicWd3PlZCWVBkNFNt
WiRsdU94e24kX05iYjRnKTBPPnRpSF5nZnFKO2RjcHE5fFhReFdXaAp6JlUtMUh3PDxUT1B8KSRi
IX4hV2tacFZxbEtZQ3k0SiZReTRZQ2h5Xlk5WHc1RlNkSGQ8UDBBMmsrMyUhSn1YWFEKelJDN21E
MT41fX1EeStELVRqSWB9PlN3QCRubDIrd3RXPVUtRURqVl9sbCV5PmNjQnRYemomYz4yMUYqWXQq
Um1kCnpVV2I0IVcrZmJ3Sm0mWDQlPHA0QUstKyQ8elZ9fTVBRUZTUTBRYS1sZSs4O2lTNWZWS2Qo
S1hLe29Pek5lKUROPQp6JUtUUThgMDZ1dFVJej98NVRqYDcqcDJ4IWR5ezE7dnlnRzBsT0xJeHNL
KTY5b2BTWWx4YE0qUExRSGkjQHwkQGkKekhgN0pDJHJBRl8zdEJYKT42JG08enxGWmBoMUMhKzQw
dFJjez02bGJRZV9WbSVgOUU/alNrJnMtJStNMU5nTUJsCnpwMS0lMTliRGlfP3JxVDtJM2khbWBm
YiU1aHxPVGdGTDN0KF9RdG9XSlh8RUJ6d0hsQm1PdSh9ak4pVkxzYntUQAp6P1N0WFpGSHloIz1a
TmNXZFg0SWg/eytBPTxZKiQyYEJaMCUrRVM5RyFZfXcpREt1aVFucVkxNz9MbzE/cG8+NkkKejNV
KWs8KkN9eGF0MXskJGc/amVoKkljNkQ5bndAS1lYeCtBezl8JmRGTCp2cj1ZTTIxb1dLQSsmeXc2
STlEUSl5CnpgSSN+KGdgOWlBRWJzSW1WT0puXmlPci09RGd1ZX4xSXJZPypTSlE8S2p4Z3NVZCQk
UGx4bVFXSSQkS19oMzAyewp6WH5UMWJoTn5oTHQhdmk5JCMramtPYFJAX3UkUTZtckhKRzJKbENs
JktmT2Y5em5KK3xgSnE1ZmleVDI4X1VZYGsKeiRIeiMpSl9BSnkmeGBNdFo9aUArcHV+fGlHXzRi
SCZLISZqRHheaykyN1MpK3tzbnt9SWVGTTMtNUluXjcyVnhgCno8JGYqPFJ7ZS0+byV7MTkhTWZ1
dlUwNElzSjJgbEx6KDVYS1R6ZzY4REdvd1AtN2YmMCMjWl4+LU9MT0pAajFjVwp6WU5uUzBkd2pG
RlUrdjdRS0R2eDVOYVVFcSlPX3dsUThEPno+bU5YO3NQPlcjZW9HVFYrbDRXM2diQmVUXyp2TSMK
ejdwMFBrQXs8MGQ0QGh8fEdWY1BDWmN+IUAoKnx2JnlrOVc0OT14U0VqdVdgcil7ezFwLTVVakc2
JFdrMVMkcE5yCnpNbFI7Y0VpfUFSWitERV9fZGQkNDdLOSVuVigpaSh0MGgkR2NOX15gPDRMIz8k
PDNnQnhfPG9FbSlUaGtwWldHRQp6aFBUNmZATTFscUFAU1RrYiE4JXtTVnZhPXJZU0N+Y3B1UE8w
U2xqWXo7YCZxbzt1VktPe2I3ZlpgRCNfe2RQTEIKelBsQnhlP1pfKlhYRkJwMT4lamg3NH0wYCNY
TEo5OGgpYlJlSjV9cllCSCRtcm5sKjVrUF9WPTtPPnV+Vz9sRjtTCnp1VyFCRyNhcnRBeD5IcFo8
NHpeKnYmMUJ1KmYqeGtXeH1JNkU4fF9QNkxOWmwjfH58NGA+dTU8SVZ8ZnZydDk5aAp6S2FvTGI3
dT1icnR4QmZQe0U/ZWI8RT1JfTk0ansqYlk8MnJXRmt2QjxhQkR3UGJCY3ZQS0A9eUNvfGN1QyZQ
cEcKemdUX1lXVjdLZUwxd1FXakhEdyFteWlsJlY7cGY+aTdEZm9FKGhXQ1VTdVZUY3RmJDA4X243
TTVTRyNNczl0MlUjCnpEe3lhaStgU0N5ZHJNenRRWnNLLVMyYkFPYFBvZiRLeyZhZjNJcjV8cCFT
Tm9EcDMzPiFWKkZONnxzTWd5X0R+IQp6Y3NPOyYlQWNeQXZPWlFWd1JvRDhyO2xUeEMyS3s4dUs0
V3plRl5gT0lFcl5yb3UwMitfIzU7P3ZUcTNZPGNhKFYKel4wWV5PR2REcDlZaTUpe3YtfS0teTZO
Zk1hR2o1bWFMb0gzeko4MnNgVTMtQFFgJFFuVW04djZ6OEB1LUpINSo4Cnp2KWMzb1NrYkdfdUNA
JnJANU0qM0ZBOSlKMmFEaT9geERqIShwYTw2KFZyNHw0a0llRkVxJX5jUXB+TWxUSiNXTQp6ZXo9
UzJJWHs4QSYraV5aMU1Eb0RIV2x6cy1WJCVWYGUmWTxTUjtzUXZRNGR5eEQ7PnU2TVlfdlZNP2dx
IzY1OVcKek1NNjA7OHZeKTE2eHo3SVB4WEV4aH12VjNkYDdYT189cU9QOWsoI3NZdVFrVWFIeU50
fDdxS1pZNShtVGVmX1FFCnooMWI4eHUyaytxS1FRMipxXkh2a3MwN0l8TTNXYEs2Sm9ZWTl0WVdI
IXNgYXxyPD9WSlJ3OEtJKUhTO3NvVmFFdwp6NE1zUz1YS0E7IXAkWTtXZzhidVVBTzUpXktre35p
T0NreXJVUVhFRSt0SHt8X0xwTU5SdWhxLWd4PEg1cGcyPWMKeks7TFpUYWtRcE12Mzt5RDVeMipB
dGQmMHIkNGxaITEhUHtZcHE1UExjRT9RXzthXm5PZTZtZUBlVkd9dXUxSD4wCno8SlNMUXY3V1h8
UkFHNHVqKlZGcWZCQTMha31ePyZXZEhXa1RoTEhQNDdaLTxIdjVWR2FEdEVrREM9RTE3aDlkQwp6
SUZOWCU/WXtjSkNVNj8/U2wlIXxCR1pjO2hyJWZMKTtORjtJVzEpPkdPO19XckdnOUFkUS13THRF
akhvVXooWl8KekNVKUZGUCZnQWRCSmJUQnBjYE5OUnV2YilnSnhHYGdRb0dpQ0cqXkllVE9CJWZs
VHwjXzdvSnYkOzxRTkR5YDMzCnp3V2M7ZCZxazBtRjFUR3dBZTdANE1VUEprQD5ybllSM0hUN3g3
bDtGX2pVRU4/KFJzNC1CSXJLTjl7c1V4JnlJawp6JCNMd09ZSzd2SXkockF1WlliTEk0MGtAYipg
WG19KEkzQEFlcExCYGxGRFFwTyl5fD58TGR6Wl9fJUFnJnEjZHMKemo8UU8mIzFsJH40ek17OENi
U1gkTDUrNEVXQnJCcER5NXJ8aHh6Sm1MPkJKeDx7dzl4a3xSQEY9VnNqRDdAb0NGCnohJTcrQHhV
R1lIQkJmKWZaMSt7dj04MloocWA4bFdAdWljMzJhKil6QHNlZylPTmk0NmxkLSZPcntsR3ZUTkhT
cwp6Jj9EUXk8Z25XfWhOQkU3KEhgX1F1WXtufFA9RSUxUjd5JFJRYFkyMC1NQDl2cnU8eWBALXI1
eSMtYjdGaW0mZzcKeipNSklyK35eJDMjfk8odWpONWcoSTdtJD0xVz0mbUJMIUVhb2V6QXkmUiMk
ezZZd3htcTxrNFNJeGdFN1d0dmFACnpBWmB7bVU9fDxhY145M3JHejxAKXlPKzIjODJoYmdFWkph
O1BkME5QemQqQDRxJjIlKk9KZXxxVnNePXdzUkAtbwp6NmlWe0FvLXh9WjFDY3w2eVp+e3NjPkxj
JURIbTVKeVJYOX0qTGtJX0s9LX09O1ZkT3h0b3dqKWgkaXFNPSZUSjUKem1UfC08ZX1NVmclJHZV
RmE5YTR0TGRTb3JLVyhBJXsjPW07K2lEWDU/dmNCdEtZejBYITJacWMmfFFueTYwbG1OCnpoZlFF
Q147JmVuKEFlYmdeUk9ySmJCOUske2g7KVpBYGItMHQ1XmphRTdZZkNkaGJqdF5JMD1PMSpKfn5v
RjtnXgp6Kz1HVzNCVlJOSXZAOXBgXyVuNVllUitOeEYtV2gjeD99PH1JKnB9OV5XYVh0WVA2SzZr
TDtzZ09GY0soSGA1QTEKek5qSUVpcH1fLWxWXjtSbEUkalNTUWRfKy09YlZoRzZZO3JpRTQoeCFS
bD9AUU9iaDJqVzFyYGl4T1llWXYzak49CnpYbiRKU048UztmT3pVXjZyPCZNRVBIKHtlazs7YVMh
Q01EdmhETn1lZGlUR2JJKTBzelImdStaRzNRJWJWR04hZwp6bEdIXn1wdFN0TSRtPnhyOSNUPTc2
e1ZKTCZ8WiZNT0pLTilyJFVDRD53LX5nI3JNTl4/XmRURyNLSjkwZlJGaHUKeiUkPmV7XkNtcSEh
QzdWSUwzMUM2TWk5RSsjMUR6VCsjTVZnZDdKLSk3QFZNfSZZZXMxMjA9Iyk5PVlDSClIKUcjCnpx
dUtEe2JPdDUweDE0JVp7YE83SVQ+VjFqPmE7fUo8SUo2aldTV1YrSSMhYHRzQFItQlMxYTt1Z0Al
bUZrQDIoKgp6Oz9KQ0RgU316OT5NbyNpKkBYOVk4QUlVSkE2UGcwcFQqS2VeR0JvU0d1dENidWE9
SEBuezw2dm1DQH5wdyh1SlUKeipANUh4dDBTMmF2X0taVlNKJTVLdG0oSmNYYW0mLSFebWkxTDNf
U09ZS0UyeTdTTkVIITxMPTheJUt3bEY7Xm5oCnpaOCU0KXhrSXFYYkk0QD44eShreXhWZU5YWGwr
d20kaCs1KE1LcUFqd2ZhWFM7I1g1K2ZqfT01QCh2Z0FlVTJgZgp6PDFRO1ZlSnp2XmFJd19XdyFz
RUNILT9YZ1dPcz5xO3NMMHtVR1QoOFhpVDFqdWpYY3JOPEIyTW5MZVd2UThGRV4Kel5WWWo0VSok
WDFycChXKmNkN1AyOGN6MENTN0hlOyYhTzU/RnJgKDIoJl9sdlczZUVFT1NPPSZkdyhmcmYtKihs
CnpxMFNSLXFAc05meUJnVkM4MDVja0VvNUc5MW97SEJidjFJQ0A3NnEoQiokZl52JG8/Y1JAZDAq
Vk93NHkpeENGSgp6WXg9KiY9ODBWKWgpQHRZQDZXRFZ3KHEoUF98dXs5IUs3VmN7OSp0KyFCflpj
eCZKWnNhQFB4cXh9VGgpUGxBU3gKenZvQV9uSDBUYk9VKmp1Q1NuJW1PdHAjWE0hR0QoeWtQTSU/
OFpHdShRKm1DWmd7SHFyQnBPdHo4cUJDJiVBfDFwCnolN31fdCRAeithPCN2ZFFRUmBrZlduQVZ9
PSM9JWFkfD5eZD84eDZZKVdWJndkUD1eXz9fRT03X205OENweHhKJgp6ZTRUb1VzczlKbj9gUTNi
e1kmWmYkMzczYWMmNmI4YDk2NE07eV5+cFBMQz9fbFFwKFZ2ZzIqe2tjQ3I4a2Z6JDsKeiFLPVd+
Zk0pSUVUWW0hPiRGNWRmVDNEMDtqXiNoKDtJVikjPWtJVE9SbC1XKzAxQVAtaWVCbGBUSVJ2V0lV
SVYqCnpjJDt4MSM2NkQ3cVRqZlopb2I1Xzh0O2R5JWJfO0Q+X1JpRExlcWZmSEckU1IoJHZnVkRB
emsqQHpiYHZ1aXY7bAp6O3BRZ0xDY19gMWoqT3d0Mzg8dGUwJjJlXlM9R0xiVVplSEleT2sofHVy
bXhEck1JJEZ3OFZzdTN0X1FON3ZqWH4KelArXlktN2lzWWZYI2p9KFNMS2x1ZjQkZ2JSMDFibVFT
Qn51OGhAJn11bi1MZTxJaWYxZz94cEkteHJ8ZWR0b0dQCno+RGwoSGctOHpPaHJzfXJBQHpCWDk1
bEZBRCZKK3BmejFwfHltNHxRWE9KcTZfRSZhYkZ1ej9pX1V8O3ZIcG09PQp6N3VkVXQtJU5JQjkk
KT5LPilEN1ZFK1ZxQiFaeX5WZzc+WE8hQ1dPY0BPQTVqJHN4UEhXLSRLM3ZwdVE+VDFEQD8Keilw
YEdDJXNRMChnRSVqeHZBZSNjPk15TklFOSE7MFNmZTRyKndFR3xuTyFOIXZ8d1hQVHhiZ1ktbHUl
YWYpRGNXCno0WnZtV3R5cEVnODBjY3YtN0N5eHdUbjhHVVlDM0JqO1BjMTdjVV9GIWpVUGkqfStA
c1FZKXMtI09KUX53WTE2Tgp6aG5iajNTRzs3UiFhfjJYPCZiOyhLPnxQY2ZIeHhYKGpeN2VmQnl3
UWo4OWY7bGNzJTFHc1lVaUkraWluazFQZD0Kek5vTjJIYXAzbkdhN3h3Tjw4O1JjWEVSNXsrJEdl
UmJVMWJ2MT1OSHRlZTtFVm5rMFJ2K1QtMGttZVcqSTcqMHNMCnpidjJxfE1fMlJvYlJRUEF2Xio5
VEk/QGQ0JUkpVXdzLT1Mcm1MPVJeYjZIWigxcUUpMUtFY08zanMreUN3Sjteawp6QE5PYDs7JUFZ
JTYtRDlJaEY9WT9aP1kleUdyPEVgRFVlcURkRUE/O3RGZFp0PkFJRUxPRXJkPTExOXBFc2I+UnoK
emVBKzBxJC1tQFI3XmliX3REbTBBWnNhMFQ/a25tNCh7Sjg9RCEmcU9zTHI7VDtYZlB6bVpDMmxI
QExmJUB1PHdTCnpScF5pOXBNc2l9ZFlofjw0UX5jJjRYcEBTWmpDX1hnU1I3bXxDO09fKmYzQmhq
KWteZjNJVDRpSG0mdT1AZSlyPgp6fEo1P2U7bzdEOylnITRKTHspJDUwWE1afURANWM9Z1lsaUto
eU1lNj90TFpkKGA/bz41NFQqUUFtb0xrMHBlaFkKemdZXmVhaG53MFhHVnp7UFpnd084Yy1WRlN7
OWN1dV9kIWdSaHtYQ1oyYzZndnBWcCtHIXtaSGU+Vko7eHw3ITJMCnp6bmE+KkVoVW5tNSZ+Rmdr
eCZFYEwzJUdpPkdldkhxNmt0QVJVeT5TTDVqNHszQHhEYTR1WEpHTVdoLSlkWHBlVQp6WUE2PkZS
MFFBMntvY0tQY2Y3eWdqbHBscCZOPUl9d2Rhfl51NjxVaHBwbz5NYXc7MlQoVVhVTmttVTgkTU40
ez8KemY+SUI3Z3tUcjRFYmVvOFpjNXAjdlBoUSUtcnN4aUtBcipeJHBOMjcwT1NUeHZGd3h0eUB+
YHw/QUd0a0lJZU8/Cno9VUN2RExmen4hNjlnVmpeZipHNEh1fEZuWHNwPzhgWWBndjFaTW5wb2o0
bjJwQU57OUpDZnFOI1ZjRDsjVmlVYAp6VT4qKVJlfiY1fV4yYDZRRDxDUnFEVExXUTs5KWVgMj8j
aD4rcSQ7b3pzWDAlQjsjPE5ydVZOJUstSGhVNipNdVcKekBET1pOSWJmYns/eHtPaXVxWEZLQVdH
KyQ+ZXJtUGF7KzEyPH4oKHZCWEMlKntZPD1ldSs+WXpXd2FsbmpecE5+CnpoTSpJWFAtdnUmPm5Y
aTMqJmJQSXBpc1RHOzJJJihXbCV1WmRxcW9tbmJ5WEZga2tOJnpBKTE/XnMkMU9SVkRDUwp6NX0o
eXA4cD1hfmNVe20jeUtQTypoSiE5K1kte31EOzhnQShPV3dVYChoUyk2UXFDamY0aDYkYCpvcjw/
K2g1dyMKej5YVjcqIT8hYSVYbns/VmxOIWF8V0wxMjZmUkNiZk0yYU56NDFEKWstK3gqbyp2Nzd4
OFFIUU47cDhnLVVFaDFACnpgfFBSLSVpdG9uKXJLSF5CVTxOLU5MTno5ZTkmVTNxYmdqeHR2NTBw
MHklZCZfJWpzWmgtQFVLIT0qcCpWQUFQMwp6M1F3Z2lhRCY8TTghYz5jVW5ZbW91TlVPRExJe35Z
TUMkcUlxVkB6ZSkoamkzbkZtKitgYShzIUIzTVU+ckJ3JmUKelRZWlRfPiNRKFVXSHBUQntSJWJm
UlMhMmh3UXUwIz96ZHZldzFNZUxwaSVGRXM4Z3MlQjBxO1EwdGhXXlAqcnsxCnpNKCV+dFJVJCNN
ZF4pIzMwI2AwQT5ENSo9VXYzelRsU31oKmR6PnB7dVRaam40KVVGXj5PdVBAX3xkalooOSk7bwp6
TiQjQyY3RkdlT29AUnJXJTZXWWw0U2Z9PFZOUjtgQCRfMDxCSj9GLWdMOXdBYDg9ND4jfE53IzBz
fHBuKk1peUUKelZGSmNae2htZGFOdDxiXyY3Yj5aKkI1ZCpiVXBlUzhyJmx+QX54ezVlb0dPXkkr
WWM+ZSFzaGsyQzNQWm43UnUhCnpeJUpWKnk5diNfWko4UDNte2laPDYpRShTQ3BeMmxlV0F8WTI1
RjBQRiQlXzA2UDZkVUYmazV2ODhaZFkkT0g1eAp6NSM9WDM2aml7fGZ6eDxrJldETDMlLXNhbWlC
ZW8kUXlDc2Q1eW1haiNgVDkpWFdAND9WbjUlIzUyPlF6eHh3c3kKek44aCt8eFNUWnxjcT5oR25P
TE9BYXw+TDMqfHEtPFlNJDtvbm1sdk5KQ1pPWGctc2srZnhxR2lGe2lraHUzNVNzCnpiSEZmbCEw
dG5IVWg/blc3aTVIP1RZe3o+bHM1Ulp1cERqY3pIdCl+ZXRhdXA/e1Z1K25pXkdGcztwYDkmTHRS
Rgp6PC1WZSUoLWRGMGJFRDthXypxaGg7OFMtejQ+cm9AVWIpfkB0akg8O0lCcEFZTSYwVSlUS0s2
IVVZQm16QzgwMFQKendRNzFhT1A1JCRmcFFzTkdUR2dVYykmUypVbE5HaHZoZ0hpRndZVHdfSTw0
d28mQ1ZLWDhybVVUZFBlUSthKkVgCnpXYWRSZV9KQUZKcTtCYD8oYmFXRF82Xj82Wn1XNWRaTCYp
MkpVKWtLdDcqY1A8WHZBMnMxKjNtUFQzSXl2V2AqQgp6UUZxX1VEKCMkK3VNbSptXiVldkYtOEFI
N0s+dyF+SkhCbjZQViYjIWV+OGp3JGRLWHw0WHw+KXpwRytlQWdCfSkKeig/WX0zVng1WWV6akJk
a3h9RjFUSHltemI1QGJDZUwtLX48ZmYya0grRmViPDFJaG97Pm9uYERaZFVGVW43NEhuCnpGbVZm
NWhyQyU9dz99Qj07elFyMHBue1hKXldfcXV7dzRuKFR8JEw9d2EkbUYtPGxNTXY/N18peyNeS0J8
OCZVQAp6T2JmYjg5biNfamJEZ3JlVGVsaGc9OChIUUNgKE1seTMyQWE0UzJ1T3VUQzZjbWsjVTBz
STM8MCl2dGFJanYyMVoKekpmfmA+JT83UCs9WFQ4b3JYOEUrSWk9Xk41VEgoZzR6RkBLcWExUEY7
JHFJNk4lVG5scjlMNjQ/Q3k/a0Y/TU18CnplX3RHKnVHPEtUK3tvbWl1PX49cWg8NUMqaE4+WUFt
MEN1NmUoUH5qI2prRHpPeEQ+M0RofGlCcmtwPHhkQjNFTAp6ME9wYGA2IVloUCtUek1icClNcz1e
KyYwXy14US1ITWJ6VE53NllhfEhZKj05eHNNdV8laT0mbGVuY2J9RD5RWk4KejM5UCNQNyM4Mldj
Ti1aOD4pSHBGMjdXUTV5KEk4fnh+e3A9c3VSaFNJPy1aaCtNfl5SLXZpPkFyUnE2I2p3R0xMCnpq
RjgyIVdCcW9CYnNOdTEmV3pEWVIxWChDKiFzVDZrP2JGXnRJUCZNVjl4O0VNPFF6LVZlI0U9NTd6
bWN0YllaXgp6RytBOGM2UlJHYzJKPmJ3VmZZfDYpMkItRD0yYkZFbEgjbFQ7fnAmcjtXTCRxYExV
I3RzfW1SelQpKkV5ZjdWMz8KeiZ1fnxfc3ElNkYxaTU3ITs5I0QjMmd8S3NfaFQ2eHhFUD13e1Yq
V0srckVWRGYzJS1oOSQyRmtyPFMybEplcCYwCnpeQjFvRWlpenVmdEtgKFB7JSl3YTlaPjMxTHFA
TVFYVDVqNTxiPl8pRUdQcFdqSXdJbz00Uz5MIV9YRjRaSkVPfgp6VjN9aW9ubXJxX1UlemZSVzUw
IVNEamtAJE5mYDxMP3QwVzRQMUhPYio9M1lIVT09ai14ej1DSUFJKyhYKztKMjMKelQrPnlZdFA5
clpANktjSyk7SFFnd1ImTlo2MzY5QGJncDhiZnd5Y2d5eSlWWWUhPE5lWlpGdUQkNl54TnZpeSNx
CnpDbXxiSFZFTyZlNTBfbUlqfHEzVD8xcnB8TXpYQCVAbGtyNCVQZj5WYyRUWE9uQlpUfiNTQiQx
dGtpWVhZOG55ZQp6PXpxbjhRYSQzO2FVOGIxJTBFIzNSNUYpXz5sM0tAX1Z3RjxQU3E2VUwzKFkz
ZXtKcG9AUjE8Q1ZvNmxOZkllcDYKekoxI0xWdmhxU08+RX5uUSZWeT9MPHJ+I0NNQDEjUTw8dzM/
K085NlJvb2U+TEU4bmw2PnFpcFVlemA7aVgofk5gCnpPVElpbip1WkktKSpvVU9Pa0t+JjlyZ0Il
PE8hcUg7O2Y/ZUJRKSQ0WUlORX1ya3t5VzRZOW9Rb1JWQ0ZZVFJ3dwp6JSkoaX09X1BMaj9JNmtx
bz01K31tYVYlMlB8QH4xKT85NkdNel8pMENKcXtAVkxkZHx5MWEwVzg0bD1eVHYzLUcKej09MDxs
MVFjaTc9c2RTJWxYdiZ7YEsqJlg3YjZ7KGBMcHFlencmU0tOQ3ZEZk1jaWU3ZjFKIUdYI217WiM4
REErCno5WXB2Z3tDOSNjOVJZKU0lZVh3QUhqa2N1QzJLfHh6SkhpLXdrOzFuN1QxbV48bG1ZI3I1
QHNSO3Q0XmZ7dzFHfgp6Vzl+PlQlRT45PVJ5a2RSIXI4Y0cpUjJVUG4xPDIkRWx8fDApejM8RztH
TypaQTB3JmEyelpfJnBXe08jJT1vRjUKemE5Z3p5NGF9PXJqVVVNbXclfktpeD1CWkBSZ2pzIVF0
bURRemgocE9DMyV1b249fitHRlBga1RhQm13N3AtSFRICnpNUk9uITstZkEzdXhKdyZhR3RAJWBC
PVEmVWk7WXJGRjl1VDBeaiExciNQbHAyNmp6UXlKPnhaZ1IxJEFaLXhmZgp6Nlo/e3IyOEFFJlh7
Njt5YjZ9QkpYS3ozamN0PTNneCZMQl9VQUA7ZXpMRnt3dm9COVEmI3ZwV0RZSi1XJE4/cloKemZK
fE9VZkNEU05rRnZxQWRJKHB7Tys7Q3VWX1lqJiEpT3Ymc1V8QWByWGJfV2hhcE5hVDViZGZEeVZq
Uzg+SWdFCnpCKGhIdnBwSz50OSVoemFjUT5PNGwwP08ySSVeayNjLSh1QVdURVB0MWEtPik8aGp9
bi1wWFRoclM5OXZUcnN0fgp6R0d2RkNTZG5eTnNwTFJZckJkOVUkRE02alhqelA4eVA+KVFHMmAh
UjNzO3BVZXEjSkshO3ZOO0JDYClTIWZiYE0KeipqdEBqXmd+PztqUiEmPnElJWUmMChpfG5AczJS
TkVLXkx9KElJUVQ7cyhaRSRuJUVgYGtGZjxQKVoxZjBHR3RvCno0Q29od1hLIU5tKCsxO3ptaEZm
Jkl7WXhVPnk4PiRnNGlAJipjaWhnKEZlUllCT29OQXlHZnpObW84IyMjcWsyYQp6ajNKYjk1PiN6
KjJCX0x+LXRueVc0QV5WJG5PI3tNazg5dTlVWVczOFdeYXI4cUh6dC1gITE2Q20xa1M7bFR4KWgK
em9xRjc0ckRUZWU+PHU1cj98I0NLUSlWPFBeVGd9JTt7TkVweSZ8WGFjaU5gSG0wVWNGeF5KNWd0
dTJsUWJAYyNHCnpseFIldnFXX0ZYSyhTQ2lreUVBQUFFfGYmamdlVFZuJG9YVklLR25wZEBETX5w
V2Q1dD07QGJidnBsMGQ0ZDk/Ugp6JFN4dEtTZCo+RFgtez55Rll6I2FBRiFvcVF3REV0UU0yOEs1
aT5JXjZRXiVXaks/fkF5RHpMaHQ1QUdvWG9qV0AKelkoM2ttbEVRYCRyUD1lYVore0YwUmxCczg7
X2Q2XmBZNE9FX1dFK1dfQS0xLTUtTjNGNFAqTTFNa2t1aXhXYDMmCnpaQGVJRjdjQilhcDtVNzBt
WjtqMFZ9TlJwVHthMik4TSl1Rl5QenUqe1MkRkk8eEU1YXRsTHdiQFJAT1hkK0RZYQp6PVY1MXRu
b1A/K19scklTNWc5UF9FaXRKOWJkPT5ebTMtQWkkJn5qKSViKj1RX05TK0pZPTdfdUFSPzU3MWBj
ZH0Kemc9RjFHMVUmSCVhI0k8QVEtKzlxP0d9Zi1yc1F0S0hlVHM+bXBTZ3ArPkNVekxRQjlNcFlg
NGt6VlNkIzVCalBKCnpZYnpoO1c5NCtyO0t1IXQqJEFVcEdKTHo1UFdWZn4qdzdAKmBCQDJNS1p7
I05PS3UmYXVGUUFZM2gxOFQ/QnNDWAp6OGtoNVBoYjUqenl6QD9SJCRPJmdkK353cysqYEg/cG49
K0ZFeVNhQkpNbF9xP1k1byNHK3d0XiZZRkYwZjEmPWEKemlDKVU7K0V0YDRyVHFIeGJMTkAkND9Z
SEhSY3s0YHcyRylDbylSaSZKNX5seEp9T3I7TUAxMzd3QzllfTYwU1c/CnpUV0pQUW5QPDNaOSY4
MX5oOyo8M0VxWXs1b3BDPTxPWGw3MDFDb0YxND5hOSVXNi1JbHdNJkN6SCpfajhkdnlgKgp6T205
ZkUzRkl6dVQhNGJ8UVdnMzcpKSF4TVhsbG5ZRHl1R0k+OU12LWAzU1RxYz5eUCY9KndPekdNI1p5
MilgYGMKejckSGk+S2R4b2ZRYHA0b3FILUNpQ19lQCVSTG1DY1hGV0o1OWI5bjhGSzlJR15pR09P
QGJPPGllKVhNWXJrJj5ICno9MmR+cj53S2MtTnlebV9aVWlsSmE2RUEmVk1Ua212TkwoS0pFKXF0
N1F7e3s4dDhUIWZWcmFTOWxJIWRBT24oQQp6O1F1NT02bEE5I0s0bkx6dThTa0I0QkRZSWJ+b3ZW
I297V001IThlYGpsQ25UQDtBJFNtNyR+RT53UkdUT2p6I1cKeiR7Zz9ORylfUiV5OzB+SXNxNTI5
Xj11ZWB1NGwlJWJwKGIhbTF1UGklUTx0JWRqXmRaO25RemxlcEJ4QFpmTEIyCno9dntsQFQmeCF4
eUJWc31tRVR3YGhxS35qdEZnQyRFeSpMYFg9bTAtVXQhY1BJbEdGQ0lXNCZ0N14wSjlFKnhvPAp6
STJFQWdAdGA5dSUhZXpudms5SEYhajFIYHNLZmozb349VkctKTFXaXNNbkQmRHNveXhQVjFuJnc5
OUI9PXFzX2oKel8yezBXcnZXMCpyPSZSY3lWY1Q8JkEyI0hVZlJVKENCZ2U1bjNrPjhjO2owKWZe
UyVCez5idXVoaWtZZ1k7YjJICnpUdkJwPCFzfmg0e0lnNjQhYi1ySnBKQXVaNDtgPXdBK3tgTGdL
eWVHdWh1SWBFJkloJFFxNTx+MSohblRNcVZSQwp6SntwP1MwQHw8VjctdVQoQDlNNVQqM2EhJTMk
WlZXJD9mU2pzaCRla2EqfCluajA7U2NgfCZ5R3kkP3ZTbjtgY1oKeiReI0lVM0xlPCZXaSFVWDAh
QT47Y0owSVFnampCd2g8Y3U0SUo7P3VXVDhUZis7eEd2R19rSCFgajI5JnF4fjFRCnpiYjEjRGlC
cmFmd0xHQFQ4WFVfNFJJTFB+Y2c+UVZ5e3k9YFZeO1Q4TG5HSihUc0Q8K1JsZz0zYChLbTRlbml4
bQp6NldYZk8/ZH0jSHQrdExCcnhvXnpWSl9MPD48P1FnMU59XiRqYEJFdD1aKmtHM0tXeTtfbEZ1
WDVzc2I5Y2kzOTwKel5FUzB9JCQoNHE+bEFseSo3MEQqPC0kPy1GUWVHdWgxZE5HeFVwJElHTl50
KUAxT2ZpQDkkP1dKeDZXdnFQP3FjCnpfQCN1TjhZKWJOO3xSMDVtJXROdUlSSXtzYkJabTlSa3hU
LVNxeCkkaz5lRl84N2J4akBxWWVydVhlJV8kdjdaSAp6JkE8NX48ZERzM2V7PClvWUspPE1sYjYr
RXlWNjRhcjhmQ0IhYCEmJm4yS2xTdk1zcz8kS2s1UTs8fEYyTFg/VjIKemImVHhUdz9hbWIweUFF
RUYpX2t0OUB1dCVVckFaP15SX01Ic3JWJWdqZyVnSlcybU5zVWktKmFleEw5Q3FFWUdOCnp1ekxg
bTNONjg2Pj1PI21KOG88IWI8VUhnTCE0KVBRUDdNKmRmZksqUFFYeTV6TntnTngkKDxBNE5eUExf
dX4/Nwp6dHxKPlN0JEFNQ29zeV4kbXokUXJ5XmcoYnteNWM5Uz9jOHhRNGw/UjI8UDFSSmRYTGN6
KT94PnVxZTljXjAwOy0KenY5ZXg8bHNpSEA+QUByRHV2NDx5RWB5Y0FCRVNsU2pZVFBobDh9ckRJ
Rn5wVyZ1UXpoZ35IUChhazwtMVl5PmZECnpYaGpmSDRxb3crVylfWE9yNFpxSStyVFk7MVhsLT00
fDVIfllpZz9pVjQ+dGB3MTYzVVdkNjBPLXo3KXRpMVpBRAp6MkVsVSFad0Neek82N0R8d1F6PTc8
fE49JDlaO3gqOWVzRV5BQllSTSRLdFE8SGQpUiswdFppKSNaMyheezE2Tj8KejtxJkBkNik7cTxj
YDwyeUJtdiE0KXB1P3ZVJGArbVppVDtUd2hIZihIMnhUc2E9TUt1YGRDfEd0THN6WkRCcVMtCnox
NkV0JD0tfURJNDYpVGltJn1na1BfNUVAdnZIS287JktmXyN5czdAIXpSYTtWUkc2fG1Ybyh+QT5H
fndnd1lGQgp6OE9yP25BV0pwZmZTangkJGZffHVOKD97OF52Nj1qej5mT2UtMkR6eHwyVmR+Um99
Y3MmKFZLRXgqRW0qak1IM2sKemxxRXNvTTtAc3RnfEtNS0htNVUpVmt3WWJ7cVUqVihMVmhtTGpm
Z2pYezMhaT5MTlhLQEdIeHhqTH1DTmVxaXtVCnpfRypjVG1+SG9WWWp0Nk5vbWJOR1RMK1NTLXh1
fTMtaVFXI2tqbHp4VFlpPkQ8cUArPCQkbXdAbnk+TStNI2d1UAp6VWpiVVJAYlUyYXdBRnJ2cVl9
K3BvTjNyfGtjY1JLMzhnZmtXSTU2PGVoeH1xNX1NZ2Z1TW5ebGMyRiNsI2pSa1QKeipnbz4lbjdL
S0sqazg3QDVzZV9BTzBfPWhhbyRUSWpwRDFjdnVmWG9sQFp1bWdwVWNNemRvdzBeYjd8I3Z3bUJH
CnpOJTxPWG5FVE1ONCY1emVkMW1fcyp6dUkmKHZrMH5FNk9DTHhuVmlBbUJvQnhoUXktPVFHT2ZX
UCMobTlNSXd3PQp6dXMqdkQzZGhwTEJkQGo7eEglcF9OdDEwKXlYKkI1b25nYDJUMVVlX0twOF5L
c0Z3Wn1BLVk/cCE5V2Z3b2FDU3EKekZwd3EtZVVWJVQ1c0BZbTlYI0dURXc/dmtiSVhlVVQxNmhP
OXpKX2BOIz9Fbz49ZEdGYGZlV1glbDB8U0JCcCFGCnpmbEkqSmBfJSQhe0FhNitfeDU5KiVaSkpn
cGtWc1plaU19P2w8e1dCO1lOM0l0azB9dz9aRkUhJXo9ZFp0LUh+Tgp6I1owPjB5MT8xdSg7Mlgm
YjFKTlRCbUN3I051LSpCX1ZvSSFqNFozRFM5bmRuQnZpTGFNaXg5bURfITdZdFd4Q18KelFTIV4p
WnN+WTZsMDUmb1Y2Vmsldlk4TCVpfEk/ZHBXeVhFPENNPXtEOztXP3Jraz5Deytab3JLbUlffmxx
PGNrCnpyXiVSQnVQNE1MUXFnQE9ENzZQVSokN3MwVE8qMzdwJHwlQCtLaCZwLWYxX1Q/KSg3d2FM
OV5+UG53KCNHM0NmeAp6KVIqXyE9NTdFJUt6YTtfbSRxXldCZ0VfQ0dDUEI2Yz18VmtYWDJAe3pl
MUdJc20rOE45flJBbitjJVVseyowI0kKempYXzB7QDhlfHY3XzU1Rj1RVyhJe2RwPVN0d0NjP0BN
X0FucVlxQ35lKGpNZzM1TzR9Pzk0LWI7OzlBI3N4ekpfCnp4e0lGcnVtYjUrel9gcDl5bFhDUUZ3
V0xyYkBYQHxRZDIhP1hUXytrX3ZXZEh3MyRPJGl3Wjhzejl+SXpYSDl6Zgp6RDIpd0QzUTZmPiY1
X3g7ZWc1alcxV3tfYkEmZW00X0pAMitwU285KiZzfjRSIVdwfFVvS3xzVHtxPmx9Z1JsOVgKekdy
QHByI0FCNy1gQEdOQTN6PncwWWJQMW8mYUFwRzcrU3NUT1NYN3E0KTJqUXNGKm93UiY9akxgKWoo
Jk9uP0haCnpqMmReJURsKF9FUVhDdUc3Pl84dzxhfTZrekExP009e1czZlU5JWJUZ2dXdFAtbSZX
cVA2cDlYZTtWK3doTHlHYQp6eGNLanJkNTVidUh+alJIeChVc04zQ34rJFJ9OUlWcHAtXzstfjJI
cnxKVG0zI0p5SmZCKXh7T2Qxc2MpK3ZMX28Kei1PcVF3O3g7ZiZGNjNMaVVPcUM4bHFtRlUoY353
KmU/NzcqQUVrcEU2KF5VR2hpcGxHamRVfXJsOXlOTjhjaV4jCnpRez9iSzM2bntFMW9ge31uYSE4
WWl1VHpXLT1uUWJ7UylnX2xnZUlwWVV4dT47PipQXjcoam5wPktrPGE1c3dYfAp6OFhmKU9fQVNV
fENnV1UqaGNTT0RwSGsyOGMkdz9YQGQpXjxPYGl+YVVWJkBnJkE3RDskSFkpK2BkeW9BSzBqUksK
em4/RUU4anNPYWtgQXNzNmRVVVF9SnZ4a3ZNdT9BTVUySHdIRXZgKEk9PUp2UV5fYU5BKkQ5LWdk
eFctNUZhMD02CnpHPEZ7R3dJWnd9LU49S2ctY2RRezsrKVUhXyVMQjwlKE02a2UqKkRgLVI/Qzww
V2QpfWEjUytTY180dHhzZU42bwp6UTF0UGFNaCozP2hiaXBDRHZTR3xsRUAwfjs7UUBDUzd1THBA
USFDP0ohOE9UeGxvUzAqKFFyQ3EtQGF2JEh1aXAKelJ7UHdXemtIfmhUalh7UTFnMUJObUIrNk4h
TEl+MUN5NSlDKVpDdXpJPW4+aCYxY1glPnFWe3ZGYVhRbkBYX0x+CnohZG4oKlV2NExFSm9PSXlw
MiF7U0I7WGdmMjgqQm8/ZFNxKXtIJEU+X1VAKVBUVHFfTWY+Qk1AJXtoLXA+XmJMUAp6aitxYzI9
XilHaVE7cXBRe2M4YkBhSF5PVm9YNXdpO1peMmRYSV88YXhwVH0lYnJOM2J1VUQ0akpkb3otUXM+
eioKekNBIU81QEVUSE9eIVR5KTRiNXAkYSQwI15maVNSe1c7Yi0/ZmQzaj9iXjJCSG9iNXI9d3RU
SXNEUDB6RHhlbHh8CnpITj09OF51VzRpY19Sfjl2ez4tbGp3ekVofEN4Mn47X2leQG4/TGxlPTJg
eVN3Tn0zT0MjLTU/dmEocVU1ckJeNQp6bWpHNU1iJEU3TWFSckpOcEQ1PUpLSkF2fXZXLWhrT0Vk
I1k+PX4kK1dMOzJ9UTd5c3xgT3x6U3QwUXtxZi1JJVgKel5eU20zUnw2MEQkVCpscXZ6eG5sJXNW
TFJrbX01S3xLKFZhPCg3T3F0MW5WTzBKQzRwMmtmPjJHajsrIVk+TTdeCnpkWWhQfmg1Jjw9PWFr
YnpNdDhPSUZrQDJGJD07Wi1GI0M1aXlLNHV7WDB+ajlHVHJ8KXdpfVpwSkk7KlI+XkhfVwp6ZE43
ZmZnNnZ7a3RUaTx5OCVUIVMtQUJhPDtzfEM8Sis4T1oxekc2WVZ0JH11YjE7KThmXnFjR08pY2Nv
enhxVFkKejwya1g7eXFmV3BOLUNWZCh3JT1nSVJ7dHAxeUspdWpwK2R2Y0xHVEN6ZGZPMGt3QkB4
P2NDcXJ7YHcqS0JoV31WCnpFSWQ4dFUhIz1sRnNGYURsWkhXSmZ2Vk5ScThgWTwzPEJuOHs8WShZ
SWZ8MmVjajcxfnYqSDkle3NvakxAQ2lHSwp6NihAMV9nakFkYHNESlUpNlpaTjRnKVNaazkocmd+
UUJiQFVCRGA1fFRzZU8jdzVrdlVmZ3pBVlorUV8mMzVRJCUKemA5ZVdTMSVnMGU5S2lUckFBdD1s
blAzUkVUMjVlYHlmdHxnNmlOVTBNX3thcTdKYGtQZnt9T3AtJSthZjtKLWZ0CnpWLXB9eXgya2pH
LXt0QGRsPUlhOFl6dS1vUUJtM0NOK3x6eHlyM1k4S21XQFpOUD8yR2BaZ1FhPy1OMT5lZnV3Qwp6
UjJlfU9sU09uNHp0MCRmXiFzZyRCM0s2KjxUTWlnVW5jfVpERXV+ZGFgYDd1fEhTISEmeUpKMXt+
Smg3cHpqM3YKelBYZ2NYUDw7fmpQaVc4SSU8Nj5vb3NpeFcmaUBaS299QGcjRGRiN1VjYXJkKTxv
bXhSajEjJXpBREh9cXNQPDVxCllQOEpjKHBqJWVKZV5GQ3RzT1R6SitfVmgmQTM8RTxTTzVTMwoK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWNvbG9y
LWNoZWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZm
ZWN0LWNvbG9yLWNoZWNrLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMTYzYjRkMy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2VmZmVjdC1jb2xvci1jaGVjay1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCww
IEBACi0gICAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Vm
ZmVjdC1jb2xvci1jaGVjay5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9l
ZmZlY3QtY29sb3ItY2hlY2suaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDgw
ZDM3Yi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVj
dC1jb2xvci1jaGVjay5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzEgKzAsMCBAQAotPCFkb2N0
eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3RpbmcgdGhh
dCB0aGUgY3VzdG9tIGZpbHRlciBpcyBhcHBsaWVkIGNvcnJlY3RseS48L3RpdGxlPgotICAgICAg
ICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1ND
dXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAg
ICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0
aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9u
ZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAg
PGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8aW1nIHN0eWxlPSItd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVy
bCgnLi4vcmVzb3VyY2VzL2NvbG9yLWZpbGwuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBjb2xv
ciAxIDAgMCAxKSIgc3JjPSIuLi8uLi8uLi9jb21wb3NpdGluZy9yZXNvdXJjZXMvdGhpc3dheXVw
LnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcu
Li9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29s
b3ItZmlsbC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIGNvbG9yIDAgMSAwIDEpIiBzcmM9Ii4u
Ly4uLy4uL2NvbXBvc2l0aW5nL3Jlc291cmNlcy90aGlzd2F5dXAucG5nIj4KLSAgICAgICAgPGlt
ZyBzdHlsZT0iLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRl
eC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1maWxsLmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSwgY29sb3IgMCAwIDEgMSkiIHNyYz0iLi4vLi4vLi4vY29tcG9zaXRpbmcv
cmVzb3VyY2VzL3RoaXN3YXl1cC5wbmciPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBUZXN0
aW5nIHRoYXQgdGhlIGNvbG9yIGNoYW5uZWxzIGFyZSBzcGVjaWZpZWQgY29ycmVjdGx5LiBZb3Ug
c2hvdWxkIHNlZSAzIGJveGVzIGZpbGxlZCB3aXRoIHJlZCwgZ3JlZW4gYW5kIGJsdWUuIFRoZSBh
cnJvdyBzaG91bGQKLSAgICAgICAgICAgIHBvaW50IHVwd2FyZCBhbmQgdGhlIHRleHQgc2hvdWxk
IGJlIHdyaXR0ZW4gZnJvbSBsZWZ0IHRvIHJpZ2h0IChubyBtaXJyb3IpLiBBbHNvIHRoZSBncmFk
aWVudCBzdGFydHMgZnJvbSB1cCAtIG5vIGNvbG9yIHRvIGRvd24gLSBmdWxsIGNvbG9yLgotICAg
ICAgICAgICAgTm90ZTogV2ViR0wgbmVlZHMgdG8gYmUgZW5hYmxlZCBmb3IgdGhpcyB0ZXN0IHRv
IHN1Y2NlZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1jb21iaW5lZC1t
aXNzaW5nLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZm
ZWN0LWN1c3RvbS1jb21iaW5lZC1taXNzaW5nLWV4cGVjdGVkLnBuZwpkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZDM0ZGM0Nzc3MmUxZDY4OWRlNGM0YjE4ZTkwY2Y4ZDMzMzFiNTgyZi4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5IHBhdGNo
CmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAxMDkzMAp6Y21lSE5TeVU1TzdAa1NrNn4k
TiFxRypKR3MwRzVWQVEmKzBuXzNtSUsqRGJJZlo3NilCYHxQNjBZTV9fcH59QUwKemFZSE92RVJj
ezJ3ZVZtO1FXczxzZGVDcXshbEI0Jk5IMTNBPUo7SVNDTkloU1hZUmU8X3g7UEFgRU40IWRBcTJx
CnpYeyNYIXFWREYoSmIpbCVEdVIlWHMzLXg7d2I7fkM7QT5tNyh+OzxxVl9fakRldkZBa0xWYGpw
THhaZD5nVHZeJQp6RWE/YChycS1jNVAwaG9zPSUoUlQpfjRvV3tFUGVpNU0oPmtqcD1hazRFbkIq
cEgmcDVsfEZjfkZqSXErYHJ4UX4Kem1SRjU9JlFSZXNtK1BmZ3NhMDNCKW44VEtIYE9aSVQ+bCVu
WlRJaTdaeUgoRWIjZExiI1Y1UktlK24reTclMSllCnpwdlMtdmwlJH1kTDFrYjw5aElpaiU2blJK
IUViMHhDTWpqRzZoN1V1V0ZHZXZCRU9tKy07O3NnZ1BgUEFpUUU7NQp6VzVDOUcqRlZfSWchNXFO
NUM+aSVEWWszcmpQZE1PdDk5WDh1ZzkhWEZMbjR0Qn1fSWkkXzhzcW9KKjF8O356eGsKend7UyFx
MSVrJUB4c0lZWXckcUlULX0mMU05ekdtU21sLVVOSEJfQmw7ZDt9XlBqIWpMTTxBXz1EfHUmOWhT
bn0kCnpZWiQ2KFFMQkNsKW42ViQpekc5Zmg3X31XYThSVypIZ0A/ey1XOGsoIShXSkdZOHUpdj53
fjFeVmQjUDU5KjNiQQp6ciVeSTN1eXBvNntnd3YwbGF4TE81K3lhNVNgYkpeZUlpcz4pa2U2O3dv
a1E4LVJfaSheYWFnNzh4fCNzSXlNTXcKemQjNFlITVMqPFc4P0d2VlBgU1l0TmEpVE1IZ0BNfSNn
MzFqYFVzSnh1Iyg2MGEtYHJDa0wocDllaWJnaHhDazFxCnpEcTdVY1lpVHJgYmo/YHx7bjxJVThY
clVEWTB3IUlPSTBecTJEVW0lNCRhdlY7REI0R1V9QFRNTioqcVpQQEJ7IQp6R25nOF5YTURDeGJa
O19ueE5xWTI8TjZXNHNLYSpKbVgmVipMMilNZyk2RiQkU1RwdmB7dDcqYStYQ1FyX0JrTWoKeitZ
I1V7Y1hvbGVqeykyeyNnJWZuKCpTTn0mSU8zTzZYNGRpYkNiaVozVUZzPz5wPE00MEpsWWFvKlpy
cE52Vnh1CnpYX0phR1ZlRG5rNDVTR25Tcj0kTl4mLTlJZn5TUyokPlpIdCh4I0IrMW97dGdIRmd7
TXdtc0tOSUs3O1RRPThULQp6RkZ6SjJXSERrezdjdURnPVdGUFU9T2JQRSY9UENIIz5ORD9zR0pZ
PWZEYzdnOSM5Sn41ekBfZEJGVHkyMD5yckMKemtxXmFxJHBfcFF2Sn5YaHhCeDhQYE5tdElVbFJj
Tm5SVGtKeFlPNz1EY3Z1a2wqanAzeG9oVUZ4WWkkckNMP0VeCnojNjdlQlQraGlLJjxUSXtNRFFA
TlhPcmgxJHhleEpfeWB9KiE7R2NTdDI4dX5nR35qbkpJZ21mKmk3STsqWnNrQQp6czJ1PzZHQUM8
QElzPkB5VnRLMF49dWBtT0BxRTs+aDhrMjJBZXBYSHJrbzJFMGdMcG5gKjJ6ZXN4QkwyVz5HSFQK
ejRpbD04TD1zV0leek16VikpbTx8ZGRCKj9WfFJVTWRSbmAlcGdWUVJQb09OfilhR3MmU2FAQHtn
bVpkeSNjQ1kwCno0UVl8b0hSNjUlPTU4RndUfi0reHplNlAmdT00aUpnUkkoQ1hpP3xYYlJlOGs7
SzFtSHl2c05vMkptMEl1TlotfAp6PlkoSUcoVW5SVjI5dXk3MnBwQjZHR2RAaVE4ZikjQkEoXztz
ZFg5NC0jP3BZVmlHYW5wQS17Z0lwNEdwJio1XnAKemU8aS1+dD9nSkM5VWtrbTdgV2VXN2lUcyFm
ZnJ0Pz9yVzFUQihoU1FubyZhdjxqRGwzQEdFQC1TUEl0eHZET2BwCnpDUFBhR2hFbGU8ZHFPRjhz
RWpRWmJULWRMSngqTndxZ15+JDgjejZtSUlHXjw1emV8SkQzYU1fKWtgUGVqYGh1Kgp6P2B8dyV7
bl5pI3dMY0xMaVpvQH17b0l8Mkd0cC14OyZidSU0cE5oVkNaa159UlkyR2s4MyNEUjxlMzQ1VnRm
YU0KemhZS0xJMFQhRXBoQlJteTJVfD5eRk8zUW5oKjV9QGQ1THAzT0QoI1I3UjRgfkhudSFUc05r
JGxGNjgkMnZ+KDs0Cno2PiQ2aXpSaHUmRD10fklpcyFzUEg2MGYqdXhMTnVSMzg7eUc5I3JBeGEz
UWs3VCtkSyUqJj5tQGM9UmN5dVd8MQp6WnY+YUEhX2Q1SHBFRlFzQk1AYFheNlQmKzNTQSlQOHRl
eVEzZkJRfDljRmRHJn5ebyhKdTt1UjZfNCNzM1l+RzMKej4qaiVMS3M5MXhtN3tCbWFsI0FfQUBV
Z3pWZil+LTx8KU5UYUdSeV8pPVgmZkpQKVA5ck5tJDw+OGIjSEI/YzhfCnpRUnBwLVRvJG99JE91
UEZme2ZPcVdaSmheTitGfHB6XkhrekNke0hYa1ZSSy1EWm5pMTFwRTJDUDZMaH5WPnBBewp6Smc5
RjdnJWU8Q20hd2s+JlQwbGB5fXNRNj5ORXY+bnNtKz4pK2lwUlFEJW8hLVNLSGxLfjxsIWpZaT9E
Kn14cSkKei1TPEs4VDtQc0B2SzZxZmdhWSptTmVEQFpDP09KdXMzaztzQzNZTlE2REZRWmgofFR6
PjZMaChDKkU8MCpGTkcrCnptfW18VntTdTtJTGJRO0d0e1R5MyNQPFRDX2UhKippNEh3K1hoRUZn
NUp5fFlYJi1SX059TEgzJEs9RjYybVk1bwphUV4taVdKOSNIPHMjK2YqO04jfXgmOCY4MHJ+VjZz
ckFwQk4KCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVj
dC1jdXN0b20tY29tYmluZWQtbWlzc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tY29tYmluZWQtbWlzc2luZy1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWNvbWJpbmVkLW1p
c3NpbmctZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tY29tYmlu
ZWQtbWlzc2luZy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3Qt
Y3VzdG9tLWNvbWJpbmVkLW1pc3NpbmcuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggOWI3ZjFjYi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2VmZmVjdC1jdXN0b20tY29tYmluZWQtbWlzc2luZy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEs
NDMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAg
PHRpdGxlPlRlc3RpbmcgdGhhdCB0aGUgY3VzdG9tIGZpbHRlciBpcyBhcHBsaWVkIGNvcnJlY3Rs
eSB3aGVuIGEgZmlsdGVyIGluIHRoZSBzdGFjayBpcyBub3QgbG9hZGVkIHlldC48L3RpdGxlPgot
ICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBh
ZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90
aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0
eWxlPgotICAgICAgICAuaGVscGVyX21hcmtlciB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiBn
cmVlbjsKLSAgICAgICAgICAgIHdpZHRoOjE2MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiA5MHB4
OwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJBIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpIG1peCh1cmwo
Jy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKQotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5n
LXZlcnRleC1vZmZzZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWlzc2luZy1jb2xvci1v
ZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzJykgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
ICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0i
cnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGVscGVyX21hcmtlciI+Ci0gICAgICAg
ICAgICA8aW1nIGNsYXNzPSdmaWx0ZXJBJyBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5n
Ij4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDwhLS0KLSAgICAgICAgICAgIFRlc3RpbmcgdGhh
dCBtdWx0aXBsZSBmaWx0ZXJzIGNhbiBiZSBhcHBsaWVkIGV2ZW4gaWYgc29tZSBmaWx0ZXJzIGNh
bm5vdCBiZSBsb2FkZWQuCi0gICAgICAgICAgICBZb3Ugc2hvdWxkIHNlZSBhIHJlY3RhbmdsZSB3
aXRoIGEgd2FzaGVkIG91dCBibG9jayBvZiBjb2xvcmVkIGJhcnMgb24gdG9wIG9mIGdyZWVuIGJh
Y2tncm91bmQuCi0gICAgICAgICAgICBUaGVyZSBzaG91bGQgYmUgYSBncmVlbiBjb2x1bW4gbGVm
dCBvZiB0aGUgYmxvY2sgc3Bhbm5pbmcgMjAlIG9mIHRoZSByZWN0YW5nbGUncyB3aWR0aC4KLSAg
ICAgICAgLS0+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRpc2FibGVkLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQxM2NlNjYuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRp
c2FibGVkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLVRlc3Qg
dGhhdCB0aGUgY3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5
IGlzIG5vdCBwYXJzZWQgd2hlbiBDU1MgQ3VzdG9tIEZpbHRlciBpcyBkaXNhYmxlZC4KLQotT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLUN1c3RvbSB3aXRoIHZlcnRleCBzaGFkZXIgOiBj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLU11bHRpcGxlIHdpdGggZnJhZ21lbnQgc2hhZGVy
IDogZ3JheXNjYWxlKCkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIHNlcGlhKCkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRp
c2FibGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0
b20tZGlzYWJsZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjRkYTMzOC4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0
b20tZGlzYWJsZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEyICswLDAgQEAKLTwhRE9DVFlQ
RSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08
c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
LTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJjb25z
b2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1k
aXNhYmxlZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tZXhwZWN0ZWQucG5n
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVk
LnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2U3OGM0ZGI3M2MzMDU0ZGQzZjcy
ZGU1ZDNiOTYwZWJhZGFmNWZkYi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAxMzU0
OQp6Y21lSE9YSD04ZikrUH1LdW1GUCFJIUk5KiE5Zjg8MXFzYlk1ZTBPUkM/eF5HMkdSXmVDPHpI
UjFPPT52Zyg4RTkKek4ocGx7I3NDUzdmflgpdDZwIz9lMDc4aDZnZFJjKF9iXkRfdGhxbkdgUE8m
V2B0cG45QFNnTVReWHpCdXtwYCZtCnooYXB0UyQtKkJOJUVgJHNhZE87IVApPUB2b30zKX51K24j
NjwhPEVKRnp7bzIjR2I8dXt3SSg1MlZzNSptTlBmcwp6OGdNTE4rZ0FWVytxYXUtLW0tYXtwUDhC
MmFTTXhwZlBoViNIeXR4cSR+NlAwWjZQQEEtcipodjxGej9vJC1xV2AKekh5fV8kQU1hPEt1MEVp
N2BpSTlHbyoxaCtkWThvUyo9NDc2JGd5cTk8JWszQ1JDKjZ9OXowZC16SXR+fT9qRTBiCnpfWl8q
JHBLbT1geE9haU48OHNaJV4qOHRLSWtkYSskJmN9JFE8azI8LVQ1NktfO0lnfUUzVTIjNlZYI15C
QGpoIwp6SFJCTkkwejgyc0trMnVEa1RkdW1lR1Y8SnFeNCZfbCFMKitocmA1KkFkTjZwaWV2JE5z
OS0yOFEpNFNoSitAKD0KejlxaDtvdmV4JnxXQX07VUk/eSplVXFBVDVIIW1OeFU3OT1ndWlxJEMz
Wj1mbTdjRihPKTNFMitPUCN4bGk4KlVfCnpWbFUtfHlYRHIhZU5+dm96QyNTMyV3Yz9mYkFEIyYh
U3Y4fSZiQX5XJkNgbDk5aXd+MSVaVUNvc3tmYXFoQ2lNKgp6SjZCKVNFTlpPRiRRWSgjc2BAZ0Zf
fkc7QCtIaDRMRWg/d3lPbS1BNEV5PmxXPFp2bDM/RHJVMkZiQ0J4e2B9d34KeitmeyZ8MWFwN217
KzVDdHtQYm4hOypEfjQ3Slp3ZEBNMVplPyQ9KGZTUyEqUm8mMzMkR3RJZllNOyFmVTtzVS02CnpY
TjZDUXVLYmpJZk5wKTtiOylIYXs8WTlodWpYelVPPDRrRHwyWlEzVSNoKCFQVHozVnYtM1RvdTxZ
dXd7cTYxMAp6ZWFDaiMhQ0RqfUN+TjFAKkRFZG51PkVVWVh5fmpqPUhRJnZ5SEQoMlB+eFI3TEhE
bytPZDtVTjRUfHwrOS1DY2AKeiRFJiY3amx0U0JMSSFOZXVnSjdqcDF6QDVfI3VRKUc0S0dKb1Mo
WVdCdlQ4aWQmdHVZTms8SntkKVU9VSY1akRPCno7eTdmZHAxQGElOXVPKEUzLUp4cW1GMDAwPSVD
T3RAQVImJXcpc0FTaUE3fTB1MGQ4WmhUTkNUJnxvWWxuVUBfZAp6WVpyQT1KNFp2eCt7QFopJGU1
Zj9zdXBRcUlqVU5hQyl8JllXfX5Nb1BPTTk8QDFEZERVSHBqVmohKkttOStKdWcKekJwWHJSNFRx
RCVvY09tIUYmOFJvO2NAV0lXKk8kdCZHZEBCenx8OzY+eX1DYHQ3ck9AX319blV5ZnMwNnFTM1dy
CnpgSDchdy1vLXckeksrfVNOI314JUYpR3dCRTEkbmZmV2dGN2lyaT9aKEY0N1duMHItJXczWlp+
QHkyaiZhQFR2Tgp6ZW8xdzZRbVFmQUZ0Z01IN2E9OyVWP3trM3pjZF9GPCZjS1hGWm9vcnF9bGw5
KDI1WHVNeClMaDh5JDIoOCNaQnYKej8tZ2V8P1EhalJSIVQ2Z3xNRjQrdDdqNzUzQld1bG4ma0U2
M0NoP2MpTVRyMC0lM0RLMjlrdUZvLVUwRWQ2JEcqCnpXMTIoRUJHeEsjZitZbCFTTCNPcnAzJn1M
Q0cxcXcxQ1BOcz4hKHdzQkRncGZVQHR1MHpDJUo7ViNPNmUkMTdwJgp6X0VKbEhLO3lRMShUV29D
IVFmX3F7JD8rdXdXTzl4SFFucVlMd21IUHRmKTEtfERUNVdabFF+VWdyV0s2VUExQDIKemEkaC1J
KVdfSWhwR0RBZWNKV3d5TVhiR0N5M3dtWkY2JTJqMUwxTDNAWSQ0JnNaUXZedlZgTkZAM3xARmAk
WWo7CnplJUsjOUlfNH0pPTlmO3R5X3czX1lEMDg0d3drbmcoYn16NVMjY2s0cnNgT15CWkwqJWlo
MTdNVzZsT0RTdWJYdgp6Yko0TmNLS29wVClqPSFsXyRNQVhzYHR9MUNOKTlEYzEhbjk2bSg0UTgq
WGRYSzJoKDtiQnlZWWU9dW8lK0tCcEcKemhLenlQIWo0Ulkhc01YNFgmQnJtWm00NXMlKlUqfShn
cXJje31ERF5QSE0+b0IrWWEoMClxVC0zX3pTKXR7P3xGCno9NVJYTFhBeSo1MUVxdSE7RFpMakF+
YDR8aVk+c3RARnhDbGlDY1dSeiQ+e2s4Z2kwdGNEfns4MVB5Rkg3dDRIUAp6dCVRRytYPUwqUGNZ
QmhgSlhmRktNO0AxKHhZYkdaMk5gektnRzh6M0coOUE9X1A2OX4yQn0pO0tIKiVQeXF3ZGQKelEo
PzIxdGVEUVdMUWNed0hnUGF7TnpJN3A5Q0A+dE4wR0dmS35gOHZCKWNPVSFEeEpGU29sUzQ0aklv
YFdTRzRoCnpUX0MjI2YkXlIxK3BhO212SF82QVMmTFJCbTh0K2VrQ2FnblAjIXEhMmArZGxoaGlh
TlJEOUpVTCVxeDlTTytMRQp6SXZXQWRnR1YkQkJ6Rz4zMF4wX0FfPlIhflB0RD96K308aFdFMFp3
YSU9MipwJmtpdWZaYD1ecmheU21aeDc/cjIKemIjTDF8KGVfQFM9fmRfeFZ1JlYxdT5tfiFSaGE2
X29Sc0RIe0Nxfj9eNHktLWUpQDsxMV9nbjNBY3dEJlkyK2hfCnprS0oxaDtOcSlsRmZ1a3xBYGFB
bzBgcWVmLWdVVmt3al8je2tpPkQoV3ZYQn1IJERXTitQLUpidGtjVTQjbjApWgp6OCpTRH0zPG92
I0d5diohTmMqPkVXKGlUVDdfUWh1QF9sYndOJiNQZShGKm9DSmk/d25laXpIVU04RyNXSl4yLSUK
ejZIQ0UmXlJ3RkwkVVk1a3JCRDJzLU85O0MlX0licWJQOE12eXohaStpWk9ySXBJZUc8b3Bfbn0l
SFZtTjx6VXkxCnoxWG1ZYWFOaTw+KU1YNTk4fWV1ezdCP2s2TDZ9VG9vRGhBUGpZRXB8JTlMNz5I
X3lhTzd1P2syZDN4K29VU2RQUgp6PFMpSDdDK0pwI08tOFRZUlc/N1Q3ak9Pfkp+O0xqJlkqPyFt
VXVhZ1k+S0JZOGRyWTlhYEwkPEB3WiZPNlMmI2gKem0xeExLY0R7VkRedl52TkRgcEg3NipndUQo
Q0JvT0MlKy1yUyNnNVpVNmJaS2UyZH1wIzc5c3lqTkJgdm9qRkc1Cno2cnBJSUM0JCVYSm1zLWcy
TDZrRlpjVW5NYSY9Y2ppelhfe3VaVUJaWTMpXmw4ZjgmMm9WYEdDQVA4YXtILV5LWQp6QUdRP3Nt
cDJ6LUo2PkxCNyk4YTJ4Kk1venNGPXFRezk4IVc5ajxyeWw/SmwqVClAYCtecnlqcEQxbk8xODZY
JVUKeiZvfjNfdH09fHpQcV5JbURPMShsYD57MTZfe0N1PkVQYnIoUypMbnpZPTNwUnNjNkU7aEAy
SHh3NWwrfSVsaTIrCnpeQEhnVDl2K0swQXZWdj5GbVp5Y3ZMK1VxOHQyTnB1MnFIVT9wcj1uOEJV
RjJHY3tza3pnRGVoKDU+OEFMYnBNSgp6dThQUyhPZW84MThgOGpaUyRUJWpZe0lFMWZOTkUpREx4
UlpIZXQjX3IjfjJ6OH1xdzhsPD1yQ0xuRUBeUl9EJXsKentJNUQ+I2NiN0dULU4pY08oR2JfPm1u
X2h8RHxydnVeTyRoeyNTdjFGSGpwUXk+el43QEk5UmIjcVBmUzwqaHFXCnpHKmUjZTFKQ3xOM1Mq
b2FfbDBCY2U/eiNGa2slQTZDLVdvUVU8OEdyN0lsZ1Y2djZtcUslOyFtRXxkIVZkbSExSgp6UEhh
dCt1JSpIVldRV08xZitpP2xmODd0ViF9Q2c+R1pmVWlBZ0orYCpkUW51KVR9RyElcSRrPChjU2Ql
e1JVKj8KemtAd2s9ZH5NeEYpMGhQSTZLZihxPmUoMnZ5V2BHTl5CTHVgbSEjQEFQbTc0Kkh8Qk5D
TVp6TjAmfGkobU0+KFhsCnpJK35FbXF+PFoyKCVJOXZWMHM+XiRjT1otKG5yTzU8WTZncCY9QF4y
QD91USZMbClKMih6VndOLTQ7I3FHN3h7Ywp6O01xPT8kaWw5U1gteTA5NWpmakVuSENQVTVMKDgx
bChXUillc25MYkRHfFhaR3dlYnVuIWM0P0VmejYoQ1pNUjAKeiRfYy1gJWNyMHgyRmlJO199Q3pO
SXF1OyR3KGhqQnVES01DKSV7aT5tZDcpKlR6KjJIeGhSMUxkX1g5RDUoYD9qCnpqWFJJYy12MEs2
dXoqTD9AX0F3d2cqbHAlVihnKzVTWXU/PWg0SGRNZUFjenVFRlA/Y0EoTEUtNXRhb21XdmBudwp6
UTw2YjZKQ0ZfUDNSUzl+cXZCZXQlYilVd1hfRihGMlkzZHQhb155LXROQU1mbi1UN2BfVEdiQng/
KUhEeGcxU3sKemw8PEA4bGxufl5vbzNtcCQkX2MrWT1QJE1jLSVhXlZJPVg3NyhaaDtkQihFbWpG
SU1RSyhhRm5TN3xxal57fUNYCnpzd1cjMih7MF9SUnRsJTlGcDheYlh4I2ZSQEY4RGJzSHV2PFdz
YmAta1MkLVBLYmR9QypWJWE3KT8/I2hob3F7Ygp6P1d6X2VSQV4rcGgmRWdxPUdSI2pORk0xcVM3
VShjc01Hd1p4cFkpLTxXe0dVX3NrTjwkLXZ3RGlzM3VUZDl7UlMKekJxV35nZTE4WGQ8dFZLIVNw
cnphS35PZkZ3YWRHdU5hcTNnUjZyP31EI0wtR1kmYEN3U1YzSF4weU1sbDhmZ3dPCnolejVLcTRD
XyswSnA+bmJhNntBVCtDRTFHYWFuSWtqWVl5WSQ5WFpYRCYjKEV5Nzw9eTlBbE4oaDBCXnFXUjd+
Kwp6JlliNFBrbEp0PEUoQHRicGhXTiFOMH5XUTFYQ08tZzckUCpGdWtGUWYyTFBKPXZFYUJINmpW
eiY9QX4yQmY2e3gKemBNUXRYSHtGbVI/bCVfMWppJXwpclc4cnlQOU9UdkFBQHpuWjQrckxYODAk
e3YxIT15MzFfc1d4Q0tjN15iflEmCnpoMlJ1S2N8OyVHMDZwXzExRCF0NWE/Zk9qZTsmITc4Vlk1
TnZvZ0BQMlU8UUYqampZbExYPU0tODhjT1h0KSR4UAp6LVdeQ1hgNmp1YUUoOTY4OzdxJU5COzFH
PE1HOWs2MjcwQkxaP3U0I1FDbC1HbWBXKHkhWCpkdzx6bnZMQlYoRkwKem5oYyooPy1EX0JJTTE3
VkcjMXkzajF5VGU2QD5ZRlZeK1JLdTAjM3ZFbE0rS3RlYStaLShfUUxBN2B7JHo2IUM0CnpZaShg
IXUjRUZCSkElTntxV0piYSl7N3xpUzg5VmcqeCZKeWJUMkFsTFp8dCF6MEtRIz5jRCZZWGxIKHA0
Q3p+Sgp6dihENTZJMUZ7WVhjd2BmTEFqdT9hQVJCREJ5RTZXQlcjQDM+OE5PKjtlYD89PDEtNVRk
PDhnOFhyI30zbD5DQGAKejFeTiU+Jm5RamxEd0dlaCYhSmI8UF53WXRlKy11TCU4VmZhTCMmdT53
KD44Z0xJaEkjezQtY2Bqckt7RyZgZDdBCno1SFFiVWlMTy1OUWsofiRaTGVjdjZzMkVFdGU2Mk1A
PX5ZKiM0TEdAYndKMm1WSjFVVDVwOzduUlkoLS02YFJLSQp6TGJQKmg/YFdzOEVXO2owMWc+Ymgl
eX19fjZrQm5DZkowaGliMW0zcWpOb08wU2FNV1I0REJuR09lU3xgWHpSfV8KejNgZXpyckJ+MTJ0
YzhAKHtYYDxYVlhiMmpeY0Z8KFJgcjlNXmBSKE8yVmR4VEwkNDVPMj1xWTE+ZzQkTDNJeTMqCnpC
fTJYYVhQPG9zWklYdjZ0WD0pMTg2QFVUdURNVSNxVEtLVXZgSmxsKzI0KCtOTzlkY15UaT9QVVA/
NihyNEhHZQp6akpiWioydSVXPTY0MEEmUl8yKypJcllfKHFuQyFpOylCPjhFfExIfnVRYWFnPTst
enUkXmBZbVBWVXY7dj5gOyMKejEzT3BtU2IwT0BHQ01fPiFoPkImayZ2b1oxOXFPNUtlaTlAajVl
QFNXaiErPCtIe0VzUzY5RWUyX2khVDBMfThqCnpOa3dTV1k1Pn5ialBiMkQkVk58QmRXSkpQYklL
QiFgZm5YfUBlY0hNYiZnJmZxSkdzR3dsVXs4cV5wOGlocHJSSwp6bnNRXys/bEZvS3dZXiRtezJE
TkRTaTVIM0UocEB6KSVTQGJaJDQ7MWtnZnJ5VWI/Kik4YUxjZTBSR2k/QFBobiUKejM3RVIoPTtw
UE10OHs+PXNqR3Nle0pZWiptVSF2eVJwe0lwZlNkSzFYQTAwSkNFKHdgOEJeU0txZHVXeS0+SHhL
Cnp1ZFojK0xVQCs2ZjU/c3UkO0V9X016Qy1Ca3QwSUxJUjJNKDYxRV9NPUtsKUUoQUdgUzZuRzZB
YFA4blNoYj97dQp6WGRNejAtYCQ3YUpPcW1UKVoqWkkySjZ9QiojcVBMdU8zPEd4fDZoI0l4Qzt0
dGRZMWRrKk4/ZkUwPG48ZWV2Qj4KeiZfTmJ9c0FHUX05cWFTezVNQjdOZjd2YC1jOSVkbXs9WS0y
ZX45NWRWezFxQmJDUiFEVWp2RyVjVkk2ISM9JHUrCnojS3Npd2ooQm08aXNEKHlhcyRJNmRVWD1W
MTJqVUszfmVLaSN2eTl3SWQ7TXlQd093VTE1QFYxYUUqS3RxMlM4cgp6RGs8X1B0cU94RmQ/Nnxa
U2szengyRzBPUWJ2ZWJuQWM/Njg3I0owKE1BXk5UQnJDbW9DdmRyJjR9QnlOQEp9OFQKenw2I21g
NmtZb1FeYT5AbHh6MUBTQmg7RVNsZUNfRExhR3Q2PXE0V196I3ZKZWpjcil9b0g2O3k9cXhYPDtr
Nj9OCno/TnNMUHhwT3VlKkJiZ3VNSSlIZE1MMiM/Znc7UjlUPU1HdUReayUyIyhAcDFfYUxCWFJR
bGV7WnMqeX0+Kmtwdgp6N3EwQE1GPH1gYGl0eE1iVjlMdHhaYlJvPGZAc3R9Xy1wflJOZXg4Zi07
ND02bmZJZzM9IUZjSURSeTcjXm48MmoKel56RVBPWGs4MSlpcThvN0s9KmZpTkRHWCQhYkd9VGoo
PklxZ1ZXRy1sOD9ZZ3d8I0BwS3B6OGJrYFhKd2tUSUBWCnpoMTwmfk1ORko0JkFZVlN3byNgNSNj
VyhYQDVjQzVAdCNfNVRCO3ZGcllXdVIxLV9PYEBaVTIzNURlWjFVPGdUTQp6Q1A/e08xTmJgMyFk
fVlQSztDbkllVDB8dF4qP3R8eW1yPWtAJVNzKFRkIXlTQ3o4JGxSXjdEa0lFdT9eJD09MmAKentu
VFVCXzZkVUd6ZGR1PWNpayU9WUElTEpJMEooI2dUZD9kdEpoYVRXbyEjejw2WmV2T0NhQVYxMipw
NWR0OW9mCnoweWRzZmYzT3ZEKUxPdHM8QEktPCpeYj4oUCphXypIYkZKQERoUTNXNCs4OT1iTjIm
SXRsUXl2UFFuU2h2cVlJTwp6dnRuQ0AlcDY1IW9TRG4ydlN8OE4zVDFnX0UtPm40OEY7UjskWkZI
dmE3ST9Pemh6MzlncVJCcW5TX3VAMiQ+KykKemxOSEt1YXxUKFZsb2QpQHVkT0hSQ31rYWBZO3JY
X19taj1eVyhBX0daPDYmKnZZfDlsSGVpJHU3LWZJcmBGfnN2CmMjRn0rRjgpMm59JiFmVHJGVWRM
V2FvSnQ4KUEjSlowc2FlNXgmUXpHCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDUxZjhhMzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBA
IC0xICswLDAgQEAKLSAgICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4cGVjdGVkLnBuZyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4cGVjdGVk
LnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmZmNzRjNzBiYjdhN2NhMjYyMzRi
M2MyMmEzOGRmM2MyY2QwM2Y2OC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCA0NDEy
Nwp6Y21ac0BXbCZzRSg9fEd7eUEzfEwyTF5Ye2NYdWJhK3UkREQtUTl2RVNhNWQ8MkAoa0k/aGc1
UXpGVzhJeCVZam0KemVAeFpYb14kcjwtbTdQdz8hOFpwczxJM2tHNyZOVzA2PiRJbH5lfStVX2J4
PnZAUm4yJDJVMSVwKU1hRTM/NVJ0Cno5dX5HJTdXVkYqanNTQiRaWFB5SGI2IXBoUEhyfCVEfDJn
V0ZlZktCQ3klKWAyZF8xVXh6KDAwcERPPyQzWHFjJgp6KUFXSGw/YmVIPGs7QD5wZXFaIXl2WGIy
RyhZOVh2WHs2UHlJNGVEYW4jcEpgOCtacCU/R3NIeDZiQlcoVzN2QG0Kemk+Z3Ruey11SDVQUmRJ
TGlNfHFJUTZWSj4tLT9OZ04/P3tAYyFrVXszISZJXyleXiZUKXZVRlJPKWE7emI8QlhoCnp7YiR6
LTlGeSVPR3lXPUtKUkNTVlNxSmBve1Voe1glcldWZkIlOCpZXnVPMzhEekI8UHlqMitgSHAyZ0Ep
Q2t4Qgp6SVchN2EoRXFUX1kqIUZlbEZpN21yc31ybnwxQFkmSDV4Vmd8MT8xa2JaV3IkbHh7dzxK
YztjOEd5d0pZa2ZIeUAKelkoXyQwTUdGWFBITjt8SXstK0BZbXZSNUU7SEclemU1YDU4TDt3SEsz
Z3s2NkAyNklBcDVCaD9GTz4yVz0mJXZjCnpLZ0l5fldTeXlnKUJKejFfNj54WHp8SXxSTDdYfT1s
eGZnT3hJZ0NhdyFFJWU8TlJOc2Alb3NLcHlNVERVfDlKLQp6dUhya3Q7b3tmeC0hTmNDTCl5QGFu
aDRZZWNpKkItKSNjc2pkNk5LUiNYZF5hRGdUV29EajZvfDwjeDNzX3NMJVAKeihqLUYlPWtmbXp3
Kjl8QGVZTDdmeyhDUyZJdChsa0hfO3p1cTY3MGpETWNkZFQ9Kmo1REoybiV8SE88aHNld2p8CnpA
eE9wPGc0e05CO15yOGo8QlhhNFQ/QUY5JmNNZGxHV1NPdytrR0tCcVI9M09eWWspZ24qUiF6cGJH
a0g0SFViVgp6UCYkJD91bFEyN3J5YExHLXB9JSg1USkpYFBAdzsxUW92TEd1bFZfM2xSV3hjRSNw
RTMrdmlDbWxBeXd6I3xwQiYKelF7RDRINC1aK1Z7YF96cDsocl9tR00xPjN7Qk9yQ1oxPVV2N2ow
Y3pKYFV1SDFFXnQ5I2dfdUNMfDZqTEFVRnNHCnpKcFhhI3k3TUw9eStLPDszMSU2NlBDLXNmPyZH
ZSFtP1VHKDE5QUJXNnJSX2puaHopakYod2orbmdrN0Y2fjhiWgp6a3gzZz1qTk0oUEdjeDZncHlg
VEZyYmc5aHc4R2EkY1FyYUYtYWRaMk5pcWdmd0R8SzU2JT9vMEV3ZEYyUDE1UioKemdWXkxzbGR0
ZWA+QmtabVE3SDcpbittNmVrI3JtWGI4O3gjeG0rXzFRIWZYKTxjdCNzLWNLPGBEcF9maF81KmFa
Cnp5aGxJU2hxPDdtZGd6PURHaXIwQTBNZmx2dX0xLUUmcmFtdEtmaXwhaDNyQ29FVHxwQVV3Zjwp
d2ktemgoVk5zcgp6JjZ0QCNAQlh0aTJ4NEc3ZWZZJGBmQ0A3PXNZOC0lWnVVM0szZ09eLVpQZDFm
e0NkQjtlWkJwOUdlIU4yT25nVH4KentLMD5jekEpUUR3eWIodE45X2NzR0JwTVVBcmw1RW19SmZT
TSlMRTBFYXAxQEA1P1pRSTkwKUQmfkQrWV5wKVZoCnokRnwtfDVwRGtlQ3EmQ1UyIUVffSg+cyQl
JkZqa2ZMTkpIRikzeTlOKmFPRHJzfjtgOGUtRldVPmtLNFdYZ2ZPYwp6Snc8NmtLNikqX2o/NmV2
K3IhYUNvdXxNdCsmIz9fUSlFU2Amd1BsVnhXSGRwKiFZLXkjSyt5Yz0kK081KFEhTyUKekdqfU9X
ezRpRSE4PyV3bmA8Pnc9Wik/dGh2JHJaWnZoeXBjMns8MmxyNElfbkJUSTF3MH0qX28pSF9KPm1g
TzhkCnpJI0tXOVdgaig0Wj5lQH13NTV1VCRqZEs4NCFBT00qWiRoWVIhMHlWM1g7ZlowM1paV0RK
N2dwaXVmdyhoTClaZQp6Xk92MWBBVyMxZkA/U2hIaUdKT1ZLNzhgb2Bfc2lTd1A0VUwkV1AxPXFh
cnhIXlc3dzQ5czRmVkFFKWRVMUY3dXIKelJCclR4bT9RfU1xe2lxUVZkQHp9emBSc35xM1BpYmol
T05vIV5xcHVLell3TnZhaitVQHdGfmNASnFoPzJmNElNCnoyVXxkWnRWPTJZaE98TURfSzwjZDYw
JFA/SmhtQ2FXdjU3VjVgU2Q1LVBnYk9BS0U8cDwrWm5sTSgzYX5zWm0rMwp6eHJMPHc9YnhIRVFQ
MlheV34ob2RXXlI/d216WTZUMkU5PER8MV9XKDtBTVchNHV5bkdMZ0JiJWFkQkElYHg/REQKelpH
b2hQMUx3dVl5ckRRMXYrZXgyOXAxMlBZU19vfEtreG5BVX0/KTsoRigtNF9sRyZKU1NtP2BVeXdP
cUE2bGVhCno3OUhpPTxhM1pIIUM0KXdQUHY8ciZnWGFsLSg5RGg/UG10a3BfNT52bSszWDRrSDxj
Kj1CKHpoRHxOY1ZjcGspJgp6WW5QfiZpJDxgZXlYdTB3bk4hSFojZzFDJW5CRUFMRnJvdEVNXjlO
SDk2NC1nNEtIPVpyPndkT0NJNXQ9YUVISHEKelF6N3lCTThhRislVTR6VilNS0tadj1zMj0zP1JR
eFoja050TH0rJl9NVk99Q1NCJiNRKXEoPHNpYXZWVmU2dURoCnpYbz4kZlhUYEVXLTwqSG98SlIt
Vm1iK3NYdnMkUkBnIURFXyROX1FALX48YkZmRWk9dUF5P0s0X0JWRDxxZX5zMQp6KEk/fmt3Pnkp
ZHwwQllZP04/UnVGNmVlJXprYjFOSjIoXk9hVGw5WjY4JGlFdSNWZyRNfUBaTEhtUl53SWIpR24K
ei07dmdtclowTDlyelYlPldwRVJUIVdyQG00YzNWc0xwTGNEJjJaSnxkUURfOCMkQ2JzNEVMNGB0
SXB8RUhhSFlBCnp4KVk0ZkpDejY4NUE3dHsxNlcwe3QxMykjdDdMdHtjelRxJjMocEVyT0FKa2gr
JDUjc3ImRVhjLStwVl81d1cjQQp6UVNQdCQxd1NTX2NzTmwxZHZ0TzUkTjNoPygpLXg1Uy1UKT1P
fl8leSQ+PGAmSmEpTEsjOWArSXFoXkE5PTZ3dUkKelI1VDJDdlZVflZ6aXJKczluTTtIKzVNfChW
b2NldUt3YWE/eTl4dmBnKk53ZD81flFsPUZVXmIwJV89Uz09X0xWCno3TE5lTFBkZDA1QDd5dUk7
bkFTc1E9ZEQzI2lBUTtXPkNiIzNHPV8rND5zdiNlWHZRSWd4NyVCekViVFAlbHI4IQp6U2k0Wlpg
cSNoUEw+Sjh4dWZDRWVGJlgrOzZIVXcjUnxTdkoyNispOXpTajdFalpnJTljWGMhKHphT3duUGR6
VWAKekErYX1aUD49UWI/fk9kdk11Ukw0S1YkWWhUPlBrRDU2VE4qWmo0clg7UHNTeXBoWHc3S3Jo
M3J2emM8fjx8WHd3CnpKbiVocnFkR2FGU0o5JSFlLUp8NEJJQn0xMXduNDJYRVoqYWdPOEhfLU1I
UUx5Z25KMit3dEtqSlYtU09WVll4Jgp6SSE7QGVqWm8jRFpjX2JPeVlsTikxPiFHNlBKcDJ6M3El
ckVEI01TPkFfPT40TVpiKVgrYGhvPTEqN3YlJCpqZXoKemojVVhUeD1Rem50c0pII1FoOFZDQ0F9
TFU4QGAzVkpXOFJEdlAoMjdeNFVnZSZ4MCZ5NnM7O0s9cDQ2blVeenx9CnorRDlEVyokR3pCZ0dh
YlNxVHR6bjwmRyhaPW95Yz43PU1STCpGTkomI0dEYVl2V3loQUNzP2h6O0FhWnYjXmMwZgp6Q29s
WFNgOz5PdV49emRUXz1nVnRIMG1Sem9KSldXWDVaXjV1cCRWSUJwSEA4cnJ9ZWxXZEZiJiE1c1No
P3Fae0UKem5HdURvJC18TWFwa0IrbF93SX1NMUlPT0VnR0pBKDh+Kz47dGRleEM4ViU+Zkd+ODJ0
KXB5RG5GT3luO2d0bX5DCnp4I3hXRURKJkgyZlYkV0pLQW5sK05tbD5vUUh5NTFIdUZqYnNZc0pC
RXMmSDV6MDEmI1orWEF0TnA/YllCUHVNewp6eVpHQz14VWg2Z2khMjxnSGtSZEk2Rz0/LVB6PDY4
OzdEMD8hJSRsTmBXNS01dUVQdmM2UFJAZklkflpWYENHa1MKei1rPno9aEBgY1puMDhUcnBmVypa
anJ5e3whVlVsVnhad3BFIz9GTF9efGJVdjxSUFVvMkE0NDZMeT5FZT87fTR7Cnp7cC1Pem8mOWot
MlEzMnJxdlFnYj9FbDUhOWtOfU48KVBqZFZoMH55JEFXOVchTVh5VHFPO2BVVHRiVUhYMU5sYAp6
IWVKeighejQtNkEpMUdlbnxkZitKSCphVTJ5aTh6ZjBwZEY3KmIzcDN1Tm1DS1VmQ2hqampSSWVH
SGQ/UEZgZ0AKem03ZnhwZCl1RXNyN3hOI1g9SWp7O1EwajwzcW1Je1BSYCtWX1I0fitoVz5lNkxp
bWJBcXg1MWBiRktYWHtodHxzCnotOCErTU1yfkQ2NExwIW9MQUphYmZ+WlNUQyZESGAkI1hnKUp4
QHxGOXw7ejBNR1h+JG9UelR0LVU0NzlEWiM5agp6MGRWQER4LWBLJTN5b1VETVpkT25kJGEpN0tX
NWAhSW01O1RqYnlOSFd0QEd8LTc8VE5XV3g8KExPMF9kdTtqfkUKelFFTWZ2LXkzZUM/WTlgdl5k
MCpAaUN2aHRzSjhpfm9yVDhKYkBMKjxNZUZSZEhpZCF5ZVI4b0FeV2Y/Vj59RkMxCnokYmVSRylY
ajdjMSh8Km1nX2JrfjZNaHpaVCRmSk5XKWAhQ0ckcHVUR0FwVT8jQGM1d2MjWXRNJmFEWiRIYTlq
MAp6XlU/aSo5U25tcHZCdXZ3UFEtbkIoNVRhcEw5UDw1cHR5NnFxMDMhRUc/YU1WNFE+aXMmVmFt
Pz18dlNiJEh7PWoKeldATTFjYy0hLXBNYkh0fT5qK0YjPSkpUE1xMzZ3LXA8Kzk5Z3ZHVTA2QjJk
e1lPbTg2VVYtVVMyR0htUXN3T2BJCnpFZT5PZUU4aSZOa281USVoWCF8KzZPZGRuSG4rRmJwP0c7
fkhSMVhBdypyRUhJITJPVzJgWX1BI15BdTI3K3R0awp6dF5kdD55UVpmflZ3PFRoUktEem9yNn1K
PnVidlJ9NUs4TnZwZ1k0c0ZqaHNVI3UmNWMoU19ya2E7VTtReyVVdV8KekFFZT5TV2leTXRIdCEp
PCtlRTdGP31AbDVVJSkmXmNNMEhqPEdWeG5ZMUk/WHNJeGQjeG1lPmR7SH57R2F0TEtzCnp4bGZ8
MXRJWkBxTTxDRGZPPmdQalhpZG1QSGlCSFVNUSU2aTVVU3wtc2RVcXtPRTJGe2MlQiNHaDkpQ1h8
Q0NxSgp6U0omQWthJWdfQSkjRXo5U2p2VXRqcSVPJTBhOTVvUXcpU2VIRiF7UWtQOEhIRUk0e0gl
NXdCVmZoVVlTaTk0bHoKejwlSio/NXs4dH50bT1SZVZvdiorU3I7VE4+RnVvcHY4NDFgZHMjIzJj
NiVRYSpZT2B6NVUmOEg3S0ZMRz5IUmd1Cno7UCRXYENkSjAmKSFuYVdCb1BKNEJFQUFwd20jVXF7
SW1ScjE8alA2Un1hYWZMNSpnUztja2NnZjFJRXkwQiUraQp6SXt3MF9Dc0V3dl9yVCteRVpwMD09
Z3BGRHc+KyshUzl+QXhwNmM/XztMPmZHVXEqOyZCMmcmIU4+TT5fcjh6LTMKejUhXyhSTDxYMFFF
Qmp9OXBRN1I5amVgR0lwNzQyJFRCZngpMmkwMyF1WG02ezdlISNyNGNnVzVFekA7e2JJKElZCno7
RWVfIUVyNyFKITF9O2JUY3tgPHJ3bGJ+TSZnZDtwRi1NJEtZdEU5fEo7I1BGbTc7KW95V3xZY1Zw
cUFBXk5Hcwp6b3NMYXlMZEtmYzNiT1RHSVA+N28lbzkwQWAmYFhXWChFRCYzPnVlJjk7NnJBKERk
QmdKKG1aOEBXdSZBNUtEbjMKejdSZ0V1bkYqUWJNa1BRMzYxYWpjRTsmKXcxailNP0F1SFFXU3Yh
PnhYKiV9VklaKHxuY0J1akJOX3hsaEQhIXUtCnp0MEM/Qk5gUi13TlhjYV5AYV5ZQ2s1UFJTMTc9
P1dnLU1xKEpaUClqN0dNclQpM3JnMUkkeiYwUCotPGtDMXE7TAp6ZWxtR08oe1lgZWBFPXxVZlJH
STRGKWtJfDF0YDdGKnJ9eWVXJjMtUUlZdW8mdUcmKDQ8fUpTb3hrN2B5ZGRnYjwKenVpfTtMQjhF
bSFyQkBMcnJRYl9EZzRfRGw5dkFVZmVNPn52UWFeZ0N4aHhvWTlFOTk8Iz83enkqZSFGTzhrNkAw
CnpodmFWbVBVeiR6e2BXLVlraXNAYHk+b1FLWT1EdTlEcXI5cWtSX35Xbk0odCUmPXBtaU4xenwm
d05SUDhyRCpjXgp6O0M8bW4mdUQkSVojfDI7Q0ozJUI1UkBHP3t6RGZlI2Z0WFBpckxmUUNGaGUx
JjVXOH1qYjZ0VzA5bVNoc1g7I0QKeiNLWjU5MlMyZ31ZY3srRzlOREpzOFZTI1k7NmR1dmhAYFAq
VW9wUkVLWWJ9ZzM8UWMpT1dUQm9kOVllcExkSnpECno9M25sZSY/NE10Uz4pWTU4SWpKeXFjMDhu
OyVBfGNONztxPUNXWmcxPWUyRyYqfXtAQTBwTT0oPmxHISFJQnp9Kgp6X29xTmQoTFErNUtCdmBv
KVBxTTElUUlOZSp5SVlAY0RnKGohSGQ+P3I1bDhyaCkmNExaRjFndXI+bzAyNzxGWXUKenApVy1J
aTBuYiRLXnlmYUoyMVd2dmktKiM4ZjI8ZkF+NmdseUNYQDk1T19BVitOXlJqJSZecEA5Wk08MHAx
RXp8CnppQio3KCtFWTYzN3okTExrYHktb19qUSE2X0ZHbUkrWDN0JFlRNElvKyRtMnJFfiFmYllJ
JXwta01jUmVhTFN8cAp6ZWRKPlkpZG5WcUMjKFRFO0xsNnB6biZebXNrTWM5RD5WWnt7RlY3QU5g
b08kRz9kPyQoTz10NVglaCpWUVg9cFQKeiNlYDRZZiV5QkJCU2tOcT9uTEg0WV5oTExULTkoJEoj
WntrYEM7aXJ1e0hMTHIlIzlYdz1+fGY4fHNtY19MXzJwCnolZlRNS159WilodDYjfUVNb08wX09q
Sk5wSGFxU2o/QFJ5XmhqWj9ISExaazs5UD4jIVQ0R3NJTyEyVE9CR0lUYgp6b0MkSVg7ZUckY2R6
VkZZcWY3YXhzP1NIdWlMaFpOUnxhKH5GJTdNfmwhNVBuYWhYdlpxMDl4JV5YVWlZOCQqUjgKenlU
IVJoVkE2aW1YaXlRMEJgZ2xHQ31wcmMmMylYUjNrb0YhRTw8fHVEZmI0UiEpZWxMRHB5bzM4S1p+
fUJAfjAhCnppJW9vJWpgVHg+dEFBdW4qezV3cGVubTxFN19PPXk1Kn45XnZqZGdUSDFDdyMrQXtn
ZzIrPnFrXzJzM3JXTz4+ZQp6aXIwKDk0NXIzaDlWY05ObD9SQlEjUT4pMVZPKztHJEBrU0A8fEBY
cj1RSnR8NiZGalZSOCgwJlZnRTtiayU2fjQKeio7Rk11SC17dkRVNVd1djEhKFJnWUhDQk5ZdURp
ZztoWDY7biohaVhmfloxTF9GTmckKGM5VmQ4LWQpV3U0TTtoCno1JUs7YGNnPTUyRUlYQiVzIUZV
KVIhXk9oXzxReU5UfSQzVlgoQ0xTMEhsc2ZoblMqNFlIcGJaJGREJjd7ZHpkZAp6al9Ad2trfj9E
Ty15fShOJTJ1bXpkO1l6b0x+e2lBPjxMYT9LVihtbVdXclJVZitWaitFRUM1Ymg4fUw0KVdtJC0K
ekNtJiFwMnhsRSpHS3psLT5TT2c8UiFgVE8zQ0pqZk9Rfms5JERzekJOMn41WVZFUkowSm8wb1NI
YlktTnU/UnJvCnowcj1ScW59KzU2JiM7VSVSeTUjMWQmPzk1WjxGVTgwYX0jJXF6bVpkaCQ9IThy
enNCLVM2cFdwSTAmfTR1aWAmTgp6cGZAK3VMTyNKRFdRKEtacW5YbDJ7JnAzU0xMN0EjPl9ZfEpk
U3M9QTRNTkY7YFAoQG1FMkNuTDZERW9oVDYjb1YKej5zX35UanomNUItcGtqK0RkamNCSF83JFck
amp4b3BIfExhQmxWSzE5RW4qT3kjM3FJISZFP3YkbmNyMThndSsrCno/KDtSVjU1OXYkXl84Ozw8
Sjg9UWR2RlNvc05Cdk5PIUJOUz8pTH5TS0pvX0MxdWluelh6eFJtIUozNj0+b3RxXwp6dzZuZzI0
TyE9Uy1fKXhnayQjVU9SUUUtNVhRMz5Oa2x9V3RjTHlfNmQ2V1FzNz11KmU8RHJmMypqbk5HPW5Y
R2AKej0kLW53OHU3e1lNRVdHdmU5NzV0bXxvUGEoUzgyUUx0JShjMGoqSFpSeV9Lam0hdzJ7ezNr
PiMla05aJmk3R2JyCnotJDclZWNecUMyZ09lMDc+RzVfIyNvRVQhMnI2VF9Aaz9jNXc5TW9XQWFi
WmMlMHEjSmIqdzA/YTgwc2xUeGcwKAp6PXtAVU40OFBqT0BGJG8wMnFlKSluSktwc0pjTzwzNmJt
OVZ5czBEaDNVQit9bTJMa2gjV3JoVl9HKD97MFhjc3MKemMyQzxhXmc7bmN5d042ZDNOdDwyaWdW
ZVFrNGl1UyUmOX5WbzgoLXZoVXwqI28mVkklYGpJKVlEQ1NGPUlEO2tTCnp2JW1eZzModSYkQkRU
dyV4a1U7cFRHMXt+ZDJoMDZxei10eDN7IX04Iz8pb0VjNilDfCUyeHlKWUVBPS1eWi0qbAp6Nkol
TWxmN042QStsTGs7Y3xCUEFqSDVLPjt+WnZrSU0qeWRDelRNLUpscGdxSnpHSX5JdTlrQnhpMDRV
XiRTcTMKekFzUH1XIU8yVXxGcjBxWFpsLUgjV1pTNyk5aiNYdmBzRUJfc0h9OUhhfXt5cSRCRWdw
I2d3bn54OTxMd3pedWNlCnpuNH4kbHVRbnRnYngtOz44eTJ7Um5venM4X3dMJUQhPiVBdzA3TzlL
X2R0JGU+NShEJEUySzZkMUpWOEl2QEpWIQp6TEF6fDRCc281c2NhITI/KTBjYypaOFA7OF4/Q1ox
SWp6flhJbFo3RUFLektBbzdUOVhDO0NKZGlJNC0mJSU+USMKekhpJnJZQzhAdnZBfDh3PkVHc3U3
dFYlUkxTNG5+VVgoUllATVJifDFUVHsxRD5mOVReK0A1bmopVnkhZUhyN3MxCnppZGl6bUopWDl7
QDQ0IXtBKyY/LT0+NndVeWlvb3tUPzUzXnE+N0J1PTtOVjxMPmF3bmp6YWVXOzFZZ0hVVlFSWAp6
QT1GI3BWdVcyM0xGYVFscmUoTnlEPU11dChVSm8oVSVmWUM9IzAhMkIxUTJhdl8mMCtvPE8wQ1kl
KzdgPGgjeD0KemFaNXZxZVFQaWd3ZiRtRiR2QnlDWGIjKDg4O1JXb0FoK3V1OT53fCM8QUNNRjY+
ODlQZUgqMSl5YjMjZHxGKTFTCnpOVzNjdj49R0ViPWhqJiNYSH0rTz5sIyV4V0FrZVlOfWZHOTE+
JlhqaXtHOXltKzReWkl+dW1RTVQ7cHhkT29sagp6eHUqKEhmaHF+bGNKNjAtUVl1cH1UOCozck1v
YmVeOXJ6dGEhelB4YFg5VlYlZDZlMz1jJnpDPXV+TWdQT1pnWEgKeiZjQDhOYVBORHFxbzJMSktZ
NXd0T2hWJFVWV3c7VXhOZXVXI28yKloocilnNWpkaWpxQUJLOXZnXkdQTiZgcm1JCnp0Zj5uZnQ5
cWlBZWlVUHxRc1VHN21nOGRxZjFNMUVoSHxETEpuJmBDNFFPez5iYlFmXl56YF8+MntQNkQ9Qk47
Wgp6YUgyYGBgbyp+Tnc9ZFcqQTdeRXg0KEozeEg3eyhTNmErU1RLNV9IUUlgOUdYdFZpJXhfbDN4
dDV4OEZqODRvaHgKemB4NiEhTVk5KkQhVVFkYXpxYTw+ZH5GP2k1eVkrbzx8bEJYciU8Z0xgRFEp
PHdgVEEydlo1LTx7d09pUERwKk1LCnozdiFiOTZicGkyTm9lUDN0I09uWF5IMkQ3ZXMlam82fnBM
U0IxSCFBUD1xREAqN0ZteV4oWWxBWDdWS3N3amQ0bAp6NEBIRUFMfG5seUU8NWc+bjM5YXpYVm9B
N29gR3ZwRXRJZVVxVVJvP2BJbCVuQElmSWZYI0VQU1cqVVV5blY8Z30KeitIP1dzQGBAUTgyTDgr
YXlze0NYQldRPW97d1lja08+SnllRHVMM1Bja0RyfjsyQDRgdzhucj5YQzMtKE9BY0hPCnpLUF8w
ZWljNSUoUCgyTihRbWxfZmItJnVANUdia0dFfHwjdT8yeytqN1YhfHlOcF9aQll9X3hiQExqNTxk
QyZQTQp6PUlZa31jRjQ0QGc1LXl0OHFPRVBBfF5KO1dUd2QqRmskM2FfWnJEdyNlenlFJW0tTDIt
ZUZyemYofWRLNXtzZWYKejh2dj1wYjN2PVBzfXgtcyYqekE8Q1dsblE/V1pWTWwzVFlkPmM1fkZl
NFVEWTQpdWdUT2tEQTxCbntsZypiU24+CnpwU1pYOEVGdSRJd2dCe2dUPmgkXl9BViEhXnlLc0Y4
fiQpYkZ4T1hQZzV1bTA+JUtCMTkrPUg5dFJMJDBkRzRGKAp6PUZafm1Sc0wkOUcqeyt6WDg5Rlhg
ejJTN0JePGU7PCt3ekZiaHBGUDgwNTskUCU8PEJNdEZVZi1aezxXa1JPfUIKeiY/KmZIVHtaRFBS
ZVV4Q15scFVSSFVLfXcyPlM7YFZoPTZka0hocVZ7bCV2ZWpYaTIwZT5Uajx0XkdCeWRDRzNqCnpx
Tio+ZmxyamlGRnd2KXolQzRpWVEoYFdRcjBGJmB1R3AwVTwtKkF0WkswKDItM242emB1Rzw7Umg3
bUFNd3c7WAp6T31+fGNeWH5ST08qcSl+UWk1OEQwYU5gaHhZNmFaenhGUmtQVEYreTB2OHkkTjlQ
NktsUUR3cl5ZXmJecEk3dD0KemVqJXx5WCpMVFdqVjBOOFFfT0JCRD5sLUAzcHwpblVkczZyKVVz
VV9kMFVabkBZfnJeNGBwKnJ0TyN9ZTBfODQrCnpXNzgrKyQ3eFd0JkV8WjBPTFN0NE1KV0VjWnwm
YXJaPUE2SnFCdnUtc0pxZElSKnRQM2JDPFlXPVI5SkFtZD9Odgp6KVpIRHZFQEYqNS01aWZ7Y0Fz
UXI4NSMrWEdEejh9VGFaQk1ZZV5TS1FFN1lAVWxZZ1Z2bXNgS1ZtRWJ5TkNoUEMKell3a0h8MjFm
PHk8QEkyVGAwTH1PXz9qPGF2R205UDZhciFSPnMwTVUwKHB1SXw4aTNBM1pUWnNvfHxvdEEmYVY7
Cnp2YGRWTk5mbXNkYiEzRCNPO2N6MXA/T2FWPUN9bC1URUxsaVcmWDx3Vn1ucGh3UWJlaGhDPW8p
PjRHNWN1VndCQwp6YDdxV3haZ1ZHMD87VENGMnh2Q0tfSGNNUEolYyU3d1FzKV9UJXIqMlYyaDZv
P1liPzUoaHo1fjM1SnJpVH1MeyMKenFadUA3Q0wqcGRrbm1yalBhT2deeVZPT2ZKfUhTJkEhNj5O
UjllWCNudWRDYkVGQUJNKGJJfkVNbV9mdmkkZWxxCnpkUG1hRSU7cm9HZitKe3VBXk4hJEJ3ZDdy
JHlga3xnPCFEcjNKeiliQEQ0em0xY2tMQ0FjeGZ0cTs2fU1WNVM5bwp6bktNTCVAdnlsOz13JVdN
TVluITxYfm81Y3hzYWBNaXlffTxDQUtCN1JPWDc2biZPel9MRjBiRD5BI300JXRRenQKeit2MVpR
PXImfWt0a2EwXzU5fWlGMzEhe2lgLWQ0VVE4YHo7WihvdlFMQTQxRGQ1Q1VBbENvaD5vcnZYZGxj
M1JNCnpxN2lHeDh5byNfWmgqIW15VlEzVVZtPUQwQXp5Zk48Sm4mY0YqPCoyaFc2OzZtTG5pPkMt
Qn15Snx7NUs8cSs3IQp6en1IU3BvbG11dU8haSN9YU5mdkg5LVVsTmhpcEZMWWwmdUU5SnlsQTZm
KDVeSClKWkclKG5TMkNSZUgmU2dVPWYKej87WlNkPXl4ZG8kbHIxTmNBcmJ3SW5NNWo4Zm9fTXNw
Nz8/XkRXJD1kUSQpLWQ9bDJTaWRjMmwwKlYoITUzK3BpCnpWSUtPc2FJRHgtMl84QldWUHQ/TmJ4
N2J7ZW5zeWh2NSR6RCVFd3pkTG08R08wOC1eNz8lITs/Y185YnlTZUVPPAp6dzB8KmpvJTk8cGNQ
VEBQeXV9PmBCZDc7e2AtTjhzRFc/JkJaR0tfK203amZWYDglZlhlTE9mUmgpJkIjUHhIeWkKekFZ
MHVNfEI4czljd2pEUEJIKVR4VW0pO0I7RC0jX1Yydjw0djMjXytWPSVfPl5nc318c25oay1tam0h
ITQrVElqCnp6TmpwdWk2UUgoY0shU2QpV0o1RkFjST4wXm9AMT5GfTcqPSpPJXUmTDI9RSlfe3Yx
SS0pZ256MW94TDBEcHFiUgp6WGRBVmNWM34+MD00dnhpNGM5dzJhRTMlTFReUXN4IWNHb3lWYjdG
UntwREtDO1pvcFI+dUdjUVR3QX1UZ1JYMzQKekpnZT9STGlBKzQjPHRySk0pRFdnS347S0Blckd+
SHBTJkYrO3AyfWRXeldlNkpBN0VHX15pO2ljK1FfQmw5PXBVCnpaO2VuJEl+XlJrUUtKNFBKRzxR
M3I/Iz9SOD0ye0BKJERCT3grJTJETGEzUkBJKXd4SUFDZkRiJlU0R0lZQzxBaAp6ZiR3V1cxJitE
QHVzPUYkK1VPKT5uOVFOKmBHQF9Sclk7MCNMS0t5TVBnX2AjdTh0eXBQOD80Rit+eWRgenUpPSsK
endJaEFLcXI0TWlVIUFAV3duUSUzYHI8fnhmJndZSDxBTThgV2BCRnZnZF9Ceyo3anYwTyp9dEtS
U0spY3hyVnx9Cno1b2glOHdDJWZKam58NHBQPSNJcGMmSU4lcmh8Vm4oak9ZeEYjJU45JGUmKyR3
eyZrdDIwV1Fqd3NuemhPZ2ROeQp6MzE7QWF2NUJnaVZ3VXJVIz1tVXk1JiZmaFEzcCRNNGlKKXgq
X2FvYkBVO0BeLTRfZXoyKm1xNXg7RE9NcG8xP3kKel5+LTUqZ288XzB4eV84bWNKdEJGMDMjelBB
O3JldjZDVCo1Mm94VyZvQGdeJlNXXkNSP1c1I0cpUDZVKXl4QzdrCnpTNGd8MSZpcm5DYH1Ec153
dnZka21hSTBKLTcoQHIlc01laVh9Qj9UbFdKUn57QDZqVFNhfWo4Z2JSV3A5PHZqNAp6ZHNHQVI3
U1JAYTR5SnFmJkhvO004JX5WUVVzSk0te2c5NHBmfSZZU20mSSh4O0ZzT2YjUV9ZVl9FTGh0Zktr
Z3cKekpoRkJDJnNHOS0yc3h8a3ozWTcqKjhJRG1saWo/MzE+KGIze2JNZjxkem5gSj1Ka0FgQTd3
ZHxFbTBXa28mKz5aCnpGLXx1Nkx9fkgmTDlEPGZEZElQXzJVdl9RWTA+QHc3QFJJUEc+SG0+IXZ9
JXAqJTNaeUdAKkZHZVpJQUA5VFZSUgp6JDkjJC1VZjBiem1yYz5XZ0FKeHAqTEwjPk07em9NNjY+
dD1XNl9IT3M3KVU8R3AlUEEjQ3k5UV5mYmY5bGd+VG0Kejg3ZVZicSNqanlMMkZXS3Y8Q1J2VElN
STBLNiNASyVtbnRhPUlBS3okLUdRPmE0Q3N3UlF6Pj9MSS11NCYpcjZHCnpXZXFVUWZ9K3Z6e1Vk
YW5TT2w7d1lDUTtXLUBfNihNJTtMVXhoZlVsNzYlRCUtUDg9UjhlJWJxR2x2dDB5QE1WRQp6d3NT
WjltYjdvRkBgKHFLd1pwa1BvTFBUMStWP0ZaSjl4VktRLVUyNytMaUJZa29qZ3g8U141dyNALXJW
ZzxNbHoKekRSQ3BVczRLNnhUU0JrOFV4PTk5VzV4Jjl0TCMtVjtkcjI9KUp+JUJvVj1zP2VDKkw4
eXxKb0h4MXB2Y2IxaWIxCnowdTtaSFRwQngwKUdiRnBeMStnYWIkKml8RnFNd3ZOVUgye3hoKyY4
KnhAejJQRy1LdlRFZihQU251fkU7aFg+PQp6ZjBsRjtPbHMmRD8pcHohWXkqKTtJZmNhPmJwVy1C
K31JZSVwQnpvOVNZdSohTmp4am9HcGJoK2htcH5jWkMyMDQKemdoIT8+bW0memx1ZGdXaFF4YmRB
VmlXdFFsbipWLUtsTEMxMUtzfDFKMUlxezhrKnJBIUhMQzJlZmx5QkF7R2dhCnpkdXtTTCRpSWtv
NHFDbFleU1NvaiZxVGQ2VzhJKVZBKDx0PjhMKHQ2XlY1YlFoYj0pSEA+YHJRe04zb0JAeGwqfgp6
RmUrZExOUlNAPVh7TGlwM2ZeUys+YUw9eWBkV30tIUMzdT5xa2cjYld1cWx0RkkoYX1gKWB4dENQ
fkchVCp1fWQKemdYZVQhN2F6WE13R1hqSyVIUTx3TThGYnpMQ3hfU21KYURaZkNqTyNofTk0TWY+
UEB9d3pSNHJpYVRwYjNucGcyCnp0WSk1UVh1dnAkdDszdmc3QHBIQE9nRX1RbyFmTztJME9MeDFU
b1cmPSYlNmBUallGLSNnT2xgZjVXZFkyP3JQaAp6dWk1ZFQxLV9XZ295cHBoQEdyJUlyO15pUGYt
VTMwcnU8QSFycFhlfTJeZDJ1S0JtKXFZTkZCOEZ3aGtlPkd2PzgKej4hPD4zQD9ycjdpZjkyWG9J
TXc2MVNuRFJWazA1dUQpNSo5KEJfeGVOZnh9JTVrVVdPYGtwSnMzJnY0eXpnUG1nCnpNSCVaJWpv
V1dsaERJeiY8O0Y3bTlEe0JZYF4xO0QjVFRtUkdEfGRLIUZWcmM4MDV2KWBRJmxUQmdGaCY2d2dH
Rwp6NjtVaW8qe0RtcDVWR2RnV3pHQnBCbipNRXoqUm8hJmBQWW52SEFxI3A4Ym5OQittaj5DaCYk
aUNuX2JlRCVnJisKejBZQSh7NzY7Zz93KVBYcD1KVTxBeFA9JnI8RFdnTS1hZyQ2WEpXVXNpU2xA
RSkkLVgteGE9dns7NkRjYU97NmJaCno0eEFLKUlUbGF1K0o+eFg+Pn04c0xwQWxFWEd5fnFlTUZY
ZnZ4NWY+LX03M2ltQ0s0emBAOHdhdDcjfSRsV2EpUQp6bDZzQyVONn5IejFeMl5BS2k1dik8aGV3
c1hDNTMkUmFBeiFrKkFQZUJxPVBiaj9+KDd0bChOIz9wX0BHKGBEcnwKeiN6WHUoZT5GQUMoaE1R
aS0+QDViN2NaODtGMj1saE1qeClBS3NsdDNFfH1jdnFeRXVLNHBsTj5FYUk9bV9YVXp5Cnp8M1VU
ajMoc0ltbHpNMV4hVGdSd2szZnl5ei1ZJkIrVF5mRmomODtDKGBvV2g2SyFUXko/TVJ8N318bk5R
a0lscQp6PiZZfGIhK0srQCthJFFaUWNxRk1ncGlRZndMPXptK3xadmY9WUpJQVBuSTBOdFBHYig4
MTRJNT1RbjtmVXo4YkIKenFST2t9JSREfXkqMVZfbD1OVVIjdkR1RClqQGt9eXVUPUpiKm0oUWZS
Kip5Jmp1eEV6MTViP1FlbGRkSmg9IXEpCnoreHNWIWBoMjF8aE9+c2sjNTZPJDVyUjV5cCo4e2Nj
ZH1PRFBXa2dFZV54LW9tIUVjQ1VJOHFNU28zNjdxPnctVQp6YWR4P1QlT31aWm8kVV5OVjF+PUFD
Vjg1cChWckkzPClKV3BSPyE1TkcjUCskQTk2TlA/UTw+UHMoQFhmYXIqMXIKemBNKWcoVEhlP2Ng
P2Bwa2cqbDE5K3N8ZmMpbD5UaVB7NXkpeEQjcGkwJkJxI0x2WH5HJlNYfD4jfFpoRilKSSRnCnpf
Zi01VkRkdEdPM1RfcjxFPH03JiM7Ty1JV2FiRXNiI0A0aXE+eHxHPGsxKz9PT1JWTCtuQXl2PjVQ
X0B8RCFReQp6KGRKYXttPUYyJm1Dcj98UHc3NDE/dkJqMVdmPXI9a2JuOVZpV3YkVWlXRXRqOUVG
LTRUOFhIVHlwcyE4PXUjaSkKenszRyVxWDxTI24zJlZIbjBWTkUhJXNCRTItO3c/PUVGT3UhOHE+
PiZfRSo5SWBUNDAhRCEqYy1vTmJeOEdJQ2YyCnpmSVctai0tJT5Xelk5SV9aJGooP1A8R31IayY0
WT5UZm1UMWZXJU0paXY+TGA+d2FwVjNAVlJDUFNgfDk8ODl6agp6NHZ4IWQ2ZV4qNSRLQTZQTWN9
MVhJR1FQfjBuP0x7SGpnVEk8QzZMPmAhOEYrUU90ZUwjNnY4WFVFI1k0RUhqMWIKenFeeV8qUUh6
cU1PX1A+YTlRNTt+RG5JTCtAJXJTIV5oayhIcW5BaHVDdjZ4JXp5MTw2M0BUQEpHSyUpZUh9VzlD
Cno5bCoqbFQ5LWk+QFdgPXwoNlZJa2tHXylAOT5NSl5qTWlZeEwoLWVQeWxvYFdVSit+eEFaTmBh
JX1WXmpSO05uVAp6YCZsSUlWcT9+M1FMMCpuMSZJZHtyRkpNRzFEe0pCPEtAJW0tcWB4c182bzh6
TWx6S2V5V2ZKZ0Z0PT9vIy1qPlgKeiplOUR6Rn17eW9UPEA5cjw5TjA2a3E4ejVUa2VDcjJeMHho
KH19NWF6Smg3QCpDdW98eEtEd0hsenprTHhkaD1LCnpoNGNiS19pOF9fM0JjJl5OaEpsak5rZ1FU
KTx3ZGo2PXhVKXl4XnxSRVIwODJjPHk5dWdfUz8wZnlTNkpiKVVlPAp6V2NYe1libzNGUVp0VXk7
JFlQPSZzdDFoVGlaPE9pZFp7dGVye2RQRWV8e2hYenh7X3YkbnxCUSUqe1k0I3cwQ34KeldDQD53
OUIjSyUoSXo9RGNEd2pkVUhhKH15dTAoYUI8cH5sb1VWWGxUZTlePWd7aGl8dD5qNFpsMXs/cEpI
Z3lHCnp2bGFncShVanZiQXhuT05CJm9uJjh5d2A0aktLOEw3ZD5yQyVqKCNsMnRIc0puKE1kIz10
QSpTPyZOYSVSRy1UcQp6TXJGc0omK0FnZkN3aklXR3ctZHk4ZFh9RF9FbFpTUyZYTnFnYk5WPTVG
e1R4WW9jYjtTYyFmeHBCZyZDR25VYlIKeipPSWxyN2khcH5IUUIpJSpKekFPK0dLPTdOdT9yMkEm
Nng1QmlJZmtBP1g2OXNBSil8bj4pJXFhLSFmcjwtWk1PCno+UWxCVCFPTVo+MW5wJSpYWiNSa2hr
I2BDTHpBQUs7UV55YCplLWJ6a0hOOWAlajMtJCRUfHwlUzdsdXZka3FGUQp6TGdyQW1idXl+fj5R
e0dfPH5haV4mSWJka2ApMGlyR3RFNlU5MWghQXRFantzQlJyQSo7RiZCfmRQTE99M01zVDEKejtS
S3tBR3EzaVhTN3l6RWRtLVFMQ2x8fXlFMkQ+LTY4aEJvamR2czVCfFVfUHlTT2twYEd1aFEkay1w
aEhjSEBBCnpMQ1F1ViVyRDtpdkZXMitZNk0xfV4/SzJzentIP093NlczNShZN1YlPipQVmFVJVd8
SU10YHVmNnJadipzJXs8Mwp6c05iQ3hfTm5fTC1oXjswXkNDbU5reXBqM244XnthNFNeR04rRDR3
VDdtKiM7azFVJHg9RWY3VT5CX1B3MGtEOEEKekckMEhlZUA7WVRURmpwNF9+QFNzQUd7R0RiYj5w
Z2gtWSQyQjFMSVI9ZjRockYtPEF2N29iKD1yJUA/dz1iMXlkCno3RkZ3YHVzYmozaiR5d0UxWnVe
YFRBUiV1aUFVbkl3VSp4dER0JTl4T3Y9JkhPTWpMSloxPFRSMEp4JUxYclU5ewp6bDJvIUBIeEQ4
bi1ScHBwcDREfGpIeHhvS291JGY/cWVGbCZhJFlKMFM5alNNQm5FcDN2e01BS0VBJjcqRFB2VXIK
ejVpWkFEc1VwbUc0JEdzV3cldjd5UGhVK1loT35rYzNKJjc7OHJROHRgWnQ+azVYcn48MDJGWndV
VVI3VTdlQVBWCnoyWEFgfFY9XiY/PWo/ezZtM35wSmpKcnxSPi13PlNzNTI+aVZWbT5QYG1FJj5w
eHwkZiF9KEtPZmYrQUlNK3xDYQp6eH4tYTFSQXVPUnBtSkxTIWBnZ18/SXdOTVdUUGtXY2QpN1Bj
Wnh0VmYlY3YtazV3UDZBRXFQZHFFcDtPdkZRfS0Kem03aUJ4Km0/ZCVfTWpOSUYlP0tEX3BsWisp
TkUrRUNPJjF9YWYtTmJPIXElNF48OS02QXxVZDtKdUgpSDNDciglCnplZnA5Q1BUaT0/MWthcE5f
YVcmZ1QwfENKYWZKVllEIyg8I0IjaVdnUFBOVTBycTJke0pJazc1bT5CZzdDbiQ/agp6SHY2NihZ
ZnIlOHg8eyN4U1pobCkyNWFYTmxhfX1zPWNpanhAeG8peEMjJTkzb2d0TVd4YlEtQXhpV2g3WWMo
UmYKemw1PFI4K1dWPFFRe2R2XkR4WmkoXmY0empQXm17K14+Zm0jczthYjEoJHFyQWowdCV1X1RK
bTQjRiZZNzFhJEVTCnpfQyZmcHNIQCkrenEkVT8oMXR9PGwjaHo4e0tJPExYeXRve05BWnFZdj1i
dHtKSFlpYms4cyYpZzVJOFEyWXFvMQp6Mjw/SUBAYElDS01BK3B7YVIpYWRZQjFoeWY0LT84K3xT
UHRObFBZd3h1MmFBQnBERVEjYThkIzZAQD1UZTktamcKemt1VUQ1ak4mVkxCUFBkaDc3MXZlYTM3
MGdIQGhQdCZaX2p8JHxOa3dwKD9BajR3THRTVFczXjkhcz1QT3V8JVd7CnpPdHtiVWg1WTtMNn02
fT14dFNvQlZ4bkQtKnJHe0QzVyl7Z1hJb34mQTFjeU1paH1DUDIrYlI4YnVtI2FEeVhVJgp6ZHZI
elZUYj40ci13SENlODFwV1podVcwYzFTaVEkVFZzdyRuI2pJVDNaTFZqdVBuQiomPVZMMEdjd09B
UGk9VXsKemRwOTs+aWtoQjVkQGxueEpPZnFFUlU1LV9CayFuI043RmR+QnRkZVl1b0RoR2pkOXlv
Y2taKD4pPW16ZXRQSj8lCnp0NUE/VG4tQ1QxJFZrJVRZPW1+fG8/OCg7Mjt7KHMzTF5Rc0xCNCVU
YlBhbFA0LVQxX2o8KU1ER0VQRjxtM1o9agp6S3xsTW5NXiQ7MVF4bDE+QjV5NnJQPVBQYCt+fDtE
QSRCWmxGITItciYtJnp3JGBILWlzS1ApfVZpSnd2SEk9a3YKeml9NlJ5V3BfcSthREU0b2ZnfkdY
dHR5b0IpRiFCQmFJSnBzNjNVYGJ2OTFwV1laNzwjZVBOb0NDJHc8empTJjNVCnp4QjA2Qj16O34h
UEBGV05ybCsxIVZgNWp4ZCU1aWY2Mn0oRmp4cV5aZGMmQTY0dCQtVStQNnV5ajdGT2xjfSlTRAp6
O2Brck5PallZb21GKElvNnlra25nc3BfKU8lU1VWTEtaRXEhbGF+VjZebl9HMCNrcHAtNzV8NFNl
K1YqY1J5NX0KejlmeGJ1UXJpKSM+P0ZseDMhaktVaG5raGYybTVRb1RWMUdzXnJPbVdKZGdHT2Jm
YkhFM0N+cn5KRDBnempBSzlhCnp0aUVvVEJQRWpVJjBHfX1MUS1OPk1FMXhzZE0+KEgkWldLaDsp
SCZ7TEJPdyk1bSptdzBEV2IwZnR1bVI7NlYmVAp6Y3tZQW88dzMrY08xNiR2U2YoQSM7clVkPSFR
Jm0ka0cpfEUkUlRPTSFJSHFUeFhJIV9ZJCQjR04+fkNqPTxpNDAKekJJYklQZmA3OFdgWnxnfntU
Yj0/Ym5zV2s+fmtKe2FKKyhuPWcxIz0zMFRyfGNZNjBhb19ZXjkoRzdXampTMz4lCno9JH1sflIk
fkgpbTY4V09Tfilabm81X3JnKHFyO3stUVpqd1J7UGRsbnM7MVJDYSMjY24hKD8yTDVTUUAyekVn
Zwp6PmhkTGAmYExAK3omMU1SKnZpdVE+dm5fNk0pcjRKJUJiQDcmZipYMUs9QWR8Y2VebmVwbXBk
cSl7NUoqPzlgKkAKenpSSl9HZyF9IXRNdU9gPFQoeylyV2NGKTs0S2JEcFJqS19lIVNSY2I8KUNU
YXRLanNzUDN9KmY7LSgjdWsrQmZLCnprYXpyM01BdnE0a01YYDRseD1KMHZ1R01pMERtVTBpIVJe
aHlNQUZHJmZCO04qN25RdEYwYlk7LTYpJio1cmtTRAp6dXpTbzBlbXREaS1ETTxeNSE2SEhhQWxI
MTN4QFpxcGdaaFd7Z1AwOChGZy05YVlyN3UhIzRiOHhpKUNZMCtlPG8KekNPc3h+dSRTcGlpWio1
bjg+TEpIZktZRXxpZFNxaDFYPXNzV0crUyZ3dmhga2dnXiFMQT19ZmdWWDBpN1c7fmp4CnoxSklC
SyhaYXh6YlNQKzYkVClLVjF9S0A4OzsjKVZge0dPZ048JVNgTH1ePjwzTWdiPEcxR1pfYS1vdUM3
djdXRAp6aGZ3TnZla0hOMjEoJD1SYkE9T1BxezBVcDV6V1BNNSE3R0pFTU9VZ2l3NXRvZiFHel4l
XmJHNDlCJVkpZDNCVlAKel5pQnVBK2RLMj9uN0ctMz8pVjRweEhyWEM7NUdJN1RoSD0xMXdJPTc/
Jks9O1UpUHtfTEIzKyo3d0pwP1YwWUgmCnokK2RMeD10eHVTLUc8ZzJEayR2NTIyVCM0Y3VrWDU3
SSNhIzgzPWR8Z1FgTDRUTj0tSG9gdz1rZDxtQHtwJG9LVwp6ZCk0LXpYV0teYzF8Nj9uOFBPZ2hB
YSQqRG99YDdEP2NMdSpwNkRlaURyKEBWKEBtQHJGR1J2MVEhTGs0Ry1EJHUKek4lM2pQNk56OEEx
UmZ+SlE3fXQoam1peHRGPSl0dD1TMlBsLUdLVz5SNnVraCF2azBOUHFId30zLUE9eWtMaUQjCnpP
JmtHKUE+d3pxJnNsUEpDRHV8Q3Iqdl8te1NEKEJfX1JjbzVZWWl8N0ZaREVwJjZPYEIya1UmNUVi
aFRoaTVwXwp6dzRBVX01eHNJRkRqcF5rZG1DSl5YKSFmKWVHdz1ae1pmIWs2dEpRSnBBQkV8YFZJ
eXxFfHt7S2pAa1dtNmshZiYKenpBKGRwNTA3WC0hNlF9ayZ9cm9+UmY+N2M+RFk8Mm5mJiRPeSNT
Y3RTYmI2Wk5eek5DV2g3XkczNXcwbFlmOExPCno/TjNYeWpmazdfezlidm94aTV5dSRNRS0taHJl
ZzYrdk5MUEBuK2o5emlRdVNyUnpZNEZEc2BPPipnemk+SEtNXgp6Q05jRCVnZGdSTTQ0Kzc5Pngx
JThoJkxQOFh2cS01UVRyP1BaUStUeip+eHBTcktffTMtVzxxSCg5KWxzUl5PZ24KejxsXjl1KmA8
O1lYZSExeEhufEA3S04xKWk2ayg9Jkh7V0k4Y1JtYXI/S3lPR1d0WH1WZD41PzMqUkY7VXtyT1Ez
Cnp5UWFEcE09OXBuU0w4Tj09LTJ+aikpdWVvdVAlQFNVMzAwZ2FpLWtWPnVBcldIYW08VDRAcWAr
U2RxYkNBdWx+OQp6I3loZWp0Mi02Y3w0M1BqcDEzQkd1K2crY2IrSD1teG5ZT19eTTA8K3EtfEZi
S0p5Z1VsPDZLLT0pU3B9aWclNTAKem9YeztOcXJ5RVlDJmsxVjArQ2FTX3JobjJ6cCFhJVdDTHla
N2M+PFJodjxkeDJBNThUU2djayRteW1sZW5KNlN1CnpybCN2O1cwYVlURWdhVGtoQkM8T0goS0Y7
NWMrTnM/IU14bSQxZ1RlOzx3ajF6KnJwMCs+aypwPHcpOFdxN0xtTwp6fEpOdmtXU3pKQTQ1ZVNp
XjxTVWtpeTt6I05aKDtWWSE7X3FfZk9Ya0xBNClqNWNiN35GPTZCSi0jZFNyQjVERmoKenZRYXxm
Q3g0OVAoYkhDJU88Pm9vcUxTRGt0bmlUKG9SenhUejxBMkI/ej1NcSl8SjY8b1ckfEJSI3hWanoq
YnorCnpJPE0zezdkWlRgejBgbXYkUzNCbUomeSRaKmZxJmtZfkEqZ2sqQj5gWW80S30qVH01MUdz
I2hFX2hNdGRYIWcwJAp6N1U1c2hLTjdBJHpvM01CI3Jyfl9pa0Y/ZzUpaTZDb3dAb2NUPlBqTkp9
VjdQUWo5Y3ojUVRqWjZvZmRvWFVJWGIKemQlVSVZSj5zb3I4QHdjbUlXWjxteiV7Mnl0bEMoeU4k
SnI0PEpWQnohVSUyc1NBN25RNVpzNjVjLUx7RTs1MitxCnpWRklrN0JGaU4hLXlWeiQoP1B1Nk5a
YkpXWUZkQzxfVVA1SEUweVF2VWlNSmBKcmpWbzdRNGI+KCs1dk1NfGh8Zwp6RldaSm9YcnEyciE3
WnJeXncyLUU1bzhjZVpnLThQT20kJGg4Tz0+N0IyM29aeGA2I2c5O21jaU5VOyE7Z3gpR3UKenpa
R31Fb0tPfXVOSlZafGxyMDVoNSp2LW5Zd3chXkkxO1UrJCl1OWdCcHsmfVpuPmxfeiUpVGR7PyQo
P0I4aShYCnpla3lfN2BvdHZLSmRgPT9HSGJPMkQ5K0IyWHw0RzgkdSg4ZlZ0dHZwTyQmamdYdVNm
ZDNrTXA5SVNlcnlCXypFTgp6bXFXcjsmempDKGlmb1hASi1pN0Q2N0I2Jlo/ekRtMytIdzhqRVVi
Q2FlbCY+TV45QilESXorJSN7WUFQKGp6M2EKei0te0lka1ZlMlNVWiZ2QTJWSklDSCg7cz87LU16
SHFSN1d0OTZwNCNLWG5LRj88K3leUE09Q1AqamhHYW9GLVU0Cnpjb1U+P2AlaD47ZUojOW85fD8r
e0krRz07blIqZzUmZnJudXVHP1p4JWNgQjVBSWpSZGYzRD9PLWJeQTxxMjMrPgp6N2g8PjRnYCYj
NmtDeDhnX09vJiNgTlZOWl9pMFk7WGJXYnZzM0lSYGxRK3xacGUzNi1scElwdzhFKzdgcnlQcFIK
eipwcDEhT29Fe2YjRzt1fjRWTGglSV9+JllBcFJYRykqfHlmZ1pGO0lmRStIfChvbTg0UzR9ayVZ
IXkmdCtqJjxhCnpJQTdtWF5hUnR3YCFqbFo2JGEkKj07NVEjcjRZfGYrciVATnMxNlJVRjY9MWFQ
dTVmb1N8aEw0SXBLVHhtX3k9bQp6KkI9N0Y7MEFzKkAxRnIkT3xzJlh4UlYyWnZXYzRkXk13YUUr
M0xseFZrOCtUKSVHVDshVH1ORGBjMn0ldGF7S3wKekVGamB2IyZFI3ZobmlkeEQrIypDeElCQnhv
JDBBck1GPUgpVXJ7aiYoRD5YPjZXbjtIa0xvfGNtenk1VGVCQWBzCnphUSU4bzVpQ1BOLVhVNTti
RTF8MmB9PW5yUHAyanlQQGVWYlFET31pU1BKUWlRaXxCY1pYT3d2PkRNZz4wPnRhdgp6Rn5rPD5n
S3lSRU87TEg5ciVNOSYyMz0pSVpLallSSj1YPXZrbFVTYGA1UFM4Y19hbSF5WXlLQT9eam43MHth
aGMKeihsQkV6bFhJQmBeSCtoJjFPbnJ3OyNWdW9GbVZqQjB1VHp1cW5EWV96aEFQUUd5KVZ4PU5P
Q15XalFJNG1lezUlCnppelh+czhebmQoVztxR0Ytclcjb2VVO1h1RVl3TDtGKVo4VkxAS1kjcj8m
aWgqK25XP0ZFWHQqdiZjTzZHJjJqaQp6OGZ4OD1eUFhKKFBRfEAoR2BRfE92N0AxMTVucl5ZQT1S
OFdMeGhCRyNLZWFETzlkeFJudzEkaHVHZV83VH13VT0KekU9QHNjZTNLTksoQ3RyPDdmejx7anBX
QEVkOWVleGA+KGY7ZH1xRz0tNl5Zb0RZISUtbzh3WUdKSypJOXlOV29xCno4SyVXS1JDSHxgamtt
eUMkSWUoN2Y3R0taV1NxSFdaNHw0amJ5Vmd9I3ByPEN0PSkmaGo9Xit3XnpQYHw8Y2VTKQp6Wndv
YmA/dkB9PUxPTz57QVJ0NjdwY0lOMV47S308VzxTMk9KK1BGKiQpZmtWNXZhKURkQzBlXlBZRnZR
I0U3R2sKejllSWZPU3ZWRGN2UW0zWFZla1pNcUd9aistNyFBY3d6PkR+dHt8K3M8JClibHB1Szs2
QHY9MkA9SU5xQ0g5I0l3Cnp6NDZ1KXEwPEtlQWEoQWwqak4lPnRTaWghKG9IUTQ1Tyt+N3FUY0Qm
c3UoRilDfX55dzY2Xk88Vk8hZypkYjg2Twp6WXlnbmQwfD9xRjZxemZ1Qns9VztFPk1MZlVKSVBO
eVojZFMyVlhIdEl3fDhEYkJeUU87KC17N0J+aTN5M1ItXiEKelR3QGd0PyNvZElCaF4xVGd2UDRm
fExMYy1jR3MxWCNlPFRXcjZYcytmS1dBUTY+dThFaWpFbj1LUF5rP1lWQ2FHCno0WWlPWCVOVFIx
OXdTVG9vcHdGe28/V0I9QzcwKihfRERTS0p1RkZ8MWEyTUhaNTQ9YEArNSE7SlFfNW5Iej59eAp6
RUk4Ym5GcUFRcS1iUn0lUXl8dSpmWWZrPj94MFMyMDBjIUhqezhqaSM/U0dMTHZxdUNaTnFaZT5Q
Pyt2aXttMXEKek9SPiVpc05afEAqJVJfNVJ2cCZLJGhaLWlQeHZARShyMzBTVEp7KndCe05DPj19
WjRaa255ZF5rVHwpNzU+P0xGCnpBYE9NNmMmdnc1NmtxTkp7PXpuUThlUkt1X2FBcWZkIWtKQj1X
NXlxY2lsYSpkSGwxPVg7PFRoQGN9eFdJfjMzYAp6QClRXkdxLXw8R1ZtMGI2THw4WEEmOHV6I0NC
c3VaMz11NEtzLTlaQCQ4JVlAM08qU3hzJmFlQVVTcFZuSWo1UFYKek43SzF6OVZSQlZAKzE2PEBQ
em1NUUhfU19QZk1HZmx8NXZ1M182VCRpUjRPZ2B9TzBRUXlvM0I7b21LUnQyKi18Cnp6IzJURlUk
ZWh8K15BWTBMMWhELVFILT9FMFJ3K2hLZjRIXjM3T2lvZy1+M3lXRFdRaCVSMFpUMjViNCVCPSt5
RQp6QX5NWGs2N3RVU3VJaGwtISZ3KkpORiY4Tm9eP2dQP3ZZYVVzYy1VSy15WHM7XmtqR1FlbDNI
K0cleGk5dmohZ1UKenRtRX4qdVI1PU1CQTtecVhlNXR+ejgrZ2wkT058SVkqNmw2VHg0WENlU3xG
UVl8MnM9TzEqWllCWU9sdF4wITA+CnoyRHJ6T25TOCM4KlVfOGFJMkkmfjkxT35iNjFDcEU2UVhp
NTNtRyhFPEJmLWtCQypsSkU4bkxZK2ojWmhpaStXaQp6NEB9V0dgJm0+dkljbVRJI1MwPkxVYjYt
NWV3Kk5kJlZjR1VUTmN9YXJURXRCUE89KDgoRnlPLUpUNEp5SU5Aa28Kej5hO3J5Rj8hMlZBV056
S3IwI15nPmlKZXF4YTRrOXBoKDwjJlpMdSQkMDAkeUZ0UXRBYEpaaGBTXlIzLWVafjhJCnozczlp
VHJXT2coKlpKOUU1eXs0alhrPF45VGxlazBgcDI7e0R9K19UYiYwclpNX3FrMF5CbUI5LSNOcV96
cUF4RAp6MTNvV0dMOGBLb2k/RyE9am5OX3huJVBufVNuJldXWjt3T3FqJU8lKXBCKnNEcVUpemFU
Y0RWcWdvUU5iTDx3dDEKekdrNT5mRXNBa3VqTFUwbXNleVlhVSU9RCNoU25sWSFnQl5kZV9YUEco
IUp5d2FnNGN0WUQpZSspIyVeWjE9N2dWCnpPRWlWSyNAK3o9JmlpeH4pJD0xUXpYbSlpOWBRbDkr
Mj9PWSo/ZXtTQnI0YER5TEolXnslUzJBZWZyb19uOClhWQp6RE14KWlvb2d9fiFmKlQ2eWQkZHZa
b0E+fDg4NXpIUFJibDhISXM1dmJBLVN4T1NsVUZud0R0Jj9CUEtEYX1GP0MKenFQIXgjNG4wWW5u
WGNpXlVueTlpRmtyd3JZZHVTWG09KjFiX3dqdTtYM09OMmhMZ3c5MTxIY0VZZDZEdyptMmlSCno8
PWN6KkBZKkpOOVFjRWBUJDh+Tk9HSmt2VjJfRD5jYSpJUjI4Z04rM1F8dSFZNX0pUDZAaVgtbylq
JEo/QnkoeAp6PU97SEhnTF5YMUMtWWx0UH08eSpmelNLUlBoemNHQlRURiFNMj42Q1E1UjN0d35h
aFowajQ/cGgrSXAhIzt4Iz0KekZiTHlxUG9GNDVwfkV7SnIqX085PzwmR0AoejNYPGE/ZVdPVFBP
Pk1uSWZUV1Z9RURQUV5tJXxgS2NfSmthZGRwCnpAa2spJmBvQXl9T29AYVp1TXtjM2spMSt0YXBB
VVdPRTBSO0FmQiRhXldnYz4mNEVUdDgyPUdjcCpldntZfSVRRwp6aUErPnlZZ1ZpaEc8cWtZcCpC
JGEzLXdNMHJMSnVKR050VipCN3MyaTFgZ2ZsMlI1N34zOCoqS3B8NDRrMl4/TmkKemsrJS1LQm9k
UjhocEhFP0xxWlAzIzhPZkdMKypFa3tKM0kteE4/NXRAVkRXVCpnTj9AZTFjeVlecSNBeFREVURQ
CnomOG1VbGstbWsmPDB3R2lDPUpsYDgyUENIK2VjJFFgXkwlMT90ITVjUH16TGUqcUhUTDcoY0hH
PlQ5ODB1eUQ1Ygp6eiRkWUxjJUN5T2BafjtUPyh5X3BXYGh9b3ctbyZXRCMtQjY3RTxqVVphWV9r
K35Ad2ZyVkJpXnNDZGhtNXUlQyYKelkpeGxgQGgpPitwcFRacz0wZ3h4WjJWd0UmRGc0XzdOejR3
UXNRXkE1NTlofSNjKztnWG4yVG0lJnVRI1goQHc5CnpDVWVWbXFqJDY/dGtpSExAIytVMzYrX3sy
Y0VSPl9LPT4hckNYeDQpIXQtM3M8OGh2aG54ZE9UM2A9YiR3ODhPRwp6JEVwKURLe359TF8rY1lQ
KkhefDglcDNPb15iNlJ6I0tTMDV5aFMhdGslKiRRUUJkS0U7VSs3VkBuP0RDKExrI28KelU4OG52
dUlVeT5HVEI8XkMkI31mOyVEUCgjKFQqWXFIM3JyPTA3ISZtSChzVmNvNWN2KUhYWT1iOFYhXk5z
bCo9CnppS1FuLWsod0NHIX56O1dMNS0laGhqdTlwKF4xbjs9K0UmVllYb0t+Iz4xPShWSSRQdWJT
JT9iVzNqbD9kJUxtTwp6XmJPRllpe0V+TXkyO00tbHc8cT5HZ1RhPGt+aWVRSmomKnlvcE50RF5A
O01BLW53KUV4ZitreUFPKClidFBRen0KeihXV3E5bG9aQmc0RTRMbnc/bUMtR0Q9djYkamB2MU9w
RWteSHtDT1IjMjwmfCleKkY1O2FQciVjNGIjd3g2Z2U5CnpvY09Ic0FqN2JJamoxYz5Va0U9UDdP
IzBFezVpc05SS0omPV48ViV7Wk5wKmBpRVpPYFRfZzVqcWFDU1hlVVI4OQp6M3RZdG1URVB3LXdL
dmtGaz1Vc0khdjRaMk0yaER9czhNdDB0eW1ofUAkXjt4aCZmJWVTTzQkMzAySzE1QXo9JCsKendw
bFQ3a3xSQHRZSjc9ciQhQGI3KD8mQntSIUhPWTk0QW5EN0x0PmVpK2hDVihHTzZWMmwyRFYmPjJW
UFp+ZCR4CnpWaWt+WjsmSGhndyNFdHUrKWFsQGlpKnl7Knk/X352TTt1VmBvPl9CWiR0PnFhT0R1
Uj1IdyFhUDxtbzx6P1Y9Tgp6S1RUKyltSFhyYmQoP2JmQDFiIUI7UiFoWEl2Rm4wQT16U1RQKHNY
N1loe1hXKGxFfFJSdTMlTjZObC1pTkBWSEwKelhDXkUjU1l7NHxjb0NxOWBMbGZRJnt0ajJIVkA3
ODQ9TUB4T1A4Tl47O1h0Rz9TMFF7S3p5SGZlMXkrI1FKc1hNCnprJVU/RnY2O0E0d2EwJklhR0BA
SnI3YFY9RSlPUDwpcXBGa3VhPCpDXlFRckA4elZBNlEpSHpUaUJxUzV6dTc5cQp6WFgxcj0yIzNw
cHBAIWx4MTY1cHxjY3JkcTw9ZUltWVZhcXxZNT1zKl8qQ0hJKExBWmxsVXh5fCM7NWJtJEFzMkYK
endAUCtIMUdeWG1DSmk5bEl6QUpWRHpnUEE9R3QxWT1tb3A1Sys1cjxOOTZ3am5tfWQwaTJufjJm
Sk5XTTM+MXhOCno/MyphIyg7WDwpayMkbTRpMyE3Xi1WKntCZVV1eCg5fT5MVCFrSlpGeEckT2o3
SEVgeTVAPDd9IWkxKGFxODNpRwp6azVuTHE+TmYrQ3hRPTwzOCRlNWprJnIme0FWRXI/NXBnViR4
MW11ZmwlVCQ+PGZ3K0BnUGJWWDw2ZiZGNCtjU3YKejkmfilgPSFoVnRoUVVYeDc/Wi15cSNWfW0r
SEBnKUl0Y012SyhyOUlNUWxnUDxJfTdERmU/c3RaK2hPfl5ZVmk5Cnp7PlNmX2tOYkdQQXMtdk5r
ZE9WMzBKYHZRSm1oflhnZSZleklKJUhLODxkYXBjKUp8NT5tJG1CS3dGZno2QTdzNAp6ZX5rUVU1
SnJtdDhwcDdtZl8mc1NUfWtleVNyfTRjPHMrKFNuWHN1K2k/eXx1Y25JMH1AY3h1b1VCbWIhYEYm
SzkKelNieXd5KSsmT0tuREhRI2tGeTlMVyNEb1hWX3JWcGg5U3NXZ0oqRzR5Xnlqait4UVFRYUxq
RUF3KyltUypeaSNjCno8KzFRNz1vR0ZsZGVyLW5VKl5rfjxAeGUxPiUkM0hWdShmYFB0JVhkQkJl
PGpJOCs+WEJtbmEwUGROVShURHpaIQp6WDcoWX1obGZVWEEtXzRydkhPR09EJkAqKWc3TFAzKThq
SF5wcyhLbz9Rfm9kcWo+ZGBubVJrOWtub1YmPWVTMikKeiNGVzNzMFhVOWdsMkMxQ2JsR3ZuXncl
c2wpKGIpLXFfcCZEdlVoRDJmYTc1U0lKUCYoXzJPZVNVPW9hO2ckaUNCCnpmeztGK0ZPcihqQWJR
NGw1WlIjdWFMajw9MVJuZjdyYzdMKFlEZj89S0tFcGZxViRNfW8/UVomSyRWT3BVYEA/NQp6Pzh9
UGF0dnZ2M0UpMXpub3MzXl9COGdWeyVETW4yVTRXRTVzZERuVCptajM0dVhrYnEwOCRTJHY+XnJ0
KWpWbDkKemxgJDFyQUp2aF56PmBQTCFBRzlpNTlGOF5Gb2hsYjQhJSFyeDZrUCUhanI9bDlMdnow
OHVhZD81RVYtK25PTmk9CnordEcoVGFkcmpNNk8peE0xZFR0QThzdVhlTXd4cDR6PDlGaUgqSCok
enp8VEBKVSNrZE9mKnBaPzRkblVIZDAxJQp6TzQ+MCtkPkJqfEJfRylpIyZ1Pz5ERkhgQ0tKRyoy
P1oqcDM4YDZZKSlCd2xVY0Q0SmYqWWBJek9AV0ZyLX4yfSQKei0oZ08qc3tqWEhnUDZmUDc7fnp+
PisqQ0JBU0NqQV89fHUxdEh2WSVgXihWTUNULXBtV0AtWn56VnJMNU5Ge1l9CnowRDdxWncqYXQ4
MHNJbGxMKXtSWVBOaCUjI0RQUTNmdk48NGlWc3VZe1MyTXk1MjFNN0RvVX0pcW5QNDNffCEkMQp6
ZztlYW9iaE5YT2kqQ2JIME9kSX57Z0NeVlQ0TypjJTsjKDM3fW51OVIocFdYIT10UkRJMnNMSXZR
Pllre2Roc3YKelJAeFo1KEgwTEx3MW8qY15nTWFZI2g4WlpXQ3QtWkt9Y1ZOQzVqKl9IV1o4TV4q
bFVGYj98SyM+P2gjeHkkMDZsCnoyenVaUERDT0dEbGthMz5eZGxMe3JoYCpmJHs+UH1LJEtsRCh1
ODE8UHZ8UjNlPVExZiV3bS1ib2o2KytXe3MydAp6N3kqRFgxI3I/OXlPOy1aNDxLY2l6Y35wNile
bChYTCVEUk4oM1h5NFRZUiZHPHFXZGQ2aVp0a3dEX3Y8NllGKjQKekw2R1lySWZHbVlLISh1Rm1O
QmpDQD01KnNoY3N2ZEVOUn47eShxYC1WfXN0Iz9YWFl8YFBraDMwWVhvMktlWn1UCnpJJkQpdjk/
My0/KHx2aj1NbjF8b01fLUdeNyRNOX5iJG9iVDlJcm4+Y3dxVUI+I3RDJkxgPkt1bFNAIXhZVSl9
KAp6YHIjQEpHTW5yMGFLST9EeCN7b2o3K1NSLVBfZkBvRVQldCN1JTtTMyNkQmFBaldZZmtLfGJS
OXhQVlhqK1ROM3cKemsyO15zQGdFJUMpNkItbW99TzgoUjNkdntPbVlyY2hSV2t5aE1Eem5mYiY+
YGhJPEpyPShYVypqLTZ2V3Ykcio7CnpjZnIqIUo3azQjNVYmaTReVTxAciUzPWNGd0s5Vnw2dkQt
SEY9QCFsaTFMX1NuZ05Ta05jMTliQVNDfUxwN0NkMQp6ZVJ0eFY/TF5rUUJPMUxRTEluTXxkTn5W
dUlJNzliVW95bjFseEdNckY4fktadEdKbGtoQGZPczhUSnRlS3N5RFgKenkzdH1ycFVGNEg1KFkj
clZsZ3haKFU3RTQ9PGtQUklfaUJmMEVCKE4zI0BFbyNpI1o0WHxjNjJFcH5QYlVpUlRLCno4VDhe
aHMwTW5MITV9YGlJMjRNdGg7Vl4oJjduQlFKcUR2UUJKMmI3VGkzZXxFa2ttbWBzWCtfPk1wOChY
Q0l2YAp6IT8xcDU8NlJqdHY5aHYpQFVtaWlfej4lOHVkY3VnXmJtWW4wbmlNRHRkTVBpY2dKUUJH
SVNCRWp6VVBQazJtQGkKejhkZjkrJngzOFkybkxsMiVUYztsRn5XcWFScypESGVTOGdSVDNZamBf
aGRLa1YzS1AzVThiPF9ofjQ0NSpzMEEqCnpNTTM0UT9gMEBncHN+dVNqNkkhZW92dThHKCFqRm5J
XnhtYCpOJnd9JDdMeUhJcyYyZ19+VGIwVSFUNUdXSE82Mwp6dk5gdXdAIzdpJXRzUT9TdTlXVXdr
P3M1ZDt9bXtXT2BuYVFyRnRSbTdwOCtpIWF9VWAzKjUjQnhyNCN1bUJyLW4Kem9tTHUqRW8tOEkh
MjFeeHk7cENaJVFtbzUlVzZlRmE7I2VEK2g4dH5kN2tEcER1fn5zOG5aRHZTc3JYezZMOEdKCnpE
MSRiUlJwVXQ8MDNKSUNkX01xJGQ1MSE9N0JHSHthYDd5LWJNUWNPWk1fZTZ2aS0/TmU5UlAkY096
dnk+LUQmIwp6ajJ0US14eVlWYDcoQnlxbVppNT1sUkxadWh4UDw8Q2BuQ0BrPmZaeWoqbGFOO2V2
WmpuR0AjaiEjTm5vNVFmVUAKej0qe0slTEhUPEs+a3NfOE5hRy1ualBXKW8mMlZBT0lWQUxYUXoo
ejxHektIQjYtcC0pMlZOYD1TajVGNkp8RzU7CnpYRkdwX25XfXlPcjd2RT1IQX58PDlXe0ArZEFw
Tn45e2tuMnpKNk1vdFRoZUhFUUcoTVJ2QXQrb29edmRuSH1uaQp6NDEmPVdKKFZyez5YQkJjUEZu
VVhsM1I/LXFGJS1SZStQaEwxN0wmT1BUOFRGU3ZOM3hheGozX2tHdy1mREB6bGUKempVTFUyRn5t
P1RyMDx2TWsxRF8rSkpqNGRsOy10ek98MFdWKkVxLWBsRmxNbmRrQEsxaCh6ezV2Pz9Bd2RRQCg8
CnorcVNuMDQrMjlVKjQ5PTVPNGo2bFpGTjx3MGlkajV3WG1IWG45WWckOUhiMWxqPzQwTk9kNWcq
VXRoX0wydlN1VAp6bWFEdndyQzdFez9QbHBzIUkrREFaUTUhTShBN1otRXQ9YmlKU1I5SXF9Yypz
PXxQcDt6X09rXlhDb1BBPHE1SzwKenI+IyZNSmU/fmhCSmUkTTFNa2ZAdnpHKXh3I3ByfWJDOGV1
PUp6cDw8QS1RI1c2U2I+dEkxYUM7aWxNdSUtRGxgCno/MXRvSDJ6QXFDN1o4c1dJMzI4Mnczd35R
U15RZCNAaFFeYjdTWXA0NVJZfmx2ayk2Mkp2bkg2VExPLTB2QSFgZwp6MHZzayEpenI0O2RFMEwo
QUt9P0VMIzFxSylqMXVzRUNPKHhtb2dIZDFDfVg+IVU9akVwVkoxISskeDwxayNyN1kKemFAY0JD
cENKZyp0N2YkVV8hXj5pYkFlK3lFZUUka3pTRyM+aEdlTV8mVDt0MXNIdGZBUSpKaVU3WklSdnht
NTBwCnpWfGVLc1o4MVFqOFJWRzQ3QEl0Z2lCWSlFPihlcWxAOFB2UiZLRjw/RkQ0fDZMdWZlMFc4
dCRWPUAwTUdkR3V1SQp6SUMwPWI7PXQlei19Z2c3PEkxLUYxaC0rISUyKT5xakw/I3hmcjNtbXUh
bH0mN2dvR2NoWUItczkmKH5FUH1tfikKekRANzl0U2Z+eFJHZ2xudiMlWGU0K3ota3I+OUw0VkU/
SnlaRmdeOX1WeDtgZT95VHF7RDFMSnJSdzRHdkEpP0BoCnp1PFY8ZnJ7bGdseWRac3ltR0tTT1NH
VHFoUXF9SSUjT3FLNXpYQjZ9US00QUZ2QVV0JHprdntzS1pYKVJKdG1lZQp6TFllTDItRUhqeXhQ
PGExSztnaHJTfUtubkoxI2YjcDU1SkRJWTUtPnlXS3M2WUc2ST5qV3RaV3hofVNGeW9UZVEKej9O
eiomPlg7MlpBMnZDT2RwKyRnQ0paWUUlbn1SZzs2Ym00SXUzeXBuVEpZQEpwKDNZRighb0A9MVAt
UzhjPmlMCnpNcUF9OVV6PDR0ISlDPGg1SzNSUkNecXNyc0cpT0VrZCR2YG9IMFI0PF9YbmVDfEJr
flQ9PSpgdnZTRWlKWV9zPAp6RkcldDlfYFd2JjchMytyanNZdHBHOGo1S3w3WnROSl8ybHZSfnR0
fDM+Nl84U3dRcVY8WU5uT3hnc0NZN09sI3UKekBpO018aj1ZN3khcT5KYkFOTD8xY2Q+MTY2JDg3
Q3FPM25kbyhsYVkkX3lucF56KmkzTWhMYmJBS3llZmVpUEdBCnpKSTMyai0xPDdeNmFNfWRNJiNe
QUpfM1klM3tkfjFobEg1blMybCRFcjFmSzBue2Y+QEF5ejItQ1huUkAoNHwqTgp6NjhHeDNKY1U8
TkEkbmRVTkM2UFpmTTdYR1ZHbUltNX1AI3lLbXtjKlAySz1fZnRRQklselp4JCtWfEBXZjhgNF8K
ejNlYCRYMUpFXlFxe0dBa2c5Q3dIJFZpUSErMUNHcHpnTFMzPyhlUit7cz9+dSZ8IUFhcCVRVDlo
VllRdGNgVmhWCno7JG95YUBkeHMxVlJZKn0/N1p3JHJ3fkRKUWpGRF9fZTdfSVFpc1dvTSZZSTFG
Mlo3Vj1WWFc0LUskUCUpcjJLJgp6Rjl2fDF7NXQmSGVKVHd4JnlNcz5eWjtDbyE9eDVnRlhxZnpR
P1N5dHh6YzwyakBSJkZ2aXJ+dUIwSjFFU2JwQV4KenMpX2daRn04IW9xS29XZ3gzRS1RV0kxTzIm
RUs/NmhHdz4qZztZKGUqfjA4a09IMFMpcnN1YCRkdDNeK3Fga2RlCnpTWUg4OXdsPjdwXzY5c3Y4
KUFFQlVGPng/en1MeGtyMHhwPTFFJTleXm0pbW97LWBvXj5eVFA5PEQ4SXBoMXg4Xgp6dkkjKWc0
UmNLZndOUGRvVjl9O2I1UmxNJnZlNUBIWClQNnlKfSo+UHYmdU90O3RQa0E8NHY/TUVBeEphZGlr
YSYKekhxJEBOLX0lR2Uhd2JDailRYWZDIXJzTXFDRlBANHshKnw3REU4WjtlOVpjZ2pjWmFxYStI
eHRGPDZIOE5JWVljCno9U0dHQCUxMD5tPmUwSHJqeEAmNURBUitpKVRzZTR0b207Q15Se0U8cjNs
RmFidVZSdFo1bXQmSTUzVzhzKzVzPAp6R0lgND88PkxiISVRI0R3aStldUBoNUFpcyZoS3I8ejZ7
OENXT3IlMERMJnJwO1ZYUTQ8aVlaekxUdz4rd3BueyEKenokTjUtNyFfMD14WUdPTnIwcEpwbT0/
VWomQGpYXzhSe1o1SytlPUNOJHR5QDM/VTszNWtPME1qZWI4JE1RanFOCno2dSZ2TUElVjtnQWY9
YWFacUgpMiEjPUQ3RG1+TXY7fnFuISVseStXYW9+JT5mcWVzejUlX3B5NHBIRWF6aTVuPwp6Nnx+
fVVsUGZgXlE8MExebGZScm5YUGt2NENDakxtcVleYzw5dDJCYT43N0Y7Z2lpK1g5KX1ATldqRVNX
blh7S1QKek4rSikyISlhTDdYfkNOakNnNzsxQnVMMishVyF1WCFPYWNDdGoybWw4ME48RDlkKCR3
Mntfc1c5MCtmNyhINXApCnp7OXZ2cnpQYzlRXl98OEReen5MSXVJXih6JFBgZT4jWkUoZnZKRmlu
Syk7VUlldlNrMmshfEp+R2QtMSk1U2VNKAp6VT5kaUAjU0BpVmNnbTEyYiNpeGE4fUU5ditfdlB0
K2gyej13R0hvPG90TSUoNW00NWNoVCNlPmxITTQrUFQlVjQKejFRPy01NCpAMHU5VUF9dl5kUzVZ
cl5SajJmP2cpO1lKOVdvbC1CQENIdjMxIWM2fHYhanRjLVBNPSgjKTV2bThICnpOMGFPNWpERmI8
WVdNKCRvYC1wNlVYVWpZS0IkeF5gM1N3SWtkMj1BWnMoNDFtT19uJjk3X2xaMTY8KFNWaTJCfgp6
IX1QeCVtZFo+Y2hWY35YMnJTVXM3KWAqYTgwME5OfEYqQ3E/OVQ0PTFtR3xlUSQ4d1NWUDNRU1g0
K1QpcVZsZEkKelIqfVktN0IrJG8xdnQkNztmeUtkPDlmVXJjXlpBKjIwWD1BNzwoRT9UIWBfZHIj
diYzODh1eyFNNT58Z0NmVkFHCno0WEJ2K3NvJDM3czRoQTh6Rnx0WGBseVVUP2EmOG9HSitVTHM3
fGVtX047bHVFdHlXaWgtak89bT5gQkBeOVZvKQp6TH4xbnY2JHdhfkdsNUFsNFQtdjU/MkdoNXly
bXVeP0dwek1IM3VGNmZJUXl3YV5OX3AkN1FGPTt8WXJLYUQteEEKem19JUw7KjBIPyFFQzJeUFIx
VSt7aUpobFVOVTV8VGk/bThkNU1uQlkhK2FXdzx+KExASVJmSnRNdVVQbCQhUWxCCnpeY2RuPThQ
USU0WG9Cb3VlWH57X281NW1WYkolOGN1PmMrSzQ+My09N3dJKipoSUpjYEIxWW9PSzRKakFnZHBm
bQp6RiM1cWhWekgqN3h9SEoleFlmaGhqSz9HQDY1TT5AWDFwRX5hdUs4SyhCLWJMQElLWF43VG07
PEY7TG13c2tUR2IKenQ9SFJ6X2hkQH5sUD5sSGoyWSsrY0Nje1o0KGc3RVk3aX5PQUBvZDs7X0lO
PHsrWTg2PiZURW5rSFJ8eSFXcDllCnpycVpIVW1wSUcoRV9qYFI0TSEyYWQzNSp5TXVFQHRUUG54
V1QrbSs+PnJIfGJfK0lpd2ZEfSN4dV8pdWJXbnl+cwp6Vm17X2QmSWopWVYzZz1YWXdKQCFkaWRf
R2NgNXQ2WTUyYFVHb211WjBKPj44MDttYC1yUzF6Jm54TjghSyZuYi0Kem15YUZEdDBOZUlLOTY+
VSE3Q3Y3SiNeI2Jxd2MqXzwrJTNoYH1LaGslRXdjdiM+dj9zPFlPbE8yKz96MCVsQnQxCno7fkxf
OW1ONDQ/PkBHamZJQz40QlcmX3twZ1pOdThkKUItLWdQIXxWfE1CSHhPZjRWaHYkRHdfN3RuQnhg
RjQzeAp6U2EpQ0RZLU93R2IoSXgrbyN9a19RdSgtbTQ4Sj9mVF9gdV5CZUFXeiQrUTNGeDhDKCFP
X3ZlfTRpXldXSl4lczgKelVgSU5ATUBET0dtK3tGcTtHeV55Vis+O0Y+Q2w9TyVUQXklSnpOcDwm
OG5pT2ljdEg9ZW5vfj94ZGUmSWkrZF8tCnp3T1l9az5WUUt9ISglUXRSRUlgM3BvU1FyNEFOO29V
WFZJTGgtTyhvNHhuKWdmYTMpQSRHSk1TTDlke2J7YXx6UQp6eXBlNDVeTWtuLUkkNng2dzJ5SGJ1
T3JtcFBZfn5ISH1xdnR2fVhhKFZEVEt4VlF+Qm02cCVWPksreEk2alp3TGUKemIzbngtR3oqUl48
VSVpM0RLUHB1XkhfUloweEs5WmpiMHhEcGpLLX1aWW4+OWR6cy1TMVI/YH5sMExSVUEwQ3c5CnpD
VX1NODlMZ0Z1Z1hvPmBiOzMrZUFqMnMpVEAofVUjbVRQOSo+YkpmUTFKe0FAcTtWJGdCSlBPey0o
SXBEJSpvYQp6ZXNGPXVvZ0F4N1dMIzsydDR3ZSFqI20qdGJkWlRfNmlLaV9gTilSdmtadGxBMnJl
RmozVDA7cDVQdUU4cVk2MDgKelktdXlfRz51WDYqeDlRbj92I0FnMG1tcSNAX15xJSUodXFtYCRe
MDYldlQyPmwjMnUkQ3VXQT9jITdWSVkoeV8oCnpLSmdEV01uOGlHQUk/SFBCN1U/Sik5QjBHQz9F
ZUFeM2d2MzJJT08oQCk2PyNWWmlGd0FSbDNRO1FBcClZTDcxOwp6ZjhuTFNSZTdjdXJQfGhpVFJ6
RTN6V05XRiRDVEd5PDNEVm5UYEU1cG17SGVWZCFOa1hKdDRVbnFZdG9kRj97aEUKelooUXxIPU14
OEIxUDtYWEZaK0hAeTR1O1ArUVVFQ2YlLW5ubT0zbUBNZ2s2aTR0KSRxalBhMHRkNXAxO2VUaHBz
CnolNCpaLVJGXk9hZD1WQkFqT0V9c2ZlNFIrb0RNZks+VF5Ge2tqN0Y/eWFYbFk1fC1YUjNUc303
JlNLMlBKJXEkUQp6dT1qb3d4OT50KWVsWGg8LSZsPkc+MS1PM197Kj5re3M1ajZjQW80XjJ7aWlY
UHpnU0FkcVk3JCZiZio1JUBZajYKemB0OXwxWlA2czdxXjgwQHh9WTd6MEZjLTt5I04zcU5ZbnZ7
UipsZ2klUTY4NyFEeW9+QlI4MU48Vi16MXB4KClrCnpjbVNSanBycWczTTchSnRmM1JWXlF6cWt8
TjV4M2M+ezE5K0QlWF9JPlV3VmcwRUlXfXFyaFpXYXlESnBIXnpNVgp6byRAPCRTdjtYdWlYOzh8
OyZ9N0V2bF9wJUBzOVpReCRpbHpLZFRFSStyfkFFdFJDUHtDMWd4IUspTWslWThxNmgKek0lbWNL
OFkySzQ8IWo+OXhGSFhrT3cwNT5hZ0VFZ01HIWFIc0ZwIUspKShQeVN0e2ZzQ1ZZcT9UbDt0Mngx
WTRsCnpWfDgoe0lTYGxIQFY8P3N7OUlXSkRJWCF5QTlUVWYyLT9NfmA0Rk0xLSZsPUgmbnl2OUJ7
KFNrMk4ofisoNDBPRAp6RzJLMX1LbzkzSTIlM1BTZDt0YjlVOHNsVVcybmwlYEN0OH1PaFMzSWlr
U2hJQDc9KSE5UDV+TTUhKlRePDUoQkYKeituQTdKZHZsYlBJWWxvbyp1R3NDbX5ubD5xWExXclM5
KHxleWdkWEVZKytHKXY3ITVJVlFLcFBKUHZ0VFJRZ2FeCnpEcVkkcTQhbWRfbkFCWSFeOWVfQFJY
dTd4NXoyY1RWPmQ3ez9MPGhHVVptYCZeJUlVYHJnSTU2e1Q4TzlwZU8qeAp6QV49Q3hxM1VVUEVM
UlZnQGlGRj0+aEJ0KTZTcllSNVZpRHphMWxYY2ZGcnZsOzJ2en5xODJmfk1gXis5Vn5PTFYKel9o
SChPcT9oM1pjQFUyJCNIfiZwUj0mRDtYKUR+eF9NdGckP0dFSFJDN3IkRm5FKERfV1ViPHB7cjB+
YXJ8ck8oCnpKd0dTSjA9NlMrS1ZKaXdLX197SD97QXp8S1oqXippVjQqKyE/NSZuY3c3ZXtWfGwp
P0Zqe0l1TTglNSRXUmtFSgp6SFdVfVpaSFZ5e1UwV0psI3NLM0N2JVlRYllAKiNGLW9KckpXMmA9
Mj1mPWZFTnxNV1kxU0NhaE9wNWY5eFV8JT0KejkzUX03bDJEWFkjSFVvMl4hIz94MU1EbEZOYjUx
Rmc9eD9eJlcjZilPUns3Y0EhZztSPFl9LWVCN1lUeldkYVdLCnpRUF5mZjtHNmdDWENeOV83ZXJk
MURJYy0kVnI+Wjw8Tj5MX214LWhMI0FMOzM9VT1XeTl0JUwyJHR7R1BFX0dWcwp6ckpiLSk8PiRL
djw0KyUzWEJZQUB5VH5qRzNJSVFxPmBDblRVWEMzKkNaOz04Uk16Y3ZySitOWGZ3c0Ixd1RVJkMK
em1ORGg9N04jJVhnNiFiOUhpVkEkSFgmIVd1XiZJUCZ2UmtjbmVTQDk8Wkc5e1liP2pyNTUoM1gy
Myp2ejVOYH02Cno0QGVBYFFrb1okMHxCKy1ETGdYMiQkYmkmQ0tpKkU+cFY7QUV2TXpnZmF5VGhW
KkJ3PjJpdzNAZUM/QFlTZ0skTgp6M1MoNmArcDBqdHZDcjYtMnIzciYhXjE+UzE3QGNsIyRRT2xm
dEI4Q09QQl9eNyphQkVfWF87O0gheG5+VCpOP2IKei1hTDwoXk5SQDJ5MFZZNDlVbjNqMyRzMVY4
M1dBYUdgZjJPKntOPmgrS3ZgP0g4MVdXODBMc3IkSkRKKWkqe2dPCno8I3U8dVRFYlVYOHNoWk1T
Z0ZTM0JvZEdgZkpfS1hub3ZAOVhFNjJST2pwYnpWI24xWHZaSj1tai0hXypma0RVJQp6IWdnVz41
OTZGZFZKSCRicGBzanY7VWFvbD4+ITArMXcxZGRlIW5mWUVpPEMySlI1WmFsYFlZMVZjMjh+XlNI
RHkKek02JTZldmA0dzxDekx2YlB9IzxMczYxIypTNCEmV29OKnc1anQ2JVE1RURkaW5ke3YheUFU
bGlvc0c4LWdjcm5rCnpedkMraXV7NH1BVCtMRjJpTCNzPzJ+fCs2ZmhJSCNnen5XaWBQa2YjZDw/
WEVSWXg7aU59YWR1MyZRfHJRKE12aQp6aGI1JG5fcFZAaXhFcSlQPkQ9fk05QHozIT1aLSswVVBT
c1VrP0RFZ2hqUl9jJEFPcUwhZmZkWStgP0tPVGYzTX0KejdwfGluNEdCdjVoeV9CfFZjZEVhXnhm
Wm1IJnskJUpyc08rdiRKeW1obSMrdlQ1cExOX0Fxe0Q1MGhfZlZlMFo7Cno0PFYhSUN3aEhzSUEj
YmJqVU1LPkhrVSYwMH00S247a18ybktZYUhwaEZNc2tFeyptdlhfejx4a1AqdyQhNTU0Sgp6JmpF
bkFsX2tZe1BHSHg5bXhGNl4kZH5+YFYxI29oYSNDSWttOUs0WWpzc35sSXY2eTMzXk4+XmZSYVZL
Y3xvKlIKemJHP1dWTnVAQi12ciRLd0x7e3IjKDZhckI3KTd5a0pRc2BEbVd+Z18kQ3luMnB7Q0lM
PmhqcXZJQGxjbUEkISZuCnp3X1pqRWRtbmprTWgrSjU8REdtcygtZEVXdyRJS35jQiVqemRqPXBl
M3B5cFBWQ1dzRCl7R3VAWFhmeHx6d2czcAp6cVhVb3VVTGBrUnFMUjF9VWxYZ15SS1gpPmYxTCYo
blpxX2FwTnFOMGhCJHQ/RTIhaVYyLX1FPzZaOHgoSiElLTEKem5KSzRKLXQmTTVybXc/d0h9R2hq
NS1AcjQ9bnB1cTI8eV5kYGNFSSNZVEtlVSlmYiZrQTJTQl5WTkp6Q1l+e1dOCnpoT3IzVylXOSh3
NENkaCpaejU7cW4kKFljKWpvOUJJQUpIJncjT0k1X2M3VEJDKHFhKUYtQVVgPDNKU1BYaEJBewp6
bnEmRk01fkFmSitNXy1XIShLWjhUN3FYIXlRRitudkpvPzlpO3V2TCpvOTFnZzZWOHkwU04wUzxz
KVI8Q0tvaGAKekFTb1g/WXY4P3MqdjJ5RVRpZ0lSX0JfU3tXX3ZRYmltXi14UDBkMGt3dW5tWEdm
N3ZRWDU0a0ZLRVp9Y1Z8d3dNCnp0dGw4UXJyPGZsKUx7bmdWZi1MTk9MTUg1R1FjY3JUdEloLVo3
fHFHT05SRlotbiRfZT5WKGxUJEElezBCd3klfgp6NTRlUFlLQDAlIzg5YEtxZWYzam1XSWwjfHFw
cTN6WitgMXReSGxuc0lCPSpyO1E3M3QtRShuJFEtVGchQChgRigKenRnYXBUUVRsMnIhRyRCX00l
fndKUEspVzhxb1VKMzQjNDVJJXU4U3EqPk90Q1U1cXdgTi0lQXw0QjZyIUpQOX5YCnowQntAfGlm
T313Y1lkenswNzlpQk9xQDNOR2ckTzVaJm5wKipQVWUzckoxXlRaezQ0TVZHQzJ3Wmcje3t4bkpx
dAp6N0kqVm91NTJnSGJKRD8rYEJqNyhkfS1wXnFuXjApcFQ4d2V7ZGV6clpALTdKRStMdm0+ak5a
Mk9CfHklX1Fgd2oKenJYY0Q3IzczRWtVcGlBMEd3P3ZeI0hwZEYzcmIpREVCJGh9Q2hCTWRvWlc8
Kioka2dsNyMxZnBrZWE8LThSTTkzCnolbStaMlQhcyFaMkZnTDQycTlFWDUzQXZBQDZeVFdpZCVX
MkhGTyNTZXkzK0pJfn0kZWRFQ2VHNVhTPnFnZXsoMgp6UmpZPnF6QWE0Yz80eXVrZWJ+R3BsI2k1
KzRZKHNYKStHP2hSPE1UYyhhJEQxUkx5TGNDU099RSV0PCMoZ1VscjAKekZ3QDNfQy1OUkNBM2ND
ciZ6QiVYYz93N0o1eXFJTVY9eFROUmxtVXRkJG5pKXZKSX5XaldtfXgtRUNnNDJkJmhYCnpWNUU2
KHk7YFE4aFF8eHJsI2tQNVgjQE1nbHZ3RlFLSzU+IyQoK0FBYFJlS1hpbiNVITwpZ0RPPDNpdT8p
KGxQUwp6OU1YNWAhWkFuPnlIYzBUQG9WUCE0RDxMbHhIWERTWlUtfDFQRCpHJWxIQ29BQyZoSFBt
X0RDZHQ9d31nVE9UZ2QKejhWcTxlWnMtJk8yTylzKnhZdD0xKSo8bHUkdHVUeTYjZCFLYXBKJj4j
RFFsSUsrckxBRihBJSNqampiQlg7cFp7CnpHTUJRXlhYUmklYlMjKWN0JVY4UVhYajNkYFBveFlj
K2lXMTgwVkB3SWVFaElydy1GZWpPQzgkVndRQE1WQDExbAp6QHlidGtySDhgXnpuIVNYRn5rLWhm
JTNIJEBHX195S2J5c3JrTyhfIU18dzMqQkpjWXM8Mkl+eUJ1Pih+dzI2KiUKenFYWm1WOW44S2A8
Pj18d2Q5bTRENkk7MTlBRylmNVY/VTF4UjhRdkQjb2c/QEJnTkE+e1F5Zlc5fU5zOUomOUklCno2
S35IKXc/QXIjU0FKbX0+JiYhcjk2ZWFXIU5zSXFndXdrfFY9XkJxazV0Y1Q4JDU7WnJ2KDU/dTck
JXs7PHpfXgp6RW5OWV9SU1JMcEFvT0JCZkRyPjhCb091aDVFZE1vamcyMD9vfXQ3e1IyVkF8Wioy
NmopIT0teHRJfHwqVEZvSzgKeig7VllARmlrOHlQamQpbyFHMGNsZFptMXBRTGQocVdfKVBMMVJO
NiYhcH00Q2ReRUkmNmZ2bl5SekdMKGVIeSR6CnoxencqViVTVkowYGFCVjtlekN4VT4wPEpPMGJK
Q2plQjZfT3FsMmsmZVJLP0tZQWoldSNufH5WSzckQU1FVyliVgp6eyVsN0BvPCNvbFZhVHxSRj5N
ODV0ajh1NkV+UDtScGtweV9McTJMPEQmRW9RKSYrUSN1fjtjKXRjI18mNER1MXsKeiQ9dDE3aGBy
XmhyMGVjZ1dnSDZgdSt1V2dDVk9KVGtZIWQqdU1qaV5AS2ctaUJhQElTZVNuIVVSI3lOQEZ3VVkq
Cno1UH5xI0l6dlVWSFJAZmx2a208TWxNT1dMKnMjYEIxRzZxPFNkKVZrUXU7JlJPLVMheDhMcDVy
VWVoVTVtWXl+cAp6Q2wwKTU5TUdpWSh8YUB1aTdiWkBmU0goRXB6a2NnaDYzZ1QqfSg+P09hUmhx
bVZqZjk5Vi0wdjdOWEBZaEIjPjQKemh8c2EkaFB2QzdIRiV1YGBYWWZETUZyTlA2WXhOVEZ0Z0VE
WU45aDgqOSlHOVYhTExzTGZJPFBMcD9yKzd2Iyg5CnpsWnZue0p2KSpHZlNiOG5PWEJEVEkjakk4
ai1tNDdxPmd1VHJoWSt1KCpJemJGNT44enhQXjY8SkFmaHUyI21QcAp6djZDPGlEK0VBSjBJfilG
JGNOMWQwQWcwfEIrOVlANVdXZCtSN1ctZWkybUJEe29RYmVCbSRDK1ZNRSpvaH4mJk8KekVpQlQ+
eSphcChBWX45M2F9d3BARmR4R0JVNXJeJER1OGpae01vPl8pYzA3b3NlRHAtQERUd09vQXw/cit6
YnR3CnpIeyM9MDNoWSFIPilCdXVoV1VrfFNWVG43NXNjK296ITw1TUBGTERRI3peX2ZlbT5WSTZQ
MCVaNjk1IT8obz9UVwp6QXMtMWlQNkJYQDRLaWxJKGVnMTtqeHp0RTlhUCZBMFk/dlZRT1U8clU0
KHFCaV9XYjVKMkM1ZTRxbDRZZlJSRG4Keih9UD4lYklqLSRFZ3c8Y0JOIXwkPD5UZ3pTajNkO29L
ayY2K1RyTE40aFRYJS1Ua3FDRHRMUz55TnooSThMXnJqCno0V0BtUjFtXmU7bzUjV2lIZSQ9TjhS
fWc1blZ1SV9oSHNKJVJvQChmdk9rMCZnQTM9QiM0Jm9OX29oaTtmKSFCLQp6TShVVndxbE0jVWxq
R1NTUSheNGoqdFJCKWN8SnJUNCsteTIxSkZaVU94Rl8hVWBUdSNPcHQmQm97YyZ9MkRtUUEKeiRi
Nnc0YHBTJn43Y1FnODZxYz1CVHNrTD9FfWVsUWF1UEZqVUBlZTloZmFramhTKDdeNnc0PFZSWCR2
bWQ+NHUlCnpKNXZjZDA2WXI3cDtDPFpILUZkXkN0dmp8V2goV19zaFlVSDQ9PjIpMiY8d09XRFd4
I1Azal9eYDk4cGp6QT8/NAp6eXwjRVFqfFQ9Yl4/N2wrZS0zTTItIU9+dHt5diNzNlQ2dEU2RzF1
TmJUSm9XIW10UUgtZE9ZSkhlYWR+ejl6Rz8KemslXnU0T210dzhjVG8kPCU/d3Q4WFdYfW9jRjt6
NDVHdlFQYyZJcG0zTVpta00xNmgkPVRneiRDcDg+NC00OzkjCnpLZlRyIWQrZGl7MGhXNmxiND57
filoaVhnZSEjPVFAZyVNUj53RV56P2lGaFA1fk88b2h6dzxmM0RIeSNiUk98TAp6dnNxT35YKjlG
cEVAbXtrYkI5fj84fEplUHc4NzR0OEVwfGBkelRQcHhxJHRUbWZqTS1fbXwldFclK0NtNnlUdTQK
ell4MjdjKXJHKkpgbX5kR3hJRHoyRFREX3RvKXQ/K0hUZ0pzZCp1dzxQN0x3Z2hUNGI5aHdyI1lg
QUNDSXh3KmNTCnpvOXtLbSQ9QmlsaD9JfThlNlBoTm1qKVdBZF89aDReN0B7NWZVczFgJG1QPEle
QSphK2pAXzgwbz1ATTsqNX0wTwp6Q2dmdnBwWWw7JDZ9d20mby0qPWpRX1QxZXtkLWROaUhSSHRy
Ul9UbTYyNWheMkEmWFNuezRTfTkyPl5LVzhFWFAKekpJdnJ7QkxiMG42WUchem42JSoqWVhnazVy
KmU1cnB3Z2JBX1ozRHxybjZAOyU5ZTZEaEdOc2o8ZHhEUzRqZVdQCnpKYUdVYjJhZGFYbDFUM0df
RE5OJWROWHcjJTdBdmUxRihTKG00SVhNUjVjTlB2Nzw4dyQoZjBZWD5SP3EzOHtPZQp6QkJ2PWY+
T0EqTmJiN094YEVtdmQ8THAqbHsyYHtvP09LI2V7VD8zUU1NJSVhYSF0JTN3bUY4Kj9aWFNne09B
U3cKejhzWlctODFsaEpTMWhBPGV0X194NzAzOUhBMm59X15WPHZKTDwxd1FCazUlT0VKQ3ExI1lW
bXdjP1ojTjRgRTFHCnojbnRTfno9KXdZOT9ySWZidVBOSmhCPkgqUEdKKT5lJDU2M2xBYmAjP2dt
XzRjUnAmME9GdVVtcU0jUmpZNkBYawp6ZnF+bmN0P1g0eHNGdDQzOFJUPTU2QUQ7fS12UTxUNVdU
JitJTDstTjlue0JuQENSc0BqUV4/dXF9MjMxaj4tT3AKejQ1Nn1AcXEzIUUmISZpc3VGRGFne3ln
eyU0TCRFNWk8bE5CRz0oKzJIRmBiUXEyek1BZFI1Z2wwe35JUyZ1LTVjCnp8N1NzekItRFlYMDYy
fj1vKyR4YExxMil7QmtNe34hRlEmdCZPR08kWCEqRVo3a197ZG5pIW1MX3clT014Vkk8Zgp6UFE9
UWB4PiNGdGUreT5hS2dUIXRIMzBaKyUtOzZeQW1iaFkkQWs0PCRWWXA1Pz5GeT1eU3ZjO3FGSylD
WWk0TnEKemVYP357WSs8MUZgZnp7cGt3ek1oMllDfG1RTG9uamBmcjNkMXxXVXsraT9QTyRPSjRn
RyRNfCNGc1c7cTVJfWglCnpefFMtYXl9YSZmS1E0b3czeitDLT9mMkw+Vl8qKiojNU5YazhETCFf
N2Q3Rjl0flczTjFiXypyZTRwd05tfHpPIQp6NX4jcmJEWC1CQiVjdXIjQz5EeSpZJD5pSClBX2BL
N25URTA5RHFDI1BFcWJWRURZMjUhY1V5S0FXb2Upan5IPUMKeiZIJSojNU4wN21yWDBYUkZNezNA
ckN3bitRVUh3dGFMZlJCentee3E2TnMwJjtqciNoNjVffHJfWWV5M0gpS3FmCnpkMT5QSkRSQER5
VkchajhFT2I2PFkmMXB0VVE9d31aOzV9cWRgO1puaVNQVj0qdUV1eGNAUGdrU2RUTX1iSytDUAp6
bUpNV1p4dnlzOVljcGFVQW1wMDNveEw8WlNzd2xDVGZhNE4mVWZOSklRRzVLVyFqaUcyT1ZydlZq
S0lkQXZXdysKenYwbHBiWUUjc0QjdDhxPm8jPlImXyhBfldfSkByaTA2RD1odE47TUgtSDhBb21e
I1ZAS3ZjRF9CT2hPUTg1Zj5BCnpqV0grSlIqZ29nR0xaWEJ7TUcqeXZDPlVVNH5xN0B2anRCTitW
ez5qVyhkUEVYNFp0M2ZeZV9FY00/KW9gS2AlJAp6ZG47dkVlfXdZamMkNEE0dWd1R0QtPWtkNXxI
aio1e2tPKyRyZG9yO2BLeUQwV0c3RXZ6OztmfCV8XjtjNTA0WlYKeiRWLTwzc25UJC0xQ1d0P0VS
OFk8JEZJLXtFSnVBYVYkQ0dwYm8yY2Q8bH1EVGUlRnN2U29IS04jJiFmZ0o8KFhOCnppYEZ1eHB1
WDEtfE10T2t2NWFZQlc5YkxeUDRQRnltdCZMNWJmPzxxRmt8NVU8bH02JUNRZX5JJG5EeXNlN3de
QQp6cWtXYUg2OTJXSWRzaU9iZG16TSolYWVaIzkkaXVrOGJSd2dmY2xYaEpjWEhIN3JUSHBSN2Zf
VVVefmFAOy1rcUcKeiR7LTgwPWkrT0pIdCZhP2lgVFA/Z3RwS3p7ciljYysjWmFKPm1FO2ZnQ0dU
LWx4Y3R5MCtKYTM1JF5lMGYpK1RtCnoydn1yQD1uO1N5NGhSZztIXjIzNkFWcz5JSUJAdGxAYXpG
ZEE8TWorKHErO1ZKUkdNOEk4TDR5Qyh4PHRxfFpJQgp6cFZ5Q1RGKGJ4czEzVENkYWY7Nl5TZWpx
SGpjSGstbX16VVpTI0xkI2srMyk3YGJAenZ0WEthazdLM3ZlQEdFN1UKeiF7UyZVNypAVX02emxm
QTdDS2RJKnctOzVrKXBmPz50e1dfZ1N9Tj42Q1Z6NHFsLVBRdkl5PXd3SGMmN2hkYGByCnohTClq
VUMyPmJpJkhKeHp7aG9lJC1eYyZgLX5EZ0pLbHRCJVF7S25XbWJ2PHQtMUxuMD1De1NpWE1VaWM2
N305Wgp6MkR7RlNNKXdIek41bTkxdjNta0RMQUZKUG5Wb0YzeHFAKkRQfFJDY0tnQzZEZ2pkYUEr
d3lxOTc9cEVoUF59cUgKenNNYWpKSFZ0P01gaSNBQyY+aGI1PD4/ZjgrZ1NqYVlyOCVHQkUrPm5a
O0Nobj1BTWBaM3RYe19mQllhOVlyQ2ltCnpMbUdDV3hYMyt6PDJjODAxTVNZSUJyczxKMjtXJGNJ
IXVTNUpWRjQyUXltV2pWYEVzQyEkdU97bSFDRjZzdDdodAp6TFBubEV2NDhuVT8/dyM4JGozZWdF
cDA+SVR9RFhVKyRLeF9iX2M/IXhaPztWeSV7TVZaJUZ4d0BpN1IwaTZNPiEKemBPdUokamdfWERm
PGROdnBLYEotWVAoflpwWFpRfGplVz8rOHN5Xis8WU9tWksyQjNVSHFWUDItSyNOPUZpTndPCnpL
fGFFT141Xn19TSgzWDchSXY0WVJ5RzUhUyZFNGIjcnMkRmM5OTc8aU5zKDNQbW0xa1hUSy0raiNw
cz1DOVpHegp6aztaPm0yRXI/VHhYTXgyTGxLWDw/bEhQWUo4KF56dU8mZWs+a3kmZW5iPDVyOVhP
XzZtZEFBUnclUzt+WDl9XygKemZNblgtMnZ+NCMzU096MTIhSndDS3N1MilhMG9jPyVtRH54KT50
aWA8V0w5WmZiLWBycUMtN3tqYGpSeDBfe3ZwCnp5bTNzJiR0LVEtS3EhcDI1bzY5eWJzTlQzclQ/
QTclcSZMJkAkfTRkNXNLcVh2bkpRYjtCT3lNblo1YWJRKFhBUQp6cjBkJnUteCpsRT9fTmJiPitO
O3tIfj4wb24xPDN0R3M2WE8xZ210ZClnSFElT3FfcU9hYSl9MEV7ZlMyZTllKGAKenRhVnozVnkp
KWthe2ltIS07MiFrJHQ3IUp5aCNIc3UjWjglaVV2KHNDOSFwOVptM2dZeThrKzZfRkFrQ0FMYD9D
CnpBc18pVCQrNHZNeX0jSEptdFAlPEwxJEpCdkVAKnpPYDtkJWI0UkZ+Tl8hTFVeMGghMSlAZ3U7
Pnk5dWltQ3RSMgp6WU11NH5qQT8rS0RmRTIxc3YpWnp3ZiolIVllQGoyb3Rpa2owT2pzU01Ce0tH
KW47ezJHKFA/dF9jNVVYRVROM0YKeitRTzg/bntlKUpjRmAmMEpLfXg9WlNfN3ZxSXw/fShyMi14
d2NUZzJ0VTxaWHYxSn51Oy1HbSEqZVpTVWFTOSVlCnpeWEZmSlkmP3phZnslU2dfLVZrcUtfMSR8
WHZ+YjYmWkk3O1pyakZ0PC0odG9qfHlqPnJGQEw9WSVJWTtKaXxweAp6QlJyLShFVWE8IWhZZk16
WEhaWkNvck0/Vj9pRCFOWmcoSWJvNjtiWWFkOGRATz1tfk0hdGpfX3Q9KUh8bV59U00KeiRqN3Nn
dDgqQlA5IXRsWHJ7STt7NnNyVGM5fEg3JDF3N249K29MYUUkblkmfEc/dDl4bE5XdiNZanY7KmE0
VV51CnpvTWh0O2tqbzR7YClST3Q4cXlMdnYqM0l4YXo/LUw/UStVbz9kUnl3Nj12bEY2MjdxXks2
emtVISg+enU5MUtJfgp6MVptNiM2IXJWbnU/PkshWWlkc3N5YUQ7UTdCQ3VkVz13OD5fYUNZfCg+
YChGI29AckQjYEtKenR2eGoqRX1YdzQKekxCfjFsQnwlfT49SFQlRjVuVDhMNj5wZEU8bWA5R3h7
KTxranN4anFmWjdIdXk5I2kpWm4rTy1AV2Z+O01yKEdYCnpsUDZqPUB3c0lIXyRZeVB6JVZRKTBE
OzcrLU5HdWUqYyFLWU1lWEt9YyYmRnJUcHokKzkhWlBDR3k0SntJflleKAp6VWdNVmRoMmlETTV7
aEp9NXNJfmkoZjIocER5N3ImMDMzU3g+aTlAQE9nelolcy1NPlZKUVJfdyFEOTZxVz42OF8KeklA
ezc8Y3ghN0BlRW07PFNXU2FwSVc2eTxJU0VXJm5PWURKZCo/K1RaRHhwVnVoa1NvMDheY0FNRjVh
OUBOazN4CnokUE1KPDEwWEUoOTYtdmFuNDsxfT49PjZuJDlSJVVIWmBRVWl5PHlRM1VyKHRjbDM9
X09vNTM8SiVTa05CTmh6JQp6e1N8Yj1yUlJxanAkYFItO3AyPyg7KzdGbVooK0prWGZyZmlPYzFV
MismbG9vOTFBaiQkM1oobXdya0Mhalg4KFUKelUkX2o9YVojSypTSVMydWlTaG8lY3NGOXdrVlE7
NDd9aEtEKFM+N3xWUlNoVz5EZjNBUHVHQGJKUF54UGJufEA9CnowMEhgO1lePmpnN3h+dDxzNmpA
NHNlND5wOH0zSXdwNHR9eCp9PDk9QDkqNmZ6dEZqP3N1O0NEJkc4XnUtQD1yUwp6JmtBc2FEKjE4
MER6fTtiIXErRWQjdG5SJUIjTUdIKjshXi1TRVZPVGJCYUZAMFNsKVc9WFBmc1Y8biglVkIkYVkK
eiQ7RWE0YnQmc0UmJmM+cmA7alhAclhCezJoOVE4JEpPLXt0Jng8OHQ/d3UmfCltM0Y2THR6PkVu
a2FHTDE/MGRwCnoyT3Z9SkRSSnIyTVJjZUk9Jis4JHFFWm4tdjdJTnd1eHpvUmo3akZlQGRvI2hy
RlhENCE3P216QXpHI3NqaWxwOQp6YCp8cy1MJHxFbnotcns1KXkxKlByfn0rRF47PiVxYmt1SXww
Qn10OT10cn1BVnAqSiQ7WSo+c2QzYEZNNi0mY1kKejskaUpoT21kbSNsZzY/KnlTcEdSKVdZJVBE
JF9QQmc4JXJ8fEQlMiR4YyQ2MURqcn56aG1VNHkyXzN4Wk9DbmFYCnpTcSE0QiF5czV+R2EwbiFg
b0BhZlRIP0FtMyh0dmQ8IyRAPWB7PFNYWGUwMENIJCg/KHRWfW5zRmViSlJSdU9MMwp6JDZFVXw2
dHlYTUZteyFoKjsyQ3kwSzMhIWR8d2E0dXpVYzcqPE9QZTxvRzRPMHBLSnAlc1c8Q0FadkM5byom
R3kKej80XzN3TSk+fUUhOD9CUE9eaUo7N2F7IVJXejBtUWc8S0c/WSshMXlSVFJDQntWbmsxMX0w
YjchJEteITwjNyVoCnowR2FCdiNpZmdvamcqaGRBbWludGAobGlOaEljY2EmMnBeZEJsakg3YWM4
cUc/cytfSHN3VEBeZ2VCbkpRZldgMQp6P096RnVETjw9eW1tODNlT35eO0F8RkJtV1dOTm96NDFr
PWgxQUxmdHc2LWtuNEltJTBJMWZjVG4tTkQ1aXVDez8KelBxRmxJNll7WU9gUGtaQGVFZEpMQktZ
JGxIVTJ9RHk/fCtqT31aRTF5KXk0bnpoQmt7LW11K3BCaShfcUt9alkjCnomSUlEMmdaWlhVPEYm
ej1FVnJKbmpXfj03SmBmUjc9PStYNVN1O3stdktzbkdMV1dHNGtLSjQlJWgzUGlGYDROJQp6cX5w
WWE3bU5lP0NtKCNZcEZRKC1GcFpnQEo9R1NNRlRXeCNVd1REYyFrKFpaJTZmOzRxKjJBcFEyUU1s
VVpweCUKejAqd1liUXEwbVE0Y1NeJkBeQXJgeUVfcDhnbUw+MTVrOWFLRzF6VnZBdWtLKWtYT3Nh
e21lNGU/O1Bte2g+NT1iCnpgLXMqNXt4d2xzNHRHI29IVTMhckUoVz9eUk1gYWdpdlM/Jio/ck1C
LTByPmAtKjRSJVhaaX5XVUQ4WmYjdG5ieAp6JTVORUdwM2hIeDlFaHQxdnFCRFZhOXgoPyQ9Z28w
QSREXkFPZ0MzKyRIWGZgS2JUcDlCNk1lWGV4Znt2MX5xcWsKemEoanFYUUVwJWB6S2Y8QjlyNXp1
eWpiWDs2eChQa1RMMl9HPCh8SjRhYU9KSytsNklQb3p3UmlaWHk9b21SUip6CnpvJHIxVTc3R151
OSgofFZXblA8eE42K0pKSWZhR1ktcSROPElzTyEkbHNDMlRHfWVDK2lwISQzMHAjTkFuOEVBKwp6
bH4mMkJ3QlJZKVl6YSo2IUdwNXFAal5iU0ZzeFhFaTJqKUVjMXloY0B+ZT1NdWZqMCVhPWQobTkx
U1U0dkdxfiUKemsjWjRoeE93RGJoREdARitTYHZnejRSKCU+NEp5bj5kc2xuKGdoZlp7e1F5dz9Z
Rk17eCkxbSFETit9VDU7YzxNCno7JkQ4OylTZ1VqNyl8T1Q0QE9hPWVKZkMpUGtDeGxeZCQoO2hk
dllxWU5KbUAoanc/djMkI3h+KEVJfk1meForMAp6aX4+ZDUwMER4dWFVNCVIQlk4JWlvMzB+RHEk
dSZ5XipodiY0dilDYys0Nlh0Uzw5YWRQXjhHaSE/aXcoK348N3YKej9jQVBvNyo/QlpkIT5+M3te
eCU4ckMye01VMys+ZntyRW58QDd2JGsjaWRXV194RH5JZWBAYWdeX2BjeEpJa05NCnpANk9YdCU9
XkNpUHZiUj56VEI8SCtPZEVBX31qUHRQdjV1eXJHRVkhdkhxRjJvUVZecXI8YmpzJWl1bSk2RnZF
awp6PkJyUjNjX3kpbmROQkA3e25EZW9DR0ZQaj0rPGBXQE8keGdEYVBCYilWQ0NHbFNjc2V5X1FK
KHsrKT5wNzQ4MnwKekVpKlJXd0E9Ml4yYEY+RXtPSEhVWikqRXhvd0pQMkJeaHdMSWR8akIxWDJz
a2YyUSRfP0pjKGwpRH0xJWdedEQxCnpXalFEQldZfUxfOUp3OFQkRnB4Yz8qYUJze01mZVBXalhj
JXpkcS1Ya3loY15jK2VjVys9d2V0NEdBRmF7QFReQgp6clVTQHNKZEBnd0N4WSQkUFc7PiFLLXpM
P15JWjQhaGdaNVlxeU5xU1hTNWUmO2wrNU9ePC09THRuWFRtK3FEcEsKelpSelQpbjtyVnZefktI
WjJre3tMJjNLcHtGSkZ8dkZ8T3hYLT1GUWBlMykrYmNgOXFNN2k0UjliXnk2REFiXzBmCnoyX1Rh
LXBZMn1ndUZwN218TmhRYV93TjRYPyhjOFUtcUx6IVZYSiQ4YEJLO0JkQFNDVTxDVFB1YnFEWDs9
aTEtWgp6JVcqaUA/VmR9RmolI1dzcXhUKlQ3JmtmLXpxOVNuVyE3YGRie04qSTBNZFRlbXQjLUwp
ZnN6SXUwKWBrMz9TcUIKekNmfm1yIVRya0E/dk04ODZ3aDZ7PE1HMCRyPSNDTG8+bDFOb3FmKDlB
M3ErS1o7cCpJWkBscjwoSz5TSU13SUVZCnorUGQkdjI5UGBQeVVfanVSXnJnTipYUWk1WUNyJCV2
NmxNZ0tWZmFSe1VyQTZ0dntSfTY1NEhfa05kcW5ISnxvZQp6YVc1Vl8rV0spWHVLMmVYcHs2YkdZ
QE9AQTUkcDI3PiZMfnxPRlleTyh0YUR9RlV4VV8+aDt+MVdCdkk0ezJNPkkKeiNrSXdJLVQmSylf
MmJEVz4mR3VAO0Z4YWU8VyRoUWI7T2hTdWZAZXRya0JlYmtzemopNkZyOX56MkNEejxTU0Y+Cnp3
OGUjXnk3cVFHX09qaU5pQGMxTmckTnwwRmNKQE91WVVWc3l1UX1LKSVuXyRgNXNQYHclLSRxTSl4
eH1KPE5XdAp6KGU3aF5QSmtLUlgzQkgpdnliPl4kb1ZHWVp+TFBVekNaclpkamgyZEs2M3pCaiQ8
YT97Rk9KbUheMjZeP3JVJHAKeio9XnNTU1IpKXNiPHtTSnIqQWs0N2pzcWAoXnQ0XjhSSz81c05S
Wm9OZWR0MldqITllVUxYSHcjezFEPkY3ZUR8CnopPTllS1pAJj9UNCpacFk1NV5iYygzbF4jMmhq
KXxkJEdsREdIe0lWWn1SPSsjZiNsSF9sNytId3hpP0UkQWp6Iwp6eUkrflNpPHV2ditsI0d5T0Ur
U2hgX3FSbDlRQlI9PD9WVmF6X2FsUiE9S0pNUUdSVzcyKit6amt2I3N+Q3ZveT4KemQrM189VGZH
dn1Eey1MUVFITm9UP2BTRHZMT1ZmenlYIXlUdztnbC1YI3xZM0AjMThDJWJFRHZkeUR0dXUjPF5M
CnpAYVlASm1kNEhIVXZIYX48NFEmQ1lESURVZTB2YGN1bT5MPjlFTFMzZlY4YDhDIUBifUh9MGZv
Kl5EUVRfdX1OYAp6KWZ2Wkx6Y01GKXc3ZFF3MD5xYlFvT0FWaD58d2t6PEpHVFE3K0gmMiNeOytI
UnFvR2ZGVWEoTGtKZ1d8VVZKbSYKeno4MzRxP2ReSCUkTFZgR2B2M0Riek8/VX16UmptPy01OCY1
U3p+ZzAlKCh+dnVNYiQ0d1RsPj5ZPHUyako8KTRGCnpJRkAhZTtMem5sWUBxcEo+YG1UX1BfLU4x
dy09OH1kbyEqfGN6Ti1LP3doKjwqTj9HaDwrKzhBV0FuLUlfMllBSwp6N31tIUFqcmJldHw2ODJ3
P1BeQHtFNXFgZWZBamFjMyhNPT5eQHI9ZDwtVUV5ckxFN3N7UGZAV3dJbHU+VXo8NG0KellWcnIl
P2ZIRks+M0tyYDtuWXpHYDttRWYrZ3Qxe2RFPjFvZHQ9JmFXJFNKYHE5V2MkODJSQWBAeHNSdVBX
RUZqCnpVMzs1Y1cqeGZLWmc8b24rTFBadXkzSyVhRj5qOzVfJiRnSHl6eTxsQ3MwLTNuRkdrTjx6
dTQ8KHtiUTk3QU0/KAp6OT9SKERAdSR+JmhrbiQ0SmdMN05tO1ApSXM8UiNnSHNXP2VtIVhHWXdM
PVc8TVc5JmlJaDV1ODtAeGdAO1pDPWAKemMmRlFuWXE+OGt5JUVRKHBDNDRseUdzfGtafHEkaUpz
Qk1HNGQpaj4/eW0yPjVYWm18K3NkflhoY2NYdHQlNHNkCnpUfFY7ZXZqPmlMNypeamh6RCkwIyph
ST9lWTFoaEhpNjxjc19TPn54YGpAc0I8aDh4b1NJPXBDS3xWZz5GcyNYWQp6VTBiKnFkJE44IWBL
aE5xZWtUcU9gUEIhbkpvV2o+UGg1eTZQIy1WK1diI3VfZVowMUd2KWhPZTdPKG5vPGlsI2IKemo2
JTJuQEJYWWl3ZkxhaEo5RGh0S2VHflYla2tEZWo8PmF5P2tqN3stOClhK15XamZpS0UyZF5lZD08
a2xlY0s2CnppbkolVG4+fGxQK0hFaGJGMyRgZ2t1QUZReFIyWDI/JklZTURTeTUqWE41OVoqaVpS
IStvU1E7VFc9ayNCT2BRNwp6dU9FTSYwaV5BczhtfUtgb3N6Szs+Iz9DclRSI3A3QWFtRGBhZF9r
WCNme05BXjhVKDNJSzNLQWBZI01CPEs2Z3MKejg/N0piWUBpejcrNCpCMWNRQGtEc19wVVJvNW8t
MGRFWUtiYXhUYFZBTkgmdHZqbVJtX1dzKTErbUFvQnYzc2lmCno8bGImdiE3VFFVWm9WQTsyYWlx
bjJidzs8cWxwaEA5cmAoT3YoYm1nZC1qJkpGSytmK2xLa3dLb2BqRWZ5TE1yPQp6KGBSRTNYQjwp
Y0FnPWF5PkdZR1l4NjZTYXl2NU40NWteKlQ/WnN1Jl9lV1JZSkw7Njl5JjNoaXBWZ0tqdzs2bF8K
emBzY3FZSXc7enwxaXJ1bSZ5KmclYEBRZVJOdXNlb15mTjlrNCRSd1RHYDtuJXttOGF1dFgpfi1V
PD10bjUhWWhOCnokRSpgYCtwVHV2TiFDVUBMME95ZTFtKW5+NGkzWWJLNHh8Tndkd2NROylMRkQw
TklNTHVeRiRPYWxmNTY1Y147RAp6QyFmfHV2dWdgQzxGbXM4JFZNRDhiMiVQbC1gS2wwe1VlWTN8
Rkt4PndZP3g4I3lKOCptLVRwbnklVUVSWkFRSj4KejFJTiZ3K3dFcUJsZ2F6fUpIUCooKFNPZUAr
fn1eKTJfVG12SUpfMUlQfGFHLWg0czd1YSZRPmRvQiRGfXJzZjVaCno9a31rVTgkaX0wdn5KN14j
Nk1obXE1SE1pKCFBSlN5cyo3WkVpTFlUYj8yPmtrO2o3clZzPW1NY0R0d0ooen5hMwp6eH1EWDdr
M1drNHpZJHlnUHNhSGtlYW93SEtGT2NXY29wfUpORW47KF9qX3VfLXxzS1N7cl4hcyFSVDk3VzZT
LXEKemd7WkNuQ2YjUzwzLVoxMWVlWStwZSo3czl1Wm9MUWIkaFhRWWJXMENLZ3R4PjtffXtHR3Up
YjI5RCZ1e2piTCRsCno+TSpGSUVZSFIpSzBOOVJNfGBlYnRZZnIoalFlbHYjSX15eThmfW9kNkts
c09QWnJ5USFQP1RUKmg0aWVmTmFEYAp6MGhpLVNjNW16dFRSJCR4VVhiJSQ+P1E3QUtCQ0hfS1hv
PTxqYFlyY1RuUjdNazY4bzkoVlpROWM1UHwxeVIhRGIKenlVbUZzT2pxdU8meil+fGA8dGlaQj4j
ODtpYTdTXjx1X3YyIV87emZZN2ZRS21rPDUtQ3B7TX09bkVAUHVWdFJ4CnotQWl2aFVDYTJaKC0p
NnYqQnY7eF9RMWpLKzI4dFRyKDJBMHdmWFNpUXNETzxVbFAyJXdwV31kKSglT1g4NEJYLQp6R3U5
cEJJdTg5X2szVl9qYC0kS0dCZnN2RzFuTFZzUXZtcntncFV6dkppeU1uYm1yKGJhcXtSV2E3Mlpw
MmlCZ0EKemJTTDhoYWI1c3ZfcVAkZF9TZCMldTM8KCRfVXdTSWYkPjc4LUd3LTBWNVBnKVR8TV5w
PXooP2clYF5UdjlrMEshCno2I0oyUDJYMktNSjsyNV91NyluLXkmdzx3O35CYEQ8PTxUWCpLPTsr
JVlYMD56Q1JlQEVDMTx4YX57MGZgM1UjcAp6X2htWnshfExCbHdHP30lUElSa3IlbF5acytSM3Jr
V0FFQzl6MDx3KnQ7RWtiOV9NPihGSDlZV0YhM0YkQGpgMHQKemFEayhPe2BoOFpGVE9NaUFtamZa
XzVTKEE1NCsyYzA/NSo0YlAjWHRNS0M5cXw4ZVpicTAydj9oJHArTjVnMW5FCnpsRUNmIWpNYUYl
YVBMZ0ZiJHFBMCpEa2pkPVdSP2NANWNFZ1UlJTc7MW13OWA1NDJVcHRjVWZOVmxULTFfaDtRPQp6
YGxta0l8OUB1ZCQzWmB+b2ZpP21jMHRgWCU4VWNZXnRaT3hlVkc/UCtWXn1xRz1MMSlvN15eMGpu
PEYqdjNefHMKelE1O2tfWXlablojY2MhNFFYRkVxeUZZOUxTS0E5UmJPVE5NM0QzbV9uKEtTZCRL
VClsYH5RUWpGWGpwMzJVNEhrCnp6YVBZVGpyKn5Pd0xBYUchRV4yMVc4SlQ8fEZ+T3Q9WHwlYmVq
KG0yIyVtb2RjVU8pJClhcCNua3BTPVlvZDVDNAp6KWNHSWR1QkgjYThoXmdNZjlZNUh8TmdKZGBN
WWw2cWI7WjZOXyVsX2pNeWJ8Y3BkWktLYVB6UGs7TDJIaz07amMKej9QNmRMPDQzbTcmdmBrVyhT
NDUrJUhnfHheIWRaQCtQU1RkJH5wVzZ8MEQxVkNoJHhGPFkjNW13dU1ncm93aCZ2CnprS1R7MVl3
eVNWQTFgIWdlPD09U199bFk7Oz5wLUQrNzd7Kndge30lWSY7VXJ5SUhweTBweGYqWG0zeUtsM2pf
OQp6RlVIezs9T2M3bmhePlV7an1HUDdrSVNiMUFXbEdocytsOHhOO19CTU9kUiVkWXhqakN6V1Zn
MUszSDd1SzMrUTAKenl8NDtXTFZXLUxFNz9nekt+eV89SHB8bnU4LUhlYmU8JHtXI01QR0sxakAt
cCpxR0cjZF9JMmZBT0g1Q0pOYCVpCno7VUM2Y2tUMWA/Wjk1Rj5lbXJyVHdZKz1tbGtVUVV7czdY
eF9rMylAe2Iwc1A/ZD4rdEVxJkQ4aXR+WmBtWXcraAp6eyYtPW5kdHR4LTNGUHxYe0oqfkViYFFW
KSU+RFFxWThUKFJGPihJTHg5P3g8LXE8OzheRHRnWWArbUd5QE1lMzkKelV+Pkp6Sk1sVUtAI14j
T0hgP0FXd3YjKDFtVWJANHI1UlY3WW5PY2VKT2p1P0RXQj1YNzdDfTJDRXdqJGkxbE5mCno1QSRC
VXpaIWRMVXRhOX4+VldtKnNhV3NiOG45Pk1aZz50XlJeenlyPkdNRU4jMiR0VkB1R1I+K2Q0QU4j
WDB4cgp6Nz8te0h7clRhKl48ejVfYTRrLVd6YTFCMjdfeGwwdj54bGFHdT9+KCFgNj4wM2xCem5M
RUB6WTU4ZUdRTzQjXzEKemZBX25HYGFiSVh6Wj10ZygzZl8pKSQyY3d2JT0lOyhYelhHd21XKDNU
aXhQblkpJn5Ibl5qSTdZOzVRfHxEKjRHCnolSF5LRGE8aCY7SUklWVV0WUtWTHRWYG11JXpleEdz
Uzh3MC0pPUxgUUVBdThTJjZJYnR4Um5uWThQaX56c0BoKwp6KzM4TmlhajZeZXxGKk1zQk5HM2Vf
Pm8pamNSNX1UOXJaQiY8UHE8T3lxZnk+K25qKHRtaGlyIXorWHhMaU9zSXYKelBPS0NAWSE5YUtw
eFN+KmQhXipiPHdQN2hGbDBHNytHODw0U1VrJmQmZ2JLYSYjPyRBcXJtTjVgQlBJXzdLU3RtCnpx
ZXpTa0Z8dmZWOWFBY2owaEVNZE5kIWY0MG1yY2dqVT1LZDApYz1paUNfcGN3dmsxa3AjKjZPdj9H
Y0xDTCUoPgp6dSZBc3A4VzAtN21JVjtnRUZuZSszMXBpbVVFfS1fXldIRDc+ZVBNcm9faEQ1ZCV5
MnxyfFFDPlBhLUBCUkxnVmQKel9kez51LTdvUE9LTXdhRjJFdH17KHUta2teUnReUHYqUj4xY2pV
I3lyN29Gd0M7WFUxbF5DSFdpX3xMZHEpYytXCnotbGJEYWB5NE05NDh4MHQ4VFUxM007aSpidUpI
V21xSylfPWpBNX1TVUFXcCFYSXZ1dTxXPGpwcj51UWBUSEhmcQp6VG54anBGS3VBcm1BaTAoaX5v
Umh3MGVfPm5Wbkp4aWNPWUJ6Rz5HZ1FUa3opekM9b3EoUG9US3JRJERCNGI9bFYKend3JlZpZzUw
M0F4ZDJQfV87fjdKS2hpREtNP3Q5al9sNjIpdXVadGNTc1JNNypvY1ZDMiVHTUpqJjxCRWxMbior
Cnp2YzV9Y1dyYnFIdn1iNjxqTmhuPVZEaHxLWExWNyF4eExUKDIjc3toTnBrfE9XLWNlSHtsWCly
THFLTkdwVHo0fQp6YD1sMmRHUDZ2dFo9aylaWTxaWSEqc2AkTykyKmVhIUprKm5SSzJYOEhuczh7
aWE8bWI2SF5mZT5fWGQ5WVVwXlIKemFeUThfRkore2BjSDlpalV3c0tQQGFOKk5ka2tBSHZLMj9s
UDJvfiZyP31YKm8mNUdteXp0QjBNQWdMIzleVX5zCnpuNk5xaiRmZ0Z7ND1sQHJXN2w0PjF8R3NW
JCVGS0QzNiR8NCF6fjtweVpgaz8tQFNmK3l4VyUqa1ViYGVRTnwlPwp6Snlzcit4JjlzN3t0QVAz
dHh+aEtDSkRIem9aTHB6Q3EweElCYzZ8aENFKC1wY3U+cXMhWjN6K1p5MHoocXZEI2IKejc+PWp9
VCsoISVhQDN6QSErOUh9S0VDWWs3Y01HX14/UipHeX53QFMxVmdSbyU9JG05UW1oJSVRTTljcGx3
UjdyCnoxMHZWdjJGTDMxbj42VDVhLTl3VD5KRE9hMzJWSFVUaFgkeUk8cXg2KnY7OHVicGtya2w7
PT1YQGg7SDhDJVhXYwp6YzVZM0JvZ2g8KlRqVypPWmJZPzt2cnJZZntNPHl4OGx1WGhLJHd+OVIm
emUhPEtfOD1OKE9ER0RyQjtCJGExbGMKejxMUl8kZ0RWQ0klY1ZNQVd6PE84KXNJTnhaTlUlV19s
VGtQKEQ0IU9fbnFDIWFwOHhYZyU5TTQqPUM/Z3kpNlp7Cnp3dVcrKkI9WVF+MH5henFwdHZnc2Rv
YGlGZG9pfHMqJXorZmV+T2cxRTs7Z1hvMVIlJEFVU1BJaiU/dmptM0ZxRwp6SmFfKGo3eTM7cF9Z
cGZzQ0FxYjhTfm9AMUl7RUdEV2tfWSFDO2lBfERzSE4xV01OLUQ/WkUwU0BHKi0xcC0/JHsKelE1
ek42LWo9TkJwe25+VCNPbk9lTFBIRl9qbzd1fE9iOUhoOXtGfGRPYkp+K1NPekMmKmxaS1ZaPUYk
bz11T2pvCno1RV5gRWR8aHAoZWA1eXNjcGNRXyNSK3phVSEyKnFyMlpnMUFlSkJATyVnfmshRCNT
eWA3dl4lNih0N1NfYkgqJAp6RGkqUmQrN2l7Nz5XXkhDUExTQVVGSENpTj1kbEtrJEQqVG5uK1lV
T2RiR3dAYT83KyYqM2IrK0U3KjIyWipEZHIKekA+VGxLUUJuS3BuSDdWWEpHMEdDb3dKSVhTPlk8
Qyg9amZ8b35LUFJEe3JXZE49VWw3UVIkcXZmdVVpUWNKb188CnowfGp4VVlnMlElI2tDdnFmN1ZZ
UjtRTyQheWBOfHxuNVFgVlY/OGFERkQqSCVhMWo5TU5UbUNHQ1FYakBqZ0gkRgp6JGdxYldRUilW
UVphWjc+bTJfN0pPI1M4bjdxXlg0JFVOenNRVkp3VEZwMVpQSH0kJV9DQVhGbG5FOygrfDRJIyUK
eiN1Wn1TTFE7RmxEfGJROXVgckVLIzQ9e0ZQal93MXYlVDl5eEp2PiZFMEM/RWJRYVkxeT1GIzI2
Ozx7VD5EPT09CnpBUHw5PkwkQHN7UCs1IXt1TX5JMzZzRW1RbDg2M0hpeiFsR0AyT30/ZnI+e29w
VWItRkZJMEMqSiptX3khQlNMbAp6VzBNdSpKXkBKO2k/by1pe3wtdnFrciF3Mzx+e2JoeXE5THNf
Q0t4dF9+bSEoX0lpKW9qT1dAdnE+T2lpJjVyVzEKelJoVXJnIz1hKkpVNUswWlI5bCVPdmVkVSMy
XnBWQ1dIeXh0ODltVmJKdChjMXN6JFZyNGxnMjtOZ0ktcnE1Z0JPCnp2I3NBdk9fYXl2MiNeT1B3
XlRZKUxkKFM1Q3ZsTDxqKHl4UTFvOFo1ZDVFPW0mKE5YUj5FbCVUOUlKTW5BMzVgRwp6PHd5b3gj
RGc8cURsQlIlV1MweCk+RzJBKF5eKVZZM3AlfFV0fDU5U0pPN0cwUH1OODxhQihfVEJZTSQySW4r
fGsKekcwYlJFOGx+azt2MSohdjNudnZLQEl4JE9NKU5jRll+eFVaTEFGOEJvMW1ic0xwNzsoO25M
UWg0UEJBRks8fWNXCnplS1A4THNCcVhuVTNlNE5nMm1Ceys9OHcpdkFCOXhDZW88Zzg+MkQoU3Bu
eDdYaW9oPSljcTd6KXNJaUZ5bUxrTAp6VDxHO1NYKEVKb2E8WHZaMU9YPlhlRn5JWj14N0YzNnFT
JFFhKSp+PDZ2NW49N3tpVShpUTR4Q2ZqRSl0e00jUk4KekQqJClPYEExcHB7blk4S0NAbHhAVHgq
XkBlYygoeCo/SGxfbnAxSjVVZiFBXzAmRlNrd0JIZiFud3NYajJiZk9uCnpkQGImanduXng5aFcj
PXFkWW9vbWJqe3NtbTMzQVlFKnphQXM7Y2wxOHtwMjxDaUEmRUBxIXhWUUpBflheP29wPQp6WFpF
cCZjcmVXYVMoUyU5dzQyUj1qaF5TckUoKTAoKnlGOGg4QnFQXjljeGFZUDBaSFg7Z2dKdkF0c0Yt
a2dqTFcKenk3WkJvTCpIeT5ZZGhAaGwweHEwWjJzR1NvMClCWnQ7TUlBQUdpQTdtcmlEOGM4RXRN
SzlGeXd7VSM+YVRUPWQ1CnozM1U1Y1UmLWJXJGliVzIlWU9NZih5fEU7R2QzPml1JmRzP0pvczBX
VH1xTnNQVmt9ZHQkK0NnbjJ6bms4Kk8odwp6ODJOMiUmPmlzYTBMdjl6Sjc4bzFgdnwhMmZWKG55
TlB0Sl5SeyNTNzM9bjwrJFB4c25BWFd5TTFqd19OREl+fjMKenpZJWZ9RH14eWZGcmZtYm8waWM1
aD9QT0MzfVIoNHVlXio3el5wcntOZFRlQGg/UE9DNDYxI2dgMWxuZGc3TytECm51WXZMIVNvRS01
c3F1ZVFnSkQzcnt2S0FzUkc3dmEwZ3Z4fnprT2A0dnBAWEBAMjF5WQoKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3Rv
bS1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MWI2YWQ2Yy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Vm
ZmVjdC1jdXN0b20tcGFyYW1ldGVycy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSAr
MCwwIEBACi0gICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tcGFyYW1ldGVycy5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAyYTA3YTJlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSw2MiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAg
ICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IHRoZSBjdXN0b20gZmlsdGVyIHJlY2VpdmVzIHRoZSBj
b3JyZWN0IG51bWJlciBwYXJhbWV0ZXJzLjwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJl
ZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAot
ICAgICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBz
dWNjZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgIC8qIFRlc3Rp
bmcgcGFyYW1ldGVycyBvZiB0eXBlIGZsb2F0LCB2ZWMyIGFuZCB2ZWMzIGluIHZlcnRleC1vZmZz
ZXQtcGFyYW1ldGVycy52cyBhbmQgdmVjNCBpbiBjb2xvci1vZmZzZXQtcGFyYW1ldGVycy5mcy4g
Ki8KLSAgICAgICAgLmZpbHRlckEgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3Rv
bSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LXBhcmFtZXRlcnMudnMnKSBtaXgodXJs
KCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVyc3BlY3RpdmUgMiwgCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRleF9vZmZzZXQgLTAuMDUgMC4xLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGUgNDUgLTI1IC0xMCwgCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwLjQgMC4yIDAuNSAwLjUpOwot
ICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJCIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzJykg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCks
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0ZSA0NSAyNSAtMTAsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlIDEwLCAKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGV4X29mZnNldCAtMC4wNSAwLjEsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwLjEgMC45IDAuNSAw
LjUpOwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJDIHsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJz
LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1peF9jb2xvciAwIDAg
MCAwLjUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlIDIs
IAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0ZXhfb2Zmc2V0IC0wLjA1
IDAuMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRlIDQ1IC0yNSAt
MTApOwotICAgICAgICB9Ci0gICAgICAgIC5maWx0ZXJEIHsKLSAgICAgICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJz
LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRleF9vZmZzZXQg
LTAuMTUgMC4xLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGUgMTUg
LTQ1IDEwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXJzcGVjdGl2ZSAx
LjUsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaXhfY29sb3IgMC40IDAu
MiAwLjUgMC41KTsKLSAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAg
ICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImZpbHRlckEi
IHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9
ImZpbHRlckIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxp
bWcgY2xhc3M9ImZpbHRlckMiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0g
ICAgICAgIDxpbWcgY2xhc3M9ImZpbHRlckQiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5w
bmciIC8+Ci0gICAgICAgIDwhLS0KLSAgICAgICAgICAgIFRlc3RpbmcgdGhhdCBzaW1wbGUgY3Vz
dG9tIGZpbHRlcnMgc2VuZCB0aGUgY29ycmVjdCBwYXJhbWV0ZXJzIG9mIHR5cGUgbnVtYmVyLiBZ
b3Ugc2hvdWxkIHNlZSA0IGJsb2NrcyBvZiBjb2xvcmVkIGJhcnMgd2l0aCBkaWZmZXJlbnQgcm90
YXRpb24sIHBlcnNwZWN0aXZlLCBvZmZzZXQKLSAgICAgICAgICAgIGFuZCBjb2xvciBlZmZlY3Rz
IGFwcGxpZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS10cmFuc2Zvcm0t
cGFyYW1ldGVycy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJzLWV4cGVjdGVkLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE4Nzc2NmYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJz
LWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi08IWRvY3R5cGUg
aHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgZnVuY3Rpb24gcnVu
VGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byB0YWtl
IHRoZSBleHBlY3RlZCBpbWFnZSBvbmx5IGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQu
Ci0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgIC5ib3ggewotICAgICAgICAg
ICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAKLSAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlk
IGJsdWU7IAotICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKLSAgICAgICAgfQotICAgICAg
ICAuZmlsdGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgx
MDApIHRyYW5zbGF0ZSgxMHB4LCAyMHB4KTsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6
IGdyZWVuOwotICAgICAgICAgICAgd2lkdGg6IDE1MHB4OyAKLSAgICAgICAgICAgIGhlaWdodDog
MTUwcHg7Ci0gICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGNsYXNzPSJib3giPgotICAgICAg
ICAgICAgPGRpdiBjbGFzcz0iZmlsdGVyIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJzLmh0bWwgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTM5NDU2My4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBh
cmFtZXRlcnMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAgQEAKLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgdGhl
IGN1c3RvbSBmaWx0ZXIgcmVjZWl2ZXMgdGhlIGNvcnJlY3QgdHJhbnNmb3JtIHBhcmFtZXRlcnMu
PC90aXRsZT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgewotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVy
ZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQo
dHJ1ZSk7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5U
ZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0
aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4KLSAgICAgICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0g
ICAgICAgIDxzdHlsZT4KLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBkaXNwbGF5OiBpbmxp
bmUtYmxvY2s7IAotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmx1ZTsKLSAgICAgICAg
ICAgIG92ZXJmbG93OiBoaWRkZW47Ci0gICAgICAgIH0KLSAgICAgICAgLyogVGVzdGluZyBwYXJh
bWV0ZXJzIG9mIHR5cGUgdHJhbnNmb3JtIGluIHZlcnRleC10cmFuc2Zvcm0tcGFyYW1ldGVyLnZz
LiAqLwotICAgICAgICAuZmlsdGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LXRyYW5zZm9ybS1wYXJhbWV0ZXIudnMnKSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSB0cmFuc2xhdGUoMTBw
eCwgMjBweCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApOwotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICB3aWR0aDogMTUwcHg7IAot
ICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDsKLSAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgot
ICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9ImJveCI+Ci0gICAgICAgICAgICA8ZGl2IGNsYXNzPSJmaWx0ZXIiPjwvZGl2PgotICAg
ICAgICA8L2Rpdj4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAgVGVzdGluZyB0aGF0IHNpbXBs
ZSBjdXN0b20gZmlsdGVycyBzZW5kIHRoZSBjb3JyZWN0IHBhcmFtZXRlcnMgb2YgdHlwZSB0cmFu
c2Zvcm1zLgotICAgICAgICAgICAgWW91IHNob3VsZCBzZWUgYSBjb2xvcmVkIGJsb2NrIHNsaWdo
dGx5IHJvdGF0ZWQgYW5kIHRyYW5zbGF0ZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0
LWN1c3RvbS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3Vz
dG9tLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgzOTdkZTguLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgot
ICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IHRoZSBjdXN0b20gZmlsdGVy
IGlzIGFwcGxpZWQgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQi
LCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVy
ZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAotICAg
ICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAg
ICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNj
ZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgIDwvc2NyaXB0PgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRl
c3QoKSI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcu
Li9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xv
ci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKSIgc3JjPSIuLi9yZXNvdXJjZXMvcmVm
ZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20o
dXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpLCA2IDExKSIgc3JjPSIuLi9yZXNv
dXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LWV4cGxvZGUtZGV0YWNoZWQudnMnKSwg
MyAzIGRldGFjaGVkKSIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAg
IDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVy
dGV4LWV4cGxvZGUtZGV0YWNoZWQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29sb3Itb2Zm
c2V0LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMyAzIGRldGFjaGVkKSIgc3JjPSIuLi9yZXNv
dXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSkiIHNyYz0i
Li4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciPgotICAgICAgICA8IS0tCi0gICAgICAgICAgICBU
ZXN0aW5nIHRoYXQgc2ltcGxlIGN1c3RvbSBmaWx0ZXJzIHdvcmsgaW4gc29mdHdhcmUgbW9kZS4g
WW91IHNob3VsZCBzZWUgNSBibG9ja3Mgb2YgY29sb3JlZCBiYXJzIHdpdGggZGlmZmVyZW50IGVm
ZmVjdHMgYXBwbGllZCwgZnJvbSBsZWZ0IHRvIHJpZ2h0OiAKLSAgICAgICAgICAgIG9mZnNldCB0
byB0aGUgcmlnaHQgd2l0aCB3YXNoZWQgb3V0IGNvbG9ycywganVzdCBvZmZzZXQgdG8gdGhlIHJp
Z2h0IHdpdGggbm9ybWFsIGNvbG9ycywgNCBzbWFsbGVyIGJsb2NrcyBhdHRhY2hlZCB0byB0aGUg
Y29ybmVycywgNCBzbWFsbGVyIGJsb2NrcyAKLSAgICAgICAgICAgIGF0dGFjaGVkIHRvIHRoZSBj
b3JuZXJzIHdpdGggd2FzaGVkIG91dCBjb2xvcnMsIG5vcm1hbCBibG9jayB3aXRoIHdhc2hlZCBv
dXQgY29sb3JzLgotICAgICAgICAgICAgTm90ZTogV2ViR0wgbmVlZHMgdG8gYmUgZW5hYmxlZCBm
b3IgdGhpcyB0ZXN0IHRvIHN1Y2NlZWQuCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZh
bGxiYWNrLXRvLXNvZnR3YXJlLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1mYWxsYmFjay10by1zb2Z0d2FyZS1leHBlY3RlZC5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzhlNzFmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLWV4cGVj
dGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4K
LTxodG1sPgotPGhlYWQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAg
IHBvc2l0aW9uOiByZWxhdGl2ZTsKLSAgICAgICAgICAgIGxlZnQ6IDVweDsKLSAgICAgICAgICAg
IGhlaWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA0NXB4OwotICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogZHJvcC1z
aGFkb3coMTBweCAxMHB4IDEwcHggYmx1ZSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9o
ZWFkPgotCi08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJib3giPjwvZGl2PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXIt
ZmFsbGJhY2stdG8tc29mdHdhcmUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDI4ODA4NzUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9maWx0ZXItZmFsbGJhY2stdG8tc29mdHdhcmUuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDU0ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPCEtLSAKLSAgICBUaGlzIHRlc3RzIHZl
cmlmaWVzIHRoYXQgdGhlIG9sZCBmaWx0ZXJzIGFyZSByZW1vdmVkIGZyb20gdGhlIHBsYXRmb3Jt
IGxheWVyIHdoZW4gdGhlIGZpbHRlcnMgY2Fubm90IGJlIAotICAgIHJlbmRlcmVkIGluIHBsYXRm
b3JtIGNvZGUgYW5kIGl0IGZhbGxiYWNrcyB0byByZW5kZXIgdGhlIGZpbHRlcnMgaW4gc29mdHdh
cmUuCi0tLT4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVBy
ZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJs
ZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVl
KTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAg
ICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIGRvbmUoKQotICAgICAgICB7Ci0gICAgICAgICAgICAv
LyBBZnRlciB0aGUgb25sb2FkIGlzIGZpcmVkLCB3ZSBrbm93IGZvciBzdXJlIHRoYXQgdGhlIHNo
YWRlciBpcyBsb2FkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0g
ICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGhl
aWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICAvKiBGb3JjZSBhIHBsYXRmb3JtIGxheWVy
LiAqLwotICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDAp
OwotICAgICAgICB9Ci0KLSAgICAgICAgLnNoYWRlciB7Ci0gICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQudnMnKSkgZHJvcC1z
aGFkb3coMTBweCAxMHB4IDEwcHggYmx1ZSk7Ci0gICAgICAgIH0KLQotICAgICAgICAuYmVmb3Jl
IHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBkcm9wLXNoYWRvdygxMHB4IDEwcHggMTBw
eCByZWQpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLQotPGJvZHkgb25sb2Fk
PSJkb25lKCkiPgotICAgIDwhLS0gCi0gICAgICAgIFRoZSBleHBlY3RlZCByZXN1bHQgaXMgYSBn
cmVlbiBzcXVhcmUgd2l0aCBhIGJsdWUgc2hhZG93LiBBdCB0aGUgZW5kIHRoZXJlIHNob3VsZCBi
ZSBubyByZWQgb24gc2NyZWVuLgotICAgIC0tPgotICAgIDxkaXYgY2xhc3M9ImJveCBzaGFkZXIg
YmVmb3JlIj48L2Rpdj4KLSAgICA8c2NyaXB0PgotICAgICAgICAvLyBGb3JjZSBhIGxheW91dC4K
LSAgICAgICAgZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQ7Ci0gICAgICAgIC8vIEhhdmluZyB0
aGlzIGlubGluZSBmb3JjZXMgdGhlIG9ubG9hZCBldmVudCB0byBvbmx5IGZpcmUgYWZ0ZXIgdGhl
IHNoYWRlciBjb2RlIGlzIGxvYWRlZC4KLSAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcigi
LmJlZm9yZSIpLmNsYXNzTGlzdC5yZW1vdmUoImJlZm9yZSIpOwotICAgIDwvc2NyaXB0PgotPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1jbGlwcGVkLWV4cGVj
dGVkLnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzVhNDhlMmQwMzcyMjAyZmRk
MDQ5OGY2NDE1NDU1YTgxMzY5OWExNy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAx
MDcxOAp6Y21lSTJZZSpEUDZ2eXcoUFBRdlB3bD17UklyZFAqNTgxNCVaZGhHJk8pWCEmKUckKFd0
dzN6ZUVMNnl5SDZ4NTMKelFoe2l3NW02K2xwR3JpX14tSjFZR0xualAhRUIyVj9PfmFpK1p8bjxg
PUwqTGpQcSQ+PUg1TUwmJDsqZiZpUyp8CnpYKHtwVXVELTRhQUB7QHQhJWw9MEpWST15KHVGKiFL
VCVta0swLT8zR0U0RmY9alJuMUo2PyNRZ3ZiTVY1bUM4PAp6SGRrMDU4RFo0d2JoLU5jdT40NCEm
WnlVaTN4M3l3JEh8X2VMX15IKFFmQk9SUGZLQmptdG5eX2VAKEotTURIT34KejF6RTg3VD81K1Er
Jm5obSt1ZlBiNWJBI0sqLU9XJC1FUk5jSnJ5cV5oVUp1TTkqZkIwJDwwcHBuNUkrPDUyUUNVCnoq
O3QmNG0wbW03KnxaR3YpI3B5WUQpfHZ2O1JoP15jLVJLcFJJYClxWDdsZ003MzFvdVVoYH40U0dn
Um9pRkIoJgp6PzMoPHBxdkd0ckZ2WWV+Y0A0STtoXlh4SXJ2aGhncX5RQ3I/MGY0TSEodHt4WVpn
aHh0QVdBIV52JmZiaXNTayQKekJoP0daQjF2czB5SU85d0V0MztlcSpUQEBkTnN+YE4/JkpNIXU0
Z1BYME43eGY/Q1pseSUwPSFJT005Vlg+WXYwCnpsYDxkNVYtTnBTJUVLLSVIRS1IQEA7cWZlN0t7
RS1qZypJX3AqJFdjcFoyQjlwQW5KMUQ0T3pjQXt8NDNBVkJqfgp6Mn5INFBGPXozRDh1VUxEPkYk
KiNeUD5VQj82Mlg/cW4oQEhzQWhoPUhORVJVeTlmOyZYZnRFaWExOH5ZNEdpPDUKelY9cU9CR3tQ
fFVZMVFIJFdKJHFkJCZxdmxNa2BxTTJHJDEzT3VNRjBeOUAoTXNKZVB1TD9RaTI2cjRWQ1QhUV56
CnpvWGp7KDd6ZUlFUjJVWXszWGtDaWsodlpgZy1qSnRaUG9sPTctWHckWUhBd3B5aUclZjZCdmkk
UWR2aWtPcmpoegp6VGAzd3ZDPSU2KT13YTdCalhiMTw1eF9DZXVUWCRYIWxINDF0N0AoKHA0O2g3
VzxCeEhIVlJmakpRbWdzUVZldXMKelMpKjBFUjxfSSYyRy1SVVAtdH53N3tPTXpUKChASlFyMHxx
dGZRUGVCX2Z9UkIrN0NoMG02c1RkZGomTkVWYEI2CnpxJTBkKmNGbmlxV1o1fEAmdHNTOVU2Zl5r
VklWOUo3VWBoRFgoM25DMCspeXM1VTRGdSY0aUxtclpPT3JMfDZiYwp6WD9kVjtrdVZBRTlCRVRB
Ymgha1IoRUxqczZVOztlbFExZXU5VFFCQDFkfHt2TkY1VWgzan51T0VQJH0hKVo7KXsKdWtXQHp5
N0M9fiM9bTVma1F8a3Z8O2glKkNZcnE0Q0NtVmlyJnFlWndPX1VneVZyYm94UX4zdXUwSDNTPwoK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFp
bnQtY3VzdG9tLWNsaXBwZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBlY3RlZC50eHQKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9tLWNsaXBwZWQu
aHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3Vz
dG9tLWNsaXBwZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmY5MmNjMTku
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVw
YWludC1jdXN0b20tY2xpcHBlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAot
PCFET0NUWVBFIGh0bWw+Ci08IS0tIAotICAgIFRoaXMgdGVzdHMgdmVyaWZpZXMgdGhhdCBzaGFk
ZXIgZmlsdGVyIGlzIHJlcGFpbnRlZCB1c2luZyB0aGUgZnVsbCBzb3VyY2UgaW1hZ2Ugb2YgdGhl
IGVsZW1lbnQgaW5zdGVhZCBvZiBqdXN0IHRoZSBkaXJ0eSBhcmVhLgotICAgIEFsc28gaXQgdGVz
dHMgdGhhdCB0aGUgY2xpcHBpbmcgcmVjdGFuZ2xlIG9mIHRoZSBib3ggaXMgbm90IGFmZmVjdGlu
ZyB0aGUgZmlsdGVyLgotICAgIFRoZXJlIHNob3VsZCBiZSBvbmUgbGlnaHQgZ3JlZW4gYm94IG9u
IHRoZSBzY3JlZW4uIE5vIHJlZCBzaG91bGQgYmUgdmlzaWJsZS4KLS0tPgotPGh0bWw+Ci08aGVh
ZD4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICB9Ci0gICAgICAg
IGZ1bmN0aW9uIHJlcGFpbnRUZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcigiLmJlZm9yZSIpLmNsYXNzTGlzdC5yZW1vdmUoImJlZm9yZSIpOwotICAg
ICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgICAuY2xpcHBpbmdfYm94
IHsKLSAgICAgICAgICAgIG1hcmdpbjogMjBweDsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsK
LSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVu
OwotICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOwotICAgICAgICB9Ci0gICAgICAgIAotICAg
ICAgICAuZW1wdHlfYm94IHsKLSAgICAgICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgfQot
ICAgICAgICAKLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDE1MHB4OwotICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3Jl
ZW47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIC5iZWZvcmUgewotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Ci0gICAgICAgIH0KLQotICAgICAgICAuc2hh
ZGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNl
cy92ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMpIG1peCh1cmwoLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgb2Zmc2V0IC0wLjUsIG1peF9jb2xvciAxLjAg
MS4wIDEuMCAwLjEpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLQotICAgIDxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9mYXN0L3JlcGFpbnQvcmVzb3VyY2VzL3JlcGFpbnQuanMiPjwvc2NyaXB0Pgot
PC9oZWFkPgotCi08Ym9keSBvbmxvYWQ9InJ1blJlcGFpbnRUZXN0KCkiPgotCi0gICAgPGRpdiBj
bGFzcz0iY2xpcHBpbmdfYm94Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGVyIj4KLSAgICAg
ICAgICAgIDxkaXYgY2xhc3M9ImVtcHR5X2JveCI+PC9kaXY+Ci0gICAgICAgICAgICA8ZGl2IGNs
YXNzPSJib3ggYmVmb3JlIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC5wbmcKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwNzM2YjBiZTVkZTBlNjViMWE4YzdjNDM3ZjBhOWQxMzQ3
MTg1ODAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKR0lUIGJpbmFy
eSBwYXRjaApsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgMTA0MzUKemNtZUFTQE4/KG9s
SHlgdVZCcSFpYTB5fnlVeyt2WVYyYT5pMUIlUWxZYnBSem5rQjlnQ0NNNDckPVN1RnhlUHtUCnpO
b2szUjI4cWUkQ1dlVmRoTCZiMmhETWVLVz1WO3VpTjsxfFgtVGBMLWRAVlVwYl9mbjt1dW9GYDFh
PDsrej5fKQp6bXB9Ji1NbmhHRnBpPmRBNzY/PXxCYHg0bDdRQ15MY31lOSMrckU4IXg0OVNKUShJ
ajd5VFdHUHkmcDtyNEdmRy0KekVGMXl+NGg7dCE5XjYlTVdgU2AqO3tQfSQ2eip8QXFgflVXdTwl
VGYrXlBXODBUU1g3YyNvX2pqZnczPFBtfTxYCno1TD9IMHhEYE4jRihZJHxue0VkfXNQWCVIITlS
YUt6MXx2TVNALXcrX3h1MG4rNWg/UjxJbT5uYXtwZkUrd0syJAp6S1Ipak51YX56Xm82aUhnNX45
JlVAQmAtdyZmTmhCaHhqckFKeV5iJDZYWC1Ibm1IVTIzaEhtMTVDU0h3SlFKU1gKei1LcXhuYSlE
QXAhPC1HPXMmSWh8QV9mayMlQ0ZDWUpNS1ZkMTdwITR5KHdAM2h1e01ZbmZHRnw1JSNKQkp2ezE9
CnooR1ZGO0JrKVd6bnJsWU9rPHBUTXc1fVBnZU1qM1BxYjs9MnJYczh9RnhxJD8/TXtxI3VtKXxI
dmpRfEVGellIKAp6MmlZTShfa3IrKXR2aFRHV21xQzN2cjB8UFJZYjNQNFh7QHxzJHcpZXB5TXYx
PjA+bEVqRnR8dGs7PjhCRnEjYGkKemJIaXdFMDF1Nmh3djxMJmoteEdVKiEwfEpaV3pyQ3FxJCk7
SC1JUEtOODhEeD9jfnZSQEBQQUd3NEtiekcrR3ZwCmdtVzZ8JEVOdEJXYiV5WHhSWDEkYDtIcEZo
UGdnJmVieHNMUTA3bzQ9Q0lBMmMKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVkLWV4
cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFp
bnQtY3VzdG9tLXJvdGF0ZWQtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAzN2Y5NjkwMzhkYjJlYWUyN2FkYmIzNzZjN2Y1ZGNhY2QxYmFiM2JiLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAw
CkhjbVY/ZDAwMDAxCgpsaXRlcmFsIDk5NTUKemNtZUFTQE4/KG9sSHlgdVZCcSFpYTB5fnlVeyt2
WVYyYT5pMUIlUWxZYnBSem5rQjlnQ0NNNDckPVN1RnhlT141CnpESGZMSVd8b08ycmlsaXxNbi05
QXNpfiU+V35sfjdERiNXRlgoYE0qUyQhQjcpSmk+Rjk3OEc/LWA/RHE4eGtudQp6OHJZTTspWVdL
STdrPFRYPnhDJjM2KWJQTWwpSW40STYzRjl2aExsSylBSHYoKlZLSjxaZVU8IVYmTT1fYUE7cz8K
emJhO0B4QStaU3x6e3ZFVWd7OHc4Qm5NVGJBU3xGRHhtNkxTMTFRU1VBdzRRVDhhfGB4MUR1SVFe
VCVsVUZ0VzxXCnplUzRLRl9RdCpjY2pVY3U8Tk4qZkUhb1ROYXNLKUJgU2FjUktXdzNlTGM7LSRB
TihnMER1ZlVmTVMtQDBMdGJzfAp6VHYpdlZ0YjdDbzZxK0E7IWJ7U0kxOFctP2M3RlhAaWQ1SVFJ
VytMSnNsIVlLPmZPJTdeeUokMD56dkB+M29JX2QKeiRZPi1uNF9jdnRNREIyTE9vKXo7UzRZJWcy
YG50NWp1e1BeKEtJdWZuP1B3YHc0OHg4fDNeejthOXUtRy1FYHBpCnpYUGYha2g0PVgoRGxDU158
NGpkdzl8PUpeUXtkWEAxUGhDWVRXJHhVbVNiZG0jNU83cVp3SEtxJnVJRD4lXiMhWAp6MUVOVmtU
MFZ9fTR+VWxlWCNGcitLYUFFN3F4SGpSe1F3KSQ4bSU4az4mTWFoNWpMMVIrQ0NVPEFCP3NTTSV4
RlkKdT9Tcyt3MGk7JE9aNkElY2s0RD1eXmxLbWVWYDkkYiolPlNRPjshUHQ4aVN7K3BVWE9AZ2VD
d0tTPXdhKQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmls
dGVyLXJlcGFpbnQtY3VzdG9tLXJvdGF0ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tcm90YXRlZC1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tcm90
YXRlZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9t
LXJvdGF0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJl
cGFpbnQtY3VzdG9tLXJvdGF0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWU3NDE3ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Zp
bHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2MiAr
MCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTwhLS0gCi0gICAgVGhpcyB0ZXN0cyB2ZXJpZmllcyB0
aGF0IGZpbHRlciBzaGFkZXIgaXMgcmVwYWludGVkIHVzaW5nIHRoZSBmdWxsIHNvdXJjZSBpbWFn
ZSBvZiB0aGUgZWxlbWVudCBpbnN0ZWFkIG9mIGp1c3QgdGhlIGRpcnR5IGFyZWEuCi0gICAgQWxz
byBpdCB0ZXN0cyB0aGF0IHRoZSBjbGlwcGluZyBvciB0aGUgdHJhbnNmb3JtIHJlY3RhbmdsZSBv
ZiB0aGUgYm94IGlzIG5vdCBhZmZlY3RpbmcgdGhlIGZpbHRlci4KLSAgICBUaGVyZSBzaG91bGQg
YmUgb25lIGxpZ2h0IGdyZWVuIGJveCBvbiB0aGUgc2NyZWVuLiBObyByZWQgc2hvdWxkIGJlIHZp
c2libGUuCi0tLT4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVu
YWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0
cnVlKTsKLSAgICAgICAgfQotICAgICAgICBmdW5jdGlvbiByZXBhaW50VGVzdCgpCi0gICAgICAg
IHsKLSAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5iZWZvcmUiKS5jbGFzc0xp
c3QucmVtb3ZlKCJiZWZvcmUiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHls
ZT4KLSAgICAgICAgLmNsaXBwaW5nX2JveCB7Ci0gICAgICAgICAgICBtYXJnaW46IDEwMHB4Owot
ICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAg
ICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7
Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIC5lbXB0eV9ib3ggewotICAgICAgICAgICAg
aGVpZ2h0OiA1MHB4OwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICAuYm94IHsKLSAgICAg
ICAgICAgIGhlaWdodDogMTUwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAg
ICAgLmJlZm9yZSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsK
LSAgICAgICAgfQotCi0gICAgICAgIC5zaGFkZXIgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1ob3Jpem9udGFsLW9mZnNldC52cykg
bWl4KHVybCguLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzKSBub3JtYWwgc291cmNlLWF0b3ApLCBv
ZmZzZXQgLTAuNSwgbWl4X2NvbG9yIDEuMCAxLjAgMS4wIDAuMSk7Ci0gICAgICAgICAgICAtd2Vi
a2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwcHggNTBweDsKLSAgICAgICAgICAgIC13ZWJraXQtdHJh
bnNmb3JtOiByb3RhdGUoOTBkZWcpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLQotICAgIDxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L3JlcGFpbnQvcmVzb3VyY2VzL3JlcGFpbnQuanMiPjwv
c2NyaXB0PgotPC9oZWFkPgotCi08Ym9keSBvbmxvYWQ9InJ1blJlcGFpbnRUZXN0KCkiPgotCi0g
ICAgPGRpdiBjbGFzcz0iY2xpcHBpbmdfYm94Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGVy
Ij4KLSAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVtcHR5X2JveCI+PC9kaXY+Ci0gICAgICAgICAg
ICA8ZGl2IGNsYXNzPSJib3ggYmVmb3JlIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9k
aXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20uaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggOTZmYTM4Zi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsNTEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08IS0tIAotICAgIFRoaXMgdGVzdHMgdmVy
aWZpZXMgdGhhdCB0aGUgc2hhZGVyIGZpbHRlciBpcyByZXBhaW50ZWQgdXNpbmcgdGhlIGZ1bGwg
c291cmNlIGltYWdlIG9mIHRoZSBlbGVtZW50IGluc3RlYWQgb2YganVzdCB0aGUgZGlydHkgYXJl
YS4gCi0gICAgVGhlcmUgc2hvdWxkIGJlIDQgYm94ZXMgb2Ygc2FtZSBzaXplLiAzIG9mIHRoZW0g
YXJlIGdyZWVuIGFuZCB0aGUgbGFzdCBvbmUgb24gdGhlIHJpZ2h0IGlzIGJsdWUuCi0tLT4KLTxo
dG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAg
fQotICAgICAgICBmdW5jdGlvbiByZXBhaW50VGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAg
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5iZWZvcmUiKS5jbGFzc0xpc3QucmVtb3ZlKCJiZWZv
cmUiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAgLmJv
eCB7Ci0gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OwotICAgICAgICAgICAgbWFyZ2luLWJv
dHRvbTogMTBweDsKLSAgICAgICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgICAgIHdpZHRo
OiA1MHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgIH0K
LQotICAgICAgICAuYmVmb3JlIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsK
LSAgICAgICAgfQotCi0gICAgICAgIC5zaGFkZXIgewotICAgICAgICAgICAgYm9yZGVyLXRvcDog
NTBweCBzb2xpZCBibHVlOwotICAgICAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cykg
bWl4KHVybCguLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzKSBub3JtYWwgc291cmNlLWF0b3ApLCBy
b3RhdGVCeSA5MCwgbWl4X2NvbG9yIDEuMCAxLjAgMS4wIDAuMSk7Ci0gICAgICAgIH0KLSAgICA8
L3N0eWxlPgotCi0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2Zhc3QvcmVwYWludC9yZXNvdXJj
ZXMvcmVwYWludC5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci0KLTxib2R5IG9ubG9hZD0icnVuUmVw
YWludFRlc3QoKSI+Ci0KLSAgICA8ZGl2IGNsYXNzPSJzaGFkZXIiPgotICAgICAgICA8ZGl2IGNs
YXNzPSJib3giPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJib3ggYmVmb3JlIj48L2Rpdj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iYm94Ij48L2Rpdj4KLSAgICA8L2Rpdj4KLQotPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZh
bGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5cGVzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUt
dHlwZXMtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGQwMDRk
MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQt
Y3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDI3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyBkbyBub3QgZXhlY3V0ZSBpZiB0aGUgYXV0
aG9yIGRlZmluZXMgYnVpbHQtaW4gYXR0cmlidXRlcyB3aXRoIHRoZSB3cm9uZyB0eXBlIG9yIGRl
ZmluZXMgY3VzdG9tIGF0dHJpYnV0ZXMuPC90aXRsZT4KLSAgICA8IS0tIAotICAgICAgICBUaGlz
IGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRlc3QuCi0gICAgICAgIElmIHRoZSB0ZXN0
IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNyB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMu
Ci0gICAgLS0+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7Ci0gICAgICAgIGJhY2tncm91bmQtY29s
b3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0
OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hl
YWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48
L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4K
LSAgICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5
cGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9t
LWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggZDU2NWJhMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2ludmFsaWQtY3VzdG9tLWZpbHRlci1hdHRyaWJ1dGUtdHlwZXMuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDY1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8
dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20gZmlsdGVycyBkbyBub3QgZXhlY3V0ZSBpZiB0aGUgYXV0
aG9yIGRlZmluZXMgYnVpbHQtaW4gYXR0cmlidXRlcyB3aXRoIHRoZSB3cm9uZyB0eXBlIG9yIGRl
ZmluZXMgY3VzdG9tIGF0dHJpYnV0ZXMuPC90aXRsZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBh
c3NlcywgeW91IHNob3VsZCBzZWUgNyB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0t
PgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0
b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQotICAgICAgICAK
LSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8vIFdl
IG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgc2hhZGVycyBkb3dubG9hZC4KLSAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5
bGU+Ci0gICAgZGl2IHsKLSAgICAgICAgLyogSWYgdGhlIHNoYWRlcnMgZXhlY3V0ZSwgdGhleSB3
aWxsIHR1cm4gdGhlIGVsZW1lbnQncyBjb2xvciBmcm9tIGdyZWVuIHRvIHJlZC4gKi8KLSAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgIHdpZHRoOiA1MHB4
OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgIG1hcmdpbjogMTBweDsKLSAgICB9Ci0g
ICAgLmludmFsaWQtY3VzdG9tLWF0dHJpYnV0ZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZzJykgbWl4
KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAxLjAgMC4wIDAuMCAxLjApOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLWEtbWVz
aC1jb29yZCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvaW52YWxpZC10eXBlLWEtbWVzaC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9t
aXgtY29sb3IuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMS4wIDAuMCAwLjAg
MS4wKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hLXBvc2l0aW9uIHsKLSAgICAgICAgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS1wb3Np
dGlvbi52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBub3JtYWwgc291
cmNlLWF0b3ApLCBtaXhfY29sb3IgMS4wIDAuMCAwLjAgMS4wKTsKLSAgICB9Ci0gICAgLmludmFs
aWQtdHlwZS1hLXRleC1jb29yZCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KCcuLi9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWEtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAx
LjAgMC4wIDAuMCAxLjApOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLWEtdHJpYW5nbGUtY29v
cmQgewotICAgICAgICAvKiBUaGlzIGN1c3RvbSBmaWx0ZXIgdXNlcyBhIGRldGFjaGVkIG1lc2gg
YmVjYXVzZSBhX3RyaWFuZ2xlQ29vcmQgaXMgb25seSBhdmFpbGFibGUgd2l0aCBhIGRldGFjaGVk
IG1lc2guICovCi0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvaW52YWxpZC10eXBlLWEtdHJpYW5nbGUtY29vcmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxIGRldGFjaGVkLCBtaXhf
Y29sb3IgMS4wIDAuMCAwLjAgMS4wKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hdHRyaWJ1
dGUtYXJyYXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3Vy
Y2VzL2ludmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJyYXkudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJj
ZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDEuMCAwLjAg
MC4wIDEuMCk7ICAgICAgICAKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJy
YXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2lu
dmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJyYXkudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4
LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDEuMCAwLjAgMC4wIDEu
MCk7ICAgICAgICAKLSAgICB9Ci0gICAgLmludmFsaWQtYXR0YWNoZWQtbWVzaC1hLXRyaWFuZ2xl
LWNvb3JkIHsKLSAgICAgICAgLyogVGhpcyBjdXN0b20gZmlsdGVyIHVzZXMgYW4gYXR0YWNoZWQg
bWVzaCB0byB2ZXJpZnkgdGhhdCBhX3RyaWFuZ2xlQ29vcmQgaXMgbm90IGEgYXZhaWxhYmxlIHdp
dGggYW4gYXR0YWNoZWQgbWVzaC4gKi8KLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1
cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLWEtdHJpYW5nbGUtY29vcmQtd2l0aC1hdHRhY2hlZC1t
ZXNoLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3Vy
Y2UtYXRvcCksIG1peF9jb2xvciAxLjAgMC4wIDAuMCAxLjApOyAgICAgICAgCi0gICAgfQotICAg
IDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBj
bGFzcz0iaW52YWxpZC1jdXN0b20tYXR0cmlidXRlIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJp
bnZhbGlkLXR5cGUtYS1tZXNoLWNvb3JkIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlk
LXR5cGUtYS1wb3NpdGlvbiI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLWEt
dGV4LWNvb3JkIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtYS10cmlhbmds
ZS1jb29yZCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1h
cnJheSI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC1hdHRhY2hlZC1tZXNoLWEtdHJp
YW5nbGUtY29vcmQiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4
cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3Vz
dG9tLWZpbHRlci1zaGFkZXItZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggOTJhYzA2ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1zaGFkZXItZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9u
dWxsCkBAIC0xLDI1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+
Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
LSAgICAgICAgICAgICAgICAvLyBXYWl0IGZvciB0aGUgaW1hZ2VzIHRvIGJlIGxvYWRlZC4KLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIG5vdGlmeURvbmUoKQot
ICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0
cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkIG9yIGZhaWxzLgotICAgICAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4K
LSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJub3RpZnlEb25lKCkiPgotICAgICAgICA8
aW1nIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgc3Jj
PSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAgPGltZyBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIHNyYz0iLi4vcmVzb3VyY2Vz
L3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJl
bmNlLnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1zaGFkZXIuaHRtbCBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXNo
YWRlci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZGYxZjY5Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmls
dGVyLXNoYWRlci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTMgKzAsMCBAQAotPCEtLSBUaGlz
IGZpbGUgc2hvdWxkIHRlc3QgdGhhdCBjdXN0b20tZmlsdGVycyBkbyBub3QgcmVuZGVyIHdoZW4g
c2hhZGVycyBhcmUgaW52YWxpZC4gLS0+Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxo
ZWFkPgotICAgICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IGN1c3RvbS1maWx0ZXJzIGRvIG5vdCBy
ZW5kZXIgd2hlbiBzaGFkZXJzIGFyZSBpbnZhbGlkPC90aXRsZT4KLSAgICAgICAgPHNjcmlwdD4K
LSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVy
RW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7Ci0gICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICAg
ICAgCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAg
ICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2Fk
aW5nIHN1Y2NlZWRlZCBvciBmYWlscy4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUo
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAg
ICAgICAgICAgIC5pbnZhbGlkX3ZlcnRleF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2ludmFsaWQt
c2hhZGVyLnZzJykpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmludmFsaWRfZnJhZ21l
bnRfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXNoYWRlci52cycpIG5v
cm1hbCBzb3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hh
ZGVyc19idXRfaW52YWxpZF92ZXJ0ZXhfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXNo
YWRlci52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmJvdGhfc2hhZGVy
c19idXRfaW52YWxpZF9mcmFnbWVudF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZz
ZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5ib3RoX3NoYWRlcnNf
aW52YWxpZAotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBtaXgodXJsKCcuLi9y
ZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBub3JtYWwtc291cmNlLWF0b3ApKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgICAgICA8IS0tIFRlc3Qgb2YgaW52YWxpZCBjdXN0b20gZmlsdGVy
IHNoYWRlcnMuIFlvdSBzaG91bGQgc2VlIDUgYmxvY2tzIG9mIGNvbG9yIGJhcnMsIGFsbCB0aGUg
c2FtZSAtLT4KLSAgICAgICAgPGltZyBjbGFzcz0iaW52YWxpZF92ZXJ0ZXhfc2hhZGVyIiBzcmM9
Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJpbnZh
bGlkX2ZyYWdtZW50X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LSAgICAgICAgPGltZyBjbGFzcz0iYm90aF9zaGFkZXJzX2J1dF9pbnZhbGlkX3ZlcnRleF9zaGFk
ZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xh
c3M9ImJvdGhfc2hhZGVyc19idXRfaW52YWxpZF9mcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVz
b3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVy
c19pbnZhbGlkIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgIDwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
aW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZvcm0tdHlwZXMtZXhwZWN0ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZvcm0t
dHlwZXMtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTdiOTg1
Yi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQt
Y3VzdG9tLWZpbHRlci11bmlmb3JtLXR5cGVzLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwyNiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlcnMgZG8gbm90IGV4ZWN1dGUgaWYgdGhlIGF1dGhv
ciBkZWZpbmVzIGJ1aWx0LWluIHVuaWZvcm1zIHdpdGggdGhlIHdyb25nIHR5cGUuPC90aXRsZT4K
LSAgICA8IS0tIAotICAgICAgICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRl
c3QuCi0gICAgICAgIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNiB2ZXJ0aWNh
bGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuCi0gICAgLS0+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICB3aWR0
aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0g
ICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAg
IDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+
PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLXVuaWZv
cm0tdHlwZXMuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1j
dXN0b20tZmlsdGVyLXVuaWZvcm0tdHlwZXMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggNzkyOTQ0MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci11bmlmb3JtLXR5cGVzLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw1NiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAg
PHRpdGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZpbHRlcnMgZG8gbm90IGV4ZWN1dGUgaWYgdGhlIGF1
dGhvciBkZWZpbmVzIGJ1aWx0LWluIHVuaWZvcm1zIHdpdGggdGhlIHdyb25nIHR5cGUuPC90aXRs
ZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNiB2ZXJ0aWNh
bGx5LXN0YWNrZWQgZ3JlZW4gYm94ZXMuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xF
bmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0g
ICAgICAgIHsKLSAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0
aGUgc2hhZGVycyBkb3dubG9hZC4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
LSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAg
IH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgZGl2IHsKLSAgICAgICAgLyogSWYg
dGhlIHNoYWRlcnMgZXhlY3V0ZSwgdGhleSB3aWxsIHR1cm4gdGhlIGVsZW1lbnQncyBjb2xvciBm
cm9tIGdyZWVuIHRvIHJlZC4gKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1
NSwgMCk7Ci0gICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAg
ICAgIG1hcmdpbjogMTBweDsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS11LW1lc2gtYm94IHsK
LSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNl
cy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJveC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
IH0KLSAgICAuaW52YWxpZC10eXBlLXUtbWVzaC1zaXplIHsKLSAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNo
LXNpemUuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlw
ZS11LXByb2plY3Rpb24tbWF0cml4IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShu
b25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJp
eC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLXUt
dGV4dHVyZS1zaXplIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1
cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS10ZXh0dXJlLXNpemUuZnMnKSBub3JtYWwg
c291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS11LXRpbGUtc2l6ZSB7Ci0g
ICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMv
aW52YWxpZC10eXBlLXUtdGlsZS1zaXplLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAg
fQotICAgIC5pbnZhbGlkLXR5cGUtdW5pZm9ybS1hcnJheSB7Ci0gICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXVuaWZv
cm0tYXJyYXkuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4K
LTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZh
bGlkLXR5cGUtdS1tZXNoLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBl
LXUtbWVzaC1zaXplIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtdS1wcm9q
ZWN0aW9uLW1hdHJpeCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLXUtdGV4
dHVyZS1zaXplIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJpbnZhbGlkLXR5cGUtdS10aWxlLXNp
emUiPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImludmFsaWQtdHlwZS11bmlmb3JtLWFycmF5Ij48
L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vbWlzc2luZy1jdXN0b20tZmlsdGVyLXNoYWRlci1leHBlY3RlZC5wbmcgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL21pc3NpbmctY3VzdG9tLWZpbHRlci1zaGFk
ZXItZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzU0MzYyZGVk
NzJiM2RkOTZlYjA5M2MxMGNkNjQxOGQwZTI4YTIyLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgps
aXRlcmFsIDEyNDMyCnpjbWVIT1lmekpDN0E2cmFTMyQ4dDFwJD9jUnpWYiVLbXg9bk03az1qYzFr
VGB1LXZMdlB5ISk5dTQ9Xl9NQXIqTgp6QWtvSWxjMzRIRmZINVMxczN+I0BzMkhQIUFjejRJa3t9
NUk2M0QqVG50WXZ8KzFjckFZayVaTkVefjZlXlMkVDEKeiZ3MC1DZWx0MDtYKFB0TGNEQWpCZ0By
QHB5MHgxdkVUKHVfU2lyeHVvKGU0SUBjWnxJazQ1Uj5VIzc9QGxOaTRuCnptJEFucFZhNClnTnZs
QHZLcD8oZWp6fm84U21xeSluQmJwKUBjJWp9Q0B7JT9oZkQ0QXFaU3RhXkNIKS17K3N8Qwp6NU8y
c1lQWDVyVXRJUXFnLTBlTFAxMyZLU2tHPkFhKjlPbFpGR25BP25Hcy0zdnA/Wl8hVE59bW15QCRN
bz1VWVQKeis8JF5QQkg4b3gkKTdtPiVrcG87WnAxemtobk12NVBkejsmT2NtPmpxcl5lRyFZalUj
PXFnNlNzVE1HfXJMfmg2CnpucmNEd3dKdl5rQ3g+QTcmTV41NChmZDQ9O1Bpe2JUaEZLR3NQTE9C
Y2NyZDFUfWcjXmU+NTUzKkdPQEA7a0d8Tgp6YDZxWH1GKXxFcGRwT3puSkdqJFRufXVGNnRsQH1Y
Pz55O1A5RDJHZHBtWXNndWQ2LTdWWn1IMGoqSGxmYDkjSFEKejZ8Yn5EPGVHeiR2I01HLVJAYztm
VSZTa2BrSUVEa2FSK1YmYSNPUVlNdEQpZ14/QX5MdFlZY0RgSGd6RVNUQUd9CnorSntDZzh9N1RI
PXgkcTRebT02eDQ7JDd5RCQ+N2tFPmtwVldqK2dyO0l2I2c4VUNqQWp1TWdfVmg3Q1g8dzA2KAp6
bHhlWkdZaz12KGNhckkqNEVOcHYzRUU4SUZ5M1ZoR1JnJn1IRmg9Z089YWpoWGZeWU1eSGg4WXF6
c1AwbHNrKXoKemZyUGlRVGo9RnVGVkJWKS1OU2FGbSFxI2Y5fT9icSl8WDtrZitSe1dmQmlTbHJj
aiZsbUppQSFxcXU+e096aihhCnokOHVFVy1WRDVDPzE4RjcjcEBrWUBwamthPlVHbW5yWVNpcWt5
VyE5JFhnK3QpUT51fkJSJjBEOWRnYnZEJl5vSAp6RGtVTVNJfj9vRF5jd0JeUE5SfllFfjZLWEdZ
SVhWSU9gX0hLYjJgXmQ1emc4WWJsbWAlZXlSN1JAQi1qbU5RUlcKentkPi1RJGJ4NCYyfjJCKyFE
RX5ecChgVD5AKnN1WGdob3cpWjElU3MmQGo+TGlva2lNei1aV0B7YVlDUlFtKlNPCnpWTzl5ZEE5
byZ4MWglPnhWRGdfXyRoMns5YnBWc3VkfjsmJkBOfV9rYH5+SSQqJmtJRXJ0Zj4+bUBJd2JJVzI1
Kwp6SGY1eChTR1QxPSM3O0VhVXZsQz1LZjUxdVM9cm9+bk1KeztneWN5MFZLKEJTayh0e0NKekxe
WF5lOUBFSXVZeVgKenNVZkpZM31RYWxqZzMmeyZXMylTQ1ctTS1ESiZ8YGRfdk8hKU8xSWh6PH5h
SmE5YC1mZlopUWlhPjA0KHd8VVJwCnpBU2VUVUh4KkxCfEVjZUMkdXFgd1JtXnQ0O1dPfEEjaWNm
TyFEVEkxXmBNVXo5VktZdHJqNTA/aykkb2ZaWTQ7ewp6RTR7cXFTVW9QO0AzP31hPlh2dWgzdmpf
YFZ+SytnYCNMVFN2UEhhNzMyTG04IU4tSm49b15NYyhBe202WT4jQkQKem1QakoxKjt5KGR0Uzcw
NHRYaVZpaDYhfSFhZiFSOVZQYTR6XmZjSmolKVAkNEhWVkQhSm1IOUc9VismPFokZlhwCnotK21Q
ZTBqRXVXMXVxMD9uXjRnbD5ZcWBfaH1ySjNhaDErdUlJKW1hSkljayRMfmN5dkUxYihBWkFxQUdi
SmNBRwp6Q3A4M0J3ZTF7Tm5ZSXRGY3F+OGd2Vmc8ZCEkaHFod09wMTA9KipfNWs0Z3NAYE98cipV
bzctN3ZmZjl+IT1LNGkKejd4bSotZy1FbEFNPUt7aXdsQkU4MWJ9R0tVbGNfQTttRSRePXA1RHM+
e20oQjdDKmB5dkcjIS1WQzJTOTVqIzNwCnorVHRpRWFyPmdXcFg3MiN4ODBTZXkhMytQa31MSHFW
YnBDeWR7NWV9T1dRP0krI3JPfD1gXzhSJmZxdXVPfV4rZwp6dVZwPHdeUnghSmowR0JyVkp8NVF7
RT83WE9RT0E/VDwoVUAwSlhMYWEzc3NeSFZwIXczc21ePmdLNVZoNzhZUGwKek9rbnlITkRsIz9Q
TyRFRWc7KzJ5bzZ6fHdlTiFQIWJxTFYzKH1RSVlPVE9RRXM9Syg9MFJsflh1ITZhIzt+XklKCnoq
dGlPd1JATnQ2KCU5UXJmRHhgMiNJbjs4KDxTUFRfUj9zS2M3cV82Z1dyPWIoYTN9dD4xRDA+KjFx
XzMkPD4mdQp6MngmQFpieD80b1pnP08qcV5oYmFAVjFnZExSfUd2KUUoLWVCMVRiWUAqfl9NRFN6
bko9IzMlTip4MFQ5Mjk7KnQKekZvYHNsMG1qPG9UWkBwdEF4ZTk1ZU43b3RFI3g7cCVCcU0zJkdw
UT0oJGtuR1pPKThNWCM3SFptV2UjUzBlUWJxCno5fFk7PzV8XjYyUG1reWY2VWBicykmVTlHJnww
UE1WPC0qOFZjMzkjVHxKd3QlcnZZQnVCO3dYe09jNH5sUGUtZwp6WDE4ZEVuYWJtU2BkNytmakZk
ZH5vUlolez5ZLTxYP2BvWmhuNXN8Mk9YJGctMlBmYCslaSNPMDMoYytAeCtTX2QKeilGPG4/PntC
bnEwNmN9YkBVVz95eDFLZDxiZWRQc3QzVGBGKXlpdXNjUzB4Py1RQH5+UzNFbDElMistYUpPSlM0
CnopeXRVPjMqUVNzViMqSlRBPyo3LTVHKDtjUzBFT3xSRzhJRVNFdHoza1hnUFM0SiEtXmZAckdS
VyE0TTVffCFnSQp6MjtoPGMxZStRYktgaTtKeUlTY1Y4K3d4XnVIMHQ5dmArVnU3KCtaPmFzX01Y
P0JndkprQjs/cT8zUmckSDNWZlQKek9WPkkySUVJQ3pVQDNkajY/IVJvV3c3PWg2OGxrIT9vRkx6
Z3BeRjBzQXl2fF4jY1FLPzlBdmdkVyZ6UFczSlJBCno8VyZ+JmFaZW8rTVIpWX03ezROSTZZPz80
ISNjX3ZmVlN+Z3QhelYtO059UktFNG8pfCRwe0FrVn12KHVne317MQp6Sz0mZzg+O2x2RD9iLT9v
bmNTOWs3U2ZhUkw1KG9vTGpeVl9Cb2J6VUI1blB0XyshWUc+cD1ifE5BIXUxOCEqRHIKenUmaTBX
JCZmMSV8RGVMdHloQUM0a1EqZH1EZUBtbnlBRWAwI3puV14jSXZAeShwJnlNR1QxeFR4O1Y1dlNw
OVIyCno8MkUpanhOPSkzdnhKa0BCKXRaLVJCJVZudnFeMkd5WE0pbkV5WjVSM0RTcTwzQDQ+PjxR
dFNsM14haHhBJCtIYQp6ZnhPbSZOYEFWM2AycilkWGFGKTc9WX1JcV58MXlTeSlQRzlKMiZkdyM5
aEhQcDFNd2NzI1F0IT8/R3JmPHNJVjIKemEkS1hUcXBuPjxrfWFPcGshTktmVitWblE1X3YxQVRL
UG9ZMFNMWnBTazZsJU5hb1V8cyVDZWk9emFQakVEUjwoCno8SzFMeGltbzZxPU5TaTFUd1ExRWxl
bFBybyFIMWI/azBqfE9hVjl2dktBZFJuZVlHO2VgRnx4YGMkaWNOV09nQwp6czJ2TF56dHhXMiNR
Jn14dkNNO15KP1RlKDE/WSkrVHxRb21BYDRGJDBnSStsO2hVWClffFFaZTdYY2YqRlBHWDIKeiUh
OW5JdTE0JTsjRm9ycTxtXm1XVDxSdyt0ekxkeCs1Vl47UzV7MlVOU0NrIXEhSDI8Vz42U1grcFgj
LXZ9NVZ+CnpzdTlTeyFLUW17Qm99UDtpcn56aCNGUj9xPnApZ2poRWJVUjwjR09xVXZhbG5LQmM5
Z3BXV08wQkI5KGQ0dHJNZwp6TDlxbGAjbyFMSTwzbHJkNUcxMXErSzhwYyU1X2liYWdDUW1Jek58
Vz5CaT5KYiEwYTMqXnt+Tm4ySShOeiZrU1gKekw5cSM/d2dBZmVvdnhiYiU/clR4eX05SE0wOEMj
U2omTlY8VGFIVUVzTDVDNF5uVFpOcXFuelItY2VlUWxMR1BQCnp1KChzcnYjVGQ5d1U9bGdzKDlj
Q1BfUilEPWpZeE9gWGVjNUJgV1prJl5WY0JoVm9pZipjTzllT0xvcT81JiRteQp6MWYrYl8pentT
R1VUZV4+aE15WndvMnYzQnhfbHdhc21ZSCYpbVg1VWV5eHpmTiRVbE5vcWwje2JYbVRsaHszQFIK
ekpuUTRoZ2tUVkVQOyZQNS0wJFBYUkhmdiNoXnc9Mz41QWNqPWx0eEgpWVF+OyQrOGR6T1Bna2Ri
a3xFVEtWSDdmCno8M2piTjBkT19TKXw5MDZ8TEc5Pko1SkxHbDU1PylyU0FDZGk1ZCFTezd6cTJs
X1g1PDgrS2MmM3VCVmR4PWc+YQp6MiZHT09tWTQ2VnRWWVRiUXBiMVRCfl4hcHhaX2VKJWRUZFdH
WSZNdSM0d1lFbFpeQzsrdHtBdDxXJitrTn0qV1cKekJsX1MxSnFjJGxnY2x9bTgyZGEoX3gpKWp0
NjkrSSVtUldGO20kRyV0OGMpOHxKalRSTjdKUEhiQTFyJV95KT9UCnpDQGBZT0FuJDUhVns1e2F3
NF5iT0dFYnA8U09QWW1UZ2huRjlARnhJWiExZnB4SWkqI0g5fG1pNmgkLShocGlxdQp6KTVjIXZz
Z0Z4bjImR3VKNT96QyYpMXhGT1F2K256UDVvWCVpfUFFVFRMQWloPVZ5PW5PZCFCLTE1O3t7ZGZm
Q3gKej1YQG1rejR9WlpSQ2U9fFM5bG1WMHx4JlhKaFJ3NTxLanh3Qj1RRTYkWXhSRE4jbk1ua0FQ
dWlifWBwd1FrPEg+CnpAVX0wXlVAKEtoY3Zkcm0hMytqNzd8ZmMlSlI4bGsoWDUpeU0rSXhNQVRT
Rjh2bWhgRjA8JDE2M2oodHNGYmV7Kwp2QWI5KEQqLVZGS0l5QlJ2bkdWZiNfeV5PVy1wJldSKTk9
Mkk8e3RRcWZra0JhIzxrWnpqb2Jma3AjUDchCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vbWlzc2luZy1jdXN0b20tZmlsdGVy
LXNoYWRlci1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxZjhh
MzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9taXNzaW5n
LWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xICsw
LDAgQEAKLSAgICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vbWlzc2luZy1jdXN0b20tZmlsdGVyLXNoYWRlci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFhMmE3MDYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi08IS0tIFRoaXMgZmlsZSBzaG91bGQgdGVzdCB0
aGF0IGN1c3RvbS1maWx0ZXJzIGRvIG5vdCByZW5kZXIgd2hlbiBzaGFkZXJzIGFyZSBtaXNzaW5n
LiAtLT4KLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRs
ZT5UZXN0aW5nIHRoYXQgY3VzdG9tLWZpbHRlcnMgZG8gbm90IHJlbmRlciB3aGVuIHNoYWRlcnMg
YXJlIG1pc3Npbmc8L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3Zl
cnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1
bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5l
ZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkIG9yIGZh
aWxzLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQot
ICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgLm1pc3Npbmdf
dmVydGV4X3NoYWRlcgotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmls
dGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvbWlzc2luZy12ZXJ0ZXgtb2Zmc2V0LnZzJykp
OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLm1pc3NpbmdfZnJhZ21lbnRfc2hhZGVyCi0g
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25l
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLWNvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBz
b3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hhZGVyc19i
dXRfbWlzc2luZ192ZXJ0ZXhfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLXZlcnRleC1v
ZmZzZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFs
IHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5ib3RoX3NoYWRl
cnNfYnV0X21pc3NpbmdfZnJhZ21lbnRfc2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zm
c2V0LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21pc3NpbmctY29sb3Itb2Zmc2V0LmZzJykg
bm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAuYm90aF9z
aGFkZXJzX21pc3NpbmcKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL21pc3NpbmctdmVydGV4LW9mZnNldC52cycp
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXNzaW5nLWNvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBz
b3VyY2UtYXRvcCkpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVh
ZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDwhLS0gVGVzdCBvZiBt
aXNzaW5nIGN1c3RvbSBmaWx0ZXIgc2hhZGVycy4gWW91IHNob3VsZCBzZWUgNSBibG9ja3Mgb2Yg
Y29sb3IgYmFycywgYWxsIHRoZSBzYW1lIC0tPgotICAgICAgICA8aW1nIGNsYXNzPSJtaXNzaW5n
X3ZlcnRleF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAg
ICAgIDxpbWcgY2xhc3M9Im1pc3NpbmdfZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNl
cy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRlcnNfYnV0
X21pc3NpbmdfdmVydGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIg
Lz4KLSAgICAgICAgPGltZyBjbGFzcz0iYm90aF9zaGFkZXJzX2J1dF9taXNzaW5nX2ZyYWdtZW50
X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAgPGlt
ZyBjbGFzcz0iYm90aF9zaGFkZXJzX21pc3NpbmciIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5j
ZS5wbmciIC8+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9hLXRleC1jb29yZC1kZWZpbmVkLnZzIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9hLXRleC1jb29yZC1kZWZpbmVkLnZzCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NDAyZGRmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtZGVmaW5lZC52cworKysgL2Rldi9u
dWxsCkBAIC0xLDEyICswLDAgQEAKLS8vIFRoaXMgc2hhZGVyIGRlZmluZXMgYV90ZXhDb29yZC4g
SXRzIGFzc29jaWF0ZWQgY3VzdG9tIGZpbHRlciBzaG91bGQgZXhlY3V0ZSBwcm9wZXJseS4KLQot
cHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWMyIGFfdGV4Q29vcmQ7Ci1h
dHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJp
eDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJp
eCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL2EtdGV4LWNvb3JkLXVuZGVmaW5lZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtdW5kZWZpbmVkLnZzCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAyYzJiNzMxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtdW5kZWZpbmVkLnZzCisrKyAvZGV2L251bGwKQEAg
LTEsMTEgKzAsMCBAQAotLy8gVGhpcyBzaGFkZXIgZG9lcyBub3QgZGVmaW5lIGFfdGV4Q29vcmQu
IEl0cyBhc3NvY2lhdGVkIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGV4ZWN1dGUgcHJvcGVybHkuCi0K
LXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwot
dW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBn
bF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2EtdHJpYW5nbGUtY29vcmQt
ZGVmaW5lZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10cmlhbmds
ZS1jb29yZC1kZWZpbmVkLnZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYjZkZTI0
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10cmlh
bmdsZS1jb29yZC1kZWZpbmVkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8g
VGhpcyBzaGFkZXIgZGVmaW5lcyBhX3RyaWFuZ2xlQ29vcmQuIElmIHRoZSBtZXNoIHR5cGUgaXMg
ZGV0YWNoZWQsIGl0cyBhc3NvY2lhdGVkIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGV4ZWN1dGUgcHJv
cGVybHkuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjMyBhX3Ry
aWFuZ2xlQ29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVf
cHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2FycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgudnMg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2FycmF5LXVuaWZvcm0taW5kaXJl
Y3QtaW5kZXgudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM5NzhkODlmLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYXJyYXktdW5pZm9y
bS1pbmRpcmVjdC1pbmRleC52cworKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLS8vIFRo
aXMgc2hhZGVyIGluZGlyZWN0bHkgaW5kZXhlcyBhIHVuaWZvcm0gYXJyYXkgdXNpbmcgb3RoZXIg
dW5pZm9ybXMuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotcHJlY2lzaW9uIG1lZGl1bXAg
aW50OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVj
dGlvbk1hdHJpeDsKLXZhcnlpbmcgdmVjNCB2X21peENvbG9yOwotCi11bmlmb3JtIGZsb2F0IHZh
bHVlc1syXTsKLXVuaWZvcm0gZmxvYXQgcmVkSW5kZXg7Ci11bmlmb3JtIGZsb2F0IGdyZWVuSW5k
ZXg7Ci11bmlmb3JtIGZsb2F0IGJsdWVJbmRleDsKLXVuaWZvcm0gZmxvYXQgYWxwaGFJbmRleDsK
LQotdm9pZCBtYWluKCkKLXsKLSAgICB2X21peENvbG9yID0gdmVjNCh2YWx1ZXNbaW50KHJlZElu
ZGV4KV0sIHZhbHVlc1tpbnQoZ3JlZW5JbmRleCldLCB2YWx1ZXNbaW50KGJsdWVJbmRleCldLCB2
YWx1ZXNbaW50KGFscGhhSW5kZXgpXSk7Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25N
YXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9jaGVja2VyYm9hcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL2NoZWNrZXJib2FyZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
OGNiMjRmZC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2NoZWNrZXJib2FyZC52cworKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLS8vIFRoaXMg
c2hhZGVyIGNvbG9ycyBhbHRlcm5hdGluZyB0aWxlcyBpbiB0aGUgbWVzaCBibGFjayBvciBncmVl
biB0byBjcmVhdGUgYSBjaGVja2JvYXJkIHBhdHRlcm4uCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZs
b2F0OwotcHJlY2lzaW9uIG1lZGl1bXAgaW50OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9u
OwotYXR0cmlidXRlIHZlYzMgYV90cmlhbmdsZUNvb3JkOwotCi11bmlmb3JtIG1hdDQgdV9wcm9q
ZWN0aW9uTWF0cml4OwotCi12YXJ5aW5nIHZlYzQgdl9taXhDb2xvcjsKLQotdm9pZCBtYWluKCkK
LXsKLSAgICBmbG9hdCBncmVlbiA9IG1vZChhX3RyaWFuZ2xlQ29vcmQueCArIGFfdHJpYW5nbGVD
b29yZC55LCAyLjApOwotICAgIHZfbWl4Q29sb3IgPSB2ZWM0KDAuMCwgZ3JlZW4sIDAuMCwgMS4w
KTsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLWZp
bGwuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLWZpbGwuZnMK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdlNDJiZWQuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jb2xvci1maWxsLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsMTAgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci11bmlmb3JtIHZl
YzQgY29sb3I7Ci12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLXZvaWQgbWFpbigpCi17Ci0gICAg
Ly8gTWl4IHRoZSB0ZXh0dXJlIHdpdGggdGhlIGNvbG9yIHNwZWNpZmllZCBhcyBhbiB1bmlmb3Jt
LgotICAgIC8vIEFsc28gYXBwbHkgYSBncmFkaWVudCB0byBjaGVjayBmb3IgdGhlIHJpZ2h0IGRp
cmVjdGlvbi4KLSAgICAvLyBUaGUgY29sb3Igc2hvdWxkIGJlIGxpZ2h0ZXN0IGF0IHRoZSB0b3Ag
YW5kIGRhcmtlc3QgYXQgdGhlIGJvdHRvbS4KLSAgICBjc3NfTWl4Q29sb3IgPSB2ZWM0KGNvbG9y
Lnh5eiwgY29sb3IuYSAqIHZfdGV4Q29vcmQueSk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBiMjBhY2M3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzCisrKyAvZGV2L251bGwKQEAgLTEsNiArMCwwIEBA
Ci1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXZvaWQgbWFpbigpCi17Ci0gICAgLy8gTWl4IHNv
bWUgd2hpdGUgd2l0aCB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLSAgICBjc3NfTWl4Q29sb3Ig
PSB2ZWM0KDEuMCwgMS4wLCAxLjAsIDAuNSk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvY29tcG9zaXRlLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBiYWJiNjZjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvY29tcG9zaXRlLmZzCisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi1wcmVjaXNpb24g
bWVkaXVtcCBmbG9hdDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigp
Ci17Ci0gICAgLy8gUHJvZHVjZSBhIGJsdWUgc3F1YXJlIGluIHRoZSBsb3dlciByaWdodC1oYW5k
IHBhcnQgb2YgdGhlIGltYWdlLgotICAgIGNzc19NaXhDb2xvciA9IHZlYzQoMC4wLCAwLjAsIDEu
MCwgZmxvYXQodl90ZXhDb29yZC54ID4gMC4zMyAmJiB2X3RleENvb3JkLnkgPiAwLjMzKSk7Ci19
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2Nzcy1rZXl3
b3JkLWFzLXBhcmFtZXRlci1uYW1lLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggODUwMTA4MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL2Nzcy1rZXl3b3JkLWFzLXBhcmFtZXRlci1uYW1lLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsOCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdW5pZm9ybSB2
ZWM0IGJhY2tncm91bmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfRnJhZ0NvbG9yID0gYmFj
a2dyb3VuZDsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmZzIGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1j
b2xvci1tYXRyaXgtbmVnYXRpdmUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFl
MGU3ZTMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9j
dXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUuZnMKKysrIC9kZXYv
bnVsbApAQCAtMSwxMCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdm9pZCBt
YWluKHZvaWQpCi17Ci0gICAgY3NzX0NvbG9yTWF0cml4ID0gbWF0NCgtMTAuMCwgMC4wLCAwLjAs
IDAuMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMCwgLTEwLjAsIDAuMCwgMC4wLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wLCAwLjAsIC0xMC4wLCAwLjAsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAwLjAsIDAuMCwgMC4wLCAxLjApOwotICAgIGNzc19NaXhDb2xv
ciA9IHZlYzQoLTAuNSwgLTAuNSwgLTAuNSwgMS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3It
bWF0cml4LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmls
dGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwZWVhMDcuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguZnMKKysrIC9kZXYvbnVs
bApAQCAtMSwxMCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdm9pZCBtYWlu
KHZvaWQpCi17Ci0gICAgY3NzX0NvbG9yTWF0cml4ID0gbWF0NCgxMC4wLCAwLjAsIDAuMCwgMC4w
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wLCAxMC4wLCAwLjAsIDAuMCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxMC4wLCAwLjAsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAwLjAsIDAuMCwgMC4wLCAxMC4wKTsKLSAgICBjc3NfTWl4Q29sb3IgPSB2
ZWM0KDAuNSwgMC41LCAwLjUsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLXBhcnNlci5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggYjhlMjQ4MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsMjAyICswLDAgQEAKLS8vIFRoaXMgaXMgYSBoZWxwZXIgc2NyaXB0IGRlc2lnbmVk
IHRvIHBhcnNlIHRoZSBjb21wdXRlZCBzeW50YXggb2YgdGhlIGN1c3RvbSBmaWx0ZXIuIAotLy8g
Tm90ZSB0aGF0IGl0IGlzIGdlbmVyaWMgZW5vdWdoIHNvIHRoYXQgaXQgY2FuIGJlIHVzZWQgZm9y
IG90aGVyIHByb3BlcnRpZXMgaW4gdGhlIGZ1dHVyZS4KLQotZnVuY3Rpb24gVG9rZW4odHlwZSkg
Ci17Ci0gICAgdGhpcy50eXBlID0gdHlwZTsKLX0KLQotLy8gQ2hlY2tzIGlmIHRoZSB0eXBlIG9m
IHRoZSB0b2tlbiBpcyBpbiB0aGUgbGlzdCBvZiBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSBmdW5j
dGlvbi4KLS8vIEl0IGFsc28gYWNjZXB0cyBhcnJheXMgYW5kIG90aGVyIHR5cGUgY2hlY2tpbmcg
ZnVuY3Rpb25zLgotVG9rZW4ucHJvdG90eXBlLmlzQSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7ICsraSkgewotICAgICAgICB2YXIgdHlw
ZSA9IGFyZ3VtZW50c1tpXTsKLSAgICAgICAgaWYgKCh0eXBlb2YgdHlwZSA9PSAib2JqZWN0IiAm
JiB0eXBlLmxlbmd0aCAmJiB0aGlzLmlzQS5hcHBseSh0aGlzLCB0eXBlKSkKLSAgICAgICAgICAg
IHx8ICh0eXBlb2YgdHlwZSA9PSAiZnVuY3Rpb24iICYmIHR5cGUodGhpcykpCi0gICAgICAgICAg
ICB8fCB0eXBlID09IHRoaXMudHlwZSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgIH0K
LSAgICByZXR1cm4gZmFsc2U7Ci19Ci0KLS8vIENyZWF0ZXMgYSBuZXcgdG9rZW4gb2JqZWN0IGFu
ZCBjb3BpZXMgYWxsIHRoZSBwcm9wZXJ0aWVzIGluICJ2YWx1ZSIgdG8gdGhlIG5ldyB0b2tlbi4K
LWZ1bmN0aW9uIGNyZWF0ZVRva2VuKHR5cGUsIHZhbHVlKSB7Ci0gICAgdmFyIHRva2VuID0gbmV3
IFRva2VuKHR5cGUpOwotICAgIGlmICh2YWx1ZSkgewotICAgICAgICBmb3IgKHZhciBpIGluIHZh
bHVlKQotICAgICAgICAgICAgaWYgKHZhbHVlLmhhc093blByb3BlcnR5KGkpKQotICAgICAgICAg
ICAgICAgIHRva2VuW2ldID0gdmFsdWVbaV07Ci0gICAgfQotICAgIHJldHVybiB0b2tlbjsKLX0K
LQotLy8gVG9rZW5pemVzIHRoZSBzdHJpbmcgaW50byBUb2tlbnMgb2YgdHlwZXMgW3VybHMsIGZs
b2F0cywgaW50ZWdlcnMsIGtleXdvcmRzLCAiLCIsICIoIiwgIikiIGFuZCAiLiJdLgotZnVuY3Rp
b24gdG9rZW5pemVTdHJpbmcocykKLXsKLSAgICB2YXIgdG9rZW5pemVyID0gbmV3IFJlZ0V4cChb
Ci0gICAgICAgICJ1cmxcXChcXHMqKC4qPylcXHMqXFwpIiwgLy8gdXJsKCkgLSAxCi0gICAgICAg
ICIoKD86W1xcKy1dPylcXGQqXFwuXFxkKykiLCAvLyBmbG9hdHMgLSAyCi0gICAgICAgICIoKD86
W1xcKy1dPylcXGQrKSIsIC8vIGludGVnZXJzIC0gMwotICAgICAgICAiKFtcXHctXVtcXHdcXGQt
XSopIiwgLy8ga2V5d29yZHMgLSA0Ci0gICAgICAgICIoWyxcXC5cXChcXCldKSIgLy8gcHVuY3R1
YXRpb24gLSA1Ci0gICAgXS5qb2luKCJ8IiksICJnIik7Ci0KLSAgICB2YXIgbWF0Y2gsIHRva2Vu
cyA9IFtdOwotICAgIHdoaWxlIChtYXRjaCA9IHRva2VuaXplci5leGVjKHMpKSB7Ci0gICAgICAg
IGlmIChtYXRjaFsxXSAhPT0gdW5kZWZpbmVkKQotICAgICAgICAgICAgdG9rZW5zLnB1c2goY3Jl
YXRlVG9rZW4oInVybCIsIHt2YWx1ZTogbWF0Y2hbMV19KSk7Ci0gICAgICAgIGVsc2UgaWYgKG1h
dGNoWzJdICE9PSB1bmRlZmluZWQpCi0gICAgICAgICAgICB0b2tlbnMucHVzaChjcmVhdGVUb2tl
bigiZmxvYXQiLCB7dmFsdWU6IHBhcnNlRmxvYXQobWF0Y2hbMl0pfSkpOwotICAgICAgICBlbHNl
IGlmIChtYXRjaFszXSAhPT0gdW5kZWZpbmVkKQotICAgICAgICAgICAgdG9rZW5zLnB1c2goY3Jl
YXRlVG9rZW4oImludGVnZXIiLCB7dmFsdWU6IHBhcnNlSW50KG1hdGNoWzNdKX0pKTsKLSAgICAg
ICAgZWxzZSBpZiAobWF0Y2hbNF0gIT09IHVuZGVmaW5lZCkKLSAgICAgICAgICAgIHRva2Vucy5w
dXNoKGNyZWF0ZVRva2VuKCJrZXl3b3JkIiwge3ZhbHVlOiBtYXRjaFs0XX0pKTsKLSAgICAgICAg
ZWxzZSBpZiAobWF0Y2hbNV0gIT09IHVuZGVmaW5lZCkKLSAgICAgICAgICAgIHRva2Vucy5wdXNo
KGNyZWF0ZVRva2VuKG1hdGNoWzVdKSk7Ci0gICAgfQotICAgIHJldHVybiB0b2tlbnM7Ci19Ci0K
LS8vIENoZWNrcyBpZiB0aGUgdG9rZW4gaXMgYSBudW1iZXIuIENhbiBiZSB1c2VkIGluIGNvbWJp
bmF0aW9uIHdpdGggdGhlICJUb2tlbi5pc0EiIG1ldGhvZC4KLWZ1bmN0aW9uIG51bWJlcih0b2tl
bikKLXsKLSAgICByZXR1cm4gdG9rZW4udHlwZSA9PSAiZmxvYXQiIHx8IHRva2VuLnR5cGUgPT0g
ImludGVnZXIiOwotfQotCi0vLyBIZWxwZXIgY2xhc3MgdG8gaXRlcmF0ZSBvbiB0aGUgdG9rZW4g
c3RyZWFtLiBJdCB3aWxsIGFkZCBhbiAiZW5kIgotLy8gdG9rZW4gYXQgdGhlIGVuZCB0byBtYWtl
IGl0IGVhc2llciB0byB1c2UgdGhlICJhaGVhZCIgZnVuY3Rpb24KLS8vIHdpdGhvdXQgY2hlY2tp
bmcgaWYgaXQncyB0aGUgbGFzdCB0b2tlbiBpbiB0aGUgc3RyZWFtLgotZnVuY3Rpb24gVG9rZW5T
dHJlYW0odG9rZW5zKSB7Ci0gICAgdGhpcy50b2tlbnMgPSB0b2tlbnM7Ci0gICAgdGhpcy50b2tl
bnMucHVzaChuZXcgVG9rZW4oImVuZCIpKTsKLSAgICB0aGlzLnRva2VuSW5kZXggPSAwOwotfQot
Ci1Ub2tlblN0cmVhbS5wcm90b3R5cGUuY3VycmVudCA9IGZ1bmN0aW9uKCkgCi17IAotICAgIHJl
dHVybiB0aGlzLnRva2Vuc1t0aGlzLnRva2VuSW5kZXhdOyAKLX0KLQotVG9rZW5TdHJlYW0ucHJv
dG90eXBlLmFoZWFkID0gZnVuY3Rpb24oKSAKLXsKLSAgICByZXR1cm4gdGhpcy50b2tlbnNbdGhp
cy50b2tlbkluZGV4ICsgMV07IAotfQotCi0vLyBTa2lwcyB0aGUgY3VycmVudCB0b2tlbiBvbmx5
IGlmIGl0IG1hdGNoZXMgdGhlICJ0eXBlTWF0Y2hlciIuIE90aGVyd2lzZSBpdCB0aHJvd3MgYW4g
ZXJyb3IuCi1Ub2tlblN0cmVhbS5wcm90b3R5cGUuc2tpcCA9IGZ1bmN0aW9uKHR5cGVNYXRjaGVy
KQotewotICAgIGlmICghdHlwZU1hdGNoZXIgfHwgdGhpcy5jdXJyZW50KCkuaXNBKHR5cGVNYXRj
aGVyKSkgewotICAgICAgICB2YXIgdG9rZW4gPSB0aGlzLmN1cnJlbnQoKTsKLSAgICAgICAgKyt0
aGlzLnRva2VuSW5kZXg7Ci0gICAgICAgIHJldHVybiB0b2tlbjsKLSAgICB9Ci0gICAgdGhyb3cg
bmV3IEVycm9yKCJDYW5ub3QgdXNlICIgKyBKU09OLnN0cmluZ2lmeSh0eXBlTWF0Y2hlcikgKyAi
IHRvIHNraXAgb3ZlciAiICsgSlNPTi5zdHJpbmdpZnkodGhpcy5haGVhZCgpKSk7Ci19Ci0KLS8v
IFNraXBzIHRoZSBjdXJyZW50IHRva2VuLCBvbmx5IGlmIGl0IG1hdGNoZXMgdGhlICJ0eXBlTWF0
Y2hlciIuIE1ha2VzIGl0IGVhc3kgdG8gc2tpcCBvdmVyIGNvbW1hIHRva2Vucy4KLVRva2VuU3Ry
ZWFtLnByb3RvdHlwZS5za2lwSWZOZWVkZWQgPSBmdW5jdGlvbih0eXBlTWF0Y2hlcikKLXsKLSAg
ICBpZiAodGhpcy5haGVhZCgpICYmIHRoaXMuYWhlYWQoKS5pc0EodHlwZU1hdGNoZXIpKQotICAg
ICAgICArK3RoaXMudG9rZW5JbmRleDsKLX0KLQotLy8gQ3JlYXRlcyBhIG5ldyAiZnVuY3Rpb24i
IG5vZGUuIEl0IGV4cGVjdHMgdGhhdCB0aGUgY3VycmVudCB0b2tlbiBpcyB0aGUgZnVuY3Rpb24g
bmFtZS4KLWZ1bmN0aW9uIHBhcnNlRnVuY3Rpb24obSkKLXsKLSAgICB2YXIgZnVuY3Rpb25PYmpl
Y3QgPSB7Ci0gICAgICAgIHR5cGU6ICJmdW5jdGlvbiIsCi0gICAgICAgIG5hbWU6IG0uc2tpcCgp
LnZhbHVlCi0gICAgfTsKLSAgICBtLnNraXAoIigiKTsKLSAgICBmdW5jdGlvbk9iamVjdC5hcmd1
bWVudHMgPSBwYXJzZUxpc3QobSwgWyIpIiwgImVuZCJdKTsKLSAgICBtLnNraXAoIikiKTsKLSAg
ICByZXR1cm4gZnVuY3Rpb25PYmplY3Q7Ci19Ci0KLS8vIENyZWF0ZXMgYSBuZXcgInBhcmFtZXRl
ciIgbm9kZS4gSXQgZXhwZWN0cyB0aGF0IHRoZSBjdXJyZW50IHRva2VuIGlzIHRoZSBwYXJhbWV0
ZXIgbmFtZS4KLS8vIEl0IGNvbnN1bWVzIGV2ZXJ5dGhpbmcgYmVmb3JlIHRoZSBmb2xsb3dpbmcg
Y29tbWEuCi1mdW5jdGlvbiBwYXJzZVBhcmFtZXRlcihtKQotewotICAgIHZhciBmdW5jdGlvbk9i
amVjdCA9IHsKLSAgICAgICAgdHlwZTogInBhcmFtZXRlciIsCi0gICAgICAgIG5hbWU6IG0uc2tp
cCgpLnZhbHVlCi0gICAgfTsKLSAgICBmdW5jdGlvbk9iamVjdC52YWx1ZSA9IHBhcnNlTGlzdCht
LCBbIiwiLCAiZW5kIl0pOwotICAgIG0uc2tpcElmTmVlZGVkKCIsIik7Ci0gICAgcmV0dXJuIGZ1
bmN0aW9uT2JqZWN0OwotfQotCi0vLyBDb25zdW1lcyBhIGxpc3Qgb2YgdG9rZW5zIGJlZm9yZSBy
ZWFjaGluZyB0aGUgImVuZFRva2VuIiBhbmQgcmV0dXJucyBhbiBhcnJheSB3aXRoIGFsbCB0aGUg
cGFyc2VkIGl0ZW1zLgotLy8gTWFrZXMgdGhlIGZvbGxvd2luZyBhc3N1bXB0aW9uczoKLS8vIC0g
aWYgYSBrZXl3b3JkIGlzIGZvbGxvd2VkIGJ5ICIoIiB0aGVuIGl0IGlzIGEgc3RhcnQgb2YgZnVu
Y3Rpb24KLS8vIC0gaWYgYSBrZXl3b3JkIGlzIG5vdCBmb2xsb3dlZCBieSAiLCIgaXQgaXMgYSBw
YXJhbWV0ZXIKLS8vIEtleXdvcmRzIHRoYXQgZG8gbm90IG1hdGNoIGVpdGhlciBvZiB0aGUgcHJl
dmlvdXMgcnVsZXMgYW5kIHRva2VucyBsaWtlIG51bWJlciBhbmQgdXJsIGFyZSBqdXN0IGNsb25l
ZC4KLWZ1bmN0aW9uIHBhcnNlTGlzdChtLCBlbmRUb2tlbikKLXsKLSAgICB2YXIgcmVzdWx0ID0g
W10sIHRva2VuOwotICAgIHdoaWxlICgodG9rZW4gPSBtLmN1cnJlbnQoKSkgJiYgIXRva2VuLmlz
QShlbmRUb2tlbikpIHsKLSAgICAgICAgaWYgKHRva2VuLmlzQSgia2V5d29yZCIpKSB7Ci0gICAg
ICAgICAgICBpZiAobS5haGVhZCgpLmlzQSgiKCIpKQotICAgICAgICAgICAgICAgIHJlc3VsdC5w
dXNoKHBhcnNlRnVuY3Rpb24obSkpOwotICAgICAgICAgICAgZWxzZSBpZiAobS5haGVhZCgpLmlz
QSgiLCIsIGVuZFRva2VuKSkgewotICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsKLSAgICAg
ICAgICAgICAgICAgICAgdHlwZTogImtleXdvcmQiLCAKLSAgICAgICAgICAgICAgICAgICAgdmFs
dWU6IG0uc2tpcCgpLnZhbHVlCi0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB9IGVs
c2UKLSAgICAgICAgICAgICAgICByZXN1bHQucHVzaChwYXJzZVBhcmFtZXRlcihtKSk7Ci0gICAg
ICAgIH0gZWxzZSBpZiAodG9rZW4uaXNBKG51bWJlcikpIHsKLSAgICAgICAgICAgIHJlc3VsdC5w
dXNoKHsKLSAgICAgICAgICAgICAgICB0eXBlOiAibnVtYmVyIiwKLSAgICAgICAgICAgICAgICB2
YWx1ZTogbS5za2lwKCkudmFsdWUKLSAgICAgICAgICAgIH0pOwotICAgICAgICB9IGVsc2UgaWYg
KHRva2VuLmlzQSgidXJsIikpIHsKLSAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsKLSAgICAgICAg
ICAgICAgICB0eXBlOiAidXJsIiwKLSAgICAgICAgICAgICAgICB2YWx1ZTogbS5za2lwKCkudmFs
dWUKLSAgICAgICAgICAgIH0pOwotICAgICAgICB9IGVsc2UgaWYgKHRva2VuLmlzQSgiLCIpKQot
ICAgICAgICAgICAgbS5za2lwKCk7Ci0gICAgICAgIGVsc2UgCi0gICAgICAgICAgICB0aHJvdyAi
VW5leHBlY3RlZCB0b2tlbiAiICsgSlNPTi5zdHJpbmdpZnkodG9rZW4pICsgIiBpbiBhIGxpc3Qu
IjsKLSAgICB9Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQotZnVuY3Rpb24gdG9rZW5zVG9WYWx1
ZXModG9rZW5zKQotewotICAgIHZhciBtID0gbmV3IFRva2VuU3RyZWFtKHRva2Vucyk7Ci0gICAg
cmV0dXJuIHBhcnNlTGlzdChtLCAiZW5kIik7Ci19Ci0KLS8vIEV4dHJhY3RzIGEgcGFyYW1ldGVy
cyBhcnJheSBmcm9tIHRoZSBwYXJhbWV0ZXJzIHN0cmluZyBvZiB0aGUgY3VzdG9tIGZpbHRlciBm
dW5jdGlvbi4KLWZ1bmN0aW9uIHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhzKQotewotICAg
IHJldHVybiB0b2tlbnNUb1ZhbHVlcyh0b2tlbml6ZVN0cmluZyhzKSk7Ci19Ci0KLS8vIE5lZWQg
dG8gcmVtb3ZlIHRoZSBiYXNlIFVSTCB0byBhdm9pZCBoYXZpbmcgbG9jYWwgcGF0aHMgaW4gdGhl
IGV4cGVjdGVkIHJlc3VsdHMuCi1mdW5jdGlvbiByZW1vdmVCYXNlVVJMKHNyYykgewotICAgIHZh
ciB1cmxSZWdleHAgPSAvdXJsXCgoW15cKV0qKVwpL2c7Ci0gICAgcmV0dXJuIHNyYy5yZXBsYWNl
KHVybFJlZ2V4cCwgZnVuY3Rpb24obWF0Y2gsIHVybCkgewotICAgICAgICByZXR1cm4gInVybCgi
ICsgdXJsLnN1YnN0cih1cmwubGFzdEluZGV4T2YoIi8iKSArIDEpICsgIikiOwotICAgIH0pOwot
fQotCi0vLyBQYXJzZXMgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIGN1c3RvbSBmaWx0ZXIgZnVuY3Rp
b24gYW5kIHJldHVybnMgaXQgdXNpbmcgdGhlIGZvbGxvd2luZyBvcmRlcjoKLS8vIC0gSWYgcGFy
YW1ldGVycyBoYXZlIGRpZmZlcmVudCB0eXBlcyAoaWUuIHVybCwgbnVtYmVyLCBuYW1lZCBwYXJh
bWV0ZXIpLCB0aGUgYWxwaGFiZXRpY2FsIG9yZGVyIG9mIHRoZSAidHlwZSIgaXMgdXNlZC4KLS8v
IC0gSWYgcGFyYW1ldGVycyBhcmUgb2YgdHlwZSAicGFyYW1ldGVyIiB0aGUgYWxwaGFiZXRpY2Fs
IG9yZGVyIG9mIHRoZSBwYXJhbWV0ZXIgbmFtZXMgaXMgdXNlZC4KLS8vIC0gSWYgcGFyYW1ldGVy
cyBhcmUgb2Ygb3RoZXIgdHlwZXMsIHRoZW4gdGhlIHZhbHVlIGlzIHVzZWQgdG8gb3JkZXIgdGhl
bSBhbHBoYWJldGljYWwuCi0vLyBUaGUgb3JkZXIgaXMgaW1wb3J0YW50IHRvIG1ha2UgaXQgZWFz
eSB0byBjb21wYXJlIHR3byBjdXN0b20gZmlsdGVycywgdGhhdCBoYXZlIGV4YWN0bHkgdGhlIHNh
bWUgcGFyYW1ldGVycywgCi0vLyBidXQgd2l0aCBwb3RlbnRpYWxseSBkaWZmZXJlbnQgIm5hbWVk
IHBhcmFtZXRlciIgdmFsdWVzLgotZnVuY3Rpb24gZ2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycyhz
KSAKLXsKLSAgICByZXR1cm4gcGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzKHJlbW92ZUJhc2VV
UkwocykpLnNvcnQoZnVuY3Rpb24oYSwgYikgeyAKLSAgICAgICAgaWYgKGEudHlwZSAhPSBiLnR5
cGUpIAotICAgICAgICAgICAgcmV0dXJuIGEudHlwZS5sb2NhbGVDb21wYXJlKGIudHlwZSk7Ci0g
ICAgICAgIGlmIChhLnR5cGUgPT0gInBhcmFtZXRlciIpCi0gICAgICAgICAgICByZXR1cm4gYS5u
YW1lLmxvY2FsZUNvbXBhcmUoYi5uYW1lKTsKLSAgICAgICAgcmV0dXJuIGEudmFsdWUudG9TdHJp
bmcoKS5sb2NhbGVDb21wYXJlKGIudmFsdWUudG9TdHJpbmcoKSk7Ci0gICAgfSk7Ci19CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ZyYWdtZW50LWNvbG9y
LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvci5m
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzFiZDcyNy4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ZyYWdtZW50LWNvbG9yLmZzCisrKyAv
ZGV2L251bGwKQEAgLTEsNyArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVuaWZv
cm0gZmxvYXQgY29sb3JBcnJheVs0XTsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9GcmFnQ29s
b3IgPSB2ZWM0KGNvbG9yQXJyYXlbMF0sIGNvbG9yQXJyYXlbMV0sIGNvbG9yQXJyYXlbMl0sIGNv
bG9yQXJyYXlbM10pOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9mcmFnbWVudC1jb2xvcnMuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL2ZyYWdtZW50LWNvbG9ycy5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWNjMGUzYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2ZyYWdtZW50LWNvbG9ycy5mcworKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLXByZWNp
c2lvbiBtZWRpdW1wIGZsb2F0OwotdW5pZm9ybSB2ZWM0IGMxOwotdW5pZm9ybSB2ZWM0IGMyOwot
dW5pZm9ybSB2ZWM0IGMzOwotdW5pZm9ybSB2ZWM0IGM0OwotdW5pZm9ybSB2ZWM0IGM1OwotdW5p
Zm9ybSB2ZWM0IGM2OwotCi12b2lkIG1haW4oKQotewotCWlmIChjMSA9PSBjMiAmJiBjMSA9PSBj
MyAmJiBjMSA9PSBjNCAmJiBjMSA9PSBjNSAmJiBjMSA9PSBjNikKLSAgICAJZ2xfRnJhZ0NvbG9y
ID0gYzE7Ci0gICAgZWxzZSAKLSAgICAJZ2xfRnJhZ0NvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4w
LCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9mcmFnbWVudC1tYXROLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9m
cmFnbWVudC1tYXROLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZmQzMTE2Li4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvZnJhZ21lbnQt
bWF0Ti5mcworKysgL2Rldi9udWxsCkBAIC0xLDIzICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1w
IGZsb2F0OwotdW5pZm9ybSBtYXQyIG0xOwotdW5pZm9ybSBtYXQzIG0yOwotdW5pZm9ybSBtYXQ0
IG0zOwotCi12b2lkIG1haW4oKQotewotICAgIC8vIFRlc3RpbmcgaW5kaXZpZHVhbCBlbnRyaWVz
IHRvIGNoZWNrIGNvcnJlY3Qgb3JkZXIuCi0gICAgaWYgKG0xWzBdWzBdID09IDEuICYmIG0xWzBd
WzFdID09IDEuCi0gICAgICAgICYmIG0xWzFdWzBdID09IDAuICYmIG0xWzFdWzFdID09IDAuCi0g
ICAgICAgICYmCi0gICAgICAgIG0yWzBdWzBdID09IDEuICYmIG0yWzBdWzFdID09IDAuICYmIG0y
WzBdWzJdID09IDEuCi0gICAgICAgICYmIG0yWzFdWzBdID09IDAuICYmIG0yWzFdWzFdID09IDEu
ICYmIG0yWzFdWzJdID09IDEuCi0gICAgICAgICYmIG0yWzJdWzBdID09IDAuICYmIG0yWzJdWzFd
ID09IDEuICYmIG0yWzJdWzJdID09IDAuCi0gICAgICAgICYmCi0gICAgICAgIG0zWzBdWzBdID09
IDEuICYmIG0zWzBdWzFdID09IDEuICYmIG0zWzBdWzJdID09IDAuICYmIG0zWzBdWzNdID09IDAu
Ci0gICAgICAgICYmIG0zWzFdWzBdID09IDAuICYmIG0zWzFdWzFdID09IDEuICYmIG0zWzFdWzJd
ID09IDEuICYmIG0zWzFdWzNdID09IDAuCi0gICAgICAgICYmIG0zWzJdWzBdID09IDEuICYmIG0z
WzJdWzFdID09IDAuICYmIG0zWzJdWzJdID09IDAuICYmIG0zWzJdWzNdID09IDEuCi0gICAgICAg
ICYmIG0zWzNdWzBdID09IDEuICYmIG0zWzNdWzFdID09IDEuICYmIG0zWzNdWzJdID09IDEuICYm
IG0zWzNdWzNdID09IDEuKQotICAgICAgICBnbF9GcmFnQ29sb3IgPSB2ZWM0KDAuMCwgMS4wLCAw
LjAsIDEuMCk7Ci0gICAgZWxzZSAKLSAgICAgICAgZ2xfRnJhZ0NvbG9yID0gdmVjNCgxLjAsIDAu
MCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9ncmF5c2NhbGUtY29sb3ItbWF0cml4LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9ncmF5c2NhbGUtY29sb3ItbWF0cml4LmZzCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBiMDNkODVkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvZ3JheXNjYWxlLWNvbG9yLW1hdHJpeC5mcworKysgL2Rldi9udWxsCkBA
IC0xLDkgKzAsMCBAQAotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfQ29sb3JNYXRyaXggPSBtYXQ0
KAotICAgICAgICAwLjMzMywgMC4zMzMsIDAuMzMzLCAwLjAwMCwKLSAgICAgICAgMC4zMzMsIDAu
MzMzLCAwLjMzMywgMC4wMDAsCi0gICAgICAgIDAuMzMzLCAwLjMzMywgMC4zMzMsIDAuMDAwLAot
ICAgICAgICAwLjAwMCwgMC4wMDAsIDAuMDAwLCAxLjAwMAotICAgICk7Ci19CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtYS10cmlhbmdsZS1j
b29yZC13aXRoLWF0dGFjaGVkLW1lc2gudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL2ludmFsaWQtYS10cmlhbmdsZS1jb29yZC13aXRoLWF0dGFjaGVkLW1lc2gudnMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVjNThjOGUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLWEtdHJpYW5nbGUtY29vcmQtd2l0
aC1hdHRhY2hlZC1tZXNoLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gVGhp
cyBzaGFkZXIgc2hvdWxkIG5vdCBleGVjdXRlIGlmIHRoZSBtZXNoIGlzIGF0dGFjaGVkIGJlY2F1
c2UgYV90cmlhbmdsZUNvb3JkIGlzIG9ubHkgYXZhaWxhYmxlIGluIGRldGFjaGVkIG1lc2hzZXMu
Ci0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjMyBhX3RyaWFuZ2xl
Q29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVj
dGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVj
dGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtY3VzdG9tLWF0dHJpYnV0ZS52cyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzZWI2YjFlLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC1jdXN0b20tYXR0cmlidXRlLnZz
CisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyByZWxh
dGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJlY2F1
c2UgbXlfYXR0cmlidXRlIGlzIG5vdCBvbmUgb2YgdGhlIGJ1aWx0LWluIGF0dHJpYnV0ZXMuCi0K
LXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgZmxvYXQgbXlfYXR0cmlidXRl
OwotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25N
YXRyaXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25N
YXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXNoYWRlci52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDNjMWViYmIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy9pbnZhbGlkLXNoYWRlci52cworKysgL2Rldi9udWxsCkBAIC0xLDIgKzAsMCBAQAotVGhp
cyBpcyBub3QgYSByZWFsIHZlcnRleCBzaGFkZXIuIEl0IGlzIGp1c3QgaW52YWxpZCBzaGFkZXIg
Y29kZS4KLUl0IGlzIHVzZWQgdG8gdGVzdCB0aGF0IHRoZSBmaWx0ZXIgaXMgbm90IGRyYXduIHdo
ZW4gdGhlIHNoYWRlciBpcyBpbnZhbGlkLgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBl
LWEtbWVzaC1jb29yZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52
YWxpZC10eXBlLWEtbWVzaC1jb29yZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDgyNDk3Ny4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2ludmFsaWQtdHlwZS1hLW1lc2gtY29vcmQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCww
IEBACi0vLyBJZiB0aGlzIHNoYWRlcidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20g
ZmlsdGVyIGRvZXMgbm90IGV4ZWN1dGUgYmVjYXVzZSBhX21lc2hDb29yZCdzIHR5cGUgaXMgaW52
YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIGFfbWVzaENvb3JkIHNob3Vs
ZCBiZSBhIHZlYzIsIG5vdCBhIGZsb2F0LgotYXR0cmlidXRlIGZsb2F0IGFfbWVzaENvb3JkOwot
YXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLQotdW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1h
dHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1h
dHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXBvc2l0aW9uLnZzIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS1wb3NpdGlvbi52cwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNTE1NGVhNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXBvc2l0aW9uLnZzCisrKyAvZGV2
L251bGwKQEAgLTEsMTIgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyByZWxhdGVkIHRlc3Qg
cGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJlY2F1c2UgYV9wb3Np
dGlvbidzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8v
IGFfcG9zaXRpb24gc2hvdWxkIGJlIGEgdmVjNCwgbm90IGEgdmVjMy4KLWF0dHJpYnV0ZSB2ZWMz
IGFfcG9zaXRpb247Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotCi12b2lkIG1h
aW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogdmVjNChhX3Bv
c2l0aW9uLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9pbnZhbGlkLXR5cGUtYS10ZXgtY29vcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRleC1jb29yZC52cwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMjQyOWM3MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRleC1jb29yZC52cworKysgL2Rldi9u
dWxsCkBAIC0xLDEzICswLDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBh
c3NlcywgdGhlIGN1c3RvbSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIGFfdGV4Q29v
cmQncyB0eXBlIGlzIGludmFsaWQuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyBh
X21lc2hDb29yZCBzaG91bGQgYmUgYSB2ZWMyLCBub3QgYW4gdmVjNC4KLWF0dHJpYnV0ZSB2ZWM0
IGFfdGV4Q29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0IHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9IHVf
cHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRyaWFuZ2xlLWNvb3JkLnZz
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS10cmlh
bmdsZS1jb29yZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmVkNjYyOS4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlw
ZS1hLXRyaWFuZ2xlLWNvb3JkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLy8g
SWYgdGhpcyBzaGFkZXIncyByZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBk
b2VzIG5vdCBleGVjdXRlIGJlY2F1c2UgYV90cmlhbmdsZUNvb3JkJ3MgdHlwZSBpcyBpbnZhbGlk
LgotLy8gVGhlIGN1c3RvbSBmaWx0ZXIgc2hvdWxkIGRlZmluZSBhIGRldGFjaGVkIG1lc2ggYmVj
YXVzZSBhX3RyaWFuZ2xlQ29vcmQgaXMgb25seSBhdmFpbGFibGUgd2l0aCBhIGRldGFjaGVkIG1l
c2guCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyBhX3RyaWFuZ2xlQ29vcmQgc2hv
dWxkIGJlIGEgdmVjMywgbm90IGEgdmVjMi4KLWF0dHJpYnV0ZSB2ZWMyIGFfdHJpYW5nbGVDb29y
ZDsKLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9u
TWF0cml4OwotCi12b2lkIG1haW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9u
TWF0cml4ICogYV9wb3NpdGlvbjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1hcnJheS52cyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWF0dHJpYnV0ZS1hcnJheS52
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjEzZTc5ZS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hdHRyaWJ1dGUt
YXJyYXkudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi0vLyBJZiB0aGlzIHNoYWRl
cidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20gZmlsdGVyIGRvZXMgbm90IGV4ZWN1
dGUgYmVjYXVzZSBhX3Bvc2l0aW9uJ3MgdHlwZSBpcyBpbnZhbGlkLgotCi1wcmVjaXNpb24gbWVk
aXVtcCBmbG9hdDsKLQotLy8gYV9wb3NpdGlvbiBzaG91bGQgYmUgYSB2ZWM0LCBub3QgYSB2ZWM0
IGFycmF5LgotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvblsxXTsKLXVuaWZvcm0gbWF0NCB1X3By
b2plY3Rpb25NYXRyaXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3By
b2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0aW9uWzBdOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJveC5mcyBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1ib3gu
ZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQxY2I2N2EuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1tZXNoLWJv
eC5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3Mg
cmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3RvbSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBi
ZWNhdXNlIHVfbWVzaEJveCdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAg
ZmxvYXQ7Ci0KLS8vIHVfbWVzaEJveCBzaG91bGQgYmUgYSB2ZWM0LCBub3QgYSB2ZWMzLgotdW5p
Zm9ybSB2ZWMzIHVfbWVzaEJveDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfTWl4Q29sb3Ig
PSB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LW1lc2gtc2l6ZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1zaXplLmZz
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYjA4MGUwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1zaXpl
LmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyBy
ZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJl
Y2F1c2UgdV9tZXNoU2l6ZSdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAg
ZmxvYXQ7Ci0KLS8vIHVfbWVzaFNpemUgc2hvdWxkIGJlIGEgdmVjMiwgbm90IGEgZmxvYXQuCi11
bmlmb3JtIGZsb2F0IHVfbWVzaFNpemU7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgY3NzX01peENv
bG9yID0gdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJp
eC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUt
cHJvamVjdGlvbi1tYXRyaXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI1ZmIx
MTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZh
bGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJpeC5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICsw
LDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3Rv
bSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIHVfcHJvamVjdGlvbk1hdHJpeCdzIHR5
cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfcHJvamVj
dGlvbk1hdHJpeCBzaG91bGQgYmUgYSBtYXQ0LCBub3QgYSBtYXQzLgotdW5pZm9ybSBtYXQzIHVf
cHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfTWl4Q29sb3IgPSB2
ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LXRleHR1cmUtc2l6ZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGV4dHVyZS1zaXpl
LmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlMDU2OGYwLi4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGV4dHVy
ZS1zaXplLmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFk
ZXIncyByZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVj
dXRlIGJlY2F1c2UgdV90ZXh0dXJlU2l6ZSdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9u
IG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfdGV4dHVyZVNpemUgc2hvdWxkIGJlIGEgdmVjMiwgbm90
IGEgdmVjMy4KLXVuaWZvcm0gdmVjMyB1X3RleHR1cmVTaXplOwotCi12b2lkIG1haW4oKQotewot
ICAgIGNzc19NaXhDb2xvciA9IHZlYzQoMS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGls
ZS1zaXplLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5
cGUtdS10aWxlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE3ZGEzZTgu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlk
LXR5cGUtdS10aWxlLXNpemUuZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0vLyBJ
ZiB0aGlzIHNoYWRlcidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20gZmlsdGVyIGRv
ZXMgbm90IGV4ZWN1dGUgYmVjYXVzZSB1X3RpbGVTaXplJ3MgdHlwZSBpcyBpbnZhbGlkLgotCi1w
cmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotLy8gdV90aWxlU2l6ZSBzaG91bGQgYmUgYSB2ZWMy
LCBub3QgYSBtYXQyLgotdW5pZm9ybSBtYXQyIHVfdGlsZVNpemU7Ci0KLXZvaWQgbWFpbigpCi17
Ci0gICAgY3NzX01peENvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdW5p
Zm9ybS1hcnJheS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxp
ZC10eXBlLXVuaWZvcm0tYXJyYXkuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYx
YzM5OWQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9p
bnZhbGlkLXR5cGUtdW5pZm9ybS1hcnJheS5mcworKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAg
QEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3RvbSBm
aWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIHVfbWVzaEJveCdzIHR5cGUgaXMgaW52YWxp
ZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIHVfbWVzaEJveCBzaG91bGQgYmUg
YSB2ZWM0LCBub3QgYW4gYXJyYXkgb2YgdmVjNC4KLXVuaWZvcm0gdmVjNCB1X21lc2hCb3hbMV07
Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgY3NzX01peENvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4w
LCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9taXgtY29sb3IuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL21peC1j
b2xvci5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDJmZTYzNC4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL21peC1jb2xvci5mcworKysg
L2Rldi9udWxsCkBAIC0xLDcgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci11bmlm
b3JtIHZlYzQgbWl4X2NvbG9yOwotCi12b2lkIG1haW4oKQotewotICAgIGNzc19NaXhDb2xvciA9
IG1peF9jb2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNv
dXJjZXMvcGFzcy10ZXgtY29vcmQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL3Bhc3MtdGV4LWNvb3JkLnZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0ZmZk
MjdiLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvcGFz
cy10ZXgtY29vcmQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi1wcmVjaXNpb24g
bWVkaXVtcCBmbG9hdDsKLQotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLWF0dHJpYnV0ZSB2
ZWMyIGFfdGV4Q29vcmQ7Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdmFyeWlu
ZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgdl90ZXhDb29yZCA9IGFf
dGV4Q29vcmQ7Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0
aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9z
YW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXguZnMKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNlZjk4ODUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1p
eC5mcworKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLS8vIFRoaXMgdGVzdCBjaGVja3Mg
dGhhdCBhIHNoYWRlciBjYW5ub3QgcmVhZCBmcm9tIHRoZSBpbnRlcm5hbCAiY3NzX3VfdGV4dHVy
ZSIgc2FtcGxlciwgd2hpY2ggcmVmZXJlbmNlcyB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLS8v
IFRoaXMgc2hhZGVyIGlzIHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlvbiBhbmQg
c2hvdWxkIGZhaWwgdG8gdmFsaWRhdGUgYmVjYXVzZSBpdCBkZWZpbmVzICJjc3NfdV90ZXh0dXJl
IiwKLS8vIHVzaW5nIHRoZSByZXN0cmljdGVkICJjc3NfIiBwcmVmaXguCi0KLXByZWNpc2lvbiBt
ZWRpdW1wIGZsb2F0OwotCi11bmlmb3JtIHNhbXBsZXIyRCBjc3NfdV90ZXh0dXJlOwotCi12YXJ5
aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBtYWluKCkKLXsKLQkvLyBUcnkgdG8gc2FtcGxl
IHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZlYzQgY29sb3IgPSB0ZXh0dXJlMkQoY3NzX3Vf
dGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBTd2FwIHRoZSByZWQgYW5kIGdyZWVuIGNoYW5u
ZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0KLQljc3NfTWl4Q29sb3IgPSBjb2xvcjsKLX0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLWRl
ZmluZWQtY3NzLXUtdGV4dHVyZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVyZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNTg0NmQxNy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL3NhbXBsZS1kZWZpbmVkLWNzcy11LXRleHR1cmUuZnMKKysrIC9kZXYvbnVsbApA
QCAtMSwyMCArMCwwIEBACi0vLyBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYSBzaGFkZXIgY2Fubm90
IHJlYWQgZnJvbSB0aGUgaW50ZXJuYWwgImNzc191X3RleHR1cmUiIHNhbXBsZXIsIHdoaWNoIHJl
ZmVyZW5jZXMgdGhlIERPTSBlbGVtZW50IHRleHR1cmUuCi0vLyBUaGlzIHNoYWRlciBzaG91bGQg
ZmFpbCB0byB2YWxpZGF0ZSBiZWNhdXNlIGl0IGRlZmluZXMgImNzc191X3RleHR1cmUiLCB3aGlj
aCBzaG91bGQgYmUgYW4gdW5ib3VuZCBzYW1wbGVyLAotLy8gc2luY2UgdGhpcyBzaGFkZXIgaXMg
bm90IHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlvbi4KLQotcHJlY2lzaW9uIG1l
ZGl1bXAgZmxvYXQ7Ci0KLXVuaWZvcm0gc2FtcGxlcjJEIGNzc191X3RleHR1cmU7Ci0KLXZhcnlp
bmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQotewotCS8vIFRyeSB0byBzYW1wbGUg
dGhlIERPTSBlbGVtZW50IHRleHR1cmUuCi0JdmVjNCBjb2xvciA9IHRleHR1cmUyRChjc3NfdV90
ZXh0dXJlLCB2X3RleENvb3JkKTsKLQotCS8vIFN3YXAgdGhlIHJlZCBhbmQgZ3JlZW4gY2hhbm5l
bHMuCi0JY29sb3IucmcgPSBjb2xvci5ncjsKLQotCWdsX0ZyYWdDb2xvciA9IGNvbG9yOwotfQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtdS10
ZXh0dXJlLW1peC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxl
LXUtdGV4dHVyZS1taXguZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ1ZjM1MjIu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUt
dS10ZXh0dXJlLW1peC5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAKLS8vIFRoaXMg
dGVzdCBjaGVja3MgdGhhdCBhIHNoYWRlciB3aXRoIGFuIHVuYm91bmQgc2FtcGxlciBpcyBub3Qg
cGVybWl0dGVkIHRvIGV4ZWN1dGUuCi0vLyBUaGlzIHNoYWRlciBpcyByZWZlcmVuY2VkIGZyb20g
dGhlIENTUyBtaXggZnVuY3Rpb24gYW5kIHdyaXRlcyBpdHMgb3V0cHV0IHRvIGNzc19NaXhDb2xv
ci4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXVuaWZvcm0gc2FtcGxlcjJEIHVfdGV4
dHVyZTsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0JLy8g
VHJ5IHRvIHNhbXBsZSB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLQl2ZWM0IGNvbG9yID0gdGV4
dHVyZTJEKHVfdGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBTd2FwIHRoZSByZWQgYW5kIGdy
ZWVuIGNoYW5uZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0KLQljc3NfTWl4Q29sb3IgPSBj
b2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
c2FtcGxlLXUtdGV4dHVyZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
c2FtcGxlLXUtdGV4dHVyZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2MwMmI4
NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3NhbXBs
ZS11LXRleHR1cmUuZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vLyBUaGlzIHRl
c3QgY2hlY2tzIHRoYXQgYSBzaGFkZXIgd2l0aCBhbiB1bmJvdW5kIHNhbXBsZXIgaXMgbm90IHBl
cm1pdHRlZCB0byBleGVjdXRlLgotLy8gVGhpcyBzaGFkZXIgaXMgbm90IHJlZmVyZW5jZWQgZnJv
bSB0aGUgQ1NTIG1peCBmdW5jdGlvbiBhbmQgd3JpdGVzIGl0cyBvdXRwdXQgdG8gZ2xfRnJhZ0Nv
bG9yLgotCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdW5pZm9ybSBzYW1wbGVyMkQgdV90
ZXh0dXJlOwotCi12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBtYWluKCkKLXsKLQkv
LyBUcnkgdG8gc2FtcGxlIHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZlYzQgY29sb3IgPSB0
ZXh0dXJlMkQodV90ZXh0dXJlLCB2X3RleENvb3JkKTsKLQotCS8vIFN3YXAgdGhlIHJlZCBhbmQg
Z3JlZW4gY2hhbm5lbHMuCi0JY29sb3IucmcgPSBjb2xvci5ncjsKLQotCWdsX0ZyYWdDb2xvciA9
IGNvbG9yOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4LmZzIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4LmZz
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYjk2NmIwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10
ZXh0dXJlLW1peC5mcworKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLS8vIFRoaXMgdGVz
dCBjaGVja3MgdGhhdCBhIHNoYWRlciBjYW5ub3QgcmVhZCBmcm9tIHRoZSBpbnRlcm5hbCAiY3Nz
X3VfdGV4dHVyZSIgc2FtcGxlciwgd2hpY2ggcmVmZXJlbmNlcyB0aGUgRE9NIGVsZW1lbnQgdGV4
dHVyZS4KLS8vIFRoaXMgc2hhZGVyIHNob3VsZCBmYWlsIHRvIHZhbGlkYXRlIGJlY2F1c2UgImNz
c191X3RleHR1cmUiIHNob3VsZCBiZSB1bmRlZmluZWQgdG8gdGhpcyBjb2RlLgotCi1wcmVjaXNp
b24gbWVkaXVtcCBmbG9hdDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFp
bigpCi17Ci0JLy8gVHJ5IHRvIHNhbXBsZSB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLQl2ZWM0
IGNvbG9yID0gdGV4dHVyZTJEKGNzc191X3RleHR1cmUsIHZfdGV4Q29vcmQpOwotCi0JLy8gU3dh
cCB0aGUgcmVkIGFuZCBncmVlbiBjaGFubmVscy4KLQljb2xvci5yZyA9IGNvbG9yLmdyOwotCi0J
Y3NzX01peENvbG9yID0gY29sb3I7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10ZXh0
dXJlLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMWUyZjJhLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1j
c3MtdS10ZXh0dXJlLmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTcgKzAsMCBAQAotLy8gVGhpcyB0
ZXN0IGNoZWNrcyB0aGF0IGEgc2hhZGVyIGNhbm5vdCByZWFkIGZyb20gdGhlIGludGVybmFsICJj
c3NfdV90ZXh0dXJlIiBzYW1wbGVyLCB3aGljaCByZWZlcmVuY2VzIHRoZSBET00gZWxlbWVudCB0
ZXh0dXJlLgotLy8gVGhpcyBzaGFkZXIgc2hvdWxkIGZhaWwgdG8gdmFsaWRhdGUgYmVjYXVzZSAi
Y3NzX3VfdGV4dHVyZSIgc2hvdWxkIGJlIHVuZGVmaW5lZCB0byB0aGlzIGNvZGUuCi0KLXByZWNp
c2lvbiBtZWRpdW1wIGZsb2F0OwotCi12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9pZCBt
YWluKCkKLXsKLQkvLyBUcnkgdG8gc2FtcGxlIHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgotCXZl
YzQgY29sb3IgPSB0ZXh0dXJlMkQoY3NzX3VfdGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkvLyBT
d2FwIHRoZSByZWQgYW5kIGdyZWVuIGNoYW5uZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7Ci0K
LQlnbF9GcmFnQ29sb3IgPSBjb2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdS1tZXNoLWJveC1pcy11bml0LXNxdWFyZS5mcwpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2E4ZDA2OC4uMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1ib3gtaXMtdW5pdC1zcXVhcmUu
ZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vLyBUZXN0IHdoZXRoZXIgdV9tZXNo
Qm94IGlzIGNvcnJlY3RseSBzZXQ7IGNoYW5nZSBmcmFnbWVudCBjb2xvciB0byBncmVlbiBpZiB5
ZXMuCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVuaWZvcm0gdmVjNCB1X21lc2hCb3g7Ci0K
LWJvb2wgYXJlRmxvYXRzRXF1YWwoZmxvYXQgYSwgZmxvYXQgYikKLXsKLSAgICBjb25zdCBmbG9h
dCBlcHNpbG9uID0gMC4wMDE7Ci0gICAgcmV0dXJuIChhID4gKGIgLSBlcHNpbG9uKSkgJiYgKGEg
PCAoYiArIGVwc2lsb24pKTsKLX0KLQotYm9vbCBhcmVWZWN0b3JzRXF1YWwodmVjNCBhLCB2ZWM0
IGIpCi17Ci0gICAgcmV0dXJuIGFyZUZsb2F0c0VxdWFsKGEueCwgYi54KSAmJiBhcmVGbG9hdHNF
cXVhbChhLnksIGIueSkgJiYgYXJlRmxvYXRzRXF1YWwoYS56LCBiLnopICYmIGFyZUZsb2F0c0Vx
dWFsKGEudywgYi53KTsKLX0KLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9GcmFnQ29sb3IgPSBh
cmVWZWN0b3JzRXF1YWwodV9tZXNoQm94LCB2ZWM0KC0wLjUsIC0wLjUsIDEuMCwgMS4wKSkgPyB2
ZWM0KDAuMCwgMS4wLCAwLjAsIDEuMCkgOiB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1zaXpl
LmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LW1lc2gtc2l6ZS5mcwpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjU1Mjc3NC4uMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1zaXplLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsMTkgKzAsMCBAQAotLy8gVGVzdCB3aGV0aGVyIHVfbWVzaFNpemUgaXMgY29ycmVj
dGx5IHNldDsgY2hhbmdlIGZyYWdtZW50IHRvIGNvbG9yIGdyZWVuIGlmIHllcy4KLXByZWNpc2lv
biBtZWRpdW1wIGZsb2F0OwotdW5pZm9ybSB2ZWMyIHVfbWVzaFNpemU7Ci0KLWJvb2wgYXJlRmxv
YXRzRXF1YWwoZmxvYXQgYSwgZmxvYXQgYikKLXsKLSAgICBjb25zdCBmbG9hdCBlcHNpbG9uID0g
MC4wMDE7Ci0gICAgcmV0dXJuIChhID4gKGIgLSBlcHNpbG9uKSkgJiYgKGEgPCAoYiArIGVwc2ls
b24pKTsKLX0KLQotYm9vbCBhcmVWZWN0b3JzRXF1YWwodmVjMiBhLCB2ZWMyIGIpCi17Ci0gICAg
cmV0dXJuIGFyZUZsb2F0c0VxdWFsKGEueCwgYi54KSAmJiBhcmVGbG9hdHNFcXVhbChhLnksIGIu
eSk7Ci19Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfRnJhZ0NvbG9yID0gYXJlVmVjdG9yc0Vx
dWFsKHVfbWVzaFNpemUsIHZlYzIoMTAuMCwgMjAuMCkpID8gdmVjNCgwLjAsIDEuMCwgMC4wLCAx
LjApIDogdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LXRleHR1cmUtc2l6ZS5mcyBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdS10ZXh0dXJlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDE3NTE1ZGYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL3Jlc291cmNlcy91LXRleHR1cmUtc2l6ZS5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5
ICswLDAgQEAKLS8vIFRlc3Qgd2hldGhlciB1X3RleHR1cmVTaXplIGlzIGNvcnJlY3RseSBzZXQ7
IGNoYW5nZSBmcmFnbWVudCBjb2xvciB0byBncmVlbiBpZiB5ZXMuCi1wcmVjaXNpb24gbWVkaXVt
cCBmbG9hdDsKLXVuaWZvcm0gdmVjMiB1X3RleHR1cmVTaXplOwotCi1ib29sIGFyZUZsb2F0c0Vx
dWFsKGZsb2F0IGEsIGZsb2F0IGIpCi17Ci0gICAgY29uc3QgZmxvYXQgZXBzaWxvbiA9IDAuMDAx
OwotICAgIHJldHVybiAoYSA+IChiIC0gZXBzaWxvbikpICYmIChhIDwgKGIgKyBlcHNpbG9uKSk7
Ci19Ci0KLWJvb2wgYXJlVmVjdG9yc0VxdWFsKHZlYzIgYSwgdmVjMiBiKQotewotICAgIHJldHVy
biBhcmVGbG9hdHNFcXVhbChhLngsIGIueCkgJiYgYXJlRmxvYXRzRXF1YWwoYS55LCBiLnkpOwot
fQotCi12b2lkIG1haW4oKQotewotICAgIGdsX0ZyYWdDb2xvciA9IGFyZVZlY3RvcnNFcXVhbCh1
X3RleHR1cmVTaXplLCB2ZWMyKDEwMC4wLCAxMDAuMCkpID8gdmVjNCgwLjAsIDEuMCwgMC4wLCAx
LjApIDogdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91LXRpbGUtc2l6ZS5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvdS10aWxlLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDkzNWUzNDAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L3Jlc291cmNlcy91LXRpbGUtc2l6ZS5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAK
LS8vIFRlc3Qgd2hldGhlciB1X3RpbGVTaXplIGlzIGNvcnJlY3RseSBzZXQ7IGNoYW5nZSBmcmFn
bWVudCBjb2xvciB0byBncmVlbiBpZiB5ZXMuCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVu
aWZvcm0gdmVjMiB1X3RpbGVTaXplOwotCi1ib29sIGFyZUZsb2F0c0VxdWFsKGZsb2F0IGEsIGZs
b2F0IGIpCi17Ci0gICAgY29uc3QgZmxvYXQgZXBzaWxvbiA9IDAuMDAxOwotICAgIHJldHVybiAo
YSA+IChiIC0gZXBzaWxvbikpICYmIChhIDwgKGIgKyBlcHNpbG9uKSk7Ci19Ci0KLWJvb2wgYXJl
VmVjdG9yc0VxdWFsKHZlYzIgYSwgdmVjMiBiKQotewotICAgIHJldHVybiBhcmVGbG9hdHNFcXVh
bChhLngsIGIueCkgJiYgYXJlRmxvYXRzRXF1YWwoYS55LCBiLnkpOwotfQotCi12b2lkIG1haW4o
KQotewotICAgIGdsX0ZyYWdDb2xvciA9IGFyZVZlY3RvcnNFcXVhbCh1X3RpbGVTaXplLCB2ZWMy
KDEuMCAvIDEwLjAsIDEuMCAvIDIwLjApKSA/IHZlYzQoMC4wLCAxLjAsIDAuMCwgMS4wKSA6IHZl
YzQoMS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdW5hdmFpbGFibGUtdmFyeWluZy5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvdW5hdmFpbGFibGUtdmFyeWluZy5mcwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggODc1OGUzYy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL3VuYXZhaWxhYmxlLXZhcnlpbmcuZnMKKysrIC9kZXYvbnVsbApA
QCAtMSw4ICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotdmFyeWluZyB2ZWM0IHVu
YXZhaWxhYmxlOwotCi12b2lkIG1haW4gKCkKLXsKLSAgICBjc3NfTWl4Q29sb3IgPSB1bmF2YWls
YWJsZTsKLX0KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy92YXJ5aW5nLW1peC1jb2xvci5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvdmFyeWluZy1taXgtY29sb3IuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZh
YmMxNDUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92
YXJ5aW5nLW1peC1jb2xvci5mcworKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotcHJlY2lz
aW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXZhcnlpbmcgdmVjNCB2X21peENvbG9yOwotCi12b2lkIG1h
aW4oKQotewotICAgIGNzc19NaXhDb2xvciA9IHZfbWl4Q29sb3I7Ci19CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1leHBsb2RlLWRldGFjaGVk
LnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtZXhwbG9kZS1k
ZXRhY2hlZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTdlZGVkZC4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1leHBsb2Rl
LWRldGFjaGVkLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotcHJlY2lzaW9uIG1l
ZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVj
MiBhX3RleENvb3JkOwotYXR0cmlidXRlIHZlYzMgYV90cmlhbmdsZUNvb3JkOwotCi11bmlmb3Jt
IG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZv
aWQgbWFpbigpCi17Ci0gICAgLy8gYV90cmlhbmdsZUNvb3JkLnh5IGlzIHRoZSBwb3NpdGlvbiBv
ZiB0aGUgdGlsZSBpbiB0aGUgbWVzaCwgc28gd2Ugb2Zmc2V0IHRoZSB2ZXJ0aWNlcwotICAgIC8v
IHdpdGggdGhlIHBvc2l0aW9uIGluIG1lc2guIFRoZSB0aWxlcyBzaG91bGQgYmUgZGV0YWNoZWQg
ZnJvbSBlYWNoIG90aGVyLgotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICog
KGFfcG9zaXRpb24gKyB2ZWM0KGFfdHJpYW5nbGVDb29yZC54IC8gNC4wLCBhX3RyaWFuZ2xlQ29v
cmQueSAvIDQuMCwgMC4wLCAwLjApKTsKLSAgICB2X3RleENvb3JkID0gYV90ZXhDb29yZDsKLX0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LWhv
cml6b250YWwtb2Zmc2V0LnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92
ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGVmMGRhYjAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy92ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCww
IEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlv
bjsKLWF0dHJpYnV0ZSB2ZWMyIGFfdGV4Q29vcmQ7Ci0KLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rp
b25NYXRyaXg7Ci11bmlmb3JtIGZsb2F0IG9mZnNldDsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29v
cmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRy
aXggKiAoYV9wb3NpdGlvbiArIHZlYzQoMC4wLCBvZmZzZXQsIDAuMCwgMC4wKSk7Ci0gICAgdl90
ZXhDb29yZCA9IGFfdGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQtcGFyYW1ldGVycy52cyBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MWIxYjBhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC1wYXJhbWV0ZXJzLnZzCisr
KyAvZGV2L251bGwKQEAgLTEsNjEgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0K
LWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVjMiBhX3RleENvb3JkOwot
Ci11bmlmb3JtIGZsb2F0IHBlcnNwZWN0aXZlOwotdW5pZm9ybSB2ZWMyIHZlcnRleF9vZmZzZXQ7
Ci11bmlmb3JtIHZlYzMgcm90YXRlOwotCi11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4
OwotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLWNvbnN0IGZsb2F0IE1fUEkgPSAzLjE0MTU5
MjY1OwotCi1tYXQ0IHBlcnNwZWN0aXZlTWF0cml4KGZsb2F0IHApIHsKLSAgICByZXR1cm4gbWF0
NCgxLjAsIDAuMCwgMC4wLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAxLjAsIDAuMCwgMC4w
LAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxLjAsIC0gMS4wIC8gcCwKLSAgICAgICAgICAg
ICAgICAwLjAsIDAuMCwgMC4wLCAxLjApOwotfQotCi1tYXQ0IHRyYW5zbGF0ZU1hdHJpeCh2ZWMy
IHQpIHsKLSAgICByZXR1cm4gbWF0NCgxLjAsIDAuMCwgMC4wLCAwLjAsCi0gICAgICAgICAgICAg
ICAgMC4wLCAxLjAsIDAuMCwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxLjAsIDAu
MCwKLSAgICAgICAgICAgICAgICB0LngsIHQueSwgMC4wLCAxLjApOwotfQotCi1tYXQ0IHJvdGF0
ZVhNYXRyaXgoZmxvYXQgZikgewotICAgIHJldHVybiBtYXQ0KDEuMCwgMC4wLCAwLjAsIDAuMCwK
LSAgICAgICAgICAgICAgICAwLjAsIGNvcyhmKSwgc2luKGYpLCAwLjAsCi0gICAgICAgICAgICAg
ICAgMC4wLCAtc2luKGYpLCBjb3MoZiksIDAuMCwKLSAgICAgICAgICAgICAgICAwLjAsIDAuMCwg
MC4wLCAxLjApOwotfQotCi1tYXQ0IHJvdGF0ZVlNYXRyaXgoZmxvYXQgZikgewotICAgIHJldHVy
biBtYXQ0KGNvcyhmKSwgMC4wLCAtc2luKGYpLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAx
LjAsIDAuMCwgMC4wLAotICAgICAgICAgICAgICAgIHNpbihmKSwgMCwgY29zKGYpLCAwLjAsCi0g
ICAgICAgICAgICAgICAgMC4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KLQotbWF0NCByb3RhdGVaTWF0
cml4KGZsb2F0IGYpIHsKLSAgICByZXR1cm4gbWF0NChjb3MoZiksIHNpbihmKSwgMC4wLCAwLjAs
Ci0gICAgICAgICAgICAgICAgLXNpbihmKSwgY29zKGYpLCAwLjAsIDAuMCwKLSAgICAgICAgICAg
ICAgICAwLjAsIDAuMCwgMS4wLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAwLjAsIDAuMCwg
MS4wKTsKLX0KLQotbWF0NCByb3RhdGVNYXRyaXgodmVjMyBhKSB7Ci0gICAgcmV0dXJuIHJvdGF0
ZVhNYXRyaXgoYS54KSAqIHJvdGF0ZVlNYXRyaXgoYS55KSAqIHJvdGF0ZVpNYXRyaXgoYS56KTsK
LX0KLQotdm9pZCBtYWluKCkKLXsKLSAgICAvLyBVc2UgdGhlIHZhbHVlcyBmcm9tIENTUyB0byBj
aGFuZ2UgdGhlIHBlcnNwZWN0aXZlLCB0cmFuc2xhdGUgYW5kIHJvdGF0ZSB0aGUgc3VyZmFjZS4g
VGhpcyB3YXkgd2UgY2FuIHRlc3QKLSAgICAvLyBmbG9hdCwgdmVjMiBhbmQgdmVjMy4gTm90ZSB0
aGF0IHZlYzQgaXMgdGVzdGVkIGluIHRoZSBmcmFnbWVudCBzaGFkZXIgdmVydGV4LW9mZnNldC1w
YXJhbWV0ZXJzLmZzLgotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogcGVy
c3BlY3RpdmVNYXRyaXgocGVyc3BlY3RpdmUpICogdHJhbnNsYXRlTWF0cml4KHZlcnRleF9vZmZz
ZXQpICogcm90YXRlTWF0cml4KHJvdGF0ZSAqIE1fUEkgLyAxODAuMCkgKiBhX3Bvc2l0aW9uOwot
ICAgIAotICAgIHZfdGV4Q29vcmQgPSBhX3RleENvb3JkOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBhOTFkYjdkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cworKysgL2Rldi9udWxsCkBAIC0xLDE0
ICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bv
c2l0aW9uOwotYXR0cmlidXRlIHZlYzIgYV90ZXhDb29yZDsKLQotdW5pZm9ybSBtYXQ0IHVfcHJv
amVjdGlvbk1hdHJpeDsKLXZhcnlpbmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQot
ewotICAgIC8vIE9mZnNldCB0aGUgcG9zaXRpb24gb2YgdGhlIHZlcnRpY2VzIHdpdGggMC4xIGlu
IHRoZSBYIGF4aXMuCi0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiAoYV9w
b3NpdGlvbiArIHZlYzQoMC4xLCAwLjAsIDAuMCwgMC4wKSk7Ci0gICAgdl90ZXhDb29yZCA9IGFf
dGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL3ZlcnRleC1yb3RhdGUudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L3ZlcnRleC1yb3RhdGUudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUyMzJmOTMu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgt
cm90YXRlLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMjIgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1
bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVjMiBh
X3RleENvb3JkOwotCi11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdW5pZm9ybSBm
bG9hdCByb3RhdGVCeTsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLW1hdDQgcm90YXRl
Wk1hdHJpeChmbG9hdCBmKSB7Ci0gICAgcmV0dXJuIG1hdDQoY29zKGYpLCBzaW4oZiksIDAuMCwg
MC4wLAotICAgICAgICAgICAgICAgIC1zaW4oZiksIGNvcyhmKSwgMC4wLCAwLjAsCi0gICAgICAg
ICAgICAgICAgMC4wLCAwLjAsIDEuMCwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAw
LjAsIDEuMCk7Ci19Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2pl
Y3Rpb25NYXRyaXggKiByb3RhdGVaTWF0cml4KHJvdGF0ZUJ5ICogMy4xNCAvIDE4MC4wKSAqIGFf
cG9zaXRpb247Ci0gICAgdl90ZXhDb29yZCA9IGFfdGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC10cmFuc2Zvcm0tcGFyYW1l
dGVyLnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtdHJhbnNm
b3JtLXBhcmFtZXRlci52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjhjMTZhNi4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC10
cmFuc2Zvcm0tcGFyYW1ldGVyLnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotcHJl
Y2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci0KLXVu
aWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci11bmlmb3JtIG1hdDQgdHJhbnNmb3JtOwot
Ci12b2lkIG1haW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICog
dHJhbnNmb3JtICogYV9wb3NpdGlvbjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuanMgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRp
bmdzLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMTkwNzhlLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1t
aXgtYmluZGluZ3MuanMKKysrIC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi1kZXNjcmlwdGlv
bigiVGVzdCBtaXgoKSBmdW5jdGlvbiBKUyBiaW5kaW5ncy4iKTsKLQotZnVuY3Rpb24ganNXcmFw
cGVyQ2xhc3Mobm9kZSkgewotICAgIGlmICghbm9kZSkKLSAgICAgICAgcmV0dXJuICJbbnVsbF0i
OwotICAgIHZhciBzdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmFwcGx5KG5vZGUp
OwotICAgIHJldHVybiBzdHJpbmcuc3Vic3RyKDgsIHN0cmluZy5sZW5ndGggLSA5KTsKLX0KLQot
ZnVuY3Rpb24gc2hvdWxkQmVUeXBlKGV4cHJlc3Npb24sIGNsYXNzTmFtZSwgcHJvdG90eXBlTmFt
ZSwgY29uc3RydWN0b3JOYW1lKSB7Ci0gICAgaWYgKCFwcm90b3R5cGVOYW1lKQotICAgICAgICBw
cm90b3R5cGVOYW1lID0gY2xhc3NOYW1lICsgIlByb3RvdHlwZSI7Ci0gICAgaWYgKCFjb25zdHJ1
Y3Rvck5hbWUpCi0gICAgICAgIGNvbnN0cnVjdG9yTmFtZSA9IGNsYXNzTmFtZSArICJDb25zdHJ1
Y3RvciI7Ci0gICAgc2hvdWxkQmUoImpzV3JhcHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIiki
LCAiJyIgKyBjbGFzc05hbWUgKyAiJyIpOwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygi
ICsgZXhwcmVzc2lvbiArICIuX19wcm90b19fKSIsICInIiArIHByb3RvdHlwZU5hbWUgKyAiJyIp
OwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygiICsgZXhwcmVzc2lvbiArICIuY29uc3Ry
dWN0b3IpIiwgIiciICsgY29uc3RydWN0b3JOYW1lICsgIiciKTsKLX0KLQotZnVuY3Rpb24gcmVt
b3ZlQmFzZVVSTChzcmMpIHsKLSAgICB2YXIgdXJsUmVnZXhwID0gL3VybFwoKFteXCldKilcKS9n
OwotICAgIHJldHVybiBzcmMucmVwbGFjZSh1cmxSZWdleHAsIGZ1bmN0aW9uKG1hdGNoLCB1cmwp
IHsKLSAgICAgICAgcmV0dXJuICJ1cmwoIiArIHVybC5zdWJzdHIodXJsLmxhc3RJbmRleE9mKCIv
IikgKyAxKSArICIpIjsKLSAgICB9KTsKLX0KLQotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLXZhciBzdHlsZUVsZW1lbnQg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRD
aGlsZChzdHlsZUVsZW1lbnQpOwotdmFyIHN0eWxlc2hlZXQgPSBzdHlsZUVsZW1lbnQuc2hlZXQ7
Ci0KLXN0eWxlc2hlZXQuYWRkUnVsZSgiYm9keSIsICItd2Via2l0LWZpbHRlcjogY3VzdG9tKG5v
bmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpKSkiLCAwKTsKLQotdmFy
IGNzc1J1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVzLml0ZW0oMCk7Ci0KLXNob3VsZEJlKCJjc3NS
dWxlLnR5cGUiLCAiMSIpOwotCi12YXIgZGVjbGFyYXRpb24gPSBjc3NSdWxlLnN0eWxlOwotc2hv
dWxkQmUoImRlY2xhcmF0aW9uLmxlbmd0aCIsICIxIik7Ci0KLXZhciBmaWx0ZXJSdWxlID0gZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlDU1NWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKTsKLXZhciBtaXhG
dW5jdGlvbiA9IGZpbHRlclJ1bGVbMF1bMF1bMV07Ci1zaG91bGRCZVR5cGUoIm1peEZ1bmN0aW9u
IiwgIldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUiKTsKLQotdmFyIG1peEZ1bmN0aW9uQ29udGVu
dCA9IHJlbW92ZUJhc2VVUkwobWl4RnVuY3Rpb24uY3NzVGV4dCk7Ci0KLXNob3VsZEJlRXF1YWxU
b1N0cmluZygibWl4RnVuY3Rpb25Db250ZW50IiwgIm1peCh1cmwoY29sb3Itb2Zmc2V0LmZzKSki
KTsKLQotc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1w
YXJzaW5nLWNvbW1vbi5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTIyMWYwYy4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3Rv
bS1maWx0ZXItcGFyc2luZy1jb21tb24uanMKKysrIC9kZXYvbnVsbApAQCAtMSw1NyArMCwwIEBA
Ci0vLyBIZWxwZXIgZnVuY3Rpb25zLgotCi1mdW5jdGlvbiBoZWFkaW5nKHN0cmluZykKLXsKLSAg
ICBkZWJ1ZygiIik7Ci0gICAgZGVidWcoIj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0iKTsKLSAgICBkZWJ1ZyhzdHJpbmcpOwotICAgIGRlYnVnKCI9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Iik7Ci19Ci0KLWZ1bmN0aW9uIGpzV3JhcHBlckNs
YXNzKG5vZGUpCi17Ci0gICAgaWYgKCFub2RlKQotICAgICAgICByZXR1cm4gIltudWxsXSI7Ci0g
ICAgdmFyIHN0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuYXBwbHkobm9kZSk7Ci0g
ICAgcmV0dXJuIHN0cmluZy5zdWJzdHIoOCwgc3RyaW5nLmxlbmd0aCAtIDkpOwotfQotCi0vLyBG
SVhNRTogVGhpcyB0eXBlLWNoZWNraW5nIGFwcHJvYWNoIGZhaWxzIG9uIFY4LCB3aGljaCByZXF1
aXJlcyB1cyB0byBoYXZlIENocm9taXVtLXNwZWNpZmljIGV4cGVjdGF0aW9ucy4KLS8vIFdlIHNo
b3VsZCB1c2UgdGhlIHNob3VsZEhhdmVDb25zdHJ1Y3RvciBmdW5jdGlvbiBpbnN0ZWFkLCB3aGlj
aCB3b3JrcyByZWdhcmRsZXNzIG9mIEpTIGVuZ2luZS4KLWZ1bmN0aW9uIHNob3VsZEJlVHlwZShl
eHByZXNzaW9uLCBjbGFzc05hbWUsIHByb3RvdHlwZU5hbWUsIGNvbnN0cnVjdG9yTmFtZSkKLXsK
LSAgICBpZiAoIXByb3RvdHlwZU5hbWUpCi0gICAgICAgIHByb3RvdHlwZU5hbWUgPSBjbGFzc05h
bWUgKyAiUHJvdG90eXBlIjsKLSAgICBpZiAoIWNvbnN0cnVjdG9yTmFtZSkKLSAgICAgICAgY29u
c3RydWN0b3JOYW1lID0gY2xhc3NOYW1lICsgIkNvbnN0cnVjdG9yIjsKLSAgICBzaG91bGRCZSgi
anNXcmFwcGVyQ2xhc3MoIiArIGV4cHJlc3Npb24gKyAiKSIsICInIiArIGNsYXNzTmFtZSArICIn
Iik7Ci0gICAgc2hvdWxkQmUoImpzV3JhcHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIi5fX3By
b3RvX18pIiwgIiciICsgcHJvdG90eXBlTmFtZSArICInIik7Ci0gICAgc2hvdWxkQmUoImpzV3Jh
cHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIi5jb25zdHJ1Y3RvcikiLCAiJyIgKyBjb25zdHJ1
Y3Rvck5hbWUgKyAiJyIpOwotfQotCi1mdW5jdGlvbiBzaG91bGRIYXZlQ29uc3RydWN0b3IoZXhw
cmVzc2lvbiwgY29uc3RydWN0b3JOYW1lKQotewotICAgIHNob3VsZEJlVHJ1ZShleHByZXNzaW9u
ICsgIiBpbnN0YW5jZW9mICIgKyBjb25zdHJ1Y3Rvck5hbWUpOwotICAgIHNob3VsZEJlVHJ1ZShl
eHByZXNzaW9uICsgIi5jb25zdHJ1Y3RvciA9PT0gIiArIGNvbnN0cnVjdG9yTmFtZSk7Ci0gICAg
c2hvdWxkQmVUcnVlKGV4cHJlc3Npb24gKyAiLl9fcHJvdG9fXyA9PT0gIiArIGNvbnN0cnVjdG9y
TmFtZSArICIucHJvdG90eXBlIik7Ci19Ci0KLS8vIE5lZWQgdG8gcmVtb3ZlIHRoZSBiYXNlIFVS
TCB0byBhdm9pZCBoYXZpbmcgbG9jYWwgcGF0aHMgaW4gdGhlIGV4cGVjdGVkIHJlc3VsdHMuCi1m
dW5jdGlvbiByZW1vdmVCYXNlVVJMKHNyYykgCi17Ci0gICAgdmFyIHVybFJlZ2V4cCA9IC91cmxc
KChbXlwpXSopXCkvZzsKLSAgICByZXR1cm4gc3JjLnJlcGxhY2UodXJsUmVnZXhwLCBmdW5jdGlv
bihtYXRjaCwgdXJsKSB7Ci0gICAgICAgIHJldHVybiAidXJsKCIgKyB1cmwuc3Vic3RyKHVybC5s
YXN0SW5kZXhPZigiLyIpICsgMSkgKyAiKSI7Ci0gICAgfSk7Ci19Ci0KLS8vIENvbW1vbiBzZXR1
cCBmb3IgcGFyc2luZyB0ZXN0cy4KLQotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgd2lu
ZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJF
bmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2Uo
IldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLXZhciBzdHlsZUVsZW1lbnQgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChz
dHlsZUVsZW1lbnQpOwotdmFyIHN0eWxlc2hlZXQgPSBzdHlsZUVsZW1lbnQuc2hlZXQ7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0
ZXItcHJvcGVydHktY29tcHV0ZWQtc3R5bGUuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
c2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcHJvcGVydHktY29tcHV0ZWQtc3R5bGUuanMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZhZTMwYzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNv
bXB1dGVkLXN0eWxlLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTk3ICswLDAgQEAKLWRlc2NyaXB0
aW9uKCJUZXN0cyB0aGUgY29tcHV0ZWQgc3R5bGUgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9uIG9m
IHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1ND
dXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci19Ci0KLWZ1bmN0aW9uIGpz
V3JhcHBlckNsYXNzKG5vZGUpCi17Ci0gICAgaWYgKCFub2RlKQotICAgICAgICByZXR1cm4gIltu
dWxsXSI7Ci0gICAgdmFyIHN0cmluZyA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuYXBwbHko
bm9kZSk7Ci0gICAgcmV0dXJuIHN0cmluZy5zdWJzdHIoOCwgc3RyaW5nLmxlbmd0aCAtIDkpOwot
fQotCi0vLyBOZWVkIHRvIHJlbW92ZSB0aGUgYmFzZSBVUkwgdG8gYXZvaWQgaGF2aW5nIGxvY2Fs
IHBhdGhzIGluIHRoZSBleHBlY3RlZCByZXN1bHRzLgotZnVuY3Rpb24gcmVtb3ZlQmFzZVVSTChz
cmMpIHsKLSAgICB2YXIgdXJsUmVnZXhwID0gL3VybFwoKFteXCldKilcKS9nOwotICAgIHJldHVy
biBzcmMucmVwbGFjZSh1cmxSZWdleHAsIGZ1bmN0aW9uKG1hdGNoLCB1cmwpIHsKLSAgICAgICAg
cmV0dXJuICJ1cmwoIiArIHVybC5zdWJzdHIodXJsLmxhc3RJbmRleE9mKCIvIikgKyAxKSArICIp
IjsKLSAgICB9KTsKLX0KLQotZnVuY3Rpb24gc2hvdWxkQmVUeXBlKGV4cHJlc3Npb24sIGNsYXNz
TmFtZSwgcHJvdG90eXBlTmFtZSwgY29uc3RydWN0b3JOYW1lKQotewotICAgIGlmICghcHJvdG90
eXBlTmFtZSkKLSAgICAgICAgcHJvdG90eXBlTmFtZSA9IGNsYXNzTmFtZSArICJQcm90b3R5cGUi
OwotICAgIGlmICghY29uc3RydWN0b3JOYW1lKQotICAgICAgICBjb25zdHJ1Y3Rvck5hbWUgPSBj
bGFzc05hbWUgKyAiQ29uc3RydWN0b3IiOwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygi
ICsgZXhwcmVzc2lvbiArICIpIiwgIiciICsgY2xhc3NOYW1lICsgIiciKTsKLSAgICBzaG91bGRC
ZSgianNXcmFwcGVyQ2xhc3MoIiArIGV4cHJlc3Npb24gKyAiLl9fcHJvdG9fXykiLCAiJyIgKyBw
cm90b3R5cGVOYW1lICsgIiciKTsKLSAgICBzaG91bGRCZSgianNXcmFwcGVyQ2xhc3MoIiArIGV4
cHJlc3Npb24gKyAiLmNvbnN0cnVjdG9yKSIsICInIiArIGNvbnN0cnVjdG9yTmFtZSArICInIik7
Ci19Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJzIHRv
IHNlZSB0aGVtLgotdmFyIHN0eWxlc2hlZXQsIGNzc1J1bGUsIGRlY2xhcmF0aW9uLCBmaWx0ZXJS
dWxlLCBzdWJSdWxlOwotdmFyIHN0eWxlRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
InN0eWxlIik7Ci1kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHN0eWxlRWxlbWVudCk7Ci1zdHls
ZXNoZWV0ID0gc3R5bGVFbGVtZW50LnNoZWV0OwotCi0vLyBXZSBuZWVkIGEgZml4ZWQgd2lkdGgv
aGVpZ2h0IGZvciB0aGUgb2JqZWN0LgotdmFyIG9iamVjdFRvQ2hlY2sgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJkaXYiKTsKLW9iamVjdFRvQ2hlY2suY2xhc3NOYW1lID0gIm9iamVjdFRvQ2hl
Y2siOwotb2JqZWN0VG9DaGVjay5zdHlsZS53aWR0aCA9ICI1MDBweCI7Ci1vYmplY3RUb0NoZWNr
LnN0eWxlLmhlaWdodCA9ICI2MDBweCI7Ci1kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG9iamVj
dFRvQ2hlY2spOwotCi1mdW5jdGlvbiB0ZXN0RmlsdGVyUnVsZShkZXNjcmlwdGlvbiwgcnVsZSwg
ZXhwZWN0ZWRWYWx1ZSwgZXhwZWN0ZWRUeXBlcywgZXhwZWN0ZWRUZXh0cykKLXsKLSAgICBkZWJ1
ZygiIik7Ci0gICAgZGVidWcoZGVzY3JpcHRpb24gKyAiIDogIiArIHJ1bGUpOwotCi0gICAgc3R5
bGVzaGVldC5pbnNlcnRSdWxlKCIub2JqZWN0VG9DaGVjayB7IC13ZWJraXQtZmlsdGVyOiAiICsg
cnVsZSArICI7IH0iLCAwKTsKLQotICAgIGZpbHRlclN0eWxlID0gd2luZG93LmdldENvbXB1dGVk
U3R5bGUob2JqZWN0VG9DaGVjayk7Ci0gICAgCi0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwo
ZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkiLCAiJyIgKyBl
eHBlY3RlZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclJ1bGUgPSBmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCctd2Via2l0LWZpbHRlcicpOwotICAgIHNob3VsZEJlVHlwZSgiZmls
dGVyUnVsZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIGlmICghZXhwZWN0ZWRUeXBlcykgewot
ICAgICAgICBleHBlY3RlZFR5cGVzID0gWyJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTSJdOwotICAgICAgICBleHBlY3RlZFRleHRzID0gW2V4cGVjdGVkVmFsdWVdOwotICAg
IH0KLSAgICAKLSAgICBzaG91bGRCZSgiZmlsdGVyUnVsZS5sZW5ndGgiLCAiIiArIGV4cGVjdGVk
VHlwZXMubGVuZ3RoKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChmaWx0ZXJSdWxlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUeXBlcy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViUnVsZSA9IGZpbHRlclJ1bGVb
aV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViUnVsZS5vcGVyYXRpb25UeXBlIiwgZXhwZWN0
ZWRUeXBlc1tpXSk7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIiwgIiciICsgZXhwZWN0ZWRUZXh0c1tpXSArICInIik7Ci0gICAgICAgIH0KLSAg
ICB9Ci0gICAgCi0gICAgc3R5bGVzaGVldC5kZWxldGVSdWxlKDApOwotfQotCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciIsCi0gICAgImN1c3RvbSh1cmwodmVydGV4
LnNoYWRlcikpIiwgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMSAxKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZnJhZ21lbnQgc2hhZGVyIiwKLSAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIiwgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBib3RoIHNoYWRl
cnMiLAotICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVudC5zaGFkZXIp
KSIsICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEp
Iik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24iLAotICAgICJj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKSIsICJjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAxKSIpOwotCi12YXIg
YmxlbmRNb2RlcyA9IFsibm9ybWFsIiwgIm11bHRpcGx5IiwgInNjcmVlbiIsICJvdmVybGF5Iiwg
ImRhcmtlbiIsICJsaWdodGVuIiwgImNvbG9yLWRvZGdlIiwKLSAgICAgICAgICAgICAgICAgICJj
b2xvci1idXJuIiwgImhhcmQtbGlnaHQiLCAic29mdC1saWdodCIsICJkaWZmZXJlbmNlIiwgImV4
Y2x1c2lvbiIsICJodWUiLAotICAgICAgICAgICAgICAgICAgInNhdHVyYXRpb24iLCAiY29sb3Ii
LCAibHVtaW5vc2l0eSJdOwotZm9yICh2YXIgaSA9IDA7IGkgPCBibGVuZE1vZGVzLmxlbmd0aDsg
aSsrKSB7Ci0gICAgdmFyIGJsZW5kTW9kZSA9IGJsZW5kTW9kZXNbaV07Ci0gICAgdGVzdEZpbHRl
clJ1bGUoIkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSAiICsgYmxlbmRN
b2RlLAotICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpICIgKyBi
bGVuZE1vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpICIg
KyBibGVuZE1vZGUgKyAiIHNvdXJjZS1hdG9wKSwgMSAxKSIpOwotfQotCi12YXIgYWxwaGFDb21w
b3NpdGluZ01vZGVzID0gWyJjbGVhciIsICJjb3B5IiwgInNvdXJjZS1vdmVyIiwgImRlc3RpbmF0
aW9uLW92ZXIiLCAic291cmNlLWluIiwgImRlc3RpbmF0aW9uLWluIiwKLSAgICAgICAgInNvdXJj
ZS1vdXQiLCAiZGVzdGluYXRpb24tb3V0IiwgInNvdXJjZS1hdG9wIiwgImRlc3RpbmF0aW9uLWF0
b3AiLCAieG9yIl07Ci1mb3IgKHZhciBpID0gMDsgaSA8IGFscGhhQ29tcG9zaXRpbmdNb2Rlcy5s
ZW5ndGg7IGkrKykgewotICAgIHZhciBhbHBoYUNvbXBvc2l0aW5nTW9kZSA9IGFscGhhQ29tcG9z
aXRpbmdNb2Rlc1tpXTsKLSAgICB0ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0
aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlICIgKyBhbHBoYUNvbXBvc2l0aW5nTW9kZSwK
LSAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYWxwaGFD
b21wb3NpdGluZ01vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIG5vcm1hbCAiICsgYWxwaGFDb21wb3NpdGluZ01vZGUgKyAiKSwgMSAxKSIpOwotfQotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZp
cnN0LCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIHNlY29uZCIsCi0gICAgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhcikpIiwgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhciksIDEgMSkiKTsKLQotdGVzdEZp
bHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcg
bW9kZSBmaXJzdCwgYmxlbmQgbW9kZSBzZWNvbmQiLAotICAgICJjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgY2xlYXIgbXVsdGlwbHkpKSIsICJjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkgY2xlYXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJS
dWxlKCJDdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIGFuZCBtaXggZnVuY3Rpb24iLAotICAgICJj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIiwgImN1
c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBz
b3VyY2UtYXRvcCksIDEgMSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1peCBm
dW5jdGlvbiBhbmQgbWVzaCBzaXplIiwKLSAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpKSwgMTApIiwgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBu
b3JtYWwgc291cmNlLWF0b3ApLCAxMCAxMCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3
aXRoIG1lc2ggc2l6ZSIsCi0gICAgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlciksIDEwKSIsICJj
dXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG5vbmUsIDEwIDEwKSIpOwotCi10ZXN0RmlsdGVyUnVs
ZSgiQ3VzdG9tIHdpdGggYm90aCBtZXNoIHNpemVzIiwKLSAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIDEwIDIwKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgMTAgMjApIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtZXNoIHNpemUiLAot
ICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpLCAxMCkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSBub25lLCAxMCAxMCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGJv
dGggbWVzaCBzaXplcyIsCi0gICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAx
MCAyMCkiLCAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZGV0YWNoZWQgbWVzaCIsCi0gICAgImN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRhY2hlZCkiLCAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIDEgMSBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIGRldGFjaGVkIGFuZCBtZXNoIHNpemUiLAotICAgICJjdXN0b20obm9uZSB1cmwoZnJh
Z21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpIiwgImN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3
aXRoIGRlZmF1bHQgZmlsdGVyLWJveCIsCi0gICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggaW50ZWdlciBwYXJhbWV0ZXJzIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxIDEsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpIik7Ci0K
LXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBmbG9hdCBwYXJhbWV0ZXJzIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMS4xLCBwMiAyLjIgMy4z
LCBwMyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgMS4xLCBwMiAyLjIgMy4zLCBw
MyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgi
Q3VzdG9tIHdpdGggdHJhbnNmb3JtIHRyYW5zbGF0ZSBwYXJhbWV0ZXIiLAotICAgICAgICAgICAg
ImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBw
eCkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAx
LCBwMSBtYXRyaXgoMSwgMCwgMCwgMSwgMTAsIDEwKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1
c3RvbSB3aXRoIG11bHRpcGxlIHRyYW5zZm9ybSBwYXJhbWV0ZXJzIiwKLSAgICAgICAgICAgICJj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgdHJhbnNsYXRlKDEwcHgsIDEwcHgp
LCBwMiBzY2FsZSgyKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEsIHAxIG1hdHJpeCgxLCAwLCAwLCAxLCAxMCwgMTApLCBwMiBtYXRyaXgoMiwg
MCwgMCwgMiwgMCwgMCkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtdWx0aXBs
ZSB0cmFuc2Zvcm1zIHNpbmdsZSBwYXJhbWV0ZXIiLAotICAgICAgICAgICAgImN1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBweCkgc2NhbGUoMikp
IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBw
MSBtYXRyaXgoMiwgMCwgMCwgMiwgMTAsIDEwKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIHBlcmNlbnQgdHJhbnNmb3JtIHBhcmFtZXRlciIsCi0gICAgICAgICAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIHRyYW5zbGF0ZSg1MCUsIDUwJSkpIiwKLSAg
ICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRy
aXgoMSwgMCwgMCwgMSwgMjUwLCAzMDApKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdp
dGggbWVzaCBzaXplIGFuZCBudW1iZXIgcGFyYW1ldGVycyIsCi0gICAgICAgICAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1
LCBwNCA0IDUgNiA3KSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIDEwIDIwLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiTXVsdGlwbGUgd2l0aCBmcmFnbWVudCBzaGFkZXIiLAotICAgICJncmF5
c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsICJncmF5
c2NhbGUoMSkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSkgc2VwaWEoMSki
LAotICAgIFsiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUiLAotICAg
ICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTSIsCi0gICAgIldlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfU0VQSUEiXSwKLSAgICBbImdyYXlzY2FsZSgxKSIsCi0g
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpIiwKLSAgICAic2VwaWEo
MSkiXSk7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2Yg
dGhyZWUgdmFsdWVzIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgYTEgYXJyYXkoMSwgMiwgMykpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLCAyLCAzKSkiKTsKLQotdGVzdEZpbHRl
clJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFkZSB1cCBvZiB0aHJlZSBmbG9hdGluZyBwb2lu
dCB2YWx1ZXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCBhMSBhcnJheSgxLjYxODAsIC0yLjcxODIsIDMuMTQxNSkpIiwKLSAgICAgICAgICAgICJjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLjYxOCwgLTIuNzE4
MiwgMy4xNDE1KSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFk
ZSB1cCBvZiBzZXZlcmFsIGZsb2F0aW5nIHBvaW50IGFuZCBpbnRlZ2VyIHZhbHVlcyIsCi0gICAg
ICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEuNjE4
MCwgMSwgLTIuNzE4MiwgMC4xLCAzLjE0MTUpKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUg
dXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMS42MTgsIDEsIC0yLjcxODIsIDAu
MSwgMy4xNDE1KSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGFycmF5KCkgbWFk
ZSB1cCBvZiAyNDcgZGlmZmVyZW50IGZsb2F0aW5nIHBvaW50IHZhbHVlcyIsCi0gICAgICAgICAg
ICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDYuMDAsIDM4LjU4
LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEs
IDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAy
MS45NCwgNjIuNzAsIDc3Ljk2LCA2Ny4yNywgMi43NSwgMjguMTYsIDguODgsIDExLjYxLCAzNC44
OSwgNDUuNzUsIDU0LjU1LCAzNS4wNCwgNi4xMywgNjkuNjgsIDgxLjIxLCA0OS40NCwgNTQuNzQs
IDI2Ljc0LCA5MS40OSwgNjguMjAsIDg0LjA1LCA2NS44MSwgNTcuODksIDczLjIyLCAxMy44Nywg
NzEuNzMsIDE4LjYxLCA4LjU0LCA5Ljc5LCAyOC4wNSwgMTQuMTEsIDY5LjkzLCA0Ny4xOSwgMTAu
NDgsIDgxLjM1LCAzNy4xNSwgMTkuMjksIDE0Ljk4LCAzMi41NCwgOTguOTYsIDY5LjM3LCA5Mi4y
NiwgMzQuNjQsIDY3LjQzLCA3MS45MiwgNDUuNTIsIDkuMjIsIDQxLjk2LCAzMS4yNiwgOTIuNjUs
IDM1LjAyLCAzOS4wMCwgNzYuNzYsIDI5LjMzLCAyMi45MywgODAuNjUsIDcwLjc4LCA0Mi45NCwg
MjcuNzIsIDI4LjE5LCA3NS4xNSwgMTguMTQsIDg5LjcxLCA5NS4zOCwgNTQuNTEsIDM2LjkzLCA5
OC40NSwgODcuNTgsIDQ0LjUxLCA3MS43MywgNzUuNzEsIDcwLjQzLCA3OC41MSwgODIuMTksIDMx
LjczLCAyLjkwLCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIs
IDUzLjk2LCAzNS4wNiwgNjcuNTAsIDc2LjYyLCAzNS4wMiwgMS42MiwgMTMuMDUsIDMzLjU5LCAy
Ni44OSwgMzYuOTQsIDc0LjEzLCA5NS4wOSwgNTYuODcsIDQ2LjAxLCAxMS45NCwgMTIuOTIsIDQ4
Ljg4LCAxMS4wMywgMjQuODAsIDY4LjA2LCAxOS44MywgMTIuOTgsIDQxLjU2LCA2Mi4wMywgODAu
MzUsIDQxLjEwLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUwLCA4OC40MSwgOTAuMzQs
IDk3LjYyLCA1OC43MCwgMjMuNjIsIDEzLjAzLCA4NS40MSwgMjkuNzMsIDMwLjIxLCA1OS4yNSwg
OTEuMjIsIDc4LjIxLCA2Mi4zMCwgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5
Ny40MiwgOTYuNDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIwLCAyNi42NSwgNzgu
MzksIDk1LjI2LCA2Ni44MCwgMzQuNDEsIDEwLjY5LCA5NC40MywgNzEuNjksIDQuNTgsIDIzLjg3
LCA2MS4wMSwgOTUuNjgsIDguNTEsIDE0LjkyLCAxNi4yNywgMzAuNDEsIDEuNDAsIDEyLjM1LCA5
OS4zOSwgNS44MCwgNjguMTAsIDczLjg3LCAyOC4zNiwgMjQuOTgsIDc3LjU4LCA4LjczLCAzNC4w
OCwgNTQuNDUsIDg3LjY0LCAzNi4xNCwgNzQuNjgsIDM4LjA0LCA1Ni41NCwgNDYuNDIsIDEyLjQw
LCA1LjkwLCAxNS43MCwgMTAuODgsIDU1LjgyLCA4NC42NiwgNzUuNzQsIDg3LjkyLCA1OS4wMywg
NjAuMzAsIDQuMzIsIDcuMDUsIDMuMzQsIDkuODcsIDY0LjUxLCA0LjYwLCA1NC4xNiwgNDguODAs
IDQ2LjkzLCA1Ljg0LCA5MC4zNCwgNzUuNDgsIDMyLjU5LCAyOS42NSwgOTQuNTcsIDI4LjIyLCA5
My43MCwgMjMuNzksIDg5LjU3LCAxNC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5
LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcu
NzUsIDQxLjY1LCA2Mi4zNSwgOTAuNDAsIDQwLjc3LCA1My45MywgODAuMjMsIDg0LjQ5LCAyMC4x
OCwgNDUuMzYsIDI2LjAyLCA5My43MiwgNjUuNTQsIDMyLjg2KSkiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDYsIDM4LjU4LCA0
MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwgNjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEsIDk5
LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkxLjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAyMS45
NCwgNjIuNywgNzcuOTYsIDY3LjI3LCAyLjc1LCAyOC4xNiwgOC44OCwgMTEuNjEsIDM0Ljg5LCA0
NS43NSwgNTQuNTUsIDM1LjA0LCA2LjEzLCA2OS42OCwgODEuMjEsIDQ5LjQ0LCA1NC43NCwgMjYu
NzQsIDkxLjQ5LCA2OC4yLCA4NC4wNSwgNjUuODEsIDU3Ljg5LCA3My4yMiwgMTMuODcsIDcxLjcz
LCAxOC42MSwgOC41NCwgOS43OSwgMjguMDUsIDE0LjExLCA2OS45MywgNDcuMTksIDEwLjQ4LCA4
MS4zNSwgMzcuMTUsIDE5LjI5LCAxNC45OCwgMzIuNTQsIDk4Ljk2LCA2OS4zNywgOTIuMjYsIDM0
LjY0LCA2Ny40MywgNzEuOTIsIDQ1LjUyLCA5LjIyLCA0MS45NiwgMzEuMjYsIDkyLjY1LCAzNS4w
MiwgMzksIDc2Ljc2LCAyOS4zMywgMjIuOTMsIDgwLjY1LCA3MC43OCwgNDIuOTQsIDI3LjcyLCAy
OC4xOSwgNzUuMTUsIDE4LjE0LCA4OS43MSwgOTUuMzgsIDU0LjUxLCAzNi45MywgOTguNDUsIDg3
LjU4LCA0NC41MSwgNzEuNzMsIDc1LjcxLCA3MC40MywgNzguNTEsIDgyLjE5LCAzMS43MywgMi45
LCA4LjIzLCA5My43NCwgMzEuMjYsIDg0LjczLCA2LjQ4LCA0MS45NiwgNzUuNzIsIDUzLjk2LCAz
NS4wNiwgNjcuNSwgNzYuNjIsIDM1LjAyLCAxLjYyLCAxMy4wNSwgMzMuNTksIDI2Ljg5LCAzNi45
NCwgNzQuMTMsIDk1LjA5LCA1Ni44NywgNDYuMDEsIDExLjk0LCAxMi45MiwgNDguODgsIDExLjAz
LCAyNC44LCA2OC4wNiwgMTkuODMsIDEyLjk4LCA0MS41NiwgNjIuMDMsIDgwLjM1LCA0MS4xLCA1
LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0LjUsIDg4LjQxLCA5MC4zNCwgOTcuNjIsIDU4Ljcs
IDIzLjYyLCAxMy4wMywgODUuNDEsIDI5LjczLCAzMC4yMSwgNTkuMjUsIDkxLjIyLCA3OC4yMSwg
NjIuMywgNjAuOTMsIDMzLjI2LCAxNi4xMywgOTUuNjEsIDc4LjYyLCA5Ny40MiwgOTYuNDIsIDM4
LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4LjIsIDI2LjY1LCA3OC4zOSwgOTUuMjYsIDY2Ljgs
IDM0LjQxLCAxMC42OSwgOTQuNDMsIDcxLjY5LCA0LjU4LCAyMy44NywgNjEuMDEsIDk1LjY4LCA4
LjUxLCAxNC45MiwgMTYuMjcsIDMwLjQxLCAxLjQsIDEyLjM1LCA5OS4zOSwgNS44LCA2OC4xLCA3
My44NywgMjguMzYsIDI0Ljk4LCA3Ny41OCwgOC43MywgMzQuMDgsIDU0LjQ1LCA4Ny42NCwgMzYu
MTQsIDc0LjY4LCAzOC4wNCwgNTYuNTQsIDQ2LjQyLCAxMi40LCA1LjksIDE1LjcsIDEwLjg4LCA1
NS44MiwgODQuNjYsIDc1Ljc0LCA4Ny45MiwgNTkuMDMsIDYwLjMsIDQuMzIsIDcuMDUsIDMuMzQs
IDkuODcsIDY0LjUxLCA0LjYsIDU0LjE2LCA0OC44LCA0Ni45MywgNS44NCwgOTAuMzQsIDc1LjQ4
LCAzMi41OSwgMjkuNjUsIDk0LjU3LCAyOC4yMiwgOTMuNywgMjMuNzksIDg5LjU3LCAxNC44NCwg
NzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMsIDE5LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0
Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywgMzcuNzUsIDQxLjY1LCA2Mi4zNSwgOTAuNCwgNDAu
NzcsIDUzLjkzLCA4MC4yMywgODQuNDksIDIwLjE4LCA0NS4zNiwgMjYuMDIsIDkzLjcyLCA2NS41
NCwgMzIuODYpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdHdvIGFycmF5KCkg
bWFkZSB1cCBvZiB0aHJlZSBhbmQgc2l4IHZhbHVlcyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEsIDIsIDMpLCBhMiBhcnJheSgxLCAy
LCAzLCA0LCA1LCA2KSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEsIGExIGFycmF5KDEsIDIsIDMpLCBhMiBhcnJheSgxLCAyLCAzLCA0LCA1LCA2
KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMv
Y3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuanMgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1p
bnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZGM4M2Y3Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRl
ci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxMDcgKzAs
MCBAQAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgY3VzdG9tKCkgZnVuY3Rpb24g
b2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3BlcnR5LiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJl
IGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBjc3NSdWxlLCBk
ZWNsYXJhdGlvbjsKLQotZnVuY3Rpb24gdGVzdEludmFsaWRGaWx0ZXJSdWxlKGRlc2NyaXB0aW9u
LCBydWxlKQotewotICAgIGRlYnVnKCIiKTsKLSAgICBkZWJ1ZyhkZXNjcmlwdGlvbiArICIgOiAi
ICsgcnVsZSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoImJvZHkgeyAtd2Via2l0LWZp
bHRlcjogIiArIHJ1bGUgKyAiOyB9IiwgMCk7Ci0gICAgY3NzUnVsZSA9IHN0eWxlc2hlZXQuY3Nz
UnVsZXMuaXRlbSgwKTsKLSAgCi0gICAgc2hvdWxkQmUoImNzc1J1bGUudHlwZSIsICIxIik7Ci0K
LSAgICBkZWNsYXJhdGlvbiA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUoImRlY2xhcmF0
aW9uLmxlbmd0aCIsICIwIik7Ci0gICAgc2hvdWxkQmUoImRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykiLCAibnVsbCIpOwotfQotCi10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIkVtcHR5IGZ1bmN0aW9uIiwgImN1c3RvbSgpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIk5vIHZhbHVlcyAxIiwgImN1c3RvbSgsKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJO
byB2YWx1ZXMgMiIsICJjdXN0b20oLCwpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9v
IG1hbnkgc2hhZGVycyAxIiwgImN1c3RvbSh1cmwoc2hhZGVyMSkgdXJsKHNoYWRlcjIpIHVybChz
aGFkZXIyKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1hbnkgc2hhZGVycyAyIiwg
ImN1c3RvbShub25lIG5vbmUgbm9uZSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1h
bnkgc2hhZGVycyAzIiwgImN1c3RvbShub25lIHVybChzaGFkZXIxKSB1cmwoc2hhZGVyMikgdXJs
KHNoYWRlcjIpKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiBhcyB2
ZXJ0ZXggc2hhZGVyIiwgImN1c3RvbShtaXgodXJsKHNoYWRlcikpKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24gd2l0aCB3cm9uZyBuYW1lIiwgImN1c3RvbShub25lIGZu
KHVybChzaGFkZXIpKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdp
dGggMCBhcmdzIiwgImN1c3RvbShub25lIG1peCgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxl
KCJNaXggZnVuY3Rpb24gd2l0aCBmaXJzdCBhcmcgbm90IGEgVVJJIiwgImN1c3RvbShub25lIG1p
eChub25lKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggc2Vj
b25kIGFyZyBub3QgYSBibGVuZCBtb2RlIG9yIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUiLCAiY3Vz
dG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJN
aXggZnVuY3Rpb24gd2l0aCB0aGlyZCBhcmcgbm90IGEgYmxlbmQgbW9kZSBvciBhbHBoYSBjb21w
b3NpdGluZyBtb2RlIiwgImN1c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSBub3JtYWwgMCkpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIHR3byBibGVuZCBtb2Rl
cyIsICJjdXN0b20obm9uZSBtaXgodXJsKHNoYWRlcikgbXVsdGlwbHkgc2NyZWVuKSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggdHdvIGFscGhhIGNvbXBvc2l0
aW5nIG1vZGVzIiwgImN1c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSBzb3VyY2Utb3ZlciBkZXN0
aW5hdGlvbi1vdmVyKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdp
dGggYWxwaGEgY29tcG9zaXRpbmcgbW9kZSAncGx1cy1kYXJrZXInLCB3aGljaCBzaG91bGQgb25s
eSBhcHBseSB0byAtd2Via2l0LWJhY2tncm91bmQtY29tcG9zaXRlIiwgImN1c3RvbShub25lIG1p
eCh1cmwoc2hhZGVyKSBwbHVzLWRhcmtlcikpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1p
eCBmdW5jdGlvbiB3aXRoIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgJ3BsdXMtbGlnaHRlcicsIHdo
aWNoIHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1jb21wb3NpdGUiLCAi
Y3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIHBsdXMtbGlnaHRlcikpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgJ2hp
Z2hsaWdodCcsIHdoaWNoIHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1j
b21wb3NpdGUiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIGhpZ2hsaWdodCkpIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIDQgYXJncyIsICJjdXN0b20o
bm9uZSBtaXgodXJsKHNoYWRlcikgbXVsdGlwbHkgY2xlYXIgbm9ybWFsKSkiKTsKLXRlc3RJbnZh
bGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggY29tbWEgc2VwYXJhdG9ycyIsICJjdXN0
b20obm9uZSBtaXgodXJsKHNoYWRlciksIG11bHRpcGx5LCBjbGVhcikpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIGNvbW1hIHRlcm1pbmF0b3IiLCAiY3VzdG9t
KG5vbmUgbWl4KHVybChzaGFkZXIpLCBtdWx0aXBseSBjbGVhciwpKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24gd2l0aCBvbmUgY29tbWEiLCAiY3VzdG9tKG5vbmUgbWl4
KCwpKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHNoYWRlciIsICJjdXN0b20obm9u
ZSwgMTAgMjApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IG1lc2ggc2l6ZXMi
LCAiY3VzdG9tKG5vbmUsIDEwIDIwIDMwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9u
ZyBtZXNoLWJveCB0eXBlIC0gJ3BhZGRpbmcnIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgcGFkZGlu
ZykiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiV3JvbmcgbWVzaC1ib3ggdHlwZSAtICdub25l
JyIsICJjdXN0b20odXJsKHNoYWRlciksIG5vbmUpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUo
Ik1vcmUgbWVzaC1ib3ggdHlwZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBwYWRkaW5nLWJveCBm
aWx0ZXItYm94KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBvcmRlciBmb3IgbWVz
aC1kZXRhY2hlZCBhbmQgbWVzaC1ib3ggdHlwZSIsICJjdXN0b20odXJsKHNoYWRlciksIGRldGFj
aGVkIHBhZGRpbmctYm94KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBvcmRlciBm
b3IgbWVzaCBzaXplIGFuZCBtZXNoLWJveCB0eXBlIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgcGFk
ZGluZy1ib3ggMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IG1lc2ggc2l6
ZXMgd2l0aCBtZXNoLWJveCB0eXBlIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgMjAgMzAgNDAgcGFk
ZGluZy1ib3gpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgY29tbWEgYmV0d2Vl
biBtZXNoLXNpemVzIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgMjAsIDQwIHBhZGRpbmctYm94KSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIGNvbW1hIGJlZm9yZSBtZXNoIHR5cGUi
LCAiY3VzdG9tKHVybChzaGFkZXIpLCAyMCwgcGFkZGluZy1ib3gpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIk5vIG1lc2ggcGFyYW1ldGVyIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJXcm9uZyBtZXNoIHR5cGUgLSBjb3JyZWN0IGlkZW50aWZp
ZXIgaXMgJ2RldGFjaGVkJyIsICJjdXN0b20odXJsKHNoYWRlciksIGRldGFjaCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTm8gbWVzaCBzaXplIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgLCBw
MSAyKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5lZ2F0aXZlIHNpbmdsZSBtZXNoIHNp
emUiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAtMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUo
Ik5lZ2F0aXZlIGJvdGggbWVzaCBzaXplcyIsICJjdXN0b20odXJsKHNoYWRlciksIC0xMCAtMTAp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSBtZXNoIHNp
emUiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAtMTAgMTApIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIlplcm8gc2luZ2xlIG1lc2ggc2l6ZSIsICJjdXN0b20odXJsKHNoYWRlciksIDApIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlplcm8gYm90aCBtZXNoIHNpemVzIiwgImN1c3RvbSh1cmwo
c2hhZGVyKSwgMCAwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCIwIGFuZCAxIG1lc2ggc2l6
ZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCAwIDEpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiVG9vIG1hbnkgcGFyYW1ldGVyIHZhbHVlcyIsICJjdXN0b20odXJsKHNoYWRlciksIHAxIDEg
MiAzIDQgNSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCBwYXJhbWV0ZXIgdHlw
ZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBwMSAxLjAgMi4wICd0ZXh0JykiKTsKLQotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgMSIsICJjdXN0b20odXJsKHNoYWRl
ciksIHAxKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBwYXJhbWV0ZXIgdmFsdWUgMiIs
ICJjdXN0b20odXJsKHNoYWRlciksIHAxLCBwMiwgcDMpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiT25lIGludmFsaWQgdHJhbnNmb3JtIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBz
b21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk11
bHRpcGxlIGludmFsaWQgdHJhbnNmb3JtcyIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29t
ZUlkIGludmFsaWRfcm90YXRlKDBkZWcpIGludmFsaWRfcGVyc3BlY3RpdmUoMCkpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgdHJhbnNmb3JtIGJldHdlZW4gdmFsaWQgb25lcyIs
ICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIHJvdGF0ZSgwZGVnKSBpbnZhbGlkX3Jv
dGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFs
aWQgdHJhbnNmb3JtIGJldHdlZW4gaW52YWxpZCBvbmVzIiwgImN1c3RvbShub25lIHVybChzaGFk
ZXIpLCBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgYW5vdGhlcl9p
bnZhbGlkKDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gd2l0
aG91dCBsZWFkaW5nIGNvbW1hIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBwZXJz
cGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFsaWQgdHJhbnNmb3JtIHdp
dGggdHJhaWxpbmcgY29tbWEiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCBwZXJz
cGVjdGl2ZSgwKSwpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3
aXRoIHRyYWlsaW5nIGNvbW1hIGFuZCB3aXRob3V0IGxlYWRpbmcgY29tbWEiLCAiY3VzdG9tKG5v
bmUgdXJsKHNoYWRlcikgc29tZUlkIHBlcnNwZWN0aXZlKDApLCkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFpbGluZyBjb21tYSIsICJjdXN0b20o
bm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIGludmFsaWRfcm90YXRlKDBkZWcpLCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aG91dCBsZWFkaW5nIGNvbW1h
IiwgImN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBpbnZhbGlkX3JvdGF0ZSgwZGVnKSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgdHJhbnNmb3JtIChvbmx5IHRoZSBpZCki
LCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiRW1wdHkgdHJhbnNmb3JtICh3aXRob3V0IHRoZSBpZCkiLCAiY3VzdG9tKG5vbmUgdXJs
KHNoYWRlciksKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJFbXB0eSB0cmFuc2Zvcm0gKHR3
byBlbXB0eSBjb21tYXMpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCwpIik7Ci10ZXN0SW52
YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3aXRoIGludmFsaWQgY2hhcmFjdGVycyIs
ICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSxzb21lSWQgcm90YXRlKDBkZWcpICouLSwpIik7Ci0K
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwo
c2hhZGVyKSwgaWQgYXJyYXkoKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiT25lIGNvbW1h
IGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KCwpKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aWxlIGNvbW1hcyBpbiBhcnJheSgpIiwgImN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJS
dWxlKCJNdWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5KCkiLCAiY3VzdG9tKG5v
bmUgdXJsKHNoYWRlciksIGlkIGFycmF5KCwsMSwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxl
KCJPbmUgY29tbWEgZm9sbG93ZWQgYnkgYSBuZWdhdGl2ZSB2YWx1ZSBpbiBhcnJheSgpIiwgImN1
c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsLTQpKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJPbmUgY29tbWEgZm9sbG93ZWQgYnkgYSB2YWx1ZSBpbiBhcnJheSgpIiwgImN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIk9uZSBuZWdhdGl2ZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkiLCAi
Y3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KC00LCkpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIk9uZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkiLCAiY3Vz
dG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDQsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiQSBzZXJpZXMgb2YgY29ycmVjdCB2YWx1ZXMgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBh
cnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCAzLCA0LCkp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkEgc2VyaWVzIG9mIGNvcnJlY3QgdmFsdWVzIGZv
bGxvd2VkIGJ5IGEgbGV0dGVyIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciks
IGlkIGFycmF5KDEsIDIsIDMsIDQsIHgpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUd28g
Y29tbWFzIGFzIHNlcGFyYXRvciBiZXR3ZWVuIHZhbHVlcyBpbiBhcnJheSgpIiwgImN1c3RvbShu
b25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCAsIDQpKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJMZWFkaW5nIGNvbW1hIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIGlkIGFycmF5KCwxLCAyLCAzLCA0KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiU2Vt
aWNvbG9uIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMTsgMjsgMzsgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNw
YWNlIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSwgaWQgYXJyYXkoMSAyIDMgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIHNl
cGFyYXRlZCB2YWx1ZXMgd2l0aCBjb21tYSB0ZXJtaW5hdG9yIGluIGFycmF5KCkiLCAiY3VzdG9t
KG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEgMiAzIDQsKSkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEgaW4gYXJy
YXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLCAxIDIgMyA0KSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTmFOIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJs
KHNoYWRlciksIGlkIGFycmF5KE5hTikpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5hTiBh
bmQgdmFsdWVzIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5
KDEsIDIsIE5hTiwgMykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgdW5pdCB2
YWx1ZSBpbiBhcnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxcHgp
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHVuaXQgdmFsdWUgaW4gYXJyYXko
KSwgc2Vjb25kIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheShub25lKSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCksIHRo
aXJkIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxZGVnKSkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCksIGF0IHRoZSBl
bmQgb2YgYSBwYXJ0aWFsbHkgdmFsaWQgdmFsdWUgbGlzdCIsICJjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMSwgMiwgMywgNHB4KSkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5n
LmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVy
LXByb3BlcnR5LXBhcnNpbmcuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZiYzQ4
MTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9j
dXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmcuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxODQg
KzAsMCBAQAotZGVzY3JpcHRpb24oIlRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1c3RvbSgpIGZ1
bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4iKTsKLQotLy8gVGhlc2UgaGF2
ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgY3Nz
UnVsZSwgZGVjbGFyYXRpb24sIGZpbHRlclJ1bGUsIHN1YlJ1bGU7Ci0KLWZ1bmN0aW9uIHRlc3RG
aWx0ZXJSdWxlKGRlc2NyaXB0aW9uLCBydWxlLCBleHBlY3RlZFZhbHVlLCBleHBlY3RlZFR5cGVz
LCBleHBlY3RlZFRleHRzKQotewotICAgIGRlYnVnKCIiKTsKLSAgICBkZWJ1ZyhkZXNjcmlwdGlv
biArICIgOiAiICsgcnVsZSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoImJvZHkgeyAt
d2Via2l0LWZpbHRlcjogIiArIHJ1bGUgKyAiOyB9IiwgMCk7Ci0gICAgY3NzUnVsZSA9IHN0eWxl
c2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgCi0gICAgc2hvdWxkQmUoImNzc1J1bGUudHlwZSIs
ICIxIik7Ci0KLSAgICBkZWNsYXJhdGlvbiA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUo
ImRlY2xhcmF0aW9uLmxlbmd0aCIsICIxIik7Ci0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwo
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkiLCAiJyIgKyBl
eHBlY3RlZFZhbHVlICsgIiciKTsKLQotICAgIGZpbHRlclJ1bGUgPSBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKCctd2Via2l0LWZpbHRlcicpOwotICAgIHNob3VsZEJlVHlwZSgiZmls
dGVyUnVsZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIGlmICghZXhwZWN0ZWRUeXBlcykgewot
ICAgICAgICBleHBlY3RlZFR5cGVzID0gWyJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTSJdOwotICAgICAgICBleHBlY3RlZFRleHRzID0gW2V4cGVjdGVkVmFsdWVdOwotICAg
IH0KLSAgICAKLSAgICBzaG91bGRCZSgiZmlsdGVyUnVsZS5sZW5ndGgiLCAiIiArIGV4cGVjdGVk
VHlwZXMubGVuZ3RoKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1lbnRzCi0gIAot
ICAgIGlmIChmaWx0ZXJSdWxlKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXhwZWN0
ZWRUeXBlcy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3ViUnVsZSA9IGZpbHRlclJ1bGVb
aV07Ci0gICAgICAgICAgICBzaG91bGRCZSgic3ViUnVsZS5vcGVyYXRpb25UeXBlIiwgZXhwZWN0
ZWRUeXBlc1tpXSk7Ci0gICAgICAgICAgICBzaG91bGRCZSgicmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIiwgIiciICsgZXhwZWN0ZWRUZXh0c1tpXSArICInIik7Ci0gICAgICAgIH0KLSAg
ICB9Ci19Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIiwKLSAg
ICAgICAgICAgICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpKSIsICJjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZnJhZ21lbnQg
c2hhZGVyIiwKLSAgICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
KSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiKTsKLQotdGVzdEZpbHRlclJ1
bGUoIkN1c3RvbSB3aXRoIGJvdGggc2hhZGVycyIsCi0gICAgICAgICAgICAiY3VzdG9tKHVybCh2
ZXJ0ZXguc2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3Rv
bSB3aXRoIG1peCBmdW5jdGlvbiIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
KSkiKTsKLQotdmFyIGJsZW5kTW9kZXMgPSBbIm5vcm1hbCIsICJtdWx0aXBseSIsICJzY3JlZW4i
LCAib3ZlcmxheSIsICJkYXJrZW4iLCAibGlnaHRlbiIsICJjb2xvci1kb2RnZSIsCi0gICAgICAg
ICAgICAiY29sb3ItYnVybiIsICJoYXJkLWxpZ2h0IiwgInNvZnQtbGlnaHQiLCAiZGlmZmVyZW5j
ZSIsICJleGNsdXNpb24iLCAiaHVlIiwgInNhdHVyYXRpb24iLAotICAgICAgICAgICAgImNvbG9y
IiwgImx1bWlub3NpdHkiXTsKLWZvciAodmFyIGkgPSAwOyBpIDwgYmxlbmRNb2Rlcy5sZW5ndGg7
IGkrKykgewotICAgIHZhciBibGVuZE1vZGUgPSBibGVuZE1vZGVzW2ldOwotICAgIHRlc3RGaWx0
ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgIiArIGJsZW5k
TW9kZSwKLSAgICAgICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpICIgKyBibGVuZE1vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpICIgKyBibGVuZE1vZGUgKyAiKSkiKTsKLX0KLQotdmFyIGFscGhhQ29tcG9zaXRpbmdN
b2RlcyA9IFsiY2xlYXIiLCAiY29weSIsICJzb3VyY2Utb3ZlciIsICJkZXN0aW5hdGlvbi1vdmVy
IiwgInNvdXJjZS1pbiIsICJkZXN0aW5hdGlvbi1pbiIsCi0gICAgICAgICAgICAic291cmNlLW91
dCIsICJkZXN0aW5hdGlvbi1vdXQiLCAic291cmNlLWF0b3AiLCAiZGVzdGluYXRpb24tYXRvcCIs
ICJ4b3IiXTsKLWZvciAodmFyIGkgPSAwOyBpIDwgYWxwaGFDb21wb3NpdGluZ01vZGVzLmxlbmd0
aDsgaSsrKSB7Ci0gICAgdmFyIGFscGhhQ29tcG9zaXRpbmdNb2RlID0gYWxwaGFDb21wb3NpdGlu
Z01vZGVzW2ldOwotICAgIHRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24g
YW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgIiArIGFscGhhQ29tcG9zaXRpbmdNb2RlLAotICAg
ICAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYWxwaGFD
b21wb3NpdGluZ01vZGUgKyAiKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpICIgKyBhbHBoYUNvbXBvc2l0aW5nTW9kZSArICIpKSIpOwotfQotCi10ZXN0RmlsdGVyUnVs
ZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGZpcnN0LCBhbHBoYSBj
b21wb3NpdGluZyBtb2RlIHNlY29uZCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IGNsZWFyKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUo
IkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBmaXJz
dCwgYmxlbmQgbW9kZSBzZWNvbmQiLAotICAgICAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpIiwgImN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJD
dXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIGFuZCBtaXggZnVuY3Rpb24iLAotICAgICAgICAgICAg
ImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSkiLCAi
Y3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKSIpOwot
Ci10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGluIENBUFMiLAotICAg
ICAgICAgICAgImN1c3RvbShub25lIE1JWCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIiwgImN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJD
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIG1lc2ggc2l6ZSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSwgMTApIiwgImN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSksIDEwKSIpOwotICAgICAgICAgICAgCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggbWVzaCBzaXplIiwKLSAgICAgICAgICAgICJjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpLCAxMCkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApIik7Ci0K
LXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBib3RoIG1lc2ggc2l6ZXMiLAotICAgICAgICAg
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCkiLCAiY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3Vz
dG9tIHdpdGggZGV0YWNoZWQgbWVzaCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIGRldGFjaGVkKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgZGV0YWNoZWQpIik7Ci0gICAgICAgICAgICAKLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20g
d2l0aCBkZXRhY2hlZCBhbmQgbWVzaCBzaXplIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpIiwgImN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1
c3RvbSB3aXRoIG51bWJlciBwYXJhbWV0ZXJzIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNyki
LAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLCBw
MiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9t
IHdpdGggZmxvYXQgcGFyYW1ldGVycyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQu
MSA1LjIgNi4zIDcuNCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCBwMSAxLjEsIHAyIDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4yIDYu
MyA3LjQpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBwYXJhbWV0ZXIgbmFtZSBz
YW1lIGFzIENTUyB2YWx1ZSBrZXl3b3JkIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgYmFja2dyb3VuZCAwIDEgMCAxKSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGJhY2tncm91bmQgMCAxIDAgMSkiKTsKLQot
dGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1lc2ggc2l6ZSBhbmQgbnVtYmVyIHBhcmFtZXRl
cnMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAy
MCwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNykiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAz
IDQgNSwgcDQgNCA1IDYgNykiKTsKLQotdGVzdEZpbHRlclJ1bGUoIk11bHRpcGxlIHdpdGggZnJh
Z21lbnQgc2hhZGVyIiwKLSAgICAgICAgICAgICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSkgc2VwaWEoKSIsCi0gICAgICAgICAgICBbIldlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfR1JBWVNDQUxFIiwKLSAgICAgICAgICAgICJXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTSIsCi0gICAgICAgICAgICAiV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9TRVBJQSJdLAotICAgICAgICAgICAgWyJncmF5c2NhbGUoKSIsCi0g
ICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIiwKLSAgICAgICAg
ICAgICJzZXBpYSgpIl0pOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIGluIENBUFMiLAotICAg
ICAgICAgICAgIkNVU1RPTSh1cmwodmVydGV4LnNoYWRlcikpIiwgImN1c3RvbSh1cmwodmVydGV4
LnNoYWRlcikpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBvbmUgdHJhbnNmb3Jt
IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgb25lVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCBvbmVUcmFuc2Zvcm0gcm90YXRlKDBkZWcpKSIpOwotCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtcyIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJhbnNmb3JtIHJvdGF0ZSgw
ZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpKSIsCi0g
ICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUo
MHB4LCAwcHgpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdHdvIHNlcGFyYXRl
IHRyYW5zZm9ybXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCBmaXJzdFRyYW5zZm9ybSByb3RhdGUoMGRlZyksIHNlY29uZFRyYW5zZm9ybSByb3RhdGUo
MGRlZykpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
Zmlyc3RUcmFuc2Zvcm0gcm90YXRlKDBkZWcpLCBzZWNvbmRUcmFuc2Zvcm0gcm90YXRlKDBkZWcp
KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggYSBzaW5nbGUgZWxlbWVudCBhcnJh
eSgpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDAg
YXJyYXkoMSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgdDAgYXJyYXkoMSkpIik7Ci0KLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGEgc2lu
Z2xlIG5lZ2F0aXZlIGVsZW1lbnQgYXJyYXkoKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUg
dXJsKGZyYWdtZW50LnNoYWRlciksIHQxIGFycmF5KC0xLjAxKSkiLAotICAgICAgICAgICAgImN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0MSBhcnJheSgtMS4wMSkpIik7Ci0KLXRl
c3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtdWx0aXBsZSBlbGVtZW50cyBhcnJheSgpIiwKLSAg
ICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDIgYXJyYXkoMSwg
MiwgMywgNCwgNSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgdDIgYXJyYXkoMSwgMiwgMywgNCwgNSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0
b20gd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXQgZWxlbWVudHMgYXJyYXkoKSIsCi0gICAgICAg
ICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQzIGFycmF5KDEsIC0yLjIs
IDMuMTQsIDAuNCwgNSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSwgdDMgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSkiKTsKLQotdGVzdEZpbHRl
clJ1bGUoIk11bHRpcGxlIGFycmF5KCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCB0NSBhcnJh
eSgxLCAyLCAzKSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCB0NSBhcnJheSgxLCAyLCAzKSki
KTsKLQotLy8gRklYTUU6IFRoZSBmb2xsb3dpbmcgdGVzdHMgd2lsbCBiZSByZW1vdmVkIGFsb25n
IHdpdGggdGhlIG1lc2ggYm94IHR5cGVzIHBhcnNpbmcgY29kZS4KLS8vIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM3NzgKLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kg
LSBDdXN0b20gd2l0aCBtZXNoIGJveCBzaXplcyBhbmQgY29udGVudC1ib3giLAotICAgICAgICAg
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgY29udGVudC1ib3gpIiwK
LSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwot
Ci10ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdpdGggbWVzaCBib3ggc2l6ZXMgYW5k
IGJvcmRlci1ib3giLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxIDEgYm9yZGVyLWJveCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20g
d2l0aCBtZXNoIGJveCBzaXplcyBhbmQgcGFkZGluZy1ib3giLAotICAgICAgICAgICAgImN1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgcGFkZGluZy1ib3gpIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwotCi10ZXN0Rmls
dGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdpdGggcGFydGlhbCBtZXNoIGJveCBzaXplIGFuZCBw
YWRkaW5nLWJveCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwIHBhZGRpbmctYm94KSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEwKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdp
dGggcGFkZGluZy1ib3ggYW5kIGRldGFjaGVkIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgcGFkZGluZy1ib3ggZGV0YWNoZWQpIiwKLSAgICAgICAgICAg
ICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0YWNoZWQpIik7Ci0KLXRlc3RG
aWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20gd2l0aCBib3RoIG1lc2gtc2l6ZXMgYW5kIHBhZGRp
bmctYm94IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
MTAgMjAgcGFkZGluZy1ib3gpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMTAgMjApIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJMZWdhY3kgLSBDdXN0b20g
d2l0aCBtZXNoLXNpemVzLCBwYWRkaW5nLWJveCBhbmQgZGV0YWNoZWQiLAotICAgICAgICAgICAg
ImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCBwYWRkaW5nLWJveCBkZXRh
Y2hlZCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAx
MCAyMCBkZXRhY2hlZCkiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9z
Y3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC5qcyBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9zY3JpcHQtdGVzdHMvZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggYzMzOGQyNC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2VmZmVjdC1jdXN0b20tZGlzYWJsZWQuanMKKysrIC9k
ZXYvbnVsbApAQCAtMSwyNyArMCwwIEBACi1kZXNjcmlwdGlvbigiVGVzdCB0aGF0IHRoZSBjdXN0
b20oKSBmdW5jdGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkgaXMgbm90IHBhcnNl
ZCB3aGVuIENTUyBDdXN0b20gRmlsdGVyIGlzIGRpc2FibGVkLiIpOwotCi1pZiAod2luZG93LnRl
c3RSdW5uZXIpCi0gICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgZmFsc2UpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJl
IGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBzdHlsZXNoZWV0
LCBjc3NSdWxlLCBkZWNsYXJhdGlvbjsKLXZhciBzdHlsZUVsZW1lbnQgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzdHlsZUVsZW1l
bnQpOwotc3R5bGVzaGVldCA9IHN0eWxlRWxlbWVudC5zaGVldDsKLQotZnVuY3Rpb24gdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKGRlc2NyaXB0aW9uLCBydWxlKQotewotICAgIGRlYnVnKGRlc2NyaXB0
aW9uICsgIiA6ICIgKyBydWxlKTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiYm9keSB7
IC13ZWJraXQtZmlsdGVyOiAiICsgcnVsZSArICI7IH0iLCAwKTsKLSAgICBjc3NSdWxlID0gc3R5
bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAKLSAgICBzaG91bGRCZSgiY3NzUnVsZS50eXBl
IiwgIjEiKTsKLQotICAgIGRlY2xhcmF0aW9uID0gY3NzUnVsZS5zdHlsZTsKLSAgICBzaG91bGRC
ZSgiZGVjbGFyYXRpb24ubGVuZ3RoIiwgIjAiKTsKLSAgICBzaG91bGRCZSgiZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSIsICJudWxsIik7Ci19Ci0KLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciIsICJjdXN0b20odXJs
KHZlcnRleC5zaGFkZXIpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aXBsZSB3aXRo
IGZyYWdtZW50IHNoYWRlciIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSkgc2VwaWEoKSIsICJncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSkgc2VwaWEoKSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvZG9tL2dsb2Jh
bC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9k
b20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCBlOTgz
Mjg4Li4zYTdhZmExIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9kb20vZ2xvYmFsLWNvbnN0
cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9qcy9kb20v
Z2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dApAQCAtMTg4OCwxMSAr
MTg4OCw2IEBAIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdX
ZWJLaXRBbmltYXRpb25FdmVudCcpLmhhc093blByb3BlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5pbWF0aW9uRXZlbnQnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBB
U1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRp
b25FdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLnZhbHVlIGlzIFdlYktp
dENTU0ZpbHRlclJ1bGUKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNl
Ci1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NT
RmlsdGVyUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3Qu
Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS5l
bnVtZXJhYmxlIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVy
VmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZQogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclZhbHVlJykuaGFzT3du
UHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0
JykgaXMgZmFsc2UKQEAgLTE5MTMsMTEgKzE5MDgsNiBAQCBQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWF0cml4JykuaGFzT3duUHJvcGVydHko
JwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENT
U01hdHJpeCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmVudW1lcmFi
bGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdXZWJLaXRDU1NNYXRyaXgnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQotUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUn
KS52YWx1ZSBpcyBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlCi1QQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhh
c093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJykuZW51bWVyYWJsZSBpcyBmYWxz
ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENT
U01peEZ1bmN0aW9uVmFsdWUnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU1JlZ2lvblJ1bGUnKS52YWx1
ZSBpcyBXZWJLaXRDU1NSZWdpb25SdWxlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVsZScpLmhhc093blByb3BlcnR5KCdnZXQn
KSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J1dlYktpdENTU1JlZ2lvblJ1bGUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy1tb3VudGFpbmxpb24vanMvZG9tL2ds
b2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMtbW91bnRhaW5saW9uL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJp
YnV0ZXMtZXhwZWN0ZWQudHh0CmluZGV4IGNkNmU4M2IuLjg2NjY5ZTQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy1tb3VudGFpbmxpb24vanMvZG9tL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjLW1vdW50YWlubGlvbi9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4
cGVjdGVkLnR4dApAQCAtMTg5MywxMSArMTg5Myw2IEBAIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmhhc093blByb3Bl
CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5p
bWF0aW9uRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcp
LmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1Q
QVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmls
dGVyUnVsZScpLnZhbHVlIGlzIFdlYktpdENTU0ZpbHRlclJ1bGUKLVBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3du
UHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQn
KSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J1dlYktpdENTU0ZpbHRlclJ1bGUnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmNv
bmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktp
dENTU0ZpbHRlclZhbHVlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFs
dWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKQEAgLTE5MTgsMTEgKzE5MTMsNiBA
QCBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NT
TWF0cml4JykuaGFzT3duUHJvcGVydHkoJwogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmhhc093blByb3BlcnR5KCdzZXQnKSBp
cyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU01hdHJpeCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNYXRyaXgnKS5jb25maWd1cmFibGUg
aXMgdHJ1ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQotUEFT
UyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKLVBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlJykuZW51bWVyYWJsZSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5jb25maWd1cmFibGUg
aXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU1JlZ2lvblJ1bGUnKS52YWx1ZSBpcyBXZWJLaXRDU1NSZWdpb25SdWxlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVs
ZScpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJv
cGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU1JlZ2lvblJ1bGUnKS5oYXNPd25Qcm9w
ZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy13azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVz
dEV4cGVjdGF0aW9ucwppbmRleCBjMDRjY2VhLi5jOTQyMDVlIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMjIsOSArMjIyLDYgQEAgZmFz
dC9kb20vU3R5bGVTaGVldC9kZXRhY2hlZC1zdHlsZXNoZWV0LXdpdGhvdXQtd3JhcHBlci5odG1s
CiAjIEFsbCBzcGF0aWFsIG5hdmlnYXRpb24gdGVzdHMgZmFpbCBvbiBNYWMgV0syCiB3ZWJraXQu
b3JnL2IvOTY0MzggZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24KIAotIyBXSzIgdGVzdHMgZmFpbCBp
bWFnZSBkaWZmCi13ZWJraXQub3JnL2IvOTY1ODAgWyBEZWJ1ZyBdIGNzczMvZmlsdGVycy9jdXN0
b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
LQogIyBDYXVzZXMgbmV4dCB0ZXN0IHRvIGNyYXNoCiB3ZWJraXQub3JnL2IvOTg5NjAgZmFzdC9w
YXJzZXIvZG9jdW1lbnQtb3Blbi1pbi11bmxvYWQuaHRtbCBbIFNraXAgXQogCkBAIC0zMjAsNyAr
MzE3LDYgQEAgd2Via2l0Lm9yZy9iLzExODkyNSBjb21wb3NpdGluZy9iYWNrZ3JvdW5kcy9maXhl
ZC1iYWNrZ3JvdW5kcy5odG1sICBbIFBhc3MgSW1hZ2UKIHdlYmtpdC5vcmcvYi8xMTg5MjUgY29t
cG9zaXRpbmcvZ2VvbWV0cnkvZml4ZWQtcG9zaXRpb24tY29tcG9zaXRlZC1wYWdlLXNjYWxlLXNt
YWxsZXItdGhhbi12aWV3cG9ydC5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJr
aXQub3JnL2IvMTE4OTI1IGNvbXBvc2l0aW5nL292ZXJsYXAtYmxlbmRpbmcvY2hpbGRyZW4tb3Bh
Y2l0eS1odWdlLmh0bWwgIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8x
MTg5MjUgY29tcG9zaXRpbmcvb3ZlcmxhcC1ibGVuZGluZy9jaGlsZHJlbi1vcGFjaXR5LW5vLW92
ZXJsYXAuaHRtbCAgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzExODky
NSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMu
aHRtbCAgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzExODkyNSBmYXN0
L2xheWVycy9uby1jbGlwcGluZy1vdmVyZmxvdy1oaWRkZW4tYWRkZWQtYWZ0ZXItdHJhbnNpdGlv
bi5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTE4OTI1IGZh
c3QvbXVsdGljb2wvbWl4ZWQtb3BhY2l0eS1maXhlZC10ZXN0Lmh0bWwgIFsgUGFzcyBJbWFnZU9u
bHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xMTg5MjUgZmFzdC9yZWdpb25zL2ZpeGVkLXBvcy1l
bGVtLWluLXJlZ2lvbi5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCkBAIC0zNDYsMjMg
KzM0Miw2IEBAIHdlYmtpdC5vcmcvYi8xMjIyMzQgc3ZnL2ZpbHRlcnMvZmlsdGVyLWN5Y2xlLmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJz
L251bGwtZWZmZWN0LWNoZWNrLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi8xMjIyMzQgZmFzdC9pbWFnZXMvcGRmLWFzLWltYWdlLXdpdGgtYW5ub3RhdGlvbnMuaHRtbCBb
IFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTIyMjM0IGZhc3QvaW1hZ2Vz
L3BkZi1hcy1pbWFnZS1jcm9wLWJveC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdl
YmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jb21wb3NpdGVkL2N1c3RvbS1m
aWx0ZXItYmxlbmQtbW9kZXMuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQu
b3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hLXRleC1jb29y
ZC1vcHRpb25hbC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8x
MjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5k
aXJlY3QtaW5kZXguaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2Iv
MTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS5odG1sIFsgUGFz
cyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1
cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY2hhbmdlLWJsZW5kLW1vZGUuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci5o
dG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWRldGFjaGVkLW1lc2gtd2l0aC1tZXNoLWJveC10
eXBlLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBj
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWF0Ti5odG1sIFsgUGFzcyBJbWFnZU9u
bHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLW1lc2gtY29sdW1uLXJvdy1vcmRlci5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWls
dXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmls
dGVyLXUtbWVzaC1ib3guaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3Jn
L2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtc2l6ZS5o
dG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtdGV4dHVyZS1zaXplLmh0bWwgWyBQYXNzIElt
YWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItdS10aWxlLXNpemUuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBd
Ci13ZWJraXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11
bmF2YWlsYWJsZS12YXJ5aW5nLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0
Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LWNvbG9yLW1hdHJpeC5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFj
dGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KIAogIyBU
aWxlZCBiYWNrZ3JvdW5kIGltYWdlcyB0aGF0IGludGVyc2VjdCB0aGUgdGlsZXMgYXJlIGdldHRp
bmcgd2VpcmQgZnJpbmdpbmcuCiB3ZWJraXQub3JnL2IvMTIyMjM1IGNzczMvbWFza2luZy9tYXNr
LXJlcGVhdC1zcGFjZS1ib3JkZXIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA1MjFhMzhlLi5hYTM2Mjc4IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucworKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNjYzLDE1ICs2
NjMsNiBAQCBmYXN0L2NhbnZhcy9jYW52YXMtcXVhZHJhdGljLXNhbWUtZW5kcG9pbnQuaHRtbAog
Y3NzMy9maWx0ZXJzL2NvbXBvc2l0ZWQtZHVyaW5nLXRyYW5zaXRpb24tbGF5ZXJ0cmVlLmh0bWwK
IHdlYmtpdC5vcmcvYi85NTYyMiBjc3MzL2ZpbHRlcnMvY29tcG9zaXRlZC1kdXJpbmctYW5pbWF0
aW9uLWxheWVydHJlZS5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAotIyAtLS0gQ3VzdG9tIEZpbHRl
cnMgLS0tCi0jIFRoZSBmb2xsb3dpbmcgNSB0ZXN0cyBhcmUgY3VycmVudGx5IHNraXBwZWQgb24g
TWFjIGZvciBzbGlnaHQgY29sb3IgZGlmZmVyZW5jZXMsCi0jIHBsZWFzZSBzZWUgdGhlIHJlbGV2
YW50IGJ1ZzogaHR0cDovL3dlYmtpdC5vcmcvYi8xMDc0ODcKLXdlYmtpdC5vcmcvYi8xMDc0ODcg
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGlu
YXRpb24tYWxwaGEuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwNzQ4NyBjc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3IuaHRt
bCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwNzQ4NyBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtbHVtaW5vc2l0eS5odG1sIFsgU2tpcCBd
Ci13ZWJraXQub3JnL2IvMTA3NDg3IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1u
b25zZXBhcmFibGUtYmxlbmQtbW9kZS1odWUuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEw
NzQ4NyBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5k
LW1vZGUtc2F0dXJhdGlvbi5odG1sIFsgU2tpcCBdCi0KICMgLS0tIFRleHQgLS0tCiBmYXN0L2Zv
cm1zL3RleHQtY29udHJvbC1pbnRyaW5zaWMtd2lkdGhzLmh0bWwKIHBsYXRmb3JtL21hYy9mYXN0
L3RleHQvY29tYmluaW5nLWNoYXJhY3Rlci1zZXF1ZW5jZS1mYWxsYmFjay5odG1sCkBAIC0xMTUy
LDggKzExNDMsNiBAQCB3ZWJraXQub3JnL2IvMTE1MjkyIGZhc3Qvd3JpdGluZy1tb2RlL3ZlcnRp
Y2FsLWZvbnQtZmFsbGJhY2suaHRtbAogIyBGYWlscyB3aXRoIFdlYktpdDEgb25seS4KIGVkaXRp
bmcvc2VjdXJlLWlucHV0L3Jlc2V0LXN0YXRlLW9uLW5hdmlnYXRpb24uaHRtbCBbIEZhaWx1cmUg
XQogCi13ZWJraXQub3JnL2IvMTE2MjM4IGNzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZhbGxi
YWNrLXRvLXNvZnR3YXJlLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotCiB3ZWJraXQu
b3JnL2IvMTE2MjQ0IGZhc3QvZXZlbnRzL21vdXNlLWN1cnNvci1pbWFnZS1zZXQuaHRtbCBbIEZh
aWx1cmUgUGFzcyBdCiAKIHdlYmtpdC5vcmcvYi8xMTYyNDUgY2FudmFzL3BoaWxpcC90ZXN0cy8y
ZC50ZXh0LmRyYXcuZm9udGZhY2Uubm90aW5wYWdlLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQpAQCAt
MTI2MSwxMiArMTI1MCw2IEBAIHdlYmtpdC5vcmcvYi8xMjMyODIgY29tcG9zaXRpbmcvcmVnaW9u
cy9wcm9wYWdhdGUtcmVnaW9uLWJveC1zaGFkb3ctYm9yZGVyLXBhZGRpCiAKIHdlYmtpdC5vcmcv
Yi8xMjMyNTAgcGx1Z2lucy9kZXN0cm95LWR1cmluZy1ucHAtbmV3LW9iamVjdC13aXRoLWZhbGxi
YWNrLWNvbnRlbnQuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKLXdlYmtpdC5vcmcvYi8xMjMzNzAg
WyBNYXZlcmlja3MgXSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2NvbXBvc2l0ZWQvY3VzdG9tLWZpbHRl
ci1ibGVuZC1tb2Rlcy5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8xMjMzNzAgWyBNYXZlcmlja3MgXSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
YmxlbmQtbW9kZXMuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2Iv
MTIzMzcwIFsgTWF2ZXJpY2tzIF0gY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNs
YW1wLWNzcy1jb2xvci1tYXRyaXguaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTIzMzcwIFsgTWF2ZXJpY2tzIF0gY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sIFsgUGFzcyBJbWFn
ZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjMzNzAgWyBNYXZlcmlja3MgXSBjc3MzL2Zp
bHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMuaHRtbCBbIFBh
c3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi0KIHdlYmtpdC5vcmcvYi8xMjMzNjkgc3ZnL2Nzcy9wYXJl
bnQtc2hhZG93LW9mZnNjcmVlbi5zdmcgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi8xMjMzNjkgWyBNb3VudGFpbkxpb24gXSBzdmcvY3NzL3BhcmVudC1zaGFkb3ctb2Zmc2NyZWVu
LnN2ZyBbIFBhc3MgXQogd2Via2l0Lm9yZy9iLzEyMzM2OSBzdmcvY3NzL3Jvb3Qtc2hhZG93LW9m
ZnNjcmVlbi5zdmcgWyBJbWFnZU9ubHlGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVj
dG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCAzNGU5MjdlLi40MTYyZmYxIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3Rv
cnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0CkBAIC0x
OTAzLDExICsxOTAzLDYgQEAgUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGds
b2JhbCwgJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykuaGFzT3duUHJvcGUKIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmhh
c093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykuZW51bWVyYWJsZSBpcyBm
YWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktp
dEFuaW1hdGlvbkV2ZW50JykuY29uZmlndXJhYmxlIGlzIHRydWUKLVBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykudmFsdWUg
aXMgV2ViS2l0Q1NTRmlsdGVyUnVsZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0Jykg
aXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdX
ZWJLaXRDU1NGaWx0ZXJSdWxlJykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCi1QQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVy
UnVsZScpLmVudW1lcmFibGUgaXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuY29uZmlndXJhYmxlIGlzIHRy
dWUKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRD
U1NGaWx0ZXJWYWx1ZScpLnZhbHVlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlCiBQQVNTIE9iamVj
dC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUn
KS5oYXNPd25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJWYWx1ZScpLmhhc093blByb3Bl
cnR5KCdzZXQnKSBpcyBmYWxzZQpAQCAtMTkyOCwxMSArMTkyMyw2IEBAIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNYXRyaXgnKS5oYXNPd25Q
cm9wZXJ0eSgnCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
V2ViS2l0Q1NTTWF0cml4JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWF0cml4Jyku
ZW51bWVyYWJsZSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCi1QQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZScpLnZhbHVlIGlzIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUKLVBBU1MgT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhh
c093blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5lbnVtZXJhYmxl
IGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9i
amVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVs
ZScpLnZhbHVlIGlzIFdlYktpdENTU1JlZ2lvblJ1bGUKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NSZWdpb25SdWxlJykuaGFzT3duUHJvcGVy
dHkoJ2dldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTUmVnaW9uUnVsZScpLmhhc093blByb3BlcnR5KCdzZXQnKSBpcyBm
YWxzZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlv
bnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRleCAxNjZm
NDQ5Li43NGIzZTkxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4
cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9u
cwpAQCAtNDIsOSArNDIsNiBAQCBjc3MzL2ZpbHRlcnMvZWZmZWN0LW9wYWNpdHktaHcuaHRtbAog
Y3NzMy9maWx0ZXJzL2VmZmVjdC1zYXR1cmF0ZS1ody5odG1sCiBjc3MzL2ZpbHRlcnMvZWZmZWN0
LXNlcGlhLWh3Lmh0bWwKIAotIyBDdXN0b20gZmlsdGVycyBub3QgeWV0IHN1cHBvcnRlZCBvbiBX
aW5kb3dzCi1jc3MzL2ZpbHRlcnMvY3VzdG9tCi0KICMgUmVtb3ZlIGZyb20gbGlzdCBhZnRlciBl
bmFibGluZyBDQU5WQVNfUEFUSAogZmFzdC9jYW52YXMvY2FudmFzLWN1cnJlbnRQYXRoLmh0bWwK
IGZhc3QvY2FudmFzL2NhbnZhcy1wYXRoLWNvbnN0cnVjdG9ycy5odG1sCkBAIC0yNDQ2LDcgKzI0
NDMsNiBAQCBjb21wb3NpdGluZy9maWx0ZXJzL3N3LW5lc3RlZC1zaGFkb3ctb3ZlcmxhcHMtaHct
bmVzdGVkLXNoYWRvdy5odG1sCiBjb21wb3NpdGluZy9pZnJhbWVzL2lmcmFtZS1zaXplLWZyb20t
emVyby5odG1sCiBjb21wb3NpdGluZy9pZnJhbWVzL292ZXJsYXBwZWQtaWZyYW1lLWlmcmFtZS5o
dG1sCiBjb21wb3NpdGluZy90aWxpbmcvdGlsZWQtbGF5ZXItcmVzaXplLmh0bWwKLWNzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12
YWxpZC5odG1sCiBlZGl0aW5nL2lucHV0L2ltZS1jb21wb3NpdGlvbi1jbGVhcnByZWVkaXQuaHRt
bAogZmFzdC9jYW52YXMvY2FudmFzLWNvbXBvc2l0ZS1hbHBoYS5odG1sCiBmYXN0L2NhbnZhcy9j
YW52YXMtcXVhZHJhdGljLXNhbWUtZW5kcG9pbnQuaHRtbApAQCAtMjQ4Miw5ICsyNDc4LDYgQEAg
d2Via2l0Lm9yZy9iLzYxMTM4IGh0dHAvdGVzdHMvdzNjL3dlYnBlcmYvc3VibWlzc2lvbi9JbnRl
bC9yZXNvdXJjZS10aW1pbmcKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTk1NDI4CiB3ZWJraXQub3JnL2IvMTAxNjcwIG1lZGlhL3ZpZGVvLWNvbnRyb2xzLWNhcHRp
b25zLmh0bWwgWyBTa2lwIF0KIAotIyBidWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MTIzNQotY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4Ci0KICMgYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTA0NDcKIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctY2hhbmdlZC10ZXh0Lmh0bWwKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJv
L1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZDUzODZjYS4uYTliMDhhNyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCkBAIC01NjUsOSArNTY1LDYg
QEAgY3NzMy9maWx0ZXJzL2VmZmVjdC1vcGFjaXR5LWh3Lmh0bWwKIGNzczMvZmlsdGVycy9lZmZl
Y3Qtc2F0dXJhdGUtaHcuaHRtbAogY3NzMy9maWx0ZXJzL2VmZmVjdC1zZXBpYS1ody5odG1sCiAK
LSMgQ3VzdG9tIGZpbHRlcnMgbm90IHlldCBzdXBwb3J0ZWQgb24gV2luZG93cwotY3NzMy9maWx0
ZXJzL2N1c3RvbQotCiAjIE5lZWRzIHJlYmFzZWxpbmUgYWZ0ZXIgYnVnIDk3MjE3IGlzIGZpeGVk
CiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzMyNQogY3NzMy9t
YXNraW5nL2NsaXAtcGF0aC1jaXJjbGUtcmVsYXRpdmUtb3ZlcmZsb3cuaHRtbApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZp
bmVzLnhjY29uZmlnCmluZGV4IGFhMzc1ODhkLi45NDY4YzgyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCkBAIC01MCw3ICs1MCw2IEBAIEVOQUJMRV9DU1NfRklMVEVSUyA9IEVOQUJMRV9DU1Nf
RklMVEVSUzsKIEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfQ1NTX0lN
QUdFX1JFU09MVVRJT04gPSA7CiBFTkFCTEVfQ1NTX1JFR0lPTlMgPSBFTkFCTEVfQ1NTX1JFR0lP
TlM7Ci1FTkFCTEVfQ1NTX1NIQURFUlMgPSBFTkFCTEVfQ1NTX1NIQURFUlM7CiBFTkFCTEVfQ1NT
X1NIQVBFUyA9IEVOQUJMRV9DU1NfU0hBUEVTOwogRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04g
PSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTjsKIEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklN
QVRJT05TX1VOUFJFRklYRUQgPSBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBS
RUZJWEVEOwpAQCAtMTk4LDQgKzE5Nyw0IEBAIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiBF
TkFCTEVfRlRMX0pJVCA9IDsKIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKLUZFQVRVUkVfREVG
SU5FUyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FO
VkFTKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpICQoRU5BQkxFX0JM
T0IpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQo
RU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxF
X0NTUF9ORVhUKSAkKEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NT
U19DT01QT1NJVElORykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9D
U1NfRVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19JTUFHRV9P
UklFTlRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19S
RUdJT05TKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFC
TEVfQ1NTX1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9O
U19VTlBSRUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9D
U1MzX1RFWFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RF
WFRfTElORV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RP
TV9TQ0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RB
VEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RF
VEFJTFNfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJF
Q1RPUllfVVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVf
RFJBR0dBQkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNS
WVBURURfTUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVO
VFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9H
RU9MT0NBVElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQo
RU5BQkxFX0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9J
RlJBTUVfU0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElF
X1VJKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQo
RU5BQkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRF
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVU
X1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVf
SU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19B
SVJQTEFZKSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBU
X0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVf
TEVHQUNZX05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQo
RU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9M
SU5LX1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1ND
UklQVCkgJChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAk
KEVOQUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VS
U09SX1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9U
SUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lU
X1BMVUdJTikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JF
U1NfRUxFTUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMp
ICQoRU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JF
UVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJM
RV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5B
QkxFX1NIQURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hf
U1lOVEhFU0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9V
VCkgJChFTkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9O
VFMpICQoRU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykg
JChFTkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5B
QkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0sp
ICQoRU5BQkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9X
RUJfQU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAk
KEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VS
UykgJChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQp
ICQoRU5BQkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1F
KSk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FD
Q0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xM
SU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxF
X0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVT
U0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JS
RUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRB
VElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVO
QUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9O
KSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NT
X1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBS
RUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RF
WFQpICQoRU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElO
RV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hF
TUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNU
X0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNf
RUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllf
VVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dB
QkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURf
TUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQo
RU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NB
VElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxF
X0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVf
U0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAk
KEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxF
X0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVO
QUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVf
REFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRf
VFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZ
KSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVH
R0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZ
X05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxF
X0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BS
RUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkg
JChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJM
RV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1ND
QUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FU
SU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJ
TikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxF
TUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5B
QkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1Rf
QU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNP
TFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NI
QURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhF
U0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChF
TkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQo
RU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFC
TEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VT
RVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5B
QkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5J
TUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJM
RV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChF
TkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5B
QkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oIGIvU291cmNlL1dURi93
dGYvRmVhdHVyZURlZmluZXMuaAppbmRleCBmZmU3OTc4Li4wN2M4Njk0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0ZlYXR1
cmVEZWZpbmVzLmgKQEAgLTQxNiwxMCArNDE2LDYgQEAKICNkZWZpbmUgRU5BQkxFX0NTU19JTUFH
RV9TRVQgMAogI2VuZGlmCiAKLSNpZiAhZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpCi0jZGVm
aW5lIEVOQUJMRV9DU1NfU0hBREVSUyAwCi0jZW5kaWYKLQogI2lmICFkZWZpbmVkKEVOQUJMRV9D
U1NfU1RJQ0tZX1BPU0lUSU9OKQogI2RlZmluZSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTiAw
CiAjZW5kaWYKQEAgLTg4NCwxMCArODgwLDYgQEAKICNlcnJvciAiRU5BQkxFKFZJREVPX1RSQUNL
KSByZXF1aXJlcyBFTkFCTEUoVklERU8pIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpICYmICFFTkFCTEUoV0VCR0wpCi0jZXJyb3IgIkVOQUJMRShDU1NfU0hBREVSUykgcmVxdWly
ZXMgRU5BQkxFKFdFQkdMKSIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1Ip
ICYmICFFTkFCTEUoSU5TUEVDVE9SKQogI2Vycm9yICJFTkFCTEUoUkVNT1RFX0lOU1BFQ1RPUikg
cmVxdWlyZXMgRU5BQkxFKElOU1BFQ1RPUikiCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5k
ZXggNWZlYjA3Ny4uNTlkMDdkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTMxOSwxMiArMzE5
LDEwIEBAIHNldChXZWJDb3JlX0lETF9GSUxFUwogICAgIGNzcy9TdHlsZU1lZGlhLmlkbAogICAg
IGNzcy9TdHlsZVNoZWV0LmlkbAogICAgIGNzcy9TdHlsZVNoZWV0TGlzdC5pZGwKLSAgICBjc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRs
CiAgICAgY3NzL1dlYktpdENTU0tleWZyYW1lUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTS2V5
ZnJhbWVzUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTTWF0cml4LmlkbAotICAgIGNzcy9XZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbAogICAgIGNzcy9XZWJLaXRDU1NSZWdpb25SdWxlLmlk
bAogICAgIGNzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NT
Vmlld3BvcnRSdWxlLmlkbApAQCAtMTExMSwxNiArMTEwOSwxMSBAQCBzZXQoV2ViQ29yZV9TT1VS
Q0VTCiAgICAgY3NzL1N0eWxlU2hlZXRMaXN0LmNwcAogICAgIGNzcy9UcmFuc2Zvcm1GdW5jdGlv
bnMuY3BwCiAgICAgY3NzL1ZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAKLSAgICBjc3MvV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcAotICAgIGNzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmNw
cAogICAgIGNzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAKICAgICBjc3MvV2ViS2l0Q1NTS2V5
ZnJhbWVSdWxlLmNwcAogICAgIGNzcy9XZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcAotICAgIGNz
cy9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcAogICAgIGNzcy9XZWJLaXRDU1NNYXRyaXgu
Y3BwCi0gICAgY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwCiAgICAgY3NzL1dlYktp
dENTU1JlZ2lvblJ1bGUuY3BwCi0gICAgY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmNwcAogICAg
IGNzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAKICAgICBjc3MvV2ViS2l0Q1NTVmlld3Bv
cnRSdWxlLmNwcAogCkBAIC0xNjk4LDcgKzE2OTEsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAg
ICAgbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0RvY3VtZW50LmNwcAogICAgIGxvYWRlci9jYWNoZS9D
YWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZS5jcHAKICAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2Ny
aXB0LmNwcAotICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuY3BwCiAgICAgbG9hZGVyL2Nh
Y2hlL0NhY2hlZFhTTFN0eWxlU2hlZXQuY3BwCiAgICAgbG9hZGVyL2NhY2hlL01lbW9yeUNhY2hl
LmNwcAogCkBAIC0xOTQxLDIzICsxOTMzLDEyIEBAIHNldChXZWJDb3JlX1NPVVJDRVMKIAogICAg
IHBsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAKIAot
ICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
LmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29u
dGV4dC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2gu
Y3BwCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJh
dG9yLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyTGlzdC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBy
b2dyYW0uY3BwCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9n
cmFtSW5mby5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJl
bmRlcmVyLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbS5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3RhbnRM
aWdodFNvdXJjZS5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQmxlbmQuY3Bw
CiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUNvbG9yTWF0cml4LmNwcAogICAgIHBs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDb21wb25lbnRUcmFuc2Zlci5jcHAKICAgICBwbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ29tcG9zaXRlLmNwcAogICAgIHBsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNwcAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
RkVEaWZmdXNlTGlnaHRpbmcuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRURp
c3BsYWNlbWVudE1hcC5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFRHJvcFNo
YWRvdy5jcHAKQEAgLTE5NzcsOSArMTk1OCw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBw
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1NvdXJjZUFscGhhLmNwcAogICAgIHBsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvU291cmNlR3JhcGhpYy5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL1Nwb3RMaWdodFNvdXJjZS5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAKLQotICAgIHBsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvdGV4bWFwL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW1UZXh0dXJlTWFw
cGVyLmNwcAogCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXIuY3Bw
CiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJCYWNraW5nU3RvcmUu
Y3BwCkBAIC0yMjcyLDkgKzIyNTAsNiBAQCBzZXQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgcmVuZGVy
aW5nL3N0eWxlL1N0eWxlQm94RGF0YS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNo
ZWRJbWFnZS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZVNldC5jcHAK
LSAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuY3BwCi0gICAgcmVuZGVyaW5n
L3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAKLSAgICByZW5kZXJpbmcvc3R5bGUv
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuY3BwCiAgICAgcmVuZGVyaW5nL3N0eWxlL1N0
eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5
bGVGaWx0ZXJEYXRhLmNwcAogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUZsZXhpYmxlQm94RGF0
YS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVE
ZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURl
ZmluZXMueGNjb25maWcKaW5kZXggYWEzNzU4OGQuLjk0NjhjODIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC01
MCw3ICs1MCw2IEBAIEVOQUJMRV9DU1NfRklMVEVSUyA9IEVOQUJMRV9DU1NfRklMVEVSUzsKIEVO
QUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04gPSA7CiBFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJ
T04gPSA7CiBFTkFCTEVfQ1NTX1JFR0lPTlMgPSBFTkFCTEVfQ1NTX1JFR0lPTlM7Ci1FTkFCTEVf
Q1NTX1NIQURFUlMgPSBFTkFCTEVfQ1NTX1NIQURFUlM7CiBFTkFCTEVfQ1NTX1NIQVBFUyA9IEVO
QUJMRV9DU1NfU0hBUEVTOwogRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04gPSBFTkFCTEVfQ1NT
X1NUSUNLWV9QT1NJVElPTjsKIEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJF
RklYRUQgPSBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEOwpAQCAt
MTk4LDQgKzE5Nyw0IEBAIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiBFTkFCTEVfRlRMX0pJ
VCA9IDsKIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5B
QkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJM
RV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxF
X0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZB
U19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NTUF9ORVhUKSAk
KEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19DT01QT1NJVElO
RykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1NfRVhDTFVTSU9O
UykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikg
JChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAkKEVO
QUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNL
WV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVE
KSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQo
RU5BQkxFX0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVB
SykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFO
RExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1F
TlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVO
VCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FE
KSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JF
R0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFf
VjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxF
X0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikg
JChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hf
RFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxF
U1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJM
RV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVU
X1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJ
TUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9U
SU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVO
QUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAk
KEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElG
SUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FD
WV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENI
KSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFC
TEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRF
Ul9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAk
KEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykg
JChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChF
TkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkg
JChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BV
QkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFU
SU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9O
X01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19E
T00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAk
KEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVf
U1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxF
X1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9V
Q0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxF
Q1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJ
RVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9O
UykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJf
U09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVf
WEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xM
SU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CitGRUFUVVJF
X0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJE
X0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJM
RV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRI
KSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVO
QUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJM
RV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFC
TEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfSU1B
R0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9D
U1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJ
VElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEKSAkKEVO
QUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxF
X0NTUzNfVEVYVF9ERUNPUkFUSU9OKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVBSykgJChF
TkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikg
JChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQo
RU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVOVCkgJChF
TkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVO
QUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JFR0lPTikg
JChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFfVjIpICQo
RU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExT
Q1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFC
TEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NB
TlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQo
RU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBV
VF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1RZUEVf
Q09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NB
TCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9J
T1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJM
RV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElP
TlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJf
QVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVO
QUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFCTEVfTUVE
SUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRFUl9FTEVN
RU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAkKEVOQUJM
RV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFC
TEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVf
UExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkgJChFTkFC
TEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BVQkxJQ19T
VUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZS
QU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElB
X1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19ET00pICQo
RU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAkKEVOQUJM
RV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVfU1VCVExF
X0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTVBM
QVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9VQ0hfRVZF
TlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxM
KSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJRVdfTU9E
RV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9OUykgJChF
TkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VU
UykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJ
TUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xMSU5UX0Nf
TE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy5jcHAKaW5kZXggYTJkNTNkNi4uMDZmZTk3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLmNwcApAQCAtNDg0LDkgKzQ4NCw2IEBACiAjaW5jbHVkZSAiSlNWYWxpZGl0eVN0YXRlLmNw
cCIKICNpbmNsdWRlICJKU1ZvaWRDYWxsYmFjay5jcHAiCiAjaW5jbHVkZSAiSlNXZWJLaXRBbmlt
YXRpb25FdmVudC5jcHAiCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkpTV2Vi
S2l0Q1NTRmlsdGVyUnVsZS5jcHAiCi0jZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAj
aW5jbHVkZSAiSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAiCiAjZW5kaWYKQEAgLTQ5NCw5ICs0
OTEsNiBAQAogI2luY2x1ZGUgIkpTV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5jcHAiCiAjaW5jbHVk
ZSAiSlNXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAiCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NN
YXRyaXguY3BwIgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJKU1dlYktpdENT
U01peEZ1bmN0aW9uVmFsdWUuY3BwIgotI2VuZGlmCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NSZWdp
b25SdWxlLmNwcCIKICNpbmNsdWRlICJKU1dlYktpdE5hbWVkRmxvdy5jcHAiCiAjaW5jbHVkZSAi
SlNXZWJLaXRQb2ludC5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA0Zjg5
NGFhLi4yNzJjNzI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5t
YWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTIzNiwxMSAr
MjM2LDkgQEAgQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvY3NzL1N0eWxlU2hlZXQu
aWRsIFwKICAgICAkKFdlYkNvcmUpL2Nzcy9TdHlsZVNoZWV0TGlzdC5pZGwgXAogICAgICQoV2Vi
Q29yZSkvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmlkbCBcCi0gICAgJChXZWJDb3JlKS9jc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dlYktpdENTU0tl
eWZyYW1lUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dlYktpdENTU0tleWZyYW1lc1J1
bGUuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NNYXRyaXguaWRsIFwKLSAgICAk
KFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9jc3MvV2ViS2l0Q1NTUmVnaW9uUnVsZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dl
YktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NT
Vmlld3BvcnRSdWxlLmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmls
ZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCBlMWIw
N2NhLi45NTI0ZjU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0
LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTc5Myw4ICs3
OTMsNiBAQCB3ZWJjb3JlX2J1aWx0X3NvdXJjZXMgKz0gXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRBbmltYXRpb25FdmVudC5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNXZWJLaXRBbmltYXRpb25FdmVudC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2Vi
S2l0Q1NTRmlsdGVyUnVsZS5jcHAgXAotCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRD
U1NGaWx0ZXJSdWxlLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxl
LmNwcCBcCkBAIC04MDMsOCArODAxLDYgQEAgd2ViY29yZV9idWlsdF9zb3VyY2VzICs9IFwKIAlE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIFwKIAlEZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTTWF0cml4LmNwcCBcCiAJRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU1dlYktpdENTU01hdHJpeC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgXAotCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U1dlYktpdENTU1JlZ2lvblJ1bGUuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYktp
dENTU1RyYW5zZm9ybVZhbHVlLmNwcCBcCkBAIC0xMzMzLDEyICsxMzI5LDEwIEBAIGRvbV9iaW5k
aW5nX2lkbHMgKz0gXAogCSQoV2ViQ29yZSkvY3NzL1N0eWxlTWVkaWEuaWRsIFwKIAkkKFdlYkNv
cmUpL2Nzcy9TdHlsZVNoZWV0LmlkbCBcCiAJJChXZWJDb3JlKS9jc3MvU3R5bGVTaGVldExpc3Qu
aWRsIFwKLQkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmlkbCBcCiAJJChXZWJD
b3JlKS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJL
aXRDU1NLZXlmcmFtZVJ1bGUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NLZXlmcmFt
ZXNSdWxlLmlkbCBcCiAJJChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NTTWF0cml4LmlkbCBcCi0JJChX
ZWJDb3JlKS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5pZGwgXAogCSQoV2ViQ29yZSkv
Y3NzL1dlYktpdENTU1JlZ2lvblJ1bGUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NU
cmFuc2Zvcm1WYWx1ZS5pZGwgXAogCSQoV2ViQ29yZSkvY3NzL1dlYktpdENTU1ZpZXdwb3J0UnVs
ZS5pZGwgXApAQCAtMjcxNiwxMCArMjcxMCw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291
cmNlL1dlYkNvcmUvY3NzL1RyYW5zZm9ybUZ1bmN0aW9ucy5oIFwKIAlTb3VyY2UvV2ViQ29yZS9j
c3MvVmlld3BvcnRTdHlsZVJlc29sdmVyLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1ZpZXdw
b3J0U3R5bGVSZXNvbHZlci5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTQXJyYXlG
dW5jdGlvblZhbHVlLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyUnVsZS5j
cHAgXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmggXAogCVNvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0
Q1NTS2V5ZnJhbWVSdWxlLmNwcCBcCkBAIC0yNzI4LDE0ICsyNzE4LDggQEAgd2ViY29yZV9zb3Vy
Y2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIFwK
IAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0cml4LmNwcCBcCiAJU291cmNlL1dlYkNv
cmUvY3NzL1dlYktpdENTU01hdHJpeC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZS5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNYXRG
dW5jdGlvblZhbHVlLmggXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlv
blZhbHVlLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFs
dWUuaCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1JlZ2lvblJ1bGUuY3BwIFwKIAlT
b3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTUmVnaW9uUnVsZS5oIFwKLQlTb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2Vi
S2l0Q1NTU2hhZGVyVmFsdWUuaCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5z
Zm9ybVZhbHVlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5zZm9ybVZh
bHVlLmggXAogCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3BwIFwK
QEAgLTM5NDUsOCArMzkyOSw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCBcCiAJU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAgXAogCVNvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuaCBcCi0JU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFNoYWRlci5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRTaGFkZXIuaCBcCiAJU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFN0eWxl
U2hlZXRDbGllbnQuaCBcCiAJU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFRleHRU
cmFjay5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRUZXh0VHJhY2su
aCBcCkBAIC00NjI0LDEyICs0NjA2LDYgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZS5oIFwKIAlTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZVNldC5jcHAgXAogCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZEltYWdlU2V0LmggXAotCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5jcHAgXAotCVNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5oIFwKLQlTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCBcCi0JU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIFwK
LQlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
Q2FjaGUuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtQ2FjaGUuaCBcCiAJU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlRGFzaGJvYXJkUmVnaW9uLmggXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9T
dHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU3R5bGVEZXByZWNhdGVkRmxleGlibGVCb3hEYXRhLmggXApAQCAtNDY1MSwx
MyArNDYyNywxMSBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZU11bHRpQ29sRGF0YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZU11bHRpQ29sRGF0YS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVQZW5kaW5nSW1hZ2UuaCBcCi0JU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1N0eWxlUGVuZGluZ1NoYWRlci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmggXAogCVNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcCBcCiAJU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaCBcCiAJU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmVmbGVjdGlvbi5oIFwKLQlTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVTaGFkZXIuaCBcCiAJU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlU3Vycm91bmREYXRhLmNwcCBcCiAJU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlU3Vycm91bmREYXRhLmggXAogCVNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZVRyYW5zZm9ybURhdGEuY3BwIFwKQEAgLTU2NTAsMzUgKzU2MjQs
NiBAQCBwbGF0Zm9ybV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jcHUvYXJtL2ZpbHRlcnMvRkVHYXVzc2lhbkJsdXJORU9OLmggXAogCVNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAg
XAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxp
Z2h0aW5nTkVPTi5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb25zdGFudHMu
aCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0
ZXJHbG9iYWxDb250ZXh0LmNwcCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmggXAotCVNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5jcHAgXAotCVNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5oIFwKLQlT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hH
ZW5lcmF0b3IuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24u
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlck9wZXJhdGlvbi5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgXAotCVNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUGFyYW1ldGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIFwKLQlTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0u
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlclByb2dyYW0uaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwIFwKLQlTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1JbmZv
LmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUmVuZGVyZXIuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcCBcCi0JU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFBy
b2dyYW0uaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCBcCi0JU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0
ZWRQcm9ncmFtLmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
RGlzdGFudExpZ2h0U291cmNlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9EaXN0YW50TGlnaHRTb3VyY2UuaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9GRUJsZW5kLmNwcCBcCkBAIC01NjkxLDggKzU2MzYsNiBAQCBw
bGF0Zm9ybV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0ZFQ29tcG9zaXRlLmggXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvRkVDb252b2x2ZU1hdHJpeC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNwcCBcCi0JU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5oIFwKIAlTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFRGlmZnVzZUxpZ2h0aW5nLmNw
cCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRURpZmZ1c2VM
aWdodGluZy5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZF
RGlzcGxhY2VtZW50TWFwLmNwcCBcCkBAIC02NDA3LDcgKzYzNTAsNiBAQCBlbmRpZgogaWYgVVNF
X0FDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HCiBpZiBVU0VfVEVYVFVSRV9NQVBQRVJfR0wKIHdlYmNv
cmVfc291cmNlcyArPSBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy90ZXhtYXAvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbVRleHR1cmVNYXBwZXIuY3BwIFwK
IAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL3RleG1hcC9UZXh0dXJl
TWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0uaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wuaCBcCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLm9yZGVyIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5v
cmRlcgppbmRleCA5NzU0ZGQ5Li43YjhiOWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLm9yZGVyCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUub3JkZXIKQEAgLTI3NDcs
NyArMjc0Nyw2IEBAIF9fWk43V2ViQ29yZTE4UmVuZGVyTGF5ZXJCYWNraW5nMTV1cGRhdGVUcmFu
c2Zvcm1FUEtOU18xMVJlbmRlclN0eWxlRQogX19aTjdXZWJDb3JlMTVHcmFwaGljc0xheWVyQ0Ex
MnNldFRyYW5zZm9ybUVSS05TXzIwVHJhbnNmb3JtYXRpb25NYXRyaXhFCiBfX1pOSzdXZWJDb3Jl
MjBUcmFuc2Zvcm1hdGlvbk1hdHJpeGVxRVJLUzBfCiBfX1pON1dlYkNvcmUxOFJlbmRlckxheWVy
QmFja2luZzEzdXBkYXRlRmlsdGVyc0VQS05TXzExUmVuZGVyU3R5bGVFCi1fX1pON1dlYkNvcmUx
MVJlbmRlckxheWVyMjNjb21wdXRlRmlsdGVyT3BlcmF0aW9uc0VQS05TXzExUmVuZGVyU3R5bGVF
CiBfX1pON1dlYkNvcmUxNkZpbHRlck9wZXJhdGlvbnNhU0VSS1MwXwogX19aTjNXVEY2VmVjdG9y
SU5TXzZSZWZQdHJJTjdXZWJDb3JlMTVGaWx0ZXJPcGVyYXRpb25FRUVMbTBFTlNfMTVDcmFzaE9u
T3ZlcmZsb3dFRWFTRVJLUzZfCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzTGF5ZXJDQTEwc2V0Rmls
dGVyc0VSS05TXzE2RmlsdGVyT3BlcmF0aW9uc0UKQEAgLTIwNjU5LDcgKzIwNjU4LDYgQEAgX19a
VFZON1dlYkNvcmUxMUNhY2hlZEltYWdlRQogX19aVFZON1dlYkNvcmUxN0NhY2hlZFJhd1Jlc291
cmNlRQogX19aVFZON1dlYkNvcmUxNENhY2hlZFJlc291cmNlRQogX19aVFZON1dlYkNvcmUxMkNh
Y2hlZFNjcmlwdEUKLV9fWlRWTjdXZWJDb3JlMTJDYWNoZWRTaGFkZXJFCiBfX1pUVk43V2ViQ29y
ZTE3Q2FjaGVkU1ZHRG9jdW1lbnRFCiBfX1pUVk43V2ViQ29yZTE1Q2FjaGVkVGV4dFRyYWNrRQog
X19aVFZON1dlYkNvcmUxOUNhY2hlZFhTTFN0eWxlU2hlZXRFCkBAIC0yMDcyMSw4ICsyMDcxOSw2
IEBAIF9fWlRWTjdXZWJDb3JlMTNDU1NTdHlsZVNoZWV0RQogX19aWk43V2ViQ29yZTIwQ1NTVmFs
dWVLZXl3b3Jkc0hhc2gxM2ZpbmRWYWx1ZUltcGxFUEtjakUxNXZhbHVlX3dvcmRfbGlzdAogX19a
TjdXZWJDb3JlTDl2YWx1ZUxpc3RFCiBfX1pUVk43V2ViQ29yZTExQ3VzdG9tRXZlbnRFCi1fX1pU
Vk43V2ViQ29yZTIxQ3VzdG9tRmlsdGVyT3BlcmF0aW9uRQotX19aVFZON1dlYkNvcmUxOUN1c3Rv
bUZpbHRlclByb2dyYW1FCiBfX1pUVk43V2ViQ29yZThEYXRhYmFzZUUKIF9fWlRWTjdXZWJDb3Jl
MTVEYXRhYmFzZUNvbnRleHRFCiBfX1pUVk43V2ViQ29yZTEyRGF0YWJhc2VTeW5jRQpAQCAtMjA4
MTAsNyArMjA4MDYsNiBAQCBfX1pUVk43V2ViQ29yZTEzRkVDb2xvck1hdHJpeEUKIF9fWlRWTjdX
ZWJDb3JlMTlGRUNvbXBvbmVudFRyYW5zZmVyRQogX19aVFZON1dlYkNvcmUxMUZFQ29tcG9zaXRl
RQogX19aVFZON1dlYkNvcmUxNkZFQ29udm9sdmVNYXRyaXhFCi1fX1pUVk43V2ViQ29yZTE0RkVD
dXN0b21GaWx0ZXJFCiBfX1pUVk43V2ViQ29yZTE3RkVEaWZmdXNlTGlnaHRpbmdFCiBfX1pUVk43
V2ViQ29yZTE3RkVEaXNwbGFjZW1lbnRNYXBFCiBfX1pUVk43V2ViQ29yZTEyRkVEcm9wU2hhZG93
RQpAQCAtMjM2MDQsNyArMjM1OTksNiBAQCBfX1pUVk43V2ViQ29yZTEyU3RvcmFnZUV2ZW50RQog
X19aVFZON1dlYkNvcmUyMFN0b3JhZ2VOYW1lc3BhY2VJbXBsRQogX19aVFZON1dlYkNvcmUxNlN0
eWxlQ2FjaGVkSW1hZ2VFCiBfX1pUVk43V2ViQ29yZTE5U3R5bGVDYWNoZWRJbWFnZVNldEUKLV9f
WlRWTjdXZWJDb3JlMTdTdHlsZUNhY2hlZFNoYWRlckUKIF9fWlRWTjdXZWJDb3JlMTNTdHlsZWRF
bGVtZW50RQogX19aVFZON1dlYkNvcmUxMlN0eWxlRWxlbWVudEUKIF9fWlRWTjdXZWJDb3JlMTlT
dHlsZUdlbmVyYXRlZEltYWdlRQpAQCAtMjM5MjgsMTYgKzIzOTIyLDExIEBAIF9fWlRWTjdXZWJD
b3JlNVhQYXRoMTdWYXJpYWJsZVJlZmVyZW5jZUUKIF9fWlRWTjdXZWJDb3JlMTNYU0xJbXBvcnRS
dWxlRQogX19aVFZON1dlYkNvcmUxM1hTTFN0eWxlU2hlZXRFCiBfX1pUVk43V2ViQ29yZTE0TG9h
ZGVyU3RyYXRlZ3lFCi1fX1pUVk43V2ViQ29yZTMwVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uRQogX19aVFZON1dlYkNvcmUxMk5vZGVSYXJlRGF0YUUKIF9fWlRWTjdXZWJDb3JlMjNTY3Jv
bGxpbmdTdGF0ZUZpeGVkTm9kZUUKIF9fWlRWTjdXZWJDb3JlMjJTY3JvbGxpbmdUcmVlRml4ZWRO
b2RlRQogX19aVFZON1dlYkNvcmUyMFJlbmRlclRoZW1lTWFjU2hhcmVkRQogX19aVFZON1dlYkNv
cmUyNFdlYkNvcmVBVkZSZXNvdXJjZUxvYWRlckUKLV9fWk43V2ViQ29yZTM4SlNXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlQ29uc3RydWN0b3I2c19pbmZvRQotX19aTjdXZWJDb3JlMzZKU1dlYktp
dENTU01peEZ1bmN0aW9uVmFsdWVQcm90b3R5cGU2c19pbmZvRQotX19aTjdXZWJDb3JlMjdKU1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWU2c19pbmZvRQotX19aTjdXZWJDb3JlTDM4SlNXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlVGFibGVWYWx1ZXNFCiBfX1pUVk43V2ViQ29yZTI1SW5iYW5kVGV4
dFRyYWNrUHJpdmF0ZUFWRkUKIF9fWlRWTjdXZWJDb3JlMjlJbmJhbmRUZXh0VHJhY2tQcml2YXRl
QVZGT2JqQ0UKIF9fWlRWTjdXZWJDb3JlMTVJbmJhbmRUZXh0VHJhY2tFCkBAIC0yNjIzOCw3ICsy
NjIyNyw2IEBAIF9fWlRWTjdXZWJDb3JlMTVTZWN1cmVUZXh0VGltZXJFCiBfX1paTjdXZWJDb3Jl
TDIwbWVkaWFDb250cm9sbGVyVGhlbWVFdkUxNWNvbnRyb2xsZXJUaGVtZQogX19aVFZOM1dURjIx
TWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJDb3JlMTZQT0RGcmVlTGlzdEFyZW5h
SU5TMl8xNVBPRFJlZEJsYWNrVHJlZUlOUzJfMTFQT0RJbnRlcnZhbElpUE5TMl8xMVJlbmRlckJs
b2NrMTRGbG9hdGluZ09iamVjdEVFRUU0Tm9kZUVFRUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0
cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyMEZsb3dUaHJlYWRDb250cm9sbGVyRUVFCi1f
X1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyNUN1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHRFRUUKIF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1lbnRhdGlv
bjdXcmFwcGVySU43V2ViQ29yZTIxUmVuZGVyTGF5ZXJDb21wb3NpdG9yRUVFCiBfX1pUVk4zV1RG
MjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUxMUxheW91dFN0YXRlRUVF
CiBfX1pUVk43V2ViQ29yZTE2UE9ERnJlZUxpc3RBcmVuYUlOU18xNVBPRFJlZEJsYWNrVHJlZUlO
U18xMVBPREludGVydmFsSWlQTlNfMTFSZW5kZXJCbG9jazE0RmxvYXRpbmdPYmplY3RFRUVFNE5v
ZGVFRUUKQEAgLTI2MzY0LDExICsyNjM1Miw2IEBAIF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1l
bnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE3U3RhdGljQ1NTUnVsZUxpc3RFRUUKIF9fWlRWTjNX
VEYyMU1lbW9yeUluc3RydW1lbnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE4U3R5bGVSdWxlS2V5
ZnJhbWVzRUVFCiBfX1pUVk43V2ViQ29yZTVUaW1lcklOU18xM1N0eWxlUmVzb2x2ZXJFRUUKIF9f
WlRWTjdXZWJDb3JlMjRSZWZlcmVuY2VGaWx0ZXJPcGVyYXRpb25FCi1fX1pUVk43V2ViQ29yZTI0
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtRQotX19aVFZON1dlYkNvcmUzMEN1c3RvbUZpbHRlclRy
YW5zZm9ybVBhcmFtZXRlckUKLV9fWlRWTjdXZWJDb3JlMjFDdXN0b21GaWx0ZXJQYXJhbWV0ZXJF
Ci1fX1pUVk43V2ViQ29yZTI3Q3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyRQotX19aVFZON1dl
YkNvcmUyNkN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyRQogX19aVFZON1dlYkNvcmUyNkNhY2hl
ZFNWR0RvY3VtZW50UmVmZXJlbmNlRQogX19aWk43V2ViQ29yZTExUmVuZGVyU3R5bGUxM2luaXRp
YWxGaWx0ZXJFdkUzb3BzCiBfX1pHVlpON1dlYkNvcmUxMVJlbmRlclN0eWxlMTNpbml0aWFsRmls
dGVyRXZFM29wcwpAQCAtMjY1MDAsNyArMjY0ODMsNiBAQCBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0
cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyMldlYktpdENTU0tleWZyYW1lc1J1bGVFRUUK
IF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1lbnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE1U3R5
bGVSdWxlUmVnaW9uRUVFCiBfX1pUVk43V2ViQ29yZTE1TGl2ZUNTU1J1bGVMaXN0SU5TXzE5V2Vi
S2l0Q1NTUmVnaW9uUnVsZUVFRQogX19aVFZOM1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dy
YXBwZXJJTjdXZWJDb3JlMTlXZWJLaXRDU1NSZWdpb25SdWxlRUVFCi1fX1pUVk43V2ViQ29yZTE4
U3R5bGVQZW5kaW5nU2hhZGVyRQogX19aVFZON1dlYkNvcmU1VGltZXJJTlNfMTZXZWJTb2NrZXRD
aGFubmVsRUVFCiBfX1pUVk43V2ViQ29yZTI3V2ViU29ja2V0RXh0ZW5zaW9uUHJvY2Vzc29yRQog
X19aTDIwZ2V0UVRNb3ZpZUxheWVyQ2xhc3MKQEAgLTI2NTk0LDkgKzI2NTc2LDYgQEAgX19aVFZO
M1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJDb3JlMTNFbGVtZW50U2hh
ZG93RUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNv
cmU5Q2xhc3NMaXN0RUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBl
cklON1dlYkNvcmUxOURhdGFzZXRET01TdHJpbmdNYXBFRUUKIF9fWlRWTjdXZWJDb3JlMTlWaWV3
cG9ydENvbnN0cmFpbnRzRQotX19aTjdXZWJDb3JlTDQzSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlQ29uc3RydWN0b3JUYWJsZUUKLV9fWk43V2ViQ29yZUw0MUpTV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZVByb3RvdHlwZVRhYmxlRQotX19aTjdXZWJDb3JlTDMySlNXZWJLaXRDU1NNaXhGdW5j
dGlvblZhbHVlVGFibGVFCiBfX1pUVk43V2ViQ29yZTVUaW1lcklOU185TGF5ZXJQb29sRUVFCiBf
X1pMMzVnZXRrQ01UZXh0TWFya3VwQXR0cmlidXRlX0FsaWdubWVudAogX19aTDM1Z2V0a0NNVGV4
dE1hcmt1cEFsaWdubWVudFR5cGVfU3RhcnQKQEAgLTI3MDA2LDEwICsyNjk4NSw2IEBAIF9fWlpO
N1dlYkNvcmUxMGdyYWJDdXJzb3JFdkUxYwogX19aR1ZaTjdXZWJDb3JlMTBncmFiQ3Vyc29yRXZF
MWMuYgogX19aWk43V2ViQ29yZTE0Z3JhYmJpbmdDdXJzb3JFdkUxYwogX19aR1ZaTjdXZWJDb3Jl
MTRncmFiYmluZ0N1cnNvckV2RTFjLmIKLV9fWlpON1dlYkNvcmUyOEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW0yNWRlZmF1bHRWZXJ0ZXhTaGFkZXJTdHJpbmdFdkUxOHZlcnRleFNoYWRlclN0
cmluZwotX19aR1ZaTjdXZWJDb3JlMjhDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtMjVkZWZh
dWx0VmVydGV4U2hhZGVyU3RyaW5nRXZFMTh2ZXJ0ZXhTaGFkZXJTdHJpbmcuYgotX19aWk43V2Vi
Q29yZTI4Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTI3ZGVmYXVsdEZyYWdtZW50U2hhZGVy
U3RyaW5nRXZFMjBmcmFnbWVudFNoYWRlclN0cmluZwotX19aR1ZaTjdXZWJDb3JlMjhDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtMjdkZWZhdWx0RnJhZ21lbnRTaGFkZXJTdHJpbmdFdkUyMGZy
YWdtZW50U2hhZGVyU3RyaW5nLmIKIF9fWlpON1dlYkNvcmVMMjdidWlsdEluVW5pZm9ybU5hbWVU
b1R5cGVNYXBFdkUxM25hbWVUb1R5cGVNYXAKIF9fWlpON1dlYkNvcmVMMjlidWlsdEluQXR0cmli
dXRlTmFtZVRvVHlwZU1hcEV2RTEzbmFtZVRvVHlwZU1hcAogX19aTjdXZWJDb3JlTDIxbm90aWZp
Y2F0aW9uU2NoZWR1bGVkRS5iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
eHByb2ovV2ViQ29yZS52Y3hwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvagppbmRleCAxZDA3ZmU1Li4wNTRhZGNmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKQEAgLTYxNjEsMjAgKzYxNjEsNiBA
QAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxk
PgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
ICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlv
bkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJp
dmVkU291cmNlc1xKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwIj4KLSAgICAgIDxFeGNs
dWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09
J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1
Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWls
ZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnX1dpbkNh
aXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9t
QnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19X
aW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZy
b21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVn
U3VmZml4fFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1
Z1N1ZmZpeHx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZy
b21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVh
c2V8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21C
dWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8
eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQg
Q29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlX1dpbkNh
aXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhjbHVkZWRGcm9t
QnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNl
X1dpbkNhaXJvfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJv
ZHVjdGlvbnxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJv
ZHVjdGlvbnx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICA8L0NsQ29tcGlsZT4K
ICAgICA8Q2xDb21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBs
YXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktp
dENTU1JlZ2lvblJ1bGUuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+dHJ1ZTwvRXhj
bHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChD
b25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KQEAgLTcyMTksNyArNzIwNSw2IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIu
Llxsb2FkZXJcY2FjaGVcQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCIgLz4KICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0
b3JzLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNo
ZWRTY3JpcHQuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hl
XENhY2hlZFNoYWRlci5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJc
Y2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5cbG9hZGVyXGNhY2hlXENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmNwcCIgLz4KICAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRUZXh0VHJhY2suY3BwIiAv
PgpAQCAtODE0NywyMyArODEzMiwxMiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxh
dGZvcm1cZ3JhcGhpY3NcdHJhbnNmb3Jtc1xUcmFuc2Zvcm1PcGVyYXRpb25zLmNwcCIgLz4KICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJh
bnNmb3JtU3RhdGUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcdHJhbnNmb3Jtc1xUcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uY3BwIiAvPgot
ICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0
b21GaWx0ZXJDb21waWxlZFByb2dyYW0uY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNw
cCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyTWVzaC5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuY3BwIiAv
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xD
dXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCIg
Lz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNc
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmNwcCIgLz4K
LSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3Vz
dG9tRmlsdGVyUmVuZGVyZXIuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxh
dGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCIg
Lz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNc
RGlzdGFudExpZ2h0U291cmNlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVCbGVuZC5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFQ29sb3JNYXRyaXguY3BwIiAv
PgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xG
RUNvbXBvbmVudFRyYW5zZmVyLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVDb21wb3NpdGUuY3BwIiAvPgogICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0cml4
LmNwcCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcRkVDdXN0b21GaWx0ZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VMaWdodGluZy5jcHAiIC8+CiAgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFRGlzcGxh
Y2VtZW50TWFwLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGZpbHRlcnNcRkVEcm9wU2hhZG93LmNwcCIgLz4KQEAgLTgxODQsNyArODE1OCw2IEBA
CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFNv
dXJjZUFscGhhLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGZpbHRlcnNcU291cmNlR3JhcGhpYy5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFNwb3RMaWdodFNvdXJjZS5jcHAiIC8+
Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuY3BwIj4KICAgICAg
IDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZv
cm0pJz09J0RlYnVnX1dpbkNhaXJvfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAg
ICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
QEAgLTk1NjUsMTUgKzk1MzgsMTEgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xT
VkdDU1NTdHlsZVNlbGVjdG9yLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNz
c1xUcmFuc2Zvcm1GdW5jdGlvbnMuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
Y3NzXFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxjc3NcV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcCIgLz4KICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAiIC8+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmNwcCIgLz4KICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcCIg
Lz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNYXRyaXguY3BwIiAv
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktp
dENTU1JlZ2lvblJ1bGUuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdl
YktpdENTU1NoYWRlclZhbHVlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNz
c1xXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRl
PSIuLlxjc3NcV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9Ii4uXGNzc2ppdFxTZWxlY3RvckNvbXBpbGVyLmNwcCIgLz4KQEAgLTExNDQzLDcgKzEx
NDEyLDYgQEAKICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZy
b21CdWlsZD4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3Vy
YXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9t
QnVpbGQ+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxyZW5k
ZXJpbmdcc3R5bGVcU3R5bGVDYWNoZWRTaGFkZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5j
bHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5j
cHAiPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4K
ICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQo
UGxhdGZvcm0pJz09J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgpAQCAtMTg1
MzMsNyArMTg1MDEsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9u
QnVpbGREaXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2
ZWRTb3VyY2VzXEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVy
ZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXRDU1NLZXlmcmFtZXNSdWxl
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilc
b2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNc
SlNXZWJLaXRDU1NNYXRyaXguaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmln
dXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1l
KVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIgLz4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3Jt
QXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU1Jl
Z2lvblJ1bGUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1
aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVk
U291cmNlc1xKU1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVy
ZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXROYW1lZEZsb3cuaCIgLz4K
QEAgLTE5MDQxLDcgKzE5MDA4LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGxvYWRl
clxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3QuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmgiIC8+
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU2NyaXB0Lmgi
IC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU2hhZGVy
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU3R5
bGVTaGVldENsaWVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNh
Y2hlXENhY2hlZFNWR0RvY3VtZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxs
b2FkZXJcY2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuaCIgLz4KQEAgLTE5MTM1LDgg
KzE5MTAxLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNz
XHRleG1hcFxjb29yZGluYXRlZFxBcmVhQWxsb2NhdG9yLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQ29tcG9zaXRp
bmdDb29yZGluYXRvci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcdGV4bWFwXGNvb3JkaW5hdGVkXENvb3JkaW5hdGVkQmFja2luZ1N0b3JlLmgiIC8+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29v
cmRpbmF0ZWRcQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIgLz4KLSAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxD
b29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW0uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEdy
YXBoaWNzTGF5ZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaCIgLz4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29y
ZGluYXRlZFxDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUuaCIgLz4KQEAgLTE5NDQ2LDIzICsxOTQx
MCw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0cmFu
c2Zvcm1zXFRyYW5zZm9ybU9wZXJhdGlvbnMuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNmb3JtU3RhdGUuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJh
bnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIu
LlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmgi
IC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
XEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bS5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmls
dGVyc1xDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5o
IiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVy
c1xDdXN0b21GaWx0ZXJNZXNoLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCIgLz4KLSAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9t
RmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIiAvPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21G
aWx0ZXJQYXJhbWV0ZXIuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIiAvPgotICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0
ZXJQcm9ncmFtLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCIgLz4KLSAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8uaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyVHJhbnNmb3Jt
UGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRGlzdGFudExpZ2h0
U291cmNlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEZFQmxlbmQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRm
b3JtXGdyYXBoaWNzXGNwdVxhcm1cZmlsdGVyc1xGRUJsZW5kTkVPTi5oIiAvPgpAQCAtMTk0NzEs
NyArMTk0MTgsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyc1xGRUNvbXBvc2l0ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcY3B1XGFybVxmaWx0ZXJzXEZFQ29tcG9zaXRlQXJpdGhtZXRpY05F
T04uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcRkVDb252b2x2ZU1hdHJpeC5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUN1c3RvbUZpbHRlci5oIiAvPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VMaWdo
dGluZy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3Nc
ZmlsdGVyc1xGRURpc3BsYWNlbWVudE1hcC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURyb3BTaGFkb3cuaCIgLz4KQEAgLTE5NDk2
LDcgKzE5NDQyLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcU291cmNlQWxwaGEuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcU291cmNlR3JhcGhpYy5oIiAvPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3Vy
Y2UuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiIC8+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuaCIgLz4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGNhXFBsYXRmb3Jt
Q0FBbmltYXRpb24uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGNhXFBsYXRmb3JtQ0FMYXllci5oIiAvPgpAQCAtMTk4NzgsMTUgKzE5ODIzLDExIEBA
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcU3R5bGVTaGVldExpc3QuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xUcmFuc2Zvcm1GdW5jdGlvbnMuaCIgLz4KICAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xWaWV3cG9ydFN0eWxlUmVzb2x2ZXIuaCIgLz4K
LSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFs
dWUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU0tleWZy
YW1lUnVsZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU0tl
eWZyYW1lc1J1bGUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRD
U1NNYXRyaXguaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
Y3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XGNzc1xXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cY3NzXFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxjc3NcV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxjc3NqaXRcRnVuY3Rpb25DYWxsLmgiIC8+CkBAIC0yMDA5Niw4ICsyMDAzNyw2
IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVCYWNr
Z3JvdW5kRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0
eWxlXFN0eWxlQm94RGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVy
aW5nXHN0eWxlXFN0eWxlQ2FjaGVkSW1hZ2UuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZFNoYWRlci5oIiAvPgotICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRGVw
cmVjYXRlZEZsZXhpYmxlQm94RGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cmVuZGVyaW5nXHN0eWxlXFN0eWxlRmlsdGVyRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlRmxleGlibGVCb3hEYXRhLmgiIC8+CkBAIC0y
MDEwOSwxMSArMjAwNDgsOSBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5n
XHN0eWxlXFN0eWxlTWFycXVlZURhdGEuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHJlbmRlcmluZ1xzdHlsZVxTdHlsZU11bHRpQ29sRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlUGVuZGluZ0ltYWdlLmgiIC8+Ci0gICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVQZW5kaW5nU2hhZGVy
LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVS
YXJlSW5oZXJpdGVkRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVy
aW5nXHN0eWxlXFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaCIgLz4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVJlZmxlY3Rpb24uaCIgLz4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVNoYWRlci5oIiAvPgog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlU3Vycm91bmRE
YXRhLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5
bGVUcmFuc2Zvcm1EYXRhLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJp
bmdcc3R5bGVcU3R5bGVWYXJpYWJsZURhdGEuaCIgLz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwppbmRleCBlYjIwNjAz
Li42Mjc0NzliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2Vi
Q29yZS52Y3hwcm9qLmZpbHRlcnMKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9q
L1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCkBAIC0xMDExLDkgKzEwMTEsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENhY2hlZFNjcmlwdC5jcHAiPgogICAgICAg
PEZpbHRlcj5sb2FkZXJcY2FjaGU8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRTaGFkZXIuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIj4K
ICAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBA
IC0xNjM1LDM2ICsxNjMyLDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uLmNwcCI+CiAg
ICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXM8L0ZpbHRlcj4KICAgICA8
L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNz
XGZpbHRlcnNcQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcCI+Ci0gICAgICA8RmlsdGVy
PnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9t
RmlsdGVyR2xvYmFsQ29udGV4dC5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2guY3BwIj4K
LSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwv
Q2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3Nc
ZmlsdGVyc1xDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCI+Ci0gICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmNwcCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAi
PgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAg
PC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW0uY3BwIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mby5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
PC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29t
cGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXERpc3RhbnRMaWdo
dFNvdXJjZS5jcHAiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0xNjgzLDkgKzE2NTAsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0
cml4LmNwcCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRl
cj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXGZpbHRlcnNcRkVDdXN0b21GaWx0ZXIuY3BwIj4KLSAgICAgIDxGaWx0ZXI+cGxh
dGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VM
aWdodGluZy5jcHAiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0xNzQ2LDkgKzE3MTAsNiBAQAogICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3Vy
Y2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcZmlsdGVyc1xWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwIj4KLSAg
ICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xD
b21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcY2Fc
R3JhcGhpY3NMYXllckNBLmNwcCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGNh
PC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0yMzQwLDkgKzIzMDEsNiBAQAogICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAiPgogICAg
ICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwIj4KICAgICAgIDxGaWx0ZXI+
Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0yMzU1LDE4ICsyMzEzLDkgQEAKICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNYXRyaXguY3BwIj4KICAgICAg
IDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAiPgotICAgICAgPEZp
bHRlcj5jc3M8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1
ZGU9Ii4uXGNzc1xXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCI+Ci0gICAgICA8RmlsdGVy
PmNzczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5cY3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuY3BwIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0
ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2Vi
S2l0Q1NTU2hhZGVyVmFsdWUuY3BwIj4KLSAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+Ci0gICAg
PC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTVHJh
bnNmb3JtVmFsdWUuY3BwIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENv
bXBpbGU+CkBAIC0yODM1LDkgKzI3ODQsNiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5c
cmVuZGVyaW5nXHN0eWxlXFN0eWxlQ2FjaGVkSW1hZ2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+cmVu
ZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVDYWNoZWRTaGFkZXIuY3BwIj4KLSAgICAg
IDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAg
PENsQ29tcGlsZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVEZXByZWNhdGVkRmxl
eGlibGVCb3hEYXRhLmNwcCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHlsZTwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgpAQCAtNjQzMyw5ICs2Mzc5LDYgQEAKICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0
dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU01hdHJpeC5jcHAi
PgogICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxl
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQo
UGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAiPgotICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNl
czwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iJChD
b25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVj
dE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAiPgogICAgICAg
PEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtNzk3
Myw5ICs3OTE2LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxD
YWNoZWRTY3JpcHQuaCI+CiAgICAgICA8RmlsdGVyPmxvYWRlclxjYWNoZTwvRmlsdGVyPgogICAg
IDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENh
Y2hlZFNoYWRlci5oIj4KLSAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+Ci0gICAg
PC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2Fj
aGVkU3R5bGVTaGVldENsaWVudC5oIj4KICAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0
ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC04NTIyLDU3ICs4NDYyLDYgQEAKICAgICA8Q2xJbmNs
dWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNsYXRlVHJh
bnNmb3JtT3BlcmF0aW9uLmgiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0cmFu
c2Zvcm1zPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVy
LmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0g
ICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRl
cj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0g
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJDb25zdGFudHMu
aCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAg
ICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIj4KLSAgICAgIDxGaWx0ZXI+
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21G
aWx0ZXJNZXNoLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9y
bVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5j
bHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmls
dGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCI+Ci0gICAgICA8Rmls
dGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4K
LSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQcm9ncmFtLmgi
PgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAg
PC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCI+Ci0gICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmls
dGVyUHJvZ3JhbUluZm8uaCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCI+Ci0gICAg
ICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0uaCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRGlzdGFudExpZ2h0U291cmNlLmgiPgogICAg
ICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbElu
Y2x1ZGU+CkBAIC04NTk3LDkgKzg0ODYsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUNvbnZvbHZlTWF0cml4LmgiPgogICAgICAgPEZp
bHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZF
Q3VzdG9tRmlsdGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJz
PC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFRGlmZnVzZUxpZ2h0aW5nLmgiPgogICAgICAgPEZp
bHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+
CkBAIC04NjcyLDkgKzg1NTgsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90TGlnaHRTb3VyY2UuaCI+CiAgICAgICA8RmlsdGVyPnBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcVmFsaWRhdGVk
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxHcmFwaGljc0xheWVyQ0EuaCI+CiAgICAgICA8
RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGNhPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBA
IC05MjY2LDkgKzkxNDksNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFZpZXdw
b3J0U3R5bGVSZXNvbHZlci5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9D
bEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTQXJyYXlG
dW5jdGlvblZhbHVlLmgiPgotICAgICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KLSAgICA8L0NsSW5j
bHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBAIC05
MjgxLDE4ICs5MTYxLDkgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRD
U1NNYXRyaXguaCI+CiAgICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRl
PgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUuaCI+Ci0gICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCI+
Ci0gICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU1JlZ2lvblJ1bGUuaCI+CiAgICAgICA8Rmls
dGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5cY3NzXFdlYktpdENTU1NoYWRlclZhbHVlLmgiPgotICAgICAgPEZpbHRlcj5jc3M8L0Zp
bHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xX
ZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+CkBAIC05ODE4LDEyICs5Njg5LDYgQEAKICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZEltYWdlLmgiPgogICAgICAgPEZp
bHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZFNoYWRlci5oIj4K
LSAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtLmgiPgotICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4K
LSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xz
dHlsZVxTdHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuaCI+CiAgICAgICA8RmlsdGVyPnJl
bmRlcmluZ1xzdHlsZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtOTg1Nyw5ICs5NzIy
LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVBl
bmRpbmdJbWFnZS5oIj4KICAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CiAg
ICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5
bGVcU3R5bGVQZW5kaW5nU2hhZGVyLmgiPgotICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8
L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJl
bmRlcmluZ1xzdHlsZVxTdHlsZVJhcmVJbmhlcml0ZWREYXRhLmgiPgogICAgICAgPEZpbHRlcj5y
ZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTk4NjksOSArOTcz
MSw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVS
ZWZsZWN0aW9uLmgiPgogICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAg
ICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHls
ZVxTdHlsZVNoYWRlci5oIj4KLSAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+
Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdc
c3R5bGVcU3R5bGVTdXJyb3VuZERhdGEuaCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHls
ZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTQyNzgsOSArMTQxMzcsNiBAQAogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZv
cm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2ViS2l0Q1NT
TWF0cml4LmgiPgogICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgogICAgIDwv
Q2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGRE
aXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3Vy
Y2VzXEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIj4KLSAgICAgIDxGaWx0ZXI+RGVyaXZl
ZFNvdXJjZXM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwk
KFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU1JlZ2lvblJ1bGUuaCI+CiAg
ICAgICA8RmlsdGVyPkRlcml2ZWRTb3VyY2VzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CkBA
IC0xNDg1NywxMiArMTQ3MTMsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcdGV4bWFwXGNvb3JkaW5hdGVkXENvb3JkaW5hdGVkQmFja2luZ1N0b3JlLmgi
PgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWQ8L0Zp
bHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRm
b3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRlZEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcdGV4bWFwXGNvb3Jk
aW5hdGVkPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQ29vcmRpbmF0ZWRDdXN0
b21GaWx0ZXJQcm9ncmFtLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0ZXht
YXBcY29vcmRpbmF0ZWQ8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGlu
YXRlZEdyYXBoaWNzTGF5ZXIuaCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXHRl
eG1hcFxjb29yZGluYXRlZDwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDJjZDlkY2Eu
LjQ2ZDNhZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKQEAgLTYxMiwxMSArNjEyLDYgQEAKIAkJMTRFODM3OEUwOUY4NUQ0RjAwQjg1
QUU0IC8qIEpTRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDE0RTgzNzhEMDlGODVENEYwMEI4NUFFNCAvKiBKU0V2ZW50LmggKi87IH07CiAJCTE0
RkZFMzFEMEFFMTk2MzMwMDEzNkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50QmFzZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTRGRkUzMUIwQUUxOTYzMzAw
MTM2QkY1IC8qIEhUTUxGcmFtZUVsZW1lbnRCYXNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMTRGRkUzMUUwQUUxOTYzMzAwMTM2QkY1IC8qIEhU
TUxGcmFtZUVsZW1lbnRCYXNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDE0RkZFMzFDMEFFMTk2MzMwMDEzNkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50
QmFzZS5jcHAgKi87IH07Ci0JCTE1MEI5MjM5MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NB
cnJheUZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTUwQjkyMzcxNUYwOERDNDAwRTEwOTg2IC8qIFdlYktpdENTU0FycmF5RnVu
Y3Rpb25WYWx1ZS5jcHAgKi87IH07Ci0JCTE1MEI5MjNBMTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJL
aXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDE1MEI5MjM4MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJh
eUZ1bmN0aW9uVmFsdWUuaCAqLzsgfTsKLQkJMTVCM0ZDMTkxNUZCMjE3ODAwQTgxQkNCIC8qIEN1
c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxNUIzRkMxNzE1RkIyMTc4MDBBODFCQ0IgLyogQ3VzdG9tRmlsdGVy
QXJyYXlQYXJhbWV0ZXIuaCAqLzsgfTsKLQkJMTVCOEI3QzgxNjUyQzUyMjAwMzZFRjU1IC8qIEpT
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxNUI4QjdDNjE2NTJDNTIyMDAzNkVGNTUgLyogSlNXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlLmNwcCAqLzsgfTsKLQkJMTVCOEI3QzkxNjUyQzUyMjAwMzZFRjU1
IC8qIEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTVCOEI3QzcxNjUyQzUyMjAwMzZFRjU1IC8qIEpTV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovOyB9OwogCQkxNUM3NzA4RDEwMEQzQzZCMDA1QkEy
NjcgLyogVmFsaWRpdHlTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTVDNzcwOEExMDBEM0M2QTAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaCAq
LzsgfTsKIAkJMTVDNzcwOTMxMDBEM0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTVDNzcwOTExMDBE
M0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oICovOyB9OwogCQkxNUM3NzA5NDEwMEQz
Q0E4MDA1QkEyNjcgLyogSlNWYWxpZGl0eVN0YXRlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE1Qzc3MDkyMTAwRDNDQTgwMDVCQTI2NyAvKiBKU1Zh
bGlkaXR5U3RhdGUuY3BwICovOyB9OwpAQCAtMTAzMSw3ICsxMDI2LDYgQEAKIAkJMjlBODEyNEIw
RkJCOUNBOTAwNTEwMjkzIC8qIEFYT2JqZWN0Q2FjaGVNYWMubW0gaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyOUE4MTI0NzBGQkI5Q0E5MDA1MTAyOTMgLyog
QVhPYmplY3RDYWNoZU1hYy5tbSAqLzsgfTsKIAkJMjlBQ0IyMTIxNDNFNzEyODAwNkJDQTVGIC8q
IEFjY2Vzc2liaWxpdHlNb2NrT2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAyOUFDQjIxMTE0M0U3MTI4MDA2QkNBNUYgLyogQWNjZXNzaWJpbGl0
eU1vY2tPYmplY3QuaCAqLzsgfTsKIAkJMjlBQ0IyMTQxNDNFNzQ5ODAwNkJDQTVGIC8qIEFjY2Vz
c2liaWxpdHlNb2NrT2JqZWN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDI5QUNCMjEzMTQzRTc0OTgwMDZCQ0E1RiAvKiBBY2Nlc3NpYmlsaXR5TW9j
a09iamVjdC5jcHAgKi87IH07Ci0JCTI5Q0Q2MURFMTQ2RDAyODkwMDY4RTgyQSAvKiBXZWJLaXRD
U1NTaGFkZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTBCNDIxNTcxNDY5NzY5NjAwODdFNjA0IC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmgg
Ki87IH07CiAJCTI5RDdCQ0Y2MTQ0NEFGNTgwMDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3BpbkJ1
dHRvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAy
OUQ3QkNGNTE0NDRBRjU4MDA3MDYxOUMgLyogQWNjZXNzaWJpbGl0eVNwaW5CdXR0b24uY3BwICov
OyB9OwogCQkyOUQ3QkNGQTE0NDRBRjdEMDA3MDYxOUMgLyogQWNjZXNzaWJpbGl0eVNwaW5CdXR0
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI5RDdC
Q0Y5MTQ0NEFGN0QwMDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3BpbkJ1dHRvbi5oICovOyB9Owog
CQkyQjM2NUM4NDE1MjUxMTlFMDA5MUQyN0IgLyogUmVuZGVyU1ZHRWxsaXBzZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkI0MjM1QTAxNTI1MEY2MDAw
REJCQ0Q4IC8qIFJlbmRlclNWR0VsbGlwc2UuaCAqLzsgfTsKQEAgLTExNTIsNyArMTE0Niw2IEBA
CiAJCTMxMkQ2N0IxMTUzNTY5MUYwMDU2M0QwRCAvKiBEaWN0aW9uYXJ5LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxMkQ2N0IwMTUzNTY5MUYwMDU2
M0QwRCAvKiBEaWN0aW9uYXJ5LmNwcCAqLzsgfTsKIAkJMzEzMTNGNjUxNDQzQjM1RjAwNkUyQTkw
IC8qIEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxMzEzRjYzMTQ0M0IzNUUwMDZFMkE5MCAvKiBGaWx0ZXJFZmZl
Y3RSZW5kZXJlci5jcHAgKi87IH07CiAJCTMxMzEzRjY2MTQ0M0IzNUYwMDZFMkE5MCAvKiBGaWx0
ZXJFZmZlY3RSZW5kZXJlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzEzMTNGNjQxNDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRlckVmZmVjdFJlbmRlcmVy
LmggKi87IH07Ci0JCTMxMzhBOUU1MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNoYWRlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEzOEE5RTQxNDc0
NDM0NjAwQjBFRDEyIC8qIFN0eWxlU2hhZGVyLmggKi87IH07CiAJCTMxNDAzNzlCMTI0QkVBN0Yw
MEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0MDM3OTcxMjRCRUE3RjAwQUY0MEU0IC8qIFdlYkNv
cmVNb3Rpb25NYW5hZ2VyLmggKi87IH07CiAJCTMxNDAzNzlDMTI0QkVBN0YwMEFGNDBFNCAvKiBX
ZWJDb3JlTW90aW9uTWFuYWdlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNDAzNzk4MTI0QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFu
YWdlci5tbSAqLzsgfTsKIAkJMzE0MDM3OUQxMjRCRUE3RjAwQUY0MEU0IC8qIERldmljZU9yaWVu
dGF0aW9uQ2xpZW50SU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzMTQwMzc5OTEyNEJFQTdGMDBBRjQwRTQgLyogRGV2aWNlT3JpZW50YXRpb25DbGll
bnRJT1MuaCAqLzsgfTsKQEAgLTE3MjEsNDYgKzE3MTQsMTQgQEAKIAkJNEZGQzAyMkIxNjQzQjcx
MDAwNEUxNjM4IC8qIE5vZGVSYXJlRGF0YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0RkFCNDg2NjE2NDNBNjdFMDBGNzBDMDcgLyogTm9kZVJhcmVE
YXRhLmNwcCAqLzsgfTsKIAkJNEZGQzAyMkQxNjQzQjcyNjAwNEUxNjM4IC8qIEVsZW1lbnRSYXJl
RGF0YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
RkFCNDg2NDE2NDNBNjZEMDBGNzBDMDcgLyogRWxlbWVudFJhcmVEYXRhLmNwcCAqLzsgfTsKIAkJ
NTAxQkFBQTkxMzk1MEUyQzAwRjdBQ0VCIC8qIFdpbmRSdWxlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDFCQUFBODEzOTUwRTJDMDBGN0FDRUIgLyog
V2luZFJ1bGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwotCQk1MDM4QkMwNzE0NzExQ0RCMDA5NUUwRDEgLyogV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzOEJDMDYx
NDcxMUNEQjAwOTVFMEQxIC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmNwcCAqLzsgfTsKLQkJNTAz
OEJFMkYxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2FjaGVkU2hhZGVyLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwMzhCRTJEMTQ3MkFEMjMwMDk1
RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5jcHAgKi87IH07Ci0JCTUwMzhCRTMwMTQ3MkFEMjMw
MDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzOEJFMkUxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2Fj
aGVkU2hhZGVyLmggKi87IH07Ci0JCTUwMzhCRTQwMTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRT
aGFkZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTAzOEJFM0UxNDcyQUQ5ODAwOTVFMEQxIC8qIENhY2hlZFNoYWRlci5jcHAgKi87IH07Ci0JCTUw
MzhCRTQxMTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwMzhCRTNGMTQ3MkFEOTgwMDk1RTBEMSAv
KiBDYWNoZWRTaGFkZXIuaCAqLzsgfTsKLQkJNTAzRDBDQUExNEI1QjA4NzAwRjMyRjU3IC8qIEN1
c3RvbUZpbHRlclByb2dyYW0uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTAzRDBDQTcxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dy
YW0uY3BwICovOyB9OwotCQk1MDNEMENBQTE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmlsdGVy
UmVuZGVyZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTAzRDBDQTcxNEI1QjA4NzAwRjMyRjU4IC8qIEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCAq
LzsgfTsKLQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW0u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwM0QwQ0E4
MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoKTsgfTsgfTsKLQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU4IC8qIEN1
c3RvbUZpbHRlclJlbmRlcmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MDNEMENBODE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmlsdGVyUmVuZGVy
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9OwotCQk1MDNEMENBQzE0
QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzRDBDQTkxNEI1QjA4NzAwRjMy
RjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQk1MDNEMENBRTE0QjVCMEJBMDBGMzJGNTcgLyog
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MDNEMENBRDE0QjVCMEJBMDBGMzJGNTcgLyogU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoKTsgfTsgfTsKIAkJ
NTA0QUFDQ0QxODM0NDU1OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVGaW5kZXIuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA0QUFDQ0IxODM0NDU1
OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVGaW5kZXIuY3BwICovOyB9OwogCQk1MDRBQUNDRTE4
MzQ0NTU5MDBFM0Q5QkMgLyogSW5zcGVjdG9yTm9kZUZpbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA0QUFDQ0MxODM0NDU1OTAwRTNEOUJDIC8q
IEluc3BlY3Rvck5vZGVGaW5kZXIuaCAqLzsgfTsKIAkJNTA4MUUzQzMzQ0U1ODBDMTZFRjhCNDhC
IC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MDgxRTNERjNDRkM4MEMxNkVGOEI0OEIgLyogQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0LmNwcCAqLzsgfTsKIAkJNTA4MUUzRTAzQ0ZGODBDMTZFRjhCNDhCIC8qIENh
Y2hlZFJlc291cmNlUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTA4MUUzRTEzRDAyODBDMTZFRjhCNDhCIC8qIENhY2hlZFJlc291cmNlUmVx
dWVzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTUwOENDQTRGMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGbG93VGhyZWFkLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDhDQ0E0RDEzQ0YxMDZCMDAz
MTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5oICovOyB9OwogCQk1MDhDQ0E1MDEzQ0YxMDZCMDAz
MTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MDhDQ0E0RTEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxv
d1RocmVhZC5jcHAgKi87IH07Ci0JCTUwOTMzMzRGMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTMzMzREMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0LmNwcCAqLzsgfTsKLQkJNTA5MzMzNTAxNjNCMEU0MzAwMDk5QTYwIC8qIEN1c3Rv
bUZpbHRlclBhcmFtZXRlckxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTMzMzRFMTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0LmggKi87IH07Ci0JCTUwOTg3QzI2MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21G
aWx0ZXJHbG9iYWxDb250ZXh0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTg3QzI0MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0LmNwcCAqLzsgfTsKLQkJNTA5ODdDMjcxNTdENjc2RDAwQkRBODM1IC8qIEN1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwOTg3QzI1MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0LmggKi87IH07Ci0JCTUwOUNDOUZCMTRDMDY5RUQwMEJCRUNCRCAvKiBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDUwOUNDOUZBMTRDMDY5RUQwMEJCRUNCRCAvKiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIu
aCAqLzsgfTsKLQkJNTBBQ0UyQ0IxNEI1RDc5MzAwNDQ2NjY2IC8qIEN1c3RvbUZpbHRlck9wZXJh
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBB
Q0UyQ0ExNEI1RDc5MzAwNDQ2NjY2IC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oICovOyB9Owot
CQk1MENDMDg5QTE0QzZFOTlDMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MENDMDg5
OTE0QzZFOTlDMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmggKi87IH07
Ci0JCTUwQ0MwQTM5MTRDNkY1QjEwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBDQzBBMzgx
NEM2RjVCMTAwMTdBQjUxIC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgKi87IH07CiAJCTUw
RDEwRDk5MTU0NUY1NzYwMDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBEMTBEOTcxNTQ1RjU3
NjAwOTZEMjg4IC8qIFJlbmRlckxheWVyRmlsdGVySW5mby5jcHAgKi87IH07CiAJCTUwRDEwRDlB
MTU0NUY1NzYwMDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwRDEwRDk4MTU0NUY1NzYwMDk2RDI4
OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwotCQk1MEQzMjg1NzE2M0IzMTNGMDAxNjExMUUgLyogVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUwRDMyODU1MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRD
dXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwICovOyB9OwotCQk1MEQzMjg1ODE2M0IzMTNGMDAxNjEx
MUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQzMjg1NjE2M0IzMTNGMDAxNjExMUUgLyog
VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggKi87IH07Ci0JCTUwRDQwM0M3MTQ3NjhD
OTQwMEQzMEJCNSAvKiBGRUN1c3RvbUZpbHRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDNDNTE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0
b21GaWx0ZXIuY3BwICovOyB9OwotCQk1MEQ0MDNDODE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0
b21GaWx0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUwRDQwM0M2MTQ3NjhDOTQwMEQzMEJCNSAvKiBGRUN1c3RvbUZpbHRlci5oICovOyB9OwotCQk1
MEQ0MDVGOTE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDVGNzE0N0QzMUYzMDBE
MzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5jcHAgKi87IH07Ci0JCTUwRDQwNUZBMTQ3RDMxRjMw
MEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDVGODE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyTWVzaC5oICovOyB9OwotCQk1MEQ0MDYxMTE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyQ29tcGlsZWRQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwRDQwNjBGMTQ3RDQ5REUwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJDb21w
aWxlZFByb2dyYW0uY3BwICovOyB9OwotCQk1MEQ0MDYxMjE0N0Q0OURFMDBEMzBCQjUgLyogQ3Vz
dG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDYxMDE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVy
Q29tcGlsZWRQcm9ncmFtLmggKi87IH07Ci0JCTUwRDg4Q0I1MTVCREZEQUEwMDE4MDlGNCAvKiBD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MEQ4OENCMzE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVy
UHJvZ3JhbUluZm8uY3BwICovOyB9OwotCQk1MEQ4OENCNjE1QkRGREFBMDAxODA5RjQgLyogQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUwRDg4Q0I0MTVCREZEQUEwMDE4MDlGNCAvKiBDdXN0b21GaWx0ZXJQcm9n
cmFtSW5mby5oICovOyB9OwotCQk1MEUxOENEODE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUwRTE4Q0Q1MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW0uY3BwICovOyB9OwotCQk1MEUxOENEOTE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtQ2FjaGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTBFMThDRDYxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbUNhY2hlLmNwcCAqLzsgfTsKLQkJNTBFMThDREExNkY5Mjg1ODAwQzY1NDg2IC8q
IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEUxOENENzE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCAqLzsgfTsKIAkJNTEwMTg0NjkwQjA4NjAyQTAwNEE4
MjVGIC8qIENhY2hlZFBhZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUxMDE4NDY3MEIwODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTEwMTg0NkEwQjA4
NjAyQTAwNEE4MjVGIC8qIENhY2hlZFBhZ2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTEwMTg0NjgwQjA4NjAyQTAwNEE4MjVGIC8qIENhY2hlZFBh
Z2UuY3BwICovOyB9OwogCQk1MTAxOTQ0MDE4MzZEMjA4MDA5MjU1MjMgLyogSURCSW5kZXhXcml0
ZXJMZXZlbERCLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDUxMDE5NDNFMTgzNkQyMDgwMDkyNTUyMyAvKiBJREJJbmRleFdyaXRlckxldmVsREIuY3Bw
ICovOyB9OwpAQCAtMjMzNyw4ICsyMjk4LDYgQEAKIAkJN0NFNkNCRkIxODdGMzcwNzAwRDQ2QkY1
IC8qIEZvcm1hdENvbnZlcnRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0NFNkNCRkExODdGMzcwNzAwRDQ2QkY1IC8qIEZvcm1hdENvbnZlcnRlci5o
ICovOyB9OwogCQk3Q0U2Q0JGRDE4N0YzOTQ5MDBENDZCRjUgLyogRm9ybWF0Q29udmVydGVyLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDRTZDQkZD
MTg3RjM5NDkwMEQ0NkJGNSAvKiBGb3JtYXRDb252ZXJ0ZXIuY3BwICovOyB9OwogCQk3RDc0MUJE
QTE3NzIyNkFBMDA4NTkxNzAgLyogQ1NTVmFsdWVLZXl3b3Jkcy5oIGluIENvcHkgR2VuZXJhdGVk
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjU2NTgxNDgwOUQx
MzA0MzAwMEU2MUQ3IC8qIENTU1ZhbHVlS2V5d29yZHMuaCAqLzsgfTsKLQkJN0UxMkU5MEYxNUZB
NUQzQTAwNUU0MTI2IC8qIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMTJFOTBEMTVGQTVEM0EwMDVFNDEy
NiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggKi87IH07Ci0JCTdFMTJFOTEwMTVGQTVE
M0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMTJFOTBFMTVGQTVEM0EwMDVFNDEy
NiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCAqLzsgfTsKIAkJN0UzM0NEMDExMjdG
MzQwRDAwQkU4RjE3IC8qIFB1cmdlUHJpb3JpdHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMzNDRDAwMTI3RjM0MEQwMEJFOEYxNyAvKiBQdXJnZVBy
aW9yaXR5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJN0UzN0VGMkUxMzM5MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0UzN0VGMkQxMzM5
MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3BwICovOyB9OwogCQk3RTQyOENF
NTEzRTM0MDdGMDAzQjY2MUMgLyogUmVzb3VyY2VIYW5kbGVJT1MubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RTQyOENFNDEzRTM0MDdGMDAzQjY2MUMg
LyogUmVzb3VyY2VIYW5kbGVJT1MubW0gKi87IH07CkBAIC0zNjM0LDE5ICszNTkzLDcgQEAKIAkJ
QTFFMTE1NDQxMzAxNUMzRDAwNTRBQzhDIC8qIERpc3RhbnRMaWdodFNvdXJjZS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUUxMTU0MzEzMDE1QzNE
MDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNlLmNwcCAqLzsgfTsKIAkJQTFFMTE1NDYxMzAx
NUM0RTAwNTRBQzhDIC8qIFBvaW50TGlnaHRTb3VyY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFFMTE1NDUxMzAxNUM0RTAwNTRBQzhDIC8qIFBv
aW50TGlnaHRTb3VyY2UuY3BwICovOyB9OwogCQlBMUUxMTU0ODEzMDE1QzVEMDA1NEFDOEMgLyog
U3BvdExpZ2h0U291cmNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExRTExNTQ3MTMwMTVDNUQwMDU0QUM4QyAvKiBTcG90TGlnaHRTb3VyY2UuY3Bw
ICovOyB9OwotCQlBMjRCRjc3QjE1Q0MzQkFGMDAzMTkxRjIgLyogV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTI0QkY3NzkxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCAq
LzsgfTsKLQkJQTI0QkY3N0MxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTI0QkY3N0ExNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3Bw
ICovOyB9OwotCQlBMjk1MzJDRjE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRh
dGVkUHJvZ3JhbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBMjk1MzJDRDE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJv
Z3JhbS5jcHAgKi87IH07Ci0JCUEyOTUzMkQwMTVERDVFMTcwMDQ2OUVCQyAvKiBDdXN0b21GaWx0
ZXJWYWxpZGF0ZWRQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBMjk1MzJDRTE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRh
dGVkUHJvZ3JhbS5oICovOyB9OwotCQlBMkIyQUU3QzE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9t
RmlsdGVyQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBMkIyQUU3QjE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmggKi87IH07CiAJCUEyQjkyMTczMTZDNUNDNDIwMDQxRENEOSAvKiBJbnRSZWN0RXh0ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMkI5MjE3MjE2
QzVDQzQyMDA0MURDRDkgLyogSW50UmVjdEV4dGVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCUEyRThBRTMwMTZBNDhFMUMwMDZCQjNBQSAvKiBX
ZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEEyRThBRTJFMTZBNDhFMUMwMDZCQjNBQSAvKiBXZWJLaXRDU1NGaWx0ZXJS
dWxlLmNwcCAqLzsgfTsKLQkJQTJFOEFFMzExNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENTU0Zp
bHRlclJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEEyRThBRTJGMTZBNDhFMUMwMDZCQjNBQSAvKiBXZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi87IH07
Ci0JCUEyRThBRTM3MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTJFOEFFMzUx
NkE0OTg0MDAwNkJCM0FBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgKi87IH07Ci0JCUEy
RThBRTM4MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTM2MTZBNDk4NDAw
MDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAqLzsgfTsKLQkJQTJFOEFFNDAxNkE0
OThDRjAwNkJCM0FBIC8qIERPTVdlYktpdENTU0ZpbHRlclJ1bGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTNEMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi87IH07Ci0JCUEyRThBRTQxMTZBNDk4Q0YwMDZC
QjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTJFOEFFM0UxNkE0OThDRjAwNkJCM0FBIC8qIERPTVdl
YktpdENTU0ZpbHRlclJ1bGUubW0gKi87IH07Ci0JCUEyRThBRTQyMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTNGMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01X
ZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwuaCAqLzsgfTsKIAkJQTMxQzRFNEQxNkUwMkFBNjAw
MkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTMxQzRFNEMxNkUwMkFBNjAwMkY3OTU3IC8qIE9FU1Rl
eHR1cmVIYWxmRmxvYXQuY3BwICovOyB9OwogCQlBMzFDNEU0RjE2RTAyQUI0MDAyRjc5NTcgLyog
T0VTVGV4dHVyZUhhbGZGbG9hdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQTMxQzRFNEUxNkUwMkFCNDAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxv
YXQuaCAqLzsgfTsKIAkJQTMxQzRFNTIxNkUwMkIwODAwMkY3OTU3IC8qIEpTT0VTVGV4dHVyZUhh
bGZGbG9hdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMzFDNEU1MTE2RTAyQjA4MDAyRjc5NTcgLyogSlNPRVNUZXh0dXJlSGFsZkZsb2F0LmNwcCAq
LzsgfTsKQEAgLTYyMTcsOCArNjE2NCw2IEBACiAJCUZCNDg0RjRDMTcxRjgyMUUwMDA0MDc1NSAv
KiBUcmFuc2Zvcm1GdW5jdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRkI0ODRGNEExNzFGODIxRTAwMDQwNzU1IC8qIFRyYW5zZm9ybUZ1bmN0
aW9ucy5jcHAgKi87IH07CiAJCUZCNDg0RjREMTcxRjgyMUUwMDA0MDc1NSAvKiBUcmFuc2Zvcm1G
dW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEZCNDg0RjRCMTcxRjgyMUUwMDA0MDc1NSAvKiBUcmFuc2Zvcm1GdW5jdGlvbnMuaCAqLzsgfTsK
IAkJRkI0OUMzOUQxNjc4NDk0NzAwN0ZGQjVEIC8qIENTU0hvc3RSdWxlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQjQ5QzM5QzE2Nzg0OTQ3MDA3RkZC
NUQgLyogQ1NTSG9zdFJ1bGUuaCAqLzsgfTsKLQkJRkI3MTlDM0YxNzIzOENBODAwMjJERTM0IC8q
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZCMEI3NUVGMTcyMzQyODUwMEYwNUQyQSAvKiBXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmggKi87IH07Ci0JCUZCNzE5QzQwMTcyMzhDQUUwMDIyREUzNCAvKiBX
ZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZCMEI3NUVFMTcyMzQyODUwMEYwNUQyQSAvKiBXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmNwcCAqLzsgfTsKIAkJRkI3OEFEMkUxNTFCRjVFNjAwRkU1NEQzIC8q
IENTU1BhcnNlck1vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEZCNzhBRDJDMTUxQkY1RDIwMEZFNTREMyAvKiBDU1NQYXJzZXJNb2RlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRkI5MTM5MjQxNkFF
NEMxNzAwMUZFNjgyIC8qIERPTVBhdGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEZCOTEzOTIwMTZBRTRCMEIwMDFGRTY4MiAvKiBET01QYXRoLmggKi87
IH07CiAJCUZCOTEzOTI2MTZBRTRDMkYwMDFGRTY4MiAvKiBDYW52YXNQYXRoTWV0aG9kcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkI5MTM5MUYxNkFF
NEIwQjAwMUZFNjgyIC8qIENhbnZhc1BhdGhNZXRob2RzLmggKi87IH07CkBAIC03NDM2LDExICs3
MzgxLDYgQEAKIAkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZlbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMTRGRkUzMUIwQUUxOTYzMzAwMTM2QkY1IC8qIEhUTUxGcmFtZUVsZW1lbnRC
YXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxGcmFtZUVsZW1lbnRC
YXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0RkZFMzFDMEFFMTk2MzMwMDEz
NkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50QmFzZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBIVE1MRnJhbWVFbGVtZW50QmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCTE1MEI5MjM3MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2Vi
S2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJMTUwQjkyMzgxNUYwOERDNDAwRTEwOTg2IC8qIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJLaXRDU1NBcnJheUZ1bmN0
aW9uVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMTVCM0ZDMTcxNUZCMjE3
ODAwQTgxQkNCIC8qIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmg7IHBhdGggPSBm
aWx0ZXJzL0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTE1QjhCN0M2MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0
aW9uVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJ
MTVCOEI3QzcxNjUyQzUyMjAwMzZFRjU1IC8qIEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMTVDNzcwODkxMDBEM0M2QTAw
NUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFZhbGlk
aXR5U3RhdGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNUM3NzA4QTEwMEQz
QzZBMDA1QkEyNjcgLyogVmFsaWRpdHlTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBWYWxpZGl0eVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE1
Qzc3MDkxMTAwRDNDQTgwMDVCQTI2NyAvKiBKU1ZhbGlkaXR5U3RhdGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNWYWxpZGl0eVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC04MDI4LDcgKzc5NjgsNiBAQAogCQkzMTJENjdCMDE1MzU2OTFGMDA1NjNE
MEQgLyogRGljdGlvbmFyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBEaWN0aW9uYXJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMTNGNjMx
NDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMTNGNjQxNDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRl
ckVmZmVjdFJlbmRlcmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbHRl
ckVmZmVjdFJlbmRlcmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTMxMzhBOUU0
MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNoYWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBTdHlsZVNoYWRlci5oOyBwYXRoID0gc3R5bGUvU3R5bGVTaGFkZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0MDM3OTcxMjRCRUE3RjAwQUY0MEU0IC8qIFdl
YkNvcmVNb3Rpb25NYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFdl
YkNvcmVNb3Rpb25NYW5hZ2VyLmg7IHBhdGggPSBpb3MvV2ViQ29yZU1vdGlvbk1hbmFnZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0MDM3OTgxMjRCRUE3RjAwQUY0MEU0IC8q
IFdlYkNvcmVNb3Rpb25NYW5hZ2VyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBuYW1lID0gV2ViQ29yZU1vdGlvbk1hbmFnZXIubW07IHBhdGggPSBpb3MvV2ViQ29yZU1vdGlv
bk1hbmFnZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxNDAzNzk5MTI0QkVB
N0YwMEFGNDBFNCAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oOyBwYXRoID0g
aW9zL0RldmljZU9yaWVudGF0aW9uQ2xpZW50SU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC04NjcyLDQ4ICs4NjExLDE0IEBACiAJCTRGQUI0ODY2MTY0M0E2N0UwMEY3MEMwNyAv
KiBOb2RlUmFyZURhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Tm9kZVJhcmVEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNEZCMzkwQUMx
NUVGNjFGMzAwN0FENTFGIC8qIEdlbmVyYXRlZEltYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEdlbmVyYXRlZEltYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNTAxQkFBQTgxMzk1MEUyQzAwRjdBQ0VCIC8qIFdpbmRSdWxlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdpbmRSdWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCTUwMzhCQzA2MTQ3MTFDREIwMDk1RTBEMSAvKiBXZWJLaXRDU1NTaGFkZXJW
YWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJLaXRDU1NT
aGFkZXJWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwMzhCRTJEMTQ3
MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBTdHlsZUNhY2hlZFNoYWRlci5jcHA7IHBhdGggPSBzdHlsZS9T
dHlsZUNhY2hlZFNoYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwMzhC
RTJFMTQ3MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBTdHlsZUNhY2hlZFNoYWRlci5oOyBwYXRoID0gc3R5bGUvU3R5
bGVDYWNoZWRTaGFkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzOEJFM0Ux
NDcyQUQ5ODAwOTVFMEQxIC8qIENhY2hlZFNoYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRTaGFkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQk1MDM4QkUzRjE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZFNoYWRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwotCQk1MDNEMENBNzE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21G
aWx0ZXJQcm9ncmFtLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwM0QwQ0E3MTRCNUIwODcwMEYzMkY1OCAv
KiBDdXN0b21GaWx0ZXJSZW5kZXJlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBDdXN0b21GaWx0ZXJSZW5kZXJlci5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZp
bHRlclJlbmRlcmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzRDBDQTgx
NEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW0uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oOyBwYXRoID0gZmlsdGVycy9D
dXN0b21GaWx0ZXJQcm9ncmFtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwM0Qw
Q0E4MTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0b21GaWx0ZXJSZW5kZXJlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJSZW5kZXJlci5oOyBwYXRoID0gZmls
dGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk1MDNEMENBOTE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xp
ZW50Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzRDBDQUQxNEI1QjBCQTAwRjMyRjU3IC8qIFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaDsgcGF0aCA9IHN0eWxlL1N0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MDRBQUNDQjE4MzQ0NTU5
MDBFM0Q5QkMgLyogSW5zcGVjdG9yTm9kZUZpbmRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0b3JOb2RlRmluZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNTA0QUFDQ0MxODM0NDU1OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVG
aW5kZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yTm9kZUZp
bmRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MDgxRTNERjNDRkM4MEMxNkVG
OEI0OEIgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk1MDgxRTNFMTNEMDI4MEMxNkVGOEI0OEIgLyogQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRSZXNv
dXJjZVJlcXVlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTA4Q0NBNEQxM0NG
MTA2QjAwMzE1MUYzIC8qIFJlbmRlckZsb3dUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUmVuZGVyRmxvd1RocmVhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1MDhDQ0E0RTEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxvd1RocmVhZC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJGbG93VGhyZWFkLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5MzMzNEQxNjNCMEU0MzAwMDk5QTYwIC8q
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHA7IHBhdGggPSBmaWx0ZXJz
L0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQk1MDkzMzM0RTE2M0IwRTQzMDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlz
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXJMaXN0Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5ODdDMjQxNTdENjc2RDAwQkRBODM1IC8qIEN1
c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1
c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk1MDk4N0MyNTE1N0Q2NzZEMDBCREE4MzUgLyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJHbG9iYWxDb250
ZXh0Lmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5Q0M5RkExNEMwNjlFRDAwQkJFQ0JEIC8qIEN1c3Rv
bUZpbHRlclBhcmFtZXRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0
b21GaWx0ZXJQYXJhbWV0ZXIuaDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwOUVDMTA4MTVFODQ4Q0EwMEU4MjU4
MSAvKiBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmg7IHBhdGggPSBm
aWx0ZXJzL0N1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk1MEFDRTJDQTE0QjVENzkzMDA0NDY2NjYgLyogQ3VzdG9tRmlsdGVyT3Bl
cmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBCNDIxNTcxNDY5NzY5NjAwODdFNjA0IC8qIFdlYktp
dENTU1NoYWRlclZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYktp
dENTU1NoYWRlclZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwQ0MwODk5
MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmg7
IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQk1MENDMEEzODE0QzZGNUIxMDAxN0FCNTEgLyogQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEN1
c3RvbUZpbHRlck9wZXJhdGlvbi5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJh
dGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUwRDEwRDk3MTU0NUY1NzYw
MDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNTBEMTBEOTgxNTQ1RjU3NjAwOTZEMjg4IC8qIFJlbmRlckxheWVy
RmlsdGVySW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJMYXll
ckZpbHRlckluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBEMzI4NTUxNjNC
MzEzRjAwMTYxMTFFIC8qIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24uY3BwOyBwYXRoID0gZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24u
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQzMjg1NjE2M0IzMTNGMDAxNjEx
MUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgbmFtZSA9IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oOyBwYXRoID0g
ZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJNTBENDAzQzUxNDc2OEM5NDAwRDMwQkI1IC8qIEZFQ3VzdG9tRmlsdGVy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEZFQ3VzdG9tRmlsdGVy
LmNwcDsgcGF0aCA9IGZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk1MEQ0MDNDNjE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0b21GaWx0ZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRkVDdXN0b21GaWx0ZXIuaDsgcGF0
aCA9IGZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJNTBENDA1RjcxNDdEMzFGMzAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlck1lc2guY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ3VzdG9tRmlsdGVyTWVzaC5jcHA7IHBh
dGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQk1MEQ0MDVGODE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJNZXNoLmg7IHBhdGgg
PSBmaWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJNTBENDA2MEYxNDdENDlERTAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21GaWx0ZXJD
b21waWxlZFByb2dyYW0uY3BwOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFBy
b2dyYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQ0MDYxMDE0N0Q0OURF
MDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oOyBwYXRoID0g
ZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKLQkJNTBEODhDQjMxNUJERkRBQTAwMTgwOUY0IC8qIEN1c3RvbUZpbHRlclByb2dy
YW1JbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEN1c3RvbUZp
bHRlclByb2dyYW1JbmZvLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MEQ4OENCNDE1QkRGREFBMDAx
ODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaDsgcGF0aCA9IGZpbHRlcnMvQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBF
MThDRDUxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBTdHlsZUN1c3RvbUZpbHRlclByb2dy
YW0uY3BwOyBwYXRoID0gc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBFMThDRDYxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcDsgcGF0aCA9IHN0eWxl
L1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKLQkJNTBFMThDRDcxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJv
Z3JhbUNhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFN0eWxlQ3VzdG9t
RmlsdGVyUHJvZ3JhbUNhY2hlLmg7IHBhdGggPSBzdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dy
YW1DYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MTAxODQ2NzBCMDg2MDJB
MDA0QTgyNUYgLyogQ2FjaGVkUGFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDYWNoZWRQYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUxMDE4NDY4MEIw
ODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENhY2hlZFBhZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk1MTAxOTQzRTE4MzZEMjA4MDA5MjU1MjMgLyogSURCSW5kZXhXcml0ZXJMZXZlbERCLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElEQkluZGV4V3JpdGVyTGV2ZWxE
Qi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC05MzQ5LDggKzkyNTQsNiBAQAog
CQk3Q0M3RTNENjE3MjA4QzBGMDAzQzUyNzcgLyogSUROU2NyaXB0V2hpdGVMaXN0LnR4dCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBJRE5TY3JpcHRXaGl0ZUxpc3QudHh0OyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk3Q0U2Q0JGQTE4N0YzNzA3MDBENDZCRjUgLyogRm9ybWF0Q29udmVy
dGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvcm1hdENvbnZlcnRlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3Q0U2Q0JGQzE4N0YzOTQ5MDBENDZCRjUg
LyogRm9ybWF0Q29udmVydGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEZvcm1hdENvbnZlcnRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdF
MTJFOTBEMTVGQTVEM0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3Iu
aDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQk3RTEyRTkwRTE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmls
dGVyTWVzaEdlbmVyYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmls
dGVyTWVzaEdlbmVyYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdFMzND
RDAwMTI3RjM0MEQwMEJFOEYxNyAvKiBQdXJnZVByaW9yaXR5LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFB1cmdlUHJpb3JpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJN0UzN0VGMkQxMzM5MjA4ODAwQjI5MjUwIC8qIFN1YnJlc291cmNlTG9hZGVyQ0YuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gU3VicmVzb3VyY2VMb2FkZXJD
Ri5jcHA7IHBhdGggPSBjZi9TdWJyZXNvdXJjZUxvYWRlckNGLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJN0U0MjhDRTQxM0UzNDA3RjAwM0I2NjFDIC8qIFJlc291cmNlSGFuZGxl
SU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUmVzb3VyY2VI
YW5kbGVJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMDY2MiwxOSArMTA1
NjUsNyBAQAogCQlBMUUxMTU0MzEzMDE1QzNEMDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IERpc3RhbnRMaWdodFNv
dXJjZS5jcHA7IHBhdGggPSBmaWx0ZXJzL0Rpc3RhbnRMaWdodFNvdXJjZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExRTExNTQ1MTMwMTVDNEUwMDU0QUM4QyAvKiBQb2ludExp
Z2h0U291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFBvaW50
TGlnaHRTb3VyY2UuY3BwOyBwYXRoID0gZmlsdGVycy9Qb2ludExpZ2h0U291cmNlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTFFMTE1NDcxMzAxNUM1RDAwNTRBQzhDIC8qIFNw
b3RMaWdodFNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBT
cG90TGlnaHRTb3VyY2UuY3BwOyBwYXRoID0gZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMjRCRjc3OTE1Q0MzQkFGMDAzMTkxRjIgLyog
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCUEyNEJGNzdBMTVDQzNCQUYwMDMxOTFGMiAvKiBXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMjk1MzJD
RDE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUEyOTUzMkNFMTVERDVFMTcwMDQ2OUVC
QyAvKiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaDsgcGF0aCA9IGZpbHRl
cnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQlBMkIyQUU3QjE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9tRmlsdGVyQ29uc3RhbnRz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlckNvbnN0YW50
cy5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb25zdGFudHMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQTJCOTIxNzIxNkM1Q0M0MjAwNDFEQ0Q5IC8qIEludFJlY3RFeHRl
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW50UmVjdEV4dGVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUyRTE2QTQ4RTFDMDA2QkIzQUEgLyog
V2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBXZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJQTJFOEFFMkYxNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENTU0ZpbHRlclJ1bGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUzNTE2QTQ5ODQwMDA2QkIzQUEgLyogSlNX
ZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCUEyRThBRTM2MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUEyRThBRTNEMTZBNDk4Q0YwMDZCQjNBQSAv
KiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IERPTVdlYktpdENTU0ZpbHRlclJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJQTJFOEFFM0UxNkE0OThDRjAwNkJCM0FBIC8qIERPTVdlYktpdENTU0ZpbHRlclJ1bGUubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBET01XZWJLaXRDU1NGaWx0
ZXJSdWxlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUzRjE2QTQ5OENG
MDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZUludGVybmFsLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVdlYktpdENTU0ZpbHRlclJ1bGVJbnRlcm5hbC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMzFDNEU0QzE2RTAyQUE2MDAyRjc5NTcgLyog
T0VTVGV4dHVyZUhhbGZGbG9hdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBPRVNUZXh0dXJlSGFsZkZsb2F0LmNwcDsgcGF0aCA9IGNhbnZhcy9PRVNUZXh0dXJlSGFs
ZkZsb2F0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTMxQzRFNEUxNkUwMkFC
NDAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gT0VTVGV4dHVyZUhhbGZGbG9hdC5oOyBwYXRoID0gY2FudmFzL09FU1RleHR1
cmVIYWxmRmxvYXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTMxQzRFNTAxNkUw
MkFDNTAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IE9FU1RleHR1cmVI
YWxmRmxvYXQuaWRsOyBwYXRoID0gY2FudmFzL09FU1RleHR1cmVIYWxmRmxvYXQuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTM2MTQsOSArMTM1MDUsNiBAQAogCQlGQUJFNzJG
MzEwNTlDMUVCMDBEOTk5REQgLyogbWF0aHRhZ3MuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
bWF0aHRhZ3MuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUZBQkU3MkZCMTA1OUMy
MTEwMEQ5OTlERCAvKiBNYXRoTUxFbGVtZW50RmFjdG9yeS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBNYXRoTUxFbGVtZW50RmFjdG9yeS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUZBQkU3MkZDMTA1OUMyMTEwMEQ5OTlERCAvKiBNYXRoTUxOYW1l
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNYXRoTUxOYW1lcy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUZCMEI3NUVFMTcyMzQyODUwMEYwNUQy
QSAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQlGQjBCNzVFRjE3MjM0Mjg1MDBGMDVEMkEgLyogV2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJL
aXRDU1NNYXRGdW5jdGlvblZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUZC
MUE2NkQ5MTcyMjVBNjYwMEJBQTdBRiAvKiBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
ci5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlGQjJDMTVDMjE2NUQ2NDkwMDAzOUM5RjggLyogQ2FjaGVk
U1ZHRG9jdW1lbnRSZWZlcmVuY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
Q2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRkIzMDU2QzExNjlFNURBQzAwOTZBMjMyIC8qIENTU0dyb3VwaW5nUnVsZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NHcm91cGluZ1J1bGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJRkI0ODRGNEExNzFGODIxRTAwMDQwNzU1IC8qIFRyYW5zZm9ybUZ1
bmN0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUcmFuc2Zv
cm1GdW5jdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY1NDMsOSAr
MTY0MzEsNiBAQAogCQkJCTg1OEMzOEE0MEFBOEYyMDQwMEIxODdBNCAvKiBET01SZWN0Lm1tICov
LAogCQkJCTg1NUQzNTg5MEFENzA3MzEwMDE5QUFDNyAvKiBET01SR0JDb2xvci5oICovLAogCQkJ
CUJDQUVGQ0FEMTAxNkNFNEEwMDQwRDM0RSAvKiBET01SR0JDb2xvci5tbSAqLywKLQkJCQlBMkU4
QUUzRDE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5oICovLAotCQkJ
CUEyRThBRTNFMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLm1tICov
LAotCQkJCUEyRThBRTNGMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxl
SW50ZXJuYWwuaCAqLywKIAkJCQkzMTA2MDM3NjE0MzI4MUNEMDBBQkY0QkEgLyogRE9NV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuaCAqLywKIAkJCQkzMTA2MDM3NzE0MzI4MUNEMDBBQkY0QkEgLyogRE9N
V2ViS2l0Q1NTRmlsdGVyVmFsdWUubW0gKi8sCiAJCQkJMzEwNjAzNzgxNDMyODFDRDAwQUJGNEJB
IC8qIERPTVdlYktpdENTU0ZpbHRlclZhbHVlSW50ZXJuYWwuaCAqLywKQEAgLTE4MTE5LDMzICsx
ODAwNCw2IEBACiAJCUE3NUU4QjdGMEUxREUyQjAwMDdGMjQ4MSAvKiBmaWx0ZXJzICovID0gewog
CQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQkxNUIzRkMxNzE1RkIyMTc4
MDBBODFCQ0IgLyogQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCAqLywKLQkJCQlGQjFBNjZE
OTE3MjI1QTY2MDBCQUE3QUYgLyogQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaCAqLywKLQkJ
CQk1MEQ0MDYwRjE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
LmNwcCAqLywKLQkJCQk1MEQ0MDYxMDE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtLmggKi8sCi0JCQkJQTJCMkFFN0IxNjM3NUVFNTAwQ0ZBNTBCIC8qIEN1c3Rv
bUZpbHRlckNvbnN0YW50cy5oICovLAotCQkJCTUwOTg3QzI0MTU3RDY3NkQwMEJEQTgzNSAvKiBD
dXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcCAqLywKLQkJCQk1MDk4N0MyNTE1N0Q2NzZEMDBC
REE4MzUgLyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oICovLAotCQkJCTUwRDQwNUY3MTQ3
RDMxRjMwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmNwcCAqLywKLQkJCQk1MEQ0MDVGODE0
N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5oICovLAotCQkJCTdFMTJFOTBFMTVG
QTVEM0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCAqLywKLQkJCQk3
RTEyRTkwRDE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oICov
LAotCQkJCTUwQ0MwODk5MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJh
bWV0ZXIuaCAqLywKLQkJCQk1MENDMEEzODE0QzZGNUIxMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmNwcCAqLywKLQkJCQk1MEFDRTJDQTE0QjVENzkzMDA0NDY2NjYgLyogQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uLmggKi8sCi0JCQkJNTA5Q0M5RkExNEMwNjlFRDAwQkJFQ0JEIC8qIEN1
c3RvbUZpbHRlclBhcmFtZXRlci5oICovLAotCQkJCTUwOTMzMzREMTYzQjBFNDMwMDA5OUE2MCAv
KiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCAqLywKLQkJCQk1MDkzMzM0RTE2M0IwRTQz
MDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oICovLAotCQkJCTUwM0QwQ0E3
MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCAqLywKLQkJCQk1MDNE
MENBODE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oICovLAotCQkJCTUw
M0QwQ0E5MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggKi8s
Ci0JCQkJNTBEODhDQjMxNUJERkRBQTAwMTgwOUY0IC8qIEN1c3RvbUZpbHRlclByb2dyYW1JbmZv
LmNwcCAqLywKLQkJCQk1MEQ4OENCNDE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8uaCAqLywKLQkJCQk1MDNEMENBNzE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmls
dGVyUmVuZGVyZXIuY3BwICovLAotCQkJCTUwM0QwQ0E4MTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0
b21GaWx0ZXJSZW5kZXJlci5oICovLAotCQkJCTUwOUVDMTA4MTVFODQ4Q0EwMEU4MjU4MSAvKiBD
dXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCAqLywKLQkJCQlBMjk1MzJDRDE1REQ1RTE3
MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAgKi8sCi0JCQkJQTI5
NTMyQ0UxNURENUUxNzAwNDY5RUJDIC8qIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCAq
LywKIAkJCQlBMUUxMTU0MzEzMDE1QzNEMDA1NEFDOEMgLyogRGlzdGFudExpZ2h0U291cmNlLmNw
cCAqLywKIAkJCQk4NDczMEQ1QTEyNDhGMEIzMDBEM0E5QzkgLyogRGlzdGFudExpZ2h0U291cmNl
LmggKi8sCiAJCQkJQTc1RThCODAwRTFERTJENjAwN0YyNDgxIC8qIEZFQmxlbmQuY3BwICovLApA
QCAtMTgxNTgsOCArMTgwMTYsNiBAQAogCQkJCUE3NUU4Qjg3MEUxREUyRDYwMDdGMjQ4MSAvKiBG
RUNvbXBvc2l0ZS5oICovLAogCQkJCTg0NzMwRDVCMTI0OEYwQjMwMEQzQTlDOSAvKiBGRUNvbnZv
bHZlTWF0cml4LmNwcCAqLywKIAkJCQk4NDczMEQ1QzEyNDhGMEIzMDBEM0E5QzkgLyogRkVDb252
b2x2ZU1hdHJpeC5oICovLAotCQkJCTUwRDQwM0M1MTQ3NjhDOTQwMEQzMEJCNSAvKiBGRUN1c3Rv
bUZpbHRlci5jcHAgKi8sCi0JCQkJNTBENDAzQzYxNDc2OEM5NDAwRDMwQkI1IC8qIEZFQ3VzdG9t
RmlsdGVyLmggKi8sCiAJCQkJODQ3MzBENUQxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFRGlmZnVzZUxp
Z2h0aW5nLmNwcCAqLywKIAkJCQk4NDczMEQ1RTEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaWZmdXNl
TGlnaHRpbmcuaCAqLywKIAkJCQk4NDczMEQ1RjEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaXNwbGFj
ZW1lbnRNYXAuY3BwICovLApAQCAtMTgyMDAsOCArMTgwNTYsNiBAQAogCQkJCTg0QTgxRjQwMEZD
N0UwMjcwMDk1NTMwMCAvKiBTb3VyY2VHcmFwaGljLmggKi8sCiAJCQkJQTFFMTE1NDcxMzAxNUM1
RDAwNTRBQzhDIC8qIFNwb3RMaWdodFNvdXJjZS5jcHAgKi8sCiAJCQkJODQ3MzBENzYxMjQ4RjBC
MzAwRDNBOUM5IC8qIFNwb3RMaWdodFNvdXJjZS5oICovLAotCQkJCTUwRDMyODU1MTYzQjMxM0Yw
MDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwICovLAotCQkJCTUw
RDMyODU2MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24u
aCAqLywKIAkJCSk7CiAJCQluYW1lID0gZmlsdGVyczsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CkBAIC0xODg0Niw4ICsxODcwMCw2IEBACiAJCQkJQkNFMDEzOTkwQzBCRUYxODAwNDM4NjBB
IC8qIEpTU3R5bGVTaGVldC5oICovLAogCQkJCUE4NEVCRDgyMENCOEM5NzcwMDA3OTYwOSAvKiBK
U1N0eWxlU2hlZXRMaXN0LmNwcCAqLywKIAkJCQlBODRFQkQ4MTBDQjhDOTc3MDAwNzk2MDkgLyog
SlNTdHlsZVNoZWV0TGlzdC5oICovLAotCQkJCUEyRThBRTM1MTZBNDk4NDAwMDZCQjNBQSAvKiBK
U1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwICovLAotCQkJCUEyRThBRTM2MTZBNDk4NDAwMDZCQjNB
QSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuaCAqLywKIAkJCQkzMTA2MDM3MjE0MzI4MTlDMDBB
QkY0QkEgLyogSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAgKi8sCiAJCQkJMzEwNjAzNzMxNDMy
ODE5QzAwQUJGNEJBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCAqLywKIAkJCQkzMTZGRTA2
RDBFNkNDQkVFMDBCRjYwODggLyogSlNXZWJLaXRDU1NLZXlmcmFtZVJ1bGUuY3BwICovLApAQCAt
MTg4NTYsOCArMTg3MDgsNiBAQAogCQkJCTMxNkZFMDcwMEU2Q0NCRUUwMEJGNjA4OCAvKiBKU1dl
YktpdENTU0tleWZyYW1lc1J1bGUuaCAqLywKIAkJCQk0OTgzOTEzRDBGMUU3Njc1MDBDMjM3ODIg
LyogSlNXZWJLaXRDU1NNYXRyaXguY3BwICovLAogCQkJCTQ5ODM5MTNFMEYxRTc2NzUwMEMyMzc4
MiAvKiBKU1dlYktpdENTU01hdHJpeC5oICovLAotCQkJCTE1QjhCN0M2MTY1MkM1MjIwMDM2RUY1
NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwICovLAotCQkJCTE1QjhCN0M3MTY1
MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCAqLywKIAkJCQk4
QUNDMjRDRDE0OEUyNEIyMDBFRkNDMEQgLyogSlNXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCAqLywK
IAkJCQk4QUNDMjRDRTE0OEUyNEIyMDBFRkNDMEQgLyogSlNXZWJLaXRDU1NSZWdpb25SdWxlLmgg
Ki8sCiAJCQkJMzE2MTFFNTgwRTFDNERFMDAwRjZBNTc5IC8qIEpTV2ViS2l0Q1NTVHJhbnNmb3Jt
VmFsdWUuY3BwICovLApAQCAtMTkxMjcsOCArMTg5NzcsNiBAQAogCQkJCTZDNjM4ODkzQTk2Q0NF
RTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmggKi8sCiAJCQkJ
QkNCMTZDMEEwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFNjcmlwdC5jcHAgKi8sCiAJCQkJQkNC
MTZDMEIwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFNjcmlwdC5oICovLAotCQkJCTUwMzhCRTNF
MTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuY3BwICovLAotCQkJCTUwMzhCRTNGMTQ3
MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuaCAqLywKIAkJCQlEMEJDNTQ0ODE0NDNBQzRB
MDBFMTA1REEgLyogQ2FjaGVkU3R5bGVTaGVldENsaWVudC5oICovLAogCQkJCUExMDRGMjQxMTRD
NzFGN0EwMDlFMkMyMyAvKiBDYWNoZWRTVkdEb2N1bWVudC5jcHAgKi8sCiAJCQkJQTEwNEYyNDIx
NEM3MUY3QTAwOUUyQzIzIC8qIENhY2hlZFNWR0RvY3VtZW50LmggKi8sCkBAIC0yMDU5OCwxMiAr
MjA0NDYsNiBAQAogCQkJCUJDRUY0NDRDMEU2NzQ2MjgwMDFDMTI4NyAvKiBTdHlsZUNhY2hlZElt
YWdlLmggKi8sCiAJCQkJOTM5M0U2MDIxNTFBOUExODAwMDY2RjA2IC8qIFN0eWxlQ2FjaGVkSW1h
Z2VTZXQuY3BwICovLAogCQkJCTkzOTNFNjAzMTUxQTlBMTgwMDA2NkYwNiAvKiBTdHlsZUNhY2hl
ZEltYWdlU2V0LmggKi8sCi0JCQkJNTAzOEJFMkQxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2Fj
aGVkU2hhZGVyLmNwcCAqLywKLQkJCQk1MDM4QkUyRTE0NzJBRDIzMDA5NUUwRDEgLyogU3R5bGVD
YWNoZWRTaGFkZXIuaCAqLywKLQkJCQk1MEUxOENENTE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtLmNwcCAqLywKLQkJCQk1MDNEMENBRDE0QjVCMEJBMDBGMzJGNTcg
LyogU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmggKi8sCi0JCQkJNTBFMThDRDYxNkY5Mjg1ODAw
QzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCAqLywKLQkJCQk1MEUx
OENENzE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCAq
LywKIAkJCQlCQzVFQjY3RTBFODFENEE3MDBCMjU5NjUgLyogU3R5bGVEYXNoYm9hcmRSZWdpb24u
aCAqLywKIAkJCQlCQzVFQjhCNjBFODIwMUJEMDBCMjU5NjUgLyogU3R5bGVEZXByZWNhdGVkRmxl
eGlibGVCb3hEYXRhLmNwcCAqLywKIAkJCQlCQzVFQjhCNzBFODIwMUJEMDBCMjU5NjUgLyogU3R5
bGVEZXByZWNhdGVkRmxleGlibGVCb3hEYXRhLmggKi8sCkBAIC0yMDYyOSw3ICsyMDQ3MSw2IEBA
CiAJCQkJQkMyMjcyQkEwRTgyRUFBRTAwRTdGOTc1IC8qIFN0eWxlUmFyZU5vbkluaGVyaXRlZERh
dGEuY3BwICovLAogCQkJCUJDMjI3MkJCMEU4MkVBQUUwMEU3Rjk3NSAvKiBTdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhLmggKi8sCiAJCQkJQkMyMjcyODYwRTgyRTcwNzAwRTdGOTc1IC8qIFN0eWxl
UmVmbGVjdGlvbi5oICovLAotCQkJCTMxMzhBOUU0MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNo
YWRlci5oICovLAogCQkJCUJDNUVCNUU2MEU4MUJGRUYwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5k
RGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI1RTQwRTgxQkY2RDAwQjI1OTY1IC8qIFN0eWxlU3Vycm91
bmREYXRhLmggKi8sCiAJCQkJQkM1RUI4MEQwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNm
b3JtRGF0YS5jcHAgKi8sCkBAIC0yMTczMiwxMCArMjE1NzMsNiBAQAogCQkJCUJDNUVDMTc2MEE1
MDdFM0UwMDYwMDdGNSAvKiB2aWV3LXNvdXJjZS5jc3MgKi8sCiAJCQkJM0ZGRkY5QUIxNTlEOUIw
NjAwMjBCQkQ1IC8qIFZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAgKi8sCiAJCQkJM0ZGRkY5QUMx
NTlEOUIwNjAwMjBCQkQ1IC8qIFZpZXdwb3J0U3R5bGVSZXNvbHZlci5oICovLAotCQkJCTE1MEI5
MjM3MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwICov
LAotCQkJCTE1MEI5MjM4MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRDU1NBcnJheUZ1bmN0aW9u
VmFsdWUuaCAqLywKLQkJCQlBMkU4QUUyRTE2QTQ4RTFDMDA2QkIzQUEgLyogV2ViS2l0Q1NTRmls
dGVyUnVsZS5jcHAgKi8sCi0JCQkJQTJFOEFFMkYxNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENT
U0ZpbHRlclJ1bGUuaCAqLywKIAkJCQkzMTA2MDM2QzE0MzI3RDJFMDBBQkY0QkEgLyogV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuY3BwICovLAogCQkJCTMxMDYwMzZEMTQzMjdEMkUwMEFCRjRCQSAvKiBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oICovLAogCQkJCTMxMDYwMzZFMTQzMjdEMkUwMEFCRjRCQSAv
KiBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5pZGwgKi8sCkBAIC0yMTc0NSwxOCArMjE1ODIsMTIgQEAK
IAkJCQkzMTI4OEU3MDBFMzAwNUQ2MDAzNjE5QUUgLyogV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5j
cHAgKi8sCiAJCQkJMzEyODhFNzEwRTMwMDVENjAwMzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1l
c1J1bGUuaCAqLywKIAkJCQkzMTZGRTA5MjBFNkNDRDdGMDBCRjYwODggLyogV2ViS2l0Q1NTS2V5
ZnJhbWVzUnVsZS5pZGwgKi8sCi0JCQkJRkIwQjc1RUUxNzIzNDI4NTAwRjA1RDJBIC8qIFdlYktp
dENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwICovLAotCQkJCUZCMEI3NUVGMTcyMzQyODUwMEYwNUQy
QSAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmggKi8sCiAJCQkJNDk4MzkxNTUwRjFFNzc2
OTAwQzIzNzgyIC8qIFdlYktpdENTU01hdHJpeC5jcHAgKi8sCiAJCQkJNDk4MzkxNTYwRjFFNzc2
OTAwQzIzNzgyIC8qIFdlYktpdENTU01hdHJpeC5oICovLAogCQkJCTQ5ODM5MTU3MEYxRTc3Njkw
MEMyMzc4MiAvKiBXZWJLaXRDU1NNYXRyaXguaWRsICovLAotCQkJCUEyNEJGNzdBMTVDQzNCQUYw
MDMxOTFGMiAvKiBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCAqLywKLQkJCQlBMjRCRjc3
OTE1Q0MzQkFGMDAzMTkxRjIgLyogV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oICovLAogCQkJ
CThBQTYxQ0ZEMTQ0RDU5NUIwMEYzNzM1MCAvKiBXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCAqLywK
IAkJCQk4QUE2MUNGRTE0NEQ1OTVCMDBGMzczNTAgLyogV2ViS2l0Q1NTUmVnaW9uUnVsZS5oICov
LAogCQkJCThBRDBBNTU2MTRDODc0MjUwMDBEODNDNSAvKiBXZWJLaXRDU1NSZWdpb25SdWxlLmlk
bCAqLywKLQkJCQk1MDM4QkMwNjE0NzExQ0RCMDA5NUUwRDEgLyogV2ViS2l0Q1NTU2hhZGVyVmFs
dWUuY3BwICovLAotCQkJCTUwQjQyMTU3MTQ2OTc2OTYwMDg3RTYwNCAvKiBXZWJLaXRDU1NTaGFk
ZXJWYWx1ZS5oICovLAogCQkJCUJDOUFERDdGMENDNDA5MjIwMDA5OEM0QyAvKiBXZWJLaXRDU1NU
cmFuc2Zvcm1WYWx1ZS5jcHAgKi8sCiAJCQkJQkM5QUREMjIwQ0M0MDMyNjAwMDk4QzRDIC8qIFdl
YktpdENTU1RyYW5zZm9ybVZhbHVlLmggKi8sCiAJCQkJMzE2MTFFNTQwRTFDNEQ0QTAwRjZBNTc5
IC8qIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmlkbCAqLywKQEAgLTIzMDE4LDcgKzIyODQ5LDYg
QEAKIAkJCQk2QzYzODg5NUE5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
SW5pdGlhdG9ycy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNCMTZDMjQwOTc5QzNCRDAwNDY3NzQx
IC8qIENhY2hlZFNjcmlwdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNENTMzNjQwRUQ2ODQ4OTAw
ODg3NDY4IC8qIENhY2hlZFNjcmlwdFNvdXJjZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLywKLQkJ
CQk1MDM4QkU0MTE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmggaW4gSGVhZGVycyAq
LywKIAkJCQlEMEJDNTQ0OTE0NDNBQzRBMDBFMTA1REEgLyogQ2FjaGVkU3R5bGVTaGVldENsaWVu
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTEwNEYyNDQxNEM3MUY3QTAwOUUyQzIzIC8qIENhY2hl
ZFNWR0RvY3VtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUVGNEU2OTE3MEUxNzQ4MDBBQjI3
OTkgLyogQ2FjaGVkU1ZHRG9jdW1lbnRDbGllbnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjMyMDcs
MjMgKzIzMDM3LDggQEAKIAkJCQk4NjgxNjBENjE4NzY2QTEzMDAyMUU3OUQgLyogVXNlckFjdGl2
aXR5LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzIyNzJBRDBFODJFOEYzMDBFN0Y5NzUgLyogQ3Vy
c29yTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjJDRDMyNUExMTU3RTU3QzAwNjNCMEE3IC8q
IEN1c3RvbUV2ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQkxNUIzRkMxOTE1RkIyMTc4MDBBODFC
Q0IgLyogQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUE1
ODQwRTFEMTg3Qjc0RDUwMDg0M0IxMCAvKiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUu
aCBpbiBIZWFkZXJzICovLAotCQkJCTUwRDQwNjEyMTQ3RDQ5REUwMEQzMEJCNSAvKiBDdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW0uaCBpbiBIZWFkZXJzICovLAotCQkJCUEyQjJBRTdDMTYzNzVF
RTUwMENGQTUwQiAvKiBDdXN0b21GaWx0ZXJDb25zdGFudHMuaCBpbiBIZWFkZXJzICovLAotCQkJ
CTUwOTg3QzI3MTU3RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0Lmgg
aW4gSGVhZGVycyAqLywKLQkJCQk1MEQ0MDVGQTE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyTWVzaC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJN0UxMkU5MEYxNUZBNUQzQTAwNUU0MTI2IC8q
IEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICovLAotCQkJCTUwQ0MwODlB
MTRDNkU5OUMwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCBpbiBIZWFk
ZXJzICovLAotCQkJCTUwQUNFMkNCMTRCNUQ3OTMwMDQ0NjY2NiAvKiBDdXN0b21GaWx0ZXJPcGVy
YXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUU0QzkxQTE2MTgwOTk5RjEwMEExN0Y2RCAvKiBS
ZW5kZXJUZXh0TGluZUJveGVzLmggaW4gSGVhZGVycyAqLywKLQkJCQk1MDlDQzlGQjE0QzA2OUVE
MDBCQkVDQkQgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmggaW4gSGVhZGVycyAqLywKLQkJCQk1
MDkzMzM1MDE2M0IwRTQzMDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIGlu
IEhlYWRlcnMgKi8sCi0JCQkJNTAzRDBDQUIxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRl
clByb2dyYW0uaCBpbiBIZWFkZXJzICovLAotCQkJCTUwM0QwQ0FDMTRCNUIwODcwMEYzMkY1NyAv
KiBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQk1MEQ4OENC
NjE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCBpbiBIZWFkZXJz
ICovLAotCQkJCTUwM0QwQ0FCMTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0b21GaWx0ZXJSZW5kZXJl
ci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQTI5NTMyRDAxNURENUUxNzAwNDY5RUJDIC8qIEN1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCBpbiBIZWFkZXJzICovLAogCQkJCUE4Q0I0MTNFMEU4
NjMzRkQwMDMyQzRGMCAvKiBEYXNoQXJyYXkuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4MEU2RDBC
MEExOTg5Q0EwMDdGQjhDNSAvKiBEYXNoYm9hcmRSZWdpb24uaCBpbiBIZWFkZXJzICovLAogCQkJ
CTk3QkM2QTIxMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZS5oIGluIEhlYWRlcnMgKi8sCkBA
IC0yMzY2Niw5ICsyMzQ4MSw3IEBACiAJCQkJQkMxQTM3QzAwOTdDNzE1RjAwMTlGM0Q4IC8qIERP
TVZpZXdzLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUMwRkY0OTBFNENFRkREMDA3RDZGRTUgLyog
RE9NV2ViS2l0QW5pbWF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQzBGRjRCMEU0
Q0VGREQwMDdENkZFNSAvKiBET01XZWJLaXRBbmltYXRpb25FdmVudEludGVybmFsLmggaW4gSGVh
ZGVycyAqLywKLQkJCQlBMkU4QUU0MDE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmls
dGVyUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE1QjNBNkUxN0NCRTI2NzAwMEZDQ0U4IC8q
IEFjY2Vzc2liaWxpdHlTZWFyY2hGaWVsZEJ1dHRvbnMuaCBpbiBIZWFkZXJzICovLAotCQkJCUEy
RThBRTQyMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlSW50ZXJuYWwu
aCBpbiBIZWFkZXJzICovLAogCQkJCTMxMDYwMzc5MTQzMjgxQ0QwMEFCRjRCQSAvKiBET01XZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEwNjAzN0IxNDMyODFDRDAw
QUJGNEJBIC8qIERPTVdlYktpdENTU0ZpbHRlclZhbHVlSW50ZXJuYWwuaCBpbiBIZWFkZXJzICov
LAogCQkJCTMxNkZFMDdEMEU2Q0NDMjgwMEJGNjA4OCAvKiBET01XZWJLaXRDU1NLZXlmcmFtZVJ1
bGUuaCBpbiBIZWFkZXJzICovLApAQCAtMjM3ODcsNyArMjM2MDAsNiBAQAogCQkJCUE3NUU4QjhE
MEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbXBvbmVudFRyYW5zZmVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlBNzVFOEI4RjBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTg0NzMwRDc5MTI0OEYwQjMwMEQzQTlDOSAvKiBGRUNvbnZvbHZlTWF0cml4Lmgg
aW4gSGVhZGVycyAqLywKLQkJCQk1MEQ0MDNDODE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0b21G
aWx0ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTg0NzMwRDdCMTI0OEYwQjMwMEQzQTlDOSAvKiBG
RURpZmZ1c2VMaWdodGluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RBQjZEMzExN0M5MjU5NTAw
QzYwQjM0IC8qIFVzZXJBZ2VudFNjcmlwdHMuaCBpbiBIZWFkZXJzICovLAogCQkJCTg0NzMwRDdE
MTI0OEYwQjMwMEQzQTlDOSAvKiBGRURpc3BsYWNlbWVudE1hcC5oIGluIEhlYWRlcnMgKi8sCkBA
IC0yNDc1NiwxMiArMjQ1NjgsMTAgQEAKIAkJCQk3N0VGNjJGNDEyRjlEQjc0MDBDNzdCRDIgLyog
SlNXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggaW4gSGVhZGVycyAqLywKIAkJCQlDREM4QjVB
QjE4MDQ3RkYxMDAxNkU2ODUgLyogU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTMxQzBGRjNFMEU0Q0VGQUMwMDdENkZFNSAvKiBKU1dlYktpdEFuaW1hdGlv
bkV2ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQlBMkU4QUUzODE2QTQ5ODQwMDA2QkIzQUEgLyog
SlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTA2MDM3NTE0MzI4
MTlDMDBBQkY0QkEgLyogSlNXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMzE2RkUwNzIwRTZDQ0JFRTAwQkY2MDg4IC8qIEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMTZGRTA3NDBFNkNDQkVFMDBCRjYwODggLyogSlNXZWJLaXRD
U1NLZXlmcmFtZXNSdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQk0OTgzOTE0MDBGMUU3Njc1MDBD
MjM3ODIgLyogSlNXZWJLaXRDU1NNYXRyaXguaCBpbiBIZWFkZXJzICovLAotCQkJCTE1QjhCN0M5
MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFk
ZXJzICovLAogCQkJCThBRDBBNTk1MTRDODgzMzYwMDBEODNDNSAvKiBKU1dlYktpdENTU1JlZ2lv
blJ1bGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxNjExRTVCMEUxQzRERTAwMEY2QTU3OSAvKiBK
U1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzRjJCMzNFRjE2
NUFGMTU2MDBFMzk4N0MgLyogSlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuaCBpbiBIZWFkZXJzICov
LApAQCAtMjU1MzQsMTAgKzI1MzQ0LDcgQEAKIAkJCQlCQzVFQjY3QjBFODFEM0JFMDBCMjU5NjUg
LyogU3R5bGVCb3hEYXRhLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0VGNDQ0RDBFNjc0NjI4MDAx
QzEyODcgLyogU3R5bGVDYWNoZWRJbWFnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM5M0U2MDUx
NTFBOUExODAwMDY2RjA2IC8qIFN0eWxlQ2FjaGVkSW1hZ2VTZXQuaCBpbiBIZWFkZXJzICovLAot
CQkJCTUwMzhCRTMwMTQ3MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJNTAzRDBDQUUxNEI1QjBCQTAwRjMyRjU3IC8qIFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTE2NjBBQzExODI4Qzg0NjAwMDc0Q0FE
IC8qIElEQkJhY2tpbmdTdG9yZUN1cnNvckxldmVsREIuaCBpbiBIZWFkZXJzICovLAotCQkJCTUw
RTE4Q0RBMTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI2N0YwRTgxRDRBNzAwQjI1OTY1IC8qIFN0eWxlRGFz
aGJvYXJkUmVnaW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEM0QTdGRDA5RDU2MzI3MDAwM0FD
OEQgLyogU3R5bGVkRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4QjkwRTgyMDFC
RDAwQjI1OTY1IC8qIFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5oIGluIEhlYWRlcnMg
Ki8sCkBAIC0yNTU2Niw3ICsyNTM3Myw2IEBACiAJCQkJRTRCQkVENEQxNEZDREJBMTAwM0YwQjk4
IC8qIFN0eWxlUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTQ5NDZFQUYxNTZFNjRERDAwRDMy
OTdGIC8qIFN0eWxlUnVsZUltcG9ydC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTdCNzYxQTExNjFF
RTUyNjAwMjA4M0QzIC8qIFN0eWxlU2NvcGVSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
MzEzOEE5RTUxNDc0NDM0NjAwQjBFRDEyIC8qIFN0eWxlU2hhZGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlBOEVBODAwQzBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMEY1NERDRTYxODgxMDUxRDAwM0VFREJCIC8qIFRleHRBdXRvU2l6aW5nLmggaW4g
SGVhZGVycyAqLywKIAkJCQlFNEY5RUVGMzE1NkRBMDA3MDBEMjNFN0UgLyogU3R5bGVTaGVldENv
bnRlbnRzLmggaW4gSGVhZGVycyAqLywKQEAgLTI1OTcxLDcgKzI1Nzc3LDYgQEAKIAkJCQkxRkFG
QkYxOTE1QTVGQTc0MDAwODNBMjAgLyogVVRJVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkyRTNCQkYwODExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QTUwMTkyMEUxMzJFQkYyRTAwOEJGRTU1IC8qIEF1dG9jYXBpdGFsaXplLmggaW4gSGVhZGVycyAq
LywKLQkJCQk1MEQzMjg1ODE2M0IzMTNGMDAxNjExMUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlGNUExNTQyODEyNzk1MzREMDBEMEIwQzAg
LyogVmFsaWRhdGlvbk1lc3NhZ2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUY1MTNBM0VBMTVGRjQ4
NDEwMDE1MjZEQiAvKiBWYWxpZGF0aW9uTWVzc2FnZUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMTVDNzcwOEQxMDBEM0M2QjAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaCBpbiBIZWFkZXJz
ICovLApAQCAtMjYwNTEsMTcgKzI1ODU2LDEyIEBACiAJCQkJNzdBMTdBNzgxMkYyODY0MjAwNEUw
MkY2IC8qIFdlYkdMVmVydGV4QXJyYXlPYmplY3RPRVMuaCBpbiBIZWFkZXJzICovLAogCQkJCTMx
QzBGRjIyMEU0Q0VCNkUwMDdENkZFNSAvKiBXZWJLaXRBbmltYXRpb25FdmVudC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJOTc2RDZDN0MxMjJCOEEzRDAwMUZEMUY3IC8qIFdlYktpdEJsb2JCdWlsZGVy
LmggaW4gSGVhZGVycyAqLywKLQkJCQkxNTBCOTIzQTE1RjA4REM0MDBFMTA5ODYgLyogV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmggaW4gSGVhZGVycyAqLywKLQkJCQlBMkU4QUUzMTE2QTQ4
RTFDMDA2QkIzQUEgLyogV2ViS2l0Q1NTRmlsdGVyUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NTFENzE5Q0QxODExMDZFMDAwMTZEQzUxIC8qIElEQkRhdGFiYXNlRXJyb3IuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTMxMDYwMzcwMTQzMjdEMkUwMEFCRjRCQSAvKiBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEyODhFNzMwRTMwMDVENjAwMzYxOUFFIC8qIFdlYktp
dENTU0tleWZyYW1lUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEyODhFNzUwRTMwMDVENjAw
MzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1lc1J1bGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUZC
NzE5QzNGMTcyMzhDQTgwMDIyREUzNCAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmggaW4g
SGVhZGVycyAqLywKIAkJCQk0OTgzOTE1OTBGMUU3NzY5MDBDMjM3ODIgLyogV2ViS2l0Q1NTTWF0
cml4LmggaW4gSGVhZGVycyAqLywKLQkJCQlBMjRCRjc3QjE1Q0MzQkFGMDAzMTkxRjIgLyogV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOEFBNjFEMDAxNDRE
NTk1QjAwRjM3MzUwIC8qIFdlYktpdENTU1JlZ2lvblJ1bGUuaCBpbiBIZWFkZXJzICovLAotCQkJ
CTI5Q0Q2MURFMTQ2RDAyODkwMDY4RTgyQSAvKiBXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMDc4RTA5NDIxN0QxNkUxQzAwNDIwQUExIC8qIFJUQ1BlZXJDb25uZWN0
aW9uSGFuZGxlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM5QUREMjMwQ0M0MDMyNjAw
MDk4QzRDIC8qIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQkz
RkZGRjlBOTE1OUQ5QTU1MDAyMEJCRDUgLyogV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmggaW4gSGVh
ZGVycyAqLywKQEAgLTI2NjYzLDcgKzI2NDYzLDYgQEAKIAkJCQk1MDgxRTNDMzNDRTU4MEMxNkVG
OEI0OEIgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTZD
NjM4ODk2QTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3Jz
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDQjE2QzIzMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNo
ZWRTY3JpcHQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzOEJFNDAxNDcyQUQ5ODAwOTVFMEQx
IC8qIENhY2hlZFNoYWRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBMTA0RjI0MzE0QzcxRjdB
MDA5RTJDMjMgLyogQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTFC
NTMzNDcxNzE3RDBBMTAwRjIwNUY5IC8qIENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTA3NTM4NjAyMTQ0ODlFOTgwMEI3ODQ1MiAvKiBDYWNoZWRUZXh0
VHJhY2suY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yNjgyOSwxOCArMjY2MjgsOCBAQAogCQkJCTI2
NTU0MTUyMTQ4OUIyMzMwMDBERkM1RCAvKiBDdXJzb3JJT1MuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJOTNGMTlBMjYwODI0NUU1OTAwMUU5QUJDIC8qIEN1cnNvck1hYy5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTYyQ0QzMjU5MTE1N0U1N0MwMDYzQjBBNyAvKiBDdXN0b21FdmVudC5jcHAgaW4gU291
cmNlcyAqLywKLQkJCQk1MEQ0MDYxMTE0N0Q0OURFMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTUwOTg3QzI2MTU3RDY3NkQwMEJE
QTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcCBpbiBTb3VyY2VzICovLAotCQkJ
CTUwRDQwNUY5MTQ3RDMxRjMwMEQzMEJCNSAvKiBDdXN0b21GaWx0ZXJNZXNoLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUUxQzI2NkRFMTgzMTlGMzEwMDNGOEIzMyAvKiBDcnlwdG9LZXlEYXRhUlNB
Q29tcG9uZW50cy5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk3RTEyRTkxMDE1RkE1RDNBMDA1RTQx
MjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlB
NTg0RkUzQjE4NjRFMkQ4MDA4NDNCMTAgLyogSlNDb21tYW5kTGluZUFQSUhvc3QuY3BwIGluIFNv
dXJjZXMgKi8sCi0JCQkJNTBDQzBBMzkxNEM2RjVCMTAwMTdBQjUxIC8qIEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MDkzMzM0RjE2M0IwRTQzMDAwOTlBNjAg
LyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MDNE
MENBQTE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgaW4gU291cmNl
cyAqLywKLQkJCQk1MEQ4OENCNTE1QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUluZm8uY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzRDBDQUExNEI1QjA4NzAwRjMyRjU4IC8q
IEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUEyOTUzMkNGMTVE
RDVFMTcwMDQ2OUVCQyAvKiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTk3QkM2QTIwMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQk5N0JDNkEyMzE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VBdXRo
b3JpemVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxMjVGODM1MTgyMkYxOEEwMEQ4NENEOSAv
KiBDcnlwdG9LZXlITUFDLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjcxMDgsNyArMjY4OTcsNiBA
QAogCQkJCUJDMUEzN0JGMDk3QzcxNUYwMDE5RjNEOCAvKiBET01VdGlsaXR5Lm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMTVDNzcwQTUxMDBENDFDRDAwNUJBMjY3IC8qIERPTVZhbGlkaXR5U3RhdGUu
bW0gaW4gU291cmNlcyAqLywKIAkJCQkzMUMwRkY0QTBFNENFRkREMDA3RDZGRTUgLyogRE9NV2Vi
S2l0QW5pbWF0aW9uRXZlbnQubW0gaW4gU291cmNlcyAqLywKLQkJCQlBMkU4QUU0MTE2QTQ5OENG
MDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTMxMDYwMzdBMTQzMjgxQ0QwMEFCRjRCQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5tbSBp
biBTb3VyY2VzICovLAogCQkJCUNERjJCMDEwMTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrQm94LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTMxNkZFMDdFMEU2Q0NDMjgwMEJGNjA4OCAvKiBET01XZWJL
aXRDU1NLZXlmcmFtZVJ1bGUubW0gaW4gU291cmNlcyAqLywKQEAgLTI3MTkyLDcgKzI2OTgwLDYg
QEAKIAkJCQlBNzVFOEI4RTBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJODQ3MzBENzgxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFQ29udm9sdmVNYXRy
aXguY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RENzA4OTYxODM1OUY2RjAwMkIzREM2IC8qIFNh
bXBsZU1hcC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MEQ0MDNDNzE0NzY4Qzk0MDBEMzBCQjUg
LyogRkVDdXN0b21GaWx0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODQ3MzBEN0ExMjQ4RjBC
MzAwRDNBOUM5IC8qIEZFRGlmZnVzZUxpZ2h0aW5nLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA3
OEUwOTBCMTdEMTRDRUUwMDQyMEFBMSAvKiBSVENQZWVyQ29ubmVjdGlvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk4NDczMEQ3QzEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaXNwbGFjZW1lbnRNYXAu
Y3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yODE5OSwxMiArMjc5ODYsMTAgQEAKIAkJCQkwQzQ1MzQy
NzEwQ0RCQkZBMDA4NjkxNTcgLyogSlNXZWJHTFVuaWZvcm1Mb2NhdGlvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk3N0VGNjJGMzEyRjlEQjc0MDBDNzdCRDIgLyogSlNXZWJHTFZlcnRleEFycmF5
T2JqZWN0T0VTLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQzBGRjNEMEU0Q0VGQUMwMDdENkZF
NSAvKiBKU1dlYktpdEFuaW1hdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUEyRThB
RTM3MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMzEwNjAzNzQxNDMyODE5QzAwQUJGNEJBIC8qIEpTV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzE2RkUwNzEwRTZDQ0JFRTAwQkY2MDg4IC8q
IEpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNkZFMDcz
MEU2Q0NCRUUwMEJGNjA4OCAvKiBKU1dlYktpdENTU0tleWZyYW1lc1J1bGUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNDk4MzkxM0YwRjFFNzY3NTAwQzIzNzgyIC8qIEpTV2ViS2l0Q1NTTWF0cml4
LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTE1QjhCN0M4MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOEFEMEE1OTQx
NEM4ODMzNjAwMEQ4M0M1IC8qIEpTV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQkzMTYxMUU1QTBFMUM0REUwMDBGNkE1NzkgLyogSlNXZWJLaXRDU1NUcmFuc2Zvcm1W
YWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzRjJCMzNFRTE2NUFGMTU2MDBFMzk4N0MgLyog
SlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yODg2NCwxMSAr
Mjg2NDksOCBAQAogCQkJCUJDNUVCNjdEMEU4MUQ0MjAwMEIyNTk2NSAvKiBTdHlsZUJveERhdGEu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNFRjQ0N0EwRTY3NDdEMDAwMUMxMjg3IC8qIFN0eWxl
Q2FjaGVkSW1hZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTM5M0U2MDQxNTFBOUExODAwMDY2
RjA2IC8qIFN0eWxlQ2FjaGVkSW1hZ2VTZXQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTAzOEJF
MkYxNDcyQUQyMzAwOTVFMEQxIC8qIFN0eWxlQ2FjaGVkU2hhZGVyLmNwcCBpbiBTb3VyY2VzICov
LAotCQkJCTUwRTE4Q0Q4MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dy
YW0uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFBNzk1QzgxODg4QkNCNTAwMzgyRjkwIC8qIEFO
R0xFSW5zdGFuY2VkQXJyYXlzLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE1ODQwRTI0MTg3QjhB
QzIwMDg0M0IxMCAvKiBQYWdlSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcCBpbiBTb3VyY2VzICovLAot
CQkJCTUwRTE4Q0Q5MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1D
YWNoZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBOEM0QTdGRTA5RDU2MzI3MDAwM0FDOEQgLyog
U3R5bGVkRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQzVFQjhCODBFODIwMUJEMDBC
MjU5NjUgLyogU3R5bGVEZXByZWNhdGVkRmxleGlibGVCb3hEYXRhLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCUFBNEMzQTc2MEIyQjE2NzkwMDIzMzRBMiAvKiBJbmxpbmVTdHlsZVNoZWV0T3duZXIu
Y3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yOTIwOSw3ICsyODk5MSw2IEBACiAJCQkJQkNERjMxN0Ix
MUY4RDY4MzAwM0M1QkY4IC8qIFVzZXJUeXBpbmdHZXN0dXJlSW5kaWNhdG9yLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTFGQUZCRjE4MTVBNUZBNkUwMDA4M0EyMCAvKiBVVElVdGlsaXRpZXMubW0g
aW4gU291cmNlcyAqLywKIAkJCQkyRTNCQkYwNzExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5jcHAg
aW4gU291cmNlcyAqLywKLQkJCQk1MEQzMjg1NzE2M0IzMTNGMDAxNjExMUUgLyogVmFsaWRhdGVk
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxRkUxMzc0MTg0
MDJBNjcwMDg5MkYxMyAvKiBDb21tb25DcnlwdG9VdGlsaXRpZXMuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJRjVBMTU0MjcxMjc5NTM0RDAwRDBCMEMwIC8qIFZhbGlkYXRpb25NZXNzYWdlLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUZEMzE2MEFFMTJCMDI2RjcwMEMxQTM1OSAvKiBWZWN0b3JNYXRo
LmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjkyODAsMTkgKzI5MDYxLDE0IEBACiAJCQkJMzFDMEZG
MjEwRTRDRUI2RTAwN0Q2RkU1IC8qIFdlYktpdEFuaW1hdGlvbkV2ZW50LmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTA3RkU5OURDMTg4MDdBN0QwMDI1NjY0OCAvKiBIVE1MTWVkaWFTZXNzaW9uLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTk3NkQ2QzdCMTIyQjhBM0QwMDFGRDFGNyAvKiBXZWJLaXRC
bG9iQnVpbGRlci5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkxNTBCOTIzOTE1RjA4REM0MDBFMTA5
ODYgLyogV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcCBpbiBTb3VyY2VzICovLAotCQkJ
CUEyRThBRTMwMTZBNDhFMUMwMDZCQjNBQSAvKiBXZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUM1NUM3QkExMTcxOEFGQkEwMDEzMjdFNCAvKiBSZW5kZXJUaGVtZUlP
Uy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTMxMDYwMzZGMTQzMjdEMkUwMEFCRjRCQSAvKiBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTI4OEU3MjBFMzAwNUQ2
MDAzNjE5QUUgLyogV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMxMjg4RTc0MEUzMDA1RDYwMDM2MTlBRSAvKiBXZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcCBp
biBTb3VyY2VzICovLAotCQkJCUZCNzE5QzQwMTcyMzhDQUUwMDIyREUzNCAvKiBXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA3OEUwOTExMTdEMTRDRUUw
MDQyMEFBMSAvKiBSVENWb2lkUmVxdWVzdEltcGwuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTFG
RTEzNjQxODM0MzUxMTAwODkyRjEzIC8qIENyeXB0b0RpZ2VzdE1hYy5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk0OTgzOTE1ODBGMUU3NzY5MDBDMjM3ODIgLyogV2ViS2l0Q1NTTWF0cml4LmNwcCBp
biBTb3VyY2VzICovLAotCQkJCUEyNEJGNzdDMTVDQzNCQUYwMDMxOTFGMiAvKiBXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCThBQTYxQ0ZGMTQ0RDU5NUIw
MEYzNzM1MCAvKiBXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTUw
MzhCQzA3MTQ3MTFDREIwMDk1RTBEMSAvKiBXZWJLaXRDU1NTaGFkZXJWYWx1ZS5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlCQzlBREQ4MDBDQzQwOTIyMDAwOThDNEMgLyogV2ViS2l0Q1NTVHJhbnNm
b3JtVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJM0ZGRkY5QTgxNTlEOUE1NTAwMjBCQkQ1
IC8qIFdlYktpdENTU1ZpZXdwb3J0UnVsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQTE0MTRC
NTEzQTBGMDUwMDAxOTk5NkMgLyogV2ViS2l0Rm9udEZhbWlseU5hbWVzLmNwcCBpbiBTb3VyY2Vz
ICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDU1NSdWxlQ3Vz
dG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ1NTUnVsZUN1c3RvbS5jcHAK
aW5kZXggZGM5MDUzMC4uMzAwM2E3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNDU1NSdWxlQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0NTU1J1bGVDdXN0b20uY3BwCkBAIC00MywxMiArNDMsMTAgQEAKICNpbmNsdWRlICJKU0NT
U1N1cHBvcnRzUnVsZS5oIgogI2luY2x1ZGUgIkpTTm9kZS5oIgogI2luY2x1ZGUgIkpTU3R5bGVT
aGVldEN1c3RvbS5oIgotI2luY2x1ZGUgIkpTV2ViS2l0Q1NTRmlsdGVyUnVsZS5oIgogI2luY2x1
ZGUgIkpTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmgiCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NLZXlm
cmFtZXNSdWxlLmgiCiAjaW5jbHVkZSAiSlNXZWJLaXRDU1NSZWdpb25SdWxlLmgiCiAjaW5jbHVk
ZSAiSlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NGaWx0ZXJS
dWxlLmgiCiAjaW5jbHVkZSAiV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmgiCiAjaW5jbHVkZSAiV2Vi
S2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIgogI2luY2x1ZGUgIldlYktpdENTU1JlZ2lvblJ1bGUuaCIK
QEAgLTEyMiwxMSArMTIwLDYgQEAgSlNWYWx1ZSB0b0pTKEV4ZWNTdGF0ZSogZXhlYywgSlNET01H
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ1NTUnVsZSogcnVsZSkKICAgICAgICAgICAgIHdy
YXBwZXIgPSBDUkVBVEVfRE9NX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBDU1NIb3N0UnVs
ZSwgcnVsZSk7CiAgICAgICAgICAgICBicmVhazsKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICAgICAgY2FzZSBDU1NSdWxlOjpXRUJLSVRfRklMVEVSX1JVTEU6Ci0gICAgICAg
ICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9XUkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgV2Vi
S2l0Q1NTRmlsdGVyUnVsZSwgcnVsZSk7Ci0gICAgICAgICAgICBicmVhazsKLSNlbmRpZgogICAg
ICAgICBkZWZhdWx0OgogICAgICAgICAgICAgd3JhcHBlciA9IENSRUFURV9ET01fV1JBUFBFUihl
eGVjLCBnbG9iYWxPYmplY3QsIENTU1J1bGUsIHJ1bGUpOwogICAgIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ1NTVmFsdWVDdXN0b20uY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAKaW5kZXggZmVlZTAxNC4uMDUw
ZTRiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1
c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3Rv
bS5jcHAKQEAgLTM5LDExICszOSw2IEBACiAjaW5jbHVkZSAiV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
aCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkpTV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01peEZ1bmN0aW9uVmFs
dWUuaCIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFNWRykKICNpbmNsdWRlICJKU1NWR0NvbG9yLmgi
CiAjaW5jbHVkZSAiSlNTVkdQYWludC5oIgpAQCAtOTksMTAgKzk0LDYgQEAgSlNWYWx1ZSB0b0pT
KEV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ1NTVmFs
dWUqIHZhbHVlKQogICAgIGVsc2UgaWYgKHZhbHVlLT5pc1dlYktpdENTU0ZpbHRlclZhbHVlKCkp
CiAgICAgICAgIHdyYXBwZXIgPSBDUkVBVEVfRE9NX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0
LCBXZWJLaXRDU1NGaWx0ZXJWYWx1ZSwgdmFsdWUpOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19T
SEFERVJTKQotICAgIGVsc2UgaWYgKHZhbHVlLT5pc1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUo
KSkKLSAgICAgICAgd3JhcHBlciA9IENSRUFURV9ET01fV1JBUFBFUihleGVjLCBnbG9iYWxPYmpl
Y3QsIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUsIHZhbHVlKTsKLSNlbmRpZgogICAgIGVsc2Ug
aWYgKHZhbHVlLT5pc1ZhbHVlTGlzdCgpKQogICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9X
UkFQUEVSKGV4ZWMsIGdsb2JhbE9iamVjdCwgQ1NTVmFsdWVMaXN0LCB2YWx1ZSk7CiAjaWYgRU5B
QkxFKFNWRykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL29iamMvRE9NQ1NT
Lm1tIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvb2JqYy9ET01DU1MubW0KaW5kZXggMDdlOWUx
Zi4uOTBlNGRhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvb2JqYy9ET01D
U1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvb2JqYy9ET01DU1MubW0KQEAgLTUy
LDEwICs1Miw2IEBACiAjaW1wb3J0ICJET01XZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmgiCiAjaW1w
b3J0ICJET01XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oIgogCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotI2ltcG9ydCAiRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5oIgotI2VuZGlmCi0KICNpZiBF
TkFCTEUoQ1NTX0ZJTFRFUlMpCiAjaW1wb3J0ICJET01XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIgog
I2VuZGlmCkBAIC0xMjIsMTAgKzExOCw2IEBAIENsYXNzIGtpdENsYXNzKFdlYkNvcmU6OkNTU1J1
bGUqIGltcGwpCiAgICAgICAgIGNhc2UgRE9NX0hPU1RfUlVMRToKICAgICAgICAgICAgIHJldHVy
biBbRE9NQ1NTSG9zdFJ1bGUgY2xhc3NdOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KQotICAgICAgICBjYXNlIERPTV9XRUJLSVRfRklMVEVSX1JVTEU6Ci0gICAgICAgICAgICByZXR1
cm4gW0RPTVdlYktpdENTU0ZpbHRlclJ1bGUgY2xhc3NdOwotI2VuZGlmCiAgICAgfQogICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBuaWw7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IGNmMTZkYjMuLjM0
ODVhZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVj
bGFyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVj
bGFyYXRpb24uY3BwCkBAIC03MiwyMCArNzIsNyBAQAogI2luY2x1ZGUgIlNoYXBlVmFsdWUuaCIK
ICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
ckFycmF5UGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIu
aCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJD
dXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQYXJhbWV0ZXIu
aCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaCIKLSNpbmNsdWRl
ICJXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NNYXRG
dW5jdGlvblZhbHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIgot
I2VuZGlmCi0KICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCi0jaW5jbHVkZSAiU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtLmgiCiAjaW5jbHVkZSAiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCIKICNlbmRp
ZgogCkBAIC04NTEsNzIgKzgzOCw2IEBAIHN0YXRpYyBQYXNzUmVmPENTU1ZhbHVlPiBjb21wdXRl
ZFRyYW5zZm9ybShSZW5kZXJPYmplY3QqIHJlbmRlcmVyLCBjb25zdCBSZW5kZXJTCiAgICAgcmV0
dXJuIHN0ZDo6bW92ZShsaXN0KTsKIH0KIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLXN0YXRp
YyBQYXNzUmVmPFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZT4gdmFsdWVGb3JDdXN0b21GaWx0
ZXJBcnJheVBhcmFtZXRlcihjb25zdCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciogYXJyYXlQ
YXJhbWV0ZXIpCi17Ci0gICAgYXV0byBhcnJheVBhcmFtZXRlclZhbHVlID0gV2ViS2l0Q1NTQXJy
YXlGdW5jdGlvblZhbHVlOjpjcmVhdGUoKTsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwLCBzaXpl
ID0gYXJyYXlQYXJhbWV0ZXItPnNpemUoKTsgaSA8IHNpemU7ICsraSkKLSAgICAgICAgYXJyYXlQ
YXJhbWV0ZXJWYWx1ZS5nZXQoKS5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoYXJy
YXlQYXJhbWV0ZXItPnZhbHVlQXQoaSksIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKSk7
Ci0gICAgcmV0dXJuIGFycmF5UGFyYW1ldGVyVmFsdWU7Ci19Ci0KLXN0YXRpYyBQYXNzUmVmPFdl
YktpdENTU01hdEZ1bmN0aW9uVmFsdWU+IHZhbHVlRm9yQ3VzdG9tRmlsdGVyTWF0UGFyYW1ldGVy
KGNvbnN0IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKiBtYXRyaXhQYXJhbWV0ZXIpCi17Ci0g
ICAgYXV0byBtYXRyaXhQYXJhbWV0ZXJWYWx1ZSA9IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU6
OmNyZWF0ZSgpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDAsIHNpemUgPSBtYXRyaXhQYXJhbWV0
ZXItPnNpemUoKTsgaSA8IHNpemU7ICsraSkKLSAgICAgICAgbWF0cml4UGFyYW1ldGVyVmFsdWUu
Z2V0KCkuYXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKG1hdHJpeFBhcmFtZXRlci0+
dmFsdWVBdChpKSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpKTsKLSAgICByZXR1cm4g
bWF0cml4UGFyYW1ldGVyVmFsdWU7Ci19Ci0KLXN0YXRpYyBQYXNzUmVmPENTU1ZhbHVlTGlzdD4g
dmFsdWVGb3JDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcihjb25zdCBDdXN0b21GaWx0ZXJDb2xv
clBhcmFtZXRlciogY29sb3JQYXJhbWV0ZXIpCi17Ci0gICAgYXV0byBjb2xvclBhcmFtZXRlclZh
bHVlID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOwotICAgIGNvbG9yUGFy
YW1ldGVyVmFsdWUuZ2V0KCkuYXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUNvbG9yVmFsdWUo
Y29sb3JQYXJhbWV0ZXItPmNvbG9yKCkucmdiKCkpKTsKLSAgICByZXR1cm4gY29sb3JQYXJhbWV0
ZXJWYWx1ZTsKLX0KLQotc3RhdGljIFBhc3NSZWY8Q1NTVmFsdWVMaXN0PiB2YWx1ZUZvckN1c3Rv
bUZpbHRlck51bWJlclBhcmFtZXRlcihjb25zdCBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIq
IG51bWJlclBhcmFtZXRlcikKLXsKLSAgICBhdXRvIG51bWJlclBhcmFtZXRlclZhbHVlID0gQ1NT
VmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOwotICAgIGZvciAodW5zaWduZWQgaSA9
IDA7IGkgPCBudW1iZXJQYXJhbWV0ZXItPnNpemUoKTsgKytpKQotICAgICAgICBudW1iZXJQYXJh
bWV0ZXJWYWx1ZS5nZXQoKS5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUobnVtYmVy
UGFyYW1ldGVyLT52YWx1ZUF0KGkpLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwot
ICAgIHJldHVybiBudW1iZXJQYXJhbWV0ZXJWYWx1ZTsKLX0KLQotc3RhdGljIFBhc3NSZWY8V2Vi
S2l0Q1NTVHJhbnNmb3JtVmFsdWU+IHZhbHVlRm9yQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1l
dGVyKGNvbnN0IFJlbmRlck9iamVjdCogcmVuZGVyZXIsIGNvbnN0IFJlbmRlclN0eWxlKiBzdHls
ZSwgY29uc3QgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKiB0cmFuc2Zvcm1QYXJhbWV0
ZXIpCi17Ci0gICAgSW50U2l6ZSBzaXplOwotICAgIGlmIChyZW5kZXJlciAmJiByZW5kZXJlci0+
aXNCb3goKSkKLSAgICAgICAgc2l6ZSA9IHBpeGVsU25hcHBlZEludFJlY3QodG9SZW5kZXJCb3go
cmVuZGVyZXIpLT5ib3JkZXJCb3hSZWN0KCkpLnNpemUoKTsKLQotICAgIFRyYW5zZm9ybWF0aW9u
TWF0cml4IHRyYW5zZm9ybTsKLSAgICB0cmFuc2Zvcm1QYXJhbWV0ZXItPmFwcGx5VHJhbnNmb3Jt
KHRyYW5zZm9ybSwgc2l6ZSk7Ci0gICAgLy8gRklYTUU6IE5lZWQgdG8gcHJpbnQgb3V0IGluZGl2
aWR1YWwgZnVuY3Rpb25zIChodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjM5MjQpCi0gICAgcmV0dXJuIG1hdHJpeFRyYW5zZm9ybVZhbHVlKHRyYW5zZm9ybSwgc3R5bGUp
OwotfQotCi1zdGF0aWMgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gdmFsdWVGb3JDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXIoY29uc3QgUmVuZGVyT2JqZWN0KiByZW5kZXJlciwgY29uc3QgUmVuZGVyU3R5bGUq
IHN0eWxlLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIqIHBhcmFtZXRlcikKLXsKLSAgICAv
LyBGSVhNRTogQWRkIGhlcmUgY29tcHV0ZWQgc3R5bGUgZm9yIHRoZSBvdGhlciB0eXBlczogYm9v
bGVhbiwgdHJhbnNmb3JtLCBtYXRyaXgsIHRleHR1cmUuCi0gICAgQVNTRVJUKHBhcmFtZXRlcik7
Ci0gICAgc3dpdGNoIChwYXJhbWV0ZXItPnBhcmFtZXRlclR5cGUoKSkgewotICAgIGNhc2UgQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyOjpBUlJBWToKLSAgICAgICAgcmV0dXJuIHZhbHVlRm9yQ3VzdG9t
RmlsdGVyQXJyYXlQYXJhbWV0ZXIoc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6
Q09MT1I6Ci0gICAgICAgIHJldHVybiB2YWx1ZUZvckN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVy
KHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKj4ocGFyYW1ldGVy
KSk7Ci0gICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6Ok1BVFJJWDoKLSAgICAgICAgcmV0
dXJuIHZhbHVlRm9yQ3VzdG9tRmlsdGVyTWF0UGFyYW1ldGVyKHN0YXRpY19jYXN0PGNvbnN0IEN1
c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKj4ocGFyYW1ldGVyKSk7Ci0gICAgY2FzZSBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXI6Ok5VTUJFUjoKLSAgICAgICAgcmV0dXJuIHZhbHVlRm9yQ3VzdG9tRmls
dGVyTnVtYmVyUGFyYW1ldGVyKHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlck51bWJlclBh
cmFtZXRlcio+KHBhcmFtZXRlcikpOwotICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpU
UkFOU0ZPUk06Ci0gICAgICAgIHJldHVybiB2YWx1ZUZvckN1c3RvbUZpbHRlclRyYW5zZm9ybVBh
cmFtZXRlcihyZW5kZXJlciwgc3R5bGUsIHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlclRy
YW5zZm9ybVBhcmFtZXRlcio+KHBhcmFtZXRlcikpOwotICAgIH0KLSAgICAKLSAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gMDsKLX0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KIHN0YXRpYyBpbmxpbmUgUGFzc1JlZjxDU1NQcmltaXRpdmVWYWx1ZT4gYWRqdXN0
TGVuZ3RoRm9yWm9vbShkb3VibGUgbGVuZ3RoLCBjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUsIEFk
anVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSBhZGp1c3QpCiB7CiAgICAgcmV0dXJuIGFk
anVzdCA9PSBBZGp1c3RQaXhlbFZhbHVlcyA/IHpvb21BZGp1c3RlZFBpeGVsVmFsdWUobGVuZ3Ro
LCBzdHlsZSkgOiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShsZW5ndGgsIENTU1ByaW1pdGl2
ZVZhbHVlOjpDU1NfUFgpOwpAQCAtOTQ2LDExICs4NjcsOCBAQCBQYXNzUmVmUHRyPENTU1ZhbHVl
PiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclNoYWRvdyhjb25zdCBTaGFkb3dEYXRh
KiBzaAogfQogCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQotUGFzc1JlZjxDU1NWYWx1ZT4gQ29t
cHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JGaWx0ZXIoY29uc3QgUmVuZGVyT2JqZWN0KiBy
ZW5kZXJlciwgY29uc3QgUmVuZGVyU3R5bGUqIHN0eWxlLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25z
JiBmaWx0ZXJPcGVyYXRpb25zLCBBZGp1c3RQaXhlbFZhbHVlc0ZvckNvbXB1dGVkU3R5bGUgYWRq
dXN0KQorUGFzc1JlZjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JG
aWx0ZXIoY29uc3QgUmVuZGVyU3R5bGUqIHN0eWxlLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiBm
aWx0ZXJPcGVyYXRpb25zLCBBZGp1c3RQaXhlbFZhbHVlc0ZvckNvbXB1dGVkU3R5bGUgYWRqdXN0
KQogewotI2lmICFFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgVU5VU0VEX1BBUkFNKHJlbmRlcmVy
KTsKLSNlbmRpZgogICAgIGlmIChmaWx0ZXJPcGVyYXRpb25zLm9wZXJhdGlvbnMoKS5pc0VtcHR5
KCkpCiAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUo
Q1NTVmFsdWVOb25lKTsKIApAQCAtMTAzMCw3MCArOTQ4LDYgQEAgUGFzc1JlZjxDU1NWYWx1ZT4g
Q29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JGaWx0ZXIoY29uc3QgUmVuZGVyT2JqZWN0
KiByZW4KICAgICAgICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQodmFsdWVGb3JTaGFkb3coJnNo
YWRvd0RhdGEsIENTU1Byb3BlcnR5VGV4dFNoYWRvdywgc3R5bGUsIGFkanVzdCkpOwogICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAg
IGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOgotICAgICAgICAgICAgLy8g
VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIGlzIG5vdCBzdXBwb3NlZCB0byBlbmQgdXAg
aW4gdGhlIFJlbmRlclN0eWxlLgotICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0g
ICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTTog
ewotICAgICAgICAgICAgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKiBjdXN0b21PcGVyYXRpb24gPSBz
dGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJPcGVyYXRpb24qPihmaWx0ZXJPcGVyYXRpb24pOwotICAg
ICAgICAgICAgZmlsdGVyVmFsdWUgPSBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6Y3JlYXRlKFdlYktp
dENTU0ZpbHRlclZhbHVlOjpDdXN0b21GaWx0ZXJPcGVyYXRpb24pOwotICAgICAgICAgICAgCi0g
ICAgICAgICAgICAvLyBUaGUgb3V0cHV0IHNob3VsZCBiZSB2ZXJib3NlLCBldmVuIGlmIHRoZSB2
YWx1ZXMgYXJlIHRoZSBkZWZhdWx0IG9uZXMuCi0gICAgICAgICAgICAKLSAgICAgICAgICAgIEFT
U0VSVChjdXN0b21PcGVyYXRpb24tPnByb2dyYW0oKSk7Ci0gICAgICAgICAgICBTdHlsZUN1c3Rv
bUZpbHRlclByb2dyYW0qIHByb2dyYW0gPSBzdGF0aWNfY2FzdDxTdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW0qPihjdXN0b21PcGVyYXRpb24tPnByb2dyYW0oKSk7Ci0gICAgICAgICAgICAKLSAgICAg
ICAgICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IHNoYWRlcnNMaXN0ID0gQ1NTVmFsdWVMaXN0Ojpj
cmVhdGVTcGFjZVNlcGFyYXRlZCgpOwotICAgICAgICAgICAgaWYgKHByb2dyYW0tPnZlcnRleFNo
YWRlcigpKQotICAgICAgICAgICAgICAgIHNoYWRlcnNMaXN0LT5hcHBlbmQocHJvZ3JhbS0+dmVy
dGV4U2hhZGVyKCktPmNzc1ZhbHVlKCkpOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAg
ICAgIHNoYWRlcnNMaXN0LT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZh
bHVlKENTU1ZhbHVlTm9uZSkpOwotCi0gICAgICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJQcm9n
cmFtTWl4U2V0dGluZ3MgbWl4U2V0dGluZ3MgPSBwcm9ncmFtLT5taXhTZXR0aW5ncygpOwotICAg
ICAgICAgICAgaWYgKHByb2dyYW0tPmZyYWdtZW50U2hhZGVyKCkpIHsKLSAgICAgICAgICAgICAg
ICBpZiAocHJvZ3JhbS0+cHJvZ3JhbVR5cGUoKSA9PSBQUk9HUkFNX1RZUEVfQkxFTkRTX0VMRU1F
TlRfVEVYVFVSRSkgewotICAgICAgICAgICAgICAgICAgICBSZWZQdHI8V2ViS2l0Q1NTTWl4RnVu
Y3Rpb25WYWx1ZT4gbWl4RnVuY3Rpb24gPSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlOjpjcmVh
dGUoKTsKLSAgICAgICAgICAgICAgICAgICAgbWl4RnVuY3Rpb24tPmFwcGVuZChwcm9ncmFtLT5m
cmFnbWVudFNoYWRlcigpLT5jc3NWYWx1ZSgpKTsKLSAgICAgICAgICAgICAgICAgICAgbWl4RnVu
Y3Rpb24tPmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShtaXhTZXR0aW5ncy5ibGVu
ZE1vZGUpKTsKLSAgICAgICAgICAgICAgICAgICAgbWl4RnVuY3Rpb24tPmFwcGVuZChjc3NWYWx1
ZVBvb2woKS5jcmVhdGVWYWx1ZShtaXhTZXR0aW5ncy5jb21wb3NpdGVPcGVyYXRvcikpOwotICAg
ICAgICAgICAgICAgICAgICBzaGFkZXJzTGlzdC0+YXBwZW5kKG1peEZ1bmN0aW9uLnJlbGVhc2Uo
KSk7Ci0gICAgICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgICAgIHNoYWRlcnNM
aXN0LT5hcHBlbmQocHJvZ3JhbS0+ZnJhZ21lbnRTaGFkZXIoKS0+Y3NzVmFsdWUoKSk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgc2hhZGVyc0xpc3Qt
PmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25l
KSk7Ci0KLSAgICAgICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQoc2hhZGVyc0xpc3QucmVsZWFz
ZSgpKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbWVz
aFBhcmFtZXRlcnMgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAg
ICAgICAgICBtZXNoUGFyYW1ldGVycy0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVl
KGN1c3RvbU9wZXJhdGlvbi0+bWVzaENvbHVtbnMoKSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19O
VU1CRVIpKTsKLSAgICAgICAgICAgIG1lc2hQYXJhbWV0ZXJzLT5hcHBlbmQoY3NzVmFsdWVQb29s
KCkuY3JlYXRlVmFsdWUoY3VzdG9tT3BlcmF0aW9uLT5tZXNoUm93cygpLCBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTX05VTUJFUikpOwotICAgICAgICAgICAgCi0gICAgICAgICAgICAvLyBGSVhNRTog
VGhlIHNwZWNpZmljYXRpb24gZG9lc24ndCBoYXZlIGFueSAiYXR0YWNoZWQiIGlkZW50aWZpZXIu
IFNob3VsZCB3ZSBhZGQgb25lPwotICAgICAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTcyNzAwCi0gICAgICAgICAgICBpZiAoY3VzdG9tT3BlcmF0aW9u
LT5tZXNoVHlwZSgpID09IE1lc2hUeXBlRGV0YWNoZWQpCi0gICAgICAgICAgICAgICAgbWVzaFBh
cmFtZXRlcnMtPmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NT
VmFsdWVEZXRhY2hlZCkpOwotICAgICAgICAgICAgCi0gICAgICAgICAgICBmaWx0ZXJWYWx1ZS0+
YXBwZW5kKG1lc2hQYXJhbWV0ZXJzLnJlbGVhc2UoKSk7Ci0gICAgICAgICAgICAKLSAgICAgICAg
ICAgIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHBhcmFtZXRlcnMgPSBjdXN0b21P
cGVyYXRpb24tPnBhcmFtZXRlcnMoKTsKLSAgICAgICAgICAgIHNpemVfdCBwYXJhbWV0ZXJzU2l6
ZSA9IHBhcmFtZXRlcnMuc2l6ZSgpOwotICAgICAgICAgICAgaWYgKCFwYXJhbWV0ZXJzU2l6ZSkK
LSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+
IHBhcmFtZXRlcnNDU1NWYWx1ZSA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlQ29tbWFTZXBhcmF0ZWQo
KTsKLSAgICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcGFyYW1ldGVyc1NpemU7ICsr
aSkgewotICAgICAgICAgICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlciogcGFyYW1l
dGVyID0gcGFyYW1ldGVycy5hdChpKS5nZXQoKTsKLSAgICAgICAgICAgICAgICBSZWZQdHI8Q1NT
VmFsdWVMaXN0PiBwYXJhbWV0ZXJDU1NOYW1lQW5kVmFsdWUgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0
ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgICAgICAgICAgICAgcGFyYW1ldGVyQ1NTTmFtZUFuZFZh
bHVlLT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUocGFyYW1ldGVyLT5uYW1lKCks
IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfU1RSSU5HKSk7Ci0gICAgICAgICAgICAgICAgcGFyYW1l
dGVyQ1NTTmFtZUFuZFZhbHVlLT5hcHBlbmQodmFsdWVGb3JDdXN0b21GaWx0ZXJQYXJhbWV0ZXIo
cmVuZGVyZXIsIHN0eWxlLCBwYXJhbWV0ZXIpKTsKLSAgICAgICAgICAgICAgICBwYXJhbWV0ZXJz
Q1NTVmFsdWUtPmFwcGVuZChwYXJhbWV0ZXJDU1NOYW1lQW5kVmFsdWUucmVsZWFzZSgpKTsKLSAg
ICAgICAgICAgIH0KLSAgICAgICAgICAgIAotICAgICAgICAgICAgZmlsdGVyVmFsdWUtPmFwcGVu
ZChwYXJhbWV0ZXJzQ1NTVmFsdWUucmVsZWFzZSgpKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAg
ICAgICB9Ci0jZW5kaWYKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIGZpbHRlclZhbHVl
ID0gV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OmNyZWF0ZShXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6VW5r
bm93bkZpbHRlck9wZXJhdGlvbik7CiAgICAgICAgICAgICBicmVhazsKQEAgLTI5NjksNyArMjgy
Myw3IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnByb3Bl
cnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0CiAjZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0ZJ
TFRFUlMpCiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRGaWx0ZXI6Ci0gICAgICAgICAg
ICByZXR1cm4gdmFsdWVGb3JGaWx0ZXIocmVuZGVyZXIsIHN0eWxlLmdldCgpLCBzdHlsZS0+Zmls
dGVyKCkpOworICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yRmlsdGVyKHN0eWxlLmdldCgpLCBz
dHlsZS0+ZmlsdGVyKCkpOwogI2VuZGlmCiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAg
ICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJsZW5kTW9kZToKQEAgLTMwOTMsOSArMjk0Nyw2
IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnByb3BlcnR5
VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAg
ICAvKiBPdGhlciB1bmltcGxlbWVudGVkIHByb3BlcnRpZXMgKi8KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0gICAgICAgIGNhc2UgQ1NTUHJvcGVydHlHZW9tZXRyeToKLSNlbmRpZgogICAgICAg
ICBjYXNlIENTU1Byb3BlcnR5UGFnZTogLy8gZm9yIEBwYWdlCiAgICAgICAgIGNhc2UgQ1NTUHJv
cGVydHlRdW90ZXM6IC8vIEZJWE1FOiBuZWVkcyBpbXBsZW1lbnRhdGlvbgogICAgICAgICBjYXNl
IENTU1Byb3BlcnR5U2l6ZTogLy8gZm9yIEBwYWdlCkBAIC0zMTE2LDEwICsyOTY3LDYgQEAgUGFz
c1JlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZShD
U1NQcm9wZXJ0eUlEIHByb3BlcnQKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRyYW5z
Zm9ybU9yaWdpblg6CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRUcmFuc2Zvcm1Pcmln
aW5ZOgogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VHJhbnNmb3JtT3JpZ2luWjoKLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGNhc2UgQ1NTUHJvcGVydHlNaXg6Ci0gICAg
ICAgIGNhc2UgQ1NTUHJvcGVydHlQYXJhbWV0ZXJzOgotI2VuZGlmCiAgICAgICAgICAgICBicmVh
azsKIAogI2lmIEVOQUJMRShDU1NfREVWSUNFX0FEQVBUQVRJT04pCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmggYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgKaW5kZXggZWZmYTAzMS4uOTk4
MWNmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNs
YXJhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFy
YXRpb24uaApAQCAtNDEsMTEgKzQxLDYgQEAgY2xhc3MgU2hhZG93RGF0YTsKIGNsYXNzIFN0eWxl
UHJvcGVydGllczsKIGNsYXNzIFN0eWxlUHJvcGVydHlTaG9ydGhhbmQ7CiAKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi1jbGFzcyBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXI7Ci1jbGFzcyBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXI7Ci0jZW5kaWYKLQogZW51bSBFVXBkYXRlTGF5b3V0IHsgRG9O
b3RVcGRhdGVMYXlvdXQgPSBmYWxzZSwgVXBkYXRlTGF5b3V0ID0gdHJ1ZSB9OwogCiBlbnVtIEFk
anVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSB7IEFkanVzdFBpeGVsVmFsdWVzLCBEb05v
dEFkanVzdFBpeGVsVmFsdWVzIH07CkBAIC02NCw3ICs1OSw3IEBAIHB1YmxpYzoKICAgICBib29s
IHByb3BlcnR5TWF0Y2hlcyhDU1NQcm9wZXJ0eUlELCBjb25zdCBDU1NWYWx1ZSopIGNvbnN0Owog
CiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQotICAgIHN0YXRpYyBQYXNzUmVmPENTU1ZhbHVlPiB2
YWx1ZUZvckZpbHRlcihjb25zdCBSZW5kZXJPYmplY3QqLCBjb25zdCBSZW5kZXJTdHlsZSosIGNv
bnN0IEZpbHRlck9wZXJhdGlvbnMmLCBBZGp1c3RQaXhlbFZhbHVlc0ZvckNvbXB1dGVkU3R5bGUg
PSBBZGp1c3RQaXhlbFZhbHVlcyk7CisgICAgc3RhdGljIFBhc3NSZWY8Q1NTVmFsdWU+IHZhbHVl
Rm9yRmlsdGVyKGNvbnN0IFJlbmRlclN0eWxlKiwgY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYsIEFk
anVzdFBpeGVsVmFsdWVzRm9yQ29tcHV0ZWRTdHlsZSA9IEFkanVzdFBpeGVsVmFsdWVzKTsKICNl
bmRpZgogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1t
YXIueS5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkuaW4KaW5kZXggOGFhMGJj
My4uZWIxMWJlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueS5p
bgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55LmluCkBAIC0yOTEsMTUgKzI5
MSw2IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpc0NTU1Rva2VuQVN0cmluZyhpbnQgeXl0eXBlKQog
CiAjZW5kaWYKIAotI2lmIEVOQUJMRV9DU1NfU0hBREVSUwotCi0ldG9rZW4gV0VCS0lUX0ZJTFRF
Ul9SVUxFX1NZTQotCi0ldHlwZSA8cnVsZT4gZmlsdGVyCi0lZGVzdHJ1Y3RvciB7IGlmICgkJCkg
JCQtPmRlcmVmKCk7IH0gZmlsdGVyCi0KLSNlbmRpZgotCiAjaWYgRU5BQkxFX1NIQURPV19ET00K
IAogJXRva2VuIEhPU1RfU1lNCkBAIC00MjEsOSArNDEyLDYgQEAgdmFsaWRfcnVsZToKICNpZiBF
TkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OCiAgIHwgdmlld3BvcnQKICNlbmRpZgotI2lmIEVO
QUJMRV9DU1NfU0hBREVSUwotICB8IGZpbHRlcgotI2VuZGlmCiAgIDsKIAogcnVsZToKQEAgLTQ3
Miw5ICs0NjAsNiBAQCBibG9ja192YWxpZF9ydWxlOgogI2lmIEVOQUJMRV9DU1NfREVWSUNFX0FE
QVBUQVRJT04KICAgfCB2aWV3cG9ydAogI2VuZGlmCi0jaWYgRU5BQkxFX0NTU19TSEFERVJTCi0g
IHwgZmlsdGVyCi0jZW5kaWYKICAgOwogCiBibG9ja19ydWxlOiBibG9ja192YWxpZF9ydWxlIHwg
aW52YWxpZF9ydWxlIHsgJCQgPSBudWxscHRyOyB9IHwgaW52YWxpZF9hdCB7ICQkID0gbnVsbHB0
cjsgfSB8IG5hbWVzcGFjZSB7ICQkID0gbnVsbHB0cjsgfSB8IGltcG9ydCB8IHJlZ2lvbiA7CkBA
IC05NjUsMjQgKzk1MCw2IEBAIHJlZ2lvbjoKICAgICB9CiA7CiAKLSNpZiBFTkFCTEVfQ1NTX1NI
QURFUlMKLQotYmVmb3JlX2ZpbHRlcl9ydWxlOgotICAgIC8qIGVtcHR5ICovIHsKLSAgICAgICAg
cGFyc2VyLT5tYXJrUnVsZUhlYWRlclN0YXJ0KENTU1J1bGVTb3VyY2VEYXRhOjpGSUxURVJfUlVM
RSk7Ci0gICAgICAgIHBhcnNlci0+bV9pbkZpbHRlclJ1bGUgPSB0cnVlOwotICAgIH0KLSAgICA7
Ci0KLWZpbHRlcjoKLSAgICBiZWZvcmVfZmlsdGVyX3J1bGUgV0VCS0lUX0ZJTFRFUl9SVUxFX1NZ
TSBtYXliZV9zcGFjZSBJREVOVCBhdF9ydWxlX2hlYWRlcl9lbmRfbWF5YmVfc3BhY2UgJ3snIGF0
X3J1bGVfYm9keV9zdGFydCBtYXliZV9zcGFjZV9iZWZvcmVfZGVjbGFyYXRpb24gZGVjbGFyYXRp
b25fbGlzdCBjbG9zaW5nX2JyYWNlIHsKLSAgICAgICAgcGFyc2VyLT5tX2luRmlsdGVyUnVsZSA9
IGZhbHNlOwotICAgICAgICAkJCA9IHBhcnNlci0+Y3JlYXRlRmlsdGVyUnVsZSgkNCkubGVha1Jl
ZigpOwotICAgIH0KLSAgICA7Ci0KLSNlbmRpZgotCiBjb21iaW5hdG9yOgogICAgICcrJyBtYXli
ZV9zcGFjZSB7ICQkID0gQ1NTU2VsZWN0b3I6OkRpcmVjdEFkamFjZW50OyB9CiAgIHwgJ34nIG1h
eWJlX3NwYWNlIHsgJCQgPSBDU1NTZWxlY3Rvcjo6SW5kaXJlY3RBZGphY2VudDsgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUGFyc2VyLmNwcAppbmRleCA1YzFjMDU0Li4xNGUwN2NiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UGFyc2VyLmNwcApAQCAtMTAxLDEzICsxMDEsNiBAQAogI2luY2x1ZGUgIldlYktpdENTU0ZpbHRl
clZhbHVlLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJX
ZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NNYXRGdW5j
dGlvblZhbHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIgotI2lu
Y2x1ZGUgIldlYktpdENTU1NoYWRlclZhbHVlLmgiCi0jZW5kaWYKLQogI2lmIEVOQUJMRShEQVNI
Qk9BUkRfU1VQUE9SVCkKICNpbmNsdWRlICJEYXNoYm9hcmRSZWdpb24uaCIKICNlbmRpZgpAQCAt
MjUyLDcgKzI0NSw2IEBAIENTU1BhcnNlckNvbnRleHQ6OkNTU1BhcnNlckNvbnRleHQoQ1NTUGFy
c2VyTW9kZSBtb2RlLCBjb25zdCBVUkwmIGJhc2VVUkwpCiAgICAgOiBiYXNlVVJMKGJhc2VVUkwp
CiAgICAgLCBtb2RlKG1vZGUpCiAgICAgLCBpc0hUTUxEb2N1bWVudChmYWxzZSkKLSAgICAsIGlz
Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChmYWxzZSkKICAgICAsIGlzQ1NTU3RpY2t5UG9zaXRpb25F
bmFibGVkKGZhbHNlKQogICAgICwgaXNDU1NSZWdpb25zRW5hYmxlZChmYWxzZSkKICAgICAsIGlz
Q1NTQ29tcG9zaXRpbmdFbmFibGVkKGZhbHNlKQpAQCAtMjc0LDcgKzI2Niw2IEBAIENTU1BhcnNl
ckNvbnRleHQ6OkNTU1BhcnNlckNvbnRleHQoRG9jdW1lbnQmIGRvY3VtZW50LCBjb25zdCBVUkwm
IGJhc2VVUkwsIGNvbnN0CiAgICAgLCBjaGFyc2V0KGNoYXJzZXQpCiAgICAgLCBtb2RlKGRvY3Vt
ZW50LmluUXVpcmtzTW9kZSgpID8gQ1NTUXVpcmtzTW9kZSA6IENTU1N0cmljdE1vZGUpCiAgICAg
LCBpc0hUTUxEb2N1bWVudChkb2N1bWVudC5pc0hUTUxEb2N1bWVudCgpKQotICAgICwgaXNDU1ND
dXN0b21GaWx0ZXJFbmFibGVkKGRvY3VtZW50LnNldHRpbmdzKCkgPyBkb2N1bWVudC5zZXR0aW5n
cygpLT5pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoKSA6IGZhbHNlKQogICAgICwgaXNDU1NTdGlj
a3lQb3NpdGlvbkVuYWJsZWQoZG9jdW1lbnQuY3NzU3RpY2t5UG9zaXRpb25FbmFibGVkKCkpCiAg
ICAgLCBpc0NTU1JlZ2lvbnNFbmFibGVkKGRvY3VtZW50LmNzc1JlZ2lvbnNFbmFibGVkKCkpCiAg
ICAgLCBpc0NTU0NvbXBvc2l0aW5nRW5hYmxlZChkb2N1bWVudC5jc3NDb21wb3NpdGluZ0VuYWJs
ZWQoKSkKQEAgLTI5Nyw3ICsyODgsNiBAQCBib29sIG9wZXJhdG9yPT0oY29uc3QgQ1NTUGFyc2Vy
Q29udGV4dCYgYSwgY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgYikKICAgICAgICAgJiYgYS5jaGFy
c2V0ID09IGIuY2hhcnNldAogICAgICAgICAmJiBhLm1vZGUgPT0gYi5tb2RlCiAgICAgICAgICYm
IGEuaXNIVE1MRG9jdW1lbnQgPT0gYi5pc0hUTUxEb2N1bWVudAotICAgICAgICAmJiBhLmlzQ1NT
Q3VzdG9tRmlsdGVyRW5hYmxlZCA9PSBiLmlzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZAogICAgICAg
ICAmJiBhLmlzQ1NTU3RpY2t5UG9zaXRpb25FbmFibGVkID09IGIuaXNDU1NTdGlja3lQb3NpdGlv
bkVuYWJsZWQKICAgICAgICAgJiYgYS5pc0NTU1JlZ2lvbnNFbmFibGVkID09IGIuaXNDU1NSZWdp
b25zRW5hYmxlZAogICAgICAgICAmJiBhLmlzQ1NTQ29tcG9zaXRpbmdFbmFibGVkID09IGIuaXND
U1NDb21wb3NpdGluZ0VuYWJsZWQKQEAgLTMyNCw5ICszMTQsNiBAQCBDU1NQYXJzZXI6OkNTU1Bh
cnNlcihjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBjb250ZXh0KQogICAgICwgbV9oYWRTeW50YWN0
aWNhbGx5VmFsaWRDU1NSdWxlKGZhbHNlKQogICAgICwgbV9sb2dFcnJvcnMoZmFsc2UpCiAgICAg
LCBtX2lnbm9yZUVycm9yc0luRGVjbGFyYXRpb24oZmFsc2UpCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgICwgbV9pbkZpbHRlclJ1bGUoZmFsc2UpCi0jZW5kaWYKICAgICAsIG1fZGVmYXVs
dE5hbWVzcGFjZShzdGFyQXRvbSkKICAgICAsIG1fcGFyc2VkVGV4dFByZWZpeExlbmd0aCgwKQog
ICAgICwgbV9wcm9wZXJ0eVJhbmdlKFVJTlRfTUFYLCBVSU5UX01BWCkKQEAgLTIyOTgsMjUgKzIy
ODUsOCBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BJZCwg
Ym9vbCBpbXBvcnRhbnQpCiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVNy
YzogLy8gT25seSB1c2VkIHdpdGhpbiBAZm9udC1mYWNlIGFuZCBALXdlYmtpdC1maWx0ZXIsIHNv
IGNhbm5vdCB1c2UgaW5oZXJpdCB8IGluaXRpYWwgb3IgYmUgIWltcG9ydGFudC4gVGhpcyBpcyBh
IGxpc3Qgb2YgdXJscyBvciBsb2NhbCByZWZlcmVuY2VzLgotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSAgICAgICAgaWYgKG1faW5GaWx0ZXJSdWxlKQotICAgICAgICAgICAgcmV0dXJuIHBhcnNl
RmlsdGVyUnVsZVNyYygpOwotI2VuZGlmCiAgICAgICAgIHJldHVybiBwYXJzZUZvbnRGYWNlU3Jj
KCk7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBDU1NQcm9wZXJ0eU1peDoK
LSAgICAgICAgLy8gVGhlIG1peCBwcm9wZXJ0eSBpcyBqdXN0IHN1cHBvcnRlZCBpbnNpZGUgb2Yg
YW4gQGZpbHRlciBydWxlLgotICAgICAgICBpZiAoIW1faW5GaWx0ZXJSdWxlKQotICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlOwotICAgICAgICByZXR1cm4gcGFyc2VGaWx0ZXJSdWxlTWl4KCk7Ci0g
ICAgY2FzZSBDU1NQcm9wZXJ0eVBhcmFtZXRlcnM6Ci0gICAgICAgIC8vIFRoZSBwYXJhbWV0ZXJz
IHByb3BlcnR5IGlzIGp1c3Qgc3VwcG9ydGVkIGluc2lkZSBvZiBhbiBAZmlsdGVyIHJ1bGUuCi0g
ICAgICAgIGlmICghbV9pbkZpbHRlclJ1bGUpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0g
ICAgICAgIHJldHVybiBwYXJzZUZpbHRlclJ1bGVQYXJhbWV0ZXJzKCk7Ci0jZW5kaWYKLQogICAg
IGNhc2UgQ1NTUHJvcGVydHlVbmljb2RlUmFuZ2U6CiAgICAgICAgIHJldHVybiBwYXJzZUZvbnRG
YWNlVW5pY29kZVJhbmdlKCk7CiAKQEAgLTI5MDAsMTAgKzI4NzAsNiBAQCBib29sIENTU1BhcnNl
cjo6cGFyc2VWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BJZCwgYm9vbCBpbXBvcnRhbnQpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICBjYXNlIENTU1Byb3BlcnR5UGFnZToKICAgICAgICAgcmV0
dXJuIHBhcnNlUGFnZShwcm9wSWQsIGltcG9ydGFudCk7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJT
KQotICAgIGNhc2UgQ1NTUHJvcGVydHlHZW9tZXRyeToKLSAgICAgICAgcmV0dXJuIG1faW5GaWx0
ZXJSdWxlID8gcGFyc2VHZW9tZXRyeShwcm9wSWQsIHZhbHVlLCBpbXBvcnRhbnQpIDogZmFsc2U7
Ci0jZW5kaWYKICAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFN0cmV0Y2g6CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eVRleHRMaW5lVGhyb3VnaDoKICAgICBjYXNlIENTU1Byb3BlcnR5VGV4dE92ZXJsaW5l
OgpAQCAtOTExNSw1ODkgKzkwODEsOCBAQCBzdGF0aWMgdm9pZCBmaWx0ZXJJbmZvRm9yTmFtZShj
b25zdCBDU1NQYXJzZXJTdHJpbmcmIG5hbWUsIFdlYktpdENTU0ZpbHRlclZhbHVlOgogICAgICAg
ICBmaWx0ZXJUeXBlID0gV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkRyb3BTaGFkb3dGaWx0ZXJPcGVy
YXRpb247CiAgICAgICAgIG1heGltdW1Bcmd1bWVudENvdW50ID0gNDsgIC8vIHgtb2Zmc2V0LCB5
LW9mZnNldCwgYmx1ci1yYWRpdXMsIGNvbG9yIC0tIHNwcmVhZCBhbmQgaW5zZXQgc3R5bGUgbm90
IGFsbG93ZWQuCiAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBlbHNlIGlmIChl
cXVhbElnbm9yaW5nQ2FzZShuYW1lLCAiY3VzdG9tKCIpKQotICAgICAgICBmaWx0ZXJUeXBlID0g
V2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkN1c3RvbUZpbHRlck9wZXJhdGlvbjsKLSNlbmRpZgotfQot
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotc3RhdGljIGJvb2wgYWNjZXB0Q29tbWFPcGVyYXRv
cihDU1NQYXJzZXJWYWx1ZUxpc3QqIGFyZ3NMaXN0KQotewotICAgIGlmIChDU1NQYXJzZXJWYWx1
ZSogYXJnID0gYXJnc0xpc3QtPmN1cnJlbnQoKSkgewotICAgICAgICBpZiAoIWlzQ29tbWEoYXJn
KSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgYXJnc0xpc3QtPm5leHQoKTsK
LSAgICB9Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLVBhc3NSZWZQdHI8V2ViS2l0Q1NTQXJyYXlG
dW5jdGlvblZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlQ3VzdG9tRmlsdGVyQXJyYXlGdW5jdGlvbihD
U1NQYXJzZXJWYWx1ZSogdmFsdWUpCi17Ci0gICAgQVNTRVJUKHZhbHVlLT51bml0ID09IENTU1Bh
cnNlclZhbHVlOjpGdW5jdGlvbiAmJiB2YWx1ZS0+ZnVuY3Rpb24pOwotCi0gICAgaWYgKCFlcXVh
bElnbm9yaW5nQ2FzZSh2YWx1ZS0+ZnVuY3Rpb24tPm5hbWUsICJhcnJheSgiKSkKLSAgICAgICAg
cmV0dXJuIDA7Ci0KLSAgICBDU1NQYXJzZXJWYWx1ZUxpc3QqIGFycmF5QXJnc1BhcnNlclZhbHVl
TGlzdCA9IHZhbHVlLT5mdW5jdGlvbi0+YXJncy5nZXQoKTsKLSAgICBpZiAoIWFycmF5QXJnc1Bh
cnNlclZhbHVlTGlzdCB8fCAhYXJyYXlBcmdzUGFyc2VyVmFsdWVMaXN0LT5zaXplKCkpCi0gICAg
ICAgIHJldHVybiAwOwotCi0gICAgLy8gYXJyYXkoKSB2YWx1ZXMgYXJlIGNvbW1hIHNlcGFyYXRl
ZC4KLSAgICBSZWZQdHI8V2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlPiBhcnJheUZ1bmN0aW9u
ID0gV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlOjpjcmVhdGUoKTsKLSAgICB3aGlsZSAodHJ1
ZSkgewotICAgICAgICAvLyBXZSBwYXJzZSBwYWlycyA8VmFsdWUsIENvbW1hPiBhdCBlYWNoIHN0
ZXAuCi0gICAgICAgIENTU1BhcnNlclZhbHVlKiBjdXJyZW50UGFyc2VyVmFsdWUgPSBhcnJheUFy
Z3NQYXJzZXJWYWx1ZUxpc3QtPmN1cnJlbnQoKTsKLSAgICAgICAgaWYgKCFjdXJyZW50UGFyc2Vy
VmFsdWUgfHwgIXZhbGlkVW5pdChjdXJyZW50UGFyc2VyVmFsdWUsIEZOdW1iZXIsIENTU1N0cmlj
dE1vZGUpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgUmVmUHRyPENTU1ZhbHVl
PiBhcnJheVZhbHVlID0gY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoY3VycmVudFBhcnNlclZh
bHVlLT5mVmFsdWUsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKTsKLSAgICAgICAgYXJy
YXlGdW5jdGlvbi0+YXBwZW5kKGFycmF5VmFsdWUucmVsZWFzZSgpKTsKLQotICAgICAgICBDU1NQ
YXJzZXJWYWx1ZSogbmV4dFBhcnNlclZhbHVlID0gYXJyYXlBcmdzUGFyc2VyVmFsdWVMaXN0LT5u
ZXh0KCk7Ci0gICAgICAgIGlmICghbmV4dFBhcnNlclZhbHVlKQotICAgICAgICAgICAgYnJlYWs7
Ci0KLSAgICAgICAgaWYgKCFpc0NvbW1hKG5leHRQYXJzZXJWYWx1ZSkpCi0gICAgICAgICAgICBy
ZXR1cm4gMDsKLQotICAgICAgICBhcnJheUFyZ3NQYXJzZXJWYWx1ZUxpc3QtPm5leHQoKTsKLSAg
ICB9Ci0KLSAgICByZXR1cm4gYXJyYXlGdW5jdGlvbjsKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlTWF0VmFsdWUoQ1NTUGFyc2VyVmFs
dWUqIHZhbHVlKQotewotICAgIGlmICh2YWx1ZS0+dW5pdCAhPSBDU1NQYXJzZXJWYWx1ZTo6RnVu
Y3Rpb24gfHwgIXZhbHVlLT5mdW5jdGlvbikKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICB1bnNp
Z25lZCBudW1iZXJPZlZhbHVlcyA9IDA7Ci0gICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKHZhbHVl
LT5mdW5jdGlvbi0+bmFtZSwgIm1hdDIoIikpCi0gICAgICAgIG51bWJlck9mVmFsdWVzID0gNDsK
LSAgICBlbHNlIGlmIChlcXVhbElnbm9yaW5nQ2FzZSh2YWx1ZS0+ZnVuY3Rpb24tPm5hbWUsICJt
YXQzKCIpKQotICAgICAgICBudW1iZXJPZlZhbHVlcyA9IDk7Ci0gICAgZWxzZSBpZiAoZXF1YWxJ
Z25vcmluZ0Nhc2UodmFsdWUtPmZ1bmN0aW9uLT5uYW1lLCAibWF0NCgiKSkKLSAgICAgICAgbnVt
YmVyT2ZWYWx1ZXMgPSAxNjsKLSAgICBlbHNlCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgQ1NT
UGFyc2VyVmFsdWVMaXN0KiBhcmdzID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdldCgpOwotICAg
IGlmICghYXJncyB8fCBhcmdzLT5zaXplKCkgIT0gKG51bWJlck9mVmFsdWVzICogMiAtIDEpKQot
ICAgICAgICByZXR1cm4gMDsKLQotICAgIFJlZlB0cjxXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVl
PiBtYXRWYWx1ZUxpc3QgPSBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlOjpjcmVhdGUoKTsKLSAg
ICBDU1NQYXJzZXJWYWx1ZSogYXJnID0gYXJncy0+Y3VycmVudCgpOwotICAgIHdoaWxlIChhcmcp
IHsKLSAgICAgICAgaWYgKCF2YWxpZFVuaXQoYXJnLCBGTnVtYmVyLCBDU1NTdHJpY3RNb2RlKSkK
LSAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBtYXRWYWx1ZUxpc3QtPmFwcGVuZChjc3NW
YWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShhcmctPmZWYWx1ZSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNT
U19OVU1CRVIpKTsKLSAgICAgICAgYXJnID0gYXJncy0+bmV4dCgpOwotCi0gICAgICAgIGlmICgh
YXJnKQotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgaWYgKCFpc0NvbW1hKGFyZykpCi0g
ICAgICAgICAgICByZXR1cm4gMDsKLQotICAgICAgICBhcmcgPSBhcmdzLT5uZXh0KCk7Ci0gICAg
fQotCi0gICAgaWYgKCFtYXRWYWx1ZUxpc3QgfHwgbWF0VmFsdWVMaXN0LT5sZW5ndGgoKSAhPSBu
dW1iZXJPZlZhbHVlcykKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICByZXR1cm4gbWF0VmFsdWVM
aXN0LnJlbGVhc2UoKTsKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVl
PiBDU1NQYXJzZXI6OnBhcnNlTWl4RnVuY3Rpb24oQ1NTUGFyc2VyVmFsdWUqIHZhbHVlKQotewot
ICAgIEFTU0VSVCh2YWx1ZS0+dW5pdCA9PSBDU1NQYXJzZXJWYWx1ZTo6RnVuY3Rpb24gJiYgdmFs
dWUtPmZ1bmN0aW9uKTsKLQotICAgIGlmICghZXF1YWxJZ25vcmluZ0Nhc2UodmFsdWUtPmZ1bmN0
aW9uLT5uYW1lLCAibWl4KCIpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIENTU1BhcnNlclZh
bHVlTGlzdCogYXJnc0xpc3QgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0gICAgaWYg
KCFhcmdzTGlzdCkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICB1bnNpZ25lZCBudW1BcmdzID0g
YXJnc0xpc3QtPnNpemUoKTsKLSAgICBpZiAobnVtQXJncyA8IDEgfHwgbnVtQXJncyA+IDMpCi0g
ICAgICAgIHJldHVybiAwOwotICAgIAotICAgIFJlZlB0cjxXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlPiBtaXhGdW5jdGlvbiA9IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU6OmNyZWF0ZSgpOwot
Ci0gICAgYm9vbCBoYXNCbGVuZE1vZGUgPSBmYWxzZTsKLSAgICBib29sIGhhc0FscGhhQ29tcG9z
aXRpbmcgPSBmYWxzZTsKLQotICAgIGZvciAoQ1NTUGFyc2VyVmFsdWUqIGFyZyA9IGFyZ3NMaXN0
LT5jdXJyZW50KCk7IGFyZzsgYXJnID0gYXJnc0xpc3QtPm5leHQoKSkgewotICAgICAgICBSZWZQ
dHI8Q1NTVmFsdWU+IHZhbHVlOwotCi0gICAgICAgIHVuc2lnbmVkIGFyZ051bWJlciA9IGFyZ3NM
aXN0LT5jdXJyZW50SW5kZXgoKTsKLSAgICAgICAgaWYgKCFhcmdOdW1iZXIpIHsKLSAgICAgICAg
ICAgIGlmIChhcmctPnVuaXQgPT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19VUkkpIHsKLSAgICAg
ICAgICAgICAgICBVUkwgc2hhZGVyVVJMID0gY29tcGxldGVVUkwoYXJnLT5zdHJpbmcpOwotICAg
ICAgICAgICAgICAgIHZhbHVlID0gV2ViS2l0Q1NTU2hhZGVyVmFsdWU6OmNyZWF0ZShzaGFkZXJV
Ukwuc3RyaW5nKCkpOwotICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgaWYgKGFyZ051bWJl
ciA9PSAxIHx8IGFyZ051bWJlciA9PSAyKSB7Ci0gICAgICAgICAgICBpZiAoIWhhc0JsZW5kTW9k
ZSAmJiBpc0JsZW5kTW9kZShhcmctPmlkKSkgewotICAgICAgICAgICAgICAgIGhhc0JsZW5kTW9k
ZSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgdmFsdWUgPSBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJ
ZGVudGlmaWVyVmFsdWUoYXJnLT5pZCk7Ci0gICAgICAgICAgICB9IGVsc2UgaWYgKCFoYXNBbHBo
YUNvbXBvc2l0aW5nICYmIGlzQ29tcG9zaXRlT3BlcmF0b3IoYXJnLT5pZCkpIHsKLSAgICAgICAg
ICAgICAgICBoYXNBbHBoYUNvbXBvc2l0aW5nID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB2YWx1
ZSA9IGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShhcmctPmlkKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgfQotCi0gICAgICAgIGlmICghdmFsdWUpCi0gICAgICAgICAgICBy
ZXR1cm4gMDsKLQotICAgICAgICBtaXhGdW5jdGlvbi0+YXBwZW5kKHZhbHVlLnJlbGVhc2UoKSk7
Ci0gICAgfQotCi0gICAgcmV0dXJuIG1peEZ1bmN0aW9uOwogfQogCi1QYXNzUmVmUHRyPENTU1Zh
bHVlTGlzdD4gQ1NTUGFyc2VyOjpwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcnMoQ1NTUGFyc2Vy
VmFsdWVMaXN0KiBhcmdzTGlzdCkKLXsKLSAgICAvLwotICAgIC8vIHBhcmFtczogICAgICBbPHBh
cmFtLWRlZj5bLDxwYXJhbS1kZWY+Kl1dCi0gICAgLy8gcGFyYW0tZGVmOiAgIDxwYXJhbS1uYW1l
PndzcDxwYXJhbS12YWx1ZT4KLSAgICAvLyBwYXJhbS1uYW1lOiAgPGlkZW50PgotICAgIC8vIHBh
cmFtLXZhbHVlOiB0cnVlfGZhbHNlW3dzcCt0cnVlfGZhbHNlXXswLTN9IHwKLSAgICAvLyAgICAg
ICAgICAgICAgPG51bWJlcj5bd3NwKzxudW1iZXI+XXswLTN9IHwKLSAgICAvLyAgICAgICAgICAg
ICAgPGFycmF5PiB8Ci0gICAgLy8gICAgICAgICAgICAgIDx0cmFuc2Zvcm0+IHwKLSAgICAvLyAg
ICAgICAgICAgICAgPHRleHR1cmUoPHVyaT4pPgotICAgIC8vIGFycmF5OiAnYXJyYXkoJzxudW1i
ZXI+W3dzcDxudW1iZXI+XSonKScKLSAgICAvLyBjc3MtM2QtdHJhbnNmb3JtOiA8dHJhbnNmb3Jt
LWZ1bmN0aW9uPjtbPHRyYW5zZm9ybS1mdW5jdGlvbj5dKgotICAgIC8vIHRyYW5zZm9ybTogICA8
Y3NzLTNkLXRyYW5zZm9ybT4gfCA8bWF0PgotICAgIC8vIG1hdDogICAgICAgICAnbWF0MignPG51
bWJlcj4oLDxudW1iZXI+KXszfScpJyB8IAotICAgIC8vICAgICAgICAgICAgICAnbWF0MygnPG51
bWJlcj4oLDxudW1iZXI+KXs4fScpJyB8IAotICAgIC8vICAgICAgICAgICAgICAnbWF0NCgnPG51
bWJlcj4oLDxudW1iZXI+KXsxNX0nKScgKQotICAgIC8vCi0KLSAgICBSZWZQdHI8Q1NTVmFsdWVM
aXN0PiBwYXJhbUxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZUNvbW1hU2VwYXJhdGVkKCk7Ci0K
LSAgICB3aGlsZSAoQ1NTUGFyc2VyVmFsdWUqIGFyZyA9IGFyZ3NMaXN0LT5jdXJyZW50KCkpIHsK
LSAgICAgICAgaWYgKGFyZy0+dW5pdCAhPSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX0lERU5UKQot
ICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFy
YW1ldGVyID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOwotICAgICAgICBw
YXJhbWV0ZXItPmFwcGVuZChjcmVhdGVQcmltaXRpdmVTdHJpbmdWYWx1ZShhcmcpKTsKLQotICAg
ICAgICBhcmcgPSBhcmdzTGlzdC0+bmV4dCgpOwotICAgICAgICBpZiAoIWFyZykKLSAgICAgICAg
ICAgIHJldHVybiAwOwotCi0gICAgICAgIFJlZlB0cjxDU1NWYWx1ZT4gcGFyYW1ldGVyVmFsdWU7
Ci0KLSAgICAgICAgaWYgKGFyZy0+dW5pdCA9PSBDU1NQYXJzZXJWYWx1ZTo6RnVuY3Rpb24gJiYg
YXJnLT5mdW5jdGlvbikgewotICAgICAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCBwYXJzaW5n
IGZvciB0aGUgb3RoZXIgcGFyYW1ldGVyIHR5cGVzLgotICAgICAgICAgICAgLy8gdGV4dHVyZXM6
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTQ0MgotICAgICAgICAg
ICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGFyZy0+ZnVuY3Rpb24tPm5hbWUsICJhcnJheSgiKSkg
ewotICAgICAgICAgICAgICAgIHBhcmFtZXRlclZhbHVlID0gcGFyc2VDdXN0b21GaWx0ZXJBcnJh
eUZ1bmN0aW9uKGFyZyk7Ci0gICAgICAgICAgICAgICAgLy8gVGhpcyBwYXJzaW5nIHN0ZXAgb25s
eSBjb25zdW1lcyBmdW5jdGlvbiBhcmd1bWVudHMsCi0gICAgICAgICAgICAgICAgLy8gYXJnc0xp
c3QgaXMgdGhlcmVmb3JlIG1vdmVkIGZvcndhcmQgZXhwbGljaXRlbHkuCi0gICAgICAgICAgICAg
ICAgYXJnc0xpc3QtPm5leHQoKTsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAg
ICAgLy8gUGFyc2UgbWF0MiwgbWF0MyBhbmQgbWF0NCBmdW5jdGlvbnMuCi0gICAgICAgICAgICAg
ICAgcGFyYW1ldGVyVmFsdWUgPSBwYXJzZU1hdFZhbHVlKGFyZyk7Ci0gICAgICAgICAgICAgICAg
aWYgKCFwYXJhbWV0ZXJWYWx1ZSAmJiBhcmcpCi0gICAgICAgICAgICAgICAgICAgIHBhcmFtZXRl
clZhbHVlID0gcGFyc2VDdXN0b21GaWx0ZXJUcmFuc2Zvcm0oYXJnc0xpc3QpOwotICAgICAgICAg
ICAgICAgIGVsc2UgaWYgKHBhcmFtZXRlclZhbHVlKQotICAgICAgICAgICAgICAgICAgICBhcmdz
TGlzdC0+bmV4dCgpOwotICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgaWYgKHZhbGlkVW5p
dChhcmcsIEZOdW1iZXIsIENTU1N0cmljdE1vZGUpKSB7Ci0gICAgICAgICAgICBSZWZQdHI8Q1NT
VmFsdWVMaXN0PiBwYXJhbVZhbHVlTGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBh
cmF0ZWQoKTsKLSAgICAgICAgICAgIHdoaWxlIChhcmcpIHsKLSAgICAgICAgICAgICAgICAvLyBJ
ZiB3ZSBoaXQgYSBjb21tYSwgaXQgbWVhbnMgdGhhdCB3ZSBmaW5pc2hlZCB0aGlzIHBhcmFtZXRl
cidzIHZhbHVlcy4KLSAgICAgICAgICAgICAgICBpZiAoaXNDb21tYShhcmcpKQotICAgICAgICAg
ICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICBpZiAoIXZhbGlkVW5pdChhcmcsIEZO
dW1iZXIsIENTU1N0cmljdE1vZGUpKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKLSAg
ICAgICAgICAgICAgICBwYXJhbVZhbHVlTGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0
ZVZhbHVlKGFyZy0+ZlZhbHVlLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwotICAg
ICAgICAgICAgICAgIGFyZyA9IGFyZ3NMaXN0LT5uZXh0KCk7Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgICAgICBpZiAoIXBhcmFtVmFsdWVMaXN0LT5sZW5ndGgoKSB8fCBwYXJhbVZhbHVlTGlzdC0+
bGVuZ3RoKCkgPiA0KQotICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgcGFy
YW1ldGVyVmFsdWUgPSBwYXJhbVZhbHVlTGlzdC5yZWxlYXNlKCk7Ci0gICAgICAgIH0KLSAgICAg
ICAgaWYgKCFwYXJhbWV0ZXJWYWx1ZSAmJiBhcmcpIHsKLSAgICAgICAgICAgIC8vIEFsbCBwYXJh
bWV0ZXIgdmFsdWVzIG5lZWQgdG8gYmUgQ1NTVmFsdWVMaXN0cy4KLSAgICAgICAgICAgIFJlZlB0
cjxDU1NWYWx1ZUxpc3Q+IHBhcmFtVmFsdWVMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFj
ZVNlcGFyYXRlZCgpOwotICAgICAgICAgICAgUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb2xv
clZhbHVlID0gcGFyc2VDb2xvcihhcmcpOwotICAgICAgICAgICAgaWYgKCFjb2xvclZhbHVlKQot
ICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgcGFyYW1WYWx1ZUxpc3QtPmFw
cGVuZChjb2xvclZhbHVlLnJlbGVhc2UoKSk7Ci0gICAgICAgICAgICBwYXJhbWV0ZXJWYWx1ZSA9
IHBhcmFtVmFsdWVMaXN0LnJlbGVhc2UoKTsKLSAgICAgICAgICAgIGFyZyA9IGFyZ3NMaXN0LT5u
ZXh0KCk7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoIXBhcmFtZXRlclZhbHVlIHx8ICFhY2Nl
cHRDb21tYU9wZXJhdG9yKGFyZ3NMaXN0KSkKLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAg
ICAgIHBhcmFtZXRlci0+YXBwZW5kKHBhcmFtZXRlclZhbHVlLnJlbGVhc2UoKSk7Ci0gICAgICAg
IHBhcmFtTGlzdC0+YXBwZW5kKHBhcmFtZXRlci5yZWxlYXNlKCkpOwotICAgIH0KLQotICAgIHJl
dHVybiBwYXJhbUxpc3Q7ICAgCi19Ci0KLVBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+
IENTU1BhcnNlcjo6cGFyc2VDdXN0b21GaWx0ZXJGdW5jdGlvbldpdGhBdFJ1bGVSZWZlcmVuY2VT
eW50YXgoQ1NTUGFyc2VyVmFsdWUqIHZhbHVlKQotewotICAgIC8vCi0gICAgLy8gQ3VzdG9tIGZp
bHRlciBmdW5jdGlvbiAiYXQtcnVsZSByZWZlcmVuY2UiIHN5bnRheDoKLSAgICAvLwotICAgIC8v
IGN1c3RvbSg8ZmlsdGVyLW5hbWU+d3NwWyx3c3A8cGFyYW1zPl0pCi0gICAgLy8KLSAgICAvLyBm
aWx0ZXItbmFtZTogPGZpbHRlci1uYW1lPgotICAgIC8vIHBhcmFtczogU2VlIHRoZSBjb21tZW50
IGluIENTU1BhcnNlcjo6cGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzLgotICAgIC8vCi0KLSAg
ICBBU1NFUlQodmFsdWUtPmZ1bmN0aW9uKTsKLQotICAgIENTU1BhcnNlclZhbHVlTGlzdCogYXJn
c0xpc3QgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0gICAgaWYgKCFhcmdzTGlzdCB8
fCAhYXJnc0xpc3QtPnNpemUoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAvLyAxLiBQYXJz
ZSB0aGUgZmlsdGVyIG5hbWUuCi0gICAgQ1NTUGFyc2VyVmFsdWUqIGFyZyA9IGFyZ3NMaXN0LT5j
dXJyZW50KCk7Ci0gICAgaWYgKGFyZy0+dW5pdCAhPSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX0lE
RU5UKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIFJlZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1
ZT4gZmlsdGVyVmFsdWUgPSBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6Y3JlYXRlKFdlYktpdENTU0Zp
bHRlclZhbHVlOjpDdXN0b21GaWx0ZXJPcGVyYXRpb24pOwotCi0gICAgUmVmUHRyPENTU1ZhbHVl
PiBmaWx0ZXJOYW1lID0gY3JlYXRlUHJpbWl0aXZlU3RyaW5nVmFsdWUoYXJnKTsKLSAgICBmaWx0
ZXJWYWx1ZS0+YXBwZW5kKGZpbHRlck5hbWUpOwotICAgIGFyZ3NMaXN0LT5uZXh0KCk7Ci0KLSAg
ICBpZiAoIWFjY2VwdENvbW1hT3BlcmF0b3IoYXJnc0xpc3QpKQotICAgICAgICByZXR1cm4gMDsK
LQotICAgIC8vIDIuIFBhcnNlIHRoZSBwYXJhbWV0ZXJzLgotICAgIFJlZlB0cjxDU1NWYWx1ZUxp
c3Q+IHBhcmFtTGlzdCA9IHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhhcmdzTGlzdCk7Ci0g
ICAgaWYgKCFwYXJhbUxpc3QpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgaWYgKHBhcmFtTGlz
dC0+bGVuZ3RoKCkpCi0gICAgICAgIGZpbHRlclZhbHVlLT5hcHBlbmQocGFyYW1MaXN0LnJlbGVh
c2UoKSk7Ci0KLSAgICByZXR1cm4gZmlsdGVyVmFsdWU7Ci19Ci0KLS8vIEZJWE1FOiBUaGUgY3Vz
dG9tIGZpbHRlcnMgImlubGluZSIgc3ludGF4IGlzIGRlcHJlY2F0ZWQuIFdlIHdpbGwgcmVtb3Zl
IGl0IGV2ZW50dWFsbHkuCi1QYXNzUmVmUHRyPFdlYktpdENTU0ZpbHRlclZhbHVlPiBDU1NQYXJz
ZXI6OnBhcnNlQ3VzdG9tRmlsdGVyRnVuY3Rpb25XaXRoSW5saW5lU3ludGF4KENTU1BhcnNlclZh
bHVlKiB2YWx1ZSkKLXsKLSAgICAvLwotICAgIC8vIEN1c3RvbSBmaWx0ZXIgZnVuY3Rpb24gImlu
bGluZSIgc3ludGF4OgotICAgIC8vCi0gICAgLy8gY3VzdG9tKDx2ZXJ0ZXgtc2hhZGVyPlt3c3A8
ZnJhZ21lbnQtc2hhZGVyPl1bLDx2ZXJ0ZXgtbWVzaD5dWyw8cGFyYW1zPl0pCi0gICAgLy8KLSAg
ICAvLyB2ZXJ0ZXhTaGFkZXI6ICAgIDx1cmk+IHwgbm9uZQotICAgIC8vIGZyYWdtZW50U2hhZGVy
OiAgPHVyaT4gfCBub25lIHwgbWl4KDx1cmk+IFsgPGJsZW5kLW1vZGU+IHx8IDxhbHBoYS1jb21w
b3NpdGluZz4gXT8pCi0gICAgLy8KLSAgICAvLyBibGVuZC1tb2RlOiBub3JtYWwgfCBtdWx0aXBs
eSB8IHNjcmVlbiB8IG92ZXJsYXkgfCBkYXJrZW4gfCBsaWdodGVuIHwgY29sb3ItZG9kZ2UgfAot
ICAgIC8vICAgICAgICAgICAgIGNvbG9yLWJ1cm4gfCBoYXJkLWxpZ2h0IHwgc29mdC1saWdodCB8
IGRpZmZlcmVuY2UgfCBleGNsdXNpb24gfCBodWUgfAotICAgIC8vICAgICAgICAgICAgIHNhdHVy
YXRpb24gfCBjb2xvciB8IGx1bWlub3NpdHkKLSAgICAvLyBhbHBoYS1jb21wb3NpdGluZzogY2xl
YXIgfCBzcmMgfCBkc3QgfCBzcmMtb3ZlciB8IGRzdC1vdmVyIHwgc3JjLWluIHwgZHN0LWluIHwK
LSAgICAvLyAgICAgICAgICAgICAgICAgICAgc3JjLW91dCB8IGRzdC1vdXQgfCBzcmMtYXRvcCB8
IGRzdC1hdG9wIHwgeG9yIHwgcGx1cwotICAgIC8vCi0gICAgLy8gdmVydGV4TWVzaDogICs8aW50
ZWdlcj57MSwyfVt3c3A8Ym94Pl1bd3NwJ2RldGFjaGVkJ10KLSAgICAvLyBib3g6IGZpbHRlci1i
b3ggfCBib3JkZXItYm94IHwgcGFkZGluZy1ib3ggfCBjb250ZW50LWJveAotICAgIC8vCi0gICAg
Ly8gcGFyYW1zOiBTZWUgdGhlIGNvbW1lbnQgaW4gQ1NTUGFyc2VyOjpwYXJzZUN1c3RvbUZpbHRl
clBhcmFtZXRlcnMuCi0gICAgLy8KLQotICAgIEFTU0VSVCh2YWx1ZS0+ZnVuY3Rpb24pOwotCi0g
ICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzTGlzdCA9IHZhbHVlLT5mdW5jdGlvbi0+YXJncy5n
ZXQoKTsKLSAgICBpZiAoIWFyZ3NMaXN0KQotICAgICAgICByZXR1cm4gMDsKLQotICAgIFJlZlB0
cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gZmlsdGVyVmFsdWUgPSBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZTo6Y3JlYXRlKFdlYktpdENTU0ZpbHRlclZhbHVlOjpDdXN0b21GaWx0ZXJPcGVyYXRpb24pOwot
Ci0gICAgLy8gMS4gUGFyc2UgdGhlIHNoYWRlciBVUkxzOiA8dmVydGV4LXNoYWRlcj5bd3NwPGZy
YWdtZW50LXNoYWRlcj5dCi0gICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gc2hhZGVyc0xpc3QgPSBD
U1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgYm9vbCBoYWRBdExlYXN0
T25lQ3VzdG9tU2hhZGVyID0gZmFsc2U7Ci0gICAgQ1NTUGFyc2VyVmFsdWUqIGFyZzsKLSAgICBm
b3IgKGFyZyA9IGFyZ3NMaXN0LT5jdXJyZW50KCk7IGFyZzsgYXJnID0gYXJnc0xpc3QtPm5leHQo
KSkgewotICAgICAgICBSZWZQdHI8Q1NTVmFsdWU+IHZhbHVlOwotICAgICAgICBpZiAoYXJnLT5p
ZCA9PSBDU1NWYWx1ZU5vbmUpCi0gICAgICAgICAgICB2YWx1ZSA9IGNzc1ZhbHVlUG9vbCgpLmNy
ZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwotICAgICAgICBlbHNlIGlmIChhcmct
PnVuaXQgPT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19VUkkpIHsKLSAgICAgICAgICAgIFVSTCBz
aGFkZXJVUkwgPSBjb21wbGV0ZVVSTChhcmctPnN0cmluZyk7Ci0gICAgICAgICAgICB2YWx1ZSA9
IFdlYktpdENTU1NoYWRlclZhbHVlOjpjcmVhdGUoc2hhZGVyVVJMLnN0cmluZygpKTsKLSAgICAg
ICAgICAgIGhhZEF0TGVhc3RPbmVDdXN0b21TaGFkZXIgPSB0cnVlOwotICAgICAgICB9IGVsc2Ug
aWYgKGFyZ3NMaXN0LT5jdXJyZW50SW5kZXgoKSA9PSAxICYmIGFyZy0+dW5pdCA9PSBDU1NQYXJz
ZXJWYWx1ZTo6RnVuY3Rpb24pIHsKLSAgICAgICAgICAgIGlmICghKHZhbHVlID0gcGFyc2VNaXhG
dW5jdGlvbihhcmcpKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgICAgIGhh
ZEF0TGVhc3RPbmVDdXN0b21TaGFkZXIgPSB0cnVlOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYg
KCF2YWx1ZSkKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBzaGFkZXJzTGlzdC0+YXBwZW5k
KHZhbHVlLnJlbGVhc2UoKSk7Ci0gICAgfQotCi0gICAgaWYgKCFzaGFkZXJzTGlzdC0+bGVuZ3Ro
KCkgfHwgIWhhZEF0TGVhc3RPbmVDdXN0b21TaGFkZXIgfHwgc2hhZGVyc0xpc3QtPmxlbmd0aCgp
ID4gMiB8fCAhYWNjZXB0Q29tbWFPcGVyYXRvcihhcmdzTGlzdCkpCi0gICAgICAgIHJldHVybiAw
OwotICAgICAgICAKLSAgICBmaWx0ZXJWYWx1ZS0+YXBwZW5kKHNoYWRlcnNMaXN0LnJlbGVhc2Uo
KSk7Ci0gICAgCi0gICAgLy8gMi4gUGFyc2UgdGhlIG1lc2ggc2l6ZSA8dmVydGV4LW1lc2g+Ci0g
ICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbWVzaFNpemVMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVh
dGVTcGFjZVNlcGFyYXRlZCgpOwotICAgIAotICAgIGZvciAoYXJnID0gYXJnc0xpc3QtPmN1cnJl
bnQoKTsgYXJnOyBhcmcgPSBhcmdzTGlzdC0+bmV4dCgpKSB7Ci0gICAgICAgIGlmICghdmFsaWRV
bml0KGFyZywgRkludGVnZXIgfCBGTm9uTmVnLCBDU1NTdHJpY3RNb2RlKSkKLSAgICAgICAgICAg
IGJyZWFrOwotICAgICAgICBpbnQgaW50ZWdlclZhbHVlID0gY2xhbXBUb0ludGVnZXIoYXJnLT5m
VmFsdWUpOwotICAgICAgICAvLyBBY2NvcmRpbmcgdG8gdGhlIHNwZWNpZmljYXRpb24gd2UgY2Fu
IG9ubHkgYWNjZXB0IHBvc2l0aXZlIG5vbi16ZXJvIHZhbHVlcy4KLSAgICAgICAgaWYgKGludGVn
ZXJWYWx1ZSA8IDEpCi0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgbWVzaFNpemVMaXN0
LT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoaW50ZWdlclZhbHVlLCBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwotICAgIH0KLSAgICAKLSAgICBpZiAobWVzaFNpemVM
aXN0LT5sZW5ndGgoKSA+IDIpCi0gICAgICAgIHJldHVybiAwOwotICAgIAotICAgIC8vIEZJWE1F
OiBGb3IgbGVnYWN5IGNvbnRlbnQsIHdlIGFjY2VwdCB0aGUgbWVzaCBib3ggdHlwZXMuIFdlIGRv
bid0IGRvIGFueXRoaW5nIGVsc2Ugd2l0aCB0aGVtLgotICAgIC8vIEV2ZW50dWFsbHksIHdlJ2xs
IHJlbW92ZSB0aGVtIGNvbXBsZXRlbHkuCi0gICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEwMzc3OAotICAgIGlmICgoYXJnID0gYXJnc0xpc3QtPmN1cnJlbnQo
KSkgJiYgKGFyZy0+aWQgPT0gQ1NTVmFsdWVCb3JkZXJCb3ggfHwgYXJnLT5pZCA9PSBDU1NWYWx1
ZVBhZGRpbmdCb3gKLSAgICAgICAgfHwgYXJnLT5pZCA9PSBDU1NWYWx1ZUNvbnRlbnRCb3ggfHwg
YXJnLT5pZCA9PSBDU1NWYWx1ZUZpbHRlckJveCkpCi0gICAgICAgIGFyZ3NMaXN0LT5uZXh0KCk7
Ci0gICAgCi0gICAgaWYgKChhcmcgPSBhcmdzTGlzdC0+Y3VycmVudCgpKSAmJiBhcmctPmlkID09
IENTU1ZhbHVlRGV0YWNoZWQpIHsKLSAgICAgICAgbWVzaFNpemVMaXN0LT5hcHBlbmQoY3NzVmFs
dWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKGFyZy0+aWQpKTsKLSAgICAgICAgYXJnc0xp
c3QtPm5leHQoKTsKLSAgICB9Ci0gICAgCi0gICAgaWYgKG1lc2hTaXplTGlzdC0+bGVuZ3RoKCkp
IHsKLSAgICAgICAgaWYgKCFhY2NlcHRDb21tYU9wZXJhdG9yKGFyZ3NMaXN0KSkKLSAgICAgICAg
ICAgIHJldHVybiAwOwotICAgICAgICBmaWx0ZXJWYWx1ZS0+YXBwZW5kKG1lc2hTaXplTGlzdC5y
ZWxlYXNlKCkpOwotICAgIH0KLSAgICAKLSAgICAvLyAzLiBQYXJzZSB0aGUgcGFyYW1ldGVycy4K
LSAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJhbUxpc3QgPSBwYXJzZUN1c3RvbUZpbHRlclBh
cmFtZXRlcnMoYXJnc0xpc3QpOwotICAgIGlmICghcGFyYW1MaXN0KQotICAgICAgICByZXR1cm4g
MDsKLQotICAgIGlmIChwYXJhbUxpc3QtPmxlbmd0aCgpKQotICAgICAgICBmaWx0ZXJWYWx1ZS0+
YXBwZW5kKHBhcmFtTGlzdC5yZWxlYXNlKCkpOwotICAgIAotICAgIHJldHVybiBmaWx0ZXJWYWx1
ZTsKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gQ1NTUGFyc2VyOjpwYXJz
ZUN1c3RvbUZpbHRlckZ1bmN0aW9uKENTU1BhcnNlclZhbHVlKiB2YWx1ZSkKLXsKLSAgICBBU1NF
UlQodmFsdWUtPmZ1bmN0aW9uKTsKLQotICAgIC8vIExvb2sgYWhlYWQgdG8gZGV0ZXJtaW5lIHdo
aWNoIHN5bnRheCB0aGUgY3VzdG9tIGZ1bmN0aW9uIGlzIHVzaW5nLgotICAgIC8vIEJvdGggdGhl
IGF0LXJ1bGUgcmVmZXJlbmNlIHN5bnRheCBhbmQgdGhlIGlubGluZSBzeW50YXggcmVxdWlyZSBh
dCBsZWFzdCBvbmUgYXJndW1lbnQuCi0gICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzTGlzdCA9
IHZhbHVlLT5mdW5jdGlvbi0+YXJncy5nZXQoKTsKLSAgICBpZiAoIWFyZ3NMaXN0IHx8ICFhcmdz
TGlzdC0+c2l6ZSgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIC8vIFRoZSBhdC1ydWxlIHJl
ZmVyZW5jZSBzeW50YXggZXhwZWN0cyBhIHNpbmdsZSBpZGVudCBvciBhbiBpZGVudCBmb2xsb3dl
ZCBieSBhIGNvbW1hLiAKLSAgICAvLyBlLmcuIGN1c3RvbShteS1maWx0ZXIpIG9yIGN1c3RvbSht
eS1maWx0ZXIsIC4uLikKLSAgICAvLyBJbiBjb250cmFzdCwgd2hlbiB0aGUgaW5saW5lIHN5bnRh
eCBzdGFydHMgd2l0aCBhbiBpZGVudCBsaWtlICJub25lIiwgaXQgZXhwZWN0cyBhIHVyaSBvciBh
IG1peCBmdW5jdGlvbiBuZXh0LgotICAgIC8vIGUuZy4gY3VzdG9tKG5vbmUgdXJsKC4uLikpIG9y
IGN1c3RvbShub25lIG1peCguLi4pCi0gICAgYm9vbCBpc0F0UnVsZVJlZmVyZW5jZVN5bnRheCA9
IGFyZ3NMaXN0LT52YWx1ZUF0KDApLT51bml0ID09IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfSURF
TlQgCi0gICAgICAgICYmIChhcmdzTGlzdC0+c2l6ZSgpID09IDEgfHwgaXNDb21tYShhcmdzTGlz
dC0+dmFsdWVBdCgxKSkpOwotICAgIHJldHVybiBpc0F0UnVsZVJlZmVyZW5jZVN5bnRheCA/IHBh
cnNlQ3VzdG9tRmlsdGVyRnVuY3Rpb25XaXRoQXRSdWxlUmVmZXJlbmNlU3ludGF4KHZhbHVlKSA6
IHBhcnNlQ3VzdG9tRmlsdGVyRnVuY3Rpb25XaXRoSW5saW5lU3ludGF4KHZhbHVlKTsKLX0KLQot
UGFzc1JlZlB0cjxDU1NWYWx1ZUxpc3Q+IENTU1BhcnNlcjo6cGFyc2VDdXN0b21GaWx0ZXJUcmFu
c2Zvcm0oQ1NTUGFyc2VyVmFsdWVMaXN0KiB2YWx1ZUxpc3QpCi17Ci0gICAgaWYgKCF2YWx1ZUxp
c3QpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgLy8gQ1NTIFNoYWRlcnMnIGN1c3RvbSgpIHRy
YW5zZm9ybXMgYXJlIHNwYWNlIHNlcGFyYXRlZCBhbmQgY29tbWEgdGVybWluYXRlZC4KLSAgICBS
ZWZQdHI8Q1NTVmFsdWVMaXN0PiBsaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFy
YXRlZCgpOwotICAgIGZvciAoQ1NTUGFyc2VyVmFsdWUqIHZhbHVlID0gdmFsdWVMaXN0LT5jdXJy
ZW50KCk7IHZhbHVlOyB2YWx1ZSA9IHZhbHVlTGlzdC0+bmV4dCgpKSB7Ci0gICAgICAgIGlmIChp
c0NvbW1hKHZhbHVlKSkKLSAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgIFJlZlB0cjxDU1NW
YWx1ZT4gcGFyc2VkVHJhbnNmb3JtVmFsdWUgPSBwYXJzZVRyYW5zZm9ybVZhbHVlKHZhbHVlKTsK
LSAgICAgICAgaWYgKCFwYXJzZWRUcmFuc2Zvcm1WYWx1ZSkKLSAgICAgICAgICAgIHJldHVybiAw
OwotCi0gICAgICAgIGxpc3QtPmFwcGVuZChwYXJzZWRUcmFuc2Zvcm1WYWx1ZS5yZWxlYXNlKCkp
OwotICAgIH0KLQotICAgIHJldHVybiBsaXN0LnJlbGVhc2UoKTsKLX0KLQotUGFzc1JlZlB0cjxX
ZWJLaXRDU1NTaGFkZXJWYWx1ZT4gQ1NTUGFyc2VyOjpwYXJzZUZpbHRlclJ1bGVTcmNVcmlBbmRG
b3JtYXQoQ1NTUGFyc2VyVmFsdWVMaXN0KiB2YWx1ZUxpc3QpCi17Ci0gICAgQ1NTUGFyc2VyVmFs
dWUqIHZhbHVlID0gdmFsdWVMaXN0LT5jdXJyZW50KCk7Ci0gICAgQVNTRVJUKHZhbHVlICYmIHZh
bHVlLT51bml0ID09IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfVVJJKTsKLSAgICBSZWZQdHI8V2Vi
S2l0Q1NTU2hhZGVyVmFsdWU+IHNoYWRlclZhbHVlID0gV2ViS2l0Q1NTU2hhZGVyVmFsdWU6OmNy
ZWF0ZShjb21wbGV0ZVVSTCh2YWx1ZS0+c3RyaW5nKSk7Ci0KLSAgICB2YWx1ZSA9IHZhbHVlTGlz
dC0+bmV4dCgpOwotICAgIGlmICh2YWx1ZSAmJiB2YWx1ZS0+dW5pdCA9PSBDU1NQYXJzZXJWYWx1
ZTo6RnVuY3Rpb24gJiYgZXF1YWxJZ25vcmluZ0Nhc2UodmFsdWUtPmZ1bmN0aW9uLT5uYW1lLCAi
Zm9ybWF0KCIpKSB7Ci0gICAgICAgIENTU1BhcnNlclZhbHVlTGlzdCogYXJncyA9IHZhbHVlLT5m
dW5jdGlvbi0+YXJncy5nZXQoKTsKLSAgICAgICAgaWYgKCFhcmdzIHx8IGFyZ3MtPnNpemUoKSAh
PSAxKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgQ1NTUGFyc2VyVmFsdWUqIGFy
ZyA9IGFyZ3MtPmN1cnJlbnQoKTsKLSAgICAgICAgaWYgKGFyZy0+dW5pdCAhPSBDU1NQcmltaXRp
dmVWYWx1ZTo6Q1NTX1NUUklORykKLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAgICAgIHNo
YWRlclZhbHVlLT5zZXRGb3JtYXQoYXJnLT5zdHJpbmcpOwotICAgICAgICB2YWx1ZUxpc3QtPm5l
eHQoKTsKLSAgICB9Ci0KLSAgICByZXR1cm4gc2hhZGVyVmFsdWUucmVsZWFzZSgpOwotfQotCi1i
b29sIENTU1BhcnNlcjo6cGFyc2VGaWx0ZXJSdWxlU3JjKCkKLXsKLSAgICBSZWZQdHI8Q1NTVmFs
dWVMaXN0PiBzcmNMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVDb21tYVNlcGFyYXRlZCgpOwot
Ci0gICAgQ1NTUGFyc2VyVmFsdWUqIHZhbHVlID0gbV92YWx1ZUxpc3QtPmN1cnJlbnQoKTsKLSAg
ICB3aGlsZSAodmFsdWUpIHsKLSAgICAgICAgaWYgKHZhbHVlLT51bml0ICE9IENTU1ByaW1pdGl2
ZVZhbHVlOjpDU1NfVVJJKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgIFJl
ZlB0cjxXZWJLaXRDU1NTaGFkZXJWYWx1ZT4gc2hhZGVyVmFsdWUgPSBwYXJzZUZpbHRlclJ1bGVT
cmNVcmlBbmRGb3JtYXQobV92YWx1ZUxpc3QuZ2V0KCkpOwotICAgICAgICBpZiAoIXNoYWRlclZh
bHVlKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBzcmNMaXN0LT5hcHBlbmQo
c2hhZGVyVmFsdWUucmVsZWFzZSgpKTsKLQotICAgICAgICBpZiAoIWFjY2VwdENvbW1hT3BlcmF0
b3IobV92YWx1ZUxpc3QuZ2V0KCkpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAg
ICAgIHZhbHVlID0gbV92YWx1ZUxpc3QtPmN1cnJlbnQoKTsKLSAgICB9Ci0KLSAgICBpZiAoIXNy
Y0xpc3QtPmxlbmd0aCgpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBhZGRQcm9wZXJ0
eShDU1NQcm9wZXJ0eVNyYywgc3JjTGlzdC5yZWxlYXNlKCksIG1faW1wb3J0YW50KTsKLSAgICBy
ZXR1cm4gdHJ1ZTsKLX0KLQotYm9vbCBDU1NQYXJzZXI6OnBhcnNlRmlsdGVyUnVsZU1peCgpCi17
Ci0gICAgaWYgKG1fdmFsdWVMaXN0LT5zaXplKCkgPiAyKQotICAgICAgICByZXR1cm4gZmFsc2U7
Ci0KLSAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBtaXhMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVh
dGVTcGFjZVNlcGFyYXRlZCgpOwotCi0gICAgYm9vbCBoYXNCbGVuZE1vZGUgPSBmYWxzZTsKLSAg
ICBib29sIGhhc0FscGhhQ29tcG9zaXRpbmcgPSBmYWxzZTsKLSAgICBDU1NQYXJzZXJWYWx1ZSog
dmFsdWUgPSBtX3ZhbHVlTGlzdC0+Y3VycmVudCgpOwotICAgIHdoaWxlICh2YWx1ZSkgewotICAg
ICAgICBSZWZQdHI8Q1NTVmFsdWU+IG1peFZhbHVlOwotICAgICAgICBpZiAoIWhhc0JsZW5kTW9k
ZSAmJiBpc0JsZW5kTW9kZSh2YWx1ZS0+aWQpKSB7Ci0gICAgICAgICAgICBoYXNCbGVuZE1vZGUg
PSB0cnVlOwotICAgICAgICAgICAgbWl4VmFsdWUgPSBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVu
dGlmaWVyVmFsdWUodmFsdWUtPmlkKTsKLSAgICAgICAgfSBlbHNlIGlmICghaGFzQWxwaGFDb21w
b3NpdGluZyAmJiBpc0NvbXBvc2l0ZU9wZXJhdG9yKHZhbHVlLT5pZCkpIHsKLSAgICAgICAgICAg
IGhhc0FscGhhQ29tcG9zaXRpbmcgPSB0cnVlOwotICAgICAgICAgICAgbWl4VmFsdWUgPSBjc3NW
YWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUodmFsdWUtPmlkKTsKLSAgICAgICAgfQot
Ci0gICAgICAgIGlmICghbWl4VmFsdWUpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAg
ICAgICAgbWl4TGlzdC0+YXBwZW5kKG1peFZhbHVlLnJlbGVhc2UoKSk7Ci0gICAgICAgIHZhbHVl
ID0gbV92YWx1ZUxpc3QtPm5leHQoKTsKLSAgICB9Ci0KLSAgICBhZGRQcm9wZXJ0eShDU1NQcm9w
ZXJ0eU1peCwgbWl4TGlzdC5yZWxlYXNlKCksIG1faW1wb3J0YW50KTsKLSAgICByZXR1cm4gdHJ1
ZTsKLX0KLQotYm9vbCBDU1NQYXJzZXI6OnBhcnNlR2VvbWV0cnkoQ1NTUHJvcGVydHlJRCBwcm9w
SWQsIENTU1BhcnNlclZhbHVlKiB2YWx1ZSwgYm9vbCBpbXBvcnRhbnQpCi17Ci0gICAgQVNTRVJU
KHByb3BJZCA9PSBDU1NQcm9wZXJ0eUdlb21ldHJ5KTsKLQotICAgIC8vIDxnZW9tZXRyeS1zaGFw
ZT4gPSBncmlkKDxpbnRlZ2VyPnsxLDJ9IHx8IFsgZGV0YWNoZWQgfCBhdHRhY2hlZCBdPykKLSAg
ICBpZiAodmFsdWUtPnVuaXQgIT0gQ1NTUGFyc2VyVmFsdWU6OkZ1bmN0aW9uIHx8ICFlcXVhbEln
bm9yaW5nQ2FzZSh2YWx1ZS0+ZnVuY3Rpb24tPm5hbWUsICJncmlkKCIpKQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0KLSAgICBBU1NFUlQodmFsdWUtPmZ1bmN0aW9uLT5hcmdzKTsKLQotICAgIC8v
IGdyaWQoKSBmdW5jdGlvbiBzaG91bGQgaGF2ZSBmcm9tIDEgdG8gMyBhcmd1bWVudHMuCi0gICAg
dW5zaWduZWQgc2l6ZSA9IHZhbHVlLT5mdW5jdGlvbi0+YXJncy0+c2l6ZSgpOwotICAgIGlmICgh
c2l6ZSB8fCBzaXplID4gMykKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgQ1NTUGFyc2Vy
VmFsdWVMaXN0KiBncmlkUGFyc2VyVmFsdWVMaXN0ID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdl
dCgpOwotICAgIENTU1BhcnNlclZhbHVlKiBncmlkUGFyc2VyVmFsdWUgPSBncmlkUGFyc2VyVmFs
dWVMaXN0LT5jdXJyZW50KCk7Ci0gICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gZ2VvbWV0cnlMaXN0
ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOwotCi0gICAgYm9vbCBoYXNE
aW1lbnNpb25zID0gZmFsc2U7Ci0gICAgYm9vbCBoYXNDb25uZWN0aXZpdHkgPSBmYWxzZTsKLQot
ICAgIHdoaWxlIChncmlkUGFyc2VyVmFsdWUpIHsKLSAgICAgICAgaWYgKGhhc0RpbWVuc2lvbnMg
JiYgaGFzQ29ubmVjdGl2aXR5KSB7Ci0gICAgICAgICAgICBnZW9tZXRyeUxpc3QucmVsZWFzZSgp
OwotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKGdy
aWRQYXJzZXJWYWx1ZS0+aWQgPT0gQ1NTVmFsdWVBdHRhY2hlZCB8fCBncmlkUGFyc2VyVmFsdWUt
PmlkID09IENTU1ZhbHVlRGV0YWNoZWQpIHsKLSAgICAgICAgICAgIGhhc0Nvbm5lY3Rpdml0eSA9
IHRydWU7Ci0gICAgICAgICAgICBnZW9tZXRyeUxpc3QtPmFwcGVuZChjc3NWYWx1ZVBvb2woKS5j
cmVhdGVJZGVudGlmaWVyVmFsdWUoZ3JpZFBhcnNlclZhbHVlLT5pZCkpOwotICAgICAgICAgICAg
Z3JpZFBhcnNlclZhbHVlID0gZ3JpZFBhcnNlclZhbHVlTGlzdC0+bmV4dCgpOwotICAgICAgICB9
IGVsc2UgaWYgKCFoYXNEaW1lbnNpb25zICYmIHBhcnNlR3JpZERpbWVuc2lvbnMoZ3JpZFBhcnNl
clZhbHVlTGlzdCwgZ2VvbWV0cnlMaXN0KSkgewotICAgICAgICAgICAgaGFzRGltZW5zaW9ucyA9
IHRydWU7Ci0gICAgICAgICAgICBncmlkUGFyc2VyVmFsdWUgPSBncmlkUGFyc2VyVmFsdWVMaXN0
LT5jdXJyZW50KCk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBnZW9tZXRyeUxpc3Qu
cmVsZWFzZSgpOwotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICB9Ci0gICAgfQot
Ci0gICAgYWRkUHJvcGVydHkocHJvcElkLCBnZW9tZXRyeUxpc3QucmVsZWFzZSgpLCBpbXBvcnRh
bnQpOwotICAgIHJldHVybiBoYXNEaW1lbnNpb25zOwotfQotCi1ib29sIENTU1BhcnNlcjo6cGFy
c2VHcmlkRGltZW5zaW9ucyhDU1NQYXJzZXJWYWx1ZUxpc3QqIGFyZ3MsIFJlZlB0cjxDU1NWYWx1
ZUxpc3Q+JiBncmlkVmFsdWVMaXN0KQotewotICAgIEFTU0VSVChhcmdzKTsKLQotICAgIC8vIFRo
ZXJlIG11c3QgYmUgYXQgbGVhc3Qgb25lIHZhbGlkIG51bWVyaWMgdmFsdWUuCi0gICAgQ1NTUGFy
c2VyVmFsdWUqIGFyZyA9IGFyZ3MtPmN1cnJlbnQoKTsKLSAgICBpZiAoIWFyZyB8fCAhdmFsaWRV
bml0KGFyZywgRlBvc2l0aXZlSW50ZWdlcikpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAg
IC8vIEEgdmFsaWQgbnVtZXJpYyB2YWx1ZSBpcyBwYXJzZWQgYW5kIHRoZW4gd2UgbW92ZSBvbi4K
LSAgICBncmlkVmFsdWVMaXN0LT5hcHBlbmQoY3JlYXRlUHJpbWl0aXZlTnVtZXJpY1ZhbHVlKGFy
ZykpOwotICAgIGFyZyA9IGFyZ3MtPm5leHQoKTsKLQotICAgIC8vIElmIHRoZSBuZXh0IGFyZ3Vt
ZW50IGlzIG5vdCBudW1lcmljLCB3ZSBhcmUgZG9uZSBwYXJzaW5nIHRoZSBncmlkIGRpbWVuc2lv
bnMuCi0gICAgaWYgKCFhcmcgfHwgIXZhbGlkVW5pdChhcmcsIEZQb3NpdGl2ZUludGVnZXIpKQot
ICAgICAgICByZXR1cm4gdHJ1ZTsKLQotICAgIC8vIENvbW1pdCB0aGUgc2Vjb25kIG51bWVyaWMg
dmFsdWUgd2UgZm91bmQuCi0gICAgZ3JpZFZhbHVlTGlzdC0+YXBwZW5kKGNyZWF0ZVByaW1pdGl2
ZU51bWVyaWNWYWx1ZShhcmcpKTsKLSAgICBhcmdzLT5uZXh0KCk7Ci0gICAgcmV0dXJuIHRydWU7
Ci19Ci0KLWJvb2wgQ1NTUGFyc2VyOjpwYXJzZUZpbHRlclJ1bGVQYXJhbWV0ZXJzKCkKLXsKLSAg
ICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJhbXNMaXN0ID0gcGFyc2VDdXN0b21GaWx0ZXJQYXJh
bWV0ZXJzKG1fdmFsdWVMaXN0LmdldCgpKTsKLSAgICBpZiAoIXBhcmFtc0xpc3QpCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLQotICAgIGFkZFByb3BlcnR5KENTU1Byb3BlcnR5UGFyYW1ldGVycywg
cGFyYW1zTGlzdC5yZWxlYXNlKCksIG1faW1wb3J0YW50KTsKLSAgICByZXR1cm4gdHJ1ZTsKLX0K
LQotUGFzc1JlZlB0cjxTdHlsZVJ1bGVCYXNlPiBDU1NQYXJzZXI6OmNyZWF0ZUZpbHRlclJ1bGUo
Y29uc3QgQ1NTUGFyc2VyU3RyaW5nJiBmaWx0ZXJOYW1lKQotewotICAgIFJlZlB0cjxTdHlsZVJ1
bGVGaWx0ZXI+IHJ1bGUgPSBTdHlsZVJ1bGVGaWx0ZXI6OmNyZWF0ZShmaWx0ZXJOYW1lLCBjcmVh
dGVTdHlsZVByb3BlcnRpZXMoKSk7Ci0gICAgY2xlYXJQcm9wZXJ0aWVzKCk7Ci0gICAgcHJvY2Vz
c0FuZEFkZE5ld1J1bGVUb1NvdXJjZVRyZWVJZk5lZWRlZCgpOwotICAgIHJldHVybiBydWxlLnJl
bGVhc2UoKTsKLX0KLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQogUGFzc1JlZlB0
cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gQ1NTUGFyc2VyOjpwYXJzZUJ1aWx0aW5GaWx0ZXJBcmd1
bWVudHMoQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzLCBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6Rmls
dGVyT3BlcmF0aW9uVHlwZSBmaWx0ZXJUeXBlKQogewogICAgIFJlZlB0cjxXZWJLaXRDU1NGaWx0
ZXJWYWx1ZT4gZmlsdGVyVmFsdWUgPSBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6Y3JlYXRlKGZpbHRl
clR5cGUpOwpAQCAtOTgxOSwxOSArOTIwNCw2IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZUZpbHRl
cihDU1NQYXJzZXJWYWx1ZUxpc3QqIHZhbHVlTGlzdCwgUmVmUHRyPENTU1ZhbHVlPiYgcmVzCiAg
ICAgICAgICAgICBpZiAoZmlsdGVyVHlwZSA9PSBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6VW5rbm93
bkZpbHRlck9wZXJhdGlvbikKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgICAgICBpZiAoZmlsdGVyVHlwZSA9PSBXZWJLaXRD
U1NGaWx0ZXJWYWx1ZTo6Q3VzdG9tRmlsdGVyT3BlcmF0aW9uKSB7Ci0gICAgICAgICAgICAgICAg
Ly8gTWFrZSBzdXJlIHBhcnNpbmcgZmFpbHMgaWYgY3VzdG9tIGZpbHRlcnMgYXJlIGRpc2FibGVk
LgotICAgICAgICAgICAgICAgIGlmICghbV9jb250ZXh0LmlzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxl
ZCkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgIAot
ICAgICAgICAgICAgICAgIFJlZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gZmlsdGVyVmFsdWUg
PSBwYXJzZUN1c3RvbUZpbHRlckZ1bmN0aW9uKHZhbHVlKTsKLSAgICAgICAgICAgICAgICBpZiAo
IWZpbHRlclZhbHVlKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAg
ICAgICAgICAgbGlzdC0+YXBwZW5kKGZpbHRlclZhbHVlLnJlbGVhc2UoKSk7Ci0gICAgICAgICAg
ICAgICAgY29udGludWU7Ci0gICAgICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAgICAgIENTU1Bh
cnNlclZhbHVlTGlzdCogYXJncyA9IHZhbHVlLT5mdW5jdGlvbi0+YXJncy5nZXQoKTsKICAgICAg
ICAgICAgIGlmICghYXJncykKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0xMTQ5
MCwxNiArMTA4NjIsOCBAQCBpbmxpbmUgdm9pZCBDU1NQYXJzZXI6OmRldGVjdEF0VG9rZW4oaW50
IGxlbmd0aCwgYm9vbCBoYXNFc2NhcGUpCiAgICAgICAgICAgICAgICAgcmV0dXJuOwogCiAjaWYg
RU5BQkxFKENTU19SRUdJT05TKQotICAgICAgICAgICAgaWYgKGlzQVNDSUlBbHBoYUNhc2VsZXNz
RXF1YWwobmFtZVsxNF0sICduJykgJiYgaXNFcXVhbFRvQ1NTSWRlbnRpZmllcihuYW1lICsgMiwg
IndlYmtpdC1yZWdpbyIpKSB7CisgICAgICAgICAgICBpZiAoaXNBU0NJSUFscGhhQ2FzZWxlc3NF
cXVhbChuYW1lWzE0XSwgJ24nKSAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAyLCAi
d2Via2l0LXJlZ2lvIikpCiAgICAgICAgICAgICAgICAgbV90b2tlbiA9IFdFQktJVF9SRUdJT05f
UlVMRV9TWU07Ci0gICAgICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAgfQotI2VuZGlm
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICAgICAgaWYgKGlzQVNDSUlBbHBoYUNh
c2VsZXNzRXF1YWwobmFtZVsxNF0sICdyJykgJiYgaXNFcXVhbFRvQ1NTSWRlbnRpZmllcihuYW1l
ICsgMiwgIndlYmtpdC1maWx0ZSIpKSB7Ci0gICAgICAgICAgICAgICAgbV90b2tlbiA9IFdFQktJ
VF9GSUxURVJfUlVMRV9TWU07Ci0gICAgICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAg
fQogI2VuZGlmCiAgICAgICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQYXJzZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaAppbmRl
eCA0N2IwNWU2Li5hNjYzMWNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFy
c2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCkBAIC02NywxMyArNjcs
NiBAQCBjbGFzcyBTdHlsZUtleWZyYW1lOwogY2xhc3MgU3R5bGVTaGVldENvbnRlbnRzOwogY2xh
c3MgU3R5bGVkRWxlbWVudDsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLWNsYXNzIFdlYktp
dENTU0FycmF5RnVuY3Rpb25WYWx1ZTsKLWNsYXNzIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU7
Ci1jbGFzcyBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlOwotY2xhc3MgV2ViS2l0Q1NTU2hhZGVy
VmFsdWU7Ci0jZW5kaWYKLQogY2xhc3MgQ1NTUGFyc2VyIHsKICAgICBmcmllbmQgaW5saW5lIGlu
dCBjc3N5eWxleCh2b2lkKiwgQ1NTUGFyc2VyKik7CiAKQEAgLTI2MCwyMiArMjUzLDYgQEAgcHVi
bGljOgogCiAgICAgYm9vbCBwYXJzZUZpbHRlcihDU1NQYXJzZXJWYWx1ZUxpc3QqLCBSZWZQdHI8
Q1NTVmFsdWU+Jik7CiAgICAgUGFzc1JlZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gcGFyc2VC
dWlsdGluRmlsdGVyQXJndW1lbnRzKENTU1BhcnNlclZhbHVlTGlzdCosIFdlYktpdENTU0ZpbHRl
clZhbHVlOjpGaWx0ZXJPcGVyYXRpb25UeXBlKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0g
ICAgUGFzc1JlZlB0cjxXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlPiBwYXJzZU1hdFZhbHVlKENT
U1BhcnNlclZhbHVlKik7Ci0gICAgUGFzc1JlZlB0cjxXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVl
PiBwYXJzZU1peEZ1bmN0aW9uKENTU1BhcnNlclZhbHVlKik7Ci0gICAgUGFzc1JlZlB0cjxXZWJL
aXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+IHBhcnNlQ3VzdG9tRmlsdGVyQXJyYXlGdW5jdGlvbihD
U1NQYXJzZXJWYWx1ZSopOwotICAgIFBhc3NSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJzZUN1c3Rv
bUZpbHRlclRyYW5zZm9ybShDU1NQYXJzZXJWYWx1ZUxpc3QqKTsKLSAgICBQYXNzUmVmUHRyPENT
U1ZhbHVlTGlzdD4gcGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzKENTU1BhcnNlclZhbHVlTGlz
dCopOwotICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+IHBhcnNlQ3VzdG9tRmls
dGVyRnVuY3Rpb25XaXRoQXRSdWxlUmVmZXJlbmNlU3ludGF4KENTU1BhcnNlclZhbHVlKik7Ci0g
ICAgUGFzc1JlZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gcGFyc2VDdXN0b21GaWx0ZXJGdW5j
dGlvbldpdGhJbmxpbmVTeW50YXgoQ1NTUGFyc2VyVmFsdWUqKTsKLSAgICBQYXNzUmVmUHRyPFdl
YktpdENTU0ZpbHRlclZhbHVlPiBwYXJzZUN1c3RvbUZpbHRlckZ1bmN0aW9uKENTU1BhcnNlclZh
bHVlKik7Ci0gICAgYm9vbCBwYXJzZUZpbHRlclJ1bGVTcmMoKTsKLSAgICBib29sIHBhcnNlRmls
dGVyUnVsZU1peCgpOwotICAgIGJvb2wgcGFyc2VHZW9tZXRyeShDU1NQcm9wZXJ0eUlELCBDU1NQ
YXJzZXJWYWx1ZSosIGJvb2wpOwotICAgIGJvb2wgcGFyc2VHcmlkRGltZW5zaW9ucyhDU1NQYXJz
ZXJWYWx1ZUxpc3QqLCBSZWZQdHI8Q1NTVmFsdWVMaXN0PiYpOyAKLSAgICBib29sIHBhcnNlRmls
dGVyUnVsZVBhcmFtZXRlcnMoKTsKLSAgICBQYXNzUmVmUHRyPFdlYktpdENTU1NoYWRlclZhbHVl
PiBwYXJzZUZpbHRlclJ1bGVTcmNVcmlBbmRGb3JtYXQoQ1NTUGFyc2VyVmFsdWVMaXN0Kik7Ci0j
ZW5kaWYKICNlbmRpZgogCiAgICAgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gcGFyc2VDbGlwUGF0aCgp
OwpAQCAtMzM4LDkgKzMxNSw2IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUoU0hBRE9XX0RPTSkKICAg
ICBQYXNzUmVmUHRyPFN0eWxlUnVsZUJhc2U+IGNyZWF0ZUhvc3RSdWxlKFJ1bGVMaXN0Kik7CiAj
ZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgUGFzc1JlZlB0cjxTdHlsZVJ1bGVC
YXNlPiBjcmVhdGVGaWx0ZXJSdWxlKGNvbnN0IENTU1BhcnNlclN0cmluZyYpOwotI2VuZGlmCiAK
ICAgICB2b2lkIHN0YXJ0RGVjbGFyYXRpb25zRm9yTWFyZ2luQm94KCk7CiAgICAgdm9pZCBlbmRE
ZWNsYXJhdGlvbnNGb3JNYXJnaW5Cb3goKTsKQEAgLTM4OSwxMCArMzYzLDYgQEAgcHVibGljOgog
ICAgIGJvb2wgbV9sb2dFcnJvcnM7CiAgICAgYm9vbCBtX2lnbm9yZUVycm9yc0luRGVjbGFyYXRp
b247CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgYm9vbCBtX2luRmlsdGVyUnVsZTsK
LSNlbmRpZgotCiAgICAgQXRvbWljU3RyaW5nIG1fZGVmYXVsdE5hbWVzcGFjZTsKIAogICAgIC8v
IHRva2VuaXplciBtZXRob2RzIGFuZCBkYXRhCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUGFyc2VyTW9kZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlck1vZGUuaApp
bmRleCA2OTdhODM1Li4wMmUwNTI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UGFyc2VyTW9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJNb2RlLmgKQEAg
LTY0LDcgKzY0LDYgQEAgcHVibGljOgogICAgIFN0cmluZyBjaGFyc2V0OwogICAgIENTU1BhcnNl
ck1vZGUgbW9kZTsKICAgICBib29sIGlzSFRNTERvY3VtZW50OwotICAgIGJvb2wgaXNDU1NDdXN0
b21GaWx0ZXJFbmFibGVkOwogICAgIGJvb2wgaXNDU1NTdGlja3lQb3NpdGlvbkVuYWJsZWQ7CiAg
ICAgYm9vbCBpc0NTU1JlZ2lvbnNFbmFibGVkOwogICAgIGJvb2wgaXNDU1NDb21wb3NpdGluZ0Vu
YWJsZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5p
biBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCmluZGV4IDlkZmUxZDYu
LjJjNTgwNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVz
LmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCkBAIC0xMDks
OSArMTA5LDYgQEAgY3Vyc29yIFtJbmhlcml0ZWRdCiBlbXB0eS1jZWxscyBbSW5oZXJpdGVkXQog
ZmxvYXQKIGZvbnQtc3RyZXRjaAotI2lmIGRlZmluZWQoRU5BQkxFX0NTU19TSEFERVJTKSAmJiBF
TkFCTEVfQ1NTX1NIQURFUlMKLWdlb21ldHJ5Ci0jZW5kaWYKIGhlaWdodAogI2lmIGRlZmluZWQo
RU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikgJiYgRU5BQkxFX0NTU19JTUFHRV9PUklFTlRB
VElPTgogaW1hZ2Utb3JpZW50YXRpb24gW0luaGVyaXRlZF0KQEAgLTEzNSwxMCArMTMyLDYgQEAg
bWF4LWhlaWdodAogbWF4LXdpZHRoCiBtaW4taGVpZ2h0CiBtaW4td2lkdGgKLSNpZiBkZWZpbmVk
KEVOQUJMRV9DU1NfU0hBREVSUykgJiYgRU5BQkxFX0NTU19TSEFERVJTCi1taXgKLXBhcmFtZXRl
cnMKLSNlbmRpZgogb2JqZWN0LWZpdAogb3BhY2l0eQogLy8gSG9ub3IgLXdlYmtpdC1vcGFjaXR5
IGFzIGEgc3lub255bSBmb3Igb3BhY2l0eS4gVGhpcyB3YXMgdGhlIG9ubHkgc3ludGF4IHRoYXQg
d29ya2VkIGluIFNhZmFyaSAxLjEsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UHJvcGVydHlTb3VyY2VEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlTb3Vy
Y2VEYXRhLmgKaW5kZXggZGE3MWJlYi4uYzk5NWEwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1Byb3BlcnR5U291cmNlRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcm9wZXJ0eVNvdXJjZURhdGEuaApAQCAtOTMsOSArOTMsNiBAQCBzdHJ1Y3QgQ1NTUnVsZVNv
dXJjZURhdGEgOiBwdWJsaWMgUmVmQ291bnRlZDxDU1NSdWxlU291cmNlRGF0YT4gewogICAgICAg
ICBIT1NUX1JVTEUsCiAgICAgICAgIFZJRVdQT1JUX1JVTEUsCiAgICAgICAgIFNVUFBPUlRTX1JV
TEUsCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBGSUxURVJfUlVMRQotI2VuZGlm
CiAgICAgfTsKIAogICAgIHN0YXRpYyBQYXNzUmVmUHRyPENTU1J1bGVTb3VyY2VEYXRhPiBjcmVh
dGUoVHlwZSB0eXBlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGUuaCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlLmgKaW5kZXggNGM3ZWJkYi4uYTgwMzk5ZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTUnVsZS5oCkBAIC01OSw5ICs1OSw2IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUoQ1NT
X1JFR0lPTlMpCiAgICAgICAgIFdFQktJVF9SRUdJT05fUlVMRSA9IDE2LAogI2VuZGlmCi0jaWYg
RU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBXRUJLSVRfRklMVEVSX1JVTEUgPSAxNywKLSNl
bmRpZgogI2lmIEVOQUJMRShTSEFET1dfRE9NKQogICAgICAgICBIT1NUX1JVTEUgPSAxMDAxLAog
I2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUnVsZS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUnVsZS5pZGwKaW5kZXggZjRkNGU2ZS4uNTg5Zjg5NyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NSdWxlLmlkbApAQCAtNDYsOSArNDYsNiBAQAogI2lmIGRlZmluZWQoRU5BQkxFX0NT
U19SRUdJT05TKSAmJiBFTkFCTEVfQ1NTX1JFR0lPTlMKICAgICBjb25zdCB1bnNpZ25lZCBzaG9y
dCBXRUJLSVRfUkVHSU9OX1JVTEUgPSAxNjsKICNlbmRpZgotI2lmIGRlZmluZWQoRU5BQkxFX0NT
U19TSEFERVJTKSAmJiBFTkFCTEVfQ1NTX1NIQURFUlMKLSAgICBjb25zdCB1bnNpZ25lZCBzaG9y
dCBXRUJLSVRfRklMVEVSX1JVTEUgPSAxNzsKLSNlbmRpZgogI2lmIGRlZmluZWQoRU5BQkxFX1NI
QURPV19ET00pICYmIEVOQUJMRV9TSEFET1dfRE9NCiAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQg
SE9TVF9SVUxFID0gMTAwMTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAKaW5kZXggZGNk
ZTczNi4uNzYwZThkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwCkBAIC01NCwxMSArNTQsNyBA
QAogI2luY2x1ZGUgIkNTU1ZhbHVlTGlzdC5oIgogI2luY2x1ZGUgIlNWR0NvbG9yLmgiCiAjaW5j
bHVkZSAiU1ZHUGFpbnQuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUu
aCIKICNpbmNsdWRlICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENT
U01hdEZ1bmN0aW9uVmFsdWUuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVl
LmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaCIKICNpbmNsdWRlICJXZWJLaXRD
U1NUcmFuc2Zvcm1WYWx1ZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0yMjIsMTYgKzIx
OCw2IEBAIGJvb2wgQ1NTVmFsdWU6OmVxdWFscyhjb25zdCBDU1NWYWx1ZSYgb3RoZXIpIGNvbnN0
CiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQogICAgICAgICBjYXNlIFdlYktpdENTU0ZpbHRlckNs
YXNzOgogICAgICAgICAgICAgcmV0dXJuIGNvbXBhcmVDU1NWYWx1ZXM8V2ViS2l0Q1NTRmlsdGVy
VmFsdWU+KCp0aGlzLCBvdGhlcik7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBj
YXNlIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAgICAgICAgICAgcmV0dXJu
IGNvbXBhcmVDU1NWYWx1ZXM8V2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlPigqdGhpcywgb3Ro
ZXIpOwotICAgICAgICBjYXNlIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAg
ICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU+
KCp0aGlzLCBvdGhlcik7Ci0gICAgICAgIGNhc2UgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZUNs
YXNzOgotICAgICAgICAgICAgcmV0dXJuIGNvbXBhcmVDU1NWYWx1ZXM8V2ViS2l0Q1NTTWl4RnVu
Y3Rpb25WYWx1ZT4oKnRoaXMsIG90aGVyKTsKLSAgICAgICAgY2FzZSBXZWJLaXRDU1NTaGFkZXJD
bGFzczoKLSAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPFdlYktpdENTU1NoYWRl
clZhbHVlPigqdGhpcywgb3RoZXIpOwotI2VuZGlmCiAjZW5kaWYKICNpZiBFTkFCTEUoU1ZHKQog
ICAgICAgICBjYXNlIFNWR0NvbG9yQ2xhc3M6CkBAIC0zMjAsMTYgKzMwNiw2IEBAIFN0cmluZyBD
U1NWYWx1ZTo6Y3NzVGV4dCgpIGNvbnN0CiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQogICAgIGNh
c2UgV2ViS2l0Q1NTRmlsdGVyQ2xhc3M6CiAgICAgICAgIHJldHVybiB0b1dlYktpdENTU0ZpbHRl
clZhbHVlKHRoaXMpLT5jdXN0b21DU1NUZXh0KCk7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQot
ICAgIGNhc2UgV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIHJldHVy
biB0b1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSh0aGlzKS0+Y3VzdG9tQ1NTVGV4dCgpOwot
ICAgIGNhc2UgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAgICAgICByZXR1cm4g
dG9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlKHRoaXMpLT5jdXN0b21DU1NUZXh0KCk7Ci0gICAg
Y2FzZSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUodGhpcyktPmN1c3RvbUNTU1RleHQoKTsKLSAgICBjYXNl
IFdlYktpdENTU1NoYWRlckNsYXNzOgotICAgICAgICByZXR1cm4gdG9XZWJLaXRDU1NTaGFkZXJW
YWx1ZSh0aGlzKS0+Y3VzdG9tQ1NTVGV4dCgpOwotI2VuZGlmCiAjZW5kaWYKICNpZiBFTkFCTEUo
U1ZHKQogICAgIGNhc2UgU1ZHQ29sb3JDbGFzczoKQEAgLTQzOSwyMCArNDE1LDYgQEAgdm9pZCBD
U1NWYWx1ZTo6ZGVzdHJveSgpCiAgICAgY2FzZSBXZWJLaXRDU1NGaWx0ZXJDbGFzczoKICAgICAg
ICAgZGVsZXRlIHRvV2ViS2l0Q1NTRmlsdGVyVmFsdWUodGhpcyk7CiAgICAgICAgIHJldHVybjsK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBXZWJLaXRDU1NBcnJheUZ1bmN0aW9u
VmFsdWVDbGFzczoKLSAgICAgICAgZGVsZXRlIHRvV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVl
KHRoaXMpOwotICAgICAgICByZXR1cm47Ci0gICAgY2FzZSBXZWJLaXRDU1NNYXRGdW5jdGlvblZh
bHVlQ2xhc3M6Ci0gICAgICAgIGRlbGV0ZSB0b1dlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUodGhp
cyk7Ci0gICAgICAgIHJldHVybjsKLSAgICBjYXNlIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWVD
bGFzczoKLSAgICAgICAgZGVsZXRlIHRvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSh0aGlzKTsK
LSAgICAgICAgcmV0dXJuOwotICAgIGNhc2UgV2ViS2l0Q1NTU2hhZGVyQ2xhc3M6Ci0gICAgICAg
IGRlbGV0ZSB0b1dlYktpdENTU1NoYWRlclZhbHVlKHRoaXMpOwotICAgICAgICByZXR1cm47Ci0j
ZW5kaWYKICNlbmRpZgogI2lmIEVOQUJMRShTVkcpCiAgICAgY2FzZSBTVkdDb2xvckNsYXNzOgpA
QCAtNDc5LDE0ICs0NDEsNiBAQCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDU1NWYWx1ZTo6Y2xvbmVG
b3JDU1NPTSgpIGNvbnN0CiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQogICAgIGNhc2UgV2ViS2l0
Q1NTRmlsdGVyQ2xhc3M6CiAgICAgICAgIHJldHVybiB0b1dlYktpdENTU0ZpbHRlclZhbHVlKHRo
aXMpLT5jbG9uZUZvckNTU09NKCk7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2Ug
V2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dlYktp
dENTU0FycmF5RnVuY3Rpb25WYWx1ZSh0aGlzKS0+Y2xvbmVGb3JDU1NPTSgpOwotICAgIGNhc2Ug
V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAgICAgICByZXR1cm4gdG9XZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlKHRoaXMpLT5jbG9uZUZvckNTU09NKCk7Ci0gICAgY2FzZSBXZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIHJldHVybiB0b1dlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUodGhpcyktPmNsb25lRm9yQ1NTT00oKTsKLSNlbmRpZgogI2VuZGlmCiAg
ICAgY2FzZSBXZWJLaXRDU1NUcmFuc2Zvcm1DbGFzczoKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0
Q1NTVHJhbnNmb3JtVmFsdWUodGhpcyktPmNsb25lRm9yQ1NTT00oKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVl
LmgKaW5kZXggNjAwNTlkOS4uOTQyYjc5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmgKQEAgLTk2LDEy
ICs5Niw2IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAgICAgYm9vbCBpc0Zp
bHRlckltYWdlVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBGaWx0ZXJJbWFn
ZUNsYXNzOyB9CiAgICAgYm9vbCBpc1dlYktpdENTU0ZpbHRlclZhbHVlKCkgY29uc3QgeyByZXR1
cm4gbV9jbGFzc1R5cGUgPT0gV2ViS2l0Q1NTRmlsdGVyQ2xhc3M7IH0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgYm9vbCBpc1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSgpIGNvbnN0
IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZUNsYXNz
OyB9Ci0gICAgYm9vbCBpc1dlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUoKSBjb25zdCB7IHJldHVy
biBtX2NsYXNzVHlwZSA9PSBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlQ2xhc3M7IH0KLSAgICBi
b29sIGlzV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NU
eXBlID09IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWVDbGFzczsgfQotICAgIGJvb2wgaXNXZWJL
aXRDU1NTaGFkZXJWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IFdlYktpdENT
U1NoYWRlckNsYXNzOyB9Ci0jZW5kaWYKICNlbmRpZiAvLyBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAg
ICAgYm9vbCBpc0dyaWRUZW1wbGF0ZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUg
PT0gR3JpZFRlbXBsYXRlQ2xhc3M7IH0KICNpZiBFTkFCTEUoU1ZHKQpAQCAtMTY3LDkgKzE2MSw2
IEBAIHByb3RlY3RlZDoKICAgICAgICAgVW5pY29kZVJhbmdlQ2xhc3MsCiAgICAgICAgIExpbmVC
b3hDb250YWluQ2xhc3MsCiAgICAgICAgIENhbGN1bGF0aW9uQ2xhc3MsCi0jaWYgRU5BQkxFKENT
U19GSUxURVJTKSAmJiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIFdlYktpdENTU1NoYWRl
ckNsYXNzLAotI2VuZGlmCiAgICAgICAgIEdyaWRUZW1wbGF0ZUNsYXNzLAogI2lmIEVOQUJMRShT
VkcpCiAgICAgICAgIFNWR0NvbG9yQ2xhc3MsCkBAIC0xODMsMTEgKzE3NCw2IEBAIHByb3RlY3Rl
ZDoKICNlbmRpZgogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICAgICAgICAgV2ViS2l0Q1NTRmls
dGVyQ2xhc3MsCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBXZWJLaXRDU1NBcnJh
eUZ1bmN0aW9uVmFsdWVDbGFzcywKLSAgICAgICAgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZUNs
YXNzLAotICAgICAgICBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlQ2xhc3MsCi0jZW5kaWYKICNl
bmRpZgogICAgICAgICBXZWJLaXRDU1NUcmFuc2Zvcm1DbGFzcywKICAgICAgICAgLy8gRG8gbm90
IGFwcGVuZCBub24tbGlzdCBjbGFzcyB0eXBlcyBoZXJlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFs
dWVLZXl3b3Jkcy5pbgppbmRleCA3YWI2ODliLi5jMmFkODE2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVmFsdWVLZXl3b3Jkcy5pbgpAQCAtMTAxMCwxOCArMTAxMCw2IEBAIGFscGhhYmV0aWMKIGNv
YXJzZQogZmluZQogCi0jaWYgKGRlZmluZWQoRU5BQkxFX0NTU19GSUxURVJTKSAmJiBFTkFCTEVf
Q1NTX0ZJTFRFUlMpIHx8IChkZWZpbmVkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICYmIEVOQUJM
RV9DU1NfQ09NUE9TSVRJTkcpCi0vLyAtd2Via2l0LWZpbHRlcgotI2lmIGRlZmluZWQoRU5BQkxF
X0NTU19TSEFERVJTKSAmJiBFTkFCTEVfQ1NTX1NIQURFUlMKLS8vIHZhbHVlcyBmb3IgdGhlIGN1
c3RvbSgpIGZ1bmN0aW9uCi0vLyBib3JkZXItYm94Ci0vLyBwYWRkaW5nLWJveAotLy8gY29udGVu
dC1ib3gKLWF0dGFjaGVkCi1maWx0ZXItYm94Ci1kZXRhY2hlZAotI2VuZGlmIC8vIENTU19TSEFE
RVJTCi0jZW5kaWYgLy8gQ1NTX0ZJTFRFUlMKIC8vIGJsZW5kIG1vZGVzCiAvLyBub3JtYWwKIG11
bHRpcGx5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKaW5kZXggMmNmY2UyMi4uNjI4
MjViOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcApAQCAtMTQxLDI0ICsxNDEs
NiBAQAogI2luY2x1ZGUgIlN0eWxlQ2FjaGVkSW1hZ2VTZXQuaCIKICNlbmRpZgogCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmgi
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0
b21GaWx0ZXJDb25zdGFudHMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0
ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNsdWRlICJDdXN0
b21GaWx0ZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5o
IgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oIgotI2luY2x1ZGUg
IlN0eWxlQ2FjaGVkU2hhZGVyLmgiCi0jaW5jbHVkZSAiU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
LmgiCi0jaW5jbHVkZSAiU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCIKLSNpbmNsdWRl
ICJTdHlsZVBlbmRpbmdTaGFkZXIuaCIKLSNpbmNsdWRlICJTdHlsZVNoYWRlci5oIgotI2luY2x1
ZGUgIldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NTaGFk
ZXJWYWx1ZS5oIgotI2VuZGlmCi0KICNpZiBFTkFCTEUoREFTSEJPQVJEX1NVUFBPUlQpCiAjaW5j
bHVkZSAiRGFzaGJvYXJkUmVnaW9uLmgiCiAjZW5kaWYKQEAgLTI1Niw5ICsyMzgsNiBAQCBpbmxp
bmUgdm9pZCBTdHlsZVJlc29sdmVyOjpTdGF0ZTo6Y2xlYXIoKQogICAgIG1fcGFyZW50Tm9kZSA9
IG51bGxwdHI7CiAgICAgbV9yZWdpb25Gb3JTdHlsaW5nID0gbnVsbHB0cjsKICAgICBtX3BlbmRp
bmdJbWFnZVByb3BlcnRpZXMuY2xlYXIoKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAg
bV9oYXNQZW5kaW5nU2hhZGVycyA9IGZhbHNlOwotI2VuZGlmCiAjaWYgRU5BQkxFKENTU19GSUxU
RVJTKSAmJiBFTkFCTEUoU1ZHKQogICAgIG1fcGVuZGluZ1NWR0RvY3VtZW50cy5jbGVhcigpOwog
I2VuZGlmCkBAIC0zMTA3LDEwICszMDg2LDYgQEAgdm9pZCBTdHlsZVJlc29sdmVyOjphcHBseVBy
b3BlcnR5KENTU1Byb3BlcnR5SUQgaWQsIENTU1ZhbHVlKiB2YWx1ZSkKICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0V3JhcEZsb3c6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFdyYXBUaHJv
dWdoOgogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgQ1NTUHJvcGVy
dHlNaXg6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVBhcmFtZXRlcnM6Ci0jZW5kaWYKICAgICBjYXNl
IENTU1Byb3BlcnR5V2hpdGVTcGFjZToKICAgICBjYXNlIENTU1Byb3BlcnR5V2lkb3dzOgogICAg
IGNhc2UgQ1NTUHJvcGVydHlXaWR0aDoKQEAgLTM0MDIsMTAgKzMzNzcsNiBAQCBzdGF0aWMgRmls
dGVyT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIGZpbHRlck9wZXJhdGlvbkZvclR5cGUoV2ViS2l0
Q1NTRmlsdGVyVmFsdQogICAgICAgICByZXR1cm4gRmlsdGVyT3BlcmF0aW9uOjpCTFVSOwogICAg
IGNhc2UgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkRyb3BTaGFkb3dGaWx0ZXJPcGVyYXRpb246CiAg
ICAgICAgIHJldHVybiBGaWx0ZXJPcGVyYXRpb246OkRST1BfU0hBRE9XOwotI2lmIEVOQUJMRShD
U1NfU0hBREVSUykKLSAgICBjYXNlIFdlYktpdENTU0ZpbHRlclZhbHVlOjpDdXN0b21GaWx0ZXJP
cGVyYXRpb246Ci0gICAgICAgIHJldHVybiBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTTsKLSNlbmRp
ZgogICAgIGNhc2UgV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OlVua25vd25GaWx0ZXJPcGVyYXRpb246
CiAgICAgICAgIHJldHVybiBGaWx0ZXJPcGVyYXRpb246Ok5PTkU7CiAgICAgfQpAQCAtMzQzMSwz
NDAgKzM0MDIsNiBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6OmxvYWRQZW5kaW5nU1ZHRG9jdW1lbnRz
KCkKIH0KICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotU3R5bGVTaGFkZXIqIFN0
eWxlUmVzb2x2ZXI6OnN0eWxlU2hhZGVyKENTU1ZhbHVlKiB2YWx1ZSkKLXsKLSAgICBpZiAodmFs
dWUtPmlzV2ViS2l0Q1NTU2hhZGVyVmFsdWUoKSkKLSAgICAgICAgcmV0dXJuIGNhY2hlZE9yUGVu
ZGluZ1N0eWxlU2hhZGVyRnJvbVZhbHVlKHRvV2ViS2l0Q1NTU2hhZGVyVmFsdWUodmFsdWUpKTsK
LSAgICByZXR1cm4gMDsKLX0KLQotU3R5bGVTaGFkZXIqIFN0eWxlUmVzb2x2ZXI6OmNhY2hlZE9y
UGVuZGluZ1N0eWxlU2hhZGVyRnJvbVZhbHVlKFdlYktpdENTU1NoYWRlclZhbHVlKiB2YWx1ZSkK
LXsKLSAgICBTdHlsZVNoYWRlciogc2hhZGVyID0gdmFsdWUtPmNhY2hlZE9yUGVuZGluZ1NoYWRl
cigpOwotICAgIGlmIChzaGFkZXIgJiYgc2hhZGVyLT5pc1BlbmRpbmdTaGFkZXIoKSkKLSAgICAg
ICAgbV9zdGF0ZS5zZXRIYXNQZW5kaW5nU2hhZGVycyh0cnVlKTsKLSAgICByZXR1cm4gc2hhZGVy
OwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IFN0eWxlUmVzb2x2ZXI6Omxv
b2t1cEN1c3RvbUZpbHRlclByb2dyYW0oV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIHZlcnRleFNoYWRl
ciwgV2ViS2l0Q1NTU2hhZGVyVmFsdWUqIGZyYWdtZW50U2hhZGVyLCAKLSAgICBDdXN0b21GaWx0
ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNl
dHRpbmdzJiBtaXhTZXR0aW5ncywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi17Ci0g
ICAgQ2FjaGVkUmVzb3VyY2VMb2FkZXIqIGNhY2hlZFJlc291cmNlTG9hZGVyID0gbV9zdGF0ZS5k
b2N1bWVudCgpLmNhY2hlZFJlc291cmNlTG9hZGVyKCk7Ci0gICAgVVJMIHZlcnRleFNoYWRlclVS
TCA9IHZlcnRleFNoYWRlciA/IHZlcnRleFNoYWRlci0+Y29tcGxldGVVUkwoY2FjaGVkUmVzb3Vy
Y2VMb2FkZXIpIDogVVJMKCk7Ci0gICAgVVJMIGZyYWdtZW50U2hhZGVyVVJMID0gZnJhZ21lbnRT
aGFkZXIgPyBmcmFnbWVudFNoYWRlci0+Y29tcGxldGVVUkwoY2FjaGVkUmVzb3VyY2VMb2FkZXIp
IDogVVJMKCk7Ci0gICAgUmVmUHRyPFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3JhbTsK
LSAgICBpZiAobV9jdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUpCi0gICAgICAgIHByb2dyYW0gPSBt
X2N1c3RvbUZpbHRlclByb2dyYW1DYWNoZS0+bG9va3VwKEN1c3RvbUZpbHRlclByb2dyYW1JbmZv
KHZlcnRleFNoYWRlclVSTCwgZnJhZ21lbnRTaGFkZXJVUkwsIHByb2dyYW1UeXBlLCBtaXhTZXR0
aW5ncywgbWVzaFR5cGUpKTsKLSAgICBpZiAoIXByb2dyYW0pIHsKLSAgICAgICAgLy8gQ3JlYXRl
IGEgbmV3IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSB0aGF0IHdpbGwgYmUgcmVzb2x2ZWQgZHVy
aW5nIHRoZSBsb2FkUGVuZGluZ1NoYWRlcnMgYW5kIGFkZGVkIHRvIHRoZSBjYWNoZS4KLSAgICAg
ICAgcHJvZ3JhbSA9IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbTo6Y3JlYXRlKHZlcnRleFNoYWRl
clVSTCwgdmVydGV4U2hhZGVyID8gc3R5bGVTaGFkZXIodmVydGV4U2hhZGVyKSA6IDAsIAotICAg
ICAgICAgICAgZnJhZ21lbnRTaGFkZXJVUkwsIGZyYWdtZW50U2hhZGVyID8gc3R5bGVTaGFkZXIo
ZnJhZ21lbnRTaGFkZXIpIDogMCwgcHJvZ3JhbVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSk7
Ci0gICAgfQotICAgIHJldHVybiBwcm9ncmFtLnJlbGVhc2UoKTsKLX0KLQotdm9pZCBTdHlsZVJl
c29sdmVyOjpsb2FkUGVuZGluZ1NoYWRlcnMoKQotewotICAgIC8vIEZJWE1FOiBXZSBzaG91bGRu
J3QgaGF2ZSB0byBjaGVjayB0aGF0IHN0eWxlIGlzIG5vbi1udWxsLiBUaGlzIGlzIGEgc3BlY3Vs
YXRpdmUgZml4IGZvcjoKLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTE3NjY1Ci0gICAgaWYgKCFtX3N0YXRlLmhhc1BlbmRpbmdTaGFkZXJzKCkgfHwgIW1f
c3RhdGUuc3R5bGUoKSB8fCAhbV9zdGF0ZS5zdHlsZSgpLT5oYXNGaWx0ZXIoKSkKLSAgICAgICAg
cmV0dXJuOwotCi0gICAgQ2FjaGVkUmVzb3VyY2VMb2FkZXIqIGNhY2hlZFJlc291cmNlTG9hZGVy
ID0gbV9zdGF0ZS5kb2N1bWVudCgpLmNhY2hlZFJlc291cmNlTG9hZGVyKCk7Ci0KLSAgICBWZWN0
b3I8UmVmUHRyPEZpbHRlck9wZXJhdGlvbj4+JiBmaWx0ZXJPcGVyYXRpb25zID0gbV9zdGF0ZS5z
dHlsZSgpLT5tdXRhYmxlRmlsdGVyKCkub3BlcmF0aW9ucygpOwotICAgIGZvciAodW5zaWduZWQg
aSA9IDA7IGkgPCBmaWx0ZXJPcGVyYXRpb25zLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIFJlZlB0
cjxGaWx0ZXJPcGVyYXRpb24+IGZpbHRlck9wZXJhdGlvbiA9IGZpbHRlck9wZXJhdGlvbnMuYXQo
aSk7Ci0gICAgICAgIGlmIChmaWx0ZXJPcGVyYXRpb24tPnR5cGUoKSA9PSBGaWx0ZXJPcGVyYXRp
b246OkNVU1RPTSkgewotICAgICAgICAgICAgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKiBjdXN0b21G
aWx0ZXIgPSBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJPcGVyYXRpb24qPihmaWx0ZXJPcGVyYXRp
b24uZ2V0KCkpOwotICAgICAgICAgICAgQVNTRVJUKGN1c3RvbUZpbHRlci0+cHJvZ3JhbSgpKTsK
LSAgICAgICAgICAgIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSA9IHN0YXRpY19j
YXN0PFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSo+KGN1c3RvbUZpbHRlci0+cHJvZ3JhbSgpKTsK
LSAgICAgICAgICAgIC8vIE5vdGUgdGhhdCB0aGUgU3R5bGVQZW5kaW5nU2hhZGVycyBjb3VsZCBi
ZSBhbHJlYWR5IHJlc29sdmVkIHRvIFN0eWxlQ2FjaGVkU2hhZGVycy4gVGhhdCdzIGJlY2F1c2Ug
dGhlIHJ1bGUgd2FzIG1hdGNoZWQgYmVmb3JlLgotICAgICAgICAgICAgLy8gSG93ZXZlciwgdGhl
IFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSB0aGF0IHdhcyBpbml0aWFsbHkgY3JlYXRlZCBjb3Vs
ZCBoYXZlIGJlZW4gcmVtb3ZlZCBmcm9tIHRoZSBjYWNoZSBpbiB0aGUgbWVhbndoaWxlLAotICAg
ICAgICAgICAgLy8gbWVhbmluZyB0aGF0IHdlIGdldCBhIG5ldyBTdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW0gaGVyZSB0aGF0IGlzIG5vdCB5ZXQgaW4gdGhlIGNhY2hlLCBidXQgYWxyZWFkeSBoYXMg
bG9hZGVkIFN0eWxlU2hhZGVycy4KLSAgICAgICAgICAgIGlmICghcHJvZ3JhbS0+aGFzUGVuZGlu
Z1NoYWRlcnMoKSAmJiBwcm9ncmFtLT5pbkNhY2hlKCkpCi0gICAgICAgICAgICAgICAgY29udGlu
dWU7Ci0gICAgICAgICAgICBpZiAoIW1fY3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlKQotICAgICAg
ICAgICAgICAgIG1fY3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlID0gYWRvcHRQdHIobmV3IFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlKCkpOwotICAgICAgICAgICAgUmVmUHRyPFN0eWxlQ3Vz
dG9tRmlsdGVyUHJvZ3JhbT4gc3R5bGVQcm9ncmFtID0gbV9jdXN0b21GaWx0ZXJQcm9ncmFtQ2Fj
aGUtPmxvb2t1cChwcm9ncmFtKTsKLSAgICAgICAgICAgIGlmIChzdHlsZVByb2dyYW0uZ2V0KCkp
Ci0gICAgICAgICAgICAgICAgY3VzdG9tRmlsdGVyLT5zZXRQcm9ncmFtKHN0eWxlUHJvZ3JhbS5y
ZWxlYXNlKCkpOwotICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgaWYgKHByb2dy
YW0tPnZlcnRleFNoYWRlcigpICYmIHByb2dyYW0tPnZlcnRleFNoYWRlcigpLT5pc1BlbmRpbmdT
aGFkZXIoKSkgewotICAgICAgICAgICAgICAgICAgICBXZWJLaXRDU1NTaGFkZXJWYWx1ZSogc2hh
ZGVyVmFsdWUgPSBzdGF0aWNfY2FzdDxTdHlsZVBlbmRpbmdTaGFkZXIqPihwcm9ncmFtLT52ZXJ0
ZXhTaGFkZXIoKSktPmNzc1NoYWRlclZhbHVlKCk7Ci0gICAgICAgICAgICAgICAgICAgIHByb2dy
YW0tPnNldFZlcnRleFNoYWRlcihzaGFkZXJWYWx1ZS0+Y2FjaGVkU2hhZGVyKGNhY2hlZFJlc291
cmNlTG9hZGVyKSk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChwcm9n
cmFtLT5mcmFnbWVudFNoYWRlcigpICYmIHByb2dyYW0tPmZyYWdtZW50U2hhZGVyKCktPmlzUGVu
ZGluZ1NoYWRlcigpKSB7Ci0gICAgICAgICAgICAgICAgICAgIFdlYktpdENTU1NoYWRlclZhbHVl
KiBzaGFkZXJWYWx1ZSA9IHN0YXRpY19jYXN0PFN0eWxlUGVuZGluZ1NoYWRlcio+KHByb2dyYW0t
PmZyYWdtZW50U2hhZGVyKCkpLT5jc3NTaGFkZXJWYWx1ZSgpOwotICAgICAgICAgICAgICAgICAg
ICBwcm9ncmFtLT5zZXRGcmFnbWVudFNoYWRlcihzaGFkZXJWYWx1ZS0+Y2FjaGVkU2hhZGVyKGNh
Y2hlZFJlc291cmNlTG9hZGVyKSk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAg
IG1fY3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLT5hZGQocHJvZ3JhbSk7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgbV9zdGF0ZS5zZXRIYXNQZW5kaW5nU2hhZGVycyhmYWxz
ZSk7Ci19Ci0KLXN0YXRpYyBib29sIHNvcnRQYXJhbWV0ZXJzQnlOYW1lQ29tcGFyYXRvcihjb25z
dCBSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiYgYSwgY29uc3QgUmVmUHRyPEN1c3RvbUZp
bHRlclBhcmFtZXRlcj4mIGIpCi17Ci0gICAgcmV0dXJuIGNvZGVQb2ludENvbXBhcmVMZXNzVGhh
bihhLT5uYW1lKCksIGItPm5hbWUoKSk7Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFy
YW1ldGVyPiBTdHlsZVJlc29sdmVyOjpwYXJzZUN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKGNv
bnN0IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWVMaXN0KiB2YWx1ZXMsIGJvb2wgaXNBcnJheSkKLXsK
LSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI+IGFycmF5UGFyYW1ldGVyID0g
Q3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI6OmNyZWF0ZShuYW1lLCBpc0FycmF5ID8gQ3VzdG9t
RmlsdGVyQXJyYXlQYXJhbWV0ZXI6OkFSUkFZIDogQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI6
Ok1BVFJJWCk7Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gMCwgbGVuZ3RoID0gdmFsdWVzLT5sZW5n
dGgoKTsgaSA8IGxlbmd0aDsgKytpKSB7Ci0gICAgICAgIENTU1ZhbHVlKiB2YWx1ZSA9IHZhbHVl
cy0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjayhpKTsKLSAgICAgICAgaWYgKCF2YWx1ZS0+aXNQcmlt
aXRpdmVWYWx1ZSgpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIENTU1ByaW1pdGl2
ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUodmFsdWUpOwotICAg
ICAgICBpZiAocHJpbWl0aXZlVmFsdWUtPnByaW1pdGl2ZVR5cGUoKSAhPSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTX05VTUJFUikKLSAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBhcnJheVBh
cmFtZXRlci0+YWRkVmFsdWUocHJpbWl0aXZlVmFsdWUtPmdldERvdWJsZVZhbHVlKCkpOwotICAg
IH0KLSAgICByZXR1cm4gYXJyYXlQYXJhbWV0ZXIucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRy
PEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gU3R5bGVSZXNvbHZlcjo6cGFyc2VDdXN0b21GaWx0ZXJD
b2xvclBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlzdCogdmFsdWVzKQot
ewotICAgIEFTU0VSVCh2YWx1ZXMtPmxlbmd0aCgpKTsKLSAgICBDU1NQcmltaXRpdmVWYWx1ZSog
Zmlyc3RQcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUodmFsdWVzLT5pdGVtV2l0
aG91dEJvdW5kc0NoZWNrKDApKTsKLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0
ZXI+IGNvbG9yUGFyYW1ldGVyID0gQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI6OmNyZWF0ZShu
YW1lKTsKLSAgICBjb2xvclBhcmFtZXRlci0+c2V0Q29sb3IoQ29sb3IoZmlyc3RQcmltaXRpdmVW
YWx1ZS0+Z2V0UkdCQTMyVmFsdWUoKSkpOwotICAgIHJldHVybiBjb2xvclBhcmFtZXRlci5yZWxl
YXNlKCk7Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBTdHlsZVJlc29s
dmVyOjpwYXJzZUN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUs
IENTU1ZhbHVlTGlzdCogdmFsdWVzKQotewotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJOdW1iZXJQ
YXJhbWV0ZXI+IG51bWJlclBhcmFtZXRlciA9IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcjo6
Y3JlYXRlKG5hbWUpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCB2YWx1ZXMtPmxlbmd0
aCgpOyArK2kpIHsKLSAgICAgICAgQ1NTVmFsdWUqIHZhbHVlID0gdmFsdWVzLT5pdGVtV2l0aG91
dEJvdW5kc0NoZWNrKGkpOwotICAgICAgICBpZiAoIXZhbHVlLT5pc1ByaW1pdGl2ZVZhbHVlKCkp
Ci0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1p
dGl2ZVZhbHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZSh2YWx1ZSk7Ci0gICAgICAgIGlmIChwcmlt
aXRpdmVWYWx1ZS0+cHJpbWl0aXZlVHlwZSgpICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVN
QkVSKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIG51bWJlclBhcmFtZXRlci0+YWRk
VmFsdWUocHJpbWl0aXZlVmFsdWUtPmdldERvdWJsZVZhbHVlKCkpOwotICAgIH0KLSAgICByZXR1
cm4gbnVtYmVyUGFyYW1ldGVyLnJlbGVhc2UoKTsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0
ZXJQYXJhbWV0ZXI+IFN0eWxlUmVzb2x2ZXI6OnBhcnNlQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFy
YW1ldGVyKGNvbnN0IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWVMaXN0KiB2YWx1ZXMpCi17Ci0gICAg
UmVmUHRyPEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcj4gdHJhbnNmb3JtUGFyYW1ldGVy
ID0gQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyOjpjcmVhdGUobmFtZSk7Ci0gICAgVHJh
bnNmb3JtT3BlcmF0aW9ucyBvcGVyYXRpb25zOwotICAgIHRyYW5zZm9ybXNGb3JWYWx1ZShtX3N0
YXRlLnN0eWxlKCksIG1fc3RhdGUucm9vdEVsZW1lbnRTdHlsZSgpLCB2YWx1ZXMsIG9wZXJhdGlv
bnMpOwotICAgIHRyYW5zZm9ybVBhcmFtZXRlci0+c2V0T3BlcmF0aW9ucyhvcGVyYXRpb25zKTsK
LSAgICByZXR1cm4gdHJhbnNmb3JtUGFyYW1ldGVyLnJlbGVhc2UoKTsKLX0KLQotUGFzc1JlZlB0
cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IFN0eWxlUmVzb2x2ZXI6OnBhcnNlQ3VzdG9tRmlsdGVy
UGFyYW1ldGVyKGNvbnN0IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWUqIHBhcmFtZXRlclZhbHVlKQot
ewotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgb3RoZXIgcGFyYW1ldGVycyB0eXBlcyBwYXJzaW5n
LgotICAgIC8vIHRleHR1cmVzOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzE0NDIKLSAgICAvLyBtYXQyLCBtYXQzLCBtYXQ0OiBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NzE0NDQKLSAgICAvLyBOdW1iZXIgcGFyYW1ldGVycyBhcmUgd3Jh
cHBlZCBpbnNpZGUgYSBDU1NWYWx1ZUxpc3QgYW5kIGFsbAotICAgIC8vIHRoZSBvdGhlciBmdW5j
dGlvbnMgdmFsdWVzIGluaGVyaXQgZnJvbSBDU1NWYWx1ZUxpc3QuCi0gICAgaWYgKCFwYXJhbWV0
ZXJWYWx1ZS0+aXNWYWx1ZUxpc3QoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBDU1NWYWx1
ZUxpc3QqIHZhbHVlcyA9IHRvQ1NTVmFsdWVMaXN0KHBhcmFtZXRlclZhbHVlKTsKLSAgICBpZiAo
IXZhbHVlcy0+bGVuZ3RoKCkpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgaWYgKHBhcmFtZXRl
clZhbHVlLT5pc1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSgpKQotICAgICAgICByZXR1cm4g
cGFyc2VDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcihuYW1lLCB2YWx1ZXMsIHRydWUpOwotCi0g
ICAgaWYgKHBhcmFtZXRlclZhbHVlLT5pc1dlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUoKSkKLSAg
ICAgICAgcmV0dXJuIHBhcnNlQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIobmFtZSwgdmFsdWVz
LCBmYWxzZSk7Ci0KLSAgICAvLyBJZiB0aGUgZmlyc3QgdmFsdWUgb2YgdGhlIGxpc3QgaXMgYSB0
cmFuc2Zvcm0gZnVuY3Rpb24sCi0gICAgLy8gdGhlbiB3ZSBjb3VsZCBzYWZlbHkgYXNzdW1lIHRo
YXQgYWxsIHRoZSByZW1haW5pbmcgaXRlbXMKLSAgICAvLyBhcmUgdHJhbnNmb3Jtcy4gcGFyc2VD
dXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIgd2lsbAotICAgIC8vIHJldHVybiAwIGlmIHRo
YXQgYXNzdW1wdGlvbiBpcyBpbmNvcnJlY3QuCi0gICAgaWYgKHZhbHVlcy0+aXRlbVdpdGhvdXRC
b3VuZHNDaGVjaygwKS0+aXNXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZSgpKQotICAgICAgICByZXR1
cm4gcGFyc2VDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIobmFtZSwgdmFsdWVzKTsKLQot
ICAgIC8vIFdlIGNhbiBvbmx5IGhhdmUgYXJyYXlzIG9mIGNvbG9ycyBvciBudW1iZXJzLCBzbyB1
c2UgdGhlIGZpcnN0IHZhbHVlIHRvIGNob29zZSBiZXR3ZWVuIHRob3NlIHR3by4KLSAgICAvLyBX
ZSBuZWVkIHVwIHRvIDQgdmFsdWVzIChhbGwgYm9vbGVhbnMgb3IgYWxsIG51bWJlcnMpLgotICAg
IGlmICghdmFsdWVzLT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDApLT5pc1ByaW1pdGl2ZVZhbHVl
KCkgfHwgdmFsdWVzLT5sZW5ndGgoKSA+IDQpCi0gICAgICAgIHJldHVybiAwOwotICAgIAotICAg
IENTU1ByaW1pdGl2ZVZhbHVlKiBmaXJzdFByaW1pdGl2ZVZhbHVlID0gdG9DU1NQcmltaXRpdmVW
YWx1ZSh2YWx1ZXMtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMCkpOwotICAgIGlmIChmaXJzdFBy
aW1pdGl2ZVZhbHVlLT5wcmltaXRpdmVUeXBlKCkgPT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19O
VU1CRVIpCi0gICAgICAgIHJldHVybiBwYXJzZUN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcihu
YW1lLCB2YWx1ZXMpOwotCi0gICAgaWYgKGZpcnN0UHJpbWl0aXZlVmFsdWUtPnByaW1pdGl2ZVR5
cGUoKSA9PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1JHQkNPTE9SKQotICAgICAgICByZXR1cm4g
cGFyc2VDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcihuYW1lLCB2YWx1ZXMpOwotCi0gICAgcmV0
dXJuIDA7Ci19Ci0KLWJvb2wgU3R5bGVSZXNvbHZlcjo6cGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0
ZXJMaXN0KENTU1ZhbHVlKiBwYXJhbWV0ZXJzVmFsdWUsIEN1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3QmIHBhcmFtZXRlckxpc3QpCi17Ci0gICAgSGFzaFNldDxTdHJpbmc+IGtub3duUGFyYW1ldGVy
TmFtZXM7Ci0gICAgQ1NTVmFsdWVMaXN0SXRlcmF0b3IgcGFyYW1ldGVySXRlcmF0b3IocGFyYW1l
dGVyc1ZhbHVlKTsKLSAgICBmb3IgKDsgcGFyYW1ldGVySXRlcmF0b3IuaGFzTW9yZSgpOyBwYXJh
bWV0ZXJJdGVyYXRvci5hZHZhbmNlKCkpIHsKLSAgICAgICAgaWYgKCFwYXJhbWV0ZXJJdGVyYXRv
ci52YWx1ZSgpLT5pc1ZhbHVlTGlzdCgpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAg
ICAgICBDU1NWYWx1ZUxpc3RJdGVyYXRvciBpdGVyYXRvcihwYXJhbWV0ZXJJdGVyYXRvci52YWx1
ZSgpKTsKLSAgICAgICAgaWYgKCFpdGVyYXRvci5pc1ByaW1pdGl2ZVZhbHVlKCkpCi0gICAgICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmltaXRpdmVW
YWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUoaXRlcmF0b3IudmFsdWUoKSk7Ci0gICAgICAgIGlm
IChwcmltaXRpdmVWYWx1ZS0+cHJpbWl0aXZlVHlwZSgpICE9IENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NfU1RSSU5HKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAKLSAgICAgICAg
U3RyaW5nIG5hbWUgPSBwcmltaXRpdmVWYWx1ZS0+Z2V0U3RyaW5nVmFsdWUoKTsKLSAgICAgICAg
Ly8gRG8gbm90IGFsbG93IGR1cGxpY2F0ZSBwYXJhbWV0ZXIgbmFtZXMuCi0gICAgICAgIGlmIChr
bm93blBhcmFtZXRlck5hbWVzLmNvbnRhaW5zKG5hbWUpKQotICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgICAgICBrbm93blBhcmFtZXRlck5hbWVzLmFkZChuYW1lKTsKLSAgICAgICAgCi0g
ICAgICAgIGl0ZXJhdG9yLmFkdmFuY2UoKTsKLSAgICAgICAgCi0gICAgICAgIGlmICghaXRlcmF0
b3IuaGFzTW9yZSgpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAKLSAgICAg
ICAgUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gcGFyYW1ldGVyID0gcGFyc2VDdXN0b21G
aWx0ZXJQYXJhbWV0ZXIobmFtZSwgaXRlcmF0b3IudmFsdWUoKSk7Ci0gICAgICAgIGlmICghcGFy
YW1ldGVyKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBwYXJhbWV0ZXJMaXN0
LmFwcGVuZChwYXJhbWV0ZXIucmVsZWFzZSgpKTsKLSAgICB9Ci0gICAgCi0gICAgLy8gTWFrZSBz
dXJlIHdlIHNvcnQgdGhlIHBhcmFtZXRlcnMgYmVmb3JlIHBhc3NpbmcgdGhlbSBkb3duIHRvIHRo
ZSBDdXN0b21GaWx0ZXJPcGVyYXRpb24uCi0gICAgc3RkOjpzb3J0KHBhcmFtZXRlckxpc3QuYmVn
aW4oKSwgcGFyYW1ldGVyTGlzdC5lbmQoKSwgc29ydFBhcmFtZXRlcnNCeU5hbWVDb21wYXJhdG9y
KTsKLSAgICAKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJP
cGVyYXRpb24+IFN0eWxlUmVzb2x2ZXI6OmNyZWF0ZUN1c3RvbUZpbHRlck9wZXJhdGlvbldpdGhB
dFJ1bGVSZWZlcmVuY2VTeW50YXgoV2ViS2l0Q1NTRmlsdGVyVmFsdWUqIGZpbHRlclZhbHVlKQot
ewotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgc3R5bGUgcmVzb2x1dGlvbiBmb3IgdGhlIGN1c3Rv
bSBmaWx0ZXIgYXQtcnVsZSByZWZlcmVuY2Ugc3ludGF4LgotICAgIFVOVVNFRF9QQVJBTShmaWx0
ZXJWYWx1ZSk7Ci0gICAgcmV0dXJuIDA7Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyT3Bl
cmF0aW9uPiBTdHlsZVJlc29sdmVyOjpjcmVhdGVDdXN0b21GaWx0ZXJPcGVyYXRpb25XaXRoSW5s
aW5lU3ludGF4KFdlYktpdENTU0ZpbHRlclZhbHVlKiBmaWx0ZXJWYWx1ZSkKLXsKLSAgICBDU1NW
YWx1ZSogc2hhZGVyc1ZhbHVlID0gZmlsdGVyVmFsdWUtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2so
MCk7Ci0gICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oc2hhZGVyc1ZhbHVlLT5p
c1ZhbHVlTGlzdCgpKTsKLSAgICBDU1NWYWx1ZUxpc3QqIHNoYWRlcnNMaXN0ID0gdG9DU1NWYWx1
ZUxpc3Qoc2hhZGVyc1ZhbHVlKTsKLQotICAgIHVuc2lnbmVkIHNoYWRlcnNMaXN0TGVuZ3RoID0g
c2hhZGVyc0xpc3QtPmxlbmd0aCgpOwotICAgIEFTU0VSVChzaGFkZXJzTGlzdExlbmd0aCk7Ci0K
LQotICAgIFdlYktpdENTU1NoYWRlclZhbHVlKiB2ZXJ0ZXhTaGFkZXIgPSAwOwotICAgIFdlYktp
dENTU1NoYWRlclZhbHVlKiBmcmFnbWVudFNoYWRlciA9IDA7Ci0KLSAgICBpZiAoc2hhZGVyc0xp
c3QtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMCktPmlzV2ViS2l0Q1NTU2hhZGVyVmFsdWUoKSkK
LSAgICAgICAgdmVydGV4U2hhZGVyID0gdG9XZWJLaXRDU1NTaGFkZXJWYWx1ZShzaGFkZXJzTGlz
dC0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjaygwKSk7Ci0KLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFt
VHlwZSBwcm9ncmFtVHlwZSA9IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJFOwot
ICAgIEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyBtaXhTZXR0aW5nczsKLQotICAgIGlm
IChzaGFkZXJzTGlzdExlbmd0aCA+IDEpIHsKLSAgICAgICAgQ1NTVmFsdWUqIGZyYWdtZW50U2hh
ZGVyT3JNaXhGdW5jdGlvbiA9IHNoYWRlcnNMaXN0LT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDEp
OwotICAgICAgICBpZiAoZnJhZ21lbnRTaGFkZXJPck1peEZ1bmN0aW9uLT5pc1dlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUoKSkgewotICAgICAgICAgICAgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1
ZSogbWl4RnVuY3Rpb24gPSB0b1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUoZnJhZ21lbnRTaGFk
ZXJPck1peEZ1bmN0aW9uKTsKLSAgICAgICAgICAgIENTU1ZhbHVlTGlzdEl0ZXJhdG9yIGl0ZXJh
dG9yKG1peEZ1bmN0aW9uKTsKLQotICAgICAgICAgICAgQVNTRVJUKG1peEZ1bmN0aW9uLT5sZW5n
dGgoKSk7Ci0gICAgICAgICAgICBpZiAoaXRlcmF0b3IudmFsdWUoKS0+aXNXZWJLaXRDU1NTaGFk
ZXJWYWx1ZSgpKQotICAgICAgICAgICAgICAgIGZyYWdtZW50U2hhZGVyID0gdG9XZWJLaXRDU1NT
aGFkZXJWYWx1ZShpdGVyYXRvci52YWx1ZSgpKTsKLQotICAgICAgICAgICAgaXRlcmF0b3IuYWR2
YW5jZSgpOwotCi0gICAgICAgICAgICBBU1NFUlQobWl4RnVuY3Rpb24tPmxlbmd0aCgpIDw9IDMp
OwotICAgICAgICAgICAgd2hpbGUgKGl0ZXJhdG9yLmhhc01vcmUoKSkgewotICAgICAgICAgICAg
ICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFs
dWUoaXRlcmF0b3IudmFsdWUoKSk7Ci0gICAgICAgICAgICAgICAgaWYgKENTU1BhcnNlcjo6aXNC
bGVuZE1vZGUocHJpbWl0aXZlVmFsdWUtPmdldFZhbHVlSUQoKSkpCi0gICAgICAgICAgICAgICAg
ICAgIG1peFNldHRpbmdzLmJsZW5kTW9kZSA9ICpwcmltaXRpdmVWYWx1ZTsKLSAgICAgICAgICAg
ICAgICBlbHNlIGlmIChDU1NQYXJzZXI6OmlzQ29tcG9zaXRlT3BlcmF0b3IocHJpbWl0aXZlVmFs
dWUtPmdldFZhbHVlSUQoKSkpCi0gICAgICAgICAgICAgICAgICAgIG1peFNldHRpbmdzLmNvbXBv
c2l0ZU9wZXJhdG9yID0gKnByaW1pdGl2ZVZhbHVlOwotICAgICAgICAgICAgICAgIGVsc2UKLSAg
ICAgICAgICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgICAgICAgICAg
aXRlcmF0b3IuYWR2YW5jZSgpOwotICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgewotICAg
ICAgICAgICAgcHJvZ3JhbVR5cGUgPSBQUk9HUkFNX1RZUEVfTk9fRUxFTUVOVF9URVhUVVJFOwot
ICAgICAgICAgICAgaWYgKGZyYWdtZW50U2hhZGVyT3JNaXhGdW5jdGlvbi0+aXNXZWJLaXRDU1NT
aGFkZXJWYWx1ZSgpKQotICAgICAgICAgICAgICAgIGZyYWdtZW50U2hhZGVyID0gdG9XZWJLaXRD
U1NTaGFkZXJWYWx1ZShmcmFnbWVudFNoYWRlck9yTWl4RnVuY3Rpb24pOwotICAgICAgICB9Ci0g
ICAgfQotCi0gICAgaWYgKCF2ZXJ0ZXhTaGFkZXIgJiYgIWZyYWdtZW50U2hhZGVyKQotICAgICAg
ICByZXR1cm4gMDsKLQotICAgIHVuc2lnbmVkIG1lc2hSb3dzID0gMTsKLSAgICB1bnNpZ25lZCBt
ZXNoQ29sdW1ucyA9IDE7Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUgPSBNZXNo
VHlwZUF0dGFjaGVkOwotICAgIAotICAgIENTU1ZhbHVlKiBwYXJhbWV0ZXJzVmFsdWUgPSAwOwot
ICAgIAotICAgIGlmIChmaWx0ZXJWYWx1ZS0+bGVuZ3RoKCkgPiAxKSB7Ci0gICAgICAgIENTU1Zh
bHVlTGlzdEl0ZXJhdG9yIGl0ZXJhdG9yKGZpbHRlclZhbHVlLT5pdGVtV2l0aG91dEJvdW5kc0No
ZWNrKDEpKTsKLSAgICAgICAgCi0gICAgICAgIC8vIFRoZSBzZWNvbmQgdmFsdWUgbWlnaHQgYmUg
dGhlIG1lc2ggYm94IG9yIHRoZSBsaXN0IG9mIHBhcmFtZXRlcnM6Ci0gICAgICAgIC8vIElmIGl0
IHN0YXJ0cyB3aXRoIGEgbnVtYmVyIG9yIGFueSBvZiB0aGUgbWVzaC1ib3ggaWRlbnRpZmllcnMg
aXQgaXMgCi0gICAgICAgIC8vIHRoZSBtZXNoLWJveCBsaXN0LCBpZiBub3QgaXQgbWVhbnMgaXQg
aXMgdGhlIHBhcmFtZXRlcnMgbGlzdC4KLQotICAgICAgICBpZiAoaXRlcmF0b3IuaGFzTW9yZSgp
ICYmIGl0ZXJhdG9yLmlzUHJpbWl0aXZlVmFsdWUoKSkgewotICAgICAgICAgICAgQ1NTUHJpbWl0
aXZlVmFsdWUqIHByaW1pdGl2ZVZhbHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZShpdGVyYXRvci52
YWx1ZSgpKTsKLSAgICAgICAgICAgIGlmIChwcmltaXRpdmVWYWx1ZS0+aXNOdW1iZXIoKSkgewot
ICAgICAgICAgICAgICAgIC8vIElmIG9ubHkgb25lIGludGVnZXIgdmFsdWUgaXMgc3BlY2lmaWVk
LCBpdCB3aWxsIHNldCBib3RoCi0gICAgICAgICAgICAgICAgLy8gdGhlIHJvd3MgYW5kIHRoZSBj
b2x1bW5zLgotICAgICAgICAgICAgICAgIG1lc2hDb2x1bW5zID0gbWVzaFJvd3MgPSBwcmltaXRp
dmVWYWx1ZS0+Z2V0SW50VmFsdWUoKTsKLSAgICAgICAgICAgICAgICBpdGVyYXRvci5hZHZhbmNl
KCk7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAgLy8gVHJ5IHRvIG1hdGNoIGFu
b3RoZXIgbnVtYmVyIGZvciB0aGUgcm93cy4KLSAgICAgICAgICAgICAgICBpZiAoaXRlcmF0b3Iu
aGFzTW9yZSgpICYmIGl0ZXJhdG9yLmlzUHJpbWl0aXZlVmFsdWUoKSkgewotICAgICAgICAgICAg
ICAgICAgICBDU1NQcmltaXRpdmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2
ZVZhbHVlKGl0ZXJhdG9yLnZhbHVlKCkpOwotICAgICAgICAgICAgICAgICAgICBpZiAocHJpbWl0
aXZlVmFsdWUtPmlzTnVtYmVyKCkpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG1lc2hSb3dz
ID0gcHJpbWl0aXZlVmFsdWUtPmdldEludFZhbHVlKCk7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICBpdGVyYXRvci5hZHZhbmNlKCk7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGlmIChp
dGVyYXRvci5oYXNNb3JlKCkgJiYgaXRlcmF0b3IuaXNQcmltaXRpdmVWYWx1ZSgpKSB7Ci0gICAg
ICAgICAgICBDU1NQcmltaXRpdmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2
ZVZhbHVlKGl0ZXJhdG9yLnZhbHVlKCkpOwotICAgICAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVl
LT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVEZXRhY2hlZCkgewotICAgICAgICAgICAgICAgIG1l
c2hUeXBlID0gTWVzaFR5cGVEZXRhY2hlZDsKLSAgICAgICAgICAgICAgICBpdGVyYXRvci5hZHZh
bmNlKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGlmICgh
aXRlcmF0b3IuaW5kZXgoKSkgewotICAgICAgICAgICAgLy8gSWYgbm8gdmFsdWUgd2FzIGNvbnN1
bWVkIGZyb20gdGhlIG1lc2ggdmFsdWUsIHRoZW4gaXQgaXMganVzdCBhIHBhcmFtZXRlciBsaXN0
LCBtZWFuaW5nIHRoYXQgd2UgZW5kIHVwCi0gICAgICAgICAgICAvLyBoYXZpbmcganVzdCB0d28g
Q1NTTGlzdFZhbHVlczogbGlzdCBvZiBzaGFkZXJzIGFuZCBsaXN0IG9mIHBhcmFtZXRlcnMuCi0g
ICAgICAgICAgICBBU1NFUlQoZmlsdGVyVmFsdWUtPmxlbmd0aCgpID09IDIpOwotICAgICAgICAg
ICAgcGFyYW1ldGVyc1ZhbHVlID0gZmlsdGVyVmFsdWUtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2so
MSk7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgCi0gICAgaWYgKGZpbHRlclZhbHVlLT5sZW5ndGgo
KSA+IDIgJiYgIXBhcmFtZXRlcnNWYWx1ZSkKLSAgICAgICAgcGFyYW1ldGVyc1ZhbHVlID0gZmls
dGVyVmFsdWUtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMik7Ci0gICAgCi0gICAgQ3VzdG9tRmls
dGVyUGFyYW1ldGVyTGlzdCBwYXJhbWV0ZXJMaXN0OwotICAgIGlmIChwYXJhbWV0ZXJzVmFsdWUg
JiYgIXBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdChwYXJhbWV0ZXJzVmFsdWUsIHBhcmFt
ZXRlckxpc3QpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJQ
cm9ncmFtPiBwcm9ncmFtID0gbG9va3VwQ3VzdG9tRmlsdGVyUHJvZ3JhbSh2ZXJ0ZXhTaGFkZXIs
IGZyYWdtZW50U2hhZGVyLCBwcm9ncmFtVHlwZSwgbWl4U2V0dGluZ3MsIG1lc2hUeXBlKTsKLSAg
ICByZXR1cm4gQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOjpjcmVhdGUocHJvZ3JhbS5yZWxlYXNlKCks
IHBhcmFtZXRlckxpc3QsIG1lc2hSb3dzLCBtZXNoQ29sdW1ucyk7Ci19Ci0KLVBhc3NSZWZQdHI8
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uPiBTdHlsZVJlc29sdmVyOjpjcmVhdGVDdXN0b21GaWx0ZXJP
cGVyYXRpb24oV2ViS2l0Q1NTRmlsdGVyVmFsdWUqIGZpbHRlclZhbHVlKQotewotICAgIEFTU0VS
VChmaWx0ZXJWYWx1ZS0+bGVuZ3RoKCkpOwotICAgIGJvb2wgaXNBdFJ1bGVSZWZlcmVuY2VTeW50
YXggPSBmaWx0ZXJWYWx1ZS0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjaygwKS0+aXNQcmltaXRpdmVW
YWx1ZSgpOwotICAgIHJldHVybiBpc0F0UnVsZVJlZmVyZW5jZVN5bnRheCA/IGNyZWF0ZUN1c3Rv
bUZpbHRlck9wZXJhdGlvbldpdGhBdFJ1bGVSZWZlcmVuY2VTeW50YXgoZmlsdGVyVmFsdWUpIDog
Y3JlYXRlQ3VzdG9tRmlsdGVyT3BlcmF0aW9uV2l0aElubGluZVN5bnRheChmaWx0ZXJWYWx1ZSk7
Ci19Ci0KLSNlbmRpZgotCiBib29sIFN0eWxlUmVzb2x2ZXI6OmNyZWF0ZUZpbHRlck9wZXJhdGlv
bnMoQ1NTVmFsdWUqIGluVmFsdWUsIEZpbHRlck9wZXJhdGlvbnMmIG91dE9wZXJhdGlvbnMpCiB7
CiAgICAgU3RhdGUmIHN0YXRlID0gbV9zdGF0ZTsKQEAgLTM3OTQsMjEgKzM0MzEsNiBAQCBib29s
IFN0eWxlUmVzb2x2ZXI6OmNyZWF0ZUZpbHRlck9wZXJhdGlvbnMoQ1NTVmFsdWUqIGluVmFsdWUs
IEZpbHRlck9wZXJhdGlvbnMmCiAgICAgICAgIFdlYktpdENTU0ZpbHRlclZhbHVlKiBmaWx0ZXJW
YWx1ZSA9IHRvV2ViS2l0Q1NTRmlsdGVyVmFsdWUoaS52YWx1ZSgpKTsKICAgICAgICAgRmlsdGVy
T3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIG9wZXJhdGlvblR5cGUgPSBmaWx0ZXJPcGVyYXRpb25G
b3JUeXBlKGZpbHRlclZhbHVlLT5vcGVyYXRpb25UeXBlKCkpOwogCi0jaWYgRU5BQkxFKENTU19T
SEFERVJTKQotICAgICAgICBpZiAob3BlcmF0aW9uVHlwZSA9PSBGaWx0ZXJPcGVyYXRpb246OlZB
TElEQVRFRF9DVVNUT00pIHsKLSAgICAgICAgICAgIC8vIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9w
ZXJhdGlvbiBpcyBub3Qgc3VwcG9zZWQgdG8gZW5kIHVwIGluIHRoZSBSZW5kZXJTdHlsZS4KLSAg
ICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgY29udGludWU7Ci0g
ICAgICAgIH0KLSAgICAgICAgaWYgKG9wZXJhdGlvblR5cGUgPT0gRmlsdGVyT3BlcmF0aW9uOjpD
VVNUT00pIHsKLSAgICAgICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJPcGVyYXRpb24+IG9wZXJh
dGlvbiA9IGNyZWF0ZUN1c3RvbUZpbHRlck9wZXJhdGlvbihmaWx0ZXJWYWx1ZSk7Ci0gICAgICAg
ICAgICBpZiAoIW9wZXJhdGlvbikKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAg
ICAgICAgICAKLSAgICAgICAgICAgIG9wZXJhdGlvbnMub3BlcmF0aW9ucygpLmFwcGVuZChvcGVy
YXRpb24pOwotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0KLSNlbmRpZgogICAgICAg
ICBpZiAob3BlcmF0aW9uVHlwZSA9PSBGaWx0ZXJPcGVyYXRpb246OlJFRkVSRU5DRSkgewogI2lm
IEVOQUJMRShTVkcpCiAgICAgICAgICAgICBpZiAoZmlsdGVyVmFsdWUtPmxlbmd0aCgpICE9IDEp
CkBAIC00MDkwLDExICszNzEyLDYgQEAgdm9pZCBTdHlsZVJlc29sdmVyOjpsb2FkUGVuZGluZ1Jl
c291cmNlcygpCiAgICAgLy8gU3RhcnQgbG9hZGluZyBpbWFnZXMgcmVmZXJlbmNlZCBieSB0aGlz
IHN0eWxlLgogICAgIGxvYWRQZW5kaW5nSW1hZ2VzKCk7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0gICAgLy8gU3RhcnQgbG9hZGluZyB0aGUgc2hhZGVycyByZWZlcmVuY2VkIGJ5IHRoaXMg
c3R5bGUuCi0gICAgbG9hZFBlbmRpbmdTaGFkZXJzKCk7Ci0jZW5kaWYKLSAgICAKICNpZiBFTkFC
TEUoQ1NTX0ZJTFRFUlMpICYmIEVOQUJMRShTVkcpCiAgICAgLy8gU3RhcnQgbG9hZGluZyB0aGUg
U1ZHIERvY3VtZW50cyByZWZlcmVuY2VkIGJ5IHRoaXMgc3R5bGUuCiAgICAgbG9hZFBlbmRpbmdT
VkdEb2N1bWVudHMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29s
dmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5oCmluZGV4IGNhNTg1ZmQu
LmIwNWNhNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaApAQCAtMzgsOSArMzgsNiBA
QAogI2luY2x1ZGUgIlN0eWxlSW5oZXJpdGVkRGF0YS5oIgogI2luY2x1ZGUgIlN0eWxlU2NvcGVS
ZXNvbHZlci5oIgogI2luY2x1ZGUgIlZpZXdwb3J0U3R5bGVSZXNvbHZlci5oIgotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNlbmRp
ZgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+CkBAIC02NCwxMSArNjEsNiBAQCBjbGFzcyBDU1NTZWxlY3Rv
cjsKIGNsYXNzIENTU1N0eWxlU2hlZXQ7CiBjbGFzcyBDU1NWYWx1ZTsKIGNsYXNzIENvbnRhaW5l
ck5vZGU7Ci1jbGFzcyBDdXN0b21GaWx0ZXJPcGVyYXRpb247Ci1jbGFzcyBDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXI7Ci1jbGFzcyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0OwotY2xhc3MgQ3VzdG9t
RmlsdGVyUHJvZ3JhbTsKLXN0cnVjdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3M7CiBj
bGFzcyBEb2N1bWVudDsKIGNsYXNzIERlcHJlY2F0ZWRTdHlsZUJ1aWxkZXI7CiBjbGFzcyBFbGVt
ZW50OwpAQCAtODQsNyArNzYsNiBAQCBjbGFzcyBSZW5kZXJTY3JvbGxiYXI7CiBjbGFzcyBSdWxl
RGF0YTsKIGNsYXNzIFJ1bGVTZXQ7CiBjbGFzcyBTZXR0aW5nczsKLWNsYXNzIFN0eWxlQ3VzdG9t
RmlsdGVyUHJvZ3JhbUNhY2hlOwogY2xhc3MgU3R5bGVTY29wZVJlc29sdmVyOwogY2xhc3MgU3R5
bGVJbWFnZTsKIGNsYXNzIFN0eWxlS2V5ZnJhbWU7CkBAIC05NywxMyArODgsMTEgQEAgY2xhc3Mg
U3R5bGVSdWxlSG9zdDsKIGNsYXNzIFN0eWxlUnVsZUtleWZyYW1lczsKIGNsYXNzIFN0eWxlUnVs
ZVBhZ2U7CiBjbGFzcyBTdHlsZVJ1bGVSZWdpb247Ci1jbGFzcyBTdHlsZVNoYWRlcjsKIGNsYXNz
IFN0eWxlU2hlZXQ7CiBjbGFzcyBTdHlsZVNoZWV0TGlzdDsKIGNsYXNzIFN0eWxlZEVsZW1lbnQ7
CiBjbGFzcyBWaWV3cG9ydFN0eWxlUmVzb2x2ZXI7CiBjbGFzcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZTsKLWNsYXNzIFdlYktpdENTU1NoYWRlclZhbHVlOwogCiBjbGFzcyBNZWRpYVF1ZXJ5UmVzdWx0
IHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShNZWRpYVF1ZXJ5UmVzdWx0KTsgV1RGX01BS0Vf
RkFTVF9BTExPQ0FURUQ7CkBAIC0yNjQsMjIgKzI1Myw2IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJM
RShDU1NfRklMVEVSUykKICAgICBib29sIGNyZWF0ZUZpbHRlck9wZXJhdGlvbnMoQ1NTVmFsdWUq
IGluVmFsdWUsIEZpbHRlck9wZXJhdGlvbnMmIG91dE9wZXJhdGlvbnMpOwotI2lmIEVOQUJMRShD
U1NfU0hBREVSUykKLSAgICBTdHlsZVNoYWRlciogc3R5bGVTaGFkZXIoQ1NTVmFsdWUqKTsKLSAg
ICBTdHlsZVNoYWRlciogY2FjaGVkT3JQZW5kaW5nU3R5bGVTaGFkZXJGcm9tVmFsdWUoV2ViS2l0
Q1NTU2hhZGVyVmFsdWUqKTsKLSAgICBib29sIHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlz
dChDU1NWYWx1ZSosIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmKTsKLSAgICBQYXNzUmVmUHRy
PEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gcGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXIoY29uc3Qg
U3RyaW5nJiBuYW1lLCBDU1NWYWx1ZSopOwotICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFy
YW1ldGVyPiBwYXJzZUN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKGNvbnN0IFN0cmluZyYgbmFt
ZSwgQ1NTVmFsdWVMaXN0Kik7Ci0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+
IHBhcnNlQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lLCBDU1NW
YWx1ZUxpc3QqLCBib29sKTsKLSAgICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4g
cGFyc2VDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lLCBDU1NW
YWx1ZUxpc3QqKTsKLSAgICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gcGFyc2VD
dXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lLCBDU1NWYWx1
ZUxpc3QqKTsKLSAgICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gY3JlYXRlQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uV2l0aEF0UnVsZVJlZmVyZW5jZVN5bnRheChXZWJLaXRDU1NGaWx0
ZXJWYWx1ZSopOwotICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyT3BlcmF0aW9uPiBjcmVhdGVD
dXN0b21GaWx0ZXJPcGVyYXRpb25XaXRoSW5saW5lU3ludGF4KFdlYktpdENTU0ZpbHRlclZhbHVl
Kik7Ci0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJPcGVyYXRpb24+IGNyZWF0ZUN1c3RvbUZp
bHRlck9wZXJhdGlvbihXZWJLaXRDU1NGaWx0ZXJWYWx1ZSopOwotICAgIHZvaWQgbG9hZFBlbmRp
bmdTaGFkZXJzKCk7Ci0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiBsb29rdXBD
dXN0b21GaWx0ZXJQcm9ncmFtKFdlYktpdENTU1NoYWRlclZhbHVlKiB2ZXJ0ZXhTaGFkZXIsIFdl
YktpdENTU1NoYWRlclZhbHVlKiBmcmFnbWVudFNoYWRlciwgCi0gICAgICAgIEN1c3RvbUZpbHRl
clByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmLCBDdXN0
b21GaWx0ZXJNZXNoVHlwZSk7Ci0jZW5kaWYKICNpZiBFTkFCTEUoU1ZHKQogICAgIHZvaWQgbG9h
ZFBlbmRpbmdTVkdEb2N1bWVudHMoKTsKICNlbmRpZgpAQCAtMzkyLDkgKzM2NSw2IEBAIHB1Ymxp
YzoKICAgICAgICAgLCBtX2VsZW1lbnRBZmZlY3RlZEJ5Q2xhc3NSdWxlcyhmYWxzZSkKICAgICAg
ICAgLCBtX2FwcGx5UHJvcGVydHlUb1JlZ3VsYXJTdHlsZSh0cnVlKQogICAgICAgICAsIG1fYXBw
bHlQcm9wZXJ0eVRvVmlzaXRlZExpbmtTdHlsZShmYWxzZSkKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0gICAgICAgICwgbV9oYXNQZW5kaW5nU2hhZGVycyhmYWxzZSkKLSNlbmRpZgogICAgICAg
ICAsIG1fbGluZUhlaWdodFZhbHVlKDApCiAgICAgICAgICwgbV9mb250RGlydHkoZmFsc2UpCiAg
ICAgICAgICwgbV9oYXNVQUFwcGVhcmFuY2UoZmFsc2UpCkBAIC00MzAsMTAgKzQwMCw2IEBAIHB1
YmxpYzoKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpICYmIEVOQUJMRShTVkcpCiAgICAgICAgIFBl
bmRpbmdTVkdEb2N1bWVudFNldCYgcGVuZGluZ1NWR0RvY3VtZW50cygpIHsgcmV0dXJuIG1fcGVu
ZGluZ1NWR0RvY3VtZW50czsgfQogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
ICAgICB2b2lkIHNldEhhc1BlbmRpbmdTaGFkZXJzKGJvb2wgaGFzUGVuZGluZ1NoYWRlcnMpIHsg
bV9oYXNQZW5kaW5nU2hhZGVycyA9IGhhc1BlbmRpbmdTaGFkZXJzOyB9Ci0gICAgICAgIGJvb2wg
aGFzUGVuZGluZ1NoYWRlcnMoKSBjb25zdCB7IHJldHVybiBtX2hhc1BlbmRpbmdTaGFkZXJzOyB9
Ci0jZW5kaWYKIAogICAgICAgICB2b2lkIHNldExpbmVIZWlnaHRWYWx1ZShDU1NWYWx1ZSogdmFs
dWUpIHsgbV9saW5lSGVpZ2h0VmFsdWUgPSB2YWx1ZTsgfQogICAgICAgICBDU1NWYWx1ZSogbGlu
ZUhlaWdodFZhbHVlKCkgeyByZXR1cm4gbV9saW5lSGVpZ2h0VmFsdWU7IH0KQEAgLTQ3OCw5ICs0
NDQsNiBAQCBwdWJsaWM6CiAgICAgICAgIGJvb2wgbV9hcHBseVByb3BlcnR5VG9WaXNpdGVkTGlu
a1N0eWxlOwogCiAgICAgICAgIFBlbmRpbmdJbWFnZVByb3BlcnR5TWFwIG1fcGVuZGluZ0ltYWdl
UHJvcGVydGllczsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGJvb2wgbV9oYXNQ
ZW5kaW5nU2hhZGVyczsKLSNlbmRpZgogI2lmIEVOQUJMRShDU1NfRklMVEVSUykgJiYgRU5BQkxF
KFNWRykKICAgICAgICAgUGVuZGluZ1NWR0RvY3VtZW50U2V0IG1fcGVuZGluZ1NWR0RvY3VtZW50
czsKICNlbmRpZgpAQCAtNTkwLDEwICs1NTMsNiBAQCBwcml2YXRlOgogCiAgICAgU3RhdGUgbV9z
dGF0ZTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBPd25QdHI8U3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtQ2FjaGU+IG1fY3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlOwotI2VuZGlmCi0K
ICAgICBmcmllbmQgY2xhc3MgRGVwcmVjYXRlZFN0eWxlQnVpbGRlcjsKICAgICBmcmllbmQgYm9v
bCBvcGVyYXRvcj09KGNvbnN0IE1hdGNoZWRQcm9wZXJ0aWVzJiwgY29uc3QgTWF0Y2hlZFByb3Bl
cnRpZXMmKTsKICAgICBmcmllbmQgYm9vbCBvcGVyYXRvciE9KGNvbnN0IE1hdGNoZWRQcm9wZXJ0
aWVzJiwgY29uc3QgTWF0Y2hlZFByb3BlcnRpZXMmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZVJ1bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5jcHAK
aW5kZXggOGIzZWYwMi4uY2UxMWE2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlUnVsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5jcHAKQEAgLTMz
LDcgKzMzLDYgQEAKICNpbmNsdWRlICJDU1NVbmtub3duUnVsZS5oIgogI2luY2x1ZGUgIlN0eWxl
UHJvcGVydGllcy5oIgogI2luY2x1ZGUgIlN0eWxlUnVsZUltcG9ydC5oIgotI2luY2x1ZGUgIldl
YktpdENTU0ZpbHRlclJ1bGUuaCIKICNpbmNsdWRlICJXZWJLaXRDU1NLZXlmcmFtZVJ1bGUuaCIK
ICNpbmNsdWRlICJXZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmgiCiAjaW5jbHVkZSAiV2ViS2l0Q1NT
UmVnaW9uUnVsZS5oIgpAQCAtOTgsMTEgKzk3LDYgQEAgdm9pZCBTdHlsZVJ1bGVCYXNlOjpkZXN0
cm95KCkKICAgICAgICAgZGVsZXRlIHN0YXRpY19jYXN0PFN0eWxlUnVsZVZpZXdwb3J0Kj4odGhp
cyk7CiAgICAgICAgIHJldHVybjsKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAg
ICBjYXNlIEZpbHRlcjoKLSAgICAgICAgZGVsZXRlIHN0YXRpY19jYXN0PFN0eWxlUnVsZUZpbHRl
cio+KHRoaXMpOwotICAgICAgICByZXR1cm47Ci0jZW5kaWYKICAgICBjYXNlIFVua25vd246CiAg
ICAgY2FzZSBDaGFyc2V0OgogICAgIGNhc2UgS2V5ZnJhbWU6CkBAIC0xNDQsMTAgKzEzOCw2IEBA
IFBhc3NSZWY8U3R5bGVSdWxlQmFzZT4gU3R5bGVSdWxlQmFzZTo6Y29weSgpIGNvbnN0CiAgICAg
Y2FzZSBWaWV3cG9ydDoKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IFN0eWxlUnVs
ZVZpZXdwb3J0Kj4odGhpcyktPmNvcHkoKTsKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSAgICBjYXNlIEZpbHRlcjoKLSAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IFN0
eWxlUnVsZUZpbHRlcio+KHRoaXMpLT5jb3B5KCk7Ci0jZW5kaWYKICAgICBjYXNlIEltcG9ydDoK
ICAgICAgICAgLy8gRklYTUU6IENvcHkgaW1wb3J0IHJ1bGVzLgogICAgICAgICBicmVhazsKQEAg
LTIwNywxMSArMTk3LDYgQEAgUGFzc1JlZlB0cjxDU1NSdWxlPiBTdHlsZVJ1bGVCYXNlOjpjcmVh
dGVDU1NPTVdyYXBwZXIoQ1NTU3R5bGVTaGVldCogcGFyZW50U2hlZXQKICAgICAgICAgcnVsZSA9
IENTU0hvc3RSdWxlOjpjcmVhdGUoc3RhdGljX2Nhc3Q8U3R5bGVSdWxlSG9zdCo+KHNlbGYpLCBw
YXJlbnRTaGVldCk7CiAgICAgICAgIGJyZWFrOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgIGNhc2UgRmlsdGVyOgotICAgICAgICBydWxlID0gV2ViS2l0Q1NTRmlsdGVyUnVs
ZTo6Y3JlYXRlKHN0YXRpY19jYXN0PFN0eWxlUnVsZUZpbHRlcio+KHNlbGYpLCBwYXJlbnRTaGVl
dCk7Ci0gICAgICAgIGJyZWFrOwotI2VuZGlmCiAgICAgY2FzZSBVbmtub3duOgogICAgIGNhc2Ug
Q2hhcnNldDoKICAgICBjYXNlIEtleWZyYW1lOgpAQCAtNDMyLDMyICs0MTcsNCBAQCBNdXRhYmxl
U3R5bGVQcm9wZXJ0aWVzJiBTdHlsZVJ1bGVWaWV3cG9ydDo6bXV0YWJsZVByb3BlcnRpZXMoKQog
fQogI2VuZGlmIC8vIEVOQUJMRShDU1NfREVWSUNFX0FEQVBUQVRJT04pCiAKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi1TdHlsZVJ1bGVGaWx0ZXI6OlN0eWxlUnVsZUZpbHRlcihjb25zdCBTdHJp
bmcmIGZpbHRlck5hbWUsIFBhc3NSZWY8U3R5bGVQcm9wZXJ0aWVzPiBwcm9wZXJ0aWVzKQotICAg
IDogU3R5bGVSdWxlQmFzZShGaWx0ZXIsIDApCi0gICAgLCBtX2ZpbHRlck5hbWUoZmlsdGVyTmFt
ZSkKLSAgICAsIG1fcHJvcGVydGllcyhzdGQ6Om1vdmUocHJvcGVydGllcykpCi17Ci19Ci0KLVN0
eWxlUnVsZUZpbHRlcjo6U3R5bGVSdWxlRmlsdGVyKGNvbnN0IFN0eWxlUnVsZUZpbHRlciYgbykK
LSAgICA6IFN0eWxlUnVsZUJhc2UobykKLSAgICAsIG1fZmlsdGVyTmFtZShvLm1fZmlsdGVyTmFt
ZSkKLSAgICAsIG1fcHJvcGVydGllcyhvLm1fcHJvcGVydGllcy0+bXV0YWJsZUNvcHkoKSkKLXsK
LX0KLQotU3R5bGVSdWxlRmlsdGVyOjp+U3R5bGVSdWxlRmlsdGVyKCkKLXsKLX0KLQotTXV0YWJs
ZVN0eWxlUHJvcGVydGllcyYgU3R5bGVSdWxlRmlsdGVyOjptdXRhYmxlUHJvcGVydGllcygpCi17
Ci0gICAgaWYgKCFtX3Byb3BlcnRpZXMtPmlzTXV0YWJsZSgpKQotICAgICAgICBtX3Byb3BlcnRp
ZXMgPSBtX3Byb3BlcnRpZXMtPm11dGFibGVDb3B5KCk7Ci0gICAgcmV0dXJuIHN0YXRpY19jYXN0
PE11dGFibGVTdHlsZVByb3BlcnRpZXMmPihtX3Byb3BlcnRpZXMuZ2V0KCkpOwotfQotCi0jZW5k
aWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvU3R5bGVSdWxlLmgKaW5kZXggNTRmNWMyNi4uOTFkZjRjMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJ1
bGUuaApAQCAtNTUsOSArNTUsNiBAQCBwdWJsaWM6CiAgICAgICAgIFZpZXdwb3J0ID0gMTUsCiAj
ZW5kaWYKICAgICAgICAgUmVnaW9uID0gMTYsCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
ICAgICBGaWx0ZXIgPSAxNywKLSNlbmRpZgogI2lmIEVOQUJMRShTSEFET1dfRE9NKQogICAgICAg
ICBIb3N0SW50ZXJuYWwgPSAxOCwgLy8gU3BlYyBzYXlzIEhvc3QgPSAxMDAxLCBidXQgd2UgY2Fu
IHVzZSBvbmx5IDUgYml0IGZvciB0eXBlKCkuCiAjZW5kaWYKQEAgLTgyLDkgKzc5LDYgQEAgcHVi
bGljOgogI2lmIEVOQUJMRShTSEFET1dfRE9NKQogICAgIGJvb2wgaXNIb3N0UnVsZSgpIGNvbnN0
IHsgcmV0dXJuIHR5cGUoKSA9PSBIb3N0SW50ZXJuYWw7IH0KICNlbmRpZgotI2lmIEVOQUJMRShD
U1NfU0hBREVSUykKLSAgICBib29sIGlzRmlsdGVyUnVsZSgpIGNvbnN0IHsgcmV0dXJuIHR5cGUo
KSA9PSBGaWx0ZXI7IH0KLSNlbmRpZgogCiAgICAgUGFzc1JlZjxTdHlsZVJ1bGVCYXNlPiBjb3B5
KCkgY29uc3Q7CiAKQEAgLTMyNSwzMiArMzE5LDYgQEAgaW5saW5lIGNvbnN0IFN0eWxlUnVsZVJl
Z2lvbiogdG9TdHlsZVJ1bGVSZWdpb24oY29uc3QgU3R5bGVSdWxlR3JvdXAqIHJ1bGUpCiAgICAg
cmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IFN0eWxlUnVsZVJlZ2lvbio+KHJ1bGUpOwogfQogCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotY2xhc3MgU3R5bGVSdWxlRmlsdGVyIDogcHVibGljIFN0
eWxlUnVsZUJhc2UgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmPFN0eWxlUnVsZUZpbHRl
cj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgZmlsdGVyTmFtZSwgUGFzc1JlZjxTdHlsZVByb3BlcnRp
ZXM+IHByb3BlcnRpZXMpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBTdHls
ZVJ1bGVGaWx0ZXIoZmlsdGVyTmFtZSwgc3RkOjptb3ZlKHByb3BlcnRpZXMpKSk7Ci0gICAgfQot
Ci0gICAgflN0eWxlUnVsZUZpbHRlcigpOwotCi0gICAgY29uc3QgU3RyaW5nJiBmaWx0ZXJOYW1l
KCkgY29uc3QgeyByZXR1cm4gbV9maWx0ZXJOYW1lOyB9Ci0KLSAgICBjb25zdCBTdHlsZVByb3Bl
cnRpZXMmIHByb3BlcnRpZXMoKSBjb25zdCB7IHJldHVybiBtX3Byb3BlcnRpZXMuZ2V0KCk7IH0K
LSAgICBNdXRhYmxlU3R5bGVQcm9wZXJ0aWVzJiBtdXRhYmxlUHJvcGVydGllcygpOwotCi0gICAg
UGFzc1JlZjxTdHlsZVJ1bGVGaWx0ZXI+IGNvcHkoKSBjb25zdCB7IHJldHVybiBhZG9wdFJlZigq
bmV3IFN0eWxlUnVsZUZpbHRlcigqdGhpcykpOyB9Ci0KLXByaXZhdGU6Ci0gICAgU3R5bGVSdWxl
RmlsdGVyKGNvbnN0IFN0cmluZyYsIFBhc3NSZWY8U3R5bGVQcm9wZXJ0aWVzPik7Ci0gICAgU3R5
bGVSdWxlRmlsdGVyKGNvbnN0IFN0eWxlUnVsZUZpbHRlciYpOwotCi0gICAgU3RyaW5nIG1fZmls
dGVyTmFtZTsKLSAgICBSZWY8U3R5bGVQcm9wZXJ0aWVzPiBtX3Byb3BlcnRpZXM7Ci19OwotI2Vu
ZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAj
ZW5kaWYgLy8gU3R5bGVSdWxlX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVNoZWV0Q29udGVudHMuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlU2hlZXRDb250ZW50
cy5jcHAKaW5kZXggOTkxMjdhNC4uOWEzODQ5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL1N0eWxlU2hlZXRDb250ZW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxl
U2hlZXRDb250ZW50cy5jcHAKQEAgLTQ2Nyw5ICs0NjcsNiBAQCBzdGF0aWMgYm9vbCBjaGlsZFJ1
bGVzSGF2ZUZhaWxlZE9yQ2FuY2VsZWRTdWJyZXNvdXJjZXMoY29uc3QgVmVjdG9yPFJlZlB0cjxT
dHlsZQogI2lmIEVOQUJMRShDU1NfREVWSUNFX0FEQVBUQVRJT04pCiAgICAgICAgIGNhc2UgU3R5
bGVSdWxlQmFzZTo6Vmlld3BvcnQ6CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0g
ICAgICAgIGNhc2UgU3R5bGVSdWxlQmFzZTo6RmlsdGVyOgotI2VuZGlmCiAgICAgICAgICAgICBi
cmVhazsKICAgICAgICAgfQogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9X
ZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktp
dENTU0FycmF5RnVuY3Rpb25WYWx1ZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDgxMzAxNjkuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0FycmF5
RnVuY3Rpb25WYWx1ZS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw2NCArMCwwIEBACi0vKgotICog
Q29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0Ogot
ICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAg
IGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwot
ICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFO
WQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAq
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
Ci0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
Ci0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAi
V2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlOjpX
ZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUoKQotICAgIDogQ1NTVmFsdWVMaXN0KFdlYktpdENT
U0FycmF5RnVuY3Rpb25WYWx1ZUNsYXNzLCBDb21tYVNlcGFyYXRvcikKLXsKLX0KLQotV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlOjpXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUoY29uc3Qg
V2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlJiBjbG9uZUZyb20pCi0gICAgOiBDU1NWYWx1ZUxp
c3QoY2xvbmVGcm9tKQotewotfQotCi1TdHJpbmcgV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVl
OjpjdXN0b21DU1NUZXh0KCkgY29uc3QKLXsKLSAgICByZXR1cm4gImFycmF5KCIgKyBDU1NWYWx1
ZUxpc3Q6OmN1c3RvbUNTU1RleHQoKSArICcpJzsKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NB
cnJheUZ1bmN0aW9uVmFsdWU+IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZTo6Y2xvbmVGb3JD
U1NPTSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWUoKnRoaXMpKTsKLX0KLQotYm9vbCBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFs
dWU6OmVxdWFscyhjb25zdCBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUmIG90aGVyKSBjb25z
dAotewotICAgIHJldHVybiBDU1NWYWx1ZUxpc3Q6OmVxdWFscyhvdGhlcik7Ci19Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuaCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuaApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMWMyMzcxZS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmgKKysrIC9kZXYvbnVsbApAQCAt
MSw2NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5j
b3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xE
RVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAq
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFdl
YktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZV9oCi0jZGVmaW5lIFdlYktpdENTU0FycmF5RnVuY3Rp
b25WYWx1ZV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJDU1NWYWx1
ZUxpc3QuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLWNsYXNzIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSA6IHB1YmxpYyBDU1NWYWx1
ZUxpc3QgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmPFdlYktpdENTU0FycmF5RnVuY3Rp
b25WYWx1ZT4gY3JlYXRlKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdl
YktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSgpKTsKLSAgICB9Ci0KLSAgICBTdHJpbmcgY3VzdG9t
Q1NTVGV4dCgpIGNvbnN0OwotCi0gICAgUGFzc1JlZlB0cjxXZWJLaXRDU1NBcnJheUZ1bmN0aW9u
VmFsdWU+IGNsb25lRm9yQ1NTT00oKSBjb25zdDsKLQotICAgIGJvb2wgZXF1YWxzKGNvbnN0IFdl
YktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSYpIGNvbnN0OwotCi1wcml2YXRlOgotICAgIFdlYktp
dENTU0FycmF5RnVuY3Rpb25WYWx1ZSgpOwotICAgIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1
ZShjb25zdCBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUmIGNsb25lRnJvbSk7Ci19OwotCi1D
U1NfVkFMVUVfVFlQRV9DQVNUUyhXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUsIGlzV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlKCkpCi0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2Vu
ZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI3
ZjBhNGYuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1
bGUuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsOTAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMyBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
LSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
LSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTRmlsdGVy
UnVsZS5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiUHJvcGVydHlT
ZXRDU1NTdHlsZURlY2xhcmF0aW9uLmgiCi0jaW5jbHVkZSAiU3R5bGVQcm9wZXJ0aWVzLmgiCi0j
aW5jbHVkZSAiU3R5bGVSdWxlLmgiCi0jaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5o
PgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVdlYktpdENTU0ZpbHRlclJ1bGU6OldlYktpdENT
U0ZpbHRlclJ1bGUoU3R5bGVSdWxlRmlsdGVyKiBmaWx0ZXJSdWxlLCBDU1NTdHlsZVNoZWV0KiBw
YXJlbnQpCi0gICAgOiBDU1NSdWxlKHBhcmVudCkKLSAgICAsIG1fZmlsdGVyUnVsZShmaWx0ZXJS
dWxlKQotewotfQotCi1XZWJLaXRDU1NGaWx0ZXJSdWxlOjp+V2ViS2l0Q1NTRmlsdGVyUnVsZSgp
Ci17Ci0gICAgaWYgKG1fcHJvcGVydGllc0NTU09NV3JhcHBlcikKLSAgICAgICAgbV9wcm9wZXJ0
aWVzQ1NTT01XcmFwcGVyLT5jbGVhclBhcmVudFJ1bGUoKTsKLX0KLQotQ1NTU3R5bGVEZWNsYXJh
dGlvbiogV2ViS2l0Q1NTRmlsdGVyUnVsZTo6c3R5bGUoKQotewotICAgIGlmICghbV9wcm9wZXJ0
aWVzQ1NTT01XcmFwcGVyKQotICAgICAgICBtX3Byb3BlcnRpZXNDU1NPTVdyYXBwZXIgPSBTdHls
ZVJ1bGVDU1NTdHlsZURlY2xhcmF0aW9uOjpjcmVhdGUobV9maWx0ZXJSdWxlLT5tdXRhYmxlUHJv
cGVydGllcygpLCAqdGhpcyk7Ci0gICAgcmV0dXJuIG1fcHJvcGVydGllc0NTU09NV3JhcHBlci5n
ZXQoKTsKLX0KLQotU3RyaW5nIFdlYktpdENTU0ZpbHRlclJ1bGU6OmNzc1RleHQoKSBjb25zdAot
ewotICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OwotICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCJA
LXdlYmtpdC1maWx0ZXIgIik7Ci0KLSAgICBTdHJpbmcgZmlsdGVyTmFtZSA9IG1fZmlsdGVyUnVs
ZS0+ZmlsdGVyTmFtZSgpOwotICAgIHJlc3VsdC5hcHBlbmQoZmlsdGVyTmFtZSk7Ci0gICAgcmVz
dWx0LmFwcGVuZExpdGVyYWwoIiB7ICIpOwotCi0gICAgU3RyaW5nIGRlc2NzID0gbV9maWx0ZXJS
dWxlLT5wcm9wZXJ0aWVzKCkuYXNUZXh0KCk7Ci0gICAgcmVzdWx0LmFwcGVuZChkZXNjcyk7Ci0g
ICAgaWYgKCFkZXNjcy5pc0VtcHR5KCkpCi0gICAgICAgIHJlc3VsdC5hcHBlbmQoJyAnKTsKLSAg
ICByZXN1bHQuYXBwZW5kKCd9Jyk7Ci0KLSAgICByZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7Ci19
Ci0KLXZvaWQgV2ViS2l0Q1NTRmlsdGVyUnVsZTo6cmVhdHRhY2goU3R5bGVSdWxlQmFzZSogcnVs
ZSkKLXsKLSAgICBBU1NFUlQocnVsZSk7Ci0gICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElD
QVRJT04ocnVsZS0+aXNGaWx0ZXJSdWxlKCkpOwotICAgIG1fZmlsdGVyUnVsZSA9IHN0YXRpY19j
YXN0PFN0eWxlUnVsZUZpbHRlcio+KHJ1bGUpOwotICAgIGlmIChtX3Byb3BlcnRpZXNDU1NPTVdy
YXBwZXIpCi0gICAgICAgIG1fcHJvcGVydGllc0NTU09NV3JhcHBlci0+cmVhdHRhY2gobV9maWx0
ZXJSdWxlLT5tdXRhYmxlUHJvcGVydGllcygpKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJL
aXRDU1NGaWx0ZXJSdWxlLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDM1NWM1NTEu
LjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuaAor
KysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMg
QWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2lmbmRlZiBXZWJLaXRDU1NGaWx0ZXJSdWxlX2gKLSNkZWZpbmUgV2ViS2l0Q1NTRmlsdGVy
UnVsZV9oCi0KLSNpbmNsdWRlICJDU1NSdWxlLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ1NTU3R5bGVEZWNsYXJhdGlvbjsKLWNs
YXNzIFN0eWxlUnVsZUZpbHRlcjsKLWNsYXNzIFN0eWxlUnVsZUNTU1N0eWxlRGVjbGFyYXRpb247
Ci0KLWNsYXNzIFdlYktpdENTU0ZpbHRlclJ1bGUgOiBwdWJsaWMgQ1NTUnVsZSB7Ci1wdWJsaWM6
Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyUnVsZT4gY3JlYXRlKFN0eWxl
UnVsZUZpbHRlciogcnVsZSwgQ1NTU3R5bGVTaGVldCogc2hlZXQpIHsgcmV0dXJuIGFkb3B0UmVm
KG5ldyBXZWJLaXRDU1NGaWx0ZXJSdWxlKHJ1bGUsIHNoZWV0KSk7IH0KLQotICAgIHZpcnR1YWwg
fldlYktpdENTU0ZpbHRlclJ1bGUoKTsKLQotICAgIHZpcnR1YWwgQ1NTUnVsZTo6VHlwZSB0eXBl
KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gV0VCS0lUX0ZJTFRFUl9SVUxFOyB9Ci0gICAgdmly
dHVhbCBTdHJpbmcgY3NzVGV4dCgpIGNvbnN0IG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBy
ZWF0dGFjaChTdHlsZVJ1bGVCYXNlKikgb3ZlcnJpZGU7Ci0KLSAgICBDU1NTdHlsZURlY2xhcmF0
aW9uKiBzdHlsZSgpOwotCi1wcml2YXRlOgotICAgIFdlYktpdENTU0ZpbHRlclJ1bGUoU3R5bGVS
dWxlRmlsdGVyKiwgQ1NTU3R5bGVTaGVldCogcGFyZW50KTsKLQotICAgIFJlZlB0cjxTdHlsZVJ1
bGVGaWx0ZXI+IG1fZmlsdGVyUnVsZTsKLSAgICBtdXRhYmxlIFJlZlB0cjxTdHlsZVJ1bGVDU1NT
dHlsZURlY2xhcmF0aW9uPiBtX3Byb3BlcnRpZXNDU1NPTVdyYXBwZXI7Ci19OwotCi19Ci0KLSNl
bmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBXZWJLaXRDU1NGaWx0ZXJS
dWxlX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxl
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmlkbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjhlOGM3Ni4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyUnVsZS5pZGwKKysrIC9kZXYvbnVsbApAQCAtMSwzNiAr
MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3Jh
dGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
Ci0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQot
ICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoK
LSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFT
IElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICog
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
Ci0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLVsKLSAgICBDb25kaXRpb25hbD1D
U1NfU0hBREVSUywKLV0gaW50ZXJmYWNlIFdlYktpdENTU0ZpbHRlclJ1bGUgOiBDU1NSdWxlIHsK
LSAgICByZWFkb25seSBhdHRyaWJ1dGUgQ1NTU3R5bGVEZWNsYXJhdGlvbiBzdHlsZTsKLQotICAg
IC8vIEZJWE1FOiBXZSBzaG91bGQgZXhwb3NlIHRoZSBmaWx0ZXIgbmFtZSBvbmNlIHRoZSBDU1NP
TSBmb3IgdGhlIEBmaWx0ZXIgcnVsZSBpcyBzcGVjaWZpZWQuCi19OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5jcHAKaW5kZXggOTk0ZDMxNi4uNThhOGEyMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwCkBAIC0zNSwyMSAr
MzUsMTEgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV2ViS2l0Q1NTRmlsdGVyVmFsdWU6Oldl
YktpdENTU0ZpbHRlclZhbHVlKEZpbHRlck9wZXJhdGlvblR5cGUgb3BlcmF0aW9uVHlwZSkKLSAg
ICA6IENTU1ZhbHVlTGlzdChXZWJLaXRDU1NGaWx0ZXJDbGFzcywgdHlwZVVzZXNTcGFjZVNlcGFy
YXRvcihvcGVyYXRpb25UeXBlKSA/IFNwYWNlU2VwYXJhdG9yIDogQ29tbWFTZXBhcmF0b3IpCisg
ICAgOiBDU1NWYWx1ZUxpc3QoV2ViS2l0Q1NTRmlsdGVyQ2xhc3MsIFNwYWNlU2VwYXJhdG9yKQog
ICAgICwgbV90eXBlKG9wZXJhdGlvblR5cGUpCiB7CiB9CiAKLWJvb2wgV2ViS2l0Q1NTRmlsdGVy
VmFsdWU6OnR5cGVVc2VzU3BhY2VTZXBhcmF0b3IoRmlsdGVyT3BlcmF0aW9uVHlwZSBvcGVyYXRp
b25UeXBlKQotewotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICByZXR1cm4gb3BlcmF0aW9u
VHlwZSAhPSBDdXN0b21GaWx0ZXJPcGVyYXRpb247Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShv
cGVyYXRpb25UeXBlKTsKLSAgICByZXR1cm4gdHJ1ZTsKLSNlbmRpZgotfQotCiBTdHJpbmcgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWU6OmN1c3RvbUNTU1RleHQoKSBjb25zdAogewogICAgIGNvbnN0IGNo
YXIqIHJlc3VsdCA9ICIiOwpAQCAtODksMTEgKzc5LDYgQEAgU3RyaW5nIFdlYktpdENTU0ZpbHRl
clZhbHVlOjpjdXN0b21DU1NUZXh0KCkgY29uc3QKICAgICBjYXNlIERyb3BTaGFkb3dGaWx0ZXJP
cGVyYXRpb246CiAgICAgICAgIHJlc3VsdCA9ICJkcm9wLXNoYWRvdygiOwogICAgICAgICBicmVh
azsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBDdXN0b21GaWx0ZXJPcGVyYXRp
b246Ci0gICAgICAgIHJlc3VsdCA9ICJjdXN0b20oIjsKLSAgICAgICAgYnJlYWs7Ci0jZW5kaWYK
ICAgICB9CiAKICAgICByZXR1cm4gcmVzdWx0ICsgQ1NTVmFsdWVMaXN0OjpjdXN0b21DU1NUZXh0
KCkgKyAnKSc7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oCmluZGV4
IGIwOWU4ODIuLjZjMDlhNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRD
U1NGaWx0ZXJWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5oCkBAIC01MCwxMyArNTAsOCBAQCBwdWJsaWM6CiAgICAgICAgIENvbnRyYXN0RmlsdGVy
T3BlcmF0aW9uLAogICAgICAgICBCbHVyRmlsdGVyT3BlcmF0aW9uLAogICAgICAgICBEcm9wU2hh
ZG93RmlsdGVyT3BlcmF0aW9uCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICAsIEN1
c3RvbUZpbHRlck9wZXJhdGlvbgotI2VuZGlmCiAgICAgfTsKIAotICAgIHN0YXRpYyBib29sIHR5
cGVVc2VzU3BhY2VTZXBhcmF0b3IoRmlsdGVyT3BlcmF0aW9uVHlwZSk7Ci0KICAgICBzdGF0aWMg
UGFzc1JlZjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gY3JlYXRlKEZpbHRlck9wZXJhdGlvblR5cGUg
dHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYktpdENTU0ZpbHRl
clZhbHVlKHR5cGUpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NG
aWx0ZXJWYWx1ZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
aWRsCmluZGV4IDVmODQxNDQuLjk2YmExZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktp
dENTU0ZpbHRlclZhbHVlLmlkbApAQCAtNDMsMTAgKzQzLDYgQEAKICAgICBjb25zdCB1bnNpZ25l
ZCBzaG9ydCBDU1NfRklMVEVSX0JMVVIgPSAxMDsKICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBD
U1NfRklMVEVSX0RST1BfU0hBRE9XID0gMTE7CiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9DU1NfU0hB
REVSUykgJiYgRU5BQkxFX0NTU19TSEFERVJTCi0gICAgY29uc3QgdW5zaWduZWQgc2hvcnQgQ1NT
X0ZJTFRFUl9DVVNUT00gPSAxMjsKLSNlbmRpZgotCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVu
c2lnbmVkIHNob3J0IG9wZXJhdGlvblR5cGU7CiAKICAgICBnZXR0ZXIgQ1NTVmFsdWUgKFtEZWZh
dWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBpbmRleCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDU5ZDg0YTYuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL1dlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsODEg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBBZG9iZSBTeXN0ZW1zIEluY29ycG9y
YXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxB
UyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQot
ICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcu
aCIKLSNpbmNsdWRlICJXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmgiCi0KLSNpbmNsdWRlIDx3
dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLW5h
bWVzcGFjZSBXZWJDb3JlIHsKLQotV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZTo6V2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZSgpCi0gICAgOiBDU1NWYWx1ZUxpc3QoV2ViS2l0Q1NTTWF0RnVuY3Rp
b25WYWx1ZUNsYXNzLCBDb21tYVNlcGFyYXRvcikKLXsKLX0KLQotV2ViS2l0Q1NTTWF0RnVuY3Rp
b25WYWx1ZTo6V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZShjb25zdCBXZWJLaXRDU1NNYXRGdW5j
dGlvblZhbHVlJiBjbG9uZUZyb20pCi0gICAgOiBDU1NWYWx1ZUxpc3QoY2xvbmVGcm9tKQotewot
fQotCi1TdHJpbmcgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNv
bnN0Ci17Ci0gICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOwotICAgIGlmIChsZW5ndGgoKSA9PSA0
KQotICAgICAgICBidWlsZGVyLmFwcGVuZExpdGVyYWwoIm1hdDIoIik7Ci0gICAgZWxzZSBpZiAo
bGVuZ3RoKCkgPT0gOSkKLSAgICAgICAgYnVpbGRlci5hcHBlbmRMaXRlcmFsKCJtYXQzKCIpOwot
ICAgIGVsc2UgaWYgKGxlbmd0aCgpID09IDE2KQotICAgICAgICBidWlsZGVyLmFwcGVuZExpdGVy
YWwoIm1hdDQoIik7Ci0gICAgZWxzZSB7Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwot
ICAgICAgICByZXR1cm4gU3RyaW5nKCk7Ci0gICAgfQotCi0gICAgYnVpbGRlci5hcHBlbmQoQ1NT
VmFsdWVMaXN0OjpjdXN0b21DU1NUZXh0KCkpOwotICAgIGJ1aWxkZXIuYXBwZW5kKCcpJyk7Ci0g
ICAgcmV0dXJuIGJ1aWxkZXIudG9TdHJpbmcoKTsKLX0KLQotUGFzc1JlZlB0cjxXZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlPiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlOjpjbG9uZUZvckNTU09N
KCkgY29uc3QKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYktpdENTU01hdEZ1bmN0aW9u
VmFsdWUoKnRoaXMpKTsKLX0KLQotYm9vbCBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlOjplcXVh
bHMoY29uc3QgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSYgb3RoZXIpIGNvbnN0Ci17Ci0gICAg
cmV0dXJuIENTU1ZhbHVlTGlzdDo6ZXF1YWxzKG90aGVyKTsKLX0KLQotfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDQ5YTViOTAuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktp
dENTU01hdEZ1bmN0aW9uVmFsdWUuaAorKysgL2Rldi9udWxsCkBAIC0xLDY0ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwot
ICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBB
TkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViS2l0Q1NTTWF0RnVuY3Rp
b25WYWx1ZV9oCi0jZGVmaW5lIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVfaAotCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiQ1NTVmFsdWVMaXN0LmgiCi0jaW5jbHVkZSA8
d3RmL1Bhc3NSZWZQdHIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlIDogcHVibGljIENTU1ZhbHVlTGlzdCB7Ci1wdWJsaWM6Ci0gICAg
c3RhdGljIFBhc3NSZWY8V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZT4gY3JlYXRlKCkKLSAgICB7
Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUp
OwotICAgIH0KLQotICAgIFN0cmluZyBjdXN0b21DU1NUZXh0KCkgY29uc3Q7Ci0KLSAgICBQYXNz
UmVmUHRyPFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU+IGNsb25lRm9yQ1NTT00oKSBjb25zdDsK
LQotICAgIGJvb2wgZXF1YWxzKGNvbnN0IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUmKSBjb25z
dDsKLQotcHJpdmF0ZToKLSAgICBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlKCk7Ci0gICAgV2Vi
S2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZShjb25zdCBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlJiBj
bG9uZUZyb20pOwotfTsKLQotQ1NTX1ZBTFVFX1RZUEVfQ0FTVFMoV2ViS2l0Q1NTTWF0RnVuY3Rp
b25WYWx1ZSwgaXNXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlKCkpCi0KLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFlNTQ0MTEuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwCisrKyAvZGV2L251bGwKQEAg
LTEsNjUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIElu
Y29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERF
UiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICog
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJj
b25maWcuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgiCi0KLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLSAgICAKLVdlYktpdENT
U01peEZ1bmN0aW9uVmFsdWU6OldlYktpdENTU01peEZ1bmN0aW9uVmFsdWUoKQotICAgIDogQ1NT
VmFsdWVMaXN0KFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWVDbGFzcywgU3BhY2VTZXBhcmF0b3Ip
Ci17Ci19Ci0KLVdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU6OldlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUoY29uc3QgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSYgY2xvbmVGcm9tKQotICAgIDog
Q1NTVmFsdWVMaXN0KGNsb25lRnJvbSkKLXsKLX0KLQotU3RyaW5nIFdlYktpdENTU01peEZ1bmN0
aW9uVmFsdWU6OmN1c3RvbUNTU1RleHQoKSBjb25zdAotewotICAgIHJldHVybiAibWl4KCIgKyBD
U1NWYWx1ZUxpc3Q6OmN1c3RvbUNTU1RleHQoKSArICcpJzsKLX0KLQotUGFzc1JlZlB0cjxXZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlPiBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlOjpjbG9uZUZv
ckNTU09NKCkgY29uc3QKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUoKnRoaXMpKTsKLX0KLQotYm9vbCBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVl
OjplcXVhbHMoY29uc3QgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSYgb3RoZXIpIGNvbnN0Ci17
Ci0gICAgcmV0dXJuIENTU1ZhbHVlTGlzdDo6ZXF1YWxzKG90aGVyKTsKLX0KLQotfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGFlNDMzODkuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaAorKysgL2Rldi9udWxsCkBAIC0xLDY0ICswLDAg
QEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJ
U+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICog
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
Ci0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViS2l0Q1NTTWl4
RnVuY3Rpb25WYWx1ZV9oCi0jZGVmaW5lIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWVfaAotCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiQ1NTVmFsdWVMaXN0LmgiCi0jaW5j
bHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBX
ZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlIDogcHVibGljIENTU1ZhbHVlTGlzdCB7Ci1wdWJsaWM6
Ci0gICAgc3RhdGljIFBhc3NSZWY8V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZT4gY3JlYXRlKCkK
LSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUoKSk7Ci0gICAgfQotCi0gICAgU3RyaW5nIGN1c3RvbUNTU1RleHQoKSBjb25zdDsKLQot
ICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZT4gY2xvbmVGb3JDU1NPTSgp
IGNvbnN0OwotCi0gICAgYm9vbCBlcXVhbHMoY29uc3QgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1
ZSYpIGNvbnN0OwotCi1wcml2YXRlOgotICAgIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUoKTsK
LSAgICBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKGNvbnN0IFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUmIGNsb25lRnJvbSk7Ci19OwotCi1DU1NfVkFMVUVfVFlQRV9DQVNUUyhXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlLCBpc1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUoKSkKLQotfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmlk
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2E3YzAyZi4uMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5pZGwKKysrIC9kZXYv
bnVsbApAQCAtMSwzNSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0g
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
IEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLVsKLSAg
ICBDb25kaXRpb25hbD1DU1NfU0hBREVSUywKLSAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxl
Ci1dIGludGVyZmFjZSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlIDogQ1NTVmFsdWVMaXN0IHsK
LX07Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NTaGFkZXJWYWx1
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1Yzk2MmM1Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9XZWJLaXRDU1NTaGFkZXJWYWx1ZS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwx
MDggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29y
cG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
IOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVS
IEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIldlYktpdENTU1No
YWRlclZhbHVlLmgiCi0KLSNpbmNsdWRlICJDU1NQYXJzZXIuaCIKLSNpbmNsdWRlICJDYWNoZWRS
ZXNvdXJjZUxvYWRlci5oIgotI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlUmVxdWVzdC5oIgotI2lu
Y2x1ZGUgIkNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCIKLSNpbmNsdWRlICJEb2N1
bWVudC5oIgotI2luY2x1ZGUgIlVSTC5oIgotI2luY2x1ZGUgIlN0eWxlQ2FjaGVkU2hhZGVyLmgi
Ci0jaW5jbHVkZSAiU3R5bGVQZW5kaW5nU2hhZGVyLmgiCi0jaW5jbHVkZSA8d3RmL3RleHQvU3Ry
aW5nQnVpbGRlci5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVdlYktpdENTU1NoYWRlclZh
bHVlOjpXZWJLaXRDU1NTaGFkZXJWYWx1ZShjb25zdCBTdHJpbmcmIHVybCkKLSAgICA6IENTU1Zh
bHVlKFdlYktpdENTU1NoYWRlckNsYXNzKQotICAgICwgbV91cmwodXJsKQotICAgICwgbV9hY2Nl
c3NlZFNoYWRlcihmYWxzZSkKLXsKLX0KLQotV2ViS2l0Q1NTU2hhZGVyVmFsdWU6On5XZWJLaXRD
U1NTaGFkZXJWYWx1ZSgpCi17Ci19Ci0KLVVSTCBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y29tcGxl
dGVVUkwoQ2FjaGVkUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikgY29uc3QKLXsKLSAgICByZXR1cm4g
bG9hZGVyLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTChtX3VybCk7Ci19Ci0KLVN0eWxlQ2FjaGVk
U2hhZGVyKiBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y2FjaGVkU2hhZGVyKENhY2hlZFJlc291cmNl
TG9hZGVyKiBsb2FkZXIpCi17Ci0gICAgQVNTRVJUKGxvYWRlcik7Ci0KLSAgICBpZiAoIW1fYWNj
ZXNzZWRTaGFkZXIpIHsKLSAgICAgICAgbV9hY2Nlc3NlZFNoYWRlciA9IHRydWU7Ci0KLSAgICAg
ICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0KGNvbXBsZXRl
VVJMKGxvYWRlcikpKTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IoY2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0SW5pdGlhdG9ycygpLmNzcyk7Ci0gICAgICAgIGlmIChDYWNoZWRSZXNvdXJjZUhh
bmRsZTxDYWNoZWRTaGFkZXI+IGNhY2hlZFNoYWRlciA9IGxvYWRlci0+cmVxdWVzdFNoYWRlcihy
ZXF1ZXN0KSkKLSAgICAgICAgICAgIG1fc2hhZGVyID0gU3R5bGVDYWNoZWRTaGFkZXI6OmNyZWF0
ZShjYWNoZWRTaGFkZXIuZ2V0KCkpOwotICAgIH0KLQotICAgIHJldHVybiAobV9zaGFkZXIgJiYg
bV9zaGFkZXItPmlzQ2FjaGVkU2hhZGVyKCkpID8gc3RhdGljX2Nhc3Q8U3R5bGVDYWNoZWRTaGFk
ZXIqPihtX3NoYWRlci5nZXQoKSkgOiAwOwotfQotCi1TdHlsZVNoYWRlciogV2ViS2l0Q1NTU2hh
ZGVyVmFsdWU6OmNhY2hlZE9yUGVuZGluZ1NoYWRlcigpCi17Ci0gICAgaWYgKCFtX3NoYWRlcikK
LSAgICAgICAgbV9zaGFkZXIgPSBTdHlsZVBlbmRpbmdTaGFkZXI6OmNyZWF0ZSh0aGlzKTsKLQot
ICAgIHJldHVybiBtX3NoYWRlci5nZXQoKTsKLX0KLQotU3RyaW5nIFdlYktpdENTU1NoYWRlclZh
bHVlOjpjdXN0b21DU1NUZXh0KCkgY29uc3QKLXsKLSAgICBTdHJpbmdCdWlsZGVyIHJlc3VsdDsK
LSAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgidXJsKCIpOwotICAgIHJlc3VsdC5hcHBlbmQocXVv
dGVDU1NVUkxJZk5lZWRlZChtX3VybCkpOwotICAgIHJlc3VsdC5hcHBlbmQoJyknKTsKLSAgICBp
ZiAoIW1fZm9ybWF0LmlzRW1wdHkoKSkgewotICAgICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgi
IGZvcm1hdCgnIik7Ci0gICAgICAgIHJlc3VsdC5hcHBlbmQobV9mb3JtYXQpOwotICAgICAgICBy
ZXN1bHQuYXBwZW5kTGl0ZXJhbCgiJykiKTsKLSAgICB9Ci0gICAgcmV0dXJuIHJlc3VsdC50b1N0
cmluZygpOwotfQotCi1ib29sIFdlYktpdENTU1NoYWRlclZhbHVlOjplcXVhbHMoY29uc3QgV2Vi
S2l0Q1NTU2hhZGVyVmFsdWUmIG90aGVyKSBjb25zdAotewotICAgIHJldHVybiBtX3VybCA9PSBv
dGhlci5tX3VybDsKLX0KLSAgICAKLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJL
aXRDU1NTaGFkZXJWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1NoYWRlclZh
bHVlLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc5ZDM1ODkuLjAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmgKKysrIC9kZXYvbnVs
bApAQCAtMSw3NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3Rl
bXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFp
bWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgot
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZu
ZGVmIFdlYktpdENTU1NoYWRlclZhbHVlX2gKLSNkZWZpbmUgV2ViS2l0Q1NTU2hhZGVyVmFsdWVf
aAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiQ1NTVmFsdWUuaCIKLQot
bmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBDYWNoZWRSZXNvdXJjZUxvYWRlcjsKLWNsYXNz
IFVSTDsKLWNsYXNzIFN0eWxlQ2FjaGVkU2hhZGVyOwotY2xhc3MgU3R5bGVTaGFkZXI7Ci0KLWNs
YXNzIFdlYktpdENTU1NoYWRlclZhbHVlIDogcHVibGljIENTU1ZhbHVlIHsKLXB1YmxpYzoKLSAg
ICBzdGF0aWMgUGFzc1JlZjxXZWJLaXRDU1NTaGFkZXJWYWx1ZT4gY3JlYXRlKGNvbnN0IFN0cmlu
ZyYgdXJsKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IFdlYktpdENTU1NoYWRlclZhbHVlKHVybCkp
OyB9Ci0gICAgfldlYktpdENTU1NoYWRlclZhbHVlKCk7Ci0KLSAgICBjb25zdCBTdHJpbmcmIGZv
cm1hdCgpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybWF0OyB9Ci0gICAgdm9pZCBzZXRGb3JtYXQoY29u
c3QgU3RyaW5nJiBmb3JtYXQpIHsgbV9mb3JtYXQgPSBmb3JtYXQ7IH0KLQotICAgIFVSTCBjb21w
bGV0ZVVSTChDYWNoZWRSZXNvdXJjZUxvYWRlciopIGNvbnN0OwotICAgIFN0eWxlQ2FjaGVkU2hh
ZGVyKiBjYWNoZWRTaGFkZXIoQ2FjaGVkUmVzb3VyY2VMb2FkZXIqKTsKLSAgICBTdHlsZVNoYWRl
ciogY2FjaGVkT3JQZW5kaW5nU2hhZGVyKCk7Ci0KLSAgICBTdHJpbmcgY3VzdG9tQ1NTVGV4dCgp
IGNvbnN0OwotCi0gICAgYm9vbCBlcXVhbHMoY29uc3QgV2ViS2l0Q1NTU2hhZGVyVmFsdWUmKSBj
b25zdDsKLQotcHJpdmF0ZToKLSAgICBleHBsaWNpdCBXZWJLaXRDU1NTaGFkZXJWYWx1ZShjb25z
dCBTdHJpbmcmIHVybCk7Ci0KLSAgICBTdHJpbmcgbV91cmw7Ci0gICAgU3RyaW5nIG1fZm9ybWF0
OwotICAgIFJlZlB0cjxTdHlsZVNoYWRlcj4gbV9zaGFkZXI7Ci0gICAgYm9vbCBtX2FjY2Vzc2Vk
U2hhZGVyOwotfTsKLQotQ1NTX1ZBTFVFX1RZUEVfQ0FTVFMoV2ViS2l0Q1NTU2hhZGVyVmFsdWUs
IGlzV2ViS2l0Q1NTU2hhZGVyVmFsdWUoKSkKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gV2ViS2l0Q1NTU2hhZGVy
VmFsdWVfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJl
c291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5j
cHAKaW5kZXggNTYzZDUwNi4uNWYwYmM3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCkBAIC0xMzUsMTAgKzEzNSw2IEBAIHN0YXRpYyBSZXNv
dXJjZUxvYWRQcmlvcml0eSBkZWZhdWx0UHJpb3JpdHlGb3JSZXNvdXJjZVR5cGUoQ2FjaGVkUmVz
b3VyY2U6OlR5cGUKICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpUZXh0VHJhY2tSZXNvdXJjZToK
ICAgICAgICAgcmV0dXJuIFJlc291cmNlTG9hZFByaW9yaXR5TG93OwogI2VuZGlmCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlNoYWRlclJlc291cmNl
OgotICAgICAgICByZXR1cm4gUmVzb3VyY2VMb2FkUHJpb3JpdHlNZWRpdW07Ci0jZW5kaWYKICAg
ICB9CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIFJlc291cmNlTG9hZFBy
aW9yaXR5TG93OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2Uu
aAppbmRleCA5MTc5NGYyLi44ZGU2OWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2UuaApAQCAtODEsOSArODEsNiBAQCBwdWJsaWM6CiAjaWYgRU5BQkxF
KFZJREVPX1RSQUNLKQogICAgICAgICAsIFRleHRUcmFja1Jlc291cmNlCiAjZW5kaWYKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgICwgU2hhZGVyUmVzb3VyY2UKLSNlbmRpZgogICAg
IH07CiAKICAgICBlbnVtIFN0YXR1cyB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAppbmRleCA1NjZhMDczLi4xYzY1OTM3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2Fk
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxv
YWRlci5jcHAKQEAgLTYyLDEwICs2Miw2IEBACiAjaW5jbHVkZSAiQ2FjaGVkVGV4dFRyYWNrLmgi
CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDYWNoZWRTaGFk
ZXIuaCIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFJFU09VUkNFX1RJTUlORykKICNpbmNsdWRlICJQ
ZXJmb3JtYW5jZS5oIgogI2VuZGlmCkBAIC0xMDYsMTAgKzEwMiw2IEBAIHN0YXRpYyBDYWNoZWRS
ZXNvdXJjZSogY3JlYXRlUmVzb3VyY2UoQ2FjaGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgUmVzb3Vy
Y2VSZXF1ZXN0CiAgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6VGV4dFRyYWNrUmVzb3VyY2U6CiAg
ICAgICAgIHJldHVybiBuZXcgQ2FjaGVkVGV4dFRyYWNrKHJlcXVlc3QpOwogI2VuZGlmCi0jaWYg
RU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlNoYWRlclJlc291
cmNlOgotICAgICAgICByZXR1cm4gbmV3IENhY2hlZFNoYWRlcihyZXF1ZXN0KTsKLSNlbmRpZgog
ICAgIH0KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICByZXR1cm4gMDsKQEAgLTE4Mywx
MyArMTc1LDYgQEAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkVGV4dFRyYWNrPiBDYWNoZWRS
ZXNvdXJjZUxvYWRlcjo6cmVxdWVzdFRleHRUcmFjayhDYWMKIH0KICNlbmRpZgogCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2hhZGVyPiBDYWNo
ZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdFNoYWRlcihDYWNoZWRSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QpCi17Ci0gICAgcmV0dXJuIHN0YXRpY19jYXN0PENhY2hlZFNoYWRlcio+KHJlcXVlc3RS
ZXNvdXJjZShDYWNoZWRSZXNvdXJjZTo6U2hhZGVyUmVzb3VyY2UsIHJlcXVlc3QpLmdldCgpKTsK
LX0KLSNlbmRpZgotCiBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRDU1NTdHlsZVNoZWV0PiBD
YWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdENTU1N0eWxlU2hlZXQoQ2FjaGVkUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIHJldHVybiBzdGF0aWNfY2FzdDxDYWNoZWRDU1NTdHls
ZVNoZWV0Kj4ocmVxdWVzdFJlc291cmNlKENhY2hlZFJlc291cmNlOjpDU1NTdHlsZVNoZWV0LCBy
ZXF1ZXN0KS5nZXQoKSk7CkBAIC0yNzksOSArMjY0LDYgQEAgYm9vbCBDYWNoZWRSZXNvdXJjZUxv
YWRlcjo6Y2hlY2tJbnNlY3VyZUNvbnRlbnQoQ2FjaGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgY29u
c3QKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6VGV4
dFRyYWNrUmVzb3VyY2U6CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2Fz
ZSBDYWNoZWRSZXNvdXJjZTo6U2hhZGVyUmVzb3VyY2U6Ci0jZW5kaWYKICAgICBjYXNlIENhY2hl
ZFJlc291cmNlOjpSYXdSZXNvdXJjZToKICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpJbWFnZVJl
c291cmNlOgogICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkZvbnRSZXNvdXJjZTogewpAQCAtMzMz
LDkgKzMxNSw2IEBAIGJvb2wgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNhblJlcXVlc3QoQ2FjaGVk
UmVzb3VyY2U6OlR5cGUgdHlwZSwgY29uc3QgVVJMJiB1cmwsCiAjaWYgRU5BQkxFKFZJREVPX1RS
QUNLKQogICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlRleHRUcmFja1Jlc291cmNlOgogI2VuZGlm
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlNoYWRl
clJlc291cmNlOgotI2VuZGlmCiAgICAgICAgIGlmIChvcHRpb25zLnJlcXVlc3RPcmlnaW5Qb2xp
Y3kgPT0gUmVzdHJpY3RUb1NhbWVPcmlnaW4gJiYgIW1fZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2lu
KCktPmNhblJlcXVlc3QodXJsKSkgewogICAgICAgICAgICAgcHJpbnRBY2Nlc3NEZW5pZWRNZXNz
YWdlKHVybCk7CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0zNzAsMTAgKzM0OSw2IEBA
IGJvb2wgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNhblJlcXVlc3QoQ2FjaGVkUmVzb3VyY2U6OlR5
cGUgdHlwZSwgY29uc3QgVVJMJiB1cmwsCiAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgICAgICB9CiAgICAgICAgIGJyZWFrOwotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBj
YXNlIENhY2hlZFJlc291cmNlOjpTaGFkZXJSZXNvdXJjZToKLSAgICAgICAgLy8gU2luY2Ugc2hh
ZGVycyBhcmUgcmVmZXJlbmNlZCBmcm9tIENTUyBTdHlsZXMgdXNlIHRoZSBzYW1lIHJ1bGVzIGhl
cmUuCi0jZW5kaWYKICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpDU1NTdHlsZVNoZWV0OgogICAg
ICAgICBpZiAoIXNob3VsZEJ5cGFzc01haW5Xb3JsZENvbnRlbnRTZWN1cml0eVBvbGljeSAmJiAh
bV9kb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPmFsbG93U3R5bGVGcm9tU291cmNl
KHVybCkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCmluZGV4IDU5N2Q2MTAuLmJjYzc5
M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZUxvYWRlci5oCkBAIC00Niw3ICs0Niw2IEBAIGNsYXNzIENhY2hlZEZvbnQ7CiBjbGFzcyBDYWNo
ZWRJbWFnZTsKIGNsYXNzIENhY2hlZFJhd1Jlc291cmNlOwogY2xhc3MgQ2FjaGVkU2NyaXB0Owot
Y2xhc3MgQ2FjaGVkU2hhZGVyOwogY2xhc3MgQ2FjaGVkVGV4dFRyYWNrOwogY2xhc3MgQ2FjaGVk
WFNMU3R5bGVTaGVldDsKIGNsYXNzIERvY3VtZW50OwpAQCAtOTIsOSArOTEsNiBAQCBwdWJsaWM6
CiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hl
ZFRleHRUcmFjaz4gcmVxdWVzdFRleHRUcmFjayhDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKICNl
bmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxD
YWNoZWRTaGFkZXI+IHJlcXVlc3RTaGFkZXIoQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jik7Ci0jZW5k
aWYKIAogICAgIC8vIExvZ3MgYW4gYWNjZXNzIGRlbmllZCBtZXNzYWdlIHRvIHRoZSBjb25zb2xl
IGZvciB0aGUgc3BlY2lmaWVkIFVSTC4KICAgICB2b2lkIHByaW50QWNjZXNzRGVuaWVkTWVzc2Fn
ZShjb25zdCBVUkwmIHVybCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRTaGFkZXIuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhNTc0OGZlLi4w
MDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuY3Bw
CisrKyAvZGV2L251bGwKQEAgLTEsNzEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
MSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0g
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwot
ICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0g
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0g
KiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0Uu
Ci0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQot
Ci0jaW5jbHVkZSAiQ2FjaGVkU2hhZGVyLmgiCi0jaW5jbHVkZSAiUmVzb3VyY2VCdWZmZXIuaCIK
LSNpbmNsdWRlICJUZXh0UmVzb3VyY2VEZWNvZGVyLmgiCi0jaW5jbHVkZSA8d3RmL3RleHQvU3Ry
aW5nQnVpbGRlci5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLUNhY2hlZFNoYWRlcjo6Q2Fj
aGVkU2hhZGVyKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0KQotICAgIDog
Q2FjaGVkUmVzb3VyY2UocmVzb3VyY2VSZXF1ZXN0LCBTaGFkZXJSZXNvdXJjZSkKLSAgICAsIG1f
ZGVjb2RlcihUZXh0UmVzb3VyY2VEZWNvZGVyOjpjcmVhdGUoImFwcGxpY2F0aW9uL3NoYWRlciIp
KQotewotfQotCi1DYWNoZWRTaGFkZXI6On5DYWNoZWRTaGFkZXIoKQotewotfQotCi1jb25zdCBT
dHJpbmcmIENhY2hlZFNoYWRlcjo6c2hhZGVyU3RyaW5nKCkKLXsKLSAgICBpZiAobV9zaGFkZXJT
dHJpbmcuaXNOdWxsKCkgJiYgbV9kYXRhKSB7Ci0gICAgICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRl
cjsKLSAgICAgICAgYnVpbGRlci5hcHBlbmQobV9kZWNvZGVyLT5kZWNvZGUobV9kYXRhLT5kYXRh
KCksIG1fZGF0YS0+c2l6ZSgpKSk7Ci0gICAgICAgIGJ1aWxkZXIuYXBwZW5kKG1fZGVjb2Rlci0+
Zmx1c2goKSk7Ci0gICAgICAgIG1fc2hhZGVyU3RyaW5nID0gYnVpbGRlci50b1N0cmluZygpOwot
ICAgIH0KLQotICAgIHJldHVybiBtX3NoYWRlclN0cmluZzsKLX0KLQotdm9pZCBDYWNoZWRTaGFk
ZXI6OmZpbmlzaExvYWRpbmcoUmVzb3VyY2VCdWZmZXIqIGRhdGEpCi17Ci0gICAgbV9kYXRhID0g
ZGF0YTsKLSAgICBDYWNoZWRSZXNvdXJjZTo6ZmluaXNoTG9hZGluZygwKTsKLX0KLQotfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA2MmJkNGZkLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRTaGFkZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDYwICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6
Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICog
ICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
Ci0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQg
QU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAot
ICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ2FjaGVkU2hhZGVyX2gKLSNkZWZp
bmUgQ2FjaGVkU2hhZGVyX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUg
IkNhY2hlZFJlc291cmNlLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgVGV4dFJl
c291cmNlRGVjb2RlcjsKLQotY2xhc3MgQ2FjaGVkU2hhZGVyIGZpbmFsIDogcHVibGljIENhY2hl
ZFJlc291cmNlIHsKLXB1YmxpYzoKLSAgICBDYWNoZWRTaGFkZXIoY29uc3QgUmVzb3VyY2VSZXF1
ZXN0Jik7Ci0gICAgdmlydHVhbCB+Q2FjaGVkU2hhZGVyKCk7Ci0gICAgCi0gICAgY29uc3QgU3Ry
aW5nJiBzaGFkZXJTdHJpbmcoKTsKLQotcHJpdmF0ZToKLSAgICB2aXJ0dWFsIGJvb2wgbWF5VHJ5
UmVwbGFjZUVuY29kZWREYXRhKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsgfQotICAg
IHZpcnR1YWwgdm9pZCBmaW5pc2hMb2FkaW5nKFJlc291cmNlQnVmZmVyKikgb3ZlcnJpZGU7Ci0K
LSAgICBSZWZQdHI8VGV4dFJlc291cmNlRGVjb2Rlcj4gbV9kZWNvZGVyOwotICAgIFN0cmluZyBt
X3NoYWRlclN0cmluZzsKLX07Ci0KLX0KLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykK
LQotI2VuZGlmIC8vIENhY2hlZFNoYWRlcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1NldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCmluZGV4
IDcxYzRiN2MuLjNiYTIzYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGlu
Z3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCkBAIC0xNzgsNyAr
MTc4LDYgQEAgU2V0dGluZ3M6OlNldHRpbmdzKFBhZ2UqIHBhZ2UpCiAgICAgLCBtX25lZWRzQWRv
YmVGcmFtZVJlbG9hZGluZ1F1aXJrKGZhbHNlKQogICAgICwgbV91c2VzUGFnZUNhY2hlKGZhbHNl
KQogICAgICwgbV9mb250UmVuZGVyaW5nTW9kZSgwKQotICAgICwgbV9pc0NTU0N1c3RvbUZpbHRl
ckVuYWJsZWQoZmFsc2UpCiAjaWYgUExBVEZPUk0oSU9TKQogICAgICwgbV9zdGFuZGFsb25lKGZh
bHNlKQogICAgICwgbV90ZWxlcGhvbmVOdW1iZXJQYXJzaW5nRW5hYmxlZChmYWxzZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvU2V0dGluZ3MuaAppbmRleCA1NWY2ZGViLi5jYjJlYzk3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5n
cy5oCkBAIC0yMTMsOSArMjEzLDYgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Rm9udFJlbmRlcmlu
Z01vZGUoRm9udFJlbmRlcmluZ01vZGUgbW9kZSk7CiAgICAgRm9udFJlbmRlcmluZ01vZGUgZm9u
dFJlbmRlcmluZ01vZGUoKSBjb25zdDsKIAotICAgIHZvaWQgc2V0Q1NTQ3VzdG9tRmlsdGVyRW5h
YmxlZChib29sIGVuYWJsZWQpIHsgbV9pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQgPSBlbmFibGVk
OyB9Ci0gICAgYm9vbCBpc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBt
X2lzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZDsgfQotCiAjaWYgRU5BQkxFKENTU19TVElDS1lfUE9T
SVRJT04pCiAgICAgdm9pZCBzZXRDU1NTdGlja3lQb3NpdGlvbkVuYWJsZWQoYm9vbCBlbmFibGVk
KSB7IG1fY3NzU3RpY2t5UG9zaXRpb25FbmFibGVkID0gZW5hYmxlZDsgfQogICAgIGJvb2wgY3Nz
U3RpY2t5UG9zaXRpb25FbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9jc3NTdGlja3lQb3NpdGlv
bkVuYWJsZWQ7IH0KQEAgLTM0Nyw3ICszNDQsNiBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9uZWVk
c0Fkb2JlRnJhbWVSZWxvYWRpbmdRdWlyayA6IDE7CiAgICAgYm9vbCBtX3VzZXNQYWdlQ2FjaGUg
OiAxOwogICAgIHVuc2lnbmVkIG1fZm9udFJlbmRlcmluZ01vZGUgOiAxOwotICAgIGJvb2wgbV9p
c0NTU0N1c3RvbUZpbHRlckVuYWJsZWQgOiAxOwogI2lmIFBMQVRGT1JNKElPUykKICAgICBib29s
IG1fc3RhbmRhbG9uZSA6IDE7CiAgICAgYm9vbCBtX3RlbGVwaG9uZU51bWJlclBhcnNpbmdFbmFi
bGVkIDogMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NTU1By
b3BlcnR5QW5pbWF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NTU1By
b3BlcnR5QW5pbWF0aW9uLmNwcAppbmRleCBhMzk4YTdhLi4yOTExMjllIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3Bw
CkBAIC0yMjMsNyArMjIzLDcgQEAgc3RhdGljIGlubGluZSBQYXNzUmVmUHRyPFN0eWxlSW1hZ2U+
IGJsZW5kRmlsdGVyKGNvbnN0IEFuaW1hdGlvbkJhc2UqIGFuaW0sIENhY2gKIAogICAgIFJlZlB0
cjxTdHlsZUNhY2hlZEltYWdlPiBzdHlsZWRJbWFnZSA9IFN0eWxlQ2FjaGVkSW1hZ2U6OmNyZWF0
ZShpbWFnZSk7CiAgICAgYXV0byBpbWFnZVZhbHVlID0gQ1NTSW1hZ2VWYWx1ZTo6Y3JlYXRlKGlt
YWdlLT51cmwoKSwgc3R5bGVkSW1hZ2UuZ2V0KCkpOwotICAgIGF1dG8gZmlsdGVyVmFsdWUgPSBD
b21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvckZpbHRlcihhbmltLT5yZW5kZXJlcigpLCAm
YW5pbS0+cmVuZGVyZXIoKS0+c3R5bGUoKSwgZmlsdGVyUmVzdWx0LCBEb05vdEFkanVzdFBpeGVs
VmFsdWVzKTsKKyAgICBhdXRvIGZpbHRlclZhbHVlID0gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6
dmFsdWVGb3JGaWx0ZXIoJmFuaW0tPnJlbmRlcmVyKCktPnN0eWxlKCksIGZpbHRlclJlc3VsdCwg
RG9Ob3RBZGp1c3RQaXhlbFZhbHVlcyk7CiAKICAgICBhdXRvIHJlc3VsdCA9IENTU0ZpbHRlcklt
YWdlVmFsdWU6OmNyZWF0ZShzdGQ6Om1vdmUoaW1hZ2VWYWx1ZSksIHN0ZDo6bW92ZShmaWx0ZXJW
YWx1ZSkpOwogICAgIHJlc3VsdC5nZXQoKS5zZXRGaWx0ZXJPcGVyYXRpb25zKGZpbHRlclJlc3Vs
dCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMv
UGxhdGZvcm1DQUxheWVyTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2EvbWFjL1BsYXRmb3JtQ0FMYXllck1hYy5tbQppbmRleCA4MWRhYWQ5Li41NjdkYzJhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvUGxhdGZvcm1D
QUxheWVyTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21h
Yy9QbGF0Zm9ybUNBTGF5ZXJNYWMubW0KQEAgLTY2NCwxMCArNjY0LDYgQEAgYm9vbCBQbGF0Zm9y
bUNBTGF5ZXJNYWM6OmZpbHRlcnNDYW5CZUNvbXBvc2l0ZWQoY29uc3QgRmlsdGVyT3BlcmF0aW9u
cyYgZmlsdGVycykKICAgICAgICAgY29uc3QgRmlsdGVyT3BlcmF0aW9uKiBmaWx0ZXJPcGVyYXRp
b24gPSBmaWx0ZXJzLmF0KGkpOwogICAgICAgICBzd2l0Y2ggKGZpbHRlck9wZXJhdGlvbi0+dHlw
ZSgpKSB7CiAgICAgICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6UkVGRVJFTkNFOgotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpD
VVNUT006Ci0gICAgICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RP
TToKLSNlbmRpZgogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgIGNh
c2UgRmlsdGVyT3BlcmF0aW9uOjpEUk9QX1NIQURPVzoKICAgICAgICAgICAgICAgICAvLyBGSVhN
RTogRm9yIG5vdyB3ZSBjYW4gb25seSBoYW5kbGUgZHJvcC1zaGFkb3cgaXMgaWYgaXQncyBsYXN0
IGluIHRoZSBsaXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmgKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGRmNjkwYTAuLjAwMDAwMDAKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJBcnJheVBhcmFt
ZXRlci5oCisrKyAvZGV2L251bGwKQEAgLTEsOTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcl9oCi0jZGVm
aW5lIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSNpbmNsdWRlICJBbmltYXRpb25VdGlsaXRpZXMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0
ZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+Ci0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIgOiBwdWJsaWMgQ3VzdG9t
RmlsdGVyUGFyYW1ldGVyIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDdXN0b21G
aWx0ZXJBcnJheVBhcmFtZXRlcj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgbmFtZSwgQ3VzdG9tRmls
dGVyUGFyYW1ldGVyOjpQYXJhbWV0ZXJUeXBlIHBhcmFtZXRlclR5cGUgPSBDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXI6OkFSUkFZKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0
b21GaWx0ZXJBcnJheVBhcmFtZXRlcihwYXJhbWV0ZXJUeXBlLCBuYW1lKSk7Ci0gICAgfQotCi0g
ICAgdW5zaWduZWQgc2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGF0YS5zaXplKCk7IH0KLSAgICBk
b3VibGUgdmFsdWVBdCh1bnNpZ25lZCBpbmRleCkgY29uc3QgeyByZXR1cm4gbV9kYXRhLmF0KGlu
ZGV4KTsgfQotCi0gICAgdm9pZCBhZGRWYWx1ZShkb3VibGUgdmFsdWUpIHsgbV9kYXRhLmFwcGVu
ZCh2YWx1ZSk7IH0KLQotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0
ZXI+IGJsZW5kKGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlciogZnJvbSwgZG91YmxlIHByb2dy
ZXNzLCBjb25zdCBMYXlvdXRTaXplJikKLSAgICB7Ci0gICAgICAgIGlmICghZnJvbSB8fCAhaXNT
YW1lVHlwZSgqZnJvbSkpCi0gICAgICAgICAgICByZXR1cm4gdGhpczsKLQotICAgICAgICBjb25z
dCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciogZnJvbUFycmF5ID0gc3RhdGljX2Nhc3Q8Y29u
c3QgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIqPihmcm9tKTsKLQotICAgICAgICBpZiAoc2l6
ZSgpICE9IGZyb21BcnJheS0+c2l6ZSgpKQotICAgICAgICAgICAgcmV0dXJuIHRoaXM7Ci0KLSAg
ICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyPiByZXN1bHQgPSBDdXN0b21G
aWx0ZXJBcnJheVBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUoKSk7Ci0gICAgICAgIGZvciAoc2l6ZV90
IGkgPSAwOyBpIDwgc2l6ZSgpOyArK2kpCi0gICAgICAgICAgICByZXN1bHQtPmFkZFZhbHVlKFdl
YkNvcmU6OmJsZW5kKGZyb21BcnJheS0+dmFsdWVBdChpKSwgdmFsdWVBdChpKSwgcHJvZ3Jlc3Mp
KTsKLQotICAgICAgICByZXR1cm4gcmVzdWx0LnJlbGVhc2UoKTsKLSAgICB9Ci0KLSAgICB2aXJ0
dWFsIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXImIG8pIGNvbnN0
Ci0gICAgewotICAgICAgICBpZiAoIWlzU2FtZVR5cGUobykpCi0gICAgICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0KLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIqIG90aGVy
ID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIqPigmbyk7Ci0g
ICAgICAgIHJldHVybiBtX2RhdGEgPT0gb3RoZXItPm1fZGF0YTsKLSAgICB9Ci0KLXByaXZhdGU6
Ci0gICAgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIoUGFyYW1ldGVyVHlwZSBwYXJhbWV0ZXJU
eXBlLCBjb25zdCBTdHJpbmcmIG5hbWUpCi0gICAgICAgIDogQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
KHBhcmFtZXRlclR5cGUsIG5hbWUpCi0gICAgewotICAgIH0KLQotICAgIFZlY3Rvcjxkb3VibGU+
IG1fZGF0YTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJM
RShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyX2gK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3Vz
dG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIuaApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggYzY5MjQ1ZC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmgKKysrIC9k
ZXYvbnVsbApAQCAtMSw4OSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFkb2Jl
IFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBk
aXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQot
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwot
Ci0jaWZuZGVmIEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyX2gKLSNkZWZpbmUgQ3VzdG9tRmls
dGVyQ29sb3JQYXJhbWV0ZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUg
IkNvbG9yLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgiCi0KLW5hbWVzcGFj
ZSBXZWJDb3JlIHsKLQotc3RhdGljIGlubGluZSBDb2xvciBibGVuZEZ1bmMoY29uc3QgQ29sb3Im
IGZyb20sIGNvbnN0IENvbG9yJiB0bywgZG91YmxlIHByb2dyZXNzKQotewotICAgIHJldHVybiBi
bGVuZChmcm9tLCB0bywgcHJvZ3Jlc3MpOwotfQotCi1jbGFzcyBDdXN0b21GaWx0ZXJDb2xvclBh
cmFtZXRlciA6IHB1YmxpYyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIgewotcHVibGljOgotICAgIHN0
YXRpYyBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyPiBjcmVhdGUoY29uc3Qg
U3RyaW5nJiBuYW1lKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0b21G
aWx0ZXJDb2xvclBhcmFtZXRlcihuYW1lKSk7Ci0gICAgfQotCi0gICAgdmlydHVhbCBQYXNzUmVm
UHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gYmxlbmQoY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyKiBmcm9tUGFyYW1ldGVyLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmKQot
ICAgIHsKLSAgICAgICAgaWYgKCFmcm9tUGFyYW1ldGVyIHx8ICFpc1NhbWVUeXBlKCpmcm9tUGFy
YW1ldGVyKSkKLSAgICAgICAgICAgIHJldHVybiB0aGlzOwotICAgICAgICBjb25zdCBDdXN0b21G
aWx0ZXJDb2xvclBhcmFtZXRlciogZnJvbUNvbG9yID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9t
RmlsdGVyQ29sb3JQYXJhbWV0ZXIqPihmcm9tUGFyYW1ldGVyKTsKLQotICAgICAgICBSZWZQdHI8
Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI+IHJlc3VsdCA9IEN1c3RvbUZpbHRlckNvbG9yUGFy
YW1ldGVyOjpjcmVhdGUobmFtZSgpKTsKLSAgICAgICAgcmVzdWx0LT5zZXRDb2xvcihibGVuZEZ1
bmMoZnJvbUNvbG9yLT5jb2xvcigpLCBjb2xvcigpLCBwcm9ncmVzcykpOwotICAgICAgICByZXR1
cm4gcmVzdWx0OwotICAgIH0KLQotICAgIGNvbnN0IENvbG9yJiBjb2xvcigpIGNvbnN0IHsgcmV0
dXJuIG1fY29sb3I7IH0KLSAgICB2b2lkIHNldENvbG9yKGNvbnN0IENvbG9yJiBjb2xvcikgeyBt
X2NvbG9yID0gY29sb3I7IH0KLQotICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEN1
c3RvbUZpbHRlclBhcmFtZXRlciYgbykgY29uc3QKLSAgICB7Ci0gICAgICAgIGlmICghaXNTYW1l
VHlwZShvKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgY29uc3QgQ3VzdG9t
RmlsdGVyQ29sb3JQYXJhbWV0ZXIqIG90aGVyID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmls
dGVyQ29sb3JQYXJhbWV0ZXIqPigmbyk7Ci0gICAgICAgIHJldHVybiBtX2NvbG9yID09IG90aGVy
LT5tX2NvbG9yOwotICAgIH0KLSAgICAKLXByaXZhdGU6Ci0gICAgQ3VzdG9tRmlsdGVyQ29sb3JQ
YXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lKQotICAgICAgICA6IEN1c3RvbUZpbHRlclBhcmFt
ZXRlcihDT0xPUiwgbmFtZSkKLSAgICB7Ci0gICAgfQotICAgIHZpcnR1YWwgfkN1c3RvbUZpbHRl
ckNvbG9yUGFyYW1ldGVyKCkKLSAgICB7Ci0gICAgfQotICAgIAotICAgIENvbG9yIG1fY29sb3I7
Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcl9oCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
ckNvbXBpbGVkUHJvZ3JhbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0N1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDM0Yjc1NjIuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uY3BwCisrKyAv
ZGV2L251bGwKQEAgLTEsMTU2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRv
YmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAg
IGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Q09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
Ci0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICov
Ci0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNF
KDNEX0dSQVBISUNTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIgot
IAotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaCIKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW06OkN1c3RvbUZpbHRlckNvbXBp
bGVkUHJvZ3JhbShQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjb250ZXh0LCBjb25zdCBT
dHJpbmcmIHZhbGlkYXRlZFZlcnRleFNoYWRlciwgY29uc3QgU3RyaW5nJiB2YWxpZGF0ZWRGcmFn
bWVudFNoYWRlciwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUpCi0gICAgOiBt
X2NvbnRleHQoY29udGV4dCkKLSAgICAsIG1fcHJvZ3JhbSgwKQotICAgICwgbV9wb3NpdGlvbkF0
dHJpYkxvY2F0aW9uKC0xKQotICAgICwgbV90ZXhBdHRyaWJMb2NhdGlvbigtMSkKLSAgICAsIG1f
bWVzaEF0dHJpYkxvY2F0aW9uKC0xKQotICAgICwgbV90cmlhbmdsZUF0dHJpYkxvY2F0aW9uKC0x
KQotICAgICwgbV9tZXNoQm94TG9jYXRpb24oLTEpCi0gICAgLCBtX3Byb2plY3Rpb25NYXRyaXhM
b2NhdGlvbigtMSkKLSAgICAsIG1fdGlsZVNpemVMb2NhdGlvbigtMSkKLSAgICAsIG1fbWVzaFNp
emVMb2NhdGlvbigtMSkKLSAgICAsIG1fc2FtcGxlckxvY2F0aW9uKC0xKQotICAgICwgbV9zYW1w
bGVyU2l6ZUxvY2F0aW9uKC0xKQotICAgICwgbV9jb250ZW50U2FtcGxlckxvY2F0aW9uKC0xKQot
ICAgICwgbV9pc0luaXRpYWxpemVkKGZhbHNlKQotewotICAgIEFTU0VSVCghdmFsaWRhdGVkVmVy
dGV4U2hhZGVyLmlzTnVsbCgpICYmICF2YWxpZGF0ZWRGcmFnbWVudFNoYWRlci5pc051bGwoKSk7
Ci0KLSAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotCi0gICAgUGxhdGZvcm0z
RE9iamVjdCB2ZXJ0ZXhTaGFkZXIgPSBjb21waWxlU2hhZGVyKEdyYXBoaWNzQ29udGV4dDNEOjpW
RVJURVhfU0hBREVSLCB2YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIpOwotICAgIGlmICghdmVydGV4U2hh
ZGVyKQotICAgICAgICByZXR1cm47Ci0gICAgCi0gICAgUGxhdGZvcm0zRE9iamVjdCBmcmFnbWVu
dFNoYWRlciA9IGNvbXBpbGVTaGFkZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQUdNRU5UX1NIQURF
UiwgdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXIpOwotICAgIGlmICghZnJhZ21lbnRTaGFkZXIpIHsK
LSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVTaGFkZXIodmVydGV4U2hhZGVyKTsKLSAgICAgICAg
cmV0dXJuOwotICAgIH0KLSAgICAKLSAgICBtX3Byb2dyYW0gPSBsaW5rUHJvZ3JhbSh2ZXJ0ZXhT
aGFkZXIsIGZyYWdtZW50U2hhZGVyKTsKLSAgICAKLSAgICBtX2NvbnRleHQtPmRlbGV0ZVNoYWRl
cih2ZXJ0ZXhTaGFkZXIpOwotICAgIG1fY29udGV4dC0+ZGVsZXRlU2hhZGVyKGZyYWdtZW50U2hh
ZGVyKTsKLSAgICAKLSAgICBpZiAoIW1fcHJvZ3JhbSkKLSAgICAgICAgcmV0dXJuOwotICAgIAot
ICAgIGluaXRpYWxpemVQYXJhbWV0ZXJMb2NhdGlvbnMocHJvZ3JhbVR5cGUpOwotICAgIAotICAg
IG1faXNJbml0aWFsaXplZCA9IHRydWU7Ci19Ci0KLVBsYXRmb3JtM0RPYmplY3QgQ3VzdG9tRmls
dGVyQ29tcGlsZWRQcm9ncmFtOjpjb21waWxlU2hhZGVyKEdDM0RlbnVtIHNoYWRlclR5cGUsIGNv
bnN0IFN0cmluZyYgc2hhZGVyU3RyaW5nKQotewotICAgIEFTU0VSVCghc2hhZGVyU3RyaW5nLmlz
TnVsbCgpKTsKLQotICAgIFBsYXRmb3JtM0RPYmplY3Qgc2hhZGVyID0gbV9jb250ZXh0LT5jcmVh
dGVTaGFkZXIoc2hhZGVyVHlwZSk7Ci0gICAgbV9jb250ZXh0LT5zaGFkZXJTb3VyY2Uoc2hhZGVy
LCBzaGFkZXJTdHJpbmcpOwotICAgIG1fY29udGV4dC0+Y29tcGlsZVNoYWRlcihzaGFkZXIpOwot
ICAgIAotICAgIGludCBjb21waWxlZCA9IDA7Ci0gICAgbV9jb250ZXh0LT5nZXRTaGFkZXJpdihz
aGFkZXIsIEdyYXBoaWNzQ29udGV4dDNEOjpDT01QSUxFX1NUQVRVUywgJmNvbXBpbGVkKTsKLSAg
ICBpZiAoIWNvbXBpbGVkKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBUaGlzIGlzIGFuIGludmFsaWQg
c2hhZGVyLiBUaHJvdyBzb21lIGVycm9ycy4KLSAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NDE2Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlU2hh
ZGVyKHNoYWRlcik7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLSAgICAKLSAgICByZXR1cm4g
c2hhZGVyOwotfQotCi1QbGF0Zm9ybTNET2JqZWN0IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bTo6bGlua1Byb2dyYW0oUGxhdGZvcm0zRE9iamVjdCB2ZXJ0ZXhTaGFkZXIsIFBsYXRmb3JtM0RP
YmplY3QgZnJhZ21lbnRTaGFkZXIpCi17Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBwcm9ncmFtID0g
bV9jb250ZXh0LT5jcmVhdGVQcm9ncmFtKCk7Ci0gICAgbV9jb250ZXh0LT5hdHRhY2hTaGFkZXIo
cHJvZ3JhbSwgdmVydGV4U2hhZGVyKTsKLSAgICBtX2NvbnRleHQtPmF0dGFjaFNoYWRlcihwcm9n
cmFtLCBmcmFnbWVudFNoYWRlcik7Ci0gICAgbV9jb250ZXh0LT5saW5rUHJvZ3JhbShwcm9ncmFt
KTsKLSAgICAKLSAgICBpbnQgbGlua2VkID0gMDsKLSAgICBtX2NvbnRleHQtPmdldFByb2dyYW1p
dihwcm9ncmFtLCBHcmFwaGljc0NvbnRleHQzRDo6TElOS19TVEFUVVMsICZsaW5rZWQpOwotICAg
IGlmICghbGlua2VkKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBJbnZhbGlkIHZlcnRleC9mcmFnbWVu
dCBzaGFkZXIgY29tYmluYXRpb24uIFRocm93IHNvbWUgZXJyb3JzIGhlcmUuCi0gICAgICAgIC8v
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDQxNgotICAgICAgICBt
X2NvbnRleHQtPmRlbGV0ZVByb2dyYW0ocHJvZ3JhbSk7Ci0gICAgICAgIHJldHVybiAwOwotICAg
IH0KLSAgICAKLSAgICByZXR1cm4gcHJvZ3JhbTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJDb21w
aWxlZFByb2dyYW06OmluaXRpYWxpemVQYXJhbWV0ZXJMb2NhdGlvbnMoQ3VzdG9tRmlsdGVyUHJv
Z3JhbVR5cGUgcHJvZ3JhbVR5cGUpCi17Ci0gICAgbV9wb3NpdGlvbkF0dHJpYkxvY2F0aW9uID0g
bV9jb250ZXh0LT5nZXRBdHRyaWJMb2NhdGlvbihtX3Byb2dyYW0sICJhX3Bvc2l0aW9uIik7Ci0g
ICAgbV90ZXhBdHRyaWJMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0QXR0cmliTG9jYXRpb24obV9w
cm9ncmFtLCAiYV90ZXhDb29yZCIpOwotICAgIG1fbWVzaEF0dHJpYkxvY2F0aW9uID0gbV9jb250
ZXh0LT5nZXRBdHRyaWJMb2NhdGlvbihtX3Byb2dyYW0sICJhX21lc2hDb29yZCIpOwotICAgIG1f
dHJpYW5nbGVBdHRyaWJMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0QXR0cmliTG9jYXRpb24obV9w
cm9ncmFtLCAiYV90cmlhbmdsZUNvb3JkIik7Ci0gICAgbV9tZXNoQm94TG9jYXRpb24gPSBtX2Nv
bnRleHQtPmdldFVuaWZvcm1Mb2NhdGlvbihtX3Byb2dyYW0sICJ1X21lc2hCb3giKTsKLSAgICBt
X3RpbGVTaXplTG9jYXRpb24gPSBtX2NvbnRleHQtPmdldFVuaWZvcm1Mb2NhdGlvbihtX3Byb2dy
YW0sICJ1X3RpbGVTaXplIik7Ci0gICAgbV9tZXNoU2l6ZUxvY2F0aW9uID0gbV9jb250ZXh0LT5n
ZXRVbmlmb3JtTG9jYXRpb24obV9wcm9ncmFtLCAidV9tZXNoU2l6ZSIpOwotICAgIG1fcHJvamVj
dGlvbk1hdHJpeExvY2F0aW9uID0gbV9jb250ZXh0LT5nZXRVbmlmb3JtTG9jYXRpb24obV9wcm9n
cmFtLCAidV9wcm9qZWN0aW9uTWF0cml4Iik7Ci0gICAgbV9zYW1wbGVyU2l6ZUxvY2F0aW9uID0g
bV9jb250ZXh0LT5nZXRVbmlmb3JtTG9jYXRpb24obV9wcm9ncmFtLCAidV90ZXh0dXJlU2l6ZSIp
OwotICAgIG1fY29udGVudFNhbXBsZXJMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0VW5pZm9ybUxv
Y2F0aW9uKG1fcHJvZ3JhbSwgInVfY29udGVudFRleHR1cmUiKTsKLSAgICBpZiAocHJvZ3JhbVR5
cGUgPT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUpIHsKLSAgICAgICAgLy8g
V2hlbiB0aGUgYXV0aG9yIHVzZXMgdGhlIENTUyBtaXggZnVuY3Rpb24gaW4gYSBjdXN0b20gZmls
dGVyLCBXZWJLaXQgYWRkcyB0aGUgaW50ZXJuYWwKLSAgICAgICAgLy8gc3ltYm9sIGNzc191X3Rl
eHR1cmUgdG8gdGhlIHNoYWRlciBjb2RlLCB3aGljaCByZWZlcmVuY2VzIHRoZSB0ZXh0dXJlIG9m
IHRoZSBlbGVtZW50LgotICAgICAgICBtX3NhbXBsZXJMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0
VW5pZm9ybUxvY2F0aW9uKG1fcHJvZ3JhbSwgImNzc191X3RleHR1cmUiKTsKLSAgICB9Ci19Ci0K
LWludCBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW06OnVuaWZvcm1Mb2NhdGlvbkJ5TmFtZShj
b25zdCBTdHJpbmcmIG5hbWUpCi17Ci0gICAgQVNTRVJUKG1faXNJbml0aWFsaXplZCk7Ci0gICAg
Ly8gRklYTUU6IEltcHJvdmUgdGhpcyBieSBjYWNoaW5nIHRoZSB1bmlmb3JtIGxvY2F0aW9ucy4K
LSAgICByZXR1cm4gbV9jb250ZXh0LT5nZXRVbmlmb3JtTG9jYXRpb24obV9wcm9ncmFtLCBuYW1l
KTsKLX0KLSAgICAKLUN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbTo6fkN1c3RvbUZpbHRlckNv
bXBpbGVkUHJvZ3JhbSgpCi17Ci0gICAgaWYgKG1fcHJvZ3JhbSkgewotICAgICAgICBtX2NvbnRl
eHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotICAgICAgICBtX2NvbnRleHQtPmRlbGV0ZVByb2dy
YW0obV9wcm9ncmFtKTsKLSAgICB9Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLSNlbmRp
ZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA1ZGJmMGQ0Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmgKKysrIC9kZXYvbnVsbApA
QCAtMSw5OSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMg
SW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
LgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBI
T0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IK
LSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVm
IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbV9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlckNvbXBp
bGVkUHJvZ3JhbV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElD
UykKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmgiCi0jaW5jbHVkZSAiR3Jh
cGhpY3NDb250ZXh0M0QuaCIKLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotI2luY2x1ZGUg
PHd0Zi90ZXh0L1dURlN0cmluZy5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEN1
c3RvbUZpbHRlckdsb2JhbENvbnRleHQ7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJv
Z3JhbTogcHVibGljIFJlZkNvdW50ZWQ8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiB7Ci1w
dWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
PiBjcmVhdGUoUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gY29udGV4dCwgY29uc3QgU3Ry
aW5nJiB2YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIsIGNvbnN0IFN0cmluZyYgdmFsaWRhdGVkRnJhZ21l
bnRTaGFkZXIsIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlKQotICAgIHsKLSAg
ICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0oY29u
dGV4dCwgdmFsaWRhdGVkVmVydGV4U2hhZGVyLCB2YWxpZGF0ZWRGcmFnbWVudFNoYWRlciwgcHJv
Z3JhbVR5cGUpKTsKLSAgICB9Ci0gICAgCi0gICAgfkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bSgpOwotICAgIAotICAgIGludCBwb3NpdGlvbkF0dHJpYkxvY2F0aW9uKCkgY29uc3QgeyByZXR1
cm4gbV9wb3NpdGlvbkF0dHJpYkxvY2F0aW9uOyB9Ci0gICAgaW50IHRleEF0dHJpYkxvY2F0aW9u
KCkgY29uc3QgeyByZXR1cm4gbV90ZXhBdHRyaWJMb2NhdGlvbjsgfQotICAgIGludCBtZXNoQXR0
cmliTG9jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX21lc2hBdHRyaWJMb2NhdGlvbjsgfQotICAg
IGludCB0cmlhbmdsZUF0dHJpYkxvY2F0aW9uKCkgY29uc3QgeyByZXR1cm4gbV90cmlhbmdsZUF0
dHJpYkxvY2F0aW9uOyB9Ci0gICAgaW50IG1lc2hCb3hMb2NhdGlvbigpIGNvbnN0IHsgcmV0dXJu
IG1fbWVzaEJveExvY2F0aW9uOyB9Ci0gICAgaW50IHByb2plY3Rpb25NYXRyaXhMb2NhdGlvbigp
IGNvbnN0IHsgcmV0dXJuIG1fcHJvamVjdGlvbk1hdHJpeExvY2F0aW9uOyB9Ci0gICAgaW50IHRp
bGVTaXplTG9jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX3RpbGVTaXplTG9jYXRpb247IH0KLSAg
ICBpbnQgbWVzaFNpemVMb2NhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaFNpemVMb2NhdGlv
bjsgfQotICAgIGludCBzYW1wbGVyTG9jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX3NhbXBsZXJM
b2NhdGlvbjsgfQotICAgIGludCBjb250ZW50U2FtcGxlckxvY2F0aW9uKCkgY29uc3QgeyByZXR1
cm4gbV9jb250ZW50U2FtcGxlckxvY2F0aW9uOyB9Ci0gICAgaW50IHNhbXBsZXJTaXplTG9jYXRp
b24oKSBjb25zdCB7IHJldHVybiBtX3NhbXBsZXJTaXplTG9jYXRpb247IH0KLQotICAgIGludCB1
bmlmb3JtTG9jYXRpb25CeU5hbWUoY29uc3QgU3RyaW5nJik7Ci0gICAgCi0gICAgYm9vbCBpc0lu
aXRpYWxpemVkKCkgY29uc3QgeyByZXR1cm4gbV9pc0luaXRpYWxpemVkOyB9Ci0gICAgCi0gICAg
UGxhdGZvcm0zRE9iamVjdCBwcm9ncmFtKCkgY29uc3QgeyByZXR1cm4gbV9wcm9ncmFtOyB9Ci1w
cml2YXRlOgotICAgIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbShQYXNzUmVmUHRyPEdyYXBo
aWNzQ29udGV4dDNEPiwgY29uc3QgU3RyaW5nJiB2YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIsIGNvbnN0
IFN0cmluZyYgdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXIsIEN1c3RvbUZpbHRlclByb2dyYW1UeXBl
KTsKLSAgICAKLSAgICBQbGF0Zm9ybTNET2JqZWN0IGNvbXBpbGVTaGFkZXIoR0MzRGVudW0gc2hh
ZGVyVHlwZSwgY29uc3QgU3RyaW5nJiBzaGFkZXJTdHJpbmcpOwotICAgIFBsYXRmb3JtM0RPYmpl
Y3QgbGlua1Byb2dyYW0oUGxhdGZvcm0zRE9iamVjdCB2ZXJ0ZXhTaGFkZXIsIFBsYXRmb3JtM0RP
YmplY3QgZnJhZ21lbnRTaGFkZXIpOwotICAgIHZvaWQgaW5pdGlhbGl6ZVBhcmFtZXRlckxvY2F0
aW9ucyhDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSk7Ci0gICAgCi0gICAgUmVmUHRyPEdyYXBoaWNz
Q29udGV4dDNEPiBtX2NvbnRleHQ7Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBtX3Byb2dyYW07Ci0g
ICAgCi0gICAgaW50IG1fcG9zaXRpb25BdHRyaWJMb2NhdGlvbjsKLSAgICBpbnQgbV90ZXhBdHRy
aWJMb2NhdGlvbjsKLSAgICBpbnQgbV9tZXNoQXR0cmliTG9jYXRpb247Ci0gICAgaW50IG1fdHJp
YW5nbGVBdHRyaWJMb2NhdGlvbjsKLSAgICBpbnQgbV9tZXNoQm94TG9jYXRpb247Ci0gICAgaW50
IG1fcHJvamVjdGlvbk1hdHJpeExvY2F0aW9uOwotICAgIGludCBtX3RpbGVTaXplTG9jYXRpb247
Ci0gICAgaW50IG1fbWVzaFNpemVMb2NhdGlvbjsKLSAgICBpbnQgbV9zYW1wbGVyTG9jYXRpb247
Ci0gICAgaW50IG1fc2FtcGxlclNpemVMb2NhdGlvbjsKLSAgICBpbnQgbV9jb250ZW50U2FtcGxl
ckxvY2F0aW9uOwotICAgIAotICAgIGJvb2wgbV9pc0luaXRpYWxpemVkOwotfTsKLQotfQotCi0j
ZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0KLSNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJDb25zdGFudHMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDU1OWRiYzguLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb25zdGFudHMuaAorKysgL2Rldi9udWxsCkBAIC0x
LDYwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNv
cnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERF
UiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICog
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3Vz
dG9tRmlsdGVyQ29uc3RhbnRzX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyQ29uc3RhbnRzX2gKLQot
bmFtZXNwYWNlIFdlYkNvcmUgewotCi1lbnVtIEN1c3RvbUZpbHRlck1lc2hDb25zdGFudHMgewot
ICAgIC8vIFZlcnRleCBhdHRyaWJ1dGUgc2l6ZXMKLSAgICBQb3NpdGlvbkF0dHJpYlNpemUgPSA0
LAotICAgIFRleEF0dHJpYlNpemUgPSAyLAotICAgIE1lc2hBdHRyaWJTaXplID0gMiwKLSAgICBU
cmlhbmdsZUF0dHJpYlNpemUgPSAzLAotICAgIC8vIFZlcnRleCBhdHRyaWJ1dGUgb2Zmc2V0cwot
ICAgIFBvc2l0aW9uQXR0cmliT2Zmc2V0ID0gMCwKLSAgICBUZXhBdHRyaWJPZmZzZXQgPSBQb3Np
dGlvbkF0dHJpYk9mZnNldCArIFBvc2l0aW9uQXR0cmliU2l6ZSAqIHNpemVvZihmbG9hdCksCi0g
ICAgTWVzaEF0dHJpYk9mZnNldCA9IFRleEF0dHJpYk9mZnNldCArIFRleEF0dHJpYlNpemUgKiBz
aXplb2YoZmxvYXQpLAotICAgIFRyaWFuZ2xlQXR0cmliT2Zmc2V0ID0gTWVzaEF0dHJpYk9mZnNl
dCArIE1lc2hBdHRyaWJTaXplICogc2l6ZW9mKGZsb2F0KQotfTsKLQotZW51bSBDdXN0b21GaWx0
ZXJNZXNoVHlwZSB7Ci0gICAgTWVzaFR5cGVBdHRhY2hlZCwKLSAgICBNZXNoVHlwZURldGFjaGVk
Ci19OwotCi1lbnVtIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHsKLSAgICBQUk9HUkFNX1RZUEVf
Tk9fRUxFTUVOVF9URVhUVVJFLAotICAgIFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhU
VVJFCi19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0
ZXJDb25zdGFudHNfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHAK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg3MTMyMzguLjAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxD
b250ZXh0LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDkzICswLDAgQEAKLS8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQot
ICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xh
aW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNV
Q0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckdsb2Jh
bENvbnRleHQuaCIKLQotI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCi0KLW5hbWVzcGFj
ZSBXZWJDb3JlIHsKLQotQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dDo6Q3VzdG9tRmlsdGVyR2xv
YmFsQ29udGV4dCgpCi17Ci19Ci0KLUN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQ6On5DdXN0b21G
aWx0ZXJHbG9iYWxDb250ZXh0KCkKLXsKLX0KLQotQU5HTEVXZWJLaXRCcmlkZ2UqIEN1c3RvbUZp
bHRlckdsb2JhbENvbnRleHQ6OndlYmdsU2hhZGVyVmFsaWRhdG9yKCkKLXsKLSAgICBpZiAoIW1f
d2ViZ2xTaGFkZXJWYWxpZGF0b3IpCi0gICAgICAgIG1fd2ViZ2xTaGFkZXJWYWxpZGF0b3IgPSBj
cmVhdGVTaGFkZXJWYWxpZGF0b3IoU0hfV0VCR0xfU1BFQyk7Ci0gICAgcmV0dXJuIG1fd2ViZ2xT
aGFkZXJWYWxpZGF0b3IuZ2V0KCk7Ci19Ci0KLUFOR0xFV2ViS2l0QnJpZGdlKiBDdXN0b21GaWx0
ZXJHbG9iYWxDb250ZXh0OjptaXhTaGFkZXJWYWxpZGF0b3IoKQotewotICAgIGlmICghbV9taXhT
aGFkZXJWYWxpZGF0b3IpCi0gICAgICAgIG1fbWl4U2hhZGVyVmFsaWRhdG9yID0gY3JlYXRlU2hh
ZGVyVmFsaWRhdG9yKFNIX0NTU19TSEFERVJTX1NQRUMpOwotICAgIHJldHVybiBtX21peFNoYWRl
clZhbGlkYXRvci5nZXQoKTsKLX0KLQotUGFzc093blB0cjxBTkdMRVdlYktpdEJyaWRnZT4gQ3Vz
dG9tRmlsdGVyR2xvYmFsQ29udGV4dDo6Y3JlYXRlU2hhZGVyVmFsaWRhdG9yKFNoU2hhZGVyU3Bl
YyBzaGFkZXJTcGVjKQotewotICAgIE93blB0cjxBTkdMRVdlYktpdEJyaWRnZT4gdmFsaWRhdG9y
ID0gYWRvcHRQdHIobmV3IEFOR0xFV2ViS2l0QnJpZGdlKFNIX0VTU0xfT1VUUFVULCBzaGFkZXJT
cGVjKSk7Ci0gICAgU2hCdWlsdEluUmVzb3VyY2VzIHJlc291cmNlczsKLSAgICBTaEluaXRCdWls
dEluUmVzb3VyY2VzKCZyZXNvdXJjZXMpOwotICAgIHZhbGlkYXRvci0+c2V0UmVzb3VyY2VzKHJl
c291cmNlcyk7Ci0gICAgcmV0dXJuIHZhbGlkYXRvci5yZWxlYXNlKCk7Ci19Ci0KLXZvaWQgQ3Vz
dG9tRmlsdGVyR2xvYmFsQ29udGV4dDo6cHJlcGFyZUNvbnRleHRJZk5lZWRlZChIb3N0V2luZG93
KiBob3N0V2luZG93LCBib29sIGZvcmNlU29mdHdhcmVSZW5kZXJpbmcpCi17Ci0gICAgaWYgKG1f
Y29udGV4dC5nZXQoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgR3JhcGhpY3NDb250ZXh0M0Q6
OkF0dHJpYnV0ZXMgYXR0cmlidXRlczsKLSAgICBhdHRyaWJ1dGVzLnByZXNlcnZlRHJhd2luZ0J1
ZmZlciA9IHRydWU7Ci0gICAgYXR0cmlidXRlcy5wcmVtdWx0aXBsaWVkQWxwaGEgPSBmYWxzZTsK
LSAgICBhdHRyaWJ1dGVzLnNoYXJlUmVzb3VyY2VzID0gdHJ1ZTsKLSAgICBhdHRyaWJ1dGVzLnBy
ZWZlckRpc2NyZXRlR1BVID0gdHJ1ZTsKLQotICAgIGlmIChmb3JjZVNvZnR3YXJlUmVuZGVyaW5n
KQotICAgICAgICBhdHRyaWJ1dGVzLmZvcmNlU29mdHdhcmVSZW5kZXJlciA9IHRydWU7Ci0KLSAg
ICBtX2NvbnRleHQgPSBHcmFwaGljc0NvbnRleHQzRDo6Y3JlYXRlKGF0dHJpYnV0ZXMsIGhvc3RX
aW5kb3csIEdyYXBoaWNzQ29udGV4dDNEOjpSZW5kZXJPZmZzY3JlZW4pOwotICAgIGlmICghbV9j
b250ZXh0KQotICAgICAgICByZXR1cm47Ci0gICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJl
bnQoKTsKLSAgICBtX2NvbnRleHQtPmVuYWJsZShHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfVEVT
VCk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1Nf
U0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckdsb2Jh
bENvbnRleHQuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMWU4ZjZiZC4uMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlckdsb2JhbENvbnRleHQuaAorKysgL2Rldi9udWxsCkBAIC0xLDc3ICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6
Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICog
ICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
Ci0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQg
QU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAot
ICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyR2xvYmFsQ29u
dGV4dF9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHRfaAotCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAiQU5HTEVXZWJLaXRC
cmlkZ2UuaCIKLSNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBIb3N0V2luZG93OwotY2xhc3MgR3Jh
cGhpY3NDb250ZXh0M0Q7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQgewotcHVi
bGljOgotICAgIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQoKTsKLSAgICB+Q3VzdG9tRmlsdGVy
R2xvYmFsQ29udGV4dCgpOwotICAgIAotICAgIEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0KCkg
Y29uc3QgeyByZXR1cm4gbV9jb250ZXh0LmdldCgpOyB9Ci0KLSAgICAvLyBDU1Mgc2hhZGVycyBu
b3QgcmVmZXJlbmNlZCBmcm9tIHRoZSBDU1MgbWl4IGZ1bmN0aW9uIHNob3VsZCBiZSB2YWxpZGF0
ZWQganVzdCBsaWtlIHJlZ3VsYXIgV2ViR0wgc2hhZGVycy4KLSAgICAvLyBUaGlzIEFOR0xFIHZh
bGlkYXRvciB1c2VzIHRoZSBTSF9XRUJHTF9TUEVDIGZsYWcuCi0gICAgQU5HTEVXZWJLaXRCcmlk
Z2UqIHdlYmdsU2hhZGVyVmFsaWRhdG9yKCk7Ci0KLSAgICAvLyBDU1Mgc2hhZGVycyByZWZlcmVu
Y2VkIGZyb20gdGhlIENTUyBtaXggZnVuY3Rpb24gc2hvdWxkIGJlIHZhbGlkYXRlZCBzbGlnaHRs
eSBkaWZmZXJlbnRseSB0aGFuIFdlYkdMIHNoYWRlcnMuCi0gICAgLy8gVGhpcyBBTkdMRSB2YWxp
ZGF0b3IgdXNlcyB0aGUgU0hfQ1NTX1NIQURFUlNfU1BFQyBmbGFnLgotICAgIC8vIFVuZGVyIHRo
aXMgZmxhZywgbW9zdCBub3RhYmx5OgotICAgIC8vIC0gVGhlICJnbF9GcmFnQ29sb3IiIGJ1aWx0
LWluIGlzIG5vdCBhdmFpbGFibGUuCi0gICAgLy8gLSBJbnN0ZWFkLCB0aGUgImNzc19NaXhDb2xv
ciIgYW5kICJjc3NfQ29sb3JNYXRyaXgiIGJ1aWx0LWlucyBhcmUgYXZhaWxhYmxlLgotICAgIC8v
IC0gVGhlICJjc3NfIiBwcmVmaXggaXMgcmVzZXJ2ZWQuCi0gICAgLy8gLSBJbiB0aGUgdHJhbnNs
YXRlZCBzb3VyY2UgdGhhdCBBTkdMRSByZXR1cm5zLCBBTkdMRSByZW5hbWVzIHRoZSBhdXRob3In
cyAibWFpbiIgZnVuY3Rpb24gdG8gImNzc19tYWluIi4KLSAgICAvLyBUaGUgY29tcGxldGUgZGV0
YWlscyBhcmUgZG9jdW1lbnRlZCBpbiBBTkdMRS9TaGFkZXJMYW5nLmguCi0gICAgQU5HTEVXZWJL
aXRCcmlkZ2UqIG1peFNoYWRlclZhbGlkYXRvcigpOwotICAgIAotICAgIHZvaWQgcHJlcGFyZUNv
bnRleHRJZk5lZWRlZChIb3N0V2luZG93KiwgYm9vbCBmb3JjZVNvZnR3YXJlUmVuZGVyaW5nKTsK
LXByaXZhdGU6Ci0gICAgc3RhdGljIFBhc3NPd25QdHI8QU5HTEVXZWJLaXRCcmlkZ2U+IGNyZWF0
ZVNoYWRlclZhbGlkYXRvcihTaFNoYWRlclNwZWMpOwotCi0gICAgUmVmUHRyPEdyYXBoaWNzQ29u
dGV4dDNEPiBtX2NvbnRleHQ7Ci0gICAgT3duUHRyPEFOR0xFV2ViS2l0QnJpZGdlPiBtX3dlYmds
U2hhZGVyVmFsaWRhdG9yOwotICAgIE93blB0cjxBTkdMRVdlYktpdEJyaWRnZT4gbV9taXhTaGFk
ZXJWYWxpZGF0b3I7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBF
TkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2VuZGlmIC8vIEN1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHRfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5jcHAKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGVmZjA3ODguLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoLmNwcAorKysgL2Rl
di9udWxsCkBAIC0xLDcyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUg
U3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0g
KiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0K
LSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNE
X0dSQVBISUNTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck1lc2guaCIKLSNpbmNsdWRlICJDdXN0
b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmgiCi0jaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0M0QuaCIK
LQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1DdXN0b21GaWx0ZXJNZXNoOjpDdXN0b21GaWx0ZXJN
ZXNoKEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0LCB1bnNpZ25lZCBjb2x1bW5zLCB1bnNpZ25l
ZCByb3dzLAotICAgIGNvbnN0IEZsb2F0UmVjdCYgbWVzaEJveCwgQ3VzdG9tRmlsdGVyTWVzaFR5
cGUgbWVzaFR5cGUpCi0gICAgOiBtX2NvbnRleHQoY29udGV4dCkKLSAgICAsIG1fdmVydGljZXNC
dWZmZXJPYmplY3QoMCkKLSAgICAsIG1fZWxlbWVudHNCdWZmZXJPYmplY3QoMCkKLSAgICAsIG1f
bWVzaEJveChtZXNoQm94KQotICAgICwgbV9tZXNoVHlwZShtZXNoVHlwZSkKLXsKLSAgICBDdXN0
b21GaWx0ZXJNZXNoR2VuZXJhdG9yIGdlbmVyYXRvcihjb2x1bW5zLCByb3dzLCBtZXNoQm94LCBt
ZXNoVHlwZSk7Ci0gICAgbV9pbmRpY2VzQ291bnQgPSBnZW5lcmF0b3IuaW5kaWNlc0NvdW50KCk7
Ci0gICAgbV9ieXRlc1BlclZlcnRleCA9IGdlbmVyYXRvci5mbG9hdHNQZXJWZXJ0ZXgoKSAqIHNp
emVvZihmbG9hdCk7ICAgIAotCi0gICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJlbnQoKTsK
LQotICAgIG1fdmVydGljZXNCdWZmZXJPYmplY3QgPSBtX2NvbnRleHQtPmNyZWF0ZUJ1ZmZlcigp
OwotICAgIG1fY29udGV4dC0+YmluZEJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6QVJSQVlfQlVG
RkVSLCBtX3ZlcnRpY2VzQnVmZmVyT2JqZWN0KTsKLSAgICBtX2NvbnRleHQtPmJ1ZmZlckRhdGEo
R3JhcGhpY3NDb250ZXh0M0Q6OkFSUkFZX0JVRkZFUiwgZ2VuZXJhdG9yLnZlcnRpY2VzKCkuc2l6
ZSgpICogc2l6ZW9mKGZsb2F0KSwgZ2VuZXJhdG9yLnZlcnRpY2VzKCkuZGF0YSgpLCBHcmFwaGlj
c0NvbnRleHQzRDo6U1RBVElDX0RSQVcpOwotICAgIAotICAgIG1fZWxlbWVudHNCdWZmZXJPYmpl
Y3QgPSBtX2NvbnRleHQtPmNyZWF0ZUJ1ZmZlcigpOwotICAgIG1fY29udGV4dC0+YmluZEJ1ZmZl
cihHcmFwaGljc0NvbnRleHQzRDo6RUxFTUVOVF9BUlJBWV9CVUZGRVIsIG1fZWxlbWVudHNCdWZm
ZXJPYmplY3QpOwotICAgIG1fY29udGV4dC0+YnVmZmVyRGF0YShHcmFwaGljc0NvbnRleHQzRDo6
RUxFTUVOVF9BUlJBWV9CVUZGRVIsIGdlbmVyYXRvci5pbmRpY2VzKCkuc2l6ZSgpICogc2l6ZW9m
KHVpbnQxNl90KSwgZ2VuZXJhdG9yLmluZGljZXMoKS5kYXRhKCksIEdyYXBoaWNzQ29udGV4dDNE
OjpTVEFUSUNfRFJBVyk7Ci19Ci0KLUN1c3RvbUZpbHRlck1lc2g6On5DdXN0b21GaWx0ZXJNZXNo
KCkKLXsKLSAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotICAgIG1fY29udGV4
dC0+ZGVsZXRlQnVmZmVyKG1fdmVydGljZXNCdWZmZXJPYmplY3QpOwotICAgIG1fY29udGV4dC0+
ZGVsZXRlQnVmZmVyKG1fZWxlbWVudHNCdWZmZXJPYmplY3QpOwotfQotCi19IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQ
SElDUykKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmls
dGVycy9DdXN0b21GaWx0ZXJNZXNoLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMmJiM2Q1YS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2guaAorKysgL2Rldi9udWxsCkBAIC0xLDgwICswLDAg
QEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJ
U+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICog
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
Ci0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVy
TWVzaF9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlck1lc2hfaAotCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJPcGVyYXRp
b24uaCIKLSNpbmNsdWRlICJGbG9hdFJlY3QuaCIKLSNpbmNsdWRlICJHcmFwaGljc1R5cGVzM0Qu
aCIKLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0K
LWNsYXNzIEdyYXBoaWNzQ29udGV4dDNEOwotCi1jbGFzcyBDdXN0b21GaWx0ZXJNZXNoIDogcHVi
bGljIFJlZkNvdW50ZWQ8Q3VzdG9tRmlsdGVyTWVzaD4gewotcHVibGljOgotICAgIHN0YXRpYyBQ
YXNzUmVmUHRyPEN1c3RvbUZpbHRlck1lc2g+IGNyZWF0ZShHcmFwaGljc0NvbnRleHQzRCogY29u
dGV4dCwgdW5zaWduZWQgY29scywgdW5zaWduZWQgcm93cywgY29uc3QgRmxvYXRSZWN0JiBtZXNo
Qm94LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAgICB7Ci0gICAgICAgIHJldHVy
biBhZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVyTWVzaChjb250ZXh0LCBjb2xzLCByb3dzLCBtZXNo
Qm94LCBtZXNoVHlwZSkpOwotICAgIH0KLSAgICB+Q3VzdG9tRmlsdGVyTWVzaCgpOwotCi0gICAg
UGxhdGZvcm0zRE9iamVjdCB2ZXJ0aWNlc0J1ZmZlck9iamVjdCgpIGNvbnN0IHsgcmV0dXJuIG1f
dmVydGljZXNCdWZmZXJPYmplY3Q7IH0KLSAgICB1bnNpZ25lZCBieXRlc1BlclZlcnRleCgpIGNv
bnN0IHsgcmV0dXJuIG1fYnl0ZXNQZXJWZXJ0ZXg7IH0KLSAgICAKLSAgICBQbGF0Zm9ybTNET2Jq
ZWN0IGVsZW1lbnRzQnVmZmVyT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV9lbGVtZW50c0J1ZmZl
ck9iamVjdDsgfQotICAgIHVuc2lnbmVkIGluZGljZXNDb3VudCgpIGNvbnN0IHsgcmV0dXJuIG1f
aW5kaWNlc0NvdW50OyB9Ci0gICAgCi0gICAgY29uc3QgRmxvYXRSZWN0JiBtZXNoQm94KCkgY29u
c3QgeyByZXR1cm4gbV9tZXNoQm94OyB9Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5
cGUoKSBjb25zdCB7IHJldHVybiBtX21lc2hUeXBlOyB9Ci0KLXByaXZhdGU6Ci0gICAgQ3VzdG9t
RmlsdGVyTWVzaChHcmFwaGljc0NvbnRleHQzRCosIHVuc2lnbmVkIGNvbHMsIHVuc2lnbmVkIHJv
d3MsIGNvbnN0IEZsb2F0UmVjdCYgbWVzaEJveCwgQ3VzdG9tRmlsdGVyTWVzaFR5cGUpOwotICAg
IAotICAgIEdyYXBoaWNzQ29udGV4dDNEKiBtX2NvbnRleHQ7Ci0gICAgCi0gICAgUGxhdGZvcm0z
RE9iamVjdCBtX3ZlcnRpY2VzQnVmZmVyT2JqZWN0OwotICAgIHVuc2lnbmVkIG1fYnl0ZXNQZXJW
ZXJ0ZXg7Ci0gICAgCi0gICAgUGxhdGZvcm0zRE9iamVjdCBtX2VsZW1lbnRzQnVmZmVyT2JqZWN0
OwotICAgIHVuc2lnbmVkIG1faW5kaWNlc0NvdW50OwotICAgIAotICAgIEZsb2F0UmVjdCBtX21l
c2hCb3g7Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbV9tZXNoVHlwZTsKLX07Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNF
KDNEX0dSQVBISUNTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyTWVzaF9oCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1l
c2hHZW5lcmF0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggNzc0NjkxNC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuY3BwCisrKyAvZGV2L251bGwK
QEAgLTEsMTczICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVt
cyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWlt
ZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0g
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
IEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNs
dWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBI
SUNTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCIKLQotbmFtZXNwYWNl
IFdlYkNvcmUgewotCi0jaWZuZGVmIE5ERUJVRwotLy8gVXNlICJjYWxsICdXZWJDb3JlOjpzX2R1
bXBDdXN0b21GaWx0ZXJNZXNoQnVmZmVycycgPSAxIiBpbiBHREIgdG8gYWN0aXZhdGUgcHJpbnRp
bmcgb2YgdGhlIG1lc2ggYnVmZmVycy4KLXN0YXRpYyBib29sIHNfZHVtcEN1c3RvbUZpbHRlck1l
c2hCdWZmZXJzID0gZmFsc2U7Ci0jZW5kaWYKLQotQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6
Q3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcih1bnNpZ25lZCBjb2x1bW5zLCB1bnNpZ25lZCByb3dz
LCBjb25zdCBGbG9hdFJlY3QmIG1lc2hCb3gsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBl
KQotICAgIDogbV9tZXNoVHlwZShtZXNoVHlwZSkKLSAgICAsIG1fcG9pbnRzKGNvbHVtbnMgKyAx
LCByb3dzICsgMSkKLSAgICAsIG1fdGlsZXMoY29sdW1ucywgcm93cykKLSAgICAsIG1fdGlsZVNp
emVJblBpeGVscyhtZXNoQm94LndpZHRoKCkgLyBtX3RpbGVzLndpZHRoKCksIG1lc2hCb3guaGVp
Z2h0KCkgLyBtX3RpbGVzLmhlaWdodCgpKQotICAgICwgbV90aWxlU2l6ZUluRGV2aWNlU3BhY2Uo
MS4wZiAvIG1fdGlsZXMud2lkdGgoKSwgMS4wZiAvIG1fdGlsZXMuaGVpZ2h0KCkpCi0gICAgLCBt
X21lc2hCb3gobWVzaEJveCkKLXsKLSAgICAvLyBCdWlsZCB0aGUgdHdvIGJ1ZmZlcnMgbmVlZGVk
IHRvIGRyYXcgdHJpYW5nbGVzOgotICAgIC8vICogbV92ZXJ0aWNlcyBoYXMgYSBudW1iZXIgb2Yg
ZmxvYXQgYXR0cmlidXRlcyB0aGF0IHdpbGwgYmUgcGFzc2VkIHRvIHRoZSB2ZXJ0ZXggc2hhZGVy
Ci0gICAgLy8gZm9yIGVhY2ggY29tcHV0ZWQgdmVydGV4LiBUaGlzIG51bWJlciBpcyBjYWxjdWxh
dGVkIGluIGZsb2F0c1BlclZlcnRleCgpIGJhc2VkIG9uIHRoZSBtZXNoVHlwZS4KLSAgICAvLyAq
IG1faW5kaWNlcyBpcyBhIGJ1ZmZlciB0aGF0IHdpbGwgaGF2ZSAzIGluZGljZXMgcGVyIHRyaWFu
Z2xlLiBFYWNoIGluZGV4IHdpbGwgcG9pbnQgaW5zaWRlCi0gICAgLy8gdGhlIG1fdmVydGljZXMg
YnVmZmVyLgotICAgIG1fdmVydGljZXMucmVzZXJ2ZUNhcGFjaXR5KHZlcnRpY2VzQ291bnQoKSAq
IGZsb2F0c1BlclZlcnRleCgpKTsKLSAgICBtX2luZGljZXMucmVzZXJ2ZUNhcGFjaXR5KGluZGlj
ZXNDb3VudCgpKTsKLQotICAgIC8vIEJhc2VkIG9uIHRoZSBtZXNoVHlwZSB0aGVyZSBjYW4gYmUg
dHdvIHR5cGVzIG9mIG1lc2hlcy4KLSAgICAvLyAqIGF0dGFjaGVkOiBlYWNoIHRyaWFuZ2xlIHVz
ZXMgdmVydGljZXMgZnJvbSB0aGUgbmVpZ2hib3IgdHJpYW5nbGVzLiBUaGlzIGlzIHVzZWZ1bCB0
byBzYXZlIHNvbWUgR1BVIG1lbW9yeQotICAgIC8vIHdoZW4gdGhlcmUncyBubyBuZWVkIHRvIGV4
cGxvZGUgdGhlIHRpbGVzLgotICAgIC8vICogZGV0YWNoZWQ6IGVhY2ggdHJpYW5nbGUgaGFzIGl0
cyBvd24gdmVydGljZXMuIFRoaXMgbWVhbnMgZWFjaCB0cmlhbmdsZSBjYW4gYmUgbW92ZWQgaW5k
ZXBlbmRlbnRseSBhbmQgYSB2ZWMzCi0gICAgLy8gYXR0cmlidXRlIGlzIHBhc3NlZCwgc28gdGhh
dCBlYWNoIHZlcnRleCBjYW4gYmUgdW5pcXVlbHkgaWRlbnRpZmllZC4KLSAgICBpZiAobV9tZXNo
VHlwZSA9PSBNZXNoVHlwZUF0dGFjaGVkKQotICAgICAgICBnZW5lcmF0ZUF0dGFjaGVkTWVzaCgp
OwotICAgIGVsc2UKLSAgICAgICAgZ2VuZXJhdGVEZXRhY2hlZE1lc2goKTsKLQotI2lmbmRlZiBO
REVCVUcKLSAgICBpZiAoc19kdW1wQ3VzdG9tRmlsdGVyTWVzaEJ1ZmZlcnMpCi0gICAgICAgIGR1
bXBCdWZmZXJzKCk7Ci0jZW5kaWYKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9y
OjphZGRBdHRhY2hlZE1lc2hJbmRleChpbnQgcXVhZFgsIGludCBxdWFkWSwgaW50IHRyaWFuZ2xl
WCwgaW50IHRyaWFuZ2xlWSwgaW50IHRyaWFuZ2xlKQotewotICAgIFVOVVNFRF9QQVJBTSh0cmlh
bmdsZSk7Ci0gICAgbV9pbmRpY2VzLmFwcGVuZCgocXVhZFkgKyB0cmlhbmdsZVkpICogbV9wb2lu
dHMud2lkdGgoKSArIChxdWFkWCArIHRyaWFuZ2xlWCkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRl
ck1lc2hHZW5lcmF0b3I6OmdlbmVyYXRlQXR0YWNoZWRNZXNoKCkKLXsKLSAgICBmb3IgKGludCBq
ID0gMDsgaiA8IG1fcG9pbnRzLmhlaWdodCgpOyArK2opIHsKLSAgICAgICAgZm9yIChpbnQgaSA9
IDA7IGkgPCBtX3BvaW50cy53aWR0aCgpOyArK2kpCi0gICAgICAgICAgICBhZGRBdHRhY2hlZE1l
c2hWZXJ0ZXhBdHRyaWJ1dGVzKGksIGopOwotICAgIH0KLQotICAgIGZvciAoaW50IGogPSAwOyBq
IDwgbV90aWxlcy5oZWlnaHQoKTsgKytqKSB7Ci0gICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwg
bV90aWxlcy53aWR0aCgpOyArK2kpCi0gICAgICAgICAgICBhZGRUaWxlPCZDdXN0b21GaWx0ZXJN
ZXNoR2VuZXJhdG9yOjphZGRBdHRhY2hlZE1lc2hJbmRleD4oaSwgaik7Ci0gICAgfQotfQotCi12
b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6OmFkZERldGFjaGVkTWVzaFZlcnRleEFuZElu
ZGV4KGludCBxdWFkWCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZLCBp
bnQgdHJpYW5nbGUpCi17Ci0gICAgYWRkRGV0YWNoZWRNZXNoVmVydGV4QXR0cmlidXRlcyhxdWFk
WCwgcXVhZFksIHRyaWFuZ2xlWCwgdHJpYW5nbGVZLCB0cmlhbmdsZSk7Ci0gICAgbV9pbmRpY2Vz
LmFwcGVuZChtX2luZGljZXMuc2l6ZSgpKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJNZXNoR2Vu
ZXJhdG9yOjpnZW5lcmF0ZURldGFjaGVkTWVzaCgpCi17Ci0gICAgZm9yIChpbnQgaiA9IDA7IGog
PCBtX3RpbGVzLmhlaWdodCgpOyArK2opIHsKLSAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBt
X3RpbGVzLndpZHRoKCk7ICsraSkKLSAgICAgICAgICAgIGFkZFRpbGU8JkN1c3RvbUZpbHRlck1l
c2hHZW5lcmF0b3I6OmFkZERldGFjaGVkTWVzaFZlcnRleEFuZEluZGV4PihpLCBqKTsKLSAgICB9
Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRkUG9zaXRpb25BdHRyaWJ1
dGUoaW50IHF1YWRYLCBpbnQgcXVhZFkpCi17Ci0gICAgLy8gdmVjNCBhX3Bvc2l0aW9uCi0gICAg
bV92ZXJ0aWNlcy5hcHBlbmQobV90aWxlU2l6ZUluUGl4ZWxzLndpZHRoKCkgKiBxdWFkWCAtIDAu
NWYgKyBtX21lc2hCb3gueCgpKTsKLSAgICBtX3ZlcnRpY2VzLmFwcGVuZChtX3RpbGVTaXplSW5Q
aXhlbHMuaGVpZ2h0KCkgKiBxdWFkWSAtIDAuNWYgKyBtX21lc2hCb3gueSgpKTsKLSAgICBtX3Zl
cnRpY2VzLmFwcGVuZCgwLjBmKTsgLy8gegotICAgIG1fdmVydGljZXMuYXBwZW5kKDEuMGYpOwot
fQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6OmFkZFRleENvb3JkQXR0cmlidXRl
KGludCBxdWFkWCwgaW50IHF1YWRZKQotewotICAgIC8vIHZlYzIgYV90ZXhDb29yZAotICAgIG1f
dmVydGljZXMuYXBwZW5kKG1fdGlsZVNpemVJblBpeGVscy53aWR0aCgpICogcXVhZFggKyBtX21l
c2hCb3gueCgpKTsKLSAgICBtX3ZlcnRpY2VzLmFwcGVuZChtX3RpbGVTaXplSW5QaXhlbHMuaGVp
Z2h0KCkgKiBxdWFkWSArIG1fbWVzaEJveC55KCkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlck1l
c2hHZW5lcmF0b3I6OmFkZE1lc2hDb29yZEF0dHJpYnV0ZShpbnQgcXVhZFgsIGludCBxdWFkWSkK
LXsKLSAgICAvLyB2ZWMyIGFfbWVzaENvb3JkCi0gICAgbV92ZXJ0aWNlcy5hcHBlbmQobV90aWxl
U2l6ZUluRGV2aWNlU3BhY2Uud2lkdGgoKSAqIHF1YWRYKTsKLSAgICBtX3ZlcnRpY2VzLmFwcGVu
ZChtX3RpbGVTaXplSW5EZXZpY2VTcGFjZS5oZWlnaHQoKSAqIHF1YWRZKTsKLX0KLQotdm9pZCBD
dXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjphZGRUcmlhbmdsZUNvb3JkQXR0cmlidXRlKGludCBx
dWFkWCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGUpCi17Ci0gICAgLy8gdmVjMyBhX3RyaWFuZ2xl
Q29vcmQKLSAgICBtX3ZlcnRpY2VzLmFwcGVuZChxdWFkWCk7Ci0gICAgbV92ZXJ0aWNlcy5hcHBl
bmQocXVhZFkpOwotICAgIG1fdmVydGljZXMuYXBwZW5kKHRyaWFuZ2xlKTsKLX0KLQotdm9pZCBD
dXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjphZGRBdHRhY2hlZE1lc2hWZXJ0ZXhBdHRyaWJ1dGVz
KGludCBxdWFkWCwgaW50IHF1YWRZKQotewotICAgIGFkZFBvc2l0aW9uQXR0cmlidXRlKHF1YWRY
LCBxdWFkWSk7Ci0gICAgYWRkVGV4Q29vcmRBdHRyaWJ1dGUocXVhZFgsIHF1YWRZKTsKLSAgICBh
ZGRNZXNoQ29vcmRBdHRyaWJ1dGUocXVhZFgsIHF1YWRZKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0
ZXJNZXNoR2VuZXJhdG9yOjphZGREZXRhY2hlZE1lc2hWZXJ0ZXhBdHRyaWJ1dGVzKGludCBxdWFk
WCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZLCBpbnQgdHJpYW5nbGUp
Ci17Ci0gICAgYWRkQXR0YWNoZWRNZXNoVmVydGV4QXR0cmlidXRlcyhxdWFkWCArIHRyaWFuZ2xl
WCwgcXVhZFkgKyB0cmlhbmdsZVkpOwotICAgIGFkZFRyaWFuZ2xlQ29vcmRBdHRyaWJ1dGUocXVh
ZFgsIHF1YWRZLCB0cmlhbmdsZSk7Ci19Ci0KLSNpZm5kZWYgTkRFQlVHCi12b2lkIEN1c3RvbUZp
bHRlck1lc2hHZW5lcmF0b3I6OmR1bXBCdWZmZXJzKCkgY29uc3QKLXsKLSAgICBwcmludGYoIk1l
c2ggYnVmZmVyczogUG9pbnRzLndpZHRoKCk6ICVkLCBQb2ludHMuaGVpZ2h0KCk6ICVkIG1lc2hC
b3g6ICVmLCAlZiwgJWYsICVmLCB0eXBlOiAlc1xuIiwKLSAgICAgICAgbV9wb2ludHMud2lkdGgo
KSwgbV9wb2ludHMuaGVpZ2h0KCksIG1fbWVzaEJveC54KCksIG1fbWVzaEJveC55KCksIG1fbWVz
aEJveC53aWR0aCgpLCBtX21lc2hCb3guaGVpZ2h0KCksCi0gICAgICAgIChtX21lc2hUeXBlID09
IE1lc2hUeXBlQXR0YWNoZWQpID8gIkF0dGFjaGVkIiA6ICJEZXRhY2hlZCIpOwotICAgIHByaW50
ZigiLS0tVmVydGV4OlxuXHQiKTsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbV92ZXJ0
aWNlcy5zaXplKCk7ICsraSkgewotICAgICAgICBwcmludGYoIiVmICIsIG1fdmVydGljZXMuYXQo
aSkpOwotICAgICAgICBpZiAoISgoaSArIDEpICUgZmxvYXRzUGVyVmVydGV4KCkpKQotICAgICAg
ICAgICAgcHJpbnRmKCJcblx0Iik7Ci0gICAgfQotICAgIHByaW50ZigiXG4tLS1JbmRpY2VzOiAi
KTsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbV9pbmRpY2VzLnNpemUoKTsgKytpKQot
ICAgICAgICBwcmludGYoIiVkICIsIG1faW5kaWNlcy5hdChpKSk7Ci0gICAgcHJpbnRmKCJcbiIp
OwotfQotI2VuZGlmCi0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJM
RShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0
b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyTWVzaEdlbmVyYXRvci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3ZjlhZjY0
Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oCisrKyAvZGV2L251bGwKQEAgLTEsMTI2ICswLDAg
QEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJ
U+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICog
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
Ci0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVy
TWVzaEdlbmVyYXRvcl9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3JfaAotCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0KLSNpbmNsdWRlICJD
dXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJPcGVyYXRpb24u
aCIKLSNpbmNsdWRlICJGbG9hdFJlY3QuaCIKLSNpbmNsdWRlIDxzdGRpby5oPgotCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IgewotcHVibGlj
OgotICAgIC8vIExpbmVzIGFuZCBjb2x1bW5zIGFyZSB0aGUgdmFsdWVzIHBhc3NlZCBpbiBDU1Mu
IFRoZSByZXN1bHQgaXMgdmVydGV4IG1lc2ggdGhhdCBoYXMgJ3Jvd3MnIG51bWJlcnMgb2Ygcm93
cwotICAgIC8vIGFuZCAnY29sdW1ucycgbnVtYmVyIG9mIGNvbHVtbnMgd2l0aCBhIHRvdGFsIG9m
ICdyb3dzICsgMScgKiAnY29sdW1ucyArIDEnIHZlcnRpY2VzLgotICAgIC8vIE1lc2hCb3ggaXMg
dGhlIGZpbHRlcmVkIGFyZWEgY2FsY3VsYXRlZCBkZWZpbmVkIHVzaW5nIHRoZSBib3JkZXItYm94
LCBwYWRkaW5nLWJveCwgY29udGVudC1ib3ggb3IgZmlsdGVyLWJveAotICAgIC8vIGF0dHJpYnV0
ZXMuIEEgdmFsdWUgb2YgKDAsIDAsIDEsIDEpIHdpbGwgY292ZXIgdGhlIGVudGlyZSBvdXRwdXQg
c3VyZmFjZS4KLSAgICBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yKHVuc2lnbmVkIGNvbHVtbnMs
IHVuc2lnbmVkIHJvd3MsIGNvbnN0IEZsb2F0UmVjdCYgbWVzaEJveCwgQ3VzdG9tRmlsdGVyTWVz
aFR5cGUpOwotCi0gICAgY29uc3QgVmVjdG9yPGZsb2F0PiYgdmVydGljZXMoKSBjb25zdCB7IHJl
dHVybiBtX3ZlcnRpY2VzOyB9Ci0gICAgY29uc3QgVmVjdG9yPHVpbnQxNl90PiYgaW5kaWNlcygp
IGNvbnN0IHsgcmV0dXJuIG1faW5kaWNlczsgfQotCi0gICAgY29uc3QgSW50U2l6ZSYgcG9pbnRz
KCkgY29uc3QgeyByZXR1cm4gbV9wb2ludHM7IH0KLSAgICB1bnNpZ25lZCBwb2ludHNDb3VudCgp
IGNvbnN0IHsgcmV0dXJuIG1fcG9pbnRzLndpZHRoKCkgKiBtX3BvaW50cy5oZWlnaHQoKTsgfQot
Ci0gICAgY29uc3QgSW50U2l6ZSYgdGlsZXMoKSBjb25zdCB7IHJldHVybiBtX3RpbGVzOyB9Ci0g
ICAgdW5zaWduZWQgdGlsZXNDb3VudCgpIGNvbnN0IHsgcmV0dXJuIG1fdGlsZXMud2lkdGgoKSAq
IG1fdGlsZXMuaGVpZ2h0KCk7IH0KLQotICAgIHVuc2lnbmVkIGluZGljZXNDb3VudCgpIGNvbnN0
Ci0gICAgewotICAgICAgICBjb25zdCB1bnNpZ25lZCB0cmlhbmdsZXNQZXJUaWxlID0gMjsKLSAg
ICAgICAgY29uc3QgdW5zaWduZWQgaW5kaWNlc1BlclRyaWFuZ2xlID0gMzsKLSAgICAgICAgcmV0
dXJuIHRpbGVzQ291bnQoKSAqIHRyaWFuZ2xlc1BlclRpbGUgKiBpbmRpY2VzUGVyVHJpYW5nbGU7
Ci0gICAgfQotCi0gICAgdW5zaWduZWQgZmxvYXRzUGVyVmVydGV4KCkgY29uc3QKLSAgICB7Ci0g
ICAgICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBBdHRhY2hlZE1lc2hWZXJ0ZXhTaXplID0gUG9z
aXRpb25BdHRyaWJTaXplICsgVGV4QXR0cmliU2l6ZSArIE1lc2hBdHRyaWJTaXplOwotICAgICAg
ICBzdGF0aWMgY29uc3QgdW5zaWduZWQgRGV0YWNoZWRNZXNoVmVydGV4U2l6ZSA9IEF0dGFjaGVk
TWVzaFZlcnRleFNpemUgKyBUcmlhbmdsZUF0dHJpYlNpemU7Ci0gICAgICAgIHJldHVybiBtX21l
c2hUeXBlID09IE1lc2hUeXBlQXR0YWNoZWQgPyBBdHRhY2hlZE1lc2hWZXJ0ZXhTaXplIDogRGV0
YWNoZWRNZXNoVmVydGV4U2l6ZTsKLSAgICB9Ci0KLSAgICB1bnNpZ25lZCB2ZXJ0aWNlc0NvdW50
KCkgY29uc3QKLSAgICB7Ci0gICAgICAgIHJldHVybiBtX21lc2hUeXBlID09IE1lc2hUeXBlQXR0
YWNoZWQgPyBwb2ludHNDb3VudCgpIDogaW5kaWNlc0NvdW50KCk7Ci0gICAgfQotCi1wcml2YXRl
OgotICAgIHR5cGVkZWYgdm9pZCAoQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6KkFkZFRyaWFu
Z2xlVmVydGV4RnVuY3Rpb24pKGludCBxdWFkWCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBp
bnQgdHJpYW5nbGVZLCBpbnQgdHJpYW5nbGUpOwotCi0gICAgdGVtcGxhdGUgPEFkZFRyaWFuZ2xl
VmVydGV4RnVuY3Rpb24gYWRkVHJpYW5nbGVWZXJ0ZXg+Ci0gICAgdm9pZCBhZGRUaWxlKGludCBx
dWFkWCwgaW50IHF1YWRZKQotICAgIHsKLSAgICAgICAgKCgqdGhpcykuKihhZGRUcmlhbmdsZVZl
cnRleCkpKHF1YWRYLCBxdWFkWSwgMCwgMCwgMSk7Ci0gICAgICAgICgoKnRoaXMpLiooYWRkVHJp
YW5nbGVWZXJ0ZXgpKShxdWFkWCwgcXVhZFksIDEsIDAsIDIpOwotICAgICAgICAoKCp0aGlzKS4q
KGFkZFRyaWFuZ2xlVmVydGV4KSkocXVhZFgsIHF1YWRZLCAxLCAxLCAzKTsKLSAgICAgICAgKCgq
dGhpcykuKihhZGRUcmlhbmdsZVZlcnRleCkpKHF1YWRYLCBxdWFkWSwgMCwgMCwgNCk7Ci0gICAg
ICAgICgoKnRoaXMpLiooYWRkVHJpYW5nbGVWZXJ0ZXgpKShxdWFkWCwgcXVhZFksIDEsIDEsIDUp
OwotICAgICAgICAoKCp0aGlzKS4qKGFkZFRyaWFuZ2xlVmVydGV4KSkocXVhZFgsIHF1YWRZLCAw
LCAxLCA2KTsKLSAgICB9Ci0KLSAgICB2b2lkIGFkZEF0dGFjaGVkTWVzaEluZGV4KGludCBxdWFk
WCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJpYW5nbGVZLCBpbnQgdHJpYW5nbGUp
OwotCi0gICAgdm9pZCBnZW5lcmF0ZUF0dGFjaGVkTWVzaCgpOwotCi0gICAgdm9pZCBhZGREZXRh
Y2hlZE1lc2hWZXJ0ZXhBbmRJbmRleChpbnQgcXVhZFgsIGludCBxdWFkWSwgaW50IHRyaWFuZ2xl
WCwgaW50IHRyaWFuZ2xlWSwgaW50IHRyaWFuZ2xlKTsKLQotICAgIHZvaWQgZ2VuZXJhdGVEZXRh
Y2hlZE1lc2goKTsKLSAgICB2b2lkIGFkZFBvc2l0aW9uQXR0cmlidXRlKGludCBxdWFkWCwgaW50
IHF1YWRZKTsKLSAgICB2b2lkIGFkZFRleENvb3JkQXR0cmlidXRlKGludCBxdWFkWCwgaW50IHF1
YWRZKTsKLSAgICB2b2lkIGFkZE1lc2hDb29yZEF0dHJpYnV0ZShpbnQgcXVhZFgsIGludCBxdWFk
WSk7Ci0gICAgdm9pZCBhZGRUcmlhbmdsZUNvb3JkQXR0cmlidXRlKGludCBxdWFkWCwgaW50IHF1
YWRZLCBpbnQgdHJpYW5nbGUpOwotICAgIHZvaWQgYWRkQXR0YWNoZWRNZXNoVmVydGV4QXR0cmli
dXRlcyhpbnQgcXVhZFgsIGludCBxdWFkWSk7Ci0gICAgdm9pZCBhZGREZXRhY2hlZE1lc2hWZXJ0
ZXhBdHRyaWJ1dGVzKGludCBxdWFkWCwgaW50IHF1YWRZLCBpbnQgdHJpYW5nbGVYLCBpbnQgdHJp
YW5nbGVZLCBpbnQgdHJpYW5nbGUpOwotCi0jaWZuZGVmIE5ERUJVRwotICAgIHZvaWQgZHVtcEJ1
ZmZlcnMoKSBjb25zdDsKLSNlbmRpZgotCi1wcml2YXRlOgotICAgIFZlY3RvcjxmbG9hdD4gbV92
ZXJ0aWNlczsKLSAgICBWZWN0b3I8dWludDE2X3Q+IG1faW5kaWNlczsKLQotICAgIEN1c3RvbUZp
bHRlck1lc2hUeXBlIG1fbWVzaFR5cGU7Ci0gICAgSW50U2l6ZSBtX3BvaW50czsKLSAgICBJbnRT
aXplIG1fdGlsZXM7Ci0gICAgRmxvYXRTaXplIG1fdGlsZVNpemVJblBpeGVsczsKLSAgICBGbG9h
dFNpemUgbV90aWxlU2l6ZUluRGV2aWNlU3BhY2U7Ci0gICAgRmxvYXRSZWN0IG1fbWVzaEJveDsK
LX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hB
REVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyTWVzaEdl
bmVyYXRvcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0N1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDkzNzg1OC4uMDAwMDAwMAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck51bWJlclBhcmFt
ZXRlci5oCisrKyAvZGV2L251bGwKQEAgLTEsODYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXJfaAotI2Rl
ZmluZSBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotI2luY2x1ZGUgIkFuaW1hdGlvblV0aWxpdGllcy5oIgotI2luY2x1ZGUgIkN1c3RvbUZp
bHRlclBhcmFtZXRlci5oIgotI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1jbGFzcyBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIgOiBwdWJsaWMgQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDdXN0
b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXI+IGNyZWF0ZShjb25zdCBTdHJpbmcmIG5hbWUpCi0gICAg
ewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRl
cihuYW1lKSk7Ci0gICAgfQotICAgIAotICAgIHVuc2lnbmVkIHNpemUoKSBjb25zdCB7IHJldHVy
biBtX2RhdGEuc2l6ZSgpOyB9Ci0gICAgZG91YmxlIHZhbHVlQXQodW5zaWduZWQgaW5kZXgpIGNv
bnN0IHsgcmV0dXJuIG1fZGF0YS5hdChpbmRleCk7IH0KLQotICAgIHZvaWQgYWRkVmFsdWUoZG91
YmxlIHZhbHVlKSB7IG1fZGF0YS5hcHBlbmQodmFsdWUpOyB9Ci0gICAgCi0gICAgdmlydHVhbCBQ
YXNzUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gYmxlbmQoY29uc3QgQ3VzdG9tRmlsdGVy
UGFyYW1ldGVyKiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmKQotICAg
IHsKLSAgICAgICAgaWYgKCFmcm9tIHx8ICFpc1NhbWVUeXBlKCpmcm9tKSkKLSAgICAgICAgICAg
IHJldHVybiB0aGlzOwotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIq
IGZyb21OdW1iZXIgPSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0
ZXIqPihmcm9tKTsKLSAgICAgICAgaWYgKHNpemUoKSAhPSBmcm9tTnVtYmVyLT5zaXplKCkpCi0g
ICAgICAgICAgICByZXR1cm4gdGhpczsKLSAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlck51bWJl
clBhcmFtZXRlcj4gcmVzdWx0ID0gQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyOjpjcmVhdGUo
bmFtZSgpKTsKLSAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplKCk7ICsraSkKLSAg
ICAgICAgICAgIHJlc3VsdC0+YWRkVmFsdWUoV2ViQ29yZTo6YmxlbmQoZnJvbU51bWJlci0+dmFs
dWVBdChpKSwgdmFsdWVBdChpKSwgcHJvZ3Jlc3MpKTsKLSAgICAgICAgcmV0dXJuIHJlc3VsdC5y
ZWxlYXNlKCk7Ci0gICAgfQotICAgIAotICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0
IEN1c3RvbUZpbHRlclBhcmFtZXRlciYgbykgY29uc3QKLSAgICB7Ci0gICAgICAgIGlmICghaXNT
YW1lVHlwZShvKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgY29uc3QgQ3Vz
dG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKiBvdGhlciA9IHN0YXRpY19jYXN0PGNvbnN0IEN1c3Rv
bUZpbHRlck51bWJlclBhcmFtZXRlcio+KCZvKTsKLSAgICAgICAgcmV0dXJuIG1fZGF0YSA9PSBv
dGhlci0+bV9kYXRhOwotICAgIH0KLSAgICAKLXByaXZhdGU6Ci0gICAgQ3VzdG9tRmlsdGVyTnVt
YmVyUGFyYW1ldGVyKGNvbnN0IFN0cmluZyYgbmFtZSkKLSAgICAgICAgOiBDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXIoTlVNQkVSLCBuYW1lKQotICAgIHsKLSAgICB9Ci0gICAgCi0gICAgVmVjdG9yPGRv
dWJsZSwgND4gbV9kYXRhOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyTnVtYmVyUGFy
YW1ldGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggNTA5YTc2Yy4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAKKysrIC9k
ZXYvbnVsbApAQCAtMSw3NyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2Jl
IFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBk
aXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQot
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwot
Ci0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVk
ZSAiQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQYXJh
bWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtLmgiCi0jaW5jbHVkZSAiRmls
dGVyT3BlcmF0aW9uLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotQ3VzdG9tRmlsdGVyT3Bl
cmF0aW9uOjpDdXN0b21GaWx0ZXJPcGVyYXRpb24oUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQcm9n
cmFtPiBwcm9ncmFtLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBzb3J0ZWRQYXJh
bWV0ZXJzLCB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMpCi0gICAgOiBG
aWx0ZXJPcGVyYXRpb24oQ1VTVE9NKQotICAgICwgbV9wcm9ncmFtKHByb2dyYW0pCi0gICAgLCBt
X3BhcmFtZXRlcnMoc29ydGVkUGFyYW1ldGVycykKLSAgICAsIG1fbWVzaFJvd3MobWVzaFJvd3Mp
Ci0gICAgLCBtX21lc2hDb2x1bW5zKG1lc2hDb2x1bW5zKQotewotICAgIC8vIE1ha2Ugc3VyZSB0
aGF0IHRoZSBwYXJhbWV0ZXJzIGFyZSBhbHd5YXMgc29ydGVkIGJ5IG5hbWUuIFdlIHVzZSB0aGF0
IHRvIG1lcmdlIHR3byBDdXN0b21GaWx0ZXJPcGVyYXRpb25zIGluIGFuaW1hdGlvbnMuCi0gICAg
QVNTRVJUKG1fcGFyYW1ldGVycy5jaGVja0FscGhhYmV0aWNhbE9yZGVyKCkpOwotfQotICAgIAot
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uOjp+Q3VzdG9tRmlsdGVyT3BlcmF0aW9uKCkKLXsKLX0KLQot
UGFzc1JlZlB0cjxGaWx0ZXJPcGVyYXRpb24+IEN1c3RvbUZpbHRlck9wZXJhdGlvbjo6YmxlbmQo
Y29uc3QgRmlsdGVyT3BlcmF0aW9uKiBmcm9tLCBkb3VibGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91
dFNpemUmIHNpemUsIGJvb2wgYmxlbmRUb1Bhc3N0aHJvdWdoKQotewotICAgIC8vIEZJWE1FOiBU
aGVyZSdzIG5vIHdheSB0byBkZWNpZGUgd2hhdCBpcyB0aGUgInBhc3N0aHJvdWdoIGZpbHRlciIg
Zm9yIHNoYWRlcnMgdXNpbmcgdGhlIGN1cnJlbnQgQ1NTIFN5bnRheC4KLSAgICAvLyBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQ5MDMKLSAgICAvLyBodHRwczovL3d3
dy53My5vcmcvQnVncy9QdWJsaWMvc2hvd19idWcuY2dpP2lkPTE2ODYxCi0gICAgaWYgKGJsZW5k
VG9QYXNzdGhyb3VnaCB8fCAhZnJvbSB8fCAhZnJvbS0+aXNTYW1lVHlwZSgqdGhpcykpCi0gICAg
ICAgIHJldHVybiB0aGlzOwotICAgIAotICAgIGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbiog
ZnJvbU9wID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oZnJvbSk7
Ci0gICAgaWYgKG1fcHJvZ3JhbS5nZXQoKSAhPSBmcm9tT3AtPm1fcHJvZ3JhbS5nZXQoKQotICAg
ICAgICB8fCBtX21lc2hSb3dzICE9IGZyb21PcC0+bV9tZXNoUm93cwotICAgICAgICB8fCBtX21l
c2hDb2x1bW5zICE9IGZyb21PcC0+bV9tZXNoQ29sdW1ucykKLSAgICAgICAgcmV0dXJuIHRoaXM7
Ci0gICAgCi0gICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCBhbmltYXRlZFBhcmFtZXRlcnM7
Ci0gICAgbV9wYXJhbWV0ZXJzLmJsZW5kKGZyb21PcC0+bV9wYXJhbWV0ZXJzLCBwcm9ncmVzcywg
c2l6ZSwgYW5pbWF0ZWRQYXJhbWV0ZXJzKTsKLSAgICByZXR1cm4gQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uOjpjcmVhdGUobV9wcm9ncmFtLCBhbmltYXRlZFBhcmFtZXRlcnMsIG1fbWVzaFJvd3MsIG1f
bWVzaENvbHVtbnMpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBF
TkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24uaApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDQ3YzYwNS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJhdGlvbi5oCisr
KyAvZGV2L251bGwKQEAgLTEsOTYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBB
ZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICog
ICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRI
RSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0g
Ki8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJPcGVyYXRpb25faAotI2RlZmluZSBDdXN0b21GaWx0
ZXJPcGVyYXRpb25faAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3Rv
bUZpbHRlckNvbnN0YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3Qu
aCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtLmgiCi0jaW5jbHVkZSAiRmlsdGVyT3Bl
cmF0aW9uLmgiCi0jaW5jbHVkZSAiTGF5b3V0U2l6ZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLS8vIENTUyBTaGFkZXJzCi0KLWNsYXNzIEN1c3RvbUZpbHRlck9wZXJhdGlvbiA6IHB1Ymxp
YyBGaWx0ZXJPcGVyYXRpb24gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEN1c3Rv
bUZpbHRlck9wZXJhdGlvbj4gY3JlYXRlKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4g
cHJvZ3JhbSwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgc29ydGVkUGFyYW1ldGVy
cywgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zKQotICAgIHsKLSAgICAg
ICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0b21GaWx0ZXJPcGVyYXRpb24ocHJvZ3JhbSwgc29y
dGVkUGFyYW1ldGVycywgbWVzaFJvd3MsIG1lc2hDb2x1bW5zKSk7Ci0gICAgfQotICAgIAotICAg
IEN1c3RvbUZpbHRlclByb2dyYW0qIHByb2dyYW0oKSBjb25zdCB7IHJldHVybiBtX3Byb2dyYW0u
Z2V0KCk7IH0KLSAgICB2b2lkIHNldFByb2dyYW0oUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQcm9n
cmFtPiBwcm9ncmFtKSB7IG1fcHJvZ3JhbSA9IHByb2dyYW07IH0KLSAgICAKLSAgICBjb25zdCBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBwYXJhbWV0ZXJzKCkgY29uc3QgeyByZXR1cm4gbV9w
YXJhbWV0ZXJzOyB9Ci0gICAgCi0gICAgdW5zaWduZWQgbWVzaFJvd3MoKSBjb25zdCB7IHJldHVy
biBtX21lc2hSb3dzOyB9Ci0gICAgdW5zaWduZWQgbWVzaENvbHVtbnMoKSBjb25zdCB7IHJldHVy
biBtX21lc2hDb2x1bW5zOyB9Ci0KLSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSgp
IGNvbnN0IHsgcmV0dXJuIHByb2dyYW0oKSA/IHByb2dyYW0oKS0+bWVzaFR5cGUoKSA6IE1lc2hU
eXBlQXR0YWNoZWQ7IH0KLSAgICAKLSAgICB2aXJ0dWFsIH5DdXN0b21GaWx0ZXJPcGVyYXRpb24o
KTsKLSAgICAKLSAgICB2aXJ0dWFsIGJvb2wgYWZmZWN0c09wYWNpdHkoKSBjb25zdCB7IHJldHVy
biB0cnVlOyB9Ci0gICAgdmlydHVhbCBib29sIG1vdmVzUGl4ZWxzKCkgY29uc3QgeyByZXR1cm4g
dHJ1ZTsgfQotICAgIHZpcnR1YWwgYm9vbCBibGVuZGluZ05lZWRzUmVuZGVyZXJTaXplKCkgY29u
c3QgeyByZXR1cm4gdHJ1ZTsgfQotICAgIAotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxGaWx0ZXJP
cGVyYXRpb24+IGJsZW5kKGNvbnN0IEZpbHRlck9wZXJhdGlvbiogZnJvbSwgZG91YmxlIHByb2dy
ZXNzLCBjb25zdCBMYXlvdXRTaXplJiwgYm9vbCBibGVuZFRvUGFzc3Rocm91Z2ggPSBmYWxzZSk7
Ci0KLXByb3RlY3RlZDoKLSAgICBDdXN0b21GaWx0ZXJPcGVyYXRpb24oUGFzc1JlZlB0cjxDdXN0
b21GaWx0ZXJQcm9ncmFtPiwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYsIHVuc2ln
bmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucyk7Ci0gICAgCi1wcml2YXRlOgotICAg
IHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEZpbHRlck9wZXJhdGlvbiYgbykgY29uc3QK
LSAgICB7Ci0gICAgICAgIGlmICghaXNTYW1lVHlwZShvKSkKLSAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKLQotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJPcGVyYXRpb24qIG90aGVyID0gc3Rh
dGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oJm8pOwotICAgICAgICByZXR1
cm4gbV9wcm9ncmFtLmdldCgpID09IG90aGVyLT5tX3Byb2dyYW0uZ2V0KCkKLSAgICAgICAgICAg
ICYmIG1fbWVzaFJvd3MgPT0gb3RoZXItPm1fbWVzaFJvd3MKLSAgICAgICAgICAgICYmIG1fbWVz
aENvbHVtbnMgPT0gb3RoZXItPm1fbWVzaENvbHVtbnMKLSAgICAgICAgICAgICYmIG1fcGFyYW1l
dGVycyA9PSBvdGhlci0+bV9wYXJhbWV0ZXJzOwotICAgIH0KLQotICAgIFJlZlB0cjxDdXN0b21G
aWx0ZXJQcm9ncmFtPiBtX3Byb2dyYW07Ci0gICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCBt
X3BhcmFtZXRlcnM7Ci0gICAgCi0gICAgdW5zaWduZWQgbV9tZXNoUm93czsKLSAgICB1bnNpZ25l
ZCBtX21lc2hDb2x1bW5zOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyUGFyYW1ldGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAzYmFiMmQ4Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgKKysrIC9kZXYvbnVsbApAQCAt
MSw3OCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5j
b3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xE
RVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAq
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1
c3RvbUZpbHRlclBhcmFtZXRlcl9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlclBhcmFtZXRlcl9oCi0K
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNp
bmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5o
PgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlclBhcmFtZXRlciA6
IHB1YmxpYyBSZWZDb3VudGVkPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gewotcHVibGljOgotICAg
IC8vIEZJWE1FOiBJbXBsZW1lbnQgb3RoZXIgcGFyYW1ldGVycyB0eXBlczoKLSAgICAvLyB0ZXh0
dXJlczogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDQyCi0gICAg
ZW51bSBQYXJhbWV0ZXJUeXBlIHsKLSAgICAgICAgQVJSQVksCi0gICAgICAgIENPTE9SLAotICAg
ICAgICBNQVRSSVgsCi0gICAgICAgIE5VTUJFUiwKLSAgICAgICAgVFJBTlNGT1JNCi0gICAgfTsK
LSAgICAKLSAgICB2aXJ0dWFsIH5DdXN0b21GaWx0ZXJQYXJhbWV0ZXIoKSB7IH0KLSAgICAKLSAg
ICBQYXJhbWV0ZXJUeXBlIHBhcmFtZXRlclR5cGUoKSBjb25zdCB7IHJldHVybiBtX3R5cGU7IH0K
LSAgICBjb25zdCBTdHJpbmcmIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25hbWU7IH0KLSAgICAK
LSAgICBib29sIGlzU2FtZVR5cGUoY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyJiBvdGhlcikg
Y29uc3QgeyByZXR1cm4gcGFyYW1ldGVyVHlwZSgpID09IG90aGVyLnBhcmFtZXRlclR5cGUoKTsg
fQotICAgIAotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IGJs
ZW5kKGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlciosIGRvdWJsZSBwcm9ncmVzcywgY29uc3Qg
TGF5b3V0U2l6ZSYpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDdXN0
b21GaWx0ZXJQYXJhbWV0ZXImKSBjb25zdCA9IDA7Ci0gICAgYm9vbCBvcGVyYXRvciE9KGNvbnN0
IEN1c3RvbUZpbHRlclBhcmFtZXRlciYgbykgY29uc3QgeyByZXR1cm4gISgqdGhpcyA9PSBvKTsg
fQotcHJvdGVjdGVkOgotICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlcihQYXJhbWV0ZXJUeXBlIHR5
cGUsIGNvbnN0IFN0cmluZyYgbmFtZSkKLSAgICAgICAgOiBtX25hbWUobmFtZSkKLSAgICAgICAg
LCBtX3R5cGUodHlwZSkKLSAgICB7Ci0gICAgfQotCi1wcml2YXRlOgotICAgIFN0cmluZyBtX25h
bWU7Ci0gICAgUGFyYW1ldGVyVHlwZSBtX3R5cGU7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5j
cHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNjNjMzZTkuLjAwMDAwMDAKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJh
bWV0ZXJMaXN0LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDEwNCArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoK
LSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICog
ICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNV
Q0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmgiCi0KLSNpbmNs
dWRlICJDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdI
YXNoLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlz
dDo6Q3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCgpCi17Ci19Ci0KLUN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3Q6OkN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3Qoc2l6ZV90IHNpemUpCi0gICAgOiBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0QmFzZShzaXplKSAKLXsKLX0KLQotYm9vbCBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJMaXN0OjpvcGVyYXRvcj09KGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRl
ckxpc3QmIG90aGVyKSBjb25zdAotewotICAgIGlmIChzaXplKCkgIT0gb3RoZXIuc2l6ZSgpKQot
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplKCk7
ICsraSkgewotICAgICAgICBpZiAoYXQoaSkuZ2V0KCkgIT0gb3RoZXIuYXQoaSkuZ2V0KCkgCi0g
ICAgICAgICAgICAmJiAqYXQoaSkuZ2V0KCkgIT0gKm90aGVyLmF0KGkpLmdldCgpKQotICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotYm9vbCBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0OjpjaGVja0FscGhhYmV0aWNhbE9yZGVyKCkgY29uc3QK
LXsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAxOyBpIDwgc2l6ZSgpOyArK2kpIHsKLSAgICAgICAg
Ly8gQnJlYWsgZm9yIGVxdWFsIG9yIG5vdC1zb3J0ZWQgcGFyYW1ldGVycy4KLSAgICAgICAgaWYg
KCFjb2RlUG9pbnRDb21wYXJlTGVzc1RoYW4oYXQoaSAtIDEpLT5uYW1lKCksIGF0KGkpLT5uYW1l
KCkpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLSAgICByZXR1cm4gdHJ1ZTsK
LX0KLQotdm9pZCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0OjpibGVuZChjb25zdCBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJMaXN0JiBmcm9tTGlzdCwgCi0gICAgZG91YmxlIHByb2dyZXNzLCBjb25z
dCBMYXlvdXRTaXplJiBmcmFtZVNpemUsIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHJlc3Vs
dExpc3QpIGNvbnN0Ci17Ci0gICAgLy8gVGhpcyBtZXRob2QgZXhwZWN0cyBib3RoIGxpc3RzIHRv
IGJlIHNvcnRlZCBieSBwYXJhbWV0ZXIgbmFtZSBhbmQgdGhlIHJlc3VsdCBsaXN0IGlzIGFsc28g
c29ydGVkLgotICAgIEFTU0VSVChjaGVja0FscGhhYmV0aWNhbE9yZGVyKCkpOwotICAgIEFTU0VS
VChmcm9tTGlzdC5jaGVja0FscGhhYmV0aWNhbE9yZGVyKCkpOwotICAgIHNpemVfdCBmcm9tTGlz
dEluZGV4ID0gMCwgdG9MaXN0SW5kZXggPSAwOwotICAgIHdoaWxlIChmcm9tTGlzdEluZGV4IDwg
ZnJvbUxpc3Quc2l6ZSgpICYmIHRvTGlzdEluZGV4IDwgc2l6ZSgpKSB7Ci0gICAgICAgIEN1c3Rv
bUZpbHRlclBhcmFtZXRlciogcGFyYW1Gcm9tID0gZnJvbUxpc3QuYXQoZnJvbUxpc3RJbmRleCku
Z2V0KCk7Ci0gICAgICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlciogcGFyYW1UbyA9IGF0KHRvTGlz
dEluZGV4KS5nZXQoKTsKLSAgICAgICAgaWYgKHBhcmFtRnJvbS0+bmFtZSgpID09IHBhcmFtVG8t
Pm5hbWUoKSkgewotICAgICAgICAgICAgcmVzdWx0TGlzdC5hcHBlbmQocGFyYW1Uby0+YmxlbmQo
cGFyYW1Gcm9tLCBwcm9ncmVzcywgZnJhbWVTaXplKSk7Ci0gICAgICAgICAgICArK2Zyb21MaXN0
SW5kZXg7Ci0gICAgICAgICAgICArK3RvTGlzdEluZGV4OwotICAgICAgICAgICAgY29udGludWU7
Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGNvZGVQb2ludENvbXBhcmVMZXNzVGhhbihwYXJhbUZy
b20tPm5hbWUoKSwgcGFyYW1Uby0+bmFtZSgpKSkgewotICAgICAgICAgICAgcmVzdWx0TGlzdC5h
cHBlbmQocGFyYW1Gcm9tKTsKLSAgICAgICAgICAgICsrZnJvbUxpc3RJbmRleDsKLSAgICAgICAg
ICAgIGNvbnRpbnVlOwotICAgICAgICB9Ci0gICAgICAgIHJlc3VsdExpc3QuYXBwZW5kKHBhcmFt
VG8pOwotICAgICAgICArK3RvTGlzdEluZGV4OwotICAgIH0KLSAgICBmb3IgKDsgZnJvbUxpc3RJ
bmRleCA8IGZyb21MaXN0LnNpemUoKTsgKytmcm9tTGlzdEluZGV4KQotICAgICAgICByZXN1bHRM
aXN0LmFwcGVuZChmcm9tTGlzdC5hdChmcm9tTGlzdEluZGV4KSk7Ci0gICAgZm9yICg7IHRvTGlz
dEluZGV4IDwgc2l6ZSgpOyArK3RvTGlzdEluZGV4KQotICAgICAgICByZXN1bHRMaXN0LmFwcGVu
ZChhdCh0b0xpc3RJbmRleCkpOwotICAgIEFTU0VSVChyZXN1bHRMaXN0LmNoZWNrQWxwaGFiZXRp
Y2FsT3JkZXIoKSk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVO
QUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmgK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE5YmMwMWYuLjAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJhbWV0
ZXJMaXN0LmgKKysrIC9kZXYvbnVsbApAQCAtMSw1NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAq
ICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWlt
ZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFN
QUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdF9oCi0jZGVmaW5l
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3RfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQot
I2luY2x1ZGUgIkxheW91dFNpemUuaCIKLSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+Ci0KLW5hbWVz
cGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOwotdHlwZWRlZiBW
ZWN0b3I8UmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4+IEN1c3RvbUZpbHRlclBhcmFtZXRl
ckxpc3RCYXNlOwotCi1jbGFzcyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0IDogcHVibGljIEN1
c3RvbUZpbHRlclBhcmFtZXRlckxpc3RCYXNlIHsKLXB1YmxpYzoKLSAgICBDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0KCk7Ci0gICAgZXhwbGljaXQgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdChz
aXplX3QpOwotCi0gICAgYm9vbCBjaGVja0FscGhhYmV0aWNhbE9yZGVyKCkgY29uc3Q7Ci0gICAg
dm9pZCBibGVuZChjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBmcm9tLCBkb3VibGUg
cHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmLCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBy
ZXN1bHRMaXN0KSBjb25zdDsKLSAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVy
UGFyYW1ldGVyTGlzdCYpIGNvbnN0OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyUGFy
YW1ldGVyTGlzdF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtLmNwcApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggZjI3NjlmNy4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0uY3BwCisrKyAvZGV2
L251bGwKQEAgLTEsMTAxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUg
U3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0g
KiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0K
LSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRl
ICJDdXN0b21GaWx0ZXJQcm9ncmFtLmgiCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb21waWxl
ZFByb2dyYW0uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmgiCi0jaW5j
bHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJW
YWxpZGF0ZWRQcm9ncmFtLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotQ3VzdG9tRmlsdGVy
UHJvZ3JhbTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbShDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9n
cmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiBtaXhTZXR0aW5n
cywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAgOiBtX3Byb2dyYW1UeXBlKHBy
b2dyYW1UeXBlKQotICAgICwgbV9taXhTZXR0aW5ncyhtaXhTZXR0aW5ncykKLSAgICAsIG1fbWVz
aFR5cGUobWVzaFR5cGUpCi17Ci0gICAgLy8gS2VlcCB0aGUgY29uc3RydWN0b3IgcHJvdGVjdGVk
IHRvIHByZXZlbnQgY3JlYXRpbmcgdGhpcyBvYmplY3QgZGlyZWN0bHkuCi19Ci0KLUN1c3RvbUZp
bHRlclByb2dyYW06On5DdXN0b21GaWx0ZXJQcm9ncmFtKCkKLXsKLSAgICAvLyBBbGwgdGhlIGNs
aWVudHMgc2hvdWxkIGtlZXAgYSByZWZlcmVuY2UgdG8gdGhpcyBvYmplY3QuCi0gICAgQVNTRVJU
KG1fY2xpZW50cy5pc0VtcHR5KCkpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclByb2dyYW06OmFk
ZENsaWVudChDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50KiBjbGllbnQpCi17Ci0gICAgaWYgKG1f
Y2xpZW50cy5pc0VtcHR5KCkpIHsKLSAgICAgICAgLy8gTm90aWZ5IHRoZSBTdHlsZUN1c3RvbUZp
bHRlclByb2dyYW0gdGhhdCB3ZSBub3cgaGF2ZSBhdCBsZWFzdCBhIGNsaWVudAotICAgICAgICAv
LyBhbmQgdGhlIGxvYWRpbmcgY2FuIGJlZ2luLgotICAgICAgICAvLyBOb3RlOiBJZiB0aGUgc2hh
ZGVyIGlzIGFscmVhZHkgY2FjaGVkIHRoZSBmaXJzdCBjbGllbnQgd2lsbCBiZSBub3RpZmllZCwK
LSAgICAgICAgLy8gZXZlbiBpZiB0aGUgZmlsdGVyIHdhcyBhbHJlYWR5IGJ1aWx0LiBBZGQgdGhl
IGNsaWVudCBvbmx5IGFmdGVyIG5vdGlmeWluZwotICAgICAgICAvLyB0aGUgY2FjaGUgYWJvdXQg
dGhlbSwgc28gdGhhdCB3ZSBhdm9pZCBhIHVzZWxlc3MgcmVjcmVhdGlvbiBvZiB0aGUgZmlsdGVy
cyBjaGFpbi4KLSAgICAgICAgd2lsbEhhdmVDbGllbnRzKCk7Ci0gICAgfQotICAgIG1fY2xpZW50
cy5hZGQoY2xpZW50KTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJQcm9ncmFtOjpyZW1vdmVDbGll
bnQoQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudCogY2xpZW50KQotewotICAgIG1fY2xpZW50cy5y
ZW1vdmUoY2xpZW50KTsKLSAgICBpZiAobV9jbGllbnRzLmlzRW1wdHkoKSkgewotICAgICAgICAv
LyBXZSBoYXZlIG5vIGNsaWVudHMgYW55bW9yZSwgdGhlIGNhY2hlZCByZXNvdXJjZXMgY2FuIGJl
IHB1cmdlZCBmcm9tIG1lbW9yeS4KLSAgICAgICAgZGlkUmVtb3ZlTGFzdENsaWVudCgpOwotICAg
IH0KLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJQcm9ncmFtOjpub3RpZnlDbGllbnRzKCkKLXsKLSAg
ICBmb3IgKEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnRMaXN0OjppdGVyYXRvciBpdGVyID0gbV9j
bGllbnRzLmJlZ2luKCksIGVuZCA9IG1fY2xpZW50cy5lbmQoKTsgaXRlciAhPSBlbmQ7ICsraXRl
cikKLSAgICAgICAgaXRlci0+a2V5LT5ub3RpZnlDdXN0b21GaWx0ZXJQcm9ncmFtTG9hZGVkKHRo
aXMpOwotfQotCi1DdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyBDdXN0b21GaWx0ZXJQcm9ncmFtOjpw
cm9ncmFtSW5mbygpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKGlzTG9hZGVkKCkpOwotICAgIHJldHVy
biBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyh2ZXJ0ZXhTaGFkZXJTdHJpbmcoKSwgZnJhZ21lbnRT
aGFkZXJTdHJpbmcoKSwgbV9wcm9ncmFtVHlwZSwgbV9taXhTZXR0aW5ncywgbV9tZXNoVHlwZSk7
Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gQ3VzdG9tRmls
dGVyUHJvZ3JhbTo6dmFsaWRhdGVkUHJvZ3JhbSgpCi17Ci0gICAgcmV0dXJuIG1fdmFsaWRhdGVk
UHJvZ3JhbTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJQcm9ncmFtOjpzZXRWYWxpZGF0ZWRQcm9n
cmFtKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gdmFsaWRhdGVkUHJv
Z3JhbSkKLXsKLSAgICBtX3ZhbGlkYXRlZFByb2dyYW0gPSB2YWxpZGF0ZWRQcm9ncmFtOwotfQot
Ci19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJQcm9ncmFtLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWQ4OTY1Yy4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW0uaAorKysgL2Rldi9udWxsCkBAIC0xLDk5ICswLDAg
QEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJ
U+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICog
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
Ci0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVy
UHJvZ3JhbV9oCi0jZGVmaW5lIEN1c3RvbUZpbHRlclByb2dyYW1faAotCi0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLQotI2lu
Y2x1ZGUgPHd0Zi9IYXNoQ291bnRlZFNldC5oPgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+
Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsK
LQotY2xhc3MgR3JhcGhpY3NDb250ZXh0M0Q7Ci1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xp
ZW50OwotY2xhc3MgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTsKLQotLy8gVGhpcyBpcyB0
aGUgYmFzZSBjbGFzcyBmb3IgdGhlIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSBjbGFzcyB3aGlj
aCBrbm93cyBob3cgdG8ga2VlcAotLy8gcmVmZXJlbmNlcyB0byB0aGUgY2FjaGVkIHNoYWRlcnMu
Ci1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtOiBwdWJsaWMgUmVmQ291bnRlZDxDdXN0b21GaWx0
ZXJQcm9ncmFtPiB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+Q3VzdG9tRmlsdGVyUHJvZ3JhbSgp
OwotCi0gICAgdmlydHVhbCBib29sIGlzTG9hZGVkKCkgY29uc3QgPSAwOwotCi0gICAgdm9pZCBh
ZGRDbGllbnQoQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudCopOwotICAgIHZvaWQgcmVtb3ZlQ2xp
ZW50KEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQqKTsKLSAgICAKLSAgICBDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mbyBwcm9ncmFtSW5mbygpIGNvbnN0OwotCi0gICAgdmlydHVhbCBTdHJpbmcgdmVy
dGV4U2hhZGVyU3RyaW5nKCkgY29uc3QgPSAwOwotICAgIHZpcnR1YWwgU3RyaW5nIGZyYWdtZW50
U2hhZGVyU3RyaW5nKCkgY29uc3QgPSAwOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHBy
b2dyYW1UeXBlKCkgY29uc3QgeyByZXR1cm4gbV9wcm9ncmFtVHlwZTsgfQotICAgIEN1c3RvbUZp
bHRlclByb2dyYW1NaXhTZXR0aW5ncyBtaXhTZXR0aW5ncygpIGNvbnN0IHsgcmV0dXJuIG1fbWl4
U2V0dGluZ3M7IH0KLSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSgpIGNvbnN0IHsg
cmV0dXJuIG1fbWVzaFR5cGU7IH0KLQotICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRh
dGVkUHJvZ3JhbT4gdmFsaWRhdGVkUHJvZ3JhbSgpOwotICAgIHZvaWQgc2V0VmFsaWRhdGVkUHJv
Z3JhbShQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+KTsKLQotcHJvdGVj
dGVkOgotICAgIC8vIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSBjYW4gbm90aWZ5IHRoZSBjbGll
bnRzIHRoYXQgdGhlIGNhY2hlZCByZXNvdXJjZXMgYXJlCi0gICAgLy8gbG9hZGVkIGFuZCBpdCBp
cyByZWFkeSB0byBjcmVhdGUgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtIG9iamVjdHMuCi0g
ICAgdm9pZCBub3RpZnlDbGllbnRzKCk7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgd2lsbEhhdmVDbGll
bnRzKCkgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaWRSZW1vdmVMYXN0Q2xpZW50KCkgPSAwOwot
Ci0gICAgLy8gS2VlcCB0aGUgY29uc3RydWN0b3IgcHJvdGVjdGVkIHRvIHByZXZlbnQgY3JlYXRp
bmcgdGhpcyBvYmplY3QgZGlyZWN0bHkuCi0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbShDdXN0b21G
aWx0ZXJQcm9ncmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiwg
Q3VzdG9tRmlsdGVyTWVzaFR5cGUpOwotCi1wcml2YXRlOgotICAgIC8vIEN1c3RvbUZpbHRlclBy
b2dyYW1zIGFyZSB1bmlxdWUgY29tYmluYXRpb25zIG9mIHNoYWRlcnMgYW5kIGNhbiBiZSAKLSAg
ICAvLyBjb21wYXJlZCB1c2luZyBqdXN0IHRoZSBwb2ludGVyIHZhbHVlIGluc3RlYWQuCi0gICAg
Ly8gVGhlc2Ugd2lsbCBjYXRjaCBhbnlvbmUgZG9pbmcgYSB2YWx1ZSBlcXVhbCBjb21wYXJpc29u
LgotICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtJikgY29uc3Q7
Ci0gICAgYm9vbCBvcGVyYXRvciE9KGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW0mKSBjb25zdDsK
LQotICAgIHR5cGVkZWYgSGFzaENvdW50ZWRTZXQ8Q3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudCo+
IEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnRMaXN0OwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1D
bGllbnRMaXN0IG1fY2xpZW50czsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBtX3Byb2dy
YW1UeXBlOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyBtX21peFNldHRpbmdz
OwotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1fbWVzaFR5cGU7Ci0gICAgUmVmUHRyPEN1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW0+IG1fdmFsaWRhdGVkUHJvZ3JhbTsKLX07Ci0KLX0KLQot
I2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1D
bGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyUHJvZ3JhbUNsaWVudC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYjBi
N2MwLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oCisrKyAvZGV2L251bGwKQEAgLTEsNTIgKzAs
MCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRl
ZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwot
ICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAq
ICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFT
IElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0g
KiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0
ZXJQcm9ncmFtQ2xpZW50X2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudF9oCi0K
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3Mg
Q3VzdG9tRmlsdGVyUHJvZ3JhbTsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudCB7
Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+Q3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudCgpCi0gICAg
ewotICAgIH0KLSAgICAKLSAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5Q3VzdG9tRmlsdGVyUHJvZ3Jh
bUxvYWRlZChDdXN0b21GaWx0ZXJQcm9ncmFtKikgPSAwOwotfTsKLQotfQotCi0jZW5kaWYgLy8g
RU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVu
dF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlclByb2dyYW1JbmZvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBkZGFiOWE3Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwCisrKyAv
ZGV2L251bGwKQEAgLTEsMTA5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRv
YmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAg
IGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Q09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
Ci0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICov
Ci0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNs
dWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oIgotCi0jaW5jbHVkZSA8d3RmL0hhc2hGdW5j
dGlvbnMuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+Ci0KLW5hbWVzcGFjZSBX
ZWJDb3JlIHsKLQotc3RhdGljIHVuc2lnbmVkIGhhc2hQb3NzaWJseU51bGxTdHJpbmcoY29uc3Qg
U3RyaW5nJiBzdHJpbmcpCi17Ci0gICAgcmV0dXJuIHN0cmluZy5pc051bGwoKSA/IDAgOiBEZWZh
dWx0SGFzaDxTdHJpbmc+OjpIYXNoOjpoYXNoKHN0cmluZyk7Ci19Ci0KLUN1c3RvbUZpbHRlclBy
b2dyYW1JbmZvOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbygpCi17Ci19Ci0KLWJvb2wgQ3VzdG9t
RmlsdGVyUHJvZ3JhbUluZm86OmlzRW1wdHlWYWx1ZSgpIGNvbnN0IAoteyAKLSAgICByZXR1cm4g
bV92ZXJ0ZXhTaGFkZXJTdHJpbmcuaXNOdWxsKCkgCi0gICAgICAgICYmIG1fZnJhZ21lbnRTaGFk
ZXJTdHJpbmcuaXNOdWxsKCk7Ci19Ci0KLUN1c3RvbUZpbHRlclByb2dyYW1JbmZvOjpDdXN0b21G
aWx0ZXJQcm9ncmFtSW5mbyhXVEY6Okhhc2hUYWJsZURlbGV0ZWRWYWx1ZVR5cGUpCi0gICAgOiBt
X3ZlcnRleFNoYWRlclN0cmluZyhXVEY6Okhhc2hUYWJsZURlbGV0ZWRWYWx1ZSkKLSAgICAsIG1f
ZnJhZ21lbnRTaGFkZXJTdHJpbmcoV1RGOjpIYXNoVGFibGVEZWxldGVkVmFsdWUpCi17Ci19Ci0K
LWJvb2wgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm86OmlzSGFzaFRhYmxlRGVsZXRlZFZhbHVlKCkg
Y29uc3QKLXsKLSAgICByZXR1cm4gbV92ZXJ0ZXhTaGFkZXJTdHJpbmcuaXNIYXNoVGFibGVEZWxl
dGVkVmFsdWUoKSAKLSAgICAgICAgJiYgbV9mcmFnbWVudFNoYWRlclN0cmluZy5pc0hhc2hUYWJs
ZURlbGV0ZWRWYWx1ZSgpOwotfQotCi1DdXN0b21GaWx0ZXJQcm9ncmFtSW5mbzo6Q3VzdG9tRmls
dGVyUHJvZ3JhbUluZm8oY29uc3QgU3RyaW5nJiB2ZXJ0ZXhTaGFkZXIsIGNvbnN0IFN0cmluZyYg
ZnJhZ21lbnRTaGFkZXIsIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlLCBjb25z
dCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG1peFNldHRpbmdzLCBDdXN0b21GaWx0
ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAgICA6IG1fdmVydGV4U2hhZGVyU3RyaW5nKHZlcnRleFNo
YWRlcikKLSAgICAsIG1fZnJhZ21lbnRTaGFkZXJTdHJpbmcoZnJhZ21lbnRTaGFkZXIpCi0gICAg
LCBtX3Byb2dyYW1UeXBlKHByb2dyYW1UeXBlKQotICAgICwgbV9taXhTZXR0aW5ncyhtaXhTZXR0
aW5ncykKLSAgICAsIG1fbWVzaFR5cGUobWVzaFR5cGUpCi17Ci0gICAgLy8gQXQgbGVhc3Qgb25l
IG9mIHRoZSBzaGFkZXJzIG5lZWRzIHRvIGJlIG5vbi1udWxsLgotICAgIEFTU0VSVCghbV92ZXJ0
ZXhTaGFkZXJTdHJpbmcuaXNOdWxsKCkgfHwgIW1fZnJhZ21lbnRTaGFkZXJTdHJpbmcuaXNOdWxs
KCkpOwotfQotCi11bnNpZ25lZCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbzo6aGFzaCgpIGNvbnN0
Ci17Ci0gICAgLy8gQXQgbGVhc3Qgb25lIG9mIHRoZSBzaGFkZXJzIG5lZWRzIHRvIGJlIG5vbi1u
dWxsLgotICAgIEFTU0VSVCghbV92ZXJ0ZXhTaGFkZXJTdHJpbmcuaXNOdWxsKCkgfHwgIW1fZnJh
Z21lbnRTaGFkZXJTdHJpbmcuaXNOdWxsKCkpOwotCi0gICAgYm9vbCBibGVuZHNFbGVtZW50VGV4
dHVyZSA9IChtX3Byb2dyYW1UeXBlID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhU
VVJFKTsKLSAgICB1aW50cHRyX3QgaGFzaENvZGVzWzZdID0gewotICAgICAgICBoYXNoUG9zc2li
bHlOdWxsU3RyaW5nKG1fdmVydGV4U2hhZGVyU3RyaW5nKSwKLSAgICAgICAgaGFzaFBvc3NpYmx5
TnVsbFN0cmluZyhtX2ZyYWdtZW50U2hhZGVyU3RyaW5nKSwKLSAgICAgICAgYmxlbmRzRWxlbWVu
dFRleHR1cmUsCi0gICAgICAgIHN0YXRpY19jYXN0PHVpbnRwdHJfdD4oYmxlbmRzRWxlbWVudFRl
eHR1cmUgPyBtX21peFNldHRpbmdzLmJsZW5kTW9kZSA6IDApLAotICAgICAgICBzdGF0aWNfY2Fz
dDx1aW50cHRyX3Q+KGJsZW5kc0VsZW1lbnRUZXh0dXJlID8gbV9taXhTZXR0aW5ncy5jb21wb3Np
dGVPcGVyYXRvciA6IDApLAotICAgICAgICBtX21lc2hUeXBlCi0gICAgfTsKLSAgICByZXR1cm4g
U3RyaW5nSGFzaGVyOjpoYXNoTWVtb3J5PHNpemVvZihoYXNoQ29kZXMpPigmaGFzaENvZGVzKTsK
LX0KLQotYm9vbCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbzo6b3BlcmF0b3I9PShjb25zdCBDdXN0
b21GaWx0ZXJQcm9ncmFtSW5mbyYgbykgY29uc3QgCi17Ci0gICAgQVNTRVJUKCFpc0hhc2hUYWJs
ZURlbGV0ZWRWYWx1ZSgpKTsKLSAgICBBU1NFUlQoIW8uaXNIYXNoVGFibGVEZWxldGVkVmFsdWUo
KSk7Ci0KLSAgICByZXR1cm4gbV9wcm9ncmFtVHlwZSA9PSBvLm1fcHJvZ3JhbVR5cGUKLSAgICAg
ICAgJiYgKG1fcHJvZ3JhbVR5cGUgIT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRV
UkUgfHwgbV9taXhTZXR0aW5ncyA9PSBvLm1fbWl4U2V0dGluZ3MpCi0gICAgICAgICYmIG1fbWVz
aFR5cGUgPT0gby5tX21lc2hUeXBlCi0gICAgICAgICYmIG1fdmVydGV4U2hhZGVyU3RyaW5nID09
IG8ubV92ZXJ0ZXhTaGFkZXJTdHJpbmcKLSAgICAgICAgJiYgbV9mcmFnbWVudFNoYWRlclN0cmlu
ZyA9PSBvLm1fZnJhZ21lbnRTaGFkZXJTdHJpbmc7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8u
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVy
UHJvZ3JhbUluZm8uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMWViNjhmMi4uMDAw
MDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3Rv
bUZpbHRlclByb2dyYW1JbmZvLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMTEgKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
Ci0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJQcm9ncmFt
SW5mb19oCi0jZGVmaW5lIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvX2gKLQotI2lmIEVOQUJMRShD
U1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNpbmNsdWRl
ICJHcmFwaGljc1R5cGVzLmgiCi0KLSNpbmNsdWRlIDx3dGYvSGFzaFRyYWl0cy5oPgotI2luY2x1
ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLQotc3Ry
dWN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyB7Ci0gICAgQ3VzdG9tRmlsdGVyUHJv
Z3JhbU1peFNldHRpbmdzKCkKLSAgICAgICAgOiBibGVuZE1vZGUoQmxlbmRNb2RlTm9ybWFsKQot
ICAgICAgICAsIGNvbXBvc2l0ZU9wZXJhdG9yKENvbXBvc2l0ZVNvdXJjZUF0b3ApCi0gICAgewot
ICAgIH0KLSAgICAKLSAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3Jh
bU1peFNldHRpbmdzJiBvKSBjb25zdAotICAgIHsKLSAgICAgICAgcmV0dXJuIGJsZW5kTW9kZSA9
PSBvLmJsZW5kTW9kZSAmJiBjb21wb3NpdGVPcGVyYXRvciA9PSBvLmNvbXBvc2l0ZU9wZXJhdG9y
OwotICAgIH0KLSAgICAKLSAgICBCbGVuZE1vZGUgYmxlbmRNb2RlOwotICAgIENvbXBvc2l0ZU9w
ZXJhdG9yIGNvbXBvc2l0ZU9wZXJhdG9yOwotfTsKLQotLy8gQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8gaXMgdGhlIGtleSB1c2VkIHRvIGxpbmsgQ3VzdG9tRmlsdGVyUHJvZ3JhbSB3aXRoIEN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbS4KLS8vIEl0IGNhbiBiZSB1c2VkIGFzIGEga2V5IGluIGEg
SGFzaE1hcCwgd2l0aCB0aGUgbm90ZSB0aGF0IGF0IGxlYXN0IG9uZSBvZiBTdHJpbmdzIG5lZWRz
IHRvIGJlIG5vbi1udWxsLiAKLS8vIE51bGwgc3RyaW5ncyBhcmUgcGxhY2Vob2xkZXJzIGZvciB0
aGUgZGVmYXVsdCBzaGFkZXIuCi1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyB7Ci1wdWJs
aWM6Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8oY29uc3QgU3RyaW5nJiwgY29uc3QgU3Ry
aW5nJiwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1N
aXhTZXR0aW5ncyYsIEN1c3RvbUZpbHRlck1lc2hUeXBlKTsKLQotICAgIEN1c3RvbUZpbHRlclBy
b2dyYW1JbmZvKCk7Ci0gICAgYm9vbCBpc0VtcHR5VmFsdWUoKSBjb25zdDsKLQotICAgIEN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvKFdURjo6SGFzaFRhYmxlRGVsZXRlZFZhbHVlVHlwZSk7Ci0gICAg
Ym9vbCBpc0hhc2hUYWJsZURlbGV0ZWRWYWx1ZSgpIGNvbnN0OwotICAgIAotICAgIHVuc2lnbmVk
IGhhc2goKSBjb25zdDsKLSAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8mKSBjb25zdDsKLQotICAgIGNvbnN0IFN0cmluZyYgdmVydGV4U2hhZGVyU3RyaW5n
KCkgY29uc3QgeyByZXR1cm4gbV92ZXJ0ZXhTaGFkZXJTdHJpbmc7IH0KLSAgICBjb25zdCBTdHJp
bmcmIGZyYWdtZW50U2hhZGVyU3RyaW5nKCkgY29uc3QgeyByZXR1cm4gbV9mcmFnbWVudFNoYWRl
clN0cmluZzsgfQotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlKCkgY29u
c3QgeyByZXR1cm4gbV9wcm9ncmFtVHlwZTsgfQotICAgIGNvbnN0IEN1c3RvbUZpbHRlclByb2dy
YW1NaXhTZXR0aW5ncyYgbWl4U2V0dGluZ3MoKSBjb25zdCB7IHJldHVybiBtX21peFNldHRpbmdz
OyB9Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUoKSBjb25zdCB7IHJldHVybiBt
X21lc2hUeXBlOyB9Ci1wcml2YXRlOgotICAgIFN0cmluZyBtX3ZlcnRleFNoYWRlclN0cmluZzsK
LSAgICBTdHJpbmcgbV9mcmFnbWVudFNoYWRlclN0cmluZzsKLSAgICBDdXN0b21GaWx0ZXJQcm9n
cmFtVHlwZSBtX3Byb2dyYW1UeXBlOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5n
cyBtX21peFNldHRpbmdzOwotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1fbWVzaFR5cGU7Ci19
OwotCi1zdHJ1Y3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm9IYXNoIHsKLSAgICBzdGF0aWMgdW5z
aWduZWQgaGFzaChjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8pIHsg
cmV0dXJuIHByb2dyYW1JbmZvLmhhc2goKTsgfQotICAgIHN0YXRpYyBib29sIGVxdWFsKGNvbnN0
IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBhLCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5m
byYgYikgeyByZXR1cm4gYSA9PSBiOyB9Ci0gICAgc3RhdGljIGNvbnN0IGJvb2wgc2FmZVRvQ29t
cGFyZVRvRW1wdHlPckRlbGV0ZWQgPSBmYWxzZTsKLX07Ci0KLXN0cnVjdCBDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mb0hhc2hUcmFpdHMgOiBXVEY6OlNpbXBsZUNsYXNzSGFzaFRyYWl0czxDdXN0b21G
aWx0ZXJQcm9ncmFtSW5mbz4gewotICAgIHN0YXRpYyBjb25zdCBib29sIGhhc0lzRW1wdHlWYWx1
ZUZ1bmN0aW9uID0gdHJ1ZTsKLSAgICBzdGF0aWMgYm9vbCBpc0VtcHR5VmFsdWUoY29uc3QgQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8mIGluZm8pIHsgcmV0dXJuIGluZm8uaXNFbXB0eVZhbHVlKCk7
IH0KLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotbmFtZXNwYWNlIFdURiB7Ci0KLXRl
bXBsYXRlPD4gc3RydWN0IEhhc2hUcmFpdHM8V2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8+IDogV2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm9IYXNoVHJhaXRzIHsgfTsKLXRl
bXBsYXRlPD4gc3RydWN0IERlZmF1bHRIYXNoPFdlYkNvcmU6OkN1c3RvbUZpbHRlclByb2dyYW1J
bmZvPiB7IAotICAgIHR5cGVkZWYgV2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm9IYXNo
IEhhc2g7IAotfTsKLQotfQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlm
IC8vIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUmVuZGVyZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJl
ci5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYyZWQzOTMuLjAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJS
ZW5kZXJlci5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwzMzUgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMiBDb21wYW55IDEwMCwg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
Ci0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQot
ICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoK
LSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCc
QVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUK
LSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmln
LmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLSNpbmNs
dWRlICJDdXN0b21GaWx0ZXJSZW5kZXJlci5oIgotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQXJy
YXlQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oIgot
I2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkN1c3Rv
bUZpbHRlckNvbnN0YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck1lc2guaCIKLSNpbmNs
dWRlICJDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0
ZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIu
aCIKLSNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5oIgotI2luY2x1ZGUgIlRyYW5zZm9ybWF0
aW9uTWF0cml4LmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotc3RhdGljIHZvaWQgb3J0aG9n
b25hbFByb2plY3Rpb25NYXRyaXgoVHJhbnNmb3JtYXRpb25NYXRyaXgmIG1hdHJpeCwgZmxvYXQg
bGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxvYXQgdG9wKQotewotICAgIEFTU0VS
VChtYXRyaXguaXNJZGVudGl0eSgpKTsKLQotICAgIGZsb2F0IGRlbHRhWCA9IHJpZ2h0IC0gbGVm
dDsKLSAgICBmbG9hdCBkZWx0YVkgPSB0b3AgLSBib3R0b207Ci0gICAgaWYgKCFkZWx0YVggfHwg
IWRlbHRhWSkKLSAgICAgICAgcmV0dXJuOwotICAgIG1hdHJpeC5zZXRNMTEoMi4wZiAvIGRlbHRh
WCk7Ci0gICAgbWF0cml4LnNldE00MSgtKHJpZ2h0ICsgbGVmdCkgLyBkZWx0YVgpOwotICAgIG1h
dHJpeC5zZXRNMjIoMi4wZiAvIGRlbHRhWSk7Ci0gICAgbWF0cml4LnNldE00MigtKHRvcCArIGJv
dHRvbSkgLyBkZWx0YVkpOwotCi0gICAgLy8gVXNlIGJpZyBlbm91Z2ggbmVhci9mYXIgdmFsdWVz
LCBzbyB0aGF0IHNpbXBsZSByb3RhdGlvbnMgb2YgcmF0aGVyIGxhcmdlIG9iamVjdHMgd2lsbCBu
b3QKLSAgICAvLyBnZXQgY2xpcHBlZC4gMTAwMDAgc2hvdWxkIGNvdmVyIG1vc3Qgb2YgdGhlIHNj
cmVlbiByZXNvbHV0aW9ucy4KLSAgICBjb25zdCBmbG9hdCBmYXJWYWx1ZSA9IDEwMDAwOwotICAg
IGNvbnN0IGZsb2F0IG5lYXJWYWx1ZSA9IC0xMDAwMDsKLSAgICBtYXRyaXguc2V0TTMzKC0yLjBm
IC8gKGZhclZhbHVlIC0gbmVhclZhbHVlKSk7Ci0gICAgbWF0cml4LnNldE00MygtIChmYXJWYWx1
ZSArIG5lYXJWYWx1ZSkgLyAoZmFyVmFsdWUgLSBuZWFyVmFsdWUpKTsKLSAgICBtYXRyaXguc2V0
TTQ0KDEuMGYpOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlclJlbmRlcmVyPiBDdXN0b21G
aWx0ZXJSZW5kZXJlcjo6Y3JlYXRlKFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNvbnRl
eHQsIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0
ZXJQYXJhbWV0ZXJMaXN0JiBwYXJhbWV0ZXJzLAotICAgIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNp
Z25lZCBtZXNoQ29sdW1ucywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi17Ci0gICAg
cmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0b21GaWx0ZXJSZW5kZXJlcihjb250ZXh0LCBwcm9ncmFt
VHlwZSwgcGFyYW1ldGVycywgbWVzaFJvd3MsIG1lc2hDb2x1bW5zLCBtZXNoVHlwZSkpOwotfQot
Ci1DdXN0b21GaWx0ZXJSZW5kZXJlcjo6Q3VzdG9tRmlsdGVyUmVuZGVyZXIoUGFzc1JlZlB0cjxH
cmFwaGljc0NvbnRleHQzRD4gY29udGV4dCwgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3Jh
bVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmIHBhcmFtZXRlcnMsCi0gICAg
dW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJNZXNo
VHlwZSBtZXNoVHlwZSkKLSAgICA6IG1fY29udGV4dChjb250ZXh0KQotICAgICwgbV9wcm9ncmFt
VHlwZShwcm9ncmFtVHlwZSkKLSAgICAsIG1fcGFyYW1ldGVycyhwYXJhbWV0ZXJzKQotICAgICwg
bV9tZXNoUm93cyhtZXNoUm93cykKLSAgICAsIG1fbWVzaENvbHVtbnMobWVzaENvbHVtbnMpCi0g
ICAgLCBtX21lc2hUeXBlKG1lc2hUeXBlKQotewotfQotCi1DdXN0b21GaWx0ZXJSZW5kZXJlcjo6
fkN1c3RvbUZpbHRlclJlbmRlcmVyKCkKLXsKLX0KLQotYm9vbCBDdXN0b21GaWx0ZXJSZW5kZXJl
cjo6cHJlbXVsdGlwbGllZEFscGhhKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9wcm9ncmFtVHlw
ZSA9PSBQUk9HUkFNX1RZUEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRTsKLX0KLQotYm9vbCBDdXN0
b21GaWx0ZXJSZW5kZXJlcjo6cHJvZ3JhbU5lZWRzSW5wdXRUZXh0dXJlKCkgY29uc3QKLXsKLSAg
ICBBU1NFUlQobV9jb21waWxlZFByb2dyYW0uZ2V0KCkpOwotICAgIHJldHVybiBtX2NvbXBpbGVk
UHJvZ3JhbS0+c2FtcGxlckxvY2F0aW9uKCkgIT0gLTE7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVy
UmVuZGVyZXI6OmRyYXcoUGxhdGZvcm0zRE9iamVjdCBpbnB1dFRleHR1cmUsIGNvbnN0IEludFNp
emUmIHNpemUpCi17Ci0gICAgLy8gRklYTUU6IFdlIHdvdWxkIG5lZWQgc29tZXRoaW5nIGxpa2Ug
Q3VzdG9tRmlsdGVyUmVuZGVyZXJTdGF0ZSB0aGF0IHdpbGwgY29udGFpbiB0aGUgc2l6ZSBhbmQg
b3RoZXIgcGFyYW1ldGVycyBpbiB0aGUgZnV0dXJlLiBXZSBzaG91bGQgcGFzcyB0aGF0IHRvIGJp
bmRQcm9ncmFtQnVmZmVycyBpbnN0ZWFkIG9mIHN0b3JpbmcgaXQuCi0gICAgLy8gaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDEwNwotICAgIG1fY29udGV4dFNpemUg
PSBzaXplOwotCi0gICAgYmluZFByb2dyYW1BbmRCdWZmZXJzKGlucHV0VGV4dHVyZSk7Ci0gICAg
bV9jb250ZXh0LT5kcmF3RWxlbWVudHMoR3JhcGhpY3NDb250ZXh0M0Q6OlRSSUFOR0xFUywgbV9t
ZXNoLT5pbmRpY2VzQ291bnQoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OlVOU0lHTkVEX1NIT1JULCAw
KTsKLSAgICB1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGVzKCk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVy
UmVuZGVyZXI6OnNldENvbXBpbGVkUHJvZ3JhbShQYXNzUmVmUHRyPEN1c3RvbUZpbHRlckNvbXBp
bGVkUHJvZ3JhbT4gY29tcGlsZWRQcm9ncmFtKQotewotICAgIG1fY29tcGlsZWRQcm9ncmFtID0g
Y29tcGlsZWRQcm9ncmFtOwotfQotCi1ib29sIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpwcmVwYXJl
Rm9yRHJhd2luZygpCi17Ci0gICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJlbnQoKTsKLSAg
ICBpZiAoIW1fY29tcGlsZWRQcm9ncmFtIHx8ICFtX2NvbXBpbGVkUHJvZ3JhbS0+aXNJbml0aWFs
aXplZCgpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgaW5pdGlhbGl6ZU1lc2hJZk5lZWRl
ZCgpOwotICAgIHJldHVybiB0cnVlOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpp
bml0aWFsaXplTWVzaElmTmVlZGVkKCkKLXsKLSAgICBpZiAobV9tZXNoLmdldCgpKQotICAgICAg
ICByZXR1cm47Ci0KLSAgICAvLyBGSVhNRTogU2hhcmluZyB0aGUgbWVzaCB3b3VsZCBqdXN0IHNh
dmUgdGhlIHRpbWUgbmVlZGVkIHRvIHVwbG9hZCBpdCB0byB0aGUgR1BVLCBzbyBJIGFzc3VtZSB3
ZSBjb3VsZAotICAgIC8vIGJlbmNobWFyayB0aGF0IGZvciBwZXJmb3JtYW5jZS4KLSAgICAvLyBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg0MjkKLSAgICBtX21lc2gg
PSBDdXN0b21GaWx0ZXJNZXNoOjpjcmVhdGUobV9jb250ZXh0LmdldCgpLCBtX21lc2hDb2x1bW5z
LCBtX21lc2hSb3dzLCBGbG9hdFJlY3QoMCwgMCwgMSwgMSksIG1fbWVzaFR5cGUpOwotfQotCi12
b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpiaW5kVmVydGV4QXR0cmlidXRlKGludCBhdHRyaWJ1
dGVMb2NhdGlvbiwgdW5zaWduZWQgc2l6ZSwgdW5zaWduZWQgb2Zmc2V0KQotewotICAgIGlmIChh
dHRyaWJ1dGVMb2NhdGlvbiAhPSAtMSkgewotICAgICAgICBtX2NvbnRleHQtPnZlcnRleEF0dHJp
YlBvaW50ZXIoYXR0cmlidXRlTG9jYXRpb24sIHNpemUsIEdyYXBoaWNzQ29udGV4dDNEOjpGTE9B
VCwgZmFsc2UsIG1fbWVzaC0+Ynl0ZXNQZXJWZXJ0ZXgoKSwgb2Zmc2V0KTsKLSAgICAgICAgbV9j
b250ZXh0LT5lbmFibGVWZXJ0ZXhBdHRyaWJBcnJheShhdHRyaWJ1dGVMb2NhdGlvbik7Ci0gICAg
fQotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjp1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGUo
aW50IGF0dHJpYnV0ZUxvY2F0aW9uKQotewotICAgIGlmIChhdHRyaWJ1dGVMb2NhdGlvbiAhPSAt
MSkKLSAgICAgICAgbV9jb250ZXh0LT5kaXNhYmxlVmVydGV4QXR0cmliQXJyYXkoYXR0cmlidXRl
TG9jYXRpb24pOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpiaW5kUHJvZ3JhbUFy
cmF5UGFyYW1ldGVycyhpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJBcnJheVBhcmFt
ZXRlciogYXJyYXlQYXJhbWV0ZXIpCi17Ci0gICAgdW5zaWduZWQgcGFyYW1ldGVyU2l6ZSA9IGFy
cmF5UGFyYW1ldGVyLT5zaXplKCk7Ci0gICAgVmVjdG9yPEdDM0RmbG9hdD4gZmxvYXRWZWN0b3I7
Ci0KLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgcGFyYW1ldGVyU2l6ZTsgKytpKQotICAg
ICAgICBmbG9hdFZlY3Rvci5hcHBlbmQoYXJyYXlQYXJhbWV0ZXItPnZhbHVlQXQoaSkpOwotCi0g
ICAgbV9jb250ZXh0LT51bmlmb3JtMWZ2KHVuaWZvcm1Mb2NhdGlvbiwgcGFyYW1ldGVyU2l6ZSwg
ZmxvYXRWZWN0b3IuZGF0YSgpKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6Ymlu
ZFByb2dyYW1Db2xvclBhcmFtZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3VzdG9tRmlsdGVy
Q29sb3JQYXJhbWV0ZXIqIGNvbG9yUGFyYW1ldGVyKQotewotICAgIGZsb2F0IHIsIGcsIGIsIGE7
Ci0gICAgY29sb3JQYXJhbWV0ZXItPmNvbG9yKCkuZ2V0UkdCQShyLCBnLCBiLCBhKTsKLQotICAg
IG1fY29udGV4dC0+dW5pZm9ybTRmKHVuaWZvcm1Mb2NhdGlvbiwgciwgZywgYiwgYSk7Ci19Ci0K
LXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9ncmFtTWF0cml4UGFyYW1ldGVycyhp
bnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciogbWF0cml4UGFy
YW1ldGVyKQotewotICAgIHVuc2lnbmVkIHBhcmFtZXRlclNpemUgPSBtYXRyaXhQYXJhbWV0ZXIt
PnNpemUoKTsKLSAgICBWZWN0b3I8R0MzRGZsb2F0LCAxNj4gZmxvYXRWZWN0b3I7Ci0KLSAgICBm
b3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgcGFyYW1ldGVyU2l6ZTsgKytpKQotICAgICAgICBmbG9h
dFZlY3Rvci5hcHBlbmQobWF0cml4UGFyYW1ldGVyLT52YWx1ZUF0KGkpKTsKLQotICAgIHN3aXRj
aCAocGFyYW1ldGVyU2l6ZSkgewotICAgIGNhc2UgNDoKLSAgICAgICAgbV9jb250ZXh0LT51bmlm
b3JtTWF0cml4MmZ2KHVuaWZvcm1Mb2NhdGlvbiwgMSwgZmFsc2UsIGZsb2F0VmVjdG9yLmRhdGEo
KSk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgOToKLSAgICAgICAgbV9jb250ZXh0LT51bmlm
b3JtTWF0cml4M2Z2KHVuaWZvcm1Mb2NhdGlvbiwgMSwgZmFsc2UsIGZsb2F0VmVjdG9yLmRhdGEo
KSk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgMTY6Ci0gICAgICAgIG1fY29udGV4dC0+dW5p
Zm9ybU1hdHJpeDRmdih1bmlmb3JtTG9jYXRpb24sIDEsIGZhbHNlLCBmbG9hdFZlY3Rvci5kYXRh
KCkpOwotICAgICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKLSAgICB9Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9n
cmFtTnVtYmVyUGFyYW1ldGVycyhpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJOdW1i
ZXJQYXJhbWV0ZXIqIG51bWJlclBhcmFtZXRlcikKLXsKLSAgICBzd2l0Y2ggKG51bWJlclBhcmFt
ZXRlci0+c2l6ZSgpKSB7Ci0gICAgY2FzZSAxOgotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm0x
Zih1bmlmb3JtTG9jYXRpb24sIG51bWJlclBhcmFtZXRlci0+dmFsdWVBdCgwKSk7Ci0gICAgICAg
IGJyZWFrOwotICAgIGNhc2UgMjoKLSAgICAgICAgbV9jb250ZXh0LT51bmlmb3JtMmYodW5pZm9y
bUxvY2F0aW9uLCBudW1iZXJQYXJhbWV0ZXItPnZhbHVlQXQoMCksIG51bWJlclBhcmFtZXRlci0+
dmFsdWVBdCgxKSk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgMzoKLSAgICAgICAgbV9jb250
ZXh0LT51bmlmb3JtM2YodW5pZm9ybUxvY2F0aW9uLCBudW1iZXJQYXJhbWV0ZXItPnZhbHVlQXQo
MCksIG51bWJlclBhcmFtZXRlci0+dmFsdWVBdCgxKSwgbnVtYmVyUGFyYW1ldGVyLT52YWx1ZUF0
KDIpKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSA0OgotICAgICAgICBtX2NvbnRleHQtPnVu
aWZvcm00Zih1bmlmb3JtTG9jYXRpb24sIG51bWJlclBhcmFtZXRlci0+dmFsdWVBdCgwKSwgbnVt
YmVyUGFyYW1ldGVyLT52YWx1ZUF0KDEpLCBudW1iZXJQYXJhbWV0ZXItPnZhbHVlQXQoMiksIG51
bWJlclBhcmFtZXRlci0+dmFsdWVBdCgzKSk7Ci0gICAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6
Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIH0KLX0KLQotdm9pZCBDdXN0b21G
aWx0ZXJSZW5kZXJlcjo6YmluZFByb2dyYW1UcmFuc2Zvcm1QYXJhbWV0ZXIoaW50IHVuaWZvcm1M
b2NhdGlvbiwgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKiB0cmFuc2Zvcm1QYXJhbWV0
ZXIpCi17Ci0gICAgVHJhbnNmb3JtYXRpb25NYXRyaXggbWF0cml4OwotICAgIGlmIChtX2NvbnRl
eHRTaXplLndpZHRoKCkgJiYgbV9jb250ZXh0U2l6ZS5oZWlnaHQoKSkgewotICAgICAgICAvLyBU
aGUgdmlld3BvcnQgaXMgYSBib3ggd2l0aCB0aGUgc2l6ZSBvZiAxIHVuaXQsIHNvIHdlIGFyZSBz
Y2FsaW5nIHVwIGhlcmUgdG8gbWFrZSBzdXJlIHRoYXQgdHJhbnNsYXRpb25zIGhhcHBlbiB1c2lu
ZyByZWFsIHBpeGVsCi0gICAgICAgIC8vIHVuaXRzLiBBdCB0aGUgZW5kIHdlIHNjYWxlIGJhY2sg
ZG93biBpbiBvcmRlciB0byBtYXAgaXQgYmFjayB0byB0aGUgb3JpZ2luYWwgYm94LiBOb3RlIHRo
YXQgdHJhbnNmb3JtcyBjb21lIGluIHJldmVyc2Ugb3JkZXIsIGJlY2F1c2UgaXQgaXMKLSAgICAg
ICAgLy8gc3VwcG9zZWQgdG8gbXVsdGlwbHkgdG8gdGhlIGxlZnQgb2YgdGhlIGNvb3JkaW5hdGVz
IG9mIHRoZSB2ZXJ0aWNlcy4KLSAgICAgICAgLy8gTm90ZSB0aGF0IHRoZSBvcmlnaW4gKDAsIDAp
IG9mIHRoZSB2aWV3cG9ydCBpcyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBjb250ZXh0LCBzbyB0aGVy
ZSdzIG5vIG5lZWQgdG8gY2hhbmdlIHRoZSBvcmlnaW4gb2YgdGhlIHRyYW5zZm9ybQotICAgICAg
ICAvLyBpbiBvcmRlciB0byByb3RhdGUgYXJvdW5kIHRoZSBtaWRkbGUgb2YgbWVzaC4KLSAgICAg
ICAgbWF0cml4LnNjYWxlM2QoMS4wIC8gbV9jb250ZXh0U2l6ZS53aWR0aCgpLCAxLjAgLyBtX2Nv
bnRleHRTaXplLmhlaWdodCgpLCAxKTsKLSAgICAgICAgdHJhbnNmb3JtUGFyYW1ldGVyLT5hcHBs
eVRyYW5zZm9ybShtYXRyaXgsIG1fY29udGV4dFNpemUpOwotICAgICAgICBtYXRyaXguc2NhbGUz
ZChtX2NvbnRleHRTaXplLndpZHRoKCksIG1fY29udGV4dFNpemUuaGVpZ2h0KCksIDEpOwotICAg
IH0KLSAgICBmbG9hdCBnbE1hdHJpeFsxNl07Ci0gICAgbWF0cml4LnRvQ29sdW1uTWFqb3JGbG9h
dEFycmF5KGdsTWF0cml4KTsKLSAgICBtX2NvbnRleHQtPnVuaWZvcm1NYXRyaXg0ZnYodW5pZm9y
bUxvY2F0aW9uLCAxLCBmYWxzZSwgJmdsTWF0cml4WzBdKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0
ZXJSZW5kZXJlcjo6YmluZFByb2dyYW1QYXJhbWV0ZXJzKCkKLXsKLSAgICAvLyBGSVhNRTogRmlu
ZCBhIHdheSB0byByZXNldCB1bmlmb3JtcyB0aGF0IGFyZSBub3Qgc3BlY2lmaWVkIGluIENTUy4g
VGhpcyBpcyBuZWVkZWQgdG8gYXZvaWQgdXNpbmcgdmFsdWVzCi0gICAgLy8gc2V0IGJ5IG90aGVy
IHByZXZpb3VzIHJlbmRlcmVkIGZpbHRlcnMuCi0gICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTc2NDQwCi0KLSAgICBzaXplX3QgcGFyYW1ldGVyc1NpemUgPSBt
X3BhcmFtZXRlcnMuc2l6ZSgpOwotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcGFyYW1ldGVy
c1NpemU7ICsraSkgewotICAgICAgICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIqIHBhcmFtZXRlciA9
IG1fcGFyYW1ldGVycy5hdChpKS5nZXQoKTsKLSAgICAgICAgaW50IHVuaWZvcm1Mb2NhdGlvbiA9
IG1fY29tcGlsZWRQcm9ncmFtLT51bmlmb3JtTG9jYXRpb25CeU5hbWUocGFyYW1ldGVyLT5uYW1l
KCkpOwotICAgICAgICBpZiAodW5pZm9ybUxvY2F0aW9uID09IC0xKQotICAgICAgICAgICAgY29u
dGludWU7Ci0gICAgICAgIHN3aXRjaCAocGFyYW1ldGVyLT5wYXJhbWV0ZXJUeXBlKCkpIHsKLSAg
ICAgICAgY2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OkFSUkFZOgotICAgICAgICAgICAgYmlu
ZFByb2dyYW1BcnJheVBhcmFtZXRlcnModW5pZm9ybUxvY2F0aW9uLCBzdGF0aWNfY2FzdDxDdXN0
b21GaWx0ZXJBcnJheVBhcmFtZXRlcio+KHBhcmFtZXRlcikpOwotICAgICAgICAgICAgYnJlYWs7
Ci0gICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpDT0xPUjogICAgICAgIAotICAg
ICAgICAgICAgYmluZFByb2dyYW1Db2xvclBhcmFtZXRlcnModW5pZm9ybUxvY2F0aW9uLCBzdGF0
aWNfY2FzdDxDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcio+KHBhcmFtZXRlcikpOwotICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpNQVRSSVg6
Ci0gICAgICAgICAgICBiaW5kUHJvZ3JhbU1hdHJpeFBhcmFtZXRlcnModW5pZm9ybUxvY2F0aW9u
LCBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcio+KHBhcmFtZXRlcikpOwot
ICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpO
VU1CRVI6Ci0gICAgICAgICAgICBiaW5kUHJvZ3JhbU51bWJlclBhcmFtZXRlcnModW5pZm9ybUxv
Y2F0aW9uLCBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIqPihwYXJhbWV0
ZXIpKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFt
ZXRlcjo6VFJBTlNGT1JNOgotICAgICAgICAgICAgYmluZFByb2dyYW1UcmFuc2Zvcm1QYXJhbWV0
ZXIodW5pZm9ybUxvY2F0aW9uLCBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJh
bWV0ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAg
fQotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpiaW5kUHJvZ3JhbUFuZEJ1ZmZlcnMo
UGxhdGZvcm0zRE9iamVjdCBpbnB1dFRleHR1cmUpCi17Ci0gICAgQVNTRVJUKG1fY29tcGlsZWRQ
cm9ncmFtLT5pc0luaXRpYWxpemVkKCkpOwotCi0gICAgbV9jb250ZXh0LT51c2VQcm9ncmFtKG1f
Y29tcGlsZWRQcm9ncmFtLT5wcm9ncmFtKCkpOwotCi0gICAgaWYgKHByb2dyYW1OZWVkc0lucHV0
VGV4dHVyZSgpKSB7Ci0gICAgICAgIC8vIFdlIHNob3VsZCBiZSBiaW5kaW5nIHRoZSBET00gZWxl
bWVudCB0ZXh0dXJlIHNhbXBsZXIgb25seSBpZiB0aGUgYXV0aG9yIGlzIHVzaW5nIHRoZSBDU1Mg
bWl4IGZ1bmN0aW9uLgotICAgICAgICBBU1NFUlQobV9wcm9ncmFtVHlwZSA9PSBQUk9HUkFNX1RZ
UEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRSk7Ci0gICAgICAgIEFTU0VSVChtX2NvbXBpbGVkUHJv
Z3JhbS0+c2FtcGxlckxvY2F0aW9uKCkgIT0gLTEpOwotCi0gICAgICAgIG1fY29udGV4dC0+YWN0
aXZlVGV4dHVyZShHcmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRTApOwotICAgICAgICBtX2NvbnRl
eHQtPnVuaWZvcm0xaShtX2NvbXBpbGVkUHJvZ3JhbS0+c2FtcGxlckxvY2F0aW9uKCksIDApOwot
ICAgICAgICBtX2NvbnRleHQtPmJpbmRUZXh0dXJlKEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJF
XzJELCBpbnB1dFRleHR1cmUpOwotICAgICAgICBtX2NvbnRleHQtPnRleFBhcmFtZXRlcmkoR3Jh
cGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfMkQsIEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFX01J
Tl9GSUxURVIsIEdyYXBoaWNzQ29udGV4dDNEOjpMSU5FQVIpOwotICAgICAgICBtX2NvbnRleHQt
PnRleFBhcmFtZXRlcmkoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfMkQsIEdyYXBoaWNzQ29u
dGV4dDNEOjpURVhUVVJFX01BR19GSUxURVIsIEdyYXBoaWNzQ29udGV4dDNEOjpMSU5FQVIpOwot
ICAgICAgICBtX2NvbnRleHQtPnRleFBhcmFtZXRlcmkoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRV
UkVfMkQsIEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFX1dSQVBfUywgR3JhcGhpY3NDb250ZXh0
M0Q6OkNMQU1QX1RPX0VER0UpOwotICAgICAgICBtX2NvbnRleHQtPnRleFBhcmFtZXRlcmkoR3Jh
cGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVfMkQsIEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFX1dS
QVBfVCwgR3JhcGhpY3NDb250ZXh0M0Q6OkNMQU1QX1RPX0VER0UpOwotICAgIH0KLQotICAgIGlm
IChtX2NvbXBpbGVkUHJvZ3JhbS0+cHJvamVjdGlvbk1hdHJpeExvY2F0aW9uKCkgIT0gLTEpIHsK
LSAgICAgICAgVHJhbnNmb3JtYXRpb25NYXRyaXggcHJvamVjdGlvbk1hdHJpeDsKLSAgICAgICAg
b3J0aG9nb25hbFByb2plY3Rpb25NYXRyaXgocHJvamVjdGlvbk1hdHJpeCwgLTAuNSwgMC41LCAt
MC41LCAwLjUpOwotICAgICAgICBmbG9hdCBnbFByb2plY3Rpb25NYXRyaXhbMTZdOwotICAgICAg
ICBwcm9qZWN0aW9uTWF0cml4LnRvQ29sdW1uTWFqb3JGbG9hdEFycmF5KGdsUHJvamVjdGlvbk1h
dHJpeCk7Ci0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybU1hdHJpeDRmdihtX2NvbXBpbGVkUHJv
Z3JhbS0+cHJvamVjdGlvbk1hdHJpeExvY2F0aW9uKCksIDEsIGZhbHNlLCAmZ2xQcm9qZWN0aW9u
TWF0cml4WzBdKTsKLSAgICB9Ci0KLSAgICBBU1NFUlQobV9tZXNoQ29sdW1ucyk7Ci0gICAgQVNT
RVJUKG1fbWVzaFJvd3MpOwotCi0gICAgaWYgKG1fY29tcGlsZWRQcm9ncmFtLT5tZXNoU2l6ZUxv
Y2F0aW9uKCkgIT0gLTEpCi0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybTJmKG1fY29tcGlsZWRQ
cm9ncmFtLT5tZXNoU2l6ZUxvY2F0aW9uKCksIG1fbWVzaENvbHVtbnMsIG1fbWVzaFJvd3MpOwot
Ci0gICAgaWYgKG1fY29tcGlsZWRQcm9ncmFtLT50aWxlU2l6ZUxvY2F0aW9uKCkgIT0gLTEpCi0g
ICAgICAgIG1fY29udGV4dC0+dW5pZm9ybTJmKG1fY29tcGlsZWRQcm9ncmFtLT50aWxlU2l6ZUxv
Y2F0aW9uKCksIDEuMCAvIG1fbWVzaENvbHVtbnMsIDEuMCAvIG1fbWVzaFJvd3MpOwotCi0gICAg
aWYgKG1fY29tcGlsZWRQcm9ncmFtLT5tZXNoQm94TG9jYXRpb24oKSAhPSAtMSkgewotICAgICAg
ICAvLyBGSVhNRTogVGhpcyB3aWxsIGNoYW5nZSB3aGVuIGZpbHRlciBtYXJnaW5zIHdpbGwgYmUg
aW1wbGVtZW50ZWQsCi0gICAgICAgIC8vIHNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzE0MDAKLSAgICAgICAgbV9jb250ZXh0LT51bmlmb3JtNGYobV9jb21waWxl
ZFByb2dyYW0tPm1lc2hCb3hMb2NhdGlvbigpLCAtMC41LCAtMC41LCAxLjAsIDEuMCk7Ci0gICAg
fQotCi0gICAgaWYgKG1fY29tcGlsZWRQcm9ncmFtLT5zYW1wbGVyU2l6ZUxvY2F0aW9uKCkgIT0g
LTEpCi0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybTJmKG1fY29tcGlsZWRQcm9ncmFtLT5zYW1w
bGVyU2l6ZUxvY2F0aW9uKCksIG1fY29udGV4dFNpemUud2lkdGgoKSwgbV9jb250ZXh0U2l6ZS5o
ZWlnaHQoKSk7Ci0KLSAgICBtX2NvbnRleHQtPmJpbmRCdWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6
OkFSUkFZX0JVRkZFUiwgbV9tZXNoLT52ZXJ0aWNlc0J1ZmZlck9iamVjdCgpKTsKLSAgICBtX2Nv
bnRleHQtPmJpbmRCdWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkVMRU1FTlRfQVJSQVlfQlVGRkVS
LCBtX21lc2gtPmVsZW1lbnRzQnVmZmVyT2JqZWN0KCkpOwotCi0gICAgYmluZFZlcnRleEF0dHJp
YnV0ZShtX2NvbXBpbGVkUHJvZ3JhbS0+cG9zaXRpb25BdHRyaWJMb2NhdGlvbigpLCBQb3NpdGlv
bkF0dHJpYlNpemUsIFBvc2l0aW9uQXR0cmliT2Zmc2V0KTsKLSAgICBiaW5kVmVydGV4QXR0cmli
dXRlKG1fY29tcGlsZWRQcm9ncmFtLT50ZXhBdHRyaWJMb2NhdGlvbigpLCBUZXhBdHRyaWJTaXpl
LCBUZXhBdHRyaWJPZmZzZXQpOwotICAgIGJpbmRWZXJ0ZXhBdHRyaWJ1dGUobV9jb21waWxlZFBy
b2dyYW0tPm1lc2hBdHRyaWJMb2NhdGlvbigpLCBNZXNoQXR0cmliU2l6ZSwgTWVzaEF0dHJpYk9m
ZnNldCk7Ci0gICAgaWYgKG1fbWVzaFR5cGUgPT0gTWVzaFR5cGVEZXRhY2hlZCkKLSAgICAgICAg
YmluZFZlcnRleEF0dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3JhbS0+dHJpYW5nbGVBdHRyaWJMb2Nh
dGlvbigpLCBUcmlhbmdsZUF0dHJpYlNpemUsIFRyaWFuZ2xlQXR0cmliT2Zmc2V0KTsKLQotICAg
IGJpbmRQcm9ncmFtUGFyYW1ldGVycygpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVy
Ojp1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGVzKCkKLXsKLSAgICB1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGUo
bV9jb21waWxlZFByb2dyYW0tPnBvc2l0aW9uQXR0cmliTG9jYXRpb24oKSk7Ci0gICAgdW5iaW5k
VmVydGV4QXR0cmlidXRlKG1fY29tcGlsZWRQcm9ncmFtLT50ZXhBdHRyaWJMb2NhdGlvbigpKTsK
LSAgICB1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGUobV9jb21waWxlZFByb2dyYW0tPm1lc2hBdHRyaWJM
b2NhdGlvbigpKTsKLSAgICBpZiAobV9tZXNoVHlwZSA9PSBNZXNoVHlwZURldGFjaGVkKQotICAg
ICAgICB1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGUobV9jb21waWxlZFByb2dyYW0tPnRyaWFuZ2xlQXR0
cmliTG9jYXRpb24oKSk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJl
ci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0
ZXJSZW5kZXJlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjY2RjMjlmLi4wMDAw
MDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyUmVuZGVyZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDEwNSArMCwwIEBACi0vKgotICog
Q29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3Jh
dGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEyIENvbXBhbnkg
MTAwLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERF
UiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICog
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3Vz
dG9tRmlsdGVyUmVuZGVyZXJfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJSZW5kZXJlcl9oCi0KLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2luY2x1ZGUgIkN1
c3RvbUZpbHRlckNvbnN0YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3QuaCIKLSNpbmNsdWRlICJHcmFwaGljc1R5cGVzM0QuaCIKLSNpbmNsdWRlICJJbnRTaXplLmgi
Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0K
LW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI7
Ci1jbGFzcyBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcjsKLWNsYXNzIEN1c3RvbUZpbHRlckNv
bXBpbGVkUHJvZ3JhbTsKLWNsYXNzIEN1c3RvbUZpbHRlck1lc2g7Ci1jbGFzcyBDdXN0b21GaWx0
ZXJOdW1iZXJQYXJhbWV0ZXI7Ci1jbGFzcyBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXI7
Ci1jbGFzcyBHcmFwaGljc0NvbnRleHQzRDsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyUmVuZGVyZXIg
OiBwdWJsaWMgUmVmQ291bnRlZDxDdXN0b21GaWx0ZXJSZW5kZXJlcj4gewotcHVibGljOgotICAg
IHN0YXRpYyBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclJlbmRlcmVyPiBjcmVhdGUoUGFzc1JlZlB0
cjxHcmFwaGljc0NvbnRleHQzRD4sIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlLCBjb25zdCBDdXN0
b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiwKLSAgICAgICAgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2ln
bmVkIG1lc2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSk7Ci0gICAgfkN1c3RvbUZpbHRl
clJlbmRlcmVyKCk7Ci0KLSAgICBib29sIHByZW11bHRpcGxpZWRBbHBoYSgpIGNvbnN0OwotICAg
IGJvb2wgcHJvZ3JhbU5lZWRzSW5wdXRUZXh0dXJlKCkgY29uc3Q7Ci0KLSAgICBib29sIHByZXBh
cmVGb3JEcmF3aW5nKCk7Ci0KLSAgICB2b2lkIGRyYXcoUGxhdGZvcm0zRE9iamVjdCwgY29uc3Qg
SW50U2l6ZSYpOwotCi0gICAgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtKiBjb21waWxlZFBy
b2dyYW0oKSBjb25zdCB7IHJldHVybiBtX2NvbXBpbGVkUHJvZ3JhbS5nZXQoKTsgfQotICAgIHZv
aWQgc2V0Q29tcGlsZWRQcm9ncmFtKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9n
cmFtPik7Ci0KLXByaXZhdGU6Ci0gICAgQ3VzdG9tRmlsdGVyUmVuZGVyZXIoUGFzc1JlZlB0cjxH
cmFwaGljc0NvbnRleHQzRD4sIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJMaXN0JiwKLSAgICAgICAgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVk
IG1lc2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSk7Ci0KLSAgICB2b2lkIGluaXRpYWxp
emVDb21waWxlZFByb2dyYW1JZk5lZWRlZCgpOwotICAgIHZvaWQgaW5pdGlhbGl6ZU1lc2hJZk5l
ZWRlZCgpOwotCi0gICAgdm9pZCBiaW5kVmVydGV4QXR0cmlidXRlKGludCBhdHRyaWJ1dGVMb2Nh
dGlvbiwgdW5zaWduZWQgc2l6ZSwgdW5zaWduZWQgb2Zmc2V0KTsKLSAgICB2b2lkIHVuYmluZFZl
cnRleEF0dHJpYnV0ZShpbnQgYXR0cmlidXRlTG9jYXRpb24pOwotICAgIHZvaWQgYmluZFByb2dy
YW1BcnJheVBhcmFtZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXIqKTsKLSAgICB2b2lkIGJpbmRQcm9ncmFtQ29sb3JQYXJhbWV0ZXJzKGludCB1bmlm
b3JtTG9jYXRpb24sIEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKik7Ci0gICAgdm9pZCBiaW5k
UHJvZ3JhbU1hdHJpeFBhcmFtZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3VzdG9tRmlsdGVy
QXJyYXlQYXJhbWV0ZXIqKTsKLSAgICB2b2lkIGJpbmRQcm9ncmFtTnVtYmVyUGFyYW1ldGVycyhp
bnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIqKTsKLSAgICB2
b2lkIGJpbmRQcm9ncmFtVHJhbnNmb3JtUGFyYW1ldGVyKGludCB1bmlmb3JtTG9jYXRpb24sIEN1
c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlciopOwotICAgIHZvaWQgYmluZFByb2dyYW1QYXJh
bWV0ZXJzKCk7Ci0gICAgdm9pZCBiaW5kUHJvZ3JhbUFuZEJ1ZmZlcnMoUGxhdGZvcm0zRE9iamVj
dCBpbnB1dFRleHR1cmUpOwotICAgIHZvaWQgdW5iaW5kVmVydGV4QXR0cmlidXRlcygpOwotCi0g
ICAgUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBtX2NvbnRleHQ7Ci0gICAgUmVmUHRyPEN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbT4gbV9jb21waWxlZFByb2dyYW07Ci0gICAgQ3VzdG9tRmls
dGVyUHJvZ3JhbVR5cGUgbV9wcm9ncmFtVHlwZTsKLSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyTWVz
aD4gbV9tZXNoOwotICAgIEludFNpemUgbV9jb250ZXh0U2l6ZTsKLQotICAgIEN1c3RvbUZpbHRl
clBhcmFtZXRlckxpc3QgbV9wYXJhbWV0ZXJzOwotCi0gICAgdW5zaWduZWQgbV9tZXNoUm93czsK
LSAgICB1bnNpZ25lZCBtX21lc2hDb2x1bW5zOwotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1f
bWVzaFR5cGU7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2VuZGlmIC8vIEN1c3RvbUZp
bHRlclJlbmRlcmVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFt
ZXRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1YmQ2NjExLi4wMDAwMDAwCi0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVy
VHJhbnNmb3JtUGFyYW1ldGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMDIgKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
Ci0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJUcmFuc2Zv
cm1QYXJhbWV0ZXJfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXJfaAot
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRl
ci5oIgotI2luY2x1ZGUgIkZsb2F0U2l6ZS5oIgotI2luY2x1ZGUgIlRyYW5zZm9ybU9wZXJhdGlv
bnMuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBGbG9hdFJlY3Q7Ci1jbGFzcyBU
cmFuc2Zvcm1hdGlvbk1hdHJpeDsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1l
dGVyIDogcHVibGljIEN1c3RvbUZpbHRlclBhcmFtZXRlciB7Ci1wdWJsaWM6Ci0gICAgc3RhdGlj
IFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyPiBjcmVhdGUoY29uc3Qg
U3RyaW5nJiBuYW1lKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0b21G
aWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIobmFtZSkpOwotICAgIH0KLQotICAgIHZpcnR1YWwgUGFz
c1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IGJsZW5kKGNvbnN0IEN1c3RvbUZpbHRlclBh
cmFtZXRlciogZnJvbVBhcmFtZXRlciwgZG91YmxlIHByb2dyZXNzLCBjb25zdCBMYXlvdXRTaXpl
JiBzaXplKQotICAgIHsKLSAgICAgICAgaWYgKCFmcm9tUGFyYW1ldGVyIHx8ICFpc1NhbWVUeXBl
KCpmcm9tUGFyYW1ldGVyKSkKLSAgICAgICAgICAgIHJldHVybiB0aGlzOwotCi0gICAgICAgIGNv
bnN0IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlciogZnJvbVRyYW5zZm9ybVBhcmFtZXRl
ciA9IHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcio+KGZy
b21QYXJhbWV0ZXIpOwotICAgICAgICBjb25zdCBUcmFuc2Zvcm1PcGVyYXRpb25zJiBmcm9tID0g
ZnJvbVRyYW5zZm9ybVBhcmFtZXRlci0+b3BlcmF0aW9ucygpOwotICAgICAgICBjb25zdCBUcmFu
c2Zvcm1PcGVyYXRpb25zJiB0byA9IG9wZXJhdGlvbnMoKTsKLSAgICAgICAgaWYgKGZyb20gPT0g
dG8pCi0gICAgICAgICAgICByZXR1cm4gdGhpczsKLSAgICAgICAKLSAgICAgICAgUmVmUHRyPEN1
c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcj4gcmVzdWx0ID0gQ3VzdG9tRmlsdGVyVHJhbnNm
b3JtUGFyYW1ldGVyOjpjcmVhdGUobmFtZSgpKTsKLSAgICAgICAgaWYgKGZyb20uc2l6ZSgpICYm
IHRvLnNpemUoKSkKLSAgICAgICAgICAgIHJlc3VsdC0+c2V0T3BlcmF0aW9ucyh0by5ibGVuZChm
cm9tLCBwcm9ncmVzcywgc2l6ZSkpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXN1bHQt
PnNldE9wZXJhdGlvbnMocHJvZ3Jlc3MgPiAwLjUgPyB0byA6IGZyb20pOwotICAgICAgICByZXR1
cm4gcmVzdWx0OwotICAgIH0KLQotICAgIHZpcnR1YWwgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEN1
c3RvbUZpbHRlclBhcmFtZXRlciYgbykgY29uc3QKLSAgICB7Ci0gICAgICAgIGlmICghaXNTYW1l
VHlwZShvKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgY29uc3QgQ3VzdG9t
RmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKiBvdGhlciA9IHN0YXRpY19jYXN0PGNvbnN0IEN1c3Rv
bUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcio+KCZvKTsKLSAgICAgICAgcmV0dXJuIG1fb3BlcmF0
aW9ucyA9PSBvdGhlci0+bV9vcGVyYXRpb25zOwotICAgIH0KLQotICAgIHZvaWQgYXBwbHlUcmFu
c2Zvcm0oVHJhbnNmb3JtYXRpb25NYXRyaXgmIHRyYW5zZm9ybSwgY29uc3QgRmxvYXRTaXplJiBi
b3hTaXplKSBjb25zdAotICAgIHsKLSAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMCwgc2l6ZSA9
IG1fb3BlcmF0aW9ucy5zaXplKCk7IGkgPCBzaXplOyArK2kpCi0gICAgICAgICAgICBtX29wZXJh
dGlvbnMuYXQoaSktPmFwcGx5KHRyYW5zZm9ybSwgYm94U2l6ZSk7Ci0gICAgfQotCi0gICAgY29u
c3QgVHJhbnNmb3JtT3BlcmF0aW9ucyYgb3BlcmF0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1fb3Bl
cmF0aW9uczsgfQotICAgIHZvaWQgc2V0T3BlcmF0aW9ucyhjb25zdCBUcmFuc2Zvcm1PcGVyYXRp
b25zJiB2YWx1ZSkgeyBtX29wZXJhdGlvbnMgPSB2YWx1ZTsgfQotICAgIAotcHJpdmF0ZToKLSAg
ICBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lKQotICAg
ICAgICA6IEN1c3RvbUZpbHRlclBhcmFtZXRlcihUUkFOU0ZPUk0sIG5hbWUpCi0gICAgewotICAg
IH0KLSAgICB2aXJ0dWFsIH5DdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIoKQotICAgIHsK
LSAgICB9Ci0gICAgCi0gICAgVHJhbnNmb3JtT3BlcmF0aW9ucyBtX29wZXJhdGlvbnM7Ci19Owot
Ci19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXJfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJW
YWxpZGF0ZWRQcm9ncmFtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IGFkY2UxYTguLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcAorKysg
L2Rldi9udWxsCkBAIC0xLDYyMiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFk
b2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAg
ICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAq
LwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNp
bmNsdWRlICJDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiCi0KLSNpbmNsdWRlICJBTkdM
RVdlYktpdEJyaWRnZS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5o
IgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZp
bHRlckdsb2JhbENvbnRleHQuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5o
IgotI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCi0jaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4K
LSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRl
ci5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KLQotbmFtZXNwYWNlIFdlYkNv
cmUgewotCi0jZGVmaW5lIFNIQURFUihTcmMpICgjU3JjKSAKLQotdHlwZWRlZiBIYXNoTWFwPFN0
cmluZywgU2hEYXRhVHlwZT4gU3ltYm9sTmFtZVRvVHlwZU1hcDsKLQotc3RhdGljIFN5bWJvbE5h
bWVUb1R5cGVNYXAqIGJ1aWx0SW5BdHRyaWJ1dGVOYW1lVG9UeXBlTWFwKCkKLXsKLSAgICBzdGF0
aWMgU3ltYm9sTmFtZVRvVHlwZU1hcCogbmFtZVRvVHlwZU1hcCA9IDA7Ci0gICAgaWYgKCFuYW1l
VG9UeXBlTWFwKSB7Ci0gICAgICAgIG5hbWVUb1R5cGVNYXAgPSBuZXcgU3ltYm9sTmFtZVRvVHlw
ZU1hcDsgICAgICAgIAotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoImFfbWVzaENvb3JkIiwg
U0hfRkxPQVRfVkVDMik7Ci0gICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgiYV9wb3NpdGlvbiIs
IFNIX0ZMT0FUX1ZFQzQpOwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoImFfdGV4Q29vcmQi
LCBTSF9GTE9BVF9WRUMyKTsKLSAgICAgICAgbmFtZVRvVHlwZU1hcC0+c2V0KCJhX3RyaWFuZ2xl
Q29vcmQiLCBTSF9GTE9BVF9WRUMzKTsKLSAgICB9Ci0gICAgcmV0dXJuIG5hbWVUb1R5cGVNYXA7
Ci19Ci0KLXN0YXRpYyBTeW1ib2xOYW1lVG9UeXBlTWFwKiBidWlsdEluVW5pZm9ybU5hbWVUb1R5
cGVNYXAoKQotewotICAgIHN0YXRpYyBTeW1ib2xOYW1lVG9UeXBlTWFwKiBuYW1lVG9UeXBlTWFw
ID0gMDsKLSAgICBpZiAoIW5hbWVUb1R5cGVNYXApIHsKLSAgICAgICAgbmFtZVRvVHlwZU1hcCA9
IG5ldyBTeW1ib2xOYW1lVG9UeXBlTWFwOwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoInVf
bWVzaEJveCIsIFNIX0ZMT0FUX1ZFQzQpOwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoInVf
bWVzaFNpemUiLCBTSF9GTE9BVF9WRUMyKTsKLSAgICAgICAgbmFtZVRvVHlwZU1hcC0+c2V0KCJ1
X3Byb2plY3Rpb25NYXRyaXgiLCBTSF9GTE9BVF9NQVQ0KTsKLSAgICAgICAgbmFtZVRvVHlwZU1h
cC0+c2V0KCJ1X3RleHR1cmVTaXplIiwgU0hfRkxPQVRfVkVDMik7Ci0gICAgICAgIG5hbWVUb1R5
cGVNYXAtPnNldCgidV90aWxlU2l6ZSIsIFNIX0ZMT0FUX1ZFQzIpOwotICAgIH0KLSAgICByZXR1
cm4gbmFtZVRvVHlwZU1hcDsKLX0KLQotc3RhdGljIGJvb2wgdmFsaWRhdGVTeW1ib2xzKGNvbnN0
IFZlY3RvcjxBTkdMRVNoYWRlclN5bWJvbD4mIHN5bWJvbHMsIEN1c3RvbUZpbHRlck1lc2hUeXBl
IG1lc2hUeXBlKQotewotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3ltYm9scy5zaXplKCk7
ICsraSkgewotICAgICAgICBjb25zdCBBTkdMRVNoYWRlclN5bWJvbCYgc3ltYm9sID0gc3ltYm9s
c1tpXTsKLSAgICAgICAgc3dpdGNoIChzeW1ib2wuc3ltYm9sVHlwZSkgewotICAgICAgICBjYXNl
IFNIQURFUl9TWU1CT0xfVFlQRV9BVFRSSUJVVEU6IHsKLSAgICAgICAgICAgIFN5bWJvbE5hbWVU
b1R5cGVNYXAqIGF0dHJpYnV0ZU5hbWVUb1R5cGVNYXAgPSBidWlsdEluQXR0cmlidXRlTmFtZVRv
VHlwZU1hcCgpOwotICAgICAgICAgICAgU3ltYm9sTmFtZVRvVHlwZU1hcDo6aXRlcmF0b3IgYnVp
bHRJbkF0dHJpYnV0ZSA9IGF0dHJpYnV0ZU5hbWVUb1R5cGVNYXAtPmZpbmQoc3ltYm9sLm5hbWUp
OwotICAgICAgICAgICAgaWYgKGJ1aWx0SW5BdHRyaWJ1dGUgPT0gYXR0cmlidXRlTmFtZVRvVHlw
ZU1hcC0+ZW5kKCkpIHsKLSAgICAgICAgICAgICAgICAvLyBUaGUgYXV0aG9yIGRlZmluZWQgYSBj
dXN0b20gYXR0cmlidXRlLgotICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBSZXBvcnQgdGhlIHZh
bGlkYXRpb24gZXJyb3IuCi0gICAgICAgICAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTc0NDE2Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwot
ICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKG1lc2hUeXBlID09IE1lc2hUeXBlQXR0YWNo
ZWQgJiYgc3ltYm9sLm5hbWUgPT0gImFfdHJpYW5nbGVDb29yZCIpIHsKLSAgICAgICAgICAgICAg
ICAvLyBhX3RyaWFuZ2xlQ29vcmQgaXMgb25seSBhdmFpbGFibGUgZm9yIGRldGFjaGVkIG1lc2hl
cy4KLSAgICAgICAgICAgICAgICAvLyBGSVhNRTogUmVwb3J0IHRoZSB2YWxpZGF0aW9uIGVycm9y
LgotICAgICAgICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD03NDQxNgotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIH0K
LSAgICAgICAgICAgIGlmIChzeW1ib2wuZGF0YVR5cGUgIT0gYnVpbHRJbkF0dHJpYnV0ZS0+dmFs
dWUpIHsKLSAgICAgICAgICAgICAgICAvLyBUaGUgYXV0aG9yIGRlZmluZWQgb25lIG9mIHRoZSBi
dWlsdC1pbiBhdHRyaWJ1dGVzIHdpdGggdGhlIHdyb25nIHR5cGUuCi0gICAgICAgICAgICAgICAg
Ly8gRklYTUU6IFJlcG9ydCB0aGUgdmFsaWRhdGlvbiBlcnJvci4KLSAgICAgICAgICAgICAgICAv
LyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQ0MTYKLSAgICAgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBicmVhazsK
LSAgICAgICAgfQotICAgICAgICBjYXNlIFNIQURFUl9TWU1CT0xfVFlQRV9VTklGT1JNOiB7Ci0g
ICAgICAgICAgICBpZiAoc3ltYm9sLmlzU2FtcGxlcigpKSB7Ci0gICAgICAgICAgICAgICAgLy8g
RklYTUU6IEZvciBub3csIHdlIHJlc3RyaWN0IHNoYWRlcnMgd2l0aCBhbnkgc2FtcGxlciBkZWZp
bmVkLgotICAgICAgICAgICAgICAgIC8vIFdoZW4gd2UgaW1wbGVtZW50IHRleHR1cmUgcGFyYW1l
dGVycywgd2Ugd2lsbCBhbGxvdyBzaGFkZXJzIHdob3NlIHNhbXBsZXJzIGFyZSBib3VuZCB0byB2
YWxpZCB0ZXh0dXJlcy4KLSAgICAgICAgICAgICAgICAvLyBXZSBtdXN0IG5vdCBhbGxvdyBPcGVu
R0wgdG8gZ2l2ZSB1bmJvdW5kIHNhbXBsZXJzIGEgZGVmYXVsdCB2YWx1ZSBvZiAwIGJlY2F1c2Ug
dGhhdCByZWZlcmVuY2VzIHRoZSBlbGVtZW50IHRleHR1cmUsCi0gICAgICAgICAgICAgICAgLy8g
d2hpY2ggc2hvdWxkIGJlIGluYWNjZXNzaWJsZSB0byB0aGUgYXV0aG9yJ3Mgc2hhZGVyIGNvZGUu
Ci0gICAgICAgICAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTk2MjMwCi0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgfQot
Ci0gICAgICAgICAgICBTeW1ib2xOYW1lVG9UeXBlTWFwKiB1bmlmb3JtTmFtZVRvVHlwZU1hcCA9
IGJ1aWx0SW5Vbmlmb3JtTmFtZVRvVHlwZU1hcCgpOwotICAgICAgICAgICAgU3ltYm9sTmFtZVRv
VHlwZU1hcDo6aXRlcmF0b3IgYnVpbHRJblVuaWZvcm0gPSB1bmlmb3JtTmFtZVRvVHlwZU1hcC0+
ZmluZChzeW1ib2wubmFtZSk7Ci0gICAgICAgICAgICBpZiAoYnVpbHRJblVuaWZvcm0gIT0gdW5p
Zm9ybU5hbWVUb1R5cGVNYXAtPmVuZCgpICYmIChzeW1ib2wuaXNBcnJheSB8fCBzeW1ib2wuZGF0
YVR5cGUgIT0gYnVpbHRJblVuaWZvcm0tPnZhbHVlKSkgewotICAgICAgICAgICAgICAgIC8vIFRo
ZSBhdXRob3IgZGVmaW5lZCBvbmUgb2YgdGhlIGJ1aWx0LWluIHVuaWZvcm1zIHdpdGggdGhlIHdy
b25nIHR5cGUuCi0gICAgICAgICAgICAgICAgLy8gRklYTUU6IFJlcG9ydCB0aGUgdmFsaWRhdGlv
biBlcnJvci4KLSAgICAgICAgICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzQ0MTYKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgICAgICBjYXNlIFNIQURF
Ul9TWU1CT0xfVFlQRV9WQVJZSU5HOgotICAgICAgICAgICAgLy8gTm8gc3BlY2lhbCB2YWxpZGF0
aW9uIGZvciB2YXJ5aW5nIHR5cGVzLgotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGRlZmF1
bHQ6Ci0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgIGJyZWFr
OwotICAgICAgICB9Ci0gICAgfQotCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLVN0cmluZyBDdXN0
b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpkZWZhdWx0VmVydGV4U2hhZGVyU3RyaW5nKCkKLXsK
LSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgdmVydGV4U2hhZGVyU3RyaW5nLCAoQVND
SUlMaXRlcmFsKFNIQURFUigKLSAgICAgICAgYXR0cmlidXRlIG1lZGl1bXAgdmVjNCBhX3Bvc2l0
aW9uOwotICAgICAgICB1bmlmb3JtIG1lZGl1bXAgbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci0K
LSAgICAgICAgdm9pZCBtYWluKCkKLSAgICAgICAgewotICAgICAgICAgICAgZ2xfUG9zaXRpb24g
PSB1X3Byb2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0aW9uOwotICAgICAgICB9Ci0gICAgKSkpKTsK
LSAgICByZXR1cm4gdmVydGV4U2hhZGVyU3RyaW5nOwotfQotCi1TdHJpbmcgQ3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbTo6ZGVmYXVsdEZyYWdtZW50U2hhZGVyU3RyaW5nKCkKLXsKLSAgICBE
RUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgZnJhZ21lbnRTaGFkZXJTdHJpbmcsIChBU0NJSUxp
dGVyYWwoU0hBREVSKAotICAgICAgICB2b2lkIG1haW4oKQotICAgICAgICB7Ci0gICAgICAgIH0K
LSAgICApKSkpOwotICAgIHJldHVybiBmcmFnbWVudFNoYWRlclN0cmluZzsKLX0KLQotQ3VzdG9t
RmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbShDdXN0
b21GaWx0ZXJHbG9iYWxDb250ZXh0KiBnbG9iYWxDb250ZXh0LCBjb25zdCBDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8pCi0gICAgOiBtX3Byb2dyYW1JbmZvKHByb2dyYW1JbmZv
KQotICAgICwgbV9pc0luaXRpYWxpemVkKGZhbHNlKQotewotICAgIHBsYXRmb3JtSW5pdCgpOwot
Ci0gICAgU3RyaW5nIG9yaWdpbmFsVmVydGV4U2hhZGVyID0gcHJvZ3JhbUluZm8udmVydGV4U2hh
ZGVyU3RyaW5nKCk7Ci0gICAgaWYgKG9yaWdpbmFsVmVydGV4U2hhZGVyLmlzTnVsbCgpKQotICAg
ICAgICBvcmlnaW5hbFZlcnRleFNoYWRlciA9IGRlZmF1bHRWZXJ0ZXhTaGFkZXJTdHJpbmcoKTsK
LQotICAgIFN0cmluZyBvcmlnaW5hbEZyYWdtZW50U2hhZGVyID0gcHJvZ3JhbUluZm8uZnJhZ21l
bnRTaGFkZXJTdHJpbmcoKTsKLSAgICBpZiAob3JpZ2luYWxGcmFnbWVudFNoYWRlci5pc051bGwo
KSkKLSAgICAgICAgb3JpZ2luYWxGcmFnbWVudFNoYWRlciA9IGRlZmF1bHRGcmFnbWVudFNoYWRl
clN0cmluZygpOwotCi0gICAgLy8gU2hhZGVycyByZWZlcmVuY2VkIGZyb20gdGhlIENTUyBtaXgg
ZnVuY3Rpb24gdXNlIGEgZGlmZmVyZW50IHZhbGlkYXRvciB0aGFuIHJlZ3VsYXIgV2ViR0wgc2hh
ZGVycy4gU2VlIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaCBmb3IgbW9yZSBkZXRhaWxzLgot
ICAgIGJvb2wgYmxlbmRzRWxlbWVudFRleHR1cmUgPSAocHJvZ3JhbUluZm8ucHJvZ3JhbVR5cGUo
KSA9PSBQUk9HUkFNX1RZUEVfQkxFTkRTX0VMRU1FTlRfVEVYVFVSRSk7Ci0gICAgQU5HTEVXZWJL
aXRCcmlkZ2UqIHZhbGlkYXRvciA9IGJsZW5kc0VsZW1lbnRUZXh0dXJlID8gZ2xvYmFsQ29udGV4
dC0+bWl4U2hhZGVyVmFsaWRhdG9yKCkgOiBnbG9iYWxDb250ZXh0LT53ZWJnbFNoYWRlclZhbGlk
YXRvcigpOwotICAgIFN0cmluZyB2ZXJ0ZXhTaGFkZXJMb2csIGZyYWdtZW50U2hhZGVyTG9nOwot
ICAgIFZlY3RvcjxBTkdMRVNoYWRlclN5bWJvbD4gc3ltYm9sczsKLSAgICBib29sIHZlcnRleFNo
YWRlclZhbGlkID0gdmFsaWRhdG9yLT5jb21waWxlU2hhZGVyU291cmNlKG9yaWdpbmFsVmVydGV4
U2hhZGVyLnV0ZjgoKS5kYXRhKCksIFNIQURFUl9UWVBFX1ZFUlRFWCwgbV92YWxpZGF0ZWRWZXJ0
ZXhTaGFkZXIsIHZlcnRleFNoYWRlckxvZywgc3ltYm9scyk7Ci0gICAgYm9vbCBmcmFnbWVudFNo
YWRlclZhbGlkID0gdmFsaWRhdG9yLT5jb21waWxlU2hhZGVyU291cmNlKG9yaWdpbmFsRnJhZ21l
bnRTaGFkZXIudXRmOCgpLmRhdGEoKSwgU0hBREVSX1RZUEVfRlJBR01FTlQsIG1fdmFsaWRhdGVk
RnJhZ21lbnRTaGFkZXIsIGZyYWdtZW50U2hhZGVyTG9nLCBzeW1ib2xzKTsKLSAgICBpZiAoIXZl
cnRleFNoYWRlclZhbGlkIHx8ICFmcmFnbWVudFNoYWRlclZhbGlkKSB7Ci0gICAgICAgIC8vIEZJ
WE1FOiBSZXBvcnQgdGhlIHZhbGlkYXRpb24gZXJyb3JzLgotICAgICAgICAvLyBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQ0MTYKLSAgICAgICAgcmV0dXJuOwotICAg
IH0KLQotICAgIGlmICghdmFsaWRhdGVTeW1ib2xzKHN5bWJvbHMsIG1fcHJvZ3JhbUluZm8ubWVz
aFR5cGUoKSkpIHsKLSAgICAgICAgLy8gRklYTUU6IFJlcG9ydCB2YWxpZGF0aW9uIGVycm9ycy4K
LSAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NDE2
Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICAvLyBXZSBuZWVkIHRvIGFkZCB0ZXh0dXJl
IGFjY2VzcywgYmxlbmRpbmcsIGFuZCBjb21wb3NpdGluZyBjb2RlIHRvIHNoYWRlcnMgdGhhdCBh
cmUgcmVmZXJlbmNlZCBmcm9tIHRoZSBDU1MgbWl4IGZ1bmN0aW9uLgotICAgIGlmIChibGVuZHNF
bGVtZW50VGV4dHVyZSkgewotICAgICAgICByZXdyaXRlTWl4VmVydGV4U2hhZGVyKHN5bWJvbHMp
OwotICAgICAgICByZXdyaXRlTWl4RnJhZ21lbnRTaGFkZXIoKTsKLSAgICB9Ci0KLSAgICBtX2lz
SW5pdGlhbGl6ZWQgPSB0cnVlOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlckNvbXBpbGVk
UHJvZ3JhbT4gQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6Y29tcGlsZWRQcm9ncmFtKCkK
LXsKLSAgICByZXR1cm4gbV9jb21waWxlZFByb2dyYW07Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbTo6c2V0Q29tcGlsZWRQcm9ncmFtKFBhc3NSZWZQdHI8Q3VzdG9tRmls
dGVyQ29tcGlsZWRQcm9ncmFtPiBjb21waWxlZFByb2dyYW0pCi17Ci0gICAgbV9jb21waWxlZFBy
b2dyYW0gPSBjb21waWxlZFByb2dyYW07Ci19Ci0KLWJvb2wgQ3VzdG9tRmlsdGVyVmFsaWRhdGVk
UHJvZ3JhbTo6bmVlZHNJbnB1dFRleHR1cmUoKSBjb25zdAotewotICAgIHJldHVybiBtX3Byb2dy
YW1JbmZvLnByb2dyYW1UeXBlKCkgPT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRV
UkUKLSAgICAgICAgJiYgbV9wcm9ncmFtSW5mby5taXhTZXR0aW5ncygpLmNvbXBvc2l0ZU9wZXJh
dG9yICE9IENvbXBvc2l0ZUNsZWFyCi0gICAgICAgICYmIG1fcHJvZ3JhbUluZm8ubWl4U2V0dGlu
Z3MoKS5jb21wb3NpdGVPcGVyYXRvciAhPSBDb21wb3NpdGVDb3B5OwotfQotCi12b2lkIEN1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW06OnJld3JpdGVNaXhWZXJ0ZXhTaGFkZXIoY29uc3QgVmVj
dG9yPEFOR0xFU2hhZGVyU3ltYm9sPiYgc3ltYm9scykKLXsKLSAgICBBU1NFUlQobV9wcm9ncmFt
SW5mby5wcm9ncmFtVHlwZSgpID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJF
KTsKLQotICAgIC8vIElmIHRoZSBhdXRob3IgZGVmaW5lZCBhX3RleENvb3JkLCB3ZSBjYW4gdXNl
IGl0IHRvIHNodXR0bGUgdGhlIHRleHR1cmUgY29vcmRpbmF0ZSB0byB0aGUgZnJhZ21lbnQgc2hh
ZGVyLgotICAgIC8vIE5vdGUgdGhhdCB2ZXJ0ZXggYXR0cmlidXRlcyBhcmUgcmVhZC1vbmx5IGlu
IEdMU0wsIHNvIHRoZSBhdXRob3IgY291bGQgbm90IGhhdmUgY2hhbmdlZCBhX3RleENvb3JkJ3Mg
dmFsdWUuCi0gICAgLy8gQWxzbywgbm90ZSB0aGF0IHdlIHdvdWxkIGhhdmUgYWxyZWFkeSByZWpl
Y3RlZCB0aGUgc2hhZGVyIGlmIHRoZSBhdXRob3IgZGVmaW5lZCBhX3RleENvb3JkIHdpdGggdGhl
IHdyb25nIHR5cGUuCi0gICAgYm9vbCB0ZXhDb29yZEF0dHJpYnV0ZURlZmluZWQgPSBmYWxzZTsK
LSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN5bWJvbHMuc2l6ZSgpOyArK2kpIHsKLSAgICAg
ICAgaWYgKHN5bWJvbHNbaV0ubmFtZSA9PSAiYV90ZXhDb29yZCIpCi0gICAgICAgICAgICB0ZXhD
b29yZEF0dHJpYnV0ZURlZmluZWQgPSB0cnVlOwotICAgIH0KLQotICAgIGlmICghdGV4Q29vcmRB
dHRyaWJ1dGVEZWZpbmVkKQotICAgICAgICBtX3ZhbGlkYXRlZFZlcnRleFNoYWRlci5hcHBlbmQo
ImF0dHJpYnV0ZSBtZWRpdW1wIHZlYzIgYV90ZXhDb29yZDsiKTsKLQotICAgIC8vIER1cmluZyB2
YWxpZGF0aW9uLCBBTkdMRSByZW5hbWVkIHRoZSBhdXRob3IncyAibWFpbiIgZnVuY3Rpb24gdG8g
ImNzc19tYWluIi4KLSAgICAvLyBXZSB3cml0ZSBvdXIgb3duICJtYWluIiBmdW5jdGlvbiBhbmQg
Y2FsbCAiY3NzX21haW4iIGZyb20gaXQuCi0gICAgLy8gVGhpcyBtYWtlcyByZXdyaXRpbmcgZWFz
eSBhbmQgZW5zdXJlcyB0aGF0IG91ciBjb2RlIHJ1bnMgYWZ0ZXIgYWxsIGF1dGhvciBjb2RlLgot
ICAgIG1fdmFsaWRhdGVkVmVydGV4U2hhZGVyLmFwcGVuZChTSEFERVIoCi0gICAgICAgIHZhcnlp
bmcgbWVkaXVtcCB2ZWMyIGNzc192X3RleENvb3JkOwotCi0gICAgICAgIHZvaWQgbWFpbigpCi0g
ICAgICAgIHsKLSAgICAgICAgICAgIGNzc19tYWluKCk7Ci0gICAgICAgICAgICBjc3Nfdl90ZXhD
b29yZCA9IGFfdGV4Q29vcmQ7Ci0gICAgICAgIH0KLSAgICApKTsKLX0KLQotdm9pZCBDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpyZXdyaXRlTWl4RnJhZ21lbnRTaGFkZXIoKQotewotICAg
IEFTU0VSVChtX3Byb2dyYW1JbmZvLnByb2dyYW1UeXBlKCkgPT0gUFJPR1JBTV9UWVBFX0JMRU5E
U19FTEVNRU5UX1RFWFRVUkUpOwotCi0gICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOwotICAgIC8v
IEFOR0xFIGNvbnNpZGVyZWQgdGhlc2Ugc3ltYm9scyBhcyBidWlsdC1pbnMgZHVyaW5nIHZhbGlk
YXRpb24gdW5kZXIgdGhlIFNIX0NTU19TSEFERVJTX1NQRUMgZmxhZy4KLSAgICAvLyBOb3csIHdl
IGhhdmUgdG8gZGVmaW5lIHRoZXNlIHN5bWJvbHMgaW4gb3JkZXIgdG8gbWFrZSB0aGlzIHNoYWRl
ciB2YWxpZCBHTFNMLgotICAgIC8vIFdlIGRlZmluZSB0aGVzZSBzeW1ib2xzIGJlZm9yZSB0aGUg
YXV0aG9yJ3Mgc2hhZGVyIGNvZGUsIHdoaWNoIG1ha2VzIHRoZW0gYWNjZXNzaWJsZSB0byBhdXRo
b3IgY29kZS4KLSAgICBidWlsZGVyLmFwcGVuZChTSEFERVIoCi0gICAgICAgIG1lZGl1bXAgdmVj
NCBjc3NfTWl4Q29sb3IgPSB2ZWM0KDAuMCk7Ci0gICAgICAgIG1lZGl1bXAgbWF0NCBjc3NfQ29s
b3JNYXRyaXggPSBtYXQ0KDEuMCk7Ci0gICAgKSk7Ci0gICAgYnVpbGRlci5hcHBlbmQobV92YWxp
ZGF0ZWRGcmFnbWVudFNoYWRlcik7Ci0gICAgYnVpbGRlci5hcHBlbmQoYmxlbmRGdW5jdGlvblN0
cmluZyhtX3Byb2dyYW1JbmZvLm1peFNldHRpbmdzKCkuYmxlbmRNb2RlKSk7Ci0gICAgYnVpbGRl
ci5hcHBlbmQoY29tcG9zaXRlRnVuY3Rpb25TdHJpbmcobV9wcm9ncmFtSW5mby5taXhTZXR0aW5n
cygpLmNvbXBvc2l0ZU9wZXJhdG9yKSk7Ci0gICAgLy8gV2UgZGVmaW5lIHN5bWJvbHMgbGlrZSAi
Y3NzX3VfdGV4dHVyZSIgYWZ0ZXIgdGhlIGF1dGhvcidzIHNoYWRlciBjb2RlLCB3aGljaCBtYWtl
cyB0aGVtIGluYWNjZXNzaWJsZSB0byBhdXRob3IgY29kZS4KLSAgICAvLyBJbiBwYXJ0aWN1bGFy
LCAiY3NzX3VfdGV4dHVyZSIgcmVwcmVzZW50cyB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZSwgc28g
aXQncyBpbXBvcnRhbnQgdG8ga2VlcCBpdCBpbmFjY2Vzc2libGUgdG8KLSAgICAvLyBhdXRob3Ig
Y29kZSBmb3Igc2VjdXJpdHkgcmVhc29ucy4KLSAgICBidWlsZGVyLmFwcGVuZChTSEFERVIoCi0g
ICAgICAgIHVuaWZvcm0gc2FtcGxlcjJEIGNzc191X3RleHR1cmU7Ci0gICAgICAgIHZhcnlpbmcg
bWVkaXVtcCB2ZWMyIGNzc192X3RleENvb3JkOwotCi0gICAgICAgIHZvaWQgbWFpbigpCi0gICAg
ICAgIHsKLSAgICAgICAgICAgIGNzc19tYWluKCk7Ci0gICAgICAgICAgICBtZWRpdW1wIHZlYzQg
b3JpZ2luYWxDb2xvciA9IHRleHR1cmUyRChjc3NfdV90ZXh0dXJlLCBjc3Nfdl90ZXhDb29yZCk7
Ci0gICAgICAgICAgICBtZWRpdW1wIHZlYzQgbXVsdGlwbGllZENvbG9yID0gY2xhbXAoY3NzX0Nv
bG9yTWF0cml4ICogb3JpZ2luYWxDb2xvciwgMC4wLCAxLjApOwotICAgICAgICAgICAgbWVkaXVt
cCB2ZWM0IGNsYW1wZWRNaXhDb2xvciA9IGNsYW1wKGNzc19NaXhDb2xvciwgMC4wLCAxLjApOwot
ICAgICAgICAgICAgbWVkaXVtcCB2ZWMzIGJsZW5kZWRDb2xvciA9IGNzc19CbGVuZENvbG9yKG11
bHRpcGxpZWRDb2xvci5yZ2IsIGNsYW1wZWRNaXhDb2xvci5yZ2IpOwotICAgICAgICAgICAgbWVk
aXVtcCB2ZWMzIHdlaWdodGVkQ29sb3IgPSAoMS4wIC0gbXVsdGlwbGllZENvbG9yLmEpICogY2xh
bXBlZE1peENvbG9yLnJnYiArIG11bHRpcGxpZWRDb2xvci5hICogYmxlbmRlZENvbG9yOwotICAg
ICAgICAgICAgZ2xfRnJhZ0NvbG9yID0gY3NzX0NvbXBvc2l0ZShtdWx0aXBsaWVkQ29sb3Iucmdi
LCBtdWx0aXBsaWVkQ29sb3IuYSwgd2VpZ2h0ZWRDb2xvci5yZ2IsIGNsYW1wZWRNaXhDb2xvci5h
KTsKLSAgICAgICAgfQotICAgICkpOwotICAgIG1fdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXIgPSBi
dWlsZGVyLnRvU3RyaW5nKCk7Ci19Ci0KLVN0cmluZyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9n
cmFtOjpibGVuZEZ1bmN0aW9uU3RyaW5nKEJsZW5kTW9kZSBibGVuZE1vZGUpCi17Ci0gICAgLy8g
SW1wbGVtZW50ZWQgdXNpbmcgdGhlIHNhbWUgc3ltYm9sIG5hbWVzIGFzIHRoZSBDb21wb3NpdGlu
ZyBhbmQgQmxlbmRpbmcgc3BlYzoKLSAgICAvLyBodHRwczovL2R2Y3MudzMub3JnL2hnL0ZYVEYv
cmF3ZmlsZS90aXAvY29tcG9zaXRpbmcvaW5kZXguaHRtbCNibGVuZGluZ25vcm1hbAotICAgIC8v
IENzOiBpcyB0aGUgc291cmNlIGNvbG9yIGluIGNzc19CbGVuZENvbG9yKCkgYW5kIHRoZSBzb3Vy
Y2UgY29sb3IgY29tcG9uZW50IGluIGNzc19CbGVuZENvbXBvbmVudCgpCi0gICAgLy8gQ2I6IGlz
IHRoZSBiYWNrZHJvcCBjb2xvciBpbiBjc3NfQmxlbmRDb2xvcigpIGFuZCB0aGUgYmFja2Ryb3Ag
Y29sb3IgY29tcG9uZW50IGluIGNzc19CbGVuZENvbXBvbmVudCgpCi0gICAgY29uc3QgY2hhciog
YmxlbmRDb2xvckV4cHJlc3Npb24gPSAidmVjMyhjc3NfQmxlbmRDb21wb25lbnQoQ2IuciwgQ3Mu
ciksIGNzc19CbGVuZENvbXBvbmVudChDYi5nLCBDcy5nKSwgY3NzX0JsZW5kQ29tcG9uZW50KENi
LmIsIENzLmIpKSI7Ci0gICAgY29uc3QgY2hhciogYmxlbmRDb21wb25lbnRFeHByZXNzaW9uID0g
IkNvID0gMC4wOyI7Ci0gICAgYm9vbCBuZWVkc0x1bWlub3NpdHlIZWxwZXJGdW5jdGlvbnMgPSBm
YWxzZTsKLSAgICBib29sIG5lZWRzU2F0dXJhdGlvbkhlbHBlckZ1bmN0aW9ucyA9IGZhbHNlOwot
ICAgIFN0cmluZyBibGVuZEZ1bmN0aW9uU3RyaW5nOwotICAgIHN3aXRjaCAoYmxlbmRNb2RlKSB7
Ci0gICAgY2FzZSBCbGVuZE1vZGVOb3JtYWw6Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9u
ID0gIkNzIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVNdWx0aXBseToKLSAg
ICAgICAgYmxlbmRDb2xvckV4cHJlc3Npb24gPSAiQ3MgKiBDYiI7Ci0gICAgICAgIGJyZWFrOwot
ICAgIGNhc2UgQmxlbmRNb2RlU2NyZWVuOgotICAgICAgICBibGVuZENvbG9yRXhwcmVzc2lvbiA9
ICJDYiArIENzIC0gKENiICogQ3MpIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1v
ZGVEYXJrZW46Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gIm1pbihDYiwgQ3MpIjsK
LSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVMaWdodGVuOgotICAgICAgICBibGVu
ZENvbG9yRXhwcmVzc2lvbiA9ICJtYXgoQ2IsIENzKSI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNh
c2UgQmxlbmRNb2RlRGlmZmVyZW5jZToKLSAgICAgICAgYmxlbmRDb2xvckV4cHJlc3Npb24gPSAi
YWJzKENiIC0gQ3MpIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVFeGNsdXNp
b246Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gIkNiICsgQ3MgLSAyLjAgKiBDYiAq
IENzIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVPdmVybGF5OgotICAgICAg
ICAvKgotICAgICAgICAgICAgQ28gPSBIYXJkTGlnaHQoQ3MsIENiKQotICAgICAgICAgICAgICAg
PSBpZihDYiA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBNdWx0aXBseShDcywgMiB4IENi
KQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBTY3JlZW4oQ3Ms
IDIgeCBDYiAtIDEpCi0gICAgICAgICAgICAgICA9IGlmKENiIDw9IDAuNSkKLSAgICAgICAgICAg
ICAgICAgICAgIENzIHggKDIgeCBDYikKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAg
ICAgICAgICAgICAgQ3MgKyAoMiB4IENiIC0gMSkgLSAoQ3MgeCAoMiB4IENiIC0gMSkpCi0gICAg
ICAgICovCi0gICAgICAgIGJsZW5kQ29tcG9uZW50RXhwcmVzc2lvbiA9IFNIQURFUigKLSAgICAg
ICAgICAgIGlmIChDYiA8PSAwLjUpCi0gICAgICAgICAgICAgICAgQ28gPSBDcyAqICgyLjAgKiBD
Yik7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgQ28gPSBDcyArICgyLjAgKiBD
YiAtIDEuMCkgLSAoQ3MgKiAoMi4wICogQ2IgLSAxLjApKTsKLSAgICAgICAgKTsKLSAgICAgICAg
YnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVDb2xvckRvZGdlOgotICAgICAgICAvKgotICAgICAg
ICAgICAgQ28gPSBpZihDcyA8IDEpCi0gICAgICAgICAgICAgICAgICAgICBtaW4oMSwgQ2IgLyAo
MSAtIENzKSkKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgMQot
ICAgICAgICAqLwotICAgICAgICBibGVuZENvbXBvbmVudEV4cHJlc3Npb24gPSBTSEFERVIoCi0g
ICAgICAgICAgICBpZiAoQ3MgPCAxLjApCi0gICAgICAgICAgICAgICAgQ28gPSBtaW4oMS4wLCBD
YiAvICgxLjAgLSBDcykpOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIENvID0g
MS4wOwotICAgICAgICApOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZUNvbG9y
QnVybjoKLSAgICAgICAgLyoKLSAgICAgICAgICAgIENvID0gaWYoQ3MgPiAwKQotICAgICAgICAg
ICAgICAgICAgICAgMSAtIG1pbigxLCAoMSAtIENiKSAvIENzKQotICAgICAgICAgICAgICAgICBl
bHNlCi0gICAgICAgICAgICAgICAgICAgICAwCi0gICAgICAgICovCi0gICAgICAgIGJsZW5kQ29t
cG9uZW50RXhwcmVzc2lvbiA9IFNIQURFUigKLSAgICAgICAgICAgIGlmIChDcyA+IDAuMCkKLSAg
ICAgICAgICAgICAgICBDbyA9IDEuMCAtIG1pbigxLjAsICgxLjAgLSBDYikgLyBDcyk7Ci0gICAg
ICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgQ28gPSAwLjA7Ci0gICAgICAgICk7Ci0gICAg
ICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRNb2RlSGFyZExpZ2h0OgotICAgICAgICAvKgotICAg
ICAgICAgICAgQ28gPSBpZihDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBNdWx0aXBs
eShDYiwgMiB4IENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAg
ICBTY3JlZW4oQ2IsIDIgeCBDcyAtMSkKLSAgICAgICAgICAgICAgID0gaWYoQ3MgPD0gMC41KQot
ICAgICAgICAgICAgICAgICAgICAgQ2IgeCAoMiB4IENzKQotICAgICAgICAgICAgICAgICBlbHNl
Ci0gICAgICAgICAgICAgICAgICAgICBDYiArICgyIHggQ3MgLSAxKSAtIChDYiB4ICgyIHggQ3Mg
LSAxKSkKLSAgICAgICAgKi8KLSAgICAgICAgYmxlbmRDb21wb25lbnRFeHByZXNzaW9uID0gU0hB
REVSKAotICAgICAgICAgICAgaWYgKENzIDw9IDAuNSkKLSAgICAgICAgICAgICAgICBDbyA9IENi
ICogKDIuMCAqIENzKTsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBDbyA9IENi
ICsgKDIuMCAqIENzIC0gMS4wKSAtIChDYiAqICgyLjAgKiBDcyAtIDEuMCkpOwotICAgICAgICAp
OwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZVNvZnRMaWdodDoKLSAgICAgICAg
LyoKLSAgICAgICAgICAgIENvID0gaWYoQ3MgPD0gMC41KQotICAgICAgICAgICAgICAgICAgICAg
Q2IgLSAoMSAtIDIgeCBDcykgeCBDYiB4ICgxIC0gQ2IpCi0gICAgICAgICAgICAgICAgIGVsc2UK
LSAgICAgICAgICAgICAgICAgICAgIENiICsgKDIgeCBDcyAtIDEpIHggKEQoQ2IpIC0gQ2IpCi0K
LSAgICAgICAgICAgIHdpdGgKLQotICAgICAgICAgICAgRChDYikgPSBpZihDYiA8PSAwLjI1KQot
ICAgICAgICAgICAgICAgICAgICAgICAgKDE2ICogQ2IgLSAxMikgeCBDYiArIDQpIHggQ2IKLSAg
ICAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgc3FydChDYikK
LSAgICAgICAgKi8KLSAgICAgICAgYmxlbmRDb21wb25lbnRFeHByZXNzaW9uID0gU0hBREVSKAot
ICAgICAgICAgICAgbWVkaXVtcCBmbG9hdCBEOwotICAgICAgICAgICAgaWYgKENiIDw9IDAuMjUp
Ci0gICAgICAgICAgICAgICAgRCA9ICgoMTYuMCAqIENiIC0gMTIuMCkgKiBDYiArIDQuMCkgKiBD
YjsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBEID0gc3FydChDYik7Ci0KLSAg
ICAgICAgICAgIGlmIChDcyA8PSAwLjUpCi0gICAgICAgICAgICAgICAgQ28gPSBDYiAtICgxLjAg
LSAyLjAgKiBDcykgKiBDYiAqICgxLjAgLSBDYik7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAg
ICAgICAgICAgQ28gPSBDYiArICgyLjAgKiBDcyAtIDEuMCkgKiAoRCAtIENiKTsKLSAgICAgICAg
KTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVDb2xvcjoKLSAgICAgICAgbmVl
ZHNMdW1pbm9zaXR5SGVscGVyRnVuY3Rpb25zID0gdHJ1ZTsKLSAgICAgICAgYmxlbmRDb2xvckV4
cHJlc3Npb24gPSAiY3NzX1NldEx1bShDcywgY3NzX0x1bShDYikpIjsKLSAgICAgICAgYnJlYWs7
Ci0gICAgY2FzZSBCbGVuZE1vZGVMdW1pbm9zaXR5OgotICAgICAgICBuZWVkc0x1bWlub3NpdHlI
ZWxwZXJGdW5jdGlvbnMgPSB0cnVlOwotICAgICAgICBibGVuZENvbG9yRXhwcmVzc2lvbiA9ICJj
c3NfU2V0THVtKENiLCBjc3NfTHVtKENzKSkiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEJs
ZW5kTW9kZUh1ZToKLSAgICAgICAgbmVlZHNMdW1pbm9zaXR5SGVscGVyRnVuY3Rpb25zID0gdHJ1
ZTsKLSAgICAgICAgbmVlZHNTYXR1cmF0aW9uSGVscGVyRnVuY3Rpb25zID0gdHJ1ZTsKLSAgICAg
ICAgYmxlbmRDb2xvckV4cHJlc3Npb24gPSAiY3NzX1NldEx1bShjc3NfU2V0U2F0KENzLCBjc3Nf
U2F0KENiKSksIGNzc19MdW0oQ2IpKSI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRN
b2RlU2F0dXJhdGlvbjoKLSAgICAgICAgbmVlZHNMdW1pbm9zaXR5SGVscGVyRnVuY3Rpb25zID0g
dHJ1ZTsKLSAgICAgICAgbmVlZHNTYXR1cmF0aW9uSGVscGVyRnVuY3Rpb25zID0gdHJ1ZTsKLSAg
ICAgICAgYmxlbmRDb2xvckV4cHJlc3Npb24gPSAiY3NzX1NldEx1bShjc3NfU2V0U2F0KENiLCBj
c3NfU2F0KENzKSksIGNzc19MdW0oQ2IpKSI7Ci0gICAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6
Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIH0KLQotICAgIGlmIChuZWVkc0x1
bWlub3NpdHlIZWxwZXJGdW5jdGlvbnMpIHsKLSAgICAgICAgYmxlbmRGdW5jdGlvblN0cmluZy5h
cHBlbmQoU0hBREVSKAotICAgICAgICAgICAgbWVkaXVtcCBmbG9hdCBjc3NfTHVtKG1lZGl1bXAg
dmVjMyBDKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIHJldHVybiAwLjMgKiBDLnIg
KyAwLjU5ICogQy5nICsgMC4xMSAqIEMuYjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIG1l
ZGl1bXAgdmVjMyBjc3NfQ2xpcENvbG9yKG1lZGl1bXAgdmVjMyBDKQotICAgICAgICAgICAgewot
ICAgICAgICAgICAgICAgIG1lZGl1bXAgZmxvYXQgTCA9IGNzc19MdW0oQyk7Ci0gICAgICAgICAg
ICAgICAgbWVkaXVtcCBmbG9hdCBuID0gbWluKG1pbihDLnIsIEMuZyksIEMuYik7Ci0gICAgICAg
ICAgICAgICAgbWVkaXVtcCBmbG9hdCB4ID0gbWF4KG1heChDLnIsIEMuZyksIEMuYik7Ci0gICAg
ICAgICAgICAgICAgaWYgKG4gPCAwLjApCi0gICAgICAgICAgICAgICAgICAgIEMgPSBMICsgKCgo
QyAtIEwpICogTCkgLyAoTCAtIG4pKTsKLSAgICAgICAgICAgICAgICBpZiAoeCA+IDEuMCkKLSAg
ICAgICAgICAgICAgICAgICAgQyA9IEwgKyAoKChDIC0gTCkgKiAoMS4wIC0gTCkgLyAoeCAtIEwp
KSk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIEM7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAg
ICBtZWRpdW1wIHZlYzMgY3NzX1NldEx1bShtZWRpdW1wIHZlYzMgQywgbWVkaXVtcCBmbG9hdCBs
KQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIEMgKz0gbCAtIGNzc19MdW0oQyk7Ci0g
ICAgICAgICAgICAgICAgcmV0dXJuIGNzc19DbGlwQ29sb3IoQyk7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgICkpOwotICAgIH0KLQotICAgIGlmIChuZWVkc1NhdHVyYXRpb25IZWxwZXJGdW5jdGlv
bnMpIHsKLSAgICAgICAgYmxlbmRGdW5jdGlvblN0cmluZy5hcHBlbmQoU0hBREVSKAotICAgICAg
ICAgICAgbWVkaXVtcCBmbG9hdCBjc3NfU2F0KG1lZGl1bXAgdmVjMyBDKQotICAgICAgICAgICAg
ewotICAgICAgICAgICAgICAgIG1lZGl1bXAgZmxvYXQgY01pbiA9IG1pbihtaW4oQy5yLCBDLmcp
LCBDLmIpOwotICAgICAgICAgICAgICAgIG1lZGl1bXAgZmxvYXQgY01heCA9IG1heChtYXgoQy5y
LCBDLmcpLCBDLmIpOwotICAgICAgICAgICAgICAgIHJldHVybiBjTWF4IC0gY01pbjsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgIHZvaWQgY3NzX1NldFNhdEhlbHBlcihpbm91dCBtZWRpdW1w
IGZsb2F0IGNNaW4sIGlub3V0IG1lZGl1bXAgZmxvYXQgY01pZCwgaW5vdXQgbWVkaXVtcCBmbG9h
dCBjTWF4LCBtZWRpdW1wIGZsb2F0IHMpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
aWYgKGNNYXggPiBjTWluKSB7Ci0gICAgICAgICAgICAgICAgICAgIGNNaWQgPSAoKChjTWlkIC0g
Y01pbikgKiBzKSAvIChjTWF4IC0gY01pbikpOwotICAgICAgICAgICAgICAgICAgICBjTWF4ID0g
czsKLSAgICAgICAgICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgY01pZCA9IGNN
YXggPSAwLjA7Ci0gICAgICAgICAgICAgICAgY01pbiA9IDAuMDsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgIG1lZGl1bXAgdmVjMyBjc3NfU2V0U2F0KG1lZGl1bXAgdmVjMyBDLCBtZWRpdW1w
IGZsb2F0IHMpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgaWYgKEMuciA8PSBDLmcp
IHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKEMuZyA8PSBDLmIpCi0gICAgICAgICAgICAgICAg
ICAgICAgICBjc3NfU2V0U2F0SGVscGVyKEMuciwgQy5nLCBDLmIsIHMpOwotICAgICAgICAgICAg
ICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChDLnIgPD0gQy5iKQot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzc19TZXRTYXRIZWxwZXIoQy5yLCBDLmIsIEMu
Zywgcyk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY3NzX1NldFNhdEhlbHBlcihDLmIsIEMuciwgQy5nLCBzKTsKLSAgICAgICAgICAg
ICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAg
IGlmIChDLnIgPD0gQy5iKQotICAgICAgICAgICAgICAgICAgICAgICAgY3NzX1NldFNhdEhlbHBl
cihDLmcsIEMuciwgQy5iLCBzKTsKLSAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICBpZiAoQy5nIDw9IEMuYikKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjc3NfU2V0U2F0SGVscGVyKEMuZywgQy5iLCBDLnIsIHMpOwotICAgICAgICAgICAgICAg
ICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzc19TZXRTYXRIZWxw
ZXIoQy5iLCBDLmcsIEMuciwgcyk7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAgICAgcmV0dXJuIEM7Ci0gICAgICAgICAgICB9Ci0gICAgICAg
ICkpOwotICAgIH0KLQotICAgIGJsZW5kRnVuY3Rpb25TdHJpbmcuYXBwZW5kKFN0cmluZzo6Zm9y
bWF0KFNIQURFUigKLSAgICAgICAgbWVkaXVtcCBmbG9hdCBjc3NfQmxlbmRDb21wb25lbnQobWVk
aXVtcCBmbG9hdCBDYiwgbWVkaXVtcCBmbG9hdCBDcykKLSAgICAgICAgewotICAgICAgICAgICAg
bWVkaXVtcCBmbG9hdCBDbzsKLSAgICAgICAgICAgICVzCi0gICAgICAgICAgICByZXR1cm4gQ287
Ci0gICAgICAgIH0KLSAgICAgICAgbWVkaXVtcCB2ZWMzIGNzc19CbGVuZENvbG9yKG1lZGl1bXAg
dmVjMyBDYiwgbWVkaXVtcCB2ZWMzIENzKQotICAgICAgICB7Ci0gICAgICAgICAgICByZXR1cm4g
JXM7Ci0gICAgICAgIH0KLSAgICApLCBibGVuZENvbXBvbmVudEV4cHJlc3Npb24sIGJsZW5kQ29s
b3JFeHByZXNzaW9uKSk7Ci0KLSAgICByZXR1cm4gYmxlbmRGdW5jdGlvblN0cmluZzsKLX0KLQot
U3RyaW5nIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW06OmNvbXBvc2l0ZUZ1bmN0aW9uU3Ry
aW5nKENvbXBvc2l0ZU9wZXJhdG9yIGNvbXBvc2l0ZU9wZXJhdG9yKQotewotICAgIC8vIFVzZSB0
aGUgc2FtZSBzeW1ib2wgbmFtZXMgYXMgdGhlIENvbXBvc2l0aW5nIGFuZCBCbGVuZGluZyBzcGVj
OgotICAgIC8vIGh0dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxlL3RpcC9jb21wb3Np
dGluZy9pbmRleC5odG1sI2JsZW5kaW5nbm9ybWFsCi0gICAgLy8gQ3M6IGlzIHRoZSBzb3VyY2Ug
Y29sb3IKLSAgICAvLyBDYjogaXMgdGhlIGJhY2tkcm9wIGNvbG9yCi0gICAgLy8gYXM6IGlzIHRo
ZSBzb3VyY2UgYWxwaGEKLSAgICAvLyBhYjogaXMgdGhlIGJhY2tkcm9wIGFscGhhCi0gICAgLy8g
RmE6IGlzIGRlZmluZWQgYnkgdGhlIFBvcnRlciBEdWZmIG9wZXJhdG9yIGluIHVzZQotICAgIC8v
IEZiOiBpcyBkZWZpbmVkIGJ5IHRoZSBQb3J0ZXIgRHVmZiBvcGVyYXRvciBpbiB1c2UKLSAgICBj
b25zdCBjaGFyKiBGYSA9IDA7Ci0gICAgY29uc3QgY2hhciogRmIgPSAwOwotICAgIHN3aXRjaCAo
Y29tcG9zaXRlT3BlcmF0b3IpIHsKLSAgICBjYXNlIENvbXBvc2l0ZVNvdXJjZUF0b3A6Ci0gICAg
ICAgIEZhID0gImFiIjsKLSAgICAgICAgRmIgPSAiMS4wIC0gYXMiOwotICAgICAgICBicmVhazsK
LSAgICBjYXNlIENvbXBvc2l0ZUNsZWFyOgotICAgICAgICBGYSA9ICIwLjAiOwotICAgICAgICBG
YiA9ICIwLjAiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIENvbXBvc2l0ZUNvcHk6Ci0gICAg
ICAgIEZhID0gIjEuMCI7Ci0gICAgICAgIEZiID0gIjAuMCI7Ci0gICAgICAgIGJyZWFrOwotICAg
IGNhc2UgQ29tcG9zaXRlU291cmNlT3ZlcjoKLSAgICAgICAgRmEgPSAiMS4wIjsKLSAgICAgICAg
RmIgPSAiMS4wIC0gYXMiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIENvbXBvc2l0ZVNvdXJj
ZUluOgotICAgICAgICBGYSA9ICJhYiI7Ci0gICAgICAgIEZiID0gIjAuMCI7Ci0gICAgICAgIGJy
ZWFrOwotICAgIGNhc2UgQ29tcG9zaXRlU291cmNlT3V0OgotICAgICAgICBGYSA9ICIxLjAgLSBh
YiI7Ci0gICAgICAgIEZiID0gIjAuMCI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9z
aXRlRGVzdGluYXRpb25PdmVyOgotICAgICAgICBGYSA9ICIxLjAgLSBhYiI7Ci0gICAgICAgIEZi
ID0gIjEuMCI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29tcG9zaXRlRGVzdGluYXRpb25J
bjoKLSAgICAgICAgRmEgPSAiMC4wIjsKLSAgICAgICAgRmIgPSAiYXMiOwotICAgICAgICBicmVh
azsKLSAgICBjYXNlIENvbXBvc2l0ZURlc3RpbmF0aW9uT3V0OgotICAgICAgICBGYSA9ICIwLjAi
OwotICAgICAgICBGYiA9ICIxLjAgLSBhcyI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ29t
cG9zaXRlRGVzdGluYXRpb25BdG9wOgotICAgICAgICBGYSA9ICIxLjAgLSBhYiI7Ci0gICAgICAg
IEZiID0gImFzIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVYT1I6Ci0gICAg
ICAgIEZhID0gIjEuMCAtIGFiIjsKLSAgICAgICAgRmIgPSAiMS4wIC0gYXMiOwotICAgICAgICBi
cmVhazsKLSAgICBjYXNlIENvbXBvc2l0ZVBsdXNMaWdodGVyOgotICAgICAgICBub3RJbXBsZW1l
bnRlZCgpOwotICAgICAgICByZXR1cm4gU3RyaW5nKCk7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAg
Ly8gVGhlIENTUyBwYXJzZXIgc2hvdWxkIG5vdCBoYXZlIGFjY2VwdGVkIGFueSBvdGhlciBjb21w
b3NpdGUgb3BlcmF0b3JzLgotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAg
cmV0dXJuIFN0cmluZygpOwotICAgIH0KLQotICAgIEFTU0VSVChGYSAmJiBGYik7Ci0gICAgLy8g
VXNlIHRoZSBnZW5lcmFsIGZvcm11bGEgZm9yIGNvbXBvc2l0aW5nLCBsaWZ0ZWQgZnJvbSB0aGUg
c3BlYzoKLSAgICAvLyBodHRwczovL2R2Y3MudzMub3JnL2hnL0ZYVEYvcmF3ZmlsZS90aXAvY29t
cG9zaXRpbmcvaW5kZXguaHRtbCNnZW5lcmFsZm9ybXVsYQotICAgIHJldHVybiBTdHJpbmc6OmZv
cm1hdChTSEFERVIoCi0gICAgICAgIG1lZGl1bXAgdmVjNCBjc3NfQ29tcG9zaXRlKG1lZGl1bXAg
dmVjMyBDYiwgbWVkaXVtcCBmbG9hdCBhYiwgbWVkaXVtcCB2ZWMzIENzLCBtZWRpdW1wIGZsb2F0
IGFzKQotICAgICAgICB7Ci0gICAgICAgICAgICBtZWRpdW1wIGZsb2F0IEZhID0gJXM7Ci0gICAg
ICAgICAgICBtZWRpdW1wIGZsb2F0IEZiID0gJXM7Ci0gICAgICAgICAgICByZXR1cm4gdmVjNChh
cyAqIEZhICogQ3MgKyBhYiAqIEZiICogQ2IsIGFzICogRmEgKyBhYiAqIEZiKTsgCi0gICAgICAg
IH0KLSAgICApLCBGYSwgRmIpOwotfQotICAgIAotQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3Jh
bTo6fkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0oKQotewotICAgIHBsYXRmb3JtRGVzdHJv
eSgpOwotfQotCi1DdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtOjp2YWxpZGF0ZWRQcm9ncmFtSW5mbygpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKG1faXNJ
bml0aWFsaXplZCk7Ci0gICAgcmV0dXJuIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvKG1fdmFsaWRh
dGVkVmVydGV4U2hhZGVyLCBtX3ZhbGlkYXRlZEZyYWdtZW50U2hhZGVyLCBtX3Byb2dyYW1JbmZv
LnByb2dyYW1UeXBlKCksIG1fcHJvZ3JhbUluZm8ubWl4U2V0dGluZ3MoKSwgbV9wcm9ncmFtSW5m
by5tZXNoVHlwZSgpKTsKLX0KLQotI2lmICFVU0UoVEVYVFVSRV9NQVBQRVIpCi12b2lkIEN1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW06OnBsYXRmb3JtSW5pdCgpCi17Ci19Ci0KLXZvaWQgQ3Vz
dG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6cGxhdGZvcm1EZXN0cm95KCkKLXsKLX0KLSNlbmRp
ZgotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURF
UlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NzA0MmYyLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3Jh
bS5oCisrKyAvZGV2L251bGwKQEAgLTEsMTIzICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0g
KgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFN
QUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbV9oCi0jZGVm
aW5lIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW1faAotCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0jaW5jbHVkZSA8
d3RmL1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgotCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7Ci0KLXN0cnVjdCBBTkdMRVNoYWRlclN5bWJvbDsKLWNsYXNzIEN1c3RvbUZp
bHRlckNvbXBpbGVkUHJvZ3JhbTsKLWNsYXNzIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQ7Ci0K
LSNpZiBVU0UoVEVYVFVSRV9NQVBQRVIpCi1jbGFzcyBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21w
aWxlZFByb2dyYW07Ci10eXBlZGVmIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3Jh
bSBQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbTsKLSNlbmRpZgotCi0vLwotLy8gQSB1bmlxdWUgY29t
YmluYXRpb24gb2YgdmVydGV4IHNoYWRlciBhbmQgZnJhZ21lbnQgc2hhZGVyIGlzIG9ubHkgdmFs
aWRhdGVkIGFuZCBjb21waWxlZCBvbmNlLgotLy8gQWxsIHNoYWRlcnMgYXJlIHZhbGlkYXRlZCB0
aHJvdWdoIEFOR0xFIGluIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0gYmVmb3JlIGJlaW5n
IGNvbXBpbGVkIGJ5IHRoZSBHcmFwaGljc0NvbnRleHQzRCBpbiBDdXN0b21GaWx0ZXJDb21waWxl
ZFByb2dyYW0uCi0vLyBGb3Igc2hhZGVycyB0aGF0IHVzZSB0aGUgQ1NTIG1peCBmdW5jdGlvbiwg
Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbSBhZGRzIHNoYWRlciBjb2RlIHRvIHBlcmZvcm0g
RE9NIHRleHR1cmUgYWNjZXNzLCBibGVuZGluZywgYW5kIGNvbXBvc2l0aW5nLgotLy8KLWNsYXNz
IEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0gOiBwdWJsaWMgUmVmQ291bnRlZDxDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gY3JlYXRlKEN1c3RvbUZpbHRlckdsb2JhbENv
bnRleHQqIGdsb2JhbENvbnRleHQsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9n
cmFtSW5mbykKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbShnbG9iYWxDb250ZXh0LCBwcm9ncmFtSW5mbykpOwotICAgIH0KLQot
ICAgIH5DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtKCk7Ci0KLSAgICBjb25zdCBDdXN0b21G
aWx0ZXJQcm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8oKSBjb25zdCB7IHJldHVybiBtX3Byb2dyYW1J
bmZvOyB9Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8gdmFsaWRhdGVkUHJvZ3JhbUluZm8o
KSBjb25zdDsKLSAgICAKLSAgICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bT4gY29tcGlsZWRQcm9ncmFtKCk7Ci0gICAgdm9pZCBzZXRDb21waWxlZFByb2dyYW0oUGFzc1Jl
ZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+KTsKLQotICAgIGNvbnN0IFN0cmluZyYg
dmFsaWRhdGVkVmVydGV4U2hhZGVyKCkgY29uc3QgCi0gICAgewotICAgICAgICBBU1NFUlQobV9p
c0luaXRpYWxpemVkKTsgCi0gICAgICAgIHJldHVybiBtX3ZhbGlkYXRlZFZlcnRleFNoYWRlcjsg
Ci0gICAgfQotCi0gICAgY29uc3QgU3RyaW5nJiB2YWxpZGF0ZWRGcmFnbWVudFNoYWRlcigpIGNv
bnN0IAotICAgIHsgCi0gICAgICAgIEFTU0VSVChtX2lzSW5pdGlhbGl6ZWQpOyAKLSAgICAgICAg
cmV0dXJuIG1fdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXI7IAotICAgIH0KLQotI2lmIFVTRShURVhU
VVJFX01BUFBFUikKLSAgICBQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSogcGxhdGZvcm1Db21waWxl
ZFByb2dyYW0oKTsKLSNlbmRpZgotCi0gICAgYm9vbCBpc0luaXRpYWxpemVkKCkgY29uc3QgeyBy
ZXR1cm4gbV9pc0luaXRpYWxpemVkOyB9Ci1wcml2YXRlOgotICAgIEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW0oQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCosIGNvbnN0IEN1c3RvbUZpbHRl
clByb2dyYW1JbmZvJik7Ci0KLSAgICB2b2lkIHBsYXRmb3JtSW5pdCgpOwotICAgIHZvaWQgcGxh
dGZvcm1EZXN0cm95KCk7Ci0KLSAgICBzdGF0aWMgU3RyaW5nIGRlZmF1bHRWZXJ0ZXhTaGFkZXJT
dHJpbmcoKTsKLSAgICBzdGF0aWMgU3RyaW5nIGRlZmF1bHRGcmFnbWVudFNoYWRlclN0cmluZygp
OwotCi0gICAgc3RhdGljIFN0cmluZyBibGVuZEZ1bmN0aW9uU3RyaW5nKEJsZW5kTW9kZSk7Ci0g
ICAgc3RhdGljIFN0cmluZyBjb21wb3NpdGVGdW5jdGlvblN0cmluZyhDb21wb3NpdGVPcGVyYXRv
cik7Ci0KLSAgICB2b2lkIHJld3JpdGVNaXhWZXJ0ZXhTaGFkZXIoY29uc3QgVmVjdG9yPEFOR0xF
U2hhZGVyU3ltYm9sPiYgc3ltYm9scyk7Ci0gICAgdm9pZCByZXdyaXRlTWl4RnJhZ21lbnRTaGFk
ZXIoKTsKLQotICAgIGJvb2wgbmVlZHNJbnB1dFRleHR1cmUoKSBjb25zdDsKLQotICAgIEN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvIG1fcHJvZ3JhbUluZm87Ci0KLSAgICBTdHJpbmcgbV92YWxpZGF0
ZWRWZXJ0ZXhTaGFkZXI7Ci0gICAgU3RyaW5nIG1fdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXI7Ci0K
LSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiBtX2NvbXBpbGVkUHJvZ3Jh
bTsKLSNpZiBVU0UoVEVYVFVSRV9NQVBQRVIpCi0gICAgUGxhdGZvcm1Db21waWxlZFByb2dyYW0q
IG1fcGxhdGZvcm1Db21waWxlZFByb2dyYW07Ci0jZW5kaWYKLQotICAgIGJvb2wgbV9pc0luaXRp
YWxpemVkOwotfTsKLQotfQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
RkVDdXN0b21GaWx0ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmls
dGVycy9GRUN1c3RvbUZpbHRlci5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGRj
NTYxMWQuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmls
dGVycy9GRUN1c3RvbUZpbHRlci5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwzODMgKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIElu
Y29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4K
LSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9M
REVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0g
KiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUg
ImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1Mp
Ci0jaW5jbHVkZSAiRkVDdXN0b21GaWx0ZXIuaCIKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNv
bXBpbGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclJlbmRlcmVyLmgiCi0jaW5j
bHVkZSAiQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkV4dGVuc2lv
bnMzRC5oIgotI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCi0jaW5jbHVkZSAiVGV4dFN0
cmVhbS5oIgotCi0jaW5jbHVkZSA8cnVudGltZS9VaW50OENsYW1wZWRBcnJheS5oPgotCi1uYW1l
c3BhY2UgV2ViQ29yZSB7Ci0KLUZFQ3VzdG9tRmlsdGVyOjpGRUN1c3RvbUZpbHRlcihGaWx0ZXIq
IGZpbHRlciwgUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gY29udGV4dCwgUGFzc1JlZlB0
cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2YWxpZGF0ZWRQcm9ncmFtLCBjb25zdCBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBwYXJhbWV0ZXJzLAotICAgIHVuc2lnbmVkIG1lc2hS
b3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUp
Ci0gICAgOiBGaWx0ZXJFZmZlY3QoZmlsdGVyKQotICAgICwgbV9jb250ZXh0KGNvbnRleHQpCi0g
ICAgLCBtX3ZhbGlkYXRlZFByb2dyYW0odmFsaWRhdGVkUHJvZ3JhbSkKLSAgICAsIG1faW5wdXRU
ZXh0dXJlKDApCi0gICAgLCBtX2ZyYW1lQnVmZmVyKDApCi0gICAgLCBtX2RlcHRoQnVmZmVyKDAp
Ci0gICAgLCBtX2Rlc3RUZXh0dXJlKDApCi0gICAgLCBtX3RyaWVkTXVsdGlzYW1wbGVCdWZmZXIo
ZmFsc2UpCi0gICAgLCBtX211bHRpc2FtcGxlRnJhbWVCdWZmZXIoMCkKLSAgICAsIG1fbXVsdGlz
YW1wbGVSZW5kZXJCdWZmZXIoMCkKLSAgICAsIG1fbXVsdGlzYW1wbGVEZXB0aEJ1ZmZlcigwKQot
ewotICAgIC8vIFdlIHdpbGwgbm90IHBhc3MgYSBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0g
aGVyZSwgYXMgd2Ugb25seSB3YW50IHRvIGNvbXBpbGUgaXQgd2hlbiB3ZSBhY3R1YWxseSBuZWVk
IGl0IGluIHRoZSBmaXJzdCBwYWludC4KLSAgICBtX2N1c3RvbUZpbHRlclJlbmRlcmVyID0gQ3Vz
dG9tRmlsdGVyUmVuZGVyZXI6OmNyZWF0ZShtX2NvbnRleHQsIG1fdmFsaWRhdGVkUHJvZ3JhbS0+
cHJvZ3JhbUluZm8oKS5wcm9ncmFtVHlwZSgpLCBwYXJhbWV0ZXJzLCBtZXNoUm93cywgbWVzaENv
bHVtbnMsIG1lc2hUeXBlKTsKLX0KLQotUGFzc1JlZlB0cjxGRUN1c3RvbUZpbHRlcj4gRkVDdXN0
b21GaWx0ZXI6OmNyZWF0ZShGaWx0ZXIqIGZpbHRlciwgUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRl
eHQzRD4gY29udGV4dCwgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiB2
YWxpZGF0ZWRQcm9ncmFtLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBwYXJhbWV0
ZXJzLAotICAgIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucywgQ3VzdG9t
RmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBGRUN1
c3RvbUZpbHRlcihmaWx0ZXIsIGNvbnRleHQsIHZhbGlkYXRlZFByb2dyYW0sIHBhcmFtZXRlcnMs
IG1lc2hSb3dzLCBtZXNoQ29sdW1ucywgbWVzaFR5cGUpKTsKLX0KLQotRkVDdXN0b21GaWx0ZXI6
On5GRUN1c3RvbUZpbHRlcigpCi17Ci0gICAgZGVsZXRlUmVuZGVyQnVmZmVycygpOwotfQotCi12
b2lkIEZFQ3VzdG9tRmlsdGVyOjpkZWxldGVSZW5kZXJCdWZmZXJzKCkKLXsKLSAgICBBU1NFUlQo
bV9jb250ZXh0KTsKLSAgICBtX2NvbnRleHQtPm1ha2VDb250ZXh0Q3VycmVudCgpOwotICAgIGlm
IChtX2lucHV0VGV4dHVyZSkgewotICAgICAgICBtX2NvbnRleHQtPmRlbGV0ZVRleHR1cmUobV9p
bnB1dFRleHR1cmUpOwotICAgICAgICBtX2lucHV0VGV4dHVyZSA9IDA7Ci0gICAgfQotICAgIGlm
IChtX2ZyYW1lQnVmZmVyKSB7Ci0gICAgICAgIC8vIE1ha2Ugc3VyZSB0byB1bmJpbmQgYW55IGZy
YW1lYnVmZmVyIGZyb20gdGhlIGNvbnRleHQgZmlyc3QsIG90aGVyd2lzZQotICAgICAgICAvLyBz
b21lIHBsYXRmb3JtcyBtaWdodCByZWZ1c2UgdG8gYmluZCB0aGUgc2FtZSBidWZmZXIgaWQgYWdh
aW4uCi0gICAgICAgIG1fY29udGV4dC0+YmluZEZyYW1lYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNE
OjpGUkFNRUJVRkZFUiwgMCk7Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlRnJhbWVidWZmZXIo
bV9mcmFtZUJ1ZmZlcik7Ci0gICAgICAgIG1fZnJhbWVCdWZmZXIgPSAwOwotICAgIH0KLSAgICBp
ZiAobV9kZXB0aEJ1ZmZlcikgewotICAgICAgICBtX2NvbnRleHQtPmRlbGV0ZVJlbmRlcmJ1ZmZl
cihtX2RlcHRoQnVmZmVyKTsKLSAgICAgICAgbV9kZXB0aEJ1ZmZlciA9IDA7Ci0gICAgfQotICAg
IGlmIChtX2Rlc3RUZXh0dXJlKSB7Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlVGV4dHVyZSht
X2Rlc3RUZXh0dXJlKTsKLSAgICAgICAgbV9kZXN0VGV4dHVyZSA9IDA7Ci0gICAgfQotICAgIGRl
bGV0ZU11bHRpc2FtcGxlUmVuZGVyQnVmZmVycygpOwotfQotCi12b2lkIEZFQ3VzdG9tRmlsdGVy
OjpkZWxldGVNdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcnMoKQotewotICAgIGlmIChtX211bHRpc2Ft
cGxlRnJhbWVCdWZmZXIpIHsKLSAgICAgICAgLy8gTWFrZSBzdXJlIHRvIHVuYmluZCBhbnkgZnJh
bWVidWZmZXIgZnJvbSB0aGUgY29udGV4dCBmaXJzdCwgb3RoZXJ3aXNlCi0gICAgICAgIC8vIHNv
bWUgcGxhdGZvcm1zIG1pZ2h0IHJlZnVzZSB0byBiaW5kIHRoZSBzYW1lIGJ1ZmZlciBpZCBhZ2Fp
bi4KLSAgICAgICAgbV9jb250ZXh0LT5iaW5kRnJhbWVidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6
OkZSQU1FQlVGRkVSLCAwKTsKLSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVGcmFtZWJ1ZmZlciht
X211bHRpc2FtcGxlRnJhbWVCdWZmZXIpOwotICAgICAgICBtX211bHRpc2FtcGxlRnJhbWVCdWZm
ZXIgPSAwOwotICAgIH0KLSAgICBpZiAobV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcikgewotICAg
ICAgICBtX2NvbnRleHQtPmRlbGV0ZVJlbmRlcmJ1ZmZlcihtX211bHRpc2FtcGxlUmVuZGVyQnVm
ZmVyKTsKLSAgICAgICAgbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlciA9IDA7Ci0gICAgfQotICAg
IGlmIChtX211bHRpc2FtcGxlRGVwdGhCdWZmZXIpIHsKLSAgICAgICAgbV9jb250ZXh0LT5kZWxl
dGVSZW5kZXJidWZmZXIobV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKTsKLSAgICAgICAgbV9tdWx0
aXNhbXBsZURlcHRoQnVmZmVyID0gMDsKLSAgICB9Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0ZXI6
OnBsYXRmb3JtQXBwbHlTb2Z0d2FyZSgpCi17Ci0gICAgaWYgKCFhcHBseVNoYWRlcigpKQotICAg
ICAgICBjbGVhclNoYWRlclJlc3VsdCgpOwotfQotCi12b2lkIEZFQ3VzdG9tRmlsdGVyOjpjbGVh
clNoYWRlclJlc3VsdCgpCi17Ci0gICAgY2xlYXJSZXN1bHQoKTsKLSAgICBVaW50OENsYW1wZWRB
cnJheSogZHN0UGl4ZWxBcnJheSA9IGNyZWF0ZVVubXVsdGlwbGllZEltYWdlUmVzdWx0KCk7Ci0g
ICAgaWYgKCFkc3RQaXhlbEFycmF5KQotICAgICAgICByZXR1cm47Ci0KLSAgICBGaWx0ZXJFZmZl
Y3QqIGluID0gaW5wdXRFZmZlY3QoMCk7Ci0gICAgc2V0SXNBbHBoYUltYWdlKGluLT5pc0FscGhh
SW1hZ2UoKSk7Ci0gICAgSW50UmVjdCBlZmZlY3REcmF3aW5nUmVjdCA9IHJlcXVlc3RlZFJlZ2lv
bk9mSW5wdXRJbWFnZURhdGEoaW4tPmFic29sdXRlUGFpbnRSZWN0KCkpOwotICAgIGluLT5jb3B5
VW5tdWx0aXBsaWVkSW1hZ2UoZHN0UGl4ZWxBcnJheSwgZWZmZWN0RHJhd2luZ1JlY3QpOwotfQot
Ci12b2lkIEZFQ3VzdG9tRmlsdGVyOjpkcmF3RmlsdGVyTWVzaChQbGF0Zm9ybTNET2JqZWN0IGlu
cHV0VGV4dHVyZSkKLXsKLSAgICBib29sIG11bHRpc2FtcGxlID0gY2FuVXNlTXVsdGlzYW1wbGVC
dWZmZXJzKCk7Ci0gICAgbV9jb250ZXh0LT5iaW5kRnJhbWVidWZmZXIoR3JhcGhpY3NDb250ZXh0
M0Q6OkZSQU1FQlVGRkVSLCBtdWx0aXNhbXBsZSA/IG1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZlciA6
IG1fZnJhbWVCdWZmZXIpOwotICAgIG1fY29udGV4dC0+dmlld3BvcnQoMCwgMCwgbV9jb250ZXh0
U2l6ZS53aWR0aCgpLCBtX2NvbnRleHRTaXplLmhlaWdodCgpKTsKLQotICAgIG1fY29udGV4dC0+
Y2xlYXJDb2xvcigwLCAwLCAwLCAwKTsKLSAgICBtX2NvbnRleHQtPmNsZWFyKEdyYXBoaWNzQ29u
dGV4dDNEOjpDT0xPUl9CVUZGRVJfQklUIHwgR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX0JVRkZF
Ul9CSVQpOwotCi0gICAgbV9jdXN0b21GaWx0ZXJSZW5kZXJlci0+ZHJhdyhpbnB1dFRleHR1cmUs
IG1fY29udGV4dFNpemUpOwotCi0gICAgaWYgKG11bHRpc2FtcGxlKQotICAgICAgICByZXNvbHZl
TXVsdGlzYW1wbGVCdWZmZXIoKTsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6cHJlcGFyZUZv
ckRyYXdpbmcoKQotewotICAgIG1fY29udGV4dC0+bWFrZUNvbnRleHRDdXJyZW50KCk7Ci0KLSAg
ICBpZiAoIW1fY3VzdG9tRmlsdGVyUmVuZGVyZXItPmNvbXBpbGVkUHJvZ3JhbSgpKSB7Ci0gICAg
ICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IGNvbXBpbGVkUHJvZ3JhbSA9
IG1fdmFsaWRhdGVkUHJvZ3JhbS0+Y29tcGlsZWRQcm9ncmFtKCk7Ci0gICAgICAgIGlmICghY29t
cGlsZWRQcm9ncmFtKSB7Ci0gICAgICAgICAgICAvLyBMYXppbHkgY3JlYXRlIGEgY29tcGlsZWQg
cHJvZ3JhbSBhbmQgbGV0IEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0gaG9sZCBvbiB0byBp
dC4KLSAgICAgICAgICAgIGNvbXBpbGVkUHJvZ3JhbSA9IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJv
Z3JhbTo6Y3JlYXRlKG1fY29udGV4dCwgbV92YWxpZGF0ZWRQcm9ncmFtLT52YWxpZGF0ZWRWZXJ0
ZXhTaGFkZXIoKSwgbV92YWxpZGF0ZWRQcm9ncmFtLT52YWxpZGF0ZWRGcmFnbWVudFNoYWRlcigp
LCBtX3ZhbGlkYXRlZFByb2dyYW0tPnByb2dyYW1JbmZvKCkucHJvZ3JhbVR5cGUoKSk7Ci0gICAg
ICAgICAgICBtX3ZhbGlkYXRlZFByb2dyYW0tPnNldENvbXBpbGVkUHJvZ3JhbShjb21waWxlZFBy
b2dyYW0pOwotICAgICAgICB9Ci0gICAgICAgIC8vIExhemlseSBpbmplY3QgdGhlIGNvbXBpbGVk
IHByb2dyYW0gaW50byB0aGUgQ3VzdG9tRmlsdGVyUmVuZGVyZXIuCi0gICAgICAgIG1fY3VzdG9t
RmlsdGVyUmVuZGVyZXItPnNldENvbXBpbGVkUHJvZ3JhbShjb21waWxlZFByb2dyYW0ucmVsZWFz
ZSgpKTsKLSAgICB9Ci0KLSAgICBpZiAoIW1fY3VzdG9tRmlsdGVyUmVuZGVyZXItPnByZXBhcmVG
b3JEcmF3aW5nKCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIC8vIE9ubHkgYWxsb2Nh
dGUgYSB0ZXh0dXJlIGlmIHRoZSBwcm9ncmFtIG5lZWRzIG9uZSBhbmQgdGhlIGNhbGxlciBkb2Vz
bid0IGFsbG9jYXRlIG9uZSBieSBpdHNlbGYuCi0gICAgaWYgKChtX2N1c3RvbUZpbHRlclJlbmRl
cmVyLT5wcm9ncmFtTmVlZHNJbnB1dFRleHR1cmUoKSAmJiAhZW5zdXJlSW5wdXRUZXh0dXJlKCkp
IHx8ICFlbnN1cmVGcmFtZUJ1ZmZlcigpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBy
ZXR1cm4gdHJ1ZTsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6YXBwbHlTaGFkZXIoKQotewot
ICAgIFVpbnQ4Q2xhbXBlZEFycmF5KiBkc3RQaXhlbEFycmF5ID0gbV9jdXN0b21GaWx0ZXJSZW5k
ZXJlci0+cHJlbXVsdGlwbGllZEFscGhhKCkgPyBjcmVhdGVQcmVtdWx0aXBsaWVkSW1hZ2VSZXN1
bHQoKSA6IGNyZWF0ZVVubXVsdGlwbGllZEltYWdlUmVzdWx0KCk7Ci0gICAgaWYgKCFkc3RQaXhl
bEFycmF5KQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBpZiAoIXByZXBhcmVGb3JEcmF3
aW5nKCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIEZpbHRlckVmZmVjdCogaW4gPSBp
bnB1dEVmZmVjdCgwKTsKLSAgICBJbnRSZWN0IGVmZmVjdERyYXdpbmdSZWN0ID0gcmVxdWVzdGVk
UmVnaW9uT2ZJbnB1dEltYWdlRGF0YShpbi0+YWJzb2x1dGVQYWludFJlY3QoKSk7Ci0gICAgSW50
U2l6ZSBuZXdDb250ZXh0U2l6ZShlZmZlY3REcmF3aW5nUmVjdC5zaXplKCkpOwotICAgIGlmICgh
cmVzaXplQ29udGV4dElmTmVlZGVkKG5ld0NvbnRleHRTaXplKSkKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwotCi0gICAgYm9vbCBuZWVkc0lucHV0VGV4dHVyZSA9IG1fY3VzdG9tRmlsdGVyUmVuZGVy
ZXItPnByb2dyYW1OZWVkc0lucHV0VGV4dHVyZSgpOwotICAgIGlmIChuZWVkc0lucHV0VGV4dHVy
ZSkgewotICAgICAgICBSZWZQdHI8VWludDhDbGFtcGVkQXJyYXk+IHNyY1BpeGVsQXJyYXkgPSBp
bi0+YXNVbm11bHRpcGxpZWRJbWFnZShlZmZlY3REcmF3aW5nUmVjdCk7Ci0gICAgICAgIHVwbG9h
ZElucHV0VGV4dHVyZShzcmNQaXhlbEFycmF5LmdldCgpKTsKLSAgICB9Ci0gICAgZHJhd0ZpbHRl
ck1lc2gobmVlZHNJbnB1dFRleHR1cmUgPyBtX2lucHV0VGV4dHVyZSA6IDApOwotCi0gICAgQVNT
RVJUKHN0YXRpY19jYXN0PHNpemVfdD4obmV3Q29udGV4dFNpemUud2lkdGgoKSAqIG5ld0NvbnRl
eHRTaXplLmhlaWdodCgpICogNCkgPT0gZHN0UGl4ZWxBcnJheS0+bGVuZ3RoKCkpOwotICAgIG1f
Y29udGV4dC0+cmVhZFBpeGVscygwLCAwLCBuZXdDb250ZXh0U2l6ZS53aWR0aCgpLCBuZXdDb250
ZXh0U2l6ZS5oZWlnaHQoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OlJHQkEsIEdyYXBoaWNzQ29udGV4
dDNEOjpVTlNJR05FRF9CWVRFLCBkc3RQaXhlbEFycmF5LT5kYXRhKCkpOwotCi0gICAgcmV0dXJu
IHRydWU7Ci19Ci0KLWJvb2wgRkVDdXN0b21GaWx0ZXI6OmVuc3VyZUlucHV0VGV4dHVyZSgpCi17
Ci0gICAgaWYgKCFtX2lucHV0VGV4dHVyZSkKLSAgICAgICAgbV9pbnB1dFRleHR1cmUgPSBtX2Nv
bnRleHQtPmNyZWF0ZVRleHR1cmUoKTsKLSAgICByZXR1cm4gbV9pbnB1dFRleHR1cmU7Ci19Ci0K
LXZvaWQgRkVDdXN0b21GaWx0ZXI6OnVwbG9hZElucHV0VGV4dHVyZShVaW50OENsYW1wZWRBcnJh
eSogc3JjUGl4ZWxBcnJheSkKLXsKLSAgICBtX2NvbnRleHQtPmJpbmRUZXh0dXJlKEdyYXBoaWNz
Q29udGV4dDNEOjpURVhUVVJFXzJELCBtX2lucHV0VGV4dHVyZSk7Ci0gICAgbV9jb250ZXh0LT50
ZXhJbWFnZTJEKEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFXzJELCAwLCBHcmFwaGljc0NvbnRl
eHQzRDo6UkdCQSwgbV9jb250ZXh0U2l6ZS53aWR0aCgpLCBtX2NvbnRleHRTaXplLmhlaWdodCgp
LCAwLCBHcmFwaGljc0NvbnRleHQzRDo6UkdCQSwgR3JhcGhpY3NDb250ZXh0M0Q6OlVOU0lHTkVE
X0JZVEUsIHNyY1BpeGVsQXJyYXktPmRhdGEoKSk7Ci19Ci0KLWJvb2wgRkVDdXN0b21GaWx0ZXI6
OmVuc3VyZUZyYW1lQnVmZmVyKCkKLXsKLSAgICBpZiAoIW1fZnJhbWVCdWZmZXIpCi0gICAgICAg
IG1fZnJhbWVCdWZmZXIgPSBtX2NvbnRleHQtPmNyZWF0ZUZyYW1lYnVmZmVyKCk7Ci0gICAgaWYg
KCFtX2RlcHRoQnVmZmVyKQotICAgICAgICBtX2RlcHRoQnVmZmVyID0gbV9jb250ZXh0LT5jcmVh
dGVSZW5kZXJidWZmZXIoKTsKLSAgICBpZiAoIW1fZGVzdFRleHR1cmUpCi0gICAgICAgIG1fZGVz
dFRleHR1cmUgPSBtX2NvbnRleHQtPmNyZWF0ZVRleHR1cmUoKTsKLSAgICByZXR1cm4gbV9mcmFt
ZUJ1ZmZlciAmJiBtX2RlcHRoQnVmZmVyICYmIG1fZGVzdFRleHR1cmU7Ci19Ci0KLWJvb2wgRkVD
dXN0b21GaWx0ZXI6OmNyZWF0ZU11bHRpc2FtcGxlQnVmZmVyKCkKLXsKLSAgICBBU1NFUlQoIW1f
dHJpZWRNdWx0aXNhbXBsZUJ1ZmZlcik7Ci0gICAgbV90cmllZE11bHRpc2FtcGxlQnVmZmVyID0g
dHJ1ZTsKLQotICAgIEV4dGVuc2lvbnMzRCogZXh0ZW5zaW9ucyA9IG1fY29udGV4dC0+Z2V0RXh0
ZW5zaW9ucygpOwotICAgIGlmICghZXh0ZW5zaW9ucwotICAgICAgICB8fCAhZXh0ZW5zaW9ucy0+
bWF5U3VwcG9ydE11bHRpc2FtcGxpbmcoKQotICAgICAgICB8fCAhZXh0ZW5zaW9ucy0+c3VwcG9y
dHMoIkdMX0FOR0xFX2ZyYW1lYnVmZmVyX211bHRpc2FtcGxlIikKLSAgICAgICAgfHwgIWV4dGVu
c2lvbnMtPnN1cHBvcnRzKCJHTF9BTkdMRV9mcmFtZWJ1ZmZlcl9ibGl0IikKLSAgICAgICAgfHwg
IWV4dGVuc2lvbnMtPnN1cHBvcnRzKCJHTF9PRVNfcmdiOF9yZ2JhOCIpKQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0KLSAgICBleHRlbnNpb25zLT5lbnN1cmVFbmFibGVkKCJHTF9BTkdMRV9mcmFt
ZWJ1ZmZlcl9ibGl0Iik7Ci0gICAgZXh0ZW5zaW9ucy0+ZW5zdXJlRW5hYmxlZCgiR0xfQU5HTEVf
ZnJhbWVidWZmZXJfbXVsdGlzYW1wbGUiKTsKLSAgICBleHRlbnNpb25zLT5lbnN1cmVFbmFibGVk
KCJHTF9PRVNfcmdiOF9yZ2JhOCIpOwotCi0gICAgaWYgKCFtX211bHRpc2FtcGxlRnJhbWVCdWZm
ZXIpCi0gICAgICAgIG1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZlciA9IG1fY29udGV4dC0+Y3JlYXRl
RnJhbWVidWZmZXIoKTsKLSAgICBpZiAoIW1fbXVsdGlzYW1wbGVSZW5kZXJCdWZmZXIpCi0gICAg
ICAgIG1fbXVsdGlzYW1wbGVSZW5kZXJCdWZmZXIgPSBtX2NvbnRleHQtPmNyZWF0ZVJlbmRlcmJ1
ZmZlcigpOwotICAgIGlmICghbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKQotICAgICAgICBtX211
bHRpc2FtcGxlRGVwdGhCdWZmZXIgPSBtX2NvbnRleHQtPmNyZWF0ZVJlbmRlcmJ1ZmZlcigpOwot
Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXZvaWQgRkVDdXN0b21GaWx0ZXI6OnJlc29sdmVNdWx0
aXNhbXBsZUJ1ZmZlcigpCi17Ci0gICAgQVNTRVJUKG1fdHJpZWRNdWx0aXNhbXBsZUJ1ZmZlciAm
JiBtX211bHRpc2FtcGxlRnJhbWVCdWZmZXIgJiYgbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlciAm
JiBtX211bHRpc2FtcGxlRGVwdGhCdWZmZXIpOwotICAgIG1fY29udGV4dC0+YmluZEZyYW1lYnVm
ZmVyKEV4dGVuc2lvbnMzRDo6UkVBRF9GUkFNRUJVRkZFUiwgbV9tdWx0aXNhbXBsZUZyYW1lQnVm
ZmVyKTsKLSAgICBtX2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihFeHRlbnNpb25zM0Q6OkRSQVdf
RlJBTUVCVUZGRVIsIG1fZnJhbWVCdWZmZXIpOwotCi0gICAgQVNTRVJUKG1fY29udGV4dC0+Z2V0
RXh0ZW5zaW9ucygpKTsKLSAgICBtX2NvbnRleHQtPmdldEV4dGVuc2lvbnMoKS0+YmxpdEZyYW1l
YnVmZmVyKDAsIDAsIG1fY29udGV4dFNpemUud2lkdGgoKSwgbV9jb250ZXh0U2l6ZS5oZWlnaHQo
KSwgMCwgMCwgbV9jb250ZXh0U2l6ZS53aWR0aCgpLCBtX2NvbnRleHRTaXplLmhlaWdodCgpLCBH
cmFwaGljc0NvbnRleHQzRDo6Q09MT1JfQlVGRkVSX0JJVCwgR3JhcGhpY3NDb250ZXh0M0Q6Ok5F
QVJFU1QpOwotCi0gICAgbV9jb250ZXh0LT5iaW5kRnJhbWVidWZmZXIoRXh0ZW5zaW9uczNEOjpS
RUFEX0ZSQU1FQlVGRkVSLCAwKTsKLSAgICBtX2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihFeHRl
bnNpb25zM0Q6OkRSQVdfRlJBTUVCVUZGRVIsIDApOwotCi0gICAgbV9jb250ZXh0LT5iaW5kRnJh
bWVidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSLCBtX2ZyYW1lQnVmZmVyKTsK
LX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6Y2FuVXNlTXVsdGlzYW1wbGVCdWZmZXJzKCkgY29u
c3QKLXsKLSAgICByZXR1cm4gbV90cmllZE11bHRpc2FtcGxlQnVmZmVyICYmIG1fbXVsdGlzYW1w
bGVGcmFtZUJ1ZmZlciAmJiBtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyICYmIG1fbXVsdGlzYW1w
bGVEZXB0aEJ1ZmZlcjsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6cmVzaXplTXVsdGlzYW1w
bGVCdWZmZXJzKGNvbnN0IEludFNpemUmIG5ld0NvbnRleHRTaXplKQotewotICAgIGlmICghbV90
cmllZE11bHRpc2FtcGxlQnVmZmVyICYmICFjcmVhdGVNdWx0aXNhbXBsZUJ1ZmZlcigpKQotICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBpZiAoIWNhblVzZU11bHRpc2FtcGxlQnVmZmVycygp
KQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBzdGF0aWMgY29uc3QgaW50IGtNYXhTYW1w
bGVDb3VudCA9IDQ7Ci0gICAgaW50IG1heFN1cHBvcnRlZFNhbXBsZUNvdW50ID0gMDsKLSAgICBt
X2NvbnRleHQtPmdldEludGVnZXJ2KEV4dGVuc2lvbnMzRDo6TUFYX1NBTVBMRVMsICZtYXhTdXBw
b3J0ZWRTYW1wbGVDb3VudCk7Ci0gICAgaW50IHNhbXBsZUNvdW50ID0gc3RkOjptaW4oa01heFNh
bXBsZUNvdW50LCBtYXhTdXBwb3J0ZWRTYW1wbGVDb3VudCk7Ci0gICAgaWYgKCFzYW1wbGVDb3Vu
dCkgewotICAgICAgICBkZWxldGVNdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcnMoKTsKLSAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgIH0KLQotICAgIEV4dGVuc2lvbnMzRCogZXh0ZW5zaW9ucyA9IG1f
Y29udGV4dC0+Z2V0RXh0ZW5zaW9ucygpOwotICAgIEFTU0VSVChleHRlbnNpb25zKTsKLQotICAg
IG1fY29udGV4dC0+YmluZEZyYW1lYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZF
UiwgbV9tdWx0aXNhbXBsZUZyYW1lQnVmZmVyKTsKLQotICAgIG1fY29udGV4dC0+YmluZFJlbmRl
cmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6UkVOREVSQlVGRkVSLCBtX211bHRpc2FtcGxlUmVu
ZGVyQnVmZmVyKTsKLSAgICBleHRlbnNpb25zLT5yZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1w
bGUoR3JhcGhpY3NDb250ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgc2FtcGxlQ291bnQsIEV4dGVuc2lv
bnMzRDo6UkdCQThfT0VTLCBuZXdDb250ZXh0U2l6ZS53aWR0aCgpLCBuZXdDb250ZXh0U2l6ZS5o
ZWlnaHQoKSk7Ci0gICAgbV9jb250ZXh0LT5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihHcmFwaGlj
c0NvbnRleHQzRDo6RlJBTUVCVUZGRVIsIEdyYXBoaWNzQ29udGV4dDNEOjpDT0xPUl9BVFRBQ0hN
RU5UMCwgR3JhcGhpY3NDb250ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgbV9tdWx0aXNhbXBsZVJlbmRl
ckJ1ZmZlcik7Ci0KLSAgICBtX2NvbnRleHQtPmJpbmRSZW5kZXJidWZmZXIoR3JhcGhpY3NDb250
ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKTsKLSAgICBleHRl
bnNpb25zLT5yZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUoR3JhcGhpY3NDb250ZXh0M0Q6
OlJFTkRFUkJVRkZFUiwgc2FtcGxlQ291bnQsIEdyYXBoaWNzQ29udGV4dDNEOjpERVBUSF9DT01Q
T05FTlQxNiwgbmV3Q29udGV4dFNpemUud2lkdGgoKSwgbmV3Q29udGV4dFNpemUuaGVpZ2h0KCkp
OwotICAgIG1fY29udGV4dC0+ZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoR3JhcGhpY3NDb250ZXh0
M0Q6OkZSQU1FQlVGRkVSLCBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfQVRUQUNITUVOVCwgR3Jh
cGhpY3NDb250ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKTsK
LQotICAgIG1fY29udGV4dC0+YmluZFJlbmRlcmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6UkVO
REVSQlVGRkVSLCAwKTsKLQotICAgIGlmIChtX2NvbnRleHQtPmNoZWNrRnJhbWVidWZmZXJTdGF0
dXMoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSKSAhPSBHcmFwaGljc0NvbnRleHQzRDo6
RlJBTUVCVUZGRVJfQ09NUExFVEUpIHsKLSAgICAgICAgZGVsZXRlTXVsdGlzYW1wbGVSZW5kZXJC
dWZmZXJzKCk7Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0KLSAgICByZXR1cm4gdHJ1
ZTsKLX0KLQotYm9vbCBGRUN1c3RvbUZpbHRlcjo6cmVzaXplQ29udGV4dElmTmVlZGVkKGNvbnN0
IEludFNpemUmIG5ld0NvbnRleHRTaXplKQotewotICAgIGlmIChuZXdDb250ZXh0U2l6ZS5pc0Vt
cHR5KCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAobV9jb250ZXh0U2l6ZSA9PSBu
ZXdDb250ZXh0U2l6ZSkKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0KLSAgICBpbnQgbWF4VGV4dHVy
ZVNpemUgPSAwOwotICAgIG1fY29udGV4dC0+Z2V0SW50ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6
Ok1BWF9URVhUVVJFX1NJWkUsICZtYXhUZXh0dXJlU2l6ZSk7Ci0gICAgaWYgKG5ld0NvbnRleHRT
aXplLmhlaWdodCgpID4gbWF4VGV4dHVyZVNpemUgfHwgbmV3Q29udGV4dFNpemUud2lkdGgoKSA+
IG1heFRleHR1cmVTaXplKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICByZXR1cm4gcmVz
aXplQ29udGV4dChuZXdDb250ZXh0U2l6ZSk7Ci19Ci0KLWJvb2wgRkVDdXN0b21GaWx0ZXI6OnJl
c2l6ZUNvbnRleHQoY29uc3QgSW50U2l6ZSYgbmV3Q29udGV4dFNpemUpCi17Ci0gICAgYm9vbCBt
dWx0aXNhbXBsZSA9IHJlc2l6ZU11bHRpc2FtcGxlQnVmZmVycyhuZXdDb250ZXh0U2l6ZSk7Ci0K
LSAgICBtX2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVC
VUZGRVIsIG1fZnJhbWVCdWZmZXIpOwotICAgIG1fY29udGV4dC0+YmluZFRleHR1cmUoR3JhcGhp
Y3NDb250ZXh0M0Q6OlRFWFRVUkVfMkQsIG1fZGVzdFRleHR1cmUpOwotICAgIC8vIFdlIGFyZSBn
b2luZyB0byBjbGVhciB0aGUgb3V0cHV0IGJ1ZmZlciBhbnl3YXksIHNvIHdlIGNhbiBzYWZlbHkg
aW5pdGlhbGl6ZSB0aGUgZGVzdGluYXRpb24gdGV4dHVyZSB3aXRoIGdhcmJhZ2UgZGF0YS4KLSAg
ICBtX2NvbnRleHQtPnRleEltYWdlMkREaXJlY3QoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkVf
MkQsIDAsIEdyYXBoaWNzQ29udGV4dDNEOjpSR0JBLCBuZXdDb250ZXh0U2l6ZS53aWR0aCgpLCBu
ZXdDb250ZXh0U2l6ZS5oZWlnaHQoKSwgMCwgR3JhcGhpY3NDb250ZXh0M0Q6OlJHQkEsIEdyYXBo
aWNzQ29udGV4dDNEOjpVTlNJR05FRF9CWVRFLCAwKTsKLSAgICBtX2NvbnRleHQtPmZyYW1lYnVm
ZmVyVGV4dHVyZTJEKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUiwgR3JhcGhpY3NDb250
ZXh0M0Q6OkNPTE9SX0FUVEFDSE1FTlQwLCBHcmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV8yRCwg
bV9kZXN0VGV4dHVyZSwgMCk7Ci0KLSAgICAvLyBXZSBkb24ndCBuZWVkIHRoZSBkZXB0aCBidWZm
ZXIgZm9yIHRoZSB0ZXh0dXJlIGZyYW1lYnVmZmVyLCBpZiB3ZSBhbHJlYWR5Ci0gICAgLy8gaGF2
ZSBhIG11bHRpc2FtcGxlIGJ1ZmZlci4KLSAgICBpZiAoIW11bHRpc2FtcGxlKSB7Ci0gICAgICAg
IG1fY29udGV4dC0+YmluZFJlbmRlcmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6UkVOREVSQlVG
RkVSLCBtX2RlcHRoQnVmZmVyKTsKLSAgICAgICAgbV9jb250ZXh0LT5yZW5kZXJidWZmZXJTdG9y
YWdlKEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIEdyYXBoaWNzQ29udGV4dDNEOjpE
RVBUSF9DT01QT05FTlQxNiwgbmV3Q29udGV4dFNpemUud2lkdGgoKSwgbmV3Q29udGV4dFNpemUu
aGVpZ2h0KCkpOwotICAgICAgICBtX2NvbnRleHQtPmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKEdy
YXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUiwgR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX0FU
VEFDSE1FTlQsIEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIG1fZGVwdGhCdWZmZXIp
OwotICAgIH0KLQotICAgIGlmIChtX2NvbnRleHQtPmNoZWNrRnJhbWVidWZmZXJTdGF0dXMoR3Jh
cGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSKSAhPSBHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVC
VUZGRVJfQ09NUExFVEUpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGlmIChtdWx0aXNh
bXBsZSkgewotICAgICAgICAvLyBDbGVhciB0aGUgZnJhbWVidWZmZXIgZmlyc3QsIG90aGVyd2lz
ZSB0aGUgZmlyc3QgYmxpdCB3aWxsIGZhaWwuCi0gICAgICAgIG1fY29udGV4dC0+Y2xlYXJDb2xv
cigwLCAwLCAwLCAwKTsKLSAgICAgICAgbV9jb250ZXh0LT5jbGVhcihHcmFwaGljc0NvbnRleHQz
RDo6Q09MT1JfQlVGRkVSX0JJVCk7Ci0gICAgfQotCi0gICAgbV9jb250ZXh0LT5iaW5kUmVuZGVy
YnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIDApOwotCi0gICAgbV9jb250
ZXh0U2l6ZSA9IG5ld0NvbnRleHRTaXplOwotICAgIHJldHVybiB0cnVlOwotfQotCi12b2lkIEZF
Q3VzdG9tRmlsdGVyOjpkdW1wKCkKLXsKLX0KLQotVGV4dFN0cmVhbSYgRkVDdXN0b21GaWx0ZXI6
OmV4dGVybmFsUmVwcmVzZW50YXRpb24oVGV4dFN0cmVhbSYgdHMsIGludCBpbmRlbnQpIGNvbnN0
Ci17Ci0gICAgd3JpdGVJbmRlbnQodHMsIGluZGVudCk7Ci0gICAgdHMgPDwgIltmZUN1c3RvbUZp
bHRlciI7Ci0gICAgRmlsdGVyRWZmZWN0OjpleHRlcm5hbFJlcHJlc2VudGF0aW9uKHRzKTsKLSAg
ICB0cyA8PCAiXVxuIjsKLSAgICBpbnB1dEVmZmVjdCgwKS0+ZXh0ZXJuYWxSZXByZXNlbnRhdGlv
bih0cywgaW5kZW50ICsgMSk7Ci0gICAgcmV0dXJuIHRzOwotfQotCi19IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElD
UykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
RkVDdXN0b21GaWx0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvRkVDdXN0b21GaWx0ZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzk5NmY0
ZC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0ZFQ3VzdG9tRmlsdGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMDYgKzAsMCBAQAotLyoKLSAq
IENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoK
LSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAg
ICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMK
LSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBB
TlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0g
KiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBGRUN1c3RvbUZpbHRlcl9oCi0jZGVm
aW5lIEZFQ3VzdG9tRmlsdGVyX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNE
X0dSQVBISUNTKQotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmgiCi0jaW5jbHVk
ZSAiQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAiRmlsdGVyLmgiCi0jaW5jbHVk
ZSAiRmlsdGVyRWZmZWN0LmgiCi0jaW5jbHVkZSAiR3JhcGhpY3NUeXBlczNELmgiCi0jaW5jbHVk
ZSA8cnVudGltZS9VaW50OENsYW1wZWRBcnJheS5oPgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4K
LQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBDdXN0b21GaWx0ZXJSZW5kZXJlcjsKLWNs
YXNzIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW07Ci1jbGFzcyBHcmFwaGljc0NvbnRleHQz
RDsKLWNsYXNzIEludFNpemU7Ci0KLWNsYXNzIEZFQ3VzdG9tRmlsdGVyIDogcHVibGljIEZpbHRl
ckVmZmVjdCB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8RkVDdXN0b21GaWx0ZXI+
IGNyZWF0ZShGaWx0ZXIqLCBQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiwgUGFzc1JlZlB0
cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyTGlzdCYsCi0gICAgICAgIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1u
cywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUpOwotCi0gICAgdmlydHVhbCB2b2lkIHBsYXRmb3JtQXBw
bHlTb2Z0d2FyZSgpOwotICAgIHZpcnR1YWwgdm9pZCBkdW1wKCk7Ci0KLSAgICB2aXJ0dWFsIFRl
eHRTdHJlYW0mIGV4dGVybmFsUmVwcmVzZW50YXRpb24oVGV4dFN0cmVhbSYsIGludCBpbmRlbnRp
b24pIGNvbnN0OwotCi1wcml2YXRlOgotICAgIEZFQ3VzdG9tRmlsdGVyKEZpbHRlciosIFBhc3NS
ZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+LCBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRl
ZFByb2dyYW0+LCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiwKLSAgICAgICAgdW5z
aWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJNZXNoVHlw
ZSk7Ci0gICAgfkZFQ3VzdG9tRmlsdGVyKCk7Ci0KLSAgICBib29sIGFwcGx5U2hhZGVyKCk7Ci0g
ICAgdm9pZCBjbGVhclNoYWRlclJlc3VsdCgpOwotICAgIGJvb2wgaW5pdGlhbGl6ZUNvbnRleHQo
KTsKLQotICAgIGJvb2wgcHJlcGFyZUZvckRyYXdpbmcoKTsKLQotICAgIHZvaWQgZHJhd0ZpbHRl
ck1lc2goUGxhdGZvcm0zRE9iamVjdCBpbnB1dFRleHR1cmUpOwotICAgIGJvb2wgZW5zdXJlSW5w
dXRUZXh0dXJlKCk7Ci0gICAgdm9pZCB1cGxvYWRJbnB1dFRleHR1cmUoVWludDhDbGFtcGVkQXJy
YXkqIHNyY1BpeGVsQXJyYXkpOwotICAgIGJvb2wgcmVzaXplQ29udGV4dElmTmVlZGVkKGNvbnN0
IEludFNpemUmKTsKLSAgICBib29sIHJlc2l6ZUNvbnRleHQoY29uc3QgSW50U2l6ZSYpOwotCi0g
ICAgYm9vbCBjYW5Vc2VNdWx0aXNhbXBsZUJ1ZmZlcnMoKSBjb25zdDsKLSAgICBib29sIGNyZWF0
ZU11bHRpc2FtcGxlQnVmZmVyKCk7Ci0gICAgYm9vbCByZXNpemVNdWx0aXNhbXBsZUJ1ZmZlcnMo
Y29uc3QgSW50U2l6ZSYpOwotICAgIHZvaWQgcmVzb2x2ZU11bHRpc2FtcGxlQnVmZmVyKCk7Ci0g
ICAgdm9pZCBkZWxldGVNdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcnMoKTsKLQotICAgIGJvb2wgZW5z
dXJlRnJhbWVCdWZmZXIoKTsKLSAgICB2b2lkIGRlbGV0ZVJlbmRlckJ1ZmZlcnMoKTsKLQotICAg
IFJlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gbV9jb250ZXh0OwotICAgIFJlZlB0cjxDdXN0b21G
aWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiBtX3ZhbGlkYXRlZFByb2dyYW07Ci0gICAgUmVmUHRyPEN1
c3RvbUZpbHRlclJlbmRlcmVyPiBtX2N1c3RvbUZpbHRlclJlbmRlcmVyOwotICAgIEludFNpemUg
bV9jb250ZXh0U2l6ZTsKLQotICAgIFBsYXRmb3JtM0RPYmplY3QgbV9pbnB1dFRleHR1cmU7Ci0g
ICAgUGxhdGZvcm0zRE9iamVjdCBtX2ZyYW1lQnVmZmVyOwotICAgIFBsYXRmb3JtM0RPYmplY3Qg
bV9kZXB0aEJ1ZmZlcjsKLSAgICBQbGF0Zm9ybTNET2JqZWN0IG1fZGVzdFRleHR1cmU7Ci0KLSAg
ICBib29sIG1fdHJpZWRNdWx0aXNhbXBsZUJ1ZmZlcjsKLSAgICBQbGF0Zm9ybTNET2JqZWN0IG1f
bXVsdGlzYW1wbGVGcmFtZUJ1ZmZlcjsKLSAgICBQbGF0Zm9ybTNET2JqZWN0IG1fbXVsdGlzYW1w
bGVSZW5kZXJCdWZmZXI7Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBtX211bHRpc2FtcGxlRGVwdGhC
dWZmZXI7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
Q1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2VuZGlmIC8vIEZFQ3VzdG9tRmls
dGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvRmlsdGVyT3BlcmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0ZpbHRlck9wZXJhdGlvbi5oCmluZGV4IGQ2NWQ3NDMuLjBjNDE5YzEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3BlcmF0
aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0
ZXJPcGVyYXRpb24uaApAQCAtNjQsMTAgKzY0LDYgQEAgcHVibGljOgogICAgICAgICBDT05UUkFT
VCwKICAgICAgICAgQkxVUiwKICAgICAgICAgRFJPUF9TSEFET1csCi0jaWYgRU5BQkxFKENTU19T
SEFERVJTKQotICAgICAgICBDVVNUT00sCi0gICAgICAgIFZBTElEQVRFRF9DVVNUT00sCi0jZW5k
aWYKICAgICAgICAgUEFTU1RIUk9VR0gsCiAgICAgICAgIE5PTkUKICAgICB9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRp
b25zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVy
T3BlcmF0aW9ucy5jcHAKaW5kZXggYTI4NTM4YS4uNDI3OTE2NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJh
dGlvbnMuY3BwCkBAIC04NywxOCArODcsNiBAQCBib29sIEZpbHRlck9wZXJhdGlvbnM6Om9wZXJh
dGlvbnNNYXRjaChjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiBvdGhlcikgY29uc3QKICAgICByZXR1
cm4gdHJ1ZTsKIH0KIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLWJvb2wgRmlsdGVyT3BlcmF0
aW9uczo6aGFzQ3VzdG9tRmlsdGVyKCkgY29uc3QKLXsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsg
aSA8IG1fb3BlcmF0aW9ucy5zaXplKCk7ICsraSkgewotICAgICAgICBGaWx0ZXJPcGVyYXRpb246
Ok9wZXJhdGlvblR5cGUgdHlwZSA9IG1fb3BlcmF0aW9ucy5hdChpKS0+dHlwZSgpOwotICAgICAg
ICBpZiAodHlwZSA9PSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTSB8fCB0eXBlID09IEZpbHRlck9w
ZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RPTSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAg
IH0KLSAgICByZXR1cm4gZmFsc2U7Ci19Ci0jZW5kaWYKLQogYm9vbCBGaWx0ZXJPcGVyYXRpb25z
OjpoYXNSZWZlcmVuY2VGaWx0ZXIoKSBjb25zdAogewogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBp
IDwgbV9vcGVyYXRpb25zLnNpemUoKTsgKytpKSB7CkBAIC0xNDQsMTQgKzEzMiw2IEBAIEZpbHRl
ck91dHNldHMgRmlsdGVyT3BlcmF0aW9uczo6b3V0c2V0cygpIGNvbnN0CiAgICAgICAgICAgICB0
b3RhbE91dHNldHMgKz0gb3V0c2V0czsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VT
VE9NOgotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RPTTogewot
ICAgICAgICAgICAgLy8gRklYTUU6IE5lZWQgdG8gaW5jbHVkZSB0aGUgZmlsdGVyIG1hcmdpbnMg
aGVyZS4KLSAgICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD03MTQwMAotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSNlbmRpZgogICAgICAg
ICBkZWZhdWx0OgogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3BlcmF0aW9ucy5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRp
b25zLmgKaW5kZXggNzdiZjNlOC4uYzM3OTk4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmgKQEAg
LTcxLDkgKzcxLDYgQEAgcHVibGljOgogICAgIGJvb2wgaGFzRmlsdGVyVGhhdEFmZmVjdHNPcGFj
aXR5KCkgY29uc3Q7CiAgICAgYm9vbCBoYXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHMoKSBjb25zdDsK
IAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBib29sIGhhc0N1c3RvbUZpbHRlcigpIGNv
bnN0OwotI2VuZGlmCiAgICAgYm9vbCBoYXNSZWZlcmVuY2VGaWx0ZXIoKSBjb25zdDsKIHByaXZh
dGU6CiAgICAgVmVjdG9yPFJlZlB0cjxGaWx0ZXJPcGVyYXRpb24+PiBtX29wZXJhdGlvbnM7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1ZhbGlk
YXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9maWx0ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFmNjRkNTcuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24uY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNjggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFp
bWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERB
TUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0jaW5jbHVkZSAiVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0KLSNpbmNs
dWRlICJDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJWYWxp
ZGF0ZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiTGF5b3V0U2l6ZS5oIgotCi1uYW1lc3BhY2UgV2Vi
Q29yZSB7Ci0KLVZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbjo6VmFsaWRhdGVkQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4g
dmFsaWRhdGVkUHJvZ3JhbSwgCi0gICAgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYg
c29ydGVkUGFyYW1ldGVycywgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1lc2hDb2x1bW5z
LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAgICA6IEZpbHRlck9wZXJhdGlvbihW
QUxJREFURURfQ1VTVE9NKQotICAgICwgbV92YWxpZGF0ZWRQcm9ncmFtKHZhbGlkYXRlZFByb2dy
YW0pCi0gICAgLCBtX3BhcmFtZXRlcnMoc29ydGVkUGFyYW1ldGVycykKLSAgICAsIG1fbWVzaFJv
d3MobWVzaFJvd3MpCi0gICAgLCBtX21lc2hDb2x1bW5zKG1lc2hDb2x1bW5zKQotICAgICwgbV9t
ZXNoVHlwZShtZXNoVHlwZSkKLXsKLX0KLQotVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
Ojp+VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKCkKLXsKLX0KLQotUGFzc1JlZlB0cjxG
aWx0ZXJPcGVyYXRpb24+IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbjo6YmxlbmQoY29u
c3QgRmlsdGVyT3BlcmF0aW9uKiwgZG91YmxlIHByb2dyZXNzLCBjb25zdCBMYXlvdXRTaXplJiBz
aXplLCBib29sIGJsZW5kVG9QYXNzdGhyb3VnaCkKLXsKLSAgICBVTlVTRURfUEFSQU0ocHJvZ3Jl
c3MpOwotICAgIFVOVVNFRF9QQVJBTShzaXplKTsKLSAgICBVTlVTRURfUEFSQU0oYmxlbmRUb1Bh
c3N0aHJvdWdoKTsKLQotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiB0aGlz
OwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZWFiYjBkNS4uMDAwMDAwMAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1ZhbGlkYXRlZEN1c3RvbUZpbHRl
ck9wZXJhdGlvbi5oCisrKyAvZGV2L251bGwKQEAgLTEsOTUgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQotICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNI
IERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbl9o
Ci0jZGVmaW5lIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbl9oCi0KLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmgiCi0jaW5jbHVk
ZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oIgotI2luY2x1ZGUgIkZpbHRlck9wZXJhdGlv
bi5oIgotI2luY2x1ZGUgIkxheW91dFNpemUuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1j
bGFzcyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOwotCi1jbGFzcyBWYWxpZGF0ZWRDdXN0
b21GaWx0ZXJPcGVyYXRpb24gOiBwdWJsaWMgRmlsdGVyT3BlcmF0aW9uIHsKLXB1YmxpYzoKLSAg
ICBzdGF0aWMgUGFzc1JlZlB0cjxWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24+IGNyZWF0
ZShQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+IHZhbGlkYXRlZFByb2dy
YW0sIAotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBzb3J0ZWRQYXJh
bWV0ZXJzLCB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZp
bHRlck1lc2hUeXBlIG1lc2hUeXBlKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5l
dyBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24odmFsaWRhdGVkUHJvZ3JhbSwgc29ydGVk
UGFyYW1ldGVycywgbWVzaFJvd3MsIG1lc2hDb2x1bW5zLCBtZXNoVHlwZSkpOwotICAgIH0KLQot
ICAgIHZpcnR1YWwgflZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbigpOwotCi0gICAgdmly
dHVhbCBib29sIGFmZmVjdHNPcGFjaXR5KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotICAgIHZp
cnR1YWwgYm9vbCBtb3Zlc1BpeGVscygpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KLSAgICB2aXJ0
dWFsIGJvb2wgYmxlbmRpbmdOZWVkc1JlbmRlcmVyU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7
IH0KLQotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxGaWx0ZXJPcGVyYXRpb24+IGJsZW5kKGNvbnN0
IEZpbHRlck9wZXJhdGlvbiogZnJvbSwgZG91YmxlIHByb2dyZXNzLCBjb25zdCBMYXlvdXRTaXpl
JiwgYm9vbCBibGVuZFRvUGFzc3Rocm91Z2ggPSBmYWxzZSk7Ci0KLSAgICBDdXN0b21GaWx0ZXJW
YWxpZGF0ZWRQcm9ncmFtKiB2YWxpZGF0ZWRQcm9ncmFtKCkgY29uc3QgeyByZXR1cm4gbV92YWxp
ZGF0ZWRQcm9ncmFtLmdldCgpOyB9Ci0gICAgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlz
dCYgcGFyYW1ldGVycygpIGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1ldGVyczsgfQotCi0gICAgdW5z
aWduZWQgbWVzaFJvd3MoKSBjb25zdCB7IHJldHVybiBtX21lc2hSb3dzOyB9Ci0gICAgdW5zaWdu
ZWQgbWVzaENvbHVtbnMoKSBjb25zdCB7IHJldHVybiBtX21lc2hDb2x1bW5zOyB9Ci0KLSAgICBD
dXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaFR5cGU7
IH0KLQotcHJpdmF0ZToKLSAgICB2aXJ0dWFsIGJvb2wgb3BlcmF0b3I9PShjb25zdCBGaWx0ZXJP
cGVyYXRpb24mIG8pIGNvbnN0Ci0gICAgewotICAgICAgICBpZiAoIWlzU2FtZVR5cGUobykpCi0g
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgY29uc3QgVmFsaWRhdGVkQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uKiBvdGhlciA9IHN0YXRpY19jYXN0PGNvbnN0IFZhbGlkYXRlZEN1c3Rv
bUZpbHRlck9wZXJhdGlvbio+KCZvKTsKLSAgICAgICAgcmV0dXJuIG1fdmFsaWRhdGVkUHJvZ3Jh
bS5nZXQoKSA9PSBvdGhlci0+bV92YWxpZGF0ZWRQcm9ncmFtLmdldCgpCi0gICAgICAgICAgICAm
JiBtX21lc2hSb3dzID09IG90aGVyLT5tX21lc2hSb3dzCi0gICAgICAgICAgICAmJiBtX21lc2hD
b2x1bW5zID09IG90aGVyLT5tX21lc2hDb2x1bW5zCi0gICAgICAgICAgICAmJiBtX21lc2hUeXBl
ID09IG90aGVyLT5tX21lc2hUeXBlCi0gICAgICAgICAgICAmJiBtX3BhcmFtZXRlcnMgPT0gb3Ro
ZXItPm1fcGFyYW1ldGVyczsKLSAgICB9Ci0KLSAgICBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24oUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiwgY29uc3QgQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYsIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNo
Q29sdW1ucywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUpOwotCi0gICAgUmVmUHRyPEN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0+IG1fdmFsaWRhdGVkUHJvZ3JhbTsKLQotICAgIEN1c3RvbUZpbHRl
clBhcmFtZXRlckxpc3QgbV9wYXJhbWV0ZXJzOwotICAgIHVuc2lnbmVkIG1fbWVzaFJvd3M7Ci0g
ICAgdW5zaWduZWQgbV9tZXNoQ29sdW1uczsKLSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtX21l
c2hUeXBlOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxF
KENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
dGV4bWFwL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW1UZXh0dXJlTWFwcGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvdGV4bWFwL0N1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW1UZXh0dXJlTWFwcGVyLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggYmVkMGU2ZS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9maWx0ZXJzL3RleG1hcC9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtVGV4dHVy
ZU1hcHBlci5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw1OCArMCwwIEBACi0vKgotICogQ29weXJp
Z2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0gg
REFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykgJiYgVVNFKFRFWFRVUkVfTUFQUEVSKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW0uaCIKLQotI2luY2x1ZGUgIlRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVk
UHJvZ3JhbS5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVBsYXRmb3JtQ29tcGlsZWRQcm9n
cmFtKiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpwbGF0Zm9ybUNvbXBpbGVkUHJvZ3Jh
bSgpCi17Ci0gICAgaWYgKCFtX3BsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKQotICAgICAgICBtX3Bs
YXRmb3JtQ29tcGlsZWRQcm9ncmFtID0gVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9n
cmFtOjpjcmVhdGUoKS5sZWFrUmVmKCk7Ci0gICAgcmV0dXJuIG1fcGxhdGZvcm1Db21waWxlZFBy
b2dyYW07Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6cGxhdGZvcm1J
bml0KCkKLXsKLSAgICBtX3BsYXRmb3JtQ29tcGlsZWRQcm9ncmFtID0gMDsKLX0KLQotdm9pZCBD
dXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpwbGF0Zm9ybURlc3Ryb3koKQotewotICAgIGRl
cmVmSWZOb3ROdWxsKG1fcGxhdGZvcm1Db21waWxlZFByb2dyYW0pOwotfQotCi19IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRShURVhU
VVJFX01BUFBFUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvdGV4bWFwL1RleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbS5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy90ZXhtYXAvVGV4dHVyZU1h
cHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGFmYTZjYTUuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy90ZXhtYXAvVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtLmgK
KysrIC9kZXYvbnVsbApAQCAtMSw3MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEy
IEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Q09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
Ci0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICov
Ci0KLSNpZm5kZWYgVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtX2gKLSNkZWZp
bmUgVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtX2gKLQotI2lmIEVOQUJMRShD
U1NfU0hBREVSUykKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9S
ZWZDb3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLWNsYXNzIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbUNsaWVudCB7
Ci1wdWJsaWM6Ci0gICAgdm9pZCByZWYoKSB7IHJlZkZyb21WYWxpZGF0ZWRQcm9ncmFtKCk7IH0K
LSAgICB2b2lkIGRlcmVmKCkgeyBkZXJlZkZyb21WYWxpZGF0ZWRQcm9ncmFtKCk7IH0KLQotICAg
IHZpcnR1YWwgdm9pZCByZWZGcm9tVmFsaWRhdGVkUHJvZ3JhbSgpID0gMDsKLSAgICB2aXJ0dWFs
IHZvaWQgZGVyZWZGcm9tVmFsaWRhdGVkUHJvZ3JhbSgpID0gMDsKLX07Ci0KLWNsYXNzIFRleHR1
cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSA6IHB1YmxpYyBSZWZDb3VudGVkPFRleHR1
cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbT4gewotcHVibGljOgotICAgIHN0YXRpYyBQ
YXNzUmVmUHRyPFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbT4gY3JlYXRlKCkK
LSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgVGV4dHVyZU1hcHBlclBsYXRmb3Jt
Q29tcGlsZWRQcm9ncmFtKCkpOwotICAgIH0KLSAgICAKLSAgICB2b2lkIHNldENsaWVudChQYXNz
UmVmUHRyPFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbUNsaWVudD4gY2xpZW50
KSB7IG1fY2xpZW50ID0gY2xpZW50OyB9Ci0gICAgVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGls
ZWRQcm9ncmFtQ2xpZW50KiBjbGllbnQoKSBjb25zdCB7IHJldHVybiBtX2NsaWVudC5nZXQoKTsg
fQotCi1wcml2YXRlOgotICAgIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSgp
Ci0gICAgewotICAgIH0KLQotICAgIFJlZlB0cjxUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxl
ZFByb2dyYW1DbGllbnQ+IG1fY2xpZW50OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gVGV4dHVyZU1hcHBl
clBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dwdS9UZXh0dXJlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dwdS9UZXh0dXJlLmNwcAppbmRleCA2NDJiMGQ1Li4zMWFhYTYzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RleHR1cmUuY3BwCkBAIC0z
MCw3ICszMCw3IEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKIAotI2lmIEVOQUJMRShBQ0NFTEVS
QVRFRF8yRF9DQU5WQVMpIHx8IEVOQUJMRShDU1NfU0hBREVSUykKKyNpZiBFTkFCTEUoQUNDRUxF
UkFURURfMkRfQ0FOVkFTKQogCiAjaW5jbHVkZSAiVGV4dHVyZS5oIgogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXIuaApp
bmRleCA0YzgwZDEzLi5hMGExNzFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyLmgKQEAgLTM5LDcgKzM5LDYgQEAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQml0bWFwVGV4dHVyZVBvb2w7Ci1jbGFzcyBD
dXN0b21GaWx0ZXJQcm9ncmFtOwogY2xhc3MgR3JhcGhpY3NMYXllcjsKIGNsYXNzIFRleHR1cmVN
YXBwZXI7CiBjbGFzcyBGaWx0ZXJPcGVyYXRpb25zOwpAQCAtMTU5LDEwICsxNTgsNiBAQCBwdWJs
aWM6CiAKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Qml0bWFwVGV4dHVyZT4gYWNxdWlyZVRleHR1
cmVGcm9tUG9vbChjb25zdCBJbnRTaXplJik7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0g
ICAgdmlydHVhbCB2b2lkIHJlbW92ZUNhY2hlZEN1c3RvbUZpbHRlclByb2dyYW0oQ3VzdG9tRmls
dGVyUHJvZ3JhbSopIHsgfQotI2VuZGlmCi0KICAgICB2b2lkIHNldFBhdHRlcm5UcmFuc2Zvcm0o
Y29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIHApIHsgbV9wYXR0ZXJuVHJhbnNmb3JtID0gcDsg
fQogICAgIHZvaWQgc2V0V3JhcE1vZGUoV3JhcE1vZGUgbSkgeyBtX3dyYXBNb2RlID0gbTsgfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4
dHVyZU1hcHBlckdMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9UZXh0dXJlTWFwcGVyR0wuY3BwCmluZGV4IDg0Zjc1ZjcuLjA1Yjg4NGIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJl
TWFwcGVyR0wuY3BwCkBAIC00MiwxNSArNDIsNiBAQAogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJp
bmcuaD4KICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlv
bi5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJDdXN0b21G
aWx0ZXJSZW5kZXJlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0u
aCIKLSNpbmNsdWRlICJWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNlbmRpZgot
CiAjaWYgIVVTRShURVhNQVBfT1BFTkdMX0VTXzIpCiAvLyBGSVhNRTogTW92ZSB0byBFeHRlbnNp
b25zM0QuaC4KICNkZWZpbmUgR0xfVU5TSUdORURfSU5UXzhfOF84XzhfUkVWIDB4ODM2NwpAQCAt
NDE5LDEwICs0MTAsNiBAQCBzdGF0aWMgdW5zaWduZWQgZ2V0UGFzc2VzUmVxdWlyZWRGb3JGaWx0
ZXIoRmlsdGVyT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIHR5cGUpCiAgICAgY2FzZSBGaWx0ZXJP
cGVyYXRpb246OkJSSUdIVE5FU1M6CiAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkNPTlRSQVNU
OgogICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpPUEFDSVRZOgotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOgotICAgIGNhc2UgRmlsdGVy
T3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOgotI2VuZGlmCiAgICAgICAgIHJldHVybiAxOwog
ICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpCTFVSOgogICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9u
OjpEUk9QX1NIQURPVzoKQEAgLTg3MCw2NSArODU3LDYgQEAgdm9pZCBCaXRtYXBUZXh0dXJlR0w6
OnVwZGF0ZUNvbnRlbnRzKEltYWdlKiBpbWFnZSwgY29uc3QgSW50UmVjdCYgdGFyZ2V0UmVjdCwg
Y28KICAgICB1cGRhdGVDb250ZW50cyhpbWFnZURhdGEsIHRhcmdldFJlY3QsIG9mZnNldCwgYnl0
ZXNQZXJMaW5lLCB1cGRhdGVDb250ZW50c0ZsYWcpOwogfQogCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotdm9pZCBUZXh0dXJlTWFwcGVyR0w6OnJlbW92ZUNhY2hlZEN1c3RvbUZpbHRlclByb2dy
YW0oQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSkKLXsKLSAgICBtX2N1c3RvbUZpbHRlclBy
b2dyYW1zLnJlbW92ZShwcm9ncmFtLT5wcm9ncmFtSW5mbygpKTsKLX0KLQotYm9vbCBUZXh0dXJl
TWFwcGVyR0w6OmRyYXdVc2luZ0N1c3RvbUZpbHRlcihCaXRtYXBUZXh0dXJlJiB0YXJnZXQsIGNv
bnN0IEJpdG1hcFRleHR1cmUmIHNvdXJjZSwgY29uc3QgRmlsdGVyT3BlcmF0aW9uJiBmaWx0ZXIp
Ci17Ci0gICAgUmVmUHRyPEN1c3RvbUZpbHRlclJlbmRlcmVyPiByZW5kZXJlcjsKLSAgICBzd2l0
Y2ggKGZpbHRlci50eXBlKCkpIHsKLSAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOiB7
Ci0gICAgICAgIC8vIFdlYktpdDIgcGlwZWxpbmUgaXMgdXNpbmcgdGhlIEN1c3RvbUZpbHRlck9w
ZXJhdGlvbiwgdGhhdCdzIGJlY2F1c2Ugb2YgdGhlICJkZS1zZXJpYWxpemF0aW9uIiB0aGF0Ci0g
ICAgICAgIC8vIGhhcHBlbnMgaW4gQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLgot
ICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbUZpbHRlciA9IHN0YXRp
Y19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbio+KCZmaWx0ZXIpOwotICAgICAgICBS
ZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3JhbSA9IGN1c3RvbUZpbHRlci0+cHJvZ3Jh
bSgpOwotICAgICAgICByZW5kZXJlciA9IEN1c3RvbUZpbHRlclJlbmRlcmVyOjpjcmVhdGUobV9j
b250ZXh0M0QsIHByb2dyYW0tPnByb2dyYW1UeXBlKCksIGN1c3RvbUZpbHRlci0+cGFyYW1ldGVy
cygpLCAKLSAgICAgICAgICAgIGN1c3RvbUZpbHRlci0+bWVzaFJvd3MoKSwgY3VzdG9tRmlsdGVy
LT5tZXNoQ29sdW1ucygpLCBjdXN0b21GaWx0ZXItPm1lc2hUeXBlKCkpOwotICAgICAgICBDdXN0
b21GaWx0ZXJQcm9ncmFtTWFwOjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9jdXN0b21GaWx0ZXJQcm9n
cmFtcy5hZGQocHJvZ3JhbS0+cHJvZ3JhbUluZm8oKSwgbnVsbHB0cik7Ci0gICAgICAgIGlmIChy
ZXN1bHQuaXNOZXdFbnRyeSkKLSAgICAgICAgICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUgPSBD
dXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW06OmNyZWF0ZShtX2NvbnRleHQzRCwgcHJvZ3JhbS0+
dmVydGV4U2hhZGVyU3RyaW5nKCksIHByb2dyYW0tPmZyYWdtZW50U2hhZGVyU3RyaW5nKCksIHBy
b2dyYW0tPnByb2dyYW1UeXBlKCkpOwotICAgICAgICByZW5kZXJlci0+c2V0Q29tcGlsZWRQcm9n
cmFtKHJlc3VsdC5pdGVyYXRvci0+dmFsdWUpOwotICAgICAgICBicmVhazsKLSAgICB9Ci0gICAg
Y2FzZSBGaWx0ZXJPcGVyYXRpb246OlZBTElEQVRFRF9DVVNUT006IHsKLSAgICAgICAgLy8gV2Vi
S2l0MSB1c2VzIHRoZSBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uCi0gICAgICAgIGNv
bnN0IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9tRmlsdGVyID0gc3RhdGlj
X2Nhc3Q8Y29uc3QgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oJmZpbHRlcik7Ci0g
ICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiBwcm9ncmFtID0gY3Vz
dG9tRmlsdGVyLT52YWxpZGF0ZWRQcm9ncmFtKCk7Ci0gICAgICAgIHJlbmRlcmVyID0gQ3VzdG9t
RmlsdGVyUmVuZGVyZXI6OmNyZWF0ZShtX2NvbnRleHQzRCwgcHJvZ3JhbS0+cHJvZ3JhbUluZm8o
KS5wcm9ncmFtVHlwZSgpLCBjdXN0b21GaWx0ZXItPnBhcmFtZXRlcnMoKSwKLSAgICAgICAgICAg
IGN1c3RvbUZpbHRlci0+bWVzaFJvd3MoKSwgY3VzdG9tRmlsdGVyLT5tZXNoQ29sdW1ucygpLCBj
dXN0b21GaWx0ZXItPm1lc2hUeXBlKCkpOwotICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQ29t
cGlsZWRQcm9ncmFtPiBjb21waWxlZFByb2dyYW07Ci0gICAgICAgIEN1c3RvbUZpbHRlclByb2dy
YW1NYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmFkZChwcm9n
cmFtLT5wcm9ncmFtSW5mbygpLCBudWxscHRyKTsKLSAgICAgICAgaWYgKHJlc3VsdC5pc05ld0Vu
dHJ5KQotICAgICAgICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSA9IEN1c3RvbUZpbHRlckNv
bXBpbGVkUHJvZ3JhbTo6Y3JlYXRlKG1fY29udGV4dDNELCBwcm9ncmFtLT52YWxpZGF0ZWRWZXJ0
ZXhTaGFkZXIoKSwgcHJvZ3JhbS0+dmFsaWRhdGVkRnJhZ21lbnRTaGFkZXIoKSwgcHJvZ3JhbS0+
cHJvZ3JhbUluZm8oKS5wcm9ncmFtVHlwZSgpKTsKLSAgICAgICAgcmVuZGVyZXItPnNldENvbXBp
bGVkUHJvZ3JhbShyZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsKLSAgICAgICAgYnJlYWs7Ci0gICAg
fQotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgfQotICAgIGlmICghcmVuZGVyZXIgfHwgIXJlbmRlcmVyLT5wcmVw
YXJlRm9yRHJhd2luZygpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgc3RhdGljX2Nhc3Q8
Qml0bWFwVGV4dHVyZUdMJj4odGFyZ2V0KS5pbml0aWFsaXplRGVwdGhCdWZmZXIoKTsKLSAgICBt
X2NvbnRleHQzRC0+ZW5hYmxlKEdyYXBoaWNzQ29udGV4dDNEOjpCTEVORCk7Ci0gICAgbV9jb250
ZXh0M0QtPmJsZW5kRnVuYyhHcmFwaGljc0NvbnRleHQzRDo6T05FLCBHcmFwaGljc0NvbnRleHQz
RDo6T05FX01JTlVTX1NSQ19BTFBIQSk7Ci0gICAgbV9jb250ZXh0M0QtPmVuYWJsZShHcmFwaGlj
c0NvbnRleHQzRDo6REVQVEhfVEVTVCk7Ci0gICAgbV9jb250ZXh0M0QtPmRlcHRoRnVuYyhHcmFw
aGljc0NvbnRleHQzRDo6TEVTUyk7Ci0gICAgbV9jb250ZXh0M0QtPmNsZWFyRGVwdGgoMSk7Ci0g
ICAgbV9jb250ZXh0M0QtPmRlcHRoTWFzaygxKTsKLSAgICBtX2NvbnRleHQzRC0+Y2xlYXJDb2xv
cigwLCAwLCAwLCAwKTsKLSAgICBtX2NvbnRleHQzRC0+Y2xlYXIoR3JhcGhpY3NDb250ZXh0M0Q6
OkNPTE9SX0JVRkZFUl9CSVQgfCBHcmFwaGljc0NvbnRleHQzRDo6REVQVEhfQlVGRkVSX0JJVCk7
Ci0gICAgcmVuZGVyZXItPmRyYXcoc3RhdGljX2Nhc3Q8Y29uc3QgQml0bWFwVGV4dHVyZUdMJj4o
c291cmNlKS5pZCgpLCBzb3VyY2Uuc2l6ZSgpKTsKLSAgICBtX2NvbnRleHQzRC0+ZGlzYWJsZShH
cmFwaGljc0NvbnRleHQzRDo6REVQVEhfVEVTVCk7Ci0gICAgbV9jb250ZXh0M0QtPmRpc2FibGUo
R3JhcGhpY3NDb250ZXh0M0Q6OkJMRU5EKTsKLSAgICBtX2NvbnRleHQzRC0+ZGVwdGhNYXNrKDAp
OwotICAgIHJldHVybiB0cnVlOwotfQotI2VuZGlmCi0KICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMp
CiB2b2lkIFRleHR1cmVNYXBwZXJHTDo6ZHJhd0ZpbHRlcmVkKGNvbnN0IEJpdG1hcFRleHR1cmUm
IHNhbXBsZXIsIGNvbnN0IEJpdG1hcFRleHR1cmUqIGNvbnRlbnRUZXh0dXJlLCBjb25zdCBGaWx0
ZXJPcGVyYXRpb24mIGZpbHRlciwgaW50IHBhc3MpCiB7CkBAIC05NDIsMTUgKzg3MCw2IEBAIHZv
aWQgVGV4dHVyZU1hcHBlckdMOjpkcmF3RmlsdGVyZWQoY29uc3QgQml0bWFwVGV4dHVyZSYgc2Ft
cGxlciwgY29uc3QgQml0bWFwVGV4CiAgICAgZHJhd1RleHR1cmVkUXVhZFdpdGhQcm9ncmFtKHBy
b2dyYW0uZ2V0KCksIHN0YXRpY19jYXN0PGNvbnN0IEJpdG1hcFRleHR1cmVHTCY+KHNhbXBsZXIp
LmlkKCksIDAsIEludFNpemUoMSwgMSksIHRhcmdldFJlY3QsIFRyYW5zZm9ybWF0aW9uTWF0cml4
KCksIDEpOwogfQogCi1zdGF0aWMgYm9vbCBpc0N1c3RvbUZpbHRlcihGaWx0ZXJPcGVyYXRpb246
Ok9wZXJhdGlvblR5cGUgdHlwZSkKLXsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgcmV0
dXJuIHR5cGUgPT0gRmlsdGVyT3BlcmF0aW9uOjpDVVNUT00gfHwgdHlwZSA9PSBGaWx0ZXJPcGVy
YXRpb246OlZBTElEQVRFRF9DVVNUT007Ci0jZWxzZQotICAgIHJldHVybiBmYWxzZTsKLSNlbmRp
ZgotfQotCiBQYXNzUmVmUHRyPEJpdG1hcFRleHR1cmU+IEJpdG1hcFRleHR1cmVHTDo6YXBwbHlG
aWx0ZXJzKFRleHR1cmVNYXBwZXIqIHRleHR1cmVNYXBwZXIsIGNvbnN0IEZpbHRlck9wZXJhdGlv
bnMmIGZpbHRlcnMpCiB7CiAgICAgaWYgKGZpbHRlcnMuaXNFbXB0eSgpKQpAQCAtOTY4LDI0ICs4
ODcsMTUgQEAgUGFzc1JlZlB0cjxCaXRtYXBUZXh0dXJlPiBCaXRtYXBUZXh0dXJlR0w6OmFwcGx5
RmlsdGVycyhUZXh0dXJlTWFwcGVyKiB0ZXh0dXJlTWEKICAgICAgICAgUmVmUHRyPEZpbHRlck9w
ZXJhdGlvbj4gZmlsdGVyID0gZmlsdGVycy5vcGVyYXRpb25zKClbaV07CiAgICAgICAgIEFTU0VS
VChmaWx0ZXIpOwogCi0gICAgICAgIGJvb2wgY3VzdG9tID0gaXNDdXN0b21GaWx0ZXIoZmlsdGVy
LT50eXBlKCkpOwotCiAgICAgICAgIGludCBudW1QYXNzZXMgPSBnZXRQYXNzZXNSZXF1aXJlZEZv
ckZpbHRlcihmaWx0ZXItPnR5cGUoKSk7CiAgICAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgbnVt
UGFzc2VzOyArK2opIHsKICAgICAgICAgICAgIGJvb2wgbGFzdCA9IChpID09IGZpbHRlcnMuc2l6
ZSgpIC0gMSkgJiYgKGogPT0gbnVtUGFzc2VzIC0gMSk7Ci0gICAgICAgICAgICBpZiAoY3VzdG9t
IHx8ICFsYXN0KSB7CisgICAgICAgICAgICBpZiAoIWxhc3QpIHsKICAgICAgICAgICAgICAgICBp
ZiAoIWludGVybWVkaWF0ZVN1cmZhY2UpCiAgICAgICAgICAgICAgICAgICAgIGludGVybWVkaWF0
ZVN1cmZhY2UgPSB0ZXhtYXBHTC0+YWNxdWlyZVRleHR1cmVGcm9tUG9vbChjb250ZW50U2l6ZSgp
KTsKICAgICAgICAgICAgICAgICB0ZXhtYXBHTC0+YmluZFN1cmZhY2UoaW50ZXJtZWRpYXRlU3Vy
ZmFjZS5nZXQoKSk7CiAgICAgICAgICAgICB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0g
ICAgICAgICAgICBpZiAoY3VzdG9tKSB7Ci0gICAgICAgICAgICAgICAgaWYgKHRleG1hcEdMLT5k
cmF3VXNpbmdDdXN0b21GaWx0ZXIoKmludGVybWVkaWF0ZVN1cmZhY2UuZ2V0KCksICpyZXN1bHRT
dXJmYWNlLmdldCgpLCAqZmlsdGVyKSkKLSAgICAgICAgICAgICAgICAgICAgc3RkOjpzd2FwKHJl
c3VsdFN1cmZhY2UsIGludGVybWVkaWF0ZVN1cmZhY2UpOwotICAgICAgICAgICAgICAgIGNvbnRp
bnVlOwotICAgICAgICAgICAgfQotI2VuZGlmCiAgICAgICAgICAgICBpZiAobGFzdCkgewogICAg
ICAgICAgICAgICAgIHRvQml0bWFwVGV4dHVyZUdMKHJlc3VsdFN1cmZhY2UuZ2V0KCkpLT5tX2Zp
bHRlckluZm8gPSBCaXRtYXBUZXh0dXJlR0w6OkZpbHRlckluZm8oZmlsdGVyLCBqLCBzcGFyZVN1
cmZhY2UpOwogICAgICAgICAgICAgICAgIGJyZWFrOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5oCmluZGV4IDYx
Y2ExNGEuLjA4MTQwM2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckdMLmgKQEAgLTIyLDcgKzIyLDYgQEAKIAog
I2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykgJiYgVVNFKFRFWFRVUkVfTUFQUEVSKQog
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKICNpbmNsdWRlICJGaWx0ZXJP
cGVyYXRpb24uaCIKICNpbmNsdWRlICJGbG9hdFF1YWQuaCIKICNpbmNsdWRlICJHcmFwaGljc0Nv
bnRleHQzRC5oIgpAQCAtMzIsOCArMzEsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNs
YXNzIEN1c3RvbUZpbHRlclByb2dyYW07Ci1jbGFzcyBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dy
YW07CiBjbGFzcyBUZXh0dXJlTWFwcGVyR0xEYXRhOwogY2xhc3MgVGV4dHVyZU1hcHBlclNoYWRl
clByb2dyYW07CiBjbGFzcyBGaWx0ZXJPcGVyYXRpb247CkBAIC03MywxMCArNzAsNiBAQCBwdWJs
aWM6CiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQogICAgIHZvaWQgZHJhd0ZpbHRlcmVkKGNvbnN0
IEJpdG1hcFRleHR1cmUmIHNvdXJjZVRleHR1cmUsIGNvbnN0IEJpdG1hcFRleHR1cmUqIGNvbnRl
bnRUZXh0dXJlLCBjb25zdCBGaWx0ZXJPcGVyYXRpb24mLCBpbnQgcGFzcyk7CiAjZW5kaWYKLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgYm9vbCBkcmF3VXNpbmdDdXN0b21GaWx0ZXIoQml0
bWFwVGV4dHVyZSYgdGFyZ2V0VGV4dHVyZSwgY29uc3QgQml0bWFwVGV4dHVyZSYgc291cmNlVGV4
dHVyZSwgY29uc3QgRmlsdGVyT3BlcmF0aW9uJik7Ci0gICAgdmlydHVhbCB2b2lkIHJlbW92ZUNh
Y2hlZEN1c3RvbUZpbHRlclByb2dyYW0oQ3VzdG9tRmlsdGVyUHJvZ3JhbSopOwotI2VuZGlmCiAK
ICAgICB2b2lkIHNldEVuYWJsZUVkZ2VEaXN0YW5jZUFudGlhbGlhc2luZyhib29sIGVuYWJsZWQp
IHsgbV9lbmFibGVFZGdlRGlzdGFuY2VBbnRpYWxpYXNpbmcgPSBlbmFibGVkOyB9CiAKQEAgLTE0
NCwxMSArMTM3LDYgQEAgcHJpdmF0ZToKICAgICBDbGlwU3RhY2sgbV9jbGlwU3RhY2s7CiAgICAg
Ym9vbCBtX2VuYWJsZUVkZ2VEaXN0YW5jZUFudGlhbGlhc2luZzsKIAotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICB0eXBlZGVmIEhhc2hNYXA8Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8sIFJl
ZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+ID4gQ3VzdG9tRmlsdGVyUHJvZ3JhbU1h
cDsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtTWFwIG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXM7Ci0j
ZW5kaWYKLQogICAgIGZyaWVuZCBjbGFzcyBCaXRtYXBUZXh0dXJlR0w7CiB9OwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQv
Q29tcG9zaXRpbmdDb29yZGluYXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29tcG9zaXRpbmdDb29yZGluYXRvci5jcHAKaW5kZXgg
MThlYzVlYS4uMmI1YjExOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0NvbXBvc2l0aW5nQ29vcmRpbmF0b3IuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db21w
b3NpdGluZ0Nvb3JkaW5hdG9yLmNwcApAQCAtMTU5LDExICsxNTksNiBAQCB2b2lkIENvbXBvc2l0
aW5nQ29vcmRpbmF0b3I6OmNsZWFyUGVuZGluZ1N0YXRlQ2hhbmdlcygpCiAKICAgICBtX3N0YXRl
LnVwZGF0ZUF0bGFzZXNUb0NyZWF0ZS5jbGVhcigpOwogICAgIG1fc3RhdGUudXBkYXRlQXRsYXNl
c1RvUmVtb3ZlLmNsZWFyKCk7Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgbV9zdGF0
ZS5jdXN0b21GaWx0ZXJzVG9DcmVhdGUuY2xlYXIoKTsKLSAgICBtX3N0YXRlLmN1c3RvbUZpbHRl
cnNUb1JlbW92ZS5jbGVhcigpOwotI2VuZGlmCiB9CiAKIHZvaWQgQ29tcG9zaXRpbmdDb29yZGlu
YXRvcjo6aW5pdGlhbGl6ZVJvb3RDb21wb3NpdGluZ0xheWVySWZOZWVkZWQoKQpAQCAtMTkxLDcg
KzE4Niw2IEBAIHZvaWQgQ29tcG9zaXRpbmdDb29yZGluYXRvcjo6Y3JlYXRlUm9vdExheWVyKGNv
bnN0IEludFNpemUmIHNpemUpCiB2b2lkIENvbXBvc2l0aW5nQ29vcmRpbmF0b3I6OnN5bmNMYXll
clN0YXRlKENvb3JkaW5hdGVkTGF5ZXJJRCBpZCwgQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyU3Rh
dGUmIHN0YXRlKQogewogICAgIG1fc2hvdWxkU3luY0ZyYW1lID0gdHJ1ZTsKLSAgICBtX2NsaWVu
dC0+d2lsbFN5bmNMYXllclN0YXRlKHN0YXRlKTsKICAgICBtX3N0YXRlLmxheWVyc1RvVXBkYXRl
LmFwcGVuZChzdGQ6Om1ha2VfcGFpcihpZCwgc3RhdGUpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0NvbXBvc2l0
aW5nQ29vcmRpbmF0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9jb29yZGluYXRlZC9Db21wb3NpdGluZ0Nvb3JkaW5hdG9yLmgKaW5kZXggNmZkMTlmZC4uODRi
ODUzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFw
L2Nvb3JkaW5hdGVkL0NvbXBvc2l0aW5nQ29vcmRpbmF0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29tcG9zaXRpbmdDb29yZGlu
YXRvci5oCkBAIC0zOSwxMCArMzksNiBAQAogI2luY2x1ZGUgIlRpbWVyLmgiCiAjaW5jbHVkZSAi
VXBkYXRlQXRsYXMuaCIKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJGaWx0
ZXJPcGVyYXRpb25zLmgiCi0jZW5kaWYKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBQ
YWdlOwpAQCAtNjAsNyArNTYsNiBAQCBwdWJsaWM6CiAgICAgY2xhc3MgQ2xpZW50IHsKICAgICBw
dWJsaWM6CiAgICAgICAgIHZpcnR1YWwgdm9pZCBkaWRGbHVzaFJvb3RMYXllcigpID0gMDsKLSAg
ICAgICAgdmlydHVhbCB2b2lkIHdpbGxTeW5jTGF5ZXJTdGF0ZShDb29yZGluYXRlZEdyYXBoaWNz
TGF5ZXJTdGF0ZSYpID0gMDsKICAgICAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZsdXNoUmVxdWly
ZWQoKSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBjb21taXRTY2VuZVN0YXRlKGNvbnN0IENv
b3JkaW5hdGVkR3JhcGhpY3NTdGF0ZSYpID0gMDsKICAgICAgICAgdmlydHVhbCB2b2lkIHBhaW50
TGF5ZXJDb250ZW50cyhjb25zdCBHcmFwaGljc0xheWVyKiwgR3JhcGhpY3NDb250ZXh0JiwgY29u
c3QgSW50UmVjdCYgY2xpcFJlY3QpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEN1c3RvbUZpbHRl
ck9wZXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nv
b3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDE3YTcxODIuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2NiArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoK
LSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICog
ICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNV
Q0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRp
b25faAotI2RlZmluZSBDb29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbl9oCi0KLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0K
LW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotLy8gVGhpcyBjbGFzcyBpcyBvbmx5IGFkZGluZyB0aGUg
cHJvZ3JhbUlkIG9uIHRvcCBvZiBDdXN0b21GaWx0ZXJPcGVyYXRpb24uIFRoZSBhcmd1bWVudCBk
ZWNvZGVyIGhhcyBubwotLy8gY29udGV4dCwgc28gd2UgY2Fubm90IHNlYXJjaCBpbiBvdXIgY2Fj
aGVkIEN1c3RvbUZpbHRlclByb2dyYW1zIHdoaWxlIGRlY29kaW5nLiBJbiB0aGF0IGNhc2UKLS8v
IGl0IHdpbGwganVzdCBzdG9yZSB0aGUgcHJvZ3JhbUlkIGFuZCBubyBDdXN0b21GaWx0ZXJQcm9n
cmFtIGluc3RhbmNlLiBUaGUgcmVjZWl2ZXIgaXMgc3VwcG9zZWQgdG8KLS8vIGl0ZXJhdGUgb24g
dGhpcyBzdHJ1Y3R1cmUgYW5kIGluamVjdCB0aGUgcmlnaHQgQ3VzdG9tRmlsdGVyUHJvZ3JhbXMu
Ci0KLWNsYXNzIENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIDogcHVibGljIEN1c3Rv
bUZpbHRlck9wZXJhdGlvbiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8Q29vcmRp
bmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24+IGNyZWF0ZShQYXNzUmVmUHRyPEN1c3RvbUZpbHRl
clByb2dyYW0+IHByb2dyYW0sIGludCBwcm9ncmFtSUQsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3QmIHNvcnRlZFBhcmFtZXRlcnMsIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBt
ZXNoQ29sdW1ucykKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgQ29vcmRpbmF0
ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24ocHJvZ3JhbSwgcHJvZ3JhbUlELCBzb3J0ZWRQYXJhbWV0
ZXJzLCBtZXNoUm93cywgbWVzaENvbHVtbnMpKTsKLSAgICB9Ci0KLSAgICBpbnQgcHJvZ3JhbUlE
KCkgY29uc3QgeyByZXR1cm4gbV9wcm9ncmFtSUQ7IH0KLQotcHJpdmF0ZToKLSAgICBDb29yZGlu
YXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbihQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+
IHByb2dyYW0sIGludCBwcm9ncmFtSUQsIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3Qm
IHNvcnRlZFBhcmFtZXRlcnMsIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1u
cykKLSAgICAgICAgOiBDdXN0b21GaWx0ZXJPcGVyYXRpb24ocHJvZ3JhbSwgc29ydGVkUGFyYW1l
dGVycywgbWVzaFJvd3MsIG1lc2hDb2x1bW5zKQotICAgICAgICAsIG1fcHJvZ3JhbUlEKHByb2dy
YW1JRCkKLSAgICB7Ci0gICAgfQotCi0gICAgaW50IG1fcHJvZ3JhbUlEOwotfTsKLQotfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5k
aWYgLy8gQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb25faApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5h
dGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMzRhYTU2Li4wMDAwMDAwCi0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRl
ZEN1c3RvbUZpbHRlclByb2dyYW0uaAorKysgL2Rldi9udWxsCkBAIC0xLDY3ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQ29tcGFueSAxMDAsIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDb29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW1f
aAotI2RlZmluZSBDb29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW1faAotCi0jaWYgVVNFKENP
T1JESU5BVEVEX0dSQVBISUNTKSAmJiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3Vz
dG9tRmlsdGVyQ29uc3RhbnRzLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgot
Ci1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJv
Z3JhbSA6IHB1YmxpYyBDdXN0b21GaWx0ZXJQcm9ncmFtIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMg
UGFzc1JlZlB0cjxDb29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW0+IGNyZWF0ZShjb25zdCBT
dHJpbmcmIHZlcnRleFNoYWRlclN0cmluZywgY29uc3QgU3RyaW5nJiBmcmFnbWVudFNoYWRlclN0
cmluZywgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZp
bHRlclByb2dyYW1NaXhTZXR0aW5ncyYgbWl4U2V0dGluZ3MsIEN1c3RvbUZpbHRlck1lc2hUeXBl
IG1lc2hUeXBlKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDb29yZGluYXRl
ZEN1c3RvbUZpbHRlclByb2dyYW0odmVydGV4U2hhZGVyU3RyaW5nLCBmcmFnbWVudFNoYWRlclN0
cmluZywgcHJvZ3JhbVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSkpOwotICAgIH0KLQotICAg
IHZpcnR1YWwgYm9vbCBpc0xvYWRlZCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHRydWU7IH0K
LQotcHJvdGVjdGVkOgotICAgIHZpcnR1YWwgU3RyaW5nIHZlcnRleFNoYWRlclN0cmluZygpIGNv
bnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fdmVydGV4U2hhZGVyU3RyaW5nOyB9Ci0gICAgdmlydHVh
bCBTdHJpbmcgZnJhZ21lbnRTaGFkZXJTdHJpbmcoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBt
X2ZyYWdtZW50U2hhZGVyU3RyaW5nOyB9Ci0KLSAgICB2aXJ0dWFsIHZvaWQgd2lsbEhhdmVDbGll
bnRzKCkgb3ZlcnJpZGUgeyBub3RpZnlDbGllbnRzKCk7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZGlk
UmVtb3ZlTGFzdENsaWVudCgpIG92ZXJyaWRlIHsgfQotCi1wcml2YXRlOgotICAgIENvb3JkaW5h
dGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbShjb25zdCBTdHJpbmcmIHZlcnRleFNoYWRlclN0cmluZywg
Y29uc3QgU3RyaW5nJiBmcmFnbWVudFNoYWRlclN0cmluZywgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5
cGUgcHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyYgbWl4
U2V0dGluZ3MsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQotICAgICAgICA6IEN1c3Rv
bUZpbHRlclByb2dyYW0ocHJvZ3JhbVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSkKLSAgICAg
ICAgLCBtX3ZlcnRleFNoYWRlclN0cmluZyh2ZXJ0ZXhTaGFkZXJTdHJpbmcpCi0gICAgICAgICwg
bV9mcmFnbWVudFNoYWRlclN0cmluZyhmcmFnbWVudFNoYWRlclN0cmluZykKLSAgICB7Ci0gICAg
fQotCi0gICAgU3RyaW5nIG1fdmVydGV4U2hhZGVyU3RyaW5nOwotICAgIFN0cmluZyBtX2ZyYWdt
ZW50U2hhZGVyU3RyaW5nOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKSAmJiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNl
bmRpZiAvLyBDb29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW1faApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5h
dGVkR3JhcGhpY3NTY2VuZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90
ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcAppbmRleCA4NjYy
Nzg4Li4zN2NjNWQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRp
bmF0ZWRHcmFwaGljc1NjZW5lLmNwcApAQCAtMzIsMTMgKzMyLDYgQEAKICNpbmNsdWRlIDx3dGYv
QXRvbWljcy5oPgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0jaW5jbHVkZSAiQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIK
LSNpbmNsdWRlICJDb29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJD
dXN0b21GaWx0ZXJQcm9ncmFtLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8u
aCIKLSNlbmRpZgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHZvaWQgQ29vcmRpbmF0ZWRHcmFw
aGljc1NjZW5lOjpkaXNwYXRjaE9uTWFpblRocmVhZChjb25zdCBGdW5jdGlvbjx2b2lkKCk+JiBm
dW5jdGlvbikKQEAgLTIyOSw1NCArMjIyLDEwIEBAIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1Nj
ZW5lOjpzZXRMYXllckZpbHRlcnNJZk5lZWRlZChUZXh0dXJlTWFwcGVyTGF5ZXIqIGxheWVyCiAg
ICAgaWYgKCFzdGF0ZS5maWx0ZXJzQ2hhbmdlZCkKICAgICAgICAgcmV0dXJuOwogCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgIGluamVjdENhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zKHN0
YXRlLmZpbHRlcnMpOwotI2VuZGlmCiAgICAgbGF5ZXItPnNldEZpbHRlcnMoc3RhdGUuZmlsdGVy
cyk7CiB9CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLXZvaWQgQ29vcmRpbmF0
ZWRHcmFwaGljc1NjZW5lOjpzeW5jQ3VzdG9tRmlsdGVyUHJvZ3JhbXMoY29uc3QgQ29vcmRpbmF0
ZWRHcmFwaGljc1N0YXRlJiBzdGF0ZSkKLXsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0
YXRlLmN1c3RvbUZpbHRlcnNUb0NyZWF0ZS5zaXplKCk7ICsraSkKLSAgICAgICAgY3JlYXRlQ3Vz
dG9tRmlsdGVyUHJvZ3JhbShzdGF0ZS5jdXN0b21GaWx0ZXJzVG9DcmVhdGVbaV0uZmlyc3QsIHN0
YXRlLmN1c3RvbUZpbHRlcnNUb0NyZWF0ZVtpXS5zZWNvbmQpOwotCi0gICAgZm9yIChzaXplX3Qg
aSA9IDA7IGkgPCBzdGF0ZS5jdXN0b21GaWx0ZXJzVG9SZW1vdmUuc2l6ZSgpOyArK2kpCi0gICAg
ICAgIHJlbW92ZUN1c3RvbUZpbHRlclByb2dyYW0oc3RhdGUuY3VzdG9tRmlsdGVyc1RvUmVtb3Zl
W2ldKTsKLX0KLQotdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmluamVjdENhY2hlZEN1
c3RvbUZpbHRlclByb2dyYW1zKGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlcnMpIGNvbnN0
Ci17Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBmaWx0ZXJzLnNpemUoKTsgKytpKSB7Ci0g
ICAgICAgIEZpbHRlck9wZXJhdGlvbiogb3BlcmF0aW9uID0gZmlsdGVycy5vcGVyYXRpb25zKCku
YXQoaSkuZ2V0KCk7Ci0gICAgICAgIGlmIChvcGVyYXRpb24tPnR5cGUoKSAhPSBGaWx0ZXJPcGVy
YXRpb246OkNVU1RPTSkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIENvb3JkaW5h
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKiBjdXN0b21PcGVyYXRpb24gPSBzdGF0aWNfY2FzdDxD
b29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbio+KG9wZXJhdGlvbik7Ci0gICAgICAgIEFT
U0VSVCghY3VzdG9tT3BlcmF0aW9uLT5wcm9ncmFtKCkpOwotICAgICAgICBDdXN0b21GaWx0ZXJQ
cm9ncmFtTWFwOjpjb25zdF9pdGVyYXRvciBpdGVyID0gbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5m
aW5kKGN1c3RvbU9wZXJhdGlvbi0+cHJvZ3JhbUlEKCkpOwotICAgICAgICBBU1NFUlQoaXRlciAh
PSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmVuZCgpKTsKLSAgICAgICAgY3VzdG9tT3BlcmF0aW9u
LT5zZXRQcm9ncmFtKGl0ZXItPnZhbHVlLmdldCgpKTsKLSAgICB9Ci19Ci0KLXZvaWQgQ29vcmRp
bmF0ZWRHcmFwaGljc1NjZW5lOjpjcmVhdGVDdXN0b21GaWx0ZXJQcm9ncmFtKGludCBpZCwgY29u
c3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvKQotewotICAgIEFTU0VSVCgh
bV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5jb250YWlucyhpZCkpOwotICAgIG1fY3VzdG9tRmlsdGVy
UHJvZ3JhbXMuc2V0KGlkLCBDb29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW06OmNyZWF0ZShw
cm9ncmFtSW5mby52ZXJ0ZXhTaGFkZXJTdHJpbmcoKSwgcHJvZ3JhbUluZm8uZnJhZ21lbnRTaGFk
ZXJTdHJpbmcoKSwgcHJvZ3JhbUluZm8ucHJvZ3JhbVR5cGUoKSwgcHJvZ3JhbUluZm8ubWl4U2V0
dGluZ3MoKSwgcHJvZ3JhbUluZm8ubWVzaFR5cGUoKSkpOwotfQotCi12b2lkIENvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZTo6cmVtb3ZlQ3VzdG9tRmlsdGVyUHJvZ3JhbShpbnQgaWQpCi17Ci0gICAg
Q3VzdG9tRmlsdGVyUHJvZ3JhbU1hcDo6aXRlcmF0b3IgaXRlciA9IG1fY3VzdG9tRmlsdGVyUHJv
Z3JhbXMuZmluZChpZCk7Ci0gICAgQVNTRVJUKGl0ZXIgIT0gbV9jdXN0b21GaWx0ZXJQcm9ncmFt
cy5lbmQoKSk7Ci0gICAgaWYgKG1fdGV4dHVyZU1hcHBlcikKLSAgICAgICAgbV90ZXh0dXJlTWFw
cGVyLT5yZW1vdmVDYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtKGl0ZXItPnZhbHVlLmdldCgpKTsK
LSAgICBtX2N1c3RvbUZpbHRlclByb2dyYW1zLnJlbW92ZShpdGVyKTsKLX0KLSNlbmRpZiAvLyBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0KIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpzZXRM
YXllclN0YXRlKENvb3JkaW5hdGVkTGF5ZXJJRCBpZCwgY29uc3QgQ29vcmRpbmF0ZWRHcmFwaGlj
c0xheWVyU3RhdGUmIGxheWVyU3RhdGUpCiB7CiAgICAgQVNTRVJUKG1fcm9vdExheWVySUQgIT0g
SW52YWxpZENvb3JkaW5hdGVkTGF5ZXJJRCk7CkBAIC02MTksOSArNTY4LDYgQEAgdm9pZCBDb29y
ZGluYXRlZEdyYXBoaWNzU2NlbmU6OmNvbW1pdFNjZW5lU3RhdGUoY29uc3QgQ29vcmRpbmF0ZWRH
cmFwaGljc1N0YXRlJgogCiAgICAgc3luY0ltYWdlQmFja2luZ3Moc3RhdGUpOwogICAgIHN5bmNV
cGRhdGVBdGxhc2VzKHN0YXRlKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgc3luY0N1
c3RvbUZpbHRlclByb2dyYW1zKHN0YXRlKTsKLSNlbmRpZgogCiAgICAgZm9yIChzaXplX3QgaSA9
IDA7IGkgPCBzdGF0ZS5sYXllcnNUb1VwZGF0ZS5zaXplKCk7ICsraSkKICAgICAgICAgc2V0TGF5
ZXJTdGF0ZShzdGF0ZS5sYXllcnNUb1VwZGF0ZVtpXS5maXJzdCwgc3RhdGUubGF5ZXJzVG9VcGRh
dGVbaV0uc2Vjb25kKTsKQEAgLTcxNSwxNyArNjYxLDYgQEAgdm9pZCBDb29yZGluYXRlZEdyYXBo
aWNzU2NlbmU6OnNldExheWVyQW5pbWF0aW9uc0lmTmVlZGVkKFRleHR1cmVNYXBwZXJMYXllciog
bGEKICAgICBpZiAoIXN0YXRlLmFuaW1hdGlvbnNDaGFuZ2VkKQogICAgICAgICByZXR1cm47CiAK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdGF0
ZS5hbmltYXRpb25zLmFuaW1hdGlvbnMoKS5zaXplKCk7ICsraSkgewotICAgICAgICBjb25zdCBL
ZXlmcmFtZVZhbHVlTGlzdCYga2V5ZnJhbWVzID0gc3RhdGUuYW5pbWF0aW9ucy5hbmltYXRpb25z
KCkuYXQoaSkua2V5ZnJhbWVzKCk7Ci0gICAgICAgIGlmIChrZXlmcmFtZXMucHJvcGVydHkoKSAh
PSBBbmltYXRlZFByb3BlcnR5V2Via2l0RmlsdGVyKQotICAgICAgICAgICAgY29udGludWU7Ci0g
ICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwga2V5ZnJhbWVzLnNpemUoKTsgKytqKSB7Ci0g
ICAgICAgICAgICBjb25zdCBGaWx0ZXJBbmltYXRpb25WYWx1ZSYgZmlsdGVyVmFsdWUgPSBzdGF0
aWNfY2FzdDxjb25zdCBGaWx0ZXJBbmltYXRpb25WYWx1ZSY+KGtleWZyYW1lcy5hdChqKSk7Ci0g
ICAgICAgICAgICBpbmplY3RDYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtcyhmaWx0ZXJWYWx1ZS52
YWx1ZSgpKTsKLSAgICAgICAgfQotICAgIH0KLSNlbmRpZgogICAgIGxheWVyLT5zZXRBbmltYXRp
b25zKHN0YXRlLmFuaW1hdGlvbnMpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1Nj
ZW5lLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0
ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmgKaW5kZXggMDdjZDU2My4uMDI1ZGQxZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5h
dGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUu
aApAQCAtNDcsOCArNDcsNiBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBDb29yZGlu
YXRlZEJhY2tpbmdTdG9yZTsKLWNsYXNzIEN1c3RvbUZpbHRlclByb2dyYW07Ci1jbGFzcyBDdXN0
b21GaWx0ZXJQcm9ncmFtSW5mbzsKIAogY2xhc3MgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lQ2xp
ZW50IHsKIHB1YmxpYzoKQEAgLTExNSwxMyArMTEzLDYgQEAgcHJpdmF0ZToKICAgICB2b2lkIGNs
ZWFySW1hZ2VCYWNraW5nQ29udGVudHMoQ29vcmRpbmF0ZWRJbWFnZUJhY2tpbmdJRCk7CiAgICAg
dm9pZCByZW1vdmVJbWFnZUJhY2tpbmcoQ29vcmRpbmF0ZWRJbWFnZUJhY2tpbmdJRCk7CiAKLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgdm9pZCBzeW5jQ3VzdG9tRmlsdGVyUHJvZ3JhbXMo
Y29uc3QgQ29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlJik7Ci0gICAgdm9pZCBpbmplY3RDYWNoZWRD
dXN0b21GaWx0ZXJQcm9ncmFtcyhjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiBmaWx0ZXJzKSBjb25z
dDsKLSAgICB2b2lkIGNyZWF0ZUN1c3RvbUZpbHRlclByb2dyYW0oaW50IGlkLCBjb25zdCBDdXN0
b21GaWx0ZXJQcm9ncmFtSW5mbyYpOwotICAgIHZvaWQgcmVtb3ZlQ3VzdG9tRmlsdGVyUHJvZ3Jh
bShpbnQgaWQpOwotI2VuZGlmCi0KICAgICBUZXh0dXJlTWFwcGVyTGF5ZXIqIGxheWVyQnlJRChD
b29yZGluYXRlZExheWVySUQgaWQpCiAgICAgewogICAgICAgICBBU1NFUlQobV9sYXllcnMuY29u
dGFpbnMoaWQpKTsKQEAgLTE5MywxMSArMTg0LDYgQEAgcHJpdmF0ZToKICAgICBDb2xvciBtX2Jh
Y2tncm91bmRDb2xvcjsKICAgICBib29sIG1fc2V0RHJhd3NCYWNrZ3JvdW5kOwogCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgIHR5cGVkZWYgSGFzaE1hcDxpbnQsIFJlZlB0cjxDdXN0b21G
aWx0ZXJQcm9ncmFtPiA+IEN1c3RvbUZpbHRlclByb2dyYW1NYXA7Ci0gICAgQ3VzdG9tRmlsdGVy
UHJvZ3JhbU1hcCBtX2N1c3RvbUZpbHRlclByb2dyYW1zOwotI2VuZGlmCi0KICAgICBUZXh0dXJl
TWFwcGVyRlBTQ291bnRlciBtX2Zwc0NvdW50ZXI7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRH
cmFwaGljc1N0YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAv
Y29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlLmgKaW5kZXggNTQ0NWU2Mi4uYzJj
MmNmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFw
L2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBo
aWNzU3RhdGUuaApAQCAtNDIsMTAgKzQyLDYgQEAKICNpbmNsdWRlICJGaWx0ZXJPcGVyYXRpb25z
LmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfRklMVEVSUykKLSNpbmNsdWRlICJDdXN0b21G
aWx0ZXJQcm9ncmFtSW5mby5oIgotI2VuZGlmCi0KICNpZiBVU0UoR1JBUEhJQ1NfU1VSRkFDRSkK
ICNpbmNsdWRlICJHcmFwaGljc1N1cmZhY2UuaCIKICNpbmNsdWRlICJHcmFwaGljc1N1cmZhY2VU
b2tlbi5oIgpAQCAtMTk4LDExICsxOTQsNiBAQCBzdHJ1Y3QgQ29vcmRpbmF0ZWRHcmFwaGljc1N0
YXRlIHsKIAogICAgIFZlY3RvcjxzdGQ6OnBhaXI8dWludDMyX3QgLyogYXRsYXNJRCAqLywgUmVm
UHRyPENvb3JkaW5hdGVkU3VyZmFjZT4gPiA+IHVwZGF0ZUF0bGFzZXNUb0NyZWF0ZTsKICAgICBW
ZWN0b3I8dWludDMyX3QgLyogYXRsYXNJRCAqLz4gdXBkYXRlQXRsYXNlc1RvUmVtb3ZlOwotCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIFZlY3RvcjxzdGQ6OnBhaXI8dWludDMyX3QgLyog
RmlsdGVySUQgKi8sIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvPiA+IGN1c3RvbUZpbHRlcnNUb0Ny
ZWF0ZTsKLSAgICBWZWN0b3I8dWludDMyX3Q+IGN1c3RvbUZpbHRlcnNUb1JlbW92ZTsKLSNlbmRp
ZgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL2FyLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L2FyLnBvCmluZGV4IDVlNGFhZjAuLjU4NWVjYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9hci5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vYXIucG8KQEAgLTE3MzQsMTYgKzE3MzQsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVy
IG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1z
Z2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgItmB2LnZkdmEINmF2LHYp9is2LkgWFNT
IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNn
c3RyICLZhdinINil2LDYpyDYs9mK2YHYudmEINmE2LXZgiBET00iCi0KICM6IC4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxl
IGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2FzLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL2FzLnBvCmluZGV4IGJjZDgyMjkuLjc4NmY4NjcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9hcy5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vYXMucG8KQEAgLTE3MTcsMTQgKzE3MTcsNiBAQCBtc2dzdHIgIuCmruCmvuCm
p+CnjeCmr+CmriDgpqrgp43gprLgp4fgpqzgp4fgppXgp4cg4KaH4Kao4Kay4Ka+4KaH4Kao4Kew
IOCmheCmqAogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1z
Z3N0ciAi4Kau4Ka+4Kan4KeN4Kav4KauIOCmquCnjeCmsuCnh+CmrOCnh+CmleCnhyDgpofgpqjg
prLgpr7gpofgpqjgp7Ag4KaF4Kao4KeB4Kau4Kak4Ka/IOCmpuCmv+Cnn+CnhyDgpqjgp4ciCiAK
LSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5
OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUyDgprbgp4fgpofgpqHg
pr7gp7Dgprjgpq7gp4Lgprkg4Ka44Ka+4Kau4Kew4KeN4Kal4Kas4Ka+4KaoIOCmleCnsOCmlSIK
LQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
Ojk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJjc3Mg
4Ka24KeH4KaH4Kah4Ka+4Kew4Ka44Kau4KeC4Ka5IOCmuOCmvuCmruCnsOCnjeCmpeCmrOCmvuCm
qCDgppXgp7Dgpr4g4Ka54KasIOCmqOCnhyIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBv
ZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICLgpoXgprjgp4Hgp7DgppXgp43gprfgpr/gpqQg
4Ka44Kau4Kay4KewIOCmquCnjeCnsOCmpuCnsOCnjeCmtuCmqCDgprjgpr7gpq7gp7Dgp43gpqXg
pqzgpr7gpqgg4KaV4Kew4KaVIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2JnLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2JnLnBvCmluZGV4
IDMyYTJlZDQuLmMwM2YzZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9iZy5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYmcucG8KQEAg
LTE3NjAsMTYgKzE3NjAsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXli
YWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUg
Q1NTIHNoYWRlcnMiCi1tc2dzdHIgItCS0LrQu9GO0YfQstCw0L3QtSDQvdCwINC/0YDQvtCy0LXR
gNC60LAg0LfQsCBYU1MiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3Nz
IHNoYWRlcnMiCi1tc2dzdHIgItCU0LDQu9C4INC00LAg0YHQtSDQstC60LvRjtGH0Lgg0LLRitC3
0LzQvtC20L3QvtGB0YLRgtCwINC30LAg0L/QvtGB0YLQsNCy0Y/QvdC1INCyIERPTSIKLQogIzog
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1z
Z2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vY3MucG8gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vY3MucG8KaW5kZXggYjg3YjFjOC4uMWI0Yjk5MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2NzLnBvCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9jcy5wbwpAQCAtMTc0MywxNiArMTc0Myw2IEBAIG1zZ3N0
ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0
ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiUG92
b2xpdCByZXZpemkgWFNTIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3
ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNz
cyBzaGFkZXJzIgotbXNnc3RyICJKZXN0bGkgcG92b2xpdCB2a2zDoWTDoW7DrSBET00iCi0KICM6
IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBt
c2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2RlLnBvIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2RlLnBvCmluZGV4IDBmOGNmNWEuLmNhMjhmODAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9kZS5wbworKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZGUucG8KQEAgLTE3NjEsMTQgKzE3NjEsNiBAQCBtc2dz
dHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dz
dHIgIkxlZ3QgZmVzdCwgb2IgIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNn
c3RyICJDU1MtU2hhZGVyIGFrdGl2aWVyZW4iCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJs
ZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiTGVndCBmZXN0LCBvYiBDU1MtU2hhZGVyIGFrdGl2aWVy
dCB3ZXJkZW4gc29sbGVuIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJl
IGNvbnRlbnQiCiBtc2dzdHIgIkFuemVpZ2Ugdm9uIHVuc2ljaGVyZW0gSW5oYWx0IGFrdGl2aWVy
ZW4iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZWwucG8gYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZWwucG8KaW5kZXggODU0MTk0NC4uODdlZjVj
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VsLnBvCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lbC5wbwpAQCAtMTc0OSwxNSArMTc0OSw2
IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGlu
ZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1z
Z3N0ciAizpXOvc61z4HOs86/z4DOv86vzrfPg863IM+DzrXOvc6xz4HOr8+Jzr0iCi0KLSM6IC4u
Ly4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lk
ICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiIgotCiAjOiAuLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVu
YWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lbl9DQS5wbyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9lbl9DQS5wbwppbmRleCAyNmFhNGNiLi5iNWJhMmRlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW5fQ0EucG8KKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VuX0NBLnBvCkBAIC0xNzIzLDE2ICsxNzIzLDYgQEAg
bXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgog
bXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRp
bmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3Ry
ICJFbmFibGUgWFNTIEF1ZGl0b3IiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dl
YmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFi
bGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIldoZXRoZXIgdG8gZW5hYmxlIERPTSBwYXN0ZSIKLQog
IzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcK
IG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW5fR0IucG8gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW5fR0IucG8KaW5kZXggMDA4YjE3Ni4uM2UwZjMw
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VuX0dCLnBvCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lbl9HQi5wbwpAQCAtMTc1MCwxNCAr
MTc1MCw2IEBAIG1zZ3N0ciAiTWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ2lkICJX
aGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIldoZXRoZXIgbWVk
aWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIAotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVy
cyIKLW1zZ3N0ciAiRW5hYmxlIENTUyBzaGFkZXJzIgotCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBl
bmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJz
IgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dz
dHIgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW8ucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vZW8ucG8KaW5kZXggZmNlMjVmMy4uMzAxNjA4MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VvLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9lby5wbwpAQCAtMTY5OSwxNSArMTY5OSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQg
IldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAu
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dp
ZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICIiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hl
dGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIsSIdSBlbsWdYWx0aSBsYSBzdWJ0
ZW5vbiBwb3IgbGEgSFRNTDUtZGF0dW1iYXpvPyIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBv
ZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vZXMucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
ZXMucG8KaW5kZXggNzg2ZGRkNS4uN2U5NjliNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2VzLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9lcy5wbwpAQCAtMTc3NywxNiArMTc3Nyw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIg
bWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQot
bXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQWN0aXZhciBlbCBhdWRpdG9yIGRl
IFhTUyIKLQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGlu
Z3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVy
cyIKLW1zZ3N0ciAiSW5kaWNhIHNpIGRlYmUgYWN0aXZhciBlbCBwZWdhZG8gRE9NIgotCiAjOiAu
Li8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwog
bXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ldC5wbyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ldC5wbwppbmRleCA0ZDFlM2I3Li5hMThkYjk2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZXQucG8KKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2V0LnBvCkBAIC0xNzQxLDE2ICsxNzQxLDYgQEAgbXNn
c3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNn
c3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJY
U1MgYXVkaWl0b3JpIGx1YmFtaW5lIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5h
YmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJLYXMgbHViYWRhIERPTS1ww7VoaW5lIGFzZXRhbWlu
ZSIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
OjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3Ry
ICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZXUucG8gYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZXUucG8KaW5kZXggNWEzMjMzZi4uZTNmNzZm
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2V1LnBvCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ldS5wbwpAQCAtMTc0NSwxNiArMTc0NSw2
IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGlu
ZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1z
Z3N0ciAiR2FpdHUgWFNTIGJlZ2lyYWxlYSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJr
aXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRv
IGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiRE9NIGl0c2FzdGVhIGdhaXR1a28gZGVuIGFs
YSBleiIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNn
c3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZnIucG8g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZnIucG8KaW5kZXggYzRlOTdjZC4uODA3
NmEwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2ZyLnBvCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9mci5wbwpAQCAtMTcxNSwxNCArMTcx
NSw2IEBAIG1zZ3N0ciAiTGEgbGVjdHVyZSBkdSBtw6lkaWEgYXV0b3Jpc2UgbCdpbnTDqWdyYXRp
b24iCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3Ry
ICJJbmRpcXVlIHNpIGxhIGxlY3R1cmUgZHUgbcOpZGlhIGF1dG9yaXNlIGwnaW50w6lncmF0aW9u
IgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJBY3RpdmVyIGxlcyBvbWJy
YWdlcyBDU1MiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRp
bmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0
ciAiSW5kaXF1ZSBzJ2lsIGZhdXQgYWN0aXZlciBsZXMgb21icmFnZXMgQ1NTIgotCiAjOiAuLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQg
IkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIkFjdGl2ZXIgbCdh
ZmZpY2hhZ2UgZGUgY29udGVudSBub24gc8OpY3VyaXRhaXJlIgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2dsLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2dsLnBvCmluZGV4IGE3MmMwNDUuLjBkODI2NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9nbC5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vZ2wucG8KQEAgLTE3MzAsMTQgKzE3MzAsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJX
aGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4v
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNn
aWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQWN0aXZhciBzb21icmVhZG9yZXMgQ1NT
IgotCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIklu
ZGljYSBzZSBhY3RpdmFyIG9zIHNvbWJyZWFkb3JlcyBDU1MiCi0KICM6IC4uLy4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxl
IGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiQWN0aXZhciB2aXN1YWxpemFj
acOzbiBkZSBjb250aWRvIG5vbiBzZWd1cm8iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vZ3UucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZ3Uu
cG8KaW5kZXggMjYyOGE4Ny4uZWIzMWZiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2d1LnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9n
dS5wbwpAQCAtMTYyMSwxNCArMTYyMSw2IEBAIG1zZ3N0ciAi4Kqu4KuA4Kqh4Kq/4Kqv4Kq+IOCq
quCrjeCqsuCrh+Cqr+CqsOCqqOCrhyDgqofgqqjgqrLgqr7gqofgqqjgqqjgq4Ag4KqcCiBtc2dp
ZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLgqrbgq4Hg
qoIg4Kqu4KuA4Kqh4Kq/4Kqv4Kq+IOCqquCrjeCqsuCrh+CqrOCrh+CqleCqqOCrhyDgqofgqqjg
qrLgqr7gqofgqqjgqqjgq4Ag4Kqq4Kqw4Kq14Kq+4Kqo4KqX4KuAIOCqhuCqquCrh+CqsiDgqpvg
q4ciCiAKLSM6IC4uL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTgxCi1tc2dpZCAiRW5h
YmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJDU1Mg4Kq24KuF4Kqh4Kqw4Kqo4KuHIOCquOCqleCr
jeCqsOCqv+CqryDgqpXgqrDgq4siCi0KLSM6IC4uL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6OTgyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIuCq
tuCrgeCqgiBjc3Mg4Kq24KuF4Kqh4Kqw4Kqo4KuHIOCquOCqleCrjeCqsOCqv+CqryDgqpXgqrDg
qrXgqr7gqqjgq4HgqoIg4Kqb4KuHIgotCiAjOiAuLi93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjk5NwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dz
dHIgIuCqheCquOCrgeCqsOCqleCrjeCqt+Cqv+CqpCDgqrjgqq7gqr7gqrXgqr/gqrfgq43gqp/g
qqjgq4cg4Kqm4Kqw4KuN4Kq24Kq+4Kq14Kq14Kq+IOCquOCqleCrjeCqsOCqv+CqryDgqpXgqrDg
q4siCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaGUucG8gYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaGUucG8KaW5kZXggOTQ5NTQ3Ni4uYjhiZWM4
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2hlLnBvCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9oZS5wbwpAQCAtMTczNywxNiArMTczNyw2
IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGlu
ZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1z
Z3N0ciAi15DXpNep16gg16rXodeo15nXmNeZ150iCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhl
ciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIteU15DXnSDXqtee15XXoNeV16og15TX
qNen16Ig16bXqNeZ15vXldeqINec15TXmdeV16og157XldeT16TXodeV16ouIgotCiAjOiAuLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQg
IkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9oaS5wbyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9oaS5wbwppbmRleCBhYzk3MjE4Li5lMTlhMTBiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaGkucG8KKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL2hpLnBvCkBAIC0xNzM5LDE0ICsxNzM5LDYgQEAgbXNnc3RyICLg
pK7gpYDgpKHgpL/gpK/gpL4g4KSq4KWN4KSy4KWH4KSs4KWI4KSVIOCkh+CkqOCksuCkvuCkh+Ck
qCDgpJXgpYAg4KS4CiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5l
IgogbXNnc3RyICLgpJXgpY3gpK/gpL4g4KSu4KWA4KSh4KS/4KSv4KS+IOCkquCljeCksuClh+Ck
rOCliOCklSDgpIfgpKjgpLLgpL7gpIfgpKgg4KSV4KWAIOCkuOCljeCkteClgOCkleClg+CkpOCk
vyDgpKbgpYfgpKTgpL4g4KS54KWIIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgot
bXNnc3RyICJDU1Mg4KS24KWH4KSh4KSwIOCkuOCkleCljeCkt+CkriDgpJXgpLDgpYfgpIIiCi0K
LSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5
OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi4KSV4KWN
4KSv4KS+IOCkuOClgOCkj+CkuOCkj+CkuCDgpLbgpYfgpKHgpLAg4KSV4KWLIOCkuOCkleCljeCk
sOCkv+CkryDgpJXgpLDgpKjgpL4g4KS54KWIIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3Rr
L3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5
IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIuCkheCkuOClgeCksOCkleCljeCkt+Ckv+Ck
pCDgpJXgpILgpJ/gpYfgpILgpJ8g4KSV4KS+IOCkquCljeCksOCkpuCksOCljeCktuCkqCDgpLjg
pJXgpY3gpLDgpL/gpK8g4KSV4KSw4KSo4KS+IOCkueCliCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9odS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9odS5wbwppbmRleCBkMWEyNjNiLi40MjE5ZjBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vaHUucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2h1LnBvCkBAIC0xNzUwLDE2ICsxNzUwLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hl
dGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5
Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJYU1MtYXVkaXTDoWzDsyBlbmdl
ZMOpbHllesOpc2UiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNl
dHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNo
YWRlcnMiCi1tc2dzdHIgIkRPTSBiZWlsbGVzenTDqXMgZW5nZWTDqWx5ZXrDqXNlIgotCiAjOiAu
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNn
aWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9pZC5wbyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9pZC5wbwppbmRleCAzNTEzNmI2Li4zODcxNTJhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaWQucG8KKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2lkLnBvCkBAIC0xNjkyLDE0ICsxNjkyLDYgQEAgbXNnc3Ry
ICJQZW11dGFyYW4gbWVkaWEgbWVuZ2lqaW5rYW4gaW5saW5lIgogbXNnaWQgIldoZXRoZXIgbWVk
aWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiQXBha2FoIHBlbXV0YXJhbiBtZWRp
YSBtZW5naWppbmthbiBpbmxpbmUiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dl
YmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dz
dHIgIkZ1bmdzaWthbiBzaGFkZXIgQ1NTIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3Nz
IHNoYWRlcnMiCi1tc2dzdHIgIkFwYWthaCBtZW1mdW5nc2lrYW4gc2hhZGVyIENTUyIKLQogIzog
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1z
Z2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaXQucG8gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vaXQucG8KaW5kZXggMmQxODQwNC4uNjZlZDlhNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2l0LnBvCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9pdC5wbwpAQCAtMTgyOSwxNiArMTgyOSw2IEBAIG1zZ3N0
ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0
ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQWJp
bGl0YSBhdWRpdG9yIFhTUyIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBj
c3Mgc2hhZGVycyIKLW1zZ3N0ciAiSW5kaWNhIHNlIGFiaWxpdGFyZSBpbCBET00gcGFzdGluZyIK
LQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEw
MDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIi
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8va24ucG8gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8va24ucG8KaW5kZXggM2MxYmM5ZS4uOTA1MDQwNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2tuLnBvCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9rbi5wbwpAQCAtMTcyNCwxNCArMTcyNCw2IEBA
IG1zZ3N0ciAi4LKu4LOA4LKh4LK/4LKvIOCyquCzjeCysuCzh+CyrOCzjeCyr+CyvuCyleCzjSDg
srjgsr7gsrLgsr/gsqjgs4rgsrPgspcKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFs
bG93cyBpbmxpbmUiCiBtc2dzdHIgIuCyruCzgOCyoeCyv+CyryDgsqrgs43gsrLgs4fgsqzgs43g
sq/gsr7gspXgs40g4LK44LK+4LKy4LK/4LKo4LOK4LKz4LKX4LK/4LKw4LOB4LK14LOB4LKm4LKV
4LON4LKV4LOGIOCyheCyqOCzgeCyruCypOCyv+CyuOCzgeCypOCzjeCypOCypuCzhuCyr+CzhiIK
IAotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
Ojk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCytuCzh+CyoeCy
sOCzgeCyl+Cys+CyqOCzjeCyqOCzgSDgsrjgspXgs43gsrDgsr/gsq/gspfgs4rgsrPgsr/gsrjg
s4EiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
Q1NTIOCytuCzh+CyoeCysOCzgeCyl+Cys+CyqOCzjeCyqOCzgSDgsrjgspXgs43gsrDgsr/gsq/g
spfgs4rgsrPgsr/gsrjgsqzgs4fgspXgs4YiCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkg
b2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAi4LKF4LK44LOB4LKw4LKV4LON4LK34LK/4LKk
IOCyteCyv+Cyt+Cyr+CyteCyqOCzjeCyqOCzgSDgsqTgs4vgsrDgsr/gsrjgs4HgsrXgs4Hgsqbg
sqjgs43gsqjgs4Eg4LK44LKV4LON4LKw4LK/4LKv4LKX4LOK4LKz4LK/4LK44LKs4LOH4LKV4LOG
IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2tvLnBvIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2tvLnBvCmluZGV4IDQxYWY3ZDYuLjBhNzVkMTEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9rby5wbworKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8va28ucG8KQEAgLTE3MjYsMTYgKzE3MjYsNiBA
QCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUi
CiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0
dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dz
dHIgIlhTUyDqsoDsgqwg6riw64qlIOyCrOyaqSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVy
IHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiRE9NIOu2meyXrOuEo+q4sOulvCDsgqzs
mqntlaDsp4Ag7Jes67aAIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3
ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNv
bnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9sdC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdC5wbwppbmRleCBl
NDdjM2M3Li5iYWFjZTJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vbHQucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x0LnBvCkBAIC0x
NzQ4LDE2ICsxNzQ4LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFj
ayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENT
UyBzaGFkZXJzIgotbXNnc3RyICLErmp1bmd0aSBYU1MgYXVkaXRhdmltxIUiCi0KLSM6IC4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5
Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIkFyIMSvanVu
Z3RpIERPTSDEr2TEl2ppbcSFIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJl
IGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9wby9sdi5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdi5wbwppbmRl
eCAxM2FlNjdkLi4zNGNhYjE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vbHYucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2x2LnBvCkBA
IC0xNzM1LDE1ICsxNzM1LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5
YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxl
IENTUyBzaGFkZXJzIgotbXNnc3RyICJBa3Rpdml6xJN0IHNrcmlwdHVzIgotCi0jOiAuLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hl
dGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIiIKLQogIzogLi4vLi4vLi4vV2Vi
S2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUg
ZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbWwucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vbWwucG8KaW5kZXggZTZiZjhjMC4uNTI4Y2YzNSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL21sLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9tbC5wbwpAQCAtMTcxNCwxNCArMTcxNCw2IEBAIG1zZ3N0ciAiIgogbXNnaWQg
IldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAu
Li8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1t
c2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICIiCi0KLSM6IC4uLy4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVy
IHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBk
aXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9tci5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9wby9tci5wbwppbmRleCBhNDQxZDQ3Li5mNGQ5ZjhhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbXIucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL21yLnBvCkBAIC0xNzQwLDE0ICsxNzQwLDYgQEAgbXNnc3RyICLgpK7gpL/gpKHg
pYDgpK/gpL4g4KSq4KWN4KSy4KWH4KSs4KWF4KSVIOCkh+CkguCksuCkvuCkh+CkqCDgpLjgpY3g
pLXgpYAKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dz
dHIgIuCkruCkv+CkoeClgOCkr+CkviDgpKrgpY3gpLLgpYfgpKzgpYXgpJUg4KSH4KSC4KSy4KS+
4KSH4KSoIOCkuOCljeCkteClgOCkleCkvuCksOCkvuCkr+CkmuClhyIKIAotIzogLi4vLi4vLi4v
Li4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVu
YWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCktuClh+CkoeCksOCljeCkuOCljSDgpLjg
pYHgpLDgpYIg4KSV4KSw4KS+IgotCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNo
YWRlcnMiCi1tc2dzdHIgImNzcyDgpLbgpYfgpKHgpLDgpY3gpLjgpY0g4KS44KWB4KSw4KWCIOCk
leCksOCkvuCkr+CkmuClhyIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Vi
a2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3Vy
ZSBjb250ZW50IgogbXNnc3RyICLgpIXgpLjgpYHgpLDgpJXgpY3gpLfgpYDgpKQg4KSF4KSC4KSk
4KSw4KWN4KSt4KWB4KSkIOCkruCkvuCkueCkv+CkpOClgCDgpKbgpL7gpJbgpLXgpKPgpYcg4KS4
4KSu4KSw4KWN4KSl4KWA4KSkIOCkleCksOCkviIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9uYi5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9u
Yi5wbwppbmRleCA2MmExNGVmLi5iZDgzNzQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vbmIucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L25iLnBvCkBAIC0xNzMxLDE2ICsxNzMxLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBt
ZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dp
ZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJTbMOlIHDDpSBKYXZhU2NyaXB0IgotCi0j
OiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0j
LCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJP
bSBiYWtncnVubmVuIHNrYWwgc2tyaXZlcyB1dCIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBv
ZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vbmwucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
bmwucG8KaW5kZXggMTYxMTMyYi4uZmYxOGFmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL25sLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9ubC5wbwpAQCAtMTczNSwxNCArMTczNSw2IEBAIG1zZ3N0ciAiSW5saW5lIG1lZGlhIGFmc3Bl
bGVuIHRvZWdlc3RhYW4iCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5s
aW5lIgogbXNnc3RyICJPZiBoZXQgaW5saW5lIGFmc3BlbGVuIHZhbiBtZWRpYSBpcyB0b2VnZXN0
YWFuIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5n
cy5jcHA6MTAwMwotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTLXNoYWRl
cnMgaW5zY2hha2VsZW4iCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDoxMDA0Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRl
cnMiCi1tc2dzdHIgIk9mIENTUy1zaGFkZXJzIG1vZXRlbiB3b3JkZW4gaW5nZXNjaGFrZWxkIgot
CiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
MTAxOQogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIg
IldlZXJnYXZlIHZhbiBvbnZlaWxpZ2UgaW5ob3VkIGluc2NoYWtlbGVuIgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL29yLnBvIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL29yLnBvCmluZGV4IDQwNGFiYjcuLjhmMGE1MmMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9vci5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vb3IucG8KQEAgLTE3MjYsMTQgKzE3MjYsNiBAQCBtc2dzdHIgIuCsruCs
v+CsoeCsv+CshiDgrKrgrY3grLLgrYfgrKzgrYfgrJXgrY0g4KyH4Kyo4Kyy4Ky+4KyH4Kyo4Kyw
4K2HIOCsheCsqAogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIK
IG1zZ3N0ciAi4Kyu4Ky/4Kyh4Ky/4KyGIOCsquCtjeCssuCth+CsrOCth+CsleCtjSDgrIfgrKjg
rLLgrL7grIfgrKjgrLDgrYcg4KyF4Kyo4K2B4Kyu4Kyk4Ky/IOCspuCth+Csh+CspeCsvuCsjyDg
rJXgrL8iCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRp
bmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUyDgrLjg
rYfgrKHgrLDgrJXgrYEg4Ky44KyV4K2N4Kyw4Ky/4K2fIOCsleCssOCsqOCtjeCspOCtgSIKLQot
IzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5
MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJjc3Mg4Ky4
4K2H4Kyh4Kyw4KyV4K2BIOCsuOCsleCtjeCssOCsv+CtnyDgrJXgrLDgrL/grKzgrL4g4KyJ4Kya
4Ky/4KykIOCsleCsvyIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBj
b250ZW50IgogbXNnc3RyICLgrIXgrLjgrYHgrLDgrJXgrY3grLfgrL/grKQg4Kys4Ky/4Ky34K2f
4Kys4Ky44K2N4Kyk4K2B4KywIOCsquCtjeCssOCspuCssOCtjeCstuCsqOCsleCtgSDgrLjgrJXg
rY3grLDgrL/grZ8g4KyV4Kyw4Kyo4K2N4Kyk4K2BIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL3BhLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L3BhLnBvCmluZGV4IDllZTQwZTAuLjVjMzIzNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby9wYS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vcGEucG8KQEAgLTE3MzYsMTYgKzE3MzYsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVy
IG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1z
Z2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIuCouOColeCpjeCosOCov+CoquCon+Co
vuCogiDgqK/gqYvgqJciCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3Nz
IHNoYWRlcnMiCi1tc2dzdHIgIuColeCpgCDgqKzgqYjgqJXgqJfgqLDgqL7gqIrgqILgqKEg4Kia
4Ki/4Kmx4Kik4Kiw4Ki+4KiCIOCoqOCpguCpsCDgqJvgqL7gqKrgqKPgqL4g4Ki54KmI4KWkIgot
CiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAw
NwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wbC5wbyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wbC5wbwppbmRleCBjMzk4Y2ZmLi41YmMxNWU5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcGwucG8KKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3BsLnBvCkBAIC0xNzY0LDE0ICsxNzY0LDYgQEAg
bXNnc3RyICJPZHR3YXJ6YW5pZSBtdWx0aW1lZGnDs3cgemV6d2FsYSBuYSB3c3Rhd2lhbmllIgog
bXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiT2ty
ZcWbbGEsIGN6eSBvZHR3YXJ6YW5pZSBtdWx0aW1lZGnDs3cgemV6d2FsYSBuYSB3c3Rhd2lhbmll
IgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJXxYLEhWN6ZW5pZSBj
aWVuaW93YW5pYSBDU1MiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVy
cyIKLW1zZ3N0ciAiT2tyZcWbbGEsIGN6eSB3xYLEhWN6YcSHIGNpZW5pb3dhbmllIENTUyIKLQog
IzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEw
MDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICJX
xYLEhWN6ZW5pZSB3ecWbd2lldGxhbmlhIG5pZWJlenBpZWN6bmVqIHRyZcWbY2kiCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcHQucG8gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vcHQucG8KaW5kZXggMzNkOWM3Yi4uMDg1MjQ3OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3B0LnBvCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9wdC5wbwpAQCAtMTc0NSwxNiArMTc0NSw2IEBAIG1zZ3N0ciAi
IgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAi
IgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQWN0aXZh
ciBBdWRpdG9yIFhTUyIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mg
c2hhZGVycyIKLW1zZ3N0ciAiU2UgZGV2ZSBzZXIgYWN0aXZhZG8gbyBjb2xhciBET00iCi0KICM6
IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBt
c2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3B0X0JSLnBvIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3B0X0JSLnBvCmluZGV4IDE4NzBjZDcuLjM5NTIwNjgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wdF9CUi5wbworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcHRfQlIucG8KQEAgLTE3MzIsMTQgKzE3
MzIsNiBAQCBtc2dzdHIgIlBlcm1pdGlyIHJlcHJvZHXDp8OjbyBkZSBtw61kaWEgc2VyIGVtYnV0
aWRhIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0
ciAiU2UgYSByZXByb2R1w6fDo28gZGUgbcOtZGlhIGRldmUgcGVybWl0aXIsIG91IG7Do28sIHNl
ciBlbWJ1dGlkYSIKIAotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjEwMDMKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkhh
YmlsaXRhciBzb21icmVhZG9yZXMgQ1NTIgotCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNAotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxl
IGNzcyBzaGFkZXJzIgotbXNnc3RyICJTZSBzb21icmVhbWVudG8gQ1NTIGRldmUgb3UgbsOjbyBz
ZXIgaGFiaWxpdGFkbyIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjEwMTkKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBj
b250ZW50IgogbXNnc3RyICJIYWJpbGl0YXIgZXhpYmnDp8OjbyBkZSBjb250ZcO6ZG8gaW5zZWd1
cm8iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcm8ucG8gYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcm8ucG8KaW5kZXggOWQ4MzgxMS4uMTMyYjk5
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3JvLnBvCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9yby5wbwpAQCAtMTcxNywxNCArMTcxNyw2
IEBAIG1zZ3N0ciAiUmVkYXJlYSBtdWx0aW1lZGlhIGVzdGUgw65uZ2xvYmF0xIMiCiBtc2dpZCAi
V2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICJTcGVjaWZpY8SD
IGRhY8SDIHJlZGFyZWEgbXVsdGltZWRpYSBzZSBmYWNlIMOubiBjYWRydWwgcGFnaW5paSIKIAot
IzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQot
bXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQWN0aXZlYXrEgyBmaWx0cmVsZSBw
ZXJzb25hbGl6YXRlIENTUyIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJz
IgotbXNnc3RyICJTcGVjaWZpY8SDIGRhY8SDIHNlIGFjdGl2ZWF6xIMgZmlsdHJlbGUgcGVyc29u
YWxpemF0ZSBDU1MgKHNoYWRlcnMpIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2Vj
dXJlIGNvbnRlbnQiCiBtc2dzdHIgIkFjdGl2ZWF6xIMgYWZpyJlhcmVhIGNvbsibaW51dHVsdWkg
bmVzaWd1ciIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ydS5w
byBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ydS5wbwppbmRleCBiZjQ0MjQ2Li5j
NDgwNmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcnUucG8K
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3J1LnBvCkBAIC0xNzM0LDE2ICsx
NzM0LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3Mg
aW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJz
IgotbXNnc3RyICLQktGL0L/QvtC70L3Rj9GC0Ywg0YHRhtC10L3QsNGA0LjQuCIKLQotIzogLi4v
Li4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6
enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi0JTQvtC7
0LbQvdGLINC70Lgg0LHRi9GC0Ywg0LLRi9Cy0LXQtNC10L3RiyDQvdCwINC/0LXRh9Cw0YLRjCDR
hNC+0L3QvtCy0YvQtSDQuNC30L7QsdGA0LDQttC10L3QuNGPLiIKLQogIzogLi4vLi4vLi4vV2Vi
S2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUg
ZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc2wucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vc2wucG8KaW5kZXggN2I3YjY4Mi4uOTQxNjBkZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3NsLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9zbC5wbwpAQCAtMTc1MywxNCArMTc1Myw2IEBAIG1zZ3N0ciAiIgogbXNnaWQg
IldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAu
Li8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1t
c2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJPbW9nb8SNaSBzZW7EjWlsbmlrZSBD
U1MiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
QWxpIG5haiBib2RvIHNlbsSNaWxuaWtpIENTUyBvbW9nb8SNZW5pIgotCiAjOiAuLi8uLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVu
YWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIk9tb2dvxI1pIHByaWth
eiB2c2ViaW4sIGtpIG5pc28gdmFybmUiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vc3IucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3IucG8K
aW5kZXggMGUyOWZiNy4uMzNlNWJmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL3NyLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zci5w
bwpAQCAtMTc0MSwxNiArMTc0MSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEg
cGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVu
YWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAi0J7QvNC+0LPRg9Gb0Lgg0JjQutGB0KHQoSDRgNC1
0LLQuNC30LjRmNGDIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBz
aGFkZXJzIgotbXNnc3RyICLQntC00YDQtdGS0YPRmNC1INC00LAg0LvQuCDRmNC1INC+0LzQvtCz
0YPRm9C10L3QviDQlNCe0Jwg0YPQsdCw0YbQuNCy0LDRmtC1IgotCiAjOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBk
aXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zckBsYXRpbi5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9zckBsYXRpbi5wbwppbmRleCBhNjBhZDUzLi5mMmEyNTNlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3JAbGF0aW4ucG8KKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3NyQGxhdGluLnBvCkBAIC0xNzQyLDE2ICsxNzQy
LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5s
aW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgot
bXNnc3RyICJPbW9ndcSHaSBJa3NTUyByZXZpemlqdSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0
ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0
aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiT2RyZcSRdWplIGRhIGxpIGplIG9t
b2d1xIdlbm8gRE9NIHViYWNpdmFuamUiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0
L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5z
ZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL3N2LnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3N2LnBv
CmluZGV4IDg2YWM4MGIuLjI5OTRiYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9zdi5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3Yu
cG8KQEAgLTE3NDAsMTYgKzE3NDAsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlh
IHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0
L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJF
bmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkFrdGl2ZXJhIHNrcmlwdCIKLQotIzogLi4vLi4v
Li4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkK
LW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiSHVydXZpZGEg
YmFrZ3J1bmRzYmlsZGVyIHNrYSBza3JpdmFzIHV0LiIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0
ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxh
eSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vdGEucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vdGEucG8KaW5kZXggOTg4ZTExZC4uYjhmNzdjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL3RhLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby90YS5wbwpAQCAtMTcxMywxNCArMTcxMyw2IEBAIG1zZ3N0ciAi4K6H4K6p4K+N4K6y4K+I
4K6p4K6/4K6y4K+NIOCuruCvgOCun+Cuv+Cur+CuvuCuteCviCDgrofgrq/grpXgr43grpUg4K6u
CiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLg
rofgrqngr43grrLgr4jgrqngrr/grrLgr40g4K6u4K+A4K6f4K6/4K6v4K6+4K614K+IIOCuh+Cu
r+CuleCvjeCulSDgrq7gr4Hgrp/grr/grq/gr4Hgrq7grr4iCiAKLSM6IC4uLy4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUg
Q1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUyDgrrfgr4fgrp/grrDgr43grpXgrrPgr4gg4K6a4K+G
4K6v4K6y4K+N4K6q4K6f4K+B4K6k4K+N4K6kIOCuteCvh+Cuo+CvjeCun+CvgeCuruCuviIKLQot
IzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5
MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJjc3Mg4K63
4K+H4K6f4K6w4K+N4K6V4K6z4K+IIOCumuCvhuCur+CusuCvjeCuquCun+CvgeCupOCvjeCupCDg
rrXgr4fgrqPgr43grp/gr4Hgrq7grr4iCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2Yg
aW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAi4K6q4K6+4K6k4K+B4K6V4K6+4K6q4K+N4K6q4K6x
4K+N4K6xIOCuieCus+CvjeCus+Cun+CuleCvjeCuleCupOCvjeCupOCviOCuleCvjSDgrpXgrr7g
rp/gr43grprgrr/grqrgr43grqrgrp/gr4HgrqTgr43grqTgr4HgrrXgrqTgr4jgrprgr40g4K6a
4K+G4K6v4K6y4K+N4K6q4K6f4K+B4K6k4K+N4K6k4K+BIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3RlLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL3RlLnBvCmluZGV4IGYzZTJlODcuLjFhNWZjNTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby90ZS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vdGUucG8KQEAgLTE3MTcsMTQgKzE3MTcsNiBAQCBtc2dzdHIgIuCwruCwvuCwp+CxjeCw
r+CwriDgsKrgsY3gsLLgsYfgsKzgsL7gsJXgsY0g4LCv4LC/4LCo4LGN4oCM4LCy4LGI4LCo4LGN
CiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLg
sK7gsL7gsKfgsY3gsK/gsK4g4LCq4LGN4LCy4LGH4LCs4LGN4LCv4LC+4LCV4LGNIOCwr+Cwv+Cw
qOCxjeKAjOCwsuCxiOCwqOCxjSDgsIXgsKjgsYHgsK7gsKTgsL/gsILgsJrgsL7gsLLgsL4iCiAK
LSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5
OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUyDgsLfgsYfgsKHgsLDg
sY3gsLjgsY0g4LCa4LGH4LCk4LCo4LCC4LCa4LGH4LCv4LC/IgotCi0jOiAuLi8uLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhl
ciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgImNzcyDgsLfgsYfgsKHgsLDgsY3gsLjg
sY0g4LCa4LGH4LCk4LCo4LCCIOCwmuCxh+Cwr+CwvuCwsuCwviIKLQogIzogLi4vLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFi
bGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICLgsLjgsYHgsLDgsJXgsY3g
sLfgsL/gsKTgsIIg4LCV4LC+4LCo4LC/IOCwteCwv+Cwt+CwryDgsKrgsY3gsLDgsKbgsLDgsY3g
sLbgsKjgsKjgsYEg4LCa4LGH4LCk4LCo4LCC4LCa4LGH4LCv4LC/IgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3VrLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL3VrLnBvCmluZGV4IDFhNmY4ODEuLjFmNzI4ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby91ay5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8vdWsucG8KQEAgLTE3MzcsMTYgKzE3MzcsNiBAQCBtc2dzdHIgIiIKIG1zZ2lk
ICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzog
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywg
ZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgItCj0LLRltC80LrQvdGD
0YLQuCDRltC90YHRgtGA0YPQvNC10L3RgiDQv9C10YDQtdCy0ZbRgNC60LggWFNTIgotCi0jOiAu
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBm
dXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICLQp9C4
INGB0LvRltC0INCy0LzQuNC60LDRgtC4INCy0YHRgtCw0LLQutGDIERPTSIKLQogIzogLi4vLi4v
Li4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJF
bmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdmkucG8gYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vdmkucG8KaW5kZXggYzZkOTZiMy4uOWRmYzc2MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3ZpLnBvCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9wby92aS5wbwpAQCAtMTczMywxNiArMTczMyw2IEBAIG1zZ3N0ciAiIgog
bXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgog
Ci0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkx
Ci0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQuG6rXQga2nh
u4NtIHRyYSBYU1MiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNl
dHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNo
YWRlcnMiCi1tc2dzdHIgIkPDsyBjaG8gZMOhbiBET00ga2jDtG5nIgotCiAjOiAuLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJs
ZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby96aF9DTi5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby96aF9DTi5wbwppbmRleCBiNjA3MzE2Li5hM2U5YWEzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vemhfQ04ucG8KKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3poX0NOLnBvCkBAIC0xNzM1LDE2ICsxNzM1LDYgQEAgbXNn
c3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNn
c3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICLl
kK/nlKggWFNTIOWuoeiuoSIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBj
c3Mgc2hhZGVycyIKLW1zZ3N0ciAi5piv5ZCm5ZCv55SoIERPTSDnspjotLQiCi0KICM6IC4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAi
RW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5jcHAKaW5kZXggNGFj
ZTU3ZS4uNmVlYWYyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpbHRl
ckVmZmVjdFJlbmRlcmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRmlsdGVy
RWZmZWN0UmVuZGVyZXIuY3BwCkBAIC00NSwxNyArNDUsNiBAQAogI2luY2x1ZGUgPGFsZ29yaXRo
bT4KICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4
dC5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkN1c3Rv
bUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFt
LmgiCi0jaW5jbHVkZSAiRkVDdXN0b21GaWx0ZXIuaCIKLSNpbmNsdWRlICJHcmFwaGljc0NvbnRl
eHQzRC5oIgotI2luY2x1ZGUgIlJlbmRlclZpZXcuaCIKLSNpbmNsdWRlICJWYWxpZGF0ZWRDdXN0
b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFNWRykKICNpbmNsdWRl
ICJDYWNoZWRTVkdEb2N1bWVudC5oIgogI2luY2x1ZGUgIkNhY2hlZFNWR0RvY3VtZW50UmVmZXJl
bmNlLmgiCkBAIC04OSwyOCArNzgsOSBAQCBpbmxpbmUgYm9vbCBpc0ZpbHRlclNpemVWYWxpZChG
bG9hdFJlY3QgcmVjdCkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotc3RhdGljIFBhc3NSZWZQdHI8RkVDdXN0b21GaWx0
ZXI+IGNyZWF0ZUN1c3RvbUZpbHRlckVmZmVjdChGaWx0ZXIqIGZpbHRlciwgRG9jdW1lbnQqIGRv
Y3VtZW50LCBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qIG9wZXJhdGlvbikKLXsKLSAg
ICBpZiAoIWRvY3VtZW50KQotICAgICAgICByZXR1cm4gMDsKLQotICAgIEN1c3RvbUZpbHRlckds
b2JhbENvbnRleHQqIGdsb2JhbENvbnRleHQgPSBkb2N1bWVudC0+cmVuZGVyVmlldygpLT5jdXN0
b21GaWx0ZXJHbG9iYWxDb250ZXh0KCk7Ci0gICAgZ2xvYmFsQ29udGV4dC0+cHJlcGFyZUNvbnRl
eHRJZk5lZWRlZChkb2N1bWVudC0+dmlldygpLT5ob3N0V2luZG93KCksIGRvY3VtZW50LT5mcmFt
ZSgpLT5zZXR0aW5ncygpLmZvcmNlU29mdHdhcmVXZWJHTFJlbmRlcmluZygpKTsKLSAgICBpZiAo
IWdsb2JhbENvbnRleHQtPmNvbnRleHQoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICByZXR1
cm4gRkVDdXN0b21GaWx0ZXI6OmNyZWF0ZShmaWx0ZXIsIGdsb2JhbENvbnRleHQtPmNvbnRleHQo
KSwgb3BlcmF0aW9uLT52YWxpZGF0ZWRQcm9ncmFtKCksIG9wZXJhdGlvbi0+cGFyYW1ldGVycygp
LAotICAgICAgICBvcGVyYXRpb24tPm1lc2hSb3dzKCksIG9wZXJhdGlvbi0+bWVzaENvbHVtbnMo
KSwgIG9wZXJhdGlvbi0+bWVzaFR5cGUoKSk7Ci19Ci0jZW5kaWYKLQogRmlsdGVyRWZmZWN0UmVu
ZGVyZXI6OkZpbHRlckVmZmVjdFJlbmRlcmVyKCkKICAgICA6IG1fZ3JhcGhpY3NCdWZmZXJBdHRh
Y2hlZChmYWxzZSkKICAgICAsIG1faGFzRmlsdGVyVGhhdE1vdmVzUGl4ZWxzKGZhbHNlKQotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAsIG1faGFzQ3VzdG9tU2hhZGVyRmlsdGVyKGZhbHNl
KQotI2VuZGlmCiB7CiAgICAgc2V0RmlsdGVyUmVzb2x1dGlvbihGbG9hdFNpemUoMSwgMSkpOwog
ICAgIG1fc291cmNlR3JhcGhpYyA9IFNvdXJjZUdyYXBoaWM6OmNyZWF0ZSh0aGlzKTsKQEAgLTE4
MSwxNyArMTUxLDExIEBAIFBhc3NSZWZQdHI8RmlsdGVyRWZmZWN0PiBGaWx0ZXJFZmZlY3RSZW5k
ZXJlcjo6YnVpbGRSZWZlcmVuY2VGaWx0ZXIoUmVuZGVyRWxlbWVuCiAKIGJvb2wgRmlsdGVyRWZm
ZWN0UmVuZGVyZXI6OmJ1aWxkKFJlbmRlckVsZW1lbnQqIHJlbmRlcmVyLCBjb25zdCBGaWx0ZXJP
cGVyYXRpb25zJiBvcGVyYXRpb25zLCBGaWx0ZXJDb25zdW1lciBjb25zdW1lcikKIHsKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgbV9oYXNDdXN0b21TaGFkZXJGaWx0ZXIgPSBmYWxzZTsK
LSNlbmRpZgogICAgIG1faGFzRmlsdGVyVGhhdE1vdmVzUGl4ZWxzID0gb3BlcmF0aW9ucy5oYXNG
aWx0ZXJUaGF0TW92ZXNQaXhlbHMoKTsKICAgICBpZiAobV9oYXNGaWx0ZXJUaGF0TW92ZXNQaXhl
bHMpCiAgICAgICAgIG1fb3V0c2V0cyA9IG9wZXJhdGlvbnMub3V0c2V0cygpOwotICAgIAotICAg
IC8vIEtlZXAgdGhlIG9sZCBlZmZlY3RzIG9uIHRoZSBzdGFjayB1bnRpbCB3ZSd2ZSBjcmVhdGVk
IHRoZSBuZXcgZWZmZWN0cy4KLSAgICAvLyBOZXcgRkVDdXN0b21GaWx0ZXJzIGNhbiByZXVzZSBj
YWNoZWQgcmVzb3VyY2VzIGZyb20gb2xkIEZFQ3VzdG9tRmlsdGVycy4KLSAgICBGaWx0ZXJFZmZl
Y3RMaXN0IG9sZEVmZmVjdHM7Ci0gICAgbV9lZmZlY3RzLnN3YXAob2xkRWZmZWN0cyk7CisKKyAg
ICBtX2VmZmVjdHMuY2xlYXIoKTsKIAogICAgIFJlZlB0cjxGaWx0ZXJFZmZlY3Q+IHByZXZpb3Vz
RWZmZWN0ID0gbV9zb3VyY2VHcmFwaGljOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgb3Bl
cmF0aW9ucy5vcGVyYXRpb25zKCkuc2l6ZSgpOyArK2kpIHsKQEAgLTMzNSwyMSArMjk5LDYgQEAg
Ym9vbCBGaWx0ZXJFZmZlY3RSZW5kZXJlcjo6YnVpbGQoUmVuZGVyRWxlbWVudCogcmVuZGVyZXIs
IGNvbnN0IEZpbHRlck9wZXJhdGlvbnMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGRyb3BTaGFkb3dPcGVyYXRpb24tPngoKSwgZHJvcFNoYWRvd09wZXJh
dGlvbi0+eSgpLCBkcm9wU2hhZG93T3BlcmF0aW9uLT5jb2xvcigpLCAxKTsKICAgICAgICAgICAg
IGJyZWFrOwogICAgICAgICB9Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JB
UEhJQ1MpCi0gICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAgICAgICAg
ICAvLyBDVVNUT00gb3BlcmF0aW9ucyBhcmUgYWx3YXlzIGNvbnZlcnRlZCB0byBWQUxJREFURURf
Q1VTVE9NIGJlZm9yZSBnZXR0aW5nIGhlcmUuCi0gICAgICAgICAgICAvLyBUaGUgY29udmVyc2lv
biBoYXBwZW5zIGluIFJlbmRlckxheWVyOjpjb21wdXRlRmlsdGVyT3BlcmF0aW9ucy4KLSAgICAg
ICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAg
IGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOiB7Ci0gICAgICAgICAgICBW
YWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbUZpbHRlck9wZXJhdGlvbiA9IHN0
YXRpY19jYXN0PFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbio+KGZpbHRlck9wZXJhdGlv
bik7Ci0gICAgICAgICAgICBEb2N1bWVudCogZG9jdW1lbnQgPSByZW5kZXJlciA/ICZyZW5kZXJl
ci0+ZG9jdW1lbnQoKSA6IDA7Ci0gICAgICAgICAgICBlZmZlY3QgPSBjcmVhdGVDdXN0b21GaWx0
ZXJFZmZlY3QodGhpcywgZG9jdW1lbnQsIGN1c3RvbUZpbHRlck9wZXJhdGlvbik7Ci0gICAgICAg
ICAgICBpZiAoZWZmZWN0KQotICAgICAgICAgICAgICAgIG1faGFzQ3VzdG9tU2hhZGVyRmlsdGVy
ID0gdHJ1ZTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAg
ZGVmYXVsdDoKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC00MTgsMTMgKzM2Nyw2
IEBAIHZvaWQgRmlsdGVyRWZmZWN0UmVuZGVyZXI6OmFwcGx5KCkKIAogTGF5b3V0UmVjdCBGaWx0
ZXJFZmZlY3RSZW5kZXJlcjo6Y29tcHV0ZVNvdXJjZUltYWdlUmVjdEZvckRpcnR5UmVjdChjb25z
dCBMYXlvdXRSZWN0JiBmaWx0ZXJCb3hSZWN0LCBjb25zdCBMYXlvdXRSZWN0JiBkaXJ0eVJlY3Qp
CiB7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGlmIChoYXNDdXN0b21TaGFkZXJGaWx0
ZXIoKSkgewotICAgICAgICAvLyBXaGVuIHdlIGhhdmUgYXQgbGVhc3QgYSBjdXN0b20gc2hhZGVy
IGluIHRoZSBjaGFpbiwgd2UgbmVlZCB0byBjb21wdXRlIHRoZSB3aG9sZSBzb3VyY2UgaW1hZ2Us
IGJlY2F1c2UgdGhlIHNoYWRlciBjYW4KLSAgICAgICAgLy8gcmVmZXJlbmNlIGFueSBwaXhlbCBh
bmQgd2UgY2Fubm90IGNvbnRyb2wgdGhhdC4KLSAgICAgICAgcmV0dXJuIGZpbHRlckJveFJlY3Q7
Ci0gICAgfQotI2VuZGlmCiAgICAgLy8gVGhlIHJlc3VsdCBvZiB0aGlzIGZ1bmN0aW9uIGlzIHRo
ZSBhcmVhIGluIHRoZSAiZmlsdGVyQm94UmVjdCIgdGhhdCBuZWVkcyB0byBiZSByZXBhaW50ZWQs
IHNvIHRoYXQgd2UgZnVsbHkgY292ZXIgdGhlICJkaXJ0eVJlY3QiLgogICAgIExheW91dFJlY3Qg
cmVjdEZvclJlcGFpbnQgPSBkaXJ0eVJlY3Q7CiAgICAgaWYgKGhhc0ZpbHRlclRoYXRNb3Zlc1Bp
eGVscygpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRmlsdGVyRWZm
ZWN0UmVuZGVyZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5k
ZXJlci5oCmluZGV4IDdjYTI3NTkuLjlkODhmYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5oCkBAIC00NCw4ICs0NCw2IEBACiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgQ2FjaGVkU2hhZGVyOwotY2xhc3MgQ3VzdG9tRmlsdGVy
UHJvZ3JhbTsKIGNsYXNzIERvY3VtZW50OwogY2xhc3MgR3JhcGhpY3NDb250ZXh0OwogY2xhc3Mg
UmVuZGVyRWxlbWVudDsKQEAgLTEyMSwxMCArMTE5LDYgQEAgcHVibGljOgogICAgIGJvb2wgaGFz
RmlsdGVyVGhhdE1vdmVzUGl4ZWxzKCkgY29uc3QgeyByZXR1cm4gbV9oYXNGaWx0ZXJUaGF0TW92
ZXNQaXhlbHM7IH0KICAgICBMYXlvdXRSZWN0IGNvbXB1dGVTb3VyY2VJbWFnZVJlY3RGb3JEaXJ0
eVJlY3QoY29uc3QgTGF5b3V0UmVjdCYgZmlsdGVyQm94UmVjdCwgY29uc3QgTGF5b3V0UmVjdCYg
ZGlydHlSZWN0KTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBib29sIGhhc0N1c3Rv
bVNoYWRlckZpbHRlcigpIGNvbnN0IHsgcmV0dXJuIG1faGFzQ3VzdG9tU2hhZGVyRmlsdGVyOyB9
Ci0jZW5kaWYKLQogcHJpdmF0ZToKICAgICB2b2lkIHNldE1heEVmZmVjdFJlY3RzKGNvbnN0IEZs
b2F0UmVjdCYgZWZmZWN0UmVjdCkKICAgICB7CkBAIC0xNTQsOSArMTQ4LDYgQEAgcHJpdmF0ZToK
IAogICAgIGJvb2wgbV9ncmFwaGljc0J1ZmZlckF0dGFjaGVkOwogICAgIGJvb2wgbV9oYXNGaWx0
ZXJUaGF0TW92ZXNQaXhlbHM7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGJvb2wgbV9o
YXNDdXN0b21TaGFkZXJGaWx0ZXI7Ci0jZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IGJhZTZkMzgu
LjkzYjhmYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXll
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApAQCAt
MTI2LDEzICsxMjYsNiBAQAogI2luY2x1ZGUgIlNWR05hbWVzLmgiCiAjZW5kaWYKIAotI2lmIEVO
QUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotI2luY2x1ZGUgIkN1c3RvbUZp
bHRlckdsb2JhbENvbnRleHQuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIK
LSNpbmNsdWRlICJDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiVmFs
aWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0jZW5kaWYKLQogI2RlZmluZSBNSU5fSU5U
RVJTRUNUX0ZPUl9SRVZFQUwgMzIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMTUxMiwxNiAr
MTUwNSw2IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnNldEZpbHRlckJhY2tlbmROZWVkc1JlcGFpbnRp
bmdJblJlY3QoY29uc3QgTGF5b3V0UmVjdCYgcmVjdCwKICAgICBGaWx0ZXJJbmZvJiBmaWx0ZXJJ
bmZvID0gRmlsdGVySW5mbzo6Z2V0KCp0aGlzKTsKICAgICBmaWx0ZXJJbmZvLmV4cGFuZERpcnR5
U291cmNlUmVjdChyZWN0Rm9yUmVwYWludCk7CiAgICAgCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KQotICAgIEFTU0VSVChmaWx0ZXJJbmZvLnJlbmRlcmVyKCkpOwotICAgIGlmIChmaWx0ZXJJbmZv
LnJlbmRlcmVyKCktPmhhc0N1c3RvbVNoYWRlckZpbHRlcigpKSB7Ci0gICAgICAgIC8vIElmIHdl
IGhhdmUgYXQgbGVhc3Qgb25lIGN1c3RvbSBzaGFkZXIsIHdlIG5lZWQgdG8gdXBkYXRlIHRoZSB3
aG9sZSBib3VuZGluZyBib3ggb2YgdGhlIGxheWVyLCBiZWNhdXNlIHRoZQotICAgICAgICAvLyBz
aGFkZXIgY2FuIGFkZHJlc3MgYW55IG91cHV0IHBpeGVsLgotICAgICAgICAvLyBOb3RlOiBUaGlz
IGlzIG9ubHkgZm9yIG91dHB1dCByZWN0LCBzbyB0aGVyZSdzIG5vIG5lZWQgdG8gZXhwYW5kIHRo
ZSBkaXJ0eSBzb3VyY2UgcmVjdC4KLSAgICAgICAgcmVjdEZvclJlcGFpbnQudW5pdGUoY2FsY3Vs
YXRlTGF5ZXJCb3VuZHModGhpcykpOwotICAgIH0KLSNlbmRpZgotICAgIAogICAgIFJlbmRlckxh
eWVyKiBwYXJlbnRMYXllciA9IGVuY2xvc2luZ0ZpbHRlclJlcGFpbnRMYXllcigpOwogICAgIEFT
U0VSVChwYXJlbnRMYXllcik7CiAgICAgRmxvYXRRdWFkIHJlcGFpbnRRdWFkKHJlY3RGb3JSZXBh
aW50KTsKQEAgLTY4MDgsNjggKzY3OTEsOCBAQCBQYXNzUmVmPFJlbmRlclN0eWxlPiBSZW5kZXJM
YXllcjo6Y3JlYXRlUmVmbGVjdGlvblN0eWxlKCkKICAgICByZXR1cm4gbmV3U3R5bGU7CiB9CiAK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLWJvb2wgUmVuZGVyTGF5ZXI6OmlzQ1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZCgpIGNvbnN0Ci17Ci0gICAgLy8gV2Ugb25seSB3YW50IHRvIGVuYWJsZSBz
aGFkZXJzIGlmIFdlYkdMIGlzIGFsc28gZW5hYmxlZCBvbiB0aGlzIHBsYXRmb3JtLgotICAgIGNv
bnN0IFNldHRpbmdzJiBzZXR0aW5ncyA9IHJlbmRlcmVyKCkuZnJhbWUoKS5zZXR0aW5ncygpOwot
ICAgIHJldHVybiBzZXR0aW5ncy5pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoKSAmJiBzZXR0aW5n
cy53ZWJHTEVuYWJsZWQoKTsKLX0KLQotI2VuZGlmCi0KICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMp
CiAKLUZpbHRlck9wZXJhdGlvbnMgUmVuZGVyTGF5ZXI6OmNvbXB1dGVGaWx0ZXJPcGVyYXRpb25z
KGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSkKLXsKLSNpZiAhRU5BQkxFKENTU19TSEFERVJTKQot
ICAgIHJldHVybiBzdHlsZS0+ZmlsdGVyKCk7Ci0jZWxzZQotICAgIGNvbnN0IEZpbHRlck9wZXJh
dGlvbnMmIGZpbHRlcnMgPSBzdHlsZS0+ZmlsdGVyKCk7Ci0gICAgaWYgKCFmaWx0ZXJzLmhhc0N1
c3RvbUZpbHRlcigpKQotICAgICAgICByZXR1cm4gZmlsdGVyczsKLQotICAgIGlmICghaXNDU1ND
dXN0b21GaWx0ZXJFbmFibGVkKCkpIHsKLSAgICAgICAgLy8gQ1NTIEN1c3RvbSBmaWx0ZXJzIHNo
b3VsZCBub3QgcGFyc2UgYXQgYWxsIGluIHRoaXMgY2FzZSwgYnV0IHRoZXJlIG1pZ2h0IGJlCi0g
ICAgICAgIC8vIHJlbWFpbmluZyBzdHlsZXMgdGhhdCB3ZXJlIHBhcnNlZCB3aGVuIHRoZSBmbGFn
IHdhcyBlbmFibGVkLiBSZXByb2R1Y2VzIGluIER1bXBSZW5kZXJUcmVlCi0gICAgICAgIC8vIGJl
Y2F1c2UgaXQgcmVzZXRzIHRoZSBmbGFnIHdoaWxlIHRoZSBwcmV2aW91cyB0ZXN0IGlzIHN0aWxs
IGxvYWRlZC4KLSAgICAgICAgcmV0dXJuIEZpbHRlck9wZXJhdGlvbnMoKTsKLSAgICB9Ci0KLSAg
ICBGaWx0ZXJPcGVyYXRpb25zIG91dHB1dEZpbHRlcnM7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7
IGkgPCBmaWx0ZXJzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIFJlZlB0cjxGaWx0ZXJPcGVyYXRp
b24+IGZpbHRlck9wZXJhdGlvbiA9IGZpbHRlcnMub3BlcmF0aW9ucygpLmF0KGkpOwotICAgICAg
ICBpZiAoZmlsdGVyT3BlcmF0aW9uLT50eXBlKCkgPT0gRmlsdGVyT3BlcmF0aW9uOjpDVVNUT00p
IHsKLSAgICAgICAgICAgIC8vIFdlIGhhdmUgdG8gd2FpdCB1bnRpbCB0aGUgcHJvZ3JhbSBvZiBD
U1MgU2hhZGVycyBpcyBsb2FkZWQgYmVmb3JlIHNldHRpbmcgaXQgb24gdGhlIGxheWVyLgotICAg
ICAgICAgICAgLy8gTm90ZSB0aGF0IHdlIHdpbGwgaGFuZGxlIHRoZSBsb2FkaW5nIG9mIHRoZSBz
aGFkZXJzIGFuZCByZXBhaW50aW5nIG9mIHRoZSBsYXllciBpbiB1cGRhdGVPclJlbW92ZUZpbHRl
ckNsaWVudHMuCi0gICAgICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1c3Rv
bU9wZXJhdGlvbiA9IHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbio+KGZp
bHRlck9wZXJhdGlvbi5nZXQoKSk7Ci0gICAgICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyUHJv
Z3JhbT4gcHJvZ3JhbSA9IGN1c3RvbU9wZXJhdGlvbi0+cHJvZ3JhbSgpOwotICAgICAgICAgICAg
aWYgKCFwcm9ncmFtLT5pc0xvYWRlZCgpKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotCi0g
ICAgICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gdmFsaWRhdGVk
UHJvZ3JhbSA9IHByb2dyYW0tPnZhbGlkYXRlZFByb2dyYW0oKTsKLSAgICAgICAgICAgIGlmICgh
dmFsaWRhdGVkUHJvZ3JhbSkgewotICAgICAgICAgICAgICAgIC8vIExhemlseSBjcmVhdGUgYSB2
YWxpZGF0ZWQgcHJvZ3JhbSBhbmQgc3RvcmUgaXQgb24gdGhlIEN1c3RvbUZpbHRlclByb2dyYW0u
Ci0gICAgICAgICAgICAgICAgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCogZ2xvYmFsQ29udGV4
dCA9IHJlbmRlcmVyKCkudmlldygpLmN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQoKTsKLSAgICAg
ICAgICAgICAgICB2YWxpZGF0ZWRQcm9ncmFtID0gQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3Jh
bTo6Y3JlYXRlKGdsb2JhbENvbnRleHQsIHByb2dyYW0tPnByb2dyYW1JbmZvKCkpOwotICAgICAg
ICAgICAgICAgIHByb2dyYW0tPnNldFZhbGlkYXRlZFByb2dyYW0odmFsaWRhdGVkUHJvZ3JhbSk7
Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGlmICghdmFsaWRhdGVkUHJvZ3JhbS0+aXNJ
bml0aWFsaXplZCgpKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgICAgICBS
ZWZQdHI8VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uPiB2YWxpZGF0ZWRPcGVyYXRpb24g
PSBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb246OmNyZWF0ZSh2YWxpZGF0ZWRQcm9ncmFt
LnJlbGVhc2UoKSwgCi0gICAgICAgICAgICAgICAgY3VzdG9tT3BlcmF0aW9uLT5wYXJhbWV0ZXJz
KCksIGN1c3RvbU9wZXJhdGlvbi0+bWVzaFJvd3MoKSwgY3VzdG9tT3BlcmF0aW9uLT5tZXNoQ29s
dW1ucygpLCBjdXN0b21PcGVyYXRpb24tPm1lc2hUeXBlKCkpOwotICAgICAgICAgICAgb3V0cHV0
RmlsdGVycy5vcGVyYXRpb25zKCkuYXBwZW5kKHZhbGlkYXRlZE9wZXJhdGlvbi5yZWxlYXNlKCkp
OwotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0KLSAgICAgICAgb3V0cHV0RmlsdGVy
cy5vcGVyYXRpb25zKCkuYXBwZW5kKGZpbHRlck9wZXJhdGlvbi5yZWxlYXNlKCkpOwotICAgIH0K
LSAgICByZXR1cm4gb3V0cHV0RmlsdGVyczsKLSNlbmRpZgotfQotCiB2b2lkIFJlbmRlckxheWVy
Ojp1cGRhdGVPclJlbW92ZUZpbHRlckNsaWVudHMoKQogewogICAgIGlmICghaGFzRmlsdGVyKCkp
IHsKQEAgLTY4NzcsMTMgKzY4MDAsNiBAQCB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVPclJlbW92
ZUZpbHRlckNsaWVudHMoKQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotICAgIGlmIChyZW5kZXJlcigpLnN0eWxlKCkuZmlsdGVyKCkuaGFzQ3VzdG9t
RmlsdGVyKCkpCi0gICAgICAgIEZpbHRlckluZm86OmdldCgqdGhpcykudXBkYXRlQ3VzdG9tRmls
dGVyQ2xpZW50cyhyZW5kZXJlcigpLnN0eWxlKCkuZmlsdGVyKCkpOwotICAgIGVsc2UgaWYgKEZp
bHRlckluZm8qIGZpbHRlckluZm8gPSBGaWx0ZXJJbmZvOjpnZXRJZkV4aXN0cygqdGhpcykpCi0g
ICAgICAgIGZpbHRlckluZm8tPnJlbW92ZUN1c3RvbUZpbHRlckNsaWVudHMoKTsKLSNlbmRpZgot
CiAjaWYgRU5BQkxFKFNWRykKICAgICBpZiAocmVuZGVyZXIoKS5zdHlsZSgpLmZpbHRlcigpLmhh
c1JlZmVyZW5jZUZpbHRlcigpKQogICAgICAgICBGaWx0ZXJJbmZvOjpnZXQoKnRoaXMpLnVwZGF0
ZVJlZmVyZW5jZUZpbHRlckNsaWVudHMocmVuZGVyZXIoKS5zdHlsZSgpLmZpbHRlcigpKTsKQEAg
LTY4OTksNyArNjgxNSw3IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZU9yUmVtb3ZlRmlsdGVy
RWZmZWN0UmVuZGVyZXIoKQogICAgIC8vIG1vZGUgbWlnaHQgaGF2ZSBjaGFuZ2VkIGZvciB0aGlz
IGxheWVyLgogICAgIGlmICghcGFpbnRzV2l0aEZpbHRlcnMoKSkgewogICAgICAgICAvLyBEb24n
dCBkZWxldGUgdGhlIHdob2xlIGZpbHRlciBpbmZvIGhlcmUsIGJlY2F1c2Ugd2UgbWlnaHQgdXNl
IGl0Ci0gICAgICAgIC8vIGZvciBsb2FkaW5nIENTUyBzaGFkZXIgZmlsZXMuCisgICAgICAgIC8v
IGZvciBsb2FkaW5nIFNWRyByZWZlcmVuY2UgZmlsdGVyIGZpbGVzLgogICAgICAgICBpZiAoRmls
dGVySW5mbyogZmlsdGVySW5mbyA9IEZpbHRlckluZm86OmdldElmRXhpc3RzKCp0aGlzKSkKICAg
ICAgICAgICAgIGZpbHRlckluZm8tPnNldFJlbmRlcmVyKDApOwogCkBAIC02OTIzLDcgKzY4Mzks
NyBAQCB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVPclJlbW92ZUZpbHRlckVmZmVjdFJlbmRlcmVy
KCkKIAogICAgIC8vIElmIHRoZSBmaWx0ZXIgZmFpbHMgdG8gYnVpbGQsIHJlbW92ZSBpdCBmcm9t
IHRoZSBsYXllci4gSXQgd2lsbCBzdGlsbCBhdHRlbXB0IHRvCiAgICAgLy8gZ28gdGhyb3VnaCBy
ZWd1bGFyIHByb2Nlc3NpbmcgKGUuZy4gY29tcG9zaXRpbmcpLCBidXQgbmV2ZXIgYXBwbHkgYW55
dGhpbmcuCi0gICAgaWYgKCFmaWx0ZXJJbmZvLnJlbmRlcmVyKCktPmJ1aWxkKCZyZW5kZXJlcigp
LCBjb21wdXRlRmlsdGVyT3BlcmF0aW9ucygmcmVuZGVyZXIoKS5zdHlsZSgpKSwgRmlsdGVyUHJv
cGVydHkpKQorICAgIGlmICghZmlsdGVySW5mby5yZW5kZXJlcigpLT5idWlsZCgmcmVuZGVyZXIo
KSwgcmVuZGVyZXIoKS5zdHlsZSgpLmZpbHRlcigpLCBGaWx0ZXJQcm9wZXJ0eSkpCiAgICAgICAg
IGZpbHRlckluZm8uc2V0UmVuZGVyZXIoMCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckxheWVyLmgKaW5kZXggZDYwNmQ5YS4uZTU5ZDRkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckxheWVyLmgKQEAgLTgyOCwxMiArODI4LDcgQEAgcHVibGljOgogICAgIGJvb2wg
Y29udGFpbnNEaXJ0eU92ZXJsYXlTY3JvbGxiYXJzKCkgY29uc3QgeyByZXR1cm4gbV9jb250YWlu
c0RpcnR5T3ZlcmxheVNjcm9sbGJhcnM7IH0KICAgICB2b2lkIHNldENvbnRhaW5zRGlydHlPdmVy
bGF5U2Nyb2xsYmFycyhib29sIGRpcnR5U2Nyb2xsYmFycykgeyBtX2NvbnRhaW5zRGlydHlPdmVy
bGF5U2Nyb2xsYmFycyA9IGRpcnR5U2Nyb2xsYmFyczsgfQogCi0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgIGJvb2wgaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKCkgY29uc3Q7Ci0jZW5kaWYK
LQogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKLSAgICBGaWx0ZXJPcGVyYXRpb25zIGNvbXB1dGVG
aWx0ZXJPcGVyYXRpb25zKGNvbnN0IFJlbmRlclN0eWxlKik7CiAgICAgYm9vbCBwYWludHNXaXRo
RmlsdGVycygpIGNvbnN0OwogICAgIGJvb2wgcmVxdWlyZXNGdWxsTGF5ZXJJbWFnZUZvckZpbHRl
cnMoKSBjb25zdDsKICAgICBGaWx0ZXJFZmZlY3RSZW5kZXJlciogZmlsdGVyUmVuZGVyZXIoKSBj
b25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJh
Y2tpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5j
cHAKaW5kZXggYTZkZmIyMC4uNzBiYjUxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKQEAgLTY1LDkgKzY1LDYgQEAKIAogI2lmIEVOQUJM
RShDU1NfRklMVEVSUykKICNpbmNsdWRlICJGaWx0ZXJFZmZlY3RSZW5kZXJlci5oIgotI2lmIEVO
QUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNl
bmRpZgogI2VuZGlmCiAKICNpZiBFTkFCTEUoV0VCR0wpIHx8IEVOQUJMRShBQ0NFTEVSQVRFRF8y
RF9DQU5WQVMpCkBAIC00MDcsNyArNDA0LDcgQEAgdm9pZCBSZW5kZXJMYXllckJhY2tpbmc6OnVw
ZGF0ZVRyYW5zZm9ybShjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUpCiAjaWYgRU5BQkxFKENTU19G
SUxURVJTKQogdm9pZCBSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZUZpbHRlcnMoY29uc3QgUmVu
ZGVyU3R5bGUqIHN0eWxlKQogewotICAgIG1fY2FuQ29tcG9zaXRlRmlsdGVycyA9IG1fZ3JhcGhp
Y3NMYXllci0+c2V0RmlsdGVycyhvd25pbmdMYXllcigpLmNvbXB1dGVGaWx0ZXJPcGVyYXRpb25z
KHN0eWxlKSk7CisgICAgbV9jYW5Db21wb3NpdGVGaWx0ZXJzID0gbV9ncmFwaGljc0xheWVyLT5z
ZXRGaWx0ZXJzKHN0eWxlLT5maWx0ZXIoKSk7CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyRmlsdGVySW5mby5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcAppbmRleCA5MGExZTUx
Li4zMTI1ZWY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXJGaWx0ZXJJbmZvLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXJGaWx0ZXJJbmZvLmNwcApAQCAtMzUsOCArMzUsNiBAQAogCiAjaW5jbHVkZSAiQ2FjaGVkU1ZH
RG9jdW1lbnQuaCIKICNpbmNsdWRlICJDYWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZS5oIgotI2lu
Y2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBy
b2dyYW0uaCIKICNpbmNsdWRlICJGaWx0ZXJFZmZlY3RSZW5kZXJlci5oIgogI2luY2x1ZGUgIlNW
R0VsZW1lbnQuaCIKICNpbmNsdWRlICJTVkdGaWx0ZXIuaCIKQEAgLTg1LDkgKzgzLDYgQEAgUmVu
ZGVyTGF5ZXI6OkZpbHRlckluZm86OkZpbHRlckluZm8oUmVuZGVyTGF5ZXImIGxheWVyKQogCiBS
ZW5kZXJMYXllcjo6RmlsdGVySW5mbzo6fkZpbHRlckluZm8oKQogewotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICByZW1vdmVDdXN0b21GaWx0ZXJDbGllbnRzKCk7Ci0jZW5kaWYKICNpZiBF
TkFCTEUoU1ZHKQogICAgIHJlbW92ZVJlZmVyZW5jZUZpbHRlckNsaWVudHMoKTsKICNlbmRpZgpA
QCAtMTQ5LDQ0ICsxNDQsNiBAQCB2b2lkIFJlbmRlckxheWVyOjpGaWx0ZXJJbmZvOjpyZW1vdmVS
ZWZlcmVuY2VGaWx0ZXJDbGllbnRzKCkKIAogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0KLXZvaWQgUmVuZGVyTGF5ZXI6OkZpbHRlckluZm86Om5vdGlmeUN1c3RvbUZpbHRlclBy
b2dyYW1Mb2FkZWQoQ3VzdG9tRmlsdGVyUHJvZ3JhbSopCi17Ci0gICAgbV9sYXllci5yZW5kZXJl
cigpLmVsZW1lbnQoKS0+c2V0TmVlZHNTdHlsZVJlY2FsYyhTeW50aGV0aWNTdHlsZUNoYW5nZSk7
Ci0gICAgbV9sYXllci5yZW5kZXJlcigpLnJlcGFpbnQoKTsKLX0KLQotdm9pZCBSZW5kZXJMYXll
cjo6RmlsdGVySW5mbzo6dXBkYXRlQ3VzdG9tRmlsdGVyQ2xpZW50cyhjb25zdCBGaWx0ZXJPcGVy
YXRpb25zJiBvcGVyYXRpb25zKQotewotICAgIGlmICghb3BlcmF0aW9ucy5zaXplKCkpIHsKLSAg
ICAgICAgcmVtb3ZlQ3VzdG9tRmlsdGVyQ2xpZW50cygpOwotICAgICAgICByZXR1cm47Ci0gICAg
fQotICAgIFZlY3RvcjxSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4+IGNhY2hlZEN1c3RvbUZp
bHRlclByb2dyYW1zOwotICAgIGZvciAoc2l6ZV90IGkgPSAwLCBzaXplID0gb3BlcmF0aW9ucy5z
aXplKCk7IGkgPCBzaXplOyArK2kpIHsKLSAgICAgICAgY29uc3QgRmlsdGVyT3BlcmF0aW9uKiBm
aWx0ZXJPcGVyYXRpb24gPSBvcGVyYXRpb25zLm9wZXJhdGlvbnMoKVtpXS5nZXQoKTsKLSAgICAg
ICAgaWYgKGZpbHRlck9wZXJhdGlvbi0+dHlwZSgpICE9IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9N
KQotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlck9wZXJh
dGlvbiogY3VzdG9tRmlsdGVyT3BlcmF0aW9uID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmls
dGVyT3BlcmF0aW9uKj4oZmlsdGVyT3BlcmF0aW9uKTsKLSAgICAgICAgQ3VzdG9tRmlsdGVyUHJv
Z3JhbSogcHJvZ3JhbSA9IGN1c3RvbUZpbHRlck9wZXJhdGlvbi0+cHJvZ3JhbSgpOwotICAgICAg
ICBjYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtcy5hcHBlbmQocHJvZ3JhbSk7Ci0gICAgICAgIHBy
b2dyYW0tPmFkZENsaWVudCh0aGlzKTsKLSAgICB9Ci0gICAgLy8gUmVtb3ZlIHRoZSBvbGQgY2xp
ZW50cyBoZXJlLCBhZnRlciB3ZSd2ZSBhZGRlZCB0aGUgbmV3IG9uZXMsIHNvIHRoYXQgd2UgZG9u
J3QgZmxpY2tlciBpZiBzb21lIHNoYWRlcnMgYXJlIHVuY2hhbmdlZC4KLSAgICByZW1vdmVDdXN0
b21GaWx0ZXJDbGllbnRzKCk7Ci0gICAgbV9jYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtcy5zd2Fw
KGNhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zKTsKLX0KLQotdm9pZCBSZW5kZXJMYXllcjo6Rmls
dGVySW5mbzo6cmVtb3ZlQ3VzdG9tRmlsdGVyQ2xpZW50cygpCi17Ci0gICAgZm9yIChzaXplX3Qg
aSA9IDAsIHNpemUgPSBtX2NhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zLnNpemUoKTsgaSA8IHNp
emU7ICsraSkKLSAgICAgICAgbV9jYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtc1tpXS0+cmVtb3Zl
Q2xpZW50KHRoaXMpOwotICAgIG1fY2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbXMuY2xlYXIoKTsK
LX0KLQotI2VuZGlmCi0KIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJM
RShDU1NfRklMVEVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJMYXllckZpbHRlckluZm8uaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXll
ckZpbHRlckluZm8uaAppbmRleCAwZmY3MWYxLi4xYTZmMmVmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyRmlsdGVySW5mby5oCkBAIC0zNSw3ICszNSw2IEBA
CiAKICNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUhhbmRsZS5oIgogI2luY2x1ZGUgIkNhY2hlZFNW
R0RvY3VtZW50Q2xpZW50LmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5o
IgogI2luY2x1ZGUgIlJlbmRlckxheWVyLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQz
LDExICs0Miw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIEVsZW1lbnQ7CiAKIGNsYXNz
IFJlbmRlckxheWVyOjpGaWx0ZXJJbmZvCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBFTkFC
TEUoU1ZHKQotICAgIGZpbmFsIDogcHVibGljIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQsIHB1
YmxpYyBDYWNoZWRTVkdEb2N1bWVudENsaWVudAotI2VsaWYgRU5BQkxFKENTU19TSEFERVJTKQot
ICAgIGZpbmFsIDogcHVibGljIEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQKLSNlbGlmIEVOQUJM
RShTVkcpCisjaWYgRU5BQkxFKFNWRykKICAgICBmaW5hbCA6IHB1YmxpYyBDYWNoZWRTVkdEb2N1
bWVudENsaWVudAogI2VuZGlmCiB7CkBAIC02MywxMSArNTgsNiBAQCBwdWJsaWM6CiAgICAgRmls
dGVyRWZmZWN0UmVuZGVyZXIqIHJlbmRlcmVyKCkgY29uc3QgeyByZXR1cm4gbV9yZW5kZXJlci5n
ZXQoKTsgfQogICAgIHZvaWQgc2V0UmVuZGVyZXIoUGFzc1JlZlB0cjxGaWx0ZXJFZmZlY3RSZW5k
ZXJlcj4pOwogICAgIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICB2b2lkIHVwZGF0ZUN1
c3RvbUZpbHRlckNsaWVudHMoY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYpOwotICAgIHZvaWQgcmVt
b3ZlQ3VzdG9tRmlsdGVyQ2xpZW50cygpOwotI2VuZGlmCi0KICNpZiBFTkFCTEUoU1ZHKQogICAg
IHZvaWQgdXBkYXRlUmVmZXJlbmNlRmlsdGVyQ2xpZW50cyhjb25zdCBGaWx0ZXJPcGVyYXRpb25z
Jik7CiAgICAgdm9pZCByZW1vdmVSZWZlcmVuY2VGaWx0ZXJDbGllbnRzKCk7CkBAIC03OSwxMCAr
NjksNiBAQCBwcml2YXRlOgogCiAgICAgZnJpZW5kIHZvaWQgV1RGOjpkZWxldGVPd25lZFB0cjxG
aWx0ZXJJbmZvPihGaWx0ZXJJbmZvKik7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAg
dmlydHVhbCB2b2lkIG5vdGlmeUN1c3RvbUZpbHRlclByb2dyYW1Mb2FkZWQoQ3VzdG9tRmlsdGVy
UHJvZ3JhbSopIG92ZXJyaWRlOwotI2VuZGlmCi0KICNpZiBFTkFCTEUoU1ZHKQogICAgIHZpcnR1
YWwgdm9pZCBub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSopIG92ZXJyaWRlOwogI2VuZGlm
CkBAIC0xMDMsMTAgKzg5LDYgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8RmlsdGVyRWZmZWN0UmVu
ZGVyZXI+IG1fcmVuZGVyZXI7CiAgICAgTGF5b3V0UmVjdCBtX2RpcnR5U291cmNlUmVjdDsKIAot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBWZWN0b3I8UmVmUHRyPEN1c3RvbUZpbHRlclBy
b2dyYW0+PiBtX2NhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zOwotI2VuZGlmCi0KICNpZiBFTkFC
TEUoU1ZHKQogICAgIFZlY3RvcjxSZWZQdHI8RWxlbWVudD4+IG1faW50ZXJuYWxTVkdSZWZlcmVu
Y2VzOwogICAgIFZlY3RvcjxDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRTVkdEb2N1bWVudD4+
IG1fZXh0ZXJuYWxTVkdSZWZlcmVuY2VzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZp
ZXcuY3BwCmluZGV4IDRhNGIzNWMuLjdiNjQ2YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyVmlldy5jcHAKQEAgLTUxLDEwICs1MSw2IEBACiAjaW5jbHVkZSAiUmVuZGVyTGF5ZXJD
b21wb3NpdG9yLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNE
X0dSQVBISUNTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaCIKLSNlbmRp
ZgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFJlbmRlclZpZXc6OlJlbmRlclZpZXcoRG9jdW1l
bnQmIGRvY3VtZW50LCBQYXNzUmVmPFJlbmRlclN0eWxlPiBzdHlsZSkKQEAgLTExODAsMTUgKzEx
NzYsNiBAQCB2b2lkIFJlbmRlclZpZXc6OnNldElzSW5XaW5kb3coYm9vbCBpc0luV2luZG93KQog
I2VuZGlmCiB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykK
LUN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQqIFJlbmRlclZpZXc6OmN1c3RvbUZpbHRlckdsb2Jh
bENvbnRleHQoKQotewotICAgIGlmICghbV9jdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0KQotICAg
ICAgICBtX2N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQgPSBhZG9wdFB0cihuZXcgQ3VzdG9tRmls
dGVyR2xvYmFsQ29udGV4dCgpKTsKLSAgICByZXR1cm4gbV9jdXN0b21GaWx0ZXJHbG9iYWxDb250
ZXh0LmdldCgpOwotfQotI2VuZGlmCi0KIHZvaWQgUmVuZGVyVmlldzo6c3R5bGVEaWRDaGFuZ2Uo
U3R5bGVEaWZmZXJlbmNlIGRpZmYsIGNvbnN0IFJlbmRlclN0eWxlKiBvbGRTdHlsZSkKIHsKICAg
ICBSZW5kZXJCbG9ja0Zsb3c6OnN0eWxlRGlkQ2hhbmdlKGRpZmYsIG9sZFN0eWxlKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmggYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5oCmluZGV4IGM3NTVjMTIuLjJhZWVlYjEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaApAQCAtMzgsMTAgKzM4LDYgQEAgY2xhc3Mg
UmVuZGVyUXVvdGU7CiBjbGFzcyBSZW5kZXJMYXllckNvbXBvc2l0b3I7CiAjZW5kaWYKIAotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotY2xhc3MgQ3VzdG9tRmls
dGVyR2xvYmFsQ29udGV4dDsKLSNlbmRpZgotCiBjbGFzcyBSZW5kZXJWaWV3IGZpbmFsIDogcHVi
bGljIFJlbmRlckJsb2NrRmxvdyB7CiBwdWJsaWM6CiAgICAgUmVuZGVyVmlldyhEb2N1bWVudCYs
IFBhc3NSZWY8UmVuZGVyU3R5bGU+KTsKQEAgLTE4OSwxMCArMTg1LDYgQEAgcHVibGljOgogICAg
IGJvb2wgdXNlc0NvbXBvc2l0aW5nKCkgY29uc3Q7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotICAgIEN1c3RvbUZpbHRlckdsb2JhbENvbnRl
eHQqIGN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQoKTsKLSNlbmRpZgotCiAgICAgSW50UmVjdCB1
bnNjYWxlZERvY3VtZW50UmVjdCgpIGNvbnN0OwogICAgIExheW91dFJlY3QgYmFja2dyb3VuZFJl
Y3QoUmVuZGVyQm94KiBiYWNrZ3JvdW5kUmVuZGVyZXIpIGNvbnN0OwogCkBAIC0zNDEsOSArMzMz
LDYgQEAgcHJpdmF0ZToKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiAgICAgT3du
UHRyPFJlbmRlckxheWVyQ29tcG9zaXRvcj4gbV9jb21wb3NpdG9yOwogI2VuZGlmCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0gICAgT3duUHRyPEN1c3RvbUZp
bHRlckdsb2JhbENvbnRleHQ+IG1fY3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dDsKLSNlbmRpZgog
ICAgIE93blB0cjxGbG93VGhyZWFkQ29udHJvbGxlcj4gbV9mbG93VGhyZWFkQ29udHJvbGxlcjsK
ICAgICBSZWZQdHI8SW50ZXJ2YWxBcmVuYT4gbV9pbnRlcnZhbEFyZW5hOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmNwcApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDkxMThhMS4uMDAwMDAwMAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuY3BwCisrKyAvZGV2L251
bGwKQEAgLTEsNTYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9iZSBTeXN0
ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xh
aW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lu
Y2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAi
U3R5bGVDYWNoZWRTaGFkZXIuaCIKLQotI2luY2x1ZGUgIkNTU1ByaW1pdGl2ZVZhbHVlLmgiCi0j
aW5jbHVkZSAiQ2FjaGVkU2hhZGVyLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotCi1TdHls
ZUNhY2hlZFNoYWRlcjo6U3R5bGVDYWNoZWRTaGFkZXIoQ2FjaGVkU2hhZGVyKiBzaGFkZXIpCi0g
ICAgOiBtX3NoYWRlcihzaGFkZXIpCi17Ci0gICAgIG1faXNDYWNoZWRTaGFkZXIgPSB0cnVlOwot
fQotCi1QYXNzUmVmUHRyPENTU1ZhbHVlPiBTdHlsZUNhY2hlZFNoYWRlcjo6Y3NzVmFsdWUoKSBj
b25zdAotewotICAgIHJldHVybiBDU1NQcmltaXRpdmVWYWx1ZTo6Y3JlYXRlKG1fc2hhZGVyLT51
cmwoKSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19VUkkpOwotfQotCi19IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5oIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmgKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDE1MjM0MjkuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2
MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jw
b3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg
4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIg
QkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFN0eWxl
Q2FjaGVkU2hhZGVyX2gKLSNkZWZpbmUgU3R5bGVDYWNoZWRTaGFkZXJfaAotCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VIYW5kbGUuaCIKLSNpbmNs
dWRlICJTdHlsZVNoYWRlci5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0KLW5hbWVz
cGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ2FjaGVkU2hhZGVyOwotCi1jbGFzcyBTdHlsZUNhY2hl
ZFNoYWRlciA6IHB1YmxpYyBTdHlsZVNoYWRlciB7Ci1wdWJsaWM6Ci0gICAgLy8gRklYTUU6IEtl
ZXAgYSByZWZlcmVuY2UgdG8gdGhlIGFjdHVhbCBDYWNoZWRTaGFkZXIgaW4gdGhpcyBjbGFzcy4K
LSAgICBzdGF0aWMgUGFzc1JlZlB0cjxTdHlsZUNhY2hlZFNoYWRlcj4gY3JlYXRlKENhY2hlZFNo
YWRlciogc2hhZGVyKSB7IHJldHVybiBhZG9wdFJlZihuZXcgU3R5bGVDYWNoZWRTaGFkZXIoc2hh
ZGVyKSk7IH0KLSAgICAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IGNzc1ZhbHVl
KCkgY29uc3Q7Ci0gICAgCi0gICAgdmlydHVhbCBDYWNoZWRTaGFkZXIqIGNhY2hlZFNoYWRlcigp
IGNvbnN0IHsgcmV0dXJuIG1fc2hhZGVyLmdldCgpOyB9Ci0gICAgCi1wcml2YXRlOgotICAgIFN0
eWxlQ2FjaGVkU2hhZGVyKENhY2hlZFNoYWRlciopOwotICAgIAotICAgIENhY2hlZFJlc291cmNl
SGFuZGxlPENhY2hlZFNoYWRlcj4gbV9zaGFkZXI7Ci19OwotCi19Ci0jZW5kaWYgLy8gRU5BQkxF
KENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gU3R5bGVDYWNoZWRTaGFkZXJfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3Jh
bS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWY0MDEyZi4uMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDQ5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQot
ICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xh
aW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNV
Q0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLQotI2luY2x1ZGUgIlN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotCi0jaW5j
bHVkZSAiU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaCIKLQotbmFtZXNwYWNlIFdlYkNv
cmUgewotCi1TdHlsZUN1c3RvbUZpbHRlclByb2dyYW06On5TdHlsZUN1c3RvbUZpbHRlclByb2dy
YW0oKQotewotICAgIGlmIChtX2NhY2hlKQotICAgICAgICBtX2NhY2hlLT5yZW1vdmUodGhpcyk7
Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hB
REVSUykKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBm
OGNiZWE4Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHls
ZUN1c3RvbUZpbHRlclByb2dyYW0uaAorKysgL2Rldi9udWxsCkBAIC0xLDE4NyArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
LSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0g
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICog
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFN0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbV9oCi0jZGVmaW5lIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCi0KLSNpZiBFTkFC
TEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VDbGllbnQuaCIKLSNpbmNs
dWRlICJDYWNoZWRSZXNvdXJjZUhhbmRsZS5oIgotI2luY2x1ZGUgIkNhY2hlZFNoYWRlci5oIgot
I2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJVUkwuaCIKLSNpbmNs
dWRlICJTdHlsZVNoYWRlci5oIgotI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+Ci0KLW5hbWVz
cGFjZSBXZWJDb3JlIHsKLQotLy8gQ1NTIFNoYWRlcnMKLQotY2xhc3MgU3R5bGVDdXN0b21GaWx0
ZXJQcm9ncmFtQ2FjaGU7Ci0KLWNsYXNzIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSA6IHB1Ymxp
YyBDdXN0b21GaWx0ZXJQcm9ncmFtLCBwdWJsaWMgQ2FjaGVkUmVzb3VyY2VDbGllbnQgewotICAg
IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRy
PFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbT4gY3JlYXRlKFVSTCB2ZXJ0ZXhTaGFkZXJVUkwsIFBh
c3NSZWZQdHI8U3R5bGVTaGFkZXI+IHZlcnRleFNoYWRlciwgCi0gICAgICAgIFVSTCBmcmFnbWVu
dFNoYWRlclVSTCwgUGFzc1JlZlB0cjxTdHlsZVNoYWRlcj4gZnJhZ21lbnRTaGFkZXIsIEN1c3Rv
bUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlLAotICAgICAgICBjb25zdCBDdXN0b21GaWx0
ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG1peFNldHRpbmdzLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBt
ZXNoVHlwZSkKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtKHZlcnRleFNoYWRlclVSTCwgdmVydGV4U2hhZGVyLCBmcmFnbWVudFNoYWRl
clVSTCwgZnJhZ21lbnRTaGFkZXIsIHByb2dyYW1UeXBlLCBtaXhTZXR0aW5ncywgbWVzaFR5cGUp
KTsKLSAgICB9Ci0gICAgCi0gICAgdm9pZCBzZXRWZXJ0ZXhTaGFkZXIoUGFzc1JlZlB0cjxTdHls
ZVNoYWRlcj4gc2hhZGVyKQotICAgIHsKLSAgICAgICAgLy8gVGhlIHNoYWRlciBpcyBpbW11dGFi
bGUgd2hpbGUgaW4gdGhlIGNhY2hlLgotICAgICAgICBBU1NFUlQoIW1fY2FjaGUpOwotICAgICAg
ICBtX3ZlcnRleFNoYWRlciA9IHNoYWRlcjsgCi0gICAgfQotICAgIFN0eWxlU2hhZGVyKiB2ZXJ0
ZXhTaGFkZXIoKSBjb25zdCB7IHJldHVybiBtX3ZlcnRleFNoYWRlci5nZXQoKTsgfQotICAgIAot
ICAgIHZvaWQgc2V0RnJhZ21lbnRTaGFkZXIoUGFzc1JlZlB0cjxTdHlsZVNoYWRlcj4gc2hhZGVy
KQotICAgIHsKLSAgICAgICAgLy8gVGhlIHNoYWRlciBpcyBpbW11dGFibGUgd2hpbGUgaW4gdGhl
IGNhY2hlLgotICAgICAgICBBU1NFUlQoIW1fY2FjaGUpOwotICAgICAgICBtX2ZyYWdtZW50U2hh
ZGVyID0gc2hhZGVyOyAKLSAgICB9Ci0gICAgU3R5bGVTaGFkZXIqIGZyYWdtZW50U2hhZGVyKCkg
Y29uc3QgeyByZXR1cm4gbV9mcmFnbWVudFNoYWRlci5nZXQoKTsgfQotICAgIAotICAgIHZpcnR1
YWwgU3RyaW5nIHZlcnRleFNoYWRlclN0cmluZygpIGNvbnN0Ci0gICAgewotICAgICAgICBBU1NF
UlQoaXNMb2FkZWQoKSk7Ci0gICAgICAgIHJldHVybiBtX2NhY2hlZFZlcnRleFNoYWRlci5nZXQo
KSA/IG1fY2FjaGVkVmVydGV4U2hhZGVyLT5zaGFkZXJTdHJpbmcoKSA6IFN0cmluZygpOwotICAg
IH0KLSAgICAKLSAgICB2aXJ0dWFsIFN0cmluZyBmcmFnbWVudFNoYWRlclN0cmluZygpIGNvbnN0
Ci0gICAgewotICAgICAgICBBU1NFUlQoaXNMb2FkZWQoKSk7Ci0gICAgICAgIHJldHVybiBtX2Nh
Y2hlZEZyYWdtZW50U2hhZGVyLmdldCgpID8gbV9jYWNoZWRGcmFnbWVudFNoYWRlci0+c2hhZGVy
U3RyaW5nKCkgOiBTdHJpbmcoKTsKLSAgICB9Ci0KLSAgICB2aXJ0dWFsIGJvb2wgaXNMb2FkZWQo
KSBjb25zdAotICAgIHsKLSAgICAgICAgLy8gRG8gbm90IHVzZSB0aGUgQ2FjaGVkUmVzb3VyY2U6
aXNMb2FkZWQgbWV0aG9kIGhlcmUsIGJlY2F1c2UgaXQgYWN0dWFsbHkgbWVhbnMgIWlzTG9hZGlu
ZygpLAotICAgICAgICAvLyBzbyBtaXNzaW5nIGFuZCBjYW5jZWxlZCByZXNvdXJjZXMgd2lsbCBo
YXZlIGlzTG9hZGVkIHNldCB0byB0cnVlLCBldmVuIGlmIHRoZXkgYXJlIG5vdCBsb2FkZWQgeWV0
LgotICAgICAgICBBU1NFUlQoIW1fdmVydGV4U2hhZGVyIHx8IG1fdmVydGV4U2hhZGVyLT5pc0Nh
Y2hlZFNoYWRlcigpKTsKLSAgICAgICAgQVNTRVJUKCFtX2ZyYWdtZW50U2hhZGVyIHx8IG1fZnJh
Z21lbnRTaGFkZXItPmlzQ2FjaGVkU2hhZGVyKCkpOwotICAgICAgICBBU1NFUlQobV9jYWNoZWRW
ZXJ0ZXhTaGFkZXIuZ2V0KCkgfHwgbV9jYWNoZWRGcmFnbWVudFNoYWRlci5nZXQoKSk7Ci0gICAg
ICAgIHJldHVybiAoIW1fY2FjaGVkVmVydGV4U2hhZGVyLmdldCgpIHx8IG1faXNWZXJ0ZXhTaGFk
ZXJMb2FkZWQpCi0gICAgICAgICAgICAmJiAoIW1fY2FjaGVkRnJhZ21lbnRTaGFkZXIuZ2V0KCkg
fHwgbV9pc0ZyYWdtZW50U2hhZGVyTG9hZGVkKTsKLSAgICB9Ci0KLSAgICB2aXJ0dWFsIHZvaWQg
d2lsbEhhdmVDbGllbnRzKCkKLSAgICB7Ci0gICAgICAgIGlmIChtX3ZlcnRleFNoYWRlcikgewot
ICAgICAgICAgICAgbV9jYWNoZWRWZXJ0ZXhTaGFkZXIgPSBtX3ZlcnRleFNoYWRlci0+Y2FjaGVk
U2hhZGVyKCk7Ci0gICAgICAgICAgICBtX2NhY2hlZFZlcnRleFNoYWRlci0+YWRkQ2xpZW50KHRo
aXMpOwotICAgICAgICB9Ci0gICAgICAgIGlmIChtX2ZyYWdtZW50U2hhZGVyKSB7Ci0gICAgICAg
ICAgICBtX2NhY2hlZEZyYWdtZW50U2hhZGVyID0gbV9mcmFnbWVudFNoYWRlci0+Y2FjaGVkU2hh
ZGVyKCk7Ci0gICAgICAgICAgICBtX2NhY2hlZEZyYWdtZW50U2hhZGVyLT5hZGRDbGllbnQodGhp
cyk7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgCi0gICAgdmlydHVhbCB2b2lkIGRpZFJlbW92ZUxh
c3RDbGllbnQoKQotICAgIHsKLSAgICAgICAgaWYgKG1fY2FjaGVkVmVydGV4U2hhZGVyLmdldCgp
KSB7Ci0gICAgICAgICAgICBtX2NhY2hlZFZlcnRleFNoYWRlci0+cmVtb3ZlQ2xpZW50KHRoaXMp
OwotICAgICAgICAgICAgbV9jYWNoZWRWZXJ0ZXhTaGFkZXIgPSAwOwotICAgICAgICAgICAgbV9p
c1ZlcnRleFNoYWRlckxvYWRlZCA9IGZhbHNlOwotICAgICAgICB9Ci0gICAgICAgIGlmIChtX2Nh
Y2hlZEZyYWdtZW50U2hhZGVyLmdldCgpKSB7Ci0gICAgICAgICAgICBtX2NhY2hlZEZyYWdtZW50
U2hhZGVyLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0gICAgICAgICAgICBtX2NhY2hlZEZyYWdtZW50
U2hhZGVyID0gMDsKLSAgICAgICAgICAgIG1faXNGcmFnbWVudFNoYWRlckxvYWRlZCA9IGZhbHNl
OwotICAgICAgICB9Ci0gICAgfQotICAgIAotICAgIHZpcnR1YWwgdm9pZCBub3RpZnlGaW5pc2hl
ZChDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UpCi0gICAgewotICAgICAgICBpZiAocmVzb3VyY2Ut
PmVycm9yT2NjdXJyZWQoKSkKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgLy8gTm90ZSB0
aGF0IG1fY2FjaGVkVmVydGV4U2hhZGVyIG1pZ2h0IGJlIGVxdWFsIHRvIG1fY2FjaGVkRnJhZ21l
bnRTaGFkZXIgYW5kIGl0IHdvdWxkIG9ubHkgZ2V0IG9uZSBldmVudCBpbiB0aGF0IGNhc2UuCi0g
ICAgICAgIGlmIChyZXNvdXJjZSA9PSBtX2NhY2hlZFZlcnRleFNoYWRlci5nZXQoKSkKLSAgICAg
ICAgICAgIG1faXNWZXJ0ZXhTaGFkZXJMb2FkZWQgPSB0cnVlOwotICAgICAgICBpZiAocmVzb3Vy
Y2UgPT0gbV9jYWNoZWRGcmFnbWVudFNoYWRlci5nZXQoKSkKLSAgICAgICAgICAgIG1faXNGcmFn
bWVudFNoYWRlckxvYWRlZCA9IHRydWU7Ci0gICAgICAgIGlmIChpc0xvYWRlZCgpKQotICAgICAg
ICAgICAgbm90aWZ5Q2xpZW50cygpOwotICAgIH0KLQotICAgIGJvb2wgaGFzUGVuZGluZ1NoYWRl
cnMoKSBjb25zdAotICAgIHsKLSAgICAgICAgcmV0dXJuIChtX3ZlcnRleFNoYWRlciAmJiBtX3Zl
cnRleFNoYWRlci0+aXNQZW5kaW5nU2hhZGVyKCkpIAotICAgICAgICAgICAgfHwgKG1fZnJhZ21l
bnRTaGFkZXIgJiYgbV9mcmFnbWVudFNoYWRlci0+aXNQZW5kaW5nU2hhZGVyKCkpOwotICAgIH0K
LQotICAgIC8vIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlIGlzIHJlc3BvbnNpYmxlIHdp
dGggdXBkYXRpbmcgdGhlIHJlZmVyZW5jZSB0byB0aGUgY2FjaGUuCi0gICAgdm9pZCBzZXRDYWNo
ZShTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZSogY2FjaGUpIHsgbV9jYWNoZSA9IGNhY2hl
OyB9Ci0gICAgYm9vbCBpbkNhY2hlKCkgY29uc3QgeyByZXR1cm4gbV9jYWNoZTsgfQotICAgIAot
ICAgIFVSTCB2ZXJ0ZXhTaGFkZXJVUkwoKSBjb25zdCB7IHJldHVybiBtX3ZlcnRleFNoYWRlclVS
TDsgfQotICAgIFVSTCBmcmFnbWVudFNoYWRlclVSTCgpIGNvbnN0IHsgcmV0dXJuIG1fZnJhZ21l
bnRTaGFkZXJVUkw7IH0KLQotcHJpdmF0ZToKLSAgICBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0o
VVJMIHZlcnRleFNoYWRlclVSTCwgUGFzc1JlZlB0cjxTdHlsZVNoYWRlcj4gdmVydGV4U2hhZGVy
LCBVUkwgZnJhZ21lbnRTaGFkZXJVUkwsIFBhc3NSZWZQdHI8U3R5bGVTaGFkZXI+IGZyYWdtZW50
U2hhZGVyLCAKLSAgICAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNv
bnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyYgbWl4U2V0dGluZ3MsIEN1c3RvbUZp
bHRlck1lc2hUeXBlIG1lc2hUeXBlKQotICAgICAgICA6IEN1c3RvbUZpbHRlclByb2dyYW0ocHJv
Z3JhbVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSkKLSAgICAgICAgLCBtX3ZlcnRleFNoYWRl
cih2ZXJ0ZXhTaGFkZXIpCi0gICAgICAgICwgbV9mcmFnbWVudFNoYWRlcihmcmFnbWVudFNoYWRl
cikKLSAgICAgICAgLCBtX3ZlcnRleFNoYWRlclVSTCh2ZXJ0ZXhTaGFkZXJVUkwpCi0gICAgICAg
ICwgbV9mcmFnbWVudFNoYWRlclVSTChmcmFnbWVudFNoYWRlclVSTCkKLSAgICAgICAgLCBtX2Nh
Y2hlKDApCi0gICAgICAgICwgbV9pc1ZlcnRleFNoYWRlckxvYWRlZChmYWxzZSkKLSAgICAgICAg
LCBtX2lzRnJhZ21lbnRTaGFkZXJMb2FkZWQoZmFsc2UpCi0gICAgewotICAgIH0KLQotICAgIH5T
dHlsZUN1c3RvbUZpbHRlclByb2dyYW0oKTsKLSAgICAKLSAgICBSZWZQdHI8U3R5bGVTaGFkZXI+
IG1fdmVydGV4U2hhZGVyOwotICAgIFJlZlB0cjxTdHlsZVNoYWRlcj4gbV9mcmFnbWVudFNoYWRl
cjsKLQotICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFNoYWRlcj4gbV9jYWNoZWRWZXJ0
ZXhTaGFkZXI7Ci0gICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2hhZGVyPiBtX2NhY2hl
ZEZyYWdtZW50U2hhZGVyOwotCi0gICAgLy8gVGhlIFVSTHMgZm9ybSB0aGUga2V5IG9mIHRoZSBT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW0gaW4gdGhlIGNhY2hlIGFuZCBhcmUgdXNlZAotICAgIC8v
IHRvIGxvb2t1cCB0aGUgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtIHdoZW4gaXQncyByZW1vdmVk
IGZyb20gdGhlIGNhY2hlLgotICAgIFVSTCBtX3ZlcnRleFNoYWRlclVSTDsKLSAgICBVUkwgbV9m
cmFnbWVudFNoYWRlclVSTDsKLQotICAgIC8vIFRoZSBDYWNoZSBpcyByZXNwb25zaWJsZSBvZiBp
bnZhbGlkYXRpbmcgdGhpcyByZWZlcmVuY2UuCi0gICAgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
Q2FjaGUqIG1fY2FjaGU7Ci0gICAgCi0gICAgYm9vbCBtX2lzVmVydGV4U2hhZGVyTG9hZGVkOwot
ICAgIGJvb2wgbV9pc0ZyYWdtZW50U2hhZGVyTG9hZGVkOwotfTsKLQotfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuY3BwCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NmE3MjRkLi4wMDAwMDAwCi0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5j
cHAKKysrIC9kZXYvbnVsbApAQCAtMSw4NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDEzIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
Ci0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
LSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
LSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0KLSNpbmNsdWRlICJTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5oIgotCi0jaW5jbHVk
ZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNpbmNsdWRlICJTdHlsZUN1c3RvbUZpbHRl
clByb2dyYW0uaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1zdGF0aWMgQ3VzdG9tRmlsdGVy
UHJvZ3JhbUluZm8gcHJvZ3JhbUNhY2hlS2V5KFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJv
Z3JhbSkgCi17Ci0gICAgQVNTRVJUKHByb2dyYW0tPnZlcnRleFNoYWRlclVSTCgpLmlzVmFsaWQo
KSB8fCBwcm9ncmFtLT5mcmFnbWVudFNoYWRlclVSTCgpLmlzVmFsaWQoKSk7Ci0gICAgcmV0dXJu
IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvKHByb2dyYW0tPnZlcnRleFNoYWRlclVSTCgpLCBwcm9n
cmFtLT5mcmFnbWVudFNoYWRlclVSTCgpLCAKLSAgICAgICAgcHJvZ3JhbS0+cHJvZ3JhbVR5cGUo
KSwgcHJvZ3JhbS0+bWl4U2V0dGluZ3MoKSwgcHJvZ3JhbS0+bWVzaFR5cGUoKSk7Ci19Ci0KLVN0
eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlOjpTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNo
ZSgpCi17Ci19Ci0KLVN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlOjp+U3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtQ2FjaGUoKQotewotICAgIC8vIE1ha2Ugc3VyZSB0aGUgcHJvZ3JhbXMgYXJl
IG5vdCBjYWxsaW5nIGJhY2sgaW50byB0aGlzIG9iamVjdC4KLSAgICBmb3IgKENhY2hlTWFwOjpp
dGVyYXRvciBpdGVyID0gbV9jYWNoZS5iZWdpbigpLCBlbmQgPSBtX2NhY2hlLmVuZCgpOyBpdGVy
ICE9IGVuZDsgKytpdGVyKQotICAgICAgICBpdGVyLT52YWx1ZS0+c2V0Q2FjaGUoMCk7Ci19Ci0K
LVN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGU6
Omxvb2t1cChjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8pIGNvbnN0
Ci17Ci0gICAgcmV0dXJuIG1fY2FjaGUuZ2V0KHByb2dyYW1JbmZvKTsKLX0KLQotU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZTo6bG9va3VwKFN0
eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSkgY29uc3QKLXsKLSAgICByZXR1cm4gbG9v
a3VwKHByb2dyYW1DYWNoZUtleShwcm9ncmFtKSk7Ci19Ci0KLXZvaWQgU3R5bGVDdXN0b21GaWx0
ZXJQcm9ncmFtQ2FjaGU6OmFkZChTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0qIHByb2dyYW0pCi17
Ci0gICAgQVNTRVJUKCFtX2NhY2hlLmNvbnRhaW5zKHByb2dyYW1DYWNoZUtleShwcm9ncmFtKSkp
OwotICAgIG1fY2FjaGUuc2V0KHByb2dyYW1DYWNoZUtleShwcm9ncmFtKSwgcHJvZ3JhbSk7Ci0g
ICAgcHJvZ3JhbS0+c2V0Q2FjaGUodGhpcyk7Ci19Ci0KLXZvaWQgU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtQ2FjaGU6OnJlbW92ZShTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0qIHByb2dyYW0pCi17
Ci0gICAgQVNTRVJUKG1fY2FjaGUuY29udGFpbnMocHJvZ3JhbUNhY2hlS2V5KHByb2dyYW0pKSk7
Ci0gICAgbV9jYWNoZS5yZW1vdmUocHJvZ3JhbUNhY2hlS2V5KHByb2dyYW0pKTsKLX0KLQotfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbUNhY2hlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjlh
NTE0My4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaAorKysgL2Rldi9udWxsCkBAIC0xLDY1ICswLDAgQEAK
LS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KA
nSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0g
KiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgU3R5bGVDdXN0b21GaWx0
ZXJQcm9ncmFtQ2FjaGVfaAotI2RlZmluZSBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZV9o
Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUluZm8uaCIKLSNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgotI2luY2x1ZGUgPHd0Zi9IYXNo
TWFwLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtOwotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm87Ci0KLWNsYXNzIFN0eWxlQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUNhY2hlIHsKLSAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKLXB1
YmxpYzoKLSAgICBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZSgpOwotICAgIH5TdHlsZUN1
c3RvbUZpbHRlclByb2dyYW1DYWNoZSgpOwotCi0gICAgLy8gTG9va3VwcyBhIFN0eWxlQ3VzdG9t
RmlsdGVyUHJvZ3JhbSB0aGF0IGhhcyBzaW1pbGFyIHBhcmFtZXRlcnMgd2l0aCB0aGUgc3BlY2lm
aWVkIHByb2dyYW0uCi0gICAgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKiBsb29rdXAoU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtKikgY29uc3Q7Ci0gICAgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFt
KiBsb29rdXAoY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mKSBjb25zdDsKLQotICAgIHZv
aWQgYWRkKFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSopOwotICAgIHZvaWQgcmVtb3ZlKFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbSopOwotCi1wcml2YXRlOgotICAgIHR5cGVkZWYgSGFzaE1hcDxD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mbywgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKj4gQ2FjaGVN
YXA7Ci0gICAgQ2FjaGVNYXAgbV9jYWNoZTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
LQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIFN0eWxlQ3VzdG9t
RmlsdGVyUHJvZ3JhbUNhY2hlX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZVBlbmRpbmdTaGFkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TdHlsZVBlbmRpbmdTaGFkZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
OThhZDkxYy4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5
bGVQZW5kaW5nU2hhZGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2MyArMCwwIEBACi0vKgotICog
Q29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0Ogot
ICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAg
IGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwot
ICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFO
WQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAq
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
Ci0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
Ci0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFN0eWxlUGVuZGluZ1NoYWRlcl9oCi0j
ZGVmaW5lIFN0eWxlUGVuZGluZ1NoYWRlcl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0K
LSNpbmNsdWRlICJDU1NWYWx1ZS5oIgotI2luY2x1ZGUgIlN0eWxlU2hhZGVyLmgiCi0jaW5jbHVk
ZSAiV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgot
Ci1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIFdlYktpdENTU1NoYWRlclZhbHVlOwotCi1j
bGFzcyBTdHlsZVBlbmRpbmdTaGFkZXIgOiBwdWJsaWMgU3R5bGVTaGFkZXIgewotcHVibGljOgot
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPFN0eWxlUGVuZGluZ1NoYWRlcj4gY3JlYXRlKFdlYktpdENT
U1NoYWRlclZhbHVlKiB2YWx1ZSkgeyByZXR1cm4gYWRvcHRSZWYobmV3IFN0eWxlUGVuZGluZ1No
YWRlcih2YWx1ZSkpOyB9Ci0gICAgCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBj
c3NWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdmFsdWU7IH0KLSAgICBXZWJLaXRDU1NTaGFkZXJW
YWx1ZSogY3NzU2hhZGVyVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3ZhbHVlOyB9Ci1wcml2YXRl
OgotICAgIFN0eWxlUGVuZGluZ1NoYWRlcihXZWJLaXRDU1NTaGFkZXJWYWx1ZSogdmFsdWUpCi0g
ICAgICAgIDogbV92YWx1ZSh2YWx1ZSkKLSAgICB7Ci0gICAgICAgICBtX2lzUGVuZGluZ1NoYWRl
ciA9IHRydWU7Ci0gICAgfQotICAgIAotICAgIFdlYktpdENTU1NoYWRlclZhbHVlKiBtX3ZhbHVl
OyAvLyBOb3QgcmV0YWluZWQ7IGl0IG93bnMgdXMuCi19OwotCi19Ci0jZW5kaWYgLy8gRU5BQkxF
KENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gU3R5bGVQZW5kaW5nU2hhZGVyX2gKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVNoYWRlci5oIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlU2hhZGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IGUzOGY5YmYuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1N0eWxlU2hhZGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2NyArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
LSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0g
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICog
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFN0eWxlU2hhZGVyX2gKLSNk
ZWZpbmUgU3R5bGVTaGFkZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBDYWNo
ZWRTaGFkZXI7Ci1jbGFzcyBDU1NWYWx1ZTsKLQotY2xhc3MgU3R5bGVTaGFkZXIgOiBwdWJsaWMg
UmVmQ291bnRlZDxTdHlsZVNoYWRlcj4gewotcHVibGljOgotICAgIHZpcnR1YWwgflN0eWxlU2hh
ZGVyKCkgeyB9Ci0KLSAgICBBTFdBWVNfSU5MSU5FIGJvb2wgaXNDYWNoZWRTaGFkZXIoKSBjb25z
dCB7IHJldHVybiBtX2lzQ2FjaGVkU2hhZGVyOyB9Ci0gICAgQUxXQVlTX0lOTElORSBib29sIGlz
UGVuZGluZ1NoYWRlcigpIGNvbnN0IHsgcmV0dXJuIG1faXNQZW5kaW5nU2hhZGVyOyB9Ci0gICAg
Ci0gICAgdmlydHVhbCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBjc3NWYWx1ZSgpIGNvbnN0ID0gMDsK
LSAgICAKLSAgICB2aXJ0dWFsIENhY2hlZFNoYWRlciogY2FjaGVkU2hhZGVyKCkgY29uc3QgeyBy
ZXR1cm4gMDsgfQotICAgIAotcHJvdGVjdGVkOgotICAgIFN0eWxlU2hhZGVyKCkKLSAgICAgICAg
OiBtX2lzQ2FjaGVkU2hhZGVyKGZhbHNlKQotICAgICAgICAsIG1faXNQZW5kaW5nU2hhZGVyKGZh
bHNlKQotICAgIHsKLSAgICB9Ci0gICAgYm9vbCBtX2lzQ2FjaGVkU2hhZGVyIDogMTsKLSAgICBi
b29sIG1faXNQZW5kaW5nU2hhZGVyIDogMTsKLX07Ci0KLX0KLQotI2VuZGlmIC8vIEVOQUJMRShD
U1NfU0hBREVSUykKLQotI2VuZGlmIC8vIFN0eWxlU2hhZGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0ay5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRH
dGsuY3BwCmluZGV4IDhjOWU3NjIuLjZiM2U2Y2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Z3RrL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0ay5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmNw
cApAQCAtNTc3LDEzICs1NzcsNiBAQCB2b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydEd0azo6c2V0
Q1NTUmVnaW9uc0VuYWJsZWQoV2ViS2l0V2ViVmlldyogd2ViVmlldywgYm9vbAogICAgIFJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0Q1NTUmVnaW9uc0VuYWJsZWQo
ZW5hYmxlZCk7CiB9CiAKLXZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRDU1NDdXN0
b21GaWx0ZXJFbmFibGVkKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcsIGJvb2wgZW5hYmxlZCkKLXsK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY29yZSh3ZWJWaWV3KS0+c2V0dGluZ3MoKS5z
ZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGVuYWJsZWQpOwotI2VuZGlmCi19Ci0KIHZvaWQgRHVt
cFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRFeHBlcmltZW50YWxDb250ZW50U2VjdXJpdHlQb2xp
Y3lGZWF0dXJlc0VuYWJsZWQoYm9vbCBlbmFibGVkKQogewogI2lmIEVOQUJMRShDU1BfTkVYVCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJU
cmVlU3VwcG9ydEd0ay5oIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJl
bmRlclRyZWVTdXBwb3J0R3RrLmgKaW5kZXggNGZkNjI1NS4uNDAwYmEwZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3Rr
LmgKKysrIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVT
dXBwb3J0R3RrLmgKQEAgLTEwNCw3ICsxMDQsNiBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQg
c2V0UGFnZUNhY2hlU3VwcG9ydHNQbHVnaW5zKFdlYktpdFdlYlZpZXcqLCBib29sIGVuYWJsZWQp
OwogICAgIHN0YXRpYyB2b2lkIHNldENTU0dyaWRMYXlvdXRFbmFibGVkKFdlYktpdFdlYlZpZXcq
LCBib29sIGVuYWJsZWQpOwogICAgIHN0YXRpYyB2b2lkIHNldENTU1JlZ2lvbnNFbmFibGVkKFdl
YktpdFdlYlZpZXcqLCBib29sIGVuYWJsZWQpOwotICAgIHN0YXRpYyB2b2lkIHNldENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQoV2ViS2l0V2ViVmlldyosIGJvb2wgZW5hYmxlZCk7CiAgICAgc3RhdGlj
IHZvaWQgc2V0RXhwZXJpbWVudGFsQ29udGVudFNlY3VyaXR5UG9saWN5RmVhdHVyZXNFbmFibGVk
KGJvb2wpOwogICAgIHN0YXRpYyB2b2lkIHNldFNlYW1sZXNzSUZyYW1lc0VuYWJsZWQoYm9vbCk7
CiAgICAgc3RhdGljIHZvaWQgc2V0U2hhZG93RE9NRW5hYmxlZChib29sKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwCmluZGV4IDA5YWNjZjguLmY2
NTRiOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcApAQCAtMTIxLDcgKzEyMSw2IEBAIGVudW0gewogICAgIFBST1BfRU5BQkxFX1NNT09USF9T
Q1JPTExJTkcsCiAgICAgUFJPUF9NRURJQV9QTEFZQkFDS19SRVFVSVJFU19VU0VSX0dFU1RVUkUs
CiAgICAgUFJPUF9NRURJQV9QTEFZQkFDS19BTExPV1NfSU5MSU5FLAotICAgIFBST1BfRU5BQkxF
X0NTU19TSEFERVJTLAogICAgIFBST1BfRU5BQkxFX1JVTk5JTkdfT0ZfSU5TRUNVUkVfQ09OVEVO
VCwKICAgICBQUk9QX0VOQUJMRV9ESVNQTEFZX09GX0lOU0VDVVJFX0NPTlRFTlQsCiAgICAgUFJP
UF9FTkFCTEVfTUVESUFfU09VUkNFCkBAIC05ODcsMjUgKzk4Niw2IEBAIHN0YXRpYyB2b2lkIHdl
YmtpdF93ZWJfc2V0dGluZ3NfY2xhc3NfaW5pdChXZWJLaXRXZWJTZXR0aW5nc0NsYXNzKiBrbGFz
cykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGZsYWdzKSk7CiAKICAgICAvKioKLSAgICAqIFdlYktpdFdlYlNldHRpbmdzOmVuYWJsZS1j
c3Mtc2hhZGVyczoKLSAgICAqCi0gICAgKiBFbmFibGUgb3IgZGlzYWJsZSBzdXBwb3J0IGZvciBj
c3Mgc2hhZGVycyAoY3NzIGN1c3RvbSBmaWx0ZXJzKS4KLSAgICAqIEFjY2VsZXJhdGVkIGNvbXBv
c2l0aW5nIG5lZWRzIHRvIGJlIGVuYWJsZWQgYXQgY29tcGlsZSB0aW1lLCBidXQgbmVlZHMKLSAg
ICAqIG5vdCBiZSBlbmFibGVkIGF0IHJ1bnRpbWUuCi0gICAgKgotICAgICogU2VlIGFsc28gaHR0
cHM6Ly9kdmNzLnczLm9yZy9oZy9GWFRGL3Jhdy1maWxlL3RpcC9jdXN0b20vaW5kZXguaHRtbAot
ICAgICoKLSAgICAqIFNpbmNlOiAyLjAKLSAgICAqLwotICAgIGdfb2JqZWN0X2NsYXNzX2luc3Rh
bGxfcHJvcGVydHkoZ29iamVjdF9jbGFzcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFBST1BfRU5BQkxFX0NTU19TSEFERVJTLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZ19wYXJhbV9zcGVjX2Jvb2xlYW4oImVuYWJsZS1jc3Mtc2hhZGVycyIsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBf
KCJFbmFibGUgQ1NTIHNoYWRlcnMiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIF8oIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJz
IiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBGQUxTRSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGZsYWdzKSk7Ci0KLSAgICAvKioKICAgICAqIFdlYktpdFdlYlNldHRpbmdz
OmVuYWJsZS1kaXNwbGF5LW9mLWluc2VjdXJlLWNvbnRlbnQ6CiAgICAgKgogICAgICogV2hldGhl
ciBwYWdlcyBsb2FkZWQgdmlhIEhUVFBTIHNob3VsZCBsb2FkIHN1YnJlc291cmNlcyBzdWNoIGFz
CkBAIC0xMjQwLDkgKzEyMjAsNiBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3NldHRpbmdzX3Nl
dF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BfaWQsIGNvbgogICAgIGNhc2Ug
UFJPUF9FTkFCTEVfU01PT1RIX1NDUk9MTElORzoKICAgICAgICAgcHJpdi0+ZW5hYmxlU21vb3Ro
U2Nyb2xsaW5nID0gZ192YWx1ZV9nZXRfYm9vbGVhbih2YWx1ZSk7CiAgICAgICAgIGJyZWFrOwot
ICAgIGNhc2UgUFJPUF9FTkFCTEVfQ1NTX1NIQURFUlM6Ci0gICAgICAgIHByaXYtPmVuYWJsZUNT
U1NoYWRlcnMgPSBnX3ZhbHVlX2dldF9ib29sZWFuKHZhbHVlKTsKLSAgICAgICAgYnJlYWs7CiAg
ICAgY2FzZSBQUk9QX01FRElBX1BMQVlCQUNLX1JFUVVJUkVTX1VTRVJfR0VTVFVSRToKICAgICAg
ICAgcHJpdi0+bWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgPSBnX3ZhbHVlX2dldF9i
b29sZWFuKHZhbHVlKTsKICAgICAgICAgYnJlYWs7CkBAIC0xNDMyLDkgKzE0MDksNiBAQCBzdGF0
aWMgdm9pZCB3ZWJraXRfd2ViX3NldHRpbmdzX2dldF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3Qs
IGd1aW50IHByb3BfaWQsIEdWYQogICAgIGNhc2UgUFJPUF9FTkFCTEVfU01PT1RIX1NDUk9MTElO
RzoKICAgICAgICAgZ192YWx1ZV9zZXRfYm9vbGVhbih2YWx1ZSwgcHJpdi0+ZW5hYmxlU21vb3Ro
U2Nyb2xsaW5nKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBQUk9QX0VOQUJMRV9DU1NfU0hB
REVSUzoKLSAgICAgICAgZ192YWx1ZV9zZXRfYm9vbGVhbih2YWx1ZSwgcHJpdi0+ZW5hYmxlQ1NT
U2hhZGVycyk7Ci0gICAgICAgIGJyZWFrOwogICAgIGNhc2UgUFJPUF9NRURJQV9QTEFZQkFDS19S
RVFVSVJFU19VU0VSX0dFU1RVUkU6CiAgICAgICAgIGdfdmFsdWVfc2V0X2Jvb2xlYW4odmFsdWUs
IHByaXYtPm1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKTsKICAgICAgICAgYnJlYWs7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Nw
cml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Nwcml2
YXRlLmgKaW5kZXggMmM2ZjMxNy4uYjVlNDZmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzcHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5nc3ByaXZhdGUuaApAQCAtODMsNyArODMsNiBAQCBz
dHJ1Y3QgX1dlYktpdFdlYlNldHRpbmdzUHJpdmF0ZSB7CiAgICAgZ2Jvb2xlYW4gZW5hYmxlV2Vi
QXVkaW87CiAgICAgZ2Jvb2xlYW4gZW5hYmxlQWNjZWxlcmF0ZWRDb21wb3NpdGluZzsKICAgICBn
Ym9vbGVhbiBlbmFibGVTbW9vdGhTY3JvbGxpbmc7Ci0gICAgZ2Jvb2xlYW4gZW5hYmxlQ1NTU2hh
ZGVyczsKICAgICBnYm9vbGVhbiBtZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZTsKICAg
ICBnYm9vbGVhbiBtZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lOwogICAgIGdib29sZWFuIGVuYWJs
ZURpc3BsYXlPZkluc2VjdXJlQ29udGVudDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3Rr
L3dlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJ2aWV3LmNwcAppbmRleCAzMjk2NWUwLi45MGU0ZjFhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vidmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwCkBAIC0zNjIxLDEwICszNjIxLDYgQEAgc3RhdGlj
IHZvaWQgd2Via2l0X3dlYl92aWV3X3VwZGF0ZV9zZXR0aW5ncyhXZWJLaXRXZWJWaWV3KiB3ZWJW
aWV3KQogICAgIGNvcmVTZXR0aW5ncy5zZXRTY3JvbGxBbmltYXRvckVuYWJsZWQoc2V0dGluZ3NQ
cml2YXRlLT5lbmFibGVTbW9vdGhTY3JvbGxpbmcpOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgY29yZVNldHRpbmdzLnNldENTU0N1c3RvbUZpbHRlckVuYWJsZWQoc2V0
dGluZ3NQcml2YXRlLT5lbmFibGVDU1NTaGFkZXJzKTsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKENT
U19SRUdJT05TKQogICAgIFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZl
YXR1cmVzKCkuc2V0Q1NTUmVnaW9uc0VuYWJsZWQodHJ1ZSk7CiAjZW5kaWYKQEAgLTM3NzYsMTEg
KzM3NzIsNiBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3ZpZXdfc2V0dGluZ3Nfbm90aWZ5KFdl
YktpdFdlYlNldHRpbmdzKiB3ZWJTZXR0aW5ncywgR1BhcgogICAgICAgICBzZXR0aW5ncy5zZXRT
Y3JvbGxBbmltYXRvckVuYWJsZWQoZ192YWx1ZV9nZXRfYm9vbGVhbigmdmFsdWUpKTsKICNlbmRp
ZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGVsc2UgaWYgKG5hbWUgPT0gZ19pbnRl
cm5fc3RyaW5nKCJlbmFibGUtY3NzLXNoYWRlcnMiKSkKLSAgICAgICAgc2V0dGluZ3Muc2V0Q1NT
Q3VzdG9tRmlsdGVyRW5hYmxlZChnX3ZhbHVlX2dldF9ib29sZWFuKCZ2YWx1ZSkpOwotI2VuZGlm
Ci0KICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQogICAgIGVsc2UgaWYgKG5hbWUgPT0gZ19pbnRl
cm5fc3RyaW5nKCJlbmFibGUtbWVkaWFzb3VyY2UiKSkKICAgICAgICAgc2V0dGluZ3Muc2V0TWVk
aWFTb3VyY2VFbmFibGVkKGdfdmFsdWVfZ2V0X2Jvb2xlYW4oJnZhbHVlKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZp
ZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29u
ZmlnCmluZGV4IGFhMzc1ODhkLi45NDY4YzgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21h
Yy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2Vi
S2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNTAsNyAr
NTAsNiBAQCBFTkFCTEVfQ1NTX0ZJTFRFUlMgPSBFTkFCTEVfQ1NTX0ZJTFRFUlM7CiBFTkFCTEVf
Q1NTX0lNQUdFX09SSUVOVEFUSU9OID0gOwogRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OID0g
OwogRU5BQkxFX0NTU19SRUdJT05TID0gRU5BQkxFX0NTU19SRUdJT05TOwotRU5BQkxFX0NTU19T
SEFERVJTID0gRU5BQkxFX0NTU19TSEFERVJTOwogRU5BQkxFX0NTU19TSEFQRVMgPSBFTkFCTEVf
Q1NTX1NIQVBFUzsKIEVOQUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9OID0gRU5BQkxFX0NTU19TVElD
S1lfUE9TSVRJT047CiBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVE
ID0gRU5BQkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRDsKQEAgLTE5OCw0
ICsxOTcsNCBAQCBFTkFCTEVfWFNMVCA9IEVOQUJMRV9YU0xUOwogRU5BQkxFX0ZUTF9KSVQgPSA7
CiBFTkFCTEVfTExJTlRfQ19MT09QID0gOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8z
RF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUND
RUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNI
RV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJP
WFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFC
TEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQo
RU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQo
RU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5B
QkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVf
Q1NTX1NIQURFUlMpICQoRU5BQkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTU19TVElDS1lfUE9T
SVRJT04pICQoRU5BQkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCkgJChF
TkFCTEVfQ1NTM19DT05ESVRJT05BTF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJM
RV9DU1MzX1RFWFRfREVDT1JBVElPTikgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQo
RU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIp
ICQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAk
KEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQo
RU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChF
TkFCTEVfRE9NNF9FVkVOVFNfQ09OU1RSVUNUT1IpICQoRU5BQkxFX0RSQUdHQUJMRV9SRUdJT04p
ICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAk
KEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVUxM
U0NSRUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5B
QkxFX0hJRERFTl9QQUdFX0RPTV9USU1FUl9USFJPVFRMSU5HKSAkKEVOQUJMRV9ISUdIX0RQSV9D
QU5WQVMpICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSUZSQU1FX1NFQU1MRVNTKSAk
KEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRJRV9VSSkgJChFTkFCTEVfSU5Q
VVRfU1BFRUNIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBF
X0NPTE9SX1BPUE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRf
VFlQRV9EQVRFVElNRV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9D
QUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkg
JChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JT1NfQUlSUExBWSkgJChFTkFCTEVf
SU9TX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFC
TEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJ
T05TKSAkKEVOQUJMRV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfV0VC
X0FVRElPKSAkKEVOQUJMRV9MRVRURVJQUkVTUykgJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChF
TkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01F
RElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfRUxF
TUVOVCkgJChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFC
TEVfTkFWSUdBVE9SX0NPTlRFTlRfVVRJTFMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5B
QkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxF
X1BMVUdJTl9QUk9YWV9GT1JfVklERU8pICQoRU5BQkxFX1BST0dSRVNTX0VMRU1FTlQpICQoRU5B
QkxFX1BST01JU0VTKSAkKEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRTKSAkKEVOQUJMRV9QVUJMSUNf
U1VGRklYX0xJU1QpICQoRU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9G
UkFNRSkgJChFTkFCTEVfUkVNT1RFX0lOU1BFQ1RPUikgJChFTkFCTEVfUkVTT0xVVElPTl9NRURJ
QV9RVUVSWSkgJChFTkFCTEVfU0NSSVBURURfU1BFRUNIKSAkKEVOQUJMRV9TSEFET1dfRE9NKSAk
KEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFC
TEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVUJQSVhFTF9MQVlPVVQpICQoRU5BQkxFX1NVQlRM
RV9DUllQVE8pICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9URU1Q
TEFURV9FTEVNRU5UKSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VW
RU5UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FM
TCkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9WSUVXX01P
REVfQ1NTX01FRElBKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FOSU1BVElPTlMpICQo
RU5BQkxFX1dFQl9BVURJTykgJChFTkFCTEVfV0VCX1JFUExBWSkgJChFTkFCTEVfV0VCX1NPQ0tF
VFMpICQoRU5BQkxFX1dFQl9USU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIUl9U
SU1FT1VUKSAkKEVOQUJMRV9YU0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9D
X0xPT1ApICQoRkVBVFVSRV9ERUZJTkVTXyQoUExBVEZPUk1fTkFNRSkpOworRkVBVFVSRV9ERUZJ
TkVTID0gJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5W
QVMpICQoRU5BQkxFX0FDQ0VMRVJBVEVEX09WRVJGTE9XX1NDUk9MTElORykgJChFTkFCTEVfQkxP
QikgJChFTkFCTEVfQ0FDSEVfUEFSVElUSU9OSU5HKSAkKEVOQUJMRV9DQU5WQVNfUEFUSCkgJChF
TkFCTEVfQ0FOVkFTX1BST1hZKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVf
Q1NQX05FWFQpICQoRU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NT
X0NPTVBPU0lUSU5HKSAkKEVOQUJMRV9DU1NfREVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NT
U19FWENMVVNJT05TKSAkKEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX0lNQUdFX09S
SUVOVEFUSU9OKSAkKEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JF
R0lPTlMpICQoRU5BQkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04p
ICQoRU5BQkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCkgJChFTkFCTEVf
Q1NTM19DT05ESVRJT05BTF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DU1Mz
X1RFWFRfREVDT1JBVElPTikgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxF
X0NVUlNPUl9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5B
QkxFX0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJM
RV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxF
X0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFCTEVf
RE9NNF9FVkVOVFNfQ09OU1RSVUNUT1IpICQoRU5BQkxFX0RSQUdHQUJMRV9SRUdJT04pICQoRU5B
QkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJM
RV9GSUxURVJTKSAkKEVOQUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVUxMU0NSRUVO
X0FQSSkgJChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0hJ
RERFTl9QQUdFX0RPTV9USU1FUl9USFJPVFRMSU5HKSAkKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMp
ICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSUZSQU1FX1NFQU1MRVNTKSAkKEVOQUJM
RV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRJRV9VSSkgJChFTkFCTEVfSU5QVVRfU1BF
RUNIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9S
X1BPUE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9E
QVRFVElNRV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQo
RU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFC
TEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JT1NfQUlSUExBWSkgJChFTkFCTEVfSU9TX1RF
WFRfQVVUT1NJWklORykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTEVH
QUNZX0NTU19WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TKSAk
KEVOQUJMRV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElP
KSAkKEVOQUJMRV9MRVRURVJQUkVTUykgJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVf
TUFUSE1MKSAkKEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01FRElBX1NP
VVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfRUxFTUVOVCkg
JChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFW
SUdBVE9SX0NPTlRFTlRfVVRJTFMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BB
R0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BMVUdJ
Tl9QUk9YWV9GT1JfVklERU8pICQoRU5BQkxFX1BST0dSRVNTX0VMRU1FTlQpICQoRU5BQkxFX1BS
T01JU0VTKSAkKEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRTKSAkKEVOQUJMRV9QVUJMSUNfU1VGRklY
X0xJU1QpICQoRU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkg
JChFTkFCTEVfUkVNT1RFX0lOU1BFQ1RPUikgJChFTkFCTEVfUkVTT0xVVElPTl9NRURJQV9RVUVS
WSkgJChFTkFCTEVfU0NSSVBURURfU1BFRUNIKSAkKEVOQUJMRV9TSEFET1dfRE9NKSAkKEVOQUJM
RV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FM
X0RBVEFCQVNFKSAkKEVOQUJMRV9TVUJQSVhFTF9MQVlPVVQpICQoRU5BQkxFX1NVQlRMRV9DUllQ
VE8pICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9URU1QTEFURV9F
TEVNRU5UKSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykg
JChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChF
TkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NT
X01FRElBKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FOSU1BVElPTlMpICQoRU5BQkxF
X1dFQl9BVURJTykgJChFTkFCTEVfV0VCX1JFUExBWSkgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQo
RU5BQkxFX1dFQl9USU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIUl9USU1FT1VU
KSAkKEVOQUJMRV9YU0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1Ap
ICQoRkVBVFVSRV9ERUZJTkVTXyQoUExBVEZPUk1fTkFNRSkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaCBiL1NvdXJjZS9X
ZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmgKaW5kZXggODhhNDRm
ZC4uNmY1NjM4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVm
ZXJlbmNlS2V5c1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlBy
ZWZlcmVuY2VLZXlzUHJpdmF0ZS5oCkBAIC0xMDAsNyArMTAwLDYgQEAKICNkZWZpbmUgV2ViS2l0
QWNjZWxlcmF0ZWREcmF3aW5nRW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRBY2NlbGVyYXRl
ZERyYXdpbmdFbmFibGVkIgogI2RlZmluZSBXZWJLaXRDYW52YXNVc2VzQWNjZWxlcmF0ZWREcmF3
aW5nUHJlZmVyZW5jZUtleSBAIldlYktpdENhbnZhc1VzZXNBY2NlbGVyYXRlZERyYXdpbmciCiAj
ZGVmaW5lIFdlYktpdEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkUHJlZmVyZW5jZUtleSBA
IldlYktpdEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkIgotI2RlZmluZSBXZWJLaXRDU1ND
dXN0b21GaWx0ZXJFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdENTU0N1c3RvbUZpbHRlckVu
YWJsZWQiCiAjZGVmaW5lIFdlYktpdENTU1JlZ2lvbnNFbmFibGVkUHJlZmVyZW5jZUtleSBAIldl
YktpdENTU1JlZ2lvbnNFbmFibGVkIgogI2RlZmluZSBXZWJLaXRDU1NDb21wb3NpdGluZ0VuYWJs
ZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0Q1NTQ29tcG9zaXRpbmdFbmFibGVkIgogI2RlZmluZSBX
ZWJLaXRDU1NHcmlkTGF5b3V0RW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRDU1NHcmlkTGF5
b3V0RW5hYmxlZCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJl
ZmVyZW5jZXMubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1t
CmluZGV4IDU2ZGZkYzIuLjIxNDhkYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9X
ZWJQcmVmZXJlbmNlcy5tbQpAQCAtNDgzLDggKzQ4Myw2IEBAIHB1YmxpYzoKICAgICAgICAgW05T
TnVtYmVyIG51bWJlcldpdGhCb29sOk5PXSwgICBXZWJLaXRKYXZhU2NyaXB0Q2FuQWNjZXNzQ2xp
cGJvYXJkUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOllF
U10sICBXZWJLaXRYU1NBdWRpdG9yRW5hYmxlZFByZWZlcmVuY2VLZXksCiAgICAgICAgIFtOU051
bWJlciBudW1iZXJXaXRoQm9vbDpZRVNdLCAgV2ViS2l0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0Vu
YWJsZWRQcmVmZXJlbmNlS2V5LAotICAgICAgICAvLyBDU1MgU2hhZGVycyBhbHNvIG5lZWQgV2Vi
R0wgZW5hYmxlZCAod2hpY2ggaXMgZGlzYWJsZWQgYnkgZGVmYXVsdCksIHNvIHdlIGNhbiBrZWVw
IGl0IGVuYWJsZWQgZm9yIG5vdy4KLSAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOllF
U10sIFdlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWRQcmVmZXJlbmNlS2V5LAogICAgICAgICBb
TlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgV2ViS2l0Q1NTUmVnaW9uc0VuYWJsZWRQcmVm
ZXJlbmNlS2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgV2ViS2l0
Q1NTQ29tcG9zaXRpbmdFbmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51
bWJlcldpdGhCb29sOk5PXSwgIFdlYktpdENTU0dyaWRMYXlvdXRFbmFibGVkUHJlZmVyZW5jZUtl
eSwKQEAgLTE4NzQsMTYgKzE4NzIsNiBAQCBzdGF0aWMgTlNTdHJpbmcgKmNsYXNzSUJDcmVhdG9y
SUQgPSBuaWw7CiAgICAgW3NlbGYgX3NldEJvb2xWYWx1ZTplbmFibGVkIGZvcktleTpXZWJLaXRB
Y2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZFByZWZlcmVuY2VLZXldOwogfQogCi0tIChCT09M
KWNzc0N1c3RvbUZpbHRlckVuYWJsZWQKLXsKLSAgICByZXR1cm4gW3NlbGYgX2Jvb2xWYWx1ZUZv
cktleTpXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkUHJlZmVyZW5jZUtleV07Ci19Ci0KLS0g
KHZvaWQpc2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZDooQk9PTCllbmFibGVkCi17Ci0gICAgW3Nl
bGYgX3NldEJvb2xWYWx1ZTplbmFibGVkIGZvcktleTpXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFi
bGVkUHJlZmVyZW5jZUtleV07Ci19Ci0KIC0gKEJPT0wpY3NzUmVnaW9uc0VuYWJsZWQKIHsKICAg
ICByZXR1cm4gW3NlbGYgX2Jvb2xWYWx1ZUZvcktleTpXZWJLaXRDU1NSZWdpb25zRW5hYmxlZFBy
ZWZlcmVuY2VLZXldOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQ
cmVmZXJlbmNlc1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVy
ZW5jZXNQcml2YXRlLmgKaW5kZXggYzEyOTE5Zi4uNzYxM2U3MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCkBAIC0xOTksOSArMTk5
LDYgQEAgZXh0ZXJuIE5TU3RyaW5nICpXZWJQcmVmZXJlbmNlc0NhY2hlTW9kZWxDaGFuZ2VkSW50
ZXJuYWxOb3RpZmljYXRpb247CiAtIChCT09MKWFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVk
OwogLSAodm9pZClzZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZDooQk9PTCllbmFibGVk
OwogCi0tIChCT09MKWNzc0N1c3RvbUZpbHRlckVuYWJsZWQ7Ci0tICh2b2lkKXNldENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQ6KEJPT0wpZW5hYmxlZDsKLQogLSAoQk9PTCljc3NSZWdpb25zRW5hYmxl
ZDsKIC0gKHZvaWQpc2V0Q1NTUmVnaW9uc0VuYWJsZWQ6KEJPT0wpZW5hYmxlZDsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktp
dC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCmluZGV4IDVmY2VjZWEuLmYxZDM4NzQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KQEAgLTIzMjMsOSArMjMyMyw2IEBAIHN0YXRpYyBi
b29sIG5lZWRzU2VsZlJldGFpbldoaWxlTG9hZGluZ1F1aXJrKCkKICAgICBzZXR0aW5ncy5zZXRG
cmFtZUZsYXR0ZW5pbmdFbmFibGVkKFtwcmVmZXJlbmNlcyBpc0ZyYW1lRmxhdHRlbmluZ0VuYWJs
ZWRdKTsKICAgICBzZXR0aW5ncy5zZXRTcGF0aWFsTmF2aWdhdGlvbkVuYWJsZWQoW3ByZWZlcmVu
Y2VzIGlzU3BhdGlhbE5hdmlnYXRpb25FbmFibGVkXSk7CiAgICAgc2V0dGluZ3Muc2V0UGFnaW5h
dGVEdXJpbmdMYXlvdXRFbmFibGVkKFtwcmVmZXJlbmNlcyBwYWdpbmF0ZUR1cmluZ0xheW91dEVu
YWJsZWRdKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgc2V0dGluZ3Muc2V0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZChbcHJlZmVyZW5jZXMgY3NzQ3VzdG9tRmlsdGVyRW5hYmxlZF0pOwot
I2VuZGlmCiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRD
U1NSZWdpb25zRW5hYmxlZChbcHJlZmVyZW5jZXMgY3NzUmVnaW9uc0VuYWJsZWRdKTsKICAgICBS
dW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldENTU0NvbXBvc2l0aW5n
RW5hYmxlZChbcHJlZmVyZW5jZXMgY3NzQ29tcG9zaXRpbmdFbmFibGVkXSk7CiAjaWYgRU5BQkxF
KFdFQl9BVURJTykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NNYWtlTGlzdHMudHh0IGIv
U291cmNlL1dlYktpdDIvQ01ha2VMaXN0cy50eHQKaW5kZXggYjE3ZjZjYy4uM2FlNGM2NyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYktp
dDIvQ01ha2VMaXN0cy50eHQKQEAgLTI3MCw3ICsyNzAsNiBAQCBzZXQoV2ViS2l0Ml9TT1VSQ0VT
CiAKICAgICBTaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZEdyYXBoaWNzQXJn
dW1lbnRDb2RlcnMuY3BwCiAgICAgU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ29vcmRp
bmF0ZWRTdXJmYWNlLmNwcAotICAgIFNoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL1dlYkN1c3Rv
bUZpbHRlclByb2dyYW1Qcm94eS5jcHAKIAogICAgIFNoYXJlZC9Eb3dubG9hZHMvRG93bmxvYWQu
Y3BwCiAgICAgU2hhcmVkL0Rvd25sb2Fkcy9Eb3dubG9hZEF1dGhlbnRpY2F0aW9uQ2xpZW50LmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmlu
ZXMueGNjb25maWcgYi9Tb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5l
cy54Y2NvbmZpZwppbmRleCBhYTM3NTg4ZC4uOTQ2OGM4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNl
L1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTUwLDcg
KzUwLDYgQEAgRU5BQkxFX0NTU19GSUxURVJTID0gRU5BQkxFX0NTU19GSUxURVJTOwogRU5BQkxF
X0NTU19JTUFHRV9PUklFTlRBVElPTiA9IDsKIEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTiA9
IDsKIEVOQUJMRV9DU1NfUkVHSU9OUyA9IEVOQUJMRV9DU1NfUkVHSU9OUzsKLUVOQUJMRV9DU1Nf
U0hBREVSUyA9IEVOQUJMRV9DU1NfU0hBREVSUzsKIEVOQUJMRV9DU1NfU0hBUEVTID0gRU5BQkxF
X0NTU19TSEFQRVM7CiBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTiA9IEVOQUJMRV9DU1NfU1RJ
Q0tZX1BPU0lUSU9OOwogRU5BQkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhF
RCA9IEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQ7CkBAIC0xOTgs
NCArMTk3LDQgQEAgRU5BQkxFX1hTTFQgPSBFTkFCTEVfWFNMVDsKIEVOQUJMRV9GVExfSklUID0g
OwogRU5BQkxFX0xMSU5UX0NfTE9PUCA9IDsKIAotRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVf
M0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FD
Q0VMRVJBVEVEX09WRVJGTE9XX1NDUk9MTElORykgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0FD
SEVfUEFSVElUSU9OSU5HKSAkKEVOQUJMRV9DQU5WQVNfUEFUSCkgJChFTkFCTEVfQ0FOVkFTX1BS
T1hZKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ1NQX05FWFQpICQoRU5B
QkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKSAk
KEVOQUJMRV9DU1NfREVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NTU19FWENMVVNJT05TKSAk
KEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OKSAkKEVO
QUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQoRU5BQkxF
X0NTU19TSEFERVJTKSAkKEVOQUJMRV9DU1NfU0hBUEVTKSAkKEVOQUJMRV9DU1NfU1RJQ0tZX1BP
U0lUSU9OKSAkKEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQpICQo
RU5BQkxFX0NTUzNfQ09ORElUSU9OQUxfUlVMRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFC
TEVfQ1NTM19URVhUX0RFQ09SQVRJT04pICQoRU5BQkxFX0NTUzNfVEVYVF9MSU5FX0JSRUFLKSAk
KEVOQUJMRV9DVVJTT1JfVklTSUJJTElUWSkgJChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVS
KSAkKEVOQUJMRV9EQVNIQk9BUkRfU1VQUE9SVCkgJChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCkg
JChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMU19FTEVNRU5UKSAk
KEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQo
RU5BQkxFX0RPTTRfRVZFTlRTX0NPTlNUUlVDVE9SKSAkKEVOQUJMRV9EUkFHR0FCTEVfUkVHSU9O
KSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUEpICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQV9WMikg
JChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRk9OVF9MT0FEX0VWRU5UUykgJChFTkFCTEVfRlVM
TFNDUkVFTl9BUEkpICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVO
QUJMRV9ISURERU5fUEFHRV9ET01fVElNRVJfVEhST1RUTElORykgJChFTkFCTEVfSElHSF9EUElf
Q0FOVkFTKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lGUkFNRV9TRUFNTEVTUykg
JChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5ESUVfVUkpICQoRU5BQkxFX0lO
UFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUikgJChFTkFCTEVfSU5QVVRfVFlQ
RV9DT0xPUl9QT1BPVkVSKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxFX0lOUFVU
X1RZUEVfREFURVRJTUVfSU5DT01QTEVURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxP
Q0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUp
ICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSU9TX0FJUlBMQVkpICQoRU5BQkxF
X0lPU19URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5B
QkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FU
SU9OUykgJChFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX1dF
Ql9BVURJTykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQo
RU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9N
RURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VM
RU1FTlQpICQoRU5BQkxFX01IVE1MKSAkKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5B
QkxFX05BVklHQVRPUl9DT05URU5UX1VUSUxTKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVO
QUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QREZLSVRfUExVR0lOKSAkKEVOQUJM
RV9QTFVHSU5fUFJPWFlfRk9SX1ZJREVPKSAkKEVOQUJMRV9QUk9HUkVTU19FTEVNRU5UKSAkKEVO
QUJMRV9QUk9NSVNFUykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElD
X1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklNQVRJT05f
RlJBTUUpICQoRU5BQkxFX1JFTU9URV9JTlNQRUNUT1IpICQoRU5BQkxFX1JFU09MVVRJT05fTUVE
SUFfUVVFUlkpICQoRU5BQkxFX1NDUklQVEVEX1NQRUVDSCkgJChFTkFCTEVfU0hBRE9XX0RPTSkg
JChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NQRUVDSF9TWU5USEVTSVMpICQoRU5B
QkxFX1NRTF9EQVRBQkFTRSkgJChFTkFCTEVfU1VCUElYRUxfTEFZT1VUKSAkKEVOQUJMRV9TVUJU
TEVfQ1JZUFRPKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVN
UExBVEVfRUxFTUVOVCkgJChFTkFCTEVfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9UT1VDSF9F
VkVOVFMpICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElORykgJChFTkFCTEVfVVNFUlNFTEVDVF9B
TEwpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVfVklFV19N
T0RFX0NTU19NRURJQSkgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxFX1dFQl9BTklNQVRJT05TKSAk
KEVOQUJMRV9XRUJfQVVESU8pICQoRU5BQkxFX1dFQl9SRVBMQVkpICQoRU5BQkxFX1dFQl9TT0NL
RVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFJf
VElNRU9VVCkgJChFTkFCTEVfWFNMVCkgJChFTkFCTEVfRlRMX0pJVCkgJChFTkFCTEVfTExJTlRf
Q19MT09QKSAkKEZFQVRVUkVfREVGSU5FU18kKFBMQVRGT1JNX05BTUUpKTsKK0ZFQVRVUkVfREVG
SU5FUyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FO
VkFTKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpICQoRU5BQkxFX0JM
T0IpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQo
RU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxF
X0NTUF9ORVhUKSAkKEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NT
U19DT01QT1NJVElORykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9D
U1NfRVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19JTUFHRV9P
UklFTlRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19S
RUdJT05TKSAkKEVOQUJMRV9DU1NfU0hBUEVTKSAkKEVOQUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9O
KSAkKEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQpICQoRU5BQkxF
X0NTUzNfQ09ORElUSU9OQUxfUlVMRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1NT
M19URVhUX0RFQ09SQVRJT04pICQoRU5BQkxFX0NTUzNfVEVYVF9MSU5FX0JSRUFLKSAkKEVOQUJM
RV9DVVJTT1JfVklTSUJJTElUWSkgJChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKSAkKEVO
QUJMRV9EQVNIQk9BUkRfU1VQUE9SVCkgJChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCkgJChFTkFC
TEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMU19FTEVNRU5UKSAkKEVOQUJM
RV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5BQkxF
X0RPTTRfRVZFTlRTX0NPTlNUUlVDVE9SKSAkKEVOQUJMRV9EUkFHR0FCTEVfUkVHSU9OKSAkKEVO
QUJMRV9FTkNSWVBURURfTUVESUEpICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQV9WMikgJChFTkFC
TEVfRklMVEVSUykgJChFTkFCTEVfRk9OVF9MT0FEX0VWRU5UUykgJChFTkFCTEVfRlVMTFNDUkVF
Tl9BUEkpICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9I
SURERU5fUEFHRV9ET01fVElNRVJfVEhST1RUTElORykgJChFTkFCTEVfSElHSF9EUElfQ0FOVkFT
KSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lGUkFNRV9TRUFNTEVTUykgJChFTkFC
TEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5ESUVfVUkpICQoRU5BQkxFX0lOUFVUX1NQ
RUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUikgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xP
Ul9QT1BPVkVSKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVf
REFURVRJTUVfSU5DT01QTEVURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5B
QkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSU9TX0FJUlBMQVkpICQoRU5BQkxFX0lPU19U
RVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX0xF
R0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykg
JChFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX1dFQl9BVURJ
TykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxF
X01BVEhNTCkgJChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9T
T1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQp
ICQoRU5BQkxFX01IVE1MKSAkKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5BQkxFX05B
VklHQVRPUl9DT05URU5UX1VUSUxTKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9Q
QUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QREZLSVRfUExVR0lOKSAkKEVOQUJMRV9QTFVH
SU5fUFJPWFlfRk9SX1ZJREVPKSAkKEVOQUJMRV9QUk9HUkVTU19FTEVNRU5UKSAkKEVOQUJMRV9Q
Uk9NSVNFUykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJ
WF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUp
ICQoRU5BQkxFX1JFTU9URV9JTlNQRUNUT1IpICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFfUVVF
UlkpICQoRU5BQkxFX1NDUklQVEVEX1NQRUVDSCkgJChFTkFCTEVfU0hBRE9XX0RPTSkgJChFTkFC
TEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NQRUVDSF9TWU5USEVTSVMpICQoRU5BQkxFX1NR
TF9EQVRBQkFTRSkgJChFTkFCTEVfU1VCUElYRUxfTEFZT1VUKSAkKEVOQUJMRV9TVUJUTEVfQ1JZ
UFRPKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVNUExBVEVf
RUxFTUVOVCkgJChFTkFCTEVfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9UT1VDSF9FVkVOVFMp
ICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElORykgJChFTkFCTEVfVVNFUlNFTEVDVF9BTEwpICQo
RU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVfVklFV19NT0RFX0NT
U19NRURJQSkgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxFX1dFQl9BTklNQVRJT05TKSAkKEVOQUJM
RV9XRUJfQVVESU8pICQoRU5BQkxFX1dFQl9SRVBMQVkpICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAk
KEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFJfVElNRU9V
VCkgJChFTkFCTEVfWFNMVCkgJChFTkFCTEVfRlRMX0pJVCkgJChFTkFCTEVfTExJTlRfQ19MT09Q
KSAkKEZFQVRVUkVfREVGSU5FU18kKFBMQVRGT1JNX05BTUUpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NB
cmd1bWVudENvZGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFw
aGljcy9Db29yZGluYXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuY3BwCmluZGV4IDMwNzNkY2Uu
LjkyOGZkNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdy
YXBoaWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5jcHAKKysrIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0Fy
Z3VtZW50Q29kZXJzLmNwcApAQCAtNTQsMjIgKzU0LDYgQEAKICNpbmNsdWRlIDxXZWJDb3JlL0Zp
bHRlck9wZXJhdGlvbnMuaD4KICNlbmRpZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2lu
Y2x1ZGUgIldlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS5oIgotI2luY2x1ZGUgPFdlYkNvcmUv
Q29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0Nv
b3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oPgotI2luY2x1ZGUgPFdlYkNvcmUvQ3VzdG9t
RmlsdGVyQXJyYXlQYXJhbWV0ZXIuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlckNv
bG9yUGFyYW1ldGVyLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0ZXJDb25zdGFudHMu
aD4KLSNpbmNsdWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oPgotI2lu
Y2x1ZGUgPFdlYkNvcmUvQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmg+Ci0jaW5jbHVkZSA8V2ViQ29y
ZS9DdXN0b21GaWx0ZXJQcm9ncmFtLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mby5oPgotI2luY2x1ZGUgPFdlYkNvcmUvQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFy
YW1ldGVyLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFt
Lmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaD4K
LSNlbmRpZgotCiAjaWYgVVNFKEdSQVBISUNTX1NVUkZBQ0UpCiAjaW5jbHVkZSA8V2ViQ29yZS9H
cmFwaGljc1N1cmZhY2UuaD4KICNlbmRpZgpAQCAtMTEwLDY3ICs5NCw2IEBAIHZvaWQgQXJndW1l
bnRDb2RlcjxXZWJDb3JlOjpGaWx0ZXJPcGVyYXRpb25zPjo6ZW5jb2RlKEFyZ3VtZW50RW5jb2Rl
ciYgZW5jb2RlciwKICAgICAgICAgICAgIEFyZ3VtZW50Q29kZXI8Q29sb3I+OjplbmNvZGUoZW5j
b2Rlciwgc2hhZG93LT5jb2xvcigpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VT
VE9NOgotICAgICAgICAgICAgLy8gQ3VzdG9tIEZpbHRlcnMgYXJlIGNvbnZlcnRlZCB0byBWQUxJ
REFURURfQ1VTVE9NIGJlZm9yZSByZWFjaGluZyB0aGlzIHBvaW50LgotICAgICAgICAgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBGaWx0
ZXJPcGVyYXRpb246OlZBTElEQVRFRF9DVVNUT006IHsKLSAgICAgICAgICAgIGNvbnN0IFZhbGlk
YXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9tT3BlcmF0aW9uID0gc3RhdGljX2Nhc3Q8
Y29uc3QgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oZmlsdGVyKTsKLSAgICAgICAg
ICAgIEFTU0VSVChjdXN0b21PcGVyYXRpb24tPnZhbGlkYXRlZFByb2dyYW0oKSk7Ci0gICAgICAg
ICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gcHJvZ3JhbSA9IGN1c3Rv
bU9wZXJhdGlvbi0+dmFsaWRhdGVkUHJvZ3JhbSgpOwotICAgICAgICAgICAgQVNTRVJUKHByb2dy
YW0tPmlzSW5pdGlhbGl6ZWQoKSk7Ci0gICAgICAgICAgICBBU1NFUlQocHJvZ3JhbS0+cGxhdGZv
cm1Db21waWxlZFByb2dyYW0oKSk7Ci0gICAgICAgICAgICBBU1NFUlQocHJvZ3JhbS0+cGxhdGZv
cm1Db21waWxlZFByb2dyYW0oKS0+Y2xpZW50KCkpOwotICAgICAgICAgICAgV2ViQ3VzdG9tRmls
dGVyUHJvZ3JhbVByb3h5KiBjdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkgPSBzdGF0aWNfY2FzdDxX
ZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkqPihwcm9ncmFtLT5wbGF0Zm9ybUNvbXBpbGVkUHJv
Z3JhbSgpLT5jbGllbnQoKSk7Ci0gICAgICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFt
SW5mbyYgcHJvZ3JhbUluZm8gPSBwcm9ncmFtLT5wcm9ncmFtSW5mbygpOwotICAgICAgICAgICAg
ZW5jb2Rlci5lbmNvZGVFbnVtKHByb2dyYW1JbmZvLm1lc2hUeXBlKCkpOwotICAgICAgICAgICAg
ZW5jb2RlciA8PCBjdXN0b21GaWx0ZXJQcm9ncmFtUHJveHktPmlkKCk7Ci0gICAgICAgICAgICBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0IHBhcmFtZXRlcnMgPSBjdXN0b21PcGVyYXRpb24tPnBh
cmFtZXRlcnMoKTsKLSAgICAgICAgICAgIGVuY29kZXIgPDwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+
KHBhcmFtZXRlcnMuc2l6ZSgpKTsKLSAgICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
cGFyYW1ldGVycy5zaXplKCk7ICsraSkgewotICAgICAgICAgICAgICAgIFJlZlB0cjxDdXN0b21G
aWx0ZXJQYXJhbWV0ZXI+IHBhcmFtZXRlciA9IHBhcmFtZXRlcnNbaV07Ci0gICAgICAgICAgICAg
ICAgZW5jb2RlciA8PCBwYXJhbWV0ZXItPm5hbWUoKTsKLSAgICAgICAgICAgICAgICBlbmNvZGVy
LmVuY29kZUVudW0ocGFyYW1ldGVyLT5wYXJhbWV0ZXJUeXBlKCkpOwotCi0gICAgICAgICAgICAg
ICAgc3dpdGNoIChwYXJhbWV0ZXItPnBhcmFtZXRlclR5cGUoKSkgewotICAgICAgICAgICAgICAg
IGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpNQVRSSVg6Ci0gICAgICAgICAgICAgICAgY2Fz
ZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OkFSUkFZOiB7Ci0gICAgICAgICAgICAgICAgICAgIEN1
c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKiBhcnJheVBhcmFtZXRlciA9IHN0YXRpY19jYXN0PEN1
c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKj4ocGFyYW1ldGVyLmdldCgpKTsKLSAgICAgICAgICAg
ICAgICAgICAgZW5jb2RlciA8PCBzdGF0aWNfY2FzdDx1aW50MzJfdD4oYXJyYXlQYXJhbWV0ZXIt
PnNpemUoKSk7Ci0gICAgICAgICAgICAgICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgYXJy
YXlQYXJhbWV0ZXItPnNpemUoKTsgKytqKQotICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2Rl
ciA8PCBhcnJheVBhcmFtZXRlci0+dmFsdWVBdChqKTsKLSAgICAgICAgICAgICAgICAgICAgYnJl
YWs7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVy
UGFyYW1ldGVyOjpDT0xPUjogewotICAgICAgICAgICAgICAgICAgICBDdXN0b21GaWx0ZXJDb2xv
clBhcmFtZXRlciogY29sb3JQYXJhbWV0ZXIgPSBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJDb2xv
clBhcmFtZXRlcio+KHBhcmFtZXRlci5nZXQoKSk7Ci0gICAgICAgICAgICAgICAgICAgIGVuY29k
ZXIgPDwgY29sb3JQYXJhbWV0ZXItPmNvbG9yKCk7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFr
OwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBh
cmFtZXRlcjo6TlVNQkVSOiB7Ci0gICAgICAgICAgICAgICAgICAgIEN1c3RvbUZpbHRlck51bWJl
clBhcmFtZXRlciogbnVibWVyUGFyYW1ldGVyID0gc3RhdGljX2Nhc3Q8Q3VzdG9tRmlsdGVyTnVt
YmVyUGFyYW1ldGVyKj4ocGFyYW1ldGVyLmdldCgpKTsKLSAgICAgICAgICAgICAgICAgICAgZW5j
b2RlciA8PCBzdGF0aWNfY2FzdDx1aW50MzJfdD4obnVibWVyUGFyYW1ldGVyLT5zaXplKCkpOwot
ICAgICAgICAgICAgICAgICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IG51Ym1lclBhcmFtZXRl
ci0+c2l6ZSgpOyArK2opCi0gICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGVyIDw8IG51Ym1l
clBhcmFtZXRlci0+dmFsdWVBdChqKTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAg
ICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
OjpUUkFOU0ZPUk06IHsKLSAgICAgICAgICAgICAgICAgICAgQ3VzdG9tRmlsdGVyVHJhbnNmb3Jt
UGFyYW1ldGVyKiB0cmFuc2Zvcm1QYXJhbWV0ZXIgPSBzdGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJU
cmFuc2Zvcm1QYXJhbWV0ZXIqPihwYXJhbWV0ZXIuZ2V0KCkpOwotICAgICAgICAgICAgICAgICAg
ICBBcmd1bWVudENvZGVyPFRyYW5zZm9ybU9wZXJhdGlvbnM+OjplbmNvZGUoZW5jb2RlciwgdHJh
bnNmb3JtUGFyYW1ldGVyLT5vcGVyYXRpb25zKCkpOwotICAgICAgICAgICAgICAgICAgICBicmVh
azsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZGVmYXVsdDogewotICAgICAg
ICAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgICAgICAgICAg
YnJlYWs7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IH0KLQotICAgICAgICAgICAgZW5jb2RlciA8PCBjdXN0b21PcGVyYXRpb24tPm1lc2hSb3dzKCk7
Ci0gICAgICAgICAgICBlbmNvZGVyIDw8IGN1c3RvbU9wZXJhdGlvbi0+bWVzaENvbHVtbnMoKTsK
LSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAgZGVmYXVsdDoK
ICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC0yMzIsMTAxICsxNTUsNiBAQCBib29s
IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6RmlsdGVyT3BlcmF0aW9ucz46OmRlY29kZShBcmd1bWVu
dERlY29kZXImIGRlY29kZXIsCiAgICAgICAgICAgICBmaWx0ZXIgPSBEcm9wU2hhZG93RmlsdGVy
T3BlcmF0aW9uOjpjcmVhdGUobG9jYXRpb24sIHN0ZERldmlhdGlvbiwgY29sb3IsIHR5cGUpOwog
ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0g
ICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAgICAgICAgICAvLyBDdXN0
b20gRmlsdGVycyBhcmUgY29udmVydGVkIHRvIFZBTElEQVRFRF9DVVNUT00gYmVmb3JlIHJlYWNo
aW5nIHRoaXMgcG9pbnQuCi0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAg
ICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NV
U1RPTTogewotICAgICAgICAgICAgLy8gRklYTUU6IEN1c3RvbUZpbHRlck9wZXJhdGlvbiBzaG91
bGQgbm90IG5lZWQgdGhlIG1lc2hUeXBlLgotICAgICAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMjUyOQotICAgICAgICAgICAgQ3VzdG9tRmlsdGVy
TWVzaFR5cGUgbWVzaFR5cGU7Ci0gICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bSht
ZXNoVHlwZSkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgaW50
IHByb2dyYW1JRCA9IDA7Ci0gICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHByb2dyYW1J
RCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgICAgICB1aW50MzJf
dCBwYXJhbWV0ZXJzU2l6ZTsKLSAgICAgICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGUocGFyYW1l
dGVyc1NpemUpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgICAgICAgICAg
Q3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCBwYXJhbWV0ZXJzKHBhcmFtZXRlcnNTaXplKTsKLSAg
ICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcGFyYW1ldGVyc1NpemU7ICsraSkgewot
ICAgICAgICAgICAgICAgIFN0cmluZyBuYW1lOwotICAgICAgICAgICAgICAgIEN1c3RvbUZpbHRl
clBhcmFtZXRlcjo6UGFyYW1ldGVyVHlwZSBwYXJhbWV0ZXJUeXBlOwotICAgICAgICAgICAgICAg
IGlmICghZGVjb2Rlci5kZWNvZGUobmFtZSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKLSAgICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bShwYXJhbWV0ZXJU
eXBlKSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgICAgICAg
ICAgc3dpdGNoIChwYXJhbWV0ZXJUeXBlKSB7Ci0gICAgICAgICAgICAgICAgY2FzZSBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXI6Ok1BVFJJWDoKLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRl
clBhcmFtZXRlcjo6QVJSQVk6IHsKLSAgICAgICAgICAgICAgICAgICAgUmVmUHRyPEN1c3RvbUZp
bHRlckFycmF5UGFyYW1ldGVyPiBhcnJheVBhcmFtZXRlciA9IEN1c3RvbUZpbHRlckFycmF5UGFy
YW1ldGVyOjpjcmVhdGUobmFtZSwgcGFyYW1ldGVyVHlwZSk7Ci0gICAgICAgICAgICAgICAgICAg
IHVpbnQzMl90IGFycmF5UGFyYW1ldGVyU2l6ZTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCFk
ZWNvZGVyLmRlY29kZShhcnJheVBhcmFtZXRlclNpemUpKQotICAgICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgICAgICBkb3VibGUgYXJyYXlQYXJhbWV0
ZXJWYWx1ZTsKLSAgICAgICAgICAgICAgICAgICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBhcnJh
eVBhcmFtZXRlclNpemU7ICsraikgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFkZWNv
ZGVyLmRlY29kZShhcnJheVBhcmFtZXRlclZhbHVlKSkKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhcnJheVBhcmFtZXRl
ci0+YWRkVmFsdWUoYXJyYXlQYXJhbWV0ZXJWYWx1ZSk7Ci0gICAgICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyc1tpXSA9IGFycmF5UGFyYW1ldGVyLnJlbGVh
c2UoKTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpDT0xPUjogewotICAgICAg
ICAgICAgICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI+IGNvbG9yUGFy
YW1ldGVyID0gQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKTsKLSAgICAg
ICAgICAgICAgICAgICAgQ29sb3IgYzsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCFkZWNvZGVy
LmRlY29kZShjKSkKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAg
ICAgICAgICAgICAgICAgY29sb3JQYXJhbWV0ZXItPnNldENvbG9yKGMpOwotICAgICAgICAgICAg
ICAgICAgICBwYXJhbWV0ZXJzW2ldID0gY29sb3JQYXJhbWV0ZXIucmVsZWFzZSgpOwotICAgICAg
ICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAg
Y2FzZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6Ok5VTUJFUjogewotICAgICAgICAgICAgICAgICAg
ICBSZWZQdHI8Q3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyPiBudW1iZXJQYXJhbWV0ZXIgPSBD
dXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKTsKLSAgICAgICAgICAgICAg
ICAgICAgdWludDMyX3QgbnVtYmVyUGFyYW1ldGVyU2l6ZTsKLSAgICAgICAgICAgICAgICAgICAg
aWYgKCFkZWNvZGVyLmRlY29kZShudW1iZXJQYXJhbWV0ZXJTaXplKSkKLSAgICAgICAgICAgICAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgICAgICAgICAgZG91YmxlIG51bWJl
clBhcmFtZXRlclZhbHVlOwotICAgICAgICAgICAgICAgICAgICBmb3IgKHNpemVfdCBqID0gMDsg
aiA8IG51bWJlclBhcmFtZXRlclNpemU7ICsraikgewotICAgICAgICAgICAgICAgICAgICAgICAg
aWYgKCFkZWNvZGVyLmRlY29kZShudW1iZXJQYXJhbWV0ZXJWYWx1ZSkpCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgICAgICAgICAgbnVt
YmVyUGFyYW1ldGVyLT5hZGRWYWx1ZShudW1iZXJQYXJhbWV0ZXJWYWx1ZSk7Ci0gICAgICAgICAg
ICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyc1tpXSA9IG51bWJlclBh
cmFtZXRlci5yZWxlYXNlKCk7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6VFJB
TlNGT1JNOiB7Ci0gICAgICAgICAgICAgICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJUcmFuc2Zv
cm1QYXJhbWV0ZXI+IHRyYW5zZm9ybVBhcmFtZXRlciA9IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBh
cmFtZXRlcjo6Y3JlYXRlKG5hbWUpOwotICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1PcGVy
YXRpb25zIG9wZXJhdGlvbnM7Ci0gICAgICAgICAgICAgICAgICAgIGlmICghQXJndW1lbnRDb2Rl
cjxUcmFuc2Zvcm1PcGVyYXRpb25zPjo6ZGVjb2RlKGRlY29kZXIsIG9wZXJhdGlvbnMpKQotICAg
ICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgICAgICB0
cmFuc2Zvcm1QYXJhbWV0ZXItPnNldE9wZXJhdGlvbnMob3BlcmF0aW9ucyk7Ci0gICAgICAgICAg
ICAgICAgICAgIHBhcmFtZXRlcnNbaV0gPSB0cmFuc2Zvcm1QYXJhbWV0ZXIucmVsZWFzZSgpOwot
ICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAg
ICAgICAgZGVmYXVsdDogewotICAgICAgICAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIHVuc2lnbmVk
IG1lc2hSb3dzOwotICAgICAgICAgICAgdW5zaWduZWQgbWVzaENvbHVtbnM7Ci0gICAgICAgICAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKG1lc2hSb3dzKSkKLSAgICAgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKG1lc2hDb2x1bW5zKSkKLSAg
ICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgICAgIC8vIEF0IHRoaXMgcG9p
bnQgdGhlIFNoYWRlcnMgYXJlIGFscmVhZHkgdmFsaWRhdGVkLCBzbyB3ZSBqdXN0IHVzZSBXZWJD
dXN0b21GaWx0ZXJPcGVyYXRpb24gZm9yIHRyYW5zcG9ydGF0aW9uLgotICAgICAgICAgICAgZmls
dGVyID0gQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb246OmNyZWF0ZSgwLCBwcm9ncmFt
SUQsIHBhcmFtZXRlcnMsIG1lc2hSb3dzLCBtZXNoQ29sdW1ucyk7Ci0gICAgICAgICAgICBicmVh
azsKLSAgICAgICAgfQotI2VuZGlmCiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBicmVh
azsKICAgICAgICAgfQpAQCAtMzM5LDQyICsxNjcsNiBAQCBib29sIEFyZ3VtZW50Q29kZXI8V2Vi
Q29yZTo6RmlsdGVyT3BlcmF0aW9ucz46OmRlY29kZShBcmd1bWVudERlY29kZXImIGRlY29kZXIs
CiB9CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLXZvaWQgQXJndW1lbnRDb2Rl
cjxXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbz46OmVuY29kZShBcmd1bWVudEVuY29k
ZXImIGVuY29kZXIsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9ncmFtSW5mbykK
LXsKLSAgICBlbmNvZGVyIDw8IHByb2dyYW1JbmZvLnZlcnRleFNoYWRlclN0cmluZygpOwotICAg
IGVuY29kZXIgPDwgcHJvZ3JhbUluZm8uZnJhZ21lbnRTaGFkZXJTdHJpbmcoKTsKLSAgICBlbmNv
ZGVyLmVuY29kZUVudW0ocHJvZ3JhbUluZm8ucHJvZ3JhbVR5cGUoKSk7Ci0gICAgZW5jb2Rlci5l
bmNvZGVFbnVtKHByb2dyYW1JbmZvLm1lc2hUeXBlKCkpOwotICAgIGNvbnN0IEN1c3RvbUZpbHRl
clByb2dyYW1NaXhTZXR0aW5ncyYgbWl4U2V0dGluZ3MgPSBwcm9ncmFtSW5mby5taXhTZXR0aW5n
cygpOwotICAgIGVuY29kZXIuZW5jb2RlRW51bShtaXhTZXR0aW5ncy5ibGVuZE1vZGUpOwotICAg
IGVuY29kZXIuZW5jb2RlRW51bShtaXhTZXR0aW5ncy5jb21wb3NpdGVPcGVyYXRvcik7Ci19Ci0K
LWJvb2wgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbz46OmRl
Y29kZShBcmd1bWVudERlY29kZXImIGRlY29kZXIsIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBw
cm9ncmFtSW5mbykKLXsKLSAgICBTdHJpbmcgdmVydGV4U2hhZGVyU3RyaW5nOwotICAgIFN0cmlu
ZyBmcmFnbWVudFNoYWRlclN0cmluZzsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9n
cmFtVHlwZTsKLSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZTsKLSAgICBDdXN0b21G
aWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MgbWl4U2V0dGluZ3M7Ci0gICAgaWYgKCFkZWNvZGVyLmRl
Y29kZSh2ZXJ0ZXhTaGFkZXJTdHJpbmcpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgaWYg
KCFkZWNvZGVyLmRlY29kZShmcmFnbWVudFNoYWRlclN0cmluZykpCi0gICAgICAgIHJldHVybiBm
YWxzZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bShwcm9ncmFtVHlwZSkpCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bShtZXNoVHlwZSkpCi0g
ICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlRW51bShtaXhTZXR0
aW5ncy5ibGVuZE1vZGUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgaWYgKCFkZWNvZGVy
LmRlY29kZUVudW0obWl4U2V0dGluZ3MuY29tcG9zaXRlT3BlcmF0b3IpKQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0gICAgcHJvZ3JhbUluZm8gPSBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyh2ZXJ0
ZXhTaGFkZXJTdHJpbmcsIGZyYWdtZW50U2hhZGVyU3RyaW5nLCBwcm9ncmFtVHlwZSwgbWl4U2V0
dGluZ3MsIG1lc2hUeXBlKTsKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLSNlbmRpZiAvLyBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0KIHZvaWQgQXJndW1lbnRDb2RlcjxUcmFuc2Zvcm1PcGVyYXRpb25zPjo6
ZW5jb2RlKEFyZ3VtZW50RW5jb2RlciYgZW5jb2RlciwgY29uc3QgVHJhbnNmb3JtT3BlcmF0aW9u
cyYgdHJhbnNmb3JtT3BlcmF0aW9ucykKIHsKICAgICBlbmNvZGVyIDw8IHN0YXRpY19jYXN0PHVp
bnQzMl90Pih0cmFuc2Zvcm1PcGVyYXRpb25zLnNpemUoKSk7CkBAIC0xMDg0LDE1ICs4NzYsNiBA
QCB2b2lkIEFyZ3VtZW50Q29kZXI8Q29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlPjo6ZW5jb2RlKEFy
Z3VtZW50RW5jb2RlciYgZW5jb2RlciwgYwogICAgICAgICBlbmNvZGVDb29yZGluYXRlZFN1cmZh
Y2UoZW5jb2Rlciwgc3RhdGUudXBkYXRlQXRsYXNlc1RvQ3JlYXRlW2ldLnNlY29uZCk7CiAgICAg
fQogICAgIGVuY29kZXIgPDwgc3RhdGUudXBkYXRlQXRsYXNlc1RvUmVtb3ZlOwotCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgIGVuY29kZXIgPDwgc3RhdGljX2Nhc3Q8dWludDY0X3Q+KHN0
YXRlLmN1c3RvbUZpbHRlcnNUb0NyZWF0ZS5zaXplKCkpOwotICAgIGZvciAoc2l6ZV90IGkgPSAw
OyBpIDwgc3RhdGUuY3VzdG9tRmlsdGVyc1RvQ3JlYXRlLnNpemUoKTsgKytpKSB7Ci0gICAgICAg
IGVuY29kZXIgPDwgc3RhdGUuY3VzdG9tRmlsdGVyc1RvQ3JlYXRlW2ldLmZpcnN0OwotICAgICAg
ICBlbmNvZGVyIDw8IHN0YXRlLmN1c3RvbUZpbHRlcnNUb0NyZWF0ZVtpXS5zZWNvbmQ7Ci0gICAg
fQotICAgIGVuY29kZXIgPDwgc3RhdGUuY3VzdG9tRmlsdGVyc1RvUmVtb3ZlOwotI2VuZGlmCiB9
CiAKIGJvb2wgQXJndW1lbnRDb2RlcjxDb29yZGluYXRlZEdyYXBoaWNzU3RhdGU+OjpkZWNvZGUo
QXJndW1lbnREZWNvZGVyJiBkZWNvZGVyLCBDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUmIHN0YXRl
KQpAQCAtMTE2MiwyNSArOTQ1LDYgQEAgYm9vbCBBcmd1bWVudENvZGVyPENvb3JkaW5hdGVkR3Jh
cGhpY3NTdGF0ZT46OmRlY29kZShBcmd1bWVudERlY29kZXImIGRlY29kZXIsIEMKICAgICBpZiAo
IWRlY29kZXIuZGVjb2RlKHN0YXRlLnVwZGF0ZUF0bGFzZXNUb1JlbW92ZSkpCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICB1aW50NjRfdCBzaXpl
T2ZDdXN0b21GaWx0ZXJzVG9DcmVhdGU7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShzaXplT2ZD
dXN0b21GaWx0ZXJzVG9DcmVhdGUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBmb3Ig
KHVpbnQ2NF90IGkgPSAwOyBpIDwgc2l6ZU9mQ3VzdG9tRmlsdGVyc1RvQ3JlYXRlOyArK2kpIHsK
LSAgICAgICAgdWludDMyX3QgZmlsdGVySUQ7Ci0gICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGUo
ZmlsdGVySUQpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBDdXN0b21GaWx0
ZXJQcm9ncmFtSW5mbyBmaWx0ZXJJbmZvOwotICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGZp
bHRlckluZm8pKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBzdGF0ZS5jdXN0
b21GaWx0ZXJzVG9DcmVhdGUuYXBwZW5kKHN0ZDo6bWFrZV9wYWlyKGZpbHRlcklELCBmaWx0ZXJJ
bmZvKSk7Ci0gICAgfQotCi0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShzdGF0ZS5jdXN0b21GaWx0
ZXJzVG9SZW1vdmUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0jZW5kaWYKLQogICAgIHJldHVy
biB0cnVlOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0
ZWRHcmFwaGljcy9Db29yZGluYXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuaCBiL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NBcmd1
bWVudENvZGVycy5oCmluZGV4IGEzY2RjMDQuLmVkYzRjMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NBcmd1
bWVudENvZGVycy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBo
aWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5oCkBAIC00OCwxMCArNDgsNiBA
QCBzdHJ1Y3QgTGVuZ3RoOwogY2xhc3MgRmlsdGVyT3BlcmF0aW9uczsKICNlbmRpZgogCi0jaWYg
RU5BQkxFKENTU19TSEFERVJTKQotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm87Ci0jZW5k
aWYKLQogI2lmIFVTRShHUkFQSElDU19TVVJGQUNFKQogc3RydWN0IEdyYXBoaWNzU3VyZmFjZVRv
a2VuOwogI2VuZGlmCkBAIC02NiwxMyArNjIsNiBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVu
dENvZGVyPFdlYkNvcmU6OkZpbHRlck9wZXJhdGlvbnM+IHsKIH07CiAjZW5kaWYKIAotI2lmIEVO
QUJMRShDU1NfU0hBREVSUykKLXRlbXBsYXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29y
ZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8+IHsKLSAgICBzdGF0aWMgdm9pZCBlbmNvZGUoQXJn
dW1lbnRFbmNvZGVyJiwgY29uc3QgV2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mKTsK
LSAgICBzdGF0aWMgYm9vbCBkZWNvZGUoQXJndW1lbnREZWNvZGVyJiwgV2ViQ29yZTo6Q3VzdG9t
RmlsdGVyUHJvZ3JhbUluZm8mKTsKLX07Ci0jZW5kaWYKLQogdGVtcGxhdGU8PiBzdHJ1Y3QgQXJn
dW1lbnRDb2RlcjxXZWJDb3JlOjpUcmFuc2Zvcm1PcGVyYXRpb25zPiB7CiAgICAgc3RhdGljIHZv
aWQgZW5jb2RlKEFyZ3VtZW50RW5jb2RlciYsIGNvbnN0IFdlYkNvcmU6OlRyYW5zZm9ybU9wZXJh
dGlvbnMmKTsKICAgICBzdGF0aWMgYm9vbCBkZWNvZGUoQXJndW1lbnREZWNvZGVyJiwgV2ViQ29y
ZTo6VHJhbnNmb3JtT3BlcmF0aW9ucyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hh
cmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL1dlYkN1c3RvbUZpbHRl
clByb2dyYW1Qcm94eS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU2ZjcwNzYu
LjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3Mv
V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDQ5ICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0
ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMg
SVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YK
LSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgot
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIldlYkN1c3RvbUZpbHRlclByb2dy
YW1Qcm94eS5oIgotCi1uYW1lc3BhY2UgV2ViS2l0IHsKLQotaW50IFdlYkN1c3RvbUZpbHRlclBy
b2dyYW1Qcm94eTo6c19uZXh0SWQgPSAxOwotCi1XZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHk6
On5XZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkoKQotewotICAgIGlmIChtX2NsaWVudCkgewot
ICAgICAgICBtX2NsaWVudC0+cmVtb3ZlQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KHRoaXMpOwot
ICAgICAgICBtX2NsaWVudCA9IDA7Ci0gICAgfQotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJLaXQK
LQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL1dlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94
eS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9t
RmlsdGVyUHJvZ3JhbVByb3h5LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhhMDg3
YTAuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhp
Y3MvV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmgKKysrIC9kZXYvbnVsbApAQCAtMSw5MyAr
MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3Jh
dGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
Ci0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQot
ICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoK
LSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFT
IElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICog
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
Ci0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViQ3VzdG9tRmls
dGVyUHJvZ3JhbVByb3h5X2gKLSNkZWZpbmUgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5X2gK
LQotI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykgJiYgRU5BQkxFKENTU19TSEFERVJTKQot
Ci0jaW5jbHVkZSA8V2ViQ29yZS9UZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0u
aD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViS2l0IHsKLQot
Y2xhc3MgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5OwotCi1jbGFzcyBXZWJDdXN0b21GaWx0
ZXJQcm9ncmFtUHJveHlDbGllbnQgewotcHVibGljOgotICAgIHZpcnR1YWwgdm9pZCByZW1vdmVD
dXN0b21GaWx0ZXJQcm9ncmFtUHJveHkoV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KikgPSAw
OwotfTsKLQotLy8gVGhpcyBpcyBhIHByb3h5IGNsYXNzIHVzZWQgdG8gc3RvcmUgdGhlIElEIG9m
IHRoZSBjdXN0b20gZmlsdGVyIHByb2dyYW0gc2VyaWFsaXplZCB0byB0aGUgb3RoZXIgcHJvY2Vz
cy4KLS8vIEl0IGxpdmVzIGluIHRoZSBXZWJQcm9jZXNzIGFuZCBpcyByZWZlcmVuY2VkIGZyb20g
dGhlIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0gbWVhbmluZyB0aGF0IGl0IHdpbGwgYmUg
a2VwdCBhbGl2ZSBhcwotLy8gbG9uZyBhcyBhIGxheWVyIG9uIHRoZSBwYWdlIHdpbGwgcmVuZGVy
IHdpdGggdGhpcyBwcm9ncmFtLiBJdCB3aWxsIGNhbGwgcmVtb3ZlQ3VzdG9tRmlsdGVyUHJvZ3Jh
bVByb3h5IG9uIHRoZSBtX2NsaWVudAotLy8gd2hlbiB0aGUgcHJvZ3JhbSBpcyBubyBsb25nZXIg
bmVlZGVkIHRvIHJlbmRlciB0aGUgZmlsdGVyLiBUaGUgY2xpZW50IGNhbiB0aGVuIHNlbmQgYSBt
ZXNzYWdlIHRvIHRoZSBVSSBwcm9jZXNzCi0vLyB0byBkZXN0cm95IHRoZSBhc3NvY2lhdGVkIHJl
ZmVyZW5jZS4gTm90ZSB0aGF0IG1vcmUgbGF5ZXJzIGNhbiBzaGFyZSB0aGUgc2FtZSBwcm9ncmFt
IGFuZCB0aGVyZSdzCi0vLyBubyBuZWVkIHRvIGltcGxlbWVudCBhIGNhY2hpbmcgbWVjaGFuaXNt
IGluIHRoZSBjb21wb3NpdG9yIHNpZGUuCi0KLWNsYXNzIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Q
cm94eSA6IHB1YmxpYyBSZWZDb3VudGVkPFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eT4sIHB1
YmxpYyBXZWJDb3JlOjpUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW1DbGllbnQg
ewotcHVibGljOgotICAgIHVzaW5nIFJlZkNvdW50ZWQ8V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5Pjo6cmVmOwotICAgIHVzaW5nIFJlZkNvdW50ZWQ8V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5Pjo6ZGVyZWY7Ci0KLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxXZWJDdXN0b21GaWx0ZXJQcm9n
cmFtUHJveHk+IGNyZWF0ZSgpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdl
YkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSgpKTsKLSAgICB9Ci0KLSAgICBpbnQgaWQoKSBjb25z
dCB7IHJldHVybiBtX2lkOyB9Ci0KLSAgICAvLyBOZWVkZWQgdG8gbWFrZSBUZXh0dXJlTWFwcGVy
UGxhdGZvcm1Db21waWxlZFByb2dyYW1DbGllbnQgbG9vayBsaWtlIGEgUmVmQ291bnRlZCBvYmpl
Y3QuCi0gICAgdmlydHVhbCB2b2lkIHJlZkZyb21WYWxpZGF0ZWRQcm9ncmFtKCkgeyByZWYoKTsg
fQotICAgIHZpcnR1YWwgdm9pZCBkZXJlZkZyb21WYWxpZGF0ZWRQcm9ncmFtKCkgeyBkZXJlZigp
OyB9Ci0KLSAgICB2aXJ0dWFsIH5XZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkoKTsKLSAgICAK
LSAgICB2b2lkIHNldENsaWVudChXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHlDbGllbnQqIGNs
aWVudCkgeyBtX2NsaWVudCA9IGNsaWVudDsgfQotICAgIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Q
cm94eUNsaWVudCogY2xpZW50KCkgY29uc3QgeyByZXR1cm4gbV9jbGllbnQ7IH0KLQotcHJpdmF0
ZToKLSAgICBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkoKQotICAgICAgICA6IG1fY2xpZW50
KDApCi0gICAgICAgICwgbV9pZChzX25leHRJZCsrKQotICAgIHsKLSAgICB9Ci0gICAgCi0gICAg
V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Q2xpZW50KiBtX2NsaWVudDsKLSAgICBpbnQgbV9p
ZDsKLSAgICAKLSAgICBzdGF0aWMgaW50IHNfbmV4dElkOwotfTsKLQotfSAvLyBuYW1lc3BhY2Ug
V2ViS2l0Ci0KLSNlbmRpZiAvLyBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpICYmIEVOQUJMRShD
U1NfU0hBREVSUykKLQotI2VuZGlmIC8vIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eV9oCi0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMu
Y3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKaW5k
ZXggNmZiZjg0NC4uZjE1YTY4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dl
YkNvcmVBcmd1bWVudENvZGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNv
cmVBcmd1bWVudENvZGVycy5jcHAKQEAgLTE0NjMsMTIgKzE0NjMsNiBAQCBzdGF0aWMgdm9pZCBl
bmNvZGVGaWx0ZXJPcGVyYXRpb24oQXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBGaWx0
ZXJPcGVyYXRpbwogICAgICAgICBlbmNvZGVyIDw8IGRyb3BTaGFkb3dGaWx0ZXIuY29sb3IoKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNl
IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOgotICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJ
REFURURfQ1VTVE9NOgotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgYnJl
YWs7Ci0jZW5kaWYKICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6UEFTU1RIUk9VR0g6CiAgICAg
Y2FzZSBGaWx0ZXJPcGVyYXRpb246Ok5PTkU6CiAgICAgICAgIGJyZWFrOwpAQCAtMTUzMiwxMiAr
MTUyNiw2IEBAIHN0YXRpYyBib29sIGRlY29kZUZpbHRlck9wZXJhdGlvbihBcmd1bWVudERlY29k
ZXImIGRlY29kZXIsIFJlZlB0cjxGaWx0ZXJPcGVyYXRpCiAgICAgICAgIGZpbHRlciA9IERyb3BT
aGFkb3dGaWx0ZXJPcGVyYXRpb246OmNyZWF0ZShsb2NhdGlvbiwgc3RkRGV2aWF0aW9uLCBjb2xv
ciwgdHlwZSk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci0gICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICBjYXNlIEZpbHRlck9wZXJh
dGlvbjo6VkFMSURBVEVEX0NVU1RPTToKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0g
ICAgICAgIGJyZWFrOwotI2VuZGlmCiAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OlBBU1NUSFJP
VUdIOgogICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpOT05FOgogICAgICAgICBicmVhazsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmggYi9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCmluZGV4IGU5ZjcxMTQu
LjI5MzIyZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNl
c1N0b3JlLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUu
aApAQCAtOTcsNyArOTcsNiBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKICAgICBtYWNybyhDb21wb3Np
dGluZ0JvcmRlcnNWaXNpYmxlLCBjb21wb3NpdGluZ0JvcmRlcnNWaXNpYmxlLCBCb29sLCBib29s
LCBmYWxzZSkgXAogICAgIG1hY3JvKENvbXBvc2l0aW5nUmVwYWludENvdW50ZXJzVmlzaWJsZSwg
Y29tcG9zaXRpbmdSZXBhaW50Q291bnRlcnNWaXNpYmxlLCBCb29sLCBib29sLCBmYWxzZSkgXAog
ICAgIG1hY3JvKFRpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlzaWJsZSwgdGlsZWRTY3JvbGxpbmdJ
bmRpY2F0b3JWaXNpYmxlLCBCb29sLCBib29sLCBmYWxzZSkgXAotICAgIG1hY3JvKENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQsIGNzc0N1c3RvbUZpbHRlckVuYWJsZWQsIEJvb2wsIGJvb2wsIHRydWUp
IFwKICAgICBtYWNybyhXZWJHTEVuYWJsZWQsIHdlYkdMRW5hYmxlZCwgQm9vbCwgYm9vbCwgdHJ1
ZSkgXAogICAgIG1hY3JvKE11bHRpdGhyZWFkZWRXZWJHTEVuYWJsZWQsIG11bHRpdGhyZWFkZWRX
ZWJHTEVuYWJsZWQsIEJvb2wsIGJvb2wsIGZhbHNlKSBcCiAgICAgbWFjcm8oRm9yY2VTb2Z0d2Fy
ZVdlYkdMUmVuZGVyaW5nLCBmb3JjZVNvZnR3YXJlV2ViR0xSZW5kZXJpbmcsIEJvb2wsIGJvb2ws
IGZhbHNlKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxh
eWVyVHJlZVRyYW5zYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9SZW1vdGVM
YXllclRyZWVUcmFuc2FjdGlvbi5tbQppbmRleCBkOTkzZWQwLi41MTk3YWIzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rp
b24ubW0KQEAgLTQ5NSwxNCArNDk1LDYgQEAgUmVtb3RlTGF5ZXJUcmVlVGV4dFN0cmVhbSYgUmVt
b3RlTGF5ZXJUcmVlVGV4dFN0cmVhbTo6b3BlcmF0b3I8PChjb25zdCBGaWx0ZXJPcGUKICAgICAg
ICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkRST1BfU0hBRE9XOgogICAgICAgICAgICAgdHMgPDwg
ImRyb3Agc2hhZG93IjsKICAgICAgICAgICAgIGJyZWFrOwotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICAgICAgICAgIHRz
IDw8ICJjdXN0b20iOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgRmlsdGVyT3Bl
cmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOgotICAgICAgICAgICAgdHMgPDwgImN1c3RvbSAodmFs
aWRhdGVkKSI7Ci0gICAgICAgICAgICBicmVhazsKLSNlbmRpZgogICAgICAgICBjYXNlIEZpbHRl
ck9wZXJhdGlvbjo6UEFTU1RIUk9VR0g6CiAgICAgICAgICAgICB0cyA8PCAicGFzc3Rocm91Z2gi
OwogICAgICAgICAgICAgYnJlYWs7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0MvV0tQcmVmZXJlbmNlcy5jcHAKaW5kZXggZWRlMDlkOS4uOGQyNWM3MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcApAQCAtNDU5LDE2
ICs0NTksNiBAQCBib29sIFdLUHJlZmVyZW5jZXNHZXRUaWxlZFNjcm9sbGluZ0luZGljYXRvclZp
c2libGUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlcwogICAgIHJldHVybiB0b0ltcGwocHJl
ZmVyZW5jZXNSZWYpLT50aWxlZFNjcm9sbGluZ0luZGljYXRvclZpc2libGUoKTsKIH0KIAotdm9p
ZCBXS1ByZWZlcmVuY2VzU2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVm
IHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpCi17Ci0gICAgdG9JbXBsKHByZWZlcmVuY2VzUmVm
KS0+c2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChmbGFnKTsKLX0KLQotYm9vbCBXS1ByZWZlcmVu
Y2VzR2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2Vz
UmVmKQotewotICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5jc3NDdXN0b21GaWx0
ZXJFbmFibGVkKCk7Ci19Ci0KIHZvaWQgV0tQcmVmZXJlbmNlc1NldFdlYkdMRW5hYmxlZChXS1By
ZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpCiB7CiAgICAgdG9JbXBsKHBy
ZWZlcmVuY2VzUmVmKS0+c2V0V2ViR0xFbmFibGVkKGZsYWcpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaAppbmRleCA4Njdj
OTk3Li5lOGJiMTFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Mv
V0tQcmVmZXJlbmNlc1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0MvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaApAQCAtODksMTAgKzg5LDYgQEAgV0tfRVhQT1JUIHZv
aWQgV0tQcmVmZXJlbmNlc1NldFRpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlzaWJsZShXS1ByZWZl
cmVuY2VzUmVmLAogV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldFRpbGVkU2Nyb2xsaW5n
SW5kaWNhdG9yVmlzaWJsZShXS1ByZWZlcmVuY2VzUmVmKTsKIAogLy8gRGVmYXVsdHMgdG8gdHJ1
ZS4KLVdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVk
KFdLUHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZyk7Ci1XS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVu
Y2VzR2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKTsKLQotLy8gRGVm
YXVsdHMgdG8gdHJ1ZS4KIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRXZWJHTEVuYWJs
ZWQoV0tQcmVmZXJlbmNlc1JlZiwgYm9vbCk7CiBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2Vz
R2V0V2ViR0xFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3Bw
CmluZGV4IGRiZjBjZjAuLmMyM2NlNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCkBAIC0yMDMs
NyArMjAzLDYgQEAgdm9pZCBJbmplY3RlZEJ1bmRsZTo6b3ZlcnJpZGVCb29sUHJlZmVyZW5jZUZv
clRlc3RSdW5uZXIoV2ViUGFnZUdyb3VwUHJveHkqIHBhZ2UKICNkZWZpbmUgRk9SX0VBQ0hfT1ZF
UlJJREVfQk9PTF9QUkVGRVJFTkNFKG1hY3JvKSBcCiAgICAgbWFjcm8oV2ViS2l0QWNjZWxlcmF0
ZWRDb21wb3NpdGluZ0VuYWJsZWQsIEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkLCBhY2Nl
bGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCkgXAogICAgIG1hY3JvKFdlYktpdENhbnZhc1VzZXNB
Y2NlbGVyYXRlZERyYXdpbmcsIENhbnZhc1VzZXNBY2NlbGVyYXRlZERyYXdpbmcsIGNhbnZhc1Vz
ZXNBY2NlbGVyYXRlZERyYXdpbmcpIFwKLSAgICBtYWNybyhXZWJLaXRDU1NDdXN0b21GaWx0ZXJF
bmFibGVkLCBDU1NDdXN0b21GaWx0ZXJFbmFibGVkLCBjc3NDdXN0b21GaWx0ZXJFbmFibGVkKSBc
CiAgICAgbWFjcm8oV2ViS2l0Q1NTR3JpZExheW91dEVuYWJsZWQsIENTU0dyaWRMYXlvdXRFbmFi
bGVkLCBjc3NHcmlkTGF5b3V0RW5hYmxlZCkgXAogICAgIG1hY3JvKFdlYktpdEZyYW1lRmxhdHRl
bmluZ0VuYWJsZWQsIEZyYW1lRmxhdHRlbmluZ0VuYWJsZWQsIGZyYW1lRmxhdHRlbmluZ0VuYWJs
ZWQpIFwKICAgICBtYWNybyhXZWJLaXRKYXZhRW5hYmxlZCwgSmF2YUVuYWJsZWQsIGphdmFFbmFi
bGVkKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29v
cmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExheWVyVHJlZUhvc3QuY3BwIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRM
YXllclRyZWVIb3N0LmNwcAppbmRleCAyOGUwNjM1Li4yNTc0N2E0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGlu
YXRlZExheWVyVHJlZUhvc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5jcHAKQEAg
LTQzLDExICs0Myw2IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9TZXR0aW5ncy5oPgogI2luY2x1ZGUg
PHd0Zi9DdXJyZW50VGltZS5oPgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUg
IkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIKLSNpbmNsdWRlICJWYWxpZGF0ZWRDdXN0
b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNlbmRpZgotCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsK
IAogbmFtZXNwYWNlIFdlYktpdCB7CkBAIC01OSw5ICs1NCw2IEBAIFBhc3NSZWZQdHI8Q29vcmRp
bmF0ZWRMYXllclRyZWVIb3N0PiBDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6OmNyZWF0ZShXZWJQ
YWdlKiB3CiAKIENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6fkNvb3JkaW5hdGVkTGF5ZXJUcmVl
SG9zdCgpCiB7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGRpc2Nvbm5lY3RDdXN0b21G
aWx0ZXJQcm9ncmFtcygpOwotI2VuZGlmCiB9CiAKIENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6
Q29vcmRpbmF0ZWRMYXllclRyZWVIb3N0KFdlYlBhZ2UqIHdlYlBhZ2UpCkBAIC0yMTUsODUgKzIw
Nyw2IEBAIHZvaWQgQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0OjpwdXJnZUJhY2tpbmdTdG9yZXMo
KQogICAgIG1fY29vcmRpbmF0b3ItPnB1cmdlQmFja2luZ1N0b3JlcygpOwogfQogCi12b2lkIENv
b3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6d2lsbFN5bmNMYXllclN0YXRlKENvb3JkaW5hdGVkR3Jh
cGhpY3NMYXllclN0YXRlJiBzdGF0ZSkKLXsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAg
aWYgKHN0YXRlLmFuaW1hdGlvbnNDaGFuZ2VkKQotICAgICAgICBwcmVwYXJlQ3VzdG9tRmlsdGVy
UHJveGllc0ZvckFuaW1hdGlvbnMoc3RhdGUuYW5pbWF0aW9ucyk7Ci0KLSAgICBpZiAoc3RhdGUu
ZmlsdGVyc0NoYW5nZWQpCi0gICAgICAgIGNoZWNrQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3hpZXMo
c3RhdGUuZmlsdGVycyk7Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShzdGF0ZSk7Ci0jZW5kaWYK
LX0KLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLXZvaWQgQ29vcmRpbmF0ZWRMYXllclRyZWVI
b3N0OjpwcmVwYXJlQ3VzdG9tRmlsdGVyUHJveGllc0ZvckFuaW1hdGlvbnMoR3JhcGhpY3NMYXll
ckFuaW1hdGlvbnMmIGFjdGl2ZUFuaW1hdGlvbnMpCi17Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7
IGkgPCBhY3RpdmVBbmltYXRpb25zLmFuaW1hdGlvbnMoKS5zaXplKCk7ICsraSkgewotICAgICAg
ICBjb25zdCBLZXlmcmFtZVZhbHVlTGlzdCYga2V5ZnJhbWVzID0gYWN0aXZlQW5pbWF0aW9ucy5h
bmltYXRpb25zKCkuYXQoaSkua2V5ZnJhbWVzKCk7Ci0gICAgICAgIGlmIChrZXlmcmFtZXMucHJv
cGVydHkoKSAhPSBBbmltYXRlZFByb3BlcnR5V2Via2l0RmlsdGVyKQotICAgICAgICAgICAgY29u
dGludWU7Ci0gICAgICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwga2V5ZnJhbWVzLnNpemUoKTsg
KytqKSB7Ci0gICAgICAgICAgICBjb25zdCBGaWx0ZXJBbmltYXRpb25WYWx1ZSYgZmlsdGVyVmFs
dWUgPSBzdGF0aWNfY2FzdDxjb25zdCBGaWx0ZXJBbmltYXRpb25WYWx1ZSY+KGtleWZyYW1lcy5h
dChqKSk7Ci0gICAgICAgICAgICBjaGVja0N1c3RvbUZpbHRlclByb2dyYW1Qcm94aWVzKGZpbHRl
clZhbHVlLnZhbHVlKCkpOwotICAgICAgICB9Ci0gICAgfQotfQotCi12b2lkIENvb3JkaW5hdGVk
TGF5ZXJUcmVlSG9zdDo6Y2hlY2tDdXN0b21GaWx0ZXJQcm9ncmFtUHJveGllcyhjb25zdCBGaWx0
ZXJPcGVyYXRpb25zJiBmaWx0ZXJzKQotewotICAgIC8vIFdlIG5lZWQgdG8gY3JlYXRlIHRoZSBX
ZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkgb2JqZWN0cyBiZWZvcmUgd2UgZ2V0IHRvIHNlcmlh
bGl6ZSB0aGUKLSAgICAvLyBjdXN0b20gZmlsdGVycyB0byB0aGUgb3RoZXIgcHJvY2Vzcy4gVGhh
dCdzIGJlY2F1c2UgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5IG5lZWRzCi0gICAgLy8gdG8g
bGluayBiYWNrIHRvIHRoZSBjb29yZGluYXRvciwgc28gdGhhdCB3ZSBjYW4gc2VuZCBhIG1lc3Nh
Z2UgdG8gdGhlIFVJIHByb2Nlc3Mgd2hlbgotICAgIC8vIHRoZSBwcm9ncmFtIGlzIG5vdCBuZWVk
ZWQgYW55bW9yZS4KLSAgICAvLyBOb3RlIHRoYXQgdGhlIHNlcmlhbGl6YXRpb24gd2lsbCBvbmx5
IGhhcHBlbiBhdCBhIGxhdGVyIHRpbWUgaW4gQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpGaWx0ZXJP
cGVyYXRpb25zPjo6ZW5jb2RlLgotICAgIC8vIEF0IHRoYXQgcG9pbnQgdGhlIHByb2dyYW0gd2ls
bCBvbmx5IGJlIHNlcmlhbGl6ZWQgb25jZS4gQWxsIHRoZSBvdGhlciB0aW1lcyBpdCB3aWxsIG9u
bHkgdXNlIHRoZSBJRCBvZiB0aGUgcHJvZ3JhbS4KLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8
IGZpbHRlcnMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgY29uc3QgRmlsdGVyT3BlcmF0aW9uKiBv
cGVyYXRpb24gPSBmaWx0ZXJzLmF0KGkpOwotICAgICAgICBpZiAob3BlcmF0aW9uLT50eXBlKCkg
IT0gRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NKQotICAgICAgICAgICAgY29udGlu
dWU7Ci0gICAgICAgIGNvbnN0IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9t
T3BlcmF0aW9uID0gc3RhdGljX2Nhc3Q8Y29uc3QgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uKj4ob3BlcmF0aW9uKTsKLSAgICAgICAgQVNTRVJUKGN1c3RvbU9wZXJhdGlvbi0+dmFsaWRh
dGVkUHJvZ3JhbSgpLT5pc0luaXRpYWxpemVkKCkpOwotICAgICAgICBUZXh0dXJlTWFwcGVyUGxh
dGZvcm1Db21waWxlZFByb2dyYW0qIHByb2dyYW0gPSBjdXN0b21PcGVyYXRpb24tPnZhbGlkYXRl
ZFByb2dyYW0oKS0+cGxhdGZvcm1Db21waWxlZFByb2dyYW0oKTsKLQotICAgICAgICBSZWZQdHI8
V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5PiBjdXN0b21GaWx0ZXJQcm9ncmFtUHJveHk7Ci0g
ICAgICAgIGlmIChwcm9ncmFtLT5jbGllbnQoKSkKLSAgICAgICAgICAgIGN1c3RvbUZpbHRlclBy
b2dyYW1Qcm94eSA9IHN0YXRpY19jYXN0PFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSo+KHBy
b2dyYW0tPmNsaWVudCgpKTsKLSAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBjdXN0b21GaWx0
ZXJQcm9ncmFtUHJveHkgPSBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHk6OmNyZWF0ZSgpOwot
ICAgICAgICAgICAgcHJvZ3JhbS0+c2V0Q2xpZW50KGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSk7
Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoIWN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS0+Y2xp
ZW50KCkpIHsKLSAgICAgICAgICAgIGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS0+c2V0Q2xpZW50
KHRoaXMpOwotICAgICAgICAgICAgbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5hZGQoY3VzdG9tRmls
dGVyUHJvZ3JhbVByb3h5LmdldCgpKTsKLSAgICAgICAgICAgIG1fY29vcmRpbmF0b3ItPnN0YXRl
KCkuY3VzdG9tRmlsdGVyc1RvQ3JlYXRlLmFwcGVuZChzdGQ6Om1ha2VfcGFpcihjdXN0b21GaWx0
ZXJQcm9ncmFtUHJveHktPmlkKCksIGN1c3RvbU9wZXJhdGlvbi0+dmFsaWRhdGVkUHJvZ3JhbSgp
LT52YWxpZGF0ZWRQcm9ncmFtSW5mbygpKSk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAg
ICAvLyBJZiB0aGUgY2xpZW50IHdhcyBub3QgZGlzY29ubmVjdGVkIHRoZW4gdGhpcyBjb29yZGlu
YXRvciBtdXN0IGJlIHRoZSBjbGllbnQgZm9yIGl0LgotICAgICAgICAgICAgQVNTRVJUKGN1c3Rv
bUZpbHRlclByb2dyYW1Qcm94eS0+Y2xpZW50KCkgPT0gdGhpcyk7Ci0gICAgICAgIH0KLSAgICB9
Ci19Ci0KLXZvaWQgQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0OjpyZW1vdmVDdXN0b21GaWx0ZXJQ
cm9ncmFtUHJveHkoV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KiBjdXN0b21GaWx0ZXJQcm9n
cmFtUHJveHkpCi17Ci0gICAgLy8gQXQgdGhpcyB0aW1lIHRoZSBzaGFkZXIgaXMgbm90IG5lZWRl
ZCBhbnltb3JlLCBzbyB3ZSByZW1vdmUgaXQgZnJvbSBvdXIgc2V0IGFuZAotICAgIC8vIHNlbmQg
YSBtZXNzYWdlIHRvIHRoZSBvdGhlciBwcm9jZXNzIHRvIGRlbGV0ZSBpdC4KLSAgICBtX2N1c3Rv
bUZpbHRlclByb2dyYW1zLnJlbW92ZShjdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkpOwotICAgIG1f
Y29vcmRpbmF0b3ItPnN0YXRlKCkuY3VzdG9tRmlsdGVyc1RvUmVtb3ZlLmFwcGVuZChjdXN0b21G
aWx0ZXJQcm9ncmFtUHJveHktPmlkKCkpOwotfQotCi12b2lkIENvb3JkaW5hdGVkTGF5ZXJUcmVl
SG9zdDo6ZGlzY29ubmVjdEN1c3RvbUZpbHRlclByb2dyYW1zKCkKLXsKLSAgICAvLyBNYWtlIHN1
cmUgdGhhdCBXZWJDb3JlIHdpbGwgbm90IGNhbGwgaW50byB0aGlzIGNvb3JkaW5hdG9yIGFueW1v
cmUuCi0gICAgSGFzaFNldDxXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkqPjo6aXRlcmF0b3Ig
aXRlciA9IG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMuYmVnaW4oKTsKLSAgICBmb3IgKDsgaXRlciAh
PSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmVuZCgpOyArK2l0ZXIpCi0gICAgICAgICgqaXRlcikt
PnNldENsaWVudCgwKTsKLX0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KIHZvaWQg
Q29vcmRpbmF0ZWRMYXllclRyZWVIb3N0OjpkaWRGbHVzaFJvb3RMYXllcigpCiB7CiAgICAgaWYg
KG1fcGFnZU92ZXJsYXlMYXllcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5o
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3Mv
Q29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmgKaW5kZXggNTQ0ZTgyOC4uNTEyODEwZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhp
Y3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0
LmgKQEAgLTI5LDEwICsyOSw2IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc0xheWVyRmFj
dG9yeS5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0jaW5jbHVkZSAiV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LmgiCi0jZW5kaWYKLQog
bmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgQ29vcmRpbmF0ZWRTdXJmYWNlOwogfQpAQCAtNDIs
OSArMzgsNiBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFdlYlBhZ2U7CiAKIGNsYXNzIENv
b3JkaW5hdGVkTGF5ZXJUcmVlSG9zdCA6IHB1YmxpYyBMYXllclRyZWVIb3N0LCBwdWJsaWMgV2Vi
Q29yZTo6Q29tcG9zaXRpbmdDb29yZGluYXRvcjo6Q2xpZW50Ci0jaWYgRU5BQkxFKENTU19TSEFE
RVJTKQotICAgICwgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Q2xpZW50Ci0jZW5kaWYKIHsK
IHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxDb29yZGluYXRlZExheWVyVHJlZUhvc3Q+
IGNyZWF0ZShXZWJQYWdlKik7CkBAIC0xMDMsMzEgKzk2LDE2IEBAIHByaXZhdGU6CiAKICAgICAv
LyBDb21wb3NpdGluZ0Nvb3JkaW5hdG9yOjpDbGllbnQKICAgICB2aXJ0dWFsIHZvaWQgZGlkRmx1
c2hSb290TGF5ZXIoKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgd2lsbFN5bmNMYXllclN0
YXRlKFdlYkNvcmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NMYXllclN0YXRlJikgb3ZlcnJpZGU7CiAg
ICAgdmlydHVhbCB2b2lkIG5vdGlmeUZsdXNoUmVxdWlyZWQoKSBvdmVycmlkZSB7IHNjaGVkdWxl
TGF5ZXJGbHVzaCgpOyB9OwogICAgIHZpcnR1YWwgdm9pZCBjb21taXRTY2VuZVN0YXRlKGNvbnN0
IFdlYkNvcmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZSYpIG92ZXJyaWRlOwogICAgIHZpcnR1
YWwgdm9pZCBwYWludExheWVyQ29udGVudHMoY29uc3QgV2ViQ29yZTo6R3JhcGhpY3NMYXllcios
IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNsaXBS
ZWN0KSBvdmVycmlkZTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICB2b2lkIHByZXBh
cmVDdXN0b21GaWx0ZXJQcm94aWVzRm9yQW5pbWF0aW9ucyhXZWJDb3JlOjpHcmFwaGljc0xheWVy
QW5pbWF0aW9ucyYpOwotCi0gICAgLy8gV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Q2xpZW50
Ci0gICAgdm9pZCByZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkoV2ViQ3VzdG9tRmlsdGVy
UHJvZ3JhbVByb3h5Kik7Ci0KLSAgICB2b2lkIGNoZWNrQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3hp
ZXMoY29uc3QgV2ViQ29yZTo6RmlsdGVyT3BlcmF0aW9ucyYpOwotICAgIHZvaWQgZGlzY29ubmVj
dEN1c3RvbUZpbHRlclByb2dyYW1zKCk7Ci0jZW5kaWYKLQogICAgIHN0ZDo6dW5pcXVlX3B0cjxX
ZWJDb3JlOjpDb21wb3NpdGluZ0Nvb3JkaW5hdG9yPiBtX2Nvb3JkaW5hdG9yOwogCiAgICAgLy8g
VGhlIHBhZ2Ugb3ZlcmxheSBsYXllci4gV2lsbCBiZSBudWxsIGlmIHRoZXJlJ3Mgbm8gcGFnZSBv
dmVybGF5LgogICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpHcmFwaGljc0xheWVyPiBtX3Bh
Z2VPdmVybGF5TGF5ZXI7CiAgICAgUmVmUHRyPFBhZ2VPdmVybGF5PiBtX3BhZ2VPdmVybGF5Owog
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIEhhc2hTZXQ8V2ViQ3VzdG9tRmlsdGVyUHJv
Z3JhbVByb3h5Kj4gbV9jdXN0b21GaWx0ZXJQcm9ncmFtczsKLSNlbmRpZgotCiAgICAgYm9vbCBt
X25vdGlmeUFmdGVyU2NoZWR1bGVkTGF5ZXJGbHVzaDsKICAgICBib29sIG1faXNWYWxpZDsKICAg
ICBib29sIG1faXNTdXNwZW5kZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5jcHAKaW5kZXggNjZkZWU4Yi4uZWRmNTFkNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMjQ4MSw3ICsyNDgxLDYgQEAg
dm9pZCBXZWJQYWdlOjp1cGRhdGVQcmVmZXJlbmNlcyhjb25zdCBXZWJQcmVmZXJlbmNlc1N0b3Jl
JiBzdG9yZSkKICAgICBzZXR0aW5ncy5zZXRTaG93UmVwYWludENvdW50ZXIoc3RvcmUuZ2V0Qm9v
bFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5Ojpjb21wb3NpdGluZ1JlcGFpbnRDb3VudGVy
c1Zpc2libGVLZXkoKSkpOwogICAgIHNldHRpbmdzLnNldFNob3dUaWxlZFNjcm9sbGluZ0luZGlj
YXRvcihzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OnRpbGVkU2Ny
b2xsaW5nSW5kaWNhdG9yVmlzaWJsZUtleSgpKSk7CiAgICAgc2V0dGluZ3Muc2V0QWdncmVzc2l2
ZVRpbGVSZXRlbnRpb25FbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJl
bmNlc0tleTo6YWdncmVzc2l2ZVRpbGVSZXRlbnRpb25FbmFibGVkS2V5KCkpKTsKLSAgICBzZXR0
aW5ncy5zZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShX
ZWJQcmVmZXJlbmNlc0tleTo6Y3NzQ3VzdG9tRmlsdGVyRW5hYmxlZEtleSgpKSk7CiAgICAgUnVu
dGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRDU1NSZWdpb25zRW5hYmxl
ZChzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmNzc1JlZ2lvbnNF
bmFibGVkS2V5KCkpKTsKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJl
cygpLnNldENTU0NvbXBvc2l0aW5nRW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2Vi
UHJlZmVyZW5jZXNLZXk6OmNzc0NvbXBvc2l0aW5nRW5hYmxlZEtleSgpKSk7CiAgICAgc2V0dGlu
Z3Muc2V0Q1NTR3JpZExheW91dEVuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlBy
ZWZlcmVuY2VzS2V5Ojpjc3NHcmlkTGF5b3V0RW5hYmxlZEtleSgpKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9tYWMvV2ViS2l0Mi5vcmRlciBiL1NvdXJjZS9XZWJLaXQyL21hYy9XZWJL
aXQyLm9yZGVyCmluZGV4IDlkZjk0MDUuLmVmNTVlZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL21hYy9XZWJLaXQyLm9yZGVyCisrKyBiL1NvdXJjZS9XZWJLaXQyL21hYy9XZWJLaXQyLm9y
ZGVyCkBAIC0xODksNyArMTg5LDYgQEAgX19aTjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5MzFj
YW52YXNVc2VzQWNjZWxlcmF0ZWREcmF3aW5nS2V5RXYKIF9fWk42V2ViS2l0MTdXZWJQcmVmZXJl
bmNlc0tleTI4Y29tcG9zaXRpbmdCb3JkZXJzVmlzaWJsZUtleUV2CiBfX1pONldlYktpdDE3V2Vi
UHJlZmVyZW5jZXNLZXkzNmNvbXBvc2l0aW5nUmVwYWludENvdW50ZXJzVmlzaWJsZUtleUV2CiBf
X1pONldlYktpdDE3V2ViUHJlZmVyZW5jZXNLZXkzM3RpbGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlz
aWJsZUtleUV2Ci1fX1pONldlYktpdDE3V2ViUHJlZmVyZW5jZXNLZXkyNWNzc0N1c3RvbUZpbHRl
ckVuYWJsZWRLZXlFdgogX19aTjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5MTV3ZWJHTEVuYWJs
ZWRLZXlFdgogX19aTjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5MjhtdWx0aXRocmVhZGVkV2Vi
R0xFbmFibGVkS2V5RXYKIF9fWk42V2ViS2l0MTdXZWJQcmVmZXJlbmNlc0tleTMwZm9yY2VTb2Z0
d2FyZVdlYkdMUmVuZGVyaW5nS2V5RXYKZGlmZiAtLWdpdCBhL1NvdXJjZS9hdXRvdG9vbHMvRmlu
ZERlcGVuZGVuY2llcy5tNCBiL1NvdXJjZS9hdXRvdG9vbHMvRmluZERlcGVuZGVuY2llcy5tNApp
bmRleCBlZmMyZGIzLi40YmU4YThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvYXV0b3Rvb2xzL0ZpbmRE
ZXBlbmRlbmNpZXMubTQKKysrIGIvU291cmNlL2F1dG90b29scy9GaW5kRGVwZW5kZW5jaWVzLm00
CkBAIC0zNDAsMTMgKzM0MCwxMSBAQCBpZiB0ZXN0ICIkZW5hYmxlX29wY29kZV9zdGF0cyIgPSAi
eWVzIjsgdGhlbgogICAgIGZpCiBmaQogCi0jIEVuYWJsZSBDU1MgRmlsdGVycyBhbmQgU2hhZGVy
cyBpZiBhY2NlbGVyYXRlZF9jb21wb3NpdGluZyBpcyB0dXJuZWQgb24uCisjIEVuYWJsZSBDU1Mg
RmlsdGVycyBpZiBhY2NlbGVyYXRlZF9jb21wb3NpdGluZyBpcyB0dXJuZWQgb24uCiBlbmFibGVf
Y3NzX2ZpbHRlcnM9bm87Ci1lbmFibGVfY3NzX3NoYWRlcnM9bm87Ci1BQ19NU0dfQ0hFQ0tJTkco
W3doZXRoZXIgdG8gZW5hYmxlIENTUyBGaWx0ZXJzIGFuZCBTaGFkZXJzXSkKK0FDX01TR19DSEVD
S0lORyhbd2hldGhlciB0byBlbmFibGUgQ1NTIEZpbHRlcnNdKQogaWYgdGVzdCAiJGVuYWJsZV9h
Y2NlbGVyYXRlZF9jb21wb3NpdGluZyIgPSAieWVzIiAmJiB0ZXN0ICIkZm91bmRfb3BlbmdsIiA9
ICJ5ZXMiOyB0aGVuCiAgICAgZW5hYmxlX2Nzc19maWx0ZXJzPXllczsKLSAgICBlbmFibGVfY3Nz
X3NoYWRlcnM9eWVzOwogZmkKIEFDX01TR19SRVNVTFQoWyRlbmFibGVfY3NzX2ZpbHRlcnNdKQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvYXV0b3Rvb2xzL1NldHVwV2ViS2l0RmVhdHVyZXMubTQgYi9T
b3VyY2UvYXV0b3Rvb2xzL1NldHVwV2ViS2l0RmVhdHVyZXMubTQKaW5kZXggOWU4NTNiYS4uOWQ2
YWI2ZCAxMDA2NDQKLS0tIGEvU291cmNlL2F1dG90b29scy9TZXR1cFdlYktpdEZlYXR1cmVzLm00
CisrKyBiL1NvdXJjZS9hdXRvdG9vbHMvU2V0dXBXZWJLaXRGZWF0dXJlcy5tNApAQCAtMjksMTIg
KzI5LDYgQEAgZWxzZQogICAgIENPTkZJR1VSQUJMRV9GRUFUVVJFX0RFRklORVM9IiRDT05GSUdV
UkFCTEVfRkVBVFVSRV9ERUZJTkVTIEVOQUJMRV9WSURFTz0wIgogZmkKIAotaWYgdGVzdCAiJGVu
YWJsZV9jc3Nfc2hhZGVycyIgPSAieWVzIjsgdGhlbgotICAgIENPTkZJR1VSQUJMRV9GRUFUVVJF
X0RFRklORVM9IiRDT05GSUdVUkFCTEVfRkVBVFVSRV9ERUZJTkVTIEVOQUJMRV9DU1NfU0hBREVS
Uz0xIgotZWxzZQotICAgIENPTkZJR1VSQUJMRV9GRUFUVVJFX0RFRklORVM9IiRDT05GSUdVUkFC
TEVfRkVBVFVSRV9ERUZJTkVTIEVOQUJMRV9DU1NfU0hBREVSUz0wIgotZmkKLQogaWYgdGVzdCAi
JGVuYWJsZV9jc3NfZmlsdGVycyIgPSAieWVzIjsgdGhlbgogICAgIENPTkZJR1VSQUJMRV9GRUFU
VVJFX0RFRklORVM9IiRDT05GSUdVUkFCTEVfRkVBVFVSRV9ERUZJTkVTIEVOQUJMRV9DU1NfRklM
VEVSUz0xIgogZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNt
YWtlIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCmluZGV4IDkyMzgyYmQuLmIw
NjdiOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQorKysg
Yi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKQEAgLTM1LDcgKzM1LDYgQEAgbWFj
cm8oV0VCS0lUX09QVElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVf
Q1NTX0lNQUdFX1JFU09MVVRJT04gIlRvZ2dsZSBDU1MgaW1hZ2UtcmVzb2x1dGlvbiBzdXBwb3J0
IiBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0NTU19JTUFHRV9TRVQgIlRv
Z2dsZSBDU1MgaW1hZ2Utc2V0IHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklO
RShFTkFCTEVfQ1NTX1JFR0lPTlMgIlRvZ2dsZSBDU1MgcmVnaW9ucyBzdXBwb3J0IiBPRkYpCi0g
ICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0NTU19TSEFERVJTICJUb2dnbGUgQ1NTIFNo
YWRlcnMgKHdpdGhpbiBDU1MgRmlsdGVycykgc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJ
T05fREVGSU5FKEVOQUJMRV9DU1NfU0hBUEVTICJUb2dnbGUgQ1NTIFNoYXBlcyBzdXBwb3J0IiBP
RkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04g
IlRvZ2dsZSBDU1Mgc3RpY2t5IHBvc2l0aW9uIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BU
SU9OX0RFRklORShFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEICJU
b2dnbGUgc3VwcG9ydCBmb3IgdW5wcmVmaXhlZCBDU1MgYW5pbWF0aW9ucyBhbmQgdHJhbnNmb3Jt
cyIgT04pCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZSBiL1NvdXJjZS9j
bWFrZWNvbmZpZy5oLmNtYWtlCmluZGV4IDA2MTI5OWEuLjY0ZTI0NmIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtl
CkBAIC0yNCw3ICsyNCw2IEBACiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfQ1NTX0lNQUdFX1JFU09M
VVRJT04KICNjbWFrZWRlZmluZTAxIEVOQUJMRV9DU1NfSU1BR0VfU0VUCiAjY21ha2VkZWZpbmUw
MSBFTkFCTEVfQ1NTX1JFR0lPTlMKLSNjbWFrZWRlZmluZTAxIEVOQUJMRV9DU1NfU0hBREVSUwog
I2NtYWtlZGVmaW5lMDEgRU5BQkxFX0NTU19TSEFQRVMKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9D
U1NfU1RJQ0tZX1BPU0lUSU9OCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfQ1NTX1RSQU5TRk9STVNf
QU5JTUFUSU9OU19VTlBSRUZJWEVECmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9n
dGsvRHVtcFJlbmRlclRyZWUuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL0R1bXBSZW5k
ZXJUcmVlLmNwcAppbmRleCA0MGMzNWM0Li40MjhhODBjIDEwMDY0NAotLS0gYS9Ub29scy9EdW1w
UmVuZGVyVHJlZS9ndGsvRHVtcFJlbmRlclRyZWUuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL2d0ay9EdW1wUmVuZGVyVHJlZS5jcHAKQEAgLTU0Myw3ICs1NDMsNiBAQCBzdGF0aWMgdm9p
ZCByZXNldERlZmF1bHRzVG9Db25zaXN0ZW50VmFsdWVzKCkKIAogICAgIER1bXBSZW5kZXJUcmVl
U3VwcG9ydEd0azo6c2V0Q1NTR3JpZExheW91dEVuYWJsZWQod2ViVmlldywgZmFsc2UpOwogICAg
IER1bXBSZW5kZXJUcmVlU3VwcG9ydEd0azo6c2V0Q1NTUmVnaW9uc0VuYWJsZWQod2ViVmlldywg
dHJ1ZSk7Ci0gICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRDU1NDdXN0b21GaWx0ZXJF
bmFibGVkKHdlYlZpZXcsIGZhbHNlKTsKICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGs6OnNl
dEV4cGVyaW1lbnRhbENvbnRlbnRTZWN1cml0eVBvbGljeUZlYXR1cmVzRW5hYmxlZCh0cnVlKTsK
ICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGs6OnNldFNlYW1sZXNzSUZyYW1lc0VuYWJsZWQo
dHJ1ZSk7CiAgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRTaGFkb3dET01FbmFibGVk
KHRydWUpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL1Rlc3RSdW5uZXJH
dGsuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL1Rlc3RSdW5uZXJHdGsuY3BwCmluZGV4
IGVhNTdkMjMuLjFhZmI4YzAgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9U
ZXN0UnVubmVyR3RrLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9ndGsvVGVzdFJ1bm5l
ckd0ay5jcHAKQEAgLTcwMyw5ICs3MDMsNiBAQCB2b2lkIFRlc3RSdW5uZXI6Om92ZXJyaWRlUHJl
ZmVyZW5jZShKU1N0cmluZ1JlZiBrZXksIEpTU3RyaW5nUmVmIHZhbHVlKQogICAgIH0gZWxzZSBp
ZiAoZ19zdHJfZXF1YWwob3JpZ2luYWxOYW1lLmdldCgpLCAiV2ViS2l0Q1NTUmVnaW9uc0VuYWJs
ZWQiKSkgewogICAgICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGs6OnNldENTU1JlZ2lvbnNF
bmFibGVkKHdlYmtpdF93ZWJfZnJhbWVfZ2V0X3dlYl92aWV3KG1haW5GcmFtZSksIGJvb2xlYW5G
cm9tVmFsdWUodmFsdWVBc1N0cmluZy5nZXQoKSkpOwogICAgICAgICByZXR1cm47Ci0gICAgfSBl
bHNlIGlmIChnX3N0cl9lcXVhbChvcmlnaW5hbE5hbWUuZ2V0KCksICJXZWJLaXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkIikpIHsKLSAgICAgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRD
U1NDdXN0b21GaWx0ZXJFbmFibGVkKHdlYmtpdF93ZWJfZnJhbWVfZ2V0X3dlYl92aWV3KG1haW5G
cmFtZSksIGJvb2xlYW5Gcm9tVmFsdWUodmFsdWVBc1N0cmluZy5nZXQoKSkpOwotICAgICAgICBy
ZXR1cm47CiAgICAgfSBlbHNlIHsKICAgICAgICAgZnByaW50ZihzdGRlcnIsICJUZXN0UnVubmVy
OjpvdmVycmlkZVByZWZlcmVuY2UgdHJpZWQgdG8gb3ZlcnJpZGUgIgogICAgICAgICAgICAgICAg
ICJ1bmtub3duIHByZWZlcmVuY2UgJyVzJy5cbiIsIG9yaWdpbmFsTmFtZS5nZXQoKSk7Cg==
</data>
<flag name="review"
          id="245903"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
    <flag name="commit-queue"
          id="245900"
          type_id="3"
          status="-"
          setter="mvujovic"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222006</attachid>
            <date>2014-01-23 11:14:31 -0800</date>
            <delta_ts>2014-01-23 14:26:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>127382-5.patch</filename>
            <type>text/plain</type>
            <size>1376163</size>
            <attacher name="Max Vujovic">mvujovic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAxZTBhZWFjLi4xOWRkN2Rl
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTQtMDEtMjMgIE1heCBWdWpvdmljICA8bXZ1am92aWNAYWRvYmUuY29tPgorCisgICAgICAg
IFJlbW92ZSBDU1MgQ3VzdG9tIEZpbHRlcnMgY29kZSBhbmQgdGVzdHMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzM4MgorCisgICAgICAgIFJldmll
d2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICAqIFNvdXJjZS9hdXRvdG9vbHMvRmluZERl
cGVuZGVuY2llcy5tNDoKKyAgICAgICAgKiBTb3VyY2UvYXV0b3Rvb2xzL1NldHVwV2ViS2l0RmVh
dHVyZXMubTQ6CisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlOgor
ICAgICAgICAqIFNvdXJjZS9jbWFrZWNvbmZpZy5oLmNtYWtlOgorCiAyMDE0LTAxLTIyICBNYXJ0
aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtDTWFr
ZV0gQWRkIHN1cHBvcnQgZm9yIGJ1aWxkaW5nIHRoZSBOZXR3b3JrUHJvY2VzcwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGIy
OTJhMzAuLmZiNDU3NjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMzYgQEAKKzIwMTQtMDEtMjMgIE1heCBW
dWpvdmljICA8bXZ1am92aWNAYWRvYmUuY29tPgorCisgICAgICAgIFJlbW92ZSBDU1MgQ3VzdG9t
IEZpbHRlcnMgY29kZSBhbmQgdGVzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyNzM4MgorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNl
ci4KKworICAgICAgICAqIGFuaW1hdGlvbnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10ZXN0LWhlbHBl
cnMuanM6CisgICAgICAgIChwYXJzZUZpbHRlckZ1bmN0aW9uTGlzdCk6CisgICAgICAgIChjb21w
YXJlRmlsdGVyRnVuY3Rpb25zKToKKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgt
YXQtcnVsZS1zeW50YXgvcGFyc2luZy1hdC1ydWxlLWludmFsaWQtZXhwZWN0ZWQudHh0OiBSZW1v
dmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtdmFsaWQtZXhw
ZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtdmFsaWQuaHRtbDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1jdXN0
b20tZnVuY3Rpb24taW52YWxpZC1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3Nz
My9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1bmN0
aW9uLWludmFsaWQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9t
LXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQtZXhwZWN0
ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1y
dWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12YWxpZC5odG1sOiBSZW1vdmVkLgor
ICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5n
LWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAg
ICAqIGNzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21l
dHJ5LXByb3BlcnR5LWludmFsaWQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12
YWxpZC1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3Rv
bS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktdmFsaWQuaHRt
bDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1z
eW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktaW52YWxpZC1leHBlY3RlZC50eHQ6IFJlbW92ZWQu
CisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNp
bmctbWl4LXByb3BlcnR5LWludmFsaWQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktdmFs
aWQtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxpZC5odG1sOiBSZW1v
dmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9w
YXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC1leHBlY3RlZC50eHQ6IFJlbW92ZWQu
CisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNp
bmctcGFyYW1ldGVycy1wcm9wZXJ0eS1pbnZhbGlkLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICog
Y3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctcGFyYW1ldGVy
cy1wcm9wZXJ0eS12YWxpZC1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctcGFyYW1ldGVycy1wcm9w
ZXJ0eS12YWxpZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLWV4cGVjdGVk
LnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVs
ZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktaW52YWxpZC5odG1sOiBSZW1vdmVkLgorICAg
ICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNy
Yy1wcm9wZXJ0eS12YWxpZC1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctc3JjLXByb3BlcnR5LXZh
bGlkLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0
LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5qczogUmVt
b3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgv
c2NyaXB0LXRlc3RzL3BhcnNpbmctYXQtcnVsZS12YWxpZC5qczogUmVtb3ZlZC4KKyAgICAgICAg
KiBjc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3Bh
cnNpbmctY3VzdG9tLWZ1bmN0aW9uLWludmFsaWQuanM6IFJlbW92ZWQuCisgICAgICAgICogY3Nz
My9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5n
LWN1c3RvbS1mdW5jdGlvbi12YWxpZC5qczogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctZ2VvbWV0
cnktcHJvcGVydHktaW52YWxpZC5qczogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMv
Y3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctZ2VvbWV0cnkt
cHJvcGVydHktdmFsaWQuanM6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3Rv
bS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLW1peC1wcm9wZXJ0eS1p
bnZhbGlkLmpzOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJvcGVydHktdmFsaWQuanM6
IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktaW52YWxpZC5qczog
UmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctcGFyYW1ldGVycy1wcm9wZXJ0eS12YWxpZC5qczogUmVt
b3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgv
c2NyaXB0LXRlc3RzL3BhcnNpbmctc3JjLXByb3BlcnR5LWludmFsaWQuanM6IFJlbW92ZWQuCisg
ICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10
ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxpZC5qczogUmVtb3ZlZC4KKyAgICAgICAgKiBj
c3MzL2ZpbHRlcnMvY3VzdG9tL2NvbXBvc2l0ZWQvY3VzdG9tLWZpbHRlci1ibGVuZC1tb2Rlcy1l
eHBlY3RlZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY29t
cG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWw6IFJlbW92ZWQuCisgICAgICAg
ICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWEtdGV4LWNvb3JkLW9wdGlvbmFs
LWV4cGVjdGVkLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWEtdGV4LWNvb3JkLW9wdGlvbmFsLmh0bWw6IFJlbW92ZWQuCisgICAgICAg
ICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFuaW1hdGlvbi1leHBlY3RlZC50
eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWFuaW1hdGlvbi5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1hcnJheS1ibGVuZGluZy1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAg
ICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LWJsZW5kaW5nLmh0
bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWFycmF5LWV4cGVjdGVkLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgtZXhwZWN0ZWQu
aHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItYXJyYXktdW5pZm9ybS1pbmRpcmVjdC1pbmRleC5odG1sOiBSZW1vdmVkLgorICAgICAgICAq
IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS5odG1sOiBSZW1vdmVkLgor
ICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1mcmFjdGlv
bmFsLWRlc3RpbmF0aW9uLWFscGhhLWV4cGVjdGVkLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICog
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVzdGlu
YXRpb24tYWxwaGEuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMtZXhwZWN0ZWQuaHRtbDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMuaHRtbDog
UmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2hh
bmdlLWJsZW5kLW1vZGUtZXhwZWN0ZWQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2Zp
bHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2hhbmdlLWJsZW5kLW1vZGUuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LWNvbG9yLW1hdHJpeC1leHBlY3RlZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZl
LWV4cGVjdGVkLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LWNvbG9yLW1hdHJpeC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLWV4cGVjdGVkLmh0bWw6IFJlbW92
ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNz
cy1taXgtY29sb3ItbmVnYXRpdmUtZXhwZWN0ZWQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBj
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLW1peC1jb2xvci1uZWdh
dGl2ZS5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLWV4cGVjdGVkLmh0bWw6IFJlbW92
ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLW1h
dHJpeC1leHBlY3RlZC5wbmc6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLWNvbG9yLW1hdHJpeC1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAg
ICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLW1hdHJpeC5odG1s
OiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1j
b2xvci5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1jb21wb3NpdGUtZnJhY3Rpb25hbC1zb3VyY2UtYWxwaGEtZXhwZWN0ZWQuaHRtbDog
UmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29t
cG9zaXRlLWZyYWN0aW9uYWwtc291cmNlLWFscGhhLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICog
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1vcGVyYXRvcnMtZXhw
ZWN0ZWQucG5nOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1jb21wb3NpdGUtb3BlcmF0b3JzLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLW9wZXJhdG9y
cy5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jb21wb3NpdGUtc291cmNlLWF0b3AtZXhwZWN0ZWQucG5nOiBSZW1vdmVkLgorICAgICAg
ICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtc291cmNlLWF0
b3AtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jb21wb3NpdGUtc291cmNlLWF0b3AuaHRtbDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5saW5lLWNvbXB1
dGVkLXN0eWxlLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5saW5lLWNvbXB1dGVkLXN0eWxlLmh0bWw6IFJl
bW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1r
ZXl3b3JkLWFzLXBhcmFtZXRlci1uYW1lLWV4cGVjdGVkLnBuZzogUmVtb3ZlZC4KKyAgICAgICAg
KiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1l
dGVyLW5hbWUtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRh
Y2hlZC1tZXNoLXdpdGgtbWVzaC1ib3gtdHlwZS1leHBlY3RlZC5odG1sOiBSZW1vdmVkLgorICAg
ICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hlZC1tZXNoLXdp
dGgtbWVzaC1ib3gtdHlwZS5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1tYXROLWV4cGVjdGVkLmh0bWw6IFJlbW92ZWQuCisgICAgICAg
ICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW1hdE4uaHRtbDogUmVtb3ZlZC4K
KyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWVzaC1jb2x1bW4t
cm93LW9yZGVyLWV4cGVjdGVkLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLW1lc2gtY29sdW1uLXJvdy1vcmRlci5odG1sOiBSZW1vdmVk
LgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1taXgtYmluZGlu
Z3MtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1taXgtYmluZGluZ3MuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm8tZWxlbWVudC10ZXh0dXJlLWFjY2Vzcy1l
eHBlY3RlZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUtYWNjZXNzLmh0bWw6IFJlbW92ZWQuCisgICAg
ICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVu
ZC1tb2RlLWNvbG9yLWV4cGVjdGVkLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLWNvbG9yLmh0
bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLWh1ZS1leHBlY3RlZC5odG1sOiBSZW1vdmVkLgorICAg
ICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxl
bmQtbW9kZS1odWUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtbHVtaW5vc2l0eS1leHBlY3Rl
ZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1pbm9zaXR5Lmh0bWw6IFJlbW92ZWQuCisg
ICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1i
bGVuZC1tb2RlLXNhdHVyYXRpb24tZXhwZWN0ZWQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBj
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUt
c2F0dXJhdGlvbi5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQ6IFJlbW92
ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5
LWNvbXB1dGVkLXN0eWxlLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmctZXhwZWN0ZWQudHh0OiBSZW1vdmVk
LgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1w
YXJzaW5nLWludmFsaWQtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuaHRtbDog
UmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJv
cGVydHktcGFyc2luZy5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1yZWxvYWQtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAq
IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1yZWxvYWQuaHRtbDogUmVtb3ZlZC4K
KyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLWNhY2hl
LWV4cGVjdGVkLnBuZzogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItc2hhZGVyLWNhY2hlLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAg
KiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLWNhY2hlLmh0bWw6IFJl
bW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXNoYWRl
ci1yZXVzZS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLXNoYWRlci1yZXVzZS5odG1sOiBSZW1vdmVkLgorICAgICAgICAq
IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci10cmFuc2Zvcm1zLWFuaW1hdGlvbi1l
eHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICog
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtbWVzaC1ib3gtZXhwZWN0ZWQuaHRt
bDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
dS1tZXNoLWJveC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci11LW1lc2gtc2l6ZS1leHBlY3RlZC5odG1sOiBSZW1vdmVkLgorICAgICAg
ICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtc2l6ZS5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LXRl
eHR1cmUtc2l6ZS1leHBlY3RlZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci11LXRleHR1cmUtc2l6ZS5odG1sOiBSZW1vdmVkLgorICAg
ICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LXRpbGUtc2l6ZS1leHBl
Y3RlZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci11LXRpbGUtc2l6ZS5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci11bmF2YWlsYWJsZS12YXJ5aW5nLWV4cGVjdGVkLmh0bWw6
IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXVu
YXZhaWxhYmxlLXZhcnlpbmcuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMv
Y3VzdG9tL2VmZmVjdC1jb2xvci1jaGVjay1leHBlY3RlZC5wbmc6IFJlbW92ZWQuCisgICAgICAg
ICogY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY29sb3ItY2hlY2stZXhwZWN0ZWQudHh0OiBS
ZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWNvbG9yLWNoZWNr
Lmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3Vz
dG9tLWNvbWJpbmVkLW1pc3NpbmctZXhwZWN0ZWQucG5nOiBSZW1vdmVkLgorICAgICAgICAqIGNz
czMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1jb21iaW5lZC1taXNzaW5nLWV4cGVjdGVk
LnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0
b20tY29tYmluZWQtbWlzc2luZy5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVy
cy9jdXN0b20vZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisg
ICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRpc2FibGVkLmh0bWw6
IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWV4
cGVjdGVkLnBuZzogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVj
dC1jdXN0b20tZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9j
dXN0b20vZWZmZWN0LWN1c3RvbS1wYXJhbWV0ZXJzLWV4cGVjdGVkLnBuZzogUmVtb3ZlZC4KKyAg
ICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tcGFyYW1ldGVycy1leHBl
Y3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3Qt
Y3VzdG9tLXBhcmFtZXRlcnMuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMv
Y3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMtZXhwZWN0ZWQuaHRtbDog
UmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tdHJh
bnNmb3JtLXBhcmFtZXRlcnMuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMv
Y3VzdG9tL2VmZmVjdC1jdXN0b20uaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1mYWxsYmFjay10by1zb2Z0d2FyZS1leHBlY3RlZC5odG1sOiBSZW1v
dmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNv
ZnR3YXJlLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0
ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBlY3RlZC5wbmc6IFJlbW92ZWQuCisgICAgICAg
ICogY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBl
Y3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXIt
cmVwYWludC1jdXN0b20tY2xpcHBlZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmls
dGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9tLWV4cGVjdGVkLnBuZzogUmVtb3ZlZC4K
KyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1leHBl
Y3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXIt
cmVwYWludC1jdXN0b20tcm90YXRlZC1leHBlY3RlZC5wbmc6IFJlbW92ZWQuCisgICAgICAgICog
Y3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tcm90YXRlZC1leHBlY3Rl
ZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVw
YWludC1jdXN0b20tcm90YXRlZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVy
cy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9tLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICog
Y3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5cGVz
LWV4cGVjdGVkLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9p
bnZhbGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5cGVzLmh0bWw6IFJlbW92ZWQuCisgICAg
ICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4
cGVjdGVkLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZh
bGlkLWN1c3RvbS1maWx0ZXItc2hhZGVyLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9m
aWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItdW5pZm9ybS10eXBlcy1leHBlY3Rl
ZC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1j
dXN0b20tZmlsdGVyLXVuaWZvcm0tdHlwZXMuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3Mz
L2ZpbHRlcnMvY3VzdG9tL21pc3NpbmctY3VzdG9tLWZpbHRlci1zaGFkZXItZXhwZWN0ZWQucG5n
OiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9jdXN0b20vbWlzc2luZy1jdXN0b20t
ZmlsdGVyLXNoYWRlci1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0
ZXJzL2N1c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLmh0bWw6IFJlbW92ZWQuCisg
ICAgICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9hLXRleC1jb29yZC1kZWZpbmVkLnZzOiBS
ZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10ZXgtY29vcmQtdW5k
ZWZpbmVkLnZzOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10
cmlhbmdsZS1jb29yZC1kZWZpbmVkLnZzOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVy
cy9yZXNvdXJjZXMvYXJyYXktdW5pZm9ybS1pbmRpcmVjdC1pbmRleC52czogUmVtb3ZlZC4KKyAg
ICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NoZWNrZXJib2FyZC52czogUmVtb3ZlZC4K
KyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLWZpbGwuZnM6IFJlbW92ZWQu
CisgICAgICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jb2xvci1vZmZzZXQuZnM6IFJlbW92
ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jb21wb3NpdGUuZnM6IFJlbW92
ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jc3Mta2V5d29yZC1hcy1wYXJh
bWV0ZXItbmFtZS5mczogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC1uZWdhdGl2ZS5mczogUmVtb3Zl
ZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItY2xhbXAt
Y3NzLWNvbG9yLW1hdHJpeC5mczogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL2N1c3RvbS1maWx0ZXItcGFyc2VyLmpzOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMv
ZmlsdGVycy9yZXNvdXJjZXMvZnJhZ21lbnQtY29sb3IuZnM6IFJlbW92ZWQuCisgICAgICAgICog
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvcnMuZnM6IFJlbW92ZWQuCisgICAg
ICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9mcmFnbWVudC1tYXROLmZzOiBSZW1vdmVkLgor
ICAgICAgICAqIGNzczMvZmlsdGVycy9yZXNvdXJjZXMvZ3JheXNjYWxlLWNvbG9yLW1hdHJpeC5m
czogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtYS10
cmlhbmdsZS1jb29yZC13aXRoLWF0dGFjaGVkLW1lc2gudnM6IFJlbW92ZWQuCisgICAgICAgICog
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLWN1c3RvbS1hdHRyaWJ1dGUudnM6IFJlbW92
ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXNoYWRlci52czog
UmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1h
LW1lc2gtY29vcmQudnM6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9pbnZhbGlkLXR5cGUtYS1wb3NpdGlvbi52czogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRleC1jb29yZC52czogUmVtb3ZlZC4KKyAg
ICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRyaWFuZ2xlLWNv
b3JkLnZzOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxp
ZC10eXBlLWF0dHJpYnV0ZS1hcnJheS52czogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LW1lc2gtYm94LmZzOiBSZW1vdmVkLgorICAgICAg
ICAqIGNzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1zaXplLmZzOiBS
ZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUt
cHJvamVjdGlvbi1tYXRyaXguZnM6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9pbnZhbGlkLXR5cGUtdS10ZXh0dXJlLXNpemUuZnM6IFJlbW92ZWQuCisgICAgICAg
ICogY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdS10aWxlLXNpemUuZnM6IFJl
bW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtdW5p
Zm9ybS1hcnJheS5mczogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L21peC1jb2xvci5mczogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L3Bhc3MtdGV4LWNvb3JkLnZzOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9yZXNv
dXJjZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXguZnM6IFJlbW92ZWQuCisgICAg
ICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJl
LmZzOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXUt
dGV4dHVyZS1taXguZnM6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNl
cy9zYW1wbGUtdS10ZXh0dXJlLmZzOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVycy9y
ZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peC5mczogUmVtb3ZlZC4K
KyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUt
dGV4dHVyZS5mczogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3Ut
bWVzaC1ib3gtaXMtdW5pdC1zcXVhcmUuZnM6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy91LW1lc2gtc2l6ZS5mczogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL3UtdGV4dHVyZS1zaXplLmZzOiBSZW1vdmVkLgorICAgICAgICAqIGNz
czMvZmlsdGVycy9yZXNvdXJjZXMvdS10aWxlLXNpemUuZnM6IFJlbW92ZWQuCisgICAgICAgICog
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy91bmF2YWlsYWJsZS12YXJ5aW5nLmZzOiBSZW1vdmVkLgor
ICAgICAgICAqIGNzczMvZmlsdGVycy9yZXNvdXJjZXMvdmFyeWluZy1taXgtY29sb3IuZnM6IFJl
bW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtZXhwbG9kZS1k
ZXRhY2hlZC52czogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3Zl
cnRleC1ob3Jpem9udGFsLW9mZnNldC52czogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQtcGFyYW1ldGVycy52czogUmVtb3ZlZC4KKyAgICAg
ICAgKiBjc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQudnM6IFJlbW92ZWQuCisg
ICAgICAgICogY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzOiBSZW1vdmVk
LgorICAgICAgICAqIGNzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LXRyYW5zZm9ybS1wYXJh
bWV0ZXIudnM6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9j
dXN0b20tZmlsdGVyLW1peC1iaW5kaW5ncy5qczogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MzL2Zp
bHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanM6IFJlbW92
ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBy
b3BlcnR5LWNvbXB1dGVkLXN0eWxlLmpzOiBSZW1vdmVkLgorICAgICAgICAqIGNzczMvZmlsdGVy
cy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuanM6
IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmls
dGVyLXByb3BlcnR5LXBhcnNpbmcuanM6IFJlbW92ZWQuCisgICAgICAgICogY3NzMy9maWx0ZXJz
L3NjcmlwdC10ZXN0cy9lZmZlY3QtY3VzdG9tLWRpc2FibGVkLmpzOiBSZW1vdmVkLgorICAgICAg
ICAqIGpzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHBsYXRmb3JtL21hYy1tb3VudGFpbmxpb24vanMvZG9tL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjLXdr
Mi9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRp
b25zOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1h
dHRyaWJ1dGVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vVGVzdEV4cGVj
dGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zOgor
CiAyMDE0LTAxLTIzICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbV2luXSBNYXJrIHRlc3QgbWF0aG1sL3ByZXNlbnRhdGlvbi9tYWN0aW9uLXRvZ2dsZS5odG1s
IGFzIGZhaWxpbmcgaW4gVGVzdEV4cGVjdGF0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9h
bmltYXRpb25zL3Jlc291cmNlcy9hbmltYXRpb24tdGVzdC1oZWxwZXJzLmpzIGIvTGF5b3V0VGVz
dHMvYW5pbWF0aW9ucy9yZXNvdXJjZXMvYW5pbWF0aW9uLXRlc3QtaGVscGVycy5qcwppbmRleCA4
MWZhZjgwLi5hNzIzYjRhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9hbmltYXRpb25zL3Jlc291
cmNlcy9hbmltYXRpb24tdGVzdC1oZWxwZXJzLmpzCisrKyBiL0xheW91dFRlc3RzL2FuaW1hdGlv
bnMvcmVzb3VyY2VzL2FuaW1hdGlvbi10ZXN0LWhlbHBlcnMuanMKQEAgLTE0NywxOCArMTQ3LDEz
IEBAIGZ1bmN0aW9uIHBhcnNlRmlsdGVySW1hZ2UocykKIAogZnVuY3Rpb24gcGFyc2VGaWx0ZXJG
dW5jdGlvbkxpc3QocykKIHsKLSAgICB2YXIgcmVnID0gL1wpKlxzKihibHVyfGJyaWdodG5lc3N8
Y29udHJhc3R8Y3VzdG9tfGRyb3BcLXNoYWRvd3xncmF5c2NhbGV8aHVlXC1yb3RhdGV8aW52ZXJ0
fG9wYWNpdHl8c2F0dXJhdGV8c2VwaWF8dXJsKVwoLworICAgIHZhciByZWcgPSAvXCkqXHMqKGJs
dXJ8YnJpZ2h0bmVzc3xjb250cmFzdHxkcm9wXC1zaGFkb3d8Z3JheXNjYWxlfGh1ZVwtcm90YXRl
fGludmVydHxvcGFjaXR5fHNhdHVyYXRlfHNlcGlhfHVybClcKC8KICAgICB2YXIgbWF0Y2hlcyA9
IHMuc3BsaXQocmVnKTsKIAogICAgIC8vIEZpcnN0IGl0ZW0gbXVzdCBiZSBlbXB0eS4gQWxsIG90
aGVyIGl0ZW1zIGFyZSBvZiBmdW5jdGlvbk5hbWUsIGZ1bmN0aW9uVmFsdWUuCiAgICAgaWYgKCFt
YXRjaGVzIHx8IG1hdGNoZXMuc2hpZnQoKSAhPSAiIikKICAgICAgICAgcmV0dXJuIG51bGw7CiAK
LSAgICAvLyBSZWdFeCBhYm92ZSBjYW4gbm90IGhhbmRsZSBkZXByZWNhdGVkIGN1c3RvbSgpIGZ1
bmN0aW9uCi0gICAgdmFyIGN1c3RvbVBvcyA9IG1hdGNoZXMuaW5kZXhPZigiY3VzdG9tIik7Ci0g
ICAgaWYgKGN1c3RvbVBvcyA+PSAwICYmIG1hdGNoZXNbY3VzdG9tUG9zKzFdID09PSAiIikKLSAg
ICAgICAgcmV0dXJuIHBhcnNlRGVwcmVjYXRlZEN1c3RvbUZpbHRlckZ1bmN0aW9uKHMpOwotCiAg
ICAgLy8gT2RkIGl0ZW1zIGFyZSB0aGUgZnVuY3Rpb24gbmFtZSwgZXZlbiBpdGVtcyB0aGUgZnVu
Y3Rpb24gdmFsdWUuCiAgICAgaWYgKCFtYXRjaGVzLmxlbmd0aCB8fCBtYXRjaGVzLmxlbmd0aCAl
IDIpCiAgICAgICAgIHJldHVybiBudWxsOwpAQCAtMTcyLDM4ICsxNjcsMTIgQEAgZnVuY3Rpb24g
cGFyc2VGaWx0ZXJGdW5jdGlvbkxpc3QocykKICAgICAgICAgICAgIC8vIEZJWE1FOiBTdXBwb3J0
IHBhcnNpbmcgb2YgZHJvcC1zaGFkb3cuCiAgICAgICAgICAgICBmdW5jdGlvbkxpc3QucHVzaChm
dW5jdGlvblZhbHVlKTsKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9IGVsc2UgaWYg
KGZ1bmN0aW9uTmFtZSA9PSAiY3VzdG9tIikgewotICAgICAgICAgICAgdmFyIGZpbHRlclBhcmFt
czsKLSAgICAgICAgICAgIGlmICghd2luZG93LmdldEN1c3RvbUZpbHRlclBhcmFtZXRlcnMpCi0g
ICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJnZXRDdXN0b21GaWx0ZXJQYXJhbWV0ZXJz
IG5vdCBmb3VuZC4gRGlkIHlvdSBpbmNsdWRlIGN1c3RvbS1maWx0ZXItcGFyc2VyLmpzPyIpOwot
ICAgICAgICAgICAgdmFyIGZpbHRlclBhcmFtcyA9IGdldEN1c3RvbUZpbHRlclBhcmFtZXRlcnMo
ZnVuY3Rpb25WYWx1ZSk7Ci0gICAgICAgICAgICBpZiAoIWZpbHRlclBhcmFtcykgewotICAgICAg
ICAgICAgICAgIGNvbnNvbGUuZXJyb3IoIkVycm9yIG9uIHBhcnNpbmcgY3VzdG9tIGZpbHRlciBw
YXJhbWV0ZXJzICIsIGZ1bmN0aW9uVmFsdWUpOwotICAgICAgICAgICAgICAgIHJldHVybiBudWxs
OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZnVuY3Rpb25MaXN0LnB1c2goZmlsdGVyUGFy
YW1zKTsKLSAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAgICAgICAgIGZ1bmN0aW9u
TGlzdC5wdXNoKHBhcnNlRmxvYXQoZnVuY3Rpb25WYWx1ZSkpOwogICAgIH0KICAgICByZXR1cm4g
ZnVuY3Rpb25MaXN0OwogfQogCi0vLyBGSVhNRTogUmVtb3ZlIGZ1bmN0aW9uIGFuZCBjYWxsZXIg
d2hlbiB3ZSByZW1vdmVkIHRoZSBkZXByZWNhdGVkIHN5bnRheCBvZgotLy8gdGhlIGN1c3RvbSBm
aWx0ZXIgZnVuY3Rpb24uCi1mdW5jdGlvbiBwYXJzZURlcHJlY2F0ZWRDdXN0b21GaWx0ZXJGdW5j
dGlvbihzKQotewotICAgIHZhciBmaWx0ZXJSZXN1bHQgPSBzLm1hdGNoKC8oXHcrKVwoKC4rKVwp
Lyk7Ci0gICAgdmFyIGZpbHRlclBhcmFtcyA9IGZpbHRlclJlc3VsdFsyXTsKLQotICAgIGlmIChm
aWx0ZXJSZXN1bHRbMV0gIT0gImN1c3RvbSIpCi0gICAgICAgIHJldHVybiBudWxsOwotCi0gICAg
aWYgKCF3aW5kb3cuZ2V0Q3VzdG9tRmlsdGVyUGFyYW1ldGVycykKLSAgICAgICAgdGhyb3cgbmV3
IEVycm9yKCJnZXRDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzIG5vdCBmb3VuZC4gRGlkIHlvdSBpbmNs
dWRlIGN1c3RvbS1maWx0ZXItcGFyc2VyLmpzPyIpOwotICAgIHJldHVybiBbImN1c3RvbSIsIGdl
dEN1c3RvbUZpbHRlclBhcmFtZXRlcnMoZmlsdGVyUGFyYW1zKV07Ci19Ci0KIGZ1bmN0aW9uIHBh
cnNlQmFzaWNTaGFwZShzKQogewogICAgIHZhciBzaGFwZUZ1bmN0aW9uID0gcy5tYXRjaCgvKFx3
KylcKCguKylcKS8pOwpAQCAtMjk3LDEzICsyNjYsNiBAQCBmdW5jdGlvbiBjb21wYXJlRmlsdGVy
RnVuY3Rpb25zKGNvbXB1dGVkVmFsdWUsIGV4cGVjdGVkVmFsdWUsIHRvbGVyYW5jZSkKICAgICAg
ICAgICAgIGNvbnNvbGUuZXJyb3IoIkZpbHRlciBmdW5jdGlvbnMgZG8gbm90IG1hdGNoLiIpOwog
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9Ci0gICAgICAgIGlmIChhY3R1YWxb
aV0gPT0gImN1c3RvbSIpIHsKLSAgICAgICAgICAgIGlmICghY3VzdG9tRmlsdGVyUGFyYW1ldGVy
TWF0Y2goYWN0dWFsW2krMV0sIGV4cGVjdGVkW2krMV0sIHRvbGVyYW5jZSkpIHsKLSAgICAgICAg
ICAgICAgICBjb25zb2xlLmVycm9yKCJDdXN0b20gZmlsdGVyIHBhcmFtZXRlcnMgZG8gbm90IG1h
dGNoLiIpOwotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9CiAgICAgICAgIGlmICghaXNDbG9zZUVub3Vn
aChhY3R1YWxbaSsxXSwgZXhwZWN0ZWRbaSsxXSwgdG9sZXJhbmNlKSkgewogICAgICAgICAgICAg
Y29uc29sZS5lcnJvcigiRmlsdGVyIGZ1bmN0aW9uIHZhbHVlcyBkbyBub3QgbWF0Y2guIik7CiAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0zMzAsNDkgKzI5Miw2IEBAIGZ1bmN0aW9uIGJh
c2ljU2hhcGVQYXJhbWV0ZXJzTWF0Y2gocGFyYW1MaXN0MSwgcGFyYW1MaXN0MiwgdG9sZXJhbmNl
KQogICAgIHJldHVybiB0cnVlOwogfQogCi1mdW5jdGlvbiBjdXN0b21GaWx0ZXJQYXJhbWV0ZXJN
YXRjaChwYXJhbTEsIHBhcmFtMiwgdG9sZXJhbmNlKQotewotICAgIGlmIChwYXJhbTEudHlwZSAh
PSAicGFyYW1ldGVyIikgewotICAgICAgICAvLyBDaGVja2luZyBmb3Igc2hhZGVyIHVyaXMgYW5k
IG90aGVyIGtleXdvcmRzLiBUaGV5IG5lZWQgdG8gYmUgZXhhY3RseSB0aGUgc2FtZS4KLSAgICAg
ICAgcmV0dXJuIChwYXJhbTEudHlwZSA9PSBwYXJhbTIudHlwZSAmJiBwYXJhbTEudmFsdWUgPT0g
cGFyYW0yLnZhbHVlKTsKLSAgICB9Ci0KLSAgICBpZiAocGFyYW0xLm5hbWUgIT0gcGFyYW0yLm5h
bWUgfHwgcGFyYW0xLnZhbHVlLmxlbmd0aCAhPSBwYXJhbTIudmFsdWUubGVuZ3RoKQotICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0KLSAgICBmb3IgKHZhciBqID0gMDsgaiA8IHBhcmFtMS52YWx1ZS5s
ZW5ndGg7ICsraikgewotICAgICAgICB2YXIgdmFsMSA9IHBhcmFtMS52YWx1ZVtqXSwKLSAgICAg
ICAgICAgIHZhbDIgPSBwYXJhbTIudmFsdWVbal07Ci0gICAgICAgIGlmICh2YWwxLnR5cGUgIT0g
dmFsMi50eXBlKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBzd2l0Y2ggKHZh
bDEudHlwZSkgewotICAgICAgICBjYXNlICJmdW5jdGlvbiI6Ci0gICAgICAgICAgICBpZiAodmFs
MS5uYW1lICE9IHZhbDIubmFtZSkKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAg
ICAgICAgICBpZiAodmFsMS5hcmd1bWVudHMubGVuZ3RoICE9IHZhbDIuYXJndW1lbnRzLmxlbmd0
aCkgewotICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoIkFyZ3VtZW50cyBsZW5ndGggbWlz
bWF0Y2g6ICIsIHZhbDEuYXJndW1lbnRzLmxlbmd0aCwgIi8iLCB2YWwyLmFyZ3VtZW50cy5sZW5n
dGgpOwotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgIGZvciAodmFyIHQgPSAwOyB0IDwgdmFsMS5hcmd1bWVudHMubGVuZ3RoOyArK3QpIHsK
LSAgICAgICAgICAgICAgICBpZiAodmFsMS5hcmd1bWVudHNbdF0udHlwZSAhPSAibnVtYmVyIiB8
fCB2YWwyLmFyZ3VtZW50c1t0XS50eXBlICE9ICJudW1iZXIiKQotICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgaWYgKCFpc0Nsb3NlRW5vdWdoKHZhbDEu
YXJndW1lbnRzW3RdLnZhbHVlLCB2YWwyLmFyZ3VtZW50c1t0XS52YWx1ZSwgdG9sZXJhbmNlKSkK
LSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgfQotICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgIm51bWJlciI6Ci0gICAgICAgICAgICBpZiAoIWlz
Q2xvc2VFbm91Z2godmFsMS52YWx1ZSwgdmFsMi52YWx1ZSwgdG9sZXJhbmNlKSkKLSAgICAgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgZGVmYXVs
dDoKLSAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoIlVuc3VwcG9ydGVkIHBhcmFtZXRlciB0eXBl
ICIsIHZhbDEudHlwZSk7Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KLSAg
ICB9Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQogZnVuY3Rpb24gY2hlY2tFeHBlY3RlZFZhbHVl
KGV4cGVjdGVkLCBpbmRleCkKIHsKICAgICB2YXIgYW5pbWF0aW9uTmFtZSA9IGV4cGVjdGVkW2lu
ZGV4XVswXTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2lu
Zy1hdC1ydWxlLWludmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBlNGMyOWY4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC1leHBlY3RlZC50
eHQKKysrIC9kZXYvbnVsbApAQCAtMSw1NiArMCwwIEBACi1UZXN0IGF0LXJ1bGUgcGFyc2luZyBm
b3IgQC13ZWJraXQtZmlsdGVyLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1GaWx0ZXIgYXQtcnVsZSBz
eW1ib2wgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0K
LVVucHJlZml4ZWQgcnVsZS4KLUBmaWx0ZXIgbXktZmlsdGVyIHsgfQotUEFTUyBpbnNlcnRSdWxl
RXhjZXB0aW9uIGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uIGlzIHRydWUKLVBBU1MgaW5zZXJ0UnVs
ZUV4Y2VwdGlvbi5jb2RlIGlzIERPTUV4Y2VwdGlvbi5TWU5UQVhfRVJSCi0KLT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUZpbHRlciBuYW1lIHRlc3RzLgotPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1NaXNzaW5nIGZpbHRlciBuYW1l
IGlkZW50aWZpZXIuCi1ALXdlYmtpdC1maWx0ZXIgeyB9Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRp
b24gaW5zdGFuY2VvZiBET01FeGNlcHRpb24gaXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0
aW9uLmNvZGUgaXMgRE9NRXhjZXB0aW9uLlNZTlRBWF9FUlIKLQotRmlsdGVyIG5hbWUgYXMgc3Ry
aW5nLgotQC13ZWJraXQtZmlsdGVyICdteS1maWx0ZXInIHsgfQotUEFTUyBpbnNlcnRSdWxlRXhj
ZXB0aW9uIGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uIGlzIHRydWUKLVBBU1MgaW5zZXJ0UnVsZUV4
Y2VwdGlvbi5jb2RlIGlzIERPTUV4Y2VwdGlvbi5TWU5UQVhfRVJSCi0KLUZpbHRlciBuYW1lIGFz
IG51bWJlci4KLUAtd2Via2l0LWZpbHRlciAxMjMgeyB9Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRp
b24gaW5zdGFuY2VvZiBET01FeGNlcHRpb24gaXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0
aW9uLmNvZGUgaXMgRE9NRXhjZXB0aW9uLlNZTlRBWF9FUlIKLQotPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotRmlsdGVyIGF0LXJ1bGUgYm9keSB0ZXN0cy4KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTWlzc2luZyBydWxlIGJvZHku
Ci1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyCi1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24gaW5z
dGFuY2VvZiBET01FeGNlcHRpb24gaXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0aW9uLmNv
ZGUgaXMgRE9NRXhjZXB0aW9uLlNZTlRBWF9FUlIKLQotTWlzc2luZyBvcGVuaW5nIGJyYWNlLgot
QC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB9Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24gaW5z
dGFuY2VvZiBET01FeGNlcHRpb24gaXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0aW9uLmNv
ZGUgaXMgRE9NRXhjZXB0aW9uLlNZTlRBWF9FUlIKLQotTWlzc2luZyBjbG9zaW5nIGJyYWNlLgot
QC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7Ci1QQVNTIGluc2VydFJ1bGVFeGNlcHRpb24gaW5z
dGFuY2VvZiBET01FeGNlcHRpb24gaXMgdHJ1ZQotUEFTUyBpbnNlcnRSdWxlRXhjZXB0aW9uLmNv
ZGUgaXMgRE9NRXhjZXB0aW9uLlNZTlRBWF9FUlIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1hdC1ydWxlLWludmFsaWQu
aHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBhOGJmMTEyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0LXJ1bGUtaW52YWxpZC5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRG
Ly9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBp
ZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBz
cmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3Nj
cmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1hdC1ydWxlLWludmFsaWQu
anMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVs
ZS12YWxpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdp
dGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1hdC1ydWxlLXZhbGlkLWV4cGVjdGVkLnR4dApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDQ4ZGRkYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1hdC1y
dWxlLXZhbGlkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEyOCArMCwwIEBACi1U
ZXN0IGF0LXJ1bGUgcGFyc2luZyBmb3IgQC13ZWJraXQtZmlsdGVyLgotCi1PbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci1GaWx0ZXIgYXQtcnVsZSB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLQotRW1wdHkgcnVsZSwgc2VwYXJhdGVkIGJ5IHNpbmdsZSBzcGFjZXMuCi1A
LXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfQotUEFTUyBjc3NSdWxlLmNzc1RleHQgaXMgIkAt
d2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyB9IgotUEFTUyBjc3NSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0Zp
bHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NG
aWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0Zp
bHRlclJ1bGUucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LQotRW1wdHkgcnVsZSwgc2VwYXJhdGVkIGJ5IG11bHRpcGxlIHNwYWNlcy4KLSAgIEAtd2Via2l0
LWZpbHRlciAgIG15LWZpbHRlciAgIHsgICB9ICAgCi1QQVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAi
QC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0iCi1QQVNTIGNzc1J1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBjc3NSdWxlIGluc3RhbmNlb2YgV2ViS2l0Q1NT
RmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29uc3RydWN0b3IgPT09IFdlYktpdENT
U0ZpbHRlclJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLl9fcHJvdG9fXyA9PT0gV2ViS2l0Q1NT
RmlsdGVyUnVsZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MAotCi1FbXB0eSBydWxlLCBubyBleHRyYSB3aGl0ZXNwYWNlLgotQC13ZWJraXQtZmlsdGVyIG15
LWZpbHRlcnt9Ci1QQVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVyIG15LWZp
bHRlciB7IH0iCi1QQVNTIGNzc1J1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBjc3NSdWxlIGluc3RhbmNlb2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1Q
QVNTIGNzc1J1bGUuY29uc3RydWN0b3IgPT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMgdHJ1ZQot
UEFTUyBjc3NSdWxlLl9fcHJvdG9fXyA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90b3R5cGUg
aXMgdHJ1ZQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotCi1SdWxlIHdpdGggYXJiaXRy
YXJ5IHByb3BlcnRpZXMuCi1ALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgd2lkdGg6IDEwMHB4
OyBoZWlnaHQ6IDEwMHB4OyB9Ci1QQVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAiQC13ZWJraXQtZmls
dGVyIG15LWZpbHRlciB7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgfSIKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNzc1J1bGUgaW5z
dGFuY2VvZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jb25zdHJ1
Y3RvciA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90
b19fID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3dpZHRoJykgaXMgIjEwMHB4IgotUEFTUyBkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdoZWlnaHQnKSBpcyAiMTAwcHgiCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAyCi0KLUVtcHR5IHJ1bGUsIGNvbW1lbnQgc2VwYXJhdG9ycwotQC13ZWJr
aXQtZmlsdGVyLyoqL215LWZpbHRlci8qKi97IH0KLVBBU1MgY3NzUnVsZS5jc3NUZXh0IGlzICJA
LXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIGNzc1J1bGUgaW5zdGFuY2VvZiBXZWJLaXRDU1NG
aWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9PT0gV2ViS2l0Q1NT
RmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90b19fID09PSBXZWJLaXRDU1NG
aWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci0KLUVtcHR5IHJ1bGUsIGNvbW1lbnQrc3BhY2Ugc2VwYXJhdG9ycwotQC13ZWJraXQtZmlsdGVy
LyoqLyBteS1maWx0ZXIvKiovIHsgfQotUEFTUyBjc3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0
LWZpbHRlciBteS1maWx0ZXIgeyB9IgotUEFTUyBjc3NSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1
bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJS
dWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1
bGUucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLQotRW1w
dHkgcnVsZSwgc3BhY2UrY29tbWVudCBzZXBhcmF0b3JzCi1ALXdlYmtpdC1maWx0ZXIgLyoqL215
LWZpbHRlciAvKioveyB9Ci1QQVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAiQC13ZWJraXQtZmlsdGVy
IG15LWZpbHRlciB7IH0iCi1QQVNTIGNzc1J1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBjc3NSdWxlIGluc3RhbmNlb2YgV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0
cnVlCi1QQVNTIGNzc1J1bGUuY29uc3RydWN0b3IgPT09IFdlYktpdENTU0ZpbHRlclJ1bGUgaXMg
dHJ1ZQotUEFTUyBjc3NSdWxlLl9fcHJvdG9fXyA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5wcm90
b3R5cGUgaXMgdHJ1ZQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotCi1FbXB0eSBydWxl
LCBzcGFjZStjb21tZW50K3NwYWNlIHNlcGFyYXRvcnMKLUAtd2Via2l0LWZpbHRlciAvKiovIG15
LWZpbHRlciAvKiovIHsgfQotUEFTUyBjc3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0LWZpbHRl
ciBteS1maWx0ZXIgeyB9IgotUEFTUyBjc3NSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1MgY3NzUnVsZSBpbnN0YW5jZW9mIFdlYktpdENTU0ZpbHRlclJ1bGUgaXMg
dHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlz
IHRydWUKLVBBU1MgY3NzUnVsZS5fX3Byb3RvX18gPT09IFdlYktpdENTU0ZpbHRlclJ1bGUucHJv
dG90eXBlIGlzIHRydWUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLQotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTmVzdGVkIGZpbHRlciBhdC1ydWxlIHRl
c3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1OZXN0ZWQg
cnVsZS4KLUAtd2Via2l0LWZpbHRlciBwYXJlbnQtZmlsdGVyIHsgQC13ZWJraXQtZmlsdGVyIGNo
aWxkLWZpbHRlciB7IH0gfQotUEFTUyBjc3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0LWZpbHRl
ciBwYXJlbnQtZmlsdGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDE3Ci1QQVNTIGNzc1J1
bGUgaW5zdGFuY2VvZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5j
b25zdHJ1Y3RvciA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUu
X19wcm90b19fID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi0KLVR3
aWNlIG5lc3RlZCBydWxlLgotQC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyBALXdlYmtp
dC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgQC13ZWJraXQtZmlsdGVyIGdyYW5kY2hpbGQtZmlsdGVy
IH0gfQotUEFTUyBjc3NSdWxlLmNzc1RleHQgaXMgIkAtd2Via2l0LWZpbHRlciBwYXJlbnQtZmls
dGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDE3Ci1QQVNTIGNzc1J1bGUgaW5zdGFuY2Vv
ZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jb25zdHJ1Y3RvciA9
PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90b19fID09
PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVlCi0KLU5lc3RlZCBydWxlIGlu
c2lkZSBhcmJpdHJhcnkgcnVsZS4KLUBmb250LWZhY2UgeyBALXdlYmtpdC1maWx0ZXIgY2hpbGQt
ZmlsdGVyIHsgfSB9Ci1QQVNTIGNzc1J1bGUuY3NzVGV4dCBpcyAiQGZvbnQtZmFjZSB7IH0iCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyA1Ci1QQVNTIGNzc1J1bGUgaW5zdGFuY2VvZiBDU1NGb250RmFj
ZVJ1bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLmNvbnN0cnVjdG9yID09PSBDU1NGb250RmFjZVJ1
bGUgaXMgdHJ1ZQotUEFTUyBjc3NSdWxlLl9fcHJvdG9fXyA9PT0gQ1NTRm9udEZhY2VSdWxlLnBy
b3RvdHlwZSBpcyB0cnVlCi0KLU5lc3RlZCBydWxlIGluc2lkZSBtZWRpYSBxdWVyeS4KLUBtZWRp
YSBzY3JlZW4geyBALXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSB9Ci1QQVNTIGNzc1J1
bGUuY3NzVGV4dCBpcyAiQG1lZGlhIHNjcmVlbiB7IFxuICBALXdlYmtpdC1maWx0ZXIgY2hpbGQt
ZmlsdGVyIHsgfVxufSIKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDQKLVBBU1MgY3NzUnVsZSBpbnN0
YW5jZW9mIENTU01lZGlhUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuY29uc3RydWN0b3IgPT09
IENTU01lZGlhUnVsZSBpcyB0cnVlCi1QQVNTIGNzc1J1bGUuX19wcm90b19fID09PSBDU1NNZWRp
YVJ1bGUucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgY3NzUnVsZS5jc3NUZXh0IGlzICJALXdlYmtp
dC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSIKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDE3Ci1QQVNT
IGNzc1J1bGUgaW5zdGFuY2VvZiBXZWJLaXRDU1NGaWx0ZXJSdWxlIGlzIHRydWUKLVBBU1MgY3Nz
UnVsZS5jb25zdHJ1Y3RvciA9PT0gV2ViS2l0Q1NTRmlsdGVyUnVsZSBpcyB0cnVlCi1QQVNTIGNz
c1J1bGUuX19wcm90b19fID09PSBXZWJLaXRDU1NGaWx0ZXJSdWxlLnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3BhcnNpbmctYXQtcnVsZS12YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctYXQtcnVsZS12YWxpZC5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5OGEzOWE0Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWF0
LXJ1bGUtdmFsaWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLTwhRE9DVFlQ
RSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08
c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
LTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJjb25z
b2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1w
YXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL3Bh
cnNpbmctYXQtcnVsZS12YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1z
eW50YXgvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24taW52YWxpZC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1j
dXN0b20tZnVuY3Rpb24taW52YWxpZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDg0OGE5ZmYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9uLWludmFs
aWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNjM3ICswLDAgQEAKLVRlc3QgdGhl
IHBhcnNpbmcgb2YgY3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhlIC13ZWJraXQtZmlsdGVyIHByb3Bl
cnR5LgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci1DdXN0b20gZnVuY3Rpb24gdGVzdHMuCi09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUVtcHR5IGN1c3RvbSBmdW5jdGlv
bi4KLWN1c3RvbSgpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotT25lIGNvbW1hIGluIGN1c3RvbSBm
dW5jdGlvbi4KLWN1c3RvbSgsKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU11bHRpcGxlIGNvbW1h
cyBpbiBjdXN0b20gZnVuY3Rpb24uCi1jdXN0b20oLCwpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotRmlsdGVyIG5hbWUgdGVz
dHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU5vIGZpbHRl
ciBuYW1lIHdpdGggcGFyYW1ldGVyLgotY3VzdG9tKG4gMSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci1Ub28gbWFueSBmaWx0ZXIgbmFtZXMuCi1jdXN0b20obXktZmlsdGVyLTEgbXktZmlsdGVyLTIp
Ci1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotRmlsdGVyIG5hbWUgYXMgc3RyaW5nLgotY3VzdG9tKCdt
eS1maWx0ZXItMScpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotRmlsdGVyIG5hbWUgYXMgbnVtYmVy
LgotY3VzdG9tKDEpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotU3BhY2UgYmV0d2VlbiBmaWx0ZXIg
bmFtZSBhbmQgcGFyYW1ldGVyLgotY3VzdG9tKG15LWZpbHRlciBuIDEpCi1QQVNTIHN0eWxlUnVs
ZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlz
IG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTnVtYmVy
IHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLQotVG9vIG1hbnkgcGFyYW1ldGVyIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIG4gMSAy
IDMgNCA1KQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgcGFyYW1ldGVyIHR5cGUuCi1j
dXN0b20obXktZmlsdGVyLCBuIDEuMCAyLjAgJ3RleHQnKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LU5vIHBhcmFtZXRlciBkZWZpbml0aW9uIGFmdGVyIGNvbW1hLgotY3VzdG9tKG15LWZpbHRlciwp
Ci1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gd2l0aCB0d28g
Y29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwsKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NS
dWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIHBh
cmFtZXRlciBkZWZpbml0aW9uIGJlZm9yZSB2YWxpZCBwYXJhbWV0ZXIgZGVmaW50aW9uLgotY3Vz
dG9tKG15LWZpbHRlciwgLCBuIDEpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZ
TEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gcGFyYW1ldGVy
IHZhbHVlLgotY3VzdG9tKG15LWZpbHRlciwgbikKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBw
YXJhbWV0ZXIgdmFsdWUgd2l0aCBtdWx0aXBsZSBwYXJhbWV0ZXJzLgotY3VzdG9tKG15LWZpbHRl
ciwgbjEsIG4yLCBuMykKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci1Db2xvciBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLU5vIHJnYiBjb2xvciB2YWx1ZXMuCi1j
dXN0b20obXktZmlsdGVyLCBjIHJnYigsLCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1
bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gaHNs
IGNvbG9yIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIGMgaHNsKCwsKSkKLVBBU1Mgc3R5bGVS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgbnVsbAotCi1IZXggd2l0aCA4IGNoYXJhY3RlcnMuCi1jdXN0b20obXktZmlsdGVyLCBjICNG
RjAwMDBGRikKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1IZXggd2l0aCAyIGNoYXJhY3Rlci4KLWN1
c3RvbShteS1maWx0ZXIsIGMgI0ZGKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNU
WUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVJnYmEgd2l0aCAz
IHZhbHVlcyBhbmQgMiBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMjU1LCAwLCAw
KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci1UcmFuc2Zvcm0gcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotCi1PbmUgaW52YWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24u
Ci1jdXN0b20obXktZmlsdGVyLCB0IGludmFsaWQtcm90YXRlKDBkZWcpKQotUEFTUyBzdHlsZVJ1
bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBp
cyBudWxsCi0KLU11bHRpcGxlIGludmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9ucy4KLWN1c3RvbSht
eS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUoMGRlZykgaW52YWxpZC1wZXJzcGVjdGl2ZSgwKSkK
LVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVu
IHZhbGlkIG9uZXMuCi1jdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSBpbnZhbGlkLXJv
dGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0
cmFuc2Zvcm0gZnVuY3Rpb24gYmV0d2VlbiBpbnZhbGlkIG9uZXMuCi1jdXN0b20obXktZmlsdGVy
LCB0IGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIGludmFsaWQtdHJhbnNsYXRl
KDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiB3aXRo
b3V0IGxlYWRpbmcgY29tbWEuCi1jdXN0b20obXktZmlsdGVyIHQgcGVyc3BlY3RpdmUoMCkpCi1Q
QVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpIGlzIG51bGwKLQotVmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGggdHJhaWxp
bmcgY29tbWEuCi1jdXN0b20obXktZmlsdGVyLCB0IHBlcnNwZWN0aXZlKDApLCkKLVBBU1Mgc3R5
bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVy
JykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gd2l0aCB0cmFpbGluZyBjb21t
YSBhbmQgd2l0aG91dCBsZWFkaW5nIGNvbW1hLgotY3VzdG9tKG15LWZpbHRlciB0IHBlcnNwZWN0
aXZlKDApLCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHRyYW5zZm9ybSB3aXRoIHRy
YWlsaW5nIGNvbW1hLgotY3VzdG9tKG15LWZpbHRlciwgdCBpbnZhbGlkLXJvdGF0ZSgwZGVnKSwp
Ci1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotSW52YWxpZCB0cmFuc2Zvcm0gd2l0aG91dCBsZWFkaW5n
IGNvbW1hLgotY3VzdG9tKG15LWZpbHRlciB0IGludmFsaWRfcm90YXRlKDBkZWcpKQotUEFTUyBz
dHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyBudWxsCi0KLVZhbGlkIHRyYW5zZm9ybSB3aXRoIGludmFsaWQgY2hhcmFjdGVycwot
Y3VzdG9tKG15LWZpbHRlcix0IHJvdGF0ZSgwZGVnKSAqLi0sKQotUEFTUyBzdHlsZVJ1bGUudHlw
ZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUFycmF5IHBhcmFt
ZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQot
RW1wdHkgYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCkpCi1QQVNTIHN0eWxlUnVs
ZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlz
IG51bGwKLQotT25lIGNvbW1hIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgs
KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NdWx0aXBsZSBjb21tYXMgaW4gYXJyYXkuCi1jdXN0
b20obXktZmlsdGVyLCBhIGFycmF5KCwsLCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1
bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTXVsdGlw
bGUgY29tbWFzIHdpdGggYSB2YWx1ZSBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoLCwxLCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEg
bmVnYXRpdmUgdmFsdWUgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwtNCkp
Ci1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEgdmFsdWUgaW4g
YXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCw0KSkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1PbmUgbmVnYXRpdmUgdmFsdWUgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4KLWN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLTQsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1PbmUg
dmFsdWUgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEg
YXJyYXkoNCwpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVZhbGlkIHZhbHVlcyBmb2xsb3dlZCBi
eSBhIGNvbW1hIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAzLCA0
LCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEgbGV0
dGVyIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAzLCA0LCB4KSkK
LVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykgaXMgbnVsbAotCi1Ud28gY29tbWFzIGFzIHNlcGFyYXRvciBiZXR3ZWVuIHZh
bHVlcyBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgLCA0KSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1MZWFkaW5nIGNvbW1hIGluIGFycmF5LgotY3VzdG9tKG15LWZp
bHRlciwgYSBhcnJheSgsMSwgMiwgMywgNCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1
bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotU2VtaWNv
bG9uIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5
KDE7IDI7IDM7IDQpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVNwYWNlIHNlcGFyYXRlZCB2YWx1
ZXMgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEgMiAzIDQpKQotUEFTUyBz
dHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyBudWxsCi0KLVNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgd2l0aCBjb21tYSB0ZXJtaW5h
dG9yIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxIDIgMyA0LCkpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29t
bWEgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwgMSAyIDMgNCkpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTmFOIGluIGFycmF5LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJh
eShOYU4pKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5hTiBiZXR3ZWVuIHZhbGlkIHZhbHVlcyBp
biBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgTmFOLCAzKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1JbnZhbGlkIHZhbHVlICdub25lJyBpbiBhcnJheS4KLWN1c3RvbSht
eS1maWx0ZXIsIGEgYXJyYXkobm9uZSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUu
U1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotSW52YWxpZCB2
YWx1ZSB1bml0ICdweCcgaW4gYXJyYXkuCi1jdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDFweCkp
Ci1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotSW52YWxpZCB2YWx1ZSB1bml0ICdkZWcnIGluIGFycmF5
LgotY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxZGVnKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci1JbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheSBhZnRlciB2YWxpZCB2YWx1ZXMuCi1j
dXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDRweCkpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTWF0MiBwYXJh
bWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0K
LUVtcHR5IG1hdDIuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIoKSkKLVBBU1Mgc3R5bGVSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
bnVsbAotCi1Ub28gdmlldyBhcmd1bWVudHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMCwg
MCwgMCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuCi1j
dXN0b20obXktZmlsdGVyLCBhIG1hdDIoLCwsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1FbmRp
bmcgY29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDAsIDAsLCkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotSWRlbnRzIGluIG1hdDIgZnVuY3Rpb24uCi1jdXN0b20obXktZmlsdGVyLCBh
IG1hdDIoMCwgMCwgYSwgYikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVf
UlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVG9vIG1hbnkgYXJndW1l
bnRzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDAsIDAsIDAsIDAsIDEpKQotUEFTUyBzdHls
ZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSBpcyBudWxsCi0KLU5vIGNvbW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigxIDAgMCAx
KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Tb21lIGNvbW1hcy4KLWN1c3RvbShteS1maWx0ZXIs
IGEgbWF0MigxLCAwLCAwIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUxlYWRpbmcgY29tbWFz
LgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKCwgMCwgMCwgMSkpCi1QQVNTIHN0eWxlUnVsZS50
eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotTm8gbGVuZ3RoIHVuaXRzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDFweCwgMHB4
LCAwcHgsIDFweCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gZGVncmVlIHVuaXRzLgotY3Vz
dG9tKG15LWZpbHRlciwgYSBtYXQyKDFkZWcsIDBkZWcsIDBkZWcsIDFkZWcpKQotUEFTUyBzdHls
ZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSBpcyBudWxsCi0KLU5hTiBpbiBtYXQyLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDEsIDAs
IDAsIE5hTikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotTWF0MyBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUVtcHR5IG1hdDMuCi1jdXN0b20obXktZmlsdGVy
LCBhIG1hdDMoKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Ub28gdmlldyBhcmd1bWVudHMuCi1j
dXN0b20obXktZmlsdGVyLCBhIG1hdDMoMCwgMCwgMCwgMCkpCi1QQVNTIHN0eWxlUnVsZS50eXBl
IGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDMoLCws
LCwsLCwsLCwsLCwsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1FbmRpbmcgY29tbWFzLgotY3Vz
dG9tKG15LWZpbHRlciwgYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsLCkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotSWRlbnRzIGluIG1hdDMgZnVuY3Rpb24uCi1jdXN0b20obXktZmlsdGVyLCBh
IG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgYSwgYikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlz
IENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
VG9vIG1hbnkgYXJndW1lbnRzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEsIDAsIDAsIDAs
IDEsIDAsIDAsIDAsIDEsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxF
X1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIGNvbW1hcy4KLWN1
c3RvbShteS1maWx0ZXIsIGEgbWF0MygxIDAgMCAwIDEgMCAwIDAgMSkpCi1QQVNTIHN0eWxlUnVs
ZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlz
IG51bGwKLQotU29tZSBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDMoMSwgMCwgMCwg
MCwgMSwgMCAwIDAgMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVM
RQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTGVhZGluZyBjb21tYXMuCi1j
dXN0b20obXktZmlsdGVyLCBhIG1hdDMoLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1ObyBsZW5ndGggdW5pdHMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1h
dDMoMXB4LCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDFweCkpCi1QQVNTIHN0eWxlUnVsZS50eXBl
IGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotTm8gZGVncmVlIHVuaXRzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDFkZWcsIDAsIDAs
IDAsIDFkZWcsIDAsIDAsIDAsIDFkZWcpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5hTiBpbiBt
YXQzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKE5hTiwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotTWF0NCBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0KLUVtcHR5IG1hdDQuCi1jdXN0b20obXktZmlsdGVyLCBhIG1h
dDQoKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Ub28gdmlldyBhcmd1bWVudHMuCi1jdXN0b20o
bXktZmlsdGVyLCBhIG1hdDQoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
IGlzIG51bGwKLQotTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuCi1jdXN0b20obXktZmlsdGVyLCBh
IG1hdDQoLCwsLCwsLCwsLCwsLCwsKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1FbmRpbmcgY29t
bWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAs
IDAsIDEsIDAsIDAsIDAsLCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVf
UlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotSWRlbnRzIGluIG1hdDQg
ZnVuY3Rpb24uCi1jdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMSwgMCwgMCwgMCwgMSwgMCwgMCwg
YSwgYikpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVG9vIG1hbnkgYXJndW1lbnRzLgotY3VzdG9t
KG15LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAs
IDAsIDAsIDEsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5vIGNvbW1hcy4KLWN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0NCgxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAgMCAxKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgbnVsbAotCi1Tb21lIGNvbW1hcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgx
LCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwIDAgMCAwIDEpKQotUEFTUyBzdHlsZVJ1
bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBp
cyBudWxsCi0KLUxlYWRpbmcgY29tbWFzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KCwgMCwg
MCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSkpCi1QQVNTIHN0eWxlUnVs
ZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlz
IG51bGwKLQotTm8gbGVuZ3RoIHVuaXRzLgotY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDFweCwg
MCwgMCwgMCwgMCwgMXB4LCAwLCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAsIDAsIDFweCkpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTm8gZGVncmVlIHVuaXRzLgotY3VzdG9tKG15LWZpbHRlciwgYSBt
YXQ0KDFkZWcsIDAsIDAsIDAsIDAsIDFkZWcsIDAsIDAsIDAsIDAsIDFkZWcsIDAsIDAsIDAsIDAs
IDFkZWcpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mg
ZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU5hTiBpbiBtYXQ0LgotY3VzdG9tKG15LWZp
bHRlciwgYSBtYXQ0KE5hTiwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MCwgMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotTWl4aW5nIHBhcmFtZXRlciB0eXBlcy4KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLQotTnVtYmVyIHBhcmFtZXRlciB3aXRoIGhleCBjb2xv
ci4KLWN1c3RvbShteS1maWx0ZXIsIG4xIDEgMiAjRkYwMDAwKQotUEFTUyBzdHlsZVJ1bGUudHlw
ZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci0KLU51bWJlciBwYXJhbWV0ZXIgd2l0aCBjb2xvciBrZXl3b3JkLgotY3VzdG9tKG15LWZpbHRl
ciwgbjEgMSAyIHJlZCkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1OdW1iZXIgcGFyYW1ldGVyIHdp
dGggcmdiIGNvbG9yLgotY3VzdG9tKG15LWZpbHRlciwgbjEgMSAyIHJnYigyNTUsIDAsIDApKQot
UEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLUNvbG9yIHdpdGggbnVtYmVyIHBhcmFtZXRlci4KLWN1c3Rv
bShteS1maWx0ZXIsIGEgcmdiKDI1NSwgMCwgMCkgMSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1D
b2xvciBpbiBhcnJheS4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMCwgcmdiKDI1NSwgMCwg
MCkpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUNvbG9yIGFuZCBhcnJheS4KLWN1c3RvbShteS1m
aWx0ZXIsIGEgYXJyYXkoMCwgMCkgcmdiKDI1NSwgMCwgMCkpCi1QQVNTIHN0eWxlUnVsZS50eXBl
IGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotQ29sb3Igd2l0aCB0cmFuc2Zvcm0gdmFsdWVzLgotY3VzdG9tKG15LWZpbHRlciwgYSByb3Rh
dGUoNDVkZWcpIHJnYigyNTUsIDAsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUNvbG9yIHdp
dGggdHJhbnNmb3JtIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIGEgcmdiKDI1NSwgMCwgMCkg
cm90YXRlKDQ1ZGVnKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIG1hdDIuCi1j
dXN0b20obXktZmlsdGVyLCBhIHJnYigyNTUsIDAsIDApIG1hdDIoMCwgMCwgMCwgMCkpCi1QQVNT
IHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotbWF0MiB3aXRoIG1hdDMuCi1jdXN0b20obXktZmlsdGVyLCBhIG1h
dDIoMSwgMCwgMCwgMSkgbWF0MygwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwKSkKLVBBU1Mgc3R5
bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVy
JykgaXMgbnVsbAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBM
RVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1pbnZhbGlkLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1j
dXN0b20tZnVuY3Rpb24taW52YWxpZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBmZGU0Y2QzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1pbnZhbGlkLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgot
PGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2
IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3VzdG9t
LWZpbHRlci1wYXJzaW5nLWNvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0
LXRlc3RzL3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9uLWludmFsaWQuanMiPjwvc2NyaXB0PgotPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9uLXZhbGlkLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxl
LXN5bnRheC9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi12YWxpZC1leHBlY3RlZC50eHQKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFlNDU3MDAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9t
LWZ1bmN0aW9uLXZhbGlkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDQ3NyArMCww
IEBACi1UZXN0IHRoZSBwYXJzaW5nIG9mIHRoZSBjdXN0b20oKSBmdW5jdGlvbiBvZiB0aGUgLXdl
YmtpdC1maWx0ZXIgcHJvcGVydHkuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUN1c3RvbSBmdW5jdGlv
biB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotQ3Vz
dG9tIGZ1bmN0aW9uIGluIENBUFMuCi1DVVNUT00obXktZmlsdGVyKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5
cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFs
dWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciknCi0KLT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLUZpbHRlciBjaGFpbiB0ZXN0cy4KLT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotQ3VzdG9tIGZ1bmN0aW9uIGluIG1pZGRsZSBv
ZiBmaWx0ZXIgY2hhaW4uCi1ncmF5c2NhbGUoKSBjdXN0b20obXktZmlsdGVyKSBzZXBpYSgpCi1Q
QVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnZ3JheXNjYWxlKCkgY3VzdG9tKG15LWZpbHRlcikgc2Vw
aWEoKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NW
YWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5n
dGggaXMgMwotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfR1JBWVNDQUxFCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2dyYXlz
Y2FsZSgpJwotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbSht
eS1maWx0ZXIpJwotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfU0VQSUEKLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnc2VwaWEo
KScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotRmlsdGVyIG5h
bWUgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUZp
bHRlciBuYW1lIG9ubHkuCi1jdXN0b20obXktZmlsdGVyKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgJ2N1c3RvbShteS1maWx0ZXIpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNl
b2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMg
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3Nz
VGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciknCi0KLUZpbHRlciBuYW1lIGFzIENTUyAnbm9uZScg
a2V5d29yZC4KLWN1c3RvbShub25lKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNU
WUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShu
b25lKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NW
YWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShu
b25lKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTnVtYmVy
IHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLQotSW50ZWdlciBwYXJhbWV0ZXJzLgotY3VzdG9tKG15LWZpbHRlciwgbjEgMSwgbjIgMiAz
LCBuMyAzIDQgNSwgbjQgNCA1IDYgNykKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5T
VFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20o
bXktZmlsdGVyLCBuMSAxLCBuMiAyIDMsIG4zIDMgNCA1LCBuNCA0IDUgNiA3KScKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJf
Q1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG4xIDEs
IG4yIDIgMywgbjMgMyA0IDUsIG40IDQgNSA2IDcpJwotCi1GbG9hdCBwYXJhbWV0ZXJzLgotY3Vz
dG9tKG15LWZpbHRlciwgbjEgMS4xLCBuMiAyLjIgMy4zLCBuMyAzLjEgNC4xIDUuMSwgbjQgNC4x
IDUuMiA2LjMgNy40KQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIs
IG4xIDEuMSwgbjIgMi4yIDMuMywgbjMgMy4xIDQuMSA1LjEsIG40IDQuMSA1LjIgNi4zIDcuNCkn
Ci1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVM
aXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmls
dGVyLCBuMSAxLjEsIG4yIDIuMiAzLjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEgNS4yIDYuMyA3
LjQpJwotCi1QYXJhbWV0ZXIgbmFtZSBzYW1lIGFzIENTUyBrZXl3b3JkLgotY3VzdG9tKG15LWZp
bHRlciwgYmFja2dyb3VuZCAwIDEgMCAxKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxl
LlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3Rv
bShteS1maWx0ZXIsIGJhY2tncm91bmQgMCAxIDAgMSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9w
ZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBz
dWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBiYWNrZ3JvdW5kIDAgMSAwIDEp
JwotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1Db2xvciBwYXJh
bWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0K
LUhleCBjb2xvci4KLWN1c3RvbShteS1maWx0ZXIsIGMgIzAwRkYwMCkKLVBBU1Mgc3R5bGVSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBjIHJnYigwLCAyNTUsIDApKScKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJf
Q1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGMgcmdi
KDAsIDI1NSwgMCkpJwotCi1Db2xvciBrZXl3b3JkLgotY3VzdG9tKG15LWZpbHRlciwgYyBncmVl
bikKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBjIHJnYigwLCAx
MjgsIDApKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBD
U1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3Rv
bShteS1maWx0ZXIsIGMgcmdiKDAsIDEyOCwgMCkpJwotCi1Db2xvciByZ2IgZnVuY3Rpb24uCi1j
dXN0b20obXktZmlsdGVyLCBjIHJnYigwLCAxMjgsIDApKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgJ2N1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDEyOCwgMCkpJwotUEFTUyBmaWx0ZXJQcm9w
ZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMg
dHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVl
Lm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00K
LVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwgMTI4
LCAwKSknCi0KLUNvbG9yIGhzbCBmdW5jdGlvbi4KLWN1c3RvbShteS1maWx0ZXIsIGMgaHNsKDEy
MCwgMTAwJSwgNTAlKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVy
LCBjIHJnYigwLCAyNTUsIDApKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19w
cm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1Rl
eHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDI1NSwgMCkpJwotCi1Db2xvciByZ2Jh
IGZ1bmN0aW9uLgotY3VzdG9tKG15LWZpbHRlciwgYyByZ2JhKDAsIDI1NSwgMCwgMC4yKSkKLVBB
U1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMCwgMjU1LCAw
LCAwLjIpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBD
U1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3Rv
bShteS1maWx0ZXIsIGMgcmdiYSgwLCAyNTUsIDAsIDAuMikpJwotCi1Db2xvciBoc2xhIGZ1bmN0
aW9uLgotY3VzdG9tKG15LWZpbHRlciwgYyBoc2xhKDEyMCwgMTAwJSwgNTAlLCAwLjIpKQotUEFT
UyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGMgcmdiYSgwLCAyNTUsIDAs
IDAuMikpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9t
KG15LWZpbHRlciwgYyByZ2JhKDAsIDI1NSwgMCwgMC4yKSknCi0KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLVRyYW5zZm9ybSBwYXJhbWV0ZXIgdGVzdHMuCi09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLVRyYW5zZm9ybSBwYXJhbWV0
ZXIgd2l0aCBvbmUgdHJhbnNmb3JtIGZ1bmN0aW9uLgotY3VzdG9tKG15LWZpbHRlciwgdCByb3Rh
dGUoMGRlZykpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgdCBy
b3RhdGUoMGRlZykpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18g
PT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZh
bHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NT
RmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAn
Y3VzdG9tKG15LWZpbHRlciwgdCByb3RhdGUoMGRlZykpJwotCi1UcmFuc2Zvcm0gcGFyYW1ldGVy
IHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtIGZ1bmN0aW9ucy4KLWN1c3RvbShteS1maWx0ZXIsIHQg
cm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBw
eCkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgdCByb3RhdGUo
MGRlZykgcGVyc3BlY3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSknCi1Q
QVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVy
LCB0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4
LCAwcHgpKScKLQotTXVsaXRwbGUgdHJhbnNmb3JtIHBhcmFtZXRlcnMuCi1jdXN0b20obXktZmls
dGVyLCB0MSByb3RhdGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVnKSkKLVBBU1Mgc3R5bGVSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpIGlzICdjdXN0b20obXktZmlsdGVyLCB0MSByb3RhdGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVn
KSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFs
dWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXkt
ZmlsdGVyLCB0MSByb3RhdGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVnKSknCi0KLT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUFycmF5IHBhcmFtZXRlciB0ZXN0cy4KLT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotQXJyYXkgcGFyYW1ldGVy
IHdpdGggbmFtZSAnYXJyYXknLgotY3VzdG9tKG15LWZpbHRlciwgYXJyYXkgYXJyYXkoMSkpCi1Q
QVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgYXJyYXkgYXJyYXkoMSkp
JwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVl
TGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
Q1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZp
bHRlciwgYXJyYXkgYXJyYXkoMSkpJwotCi1BcnJheSBwYXJhbWV0ZXIgd2l0aCBvbmUgcG9zaXRp
dmUgaW50ZWdlci4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSkpCi1QQVNTIHN0eWxlUnVs
ZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxKSknCi1QQVNTIGZpbHRlclBy
b3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFs
dWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEp
KScKLQotQXJyYXkgcGFyYW1ldGVyIHdpdGggb25lIG5lZ2F0aXZlIGZsb2F0LgotY3VzdG9tKG15
LWZpbHRlciwgYSBhcnJheSgtMS4wMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUu
U1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9t
KG15LWZpbHRlciwgYSBhcnJheSgtMS4wMSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5
cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFs
dWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgtMS4wMSkpJwotCi1BcnJh
eSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBwb3NpdGl2ZSBpbnRlZ2Vycy4KLWN1c3RvbShteS1m
aWx0ZXIsIGEgYXJyYXkoMSwgMiwgMywgNCwgNSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENT
U1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAn
Y3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAzLCA0LCA1KSknCi1QQVNTIGZpbHRlclBy
b3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBm
aWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBp
cyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFs
dWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEs
IDIsIDMsIDQsIDUpKScKLQotQXJyYXkgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZs
b2F0cy4KLWN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSkK
LVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIC0y
LjIsIDMuMTQsIDAuNCwgNSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2Yg
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3Rv
ciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3By
b3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9w
ZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4
dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpKScK
LQotTXVsdGlwbGUgYXJyYXkgcGFyYW1ldGVycy4KLWN1c3RvbShteS1maWx0ZXIsIGExIGFycmF5
KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSksIGEyIGFycmF5KDEsIDIsIDMpKQotUEFTUyBzdHlsZVJ1
bGUudHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAu
NCwgNSksIGEyIGFycmF5KDEsIDIsIDMpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0
YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmls
dGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVl
LmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIGExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAu
NCwgNSksIGEyIGFycmF5KDEsIDIsIDMpKScKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotTWF0MiBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0KLU1hdDIgcGFyYW1ldGVyLgotY3VzdG9tKG15LWZpbHRl
ciwgbSBtYXQyKDEsIDAsIDAsIDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBpcyBDU1NSdWxlLlNU
WUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgJ2N1c3RvbSht
eS1maWx0ZXIsIG0gbWF0MigxLCAwLCAwLCAxKSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUg
aW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
LmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJW
YWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgMCwgMCwgMSkpJwot
Ci1NYXQyIHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIs
IG0gbWF0MigtMSwgLTEsIC0xLCAtMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUu
U1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9t
KG15LWZpbHRlciwgbSBtYXQyKC0xLCAtMSwgLTEsIC0xKSknCi1QQVNTIGZpbHRlclByb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0
eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQ
cm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3Bl
cmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFT
UyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoLTEsIC0xLCAt
MSwgLTEpKScKLQotTWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFs
dWVzLgotY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAxLCAxLCAtMSkpCi1QQVNTIHN0eWxl
UnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQyKC0xLCAxLCAxLCAtMSkpJwot
UEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlz
IHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlz
dC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRl
ciwgbSBtYXQyKC0xLCAxLCAxLCAtMSkpJwotCi1NYXQyIHBhcmFtZXRlciB3aXRoIG11bHRpcGxl
IHNpZ25lZCBmbG9hdHMuCi1jdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgLTIuMiwgMy4xNCwg
MC40KSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIo
MSwgLTIuMiwgMy4xNCwgMC40KSknCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2Vv
ZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVj
dG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclBy
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NU
ZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDIoMSwgLTIuMiwgMy4xNCwgMC40KSknCi0K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLU1hdDMgcGFyYW1ldGVy
IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1NYXQz
IHBhcmFtZXRlci4KLWN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAxKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1h
dDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVl
IGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVy
dHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3Vi
VmFsdWUuY3NzVGV4dCBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQzKDEsIDAsIDAsIDAsIDEs
IDAsIDAsIDAsIDEpKScKLQotTWF0MyBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSB2YWx1ZXMuCi1j
dXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQzKC0x
LCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlW
YWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5
VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclBy
b3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUK
LVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVy
YXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNT
IHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwgLTEsIC0x
LCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSknCi0KLU1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRp
dmUgYW5kIHBvc2l0aXZlIHZhbHVlcy4KLWN1c3RvbShteS1maWx0ZXIsIG0gbWF0MygtMSwgMSwg
MSwgLTEsIC0xLCAxLCAxLCAtMSwgMSkpCi1QQVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUu
U1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9t
KG15LWZpbHRlciwgbSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKSknCi1QQVNT
IGZpbHRlclByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklM
VEVSX0NVU1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBt
IG1hdDMoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIDEpKScKLQotTWF0MyBwYXJhbWV0ZXIg
d2l0aCBtdWx0aXBsZSBzaWduZWQgZmxvYXRzLgotY3VzdG9tKG15LWZpbHRlciwgbSBtYXQzKDEs
IC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxKSkKLVBBU1Mgc3R5bGVSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAx
LCAtMi4yLCAzLjE0LCAwLjQsIDEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5j
ZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3Ry
dWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUu
X19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVy
UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNz
c1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0MygxLCAtMi4yLCAzLjE0LCAwLjQsIDEs
IC0yLjIsIDMuMTQsIDAuNCwgMSkpJwotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci1NYXQ0IHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLQotTWF0NCBwYXJhbWV0ZXIuCi1jdXN0b20obXktZmlsdGVyLCBt
IG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSkpCi1Q
QVNTIHN0eWxlUnVsZS50eXBlIGlzIENTU1J1bGUuU1RZTEVfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyAnY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIDAsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKScKLVBBU1MgZmlsdGVyUHJv
cGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclBy
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZp
bHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlz
IHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1
ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9N
Ci1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgxLCAw
LCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKSknCi0KLU1hdDQgcGFy
YW1ldGVyIHdpdGggbmVnYXRpdmUgdmFsdWVzLgotY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KC0x
LCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEs
IC0xKSkKLVBBU1Mgc3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDQo
LTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEpKScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBD
U1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3Rv
bShteS1maWx0ZXIsIG0gbWF0NCgtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkpJwotCi1NYXQ0IHBhcmFtZXRlciB3aXRoIG5lZ2F0
aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuCi1jdXN0b20obXktZmlsdGVyLCBtIG1hdDQoLTEsIDEs
IDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xKSkKLVBBU1Mg
c3R5bGVSdWxlLnR5cGUgaXMgQ1NTUnVsZS5TVFlMRV9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDQoLTEsIDEsIDEsIC0x
LCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xKSknCi1QQVNTIGZpbHRl
clByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBmaWx0
ZXJQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBmaWx0ZXJQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
VmFsdWUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NV
U1RPTQotUEFTUyBzdWJWYWx1ZS5jc3NUZXh0IGlzICdjdXN0b20obXktZmlsdGVyLCBtIG1hdDQo
LTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xKSkn
Ci0KLU1hdDQgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4KLWN1c3RvbSht
eS1maWx0ZXIsIG0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwg
MSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpKQotUEFTUyBzdHlsZVJ1bGUu
dHlwZSBpcyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykgaXMgJ2N1c3RvbShteS1maWx0ZXIsIG0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEs
IC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQp
KScKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIGZpbHRlclByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1
ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVl
LkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHN1YlZhbHVlLmNzc1RleHQgaXMgJ2N1c3RvbShteS1m
aWx0ZXIsIG0gbWF0NCgxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwg
LTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQpKScKLQotPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotQ29tYmluZWQgcGFyYW1ldGVyIHRlc3RzLgotPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1OdW1iZXIgcGFyYW1ldGVy
LCBjb2xvciBwYXJhbWV0ZXIsIHRyYW5zZm9ybSBwYXJhbWV0ZXIsIG1hdHJpeCBwYXJhbWV0ZXJz
IGFuZCBhcnJheSBwYXJhbWV0ZXIuCi1jdXN0b20obXktZmlsdGVyLCBuIDEsIGMgcmdiKDAsIDEy
OCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAsIDEpLCBtMiBtYXQzKDEsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAs
IDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFycmF5KDEpKQotUEFTUyBzdHlsZVJ1bGUudHlwZSBp
cyBDU1NSdWxlLlNUWUxFX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykg
aXMgJ2N1c3RvbShteS1maWx0ZXIsIG4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRl
ZyksIG0xIG1hdDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MSksIG0zIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSksIGEgYXJyYXkoMSkpJwotUEFTUyBmaWx0ZXJQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9
PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZmlsdGVyUHJvcGVydHlWYWx1ZS5fX3Byb3Rv
X18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBmaWx0ZXJQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mgc3ViVmFsdWUuY3NzVGV4dCBp
cyAnY3VzdG9tKG15LWZpbHRlciwgbiAxLCBjIHJnYigwLCAxMjgsIDApLCB0IHJvdGF0ZSgwZGVn
KSwgbTEgbWF0MigxLCAwLCAwLCAxKSwgbTIgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAx
KSwgbTMgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAx
KSwgYSBhcnJheSgxKSknCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1Qg
Q09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13
aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9uLXZhbGlkLmh0bWwgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2lu
Zy1jdXN0b20tZnVuY3Rpb24tdmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMTY5YjVhMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
LXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08
aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20t
ZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHQt
dGVzdHMvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQuanMiPjwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktaW52YWxpZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVs
ZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1pbnZhbGlkLWV4cGVjdGVkLnR4dApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTkxZTk5OS4uMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1n
ZW9tZXRyeS1wcm9wZXJ0eS1pbnZhbGlkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0x
LDE1MSArMCwwIEBACi1UZXN0IGdlb21ldHJ5IHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Vi
a2l0LWZpbHRlciBhdC1ydWxlLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1HZW9tZXRyeSB0ZXN0cy4K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTm8gcHJvcGVydHkg
dmFsdWUuCi1nZW9tZXRyeTogOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0K
LUVtcHR5IGdyaWQuCi1nZW9tZXRyeTogZ3JpZCgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnkn
KSBpcyBudWxsCi0KLU1pc3BlbGxlZCBncmlkIGZ1bmN0aW9uLgotZ2VvbWV0cnk6IGdyaWlkKDEg
MSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotU2luZ2xlIG5lZ2F0aXZl
IHZhbHVlIGluIGdyaWQuCi1nZW9tZXRyeTogZ3JpZCgtMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9t
ZXRyeScpIGlzIG51bGwKLQotTmVnYXRpdmUgdmFsdWUgaW4gZ3JpZCBhbG9uZyB3aXRoIGEgdmFs
aWQgdmFsdWUuCi1nZW9tZXRyeTogZ3JpZCgxIC0xKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5
JykgaXMgbnVsbAotCi1OZWdhdGl2ZSB2YWx1ZSBpbiBncmlkIGFsb25nIHdpdGggYSB2YWxpZCB2
YWx1ZSwgaW52ZXJ0ZWQuCi1nZW9tZXRyeTogZ3JpZCgtMSAxKTsKLVBBU1MgZmlsdGVyQXRSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dl
b21ldHJ5JykgaXMgbnVsbAotCi1Ud28gbmVnYXRpdmUgdmFsdWVzLgotZ2VvbWV0cnk6IGdyaWQo
LTEgLTEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLVNpbmdsZSB6ZXJv
IHZhbHVlLgotZ2VvbWV0cnk6IGdyaWQoMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlz
IG51bGwKLQotWmVybyB3aXRoIGEgdmFsaWQgdmFsdWUuCi1nZW9tZXRyeTogZ3JpZCgwIDEpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLVplcm8gd2l0aCBhIHZhbGlkIHZh
bHVlLCBpbnZlcnRlZC4KLWdlb21ldHJ5OiBncmlkKDEgMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9t
ZXRyeScpIGlzIG51bGwKLQotQXR0YWNoZWQgdmFsdWUgYWxvbmUuCi1nZW9tZXRyeTogZ3JpZChh
dHRhY2hlZCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotRGV0YWNoZWQg
dmFsdWUgYWxvbmUuCi1nZW9tZXRyeTogZ3JpZChkZXRhY2hlZCk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdn
ZW9tZXRyeScpIGlzIG51bGwKLQotRGV0YWNoZWQgYW5kIGF0dGFjaGVkLgotZ2VvbWV0cnk6IGdy
aWQoYXR0YWNoZWQgYXR0YWNoZWQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxs
Ci0KLVRvbyBtYW55IHZhbHVlcy4KLWdlb21ldHJ5OiBncmlkKDEgMSBhdHRhY2hlZCBkZXRhY2hl
ZCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotTWlzcGVsbGVkIGF0dGFj
aGVkLgotZ2VvbWV0cnk6IGdyaWQoMSAxIGF0dGFjZCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRy
eScpIGlzIG51bGwKLQotTWlzcGVsbGVkIGRldGFjaGVkLgotZ2VvbWV0cnk6IGdyaWQoMSAxIGRl
dGFjaGUpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLUludmFsaWQgZGl2
aWRlci4KLWdlb21ldHJ5OiBncmlkKDEsIDEgYXR0YWNoZWQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2Vv
bWV0cnknKSBpcyBudWxsCi0KLUludmFsaWQgZGl2aWRlciwgcmVsb2FkZWQuCi1nZW9tZXRyeTog
Z3JpZCgxIDEsIGF0dGFjaGVkKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVsbAot
Ci1Ob24gaW50ZWdlciB2YWx1ZXMuCi1nZW9tZXRyeTogZ3JpZCgxLjMgMSk7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLQotTm9uIGludGVnZXIgdmFsdWVzLgotZ2VvbWV0cnk6
IGdyaWQoMSAxLjMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSBpcyBudWxsCi0KLVRocmVl
IGludGVnZXJzLgotZ2VvbWV0cnk6IGdyaWQoMSAyIDMpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0
cnknKSBpcyBudWxsCi0KLUF0dGFjaGVkIGluIGJldHdlZW4gdHdvIGludGVnZXJzLgotZ2VvbWV0
cnk6IGdyaWQoMSBhdHRhY2hlZCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykgaXMgbnVs
bAotCi1EZXRhY2hlZCBpbiBiZXR3ZWVuIHR3byBpbnRlZ2Vycy4KLWdlb21ldHJ5OiBncmlkKDEg
ZGV0YWNoZWQgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJ
TFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIGlzIG51bGwKLVBBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2lu
Zy1nZW9tZXRyeS1wcm9wZXJ0eS1pbnZhbGlkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS1p
bnZhbGlkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY0Zjc4YWIuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktaW52YWxpZC5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hl
YWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+
PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2lu
Zy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5n
LWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0
LXJ1bGUtc3ludGF4L3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3Bh
cnNpbmctZ2VvbWV0cnktcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAzMGZiZDdiLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLWdlb21ldHJ5LXByb3Bl
cnR5LXZhbGlkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDExMyArMCwwIEBACi1U
ZXN0IGdlb21ldHJ5IHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1y
dWxlLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci1HZW9tZXRyeSBwcm9wZXJ0eS4KLT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotR2VvbWV0cnkgd2l0aCBmdWxsIG1lc2gg
YW5kIGF0dGFjaGVkLgotZ2VvbWV0cnk6IGdyaWQoMSAxIGF0dGFjaGVkKTsKLVBBU1MgZmlsdGVy
QXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSkgaXMgIjEgMSBhdHRhY2hlZCIKLVBBU1MgZ2Vv
bWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
Z2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAz
Ci0KLUdlb21ldHJ5IHdpdGggZnVsbCBtZXNoIGFuZCBkZXRhY2hlZC4KLWdlb21ldHJ5OiBncmlk
KDEgMSBkZXRhY2hlZCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5Jykp
IGlzICIxIDEgZGV0YWNoZWQiCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGdlb21l
dHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwotCi1HZW9tZXRyeSB3aXRoIGZ1bGwgbWVzaCBh
bmQgbm8gYXR0YWNoZWQsIG5vciBkZXRhY2hlZC4KLWdlb21ldHJ5OiBncmlkKDEgMSk7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykpIGlzICIxIDEiCi1QQVNTIGdlb21l
dHJ5UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdl
b21ldHJ5UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnBy
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgot
Ci1HZW9tZXRyeSB3aXRoIG9ubHkgb25lIG1lc2ggdmFsdWUuCi1nZW9tZXRyeTogZ3JpZCgxKTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2VvbWV0cnknKSkgaXMgIjEiCi1QQVNTIGdl
b21ldHJ5UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMg
MQotCi1HZW9tZXRyeSB3aXRoIG9uZSBtZXNoIHZhbHVlIGFuZCBhdHRhY2hlZC4KLWdlb21ldHJ5
OiBncmlkKDEgYXR0YWNoZWQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRy
eScpKSBpcyAiMSBhdHRhY2hlZCIKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlIGluc3RhbmNl
b2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0eVZhbHVlLmNvbnN0
cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFs
dWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZ2Vv
bWV0cnlQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAyCi0KLUdlb21ldHJ5IHdpdGggb25lIG1lc2gg
dmFsdWUgYW5kIGRldGFjaGVkLgotZ2VvbWV0cnk6IGdyaWQoMSBkZXRhY2hlZCk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykpIGlzICIxIGRldGFjaGVkIgotUEFTUyBn
ZW9tZXRyeVByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlz
dC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDIKLQotR2VvbWV0cnkgd2l0aCBhdHRhY2hlZCBiZWZvcmUgb25lIG1lc2ggdmFsdWUuCi1nZW9t
ZXRyeTogZ3JpZChhdHRhY2hlZCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnZ2Vv
bWV0cnknKSkgaXMgImF0dGFjaGVkIDEiCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZSBpbnN0
YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2VvbWV0cnlQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotCi1HZW9tZXRyeSB3aXRoIGF0dGFj
aGVkIGJlZm9yZSB0d28gbWVzaCB2YWx1ZXMuCi1nZW9tZXRyeTogZ3JpZChhdHRhY2hlZCAxIDEp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBpcyAiYXR0YWNoZWQg
MSAxIgotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3Qg
aXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFs
dWUubGVuZ3RoIGlzIDMKLQotR2VvbWV0cnkgd2l0aCBkZXRhY2hlZCBiZWZvcmUgb25lIG1lc2gg
dmFsdWUuCi1nZW9tZXRyeTogZ3JpZChkZXRhY2hlZCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnZ2VvbWV0cnknKSkgaXMgImRldGFjaGVkIDEiCi1QQVNTIGdlb21ldHJ5UHJvcGVy
dHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgZ2Vv
bWV0cnlQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBp
cyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotCi1HZW9tZXRy
eSB3aXRoIGRldGFjaGVkIGJlZm9yZSB0d28gbWVzaCB2YWx1ZXMuCi1nZW9tZXRyeTogZ3JpZChk
ZXRhY2hlZCAxIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpKSBp
cyAiZGV0YWNoZWQgMSAxIgotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBnZW9tZXRyeVByb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIGdlb21ldHJ5UHJvcGVydHlWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBnZW9tZXRy
eVByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDMKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12
YWxpZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktdmFsaWQuaHRtbApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMTc2N2IwMi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1nZW9tZXRyeS1wcm9w
ZXJ0eS12YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotPCFkb2N0eXBl
IGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlw
dGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2Ny
aXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNj
cmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LXZhbGlkLmpz
Ij48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9w
ZXJ0eS1pbnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0eS1pbnZhbGlkLWV4cGVj
dGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzBkMzllYS4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgv
cGFyc2luZy1taXgtcHJvcGVydHktaW52YWxpZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSw1NSArMCwwIEBACi1UZXN0IG1peCBwcm9wZXJ0eSBwYXJzaW5nIGluIHRoZSBALXdlYmtp
dC1maWx0ZXIgYXQtcnVsZS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotVmFsdWUgdGVzdC4KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTm8gcHJvcGVydHkgdmFsdWUu
Ci1taXg6IDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpIGlzIG51bGwKLQotVGhyZWUgdmFsdWVzLgot
bWl4OiBzY3JlZW4gc291cmNlLW92ZXIgc2NyZWVuOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykgaXMg
bnVsbAotCi1UaHJlZSB2YWx1ZXMuCi1taXg6IHNjcmVlbiBzb3VyY2Utb3ZlciBzb3VyY2Utb3Zl
cjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJ21peCcpIGlzIG51bGwKLQotVHdvIGJsZW5kIG1vZGVzLgotbWl4
OiBzY3JlZW4gc2NyZWVuOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykgaXMgbnVsbAotCi1Ud28gY29t
cG9zaXRlIG9wZXJhdG9ycy4KLW1peDogc291cmNlLW92ZXIgc291cmNlLW92ZXI7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdtaXgnKSBpcyBudWxsCi0KLVR3byBibGVuZCBtb2Rlcy4KLW1peDogc2NyZWVuIHNj
cmVlbjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpIGlzIG51bGwKLQotQ29tbWEgYmV0d2VlbiB2YWx1
ZXMuCi1taXg6IHNjcmVlbiwgc291cmNlLW92ZXI7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSBpcyBu
dWxsCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LWludmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0
eS1pbnZhbGlkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY5MWQxZTIuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3BhcnNpbmctbWl4LXByb3BlcnR5LWludmFsaWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDEzICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFk
PgotPGJvZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmct
Y29tbW9uLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1t
aXgtcHJvcGVydHktaW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1z
eW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctbWl4LXBy
b3BlcnR5LXZhbGlkLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MWM4Y2YwMy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdp
dGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0
CisrKyAvZGV2L251bGwKQEAgLTEsMzkzICswLDAgQEAKLVRlc3QgbWl4IHByb3BlcnR5IHBhcnNp
bmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCi0KLQotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1U
ZXN0IGJsZW5kIG1vZGUga2V5d29yZHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0KLVRlc3QgbXVsdGlwbHkuCi1taXg6IG11bHRpcGx5OwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgIm11bHRpcGx5IgotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgIm11bHRpcGx5IgotCi1UZXN0IHNjcmVlbi4KLW1peDogc2NyZWVuOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgInNjcmVlbiIKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFBy
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NW
YWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzY3JlZW4iCi0KLVRlc3Qgb3ZlcmxheS4KLW1peDog
b3ZlcmxheTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNl
VVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJvdmVybGF5
IgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90
b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1
YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm92ZXJsYXkiCi0KLVRlc3QgZGFy
a2VuLgotbWl4OiBkYXJrZW47Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBp
cyAiZGFya2VuIgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0
IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVl
TGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZB
TFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImRhcmtlbiIKLQot
VGVzdCBsaWdodGVuLgotbWl4OiBsaWdodGVuOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdtaXgnKSkgaXMgImxpZ2h0ZW4iCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09
PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9
PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUu
bGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19Q
UklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAi
bGlnaHRlbiIKLQotVGVzdCBjb2xvci1kb2RnZS4KLW1peDogY29sb3ItZG9kZ2U7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAiY29sb3ItZG9kZ2UiCi1QQVNTIG1peFBy
b3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9w
ZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQ
cm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFs
dWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiY29sb3ItZG9kZ2UiCi0KLVRlc3QgY29sb3ItYnVybi4K
LW1peDogY29sb3ItYnVybjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlz
ICJjb2xvci1idXJuIgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1Zh
bHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZF
X1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImNvbG9yLWJ1
cm4iCi0KLVRlc3QgaGFyZC1saWdodC4KLW1peDogaGFyZC1saWdodDsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJoYXJkLWxpZ2h0IgotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1
ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgImhhcmQtbGlnaHQiCi0KLVRlc3Qgc29mdC1saWdodC4KLW1peDogc29m
dC1saWdodDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNl
VVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJzb2Z0LWxp
Z2h0IgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRy
dWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlz
IHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5w
cm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNvZnQtbGlnaHQiCi0KLVRl
c3QgZGlmZmVyZW5jZS4KLW1peDogZGlmZmVyZW5jZTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnbWl4JykpIGlzICJkaWZmZXJlbmNlIgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3Rh
bmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3By
b3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1
ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgImRpZmZlcmVuY2UiCi0KLVRlc3QgZXhjbHVzaW9uLgotbWl4OiBleGNsdXNpb247Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAiZXhjbHVzaW9uIgotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
bWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMg
dHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNz
c1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImV4Y2x1c2lvbiIKLQotVGVzdCBodWUuCi1taXg6
IGh1ZTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJodWUiCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBt
aXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBp
cyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUu
Y3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiaHVlIgotCi1UZXN0IHNhdHVyYXRpb24uCi1t
aXg6IHNhdHVyYXRpb247Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAi
c2F0dXJhdGlvbiIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1
ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9W
QUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzYXR1cmF0aW9u
IgotCi1UZXN0IGNvbG9yLgotbWl4OiBjb2xvcjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnbWl4JykpIGlzICJjb2xvciIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BS
SU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJj
b2xvciIKLQotVGVzdCBsdW1pbm9zaXR5LgotbWl4OiBsdW1pbm9zaXR5OwotUEFTUyBmaWx0ZXJB
dFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImx1bWlub3NpdHkiCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAibHVtaW5vc2l0eSIKLQotPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotVGVzdCBjb21wb3NpdGUga2V5d29yZHMuCi09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLVRlc3QgY2xlYXIuCi1taXg6IGNsZWFyOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImNsZWFyIgotUEFTUyBtaXhQ
cm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJv
cGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImNsZWFyIgotCi1UZXN0IGNvcHkuCi1taXg6IGNvcHk7
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAiY29weSIKLVBBU1MgbWl4
UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFBy
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1p
eFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NW
YWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjb3B5IgotCi1UZXN0IHNvdXJjZS1vdmVyLgotbWl4
OiBzb3VyY2Utb3ZlcjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1v
dmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJz
b3VyY2Utb3ZlciIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1
ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9W
QUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzb3VyY2Utb3Zl
ciIKLQotVGVzdCBzb3VyY2UtaW4uCi1taXg6IHNvdXJjZS1pbjsKLVBBU1MgZmlsdGVyQXRSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnbWl4JykpIGlzICJzb3VyY2UtaW4iCi1QQVNTIG1peFByb3BlcnR5VmFsdWUg
aW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNv
bnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFBy
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENT
U1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5j
c3NUZXh0KSBpcyAic291cmNlLWluIgotCi1UZXN0IHNvdXJjZS1vdXQuCi1taXg6IHNvdXJjZS1v
dXQ7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAic291cmNlLW91dCIK
LVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1Q
QVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJW
YWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJzb3VyY2Utb3V0IgotCi1UZXN0IHNv
dXJjZS1hdG9wLgotbWl4OiBzb3VyY2UtYXRvcDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnbWl4JykpIGlzICJzb3VyY2UtYXRvcCIKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZSBpbnN0YW5j
ZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUuX19wcm90
b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUu
Q1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQp
IGlzICJzb3VyY2UtYXRvcCIKLQotVGVzdCBkZXN0aW5hdGlvbi1vdmVyLgotbWl4OiBkZXN0aW5h
dGlvbi1vdmVyOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdtaXgnKSkgaXMgImRlc3Rp
bmF0aW9uLW92ZXIiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1
ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFs
dWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVf
VkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZGVzdGluYXRp
b24tb3ZlciIKLQotVGVzdCBkZXN0aW5hdGlvbi1pbi4KLW1peDogZGVzdGluYXRpb24taW47Ci1Q
QVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAiZGVzdGluYXRpb24taW4iCi1Q
QVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQot
UEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFs
dWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiZGVzdGluYXRpb24taW4iCi0KLVRlc3Qg
ZGVzdGluYXRpb24tb3V0LgotbWl4OiBkZXN0aW5hdGlvbi1vdXQ7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ21peCcpKSBpcyAiZGVzdGluYXRpb24tb3V0IgotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlW
YWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVy
dHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
VmFsdWUuY3NzVGV4dCkgaXMgImRlc3RpbmF0aW9uLW91dCIKLQotVGVzdCBkZXN0aW5hdGlvbi1h
dG9wLgotbWl4OiBkZXN0aW5hdGlvbi1hdG9wOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdtaXgnKSkgaXMgImRlc3RpbmF0aW9uLWF0b3AiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5z
dGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0
cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3Bl
cnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1Zh
bHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NU
ZXh0KSBpcyAiZGVzdGluYXRpb24tYXRvcCIKLQotVGVzdCB4b3IuCi1taXg6IHhvcjsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4JykpIGlzICJ4b3IiCi1QQVNTIG1peFByb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IG1peFByb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAieG9yIgotCi1CbGVuZCBtb2RlIGFuZCBjb21wb3NpdGUgdG9nZXRo
ZXIuCi1taXg6IHNjcmVlbiBzb3VyY2Utb3ZlcjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnbWl4JykpIGlzICJzY3JlZW4gc291cmNlLW92ZXIiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUg
aW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNv
bnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFBy
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENT
U1ZhbHVlLkNTU19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5j
c3NUZXh0KSBpcyAic2NyZWVuIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFs
dWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJzb3VyY2Utb3ZlciIKLQotQ29tcG9zaXRlIGFuZCBibGVuZCBtb2RlIHRvZ2V0aGVy
LgotbWl4OiBzb3VyY2Utb3ZlciBzY3JlZW47Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J21peCcpKSBpcyAic291cmNlLW92ZXIgc2NyZWVuIgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGlu
c3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25z
dHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5f
X3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9w
ZXJ0eVZhbHVlLmxlbmd0aCBpcyAyCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NW
YWx1ZS5DU1NfUFJJTUlUSVZFX1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3Nz
VGV4dCkgaXMgInNvdXJjZS1vdmVyIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NT
VmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJzY3JlZW4iCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLUNhcGl0YWxpemF0aW9uIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotCi1BbGwgdG9rZW5zIGNhcGl0YWxpemVkLgotbWl4OiBTQ1JFRU4gU09V
UkNFLU9WRVI7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ21peCcpKSBpcyAic2NyZWVu
IHNvdXJjZS1vdmVyIgotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgbWl4UHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1Zh
bHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmxlbmd0aCBp
cyAyCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfUFJJTUlUSVZF
X1ZBTFVFCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInNjcmVlbiIK
LVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19QUklNSVRJVkVfVkFM
VUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAic291cmNlLW92ZXIi
Ci0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVdoaXRlc3BhY2Ug
dGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUV4dHJh
IGxlYWRpbmcsIG1pZGRsZSwgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UuIAotbWl4OiAgICBzY3Jl
ZW4gICBzb3VyY2Utb3ZlciAgIDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnbWl4Jykp
IGlzICJzY3JlZW4gc291cmNlLW92ZXIiCi1QQVNTIG1peFByb3BlcnR5VmFsdWUgaW5zdGFuY2Vv
ZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9y
ID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBtaXhQcm9wZXJ0eVZhbHVlLl9fcHJvdG9f
XyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIG1peFByb3BlcnR5VmFs
dWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNT
U19QUklNSVRJVkVfVkFMVUUKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBp
cyAic2NyZWVuIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1BS
SU1JVElWRV9WQUxVRQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJz
b3VyY2Utb3ZlciIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01Q
TEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgt
YXQtcnVsZS1zeW50YXgvcGFyc2luZy1taXgtcHJvcGVydHktdmFsaWQuaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLW1peC1w
cm9wZXJ0eS12YWxpZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDgzOTY5
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1y
dWxlLXN5bnRheC9wYXJzaW5nLW1peC1wcm9wZXJ0eS12YWxpZC5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsMTMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hl
YWQ+Ci08Ym9keT4KLTxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+
PC9kaXY+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2lu
Zy1jb21tb24uanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5n
LW1peC1wcm9wZXJ0eS12YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1z
eW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNp
bmctcGFyYW1ldGVycy1wcm9wZXJ0eS1pbnZhbGlkLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMjE3YWU0Mi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXBy
b3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNTY5ICswLDAg
QEAKLVRlc3QgcGFyYW1ldGVycyBwcm9wZXJ0eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0
ZXIgYXQtcnVsZS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTnVtYmVyIHBhcmFtZXRlciB0ZXN0cy4K
LT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotVG9vIG1hbnkgcGFy
YW1ldGVyIHZhbHVlcy4KLXBhcmFtZXRlcnM6IG4gMSAyIDMgNCA1OwotUEFTUyBmaWx0ZXJBdFJ1
bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
cGFyYW1ldGVycycpIGlzIG51bGwKLQotSW52YWxpZCBwYXJhbWV0ZXIgdHlwZS4KLXBhcmFtZXRl
cnM6IG4gMS4wIDIuMCAndGV4dCc7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVs
bAotCi1ObyBwYXJhbWV0ZXIgZGVmaW5pdGlvbi4KLXBhcmFtZXRlcnM6IDsKLVBBU1MgZmlsdGVy
QXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIHBhcmFtZXRlciBkZWZpbml0aW9uIHdpdGgg
Y29tbWEuCi1wYXJhbWV0ZXJzOiAsOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gYmVmb3JlIHZhbGlkIHBhcmFtZXRlciBkZWZp
bnRpb24uCi1wYXJhbWV0ZXJzOiAsIG4gMTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMg
MAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBp
cyBudWxsCi0KLU5vIHBhcmFtZXRlciB2YWx1ZS4KLXBhcmFtZXRlcnM6IG47Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBwYXJhbWV0ZXIgdmFsdWUgd2l0aCBtdWx0
aXBsZSBwYXJhbWV0ZXJzLgotcGFyYW1ldGVyczogbjEsIG4yLCBuMzsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLUNvbG9yIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLQotTm8gcmdiIGNvbG9yIHZhbHVlcy4KLXBhcmFtZXRlcnM6IGMg
cmdiKCwsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIGhzbCBj
b2xvciB2YWx1ZXMuCi1wYXJhbWV0ZXJzOiBjIGhzbCgsLCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJh
bWV0ZXJzJykgaXMgbnVsbAotCi1IZXggd2l0aCA4IGNoYXJhY3RlcnMuCi1wYXJhbWV0ZXJzOiBj
ICNGRjAwMDBGRjsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUhleCB3
aXRoIDIgY2hhcmFjdGVyLgotcGFyYW1ldGVyczogYyAjRkY7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJh
bWV0ZXJzJykgaXMgbnVsbAotCi1SZ2JhIHdpdGggMyB2YWx1ZXMgYW5kIDIgY29tbWFzLgotcGFy
YW1ldGVyczogYyByZ2JhKDI1NSwgMCwgMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykg
aXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1UcmFu
c2Zvcm0gcGFyYW1ldGVyIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotCi1PbmUgaW52YWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24uCi1wYXJhbWV0ZXJzOiB0
IGludmFsaWQtcm90YXRlKDBkZWcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotTXVsdGlwbGUgaW52YWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb25zLgotcGFyYW1ldGVyczog
dCBpbnZhbGlkLXJvdGF0ZSgwZGVnKSBpbnZhbGlkLXBlcnNwZWN0aXZlKDApOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotSW52YWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24g
YmV0d2VlbiB2YWxpZCBvbmVzLgotcGFyYW1ldGVyczogdCByb3RhdGUoMGRlZykgaW52YWxpZC1y
b3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykg
aXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gYmV0d2VlbiBpbnZhbGlkIG9uZXMu
Ci1wYXJhbWV0ZXJzOiB0IGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIGludmFs
aWQtdHJhbnNsYXRlKDApOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQot
VmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uIHdpdGggdHJhaWxpbmcgY29tbWEuCi1wYXJhbWV0ZXJz
OiB0IHBlcnNwZWN0aXZlKDApLDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxs
Ci0KLUludmFsaWQgdHJhbnNmb3JtIHdpdGggdHJhaWxpbmcgY29tbWEuCi1wYXJhbWV0ZXJzOiB0
IGludmFsaWQtcm90YXRlKDBkZWcpLDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBu
dWxsCi0KLVZhbGlkIHRyYW5zZm9ybSB3aXRoIGludmFsaWQgY2hhcmFjdGVycwotcGFyYW1ldGVy
czogdCByb3RhdGUoMGRlZykgKi4tLDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBu
dWxsCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUFycmF5IHBh
cmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LQotRW1wdHkgYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KCk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdw
YXJhbWV0ZXJzJykgaXMgbnVsbAotCi1PbmUgY29tbWEgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBh
IGFycmF5KCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTXVsdGlw
bGUgY29tbWFzIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgsLCwpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTXVsdGlwbGUgY29tbWFzIHdpdGggYSB2YWx1
ZSBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoLCwxLCk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdw
YXJhbWV0ZXJzJykgaXMgbnVsbAotCi1PbmUgY29tbWEgZm9sbG93ZWQgYnkgYSBuZWdhdGl2ZSB2
YWx1ZSBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoLC00KTsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU9uZSBjb21tYSBmb2xsb3dlZCBieSBhIHZhbHVlIGlu
IGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgsNCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0
ZXJzJykgaXMgbnVsbAotCi1PbmUgbmVnYXRpdmUgdmFsdWUgZm9sbG93ZWQgYnkgYSBjb21tYSBp
biBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoLTQsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFt
ZXRlcnMnKSBpcyBudWxsCi0KLU9uZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5
LgotcGFyYW1ldGVyczogYSBhcnJheSg0LCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykg
aXMgbnVsbAotCi1WYWxpZCB2YWx1ZXMgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4KLXBh
cmFtZXRlcnM6IGEgYXJyYXkoMSwgMiwgMywgNCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpIGlzIG51bGwKLQotVmFsaWQgdmFsdWVzIGZvbGxvd2VkIGJ5IGEgbGV0dGVyIGluIGFycmF5
LgotcGFyYW1ldGVyczogYSBhcnJheSgxLCAyLCAzLCA0LCB4KTsKLVBBU1MgZmlsdGVyQXRSdWxl
LnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3Bh
cmFtZXRlcnMnKSBpcyBudWxsCi0KLVR3byBjb21tYXMgYXMgc2VwYXJhdG9yIGJldHdlZW4gdmFs
dWVzIGluIGFycmF5LgotcGFyYW1ldGVyczogYSBhcnJheSgxLCAyLCAsIDQpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTGVhZGluZyBjb21tYSBpbiBhcnJheS4KLXBh
cmFtZXRlcnM6IGEgYXJyYXkoLDEsIDIsIDMsIDQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpIGlzIG51bGwKLQotU2VtaWNvbG9uIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkuCi1wYXJh
bWV0ZXJzOiBhIGFycmF5KDE7IDI7IDM7IDQpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycp
IGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheS4KLXBhcmFtZXRlcnM6
IGEgYXJyYXkoMSAyIDMgNCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAot
Ci1TcGFjZSBzZXBhcmF0ZWQgdmFsdWVzIHdpdGggY29tbWEgdGVybWluYXRvciBpbiBhcnJheS4K
LXBhcmFtZXRlcnM6IGEgYXJyYXkoMSAyIDMgNCwpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBp
cyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpIGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEg
aW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KCwgMSAyIDMgNCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1OYU4gaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFy
cmF5KE5hTik7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1OYU4gYmV0
d2VlbiB2YWxpZCB2YWx1ZXMgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDEsIDIsIE5h
TiwgMyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1JbnZhbGlkIHZh
bHVlICdub25lJyBpbiBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkobm9uZSk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1JbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBp
biBhcnJheS4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMXB4KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFt
ZXRlcnMnKSBpcyBudWxsCi0KLUludmFsaWQgdmFsdWUgdW5pdCAnZGVnJyBpbiBhcnJheS4KLXBh
cmFtZXRlcnM6IGEgYXJyYXkoMWRlZyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMg
bnVsbAotCi1JbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBpbiBhcnJheSBhZnRlciB2YWxpZCB2YWx1
ZXMuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDEsIDIsIDMsIDRweCk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdw
YXJhbWV0ZXJzJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci1NYXQyIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLQotRW1wdHkgbWF0Mi4KLXBhcmFtZXRlcnM6IGEgbWF0MigpOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotVG9vIHZpZXcgYXJndW1lbnRzLgot
cGFyYW1ldGVyczogYSBtYXQyKDAsIDAsIDApOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycp
IGlzIG51bGwKLQotTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIo
LCwsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUVuZGluZyBjb21t
YXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMCwgMCwsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSBpcyBudWxsCi0KLUlkZW50cyBpbiBtYXQyIGZ1bmN0aW9uLgotcGFyYW1ldGVyczogYSBt
YXQyKDAsIDAsIGEsIGIpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQot
VG9vIG1hbnkgYXJndW1lbnRzLgotcGFyYW1ldGVyczogYSBtYXQyKDAsIDAsIDAsIDAsIDEpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gY29tbWFzLgotcGFyYW1l
dGVyczogYSBtYXQyKDEgMCAwIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51
bGwKLQotU29tZSBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMSwgMCwgMCAxKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUxlYWRpbmcgY29tbWFzLgotcGFyYW1l
dGVyczogYSBtYXQyKCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1
bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMg
bnVsbAotCi1ObyBsZW5ndGggdW5pdHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMXB4LCAwcHgsIDBw
eCwgMXB4KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIGRlZ3Jl
ZSB1bml0cy4KLXBhcmFtZXRlcnM6IGEgbWF0MigxZGVnLCAwZGVnLCAwZGVnLCAxZGVnKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5hTiBpbiBtYXQyLgotcGFyYW1l
dGVyczogYSBtYXQyKDEsIDAsIDAsIE5hTik7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENT
U1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykg
aXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NYXQz
IHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLQotRW1wdHkgbWF0My4KLXBhcmFtZXRlcnM6IGEgbWF0MygpOwotUEFTUyBmaWx0ZXJBdFJ1
bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
cGFyYW1ldGVycycpIGlzIG51bGwKLQotVG9vIHZpZXcgYXJndW1lbnRzLgotcGFyYW1ldGVyczog
YSBtYXQzKDAsIDAsIDAsIDApOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwK
LQotTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoLCwsLCwsLCws
LCwsLCwsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVS
X1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUVuZGluZyBj
b21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwsKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUlkZW50cyBpbiBtYXQzIGZ1bmN0aW9u
LgotcGFyYW1ldGVyczogYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIGEsIGIpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotVG9vIG1hbnkgYXJndW1lbnRzLgotcGFy
YW1ldGVyczogYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEsIDApOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gY29tbWFzLgotcGFyYW1ldGVyczogYSBt
YXQzKDEgMCAwIDAgMSAwIDAgMCAxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVs
ZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBu
dWxsCi0KLVNvbWUgY29tbWFzLgotcGFyYW1ldGVyczogYSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAg
MCAwIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJf
UlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTGVhZGluZyBj
b21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDMoLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIGxlbmd0aCB1bml0cy4KLXBh
cmFtZXRlcnM6IGEgbWF0MygxcHgsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwgMXB4KTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5vIGRlZ3JlZSB1bml0cy4KLXBhcmFt
ZXRlcnM6IGEgbWF0MygxZGVnLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAxZGVnKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5hTiBpbiBtYXQzLgotcGFyYW1ldGVy
czogYSBtYXQyKE5hTiwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVs
ZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdw
YXJhbWV0ZXJzJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci1NYXQ0IHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLQotRW1wdHkgbWF0NC4KLXBhcmFtZXRlcnM6IGEgbWF0NCgpOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotVG9vIHZpZXcgYXJndW1lbnRzLgot
cGFyYW1ldGVyczogYSBtYXQ0KDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuCi1w
YXJhbWV0ZXJzOiBhIG1hdDQoLCwsLCwsLCwsLCwsLCwsKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5
cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFt
ZXRlcnMnKSBpcyBudWxsCi0KLUVuZGluZyBjb21tYXMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMSwg
MCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwsKTsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUlkZW50cyBpbiBtYXQ0IGZ1bmN0aW9uLgotcGFyYW1l
dGVyczogYSBtYXQ0KDEsIDAsIDAsIDAsIDEsIDAsIDAsIGEsIGIpOwotUEFTUyBmaWx0ZXJBdFJ1
bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
cGFyYW1ldGVycycpIGlzIG51bGwKLQotVG9vIG1hbnkgYXJndW1lbnRzLgotcGFyYW1ldGVyczog
YSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAp
OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQot
UEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotTm8gY29tbWFzLgotcGFy
YW1ldGVyczogYSBtYXQ0KDEgMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwIDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQotU29tZSBjb21tYXMuCi1wYXJhbWV0ZXJz
OiBhIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCAwIDAgMCAxKTsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUxlYWRpbmcgY29tbWFzLgotcGFy
YW1ldGVyczogYSBtYXQ0KCwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwg
MCwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9S
VUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1ObyBsZW5ndGgg
dW5pdHMuCi1wYXJhbWV0ZXJzOiBhIG1hdDQoMXB4LCAwLCAwLCAwLCAwLCAxcHgsIDAsIDAsIDAs
IDAsIDFweCwgMCwgMCwgMCwgMCwgMXB4KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NT
UnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMg
MAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBp
cyBudWxsCi0KLU5vIGRlZ3JlZSB1bml0cy4KLXBhcmFtZXRlcnM6IGEgbWF0NCgxZGVnLCAwLCAw
LCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAxZGVnLCAwLCAwLCAwLCAwLCAxZGVnKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLU5hTiBpbiBtYXQ0LgotcGFyYW1ldGVy
czogYSBtYXQ0KE5hTiwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxF
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1NaXhpbmcgcGFyYW1ldGVyIHR5cGVzLgotPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1OdW1iZXIgcGFyYW1ldGVy
IHdpdGggaGV4IGNvbG9yLgotcGFyYW1ldGVyczogbjEgMSAyICNGRjAwMDA7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1OdW1iZXIgcGFyYW1ldGVyIHdpdGggY29sb3Ig
a2V5d29yZC4KLXBhcmFtZXRlcnM6IG4xIDEgMiByZWQ7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBl
IGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0
ZXJzJykgaXMgbnVsbAotCi1OdW1iZXIgcGFyYW1ldGVyIHdpdGggcmdiIGNvbG9yLgotcGFyYW1l
dGVyczogbjEgMSAyIHJnYigyNTUsIDAsIDApOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycp
IGlzIG51bGwKLQotQ29sb3Igd2l0aCBudW1iZXIgcGFyYW1ldGVyLgotcGFyYW1ldGVyczogYSBy
Z2IoMjU1LCAwLCAwKSAxOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlzIG51bGwKLQot
Q29sb3IgaW4gYXJyYXkuCi1wYXJhbWV0ZXJzOiBhIGFycmF5KDAsIHJnYigyNTUsIDAsIDApKTsK
LVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSBpcyBudWxsCi0KLUNvbG9yIGFuZCBhcnJheS4K
LXBhcmFtZXRlcnM6IGEgYXJyYXkoMCwgMCkgcmdiKDI1NSwgMCwgMCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIHRyYW5zZm9ybSB2YWx1ZXMuCi1w
YXJhbWV0ZXJzOiBhIHJvdGF0ZSg0NWRlZykgcmdiKDI1NSwgMCwgMCk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciB3aXRoIHRyYW5zZm9ybSB2YWx1ZXMuCi1w
YXJhbWV0ZXJzOiBhIHJnYigyNTUsIDAsIDApIHJvdGF0ZSg0NWRlZyk7Ci1QQVNTIGZpbHRlckF0
UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykgaXMgbnVsbAotCi1Db2xvciBhZnRlciBhcnJheSB2YWx1ZXMuCi1wYXJh
bWV0ZXJzOiBhIGFycmF5KDApIHJnYigyNTUsIDAsIDApOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlw
ZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxl
bmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1l
dGVycycpIGlzIG51bGwKLQotQ29sb3Igd2l0aCBtYXQyLgotcGFyYW1ldGVyczogYSByZ2IoMjU1
LCAwLCAwKSBtYXQyKDAsIDAsIDAsIDApOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpIGlz
IG51bGwKLQotbWF0MiB3aXRoIG1hdDMuCi1wYXJhbWV0ZXJzOiBhIG1hdDIoMSwgMCwgMCwgMSkg
bWF0MygwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUg
aXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRl
cnMnKSBpcyBudWxsCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09N
UExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRo
LWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctcGFyYW1ldGVycy1wcm9wZXJ0eS1pbnZhbGlkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFy
c2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZmQ1ZmM0NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5
LWludmFsaWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3JpcHRp
b24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3Njcmlw
dC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQu
anMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctcGFyYW1l
dGVycy1wcm9wZXJ0eS12YWxpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5
LXZhbGlkLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2VlNzBi
YS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLWV4cGVjdGVkLnR4
dAorKysgL2Rldi9udWxsCkBAIC0xLDQ0MSArMCwwIEBACi1UZXN0IHBhcmFtZXRlcnMgcHJvcGVy
dHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1bGUuCi0KLU9uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KLQotCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLU51bWJlciBwYXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0KLUludGVnZXIgcGFyYW1ldGVycy4KLXBhcmFtZXRlcnM6IG4xIDEs
IG4yIDIgMywgbjMgMyA0IDUsIG40IDQgNSA2IDc7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSkgaXMgIm4xIDEsIG4yIDIgMywgbjMgMyA0IDUsIG40IDQgNSA2IDci
Ci1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlz
IHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1Zh
bHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9
PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyA0Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1
ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlz
ICJuMSAxIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVF
X0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibjIgMiAzIgot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibjMgMyA0IDUiCi1QQVNTIHN1
YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1v
dmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJuNCA0IDUgNiA3IgotCi1GbG9hdCBwYXJh
bWV0ZXJzLgotcGFyYW1ldGVyczogbjEgMS4xLCBuMiAyLjIgMy4zLCBuMyAzLjEgNC4xIDUuMSwg
bjQgNC4xIDUuMiA2LjMgNy40OwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0
ZXJzJykpIGlzICJuMSAxLjEsIG4yIDIuMiAzLjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEgNS4y
IDYuMyA3LjQiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRl
cnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyA0Ci1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJuMSAxLjEiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1
ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlz
ICJuMiAyLjIgMy4zIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NT
X1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibjMg
My4xIDQuMSA1LjEiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1Nf
VkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJuNCA0
LjEgNS4yIDYuMyA3LjQiCi0KLVBhcmFtZXRlciBuYW1lIHNhbWUgYXMgQ1NTIGtleXdvcmQuCi1w
YXJhbWV0ZXJzOiBiYWNrZ3JvdW5kIDAgMSAwIDE7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSkgaXMgImJhY2tncm91bmQgMCAxIDAgMSIKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUK
LVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3Qu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNU
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgImJhY2tncm91bmQgMCAx
IDAgMSIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotVHJhbnNm
b3JtIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLQotVHJhbnNmb3JtIHBhcmFtZXRlciB3aXRoIG9uZSB0cmFuc2Zvcm0gZnVuY3Rpb24u
Ci1wYXJhbWV0ZXJzOiB0IHJvdGF0ZSgwZGVnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgncGFyYW1ldGVycycpKSBpcyAidCByb3RhdGUoMGRlZykiCi1QQVNTIHBhcmFtZXRlcnNQcm9w
ZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ0IHJvdGF0ZSgwZGVnKSIKLQot
VHJhbnNmb3JtIHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHRyYW5zZm9ybSBmdW5jdGlvbnMuCi1w
YXJhbWV0ZXJzOiB0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFu
c2xhdGUoMHB4LCAwcHgpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJz
JykpIGlzICJ0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xh
dGUoMHB4LCAwcHgpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENT
U1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVj
dG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1
ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJh
bWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5
cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1
ZS5jc3NUZXh0KSBpcyAidCByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2NhbGUoMCwgMCkg
dHJhbnNsYXRlKDBweCwgMHB4KSIKLQotTXVsaXRwbGUgdHJhbnNmb3JtIHBhcmFtZXRlcnMuCi1w
YXJhbWV0ZXJzOiB0MSByb3RhdGUoMGRlZyksIHQyIHJvdGF0ZSgwZGVnKTsKLVBBU1MgZmlsdGVy
QXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAidDEgcm90YXRlKDBkZWcpLCB0MiBy
b3RhdGUoMGRlZykiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0
b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVl
Ll9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFt
ZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAyCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVl
LmNzc1RleHQpIGlzICJ0MSByb3RhdGUoMGRlZykiCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVl
LmNzc1RleHQpIGlzICJ0MiByb3RhdGUoMGRlZykiCi0KLT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLUFycmF5IHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotQXJyYXkgcGFyYW1ldGVyIHdpdGggbmFtZSAn
YXJyYXknLgotcGFyYW1ldGVyczogYXJyYXkgYXJyYXkoMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImFycmF5IGFycmF5KDEpIgotUEFTUyBwYXJhbWV0
ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1
ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlz
dC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJ
U1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYXJyYXkgYXJyYXko
MSkiCi0KLUFycmF5IHBhcmFtZXRlciB3aXRoIG9uZSBwb3NpdGl2ZSBpbnRlZ2VyLgotcGFyYW1l
dGVyczogYSBhcnJheSgxKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVy
cycpKSBpcyAiYSBhcnJheSgxKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFu
Y2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBB
U1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3Nz
VmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViVmFsdWUuY3NzVGV4dCkgaXMgImEgYXJyYXkoMSkiCi0KLUFycmF5IHBhcmFtZXRlciB3aXRo
IG9uZSBuZWdhdGl2ZSBmbG9hdC4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoLTEuMDEpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJhIGFycmF5KC0xLjAxKSIK
LVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMg
dHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09
PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5
VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVl
LkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMg
ImEgYXJyYXkoLTEuMDEpIgotCi1BcnJheSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBwb3NpdGl2
ZSBpbnRlZ2Vycy4KLXBhcmFtZXRlcnM6IGEgYXJyYXkoMSwgMiwgMywgNCwgNSk7Ci1QQVNTIGZp
bHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxl
RGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImEgYXJyYXkoMSwgMiwgMywg
NCwgNSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJv
dG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBD
U1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJhIGFycmF5KDEsIDIsIDMsIDQsIDUpIgotCi1BcnJheSBwYXJhbWV0ZXIgd2l0aCBt
dWx0aXBsZSBzaWduZWQgZmxvYXRzLgotcGFyYW1ldGVyczogYSBhcnJheSgxLCAtMi4yLCAzLjE0
LCAwLjQsIDUpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlz
ICJhIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJhIGFycmF5KDEsIC0yLjIsIDMuMTQs
IDAuNCwgNSkiCi0KLU11bHRpcGxlIGFycmF5IHBhcmFtZXRlcnMuCi1wYXJhbWV0ZXJzOiBhMSBh
cnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCBhMiBhcnJheSgxLCAyLCAzKTsKLVBBU1MgZmls
dGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAiYTEgYXJyYXkoMSwgLTIuMiwg
My4xNCwgMC40LCA1KSwgYTIgYXJyYXkoMSwgMiwgMykiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAyCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJhMSBhcnJheSgxLCAtMi4yLCAzLjE0
LCAwLjQsIDUpIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZB
TFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYTIgYXJy
YXkoMSwgMiwgMykiCi0KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LUNvbG9yIHBhcmFtZXRlciB0ZXN0cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLQotSGV4IGNvbG9yLgotcGFyYW1ldGVyczogYyAjMDBGRjAwOwotUEFTUyBmaWx0
ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJjIHJnYigwLCAyNTUsIDApIgot
UEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1
ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09
IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlW
YWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUu
Q1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAi
YyByZ2IoMCwgMjU1LCAwKSIKLQotQ29sb3Iga2V5d29yZC4KLXBhcmFtZXRlcnM6IGMgZ3JlZW47
Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHls
ZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkgaXMgImMgcmdiKDAs
IDEyOCwgMCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFs
dWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9f
cHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRl
cnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBp
cyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJjIHJnYigwLCAxMjgsIDApIgotCi1Db2xvciByZ2IgZnVuY3Rpb24uCi1wYXJh
bWV0ZXJzOiBjIHJnYigwLCAxMjgsIDApOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdw
YXJhbWV0ZXJzJykpIGlzICJjIHJnYigwLCAxMjgsIDApIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVy
dHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBw
YXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5
cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYyByZ2IoMCwgMTI4LCAwKSIKLQot
Q29sb3IgaHNsIGZ1bmN0aW9uLgotcGFyYW1ldGVyczogYyBoc2woMTIwLCAxMDAlLCA1MCUpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJjIHJnYigwLCAy
NTUsIDApIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09
PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3By
b3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMg
Q1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NU
ZXh0KSBpcyAiYyByZ2IoMCwgMjU1LCAwKSIKLQotQ29sb3IgcmdiYSBmdW5jdGlvbi4KLXBhcmFt
ZXRlcnM6IGMgcmdiYSgwLCAyNTUsIDAsIDAuMik7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3BhcmFtZXRlcnMnKSkgaXMgImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiCi1QQVNTIHBhcmFt
ZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
cGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVM
aXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVf
TElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJjIHJnYmEoMCwg
MjU1LCAwLCAwLjIpIgotCi1Db2xvciBoc2xhIGZ1bmN0aW9uLgotcGFyYW1ldGVyczogYyBoc2xh
KDEyMCwgMTAwJSwgNTAlLCAwLjIpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJh
bWV0ZXJzJykpIGlzICJjIHJnYmEoMCwgMjU1LCAwLCAwLjIpIgotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRl
cnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFT
UyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90
b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAiYyByZ2JhKDAsIDI1NSwgMCwg
MC4yKSIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTWF0MiBw
YXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0KLU1hdDIgcGFyYW1ldGVyLgotcGFyYW1ldGVyczogbSBtYXQyKDEsIDAsIDAsIDEpOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJtIG1hdDIoMSwgMCwg
MCwgMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVM
aXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJv
dG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQ
cm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBD
U1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1Rl
eHQpIGlzICJtIG1hdDIoMSwgMCwgMCwgMSkiCi0KLU1hdDIgcGFyYW1ldGVyIHdpdGggbmVnYXRp
dmUgdmFsdWVzLgotcGFyYW1ldGVyczogbSBtYXQyKC0xLCAtMSwgLTEsIC0xKTsKLVBBU1MgZmls
dGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAibSBtYXQyKC0xLCAtMSwgLTEs
IC0xKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxp
c3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0g
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90
b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENT
U1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4
dCkgaXMgIm0gbWF0MigtMSwgLTEsIC0xLCAtMSkiCi0KLU1hdDIgcGFyYW1ldGVyIHdpdGggbmVn
YXRpdmUgYW5kIHBvc2l0aXZlIHZhbHVlcy4KLXBhcmFtZXRlcnM6IG0gbWF0MigtMSwgMSwgMSwg
LTEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVM
RQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJtIG1h
dDIoLTEsIDEsIDEsIC0xKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2Vv
ZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25z
dHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5
VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
cGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFs
dWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
VmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0MigtMSwgMSwgMSwgLTEpIgotCi1NYXQyIHBhcmFtZXRl
ciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuCi1wYXJhbWV0ZXJzOiBtIG1hdDIoMSwgLTIu
MiwgMy4xNCwgMC40KTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRf
RklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1v
dmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycp
KSBpcyAibSBtYXQyKDEsIC0yLjIsIDMuMTQsIDAuNCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtIG1hdDIoMSwgLTIuMiwgMy4xNCwg
MC40KSIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTWF0MyBw
YXJhbWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0KLU1hdDMgcGFyYW1ldGVyLgotcGFyYW1ldGVyczogbSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlz
ICJtIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9w
ZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtIG1hdDMoMSwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMSkiCi0KLU1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgdmFsdWVzLgot
cGFyYW1ldGVyczogbSBtYXQzKC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVE
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJtIG1hdDMoLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlw
ZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtIG1hdDMoLTEsIC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSkiCi0KLU1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5k
IHBvc2l0aXZlIHZhbHVlcy4KLXBhcmFtZXRlcnM6IG0gbWF0MygtMSwgMSwgMSwgLTEsIC0xLCAx
LCAxLCAtMSwgMSk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJ
TFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSkg
aXMgIm0gbWF0MygtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgMSkiCi1QQVNTIHBhcmFtZXRl
cnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFy
YW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0
LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElT
VAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtIG1hdDMoLTEsIDEs
IDEsIC0xLCAtMSwgMSwgMSwgLTEsIDEpIgotCi1NYXQzIHBhcmFtZXRlciB3aXRoIG11bHRpcGxl
IHNpZ25lZCBmbG9hdHMuCi1wYXJhbWV0ZXJzOiBtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAx
LCAtMi4yLCAzLjE0LCAwLjQsIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJh
bWV0ZXJzJykpIGlzICJtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAw
LjQsIDEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVl
TGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmNvbnN0cnVjdG9yID09
PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5fX3By
b3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMg
Q1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NU
ZXh0KSBpcyAibSBtYXQzKDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAx
KSIKLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotTWF0NCBwYXJh
bWV0ZXIgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0K
LU1hdDQgcGFyYW1ldGVyLgotcGFyYW1ldGVyczogbSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCdwYXJhbWV0ZXJzJykpIGlzICJtIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMCwgMSkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNl
b2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29u
c3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1Zh
bHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlZhbHVlLmNzc1RleHQpIGlzICJtIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMCwgMSkiCi0KLU1hdDQgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgdmFsdWVz
LgotcGFyYW1ldGVyczogbSBtYXQ0KC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgncGFyYW1ldGVycycpKSBpcyAibSBtYXQ0KC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3Bl
cnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJz
UHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mg
cGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgIm0gbWF0NCgtMSwgLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkiCi0KLU1h
dDQgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5kIHBvc2l0aXZlIHZhbHVlcy4KLXBhcmFtZXRl
cnM6IG0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAtMSwg
MSwgMSwgLTEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlz
ICJtIG1hdDQoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEs
IDEsIC0xKSIKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1
ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5jb25zdHJ1Y3RvciA9
PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuX19w
cm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1MgcGFyYW1ldGVy
c1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlz
IENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3Nz
VGV4dCkgaXMgIm0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0x
LCAtMSwgMSwgMSwgLTEpIgotCi1NYXQ0IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNpZ25lZCBm
bG9hdHMuCi1wYXJhbWV0ZXJzOiBtIG1hdDQoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAz
LjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40KTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycpKSBpcyAibSBtYXQ0KDEsIC0yLjIs
IDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0y
LjIsIDMuMTQsIDAuNCkiCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVlIGluc3RhbmNlb2Yg
Q1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1MgcGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUuY29uc3Ry
dWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZh
bHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHBh
cmFtZXRlcnNQcm9wZXJ0eVZhbHVlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVl
VHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZh
bHVlLmNzc1RleHQpIGlzICJtIG1hdDQoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0
LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40KSIKLQotPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQ29tYmluZWQgcGFyYW1ldGVyIHRl
c3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1OdW1iZXIg
cGFyYW1ldGVyLCBjb2xvciBwYXJhbWV0ZXIsIHRyYW5zZm9ybSBwYXJhbWV0ZXIsIG1hdHJpeCBw
YXJhbWV0ZXJzIGFuZCBhcnJheSBwYXJhbWV0ZXIuCi1wYXJhbWV0ZXJzOiBuIDEsIGMgcmdiKDAs
IDEyOCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAsIDEpLCBtMiBtYXQzKDEs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFycmF5KDEpOwotUEFTUyBmaWx0ZXJBdFJ1bGUu
dHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdwYXJhbWV0ZXJzJykpIGlzICJuIDEsIGMgcmdiKDAsIDEyOCwgMCksIHQgcm90
YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAsIDEpLCBtMiBtYXQzKDEsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAs
IDAsIDAsIDEpLCBhIGFycmF5KDEpIgotUEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZSBpbnN0
YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVl
LmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBwYXJhbWV0ZXJzUHJv
cGVydHlWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQot
UEFTUyBwYXJhbWV0ZXJzUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgNwotUEFTUyBzdWJWYWx1ZS5j
c3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAibiAxIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5j
c3NUZXh0KSBpcyAiYyByZ2IoMCwgMTI4LCAwKSIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBl
IGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUu
Y3NzVGV4dCkgaXMgInQgcm90YXRlKDBkZWcpIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUg
aXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5j
c3NUZXh0KSBpcyAibTEgbWF0MigxLCAwLCAwLCAxKSIKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVU
eXBlIGlzIENTU1ZhbHVlLkNTU19WQUxVRV9MSVNUCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFs
dWUuY3NzVGV4dCkgaXMgIm0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkiCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfVkFMVUVfTElTVAotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJtMyBtYXQ0KDEsIDAsIDAsIDAsIDAs
IDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpIgotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1
ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX1ZBTFVFX0xJU1QKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJW
YWx1ZS5jc3NUZXh0KSBpcyAiYSBhcnJheSgxKSIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3Bl
cnR5LXZhbGlkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LXZhbGlkLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE0OGQzZDEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctcGFyYW1l
dGVycy1wcm9wZXJ0eS12YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAot
PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlk
PSJkZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNy
Yz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVy
dHktdmFsaWQuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNp
bmctc3JjLXByb3BlcnR5LWludmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctc3JjLXByb3BlcnR5LWlu
dmFsaWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzMGI4OGNk
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1y
dWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLWV4cGVjdGVkLnR4dAorKysg
L2Rldi9udWxsCkBAIC0xLDE2NSArMCwwIEBACi1UZXN0IHNyYyBwcm9wZXJ0eSBwYXJzaW5nIGlu
IHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgotCi0KLQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotVVJMIHRl
c3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1ObyBwcm9w
ZXJ0eSB2YWx1ZS4KLXNyYzogOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Pbmx5
IGEgc2luZ2xlIGNvbW1hLgotc3JjOiAsOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NS
dWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAot
Ci1Pbmx5IHR3byBjb21tYXMuCi1zcmM6ICwgLDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51
bGwKLQotSWRlbnRpZmllciBpbnN0ZWFkIG9mIFVSTC4KLXNyYzogdmVydGV4LXNoYWRlcjsKLVBB
U1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mg
c3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotSWRlbnRpZmllciB3aXRoIGZvcm1hdCBpbnN0
ZWFkIG9mIFVSTCB3aXRoIGZvcm1hdC4KLXNyYzogdmVydGV4LXNoYWRlciBmb3JtYXQoJ3gtc2hh
ZGVyL3gtdmVydGV4Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lU
X0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLUxvY2FsIGZ1
bmN0aW9uIGluc3RlYWQgb2YgVVJMIGZ1bmN0aW9uLgotc3JjOiBsb2NhbChzaGFkZXIudnMpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1Gb3JtYXQgZnVuY3Rpb24gdGVzdHMuCi09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUlkZW50aWZpZXIgaW5zdGVhZCBvZiBmb3JtYXQg
ZnVuY3Rpb24uCi1zcmM6IHVybChzaGFkZXIudnMpIHZlcnRleC1zaGFkZXI7Ci1QQVNTIGZpbHRl
ckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdzcmMnKSBpcyBudWxsCi0KLVN0cmluZyBpbnN0ZWFkIG9mIGZvcm1hdCBmdW5jdGlvbi4K
LXNyYzogdXJsKHNoYWRlci52cykgJ3gtc2hhZGVyL3gtdmVydGV4JzsKLVBBU1MgZmlsdGVyQXRS
dWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
J3NyYycpIGlzIG51bGwKLQotRm9ybWF0IGZ1bmN0aW9uIG1pc3NwZWxsZWQuCi1zcmM6IHVybChz
aGFkZXIudnMpIGZybXQoJ3gtc2hhZGVyL3gtdmVydGV4Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50
eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMn
KSBpcyBudWxsCi0KLUZvcm1hdCBmdW5jdGlvbiBlbXB0eS4KLXNyYzogdXJsKHNoYWRlci52cykg
Zm9ybWF0KCk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRF
Ul9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLUZvcm1hdCBmdW5jdGlv
biB3aXRoIHNpbmdsZSBpZGVudGlmZXIgYXJndW1lbnQuCi1zcmM6IHVybChzaGFkZXIudnMpIGZv
cm1hdCh2ZXJ0ZXgtc2hhZGVyKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotRm9y
bWF0IGZ1bmN0aW9uIHdpdGggc2luZ2xlIG51bWJlciBhcmd1bWVudC4KLXNyYzogdXJsKHNoYWRl
ci52cykgZm9ybWF0KDApOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Gb3JtYXQg
ZnVuY3Rpb24gd2l0aCBtdWx0aXBsZSBzcGFjZS1zZXBhcmF0ZWQgaWRlbnRpZmVyIGFyZ3VtZW50
cy4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KHZlcnRleC1zaGFkZXIgZnJhZ21lbnQtc2hh
ZGVyKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotRm9ybWF0IGZ1bmN0aW9uIHdp
dGggbXVsdGlwbGUgY29tbWEtc2VwYXJhdGVkIGlkZW50aWZlciBhcmd1bWVudHMuCi1zcmM6IHVy
bChzaGFkZXIudnMpIGZvcm1hdCh2ZXJ0ZXgtc2hhZGVyLGZyYWdtZW50LXNoYWRlcik7Ci1QQVNT
IGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi0KLUZvcm1hdCBmdW5jdGlvbiB3aXRoIG11bHRpcGxl
IHNwYWNlLXNlcGFyYXRlZCBzdHJpbmcgYXJndW1lbnRzLgotc3JjOiB1cmwoc2hhZGVyLnZzKSBm
b3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyAneC1zaGFkZXIveC1mcmFnbWVudCcpOwotUEFTUyBm
aWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHls
ZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Gb3JtYXQgZnVuY3Rpb24gd2l0aCBtdWx0aXBsZSBj
b21tYS1zZXBhcmF0ZWQgc3RyaW5nIGFyZ3VtZW50cy4KLXNyYzogdXJsKHNoYWRlci52cykgZm9y
bWF0KCd4LXNoYWRlci94LXZlcnRleCcsJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKTsKLVBBU1MgZmls
dGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVE
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotTXVsdGlwbGUgdmFsaWQgZm9ybWF0IGZ1bmN0aW9ucy4K
LXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIGZvcm1hdCgn
eC1zaGFkZXIveC1mcmFnbWVudCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxl
LldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1QdW5jdHVhdGlvbiB0ZXN0
cy4KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotTGVhZGluZyBj
b21tYSBiZWZvcmUgZmlyc3QgVVJMLgotc3JjOiAsIHVybChzaGFkZXIudnMpIGZvcm1hdCgneC1z
aGFkZXIveC12ZXJ0ZXgnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotQ29tbWEg
YmV0d2VlbiBVUkwgYW5kIGZvcm1hdC4KLXNyYzogdXJsKHNoYWRlci52cyksIGZvcm1hdCgneC1z
aGFkZXIveC12ZXJ0ZXgnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotVHJhaWxp
bmcgY29tbWEgYWZ0ZXIgZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtdmVydGV4JyksOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJ
VF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0
eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Ud28gY29t
bWFzIGJldHdlZW4gVVJMcy4KLXNyYzogdXJsKHNoYWRlci52cyksLHVybChzaGFkZXIuZnMpOwot
UEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFT
UyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24uZ2V0
UHJvcGVydHlWYWx1ZSgnc3JjJykgaXMgbnVsbAotCi1Ud28gY29tbWFzIGJldHdlZW4gVVJMcyB3
aXRoIGZvcm1hdC4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRl
eCcpLCx1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJ3NyYycpIGlzIG51bGwKLQotTm8gY29tbWEgYmV0d2VlbiBVUkxzLgotc3JjOiB1
cmwoc2hhZGVyLnZzKSB1cmwoc2hhZGVyLmZzKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMg
Q1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMAotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3NyYycpIGlzIG51
bGwKLQotTm8gY29tbWEgYmV0d2VlbiBVUkxzIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVy
LnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4
LXNoYWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlzIENTU1J1bGUu
V0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1Mgc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSBpcyBudWxsCi1QQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3Bh
cnNpbmctc3JjLXByb3BlcnR5LWludmFsaWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdhMjVjMjEuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3Bh
cnNpbmctc3JjLXByb3BlcnR5LWludmFsaWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEzICsw
LDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+
Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNj
cmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpz
Ij48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy1zcmMtcHJvcGVy
dHktaW52YWxpZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFy
c2luZy1zcmMtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctc3JjLXByb3BlcnR5LXZh
bGlkLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGNiNDRmNC4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVs
ZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsMjY5ICswLDAgQEAKLVRlc3Qgc3JjIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhl
IEAtd2Via2l0LWZpbHRlciBhdC1ydWxlLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0K
LQotCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1VUkxzIHdpdGhv
dXQgZm9ybWF0IHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotCi1PbmUgVVJMIHdpdGhvdXQgZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZzKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykpIGlzICJ1cmwoc2hhZGVyLnZzKSIKLVBBU1Mg
c3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHNy
Y1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNT
IHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlz
IHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZSBp
bnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09
IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5w
cm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUu
Q1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwo
c2hhZGVyLnZzKSIKLQotVHdvIFVSTHMgd2l0aG91dCBmb3JtYXQuCi1zcmM6IHVybChzaGFkZXIu
dnMpLCB1cmwoc2hhZGVyLmZzKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykp
IGlzICJ1cmwoc2hhZGVyLnZzKSwgdXJsKHNoYWRlci5mcykiCi1QQVNTIHNyY1Byb3BlcnR5VmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVl
LmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZh
bHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHNy
Y1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NW
YWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0
cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci52cykiCi1Q
QVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5j
b25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18g
PT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlw
ZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3Nz
VGV4dCkgaXMgInVybChzaGFkZXIuZnMpIgotCi1UaHJlZSBVUkxzIHdpdGhvdXQgZm9ybWF0Lgot
c3JjOiB1cmwoc2hhZGVyLnZzKSwgdXJsKHNoYWRlci5mcyksIHVybChzaGFkZXIzKTsKLVBBU1Mg
ZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5
bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykpIGlzICJ1cmwoc2hhZGVyLnZzKSwgdXJsKHNo
YWRlci5mcyksIHVybChzaGFkZXIzKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMwotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUK
LVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3Vi
VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJW
YWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyLnZzKSIKLVBBU1Mgc3ViVmFsdWUg
aW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09
PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVl
LkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJs
KHNoYWRlci5mcykiCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQot
UEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJW
YWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZh
bHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIzKSIKLQotPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotVVJMcyB3aXRoIGZvcm1hdCB0ZXN0cy4KLT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotT25lIFVSTCB3aXRoIGZvcm1h
dC4KLXNyYzogdXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpOwotUEFT
UyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRQotUEFTUyBz
dHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChzaGFkZXIudnMpIGZvcm1h
dCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3Ig
PT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1
ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUK
LVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3Vi
VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJW
YWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNl
VVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVy
L3gtdmVydGV4JykiCi0KLVR3byBVUkxzIHdpdGggZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZz
KSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1z
aGFkZXIveC1mcmFnbWVudCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldF
QktJVF9GSUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkg
aXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRl
ci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiCi1QQVNTIHNyY1Byb3BlcnR5VmFs
dWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZhbHVl
LmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZh
bHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHNy
Y1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NW
YWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0
cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci52cykgZm9y
bWF0KCd4LXNoYWRlci94LXZlcnRleCcpIgotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1Zh
bHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRy
dWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1
ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyLmZzKSBmb3Jt
YXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIKLQotVGhyZWUgVVJMcyB3aXRoIGZvcm1hdC4KLXNy
YzogdXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpLCB1cmwoc2hhZGVy
LmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpIGZvcm1hdCgn
dW5rbm93bicpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVybChz
aGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcykgZm9y
bWF0KCd4LXNoYWRlci94LWZyYWdtZW50JyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24n
KSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVl
Ci1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0
cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJv
dG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwotUEFTUyBz
dWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3Ry
dWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBD
U1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMg
Q1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQp
IGlzICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiCi1QQVNTIHN1
YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENT
U1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBD
U1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkg
aXMgInVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIgotUEFTUyBz
dWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3Ry
dWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBD
U1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMg
Q1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQp
IGlzICJ1cmwoc2hhZGVyMykgZm9ybWF0KCd1bmtub3duJykiCi0KLT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLU1peGVkIFVSTHMgd2l0aCBhbmQgd2l0aG91dCBmb3Jt
YXQgdGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLVRo
cmVlIFVSTHMuIE1pZGRsZSBVUkwgd2l0aG91dCBmb3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMp
IGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcyksIHVybChzaGFkZXIz
KSBmb3JtYXQoJ3Vua25vd24nKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5X
RUJLSVRfRklMVEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFT
UyByZW1vdmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykp
IGlzICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFk
ZXIuZnMpLCB1cmwoc2hhZGVyMykgZm9ybWF0KCd1bmtub3duJykiCi1QQVNTIHNyY1Byb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHNyY1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDMKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBp
cyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlz
IHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00K
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci52cykg
Zm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIgotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENT
U1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlz
IHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMg
dHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyLmZzKSIK
LVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVl
LmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9f
XyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVU
eXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5j
c3NUZXh0KSBpcyAidXJsKHNoYWRlcjMpIGZvcm1hdCgndW5rbm93bicpIgotCi1UaHJlZSBVUkxz
LiBGaXJzdCBhbmQgbGFzdCBVUkxzIHdpdGhvdXQgZm9ybWF0Lgotc3JjOiB1cmwoc2hhZGVyLnZz
KSwgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JyksIHVybChzaGFk
ZXIzKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JV
TEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykpIGlzICJ1cmwoc2hhZGVy
LnZzKSwgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JyksIHVybChz
aGFkZXIzKSIKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBp
cyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlz
dCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxp
c3QucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMwot
UEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUu
Y29uc3RydWN0b3IgPT09IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19f
ID09PSBDU1NWYWx1ZS5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5
cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNz
c1RleHQpIGlzICJ1cmwoc2hhZGVyLnZzKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NW
YWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0
cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykgZm9y
bWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NT
VmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMg
dHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0
cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIzKSIKLQot
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotQ2FwaXRhbGl6YXRpb24g
dGVzdHMuCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUFsbCB0
b2tlbnMgY2FwaXRhbGl6ZWQuCi1zcmM6IFVSTChTSEFERVIuVlMpIEZPUk1BVCgnWC1TSEFERVIv
WC1WRVJURVgnKTsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVC
YXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykpIGlzICJ1cmwo
U0hBREVSLlZTKSBmb3JtYXQoJ1gtU0hBREVSL1gtVkVSVEVYJykiCi1QQVNTIHNyY1Byb3BlcnR5
VmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0eVZh
bHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZUxpc3QgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0
eVZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWVMaXN0LnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHNyY1Byb3BlcnR5VmFsdWUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBD
U1NWYWx1ZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBp
cyB0cnVlCi1QQVNTIHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlz
IHRydWUKLVBBU1Mgc3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00K
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKFNIQURFUi5WUykg
Zm9ybWF0KCdYLVNIQURFUi9YLVZFUlRFWCcpIgotCi09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci1XaGl0ZXNwYWNlIHRlc3RzLgotPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotCi1FeHRyYSBsZWFkaW5nLCBtaWRkbGUsIGFuZCB0cmFpbGlu
ZyB3aGl0ZXNwYWNlLiAKLXNyYzogICAgdXJsKHNoYWRlci52cykgICBmb3JtYXQoJ3gtc2hhZGVy
L3gtdmVydGV4JykgICAsICAgdXJsKHNoYWRlci5mcykgICBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJh
Z21lbnQnKSAgIDsKLVBBU1MgZmlsdGVyQXRSdWxlLnR5cGUgaXMgQ1NTUnVsZS5XRUJLSVRfRklM
VEVSX1JVTEUKLVBBU1Mgc3R5bGVEZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVC
YXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnc3JjJykpIGlzICJ1cmwo
c2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZv
cm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIgotUEFTUyBzcmNQcm9wZXJ0eVZhbHVlIGluc3Rh
bmNlb2YgQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5jb25zdHJ1
Y3RvciA9PT0gQ1NTVmFsdWVMaXN0IGlzIHRydWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5fX3By
b3RvX18gPT09IENTU1ZhbHVlTGlzdC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzcmNQcm9wZXJ0
eVZhbHVlLmxlbmd0aCBpcyAyCi1QQVNTIHN1YlZhbHVlIGluc3RhbmNlb2YgQ1NTVmFsdWUgaXMg
dHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NTVmFsdWUgaXMgdHJ1ZQotUEFT
UyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3RvdHlwZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1NfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1z
aGFkZXIveC12ZXJ0ZXgnKSIKLVBBU1Mgc3ViVmFsdWUgaW5zdGFuY2VvZiBDU1NWYWx1ZSBpcyB0
cnVlCi1QQVNTIHN1YlZhbHVlLmNvbnN0cnVjdG9yID09PSBDU1NWYWx1ZSBpcyB0cnVlCi1QQVNT
IHN1YlZhbHVlLl9fcHJvdG9fXyA9PT0gQ1NTVmFsdWUucHJvdG90eXBlIGlzIHRydWUKLVBBU1Mg
c3ViVmFsdWUuY3NzVmFsdWVUeXBlIGlzIENTU1ZhbHVlLkNTU19DVVNUT00KLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdWJWYWx1ZS5jc3NUZXh0KSBpcyAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNo
YWRlci94LWZyYWdtZW50JykiCi0KLU5vIHdoaXRlc3BhY2UgYXJvdW5kIGNvbW1hLgotc3JjOiB1
cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksdXJsKHNoYWRlci5mcykg
Zm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50Jyk7Ci1QQVNTIGZpbHRlckF0UnVsZS50eXBlIGlz
IENTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFCi1QQVNTIHN0eWxlRGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJ3NyYycpKSBpcyAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcp
LCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSIKLVBBU1Mgc3Jj
UHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHNyY1By
b3BlcnR5VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHNy
Y1Byb3BlcnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRy
dWUKLVBBU1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMgotUEFTUyBzdWJWYWx1ZSBpbnN0
YW5jZW9mIENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENT
U1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90
b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NT
X0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hh
ZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiCi1QQVNTIHN1YlZhbHVlIGluc3Rh
bmNlb2YgQ1NTVmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jb25zdHJ1Y3RvciA9PT0gQ1NT
VmFsdWUgaXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5fX3Byb3RvX18gPT09IENTU1ZhbHVlLnByb3Rv
dHlwZSBpcyB0cnVlCi1QQVNTIHN1YlZhbHVlLmNzc1ZhbHVlVHlwZSBpcyBDU1NWYWx1ZS5DU1Nf
Q1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkgaXMgInVybChzaGFk
ZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIgotCi1ObyB3aGl0ZXNwYWNlIGJl
dHdlZW4gVVJMIGFuZCBmb3JtYXQuCi1zcmM6IHVybChzaGFkZXIudnMpZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpOwotUEFTUyBmaWx0ZXJBdFJ1bGUudHlwZSBpcyBDU1NSdWxlLldFQktJVF9G
SUxURVJfUlVMRQotUEFTUyBzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkgaXMgInVy
bChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIKLVBBU1Mgc3JjUHJvcGVy
dHlWYWx1ZSBpbnN0YW5jZW9mIENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHNyY1Byb3BlcnR5
VmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVlTGlzdCBpcyB0cnVlCi1QQVNTIHNyY1Byb3Bl
cnR5VmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZUxpc3QucHJvdG90eXBlIGlzIHRydWUKLVBB
U1Mgc3JjUHJvcGVydHlWYWx1ZS5sZW5ndGggaXMgMQotUEFTUyBzdWJWYWx1ZSBpbnN0YW5jZW9m
IENTU1ZhbHVlIGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuY29uc3RydWN0b3IgPT09IENTU1ZhbHVl
IGlzIHRydWUKLVBBU1Mgc3ViVmFsdWUuX19wcm90b19fID09PSBDU1NWYWx1ZS5wcm90b3R5cGUg
aXMgdHJ1ZQotUEFTUyBzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUgaXMgQ1NTVmFsdWUuQ1NTX0NVU1RP
TQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlZhbHVlLmNzc1RleHQpIGlzICJ1cmwoc2hhZGVyLnZz
KSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3BhcnNpbmctc3JjLXByb3BlcnR5LXZh
bGlkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1z
eW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggNjBjZjVlMy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4K
LTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9j
dXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJz
Y3JpcHQtdGVzdHMvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQuanMiPjwvc2NyaXB0PgotPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWF0LXJ1bGUtaW52
YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5
bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1hdC1ydWxlLWludmFsaWQuanMKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDQ0ZTgyMjYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5n
LWF0LXJ1bGUtaW52YWxpZC5qcworKysgL2Rldi9udWxsCkBAIC0xLDMzICswLDAgQEAKLS8vIFJl
cXVpcmVzIGN1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJU
ZXN0IGF0LXJ1bGUgcGFyc2luZyBmb3IgQC13ZWJraXQtZmlsdGVyLiIpOwotCi0vLyBUaGVzZSBo
YXZlIHRvIGJlIGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBj
c3NSdWxlLCBpbnNlcnRSdWxlRXhjZXB0aW9uOwotCi1mdW5jdGlvbiB0ZXN0SW52YWxpZEZpbHRl
ckF0UnVsZShkZXNjcmlwdGlvbiwgcnVsZSkKLXsKLSAgICBkZWJ1ZygiXG4iICsgZGVzY3JpcHRp
b24gKyAiXG4iICsgcnVsZSk7Ci0KLSAgICB0cnkgewotICAgICAgICBzdHlsZXNoZWV0Lmluc2Vy
dFJ1bGUocnVsZSwgMCk7Ci0gICAgICAgIHRlc3RGYWlsZWQoIlwiIiArIHJ1bGUgKyAiXCIgZGlk
IG5vdCB0aHJvdyBhIHN5bnRheCBlcnJvci4iKTsKLSAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAg
IGluc2VydFJ1bGVFeGNlcHRpb24gPSBlOwotICAgICAgICBzaG91bGRCZVRydWUoImluc2VydFJ1
bGVFeGNlcHRpb24gaW5zdGFuY2VvZiBET01FeGNlcHRpb24iKTsKLSAgICAgICAgc2hvdWxkRXZh
bHVhdGVUbygiaW5zZXJ0UnVsZUV4Y2VwdGlvbi5jb2RlIiwgIkRPTUV4Y2VwdGlvbi5TWU5UQVhf
RVJSIikKLSAgICB9Ci19Ci0KLWhlYWRpbmcoIkZpbHRlciBhdC1ydWxlIHN5bWJvbCB0ZXN0cy4i
KTsKLXRlc3RJbnZhbGlkRmlsdGVyQXRSdWxlKCJVbnByZWZpeGVkIHJ1bGUuIiwgIkBmaWx0ZXIg
bXktZmlsdGVyIHsgfSIpOwotCi1oZWFkaW5nKCJGaWx0ZXIgbmFtZSB0ZXN0cy4iKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyQXRSdWxlKCJNaXNzaW5nIGZpbHRlciBuYW1lIGlkZW50aWZpZXIuIiwgIkAt
d2Via2l0LWZpbHRlciB7IH0iKTsKLXRlc3RJbnZhbGlkRmlsdGVyQXRSdWxlKCJGaWx0ZXIgbmFt
ZSBhcyBzdHJpbmcuIiwgIkAtd2Via2l0LWZpbHRlciAnbXktZmlsdGVyJyB7IH0iKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyQXRSdWxlKCJGaWx0ZXIgbmFtZSBhcyBudW1iZXIuIiwgIkAtd2Via2l0LWZp
bHRlciAxMjMgeyB9Iik7Ci0KLWhlYWRpbmcoIkZpbHRlciBhdC1ydWxlIGJvZHkgdGVzdHMuIik7
Ci10ZXN0SW52YWxpZEZpbHRlckF0UnVsZSgiTWlzc2luZyBydWxlIGJvZHkuIiwgIkAtd2Via2l0
LWZpbHRlciBteS1maWx0ZXIiKTsKLXRlc3RJbnZhbGlkRmlsdGVyQXRSdWxlKCJNaXNzaW5nIG9w
ZW5pbmcgYnJhY2UuIiwgIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgfSIpOwotdGVzdEludmFs
aWRGaWx0ZXJBdFJ1bGUoIk1pc3NpbmcgY2xvc2luZyBicmFjZS4iLCAiQC13ZWJraXQtZmlsdGVy
IG15LWZpbHRlciB7Iik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctYXQtcnVsZS12YWxp
ZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9zY3JpcHQtdGVzdHMvcGFyc2luZy1hdC1ydWxlLXZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAxOGU1OTk2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1hdC1y
dWxlLXZhbGlkLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTE5ICswLDAgQEAKLS8vIFJlcXVpcmVz
IGN1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IGF0
LXJ1bGUgcGFyc2luZyBmb3IgQC13ZWJraXQtZmlsdGVyLiIpOwotCi0vLyBUaGVzZSBoYXZlIHRv
IGJlIGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBjc3NSdWxl
LCBkZWNsYXJhdGlvbjsKLQotZnVuY3Rpb24gdGVzdEZpbHRlckF0UnVsZShkZXNjcmlwdGlvbiwg
cnVsZSwgZXhwZWN0ZWRWYWx1ZSwgZXhwZWN0ZWRQcm9wZXJ0aWVzKQotewotICAgIGRlYnVnKCJc
biIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBydWxlKTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0
UnVsZShydWxlLCAwKTsKLQotICAgIC8vIENoZWNrIHRoZSBydWxlJ3MgdGV4dCBhbmQgdHlwZS4K
LSAgICBjc3NSdWxlID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAgIGNoZWNrUnVs
ZShleHBlY3RlZFZhbHVlLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiLCAiV2ViS2l0Q1NT
RmlsdGVyUnVsZSIpOwotCi0gICAgLy8gQ2hlY2sgdGhlIHJ1bGUncyBDU1NTdHlsZURlY2xhcmF0
aW9uIHByb3BlcnRpZXMuCi0gICAgZGVjbGFyYXRpb24gPSBjc3NSdWxlLnN0eWxlOwotICAgIGlm
ICghZXhwZWN0ZWRQcm9wZXJ0aWVzKQotICAgICAgICBleHBlY3RlZFByb3BlcnRpZXMgPSBbXTsK
LSAgICB2YXIgbnVtUHJvcGVydGllcyA9IDA7Ci0gICAgZm9yICh2YXIgcHJvcGVydHlOYW1lIGlu
IGV4cGVjdGVkUHJvcGVydGllcykgewotICAgICAgICB2YXIgcHJvcGVydHlWYWx1ZSA9IGV4cGVj
dGVkUHJvcGVydGllc1twcm9wZXJ0eU5hbWVdOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoImRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJyIgKyBwcm9wZXJ0eU5hbWUgKyAiJyki
LCBwcm9wZXJ0eVZhbHVlKTsKLSAgICAgICAgbnVtUHJvcGVydGllcysrOwotICAgIH0KLSAgICBz
aG91bGRFdmFsdWF0ZVRvKCJkZWNsYXJhdGlvbi5sZW5ndGgiLCBudW1Qcm9wZXJ0aWVzKTsKLX0K
LQotZnVuY3Rpb24gdGVzdE5lc3RlZFJ1bGVzKGRlc2NyaXB0aW9uLCBwYXJlbnRSdWxlLCBwYXJl
bnRFeHBlY3RhdGlvbnMsIGNoaWxkRXhwZWN0YXRpb25zKQotewotICAgIGRlYnVnKCJcbiIgKyBk
ZXNjcmlwdGlvbiArICJcbiIgKyBwYXJlbnRSdWxlKTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0
UnVsZShwYXJlbnRSdWxlLCAwKTsKLQotICAgIGNzc1J1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVz
Lml0ZW0oMCk7Ci0gICAgY2hlY2tSdWxlKHBhcmVudEV4cGVjdGF0aW9ucy5jc3NUZXh0LCBwYXJl
bnRFeHBlY3RhdGlvbnMucnVsZVR5cGUsIHBhcmVudEV4cGVjdGF0aW9ucy5jb25zdHJ1Y3Rvck5h
bWUpOwotCi0gICAgaWYgKGNoaWxkRXhwZWN0YXRpb25zKSB7Ci0gICAgICAgIGNzc1J1bGUgPSBj
c3NSdWxlLmNzc1J1bGVzWzBdOwotICAgICAgICBjaGVja1J1bGUoY2hpbGRFeHBlY3RhdGlvbnMu
Y3NzVGV4dCwgY2hpbGRFeHBlY3RhdGlvbnMucnVsZVR5cGUsIGNoaWxkRXhwZWN0YXRpb25zLmNv
bnN0cnVjdG9yTmFtZSk7Ci0KLSAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjc3NSdWxlLmNz
c1RleHQubGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICAgIGlmIChjc3NSdWxlLmNzc1RleHRbaV0g
IT0gY2hpbGRFeHBlY3RhdGlvbnMuY3NzVGV4dFtpXSkKLSAgICAgICAgICAgICAgICB3aW5kb3cu
YWxlcnQoaSArICI6ICIgKyBjc3NSdWxlLmNzc1RleHRbaV0pOwotICAgICAgICB9Ci0gICAgfQot
fQotCi0vLyBDaGVja3MgdGhlIGdsb2JhbCAiY3NzUnVsZSIgYWdhaW5zdCBzb21lIGV4cGVjdGVk
IHByb3BlcnRpZXMuCi1mdW5jdGlvbiBjaGVja1J1bGUoZXhwZWN0ZWRDU1NUZXh0LCBleHBlY3Rl
ZFJ1bGVUeXBlLCBleHBlY3RlZENvbnN0cnVjdG9yTmFtZSkKLXsKLSAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoImNzc1J1bGUuY3NzVGV4dCIsIGV4cGVjdGVkQ1NTVGV4dCk7Ci0gICAgc2hvdWxk
RXZhbHVhdGVUbygiY3NzUnVsZS50eXBlIiwgZXhwZWN0ZWRSdWxlVHlwZSk7Ci0gICAgc2hvdWxk
SGF2ZUNvbnN0cnVjdG9yKCJjc3NSdWxlIiwgZXhwZWN0ZWRDb25zdHJ1Y3Rvck5hbWUpOwotfQot
Ci1oZWFkaW5nKCJGaWx0ZXIgYXQtcnVsZSB0ZXN0cy4iKTsKLXRlc3RGaWx0ZXJBdFJ1bGUoIkVt
cHR5IHJ1bGUsIHNlcGFyYXRlZCBieSBzaW5nbGUgc3BhY2VzLiIsCi0gICAgIkAtd2Via2l0LWZp
bHRlciBteS1maWx0ZXIgeyB9IiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IH0i
KTsKLXRlc3RGaWx0ZXJBdFJ1bGUoIkVtcHR5IHJ1bGUsIHNlcGFyYXRlZCBieSBtdWx0aXBsZSBz
cGFjZXMuIiwKLSAgICAiICAgQC13ZWJraXQtZmlsdGVyICAgbXktZmlsdGVyICAgeyAgIH0gICAi
LAotICAgICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIpOwotdGVzdEZpbHRlckF0UnVs
ZSgiRW1wdHkgcnVsZSwgbm8gZXh0cmEgd2hpdGVzcGFjZS4iLAotICAgICJALXdlYmtpdC1maWx0
ZXIgbXktZmlsdGVye30iLAotICAgICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIpOwot
dGVzdEZpbHRlckF0UnVsZSgiUnVsZSB3aXRoIGFyYml0cmFyeSBwcm9wZXJ0aWVzLiIsCi0gICAg
IkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7
IH0iLCAKLSAgICAiQC13ZWJraXQtZmlsdGVyIG15LWZpbHRlciB7IHdpZHRoOiAxMDBweDsgaGVp
Z2h0OiAxMDBweDsgfSIsCi0gICAge3dpZHRoOiAiMTAwcHgiLCBoZWlnaHQ6ICIxMDBweCJ9KTsK
LXRlc3RGaWx0ZXJBdFJ1bGUoIkVtcHR5IHJ1bGUsIGNvbW1lbnQgc2VwYXJhdG9ycyIsCi0gICAg
IkAtd2Via2l0LWZpbHRlci8qKi9teS1maWx0ZXIvKioveyB9IiwKLSAgICAiQC13ZWJraXQtZmls
dGVyIG15LWZpbHRlciB7IH0iKTsKLXRlc3RGaWx0ZXJBdFJ1bGUoIkVtcHR5IHJ1bGUsIGNvbW1l
bnQrc3BhY2Ugc2VwYXJhdG9ycyIsCi0gICAgIkAtd2Via2l0LWZpbHRlci8qKi8gbXktZmlsdGVy
LyoqLyB7IH0iLAotICAgICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIpOwotdGVzdEZp
bHRlckF0UnVsZSgiRW1wdHkgcnVsZSwgc3BhY2UrY29tbWVudCBzZXBhcmF0b3JzIiwKLSAgICAi
QC13ZWJraXQtZmlsdGVyIC8qKi9teS1maWx0ZXIgLyoqL3sgfSIsCi0gICAgIkAtd2Via2l0LWZp
bHRlciBteS1maWx0ZXIgeyB9Iik7Ci10ZXN0RmlsdGVyQXRSdWxlKCJFbXB0eSBydWxlLCBzcGFj
ZStjb21tZW50K3NwYWNlIHNlcGFyYXRvcnMiLAotICAgICJALXdlYmtpdC1maWx0ZXIgLyoqLyBt
eS1maWx0ZXIgLyoqLyB7IH0iLAotICAgICJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgfSIp
OwotCi1oZWFkaW5nKCJOZXN0ZWQgZmlsdGVyIGF0LXJ1bGUgdGVzdHMuIik7Ci10ZXN0TmVzdGVk
UnVsZXMoIk5lc3RlZCBydWxlLiIsCi0gICAgIkAtd2Via2l0LWZpbHRlciBwYXJlbnQtZmlsdGVy
IHsgQC13ZWJraXQtZmlsdGVyIGNoaWxkLWZpbHRlciB7IH0gfSIsIAotICAgIHsKLSAgICAgICAg
Y3NzVGV4dDogIkAtd2Via2l0LWZpbHRlciBwYXJlbnQtZmlsdGVyIHsgfSIsCi0gICAgICAgIHJ1
bGVUeXBlOiBDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSwKLSAgICAgICAgY29uc3RydWN0b3JO
YW1lOiAiV2ViS2l0Q1NTRmlsdGVyUnVsZSIKLSAgICB9KTsKLXRlc3ROZXN0ZWRSdWxlcygiVHdp
Y2UgbmVzdGVkIHJ1bGUuIiwKLSAgICAiQC13ZWJraXQtZmlsdGVyIHBhcmVudC1maWx0ZXIgeyBA
LXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgQC13ZWJraXQtZmlsdGVyIGdyYW5kY2hpbGQt
ZmlsdGVyIH0gfSIsIAotICAgIHsKLSAgICAgICAgY3NzVGV4dDogIkAtd2Via2l0LWZpbHRlciBw
YXJlbnQtZmlsdGVyIHsgfSIsCi0gICAgICAgIHJ1bGVUeXBlOiBDU1NSdWxlLldFQktJVF9GSUxU
RVJfUlVMRSwKLSAgICAgICAgY29uc3RydWN0b3JOYW1lOiAiV2ViS2l0Q1NTRmlsdGVyUnVsZSIK
LSAgICB9KTsKLXRlc3ROZXN0ZWRSdWxlcygiTmVzdGVkIHJ1bGUgaW5zaWRlIGFyYml0cmFyeSBy
dWxlLiIsIAotICAgICJAZm9udC1mYWNlIHsgQC13ZWJraXQtZmlsdGVyIGNoaWxkLWZpbHRlciB7
IH0gfSIsIAotICAgIHsKLSAgICAgICAgY3NzVGV4dDogIkBmb250LWZhY2UgeyB9IiwKLSAgICAg
ICAgcnVsZVR5cGU6IENTU1J1bGUuRk9OVF9GQUNFX1JVTEUsCi0gICAgICAgIGNvbnN0cnVjdG9y
TmFtZTogIkNTU0ZvbnRGYWNlUnVsZSIKLSAgICB9KTsKLXRlc3ROZXN0ZWRSdWxlcygiTmVzdGVk
IHJ1bGUgaW5zaWRlIG1lZGlhIHF1ZXJ5LiIsCi0gICAgIkBtZWRpYSBzY3JlZW4geyBALXdlYmtp
dC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSB9IiwgCi0gICAgewotICAgICAgICBjc3NUZXh0OiAi
QG1lZGlhIHNjcmVlbiB7IFxuICBALXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfVxufSIs
Ci0gICAgICAgIHJ1bGVUeXBlOiBDU1NSdWxlLk1FRElBX1JVTEUsCi0gICAgICAgIGNvbnN0cnVj
dG9yTmFtZTogIkNTU01lZGlhUnVsZSIsCi0gICAgfSwKLSAgICB7Ci0gICAgICAgIGNzc1RleHQ6
ICJALXdlYmtpdC1maWx0ZXIgY2hpbGQtZmlsdGVyIHsgfSIsCi0gICAgICAgIHJ1bGVUeXBlOiBD
U1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSwKLSAgICAgICAgY29uc3RydWN0b3JOYW1lOiAiV2Vi
S2l0Q1NTRmlsdGVyUnVsZSIsCi0gICAgfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmct
Y3VzdG9tLWZ1bmN0aW9uLWludmFsaWQuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctY3VzdG9tLWZ1bmN0
aW9uLWludmFsaWQuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ0ZmFjYTMuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUt
c3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWN1c3RvbS1mdW5jdGlvbi1pbnZhbGlkLmpzCisr
KyAvZGV2L251bGwKQEAgLTEsMTM5ICswLDAgQEAKLWRlc2NyaXB0aW9uKCJUZXN0IHRoZSBwYXJz
aW5nIG9mIGN1c3RvbSgpIGZ1bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eS4i
KTsKLQotLy8gVGhlc2UgaGF2ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8g
c2VlIHRoZW0uCi12YXIgc3R5bGVSdWxlLCBkZWNsYXJhdGlvbjsKLQotZnVuY3Rpb24gdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKGRlc2NyaXB0aW9uLCBydWxlKQotewotICAgIGRlYnVnKCJcbiIgKyBk
ZXNjcmlwdGlvbiArICJcbiIgKyBydWxlKTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgi
Ym9keSB7IC13ZWJraXQtZmlsdGVyOiAiICsgcnVsZSArICI7IH0iLCAwKTsKLQotICAgIHN0eWxl
UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91bGRCZSgic3R5bGVS
dWxlLnR5cGUiLCAiQ1NTUnVsZS5TVFlMRV9SVUxFIik7Ci0KLSAgICBkZWNsYXJhdGlvbiA9IHN0
eWxlUnVsZS5zdHlsZTsKLSAgICBzaG91bGRCZSgiZGVjbGFyYXRpb24ubGVuZ3RoIiwgIjAiKTsK
LSAgICBzaG91bGRCZSgiZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSIsICJudWxsIik7Ci19Ci0KLWhlYWRpbmcoIkN1c3RvbSBmdW5jdGlvbiB0ZXN0cy4iKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiRW1wdHkgY3VzdG9tIGZ1bmN0aW9uLiIsICJjdXN0b20o
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgY29tbWEgaW4gY3VzdG9tIGZ1bmN0aW9u
LiIsICJjdXN0b20oLCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTXVsdGlwbGUgY29tbWFz
IGluIGN1c3RvbSBmdW5jdGlvbi4iLCAiY3VzdG9tKCwsKSIpOwotCi1oZWFkaW5nKCJGaWx0ZXIg
bmFtZSB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gZmlsdGVyIG5hbWUgd2l0
aCBwYXJhbWV0ZXIuIiwgImN1c3RvbShuIDEpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRv
byBtYW55IGZpbHRlciBuYW1lcy4iLCAiY3VzdG9tKG15LWZpbHRlci0xIG15LWZpbHRlci0yKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJGaWx0ZXIgbmFtZSBhcyBzdHJpbmcuIiwgImN1c3Rv
bSgnbXktZmlsdGVyLTEnKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJGaWx0ZXIgbmFtZSBh
cyBudW1iZXIuIiwgImN1c3RvbSgxKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJTcGFjZSBi
ZXR3ZWVuIGZpbHRlciBuYW1lIGFuZCBwYXJhbWV0ZXIuIiwgImN1c3RvbShteS1maWx0ZXIgbiAx
KSIpOwotCi1oZWFkaW5nKCJOdW1iZXIgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJUb28gbWFueSBwYXJhbWV0ZXIgdmFsdWVzLiIsICJjdXN0b20obXktZmlsdGVy
LCBuIDEgMiAzIDQgNSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCBwYXJhbWV0
ZXIgdHlwZS4iLCAiY3VzdG9tKG15LWZpbHRlciwgbiAxLjAgMi4wICd0ZXh0JykiKTsKLQotdGVz
dEludmFsaWRGaWx0ZXJSdWxlKCJObyBwYXJhbWV0ZXIgZGVmaW5pdGlvbiBhZnRlciBjb21tYS4i
LCAiY3VzdG9tKG15LWZpbHRlciwpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHBhcmFt
ZXRlciBkZWZpbml0aW9uIHdpdGggdHdvIGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwsKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBwYXJhbWV0ZXIgZGVmaW5pdGlvbiBiZWZvcmUg
dmFsaWQgcGFyYW1ldGVyIGRlZmludGlvbi4iLCAiY3VzdG9tKG15LWZpbHRlciwgLCBuIDEpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIHBhcmFtZXRlciB2YWx1ZS4iLCAiY3VzdG9tKG15
LWZpbHRlciwgbikiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gcGFyYW1ldGVyIHZhbHVl
IHdpdGggbXVsdGlwbGUgcGFyYW1ldGVycy4iLCAiY3VzdG9tKG15LWZpbHRlciwgbjEsIG4yLCBu
MykiKTsKLQotaGVhZGluZygiQ29sb3IgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJObyByZ2IgY29sb3IgdmFsdWVzLiIsICJjdXN0b20obXktZmlsdGVyLCBjIHJn
YigsLCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIGhzbCBjb2xvciB2YWx1ZXMuIiwg
ImN1c3RvbShteS1maWx0ZXIsIGMgaHNsKCwsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgi
SGV4IHdpdGggOCBjaGFyYWN0ZXJzLiIsICJjdXN0b20obXktZmlsdGVyLCBjICNGRjAwMDBGRiki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSGV4IHdpdGggMiBjaGFyYWN0ZXIuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGMgI0ZGKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJSZ2JhIHdpdGgg
MyB2YWx1ZXMgYW5kIDIgY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBjIHJnYmEoMjU1LCAw
LCAwKSkiKTsKLQotaGVhZGluZygiVHJhbnNmb3JtIHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiT25lIGludmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uLiIsICJjdXN0
b20obXktZmlsdGVyLCB0IGludmFsaWQtcm90YXRlKDBkZWcpKSIpOwotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJNdWx0aXBsZSBpbnZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbnMuIiwgImN1c3RvbSht
eS1maWx0ZXIsIHQgaW52YWxpZC1yb3RhdGUoMGRlZykgaW52YWxpZC1wZXJzcGVjdGl2ZSgwKSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24gYmV0
d2VlbiB2YWxpZCBvbmVzLiIsICJjdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSBpbnZh
bGlkLXJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiVmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9uIGJldHdlZW4gaW52YWxpZCBvbmVzLiIsICJjdXN0
b20obXktZmlsdGVyLCB0IGludmFsaWQtcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIGludmFs
aWQtdHJhbnNsYXRlKDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zv
cm0gZnVuY3Rpb24gd2l0aG91dCBsZWFkaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyIHQg
cGVyc3BlY3RpdmUoMCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9y
bSBmdW5jdGlvbiB3aXRoIHRyYWlsaW5nIGNvbW1hLiIsICJjdXN0b20obXktZmlsdGVyLCB0IHBl
cnNwZWN0aXZlKDApLCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVmFsaWQgdHJhbnNmb3Jt
IGZ1bmN0aW9uIHdpdGggdHJhaWxpbmcgY29tbWEgYW5kIHdpdGhvdXQgbGVhZGluZyBjb21tYS4i
LCAiY3VzdG9tKG15LWZpbHRlciB0IHBlcnNwZWN0aXZlKDApLCkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiSW52YWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFpbGluZyBjb21tYS4iLCAiY3VzdG9t
KG15LWZpbHRlciwgdCBpbnZhbGlkLXJvdGF0ZSgwZGVnKSwpIik7Ci10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIkludmFsaWQgdHJhbnNmb3JtIHdpdGhvdXQgbGVhZGluZyBjb21tYS4iLCAiY3VzdG9t
KG15LWZpbHRlciB0IGludmFsaWRfcm90YXRlKDBkZWcpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJS
dWxlKCJWYWxpZCB0cmFuc2Zvcm0gd2l0aCBpbnZhbGlkIGNoYXJhY3RlcnMiLCAiY3VzdG9tKG15
LWZpbHRlcix0IHJvdGF0ZSgwZGVnKSAqLi0sKSIpOwotCi1oZWFkaW5nKCJBcnJheSBwYXJhbWV0
ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkVtcHR5IGFycmF5LiIsICJjdXN0
b20obXktZmlsdGVyLCBhIGFycmF5KCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk9uZSBj
b21tYSBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgsKSkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTXVsdGlwbGUgY29tbWFzIGluIGFycmF5LiIsICJjdXN0b20obXkt
ZmlsdGVyLCBhIGFycmF5KCwsLCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk11bHRpcGxl
IGNvbW1hcyB3aXRoIGEgdmFsdWUgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJy
YXkoLCwxLCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk9uZSBjb21tYSBmb2xsb3dlZCBi
eSBhIG5lZ2F0aXZlIHZhbHVlIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5
KCwtNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk9uZSBjb21tYSBmb2xsb3dlZCBieSBh
IHZhbHVlIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCw0KSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiT25lIG5lZ2F0aXZlIHZhbHVlIGZvbGxvd2VkIGJ5IGEgY29t
bWEgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLTQsKSkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiT25lIHZhbHVlIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXku
IiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoNCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJS
dWxlKCJWYWxpZCB2YWx1ZXMgZm9sbG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheS4iLCAiY3VzdG9t
KG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAzLCA0LCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIlZhbGlkIHZhbHVlcyBmb2xsb3dlZCBieSBhIGxldHRlciBpbiBhcnJheS4iLCAiY3VzdG9t
KG15LWZpbHRlciwgYSBhcnJheSgxLCAyLCAzLCA0LCB4KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiVHdvIGNvbW1hcyBhcyBzZXBhcmF0b3IgYmV0d2VlbiB2YWx1ZXMgaW4gYXJyYXkuIiwg
ImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgLCA0KSkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiTGVhZGluZyBjb21tYSBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBh
cnJheSgsMSwgMiwgMywgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNlbWljb2xvbiBz
ZXBhcmF0ZWQgdmFsdWVzIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDE7
IDI7IDM7IDQpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJTcGFjZSBzZXBhcmF0ZWQgdmFs
dWVzIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEgMiAzIDQpKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJTcGFjZSBzZXBhcmF0ZWQgdmFsdWVzIHdpdGggY29tbWEg
dGVybWluYXRvciBpbiBhcnJheS4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxIDIgMyA0
LCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgd2l0
aCBsZWFkaW5nIGNvbW1hIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KCwg
MSAyIDMgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5hTiBpbiBhcnJheS4iLCAiY3Vz
dG9tKG15LWZpbHRlciwgYSBhcnJheShOYU4pKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJO
YU4gYmV0d2VlbiB2YWxpZCB2YWx1ZXMgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
YXJyYXkoMSwgMiwgTmFOLCAzKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxpZCB2
YWx1ZSAnbm9uZScgaW4gYXJyYXkuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkobm9uZSkp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgdmFsdWUgdW5pdCAncHgnIGluIGFy
cmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDFweCkpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIkludmFsaWQgdmFsdWUgdW5pdCAnZGVnJyBpbiBhcnJheS4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBhcnJheSgxZGVnKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSW52YWxp
ZCB2YWx1ZSB1bml0ICdweCcgaW4gYXJyYXkgYWZ0ZXIgdmFsaWQgdmFsdWVzLiIsICJjdXN0b20o
bXktZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDRweCkpIik7Ci0KLQotaGVhZGluZygiTWF0MiBw
YXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkVtcHR5IG1hdDIuIiwg
ImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJU
b28gdmlldyBhcmd1bWVudHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MigwLCAwLCAwKSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImN1
c3RvbShteS1maWx0ZXIsIGEgbWF0MigsLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJF
bmRpbmcgY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMCwgMCwsKSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiSWRlbnRzIGluIG1hdDIgZnVuY3Rpb24uIiwgImN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MigwLCAwLCBhLCBiKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgi
VG9vIG1hbnkgYXJndW1lbnRzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMCwgMCwgMCwg
MCwgMSkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIGNvbW1hcy4iLCAiY3VzdG9tKG15
LWZpbHRlciwgYSBtYXQyKDEgMCAwIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJTb21l
IGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDEsIDAsIDAgMSkpIik7Ci10ZXN0
SW52YWxpZEZpbHRlclJ1bGUoIkxlYWRpbmcgY29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBh
IG1hdDIoLCAwLCAwLCAxKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gbGVuZ3RoIHVu
aXRzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMXB4LCAwcHgsIDBweCwgMXB4KSkiKTsK
LXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gZGVncmVlIHVuaXRzLiIsICJjdXN0b20obXktZmls
dGVyLCBhIG1hdDIoMWRlZywgMGRlZywgMGRlZywgMWRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIk5hTiBpbiBtYXQyLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDIoMSwgMCwgMCwg
TmFOKSkiKTsKLQotaGVhZGluZygiTWF0MyBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIkVtcHR5IG1hdDMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygpKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJUb28gdmlldyBhcmd1bWVudHMuIiwgImN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MygwLCAwLCAwLCAwKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgi
Tm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygsLCws
LCwsLCwsLCwsLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJFbmRpbmcgY29tbWFzLiIs
ICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwsKSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiSWRlbnRzIGluIG1hdDMgZnVuY3Rpb24uIiwgImN1c3RvbSht
eS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCBhLCBiKSkiKTsKLXRlc3RJbnZh
bGlkRmlsdGVyUnVsZSgiVG9vIG1hbnkgYXJndW1lbnRzLiIsICJjdXN0b20obXktZmlsdGVyLCBh
IG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSwgMCkpIik7Ci10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIk5vIGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQzKDEgMCAwIDAgMSAw
IDAgMCAxKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiU29tZSBjb21tYXMuIiwgImN1c3Rv
bShteS1maWx0ZXIsIGEgbWF0MygxLCAwLCAwLCAwLCAxLCAwIDAgMCAxKSkiKTsKLXRlc3RJbnZh
bGlkRmlsdGVyUnVsZSgiTGVhZGluZyBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0
MygsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJO
byBsZW5ndGggdW5pdHMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0MygxcHgsIDAsIDAsIDAs
IDFweCwgMCwgMCwgMCwgMXB4KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gZGVncmVl
IHVuaXRzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDMoMWRlZywgMCwgMCwgMCwgMWRlZywg
MCwgMCwgMCwgMWRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5hTiBpbiBtYXQzLiIs
ICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDIoTmFOLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSki
KTsKLQotaGVhZGluZygiTWF0NCBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEZpbHRl
clJ1bGUoIkVtcHR5IG1hdDQuIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgpKSIpOwotdGVz
dEludmFsaWRGaWx0ZXJSdWxlKCJUb28gdmlldyBhcmd1bWVudHMuIiwgImN1c3RvbShteS1maWx0
ZXIsIGEgbWF0NCgxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiTm8gYXJndW1lbnRzIGJ1dCBjb21tYXMuIiwgImN1c3RvbShteS1maWx0ZXIsIGEg
bWF0NCgsLCwsLCwsLCwsLCwsLCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJFbmRpbmcg
Y29tbWFzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwg
MCwgMCwgMCwgMSwgMCwgMCwgMCwsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiSWRlbnRz
IGluIG1hdDQgZnVuY3Rpb24uIiwgImN1c3RvbShteS1maWx0ZXIsIGEgbWF0NCgxLCAwLCAwLCAw
LCAxLCAwLCAwLCBhLCBiKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVG9vIG1hbnkgYXJn
dW1lbnRzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwg
MCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUo
Ik5vIGNvbW1hcy4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEgMCAwIDAgMCAxIDAgMCAw
IDAgMSAwIDAgMCAwIDEpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJTb21lIGNvbW1hcy4i
LCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAs
IDEsIDAgMCAwIDAgMSkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkxlYWRpbmcgY29tbWFz
LiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDQoLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAw
LCAxLCAwLCAwLCAwLCAwLCAxKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gbGVuZ3Ro
IHVuaXRzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMXB4LCAwLCAwLCAwLCAwLCAxcHgs
IDAsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwgMCwgMXB4KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVy
UnVsZSgiTm8gZGVncmVlIHVuaXRzLiIsICJjdXN0b20obXktZmlsdGVyLCBhIG1hdDQoMWRlZywg
MCwgMCwgMCwgMCwgMWRlZywgMCwgMCwgMCwgMCwgMWRlZywgMCwgMCwgMCwgMCwgMWRlZykpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5hTiBpbiBtYXQ0LiIsICJjdXN0b20obXktZmlsdGVy
LCBhIG1hdDQoTmFOLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAx
KSkiKTsKLQotCi1oZWFkaW5nKCJNaXhpbmcgcGFyYW1ldGVyIHR5cGVzLiIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJOdW1iZXIgcGFyYW1ldGVyIHdpdGggaGV4IGNvbG9yLiIsICJjdXN0b20o
bXktZmlsdGVyLCBuMSAxIDIgI0ZGMDAwMCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTnVt
YmVyIHBhcmFtZXRlciB3aXRoIGNvbG9yIGtleXdvcmQuIiwgImN1c3RvbShteS1maWx0ZXIsIG4x
IDEgMiByZWQpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk51bWJlciBwYXJhbWV0ZXIgd2l0
aCByZ2IgY29sb3IuIiwgImN1c3RvbShteS1maWx0ZXIsIG4xIDEgMiByZ2IoMjU1LCAwLCAwKSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiQ29sb3Igd2l0aCBudW1iZXIgcGFyYW1ldGVyLiIs
ICJjdXN0b20obXktZmlsdGVyLCBhIHJnYigyNTUsIDAsIDApIDEpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIkNvbG9yIGluIGFycmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDAs
IHJnYigyNTUsIDAsIDApKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiQ29sb3IgYW5kIGFy
cmF5LiIsICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDAsIDApIHJnYigyNTUsIDAsIDApKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJDb2xvciB3aXRoIHRyYW5zZm9ybSB2YWx1ZXMuIiwg
ImN1c3RvbShteS1maWx0ZXIsIGEgcm90YXRlKDQ1ZGVnKSByZ2IoMjU1LCAwLCAwKSkiKTsKLXRl
c3RJbnZhbGlkRmlsdGVyUnVsZSgiQ29sb3Igd2l0aCB0cmFuc2Zvcm0gdmFsdWVzLiIsICJjdXN0
b20obXktZmlsdGVyLCBhIHJnYigyNTUsIDAsIDApIHJvdGF0ZSg0NWRlZykpIik7Ci10ZXN0SW52
YWxpZEZpbHRlclJ1bGUoIkNvbG9yIHdpdGggbWF0Mi4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBy
Z2IoMjU1LCAwLCAwKSBtYXQyKDAsIDAsIDAsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxl
KCJtYXQyIHdpdGggbWF0My4iLCAiY3VzdG9tKG15LWZpbHRlciwgYSBtYXQyKDEsIDAsIDAsIDEp
IG1hdDMoMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCkpIik7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3Rz
L3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9uLXZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWN1c3Rv
bS1mdW5jdGlvbi12YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzFjNWEw
Zi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQt
cnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctY3VzdG9tLWZ1bmN0aW9uLXZhbGlkLmpz
CisrKyAvZGV2L251bGwKQEAgLTEsMTY3ICswLDAgQEAKLWRlc2NyaXB0aW9uKCJUZXN0IHRoZSBw
YXJzaW5nIG9mIHRoZSBjdXN0b20oKSBmdW5jdGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJv
cGVydHkuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxw
ZXJzIHRvIHNlZSB0aGVtLgotdmFyIHN0eWxlUnVsZSwgc3R5bGVEZWNsYXJhdGlvbiwgZmlsdGVy
UHJvcGVydHlWYWx1ZSwgc3ViVmFsdWU7Ci0KLWZ1bmN0aW9uIHRlc3RGaWx0ZXJQcm9wZXJ0eShk
ZXNjcmlwdGlvbiwgcHJvcGVydHlWYWx1ZSwgZXhwZWN0ZWRWYWx1ZSwgZXhwZWN0ZWRUeXBlcywg
ZXhwZWN0ZWRUZXh0cykKLXsKLSAgICBkZWJ1ZygiXG4iICsgZGVzY3JpcHRpb24gKyAiXG4iICsg
cHJvcGVydHlWYWx1ZSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoImJvZHkgeyAtd2Vi
a2l0LWZpbHRlcjogIiArIHByb3BlcnR5VmFsdWUgKyAiOyB9IiwgMCk7Ci0gICAgc3R5bGVSdWxl
ID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAgIHNob3VsZEJlKCJzdHlsZVJ1bGUu
dHlwZSIsICJDU1NSdWxlLlNUWUxFX1JVTEUiKTsKLQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBz
dHlsZVJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwg
IjEiKTsKLSAgICBzaG91bGRCZSgic3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIiwgIiciICsgZXhwZWN0ZWRWYWx1ZSArICInIik7Ci0KLSAgICBmaWx0
ZXJQcm9wZXJ0eVZhbHVlID0gc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eUNTU1ZhbHVlKCct
d2Via2l0LWZpbHRlcicpOwotICAgIHNob3VsZEhhdmVDb25zdHJ1Y3RvcigiZmlsdGVyUHJvcGVy
dHlWYWx1ZSIsICJDU1NWYWx1ZUxpc3QiKTsKLQotICAgIGlmICghZXhwZWN0ZWRUeXBlcykgewot
ICAgICAgICBleHBlY3RlZFR5cGVzID0gWyJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTSJdOwotICAgICAgICBleHBlY3RlZFRleHRzID0gW2V4cGVjdGVkVmFsdWVdOwotICAg
IH0KLSAgICAKLSAgICBzaG91bGRCZSgiZmlsdGVyUHJvcGVydHlWYWx1ZS5sZW5ndGgiLCAiIiAr
IGV4cGVjdGVkVHlwZXMubGVuZ3RoKTsgLy8gc2hvdWxkQmUgZXhwZWN0cyBzdHJpbmcgYXJndW1l
bnRzCi0gIAotICAgIGlmIChmaWx0ZXJQcm9wZXJ0eVZhbHVlKSB7Ci0gICAgICAgIGZvciAodmFy
IGkgPSAwOyBpIDwgZXhwZWN0ZWRUeXBlcy5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgc3Vi
VmFsdWUgPSBmaWx0ZXJQcm9wZXJ0eVZhbHVlW2ldOwotICAgICAgICAgICAgc2hvdWxkQmUoInN1
YlZhbHVlLm9wZXJhdGlvblR5cGUiLCBleHBlY3RlZFR5cGVzW2ldKTsKLSAgICAgICAgICAgIHNo
b3VsZEJlKCJzdWJWYWx1ZS5jc3NUZXh0IiwgIiciICsgZXhwZWN0ZWRUZXh0c1tpXSArICInIik7
Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLWhlYWRpbmcoIkN1c3RvbSBmdW5jdGlvbiB0ZXN0cy4i
KTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQ3VzdG9tIGZ1bmN0aW9uIGluIENBUFMuIiwKLSAgICAi
Q1VTVE9NKG15LWZpbHRlcikiLAotICAgICJjdXN0b20obXktZmlsdGVyKSIpOwotCi1oZWFkaW5n
KCJGaWx0ZXIgY2hhaW4gdGVzdHMuIikKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQ3VzdG9tIGZ1bmN0
aW9uIGluIG1pZGRsZSBvZiBmaWx0ZXIgY2hhaW4uIiwKLSAgICAiZ3JheXNjYWxlKCkgY3VzdG9t
KG15LWZpbHRlcikgc2VwaWEoKSIsICJncmF5c2NhbGUoKSBjdXN0b20obXktZmlsdGVyKSBzZXBp
YSgpIiwKLSAgICBbIldlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfR1JBWVNDQUxFIiwK
LSAgICAiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00iLAotICAgICJXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX1NFUElBIl0sCi0gICAgWyJncmF5c2NhbGUoKSIs
Ci0gICAgImN1c3RvbShteS1maWx0ZXIpIiwKLSAgICAic2VwaWEoKSJdKTsKLQotaGVhZGluZygi
RmlsdGVyIG5hbWUgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkZpbHRlciBuYW1lIG9u
bHkuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlcikiLAotICAgICJjdXN0b20obXktZmlsdGVyKSIp
OwotdGVzdEZpbHRlclByb3BlcnR5KCJGaWx0ZXIgbmFtZSBhcyBDU1MgJ25vbmUnIGtleXdvcmQu
IiwKLSAgICAiY3VzdG9tKG5vbmUpIiwKLSAgICAiY3VzdG9tKG5vbmUpIik7Ci0KLWhlYWRpbmco
Ik51bWJlciBwYXJhbWV0ZXIgdGVzdHMuIikKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiSW50ZWdlciBw
YXJhbWV0ZXJzLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG4xIDEsIG4yIDIgMywgbjMgMyA0
IDUsIG40IDQgNSA2IDcpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbjEgMSwgbjIgMiAzLCBu
MyAzIDQgNSwgbjQgNCA1IDYgNykiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiRmxvYXQgcGFyYW1l
dGVycy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBuMSAxLjEsIG4yIDIuMiAzLjMsIG4zIDMu
MSA0LjEgNS4xLCBuNCA0LjEgNS4yIDYuMyA3LjQpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwg
bjEgMS4xLCBuMiAyLjIgMy4zLCBuMyAzLjEgNC4xIDUuMSwgbjQgNC4xIDUuMiA2LjMgNy40KSIp
OwotdGVzdEZpbHRlclByb3BlcnR5KCJQYXJhbWV0ZXIgbmFtZSBzYW1lIGFzIENTUyBrZXl3b3Jk
LiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGJhY2tncm91bmQgMCAxIDAgMSkiLAotICAgICJj
dXN0b20obXktZmlsdGVyLCBiYWNrZ3JvdW5kIDAgMSAwIDEpIik7Ci0KLWhlYWRpbmcoIkNvbG9y
IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiSGV4IGNvbG9yLiIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIGMgIzAwRkYwMCkiLAotICAgICJjdXN0b20obXktZmlsdGVy
LCBjIHJnYigwLCAyNTUsIDApKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDb2xvciBrZXl3b3Jk
LiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGMgZ3JlZW4pIiwKLSAgICAiY3VzdG9tKG15LWZp
bHRlciwgYyByZ2IoMCwgMTI4LCAwKSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQ29sb3Igcmdi
IGZ1bmN0aW9uLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGMgcmdiKDAsIDEyOCwgMCkpIiwK
LSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyByZ2IoMCwgMTI4LCAwKSkiKTsKLXRlc3RGaWx0ZXJQ
cm9wZXJ0eSgiQ29sb3IgaHNsIGZ1bmN0aW9uLiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGMg
aHNsKDEyMCwgMTAwJSwgNTAlKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIHJnYigwLCAy
NTUsIDApKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJDb2xvciByZ2JhIGZ1bmN0aW9uLiIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIGMgcmdiYSgwLCAyNTUsIDAsIDAuMikpIiwKLSAgICAiY3Vz
dG9tKG15LWZpbHRlciwgYyByZ2JhKDAsIDI1NSwgMCwgMC4yKSkiKTsKLXRlc3RGaWx0ZXJQcm9w
ZXJ0eSgiQ29sb3IgaHNsYSBmdW5jdGlvbi4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBjIGhz
bGEoMTIwLCAxMDAlLCA1MCUsIDAuMikpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYyByZ2Jh
KDAsIDI1NSwgMCwgMC4yKSkiKTsKLQotaGVhZGluZygiVHJhbnNmb3JtIHBhcmFtZXRlciB0ZXN0
cy4iKQotdGVzdEZpbHRlclByb3BlcnR5KCJUcmFuc2Zvcm0gcGFyYW1ldGVyIHdpdGggb25lIHRy
YW5zZm9ybSBmdW5jdGlvbi4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVn
KSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSkiKTsKLXRlc3RGaWx0
ZXJQcm9wZXJ0eSgiVHJhbnNmb3JtIHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHRyYW5zZm9ybSBm
dW5jdGlvbnMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgdCByb3RhdGUoMGRlZykgcGVyc3Bl
Y3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSkiLAotICAgICJjdXN0b20o
bXktZmlsdGVyLCB0IHJvdGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFu
c2xhdGUoMHB4LCAwcHgpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNdWxpdHBsZSB0cmFuc2Zv
cm0gcGFyYW1ldGVycy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCB0MSByb3RhdGUoMGRlZyks
IHQyIHJvdGF0ZSgwZGVnKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCB0MSByb3RhdGUoMGRl
ZyksIHQyIHJvdGF0ZSgwZGVnKSkiKTsKLQotaGVhZGluZygiQXJyYXkgcGFyYW1ldGVyIHRlc3Rz
LiIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBuYW1lICdhcnJh
eScuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYXJyYXkgYXJyYXkoMSkpIiwKLSAgICAiY3Vz
dG9tKG15LWZpbHRlciwgYXJyYXkgYXJyYXkoMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIkFy
cmF5IHBhcmFtZXRlciB3aXRoIG9uZSBwb3NpdGl2ZSBpbnRlZ2VyLiIsCi0gICAgImN1c3RvbSht
eS1maWx0ZXIsIGEgYXJyYXkoMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgx
KSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiQXJyYXkgcGFyYW1ldGVyIHdpdGggb25lIG5lZ2F0
aXZlIGZsb2F0LiIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLTEuMDEpKSIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoLTEuMDEpKSIpOwotdGVzdEZpbHRlclByb3Bl
cnR5KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBwb3NpdGl2ZSBpbnRlZ2Vycy4iLAot
ICAgICJjdXN0b20obXktZmlsdGVyLCBhIGFycmF5KDEsIDIsIDMsIDQsIDUpKSIsCi0gICAgImN1
c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgMiwgMywgNCwgNSkpIik7Ci10ZXN0RmlsdGVyUHJv
cGVydHkoIkFycmF5IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuIiwKLSAg
ICAiY3VzdG9tKG15LWZpbHRlciwgYSBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpKSIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIGEgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSkiKTsK
LXRlc3RGaWx0ZXJQcm9wZXJ0eSgiTXVsdGlwbGUgYXJyYXkgcGFyYW1ldGVycy4iLAotICAgICJj
dXN0b20obXktZmlsdGVyLCBhMSBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCBhMiBhcnJh
eSgxLCAyLCAzKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBhMSBhcnJheSgxLCAtMi4yLCAz
LjE0LCAwLjQsIDUpLCBhMiBhcnJheSgxLCAyLCAzKSkiKTsKLQotaGVhZGluZygiTWF0MiBwYXJh
bWV0ZXIgdGVzdHMuIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDIgcGFyYW1ldGVyLiIsCi0g
ICAgImN1c3RvbShteS1maWx0ZXIsIG0gbWF0MigxLCAwLCAwLCAxKSkiLAotICAgICJjdXN0b20o
bXktZmlsdGVyLCBtIG1hdDIoMSwgMCwgMCwgMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1h
dDIgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgdmFsdWVzLiIsCi0gICAgImN1c3RvbShteS1maWx0
ZXIsIG0gbWF0MigtMSwgLTEsIC0xLCAtMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBt
YXQyKC0xLCAtMSwgLTEsIC0xKSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiTWF0MiBwYXJhbWV0
ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUgdmFsdWVzLiIsCi0gICAgImN1c3RvbShteS1m
aWx0ZXIsIG0gbWF0MigtMSwgMSwgMSwgLTEpKSIsCi0gICAgImN1c3RvbShteS1maWx0ZXIsIG0g
bWF0MigtMSwgMSwgMSwgLTEpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNYXQyIHBhcmFtZXRl
ciB3aXRoIG11bHRpcGxlIHNpZ25lZCBmbG9hdHMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwg
bSBtYXQyKDEsIC0yLjIsIDMuMTQsIDAuNCkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBt
YXQyKDEsIC0yLjIsIDMuMTQsIDAuNCkpIik7Ci0KLWhlYWRpbmcoIk1hdDMgcGFyYW1ldGVyIHRl
c3RzLiIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNYXQzIHBhcmFtZXRlci4iLAotICAgICJjdXN0
b20obXktZmlsdGVyLCBtIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkpIiwKLSAgICAi
Y3VzdG9tKG15LWZpbHRlciwgbSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpKSIpOwot
dGVzdEZpbHRlclByb3BlcnR5KCJNYXQzIHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4i
LAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQzKC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpKSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNYXQzIHBh
cmFtZXRlciB3aXRoIG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuIiwKLSAgICAiY3VzdG9t
KG15LWZpbHRlciwgbSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKSkiLAotICAg
ICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDMoLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIDEp
KSIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJNYXQzIHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNp
Z25lZCBmbG9hdHMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQzKDEsIC0yLjIsIDMu
MTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxKSkiLAotICAgICJjdXN0b20obXktZmlsdGVy
LCBtIG1hdDMoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEpKSIpOwot
Ci1oZWFkaW5nKCJNYXQ0IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgi
TWF0NCBwYXJhbWV0ZXIuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KDEsIDAsIDAs
IDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpKSIsCi0gICAgImN1c3RvbSht
eS1maWx0ZXIsIG0gbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAw
LCAwLCAxKSkiKTsKLXRlc3RGaWx0ZXJQcm9wZXJ0eSgiTWF0NCBwYXJhbWV0ZXIgd2l0aCBuZWdh
dGl2ZSB2YWx1ZXMuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSkiLAot
ICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEs
IC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpKSIpOwotdGVzdEZpbHRlclByb3Bl
cnR5KCJNYXQ0IHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuIiwK
LSAgICAiY3VzdG9tKG15LWZpbHRlciwgbSBtYXQ0KC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0x
LCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSkpIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwg
bSBtYXQ0KC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAx
LCAtMSkpIik7Ci10ZXN0RmlsdGVyUHJvcGVydHkoIk1hdDQgcGFyYW1ldGVyIHdpdGggbXVsdGlw
bGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDQoMSwgLTIu
MiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwg
LTIuMiwgMy4xNCwgMC40KSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBtIG1hdDQoMSwgLTIu
MiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwg
LTIuMiwgMy4xNCwgMC40KSkiKTsKLQotaGVhZGluZygiQ29tYmluZWQgcGFyYW1ldGVyIHRlc3Rz
LiIpOwotdGVzdEZpbHRlclByb3BlcnR5KCJOdW1iZXIgcGFyYW1ldGVyLCBjb2xvciBwYXJhbWV0
ZXIsIHRyYW5zZm9ybSBwYXJhbWV0ZXIsIG1hdHJpeCBwYXJhbWV0ZXJzIGFuZCBhcnJheSBwYXJh
bWV0ZXIuIiwKLSAgICAiY3VzdG9tKG15LWZpbHRlciwgbiAxLCBjIHJnYigwLCAxMjgsIDApLCB0
IHJvdGF0ZSgwZGVnKSwgbTEgbWF0MigxLCAwLCAwLCAxKSwgbTIgbWF0MygxLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAxKSwgbTMgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAw
LCAwLCAwLCAwLCAxKSwgYSBhcnJheSgxKSkiLAotICAgICJjdXN0b20obXktZmlsdGVyLCBuIDEs
IGMgcmdiKDAsIDEyOCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBtYXQyKDEsIDAsIDAsIDEpLCBt
MiBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBtYXQ0KDEsIDAsIDAsIDAsIDAs
IDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFycmF5KDEpKSIpOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4
L3NjcmlwdC10ZXN0cy9wYXJzaW5nLWdlb21ldHJ5LXByb3BlcnR5LWludmFsaWQuanMgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRl
c3RzL3BhcnNpbmctZ2VvbWV0cnktcHJvcGVydHktaW52YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMzk1OTkzYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctZ2Vv
bWV0cnktcHJvcGVydHktaW52YWxpZC5qcworKysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAgQEAK
LS8vIFJlcXVpcmVzIGN1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0
aW9uKCJUZXN0IGdlb21ldHJ5IHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRl
ciBhdC1ydWxlLiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2JhbCBmb3IgdGhlIHRlc3Qg
aGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBmaWx0ZXJBdFJ1bGUsIHN0eWxlRGVjbGFyYXRpb247
Ci0KLWZ1bmN0aW9uIHRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eShkZXNjcmlwdGlvbiwgcHJv
cGVydHlWYWx1ZSkKLXsKLSAgICB2YXIgZ2VvbWV0cnlQcm9wZXJ0eSA9ICJnZW9tZXRyeTogIiAr
IHByb3BlcnR5VmFsdWUgKyAiOyI7Ci0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxu
IiArIGdlb21ldHJ5UHJvcGVydHkpOwotCi0gICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKCJALXdl
YmtpdC1maWx0ZXIgbXktZmlsdGVyIHsgIiArIGdlb21ldHJ5UHJvcGVydHkgKyAiIH0iLCAwKTsK
LQotICAgIGZpbHRlckF0UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBz
aG91bGRCZSgiZmlsdGVyQXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUi
KTsKLQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hv
dWxkQmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwgIjAiKTsKLSAgICBzaG91bGRCZSgic3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdnZW9tZXRyeScpIiwgIm51bGwiKTsKLX0K
LQotaGVhZGluZygiR2VvbWV0cnkgdGVzdHMuIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVy
dHkoIk5vIHByb3BlcnR5IHZhbHVlLiIsICIiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0
eSgiRW1wdHkgZ3JpZC4iLCAiZ3JpZCgpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHko
Ik1pc3BlbGxlZCBncmlkIGZ1bmN0aW9uLiIsICJncmlpZCgxIDEpIik7Ci10ZXN0SW52YWxpZEdl
b21ldHJ5UHJvcGVydHkoIlNpbmdsZSBuZWdhdGl2ZSB2YWx1ZSBpbiBncmlkLiIsICJncmlkKC0x
KSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJOZWdhdGl2ZSB2YWx1ZSBpbiBncmlk
IGFsb25nIHdpdGggYSB2YWxpZCB2YWx1ZS4iLCAiZ3JpZCgxIC0xKSIpOwotdGVzdEludmFsaWRH
ZW9tZXRyeVByb3BlcnR5KCJOZWdhdGl2ZSB2YWx1ZSBpbiBncmlkIGFsb25nIHdpdGggYSB2YWxp
ZCB2YWx1ZSwgaW52ZXJ0ZWQuIiwgImdyaWQoLTEgMSkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQ
cm9wZXJ0eSgiVHdvIG5lZ2F0aXZlIHZhbHVlcy4iLCAiZ3JpZCgtMSAtMSkiKTsKLXRlc3RJbnZh
bGlkR2VvbWV0cnlQcm9wZXJ0eSgiU2luZ2xlIHplcm8gdmFsdWUuIiwgImdyaWQoMCkiKTsKLXRl
c3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiWmVybyB3aXRoIGEgdmFsaWQgdmFsdWUuIiwgImdy
aWQoMCAxKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3BlcnR5KCJaZXJvIHdpdGggYSB2YWxp
ZCB2YWx1ZSwgaW52ZXJ0ZWQuIiwgImdyaWQoMSAwKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVBy
b3BlcnR5KCJBdHRhY2hlZCB2YWx1ZSBhbG9uZS4iLCAiZ3JpZChhdHRhY2hlZCkiKTsKLXRlc3RJ
bnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiRGV0YWNoZWQgdmFsdWUgYWxvbmUuIiwgImdyaWQoZGV0
YWNoZWQpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIkRldGFjaGVkIGFuZCBhdHRh
Y2hlZC4iLCAiZ3JpZChhdHRhY2hlZCBhdHRhY2hlZCkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQ
cm9wZXJ0eSgiVG9vIG1hbnkgdmFsdWVzLiIsICJncmlkKDEgMSBhdHRhY2hlZCBkZXRhY2hlZCki
KTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiTWlzcGVsbGVkIGF0dGFjaGVkLiIsICJn
cmlkKDEgMSBhdHRhY2QpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIk1pc3BlbGxl
ZCBkZXRhY2hlZC4iLCAiZ3JpZCgxIDEgZGV0YWNoZSkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQ
cm9wZXJ0eSgiSW52YWxpZCBkaXZpZGVyLiIsICJncmlkKDEsIDEgYXR0YWNoZWQpIik7Ci10ZXN0
SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIkludmFsaWQgZGl2aWRlciwgcmVsb2FkZWQuIiwgImdy
aWQoMSAxLCBhdHRhY2hlZCkiKTsKLXRlc3RJbnZhbGlkR2VvbWV0cnlQcm9wZXJ0eSgiTm9uIGlu
dGVnZXIgdmFsdWVzLiIsICJncmlkKDEuMyAxKSIpOwotdGVzdEludmFsaWRHZW9tZXRyeVByb3Bl
cnR5KCJOb24gaW50ZWdlciB2YWx1ZXMuIiwgImdyaWQoMSAxLjMpIik7Ci10ZXN0SW52YWxpZEdl
b21ldHJ5UHJvcGVydHkoIlRocmVlIGludGVnZXJzLiIsICJncmlkKDEgMiAzKSIpOwotdGVzdElu
dmFsaWRHZW9tZXRyeVByb3BlcnR5KCJBdHRhY2hlZCBpbiBiZXR3ZWVuIHR3byBpbnRlZ2Vycy4i
LCAiZ3JpZCgxIGF0dGFjaGVkIDEpIik7Ci10ZXN0SW52YWxpZEdlb21ldHJ5UHJvcGVydHkoIkRl
dGFjaGVkIGluIGJldHdlZW4gdHdvIGludGVnZXJzLiIsICJncmlkKDEgZGV0YWNoZWQgMSkiKTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxl
LXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12YWxpZC5qcyBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3Jp
cHQtdGVzdHMvcGFyc2luZy1nZW9tZXRyeS1wcm9wZXJ0eS12YWxpZC5qcwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMjJlMTJhYi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmct
Z2VvbWV0cnktcHJvcGVydHktdmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSw3NyArMCwwIEBA
Ci0vLyBSZXF1aXJlcyBjdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzLgotCi1kZXNjcmlw
dGlvbigiVGVzdCBnZW9tZXRyeSBwcm9wZXJ0eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0
ZXIgYXQtcnVsZS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0
IGhlbHBlcnMgdG8gc2VlIHRoZW0uCi12YXIgZmlsdGVyQXRSdWxlLCBzdHlsZURlY2xhcmF0aW9u
LCBnZW9tZXRyeVByb3BlcnR5VmFsdWUsIHN1YlZhbHVlOwotCi1mdW5jdGlvbiB0ZXN0R2VvbWV0
cnlQcm9wZXJ0eShkZXNjcmlwdGlvbiwgcHJvcGVydHlWYWx1ZSwgZXhwZWN0ZWRWYWx1ZSwgZXhw
ZWN0ZWRUZXh0cykKLXsKLSAgICB2YXIgZ2VvbWV0cnlQcm9wZXJ0eSA9ICJnZW9tZXRyeTogIiAr
IHByb3BlcnR5VmFsdWUgKyAiOyIKLSAgICBkZWJ1ZygiXG4iICsgZGVzY3JpcHRpb24gKyAiXG4i
ICsgZ2VvbWV0cnlQcm9wZXJ0eSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoIkAtd2Vi
a2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgZ2VvbWV0cnlQcm9wZXJ0eSArICIgfSIsIDApOwot
ICAgIGZpbHRlckF0UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsKLSAgICBzaG91
bGRCZSgiZmlsdGVyQXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJLSVRfRklMVEVSX1JVTEUiKTsK
LQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUuc3R5bGU7Ci0gICAgc2hvdWxk
QmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwgIjEiKTsKLSAgICBzaG91bGRCZSgicmVtb3Zl
QmFzZVVSTChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ2dlb21ldHJ5JykpIiwg
IlwiIiArIGV4cGVjdGVkVmFsdWUgKyAiXCIiKTsKLQotICAgIGdlb21ldHJ5UHJvcGVydHlWYWx1
ZSA9IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlDU1NWYWx1ZSgnZ2VvbWV0cnknKTsKLSAg
ICBzaG91bGRIYXZlQ29uc3RydWN0b3IoImdlb21ldHJ5UHJvcGVydHlWYWx1ZSIsICJDU1NWYWx1
ZUxpc3QiKTsKLQotICAgIHNob3VsZEJlKCJnZW9tZXRyeVByb3BlcnR5VmFsdWUubGVuZ3RoIiwg
ZXhwZWN0ZWRUZXh0cy5sZW5ndGgudG9TdHJpbmcoKSk7IC8vIHNob3VsZEJlIGV4cGVjdHMgc3Ry
aW5nIGFyZ3VtZW50cwotfQotCi1oZWFkaW5nKCJHZW9tZXRyeSBwcm9wZXJ0eS4iKTsKLQotdGVz
dEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdpdGggZnVsbCBtZXNoIGFuZCBhdHRhY2hlZC4i
LAotICAgICJncmlkKDEgMSBhdHRhY2hlZCkiLAotICAgICIxIDEgYXR0YWNoZWQiLAotICAgIFsi
MSIsICIxIiwgImF0dGFjaGVkIl0pOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0cnkg
d2l0aCBmdWxsIG1lc2ggYW5kIGRldGFjaGVkLiIsCi0gICAgImdyaWQoMSAxIGRldGFjaGVkKSIs
Ci0gICAgIjEgMSBkZXRhY2hlZCIsCi0gICAgWyIxIiwgIjEiLCAiZGV0YWNoZWQiXSk7Ci0KLXRl
c3RHZW9tZXRyeVByb3BlcnR5KCJHZW9tZXRyeSB3aXRoIGZ1bGwgbWVzaCBhbmQgbm8gYXR0YWNo
ZWQsIG5vciBkZXRhY2hlZC4iLAotICAgICJncmlkKDEgMSkiLAotICAgICIxIDEiLAotICAgIFsi
MSIsICIxIl0pOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0cnkgd2l0aCBvbmx5IG9u
ZSBtZXNoIHZhbHVlLiIsCi0gICAgImdyaWQoMSkiLAotICAgICIxIiwKLSAgICBbIjEiXSk7Ci0K
LXRlc3RHZW9tZXRyeVByb3BlcnR5KCJHZW9tZXRyeSB3aXRoIG9uZSBtZXNoIHZhbHVlIGFuZCBh
dHRhY2hlZC4iLAotICAgICJncmlkKDEgYXR0YWNoZWQpIiwKLSAgICAiMSBhdHRhY2hlZCIsCi0g
ICAgWyIxIiwgImF0dGFjaGVkIl0pOwotCi10ZXN0R2VvbWV0cnlQcm9wZXJ0eSgiR2VvbWV0cnkg
d2l0aCBvbmUgbWVzaCB2YWx1ZSBhbmQgZGV0YWNoZWQuIiwKLSAgICAiZ3JpZCgxIGRldGFjaGVk
KSIsCi0gICAgIjEgZGV0YWNoZWQiLAotICAgIFsiMSIsICJkZXRhY2hlZCJdKTsKLQotdGVzdEdl
b21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdpdGggYXR0YWNoZWQgYmVmb3JlIG9uZSBtZXNoIHZh
bHVlLiIsCi0gICAgImdyaWQoYXR0YWNoZWQgMSkiLAotICAgICJhdHRhY2hlZCAxIiwKLSAgICBb
ImF0dGFjaGVkIiwgIjEiXSk7Ci0KLXRlc3RHZW9tZXRyeVByb3BlcnR5KCJHZW9tZXRyeSB3aXRo
IGF0dGFjaGVkIGJlZm9yZSB0d28gbWVzaCB2YWx1ZXMuIiwKLSAgICAiZ3JpZChhdHRhY2hlZCAx
IDEpIiwKLSAgICAiYXR0YWNoZWQgMSAxIiwKLSAgICBbImF0dGFjaGVkIiwgIjEiLCAiMSJdKTsK
LQotdGVzdEdlb21ldHJ5UHJvcGVydHkoIkdlb21ldHJ5IHdpdGggZGV0YWNoZWQgYmVmb3JlIG9u
ZSBtZXNoIHZhbHVlLiIsCi0gICAgImdyaWQoZGV0YWNoZWQgMSkiLAotICAgICJkZXRhY2hlZCAx
IiwKLSAgICBbImRldGFjaGVkIiwgIjEiXSk7Ci0KLXRlc3RHZW9tZXRyeVByb3BlcnR5KCJHZW9t
ZXRyeSB3aXRoIGRldGFjaGVkIGJlZm9yZSB0d28gbWVzaCB2YWx1ZXMuIiwKLSAgICAiZ3JpZChk
ZXRhY2hlZCAxIDEpIiwKLSAgICAiZGV0YWNoZWQgMSAxIiwKLSAgICBbImRldGFjaGVkIiwgIjEi
LCAiMSJdKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0
aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJvcGVydHktaW52YWxp
ZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRh
eC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJvcGVydHktaW52YWxpZC5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggZDUyYzhhYi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNp
bmctbWl4LXByb3BlcnR5LWludmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwzMCArMCwwIEBA
Ci0vLyBSZXF1aXJlcyBjdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzLgotCi1kZXNjcmlw
dGlvbigiVGVzdCBtaXggcHJvcGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0
LXJ1bGUuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxw
ZXJzIHRvIHNlZSB0aGVtLgotdmFyIGZpbHRlckF0UnVsZSwgc3R5bGVEZWNsYXJhdGlvbjsKLQot
ZnVuY3Rpb24gdGVzdEludmFsaWRNaXhQcm9wZXJ0eShkZXNjcmlwdGlvbiwgcHJvcGVydHlWYWx1
ZSkKLXsKLSAgICB2YXIgbWl4UHJvcGVydHkgPSAibWl4OiAiICsgcHJvcGVydHlWYWx1ZSArICI7
IjsKLSAgICBkZWJ1ZygiXG4iICsgZGVzY3JpcHRpb24gKyAiXG4iICsgbWl4UHJvcGVydHkpOwot
Ci0gICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKCJALXdlYmtpdC1maWx0ZXIgbXktZmlsdGVyIHsg
IiArIG1peFByb3BlcnR5ICsgIiB9IiwgMCk7Ci0KLSAgICBmaWx0ZXJBdFJ1bGUgPSBzdHlsZXNo
ZWV0LmNzc1J1bGVzLml0ZW0oMCk7Ci0gICAgc2hvdWxkQmUoImZpbHRlckF0UnVsZS50eXBlIiwg
IkNTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFIik7Ci0KLSAgICBzdHlsZURlY2xhcmF0aW9uID0g
ZmlsdGVyQXRSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCIsICIwIik7Ci0gICAgc2hvdWxkQmUoInN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnbWl4JykiLCAibnVsbCIpOwotfQotCi1oZWFkaW5nKCJWYWx1ZSB0ZXN0LiIpOwotdGVzdElu
dmFsaWRNaXhQcm9wZXJ0eSgiTm8gcHJvcGVydHkgdmFsdWUuIiwgIiIpOwotdGVzdEludmFsaWRN
aXhQcm9wZXJ0eSgiVGhyZWUgdmFsdWVzLiIsICJzY3JlZW4gc291cmNlLW92ZXIgc2NyZWVuIik7
Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJUaHJlZSB2YWx1ZXMuIiwgInNjcmVlbiBzb3VyY2Ut
b3ZlciBzb3VyY2Utb3ZlciIpOwotdGVzdEludmFsaWRNaXhQcm9wZXJ0eSgiVHdvIGJsZW5kIG1v
ZGVzLiIsICJzY3JlZW4gc2NyZWVuIik7Ci10ZXN0SW52YWxpZE1peFByb3BlcnR5KCJUd28gY29t
cG9zaXRlIG9wZXJhdG9ycy4iLCAic291cmNlLW92ZXIgc291cmNlLW92ZXIiKTsKLXRlc3RJbnZh
bGlkTWl4UHJvcGVydHkoIlR3byBibGVuZCBtb2Rlcy4iLCAic2NyZWVuIHNjcmVlbiIpOwotdGVz
dEludmFsaWRNaXhQcm9wZXJ0eSgiQ29tbWEgYmV0d2VlbiB2YWx1ZXMuIiwgInNjcmVlbiwgc291
cmNlLW92ZXIiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1taXgtcHJvcGVydHktdmFs
aWQuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50
YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctbWl4LXByb3BlcnR5LXZhbGlkLmpzCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAxMmE2MzIyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2lu
Zy1taXgtcHJvcGVydHktdmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSw4NSArMCwwIEBACi0v
LyBSZXF1aXJlcyBjdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzLgotCi1kZXNjcmlwdGlv
bigiVGVzdCBtaXggcHJvcGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQtZmlsdGVyIGF0LXJ1
bGUuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVzdCBoZWxwZXJz
IHRvIHNlZSB0aGVtLgotdmFyIGZpbHRlckF0UnVsZSwgc3R5bGVEZWNsYXJhdGlvbiwgbWl4UHJv
cGVydHlWYWx1ZSwgc3ViVmFsdWU7Ci0KLWZ1bmN0aW9uIHRlc3RNaXhQcm9wZXJ0eShkZXNjcmlw
dGlvbiwgcHJvcGVydHlWYWx1ZSwgZXhwZWN0ZWRWYWx1ZSwgZXhwZWN0ZWRUZXh0cykKLXsKLSAg
ICB2YXIgbWl4UHJvcGVydHkgPSAibWl4OiAiICsgcHJvcGVydHlWYWx1ZSArICI7IgotICAgIGRl
YnVnKCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBtaXhQcm9wZXJ0eSk7Ci0KLSAgICBzdHls
ZXNoZWV0Lmluc2VydFJ1bGUoIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgbWl4UHJv
cGVydHkgKyAiIH0iLCAwKTsKLSAgICBmaWx0ZXJBdFJ1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVz
Lml0ZW0oMCk7Ci0gICAgc2hvdWxkQmUoImZpbHRlckF0UnVsZS50eXBlIiwgIkNTU1J1bGUuV0VC
S0lUX0ZJTFRFUl9SVUxFIik7Ci0KLSAgICBzdHlsZURlY2xhcmF0aW9uID0gZmlsdGVyQXRSdWxl
LnN0eWxlOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmxlbmd0aCIsICIxIik7Ci0g
ICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCdtaXgnKSkiLCAiXCIiICsgZXhwZWN0ZWRWYWx1ZSArICJcIiIpOwotCi0gICAgbWl4UHJv
cGVydHlWYWx1ZSA9IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlDU1NWYWx1ZSgnbWl4Jyk7
Ci0gICAgc2hvdWxkSGF2ZUNvbnN0cnVjdG9yKCJtaXhQcm9wZXJ0eVZhbHVlIiwgIkNTU1ZhbHVl
TGlzdCIpOwotCi0gICAgc2hvdWxkQmUoIm1peFByb3BlcnR5VmFsdWUubGVuZ3RoIiwgZXhwZWN0
ZWRUZXh0cy5sZW5ndGgudG9TdHJpbmcoKSk7IC8vIHNob3VsZEJlIGV4cGVjdHMgc3RyaW5nIGFy
Z3VtZW50cwotICAKLSAgICBpZiAobWl4UHJvcGVydHlWYWx1ZSkgewotICAgICAgICBmb3IgKHZh
ciBpID0gMDsgaSA8IGV4cGVjdGVkVGV4dHMubGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICAgIHN1
YlZhbHVlID0gbWl4UHJvcGVydHlWYWx1ZVtpXTsKLSAgICAgICAgICAgIHNob3VsZEJlKCJzdWJW
YWx1ZS5jc3NWYWx1ZVR5cGUiLCAiQ1NTVmFsdWUuQ1NTX1BSSU1JVElWRV9WQUxVRSIpOwotICAg
ICAgICAgICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCkiLCAiXCIi
ICsgZXhwZWN0ZWRUZXh0c1tpXSArICJcIiIpOwotICAgICAgICB9Ci0gICAgfQotfQotCi1oZWFk
aW5nKCJUZXN0IGJsZW5kIG1vZGUga2V5d29yZHMuIik7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3Qg
bXVsdGlwbHkuIiwgIm11bHRpcGx5IiwgIm11bHRpcGx5IiwgWyJtdWx0aXBseSJdKTsKLXRlc3RN
aXhQcm9wZXJ0eSgiVGVzdCBzY3JlZW4uIiwgInNjcmVlbiIsICJzY3JlZW4iLCBbInNjcmVlbiJd
KTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBvdmVybGF5LiIsICJvdmVybGF5IiwgIm92ZXJsYXki
LCBbIm92ZXJsYXkiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgZGFya2VuLiIsICJkYXJrZW4i
LCAiZGFya2VuIiwgWyJkYXJrZW4iXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgbGlnaHRlbi4i
LCAibGlnaHRlbiIsICJsaWdodGVuIiwgWyJsaWdodGVuIl0pOwotdGVzdE1peFByb3BlcnR5KCJU
ZXN0IGNvbG9yLWRvZGdlLiIsICJjb2xvci1kb2RnZSIsICJjb2xvci1kb2RnZSIsIFsiY29sb3It
ZG9kZ2UiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgY29sb3ItYnVybi4iLCAiY29sb3ItYnVy
biIsICJjb2xvci1idXJuIiwgWyJjb2xvci1idXJuIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0
IGhhcmQtbGlnaHQuIiwgImhhcmQtbGlnaHQiLCAiaGFyZC1saWdodCIsIFsiaGFyZC1saWdodCJd
KTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBzb2Z0LWxpZ2h0LiIsICJzb2Z0LWxpZ2h0IiwgInNv
ZnQtbGlnaHQiLCBbInNvZnQtbGlnaHQiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgZGlmZmVy
ZW5jZS4iLCAiZGlmZmVyZW5jZSIsICJkaWZmZXJlbmNlIiwgWyJkaWZmZXJlbmNlIl0pOwotdGVz
dE1peFByb3BlcnR5KCJUZXN0IGV4Y2x1c2lvbi4iLCAiZXhjbHVzaW9uIiwgImV4Y2x1c2lvbiIs
IFsiZXhjbHVzaW9uIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IGh1ZS4iLCAiaHVlIiwgImh1
ZSIsIFsiaHVlIl0pOwotdGVzdE1peFByb3BlcnR5KCJUZXN0IHNhdHVyYXRpb24uIiwgInNhdHVy
YXRpb24iLCAic2F0dXJhdGlvbiIsIFsic2F0dXJhdGlvbiJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgi
VGVzdCBjb2xvci4iLCAiY29sb3IiLCAiY29sb3IiLCBbImNvbG9yIl0pOwotdGVzdE1peFByb3Bl
cnR5KCJUZXN0IGx1bWlub3NpdHkuIiwgImx1bWlub3NpdHkiLCAibHVtaW5vc2l0eSIsIFsibHVt
aW5vc2l0eSJdKTsKLQotaGVhZGluZygiVGVzdCBjb21wb3NpdGUga2V5d29yZHMuIik7Ci10ZXN0
TWl4UHJvcGVydHkoIlRlc3QgY2xlYXIuIiwgImNsZWFyIiwgImNsZWFyIiwgWyJjbGVhciJdKTsK
LXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBjb3B5LiIsICJjb3B5IiwgImNvcHkiLCBbImNvcHkiXSk7
Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3Qgc291cmNlLW92ZXIuIiwgInNvdXJjZS1vdmVyIiwgInNv
dXJjZS1vdmVyIiwgWyJzb3VyY2Utb3ZlciJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBzb3Vy
Y2UtaW4uIiwgInNvdXJjZS1pbiIsICJzb3VyY2UtaW4iLCBbInNvdXJjZS1pbiJdKTsKLXRlc3RN
aXhQcm9wZXJ0eSgiVGVzdCBzb3VyY2Utb3V0LiIsICJzb3VyY2Utb3V0IiwgInNvdXJjZS1vdXQi
LCBbInNvdXJjZS1vdXQiXSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3Qgc291cmNlLWF0b3AuIiwg
InNvdXJjZS1hdG9wIiwgInNvdXJjZS1hdG9wIiwgWyJzb3VyY2UtYXRvcCJdKTsKLXRlc3RNaXhQ
cm9wZXJ0eSgiVGVzdCBkZXN0aW5hdGlvbi1vdmVyLiIsICJkZXN0aW5hdGlvbi1vdmVyIiwgImRl
c3RpbmF0aW9uLW92ZXIiLCBbImRlc3RpbmF0aW9uLW92ZXIiXSk7Ci10ZXN0TWl4UHJvcGVydHko
IlRlc3QgZGVzdGluYXRpb24taW4uIiwgImRlc3RpbmF0aW9uLWluIiwgImRlc3RpbmF0aW9uLWlu
IiwgWyJkZXN0aW5hdGlvbi1pbiJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBkZXN0aW5hdGlv
bi1vdXQuIiwgImRlc3RpbmF0aW9uLW91dCIsICJkZXN0aW5hdGlvbi1vdXQiLCBbImRlc3RpbmF0
aW9uLW91dCJdKTsKLXRlc3RNaXhQcm9wZXJ0eSgiVGVzdCBkZXN0aW5hdGlvbi1hdG9wLiIsICJk
ZXN0aW5hdGlvbi1hdG9wIiwgImRlc3RpbmF0aW9uLWF0b3AiLCBbImRlc3RpbmF0aW9uLWF0b3Ai
XSk7Ci10ZXN0TWl4UHJvcGVydHkoIlRlc3QgeG9yLiIsICJ4b3IiLCAieG9yIiwgWyJ4b3IiXSk7
Ci0KLXRlc3RNaXhQcm9wZXJ0eSgiQmxlbmQgbW9kZSBhbmQgY29tcG9zaXRlIHRvZ2V0aGVyLiIs
Ci0gICAgInNjcmVlbiBzb3VyY2Utb3ZlciIsCi0gICAgInNjcmVlbiBzb3VyY2Utb3ZlciIsCi0g
ICAgWyJzY3JlZW4iLCAic291cmNlLW92ZXIiXSk7Ci0KLXRlc3RNaXhQcm9wZXJ0eSgiQ29tcG9z
aXRlIGFuZCBibGVuZCBtb2RlIHRvZ2V0aGVyLiIsCi0gICAgInNvdXJjZS1vdmVyIHNjcmVlbiIs
Ci0gICAgInNvdXJjZS1vdmVyIHNjcmVlbiIsCi0gICAgWyJzb3VyY2Utb3ZlciIsICJzY3JlZW4i
XSk7Ci0KLWhlYWRpbmcoIkNhcGl0YWxpemF0aW9uIHRlc3RzLiIpOwotdGVzdE1peFByb3BlcnR5
KCJBbGwgdG9rZW5zIGNhcGl0YWxpemVkLiIsCi0gICAgIlNDUkVFTiBTT1VSQ0UtT1ZFUiIsCi0g
ICAgInNjcmVlbiBzb3VyY2Utb3ZlciIsCi0gICAgWyJzY3JlZW4iLCAic291cmNlLW92ZXIiXSk7
Ci0KLWhlYWRpbmcoIldoaXRlc3BhY2UgdGVzdHMuIik7Ci10ZXN0TWl4UHJvcGVydHkoIkV4dHJh
IGxlYWRpbmcsIG1pZGRsZSwgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UuICIsCi0gICAgIiAgIHNj
cmVlbiAgIHNvdXJjZS1vdmVyICAgIiwKLSAgICAic2NyZWVuIHNvdXJjZS1vdmVyIiwKLSAgICBb
InNjcmVlbiIsICJzb3VyY2Utb3ZlciJdKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1w
YXJhbWV0ZXJzLXByb3BlcnR5LWludmFsaWQuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctcGFyYW1ldGVy
cy1wcm9wZXJ0eS1pbnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2YWRk
YTE1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1wYXJhbWV0ZXJzLXByb3BlcnR5LWlu
dmFsaWQuanMKKysrIC9kZXYvbnVsbApAQCAtMSwxMjcgKzAsMCBAQAotLy8gUmVxdWlyZXMgY3Vz
dG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5qcy4KLQotZGVzY3JpcHRpb24oIlRlc3QgcGFyYW1l
dGVycyBwcm9wZXJ0eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsK
LQotLy8gVGhlc2UgaGF2ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2Vl
IHRoZW0uCi12YXIgZmlsdGVyQXRSdWxlLCBzdHlsZURlY2xhcmF0aW9uOwotCi1mdW5jdGlvbiB0
ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eShkZXNjcmlwdGlvbiwgcHJvcGVydHlWYWx1ZSkK
LXsKLSAgICB2YXIgcGFyYW1ldGVyc1Byb3BlcnR5ID0gInBhcmFtZXRlcnM6ICIgKyBwcm9wZXJ0
eVZhbHVlICsgIjsiOwotICAgIGRlYnVnKCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBwYXJh
bWV0ZXJzUHJvcGVydHkpOwotCi0gICAgc3R5bGVzaGVldC5pbnNlcnRSdWxlKCJALXdlYmtpdC1m
aWx0ZXIgbXktZmlsdGVyIHsgIiArIHBhcmFtZXRlcnNQcm9wZXJ0eSArICIgfSIsIDApOwotCi0g
ICAgZmlsdGVyQXRSdWxlID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAgIHNob3Vs
ZEJlKCJmaWx0ZXJBdFJ1bGUudHlwZSIsICJDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSIpOwot
Ci0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IGZpbHRlckF0UnVsZS5zdHlsZTsKLSAgICBzaG91bGRC
ZSgic3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgiLCAiMCIpOwotICAgIHNob3VsZEJlKCJzdHlsZURl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ3BhcmFtZXRlcnMnKSIsICJudWxsIik7Ci19Ci0K
LWhlYWRpbmcoIk51bWJlciBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRl
cnNQcm9wZXJ0eSgiVG9vIG1hbnkgcGFyYW1ldGVyIHZhbHVlcy4iLCAibiAxIDIgMyA0IDUiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJbnZhbGlkIHBhcmFtZXRlciB0eXBlLiIs
ICJuIDEuMCAyLjAgJ3RleHQnIik7Ci0KLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJO
byBwYXJhbWV0ZXIgZGVmaW5pdGlvbi4iLCAiIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9w
ZXJ0eSgiTm8gcGFyYW1ldGVyIGRlZmluaXRpb24gd2l0aCBjb21tYS4iLCAiLCIpOwotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIHBhcmFtZXRlciBkZWZpbml0aW9uIGJlZm9yZSB2
YWxpZCBwYXJhbWV0ZXIgZGVmaW50aW9uLiIsICIsIG4gMSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIk5vIHBhcmFtZXRlciB2YWx1ZS4iLCAibiIpOwotdGVzdEludmFsaWRQYXJh
bWV0ZXJzUHJvcGVydHkoIk5vIHBhcmFtZXRlciB2YWx1ZSB3aXRoIG11bHRpcGxlIHBhcmFtZXRl
cnMuIiwgIm4xLCBuMiwgbjMiKTsKLQotaGVhZGluZygiQ29sb3IgcGFyYW1ldGVyIHRlc3RzLiIp
OwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIHJnYiBjb2xvciB2YWx1ZXMuIiwg
ImMgcmdiKCwsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIGhzbCBjb2xv
ciB2YWx1ZXMuIiwgImMgaHNsKCwsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHko
IkhleCB3aXRoIDggY2hhcmFjdGVycy4iLCAiYyAjRkYwMDAwRkYiKTsKLXRlc3RJbnZhbGlkUGFy
YW1ldGVyc1Byb3BlcnR5KCJIZXggd2l0aCAyIGNoYXJhY3Rlci4iLCAiYyAjRkYiKTsKLXRlc3RJ
bnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJSZ2JhIHdpdGggMyB2YWx1ZXMgYW5kIDIgY29tbWFz
LiIsICJjIHJnYmEoMjU1LCAwLCAwKSIpOwotCi1oZWFkaW5nKCJUcmFuc2Zvcm0gcGFyYW1ldGVy
IHRlc3RzLiIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk9uZSBpbnZhbGlkIHRy
YW5zZm9ybSBmdW5jdGlvbi4iLCAidCBpbnZhbGlkLXJvdGF0ZSgwZGVnKSIpOwotdGVzdEludmFs
aWRQYXJhbWV0ZXJzUHJvcGVydHkoIk11bHRpcGxlIGludmFsaWQgdHJhbnNmb3JtIGZ1bmN0aW9u
cy4iLCAidCBpbnZhbGlkLXJvdGF0ZSgwZGVnKSBpbnZhbGlkLXBlcnNwZWN0aXZlKDApIik7Ci10
ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSW52YWxpZCB0cmFuc2Zvcm0gZnVuY3Rpb24g
YmV0d2VlbiB2YWxpZCBvbmVzLiIsICJ0IHJvdGF0ZSgwZGVnKSBpbnZhbGlkLXJvdGF0ZSgwZGVn
KSBwZXJzcGVjdGl2ZSgwKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlZhbGlk
IHRyYW5zZm9ybSBmdW5jdGlvbiBiZXR3ZWVuIGludmFsaWQgb25lcy4iLCAidCBpbnZhbGlkLXJv
dGF0ZSgwZGVnKSBwZXJzcGVjdGl2ZSgwKSBpbnZhbGlkLXRyYW5zbGF0ZSgwKSIpOwotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlZhbGlkIHRyYW5zZm9ybSBmdW5jdGlvbiB3aXRoIHRy
YWlsaW5nIGNvbW1hLiIsICJ0IHBlcnNwZWN0aXZlKDApLCIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIkludmFsaWQgdHJhbnNmb3JtIHdpdGggdHJhaWxpbmcgY29tbWEuIiwgInQg
aW52YWxpZC1yb3RhdGUoMGRlZyksIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgi
VmFsaWQgdHJhbnNmb3JtIHdpdGggaW52YWxpZCBjaGFyYWN0ZXJzIiwgInQgcm90YXRlKDBkZWcp
ICouLSwiKTsKLQotaGVhZGluZygiQXJyYXkgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdEludmFs
aWRQYXJhbWV0ZXJzUHJvcGVydHkoIkVtcHR5IGFycmF5LiIsICJhIGFycmF5KCkiKTsKLXRlc3RJ
bnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJPbmUgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXko
LCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJNdWx0aXBsZSBjb21tYXMgaW4g
YXJyYXkuIiwgImEgYXJyYXkoLCwsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHko
Ik11bHRpcGxlIGNvbW1hcyB3aXRoIGEgdmFsdWUgaW4gYXJyYXkuIiwgImEgYXJyYXkoLCwxLCki
KTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJPbmUgY29tbWEgZm9sbG93ZWQgYnkg
YSBuZWdhdGl2ZSB2YWx1ZSBpbiBhcnJheS4iLCAiYSBhcnJheSgsLTQpIik7Ci10ZXN0SW52YWxp
ZFBhcmFtZXRlcnNQcm9wZXJ0eSgiT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEgdmFsdWUgaW4gYXJy
YXkuIiwgImEgYXJyYXkoLDQpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiT25l
IG5lZ2F0aXZlIHZhbHVlIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkuIiwgImEgYXJyYXko
LTQsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk9uZSB2YWx1ZSBmb2xsb3dl
ZCBieSBhIGNvbW1hIGluIGFycmF5LiIsICJhIGFycmF5KDQsKSIpOwotdGVzdEludmFsaWRQYXJh
bWV0ZXJzUHJvcGVydHkoIlZhbGlkIHZhbHVlcyBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5
LiIsICJhIGFycmF5KDEsIDIsIDMsIDQsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVy
dHkoIlZhbGlkIHZhbHVlcyBmb2xsb3dlZCBieSBhIGxldHRlciBpbiBhcnJheS4iLCAiYSBhcnJh
eSgxLCAyLCAzLCA0LCB4KSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlR3byBj
b21tYXMgYXMgc2VwYXJhdG9yIGJldHdlZW4gdmFsdWVzIGluIGFycmF5LiIsICJhIGFycmF5KDEs
IDIsICwgNCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJMZWFkaW5nIGNvbW1h
IGluIGFycmF5LiIsICJhIGFycmF5KCwxLCAyLCAzLCA0KSIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIlNlbWljb2xvbiBzZXBhcmF0ZWQgdmFsdWVzIGluIGFycmF5LiIsICJhIGFy
cmF5KDE7IDI7IDM7IDQpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU3BhY2Ug
c2VwYXJhdGVkIHZhbHVlcyBpbiBhcnJheS4iLCAiYSBhcnJheSgxIDIgMyA0KSIpOwotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgd2l0aCBjb21t
YSB0ZXJtaW5hdG9yIGluIGFycmF5LiIsICJhIGFycmF5KDEgMiAzIDQsKSIpOwotdGVzdEludmFs
aWRQYXJhbWV0ZXJzUHJvcGVydHkoIlNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgd2l0aCBsZWFkaW5n
IGNvbW1hIGluIGFycmF5LiIsICJhIGFycmF5KCwgMSAyIDMgNCkiKTsKLXRlc3RJbnZhbGlkUGFy
YW1ldGVyc1Byb3BlcnR5KCJOYU4gaW4gYXJyYXkuIiwgImEgYXJyYXkoTmFOKSIpOwotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5hTiBiZXR3ZWVuIHZhbGlkIHZhbHVlcyBpbiBhcnJh
eS4iLCAiYSBhcnJheSgxLCAyLCBOYU4sIDMpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9w
ZXJ0eSgiSW52YWxpZCB2YWx1ZSAnbm9uZScgaW4gYXJyYXkuIiwgImEgYXJyYXkobm9uZSkiKTsK
LXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJJbnZhbGlkIHZhbHVlIHVuaXQgJ3B4JyBp
biBhcnJheS4iLCAiYSBhcnJheSgxcHgpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0
eSgiSW52YWxpZCB2YWx1ZSB1bml0ICdkZWcnIGluIGFycmF5LiIsICJhIGFycmF5KDFkZWcpIik7
Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSW52YWxpZCB2YWx1ZSB1bml0ICdweCcg
aW4gYXJyYXkgYWZ0ZXIgdmFsaWQgdmFsdWVzLiIsICJhIGFycmF5KDEsIDIsIDMsIDRweCkiKTsK
LQotaGVhZGluZygiTWF0MiBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRl
cnNQcm9wZXJ0eSgiRW1wdHkgbWF0Mi4iLCAiYSBtYXQyKCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1l
dGVyc1Byb3BlcnR5KCJUb28gdmlldyBhcmd1bWVudHMuIiwgImEgbWF0MigwLCAwLCAwKSIpOwot
dGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIGFyZ3VtZW50cyBidXQgY29tbWFzLiIs
ICJhIG1hdDIoLCwsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkVuZGluZyBj
b21tYXMuIiwgImEgbWF0MigwLCAwLCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0
eSgiSWRlbnRzIGluIG1hdDIgZnVuY3Rpb24uIiwgImEgbWF0MigwLCAwLCBhLCBiKSIpOwotdGVz
dEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyBtYW55IGFyZ3VtZW50cy4iLCAiYSBtYXQy
KDAsIDAsIDAsIDAsIDEpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gY29t
bWFzLiIsICJhIG1hdDIoMSAwIDAgMSkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5
KCJTb21lIGNvbW1hcy4iLCAiYSBtYXQyKDEsIDAsIDAgMSkiKTsKLXRlc3RJbnZhbGlkUGFyYW1l
dGVyc1Byb3BlcnR5KCJMZWFkaW5nIGNvbW1hcy4iLCAiYSBtYXQyKCwgMCwgMCwgMSkiKTsKLXRl
c3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBsZW5ndGggdW5pdHMuIiwgImEgbWF0Migx
cHgsIDBweCwgMHB4LCAxcHgpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8g
ZGVncmVlIHVuaXRzLiIsICJhIG1hdDIoMWRlZywgMGRlZywgMGRlZywgMWRlZykiKTsKLXRlc3RJ
bnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJOYU4gaW4gbWF0Mi4iLCAiYSBtYXQyKDEsIDAsIDAs
IE5hTikiKTsKLQotaGVhZGluZygiTWF0MyBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxp
ZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW1wdHkgbWF0My4iLCAiYSBtYXQzKCkiKTsKLXRlc3RJbnZh
bGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJUb28gdmlldyBhcmd1bWVudHMuIiwgImEgbWF0MygwLCAw
LCAwLCAwKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIGFyZ3VtZW50cyBi
dXQgY29tbWFzLiIsICJhIG1hdDMoLCwsLCwsLCwsLCwsLCwsKSIpOwotdGVzdEludmFsaWRQYXJh
bWV0ZXJzUHJvcGVydHkoIkVuZGluZyBjb21tYXMuIiwgImEgbWF0MygxLCAwLCAwLCAwLCAxLCAw
LCAwLCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSWRlbnRzIGluIG1hdDMg
ZnVuY3Rpb24uIiwgImEgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCBhLCBiKSIpOwotdGVzdElu
dmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyBtYW55IGFyZ3VtZW50cy4iLCAiYSBtYXQzKDEs
IDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9w
ZXJ0eSgiTm8gY29tbWFzLiIsICJhIG1hdDMoMSAwIDAgMCAxIDAgMCAwIDEpIik7Ci10ZXN0SW52
YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiU29tZSBjb21tYXMuIiwgImEgbWF0MygxLCAwLCAwLCAw
LCAxLCAwIDAgMCAxKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkxlYWRpbmcg
Y29tbWFzLiIsICJhIG1hdDMoLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSIpOwotdGVzdEludmFs
aWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIGxlbmd0aCB1bml0cy4iLCAiYSBtYXQzKDFweCwgMCwg
MCwgMCwgMXB4LCAwLCAwLCAwLCAxcHgpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0
eSgiTm8gZGVncmVlIHVuaXRzLiIsICJhIG1hdDMoMWRlZywgMCwgMCwgMCwgMWRlZywgMCwgMCwg
MCwgMWRlZykiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJOYU4gaW4gbWF0My4i
LCAiYSBtYXQyKE5hTiwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSkiKTsKLQotaGVhZGluZygiTWF0
NCBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiRW1w
dHkgbWF0NC4iLCAiYSBtYXQ0KCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJU
b28gdmlldyBhcmd1bWVudHMuIiwgImEgbWF0NCgxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSIp
OwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIk5vIGFyZ3VtZW50cyBidXQgY29tbWFz
LiIsICJhIG1hdDQoLCwsLCwsLCwsLCwsLCwsKSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJv
cGVydHkoIkVuZGluZyBjb21tYXMuIiwgImEgbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAw
LCAwLCAxLCAwLCAwLCAwLCwpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiSWRl
bnRzIGluIG1hdDQgZnVuY3Rpb24uIiwgImEgbWF0NCgxLCAwLCAwLCAwLCAxLCAwLCAwLCBhLCBi
KSIpOwotdGVzdEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIlRvbyBtYW55IGFyZ3VtZW50cy4i
LCAiYSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEs
IDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTm8gY29tbWFzLiIsICJhIG1h
dDQoMSAwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSkiKTsKLXRlc3RJbnZhbGlkUGFyYW1l
dGVyc1Byb3BlcnR5KCJTb21lIGNvbW1hcy4iLCAiYSBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAs
IDAsIDAsIDAsIDEsIDAgMCAwIDAgMSkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5
KCJMZWFkaW5nIGNvbW1hcy4iLCAiYSBtYXQ0KCwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwg
MSwgMCwgMCwgMCwgMCwgMSkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJObyBs
ZW5ndGggdW5pdHMuIiwgImEgbWF0NCgxcHgsIDAsIDAsIDAsIDAsIDFweCwgMCwgMCwgMCwgMCwg
MXB4LCAwLCAwLCAwLCAwLCAxcHgpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgi
Tm8gZGVncmVlIHVuaXRzLiIsICJhIG1hdDQoMWRlZywgMCwgMCwgMCwgMCwgMWRlZywgMCwgMCwg
MCwgMCwgMWRlZywgMCwgMCwgMCwgMCwgMWRlZykiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1By
b3BlcnR5KCJOYU4gaW4gbWF0NC4iLCAiYSBtYXQ0KE5hTiwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMCwgMSkiKTsKLQotaGVhZGluZygiTWl4aW5nIHBhcmFtZXRlciB0
eXBlcy4iKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJOdW1iZXIgcGFyYW1ldGVy
IHdpdGggaGV4IGNvbG9yLiIsICJuMSAxIDIgI0ZGMDAwMCIpOwotdGVzdEludmFsaWRQYXJhbWV0
ZXJzUHJvcGVydHkoIk51bWJlciBwYXJhbWV0ZXIgd2l0aCBjb2xvciBrZXl3b3JkLiIsICJuMSAx
IDIgcmVkIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiTnVtYmVyIHBhcmFtZXRl
ciB3aXRoIHJnYiBjb2xvci4iLCAibjEgMSAyIHJnYigyNTUsIDAsIDApIik7Ci10ZXN0SW52YWxp
ZFBhcmFtZXRlcnNQcm9wZXJ0eSgiQ29sb3Igd2l0aCBudW1iZXIgcGFyYW1ldGVyLiIsICJhIHJn
YigyNTUsIDAsIDApIDEiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJDb2xvciBp
biBhcnJheS4iLCAiYSBhcnJheSgwLCByZ2IoMjU1LCAwLCAwKSkiKTsKLXRlc3RJbnZhbGlkUGFy
YW1ldGVyc1Byb3BlcnR5KCJDb2xvciBhbmQgYXJyYXkuIiwgImEgYXJyYXkoMCwgMCkgcmdiKDI1
NSwgMCwgMCkiKTsKLXRlc3RJbnZhbGlkUGFyYW1ldGVyc1Byb3BlcnR5KCJDb2xvciB3aXRoIHRy
YW5zZm9ybSB2YWx1ZXMuIiwgImEgcm90YXRlKDQ1ZGVnKSByZ2IoMjU1LCAwLCAwKSIpOwotdGVz
dEludmFsaWRQYXJhbWV0ZXJzUHJvcGVydHkoIkNvbG9yIHdpdGggdHJhbnNmb3JtIHZhbHVlcy4i
LCAiYSByZ2IoMjU1LCAwLCAwKSByb3RhdGUoNDVkZWcpIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRl
cnNQcm9wZXJ0eSgiQ29sb3IgYWZ0ZXIgYXJyYXkgdmFsdWVzLiIsICJhIGFycmF5KDApIHJnYigy
NTUsIDAsIDApIik7Ci10ZXN0SW52YWxpZFBhcmFtZXRlcnNQcm9wZXJ0eSgiQ29sb3Igd2l0aCBt
YXQyLiIsICJhIHJnYigyNTUsIDAsIDApIG1hdDIoMCwgMCwgMCwgMCkiKTsKLXRlc3RJbnZhbGlk
UGFyYW1ldGVyc1Byb3BlcnR5KCJtYXQyIHdpdGggbWF0My4iLCAiYSBtYXQyKDEsIDAsIDAsIDEp
IG1hdDMoMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCkiKTsKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0
cy9wYXJzaW5nLXBhcmFtZXRlcnMtcHJvcGVydHktdmFsaWQuanMgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmct
cGFyYW1ldGVycy1wcm9wZXJ0eS12YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggZjI5NDBmNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
LXdpdGgtYXQtcnVsZS1zeW50YXgvc2NyaXB0LXRlc3RzL3BhcnNpbmctcGFyYW1ldGVycy1wcm9w
ZXJ0eS12YWxpZC5qcworKysgL2Rldi9udWxsCkBAIC0xLDE3MyArMCwwIEBACi0vLyBSZXF1aXJl
cyBjdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzLgotCi1kZXNjcmlwdGlvbigiVGVzdCBw
YXJhbWV0ZXJzIHByb3BlcnR5IHBhcnNpbmcgaW4gdGhlIEAtd2Via2l0LWZpbHRlciBhdC1ydWxl
LiIpOwotCi0vLyBUaGVzZSBoYXZlIHRvIGJlIGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0
byBzZWUgdGhlbS4KLXZhciBmaWx0ZXJBdFJ1bGUsIHN0eWxlRGVjbGFyYXRpb24sIHBhcmFtZXRl
cnNQcm9wZXJ0eVZhbHVlLCBzdWJWYWx1ZTsKLQotZnVuY3Rpb24gdGVzdFBhcmFtZXRlcnNQcm9w
ZXJ0eShkZXNjcmlwdGlvbiwgcHJvcGVydHlWYWx1ZSwgZXhwZWN0ZWRWYWx1ZSwgZXhwZWN0ZWRU
ZXh0cykKLXsKLSAgICB2YXIgcGFyYW1ldGVyc1Byb3BlcnR5ID0gInBhcmFtZXRlcnM6ICIgKyBw
cm9wZXJ0eVZhbHVlICsgIjsiCi0gICAgZGVidWcoIlxuIiArIGRlc2NyaXB0aW9uICsgIlxuIiAr
IHBhcmFtZXRlcnNQcm9wZXJ0eSk7Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoIkAtd2Vi
a2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgcGFyYW1ldGVyc1Byb3BlcnR5ICsgIiB9IiwgMCk7
Ci0gICAgZmlsdGVyQXRSdWxlID0gc3R5bGVzaGVldC5jc3NSdWxlcy5pdGVtKDApOwotICAgIHNo
b3VsZEJlKCJmaWx0ZXJBdFJ1bGUudHlwZSIsICJDU1NSdWxlLldFQktJVF9GSUxURVJfUlVMRSIp
OwotCi0gICAgc3R5bGVEZWNsYXJhdGlvbiA9IGZpbHRlckF0UnVsZS5zdHlsZTsKLSAgICBzaG91
bGRCZSgic3R5bGVEZWNsYXJhdGlvbi5sZW5ndGgiLCAiMSIpOwotICAgIHNob3VsZEJlKCJyZW1v
dmVCYXNlVVJMKHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgncGFyYW1ldGVycycp
KSIsICJcIiIgKyBleHBlY3RlZFZhbHVlICsgIlwiIik7Ci0KLSAgICBwYXJhbWV0ZXJzUHJvcGVy
dHlWYWx1ZSA9IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlDU1NWYWx1ZSgncGFyYW1ldGVy
cycpOwotICAgIHNob3VsZEhhdmVDb25zdHJ1Y3RvcigicGFyYW1ldGVyc1Byb3BlcnR5VmFsdWUi
LCAiQ1NTVmFsdWVMaXN0Iik7Ci0KLSAgICBzaG91bGRCZSgicGFyYW1ldGVyc1Byb3BlcnR5VmFs
dWUubGVuZ3RoIiwgZXhwZWN0ZWRUZXh0cy5sZW5ndGgudG9TdHJpbmcoKSk7IC8vIHNob3VsZEJl
IGV4cGVjdHMgc3RyaW5nIGFyZ3VtZW50cwotICAKLSAgICBpZiAocGFyYW1ldGVyc1Byb3BlcnR5
VmFsdWUpIHsKLSAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBleHBlY3RlZFRleHRzLmxlbmd0
aDsgaSsrKSB7Ci0gICAgICAgICAgICBzdWJWYWx1ZSA9IHBhcmFtZXRlcnNQcm9wZXJ0eVZhbHVl
W2ldOwotICAgICAgICAgICAgc2hvdWxkQmUoInN1YlZhbHVlLmNzc1ZhbHVlVHlwZSIsICJDU1NW
YWx1ZS5DU1NfVkFMVUVfTElTVCIpOwotICAgICAgICAgICAgc2hvdWxkQmUoInJlbW92ZUJhc2VV
Ukwoc3ViVmFsdWUuY3NzVGV4dCkiLCAiXCIiICsgZXhwZWN0ZWRUZXh0c1tpXSArICJcIiIpOwot
ICAgICAgICB9Ci0gICAgfQotfQotCi1oZWFkaW5nKCJOdW1iZXIgcGFyYW1ldGVyIHRlc3RzLiIp
Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJJbnRlZ2VyIHBhcmFtZXRlcnMuIiwKLSAgICAibjEg
MSwgbjIgMiAzLCBuMyAzIDQgNSwgbjQgNCA1IDYgNyIsCi0gICAgIm4xIDEsIG4yIDIgMywgbjMg
MyA0IDUsIG40IDQgNSA2IDciLAotICAgIFsibjEgMSIsIm4yIDIgMyIsICJuMyAzIDQgNSIsICJu
NCA0IDUgNiA3Il0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiRmxvYXQgcGFyYW1ldGVycy4i
LAotICAgICJuMSAxLjEsIG4yIDIuMiAzLjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEgNS4yIDYu
MyA3LjQiLAotICAgICJuMSAxLjEsIG4yIDIuMiAzLjMsIG4zIDMuMSA0LjEgNS4xLCBuNCA0LjEg
NS4yIDYuMyA3LjQiLAotICAgIFsibjEgMS4xIiwgIm4yIDIuMiAzLjMiLCAibjMgMy4xIDQuMSA1
LjEiLCAibjQgNC4xIDUuMiA2LjMgNy40Il0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiUGFy
YW1ldGVyIG5hbWUgc2FtZSBhcyBDU1Mga2V5d29yZC4iLAotICAgICJiYWNrZ3JvdW5kIDAgMSAw
IDEiLAotICAgICJiYWNrZ3JvdW5kIDAgMSAwIDEiLAotICAgIFsiYmFja2dyb3VuZCAwIDEgMCAx
Il0pOwotCi1oZWFkaW5nKCJUcmFuc2Zvcm0gcGFyYW1ldGVyIHRlc3RzLiIpCi10ZXN0UGFyYW1l
dGVyc1Byb3BlcnR5KCJUcmFuc2Zvcm0gcGFyYW1ldGVyIHdpdGggb25lIHRyYW5zZm9ybSBmdW5j
dGlvbi4iLAotICAgICJ0IHJvdGF0ZSgwZGVnKSIsCi0gICAgInQgcm90YXRlKDBkZWcpIiwKLSAg
ICBbInQgcm90YXRlKDBkZWcpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiVHJhbnNmb3Jt
IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHRyYW5zZm9ybSBmdW5jdGlvbnMuIiwKLSAgICAidCBy
b3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4
KSIsCi0gICAgInQgcm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIHNjYWxlKDAsIDApIHRyYW5z
bGF0ZSgwcHgsIDBweCkiLAotICAgIFsidCByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2Nh
bGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHko
Ik11bGl0cGxlIHRyYW5zZm9ybSBwYXJhbWV0ZXJzLiIsCi0gICAgInQxIHJvdGF0ZSgwZGVnKSwg
dDIgcm90YXRlKDBkZWcpIiwKLSAgICAidDEgcm90YXRlKDBkZWcpLCB0MiByb3RhdGUoMGRlZyki
LAotICAgIFsidDEgcm90YXRlKDBkZWcpIiwgInQyIHJvdGF0ZSgwZGVnKSJdKTsKLQotaGVhZGlu
ZygiQXJyYXkgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiQXJy
YXkgcGFyYW1ldGVyIHdpdGggbmFtZSAnYXJyYXknLiIsCi0gICAgImFycmF5IGFycmF5KDEpIiwK
LSAgICAiYXJyYXkgYXJyYXkoMSkiLAotICAgIFsiYXJyYXkgYXJyYXkoMSkiXSk7Ci10ZXN0UGFy
YW1ldGVyc1Byb3BlcnR5KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBvbmUgcG9zaXRpdmUgaW50ZWdl
ci4iLAotICAgICJhIGFycmF5KDEpIiwKLSAgICAiYSBhcnJheSgxKSIsCi0gICAgWyJhIGFycmF5
KDEpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiQXJyYXkgcGFyYW1ldGVyIHdpdGggb25l
IG5lZ2F0aXZlIGZsb2F0LiIsCi0gICAgImEgYXJyYXkoLTEuMDEpIiwKLSAgICAiYSBhcnJheSgt
MS4wMSkiLAotICAgIFsiYSBhcnJheSgtMS4wMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5
KCJBcnJheSBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBwb3NpdGl2ZSBpbnRlZ2Vycy4iLAotICAg
ICJhIGFycmF5KDEsIDIsIDMsIDQsIDUpIiwKLSAgICAiYSBhcnJheSgxLCAyLCAzLCA0LCA1KSIs
Ci0gICAgWyJhIGFycmF5KDEsIDIsIDMsIDQsIDUpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0
eSgiQXJyYXkgcGFyYW1ldGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJh
IGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkiLAotICAgICJhIGFycmF5KDEsIC0yLjIsIDMu
MTQsIDAuNCwgNSkiLAotICAgIFsiYSBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpIl0pOwot
dGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTXVsdGlwbGUgYXJyYXkgcGFyYW1ldGVycy4iLAotICAg
ICJhMSBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCBhMiBhcnJheSgxLCAyLCAzKSIsCi0g
ICAgImExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSksIGEyIGFycmF5KDEsIDIsIDMpIiwK
LSAgICBbImExIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkiLCAiYTIgYXJyYXkoMSwgMiwg
MykiXSk7Ci0KLWhlYWRpbmcoIkNvbG9yIHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RQYXJhbWV0
ZXJzUHJvcGVydHkoIkhleCBjb2xvci4iLAotICAgICJjICMwMEZGMDAiLAotICAgICJjIHJnYigw
LCAyNTUsIDApIiwKLSAgICBbImMgcmdiKDAsIDI1NSwgMCkiXSk7Ci10ZXN0UGFyYW1ldGVyc1By
b3BlcnR5KCJDb2xvciBrZXl3b3JkLiIsCi0gICAgImMgZ3JlZW4iLAotICAgICJjIHJnYigwLCAx
MjgsIDApIiwKLSAgICBbImMgcmdiKDAsIDEyOCwgMCkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3Bl
cnR5KCJDb2xvciByZ2IgZnVuY3Rpb24uIiwKLSAgICAiYyByZ2IoMCwgMTI4LCAwKSIsCi0gICAg
ImMgcmdiKDAsIDEyOCwgMCkiLAotICAgIFsiYyByZ2IoMCwgMTI4LCAwKSJdKTsKLXRlc3RQYXJh
bWV0ZXJzUHJvcGVydHkoIkNvbG9yIGhzbCBmdW5jdGlvbi4iLAotICAgICJjIGhzbCgxMjAsIDEw
MCUsIDUwJSkiLAotICAgICJjIHJnYigwLCAyNTUsIDApIiwKLSAgICBbImMgcmdiKDAsIDI1NSwg
MCkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJDb2xvciByZ2JhIGZ1bmN0aW9uLiIsCi0g
ICAgImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiLAotICAgICJjIHJnYmEoMCwgMjU1LCAwLCAwLjIp
IiwKLSAgICBbImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3Bl
cnR5KCJDb2xvciBoc2xhIGZ1bmN0aW9uLiIsCi0gICAgImMgaHNsYSgxMjAsIDEwMCUsIDUwJSwg
MC4yKSIsCi0gICAgImMgcmdiYSgwLCAyNTUsIDAsIDAuMikiLAotICAgIFsiYyByZ2JhKDAsIDI1
NSwgMCwgMC4yKSJdKTsKLQotaGVhZGluZygiTWF0MiBwYXJhbWV0ZXIgdGVzdHMuIik7Ci10ZXN0
UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQyIHBhcmFtZXRlci4iLAotICAgICJtIG1hdDIoMSwgMCwg
MCwgMSkiLAotICAgICJtIG1hdDIoMSwgMCwgMCwgMSkiLAotICAgIFsibSBtYXQyKDEsIDAsIDAs
IDEpIl0pOwotdGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTWF0MiBwYXJhbWV0ZXIgd2l0aCBuZWdh
dGl2ZSB2YWx1ZXMuIiwKLSAgICAibSBtYXQyKC0xLCAtMSwgLTEsIC0xKSIsCi0gICAgIm0gbWF0
MigtMSwgLTEsIC0xLCAtMSkiLAotICAgIFsibSBtYXQyKC0xLCAtMSwgLTEsIC0xKSJdKTsKLXRl
c3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDIgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgYW5kIHBv
c2l0aXZlIHZhbHVlcy4iLAotICAgICJtIG1hdDIoLTEsIDEsIDEsIC0xKSIsCi0gICAgIm0gbWF0
MigtMSwgMSwgMSwgLTEpIiwKLSAgICBbIm0gbWF0MigtMSwgMSwgMSwgLTEpIl0pOwotdGVzdFBh
cmFtZXRlcnNQcm9wZXJ0eSgiTWF0MiBwYXJhbWV0ZXIgd2l0aCBtdWx0aXBsZSBzaWduZWQgZmxv
YXRzLiIsCi0gICAgIm0gbWF0MigxLCAtMi4yLCAzLjE0LCAwLjQpIiwKLSAgICAibSBtYXQyKDEs
IC0yLjIsIDMuMTQsIDAuNCkiLAotICAgIFsibSBtYXQyKDEsIC0yLjIsIDMuMTQsIDAuNCkiXSk7
Ci0KLWhlYWRpbmcoIk1hdDMgcGFyYW1ldGVyIHRlc3RzLiIpOwotdGVzdFBhcmFtZXRlcnNQcm9w
ZXJ0eSgiTWF0MyBwYXJhbWV0ZXIuIiwKLSAgICAibSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAs
IDAsIDEpIiwKLSAgICAibSBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpIiwKLSAgICBb
Im0gbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAxKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJv
cGVydHkoIk1hdDMgcGFyYW1ldGVyIHdpdGggbmVnYXRpdmUgdmFsdWVzLiIsCi0gICAgIm0gbWF0
MygtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSIsCi0gICAgIm0gbWF0MygtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xKSIsCi0gICAgWyJtIG1hdDMoLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJN
YXQzIHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIGFuZCBwb3NpdGl2ZSB2YWx1ZXMuIiwKLSAgICAi
bSBtYXQzKC0xLCAxLCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAxKSIsCi0gICAgIm0gbWF0MygtMSwg
MSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgMSkiLAotICAgIFsibSBtYXQzKC0xLCAxLCAxLCAtMSwg
LTEsIDEsIDEsIC0xLCAxKSJdKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDMgcGFyYW1l
dGVyIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZsb2F0cy4iLAotICAgICJtIG1hdDMoMSwgLTIuMiwg
My4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEpIiwKLSAgICAibSBtYXQzKDEsIC0yLjIs
IDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40LCAxKSIsCi0gICAgWyJtIG1hdDMoMSwgLTIu
MiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEpIl0pOwotCi1oZWFkaW5nKCJNYXQ0
IHBhcmFtZXRlciB0ZXN0cy4iKTsKLXRlc3RQYXJhbWV0ZXJzUHJvcGVydHkoIk1hdDQgcGFyYW1l
dGVyLiIsCi0gICAgIm0gbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAwLCAw
LCAwLCAwLCAxKSIsCi0gICAgIm0gbWF0NCgxLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAx
LCAwLCAwLCAwLCAwLCAxKSIsCi0gICAgWyJtIG1hdDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwg
MCwgMCwgMSwgMCwgMCwgMCwgMCwgMSkiXSk7Ci10ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQ0
IHBhcmFtZXRlciB3aXRoIG5lZ2F0aXZlIHZhbHVlcy4iLAotICAgICJtIG1hdDQoLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpIiwK
LSAgICAibSBtYXQ0KC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwg
LTEsIC0xLCAtMSwgLTEsIC0xKSIsCi0gICAgWyJtIG1hdDQoLTEsIC0xLCAtMSwgLTEsIC0xLCAt
MSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEpIl0pOwotdGVzdFBhcmFt
ZXRlcnNQcm9wZXJ0eSgiTWF0NCBwYXJhbWV0ZXIgd2l0aCBuZWdhdGl2ZSBhbmQgcG9zaXRpdmUg
dmFsdWVzLiIsCi0gICAgIm0gbWF0NCgtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSwgLTEsIDEs
IDEsIC0xLCAtMSwgMSwgMSwgLTEpIiwKLSAgICAibSBtYXQ0KC0xLCAxLCAxLCAtMSwgLTEsIDEs
IDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSkiLAotICAgIFsibSBtYXQ0KC0xLCAx
LCAxLCAtMSwgLTEsIDEsIDEsIC0xLCAtMSwgMSwgMSwgLTEsIC0xLCAxLCAxLCAtMSkiXSk7Ci10
ZXN0UGFyYW1ldGVyc1Byb3BlcnR5KCJNYXQ0IHBhcmFtZXRlciB3aXRoIG11bHRpcGxlIHNpZ25l
ZCBmbG9hdHMuIiwKLSAgICAibSBtYXQ0KDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwgMy4x
NCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCkiLAotICAgICJt
IG1hdDQoMSwgLTIuMiwgMy4xNCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMu
MTQsIDAuNCwgMSwgLTIuMiwgMy4xNCwgMC40KSIsCi0gICAgWyJtIG1hdDQoMSwgLTIuMiwgMy4x
NCwgMC40LCAxLCAtMi4yLCAzLjE0LCAwLjQsIDEsIC0yLjIsIDMuMTQsIDAuNCwgMSwgLTIuMiwg
My4xNCwgMC40KSJdKTsKLQotaGVhZGluZygiQ29tYmluZWQgcGFyYW1ldGVyIHRlc3RzLiIpOwot
dGVzdFBhcmFtZXRlcnNQcm9wZXJ0eSgiTnVtYmVyIHBhcmFtZXRlciwgY29sb3IgcGFyYW1ldGVy
LCB0cmFuc2Zvcm0gcGFyYW1ldGVyLCBtYXRyaXggcGFyYW1ldGVycyBhbmQgYXJyYXkgcGFyYW1l
dGVyLiIsCi0gICAgIm4gMSwgYyByZ2IoMCwgMTI4LCAwKSwgdCByb3RhdGUoMGRlZyksIG0xIG1h
dDIoMSwgMCwgMCwgMSksIG0yIG1hdDMoMSwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMSksIG0zIG1h
dDQoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSksIGEgYXJy
YXkoMSkiLAotICAgICJuIDEsIGMgcmdiKDAsIDEyOCwgMCksIHQgcm90YXRlKDBkZWcpLCBtMSBt
YXQyKDEsIDAsIDAsIDEpLCBtMiBtYXQzKDEsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDEpLCBtMyBt
YXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpLCBhIGFy
cmF5KDEpIiwKLSAgICBbIm4gMSIsICJjIHJnYigwLCAxMjgsIDApIiwgInQgcm90YXRlKDBkZWcp
IiwgIm0xIG1hdDIoMSwgMCwgMCwgMSkiLCAibTIgbWF0MygxLCAwLCAwLCAwLCAxLCAwLCAwLCAw
LCAxKSIsICJtMyBtYXQ0KDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAs
IDAsIDEpIiwgImEgYXJyYXkoMSkiXSk7ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3lu
dGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLmpzIGIvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0
cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS1pbnZhbGlkLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwZDRhMjRhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20td2l0aC1hdC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1zcmMtcHJvcGVy
dHktaW52YWxpZC5qcworKysgL2Rldi9udWxsCkBAIC0xLDUxICswLDAgQEAKLS8vIFJlcXVpcmVz
IGN1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMuCi0KLWRlc2NyaXB0aW9uKCJUZXN0IHNy
YyBwcm9wZXJ0eSBwYXJzaW5nIGluIHRoZSBALXdlYmtpdC1maWx0ZXIgYXQtcnVsZS4iKTsKLQot
Ly8gVGhlc2UgaGF2ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBlcnMgdG8gc2VlIHRo
ZW0uCi12YXIgZmlsdGVyQXRSdWxlLCBzdHlsZURlY2xhcmF0aW9uOwotCi1mdW5jdGlvbiB0ZXN0
SW52YWxpZFNyY1Byb3BlcnR5KGRlc2NyaXB0aW9uLCBwcm9wZXJ0eVZhbHVlKQotewotICAgIHZh
ciBzcmNQcm9wZXJ0eSA9ICJzcmM6ICIgKyBwcm9wZXJ0eVZhbHVlICsgIjsiOwotICAgIGRlYnVn
KCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBzcmNQcm9wZXJ0eSk7Ci0KLSAgICBzdHlsZXNo
ZWV0Lmluc2VydFJ1bGUoIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIgeyAiICsgc3JjUHJvcGVy
dHkgKyAiIH0iLCAwKTsKLQotICAgIGZpbHRlckF0UnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMu
aXRlbSgwKTsKLSAgICBzaG91bGRCZSgiZmlsdGVyQXRSdWxlLnR5cGUiLCAiQ1NTUnVsZS5XRUJL
SVRfRklMVEVSX1JVTEUiKTsKLQotICAgIHN0eWxlRGVjbGFyYXRpb24gPSBmaWx0ZXJBdFJ1bGUu
c3R5bGU7Ci0gICAgc2hvdWxkQmUoInN0eWxlRGVjbGFyYXRpb24ubGVuZ3RoIiwgIjAiKTsKLSAg
ICBzaG91bGRCZSgic3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSIsICJu
dWxsIik7Ci19Ci0KLWhlYWRpbmcoIlVSTCB0ZXN0cy4iKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVy
dHkoIk5vIHByb3BlcnR5IHZhbHVlLiIsICIiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIk9u
bHkgYSBzaW5nbGUgY29tbWEuIiwgIiwiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIk9ubHkg
dHdvIGNvbW1hcy4iLCAiLCAsIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJJZGVudGlmaWVy
IGluc3RlYWQgb2YgVVJMLiIsICJ2ZXJ0ZXgtc2hhZGVyIik7Ci10ZXN0SW52YWxpZFNyY1Byb3Bl
cnR5KCJJZGVudGlmaWVyIHdpdGggZm9ybWF0IGluc3RlYWQgb2YgVVJMIHdpdGggZm9ybWF0LiIs
ICJ2ZXJ0ZXgtc2hhZGVyIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIpOwotdGVzdEludmFs
aWRTcmNQcm9wZXJ0eSgiTG9jYWwgZnVuY3Rpb24gaW5zdGVhZCBvZiBVUkwgZnVuY3Rpb24uIiwg
ImxvY2FsKHNoYWRlci52cykiKTsKLQotaGVhZGluZygiRm9ybWF0IGZ1bmN0aW9uIHRlc3RzLiIp
OwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiSWRlbnRpZmllciBpbnN0ZWFkIG9mIGZvcm1hdCBm
dW5jdGlvbi4iLCAidXJsKHNoYWRlci52cykgdmVydGV4LXNoYWRlciIpOwotdGVzdEludmFsaWRT
cmNQcm9wZXJ0eSgiU3RyaW5nIGluc3RlYWQgb2YgZm9ybWF0IGZ1bmN0aW9uLiIsICJ1cmwoc2hh
ZGVyLnZzKSAneC1zaGFkZXIveC12ZXJ0ZXgnIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJG
b3JtYXQgZnVuY3Rpb24gbWlzc3BlbGxlZC4iLCAidXJsKHNoYWRlci52cykgZnJtdCgneC1zaGFk
ZXIveC12ZXJ0ZXgnKSIpOwotdGVzdEludmFsaWRTcmNQcm9wZXJ0eSgiRm9ybWF0IGZ1bmN0aW9u
IGVtcHR5LiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoKSIpOwotdGVzdEludmFsaWRTcmNQcm9w
ZXJ0eSgiRm9ybWF0IGZ1bmN0aW9uIHdpdGggc2luZ2xlIGlkZW50aWZlciBhcmd1bWVudC4iLCAi
dXJsKHNoYWRlci52cykgZm9ybWF0KHZlcnRleC1zaGFkZXIpIik7Ci10ZXN0SW52YWxpZFNyY1By
b3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gd2l0aCBzaW5nbGUgbnVtYmVyIGFyZ3VtZW50LiIsICJ1
cmwoc2hhZGVyLnZzKSBmb3JtYXQoMCkiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIkZvcm1h
dCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIHNwYWNlLXNlcGFyYXRlZCBpZGVudGlmZXIgYXJndW1l
bnRzLiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQodmVydGV4LXNoYWRlciBmcmFnbWVudC1zaGFk
ZXIpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJGb3JtYXQgZnVuY3Rpb24gd2l0aCBtdWx0
aXBsZSBjb21tYS1zZXBhcmF0ZWQgaWRlbnRpZmVyIGFyZ3VtZW50cy4iLCAidXJsKHNoYWRlci52
cykgZm9ybWF0KHZlcnRleC1zaGFkZXIsZnJhZ21lbnQtc2hhZGVyKSIpOwotdGVzdEludmFsaWRT
cmNQcm9wZXJ0eSgiRm9ybWF0IGZ1bmN0aW9uIHdpdGggbXVsdGlwbGUgc3BhY2Utc2VwYXJhdGVk
IHN0cmluZyBhcmd1bWVudHMuIiwgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12
ZXJ0ZXgnICd4LXNoYWRlci94LWZyYWdtZW50JykiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHko
IkZvcm1hdCBmdW5jdGlvbiB3aXRoIG11bHRpcGxlIGNvbW1hLXNlcGFyYXRlZCBzdHJpbmcgYXJn
dW1lbnRzLiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JywneC1z
aGFkZXIveC1mcmFnbWVudCcpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJNdWx0aXBsZSB2
YWxpZCBmb3JtYXQgZnVuY3Rpb25zLiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVy
L3gtdmVydGV4JykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiKTsKLQotaGVhZGluZygi
UHVuY3R1YXRpb24gdGVzdHMuIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJMZWFkaW5nIGNv
bW1hIGJlZm9yZSBmaXJzdCBVUkwuIiwgIiwgdXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJDb21tYSBiZXR3ZWVuIFVS
TCBhbmQgZm9ybWF0LiIsICJ1cmwoc2hhZGVyLnZzKSwgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRl
eCcpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJUcmFpbGluZyBjb21tYSBhZnRlciBmb3Jt
YXQuIiwgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwiKTsKLXRl
c3RJbnZhbGlkU3JjUHJvcGVydHkoIlR3byBjb21tYXMgYmV0d2VlbiBVUkxzLiIsICJ1cmwoc2hh
ZGVyLnZzKSwsdXJsKHNoYWRlci5mcykiKTsKLXRlc3RJbnZhbGlkU3JjUHJvcGVydHkoIlR3byBj
b21tYXMgYmV0d2VlbiBVUkxzIHdpdGggZm9ybWF0LiIsICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQo
J3gtc2hhZGVyL3gtdmVydGV4JyksLHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1m
cmFnbWVudCcpIik7Ci10ZXN0SW52YWxpZFNyY1Byb3BlcnR5KCJObyBjb21tYSBiZXR3ZWVuIFVS
THMuIiwgInVybChzaGFkZXIudnMpIHVybChzaGFkZXIuZnMpIik7Ci10ZXN0SW52YWxpZFNyY1By
b3BlcnR5KCJObyBjb21tYSBiZXR3ZWVuIFVSTHMgd2l0aCBmb3JtYXQuIiwgInVybChzaGFkZXIu
dnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gt
c2hhZGVyL3gtZnJhZ21lbnQnKSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10ZXN0cy9wYXJzaW5nLXNyYy1w
cm9wZXJ0eS12YWxpZC5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20td2l0aC1h
dC1ydWxlLXN5bnRheC9zY3JpcHQtdGVzdHMvcGFyc2luZy1zcmMtcHJvcGVydHktdmFsaWQuanMK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJlODA2ZmEuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS13aXRoLWF0LXJ1bGUtc3ludGF4L3NjcmlwdC10
ZXN0cy9wYXJzaW5nLXNyYy1wcm9wZXJ0eS12YWxpZC5qcworKysgL2Rldi9udWxsCkBAIC0xLDEx
MSArMCwwIEBACi0vLyBSZXF1aXJlcyBjdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpzLgot
Ci1kZXNjcmlwdGlvbigiVGVzdCBzcmMgcHJvcGVydHkgcGFyc2luZyBpbiB0aGUgQC13ZWJraXQt
ZmlsdGVyIGF0LXJ1bGUuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUg
dGVzdCBoZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGZpbHRlckF0UnVsZSwgc3R5bGVEZWNsYXJh
dGlvbiwgc3JjUHJvcGVydHlWYWx1ZSwgc3ViVmFsdWU7Ci0KLWZ1bmN0aW9uIHRlc3RTcmNQcm9w
ZXJ0eShkZXNjcmlwdGlvbiwgcHJvcGVydHlWYWx1ZSwgZXhwZWN0ZWRWYWx1ZSwgZXhwZWN0ZWRU
ZXh0cykKLXsKLSAgICB2YXIgc3JjUHJvcGVydHkgPSAic3JjOiAiICsgcHJvcGVydHlWYWx1ZSAr
ICI7IgotICAgIGRlYnVnKCJcbiIgKyBkZXNjcmlwdGlvbiArICJcbiIgKyBzcmNQcm9wZXJ0eSk7
Ci0KLSAgICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoIkAtd2Via2l0LWZpbHRlciBteS1maWx0ZXIg
eyAiICsgc3JjUHJvcGVydHkgKyAiIH0iLCAwKTsKLSAgICBmaWx0ZXJBdFJ1bGUgPSBzdHlsZXNo
ZWV0LmNzc1J1bGVzLml0ZW0oMCk7Ci0gICAgc2hvdWxkQmUoImZpbHRlckF0UnVsZS50eXBlIiwg
IkNTU1J1bGUuV0VCS0lUX0ZJTFRFUl9SVUxFIik7Ci0KLSAgICBzdHlsZURlY2xhcmF0aW9uID0g
ZmlsdGVyQXRSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJzdHlsZURlY2xhcmF0aW9uLmxlbmd0
aCIsICIxIik7Ci0gICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwoc3R5bGVEZWNsYXJhdGlvbi5n
ZXRQcm9wZXJ0eVZhbHVlKCdzcmMnKSkiLCAiXCIiICsgZXhwZWN0ZWRWYWx1ZSArICJcIiIpOwot
Ci0gICAgc3JjUHJvcGVydHlWYWx1ZSA9IHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlDU1NW
YWx1ZSgnc3JjJyk7Ci0gICAgc2hvdWxkSGF2ZUNvbnN0cnVjdG9yKCJzcmNQcm9wZXJ0eVZhbHVl
IiwgIkNTU1ZhbHVlTGlzdCIpOwotCi0gICAgc2hvdWxkQmUoInNyY1Byb3BlcnR5VmFsdWUubGVu
Z3RoIiwgZXhwZWN0ZWRUZXh0cy5sZW5ndGgudG9TdHJpbmcoKSk7IC8vIHNob3VsZEJlIGV4cGVj
dHMgc3RyaW5nIGFyZ3VtZW50cwotICAKLSAgICBpZiAoc3JjUHJvcGVydHlWYWx1ZSkgewotICAg
ICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGV4cGVjdGVkVGV4dHMubGVuZ3RoOyBpKyspIHsKLSAg
ICAgICAgICAgIHN1YlZhbHVlID0gc3JjUHJvcGVydHlWYWx1ZVtpXTsKLSAgICAgICAgICAgIHNo
b3VsZEhhdmVDb25zdHJ1Y3Rvcigic3ViVmFsdWUiLCAiQ1NTVmFsdWUiKTsKLSAgICAgICAgICAg
IHNob3VsZEJlKCJzdWJWYWx1ZS5jc3NWYWx1ZVR5cGUiLCAiQ1NTVmFsdWUuQ1NTX0NVU1RPTSIp
OwotICAgICAgICAgICAgc2hvdWxkQmUoInJlbW92ZUJhc2VVUkwoc3ViVmFsdWUuY3NzVGV4dCki
LCAiXCIiICsgZXhwZWN0ZWRUZXh0c1tpXSArICJcIiIpOwotICAgICAgICB9Ci0gICAgfQotfQot
Ci1oZWFkaW5nKCJVUkxzIHdpdGhvdXQgZm9ybWF0IHRlc3RzLiIpOwotdGVzdFNyY1Byb3BlcnR5
KCJPbmUgVVJMIHdpdGhvdXQgZm9ybWF0LiIsCi0gICAgInVybChzaGFkZXIudnMpIiwKLSAgICAi
dXJsKHNoYWRlci52cykiLAotICAgIFsidXJsKHNoYWRlci52cykiXSk7Ci0KLXRlc3RTcmNQcm9w
ZXJ0eSgiVHdvIFVSTHMgd2l0aG91dCBmb3JtYXQuIiwKLSAgICAidXJsKHNoYWRlci52cyksIHVy
bChzaGFkZXIuZnMpIiwKLSAgICAidXJsKHNoYWRlci52cyksIHVybChzaGFkZXIuZnMpIiwKLSAg
ICBbInVybChzaGFkZXIudnMpIiwKLSAgICAidXJsKHNoYWRlci5mcykiXSk7Ci0KLXRlc3RTcmNQ
cm9wZXJ0eSgiVGhyZWUgVVJMcyB3aXRob3V0IGZvcm1hdC4iLAotICAgICJ1cmwoc2hhZGVyLnZz
KSwgdXJsKHNoYWRlci5mcyksIHVybChzaGFkZXIzKSIsCi0gICAgInVybChzaGFkZXIudnMpLCB1
cmwoc2hhZGVyLmZzKSwgdXJsKHNoYWRlcjMpIiwKLSAgICBbInVybChzaGFkZXIudnMpIiwKLSAg
ICAidXJsKHNoYWRlci5mcykiLAotICAgICJ1cmwoc2hhZGVyMykiXSk7Ci0KLWhlYWRpbmcoIlVS
THMgd2l0aCBmb3JtYXQgdGVzdHMuIik7Ci10ZXN0U3JjUHJvcGVydHkoIk9uZSBVUkwgd2l0aCBm
b3JtYXQuIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcp
IiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIiwKLSAg
ICBbInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSJdKTsKLQotdGVz
dFNyY1Byb3BlcnR5KCJUd28gVVJMcyB3aXRoIGZvcm1hdC4iLAotICAgICJ1cmwoc2hhZGVyLnZz
KSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1z
aGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICAidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQn
KSIsCi0gICAgWyJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JykiLAot
ICAgICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21lbnQnKSJdKTsKLQot
dGVzdFNyY1Byb3BlcnR5KCJUaHJlZSBVUkxzIHdpdGggZm9ybWF0LiIsCi0gICAgInVybChzaGFk
ZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcykgZm9ybWF0
KCd4LXNoYWRlci94LWZyYWdtZW50JyksIHVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24nKSIs
Ci0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSwgdXJsKHNo
YWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JyksIHVybChzaGFkZXIzKSBmb3Jt
YXQoJ3Vua25vd24nKSIsCi0gICAgWyJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gt
dmVydGV4JykiLAotICAgICJ1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtZnJhZ21l
bnQnKSIsCi0gICAgInVybChzaGFkZXIzKSBmb3JtYXQoJ3Vua25vd24nKSJdKTsKLQotaGVhZGlu
ZygiTWl4ZWQgVVJMcyB3aXRoIGFuZCB3aXRob3V0IGZvcm1hdCB0ZXN0cy4iKTsKLXRlc3RTcmNQ
cm9wZXJ0eSgiVGhyZWUgVVJMcy4gTWlkZGxlIFVSTCB3aXRob3V0IGZvcm1hdC4iLAotICAgICJ1
cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMp
LCB1cmwoc2hhZGVyMykgZm9ybWF0KCd1bmtub3duJykiLAotICAgICJ1cmwoc2hhZGVyLnZzKSBm
b3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4JyksIHVybChzaGFkZXIuZnMpLCB1cmwoc2hhZGVyMykg
Zm9ybWF0KCd1bmtub3duJykiLAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRl
ci94LXZlcnRleCcpIiwKLSAgICAidXJsKHNoYWRlci5mcykiLAotICAgICJ1cmwoc2hhZGVyMykg
Zm9ybWF0KCd1bmtub3duJykiXSk7Ci0KLXRlc3RTcmNQcm9wZXJ0eSgiVGhyZWUgVVJMcy4gRmly
c3QgYW5kIGxhc3QgVVJMcyB3aXRob3V0IGZvcm1hdC4iLAotICAgICJ1cmwoc2hhZGVyLnZzKSwg
dXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JyksIHVybChzaGFkZXIz
KSIsCi0gICAgInVybChzaGFkZXIudnMpLCB1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hhZGVy
L3gtZnJhZ21lbnQnKSwgdXJsKHNoYWRlcjMpIiwKLSAgICBbInVybChzaGFkZXIudnMpIiwKLSAg
ICAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiLAotICAgICJ1
cmwoc2hhZGVyMykiXSk7Ci0KLWhlYWRpbmcoIkNhcGl0YWxpemF0aW9uIHRlc3RzLiIpOwotdGVz
dFNyY1Byb3BlcnR5KCJBbGwgdG9rZW5zIGNhcGl0YWxpemVkLiIsCi0gICAgIlVSTChTSEFERVIu
VlMpIEZPUk1BVCgnWC1TSEFERVIvWC1WRVJURVgnKSIsCi0gICAgInVybChTSEFERVIuVlMpIGZv
cm1hdCgnWC1TSEFERVIvWC1WRVJURVgnKSIsCi0gICAgWyJ1cmwoU0hBREVSLlZTKSBmb3JtYXQo
J1gtU0hBREVSL1gtVkVSVEVYJykiXSk7Ci0KLWhlYWRpbmcoIldoaXRlc3BhY2UgdGVzdHMuIik7
Ci10ZXN0U3JjUHJvcGVydHkoIkV4dHJhIGxlYWRpbmcsIG1pZGRsZSwgYW5kIHRyYWlsaW5nIHdo
aXRlc3BhY2UuICIsCi0gICAgIiAgIHVybChzaGFkZXIudnMpICAgZm9ybWF0KCd4LXNoYWRlci94
LXZlcnRleCcpICAgLCAgIHVybChzaGFkZXIuZnMpICAgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdt
ZW50JykgICAiLAotICAgICJ1cmwoc2hhZGVyLnZzKSBmb3JtYXQoJ3gtc2hhZGVyL3gtdmVydGV4
JyksIHVybChzaGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIiwKLSAgICBb
InVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSIsCi0gICAgInVybChz
aGFkZXIuZnMpIGZvcm1hdCgneC1zaGFkZXIveC1mcmFnbWVudCcpIl0pOwotCi10ZXN0U3JjUHJv
cGVydHkoIk5vIHdoaXRlc3BhY2UgYXJvdW5kIGNvbW1hLiIsCi0gICAgInVybChzaGFkZXIudnMp
IGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSx1cmwoc2hhZGVyLmZzKSBmb3JtYXQoJ3gtc2hh
ZGVyL3gtZnJhZ21lbnQnKSIsCi0gICAgInVybChzaGFkZXIudnMpIGZvcm1hdCgneC1zaGFkZXIv
eC12ZXJ0ZXgnKSwgdXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50Jyki
LAotICAgIFsidXJsKHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIiwKLSAg
ICAidXJsKHNoYWRlci5mcykgZm9ybWF0KCd4LXNoYWRlci94LWZyYWdtZW50JykiXSk7Ci0KLXRl
c3RTcmNQcm9wZXJ0eSgiTm8gd2hpdGVzcGFjZSBiZXR3ZWVuIFVSTCBhbmQgZm9ybWF0LiIsCi0g
ICAgInVybChzaGFkZXIudnMpZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIiwKLSAgICAidXJs
KHNoYWRlci52cykgZm9ybWF0KCd4LXNoYWRlci94LXZlcnRleCcpIiwKLSAgICBbInVybChzaGFk
ZXIudnMpIGZvcm1hdCgneC1zaGFkZXIveC12ZXJ0ZXgnKSJdKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5k
LW1vZGVzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Nv
bXBvc2l0ZWQvY3VzdG9tLWZpbHRlci1ibGVuZC1tb2Rlcy1leHBlY3RlZC5odG1sCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2ODI0MDNkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVz
LWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMTQgKzAsMCBAQAotPCFkb2N0eXBl
IGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0
ZXIgYmxlbmQgbW9kZXMgY29tcHV0ZSBjb2xvciB2YWx1ZXMgY29ycmVjdGx5LjwvdGl0bGU+Ci0g
ICAgPCEtLQotICAgICAgICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRlc3Qu
Ci0gICAgICAgIFRoZSB0ZXN0IHBhc3NlcyBpZiBlYWNoIGhvcml6b250YWwgcGFpciBvZiBzcXVh
cmVzIGFyZSBleGFjdGx5IHRoZSBzYW1lIGNvbG9yLgotICAgICAgICBUaGUgdGVzdCBmaWxlIGRl
c2NyaWJlcyBob3cgdGhlIGNvbG9yIHZhbHVlcyBpbiB0aGlzIHJlZmVyZW5jZSBmaWxlIGFyZSBj
b21wdXRlZC4KLSAgICAtLT4KLSAgICA8c3R5bGU+Ci0gICAgLnBhaXItb2Ytc3F1YXJlcyB7Ci0g
ICAgICAgIGNsZWFyOiBib3RoOwotICAgIH0KLSAgICAucGFpci1vZi1zcXVhcmVzID4gZGl2IHsK
LSAgICAgICAgLyogU3F1YXJlIHNpemUuICovCi0gICAgICAgIHdpZHRoOiAyMHB4OwotICAgICAg
ICBoZWlnaHQ6IDIwcHg7Ci0gICAgICAgIG1hcmdpbjogMnB4OwotICAgICAgICBmbG9hdDogbGVm
dDsKLSAgICB9Ci0gICAgLyogQmxlbmQgbW9kZXMgKi8KLSAgICAubm9ybWFsLWV4cGVjdGVkIHsK
LSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCA2MCUsIDUwJSk7Ci0gICAgfQotICAg
IC5tdWx0aXBseS1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwJSwg
MTglLCAyNSUpOwotICAgIH0KLSAgICAuc2NyZWVuLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmdiKDI1NSwgMTgzLCAxOTIpOwotICAgIH0KLSAgICAuZGFya2VuLWV4cGVj
dGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCAzMCUsIDUwJSk7Ci0gICAg
fQotICAgIC5saWdodGVuLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
KDEwMCUsIDYwJSwgNTAlKTsKLSAgICB9Ci0gICAgLmRpZmZlcmVuY2UtZXhwZWN0ZWQgewotICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCA3NywgMSk7Ci0gICAgfQotICAgIC5leGNs
dXNpb24tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAxMzgs
IDEyNyk7Ci0gICAgfQotICAgIC5vdmVybGF5LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcmdiKDI1NSwgOTEsIDEyOCk7Ci0gICAgfQotICAgIC5jb2xvci1kb2RnZS1leHBl
Y3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDE5MCwgMjU1KTsKLSAg
ICB9Ci0gICAgLmNvbG9yLWJ1cm4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMjU1LCAzMSwgOTYpOwotICAgIH0KLSAgICAuaGFyZC1saWdodC1leHBlY3RlZCB7Ci0g
ICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwJSwgNDQlLCA1MCUpOwotICAgIH0KLSAgICAu
c29mdC1saWdodC1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUs
IDg5LCAxMjgpOwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRp
diBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibm9ybWFsLWV4
cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibm9ybWFsLWV4cGVjdGVkIj48L2Rp
dj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAg
ICA8ZGl2IGNsYXNzPSJtdWx0aXBseS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xh
c3M9Im11bHRpcGx5LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJzY3JlZW4tZXhwZWN0ZWQi
PjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJzY3JlZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAg
IDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9ImRhcmtlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRhcmtl
bi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1z
cXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibGlnaHRlbi1leHBlY3RlZCI+PC9kaXY+Ci0g
ICAgICAgIDxkaXYgY2xhc3M9ImxpZ2h0ZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2Pgot
ICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRp
ZmZlcmVuY2UtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJkaWZmZXJlbmNl
LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNx
dWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJleGNsdXNpb24tZXhwZWN0ZWQiPjwvZGl2Pgot
ICAgICAgICA8ZGl2IGNsYXNzPSJleGNsdXNpb24tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2
PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9
Im92ZXJsYXktZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJvdmVybGF5LWV4
cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFy
ZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJjb2xvci1kb2RnZS1leHBlY3RlZCI+PC9kaXY+Ci0g
ICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWRvZGdlLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rp
dj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNz
PSJjb2xvci1idXJuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iY29sb3It
YnVybi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1v
Zi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iaGFyZC1saWdodC1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImhhcmQtbGlnaHQtZXhwZWN0ZWQiPjwvZGl2PgotICAg
IDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9InNvZnQtbGlnaHQtZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJz
b2Z0LWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8IS0tCi0gICAgICAg
IElmIHlvdSBhZGQgbW9yZSBibGVuZCBtb2RlcyB0byB0aGlzIHBhZ2UsIGJlIGNhcmVmdWwgbm90
IHRvIGV4Y2VlZCA2MDBweCBpbiAKLSAgICAgICAgaGVpZ2h0LCBzaW5jZSBEdW1wUmVuZGVyVHJl
ZSBjb21wYXJlcyA4MDB4NjAwIHNuYXBzaG90cyBvZiB0aGlzIHBhZ2UuCi0gICAgLS0+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2NvbXBvc2l0ZWQvY3VzdG9tLWZpbHRlci1ibGVuZC1tb2Rlcy5odG1sIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jb21wb3NpdGVkL2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjljZjdjYy4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2NvbXBvc2l0ZWQvY3VzdG9tLWZpbHRl
ci1ibGVuZC1tb2Rlcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzI5ICswLDAgQEAKLTwhZG9j
dHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBjdXN0b20g
ZmlsdGVyIGJsZW5kIG1vZGVzIGNvbXB1dGUgY29sb3IgdmFsdWVzIGNvcnJlY3RseS48L3RpdGxl
PgotICAgIDwhLS0gVGhpcyB0ZXN0IHBhc3NlcyBpZiBlYWNoIGhvcml6b250YWwgcGFpciBvZiBz
cXVhcmVzIGFyZSBleGFjdGx5IHRoZSBzYW1lIGNvbG9yLiAtLT4KLSAgICA8c2NyaXB0PgotICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIx
Iik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldl
YktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8
c3R5bGU+Ci0gICAgLnBhaXItb2Ytc3F1YXJlcyB7Ci0gICAgICAgIGNsZWFyOiBib3RoOwotICAg
IH0KLSAgICAucGFpci1vZi1zcXVhcmVzID4gZGl2IHsKLSAgICAgICAgLyogU3F1YXJlIHNpemUu
ICovCi0gICAgICAgIHdpZHRoOiAyMHB4OwotICAgICAgICBoZWlnaHQ6IDIwcHg7Ci0gICAgICAg
IG1hcmdpbjogMnB4OwotICAgICAgICBmbG9hdDogbGVmdDsKLSAgICB9Ci0gICAgLmRlc3RpbmF0
aW9uIHsKLSAgICAgICAgLyogRGVzdGluYXRpb24gY29sb3IgKi8KLSAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcmdiKDEwMCUsIDMwJSwgNTAlKTsKLSAgICAgICAgLyogRm9yY2UgYSBHUFUgY29t
cG9zaXRlZCBsYXllci4gKi8KLSAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNk
KDAsIDAsIDApOwotICAgIH0KLSAgICAvKiBCbGVuZCBtb2RlcyAqLwotICAgIC5ub3JtYWwgewot
ICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3Vy
Y2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42
IDAuNSAxLjApOwotICAgIH0KLSAgICAvKgotICAgICAgICBUaGUgZXF1YXRpb25zIGJlbG93IHVz
ZSB0aGUgc3ltYm9scyBhbmQgZXF1YXRpb25zIGRlZmluZWQgaW4gdGhlIENTUyBCbGVuZGluZyBh
bmQgQ29tcG9zaXRpbmcgc3BlYywgd2hlcmU6Ci0gICAgICAgICAgICBDbyA9IG91dHB1dCBjb2xv
cgotICAgICAgICAgICAgQ3MgPSBzb3VyY2UgY29sb3IgKGFrYSAibWl4IGNvbG9yIiwgImNzc19N
aXhDb2xvciIpCi0gICAgICAgICAgICBDYiA9IGRlc3RpbmF0aW9uIGNvbG9yIChha2EgImJhY2tk
cm9wIGNvbG9yIiwgIm9yaWdpbmFsIERPTSBlbGVtZW50IGNvbG9yIikKLQotICAgICAgICBodHRw
czovL2R2Y3MudzMub3JnL2hnL0ZYVEYvcmF3ZmlsZS90aXAvY29tcG9zaXRpbmcvaW5kZXguaHRt
bCNnZW5lcmFsZm9ybXVsYQotICAgICovCi0gICAgLm5vcm1hbC1leHBlY3RlZCB7Ci0gICAgICAg
IC8qCi0gICAgICAgICAgICBOb3JtYWw6Ci0KLSAgICAgICAgICAgIENvID0gQ3MKLQotICAgICAg
ICAgICAgciA9IDAuMAotICAgICAgICAgICAgZyA9IDAuNgotICAgICAgICAgICAgYiA9IDAuNQot
ICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDYwJSwgNTAlKTsK
LSAgICB9Ci0gICAgLm11bHRpcGx5IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShu
b25lIG1peCh1cmwoJy4uLy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBtdWx0aXBseSBzb3Vy
Y2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAubXVsdGlw
bHktZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgTXVsdGlwbHk6Ci0KLSAgICAg
ICAgICAgIENvID0gQ2IgKiBDcwotCi0gICAgICAgICAgICByID0gMS4wICogMC4wID0gMC4wCi0g
ICAgICAgICAgICBnID0gMC4zICogMC42ID0gMC4xOAotICAgICAgICAgICAgYiA9IDAuNSAqIDAu
NSA9IDAuMjUKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAlLCAx
OCUsIDI1JSk7Ci0gICAgfQotICAgIC5zY3JlZW4gewotICAgICAgICAtd2Via2l0LWZpbHRlcjog
Y3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIHNjcmVl
biBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAu
c2NyZWVuLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIFNjcmVlbjoKLQotICAg
ICAgICAgICAgQ28gPSBDYiArIENzIC0gQ2IgKiBDcwotCi0gICAgICAgICAgICByID0gMS4wICsg
MC4wIC0gMS4wICogMC4wID0gMS4wCi0gICAgICAgICAgICBnID0gMC4zICsgMC42IC0gMC4zICog
MC42ID0gMC43MgotICAgICAgICAgICAgYiA9IDAuNSArIDAuNSAtIDAuNSAqIDAuNSA9IDAuNzUK
LQotICAgICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJl
cyB1cyB0byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5k
LWNvbG9yOiByZ2IoMTAwJSwgNzIlLCA3NSUpOwotICAgICAgICAqLwotICAgICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiByZ2IoMjU1LCAxODMsIDE5Mik7Ci0gICAgfQotICAgIC5kYXJrZW4gewotICAg
ICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2Vz
L21peC1jb2xvci5mcycpIGRhcmtlbiBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAu
NSAxLjApOwotICAgIH0KLSAgICAuZGFya2VuLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAg
ICAgICAgIERhcmtlbjoKLQotICAgICAgICAgICAgQ28gPSBtaW4oQ2IsIENzKQotCi0gICAgICAg
ICAgICByID0gbWluKDEuMCwgMC4wKSA9IDAuMAotICAgICAgICAgICAgZyA9IG1pbigwLjMsIDAu
NikgPSAwLjMKLSAgICAgICAgICAgIGIgPSBtaW4oMC41LCAwLjUpID0gMC41Ci0gICAgICAgICov
Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwJSwgMzAlLCA1MCUpOwotICAgIH0KLSAg
ICAubGlnaHRlbiB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJs
KCcuLi8uLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbGlnaHRlbiBzb3VyY2UtYXRvcCksIG1p
eF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwotICAgIH0KLSAgICAubGlnaHRlbi1leHBlY3RlZCB7
Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBMaWdodGVuOgotCi0gICAgICAgICAgICBDbyA9IG1h
eChDYiwgQ3MpCi0KLSAgICAgICAgICAgIHIgPSBtYXgoMS4wLCAwLjApID0gMS4wCi0gICAgICAg
ICAgICBnID0gbWF4KDAuMywgMC42KSA9IDAuNgotICAgICAgICAgICAgYiA9IG1heCgwLjUsIDAu
NSkgPSAwLjUKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUs
IDYwJSwgNTAlKTsKLSAgICB9Ci0gICAgLmRpZmZlcmVuY2UgewotICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycp
IGRpZmZlcmVuY2Ugc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAg
ICB9Ci0gICAgLmRpZmZlcmVuY2UtZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAg
RGlmZmVyZW5jZToKLQotICAgICAgICAgICAgQ28gPSBhYnMoQ2IgLSBDcykKLQotICAgICAgICAg
ICAgciA9IGFicygxLjAgLSAwLjApID0gMS4wCi0gICAgICAgICAgICBnID0gYWJzKDAuMyAtIDAu
NikgPSAwLjMKLSAgICAgICAgICAgIGIgPSBhYnMoMC41IC0gMC41KSA9IDAuMAotCi0gICAgICAg
ICAgICBUaGUgZXJyb3IgaW4gdGhlIGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVz
ZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJn
YigxMDAlLCAzMCUsIDAlKTsKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiKDI1NSwgNzcsIDEpOwotICAgIH0KLSAgICAuZXhjbHVzaW9uIHsKLSAgICAgICAgLXdlYmtp
dC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uLy4uL3Jlc291cmNlcy9taXgtY29sb3Iu
ZnMnKSBleGNsdXNpb24gc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsK
LSAgICB9Ci0gICAgLmV4Y2x1c2lvbi1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAg
ICBFeGNsdXNpb246Ci0KLSAgICAgICAgICAgIENvID0gQ2IgKyBDcyAtIDIgKiBDYiAqIENzCi0K
LSAgICAgICAgICAgIHIgPSAxLjAgKyAwLjAgLSAyLjAgKiAxLjAgKiAwLjAgPSAxLjAKLSAgICAg
ICAgICAgIGcgPSAwLjMgKyAwLjYgLSAyLjAgKiAwLjMgKiAwLjYgPSAwLjU0Ci0gICAgICAgICAg
ICBiID0gMC41ICsgMC41IC0gMi4wICogMC41ICogMC41ID0gMC41Ci0KLSAgICAgICAgICAgIFRo
ZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4
LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUs
IDU0JSwgNTAlKTsgCi0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigy
NTUsIDEzOCwgMTI3KTsKLSAgICB9Ci0gICAgLm92ZXJsYXkgewotICAgICAgICAtd2Via2l0LWZp
bHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycp
IG92ZXJsYXkgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9
Ci0gICAgLm92ZXJsYXktZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgT3Zlcmxh
eToKLQotICAgICAgICAgICAgQ28gPSBIYXJkTGlnaHQoQ3MsIENiKQotICAgICAgICAgICAgICAg
PSBpZihDYiA8PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBNdWx0aXBseShDcywgMiAqIENi
KQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBTY3JlZW4oQ3Ms
IDIgKiBDYiAtIDEpCi0gICAgICAgICAgICAgICA9IGlmKENiIDw9IDAuNSkKLSAgICAgICAgICAg
ICAgICAgICAgIENzICogKDIgKiBDYikKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAg
ICAgICAgICAgICAgQ3MgKyAoMiAqIENiIC0gMSkgLSAoQ3MgKiAoMiAqIENiIC0gMSkpCi0KLSAg
ICAgICAgICAgIHIgPSAwICsgKDIgKiAxIC0gMSkgLSAoMCAqICgyICogMSAtIDEpKSA9IDEKLSAg
ICAgICAgICAgIGcgPSAwLjYgKiAoMiAqIDAuMykgPSAwLjM2Ci0gICAgICAgICAgICBiID0gMC41
ICogKDIgKiAwLjUpID0gMC41Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3Ig
Y2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAg
ICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDM2JSwgNTAlKTsKLSAgICAgICAg
Ki8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgOTEsIDEyOCk7Ci0gICAgfQot
ICAgIC5jb2xvci1kb2RnZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBt
aXgodXJsKCcuLi8uLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgY29sb3ItZG9kZ2Ugc291cmNl
LWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmNvbG9yLWRv
ZGdlLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIENvbG9yRG9kZ2U6Ci0KLSAg
ICAgICAgICAgIENvID0gaWYoQ3MgPCAxKQotICAgICAgICAgICAgICAgICAgICAgbWluKDEsIENi
IC8gKDEgLSBDcykpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAg
IDEKLQotICAgICAgICAgICAgciA9IG1pbigxLCAxIC8gKDEgLSAwKSkgPSAxCi0gICAgICAgICAg
ICBnID0gbWluKDEsIDAuMyAvICgxIC0gMC42KSkgPSAwLjc1Ci0gICAgICAgICAgICBiID0gbWlu
KDEsIDAuNSAvICgxIC0gMC41KSkgPSAxCi0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUg
Y29sb3IgY2FsY3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9y
OgotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDc1JSwgMTAwJSk7Ci0g
ICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDE5MCwgMjU1KTsK
LSAgICB9Ci0gICAgLmNvbG9yLWJ1cm4gewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9t
KG5vbmUgbWl4KHVybCgnLi4vLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGNvbG9yLWJ1cm4g
c291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC44IDAuOCAwLjggMS4wKTsKLSAgICB9Ci0gICAgLmNv
bG9yLWJ1cm4tZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgQ29sb3JCdXJuOgot
Ci0gICAgICAgICAgICBDbyA9IGlmKENzID4gMCkKLSAgICAgICAgICAgICAgICAgICAgIDEgLSBt
aW4oMSwgKDEgLSBDYikgLyBDcykKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAg
ICAgICAgICAgMAotCi0gICAgICAgICAgICAgciA9IDEgLSBtaW4oMSwgKDEgLSAxKSAvIDAuOCkg
PSAxCi0gICAgICAgICAgICAgZyA9IDEgLSBtaW4oMSwgKDEgLSAwLjMpIC8gMC44KSA9IDAuMTI1
Ci0gICAgICAgICAgICAgYiA9IDEgLSBtaW4oMSwgKDEgLSAwLjUpIC8gMC44KSA9IDAuMzc1Ci0K
LSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2FsY3VsYXRpb24gcmVxdWlyZXMg
dXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogcmdiKDEwMCUsIDEyLjUlLCAzNy41JSk7Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYigyNTUsIDMxLCA5Nik7Ci0gICAgfQotICAgIC5oYXJkLWxpZ2h0IHsK
LSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uLy4uL3Jlc291
cmNlcy9taXgtY29sb3IuZnMnKSBoYXJkLWxpZ2h0IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAu
MCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5oYXJkLWxpZ2h0LWV4cGVjdGVkIHsKLSAgICAg
ICAgLyoKLSAgICAgICAgICAgIEhhcmRMaWdodDoKLQotICAgICAgICAgICAgQ28gPSBpZihDcyA8
PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBNdWx0aXBseShDYiwgMiAqIENzKQotICAgICAg
ICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBTY3JlZW4oQ2IsIDIgKiBDcyAt
MSkKLSAgICAgICAgICAgICAgID0gaWYoQ3MgPD0gMC41KQotICAgICAgICAgICAgICAgICAgICAg
Q2IgKiAoMiAqIENzKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAg
ICBDYiArICgyICogQ3MgLSAxKSAtIChDYiAqICgyICogQ3MgLSAxKSkKLQotICAgICAgICAgICAg
ciA9IDEgKiAoMiAqIDApID0gMAotICAgICAgICAgICAgZyA9IDAuMyArICgyICogMC42IC0gMSkg
LSAoMC4zICogKDIgKiAwLjYgLSAxKSkgPSAwLjQ0Ci0gICAgICAgICAgICBiID0gMC41ICogKDIg
KiAwLjUpID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigw
JSwgNDQlLCA1MCUpOwotICAgIH0KLSAgICAuc29mdC1saWdodCB7Ci0gICAgICAgIC13ZWJraXQt
ZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi8uLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZz
Jykgc29mdC1saWdodCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAuNSAxLjApOwot
ICAgIH0KLSAgICAuc29mdC1saWdodC1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAg
ICBTb2Z0TGlnaHQ6Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPD0gMC41KQotICAgICAgICAg
ICAgICAgICAgICAgQ2IgLSAoMSAtIDIgKiBDcykgKiBDYiAqICgxIC0gQ2IpCi0gICAgICAgICAg
ICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIENiICsgKDIgKiBDcyAtIDEpICogKEQo
Q2IpIC0gQ2IpCi0KLSAgICAgICAgICAgIHdpdGgKLQotICAgICAgICAgICAgRChDYikgPSBpZihD
YiA8PSAwLjI1KQotICAgICAgICAgICAgICAgICAgICAgICAgKDE2ICogQ2IgLSAxMikgKiBDYiAr
IDQpICogQ2IKLSAgICAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAg
ICAgc3FydChDYikKLQotICAgICAgICAgICAgRC5yID0gc3FydCgxKSA9IDEKLSAgICAgICAgICAg
IEQuZyA9IHNxcnQoMC4zKSA9IDAuNTQ3NzIyNTU3NTA1MTY2Ci0gICAgICAgICAgICBELmIgPSBz
cXJ0KDAuNSkgPSAwLjcwNzEwNjc4MTE4NjU0OAotICAgICAgICAgICAgciA9IDEgLSAoMSAtIDIg
KiAwKSAqIDEgKiAoMSAtIDEpID0gMQotICAgICAgICAgICAgZyA9IDAuMyArICgyICogMC42IC0g
MSkgKiAoRC5nIC0gMC4zKSA9IDAuMzQ5NTQ0NTExNTAxMDMzCi0gICAgICAgICAgICBiID0gMC41
IC0gKDEgLSAyICogMC41KSAqIDAuNSAqICgxIC0gMC41KSA9IDAuNQotCi0gICAgICAgICAgICBU
aGUgZXJyb3IgaW4gdGhlIGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUg
OC1iaXQgdmFsdWVzIGZvcjoKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDAl
LCAzNC45NTQ0NTElLCA1MCUpOwotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMjU1LCA4OSwgMTI4KTsKLSAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5
PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9
ImRlc3RpbmF0aW9uIG5vcm1hbCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im5vcm1hbC1l
eHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVh
cmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gbXVsdGlwbHkiPjwvZGl2Pgot
ICAgICAgICA8ZGl2IGNsYXNzPSJtdWx0aXBseS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+
Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0i
ZGVzdGluYXRpb24gc2NyZWVuIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2NyZWVuLWV4
cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFy
ZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBkYXJrZW4iPjwvZGl2PgotICAg
ICAgICA8ZGl2IGNsYXNzPSJkYXJrZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAg
IDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3Rp
bmF0aW9uIGxpZ2h0ZW4iPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJsaWdodGVuLWV4cGVj
dGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMi
PgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBkaWZmZXJlbmNlIj48L2Rpdj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0iZGlmZmVyZW5jZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+
Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0i
ZGVzdGluYXRpb24gZXhjbHVzaW9uIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZXhjbHVz
aW9uLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9m
LXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBvdmVybGF5Ij48L2Rp
dj4KLSAgICAgICAgPGRpdiBjbGFzcz0ib3ZlcmxheS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9k
aXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFz
cz0iZGVzdGluYXRpb24gY29sb3ItZG9kZ2UiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJj
b2xvci1kb2RnZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0i
cGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gY29sb3It
YnVybiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNvbG9yLWJ1cm4tZXhwZWN0ZWQiPjwv
ZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIGhhcmQtbGlnaHQiPjwvZGl2PgotICAgICAgICA8
ZGl2IGNsYXNzPSJoYXJkLWxpZ2h0LWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8
ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5h
dGlvbiBzb2Z0LWxpZ2h0Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ic29mdC1saWdodC1l
eHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPCEtLQotICAgICAgICBJZiB5b3UgYWRk
IG1vcmUgYmxlbmQgbW9kZXMgdG8gdGhpcyBwYWdlLCBiZSBjYXJlZnVsIG5vdCB0byBleGNlZWQg
NjAwcHggaW4gCi0gICAgICAgIGhlaWdodCwgc2luY2UgRHVtcFJlbmRlclRyZWUgY29tcGFyZXMg
ODAweDYwMCBzbmFwc2hvdHMgb2YgdGhpcyBwYWdlLgotICAgIC0tPgotPC9ib2R5PgotPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmls
dGVyLWEtdGV4LWNvb3JkLW9wdGlvbmFsLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwtZXhwZWN0
ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWQ5MDRiMC4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYS10ZXgt
Y29vcmQtb3B0aW9uYWwtZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAg
QEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhh
dCBjdXN0b20gZmlsdGVycyB3aXRoIGJsZW5kaW5nIGFuZCBjb21wb3NpdGluZyBleGVjdXRlIHdo
ZXRoZXIgb3Igbm90IHRoZSBhdXRob3IgZGVmaW5lcyBhX3RleENvb3JkLjwvdGl0bGU+Ci0gICAg
PCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIDIgdmVydGljYWxseS1zdGFj
a2VkIGdyZWVuIGJveGVzLiAtLT4KLSAgICA8c3R5bGU+Ci0gICAgZGl2IHsKLSAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgIHdpZHRoOiA1MHB4OwotICAg
ICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgIG1hcmdpbjogMTBweDsKLSAgICB9Ci0gICAgPC9z
dHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1hLXRleC1jb29yZC1vcHRpb25hbC5odG1sIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWEtdGV4LWNvb3JkLW9wdGlvbmFs
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBjNDZiOTAuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWEtdGV4LWNv
b3JkLW9wdGlvbmFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MCArMCwwIEBACi08IWRvY3R5
cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZp
bHRlcnMgd2l0aCBibGVuZGluZyBhbmQgY29tcG9zaXRpbmcgZXhlY3V0ZSB3aGV0aGVyIG9yIG5v
dCB0aGUgYXV0aG9yIGRlZmluZXMgYV90ZXhDb29yZC48L3RpdGxlPgotICAgIDwhLS0gSWYgdGhl
IHRlc3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSAyIHZlcnRpY2FsbHktc3RhY2tlZCBncmVlbiBi
b3hlcy4gLS0+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0g
ICAgICAgIAotICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgewotICAgICAgICAg
ICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBzaGFkZXJzIGRvd25sb2Fk
LgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0Pgot
ICAgIDxzdHlsZT4KLSAgICBkaXYgewotICAgICAgICAvKiBJZiB0aGUgc2hhZGVycyBleGVjdXRl
LCB0aGV5IHdpbGwgdHVybiB0aGUgZWxlbWVudCdzIGNvbG9yIGZyb20gcmVkIHRvIGdyZWVuLiAq
LwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAwLCAwKTsKLSAgICAgICAgd2lk
dGg6IDUwcHg7Ci0gICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgbWFyZ2luOiAxMHB4Owot
ICAgIH0KLSAgICAuYS10ZXgtY29vcmQtZGVmaW5lZCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvYS10ZXgtY29vcmQtZGVmaW5lZC52cycpIG1peCh1
cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBtaXhf
Y29sb3IgMC4wIDEuMCAwLjAgMS4wKTsKLSAgICB9Ci0gICAgLmEtdGV4LWNvb3JkLXVuZGVmaW5l
ZCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvYS10
ZXgtY29vcmQtdW5kZWZpbmVkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5m
cycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMS4wIDAuMCAxLjApOwotICAg
IH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAg
IDxkaXYgY2xhc3M9ImEtdGV4LWNvb3JkLWRlZmluZWQiPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9
ImEtdGV4LWNvb3JkLXVuZGVmaW5lZCI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYW5pbWF0
aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1hbmltYXRpb24tZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBiMzA5ODRjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1hbmltYXRpb24tZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEsMTEgKzAsMCBAQAotICAgICAgIAotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZv
ciAiY3VzdG9tLWZyb20tbm9uZS1ib3giIGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9z
ZSB0bzogY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHJvdGF0ZUJ5IDMw
LCBvZmZzZXQgMCkKLVBBU1MgLSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS10
by1ub25lLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20o
dXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKQot
UEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLWZyb20tbm8tcGFyYW1z
LWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZl
cnRleC1yb3RhdGUudnMpIG5vbmUsIDEgMSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKQotUEFTUyAt
ICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLXRvLW5vLXBhcmFtcy1ib3giIGVs
ZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybCh2ZXJ0ZXgtcm90
YXRlLnZzKSBub25lLCAxIDEsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCkKLVBBU1MgLSAid2Via2l0
RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1taXgtYXR0cmlidXRlcy1ib3giIGVsZW1lbnQg
YXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZz
KSBub25lLCA1IDUsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCkKLVBBU1MgLSAid2Via2l0RmlsdGVy
IiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1mcm9tLWRpZmYtcGFyYW1zLWJveCIgZWxlbWVudCBhdCAx
cyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5v
bmUsIDEgMSwgcGFyYW0gMTAsIHJvdGF0ZUJ5IDYwLCBvZmZzZXQgMTAsIGFub3RoZXJfcGFyYW0g
NSkKLVBBU1MgLSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS10by1kaWZmLXBh
cmFtcy1ib3giIGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVy
bCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHBhcmFtIDEwLCByb3RhdGVCeSA2MCwgb2Zm
c2V0IDEwLCBhbm90aGVyX3BhcmFtIDUpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkg
Zm9yICJjdXN0b20tbWl4LXBhcmFtcy1ib3giIGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBj
bG9zZSB0bzogY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHBhcmFtIDEw
LCBhbm90aGVyX3BhcmFtIDUsIGZpcnN0X3BhcmFtIDYsIHJvdGF0ZUJ5IDYwLCBvZmZzZXQgMTAs
IGxhc3RfcGFyYW0gNCkKLVBBU1MgLSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3Rv
bS1taXgtbnVtYmVycy1ib3giIGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzog
Y3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHJvdGF0ZUJ5IDQ1LCBhIDUu
NSwgYiAxMSAxNi41LCBjIDIyIDI3LjUgMzMsIGQgMzguNSA0NCA0OS41KQotCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYW5pbWF0aW9u
Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYW5p
bWF0aW9uLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZjOTNiMTEuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFu
aW1hdGlvbi5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTM5ICswLDAgQEAKLTwhRE9DVFlQRSBo
dG1sPgotCi08aHRtbD4KLTxoZWFkPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVm
ZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAg
LmJveCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgbWFyZ2luOiAxMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogYmx1ZTsKLSAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKLSAgICAgICAg
fQotICAgIAotICAgICAgICAjY3VzdG9tLWZyb20tbm9uZS1ib3ggewotICAgICAgICAgICAgLXdl
YmtpdC1hbmltYXRpb246IGN1c3RvbS1mcm9tLW5vbmUtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAg
IH0KLSAgICAKLSAgICAgICAgI2N1c3RvbS10by1ub25lLWJveCB7Ci0gICAgICAgICAgICAtd2Vi
a2l0LWFuaW1hdGlvbjogY3VzdG9tLXRvLW5vbmUtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0K
LSAgICAKLSAgICAgICAgI2N1c3RvbS1mcm9tLW5vLXBhcmFtcy1ib3ggewotICAgICAgICAgICAg
LXdlYmtpdC1hbmltYXRpb246IGN1c3RvbS1mcm9tLW5vLXBhcmFtcy1hbmltIDJzIGxpbmVhcjsK
LSAgICAgICAgfQotICAgIAotICAgICAgICAjY3VzdG9tLXRvLW5vLXBhcmFtcy1ib3ggewotICAg
ICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGN1c3RvbS10by1uby1wYXJhbXMtYW5pbSAycyBs
aW5lYXI7Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgICNjdXN0b20tbWl4LWF0dHJpYnV0
ZXMtYm94IHsKLSAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tbWl4LWF0dHJp
YnV0ZXMtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLSAgICAKLSAgICAgICAgI2N1c3RvbS1m
cm9tLWRpZmYtcGFyYW1zLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3Vz
dG9tLWZyb20tZGlmZi1wYXJhbXMtYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLSAgICAKLSAg
ICAgICAgI2N1c3RvbS10by1kaWZmLXBhcmFtcy1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1h
bmltYXRpb246IGN1c3RvbS10by1kaWZmLXBhcmFtcy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAg
fQotICAgIAotICAgICAgICAjY3VzdG9tLW1peC1wYXJhbXMtYm94IHsKLSAgICAgICAgICAgIC13
ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tbWl4LXBhcmFtcy1hbmltIDJzIGxpbmVhcjsKLSAgICAg
ICAgfQotICAgICAgICAKLSAgICAgICAgI2N1c3RvbS1taXgtbnVtYmVycy1ib3ggewotICAgICAg
ICAgICAgLXdlYmtpdC1hbmltYXRpb246IGN1c3RvbS1taXgtbnVtYmVycy1hbmltIDJzIGxpbmVh
cjsKLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWZy
b20tbm9uZS1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZpbHRlcjogbm9uZTsg
fQotICAgICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291
cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKTsgfQotICAgICAg
ICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS10by1ub25lLWFuaW0gewot
ICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNl
cy92ZXJ0ZXgtcm90YXRlLnZzKSwgcm90YXRlQnkgMzAsIG9mZnNldCAwKTsgfQotICAgICAgICAg
ICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBub25lOyB9Ci0gICAgICAgIH0KLSAgICAKLSAgICAg
ICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1mcm9tLW5vLXBhcmFtcy1hbmltIHsKLSAgICAg
ICAgICAgIGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVy
dGV4LXJvdGF0ZS52cykpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCByb3RhdGVCeSAzMCwgb2Zm
c2V0IDApOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9t
LXRvLW5vLXBhcmFtcy1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZpbHRlcjog
Y3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cyksIHJvdGF0ZUJ5IDMwLCBv
ZmZzZXQgMCk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVy
bCguLi9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cykpOyB9Ci0gICAgICAgIH0KLSAgICAgICAg
Ci0gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tbWl4LWF0dHJpYnV0ZXMtYW5pbSB7
Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3Vy
Y2VzL3ZlcnRleC1vZmZzZXQudnMpLCByb3RhdGVCeV9hIDMwLCBvZmZzZXRfYSAwKTsgfQotICAg
ICAgICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92
ZXJ0ZXgtcm90YXRlLnZzKSwgNSA1IGJvcmRlci1ib3gsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCk7
IH0KLSAgICAgICAgfQotICAgIAotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLWZy
b20tZGlmZi1wYXJhbXMtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpLCBwYXJhbSAxMCwgcm90
YXRlQnkgMzAsIG9mZnNldCAwLCBhbm90aGVyX3BhcmFtIDUpOyB9Ci0gICAgICAgICAgICB0byAg
IHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUu
dnMpLCByb3RhdGVCeSA5MCwgb2Zmc2V0IDIwKTsgfQotICAgICAgICB9Ci0KLSAgICAgICAgQC13
ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS10by1kaWZmLXBhcmFtcy1hbmltIHsKLSAgICAgICAgICAg
IGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LXJv
dGF0ZS52cyksIHJvdGF0ZUJ5IDkwLCBvZmZzZXQgMjApOyB9Ci0gICAgICAgICAgICB0byAgIHsg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMp
LCBwYXJhbSAxMCwgcm90YXRlQnkgMzAsIG9mZnNldCAwLCBhbm90aGVyX3BhcmFtIDUpOyB9Ci0g
ICAgICAgIH0KLSAgICAKLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1taXgtcGFy
YW1zLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSwgZmlyc3RfcGFyYW0gNiwgcm90YXRlQnkg
OTAsIG9mZnNldCAyMCwgbGFzdF9wYXJhbSA0KTsgfQotICAgICAgICAgICAgdG8gICB7IC13ZWJr
aXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSwgcGFy
YW0gMTAsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCwgYW5vdGhlcl9wYXJhbSA1KTsgfQotICAgICAg
ICB9Ci0gICAgICAgIAotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLW1peC1udW1i
ZXJzLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KC4uL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzKSwgcm90YXRlQnkgMCwgYSAxLCBiIDIgMywg
YyA0IDUgNiwgZCA3IDggOSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjog
Y3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cyksIHJvdGF0ZUJ5IDkwLCBh
IDEwLCBiIDIwIDMwLCBjIDQwIDUwIDYwLCBkIDcwIDgwIDkwKTsgfQotICAgICAgICB9Ci0gICAg
PC9zdHlsZT4KLSAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItcGFy
c2VyLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vYW5pbWF0aW9ucy9y
ZXNvdXJjZXMvYW5pbWF0aW9uLXRlc3QtaGVscGVycy5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlw
dCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotICAgICAgICBjb25zdCBleHBlY3RlZFZhbHVlcyA9
IFsKLSAgICAgICAgICAgIC8vIFthbmltYXRpb24tbmFtZSwgdGltZSwgZWxlbWVudC1pZCwgcHJv
cGVydHksIGV4cGVjdGVkLXZhbHVlLCB0b2xlcmFuY2VdCi0gICAgICAgICAgICBbImN1c3RvbS1m
cm9tLW5vbmUtYW5pbSIsICAxLCAiY3VzdG9tLWZyb20tbm9uZS1ib3giLCAid2Via2l0RmlsdGVy
IiwgJ2N1c3RvbSh1cmwodmVydGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCByb3RhdGVCeSAzMCwg
b2Zmc2V0IDApJywgMF0sCi0gICAgICAgICAgICBbImN1c3RvbS10by1ub25lLWFuaW0iLCAgMSwg
ImN1c3RvbS10by1ub25lLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgt
cm90YXRlLnZzKSBub25lLCAxIDEsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCknLCAwXSwKLQotICAg
ICAgICAgICAgWyJjdXN0b20tZnJvbS1uby1wYXJhbXMtYW5pbSIsICAxLCAiY3VzdG9tLWZyb20t
bm8tcGFyYW1zLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRl
LnZzKSBub25lLCAxIDEsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCknLCAwXSwKLSAgICAgICAgICAg
IFsiY3VzdG9tLXRvLW5vLXBhcmFtcy1hbmltIiwgIDEsICJjdXN0b20tdG8tbm8tcGFyYW1zLWJv
eCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAx
IDEsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCknLCAwXSwKLSAgICAgICAgICAgIAotICAgICAgICAg
ICAgWyJjdXN0b20tbWl4LWF0dHJpYnV0ZXMtYW5pbSIsICAxLCAiY3VzdG9tLW1peC1hdHRyaWJ1
dGVzLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBu
b25lLCA1IDUsIHJvdGF0ZUJ5IDMwLCBvZmZzZXQgMCknLCAwXSwKLQotICAgICAgICAgICAgLy8g
RklYTUU6IENTUyBTaGFkZXJzIGRvIG5vdCBnZXQgZ29vZCBGUFMgaW4gZGVidWcgbW9kZSwgc28g
dGhlIHRvbGVyYW5jZSBuZWVkcyB0byBiZSBoaWdoZXIuCi0gICAgICAgICAgICAvLyBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODUwODYKLSAgICAgICAgICAgIFsiY3Vz
dG9tLWZyb20tZGlmZi1wYXJhbXMtYW5pbSIsICAxLCAiY3VzdG9tLWZyb20tZGlmZi1wYXJhbXMt
Ym94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKHZlcnRleC1yb3RhdGUudnMpIG5vbmUs
IDEgMSwgcGFyYW0gMTAsIHJvdGF0ZUJ5IDYwLCBvZmZzZXQgMTAsIGFub3RoZXJfcGFyYW0gNSkn
LCA1XSwKLSAgICAgICAgICAgIFsiY3VzdG9tLXRvLWRpZmYtcGFyYW1zLWFuaW0iLCAgMSwgImN1
c3RvbS10by1kaWZmLXBhcmFtcy1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwodmVy
dGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCBwYXJhbSAxMCwgcm90YXRlQnkgNjAsIG9mZnNldCAx
MCwgYW5vdGhlcl9wYXJhbSA1KScsIDVdLAotCi0gICAgICAgICAgICBbImN1c3RvbS1taXgtcGFy
YW1zLWFuaW0iLCAgMSwgImN1c3RvbS1taXgtcGFyYW1zLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAn
Y3VzdG9tKHVybCh2ZXJ0ZXgtcm90YXRlLnZzKSBub25lLCAxIDEsIHBhcmFtIDEwLCBhbm90aGVy
X3BhcmFtIDUsIGZpcnN0X3BhcmFtIDYsIHJvdGF0ZUJ5IDYwLCBvZmZzZXQgMTAsIGxhc3RfcGFy
YW0gNCknLCA1XSwKLSAgICAgICAgICAgIFsiY3VzdG9tLW1peC1udW1iZXJzLWFuaW0iLCAgMSwg
ImN1c3RvbS1taXgtbnVtYmVycy1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwodmVy
dGV4LXJvdGF0ZS52cykgbm9uZSwgMSAxLCByb3RhdGVCeSA0NSwgYSA1LjUsIGIgMTEgMTYuNSwg
YyAyMiAyNy41IDMzLCBkIDM4LjUgNDQgNDkuNSknLCAxMF0KLSAgICAgICAgXTsKLSAgICAgICAg
cnVuQW5pbWF0aW9uVGVzdChleHBlY3RlZFZhbHVlcyk7Ci0gICAgPC9zY3JpcHQ+Ci08L2hlYWQ+
Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tZnJvbS1ub25lLWJveCI+
PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLXRvLW5vbmUtYm94Ij48L2Rp
dj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tZnJvbS1uby1wYXJhbXMtYm94Ij48
L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tdG8tbm8tcGFyYW1zLWJveCI+
PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLW1peC1hdHRyaWJ1dGVzLWJv
eCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLWZyb20tZGlmZi1wYXJh
bXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tdG8tZGlmZi1w
YXJhbXMtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tbWl4LXBh
cmFtcy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1taXgtbnVt
YmVycy1ib3giPjwvZGl2PgotCi0gICAgPGRpdiBpZD0icmVzdWx0Ij4KLSAgICA8L2Rpdj4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1hcnJheS1ibGVuZGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXktYmxlbmRpbmctZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzNjljOTM0OS4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXkt
YmxlbmRpbmctZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi0gICAg
IAotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLWJsZW5kLWZyb20t
bm9uZS1ib3giIGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVy
bChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIGFycmF5RnJvbU5vbmVBbmltIGFycmF5
KDEwLCAyMCkpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkgZm9yICJjdXN0b20tYmxl
bmQtdG8tbm9uZS1ib3giIGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIGFycmF5VG9Ob25lQW5pbSBh
cnJheSgxMCwgMjApKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9t
LWJsZW5kLXNpbmdsZS1lbGVtZW50LWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNs
b3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgc2luZ2xl
RWxlbWVudEFycmF5IGFycmF5KDUpKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZv
ciAiY3VzdG9tLWJsZW5kLXR3by1mbG9hdHMtYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhp
bmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0
d29GbG9hdHNBcnJheSBhcnJheSgyLCA2LjQpKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3Bl
cnR5IGZvciAiY3VzdG9tLWJsZW5kLW11bHRpcGxlLWVsZW1lbnRzLWJveCIgZWxlbWVudCBhdCAx
cyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMp
IG5vbmUsIDEgMSwgbXVsdGlwbGVFbGVtZW50c0FycmF5IGFycmF5KDUsIDEwLCA1LCAxMCwgNSwg
MTAsIDUsIDEwLCA1KSkKLVBBU1MgLSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3Rv
bS1ibGVuZC1maXJzdC1sb25nZXItYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21ldGhpbmcgY2xv
c2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCBmaXJzdExv
bmdlciBhcnJheSgxMCwgMTAsIDEwLCAxMCkpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVy
dHkgZm9yICJjdXN0b20tYmxlbmQtc2Vjb25kLWxvbmdlci1ib3giIGVsZW1lbnQgYXQgMXMgc2F3
IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25l
LCAxIDEsIHNlY29uZExvbmdlciBhcnJheSgxMCwgMTAsIDEwLCAxMCwgMTApKQotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXkt
YmxlbmRpbmcuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1hcnJheS1ibGVuZGluZy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4
ZjlhMGFhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1hcnJheS1ibGVuZGluZy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTE1ICsw
LDAgQEAKLTwhRE9DVFlQRSBodG1sPgotCi08aHRtbD4KLTxoZWFkPgotICAgIDxzY3JpcHQ+Ci0g
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwg
IjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgi
V2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAg
IDxzdHlsZT4KLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgbWFyZ2luOiAxMHB4OwotICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTsKLSAgICAgICAgICAgIGRpc3BsYXk6IGlubGlu
ZS1ibG9jazsKLSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20tYmxlbmQtZnJvbS1ub25lLWJv
eCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLWJsZW5kLWZyb20tbm9u
ZS1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20tYmxlbmQtdG8t
bm9uZS1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGN1c3RvbS1ibGVuZC10
by1ub25lLWFuaW0gMnMgbGluZWFyOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVu
ZC1zaW5nbGUtZWxlbWVudC1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGN1
c3RvbS1ibGVuZC1zaW5nbGUtZWxlbWVudC1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0g
ICAgICAgICNjdXN0b20tYmxlbmQtdHdvLWZsb2F0cy1ib3ggewotICAgICAgICAgICAgLXdlYmtp
dC1hbmltYXRpb246IGN1c3RvbS1ibGVuZC10d28tZmxvYXRzLWFuaW0gMnMgbGluZWFyOwotICAg
ICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1ibGVuZC1tdWx0aXBsZS1lbGVtZW50cy1ib3ggewot
ICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGN1c3RvbS1ibGVuZC1tdWx0aXBsZS1lbGVt
ZW50cy1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20tYmxlbmQt
Zmlyc3QtbG9uZ2VyLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9t
LWJsZW5kLWZpcnN0LWxvbmdlci1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAg
ICNjdXN0b20tYmxlbmQtc2Vjb25kLWxvbmdlci1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1h
bmltYXRpb246IGN1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2VyLWFuaW0gMnMgbGluZWFyOwotICAg
ICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1ibGVuZC1mcm9tLW5v
bmUtYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwo
bm8tc2hhZGVyLW5lZWRlZC52cykpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIGFycmF5RnJvbU5vbmVBbmltIGFy
cmF5KDEwLjAsIDIwLjApKTsgfQotICAgICAgICB9Ci0KLSAgICAgICAgQC13ZWJraXQta2V5ZnJh
bWVzIGN1c3RvbS1ibGVuZC10by1ub25lLWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJr
aXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCBhcnJheVRvTm9uZUFu
aW0gYXJyYXkoMTAuMCwgMjAuMCkpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykpOyB9Ci0gICAgICAgIH0KLSAgICAK
LSAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1ibGVuZC1zaW5nbGUtZWxlbWVudC1h
bmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1z
aGFkZXItbmVlZGVkLnZzKSwgc2luZ2xlRWxlbWVudEFycmF5IGFycmF5KDApKTsgfQotICAgICAg
ICAgICAgdG8gICB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQu
dnMpLCBzaW5nbGVFbGVtZW50QXJyYXkgYXJyYXkoMTApKTsgfQotICAgICAgICB9Ci0KLSAgICAg
ICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1ibGVuZC10d28tZmxvYXRzLWFuaW0gewotICAg
ICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVk
ZWQudnMpLCB0d29GbG9hdHNBcnJheSBhcnJheSgxLjAxLCAzLjE0KSk7IH0KLSAgICAgICAgICAg
IHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwg
dHdvRmxvYXRzQXJyYXkgYXJyYXkoMy4wMywgOS40MikpOyB9Ci0gICAgICAgIH0KLQotCi0gICAg
ICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tYmxlbmQtbXVsdGlwbGUtZWxlbWVudHMtYW5p
bSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hh
ZGVyLW5lZWRlZC52cyksIG11bHRpcGxlRWxlbWVudHNBcnJheSBhcnJheSgwLCAwLCAwLCAwLCAw
LCAwLCAwLCAwLCAwKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgbXVsdGlwbGVFbGVtZW50c0FycmF5IGFycmF5
KDEwLCAyMCwgMTAsIDIwLCAxMCwgMjAsIDEwLCAyMCwgMTApKTsgfQotICAgICAgICB9Ci0KLSAg
ICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1ibGVuZC1maXJzdC1sb25nZXItYW5pbSB7
Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVy
LW5lZWRlZC52cyksIGZpcnN0TG9uZ2VyIGFycmF5KDEwLCAxMCwgMTAsIDEwLCAxMCkpOyB9Ci0g
ICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5l
ZWRlZC52cyksIGZpcnN0TG9uZ2VyIGFycmF5KDEwLCAxMCwgMTAsIDEwKSk7IH0KLSAgICAgICAg
fQotCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tYmxlbmQtc2Vjb25kLWxvbmdl
ci1hbmltIHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChu
by1zaGFkZXItbmVlZGVkLnZzKSwgc2Vjb25kTG9uZ2VyIGFycmF5KDEwLCAxMCwgMTAsIDEwKSk7
IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFk
ZXItbmVlZGVkLnZzKSwgc2Vjb25kTG9uZ2VyIGFycmF5KDEwLCAxMCwgMTAsIDEwLCAxMCkpOyB9
Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMv
Y3VzdG9tLWZpbHRlci1wYXJzZXIuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9hbmltYXRpb25zL3Jlc291cmNlcy9hbmltYXRpb24tdGVzdC1oZWxwZXJzLmpzIj48L3Nj
cmlwdD4KLSAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci0gICAgICAgIGNvbnN0
IGV4cGVjdGVkVmFsdWVzID0gWwotICAgICAgICAgICAgLy8gW2FuaW1hdGlvbi1uYW1lLCB0aW1l
LCBlbGVtZW50LWlkLCBwcm9wZXJ0eSwgZXhwZWN0ZWQtdmFsdWUsIHRvbGVyYW5jZV0KLSAgICAg
ICAgICAgIFsiY3VzdG9tLWJsZW5kLWZyb20tbm9uZS1hbmltIiwgIDEsICJjdXN0b20tYmxlbmQt
ZnJvbS1ub25lLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVl
ZGVkLnZzKSBub25lLCAxIDEsIGFycmF5RnJvbU5vbmVBbmltIGFycmF5KDEwLCAyMCkpJywgMl0s
Ci0gICAgICAgICAgICBbImN1c3RvbS1ibGVuZC10by1ub25lLWFuaW0iLCAgMSwgImN1c3RvbS1i
bGVuZC10by1ub25lLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXIt
bmVlZGVkLnZzKSBub25lLCAxIDEsIGFycmF5VG9Ob25lQW5pbSBhcnJheSgxMCwgMjApKScsIDJd
LAotCi0gICAgICAgICAgICBbImN1c3RvbS1ibGVuZC1zaW5nbGUtZWxlbWVudC1hbmltIiwgMSwg
ImN1c3RvbS1ibGVuZC1zaW5nbGUtZWxlbWVudC1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3Rv
bSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCBzaW5nbGVFbGVtZW50QXJyYXkg
YXJyYXkoNSkpJywgMl0sCi0KLSAgICAgICAgICAgIFsiY3VzdG9tLWJsZW5kLXR3by1mbG9hdHMt
YW5pbSIsIDEsICJjdXN0b20tYmxlbmQtdHdvLWZsb2F0cy1ib3giLCAid2Via2l0RmlsdGVyIiwg
J2N1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0d29GbG9hdHNBcnJh
eSBhcnJheSgyLCA2LjQpKScsIDJdLAotCi0gICAgICAgICAgICBbImN1c3RvbS1ibGVuZC1tdWx0
aXBsZS1lbGVtZW50cy1hbmltIiwgMSwgImN1c3RvbS1ibGVuZC1tdWx0aXBsZS1lbGVtZW50cy1i
b3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9u
ZSwgMSAxLCBtdWx0aXBsZUVsZW1lbnRzQXJyYXkgYXJyYXkoNSwgMTAsIDUsIDEwLCA1LCAxMCwg
NSwgMTAsIDUpKScsIDRdLAotCi0gICAgICAgICAgICBbImN1c3RvbS1ibGVuZC1maXJzdC1sb25n
ZXItYW5pbSIsIDEsICJjdXN0b20tYmxlbmQtZmlyc3QtbG9uZ2VyLWJveCIsICJ3ZWJraXRGaWx0
ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIGZpcnN0TG9u
Z2VyIGFycmF5KDEwLCAxMCwgMTAsIDEwKSknLCAyXSwKLQotICAgICAgICAgICAgWyJjdXN0b20t
YmxlbmQtc2Vjb25kLWxvbmdlci1hbmltIiwgMSwgImN1c3RvbS1ibGVuZC1zZWNvbmQtbG9uZ2Vy
LWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBu
b25lLCAxIDEsIHNlY29uZExvbmdlciBhcnJheSgxMCwgMTAsIDEwLCAxMCwgMTApKScsIDJdXTsK
LSAgICAgICAgcnVuQW5pbWF0aW9uVGVzdChleHBlY3RlZFZhbHVlcyk7Ci0gICAgPC9zY3JpcHQ+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tYmxlbmQt
ZnJvbS1ub25lLWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLWJs
ZW5kLXRvLW5vbmUtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20t
YmxlbmQtc2luZ2xlLWVsZW1lbnQtYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlk
PSJjdXN0b20tYmxlbmQtdHdvLWZsb2F0cy1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9ImJv
eCIgaWQ9ImN1c3RvbS1ibGVuZC1tdWx0aXBsZS1lbGVtZW50cy1ib3giPjwvZGl2PgotICAgIDxk
aXYgY2xhc3M9ImJveCIgaWQ9ImN1c3RvbS1ibGVuZC1maXJzdC1sb25nZXItYm94Ij48L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tYmxlbmQtc2Vjb25kLWxvbmdlci1ib3gi
PjwvZGl2PgotICAgIDxkaXYgaWQ9InJlc3VsdCI+Ci0gICAgPC9kaXY+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItYXJyYXktZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1hcnJheS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAyODNkMDYyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsMTYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAg
ICAgICAgPHRpdGxlPlRlc3RzIHRoZSBhcnJheSgpIGZ1bmN0aW9uIGluIGN1c3RvbSBmaWx0ZXJz
PC90aXRsZT4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewot
ICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwot
ICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBv
bmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2
PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4LWV4
cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItYXJyYXktdW5pZm9ybS1pbmRpcmVjdC1pbmRleC1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAzYTZiZWUyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWlu
ZGV4LWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNyArMCwwIEBACi08IWRvY3R5
cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgdmVydGV4IHNo
YWRlcnMgY2FuIGluZGlyZWN0bHkgaW5kZXggdW5pZm9ybSBhcnJheXMuPC90aXRsZT4KLSAgICA8
IS0tIFRoaXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4gSWYgdGhlIHRlc3Qg
cGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIGdyZWVuIHNxdWFyZS4gLS0+Ci0gICAgPHN0eWxlPgot
ICAgICAgICBkaXYgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBmMDsKLSAgICAg
ICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAg
IH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdj48L2Rpdj4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4Lmh0bWwgYi9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYXJyYXktdW5pZm9ybS1pbmRp
cmVjdC1pbmRleC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhOWI2NzhjLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwz
NyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRl
c3RzIHRoYXQgdmVydGV4IHNoYWRlcnMgY2FuIGluZGlyZWN0bHkgaW5kZXggdW5pZm9ybSBhcnJh
eXMuPC90aXRsZT4KLSAgICA8IS0tIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUg
YSBncmVlbiBzcXVhcmUuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJl
bmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwg
IjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAg
ICAgICAgfQotCi0gICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAg
ICAgIC8vIFJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIHNoYWRlcnMgZG93bmxvYWQuCi0gICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxl
PgotICAgICAgICBkaXYgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwMDsKLSAg
ICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAg
ICAgIH0KLSAgICAgICAgLmFycmF5LWluZGlyZWN0LWluZGV4IHsKLSAgICAgICAgICAgIC8qIFRo
aXMgY3VzdG9tIGZpbHRlciB3aWxsIHR1cm4gdGhlIGVsZW1lbnQncyBjb2xvciBmcm9tIHJlZCB0
byBncmVlbiBpZiBpdCBleGVjdXRlcy4gKi8KLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvYXJyYXktdW5pZm9ybS1pbmRpcmVjdC1pbmRleC52cycp
IAotICAgICAgICAgICAgICAgIG1peCh1cmwoJy4uL3Jlc291cmNlcy92YXJ5aW5nLW1peC1jb2xv
ci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIAotICAgICAgICAgICAgICAgIHZhbHVlcyBhcnJh
eSgwLjAsIDEuMCksIHJlZEluZGV4IDAsIGdyZWVuSW5kZXggMSwgYmx1ZUluZGV4IDAsIGFscGhh
SW5kZXggMSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkgb25sb2Fk
PSJydW5UZXN0KCkiPgotICAgIDxkaXYgY2xhc3M9ImFycmF5LWluZGlyZWN0LWluZGV4Ij48L2Rp
dj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1hcnJheS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDY4NjAxOGMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWFycmF5Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNSAr
MCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0
bGU+VGVzdHMgdGhlIGFycmF5KCkgZnVuY3Rpb24gaW4gY3VzdG9tIGZpbHRlcnM8L3RpdGxlPgot
ICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0g
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAg
ICAgICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAg
IHsKLSAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhl
IGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUo
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAg
ICAgICAgICAgICNmaWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiByZWQ7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShu
b25lIHVybCgnLi4vcmVzb3VyY2VzL2ZyYWdtZW50LWNvbG9yLmZzJyksIGNvbG9yQXJyYXkgYXJy
YXkoMC4wLCAxLjAsIDAuMCwgMS4wKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+
Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPCEt
LQotICAgICAgICAgICAgQSAxMDB4MTAwcHggcmVkIGRpdiBpcyBjb2xvdXJlZCBncmVlbiBieSBm
cmFnbWVudC1jb2xvci5mcywgYSBmcmFnbWVudCBzaGFkZXIuCi0gICAgICAgICAgICBGYWlscyBp
ZiB0aGUgZGl2IHN0YXlzIHJlZC4KLSAgICAgICAgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRl
cnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1mcmFjdGlvbmFs
LWRlc3RpbmF0aW9uLWFscGhhLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYmxlbmQtZnJhY3Rpb25hbC1kZXN0aW5hdGlvbi1hbHBo
YS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0YmRlYjY1Li4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci1ibGVuZC1mcmFjdGlvbmFsLWRlc3RpbmF0aW9uLWFscGhhLWV4cGVjdGVkLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwxOCArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9ImVu
Ij4KLTxoZWFkPgotICAgIDx0aXRsZT5CbGVuZGluZyB3aXRoIGZyYWN0aW9uYWwgYWxwaGEgb24g
ZGVzdGluYXRpb248L3RpdGxlPgotICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAg
ICNkZXN0aW5hdGlvbiB7Ci0gICAgICAgICAgICAvKiBUaGlzIGlzIHRoZSBFWEFDVCBjb2xvciB2
YWx1ZSB3ZSBleHBlY3QuIFNvbWUgcGxhdGZvcm1zIG1heSBoYXZlIHNsaWdodCBkaWZmZXJlbnQK
LSAgICAgICAgICAgICAgIGNvbG9yIHZhbHVlLiAqLwotICAgICAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogcmdiKDE3OSwgMTY2LCAxMjgpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAg
ICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+
Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbiI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItYmxlbmQtZnJhY3Rpb25hbC1kZXN0aW5hdGlvbi1hbHBoYS5odG1sIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLWZyYWN0aW9uYWwtZGVz
dGluYXRpb24tYWxwaGEuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTJiMjRm
MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItYmxlbmQtZnJhY3Rpb25hbC1kZXN0aW5hdGlvbi1hbHBoYS5odG1sCisrKyAvZGV2L251
bGwKQEAgLTEsMTA0ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgot
PGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgYmxlbmRpbmcgd2l0aCBhIHRyYW5zbHVjZW50
IGVsZW1lbnQgdGV4dHVyZSBjb21wdXRlcyB0aGUgY29ycmVjdCBjb2xvciB2YWx1ZS48L3RpdGxl
PgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0
b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgfQot
ICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNkZXN0
aW5hdGlvbiB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMCUsIDAlLCAw
JSwgMC41KTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDog
MTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG11bHRpcGx5IHNvdXJjZS1hdG9wKSwgbWl4X2Nv
bG9yIDAuMCAxLjAgMC4wIDAuNik7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgot
PGJvZHk+Ci08IS0tCi0gICAgVGhlIHJlc3VsdCBvZiB0aGUgYmxlbmRpbmcgZnVuY3Rpb24gaXMg
YXZlcmFnZWQgd2l0aCB0aGUgZGVzdGluYXRpb24gY29sb3IgdXNpbmcgdGhlIGRlc3RpbmF0aW9u
J3MgYWxwaGEgYXMgdGhlIGRlc3RpbmF0aW9uJ3Mgd2VpZ2h0LgotCi0gICAgVGhlIHJlc3VsdGlu
ZyBjb2xvciB3aWxsIGJlOgotICAgICAgICBDciA9ICgxIC0gYWIpIHggQ3MgKyBhYiB4IEIoQ2Is
IENzKQotCi0gICAgV2l0aDoKLSAgICAgICAgQ3I6IHRoZSByZXN1bHQgY29sb3IKLSAgICAgICAg
QjogIHRoZSBibGVuZGluZyBmdW5jdGlvbgotICAgICAgICBDczogdGhlIHNvdXJjZSBjb2xvciAo
YWthICJtaXggY29sb3IiLCAiY3NzX01peENvbG9yIikKLSAgICAgICAgYXM6IHRoZSBzb3VyY2Ug
YWxwaGEgKHVzZWQgZHVyaW5nIGNvbXBvc2l0aW5nKQotICAgICAgICBDYjogdGhlIGJhY2tkcm9w
IGNvbG9yICgib3JpZ2luYWwgRE9NIGVsZW1lbnQgY29sb3IiKQotICAgICAgICBhYjogdGhlIGJh
Y2tkcm9wIGFscGhhCi0KLSAgICBJbiB0aGlzIGNhc2U6Ci0gICAgICAgIENzID0gKDAuMCwgMS4w
LCAwLjApCi0gICAgICAgIENiID0gKDEuMCwgMC4wLCAwLjApCi0gICAgICAgIGFiID0gMC41Ci0K
LSAgICAgICAgQmVjYXVzZSB3ZSdyZSB1c2luZyB0aGUgIm11bHRpcGx5IiBibGVuZCBvcGVyYXRv
cjoKLSAgICAgICAgQihDYiwgQ3MpID0gQ2IgKiBDcwotICAgICAgICBCKENiLCBDcykgPSAoMS4w
LCAwLjAsIDAuMCkgKiAoMC4wLCAxLjAsIDAuMCkKLSAgICAgICAgQihDYiwgQ3MpID0gKDAuMCwg
MC4wLCAwLjApCi0KLSAgICAgICAgQ3IgPSAoMSAtIDAuNSkgKiAoMC4wLCAxLjAsIDAuMCkgKyAw
LjUgKiAoMC4wLCAwLjAsIDAuMCkKLSAgICAgICAgQ3IgPSAwLjUgKiAoMC4wLCAxLjAsIDAuMCkg
KyAwLjAKLSAgICAgICAgQ3IgPSAoMC4wLCAwLjUsIDAuMCkKLQotICAgIEF0IHRoaXMgcG9pbnQs
IHdlIGNvbXBvc2l0ZSB0aGUgdGV4dHVyZSB3aXRoIHRoZSBQb3J0ZXItRHVmZiBTb3VyY2VBdG9w
IGNvbXBvc2l0ZSBvcGVyYXRvci4KLSAgICBUaGUgZ2VuZXJhbCBjb21wb3NpdGluZyBmb3JtdWxh
IGlzOgotCi0gICAgICAgIGNvID0gYXMgKiBGYSAqIENzICsgYWIgKiBGYiAqIENiCi0KLSAgICAg
ICAgYW8gPSBhcyAqIDEgKyBhYiAqICgxIC0gYXMpCi0gICAgICAgIENvID0gY28gLyBhbwotCi0g
ICAgV2l0aCB0aGUgU291cmNlQXRvcCBjb21wb3NpdGUgb3BlcmF0b3I6Ci0KLSAgICAgICAgRmEg
PSBhYgotICAgICAgICBGYiA9IDEgLSBhcwotCi0gICAgSW4gdGhpcyBjYXNlLCBDcyA9IENyLCB3
aGVyZSBDciBpcyB0aGUgcmVzdWx0IG9mIHRoZSBibGVuZGluZyBmdW5jdGlvbi4KLSAgICBTdWJz
dGl0dXRpbmcgRmEgYW5kIEZiLCB3ZSBnZXQgZm9sbG93aW5nIHNwZWNpZmljIGZvcm11bGE6Ci0K
LSAgICAgICAgY28gPSBhcyAqIENzICogYWIgKyBhYiAqIENiICogKDEgLSBhcykKLQotICAgICAg
ICBhbyA9IGFzICogYWIgKyBhYiAqICgxIC0gYXMpCi0gICAgICAgIENvID0gY28gLyBhbwotCi0g
ICAgU3Vic3RpdHV0aW5nIENyIGZvciBDczoKLSAgICAgICAgY28gPSBhcyAqIENyICogYWIgKyBh
YiAqIENiICogKDEgLSBhcykKLQotICAgIEZyb20gdGhpcyB3ZSBnZXQ6Ci0gICAgICAgIGNvID0g
MC42ICogKDAuMCwgMC41LCAwLjApICogMC41ICsgMC41ICogKDEuMCwgMC4wLCAwLjApICogKDEg
LSAwLjYpCi0gICAgICAgIGNvID0gMC4zICogKDAuMCwgMC41LCAwLjApICsgMC4yICogKDEuMCwg
MC4wLCAwLjApCi0gICAgICAgIGNvID0gKDAuMCwgMC4xNSwgMC4wKSArICgwLjIsIDAuMCwgMC4w
KQotICAgICAgICBjbyA9ICgwLjIsIDAuMTUsIDAuMCkKLQotICAgIFRoZSByZXN1bHRpbmcgYWxw
aGEgaXM6Ci0gICAgICAgIGFvID0gMC42ICogMC41ICsgMC41ICogKDEgLSAwLjYpCi0gICAgICAg
IGFvID0gMC4zICsgMC4yCi0gICAgICAgIGFvID0gMC41Ci0KLSAgICBUaGUgZmluYWwgcmVzdWx0
IGlzIHRoZW46Ci0gICAgICAgIENvID0gKDAuMiwgMC4xNSwgMC4wKSAvIDAuNQotICAgICAgICBD
byA9ICgwLjQsIDAuMywgMC4wKQotCi0KLSAgICBBdCB0aGlzIHBvaW50IHRoZSB0ZXh0dXJlIGhh
cyB0byBiZSBjb21wb3NpdGVkIHdpdGggdGhlIHVuZGVybHlpbmcgd2hpdGUgZnJvbSB0aGUgcGFn
ZSB0byBnZXQgdGhlIGZpbmFsCi0gICAgcmVzdWx0cyBpbiBsaWdodCBvZiB0aGUgYWxwaGEgKGFv
KSB2YWx1ZToKLQotICAgICAgICBFeHBlY3RlZCBjb2xvciBvbiBzY3JlZW4gPSBDbyAqIGFvICsg
KDEuMCAtIGFvKSAqIFdoaXRlCi0KLSAgICAgICAgUiA9IDAuNCAqIDAuNSArICgxLjAgLSAwLjUp
ICogMS4wID0gMC4yICsgMC41ID0gMC43Ci0gICAgICAgIEcgPSAwLjMgKiAwLjUgKyAoMS4wIC0g
MC41KSAqIDEuMCA9IDAuMTUgKyAwLjUgPSAwLjY1Ci0gICAgICAgIEIgPSAwLjAgKiAwLjUgKyAo
MS4wIC0gMC41KSAqIDEuMCA9IDAgKyAwLjUgPSAwLjUKLQotICAgIFNvIHRoZSBleHBlY3RlZCAo
Y29ycmVjdCkgdmFsdWUgaXMgcmdiKDcwJSwgNjUlLCA1MCUpLCBtZWFuaW5nIHJnYigxNzksIDE2
NiwgMTI4KS4KLQotICAgIElNUE9SVEFOVDogdGhpcyBpcyB0aGUgZXhhY3QgZXhwZWN0ZWQgY29s
b3IuIFNvbWUgcGxhdGZvcm1zIG1heSBoYXZlIHNsaWdodCBjb2xvciBkaWZmZXJlbmNlcy4KLS0t
PgotICAgIDxkaXYgaWQ9ImRlc3RpbmF0aW9uIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1i
bGVuZC1tb2Rlcy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDY4MjQwM2QuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLWV4cGVjdGVkLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSwxMTQgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxo
ZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0ZXIgYmxlbmQgbW9kZXMgY29t
cHV0ZSBjb2xvciB2YWx1ZXMgY29ycmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLQotICAgICAgICBU
aGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRlc3QuCi0gICAgICAgIFRoZSB0ZXN0
IHBhc3NlcyBpZiBlYWNoIGhvcml6b250YWwgcGFpciBvZiBzcXVhcmVzIGFyZSBleGFjdGx5IHRo
ZSBzYW1lIGNvbG9yLgotICAgICAgICBUaGUgdGVzdCBmaWxlIGRlc2NyaWJlcyBob3cgdGhlIGNv
bG9yIHZhbHVlcyBpbiB0aGlzIHJlZmVyZW5jZSBmaWxlIGFyZSBjb21wdXRlZC4KLSAgICAtLT4K
LSAgICA8c3R5bGU+Ci0gICAgLnBhaXItb2Ytc3F1YXJlcyB7Ci0gICAgICAgIGNsZWFyOiBib3Ro
OwotICAgIH0KLSAgICAucGFpci1vZi1zcXVhcmVzID4gZGl2IHsKLSAgICAgICAgLyogU3F1YXJl
IHNpemUuICovCi0gICAgICAgIHdpZHRoOiAyMHB4OwotICAgICAgICBoZWlnaHQ6IDIwcHg7Ci0g
ICAgICAgIG1hcmdpbjogMnB4OwotICAgICAgICBmbG9hdDogbGVmdDsKLSAgICB9Ci0gICAgLyog
QmxlbmQgbW9kZXMgKi8KLSAgICAubm9ybWFsLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcmdiKDAlLCA2MCUsIDUwJSk7Ci0gICAgfQotICAgIC5tdWx0aXBseS1leHBlY3Rl
ZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwJSwgMTglLCAyNSUpOwotICAgIH0K
LSAgICAuc2NyZWVuLWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1
NSwgMTgzLCAxOTIpOwotICAgIH0KLSAgICAuZGFya2VuLWV4cGVjdGVkIHsKLSAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogcmdiKDAlLCAzMCUsIDUwJSk7Ci0gICAgfQotICAgIC5saWdodGVuLWV4
cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDYwJSwgNTAlKTsK
LSAgICB9Ci0gICAgLmRpZmZlcmVuY2UtZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2IoMjU1LCA3NywgMSk7Ci0gICAgfQotICAgIC5leGNsdXNpb24tZXhwZWN0ZWQgewot
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAxMzgsIDEyNyk7Ci0gICAgfQotICAg
IC5vdmVybGF5LWV4cGVjdGVkIHsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwg
OTEsIDEyOCk7Ci0gICAgfQotICAgIC5jb2xvci1kb2RnZS1leHBlY3RlZCB7Ci0gICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHJnYigyNTUsIDE5MCwgMjU1KTsKLSAgICB9Ci0gICAgLmNvbG9yLWJ1
cm4tZXhwZWN0ZWQgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAzMSwgOTYp
OwotICAgIH0KLSAgICAuaGFyZC1saWdodC1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigwJSwgNDQlLCA1MCUpOwotICAgIH0KLSAgICAuc29mdC1saWdodC1leHBlY3Rl
ZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDg5LCAxMjgpOwotICAgIH0K
LSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1z
cXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibm9ybWFsLWV4cGVjdGVkIj48L2Rpdj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0ibm9ybWFsLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAg
ICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJtdWx0
aXBseS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im11bHRpcGx5LWV4cGVj
dGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMi
PgotICAgICAgICA8ZGl2IGNsYXNzPSJzY3JlZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8
ZGl2IGNsYXNzPSJzY3JlZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYg
Y2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRhcmtlbi1leHBl
Y3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRhcmtlbi1leHBlY3RlZCI+PC9kaXY+
Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAg
PGRpdiBjbGFzcz0ibGlnaHRlbi1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9
ImxpZ2h0ZW4tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBh
aXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRpZmZlcmVuY2UtZXhwZWN0ZWQi
PjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJkaWZmZXJlbmNlLWV4cGVjdGVkIj48L2Rpdj4K
LSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8
ZGl2IGNsYXNzPSJleGNsdXNpb24tZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNz
PSJleGNsdXNpb24tZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9
InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9Im92ZXJsYXktZXhwZWN0ZWQi
PjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJvdmVybGF5LWV4cGVjdGVkIj48L2Rpdj4KLSAg
ICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJjb2xvci1kb2RnZS1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9
ImNvbG9yLWRvZGdlLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJjb2xvci1idXJuLWV4cGVj
dGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iY29sb3ItYnVybi1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iaGFyZC1saWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9ImhhcmQtbGlnaHQtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYg
Y2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNvZnQtbGlnaHQt
ZXhwZWN0ZWQiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJzb2Z0LWxpZ2h0LWV4cGVjdGVk
Ij48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8IS0tCi0gICAgICAgIElmIHlvdSBhZGQgbW9yZSBi
bGVuZCBtb2RlcyB0byB0aGlzIHBhZ2UsIGJlIGNhcmVmdWwgbm90IHRvIGV4Y2VlZCA2MDBweCBp
biAKLSAgICAgICAgaGVpZ2h0LCBzaW5jZSBEdW1wUmVuZGVyVHJlZSBjb21wYXJlcyA4MDB4NjAw
IHNuYXBzaG90cyBvZiB0aGlzIHBhZ2UuCi0gICAgLS0+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItYmxl
bmQtbW9kZXMuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1ibGVuZC1tb2Rlcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMmY0
MDk1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1ibGVuZC1tb2Rlcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzI3ICswLDAgQEAK
LTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBj
dXN0b20gZmlsdGVyIGJsZW5kIG1vZGVzIGNvbXB1dGUgY29sb3IgdmFsdWVzIGNvcnJlY3RseS48
L3RpdGxlPgotICAgIDwhLS0gVGhpcyB0ZXN0IHBhc3NlcyBpZiBlYWNoIGhvcml6b250YWwgcGFp
ciBvZiBzcXVhcmVzIGFyZSBleGFjdGx5IHRoZSBzYW1lIGNvbG9yLiAtLT4KLSAgICA8c2NyaXB0
PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxl
ZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVu
Y2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4K
LSAgICA8c3R5bGU+Ci0gICAgLnBhaXItb2Ytc3F1YXJlcyB7Ci0gICAgICAgIGNsZWFyOiBib3Ro
OwotICAgIH0KLSAgICAucGFpci1vZi1zcXVhcmVzID4gZGl2IHsKLSAgICAgICAgLyogU3F1YXJl
IHNpemUuICovCi0gICAgICAgIHdpZHRoOiAyMHB4OwotICAgICAgICBoZWlnaHQ6IDIwcHg7Ci0g
ICAgICAgIG1hcmdpbjogMnB4OwotICAgICAgICBmbG9hdDogbGVmdDsKLSAgICB9Ci0gICAgLmRl
c3RpbmF0aW9uIHsKLSAgICAgICAgLyogRGVzdGluYXRpb24gY29sb3IgKi8KLSAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDMwJSwgNTAlKTsKLSAgICB9Ci0gICAgLyogQmxlbmQg
bW9kZXMgKi8KLSAgICAubm9ybWFsIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShu
b25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBub3JtYWwgc291cmNlLWF0
b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLyoKLSAgICAgICAg
VGhlIGVxdWF0aW9ucyBiZWxvdyB1c2UgdGhlIHN5bWJvbHMgYW5kIGVxdWF0aW9ucyBkZWZpbmVk
IGluIHRoZSBDU1MgQmxlbmRpbmcgYW5kIENvbXBvc2l0aW5nIHNwZWMsIHdoZXJlOgotICAgICAg
ICAgICAgQ28gPSBvdXRwdXQgY29sb3IKLSAgICAgICAgICAgIENzID0gc291cmNlIGNvbG9yIChh
a2EgIm1peCBjb2xvciIsICJjc3NfTWl4Q29sb3IiKQotICAgICAgICAgICAgQ2IgPSBkZXN0aW5h
dGlvbiBjb2xvciAoYWthICJiYWNrZHJvcCBjb2xvciIsICJvcmlnaW5hbCBET00gZWxlbWVudCBj
b2xvciIpCi0KLSAgICAgICAgaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlw
L2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwjZ2VuZXJhbGZvcm11bGEKLSAgICAqLwotICAgIC5ub3Jt
YWwtZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgTm9ybWFsOgotCi0gICAgICAg
ICAgICBDbyA9IENzCi0KLSAgICAgICAgICAgIHIgPSAwLjAKLSAgICAgICAgICAgIGcgPSAwLjYK
LSAgICAgICAgICAgIGIgPSAwLjUKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogcmdiKDAlLCA2MCUsIDUwJSk7Ci0gICAgfQotICAgIC5tdWx0aXBseSB7Ci0gICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9y
LmZzJykgbXVsdGlwbHkgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsK
LSAgICB9Ci0gICAgLm11bHRpcGx5LWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAg
IE11bHRpcGx5OgotCi0gICAgICAgICAgICBDbyA9IENiICogQ3MKLQotICAgICAgICAgICAgciA9
IDEuMCAqIDAuMCA9IDAuMAotICAgICAgICAgICAgZyA9IDAuMyAqIDAuNiA9IDAuMTgKLSAgICAg
ICAgICAgIGIgPSAwLjUgKiAwLjUgPSAwLjI1Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYigwJSwgMTglLCAyNSUpOwotICAgIH0KLSAgICAuc2NyZWVuIHsKLSAgICAg
ICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgt
Y29sb3IuZnMnKSBzY3JlZW4gc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4w
KTsKLSAgICB9Ci0gICAgLnNjcmVlbi1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAg
ICBTY3JlZW46Ci0KLSAgICAgICAgICAgIENvID0gQ2IgKyBDcyAtIENiICogQ3MKLQotICAgICAg
ICAgICAgciA9IDEuMCArIDAuMCAtIDEuMCAqIDAuMCA9IDEuMAotICAgICAgICAgICAgZyA9IDAu
MyArIDAuNiAtIDAuMyAqIDAuNiA9IDAuNzIKLSAgICAgICAgICAgIGIgPSAwLjUgKyAwLjUgLSAw
LjUgKiAwLjUgPSAwLjc1Ci0KLSAgICAgICAgICAgIFRoZSBlcnJvciBpbiB0aGUgY29sb3IgY2Fs
Y3VsYXRpb24gcmVxdWlyZXMgdXMgdG8gdXNlIHRoZSA4LWJpdCB2YWx1ZXMgZm9yOgotICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUsIDcyJSwgNzUlKTsKLSAgICAgICAgKi8K
LSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMTgzLCAxOTIpOwotICAgIH0KLSAg
ICAuZGFya2VuIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwo
Jy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBkYXJrZW4gc291cmNlLWF0b3ApLCBtaXhfY29s
b3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmRhcmtlbi1leHBlY3RlZCB7Ci0gICAg
ICAgIC8qCi0gICAgICAgICAgICBEYXJrZW46Ci0KLSAgICAgICAgICAgIENvID0gbWluKENiLCBD
cykKLQotICAgICAgICAgICAgciA9IG1pbigxLjAsIDAuMCkgPSAwLjAKLSAgICAgICAgICAgIGcg
PSBtaW4oMC4zLCAwLjYpID0gMC4zCi0gICAgICAgICAgICBiID0gbWluKDAuNSwgMC41KSA9IDAu
NQotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDMwJSwgNTAl
KTsKLSAgICB9Ci0gICAgLmxpZ2h0ZW4gewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9t
KG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGxpZ2h0ZW4gc291cmNl
LWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAgLmxpZ2h0ZW4t
ZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgTGlnaHRlbjoKLQotICAgICAgICAg
ICAgQ28gPSBtYXgoQ2IsIENzKQotCi0gICAgICAgICAgICByID0gbWF4KDEuMCwgMC4wKSA9IDEu
MAotICAgICAgICAgICAgZyA9IG1heCgwLjMsIDAuNikgPSAwLjYKLSAgICAgICAgICAgIGIgPSBt
YXgoMC41LCAwLjUpID0gMC41Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6
IHJnYigxMDAlLCA2MCUsIDUwJSk7Ci0gICAgfQotICAgIC5kaWZmZXJlbmNlIHsKLSAgICAgICAg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29s
b3IuZnMnKSBkaWZmZXJlbmNlIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEu
MCk7Ci0gICAgfQotICAgIC5kaWZmZXJlbmNlLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAg
ICAgICAgIERpZmZlcmVuY2U6Ci0KLSAgICAgICAgICAgIENvID0gYWJzKENiIC0gQ3MpCi0KLSAg
ICAgICAgICAgIHIgPSBhYnMoMS4wIC0gMC4wKSA9IDEuMAotICAgICAgICAgICAgZyA9IGFicygw
LjMgLSAwLjYpID0gMC4zCi0gICAgICAgICAgICBiID0gYWJzKDAuNSAtIDAuNSkgPSAwLjAKLQot
ICAgICAgICAgICAgVGhlIGVycm9yIGluIHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1
cyB0byB1c2UgdGhlIDgtYml0IHZhbHVlcyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2IoMTAwJSwgMzAlLCAwJSk7Ci0gICAgICAgICovCi0gICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigyNTUsIDc3LCAxKTsKLSAgICB9Ci0gICAgLmV4Y2x1c2lvbiB7Ci0gICAgICAg
IC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNv
bG9yLmZzJykgZXhjbHVzaW9uIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEu
MCk7Ci0gICAgfQotICAgIC5leGNsdXNpb24tZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAg
ICAgICAgRXhjbHVzaW9uOgotCi0gICAgICAgICAgICBDbyA9IENiICsgQ3MgLSAyICogQ2IgKiBD
cwotCi0gICAgICAgICAgICByID0gMS4wICsgMC4wIC0gMi4wICogMS4wICogMC4wID0gMS4wCi0g
ICAgICAgICAgICBnID0gMC4zICsgMC42IC0gMi4wICogMC4zICogMC42ID0gMC41NAotICAgICAg
ICAgICAgYiA9IDAuNSArIDAuNSAtIDIuMCAqIDAuNSAqIDAuNSA9IDAuNQotCi0gICAgICAgICAg
ICBUaGUgZXJyb3IgaW4gdGhlIGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0
aGUgOC1iaXQgdmFsdWVzIGZvcjoKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigx
MDAlLCA1NCUsIDUwJSk7IAotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
Z2IoMjU1LCAxMzgsIDEyNyk7Ci0gICAgfQotICAgIC5vdmVybGF5IHsKLSAgICAgICAgLXdlYmtp
dC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMn
KSBvdmVybGF5IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAg
fQotICAgIC5vdmVybGF5LWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIE92ZXJs
YXk6Ci0KLSAgICAgICAgICAgIENvID0gSGFyZExpZ2h0KENzLCBDYikKLSAgICAgICAgICAgICAg
ID0gaWYoQ2IgPD0gMC41KQotICAgICAgICAgICAgICAgICAgICAgTXVsdGlwbHkoQ3MsIDIgKiBD
YikKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgU2NyZWVuKENz
LCAyICogQ2IgLSAxKQotICAgICAgICAgICAgICAgPSBpZihDYiA8PSAwLjUpCi0gICAgICAgICAg
ICAgICAgICAgICBDcyAqICgyICogQ2IpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAg
ICAgICAgICAgICAgIENzICsgKDIgKiBDYiAtIDEpIC0gKENzICogKDIgKiBDYiAtIDEpKQotCi0g
ICAgICAgICAgICByID0gMCArICgyICogMSAtIDEpIC0gKDAgKiAoMiAqIDEgLSAxKSkgPSAxCi0g
ICAgICAgICAgICBnID0gMC42ICogKDIgKiAwLjMpID0gMC4zNgotICAgICAgICAgICAgYiA9IDAu
NSAqICgyICogMC41KSA9IDAuNQotCi0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhlIGNvbG9y
IGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoKLSAg
ICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDAlLCAzNiUsIDUwJSk7Ci0gICAgICAg
ICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDkxLCAxMjgpOwotICAgIH0K
LSAgICAuY29sb3ItZG9kZ2UgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGNvbG9yLWRvZGdlIHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMCAwLjYgMC41IDEuMCk7Ci0gICAgfQotICAgIC5jb2xvci1kb2Rn
ZS1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBDb2xvckRvZGdlOgotCi0gICAg
ICAgICAgICBDbyA9IGlmKENzIDwgMSkKLSAgICAgICAgICAgICAgICAgICAgIG1pbigxLCBDYiAv
ICgxIC0gQ3MpKQotICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAx
Ci0KLSAgICAgICAgICAgIHIgPSBtaW4oMSwgMSAvICgxIC0gMCkpID0gMQotICAgICAgICAgICAg
ZyA9IG1pbigxLCAwLjMgLyAoMSAtIDAuNikpID0gMC43NQotICAgICAgICAgICAgYiA9IG1pbigx
LCAwLjUgLyAoMSAtIDAuNSkpID0gMQotCi0gICAgICAgICAgICBUaGUgZXJyb3IgaW4gdGhlIGNv
bG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoK
LSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDAlLCA3NSUsIDEwMCUpOwotICAg
ICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAxOTAsIDI1NSk7Ci0g
ICAgfQotICAgIC5jb2xvci1idXJuIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShu
b25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBjb2xvci1idXJuIHNvdXJj
ZS1hdG9wKSwgbWl4X2NvbG9yIDAuOCAwLjggMC44IDEuMCk7Ci0gICAgfQotICAgIC5jb2xvci1i
dXJuLWV4cGVjdGVkIHsKLSAgICAgICAgLyoKLSAgICAgICAgICAgIENvbG9yQnVybjoKLQotICAg
ICAgICAgICAgQ28gPSBpZihDcyA+IDApCi0gICAgICAgICAgICAgICAgICAgICAxIC0gbWluKDEs
ICgxIC0gQ2IpIC8gQ3MpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAg
ICAgIDAKLQotICAgICAgICAgICAgIHIgPSAxIC0gbWluKDEsICgxIC0gMSkgLyAwLjgpID0gMQot
ICAgICAgICAgICAgIGcgPSAxIC0gbWluKDEsICgxIC0gMC4zKSAvIDAuOCkgPSAwLjEyNQotICAg
ICAgICAgICAgIGIgPSAxIC0gbWluKDEsICgxIC0gMC41KSAvIDAuOCkgPSAwLjM3NQotCi0gICAg
ICAgICAgICBUaGUgZXJyb3IgaW4gdGhlIGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRv
IHVzZSB0aGUgOC1iaXQgdmFsdWVzIGZvcjoKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6
IHJnYigxMDAlLCAxMi41JSwgMzcuNSUpOwotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5k
LWNvbG9yOiByZ2IoMjU1LCAzMSwgOTYpOwotICAgIH0KLSAgICAuaGFyZC1saWdodCB7Ci0gICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4
LWNvbG9yLmZzJykgaGFyZC1saWdodCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC42IDAu
NSAxLjApOwotICAgIH0KLSAgICAuaGFyZC1saWdodC1leHBlY3RlZCB7Ci0gICAgICAgIC8qCi0g
ICAgICAgICAgICBIYXJkTGlnaHQ6Ci0KLSAgICAgICAgICAgIENvID0gaWYoQ3MgPD0gMC41KQot
ICAgICAgICAgICAgICAgICAgICAgTXVsdGlwbHkoQ2IsIDIgKiBDcykKLSAgICAgICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgU2NyZWVuKENiLCAyICogQ3MgLTEpCi0gICAg
ICAgICAgICAgICA9IGlmKENzIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIENiICogKDIg
KiBDcykKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgQ2IgKyAo
MiAqIENzIC0gMSkgLSAoQ2IgKiAoMiAqIENzIC0gMSkpCi0KLSAgICAgICAgICAgIHIgPSAxICog
KDIgKiAwKSA9IDAKLSAgICAgICAgICAgIGcgPSAwLjMgKyAoMiAqIDAuNiAtIDEpIC0gKDAuMyAq
ICgyICogMC42IC0gMSkpID0gMC40NAotICAgICAgICAgICAgYiA9IDAuNSAqICgyICogMC41KSA9
IDAuNQotICAgICAgICAqLwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDQ0JSwg
NTAlKTsKLSAgICB9Ci0gICAgLnNvZnQtbGlnaHQgewotICAgICAgICAtd2Via2l0LWZpbHRlcjog
Y3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIHNvZnQtbGln
aHQgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4wIDAuNiAwLjUgMS4wKTsKLSAgICB9Ci0gICAg
LnNvZnQtbGlnaHQtZXhwZWN0ZWQgewotICAgICAgICAvKgotICAgICAgICAgICAgU29mdExpZ2h0
OgotCi0gICAgICAgICAgICBDbyA9IGlmKENzIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAg
IENiIC0gKDEgLSAyICogQ3MpICogQ2IgKiAoMSAtIENiKQotICAgICAgICAgICAgICAgICBlbHNl
Ci0gICAgICAgICAgICAgICAgICAgICBDYiArICgyICogQ3MgLSAxKSAqIChEKENiKSAtIENiKQot
Ci0gICAgICAgICAgICB3aXRoCi0KLSAgICAgICAgICAgIEQoQ2IpID0gaWYoQ2IgPD0gMC4yNSkK
LSAgICAgICAgICAgICAgICAgICAgICAgICgxNiAqIENiIC0gMTIpICogQ2IgKyA0KSAqIENiCi0g
ICAgICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgIHNxcnQoQ2Ip
Ci0KLSAgICAgICAgICAgIEQuciA9IHNxcnQoMSkgPSAxCi0gICAgICAgICAgICBELmcgPSBzcXJ0
KDAuMykgPSAwLjU0NzcyMjU1NzUwNTE2NgotICAgICAgICAgICAgRC5iID0gc3FydCgwLjUpID0g
MC43MDcxMDY3ODExODY1NDgKLSAgICAgICAgICAgIHIgPSAxIC0gKDEgLSAyICogMCkgKiAxICog
KDEgLSAxKSA9IDEKLSAgICAgICAgICAgIGcgPSAwLjMgKyAoMiAqIDAuNiAtIDEpICogKEQuZyAt
IDAuMykgPSAwLjM0OTU0NDUxMTUwMTAzMwotICAgICAgICAgICAgYiA9IDAuNSAtICgxIC0gMiAq
IDAuNSkgKiAwLjUgKiAoMSAtIDAuNSkgPSAwLjUKLQotICAgICAgICAgICAgVGhlIGVycm9yIGlu
IHRoZSBjb2xvciBjYWxjdWxhdGlvbiByZXF1aXJlcyB1cyB0byB1c2UgdGhlIDgtYml0IHZhbHVl
cyBmb3I6Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAwJSwgMzQuOTU0NDUx
JSwgNTAlKTsKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwg
ODksIDEyOCk7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2
IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlv
biBub3JtYWwiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJub3JtYWwtZXhwZWN0ZWQiPjwv
ZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIG11bHRpcGx5Ij48L2Rpdj4KLSAgICAgICAgPGRp
diBjbGFzcz0ibXVsdGlwbHktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYg
Y2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9u
IHNjcmVlbiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNjcmVlbi1leHBlY3RlZCI+PC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZGFya2VuIj48L2Rpdj4KLSAgICAgICAgPGRpdiBj
bGFzcz0iZGFya2VuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBsaWdo
dGVuIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ibGlnaHRlbi1leHBlY3RlZCI+PC9kaXY+
Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAg
PGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZGlmZmVyZW5jZSI+PC9kaXY+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9ImRpZmZlcmVuY2UtZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYg
Y2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9u
IGV4Y2x1c2lvbiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImV4Y2x1c2lvbi1leHBlY3Rl
ZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gb3ZlcmxheSI+PC9kaXY+Ci0gICAgICAg
IDxkaXYgY2xhc3M9Im92ZXJsYXktZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxk
aXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0
aW9uIGNvbG9yLWRvZGdlIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0iY29sb3ItZG9kZ2Ut
ZXhwZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotICAgIDxkaXYgY2xhc3M9InBhaXItb2Ytc3F1
YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIGNvbG9yLWJ1cm4iPjwvZGl2
PgotICAgICAgICA8ZGl2IGNsYXNzPSJjb2xvci1idXJuLWV4cGVjdGVkIj48L2Rpdj4KLSAgICA8
L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJwYWlyLW9mLXNxdWFyZXMiPgotICAgICAgICA8ZGl2IGNs
YXNzPSJkZXN0aW5hdGlvbiBoYXJkLWxpZ2h0Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0i
aGFyZC1saWdodC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0i
cGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gc29mdC1s
aWdodCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNvZnQtbGlnaHQtZXhwZWN0ZWQiPjwv
ZGl2PgotICAgIDwvZGl2PgotICAgIDwhLS0KLSAgICAgICAgSWYgeW91IGFkZCBtb3JlIGJsZW5k
IG1vZGVzIHRvIHRoaXMgcGFnZSwgYmUgY2FyZWZ1bCBub3QgdG8gZXhjZWVkIDYwMHB4IGluIAot
ICAgICAgICBoZWlnaHQsIHNpbmNlIER1bXBSZW5kZXJUcmVlIGNvbXBhcmVzIDgwMHg2MDAgc25h
cHNob3RzIG9mIHRoaXMgcGFnZS4KLSAgICAtLT4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jaGFuZ2Ut
YmxlbmQtbW9kZS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJjZWU1MTUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLWV4cGVj
dGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyMCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4K
LTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgYSBjdXN0b20gZmlsdGVyIGRl
dGVjdHMgYSBibGVuZCBtb2RlIGNoYW5nZSBhbmQgcGFpbnRzIHdpdGggdGhlIG5ldyBibGVuZCBt
b2RlLjwvdGl0bGU+Ci0gICAgPCEtLSAKLSAgICAgICAgVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZp
bGUgZm9yIHRoZSB0ZXN0LgotICAgICAgICBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSB3aWxsIHNl
ZSBhIGdyZWVuIHNxdWFyZS4KLSAgICAtLT4KLSAgICA8c3R5bGU+Ci0gICAgZGl2IHsKLSAgICAg
ICAgd2lkdGg6IDEwMHB4OwotICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4K
LTxib2R5PgotICAgIDxkaXY+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2hhbmdlLWJsZW5k
LW1vZGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci1jaGFuZ2UtYmxlbmQtbW9kZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAx
YjNhNjVlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1jaGFuZ2UtYmxlbmQtbW9kZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTQg
KzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0
cyB0aGF0IGEgY3VzdG9tIGZpbHRlciBkZXRlY3RzIGEgYmxlbmQgbW9kZSBjaGFuZ2UgYW5kIHBh
aW50cyB3aXRoIHRoZSBuZXcgYmxlbmQgbW9kZS48L3RpdGxlPgotICAgIDwhLS0KLSAgICAgICAg
SWYgdGhlIHRlc3QgcGFzc2VzLCB5b3Ugd2lsbCBzZWUgYSBncmVlbiBzcXVhcmUuCi0gICAgICAg
IFRoaXMgdGVzdCBjYW4gcnVuIGluIERSVCBvciBtYW51YWxseS4KLSAgICAtLT4KLSAgICA8c2Ny
aXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5h
YmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5jdGlvbiBy
dW5UZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgdmFyIGZpbHRlclRhcmdldCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJmaWx0ZXJUYXJnZXQiKTsKLQotICAgICAgICAgICAgLy8gSW5p
dGlhbGx5LCBhcHBseSBhIGN1c3RvbSBmaWx0ZXIgb24gdGhlIGRpdiB1c2luZyBibGVuZCBtb2Rl
IG11bHRpcGx5LgotICAgICAgICAgICAgLy8gVGhlIHJlc3VsdCBzaG91bGQgYmUgYSBibGFjayBz
cXVhcmUgKHJlZCBiYWNrZ3JvdW5kICogZ3JlZW4gbWl4IGNvbG9yID0gYmxhY2spLgotICAgICAg
ICAgICAgZmlsdGVyVGFyZ2V0LmNsYXNzTmFtZSA9ICJtdWx0aXBseSI7Ci0KLSAgICAgICAgICAg
IC8vIFRyaWdnZXIgYSBzdHlsZSByZXNvbHV0aW9uIHdpdGggYmxlbmQgbW9kZSBtdWx0aXBseS4K
LSAgICAgICAgICAgIC8vIFRoaXMgaXMgcmVxdWlyZWQgdG8gcmVwcm9kdWNlIHRoaXMgdGVzdCdz
IGFzc29jaWF0ZWQgYnVnLgotICAgICAgICAgICAgZmlsdGVyVGFyZ2V0LmNsaWVudFdpZHRoOwot
Ci0gICAgICAgICAgICAvLyBDaGFuZ2UgdGhlIGJsZW5kIG1vZGUgdG8gbm9ybWFsLCBhbmQga2Vl
cCBhbGwgb3RoZXIgZmlsdGVyIHBhcmFtZXRlcnMgaWRlbnRpY2FsLgotICAgICAgICAgICAgLy8g
VGhlIHJlc3VsdCBzaG91bGQgYmUgYSBncmVlbiBzcXVhcmUgaWYgdGhlIGJsZW5kIG1vZGUgY2hh
bmdlZCBjb3JyZWN0bHkuICAgICAgICAgICAgCi0gICAgICAgICAgICBmaWx0ZXJUYXJnZXQuY2xh
c3NOYW1lID0gIm5vcm1hbCI7Ci0KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
LSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAg
IH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgI2ZpbHRlclRhcmdldCB7Ci0gICAg
ICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmVkOwotICAgIH0KLSAgICAubXVsdGlwbHkgewotICAgICAgICAtd2Via2l0
LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycp
IG11bHRpcGx5IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAgMSAwIDEpOwotICAgIH0KLSAgICAu
bm9ybWFsIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4u
L3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBtaXhfY29sb3Ig
MCAxIDAgMSk7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L2Zhc3QvcmVwYWludC9yZXNvdXJjZXMvcmVwYWludC5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgPGRpdiBpZD0iZmlsdGVyVGFyZ2V0Ij48L2Rp
dj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LWV4cGVjdGVkLmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAt
Y3NzLWNvbG9yLW1hdHJpeC1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBmNjZiNGUxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LWV4cGVjdGVkLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSwxOCArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9
ImVuIj4KLTxoZWFkPgotICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4KLSAgICA8dGl0bGU+VGVz
dHMgdGhhdCBjc3NfY29sb3JNYXRyaXggbXVsdGlwbGljYXRpb24gcmVzdWx0IGlzIGNsYW1wZWQg
dG8gMTwvdGl0bGU+Ci0gICAgPHN0eWxlPgotICAgICAgICAjbG9uZWx5ZGl2IHsKLSAgICAgICAg
ICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAg
ICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYig1
MCUsIDUwJSwgNTAlKTsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4K
LSAgICA8ZGl2IGlkPSJsb25lbHlkaXYiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1w
LWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5l
Z2F0aXZlLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDcyMzJk
OGMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUtZXhwZWN0ZWQuaHRtbAorKysg
L2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0i
ZW4iPgotPGhlYWQ+Ci0gICAgPG1ldGEgY2hhcnNldD0iVVRGLTgiPgotICAgIDx0aXRsZT5UZXN0
cyB0aGF0IGNzc19jb2xvck1hdHJpeCBtdWx0aXBsaWNhdGlvbiByZXN1bHQgaXMgY2xhbXBlZCB0
byAwPC90aXRsZT4KLSAgICA8c3R5bGU+Ci0gICAgICAgICNsb25lbHlkaXYgewotICAgICAgICAg
ICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAg
IGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOwotICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDAs
IDAsIDApOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxk
aXYgaWQ9ImxvbmVseWRpdiI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNv
bG9yLW1hdHJpeC1uZWdhdGl2ZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgtbmVnYXRpdmUuaHRtbApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjlmNDczNS4uMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1h
dHJpeC1uZWdhdGl2ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTQgKzAsMCBAQAotPCFET0NU
WVBFIEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8bWV0YSBjaGFyc2V0PSJV
VEYtOCI+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3NzX2NvbG9yTWF0cml4IG11bHRpcGxpY2F0
aW9uIHJlc3VsdCBpcyBjbGFtcGVkIHRvIDA8L3RpdGxlPgotICAgIDxzY3JpcHQ+Ci0gICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsK
LSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0
V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRV
bnRpbERvbmUoKTsKLSAgICAgICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKSB7Ci0g
ICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2Fk
aW5nIHN1Y2NlZWRlZC4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0KLSAg
ICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgICAgICNsb25lbHlkaXYgewotICAgICAgICAg
ICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAg
IGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOwotICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDIw
JSwgMjAlLCAyMCUpOwotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1p
eCh1cmwoJy4uL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXgt
bmVnYXRpdmUuZnMnKSBtdWx0aXBseSBzb3VyY2UtYXRvcCkpOwotICAgICAgICB9Ci0gICAgPC9z
dHlsZT4KLTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8IS0tCi0gICAg
ICAgIExldDoKLSAgICAgICAgY2xhbXAodmFsdWUpID0gQSBmdW5jdGlvbiB0aGF0IGNsYW1wcyB2
YWx1ZXMgYmV0d2VlbiAwLjAgYW5kIDEuMAotICAgICAgICBlbGVtZW50Q29sb3IgPSB2ZWM0KDAu
MiwgMC4yLCAwLjIsIDEuMCkKLSAgICAgICAgY3NzX0NvbG9yTWF0cml4ID0gTWF0cml4IHdpdGgg
ZGlhZ29uYWwgKC0xMC4wLCAtMTAuMCwgLTEwLjAsIDEuMCkKLSAgICAgICAgY3NzX01peENvbG9y
ID0gdmVjNCgtMC41LCAtMC41LCAtMC41LCAxLjApCi0KLSAgICAgICAgQ29ycmVjdCBjbGFtcGVk
IHJlc3VsdDoKLSAgICAgICAgcmVzdWx0ID0gY2xhbXAoY3NzX0NvbG9yTWF0cml4ICogZWxlbWVu
dENvbG9yKSAqIGNzc19NaXhDb2xvcgotICAgICAgICByZXN1bHQuciA9IGNsYW1wKC0xMC4wICog
MC4yKSAqIDAuNQotICAgICAgICByZXN1bHQuciA9IGNsYW1wKC0yLjApICogMC41Ci0gICAgICAg
IHJlc3VsdC5yID0gMC4wICogLTAuNQotICAgICAgICByZXN1bHQuciA9IDAuMAotICAgICAgICBy
ZXN1bHQuciA9IHJlc3VsdC5nID0gcmVzdWx0LmIgPT4gYmxhY2sKLQotICAgICAgICBJbmNvcnJl
Y3QgdW5jbGFtcGVkIHJlc3VsdDoKLSAgICAgICAgcmVzdWx0ID0gKGNzc19Db2xvck1hdHJpeCAq
IGVsZW1lbnRDb2xvcikgKiBjc3NfTWl4Q29sb3IKLSAgICAgICAgcmVzdWx0LnIgPSAoLTEwLjAg
KiAwLjIpICogMC41Ci0gICAgICAgIHJlc3VsdC5yID0gLTIuMCAqIC0wLjUKLSAgICAgICAgcmVz
dWx0LnIgPSAxLjAKLSAgICAgICAgcmVzdWx0LnIgPSByZXN1bHQuZyA9IHJlc3VsdC5iID0+IHdo
aXRlCi0gICAgLS0+Ci0gICAgPGRpdiBpZD0ibG9uZWx5ZGl2Ij48L2Rpdj4KLTwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmYTE2MGE4Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3It
bWF0cml4Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1NCArMCwwIEBACi08IURPQ1RZUEUgSFRN
TD4KLTxodG1sIGxhbmc9ImVuIj4KLTxoZWFkPgotICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4K
LSAgICA8dGl0bGU+VGVzdHMgdGhhdCBjc3NfY29sb3JNYXRyaXggbXVsdGlwbGljYXRpb24gcmVz
dWx0IGlzIGNsYW1wZWQgdG8gMTwvdGl0bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVu
YWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9u
ZSgpOwotICAgICAgICB9Ci0KLSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKLSAgICAgICAg
ICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3Vj
Y2VlZGVkLgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2Ny
aXB0PgotICAgIDxzdHlsZT4KLSAgICAgICAgI2xvbmVseWRpdiB7Ci0gICAgICAgICAgICB3aWR0
aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgYm9yZGVy
OiAxcHggc29saWQgYmxhY2s7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjAlLCAyMCUs
IDIwJSk7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC5mcycpIG11
bHRpcGx5IHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgot
PGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgIDwhLS0KLSAgICAgICAgTGV0OgotICAgICAg
ICBjbGFtcCh2YWx1ZSkgPSBBIGZ1bmN0aW9uIHRoYXQgY2xhbXBzIHZhbHVlcyBiZXR3ZWVuIDAu
MCBhbmQgMS4wCi0gICAgICAgIGVsZW1lbnRDb2xvciA9IHZlYzQoMC4yLCAwLjIsIDAuMiwgMS4w
KQotICAgICAgICBjc3NfQ29sb3JNYXRyaXggPSBNYXRyaXggd2l0aCBkaWFnb25hbCAoMTAuMCwg
MTAuMCwgMTAuMCwgMTAuMCkKLSAgICAgICAgY3NzX01peENvbG9yID0gdmVjNCgwLjUsIDAuNSwg
MC41LCAxLjApCi0KLSAgICAgICAgQ29ycmVjdCBjbGFtcGVkIHJlc3VsdDoKLSAgICAgICAgcmVz
dWx0ID0gY2xhbXAoY3NzX0NvbG9yTWF0cml4ICogZWxlbWVudENvbG9yKSAqIGNzc19NaXhDb2xv
cgotICAgICAgICByZXN1bHQuciA9IGNsYW1wKDEwLjAgKiAwLjIpICogMC41Ci0gICAgICAgIHJl
c3VsdC5yID0gY2xhbXAoMi4wKSAqIDAuNQotICAgICAgICByZXN1bHQuciA9IDEuMCAqIDAuNQot
ICAgICAgICByZXN1bHQuciA9IDAuNQotICAgICAgICByZXN1bHQuciA9IHJlc3VsdC5nID0gcmVz
dWx0LmIgPT4gZ3JheQotCi0gICAgICAgIEluY29ycmVjdCB1bmNsYW1wZWQgcmVzdWx0OgotICAg
ICAgICByZXN1bHQgPSAoY3NzX0NvbG9yTWF0cml4ICogZWxlbWVudENvbG9yKSAqIGNzc19NaXhD
b2xvcgotICAgICAgICByZXN1bHQuciA9ICgxMC4wICogMC4yKSAqIDAuNQotICAgICAgICByZXN1
bHQuciA9IDIuMCAqIDAuNQotICAgICAgICByZXN1bHQuciA9IDEuMAotICAgICAgICByZXN1bHQu
ciA9IHJlc3VsdC5nID0gcmVzdWx0LmIgPT4gd2hpdGUKLSAgICAtLT4KLSAgICA8ZGl2IGlkPSJs
b25lbHlkaXYiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3It
ZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jbGFtcC1jc3MtbWl4LWNvbG9yLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDVhMGI2NWQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItZXhwZWN0ZWQuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWw+
Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBjc3NfTWl4Q29sb3IgdmFsdWVzIGdyZWF0
ZXIgdGhhbiAxLjAgYXJlIGNsYW1wZWQgdG8gMS4wIGJlZm9yZSBibGVuZGluZyBhbmQgY29tcG9z
aXRpbmcuPC90aXRsZT4KLSAgICA8IS0tCi0gICAgICAgIFRoaXMgaXMgdGhlIHJlZmVyZW5jZSBm
aWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAgVGhlIHRlc3QgcGFzc2VzIGlmIHRoZXJlIGlzIGEg
Z3JlZW4gc3F1YXJlLiBJZiB0aGUgc3F1YXJlIGlzIGEgZGlmZmVyZW50IGNvbG9yLCB0aGUgdGVz
dCBmYWlscy4KLSAgICAtLT4KLSAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAj
ZmlsdGVyLXRhcmdldCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTAlLCA1
MCUsIDAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDog
MTAwcHg7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRp
diBpZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LW1peC1jb2xvci1uZWdhdGl2ZS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItbmVnYXRpdmUtZXhw
ZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTM5MTE1Ny4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xh
bXAtY3NzLW1peC1jb2xvci1uZWdhdGl2ZS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsMjAgKzAsMCBAQAotPCFET0NUWVBFIEhUTUw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRs
ZT5UZXN0cyB0aGF0IG5lZ2F0aXZlIGNzc19NaXhDb2xvciB2YWx1ZXMgYXJlIGNsYW1wZWQgdG8g
MC4wIGJlZm9yZSBibGVuZGluZyBhbmQgY29tcG9zaXRpbmcuPC90aXRsZT4KLSAgICA8IS0tCi0g
ICAgICAgIFRoaXMgaXMgdGhlIHJlZmVyZW5jZSBmaWxlIGZvciB0aGUgdGVzdC4KLSAgICAgICAg
VGhlIHRlc3QgcGFzc2VzIGlmIHRoZXJlIGlzIGEgYmxhY2sgc3F1YXJlLiBJZiB0aGUgc3F1YXJl
IGlzIGEgZGlmZmVyZW50IGNvbG9yLCB0aGUgdGVzdCBmYWlscy4KLSAgICAtLT4KLSAgICA8c3R5
bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAjZmlsdGVyLXRhcmdldCB7Ci0gICAgICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCUsIDAlLCAwJSk7Ci0gICAgICAgICAgICB3aWR0aDog
MTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICB9Ci0gICAgPC9zdHls
ZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImZpbHRlci10YXJnZXQiPjwvZGl2Pgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItbmVnYXRpdmUuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtbWl4
LWNvbG9yLW5lZ2F0aXZlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQwNmU0
MzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3ItbmVnYXRpdmUuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDYwICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0
bGU+VGVzdHMgdGhhdCBuZWdhdGl2ZSBjc3NfTWl4Q29sb3IgdmFsdWVzIGFyZSBjbGFtcGVkIHRv
IDAuMCBiZWZvcmUgYmxlbmRpbmcgYW5kIGNvbXBvc2l0aW5nLjwvdGl0bGU+Ci0gICAgPCEtLSBU
aGUgdGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgYSBibGFjayBzcXVhcmUuIElmIHRoZSBzcXVhcmUg
aXMgYSBkaWZmZXJlbnQgY29sb3IsIHRoZSB0ZXN0IGZhaWxzLiAtLT4KLSAgICA8c2NyaXB0Pgot
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIs
ICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2Uo
IldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5jdGlvbiBydW5UZXN0
KCkgewotICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3QgYWZ0ZXIgdGhlIHNo
YWRlcnMgYXJlIGRvd25sb2FkZWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIp
Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAg
ICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAg
I2ZpbHRlci10YXJnZXQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMCUs
IDAlLCAwJSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6
IDEwMHB4OwotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwo
Jy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBkaWZmZXJlbmNlIGNvcHkpLCBtaXhfY29sb3Ig
MS4wIC0xLjAgLTIuMCAxLjApOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxi
b2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8IS0tCi0gICAgICAgIEluaXRpYWwgdmFsdWVz
OgotICAgICAgICAgICAgQ2IgPSAoMS4wLCAwLjAsIDAuMCkKLSAgICAgICAgICAgIENzID0gKDEu
MCwgLTEuMCwgLTIuMCkKLQotICAgICAgICBDb3JyZWN0IHJlc3VsdDoKLQotICAgICAgICAgICAg
Q2xhbXAgQ3M6Ci0gICAgICAgICAgICAgICAgQ3MgPSAoMC41LCAwLjAsIDAuMCkKLQotICAgICAg
ICAgICAgRGlmZmVyZW5jZSBibGVuZCBtb2RlOgotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9
IGFicyhDYiAtIENzKQotICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9IGFicygoMS4wLCAwLjAs
IDAuMCkgLSAoMS4wLCAwLjAsIDAuMCkpCi0gICAgICAgICAgICAgICAgQihDYiwgQ3MpID0gKDAu
MCwgMC4wLCAwLjApID0+IEJsYWNrCi0KLSAgICAgICAgSW5jb3JyZWN0IHJlc3VsdDoKLQotICAg
ICAgICAgICAgVXNlIHVuY2xhbXBlZCBDczoKLSAgICAgICAgICAgICAgICBDcyA9ICgwLjUsIC0x
LjAsIC0yLjApCi0KLSAgICAgICAgICAgIERpZmZlcmVuY2UgYmxlbmQgbW9kZToKLSAgICAgICAg
ICAgICAgICBCKENiLCBDcykgPSBhYnMoQ2IgLSBDcykKLSAgICAgICAgICAgICAgICBCKENiLCBD
cykgPSBhYnMoKDEuMCwgMC4wLCAwLjApIC0gKDEuMCwgLTEuMCwgLTIuMCkpCi0gICAgICAgICAg
ICAgICAgQihDYiwgQ3MpID0gKDAuMCwgMS4wLCAyLjApCi0gICAgICAgICAgICAgICAgQihDYiwg
Q3MpID0gKDAuMCwgMS4wLCAxLjApID0+IEN5YW4KLQotICAgICAgICBJZiB0aGUgY3VzdG9tIGZp
bHRlciBmYWlscyB0byBhcHBseSwgdGhlIHJlc3VsdCB3aWxsIHNpbXBseSBiZSB0aGUgYmFja2Ry
b3AgY29sb3I6Ci0gICAgICAgICAgICAgICAgQ2IgPSAoMS4wLCAwLjAsIDAuMCkgPT4gUmVkCi0g
ICAgLS0+Ci0gICAgPGRpdiBpZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItY2xhbXAtY3NzLW1peC1jb2xvci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1taXgtY29sb3IuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggZDA2M2YyMi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLW1peC1jb2xvci5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsNTkgKzAsMCBAQAotPCFET0NUWVBFIEhUTUw+Ci08aHRtbD4K
LTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGNzc19NaXhDb2xvciB2YWx1ZXMgZ3JlYXRl
ciB0aGFuIDEuMCBhcmUgY2xhbXBlZCB0byAxLjAgYmVmb3JlIGJsZW5kaW5nIGFuZCBjb21wb3Np
dGluZy48L3RpdGxlPgotICAgIDwhLS0gVGhlIHRlc3QgcGFzc2VzIGlmIHRoZXJlIGlzIGEgZ3Jl
ZW4gc3F1YXJlLiBJZiB0aGUgc3F1YXJlIGlzIGEgZGlmZmVyZW50IGNvbG9yLCB0aGUgdGVzdCBm
YWlscy4gLS0+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0K
LSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKLSAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8g
cnVuIHRoZSB0ZXN0IGFmdGVyIHRoZSBzaGFkZXJzIGFyZSBkb3dubG9hZGVkLgotICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZSB0
eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHJnYigxMCUsIDUwJSwgMTAwJSk7Ci0gICAgICAgICAgICB3aWR0aDog
MTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBt
dWx0aXBseSBjb3B5KSwgbWl4X2NvbG9yIDEwLjAgMS4wIDAuMCAxLjApOwotICAgICAgICB9Ci0g
ICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8IS0t
Ci0gICAgICAgIEluaXRpYWwgdmFsdWVzOgotICAgICAgICAgICAgQ2IgPSAoMC4xLCAwLjUsIDEu
MCkKLSAgICAgICAgICAgIENzID0gKDEwLjAsIDEuMCwgMC4wKQotCi0gICAgICAgIENvcnJlY3Qg
cmVzdWx0OgotCi0gICAgICAgICAgICBDbGFtcCBDczoKLSAgICAgICAgICAgICAgICBDcyA9ICgx
LjAsIDEuMCwgMC4wKQotCi0gICAgICAgICAgICBNdWx0aXBseSBibGVuZCBtb2RlOgotICAgICAg
ICAgICAgICAgIEIoQ2IsIENzKSA9IENiICogQ3MKLSAgICAgICAgICAgICAgICBCKENiLCBDcykg
PSAoMC4xLCAwLjUsIDEuMCkgKiAoMS4wLCAxLjAsIDAuMCkKLSAgICAgICAgICAgICAgICBCKENi
LCBDcykgPSAoMC4xLCAwLjUsIDAuMCkgPT4gR3JlZW4KLQotICAgICAgICBJbmNvcnJlY3QgcmVz
dWx0OgotCi0gICAgICAgICAgICBVc2UgdW5jbGFtcGVkIENzOgotICAgICAgICAgICAgICAgIENz
ID0gKDEwLjAsIDEuMCwgMC4wKQotCi0gICAgICAgICAgICBNdWx0aXBseSBibGVuZCBtb2RlOgot
ICAgICAgICAgICAgICAgIEIoQ2IsIENzKSA9IENiICogQ3MKLSAgICAgICAgICAgICAgICBCKENi
LCBDcykgPSAoMC4xLCAwLjUsIDEuMCkgKiAoMTAuMCwgMS4wLCAwLjApCi0gICAgICAgICAgICAg
ICAgQihDYiwgQ3MpID0gKDEuMCwgMC41LCAwLjApID0+IE9yYW5nZQotCi0gICAgICAgIElmIHRo
ZSBjdXN0b20gZmlsdGVyIGZhaWxzIHRvIGFwcGx5LCB0aGUgcmVzdWx0IHdpbGwgc2ltcGx5IGJl
IHRoZSBiYWNrZHJvcCBjb2xvcjoKLSAgICAgICAgICAgICAgICBDYiA9ICgwLjEsIDAuNSwgMS4w
KSA9PiBCbHVlCi0gICAgLS0+Ci0gICAgPGRpdiBpZD0iZmlsdGVyLXRhcmdldCI+PC9kaXY+Ci08
L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLWV4cGVj
dGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
Y29sb3ItZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGU5OGVh
NC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItY29sb3ItZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAK
LTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0
cyBjb2xvciB2YWx1ZXMgaW4gY3VzdG9tIGZpbHRlcnM8L3RpdGxlPgotICAgICAgICA8c3R5bGU+
Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwv
c3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAg
ICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LWNvbG9yLW1hdHJpeC1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4LWV4cGVjdGVkLnBuZwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggNTNjZDhmNWM4MTcwYzZkN2RhN2YyN2U0MGE0MjUyMjU5NjJhMWQ5
Yi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5IHBh
dGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAxMTE5OQp6Y21lSE5ZZnV3YzZ5QWkk
LX4kWldEVT4zX3FBaUx3TDE3PzhsNCRVT1RKVFh2WkJmd3BzNSZodmZnKGhiVX44JHYKemgrNDZ9
ckQtYklHTG53ZzNRRHEzPik+TipxfWJBX2t3Z1ZhcSRGVE0wfkBtR3BfYVh3X0ZyZkcoVjZ8bDxj
NCRaCnpJcDZ2Mklke0whP2o7JVhnR1dWLSFaMGoyZUw+blgzPTgwMzc7e3huQWdtbnlhSGthaE92
I19TRHFyJk1NIyhsPQp6IUZ5T2RVJjR6fE5TdStsZXI5NlE0MmZpOFZ0Z1ZtZEJ6NkdDY2IzRGBn
SnEhemZfJXRWUjF7LShgTFc1b3paPU4KeihiaTQ3K085cHxFfVBuTU0pU3EjTWB6V3RKOVFIMilS
NVV9cTMyKVVuUV9IKU5ePFp9JSt2ancmaHB6RT5yUi1MCnpwQW1pVUFobngyNDZERHxVeUdCWlRT
PG07TEBKRUlXQ2dKfkFgNnE1blByKTxifmQlNSFiKzhfRj5HUGJVKkE3bAp6JlJUNTE4cDYrcWBC
fjx1YGR7Kyp2ens0dntufX5Xcl5BbEhGeUlISC16UjMrYyVFcWJ5emFTdmVyTUoxdkZ1NHwKenRN
QV5nKWNmd2A7YGVRYHktfSUwJHdwMDR2ezExbHd5QyloX21MajhGQDxROzdgP3FzKFl+ODw/fiRZ
OC09a2puCnpKQlE9KjQ3czk9PHA7JGhBKTlCPjk/diNsZH1ZfTxZSnJgK041I2xIYGMzM1FEb2V7
QyM1PDV1TmlDPWhUVWNaRQp6d1k9NF88UVh0U1V2ITQ/TTdQYXE3SyU2e0NQI0k9ZFRRQ1k7bDA/
JklKaFE1Q1F9Tz5YI152bkp6KWpFbDFrbiUKekZ5ZWpoQjVTNSNwan08TGFePWRobFBTY1ZXP2Jk
JXRXcmkxKkVQeDtwMzVKLWxUSD95bzgzYEFlJkV0O2oxJVZjCnp2aX5qLTZsQz0xe14wQW9GNiR+
Tm0hajFNWXt+XzBpdlJ6RmJIVzFNWj1tb3VHNktGYj4zPkpqUG9Je2YkX2g3aQp6NEhmPWI7Kn0l
RD85MjA8OVk2ZTtVSD5obHZyZWp3cCh3S0NNVnt6cF9wSjtIRGEjZHI/ak9OZWVpM0BTe2tAT0cK
ejA7dTFgbWQqO2oraWd8flUyUGlXPzc9I3IheiRrXkQwRmRhcXlLTWQ7VUFOdiN9V09zPTwkKXdB
KnRAVyVRR2h3CnorYUZ2bEQ8bitraX5fbVVTQEFmVENeOEN0Z0tEP0haSVoheXYlOVROIyU9N21x
Sz0kem1ScW1STipqZ19uMU02Kwp6Wj58V0xPcmF9UDA5Z2huRVRrNGhtSVEheiVRdHprc0k8PH07
aGF2IzUrKjhiTyheZ0FrLW9sPHRGOTckJHRzKkUKekVoczNrTzYpe35uQT1DdTVlfns9O0oqa3lX
fW1ZI21Wc2ghMkAyPWJlMEBgbSptcyk/WDlwTExNQ15tSmkjPDB1CnpFSDMzcEA5eCpnNlR0PG80
cVg/e1FNak8zXjxCbWtwRCV3Qk1mbTwpN0owKHdDZTJ3LUBRSHBeYTZ1SnBhVzQjKQp6UE5Yc3ZM
NFI9T2NQI1UoMGAhTkJZJkdWVzw0fUw3aTk2KWlBOVFlX2gqMllgNExROyVERVh7NDRTeE4+MkZJ
e3YKeldoYH5OdX5IfCUqSi08WDNjMWVVTzhaKlBLS209emxGVTB+UiFOMXgtRj85dk1LbyVSQ0dQ
dSRXZGVzKVc+KSZWCnpZTk97dFMjKEhocTA2Wmw+fT9XUHh0Jkh+Ymd7anJPN1Z1dnF7WWVOOGwo
NT1FaU0+VEN9eGUtLTRhdUtffmdMUAp6MHJTaTkwSUg0KnJWcTsyelo4V3B2aXpyM0FJP3oocVJP
LUQ0K0FYbVRlLXQrOTZGSyM+eiM9VHBmWCRveXZ2dSQKekw7WWVJYCttJUpQeHBtZmQzJSl1QUFF
WU4/NDsqbUlUejA1P0cjNjN2QXMpKzN0WGwrWkRYRmJLfnY+XlFtWH1jCnp3MGgjbjlocFAjdjh5
YDtnakZMcD5pK21gOCg2ajwkT0tFR09BRndAU3gjfTg0ck1FZnRvKlVtbHJ3UHdrQjAxJAp6Zzxe
XlpJZDI9VkJYdno1UD8pam9oYWVOMnNRaVNncDVaJGNXNSR9ams1SWJjRDQ8PUBIems8THJGMDc7
VjhnfHoKekNUY0hzZUtzKThgKCR8cDsjVWktPGZtNGtVTSQ0ezZWSn56MzI2SzM1cF5XdEZ+MXE2
Y2VseHROPDQlLWRQbVJZCnp6U2c5WS1rdHxua0xnUml5MEdqV3krcWVCe3FgUGMofm43YGw3dkJP
Y0V6YHY8PDF8SXc3QXxASzJ8dWBRPU9adwp6Ymw3VUReZHdRdVUwWkJCXl9Pdk5aRWNxfW13NEVj
RGIoNVNmbDFleTN3MSojbStWOHQhZmdldT0xVXotUEoqOUoKek9fayRmbjh+LUI1NSVGRlkjSSMr
dGkybntMSX11KUN+bSFSNWFuWHUxeUZMZ3pPV05QJCVsa3h1SihscDYhI3BzCnppLWFZUExOXnZt
QjtkcF4mWU8mVSVPfmNqT3l2PX41TilMKTVJfCZWISlNNjFqeT1AciU7bEFIc0wwdEktYjcwaAp6
WE1BRVppYXtoY1V8VT8le0pmOForSTwtfkE2ZE4lc3E4czxZNyN8WDlfK3ZQdHxiVkM5U3A7YGBD
S0pSX0VwR2kKemNTSXlnO3xzNyFERXswcHo+azRQT0Z4UTFKVzJxWWRCJGFeeUJ1Y29NNllnQGBs
MCVYaXQmP213STUjTjBpM2twCnozV1VUUnUhJUBybCNWekpoI29uOElUWGJmITM8b1cqKnBjNloh
c2lEZ0Y9SHNHbGZHUjl8bmB8RE9mNHBYeGE0aQp6VkZsNDZTIUpOX0RJKXN2IyQ/ZXFTX1lIOD1F
RDtke3A+P081TXJoRFE/aVBkNHA+MzdiaWljTWRXdEJBbUpWcD8KejBKSytISS1zUWs1U25TfWZS
K3k2bD57dnZhQUBmT1VmYT5xMFdCVENZZmY0XjJ4OE9IMFdCVENXVGQ1bz1PLVBNCmJgbWwkaFUm
JDIlPHlRRGJFfHh3d0JkdTt1JmR4c3B1Xk0maAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xvci1tYXRyaXgtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbG9yLW1h
dHJpeC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODku
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmls
dGVyLWNvbG9yLW1hdHJpeC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBA
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jb2xvci1tYXRyaXguaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1jb2xvci1tYXRyaXguaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggY2M4NWExMC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItY29sb3ItbWF0cml4Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwy
NSArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRl
c3QgY3NzX0NvbG9yTWF0cml4LjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMs
IHlvdSBzaG91bGQgc2VlIHRoZSByZWZlcmVuY2UgaW1hZ2UgYXMgZ3JheXNjYWxlLiAtLT4KLSAg
ICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmls
dGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICBmdW5j
dGlvbiBydW5UZXN0KCkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gUnVuIHRoZSB0ZXN0IGFm
dGVyIHRoZSBpbWFnZSBsb2Fkcy4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
LSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAg
IH0KLSAgICA8L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAg
ICA8aW1nIHN0eWxlPSItd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVz
b3VyY2VzL2dyYXlzY2FsZS1jb2xvci1tYXRyaXguZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKSIg
c3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29s
b3IuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1j
b2xvci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMGU5ZDVmLi4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb2xv
ci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDIgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08
aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3RzIGNvbG9yIHZhbHVlcyBpbiBj
dXN0b20gZmlsdGVyczwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2Vi
S2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9u
IHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8g
cnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Njcmlw
dD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owot
ICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKLSAgICAgICAgICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNvdXJjZXMvZnJhZ21lbnQtY29s
b3JzLmZzJyksCi0gICAgICAgICAgICAgICAgICAgIGMxIHJnYigwLCAyNTUsIDApLAotICAgICAg
ICAgICAgICAgICAgICBjMiByZ2JhKDAsIDI1NSwgMCwgMS4wKSwKLSAgICAgICAgICAgICAgICAg
ICAgYzMgbGltZSwKLSAgICAgICAgICAgICAgICAgICAgYzQgaHNsKDEyMCwgMTAwJSwgNTAlKSwK
LSAgICAgICAgICAgICAgICAgICAgYzUgaHNsYSgxMjAsIDEwMCUsIDUwJSwgMS4wKSwKLSAgICAg
ICAgICAgICAgICAgICAgYzYgIzAwRkYwMAotICAgICAgICAgICAgICAgICk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVu
VGVzdCgpIj4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAgQSAxMDB4MTAwcHggcmVkIGRpdiBp
cyBjb2xvdXJlZCBsaW1lIGJ5IGZyYWdtZW50LWNvbG9ycy5mcywgYSBmcmFnbWVudCBzaGFkZXIu
Ci0gICAgICAgICAgICBGYWlscyBpZiB0aGUgZGl2IHN0YXlzIHJlZC4KLSAgICAgICAgLS0+Ci0g
ICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1jb21wb3NpdGUtZnJhY3Rpb25hbC1zb3VyY2UtYWxwaGEtZXhwZWN0ZWQuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtZnJh
Y3Rpb25hbC1zb3VyY2UtYWxwaGEtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMGIyZjJiMC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLWZyYWN0aW9uYWwtc291cmNlLWFscGhhLWV4
cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzMyArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoZSBzb3VyY2UtYXRvcCBjb21w
b3NpdGUgb3BlcmF0b3Igd2hlbiBzb3VyY2UgYWxwaGEgaXMgYSBmcmFjdGlvbmFsIHZhbHVlLjwv
dGl0bGU+Ci0gICAgPCEtLQotICAgICAgICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3Ig
dGhlIHRlc3QuCi0gICAgICAgIFRoZSB0ZXN0IHBhc3NlcyBpZiBlYWNoIGhvcml6b250YWwgcGFp
ciBvZiBzcXVhcmVzIGFyZSBleGFjdGx5IHRoZSBzYW1lIGNvbG9yLgotICAgICAgICBUaGUgdGVz
dCBmaWxlIGRlc2NyaWJlcyBob3cgdGhlIGNvbG9yIHZhbHVlcyBpbiB0aGlzIHJlZmVyZW5jZSBm
aWxlIGFyZSBjb21wdXRlZC4KLSAgICAtLT4KLSAgICA8c3R5bGU+Ci0gICAgLnBhaXItb2Ytc3F1
YXJlcyB7Ci0gICAgICAgIGNsZWFyOiBib3RoOwotICAgIH0KLSAgICAucGFpci1vZi1zcXVhcmVz
ID4gZGl2IHsKLSAgICAgICAgLyogU3F1YXJlIHNpemUuICovCi0gICAgICAgIHdpZHRoOiAyMHB4
OwotICAgICAgICBoZWlnaHQ6IDIwcHg7Ci0gICAgICAgIG1hcmdpbjogMnB4OwotICAgICAgICBm
bG9hdDogbGVmdDsKLSAgICB9Ci0gICAgLyogQ29tcG9zaXRlIG9wZXJhdG9ycyAqLwotICAgIC5z
b3VyY2UtYXRvcC1leHBlY3RlZCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxNzks
IDIxNywgMTkyKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxk
aXYgY2xhc3M9InBhaXItb2Ytc3F1YXJlcyI+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNvdXJjZS1h
dG9wLWV4cGVjdGVkIj48L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ic291cmNlLWF0b3AtZXhw
ZWN0ZWQiPjwvZGl2PgotICAgIDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1m
cmFjdGlvbmFsLXNvdXJjZS1hbHBoYS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1mcmFjdGlvbmFsLXNvdXJjZS1hbHBoYS5odG1s
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZWI1YmFmLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtZnJh
Y3Rpb25hbC1zb3VyY2UtYWxwaGEuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDcxICswLDAgQEAK
LTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhlIHNv
dXJjZS1hdG9wIGNvbXBvc2l0ZSBvcGVyYXRvciB3aGVuIHNvdXJjZSBhbHBoYSBpcyBhIGZyYWN0
aW9uYWwgdmFsdWUuPC90aXRsZT4KLSAgICA8IS0tIFRoaXMgdGVzdCBwYXNzZXMgaWYgZWFjaCBo
b3Jpem9udGFsIHBhaXIgb2Ygc3F1YXJlcyBhcmUgZXhhY3RseSB0aGUgc2FtZSBjb2xvci4gLS0+
Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3Zl
cnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAg
d2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAgfQotICAgIDwvc2Ny
aXB0PgotICAgIDxzdHlsZT4KLSAgICAucGFpci1vZi1zcXVhcmVzIHsKLSAgICAgICAgY2xlYXI6
IGJvdGg7Ci0gICAgfQotICAgIC5wYWlyLW9mLXNxdWFyZXMgPiBkaXYgewotICAgICAgICAvKiBT
cXVhcmUgc2l6ZS4gKi8KLSAgICAgICAgd2lkdGg6IDIwcHg7Ci0gICAgICAgIGhlaWdodDogMjBw
eDsKLSAgICAgICAgbWFyZ2luOiAycHg7Ci0gICAgICAgIGZsb2F0OiBsZWZ0OwotICAgIH0KLSAg
ICAuZGVzdGluYXRpb24gewotICAgICAgICAvKiBEZXN0aW5hdGlvbiBjb2xvciAqLwotICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMCUsIDQwJSwgNTAlLCAwLjUpOwotICAgIH0KLSAg
ICAvKiBDb21wb3NpdGUgb3BlcmF0b3JzICovCi0gICAgLyoKLSAgICAgICAgVGhlIGVxdWF0aW9u
cyBiZWxvdyB1c2UgdGhlIHN5bWJvbHMgYW5kIGVxdWF0aW9ucyBkZWZpbmVkIGluIHRoZSBDU1Mg
QmxlbmRpbmcgYW5kIENvbXBvc2l0aW5nIHNwZWMsIHdoZXJlOgotICAgICAgICAgICAgQ28gPSBv
dXRwdXQgY29sb3IKLSAgICAgICAgICAgIENzID0gc291cmNlIGNvbG9yIChha2EgIm1peCBjb2xv
ciIsICJjc3NfTWl4Q29sb3IiKQotICAgICAgICAgICAgQ2IgPSBkZXN0aW5hdGlvbiBjb2xvciAo
YWthICJiYWNrZHJvcCBjb2xvciIsICJvcmlnaW5hbCBET00gZWxlbWVudCBjb2xvciIpCi0KLSAg
ICAgICAgICAgIGNvID0gYXMgeCBGYSB4IENzICsgYWIgeCBGYiB4IENiCi0gICAgICAgICAgICBh
byA9IGFzIHggMSArIGFiIHggKDEgLSBhcykKLSAgICAgICAgICAgIENvID0gY28gLyBhbwotCi0g
ICAgICAgIGh0dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxlL3RpcC9jb21wb3NpdGlu
Zy9pbmRleC5odG1sI2dlbmVyYWxmb3JtdWxhCi0gICAgKi8KLSAgICAuc291cmNlLWF0b3Agewot
ICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2Vz
L21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjAgMC45IDAu
NSAwLjYpOwotICAgIH0KLSAgICAuc291cmNlLWF0b3AtZXhwZWN0ZWQgewotICAgICAgICAvKgot
ICAgICAgICAgICAgU291cmNlQXRvcDoKLQotICAgICAgICAgICAgRmEgPSBhYjsgRmIgPSAxIC0g
YXMKLSAgICAgICAgICAgIGNvID0gYXMgeCBDcyB4IGFiICsgYWIgeCBDYiB4ICgxIC0gYXMpCi0g
ICAgICAgICAgICBhbyA9IGFzIHggYWIgKyBhYiB4ICgxIC0gYXMpCi0gICAgICAgICAgICBDbyA9
IGNvIC8gYW8KLQotICAgICAgICAgICAgYSA9IDAuNiB4IDEgKyAwLjUgeCAoMSAtIDAuNikgPSAw
LjUKLSAgICAgICAgICAgIHIgPSAoMC42IHggMCB4IDAuNSArIDAuNSB4IDEgeCAoMSAtIDAuNikp
IC8gYSA9IDAuNAotICAgICAgICAgICAgZyA9ICgwLjYgeCAwLjkgeCAwLjUgKyAwLjUgeCAwLjQg
eCAoMSAtIDAuNikpIC8gYSA9IDAuNwotICAgICAgICAgICAgYiA9ICgwLjYgeCAwLjUgeCAwLjUg
KyAwLjUgeCAwLjUgeCAoMSAtIDAuNikpIC8gYSA9IDAuNQotCi0gICAgICAgICAgICBUaGUgZXJy
b3IgaW4gdGhlIGNvbG9yIGNhbGN1bGF0aW9uIHJlcXVpcmVzIHVzIHRvIHVzZSB0aGUgOC1iaXQg
dmFsdWVzIGZvcjoKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDAlLCA3MCUs
IDUwJSwgMC41KTsKLSAgICAgICAgKi8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE3
OSwgMjE3LCAxOTIpOwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAg
PGRpdiBjbGFzcz0icGFpci1vZi1zcXVhcmVzIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGlu
YXRpb24gc291cmNlLWF0b3AiPjwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJzb3VyY2UtYXRv
cC1leHBlY3RlZCI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9z
aXRlLW9wZXJhdG9ycy1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLW9wZXJhdG9ycy1leHBlY3RlZC5wbmcKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk1YTM3NjExMTE4MWM2YTQ3N2M0NGM1ZDI3MGRiZWE3
MTdlOGU0OGQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKR0lUIGJp
bmFyeSBwYXRjaApsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgMzE4MQp6Y21lQVNATj8o
b2xIeWB1VkJxIWlhMHl+eVV7K3ZZVjJhPmkwKlopPWheaGxBJUBXcyRsSGBvazxtfT9vVG41OHIK
enFvaD1XdkB7Yz1sdkh5ZzNsbnBMUkFiWW02ZUJZT15BeGpXXlc+a340PXc+fVZvVU9OY1ZZTXNm
KCFPOHBVbDkoCnp7bnBkUEZ7RVA3K2RHYlp3KyUjQzVCX1FSelRjPzAkLXdOQWE8dFJjWD4zUFJB
TStZKXt7RH1aIVF1SiQ8PzsqKwp6QTU1Nkk4NUdudUZmYiV4R0c2RGk4eTcjZEtLRXl7OT5XOC1l
Xkw/cV9vLSM/KUI0SzVAYkJiJjRufU5SRmJ4XmgKekJIUUBWamYtenVHY2Q+PFplbkUrdS0xKkpl
dC1JMlZTKSFVIUBIdig1I2IwMTJFI15qNyNsLWxPQGk7VEZjanBBCno9YGJ8UklLYWZ2ITh1VGo4
Ji00OW89SlZyeiktPSVFeW0jUlc9cTFgenMyYCFBNz9wQkYlOy1pPSlTZUQ3UmApfQp6V28wUEhy
cXJPdkZaYUM9V25rYj5JIUlBcShibCo5SEtvcyM9ZCZ7R1hreHtrYkJJYXd1UGIpTkA2VUs8QUo0
P18Kekw0ZVlySkFDc0AlcmAhVWhUfEkmNyNXV0VhYkxVbGRzRGZMIzNoRD8+V3ZAfjdHU2pka2oy
T2U2K2dTQDxLdy1uCnomb2VSOSRieW0mZEZGdDFnX1R+c2NoIzRIO2Q+Z0Bxajt9PV8zPWhVVVdP
Z3dsKUFDfT5ZbVMhQDc5VmxKbEd3OQp6eTxqOUpkTz5Rbz9PSSh7RjNOREFIPENoZ1hqbntyb3cp
djcmNkNYeDRCX0NVTHM+IXpGPXU0QkduPitrUUQ5fn4KemVKP1leMTRBOFA+QVVmQSk3SjBqWXJw
cmQ9Rk1he3V5P1M7Tlo8MGBpXjNUZ1kmcihCWElGS25lUzIreEZhTTdpCnohLUYoWFYzSnByZnB0
WTZ6eD8tPz4ranpDT2JqK05zcWc4MVopRGxxT2MpLS1RUj5YUXBgVlpXcjxkUG5XJSF7LQp6WHtr
IUpuaG1wZncqUCtEZTRXYDZNdXpXeyleQE1mLUNGO0BXWjc+V2g2Qj9uRSRlMGR6clBrZ2B7JWhn
dXRqdTsKeiF1Qyg4I3E2MTw/PWRvYmtOYEZ+emVvZDNKVVRvWWpXfUElIzh3S18oKkJLSW96WD9Q
KFJ4WTx1cShqZT5GVmRRCkkmTUJiQDBHJlZ8Mj48ezkKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLW9wZXJhdG9ycy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY29tcG9zaXRlLW9wZXJhdG9ycy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1vcGVyYXRvcnMtZXhwZWN0ZWQudHh0Cisr
KyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLW9wZXJhdG9ycy5odG1sIGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1v
cGVyYXRvcnMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTRjZDgzMy4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
Y29tcG9zaXRlLW9wZXJhdG9ycy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMyICswLDAgQEAK
LTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdHMgdGhhdCBj
dXN0b20gZmlsdGVyIGNvbXBvc2l0ZSBvcGVyYXRvcnMgY29tcHV0ZSBjb2xvciB2YWx1ZXMgY29y
cmVjdGx5LjwvdGl0bGU+Ci0gICAgPCEtLQotICAgICAgICBUaGlzIHRlc3QgbWltaWNzIHRoZSBQ
b3J0ZXIgRHVmZiBDb21wb3NpdGluZyBPcGVyYXRvcnMgZXhhbXBsZSBpbWFnZSBpbiB0aGUgQ29t
cG9zaXRpbmcgYW5kIEJsZW5kaW5nIHNwZWM6Ci0gICAgICAgIGh0dHBzOi8vZHZjcy53My5vcmcv
aGcvRlhURi9yYXdmaWxlL3RpcC9jb21wb3NpdGluZy9pbmRleC5odG1sI3BvcnRlcmR1ZmZjb21w
b3NpdGluZ29wZXJhdG9yc19zcmNhdG9wCi0gICAgLS0+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRX
ZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFz
VGV4dCh0cnVlKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAv
KiBEcmF3cyBhIGJsYWNrIGJvcmRlciBhcm91bmQgdGhlIHNoYWRlZCBkZXN0aW5hdGlvbiBkaXYu
ICovCi0gICAgI2JvcmRlci1jb250YWluZXIgewotICAgICAgICB3aWR0aDogNDVweDsKLSAgICAg
ICAgaGVpZ2h0OiA0NXB4OwotICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICB9
Ci0gICAgLyogVGhlIHNoYWRlZCBkaXYuICovCi0gICAgLmRlc3RpbmF0aW9uIHsKLSAgICAgICAg
d2lkdGg6IDEwMCU7Ci0gICAgICAgIGhlaWdodDogMTAwJTsKLSAgICB9Ci0gICAgLyogRHJhd3Mg
YSB5ZWxsb3cgc3F1YXJlIGluIHRoZSB1cHBlciBsZWZ0IGNvcm5lciBvZiB0aGUgZGVzdGluYXRp
b24gZGl2LiAqLwotICAgIC8qIFRoZSByZXN0IG9mIHRoZSBkZXN0aW5hdGlvbiBkaXYgaXMgdHJh
bnNwYXJlbnQuICovCi0gICAgI2Rlc3RpbmF0aW9uLW9wYXF1ZS1jaGlsZCB7Ci0gICAgICAgIHdp
ZHRoOiA2NyU7Ci0gICAgICAgIGhlaWdodDogNjclOwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiB5ZWxsb3c7Ci0gICAgfQotICAgIC8qIENvbXBvc2l0ZSBvcGVyYXRvcnMgKi8KLSAgICAuY2xl
YXIgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bh
c3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5v
cm1hbCBjbGVhcikpOwotICAgIH0KLSAgICAuY29weSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVy
OiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvY29tcG9zaXRlLmZzJykgbm9ybWFsIGNvcHkpKTsKLSAgICB9Ci0gICAgLnNv
dXJjZS1vdmVyIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291
cmNlcy9wYXNzLXRleC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb21wb3NpdGUu
ZnMnKSBub3JtYWwgc291cmNlLW92ZXIpKTsKLSAgICB9Ci0gICAgLmRlc3RpbmF0aW9uLW92ZXIg
ewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3Mt
dGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1h
bCBkZXN0aW5hdGlvbi1vdmVyKSk7Ci0gICAgfQotICAgIC5zb3VyY2UtaW4gewotICAgICAgICAt
d2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZz
JykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1hbCBzb3VyY2UtaW4p
KTsKLSAgICB9Ci0gICAgLmRlc3RpbmF0aW9uLWluIHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6
IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRleC1jb29yZC52cycpIG1peCh1cmwoJy4u
L3Jlc291cmNlcy9jb21wb3NpdGUuZnMnKSBub3JtYWwgZGVzdGluYXRpb24taW4pKTsKLSAgICB9
Ci0gICAgLnNvdXJjZS1vdXQgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgn
Li4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2Nv
bXBvc2l0ZS5mcycpIG5vcm1hbCBzb3VyY2Utb3V0KSk7Ci0gICAgfQotICAgIC5kZXN0aW5hdGlv
bi1vdXQgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2Vz
L3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycp
IG5vcm1hbCBkZXN0aW5hdGlvbi1vdXQpKTsKLSAgICB9Ci0gICAgLnNvdXJjZS1hdG9wIHsKLSAg
ICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRleC1j
b29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb21wb3NpdGUuZnMnKSBub3JtYWwgc291
cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLmRlc3RpbmF0aW9uLWF0b3AgewotICAgICAgICAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1hbCBkZXN0aW5hdGlvbi1h
dG9wKSk7Ci0gICAgfQotICAgIC54b3IgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9t
KHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3Vy
Y2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1hbCB4b3IpKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4KLTwv
aGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWluZXIiPgotICAgICAgICA8
ZGl2IGNsYXNzPSJkZXN0aW5hdGlvbiBjbGVhciI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0
aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4K
LSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVz
dGluYXRpb24gY29weSI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUt
Y2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJi
b3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gc291cmNl
LW92ZXIiPgotICAgICAgICAgICAgPGRpdiBpZD0iZGVzdGluYXRpb24tb3BhcXVlLWNoaWxkIj48
L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBpZD0iYm9yZGVyLWNv
bnRhaW5lciI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIGRlc3RpbmF0aW9uLW92
ZXIiPgotICAgICAgICAgICAgPGRpdiBpZD0iZGVzdGluYXRpb24tb3BhcXVlLWNoaWxkIj48L2Rp
dj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBpZD0iYm9yZGVyLWNvbnRh
aW5lciI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIHNvdXJjZS1pbiI+Ci0gICAg
ICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAg
ICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0iZGVzdGluYXRpb24gZGVzdGluYXRpb24taW4iPgotICAgICAgICAg
ICAgPGRpdiBpZD0iZGVzdGluYXRpb24tb3BhcXVlLWNoaWxkIj48L2Rpdj4KLSAgICAgICAgPC9k
aXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBpZD0iYm9yZGVyLWNvbnRhaW5lciI+Ci0gICAgICAg
IDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9uIHNvdXJjZS1vdXQiPgotICAgICAgICAgICAgPGRpdiBp
ZD0iZGVzdGluYXRpb24tb3BhcXVlLWNoaWxkIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAg
PC9kaXY+Ci0gICAgPGRpdiBpZD0iYm9yZGVyLWNvbnRhaW5lciI+Ci0gICAgICAgIDxkaXYgY2xh
c3M9ImRlc3RpbmF0aW9uIGRlc3RpbmF0aW9uLW91dCI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJk
ZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rp
dj4KLSAgICA8ZGl2IGlkPSJib3JkZXItY29udGFpbmVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0i
ZGVzdGluYXRpb24gc291cmNlLWF0b3AiPgotICAgICAgICAgICAgPGRpdiBpZD0iZGVzdGluYXRp
b24tb3BhcXVlLWNoaWxkIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAg
PGRpdiBpZD0iYm9yZGVyLWNvbnRhaW5lciI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0
aW9uIGRlc3RpbmF0aW9uLWF0b3AiPgotICAgICAgICAgICAgPGRpdiBpZD0iZGVzdGluYXRpb24t
b3BhcXVlLWNoaWxkIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9kaXY+Ci0gICAgPGRp
diBpZD0iYm9yZGVyLWNvbnRhaW5lciI+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImRlc3RpbmF0aW9u
IHhvciI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQiPjwv
ZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8IS0tCi0gICAgICAgIElmIHlv
dSBhZGQgbW9yZSBjb21wb3NpdGUgb3BlcmF0b3JzIHRvIHRoaXMgcGFnZSwgYmUgY2FyZWZ1bCBu
b3QgdG8gZXhjZWVkIDYwMHB4IGluCi0gICAgICAgIGhlaWdodCwgc2luY2UgRHVtcFJlbmRlclRy
ZWUgY29tcGFyZXMgODAweDYwMCBzbmFwc2hvdHMgb2YgdGhpcyBwYWdlLgotICAgIC0tPgotPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1zb3VyY2UtYXRvcC1leHBlY3RlZC5wbmcgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLXNvdXJj
ZS1hdG9wLWV4cGVjdGVkLnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2ExYjAw
MWZkYmJjMWRlODExMmY0YmQ1Y2E0ZGU5ZTVkYmM5NTBhNy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAw
MQoKbGl0ZXJhbCAxMDc5Ngp6Y21lSTJaQWVwNTd7fH1PdTM4aEBFdSMrIStwUjNKQnhxVGk4aFh1
SDhZO2J+TEN2T1MoVGg8VVI9UnNPcWNeZ28KekgmVWB5XmEzUisrSnsxTW1rNj5WaXl9cnZIN0sm
c0xXeyFELTBpcnstU2ZTdUZWQmF1LU5RTjBJcD98MF5GUDF5Cnp1cGBUSW1xY2tNWVk7K0ZTKClZ
KTJ1MUordjNjc3pxQHtrM1Y8LThGRTZkMCRFOEpYTXhPSTI9YzJ1fSZVaHpnIwp6cVMzVWVoPHZQ
eCo3KnhlMkJYeiNEcTNKTDhIeTQtPEUoPlpPbE91a1pCKyZIPDt+b3RnOFN0ZSVkNHN7b2EpaTwK
elUjd1lvdlNIP3BCeUlhc2BAVkFYPD9pO1ZJa3dSO3Y2OW13YCtnVypZS3w4JFZwdFhWKEkyRG9f
Wm9kVlRWJnVkCnopYjRYKUcqQkp4QncocERuJlZ3SHVTKDQkMHxpWEYlPV9+JGxFdnQ3SS1SZllD
RUhVc05PRXFeMzMpc1VuTFduMwp6az1OWnw1JXRZPUw7MC1lNzQhVlByTUVOWEhlMjcmaXdWSjk8
VmQzOWd8OU00UyhyNDJWWkplc1BLVU5nak0tPUsKekxjT3pqdGdgVnpvKT1PST5Pd1kjSkBIaGYl
S1pMKWUkWHZ9MT9XfCh0fSpjfERhWGBmdzhocHJMKW8+YjhZMz8qCnpVYUN3azVKeD9KO3ZUamI+
UT4yZHl1S3h5bnRVX01VaCNWQ3NyNn1EX0N2KGtJQk4xNzBWa3dkcURQRjdIPGMjZgp6TzM1JT9u
ZiY1ZGI/d0tWdDw/SGIpYXFKby1aZzZTMWNyR0EmSSFDOGE4NVclQSMlYzVedy1rTD9uPkR2NH1L
UXEKekMoV3NFSj98TDUtekVEP3tPN2AxRjBHZWIlJD1EMHVyUUZFJkpeJU1ONz16fUE3cFJHMj5P
ZiFEKTxMdEJZMlFQCnpVaT80WkBidEotI2ZCWTJLQS1RNEEraFJmalU7d3BhazJsc0puMl90WSow
eWNubjVHNG8hYy1xRVViYmpvKUB9UAp6SGM7R0NGX1JaYCl9KU0pXmQ/LUhGV35jNDlUYk4zRkMm
dDh1azB1I2lFUzdxeztIdEIkOCFtenlAeCtmcTtSUSgKelZScm8tcGcyclFDbEpVemtFN19Rbj9Q
M0lgIWtmfkwhQFFPd1VyYnZvZ2J5QGRVPH5+V20hdkYoekNCQ0pqYTxMCnopd09MVyk+NCpyOGc9
Y1ZiR2hSY1RIODVePDRnMy1sO3dwSklkQmotQz1naT9MSHtocGByVGZ5WSFQaj92dnBCYQp6Ujsh
Sz0tenxVaXgoRHpRRHZ7TlZ0VXRQT15+MitvTkR2dF9UI0JHRnhzaGR5JmFfVGJsI1ZCWWtvYCMr
IW11fG4KeiVEPnUyWCt7XnojenJTOEwkRVo5N3VMaWpRKiphc154KGlhaVZqPGRzPSFqZkQtYktn
U3BwZUUxT3t9NDdlSC1FCnpJPX5yM3M9OUQ4YjM4eC1wKmxiKGErTDw0MVZ7KjZGYVF6JjUoMVl8
ZkNQWXFLIUVgdTBVI2t6aX4+bDJOPHkjKAp0NTBDKG0wRlYlPj5PJj1nb0RLajl7fWQ4cnZ+UnVj
Uj9YZXlGN28kSmwkRFdkWmR6Mn1fempvQEJEZXFtCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1zb3VyY2UtYXRvcC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggOGIxMzc4OS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29tcG9zaXRlLXNvdXJjZS1hdG9wLWV4cGVjdGVkLnR4
dAorKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBvc2l0ZS1zb3VyY2UtYXRvcC5o
dG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNvbXBv
c2l0ZS1zb3VyY2UtYXRvcC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2YTZj
Njk2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1jb21wb3NpdGUtc291cmNlLWF0b3AuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDUx
ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVz
dHMgdGhlIHNvdXJjZS1hdG9wIGNvbXBvc2l0ZSBvcGVyYXRvciB3aXRoIHRoZSBub3JtYWwgYmxl
bmQgbW9kZS48L3RpdGxlPgotICAgIDwhLS0KLSAgICAgICAgVGhpcyB0ZXN0IG1pbWljcyB0aGUg
c291cmNlLWF0b3AgZXhhbXBsZSBpbWFnZSBpbiB0aGUgQ29tcG9zaXRpbmcgYW5kIEJsZW5kaW5n
IHNwZWM6Ci0gICAgICAgIGh0dHBzOi8vZHZjcy53My5vcmcvaGcvRlhURi9yYXdmaWxlL3RpcC9j
b21wb3NpdGluZy9pbmRleC5odG1sI3BvcnRlcmR1ZmZjb21wb3NpdGluZ29wZXJhdG9yc19zcmNh
dG9wCi0KLSAgICAgICAgSWYgaXQgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIHllbGxvdyBzcXVh
cmUgd2l0aCBhIGJsdWUgc3F1YXJlIGluIGl0cyBsb3dlciByaWdodCBjb3JuZXIuCi0gICAgICAg
IFRoaXMgc2hvdWxkIGJlIGluIHRoZSB1cHBlciBsZWZ0IGNvcm5lciBvZiBhIHdoaXRlIGJveCB3
aXRoIGEgYmxhY2sgYm9yZGVyLgotICAgIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xF
bmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQo
dHJ1ZSk7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgLyogRHJh
d3MgYSBibGFjayBib3JkZXIgYXJvdW5kIHRoZSBzaGFkZWQgZGVzdGluYXRpb24gZGl2LiAqLwot
ICAgICNib3JkZXItY29udGFpbmVyIHsKLSAgICAgICAgd2lkdGg6IDIwMHB4OwotICAgICAgICBo
ZWlnaHQ6IDIwMHB4OwotICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICB9Ci0g
ICAgLyogVGhlIHNoYWRlZCBkaXYuICovCi0gICAgI2Rlc3RpbmF0aW9uIHsKLSAgICAgICAgd2lk
dGg6IDEwMCU7Ci0gICAgICAgIGhlaWdodDogMTAwJTsKLSAgICAgICAgLyogVGhlIGZyYWdtZW50
IHNoYWRlciB3cml0ZXMgYSBibHVlIHNxdWFyZSB0byBjc3NfTWl4Q29sb3IgaW4gdGhlIGxvd2Vy
IHJpZ2h0IGNvcm5lciBvZiB0aGUgZGVzdGluYXRpb24gZGl2LiAqLwotICAgICAgICAvKiBJdCB3
cml0ZXMgdHJhbnNwYXJlbnQgZWxzZXdoZXJlLiAqLwotICAgICAgICAtd2Via2l0LWZpbHRlcjog
Y3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL2NvbXBvc2l0ZS5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAgIH0KLSAg
ICAvKiBEcmF3cyBhIHllbGxvdyBzcXVhcmUgaW4gdGhlIHVwcGVyIGxlZnQgY29ybmVyIG9mIHRo
ZSBkZXN0aW5hdGlvbiBkaXYuICovCi0gICAgLyogVGhlIHJlc3Qgb2YgdGhlIGRlc3RpbmF0aW9u
IGRpdiBpcyB0cmFuc3BhcmVudC4gKi8KLSAgICAjZGVzdGluYXRpb24tb3BhcXVlLWNoaWxkIHsK
LSAgICAgICAgd2lkdGg6IDY3JTsKLSAgICAgICAgaGVpZ2h0OiA2NyU7Ci0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHllbGxvdzsKLSAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5
PgotICAgIDxkaXYgaWQ9ImJvcmRlci1jb250YWluZXIiPgotICAgICAgICA8ZGl2IGlkPSJkZXN0
aW5hdGlvbiI+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkZXN0aW5hdGlvbi1vcGFxdWUtY2hpbGQi
PgotICAgICAgICAgICAgPC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotPC9ib2R5
PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLWNyYXNoLWlubGluZS1jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5saW5l
LWNvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggZTNmNWQ3Ny4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5saW5lLWNvbXB1dGVkLXN0eWxlLWV4cGVjdGVkLnR4dAor
KysgL2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLVRoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IHdl
IGRvbid0IGFzc2VydCB3aGVuIHdlIGdlbmVyYXRlIHRoZSBjb21wdXRlZCBzdHlsZSBmb3IgYW4g
ZWxlbWVudCB0aGF0IG1lZXRzIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKLSgxKSBUaGUgZWxl
bWVudCBoYXMgYSBjdXN0b20gZmlsdGVyIGNvbnRhaW5pbmcgYSB0cmFuc2Zvcm0gcGFyYW1ldGVy
LgotKDIpIFRoZSBlbGVtZW50IGRvZXMgbm90IGhhdmUgYSBDU1MgYm94LiBGb3IgZXhhbXBsZSwg
dGhlIGVsZW1lbnQgaXMgZGlzcGxheTogaW5saW5lLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCi0KLQotUEFTUyBlbGVtZW50IGlzIG5vbi1udWxsLgotUEFTUyBDb21wdXRpbmcgdGhlIGZp
bHRlciBzdHlsZSBmb3IgdGhlIGVsZW1lbnQgZGlkIG5vdCBjcmFzaCB0aGUgYnJvd3Nlci4KLVBB
U1MgZmlsdGVyUHJvcGVydHlDU1NWYWx1ZSBpcyBub24tbnVsbC4KLVBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3Jhc2gtaW5saW5lLWNvbXB1dGVk
LXN0eWxlLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItY3Jhc2gtaW5saW5lLWNvbXB1dGVkLXN0eWxlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGE5MzZmZTYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWNyYXNoLWlubGluZS1jb21wdXRlZC1zdHlsZS5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxo
ZWFkPgotICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikg
ewotICAgICAgICAgICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgdGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgIH0KLSAgICA8
L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpLCB0cmFu
c2Zvcm0gc2NhbGUoMikpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5
PgotICAgIDxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgotICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgotICAgIDxzcGFuIGlkPSJmaWx0ZXItdGFyZ2V0Ij48L3NwYW4+Ci0gICAgPHNjcmlwdD4K
LSAgICAgICAgZGVzY3JpcHRpb24oIlRoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IHdlIGRvbid0IGFz
c2VydCB3aGVuIHdlIGdlbmVyYXRlIHRoZSBjb21wdXRlZCBzdHlsZVwKLSAgICAgICAgICAgIGZv
ciBhbiBlbGVtZW50IHRoYXQgbWVldHMgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOjxici8+XAot
ICAgICAgICAgICAgKDEpIFRoZSBlbGVtZW50IGhhcyBhIGN1c3RvbSBmaWx0ZXIgY29udGFpbmlu
ZyBhIHRyYW5zZm9ybSBwYXJhbWV0ZXIuPGJyLz5cCi0gICAgICAgICAgICAoMikgVGhlIGVsZW1l
bnQgZG9lcyBub3QgaGF2ZSBhIENTUyBib3guIEZvciBleGFtcGxlLCB0aGUgZWxlbWVudCBpcyBk
aXNwbGF5OiBpbmxpbmUuIik7Ci0KLSAgICAgICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZmlsdGVyLXRhcmdldCIpOwotICAgICAgICBzaG91bGRCZU5vbk51bGwoImVs
ZW1lbnQiKTsKLQotICAgICAgICB2YXIgZmlsdGVyUHJvcGVydHlDU1NWYWx1ZSA9IGdldENvbXB1
dGVkU3R5bGUoZWxlbWVudCkuZ2V0UHJvcGVydHlDU1NWYWx1ZSgiLXdlYmtpdC1maWx0ZXIiKTsK
LSAgICAgICAgdGVzdFBhc3NlZCgiQ29tcHV0aW5nIHRoZSBmaWx0ZXIgc3R5bGUgZm9yIHRoZSBl
bGVtZW50IGRpZCBub3QgY3Jhc2ggdGhlIGJyb3dzZXIuIik7Ci0gICAgICAgIHNob3VsZEJlTm9u
TnVsbCgiZmlsdGVyUHJvcGVydHlDU1NWYWx1ZSIpOwotICAgIDwvc2NyaXB0PgotICAgIDxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS1leHBlY3RlZC5w
bmcgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3NzLWtl
eXdvcmQtYXMtcGFyYW1ldGVyLW5hbWUtZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA4MTMxNmZmZDdjYjliMjdkMzQyNjdkOWFhYTVmYmY5NzlhNjMzODhhLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0
ZXJhbCAwCkhjbVY/ZDAwMDAxCgpsaXRlcmFsIDEwNTY5CnpjbWVITlR9eEMhN0BqamIlSkN+dDht
NDcyVDNMZEh0RTtJPWpKbCR0aClVMihuN1NWdGcoa1UlUHteIU50MzxVfAp6aFFXZVJmcHQtY209
KG8oQXRlfFopPlhUS01Cb1FSZFFuN1NITEk+P2VuUD19YkBueyRKVHZuJF5GQX1yZC1ganQKeiVW
SHZUTUl3WV5EJDMxdTJwSzNzKnJKOUQ8aiUkMzQpSThMbVJnKilHWTtGaSZhTzZPRytGSm9tWW5T
N2UzUjlmCnpXeSo5b0B8dFpYWWlfMj1taFo0MSVeNG84SiUtUkJlfSVjfE03USRncXcoeVgrOHZ+
SklgUHQ8PjlNJV9KZkV9Zgp6I2JWV21QdXI1eSh0Q3ooSl5zNGpifFZFN1JpbGlIQUYtdDhjKD9v
SD1HIV92QDhmN1NNTTc0cDclI20wSnltWi0Kek5aPEtqPnJFUDBFNUBJYiMmJk1zOzAmVWFUe2Rp
V0xlIz18am17M2c/MzNDd1VaMDtgYz5PY31TQmNCI1Rre1hOCnoxRSkodm9MYmI2dT5JaihIPkpP
eVZteSRXNWI5Qk1aQj4tR0QrT2h0Q1g3IVVybVRIOylZaG1KSmk8fGJrJDJ6dgp6TF5yMEVwd2FP
Z1MwITJ0PEM4LSgoIWV7U1JGRDV2dX07ZX1ENmBmcWdhUmdib2AjWEJIZH41TE85aWNReEtvO00K
ekttX0U7aCFqSWomP2RnbW0mVl8mQz5RKHxpTUI2e2x0KFdvT1hEQnM9dmlCYUxfM0t3Z2F0IWIj
RkJ2MzY1UGVHCnppOWBaeyshRDswfDVWQ2RTXmMmYTc/cCVaIUN2MFQzTXl8KTJ8cDJJSX50NzhS
YnI4bF40NnN8TmRaYjJrRVlvWQp6O05AczNxYWp0LW8rZWZHREUyZlI3IXAkSnk8YUoqTXpvQDJA
aSE5UyNRNUgqdnROP0k2dzFPcWdBITI5eE8zbyQKenE+R3ReT3JmbEpVRSR3R3NHZ2EqMUNwWCQ8
MHklPk5JLSQyJSspX1A+c21VWVkxQS1QcjMzNkJnYGh4QzImQCFMCnpWRWEoV0RIP0BEaShIXlMk
T1YkRCFhMFNnYUNsPklxTk5PdWBOMTAkKzxvOWVzS0c1Kyl4Ykw3VT4lNSgyVXJKUwp6OVNDPDJ0
T0t3UGdzfXxQMGF5cDM1Q0dOejBxYTFOVlpiXjc+cCZEMiE4IW96QVhzcSk+ajEwK0BlI20oVyp6
KWkKWjhYOTZCPzB2WldQSkExUURvVSUoa0JYYW17e3ElSV8mNUxuCgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1rZXl3b3JkLWFz
LXBhcmFtZXRlci1uYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS1leHBlY3Rl
ZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMTM3ODkuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1rZXl3
b3JkLWFzLXBhcmFtZXRlci1uYW1lLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xICsw
LDAgQEAKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLWNzcy1rZXl3b3JkLWFzLXBhcmFtZXRlci1uYW1lLmh0bWwgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFyYW1l
dGVyLW5hbWUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2YwZGM3Mi4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
Y3NzLWtleXdvcmQtYXMtcGFyYW1ldGVyLW5hbWUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDI2
ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVz
dHMgdGhhdCBhIENTUyBrZXl3b3JkIGNhbiBiZSBhIHBhcmFtZXRlciBuYW1lLjwvdGl0bGU+Ci0g
ICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZp
bHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0
PgotICAgIDxzdHlsZT4KLSAgICAvKiBUZXN0cyB0aGF0IHRoZSBDU1Mga2V5d29yZCAiYmFja2dy
b3VuZCIgY2FuIGJlIGEgcGFyYW1ldGVyIG5hbWUuICovCi0gICAgLnNoYWRlZCB7Ci0gICAgICAg
IHdpZHRoOiAxMDBweDsKLSAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgLyogVGhlIHNo
YWRlciBzaG91bGQgcmVwbGFjZSB0aGUgZGl2J3MgcmVkIGJhY2tncm91bmQgd2l0aCBncmVlbi4g
Ki8KLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOwotICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKG5vbmUgdXJsKCcuLi9yZXNvdXJjZXMvY3NzLWtleXdvcmQtYXMtcGFyYW1ldGVy
LW5hbWUuZnMnKSwgYmFja2dyb3VuZCAwIDEgMCAxKTsKLSAgICB9Ci0gICAgPC9zdHlsZT4KLTwv
aGVhZD4KLTxib2R5PgotICAgIDxkaXYgY2xhc3M9InNoYWRlZCI+PC9kaXY+Ci08L2JvZHk+Ci08
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItZGV0YWNoZWQtbWVzaC13aXRoLW1lc2gtYm94LXR5cGUtZXhwZWN0ZWQuaHRtbCBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hlZC1t
ZXNoLXdpdGgtbWVzaC1ib3gtdHlwZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAyODZjNGQyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hlZC1tZXNoLXdpdGgtbWVzaC1ib3gtdHlwZS1l
eHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTcgKzAsMCBAQAotPCFkb2N0eXBlIGh0
bWw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgYSBkZXRhY2hlZCBpZGVu
dGlmaWVyIGFmdGVyIHRoZSBtZXNoIGJveCB0eXBlIGlzIGludGVycHJldGVkIGNvcnJlY3RseS48
L3RpdGxlPgotICAgIDwhLS0gSWYgdGhlIHRlc3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIHNp
bmdsZSBncmVlbiBzcXVhcmUuIC0tPgotICAgIDxzdHlsZT4KLSAgICAgICAgI2ZpbHRlci10YXJn
ZXQgewotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBw
eDsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZjA7Ci0gICAgICAgIH0KLSAgICA8
L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0iZmlsdGVyLXRhcmdldCI+PC9k
aXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItZGV0YWNoZWQtbWVzaC13aXRoLW1lc2gtYm94LXR5cGUu
aHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1kZXRh
Y2hlZC1tZXNoLXdpdGgtbWVzaC1ib3gtdHlwZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBhOTVhYzQ4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1kZXRhY2hlZC1tZXNoLXdpdGgtbWVzaC1ib3gtdHlwZS5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsNDEgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4K
LTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgYSBkZXRhY2hlZCBpZGVudGlmaWVyIGFmdGVy
IHRoZSBtZXNoIGJveCB0eXBlIGlzIGludGVycHJldGVkIGNvcnJlY3RseS48L3RpdGxlPgotICAg
IDwhLS0gSWYgdGhlIHRlc3QgcGFzc2VzLCB5b3Ugc2hvdWxkIHNlZSBhIHNpbmdsZSBncmVlbiBz
cXVhcmUuIC0tPgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikg
ewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQot
ICAgICAgICAKLSAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgIHsKLSAgICAgICAg
ICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgc2hhZGVycyBkb3dubG9h
ZC4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0KLSAgICA8L3NjcmlwdD4K
LSAgICA8c3R5bGU+Ci0gICAgICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgICAgIHdpZHRo
OiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiByZWQ7Ci0gICAgICAgICAgICAvKiAKLSAgICAgICAgICAgICAgICBUaGlzIGN1
c3RvbSBmaWx0ZXIncyB2ZXJ0ZXggc2hhZGVyIGRlZmluZXMgYV90cmlhbmdsZUNvb3JkLCB3aGlj
aCBpcyBvbmx5IGF2YWlsYWJsZSB3aXRoIGRldGFjaGVkIG1lc2hlcy4KLSAgICAgICAgICAgICAg
ICBUaHVzLCB0aGlzIGN1c3RvbSBmaWx0ZXIgd2lsbCBvbmx5IGV4ZWN1dGUgaWYgdGhlIG1lc2gg
aXMgZGV0YWNoZWQuCi0gICAgICAgICAgICAgICAgSWYgdGhlIGN1c3RvbSBmaWx0ZXIgZXhlY3V0
ZXMsIGl0cyBmcmFnbWVudCBzaGFkZXIgd2lsbCB0dXJuIHRoaXMgZWxlbWVudCBncmVlbi4KLSAg
ICAgICAgICAgICAqLwotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoLi4v
cmVzb3VyY2VzL2EtdHJpYW5nbGUtY29vcmQtZGVmaW5lZC52cykgCi0gICAgICAgICAgICAgICAg
bWl4KHVybCguLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzKSBub3JtYWwgc291cmNlLWF0b3ApLAot
ICAgICAgICAgICAgICAgIDEgMSBib3JkZXItYm94IGRldGFjaGVkLAotICAgICAgICAgICAgICAg
IG1peF9jb2xvciAwIDEgMCAxCi0gICAgICAgICAgICApOwotICAgICAgICB9Ci0gICAgPC9zdHls
ZT4KLTwvaGVhZD4KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICA8ZGl2IGlkPSJmaWx0
ZXItdGFyZ2V0Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1tYXROLWV4cGVjdGVkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWF0Ti1leHBl
Y3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5ODcwZDRlLi4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1tYXRO
LWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi08IWRvY3R5cGUg
aHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdHMgbWF0TigpIGZ1
bmN0aW9ucyBpbiBjdXN0b20gZmlsdGVyczwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAg
ICAgICAgICNmaWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4Owot
ICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5k
LWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4K
LSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2
IGlkPSJmaWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWF0Ti5o
dG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW1hdE4u
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWI1MTkxZi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWF0Ti5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsMzkgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4K
LSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3RzIG1hdE4oKSBmdW5jdGlvbnMgaW4gY3Vz
dG9tIGZpbHRlcnM8L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3Zl
cnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
d2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlvbiBy
dW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1
biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4KLSAgICAgICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+
Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNmaWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAg
ICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAg
ICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgICAgICAgICAgICAgLXdl
YmtpdC1maWx0ZXI6IGN1c3RvbShub25lIHVybCgnLi4vcmVzb3VyY2VzL2ZyYWdtZW50LW1hdE4u
ZnMnKSwKLSAgICAgICAgICAgICAgICAgICAgbTEgbWF0MigxLCAxLCAwLCAwKSwKLSAgICAgICAg
ICAgICAgICAgICAgbTIgbWF0MygxLCAwLCAxLCAwLCAxLCAxLCAwLCAxLCAwKSwKLSAgICAgICAg
ICAgICAgICAgICAgbTMgbWF0NCgxLCAxLCAwLCAwLCAwLCAxLCAxLCAwLCAxLCAwLCAwLCAxLCAx
LCAxLCAxLCAxKQotICAgICAgICAgICAgICAgICk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwv
c3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAg
ICAgPCEtLQotICAgICAgICAgICAgQSAxMDB4MTAwcHggcmVkIGRpdiBpcyBjb2xvdXJlZCBsaW1l
IGJ5IGZyYWdtZW50LW1hdE4uZnMsIGEgZnJhZ21lbnQgc2hhZGVyLgotICAgICAgICAgICAgRmFp
bHMgaWYgdGhlIGRpdiBzdGF5cyByZWQuCi0gICAgICAgIC0tPgotICAgICAgICA8ZGl2IGlkPSJm
aWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWVzaC1jb2x1bW4t
cm93LW9yZGVyLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItbWVzaC1jb2x1bW4tcm93LW9yZGVyLWV4cGVjdGVkLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA5YjBjODYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW1lc2gtY29sdW1uLXJvdy1vcmRl
ci1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzIgKzAsMCBAQAotPCFkb2N0eXBl
IGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgaW4gQ1NTLCB0aGUg
dmVydGV4IG1lc2ggZGltZW5zaW9ucyBhcmUgc3BlY2lmaWVkIGluIGNvbHVtbiwgcm93IG9yZGVy
LjwvdGl0bGU+Ci0gICAgPCEtLQotICAgICAgICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBm
b3IgdGhlIHRlc3QuCi0gICAgICAgIElmIHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUg
YSBjaGVja2JvYXJkIHdpdGggMiBjb2x1bW5zIGFuZCA0IHJvd3Mgb2YgYmxhY2sgYW5kIGdyZWVu
IHNxdWFyZXMuCi0gICAgLS0+Ci0gICAgPHN0eWxlPgotICAgIGJvZHkgewotICAgICAgICB3aWR0
aDogMTAwcHg7Ci0gICAgfQotICAgIGRpdiB7Ci0gICAgICAgIGZsb2F0OiBsZWZ0OwotICAgICAg
ICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgIH0KLSAgICBkaXY6bnRo
LWNoaWxkKDRuKSwgZGl2Om50aC1jaGlsZCg0bisxKSB7IGJhY2tncm91bmQtY29sb3I6ICMwMDAg
fQotICAgIGRpdjpudGgtY2hpbGQoNG4rMiksIGRpdjpudGgtY2hpbGQoNG4rMykgeyBiYWNrZ3Jv
dW5kLWNvbG9yOiAjMGYwIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRp
dj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rp
dj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLSAg
ICA8ZGl2PjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW1lc2gtY29sdW1uLXJvdy1vcmRlci5o
dG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW1lc2gt
Y29sdW1uLXJvdy1vcmRlci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5MGI3
NGQ5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1tZXNoLWNvbHVtbi1yb3ctb3JkZXIuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDMz
ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVz
dCB0aGF0IGluIENTUywgdGhlIHZlcnRleCBtZXNoIGRpbWVuc2lvbnMgYXJlIHNwZWNpZmllZCBp
biBjb2x1bW4sIHJvdyBvcmRlci48L3RpdGxlPgotICAgIDwhLS0gSWYgdGhlIHRlc3QgcGFzc2Vz
LCB5b3Ugc2hvdWxkIHNlZSBhIGNoZWNrYm9hcmQgd2l0aCAyIGNvbHVtbnMgYW5kIDQgcm93cyBv
ZiBibGFjayBhbmQgZ3JlZW4gc3F1YXJlcy4gLS0+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVy
cmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJH
TEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGls
RG9uZSgpOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkK
LSAgICAgICAgewotICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVy
IHRoZSBzaGFkZXJzIGRvd25sb2FkLgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAg
ICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAjZmlsdGVyLXRhcmdldCB7Ci0g
ICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAg
ICBoZWlnaHQ6IDIwMHB4OwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgICAg
IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNlcy9jaGVja2VyYm9hcmQudnMp
IG1peCh1cmwoLi4vcmVzb3VyY2VzL3ZhcnlpbmctbWl4LWNvbG9yLmZzKSBub3JtYWwgc291cmNl
LWF0b3ApLCAyIDQgZGV0YWNoZWQpOwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgIDxkaXYgaWQ9ImZpbHRlci10YXJnZXQiPjwvZGl2
PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLW1peC1iaW5kaW5ncy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRpbmdzLWV4cGVj
dGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODdkY2U0ZC4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbWl4LWJp
bmRpbmdzLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLVRlc3Qg
bWl4KCkgZnVuY3Rpb24gSlMgYmluZGluZ3MuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
LQotCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKG1peEZ1bmN0aW9uKSBpcyAnV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZScKLVBBU1MganNXcmFwcGVyQ2xhc3MobWl4RnVuY3Rpb24uX19wcm90b19fKSBpcyAn
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZVByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
bWl4RnVuY3Rpb24uY29uc3RydWN0b3IpIGlzICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlQ29u
c3RydWN0b3InCi1QQVNTIG1peEZ1bmN0aW9uQ29udGVudCBpcyAibWl4KHVybChjb2xvci1vZmZz
ZXQuZnMpKSIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVU
RQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItbWl4LWJpbmRpbmdzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItbWl4LWJpbmRpbmdzLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDk2MTVjNDEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLW1peC1iaW5kaW5ncy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEs
MTIgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4i
PgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24i
PjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10
ZXN0cy9jdXN0b20tZmlsdGVyLW1peC1iaW5kaW5ncy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItbm8tZWxlbWVudC10ZXh0dXJlLWFjY2Vzcy1leHBlY3RlZC5odG1sIGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vLWVsZW1lbnQtdGV4
dHVyZS1hY2Nlc3MtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MWQ4NDA0OC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItbm8tZWxlbWVudC10ZXh0dXJlLWFjY2Vzcy1leHBlY3RlZC5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsMjYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGFuIGF1dGhvcidzIHNoYWRlciBjb2RlIGNhbm5vdCBz
YW1wbGUgYSBzaGFkZWQgZWxlbWVudCdzIHRleHR1cmUuPC90aXRsZT4KLSAgICA8IS0tIAotICAg
ICAgICBUaGlzIGlzIHRoZSByZWZlcmVuY2UgZmlsZSBmb3IgdGhlIHRlc3QuCi0gICAgICAgIElm
IHRoZSB0ZXN0IHBhc3NlcywgeW91IHNob3VsZCBzZWUgNiB2ZXJ0aWNhbGx5LXN0YWNrZWQgZ3Jl
ZW4gYm94ZXMuCi0gICAgLS0+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7Ci0gICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAg
ICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0gICAgfQotICAgIDwvc3R5
bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0g
ICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRp
dj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUtYWNjZXNzLmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm8tZWxl
bWVudC10ZXh0dXJlLWFjY2Vzcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1
YTg0OTM2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1uby1lbGVtZW50LXRleHR1cmUtYWNjZXNzLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSw0OCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRp
dGxlPlRlc3RzIHRoYXQgYW4gYXV0aG9yJ3Mgc2hhZGVyIGNvZGUgY2Fubm90IHNhbXBsZSBhIHNo
YWRlZCBlbGVtZW50J3MgdGV4dHVyZS48L3RpdGxlPgotICAgIDwhLS0gSWYgdGhlIHRlc3QgcGFz
c2VzLCB5b3Ugc2hvdWxkIHNlZSA2IHZlcnRpY2FsbHktc3RhY2tlZCBncmVlbiBib3hlcy4gLS0+
Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3Zl
cnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICB9Ci0g
ICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7Ci0gICAgICAgIC8qIFRoZSBzaGFk
ZXJzIHdpbGwgdHVybiB0aGUgZWxlbWVudCdzIGNvbG9yIGZyb20gZ3JlZW4gdG8gcmVkIGlmIHRo
ZXkgYXJlIGFibGUgdG8gc2FtcGxlIGl0cyB0ZXh0dXJlLiAqLwotICAgICAgICBiYWNrZ3JvdW5k
LWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsKLSAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgIGhl
aWdodDogNTBweDsKLSAgICAgICAgbWFyZ2luOiAxMHB4OwotICAgIH0KLSAgICAuc2FtcGxlLXUt
dGV4dHVyZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvcGFzcy10ZXgtY29vcmQudnMnKSB1cmwoJy4uL3Jlc291cmNlcy9zYW1wbGUtdS10ZXh0dXJl
LmZzJykpOwotICAgIH0KLSAgICAuc2FtcGxlLXUtdGV4dHVyZS1taXggewotICAgICAgICAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzJykg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL3NhbXBsZS11LXRleHR1cmUtbWl4LmZzJykgbm9ybWFsIHNv
dXJjZS1hdG9wKSk7Ci0gICAgfQotICAgIC5zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1cmUg
ewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3Mt
dGV4LWNvb3JkLnZzJykgdXJsKCcuLi9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10
ZXh0dXJlLmZzJykpOyAgCi0gICAgfQotICAgIC5zYW1wbGUtdW5kZWZpbmVkLWNzcy11LXRleHR1
cmUtbWl4IHsKLSAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNl
cy9wYXNzLXRleC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9zYW1wbGUtdW5kZWZp
bmVkLWNzcy11LXRleHR1cmUtbWl4LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgfQot
ICAgIC5zYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlIHsKLSAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRleC1jb29yZC52cycpIHVybCgnLi4v
cmVzb3VyY2VzL3NhbXBsZS1kZWZpbmVkLWNzcy11LXRleHR1cmUuZnMnKSk7ICAKLSAgICB9Ci0g
ICAgLnNhbXBsZS1kZWZpbmVkLWNzcy11LXRleHR1cmUtbWl4IHsKLSAgICAgICAgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9wYXNzLXRleC1jb29yZC52cycpIG1peCh1
cmwoJy4uL3Jlc291cmNlcy9zYW1wbGUtZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peC5mcycpIG5v
cm1hbCBzb3VyY2UtYXRvcCkpOwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+
Ci0gICAgPGRpdiBjbGFzcz0ic2FtcGxlLXUtdGV4dHVyZSI+PC9kaXY+Ci0gICAgPGRpdiBjbGFz
cz0ic2FtcGxlLXUtdGV4dHVyZS1taXgiPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9InNhbXBsZS11
bmRlZmluZWQtY3NzLXUtdGV4dHVyZSI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0ic2FtcGxlLXVu
ZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0ic2FtcGxl
LWRlZmluZWQtY3NzLXUtdGV4dHVyZSI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0ic2FtcGxlLWRl
ZmluZWQtY3NzLXUtdGV4dHVyZS1taXgiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNl
cGFyYWJsZS1ibGVuZC1tb2RlLWNvbG9yLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29s
b3ItZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTk2M2E2MS4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3ItZXhwZWN0ZWQuaHRtbAorKysgL2Rldi9u
dWxsCkBAIC0xLDM2ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgot
PGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJjZSBhbmQgdGhlIGJh
Y2tkcm9wIHdpdGggdGhlIGNvbG9yIGJsZW5kIG1vZGUuPC90aXRsZT4KLSAgICA8c3R5bGUgdHlw
ZT0idGV4dC9jc3MiPgotICAgICAgICAvKiBUaGVzZSBhcmUgZXhhY3RseSB0aGUgY29sb3IgdmFs
dWVzIHdlIGV4cGVjdC4gU29tZSBwbGF0Zm9ybXMgbWF5IGhhdmUgc2xpZ2h0bHkgZGlmZmVyZW50
Ci0gICAgICAgICAgIGNvbG9yIHJlc3VsdC4gKi8KLSAgICAgICAgI3NvbGlkLXNvbGlkIHsKLSAg
ICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDgsIDE1NywgMjU1KTsKLSAgICAgICAg
ICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgIH0K
LSAgICAgICAgI2FscGhhLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJn
YigxNjcsIDE5MiwgMjQyKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAg
IGhlaWdodDogMTAwcHg7Ci0gICAgICAgIH0KLSAgICAgICAgI3NvbGlkLWFscGhhIHsKLSAgICAg
ICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxNjksIDE0MiwgMTY2KTsKLSAgICAgICAgICAg
IHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgIH0KLSAg
ICAgICAgI2FscGhhLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigy
MDUsIDE5MiwgMjA0KTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhl
aWdodDogMTAwcHg7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0g
ICAgPGRpdiBpZD0ic29saWQtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlk
Ij48L2Rpdj4KLSAgICA8ZGl2IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0i
YWxwaGEtYWxwaGEiPjwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVu
ZC1tb2RlLWNvbG9yLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29sb3IuaHRtbApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggM2MzNzA0MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtY29s
b3IuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEyOSArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4K
LTxodG1sIGxhbmc9ImVuIj4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgYmxlbmRzIHRo
ZSBzb3VyY2UgYW5kIHRoZSBiYWNrZHJvcCB3aXRoIHRoZSBjb2xvciBibGVuZCBtb2RlLjwvdGl0
bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1
c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICB9
Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI3Nv
bGlkLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5MCUsIDUwJSwg
MzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAw
cHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4v
cmVzb3VyY2VzL21peC1jb2xvci5mcycpIGNvbG9yIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAu
MiAwLjQgMC44IDEuMCk7Ci0gICAgICAgIH0KLSAgICAgICAgI2FscGhhLXNvbGlkIHsKLSAgICAg
ICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTAlLCA1MCUsIDMwJSwgMC41KTsKLSAgICAg
ICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAg
ICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21p
eC1jb2xvci5mcycpIGNvbG9yIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDEu
MCk7Ci0gICAgICAgIH0KLSAgICAgICAgI3NvbGlkLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYig5MCUsIDUwJSwgMzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBw
eDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGNvbG9y
IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDAuNSk7Ci0gICAgICAgIH0KLSAg
ICAgICAgI2FscGhhLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEo
OTAlLCA1MCUsIDMwJSwgMC41KTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAg
ICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5v
bmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIGNvbG9yIHNvdXJjZS1hdG9w
KSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDAuNSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgot
PC9oZWFkPgotPGJvZHk+Ci08IS0tCi0gICAgVGhlIGZvbGxvd2luZyBwcm9vZiBhcHBsaWVzIHRv
IHRoZSBmaXJzdCBjYXNlICgjc29saWQtc29saWQpIHdoZXJlIGJvdGggdGhlIGJhY2tkcm9wIGFu
ZCB0aGUKLSAgICBzb3VyY2UgYXJlIHNvbGlkLgotCi0gICAgSW4gdGhpcyB0ZXN0IHRoZSBmb2xs
b3dpbmcgY29tYmluYXRpb25zIGFyZSBhbHNvIHRlc3RlZDoKLSAgICAgICAgQmFja2Ryb3Agd2l0
aCAwLjUgYWxwaGEgYmxlbmRlZCB3aXRoIHNvbGlkIHNvdXJjZQotICAgICAgICBTb2xpZCBiYWNr
ZHJvcCBibGVuZGVkIHdpdGggc291cmNlIHdpdGggMC41IGFscGhhCi0gICAgICAgIEJhY2tkcm9w
IHdpdGggMC41IGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0aCAwLjUgYWxwaGEKLSAgICBUaGUgdW5k
ZXJsYXlpbmcgcHJvb2Ygb2YgdGhlIGFib3ZlIG1lbnRpb25lZCBjYXNlcyBpcyB0aGUgc2FtZTog
dGhlIGNvbG9ycyBhcmUgcHJlbXVsdGlwbGllZAotICAgIGFuZCB0aGVuIGJsZW5kZWQgdG9nZXRo
ZXIuCi0KLSAgICBUaGUgZmluYWwgY29sb3Igb2YgI3NvbGlkLXNvbGlkIGRlcGVuZHMgb24gdGhl
ICJjb2xvciIgYmxlbmQgbW9kZSwgd2hpY2ggaXMgYSBub24tc2VwYXJhYmxlCi0gICAgYmxlbmQg
bW9kZS4gVGhpcyBtZWFucyB0aGF0IGNvbG9ycyBhcmUgYmxlbmRlZCB0b2dldGhlciBhcyBhIHdo
b2xlLCBub3QgY29tcG9uZW50IGJ5IGNvbXBvbmVudC4KLQotICAgIFRoZSBmb3JtdWxhIGZvciB0
aGlzIGJsZW5kIG1vZGUgaXM6Ci0gICAgICAgIENyID0gQihDYiwgQ3MpID0gU2V0THVtKENzLCBM
dW0oQ2IpKQotCi0gICAgV2l0aDoKLSAgICAgICAgQ3I6IHRoZSByZXN1bHRpbmcgY29sb3IKLSAg
ICAgICAgQ2I6IHRoZSBiYWNrZHJvcCBjb2xvciwgd2hpY2ggaXMgI3NvbGlkLXNvbGlkICgib3Jp
Z2luYWwgRE9NIGVsZW1lbnQgY29sb3IiKQotICAgICAgICBDczogdGhlIHNvdXJjZSBjb2xvciwg
d2hpY2ggaXMgbWl4X2NvbG9yCi0gICAgICAgIEx1bShDYik6IHRoZSBsdW1pbm9zaXR5IG9mIENi
LiBMdW1pbm9zaXR5IGZvciBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZpbmVkIGJ5Ci0gICAgICAg
ICAgIEx1bShDKTogMC4zICogQ3JlZCArIDAuNTkgKiBDZ3JlZW4gKyAwLjExICogQ2JsdWUKLSAg
ICAgICAgU2V0THVtKENzLCBMdW0oQ2IpKTogdGhlIGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgbHVt
aW5vc2l0eS4KLQotICAgIFRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdGhlIGx1bWlub3NpdHkgbCBv
biB0aGUgY29sb3IgQyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBieToKLQotICAgICAgICBTZXRMdW0o
QywgbCkKLSAgICAgICAgICAgIGQgPSBsIC0gTHVtKEMpCi0gICAgICAgICAgICBDcmVkID0gQ3Jl
ZCArIGQKLSAgICAgICAgICAgIENncmVlbiA9IENncmVlbiArIGQKLSAgICAgICAgICAgIENibHVl
ID0gQ2JsdWUgKyBkCi0gICAgICAgICAgICByZXR1cm4gQ2xpcENvbG9yKEMpCi0KLSAgICBBdCB0
aGlzIHBvaW50IHRoZSBjb2xvciBDIGhhcyB0byBiZSBjbGlwcGVkIGJldHdlZW4gWzAuLjFdICBi
eSB0aGUgQ2xpcENvbG9yIGZ1bmN0aW9uLCB3aGljaCBpcwotICAgIGdlbmVyYWxseSBkZWZpbmVk
IGJ5OgotCi0gICAgICAgIENsaXBDb2xvcihDKQotICAgICAgICAgICAgbCA9IEx1bShDKQotICAg
ICAgICAgICAgbiA9IG1pbihDcmVkLCBDZ3JlZW4sIENibHVlKQotICAgICAgICAgICAgeCA9IG1h
eChDcmVkLCBDZ3JlZW4sIENibHVlKQotICAgICAgICAgICAgaWYgbiA8IDAuMAotICAgICAgICAg
ICAgICAgIENyZWQgPSBsICsgKCgoQ3JlZCAtIGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAg
ICAgICAgIENncmVlbiA9IGwgKyAoKChDZ3JlZW4gLSBsKSAqIGwpIC8gKGwgLSBuKSkKLSAgICAg
ICAgICAgICAgICBDYmx1ZSA9IGwgKyAoKChDYmx1ZSAtIGwpICogbCkgLyAobCAtIG4pKQotICAg
ICAgICAgICAgaWYgeCA+IDEuMAotICAgICAgICAgICAgICAgIENyZWQgPSBsICsgKCgoQ3JlZCAt
IGwpICogKDEgLSBsKSkgLyAoeCAtIGwpKQotICAgICAgICAgICAgICAgIENncmVlbiA9IGwgKyAo
KChDZ3JlZW4gLSBsKSAqICgxIC0gbCkpIC8gKHggLSBsKSkKLSAgICAgICAgICAgICAgICBDYmx1
ZSA9IGwgKyAoKChDYmx1ZSAtIGwpICogKDEgLSBsKSkgLyAoeCAtIGwpKQotICAgICAgICAgICAg
cmV0dXJuIEMKLQotICAgIEluIHRoaXMgdGVzdCBjYXNlOgotICAgICAgICBMdW0oQ2IpID0gMC4z
ICogMC45ICsgMC41OSAqIDAuNSArIDAuMTEgKiAwLjMKLSAgICAgICAgTHVtKENiKSA9IDAuMjcg
KyAwLjI5NSArIDAuMDMzCi0gICAgICAgIEx1bShDYikgPSAwLjU5OAotCi0gICAgICAgIEx1bShD
cykgPSAwLjMgKiAwLjIgKyAwLjU5ICogMC40ICsgMC4xMSAqIDAuOAotICAgICAgICBMdW0oQ3Mp
ID0gMC4wNiArIDAuMjM2ICsgMC4wODgKLSAgICAgICAgTHVtKENzKSA9IDAuMzg0Ci0KLSAgICAg
ICAgQ3IgPSBTZXRMdW0oQ3MsIDAuNTk4KQotICAgICAgICAgICAgZCA9IDAuNTk4IC0gTHVtKENz
KQotICAgICAgICAgICAgZCA9IDAuNTk4IC0gMC4zODQKLSAgICAgICAgICAgIGQgPSAwLjIxNAot
ICAgICAgICAgICAgQ3JlZCA9IDAuMiArIDAuMjE0ID0gMC40MTQKLSAgICAgICAgICAgIEdyZWVu
ID0gMC40ICsgMC4yMTQgPSAwLjYxNAotICAgICAgICAgICAgQ2JsdWUgPSAwLjggKyAwLjIxNCA9
IDEuMDE0Ci0gICAgICAgICAgICByZXR1cm4gQ2xpcENvbG9yKDAuNDE0LCAwLjYxNCwgMS4wMTQp
Ci0KLSAgICAgICAgQ2xpcENvbG9yKDAuNDE0LCAwLjYxNCwgMS4wMTQpCi0gICAgICAgICAgICBs
ID0gMC4zICogMC40MTQgKyAwLjU5ICogMC42MTQgKyAwLjExICogMS4xMDE0ID0gMC4xMjQyICsg
MC4zNjIyNiArIDAuMTIxMTU0ID0gMC42MDc2MTQKLSAgICAgICAgICAgIG4gPSBtaW4oMC40MTQs
IDAuNjE0LCAxLjAxNCkgPSAwLjQxNAotICAgICAgICAgICAgeCA9IG1heCgwLjQxNCwgMC42MTQs
IDEuMDE0KSA9IDEuMDE0Ci0gICAgICAgICAgICB4ID4gMS4wCi0gICAgICAgICAgICAgICAgQ3Jl
ZCA9IDAuNjA3NjE0ICsgKCgoMC40MTQgLSAwLjYwNzYxNCkgKiAoMSAtIDAuNjA3NjE0KSkgLyAo
MS4wMTQgLSAwLjYwNzYxNCkpID0gCi0gICAgICAgICAgICAgICAgICAgICA9IDAuNjA3NjE0ICsg
KCgtMC4xOTM2MTQgKiAwLjM5MjM4NikgLyAwLjQwNjM4NikgPSAwLjYwNzYxNCAtICgwLjA3NTk3
MTQyIC8gMC40MDYzODYpID0gMC42MDc2MTQgLSAwLjE4Njk0Mzk5ID0gMC40MjA2NzAwMQotICAg
ICAgICAgICAgICAgIENncmVlbiA9IDAuNjA3NjE0ICsgKCgoMC42MTQgLSAwLjYwNzYxNCkgKiAo
MSAtIDAuNjA3NjE0KSkgLyAoMS4wMTQgLSAwLjYwNzYxNCkpID0KLSAgICAgICAgICAgICAgICAg
ICAgICAgPSAwLjYwNzYxNCArICgoMC4wMDMzODYgKiAwLjM5MjM4NikgLyAwLjQwNjM4NiA9IDAu
NjA3NjE0ICsgKDAuMDAxMzI4NjIgLyAwLjQwNjM4NikgPSAwLjYwNzYxNCArIDAuMDAzMjY5MzUg
PSAwLjYxMDg4MzM1Ci0gICAgICAgICAgICAgICAgQ2JsdWUgPSAwLjYwNzYxNCArICgoKDEuMDE0
IC0gMC42MDc2MTQpICogKDEgLSAwLjYwNzYxNCkpIC8gKDEuMDE0IC0gMC42MDc2MTQpID0KLSAg
ICAgICAgICAgICAgICAgICAgICA9IDAuNjA3NjE0ICsgKCgwLjQwNjM4NiAqIDAuMzkyMzg2KSAv
IDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgKDAuMTU5NDYwMTggLyAwLjQwNjM4NikgPSAwLjYwNzYx
NCArIDAuMzkyMzg2MDEgPSAxLjAKLSAgICAgICAgICAgIHJldHVybiAoMC40MiwgMC42MSwgMS4w
KQotCi0gICAgVGhpcyB2YWx1ZSBpcyBlcXVpdmFsZW50IHRvICgxMDgsIDE1NywgMjU1KSwgd2hp
Y2ggaXMgdGhlIGV4cGVjdGVkIGNvbG9yLgotICAgIFRoaXMgaXMgdGhlIGV4YWN0IGNvbG9yIHZh
bHVlLCBvdGhlciBwb3J0cyBtaWdodCBleHBlcmllbmNlIHNsaWdodCBkaWZmZXJlbmNlcy4KLS0t
PgotICAgIDxkaXYgaWQ9InNvbGlkLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1z
b2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0ic29saWQtYWxwaGEiPjwvZGl2PgotICAgIDxkaXYg
aWQ9ImFscGhhLWFscGhhIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUt
YmxlbmQtbW9kZS1odWUtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1odWUtZXhwZWN0ZWQu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2YxN2Y4Ny4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJh
YmxlLWJsZW5kLW1vZGUtaHVlLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNiAr
MCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9ImVuIj4KLTxoZWFkPgotICAgIDx0
aXRsZT5UZXN0IHRoYXQgYmxlbmRzIHRoZSBzb3VyY2UgYW5kIHRoZSBiYWNrZHJvcCB3aXRoIHRo
ZSBodWUgYmxlbmQgbW9kZS48L3RpdGxlPgotICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0g
ICAgICAgIC8qIFRoZXNlIGFyZSBleGFjdGx5IHRoZSBjb2xvciB2YWx1ZXMgd2UgZXhwZWN0LiBT
b21lIHBsYXRmb3JtcyBtYXkgaGF2ZSBzbGlnaHQgZGlmZmVyZW50Ci0gICAgICAgICAgIGNvbG9y
IHJlc3VsdC4gKi8KLSAgICAgICAgI3NvbGlkLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYigxMDgsIDE1NywgMjU1KTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsK
LSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgIH0KLSAgICAgICAgI2FscGhhLXNv
bGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxNjcsIDE5MiwgMjQyKTsK
LSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0g
ICAgICAgIH0KLSAgICAgICAgI3NvbGlkLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IHJnYigxNjksIDE0MiwgMTY2KTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAg
ICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgIH0KLSAgICAgICAgI2FscGhhLWFscGhh
IHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyMDUsIDE5MiwgMjA0KTsKLSAg
ICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAg
ICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBpZD0ic29saWQt
c29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2
IGlkPSJzb2xpZC1hbHBoYSI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxwaGEtYWxwaGEiPjwvZGl2
PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLWh1ZS5odG1sIGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJs
ZS1ibGVuZC1tb2RlLWh1ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZDE3
MTE4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1odWUuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDE1MSArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sIGxhbmc9ImVuIj4KLTxoZWFk
PgotICAgIDx0aXRsZT5UZXN0IHRoYXQgYmxlbmRzIHRoZSBzb3VyY2UgYW5kIHRoZSBiYWNrZHJv
cCB3aXRoIHRoZSBodWUgYmxlbmQgbW9kZS48L3RpdGxlPgotICAgIDxzY3JpcHQ+Ci0gICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsK
LSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0
V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHls
ZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNzb2xpZC1zb2xpZCB7Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2IoOTAlLCA1MCUsIDMwJSk7Ci0gICAgICAgICAgICB3aWR0aDog
MTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBo
dWUgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsKLSAgICAgICAgfQot
ICAgICAgICAjYWxwaGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdi
YSg5MCUsIDUwJSwgMzAlLCAwLjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20o
bm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgaHVlIHNvdXJjZS1hdG9w
KSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDEuMCk7Ci0gICAgICAgIH0KLSAgICAgICAgI3NvbGlk
LWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5MCUsIDUwJSwgMzAl
KTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7
Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVz
b3VyY2VzL21peC1jb2xvci5mcycpIGh1ZSBzb3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjIgMC40
IDAuOCAwLjUpOwotICAgICAgICB9Ci0gICAgICAgICNhbHBoYS1hbHBoYSB7Ci0gICAgICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDkwJSwgNTAlLCAzMCUsIDAuNSk7Ci0gICAgICAgICAg
ICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29s
b3IuZnMnKSBodWUgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41KTsKLSAg
ICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBUaGUgZm9s
bG93aW5nIHByb29mIGFwcGxpZXMgdG8gdGhlIGZpcnN0IGNhc2UgKCNzb2xpZC1zb2xpZCkgd2hl
cmUgYm90aCB0aGUgYmFja2Ryb3AgYW5kIHRoZQotICAgIHNvdXJjZSBhcmUgc29saWQuCi0KLSAg
ICBJbiB0aGlzIHRlc3QgdGhlIGZvbGxvd2luZyBjb21iaW5hdGlvbnMgYXJlIGFsc28gdGVzdGVk
OgotICAgICAgICBCYWNrZHJvcCB3aXRoIDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc29saWQgc291
cmNlCi0gICAgICAgIFNvbGlkIGJhY2tkcm9wIGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0aCAwLjUg
YWxwaGEKLSAgICAgICAgQmFja2Ryb3Agd2l0aCAwLjUgYWxwaGEgYmxlbmRlZCB3aXRoIHNvdXJj
ZSB3aXRoIDAuNSBhbHBoYQotICAgIFRoZSB1bmRlcmx5aW5nIHByb29mIG9mIHRoZSBhYm92ZSBt
ZW50aW9uZWQgY2FzZXMgaXMgdGhlIHNhbWU6IHRoZSBjb2xvcnMgYXJlIHByZW11bHRpcGxpZWQK
LSAgICBhbmQgdGhlbiBibGVuZGVkIHRvZ2V0aGVyLgotCi0gICAgVGhlIGZpbmFsIGNvbG9yIG9m
ICNzb2xpZC1zb2xpZCBkZXBlbmRzIG9uIHRoZSAiaHVlIiBibGVuZCBtb2RlLCB3aGljaCBpcyBh
IG5vbi1zZXBhcmFibGUKLSAgICBibGVuZCBtb2RlLiBUaGlzIG1lYW5zIHRoYXQgY29sb3JzIGFy
ZSBibGVuZGVkIHRvZ2V0aGVyIGFzIGEgd2hvbGUsIG5vdCBjb21wb25lbnQgYnkgY29tcG9uZW50
LgotCi0gICAgVGhlIGZvcm11bGEgZm9yIHRoaXMgYmxlbmQgbW9kZSBpczoKLSAgICAgICAgQ3Ig
PSBCKENiLCBDcykgPSBTZXRMdW0oU2V0U2F0KENzLCBTYXQoQ2IpKSwgTHVtKENiKSkKLQotICAg
IFdpdGg6Ci0gICAgICAgIENyOiB0aGUgcmVzdWx0aW5nIGNvbG9yCi0gICAgICAgIENiOiB0aGUg
YmFja2Ryb3AgY29sb3IsIHdoaWNoIGlzICNzb2xpZC1zb2xpZCAoIm9yaWdpbmFsIERPTSBlbGVt
ZW50IGNvbG9yIikKLSAgICAgICAgQ3M6IHRoZSBzb3VyY2UgY29sb3IsIHdoaWNoIGlzIG1peF9j
b2xvcgotICAgICAgICBMdW0oQ2IpOiB0aGUgbHVtaW5vc2l0eSBvZiBDYi4gTHVtaW5vc2l0eSBm
b3IgY29sb3IgQyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBieQotICAgICAgICAgICBMdW0oQyk6IDAu
MyAqIENyZWQgKyAwLjU5ICogQ2dyZWVuICsgMC4xMSAqIENibHVlCi0gICAgICAgIFNhdChDYik6
IHRoZSBzYXR1cmF0aW9uIG9mIENiLiBTYXR1cmF0aW9uIGZvciBjb2xvciBDIGlzIGdlbmVyYWxs
eSBkZWZpbmVkIGJ5Ci0gICAgICAgICAgIFNhdChDKTogbWF4KENyZWQsIENncmVlbiwgQ2JsdWUp
IC0gbWluKENyZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAgU2V0U2F0KENzLCBTYXQoQ2IpKTog
dGhlIGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgc2F0dXJhdGlvbgotICAgICAgIFNldEx1bShTZXRT
YXQoQ3MsIFNhdChDYikpLCBMdW0oQ2IpKTogdGhlIGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgbHVt
aW5vc2l0eS4KLQotICAgIFRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdGhlIGx1bWlub3NpdHkgbCBv
biB0aGUgY29sb3IgQyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBieToKLQotICAgICAgICBTZXRMdW0o
QywgbCkKLSAgICAgICAgICAgIGQgPSBsIC0gTHVtKEMpCi0gICAgICAgICAgICBDcmVkID0gQ3Jl
ZCArIGQKLSAgICAgICAgICAgIENncmVlbiA9IENncmVlbiArIGQKLSAgICAgICAgICAgIENibHVl
ID0gQ2JsdWUgKyBkCi0gICAgICAgICAgICByZXR1cm4gQ2xpcENvbG9yKEMpCi0KLSAgICBBdCB0
aGlzIHBvaW50IHRoZSBjb2xvciBDIGhhcyB0byBiZSBjbGlwcGVkIGJldHdlZW4gWzAuLjFdICBi
eSB0aGUgQ2xpcENvbG9yIGZ1bmN0aW9uLCB3aGljaCBpcwotICAgIGdlbmVyYWxseSBkZWZpbmVk
IGJ5OgotCi0gICAgICAgIENsaXBDb2xvcihDKQotICAgICAgICAgICAgbCA9IEx1bShDKQotICAg
ICAgICAgICAgbiA9IG1pbihDcmVkLCBDZ3JlZW4sIENibHVlKQotICAgICAgICAgICAgeCA9IG1h
eChDcmVkLCBDZ3JlZW4sIENibHVlKQotICAgICAgICAgICAgaWYgbiA8IDAuMAotICAgICAgICAg
ICAgICAgIENyZWQgPSBsICsgKCgoQ3JlZCAtIGwpICogbCkgLyAobCAtIG4pKQotICAgICAgICAg
ICAgICAgIENncmVlbiA9IGwgKyAoKChDZ3JlZW4gLSBsKSAqIGwpIC8gKGwgLSBuKSkKLSAgICAg
ICAgICAgICAgICBDYmx1ZSA9IGwgKyAoKChDYmx1ZSAtIGwpICogbCkgLyAobCAtIG4pKQotICAg
ICAgICAgICAgaWYgeCA+IDEuMAotICAgICAgICAgICAgICAgIENyZWQgPSBsICsgKCgoQ3JlZCAt
IGwpICogKDEgLSBsKSkgLyAoeCAtIGwpKQotICAgICAgICAgICAgICAgIENncmVlbiA9IGwgKyAo
KChDZ3JlZW4gLSBsKSAqICgxIC0gbCkpIC8gKHggLSBsKSkKLSAgICAgICAgICAgICAgICBDYmx1
ZSA9IGwgKyAoKChDYmx1ZSAtIGwpICogKDEgLSBsKSkgLyAoeCAtIGwpKQotICAgICAgICAgICAg
cmV0dXJuIEMKLQotICAgIFRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdGhlIHNhdHVyYXRpb24gcyBv
biB0aGUgY29sb3IgQyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBieToKLQotICAgICAgICBTZXRTYXQo
QywgcykKLSAgICAgICAgICAgIGlmKENtYXggPiBDbWluKQotICAgICAgICAgICAgICAgIENtaWQg
PSAoKChDbWlkIC0gQ21pbikgKiBzKSAvIChDbWF4IC0gQ21pbikpCi0gICAgICAgICAgICAgICAg
Q21heCA9IHMKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBDbWlkID0gQ21heCA9
IDAKLSAgICAgICAgICAgIENtaW4gPSAwCi0gICAgICAgICAgICByZXR1cm4gQwotCi0gICAgSW4g
dGhpcyB0ZXN0IGNhc2U6Ci0gICAgICAgIEx1bShDYikgPSAwLjMgKiAwLjkgKyAwLjU5ICogMC41
ICsgMC4xMSAqIDAuMwotICAgICAgICBMdW0oQ2IpID0gMC4yNyArIDAuMjk1ICsgMC4wMzMKLSAg
ICAgICAgTHVtKENiKSA9IDAuNTk4Ci0KLSAgICAgICAgU2F0KENiKSA9IG1heCgwLjksIDAuNSwg
MC4zKSAtIG1pbigwLjksIDAuNSwgMC4zKQotICAgICAgICBTYXQoQ2IpID0gMC45IC0gMC4zCi0g
ICAgICAgIFNhdChDYikgPSAwLjYKLQotICAgICAgICBGb3IgdGhlIHNha2Ugb2YgYnJldml0eSB0
aGUgcmVzdWx0IG9mIHRoaXMgY29tcHV0YXRpb24gaXMgY2FsbGVkIEN0Ci0gICAgICAgIEN0ID0g
U2V0U2F0KENzLCBTYXQoQ2IpKQotICAgICAgICAgICAgMC44ID4gMC4yCi0gICAgICAgICAgICAg
ICAgQ21pZCA9ICgoKDAuNCAtIDAuMikgKiAwLjYpIC8gKDAuOCAtIDAuMikpID0gKDAuMiAqIDAu
NikgLyAwLjYgPSAwLjIKLSAgICAgICAgICAgICAgICBDbWF4ID0gMC42Ci0gICAgICAgICAgICBD
bWluID0gMAotICAgICAgICAgICAgcmV0dXJuICgwLCAwLjIsIDAuNikKLQotICAgICAgICBDciA9
IFNldEx1bShDdCwgTHVtKENiKSkKLSAgICAgICAgICAgIGQgPSAwLjU5OCAtICgwLjMgKiAwLjAg
KyAwLjU5ICogMC4yICsgMC4xMSAqIDAuNikgPSAwLjExOCArIDAuMDY2ID0gMC4xODQKLSAgICAg
ICAgICAgIGQgPSAwLjU5OCAtICgwLjExOCArIDAuMDY2KSA9IDAuNTk4IC0gMC4xODQKLSAgICAg
ICAgICAgIGQgPSAwLjQxNAotICAgICAgICAgICAgQ3JlZCA9IDAuMCArIDAuNDE0ID0gMC40MTQK
LSAgICAgICAgICAgIEdyZWVuID0gMC4yICsgMC40MTQgPSAwLjYxNAotICAgICAgICAgICAgQ2Js
dWUgPSAwLjYgKyAwLjQxNCA9IDEuMDE0Ci0gICAgICAgICAgICByZXR1cm4gQ2xpcENvbG9yKDAu
NDE0LCAwLjYxNCwgMS4wMTQpCi0KLSAgICAgICAgQ2xpcENvbG9yKDAuNDE0LCAwLjYxNCwgMS4w
MTQpCi0gICAgICAgICAgICBsID0gMC4zICogMC40MTQgKyAwLjU5ICogMC42MTQgKyAwLjExICog
MS4xMDE0ID0gMC4xMjQyICsgMC4zNjIyNiArIDAuMTIxMTU0ID0gMC42MDc2MTQKLSAgICAgICAg
ICAgIG4gPSBtaW4oMC40MTQsIDAuNjE0LCAxLjAxNCkgPSAwLjQxNAotICAgICAgICAgICAgeCA9
IG1heCgwLjQxNCwgMC42MTQsIDEuMDE0KSA9IDEuMDE0Ci0gICAgICAgICAgICB4ID4gMS4wCi0g
ICAgICAgICAgICAgICAgQ3JlZCA9IDAuNjA3NjE0ICsgKCgoMC40MTQgLSAwLjYwNzYxNCkgKiAo
MSAtIDAuNjA3NjE0KSkgLyAoMS4wMTQgLSAwLjYwNzYxNCkpID0gCi0gICAgICAgICAgICAgICAg
ICAgICA9IDAuNjA3NjE0ICsgKCgtMC4xOTM2MTQgKiAwLjM5MjM4NikgLyAwLjQwNjM4NikgPSAw
LjYwNzYxNCAtICgwLjA3NTk3MTQyIC8gMC40MDYzODYpID0gMC42MDc2MTQgLSAwLjE4Njk0Mzk5
ID0gMC40MjA2NzAwMQotICAgICAgICAgICAgICAgIENncmVlbiA9IDAuNjA3NjE0ICsgKCgoMC42
MTQgLSAwLjYwNzYxNCkgKiAoMSAtIDAuNjA3NjE0KSkgLyAoMS4wMTQgLSAwLjYwNzYxNCkpID0K
LSAgICAgICAgICAgICAgICAgICAgICAgPSAwLjYwNzYxNCArICgoMC4wMDMzODYgKiAwLjM5MjM4
NikgLyAwLjQwNjM4NiA9IDAuNjA3NjE0ICsgKDAuMDAxMzI4NjIgLyAwLjQwNjM4NikgPSAwLjYw
NzYxNCArIDAuMDAzMjY5MzUgPSAwLjYxMDg4MzM1Ci0gICAgICAgICAgICAgICAgQ2JsdWUgPSAw
LjYwNzYxNCArICgoKDEuMDE0IC0gMC42MDc2MTQpICogKDEgLSAwLjYwNzYxNCkpIC8gKDEuMDE0
IC0gMC42MDc2MTQpID0KLSAgICAgICAgICAgICAgICAgICAgICA9IDAuNjA3NjE0ICsgKCgwLjQw
NjM4NiAqIDAuMzkyMzg2KSAvIDAuNDA2Mzg2KSA9IDAuNjA3NjE0ICsgKDAuMTU5NDYwMTggLyAw
LjQwNjM4NikgPSAwLjYwNzYxNCArIDAuMzkyMzg2MDEgPSAxLjAKLSAgICAgICAgICAgIHJldHVy
biAoMC40MiwgMC42MSwgMS4wKQotCi0gICAgVGhpcyB2YWx1ZSBpcyBlcXVpdmFsZW50IHRvICgx
MDgsIDE1NywgMjU1KSwgd2hpY2ggaXMgdGhlIGV4cGVjdGVkIGNvbG9yLgotICAgIFRoaXMgaXMg
dGhlIGV4YWN0IGNvbG9yIHZhbHVlLCBvdGhlciBwb3J0cyBtaWdodCBleHBlcmllbmNlIHNsaWdo
dCBkaWZmZXJlbmNlcy4KLS0tPgotICAgIDxkaXYgaWQ9InNvbGlkLXNvbGlkIj48L2Rpdj4KLSAg
ICA8ZGl2IGlkPSJhbHBoYS1zb2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0ic29saWQtYWxwaGEi
PjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLWFscGhhIj48L2Rpdj4KLTwvYm9keT4KLTwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1pbm9zaXR5LWV4cGVjdGVkLmh0bWwgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxl
LWJsZW5kLW1vZGUtbHVtaW5vc2l0eS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA5MDlhYWMzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1sdW1pbm9zaXR5
LWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi08IURPQ1RZUEUg
SFRNTD4KLTxodG1sIGxhbmc9ImVuIj4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0IHRoYXQgYmxl
bmRzIHRoZSBzb3VyY2UgYW5kIHRoZSBiYWNrZHJvcCB3aXRoIHRoZSBjb2xvciBibGVuZCBtb2Rl
LjwvdGl0bGU+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgLyogVGhlcmUg
YXJlIGV4YWN0bHkgdGhlIGNvbG9yIHZhbHVlcyB3ZSBleHBlY3QuIFNvbWUgcGxhdGZvcm1zIG1h
eSBoYXZlIHNsaWdodGx5IGRpZmZlcmVudAotICAgICAgICAgICBjb2xvciByZXN1bHQuICovCi0g
ICAgICAgICNzb2xpZC1zb2xpZCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2Io
OTgsIDMzLCAwKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdo
dDogMTAwcHg7Ci0gICAgICAgIH0KLSAgICAgICAgI2FscGhhLXNvbGlkIHsKLSAgICAgICAgICAg
IGJhY2tncm91bmQtY29sb3I6IHJnYigxODQsIDE3MiwgMTg0KTsKLSAgICAgICAgICAgIHdpZHRo
OiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgIH0KLSAgICAgICAg
I3NvbGlkLWFscGhhIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyMDMsIDEw
MSwgNDkpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtYWxwaGEgewotICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogcmdiKDIxMywgMTgyLCAxNzUpOwotICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJzb2xpZC1zb2xpZCI+PC9kaXY+Ci0gICAg
PGRpdiBpZD0iYWxwaGEtc29saWQiPjwvZGl2PgotICAgIDxkaXYgaWQ9InNvbGlkLWFscGhhIj48
L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1hbHBoYSI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtbHVtaW5vc2l0eS5odG1sIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2Rl
LWx1bWlub3NpdHkuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWU5N2MwMC4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtbHVtaW5vc2l0eS5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsMTI4ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWwgbGFuZz0iZW4iPgotPGhl
YWQ+Ci0gICAgPHRpdGxlPlRlc3QgdGhhdCBibGVuZHMgdGhlIHNvdXJjZSBhbmQgdGhlIGJhY2tk
cm9wIHdpdGggdGhlIGx1bWlub3NpdHkgYmxlbmQgbW9kZS48L3RpdGxlPgotICAgIDxzY3JpcHQ+
Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5j
ZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0Pgot
ICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNzb2xpZC1zb2xpZCB7Ci0gICAg
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoOTAlLCA1MCUsIDMwJSk7Ci0gICAgICAgICAg
ICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAg
LXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29s
b3IuZnMnKSBsdW1pbm9zaXR5IHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMSAwLjIgMC40IDEu
MCk7Ci0gICAgICAgIH0KLSAgICAgICAgI2FscGhhLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IHJnYmEoOTAlLCA1MCUsIDMwJSwgMC41KTsKLSAgICAgICAgICAgIHdpZHRo
OiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0
LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycp
IGx1bWlub3NpdHkgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMS4wKTsKLSAg
ICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogcmdiKDkwJSwgNTAlLCAzMCUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAg
ICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbHVtaW5vc2l0eSBz
b3VyY2UtYXRvcCksIG1peF9jb2xvciAwLjIgMC40IDAuOCAwLjUpOwotICAgICAgICB9Ci0gICAg
ICAgICNhbHBoYS1hbHBoYSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDkw
JSwgNTAlLCAzMCUsIDAuNSk7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAg
ICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25l
IG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBsdW1pbm9zaXR5IHNvdXJjZS1h
dG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44IDAuNSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxl
PgotPC9oZWFkPgotPGJvZHk+Ci08IS0tCi0gICAgVGhlIGZvbGxvd2luZyBwcm9vZiBhcHBsaWVz
IHRvIHRoZSBmaXJzdCBjYXNlICgjc29saWQtc29saWQpIHdoZXJlIGJvdGggdGhlIGJhY2tkcm9w
IGFuZCB0aGUKLSAgICBzb3VyY2UgYXJlIHNvbGlkLgotCi0gICAgSW4gdGhpcyB0ZXN0IHRoZSBm
b2xsb3dpbmcgY29tYmluYXRpb25zIGFyZSBhbHNvIHRlc3RlZDoKLSAgICAgICAgQmFja2Ryb3Ag
d2l0aCAwLjUgYWxwaGEgYmxlbmRlZCB3aXRoIHNvbGlkIHNvdXJjZQotICAgICAgICBTb2xpZCBi
YWNrZHJvcCBibGVuZGVkIHdpdGggc291cmNlIHdpdGggMC41IGFscGhhCi0gICAgICAgIEJhY2tk
cm9wIHdpdGggMC41IGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0aCAwLjUgYWxwaGEKLSAgICBUaGUg
dW5kZXJsYXlpbmcgcHJvb2Ygb2YgdGhlIGFib3ZlIG1lbnRpb25lZCBjYXNlcyBpcyB0aGUgc2Ft
ZTogdGhlIGNvbG9ycyBhcmUgcHJlbXVsdGlwbGllZAotICAgIGFuZCB0aGVuIGJsZW5kZWQgdG9n
ZXRoZXIuCi0KLSAgICBUaGUgZmluYWwgY29sb3Igb2YgI3NvbGlkLXNvbGlkIGRlcGVuZHMgb24g
dGhlICJsdW1pbm9zaXR5IiBibGVuZCBtb2RlLCB3aGljaCBpcyBhIG5vbi1zZXBhcmFibGUKLSAg
ICBibGVuZCBtb2RlLiBUaGlzIG1lYW5zIHRoYXQgY29sb3JzIGFyZSBibGVuZGVkIHRvZ2V0aGVy
IGFzIGEgd2hvbGUsIG5vdCBjb21wb25lbnQgYnkgY29tcG9uZW50LgotCi0gICAgVGhlIGZvcm11
bGEgZm9yIHRoaXMgYmxlbmQgbW9kZSBpczoKLSAgICAgICAgQ3IgPSBCKENiLCBDcykgPSBTZXRM
dW0oQ2IsIEx1bShDcykpCi0KLSAgICBXaXRoOgotICAgICAgICBDcjogdGhlIHJlc3VsdGluZyBj
b2xvcgotICAgICAgICBDYjogdGhlIGJhY2tkcm9wIGNvbG9yLCB3aGljaCBpcyAjc29saWQtc29s
aWQgKCJvcmlnaW5hbCBET00gZWxlbWVudCBjb2xvciIpCi0gICAgICAgIENzOiB0aGUgc291cmNl
IGNvbG9yLCB3aGljaCBpcyBtaXhfY29sb3IKLSAgICAgICAgTHVtKENzKTogdGhlIGx1bWlub3Np
dHkgb2YgQ3MuIEx1bWlub3NpdHkgZm9yIGNvbG9yIEMgaXMgZ2VuZXJhbGx5IGRlZmluZWQgYnkK
LSAgICAgICAgICAgTHVtKEMpOiAwLjMgKiBDcmVkICsgMC41OSAqIENncmVlbiArIDAuMTEgKiBD
Ymx1ZQotICAgICAgICBTZXRMdW0oQ2IsIEx1bShDcykpOiB0aGUgZnVuY3Rpb24gdGhhdCBzZXRz
IHRoZSBsdW1pbm9zaXR5LgotCi0gICAgVGhlIGZ1bmN0aW9uIHRoYXQgc2V0cyB0aGUgbHVtaW5v
c2l0eSBsIG9uIHRoZSBjb2xvciBDIGlzIGdlbmVyYWxseSBkZWZpbmVkIGJ5OgotCi0gICAgICAg
IFNldEx1bShDLCBsKQotICAgICAgICAgICAgZCA9IGwgLSBMdW0oQykKLSAgICAgICAgICAgIENy
ZWQgPSBDcmVkICsgZAotICAgICAgICAgICAgQ2dyZWVuID0gQ2dyZWVuICsgZAotICAgICAgICAg
ICAgQ2JsdWUgPSBDYmx1ZSArIGQKLSAgICAgICAgICAgIHJldHVybiBDbGlwQ29sb3IoQykKLQot
ICAgIEF0IHRoaXMgcG9pbnQgdGhlIGNvbG9yIEMgaGFzIHRvIGJlIGNsaXBwZWQgYmV0d2VlbiBb
MC4uMV0gIGJ5IHRoZSBDbGlwQ29sb3IgZnVuY3Rpb24sIHdoaWNoIGlzCi0gICAgZ2VuZXJhbGx5
IGRlZmluZWQgYnk6Ci0KLSAgICAgICAgQ2xpcENvbG9yKEMpCi0gICAgICAgICAgICBsID0gTHVt
KEMpCi0gICAgICAgICAgICBuID0gbWluKENyZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAgICAg
ICB4ID0gbWF4KENyZWQsIENncmVlbiwgQ2JsdWUpCi0gICAgICAgICAgICBpZiBuIDwgMC4wCi0g
ICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAoKChDcmVkIC0gbCkgKiBsKSAvIChsIC0gbikpCi0g
ICAgICAgICAgICAgICAgQ2dyZWVuID0gbCArICgoKENncmVlbiAtIGwpICogbCkgLyAobCAtIG4p
KQotICAgICAgICAgICAgICAgIENibHVlID0gbCArICgoKENibHVlIC0gbCkgKiBsKSAvIChsIC0g
bikpCi0gICAgICAgICAgICBpZiB4ID4gMS4wCi0gICAgICAgICAgICAgICAgQ3JlZCA9IGwgKyAo
KChDcmVkIC0gbCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAgICAgICAgICAgICAgQ2dyZWVu
ID0gbCArICgoKENncmVlbiAtIGwpICogKDEgLSBsKSkgLyAoeCAtIGwpKQotICAgICAgICAgICAg
ICAgIENibHVlID0gbCArICgoKENibHVlIC0gbCkgKiAoMSAtIGwpKSAvICh4IC0gbCkpCi0gICAg
ICAgICAgICByZXR1cm4gQwotCi0gICAgSW4gdGhpcyB0ZXN0IGNhc2U6Ci0gICAgICAgIEx1bShD
YikgPSAwLjMgKiAwLjkgKyAwLjU5ICogMC41ICsgMC4xMSAqIDAuMwotICAgICAgICBMdW0oQ2Ip
ID0gMC4yNyArIDAuMjk1ICsgMC4wMzMKLSAgICAgICAgTHVtKENiKSA9IDAuNTk4Ci0KLSAgICAg
ICAgTHVtKENzKSA9IDAuMyAqIDAuMSArIDAuNTkgKiAwLjIgKyAwLjExICogMC40Ci0gICAgICAg
IEx1bShDcykgPSAwLjAzICsgMC4xMTggKyAwLjA0NAotICAgICAgICBMdW0oQ3MpID0gMC4xOTIK
LQotICAgQ3IgPSBTZXRMdW0oQ2IsIDAuMTkyKQotICAgICAgICBkID0gMC4xOTIgLSAwLjU5OAot
ICAgICAgICBkID0gMC40MDYKLSAgICAgICAgQ3JlZCA9IDAuOSAtIDAuNDA2ID0gMC40OTQKLSAg
ICAgICAgQ2dyZWVuID0gMC41IC0gMC40MDYgPSAwLjA5NAotICAgICAgICBDYmx1ZSA9IDAuMyAt
IDAuNDA2ID0gLTAuMTA2Ci0gICAgICAgIHJldHVybiBDbGlwQ29sb3IoMC40OTQsIDAuMDk0LCAt
MC4xMDYpCi0KLSAgICBDbGlwQ29sb3IoMC40OTQsIDAuMDk0LCAtMC4xMDYpCi0gICAgICAgIGwg
PSAwLjQ5NCAqIDAuMyArIDAuMDk0ICogMC41OSAtIDAuMTA2ICogMC4xMSA9IDAuMTQ4MiArIDAu
MDU1NDYgLSAwLjAxMTY2ID0gMC4xOTIKLSAgICAgICAgbiA9IG1pbigwLjQ5NCwgMC4wOTQsIC0w
LjEwNikgPSAtMC4xMDYKLSAgICAgICAgeCA9IG1heCgwLjQ5NCwgMC4wOTQsIC0wLjEwNikgPSAw
LjQ5NAotICAgICAgICBuIDwgMC4wCi0gICAgICAgICAgICBDcmVkID0gMC4xOTIgKyAoKCgwLjQ5
NCAtIDAuMTkyKSAqIDAuMTkyKSAvICgwLjE5MiArIDAuMTA2KSkgPQotICAgICAgICAgICAgICAg
ICA9IDAuMTkyICsgKDAuMzAyICogMC4xOTIpIC8gMC4yOTggPSAwLjE5MiArICgwLjA1Nzk4NCAv
IDAuMjk4KSA9IDAuMTkyICsgMC4xOTQ1NzcxOCA9IDAuMzg2NTc3MTgKLSAgICAgICAgICAgIENn
cmVlbiA9IDAuMTkyICsgKCgoMC4wOTQgLSAwLjE5MikgKiAwLjE5MikgLyAoMC4xOTIgKyAwLjEw
NikpID0KLSAgICAgICAgICAgICAgICAgICA9IDAuMTkyICsgKC0wLjA5OCAqIDAuMTkyKSAvIDAu
Mjk4ID0gMC4xOTIgLSAoMC4wMTg4MTYgLyAwLjI5OCkgPSAwLjE5MiAtIDAuMDYzMTQwOTQgPSAw
LjEyODg1OTA2Ci0gICAgICAgICAgICBDYmx1ZSA9IDAuMTkyICsgKCgoLTAuMTA2IC0gMC4xOTIp
ICogMC4xOTIpIC8gKDAuMTkyICsgMC4xMDYpKSA9Ci0gICAgICAgICAgICAgICAgICA9IDAuMTky
ICsgKC0wLjI5OCAqIDAuMTkyKSAvIDAuMjk4ID0gMC4xOTIgLSAwLjE5MiA9IDAuMAotICAgICAg
ICByZXR1cm4gKDAuMzg2NTc3MTgsIDAuMTI4ODU5MDYsIDAuMDApCi0KLSAgICBUaGlzIHZhbHVl
IGlzIGVxdWl2YWxlbnQgdG8gKDk4LCAzMywgMCksIHdoaWNoIGlzIHRoZSBleHBlY3RlZCBjb2xv
ci4KLSAgICBUaGlzIGlzIHRoZSBleGFjdCBjb2xvciB2YWx1ZSwgb3RoZXIgcG9ydHMgbWlnaHQg
ZXhwZXJpZW5jZSBzbGlnaHQgZGlmZmVyZW5jZXMuCi0tLT4KLSAgICA8ZGl2IGlkPSJzb2xpZC1z
b2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYWxwaGEtc29saWQiPjwvZGl2PgotICAgIDxkaXYg
aWQ9InNvbGlkLWFscGhhIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1hbHBoYSI+PC9kaXY+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtc2F0dXJhdGlvbi1l
eHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmls
dGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLXNhdHVyYXRpb24tZXhwZWN0ZWQuaHRtbApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDFkNDljOC4uMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5k
LW1vZGUtc2F0dXJhdGlvbi1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAs
MCBAQAotPCFET0NUWVBFIEhUTUw+Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0
bGU+VGVzdCB0aGF0IGJsZW5kcyB0aGUgc291cmNlIGFuZCB0aGUgYmFja2Ryb3Agd2l0aCB0aGUg
c2F0dXJhdGlvbiBibGVuZCBtb2RlLjwvdGl0bGU+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3Nz
Ij4KLSAgICAgICAgLyogVGhlc2UgYXJlIGV4YWN0bHkgdGhlIGNvbG9yIHZhbHVlcyB3ZSBleHBl
Y3QuIFNvbWUgcGxhdGZvcm1zIG1heSBoYXZlIHNsaWdodCBkaWZmZXJlbnQKLSAgICAgICAgICAg
Y29sb3IgcmVzdWx0LiAqLwotICAgICAgICAjc29saWQtc29saWQgewotICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogcmdiKDE5MSwgMTQxLCAxMTUpOwotICAgICAgICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgfQotICAgICAgICAjYWxw
aGEtc29saWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE5OCwgMTg1LCAx
OTgpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBw
eDsKLSAgICAgICAgfQotICAgICAgICAjc29saWQtYWxwaGEgewotICAgICAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmdiKDIzMCwgMTI4LCA3Nik7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICB9Ci0gICAgICAgICNhbHBoYS1h
bHBoYSB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjIwLCAxODksIDE4Mik7
Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4Owot
ICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9InNv
bGlkLXNvbGlkIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1zb2xpZCI+PC9kaXY+Ci0gICAg
PGRpdiBpZD0ic29saWQtYWxwaGEiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLWFscGhhIj48
L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1zYXR1cmF0
aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXIt
bm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtc2F0dXJhdGlvbi5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBhYzMyOGJiLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ub25zZXBhcmFibGUtYmxlbmQtbW9kZS1zYXR1cmF0
aW9uLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMzcgKzAsMCBAQAotPCFET0NUWVBFIEhUTUw+
Ci08aHRtbCBsYW5nPSJlbiI+Ci08aGVhZD4KLSAgICA8dGl0bGU+VGVzdCB0aGF0IGJsZW5kcyB0
aGUgc291cmNlIGFuZCB0aGUgYmFja2Ryb3Agd2l0aCB0aGUgc2F0dXJhdGlvbiBibGVuZCBtb2Rl
LjwvdGl0bGU+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAg
ICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAg
ICAgI3NvbGlkLXNvbGlkIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig5MCUs
IDUwJSwgMzAlKTsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdo
dDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVy
bCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIHNhdHVyYXRpb24gc291cmNlLWF0b3ApLCBt
aXhfY29sb3IgMC4xIDAuMiAwLjQgMS4wKTsKLSAgICAgICAgfQotICAgICAgICAjYWxwaGEtc29s
aWQgewotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5MCUsIDUwJSwgMzAlLCAw
LjUpOwotICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBw
eDsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9y
ZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgc2F0dXJhdGlvbiBzb3VyY2UtYXRvcCksIG1peF9jb2xv
ciAwLjIgMC40IDAuOCAxLjApOwotICAgICAgICB9Ci0gICAgICAgICNzb2xpZC1hbHBoYSB7Ci0g
ICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoOTAlLCA1MCUsIDMwJSk7Ci0gICAgICAg
ICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAg
ICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgt
Y29sb3IuZnMnKSBzYXR1cmF0aW9uIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDAuMiAwLjQgMC44
IDAuNSk7Ci0gICAgICAgIH0KLSAgICAgICAgI2FscGhhLWFscGhhIHsKLSAgICAgICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHJnYmEoOTAlLCA1MCUsIDMwJSwgMC41KTsKLSAgICAgICAgICAgIHdp
ZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICAtd2Vi
a2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5m
cycpIHNhdHVyYXRpb24gc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMC4yIDAuNCAwLjggMC41KTsK
LSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0KLSAgICBUaGUg
Zm9sbG93aW5nIHByb29mIGFwcGxpZXMgdG8gdGhlIGZpcnN0IGNhc2UgKCNzb2xpZC1zb2xpZCkg
d2hlcmUgYm90aCB0aGUgYmFja2Ryb3AgYW5kIHRoZQotICAgIHNvdXJjZSBhcmUgc29saWQuCi0K
LSAgICBJbiB0aGlzIHRlc3QgdGhlIGZvbGxvd2luZyBjb21iaW5hdGlvbnMgYXJlIGFsc28gdGVz
dGVkOgotICAgICAgICBCYWNrZHJvcCB3aXRoIDAuNSBhbHBoYSBibGVuZGVkIHdpdGggc29saWQg
c291cmNlCi0gICAgICAgIFNvbGlkIGJhY2tkcm9wIGJsZW5kZWQgd2l0aCBzb3VyY2Ugd2l0aCAw
LjUgYWxwaGEKLSAgICAgICAgQmFja2Ryb3Agd2l0aCAwLjUgYWxwaGEgYmxlbmRlZCB3aXRoIHNv
dXJjZSB3aXRoIDAuNSBhbHBoYQotICAgIFRoZSB1bmRlcmx5aW5nIHByb29mIG9mIHRoZSBhYm92
ZSBtZW50aW9uZWQgY2FzZXMgaXMgdGhlIHNhbWU6IHRoZSBjb2xvcnMgYXJlIHByZW11bHRpcGxp
ZWQKLSAgICBhbmQgdGhlbiBibGVuZGVkIHRvZ2V0aGVyLgotCi0gICAgVGhlIGZpbmFsIGNvbG9y
IG9mICNzb2xpZC1zb2xpZCBkZXBlbmRzIG9uIHRoZSAic2F0dXJhdGlvbiIgYmxlbmQgbW9kZSwg
d2hpY2ggaXMgYSBub24tc2VwYXJhYmxlCi0gICAgYmxlbmQgbW9kZS4gVGhpcyBtZWFucyB0aGF0
IGNvbG9ycyBhcmUgYmxlbmRlZCB0b2dldGhlciBhcyBhIHdob2xlLCBub3QgY29tcG9uZW50IGJ5
IGNvbXBvbmVudC4KLQotICAgIFRoZSBmb3JtdWxhIGZvciB0aGlzIGJsZW5kIG1vZGUgaXM6Ci0g
ICAgICAgIENyID0gQihDYiwgQ3MpID0gU2V0THVtKFNldFNhdChDYiwgU2F0KENzKSksIEx1bShD
YikpCi0KLSAgICBXaXRoOgotICAgICAgICBDcjogdGhlIHJlc3VsdGluZyBjb2xvcgotICAgICAg
ICBDYjogdGhlIGJhY2tkcm9wIGNvbG9yLCB3aGljaCBpcyAjc29saWQtc29saWQgKCJvcmlnaW5h
bCBET00gZWxlbWVudCBjb2xvciIpCi0gICAgICAgIENzOiB0aGUgc291cmNlIGNvbG9yLCB3aGlj
aCBpcyBtaXhfY29sb3IKLSAgICAgICAgU2F0KENiKTogdGhlIHNhdHVyYXRpb24gb2YgQ2IuIFNh
dHVyYXRpb24gZm9yIGNvbG9yIEMgaXMgZ2VuZXJhbGx5IGRlZmluZWQgYnkKLSAgICAgICAgICAg
U2F0KEMpOiBtYXgoQ3JlZCwgQ2dyZWVuLCBDYmx1ZSkgLSBtaW4oQ3JlZCwgQ2dyZWVuLCBDYmx1
ZSkKLSAgICAgICAgTHVtKENzKTogdGhlIGx1bWlub3NpdHkgb2YgQ3MuIEx1bWlub3NpdHkgZm9y
IGNvbG9yIEMgaXMgZ2VuZXJhbGx5IGRlZmluZWQgYnkKLSAgICAgICAgICAgTHVtKEMpOiAwLjMg
KiBDcmVkICsgMC41OSAqIENncmVlbiArIDAuMTEgKiBDYmx1ZQotICAgICAgICBTZXRTYXQoQ2Is
IFNhdChDcykpOiB0aGUgZnVuY3Rpb24gdGhhdCBzZXRzIHRoZSBzYXR1cmF0aW9uCi0gICAgICAg
IFNldEx1bShTZXRTYXQoQ2IsIFNhdChDcykpLCBMdW0oQ2IpKTogdGhlIGZ1bmN0aW9uIHRoYXQg
c2V0cyB0aGUgbHVtaW5vc2l0eS4KLQotICAgIFRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdGhlIGx1
bWlub3NpdHkgbCBvbiB0aGUgY29sb3IgQyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBieToKLQotICAg
ICAgICBTZXRMdW0oQywgbCkKLSAgICAgICAgICAgIGQgPSBsIC0gTHVtKEMpCi0gICAgICAgICAg
ICBDcmVkID0gQ3JlZCArIGQKLSAgICAgICAgICAgIENncmVlbiA9IENncmVlbiArIGQKLSAgICAg
ICAgICAgIENibHVlID0gQ2JsdWUgKyBkCi0gICAgICAgICAgICByZXR1cm4gQ2xpcENvbG9yKEMp
Ci0KLSAgICBBdCB0aGlzIHBvaW50IHRoZSBjb2xvciBDIGhhcyB0byBiZSBjbGlwcGVkIGJldHdl
ZW4gWzAuLjFdICBieSB0aGUgQ2xpcENvbG9yIGZ1bmN0aW9uLCB3aGljaCBpcwotICAgIGdlbmVy
YWxseSBkZWZpbmVkIGJ5OgotCi0gICAgICAgIENsaXBDb2xvcihDKQotICAgICAgICAgICAgbCA9
IEx1bShDKQotICAgICAgICAgICAgbiA9IG1pbihDcmVkLCBDZ3JlZW4sIENibHVlKQotICAgICAg
ICAgICAgeCA9IG1heChDcmVkLCBDZ3JlZW4sIENibHVlKQotICAgICAgICAgICAgaWYgbiA8IDAu
MAotICAgICAgICAgICAgICAgIENyZWQgPSBsICsgKCgoQ3JlZCAtIGwpICogbCkgLyAobCAtIG4p
KQotICAgICAgICAgICAgICAgIENncmVlbiA9IGwgKyAoKChDZ3JlZW4gLSBsKSAqIGwpIC8gKGwg
LSBuKSkKLSAgICAgICAgICAgICAgICBDYmx1ZSA9IGwgKyAoKChDYmx1ZSAtIGwpICogbCkgLyAo
bCAtIG4pKQotICAgICAgICAgICAgaWYgeCA+IDEuMAotICAgICAgICAgICAgICAgIENyZWQgPSBs
ICsgKCgoQ3JlZCAtIGwpICogKDEgLSBsKSkgLyAoeCAtIGwpKQotICAgICAgICAgICAgICAgIENn
cmVlbiA9IGwgKyAoKChDZ3JlZW4gLSBsKSAqICgxIC0gbCkpIC8gKHggLSBsKSkKLSAgICAgICAg
ICAgICAgICBDYmx1ZSA9IGwgKyAoKChDYmx1ZSAtIGwpICogKDEgLSBsKSkgLyAoeCAtIGwpKQot
ICAgICAgICAgICAgcmV0dXJuIEMKLQotICAgIFRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdGhlIHNh
dHVyYXRpb24gcyBvbiB0aGUgY29sb3IgQyBpcyBnZW5lcmFsbHkgZGVmaW5lZCBieToKLQotICAg
ICAgICBTZXRTYXQoQywgcykKLSAgICAgICAgICAgIGlmKENtYXggPiBDbWluKQotICAgICAgICAg
ICAgICAgIENtaWQgPSAoKChDbWlkIC0gQ21pbikgKiBzKSAvIChDbWF4IC0gQ21pbikpCi0gICAg
ICAgICAgICAgICAgQ21heCA9IHMKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBD
bWlkID0gQ21heCA9IDAKLSAgICAgICAgICAgIENtaW4gPSAwCi0gICAgICAgICAgICByZXR1cm4g
QwotCi0gICAgSW4gdGhpcyB0ZXN0IGNhc2U6Ci0gICAgICAgIEx1bShDYikgPSAwLjMgKiAwLjkg
KyAwLjU5ICogMC41ICsgMC4xMSAqIDAuMwotICAgICAgICBMdW0oQ2IpID0gMC4yNyArIDAuMjk1
ICsgMC4wMzMKLSAgICAgICAgTHVtKENiKSA9IDAuNTk4Ci0KLSAgICAgICAgU2F0KENzKSA9IG1h
eCgwLjEsIDAuMiwgMC40KSAtIG1pbigwLjEsIDAuMiwgMC40KQotICAgICAgICBTYXQoQ3MpID0g
MC40IC0gMC4xCi0gICAgICAgIFNhdChDcykgPSAwLjMKLQotICAgICAgICBGb3IgdGhlIHNha2Ug
b2YgYnJldml0eSB0aGUgcmVzdWx0IG9mIHRoaXMgY29tcHV0YXRpb24gaXMgY2FsbGVkIEN0Ci0g
ICAgICAgIEN0ID0gU2V0U2F0KENiLCBTYXQoQ3MpKQotICAgICAgICAgICAgMC45ID4gMC4zCi0g
ICAgICAgICAgICAgICAgQ21pZCA9ICgoKDAuNSAtIDAuMykgKiAwLjMpIC8gKDAuOSAtIDAuMykg
PSAwLjIgKiAwLjMgLyAwLjYgPSAwLjA2IC8gMC42ID0gMC4xMAotICAgICAgICAgICAgICAgIENt
YXggPSAwLjMKLSAgICAgICAgICAgIENtaW4gPSAwCi0gICAgICAgICAgICByZXR1cm4gKDAuMywg
MC4xMCwgMC4wKQotCi0gICAgQ3IgPSBTZXRMdW0oQ3QsIDAuNTk4KQotICAgICAgICBkID0gMC41
OTggLSAoMC4zICogMC4zICsgMC41OSAqIDAuMTAgKyAwLjExICogMC4wKSA9IDAuNTk4IC0gKDAu
MDkgKyAwLjA1OSkgPSAwLjU5OCAtIDAuMTQ5Ci0gICAgICAgIGQgPSAwLjQ0OQotICAgICAgICBD
cmVkID0gMC4zICsgMC40NDkgPSAwLjc0OQotICAgICAgICBDZ3JlZW4gPSAwLjEwICsgMC40NDkg
PSAwLjU0OQotICAgICAgICBDYmx1ZSA9IDAuMCArIDAuNDQ5ID0gMC40NDkKLSAgICAgICAgcmV0
dXJuICgwLjc0OSwgMC41NDksIDAuNDQ5KQotCi0gICAgVGhpcyB2YWx1ZSBpcyBlcXVpdmFsZW50
IHRvICgxOTEsIDE0MCwgMTE1KSwgd2hpY2ggaXMgdGhlIGV4cGVjdGVkIGNvbG9yLgotICAgIFRo
aXMgaXMgdGhlIGV4YWN0IGNvbG9yIHZhbHVlLCBvdGhlciBwb3J0cyBtaWdodCBleHBlcmllbmNl
IHNsaWdodCBkaWZmZXJlbmNlcy4KLS0tPgotICAgIDxkaXYgaWQ9InNvbGlkLXNvbGlkIj48L2Rp
dj4KLSAgICA8ZGl2IGlkPSJhbHBoYS1zb2xpZCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0ic29saWQt
YWxwaGEiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImFscGhhLWFscGhhIj48L2Rpdj4KLTwvYm9keT4K
LTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktY29tcHV0ZWQt
c3R5bGUtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MGRhMGE1
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSw1MDggKzAsMCBAQAotVGVzdHMgdGhlIGNvbXB1dGVkIHN0eWxlIG9mIHRoZSBjdXN0b20o
KSBmdW5jdGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVydHkuCi0KLU9uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KLQotCi0KLUN1c3RvbSB3aXRoIHZlcnRleCBzaGFkZXIgOiBjdXN0b20o
dXJsKHZlcnRleC5zaGFkZXIpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFk
ZXIpIG5vbmUsIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAn
Q1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNv
bnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUu
bGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NU
ZXh0KSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBub25lLCAxIDEpJwotCi1DdXN0b20g
d2l0aCBmcmFnbWVudCBzaGFkZXIgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSknCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90
eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NT
VmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJf
Q1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIGJvdGggc2hhZGVy
cyA6IGN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgdXJsKGZyYWdtZW50LnNoYWRlcikpCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgdXJsKGZyYWdtZW50LnNoYWRlciks
IDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3Qn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVM
aXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9y
KSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlz
IDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNT
U19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAn
Y3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLQot
Q3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlv
biBhbmQgYmxlbmQgbW9kZSBub3JtYWwgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgbm9ybWFsKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0
b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25U
eXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIG5vcm1hbCBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBm
dW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBtdWx0aXBseSA6IGN1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBtdWx0aXBseSkpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUu
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVM
aXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVs
ZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9N
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3Vz
dG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIHNjcmVlbiA6IGN1c3RvbShub25l
IG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzY3JlZW4pKQotUEFTUyByZW1vdmVCYXNlVVJMKGZp
bHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2NyZWVuIHNvdXJjZS1hdG9wKSwgMSAxKScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90
b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdD
U1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2NyZWVuIHNvdXJjZS1hdG9wKSwgMSAxKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIG92ZXJsYXkgOiBjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgb3ZlcmxheSkpCi1QQVNTIHJlbW92ZUJh
c2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMg
J2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBvdmVybGF5IHNvdXJjZS1hdG9w
KSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlz
dCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1
ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0
b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
Q1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlz
ICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgb3ZlcmxheSBzb3VyY2UtYXRv
cCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBkYXJr
ZW4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGFya2VuKSkKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRhcmtlbiBzb3Vy
Y2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NW
YWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAn
Q1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNv
bnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUu
bGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRl
clZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NU
ZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRhcmtlbiBzb3Vy
Y2UtYXRvcCksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9k
ZSBsaWdodGVuIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGxpZ2h0ZW4p
KQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbGln
aHRlbiBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGxp
Z2h0ZW4gc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGJsZW5kIG1vZGUgY29sb3ItZG9kZ2UgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgY29sb3ItZG9kZ2UpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZy
YWdtZW50LnNoYWRlcikgY29sb3ItZG9kZ2Ugc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlz
dENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUu
b3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQot
UEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1kb2RnZSBzb3VyY2UtYXRvcCksIDEgMSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBjb2xvci1idXJuIDogY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvbG9yLWJ1cm4pKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3ItYnVybiBzb3VyY2Ut
YXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvbG9yLWJ1cm4gc291
cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1v
ZGUgaGFyZC1saWdodCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBoYXJk
LWxpZ2h0KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIGhhcmQtbGlnaHQgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBoYXJkLWxpZ2h0IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4
IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIHNvZnQtbGlnaHQgOiBjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgc29mdC1saWdodCkpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVy
U3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25l
IG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb2Z0LWxpZ2h0IHNvdXJjZS1hdG9wKSwgMSAxKScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90
b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdD
U1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc29mdC1saWdodCBzb3VyY2UtYXRvcCksIDEg
MSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBkaWZmZXJlbmNl
IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRpZmZlcmVuY2UpKQotUEFT
UyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmls
dGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGlmZmVyZW5j
ZSBzb3VyY2UtYXRvcCksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlz
ICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19f
KSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRl
clJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENT
U0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVs
ZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRpZmZl
cmVuY2Ugc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGJsZW5kIG1vZGUgZXhjbHVzaW9uIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIGV4Y2x1c2lvbikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBleGNsdXNpb24gc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBleGNsdXNpb24gc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0
aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgaHVlIDogY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIGh1ZSkpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBodWUgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBodWUgc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXgg
ZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgc2F0dXJhdGlvbiA6IGN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBzYXR1cmF0aW9uKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJT
dHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNhdHVyYXRpb24gc291cmNlLWF0b3ApLCAxIDEpJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3Rv
dHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NT
U1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzYXR1cmF0aW9uIHNvdXJjZS1hdG9wKSwgMSAx
KScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGNvbG9yIDogY3Vz
dG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvbG9yKSkKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAn
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvbG9yIHNvdXJjZS1hdG9wKSwg
MSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxp
c3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3Ip
IGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3Igc291cmNlLWF0b3ApLCAx
IDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgbHVtaW5vc2l0
eSA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBsdW1pbm9zaXR5KSkKLVBB
U1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGx1bWlub3Np
dHkgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBp
cyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9f
XykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0
ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRD
U1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1
bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBsdW1p
bm9zaXR5IHNvdXJjZS1hdG9wKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFu
ZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGNsZWFyIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIGNsZWFyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIG5vcm1hbCBjbGVhciksIDEgMSknCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0
b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25U
eXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIG5vcm1hbCBjbGVhciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlv
biBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBjb3B5IDogY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIGNvcHkpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGNvcHkpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVj
dG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1v
dmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBub3JtYWwgY29weSksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlv
biBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBzb3VyY2Utb3ZlciA6IGN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2Utb3ZlcikpCi1QQVNTIHJlbW92ZUJhc2VVUkwo
ZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNlLW92ZXIpLCAxIDEp
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFBy
b3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMg
J0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklM
VEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNlLW92ZXIpLCAxIDEp
JwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUg
ZGVzdGluYXRpb24tb3ZlciA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBk
ZXN0aW5hdGlvbi1vdmVyKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIG5vcm1hbCBkZXN0aW5hdGlvbi1vdmVyKSwgMSAxKScKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RD
b25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9w
ZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGRlc3RpbmF0aW9uLW92ZXIpLCAxIDEpJwotCi1DdXN0
b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgc291cmNlLWlu
IDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1pbikpCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgc291
cmNlLWluKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1Zh
bHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdD
U1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29u
c3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1Rl
eHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJj
ZS1pbiksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9z
aXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1pbiA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBkZXN0aW5hdGlvbi1pbikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUu
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgZGVzdGluYXRpb24taW4pLCAxIDEpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgZGVzdGluYXRpb24taW4pLCAxIDEpJwotCi1D
dXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgc291cmNl
LW91dCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2Utb3V0KSkK
LVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1h
bCBzb3VyY2Utb3V0KSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMg
J0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18p
IGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVy
UnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NT
RmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFs
IHNvdXJjZS1vdXQpLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGFscGhh
IGNvbXBvc2l0aW5nIG1vZGUgZGVzdGluYXRpb24tb3V0IDogY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLW91dCkpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmls
dGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgZGVzdGluYXRpb24tb3V0KSwgMSAx
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIGRlc3RpbmF0aW9uLW91dCks
IDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcg
bW9kZSBzb3VyY2UtYXRvcCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
b3VyY2UtYXRvcCkpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBub3JtYWwgc291cmNlLWF0b3ApLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSBub3JtYWwgc291cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVu
Y3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgZGVzdGluYXRpb24tYXRvcCA6IGN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1hdG9wKSkKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1hbCBkZXN0
aW5hdGlvbi1hdG9wKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMg
J0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18p
IGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVy
UnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NT
RmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFs
IGRlc3RpbmF0aW9uLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgeG9yIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpIHhvcikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBub3JtYWwgeG9yKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5f
X3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBB
U1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMg
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRl
cikgbm9ybWFsIHhvciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxl
bmQgbW9kZSBmaXJzdCwgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBzZWNvbmQgOiBjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkgY2xlYXIpKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkgY2xlYXIpLCAx
IDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhciksIDEgMSkn
Ci0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBm
aXJzdCwgYmxlbmQgbW9kZSBzZWNvbmQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgY2xlYXIgbXVsdGlwbHkpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkgY2xlYXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBtdWx0aXBseSBjbGVhciksIDEgMSknCi0KLUN1c3RvbSB3aXRoIHZlcnRl
eCBzaGFkZXIgYW5kIG1peCBmdW5jdGlvbiA6IGN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXgu
c2hhZGVyKSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMSAx
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0
b20odXJsKHZlcnRleC5zaGFkZXIpIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgc291
cmNlLWF0b3ApLCAxIDEpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIG1lc2ggc2l6
ZSA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSksIDEwKQotUEFTUyByZW1v
dmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1h
dG9wKSwgMTAgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4
dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNl
LWF0b3ApLCAxMCAxMCknCi0KLUN1c3RvbSB3aXRoIG1lc2ggc2l6ZSA6IGN1c3RvbSh1cmwodmVy
dGV4LnNoYWRlciksIDEwKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIp
IG5vbmUsIDEwIDEwKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1Zh
bHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdD
U1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29u
c3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1Rl
eHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG5vbmUsIDEwIDEwKScKLQotQ3VzdG9t
IHdpdGggYm90aCBtZXNoIHNpemVzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciks
IDEwIDIwKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
MTAgMjApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVl
TGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMg
J2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCknCi0KLUN1c3RvbSB3aXRo
IG1lc2ggc2l6ZSA6IGN1c3RvbSh1cmwodmVydGV4LnNoYWRlciksIDEwKQotUEFTUyByZW1vdmVC
YXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlz
ICdjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG5vbmUsIDEwIDEwKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20odXJsKHZlcnRleC5zaGFk
ZXIpIG5vbmUsIDEwIDEwKScKLQotQ3VzdG9tIHdpdGggYm90aCBtZXNoIHNpemVzIDogY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKQotUEFTUyByZW1vdmVCYXNlVVJMKGZp
bHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxMCAyMCknCi0KLUN1c3RvbSB3aXRoIGRldGFjaGVkIG1lc2ggOiBjdXN0b20obm9uZSB1
cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0YWNoZWQpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVy
U3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgZGV0YWNoZWQpJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVj
dG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1v
dmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEgZGV0YWNoZWQpJwotCi1DdXN0b20gd2l0aCBkZXRhY2hlZCBhbmQgbWVzaCBz
aXplIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwIGRldGFjaGVkKQot
UEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0
YWNoZWQpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVl
TGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMg
J2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCknCi0KLUN1
c3RvbSB3aXRoIGRlZmF1bHQgZmlsdGVyLWJveCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
MSAxKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxp
c3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3Ip
IGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLQotQ3VzdG9tIHdpdGggaW50
ZWdlciBwYXJhbWV0ZXJzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEs
IHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVy
U3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQg
NSA2IDcpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVl
TGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMg
J2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIDEsIHAyIDIgMywgcDMg
MyA0IDUsIHA0IDQgNSA2IDcpJwotCi1DdXN0b20gd2l0aCBmbG9hdCBwYXJhbWV0ZXJzIDogY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4x
IDQuMSA1LjEsIHA0IDQuMSA1LjIgNi4zIDcuNCkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJT
dHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUg
dXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgMS4xLCBwMiAyLjIgMy4zLCBwMyAzLjEgNC4x
IDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3By
b3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1Mg
ZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAx
LCBwMSAxLjEsIHAyIDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4yIDYuMyA3LjQp
JwotCi1DdXN0b20gd2l0aCB0cmFuc2Zvcm0gdHJhbnNsYXRlIHBhcmFtZXRlciA6IGN1c3RvbShu
b25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSB0cmFuc2xhdGUoMTBweCwgMTBweCkpCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIG1hdHJp
eCgxLCAwLCAwLCAxLCAxMCwgMTApKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3Rv
X18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmls
dGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJS
dWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBw
MSBtYXRyaXgoMSwgMCwgMCwgMSwgMTAsIDEwKSknCi0KLUN1c3RvbSB3aXRoIG11bHRpcGxlIHRy
YW5zZm9ybSBwYXJhbWV0ZXJzIDogY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAx
IHRyYW5zbGF0ZSgxMHB4LCAxMHB4KSwgcDIgc2NhbGUoMikpCi1QQVNTIHJlbW92ZUJhc2VVUkwo
ZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIHAxIG1hdHJpeCgxLCAwLCAwLCAxLCAx
MCwgMTApLCBwMiBtYXRyaXgoMiwgMCwgMCwgMiwgMCwgMCkpJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVj
dG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1v
dmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCAxIDEsIHAxIG1hdHJpeCgxLCAwLCAwLCAxLCAxMCwgMTApLCBwMiBtYXRyaXgoMiwg
MCwgMCwgMiwgMCwgMCkpJwotCi1DdXN0b20gd2l0aCBtdWx0aXBsZSB0cmFuc2Zvcm1zIHNpbmds
ZSBwYXJhbWV0ZXIgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgdHJhbnNs
YXRlKDEwcHgsIDEwcHgpIHNjYWxlKDIpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxl
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRyaXgoMiwgMCwgMCwgMiwgMTAsIDEwKSknCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90
eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NT
VmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mg
c3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJf
Q1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDIsIDAsIDAsIDIsIDEwLCAx
MCkpJwotCi1DdXN0b20gd2l0aCBwZXJjZW50IHRyYW5zZm9ybSBwYXJhbWV0ZXIgOiBjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgdHJhbnNsYXRlKDUwJSwgNTAlKSkKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4
KDEsIDAsIDAsIDEsIDI1MCwgMzAwKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwg
cDEgbWF0cml4KDEsIDAsIDAsIDEsIDI1MCwgMzAwKSknCi0KLUN1c3RvbSB3aXRoIG1lc2ggc2l6
ZSBhbmQgbnVtYmVyIHBhcmFtZXRlcnMgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAz
LCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIw
LCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KScKLQotTXVsdGlwbGUgd2l0aCBm
cmFnbWVudCBzaGFkZXIgOiBncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSkgc2VwaWEoKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdncmF5c2NhbGUoMSkgY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIDEgMSkgc2VwaWEoMSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDMKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfR1JBWVNDQUxFCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnZ3JheXNjYWxlKDEpJwotUEFTUyBzdWJSdWxl
Lm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00K
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfU0VQSUEKLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdzZXBpYSgxKScKLQotQ3VzdG9tIHdpdGggYXJyYXkoKSBtYWRl
IHVwIG9mIHRocmVlIHZhbHVlcyA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBh
MSBhcnJheSgxLCAyLCAzKSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMSwgMiwgMykpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxIDEsIGExIGFycmF5KDEsIDIsIDMpKScKLQotQ3VzdG9tIHdpdGggYXJyYXkoKSBtYWRl
IHVwIG9mIHRocmVlIGZsb2F0aW5nIHBvaW50IHZhbHVlcyA6IGN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCBhMSBhcnJheSgxLjYxODAsIC0yLjcxODIsIDMuMTQxNSkpCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDEu
NjE4LCAtMi43MTgyLCAzLjE0MTUpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3Rv
X18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmls
dGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJS
dWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBh
MSBhcnJheSgxLjYxOCwgLTIuNzE4MiwgMy4xNDE1KSknCi0KLUN1c3RvbSB3aXRoIGFycmF5KCkg
bWFkZSB1cCBvZiBzZXZlcmFsIGZsb2F0aW5nIHBvaW50IGFuZCBpbnRlZ2VyIHZhbHVlcyA6IGN1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBhMSBhcnJheSgxLjYxODAsIDEsIC0yLjcx
ODIsIDAuMSwgMy4xNDE1KSkKLVBBU1MgcmVtb3ZlQmFzZVVSTChmaWx0ZXJTdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMS42MTgsIDEsIC0yLjcxODIsIDAuMSwgMy4xNDE1KSkn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJv
dG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAn
Q1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxU
RVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEgYXJyYXkoMS42MTgsIDEsIC0yLjcx
ODIsIDAuMSwgMy4xNDE1KSknCi0KLUN1c3RvbSB3aXRoIGFycmF5KCkgbWFkZSB1cCBvZiAyNDcg
ZGlmZmVyZW50IGZsb2F0aW5nIHBvaW50IHZhbHVlcyA6IGN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCBhMSBhcnJheSg2LjAwLCAzOC41OCwgNDAuMTQsIDM0LjAzLCA4My4zMywgMjQu
MTgsIDY4LjM3LCAxNS44NywgNTYuNTYsIDczLjIxLCA5OS4wNSwgMjQuNjQsIDYuMzksIDY5LjM0
LCA5MS4xOSwgMjcuOTgsIDM3LjUyLCA2MC43MSwgMjEuOTQsIDYyLjcwLCA3Ny45NiwgNjcuMjcs
IDIuNzUsIDI4LjE2LCA4Ljg4LCAxMS42MSwgMzQuODksIDQ1Ljc1LCA1NC41NSwgMzUuMDQsIDYu
MTMsIDY5LjY4LCA4MS4yMSwgNDkuNDQsIDU0Ljc0LCAyNi43NCwgOTEuNDksIDY4LjIwLCA4NC4w
NSwgNjUuODEsIDU3Ljg5LCA3My4yMiwgMTMuODcsIDcxLjczLCAxOC42MSwgOC41NCwgOS43OSwg
MjguMDUsIDE0LjExLCA2OS45MywgNDcuMTksIDEwLjQ4LCA4MS4zNSwgMzcuMTUsIDE5LjI5LCAx
NC45OCwgMzIuNTQsIDk4Ljk2LCA2OS4zNywgOTIuMjYsIDM0LjY0LCA2Ny40MywgNzEuOTIsIDQ1
LjUyLCA5LjIyLCA0MS45NiwgMzEuMjYsIDkyLjY1LCAzNS4wMiwgMzkuMDAsIDc2Ljc2LCAyOS4z
MywgMjIuOTMsIDgwLjY1LCA3MC43OCwgNDIuOTQsIDI3LjcyLCAyOC4xOSwgNzUuMTUsIDE4LjE0
LCA4OS43MSwgOTUuMzgsIDU0LjUxLCAzNi45MywgOTguNDUsIDg3LjU4LCA0NC41MSwgNzEuNzMs
IDc1LjcxLCA3MC40MywgNzguNTEsIDgyLjE5LCAzMS43MywgMi45MCwgOC4yMywgOTMuNzQsIDMx
LjI2LCA4NC43MywgNi40OCwgNDEuOTYsIDc1LjcyLCA1My45NiwgMzUuMDYsIDY3LjUwLCA3Ni42
MiwgMzUuMDIsIDEuNjIsIDEzLjA1LCAzMy41OSwgMjYuODksIDM2Ljk0LCA3NC4xMywgOTUuMDks
IDU2Ljg3LCA0Ni4wMSwgMTEuOTQsIDEyLjkyLCA0OC44OCwgMTEuMDMsIDI0LjgwLCA2OC4wNiwg
MTkuODMsIDEyLjk4LCA0MS41NiwgNjIuMDMsIDgwLjM1LCA0MS4xMCwgNS4zMSwgNDMuOTYsIDku
MDIsIDkyLjMyLCAzNC41MCwgODguNDEsIDkwLjM0LCA5Ny42MiwgNTguNzAsIDIzLjYyLCAxMy4w
MywgODUuNDEsIDI5LjczLCAzMC4yMSwgNTkuMjUsIDkxLjIyLCA3OC4yMSwgNjIuMzAsIDYwLjkz
LCAzMy4yNiwgMTYuMTMsIDk1LjYxLCA3OC42MiwgOTcuNDIsIDk2LjQyLCAzOC4wNCwgOC40OSwg
NDUuNDcsIDY4LjczLCAxOC4yMCwgMjYuNjUsIDc4LjM5LCA5NS4yNiwgNjYuODAsIDM0LjQxLCAx
MC42OSwgOTQuNDMsIDcxLjY5LCA0LjU4LCAyMy44NywgNjEuMDEsIDk1LjY4LCA4LjUxLCAxNC45
MiwgMTYuMjcsIDMwLjQxLCAxLjQwLCAxMi4zNSwgOTkuMzksIDUuODAsIDY4LjEwLCA3My44Nywg
MjguMzYsIDI0Ljk4LCA3Ny41OCwgOC43MywgMzQuMDgsIDU0LjQ1LCA4Ny42NCwgMzYuMTQsIDc0
LjY4LCAzOC4wNCwgNTYuNTQsIDQ2LjQyLCAxMi40MCwgNS45MCwgMTUuNzAsIDEwLjg4LCA1NS44
MiwgODQuNjYsIDc1Ljc0LCA4Ny45MiwgNTkuMDMsIDYwLjMwLCA0LjMyLCA3LjA1LCAzLjM0LCA5
Ljg3LCA2NC41MSwgNC42MCwgNTQuMTYsIDQ4LjgwLCA0Ni45MywgNS44NCwgOTAuMzQsIDc1LjQ4
LCAzMi41OSwgMjkuNjUsIDk0LjU3LCAyOC4yMiwgOTMuNzAsIDIzLjc5LCA4OS41NywgMTQuODQs
IDc5LjU4LCA2Mi4yOSwgNTguNzYsIDI5LjQzLCAxOS4xNiwgNDQuNDcsIDM4LjMxLCA0NC43Nywg
NDIuNjYsIDg4Ljg1LCA3NC45NiwgMjQuMDcsIDM3Ljc1LCA0MS42NSwgNjIuMzUsIDkwLjQwLCA0
MC43NywgNTMuOTMsIDgwLjIzLCA4NC40OSwgMjAuMTgsIDQ1LjM2LCAyNi4wMiwgOTMuNzIsIDY1
LjU0LCAzMi44NikpCi1QQVNTIHJlbW92ZUJhc2VVUkwoZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxIDEsIGExIGFycmF5KDYsIDM4LjU4LCA0MC4xNCwgMzQuMDMsIDgzLjMzLCAyNC4xOCwg
NjguMzcsIDE1Ljg3LCA1Ni41NiwgNzMuMjEsIDk5LjA1LCAyNC42NCwgNi4zOSwgNjkuMzQsIDkx
LjE5LCAyNy45OCwgMzcuNTIsIDYwLjcxLCAyMS45NCwgNjIuNywgNzcuOTYsIDY3LjI3LCAyLjc1
LCAyOC4xNiwgOC44OCwgMTEuNjEsIDM0Ljg5LCA0NS43NSwgNTQuNTUsIDM1LjA0LCA2LjEzLCA2
OS42OCwgODEuMjEsIDQ5LjQ0LCA1NC43NCwgMjYuNzQsIDkxLjQ5LCA2OC4yLCA4NC4wNSwgNjUu
ODEsIDU3Ljg5LCA3My4yMiwgMTMuODcsIDcxLjczLCAxOC42MSwgOC41NCwgOS43OSwgMjguMDUs
IDE0LjExLCA2OS45MywgNDcuMTksIDEwLjQ4LCA4MS4zNSwgMzcuMTUsIDE5LjI5LCAxNC45OCwg
MzIuNTQsIDk4Ljk2LCA2OS4zNywgOTIuMjYsIDM0LjY0LCA2Ny40MywgNzEuOTIsIDQ1LjUyLCA5
LjIyLCA0MS45NiwgMzEuMjYsIDkyLjY1LCAzNS4wMiwgMzksIDc2Ljc2LCAyOS4zMywgMjIuOTMs
IDgwLjY1LCA3MC43OCwgNDIuOTQsIDI3LjcyLCAyOC4xOSwgNzUuMTUsIDE4LjE0LCA4OS43MSwg
OTUuMzgsIDU0LjUxLCAzNi45MywgOTguNDUsIDg3LjU4LCA0NC41MSwgNzEuNzMsIDc1LjcxLCA3
MC40MywgNzguNTEsIDgyLjE5LCAzMS43MywgMi45LCA4LjIzLCA5My43NCwgMzEuMjYsIDg0Ljcz
LCA2LjQ4LCA0MS45NiwgNzUuNzIsIDUzLjk2LCAzNS4wNiwgNjcuNSwgNzYuNjIsIDM1LjAyLCAx
LjYyLCAxMy4wNSwgMzMuNTksIDI2Ljg5LCAzNi45NCwgNzQuMTMsIDk1LjA5LCA1Ni44NywgNDYu
MDEsIDExLjk0LCAxMi45MiwgNDguODgsIDExLjAzLCAyNC44LCA2OC4wNiwgMTkuODMsIDEyLjk4
LCA0MS41NiwgNjIuMDMsIDgwLjM1LCA0MS4xLCA1LjMxLCA0My45NiwgOS4wMiwgOTIuMzIsIDM0
LjUsIDg4LjQxLCA5MC4zNCwgOTcuNjIsIDU4LjcsIDIzLjYyLCAxMy4wMywgODUuNDEsIDI5Ljcz
LCAzMC4yMSwgNTkuMjUsIDkxLjIyLCA3OC4yMSwgNjIuMywgNjAuOTMsIDMzLjI2LCAxNi4xMywg
OTUuNjEsIDc4LjYyLCA5Ny40MiwgOTYuNDIsIDM4LjA0LCA4LjQ5LCA0NS40NywgNjguNzMsIDE4
LjIsIDI2LjY1LCA3OC4zOSwgOTUuMjYsIDY2LjgsIDM0LjQxLCAxMC42OSwgOTQuNDMsIDcxLjY5
LCA0LjU4LCAyMy44NywgNjEuMDEsIDk1LjY4LCA4LjUxLCAxNC45MiwgMTYuMjcsIDMwLjQxLCAx
LjQsIDEyLjM1LCA5OS4zOSwgNS44LCA2OC4xLCA3My44NywgMjguMzYsIDI0Ljk4LCA3Ny41OCwg
OC43MywgMzQuMDgsIDU0LjQ1LCA4Ny42NCwgMzYuMTQsIDc0LjY4LCAzOC4wNCwgNTYuNTQsIDQ2
LjQyLCAxMi40LCA1LjksIDE1LjcsIDEwLjg4LCA1NS44MiwgODQuNjYsIDc1Ljc0LCA4Ny45Miwg
NTkuMDMsIDYwLjMsIDQuMzIsIDcuMDUsIDMuMzQsIDkuODcsIDY0LjUxLCA0LjYsIDU0LjE2LCA0
OC44LCA0Ni45MywgNS44NCwgOTAuMzQsIDc1LjQ4LCAzMi41OSwgMjkuNjUsIDk0LjU3LCAyOC4y
MiwgOTMuNywgMjMuNzksIDg5LjU3LCAxNC44NCwgNzkuNTgsIDYyLjI5LCA1OC43NiwgMjkuNDMs
IDE5LjE2LCA0NC40NywgMzguMzEsIDQ0Ljc3LCA0Mi42NiwgODguODUsIDc0Ljk2LCAyNC4wNywg
MzcuNzUsIDQxLjY1LCA2Mi4zNSwgOTAuNCwgNDAuNzcsIDUzLjkzLCA4MC4yMywgODQuNDksIDIw
LjE4LCA0NS4zNiwgMjYuMDIsIDkzLjcyLCA2NS41NCwgMzIuODYpKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSg2LCAzOC41OCwgNDAuMTQsIDM0LjAzLCA4My4zMywg
MjQuMTgsIDY4LjM3LCAxNS44NywgNTYuNTYsIDczLjIxLCA5OS4wNSwgMjQuNjQsIDYuMzksIDY5
LjM0LCA5MS4xOSwgMjcuOTgsIDM3LjUyLCA2MC43MSwgMjEuOTQsIDYyLjcsIDc3Ljk2LCA2Ny4y
NywgMi43NSwgMjguMTYsIDguODgsIDExLjYxLCAzNC44OSwgNDUuNzUsIDU0LjU1LCAzNS4wNCwg
Ni4xMywgNjkuNjgsIDgxLjIxLCA0OS40NCwgNTQuNzQsIDI2Ljc0LCA5MS40OSwgNjguMiwgODQu
MDUsIDY1LjgxLCA1Ny44OSwgNzMuMjIsIDEzLjg3LCA3MS43MywgMTguNjEsIDguNTQsIDkuNzks
IDI4LjA1LCAxNC4xMSwgNjkuOTMsIDQ3LjE5LCAxMC40OCwgODEuMzUsIDM3LjE1LCAxOS4yOSwg
MTQuOTgsIDMyLjU0LCA5OC45NiwgNjkuMzcsIDkyLjI2LCAzNC42NCwgNjcuNDMsIDcxLjkyLCA0
NS41MiwgOS4yMiwgNDEuOTYsIDMxLjI2LCA5Mi42NSwgMzUuMDIsIDM5LCA3Ni43NiwgMjkuMzMs
IDIyLjkzLCA4MC42NSwgNzAuNzgsIDQyLjk0LCAyNy43MiwgMjguMTksIDc1LjE1LCAxOC4xNCwg
ODkuNzEsIDk1LjM4LCA1NC41MSwgMzYuOTMsIDk4LjQ1LCA4Ny41OCwgNDQuNTEsIDcxLjczLCA3
NS43MSwgNzAuNDMsIDc4LjUxLCA4Mi4xOSwgMzEuNzMsIDIuOSwgOC4yMywgOTMuNzQsIDMxLjI2
LCA4NC43MywgNi40OCwgNDEuOTYsIDc1LjcyLCA1My45NiwgMzUuMDYsIDY3LjUsIDc2LjYyLCAz
NS4wMiwgMS42MiwgMTMuMDUsIDMzLjU5LCAyNi44OSwgMzYuOTQsIDc0LjEzLCA5NS4wOSwgNTYu
ODcsIDQ2LjAxLCAxMS45NCwgMTIuOTIsIDQ4Ljg4LCAxMS4wMywgMjQuOCwgNjguMDYsIDE5Ljgz
LCAxMi45OCwgNDEuNTYsIDYyLjAzLCA4MC4zNSwgNDEuMSwgNS4zMSwgNDMuOTYsIDkuMDIsIDky
LjMyLCAzNC41LCA4OC40MSwgOTAuMzQsIDk3LjYyLCA1OC43LCAyMy42MiwgMTMuMDMsIDg1LjQx
LCAyOS43MywgMzAuMjEsIDU5LjI1LCA5MS4yMiwgNzguMjEsIDYyLjMsIDYwLjkzLCAzMy4yNiwg
MTYuMTMsIDk1LjYxLCA3OC42MiwgOTcuNDIsIDk2LjQyLCAzOC4wNCwgOC40OSwgNDUuNDcsIDY4
LjczLCAxOC4yLCAyNi42NSwgNzguMzksIDk1LjI2LCA2Ni44LCAzNC40MSwgMTAuNjksIDk0LjQz
LCA3MS42OSwgNC41OCwgMjMuODcsIDYxLjAxLCA5NS42OCwgOC41MSwgMTQuOTIsIDE2LjI3LCAz
MC40MSwgMS40LCAxMi4zNSwgOTkuMzksIDUuOCwgNjguMSwgNzMuODcsIDI4LjM2LCAyNC45OCwg
NzcuNTgsIDguNzMsIDM0LjA4LCA1NC40NSwgODcuNjQsIDM2LjE0LCA3NC42OCwgMzguMDQsIDU2
LjU0LCA0Ni40MiwgMTIuNCwgNS45LCAxNS43LCAxMC44OCwgNTUuODIsIDg0LjY2LCA3NS43NCwg
ODcuOTIsIDU5LjAzLCA2MC4zLCA0LjMyLCA3LjA1LCAzLjM0LCA5Ljg3LCA2NC41MSwgNC42LCA1
NC4xNiwgNDguOCwgNDYuOTMsIDUuODQsIDkwLjM0LCA3NS40OCwgMzIuNTksIDI5LjY1LCA5NC41
NywgMjguMjIsIDkzLjcsIDIzLjc5LCA4OS41NywgMTQuODQsIDc5LjU4LCA2Mi4yOSwgNTguNzYs
IDI5LjQzLCAxOS4xNiwgNDQuNDcsIDM4LjMxLCA0NC43NywgNDIuNjYsIDg4Ljg1LCA3NC45Niwg
MjQuMDcsIDM3Ljc1LCA0MS42NSwgNjIuMzUsIDkwLjQsIDQwLjc3LCA1My45MywgODAuMjMsIDg0
LjQ5LCAyMC4xOCwgNDUuMzYsIDI2LjAyLCA5My43MiwgNjUuNTQsIDMyLjg2KSknCi0KLUN1c3Rv
bSB3aXRoIHR3byBhcnJheSgpIG1hZGUgdXAgb2YgdGhyZWUgYW5kIHNpeCB2YWx1ZXMgOiBjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYTEgYXJyYXkoMSwgMiwgMyksIGEyIGFycmF5
KDEsIDIsIDMsIDQsIDUsIDYpKQotUEFTUyByZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLCAyLCAzKSwgYTIgYXJyYXkoMSwgMiwgMywgNCwg
NSwgNikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVl
TGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMg
J2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEsIGExIGFycmF5KDEsIDIsIDMp
LCBhMiBhcnJheSgxLCAyLCAzLCA0LCA1LCA2KSknCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1dGVkLXN0eWxlLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHkt
Y29tcHV0ZWQtc3R5bGUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTVjMjRi
MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1m
aWx0ZXItcHJvcGVydHktY29tcHV0ZWQtc3R5bGUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEy
ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
LTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48
L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVz
dHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS5qcyI+PC9zY3JpcHQ+Ci08
c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2lu
Zy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNlNDU0NzUuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVy
LXByb3BlcnR5LXBhcnNpbmctZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNjg0ICsw
LDAgQEAKLVRlc3QgdGhlIHBhcnNpbmcgb2YgdGhlIGN1c3RvbSgpIGZ1bmN0aW9uIG9mIHRoZSAt
d2Via2l0LWZpbHRlciBwcm9wZXJ0eS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0K
LQotQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciA6IGN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikp
Ci1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRl
cikpJwotCi1DdXN0b20gd2l0aCBmcmFnbWVudCBzaGFkZXIgOiBjdXN0b20obm9uZSB1cmwoZnJh
Z21lbnQuc2hhZGVyKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
cikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpKScKLQotQ3VzdG9tIHdpdGggYm90aCBzaGFk
ZXJzIDogY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkKLVBB
U1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1Mg
cmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpKSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJv
dG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAn
Q1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxU
RVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9t
KHVybCh2ZXJ0ZXguc2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSknCi0KLUN1c3RvbSB3aXRo
IG1peCBmdW5jdGlvbiA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVl
TGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1
bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RP
TQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5k
IGJsZW5kIG1vZGUgbm9ybWFsIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IG5vcm1hbCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVy
KSBub3JtYWwpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVl
TGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NW
YWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3Ry
dWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5n
dGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsKSknCi0KLUN1
c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBtdWx0aXBseSA6IGN1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSkpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwo
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSkpJwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENv
bnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3Bl
cmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBseSkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24g
YW5kIGJsZW5kIG1vZGUgc2NyZWVuIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIHNjcmVlbikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hh
ZGVyKSBzY3JlZW4pKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1Zh
bHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdD
U1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29u
c3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1Rl
eHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2NyZWVuKSknCi0K
LUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBvdmVybGF5IDogY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG92ZXJsYXkpKQotUEFTUyBjc3NSdWxlLnR5
cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJM
KGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgb3ZlcmxheSkpJwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENv
bnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3Bl
cmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBvdmVybGF5KSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBh
bmQgYmxlbmQgbW9kZSBkYXJrZW4gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRl
cikgZGFya2VuKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFk
ZXIpIGRhcmtlbikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4
dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkYXJrZW4pKScKLQot
Q3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGxpZ2h0ZW4gOiBjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbGlnaHRlbikpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwo
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBsaWdodGVuKSknCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29u
c3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVy
YXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIGxpZ2h0ZW4pKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFu
ZCBibGVuZCBtb2RlIGNvbG9yLWRvZGdlIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIGNvbG9yLWRvZGdlKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFy
YXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFn
bWVudC5zaGFkZXIpIGNvbG9yLWRvZGdlKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IGNvbG9yLWRvZGdlKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9k
ZSBjb2xvci1idXJuIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNvbG9y
LWJ1cm4pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGgg
aXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikg
Y29sb3ItYnVybikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFs
dWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NT
U1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25z
dHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxl
bmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4
dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBjb2xvci1idXJuKSkn
Ci0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBoYXJkLWxpZ2h0IDog
Y3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGhhcmQtbGlnaHQpKQotUEFTUyBj
c3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1v
dmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykp
IGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgaGFyZC1saWdodCkpJwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3Rv
dHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NT
U1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNT
IHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVS
X0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBoYXJkLWxpZ2h0KSknCi0KLUN1c3RvbSB3aXRo
IG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBzb2Z0LWxpZ2h0IDogY3VzdG9tKG5vbmUgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpIHNvZnQtbGlnaHQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMg
MQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc29mdC1saWdodCkpJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0
cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0
aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyBy
ZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSBzb2Z0LWxpZ2h0KSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBh
bmQgYmxlbmQgbW9kZSBkaWZmZXJlbmNlIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5z
aGFkZXIpIGRpZmZlcmVuY2UpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikgZGlmZmVyZW5jZSkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBk
aWZmZXJlbmNlKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBl
eGNsdXNpb24gOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZXhjbHVzaW9u
KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGV4Y2x1
c2lvbikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVl
TGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rv
cikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBp
cyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5D
U1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMg
J2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBleGNsdXNpb24pKScKLQotQ3Vz
dG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2RlIGh1ZSA6IGN1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBodWUpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFT
UyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgaHVlKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19w
cm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNT
IGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdl
YktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwo
c3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IGh1ZSkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgc2F0dXJh
dGlvbiA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzYXR1cmF0aW9uKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNhdHVyYXRp
b24pKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxp
c3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3Ip
IGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMg
MQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdj
dXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgc2F0dXJhdGlvbikpJwotCi1DdXN0
b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGJsZW5kIG1vZGUgY29sb3IgOiBjdXN0b20obm9uZSBt
aXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3IpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQot
UEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBt
aXgodXJsKGZyYWdtZW50LnNoYWRlcikgY29sb3IpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicK
LVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUg
aXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFz
ZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikgY29sb3IpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBibGVuZCBtb2Rl
IGx1bWlub3NpdHkgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbHVtaW5v
c2l0eSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBp
cyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBs
dW1pbm9zaXR5KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1
ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NT
VmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0
cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVu
Z3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGx1bWlub3NpdHkpKScK
LQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2RlIGNs
ZWFyIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyKSkKLVBBU1Mg
Y3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVt
b3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicp
KSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyKSknCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBl
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFs
dWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3Vi
UnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VT
VE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5j
dGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBjb3B5IDogY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIGNvcHkpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgY29weSkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxl
KSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJv
dG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBm
aWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1
YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBj
b3B5KSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcg
bW9kZSBzb3VyY2Utb3ZlciA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBz
b3VyY2Utb3ZlcikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxl
bmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hh
ZGVyKSBzb3VyY2Utb3ZlcikpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAn
Q1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykg
aXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVs
ZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJS
dWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NG
aWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUu
Y3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2Ut
b3ZlcikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5n
IG1vZGUgZGVzdGluYXRpb24tb3ZlciA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hh
ZGVyKSBkZXN0aW5hdGlvbi1vdmVyKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVj
bGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChm
cmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLW92ZXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3Rv
cicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5
cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50
LnNoYWRlcikgZGVzdGluYXRpb24tb3ZlcikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24g
YW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgc291cmNlLWluIDogY3VzdG9tKG5vbmUgbWl4KHVy
bChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1pbikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2UtaW4pKScKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3Rv
cicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5
cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3Zl
QmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50
LnNoYWRlcikgc291cmNlLWluKSknCi0KLUN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxw
aGEgY29tcG9zaXRpbmcgbW9kZSBkZXN0aW5hdGlvbi1pbiA6IGN1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1pbikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAx
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25l
IG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1pbikpJwotUEFTUyBqc1dyYXBw
ZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENv
bnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3Bl
cmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFT
UyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwo
ZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1pbikpJwotCi1DdXN0b20gd2l0aCBtaXggZnVu
Y3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgc291cmNlLW91dCA6IGN1c3RvbShub25l
IG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2Utb3V0KSkKLVBBU1MgY3NzUnVsZS50eXBl
IGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9t
KG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHNvdXJjZS1vdXQpKScKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RD
b25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9w
ZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBB
U1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJs
KGZyYWdtZW50LnNoYWRlcikgc291cmNlLW91dCkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rp
b24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgZGVzdGluYXRpb24tb3V0IDogY3VzdG9tKG5v
bmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGRlc3RpbmF0aW9uLW91dCkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJh
c2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMg
J2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlvbi1vdXQpKScK
LVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1Mg
anNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90
b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdD
U1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFT
UyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRF
Ul9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGluYXRpb24tb3V0KSknCi0KLUN1c3Rv
bSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBzb3VyY2UtYXRv
cCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2UtYXRvcCkpCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2UtYXRv
cCkpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBzb3VyY2UtYXRvcCkpJwotCi1DdXN0
b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgZGVzdGluYXRp
b24tYXRvcCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBkZXN0aW5hdGlv
bi1hdG9wKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3Ro
IGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIp
IGRlc3RpbmF0aW9uLWF0b3ApKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMg
J0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18p
IGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVy
UnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NT
RmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxl
LmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgZGVzdGlu
YXRpb24tYXRvcCkpJwotCi1DdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIGFscGhhIGNvbXBv
c2l0aW5nIG1vZGUgeG9yIDogY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIHhv
cikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSB4b3Ip
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0
b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgeG9yKSknCi0KLUN1c3RvbSB3aXRoIG1p
eCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBmaXJzdCwgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBz
ZWNvbmQgOiBjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkgY2xl
YXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbXVs
dGlwbHkgY2xlYXIpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1Zh
bHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdD
U1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29u
c3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5s
ZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVy
VmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1Rl
eHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbXVsdGlwbHkgY2xl
YXIpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBt
b2RlIGZpcnN0LCBibGVuZCBtb2RlIHNlY29uZCA6IGN1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNT
IGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIG1peCh1
cmwoZnJhZ21lbnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVj
dG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1v
dmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21l
bnQuc2hhZGVyKSBjbGVhciBtdWx0aXBseSkpJwotCi1DdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVy
IGFuZCBtaXggZnVuY3Rpb24gOiBjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG1peCh1cmwoZnJh
Z21lbnQuc2hhZGVyKSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbWl4
KHVybChmcmFnbWVudC5zaGFkZXIpKSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBtaXgodXJsKGZyYWdt
ZW50LnNoYWRlcikpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGluIENBUFMgOiBjdXN0
b20obm9uZSBNSVgodXJsKGZyYWdtZW50LnNoYWRlcikpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMg
MQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20obm9u
ZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVy
UnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5f
X3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBB
U1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMg
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVS
TChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRl
cikpKScKLQotQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBtZXNoIHNpemUgOiBjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpLCAxMCkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5v
bmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSwgMTApJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhm
aWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJS
dWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9y
JwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlw
ZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVC
YXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSksIDEwKScKLQotQ3VzdG9tIHdpdGggbWVzaCBzaXplIDogY3VzdG9tKHVybCh2ZXJ0
ZXguc2hhZGVyKSwgMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbSh1cmwodmVydGV4LnNoYWRlciksIDEw
KScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQ
cm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlz
ICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQot
UEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJ
TFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0
b20odXJsKHZlcnRleC5zaGFkZXIpLCAxMCknCi0KLUN1c3RvbSB3aXRoIGJvdGggbWVzaCBzaXpl
cyA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCkKLVBBU1MgY3NzUnVs
ZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFz
ZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAn
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMTAgMjApJwotCi1DdXN0b20gd2l0aCBkZXRhY2hlZCBtZXNoIDogY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGRldGFjaGVkKQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZGV0YWNoZWQpJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFw
cGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVj
dG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9u
VHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1v
dmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5z
aGFkZXIpLCBkZXRhY2hlZCknCi0KLUN1c3RvbSB3aXRoIGRldGFjaGVkIGFuZCBtZXNoIHNpemUg
OiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJl
bW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXIn
KSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hlZCkn
Ci1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNT
IGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJv
dG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAn
Q1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBB
U1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxU
RVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwIGRldGFjaGVkKScKLQotQ3VzdG9tIHdp
dGggbnVtYmVyIHBhcmFtZXRlcnMgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
cDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNykKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2
IDcpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0Jwot
UEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlz
dFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3Rvcikg
aXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAx
Ci1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1Nf
RklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1
c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBw
NCA0IDUgNiA3KScKLQotQ3VzdG9tIHdpdGggZmxvYXQgcGFyYW1ldGVycyA6IGN1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLjEsIHAyIDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4x
LCBwNCA0LjEgNS4yIDYuMyA3LjQpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCBwMSAxLjEsIHAyIDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4y
IDYuMyA3LjQpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVM
aXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1Zh
bHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1
Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0
aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLjEsIHAyIDIuMiAzLjMs
IHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4yIDYuMyA3LjQpJwotCi1DdXN0b20gd2l0aCBwYXJh
bWV0ZXIgbmFtZSBzYW1lIGFzIENTUyB2YWx1ZSBrZXl3b3JkIDogY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIGJhY2tncm91bmQgMCAxIDAgMSkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGJhY2tncm91bmQgMCAxIDAgMSknCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0
Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5v
cGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIGJhY2tncm91bmQgMCAxIDAgMSknCi0KLUN1c3RvbSB3aXRoIG1lc2gg
c2l6ZSBhbmQgbnVtYmVyIHBhcmFtZXRlcnMgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92
ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkg
aXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAz
LCBwMyAzIDQgNSwgcDQgNCA1IDYgNyknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUp
IGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90
b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0
ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZp
bHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktp
dENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3Vi
UnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIw
LCBwMSAxLCBwMiAyIDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KScKLQotTXVsdGlwbGUgd2l0aCBm
cmFnbWVudCBzaGFkZXIgOiBncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSkgc2VwaWEoKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdncmF5c2NhbGUoKSBjdXN0b20obm9uZSB1cmwoZnJh
Z21lbnQuc2hhZGVyKSkgc2VwaWEoKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkg
aXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3Rv
X18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmls
dGVyUnVsZS5sZW5ndGggaXMgMwotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9HUkFZU0NBTEUKLVBBU1MgcmVtb3ZlQmFzZVVSTChz
dWJSdWxlLmNzc1RleHQpIGlzICdncmF5c2NhbGUoKScKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25U
eXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92
ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlcikpJwotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuQ1NTX0ZJTFRFUl9TRVBJQQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkg
aXMgJ3NlcGlhKCknCi0KLUN1c3RvbSBpbiBDQVBTIDogQ1VTVE9NKHVybCh2ZXJ0ZXguc2hhZGVy
KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWZpbHRlcicpKSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSknCi1QQVNTIGpzV3JhcHBl
ckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNz
KGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBq
c1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29u
c3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVy
YXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNT
IHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKHVybCh2ZXJ0ZXguc2hh
ZGVyKSknCi0KLUN1c3RvbSB3aXRoIG9uZSB0cmFuc2Zvcm0gOiBjdXN0b20obm9uZSB1cmwoZnJh
Z21lbnQuc2hhZGVyKSwgb25lVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVS
TChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG9uZVRyYW5zZm9ybSByb3RhdGUoMGRlZykp
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFBy
b3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMg
J0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklM
VEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBvbmVUcmFuc2Zvcm0gcm90YXRlKDBkZWcpKScK
LQotQ3VzdG9tIHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtcyA6IGN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCBtdWx0aXBsZVRyYW5zZm9ybSByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUo
MCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG11bHRpcGxlVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSBw
ZXJzcGVjdGl2ZSgwKSBzY2FsZSgwLCAwKSB0cmFuc2xhdGUoMHB4LCAwcHgpKScKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxp
c3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxl
Lm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00K
LVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwo
ZnJhZ21lbnQuc2hhZGVyKSwgbXVsdGlwbGVUcmFuc2Zvcm0gcm90YXRlKDBkZWcpIHBlcnNwZWN0
aXZlKDApIHNjYWxlKDAsIDApIHRyYW5zbGF0ZSgwcHgsIDBweCkpJwotCi1DdXN0b20gd2l0aCB0
d28gc2VwYXJhdGUgdHJhbnNmb3JtcyA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCBmaXJzdFRyYW5zZm9ybSByb3RhdGUoMGRlZyksIHNlY29uZFRyYW5zZm9ybSByb3RhdGUoMGRl
ZykpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBmaXJzdFRy
YW5zZm9ybSByb3RhdGUoMGRlZyksIHNlY29uZFRyYW5zZm9ybSByb3RhdGUoMGRlZykpJwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFByb3RvdHlw
ZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMgJ0NTU1Zh
bHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1QQVNTIHN1
YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0NV
U1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCBmaXJzdFRyYW5zZm9ybSByb3RhdGUoMGRlZyksIHNlY29u
ZFRyYW5zZm9ybSByb3RhdGUoMGRlZykpJwotCi1DdXN0b20gd2l0aCBhIHNpbmdsZSBlbGVtZW50
IGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDAgYXJyYXkoMSkp
Ci1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1Q
QVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0MCBhcnJheSgx
KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQwIGFycmF5KDEpKScKLQotQ3VzdG9tIHdp
dGggYSBzaW5nbGUgbmVnYXRpdmUgZWxlbWVudCBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlciksIHQxIGFycmF5KC0xLjAxKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUg
dXJsKGZyYWdtZW50LnNoYWRlciksIHQxIGFycmF5KC0xLjAxKSknCi1QQVNTIGpzV3JhcHBlckNs
YXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dy
YXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3Ry
dWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRp
b25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJl
bW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIHQxIGFycmF5KC0xLjAxKSknCi0KLUN1c3RvbSB3aXRoIG11bHRpcGxlIGVsZW1l
bnRzIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDIgYXJyYXko
MSwgMiwgMywgNCwgNSkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCB0MiBhcnJheSgxLCAyLCAzLCA0LCA1KSknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRl
clJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUu
X19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFz
cyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1Q
QVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlz
IFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VV
Ukwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciks
IHQyIGFycmF5KDEsIDIsIDMsIDQsIDUpKScKLQotQ3VzdG9tIHdpdGggbXVsdGlwbGUgc2lnbmVk
IGZsb2F0IGVsZW1lbnRzIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgdDMgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlz
IDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQzIGFycmF5KDEsIC0yLjIsIDMuMTQsIDAuNCwgNSkp
JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NTVmFsdWVMaXN0JwotUEFT
UyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMgJ0NTU1ZhbHVlTGlzdFBy
b3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5jb25zdHJ1Y3RvcikgaXMg
J0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxlLmxlbmd0aCBpcyAxCi1Q
QVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklM
VEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3NzVGV4dCkgaXMgJ2N1c3Rv
bShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0MyBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQs
IDUpKScKLQotTXVsdGlwbGUgYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCB0NCBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpLCB0NSBhcnJheSgxLCAyLCAzKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDEKLVBB
U1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQ0IGFycmF5KDEs
IC0yLjIsIDMuMTQsIDAuNCwgNSksIHQ1IGFycmF5KDEsIDIsIDMpKScKLVBBU1MganNXcmFwcGVy
Q2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3Mo
ZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpz
V3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25z
dHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJh
dGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1Mg
cmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgdDQgYXJyYXkoMSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgdDUgYXJyYXkoMSwg
MiwgMykpJwotCi1MZWdhY3kgLSBDdXN0b20gd2l0aCBtZXNoIGJveCBzaXplcyBhbmQgY29udGVu
dC1ib3ggOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxIGNvbnRlbnQtYm94
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQot
UEFTUyByZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLVBB
U1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNX
cmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5
cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NW
YWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBz
dWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9D
VVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9u
ZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLQotTGVnYWN5IC0gQ3VzdG9tIHdpdGggbWVz
aCBib3ggc2l6ZXMgYW5kIGJvcmRlci1ib3ggOiBjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgMSAxIGJvcmRlci1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCAxIDEpJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlKSBpcyAnQ1NT
VmFsdWVMaXN0JwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLl9fcHJvdG9fXykgaXMg
J0NTU1ZhbHVlTGlzdFByb3RvdHlwZScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5j
b25zdHJ1Y3RvcikgaXMgJ0NTU1ZhbHVlTGlzdENvbnN0cnVjdG9yJwotUEFTUyBmaWx0ZXJSdWxl
Lmxlbmd0aCBpcyAxCi1QQVNTIHN1YlJ1bGUub3BlcmF0aW9uVHlwZSBpcyBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5DU1NfRklMVEVSX0NVU1RPTQotUEFTUyByZW1vdmVCYXNlVVJMKHN1YlJ1bGUuY3Nz
VGV4dCkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEpJwotCi1MZWdh
Y3kgLSBDdXN0b20gd2l0aCBtZXNoIGJveCBzaXplcyBhbmQgcGFkZGluZy1ib3ggOiBjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxIHBhZGRpbmctYm94KQotUEFTUyBjc3NSdWxl
LnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMQotUEFTUyByZW1vdmVCYXNl
VVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykpIGlzICdj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKScKLVBBU1MganNXcmFwcGVyQ2xh
c3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlzdCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmls
dGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3Jh
cHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1
Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGggaXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlv
blR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVt
b3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlzICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSwgMSAxKScKLQotTGVnYWN5IC0gQ3VzdG9tIHdpdGggcGFydGlhbCBtZXNoIGJveCBz
aXplIGFuZCBwYWRkaW5nLWJveCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAx
MCBwYWRkaW5nLWJveCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24u
bGVuZ3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEwKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlz
dCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1
ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0
b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
Q1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTApJwotCi1MZWdhY3kgLSBDdXN0
b20gd2l0aCBwYWRkaW5nLWJveCBhbmQgZGV0YWNoZWQgOiBjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgcGFkZGluZy1ib3ggZGV0YWNoZWQpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAx
Ci1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNTIHJlbW92ZUJhc2VVUkwoZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSkgaXMgJ2N1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRhY2hlZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZp
bHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1
bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJD
bGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBpcyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3In
Ci1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEKLVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBl
IGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJh
c2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIGRldGFjaGVkKScKLQotTGVnYWN5IC0gQ3VzdG9tIHdpdGggYm90aCBtZXNoLXNpemVzIGFu
ZCBwYWRkaW5nLWJveCA6IGN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCBw
YWRkaW5nLWJveCkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDEKLVBBU1MgcmVtb3ZlQmFzZVVSTChkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpKSBpcyAnY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciks
IDEwIDIwKScKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZSkgaXMgJ0NTU1ZhbHVlTGlz
dCcKLVBBU1MganNXcmFwcGVyQ2xhc3MoZmlsdGVyUnVsZS5fX3Byb3RvX18pIGlzICdDU1NWYWx1
ZUxpc3RQcm90b3R5cGUnCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuY29uc3RydWN0
b3IpIGlzICdDU1NWYWx1ZUxpc3RDb25zdHJ1Y3RvcicKLVBBU1MgZmlsdGVyUnVsZS5sZW5ndGgg
aXMgMQotUEFTUyBzdWJSdWxlLm9wZXJhdGlvblR5cGUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
Q1NTX0ZJTFRFUl9DVVNUT00KLVBBU1MgcmVtb3ZlQmFzZVVSTChzdWJSdWxlLmNzc1RleHQpIGlz
ICdjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjApJwotCi1MZWdhY3kgLSBD
dXN0b20gd2l0aCBtZXNoLXNpemVzLCBwYWRkaW5nLWJveCBhbmQgZGV0YWNoZWQgOiBjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAgcGFkZGluZy1ib3ggZGV0YWNoZWQpCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAxCi1QQVNT
IHJlbW92ZUJhc2VVUkwoZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSkgaXMgJ2N1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCBkZXRhY2hl
ZCknCi1QQVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUpIGlzICdDU1NWYWx1ZUxpc3QnCi1Q
QVNTIGpzV3JhcHBlckNsYXNzKGZpbHRlclJ1bGUuX19wcm90b19fKSBpcyAnQ1NTVmFsdWVMaXN0
UHJvdG90eXBlJwotUEFTUyBqc1dyYXBwZXJDbGFzcyhmaWx0ZXJSdWxlLmNvbnN0cnVjdG9yKSBp
cyAnQ1NTVmFsdWVMaXN0Q29uc3RydWN0b3InCi1QQVNTIGZpbHRlclJ1bGUubGVuZ3RoIGlzIDEK
LVBBU1Mgc3ViUnVsZS5vcGVyYXRpb25UeXBlIGlzIFdlYktpdENTU0ZpbHRlclZhbHVlLkNTU19G
SUxURVJfQ1VTVE9NCi1QQVNTIHJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSBpcyAnY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwIGRldGFjaGVkKScKLVBBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFy
c2luZy1pbnZhbGlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQtZXhwZWN0ZWQudHh0CmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxMTBmNWI0Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5n
LWludmFsaWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNDA0ICswLDAgQEAKLVRl
c3QgdGhlIHBhcnNpbmcgb2YgY3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhlIC13ZWJraXQtZmlsdGVy
IHByb3BlcnR5LgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi1FbXB0eSBmdW5j
dGlvbiA6IGN1c3RvbSgpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1ObyB2YWx1ZXMgMSA6IGN1c3RvbSgsKQotUEFTUyBjc3NSdWxl
LnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTm8gdmFsdWVz
IDIgOiBjdXN0b20oLCwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1Ub28gbWFueSBzaGFkZXJzIDEgOiBjdXN0b20odXJsKHNoYWRl
cjEpIHVybChzaGFkZXIyKSB1cmwoc2hhZGVyMikpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Ub28gbWFueSBzaGFkZXJzIDIgOiBj
dXN0b20obm9uZSBub25lIG5vbmUpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Ub28gbWFueSBzaGFkZXJzIDMgOiBjdXN0b20obm9u
ZSB1cmwoc2hhZGVyMSkgdXJsKHNoYWRlcjIpIHVybChzaGFkZXIyKSkKLVBBU1MgY3NzUnVsZS50
eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24u
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlv
biBhcyB2ZXJ0ZXggc2hhZGVyIDogY3VzdG9tKG1peCh1cmwoc2hhZGVyKSkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVu
Y3Rpb24gd2l0aCB3cm9uZyBuYW1lIDogY3VzdG9tKG5vbmUgZm4odXJsKHNoYWRlcikpKQotUEFT
UyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
TWl4IGZ1bmN0aW9uIHdpdGggMCBhcmdzIDogY3VzdG9tKG5vbmUgbWl4KCkpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVu
Y3Rpb24gd2l0aCBmaXJzdCBhcmcgbm90IGEgVVJJIDogY3VzdG9tKG5vbmUgbWl4KG5vbmUpKQot
UEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotTWl4IGZ1bmN0aW9uIHdpdGggc2Vjb25kIGFyZyBub3QgYSBibGVuZCBtb2RlIG9yIGFscGhh
IGNvbXBvc2l0aW5nIG1vZGUgOiBjdXN0b20obm9uZSBtaXgodXJsKHNoYWRlcikgMCkpCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1N
aXggZnVuY3Rpb24gd2l0aCB0aGlyZCBhcmcgbm90IGEgYmxlbmQgbW9kZSBvciBhbHBoYSBjb21w
b3NpdGluZyBtb2RlIDogY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIG5vcm1hbCAwKSkKLVBB
U1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LU1peCBmdW5jdGlvbiB3aXRoIHR3byBibGVuZCBtb2RlcyA6IGN1c3RvbShub25lIG1peCh1cmwo
c2hhZGVyKSBtdWx0aXBseSBzY3JlZW4pKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggdHdvIGFscGhh
IGNvbXBvc2l0aW5nIG1vZGVzIDogY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIHNvdXJjZS1v
dmVyIGRlc3RpbmF0aW9uLW92ZXIpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggYWxwaGEgY29tcG9z
aXRpbmcgbW9kZSAncGx1cy1kYXJrZXInLCB3aGljaCBzaG91bGQgb25seSBhcHBseSB0byAtd2Vi
a2l0LWJhY2tncm91bmQtY29tcG9zaXRlIDogY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIHBs
dXMtZGFya2VyKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVu
Z3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0
ZXInKSBpcyBudWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUg
J3BsdXMtbGlnaHRlcicsIHdoaWNoIHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dy
b3VuZC1jb21wb3NpdGUgOiBjdXN0b20obm9uZSBtaXgodXJsKHNoYWRlcikgcGx1cy1saWdodGVy
KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLU1peCBmdW5jdGlvbiB3aXRoIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgJ2hpZ2hsaWdo
dCcsIHdoaWNoIHNob3VsZCBvbmx5IGFwcGx5IHRvIC13ZWJraXQtYmFja2dyb3VuZC1jb21wb3Np
dGUgOiBjdXN0b20obm9uZSBtaXgodXJsKHNoYWRlcikgaGlnaGxpZ2h0KSkKLVBBU1MgY3NzUnVs
ZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5j
dGlvbiB3aXRoIDQgYXJncyA6IGN1c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSBtdWx0aXBseSBj
bGVhciBub3JtYWwpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotTWl4IGZ1bmN0aW9uIHdpdGggY29tbWEgc2VwYXJhdG9ycyA6IGN1
c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSwgbXVsdGlwbHksIGNsZWFyKSkKLVBBU1MgY3NzUnVs
ZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU1peCBmdW5j
dGlvbiB3aXRoIGNvbW1hIHRlcm1pbmF0b3IgOiBjdXN0b20obm9uZSBtaXgodXJsKHNoYWRlciks
IG11bHRpcGx5IGNsZWFyLCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0
aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZmlsdGVyJykgaXMgbnVsbAotCi1NaXggZnVuY3Rpb24gd2l0aCBvbmUgY29tbWEgOiBjdXN0
b20obm9uZSBtaXgoLCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9u
Lmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykgaXMgbnVsbAotCi1ObyBzaGFkZXIgOiBjdXN0b20obm9uZSwgMTAgMjApCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1U
b28gbWFueSBtZXNoIHNpemVzIDogY3VzdG9tKG5vbmUsIDEwIDIwIDMwKQotUEFTUyBjc3NSdWxl
LnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotV3JvbmcgbWVz
aC1ib3ggdHlwZSAtICdwYWRkaW5nJyA6IGN1c3RvbSh1cmwoc2hhZGVyKSwgcGFkZGluZykKLVBB
U1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LVdyb25nIG1lc2gtYm94IHR5cGUgLSAnbm9uZScgOiBjdXN0b20odXJsKHNoYWRlciksIG5vbmUp
Ci1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1Q
QVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVs
bAotCi1Nb3JlIG1lc2gtYm94IHR5cGVzIDogY3VzdG9tKHVybChzaGFkZXIpLCBwYWRkaW5nLWJv
eCBmaWx0ZXItYm94KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotV3Jvbmcgb3JkZXIgZm9yIG1lc2gtZGV0YWNoZWQgYW5kIG1lc2gt
Ym94IHR5cGUgOiBjdXN0b20odXJsKHNoYWRlciksIGRldGFjaGVkIHBhZGRpbmctYm94KQotUEFT
UyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
V3Jvbmcgb3JkZXIgZm9yIG1lc2ggc2l6ZSBhbmQgbWVzaC1ib3ggdHlwZSA6IGN1c3RvbSh1cmwo
c2hhZGVyKSwgcGFkZGluZy1ib3ggMTApCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1Ub28gbWFueSBtZXNoIHNpemVzIHdpdGggbWVz
aC1ib3ggdHlwZSA6IGN1c3RvbSh1cmwoc2hhZGVyKSwgMjAgMzAgNDAgcGFkZGluZy1ib3gpCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci1JbnZhbGlkIGNvbW1hIGJldHdlZW4gbWVzaC1zaXplcyA6IGN1c3RvbSh1cmwoc2hhZGVyKSwg
MjAsIDQwIHBhZGRpbmctYm94KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotSW52YWxpZCBjb21tYSBiZWZvcmUgbWVzaCB0eXBlIDog
Y3VzdG9tKHVybChzaGFkZXIpLCAyMCwgcGFkZGluZy1ib3gpCi1QQVNTIGNzc1J1bGUudHlwZSBp
cyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1ObyBtZXNoIHBhcmFtZXRl
ciA6IGN1c3RvbSh1cmwoc2hhZGVyKSwgKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBk
ZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotV3JvbmcgbWVzaCB0eXBlIC0gY29ycmVjdCBp
ZGVudGlmaWVyIGlzICdkZXRhY2hlZCcgOiBjdXN0b20odXJsKHNoYWRlciksIGRldGFjaCkKLVBB
U1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1Mg
ZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0K
LU5vIG1lc2ggc2l6ZSA6IGN1c3RvbSh1cmwoc2hhZGVyKSwgLCBwMSAyKQotUEFTUyBjc3NSdWxl
LnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTmVnYXRpdmUg
c2luZ2xlIG1lc2ggc2l6ZSA6IGN1c3RvbSh1cmwoc2hhZGVyKSwgLTEwKQotUEFTUyBjc3NSdWxl
LnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTmVnYXRpdmUg
Ym90aCBtZXNoIHNpemVzIDogY3VzdG9tKHVybChzaGFkZXIpLCAtMTAgLTEwKQotUEFTUyBjc3NS
dWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTmVnYXRp
dmUgYW5kIHBvc2l0aXZlIG1lc2ggc2l6ZSA6IGN1c3RvbSh1cmwoc2hhZGVyKSwgLTEwIDEwKQot
UEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFT
UyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwK
LQotWmVybyBzaW5nbGUgbWVzaCBzaXplIDogY3VzdG9tKHVybChzaGFkZXIpLCAwKQotUEFTUyBj
c3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNs
YXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotWmVy
byBib3RoIG1lc2ggc2l6ZXMgOiBjdXN0b20odXJsKHNoYWRlciksIDAgMCkKLVBBU1MgY3NzUnVs
ZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRp
b24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLTAgYW5kIDEg
bWVzaCBzaXplcyA6IGN1c3RvbSh1cmwoc2hhZGVyKSwgMCAxKQotUEFTUyBjc3NSdWxlLnR5cGUg
aXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotVG9vIG1hbnkgcGFyYW1l
dGVyIHZhbHVlcyA6IGN1c3RvbSh1cmwoc2hhZGVyKSwgcDEgMSAyIDMgNCA1KQotUEFTUyBjc3NS
dWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotSW52YWxp
ZCBwYXJhbWV0ZXIgdHlwZXMgOiBjdXN0b20odXJsKHNoYWRlciksIHAxIDEuMCAyLjAgJ3RleHQn
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotTm8gcGFyYW1ldGVyIHZhbHVlIDEgOiBjdXN0b20odXJsKHNoYWRlciksIHAxKQotUEFT
UyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBk
ZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQot
Tm8gcGFyYW1ldGVyIHZhbHVlIDIgOiBjdXN0b20odXJsKHNoYWRlciksIHAxLCBwMiwgcDMpCi1Q
QVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNT
IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAot
Ci1PbmUgaW52YWxpZCB0cmFuc2Zvcm0gOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlk
IGludmFsaWRfcm90YXRlKDBkZWcpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNs
YXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotTXVsdGlwbGUgaW52YWxpZCB0cmFuc2Zvcm1zIDog
Y3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCBpbnZhbGlkX3JvdGF0ZSgwZGVnKSBpbnZh
bGlkX3BlcnNwZWN0aXZlKDApKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotSW52YWxpZCB0cmFuc2Zvcm0gYmV0d2VlbiB2YWxpZCBv
bmVzIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCByb3RhdGUoMGRlZykgaW52YWxp
ZF9yb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gYmV0d2Vl
biBpbnZhbGlkIG9uZXMgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIGludmFsaWRf
cm90YXRlKDBkZWcpIHBlcnNwZWN0aXZlKDApIGFub3RoZXJfaW52YWxpZCgwKSkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVZhbGlk
IHRyYW5zZm9ybSB3aXRob3V0IGxlYWRpbmcgY29tbWEgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSBzb21lSWQgcGVyc3BlY3RpdmUoMCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRl
Y2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1WYWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFpbGlu
ZyBjb21tYSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBzb21lSWQgcGVyc3BlY3RpdmUoMCks
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotVmFsaWQgdHJhbnNmb3JtIHdpdGggdHJhaWxpbmcgY29tbWEgYW5kIHdpdGhvdXQgbGVh
ZGluZyBjb21tYSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBwZXJzcGVjdGl2ZSgw
KSwpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
bnVsbAotCi1JbnZhbGlkIHRyYW5zZm9ybSB3aXRoIHRyYWlsaW5nIGNvbW1hIDogY3VzdG9tKG5v
bmUgdXJsKHNoYWRlciksIHNvbWVJZCBpbnZhbGlkX3JvdGF0ZSgwZGVnKSwpCi1QQVNTIGNzc1J1
bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0
aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZhbGlk
IHRyYW5zZm9ybSB3aXRob3V0IGxlYWRpbmcgY29tbWEgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1FbXB0eSB0cmFuc2Zvcm0gKG9ubHkg
dGhlIGlkKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBzb21lSWQpCi1QQVNTIGNzc1J1bGUu
dHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9u
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1FbXB0eSB0cmFu
c2Zvcm0gKHdpdGhvdXQgdGhlIGlkKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCkKLVBBU1Mg
Y3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUVt
cHR5IHRyYW5zZm9ybSAodHdvIGVtcHR5IGNvbW1hcykgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSwsKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlz
IG51bGwKLQotVmFsaWQgdHJhbnNmb3JtIHdpdGggaW52YWxpZCBjaGFyYWN0ZXJzIDogY3VzdG9t
KG5vbmUgdXJsKHNoYWRlciksc29tZUlkIHJvdGF0ZSgwZGVnKSAqLi0sKQotUEFTUyBjc3NSdWxl
LnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotRW1wdHkgYXJy
YXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgpKQotUEFTUyBjc3NSdWxl
LnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlv
bi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotT25lIGNvbW1h
IGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLCkpCi1QQVNT
IGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRl
Y2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1N
dWx0aWxlIGNvbW1hcyBpbiBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFy
cmF5KCwsLCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0
aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVy
JykgaXMgbnVsbAotCi1NdWx0aXBsZSBjb21tYXMgd2l0aCBhIHZhbHVlIGluIGFycmF5KCkgOiBj
dXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLCwxLCkpCi1QQVNTIGNzc1J1bGUudHlw
ZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1PbmUgY29tbWEgZm9s
bG93ZWQgYnkgYSBuZWdhdGl2ZSB2YWx1ZSBpbiBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNo
YWRlciksIGlkIGFycmF5KCwtNCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xh
cmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1PbmUgY29tbWEgZm9sbG93ZWQgYnkgYSB2YWx1ZSBp
biBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KCw0KSkKLVBBU1Mg
Y3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVj
bGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9u
ZSBuZWdhdGl2ZSB2YWx1ZSBmb2xsb3dlZCBieSBhIGNvbW1hIGluIGFycmF5KCkgOiBjdXN0b20o
bm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoLTQsKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEK
LVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLU9uZSB2YWx1ZSBmb2xsb3dlZCBi
eSBhIGNvbW1hIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXko
NCwpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlz
IG51bGwKLQotQSBzZXJpZXMgb2YgY29ycmVjdCB2YWx1ZXMgZm9sbG93ZWQgYnkgYSBjb21tYSBp
biBhcnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEsIDIsIDMsIDQs
KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAK
LVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBu
dWxsCi0KLUEgc2VyaWVzIG9mIGNvcnJlY3QgdmFsdWVzIGZvbGxvd2VkIGJ5IGEgbGV0dGVyIGlu
IGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoMSwgMiwgMywgNCwg
eCkpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAw
Ci1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMg
bnVsbAotCi1Ud28gY29tbWFzIGFzIHNlcGFyYXRvciBiZXR3ZWVuIHZhbHVlcyBpbiBhcnJheSgp
IDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEsIDIsICwgNCkpCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1MZWFk
aW5nIGNvbW1hIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXko
LDEsIDIsIDMsIDQpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5s
ZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZp
bHRlcicpIGlzIG51bGwKLQotU2VtaWNvbG9uIHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkoKSA6
IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxOyAyOyAzOyA0KSkKLVBBU1MgY3Nz
UnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFy
YXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLVNwYWNl
IHNlcGFyYXRlZCB2YWx1ZXMgaW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBp
ZCBhcnJheSgxIDIgMyA0KSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRp
b24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1maWx0ZXInKSBpcyBudWxsCi0KLVNwYWNlIHNlcGFyYXRlZCB2YWx1ZXMgd2l0aCBjb21tYSB0
ZXJtaW5hdG9yIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXko
MSAyIDMgNCwpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5n
dGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRl
cicpIGlzIG51bGwKLQotU3BhY2Ugc2VwYXJhdGVkIHZhbHVlcyB3aXRoIGxlYWRpbmcgY29tbWEg
aW4gYXJyYXkoKSA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsIDEgMiAzIDQp
KQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAot
UEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51
bGwKLQotTmFOIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXko
TmFOKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlz
IDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBp
cyBudWxsCi0KLU5hTiBhbmQgdmFsdWVzIGluIGFycmF5KCkgOiBjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMSwgMiwgTmFOLCAzKSkKLVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBB
U1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBBU1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxsCi0KLUludmFsaWQgdW5pdCB2YWx1ZSBpbiBh
cnJheSgpIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDFweCkpCi1QQVNTIGNz
c1J1bGUudHlwZSBpcyAxCi1QQVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xh
cmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotCi1JbnZh
bGlkIHVuaXQgdmFsdWUgaW4gYXJyYXkoKSwgc2Vjb25kIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRl
ciksIGlkIGFycmF5KG5vbmUpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJh
dGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LWZpbHRlcicpIGlzIG51bGwKLQotSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCksIHRo
aXJkIDogY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDFkZWcpKQotUEFTUyBjc3NS
dWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMgMAotUEFTUyBkZWNsYXJh
dGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlzIG51bGwKLQotSW52YWxp
ZCB1bml0IHZhbHVlIGluIGFycmF5KCksIGF0IHRoZSBlbmQgb2YgYSBwYXJ0aWFsbHkgdmFsaWQg
dmFsdWUgbGlzdCA6IGN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCAzLCA0
cHgpKQotUEFTUyBjc3NSdWxlLnR5cGUgaXMgMQotUEFTUyBkZWNsYXJhdGlvbi5sZW5ndGggaXMg
MAotUEFTUyBkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIGlz
IG51bGwKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQot
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0
ZXItcHJvcGVydHktcGFyc2luZy1pbnZhbGlkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1pbnZhbGlkLmh0bWwKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlmODVjYTAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmct
aW52YWxpZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotPCFET0NUWVBFIEhU
TUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9o
ZWFkPgotPGJvZHk+Ci08cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUi
PjwvZGl2PgotPHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNp
bmctY29tbW9uLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3Vz
dG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLWludmFsaWQuanMiPjwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmcuaHRtbCBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMzMDkxNDAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmcuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAi
LS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5
PgotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxz
Y3JpcHQgc3JjPSIuLi9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wYXJzaW5nLWNvbW1vbi5q
cyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXIt
cHJvcGVydHktcGFyc2luZy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItcmVs
b2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1yZWxvYWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA4YjEzNzg5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1yZWxvYWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAs
MCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3Rv
bS1maWx0ZXItcmVsb2FkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItcmVsb2FkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE3
OWQxM2UuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0
b20tZmlsdGVyLXJlbG9hZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzUgKzAsMCBAQAotPCFE
T0NUWVBFIGh0bWw+Ci08IS0tIAotICAgIFRoaXMgdGVzdHMgdmVyaWZpZXMgdGhhdCB3ZSBkb24n
dCBhc3NlcnQgd2hlbiB0aGUgc3R5bGUgaXMgcmVjYWxjdWxhdGVkIGJ1dCB0aGUgZmlsdGVyIHBy
b3BlcnR5IGRvZXNuJ3QgY2hhbmdlLgotLS0+Ci08aHRtbD4KLTxoZWFkPgotICAgIDxzY3JpcHQ+
Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5j
ZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRp
bERvbmUoKTsKLSAgICAgICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIHRlc3QoKQotICAgICAgICB7
Ci0gICAgICAgICAgICAvLyBGb3JjZSBhIGxheW91dC4KLSAgICAgICAgICAgIGRvY3VtZW50LmJv
ZHkuY2xpZW50SGVpZ2h0OwotICAgICAgICAgICAgdmFyIGJveGVzID0gZG9jdW1lbnQucXVlcnlT
ZWxlY3RvckFsbCgiLmJveCIpOwotICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBib3hl
cy5sZW5ndGg7ICsraSkKLSAgICAgICAgICAgICAgICBib3hlc1tpXS5jbGFzc0xpc3QuYWRkKCJ0
cmlnZ2VyLXN0eWxlLXJlY2FsYyIpOwotICAgICAgICAgICAgCi0gICAgICAgICAgICAvLyBTd2l0
Y2ggdGhlIHBhcmVudCB0byBjb21wb3NpdGVkIG1vZGUsIHNvIHRoYXQgd2UgY2FuIHRyaWdnZXIg
Ci0gICAgICAgICAgICAvLyBhIHJlYnVpbGQgb2YgdGhlIGNvbXBvc2l0aW5nIGxheWVyIHRyZWUu
Ci0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLndlYmtpdFRyYW5zZm9ybSA9ICJ0cmFu
c2xhdGVaKDBweCkiCi0KLSAgICAgICAgICAgIC8vIEZvcmNlIGEgbGF5b3V0LgotICAgICAgICAg
ICAgZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQ7Ci0KLSAgICAgICAgICAgIC8vIElmIHdlIGdl
dCB0aGlzIGZhciB3aXRoIG5vIGFzc2VydCwgdGhlIHRlc3QgcGFzc2VkLgotICAgICAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAg
ICAgICAgLmJveCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgICAgICB3aWR0
aDogNTBweDsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOwotICAgICAgICAg
ICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7Ci0gICAgICAgIH0KLQotICAgICAg
ICAudmVydGV4X3NoYWRlcgotICAgICAgICB7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjog
Y3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQudnMnKSk7Ci0gICAgICAgIH0K
LQotICAgICAgICAuZnJhZ21lbnRfc2hhZGVyCi0gICAgICAgIHsKLSAgICAgICAgICAgIC13ZWJr
aXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0
LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgIH0KLQotICAgICAgICAuYm90aF9z
aGFkZXJzCi0gICAgICAgIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9j
b2xvci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAgfQotCi0gICAg
ICAgIC50cmlnZ2VyLXN0eWxlLXJlY2FsYyB7Ci0gICAgICAgICAgICAvKiBObyBjaGFuZ2UsIHdl
IGp1c3QgbmVlZCBhIG5ldyBzdHlsZSByZWNhbGN1bGF0aW9uLiAqLwotICAgICAgICB9Ci0gICAg
PC9zdHlsZT4KLTwvaGVhZD4KLQotPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgotICAgIDwhLS0gCi0g
ICAgICAgIFlvdSBzaG91bGQgc2VlIHRocmVlIGdyZWVuIGJveGVzLiBMYXN0IHR3byBib3hlcyBo
YXZlIGEgZGlmZmVyZW50IHNoYWRlIG9mIGdyZWVuLiBMYXN0IGJveCBpcyBzbGlnaHRseSBiaWdn
ZXIgb24gdGhlIGxlZnQgc2lkZS4KLSAgICAgICAgVGhlIHRlc3QgcGFzc2VzIGlmIHRoZXJlIGlz
IG5vIGNyYXNoIG9yIGFzc2VydC4KLSAgICAtLT4KLQotICAgIDxkaXYgY2xhc3M9ImJveCB2ZXJ0
ZXhfc2hhZGVyIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3ggYm90aF9zaGFkZXJzIj48L2Rp
dj4KLSAgICA8ZGl2IGNsYXNzPSJib3ggZnJhZ21lbnRfc2hhZGVyIj48L2Rpdj4KLQotPC9ib2R5
PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLXNoYWRlci1jYWNoZS1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLWNhY2hlLWV4cGVjdGVkLnBuZwpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZGQzYmQ0NWFlYWM1NDY1YWZlYzJlYmU4YWE3
ODEwMWE4NGQxYjgwNi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApH
SVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAxNjE2MAp6Y21l
SHVjfm56WipGTWV6JloxQ31wO2BybjF7NT8qMGplU0BOPF4oVjVEPU45WUdSbHwkTipIU21RaDhG
aCRKRSsKelFZdDc4Z2RxWHAxJlJ6fFAhTEZuNUZ2eWkhMn0yaTBscExhbWRvbipUZFNfRl9Vb0B9
YEIjJFRKKHR7X1hZY2JvCnomKSl1Yyg5d1NKIVppejNSOCR1NC1MdmJFaXBuZnE2X3VJQz1GYkh5
d31aYUYwQTRsKSpjfVYtSU9GQVUpPDV2UAp6JUohfTFvXmEydC1kPiliOWA0NGMmOTw0Rm5yJH5X
R2RKSTY7PGVxPl5SKU1pR1lLangpO1c4M2VSQ3Z1I3NIQCMKekQlblJpWl93eDVSe1lza0A5V3NF
ZWYwXmQmWDRsNT9PWWFRPHF6NkM5IWBzVEZuXzEqdUdjM3ItanpxRnleTF5oCnorTUtwOXxIR1cw
aj9POCNrYX5xdz1fJDVJXnpecGl0Q1JoJS1sNmhgK053PHwxOGNgQ3o1UnMjaC1RQmR0Kj5lMQp6
dzcjXlZyLUBkcEdqc08qV3hCUnVEbEA8dl9NQzdqQ2p1OGROQlFCbSlke3lebH1fRT9LN3IqNiY5
ZktqOyRtOCgKenJZQFBrJXM5KyE3UE10UGQpdGd6em8xZV8pPWooNUJIaH1MZjhAVishV300OUBv
UnBfeEJATVBAMHttMmNyQzRHCnpSVWdMUW9nP0VJcURrLVFzX3NuSDQoc2hETGBgPlE2ZHwhSCY2
d0xZNzw0UE08IW5Ld0ZZYHliTDQ1UDtKQ15FPAp6NDxUeEEwK1paYlpYM240dHI9emJHRUlmTWs4
JGc7WjU7JjY0X05SS2VnNkV7TTFQSExEYGRuem1oVCQpa29mXmcKejhvJD8oQzIyYHZAbWB+a2VQ
dFV+SlVFailZaW5VZl50NUxnbnkrQ1NhPntWIVokVm43WWdgeU0hISE4czdZbUBFCnpeZWlfSDgh
QTR3QHhPcnR8OE9jOGdrYlEmKSltbWN5N2l9MjFtUkVpe35CIU5YN0ttc1VoTyNHMV4pREpWWXE4
dwp6dGtOKmNCa3tNLVZKaEpyYX5BMkFDY1dBLWJ4b0xVVHlaJH01PnVXX2coRDN5NXpnZ0koVzQq
ZDV2LVhjQ09Aak8KeiVOUSp4ZDRJOWRDYXgoeDg8YGJiTGdiV0g+Wk9OanBXcDlCYkoyPkJqbGh1
Qj1IcnJ7UzN8PjxaXz5ja3Q/JVA9CnpMbnEyamF6bGs8cnVncz5qNyFMPjVEb2FnPj5XI2FveTNs
V3g+VnlWUm8tcXZMWStJaSQxKGVvQGElPXJOZHVJOwp6b2hmQl48VilESURBWGUzdFVMKzNeZ0hE
anw4fS13PylgbXd1ZkxpNCMmPjdUbjYrb3RmZnNmVkFpZjFDYHFtPDQKejNBQ35wTTAoQWNvVWZz
Zkp6Ukg2QzhKP01BUWIyYHdqZXlWQCNuOGkjbTlDUHhPSVojITs4PyRFRCtWWHg2ZWdFCnp6djU1
ZSk7fFU4KDFLUmhFSGZLU3N4dTxfc2NuZjMkfXp+ZEZYKHZGKSNsRGQyTTVYPVNIb0t1V1NlbXBY
VCFKJAp6UCZzdDhedzhAI3Z7Nmh8KV8kRnNFTntfKHg3JXtFcjA9WGRidHYrRWklN0hSVHQtI2E0
anFRV0lGRT4wT0EmaFgKeiY8QV9QPXBPcGVLQ3ZtOUFOdDs4QEA5OFo7KEo3PnopRV99b1ltO25B
aDg8diU+PmAoO2t0TTVlPk0hcFZXeEdTCnpDbXtxTHZAMkZRbCh3Plc4ZzljcnFIWE5lcTVsTj8y
fFA3JHA9ITkkK2FsKD9STl8qdFNEbzVjTGtEayZVVXdYSgp6ViEhJjNWMkdDT0prSVdEYlljcy00
MjlKbENRZUx+cyFTKCNaJFd1LWwtTGtnSExGN0ZOM29WNWhufFhNKllffiYKejNwfHxJUHQwSkpJ
NlJaKk01LXVvPVEjJUdsfU5xR1BCfkp3X2Z8LXJBMm1IQUFsSzE5aD87SjVKXn1wN2ZsN0VlCno4
WGVnJjErUD1lNmo5fSMpfH5iakFkZTJFdDhlfnREenpSZmxQdj1DV2JyaDdmc0QqKFI4NF5KYnhm
SklDQW58cwp6TGRwRmE8bzBWcCM2R0NwODdkMXYkSHtYU0F2cEJ7ZmJ8YVQqWns0cGM3MGNqKkAy
dnM/WDcrWD1qJFQxOXFzTykKeklnKFdjR2I+c0pmOHxSMj9qNjArb3RlT1IkVkBYaSZVRGdmZWd1
RzMlaHNsUmA9UiNoXkZIYitVe2YjXzQtYSs7CnpTe35BQHJKNUd8MUdiYCtKX0plfFZVQFo/SGJl
NHxsYU1mVT1LPU8ydCNTUkFKQTMtQXFgezV+NXpqVGJnNChPQgp6U0d1YlFITHU+PHIjcjJoa0Y3
RWU+dnloYEt3b3FJZT9WMEo7ZndWQlNJUjVYR1Y1SzFxOHhmV3JfWUh3UFpVKj4Kektrc0dee2M7
SUMhQn18Mll+Mkh5PEs7MWc3OEFGdjhuLWR9QipKdW98NSMxV2FySnlPLXEmJj1OfC19bSZ2fnh6
Cno3Vl9vTHdhVzcmbztHWEJ3ZmdYNktsNTYzclppWHNYQmNne3lqKkszJVYoeyt0RC0kbitBWnx1
PEhjVzFOfW8hSQp6bXxFVHRgcSYyQkZrOUhOMkBmbHp7YElMKzBeWDI3ZTV9OWRuLTtNfXV2MDJ1
KyZRdVhzJDg/PnBxUD1pSGJKMFMKenJyfWJvdmVoaSgoekphOzNwOHh5bzxDMU5OJDNEYjdZOzMk
d3kkUjtJN3VweD19cDFiX1M2TGMkIz9meEsoTilWCnoofGNeMUtiJFZBRCMjO0dDfWNmPnpIR1RY
PGMzajkhRyg/OztIQjtEK2JkI0pWZXBubjJNSD1hVkFDc0gqUSo0NQp6cH00RWNpVChVKyVZbnsj
dGdsd1EtOG5TYzVxNG1sSTQmUX49IT1oJVpicUx5ZHA3NHIySkxjZTBoVSsoVERsKiQKekw8PVlC
dUJtazFLVkhhND1BNXojVjdJbjFeNjsmQVlSSURlQUApKnxWPFR9TWlPUWxQRVZhcnYxRWZXJmp4
T0h3CnpWZVkyNXNUZFpvMUpBdVdCV1ZRNipTcH1rPyswSkpWR217U0g0d3E1KjlRbnR6OChZLUpY
SEEydE15WiVjKVNQdgp6N0l3VzQ3Kk18SWdXcUNQeUtkTD1zZDlEZkQtZj1BZnNMK0V6TilEa2hw
QXolaWxHKDU+JX1QLStwN35WS1pSUmEKejx7S0B2IVhYU35tTnFyODtLXjI1U2BVTE9fZmN6TjQ0
JkJEaD4laFl4ejQzPj5aRWchJEIwUjJkeUswaCl5NWxzCnokWXh4Y25AWiR7WnAjIzlndEJVLUg5
RVZwYD9TWjlPXyR3cCRKeSEzdEk2cUhQeFomUklCKWV8YU1AV3RlOTA1SQp6M0J+UWFyXzZlTSRu
bk0/MXllMC1IbW1lO1Z8QldedmhMVk9ifDIrQklPaDx2Sj1IVmdhIXVZTWBGTSpvaTR8dTkKemc0
SVpTdUBDUzdpPHZEJnEmRkdQKH44WGU+TCZtfXV9U0Z4NUV2eUpQcEtzNCMlNTVVVXRxMU9oSFc8
O3pZanV7CnpGJFJQWi0qK25uZzVGPHhFOEN6KXF0QEY7QzJgaVA1YVQ/Q1BiJDZNYD0rUUFOdyQw
Pz9QK3FwTjd2aFpvTWMxagp6Yjh1cCtKNmZyaUcwZiREWVBzU2s+WnhANTdmZypaNT9XTj8jSTc8
eD8hd3YtY2B8K0JeRTVyNWE+VD8wI2hZdzEKekE8b1YkKHdZcUhXLSRoayllNXFyPnk9UnNRSE5i
QVgxdyoxWD4lMiReaD0zMFpVe3Z8QX4mdnhaSSNldklsPjV5CnopPTg4fVc/OUM0Kzw7cyVObWV1
YCtTbkF5MkNHRkNaVzk/fXJLOHk8cDtAQCZCb3lUaFQ7aGNyMWt1OzMhQmQ2VAp6WD95fGVxX1JH
Jm5vJV80WntzN01hdTk+RzNFJFlaWm1PYihadzVjKD1IIUYocHEwNl5afD1eV0ZueEBpY0JiM2oK
ejRHWklqc2gjPEwxKFg4TTBKcmlAWWFIMS1tNG8xLThUVn5oLWs4Y2ErcTxnKEN1aTJqOFFOdFoz
JDxMPlMxYTx5CnpfUlhxNSY2bDkmT1A/KDdaVWItRlJXN2d5OFNMXztTS1hXYj1iU2dEKytGTzEl
RT9ePGMzd3xSYkx6dmF3bmUtSwp6cUEkQ3RTT2Y/KzdHNUklQSt+Sl5tdFlkQDA2djAoKH4ocWEl
KlNzJjY1YGxNUGh0N3FIYk9ZI0xhM31JQjw9S3wKelFzdHhtcGJwTmxLZ0UqNF5VTiNYSXUpQjRH
ZlAxdGB+WGpZKnJRNmdIbFVBN3FySVR+MGV7YXBZIVBQamBmMitSCnpBazVrdFJudjwzQXxyNEp2
Pih8JFpDfVhqQzVud2haO0ZOc0B1JT95ZzxENVJtOytYQ0JfOVNQMilGJlAlVUZXPwp6TXg4cW9f
LUVFNmwzJD0mY09UNEEkLT5XZyRtUT5RXnthRG5jeVhuR1g3QnN9YUNUUyhtZTlQQlJ5WnohUX1m
M0MKengjXlh2dUwtPHslKF95I2xhaVhOXkhzQWlYLThtRE58SnRRMzIhJHBXSjdANCNuTVNQTDQk
T0ohQyVzeCUtNXo1CnpESSV+bjtMVEN4N3l0SiNPfGw/OV4kUFlgSmdPZWlzLSltY2N0TkZeUmsk
Ml95PD4yaE9pOXF1ejFQYkUzbj0lPAp6MFImJXtBVFJsdWZOY1p9ZEBPUD4kPDBrd2FeTHdZN01W
Tmg8JHd4V0NHU0Q/PmhTd0k9PmEtQkQ8WWdKeFNiVmcKeiZlemtpbVhxc2d2UnFTY147YVU5MTN4
ZFc4YyY3QVF+M2hxemJNYUBYeVo4RlR2czBOcGpTI0NPUW54QjV+VD1ACnpFPChAMil6V3Q8bSt1
a05tKFVfUmtIJSh1VnlrcHNidU9YQmJ+K21RVjExVSplaVNEa2NhNztoJUgxWSh4IzUjewp6UXJr
P3A9WjB0eHJBI1leN3JSQDhYd3sxOWo0aXtxPFcpKHU7KDlJSDdpOzN+U3VTVjdCfmpOST5BSE9V
OGo4Zn4Kekt3M2ZJP1dhPmhXPDN4eGZndmQ/cG9DQmJEUk8qdGIoYCl+QjdxfXA/b3x1TSEzRUd0
MVZ9YlJWJH1Kb1E+VEAhCno3UmJuQypOMnk7UipGa04rT0I0blpIRlpBLUJeJkBlQFgrKUJkLWtF
OUs1YUlVNy1VbmVfamRQMmJ8SFVwcUh7bwp6YmY9TmQhP1AtcW1xO0c8K1lOdTZUcSV3enBgIXQ/
YU5RJkhwQ2ZULVUoMTV8MzxxOUdSOF8lQ1VRU2U5ZiQqNHEKenBsUChGYzZrfm9aSmJQYzlleUMk
ZWp3fVRgK1U8Rk9+b0RVMXorcyY7cGJLT2NaVFhuZCN5JX1fJGJCazZIdGwmCnpiN1VyVD9rOzxx
NGJKZVFAMlN3fjQ1KypES1lmdkhWcDFJdmhLZD5TMyNGN0xfcSljNDV5NVYxT15DLWckYEVTaAp6
azFrPTtPT3xoYCFDQTBIZjxaPjZKSlpDUy1KNyFhUnZUdEZFNTl6ViVBdzd2I31EOTFrWXkpcFAp
Jioza0FBOCoKelImT2prIyopTldWVlEjcnBrK01WKipfVyFnTStQa151YlBQUnNrR2B2fURFVyQl
PCZuZTFnQXJJPDhkN0RFLTAqCnpiJEl3NCpRT1FVV3VNNUJmIWBBVSNCdTY/M29DdkhAYl99PjIx
cThfLWJEZ0tMQysoMzNUIUlqRk0qaTY3ezNuIQp6VGJMfmtwYmM0V0YkTFFoR2NOKjImZWNuUlY1
PF50OWlDU0kkY0UoQlVOYkQ9ditUMVNjdW1kQ3NvPn5+UCp1TU4KelVkcWROLXc8X3tNTERfTDdC
IT4rPTQwVFR3Rl5yemEqT1RFTFJGengoNHJtc1pXKjVUX3hKYm4/ZEE3MVhDcU5HCnptcUtVayQm
KUFKKUFvO0IxK1pmQDtTWlFUZSVLeSo1Kip7bUpsKUc1ODBlb25tY25hbDY0dWwtKT1GTWApVFF5
cwp6Sl5yYDVFcWYleWteVUJlQGxrKkBLJjNJWms/PWl1RDJBKXw3T1VqITtYRzReXjBmPitjYlZw
V0RgK0xeRTBEcVcKeihYRmFlNDw2bkxCR3xlM2tUJGVwdypxQUZBXjFTVlIwd1VjQWNPeXUyM1Zw
czxYdmxaaHRiaGVQalkmZipMUz48CnpFQXRJe0lvNGNqV0c1UEx2UHBkYGpBK2hENnlfQ3ElOXZ9
S3E+Nz4oJjhJWSgxVT1OTEdycHpabnB7ditxfTRTeAp6ayRJZWk5NDc9WkYlIUJXREN5aEs5QlZ+
PlJqMmlFTThEUGUjKTI+ZyFMLTFaTmVEeigoJjhBMmQ1WjdXUzRqb3cKenhPPG4xaCNvO2o8JEpC
aUxSTCR+QT5FMlpjI2htUHw5VGY7TCV9Z3BWZSg2fDEqPnNXR0c3MV87SGVZT3o2RnRiCnp6NUpK
bmZsTm9uR140QHhSNGo8M0tpZXR8bDZ0cWBLJFIyKj9xQCoxSz0oMUE1RyFnOUwjUFZKMU15ZFZ2
ZntQRgp6NmxETH1UamlXQmxSa00jM213WW41JEsyem5xQEtEcEF2UCo7eDtGeWVKKm9GOERoKDst
bSNYR1pqb1pmaDBaKkUKelZORT9IbTdXbUMmP3JPWDQ0M0goe1IhTHtwalBuZkJGOCMzU0B6aU11
TXlAWiFWbDZTUV8wdXxOK0BjNEsqXnpuCno9UjszLU9MPDFsPFpFNEg/O0xONiUzeEt9KGU4P2g0
Yj0pK1p3SSRWJD1KSXk0N3BFNDt+dDclcyViaUpAdCg+Sgp6cD87JU1VUXcrPUNhYnlacW9ueXJq
IXQ9S3Zkb2BSKSFVYzxHYyhicztHeitUeytVYHkwN1lTaTN+Zzd8aG85eUgKeiNyYkNwemB1LWVG
VmJDWCtPaXN8PXRxRUtiVlA4OzB3VVh7eCpyOTVJSD91bD9sV2YyUTVzcGxCaXRaITQzYnxVCnpw
JlhuOGd6PW8pY1Z8TkBrTEl0bjc+cHIlWlZELXJ3PmNmZGs+T0QlYjxCaTJaaSNsIzw2P310eUtq
ailVQXo0QAp6UnBaUFJNaTtaWnZqPyZzJFRvSW4/VnIldyRGSEArNmwmV0FhPWJNdC00NDdMYklC
T3NtPWBRPmYoTmpKTSUjWmkKeiZfVGdiPCp4bX5vT0wqKiFUKXlvVnhgQ3o8bUVSP2goU0ZQdioo
KTFNK0dLMF9mTjlxTVk7JiVuXjNmdFh9RSQhCnpgMT8ldjMtOTE1KiVPY1dIN2whNWJ8Z0Z6NXpj
bkxxe2QtckJIM3ZfXlhScSRXNyllUVJfZF56RkZySFgqYlJzTQp6JGlnKW5vQXNSUy1JPEs0YyU8
V2BSc0wyYlhXcztfLVkkRFRLcjh4Q0p3T3w/S0h6JHtVNmJNKHA8TiNIayghJmkKejEjY01Ba00x
aTBCejs0RzIwWHZmQVoyWEwrS0lgMTZsU2duZnVqcXBxe1Y0YHF2KjVYJkVwZkdUa3RQWWx1RC1R
CnpLd0UxVW90b1NxRFhkcGdARjB5YE87OzIlekFQckYjR24/WkI8UDFKaEZOVjR3YypxQDJWUmFy
cWtVPi0zISRMSgp6YDRVJGxLWEZUc3U/e35uUiZJMiVIeiV7c1VVWD5FJXVUJV9aQWAtZ1Ird0w/
WCNyemd3fkE/Iz5CeT4hKHEhSG4KekBobXFCN1JlTGpkRXlZcl5WV1kpby01SE5WJjxyQXB9SlVu
UU8/bVI8SXVWYkxAKUtaSjFeKFo9UGdDM2J5KV9FCno5I1BCbkJXe1F+SWRPMGBaWnRwKjdoKWJ8
PXw4JnZoTnhRbm9tI0Z1MyhMUH1SbUJrKFc5e3p8P2VoKFZYViY2Twp6THF6cSRWYEAwVipzNTkt
UlRPLUxgdkx1eXpMTjlmQVMyUTNNbjdUPlhlLWR+QE8/TFA5eVEocEhTJCo+cW9wKH4Kent4Klhm
Rm8/bWdVd2l7cXJhKH11eyoocSNfRkBqZCV4c3klTjNDZl9FTXVDM0dyQktGd0g4d3JsY1A+c1Y8
cnJeCnpoNENgXzJfeDhsNlFmb2hzMDVadFppVXlraDVpbjBFcHxQcUhSYFN8P1RmVzNzN3ZqRTYr
MUZnLVBzP0VWSTw2TAp6ayF4OCo/T0JvNGNRfiZOaDsoMX1KTzBwflV6Uy18dkpsampsVmZ5ZXsq
IWJJcjh2R2FNPXwlUzJQPnZnekc1O3MKeiFeYygpU3hwZmdDM1Q8aVBoYSRrZVRuUVJgMGcySHRp
VnZ7REdqK0hkTzNGUXVgb1ElUD8lemotVmtsTUQpeCNtCnp2JDJEV3lldlgzbUx4Q1c5Ykl+JGdp
U1VIWF5PfT8+RG41Kmc5MH0wIUZ+T1Q7eVJ6Pz42ZTZQaTM1Rnc1R3Vfagp6UnVVbVhYcVJpTEAq
RlJMUEpgciZpVXs+MDlFWHVkMEIpflU8Pll3MzYqb3lAIz9Wd1UlQiFsRUNOKT9xQmQwT3gKelBp
NHZBZ3JofFZMWkYjRlNMd0duWnZKdndyMms2Ty03cDN7RSpLTXx2dUhNPCkqK31oeGxFPlptamUm
eExTRmA2Cnp3cn01bGtFbXxzOHJ8N0lxYCoqLVZwTntyaFI2YjwldWZ3QmEzVXl2KVlJaWVoM0Uz
NXFAO0w8ISF+WTNXS3lzRQp6ZUozTmJ0K247R3A7cz9JZ0A8Ty13K3RpVnFqcHdzM2kxQnBSZmxh
YjckNWxDckNQWiFmLXE8KlhqXkd0Z2R3Q20KelhecDFiWilwNmRKfWskfVBuM1JjQ3VsYlJlRml0
c2wtS2ZvalVjYG0yXjducChmfThGPyF4YE1KTmcmMVZ1ZXZOCnpTdCE9TmlDV31TKSVLendAfT58
YD8hKkBuZmt1VGxZWFZyfjg+KnlsOXk5cnEzN2xLdylpaGtIYGVhWEJPVSFISgp6PG9KTC1TTCM7
Tk9YJWYzbTU/TyE+aWhDNUNnTylYbm8rQno4QWhJYjBsWn5TS1BSPGlqK20zIypDSGVLKkhte28K
ellhVkFKWjVTJnpEN3JNQ2oley1rdz1fU2NRPF9jcXRpbyQ9cXp3cyVUIVdVZlVmI2Y+a3chZSNR
REI5ez9QVz1aCnooalMzNyQ9ejduNXNYYDRAMylaQUZrX35fQUBJZHstSjJrKFM2bTE+Nld4eklk
ViNuNVUtNHBHMHJaVkluJVYmSQp6bGo8WjglNjV3ZnRgS0RaKHB6MGM4OEc3KFBiZ0I2Y0Y0KEtR
SHd0TVN6XzFOVV8zV2dqTDA3YlpKUXNSaiZmUDsKekA8VFU3NWk0MUNTV0dOKVpQX0RZS2o3b245
dlNWJSglUXoqWUV0cDVsfV94WCsrZ2NTIWcpYnVBfnZwUUdFTTF6CnpFQmJtZDYtb3xgOEN6Km1x
IVhHYWp4eXhWIXtyYy1me3JzUTs1T0RVX2ltUSsobisrRWZXd2hxdlJJTnhoaUM2Uwp6cCh3Nmh1
aVBNdUZEPXFoZGhJTlh3YmUoTy0jY01FKE58NkRMbWhRJV84UDdzd3JDTVNeekhxcj0+X2xrYykz
SmIKekEzenJ3XlM/VW98RUdpLXhaOEl0VXFCVzhaWTBwfnpaKipVREEqVkdIITJEM1p4R1BlMXhE
OEkzQWN2cjNCZlpHCnopUGQ5MjEjUEZnKiZDcDNYWUFoOWc9Mj0rSkpjSUFhYnJ2SkI/WlVYQD94
eGQyfm9YLWJuY1EyT3Q3ZCt3XkFKMwp6bk49TzNValY9SUpaQFZKZF55ZmJZfnk1c2dONSpoXj8m
TnlVUD9FMFRhJndPa2tBUEhmfCRxNTZ5QSRjWTVUN1IKemRUWjs2KFFhZDRSNHo9UUhrelc5Qkh3
fWFDWWoyQXh8M0ZzIUZkY0c2Xngxfj1Lajs4RFc3RHpodERjbktwTXMlCnpGd3xyMTMkdnExKz48
TXBqdTQ0c00zI0RkbHs+cFZxSC1QPlNiMm99YnptaHc+TFV3cHl+Vlc3dnNmcUBLdjlXKQp6YSg7
YitsQ3dMMnREamZ1Vkl+elpLSWxvZClLQCVueFNjKzxkQl8takxyS2xjV0YtYkVfVTxtfmZUU0N3
bCt4PnkKelReRGVnLXdqU1c9TU9QUnFQKV5UZSU/RzdCR2xjKnBQelU2amp+KHQ/QCpMVnJzKmJz
dVlZPiZmVHdkbm9ZRXVECnpFdjBrNzxWbXQyYHFAZlhFS15DKWxrej5XOUFWbCs5Z2djNzNNJGNo
NFhVUVN0JWtXeShjUm8hVmtLQnJgSUhNTQp6dztaQ05CQ0pDd0AoTmtMOEhgZz1oWHVuaG9JMCFe
O2tfQHJjSmRkV2lMWXptQ1k2TVYyRTFAUiRuJmNFQWtRMkIKek1SfjQ3bj1+UXElN156Mm1CenZl
ZWNeO0RtJFk9Wk94cHN1blpaM05gck00dF5uM0lLcDIyYXA3IWRXK15pK0NkCnopcDIlV3NuMCM0
JnJSbzRgV3N3fnJGeiRLO212dW1tTWdqfThAI2FnSmJHJDlBdWchbTleQ2AkNStvRThEXmxnTAp6
eFlGfEU5PitfZjhwUzxOKFdZUFUpYmNKWDxZNTZpeHg0PjJBPTlmZ0VkRC0mYCE1QEVRQk02KDdy
TkhLJXRRQHoKelZmYkpUSUhPUyUpQ0lCdWBVWWU0YnVsKSpseFJTM0IwMmN2NVcjQGhOZFQ8bUpP
bkpXR3g9bXxFbz13YUd9dExkCno1N1BWQjRQe3hiLWx3Jmc3a2UyaTBIc2EzODVaRDU7NSF1PDd6
b1N7QGFFZDIrd2JfSHRfM2dyYUElWlQhTFchIQp6eWc5QkUkQStMMVolTUYpJmZWRH4yQiViN3Zo
VlZ6KSQxI09yfmt0ajlxaXNYNnp8fWklM3lRN3V6Q2YrXkloN20Kejl1Y19JJjxuZFgwJkMjVCZi
WTheemEpOHlsd2QmPWVSb1Q9VW40aTwlIT0tanIyNDBAMEZKbUpORytjWUBSV2JuCnppOC17UlhN
S0VJZTxkMDg2YENaOV9rTVNiaEB1YWBIckskZDFEeXNjJU00YUglSUZpO2FEZHpVZSghfEhoYzlj
dAp6UXo3NnlSeChOI1R9NEdPXzI1XzJuRHFic1h2IXk8P3glYk1gakFgLSZWTzdYbGhwUyQoMShZ
SV8xKUlzSSFZcUkKek9ZVn49JWV4QUtLYiUmaGJRYzUmMFB9ZzNWQm9+PXNzZVc4KzIpKzJ8TEV9
PUVIKn5IV3dZPE4rP0xEYSErblJGCnpfMCZiKnZZVlFrSlUxUC1TKm5IT21CKGE9NT8kNj4yKWs+
Tjs8SW5iQGRWMyltKmdKJF5YQ01BJHVvKTd1dHRDJgp6UGUqPnxmb3pHfmlpUktyU3d0KVNUczM5
MGBSX0JofEZSKCQoM29jPW5rQENmMVAyQVVzUmF1fGoqNDtRK28te2IKej1Nc2x7TGVWZnd8N1N3
U15LJWFmTFpqbyU+PnF7XmxpQl57e1hQP2dudjdCViZ9I0kzdlJzNiptb1g+NUpJWHlnCnpObGd8
ZCo8NWpMTXZUeVlVUm5mKHNnUl5FRXM7Zil1dX4lSzhyVzVsRH5lVWlfclEzPWlkdWdXbGpNU0F7
U0c3VQp6RWx4Sn1JKlVteVYtIS0mTCVVO3NXPlRefFd2LVI1cWRGTCQkMjRIeD9CbkN9OVlVYkZ5
YDBkb3BBS2hGbzF8TkkKeiVMRGwwWXZEKSVxKko9VldianN1KT91UzU2bztGR2MzM3I1YXN6N1Jv
TjVQRmdRUks4RnZROUoocCFjMXBaR3ZKCnpIXnxvXlo0UXhGNUxtbWhzV3BiJiVRUXZNNE4/ODA+
fEkhN2JkSD1uKG5Qc09HYGJURWl6TjZEYj9Ld0tKT0NlJAp6SjRmMFFJbVR8c3JQMytSKUdNOWoo
UT02c2A+WEA5SGt6T3FIflEjKXlFJXRpRG1nVHZqZG57bUszYkxGMkY4TnUKekBtKylgUmJtOEZf
NXIpVkIkT0Y0aXU9Z2VAdGRufntlKCNrbzI/VDV5ZGRwRjxwJGM/aUUqWFpQOXtxX0tHT1dkCnoo
I3MjKmQ/czgoSXI0bTFDWkBZZV98NUBMNVp6V3o1WlFuVXFGaU50KnNONVh6bmtwQGJuVEJ2TjxQ
S217dUlJdQp6d0VySlowVkBUJj88dnxlP2pCfTQwfmxHcUMpfVdNdz1hRGw5JT8lJmhtNkJGPlc0
IXMyMCthbndLenxNKDZ0WkAKellBIVZXVyZ5TnYwPVZfaDhocG5mRThgIy1HQ3AqNyFNLVU/cGop
UkQ0KylOS2RKcmFPZj9MbCNhQndFSGF1aClGCnpROSFGVGJVM01qIVQzS2piQE5HMGZLU21ScEZ7
TUF2aDh6LUs4RlptbkUkVkMrdmkwNCEtbk1ONVBjNU9aeCpVQAp6Knp8d1JrJHloV3smM1h4YkJJ
Mk49cmVXdmIhSH5+R3JSc1FLdDV9PHxNRjdYe3x7eUNWQ2Uycy0jPzdqZVJUeDwKUm12QCFEYzg8
SFVjQVdiRGUqakdJPHVte1EKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLWNhY2hlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXItY2FjaGUtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZGM1OTVkLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXIt
Y2FjaGUtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCArMCwwIEBACi0gICAgIAot
ICAgICAKLSAgICAgCi0gICAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLWNhY2hlLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLWNhY2hlLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg3ZmE2NTYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXNoYWRlci1jYWNoZS5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsNjEgKzAsMCBAQAotPCEtLSBUaGlzIGZpbGUgc2hvdWxkIHRlc3QgdGhh
dCBjdXN0b20tZmlsdGVycyBjYWNoZWQgcmVzb3VyY2VzIGFyZSBzaGFyZWQgYmV0d2VlbiBtdWx0
aXBsZSBlbGVtZW50cy4gLS0+Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgot
ICAgICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IGNhY2hlZCBzaGFkZXIgcmVzb3VyY2VzIGFyZSBz
aGFyZWQgY29ycmVjdGx5IGJldHdlZW4gZWxlbWVudHM8L3RpdGxlPgotICAgICAgICA8c2NyaXB0
PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAg
d2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0
ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVy
cmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsKLSAgICAgICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAg
ICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxv
YWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
LSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAg
ICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAg
ICAgLnZlcnRleF9zaGFkZXIKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0
LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQudnMnKSk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgICAgICAuZnJhZ21lbnRfc2hhZGVyCi0gICAgICAgICAgICB7
Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNl
cy9wYXNzLXRleC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQu
ZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC5i
b3RoX3NoYWRlcnMKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQudnMnKSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9h
ZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPCEtLSBUZXN0IG9mIGNhY2hlZCBjdXN0b20gZmlsdGVy
IHNoYWRlcnMuIFlvdSBzaG91bGQgc2VlIDEyIGJsb2NrcyBvZiBjb2xvciBiYXJzOiA0IGlkZW50
aWNhbCBsaW5lcyB3aXRoIDMgYmxvY2tzIGVhY2guIEVhY2ggbGluZSBjb250YWlucwotICAgICAg
ICAgICAgYSBmcm9tIGxlZnQgdG8gcmlnaHQgYSBibG9jayBhIGJpdCBvZmZzZXQgdG8gdGhlIHJp
Z2h0LCBhIHdhc2hlZCBvdXQgYmxvY2sgYW5kIGEgYmxvY2sgd2l0aCBvZmZzZXQgdG8gdGhlIHJp
Z2h0IGFuZCB3YXNoZWQgb3V0LiAtLT4KLSAgICAgICAgPGltZyBjbGFzcz0idmVydGV4X3NoYWRl
ciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAgPGltZyBjbGFz
cz0iZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgot
ICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRlcnMiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVy
ZW5jZS5wbmciIC8+Ci0KLSAgICAgICAgPGJyIC8+Ci0KLSAgICAgICAgPGltZyBjbGFzcz0idmVy
dGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAg
PGltZyBjbGFzcz0iZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2Uu
cG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRlcnMiIHNyYz0iLi4vcmVzb3Vy
Y2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0KLSAgICAgICAgPGJyIC8+Ci0KLSAgICAgICAgPGltZyBj
bGFzcz0idmVydGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LSAgICAgICAgPGltZyBjbGFzcz0iZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9y
ZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRlcnMiIHNyYz0i
Li4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0KLSAgICAgICAgPGJyIC8+Ci0KLSAgICAg
ICAgPGltZyBjbGFzcz0idmVydGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNl
LnBuZyIgLz4KLSAgICAgICAgPGltZyBjbGFzcz0iZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRl
cnMiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLXNoYWRlci1yZXVzZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLWV4cGVjdGVkLnR4dApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2RjNTk1ZC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItc2hhZGVyLXJldXNlLWV4cGVjdGVk
LnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDQgKzAsMCBAQAotICAgICAKLSAgICAgCi0gICAgIAot
ICAgIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLXNoYWRlci1yZXVzZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLXNoYWRlci1yZXVzZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBlMzRjMWY4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vY3VzdG9tLWZpbHRlci1zaGFkZXItcmV1c2UuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDc0ICswLDAgQEAKLTwhLS0gVGhpcyBmaWxlIHNob3VsZCB0ZXN0IHRoYXQgY29tcGlsZWQgY3Vz
dG9tLWZpbHRlcnMgYXJlIHNoYXJlZCBiZXR3ZWVuIG11bHRpcGxlIGVsZW1lbnRzIGFuZCB0aGV5
IGRvIG5vdCBjcmFzaC4gVGVzdCBwYXNzZXMgaWYgdGhlcmUncyBubyBjcmFzaC4gLS0+Ci08IWRv
Y3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdGluZyB0
aGF0IGNvbXBpbGVkIGN1c3RvbS1maWx0ZXJzIGFyZSBzaGFyZWQgY29ycmVjdGx5IGJldHdlZW4g
ZWxlbWVudHM8L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdl
YkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVt
cEFzVGV4dChmYWxzZSk7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRl
c3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotCi0gICAgICAg
ICAgICBmdW5jdGlvbiBjaGFuZ2VTdGF0ZShzdGF0ZSkgewotICAgICAgICAgICAgICAgIGRvY3Vt
ZW50LmJvZHkuY2xhc3NOYW1lID0gc3RhdGU7Ci0gICAgICAgICAgICAgICAgLy8gRm9yY2UgYSBs
YXlvdXQuCi0gICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQ7Ci0gICAg
ICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgICAg
IC8vIEZvcmNlIGEgcmVuZGVyaW5nLgotICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5kaXNwbGF5KCk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotICAgICAg
ICAgICAgCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkgewotICAgICAgICAgICAgICAg
IC8vIFR1cm4gdGhlIHNoYWRlcnMgb24uCi0gICAgICAgICAgICAgICAgY2hhbmdlU3RhdGUoImFs
bC1zaGFkZXJzLWFwcGxpZWQiKTsKLSAgICAgICAgICAgICAgICAvLyBSZW1vdmUgYWxsIHRoZSBz
aGFkZXJzLCB0ZXN0aW5nIHRoYXQgdGhlIGNvbXBpbGVkIHNoYWRlciBjYWNoZSBpcyBpbnZhbGlk
YXRlIGNvcmVjdGx5LgotICAgICAgICAgICAgICAgIGNoYW5nZVN0YXRlKCIiKTsKLSAgICAgICAg
ICAgICAgICAvLyBBZGQgYmFjayBqdXN0IHNvbWUgb2YgdGhlIHNoYWRlcnMuCi0gICAgICAgICAg
ICAgICAgY2hhbmdlU3RhdGUoInNvbWUtc2hhZGVycy1hcHBsaWVkIik7Ci0gICAgICAgICAgICAg
ICAgLy8gVHVybiBvbiBhbGwgdGhlIHNoYWRlcnMgYWdhaW4sIHNvIHRoYXQgd2UgdGVzdCB0aGUg
ZGVzdHJ1Y3Rpb24gb2YgdGhlIGNhY2hlLgotICAgICAgICAgICAgICAgIGNoYW5nZVN0YXRlKCJh
bGwtc2hhZGVycy1hcHBsaWVkIik7Ci0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQotICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7
Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAg
ICAgICAgICBib2R5LmFsbC1zaGFkZXJzLWFwcGxpZWQgLnZlcnRleF9zaGFkZXIgewotICAgICAg
ICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4
LW9mZnNldC52cycpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGJvZHkuYWxsLXNoYWRl
cnMtYXBwbGllZCAuZnJhZ21lbnRfc2hhZGVyLCAKLSAgICAgICAgICAgIGJvZHkuc29tZS1zaGFk
ZXJzLWFwcGxpZWQgLmZyYWdtZW50X3NoYWRlciB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1m
aWx0ZXI6IGN1c3RvbShub25lIHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGJvZHkuYWxsLXNoYWRlcnMtYXBwbGllZCAuYm90
aF9zaGFkZXJzIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgn
Li4vcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQudnMnKSB1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1v
ZmZzZXQuZnMnKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFk
PgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPGltZyBjbGFzcz0idmVy
dGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAg
PGltZyBjbGFzcz0iZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2Uu
cG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRlcnMiIHNyYz0iLi4vcmVzb3Vy
Y2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0KLSAgICAgICAgPGJyIC8+Ci0KLSAgICAgICAgPGltZyBj
bGFzcz0idmVydGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LSAgICAgICAgPGltZyBjbGFzcz0iZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9y
ZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRlcnMiIHNyYz0i
Li4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0KLSAgICAgICAgPGJyIC8+Ci0KLSAgICAg
ICAgPGltZyBjbGFzcz0idmVydGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNl
LnBuZyIgLz4KLSAgICAgICAgPGltZyBjbGFzcz0iZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRl
cnMiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0KLSAgICAgICAgPGJyIC8+
Ci0KLSAgICAgICAgPGltZyBjbGFzcz0idmVydGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMv
cmVmZXJlbmNlLnBuZyIgLz4KLSAgICAgICAgPGltZyBjbGFzcz0iZnJhZ21lbnRfc2hhZGVyIiBz
cmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJi
b3RoX3NoYWRlcnMiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgPC9i
b2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3Rv
bS9jdXN0b20tZmlsdGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci10cmFuc2Zvcm1zLWFuaW1h
dGlvbi1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDljYTU2OWUu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmls
dGVyLXRyYW5zZm9ybXMtYW5pbWF0aW9uLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0x
LDkgKzAsMCBAQAotICAgICAKLVBBU1MgLSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1
c3RvbS1taXgtZnJvbS1ub25lLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3Nl
IHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3Jt
IG1hdHJpeCgzMCwgMCwgMCwgMzAsIDAsIDApKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3Bl
cnR5IGZvciAiY3VzdG9tLW1peC10by1ub25lLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRo
aW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwg
dHJhbnNmb3JtIG1hdHJpeCgzMCwgMCwgMCwgMzAsIDAsIDApKQotUEFTUyAtICJ3ZWJraXRGaWx0
ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1peC1zaW5nbGUtdHJhbnNmb3JtLWJveCIgZWxlbWVu
dCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRvOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVk
ZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCgxNSwgMCwgMCwgMTUsIDAsIDApKQot
UEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZvciAiY3VzdG9tLW1peC1kaWZmZXJlbnQt
dHJhbnNmb3Jtcy1ib3giIGVsZW1lbnQgYXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybSBtYXRyaXgo
MTAwLCAwLCAwLCAxMDAsIDAsIDApKQotUEFTUyAtICJ3ZWJraXRGaWx0ZXIiIHByb3BlcnR5IGZv
ciAiY3VzdG9tLW1peC1tdWx0aS10cmFuc2Zvcm0tYm94IiBlbGVtZW50IGF0IDFzIHNhdyBzb21l
dGhpbmcgY2xvc2UgdG86IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAx
LCB0cmFuc2Zvcm0xIG1hdHJpeCgxNSwgMCwgMCwgMTUsIDAsIDApLCB0cmFuc2Zvcm0yIG1hdHJp
eCgxMDAsIDAsIDAsIDEwMCwgMCwgMCkpCi1QQVNTIC0gIndlYmtpdEZpbHRlciIgcHJvcGVydHkg
Zm9yICJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50MS1ib3giIGVsZW1lbnQg
YXQgMXMgc2F3IHNvbWV0aGluZyBjbG9zZSB0bzogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVk
LnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybSBtYXRyaXgoNTAsIDAsIDAsIDUwLCAwLCAwKSkKLVBB
U1MgLSAid2Via2l0RmlsdGVyIiBwcm9wZXJ0eSBmb3IgImN1c3RvbS1taXgtZGlmZmVyZW50LXRy
YW5zZm9ybXMtY291bnQyLWJveCIgZWxlbWVudCBhdCAxcyBzYXcgc29tZXRoaW5nIGNsb3NlIHRv
OiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1h
dHJpeCg1MCwgMCwgMCwgNTAsIDAsIDApKQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdHJhbnNmb3Jtcy1hbmltYXRpb24uaHRtbCBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci10cmFuc2Zvcm1z
LWFuaW1hdGlvbi5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1YjFiYWY2Li4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci10cmFuc2Zvcm1zLWFuaW1hdGlvbi5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTEwICswLDAg
QEAKLTwhRE9DVFlQRSBodG1sPgotCi08aHRtbD4KLTxoZWFkPgotICAgIDxzY3JpcHQ+Ci0gICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEi
KTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2Vi
S2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxz
dHlsZT4KLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAg
ICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgbWFyZ2luOiAxMHB4OwotICAgICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTsKLSAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1i
bG9jazsKLSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20tbWl4LWZyb20tbm9uZS1ib3ggewot
ICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGN1c3RvbS1taXgtZnJvbS1ub25lLWFuaW0g
MnMgbGluZWFyOwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1taXgtdG8tbm9uZS1ib3gg
ewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGN1c3RvbS1taXgtdG8tbm9uZS1hbmlt
IDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20tbWl4LXNpbmdsZS10cmFu
c2Zvcm0tYm94IHsKLSAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tbWl4LXNp
bmdsZS10cmFuc2Zvcm0tYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQotICAgICAgICAjY3Vz
dG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1h
bmltYXRpb246IGN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtYW5pbSAycyBsaW5lYXI7
Ci0gICAgICAgIH0KLQotICAgICAgICAjY3VzdG9tLW1peC1tdWx0aS10cmFuc2Zvcm0tYm94IHsK
LSAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjdXN0b20tbWl4LW11bHRpLXRyYW5zZm9y
bS1hbmltIDJzIGxpbmVhcjsKLSAgICAgICAgfQotCi0gICAgICAgICNjdXN0b20tbWl4LWRpZmZl
cmVudC10cmFuc2Zvcm1zLWNvdW50MS1ib3ggewotICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRp
b246IGN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQxLWFuaW0gMnMgbGluZWFy
OwotICAgICAgICB9Ci0KLSAgICAgICAgI2N1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMt
Y291bnQyLWJveCB7Ci0gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VzdG9tLW1peC1k
aWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYW5pbSAycyBsaW5lYXI7Ci0gICAgICAgIH0KLQot
ICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLW1peC1mcm9tLW5vbmUtYW5pbSB7Ci0g
ICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5l
ZWRlZC52cykpOyB9Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1
cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgzMCkpOyB9Ci0gICAgICAg
IH0KLQotICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLW1peC10by1ub25lLWFuaW0g
ewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRl
ci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0gc2NhbGUoMzApKTsgfQotICAgICAgICAgICAgdG8gICB7
IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpKTsgfQotICAg
ICAgICB9Ci0gICAgCi0gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tbWl4LXNpbmds
ZS10cmFuc2Zvcm0tYW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgwKSk7IH0KLSAg
ICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVl
ZGVkLnZzKSwgdHJhbnNmb3JtIHNjYWxlKDMwKSk7IH0KLSAgICAgICAgfQotCi0gICAgICAgIEAt
d2Via2l0LWtleWZyYW1lcyBjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWFuaW0gewot
ICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5vLXNoYWRlci1u
ZWVkZWQudnMpLCB0cmFuc2Zvcm0gc2NhbGUoMTAwKSByb3RhdGUoMGRlZykpOyB9Ci0gICAgICAg
ICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52
cyksIHRyYW5zZm9ybSByb3RhdGUoMGRlZykgc2NhbGUoMTAwKSk7IH0KLSAgICAgICAgfQotCi0g
ICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBjdXN0b20tbWl4LW11bHRpLXRyYW5zZm9ybS1hbmlt
IHsKLSAgICAgICAgICAgIGZyb20geyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFk
ZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtMSBzY2FsZSgwKSwgdHJhbnNmb3JtMiBzY2FsZSgxMDAp
IHJvdGF0ZSgwZGVnKSk7IH0KLSAgICAgICAgICAgIHRvICAgeyAtd2Via2l0LWZpbHRlcjogY3Vz
dG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJhbnNmb3JtMSBzY2FsZSgzMCksIHRyYW5z
Zm9ybTIgcm90YXRlKDBkZWcpIHNjYWxlKDEwMCkpOyB9Ci0gICAgICAgIH0KLQotICAgICAgICBA
LXdlYmtpdC1rZXlmcmFtZXMgY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDEt
YW5pbSB7Ci0gICAgICAgICAgICBmcm9tIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8t
c2hhZGVyLW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgxKSk7IH0KLSAgICAgICAgICAgIHRv
ICAgeyAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSwgdHJh
bnNmb3JtIHJvdGF0ZSgwZGVnKSBzY2FsZSgxMDApKTsgfQotICAgICAgICB9Ci0KLSAgICAgICAg
QC13ZWJraXQta2V5ZnJhbWVzIGN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQy
LWFuaW0gewotICAgICAgICAgICAgZnJvbSB7IC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKG5v
LXNoYWRlci1uZWVkZWQudnMpLCB0cmFuc2Zvcm0gcm90YXRlKDBkZWcpIHNjYWxlKDEwMCkpOyB9
Ci0gICAgICAgICAgICB0byAgIHsgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwobm8tc2hhZGVy
LW5lZWRlZC52cyksIHRyYW5zZm9ybSBzY2FsZSgxKSk7IH0KLSAgICAgICAgfQotICAgIDwvc3R5
bGU+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9jdXN0b20tZmlsdGVyLXBhcnNlci5q
cyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2FuaW1hdGlvbnMvcmVzb3Vy
Y2VzL2FuaW1hdGlvbi10ZXN0LWhlbHBlcnMuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0Ij4KLSAgICAgICAgY29uc3QgZXhwZWN0ZWRWYWx1ZXMgPSBbCi0g
ICAgICAgICAgICAvLyBbYW5pbWF0aW9uLW5hbWUsIHRpbWUsIGVsZW1lbnQtaWQsIHByb3BlcnR5
LCBleHBlY3RlZC12YWx1ZSwgdG9sZXJhbmNlXQotICAgICAgICAgICAgWyJjdXN0b20tbWl4LWZy
b20tbm9uZS1hbmltIiwgIDEsICJjdXN0b20tbWl4LWZyb20tbm9uZS1ib3giLCAid2Via2l0Rmls
dGVyIiwgJ2N1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52cykgbm9uZSwgMSAxLCB0cmFuc2Zv
cm0gbWF0cml4KDMwLCAwLCAwLCAzMCwgMCwgMCkpJywgMl0sCi0gICAgICAgICAgICBbImN1c3Rv
bS1taXgtdG8tbm9uZS1hbmltIiwgIDEsICJjdXN0b20tbWl4LXRvLW5vbmUtYm94IiwgIndlYmtp
dEZpbHRlciIsICdjdXN0b20odXJsKG5vLXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJh
bnNmb3JtIG1hdHJpeCgzMCwgMCwgMCwgMzAsIDAsIDApKScsIDJdLAotICAgICAgICAgICAgWyJj
dXN0b20tbWl4LXNpbmdsZS10cmFuc2Zvcm0tYW5pbSIsICAxLCAiY3VzdG9tLW1peC1zaW5nbGUt
dHJhbnNmb3JtLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVl
ZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybSBtYXRyaXgoMTUsIDAsIDAsIDE1LCAwLCAwKSkn
LCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLW1peC1kaWZmZXJlbnQtdHJhbnNmb3Jtcy1hbmlt
IiwgIDEsICJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1zLWJveCIsICJ3ZWJraXRGaWx0
ZXIiLCAnY3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9y
bSBtYXRyaXgoMTAwLCAwLCAwLCAxMDAsIDAsIDApKScsIDBdLAotICAgICAgICAgICAgWyJjdXN0
b20tbWl4LW11bHRpLXRyYW5zZm9ybS1hbmltIiwgIDEsICJjdXN0b20tbWl4LW11bHRpLXRyYW5z
Zm9ybS1ib3giLCAid2Via2l0RmlsdGVyIiwgJ2N1c3RvbSh1cmwobm8tc2hhZGVyLW5lZWRlZC52
cykgbm9uZSwgMSAxLCB0cmFuc2Zvcm0xIG1hdHJpeCgxNSwgMCwgMCwgMTUsIDAsIDApLCB0cmFu
c2Zvcm0yIG1hdHJpeCgxMDAsIDAsIDAsIDEwMCwgMCwgMCkpJywgMl0sCi0gICAgICAgICAgICBb
ImN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQxLWFuaW0iLCAgMSwgImN1c3Rv
bS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQxLWJveCIsICJ3ZWJraXRGaWx0ZXIiLCAn
Y3VzdG9tKHVybChuby1zaGFkZXItbmVlZGVkLnZzKSBub25lLCAxIDEsIHRyYW5zZm9ybSBtYXRy
aXgoNTAsIDAsIDAsIDUwLCAwLCAwKSknLCAyXSwKLSAgICAgICAgICAgIFsiY3VzdG9tLW1peC1k
aWZmZXJlbnQtdHJhbnNmb3Jtcy1jb3VudDItYW5pbSIsICAxLCAiY3VzdG9tLW1peC1kaWZmZXJl
bnQtdHJhbnNmb3Jtcy1jb3VudDItYm94IiwgIndlYmtpdEZpbHRlciIsICdjdXN0b20odXJsKG5v
LXNoYWRlci1uZWVkZWQudnMpIG5vbmUsIDEgMSwgdHJhbnNmb3JtIG1hdHJpeCg1MCwgMCwgMCwg
NTAsIDAsIDApKScsIDJdCi0gICAgICAgIF07Ci0gICAgICAgIHJ1bkFuaW1hdGlvblRlc3QoZXhw
ZWN0ZWRWYWx1ZXMpOwotICAgIDwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdiBj
bGFzcz0iYm94IiBpZD0iY3VzdG9tLW1peC1mcm9tLW5vbmUtYm94Ij48L2Rpdj4KLSAgICA8ZGl2
IGNsYXNzPSJib3giIGlkPSJjdXN0b20tbWl4LXRvLW5vbmUtYm94Ij48L2Rpdj4KLSAgICA8ZGl2
IGNsYXNzPSJib3giIGlkPSJjdXN0b20tbWl4LXNpbmdsZS10cmFuc2Zvcm0tYm94Ij48L2Rpdj4K
LSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tbWl4LWRpZmZlcmVudC10cmFuc2Zvcm1z
LWJveCI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iYm94IiBpZD0iY3VzdG9tLW1peC1tdWx0aS10
cmFuc2Zvcm0tYm94Ij48L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJjdXN0b20tbWl4
LWRpZmZlcmVudC10cmFuc2Zvcm1zLWNvdW50MS1ib3giPjwvZGl2PgotICAgIDxkaXYgY2xhc3M9
ImJveCIgaWQ9ImN1c3RvbS1taXgtZGlmZmVyZW50LXRyYW5zZm9ybXMtY291bnQyLWJveCI+PC9k
aXY+Ci0gICAgPGRpdiBpZD0icmVzdWx0Ij4KLSAgICA8L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci11LW1lc2gtYm94LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItdS1tZXNoLWJveC1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAyYTBjZGY3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtYm94LWV4cGVjdGVkLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAg
IDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdCB1X21lc2hTaXplPC90aXRsZT4KLSAgICAgICAg
PHN0eWxlPgotICAgICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAgICAgICAgICAgIGhl
aWdodDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAg
ICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICAgICAgfQotICAg
ICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+
Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci11LW1lc2gtYm94Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItdS1tZXNoLWJveC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBmZTY1ZGE0Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci11LW1lc2gtYm94Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzOSAr
MCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0
bGU+VGVzdCB1X21lc2hCb3g8L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEi
KTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2Uo
IldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBmdW5j
dGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAvLyBXZSBuZWVk
IHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4KLSAgICAg
ICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9z
Y3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNmaWx0ZXJ0ZXN0Ym94IHsKLSAg
ICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBw
eDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgICAgICAgICAg
ICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIHVybCgnLi4vcmVzb3VyY2VzL3UtbWVzaC1i
b3gtaXMtdW5pdC1zcXVhcmUuZnMnKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+
Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPCEt
LQotICAgICAgICAgICAgQSAxMDB4MTAwcHggcmVkIGRpdiBpcyBjb2xvdXJlZCBncmVlbiBpZiB1
X21lc2hCb3ggaXMgY29ycmVjdGx5IHNldCBhbmQKLSAgICAgICAgICAgIHBhc3NlZCB0byB0aGUg
c2hhZGVyLgotICAgICAgICAgICAgQXMgb2Ygbm93IHVfbWVzaEJveCBhbHdheXMgcmV0dXJucyAo
LTAuNSwgLTAuNSwgMSwgMSk7IHRoaXMgc2hhbGwgY2hhbmdlCi0gICAgICAgICAgICB3aGVuIGZp
bHRlciBtYXJnaW5zIHdpbGwgYmUgaW1wbGVtZW50ZWQsIHNlZToKLSAgICAgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTQwMAotICAgICAgICAgICAgRmFp
bHMgaWYgdGhlIGRpdiBzdGF5cyByZWQuCi0gICAgICAgIC0tPgotICAgICAgICA8ZGl2IGlkPSJm
aWx0ZXJ0ZXN0Ym94Ij48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS1tZXNoLXNpemUt
ZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZp
bHRlci11LW1lc2gtc2l6ZS1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBmZGJjYzNlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci11LW1lc2gtc2l6ZS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsMTYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAg
ICAgICAgPHRpdGxlPlRlc3QgdV9tZXNoQm94PC90aXRsZT4KLSAgICAgICAgPHN0eWxlPgotICAg
ICAgICAgICAgI2ZpbHRlcnRlc3Rib3ggewotICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7
Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxl
PgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxk
aXYgaWQ9ImZpbHRlcnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1l
c2gtc2l6ZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmls
dGVyLXUtbWVzaC1zaXplLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUyODFk
ODQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLXUtbWVzaC1zaXplLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi08
IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdCB1
X21lc2hTaXplPC90aXRsZT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRX
ZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndh
aXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVu
VGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4g
dGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0Pgot
ICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAg
ICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOwotICAgICAgICAgICAgICAgIC13ZWJr
aXQtZmlsdGVyOiBjdXN0b20obm9uZSB1cmwoJy4uL3Jlc291cmNlcy91LW1lc2gtc2l6ZS5mcycp
LCAxMCAyMCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgot
ICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAg
QSAxMDB4MTAwcHggcmVkIGRpdiBpcyBjb2xvdXJlZCBncmVlbiBpZiB1X21lc2hTaXplIGlzIGNv
cnJlY3RseSBzZXQgYW5kCi0gICAgICAgICAgICBwYXNzZWQgdG8gdGhlIHNoYWRlci4KLSAgICAg
ICAgICAgIEZhaWxzIGlmIHRoZSBkaXYgc3RheXMgcmVkLgotICAgICAgICAtLT4KLSAgICAgICAg
PGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUt
dGV4dHVyZS1zaXplLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNpemUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggZTM2NmExZC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNpemUtZXhwZWN0ZWQu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0
bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfdGV4dHVyZVNpemU8L3RpdGxl
PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAg
ICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0g
ICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDI1NSwgMCk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0i
cnVuVGVzdCgpIj4KLSAgICAgICAgPGRpdiBpZD0iZmlsdGVydGVzdGJveCI+PC9kaXY+Ci0gICAg
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9jdXN0b20tZmlsdGVyLXUtdGV4dHVyZS1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNpemUuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTU5MjA2Yi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdS10ZXh0dXJlLXNpemUuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0g
ICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IHVfdGV4dHVyZVNpemU8L3RpdGxlPgotICAg
ICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRD
U1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0g
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAg
ICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsK
LSAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRv
d25sb2FkaW5nIHN1Y2NlZWRlZC4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAg
ICAgICAgICNmaWx0ZXJ0ZXN0Ym94IHsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4Owot
ICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgICAgICBiYWNrZ3JvdW5k
LWNvbG9yOiByZWQ7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25l
IHVybCgnLi4vcmVzb3VyY2VzL3UtdGV4dHVyZS1zaXplLmZzJykpOwotICAgICAgICAgICAgfQot
ICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3Qo
KSI+Ci0gICAgICAgIDwhLS0KLSAgICAgICAgICAgIEEgMTAweDEwMHB4IHJlZCBkaXYgaXMgY29s
b3VyZWQgZ3JlZW4gaWYgdV90ZXh0dXJlU2l6ZSBpcyBjb3JyZWN0bHkgc2V0IGFuZAotICAgICAg
ICAgICAgcGFzc2VkIHRvIHRoZSBzaGFkZXIuCi0gICAgICAgICAgICBGYWlscyBpZiB0aGUgZGl2
IHN0YXlzIHJlZC4KLSAgICAgICAgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRlcnRlc3Rib3gi
PjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LXRpbGUtc2l6ZS1leHBlY3RlZC5odG1s
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtdGlsZS1z
aXplLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNlY2EwNjYu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmls
dGVyLXUtdGlsZS1zaXplLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCww
IEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+
VGVzdCB1X3RpbGVTaXplPC90aXRsZT4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI2Zp
bHRlcnRlc3Rib3ggewotICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAg
ICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJn
YigwLCAyNTUsIDApOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVh
ZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxkaXYgaWQ9ImZpbHRl
cnRlc3Rib3giPjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LXRpbGUtc2l6ZS5odG1s
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtdGlsZS1z
aXplLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg5ODA0OTcuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtdGls
ZS1zaXplLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi08IWRvY3R5cGUgaHRt
bD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdCB1X3RpbGVTaXplPC90
aXRsZT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikgewotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5j
ZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAg
d2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQi
LCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUo
KTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAg
ICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFm
dGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3Rp
ZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5
bGU+Ci0gICAgICAgICAgICAjZmlsdGVydGVzdGJveCB7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0
OiAxMDBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogcmVkOwotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20obm9uZSB1cmwoJy4uL3Jlc291cmNlcy91LXRpbGUtc2l6ZS5mcycpLCAxMCAyMCk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9u
bG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAgQSAxMDB4MTAwcHgg
cmVkIGRpdiBpcyBjb2xvdXJlZCBncmVlbiBpZiB1X3RpbGVTaXplIGlzIGNvcnJlY3RseSBzZXQg
YW5kCi0gICAgICAgICAgICBwYXNzZWQgdG8gdGhlIHNoYWRlci4KLSAgICAgICAgICAgIEZhaWxz
IGlmIHRoZSBkaXYgc3RheXMgcmVkLgotICAgICAgICAtLT4KLSAgICAgICAgPGRpdiBpZD0iZmls
dGVydGVzdGJveCI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXVuYXZhaWxhYmxlLXZh
cnlpbmctZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vY3Vz
dG9tLWZpbHRlci11bmF2YWlsYWJsZS12YXJ5aW5nLWV4cGVjdGVkLmh0bWwKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDMyZWUwMzguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXVuYXZhaWxhYmxlLXZhcnlpbmctZXhwZWN0
ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgot
PGhlYWQ+Ci0gICAgPHRpdGxlPlVuYXZhaWxhYmxlIHZhcnlpbmc8L3RpdGxlPgotICAgIDxzdHls
ZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICNmaWx0ZXItdGFyZ2V0IHsKLSAgICAgICAgICAg
IHdpZHRoOiAxMDBweDsKLSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICBi
YWNrZ3JvdW5kOiByZ2IoMCwgMjU1LCAwKTsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci08L2hl
YWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJmaWx0ZXItdGFyZ2V0Ij48L2Rpdj4gCi08L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1
c3RvbS1maWx0ZXItdW5hdmFpbGFibGUtdmFyeWluZy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXVuYXZhaWxhYmxlLXZhcnlpbmcuaHRtbApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDkwOTc4Ni4uMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdW5hdmFpbGFibGUtdmFyeWlu
Zy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAsMCBAQAotPCFET0NUWVBFIEhUTUw+Ci08
aGVhZD4KLSAgICA8dGl0bGU+VW5hdmFpbGFibGUgdmFyeWluZzwvdGl0bGU+Ci0gICAgPHN0eWxl
IHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgI2ZpbHRlci10YXJnZXQgewotICAgICAgICAgICAg
d2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIGJh
Y2tncm91bmQ6IHJnYigwLCAyNTUsIDApOwotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy91bmF2YWlsYWJsZS12YXJ5aW5nLmZzJykg
bm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgot
PGJvZHk+Ci0gICAgPCEtLQotICAgICAgICBUaGlzIGlzIGEgbmVnYXRpdmUgdGVzdCBhaW1lZCB0
byBjaGVjayB3ZSBkb24ndCBjcmFzaCB3aGlsZSBsaW5raW5nIGEgdmVydGV4IHNoYWRlciBhZ2Fp
bnN0IGEgZnJhZ21lbnQgc2hhZGVyIHdoZW4gdGhlIGxhdHRlciBtYWtlcwotICAgICAgICB1c2Ug
b2YgYW4gdW5hdmFpbGFibGUgdmFyeWluZyB3aGljaCBpcyBub3QgYmVpbmcgcGFzc2VkIGZyb20g
dGhlIHZlcnRleCBzaGFkZXIuIAotICAgIC0tPgotICAgIDxkaXYgaWQ9ImZpbHRlci10YXJnZXQi
PjwvZGl2PiAKLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vZWZmZWN0LWNvbG9yLWNoZWNrLWV4cGVjdGVkLnBuZyBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWNvbG9yLWNoZWNrLWV4cGVjdGVkLnBuZwpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWEyOGRmNjNjNDhjMjQxN2Y1NjBhY2Q3OTA4
NTE0ODUzOTkwMTA3Zi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApH
SVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAzMTQxNwp6Y21i
QHVYSC0qUEBIUSQlUUJlPzRgNjBjRkctKUNvbUVJeTxBUHwrX3JJISRqaWh2LSFtIUxAUnkoaDhJ
TFRKKG4KejVUdH0yQX1zKnw8aWBLfHVLVjcqPyRgUyVTdG49akdrZWJMblA8O0RsaF94QVN+c3VY
emtjYmBySkZrMT5jKkVZCnooUXNlN01FJnlXNzBRKklmT2xeeEFIc2ViRmE3TUM5cWluRXtYSCY4
JWdRLTgkakN7KnY2R1JQbTl9JH5sWGpHfgp6bXc5ZGZgbXY7PWpRa1NeWF5HYnltb0JNWShvdWhF
OGJxfnxQWno9N2xVfSN6S0F+Jm4oKT9oWi02LVM1Q0d9eSEKej57b0JRMzlzNE0/QSpCK1c+Zz15
alB4JDt2WDJtMHdjZlVePG8lNzViZlY0VD1VMlpzYVA2fUJvQWhRWWszNnkmCnpAbGM9bTBTYUIx
b2ZfUD1jI3twU3Y4YihwaG5kKmFpdW16WUppVTQ9O3UwPFFDOTExeG0jRmBKZWE4TGJfQV5kPAp6
c3tpfUt8TlFveUgtaEZKJjtQI1ZmOFlJOz17d2M2bzNnQT18SlQ2KGVmMF9WJT5RZFg/cHliJSpw
byhJcSUhP0sKenBUYlI8PyZrbEcpNGpOTj1QQjt7VChMVHRpRj1nZVlMaX4pUEElRUJ4NUJnJU1v
KWt5R2N4c1BlejhlN28rVyplCnpfQHdUPDc+QkRjI0B3SlNiajVwQjclKzJSaWhMKDxZbGNjVkhE
K2h3aDx2PztfcyRMS19GTWxjRSRkbCFeQklFQAp6Vk5RfGllI3k3fmQtNW1fclpyRiQqMCZ5NF4h
TkBsXiMkI2Znd3MhbU9aQiVSekYhbWlIJCFybkhrZm94Oz9kO0AKekhJPUlgMnxKWSFEKHZgWUl3
ZzJ7PDY8SU83VTRZNDR0N3p8e21aPCFnbG0/S3QqIyFiUUFjdnppbzQwNiVfeCUkCnp3WjtaO15h
YG5jKFloNyRDKm0rPmQqMCs+SVlGUURRbSpIIXlgbjJoVkBtbzdQZX5JT3FSdm56bUFzPHVXP0BY
JAp6KEVKYHclVUB7WDl0PTBOJnJEbCg8YlNvM08/akpsOSFHdj54TjFeJm8lR0RPV0IjZ3J7PTIo
OVJMSVd7I3g1SkUKejtidjk7TD53UlJ3NnRDUTZMRHd5c0lXO25gUVE4I15XVnx2NU1JOG1gSjJ9
JHZSbCtAbzF6YzdzSGhqLU1XN3FRCnpWQEE3M0dgdVprfEhlI1czK3QzcUN9WSQrN1ZjQ0QmS3ty
OTgmOFdHaTtKRHNBX2pwXl5qdmopPikjOGApX2NkWAp6SkJ5fD1uRnUwdiglWHdQMjtIfikkOVAw
R0peOHBMIUNwRXVxXmlxfU1kMWtxeGJPSkFTXk55UkNsPlpANi1xPFoKej82ZiRGbn5FckUhOGJO
Uk1ySldgcDV8YlFRVjNCTk4qITsxUT03ezYmTD4oYjNDYVNzbSNWM0x2a2YqQDc4eHA8CnolMTVt
XlptST8rNThraVNQJnY9ZyE8SjlJKy1ma3YpXjN4ejReQysoVGVSVGhEYShDcXNvbmx2bVZwQSRh
a2krNgp6YTREekY+MGwwX3w1TkZkd3FEZjJGU2xmamxvenQ9JlUlXjRxTStyOGFsVXBIcEwxVEJp
RDlsVk1BPlQyZXFDZSkKemBTSDJmbWIxJT9YdHpKe1FCb2UtQlpRMkc4WTx4QGJWV0xre2t0Kk4/
JSlFO01oKHgtbXBFbGxIZGxQRVp5bTc9CnpPYDNHWUMlb0g7QCokJU9rY0RXYThTbnZUQFlEPnIt
Sl5mVjZATV5eTm1ZejlBanUmZytUaztKKmkzZE07d0NVSwp6KSE3ZClZamhMamlIaWIzZTNtYHdv
aSl2eTlmJClSST8mXj9QeXclV0dYI05LTXkoMXZhbUN0fUIwPHh1dWtnbUQKeklGaEBecURQPERu
QVJMSS00IW8lOFNjOzw/amxUUTtPfm1CYnM+NE9gN35PK3dFezE7eyUjP0BCemV3fXNgJFpQCnpw
SWgtNlN1Sj4+cChuK0N0QHU7cCsmZXBZfExpVks/YSEycXVgP2d7JkR3c2FURFVIQmFGV1hDVnFB
cTdwPnp0cwp6TiYoJXR5eEVnZFQhck4tQUxYLXxYS1lWJjlHQ15XciZuZ1hnPXczNkRUfklAOWdk
XyhmJkluX1NmOEZidWNOQ00KemViUkhRKXBsS216ZGtONTNRb2BPYDh9KCMmcDhWb14wOGJNe3V5
PzFBZU0+RG9FR2Q+YEZtaXRVcmV0bFhuNlJZCno0K1RCbnN4fnBkPyNnRHtPcXtEfSgqO2AwKWdE
NklIcHpJWlYwOWQlajA5eWImbHFFT29vT01OMSRXITtacDB8QAp6aT9uaU9MXlg1VDlqdmspPld3
RjBlSm1TYndLSVlpZzByTCFSZzlubzFZX19qPWdiOSQyQ0deYXt5eUxEdnpBRCQKej9hRnZVajBE
eEJEMzBKfjNGNEx8dWJOcU1YdlhSXlJnUnxJdTttUGNAQTdKSm9ldWNvRSVyWTJmd3FnUHU8UWB7
CnpJfDFnZ1plQEFselQ2WjRgeSk5dS1JfnEqd0puPDFYTSNKPW1MWGhfTWg0NlJwS3YxM3pVXm9k
M1crMX1vVURqaAp6M3xPUn5pSGhKTGxJUT1+dWk4SThOMkh8PEpROVByKDZKfFotKEJsMUdEdkdO
OGF8alNUWH1VRV9PektqLUFUcXYKejItWkh4KWFjPGhzK2dCKFcxNWdIZzVNUn0tP3FFPF4oZERS
N2tAd0gzRDM8MjA8dSozTTJ9PEA+XzVrM0RLbWJnCnotfVhBVTNiWFVEUjYqRWokWEdlfUwyMmI5
amxlOF8rTT1mSz5gNlkmZnZ4cGV3TlRVQXRqWi1yRV5CK1AoZlEpYAp6cWNTQyZWZVFHPmhqKl8x
eig0IS16U3c7OWJtI1A+KTV9aE8xVz17ZDBzczRvPHcyN0k3Z1ZZJEpya3RMT0FpUWAKekNEblUw
eGFQMGomQ0NAPHQ9Jk5XbT5kOE83Ylh+aTM1PUlwdUVOd2cpXjV3akZnKVNyXlNBJXVpMitfSV82
bjk7CnpmQTwoWEJ6QU1fdFpodDBzcXUhQ2JCTzhgKUB9YEBEOGxGQ1clQTR3U011SmN5JWVKUSY8
ekBAY15UOzdZJCt0Kwp6clRDRUVzaVVgenRwISFfU3YtNHh2JSE2OHZAMT44c047PjJrRUMkI3ZX
ZXI+ISVHejNuKUhzMSR8WjM/NSs/Nm8Kemw8aVd0JU83QVIxbkNOK0JBS0xyVFNJMSFGdEBMZS05
PShlWkdgREhFMmZoWTY7MTZ3PGF0TitkeGZSZWVQO3A5CnpKQG8xUShqOGxaK2gxaWFLTUZyLSNf
PnYqXmtOZXshITxha1VJJiojcjhhTTh0N3Mjei19M2Y9cFlZc3NTR0FpKQp6Kj5CLT94Z0lteEh5
LWhnMTMmUmlJVlQ4eVd7YlNPblUpNnhSXypealNSSk88ZmQ2Zk1jX21ySTBoNUl9Kl9fRlkKelBh
NE5tR3hXbl5mN2FUem54Uk1oWDJHYXs7TntuITFFLSVOO0I1aCZPJEIqJSNFPCM0e2ZvQzVZY3h0
Z3llNSt2CnpkUkd8e3FvTDcrY3g2JkZ3WGEkZWhzdGUja1QhWCYoPU1APkoqdXAyZHxOXz1qOzwo
bDsjdkRhbSt7RkBeNldoQwp6ZDJMRUNBOEVDOEhhPFJPeXlqc3QqYWs7KF49Tz9OY2BIOX1wb29w
dGBka21iZENAWitweGFwcUB0VjJGSWpmI0QKejhgO2FPZk1zRyFeRX1IbTAoWT9IZW0kayVaKjVT
flFZJiZfbVpMNU5nazBFN3FJX2lGKGlZe1c4SnVZYUZwdW9CCnolMyRqSV5qcyVCSnx9O0ZNdmhJ
UzEqTXRLQkZ1fTklKGUtdU4pS2RQdnR1Xlh3IT9xPzxQS2cwd0RiJGkxcjhWcQp6cn1GUz1YQGtD
ck5ecD5Udk82fCMjI3tTcD0xTHY1NDNNe3gheSZFRCRHNj9FQmNKUShVPyEhcFJufjRBWE02MWkK
emA9MldYPERATyFNKVlkPUlqPlo5UHczcjRDVXZEcm5rVnN8X2JYNXZKRy1lcEVJfjJhTE0tb0Zh
VlMjYWh+ZmlQCnptXnAzJWVtSXFXKytVbDQoejtpSzI3fjcrWl81JWt4MXdfbGdKMWIzLWJpN2F6
KH1COSZ5aHglXz0qeUBQKjB5Ygp6PmN5c15SKHJnTkxHdTdyeEdscWY7S1U9bzk2I01idURxfSpu
UHleaEtyIzk2UHI+JFcqSmZoWXtIfSRxKGZZJlcKeiQlJDZjbCY4c0VYO05SQ3shOUdpYVp+JDV8
S3dzemM1SE5RRmo9ZS05Zi1vbkByIT90NHU9Q2hUaE1gOGhEOGx6Cnpvdnw3bWMlbXRFRlUqK3xD
d1pTd1V8SSg+PF5uQm9xISU4R1Zxbkl6X2QwMmtNYGd4PjUrUnhXVWQpe1I8QjZXOAp6VkFZO1Vj
eHxkYFF9Mk1QMkZLMTMhMnJpTjsqczIwbFhLcnxGJVokRHgkUFZfNk9he3Z5dj5AMUApKj5hIUt0
alUKenp+PzY4dVJzMExkRiQjPGchO2JoTVZeKlZgc0MhXiN+RXtMLWUzTHxmdzNxbVIhaFp+cnsr
aCRSUmVvVnFGVjYkCnp2RzdsWExFUz9qRGxCKnA+RXVCQTtWMys8QGtqUG8zRj1KVkVAaSpvVXZf
NylsSyM3aGVNRmVZakl7Knp4dlItKQp6NGcpU0Y2OWczTFdaZEhZZDtLbjZgOS1mbTk9RHo1TTgj
WitlMC1qWTE8NUZ1RXY+N0ZVVyU8WV5GbmZAJn5xV3EKelR2YkhENjBhKGB7JWVlSXJkZEFTQHdw
QnpnRkt4P2NvWHxwI29+SlZ3I0NRek52JlJ+THZzUUJ4cVhBYzdEcEdDCnpVQXx3RlUkYlEkS0Qz
RyhNQjdgeUk7PFFAQ2FUQktSc3VCNTM8PS10OTdAUzxHWUJuKSQxUFNxKXojSHdmcSFDeAp6dk5e
SiE5WElYRileaGghM0Q/UGUmOCZuPzJNcXZ1cFo5SEN2eHMmLXt7Rip3dk5RM2J7Yzx4NlgzOEAk
cVdoLXAKend1Uj8jQn1+O300amdzZ25ZYHFSWjxMeEx7ZVg+T15jK2wmbUxOeVFRVikoITx2NFVe
SXhYJDJGP310PmBkX1pmCnozM1opKlllQzBAP09PKCZKQ0dqVCojI2UlPkQ7IVQxTSFyXyEpeHdG
ejw9UHRRPW8rQjlrS05JSWAmRklPWDluJgp6eDY3dTclS3xHbCg/JlEqdjxMcF5XKCFRTndSO0Mq
b0MwZXRzdD5Hd3t0M3BWWi09aiEkXz1Aei1AZ2BkPWEyWUgKej9Cc2RzNG92QEpmLXchbjhPTlol
OFctY2g+N3xnPytfcUp3cXlQaTdYRVI9OzNGN3M7cSFXMGBuN2NGJSRFT2xMCnoqfHh5JjNsYWl3
OUpzT2x1NjhpfnNYMGwtZGA+Znl3SXU3dS1fMylnZEhuSl5wSWJyZCFlQE5hUiNxZz13bHR5MQp6
ckNuJlZGVGBZTmhMTHpPKUxgTGRWbn5BVCU3NWQjU0V8SiNtYXtSQktDfmBgKVQmTlpFbXt8fk0+
cFo4JlJuWXsKenNpPCF+MDgpb1JVSUVKS0ohIWo1NnhRUXZ3allJa0k1MVBTRT0yIXI1bjlPQz89
b0RIbDhiM2BjaX0xcj9AXnRjCnprVVRSflckI20yV1MhWmJvV2x5ejwjIyM0YkVmKSozfU5+Z3lN
cnJZKjhHVSs7ZnVVdXpyKndXWCpAWUB7dFR6dQp6ZXk1IzVnOFpAVHRreXlSPWJSRSMlZFlZcVFf
Kyk8Uy1ifm14Y0ZRPGtvSjN4Vk4jSUlMT0s1ZG1eWnRCdCN0TTEKekclKkg0bWYxO3tXJGY1MGF7
d3dDYj1Lajs4WksmOCg8TEN3K1lMVnRlfm0+VUUmM0E/ZnpmJTJLUkE3N2tCRlcyCnp2cyVuQGBs
K2paMEZOWiE9ciskcms2ZGlSX3l7MSkoZzgjRzdUI3wkKChJTUYqJnVKVXs+aFY7VSMhZiZealJs
Kwp6dkxofmB2XzRTIWFIKyR6RnIkQChyQ1RrWEV7NiRpTG57YmppUmV4K1VASnFgWFBkZzJjPkc/
WW5WMzA9UytPaksKemspelFoTTUlTFFHdzNWZlZyWTxIdEsjeiFfKkohNmVNPVJJUnRCWihAT2dr
aTxUSH5Obz9JXlhHcCkpI0hmVnxtCnpvaHQ5SWlLQD5xIzZEPkVTaUAmdl4qKXZ8VENTT3hKQmop
SHZnNDUlPyE0MCN6dyg5dktYWXI/YXJgRkE2bjU1eAp6Q1VMV0xaI2JUdUohPlhAaHlmQjshdXRf
PEhiRGcyKDlUIXdVcGc0Uj41TW56NmpzK1R3Q2RGQHs4eGNgRjtMK14KemowO2FNZkxyNX5DMTFW
fmRXN3EmQ2woUlQ/ZXhTYHdiKkFYZGlGXzlWZmtveWNwdjEqPF47NjEyK3czSjVWbEI1Cno/PyZC
TDRuPFQhUj5aVUt4R2hmQyU0QlJrTTBeWUJ5RlAxOUhabFVlZD1CZ0tMRmozcytUT21ZLWdqPUNC
VSg+bAp6YU8+YGRUaXZCRGk9U2JBYjQwS0gyNVNuQzU7Qj0xanp9MVIxR0NDbnchX0tAd2hfMmF3
KyNeXnItWGxwSktqSTgKenVycE5wT1RNcFNJanFWTENSRDNHbVp1JThUTnRrMmIzblMla3hSQ3tH
RHdwclped0Y3PDw1WExEI1MmNTMqLURzCnpHajRJX01HYUopT0lveF8+a0NoI2J2e25+ISZHXj4+
TlduJl5yOGB5c3J7dH16ajhmOSQhd2QzN08rYUQ2SS1sVwp6KSMkKGR0TnZpYkdPZlMjJGExI3NK
Vk1OKClyaXdlZG4wQzA2KG5lcHlVJnF2bWwkZWVVVTg2STl4QXw9KV8zX30Kel57ZEJxXiNnV3Fe
clRPaU1ENXZnayhTOzh5U2VBJVF8cXZeMFQhaDdJXiNpcShBSV9wU3YmI05haXUjeDs/NkhiCno1
JmVkUlliRXwoQ09JfHFGQW1LYjdhcXQ7SWMxb1lwNV5YblMwSitBcjlBcjJpQUMmcnhlQDJ0JnU4
dGtlIVhMeAp6PEd2PHRmVSQpX05LNkd4TFM/WlUjQzdIPVpPNjhAPW8hM314JFV2d2llSnd8XnJ3
JEJIaVkkMlM9V1NwZHBXK0EKekZEMHJCNjBDcj1xRng4RCQpUTwmaGY3Sk9WRGdgK2dWbzZWJmx4
cVpROG1mRnNqSG04X1FfISgwPVhBQUJEODFDCnpwRERxPG1iX1EpVUZQJUtvc1YwPXFDNzYjPWo2
QjdQYE5KZktQTVpsailwbHQ/aVRtTShRe1hQdE1qXmlAPyVlUgp6d2xIQX0xYV97MFo/azE7K0ZA
fGxyVV5abHlCYXdNRmFqZU0tUmlfbyU0T2RkQCMrK20jJCkqJF9NfUVRdzVQbnYKejZEMkVCU3VV
KGAzbWJEVWREbyVFYUAxT1pFNHI0NV5DWEphRWk+Zld4MTxrM3ZyUnA2dFFXWWs3X1lLfXJCQStO
CnppVWt5e043MWtUQEd6anJVdXErPVVpU1JYaCEmTztfO3VTRD08aHMjU3tNeH5heERqe2duIVdM
NiR8SDBeajE0Rwp6elJtc081M1BQMl5NaF9KSEFETiMrdVVBR3dCMFZjSURke0JeTkhlTGI3ITVv
bjJEOUtVI2NuT2tnbm5KWShtTWoKeig0Z2RrTEdBQEYqTFpaUEE/eDchVTlMNipjcXBsRl5eP2lZ
Zm00QzNXb3dpXk5aY0JiS0Ijb2dvfHVxbmkqWjt0CnpZU3JQSz00Y1EtN2Y4aiVTSm90cDlPXldz
RTtoUGg+USlJfSk8U0lsJE96eEMlfXdjSU03bVM2WCMwfkE+djBlewp6RzcqYEgycV9JY1VCSH5f
Y1VaI0BsNFA9RiUqTF59WTVteDNEUV9acWBudnBUI1ZeOExMUm93JlghV08/ZUZec08KekAjSH53
dyp3b01hUSFfYDdHMHZHdVk2UyR3KWQ3QGMoI0NTRll2JDJEIWV4YGFhOWc1OExXdWhKcnQqX19N
UVcrCnplc2lxKlVRQkFwXi1OVkhGWlFqRDJAcD1DaHFKNEdoWlI/KnVzWT9me05EUm4qfH5HKURB
JkZ7d0gzWUg7OHY1WQp6bXlnZGBIKnM2NlRpcFZJZ3RtZH1FY3VjcTcxZGQ7XjRPRnRQWGxzR3U4
THFfKnR1YWw0bn5wdyNPbm19ZTlPPjkKemVpQm0pI0BfKTFVeFk0Ums4TX1UbjVxXmpBYXRZZFBX
UnRIRSR2bVYkSHF6JWNETyRNcUtkVm0mJVhVfSV7NDQ8CnpQNDByI3BVcG1GV2d9TkxWXk83c3B8
KDxmemJNaGJOUDYjY0VAelZVdH1rb083V31MaWZYWGo4WnYoY0JzKVlBaQp6biluO01LRmojPytp
bUB+bWc5elZ7YWwxP2tSQClXc0M8cSQoSkNRb3Nfeyl1VWY1QnlrRUxiZEZyYXFVNG1zJkgKeiRH
dlRIXkx5ZD1kZCRONzdVXyVscl9ISER1Zzwqe3BMSW0ycjYraGc3PCM2VTtXezd3SFJpbHVyQz9j
dTIrSSs9Cno3JEcrc0dxaTJoYEE0eSk+IWs2ODNeJSp0IX5CKUp5I3dUJStpMCg8ZVIqfF83VyZS
QyMhYnoqOU5paC0zM2B7fgp6P0ZQKCQ9TVdJPWh0am9nMipwalNDV3w7Uld9TEg4RURBdnwqe15j
QEd6UT9iNzJ9ZFdxNlR2WTxzMSg0NTxZZ3cKekRUVk9TaGpUQT45bDJNd09+VmVKYF4/PmcjNEVu
fXZZPTNFJkt1Xn5qZl51TDtvSE1rbiFCZmNXRUBIQEZfMXVBCnpAZldSWHVyTiN5WlkpOFghJV9A
d0lCajV0PSRpWm97JSs5MzAlX2YwWWI2RWZgVWgjUndEOXdiWGwjfGtjcmpyOQp6ZFFKTkY7O0J8
fS0oKUxGVmJiZl9zI2tkV1E2UH1GQGxAUiZWfT8pZWhxY1p6M0dQUEdJZTQ1bUhfWVRQeXckY24K
ej9tTEhgc3JYQF5tQ0ZROVB+VjgwaWcxPXx0YjE/eEwrWUdFVDhmRkAkbkElSmhtUlpHIzM0c343
cWNKTFp3czxECno/JWNqUCZfNzRqSX4oMVo5Mi0/fDI1QW5ScCt3SXBSSzZfJntZfFhIYG5Sb3Jr
Y35yPGhINnI2LV9FJkpHY2tOQgp6QSpEV1d7RD9zUiVXPDxgKTghfHxxR3RZcVJ5QHFoMiVNTSt0
e0JYZ0hoQTJKaCpMV0tzby1KYFVXNV5YMHJKQ14KejNZMTA4Rzx2MFpGXz9vQHBXfkVtYGBvWXw3
R3h0IypldEgkaGRlUDhHMmpPM1FnXmhfdXBnZXBHcW5yNyN5NHl8Cnp3ZSk+flRnY2g8KkVVeHoy
WWswVnk3K0VKZjVaX3g+JDw3K2c/Xj5zYkE8RFgoSEIpUyN5Zk11K1E3NTJmYlppTwp6Yk5XQWcj
RC1oYU8hYnAlRlAyczlhM3UxOFB6fkd3YG5sT3hAUz18cSE3VjNHZlRxQ3Q7Yy0qUjltKUBKOWU+
Z0EKeiNrO0xVTXdDIUIwckt8TCRNU01MUyNIT0VDMTNUdj5jUCRATih6YS0yQC1DYEwybiZpTTNs
KnZjS2hmcWdfbnNuCnpmUH5sfFUxPXNGOF5BK3hJZ2dESmVENVgzdDstVno4SWZ7eW43aiElTlhT
YlhOMyE7XkkxZ3deP2pzQTxhPHJRfAp6WnZTMSZZbFRuUztnZSs8a3ZYVF5aKlpqN21nbVBIcjR6
YFgwZ2NtTFFDTS1lK1kyP2k7aTA7U1B3R2FMI0lIbzgKenk1NnBHIUczaj9ya1p+MCZZOHg5UUpz
fjtfVXt4SUczTX0rayl7NlprIXw+cU99a0dDPyFPN2NFX0haTlVvckghCnp6bERiMnRmbjY9MllI
NnlgPXwtJU5URmR3KG4jIzR3WT0+M1ZKOV4zc3VGOGg8ZWlDPC08NVZQJHR4WCk9MUZDQQp6SENW
QjV4OUJhMSlDdnZ7PD8tO2plbmQ4MTdIe3Y5PnNRSVkoJkZGND1pTlRHLSlLKUw+dDNsQ2k8SEtT
SVRAeV8KemJvXztIelJHdEdAPWpNZTlldXQoYjBHMlpvMWhfZD9kRU5WZExMcVRvNFJMeVIpNDgh
RE9lZnEoPlprNVohUzRFCnopaS18QlZKZT0qPGxGRk9HZTZ8K1BwMX45VGhkTSEtQWF8aVZpcElO
Q2ckRHBSaEBobntIejloeWpLVTtXZiN3RAp6Zk1FQGs8KDB3MEZLWUNaX3g0WXp6JXR5TEtsM3FO
bFMzemdSclNBZmNtRikhJiRJfkslREI/ZnQ9M0c4Ym8+RiUKejJzZzhIOUdGRygkfihsQDBMMntM
P1Q5JVJFOTw7KlA4JVZLdWNmZlMlejNpcz08TUltNEs3JGRaK1QmUEo7I0xsCnpLMj8zVmZHZUoq
NUB1MlVlayFRUmEwPUY7JVh2WnFJaEAzfjslayUpVV59ZlA4QGwlP0Z0MWNfS1VOKUBqdmV1Ngp6
Yl5HMEJjSlVSV1JhJGtzLUU/QG9oMG1HO1U+WjZxJVlGSVM8VmMxRSQ7VytSUWE5MFcxSzZvT0tA
KFRednM+KDUKek5iaWE1cEdlczUjJTZqJUBCRUg8KnxAXz5XdShsSVlqQEtDPDQ0RHRmI188cCZh
dkNQbDh8M1QqbG5OZTkjPkVwCnpiZWIlaV49V2FsPVdFIXo5UT1GKUFCSnNpeVYmVD9jRSQ3QVp7
N0ItWX1zYkVZfWIqeT9+KmJrNWBTPTgoRT9JNAp6JFVaM24xdDdtJHk1aCUrYnlIPXgpfGo/IWZu
dGVEaGpwVWk3WGwrP3V7IXYhRlpIZz08dnNgOT5NRm5PTD54fFoKel5KODRMe094bmtSKj5xenFC
UzNSdWE4NHhIbEAkeFRpUEZSUXF5dzNzSDBzVGZqNmVWQz9MOz54anoyRWVCVnByCnpuVmRsYl5S
aGBAOWBrVCVPV0g2RnNjPCkmLV5xfGB4cVJpMWk/M08pKG95flUqUktxNnI5aTNVK3Jtej9fV2o0
Iwp6R0NVUjJGRip6MjtpbndvJHNfdHReaShiYGkyYWs5Z0RnWjs/dXJrUiZnYDI4JCRFY2Q+IXRj
Tz1kM2tJZiY+THwKelA5dVZUK31Sd3I2Km49SUh7bmZHY0JKUUE8bzghPk1jeX1IYWpITWAlWU5h
byVPOSZCZkZQOTMyYWRxQFF8VC1PCno0WSFQeDQwZnRhQiQ2WTJldm9RMUBRVzkhLVh+eEBOVDc5
I3g0VUg4ZUJmSzNqWjNXcHBvQWFHMHgtUXFOMnZtJgp6ZkJTPT5Odld3cj1URTlVLUZhT3VrUTdZ
WSVfO1U5UkxAYkV4X1ghamxofE9CdjgmbkFvJDFfY2ElfmxIbCt4S1cKemkoQU14dU48e21uMEg3
VDNRcT08IUBeeUMxfkMjaEpuXk5YX2klPyNxVVFQaHFiRCMmeFJIYmxsWTQ7UTB0QnAtCnpfbnpm
IyRlYGJNe1RjcXc/R3xMXj4xMStoQk91ZTtIQylfeEk9XldHNllnSS1lfiNGQHY5c0ZpN0kzLUx3
aWgjawp6RnY2WFdVanJsN0JoQl9EP2VOPnB6SypBTWhOR0tlJSZHZ25oMVp1R1hERzUkUyVKcnZl
ZnA/JG1ATVIxYmJGcnsKenFlK0tMPTF5cE5JY0lkSmFfSU15aVVLQXVJISEoYDR8QngoRHtAN3NH
RDVHXzVQM1NHYzw4a315VDM9d0NPfll6Cno2Q2hRMlFsK04oUjtnYjxYMj59SiZaKX03ZjZPI2ps
aGROTSlTRH5AeD1raWwhcmE+aDFwOFZDY0pwZ2RzSHM5aAp6bEJwaj9zeVQ0RyNsQiNhajFSKn1k
TXg2VEo1d29YbXt4Jn1pcD42M0A/XisjMiR+NHE0WSRRWChwdkIlTlN7V3IKengxI0QyP0clcm5U
Zmw3YlVqWl8oe154X2MjZ3RVfVpRQStQKGU3Q3BFcE5KXzdvNlZxNTJHXntXS3hHZ3ExVmtuCnpi
dHp2KUM1dSNOaTlXeWJmRlRuJlMxLTJgNSlZaXV1RDRHYVZ7QCE7RCZgd2JFIWNiITB0fkVENjNG
RkIkSXBrbwp6aGt3fUctcShmcjB4PiQ3cj9WRTBgNWxrR21paWEoJSt6VTRidFJRODdHQWEhUnB2
ODxyWTUtc28wQE13S3ppbkAKenRmZWlAbj5kdyFkJjdSflV8TGlwe01mZEE8SjVaOURhNjt1VUpC
QklsSEh4cXYtajNgPTdrKGJJbTgrQVYmTUJhCnppQk4jO3F2P1JEPHpSKGltUl9nRmJWVj8yT3xg
MHZ0UURQWXIhe1hqNG1OTTMmWmElOVVrYVM8JDVBYWQyIT95dwp6aT1ENjYrNUVpMXRZPStGeEpY
VWh4Jj42cUtkSWtYP0E1fDlzYHxkcUo4aHsmPXwkKTUtRCh8UFU0aUBUeUxjKiMKeklGTmN9X3FY
Z01Bci16cWVvQzZ4e0JqeCF6IUotPENYNy16ZEwhJXtvQF5nbFprMFZiJjJ7S216XkJ0PTBeO1Yr
CnpCTlZ1aFNpa1ZWTm1MUTFGSXdQcz92eipReFokN1BqRFhxR2QxZy1LUiRLZClwQDRtbj98XjB9
IzRGQ2VJfiN5Vwp6NkxIYzRYVUxCPyZqR2BgZT5WcF9aTjZqeWktQE1JTkB7JkF6IyN5dHAya31f
MTN1Iz91R08yNVZPSmJCTTg/cHMKejNVUTVYejhuNlZjfkZpY0E7SnhEPU1gUTlkUGc0NkY3fHhQ
TlNNJDUqYXpyRnk7KzAqRlNxQHpNJU5GTGBTa2JWCno4eEw8eDZCZ3VJbG5WKHAtfXBQTm5Bd0xG
ezFYJSY0dlE1Vm40a1NFU2YjZXszbnpqc2RkQjU5bD8hU0B2S3Ywagp6OX5vUHwkUWZsYmEmazhM
NzZaY3dkdGFDQGVDZ2g/IWRDO1JBZ3k3bVZmTyYrd0FebkN1UX1fbmh+OX4jZDJ7YX4KelRVUzJa
dylEcmA4Jn1gXm5JYk9KeFdZV2khPFVzLVJ6fHJvN1BHNF4mZHxmKnRJNnB0PlcxeG0oZmcjQCNa
P2BBCnpURGpqaVlgO2JYcENMIW5neUN9JUtpWCkrVzVebG5oYVg+VUtEMih8K3E/MD5aKnR1MFNq
TXNfQXVfZV54b1U/Tgp6PVFQdWBiJl5adCQ2aD54bSZ6V14kKTd9TVQlVj1YTDJiJU5EMFVHV2gj
LX5FUzIxNDZfWTxDbTtnUzBfZGNlSnsKejlpYDVGYEN4eCtNTnAzUnE/eWxEOGhyMlVga3J8RDVT
NEk9QEpyN1RLJkxWKnhnQT9uXnQ3PHJjMit3Yns8e3whCno8eXQhRkVmc0k/MUxYQ082K0pISDhW
RCFQOFE4TEZXdWklbkJYRGNLUDR9dHJVcnEmRXp4UDBoYjEldHJOa3gyPQp6NmdZM3p5dyZEM0F5
MUg9PE5XbUdgdlM0dyZSYWZOITFyVkMwbElPUyZTIT0zTlV+QVNfOCE4X2xYUXdlZDBxVDkKelkx
aCVSU0B1UklsJWgjPHdjZFRJNEBKeVhnKFFeTXJ2bFNPYjFgeUk1Vyh1Qk02JjwmakRSMi04Nygx
VEZYcDQxCnpIXyFRaXlIXnV1cz5nV3M8ckxfTmRKX1p5NEJ9aCZYaShaelgwUiQzWlFKWUhVa3Jy
RTJ0ITBgaFktbnVoIXYtWAp6SzUoWkYlSlg8fFR1ST8jZHojRUFsSDtNQWpFUXB+V0tvJVN6JnBm
OSlRdEBNaiVBRXokOCE3NSoyfDxaT1R0Rk4KelF2R0A/SWYqVVl7b0BleG8pcTR5OWZ3Kj5UfDZW
T18+M3p9MkxvVkQ3WjR8dXFQWDUhUWxTPVNyanhtZmdoYUxPCnpNJTt3MDImI20/MWJreGlwODJr
bXlycGkkempDajU8YWQrMDwrO0UySlorbG4yfjd7akxsdDstQmMySDUwWCRmVAp6b3xrOzZHTCk7
ZygkaUFvViRZNlJpPjsrMzQzSnNBbWdBWkktSGxgJitvMWkybWM7JCpDK0RweTY1JXQ7I3NTQ0MK
emB+NWxGKmJiTEhtZ3FLSz00aEpVR0NMI1RoNT4hV3NrK1ZCekFBdTglfF9PVlIxS21Yd1Y4UnJY
UD8wa1RSV0JPCno/JDxUb0ZgTS1Pak9+JGZEdzRMdkBLPHUzU0BJZ0RMY0k/WFM5OV84VDJfTyll
WXAyJFpFNXtLTWFZKUE3c3EwaQp6Pn0lblJvIUlqIU58clJtUD5hPH5uS0xmIyZpdkNCa0R3dVgy
WXRFdkZZa2wtLU0lUlBGP2NPNF9INm45V0FWV0cKelR5JDNicnJGUExCOEI8aGI2QExeUEQ+P3t1
ZXN0WTN0K2xhQFRPLU11WFozTiZzekgjdX1lM25RQWVyZ0kyZ0lqCnpyOW99YCtYN2dge2pBUn1S
Pn5rcCF0UylFTWk7PiheJkVTNlFuUnQ2R3V6fkNfc21jeyF9MSQka01UZ05CfFpFKwp6VFpHflhH
UHNhKG5DMz9XLWNqPmVEZlJTalJ6WTlrPFAhXldWKzt5fEk1MypTPGpiVWJEZ2IpPD56bDRxc3hT
MHkKel55V053PChveTxFWjdoKSUkdVlpQ2lBKnx5eTcyWHEhZChnZjdVNnIpSGo+dz1kbD5LK29e
RmdrPEg8ViojZD5tCnpFSERGO15VaHdvRGFwQWs5YEZTUjRKb2RreTE8eCkjQFVhIXpEWWIyNi0l
RDFAQTtieEomeEF4OEJqakYhI2NqJAp6RzNpV0YoUkl3bz9EeTY1Pn5kS2dOPD9NRU8jdTAmd0Z2
YkNwMDxMV2AjKFY0RH5EPnMkMSYqNjdDZDFIWnFSYiQKeikyM1hxRmlfWHdCRThAQCVZTnYxeDdD
cyZTRXJGR3Z4XnxtS1FqSno/TUpodkQrZlZJfDRkM01Rb1M7eklCamEyCnp7TWg2Q2BzcWwzbipL
TzVTdnMpSCZtbHBjI2FyR2E5MUB3VFchXl96KnlGdE5iU3lVJWImOHdfVVByQm05YzBaMQp6TV4q
eEpZQCNnQkdpJSY7ZWF8JmZLYSZHR1FtJGJSUDVpQVV6cUdsMzkjcnJ4R3tkQmIqfHpzKj4pSEVk
bzNzVzkKejxHb1B3ezwlKkFFN0UkOGNKNExDI3hYbW9xXyFWSXlZdy0mYSs8QzJxK18oU0FKITlD
a21+Z3NWbF9RQkEhYWZ2CnpmOGNTTTN7WUowezJTc3ZVdmh7dyV6NVUzMz10NWM+bkBnWCY4c1dw
T0kzeW1sb00xZTd2JkRKN25LQTl5RUsrTQp6NCUwSW85X0ZTLWhnSEJ2M2ZgMiliKnBmMkZsUD4+
cGt3JX5gSmApZW9IckE1OzhgTEN7bmk9JTQ9NTAhO05rKngKeld5VTlBdTxmS25xdkUtNmh4S0Mq
TEowdUE0LSp0aVd6Kk4mOVFYd1paNUg8bylITiRCeGMleTtifGwlcFRDbTQ7Cno+OVpYWk4hcH10
RVc8azI5QSlXa2ZBbWdaQGo3fWFQaEFLVGRZYFZfckcmYnViemg4KUo5WFdyakJ4UWAtV3pUSwp6
WUc7cnM1fkIhcnZMazFIRkZ2N3xFd2UwQmMpSHVmTnpWZ0Y7Rm11TUolNV96PDlSZm8wZ3lNKXRP
IzZNSEplZnUKemJoMUQ0bnhBSmFSTHk7UCNANnJ+P2F4IWZjUWV5QWJ0SClgQj4zUjFaXnYzWj50
MHUkNTxTakRxKD00U0tZWkx6CnorbXdGby1aQ0hlNmQkaWdLSytyMm1vfEYwazk7PVpsMmk3Zk59
NzdQK00zcmtTN3pQWXhAd25vOUIoNTRJJE91MQp6cX1sd1A/Jk0yJnJobW5qIVA2Sj0zdUAldXIh
PytjJTE7Z0s2ZHpSa1dWalBiUjNYRjg3Tj02SSUwem4kJG42RlQKemlSPnpnOS1wbUEoZGE7cntl
RD4tPUJ+JkpQdytBd0M+aTliUXpYbEF2fGBBeXRaKVQmU3FgLUVuYHdRNXNOQ1J9Cno9ZWNrPCh8
PSNBWU5VI2Y4KUBSKldDd35OUn5mfVYyXzI4IzdjU050X1J9YHVtI3RuZSs8SzYpNGt8ZSRuSWt6
MAp6UFQpIX58NW88dCNoNyNhS2p7dT1RY0dJeSl4IU4yZDdHdVN7cWt3YmY7WiFPbTlnXnZ5QnE0
Q3c2byokIVcpRHoKeiFYJktUNXI/OFQob3oySiRCK2ojNFAxK0NWMSlLemxGfiYxTVp9PX1TbCNF
akNlYnJhX0h9djBEMCpkdStvdT5sCnozT14mJl98ODFCJUF+SThtLSEhNiVnUnVLX3srNXgyZVFU
XzRGS2ZuKVdrMVgkKzJmRFp9O1Z6JV51VU8lSk98Mwp6MVd+P3lyNkJ3UHpeaUohTVJJRFFTdz1n
eG5kYUZ1a2NuQFNLbGdoLWlaVz49dWA/T2taZzdjZz1fI3xkPiNYdkQKejhMZUlRNFdONGFpZTF3
VW5mN1gqU0RCSTxBOEo7LXgtay1DS0kpdzBBSmVPdXleLUZfPV90dWsyNSpqRXQ2Y3pLCnpOKXBB
P3FAXnw+dTZVUlkpYHl9KzBRKVVpRERCbGRQcEg3QWtKV2ZxN189fFZHN0Etc151NVVzRXhpRlpz
V2FfQQp6KVlFXm9BbFlmd2pJYnQ4OCEtckJSNE5DQ1l6QXIxe1oxe2BEaXQ5TVpYKk1+MDJjJE4o
JXVKYSE+UXxfKFpEOy0KekcyMF5mNH1Na0phcmxifTkqfSM3cCorUkpFY3YjWUZQck5MZnhZWHZn
SXw1dzJeT3dkYXQ3O0pQcTAoRCs2THx3CnoyKV5KJkdCfHBrNyMlRk5sKW1vWlRVaTtlYDMxfD5A
T3FzbVRlPXZ7KVQkeVIrTzk1YHNjZXR6PFRFNlh3b0EhQwp6R1pqbmY1QF9WUGR6VkJ2elMhTH08
YSVnc2hecDRNX048UFJXUlFJPUArOUhZZmVrPHFAU355SHMmZ3RzZjk9cUoKejg9NCpzSngpSnpA
KkJ5bUNCVkB3ZnRDMC1oTUl4e3FaZW8rZmMwYShxXnNXIVcyP158QX5DWShKMzhtZW82LTZjCnoz
by1oamhyKXhCbyMzN1c7cDh3SHYrbn1MJkpvITJ1dV9NLTxGa1ZYPGl5WmpwP3lZNjFTeDRTWFFQ
P3UtU0hwZgp6JkYxciNFKW00SUR4X3dZV0ElfWIjdlN4bWckWCFNJWF2fTZsMXNjRWJvQHJRZTZ6
PE4lU3syTTd3IXdQLXhYQDYKem9DcEx+c0BfWGR0ODh4alhfWkFvO2VEc2xnJEdVfXNnbnx7VjhG
JkZRXlRhTWxMMS1fe2xgJjhqWlVBPVBBQDBNCno9JV9re1Irb0F7QDc/VGc1TWRQaGs+fDN6MDI/
U09uQVB1KnJUKktnaCFIQEx4U0VMOzZnSlY7VUZFWilzPH5pdwp6TjVOK05OKFMmRHZtUiN4UWMq
ck9rNUZecVExPUA4IzRKbjhGLS1QZkxDJT5QWUYhSmBzVExMfkRWRiVGaWNfXmQKenpoKXY/JHJg
WngwKlVvWnVtWnlzZWIlT3l4PVEoTXdLeF83bXhyOW4heEI7VWByJHleOzhoRSNwRzN2TSh2KTMt
CnpNQXVQKEpmIVklM0tGWSgwUXI4ckRPRXBqVTdKJFRCaEBtTTN4Q3NaWUZWUEV0UTM2SVplRFcz
VHZmV0pSWCtvXgp6RW5YWXt5NFlkOTs7KWorUTFIMVA9U2pXYVE3I1hAKTQ5dDY/aFhaWnk2MWAx
eyVwP3RwSXpwdGExZUVvc1dneU8Kei1pNTBed088NzQraWsxPzV7SDY1U1l2JERAYEFSZD9gSTxP
RjUwPmRIKT9OKCRTeGQ2eEg9N2YoXkA/UEVRKiZoCnpOTz1+PmpyYzgrMEQwb2ZEUHd4Ykg+fUZ2
Yksma1lydClHTXlIP3BVT0ByeHg+XnVVcih8Q1otc0BLNGlRKFNwLQp6OzcmRF5NLUN8WXFxNVc8
M2lNcmpWcXJWR29uYW4kTmlnNEYrRDIwP0N3XihtMWlVXz98S3BSSyRMXlp1XmlTRVcKenJLZWl2
aW1TcGo/Smd5K2RLeyFteWZRTDUrdlVEbTlNeShkZzA2MD9HTHd8WnpYfiNvLUBgZ1JpXldQYStS
NFlNCno0JG9wTXQxOUAkJFRGLXArWGtTPT5XaU9od2woSTFITGxuU3JDemFVYF9IczJefjwoZyRe
YygmU0pgbCpUczI+Ngp6IyVufmombzdPUnd0LUB5dkF7QFJxeChDTis4YTl5KEBWNCpaYTxvbmA2
JXFsRDE5flNxRXxjKWF6KjtwbzdZcXAKej1sczRtPEdlM1ViS2Qob0pnaU0oRGx4KExYQWx3KVol
MnxQTTlPdSRhfCFPUkVaP316IyY0cVJfdUM4Nz1eWClvCnppJDFTUWxjWXw1aFIrS0gwdT59Nz9Q
Rj1wTyMkIW45eyk1bTdlZmBIOThxOEZYS2tPYEJqQD9zPkRMRmVySkgqTgp6dFFDVUZtQ2g8X2t4
P3NNNEpHbEo7bWRSVGpwNCFKZyooTTc0bGxlZVZ8QmZfR0llbHU3dVZ6c3RiSng+ckw8VkMKemxA
OHApdnshWSQrSSoyPzhEWDsjWlUmaFlBRjYjcXVyVHY5bW4rS1hnZiU/LSp1R2orKUdEfClrZSgo
R1QpV2tfCno8IWglMFQwMy0qK0klLU01UFo8cmh4KEomYkQ5XlBKLT01I002TkdOTnFWJThyT1Fn
YWRNRWxEb0BoT0M5NXxBWgp6bmxkbkZFM2JZfTskWG1fJjlpM1g7MSQzJmBLY2NFRD02R3g3JT04
PzJudntNI3FNQHVAQj9tTDY5aDQwUTdoYEQKenBlJnolX3dTeFpKYDF1XmpwJHM5aj8rNm88PXZj
TDhhWGg7R1FDU0gyJSRPO3RzS2xmc3YwaFN7TiZXcVkjQ1M3CnpocUFAIWVheWt4YklndnhoMzkl
UkhvVWt3eTtjbj85KVh8QzN8YUlaLWomKiVBMys4U3ZEeGAtMXx+UyFpVSk/YAp6ISZpTVg0WEA0
TCZ+ejBWTkorTX11XldOJTNDVE5udEFLQjJZQ3g2MEA9NUk7MjFAfWBkJCszX2w3RXlVcFF8R0QK
emhTeylfRSg3NCVLRGJFV1Z6NkQ7NGlpTEcqOHtIJDIoaCtebnolOH1hVzZrNGQqcS1kSl5RPlh4
Y3h3XiRnWHFWCnpEKWZLbCQ5Um95S0doQX1peSNpWDVBV2NLY18xWjhKPUItYnpyQCM5RytRK357
PSYkSGtILUhje096O0czNEQyYAp6b3FeLUxiYGtNQWxUPS02QFNRd21fUFBCZXB4LXdZJVlaMH1n
QGMkcE51YCR8NzdmZmtMMz8pKk5weV43Tl9INT8KenVyWmlTeTItaXt0MVUxKEAyOCRuMjl4WEFm
Zj9oQGkhZjBSYysjTjtecmo+anxCVm80P0M9UHorO1l5LXo2IUdpCnpsYjV8RkcxMFZvMS1jXmgo
a3VsZWRZMiVYTWlgT3YjUD8qb2M5RzVWPm5BMC1hZF96cklJPFp9WUp3MUZ6empIMgp6NTckMUxs
I2g0LUM3YyVxbyZnaFotTyN1KkE8ZXhgYE4lKFJZSSl2aFBYXyppJDt5cE10dChwdkxSbyQ0bXpm
OWIKenw4UFQ4Vi0jczBFSjdfVjFQZSVxKTNDPG0rQWNqcXdoOTF9eCt1Xm91ck9pcmZIMChSLX09
TEBoPFpgOW54ejk1Cno+ekRBfFNORUopMz9IT1koTHtkfGtOZ3pQamgkOzteWVM1OGc4KkYpM3FA
aHVIYT1Vb3EqWTl7a0sheXV1LXw3SQp6IXxTeHYmS3pSPW5JQ01NaVAwUjZhOXBvRXNaNjRKe31H
SCtqJWVRdiNgMnVaZG59SCtYOCRnRSp8c0JZc1c4Rm0KejtiVkIwUD5QQTg1Vlh+dkdFKm96JmZf
TEJgS1doLXcldCl+aWNOLUxkKTJ3dlJ1UDxUdy0qNGJoWHZ5JjxQYT1WCnozKTdpUjRrS1o9PnA4
eGhzbUUrJVh3ZWolbFhLQ2VhalRLR2Bka0h4YlVaPzlhbUgzPUgoRUc2MUx+QTRgYl9UZAp6biQ3
YnN4S1hRPDl6K0Y5KWt5KD0/UzB9UXI3UiMhSUJjcHhEdislI0tTMEF2b0lqe1J1aDltbUV4VzFo
MTIwWTcKeldzRUZRWDJTK25gVVFCNXtWSFpkb08pK1olez9qV0cwQWp5UXliSmZ7KUY4TypuMSZT
bGZvSjlgfFRfc0RudEdeCnpPWElgODA1YXZxRHVTKjBUOCYjUUUwd1ZMSGEoKUxrTFhVUnVLVmpR
ay1XJGhIZGVpSXhQRklEUkFNU1MmIXRGRgp6K0lOY0ZZZWIrcnBzakh0Y1oxPjloTyRwaVVhN1F1
aDgrS0cxVVV8bzsjUlVQXk1TWVZYNSR9Pm9PNVlvVFNwZVcKem5XdXE8X0Y8b1hZVTNuQk15RVVX
OUNWUW10Un5we3dJcntxN3lsVnVOY2dsUGx4S1h8JkBWdl4rdDJDflU+UGdnCnpubmBPbGZDLVBU
NF92dEQkbTtTaUBvNUNKe0lCPig7Yj9FZXU0em5QemJpdnA3Nkh6X2theClHdztQRVM0TVdqawp6
YVRZZkclPkxfSCVia2taJUVrPiFPcG0+JkJyMlRkZHo9Z31nTzxtPkhvUGlWOzJ3eik/YnZfNiZ0
UWpfP1pDUTcKenFOOVNKcmcqKSY4NnlGTy1tLWlReWY8aH13O0VMQCtPaEd4MT9FUHcmMTsyQm80
a2o8I2cqflZlb0NTY3RAJHJGCnpsWCRFNkhIS0x0clIye3xoKUNZQHE+NHs3RkNnQlNkX084azFf
UEB9LU0pajJNcGRjNDtyU3JNcj1Ycl9KY28lSgp6SjklVWdBXmNMcUpeSi1zKmZZY1AzQV9oNXVe
RiN7P2g8KiNvPlcpJEZfZTRNPXBPfXJEI0d1TUgmTkhaJTNTIWcKekM4bSk1PXEpSWdAKldFdjt2
P0ZFazB3Xk1VNVpXYmAlM2cwRi1+anpFND08a3dZTlNse2Y2JlVvRXdGU15CNkUyCnohMlkxcGRI
VkMoKWpSKURgMk4oTCs7QGM3c2I/dlAkbVBjPz97MENBaWUwdE9lc3xZX3JPTU1neVpuUX1fWmpK
Ygp6cyYlSishV3sqSEpne001cTdheldiI1pjRTFDMG59UUVGd2g2am1kaHJyTyFiRW8mZ3tUZVZO
eUF4M0RaSGdfRygKej9ieG1IS2c7PkkoOUVAQntzZipednlGZ0lNTGdCcypYTzQ3T3BnZFZFTks1
PnJKK3RQcDU7JW01JW9fMEpsKUpjCnpybFJPRyN2bVRII2tBJmFxSVJ4RWk8dkdzRn5lb1daQ3VF
RioyMnR1NEVkTlZVRDwwbF5QRztMX3ZgbUpwVGpubwp6KyM1Wjt4VGNtRShga20zLSokYmRqaiFp
cCtpTyk0az93SiRkTWBpaHE5aXpIXlgmMUUzNT1GZ1UxMGpyT3M5M3IKemREI1NSTDRxITIyV0V6
WVNzRVl+RkhzPChFMXNzRl89THBIQE5aNCp4NThFR1hJXyNwNiY/WlZgWG0rMklVPzAmCnpZQT40
VHRUNE5GcjV4O0FGYlVfOSMpMGpzQWspMXoyRFljYTtpWFJaazN8YEBVenVLZ19KQHxLdF5AdmJV
cCkyXgp6XzNhTlBEPmRtcD4jYnFndz5WQllQZDRTbVokbHVPeHtuJF9OYmI0ZykwTz50aUheZ2Zx
SjtkY3BxOXxYUXhXV2gKeiZVLTFIdzw8VE9QfCkkYiF+IVdrWnBWcWxLWUN5NEomUXk0WUNoeV5Z
OVh3NUZTZEhkPFAwQTJrKzMlIUp9WFhRCnpSQzdtRDE+NX19RHkrRC1UaklgfT5Td0AkbmwyK3d0
Vz1VLUVEalZfbGwleT5jY0J0WHpqJmM+MjFGKll0KlJtZAp6VVdiNCFXK2Zid0ptJlg0JTxwNEFL
LSskPHpWfX01QUVGU1EwUWEtbGUrODtpUzVmVktkKEtYS3tvT3pOZSlETj0KeiVLVFE4YDA2dXRV
SXo/fDVUamA3KnAyeCFkeXsxO3Z5Z0cwbE9MSXhzSyk2OW9gU1lseGBNKlBMUUhpI0B8JEBpCnpI
YDdKQyRyQUZfM3RCWCk+NiRtPHp8RlpgaDFDISs0MHRSY3s9NmxiUWVfVm0lYDlFP2pTayZzLSUr
TTFOZ01CbAp6cDEtJTE5YkRpXz9ycVQ7STNpIW1gZmIlNWh8T1RnRkwzdChfUXRvV0pYfEVCendI
bEJtT3UofWpOKVZMc2J7VEAKej9TdFhaRkh5aCM9Wk5jV2RYNEloP3srQT08WSokMmBCWjAlK0VT
OUchWX13KURLdWlRbnFZMTc/TG8xP3BvPjZJCnozVSlrPCpDfXhhdDF7JCRnP2plaCpJYzZEOW53
QEtZWHgrQXs5fCZkRkwqdnI9WU0yMW9XS0ErJnl3Nkk5RFEpeQp6YEkjfihnYDlpQUVic0ltVk9K
bl5pT3ItPURndWV+MUlyWT8qU0pRPEtqeGdzVWQkJFBseG1RV0kkJEtfaDMwMnsKelh+VDFiaE5+
aEx0IXZpOSQjK2prT2BSQF91JFE2bXJISkcySmxDbCZLZk9mOXpuSit8YEpxNWZpXlQyOF9VWWBr
CnokSHojKUpfQUp5JnhgTXRaPWlAK3B1fnxpR180YkgmSyEmakR4XmspMjdTKSt7c257fUllRk0z
LTVJbl43MlZ4YAp6PCRmKjxSe2UtPm8lezE5IU1mdXZVMDRJc0oyYGxMeig1WEtUemc2OERHb3dQ
LTdmJjAjI1pePi1PTE9KQGoxY1cKellOblMwZHdqRkZVK3Y3UUtEdng1TmFVRXEpT193bFE4RD56
Pm1OWDtzUD5XI2VvR1RWK2w0VzNnYkJlVF8qdk0jCno3cDBQa0F7PDBkNEBofHxHVmNQQ1pjfiFA
KCp8diZ5azlXNDk9eFNFanVXYHIpe3sxcC01VWpHNiRXazFTJHBOcgp6TWxSO2NFaX1BUlorREVf
X2RkJDQ3SzklblYoKWkodDBoJEdjTl9eYDw0TCM/JDwzZ0J4XzxvRW0pVGhrcFpXR0UKemhQVDZm
QE0xbHFBQFNUa2IhOCV7U1Z2YT1yWVNDfmNwdVBPMFNsall6O2AmcW87dVZLT3tiN2ZaYEQjX3tk
UExCCnpQbEJ4ZT9aXypYWEZCcDE+JWpoNzR9MGAjWExKOThoKWJSZUo1fXJZQkgkbXJubCo1a1Bf
Vj07Tz51flc/bEY7Uwp6dVchQkcjYXJ0QXg+SHBaPDR6Xip2JjFCdSpmKnhrV3h9STZFOHxfUDZM
TlpsI3x+fDRgPnU1PElWfGZ2cnQ5OWgKekthb0xiN3U9YnJ0eEJmUHtFP2ViPEU9SX05NGp7KmJZ
PDJyV0ZrdkI8YUJEd1BiQmN2UEtAPXlDb3xjdUMmUHBHCnpnVF9ZV1Y3S2VMMXdRV2pIRHchbXlp
bCZWO3BmPmk3RGZvRShoV0NVU3VWVGN0ZiQwOF9uN001U0cjTXM5dDJVIwp6RHt5YWkrYFNDeWRy
TXp0UVpzSy1TMmJBT2BQb2YkS3smYWYzSXI1fHAhU05vRHAzMz4hVipGTjZ8c01neV9EfiEKemNz
TzsmJUFjXkF2T1pRVndSb0Q4cjtsVHhDMkt7OHVLNFd6ZUZeYE9JRXJecm91MDIrXyM1Oz92VHEz
WTxjYShWCnpeMFleT0dkRHA5WWk1KXt2LX0tLXk2TmZNYUdqNW1hTG9IM3pKODJzYFUzLUBRYCRR
blVtOHY2ejhAdS1KSDUqOAp6diljM29Ta2JHX3VDQCZyQDVNKjNGQTkpSjJhRGk/YHhEaiEocGE8
NihWcjR8NGtJZUZFcSV+Y1Fwfk1sVEojV00KemV6PVMySVh7OEEmK2leWjFNRG9ESFdsenMtViQl
VmBlJlk8U1I7c1F2UTRkeXhEOz51Nk1ZX3ZWTT9ncSM2NTlXCnpNTTYwOzh2XikxNnh6N0lQeFhF
eGh9dlYzZGA3WE9fPXFPUDlrKCNzWXVRa1VhSHlOdHw3cUtaWTUobVRlZl9RRQp6KDFiOHh1Mmsr
cUtRUTIqcV5IdmtzMDdJfE0zV2BLNkpvWVk5dFlXSCFzYGF8cjw/VkpSdzhLSSlIUztzb1ZhRXcK
ejRNc1M9WEtBOyFwJFk7V2c4YnVVQU81KV5La3t+aU9Da3lyVVFYRUUrdEh7fF9McE1OUnVocS1n
eDxINXBnMj1jCnpLO0xaVGFrUXBNdjM7eUQ1XjIqQXRkJjByJDRsWiExIVB7WXBxNVBMY0U/UV87
YV5uT2U2bWVAZVZHfXV1MUg+MAp6PEpTTFF2N1dYfFJBRzR1aipWRnFmQkEzIWt9Xj8mV2RIV2tU
aExIUDQ3Wi08SHY1VkdhRHRFa0RDPUUxN2g5ZEMKeklGTlglP1l7Y0pDVTY/P1NsJSF8QkdaYzto
ciVmTCk7TkY7SVcxKT5HTztfV3JHZzlBZFEtd0x0RWpIb1V6KFpfCnpDVSlGRlAmZ0FkQkpiVEJw
Y2BOTlJ1dmIpZ0p4R2BnUW9HaUNHKl5JZVRPQiVmbFR8I183b0p2JDs8UU5EeWAzMwp6d1djO2Qm
cWswbUYxVEd3QWU3QDRNVVBKa0A+cm5ZUjNIVDd4N2w7Rl9qVUVOPyhSczQtQklyS045e3NVeCZ5
SWsKeiQjTHdPWUs3dkl5KHJBdVpZYkxJNDBrQGIqYFhtfShJM0BBZXBMQmBsRkRRcE8peXw+fExk
elpfXyVBZyZxI2RzCnpqPFFPJiMxbCR+NHpNezhDYlNYJEw1KzRFV0JyQnBEeTVyfGh4ekptTD5C
Sng8e3c5eGt8UkBGPVZzakQ3QG9DRgp6ISU3K0B4VUdZSEJCZilmWjEre3Y9ODJaKHFgOGxXQHVp
YzMyYSopekBzZWcpT05pNDZsZC0mT3J7bEd2VE5IU3MKeiY/RFF5PGduV31oTkJFNyhIYF9RdVl7
bnxQPUUlMVI3eSRSUWBZMjAtTUA5dnJ1PHlgQC1yNXkjLWI3RmltJmc3CnoqTUpJcit+XiQzI35P
KHVqTjVnKEk3bSQ9MVc9Jm1CTCFFYW9lekF5JlIjJHs2WXd4bXE8azRTSXhnRTdXdHZhQAp6QVpg
e21VPXw8YWNeOTNyR3o8QCl5TysyIzgyaGJnRVpKYTtQZDBOUHpkKkA0cSYyJSpPSmV8cVZzXj13
c1JALW8KejZpVntBby14fVoxQ2N8NnlafntzYz5MYyVESG01SnlSWDl9KkxrSV9LPS19PTtWZE94
dG93ailoJGlxTT0mVEo1CnptVHwtPGV9TVZnJSR2VUZhOWE0dExkU29yS1coQSV7Iz1tOytpRFg1
P3ZjQnRLWXowWCEyWnFjJnxRbnk2MGxtTgp6aGZRRUNeOyZlbihBZWJnXlJPckpiQjlLJHtoOyla
QWBiLTB0NV5qYUU3WWZDZGhianReSTA9TzEqSn5+b0Y7Z14Keis9R1czQlZSTkl2QDlwYF8lbjVZ
ZVIrTnhGLVdoI3g/fTx9SSpwfTleV2FYdFlQNks2a0w7c2dPRmNLKEhgNUExCnpOaklFaXB9Xy1s
Vl47UmxFJGpTU1FkXystPWJWaEc2WTtyaUU0KHghUmw/QFFPYmgyalcxcmBpeE9ZZVl2M2pOPQp6
WG4kSlNOPFM7Zk96VV42cjwmTUVQSCh7ZWs7O2FTIUNNRHZoRE59ZWRpVEdiSSkwc3pSJnUrWkcz
USViVkdOIWcKemxHSF59cHRTdE0kbT54cjkjVD03NntWSkwmfFomTU9KS04pciRVQ0Q+dy1+ZyNy
TU5eP15kVEcjS0o5MGZSRmh1CnolJD5le15DbXEhIUM3VklMMzFDNk1pOUUrIzFEelQrI01WZ2Q3
Si0pN0BWTX0mWWVzMTIwPSMpOT1ZQ0gpSClHIwp6cXVLRHtiT3Q1MHgxNCVae2BPN0lUPlYxaj5h
O31KPElKNmpXU1dWK0kjIWB0c0BSLUJTMWE7dWdAJW1Ga0AyKCoKejs/SkNEYFN9ejk+TW8jaSpA
WDlZOEFJVUpBNlBnMHBUKktlXkdCb1NHdXRDYnVhPUhAbns8NnZtQ0B+cHcodUpVCnoqQDVIeHQw
UzJhdl9LWlZTSiU1S3RtKEpjWGFtJi0hXm1pMUwzX1NPWUtFMnk3U05FSCE8TD04XiVLd2xGO15u
aAp6WjglNCl4a0lxWGJJNEA+OHkoa3l4VmVOWFhsK3dtJGgrNShNS3FBandmYVhTOyNYNStman09
NUAodmdBZVUyYGYKejwxUTtWZUp6dl5hSXdfV3chc0VDSC0/WGdXT3M+cTtzTDB7VUdUKDhYaVQx
anVqWGNyTjxCMk1uTGVXdlE4RkVeCnpeVllqNFUqJFgxcnAoVypjZDdQMjhjejBDUzdIZTsmIU81
P0ZyYCgyKCZfbHZXM2VFRU9TTz0mZHcoZnJmLSoobAp6cTBTUi1xQHNOZnlCZ1ZDODA1Y2tFbzVH
OTFve0hCYnYxSUNANzZxKEIqJGZediRvP2NSQGQwKlZPdzR5KXhDRkoKell4PSomPTgwViloKUB0
WUA2V0RWdyhxKFBffHV7OSFLN1ZjezkqdCshQn5aY3gmSlpzYUBQeHF4fVRoKVBsQVN4Cnp2b0Ff
bkgwVGJPVSpqdUNTbiVtT3RwI1hNIUdEKHlrUE0lPzhaR3UoUSptQ1pne0hxckJwT3R6OHFCQyYl
QXwxcAp6JTd9X3QkQHorYTwjdmRRUVJga2ZXbkFWfT0jPSVhZHw+XmQ/OHg2WSlXViZ3ZFA9Xl8/
X0U9N19tOThDcHh4SiYKemU0VG9Vc3M5Sm4/YFEzYntZJlpmJDM3M2FjJjZiOGA5NjRNO3lefnBQ
TEM/X2xRcChWdmcyKntrY0NyOGtmeiQ7CnohSz1XfmZNKUlFVFltIT4kRjVkZlQzRDA7al4jaCg7
SVYpIz1rSVRPUmwtVyswMUFQLWllQmxgVElSdldJVUlWKgp6YyQ7eDEjNjZEN3FUamZaKW9iNV84
dDtkeSViXztEPl9SaURMZXFmZkhHJFNSKCR2Z1ZEQXprKkB6YmB2dWl2O2wKejtwUWdMQ2NfYDFq
Kk93dDM4PHRlMCYyZV5TPUdMYlVaZUhJXk9rKHx1cm14RHJNSSRGdzhWc3UzdF9RTjd2alh+CnpQ
K15ZLTdpc1lmWCNqfShTTEtsdWY0JGdiUjAxYm1RU0J+dThoQCZ9dW4tTGU8SWlmMWc/eHBJLXhy
fGVkdG9HUAp6PkRsKEhnLTh6T2hyc31yQUB6Qlg5NWxGQUQmSitwZnoxcHx5bTR8UVhPSnE2X0Um
YWJGdXo/aV9VfDt2SHBtPT0Kejd1ZFV0LSVOSUI5JCk+Sz4pRDdWRStWcUIhWnl+Vmc3PlhPIUNX
T2NAT0E1aiRzeFBIVy0kSzN2cHVRPlQxREA/CnopcGBHQyVzUTAoZ0Ulanh2QWUjYz5NeU5JRTkh
OzBTZmU0cip3RUd8bk8hTiF2fHdYUFR4YmdZLWx1JWFmKURjVwp6NFp2bVd0eXBFZzgwY2N2LTdD
eXh3VG44R1VZQzNCajtQYzE3Y1VfRiFqVVBpKn0rQHNRWSlzLSNPSlF+d1kxNk4KemhuYmozU0c7
N1IhYX4yWDwmYjsoSz58UGNmSHh4WChqXjdlZkJ5d1FqODlmO2xjcyUxR3NZVWlJK2lpbmsxUGQ9
CnpOb04ySGFwM25HYTd4d048ODtSY1hFUjV7KyRHZVJiVTFidjE9Tkh0ZWU7RVZuazBSditULTBr
bWVXKkk3KjBzTAp6YnYycXxNXzJSb2JSUVBBdl4qOVRJP0BkNCVJKVV3cy09THJtTD1SXmI2SFoo
MXFFKTFLRWNPM2pzK3lDd0o7XmsKekBOT2A7OyVBWSU2LUQ5SWhGPVk/Wj9ZJXlHcjxFYERVZXFE
ZEVBPzt0RmRadD5BSUVMT0VyZD0xMTlwRXNiPlJ6CnplQSswcSQtbUBSN15pYl90RG0wQVpzYTBU
P2tubTQoe0o4PUQhJnFPc0xyO1Q7WGZQem1aQzJsSEBMZiVAdTx3Uwp6UnBeaTlwTXNpfWRZaH48
NFF+YyY0WHBAU1pqQ19YZ1NSN218QztPXypmM0JoailrXmYzSVQ0aUhtJnU9QGUpcj4KenxKNT9l
O283RDspZyE0Skx7KSQ1MFhNWn1EQDVjPWdZbGlLaHlNZTY/dExaZChgP28+NTRUKlFBbW9MazBw
ZWhZCnpnWV5lYWhudzBYR1Z6e1BaZ3dPOGMtVkZTezljdXVfZCFnUmh7WENaMmM2Z3ZwVnArRyF7
WkhlPlZKO3h8NyEyTAp6em5hPipFaFVubTUmfkZna3gmRWBMMyVHaT5HZXZIcTZrdEFSVXk+U0w1
ajR7M0B4RGE0dVhKR01XaC0pZFhwZVUKellBNj5GUjBRQTJ7b2NLUGNmN3lnamxwbHAmTj1JfXdk
YX5edTY8VWhwcG8+TWF3OzJUKFVYVU5rbVU4JE1ONHs/CnpmPklCN2d7VHI0RWJlbzhaYzVwI3ZQ
aFElLXJzeGlLQXIqXiRwTjI3ME9TVHh2Rnd4dHlAfmB8P0FHdGtJSWVPPwp6PVVDdkRMZnp+ITY5
Z1ZqXmYqRzRIdXxGblhzcD84YFlgZ3YxWk1ucG9qNG4ycEFOezlKQ2ZxTiNWY0Q7I1ZpVWAKelU+
KilSZX4mNX1eMmA2UUQ8Q1JxRFRMV1E7OSllYDI/I2g+K3EkO296c1gwJUI7IzxOcnVWTiVLLUho
VTYqTXVXCnpARE9aTkliZmJ7P3h7T2l1cVhGS0FXRyskPmVybVBheysxMjx+KCh2QlhDJSp7WTw9
ZXUrPll6V3dhbG5qXnBOfgp6aE0qSVhQLXZ1Jj5uWGkzKiZiUElwaXNURzsySSYoV2wldVpkcXFv
bW5ieVhGYGtrTiZ6QSkxP15zJDFPUlZEQ1MKejV9KHlwOHA9YX5jVXttI3lLUE8qaEohOStZLXt9
RDs4Z0EoT1d3VWAoaFMpNlFxQ2pmNGg2JGAqb3I8PytoNXcjCno+WFY3KiE/IWElWG57P1ZsTiFh
fFdMMTI2ZlJDYmZNMmFOejQxRClrLSt4Km8qdjc3eDhRSFFOO3A4Zy1VRWgxQAp6YHxQUi0laXRv
bilyS0heQlU8Ti1OTE56OWU5JlUzcWJnanh0djUwcDB5JWQmXyVqc1poLUBVSyE9KnAqVkFBUDMK
ejNRd2dpYUQmPE04IWM+Y1VuWW1vdU5VT0RMSXt+WU1DJHFJcVZAemUpKGppM25GbSorYGEocyFC
M01VPnJCdyZlCnpUWVpUXz4jUShVV0hwVEJ7UiViZlJTITJod1F1MCM/emR2ZXcxTWVMcGklRkVz
OGdzJUIwcTtRMHRoV15QKnJ7MQp6TSglfnRSVSQjTWReKSMzMCNgMEE+RDUqPVV2M3pUbFN9aCpk
ej5we3VUWmpuNClVRl4+T3VQQF98ZGpaKDkpO28Kek4kI0MmN0ZHZU9vQFJyVyU2V1lsNFNmfTxW
TlI7YEAkXzA8Qko/Ri1nTDl3QWA4PTQ+I3xOdyMwc3xwbipNaXlFCnpWRkpjWntobWRhTnQ8Yl8m
N2I+WipCNWQqYlVwZVM4ciZsfkF+eHs1ZW9HT15JK1ljPmUhc2hrMkMzUFpuN1J1IQp6XiVKVip5
OXYjX1pKOFAzbXtpWjw2KUUoU0NwXjJsZVdBfFkyNUYwUEYkJV8wNlA2ZFVGJms1djg4WmRZJE9I
NXgKejUjPVgzNmppe3xmeng8ayZXREwzJS1zYW1pQmVvJFF5Q3NkNXltYWojYFQ5KVhXQDQ/Vm41
JSM1Mj5Renh4d3N5CnpOOGgrfHhTVFp8Y3E+aEduT0xPQWF8PkwzKnxxLTxZTSQ7b25tbHZOSkNa
T1hnLXNrK2Z4cUdpRntpa2h1MzVTcwp6YkhGZmwhMHRuSFVoP25XN2k1SD9UWXt6PmxzNVJadXBE
amN6SHQpfmV0YXVwP3tWdStuaV5HRnM7cGA5Jkx0UkYKejwtVmUlKC1kRjBiRUQ7YV8qcWhoOzhT
LXo0PnJvQFViKX5AdGpIPDtJQnBBWU0mMFUpVEtLNiFVWUJtekM4MDBUCnp3UTcxYU9QNSQkZnBR
c05HVEdnVWMpJlMqVWxOR2h2aGdIaUZ3WVR3X0k8NHdvJkNWS1g4cm1VVGRQZVErYSpFYAp6V2Fk
UmVfSkFGSnE7QmA/KGJhV0RfNl4/Nlp9VzVkWkwmKTJKVSlrS3Q3KmNQPFh2QTJzMSozbVBUM0l5
dldgKkIKelFGcV9VRCgjJCt1TW0qbV4lZXZGLThBSDdLPnchfkpIQm42UFYmIyFlfjhqdyRkS1h8
NFh8Pil6cEcrZUFnQn0pCnooP1l9M1Z4NVllempCZGt4fUYxVEh5bXpiNUBiQ2VMLS1+PGZmMmtI
K0ZlYjwxSWhvez5vbmBEWmRVRlVuNzRIbgp6Rm1WZjVockMlPXc/fUI9O3pRcjBwbntYSl5XX3F1
e3c0bihUfCRMPXdhJG1GLTxsTU12PzdfKXsjXktCfDgmVUAKek9iZmI4OW4jX2piRGdyZVRlbGhn
PTgoSFFDYChNbHkzMkFhNFMydU91VEM2Y21rI1Uwc0kzPDApdnRhSWp2MjFaCnpKZn5gPiU/N1Ar
PVhUOG9yWDhFK0lpPV5ONVRIKGc0ekZAS3FhMVBGOyRxSTZOJVRubHI5TDY0P0N5P2tGP01NfAp6
ZV90Ryp1RzxLVCt7b21pdT1+PXFoPDVDKmhOPllBbTBDdTZlKFB+aiNqa0R6T3hEPjNEaHxpQnJr
cDx4ZEIzRUwKejBPcGBgNiFZaFArVHpNYnApTXM9XismMF8teFEtSE1ielROdzZZYXxIWSo9OXhz
TXVfJWk9JmxlbmNifUQ+UVpOCnozOVAjUDcjODJXY04tWjg+KUhwRjI3V1E1eShJOH54fntwPXN1
UmhTST8tWmgrTX5eUi12aT5BclJxNiNqd0dMTAp6akY4MiFXQnFvQmJzTnUxJld6RFlSMVgoQyoh
c1Q2az9iRl50SVAmTVY5eDtFTTxRei1WZSNFPTU3em1jdGJZWl4KekcrQThjNlJSR2MySj5id1Zm
WXw2KTJCLUQ9MmJGRWxII2xUO35wJnI7V0wkcWBMVSN0c31tUnpUKSpFeWY3VjM/CnomdX58X3Nx
JTZGMWk1NyE7OSNEIzJnfEtzX2hUNnh4RVA9d3tWKldLK3JFVkRmMyUtaDkkMkZrcjxTMmxKZXAm
MAp6XkIxb0VpaXp1ZnRLYChQeyUpd2E5Wj4zMUxxQE1RWFQ1ajU8Yj5fKUVHUHBXakl3SW89NFM+
TCFfWEY0WkpFT34KelYzfWlvbm1ycV9VJXpmUlc1MCFTRGprQCROZmA8TD90MFc0UDFIT2IqPTNZ
SFU9PWoteHo9Q0lBSSsoWCs7SjIzCnpUKz55WXRQOXJaQDZLY0spO0hRZ3dSJk5aNjM2OUBiZ3A4
YmZ3eWNneXkpVlllITxOZVpaRnVEJDZeeE52aXkjcQp6Q218YkhWRU8mZTUwX21JanxxM1Q/MXJw
fE16WEAlQGxrcjQlUGY+VmMkVFhPbkJaVH4jU0IkMXRraVlYWThueWUKej16cW44UWEkMzthVThi
MSUwRSMzUjVGKV8+bDNLQF9Wd0Y8UFNxNlVMMyhZM2V7SnBvQFIxPENWbzZsTmZJZXA2CnpKMSNM
VnZocVNPPkV+blEmVnk/TDxyfiNDTUAxI1E8PHczPytPOTZSb29lPkxFOG5sNj5xaXBVZXpgO2lY
KH5OYAp6T1RJaW4qdVpJLSkqb1VPT2tLfiY5cmdCJTxPIXFIOztmP2VCUSkkNFlJTkV9cmt7eVc0
WTlvUW9SVkNGWVRSd3cKeiUpKGl9PV9QTGo/STZrcW89NSt9bWFWJTJQfEB+MSk/OTZHTXpfKTBD
SnF7QFZMZGR8eTFhMFc4NGw9XlR2My1HCno9PTA8bDFRY2k3PXNkUyVsWHYme2BLKiZYN2I2eyhg
THBxZXp3JlNLTkN2RGZNY2llN2YxSiFHWCNte1ojOERBKwp6OVlwdmd7QzkjYzlSWSlNJWVYd0FI
amtjdUMyS3x4ekpIaS13azsxbjdUMW1ePGxtWSNyNUBzUjt0NF5me3cxR34Kelc5fj5UJUU+OT1S
eWtkUiFyOGNHKVIyVVBuMTwyJEVsfHwwKXozPEc7R08qWkEwdyZhMnpaXyZwV3tPIyU9b0Y1Cnph
OWd6eTRhfT1yalVVTW13JX5LaXg9QlpAUmdqcyFRdG1EUXpoKHBPQzMldW9uPX4rR0ZQYGtUYUJt
dzdwLUhUSAp6TVJPbiE7LWZBM3V4SncmYUd0QCVgQj1RJlVpO1lyRkY5dVQwXmohMXIjUGxwMjZq
elF5Sj54WmdSMSRBWi14ZmYKejZaP3tyMjhBRSZYezY7eWI2fUJKWEt6M2pjdD0zZ3gmTEJfVUFA
O2V6TEZ7d3ZvQjlRJiN2cFdEWUotVyROP3JaCnpmSnxPVWZDRFNOa0Z2cUFkSShwe08rO0N1Vl9Z
aiYhKU92JnNVfEFgclhiX1doYXBOYVQ1YmRmRHlWalM4PklnRQp6QihoSHZwcEs+dDklaHphY1E+
TzRsMD9PMkklXmsjYy0odUFXVEVQdDFhLT4pPGhqfW4tcFhUaHJTOTl2VHJzdH4KekdHdkZDU2Ru
Xk5zcExSWXJCZDlVJERNNmpYanpQOHlQPilRRzJgIVIzcztwVWVxI0pLITt2TjtCQ2ApUyFmYmBN
CnoqanRAal5nfj87alIhJj5xJSVlJjAoaXxuQHMyUk5FS15MfShJSVFUO3MoWkUkbiVFYGBrRmY8
UClaMWYwR0d0bwp6NENvaHdYSyFObSgrMTt6bWhGZiZJe1l4VT55OD4kZzRpQCYqY2loZyhGZVJZ
Qk9vTkF5R2Z6Tm1vOCMjI3FrMmEKemozSmI5NT4jeioyQl9Mfi10bnlXNEFeViRuTyN7TWs4OXU5
VVlXMzhXXmFyOHFIenQtYCExNkNtMWtTO2xUeCloCnpvcUY3NHJEVGVlPjx1NXI/fCNDS1EpVjxQ
XlRnfSU7e05FcHkmfFhhY2lOYEhtMFVjRnheSjVndHUybFFiQGMjRwp6bHhSJXZxV19GWEsoU0Np
a3lFQUFBRXxmJmpnZVRWbiRvWFZJS0ducGRARE1+cFdkNXQ9O0BiYnZwbDBkNGQ5P1IKeiRTeHRL
U2QqPkRYLXs+eUZZeiNhQUYhb3FRd0RFdFFNMjhLNWk+SV42UV4lV2pLP35BeUR6TGh0NUFHb1hv
aldACnpZKDNrbWxFUWAkclA9ZWFaK3tGMFJsQnM4O19kNl5gWTRPRV9XRStXX0EtMS01LU4zRjRQ
Kk0xTWtrdWl4V2AzJgp6WkBlSUY3Y0IpYXA7VTcwbVo7ajBWfU5ScFR7YTIpOE0pdUZeUHp1KntT
JEZJPHhFNWF0bEx3YkBSQE9YZCtEWWEKej1WNTF0bm9QPytfbHJJUzVnOVBfRWl0SjliZD0+Xm0z
LUFpJCZ+aiklYio9UV9OUytKWT03X3VBUj81NzFgY2R9CnpnPUYxRzFVJkglYSNJPEFRLSs5cT9H
fWYtcnNRdEtIZVRzPm1wU2dwKz5DVXpMUUI5TXBZYDRrelZTZCM1QmpQSgp6WWJ6aDtXOTQrcjtL
dSF0KiRBVXBHSkx6NVBXVmZ+Knc3QCpgQkAyTUtaeyNOT0t1JmF1RlFBWTNoMThUP0JzQ1gKejhr
aDVQaGI1Knp5ekA/UiQkTyZnZCt+d3MrKmBIP3BuPStGRXlTYUJKTWxfcT9ZNW8jRyt3dF4mWUZG
MGYxJj1hCnppQylVOytFdGA0clRxSHhiTE5AJDQ/WUhIUmN7NGB3MkcpQ28pUmkmSjV+bHhKfU9y
O01AMTM3d0M5ZX02MFNXPwp6VFdKUFFuUDwzWjkmODF+aDsqPDNFcVl7NW9wQz08T1hsNzAxQ29G
MTQ+YTklVzYtSWx3TSZDekgqX2o4ZHZ5YCoKek9tOWZFM0ZJenVUITRifFFXZzM3KSkheE1YbGxu
WUR5dUdJPjlNdi1gM1NUcWM+XlAmPSp3T3pHTSNaeTIpYGBjCno3JEhpPktkeG9mUWBwNG9xSC1D
aUNfZUAlUkxtQ2NYRldKNTliOW44Rks5SUdeaUdPT0BiTzxpZSlYTVlyayY+SAp6PTJkfnI+d0tj
LU55Xm1fWlVpbEphNkVBJlZNVGttdk5MKEtKRSlxdDdRe3t7OHQ4VCFmVnJhUzlsSSFkQU9uKEEK
ejtRdTU9NmxBOSNLNG5MenU4U2tCNEJEWUlifm92ViNve1dNNSE4ZWBqbENuVEA7QSRTbTckfkU+
d1JHVE9qeiNXCnoke2c/TkcpX1IleTswfklzcTUyOV49dWVgdTRsJSVicChiIW0xdVBpJVE8dCVk
al5kWjtuUXpsZXBCeEBaZkxCMgp6PXZ7bEBUJngheHlCVnN9bUVUd2BocUt+anRGZ0MkRXkqTGBY
PW0wLVV0IWNQSWxHRkNJVzQmdDdeMEo5RSp4bzwKekkyRUFnQHRgOXUlIWV6bnZrOUhGIWoxSGBz
S2ZqM29+PVZHLSkxV2lzTW5EJkRzb3l4UFYxbiZ3OTlCPT1xc19qCnpfMnswV3J2VzAqcj0mUmN5
VmNUPCZBMiNIVWZSVShDQmdlNW4zaz44YztqMClmXlMlQns+YnV1aGlrWWdZO2IySAp6VHZCcDwh
c35oNHtJZzY0IWItckpwSkF1WjQ7YD13QSt7YExnS3llR3VodUlgRSZJaCRRcTU8fjEqIW5UTXFW
UkMKekp7cD9TMEB8PFY3LXVUKEA5TTVUKjNhISUzJFpWVyQ/ZlNqc2gkZWthKnwpbmowO1NjYHwm
eUd5JD92U247YGNaCnokXiNJVTNMZTwmV2khVVgwIUE+O2NKMElRZ2pqQndoPGN1NElKOz91V1Q4
VGYrO3hHdkdfa0ghYGoyOSZxeH4xUQp6YmIxI0RpQnJhZndMR0BUOFhVXzRSSUxQfmNnPlFWeXt5
PWBWXjtUOExuR0ooVHNEPCtSbGc9M2AoS200ZW5peG0KejZXWGZPP2R9I0h0K3RMQnJ4b156Vkpf
TDw+PD9RZzFOfV4kamBCRXQ9WiprRzNLV3k7X2xGdVg1c3NiOWNpMzk8CnpeRVMwfSQkKDRxPmxB
bHkqNzBEKjwtJD8tRlFlR3VoMWROR3hVcCRJR05edClAMU9maUA5JD9XSng2V3ZxUD9xYwp6X0Aj
dU44WSliTjt8UjA1bSV0TnVJUkl7c2JCWm05Umt4VC1TcXgpJGs+ZUZfODdieGpAcVllcnVYZSVf
JHY3WkgKeiZBPDV+PGREczNlezwpb1lLKTxNbGI2K0V5VjY0YXI4ZkNCIWAhJiZuMktsU3ZNc3M/
JEtrNVE7PHxGMkxYP1YyCnpiJlR4VHc/YW1iMHlBRUVGKV9rdDlAdXQlVXJBWj9eUl9NSHNyViVn
amclZ0pXMm1Oc1VpLSphZXhMOUNxRVlHTgp6dXpMYG0zTjY4Nj49TyNtSjhvPCFiPFVIZ0whNClQ
UVA3TSpkZmZLKlBRWHk1ek57Z054JCg8QTROXlBMX3V+PzcKenR8Sj5TdCRBTUNvc3leJG16JFFy
eV5nKGJ7XjVjOVM/Yzh4UTRsP1IyPFAxUkpkWExjeik/eD51cWU5Y14wMDstCnp2OWV4PGxzaUhA
PkFAckR1djQ8eUVgeWNBQkVTbFNqWVRQaGw4fXJESUZ+cFcmdVF6aGd+SFAoYWs8LTFZeT5mRAp6
WGhqZkg0cW93K1cpX1hPcjRacUkrclRZOzFYbC09NHw1SH5ZaWc/aVY0PnRgdzE2M1VXZDYwTy16
Nyl0aTFaQUQKejJFbFUhWndDXnpPNjdEfHdRej03PHxOPSQ5Wjt4Kjllc0VeQUJZUk0kS3RRPEhk
KVIrMHRaaSkjWjMoXnsxNk4/Cno7cSZAZDYpO3E8Y2A8MnlCbXYhNClwdT92VSRgK21aaVQ7VHdo
SGYoSDJ4VHNhPU1LdWBkQ3xHdExzelpEQnFTLQp6MTZFdCQ9LX1ESTQ2KVRpbSZ9Z2tQXzVFQHZ2
SEtvOyZLZl8jeXM3QCF6UmE7VlJHNnxtWG8ofkE+R353Z3dZRkIKejhPcj9uQVdKcGZmU2p4JCRm
X3x1Tig/ezhedjY9ano+Zk9lLTJEenh8MlZkflJvfWNzJihWS0V4KkVtKmpNSDNrCnpscUVzb007
QHN0Z3xLTUtIbTVVKVZrd1lie3FVKlYoTFZobUxqZmdqWHszIWk+TE5YS0BHSHh4akx9Q05lcWl7
VQp6X0cqY1RtfkhvVllqdDZOb21iTkdUTCtTUy14dX0zLWlRVyNramx6eFRZaT5EPHFAKzwkJG13
QG55Pk0rTSNndVAKelVqYlVSQGJVMmF3QUZydnFZfStwb04zcnxrY2NSSzM4Z2ZrV0k1NjxlaHh9
cTV9TWdmdU1uXmxjMkYjbCNqUmtUCnoqZ28+JW43S0tLKms4N0A1c2VfQU8wXz1oYW8kVElqcEQx
Y3Z1ZlhvbEBadW1ncFVjTXpkb3cwXmI3fCN2d21CRwp6TiU8T1huRVRNTjQmNXplZDFtX3MqenVJ
Jih2azB+RTZPQ0x4blZpQW1Cb0J4aFF5LT1RR09mV1AjKG05TUl3dz0KenVzKnZEM2RocExCZEBq
O3hIJXBfTnQxMCl5WCpCNW9uZ2AyVDFVZV9LcDheS3NGd1p9QS1ZP3AhOVdmd29hQ1NxCnpGcHdx
LWVVViVUNXNAWW05WCNHVEV3P3ZrYklYZVVUMTZoTzl6Sl9gTiM/RW8+PWRHRmBmZVdYJWwwfFNC
QnAhRgp6ZmxJKkpgXyUkIXtBYTYrX3g1OSolWkpKZ3BrVnNaZWlNfT9sPHtXQjtZTjNJdGswfXc/
WkZFISV6PWRadC1Ifk4KeiNaMD4weTE/MXUoOzJYJmIxSk5UQm1DdyNOdS0qQl9Wb0khajRaM0RT
OW5kbkJ2aUxhTWl4OW1EXyE3WXRXeENfCnpRUyFeKVpzflk2bDA1Jm9WNlZrJXZZOEwlaXxJP2Rw
V3lYRTxDTT17RDs7Vz9ya2s+Q3srWm9yS21JX35scTxjawp6cl4lUkJ1UDRNTFFxZ0BPRDc2UFUq
JDdzMFRPKjM3cCR8JUArS2gmcC1mMV9UPykoN3dhTDleflBudygjRzNDZngKeilSKl8hPTU3RSVL
emE7X20kcV5XQmdFX0NHQ1BCNmM9fFZrWFgyQHt6ZTFHSXNtKzhOOX5SQW4rYyVVbHsqMCNJCnpq
WF8we0A4ZXx2N181NUY9UVcoSXtkcD1TdHdDYz9ATV9BbnFZcUN+ZShqTWczNU80fT85NC1iOzs5
QSNzeHpKXwp6eHtJRnJ1bWI1K3pfYHA5eWxYQ1FGd1dMcmJAWEB8UWQyIT9YVF8ra192V2RIdzMk
TyRpd1o4c3o5fkl6WEg5emYKekQyKXdEM1E2Zj4mNV94O2VnNWpXMVd7X2JBJmVtNF9KQDIrcFNv
OSomc340UiFXcHxVb0t8c1R7cT5sfWdSbDlYCnpHckBwciNBQjctYEBHTkEzej53MFliUDFvJmFB
cEc3K1NzVE9TWDdxNCkyalFzRipvd1ImPWpMYClqKCZPbj9IWgp6ajJkXiVEbChfRVFYQ3VHNz5f
OHc8YX02a3pBMT9NPXtXM2ZVOSViVGdnV3RQLW0mV3FQNnA5WGU7Vit3aEx5R2EKenhjS2pyZDU1
YnVIfmpSSHgoVXNOM0N+KyRSfTlJVnBwLV87LX4ySHJ8SlRtMyNKeUpmQil4e09kMXNjKSt2TF9v
CnotT3FRdzt4O2YmRjYzTGlVT3FDOGxxbUZVKGN+dyplPzc3KkFFa3BFNiheVUdoaXBsR2pkVX1y
bDl5Tk44Y2leIwp6UXs/YkszNm57RTFvYHt9bmEhOFlpdVR6Vy09blFie1MpZ19sZ2VJcFlVeHU+
Oz4qUF43KGpucD5LazxhNXN3WHwKejhYZilPX0FTVXxDZ1dVKmhjU09EcEhrMjhjJHc/WEBkKV48
T2BpfmFVViZAZyZBN0Q7JEhZKStgZHlvQUswalJLCnpuP0VFOGpzT2FrYEFzczZkVVVRfUp2eGt2
TXU/QU1VMkh3SEV2YChJPT1KdlFeX2FOQSpEOS1nZHhXLTVGYTA9Ngp6RzxGe0d3SVp3fS1OPUtn
LWNkUXs7KylVIV8lTEI8JShNNmtlKipEYC1SP0M8MFdkKX1hI1MrU2NfNHR4c2VONm8KelExdFBh
TWgqMz9oYmlwQ0R2U0d8bEVAMH47O1FAQ1M3dUxwQFEhQz9KIThPVHhsb1MwKihRckNxLUBhdiRI
dWlwCnpSe1B3V3prSH5oVGpYe1ExZzFCTm1CKzZOIUxJfjFDeTUpQylaQ3V6ST1uPmgmMWNYJT5x
Vnt2RmFYUW5AWF9Mfgp6IWRuKCpVdjRMRUpvT0l5cDIhe1NCO1hnZjI4KkJvP2RTcSl7SCRFPl9V
QClQVFRxX01mPkJNQCV7aC1wPl5iTFAKemorcWMyPV4pR2lRO3FwUXtjOGJAYUheT1ZvWDV3aTta
XjJkWElfPGF4cFR9JWJyTjNidVVENGpKZG96LVFzPnoqCnpDQSFPNUBFVEhPXiFUeSk0YjVwJGEk
MCNeZmlTUntXO2ItP2ZkM2o/Yl4yQkhvYjVyPXd0VElzRFAwekR4ZWx4fAp6SE49PThedVc0aWNf
Un45dns+LWxqd3pFaHxDeDJ+O19pXkBuP0xsZT0yYHlTd059M09DIy01P3ZhKHFVNXJCXjUKem1q
RzVNYiRFN01hUnJKTnBENT1KS0pBdn12Vy1oa09FZCNZPj1+JCtXTDsyfVE3eXN8YE98elN0MFF7
cWYtSSVYCnpeXlNtM1J8NjBEJFQqbHF2enhubCVzVkxSa219NUt8SyhWYTwoN09xdDFuVk8wSkM0
cDJrZj4yR2o7KyFZPk03Xgp6ZFloUH5oNSY8PT1ha2J6TXQ4T0lGa0AyRiQ9O1otRiNDNWl5SzR1
e1gwfmo5R1RyfCl3aX1acEpJOypSPl5IX1cKemRON2ZmZzZ2e2t0VGk8eTglVCFTLUFCYTw7c3xD
PEorOE9aMXpHNllWdCR9dWIxOyk4Zl5xY0dPKWNjb3p4cVRZCno8MmtYO3lxZldwTi1DVmQodyU9
Z0lSe3RwMXlLKXVqcCtkdmNMR1RDemRmTzBrd0JAeD9jQ3Fye2B3KktCaFd9Vgp6RUlkOHRVISM9
bEZzRmFEbFpIV0pmdlZOUnE4YFk8MzxCbjh7PFkoWUlmfDJlY2o3MX52Kkg5JXtzb2pMQENpR0sK
ejYoQDFfZ2pBZGBzREpVKTZaWk40ZylTWms5KHJnflFCYkBVQkRgNXxUc2VPI3c1a3ZVZmd6QVZa
K1FfJjM1USQlCnpgOWVXUzElZzBlOUtpVHJBQXQ9bG5QM1JFVDI1ZWB5ZnR8ZzZpTlUwTV97YXE3
SmBrUGZ7fU9wLSUrYWY7Si1mdAp6Vi1wfXl4MmtqRy17dEBkbD1JYThZenUtb1FCbTNDTit8enh5
cjNZOEttV0BaTlA/MkdgWmdRYT8tTjE+ZWZ1d0MKelIyZX1PbFNPbjR6dDAkZl4hc2ckQjNLNio8
VE1pZ1VuY31aREV1fmRhYGA3dXxIUyEhJnlKSjF7fkpoN3B6ajN2CnpQWGdjWFA8O35qUGlXOEkl
PDY+b29zaXhXJmlAWktvfUBnI0RkYjdVY2FyZCk8b214UmoxIyV6QURIfXFzUDw1cQpZUDhKYyhw
aiVlSmVeRkN0c09UekorX1ZoJkEzPEU8U081UzMKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jb2xvci1jaGVjay1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jb2xvci1jaGVjay1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE2M2I0ZDMuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY29sb3ItY2hlY2stZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotICAgIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY29sb3ItY2hlY2suaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWNvbG9yLWNoZWNrLmh0bWwKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA4MGQzN2IuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY29sb3ItY2hlY2suaHRtbAorKysgL2Rl
di9udWxsCkBAIC0xLDMxICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhl
YWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgdGhlIGN1c3RvbSBmaWx0ZXIgaXMgYXBw
bGllZCBjb3JyZWN0bHkuPC90aXRsZT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGlm
ICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJX
ZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLmR1bXBBc1RleHQodHJ1ZSk7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
d2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgCi0gICAgICAgICAg
ICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAvLyBX
ZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZC4K
LSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4K
LSAgICAgICAgPGltZyBzdHlsZT0iLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291
cmNlcy9wYXNzLXRleC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1maWxs
LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgY29sb3IgMSAwIDAgMSkiIHNyYz0iLi4vLi4vLi4v
Y29tcG9zaXRpbmcvcmVzb3VyY2VzL3RoaXN3YXl1cC5wbmciPgotICAgICAgICA8aW1nIHN0eWxl
PSItd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3Jk
LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLWZpbGwuZnMnKSBub3JtYWwgc291cmNl
LWF0b3ApLCBjb2xvciAwIDEgMCAxKSIgc3JjPSIuLi8uLi8uLi9jb21wb3NpdGluZy9yZXNvdXJj
ZXMvdGhpc3dheXVwLnBuZyI+Ci0gICAgICAgIDxpbWcgc3R5bGU9Ii13ZWJraXQtZmlsdGVyOiBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvcGFzcy10ZXgtY29vcmQudnMnKSBtaXgodXJsKCcuLi9y
ZXNvdXJjZXMvY29sb3ItZmlsbC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCksIGNvbG9yIDAgMCAx
IDEpIiBzcmM9Ii4uLy4uLy4uL2NvbXBvc2l0aW5nL3Jlc291cmNlcy90aGlzd2F5dXAucG5nIj4K
LSAgICAgICAgPCEtLQotICAgICAgICAgICAgVGVzdGluZyB0aGF0IHRoZSBjb2xvciBjaGFubmVs
cyBhcmUgc3BlY2lmaWVkIGNvcnJlY3RseS4gWW91IHNob3VsZCBzZWUgMyBib3hlcyBmaWxsZWQg
d2l0aCByZWQsIGdyZWVuIGFuZCBibHVlLiBUaGUgYXJyb3cgc2hvdWxkCi0gICAgICAgICAgICBw
b2ludCB1cHdhcmQgYW5kIHRoZSB0ZXh0IHNob3VsZCBiZSB3cml0dGVuIGZyb20gbGVmdCB0byBy
aWdodCAobm8gbWlycm9yKS4gQWxzbyB0aGUgZ3JhZGllbnQgc3RhcnRzIGZyb20gdXAgLSBubyBj
b2xvciB0byBkb3duIC0gZnVsbCBjb2xvci4KLSAgICAgICAgICAgIE5vdGU6IFdlYkdMIG5lZWRz
IHRvIGJlIGVuYWJsZWQgZm9yIHRoaXMgdGVzdCB0byBzdWNjZWVkLgotICAgICAgICAtLT4KLSAg
ICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2VmZmVjdC1jdXN0b20tY29tYmluZWQtbWlzc2luZy1leHBlY3RlZC5wbmcgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tY29tYmluZWQtbWlzc2lu
Zy1leHBlY3RlZC5wbmcKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQzNGRjNDc3NzJl
MWQ2ODlkZTRjNGIxOGU5MGNmOGQzMzMxYjU4MmYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmxp
dGVyYWwgMTA5MzAKemNtZUhOU3lVNU83QGtTazZ+JE4hcUcqSkdzMEc1VkFRJiswbl8zbUlLKkRi
SWZaNzYpQmB8UDYwWU1fX3B+fUFMCnphWUhPdkVSY3syd2VWbTtRV3M8c2RlQ3F7IWxCNCZOSDEz
QT1KO0lTQ05JaFNYWVJlPF94O1BBYEVONCFkQXEycQp6WHsjWCFxVkRGKEpiKWwlRHVSJVhzMy14
O3diO35DO0E+bTcofjs8cVZfX2pEZXZGQWtMVmBqcEx4WmQ+Z1R2XiUKekVhP2AocnEtYzVQMGhv
cz0lKFJUKX40b1d7RVBlaTVNKD5ranA9YWs0RW5CKnBIJnA1bHxGY35GaklxK2ByeFF+CnptUkY1
PSZRUmVzbStQZmdzYTAzQiluOFRLSGBPWklUPmwlblpUSWk3WnlIKEViI2RMYiNWNVJLZStuK3k3
JTEpZQp6cHZTLXZsJSR9ZEwxa2I8OWhJaWolNm5SSiFFYjB4Q01qakc2aDdVdVdGR2V2QkVPbSst
OztzZ2dQYFBBaVFFOzUKelc1QzlHKkZWX0lnITVxTjVDPmklRFlrM3JqUGRNT3Q5OVg4dWc5IVhG
TG40dEJ9X0lpJF84c3FvSioxfDt+enhrCnp3e1MhcTElayVAeHNJWVl3JHFJVC19JjFNOXpHbVNt
bC1VTkhCX0JsO2Q7fV5QaiFqTE08QV89RHx1JjloU259JAp6WVokNihRTEJDbCluNlYkKXpHOWZo
N199V2E4UlcqSGdAP3stVzhrKCEoV0pHWTh1KXY+d34xXlZkI1A1OSozYkEKenIlXkkzdXlwbzZ7
Z3d2MGxheExPNSt5YTVTYGJKXmVJaXM+KWtlNjt3b2tROC1SX2koXmFhZzc4eHwjc0l5TU13Cnpk
IzRZSE1TKjxXOD9HdlZQYFNZdE5hKVRNSGdATX0jZzMxamBVc0p4dSMoNjBhLWByQ2tMKHA5ZWli
Z2h4Q2sxcQp6RHE3VWNZaVRyYGJqP2B8e248SVU4WHJVRFkwdyFJT0kwXnEyRFVtJTQkYXZWO0RC
NEdVfUBUTU4qKnFaUEBCeyEKekduZzheWE1EQ3hiWjtfbnhOcVkyPE42VzRzS2EqSm1YJlYqTDIp
TWcpNkYkJFNUcHZge3Q3KmErWENRcl9Ca01qCnorWSNVe2NYb2xlanspMnsjZyVmbigqU059JklP
M082WDRkaWJDYmlaM1VGcz8+cDxNNDBKbFlhbypacnBOdlZ4dQp6WF9KYUdWZURuazQ1U0duU3I9
JE5eJi05SWZ+U1MqJD5aSHQoeCNCKzFve3RnSEZne013bXNLTklLNztUUT04VC0KekZGekoyV0hE
a3s3Y3VEZz1XRlBVPU9iUEUmPVBDSCM+TkQ/c0dKWT1mRGM3ZzkjOUp+NXpAX2RCRlR5MjA+cnJD
CnprcV5hcSRwX3BRdkp+WGh4Qng4UGBObXRJVWxSY05uUlRrSnhZTzc9RGN2dWtsKmpwM3hvaFVG
eFlpJHJDTD9FXgp6IzY3ZUJUK2hpSyY8VEl7TURRQE5YT3JoMSR4ZXhKX3lgfSohO0djU3QyOHV+
Z0d+am5KSWdtZippN0k7Klpza0EKenMydT82R0FDPEBJcz5AeVZ0SzBePXVgbU9AcUU7Pmg4azIy
QWVwWEhya28yRTBnTHBuYCoyemVzeEJMMlc+R0hUCno0aWw9OEw9c1dJXnpNelYpKW08fGRkQio/
VnxSVU1kUm5gJXBnVlFSUG9PTn4pYUdzJlNhQEB7Z21aZHkjY0NZMAp6NFFZfG9IUjY1JT01OEZ3
VH4tK3h6ZTZQJnU9NGlKZ1JJKENYaT98WGJSZThrO0sxbUh5dnNObzJKbTBJdU5aLXwKej5ZKElH
KFVuUlYyOXV5NzJwcEI2R0dkQGlROGYpI0JBKF87c2RYOTQtIz9wWVZpR2FucEEte2dJcDRHcCYq
NV5wCnplPGktfnQ/Z0pDOVVra203YFdlVzdpVHMhZmZydD8/clcxVEIoaFNRbm8mYXY8akRsM0BH
RUAtU1BJdHh2RE9gcAp6Q1BQYUdoRWxlPGRxT0Y4c0VqUVpiVC1kTEp4Kk53cWdefiQ4I3o2bUlJ
R148NXplfEpEM2FNXylrYFBlamBodSoKej9gfHcle25eaSN3TGNMTGlab0B9e29JfDJHdHAteDsm
YnUlNHBOaFZDWmtefVJZMkdrODMjRFI8ZTM0NVZ0ZmFNCnpoWUtMSTBUIUVwaEJSbXkyVXw+XkZP
M1FuaCo1fUBkNUxwM09EKCNSN1I0YH5IbnUhVHNOayRsRjY4JDJ2fig7NAp6Nj4kNml6Umh1JkQ9
dH5JaXMhc1BINjBmKnV4TE51UjM4O3lHOSNyQXhhM1FrN1QrZEslKiY+bUBjPVJjeXVXfDEKelp2
PmFBIV9kNUhwRUZRc0JNQGBYXjZUJiszU0EpUDh0ZXlRM2ZCUXw5Y0ZkRyZ+Xm8oSnU7dVI2XzQj
czNZfkczCno+KmolTEtzOTF4bTd7Qm1hbCNBX0FAVWd6VmYpfi08fClOVGFHUnlfKT1YJmZKUClQ
OXJObSQ8PjhiI0hCP2M4Xwp6UVJwcC1UbyRvfSRPdVBGZntmT3FXWkpoXk4rRnxwel5Ia3pDZHtI
WGtWUkstRFpuaTExcEUyQ1A2TGh+Vj5wQXsKekpnOUY3ZyVlPENtIXdrPiZUMGxgeX1zUTY+TkV2
Pm5zbSs+KStpcFJRRCVvIS1TS0hsS348bCFqWWk/RCp9eHEpCnotUzxLOFQ7UHNAdks2cWZnYVkq
bU5lREBaQz9PSnVzM2s7c0MzWU5RNkRGUVpoKHxUej42TGgoQypFPDAqRk5HKwp6bX1tfFZ7U3U7
SUxiUTtHdHtUeTMjUDxUQ19lISoqaTRIdytYaEVGZzVKeXxZWCYtUl9OfUxIMyRLPUY2Mm1ZNW8K
YVFeLWlXSjkjSDxzIytmKjtOI314JjgmODByflY2c3JBcEJOCgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWNvbWJpbmVkLW1pc3Npbmct
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3Vz
dG9tLWNvbWJpbmVkLW1pc3NpbmctZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA4YjEzNzg5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vZWZmZWN0LWN1c3RvbS1jb21iaW5lZC1taXNzaW5nLWV4cGVjdGVkLnR4dAorKysgL2Rl
di9udWxsCkBAIC0xICswLDAgQEAKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWNvbWJpbmVkLW1pc3NpbmcuaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1jb21iaW5lZC1taXNzaW5nLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDliN2YxY2IuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWNvbWJpbmVkLW1p
c3NpbmcuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQzICswLDAgQEAKLTwhZG9jdHlwZSBodG1s
PgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0aW5nIHRoYXQgdGhlIGN1
c3RvbSBmaWx0ZXIgaXMgYXBwbGllZCBjb3JyZWN0bHkgd2hlbiBhIGZpbHRlciBpbiB0aGUgc3Rh
Y2sgaXMgbm90IGxvYWRlZCB5ZXQuPC90aXRsZT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIs
ICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJl
bmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgCi0gICAg
ICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAg
ICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1Y2Nl
ZWRlZC4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0K
LSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgLmhlbHBlcl9tYXJr
ZXIgewotICAgICAgICAgICAgYmFja2dyb3VuZDogZ3JlZW47Ci0gICAgICAgICAgICB3aWR0aDox
NjBweDsKLSAgICAgICAgICAgIGhlaWdodDogOTBweDsKLSAgICAgICAgfQotICAgICAgICAuZmls
dGVyQSB7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3Vy
Y2VzL3ZlcnRleC1vZmZzZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0
LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
dXN0b20odXJsKCcuLi9yZXNvdXJjZXMvbWlzc2luZy12ZXJ0ZXgtb2Zmc2V0LnZzJykgbWl4KHVy
bCgnLi4vcmVzb3VyY2VzL21pc3NpbmctY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFsIHNvdXJjZS1h
dG9wKSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXN0b20odXJsKCcuLi9yZXNvdXJj
ZXMvdmVydGV4LW9mZnNldC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9jb2xvci1vZmZzZXQu
ZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgot
ICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9ImhlbHBlcl9tYXJrZXIiPgotICAgICAgICAgICAgPGltZyBjbGFzcz0nZmlsdGVyQScg
c3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyI+Ci0gICAgICAgIDwvZGl2PgotICAgICAg
ICA8IS0tCi0gICAgICAgICAgICBUZXN0aW5nIHRoYXQgbXVsdGlwbGUgZmlsdGVycyBjYW4gYmUg
YXBwbGllZCBldmVuIGlmIHNvbWUgZmlsdGVycyBjYW5ub3QgYmUgbG9hZGVkLgotICAgICAgICAg
ICAgWW91IHNob3VsZCBzZWUgYSByZWN0YW5nbGUgd2l0aCBhIHdhc2hlZCBvdXQgYmxvY2sgb2Yg
Y29sb3JlZCBiYXJzIG9uIHRvcCBvZiBncmVlbiBiYWNrZ3JvdW5kLgotICAgICAgICAgICAgVGhl
cmUgc2hvdWxkIGJlIGEgZ3JlZW4gY29sdW1uIGxlZnQgb2YgdGhlIGJsb2NrIHNwYW5uaW5nIDIw
JSBvZiB0aGUgcmVjdGFuZ2xlJ3Mgd2lkdGguCi0gICAgICAgIC0tPgotICAgIDwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0
LWN1c3RvbS1kaXNhYmxlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2VmZmVjdC1jdXN0b20tZGlzYWJsZWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA0MTNjZTY2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC1leHBlY3RlZC50eHQKKysrIC9k
ZXYvbnVsbApAQCAtMSwxNyArMCwwIEBACi1UZXN0IHRoYXQgdGhlIGN1c3RvbSgpIGZ1bmN0aW9u
IG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9wZXJ0eSBpcyBub3QgcGFyc2VkIHdoZW4gQ1NTIEN1
c3RvbSBGaWx0ZXIgaXMgZGlzYWJsZWQuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQot
Ci1DdXN0b20gd2l0aCB2ZXJ0ZXggc2hhZGVyIDogY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSkK
LVBBU1MgY3NzUnVsZS50eXBlIGlzIDEKLVBBU1MgZGVjbGFyYXRpb24ubGVuZ3RoIGlzIDAKLVBB
U1MgZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1maWx0ZXInKSBpcyBudWxs
Ci1NdWx0aXBsZSB3aXRoIGZyYWdtZW50IHNoYWRlciA6IGdyYXlzY2FsZSgpIGN1c3RvbShub25l
IHVybChmcmFnbWVudC5zaGFkZXIpKSBzZXBpYSgpCi1QQVNTIGNzc1J1bGUudHlwZSBpcyAxCi1Q
QVNTIGRlY2xhcmF0aW9uLmxlbmd0aCBpcyAwCi1QQVNTIGRlY2xhcmF0aW9uLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtZmlsdGVyJykgaXMgbnVsbAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1kaXNhYmxlZC5odG1sIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRpc2FibGVkLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY0ZGEzMzguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLWRpc2FibGVkLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSwxMiArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwIGlkPSJk
ZXNjcmlwdGlvbiI+PC9wPgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHNyYz0i
Li4vc2NyaXB0LXRlc3RzL2VmZmVjdC1jdXN0b20tZGlzYWJsZWQuanMiPjwvc2NyaXB0PgotPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9lZmZlY3QtY3VzdG9tLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9jdXN0b20vZWZmZWN0LWN1c3RvbS1leHBlY3RlZC5wbmcKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGNlNzhjNGRiNzNjMzA1NGRkM2Y3MmRlNWQzYjk2MGViYWRhZjVmZGIuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKR0lUIGJpbmFyeSBwYXRjaApsaXRl
cmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgMTM1NDkKemNtZUhPWEg9OGYpK1B9S3VtRlAhSSFJ
OSohOWY4PDFxc2JZNWUwT1JDP3heRzJHUl5lQzx6SFIxTz0+dmcoOEU5CnpOKHBseyNzQ1M3Zn5Y
KXQ2cCM/ZTA3OGg2Z2RSYyhfYl5EX3RocW5HYFBPJldgdHBuOUBTZ01UXlh6QnV7cGAmbQp6KGFw
dFMkLSpCTiVFYCRzYWRPOyFQKT1Adm99Myl+dStuIzY8ITxFSkZ6e28yI0diPHV7d0koNTJWczUq
bU5QZnMKejhnTUxOK2dBVlcrcWF1LS1tLWF7cFA4QjJhU014cGZQaFYjSHl0eHEkfjZQMFo2UEBB
LXIqaHY8Rno/byQtcVdgCnpIeX1fJEFNYTxLdTBFaTdgaUk5R28qMWgrZFk4b1MqPTQ3NiRneXE5
PCVrM0NSQyo2fTl6MGQtekl0fn0/akUwYgp6X1pfKiRwS209YHhPYWlOPDhzWiVeKjh0S0lrZGEr
JCZjfSRRPGsyPC1UNTZLXztJZ31FM1UyIzZWWCNeQkBqaCMKekhSQk5JMHo4MnNLazJ1RGtUZHVt
ZUdWPEpxXjQmX2whTCoraHJgNSpBZE42cGlldiROczktMjhRKTRTaEorQCg9Cno5cWg7b3ZleCZ8
V0F9O1VJP3kqZVVxQVQ1SCFtTnhVNzk9Z3VpcSRDM1o9Zm03Y0YoTykzRTIrT1AjeGxpOCpVXwp6
VmxVLXx5WERyIWVOfnZvekMjUzMld2M/ZmJBRCMmIVN2OH0mYkF+VyZDYGw5OWl3fjElWlVDb3N7
ZmFxaENpTSoKeko2QilTRU5aT0YkUVkoI3NgQGdGX35HO0ArSGg0TEVoP3d5T20tQTRFeT5sVzxa
dmwzP0RyVTJGYkNCeHtgfXd+CnorZnsmfDFhcDdteys1Q3R7UGJuITsqRH40N0pad2RATTFaZT8k
PShmU1MhKlJvJjMzJEd0SWZZTTshZlU7c1UtNgp6WE42Q1F1S2JqSWZOcCk7YjspSGF7PFk5aHVq
WHpVTzw0a0R8MlpRM1UjaCghUFR6M1Z2LTNUb3U8WXV3e3E2MTAKemVhQ2ojIUNEan1Dfk4xQCpE
RWRudT5FVVlYeX5qaj1IUSZ2eUhEKDJQfnhSN0xIRG8rT2Q7VU40VHx8KzktQ2NgCnokRSYmN2ps
dFNCTEkhTmV1Z0o3anAxekA1XyN1USlHNEtHSm9TKFlXQnZUOGlkJnR1WU5rPEp7ZClVPVUmNWpE
Twp6O3k3ZmRwMUBhJTl1TyhFMy1KeHFtRjAwMD0lQ090QEFSJiV3KXNBU2lBN30wdTBkOFpoVE5D
VCZ8b1lsblVAX2QKellackE9SjRadngre0BaKSRlNWY/c3VwUXFJalVOYUMpfCZZV31+TW9QT005
PEAxRGREVUhwalZqISpLbTkrSnVnCnpCcFhyUjRUcUQlb2NPbSFGJjhSbztjQFdJVypPJHQmR2RA
Qnp8fDs2Pnl9Q2B0N3JPQF99fW5VeWZzMDZxUzNXcgp6YEg3IXctby13JHpLK31TTiN9eCVGKUd3
QkUxJG5mZldnRjdpcmk/WihGNDdXbjByLSV3M1pafkB5MmomYUBUdk4KemVvMXc2UW1RZkFGdGdN
SDdhPTslVj97azN6Y2RfRjwmY0tYRlpvb3JxfWxsOSgyNVh1TXgpTGg4eSQyKDgjWkJ2Cno/LWdl
fD9RIWpSUiFUNmd8TUY0K3Q3ajc1M0JXdWxuJmtFNjNDaD9jKU1UcjAtJTNESzI5a3VGby1VMEVk
NiRHKgp6VzEyKEVCR3hLI2YrWWwhU0wjT3JwMyZ9TENHMXF3MUNQTnM+ISh3c0JEZ3BmVUB0dTB6
QyVKO1YjTzZlJDE3cCYKel9FSmxISzt5UTEoVFdvQyFRZl9xeyQ/K3V3V085eEhRbnFZTHdtSFB0
ZikxLXxEVDVXWmxRflVncldLNlVBMUAyCnphJGgtSSlXX0locEdEQWVjSld3eU1YYkdDeTN3bVpG
NiUyajFMMUwzQFkkNCZzWlF2XnZWYE5GQDN8QEZgJFlqOwp6ZSVLIzlJXzR9KT05Zjt0eV93M19Z
RDA4NHd3a25nKGJ9ejVTI2NrNHJzYE9eQlpMKiVpaDE3TVc2bE9EU3ViWHYKemJKNE5jS0tvcFQp
aj0hbF8kTUFYc2B0fTFDTik5RGMxIW45Nm0oNFE4KlhkWEsyaCg7YkJ5WVllPXVvJStLQnBHCnpo
S3p5UCFqNFJZIXNNWDRYJkJybVptNDVzJSpVKn0oZ3FyY3t9REReUEhNPm9CK1lhKDApcVQtM196
Uyl0ez98Rgp6PTVSWExYQXkqNTFFcXUhO0RaTGpBfmA0fGlZPnN0QEZ4Q2xpQ2NXUnokPntrOGdp
MHRjRH57ODFQeUZIN3Q0SFAKenQlUUcrWD1MKlBjWUJoYEpYZkZLTTtAMSh4WWJHWjJOYHpLZ0c4
ejNHKDlBPV9QNjl+MkJ9KTtLSColUHlxd2RkCnpRKD8yMXRlRFFXTFFjXndIZ1Bhe056STdwOUNA
PnROMEdHZkt+YDh2QiljT1UhRHhKRlNvbFM0NGpJb2BXU0c0aAp6VF9DIyNmJF5SMStwYTttdkhf
NkFTJkxSQm04dCtla0NhZ25QIyFxITJgK2RsaGhpYU5SRDlKVUwlcXg5U08rTEUKekl2V0FkZ0dW
JEJCekc+MzBeMF9BXz5SIX5QdEQ/eit9PGhXRTBad2ElPTIqcCZraXVmWmA9XnJoXlNtWng3P3Iy
CnpiI0wxfChlX0BTPX5kX3hWdSZWMXU+bX4hUmhhNl9vUnNESHtDcX4/XjR5LS1lKUA7MTFfZ24z
QWN3RCZZMitoXwp6a0tKMWg7TnEpbEZmdWt8QWBhQW8wYHFlZi1nVVZrd2pfI3traT5EKFd2WEJ9
SCREV04rUC1KYnRrY1U0I24wKVoKejgqU0R9MzxvdiNHeXYqIU5jKj5FVyhpVFQ3X1FodUBfbGJ3
TiYjUGUoRipvQ0ppP3duZWl6SFVNOEcjV0peMi0lCno2SENFJl5Sd0ZMJFVZNWtyQkQycy1POTtD
JV9JYnFiUDhNdnl6IWkraVpPcklwSWVHPG9wX259JUhWbU48elV5MQp6MVhtWWFhTmk8PilNWDU5
OH1ldXs3Qj9rNkw2fVRvb0RoQVBqWUVwfCU5TDc+SF95YU83dT9rMmQzeCtvVVNkUFIKejxTKUg3
QytKcCNPLThUWVJXPzdUN2pPT35KfjtMaiZZKj8hbVV1YWdZPktCWThkclk5YWBMJDxAd1omTzZT
JiNoCnptMXhMS2NEe1ZEXnZedk5EYHBINzYqZ3VEKENCb09DJSstclMjZzVaVTZiWktlMmR9cCM3
OXN5ak5CYHZvakZHNQp6NnJwSUlDNCQlWEptcy1nMkw2a0ZaY1VuTWEmPWNqaXpYX3t1WlVCWlkz
KV5sOGY4JjJvVmBHQ0FQOGF7SC1eS1kKekFHUT9zbXAyei1KNj5MQjcpOGEyeCpNb3pzRj1xUXs5
OCFXOWo8cnlsP0psKlQpQGArXnJ5anBEMW5PMTg2WCVVCnomb34zX3R9PXx6UHFeSW1ETzEobGA+
ezE2X3tDdT5FUGJyKFMqTG56WT0zcFJzYzZFO2hAMkh4dzVsK30lbGkyKwp6XkBIZ1Q5ditLMEF2
VnY+Rm1aeWN2TCtVcTh0Mk5wdTJxSFU/cHI9bjhCVUYyR2N7c2t6Z0RlaCg1PjhBTGJwTUoKenU4
UFMoT2VvODE4YDhqWlMkVCVqWXtJRTFmTk5FKURMeFJaSGV0I19yI34yejh9cXc4bDw9ckNMbkVA
XlJfRCV7Cnp7STVEPiNjYjdHVC1OKWNPKEdiXz5tbl9ofER8cnZ1Xk8kaHsjU3YxRkhqcFF5Pnpe
N0BJOVJiI3FQZlM8KmhxVwp6RyplI2UxSkN8TjNTKm9hX2wwQmNlP3ojRmtrJUE2Qy1Xb1FVPDhH
cjdJbGdWNnY2bXFLJTshbUV8ZCFWZG0hMUoKelBIYXQrdSUqSFZXUVdPMWYraT9sZjg3dFYhfUNn
PkdaZlVpQWdKK2AqZFFudSlUfUchJXEkazwoY1NkJXtSVSo/CnprQHdrPWR+TXhGKTBoUEk2S2Yo
cT5lKDJ2eVdgR05eQkx1YG0hI0BBUG03NCpIfEJOQ01aek4wJnxpKG1NPihYbAp6SSt+RW1xfjxa
MiglSTl2VjBzPl4kY09aLShuck81PFk2Z3AmPUBeMkA/dVEmTGwpSjIoelZ3Ti00OyNxRzd4e2MK
ejtNcT0/JGlsOVNYLXkwOTVqZmpFbkhDUFU1TCg4MWwoV1IpZXNuTGJER3xYWkd3ZWJ1biFjND9F
Zno2KENaTVIwCnokX2MtYCVjcjB4MkZpSTtffUN6TklxdTskdyhoakJ1REtNQykle2k+bWQ3KSpU
eioySHhoUjFMZF9YOUQ1KGA/agp6alhSSWMtdjBLNnV6Kkw/QF9Bd3dnKmxwJVYoZys1U1l1Pz1o
NEhkTWVBY3p1RUZQP2NBKExFLTV0YW9tV3ZgbncKelE8NmI2SkNGX1AzUlM5fnF2QmV0JWIpVXdY
X0YoRjJZM2R0IW9eeS10TkFNZm4tVDdgX1RHYkJ4PylIRHhnMVN7CnpsPDxAOGxsbn5eb28zbXAk
JF9jK1k9UCRNYy0lYV5WST1YNzcoWmg7ZEIoRW1qRklNUUsoYUZuUzd8cWpee31DWAp6c3dXIzIo
ezBfUlJ0bCU5RnA4XmJYeCNmUkBGOERic0h1djxXc2JgLWtTJC1QS2JkfUMqViVhNyk/PyNoaG9x
e2IKej9Xel9lUkFeK3BoJkVncT1HUiNqTkZNMXFTN1UoY3NNR3daeHBZKS08V3tHVV9za048JC12
d0RpczN1VGQ5e1JTCnpCcVd+Z2UxOFhkPHRWSyFTcHJ6YUt+T2ZGd2FkR3VOYXEzZ1I2cj99RCNM
LUdZJmBDd1NWM0heMHlNbGw4Zmd3Twp6JXo1S3E0Q18rMEpwPm5iYTZ7QVQrQ0UxR2FhbklrallZ
eVkkOVhaWEQmIyhFeTc8PXk5QWxOKGgwQl5xV1I3fisKeiZZYjRQa2xKdDxFKEB0YnBoV04hTjB+
V1ExWENPLWc3JFAqRnVrRlFmMkxQSj12RWFCSDZqVnomPUF+MkJmNnt4CnpgTVF0WEh7Rm1SP2wl
XzFqaSV8KXJXOHJ5UDlPVHZBQUB6blo0K3JMWDgwJHt2MSE9eTMxX3NXeENLYzdeYn5RJgp6aDJS
dUtjfDslRzA2cF8xMUQhdDVhP2ZPamU7JiE3OFZZNU52b2dAUDJVPFFGKmpqWWxMWD1NLTg4Y09Y
dCkkeFAKei1XXkNYYDZqdWFFKDk2ODs3cSVOQjsxRzxNRzlrNjI3MEJMWj91NCNRQ2wtR21gVyh5
IVgqZHc8em52TEJWKEZMCnpuaGMqKD8tRF9CSU0xN1ZHIzF5M2oxeVRlNkA+WUZWXitSS3UwIzN2
RWxNK0t0ZWErWi0oX1FMQTdgeyR6NiFDNAp6WWkoYCF1I0VGQkpBJU57cVdKYmEpezd8aVM4OVZn
KngmSnliVDJBbExafHQhejBLUSM+Y0QmWVhsSChwNEN6fkoKenYoRDU2STFGe1lYY3dgZkxBanU/
YUFSQkRCeUU2V0JXI0AzPjhOTyo7ZWA/PTwxLTVUZDw4ZzhYciN9M2w+Q0BgCnoxXk4lPiZuUWps
RHdHZWgmIUpiPFBed1l0ZSstdUwlOFZmYUwjJnU+dyg+OGdMSWhJI3s0LWNganJLe0cmYGQ3QQp6
NUhRYlVpTE8tTlFrKH4kWkxlY3Y2czJFRXRlNjJNQD1+WSojNExHQGJ3SjJtVkoxVVQ1cDs3blJZ
KC0tNmBSS0kKekxiUCpoP2BXczhFVztqMDFnPmJoJXl9fX42a0JuQ2ZKMGhpYjFtM3FqTm9PMFNh
TVdSNERCbkdPZVN8YFh6Un1fCnozYGV6cnJCfjEydGM4QCh7WGA8WFZYYjJqXmNGfChSYHI5TV5g
UihPMlZkeFRMJDQ1TzI9cVkxPmc0JEwzSXkzKgp6Qn0yWGFYUDxvc1pJWHY2dFg9KTE4NkBVVHVE
TVUjcVRLS1V2YEpsbCsyNCgrTk85ZGNeVGk/UFVQPzYocjRIR2UKempKYloqMnUlVz02NDBBJlJf
MisqSXJZXyhxbkMhaTspQj44RXxMSH51UWFhZz07LXp1JF5gWW1QVlV2O3Y+YDsjCnoxM09wbVNi
ME9AR0NNXz4haD5CJmsmdm9aMTlxTzVLZWk5QGo1ZUBTV2ohKzwrSHtFc1M2OUVlMl9pIVQwTH04
agp6Tmt3U1dZNT5+YmpQYjJEJFZOfEJkV0pKUGJJS0IhYGZuWH1AZWNITWImZyZmcUpHc0d3bFV7
OHFecDhpaHByUksKem5zUV8rP2xGb0t3WV4kbXsyRE5EU2k1SDNFKHBAeiklU0BiWiQ0OzFrZ2Zy
eVViPyopOGFMY2UwUkdpP0BQaG4lCnozN0VSKD07cFBNdDh7Pj1zakdzZXtKWVoqbVUhdnlScHtJ
cGZTZEsxWEEwMEpDRSh3YDhCXlNLcWR1V3ktPkh4Swp6dWRaIytMVUArNmY1P3N1JDtFfV9NekMt
Qmt0MElMSVIyTSg2MUVfTT1LbClFKEFHYFM2bkc2QWBQOG5TaGI/e3UKelhkTXowLWAkN2FKT3Ft
VClaKlpJMko2fUIqI3FQTHVPMzxHeHw2aCNJeEM7dHRkWTFkaypOP2ZFMDxuPGVldkI+CnomX05i
fXNBR1F9OXFhU3s1TUI3TmY3dmAtYzklZG17PVktMmV+OTVkVnsxcUJiQ1IhRFVqdkclY1ZJNiEj
PSR1Kwp6I0tzaXdqKEJtPGlzRCh5YXMkSTZkVVg9VjEyalVLM35lS2kjdnk5d0lkO015UHdPd1Ux
NUBWMWFFKkt0cTJTOHIKekRrPF9QdHFPeEZkPzZ8WlNrM3p4MkcwT1FidmVibkFjPzY4NyNKMChN
QV5OVEJyQ21vQ3ZkciY0fUJ5TkBKfThUCnp8NiNtYDZrWW9RXmE+QGx4ejFAU0JoO0VTbGVDX0RM
YUd0Nj1xNFdfeiN2SmVqY3IpfW9INjt5PXF4WDw7azY/Tgp6P05zTFB4cE91ZSpCYmd1TUkpSGRN
TDIjP2Z3O1I5VD1NR3VEXmslMiMoQHAxX2FMQlhSUWxle1pzKnl9PiprcHYKejdxMEBNRjx9YGBp
dHhNYlY5THR4WmJSbzxmQHN0fV8tcH5STmV4OGYtOzQ9Nm5mSWczPSFGY0lEUnk3I15uPDJqCnpe
ekVQT1hrODEpaXE4bzdLPSpmaU5ER1gkIWJHfVRqKD5JcWdWV0ctbDg/WWd3fCNAcEtwejhia2BY
SndrVElAVgp6aDE8Jn5NTkZKNCZBWVZTd28jYDUjY1coWEA1Y0M1QHQjXzVUQjt2RnJZV3VSMS1f
T2BAWlUyMzVEZVoxVTxnVE0KekNQP3tPMU5iYDMhZH1ZUEs7Q25JZVQwfHReKj90fHltcj1rQCVT
cyhUZCF5U0N6OCRsUl43RGtJRXU/XiQ9PTJgCnp7blRVQl82ZFVHemRkdT1jaWslPVlBJUxKSTBK
KCNnVGQ/ZHRKaGFUV28hI3o8Nlpldk9DYUFWMTIqcDVkdDlvZgp6MHlkc2ZmM092RClMT3RzPEBJ
LTwqXmI+KFAqYV8qSGJGSkBEaFEzVzQrODk9Yk4yJkl0bFF5dlBRblNodnFZSU8KenZ0bkNAJXA2
NSFvU0RuMnZTfDhOM1QxZ19FLT5uNDhGO1I7JFpGSHZhN0k/T3poejM5Z3FSQnFuU191QDIkPisp
CnpsTkhLdWF8VChWbG9kKUB1ZE9IUkN9a2FgWTtyWF9fbWo9XlcoQV9HWjw2Jip2WXw5bEhlaSR1
Ny1mSXJgRn5zdgpjI0Z9K0Y4KTJufSYhZlRyRlVkTFdhb0p0OClBI0paMHNhZTV4JlF6RwoKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0
b20tZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MWY4YTM2Li4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3Rv
bS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0gICAgICAgCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tcGFy
YW1ldGVycy1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Vm
ZmVjdC1jdXN0b20tcGFyYW1ldGVycy1leHBlY3RlZC5wbmcKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGZmZjc0YzcwYmI3YTdjYTI2MjM0YjNjMjJhMzhkZjNjMmNkMDNmNjguLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKR0lUIGJpbmFyeSBwYXRjaApsaXRl
cmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgNDQxMjcKemNtWnNAV2wmc0UoPXxHe3lBM3xMMkxe
WHtjWHViYSt1JERELVE5dkVTYTVkPDJAKGtJP2hnNVF6Rlc4SXglWWptCnplQHhaWG9eJHI8LW03
UHc/IThacHM8STNrRzcmTlcwNj4kSWx+ZX0rVV9ieD52QFJuMiQyVTElcClNYUUzPzVSdAp6OXV+
RyU3V1ZGKmpzU0IkWlhQeUhiNiFwaFBIcnwlRHwyZ1dGZWZLQkN5JSlgMmRfMVV4eigwMHBETz8k
M1hxYyYKeilBV0hsP2JlSDxrO0A+cGVxWiF5dlhiMkcoWTlYdlh7NlB5STRlRGFuI3BKYDgrWnAl
P0dzSHg2YkJXKFczdkBtCnppPmd0bnstdUg1UFJkSUxpTXxxSVE2Vko+LS0/TmdOPz97QGMha1V7
MyEmSV8pXl4mVCl2VUZSTylhO3piPEJYaAp6e2Ikei05RnklT0d5Vz1LSlJDU1ZTcUpgb3tVaHtY
JXJXVmZCJTgqWV51TzM4RHpCPFB5ajIrYEhwMmdBKUNreEIKeklXITdhKEVxVF9ZKiFGZWxGaTdt
cnN9cm58MUBZJkg1eFZnfDE/MWtiWldyJGx4e3c8SmM7YzhHeXdKWWtmSHlACnpZKF8kME1HRlhQ
SE47fEl7LStAWW12UjVFO0hHJXplNWA1OEw7d0hLM2d7NjZAMjZJQXA1Qmg/Rk8+Mlc9JiV2Ywp6
S2dJeX5XU3l5ZylCSnoxXzY+eFh6fEl8Ukw3WH09bHhmZ094SWdDYXchRSVlPE5STnNgJW9zS3B5
TVREVXw5Si0KenVIcmt0O297ZngtIU5jQ0wpeUBhbmg0WWVjaSpCLSkjY3NqZDZOS1IjWGReYURn
VFdvRGo2b3w8I3gzc19zTCVQCnooai1GJT1rZm16dyo5fEBlWUw3ZnsoQ1MmSXQobGtIXzt6dXE2
NzBqRE1jZGRUPSpqNURKMm4lfEhPPGhzZXdqfAp6QHhPcDxnNHtOQjtecjhqPEJYYTRUP0FGOSZj
TWRsR1dTT3cra0dLQnFSPTNPXllrKWduKlIhenBiR2tINEhVYlYKelAmJCQ/dWxRMjdyeWBMRy1w
fSUoNVEpKWBQQHc7MVFvdkxHdWxWXzNsUld4Y0UjcEUzK3ZpQ21sQXl3eiN8cEImCnpRe0Q0SDQt
WitWe2BfenA7KHJfbUdNMT4ze0JPckNaMT1VdjdqMGN6SmBVdUgxRV50OSNnX3VDTHw2akxBVUZz
Rwp6SnBYYSN5N01MPXkrSzw7MzElNjZQQy1zZj8mR2UhbT9VRygxOUFCVzZyUl9qbmh6KWpGKHdq
K25nazdGNn44YloKemt4M2c9ak5NKFBHY3g2Z3B5YFRGcmJnOWh3OEdhJGNRcmFGLWFkWjJOaXFn
ZndEfEs1NiU/bzBFd2RGMlAxNVIqCnpnVl5Mc2xkdGVgPkJrWm1RN0g3KW4rbTZlayNybVhiODt4
I3htK18xUSFmWCk8Y3Qjcy1jSzxgRHBfZmhfNSphWgp6eWhsSVNocTw3bWRnej1ER2lyMEEwTWZs
dnV9MS1FJnJhbXRLZml8IWgzckNvRVR8cEFVd2Y8KXdpLXpoKFZOc3IKeiY2dEAjQEJYdGkyeDRH
N2VmWSRgZkNANz1zWTgtJVp1VTNLM2dPXi1aUGQxZntDZEI7ZVpCcDlHZSFOMk9uZ1R+Cnp7SzA+
Y3pBKVFEd3liKHROOV9jc0dCcE1VQXJsNUVtfUpmU00pTEUwRWFwMUBANT9aUUk5MClEJn5EK1le
cClWaAp6JEZ8LXw1cERrZUNxJkNVMiFFX30oPnMkJSZGamtmTE5KSEYpM3k5TiphT0Ryc347YDhl
LUZXVT5rSzRXWGdmT2MKekp3PDZrSzYpKl9qPzZldityIWFDb3V8TXQrJiM/X1EpRVNgJndQbFZ4
V0hkcCohWS15I0sreWM9JCtPNShRIU8lCnpHan1PV3s0aUUhOD8ld25gPD53PVopP3RodiRyWlp2
aHlwYzJ7PDJscjRJX25CVEkxdzB9Kl9vKUhfSj5tYE84ZAp6SSNLVzlXYGooNFo+ZUB9dzU1dVQk
amRLODQhQU9NKlokaFlSITB5VjNYO2ZaMDNaWldESjdncGl1ZncoaEwpWmUKel5PdjFgQVcjMWZA
P1NoSGlHSk9WSzc4YG9gX3NpU3dQNFVMJFdQMT1xYXJ4SF5XN3c0OXM0ZlZBRSlkVTFGN3VyCnpS
QnJUeG0/UX1NcXtpcVFWZEB6fXpgUnN+cTNQaWJqJU9ObyFecXB1S3pZd052YWorVUB3Rn5jQEpx
aD8yZjRJTQp6MlV8ZFp0Vj0yWWhPfE1EX0s8I2Q2MCRQP0pobUNhV3Y1N1Y1YFNkNS1QZ2JPQUtF
PHA8K1pubE0oM2F+c1ptKzMKenhyTDx3PWJ4SEVRUDJYXld+KG9kV15SP3dtelk2VDJFOTxEfDFf
Vyg7QU1XITR1eW5HTGdCYiVhZEJBJWB4P0RECnpaR29oUDFMd3VZeXJEUTF2K2V4MjlwMTJQWVNf
b3xLa3huQVV9Pyk7KEYoLTRfbEcmSlNTbT9gVXl3T3FBNmxlYQp6NzlIaT08YTNaSCFDNCl3UFB2
PHImZ1hhbC0oOURoP1BtdGtwXzU+dm0rM1g0a0g8Yyo9Qih6aER8TmNWY3BrKSYKelluUH4maSQ8
YGV5WHUwd25OIUhaI2cxQyVuQkVBTEZyb3RFTV45Tkg5NjQtZzRLSD1acj53ZE9DSTV0PWFFSEhx
CnpRejd5Qk04YUYrJVU0elYpTUtLWnY9czI9Mz9SUXhaI2tOdEx9KyZfTVZPfUNTQiYjUSlxKDxz
aWF2VlZlNnVEaAp6WG8+JGZYVGBFVy08KkhvfEpSLVZtYitzWHZzJFJAZyFERV8kTl9RQC1+PGJG
ZkVpPXVBeT9LNF9CVkQ8cWV+czEKeihJP35rdz55KWR8MEJZWT9OP1J1RjZlZSV6a2IxTkoyKF5P
YVRsOVo2OCRpRXUjVmckTX1AWkxIbVJed0liKUduCnotO3ZnbXJaMEw5cnpWJT5XcEVSVCFXckBt
NGMzVnNMcExjRCYyWkp8ZFFEXzgjJENiczRFTDRgdElwfEVIYUhZQQp6eClZNGZKQ3o2ODVBN3R7
MTZXMHt0MTMpI3Q3THR7Y3pUcSYzKHBFck9BSmtoKyQ1I3NyJkVYYy0rcFZfNXdXI0EKelFTUHQk
MXdTU19jc05sMWR2dE81JE4zaD8oKS14NVMtVCk9T35fJXkkPjxgJkphKUxLIzlgK0lxaF5BOT02
d3VJCnpSNVQyQ3ZWVX5WemlySnM5bk07SCs1TXwoVm9jZXVLd2FhP3k5eHZgZypOd2Q/NX5RbD1G
VV5iMCVfPVM9PV9MVgp6N0xOZUxQZGQwNUA3eXVJO25BU3NRPWREMyNpQVE7Vz5DYiMzRz1fKzQ+
c3YjZVh2UUlneDclQnpFYlRQJWxyOCEKelNpNFpaYHEjaFBMPko4eHVmQ0VlRiZYKzs2SFV3I1J8
U3ZKMjYrKTl6U2o3RWpaZyU5Y1hjISh6YU93blBkelVgCnpBK2F9WlA+PVFiP35PZHZNdVJMNEtW
JFloVD5Qa0Q1NlROKlpqNHJYO1BzU3lwaFh3N0tyaDNydnpjPH48fFh3dwp6Sm4laHJxZEdhRlNK
OSUhZS1KfDRCSUJ9MTF3bjQyWEVaKmFnTzhIXy1NSFFMeWduSjIrd3RLakpWLVNPVlZZeCYKekkh
O0BlalpvI0RaY19iT3lZbE4pMT4hRzZQSnAyejNxJXJFRCNNUz5BXz0+NE1aYilYK2Bobz0xKjd2
JSQqamV6CnpqI1VYVHg9UXpudHNKSCNRaDhWQ0NBfUxVOEBgM1ZKVzhSRHZQKDI3XjRVZ2UmeDAm
eTZzOztLPXA0Nm5VXnp8fQp6K0Q5RFcqJEd6QmdHYWJTcVR0em48JkcoWj1veWM+Nz1NUkwqRk5K
JiNHRGFZdld5aEFDcz9oejtBYVp2I15jMGYKekNvbFhTYDs+T3VePXpkVF89Z1Z0SDBtUnpvSkpX
V1g1Wl41dXAkVklCcEhAOHJyfWVsV2RGYiYhNXNTaD9xWntFCnpuR3VEbyQtfE1hcGtCK2xfd0l9
TTFJT09FZ0dKQSg4fis+O3RkZXhDOFYlPmZHfjgydClweURuRk95bjtndG1+Qwp6eCN4V0VESiZI
MmZWJFdKS0FubCtObWw+b1FIeTUxSHVGamJzWXNKQkVzJkg1ejAxJiNaK1hBdE5wP2JZQlB1TXsK
enlaR0M9eFVoNmdpITI8Z0hrUmRJNkc9Py1Qejw2ODs3RDA/ISUkbE5gVzUtNXVFUHZjNlBSQGZJ
ZH5aVmBDR2tTCnotaz56PWhAYGNabjA4VHJwZlcqWmpyeXt8IVZVbFZ4WndwRSM/RkxfXnxiVXY8
UlBVbzJBNDQ2THk+RWU/O300ewp6e3AtT3pvJjlqLTJRMzJycXZRZ2I/RWw1ITlrTn1OPClQamRW
aDB+eSRBVzlXIU1YeVRxTztgVVR0YlVIWDFObGAKeiFlSnooIXo0LTZBKTFHZW58ZGYrSkgqYVUy
eWk4emYwcGRGNypiM3AzdU5tQ0tVZkNoampqUkllR0hkP1BGYGdACnptN2Z4cGQpdUVzcjd4TiNY
PUlqeztRMGo8M3FtSXtQUmArVl9SNH4raFc+ZTZMaW1iQXF4NTFgYkZLWFh7aHR8cwp6LTghK01N
cn5ENjRMcCFvTEFKYWJmflpTVEMmREhgJCNYZylKeEB8Rjl8O3owTUdYfiRvVHpUdC1VNDc5RFoj
OWoKejBkVkBEeC1gSyUzeW9VRE1aZE9uZCRhKTdLVzVgIUltNTtUamJ5TkhXdEBHfC03PFROV1d4
PChMTzBfZHU7an5FCnpRRU1mdi15M2VDP1k5YHZeZDAqQGlDdmh0c0o4aX5vclQ4SmJATCo8TWVG
UmRIaWQheWVSOG9BXldmP1Y+fUZDMQp6JGJlUkcpWGo3YzEofCptZ19ia342TWh6WlQkZkpOVylg
IUNHJHB1VEdBcFU/I0BjNXdjI1l0TSZhRFokSGE5ajAKel5VP2kqOVNubXB2QnV2d1BRLW5CKDVU
YXBMOVA8NXB0eTZxcTAzIUVHP2FNVjRRPmlzJlZhbT89fHZTYiRIez1qCnpXQE0xY2MtIS1wTWJI
dH0+aitGIz0pKVBNcTM2dy1wPCs5OWd2R1UwNkIyZHtZT204NlVWLVVTMkdIbVFzd09gSQp6RWU+
T2VFOGkmTmtvNVElaFghfCs2T2RkbkhuK0ZicD9HO35IUjFYQXcqckVISSEyT1cyYFl9QSNeQXUy
Nyt0dGsKenReZHQ+eVFaZn5WdzxUaFJLRHpvcjZ9Sj51YnZSfTVLOE52cGdZNHNGamhzVSN1JjVj
KFNfcmthO1U7UXslVXVfCnpBRWU+U1dpXk10SHQhKTwrZUU3Rj99QGw1VSUpJl5jTTBIajxHVnhu
WTFJP1hzSXhkI3htZT5ke0h+e0dhdExLcwp6eGxmfDF0SVpAcU08Q0RmTz5nUGpYaWRtUEhpQkhV
TVElNmk1VVN8LXNkVXF7T0UyRntjJUIjR2g5KUNYfENDcUoKelNKJkFrYSVnX0EpI0V6OVNqdlV0
anElTyUwYTk1b1F3KVNlSEYhe1FrUDhISEVJNHtIJTV3QlZmaFVZU2k5NGx6Cno8JUoqPzV7OHR+
dG09UmVWb3YqK1NyO1ROPkZ1b3B2ODQxYGRzIyMyYzYlUWEqWU9gejVVJjhIN0tGTEc+SFJndQp6
O1AkV2BDZEowJikhbmFXQm9QSjRCRUFBcHdtI1Vxe0ltUnIxPGpQNlJ9YWFmTDUqZ1M7Y2tjZ2Yx
SUV5MEIlK2kKekl7dzBfQ3NFd3ZfclQrXkVacDA9PWdwRkR3PisrIVM5fkF4cDZjP187TD5mR1Vx
KjsmQjJnJiFOPk0+X3I4ei0zCno1IV8oUkw8WDBRRUJqfTlwUTdSOWplYEdJcDc0MiRUQmZ4KTJp
MDMhdVhtNns3ZSEjcjRjZ1c1RXpAO3tiSShJWQp6O0VlXyFFcjchSiExfTtiVGN7YDxyd2xifk0m
Z2Q7cEYtTSRLWXRFOXxKOyNQRm03OylveVd8WWNWcHFBQV5OR3MKem9zTGF5TGRLZmMzYk9UR0lQ
PjdvJW85MEFgJmBYV1goRUQmMz51ZSY5OzZyQShEZEJnSihtWjhAV3UmQTVLRG4zCno3UmdFdW5G
KlFiTWtQUTM2MWFqY0U7Jil3MWopTT9BdUhRV1N2IT54WColfVZJWih8bmNCdWpCTl94bGhEISF1
LQp6dDBDP0JOYFItd05YY2FeQGFeWUNrNVBSUzE3PT9XZy1NcShKWlApajdHTXJUKTNyZzFJJHom
MFAqLTxrQzFxO0wKemVsbUdPKHtZYGVgRT18VWZSR0k0RilrSXwxdGA3RipyfXllVyYzLVFJWXVv
JnVHJig0PH1KU294azdgeWRkZ2I8Cnp1aX07TEI4RW0hckJATHJyUWJfRGc0X0RsOXZBVWZlTT5+
dlFhXmdDeGh4b1k5RTk5PCM/N3p5KmUhRk84azZAMAp6aHZhVm1QVXokentgVy1Za2lzQGB5Pm9R
S1k9RHU5RHFyOXFrUl9+V25NKHQlJj1wbWlOMXp8JndOUlA4ckQqY14KejtDPG1uJnVEJElaI3wy
O0NKMyVCNVJARz97ekRmZSNmdFhQaXJMZlFDRmhlMSY1Vzh9amI2dFcwOW1TaHNYOyNECnojS1o1
OTJTMmd9WWN7K0c5TkRKczhWUyNZOzZkdXZoQGBQKlVvcFJFS1lifWczPFFjKU9XVEJvZDlZZXBM
ZEp6RAp6PTNubGUmPzRNdFM+KVk1OElqSnlxYzA4bjslQXxjTjc7cT1DV1pnMT1lMkcmKn17QEEw
cE09KD5sRyEhSUJ6fSoKel9vcU5kKExRKzVLQnZgbylQcU0xJVFJTmUqeUlZQGNEZyhqIUhkPj9y
NWw4cmgpJjRMWkYxZ3VyPm8wMjc8Rll1CnpwKVctSWkwbmIkS155ZmFKMjFXdnZpLSojOGYyPGZB
fjZnbHlDWEA5NU9fQVYrTl5SaiUmXnBAOVpNPDBwMUV6fAp6aUIqNygrRVk2Mzd6JExMa2B5LW9f
alEhNl9GR21JK1gzdCRZUTRJbyskbTJyRX4hZmJZSSV8LWtNY1JlYUxTfHAKemVkSj5ZKWRuVnFD
IyhURTtMbDZwem4mXm1za01jOUQ+Vlp7e0ZWN0FOYG9PJEc/ZD8kKE89dDVYJWgqVlFYPXBUCnoj
ZWA0WWYleUJCQlNrTnE/bkxINFleaExMVC05KCRKI1p7a2BDO2lydXtITExyJSM5WHc9fnxmOHxz
bWNfTF8ycAp6JWZUTUtefVopaHQ2I31FTW9PMF9PakpOcEhhcVNqP0BSeV5oalo/SEhMWms7OVA+
IyFUNEdzSU8hMlRPQkdJVGIKem9DJElYO2VHJGNkelZGWXFmN2F4cz9TSHVpTGhaTlJ8YSh+RiU3
TX5sITVQbmFoWHZacTA5eCVeWFVpWTgkKlI4Cnp5VCFSaFZBNmltWGl5UTBCYGdsR0N9cHJjJjMp
WFIza29GIUU8PHx1RGZiNFIhKWVsTERweW8zOEtafn1CQH4wIQp6aSVvbyVqYFR4PnRBQXVuKns1
d3Blbm08RTdfTz15NSp+OV52amRnVEgxQ3cjK0F7Z2cyKz5xa18yczNyV08+PmUKemlyMCg5NDVy
M2g5VmNOTmw/UkJRI1E+KTFWTys7RyRAa1NAPHxAWHI9UUp0fDYmRmpWUjgoMCZWZ0U7YmslNn40
CnoqO0ZNdUgte3ZEVTVXdXYxIShSZ1lIQ0JOWXVEaWc7aFg2O24qIWlYZn5aMUxfRk5nJChjOVZk
OC1kKVd1NE07aAp6NSVLO2BjZz01MkVJWEIlcyFGVSlSIV5PaF88UXlOVH0kM1ZYKENMUzBIbHNm
aG5TKjRZSHBiWiRkRCY3e2R6ZGQKempfQHdra34/RE8teX0oTiUydW16ZDtZem9MfntpQT48TGE/
S1YobW1XV3JSVWYrVmorRUVDNWJoOH1MNClXbSQtCnpDbSYhcDJ4bEUqR0t6bC0+U09nPFIhYFRP
M0NKamZPUX5rOSREc3pCTjJ+NVlWRVJKMEpvMG9TSGJZLU51P1Jybwp6MHI9UnFufSs1NiYjO1Ul
Unk1IzFkJj85NVo8RlU4MGF9IyVxem1aZGgkPSE4cnpzQi1TNnBXcEkwJn00dWlgJk4KenBmQCt1
TE8jSkRXUShLWnFuWGwyeyZwM1NMTDdBIz5fWXxKZFNzPUE0TU5GO2BQKEBtRTJDbkw2REVvaFQ2
I29WCno+c19+VGp6JjVCLXBraitEZGpjQkhfNyRXJGpqeG9wSHxMYUJsVksxOUVuKk95IzNxSSEm
RT92JG5jcjE4Z3UrKwp6Pyg7UlY1NTl2JF5fODs8PEo4PVFkdkZTb3NOQnZOTyFCTlM/KUx+U0tK
b19DMXVpbnpYenhSbSFKMzY9Pm90cV8Kenc2bmcyNE8hPVMtXyl4Z2skI1VPUlFFLTVYUTM+Tmts
fVd0Y0x5XzZkNldRczc9dSplPERyZjMqam5ORz1uWEdgCno9JC1udzh1N3tZTUVXR3ZlOTc1dG18
b1BhKFM4MlFMdCUoYzBqKkhaUnlfS2ptIXcye3szaz4jJWtOWiZpN0dicgp6LSQ3JWVjXnFDMmdP
ZTA3Pkc1XyMjb0VUITJyNlRfQGs/YzV3OU1vV0FhYlpjJTBxI0piKncwP2E4MHNsVHhnMCgKej17
QFVONDhQak9ARiRvMDJxZSkpbkpLcHNKY088MzZibTlWeXMwRGgzVUIrfW0yTGtoI1dyaFZfRyg/
ezBYY3NzCnpjMkM8YV5nO25jeXdONmQzTnQ8MmlnVmVRazRpdVMlJjl+Vm84KC12aFV8KiNvJlZJ
JWBqSSlZRENTRj1JRDtrUwp6diVtXmczKHUmJEJEVHcleGtVO3BURzF7fmQyaDA2cXotdHgzeyF9
OCM/KW9FYzYpQ3wlMnh5SllFQT0tXlotKmwKejZKJU1sZjdONkErbExrO2N8QlBBakg1Sz47flp2
a0lNKnlkQ3pUTS1KbHBncUp6R0l+SXU5a0J4aTA0VV4kU3EzCnpBc1B9VyFPMlV8RnIwcVhabC1I
I1daUzcpOWojWHZgc0VCX3NIfTlIYX17eXEkQkVncCNnd25+eDk8THd6XnVjZQp6bjR+JGx1UW50
Z2J4LTs+OHkye1Jub3pzOF93TCVEIT4lQXcwN085S19kdCRlPjUoRCRFMks2ZDFKVjhJdkBKViEK
ekxBenw0QnNvNXNjYSEyPykwY2MqWjhQOzheP0NaMUlqen5YSWxaN0VBS3pLQW83VDlYQztDSmRp
STQtJiUlPlEjCnpIaSZyWUM4QHZ2QXw4dz5FR3N1N3RWJVJMUzRuflVYKFJZQE1SYnwxVFR7MUQ+
ZjlUXitANW5qKVZ5IWVIcjdzMQp6aWRpem1KKVg5e0A0NCF7QSsmPy09PjZ3VXlpb297VD81M15x
PjdCdT07TlY8TD5hd25qemFlVzsxWWdIVVZRUlgKekE9RiNwVnVXMjNMRmFRbHJlKE55RD1NdXQo
VUpvKFUlZllDPSMwITJCMVEyYXZfJjArbzxPMENZJSs3YDxoI3g9CnphWjV2cWVRUGlnd2YkbUYk
dkJ5Q1hiIyg4ODtSV29BaCt1dTk+d3wjPEFDTUY2Pjg5UGVIKjEpeWIzI2R8RikxUwp6TlczY3Y+
PUdFYj1oaiYjWEh9K08+bCMleFdBa2VZTn1mRzkxPiZYaml7Rzl5bSs0XlpJfnVtUU1UO3B4ZE9v
bGoKenh1KihIZmhxfmxjSjYwLVFZdXB9VDgqM3JNb2JlXjlyenRhIXpQeGBYOVZWJWQ2ZTM9YyZ6
Qz11fk1nUE9aZ1hICnomY0A4TmFQTkRxcW8yTEpLWTV3dE9oViRVVld3O1V4TmV1VyNvMipaKHIp
ZzVqZGlqcUFCSzl2Z15HUE4mYHJtSQp6dGY+bmZ0OXFpQWVpVVB8UXNVRzdtZzhkcWYxTTFFaEh8
RExKbiZgQzRRT3s+YmJRZl5eemBfPjJ7UDZEPUJOO1oKemFIMmBgYG8qfk53PWRXKkE3XkV4NChK
M3hIN3soUzZhK1NUSzVfSFFJYDlHWHRWaSV4X2wzeHQ1eDhGajg0b2h4CnpgeDYhIU1ZOSpEIVVR
ZGF6cWE8PmR+Rj9pNXlZK288fGxCWHIlPGdMYERRKTx3YFRBMnZaNS08e3dPaVBEcCpNSwp6M3Yh
Yjk2YnBpMk5vZVAzdCNPblheSDJEN2VzJWpvNn5wTFNCMUghQVA9cURAKjdGbXleKFlsQVg3Vktz
d2pkNGwKejRASEVBTHxubHlFPDVnPm4zOWF6WFZvQTdvYEd2cEV0SWVVcVVSbz9gSWwlbkBJZklm
WCNFUFNXKlVVeW5WPGd9CnorSD9Xc0BgQFE4Mkw4K2F5c3tDWEJXUT1ve3dZY2tPPkp5ZUR1TDNQ
Y2tEcn47MkA0YHc4bnI+WEMzLShPQWNITwp6S1BfMGVpYzUlKFAoMk4oUW1sX2ZiLSZ1QDVHYmtH
RXx8I3U/MnsrajdWIXx5TnBfWkJZfV94YkBMajU8ZEMmUE0Kej1JWWt9Y0Y0NEBnNS15dDhxT0VQ
QXxeSjtXVHdkKkZrJDNhX1pyRHcjZXp5RSVtLUwyLWVGcnpmKH1kSzV7c2VmCno4dnY9cGIzdj1Q
c314LXMmKnpBPENXbG5RP1daVk1sM1RZZD5jNX5GZTRVRFk0KXVnVE9rREE8Qm57bGcqYlNuPgp6
cFNaWDhFRnUkSXdnQntnVD5oJF5fQVYhIV55S3NGOH4kKWJGeE9YUGc1dW0wPiVLQjE5Kz1IOXRS
TCQwZEc0RigKej1GWn5tUnNMJDlHKnsrelg4OUZYYHoyUzdCXjxlOzwrd3pGYmhwRlA4MDU7JFAl
PDxCTXRGVWYtWns8V2tST31CCnomPypmSFR7WkRQUmVVeENebHBVUkhVS313Mj5TO2BWaD02ZGtI
aHFWe2wldmVqWGkyMGU+VGo8dF5HQnlkQ0czagp6cU4qPmZscmppRkZ3dil6JUM0aVlRKGBXUXIw
RiZgdUdwMFU8LSpBdFpLMCgyLTNuNnpgdUc8O1JoN21BTXd3O1gKek99fnxjXlh+Uk9PKnEpflFp
NThEMGFOYGh4WTZhWnp4RlJrUFRGK3kwdjh5JE45UDZLbFFEd3JeWV5iXnBJN3Q9CnplaiV8eVgq
TFRXalYwTjhRX09CQkQ+bC1AM3B8KW5VZHM2cilVc1VfZDBVWm5AWX5yXjRgcCpydE8jfWUwXzg0
Kwp6Vzc4KyskN3hXdCZFfFowT0xTdDRNSldFY1p8JmFyWj1BNkpxQnZ1LXNKcWRJUip0UDNiQzxZ
Vz1SOUpBbWQ/TnYKeilaSER2RUBGKjUtNWlme2NBc1FyODUjK1hHRHo4fVRhWkJNWWVeU0tRRTdZ
QFVsWWdWdm1zYEtWbUVieU5DaFBDCnpZd2tIfDIxZjx5PEBJMlRgMEx9T18/ajxhdkdtOVA2YXIh
Uj5zME1VMChwdUl8OGkzQTNaVFpzb3x8b3RBJmFWOwp6dmBkVk5OZm1zZGIhM0QjTztjejFwP09h
Vj1DfWwtVEVMbGlXJlg8d1Z9bnBod1FiZWhoQz1vKT40RzVjdVZ3QkMKemA3cVd4WmdWRzA/O1RD
RjJ4dkNLX0hjTVBKJWMlN3dRcylfVCVyKjJWMmg2bz9ZYj81KGh6NX4zNUpyaVR9THsjCnpxWnVA
N0NMKnBka25tcmpQYU9nXnlWT09mSn1IUyZBITY+TlI5ZVgjbnVkQ2JFRkFCTShiSX5FTW1fZnZp
JGVscQp6ZFBtYUUlO3JvR2YrSnt1QV5OISRCd2Q3ciR5YGt8ZzwhRHIzSnopYkBENHptMWNrTENB
Y3hmdHE7Nn1NVjVTOW8Kem5LTUwlQHZ5bDs9dyVXTU1ZbiE8WH5vNWN4c2FgTWl5X308Q0FLQjdS
T1g3Nm4mT3pfTEYwYkQ+QSN9NCV0UXp0CnordjFaUT1yJn1rdGthMF81OX1pRjMxIXtpYC1kNFVR
OGB6O1oob3ZRTEE0MURkNUNVQWxDb2g+b3J2WGRsYzNSTQp6cTdpR3g4eW8jX1poKiFteVZRM1VW
bT1EMEF6eWZOPEpuJmNGKjwqMmhXNjs2bUxuaT5DLUJ9eUp8ezVLPHErNyEKenp9SFNwb2xtdXVP
IWkjfWFOZnZIOS1VbE5oaXBGTFlsJnVFOUp5bEE2Zig1XkgpSlpHJShuUzJDUmVIJlNnVT1mCno/
O1pTZD15eGRvJGxyMU5jQXJid0luTTVqOGZvX01zcDc/P15EVyQ9ZFEkKS1kPWwyU2lkYzJsMCpW
KCE1MytwaQp6VklLT3NhSUR4LTJfOEJXVlB0P05ieDdie2Vuc3lodjUkekQlRXd6ZExtPEdPMDgt
Xjc/JSE7P2NfOWJ5U2VFTzwKencwfCpqbyU5PHBjUFRAUHl1fT5gQmQ3O3tgLU44c0RXPyZCWkdL
XyttN2pmVmA4JWZYZUxPZlJoKSZCI1B4SHlpCnpBWTB1TXxCOHM5Y3dqRFBCSClUeFVtKTtCO0Qt
I19WMnY8NHYzI18rVj0lXz5eZ3N9fHNuaGstbWptISE0K1RJagp6ek5qcHVpNlFIKGNLIVNkKVdK
NUZBY0k+MF5vQDE+Rn03Kj0qTyV1JkwyPUUpX3t2MUktKWduejFveEwwRHBxYlIKelhkQVZjVjN+
PjA9NHZ4aTRjOXcyYUUzJUxUXlFzeCFjR295VmI3RlJ7cERLQztab3BSPnVHY1FUd0F9VGdSWDM0
CnpKZ2U/UkxpQSs0Izx0ckpNKURXZ0t+O0tAZXJHfkhwUyZGKztwMn1kV3pXZTZKQTdFR19eaTtp
YytRX0JsOT1wVQp6WjtlbiRJfl5Sa1FLSjRQSkc8UTNyPyM/Ujg9MntASiREQk94KyUyRExhM1JA
SSl3eElBQ2ZEYiZVNEdJWUM8QWgKemYkd1dXMSYrREB1cz1GJCtVTyk+bjlRTipgR0BfUnJZOzAj
TEtLeU1QZ19gI3U4dHlwUDg/NEYrfnlkYHp1KT0rCnp3SWhBS3FyNE1pVSFBQFd3blElM2ByPH54
ZiZ3WUg8QU04YFdgQkZ2Z2RfQnsqN2p2ME8qfXRLUlNLKWN4clZ8fQp6NW9oJTh3QyVmSmpufDRw
UD0jSXBjJklOJXJofFZuKGpPWXhGIyVOOSRlJiskd3sma3QyMFdRandzbnpoT2dkTnkKejMxO0Fh
djVCZ2lWd1VyVSM9bVV5NSYmZmhRM3AkTTRpSil4Kl9hb2JAVTtAXi00X2V6MiptcTV4O0RPTXBv
MT95Cnpefi01KmdvPF8weHlfOG1jSnRCRjAzI3pQQTtyZXY2Q1QqNTJveFcmb0BnXiZTV15DUj9X
NSNHKVA2VSl5eEM3awp6UzRnfDEmaXJuQ2B9RHNed3Z2ZGttYUkwSi03KEByJXNNZWlYfUI/VGxX
SlJ+e0A2alRTYX1qOGdiUldwOTx2ajQKemRzR0FSN1NSQGE0eUpxZiZIbztNOCV+VlFVc0pNLXtn
OTRwZn0mWVNtJkkoeDtGc09mI1FfWVZfRUxodGZLa2d3CnpKaEZCQyZzRzktMnN4fGt6M1k3Kio4
SURtbGlqPzMxPihiM3tiTWY8ZHpuYEo9SmtBYEE3d2R8RW0wV2tvJis+Wgp6Ri18dTZMfX5IJkw5
RDxmRGRJUF8yVXZfUVkwPkB3N0BSSVBHPkhtPiF2fSVwKiUzWnlHQCpGR2VaSUFAOVRWUlIKeiQ5
IyQtVWYwYnptcmM+V2dBSnhwKkxMIz5NO3pvTTY2PnQ9VzZfSE9zNylVPEdwJVBBI0N5OVFeZmJm
OWxnflRtCno4N2VWYnEjamp5TDJGV0t2PENSdlRJTUkwSzYjQEslbW50YT1JQUt6JC1HUT5hNENz
d1JRej4/TEktdTQmKXI2Rwp6V2VxVVFmfSt2entVZGFuU09sO3dZQ1E7Vy1AXzYoTSU7TFV4aGZV
bDc2JUQlLVA4PVI4ZSVicUdsdnQweUBNVkUKendzU1o5bWI3b0ZAYChxS3dacGtQb0xQVDErVj9G
Wko5eFZLUS1VMjcrTGlCWWtvamd4PFNeNXcjQC1yVmc8TWx6CnpEUkNwVXM0SzZ4VFNCazhVeD05
OVc1eCY5dEwjLVY7ZHIyPSlKfiVCb1Y9cz9lQypMOHl8Sm9IeDFwdmNiMWliMQp6MHU7WkhUcEJ4
MClHYkZwXjErZ2FiJCppfEZxTXd2TlVIMnt4aCsmOCp4QHoyUEctS3ZURWYoUFNudX5FO2hYPj0K
emYwbEY7T2xzJkQ/KXB6IVl5Kik7SWZjYT5icFctQit9SWUlcEJ6bzlTWXUqIU5qeGpvR3BiaCto
bXB+Y1pDMjA0CnpnaCE/Pm1tJnpsdWRnV2hReGJkQVZpV3RRbG4qVi1LbExDMTFLc3wxSjFJcXs4
aypyQSFITEMyZWZseUJBe0dnYQp6ZHV7U0wkaUlrbzRxQ2xZXlNTb2omcVRkNlc4SSlWQSg8dD44
TCh0Nl5WNWJRaGI9KUhAPmByUXtOM29CQHhsKn4KekZlK2RMTlJTQD1Ye0xpcDNmXlMrPmFMPXlg
ZFd9LSFDM3U+cWtnI2JXdXFsdEZJKGF9YClgeHRDUH5HIVQqdX1kCnpnWGVUITdhelhNd0dYaksl
SFE8d004RmJ6TEN4X1NtSmFEWmZDak8jaH05NE1mPlBAfXd6UjRyaWFUcGIzbnBnMgp6dFkpNVFY
dXZwJHQ7M3ZnN0BwSEBPZ0V9UW8hZk87STBPTHgxVG9XJj0mJTZgVGpZRi0jZ09sYGY1V2RZMj9y
UGgKenVpNWRUMS1fV2dveXBwaEBHciVJcjteaVBmLVUzMHJ1PEEhcnBYZX0yXmQydUtCbSlxWU5G
QjhGd2hrZT5Hdj84Cno+ITw+M0A/cnI3aWY5MlhvSU13NjFTbkRSVmswNXVEKTUqOShCX3hlTmZ4
fSU1a1VXT2BrcEpzMyZ2NHl6Z1BtZwp6TUglWiVqb1dXbGhESXomPDtGN205RHtCWWBeMTtEI1RU
bVJHRHxkSyFGVnJjODA1dilgUSZsVEJnRmgmNndnR0cKejY7VWlvKntEbXA1VkdkZ1d6R0JwQm4q
TUV6KlJvISZgUFludkhBcSNwOGJuTkIrbWo+Q2gmJGlDbl9iZUQlZyYrCnowWUEoezc2O2c/dylQ
WHA9SlU8QXhQPSZyPERXZ00tYWckNlhKV1VzaVNsQEUpJC1YLXhhPXZ7OzZEY2FPezZiWgp6NHhB
SylJVGxhdStKPnhYPj59OHNMcEFsRVhHeX5xZU1GWGZ2eDVmPi19NzNpbUNLNHpgQDh3YXQ3I30k
bFdhKVEKemw2c0MlTjZ+SHoxXjJeQUtpNXYpPGhld3NYQzUzJFJhQXohaypBUGVCcT1QYmo/fig3
dGwoTiM/cF9ARyhgRHJ8Cnojelh1KGU+RkFDKGhNUWktPkA1YjdjWjg7RjI9bGhNangpQUtzbHQz
RXx9Y3ZxXkV1SzRwbE4+RWFJPW1fWFV6eQp6fDNVVGozKHNJbWx6TTFeIVRnUndrM2Z5eXotWSZC
K1ReZkZqJjg7Qyhgb1doNkshVF5KP01SfDd9fG5OUWtJbHEKej4mWXxiIStLK0ArYSRRWlFjcUZN
Z3BpUWZ3TD16bSt8WnZmPVlKSUFQbkkwTnRQR2IoODE0STU9UW47ZlV6OGJCCnpxUk9rfSUkRH15
KjFWX2w9TlVSI3ZEdUQpakBrfXl1VD1KYiptKFFmUioqeSZqdXhFejE1Yj9RZWxkZEpoPSFxKQp6
K3hzViFgaDIxfGhPfnNrIzU2TyQ1clI1eXAqOHtjY2R9T0RQV2tnRWVeeC1vbSFFY0NVSThxTVNv
MzY3cT53LVUKemFkeD9UJU99WlpvJFVeTlYxfj1BQ1Y4NXAoVnJJMzwpSldwUj8hNU5HI1ArJEE5
Nk5QP1E8PlBzKEBYZmFyKjFyCnpgTSlnKFRIZT9jYD9gcGtnKmwxOStzfGZjKWw+VGlQezV5KXhE
I3BpMCZCcSNMdlh+RyZTWHw+I3xaaEYpSkkkZwp6X2YtNVZEZHRHTzNUX3I8RTx9NyYjO08tSVdh
YkVzYiNANGlxPnh8RzxrMSs/T09SVkwrbkF5dj41UF9AfEQhUXkKeihkSmF7bT1GMiZtQ3I/fFB3
NzQxP3ZCajFXZj1yPWtibjlWaVd2JFVpV0V0ajlFRi00VDhYSFR5cHMhOD11I2kpCnp7M0clcVg8
UyNuMyZWSG4wVk5FISVzQkUyLTt3Pz1FRk91IThxPj4mX0UqOUlgVDQwIUQhKmMtb05iXjhHSUNm
Mgp6ZklXLWotLSU+V3pZOUlfWiRqKD9QPEd9SGsmNFk+VGZtVDFmVyVNKWl2PkxgPndhcFYzQFZS
Q1BTYHw5PDg5emoKejR2eCFkNmVeKjUkS0E2UE1jfTFYSUdRUH4wbj9Me0hqZ1RJPEM2TD5gIThG
K1FPdGVMIzZ2OFhVRSNZNEVIajFiCnpxXnlfKlFIenFNT19QPmE5UTU7fkRuSUwrQCVyUyFeaGso
SHFuQWh1Q3Y2eCV6eTE8NjNAVEBKR0slKWVIfVc5Qwp6OWwqKmxUOS1pPkBXYD18KDZWSWtrR18p
QDk+TUpeak1pWXhMKC1lUHlsb2BXVUorfnhBWk5gYSV9Vl5qUjtOblQKemAmbElJVnE/fjNRTDAq
bjEmSWR7ckZKTUcxRHtKQjxLQCVtLXFgeHNfNm84ek1sektleVdmSmdGdD0/byMtaj5YCnoqZTlE
ekZ9e3lvVDxAOXI8OU4wNmtxOHo1VGtlQ3IyXjB4aCh9fTVhekpoN0AqQ3VvfHhLRHdIbHp6a0x4
ZGg9Swp6aDRjYktfaThfXzNCYyZeTmhKbGpOa2dRVCk8d2RqNj14VSl5eF58UkVSMDgyYzx5OXVn
X1M/MGZ5UzZKYilVZTwKeldjWHtZYm8zRlFadFV5OyRZUD0mc3QxaFRpWjxPaWRae3RlcntkUEVl
fHtoWHp4e192JG58QlElKntZNCN3MEN+CnpXQ0A+dzlCI0slKEl6PURjRHdqZFVIYSh9eXUwKGFC
PHB+bG9VVlhsVGU5Xj1ne2hpfHQ+ajRabDF7P3BKSGd5Rwp6dmxhZ3EoVWp2YkF4bk9OQiZvbiY4
eXdgNGpLSzhMN2Q+ckMlaigjbDJ0SHNKbihNZCM9dEEqUz8mTmElUkctVHEKek1yRnNKJitBZ2ZD
d2pJV0d3LWR5OGRYfURfRWxaU1MmWE5xZ2JOVj01RntUeFlvY2I7U2MhZnhwQmcmQ0duVWJSCnoq
T0lscjdpIXB+SFFCKSUqSnpBTytHSz03TnU/cjJBJjZ4NUJpSWZrQT9YNjlzQUopfG4+KSVxYS0h
ZnI8LVpNTwp6PlFsQlQhT01aPjFucCUqWFojUmtoayNgQ0x6QUFLO1FeeWAqZS1iemtITjlgJWoz
LSQkVHx8JVM3bHV2ZGtxRlEKekxnckFtYnV5fn4+UXtHXzx+YWleJkliZGtgKTBpckd0RTZVOTFo
IUF0RWp7c0JSckEqO0YmQn5kUExPfTNNc1QxCno7Ukt7QUdxM2lYUzd5ekVkbS1RTENsfH15RTJE
Pi02OGhCb2pkdnM1QnxVX1B5U09rcGBHdWhRJGstcGhIY0hAQQp6TENRdVYlckQ7aXZGVzIrWTZN
MX1eP0syc3p7SD9PdzZXMzUoWTdWJT4qUFZhVSVXfElNdGB1ZjZyWnYqcyV7PDMKenNOYkN4X05u
X0wtaF47MF5DQ21Oa3lwajNuOF57YTRTXkdOK0Q0d1Q3bSojO2sxVSR4PUVmN1U+Ql9QdzBrRDhB
CnpHJDBIZWVAO1lUVEZqcDRffkBTc0FHe0dEYmI+cGdoLVkkMkIxTElSPWY0aHJGLTxBdjdvYig9
ciVAP3c9YjF5ZAp6N0ZGd2B1c2JqM2okeXdFMVp1XmBUQVIldWlBVW5Jd1UqeHREdCU5eE92PSZI
T01qTEpaMTxUUjBKeCVMWHJVOXsKemwybyFASHhEOG4tUnBwcHA0RHxqSHh4b0tvdSRmP3FlRmwm
YSRZSjBTOWpTTUJuRXAzdntNQUtFQSY3KkRQdlVyCno1aVpBRHNVcG1HNCRHc1d3JXY3eVBoVStZ
aE9+a2MzSiY3OzhyUTh0YFp0Pms1WHJ+PDAyRlp3VVVSN1U3ZUFQVgp6MlhBYHxWPV4mPz1qP3s2
bTN+cEpqSnJ8Uj4tdz5TczUyPmlWVm0+UGBtRSY+cHh8JGYhfShLT2ZmK0FJTSt8Q2EKenh+LWEx
UkF1T1JwbUpMUyFgZ2dfP0l3Tk1XVFBrV2NkKTdQY1p4dFZmJWN2LWs1d1A2QUVxUGRxRXA7T3ZG
UX0tCnptN2lCeCptP2QlX01qTklGJT9LRF9wbForKU5FK0VDTyYxfWFmLU5iTyFxJTRePDktNkF8
VWQ7SnVIKUgzQ3IoJQp6ZWZwOUNQVGk9PzFrYXBOX2FXJmdUMHxDSmFmSlZZRCMoPCNCI2lXZ1BQ
TlUwcnEyZHtKSWs3NW0+Qmc3Q24kP2oKekh2NjYoWWZyJTh4PHsjeFNaaGwpMjVhWE5sYX19cz1j
aWp4QHhvKXhDIyU5M29ndE1XeGJRLUF4aVdoN1ljKFJmCnpsNTxSOCtXVjxRUXtkdl5EeFppKF5m
NHpqUF5teytePmZtI3M7YWIxKCRxckFqMHQldV9USm00I0YmWTcxYSRFUwp6X0MmZnBzSEApK3px
JFU/KDF0fTxsI2h6OHtLSTxMWHl0b3tOQVpxWXY9YnR7SkhZaWJrOHMmKWc1SThRMllxbzEKejI8
P0lAQGBJQ0tNQStwe2FSKWFkWUIxaHlmNC0/OCt8U1B0TmxQWXd4dTJhQUJwREVRI2E4ZCM2QEA9
VGU5LWpnCnprdVVENWpOJlZMQlBQZGg3NzF2ZWEzNzBnSEBoUHQmWl9qfCR8Tmt3cCg/QWo0d0x0
U1RXM145IXM9UE91fCVXewp6T3R7YlVoNVk7TDZ9Nn09eHRTb0JWeG5ELSpyR3tEM1cpe2dYSW9+
JkExY3lNaWh9Q1AyK2JSOGJ1bSNhRHlYVSYKemR2SHpWVGI+NHItd0hDZTgxcFdaaHVXMGMxU2lR
JFRWc3ckbiNqSVQzWkxWanVQbkIqJj1WTDBHY3dPQVBpPVV7CnpkcDk7PmlraEI1ZEBsbnhKT2Zx
RVJVNS1fQmshbiNON0ZkfkJ0ZGVZdW9EaEdqZDl5b2NrWig+KT1temV0UEo/JQp6dDVBP1RuLUNU
MSRWayVUWT1tfnxvPzgoOzI7eyhzM0xeUXNMQjQlVGJQYWxQNC1UMV9qPClNREdFUEY8bTNaPWoK
ekt8bE1uTV4kOzFReGwxPkI1eTZyUD1QUGArfnw7REEkQlpsRiEyLXImLSZ6dyRgSC1pc0tQKX1W
aUp3dkhJPWt2CnppfTZSeVdwX3ErYURFNG9mZ35HWHR0eW9CKUYhQkJhSUpwczYzVWBidjkxcFdZ
Wjc8I2VQTm9DQyR3PHpqUyYzVQp6eEIwNkI9ejt+IVBARldOcmwrMSFWYDVqeGQlNWlmNjJ9KEZq
eHFeWmRjJkE2NHQkLVUrUDZ1eWo3Rk9sY30pU0QKejtga3JOT2pZWW9tRihJbzZ5a2tuZ3NwXylP
JVNVVkxLWkVxIWxhflY2Xm5fRzAja3BwLTc1fDRTZStWKmNSeTV9Cno5ZnhidVFyaSkjPj9GbHgz
IWpLVWhua2hmMm01UW9UVjFHc15yT21XSmRnR09iZmJIRTNDfnJ+SkQwZ3pqQUs5YQp6dGlFb1RC
UEVqVSYwR319TFEtTj5NRTF4c2RNPihIJFpXS2g7KUgme0xCT3cpNW0qbXcwRFdiMGZ0dW1SOzZW
JlQKemN7WUFvPHczK2NPMTYkdlNmKEEjO3JVZD0hUSZtJGtHKXxFJFJUT00hSUhxVHhYSSFfWSQk
I0dOPn5Daj08aTQwCnpCSWJJUGZgNzhXYFp8Z357VGI9P2Juc1drPn5rSnthSisobj1nMSM9MzBU
cnxjWTYwYW9fWV45KEc3V2pqUzM+JQp6PSR9bH5SJH5IKW02OFdPU34pWm5vNV9yZyhxcjt7LVFa
andSe1BkbG5zOzFSQ2EjI2NuISg/Mkw1U1FAMnpFZ2cKej5oZExgJmBMQCt6JjFNUip2aXVRPnZu
XzZNKXI0SiVCYkA3JmYqWDFLPUFkfGNlXm5lcG1wZHEpezVKKj85YCpACnp6UkpfR2chfSF0TXVP
YDxUKHspcldjRik7NEtiRHBSaktfZSFTUmNiPClDVGF0S2pzc1AzfSpmOy0oI3VrK0JmSwp6a2F6
cjNNQXZxNGtNWGA0bHg9SjB2dUdNaTBEbVUwaSFSXmh5TUFGRyZmQjtOKjduUXRGMGJZOy02KSYq
NXJrU0QKenV6U28wZW10RGktRE08XjUhNkhIYUFsSDEzeEBacXBnWmhXe2dQMDgoRmctOWFZcjd1
ISM0Yjh4aSlDWTArZTxvCnpDT3N4fnUkU3BpaVoqNW44PkxKSGZLWUV8aWRTcWgxWD1zc1dHK1Mm
d3ZoYGtnZ14hTEE9fWZnVlgwaTdXO35qeAp6MUpJQksoWmF4emJTUCs2JFQpS1YxfUtAODs7IylW
YHtHT2dOPCVTYEx9Xj48M01nYjxHMUdaX2Etb3VDN3Y3V0QKemhmd052ZWtITjIxKCQ9UmJBPU9Q
cXswVXA1eldQTTUhN0dKRU1PVWdpdzV0b2YhR3peJV5iRzQ5QiVZKWQzQlZQCnpeaUJ1QStkSzI/
bjdHLTM/KVY0cHhIclhDOzVHSTdUaEg9MTF3ST03PyZLPTtVKVB7X0xCMysqN3dKcD9WMFlIJgp6
JCtkTHg9dHh1Uy1HPGcyRGskdjUyMlQjNGN1a1g1N0kjYSM4Mz1kfGdRYEw0VE49LUhvYHc9a2Q8
bUB7cCRvS1cKemQpNC16WFdLXmMxfDY/bjhQT2doQWEkKkRvfWA3RD9jTHUqcDZEZWlEcihAVihA
bUByRkdSdjFRIUxrNEctRCR1CnpOJTNqUDZOejhBMVJmfkpRN310KGptaXh0Rj0pdHQ9UzJQbC1H
S1c+UjZ1a2ghdmswTlBxSHd9My1BPXlrTGlEIwp6TyZrRylBPnd6cSZzbFBKQ0R1fENyKnZfLXtT
RChCX19SY281WVlpfDdGWkRFcCY2T2BCMmtVJjVFYmhUaGk1cF8Kenc0QVV9NXhzSUZEanBea2Rt
Q0peWCkhZillR3c9WntaZiFrNnRKUUpwQUJFfGBWSXl8RXx7e0tqQGtXbTZrIWYmCnp6QShkcDUw
N1gtITZRfWsmfXJvflJmPjdjPkRZPDJuZiYkT3kjU2N0U2JiNlpOXnpOQ1doN15HMzV3MGxZZjhM
Twp6P04zWHlqZms3X3s5YnZveGk1eXUkTUUtLWhyZWc2K3ZOTFBAbitqOXppUXVTclJ6WTRGRHNg
Tz4qZ3ppPkhLTV4KekNOY0QlZ2RnUk00NCs3OT54MSU4aCZMUDhYdnEtNVFUcj9QWlErVHoqfnhw
U3JLX30zLVc8cUgoOSlsc1JeT2duCno8bF45dSpgPDtZWGUhMXhIbnxAN0tOMSlpNmsoPSZIe1dJ
OGNSbWFyP0t5T0dXdFh9VmQ+NT8zKlJGO1V7ck9RMwp6eVFhRHBNPTlwblNMOE49PS0yfmopKXVl
b3VQJUBTVTMwMGdhaS1rVj51QXJXSGFtPFQ0QHFgK1NkcWJDQXVsfjkKeiN5aGVqdDItNmN8NDNQ
anAxM0JHdStnK2NiK0g9bXhuWU9fXk0wPCtxLXxGYktKeWdVbDw2Sy09KVNwfWlnJTUwCnpvWHs7
TnFyeUVZQyZrMVYwK0NhU19yaG4yenAhYSVXQ0x5WjdjPjxSaHY8ZHgyQTU4VFNnY2skbXltbGVu
SjZTdQp6cmwjdjtXMGFZVEVnYVRraEJDPE9IKEtGOzVjK05zPyFNeG0kMWdUZTs8d2oxeipycDAr
PmsqcDx3KThXcTdMbU8KenxKTnZrV1N6SkE0NWVTaV48U1VraXk7eiNOWig7VlkhO19xX2ZPWGtM
QTQpajVjYjd+Rj02QkotI2RTckI1REZqCnp2UWF8ZkN4NDlQKGJIQyVPPD5vb3FMU0RrdG5pVChv
Unp4VHo8QTJCP3o9TXEpfEo2PG9XJHxCUiN4Vmp6KmJ6Kwp6STxNM3s3ZFpUYHowYG12JFMzQm1K
JnkkWipmcSZrWX5BKmdrKkI+YFlvNEt9KlR9NTFHcyNoRV9oTXRkWCFnMCQKejdVNXNoS043QSR6
bzNNQiNycn5faWtGP2c1KWk2Q293QG9jVD5Qak5KfVY3UFFqOWN6I1FUalo2b2Zkb1hVSVhiCnpk
JVUlWUo+c29yOEB3Y21JV1o8bXolezJ5dGxDKHlOJEpyNDxKVkJ6IVUlMnNTQTduUTVaczY1Yy1M
e0U7NTIrcQp6VkZJazdCRmlOIS15VnokKD9QdTZOWmJKV1lGZEM8X1VQNUhFMHlRdlVpTUpgSnJq
Vm83UTRiPigrNXZNTXxofGcKekZXWkpvWHJxMnIhN1pyXl53Mi1FNW84Y2VaZy04UE9tJCRoOE89
PjdCMjNvWnhgNiNnOTttY2lOVTshO2d4KUd1Cnp6Wkd9RW9LT311TkpWWnxscjA1aDUqdi1uWXd3
IV5JMTtVKyQpdTlnQnB7Jn1abj5sX3olKVRkez8kKD9COGkoWAp6ZWt5Xzdgb3R2S0pkYD0/R0hi
TzJEOStCMlh8NEc4JHUoOGZWdHR2cE8kJmpnWHVTZmQza01wOUlTZXJ5Ql8qRU4Kem1xV3I7Jnpq
QyhpZm9YQEotaTdENjdCNiZaP3pEbTMrSHc4akVVYkNhZWwmPk1eOUIpREl6KyUje1lBUChqejNh
CnotLXtJZGtWZTJTVVomdkEyVkpJQ0goO3M/Oy1NekhxUjdXdDk2cDQjS1huS0Y/PCt5XlBNPUNQ
KmpoR2FvRi1VNAp6Y29VPj9gJWg+O2VKIzlvOXw/K3tJK0c9O25SKmc1JmZybnV1Rz9aeCVjYEI1
QUlqUmRmM0Q/Ty1iXkE8cTIzKz4KejdoPD40Z2AmIzZrQ3g4Z19PbyYjYE5WTlpfaTBZO1hiV2J2
czNJUmBsUSt8WnBlMzYtbHBJcHc4RSs3YHJ5UHBSCnoqcHAxIU9vRXtmI0c7dX40VkxoJUlffiZZ
QXBSWEcpKnx5ZmdaRjtJZkUrSHwob204NFM0fWslWSF5JnQraiY8YQp6SUE3bVheYVJ0d2Ahamxa
NiRhJCo9OzVRI3I0WXxmK3IlQE5zMTZSVUY2PTFhUHU1Zm9TfGhMNElwS1R4bV95PW0KeipCPTdG
OzBBcypAMUZyJE98cyZYeFJWMlp2V2M0ZF5Nd2FFKzNMbHhWazgrVCklR1Q7IVR9TkRgYzJ9JXRh
e0t8CnpFRmpgdiMmRSN2aG5pZHhEKyMqQ3hJQkJ4byQwQXJNRj1IKVVye2omKEQ+WD42V247SGtM
b3xjbXp5NVRlQkFgcwp6YVElOG81aUNQTi1YVTU7YkUxfDJgfT1uclBwMmp5UEBlVmJRRE99aVNQ
SlFpUWl8QmNaWE93dj5ETWc+MD50YXYKekZ+azw+Z0t5UkVPO0xIOXIlTTkmMjM9KUlaS2pZUko9
WD12a2xVU2BgNVBTOGNfYW0heVl5S0E/XmpuNzB7YWhjCnoobEJFemxYSUJgXkgraCYxT25ydzsj
VnVvRm1WakIwdVR6dXFuRFlfemhBUFFHeSlWeD1OT0NeV2pRSTRtZXs1JQp6aXpYfnM4Xm5kKFc7
cUdGLXJXI29lVTtYdUVZd0w7RilaOFZMQEtZI3I/JmloKituVz9GRVh0KnYmY082RyYyamkKejhm
eDg9XlBYSihQUXxAKEdgUXxPdjdAMTE1bnJeWUE9UjhXTHhoQkcjS2VhRE85ZHhSbncxJGh1R2Vf
N1R9d1U9CnpFPUBzY2UzS05LKEN0cjw3Zno8e2pwV0BFZDllZXhgPihmO2R9cUc9LTZeWW9EWSEl
LW84d1lHSksqSTl5TldvcQp6OEslV0tSQ0h8YGprbXlDJEllKDdmN0dLWldTcUhXWjR8NGpieVZn
fSNwcjxDdD0pJmhqPV4rd156UGB8PGNlUykKelp3b2JgP3ZAfT1MT08+e0FSdDY3cGNJTjFeO0t9
PFc8UzJPSitQRiokKWZrVjV2YSlEZEMwZV5QWUZ2USNFN0drCno5ZUlmT1N2VkRjdlFtM1hWZWta
TXFHfWorLTchQWN3ej5EfnR7fCtzPCQpYmxwdUs7NkB2PTJAPUlOcUNIOSNJdwp6ejQ2dSlxMDxL
ZUFhKEFsKmpOJT50U2loIShvSFE0NU8rfjdxVGNEJnN1KEYpQ31+eXc2Nl5PPFZPIWcqZGI4Nk8K
ell5Z25kMHw/cUY2cXpmdUJ7PVc7RT5NTGZVSklQTnlaI2RTMlZYSHRJd3w4RGJCXlFPOygtezdC
fmkzeTNSLV4hCnpUd0BndD8jb2RJQmheMVRndlA0ZnxMTGMtY0dzMVgjZTxUV3I2WHMrZktXQVE2
PnU4RWlqRW49S1Beaz9ZVkNhRwp6NFlpT1glTlRSMTl3U1Rvb3B3RntvP1dCPUM3MCooX0REU0tK
dUZGfDFhMk1IWjU0PWBAKzUhO0pRXzVuSHo+fXgKekVJOGJuRnFBUXEtYlJ9JVF5fHUqZllmaz4/
eDBTMjAwYyFIans4amkjP1NHTEx2cXVDWk5xWmU+UD8rdml7bTFxCnpPUj4laXNOWnxAKiVSXzVS
dnAmSyRoWi1pUHh2QEUocjMwU1RKeyp3QntOQz49fVo0WmtueWRea1R8KTc1Pj9MRgp6QWBPTTZj
JnZ3NTZrcU5Kez16blE4ZVJLdV9hQXFmZCFrSkI9VzV5cWNpbGEqZEhsMT1YOzxUaEBjfXhXSX4z
M2AKekApUV5HcS18PEdWbTBiNkx8OFhBJjh1eiNDQnN1WjM9dTRLcy05WkAkOCVZQDNPKlN4cyZh
ZUFVU3BWbklqNVBWCnpON0sxejlWUkJWQCsxNjxAUHptTVFIX1NfUGZNR2ZsfDV2dTNfNlQkaVI0
T2dgfU8wUVF5bzNCO29tS1J0MiotfAp6eiMyVEZVJGVofCteQVkwTDFoRC1RSC0/RTBSdytoS2Y0
SF4zN09pb2ctfjN5V0RXUWglUjBaVDI1YjQlQj0reUUKekF+TVhrNjd0VVN1SWhsLSEmdypKTkYm
OE5vXj9nUD92WWFVc2MtVUsteVhzO15rakdRZWwzSCtHJXhpOXZqIWdVCnp0bUV+KnVSNT1NQkE7
XnFYZTV0fno4K2dsJE9OfElZKjZsNlR4NFhDZVN8RlFZfDJzPU8xKlpZQllPbHReMCEwPgp6MkRy
ek9uUzgjOCpVXzhhSTJJJn45MU9+YjYxQ3BFNlFYaTUzbUcoRTxCZi1rQkMqbEpFOG5MWStqI1po
aWkrV2kKejRAfVdHYCZtPnZJY21USSNTMD5MVWI2LTVldypOZCZWY0dVVE5jfWFyVEV0QlBPPSg4
KEZ5Ty1KVDRKeUlOQGtvCno+YTtyeUY/ITJWQVdOektyMCNeZz5pSmVxeGE0azlwaCg8IyZaTHUk
JDAwJHlGdFF0QWBKWmhgU15SMy1lWn44SQp6M3M5aVRyV09nKCpaSjlFNXl7NGpYazxeOVRsZWsw
YHAyO3tEfStfVGImMHJaTV9xazBeQm1COS0jTnFfenFBeEQKejEzb1dHTDhgS29pP0chPWpuTl94
biVQbn1TbiZXV1o7d09xaiVPJSlwQipzRHFVKXphVGNEVnFnb1FOYkw8d3QxCnpHazU+ZkVzQWt1
akxVMG1zZXlZYVUlPUQjaFNubFkhZ0JeZGVfWFBHKCFKeXdhZzRjdFlEKWUrKSMlXloxPTdnVgp6
T0VpVksjQCt6PSZpaXh+KSQ9MVF6WG0paTlgUWw5KzI/T1kqP2V7U0JyNGBEeUxKJV57JVMyQWVm
cm9fbjgpYVkKekRNeClpb29nfX4hZipUNnlkJGR2Wm9BPnw4ODV6SFBSYmw4SElzNXZiQS1TeE9T
bFVGbndEdCY/QlBLRGF9Rj9DCnpxUCF4IzRuMFlublhjaV5Vbnk5aUZrcndyWWR1U1htPSoxYl93
anU7WDNPTjJoTGd3OTE8SGNFWWQ2RHcqbTJpUgp6PD1jeipAWSpKTjlRY0VgVCQ4fk5PR0prdlYy
X0Q+Y2EqSVIyOGdOKzNRfHUhWTV9KVA2QGlYLW8paiRKP0J5KHgKej1Pe0hIZ0xeWDFDLVlsdFB9
PHkqZnpTS1JQaHpjR0JUVEYhTTI+NkNRNVIzdHd+YWhaMGo0P3BoK0lwISM7eCM9CnpGYkx5cVBv
RjQ1cH5Fe0pyKl9POT88JkdAKHozWDxhP2VXT1RQTz5NbklmVFdWfUVEUFFebSV8YEtjX0prYWRk
cAp6QGtrKSZgb0F5fU9vQGFadU17YzNrKTErdGFwQVVXT0UwUjtBZkIkYV5XZ2M+JjRFVHQ4Mj1H
Y3AqZXZ7WX0lUUcKemlBKz55WWdWaWhHPHFrWXAqQiRhMy13TTByTEp1SkdOdFYqQjdzMmkxYGdm
bDJSNTd+MzgqKktwfDQ0azJeP05pCnprKyUtS0JvZFI4aHBIRT9McVpQMyM4T2ZHTCsqRWt7SjNJ
LXhOPzV0QFZEV1QqZ04/QGUxY3lZXnEjQXhURFVEUAp6JjhtVWxrLW1rJjwwd0dpQz1KbGA4MlBD
SCtlYyRRYF5MJTE/dCE1Y1B9ekxlKnFIVEw3KGNIRz5UOTgwdXlENWIKenokZFlMYyVDeU9gWn47
VD8oeV9wV2BofW93LW8mV0QjLUI2N0U8alVaYVlfayt+QHdmclZCaV5zQ2RobTV1JUMmCnpZKXhs
YEBoKT4rcHBUWnM9MGd4eFoyVndFJkRnNF83Tno0d1FzUV5BNTU5aH0jYys7Z1huMlRtJSZ1USNY
KEB3OQp6Q1VlVm1xaiQ2P3RraUhMQCMrVTM2K197MmNFUj5fSz0+IXJDWHg0KSF0LTNzPDhodmhu
eGRPVDNgPWIkdzg4T0cKeiRFcClES3t+fUxfK2NZUCpIXnw4JXAzT29eYjZSeiNLUzA1eWhTIXRr
JSokUVFCZEtFO1UrN1ZAbj9EQyhMayNvCnpVODhudnVJVXk+R1RCPF5DJCN9ZjslRFAoIyhUKllx
SDNycj0wNyEmbUgoc1ZjbzVjdilIWFk9YjhWIV5Oc2wqPQp6aUtRbi1rKHdDRyF+ejtXTDUtJWho
anU5cCheMW47PStFJlZZWG9LfiM+MT0oVkkkUHViUyU/Ylczamw/ZCVMbU8Kel5iT0ZZaXtFfk15
MjtNLWx3PHE+R2dUYTxrfmllUUpqJip5b3BOdEReQDtNQS1udylFeGYra3lBTygpYnRQUXp9Cnoo
V1dxOWxvWkJnNEU0TG53P21DLUdEPXY2JGpgdjFPcEVrXkh7Q09SIzI8JnwpXipGNTthUHIlYzRi
I3d4NmdlOQp6b2NPSHNBajdiSWpqMWM+VWtFPVA3TyMwRXs1aXNOUktKJj1ePFYle1pOcCpgaUVa
T2BUX2c1anFhQ1NYZVVSODkKejN0WXRtVEVQdy13S3ZrRms9VXNJIXY0WjJNMmhEfXM4TXQwdHlt
aH1AJF47eGgmZiVlU080JDMwMksxNUF6PSQrCnp3cGxUN2t8UkB0WUo3PXIkIUBiNyg/JkJ7UiFI
T1k5NEFuRDdMdD5laStoQ1YoR082VjJsMkRWJj4yVlBafmQkeAp6Vmlrflo7JkhoZ3cjRXR1Kylh
bEBpaSp5eyp5P19+dk07dVZgbz5fQlokdD5xYU9EdVI9SHchYVA8bW88ej9WPU4KektUVCspbUhY
cmJkKD9iZkAxYiFCO1IhaFhJdkZuMEE9elNUUChzWDdZaHtYVyhsRXxSUnUzJU42TmwtaU5AVkhM
CnpYQ15FI1NZezR8Y29DcTlgTGxmUSZ7dGoySFZANzg0PU1AeE9QOE5eOztYdEc/UzBRe0t6eUhm
ZTF5KyNRSnNYTQp6ayVVP0Z2NjtBNHdhMCZJYUdAQEpyN2BWPUUpT1A8KXFwRmt1YTwqQ15RUXJA
OHpWQTZRKUh6VGlCcVM1enU3OXEKelhYMXI9MiMzcHBwQCFseDE2NXB8Y2NyZHE8PWVJbVlWYXF8
WTU9cypfKkNISShMQVpsbFV4eXwjOzVibSRBczJGCnp3QFArSDFHXlhtQ0ppOWxJekFKVkR6Z1BB
PUd0MVk9bW9wNUsrNXI8Tjk2d2pubX1kMGkybn4yZkpOV00zPjF4Tgp6PzMqYSMoO1g8KWsjJG00
aTMhN14tVip7QmVVdXgoOX0+TFQha0paRnhHJE9qN0hFYHk1QDw3fSFpMShhcTgzaUcKems1bkxx
Pk5mK0N4UT08MzgkZTVqayZyJntBVkVyPzVwZ1YkeDFtdWZsJVQkPjxmdytAZ1BiVlg8NmYmRjQr
Y1N2Cno5Jn4pYD0haFZ0aFFVWHg3P1oteXEjVn1tK0hAZylJdGNNdksocjlJTVFsZ1A8SX03REZl
P3N0WitoT35eWVZpOQp6ez5TZl9rTmJHUEFzLXZOa2RPVjMwSmB2UUptaH5YZ2UmZXpJSiVISzg8
ZGFwYylKfDU+bSRtQkt3RmZ6NkE3czQKemV+a1FVNUpybXQ4cHA3bWZfJnNTVH1rZXlTcn00Yzxz
KyhTblhzdStpP3l8dWNuSTB9QGN4dW9VQm1iIWBGJks5CnpTYnl3eSkrJk9LbkRIUSNrRnk5TFcj
RG9YVl9yVnBoOVNzV2dKKkc0eV55amoreFFRUWFMakVBdyspbVMqXmkjYwp6PCsxUTc9b0dGbGRl
ci1uVSpea348QHhlMT4lJDNIVnUoZmBQdCVYZEJCZTxqSTgrPlhCbW5hMFBkTlUoVER6WiEKelg3
KFl9aGxmVVhBLV80cnZIT0dPRCZAKilnN0xQMyk4akhecHMoS28/UX5vZHFqPmRgbm1Sazlrbm9W
Jj1lUzIpCnojRlczczBYVTlnbDJDMUNibEd2bl53JXNsKShiKS1xX3AmRHZVaEQyZmE3NVNJSlAm
KF8yT2VTVT1vYTtnJGlDQgp6Zns7RitGT3IoakFiUTRsNVpSI3VhTGo8PTFSbmY3cmM3TChZRGY/
PUtLRXBmcVYkTX1vP1FaJkskVk9wVWBAPzUKej84fVBhdHZ2djNFKTF6bm9zM15fQjhnVnslRE1u
MlU0V0U1c2REblQqbWozNHVYa2JxMDgkUyR2Pl5ydClqVmw5CnpsYCQxckFKdmheej5gUEwhQUc5
aTU5RjheRm9obGI0ISUhcng2a1AlIWpyPWw5THZ6MDh1YWQ/NUVWLStuT05pPQp6K3RHKFRhZHJq
TTZPKXhNMWRUdEE4c3VYZU13eHA0ejw5RmlIKkgqJHp6fFRASlUja2RPZipwWj80ZG5VSGQwMSUK
ek80PjArZD5CanxCX0cpaSMmdT8+REZIYENLSkcqMj9aKnAzOGA2WSkpQndsVWNENEpmKllgSXpP
QFdGci1+Mn0kCnotKGdPKnN7alhIZ1A2ZlA3O356fj4rKkNCQVNDakFfPXx1MXRIdlklYF4oVk1D
VC1wbVdALVp+elZyTDVORntZfQp6MEQ3cVp3KmF0ODBzSWxsTCl7UllQTmglIyNEUFEzZnZOPDRp
VnN1WXtTMk15NTIxTTdEb1V9KXFuUDQzX3whJDEKemc7ZWFvYmhOWE9pKkNiSDBPZEl+e2dDXlZU
NE8qYyU7IygzN31udTlSKHBXWCE9dFJESTJzTEl2UT5Za3tkaHN2CnpSQHhaNShIMExMdzFvKmNe
Z01hWSNoOFpaV0N0LVpLfWNWTkM1aipfSFdaOE1eKmxVRmI/fEsjPj9oI3h5JDA2bAp6Mnp1WlBE
Q09HRGxrYTM+XmRsTHtyaGAqZiR7PlB9SyRLbEQodTgxPFB2fFIzZT1RMWYld20tYm9qNisrV3tz
MnQKejd5KkRYMSNyPzl5TzstWjQ8S2NpemN+cDYpXmwoWEwlRFJOKDNYeTRUWVImRzxxV2RkNmla
dGt3RF92PDZZRio0CnpMNkdZcklmR21ZSyEodUZtTkJqQ0A9NSpzaGNzdmRFTlJ+O3kocWAtVn1z
dCM/WFhZfGBQa2gzMFlYbzJLZVp9VAp6SSZEKXY5PzMtPyh8dmo9TW4xfG9NXy1HXjckTTl+YiRv
YlQ5SXJuPmN3cVVCPiN0QyZMYD5LdWxTQCF4WVUpfSgKemByI0BKR01ucjBhS0k/RHgje29qNytT
Ui1QX2ZAb0VUJXQjdSU7UzMjZEJhQWpXWWZrS3xiUjl4UFZYaitUTjN3CnprMjtec0BnRSVDKTZC
LW1vfU84KFIzZHZ7T21ZcmNoUldreWhNRHpuZmImPmBoSTxKcj0oWFcqai02dld2JHIqOwp6Y2Zy
KiFKN2s0IzVWJmk0XlU8QHIlMz1jRndLOVZ8NnZELUhGPUAhbGkxTF9TbmdOU2tOYzE5YkFTQ31M
cDdDZDEKemVSdHhWP0xea1FCTzFMUUxJbk18ZE5+VnVJSTc5YlVveW4xbHhHTXJGOH5LWnRHSmxr
aEBmT3M4VEp0ZUtzeURYCnp5M3R9cnBVRjRINShZI3JWbGd4WihVN0U0PTxrUFJJX2lCZjBFQihO
MyNARW8jaSNaNFh8YzYyRXB+UGJVaVJUSwp6OFQ4XmhzME1uTCE1fWBpSTI0TXRoO1ZeKCY3bkJR
SnFEdlFCSjJiN1RpM2V8RWtrbW1gc1grXz5NcDgoWENJdmAKeiE/MXA1PDZSanR2OWh2KUBVbWlp
X3o+JTh1ZGN1Z15ibVluMG5pTUR0ZE1QaWNnSlFCR0lTQkVqelVQUGsybUBpCno4ZGY5KyZ4MzhZ
Mm5MbDIlVGM7bEZ+V3FhUnMqREhlUzhnUlQzWWpgX2hkS2tWM0tQM1U4YjxfaH40NDUqczBBKgp6
TU0zNFE/YDBAZ3BzfnVTajZJIWVvdnU4RyghakZuSV54bWAqTiZ3fSQ3THlISXMmMmdfflRiMFUh
VDVHV0hPNjMKenZOYHV3QCM3aSV0c1E/U3U5V1V3az9zNWQ7fW17V09gbmFRckZ0Um03cDgraSFh
fVVgMyo1I0J4cjQjdW1Cci1uCnpvbUx1KkVvLThJITIxXnh5O3BDWiVRbW81JVc2ZUZhOyNlRCto
OHR+ZDdrRHBEdX5+czhuWkR2U3NyWHs2TDhHSgp6RDEkYlJScFV0PDAzSklDZF9NcSRkNTEhPTdC
R0h7YWA3eS1iTVFjT1pNX2U2dmktP05lOVJQJGNPenZ5Pi1EJiMKemoydFEteHlZVmA3KEJ5cW1a
aTU9bFJMWnVoeFA8PENgbkNAaz5mWnlqKmxhTjtldlpqbkdAI2ohI05ubzVRZlVACno9KntLJUxI
VDxLPmtzXzhOYUctbmpQVylvJjJWQU9JVkFMWFF6KHo8R3pLSEI2LXAtKTJWTmA9U2o1RjZKfEc1
Owp6WEZHcF9uV315T3I3dkU9SEF+fDw5V3tAK2RBcE5+OXtrbjJ6SjZNb3RUaGVIRVFHKE1SdkF0
K29vXnZkbkh9bmkKejQxJj1XSihWcns+WEJCY1BGblVYbDNSPy1xRiUtUmUrUGhMMTdMJk9QVDhU
RlN2TjN4YXhqM19rR3ctZkRAemxlCnpqVUxVMkZ+bT9UcjA8dk1rMURfK0pKajRkbDstdHpPfDBX
VipFcS1gbEZsTW5ka0BLMWgoens1dj8/QXdkUUAoPAp6K3FTbjA0KzI5VSo0OT01TzRqNmxaRk48
dzBpZGo1d1htSFhuOVlnJDlIYjFsaj80ME5PZDVnKlV0aF9MMnZTdVQKem1hRHZ3ckM3RXs/UGxw
cyFJK0RBWlE1IU0oQTdaLUV0PWJpSlNSOUlxfWMqcz18UHA7el9Pa15YQ29QQTxxNUs8CnpyPiMm
TUplP35oQkplJE0xTWtmQHZ6Ryl4dyNwcn1iQzhldT1KenA8PEEtUSNXNlNiPnRJMWFDO2lsTXUl
LURsYAp6PzF0b0gyekFxQzdaOHNXSTMyODJ3M3d+UVNeUWQjQGhRXmI3U1lwNDVSWX5sdmspNjJK
dm5INlRMTy0wdkEhYGcKejB2c2shKXpyNDtkRTBMKEFLfT9FTCMxcUspajF1c0VDTyh4bW9nSGQx
Q31YPiFVPWpFcFZKMSErJHg8MWsjcjdZCnphQGNCQ3BDSmcqdDdmJFVfIV4+aWJBZSt5RWVFJGt6
U0cjPmhHZU1fJlQ7dDFzSHRmQVEqSmlVN1pJUnZ4bTUwcAp6VnxlS3NaODFRajhSVkc0N0BJdGdp
QlkpRT4oZXFsQDhQdlImS0Y8P0ZENHw2THVmZTBXOHQkVj1AME1HZEd1dUkKeklDMD1iOz10JXot
fWdnNzxJMS1GMWgtKyElMik+cWpMPyN4ZnIzbW11IWx9Jjdnb0djaFlCLXM5Jih+RVB9bX4pCnpE
QDc5dFNmfnhSR2dsbnYjJVhlNCt6LWtyPjlMNFZFP0p5WkZnXjl9Vng7YGU/eVRxe0QxTEpyUnc0
R3ZBKT9AaAp6dTxWPGZye2xnbHlkWnN5bUdLU09TR1RxaFFxfUklI09xSzV6WEI2fVEtNEFGdkFV
dCR6a3Z7c0taWClSSnRtZWUKekxZZUwyLUVIanl4UDxhMUs7Z2hyU31Lbm5KMSNmI3A1NUpESVk1
LT55V0tzNllHNkk+ald0Wld4aH1TRnlvVGVRCno/TnoqJj5YOzJaQTJ2Q09kcCskZ0NKWllFJW59
Umc7NmJtNEl1M3lwblRKWUBKcCgzWUYoIW9APTFQLVM4Yz5pTAp6TXFBfTlVejw0dCEpQzxoNUsz
UlJDXnFzcnNHKU9Fa2QkdmBvSDBSNDxfWG5lQ3xCa35UPT0qYHZ2U0VpSllfczwKekZHJXQ5X2BX
diY3ITMrcmpzWXRwRzhqNUt8N1p0TkpfMmx2Un50dHwzPjZfOFN3UXFWPFlObk94Z3NDWTdPbCN1
CnpAaTtNfGo9WTd5IXE+SmJBTkw/MWNkPjE2NiQ4N0NxTzNuZG8obGFZJF95bnBeeippM01oTGJi
QUt5ZWZlaVBHQQp6SkkzMmotMTw3XjZhTX1kTSYjXkFKXzNZJTN7ZH4xaGxINW5TMmwkRXIxZksw
bntmPkBBeXoyLUNYblJAKDR8Kk4KejY4R3gzSmNVPE5BJG5kVU5DNlBaZk03WEdWR21JbTV9QCN5
S217YypQMks9X2Z0UUJJbHpaeCQrVnxAV2Y4YDRfCnozZWAkWDFKRV5RcXtHQWtnOUN3SCRWaVEh
KzFDR3B6Z0xTMz8oZVIre3M/fnUmfCFBYXAlUVQ5aFZZUXRjYFZoVgp6OyRveWFAZHhzMVZSWSp9
PzdadyRyd35ESlFqRkRfX2U3X0lRaXNXb00mWUkxRjJaN1Y9VlhXNC1LJFAlKXIySyYKekY5dnwx
ezV0JkhlSlR3eCZ5TXM+Xlo7Q28hPXg1Z0ZYcWZ6UT9TeXR4emM8MmpAUiZGdmlyfnVCMEoxRVNi
cEFeCnpzKV9nWkZ9OCFvcUtvV2d4M0UtUVdJMU8yJkVLPzZoR3c+Kmc7WShlKn4wOGtPSDBTKXJz
dWAkZHQzXitxYGtkZQp6U1lIODl3bD43cF82OXN2OClBRUJVRj54P3p9THhrcjB4cD0xRSU5Xl5t
KW1vey1gb14+XlRQOTxEOElwaDF4OF4KenZJIylnNFJjS2Z3TlBkb1Y5fTtiNVJsTSZ2ZTVASFgp
UDZ5Sn0qPlB2JnVPdDt0UGtBPDR2P01FQXhKYWRpa2EmCnpIcSRATi19JUdlIXdiQ2opUWFmQyFy
c01xQ0ZQQDR7ISp8N0RFOFo7ZTlaY2dqY1phcWErSHh0Rjw2SDhOSVlZYwp6PVNHR0AlMTA+bT5l
MEhyanhAJjVEQVIraSlUc2U0dG9tO0NeUntFPHIzbEZhYnVWUnRaNW10Jkk1M1c4cys1czwKekdJ
YDQ/PD5MYiElUSNEd2krZXVAaDVBaXMmaEtyPHo2ezhDV09yJTBETCZycDtWWFE0PGlZWnpMVHc+
K3dwbnshCnp6JE41LTchXzA9eFlHT05yMHBKcG09P1VqJkBqWF84UntaNUsrZT1DTiR0eUAzP1U7
MzVrTzBNamViOCRNUWpxTgp6NnUmdk1BJVY7Z0FmPWFhWnFIKTIhIz1EN0Rtfk12O35xbiElbHkr
V2FvfiU+ZnFlc3o1JV9weTRwSEVhemk1bj8KejZ8fn1VbFBmYF5RPDBMXmxmUnJuWFBrdjRDQ2pM
bXFZXmM8OXQyQmE+NzdGO2dpaStYOSl9QE5XakVTV25Ye0tUCnpOK0opMiEpYUw3WH5DTmpDZzc7
MUJ1TDIrIVchdVghT2FjQ3RqMm1sODBOPEQ5ZCgkdzJ7X3NXOTArZjcoSDVwKQp6ezl2dnJ6UGM5
UV5ffDhEXnp+TEl1SV4oeiRQYGU+I1pFKGZ2SkZpbkspO1VJZXZTazJrIXxKfkdkLTEpNVNlTSgK
elU+ZGlAI1NAaVZjZ20xMmIjaXhhOH1FOXYrX3ZQdCtoMno9d0dIbzxvdE0lKDVtNDVjaFQjZT5s
SE00K1BUJVY0CnoxUT8tNTQqQDB1OVVBfXZeZFM1WXJeUmoyZj9nKTtZSjlXb2wtQkBDSHYzMSFj
Nnx2IWp0Yy1QTT0oIyk1dm04SAp6TjBhTzVqREZiPFlXTSgkb2AtcDZVWFVqWUtCJHheYDNTd0lr
ZDI9QVpzKDQxbU9fbiY5N19sWjE2PChTVmkyQn4KeiF9UHglbWRaPmNoVmN+WDJyU1VzNylgKmE4
MDBOTnxGKkNxPzlUND0xbUd8ZVEkOHdTVlAzUVNYNCtUKXFWbGRJCnpSKn1ZLTdCKyRvMXZ0JDc7
ZnlLZDw5ZlVyY15aQSoyMFg9QTc8KEU/VCFgX2RyI3YmMzg4dXshTTU+fGdDZlZBRwp6NFhCditz
byQzN3M0aEE4ekZ8dFhgbHlVVD9hJjhvR0orVUxzN3xlbV9OO2x1RXR5V2loLWpPPW0+YEJAXjlW
bykKekx+MW52NiR3YX5HbDVBbDRULXY1PzJHaDV5cm11Xj9HcHpNSDN1RjZmSVF5d2FeTl9wJDdR
Rj07fFlyS2FELXhBCnptfSVMOyowSD8hRUMyXlBSMVUre2lKaGxVTlU1fFRpP204ZDVNbkJZISth
V3c8fihMQElSZkp0TXVVUGwkIVFsQgp6XmNkbj04UFElNFhvQm91ZVh+e19vNTVtVmJKJThjdT5j
K0s0PjMtPTd3SSoqaElKY2BCMVlvT0s0SmpBZ2RwZm0KekYjNXFoVnpIKjd4fUhKJXhZZmhoaks/
R0A2NU0+QFgxcEV+YXVLOEsoQi1iTEBJS1heN1RtOzxGO0xtd3NrVEdiCnp0PUhSel9oZEB+bFA+
bEhqMlkrK2NDY3taNChnN0VZN2l+T0FAb2Q7O19JTjx7K1k4Nj4mVEVua0hSfHkhV3A5ZQp6cnFa
SFVtcElHKEVfamBSNE0hMmFkMzUqeU11RUB0VFBueFdUK20rPj5ySHxiXytJaXdmRH0jeHVfKXVi
V255fnMKelZte19kJklqKVlWM2c9WFl3SkAhZGlkX0djYDV0Nlk1MmBVR29tdVowSj4+ODA7bWAt
clMxeiZueE44IUsmbmItCnpteWFGRHQwTmVJSzk2PlUhN0N2N0ojXiNicXdjKl88KyUzaGB9S2hr
JUV3Y3YjPnY/czxZT2xPMis/ejAlbEJ0MQp6O35MXzltTjQ0Pz5AR2pmSUM+NEJXJl97cGdaTnU4
ZClCLS1nUCF8VnxNQkh4T2Y0Vmh2JER3Xzd0bkJ4YEY0M3gKelNhKUNEWS1Pd0diKEl4K28jfWtf
UXUoLW00OEo/ZlRfYHVeQmVBV3okK1EzRng4QyghT192ZX00aV5XV0peJXM4CnpVYElOQE1ARE9H
bSt7RnE7R3leeVYrPjtGPkNsPU8lVEF5JUp6TnA8JjhuaU9pY3RIPWVub34/eGRlJklpK2RfLQp6
d09ZfWs+VlFLfSEoJVF0UkVJYDNwb1NRcjRBTjtvVVhWSUxoLU8obzR4bilnZmEzKUEkR0pNU0w5
ZHtie2F8elEKenlwZTQ1Xk1rbi1JJDZ4NncyeUhidU9ybXBQWX5+SEh9cXZ0dn1YYShWRFRLeFZR
fkJtNnAlVj5LK3hJNmpad0xlCnpiM254LUd6KlJePFUlaTNES1BwdV5IX1JaMHhLOVpqYjB4RHBq
Sy19WlluPjlkenMtUzFSP2B+bDBMUlVBMEN3OQp6Q1V9TTg5TGdGdWdYbz5gYjszK2VBajJzKVRA
KH1VI21UUDkqPmJKZlExSntBQHE7ViRnQkpQT3stKElwRCUqb2EKemVzRj11b2dBeDdXTCM7MnQ0
d2UhaiNtKnRiZFpUXzZpS2lfYE4pUnZrWnRsQTJyZUZqM1QwO3A1UHVFOHFZNjA4CnpZLXV5X0c+
dVg2Kng5UW4/diNBZzBtbXEjQF9ecSUlKHVxbWAkXjA2JXZUMj5sIzJ1JEN1V0E/YyE3VklZKHlf
KAp6S0pnRFdNbjhpR0FJP0hQQjdVP0opOUIwR0M/RWVBXjNndjMySU9PKEApNj8jVlppRndBUmwz
UTtRQXApWUw3MTsKemY4bkxTUmU3Y3VyUHxoaVRSekUzeldOV0YkQ1RHeTwzRFZuVGBFNXBte0hl
VmQhTmtYSnQ0VW5xWXRvZEY/e2hFCnpaKFF8SD1NeDhCMVA7WFhGWitIQHk0dTtQK1FVRUNmJS1u
bm09M21ATWdrNmk0dCkkcWpQYTB0ZDVwMTtlVGhwcwp6JTQqWi1SRl5PYWQ9VkJBak9FfXNmZTRS
K29ETWZLPlReRntrajdGP3lhWGxZNXwtWFIzVHN9NyZTSzJQSiVxJFEKenU9am93eDk+dCllbFho
PC0mbD5HPjEtTzNfeyo+a3tzNWo2Y0FvNF4ye2lpWFB6Z1NBZHFZNyQmYmYqNSVAWWo2CnpgdDl8
MVpQNnM3cV44MEB4fVk3ejBGYy07eSNOM3FOWW52e1IqbGdpJVE2ODchRHlvfkJSODFOPFYtejFw
eCgpawp6Y21TUmpwcnFnM003IUp0ZjNSVl5RenFrfE41eDNjPnsxOStEJVhfST5Vd1ZnMEVJV31x
cmhaV2F5REpwSF56TVYKem8kQDwkU3Y7WHVpWDs4fDsmfTdFdmxfcCVAczlaUXgkaWx6S2RURUkr
cn5BRXRSQ1B7QzFneCFLKU1rJVk4cTZoCnpNJW1jSzhZMks0PCFqPjl4RkhYa093MDU+YWdFRWdN
RyFhSHNGcCFLKSkoUHlTdHtmc0NWWXE/VGw7dDJ4MVk0bAp6Vnw4KHtJU2BsSEBWPD9zezlJV0pE
SVgheUE5VFVmMi0/TX5gNEZNMS0mbD1IJm55djlCeyhTazJOKH4rKDQwT0QKekcySzF9S285M0ky
JTNQU2Q7dGI5VThzbFVXMm5sJWBDdDh9T2hTM0lpa1NoSUA3PSkhOVA1fk01ISpUXjw1KEJGCnor
bkE3SmR2bGJQSVlsb28qdUdzQ21+bmw+cVhMV3JTOSh8ZXlnZFhFWSsrRyl2NyE1SVZRS3BQSlB2
dFRSUWdhXgp6RHFZJHE0IW1kX25BQlkhXjllX0BSWHU3eDV6MmNUVj5kN3s/TDxoR1VabWAmXiVJ
VWByZ0k1NntUOE85cGVPKngKekFePUN4cTNVVVBFTFJWZ0BpRkY9PmhCdCk2U3JZUjVWaUR6YTFs
WGNmRnJ2bDsydnp+cTgyZn5NYF4rOVZ+T0xWCnpfaEgoT3E/aDNaY0BVMiQjSH4mcFI9JkQ7WClE
fnhfTXRnJD9HRUhSQzdyJEZuRShEX1dVYjxwe3IwfmFyfHJPKAp6SndHU0owPTZTK0tWSml3S19f
e0g/e0F6fEtaKl4qaVY0KishPzUmbmN3N2V7VnxsKT9GantJdU04JTUkV1JrRUoKekhXVX1aWkhW
eXtVMFdKbCNzSzNDdiVZUWJZQCojRi1vSnJKVzJgPTI9Zj1mRU58TVdZMVNDYWhPcDVmOXhVfCU9
Cno5M1F9N2wyRFhZI0hVbzJeISM/eDFNRGxGTmI1MUZnPXg/XiZXI2YpT1J7N2NBIWc7UjxZfS1l
QjdZVHpXZGFXSwp6UVBeZmY7RzZnQ1hDXjlfN2VyZDFESWMtJFZyPlo8PE4+TF9teC1oTCNBTDsz
PVU9V3k5dCVMMiR0e0dQRV9HVnMKenJKYi0pPD4kS3Y8NCslM1hCWUFAeVR+akczSUlRcT5gQ25U
VVhDMypDWjs9OFJNemN2ckorTlhmd3NCMXdUVSZDCnptTkRoPTdOIyVYZzYhYjlIaVZBJEhYJiFX
dV4mSVAmdlJrY25lU0A5PFpHOXtZYj9qcjU1KDNYMjMqdno1TmB9Ngp6NEBlQWBRa29aJDB8Qist
RExnWDIkJGJpJkNLaSpFPnBWO0FFdk16Z2ZheVRoVipCdz4yaXczQGVDP0BZU2dLJE4KejNTKDZg
K3AwanR2Q3I2LTJyM3ImIV4xPlMxN0BjbCMkUU9sZnRCOENPUEJfXjcqYUJFX1hfOztIIXhuflQq
Tj9iCnotYUw8KF5OUkAyeTBWWTQ5VW4zajMkczFWODNXQWFHYGYyTyp7Tj5oK0t2YD9IODFXVzgw
THNyJEpESilpKntnTwp6PCN1PHVURWJVWDhzaFpNU2dGUzNCb2RHYGZKX0tYbm92QDlYRTYyUk9q
cGJ6ViNuMVh2Wko9bWotIV8qZmtEVSUKeiFnZ1c+NTk2RmRWSkgkYnBgc2p2O1Vhb2w+PiEwKzF3
MWRkZSFuZllFaTxDMkpSNVphbGBZWTFWYzI4fl5TSER5CnpNNiU2ZXZgNHc8Q3pMdmJQfSM8THM2
MSMqUzQhJldvTip3NWp0NiVRNUVEZGluZHt2IXlBVGxpb3NHOC1nY3Juawp6XnZDK2l1ezR9QVQr
TEYyaUwjcz8yfnwrNmZoSUgjZ3p+V2lgUGtmI2Q8P1hFUll4O2lOfWFkdTMmUXxyUShNdmkKemhi
NSRuX3BWQGl4RXEpUD5EPX5NOUB6MyE9Wi0rMFVQU3NVaz9ERWdoalJfYyRBT3FMIWZmZFkrYD9L
T1RmM019Cno3cHxpbjRHQnY1aHlfQnxWY2RFYV54ZlptSCZ7JCVKcnNPK3YkSnltaG0jK3ZUNXBM
Tl9BcXtENTBoX2ZWZTBaOwp6NDxWIUlDd2hIc0lBI2JialVNSz5Ia1UmMDB9NEtuO2tfMm5LWWFI
cGhGTXNrRXsqbXZYX3o8eGtQKnckITU1NEoKeiZqRW5BbF9rWXtQR0h4OW14RjZeJGR+fmBWMSNv
aGEjQ0lrbTlLNFlqc3N+bEl2NnkzM15OPl5mUmFWS2N8bypSCnpiRz9XVk51QEItdnIkS3dMe3ty
Iyg2YXJCNyk3eWtKUXNgRG1XfmdfJEN5bjJwe0NJTD5oanF2SUBsY21BJCEmbgp6d19aakVkbW5q
a01oK0o1PERHbXMoLWRFV3ckSUt+Y0Ilanpkaj1wZTNweXBQVkNXc0Qpe0d1QFhYZnh8endnM3AK
enFYVW91VUxga1JxTFIxfVVsWGdeUktYKT5mMUwmKG5acV9hcE5xTjBoQiR0P0UyIWlWMi19RT82
Wjh4KEohJS0xCnpuSks0Si10Jk01cm13P3dIfUdoajUtQHI0PW5wdXEyPHleZGBjRUkjWVRLZVUp
ZmIma0EyU0JeVk5KekNZfntXTgp6aE9yM1cpVzkodzRDZGgqWno1O3FuJChZYylqbzlCSUFKSCZ3
I09JNV9jN1RCQyhxYSlGLUFVYDwzSlNQWGhCQXsKem5xJkZNNX5BZkorTV8tVyEoS1o4VDdxWCF5
UUYrbnZKbz85aTt1dkwqbzkxZ2c2Vjh5MFNOMFM8cylSPENLb2hgCnpBU29YP1l2OD9zKnYyeUVU
aWdJUl9CX1N7V192UWJpbV4teFAwZDBrd3VubVhHZjd2UVg1NGtGS0VafWNWfHd3TQp6dHRsOFFy
cjxmbClMe25nVmYtTE5PTE1INUdRY2NyVHRJaC1aN3xxR09OUkZaLW4kX2U+VihsVCRBJXswQnd5
JX4KejU0ZVBZS0AwJSM4OWBLcWVmM2ptV0lsI3xxcHEzelorYDF0XkhsbnNJQj0qcjtRNzN0LUUo
biRRLVRnIUAoYEYoCnp0Z2FwVFFUbDJyIUckQl9NJX53SlBLKVc4cW9VSjM0IzQ1SSV1OFNxKj5P
dENVNXF3YE4tJUF8NEI2ciFKUDl+WAp6MEJ7QHxpZk99d2NZZHp7MDc5aUJPcUAzTkdnJE81WiZu
cCoqUFVlM3JKMV5UWns0NE1WR0Myd1pnI3t7eG5KcXQKejdJKlZvdTUyZ0hiSkQ/K2BCajcoZH0t
cF5xbl4wKXBUOHdle2RlenJaQC03SkUrTHZtPmpOWjJPQnx5JV9RYHdqCnpyWGNENyM3M0VrVXBp
QTBHdz92XiNIcGRGM3JiKURFQiRofUNoQk1kb1pXPCoqJGtnbDcjMWZwa2VhPC04Uk05Mwp6JW0r
WjJUIXMhWjJGZ0w0MnE5RVg1M0F2QUA2XlRXaWQlVzJIRk8jU2V5MytKSX59JGVkRUNlRzVYUz5x
Z2V7KDIKelJqWT5xekFhNGM/NHl1a2VifkdwbCNpNSs0WShzWCkrRz9oUjxNVGMoYSREMVJMeUxj
Q1NPfUUldDwjKGdVbHIwCnpGd0AzX0MtTlJDQTNjQ3ImekIlWGM/dzdKNXlxSU1WPXhUTlJsbVV0
ZCRuaSl2Skl+V2pXbX14LUVDZzQyZCZoWAp6VjVFNih5O2BROGhRfHhybCNrUDVYI0BNZ2x2d0ZR
S0s1PiMkKCtBQWBSZUtYaW4jVSE8KWdETzwzaXU/KShsUFMKejlNWDVgIVpBbj55SGMwVEBvVlAh
NEQ8TGx4SFhEU1pVLXwxUEQqRyVsSENvQUMmaEhQbV9EQ2R0PXd9Z1RPVGdkCno4VnE8ZVpzLSZP
Mk8pcyp4WXQ9MSkqPGx1JHR1VHk2I2QhS2FwSiY+I0RRbElLK3JMQUYoQSUjampqYkJYO3Baewp6
R01CUV5YWFJpJWJTIyljdCVWOFFYWGozZGBQb3hZYytpVzE4MFZAd0llRWhJcnctRmVqT0M4JFZ3
UUBNVkAxMWwKekB5YnRrckg4YF56biFTWEZ+ay1oZiUzSCRAR19feUtieXNya08oXyFNfHczKkJK
Y1lzPDJJfnlCdT4ofncyNiolCnpxWFptVjluOEtgPD49fHdkOW00RDZJOzE5QUcpZjVWP1UxeFI4
UXZEI29nP0BCZ05BPntReWZXOX1OczlKJjlJJQp6Nkt+SCl3P0FyI1NBSm19PiYmIXI5NmVhVyFO
c0lxZ3V3a3xWPV5CcWs1dGNUOCQ1O1pydig1P3U3JCV7Ozx6X14KekVuTllfUlNSTHBBb09CQmZE
cj44Qm9PdWg1RWRNb2pnMjA/b310N3tSMlZBfFoqMjZqKSE9LXh0SXx8KlRGb0s4CnooO1ZZQEZp
azh5UGpkKW8hRzBjbGRabTFwUUxkKHFXXylQTDFSTjYmIXB9NENkXkVJJjZmdm5eUnpHTChlSHkk
egp6MXp3KlYlU1ZKMGBhQlY7ZXpDeFU+MDxKTzBiSkNqZUI2X09xbDJrJmVSSz9LWUFqJXUjbnx+
Vks3JEFNRVcpYlYKenslbDdAbzwjb2xWYVR8UkY+TTg1dGo4dTZFflA7UnBrcHlfTHEyTDxEJkVv
USkmK1EjdX47Yyl0YyNfJjREdTF7CnokPXQxN2hgcl5ocjBlY2dXZ0g2YHUrdVdnQ1ZPSlRrWSFk
KnVNamleQEtnLWlCYUBJU2VTbiFVUiN5TkBGd1VZKgp6NVB+cSNJenZVVkhSQGZsdmttPE1sTU9X
TCpzI2BCMUc2cTxTZClWa1F1OyZSTy1TIXg4THA1clVlaFU1bVl5fnAKekNsMCk1OU1HaVkofGFA
dWk3YlpAZlNIKEVwemtjZ2g2M2dUKn0oPj9PYVJocW1WamY5OVYtMHY3TlhAWWhCIz40CnpofHNh
JGhQdkM3SEYldWBgWFlmRE1Gck5QNll4TlRGdGdFRFlOOWg4KjkpRzlWIUxMc0xmSTxQTHA/cis3
diMoOQp6bFp2bntKdikqR2ZTYjhuT1hCRFRJI2pJOGotbTQ3cT5ndVRyaFkrdSgqSXpiRjU+OHp4
UF42PEpBZmh1MiNtUHAKenY2QzxpRCtFQUowSX4pRiRjTjFkMEFnMHxCKzlZQDVXV2QrUjdXLWVp
Mm1CRHtvUWJlQm0kQytWTUUqb2h+JiZPCnpFaUJUPnkqYXAoQVl+OTNhfXdwQEZkeEdCVTVyXiRE
dThqWntNbz5fKWMwN29zZURwLUBEVHdPb0F8P3IremJ0dwp6SHsjPTAzaFkhSD4pQnV1aFdVa3xT
VlRuNzVzYytveiE8NU1ARkxEUSN6Xl9mZW0+Vkk2UDAlWjY5NSE/KG8/VFcKekFzLTFpUDZCWEA0
S2lsSShlZzE7anh6dEU5YVAmQTBZP3ZWUU9VPHJVNChxQmlfV2I1SjJDNWU0cWw0WWZSUkRuCnoo
fVA+JWJJai0kRWd3PGNCTiF8JDw+VGd6U2ozZDtvS2smNitUckxONGhUWCUtVGtxQ0R0TFM+eU56
KEk4TF5yagp6NFdAbVIxbV5lO281I1dpSGUkPU44Un1nNW5WdUlfaEhzSiVSb0AoZnZPazAmZ0Ez
PUIjNCZvTl9vaGk7ZikhQi0Kek0oVVZ3cWxNI1VsakdTU1EoXjRqKnRSQiljfEpyVDQrLXkyMUpG
WlVPeEZfIVVgVHUjT3B0JkJve2MmfTJEbVFBCnokYjZ3NGBwUyZ+N2NRZzg2cWM9QlRza0w/RX1l
bFFhdVBGalVAZWU5aGZha2poUyg3XjZ3NDxWUlgkdm1kPjR1JQp6SjV2Y2QwNllyN3A7QzxaSC1G
ZF5DdHZqfFdoKFdfc2hZVUg0PT4yKTImPHdPV0RXeCNQM2pfXmA5OHBqekE/PzQKenl8I0VRanxU
PWJePzdsK2UtM00yLSFPfnR7eXYjczZUNnRFNkcxdU5iVEpvVyFtdFFILWRPWUpIZWFkfno5ekc/
CnprJV51NE9tdHc4Y1RvJDwlP3d0OFhXWH1vY0Y7ejQ1R3ZRUGMmSXBtM01abWtNMTZoJD1UZ3ok
Q3A4PjQtNDs5Iwp6S2ZUciFkK2RpezBoVzZsYjQ+e34paGlYZ2UhIz1RQGclTVI+d0Veej9pRmhQ
NX5PPG9oenc8ZjNESHkjYlJPfEwKenZzcU9+WCo5RnBFQG17a2JCOX4/OHxKZVB3ODc0dDhFcHxg
ZHpUUHB4cSR0VG1mak0tX218JXRXJStDbTZ5VHU0CnpZeDI3YylyRypKYG1+ZEd4SUR6MkRURF90
byl0PytIVGdKc2QqdXc8UDdMd2doVDRiOWh3ciNZYEFDQ0l4dypjUwp6bzl7S20kPUJpbGg/SX04
ZTZQaE5tailXQWRfPWg0XjdAezVmVXMxYCRtUDxJXkEqYStqQF84MG89QE07KjV9ME8KekNnZnZw
cFlsOyQ2fXdtJm8tKj1qUV9UMWV7ZC1kTmlIUkh0clJfVG02MjVoXjJBJlhTbns0U305Mj5eS1c4
RVhQCnpKSXZye0JMYjBuNllHIXpuNiUqKllYZ2s1ciplNXJwd2diQV9aM0R8cm42QDslOWU2RGhH
TnNqPGR4RFM0amVXUAp6SmFHVWIyYWRhWGwxVDNHX0ROTiVkTlh3IyU3QXZlMUYoUyhtNElYTVI1
Y05Qdjc8OHckKGYwWVg+Uj9xMzh7T2UKekJCdj1mPk9BKk5iYjdPeGBFbXZkPExwKmx7MmB7bz9P
SyNle1Q/M1FNTSUlYWEhdCUzd21GOCo/WlhTZ3tPQVN3Cno4c1pXLTgxbGhKUzFoQTxldF9feDcw
MzlIQTJufV9eVjx2Skw8MXdRQms1JU9FSkNxMSNZVm13Yz9aI040YEUxRwp6I250U356PSl3WTk/
cklmYnVQTkpoQj5IKlBHSik+ZSQ1NjNsQWJgIz9nbV80Y1JwJjBPRnVVbXFNI1JqWTZAWGsKemZx
fm5jdD9YNHhzRnQ0MzhSVD01NkFEO30tdlE8VDVXVCYrSUw7LU45bntCbkBDUnNAalFeP3VxfTIz
MWo+LU9wCno0NTZ9QHFxMyFFJiEmaXN1RkRhZ3t5Z3slNEwkRTVpPGxOQkc9KCsySEZgYlFxMnpN
QWRSNWdsMHt+SVMmdS01Ywp6fDdTc3pCLURZWDA2Mn49byskeGBMcTIpe0JrTXt+IUZRJnQmT0dP
JFghKkVaN2tfe2RuaSFtTF93JU9NeFZJPGYKelBRPVFgeD4jRnRlK3k+YUtnVCF0SDMwWislLTs2
XkFtYmhZJEFrNDwkVllwNT8+Rnk9XlN2YztxRkspQ1lpNE5xCnplWD9+e1krPDFGYGZ6e3Brd3pN
aDJZQ3xtUUxvbmpgZnIzZDF8V1V7K2k/UE8kT0o0Z0ckTXwjRnNXO3E1SX1oJQp6XnxTLWF5fWEm
ZktRNG93M3orQy0/ZjJMPlZfKioqIzVOWGs4REwhXzdkN0Y5dH5XM04xYl8qcmU0cHdObXx6TyEK
ejV+I3JiRFgtQkIlY3VyI0M+RHkqWSQ+aUgpQV9gSzduVEUwOURxQyNQRXFiVkVEWTI1IWNVeUtB
V29lKWp+SD1DCnomSCUqIzVOMDdtclgwWFJGTXszQHJDd24rUVVId3RhTGZSQnp7XntxNk5zMCY7
anIjaDY1X3xyX1lleTNIKUtxZgp6ZDE+UEpEUkBEeVZHIWo4RU9iNjxZJjFwdFVRPXd9Wjs1fXFk
YDtabmlTUFY9KnVFdXhjQFBna1NkVE19YksrQ1AKem1KTVdaeHZ5czlZY3BhVUFtcDAzb3hMPFpT
c3dsQ1RmYTROJlVmTkpJUUc1S1chamlHMk9WcnZWaktJZEF2V3crCnp2MGxwYllFI3NEI3Q4cT5v
Iz5SJl8oQX5XX0pAcmkwNkQ9aHROO01ILUg4QW9tXiNWQEt2Y0RfQk9oT1E4NWY+QQp6aldIK0pS
KmdvZ0dMWlhCe01HKnl2Qz5VVTR+cTdAdmp0Qk4rVns+alcoZFBFWDRadDNmXmVfRWNNPylvYEtg
JSQKemRuO3ZFZX13WWpjJDRBNHVndUdELT1rZDV8SGoqNXtrTyskcmRvcjtgS3lEMFdHN0V2ejs7
ZnwlfF47YzUwNFpWCnokVi08M3NuVCQtMUNXdD9FUjhZPCRGSS17RUp1QWFWJENHcGJvMmNkPGx9
RFRlJUZzdlNvSEtOIyYhZmdKPChYTgp6aWBGdXhwdVgxLXxNdE9rdjVhWUJXOWJMXlA0UEZ5bXQm
TDViZj88cUZrfDVVPGx9NiVDUWV+SSRuRHlzZTd3XkEKenFrV2FINjkyV0lkc2lPYmRtek0qJWFl
WiM5JGl1azhiUndnZmNsWGhKY1hISDdyVEhwUjdmX1VVXn5hQDsta3FHCnokey04MD1pK09KSHQm
YT9pYFRQP2d0cEt6e3IpY2MrI1phSj5tRTtmZ0NHVC1seGN0eTArSmEzNSReZTBmKStUbQp6MnZ9
ckA9bjtTeTRoUmc7SF4yMzZBVnM+SUlCQHRsQGF6RmRBPE1qKyhxKztWSlJHTThJOEw0eUMoeDx0
cXxaSUIKenBWeUNURihieHMxM1RDZGFmOzZeU2VqcUhqY0hrLW19elVaUyNMZCNrKzMpN2BiQHp2
dFhLYWs3SzN2ZUBHRTdVCnohe1MmVTcqQFV9NnpsZkE3Q0tkSSp3LTs1aylwZj8+dHtXX2dTfU4+
NkNWejRxbC1QUXZJeT13d0hjJjdoZGBgcgp6IUwpalVDMj5iaSZISnh6e2hvZSQtXmMmYC1+RGdK
S2x0QiVRe0tuV21idjx0LTFMbjA9Q3tTaVhNVWljNjd9OVoKejJEe0ZTTSl3SHpONW05MXYzbWtE
TEFGSlBuVm9GM3hxQCpEUHxSQ2NLZ0M2RGdqZGFBK3d5cTk3PXBFaFBefXFICnpzTWFqSkhWdD9N
YGkjQUMmPmhiNTw+P2Y4K2dTamFZcjglR0JFKz5uWjtDaG49QU1gWjN0WHtfZkJZYTlZckNpbQp6
TG1HQ1d4WDMrejwyYzgwMU1TWUlCcnM8SjI7VyRjSSF1UzVKVkY0MlF5bVdqVmBFc0MhJHVPe20h
Q0Y2c3Q3aHQKekxQbmxFdjQ4blU/P3cjOCRqM2VnRXAwPklUfURYVSskS3hfYl9jPyF4Wj87Vnkl
e01WWiVGeHdAaTdSMGk2TT4hCnpgT3VKJGpnX1hEZjxkTnZwS2BKLVlQKH5acFhaUXxqZVc/Kzhz
eV4rPFlPbVpLMkIzVUhxVlAyLUsjTj1GaU53Twp6S3xhRU9eNV59fU0oM1g3IUl2NFlSeUc1IVMm
RTRiI3JzJEZjOTk3PGlOcygzUG1tMWtYVEstK2ojcHM9QzlaR3oKems7Wj5tMkVyP1R4WE14Mkxs
S1g8P2xIUFlKOCheenVPJmVrPmt5JmVuYjw1cjlYT182bWRBQVJ3JVM7flg5fV8oCnpmTW5YLTJ2
fjQjM1NPejEyIUp3Q0tzdTIpYTBvYz8lbUR+eCk+dGlgPFdMOVpmYi1gcnFDLTd7amBqUngwX3t2
cAp6eW0zcyYkdC1RLUtxIXAyNW82OXlic05UM3JUP0E3JXEmTCZAJH00ZDVzS3FYdm5KUWI7Qk95
TW5aNWFiUShYQVEKenIwZCZ1LXgqbEU/X05iYj4rTjt7SH4+MG9uMTwzdEdzNlhPMWdtdGQpZ0hR
JU9xX3FPYWEpfTBFe2ZTMmU5ZShgCnp0YVZ6M1Z5KSlrYXtpbSEtOzIhayR0NyFKeWgjSHN1I1o4
JWlVdihzQzkhcDlabTNnWXk4ays2X0ZBa0NBTGA/Qwp6QXNfKVQkKzR2TXl9I0hKbXRQJTxMMSRK
QnZFQCp6T2A7ZCViNFJGfk5fIUxVXjBoITEpQGd1Oz55OXVpbUN0UjIKellNdTR+akE/K0tEZkUy
MXN2KVp6d2YqJSFZZUBqMm90aWtqME9qc1NNQntLRyluO3syRyhQP3RfYzVVWEVUTjNGCnorUU84
P257ZSlKY0ZgJjBKS314PVpTXzd2cUl8P30ocjIteHdjVGcydFU8Wlh2MUp+dTstR20hKmVaU1Vh
UzklZQp6XlhGZkpZJj96YWZ7JVNnXy1Wa3FLXzEkfFh2fmI2JlpJNztacmpGdDwtKHRvanx5aj5y
RkBMPVklSVk7Sml8cHgKekJSci0oRVVhPCFoWWZNelhIWlpDb3JNP1Y/aUQhTlpnKElibzY7Yllh
ZDhkQE89bX5NIXRqX190PSlIfG1efVNNCnokajdzZ3Q4KkJQOSF0bFhye0k7ezZzclRjOXxINyQx
dzduPStvTGFFJG5ZJnxHP3Q5eGxOV3YjWWp2OyphNFVedQp6b01odDtram80e2ApUk90OHF5THZ2
KjNJeGF6Py1MP1ErVW8/ZFJ5dzY9dmxGNjI3cV5LNnprVSEoPnp1OTFLSX4KejFabTYjNiFyVm51
Pz5LIVlpZHNzeWFEO1E3QkN1ZFc9dzg+X2FDWXwoPmAoRiNvQHJEI2BLSnp0dnhqKkV9WHc0CnpM
Qn4xbEJ8JX0+PUhUJUY1blQ4TDY+cGRFPG1gOUd4eyk8a2pzeGpxZlo3SHV5OSNpKVpuK08tQFdm
fjtNcihHWAp6bFA2aj1Ad3NJSF8kWXlQeiVWUSkwRDs3Ky1OR3VlKmMhS1lNZVhLfWMmJkZyVHB6
JCs5IVpQQ0d5NEp7SX5ZXigKelVnTVZkaDJpRE01e2hKfTVzSX5pKGYyKHBEeTdyJjAzM1N4Pmk5
QEBPZ3paJXMtTT5WSlFSX3chRDk2cVc+NjhfCnpJQHs3PGN4ITdAZUVtOzxTV1NhcElXNnk8SVNF
VyZuT1lESmQqPytUWkR4cFZ1aGtTbzA4XmNBTUY1YTlATmszeAp6JFBNSjwxMFhFKDk2LXZhbjQ7
MX0+PT42biQ5UiVVSFpgUVVpeTx5UTNVcih0Y2wzPV9PbzUzPEolU2tOQk5oeiUKentTfGI9clJS
cWpwJGBSLTtwMj8oOys3Rm1aKCtKa1hmcmZpT2MxVTIrJmxvbzkxQWokJDNaKG13cmtDIWpYOChV
CnpVJF9qPWFaI0sqU0lTMnVpU2hvJWNzRjl3a1ZROzQ3fWhLRChTPjd8VlJTaFc+RGYzQVB1R0Bi
SlBeeFBibnxAPQp6MDBIYDtZXj5qZzd4fnQ8czZqQDRzZTQ+cDh9M0l3cDR0fXgqfTw5PUA5KjZm
enRGaj9zdTtDRCZHOF51LUA9clMKeiZrQXNhRCoxODBEen07YiFxK0VkI3RuUiVCI01HSCo7IV4t
U0VWT1RiQmFGQDBTbClXPVhQZnNWPG4oJVZCJGFZCnokO0VhNGJ0JnNFJiZjPnJgO2pYQHJYQnsy
aDlROCRKTy17dCZ4PDh0P3d1JnwpbTNGNkx0ej5FbmthR0wxPzBkcAp6Mk92fUpEUkpyMk1SY2VJ
PSYrOCRxRVpuLXY3SU53dXh6b1JqN2pGZUBkbyNockZYRDQhNz9tekF6RyNzamlscDkKemAqfHMt
TCR8RW56LXJ7NSl5MSpQcn59K0ReOz4lcWJrdUl8MEJ9dDk9dHJ9QVZwKkokO1kqPnNkM2BGTTYt
JmNZCno7JGlKaE9tZG0jbGc2Pyp5U3BHUilXWSVQRCRfUEJnOCVyfHxEJTIkeGMkNjFEanJ+emht
VTR5Ml8zeFpPQ25hWAp6U3EhNEIheXM1fkdhMG4hYG9AYWZUSD9BbTModHZkPCMkQD1gezxTWFhl
MDBDSCQoPyh0Vn1uc0ZlYkpSUnVPTDMKeiQ2RVV8NnR5WE1GbXshaCo7MkN5MEszISFkfHdhNHV6
VWM3KjxPUGU8b0c0TzBwS0pwJXNXPENBWnZDOW8qJkd5Cno/NF8zd00pPn1FITg/QlBPXmlKOzdh
eyFSV3owbVFnPEtHP1krITF5UlRSQ0J7Vm5rMTF9MGI3ISRLXiE8IzclaAp6MEdhQnYjaWZnb2pn
KmhkQW1pbnRgKGxpTmhJY2NhJjJwXmRCbGpIN2FjOHFHP3MrX0hzd1RAXmdlQm5KUWZXYDEKej9P
ekZ1RE48PXltbTgzZU9+XjtBfEZCbVdXTk5vejQxaz1oMUFMZnR3Ni1rbjRJbSUwSTFmY1RuLU5E
NWl1Q3s/CnpQcUZsSTZZe1lPYFBrWkBlRWRKTEJLWSRsSFUyfUR5P3wrak99WkUxeSl5NG56aEJr
ey1tdStwQmkoX3FLfWpZIwp6JklJRDJnWlpYVTxGJno9RVZySm5qV349N0pgZlI3PT0rWDVTdTt7
LXZLc25HTFdXRzRrS0o0JSVoM1BpRmA0TiUKenF+cFlhN21OZT9DbSgjWXBGUSgtRnBaZ0BKPUdT
TUZUV3gjVXdURGMhayhaWiU2Zjs0cSoyQXBRMlFNbFVacHglCnowKndZYlFxMG1RNGNTXiZAXkFy
YHlFX3A4Z21MPjE1azlhS0cxelZ2QXVrSylrWE9zYXttZTRlPztQbXtoPjU9Ygp6YC1zKjV7eHds
czR0RyNvSFUzIXJFKFc/XlJNYGFnaXZTPyYqP3JNQi0wcj5gLSo0UiVYWml+V1VEOFpmI3RuYngK
eiU1TkVHcDNoSHg5RWh0MXZxQkRWYTl4KD8kPWdvMEEkRF5BT2dDMyskSFhmYEtiVHA5QjZNZVhl
eGZ7djF+cXFrCnphKGpxWFFFcCVgektmPEI5cjV6dXlqYlg7NngoUGtUTDJfRzwofEo0YWFPSksr
bDZJUG96d1JpWlh5PW9tUlIqegp6byRyMVU3N0dedTkoKHxWV25QPHhONitKSklmYUdZLXEkTjxJ
c08hJGxzQzJUR31lQytpcCEkMzBwI05BbjhFQSsKemx+JjJCd0JSWSlZemEqNiFHcDVxQGpeYlNG
c3hYRWkyailFYzF5aGNAfmU9TXVmajAlYT1kKG05MVNVNHZHcX4lCnprI1o0aHhPd0RiaERHQEYr
U2B2Z3o0UiglPjRKeW4+ZHNsbihnaGZae3tReXc/WUZNe3gpMW0hRE4rfVQ1O2M8TQp6OyZEODsp
U2dVajcpfE9UNEBPYT1lSmZDKVBrQ3hsXmQkKDtoZHZZcVlOSm1AKGp3P3YzJCN4fihFSX5NZnha
KzAKeml+PmQ1MDBEeHVhVTQlSEJZOCVpbzMwfkRxJHUmeV4qaHYmNHYpQ2MrNDZYdFM8OWFkUF44
R2khP2l3KCt+PDd2Cno/Y0FQbzcqP0JaZCE+fjN7XnglOHJDMntNVTMrPmZ7ckVufEA3diRrI2lk
V1dfeER+SWVgQGFnXl9gY3hKSWtOTQp6QDZPWHQlPV5DaVB2YlI+elRCPEgrT2RFQV99alB0UHY1
dXlyR0VZIXZIcUYyb1FWXnFyPGJqcyVpdW0pNkZ2RWsKej5CclIzY195KW5kTkJAN3tuRGVvQ0dG
UGo9KzxgV0BPJHhnRGFQQmIpVkNDR2xTY3NleV9RSih7Kyk+cDc0ODJ8CnpFaSpSV3dBPTJeMmBG
PkV7T0hIVVopKkV4b3dKUDJCXmh3TElkfGpCMVgyc2tmMlEkXz9KYyhsKUR9MSVnXnREMQp6V2pR
REJXWX1MXzlKdzhUJEZweGM/KmFCc3tNZmVQV2pYYyV6ZHEtWGt5aGNeYytlY1crPXdldDRHQUZh
e0BUXkIKenJVU0BzSmRAZ3dDeFkkJFBXOz4hSy16TD9eSVo0IWhnWjVZcXlOcVNYUzVlJjtsKzVP
XjwtPUx0blhUbStxRHBLCnpaUnpUKW47clZ2Xn5LSFoya3t7TCYzS3B7RkpGfHZGfE94WC09RlFg
ZTMpK2JjYDlxTTdpNFI5Yl55NkRBYl8wZgp6Ml9UYS1wWTJ9Z3VGcDdtfE5oUWFfd040WD8oYzhV
LXFMeiFWWEokOGBCSztCZEBTQ1U8Q1RQdWJxRFg7PWkxLVoKeiVXKmlAP1ZkfUZqJSNXc3F4VCpU
NyZrZi16cTlTblchN2BkYntOKkkwTWRUZW10Iy1MKWZzekl1MClgazM/U3FCCnpDZn5tciFUcmtB
P3ZNODg2d2g2ezxNRzAkcj0jQ0xvPmwxTm9xZig5QTNxK0taO3AqSVpAbHI8KEs+U0lNd0lFWQp6
K1BkJHYyOVBgUHlVX2p1Ul5yZ04qWFFpNVlDciQldjZsTWdLVmZhUntVckE2dHZ7Un02NTRIX2tO
ZHFuSEp8b2UKemFXNVZfK1dLKVh1SzJlWHB7NmJHWUBPQEE1JHAyNz4mTH58T0ZZXk8odGFEfUZV
eFVfPmg7fjFXQnZJNHsyTT5JCnoja0l3SS1UJkspXzJiRFc+Jkd1QDtGeGFlPFckaFFiO09oU3Vm
QGV0cmtCZWJrc3pqKTZGcjl+ejJDRHo8U1NGPgp6dzhlI155N3FRR19PamlOaUBjMU5nJE58MEZj
SkBPdVlVVnN5dVF9Syklbl8kYDVzUGB3JS0kcU0peHh9SjxOV3QKeihlN2heUEprS1JYM0JIKXZ5
Yj5eJG9WR1lafkxQVXpDWnJaZGpoMmRLNjN6QmokPGE/e0ZPSm1IXjI2Xj9yVSRwCnoqPV5zU1NS
KSlzYjx7U0pyKkFrNDdqc3FgKF50NF44Uks/NXNOUlpvTmVkdDJXaiE5ZVVMWEh3I3sxRD5GN2VE
fAp6KT05ZUtaQCY/VDQqWnBZNTVeYmMoM2xeIzJoail8ZCRHbERHSHtJVlp9Uj0rI2YjbEhfbDcr
SHd4aT9FJEFqeiMKenlJK35TaTx1dnYrbCNHeU9FK1NoYF9xUmw5UUJSPTw/VlZhel9hbFIhPUtK
TVFHUlc3MioremprdiNzfkN2b3k+CnpkKzNfPVRmR3Z9RHstTFFRSE5vVD9gU0R2TE9WZnp5WCF5
VHc7Z2wtWCN8WTNAIzE4QyViRUR2ZHlEdHV1IzxeTAp6QGFZQEptZDRISFV2SGF+PDRRJkNZRElE
VWUwdmBjdW0+TD45RUxTM2ZWOGA4QyFAYn1IfTBmbypeRFFUX3V9TmAKeilmdlpMemNNRil3N2RR
dzA+cWJRb09BVmg+fHdrejxKR1RRNytIJjIjXjsrSFJxb0dmRlVhKExrSmdXfFVWSm0mCnp6ODM0
cT9kXkglJExWYEdgdjNEYnpPP1V9elJqbT8tNTgmNVN6fmcwJSgofnZ1TWIkNHdUbD4+WTx1MmpK
PCk0Rgp6SUZAIWU7THpubFlAcXBKPmBtVF9QXy1OMXctPTh9ZG8hKnxjek4tSz93aCo8Kk4/R2g8
Kys4QVdBbi1JXzJZQUsKejd9bSFBanJiZXR8Njgydz9QXkB7RTVxYGVmQWphYzMoTT0+XkByPWQ8
LVVFeXJMRTdze1BmQFd3SWx1PlV6PDRtCnpZVnJyJT9mSEZLPjNLcmA7bll6R2A7bUVmK2d0MXtk
RT4xb2R0PSZhVyRTSmBxOVdjJDgyUkFgQHhzUnVQV0VGagp6VTM7NWNXKnhmS1pnPG9uK0xQWnV5
M0slYUY+ajs1XyYkZ0h5enk8bENzMC0zbkZHa048enU0PCh7YlE5N0FNPygKejk/UihEQHUkfiZo
a24kNEpnTDdObTtQKUlzPFIjZ0hzVz9lbSFYR1l3TD1XPE1XOSZpSWg1dTg7QHhnQDtaQz1gCnpj
JkZRbllxPjhreSVFUShwQzQ0bHlHc3xrWnxxJGlKc0JNRzRkKWo+P3ltMj41WFptfCtzZH5YaGNj
WHR0JTRzZAp6VHxWO2V2aj5pTDcqXmpoekQpMCMqYUk/ZVkxaGhIaTY8Y3NfUz5+eGBqQHNCPGg4
eG9TST1wQ0t8Vmc+RnMjWFkKelUwYipxZCROOCFgS2hOcWVrVHFPYFBCIW5Kb1dqPlBoNXk2UCMt
VitXYiN1X2VaMDFHdiloT2U3TyhubzxpbCNiCnpqNiUybkBCWFlpd2ZMYWhKOURodEtlR35WJWtr
RGVqPD5heT9rajd7LTgpYSteV2pmaUtFMmReZWQ9PGtsZWNLNgp6aW5KJVRuPnxsUCtIRWhiRjMk
YGdrdUFGUXhSMlgyPyZJWU1EU3k1KlhONTlaKmlaUiErb1NRO1RXPWsjQk9gUTcKenVPRU0mMGle
QXM4bX1LYG9zeks7PiM/Q3JUUiNwN0FhbURgYWRfa1gjZntOQV44VSgzSUszS0FgWSNNQjxLNmdz
Cno4PzdKYllAaXo3KzQqQjFjUUBrRHNfcFVSbzVvLTBkRVlLYmF4VGBWQU5IJnR2am1SbV9Xcykx
K21Bb0J2M3NpZgp6PGxiJnYhN1RRVVpvVkE7MmFpcW4yYnc7PHFscGhAOXJgKE92KGJtZ2QtaiZK
RksrZitsS2t3S29gakVmeUxNcj0KeihgUkUzWEI8KWNBZz1heT5HWUdZeDY2U2F5djVONDVrXipU
P1pzdSZfZVdSWUpMOzY5eSYzaGlwVmdLanc7NmxfCnpgc2NxWUl3O3p8MWlydW0meSpnJWBAUWVS
TnVzZW9eZk45azQkUndUR2A7biV7bThhdXRYKX4tVTw9dG41IVloTgp6JEUqYGArcFR1dk4hQ1VA
TDBPeWUxbSlufjRpM1liSzR4fE53ZHdjUTspTEZEME5JTUx1XkYkT2FsZjU2NWNeO0QKekMhZnx1
dnVnYEM8Rm1zOCRWTUQ4YjIlUGwtYEtsMHtVZVkzfEZLeD53WT94OCN5SjgqbS1UcG55JVVFUlpB
UUo+CnoxSU4mdyt3RXFCbGdhen1KSFAqKChTT2VAK359XikyX1RtdklKXzFJUHxhRy1oNHM3dWEm
UT5kb0IkRn1yc2Y1Wgp6PWt9a1U4JGl9MHZ+SjdeIzZNaG1xNUhNaSghQUpTeXMqN1pFaUxZVGI/
Mj5raztqN3JWcz1tTWNEdHdKKHp+YTMKenh9RFg3azNXazR6WSR5Z1BzYUhrZWFvd0hLRk9jV2Nv
cH1KTkVuOyhfal91Xy18c0tTe3JeIXMhUlQ5N1c2Uy1xCnpne1pDbkNmI1M8My1aMTFlZVkrcGUq
N3M5dVpvTFFiJGhYUVliVzBDS2d0eD47X317R0d1KWIyOUQmdXtqYkwkbAp6Pk0qRklFWUhSKUsw
TjlSTXxgZWJ0WWZyKGpRZWx2I0l9eXk4Zn1vZDZLbHNPUFpyeVEhUD9UVCpoNGllZk5hRGAKejBo
aS1TYzVtenRUUiQkeFVYYiUkPj9RN0FLQkNIX0tYbz08amBZcmNUblI3TWs2OG85KFZaUTljNVB8
MXlSIURiCnp5VW1Gc09qcXVPJnopfnxgPHRpWkI+Izg7aWE3U148dV92MiFfO3pmWTdmUUttazw1
LUNwe019PW5FQFB1VnRSeAp6LUFpdmhVQ2EyWigtKTZ2KkJ2O3hfUTFqSysyOHRUcigyQTB3ZlhT
aVFzRE88VWxQMiV3cFd9ZCkoJU9YODRCWC0Kekd1OXBCSXU4OV9rM1ZfamAtJEtHQmZzdkcxbkxW
c1F2bXJ7Z3BVenZKaXlNbmJtcihiYXF7UldhNzJacDJpQmdBCnpiU0w4aGFiNXN2X3FQJGRfU2Qj
JXUzPCgkX1V3U0lmJD43OC1Hdy0wVjVQZylUfE1ecD16KD9nJWBeVHY5azBLIQp6NiNKMlAyWDJL
TUo7MjVfdTcpbi15Jnc8dzt+QmBEPD08VFgqSz07KyVZWDA+ekNSZUBFQzE8eGF+ezBmYDNVI3AK
el9obVp7IXxMQmx3Rz99JVBJUmtyJWxeWnMrUjNya1dBRUM5ejA8dyp0O0VrYjlfTT4oRkg5WVdG
ITNGJEBqYDB0CnphRGsoT3tgaDhaRlRPTWlBbWpmWl81UyhBNTQrMmMwPzUqNGJQI1h0TUtDOXF8
OGVaYnEwMnY/aCRwK041ZzFuRQp6bEVDZiFqTWFGJWFQTGdGYiRxQTAqRGtqZD1XUj9jQDVjRWdV
JSU3OzFtdzlgNTQyVXB0Y1VmTlZsVC0xX2g7UT0KemBsbWtJfDlAdWQkM1pgfm9maT9tYzB0YFgl
OFVjWV50Wk94ZVZHP1ArVl59cUc9TDEpbzdeXjBqbjxGKnYzXnxzCnpRNTtrX1l5Wm5aI2NjITRR
WEZFcXlGWTlMU0tBOVJiT1ROTTNEM21fbihLU2QkS1QpbGB+UVFqRlhqcDMyVTRIawp6emFQWVRq
cip+T3dMQWFHIUVeMjFXOEpUPHxGfk90PVh8JWJlaihtMiMlbW9kY1VPKSQpYXAjbmtwUz1Zb2Q1
QzQKeiljR0lkdUJII2E4aF5nTWY5WTVIfE5nSmRgTVlsNnFiO1o2Tl8lbF9qTXlifGNwZFpLS2FQ
elBrO0wySGs9O2pjCno/UDZkTDw0M203JnZga1coUzQ1KyVIZ3x4XiFkWkArUFNUZCR+cFc2fDBE
MVZDaCR4RjxZIzVtd3VNZ3Jvd2gmdgp6a0tUezFZd3lTVkExYCFnZTw9PVNffWxZOzs+cC1EKzc3
eyp3YHt9JVkmO1VyeUlIcHkwcHhmKlhtM3lLbDNqXzkKekZVSHs7PU9jN25oXj5Ve2p9R1A3a0lT
YjFBV2xHaHMrbDh4TjtfQk1PZFIlZFl4ampDeldWZzFLM0g3dUszK1EwCnp5fDQ7V0xWVy1MRTc/
Z3pLfnlfPUhwfG51OC1IZWJlPCR7VyNNUEdLMWpALXAqcUdHI2RfSTJmQU9INUNKTmAlaQp6O1VD
NmNrVDFgP1o5NUY+ZW1yclR3WSs9bWxrVVFVe3M3WHhfazMpQHtiMHNQP2Q+K3RFcSZEOGl0flpg
bVl3K2gKensmLT1uZHR0eC0zRlB8WHtKKn5FYmBRViklPkRRcVk4VChSRj4oSUx4OT94PC1xPDs4
XkR0Z1lgK21HeUBNZTM5CnpVfj5KekpNbFVLQCNeI09IYD9BV3d2IygxbVViQDRyNVJWN1luT2Nl
Sk9qdT9EV0I9WDc3Q30yQ0V3aiRpMWxOZgp6NUEkQlV6WiFkTFV0YTl+PlZXbSpzYVdzYjhuOT5N
Wmc+dF5SXnp5cj5HTUVOIzIkdFZAdUdSPitkNEFOI1gweHIKejc/LXtIe3JUYSpePHo1X2E0ay1X
emExQjI3X3hsMHY+eGxhR3U/fighYDY+MDNsQnpuTEVAelk1OGVHUU80I18xCnpmQV9uR2BhYklY
elo9dGcoM2ZfKSkkMmN3diU9JTsoWHpYR3dtVygzVGl4UG5ZKSZ+SG5eakk3WTs1UXx8RCo0Rwp6
JUheS0RhPGgmO0lJJVlVdFlLVkx0VmBtdSV6ZXhHc1M4dzAtKT1MYFFFQXU4UyY2SWJ0eFJublk4
UGl+enNAaCsKeiszOE5pYWo2XmV8RipNc0JORzNlXz5vKWpjUjV9VDlyWkImPFBxPE95cWZ5Pitu
aih0bWhpciF6K1h4TGlPc0l2CnpQT0tDQFkhOWFLcHhTfipkIV4qYjx3UDdoRmwwRzcrRzg8NFNV
ayZkJmdiS2EmIz8kQXFybU41YEJQSV83S1N0bQp6cWV6U2tGfHZmVjlhQWNqMGhFTWROZCFmNDBt
cmNnalU9S2QwKWM9aWlDX3Bjd3ZrMWtwIyo2T3Y/R2NMQ0wlKD4KenUmQXNwOFcwLTdtSVY7Z0VG
bmUrMzFwaW1VRX0tX15XSEQ3PmVQTXJvX2hENWQleTJ8cnxRQz5QYS1AQlJMZ1ZkCnpfZHs+dS03
b1BPS013YUYyRXR9eyh1LWtrXlJ0XlB2KlI+MWNqVSN5cjdvRndDO1hVMWxeQ0hXaV98TGRxKWMr
Vwp6LWxiRGFgeTRNOTQ4eDB0OFRVMTNNO2kqYnVKSFdtcUspXz1qQTV9U1VBV3AhWEl2dXU8Vzxq
cHI+dVFgVEhIZnEKelRueGpwRkt1QXJtQWkwKGl+b1JodzBlXz5uVm5KeGljT1lCekc+R2dRVGt6
KXpDPW9xKFBvVEtyUSREQjRiPWxWCnp3dyZWaWc1MDNBeGQyUH1fO343SktoaURLTT90OWpfbDYy
KXV1WnRjU3NSTTcqb2NWQzIlR01KaiY8QkVsTG4qKwp6dmM1fWNXcmJxSHZ9YjY8ak5obj1WRGh8
S1hMVjcheHhMVCgyI3N7aE5wa3xPVy1jZUh7bFgpckxxS05HcFR6NH0KemA9bDJkR1A2dnRaPWsp
Wlk8WlkhKnNgJE8pMiplYSFKaypuUksyWDhIbnM4e2lhPG1iNkheZmU+X1hkOVlVcF5SCnphXlE4
X0ZKK3tgY0g5aWpVd3NLUEBhTipOZGtrQUh2SzI/bFAyb34mcj99WCpvJjVHbXl6dEIwTUFnTCM5
XlV+cwp6bjZOcWokZmdGezQ9bEByVzdsND4xfEdzViQlRktEMzYkfDQhen47cHlaYGs/LUBTZit5
eFclKmtVYmBlUU58JT8Kekp5c3IreCY5czd7dEFQM3R4fmhLQ0pESHpvWkxwekNxMHhJQmM2fGhD
RSgtcGN1PnFzIVozeitaeTB6KHF2RCNiCno3Pj1qfVQrKCElYUAzekEhKzlIfUtFQ1lrN2NNR19e
P1IqR3l+d0BTMVZnUm8lPSRtOVFtaCUlUU05Y3Bsd1I3cgp6MTB2VnYyRkwzMW4+NlQ1YS05d1Q+
SkRPYTMyVkhVVGhYJHlJPHF4Nip2Ozh1YnBrcmtsOz09WEBoO0g4QyVYV2MKemM1WTNCb2doPCpU
alcqT1piWT87dnJyWWZ7TTx5eDhsdVhoSyR3fjlSJnplITxLXzg9TihPREdEckI7QiRhMWxjCno8
TFJfJGdEVkNJJWNWTUFXejxPOClzSU54Wk5VJVdfbFRrUChENCFPX25xQyFhcDh4WGclOU00Kj1D
P2d5KTZaewp6d3VXKypCPVlRfjB+YXpxcHR2Z3Nkb2BpRmRvaXxzKiV6K2Zlfk9nMUU7O2dYbzFS
JSRBVVNQSWolP3ZqbTNGcUcKekphXyhqN3kzO3BfWXBmc0NBcWI4U35vQDFJe0VHRFdrX1khQztp
QXxEc0hOMVdNTi1EP1pFMFNARyotMXAtPyR7CnpRNXpONi1qPU5CcHtuflQjT25PZUxQSEZfam83
dXxPYjlIaDl7RnxkT2JKfitTT3pDJipsWktWWj1GJG89dU9qbwp6NUVeYEVkfGhwKGVgNXlzY3Bj
UV8jUit6YVUhMipxcjJaZzFBZUpCQE8lZ35rIUQjU3lgN3ZeJTYodDdTX2JIKiQKekRpKlJkKzdp
ezc+V15IQ1BMU0FVRkhDaU49ZGxLayREKlRubitZVU9kYkd3QGE/NysmKjNiKytFNyoyMloqRGRy
CnpAPlRsS1FCbktwbkg3VlhKRzBHQ293SklYUz5ZPEMoPWpmfG9+S1BSRHtyV2ROPVVsN1FSJHF2
ZnVVaVFjSm9fPAp6MHxqeFVZZzJRJSNrQ3ZxZjdWWVI7UU8kIXlgTnx8bjVRYFZWPzhhREZEKkgl
YTFqOU1OVG1DR0NRWGpAamdIJEYKeiRncWJXUVIpVlFaYVo3Pm0yXzdKTyNTOG43cV5YNCRVTnpz
UVZKd1RGcDFaUEh9JCVfQ0FYRmxuRTsoK3w0SSMlCnojdVp9U0xRO0ZsRHxiUTl1YHJFSyM0PXtG
UGpfdzF2JVQ5eXhKdj4mRTBDP0ViUWFZMXk9RiMyNjs8e1Q+RD09PQp6QVB8OT5MJEBze1ArNSF7
dU1+STM2c0VtUWw4NjNIaXohbEdAMk99P2ZyPntvcFViLUZGSTBDKkoqbV95IUJTTGwKelcwTXUq
Sl5ASjtpP28taXt8LXZxa3IhdzM8fntiaHlxOUxzX0NLeHRffm0hKF9JaSlvak9XQHZxPk9paSY1
clcxCnpSaFVyZyM9YSpKVTVLMFpSOWwlT3ZlZFUjMl5wVkNXSHl4dDg5bVZiSnQoYzFzeiRWcjRs
ZzI7TmdJLXJxNWdCTwp6diNzQXZPX2F5djIjXk9Qd15UWSlMZChTNUN2bEw8aih5eFExbzhaNWQ1
RT1tJihOWFI+RWwlVDlJSk1uQTM1YEcKejx3eW94I0RnPHFEbEJSJVdTMHgpPkcyQSheXilWWTNw
JXxVdHw1OVNKTzdHMFB9Tjg8YUIoX1RCWU0kMkluK3xrCnpHMGJSRThsfms7djEqIXYzbnZ2S0BJ
eCRPTSlOY0ZZfnhVWkxBRjhCbzFtYnNMcDc7KDtuTFFoNFBCQUZLPH1jVwp6ZUtQOExzQnFYblUz
ZTROZzJtQnsrPTh3KXZBQjl4Q2VvPGc4PjJEKFNwbng3WGlvaD0pY3E3eilzSWlGeW1Ma0wKelQ8
RztTWChFSm9hPFh2WjFPWD5YZUZ+SVo9eDdGMzZxUyRRYSkqfjw2djVuPTd7aVUoaVE0eENmakUp
dHtNI1JOCnpEKiQpT2BBMXBwe25ZOEtDQGx4QFR4Kl5AZWMoKHgqP0hsX25wMUo1VWYhQV8wJkZT
a3dCSGYhbndzWGoyYmZPbgp6ZEBiJmp3bl54OWhXIz1xZFlvb21iantzbW0zM0FZRSp6YUFzO2Ns
MTh7cDI8Q2lBJkVAcSF4VlFKQX5YXj9vcD0KelhaRXAmY3JlV2FTKFMlOXc0MlI9amheU3JFKCkw
KCp5RjhoOEJxUF45Y3hhWVAwWkhYO2dnSnZBdHNGLWtnakxXCnp5N1pCb0wqSHk+WWRoQGhsMHhx
MFoyc0dTbzApQlp0O01JQUFHaUE3bXJpRDhjOEV0TUs5Rnl3e1UjPmFUVD1kNQp6MzNVNWNVJi1i
VyRpYlcyJVlPTWYoeXxFO0dkMz5pdSZkcz9Kb3MwV1R9cU5zUFZrfWR0JCtDZ24yem5rOCpPKHcK
ejgyTjIlJj5pc2EwTHY5eko3OG8xYHZ8ITJmVihueU5QdEpeUnsjUzczPW48KyRQeHNuQVhXeU0x
andfTkRJfn4zCnp6WSVmfUR9eHlmRnJmbWJvMGljNWg/UE9DM31SKDR1ZV4qN3pecHJ7TmRUZUBo
P1BPQzQ2MSNnYDFsbmRnN08rRApudVl2TCFTb0UtNXNxdWVRZ0pEM3J7dktBc1JHN3ZhMGd2eH56
a09gNHZwQFhAQDIxeVkKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2VmZmVjdC1jdXN0b20tcGFyYW1ldGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tcGFyYW1ldGVycy1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFiNmFkNmMuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLXBhcmFtZXRlcnMtZXhw
ZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotICAgICAgCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20tcGFyYW1ldGVy
cy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9tLXBh
cmFtZXRlcnMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmEwN2EyZS4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20t
cGFyYW1ldGVycy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjIgKzAsMCBAQAotPCFkb2N0eXBl
IGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3RpbmcgdGhhdCB0
aGUgY3VzdG9tIGZpbHRlciByZWNlaXZlcyB0aGUgY29ycmVjdCBudW1iZXIgcGFyYW1ldGVycy48
L3RpdGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJl
bmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxl
ZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0
cnVlKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRl
c3QoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRo
ZSB0ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAg
ICAgICAgPHN0eWxlPgotICAgICAgICAvKiBUZXN0aW5nIHBhcmFtZXRlcnMgb2YgdHlwZSBmbG9h
dCwgdmVjMiBhbmQgdmVjMyBpbiB2ZXJ0ZXgtb2Zmc2V0LXBhcmFtZXRlcnMudnMgYW5kIHZlYzQg
aW4gY29sb3Itb2Zmc2V0LXBhcmFtZXRlcnMuZnMuICovCi0gICAgICAgIC5maWx0ZXJBIHsKLSAg
ICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4
LW9mZnNldC1wYXJhbWV0ZXJzLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5m
cycpIG5vcm1hbCBzb3VyY2UtYXRvcCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHBlcnNwZWN0aXZlIDIsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2
ZXJ0ZXhfb2Zmc2V0IC0wLjA1IDAuMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcm90YXRlIDQ1IC0yNSAtMTAsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBtaXhfY29sb3IgMC40IDAuMiAwLjUgMC41KTsKLSAgICAgICAgfQotICAgICAgICAuZmlsdGVy
QiB7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2Vz
L3ZlcnRleC1vZmZzZXQtcGFyYW1ldGVycy52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgt
Y29sb3IuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICByb3RhdGUgNDUgMjUgLTEwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBwZXJzcGVjdGl2ZSAxMCwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHZlcnRleF9vZmZzZXQgLTAuMDUgMC4xLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBtaXhfY29sb3IgMC4xIDAuOSAwLjUgMC41KTsKLSAgICAgICAgfQotICAgICAgICAu
ZmlsdGVyQyB7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVz
b3VyY2VzL3ZlcnRleC1vZmZzZXQtcGFyYW1ldGVycy52cycpIG1peCh1cmwoJy4uL3Jlc291cmNl
cy9taXgtY29sb3IuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBtaXhfY29sb3IgMCAwIDAgMC41LAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBwZXJzcGVjdGl2ZSAyLCAKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdmVydGV4X29mZnNldCAtMC4wNSAwLjEsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHJvdGF0ZSA0NSAtMjUgLTEwKTsKLSAgICAgICAgfQotICAgICAgICAu
ZmlsdGVyRCB7Ci0gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVz
b3VyY2VzL3ZlcnRleC1vZmZzZXQtcGFyYW1ldGVycy52cycpIG1peCh1cmwoJy4uL3Jlc291cmNl
cy9taXgtY29sb3IuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB2ZXJ0ZXhfb2Zmc2V0IC0wLjE1IDAuMSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcm90YXRlIDE1IC00NSAxMCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcGVyc3BlY3RpdmUgMS41LCAKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbWl4X2NvbG9yIDAuNCAwLjIgMC41IDAuNSk7Ci0gICAgICAgIH0KLSAg
ICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCki
PgotICAgICAgICA8aW1nIGNsYXNzPSJmaWx0ZXJBIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVu
Y2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmaWx0ZXJCIiBzcmM9Ii4uL3Jlc291cmNl
cy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmaWx0ZXJDIiBzcmM9Ii4u
L3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJmaWx0ZXJE
IiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8IS0tCi0gICAg
ICAgICAgICBUZXN0aW5nIHRoYXQgc2ltcGxlIGN1c3RvbSBmaWx0ZXJzIHNlbmQgdGhlIGNvcnJl
Y3QgcGFyYW1ldGVycyBvZiB0eXBlIG51bWJlci4gWW91IHNob3VsZCBzZWUgNCBibG9ja3Mgb2Yg
Y29sb3JlZCBiYXJzIHdpdGggZGlmZmVyZW50IHJvdGF0aW9uLCBwZXJzcGVjdGl2ZSwgb2Zmc2V0
Ci0gICAgICAgICAgICBhbmQgY29sb3IgZWZmZWN0cyBhcHBsaWVkLgotICAgICAgICAtLT4KLSAg
ICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2VmZmVjdC1jdXN0b20tdHJhbnNmb3JtLXBhcmFtZXRlcnMtZXhwZWN0ZWQuaHRtbCBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS10cmFuc2Zvcm0t
cGFyYW1ldGVycy1leHBlY3RlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAx
ODc3NjZmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZm
ZWN0LWN1c3RvbS10cmFuc2Zvcm0tcGFyYW1ldGVycy1leHBlY3RlZC5odG1sCisrKyAvZGV2L251
bGwKQEAgLTEsMzQgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4K
LSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAg
ICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gdGFrZSB0aGUgZXhwZWN0ZWQgaW1hZ2Ugb25seSBh
ZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90
aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHN0
eWxlPgotICAgICAgICAuYm94IHsKLSAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsg
Ci0gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibHVlOyAKLSAgICAgICAgICAgIG92ZXJm
bG93OiBoaWRkZW47Ci0gICAgICAgIH0KLSAgICAgICAgLmZpbHRlciB7Ci0gICAgICAgICAgICAt
d2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwKSB0cmFuc2xhdGUoMTBweCwgMjBweCk7
Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKLSAgICAgICAgICAgIHdpZHRo
OiAxNTBweDsgCi0gICAgICAgICAgICBoZWlnaHQ6IDE1MHB4OwotICAgICAgICB9Ci0gICAgICAg
IDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAg
ICAgICAgPGRpdiBjbGFzcz0iYm94Ij4KLSAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZpbHRlciI+
PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS10cmFuc2Zvcm0t
cGFyYW1ldGVycy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3Qt
Y3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJzLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGEzOTQ1NjMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9lZmZlY3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJzLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw0NiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgot
ICAgICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IHRoZSBjdXN0b20gZmlsdGVyIHJlY2VpdmVzIHRo
ZSBjb3JyZWN0IHRyYW5zZm9ybSBwYXJhbWV0ZXJzLjwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+
Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRl
ckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KHRydWUpOwotICAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIAotICAgICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAg
ICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBydW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9h
ZGluZyBzdWNjZWVkZWQuCi0gICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQot
ICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgIC5i
b3ggewotICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAKLSAgICAgICAgICAgIGJv
cmRlcjogMXB4IHNvbGlkIGJsdWU7Ci0gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwotICAg
ICAgICB9Ci0gICAgICAgIC8qIFRlc3RpbmcgcGFyYW1ldGVycyBvZiB0eXBlIHRyYW5zZm9ybSBp
biB2ZXJ0ZXgtdHJhbnNmb3JtLXBhcmFtZXRlci52cy4gKi8KLSAgICAgICAgLmZpbHRlciB7Ci0g
ICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRl
eC10cmFuc2Zvcm0tcGFyYW1ldGVyLnZzJyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB0cmFuc2Zvcm0gdHJhbnNsYXRlKDEwcHgsIDIwcHgpCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKTsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVu
OwotICAgICAgICAgICAgd2lkdGg6IDE1MHB4OyAKLSAgICAgICAgICAgIGhlaWdodDogMTUwcHg7
Ci0gICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25s
b2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8ZGl2IGNsYXNzPSJib3giPgotICAgICAgICAgICAg
PGRpdiBjbGFzcz0iZmlsdGVyIj48L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDwhLS0K
LSAgICAgICAgICAgIFRlc3RpbmcgdGhhdCBzaW1wbGUgY3VzdG9tIGZpbHRlcnMgc2VuZCB0aGUg
Y29ycmVjdCBwYXJhbWV0ZXJzIG9mIHR5cGUgdHJhbnNmb3Jtcy4KLSAgICAgICAgICAgIFlvdSBz
aG91bGQgc2VlIGEgY29sb3JlZCBibG9jayBzbGlnaHRseSByb3RhdGVkIGFuZCB0cmFuc2xhdGVk
LgotICAgICAgICAtLT4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2VmZmVjdC1jdXN0b20uaHRtbCBiL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA4Mzk3ZGU4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9jdXN0b20vZWZmZWN0LWN1c3RvbS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzQgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxl
PlRlc3RpbmcgdGhhdCB0aGUgY3VzdG9tIGZpbHRlciBpcyBhcHBsaWVkIGNvcnJlY3RseS48L3Rp
dGxlPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNl
KCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIs
ICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVl
KTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3Qo
KQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcnVuIHRoZSB0
ZXN0cyBhZnRlciB0aGUgZG93bmxvYWRpbmcgc3VjY2VlZGVkLgotICAgICAgICAgICAgICAgIGlm
ICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIubm90aWZ5RG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICA8
L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotICAgICAgICA8aW1nIHN0eWxl
PSItd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1vZmZzZXQu
dnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFsIHNvdXJj
ZS1hdG9wKSkiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciPgotICAgICAgICA8aW1n
IHN0eWxlPSItd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1v
ZmZzZXQudnMnKSwgNiAxMSkiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciPgotICAg
ICAgICA8aW1nIHN0eWxlPSItd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2Vz
L3ZlcnRleC1leHBsb2RlLWRldGFjaGVkLnZzJyksIDMgMyBkZXRhY2hlZCkiIHNyYz0iLi4vcmVz
b3VyY2VzL3JlZmVyZW5jZS5wbmciPgotICAgICAgICA8aW1nIHN0eWxlPSItd2Via2l0LWZpbHRl
cjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL3ZlcnRleC1leHBsb2RlLWRldGFjaGVkLnZzJykg
bWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2UtYXRv
cCksIDMgMyBkZXRhY2hlZCkiIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciPgotICAg
ICAgICA8aW1nIHN0eWxlPSItd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2Vz
L3Bhc3MtdGV4LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5m
cycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5n
Ij4KLSAgICAgICAgPCEtLQotICAgICAgICAgICAgVGVzdGluZyB0aGF0IHNpbXBsZSBjdXN0b20g
ZmlsdGVycyB3b3JrIGluIHNvZnR3YXJlIG1vZGUuIFlvdSBzaG91bGQgc2VlIDUgYmxvY2tzIG9m
IGNvbG9yZWQgYmFycyB3aXRoIGRpZmZlcmVudCBlZmZlY3RzIGFwcGxpZWQsIGZyb20gbGVmdCB0
byByaWdodDogCi0gICAgICAgICAgICBvZmZzZXQgdG8gdGhlIHJpZ2h0IHdpdGggd2FzaGVkIG91
dCBjb2xvcnMsIGp1c3Qgb2Zmc2V0IHRvIHRoZSByaWdodCB3aXRoIG5vcm1hbCBjb2xvcnMsIDQg
c21hbGxlciBibG9ja3MgYXR0YWNoZWQgdG8gdGhlIGNvcm5lcnMsIDQgc21hbGxlciBibG9ja3Mg
Ci0gICAgICAgICAgICBhdHRhY2hlZCB0byB0aGUgY29ybmVycyB3aXRoIHdhc2hlZCBvdXQgY29s
b3JzLCBub3JtYWwgYmxvY2sgd2l0aCB3YXNoZWQgb3V0IGNvbG9ycy4KLSAgICAgICAgICAgIE5v
dGU6IFdlYkdMIG5lZWRzIHRvIGJlIGVuYWJsZWQgZm9yIHRoaXMgdGVzdCB0byBzdWNjZWVkLgot
ICAgICAgICAtLT4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1mYWxsYmFjay10by1zb2Z0d2FyZS1leHBlY3Rl
ZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItZmFsbGJhY2st
dG8tc29mdHdhcmUtZXhwZWN0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
Y2M4ZTcxZi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2Zp
bHRlci1mYWxsYmFjay10by1zb2Z0d2FyZS1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsMTkgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDxzdHls
ZT4KLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7Ci0gICAg
ICAgICAgICBsZWZ0OiA1cHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgICAg
ICB3aWR0aDogNDVweDsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOwotICAg
ICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGRyb3Atc2hhZG93KDEwcHggMTBweCAxMHB4IGJsdWUp
OwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLTwvaGVhZD4KLQotPGJvZHk+Ci0gICAgPGRpdiBj
bGFzcz0iYm94Ij48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZhbGxiYWNrLXRvLXNvZnR3YXJlLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1mYWxsYmFjay10by1zb2Z0
d2FyZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyODgwODc1Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLWZhbGxiYWNrLXRv
LXNvZnR3YXJlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1NCArMCwwIEBACi08IURPQ1RZUEUg
aHRtbD4KLTwhLS0gCi0gICAgVGhpcyB0ZXN0cyB2ZXJpZmllcyB0aGF0IHRoZSBvbGQgZmlsdGVy
cyBhcmUgcmVtb3ZlZCBmcm9tIHRoZSBwbGF0Zm9ybSBsYXllciB3aGVuIHRoZSBmaWx0ZXJzIGNh
bm5vdCBiZSAKLSAgICByZW5kZXJlZCBpbiBwbGF0Zm9ybSBjb2RlIGFuZCBpdCBmYWxsYmFja3Mg
dG8gcmVuZGVyIHRoZSBmaWx0ZXJzIGluIHNvZnR3YXJlLgotLS0+Ci08aHRtbD4KLTxoZWFkPgot
ICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21G
aWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7Ci0gICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5jdGlvbiBk
b25lKCkKLSAgICAgICAgewotICAgICAgICAgICAgLy8gQWZ0ZXIgdGhlIG9ubG9hZCBpcyBmaXJl
ZCwgd2Uga25vdyBmb3Igc3VyZSB0aGF0IHRoZSBzaGFkZXIgaXMgbG9hZGVkLgotICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4K
LSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgICAgICB3
aWR0aDogNTBweDsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOwotICAgICAg
ICAgICAgLyogRm9yY2UgYSBwbGF0Zm9ybSBsYXllci4gKi8KLSAgICAgICAgICAgIC13ZWJraXQt
dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKLSAgICAgICAgfQotCi0gICAgICAgIC5z
aGFkZXIgewotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291
cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzJykpIGRyb3Atc2hhZG93KDEwcHggMTBweCAxMHB4IGJsdWUp
OwotICAgICAgICB9Ci0KLSAgICAgICAgLmJlZm9yZSB7Ci0gICAgICAgICAgICAtd2Via2l0LWZp
bHRlcjogZHJvcC1zaGFkb3coMTBweCAxMHB4IDEwcHggcmVkKTsKLSAgICAgICAgfQotICAgIDwv
c3R5bGU+Ci08L2hlYWQ+Ci0KLTxib2R5IG9ubG9hZD0iZG9uZSgpIj4KLSAgICA8IS0tIAotICAg
ICAgICBUaGUgZXhwZWN0ZWQgcmVzdWx0IGlzIGEgZ3JlZW4gc3F1YXJlIHdpdGggYSBibHVlIHNo
YWRvdy4gQXQgdGhlIGVuZCB0aGVyZSBzaG91bGQgYmUgbm8gcmVkIG9uIHNjcmVlbi4KLSAgICAt
LT4KLSAgICA8ZGl2IGNsYXNzPSJib3ggc2hhZGVyIGJlZm9yZSI+PC9kaXY+Ci0gICAgPHNjcmlw
dD4KLSAgICAgICAgLy8gRm9yY2UgYSBsYXlvdXQuCi0gICAgICAgIGRvY3VtZW50LmJvZHkuY2xp
ZW50SGVpZ2h0OwotICAgICAgICAvLyBIYXZpbmcgdGhpcyBpbmxpbmUgZm9yY2VzIHRoZSBvbmxv
YWQgZXZlbnQgdG8gb25seSBmaXJlIGFmdGVyIHRoZSBzaGFkZXIgY29kZSBpcyBsb2FkZWQuCi0g
ICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5iZWZvcmUiKS5jbGFzc0xpc3QucmVtb3Zl
KCJiZWZvcmUiKTsKLSAgICA8L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9tLWNs
aXBwZWQtZXhwZWN0ZWQucG5nIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0
ZXItcmVwYWludC1jdXN0b20tY2xpcHBlZC1leHBlY3RlZC5wbmcKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDM1YTQ4ZTJkMDM3MjIwMmZkZDA0OThmNjQxNTQ1NWE4MTM2OTlhMTcuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKR0lUIGJpbmFyeSBwYXRjaAps
aXRlcmFsIDAKSGNtVj9kMDAwMDEKCmxpdGVyYWwgMTA3MTgKemNtZUkyWWUqRFA2dnl3KFBQUXZQ
d2w9e1JJcmRQKjU4MTQlWmRoRyZPKVghJilHJChXdHczemVFTDZ5eUg2eDUzCnpRaHtpdzVtNits
cEdyaV9eLUoxWUdMbmpQIUVCMlY/T35haStafG48YD1MKkxqUHEkPj1INU1MJiQ7KmYmaVMqfAp6
WCh7cFV1RC00YUFAe0B0ISVsPTBKVkk9eSh1RiohS1QlbWtLMC0/M0dFNEZmPWpSbjFKNj8jUWd2
Yk1WNW1DODwKekhkazA1OERaNHdiaC1OY3U+NDQhJlp5VWkzeDN5dyRIfF9lTF9eSChRZkJPUlBm
S0JqbXRuXl9lQChKLU1ESE9+CnoxekU4N1Q/NStRKyZuaG0rdWZQYjViQSNLKi1PVyQtRVJOY0py
eXFeaFVKdU05KmZCMCQ8MHBwbjVJKzw1MlFDVQp6Kjt0JjRtMG1tNyp8Wkd2KSNweVlEKXx2djtS
aD9eYy1SS3BSSWApcVg3bGdNNzMxb3VVaGB+NFNHZ1JvaUZCKCYKej8zKDxwcXZHdHJGdlllfmNA
NEk7aF5YeElydmhoZ3F+UUNyPzBmNE0hKHR7eFlaZ2h4dEFXQSFediZmYmlzU2skCnpCaD9HWkIx
dnMweUlPOXdFdDM7ZXEqVEBAZE5zfmBOPyZKTSF1NGdQWDBON3hmP0NabHklMD0hSU9NOVZYPll2
MAp6bGA8ZDVWLU5wUyVFSy0lSEUtSEBAO3FmZTdLe0UtamcqSV9wKiRXY3BaMkI5cEFuSjFENE96
Y0F7fDQzQVZCan4KejJ+SDRQRj16M0Q4dVVMRD5GJCojXlA+VUI/NjJYP3FuKEBIc0FoaD1ITkVS
VXk5ZjsmWGZ0RWlhMTh+WTRHaTw1CnpWPXFPQkd7UHxVWTFRSCRXSiRxZCQmcXZsTWtgcU0yRyQx
M091TUYwXjlAKE1zSmVQdUw/UWkyNnI0VkNUIVFeegp6b1hqeyg3emVJRVIyVVl7M1hrQ2lrKHZa
YGctakp0WlBvbD03LVh3JFlIQXdweWlHJWY2QnZpJFFkdmlrT3JqaHoKelRgM3d2Qz0lNik9d2E3
QmpYYjE8NXhfQ2V1VFgkWCFsSDQxdDdAKChwNDtoN1c8QnhISFZSZmpKUW1nc1FWZXVzCnpTKSow
RVI8X0kmMkctUlVQLXR+dzd7T016VCgoQEpRcjB8cXRmUVBlQl9mfVJCKzdDaDBtNnNUZGRqJk5F
VmBCNgp6cSUwZCpjRm5pcVdaNXxAJnRzUzlVNmZea1ZJVjlKN1VgaERYKDNuQzArKXlzNVU0RnUm
NGlMbXJaT09yTHw2YmMKelg/ZFY7a3VWQUU5QkVUQWJoIWtSKEVManM2VTs7ZWxRMWV1OVRRQkAx
ZHx7dk5GNVVoM2p+dU9FUCR9ISlaOyl7CnVrV0B6eTdDPX4jPW01ZmtRfGt2fDtoJSpDWXJxNEND
bVZpciZxZVp3T19VZ3lWcmJveFF+M3V1MEgzUz8KCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1jbGlwcGVkLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3Vz
dG9tLWNsaXBwZWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4
YjEzNzg5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmls
dGVyLXJlcGFpbnQtY3VzdG9tLWNsaXBwZWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEgKzAsMCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2ZpbHRlci1yZXBhaW50LWN1c3RvbS1jbGlwcGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1jbGlwcGVkLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJmOTJjYzE5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9tLWNsaXBwZWQuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDYwICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPCEtLSAKLSAg
ICBUaGlzIHRlc3RzIHZlcmlmaWVzIHRoYXQgc2hhZGVyIGZpbHRlciBpcyByZXBhaW50ZWQgdXNp
bmcgdGhlIGZ1bGwgc291cmNlIGltYWdlIG9mIHRoZSBlbGVtZW50IGluc3RlYWQgb2YganVzdCB0
aGUgZGlydHkgYXJlYS4KLSAgICBBbHNvIGl0IHRlc3RzIHRoYXQgdGhlIGNsaXBwaW5nIHJlY3Rh
bmdsZSBvZiB0aGUgYm94IGlzIG5vdCBhZmZlY3RpbmcgdGhlIGZpbHRlci4KLSAgICBUaGVyZSBz
aG91bGQgYmUgb25lIGxpZ2h0IGdyZWVuIGJveCBvbiB0aGUgc2NyZWVuLiBObyByZWQgc2hvdWxk
IGJlIHZpc2libGUuCi0tLT4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwot
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRX
ZWJHTEVuYWJsZWQiLCAiMSIpOwotICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFz
VGV4dCh0cnVlKTsKLSAgICAgICAgfQotICAgICAgICBmdW5jdGlvbiByZXBhaW50VGVzdCgpCi0g
ICAgICAgIHsKLSAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5iZWZvcmUiKS5j
bGFzc0xpc3QucmVtb3ZlKCJiZWZvcmUiKTsKLSAgICAgICAgfQotICAgIDwvc2NyaXB0PgotICAg
IDxzdHlsZT4KLSAgICAgICAgLmNsaXBwaW5nX2JveCB7Ci0gICAgICAgICAgICBtYXJnaW46IDIw
cHg7Ci0gICAgICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4
OwotICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKLSAgICAgICAgICAgIGJhY2tncm91bmQ6
IHJlZDsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgLmVtcHR5X2JveCB7Ci0gICAgICAg
ICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIC5ib3ggewot
ICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKLSAg
ICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOwotICAgICAgICB9Ci0gICAgICAgIAot
ICAgICAgICAuYmVmb3JlIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFy
ZW50OwotICAgICAgICB9Ci0KLSAgICAgICAgLnNoYWRlciB7Ci0gICAgICAgICAgICAtd2Via2l0
LWZpbHRlcjogY3VzdG9tKHVybCguLi9yZXNvdXJjZXMvdmVydGV4LWhvcml6b250YWwtb2Zmc2V0
LnZzKSBtaXgodXJsKC4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMpIG5vcm1hbCBzb3VyY2UtYXRv
cCksIG9mZnNldCAtMC41LCBtaXhfY29sb3IgMS4wIDEuMCAxLjAgMC4xKTsKLSAgICAgICAgfQot
ICAgIDwvc3R5bGU+Ci0KLSAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9yZXBhaW50L3Jl
c291cmNlcy9yZXBhaW50LmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLQotPGJvZHkgb25sb2FkPSJy
dW5SZXBhaW50VGVzdCgpIj4KLQotICAgIDxkaXYgY2xhc3M9ImNsaXBwaW5nX2JveCI+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9InNoYWRlciI+Ci0gICAgICAgICAgICA8ZGl2IGNsYXNzPSJlbXB0eV9i
b3giPjwvZGl2PgotICAgICAgICAgICAgPGRpdiBjbGFzcz0iYm94IGJlZm9yZSI+PC9kaXY+Ci0g
ICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tZXhw
ZWN0ZWQucG5nIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWlu
dC1jdXN0b20tZXhwZWN0ZWQucG5nCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDcz
NmIwYmU1ZGUwZTY1YjFhOGM3YzQzN2YwYTlkMTM0NzE4NTgwLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAwCkhjbVY/ZDAw
MDAxCgpsaXRlcmFsIDEwNDM1CnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEweX55VXsrdllWMmE+aTFC
JVFsWWJwUnpua0I5Z0NDTTQ3JD1TdUZ4ZVB7VAp6Tm9rM1IyOHFlJENXZVZkaEwmYjJoRE1lS1c9
Vjt1aU47MXxYLVRgTC1kQFZVcGJfZm47dXVvRmAxYTw7K3o+XykKem1wfSYtTW5oR0ZwaT5kQTc2
Pz18QmB4NGw3UUNeTGN9ZTkjK3JFOCF4NDlTSlEoSWo3eVRXR1B5JnA7cjRHZkctCnpFRjF5fjRo
O3QhOV42JU1XYFNgKjt7UH0kNnoqfEFxYH5VV3U8JVRmK15QVzgwVFNYN2Mjb19qamZ3MzxQbX08
WAp6NUw/SDB4RGBOI0YoWSR8bntFZH1zUFglSCE5UmFLejF8dk1TQC13K194dTBuKzVoP1I8SW0+
bmF7cGZFK3dLMiQKektSKWpOdWF+el5vNmlIZzV+OSZVQEJgLXcmZk5oQmh4anJBSnleYiQ2WFgt
SG5tSFUyM2hIbTE1Q1NId0pRSlNYCnotS3F4bmEpREFwITwtRz1zJklofEFfZmsjJUNGQ1lKTUtW
ZDE3cCE0eSh3QDNodXtNWW5mR0Z8NSUjSkJKdnsxPQp6KEdWRjtCaylXem5ybFlPazxwVE13NX1Q
Z2VNajNQcWI7PTJyWHM4fUZ4cSQ/P017cSN1bSl8SHZqUXxFRnpZSCgKejJpWU0oX2tyKyl0dmhU
R1dtcUMzdnIwfFBSWWIzUDRYe0B8cyR3KWVweU12MT4wPmxFakZ0fHRrOz44QkZxI2BpCnpiSGl3
RTAxdTZod3Y8TCZqLXhHVSohMHxKWld6ckNxcSQpO0gtSVBLTjg4RHg/Y352UkBAUEFHdzRLYnpH
K0d2cApnbVc2fCRFTnRCV2IleVh4UlgxJGA7SHBGaFBnZyZlYnhzTFEwN280PUNJQTJjCgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1j
dXN0b20tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0
ZXItcmVwYWludC1jdXN0b20tZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA4YjEzNzg5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0
b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9tLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0x
ICswLDAgQEAKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9m
aWx0ZXItcmVwYWludC1jdXN0b20tcm90YXRlZC1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVkLWV4cGVjdGVk
LnBuZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzdmOTY5MDM4ZGIyZWFlMjdhZGJi
Mzc2YzdmNWRjYWNkMWJhYjNiYi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCA5OTU1
CnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEweX55VXsrdllWMmE+aTFCJVFsWWJwUnpua0I5Z0NDTTQ3
JD1TdUZ4ZU9eNQp6REhmTElXfG9PMnJpbGl8TW4tOUFzaX4lPld+bH43REYjV0ZYKGBNKlMkIUI3
KUppPkY5NzhHPy1gP0RxOHhrbnUKejhyWU07KVlXS0k3azxUWD54QyYzNiliUE1sKUluNEk2M0Y5
dmhMbEspQUh2KCpWS0o8WmVVPCFWJk09X2FBO3M/CnpiYTtAeEErWlN8ent2RVVnezh3OEJuTVRi
QVN8RkR4bTZMUzExUVNVQXc0UVQ4YXxgeDFEdUlRXlQlbFVGdFc8Vwp6ZVM0S0ZfUXQqY2NqVWN1
PE5OKmZFIW9UTmFzSylCYFNhY1JLV3czZUxjOy0kQU4oZzBEdWZVZk1TLUAwTHRic3wKelR2KXZW
dGI3Q282cStBOyFie1NJMThXLT9jN0ZYQGlkNUlRSVcrTEpzbCFZSz5mTyU3XnlKJDA+enZAfjNv
SV9kCnokWT4tbjRfY3Z0TURCMkxPbyl6O1M0WSVnMmBudDVqdXtQXihLSXVmbj9Qd2B3NDh4OHwz
Xno7YTl1LUctRWBwaQp6WFBmIWtoND1YKERsQ1NefDRqZHc5fD1KXlF7ZFhAMVBoQ1lUVyR4VW1T
YmRtIzVPN3Fad0hLcSZ1SUQ+JV4jIVgKejFFTlZrVDBWfX00flVsZVgjRnIrS2FBRTdxeEhqUntR
dykkOG0lOGs+Jk1haDVqTDFSK0NDVTxBQj9zU00leEZZCnU/U3MrdzBpOyRPWjZBJWNrNEQ9Xl5s
S21lVmA5JGIqJT5TUT47IVB0OGlTeytwVVhPQGdlQ3dLUz13YSkKCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVk
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJl
cGFpbnQtY3VzdG9tLXJvdGF0ZWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA4YjEzNzg5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9j
dXN0b20vZmlsdGVyLXJlcGFpbnQtY3VzdG9tLXJvdGF0ZWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEgKzAsMCBAQAotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVkLmh0bWwgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1yZXBhaW50LWN1c3RvbS1yb3RhdGVkLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFlNzQxN2UuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1jdXN0b20tcm90YXRl
ZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjIgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08
IS0tIAotICAgIFRoaXMgdGVzdHMgdmVyaWZpZXMgdGhhdCBmaWx0ZXIgc2hhZGVyIGlzIHJlcGFp
bnRlZCB1c2luZyB0aGUgZnVsbCBzb3VyY2UgaW1hZ2Ugb2YgdGhlIGVsZW1lbnQgaW5zdGVhZCBv
ZiBqdXN0IHRoZSBkaXJ0eSBhcmVhLgotICAgIEFsc28gaXQgdGVzdHMgdGhhdCB0aGUgY2xpcHBp
bmcgb3IgdGhlIHRyYW5zZm9ybSByZWN0YW5nbGUgb2YgdGhlIGJveCBpcyBub3QgYWZmZWN0aW5n
IHRoZSBmaWx0ZXIuCi0gICAgVGhlcmUgc2hvdWxkIGJlIG9uZSBsaWdodCBncmVlbiBib3ggb24g
dGhlIHNjcmVlbi4gTm8gcmVkIHNob3VsZCBiZSB2aXNpYmxlLgotLS0+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0
b21GaWx0ZXJFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7Ci0gICAgICAgIH0KLSAgICAgICAg
ZnVuY3Rpb24gcmVwYWludFRlc3QoKQotICAgICAgICB7Ci0gICAgICAgICAgICBkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCIuYmVmb3JlIikuY2xhc3NMaXN0LnJlbW92ZSgiYmVmb3JlIik7Ci0gICAg
ICAgIH0KLSAgICA8L3NjcmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgICAgIC5jbGlwcGluZ19ib3gg
ewotICAgICAgICAgICAgbWFyZ2luOiAxMDBweDsKLSAgICAgICAgICAgIHdpZHRoOiAxMDBweDsK
LSAgICAgICAgICAgIGhlaWdodDogMTAwcHg7Ci0gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVu
OwotICAgICAgICAgICAgYmFja2dyb3VuZDogcmVkOwotICAgICAgICB9Ci0gICAgICAgIAotICAg
ICAgICAuZW1wdHlfYm94IHsKLSAgICAgICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgfQot
ICAgICAgICAKLSAgICAgICAgLmJveCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDE1MHB4OwotICAg
ICAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3Jl
ZW47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIC5iZWZvcmUgewotICAgICAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Ci0gICAgICAgIH0KLQotICAgICAgICAuc2hh
ZGVyIHsKLSAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKC4uL3Jlc291cmNl
cy92ZXJ0ZXgtaG9yaXpvbnRhbC1vZmZzZXQudnMpIG1peCh1cmwoLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgb2Zmc2V0IC0wLjUsIG1peF9jb2xvciAxLjAg
MS4wIDEuMCAwLjEpOwotICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MHB4
IDUwcHg7Ci0gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsKLSAg
ICAgICAgfQotICAgIDwvc3R5bGU+Ci0KLSAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9y
ZXBhaW50L3Jlc291cmNlcy9yZXBhaW50LmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLQotPGJvZHkg
b25sb2FkPSJydW5SZXBhaW50VGVzdCgpIj4KLQotICAgIDxkaXYgY2xhc3M9ImNsaXBwaW5nX2Jv
eCI+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNoYWRlciI+Ci0gICAgICAgICAgICA8ZGl2IGNsYXNz
PSJlbXB0eV9ib3giPjwvZGl2PgotICAgICAgICAgICAgPGRpdiBjbGFzcz0iYm94IGJlZm9yZSI+
PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWludC1j
dXN0b20uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vZmlsdGVyLXJlcGFp
bnQtY3VzdG9tLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk2ZmEzOGYuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9maWx0ZXItcmVwYWlu
dC1jdXN0b20uaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDUxICswLDAgQEAKLTwhRE9DVFlQRSBo
dG1sPgotPCEtLSAKLSAgICBUaGlzIHRlc3RzIHZlcmlmaWVzIHRoYXQgdGhlIHNoYWRlciBmaWx0
ZXIgaXMgcmVwYWludGVkIHVzaW5nIHRoZSBmdWxsIHNvdXJjZSBpbWFnZSBvZiB0aGUgZWxlbWVu
dCBpbnN0ZWFkIG9mIGp1c3QgdGhlIGRpcnR5IGFyZWEuIAotICAgIFRoZXJlIHNob3VsZCBiZSA0
IGJveGVzIG9mIHNhbWUgc2l6ZS4gMyBvZiB0aGVtIGFyZSBncmVlbiBhbmQgdGhlIGxhc3Qgb25l
IG9uIHRoZSByaWdodCBpcyBibHVlLgotLS0+Ci08aHRtbD4KLTxoZWFkPgotICAgIDxzY3JpcHQ+
Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVk
IiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5j
ZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLmR1bXBBc1RleHQodHJ1ZSk7Ci0gICAgICAgIH0KLSAgICAgICAgZnVuY3Rpb24gcmVwYWlu
dFRlc3QoKQotICAgICAgICB7Ci0gICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIu
YmVmb3JlIikuY2xhc3NMaXN0LnJlbW92ZSgiYmVmb3JlIik7Ci0gICAgICAgIH0KLSAgICA8L3Nj
cmlwdD4KLSAgICA8c3R5bGU+Ci0gICAgICAgIC5ib3ggewotICAgICAgICAgICAgbWFyZ2luLXRv
cDogMTBweDsKLSAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7Ci0gICAgICAgICAgICBo
ZWlnaHQ6IDUwcHg7Ci0gICAgICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IGdyZWVuOwotICAgICAgICB9Ci0KLSAgICAgICAgLmJlZm9yZSB7Ci0gICAg
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ci0gICAgICAgIH0KLQotICAgICAgICAuc2hh
ZGVyIHsKLSAgICAgICAgICAgIGJvcmRlci10b3A6IDUwcHggc29saWQgYmx1ZTsKLSAgICAgICAg
ICAgIHdpZHRoOiA1MHB4OwotICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwo
Li4vcmVzb3VyY2VzL3ZlcnRleC1yb3RhdGUudnMpIG1peCh1cmwoLi4vcmVzb3VyY2VzL21peC1j
b2xvci5mcykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgcm90YXRlQnkgOTAsIG1peF9jb2xvciAxLjAg
MS4wIDEuMCAwLjEpOwotICAgICAgICB9Ci0gICAgPC9zdHlsZT4KLQotICAgIDxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9mYXN0L3JlcGFpbnQvcmVzb3VyY2VzL3JlcGFpbnQuanMiPjwvc2NyaXB0Pgot
PC9oZWFkPgotCi08Ym9keSBvbmxvYWQ9InJ1blJlcGFpbnRUZXN0KCkiPgotCi0gICAgPGRpdiBj
bGFzcz0ic2hhZGVyIj4KLSAgICAgICAgPGRpdiBjbGFzcz0iYm94Ij48L2Rpdj4KLSAgICAgICAg
PGRpdiBjbGFzcz0iYm94IGJlZm9yZSI+PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9ImJveCI+
PC9kaXY+Ci0gICAgPC9kaXY+Ci0KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52YWxpZC1jdXN0b20tZmlsdGVyLWF0dHJpYnV0
ZS10eXBlcy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9p
bnZhbGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5cGVzLWV4cGVjdGVkLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRkMDA0ZDEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5
cGVzLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyNyArMCwwIEBACi08IWRvY3R5
cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZp
bHRlcnMgZG8gbm90IGV4ZWN1dGUgaWYgdGhlIGF1dGhvciBkZWZpbmVzIGJ1aWx0LWluIGF0dHJp
YnV0ZXMgd2l0aCB0aGUgd3JvbmcgdHlwZSBvciBkZWZpbmVzIGN1c3RvbSBhdHRyaWJ1dGVzLjwv
dGl0bGU+Ci0gICAgPCEtLSAKLSAgICAgICAgVGhpcyBpcyB0aGUgcmVmZXJlbmNlIGZpbGUgZm9y
IHRoZSB0ZXN0LgotICAgICAgICBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIDcg
dmVydGljYWxseS1zdGFja2VkIGdyZWVuIGJveGVzLgotICAgIC0tPgotICAgIDxzdHlsZT4KLSAg
ICBkaXYgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwgMjU1LCAwKTsKLSAgICAg
ICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgbWFyZ2luOiAx
MHB4OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gICAgPGRpdj48L2Rp
dj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLSAg
ICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci0gICAgPGRpdj48L2Rpdj4KLTwvYm9keT4K
LTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vaW52
YWxpZC1jdXN0b20tZmlsdGVyLWF0dHJpYnV0ZS10eXBlcy5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItYXR0cmlidXRlLXR5cGVzLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ1NjViYTEuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItYXR0
cmlidXRlLXR5cGVzLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2NSArMCwwIEBACi08IWRvY3R5
cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci0gICAgPHRpdGxlPlRlc3RzIHRoYXQgY3VzdG9tIGZp
bHRlcnMgZG8gbm90IGV4ZWN1dGUgaWYgdGhlIGF1dGhvciBkZWZpbmVzIGJ1aWx0LWluIGF0dHJp
YnV0ZXMgd2l0aCB0aGUgd3JvbmcgdHlwZSBvciBkZWZpbmVzIGN1c3RvbSBhdHRyaWJ1dGVzLjwv
dGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBwYXNzZXMsIHlvdSBzaG91bGQgc2VlIDcgdmVy
dGljYWxseS1zdGFja2VkIGdyZWVuIGJveGVzLiAtLT4KLSAgICA8c2NyaXB0PgotICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0g
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdl
YkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50
aWxEb25lKCk7Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3Qo
KQotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0
ZXIgdGhlIHNoYWRlcnMgZG93bmxvYWQuCi0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAg
ICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgIGRpdiB7Ci0gICAgICAgIC8q
IElmIHRoZSBzaGFkZXJzIGV4ZWN1dGUsIHRoZXkgd2lsbCB0dXJuIHRoZSBlbGVtZW50J3MgY29s
b3IgZnJvbSBncmVlbiB0byByZWQuICovCi0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigw
LCAyNTUsIDApOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4Owot
ICAgICAgICBtYXJnaW46IDEwcHg7Ci0gICAgfQotICAgIC5pbnZhbGlkLWN1c3RvbS1hdHRyaWJ1
dGUgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2lu
dmFsaWQtY3VzdG9tLWF0dHJpYnV0ZS52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29s
b3IuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMS4wIDAuMCAwLjAgMS4wKTsK
LSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS1hLW1lc2gtY29vcmQgewotICAgICAgICAtd2Via2l0
LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLW1lc2gtY29v
cmQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJj
ZS1hdG9wKSwgbWl4X2NvbG9yIDEuMCAwLjAgMC4wIDEuMCk7Ci0gICAgfQotICAgIC5pbnZhbGlk
LXR5cGUtYS1wb3NpdGlvbiB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcu
Li9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWEtcG9zaXRpb24udnMnKSBtaXgodXJsKCcuLi9yZXNv
dXJjZXMvbWl4LWNvbG9yLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSwgbWl4X2NvbG9yIDEuMCAw
LjAgMC4wIDEuMCk7Ci0gICAgfQotICAgIC5pbnZhbGlkLXR5cGUtYS10ZXgtY29vcmQgewotICAg
ICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2ludmFsaWQtdHlw
ZS1hLXRleC1jb29yZC52cycpIG1peCh1cmwoJy4uL3Jlc291cmNlcy9taXgtY29sb3IuZnMnKSBu
b3JtYWwgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMS4wIDAuMCAwLjAgMS4wKTsKLSAgICB9Ci0g
ICAgLmludmFsaWQtdHlwZS1hLXRyaWFuZ2xlLWNvb3JkIHsKLSAgICAgICAgLyogVGhpcyBjdXN0
b20gZmlsdGVyIHVzZXMgYSBkZXRhY2hlZCBtZXNoIGJlY2F1c2UgYV90cmlhbmdsZUNvb3JkIGlz
IG9ubHkgYXZhaWxhYmxlIHdpdGggYSBkZXRhY2hlZCBtZXNoLiAqLwotICAgICAgICAtd2Via2l0
LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLXRyaWFuZ2xl
LWNvb3JkLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBz
b3VyY2UtYXRvcCksIDEgMSBkZXRhY2hlZCwgbWl4X2NvbG9yIDEuMCAwLjAgMC4wIDEuMCk7Ci0g
ICAgfQotICAgIC5pbnZhbGlkLXR5cGUtYXR0cmlidXRlLWFycmF5IHsKLSAgICAgICAgLXdlYmtp
dC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYXR0cmlidXRl
LWFycmF5LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBz
b3VyY2UtYXRvcCksIG1peF9jb2xvciAxLjAgMC4wIDAuMCAxLjApOyAgICAgICAgCi0gICAgfQot
ICAgIC5pbnZhbGlkLXR5cGUtYXR0cmlidXRlLWFycmF5IHsKLSAgICAgICAgLXdlYmtpdC1maWx0
ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYXR0cmlidXRlLWFycmF5
LnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL21peC1jb2xvci5mcycpIG5vcm1hbCBzb3VyY2Ut
YXRvcCksIG1peF9jb2xvciAxLjAgMC4wIDAuMCAxLjApOyAgICAgICAgCi0gICAgfQotICAgIC5p
bnZhbGlkLWF0dGFjaGVkLW1lc2gtYS10cmlhbmdsZS1jb29yZCB7Ci0gICAgICAgIC8qIFRoaXMg
Y3VzdG9tIGZpbHRlciB1c2VzIGFuIGF0dGFjaGVkIG1lc2ggdG8gdmVyaWZ5IHRoYXQgYV90cmlh
bmdsZUNvb3JkIGlzIG5vdCBhIGF2YWlsYWJsZSB3aXRoIGFuIGF0dGFjaGVkIG1lc2guICovCi0g
ICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1h
LXRyaWFuZ2xlLWNvb3JkLXdpdGgtYXR0YWNoZWQtbWVzaC52cycpIG1peCh1cmwoJy4uL3Jlc291
cmNlcy9taXgtY29sb3IuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApLCBtaXhfY29sb3IgMS4wIDAu
MCAwLjAgMS4wKTsgICAgICAgIAotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFkPgotPGJvZHkg
b25sb2FkPSJydW5UZXN0KCkiPgotICAgIDxkaXYgY2xhc3M9ImludmFsaWQtY3VzdG9tLWF0dHJp
YnV0ZSI+PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLWEtbWVzaC1jb29yZCI+
PC9kaXY+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLWEtcG9zaXRpb24iPjwvZGl2Pgot
ICAgIDxkaXYgY2xhc3M9ImludmFsaWQtdHlwZS1hLXRleC1jb29yZCI+PC9kaXY+Ci0gICAgPGRp
diBjbGFzcz0iaW52YWxpZC10eXBlLWEtdHJpYW5nbGUtY29vcmQiPjwvZGl2PgotICAgIDxkaXYg
Y2xhc3M9ImludmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJyYXkiPjwvZGl2PgotICAgIDxkaXYgY2xh
c3M9ImludmFsaWQtYXR0YWNoZWQtbWVzaC1hLXRyaWFuZ2xlLWNvb3JkIj48L2Rpdj4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20v
aW52YWxpZC1jdXN0b20tZmlsdGVyLXNoYWRlci1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4cGVjdGVk
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkyYWMwNmUuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXIt
c2hhZGVyLWV4cGVjdGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCwwIEBACi08IWRv
Y3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0PgotICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICAgICAgLy8gV2FpdCBm
b3IgdGhlIGltYWdlcyB0byBiZSBsb2FkZWQuCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgCi0gICAg
ICAgICAgICBmdW5jdGlvbiBub3RpZnlEb25lKCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAg
ICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIGRvd25sb2FkaW5nIHN1
Y2NlZWRlZCBvciBmYWlscy4KLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIp
Ci0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAg
ICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9u
bG9hZD0ibm90aWZ5RG9uZSgpIj4KLSAgICAgICAgPGltZyBzcmM9Ii4uL3Jlc291cmNlcy9yZWZl
cmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5w
bmciIC8+Ci0gICAgICAgIDxpbWcgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4K
LSAgICAgICAgPGltZyBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAg
ICA8aW1nIHNyYz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZh
bGlkLWN1c3RvbS1maWx0ZXItc2hhZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
Y3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1zaGFkZXIuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMmRmMWY2OS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci1zaGFkZXIuaHRtbAorKysgL2Rldi9u
dWxsCkBAIC0xLDUzICswLDAgQEAKLTwhLS0gVGhpcyBmaWxlIHNob3VsZCB0ZXN0IHRoYXQgY3Vz
dG9tLWZpbHRlcnMgZG8gbm90IHJlbmRlciB3aGVuIHNoYWRlcnMgYXJlIGludmFsaWQuIC0tPgot
PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlRlc3Rp
bmcgdGhhdCBjdXN0b20tZmlsdGVycyBkbyBub3QgcmVuZGVyIHdoZW4gc2hhZGVycyBhcmUgaW52
YWxpZDwvdGl0bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpIHsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5vdmVycmlkZVBy
ZWZlcmVuY2UoIldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiLCAiMSIpOwotICAgICAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xF
bmFibGVkIiwgIjEiKTsKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KHRydWUpOwotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIAotICAgICAgICAgICAgZnVuY3Rpb24g
cnVuVGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBy
dW4gdGhlIHRlc3RzIGFmdGVyIHRoZSBkb3dubG9hZGluZyBzdWNjZWVkZWQgb3IgZmFpbHMuCi0g
ICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAg
IDwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAuaW52YWxpZF92ZXJ0ZXhf
c2hhZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1
c3RvbSh1cmwoJy4uL3Jlc291cmNlcy9pbnZhbGlkLXNoYWRlci52cycpKTsKLSAgICAgICAgICAg
IH0KLSAgICAgICAgICAgIC5pbnZhbGlkX2ZyYWdtZW50X3NoYWRlcgotICAgICAgICAgICAgewot
ICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9y
ZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgIC5ib3RoX3NoYWRlcnNfYnV0X2ludmFsaWRfdmVydGV4X3No
YWRlcgotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMnKSBtaXgodXJsKCcuLi9yZXNv
dXJjZXMvY29sb3Itb2Zmc2V0LmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgICAg
ICB9Ci0KLSAgICAgICAgICAgIC5ib3RoX3NoYWRlcnNfYnV0X2ludmFsaWRfZnJhZ21lbnRfc2hh
ZGVyCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3Rv
bSh1cmwoJy4uL3Jlc291cmNlcy92ZXJ0ZXgtb2Zmc2V0LnZzJykgbWl4KHVybCgnLi4vcmVzb3Vy
Y2VzL2ludmFsaWQtc2hhZGVyLnZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgICAgICAuYm90aF9zaGFkZXJzX2ludmFsaWQKLSAgICAgICAgICAgIHsKLSAg
ICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3VyY2VzL2lu
dmFsaWQtc2hhZGVyLnZzJykgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2ludmFsaWQtc2hhZGVyLnZz
Jykgbm9ybWFsLXNvdXJjZS1hdG9wKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+
Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLSAgICAgICAgPCEt
LSBUZXN0IG9mIGludmFsaWQgY3VzdG9tIGZpbHRlciBzaGFkZXJzLiBZb3Ugc2hvdWxkIHNlZSA1
IGJsb2NrcyBvZiBjb2xvciBiYXJzLCBhbGwgdGhlIHNhbWUgLS0+Ci0gICAgICAgIDxpbWcgY2xh
c3M9ImludmFsaWRfdmVydGV4X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBu
ZyIgLz4KLSAgICAgICAgPGltZyBjbGFzcz0iaW52YWxpZF9mcmFnbWVudF9zaGFkZXIiIHNyYz0i
Li4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhf
c2hhZGVyc19idXRfaW52YWxpZF92ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZl
cmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRlcnNfYnV0X2ludmFs
aWRfZnJhZ21lbnRfc2hhZGVyIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgot
ICAgICAgICA8aW1nIGNsYXNzPSJib3RoX3NoYWRlcnNfaW52YWxpZCIgc3JjPSIuLi9yZXNvdXJj
ZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci11bmlm
b3JtLXR5cGVzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9t
L2ludmFsaWQtY3VzdG9tLWZpbHRlci11bmlmb3JtLXR5cGVzLWV4cGVjdGVkLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU3Yjk4NWIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXItdW5pZm9ybS10eXBl
cy1leHBlY3RlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjYgKzAsMCBAQAotPCFkb2N0eXBl
IGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBmaWx0
ZXJzIGRvIG5vdCBleGVjdXRlIGlmIHRoZSBhdXRob3IgZGVmaW5lcyBidWlsdC1pbiB1bmlmb3Jt
cyB3aXRoIHRoZSB3cm9uZyB0eXBlLjwvdGl0bGU+Ci0gICAgPCEtLSAKLSAgICAgICAgVGhpcyBp
cyB0aGUgcmVmZXJlbmNlIGZpbGUgZm9yIHRoZSB0ZXN0LgotICAgICAgICBJZiB0aGUgdGVzdCBw
YXNzZXMsIHlvdSBzaG91bGQgc2VlIDYgdmVydGljYWxseS1zdGFja2VkIGdyZWVuIGJveGVzLgot
ICAgIC0tPgotICAgIDxzdHlsZT4KLSAgICBkaXYgewotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2IoMCwgMjU1LCAwKTsKLSAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgIGhlaWdodDog
NTBweDsKLSAgICAgICAgbWFyZ2luOiAxMHB4OwotICAgIH0KLSAgICA8L3N0eWxlPgotPC9oZWFk
PgotPGJvZHk+Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9k
aXY+Ci0gICAgPGRpdj48L2Rpdj4KLSAgICA8ZGl2PjwvZGl2PgotICAgIDxkaXY+PC9kaXY+Ci08
L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3Vz
dG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci11bmlmb3JtLXR5cGVzLmh0bWwgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2ludmFsaWQtY3VzdG9tLWZpbHRlci11bmlmb3JtLXR5cGVz
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc5Mjk0NDEuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9pbnZhbGlkLWN1c3RvbS1maWx0ZXIt
dW5pZm9ybS10eXBlcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTYgKzAsMCBAQAotPCFkb2N0
eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotICAgIDx0aXRsZT5UZXN0cyB0aGF0IGN1c3RvbSBm
aWx0ZXJzIGRvIG5vdCBleGVjdXRlIGlmIHRoZSBhdXRob3IgZGVmaW5lcyBidWlsdC1pbiB1bmlm
b3JtcyB3aXRoIHRoZSB3cm9uZyB0eXBlLjwvdGl0bGU+Ci0gICAgPCEtLSBJZiB0aGUgdGVzdCBw
YXNzZXMsIHlvdSBzaG91bGQgc2VlIDYgdmVydGljYWxseS1zdGFja2VkIGdyZWVuIGJveGVzLiAt
LT4KLSAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3Vz
dG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIH0KLSAgICAgICAg
Ci0gICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQotICAgICAgICB7Ci0gICAgICAgICAgICAvLyBX
ZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIgdGhlIHNoYWRlcnMgZG93bmxvYWQuCi0gICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIubm90aWZ5RG9uZSgpOwotICAgICAgICB9Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHN0
eWxlPgotICAgIGRpdiB7Ci0gICAgICAgIC8qIElmIHRoZSBzaGFkZXJzIGV4ZWN1dGUsIHRoZXkg
d2lsbCB0dXJuIHRoZSBlbGVtZW50J3MgY29sb3IgZnJvbSBncmVlbiB0byByZWQuICovCi0gICAg
ICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAyNTUsIDApOwotICAgICAgICB3aWR0aDogNTBw
eDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBtYXJnaW46IDEwcHg7Ci0gICAgfQot
ICAgIC5pbnZhbGlkLXR5cGUtdS1tZXNoLWJveCB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBj
dXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1ib3gu
ZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS11LW1l
c2gtc2l6ZSB7Ci0gICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcu
Li9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1zaXplLmZzJykgbm9ybWFsIHNvdXJjZS1h
dG9wKSk7Ci0gICAgfQotICAgIC5pbnZhbGlkLXR5cGUtdS1wcm9qZWN0aW9uLW1hdHJpeCB7Ci0g
ICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMv
aW52YWxpZC10eXBlLXUtcHJvamVjdGlvbi1tYXRyaXguZnMnKSBub3JtYWwgc291cmNlLWF0b3Ap
KTsKLSAgICB9Ci0gICAgLmludmFsaWQtdHlwZS11LXRleHR1cmUtc2l6ZSB7Ci0gICAgICAgIC13
ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvaW52YWxpZC10
eXBlLXUtdGV4dHVyZS1zaXplLmZzJykgbm9ybWFsIHNvdXJjZS1hdG9wKSk7Ci0gICAgfQotICAg
IC5pbnZhbGlkLXR5cGUtdS10aWxlLXNpemUgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3Vz
dG9tKG5vbmUgbWl4KHVybCgnLi4vcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LXRpbGUtc2l6ZS5m
cycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAgIH0KLSAgICAuaW52YWxpZC10eXBlLXVuaWZv
cm0tYXJyYXkgewotICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKG5vbmUgbWl4KHVybCgn
Li4vcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11bmlmb3JtLWFycmF5LmZzJykgbm9ybWFsIHNvdXJj
ZS1hdG9wKSk7Ci0gICAgfQotICAgIDwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9InJ1
blRlc3QoKSI+Ci0gICAgPGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLXUtbWVzaC1ib3giPjwvZGl2
PgotICAgIDxkaXYgY2xhc3M9ImludmFsaWQtdHlwZS11LW1lc2gtc2l6ZSI+PC9kaXY+Ci0gICAg
PGRpdiBjbGFzcz0iaW52YWxpZC10eXBlLXUtcHJvamVjdGlvbi1tYXRyaXgiPjwvZGl2PgotICAg
IDxkaXYgY2xhc3M9ImludmFsaWQtdHlwZS11LXRleHR1cmUtc2l6ZSI+PC9kaXY+Ci0gICAgPGRp
diBjbGFzcz0iaW52YWxpZC10eXBlLXUtdGlsZS1zaXplIj48L2Rpdj4KLSAgICA8ZGl2IGNsYXNz
PSJpbnZhbGlkLXR5cGUtdW5pZm9ybS1hcnJheSI+PC9kaXY+Ci08L2JvZHk+Ci08L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL21pc3NpbmctY3VzdG9t
LWZpbHRlci1zaGFkZXItZXhwZWN0ZWQucG5nIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2N1
c3RvbS9taXNzaW5nLWN1c3RvbS1maWx0ZXItc2hhZGVyLWV4cGVjdGVkLnBuZwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggY2M1NDM2MmRlZDcyYjNkZDk2ZWIwOTNjMTBjZDY0MThkMGUy
OGEyMi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmluYXJ5
IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAxMjQzMgp6Y21lSE9ZZnpKQzdB
NnJhUzMkOHQxcCQ/Y1J6VmIlS214PW5NN2s9amMxa1RgdS12THZQeSEpOXU0PV5fTUFyKk4KekFr
b0lsYzM0SEZmSDVTMXMzfiNAczJIUCFBY3o0SWt7fTVJNjNEKlRudFl2fCsxY3JBWWslWk5FXn42
ZV5TJFQxCnomdzAtQ2VsdDA7WChQdExjREFqQmdAckBweTB4MXZFVCh1X1Npcnh1byhlNElAY1p8
SWs0NVI+VSM3PUBsTmk0bgp6bSRBbnBWYTQpZ052bEB2S3A/KGVqen5vOFNtcXkpbkJicClAYyVq
fUNAeyU/aGZENEFxWlN0YV5DSCkteytzfEMKejVPMnNZUFg1clV0SVFxZy0wZUxQMTMmS1NrRz5B
YSo5T2xaRkduQT9uR3MtM3ZwP1pfIVROfW1teUAkTW89VVlUCnorPCReUEJIOG94JCk3bT4la3Bv
O1pwMXpraG5NdjVQZHo7Jk9jbT5qcXJeZUchWWpVIz1xZzZTc1RNR31yTH5oNgp6bnJjRHd3SnZe
a0N4PkE3Jk1eNTQoZmQ0PTtQaXtiVGhGS0dzUExPQmNjcmQxVH1nI15lPjU1MypHT0BAO2tHfE4K
emA2cVh9Ril8RXBkcE96bkpHaiRUbn11RjZ0bEB9WD8+eTtQOUQyR2RwbVlzZ3VkNi03Vlp9SDBq
KkhsZmA5I0hRCno2fGJ+RDxlR3okdiNNRy1SQGM7ZlUmU2tga0lFRGthUitWJmEjT1FZTXREKWde
P0F+THRZWWNEYEhnekVTVEFHfQp6K0p7Q2c4fTdUSD14JHE0Xm09Nng0OyQ3eUQkPjdrRT5rcFZX
aitncjtJdiNnOFVDakFqdU1nX1ZoN0NYPHcwNigKemx4ZVpHWWs9dihjYXJJKjRFTnB2M0VFOElG
eTNWaEdSZyZ9SEZoPWdPPWFqaFhmXllNXkhoOFlxenNQMGxzayl6CnpmclBpUVRqPUZ1RlZCVikt
TlNhRm0hcSNmOX0/YnEpfFg7a2YrUntXZkJpU2xyY2ombG1KaUEhcXF1PntPemooYQp6JDh1RVct
VkQ1Qz8xOEY3I3BAa1lAcGprYT5VR21ucllTaXFreVchOSRYZyt0KVE+dX5CUiYwRDlkZ2J2RCZe
b0gKekRrVU1TSX4/b0ReY3dCXlBOUn5ZRX42S1hHWUlYVklPYF9IS2IyYF5kNXpnOFlibG1gJWV5
UjdSQEItam1OUVJXCnp7ZD4tUSRieDQmMn4yQishREV+XnAoYFQ+QCpzdVhnaG93KVoxJVNzJkBq
Pkxpb2tpTXotWldAe2FZQ1JRbSpTTwp6Vk85eWRBOW8meDFoJT54VkRnX18kaDJ7OWJwVnN1ZH47
JiZATn1fa2B+fkkkKiZrSUVydGY+Pm1ASXdiSVcyNSsKekhmNXgoU0dUMT0jNztFYVV2bEM9S2Y1
MXVTPXJvfm5NSns7Z3ljeTBWSyhCU2sodHtDSnpMXlheZTlARUl1WXlYCnpzVWZKWTN9UWFsamcz
JnsmVzMpU0NXLU0tREomfGBkX3ZPISlPMUloejx+YUphOWAtZmZaKVFpYT4wNCh3fFVScAp6QVNl
VFVIeCpMQnxFY2VDJHVxYHdSbV50NDtXT3xBI2ljZk8hRFRJMV5gTVV6OVZLWXRyajUwP2spJG9m
Wlk0O3sKekU0e3FxU1VvUDtAMz99YT5YdnVoM3ZqX2BWfksrZ2AjTFRTdlBIYTczMkxtOCFOLUpu
PW9eTWMoQXttNlk+I0JECnptUGpKMSo7eShkdFM3MDR0WGlWaWg2IX0hYWYhUjlWUGE0el5mY0pq
JSlQJDRIVlZEIUptSDlHPVYrJjxaJGZYcAp6LSttUGUwakV1VzF1cTA/bl40Z2w+WXFgX2h9ckoz
YWgxK3VJSSltYUpJY2skTH5jeXZFMWIoQVpBcUFHYkpjQUcKekNwODNCd2Uxe05uWUl0RmNxfjhn
dlZnPGQhJGhxaHdPcDEwPSoqXzVrNGdzQGBPfHIqVW83LTd2ZmY5fiE9SzRpCno3eG0qLWctRWxB
TT1Le2l3bEJFODFifUdLVWxjX0E7bUUkXj1wNURzPnttKEI3QypgeXZHIyEtVkMyUzk1aiMzcAp6
K1R0aUVhcj5nV3BYNzIjeDgwU2V5ITMrUGt9TEhxVmJwQ3lkezVlfU9XUT9JKyNyT3w9YF84UiZm
cXV1T31eK2cKenVWcDx3XlJ4IUpqMEdCclZKfDVRe0U/N1hPUU9BP1Q8KFVAMEpYTGFhM3NzXkhW
cCF3M3NtXj5nSzVWaDc4WVBsCnpPa255SE5EbCM/UE8kRUVnOysyeW82enx3ZU4hUCFicUxWMyh9
UUlZT1RPUUVzPUsoPTBSbH5YdSE2YSM7fl5JSgp6KnRpT3dSQE50NiglOVFyZkR4YDIjSW47OCg8
U1BUX1I/c0tjN3FfNmdXcj1iKGEzfXQ+MUQwPioxcV8zJDw+JnUKejJ4JkBaYng/NG9aZz9PKnFe
aGJhQFYxZ2RMUn1HdilFKC1lQjFUYllAKn5fTURTem5KPSMzJU4qeDBUOTI5Oyp0CnpGb2BzbDBt
ajxvVFpAcHRBeGU5NWVON290RSN4O3AlQnFNMyZHcFE9KCRrbkdaTyk4TVgjN0habVdlI1MwZVFi
cQp6OXxZOz81fF42MlBta3lmNlVgYnMpJlU5RyZ8MFBNVjwtKjhWYzM5I1R8Snd0JXJ2WUJ1Qjt3
WHtPYzR+bFBlLWcKelgxOGRFbmFibVNgZDcrZmpGZGR+b1JaJXs+WS08WD9gb1pobjVzfDJPWCRn
LTJQZmArJWkjTzAzKGMrQHgrU19kCnopRjxuPz57Qm5xMDZjfWJAVVc/eXgxS2Q8YmVkUHN0M1Rg
Ril5aXVzY1MweD8tUUB+flMzRWwxJTIrLWFKT0pTNAp6KXl0VT4zKlFTc1YjKkpUQT8qNy01Ryg7
Y1MwRU98Ukc4SUVTRXR6M2tYZ1BTNEohLV5mQHJHUlchNE01X3whZ0kKejI7aDxjMWUrUWJLYGk7
SnlJU2NWOCt3eF51SDB0OXZgK1Z1NygrWj5hc19NWD9CZ3ZKa0I7P3E/M1JnJEgzVmZUCnpPVj5J
MklFSUN6VUAzZGo2PyFSb1d3Nz1oNjhsayE/b0ZMemdwXkYwc0F5dnxeI2NRSz85QXZnZFcmelBX
M0pSQQp6PFcmfiZhWmVvK01SKVl9N3s0Tkk2WT8/NCEjY192ZlZTfmd0IXpWLTtOfVJLRTRvKXwk
cHtBa1Z9dih1Z3t9ezEKeks9Jmc4PjtsdkQ/Yi0/b25jUzlrN1NmYVJMNShvb0xqXlZfQm9ielVC
NW5QdF8rIVlHPnA9YnxOQSF1MTghKkRyCnp1JmkwVyQmZjElfERlTHR5aEFDNGtRKmR9RGVAbW55
QUVgMCN6bldeI0l2QHkocCZ5TUdUMXhUeDtWNXZTcDlSMgp6PDJFKWp4Tj0pM3Z4SmtAQil0Wi1S
QiVWbnZxXjJHeVhNKW5FeVo1UjNEU3E8M0A0Pj48UXRTbDNeIWh4QSQrSGEKemZ4T20mTmBBVjNg
MnIpZFhhRik3PVl9SXFefDF5U3kpUEc5SjImZHcjOWhIUHAxTXdjcyNRdCE/P0dyZjxzSVYyCnph
JEtYVHFwbj48a31hT3BrIU5LZlYrVm5RNV92MUFUS1BvWTBTTFpwU2s2bCVOYW9VfHMlQ2VpPXph
UGpFRFI8KAp6PEsxTHhpbW82cT1OU2kxVHdRMUVsZWxQcm8hSDFiP2swanxPYVY5dnZLQWRSbmVZ
RztlYEZ8eGBjJGljTldPZ0MKenMydkxeenR4VzIjUSZ9eHZDTTteSj9UZSgxP1kpK1R8UW9tQWA0
RiQwZ0krbDtoVVgpX3xRWmU3WGNmKkZQR1gyCnolITluSXUxNCU7I0ZvcnE8bV5tV1Q8UncrdHpM
ZHgrNVZeO1M1ezJVTlNDayFxIUgyPFc+NlNYK3BYIy12fTVWfgp6c3U5U3shS1Fte0JvfVA7aXJ+
emgjRlI/cT5wKWdqaEViVVI8I0dPcVV2YWxuS0JjOWdwV1dPMEJCOShkNHRyTWcKekw5cWxgI28h
TEk8M2xyZDVHMTFxK0s4cGMlNV9pYmFnQ1FtSXpOfFc+Qmk+SmIhMGEzKl57fk5uMkkoTnoma1NY
CnpMOXEjP3dnQWZlb3Z4YmIlP3JUeHl9OUhNMDhDI1NqJk5WPFRhSFVFc0w1QzReblRaTnFxbnpS
LWNlZVFsTEdQUAp6dSgoc3J2I1RkOXdVPWxncyg5Y0NQX1IpRD1qWXhPYFhlYzVCYFdaayZeVmNC
aFZvaWYqY085ZU9Mb3E/NSYkbXkKejFmK2JfKXp7U0dVVGVePmhNeVp3bzJ2M0J4X2x3YXNtWUgm
KW1YNVVleXh6Zk4kVWxOb3FsI3tiWG1UbGh7M0BSCnpKblE0aGdrVFZFUDsmUDUtMCRQWFJIZnYj
aF53PTM+NUFjaj1sdHhIKVlRfjskKzhkek9QZ2tkYmt8RVRLVkg3Zgp6PDNqYk4wZE9fUyl8OTA2
fExHOT5KNUpMR2w1NT8pclNBQ2RpNWQhU3s3enEybF9YNTw4K0tjJjN1QlZkeD1nPmEKejImR09P
bVk0NlZ0VllUYlFwYjFUQn5eIXB4Wl9lSiVkVGRXR1kmTXUjNHdZRWxaXkM7K3R7QXQ8VyYra059
KldXCnpCbF9TMUpxYyRsZ2NsfW04MmRhKF94KSlqdDY5K0klbVJXRjttJEcldDhjKTh8SmpUUk43
SlBIYkExciVfeSk/VAp6Q0BgWU9BbiQ1IVZ7NXthdzReYk9HRWJwPFNPUFltVGdobkY5QEZ4SVoh
MWZweElpKiNIOXxtaTZoJC0oaHBpcXUKeik1YyF2c2dGeG4yJkd1SjU/ekMmKTF4Rk9RdituelA1
b1glaX1BRVRUTEFpaD1WeT1uT2QhQi0xNTt7e2RmZkN4Cno9WEBta3o0fVpaUkNlPXxTOWxtVjB8
eCZYSmhSdzU8S2p4d0I9UUU2JFl4UkROI25NbmtBUHVpYn1gcHdRazxIPgp6QFV9MF5VQChLaGN2
ZHJtITMrajc3fGZjJUpSOGxrKFg1KXlNK0l4TUFUU0Y4dm1oYEYwPCQxNjNqKHRzRmJleysKdkFi
OShEKi1WRktJeUJSdm5HVmYjX3leT1ctcCZXUik5PTJJPHt0UXFma2tCYSM8a1p6am9iZmtwI1A3
IQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vbWlzc2luZy1j
dXN0b20tZmlsdGVyLXNoYWRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvY3VzdG9tL21pc3NpbmctY3VzdG9tLWZpbHRlci1zaGFkZXItZXhwZWN0ZWQudHh0CmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MWY4YTM2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9jdXN0b20vbWlzc2luZy1jdXN0b20tZmlsdGVyLXNoYWRlci1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi0gICAgICAgCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL21pc3NpbmctY3VzdG9tLWZpbHRlci1z
aGFkZXIuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vbWlzc2luZy1jdXN0
b20tZmlsdGVyLXNoYWRlci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYTJh
NzA2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9jdXN0b20vbWlzc2lu
Zy1jdXN0b20tZmlsdGVyLXNoYWRlci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTMgKzAsMCBA
QAotPCEtLSBUaGlzIGZpbGUgc2hvdWxkIHRlc3QgdGhhdCBjdXN0b20tZmlsdGVycyBkbyBub3Qg
cmVuZGVyIHdoZW4gc2hhZGVycyBhcmUgbWlzc2luZy4gLS0+Ci08IWRvY3R5cGUgaHRtbD4KLTxo
dG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+VGVzdGluZyB0aGF0IGN1c3RvbS1maWx0
ZXJzIGRvIG5vdCByZW5kZXIgd2hlbiBzaGFkZXJzIGFyZSBtaXNzaW5nPC90aXRsZT4KLSAgICAg
ICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NT
Q3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwotICAg
ICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQodHJ1ZSk7Ci0gICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICAgICAg
fQotICAgICAgICAgICAgCi0gICAgICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKLSAgICAgICAg
ICAgIHsKLSAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJ1biB0aGUgdGVzdHMgYWZ0ZXIg
dGhlIGRvd25sb2FkaW5nIHN1Y2NlZWRlZCBvciBmYWlscy4KLSAgICAgICAgICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAg
IDxzdHlsZT4KLSAgICAgICAgICAgIC5taXNzaW5nX3ZlcnRleF9zaGFkZXIKLSAgICAgICAgICAg
IHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogY3VzdG9tKHVybCgnLi4vcmVzb3Vy
Y2VzL21pc3NpbmctdmVydGV4LW9mZnNldC52cycpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIC5taXNzaW5nX2ZyYWdtZW50X3NoYWRlcgotICAgICAgICAgICAgewotICAgICAgICAgICAg
ICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20obm9uZSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWlz
c2luZy1jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAgICAg
IH0KLSAgICAgICAgICAgIC5ib3RoX3NoYWRlcnNfYnV0X21pc3NpbmdfdmVydGV4X3NoYWRlcgot
ICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0b20odXJs
KCcuLi9yZXNvdXJjZXMvbWlzc2luZy12ZXJ0ZXgtb2Zmc2V0LnZzJykgbWl4KHVybCgnLi4vcmVz
b3VyY2VzL2NvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAgICAgICAg
ICAgfQotCi0gICAgICAgICAgICAuYm90aF9zaGFkZXJzX2J1dF9taXNzaW5nX2ZyYWdtZW50X3No
YWRlcgotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBjdXN0
b20odXJsKCcuLi9yZXNvdXJjZXMvdmVydGV4LW9mZnNldC52cycpIG1peCh1cmwoJy4uL3Jlc291
cmNlcy9taXNzaW5nLWNvbG9yLW9mZnNldC5mcycpIG5vcm1hbCBzb3VyY2UtYXRvcCkpOwotICAg
ICAgICAgICAgfQotICAgICAgICAgICAgLmJvdGhfc2hhZGVyc19taXNzaW5nCi0gICAgICAgICAg
ICB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGN1c3RvbSh1cmwoJy4uL3Jlc291
cmNlcy9taXNzaW5nLXZlcnRleC1vZmZzZXQudnMnKSBtaXgodXJsKCcuLi9yZXNvdXJjZXMvbWlz
c2luZy1jb2xvci1vZmZzZXQuZnMnKSBub3JtYWwgc291cmNlLWF0b3ApKTsKLSAgICAgICAgICAg
IH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW5U
ZXN0KCkiPgotICAgICAgICA8IS0tIFRlc3Qgb2YgbWlzc2luZyBjdXN0b20gZmlsdGVyIHNoYWRl
cnMuIFlvdSBzaG91bGQgc2VlIDUgYmxvY2tzIG9mIGNvbG9yIGJhcnMsIGFsbCB0aGUgc2FtZSAt
LT4KLSAgICAgICAgPGltZyBjbGFzcz0ibWlzc2luZ192ZXJ0ZXhfc2hhZGVyIiBzcmM9Ii4uL3Jl
c291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgICAgICA8aW1nIGNsYXNzPSJtaXNzaW5nX2Zy
YWdtZW50X3NoYWRlciIgc3JjPSIuLi9yZXNvdXJjZXMvcmVmZXJlbmNlLnBuZyIgLz4KLSAgICAg
ICAgPGltZyBjbGFzcz0iYm90aF9zaGFkZXJzX2J1dF9taXNzaW5nX3ZlcnRleF9zaGFkZXIiIHNy
Yz0iLi4vcmVzb3VyY2VzL3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJv
dGhfc2hhZGVyc19idXRfbWlzc2luZ19mcmFnbWVudF9zaGFkZXIiIHNyYz0iLi4vcmVzb3VyY2Vz
L3JlZmVyZW5jZS5wbmciIC8+Ci0gICAgICAgIDxpbWcgY2xhc3M9ImJvdGhfc2hhZGVyc19taXNz
aW5nIiBzcmM9Ii4uL3Jlc291cmNlcy9yZWZlcmVuY2UucG5nIiAvPgotICAgIDwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvYS10
ZXgtY29vcmQtZGVmaW5lZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
YS10ZXgtY29vcmQtZGVmaW5lZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjQw
MmRkZi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2Et
dGV4LWNvb3JkLWRlZmluZWQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi0vLyBU
aGlzIHNoYWRlciBkZWZpbmVzIGFfdGV4Q29vcmQuIEl0cyBhc3NvY2lhdGVkIGN1c3RvbSBmaWx0
ZXIgc2hvdWxkIGV4ZWN1dGUgcHJvcGVybHkuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0Owot
Ci1hdHRyaWJ1dGUgdmVjMiBhX3RleENvb3JkOwotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsK
LXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAg
Z2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9hLXRleC1jb29yZC11bmRl
ZmluZWQudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2EtdGV4LWNvb3Jk
LXVuZGVmaW5lZC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmMyYjczMS4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2EtdGV4LWNvb3Jk
LXVuZGVmaW5lZC52cworKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLS8vIFRoaXMgc2hh
ZGVyIGRvZXMgbm90IGRlZmluZSBhX3RleENvb3JkLiBJdHMgYXNzb2NpYXRlZCBjdXN0b20gZmls
dGVyIHNob3VsZCBleGVjdXRlIHByb3Blcmx5LgotCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsK
LQotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25N
YXRyaXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25N
YXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9hLXRyaWFuZ2xlLWNvb3JkLWRlZmluZWQudnMgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2EtdHJpYW5nbGUtY29vcmQtZGVmaW5lZC52cwpkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMWI2ZGUyNC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2EtdHJpYW5nbGUtY29vcmQtZGVmaW5lZC52cworKysg
L2Rldi9udWxsCkBAIC0xLDEyICswLDAgQEAKLS8vIFRoaXMgc2hhZGVyIGRlZmluZXMgYV90cmlh
bmdsZUNvb3JkLiBJZiB0aGUgbWVzaCB0eXBlIGlzIGRldGFjaGVkLCBpdHMgYXNzb2NpYXRlZCBj
dXN0b20gZmlsdGVyIHNob3VsZCBleGVjdXRlIHByb3Blcmx5LgotCi1wcmVjaXNpb24gbWVkaXVt
cCBmbG9hdDsKLQotYXR0cmlidXRlIHZlYzMgYV90cmlhbmdsZUNvb3JkOwotYXR0cmlidXRlIHZl
YzQgYV9wb3NpdGlvbjsKLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci0KLXZvaWQg
bWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0
aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9h
cnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4LnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L3Jlc291cmNlcy9hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4LnZzCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBjOTc4ZDg5Zi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2FycmF5LXVuaWZvcm0taW5kaXJlY3QtaW5kZXgudnMKKysrIC9k
ZXYvbnVsbApAQCAtMSwyMCArMCwwIEBACi0vLyBUaGlzIHNoYWRlciBpbmRpcmVjdGx5IGluZGV4
ZXMgYSB1bmlmb3JtIGFycmF5IHVzaW5nIG90aGVyIHVuaWZvcm1zLgotCi1wcmVjaXNpb24gbWVk
aXVtcCBmbG9hdDsKLXByZWNpc2lvbiBtZWRpdW1wIGludDsKLQotYXR0cmlidXRlIHZlYzQgYV9w
b3NpdGlvbjsKLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci12YXJ5aW5nIHZlYzQg
dl9taXhDb2xvcjsKLQotdW5pZm9ybSBmbG9hdCB2YWx1ZXNbMl07Ci11bmlmb3JtIGZsb2F0IHJl
ZEluZGV4OwotdW5pZm9ybSBmbG9hdCBncmVlbkluZGV4OwotdW5pZm9ybSBmbG9hdCBibHVlSW5k
ZXg7Ci11bmlmb3JtIGZsb2F0IGFscGhhSW5kZXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgdl9t
aXhDb2xvciA9IHZlYzQodmFsdWVzW2ludChyZWRJbmRleCldLCB2YWx1ZXNbaW50KGdyZWVuSW5k
ZXgpXSwgdmFsdWVzW2ludChibHVlSW5kZXgpXSwgdmFsdWVzW2ludChhbHBoYUluZGV4KV0pOwot
ICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogYV9wb3NpdGlvbjsKLX0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvY2hlY2tlcmJvYXJk
LnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jaGVja2VyYm9hcmQudnMK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhjYjI0ZmQuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jaGVja2VyYm9hcmQudnMKKysrIC9kZXYv
bnVsbApAQCAtMSwxOCArMCwwIEBACi0vLyBUaGlzIHNoYWRlciBjb2xvcnMgYWx0ZXJuYXRpbmcg
dGlsZXMgaW4gdGhlIG1lc2ggYmxhY2sgb3IgZ3JlZW4gdG8gY3JlYXRlIGEgY2hlY2tib2FyZCBw
YXR0ZXJuLgotCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXByZWNpc2lvbiBtZWRpdW1wIGlu
dDsKLQotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLWF0dHJpYnV0ZSB2ZWMzIGFfdHJpYW5n
bGVDb29yZDsKLQotdW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJpeDsKLQotdmFyeWluZyB2
ZWM0IHZfbWl4Q29sb3I7Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAgZmxvYXQgZ3JlZW4gPSBtb2Qo
YV90cmlhbmdsZUNvb3JkLnggKyBhX3RyaWFuZ2xlQ29vcmQueSwgMi4wKTsKLSAgICB2X21peENv
bG9yID0gdmVjNCgwLjAsIGdyZWVuLCAwLjAsIDEuMCk7Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3By
b2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jb2xvci1maWxsLmZzIGIvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL3Jlc291cmNlcy9jb2xvci1maWxsLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA3ZTQyYmVkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNv
dXJjZXMvY29sb3ItZmlsbC5mcworKysgL2Rldi9udWxsCkBAIC0xLDEwICswLDAgQEAKLXByZWNp
c2lvbiBtZWRpdW1wIGZsb2F0OwotdW5pZm9ybSB2ZWM0IGNvbG9yOwotdmFyeWluZyB2ZWMyIHZf
dGV4Q29vcmQ7Ci12b2lkIG1haW4oKQotewotICAgIC8vIE1peCB0aGUgdGV4dHVyZSB3aXRoIHRo
ZSBjb2xvciBzcGVjaWZpZWQgYXMgYW4gdW5pZm9ybS4KLSAgICAvLyBBbHNvIGFwcGx5IGEgZ3Jh
ZGllbnQgdG8gY2hlY2sgZm9yIHRoZSByaWdodCBkaXJlY3Rpb24uCi0gICAgLy8gVGhlIGNvbG9y
IHNob3VsZCBiZSBsaWdodGVzdCBhdCB0aGUgdG9wIGFuZCBkYXJrZXN0IGF0IHRoZSBib3R0b20u
Ci0gICAgY3NzX01peENvbG9yID0gdmVjNChjb2xvci54eXosIGNvbG9yLmEgKiB2X3RleENvb3Jk
LnkpOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9j
b2xvci1vZmZzZXQuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9y
LW9mZnNldC5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjIwYWNjNy4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbG9yLW9mZnNldC5m
cworKysgL2Rldi9udWxsCkBAIC0xLDYgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7
Ci12b2lkIG1haW4oKQotewotICAgIC8vIE1peCBzb21lIHdoaXRlIHdpdGggdGhlIERPTSBlbGVt
ZW50IHRleHR1cmUuCi0gICAgY3NzX01peENvbG9yID0gdmVjNCgxLjAsIDEuMCwgMS4wLCAwLjUp
OwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jb21w
b3NpdGUuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbXBvc2l0ZS5m
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmFiYjY2Yy4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2NvbXBvc2l0ZS5mcworKysgL2Rldi9u
dWxsCkBAIC0xLDkgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXZhcnlpbmcg
dmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQotewotICAgIC8vIFByb2R1Y2UgYSBibHVl
IHNxdWFyZSBpbiB0aGUgbG93ZXIgcmlnaHQtaGFuZCBwYXJ0IG9mIHRoZSBpbWFnZS4KLSAgICBj
c3NfTWl4Q29sb3IgPSB2ZWM0KDAuMCwgMC4wLCAxLjAsIGZsb2F0KHZfdGV4Q29vcmQueCA+IDAu
MzMgJiYgdl90ZXhDb29yZC55ID4gMC4zMykpOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jc3Mta2V5d29yZC1hcy1wYXJhbWV0ZXItbmFtZS5mcyBi
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvY3NzLWtleXdvcmQtYXMtcGFyYW1l
dGVyLW5hbWUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg1MDEwODEuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jc3Mta2V5d29yZC1h
cy1wYXJhbWV0ZXItbmFtZS5mcworKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotcHJlY2lz
aW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXVuaWZvcm0gdmVjNCBiYWNrZ3JvdW5kOwotCi12b2lkIG1h
aW4oKQotewotICAgIGdsX0ZyYWdDb2xvciA9IGJhY2tncm91bmQ7Ci19CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2N1c3RvbS1maWx0ZXItY2xhbXAtY3Nz
LWNvbG9yLW1hdHJpeC1uZWdhdGl2ZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNv
dXJjZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4LW5lZ2F0aXZlLmZzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZTBlN2UzLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29s
b3ItbWF0cml4LW5lZ2F0aXZlLmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTAgKzAsMCBAQAotcHJl
Y2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXZvaWQgbWFpbih2b2lkKQotewotICAgIGNzc19Db2xv
ck1hdHJpeCA9IG1hdDQoLTEwLjAsIDAuMCwgMC4wLCAwLjAsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAwLjAsIC0xMC4wLCAwLjAsIDAuMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
IDAuMCwgMC4wLCAtMTAuMCwgMC4wLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wLCAw
LjAsIDAuMCwgMS4wKTsKLSAgICBjc3NfTWl4Q29sb3IgPSB2ZWM0KC0wLjUsIC0wLjUsIC0wLjUs
IDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2N1c3RvbS1maWx0ZXItY2xhbXAtY3NzLWNvbG9yLW1hdHJpeC5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4
LmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMGVlYTA3Li4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvY3VzdG9tLWZpbHRlci1jbGFtcC1j
c3MtY29sb3ItbWF0cml4LmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTAgKzAsMCBAQAotcHJlY2lz
aW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXZvaWQgbWFpbih2b2lkKQotewotICAgIGNzc19Db2xvck1h
dHJpeCA9IG1hdDQoMTAuMCwgMC4wLCAwLjAsIDAuMCwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDAuMCwgMTAuMCwgMC4wLCAwLjAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAwLjAs
IDAuMCwgMTAuMCwgMC4wLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wLCAwLjAsIDAu
MCwgMTAuMCk7Ci0gICAgY3NzX01peENvbG9yID0gdmVjNCgwLjUsIDAuNSwgMC41LCAxLjApOwot
fQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0b20t
ZmlsdGVyLXBhcnNlci5qcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvY3Vz
dG9tLWZpbHRlci1wYXJzZXIuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGI4ZTI0
ODEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9jdXN0
b20tZmlsdGVyLXBhcnNlci5qcworKysgL2Rldi9udWxsCkBAIC0xLDIwMiArMCwwIEBACi0vLyBU
aGlzIGlzIGEgaGVscGVyIHNjcmlwdCBkZXNpZ25lZCB0byBwYXJzZSB0aGUgY29tcHV0ZWQgc3lu
dGF4IG9mIHRoZSBjdXN0b20gZmlsdGVyLiAKLS8vIE5vdGUgdGhhdCBpdCBpcyBnZW5lcmljIGVu
b3VnaCBzbyB0aGF0IGl0IGNhbiBiZSB1c2VkIGZvciBvdGhlciBwcm9wZXJ0aWVzIGluIHRoZSBm
dXR1cmUuCi0KLWZ1bmN0aW9uIFRva2VuKHR5cGUpIAotewotICAgIHRoaXMudHlwZSA9IHR5cGU7
Ci19Ci0KLS8vIENoZWNrcyBpZiB0aGUgdHlwZSBvZiB0aGUgdG9rZW4gaXMgaW4gdGhlIGxpc3Qg
b2YgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgZnVuY3Rpb24uCi0vLyBJdCBhbHNvIGFjY2VwdHMg
YXJyYXlzIGFuZCBvdGhlciB0eXBlIGNoZWNraW5nIGZ1bmN0aW9ucy4KLVRva2VuLnByb3RvdHlw
ZS5pc0EgPSBmdW5jdGlvbigpCi17Ci0gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcmd1bWVudHMu
bGVuZ3RoOyArK2kpIHsKLSAgICAgICAgdmFyIHR5cGUgPSBhcmd1bWVudHNbaV07Ci0gICAgICAg
IGlmICgodHlwZW9mIHR5cGUgPT0gIm9iamVjdCIgJiYgdHlwZS5sZW5ndGggJiYgdGhpcy5pc0Eu
YXBwbHkodGhpcywgdHlwZSkpCi0gICAgICAgICAgICB8fCAodHlwZW9mIHR5cGUgPT0gImZ1bmN0
aW9uIiAmJiB0eXBlKHRoaXMpKQotICAgICAgICAgICAgfHwgdHlwZSA9PSB0aGlzLnR5cGUpCi0g
ICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi0v
LyBDcmVhdGVzIGEgbmV3IHRva2VuIG9iamVjdCBhbmQgY29waWVzIGFsbCB0aGUgcHJvcGVydGll
cyBpbiAidmFsdWUiIHRvIHRoZSBuZXcgdG9rZW4uCi1mdW5jdGlvbiBjcmVhdGVUb2tlbih0eXBl
LCB2YWx1ZSkgewotICAgIHZhciB0b2tlbiA9IG5ldyBUb2tlbih0eXBlKTsKLSAgICBpZiAodmFs
dWUpIHsKLSAgICAgICAgZm9yICh2YXIgaSBpbiB2YWx1ZSkKLSAgICAgICAgICAgIGlmICh2YWx1
ZS5oYXNPd25Qcm9wZXJ0eShpKSkKLSAgICAgICAgICAgICAgICB0b2tlbltpXSA9IHZhbHVlW2ld
OwotICAgIH0KLSAgICByZXR1cm4gdG9rZW47Ci19Ci0KLS8vIFRva2VuaXplcyB0aGUgc3RyaW5n
IGludG8gVG9rZW5zIG9mIHR5cGVzIFt1cmxzLCBmbG9hdHMsIGludGVnZXJzLCBrZXl3b3Jkcywg
IiwiLCAiKCIsICIpIiBhbmQgIi4iXS4KLWZ1bmN0aW9uIHRva2VuaXplU3RyaW5nKHMpCi17Ci0g
ICAgdmFyIHRva2VuaXplciA9IG5ldyBSZWdFeHAoWwotICAgICAgICAidXJsXFwoXFxzKiguKj8p
XFxzKlxcKSIsIC8vIHVybCgpIC0gMQotICAgICAgICAiKCg/OltcXCstXT8pXFxkKlxcLlxcZCsp
IiwgLy8gZmxvYXRzIC0gMgotICAgICAgICAiKCg/OltcXCstXT8pXFxkKykiLCAvLyBpbnRlZ2Vy
cyAtIDMKLSAgICAgICAgIihbXFx3LV1bXFx3XFxkLV0qKSIsIC8vIGtleXdvcmRzIC0gNAotICAg
ICAgICAiKFssXFwuXFwoXFwpXSkiIC8vIHB1bmN0dWF0aW9uIC0gNQotICAgIF0uam9pbigifCIp
LCAiZyIpOwotCi0gICAgdmFyIG1hdGNoLCB0b2tlbnMgPSBbXTsKLSAgICB3aGlsZSAobWF0Y2gg
PSB0b2tlbml6ZXIuZXhlYyhzKSkgewotICAgICAgICBpZiAobWF0Y2hbMV0gIT09IHVuZGVmaW5l
ZCkKLSAgICAgICAgICAgIHRva2Vucy5wdXNoKGNyZWF0ZVRva2VuKCJ1cmwiLCB7dmFsdWU6IG1h
dGNoWzFdfSkpOwotICAgICAgICBlbHNlIGlmIChtYXRjaFsyXSAhPT0gdW5kZWZpbmVkKQotICAg
ICAgICAgICAgdG9rZW5zLnB1c2goY3JlYXRlVG9rZW4oImZsb2F0Iiwge3ZhbHVlOiBwYXJzZUZs
b2F0KG1hdGNoWzJdKX0pKTsKLSAgICAgICAgZWxzZSBpZiAobWF0Y2hbM10gIT09IHVuZGVmaW5l
ZCkKLSAgICAgICAgICAgIHRva2Vucy5wdXNoKGNyZWF0ZVRva2VuKCJpbnRlZ2VyIiwge3ZhbHVl
OiBwYXJzZUludChtYXRjaFszXSl9KSk7Ci0gICAgICAgIGVsc2UgaWYgKG1hdGNoWzRdICE9PSB1
bmRlZmluZWQpCi0gICAgICAgICAgICB0b2tlbnMucHVzaChjcmVhdGVUb2tlbigia2V5d29yZCIs
IHt2YWx1ZTogbWF0Y2hbNF19KSk7Ci0gICAgICAgIGVsc2UgaWYgKG1hdGNoWzVdICE9PSB1bmRl
ZmluZWQpCi0gICAgICAgICAgICB0b2tlbnMucHVzaChjcmVhdGVUb2tlbihtYXRjaFs1XSkpOwot
ICAgIH0KLSAgICByZXR1cm4gdG9rZW5zOwotfQotCi0vLyBDaGVja3MgaWYgdGhlIHRva2VuIGlz
IGEgbnVtYmVyLiBDYW4gYmUgdXNlZCBpbiBjb21iaW5hdGlvbiB3aXRoIHRoZSAiVG9rZW4uaXNB
IiBtZXRob2QuCi1mdW5jdGlvbiBudW1iZXIodG9rZW4pCi17Ci0gICAgcmV0dXJuIHRva2VuLnR5
cGUgPT0gImZsb2F0IiB8fCB0b2tlbi50eXBlID09ICJpbnRlZ2VyIjsKLX0KLQotLy8gSGVscGVy
IGNsYXNzIHRvIGl0ZXJhdGUgb24gdGhlIHRva2VuIHN0cmVhbS4gSXQgd2lsbCBhZGQgYW4gImVu
ZCIKLS8vIHRva2VuIGF0IHRoZSBlbmQgdG8gbWFrZSBpdCBlYXNpZXIgdG8gdXNlIHRoZSAiYWhl
YWQiIGZ1bmN0aW9uCi0vLyB3aXRob3V0IGNoZWNraW5nIGlmIGl0J3MgdGhlIGxhc3QgdG9rZW4g
aW4gdGhlIHN0cmVhbS4KLWZ1bmN0aW9uIFRva2VuU3RyZWFtKHRva2VucykgewotICAgIHRoaXMu
dG9rZW5zID0gdG9rZW5zOwotICAgIHRoaXMudG9rZW5zLnB1c2gobmV3IFRva2VuKCJlbmQiKSk7
Ci0gICAgdGhpcy50b2tlbkluZGV4ID0gMDsKLX0KLQotVG9rZW5TdHJlYW0ucHJvdG90eXBlLmN1
cnJlbnQgPSBmdW5jdGlvbigpIAoteyAKLSAgICByZXR1cm4gdGhpcy50b2tlbnNbdGhpcy50b2tl
bkluZGV4XTsgCi19Ci0KLVRva2VuU3RyZWFtLnByb3RvdHlwZS5haGVhZCA9IGZ1bmN0aW9uKCkg
Ci17Ci0gICAgcmV0dXJuIHRoaXMudG9rZW5zW3RoaXMudG9rZW5JbmRleCArIDFdOyAKLX0KLQot
Ly8gU2tpcHMgdGhlIGN1cnJlbnQgdG9rZW4gb25seSBpZiBpdCBtYXRjaGVzIHRoZSAidHlwZU1h
dGNoZXIiLiBPdGhlcndpc2UgaXQgdGhyb3dzIGFuIGVycm9yLgotVG9rZW5TdHJlYW0ucHJvdG90
eXBlLnNraXAgPSBmdW5jdGlvbih0eXBlTWF0Y2hlcikKLXsKLSAgICBpZiAoIXR5cGVNYXRjaGVy
IHx8IHRoaXMuY3VycmVudCgpLmlzQSh0eXBlTWF0Y2hlcikpIHsKLSAgICAgICAgdmFyIHRva2Vu
ID0gdGhpcy5jdXJyZW50KCk7Ci0gICAgICAgICsrdGhpcy50b2tlbkluZGV4OwotICAgICAgICBy
ZXR1cm4gdG9rZW47Ci0gICAgfQotICAgIHRocm93IG5ldyBFcnJvcigiQ2Fubm90IHVzZSAiICsg
SlNPTi5zdHJpbmdpZnkodHlwZU1hdGNoZXIpICsgIiB0byBza2lwIG92ZXIgIiArIEpTT04uc3Ry
aW5naWZ5KHRoaXMuYWhlYWQoKSkpOwotfQotCi0vLyBTa2lwcyB0aGUgY3VycmVudCB0b2tlbiwg
b25seSBpZiBpdCBtYXRjaGVzIHRoZSAidHlwZU1hdGNoZXIiLiBNYWtlcyBpdCBlYXN5IHRvIHNr
aXAgb3ZlciBjb21tYSB0b2tlbnMuCi1Ub2tlblN0cmVhbS5wcm90b3R5cGUuc2tpcElmTmVlZGVk
ID0gZnVuY3Rpb24odHlwZU1hdGNoZXIpCi17Ci0gICAgaWYgKHRoaXMuYWhlYWQoKSAmJiB0aGlz
LmFoZWFkKCkuaXNBKHR5cGVNYXRjaGVyKSkKLSAgICAgICAgKyt0aGlzLnRva2VuSW5kZXg7Ci19
Ci0KLS8vIENyZWF0ZXMgYSBuZXcgImZ1bmN0aW9uIiBub2RlLiBJdCBleHBlY3RzIHRoYXQgdGhl
IGN1cnJlbnQgdG9rZW4gaXMgdGhlIGZ1bmN0aW9uIG5hbWUuCi1mdW5jdGlvbiBwYXJzZUZ1bmN0
aW9uKG0pCi17Ci0gICAgdmFyIGZ1bmN0aW9uT2JqZWN0ID0gewotICAgICAgICB0eXBlOiAiZnVu
Y3Rpb24iLAotICAgICAgICBuYW1lOiBtLnNraXAoKS52YWx1ZQotICAgIH07Ci0gICAgbS5za2lw
KCIoIik7Ci0gICAgZnVuY3Rpb25PYmplY3QuYXJndW1lbnRzID0gcGFyc2VMaXN0KG0sIFsiKSIs
ICJlbmQiXSk7Ci0gICAgbS5za2lwKCIpIik7Ci0gICAgcmV0dXJuIGZ1bmN0aW9uT2JqZWN0Owot
fQotCi0vLyBDcmVhdGVzIGEgbmV3ICJwYXJhbWV0ZXIiIG5vZGUuIEl0IGV4cGVjdHMgdGhhdCB0
aGUgY3VycmVudCB0b2tlbiBpcyB0aGUgcGFyYW1ldGVyIG5hbWUuCi0vLyBJdCBjb25zdW1lcyBl
dmVyeXRoaW5nIGJlZm9yZSB0aGUgZm9sbG93aW5nIGNvbW1hLgotZnVuY3Rpb24gcGFyc2VQYXJh
bWV0ZXIobSkKLXsKLSAgICB2YXIgZnVuY3Rpb25PYmplY3QgPSB7Ci0gICAgICAgIHR5cGU6ICJw
YXJhbWV0ZXIiLAotICAgICAgICBuYW1lOiBtLnNraXAoKS52YWx1ZQotICAgIH07Ci0gICAgZnVu
Y3Rpb25PYmplY3QudmFsdWUgPSBwYXJzZUxpc3QobSwgWyIsIiwgImVuZCJdKTsKLSAgICBtLnNr
aXBJZk5lZWRlZCgiLCIpOwotICAgIHJldHVybiBmdW5jdGlvbk9iamVjdDsKLX0KLQotLy8gQ29u
c3VtZXMgYSBsaXN0IG9mIHRva2VucyBiZWZvcmUgcmVhY2hpbmcgdGhlICJlbmRUb2tlbiIgYW5k
IHJldHVybnMgYW4gYXJyYXkgd2l0aCBhbGwgdGhlIHBhcnNlZCBpdGVtcy4KLS8vIE1ha2VzIHRo
ZSBmb2xsb3dpbmcgYXNzdW1wdGlvbnM6Ci0vLyAtIGlmIGEga2V5d29yZCBpcyBmb2xsb3dlZCBi
eSAiKCIgdGhlbiBpdCBpcyBhIHN0YXJ0IG9mIGZ1bmN0aW9uCi0vLyAtIGlmIGEga2V5d29yZCBp
cyBub3QgZm9sbG93ZWQgYnkgIiwiIGl0IGlzIGEgcGFyYW1ldGVyCi0vLyBLZXl3b3JkcyB0aGF0
IGRvIG5vdCBtYXRjaCBlaXRoZXIgb2YgdGhlIHByZXZpb3VzIHJ1bGVzIGFuZCB0b2tlbnMgbGlr
ZSBudW1iZXIgYW5kIHVybCBhcmUganVzdCBjbG9uZWQuCi1mdW5jdGlvbiBwYXJzZUxpc3QobSwg
ZW5kVG9rZW4pCi17Ci0gICAgdmFyIHJlc3VsdCA9IFtdLCB0b2tlbjsKLSAgICB3aGlsZSAoKHRv
a2VuID0gbS5jdXJyZW50KCkpICYmICF0b2tlbi5pc0EoZW5kVG9rZW4pKSB7Ci0gICAgICAgIGlm
ICh0b2tlbi5pc0EoImtleXdvcmQiKSkgewotICAgICAgICAgICAgaWYgKG0uYWhlYWQoKS5pc0Eo
IigiKSkKLSAgICAgICAgICAgICAgICByZXN1bHQucHVzaChwYXJzZUZ1bmN0aW9uKG0pKTsKLSAg
ICAgICAgICAgIGVsc2UgaWYgKG0uYWhlYWQoKS5pc0EoIiwiLCBlbmRUb2tlbikpIHsKLSAgICAg
ICAgICAgICAgICByZXN1bHQucHVzaCh7Ci0gICAgICAgICAgICAgICAgICAgIHR5cGU6ICJrZXl3
b3JkIiwgCi0gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBtLnNraXAoKS52YWx1ZQotICAgICAg
ICAgICAgICAgIH0pOwotICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgcmVzdWx0
LnB1c2gocGFyc2VQYXJhbWV0ZXIobSkpOwotICAgICAgICB9IGVsc2UgaWYgKHRva2VuLmlzQShu
dW1iZXIpKSB7Ci0gICAgICAgICAgICByZXN1bHQucHVzaCh7Ci0gICAgICAgICAgICAgICAgdHlw
ZTogIm51bWJlciIsCi0gICAgICAgICAgICAgICAgdmFsdWU6IG0uc2tpcCgpLnZhbHVlCi0gICAg
ICAgICAgICB9KTsKLSAgICAgICAgfSBlbHNlIGlmICh0b2tlbi5pc0EoInVybCIpKSB7Ci0gICAg
ICAgICAgICByZXN1bHQucHVzaCh7Ci0gICAgICAgICAgICAgICAgdHlwZTogInVybCIsCi0gICAg
ICAgICAgICAgICAgdmFsdWU6IG0uc2tpcCgpLnZhbHVlCi0gICAgICAgICAgICB9KTsKLSAgICAg
ICAgfSBlbHNlIGlmICh0b2tlbi5pc0EoIiwiKSkKLSAgICAgICAgICAgIG0uc2tpcCgpOwotICAg
ICAgICBlbHNlIAotICAgICAgICAgICAgdGhyb3cgIlVuZXhwZWN0ZWQgdG9rZW4gIiArIEpTT04u
c3RyaW5naWZ5KHRva2VuKSArICIgaW4gYSBsaXN0LiI7Ci0gICAgfQotICAgIHJldHVybiByZXN1
bHQ7Ci19Ci0KLWZ1bmN0aW9uIHRva2Vuc1RvVmFsdWVzKHRva2VucykKLXsKLSAgICB2YXIgbSA9
IG5ldyBUb2tlblN0cmVhbSh0b2tlbnMpOwotICAgIHJldHVybiBwYXJzZUxpc3QobSwgImVuZCIp
OwotfQotCi0vLyBFeHRyYWN0cyBhIHBhcmFtZXRlcnMgYXJyYXkgZnJvbSB0aGUgcGFyYW1ldGVy
cyBzdHJpbmcgb2YgdGhlIGN1c3RvbSBmaWx0ZXIgZnVuY3Rpb24uCi1mdW5jdGlvbiBwYXJzZUN1
c3RvbUZpbHRlclBhcmFtZXRlcnMocykKLXsKLSAgICByZXR1cm4gdG9rZW5zVG9WYWx1ZXModG9r
ZW5pemVTdHJpbmcocykpOwotfQotCi0vLyBOZWVkIHRvIHJlbW92ZSB0aGUgYmFzZSBVUkwgdG8g
YXZvaWQgaGF2aW5nIGxvY2FsIHBhdGhzIGluIHRoZSBleHBlY3RlZCByZXN1bHRzLgotZnVuY3Rp
b24gcmVtb3ZlQmFzZVVSTChzcmMpIHsKLSAgICB2YXIgdXJsUmVnZXhwID0gL3VybFwoKFteXCld
KilcKS9nOwotICAgIHJldHVybiBzcmMucmVwbGFjZSh1cmxSZWdleHAsIGZ1bmN0aW9uKG1hdGNo
LCB1cmwpIHsKLSAgICAgICAgcmV0dXJuICJ1cmwoIiArIHVybC5zdWJzdHIodXJsLmxhc3RJbmRl
eE9mKCIvIikgKyAxKSArICIpIjsKLSAgICB9KTsKLX0KLQotLy8gUGFyc2VzIHRoZSBwYXJhbWV0
ZXJzIG9mIHRoZSBjdXN0b20gZmlsdGVyIGZ1bmN0aW9uIGFuZCByZXR1cm5zIGl0IHVzaW5nIHRo
ZSBmb2xsb3dpbmcgb3JkZXI6Ci0vLyAtIElmIHBhcmFtZXRlcnMgaGF2ZSBkaWZmZXJlbnQgdHlw
ZXMgKGllLiB1cmwsIG51bWJlciwgbmFtZWQgcGFyYW1ldGVyKSwgdGhlIGFscGhhYmV0aWNhbCBv
cmRlciBvZiB0aGUgInR5cGUiIGlzIHVzZWQuCi0vLyAtIElmIHBhcmFtZXRlcnMgYXJlIG9mIHR5
cGUgInBhcmFtZXRlciIgdGhlIGFscGhhYmV0aWNhbCBvcmRlciBvZiB0aGUgcGFyYW1ldGVyIG5h
bWVzIGlzIHVzZWQuCi0vLyAtIElmIHBhcmFtZXRlcnMgYXJlIG9mIG90aGVyIHR5cGVzLCB0aGVu
IHRoZSB2YWx1ZSBpcyB1c2VkIHRvIG9yZGVyIHRoZW0gYWxwaGFiZXRpY2FsLgotLy8gVGhlIG9y
ZGVyIGlzIGltcG9ydGFudCB0byBtYWtlIGl0IGVhc3kgdG8gY29tcGFyZSB0d28gY3VzdG9tIGZp
bHRlcnMsIHRoYXQgaGF2ZSBleGFjdGx5IHRoZSBzYW1lIHBhcmFtZXRlcnMsIAotLy8gYnV0IHdp
dGggcG90ZW50aWFsbHkgZGlmZmVyZW50ICJuYW1lZCBwYXJhbWV0ZXIiIHZhbHVlcy4KLWZ1bmN0
aW9uIGdldEN1c3RvbUZpbHRlclBhcmFtZXRlcnMocykgCi17Ci0gICAgcmV0dXJuIHBhcnNlQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVycyhyZW1vdmVCYXNlVVJMKHMpKS5zb3J0KGZ1bmN0aW9uKGEsIGIp
IHsgCi0gICAgICAgIGlmIChhLnR5cGUgIT0gYi50eXBlKSAKLSAgICAgICAgICAgIHJldHVybiBh
LnR5cGUubG9jYWxlQ29tcGFyZShiLnR5cGUpOwotICAgICAgICBpZiAoYS50eXBlID09ICJwYXJh
bWV0ZXIiKQotICAgICAgICAgICAgcmV0dXJuIGEubmFtZS5sb2NhbGVDb21wYXJlKGIubmFtZSk7
Ci0gICAgICAgIHJldHVybiBhLnZhbHVlLnRvU3RyaW5nKCkubG9jYWxlQ29tcGFyZShiLnZhbHVl
LnRvU3RyaW5nKCkpOwotICAgIH0pOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvci5mcyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvZnJhZ21lbnQtY29sb3IuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGMxYmQ3MjcuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9mcmFnbWVudC1jb2xvci5mcworKysgL2Rldi9udWxsCkBAIC0xLDcgKzAsMCBAQAot
cHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci11bmlmb3JtIGZsb2F0IGNvbG9yQXJyYXlbNF07Ci0K
LXZvaWQgbWFpbigpCi17Ci0gICAgZ2xfRnJhZ0NvbG9yID0gdmVjNChjb2xvckFycmF5WzBdLCBj
b2xvckFycmF5WzFdLCBjb2xvckFycmF5WzJdLCBjb2xvckFycmF5WzNdKTsKLX0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvZnJhZ21lbnQtY29sb3JzLmZz
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvcnMuZnMK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFjYzBlM2EuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9mcmFnbWVudC1jb2xvcnMuZnMKKysrIC9k
ZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVuaWZv
cm0gdmVjNCBjMTsKLXVuaWZvcm0gdmVjNCBjMjsKLXVuaWZvcm0gdmVjNCBjMzsKLXVuaWZvcm0g
dmVjNCBjNDsKLXVuaWZvcm0gdmVjNCBjNTsKLXVuaWZvcm0gdmVjNCBjNjsKLQotdm9pZCBtYWlu
KCkKLXsKLQlpZiAoYzEgPT0gYzIgJiYgYzEgPT0gYzMgJiYgYzEgPT0gYzQgJiYgYzEgPT0gYzUg
JiYgYzEgPT0gYzYpCi0gICAgCWdsX0ZyYWdDb2xvciA9IGMxOwotICAgIGVsc2UgCi0gICAgCWds
X0ZyYWdDb2xvciA9IHZlYzQoMS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvZnJhZ21lbnQtbWF0Ti5mcyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvZnJhZ21lbnQtbWF0Ti5mcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggZWZkMzExNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ZyYWdtZW50LW1hdE4uZnMKKysrIC9kZXYvbnVsbApAQCAt
MSwyMyArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVuaWZvcm0gbWF0MiBtMTsK
LXVuaWZvcm0gbWF0MyBtMjsKLXVuaWZvcm0gbWF0NCBtMzsKLQotdm9pZCBtYWluKCkKLXsKLSAg
ICAvLyBUZXN0aW5nIGluZGl2aWR1YWwgZW50cmllcyB0byBjaGVjayBjb3JyZWN0IG9yZGVyLgot
ICAgIGlmIChtMVswXVswXSA9PSAxLiAmJiBtMVswXVsxXSA9PSAxLgotICAgICAgICAmJiBtMVsx
XVswXSA9PSAwLiAmJiBtMVsxXVsxXSA9PSAwLgotICAgICAgICAmJgotICAgICAgICBtMlswXVsw
XSA9PSAxLiAmJiBtMlswXVsxXSA9PSAwLiAmJiBtMlswXVsyXSA9PSAxLgotICAgICAgICAmJiBt
MlsxXVswXSA9PSAwLiAmJiBtMlsxXVsxXSA9PSAxLiAmJiBtMlsxXVsyXSA9PSAxLgotICAgICAg
ICAmJiBtMlsyXVswXSA9PSAwLiAmJiBtMlsyXVsxXSA9PSAxLiAmJiBtMlsyXVsyXSA9PSAwLgot
ICAgICAgICAmJgotICAgICAgICBtM1swXVswXSA9PSAxLiAmJiBtM1swXVsxXSA9PSAxLiAmJiBt
M1swXVsyXSA9PSAwLiAmJiBtM1swXVszXSA9PSAwLgotICAgICAgICAmJiBtM1sxXVswXSA9PSAw
LiAmJiBtM1sxXVsxXSA9PSAxLiAmJiBtM1sxXVsyXSA9PSAxLiAmJiBtM1sxXVszXSA9PSAwLgot
ICAgICAgICAmJiBtM1syXVswXSA9PSAxLiAmJiBtM1syXVsxXSA9PSAwLiAmJiBtM1syXVsyXSA9
PSAwLiAmJiBtM1syXVszXSA9PSAxLgotICAgICAgICAmJiBtM1szXVswXSA9PSAxLiAmJiBtM1sz
XVsxXSA9PSAxLiAmJiBtM1szXVsyXSA9PSAxLiAmJiBtM1szXVszXSA9PSAxLikKLSAgICAgICAg
Z2xfRnJhZ0NvbG9yID0gdmVjNCgwLjAsIDEuMCwgMC4wLCAxLjApOwotICAgIGVsc2UgCi0gICAg
ICAgIGdsX0ZyYWdDb2xvciA9IHZlYzQoMS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvZ3JheXNjYWxlLWNvbG9yLW1h
dHJpeC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvZ3JheXNjYWxlLWNv
bG9yLW1hdHJpeC5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjAzZDg1ZC4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2dyYXlzY2FsZS1j
b2xvci1tYXRyaXguZnMKKysrIC9kZXYvbnVsbApAQCAtMSw5ICswLDAgQEAKLXZvaWQgbWFpbigp
Ci17Ci0gICAgY3NzX0NvbG9yTWF0cml4ID0gbWF0NCgKLSAgICAgICAgMC4zMzMsIDAuMzMzLCAw
LjMzMywgMC4wMDAsCi0gICAgICAgIDAuMzMzLCAwLjMzMywgMC4zMzMsIDAuMDAwLAotICAgICAg
ICAwLjMzMywgMC4zMzMsIDAuMzMzLCAwLjAwMCwKLSAgICAgICAgMC4wMDAsIDAuMDAwLCAwLjAw
MCwgMS4wMDAKLSAgICApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJz
L3Jlc291cmNlcy9pbnZhbGlkLWEtdHJpYW5nbGUtY29vcmQtd2l0aC1hdHRhY2hlZC1tZXNoLnZz
IGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLWEtdHJpYW5nbGUt
Y29vcmQtd2l0aC1hdHRhY2hlZC1tZXNoLnZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA1YzU4YzhlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvaW52YWxpZC1hLXRyaWFuZ2xlLWNvb3JkLXdpdGgtYXR0YWNoZWQtbWVzaC52cworKysgL2Rl
di9udWxsCkBAIC0xLDEyICswLDAgQEAKLS8vIFRoaXMgc2hhZGVyIHNob3VsZCBub3QgZXhlY3V0
ZSBpZiB0aGUgbWVzaCBpcyBhdHRhY2hlZCBiZWNhdXNlIGFfdHJpYW5nbGVDb29yZCBpcyBvbmx5
IGF2YWlsYWJsZSBpbiBkZXRhY2hlZCBtZXNoc2VzLgotCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9h
dDsKLQotYXR0cmlidXRlIHZlYzMgYV90cmlhbmdsZUNvb3JkOwotYXR0cmlidXRlIHZlYzQgYV9w
b3NpdGlvbjsKLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci0KLXZvaWQgbWFpbigp
Ci17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0aW9uOwot
fQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlk
LWN1c3RvbS1hdHRyaWJ1dGUudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2ludmFsaWQtY3VzdG9tLWF0dHJpYnV0ZS52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggM2ViNmIxZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL2ludmFsaWQtY3VzdG9tLWF0dHJpYnV0ZS52cworKysgL2Rldi9udWxsCkBAIC0xLDEyICsw
LDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3Rv
bSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIG15X2F0dHJpYnV0ZSBpcyBub3Qgb25l
IG9mIHRoZSBidWlsdC1pbiBhdHRyaWJ1dGVzLgotCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsK
LQotYXR0cmlidXRlIGZsb2F0IG15X2F0dHJpYnV0ZTsKLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRp
b247Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotCi12b2lkIG1haW4oKQotewot
ICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogYV9wb3NpdGlvbjsKLX0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC1zaGFk
ZXIudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtc2hhZGVy
LnZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYzFlYmJiLi4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC1zaGFkZXIudnMKKysr
IC9kZXYvbnVsbApAQCAtMSwyICswLDAgQEAKLVRoaXMgaXMgbm90IGEgcmVhbCB2ZXJ0ZXggc2hh
ZGVyLiBJdCBpcyBqdXN0IGludmFsaWQgc2hhZGVyIGNvZGUuCi1JdCBpcyB1c2VkIHRvIHRlc3Qg
dGhhdCB0aGUgZmlsdGVyIGlzIG5vdCBkcmF3biB3aGVuIHRoZSBzaGFkZXIgaXMgaW52YWxpZC4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLW1lc2gtY29vcmQudnMgYi9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS1hLW1lc2gtY29vcmQudnMK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA4MjQ5NzcuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS1tZXNoLWNvb3Jk
LnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyBy
ZWxhdGVkIHRlc3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJl
Y2F1c2UgYV9tZXNoQ29vcmQncyB0eXBlIGlzIGludmFsaWQuCi0KLXByZWNpc2lvbiBtZWRpdW1w
IGZsb2F0OwotCi0vLyBhX21lc2hDb29yZCBzaG91bGQgYmUgYSB2ZWMyLCBub3QgYSBmbG9hdC4K
LWF0dHJpYnV0ZSBmbG9hdCBhX21lc2hDb29yZDsKLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247
Ci0KLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci0KLXZvaWQgbWFpbigpCi17Ci0g
ICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0aW9uOwotfQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUt
YS1wb3NpdGlvbi52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxp
ZC10eXBlLWEtcG9zaXRpb24udnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxNTRl
YTYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZh
bGlkLXR5cGUtYS1wb3NpdGlvbi52cworKysgL2Rldi9udWxsCkBAIC0xLDEyICswLDAgQEAKLS8v
IElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1c3RvbSBmaWx0ZXIg
ZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIGFfcG9zaXRpb24ncyB0eXBlIGlzIGludmFsaWQuCi0K
LXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyBhX3Bvc2l0aW9uIHNob3VsZCBiZSBhIHZl
YzQsIG5vdCBhIHZlYzMuCi1hdHRyaWJ1dGUgdmVjMyBhX3Bvc2l0aW9uOwotdW5pZm9ybSBtYXQ0
IHVfcHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Qb3NpdGlvbiA9
IHVfcHJvamVjdGlvbk1hdHJpeCAqIHZlYzQoYV9wb3NpdGlvbiwgMS4wKTsKLX0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWEtdGV4
LWNvb3JkLnZzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5
cGUtYS10ZXgtY29vcmQudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI0MjljNzAu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlk
LXR5cGUtYS10ZXgtY29vcmQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi0vLyBJ
ZiB0aGlzIHNoYWRlcidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20gZmlsdGVyIGRv
ZXMgbm90IGV4ZWN1dGUgYmVjYXVzZSBhX3RleENvb3JkJ3MgdHlwZSBpcyBpbnZhbGlkLgotCi1w
cmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotLy8gYV9tZXNoQ29vcmQgc2hvdWxkIGJlIGEgdmVj
Miwgbm90IGFuIHZlYzQuCi1hdHRyaWJ1dGUgdmVjNCBhX3RleENvb3JkOwotYXR0cmlidXRlIHZl
YzQgYV9wb3NpdGlvbjsKLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci0KLXZvaWQg
bWFpbigpCi17Ci0gICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb25NYXRyaXggKiBhX3Bvc2l0
aW9uOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9p
bnZhbGlkLXR5cGUtYS10cmlhbmdsZS1jb29yZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVy
cy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLWEtdHJpYW5nbGUtY29vcmQudnMKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IGJlZDY2MjkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlkLXR5cGUtYS10cmlhbmdsZS1jb29yZC52cworKysg
L2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0
ZXN0IHBhc3NlcywgdGhlIGN1c3RvbSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIGFf
dHJpYW5nbGVDb29yZCdzIHR5cGUgaXMgaW52YWxpZC4KLS8vIFRoZSBjdXN0b20gZmlsdGVyIHNo
b3VsZCBkZWZpbmUgYSBkZXRhY2hlZCBtZXNoIGJlY2F1c2UgYV90cmlhbmdsZUNvb3JkIGlzIG9u
bHkgYXZhaWxhYmxlIHdpdGggYSBkZXRhY2hlZCBtZXNoLgotCi1wcmVjaXNpb24gbWVkaXVtcCBm
bG9hdDsKLQotLy8gYV90cmlhbmdsZUNvb3JkIHNob3VsZCBiZSBhIHZlYzMsIG5vdCBhIHZlYzIu
Ci1hdHRyaWJ1dGUgdmVjMiBhX3RyaWFuZ2xlQ29vcmQ7Ci1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0
aW9uOwotdW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJpeDsKLQotdm9pZCBtYWluKCkKLXsK
LSAgICBnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIGFfcG9zaXRpb247Ci19CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlw
ZS1hdHRyaWJ1dGUtYXJyYXkudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L2ludmFsaWQtdHlwZS1hdHRyaWJ1dGUtYXJyYXkudnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDYxM2U3OWUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy9pbnZhbGlkLXR5cGUtYXR0cmlidXRlLWFycmF5LnZzCisrKyAvZGV2L251bGwKQEAg
LTEsMTIgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyByZWxhdGVkIHRlc3QgcGFzc2VzLCB0
aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJlY2F1c2UgYV9wb3NpdGlvbidzIHR5
cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLS8vIGFfcG9zaXRp
b24gc2hvdWxkIGJlIGEgdmVjNCwgbm90IGEgdmVjNCBhcnJheS4KLWF0dHJpYnV0ZSB2ZWM0IGFf
cG9zaXRpb25bMV07Ci11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotCi12b2lkIG1h
aW4oKQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogYV9wb3NpdGlv
blswXTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
aW52YWxpZC10eXBlLXUtbWVzaC1ib3guZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL2ludmFsaWQtdHlwZS11LW1lc2gtYm94LmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBkMWNiNjdhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9y
ZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtbWVzaC1ib3guZnMKKysrIC9kZXYvbnVsbApAQCAtMSwx
MSArMCwwIEBACi0vLyBJZiB0aGlzIHNoYWRlcidzIHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBj
dXN0b20gZmlsdGVyIGRvZXMgbm90IGV4ZWN1dGUgYmVjYXVzZSB1X21lc2hCb3gncyB0eXBlIGlz
IGludmFsaWQuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyB1X21lc2hCb3ggc2hv
dWxkIGJlIGEgdmVjNCwgbm90IGEgdmVjMy4KLXVuaWZvcm0gdmVjMyB1X21lc2hCb3g7Ci0KLXZv
aWQgbWFpbigpCi17Ci0gICAgY3NzX01peENvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjAp
OwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZh
bGlkLXR5cGUtdS1tZXNoLXNpemUuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL2ludmFsaWQtdHlwZS11LW1lc2gtc2l6ZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMGIwODBlMC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL2ludmFsaWQtdHlwZS11LW1lc2gtc2l6ZS5mcworKysgL2Rldi9udWxsCkBAIC0xLDEx
ICswLDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3NlcywgdGhlIGN1
c3RvbSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIHVfbWVzaFNpemUncyB0eXBlIGlz
IGludmFsaWQuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyB1X21lc2hTaXplIHNo
b3VsZCBiZSBhIHZlYzIsIG5vdCBhIGZsb2F0LgotdW5pZm9ybSBmbG9hdCB1X21lc2hTaXplOwot
Ci12b2lkIG1haW4oKQotewotICAgIGNzc19NaXhDb2xvciA9IHZlYzQoMS4wLCAwLjAsIDAuMCwg
MS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
aW52YWxpZC10eXBlLXUtcHJvamVjdGlvbi1tYXRyaXguZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LXByb2plY3Rpb24tbWF0cml4LmZzCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyNWZiMTE1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtcHJvamVjdGlvbi1tYXRy
aXguZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0vLyBJZiB0aGlzIHNoYWRlcidz
IHJlbGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20gZmlsdGVyIGRvZXMgbm90IGV4ZWN1dGUg
YmVjYXVzZSB1X3Byb2plY3Rpb25NYXRyaXgncyB0eXBlIGlzIGludmFsaWQuCi0KLXByZWNpc2lv
biBtZWRpdW1wIGZsb2F0OwotCi0vLyB1X3Byb2plY3Rpb25NYXRyaXggc2hvdWxkIGJlIGEgbWF0
NCwgbm90IGEgbWF0My4KLXVuaWZvcm0gbWF0MyB1X3Byb2plY3Rpb25NYXRyaXg7Ci0KLXZvaWQg
bWFpbigpCi17Ci0gICAgY3NzX01peENvbG9yID0gdmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwot
fQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9pbnZhbGlk
LXR5cGUtdS10ZXh0dXJlLXNpemUuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL2ludmFsaWQtdHlwZS11LXRleHR1cmUtc2l6ZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggZTA1NjhmMC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
cmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LXRleHR1cmUtc2l6ZS5mcworKysgL2Rldi9udWxsCkBA
IC0xLDExICswLDAgQEAKLS8vIElmIHRoaXMgc2hhZGVyJ3MgcmVsYXRlZCB0ZXN0IHBhc3Nlcywg
dGhlIGN1c3RvbSBmaWx0ZXIgZG9lcyBub3QgZXhlY3V0ZSBiZWNhdXNlIHVfdGV4dHVyZVNpemUn
cyB0eXBlIGlzIGludmFsaWQuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi0vLyB1X3Rl
eHR1cmVTaXplIHNob3VsZCBiZSBhIHZlYzIsIG5vdCBhIHZlYzMuCi11bmlmb3JtIHZlYzMgdV90
ZXh0dXJlU2l6ZTsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfTWl4Q29sb3IgPSB2ZWM0KDEu
MCwgMC4wLCAwLjAsIDEuMCk7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11LXRpbGUtc2l6ZS5mcyBiL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGlsZS1zaXplLmZzCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhN2RhM2U4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXUtdGlsZS1zaXplLmZzCisrKyAv
ZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLy8gSWYgdGhpcyBzaGFkZXIncyByZWxhdGVkIHRl
c3QgcGFzc2VzLCB0aGUgY3VzdG9tIGZpbHRlciBkb2VzIG5vdCBleGVjdXRlIGJlY2F1c2UgdV90
aWxlU2l6ZSdzIHR5cGUgaXMgaW52YWxpZC4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0K
LS8vIHVfdGlsZVNpemUgc2hvdWxkIGJlIGEgdmVjMiwgbm90IGEgbWF0Mi4KLXVuaWZvcm0gbWF0
MiB1X3RpbGVTaXplOwotCi12b2lkIG1haW4oKQotewotICAgIGNzc19NaXhDb2xvciA9IHZlYzQo
MS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXVuaWZvcm0tYXJyYXkuZnMgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL2ludmFsaWQtdHlwZS11bmlmb3JtLWFycmF5LmZzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2MWMzOTlkLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvaW52YWxpZC10eXBlLXVuaWZvcm0tYXJyYXku
ZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0vLyBJZiB0aGlzIHNoYWRlcidzIHJl
bGF0ZWQgdGVzdCBwYXNzZXMsIHRoZSBjdXN0b20gZmlsdGVyIGRvZXMgbm90IGV4ZWN1dGUgYmVj
YXVzZSB1X21lc2hCb3gncyB0eXBlIGlzIGludmFsaWQuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZs
b2F0OwotCi0vLyB1X21lc2hCb3ggc2hvdWxkIGJlIGEgdmVjNCwgbm90IGFuIGFycmF5IG9mIHZl
YzQuCi11bmlmb3JtIHZlYzQgdV9tZXNoQm94WzFdOwotCi12b2lkIG1haW4oKQotewotICAgIGNz
c19NaXhDb2xvciA9IHZlYzQoMS4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvbWl4LWNvbG9yLmZzIGIvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9taXgtY29sb3IuZnMKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IGQyZmU2MzQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0
ZXJzL3Jlc291cmNlcy9taXgtY29sb3IuZnMKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAK
LXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotdW5pZm9ybSB2ZWM0IG1peF9jb2xvcjsKLQotdm9p
ZCBtYWluKCkKLXsKLSAgICBjc3NfTWl4Q29sb3IgPSBtaXhfY29sb3I7Ci19CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzIGIv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9wYXNzLXRleC1jb29yZC52cwpkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGZmZDI3Yi4uMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3Bhc3MtdGV4LWNvb3JkLnZzCisrKyAvZGV2L251
bGwKQEAgLTEsMTIgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLWF0dHJpYnV0
ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVjMiBhX3RleENvb3JkOwotdW5pZm9ybSBt
YXQ0IHVfcHJvamVjdGlvbk1hdHJpeDsKLXZhcnlpbmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lk
IG1haW4oKQotewotICAgIHZfdGV4Q29vcmQgPSBhX3RleENvb3JkOwotICAgIGdsX1Bvc2l0aW9u
ID0gdV9wcm9qZWN0aW9uTWF0cml4ICogYV9wb3NpdGlvbjsKLX0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVy
ZS1taXguZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3NhbXBsZS1kZWZp
bmVkLWNzcy11LXRleHR1cmUtbWl4LmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBj
ZWY5ODg1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
c2FtcGxlLWRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXguZnMKKysrIC9kZXYvbnVsbApAQCAtMSwy
MCArMCwwIEBACi0vLyBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYSBzaGFkZXIgY2Fubm90IHJlYWQg
ZnJvbSB0aGUgaW50ZXJuYWwgImNzc191X3RleHR1cmUiIHNhbXBsZXIsIHdoaWNoIHJlZmVyZW5j
ZXMgdGhlIERPTSBlbGVtZW50IHRleHR1cmUuCi0vLyBUaGlzIHNoYWRlciBpcyByZWZlcmVuY2Vk
IGZyb20gdGhlIENTUyBtaXggZnVuY3Rpb24gYW5kIHNob3VsZCBmYWlsIHRvIHZhbGlkYXRlIGJl
Y2F1c2UgaXQgZGVmaW5lcyAiY3NzX3VfdGV4dHVyZSIsCi0vLyB1c2luZyB0aGUgcmVzdHJpY3Rl
ZCAiY3NzXyIgcHJlZml4LgotCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdW5pZm9ybSBz
YW1wbGVyMkQgY3NzX3VfdGV4dHVyZTsKLQotdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZv
aWQgbWFpbigpCi17Ci0JLy8gVHJ5IHRvIHNhbXBsZSB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4K
LQl2ZWM0IGNvbG9yID0gdGV4dHVyZTJEKGNzc191X3RleHR1cmUsIHZfdGV4Q29vcmQpOwotCi0J
Ly8gU3dhcCB0aGUgcmVkIGFuZCBncmVlbiBjaGFubmVscy4KLQljb2xvci5yZyA9IGNvbG9yLmdy
OwotCi0JY3NzX01peENvbG9yID0gY29sb3I7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3NhbXBsZS1kZWZpbmVkLWNzcy11LXRleHR1cmUuZnMgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3NhbXBsZS1kZWZpbmVkLWNzcy11LXRl
eHR1cmUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU4NDZkMTcuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtZGVmaW5lZC1j
c3MtdS10ZXh0dXJlLmZzCisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAsMCBAQAotLy8gVGhpcyB0
ZXN0IGNoZWNrcyB0aGF0IGEgc2hhZGVyIGNhbm5vdCByZWFkIGZyb20gdGhlIGludGVybmFsICJj
c3NfdV90ZXh0dXJlIiBzYW1wbGVyLCB3aGljaCByZWZlcmVuY2VzIHRoZSBET00gZWxlbWVudCB0
ZXh0dXJlLgotLy8gVGhpcyBzaGFkZXIgc2hvdWxkIGZhaWwgdG8gdmFsaWRhdGUgYmVjYXVzZSBp
dCBkZWZpbmVzICJjc3NfdV90ZXh0dXJlIiwgd2hpY2ggc2hvdWxkIGJlIGFuIHVuYm91bmQgc2Ft
cGxlciwKLS8vIHNpbmNlIHRoaXMgc2hhZGVyIGlzIG5vdCByZWZlcmVuY2VkIGZyb20gdGhlIENT
UyBtaXggZnVuY3Rpb24uCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi11bmlmb3JtIHNh
bXBsZXIyRCBjc3NfdV90ZXh0dXJlOwotCi12YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsKLQotdm9p
ZCBtYWluKCkKLXsKLQkvLyBUcnkgdG8gc2FtcGxlIHRoZSBET00gZWxlbWVudCB0ZXh0dXJlLgot
CXZlYzQgY29sb3IgPSB0ZXh0dXJlMkQoY3NzX3VfdGV4dHVyZSwgdl90ZXhDb29yZCk7Ci0KLQkv
LyBTd2FwIHRoZSByZWQgYW5kIGdyZWVuIGNoYW5uZWxzLgotCWNvbG9yLnJnID0gY29sb3IuZ3I7
Ci0KLQlnbF9GcmFnQ29sb3IgPSBjb2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXUtdGV4dHVyZS1taXguZnMgYi9MYXlvdXRUZXN0
cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3NhbXBsZS11LXRleHR1cmUtbWl4LmZzCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNWYzNTIyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXUtdGV4dHVyZS1taXguZnMKKysrIC9kZXYv
bnVsbApAQCAtMSwxOSArMCwwIEBACi0vLyBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYSBzaGFkZXIg
d2l0aCBhbiB1bmJvdW5kIHNhbXBsZXIgaXMgbm90IHBlcm1pdHRlZCB0byBleGVjdXRlLgotLy8g
VGhpcyBzaGFkZXIgaXMgcmVmZXJlbmNlZCBmcm9tIHRoZSBDU1MgbWl4IGZ1bmN0aW9uIGFuZCB3
cml0ZXMgaXRzIG91dHB1dCB0byBjc3NfTWl4Q29sb3IuCi0KLXByZWNpc2lvbiBtZWRpdW1wIGZs
b2F0OwotCi11bmlmb3JtIHNhbXBsZXIyRCB1X3RleHR1cmU7Ci0KLXZhcnlpbmcgdmVjMiB2X3Rl
eENvb3JkOwotCi12b2lkIG1haW4oKQotewotCS8vIFRyeSB0byBzYW1wbGUgdGhlIERPTSBlbGVt
ZW50IHRleHR1cmUuCi0JdmVjNCBjb2xvciA9IHRleHR1cmUyRCh1X3RleHR1cmUsIHZfdGV4Q29v
cmQpOwotCi0JLy8gU3dhcCB0aGUgcmVkIGFuZCBncmVlbiBjaGFubmVscy4KLQljb2xvci5yZyA9
IGNvbG9yLmdyOwotCi0JY3NzX01peENvbG9yID0gY29sb3I7Ci19CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3NhbXBsZS11LXRleHR1cmUuZnMgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3NhbXBsZS11LXRleHR1cmUuZnMKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNjMDJiODUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtdS10ZXh0dXJlLmZzCisrKyAvZGV2L251
bGwKQEAgLTEsMTkgKzAsMCBAQAotLy8gVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGEgc2hhZGVyIHdp
dGggYW4gdW5ib3VuZCBzYW1wbGVyIGlzIG5vdCBwZXJtaXR0ZWQgdG8gZXhlY3V0ZS4KLS8vIFRo
aXMgc2hhZGVyIGlzIG5vdCByZWZlcmVuY2VkIGZyb20gdGhlIENTUyBtaXggZnVuY3Rpb24gYW5k
IHdyaXRlcyBpdHMgb3V0cHV0IHRvIGdsX0ZyYWdDb2xvci4KLQotcHJlY2lzaW9uIG1lZGl1bXAg
ZmxvYXQ7Ci0KLXVuaWZvcm0gc2FtcGxlcjJEIHVfdGV4dHVyZTsKLQotdmFyeWluZyB2ZWMyIHZf
dGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0JLy8gVHJ5IHRvIHNhbXBsZSB0aGUgRE9NIGVs
ZW1lbnQgdGV4dHVyZS4KLQl2ZWM0IGNvbG9yID0gdGV4dHVyZTJEKHVfdGV4dHVyZSwgdl90ZXhD
b29yZCk7Ci0KLQkvLyBTd2FwIHRoZSByZWQgYW5kIGdyZWVuIGNoYW5uZWxzLgotCWNvbG9yLnJn
ID0gY29sb3IuZ3I7Ci0KLQlnbF9GcmFnQ29sb3IgPSBjb2xvcjsKLX0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxlLXVuZGVmaW5lZC1jc3MtdS10
ZXh0dXJlLW1peC5mcyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvc2FtcGxl
LXVuZGVmaW5lZC1jc3MtdS10ZXh0dXJlLW1peC5mcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggY2I5NjZiMC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVz
b3VyY2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS1taXguZnMKKysrIC9kZXYvbnVs
bApAQCAtMSwxNyArMCwwIEBACi0vLyBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYSBzaGFkZXIgY2Fu
bm90IHJlYWQgZnJvbSB0aGUgaW50ZXJuYWwgImNzc191X3RleHR1cmUiIHNhbXBsZXIsIHdoaWNo
IHJlZmVyZW5jZXMgdGhlIERPTSBlbGVtZW50IHRleHR1cmUuCi0vLyBUaGlzIHNoYWRlciBzaG91
bGQgZmFpbCB0byB2YWxpZGF0ZSBiZWNhdXNlICJjc3NfdV90ZXh0dXJlIiBzaG91bGQgYmUgdW5k
ZWZpbmVkIHRvIHRoaXMgY29kZS4KLQotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci0KLXZhcnlp
bmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQotewotCS8vIFRyeSB0byBzYW1wbGUg
dGhlIERPTSBlbGVtZW50IHRleHR1cmUuCi0JdmVjNCBjb2xvciA9IHRleHR1cmUyRChjc3NfdV90
ZXh0dXJlLCB2X3RleENvb3JkKTsKLQotCS8vIFN3YXAgdGhlIHJlZCBhbmQgZ3JlZW4gY2hhbm5l
bHMuCi0JY29sb3IucmcgPSBjb2xvci5ncjsKLQotCWNzc19NaXhDb2xvciA9IGNvbG9yOwotfQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy9zYW1wbGUtdW5k
ZWZpbmVkLWNzcy11LXRleHR1cmUuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3Vy
Y2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS5mcwpkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZDFlMmYyYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvcmVzb3VyY2VzL3NhbXBsZS11bmRlZmluZWQtY3NzLXUtdGV4dHVyZS5mcworKysgL2Rldi9u
dWxsCkBAIC0xLDE3ICswLDAgQEAKLS8vIFRoaXMgdGVzdCBjaGVja3MgdGhhdCBhIHNoYWRlciBj
YW5ub3QgcmVhZCBmcm9tIHRoZSBpbnRlcm5hbCAiY3NzX3VfdGV4dHVyZSIgc2FtcGxlciwgd2hp
Y2ggcmVmZXJlbmNlcyB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLS8vIFRoaXMgc2hhZGVyIHNo
b3VsZCBmYWlsIHRvIHZhbGlkYXRlIGJlY2F1c2UgImNzc191X3RleHR1cmUiIHNob3VsZCBiZSB1
bmRlZmluZWQgdG8gdGhpcyBjb2RlLgotCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLQotdmFy
eWluZyB2ZWMyIHZfdGV4Q29vcmQ7Ci0KLXZvaWQgbWFpbigpCi17Ci0JLy8gVHJ5IHRvIHNhbXBs
ZSB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZS4KLQl2ZWM0IGNvbG9yID0gdGV4dHVyZTJEKGNzc191
X3RleHR1cmUsIHZfdGV4Q29vcmQpOwotCi0JLy8gU3dhcCB0aGUgcmVkIGFuZCBncmVlbiBjaGFu
bmVscy4KLQljb2xvci5yZyA9IGNvbG9yLmdyOwotCi0JZ2xfRnJhZ0NvbG9yID0gY29sb3I7Ci19
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtbWVzaC1i
b3gtaXMtdW5pdC1zcXVhcmUuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L3UtbWVzaC1ib3gtaXMtdW5pdC1zcXVhcmUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGNhOGQwNjguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy91LW1lc2gtYm94LWlzLXVuaXQtc3F1YXJlLmZzCisrKyAvZGV2L251bGwKQEAgLTEsMTkg
KzAsMCBAQAotLy8gVGVzdCB3aGV0aGVyIHVfbWVzaEJveCBpcyBjb3JyZWN0bHkgc2V0OyBjaGFu
Z2UgZnJhZ21lbnQgY29sb3IgdG8gZ3JlZW4gaWYgeWVzLgotcHJlY2lzaW9uIG1lZGl1bXAgZmxv
YXQ7Ci11bmlmb3JtIHZlYzQgdV9tZXNoQm94OwotCi1ib29sIGFyZUZsb2F0c0VxdWFsKGZsb2F0
IGEsIGZsb2F0IGIpCi17Ci0gICAgY29uc3QgZmxvYXQgZXBzaWxvbiA9IDAuMDAxOwotICAgIHJl
dHVybiAoYSA+IChiIC0gZXBzaWxvbikpICYmIChhIDwgKGIgKyBlcHNpbG9uKSk7Ci19Ci0KLWJv
b2wgYXJlVmVjdG9yc0VxdWFsKHZlYzQgYSwgdmVjNCBiKQotewotICAgIHJldHVybiBhcmVGbG9h
dHNFcXVhbChhLngsIGIueCkgJiYgYXJlRmxvYXRzRXF1YWwoYS55LCBiLnkpICYmIGFyZUZsb2F0
c0VxdWFsKGEueiwgYi56KSAmJiBhcmVGbG9hdHNFcXVhbChhLncsIGIudyk7Ci19Ci0KLXZvaWQg
bWFpbigpCi17Ci0gICAgZ2xfRnJhZ0NvbG9yID0gYXJlVmVjdG9yc0VxdWFsKHVfbWVzaEJveCwg
dmVjNCgtMC41LCAtMC41LCAxLjAsIDEuMCkpID8gdmVjNCgwLjAsIDEuMCwgMC4wLCAxLjApIDog
dmVjNCgxLjAsIDAuMCwgMC4wLCAxLjApOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9maWx0ZXJzL3Jlc291cmNlcy91LW1lc2gtc2l6ZS5mcyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvdS1tZXNoLXNpemUuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGI1NTI3NzQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291
cmNlcy91LW1lc2gtc2l6ZS5mcworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAKLS8vIFRl
c3Qgd2hldGhlciB1X21lc2hTaXplIGlzIGNvcnJlY3RseSBzZXQ7IGNoYW5nZSBmcmFnbWVudCB0
byBjb2xvciBncmVlbiBpZiB5ZXMuCi1wcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsKLXVuaWZvcm0g
dmVjMiB1X21lc2hTaXplOwotCi1ib29sIGFyZUZsb2F0c0VxdWFsKGZsb2F0IGEsIGZsb2F0IGIp
Ci17Ci0gICAgY29uc3QgZmxvYXQgZXBzaWxvbiA9IDAuMDAxOwotICAgIHJldHVybiAoYSA+IChi
IC0gZXBzaWxvbikpICYmIChhIDwgKGIgKyBlcHNpbG9uKSk7Ci19Ci0KLWJvb2wgYXJlVmVjdG9y
c0VxdWFsKHZlYzIgYSwgdmVjMiBiKQotewotICAgIHJldHVybiBhcmVGbG9hdHNFcXVhbChhLngs
IGIueCkgJiYgYXJlRmxvYXRzRXF1YWwoYS55LCBiLnkpOwotfQotCi12b2lkIG1haW4oKQotewot
ICAgIGdsX0ZyYWdDb2xvciA9IGFyZVZlY3RvcnNFcXVhbCh1X21lc2hTaXplLCB2ZWMyKDEwLjAs
IDIwLjApKSA/IHZlYzQoMC4wLCAxLjAsIDAuMCwgMS4wKSA6IHZlYzQoMS4wLCAwLjAsIDAuMCwg
MS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
dS10ZXh0dXJlLXNpemUuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3Ut
dGV4dHVyZS1zaXplLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNzUxNWRmLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdS10ZXh0dXJl
LXNpemUuZnMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vLyBUZXN0IHdoZXRoZXIg
dV90ZXh0dXJlU2l6ZSBpcyBjb3JyZWN0bHkgc2V0OyBjaGFuZ2UgZnJhZ21lbnQgY29sb3IgdG8g
Z3JlZW4gaWYgeWVzLgotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci11bmlmb3JtIHZlYzIgdV90
ZXh0dXJlU2l6ZTsKLQotYm9vbCBhcmVGbG9hdHNFcXVhbChmbG9hdCBhLCBmbG9hdCBiKQotewot
ICAgIGNvbnN0IGZsb2F0IGVwc2lsb24gPSAwLjAwMTsKLSAgICByZXR1cm4gKGEgPiAoYiAtIGVw
c2lsb24pKSAmJiAoYSA8IChiICsgZXBzaWxvbikpOwotfQotCi1ib29sIGFyZVZlY3RvcnNFcXVh
bCh2ZWMyIGEsIHZlYzIgYikKLXsKLSAgICByZXR1cm4gYXJlRmxvYXRzRXF1YWwoYS54LCBiLngp
ICYmIGFyZUZsb2F0c0VxdWFsKGEueSwgYi55KTsKLX0KLQotdm9pZCBtYWluKCkKLXsKLSAgICBn
bF9GcmFnQ29sb3IgPSBhcmVWZWN0b3JzRXF1YWwodV90ZXh0dXJlU2l6ZSwgdmVjMigxMDAuMCwg
MTAwLjApKSA/IHZlYzQoMC4wLCAxLjAsIDAuMCwgMS4wKSA6IHZlYzQoMS4wLCAwLjAsIDAuMCwg
MS4wKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
dS10aWxlLXNpemUuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3UtdGls
ZS1zaXplLmZzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5MzVlMzQwLi4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdS10aWxlLXNpemUuZnMK
KysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vLyBUZXN0IHdoZXRoZXIgdV90aWxlU2l6
ZSBpcyBjb3JyZWN0bHkgc2V0OyBjaGFuZ2UgZnJhZ21lbnQgY29sb3IgdG8gZ3JlZW4gaWYgeWVz
LgotcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7Ci11bmlmb3JtIHZlYzIgdV90aWxlU2l6ZTsKLQot
Ym9vbCBhcmVGbG9hdHNFcXVhbChmbG9hdCBhLCBmbG9hdCBiKQotewotICAgIGNvbnN0IGZsb2F0
IGVwc2lsb24gPSAwLjAwMTsKLSAgICByZXR1cm4gKGEgPiAoYiAtIGVwc2lsb24pKSAmJiAoYSA8
IChiICsgZXBzaWxvbikpOwotfQotCi1ib29sIGFyZVZlY3RvcnNFcXVhbCh2ZWMyIGEsIHZlYzIg
YikKLXsKLSAgICByZXR1cm4gYXJlRmxvYXRzRXF1YWwoYS54LCBiLngpICYmIGFyZUZsb2F0c0Vx
dWFsKGEueSwgYi55KTsKLX0KLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9GcmFnQ29sb3IgPSBh
cmVWZWN0b3JzRXF1YWwodV90aWxlU2l6ZSwgdmVjMigxLjAgLyAxMC4wLCAxLjAgLyAyMC4wKSkg
PyB2ZWM0KDAuMCwgMS4wLCAwLjAsIDEuMCkgOiB2ZWM0KDEuMCwgMC4wLCAwLjAsIDEuMCk7Ci19
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3VuYXZhaWxh
YmxlLXZhcnlpbmcuZnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3VuYXZh
aWxhYmxlLXZhcnlpbmcuZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg3NThlM2Mu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy91bmF2YWls
YWJsZS12YXJ5aW5nLmZzCisrKyAvZGV2L251bGwKQEAgLTEsOCArMCwwIEBACi1wcmVjaXNpb24g
bWVkaXVtcCBmbG9hdDsKLXZhcnlpbmcgdmVjNCB1bmF2YWlsYWJsZTsKLQotdm9pZCBtYWluICgp
Ci17Ci0gICAgY3NzX01peENvbG9yID0gdW5hdmFpbGFibGU7Ci19Ci0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmFyeWluZy1taXgtY29sb3IuZnMgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZhcnlpbmctbWl4LWNvbG9yLmZzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmYWJjMTQ1Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmFyeWluZy1taXgtY29sb3IuZnMKKysrIC9k
ZXYvbnVsbApAQCAtMSw4ICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi12YXJ5
aW5nIHZlYzQgdl9taXhDb2xvcjsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBjc3NfTWl4Q29sb3Ig
PSB2X21peENvbG9yOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy92ZXJ0ZXgtZXhwbG9kZS1kZXRhY2hlZC52cyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9yZXNvdXJjZXMvdmVydGV4LWV4cGxvZGUtZGV0YWNoZWQudnMKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDE3ZWRlZGQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtZXhwbG9kZS1kZXRhY2hlZC52cworKysgL2Rldi9udWxs
CkBAIC0xLDE2ICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUg
dmVjNCBhX3Bvc2l0aW9uOwotYXR0cmlidXRlIHZlYzIgYV90ZXhDb29yZDsKLWF0dHJpYnV0ZSB2
ZWMzIGFfdHJpYW5nbGVDb29yZDsKLQotdW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJpeDsK
LXZhcnlpbmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQotewotICAgIC8vIGFfdHJp
YW5nbGVDb29yZC54eSBpcyB0aGUgcG9zaXRpb24gb2YgdGhlIHRpbGUgaW4gdGhlIG1lc2gsIHNv
IHdlIG9mZnNldCB0aGUgdmVydGljZXMKLSAgICAvLyB3aXRoIHRoZSBwb3NpdGlvbiBpbiBtZXNo
LiBUaGUgdGlsZXMgc2hvdWxkIGJlIGRldGFjaGVkIGZyb20gZWFjaCBvdGhlci4KLSAgICBnbF9Q
b3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIChhX3Bvc2l0aW9uICsgdmVjNChhX3RyaWFu
Z2xlQ29vcmQueCAvIDQuMCwgYV90cmlhbmdsZUNvb3JkLnkgLyA0LjAsIDAuMCwgMC4wKSk7Ci0g
ICAgdl90ZXhDb29yZCA9IGFfdGV4Q29vcmQ7Ci19CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1ob3Jpem9udGFsLW9mZnNldC52cyBiL0xheW91
dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LWhvcml6b250YWwtb2Zmc2V0LnZz
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZjBkYWIwLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LWhvcml6b250YWwtb2Zmc2V0
LnZzCisrKyAvZGV2L251bGwKQEAgLTEsMTUgKzAsMCBAQAotcHJlY2lzaW9uIG1lZGl1bXAgZmxv
YXQ7Ci0KLWF0dHJpYnV0ZSB2ZWM0IGFfcG9zaXRpb247Ci1hdHRyaWJ1dGUgdmVjMiBhX3RleENv
b3JkOwotCi11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0cml4OwotdW5pZm9ybSBmbG9hdCBv
ZmZzZXQ7Ci0KLXZhcnlpbmcgdmVjMiB2X3RleENvb3JkOwotCi12b2lkIG1haW4oKQotewotICAg
IGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogKGFfcG9zaXRpb24gKyB2ZWM0KDAu
MCwgb2Zmc2V0LCAwLjAsIDAuMCkpOwotICAgIHZfdGV4Q29vcmQgPSBhX3RleENvb3JkOwotfQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtb2Zm
c2V0LXBhcmFtZXRlcnMudnMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3Zl
cnRleC1vZmZzZXQtcGFyYW1ldGVycy52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
NDFiMWIwYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2Vz
L3ZlcnRleC1vZmZzZXQtcGFyYW1ldGVycy52cworKysgL2Rldi9udWxsCkBAIC0xLDYxICswLDAg
QEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9u
OwotYXR0cmlidXRlIHZlYzIgYV90ZXhDb29yZDsKLQotdW5pZm9ybSBmbG9hdCBwZXJzcGVjdGl2
ZTsKLXVuaWZvcm0gdmVjMiB2ZXJ0ZXhfb2Zmc2V0OwotdW5pZm9ybSB2ZWMzIHJvdGF0ZTsKLQot
dW5pZm9ybSBtYXQ0IHVfcHJvamVjdGlvbk1hdHJpeDsKLXZhcnlpbmcgdmVjMiB2X3RleENvb3Jk
OwotCi1jb25zdCBmbG9hdCBNX1BJID0gMy4xNDE1OTI2NTsKLQotbWF0NCBwZXJzcGVjdGl2ZU1h
dHJpeChmbG9hdCBwKSB7Ci0gICAgcmV0dXJuIG1hdDQoMS4wLCAwLjAsIDAuMCwgMC4wLAotICAg
ICAgICAgICAgICAgIDAuMCwgMS4wLCAwLjAsIDAuMCwKLSAgICAgICAgICAgICAgICAwLjAsIDAu
MCwgMS4wLCAtIDEuMCAvIHAsCi0gICAgICAgICAgICAgICAgMC4wLCAwLjAsIDAuMCwgMS4wKTsK
LX0KLQotbWF0NCB0cmFuc2xhdGVNYXRyaXgodmVjMiB0KSB7Ci0gICAgcmV0dXJuIG1hdDQoMS4w
LCAwLjAsIDAuMCwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMS4wLCAwLjAsIDAuMCwKLSAg
ICAgICAgICAgICAgICAwLjAsIDAuMCwgMS4wLCAwLjAsCi0gICAgICAgICAgICAgICAgdC54LCB0
LnksIDAuMCwgMS4wKTsKLX0KLQotbWF0NCByb3RhdGVYTWF0cml4KGZsb2F0IGYpIHsKLSAgICBy
ZXR1cm4gbWF0NCgxLjAsIDAuMCwgMC4wLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCBjb3Mo
ZiksIHNpbihmKSwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgLXNpbihmKSwgY29zKGYpLCAw
LjAsCi0gICAgICAgICAgICAgICAgMC4wLCAwLjAsIDAuMCwgMS4wKTsKLX0KLQotbWF0NCByb3Rh
dGVZTWF0cml4KGZsb2F0IGYpIHsKLSAgICByZXR1cm4gbWF0NChjb3MoZiksIDAuMCwgLXNpbihm
KSwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMS4wLCAwLjAsIDAuMCwKLSAgICAgICAgICAg
ICAgICBzaW4oZiksIDAsIGNvcyhmKSwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAw
LjAsIDEuMCk7Ci19Ci0KLW1hdDQgcm90YXRlWk1hdHJpeChmbG9hdCBmKSB7Ci0gICAgcmV0dXJu
IG1hdDQoY29zKGYpLCBzaW4oZiksIDAuMCwgMC4wLAotICAgICAgICAgICAgICAgIC1zaW4oZiks
IGNvcyhmKSwgMC4wLCAwLjAsCi0gICAgICAgICAgICAgICAgMC4wLCAwLjAsIDEuMCwgMC4wLAot
ICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAwLjAsIDEuMCk7Ci19Ci0KLW1hdDQgcm90YXRlTWF0
cml4KHZlYzMgYSkgewotICAgIHJldHVybiByb3RhdGVYTWF0cml4KGEueCkgKiByb3RhdGVZTWF0
cml4KGEueSkgKiByb3RhdGVaTWF0cml4KGEueik7Ci19Ci0KLXZvaWQgbWFpbigpCi17Ci0gICAg
Ly8gVXNlIHRoZSB2YWx1ZXMgZnJvbSBDU1MgdG8gY2hhbmdlIHRoZSBwZXJzcGVjdGl2ZSwgdHJh
bnNsYXRlIGFuZCByb3RhdGUgdGhlIHN1cmZhY2UuIFRoaXMgd2F5IHdlIGNhbiB0ZXN0Ci0gICAg
Ly8gZmxvYXQsIHZlYzIgYW5kIHZlYzMuIE5vdGUgdGhhdCB2ZWM0IGlzIHRlc3RlZCBpbiB0aGUg
ZnJhZ21lbnQgc2hhZGVyIHZlcnRleC1vZmZzZXQtcGFyYW1ldGVycy5mcy4KLSAgICBnbF9Qb3Np
dGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIHBlcnNwZWN0aXZlTWF0cml4KHBlcnNwZWN0aXZl
KSAqIHRyYW5zbGF0ZU1hdHJpeCh2ZXJ0ZXhfb2Zmc2V0KSAqIHJvdGF0ZU1hdHJpeChyb3RhdGUg
KiBNX1BJIC8gMTgwLjApICogYV9wb3NpdGlvbjsKLSAgICAKLSAgICB2X3RleENvb3JkID0gYV90
ZXhDb29yZDsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJj
ZXMvdmVydGV4LW9mZnNldC52cyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9yZXNvdXJjZXMv
dmVydGV4LW9mZnNldC52cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTkxZGI3ZC4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvcmVzb3VyY2VzL3ZlcnRleC1v
ZmZzZXQudnMKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi1wcmVjaXNpb24gbWVkaXVt
cCBmbG9hdDsKLQotYXR0cmlidXRlIHZlYzQgYV9wb3NpdGlvbjsKLWF0dHJpYnV0ZSB2ZWMyIGFf
dGV4Q29vcmQ7Ci0KLXVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7Ci12YXJ5aW5nIHZl
YzIgdl90ZXhDb29yZDsKLQotdm9pZCBtYWluKCkKLXsKLSAgICAvLyBPZmZzZXQgdGhlIHBvc2l0
aW9uIG9mIHRoZSB2ZXJ0aWNlcyB3aXRoIDAuMSBpbiB0aGUgWCBheGlzLgotICAgIGdsX1Bvc2l0
aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogKGFfcG9zaXRpb24gKyB2ZWM0KDAuMSwgMC4wLCAw
LjAsIDAuMCkpOwotICAgIHZfdGV4Q29vcmQgPSBhX3RleENvb3JkOwotfQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzIGIvTGF5
b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtcm90YXRlLnZzCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlMjMyZjkzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2NzczMvZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LXJvdGF0ZS52cworKysgL2Rldi9udWxsCkBA
IC0xLDIyICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1hdHRyaWJ1dGUgdmVj
NCBhX3Bvc2l0aW9uOwotYXR0cmlidXRlIHZlYzIgYV90ZXhDb29yZDsKLQotdW5pZm9ybSBtYXQ0
IHVfcHJvamVjdGlvbk1hdHJpeDsKLXVuaWZvcm0gZmxvYXQgcm90YXRlQnk7Ci0KLXZhcnlpbmcg
dmVjMiB2X3RleENvb3JkOwotCi1tYXQ0IHJvdGF0ZVpNYXRyaXgoZmxvYXQgZikgewotICAgIHJl
dHVybiBtYXQ0KGNvcyhmKSwgc2luKGYpLCAwLjAsIDAuMCwKLSAgICAgICAgICAgICAgICAtc2lu
KGYpLCBjb3MoZiksIDAuMCwgMC4wLAotICAgICAgICAgICAgICAgIDAuMCwgMC4wLCAxLjAsIDAu
MCwKLSAgICAgICAgICAgICAgICAwLjAsIDAuMCwgMC4wLCAxLjApOwotfQotCi12b2lkIG1haW4o
KQotewotICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogcm90YXRlWk1hdHJp
eChyb3RhdGVCeSAqIDMuMTQgLyAxODAuMCkgKiBhX3Bvc2l0aW9uOwotICAgIHZfdGV4Q29vcmQg
PSBhX3RleENvb3JkOwotfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Jl
c291cmNlcy92ZXJ0ZXgtdHJhbnNmb3JtLXBhcmFtZXRlci52cyBiL0xheW91dFRlc3RzL2NzczMv
ZmlsdGVycy9yZXNvdXJjZXMvdmVydGV4LXRyYW5zZm9ybS1wYXJhbWV0ZXIudnMKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI4YzE2YTYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3Jlc291cmNlcy92ZXJ0ZXgtdHJhbnNmb3JtLXBhcmFtZXRlci52cworKysg
L2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLXByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OwotCi1h
dHRyaWJ1dGUgdmVjNCBhX3Bvc2l0aW9uOwotCi11bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uTWF0
cml4OwotdW5pZm9ybSBtYXQ0IHRyYW5zZm9ybTsKLQotdm9pZCBtYWluKCkKLXsKLSAgICBnbF9Q
b3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIHRyYW5zZm9ybSAqIGFfcG9zaXRpb247Ci19
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3Rv
bS1maWx0ZXItbWl4LWJpbmRpbmdzLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3Njcmlw
dC10ZXN0cy9jdXN0b20tZmlsdGVyLW1peC1iaW5kaW5ncy5qcwpkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggYTE5MDc4ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItbWl4LWJpbmRpbmdzLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsNTMgKzAsMCBAQAotZGVzY3JpcHRpb24oIlRlc3QgbWl4KCkgZnVuY3Rpb24gSlMg
YmluZGluZ3MuIik7Ci0KLWZ1bmN0aW9uIGpzV3JhcHBlckNsYXNzKG5vZGUpIHsKLSAgICBpZiAo
IW5vZGUpCi0gICAgICAgIHJldHVybiAiW251bGxdIjsKLSAgICB2YXIgc3RyaW5nID0gT2JqZWN0
LnByb3RvdHlwZS50b1N0cmluZy5hcHBseShub2RlKTsKLSAgICByZXR1cm4gc3RyaW5nLnN1YnN0
cig4LCBzdHJpbmcubGVuZ3RoIC0gOSk7Ci19Ci0KLWZ1bmN0aW9uIHNob3VsZEJlVHlwZShleHBy
ZXNzaW9uLCBjbGFzc05hbWUsIHByb3RvdHlwZU5hbWUsIGNvbnN0cnVjdG9yTmFtZSkgewotICAg
IGlmICghcHJvdG90eXBlTmFtZSkKLSAgICAgICAgcHJvdG90eXBlTmFtZSA9IGNsYXNzTmFtZSAr
ICJQcm90b3R5cGUiOwotICAgIGlmICghY29uc3RydWN0b3JOYW1lKQotICAgICAgICBjb25zdHJ1
Y3Rvck5hbWUgPSBjbGFzc05hbWUgKyAiQ29uc3RydWN0b3IiOwotICAgIHNob3VsZEJlKCJqc1dy
YXBwZXJDbGFzcygiICsgZXhwcmVzc2lvbiArICIpIiwgIiciICsgY2xhc3NOYW1lICsgIiciKTsK
LSAgICBzaG91bGRCZSgianNXcmFwcGVyQ2xhc3MoIiArIGV4cHJlc3Npb24gKyAiLl9fcHJvdG9f
XykiLCAiJyIgKyBwcm90b3R5cGVOYW1lICsgIiciKTsKLSAgICBzaG91bGRCZSgianNXcmFwcGVy
Q2xhc3MoIiArIGV4cHJlc3Npb24gKyAiLmNvbnN0cnVjdG9yKSIsICInIiArIGNvbnN0cnVjdG9y
TmFtZSArICInIik7Ci19Ci0KLWZ1bmN0aW9uIHJlbW92ZUJhc2VVUkwoc3JjKSB7Ci0gICAgdmFy
IHVybFJlZ2V4cCA9IC91cmxcKChbXlwpXSopXCkvZzsKLSAgICByZXR1cm4gc3JjLnJlcGxhY2Uo
dXJsUmVnZXhwLCBmdW5jdGlvbihtYXRjaCwgdXJsKSB7Ci0gICAgICAgIHJldHVybiAidXJsKCIg
KyB1cmwuc3Vic3RyKHVybC5sYXN0SW5kZXhPZigiLyIpICsgMSkgKyAiKSI7Ci0gICAgfSk7Ci19
Ci0KLWlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAg
d2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQi
LCAiMSIpOwotfQotCi12YXIgc3R5bGVFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
c3R5bGUiKTsKLWRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoc3R5bGVFbGVtZW50KTsKLXZhciBz
dHlsZXNoZWV0ID0gc3R5bGVFbGVtZW50LnNoZWV0OwotCi1zdHlsZXNoZWV0LmFkZFJ1bGUoImJv
ZHkiLCAiLXdlYmtpdC1maWx0ZXI6IGN1c3RvbShub25lIG1peCh1cmwoJy4uL3Jlc291cmNlcy9j
b2xvci1vZmZzZXQuZnMnKSkpIiwgMCk7Ci0KLXZhciBjc3NSdWxlID0gc3R5bGVzaGVldC5jc3NS
dWxlcy5pdGVtKDApOwotCi1zaG91bGRCZSgiY3NzUnVsZS50eXBlIiwgIjEiKTsKLQotdmFyIGRl
Y2xhcmF0aW9uID0gY3NzUnVsZS5zdHlsZTsKLXNob3VsZEJlKCJkZWNsYXJhdGlvbi5sZW5ndGgi
LCAiMSIpOwotCi12YXIgZmlsdGVyUnVsZSA9IGRlY2xhcmF0aW9uLmdldFByb3BlcnR5Q1NTVmFs
dWUoJy13ZWJraXQtZmlsdGVyJyk7Ci12YXIgbWl4RnVuY3Rpb24gPSBmaWx0ZXJSdWxlWzBdWzBd
WzFdOwotc2hvdWxkQmVUeXBlKCJtaXhGdW5jdGlvbiIsICJXZWJLaXRDU1NNaXhGdW5jdGlvblZh
bHVlIik7Ci0KLXZhciBtaXhGdW5jdGlvbkNvbnRlbnQgPSByZW1vdmVCYXNlVVJMKG1peEZ1bmN0
aW9uLmNzc1RleHQpOwotCi1zaG91bGRCZUVxdWFsVG9TdHJpbmcoIm1peEZ1bmN0aW9uQ29udGVu
dCIsICJtaXgodXJsKGNvbG9yLW9mZnNldC5mcykpIik7Ci0KLXN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3Rz
L2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcGFyc2luZy1jb21tb24uanMKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGEyMjFmMGMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
Y3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXBhcnNpbmctY29tbW9uLmpz
CisrKyAvZGV2L251bGwKQEAgLTEsNTcgKzAsMCBAQAotLy8gSGVscGVyIGZ1bmN0aW9ucy4KLQot
ZnVuY3Rpb24gaGVhZGluZyhzdHJpbmcpCi17Ci0gICAgZGVidWcoIiIpOwotICAgIGRlYnVnKCI9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Iik7Ci0gICAgZGVidWcoc3Ry
aW5nKTsKLSAgICBkZWJ1ZygiPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PSIpOwotfQotCi1mdW5jdGlvbiBqc1dyYXBwZXJDbGFzcyhub2RlKQotewotICAgIGlmICghbm9k
ZSkKLSAgICAgICAgcmV0dXJuICJbbnVsbF0iOwotICAgIHZhciBzdHJpbmcgPSBPYmplY3QucHJv
dG90eXBlLnRvU3RyaW5nLmFwcGx5KG5vZGUpOwotICAgIHJldHVybiBzdHJpbmcuc3Vic3RyKDgs
IHN0cmluZy5sZW5ndGggLSA5KTsKLX0KLQotLy8gRklYTUU6IFRoaXMgdHlwZS1jaGVja2luZyBh
cHByb2FjaCBmYWlscyBvbiBWOCwgd2hpY2ggcmVxdWlyZXMgdXMgdG8gaGF2ZSBDaHJvbWl1bS1z
cGVjaWZpYyBleHBlY3RhdGlvbnMuCi0vLyBXZSBzaG91bGQgdXNlIHRoZSBzaG91bGRIYXZlQ29u
c3RydWN0b3IgZnVuY3Rpb24gaW5zdGVhZCwgd2hpY2ggd29ya3MgcmVnYXJkbGVzcyBvZiBKUyBl
bmdpbmUuCi1mdW5jdGlvbiBzaG91bGRCZVR5cGUoZXhwcmVzc2lvbiwgY2xhc3NOYW1lLCBwcm90
b3R5cGVOYW1lLCBjb25zdHJ1Y3Rvck5hbWUpCi17Ci0gICAgaWYgKCFwcm90b3R5cGVOYW1lKQot
ICAgICAgICBwcm90b3R5cGVOYW1lID0gY2xhc3NOYW1lICsgIlByb3RvdHlwZSI7Ci0gICAgaWYg
KCFjb25zdHJ1Y3Rvck5hbWUpCi0gICAgICAgIGNvbnN0cnVjdG9yTmFtZSA9IGNsYXNzTmFtZSAr
ICJDb25zdHJ1Y3RvciI7Ci0gICAgc2hvdWxkQmUoImpzV3JhcHBlckNsYXNzKCIgKyBleHByZXNz
aW9uICsgIikiLCAiJyIgKyBjbGFzc05hbWUgKyAiJyIpOwotICAgIHNob3VsZEJlKCJqc1dyYXBw
ZXJDbGFzcygiICsgZXhwcmVzc2lvbiArICIuX19wcm90b19fKSIsICInIiArIHByb3RvdHlwZU5h
bWUgKyAiJyIpOwotICAgIHNob3VsZEJlKCJqc1dyYXBwZXJDbGFzcygiICsgZXhwcmVzc2lvbiAr
ICIuY29uc3RydWN0b3IpIiwgIiciICsgY29uc3RydWN0b3JOYW1lICsgIiciKTsKLX0KLQotZnVu
Y3Rpb24gc2hvdWxkSGF2ZUNvbnN0cnVjdG9yKGV4cHJlc3Npb24sIGNvbnN0cnVjdG9yTmFtZSkK
LXsKLSAgICBzaG91bGRCZVRydWUoZXhwcmVzc2lvbiArICIgaW5zdGFuY2VvZiAiICsgY29uc3Ry
dWN0b3JOYW1lKTsKLSAgICBzaG91bGRCZVRydWUoZXhwcmVzc2lvbiArICIuY29uc3RydWN0b3Ig
PT09ICIgKyBjb25zdHJ1Y3Rvck5hbWUpOwotICAgIHNob3VsZEJlVHJ1ZShleHByZXNzaW9uICsg
Ii5fX3Byb3RvX18gPT09ICIgKyBjb25zdHJ1Y3Rvck5hbWUgKyAiLnByb3RvdHlwZSIpOwotfQot
Ci0vLyBOZWVkIHRvIHJlbW92ZSB0aGUgYmFzZSBVUkwgdG8gYXZvaWQgaGF2aW5nIGxvY2FsIHBh
dGhzIGluIHRoZSBleHBlY3RlZCByZXN1bHRzLgotZnVuY3Rpb24gcmVtb3ZlQmFzZVVSTChzcmMp
IAotewotICAgIHZhciB1cmxSZWdleHAgPSAvdXJsXCgoW15cKV0qKVwpL2c7Ci0gICAgcmV0dXJu
IHNyYy5yZXBsYWNlKHVybFJlZ2V4cCwgZnVuY3Rpb24obWF0Y2gsIHVybCkgewotICAgICAgICBy
ZXR1cm4gInVybCgiICsgdXJsLnN1YnN0cih1cmwubGFzdEluZGV4T2YoIi8iKSArIDEpICsgIiki
OwotICAgIH0pOwotfQotCi0vLyBDb21tb24gc2V0dXAgZm9yIHBhcnNpbmcgdGVzdHMuCi0KLWlm
ICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgIHdpbmRvdy50ZXN0UnVubmVyLm92ZXJyaWRlUHJl
ZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7Ci0gICAgd2luZG93
LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIp
OwotfQotCi12YXIgc3R5bGVFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUi
KTsKLWRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoc3R5bGVFbGVtZW50KTsKLXZhciBzdHlsZXNo
ZWV0ID0gc3R5bGVFbGVtZW50LnNoZWV0OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9m
aWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVyLXByb3BlcnR5LWNvbXB1dGVkLXN0eWxl
LmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9jdXN0b20tZmlsdGVy
LXByb3BlcnR5LWNvbXB1dGVkLXN0eWxlLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBmYWUzMGM2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9zY3JpcHQt
dGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1jb21wdXRlZC1zdHlsZS5qcworKysgL2Rldi9u
dWxsCkBAIC0xLDE5NyArMCwwIEBACi1kZXNjcmlwdGlvbigiVGVzdHMgdGhlIGNvbXB1dGVkIHN0
eWxlIG9mIHRoZSBjdXN0b20oKSBmdW5jdGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0ZXIgcHJvcGVy
dHkuIik7Ci0KLWlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgIHdpbmRvdy50ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIsICIxIik7
Ci0gICAgd2luZG93LnRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVu
YWJsZWQiLCAiMSIpOwotfQotCi1mdW5jdGlvbiBqc1dyYXBwZXJDbGFzcyhub2RlKQotewotICAg
IGlmICghbm9kZSkKLSAgICAgICAgcmV0dXJuICJbbnVsbF0iOwotICAgIHZhciBzdHJpbmcgPSBP
YmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmFwcGx5KG5vZGUpOwotICAgIHJldHVybiBzdHJpbmcu
c3Vic3RyKDgsIHN0cmluZy5sZW5ndGggLSA5KTsKLX0KLQotLy8gTmVlZCB0byByZW1vdmUgdGhl
IGJhc2UgVVJMIHRvIGF2b2lkIGhhdmluZyBsb2NhbCBwYXRocyBpbiB0aGUgZXhwZWN0ZWQgcmVz
dWx0cy4KLWZ1bmN0aW9uIHJlbW92ZUJhc2VVUkwoc3JjKSB7Ci0gICAgdmFyIHVybFJlZ2V4cCA9
IC91cmxcKChbXlwpXSopXCkvZzsKLSAgICByZXR1cm4gc3JjLnJlcGxhY2UodXJsUmVnZXhwLCBm
dW5jdGlvbihtYXRjaCwgdXJsKSB7Ci0gICAgICAgIHJldHVybiAidXJsKCIgKyB1cmwuc3Vic3Ry
KHVybC5sYXN0SW5kZXhPZigiLyIpICsgMSkgKyAiKSI7Ci0gICAgfSk7Ci19Ci0KLWZ1bmN0aW9u
IHNob3VsZEJlVHlwZShleHByZXNzaW9uLCBjbGFzc05hbWUsIHByb3RvdHlwZU5hbWUsIGNvbnN0
cnVjdG9yTmFtZSkKLXsKLSAgICBpZiAoIXByb3RvdHlwZU5hbWUpCi0gICAgICAgIHByb3RvdHlw
ZU5hbWUgPSBjbGFzc05hbWUgKyAiUHJvdG90eXBlIjsKLSAgICBpZiAoIWNvbnN0cnVjdG9yTmFt
ZSkKLSAgICAgICAgY29uc3RydWN0b3JOYW1lID0gY2xhc3NOYW1lICsgIkNvbnN0cnVjdG9yIjsK
LSAgICBzaG91bGRCZSgianNXcmFwcGVyQ2xhc3MoIiArIGV4cHJlc3Npb24gKyAiKSIsICInIiAr
IGNsYXNzTmFtZSArICInIik7Ci0gICAgc2hvdWxkQmUoImpzV3JhcHBlckNsYXNzKCIgKyBleHBy
ZXNzaW9uICsgIi5fX3Byb3RvX18pIiwgIiciICsgcHJvdG90eXBlTmFtZSArICInIik7Ci0gICAg
c2hvdWxkQmUoImpzV3JhcHBlckNsYXNzKCIgKyBleHByZXNzaW9uICsgIi5jb25zdHJ1Y3Rvciki
LCAiJyIgKyBjb25zdHJ1Y3Rvck5hbWUgKyAiJyIpOwotfQotCi0vLyBUaGVzZSBoYXZlIHRvIGJl
IGdsb2JhbCBmb3IgdGhlIHRlc3QgaGVscGVycyB0byBzZWUgdGhlbS4KLXZhciBzdHlsZXNoZWV0
LCBjc3NSdWxlLCBkZWNsYXJhdGlvbiwgZmlsdGVyUnVsZSwgc3ViUnVsZTsKLXZhciBzdHlsZUVs
ZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpOwotZG9jdW1lbnQuaGVhZC5h
cHBlbmRDaGlsZChzdHlsZUVsZW1lbnQpOwotc3R5bGVzaGVldCA9IHN0eWxlRWxlbWVudC5zaGVl
dDsKLQotLy8gV2UgbmVlZCBhIGZpeGVkIHdpZHRoL2hlaWdodCBmb3IgdGhlIG9iamVjdC4KLXZh
ciBvYmplY3RUb0NoZWNrID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci1vYmplY3RU
b0NoZWNrLmNsYXNzTmFtZSA9ICJvYmplY3RUb0NoZWNrIjsKLW9iamVjdFRvQ2hlY2suc3R5bGUu
d2lkdGggPSAiNTAwcHgiOwotb2JqZWN0VG9DaGVjay5zdHlsZS5oZWlnaHQgPSAiNjAwcHgiOwot
ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChvYmplY3RUb0NoZWNrKTsKLQotZnVuY3Rpb24gdGVz
dEZpbHRlclJ1bGUoZGVzY3JpcHRpb24sIHJ1bGUsIGV4cGVjdGVkVmFsdWUsIGV4cGVjdGVkVHlw
ZXMsIGV4cGVjdGVkVGV4dHMpCi17Ci0gICAgZGVidWcoIiIpOwotICAgIGRlYnVnKGRlc2NyaXB0
aW9uICsgIiA6ICIgKyBydWxlKTsKLQotICAgIHN0eWxlc2hlZXQuaW5zZXJ0UnVsZSgiLm9iamVj
dFRvQ2hlY2sgeyAtd2Via2l0LWZpbHRlcjogIiArIHJ1bGUgKyAiOyB9IiwgMCk7Ci0KLSAgICBm
aWx0ZXJTdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKG9iamVjdFRvQ2hlY2spOwotICAg
IAotICAgIHNob3VsZEJlKCJyZW1vdmVCYXNlVVJMKGZpbHRlclN0eWxlLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykpIiwgIiciICsgZXhwZWN0ZWRWYWx1ZSArICInIik7Ci0KLSAg
ICBmaWx0ZXJSdWxlID0gZmlsdGVyU3R5bGUuZ2V0UHJvcGVydHlDU1NWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKTsKLSAgICBzaG91bGRCZVR5cGUoImZpbHRlclJ1bGUiLCAiQ1NTVmFsdWVMaXN0Iik7
Ci0KLSAgICBpZiAoIWV4cGVjdGVkVHlwZXMpIHsKLSAgICAgICAgZXhwZWN0ZWRUeXBlcyA9IFsi
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00iXTsKLSAgICAgICAgZXhwZWN0
ZWRUZXh0cyA9IFtleHBlY3RlZFZhbHVlXTsKLSAgICB9Ci0gICAgCi0gICAgc2hvdWxkQmUoImZp
bHRlclJ1bGUubGVuZ3RoIiwgIiIgKyBleHBlY3RlZFR5cGVzLmxlbmd0aCk7IC8vIHNob3VsZEJl
IGV4cGVjdHMgc3RyaW5nIGFyZ3VtZW50cwotICAKLSAgICBpZiAoZmlsdGVyUnVsZSkgewotICAg
ICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGV4cGVjdGVkVHlwZXMubGVuZ3RoOyBpKyspIHsKLSAg
ICAgICAgICAgIHN1YlJ1bGUgPSBmaWx0ZXJSdWxlW2ldOwotICAgICAgICAgICAgc2hvdWxkQmUo
InN1YlJ1bGUub3BlcmF0aW9uVHlwZSIsIGV4cGVjdGVkVHlwZXNbaV0pOwotICAgICAgICAgICAg
c2hvdWxkQmUoInJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSIsICInIiArIGV4cGVjdGVk
VGV4dHNbaV0gKyAiJyIpOwotICAgICAgICB9Ci0gICAgfQotICAgIAotICAgIHN0eWxlc2hlZXQu
ZGVsZXRlUnVsZSgwKTsKLX0KLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIHZlcnRleCBz
aGFkZXIiLAotICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpKSIsICJjdXN0b20odXJsKHZl
cnRleC5zaGFkZXIpIG5vbmUsIDEgMSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRo
IGZyYWdtZW50IHNoYWRlciIsCi0gICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
KSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwotCi10ZXN0Rmls
dGVyUnVsZSgiQ3VzdG9tIHdpdGggYm90aCBzaGFkZXJzIiwKLSAgICAiY3VzdG9tKHVybCh2ZXJ0
ZXguc2hhZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXguc2hh
ZGVyKSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3Vz
dG9tIHdpdGggbWl4IGZ1bmN0aW9uIiwKLSAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVu
dC5zaGFkZXIpKSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG5vcm1h
bCBzb3VyY2UtYXRvcCksIDEgMSkiKTsKLQotdmFyIGJsZW5kTW9kZXMgPSBbIm5vcm1hbCIsICJt
dWx0aXBseSIsICJzY3JlZW4iLCAib3ZlcmxheSIsICJkYXJrZW4iLCAibGlnaHRlbiIsICJjb2xv
ci1kb2RnZSIsCi0gICAgICAgICAgICAgICAgICAiY29sb3ItYnVybiIsICJoYXJkLWxpZ2h0Iiwg
InNvZnQtbGlnaHQiLCAiZGlmZmVyZW5jZSIsICJleGNsdXNpb24iLCAiaHVlIiwKLSAgICAgICAg
ICAgICAgICAgICJzYXR1cmF0aW9uIiwgImNvbG9yIiwgImx1bWlub3NpdHkiXTsKLWZvciAodmFy
IGkgPSAwOyBpIDwgYmxlbmRNb2Rlcy5sZW5ndGg7IGkrKykgewotICAgIHZhciBibGVuZE1vZGUg
PSBibGVuZE1vZGVzW2ldOwotICAgIHRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVu
Y3Rpb24gYW5kIGJsZW5kIG1vZGUgIiArIGJsZW5kTW9kZSwKLSAgICAgICAgImN1c3RvbShub25l
IG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYmxlbmRNb2RlICsgIikpIiwgImN1c3RvbShu
b25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYmxlbmRNb2RlICsgIiBzb3VyY2UtYXRv
cCksIDEgMSkiKTsKLX0KLQotdmFyIGFscGhhQ29tcG9zaXRpbmdNb2RlcyA9IFsiY2xlYXIiLCAi
Y29weSIsICJzb3VyY2Utb3ZlciIsICJkZXN0aW5hdGlvbi1vdmVyIiwgInNvdXJjZS1pbiIsICJk
ZXN0aW5hdGlvbi1pbiIsCi0gICAgICAgICJzb3VyY2Utb3V0IiwgImRlc3RpbmF0aW9uLW91dCIs
ICJzb3VyY2UtYXRvcCIsICJkZXN0aW5hdGlvbi1hdG9wIiwgInhvciJdOwotZm9yICh2YXIgaSA9
IDA7IGkgPCBhbHBoYUNvbXBvc2l0aW5nTW9kZXMubGVuZ3RoOyBpKyspIHsKLSAgICB2YXIgYWxw
aGFDb21wb3NpdGluZ01vZGUgPSBhbHBoYUNvbXBvc2l0aW5nTW9kZXNbaV07Ci0gICAgdGVzdEZp
bHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1peCBmdW5jdGlvbiBhbmQgYWxwaGEgY29tcG9zaXRpbmcg
bW9kZSAiICsgYWxwaGFDb21wb3NpdGluZ01vZGUsCi0gICAgICAgICJjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgIiArIGFscGhhQ29tcG9zaXRpbmdNb2RlICsgIikpIiwgImN1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgIiArIGFscGhhQ29tcG9z
aXRpbmdNb2RlICsgIiksIDEgMSkiKTsKLX0KLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRo
IG1peCBmdW5jdGlvbiBhbmQgYmxlbmQgbW9kZSBmaXJzdCwgYWxwaGEgY29tcG9zaXRpbmcgbW9k
ZSBzZWNvbmQiLAotICAgICJjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbXVs
dGlwbHkgY2xlYXIpKSIsICJjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbXVs
dGlwbHkgY2xlYXIpLCAxIDEpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXgg
ZnVuY3Rpb24gYW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgZmlyc3QsIGJsZW5kIG1vZGUgc2Vj
b25kIiwKLSAgICAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIGNsZWFyIG11
bHRpcGx5KSkiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChmcmFnbWVudC5zaGFkZXIpIG11bHRpcGx5
IGNsZWFyKSwgMSAxKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdmVydGV4IHNo
YWRlciBhbmQgbWl4IGZ1bmN0aW9uIiwKLSAgICAiY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBt
aXgodXJsKGZyYWdtZW50LnNoYWRlcikpKSIsICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpIG1p
eCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBub3JtYWwgc291cmNlLWF0b3ApLCAxIDEpIik7Ci0KLXRl
c3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24gYW5kIG1lc2ggc2l6ZSIsCi0g
ICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSksIDEwKSIsICJjdXN0b20o
bm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgbm9ybWFsIHNvdXJjZS1hdG9wKSwgMTAgMTAp
Iik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtZXNoIHNpemUiLAotICAgICJjdXN0
b20odXJsKHZlcnRleC5zaGFkZXIpLCAxMCkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSBu
b25lLCAxMCAxMCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGJvdGggbWVzaCBz
aXplcyIsCi0gICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCkiLCAi
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKSIpOwotCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggbWVzaCBzaXplIiwKLSAgICAiY3VzdG9tKHVybCh2ZXJ0ZXguc2hh
ZGVyKSwgMTApIiwgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgbm9uZSwgMTAgMTApIik7Ci0K
LXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBib3RoIG1lc2ggc2l6ZXMiLAotICAgICJjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjApIiwgImN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxMCAyMCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRo
IGRldGFjaGVkIG1lc2giLAotICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwg
ZGV0YWNoZWQpIiwgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEgZGV0YWNo
ZWQpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBkZXRhY2hlZCBhbmQgbWVzaCBz
aXplIiwKLSAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwIGRldGFj
aGVkKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQp
Iik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBkZWZhdWx0IGZpbHRlci1ib3giLAot
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiLCAiY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIDEgMSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRo
IGludGVnZXIgcGFyYW1ldGVycyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpIiwKLSAgICAg
ICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSAxLCBwMiAy
IDMsIHAzIDMgNCA1LCBwNCA0IDUgNiA3KSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdp
dGggZmxvYXQgcGFyYW1ldGVycyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1
LjIgNi4zIDcuNCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCAxIDEsIHAxIDEuMSwgcDIgMi4yIDMuMywgcDMgMy4xIDQuMSA1LjEsIHA0IDQuMSA1LjIg
Ni4zIDcuNCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIHRyYW5zZm9ybSB0cmFu
c2xhdGUgcGFyYW1ldGVyIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSwgcDEgdHJhbnNsYXRlKDEwcHgsIDEwcHgpKSIsCi0gICAgICAgICAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDEsIDAsIDAsIDEsIDEw
LCAxMCkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtdWx0aXBsZSB0cmFuc2Zv
cm0gcGFyYW1ldGVycyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNo
YWRlciksIHAxIHRyYW5zbGF0ZSgxMHB4LCAxMHB4KSwgcDIgc2NhbGUoMikpIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBwMSBtYXRyaXgoMSwg
MCwgMCwgMSwgMTAsIDEwKSwgcDIgbWF0cml4KDIsIDAsIDAsIDIsIDAsIDApKSIpOwotCi10ZXN0
RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtcyBzaW5nbGUgcGFyYW1l
dGVyIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEg
dHJhbnNsYXRlKDEwcHgsIDEwcHgpIHNjYWxlKDIpKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDIsIDAsIDAsIDIsIDEwLCAx
MCkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBwZXJjZW50IHRyYW5zZm9ybSBw
YXJhbWV0ZXIiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCBwMSB0cmFuc2xhdGUoNTAlLCA1MCUpKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIDEgMSwgcDEgbWF0cml4KDEsIDAsIDAsIDEsIDI1MCwgMzAwKSki
KTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1lc2ggc2l6ZSBhbmQgbnVtYmVyIHBh
cmFtZXRlcnMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIp
LCAxMCAyMCwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYgNykiLAotICAgICAgICAg
ICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCAyMCwgcDEgMSwgcDIgMiAz
LCBwMyAzIDQgNSwgcDQgNCA1IDYgNykiKTsKLQotdGVzdEZpbHRlclJ1bGUoIk11bHRpcGxlIHdp
dGggZnJhZ21lbnQgc2hhZGVyIiwKLSAgICAiZ3JheXNjYWxlKCkgY3VzdG9tKG5vbmUgdXJsKGZy
YWdtZW50LnNoYWRlcikpIHNlcGlhKCkiLCAiZ3JheXNjYWxlKDEpIGN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCAxIDEpIHNlcGlhKDEpIiwKLSAgICBbIldlYktpdENTU0ZpbHRlclZh
bHVlLkNTU19GSUxURVJfR1JBWVNDQUxFIiwKLSAgICAiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NT
X0ZJTFRFUl9DVVNUT00iLAotICAgICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX1NF
UElBIl0sCi0gICAgWyJncmF5c2NhbGUoMSkiLAotICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMSAxKSIsCi0gICAgInNlcGlhKDEpIl0pOwotCi10ZXN0RmlsdGVyUnVsZSgi
Q3VzdG9tIHdpdGggYXJyYXkoKSBtYWRlIHVwIG9mIHRocmVlIHZhbHVlcyIsCi0gICAgICAgICAg
ICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGExIGFycmF5KDEsIDIsIDMpKSIs
Ci0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSwgYTEg
YXJyYXkoMSwgMiwgMykpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBhcnJheSgp
IG1hZGUgdXAgb2YgdGhyZWUgZmxvYXRpbmcgcG9pbnQgdmFsdWVzIiwKLSAgICAgICAgICAgICJj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgYTEgYXJyYXkoMS42MTgwLCAtMi43MTgy
LCAzLjE0MTUpKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRl
ciksIDEgMSwgYTEgYXJyYXkoMS42MTgsIC0yLjcxODIsIDMuMTQxNSkpIik7Ci0KLXRlc3RGaWx0
ZXJSdWxlKCJDdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2Ygc2V2ZXJhbCBmbG9hdGluZyBw
b2ludCBhbmQgaW50ZWdlciB2YWx1ZXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChm
cmFnbWVudC5zaGFkZXIpLCBhMSBhcnJheSgxLjYxODAsIDEsIC0yLjcxODIsIDAuMSwgMy4xNDE1
KSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxIDEs
IGExIGFycmF5KDEuNjE4LCAxLCAtMi43MTgyLCAwLjEsIDMuMTQxNSkpIik7Ci0KLXRlc3RGaWx0
ZXJSdWxlKCJDdXN0b20gd2l0aCBhcnJheSgpIG1hZGUgdXAgb2YgMjQ3IGRpZmZlcmVudCBmbG9h
dGluZyBwb2ludCB2YWx1ZXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVu
dC5zaGFkZXIpLCBhMSBhcnJheSg2LjAwLCAzOC41OCwgNDAuMTQsIDM0LjAzLCA4My4zMywgMjQu
MTgsIDY4LjM3LCAxNS44NywgNTYuNTYsIDczLjIxLCA5OS4wNSwgMjQuNjQsIDYuMzksIDY5LjM0
LCA5MS4xOSwgMjcuOTgsIDM3LjUyLCA2MC43MSwgMjEuOTQsIDYyLjcwLCA3Ny45NiwgNjcuMjcs
IDIuNzUsIDI4LjE2LCA4Ljg4LCAxMS42MSwgMzQuODksIDQ1Ljc1LCA1NC41NSwgMzUuMDQsIDYu
MTMsIDY5LjY4LCA4MS4yMSwgNDkuNDQsIDU0Ljc0LCAyNi43NCwgOTEuNDksIDY4LjIwLCA4NC4w
NSwgNjUuODEsIDU3Ljg5LCA3My4yMiwgMTMuODcsIDcxLjczLCAxOC42MSwgOC41NCwgOS43OSwg
MjguMDUsIDE0LjExLCA2OS45MywgNDcuMTksIDEwLjQ4LCA4MS4zNSwgMzcuMTUsIDE5LjI5LCAx
NC45OCwgMzIuNTQsIDk4Ljk2LCA2OS4zNywgOTIuMjYsIDM0LjY0LCA2Ny40MywgNzEuOTIsIDQ1
LjUyLCA5LjIyLCA0MS45NiwgMzEuMjYsIDkyLjY1LCAzNS4wMiwgMzkuMDAsIDc2Ljc2LCAyOS4z
MywgMjIuOTMsIDgwLjY1LCA3MC43OCwgNDIuOTQsIDI3LjcyLCAyOC4xOSwgNzUuMTUsIDE4LjE0
LCA4OS43MSwgOTUuMzgsIDU0LjUxLCAzNi45MywgOTguNDUsIDg3LjU4LCA0NC41MSwgNzEuNzMs
IDc1LjcxLCA3MC40MywgNzguNTEsIDgyLjE5LCAzMS43MywgMi45MCwgOC4yMywgOTMuNzQsIDMx
LjI2LCA4NC43MywgNi40OCwgNDEuOTYsIDc1LjcyLCA1My45NiwgMzUuMDYsIDY3LjUwLCA3Ni42
MiwgMzUuMDIsIDEuNjIsIDEzLjA1LCAzMy41OSwgMjYuODksIDM2Ljk0LCA3NC4xMywgOTUuMDks
IDU2Ljg3LCA0Ni4wMSwgMTEuOTQsIDEyLjkyLCA0OC44OCwgMTEuMDMsIDI0LjgwLCA2OC4wNiwg
MTkuODMsIDEyLjk4LCA0MS41NiwgNjIuMDMsIDgwLjM1LCA0MS4xMCwgNS4zMSwgNDMuOTYsIDku
MDIsIDkyLjMyLCAzNC41MCwgODguNDEsIDkwLjM0LCA5Ny42MiwgNTguNzAsIDIzLjYyLCAxMy4w
MywgODUuNDEsIDI5LjczLCAzMC4yMSwgNTkuMjUsIDkxLjIyLCA3OC4yMSwgNjIuMzAsIDYwLjkz
LCAzMy4yNiwgMTYuMTMsIDk1LjYxLCA3OC42MiwgOTcuNDIsIDk2LjQyLCAzOC4wNCwgOC40OSwg
NDUuNDcsIDY4LjczLCAxOC4yMCwgMjYuNjUsIDc4LjM5LCA5NS4yNiwgNjYuODAsIDM0LjQxLCAx
MC42OSwgOTQuNDMsIDcxLjY5LCA0LjU4LCAyMy44NywgNjEuMDEsIDk1LjY4LCA4LjUxLCAxNC45
MiwgMTYuMjcsIDMwLjQxLCAxLjQwLCAxMi4zNSwgOTkuMzksIDUuODAsIDY4LjEwLCA3My44Nywg
MjguMzYsIDI0Ljk4LCA3Ny41OCwgOC43MywgMzQuMDgsIDU0LjQ1LCA4Ny42NCwgMzYuMTQsIDc0
LjY4LCAzOC4wNCwgNTYuNTQsIDQ2LjQyLCAxMi40MCwgNS45MCwgMTUuNzAsIDEwLjg4LCA1NS44
MiwgODQuNjYsIDc1Ljc0LCA4Ny45MiwgNTkuMDMsIDYwLjMwLCA0LjMyLCA3LjA1LCAzLjM0LCA5
Ljg3LCA2NC41MSwgNC42MCwgNTQuMTYsIDQ4LjgwLCA0Ni45MywgNS44NCwgOTAuMzQsIDc1LjQ4
LCAzMi41OSwgMjkuNjUsIDk0LjU3LCAyOC4yMiwgOTMuNzAsIDIzLjc5LCA4OS41NywgMTQuODQs
IDc5LjU4LCA2Mi4yOSwgNTguNzYsIDI5LjQzLCAxOS4xNiwgNDQuNDcsIDM4LjMxLCA0NC43Nywg
NDIuNjYsIDg4Ljg1LCA3NC45NiwgMjQuMDcsIDM3Ljc1LCA0MS42NSwgNjIuMzUsIDkwLjQwLCA0
MC43NywgNTMuOTMsIDgwLjIzLCA4NC40OSwgMjAuMTgsIDQ1LjM2LCAyNi4wMiwgOTMuNzIsIDY1
LjU0LCAzMi44NikpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgMSAxLCBhMSBhcnJheSg2LCAzOC41OCwgNDAuMTQsIDM0LjAzLCA4My4zMywgMjQuMTgs
IDY4LjM3LCAxNS44NywgNTYuNTYsIDczLjIxLCA5OS4wNSwgMjQuNjQsIDYuMzksIDY5LjM0LCA5
MS4xOSwgMjcuOTgsIDM3LjUyLCA2MC43MSwgMjEuOTQsIDYyLjcsIDc3Ljk2LCA2Ny4yNywgMi43
NSwgMjguMTYsIDguODgsIDExLjYxLCAzNC44OSwgNDUuNzUsIDU0LjU1LCAzNS4wNCwgNi4xMywg
NjkuNjgsIDgxLjIxLCA0OS40NCwgNTQuNzQsIDI2Ljc0LCA5MS40OSwgNjguMiwgODQuMDUsIDY1
LjgxLCA1Ny44OSwgNzMuMjIsIDEzLjg3LCA3MS43MywgMTguNjEsIDguNTQsIDkuNzksIDI4LjA1
LCAxNC4xMSwgNjkuOTMsIDQ3LjE5LCAxMC40OCwgODEuMzUsIDM3LjE1LCAxOS4yOSwgMTQuOTgs
IDMyLjU0LCA5OC45NiwgNjkuMzcsIDkyLjI2LCAzNC42NCwgNjcuNDMsIDcxLjkyLCA0NS41Miwg
OS4yMiwgNDEuOTYsIDMxLjI2LCA5Mi42NSwgMzUuMDIsIDM5LCA3Ni43NiwgMjkuMzMsIDIyLjkz
LCA4MC42NSwgNzAuNzgsIDQyLjk0LCAyNy43MiwgMjguMTksIDc1LjE1LCAxOC4xNCwgODkuNzEs
IDk1LjM4LCA1NC41MSwgMzYuOTMsIDk4LjQ1LCA4Ny41OCwgNDQuNTEsIDcxLjczLCA3NS43MSwg
NzAuNDMsIDc4LjUxLCA4Mi4xOSwgMzEuNzMsIDIuOSwgOC4yMywgOTMuNzQsIDMxLjI2LCA4NC43
MywgNi40OCwgNDEuOTYsIDc1LjcyLCA1My45NiwgMzUuMDYsIDY3LjUsIDc2LjYyLCAzNS4wMiwg
MS42MiwgMTMuMDUsIDMzLjU5LCAyNi44OSwgMzYuOTQsIDc0LjEzLCA5NS4wOSwgNTYuODcsIDQ2
LjAxLCAxMS45NCwgMTIuOTIsIDQ4Ljg4LCAxMS4wMywgMjQuOCwgNjguMDYsIDE5LjgzLCAxMi45
OCwgNDEuNTYsIDYyLjAzLCA4MC4zNSwgNDEuMSwgNS4zMSwgNDMuOTYsIDkuMDIsIDkyLjMyLCAz
NC41LCA4OC40MSwgOTAuMzQsIDk3LjYyLCA1OC43LCAyMy42MiwgMTMuMDMsIDg1LjQxLCAyOS43
MywgMzAuMjEsIDU5LjI1LCA5MS4yMiwgNzguMjEsIDYyLjMsIDYwLjkzLCAzMy4yNiwgMTYuMTMs
IDk1LjYxLCA3OC42MiwgOTcuNDIsIDk2LjQyLCAzOC4wNCwgOC40OSwgNDUuNDcsIDY4LjczLCAx
OC4yLCAyNi42NSwgNzguMzksIDk1LjI2LCA2Ni44LCAzNC40MSwgMTAuNjksIDk0LjQzLCA3MS42
OSwgNC41OCwgMjMuODcsIDYxLjAxLCA5NS42OCwgOC41MSwgMTQuOTIsIDE2LjI3LCAzMC40MSwg
MS40LCAxMi4zNSwgOTkuMzksIDUuOCwgNjguMSwgNzMuODcsIDI4LjM2LCAyNC45OCwgNzcuNTgs
IDguNzMsIDM0LjA4LCA1NC40NSwgODcuNjQsIDM2LjE0LCA3NC42OCwgMzguMDQsIDU2LjU0LCA0
Ni40MiwgMTIuNCwgNS45LCAxNS43LCAxMC44OCwgNTUuODIsIDg0LjY2LCA3NS43NCwgODcuOTIs
IDU5LjAzLCA2MC4zLCA0LjMyLCA3LjA1LCAzLjM0LCA5Ljg3LCA2NC41MSwgNC42LCA1NC4xNiwg
NDguOCwgNDYuOTMsIDUuODQsIDkwLjM0LCA3NS40OCwgMzIuNTksIDI5LjY1LCA5NC41NywgMjgu
MjIsIDkzLjcsIDIzLjc5LCA4OS41NywgMTQuODQsIDc5LjU4LCA2Mi4yOSwgNTguNzYsIDI5LjQz
LCAxOS4xNiwgNDQuNDcsIDM4LjMxLCA0NC43NywgNDIuNjYsIDg4Ljg1LCA3NC45NiwgMjQuMDcs
IDM3Ljc1LCA0MS42NSwgNjIuMzUsIDkwLjQsIDQwLjc3LCA1My45MywgODAuMjMsIDg0LjQ5LCAy
MC4xOCwgNDUuMzYsIDI2LjAyLCA5My43MiwgNjUuNTQsIDMyLjg2KSkiKTsKLQotdGVzdEZpbHRl
clJ1bGUoIkN1c3RvbSB3aXRoIHR3byBhcnJheSgpIG1hZGUgdXAgb2YgdGhyZWUgYW5kIHNpeCB2
YWx1ZXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBh
MSBhcnJheSgxLCAyLCAzKSwgYTIgYXJyYXkoMSwgMiwgMywgNCwgNSwgNikpIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxLCBhMSBhcnJheSgxLCAy
LCAzKSwgYTIgYXJyYXkoMSwgMiwgMywgNCwgNSwgNikpIik7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFy
c2luZy1pbnZhbGlkLmpzIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9j
dXN0b20tZmlsdGVyLXByb3BlcnR5LXBhcnNpbmctaW52YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggNWRjODNmNy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2Zp
bHRlcnMvc2NyaXB0LXRlc3RzL2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy1pbnZhbGlk
LmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTA3ICswLDAgQEAKLWRlc2NyaXB0aW9uKCJUZXN0IHRo
ZSBwYXJzaW5nIG9mIGN1c3RvbSgpIGZ1bmN0aW9uIG9mIHRoZSAtd2Via2l0LWZpbHRlciBwcm9w
ZXJ0eS4iKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBl
cnMgdG8gc2VlIHRoZW0uCi12YXIgY3NzUnVsZSwgZGVjbGFyYXRpb247Ci0KLWZ1bmN0aW9uIHRl
c3RJbnZhbGlkRmlsdGVyUnVsZShkZXNjcmlwdGlvbiwgcnVsZSkKLXsKLSAgICBkZWJ1ZygiIik7
Ci0gICAgZGVidWcoZGVzY3JpcHRpb24gKyAiIDogIiArIHJ1bGUpOwotCi0gICAgc3R5bGVzaGVl
dC5pbnNlcnRSdWxlKCJib2R5IHsgLXdlYmtpdC1maWx0ZXI6ICIgKyBydWxlICsgIjsgfSIsIDAp
OwotICAgIGNzc1J1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVzLml0ZW0oMCk7Ci0gIAotICAgIHNo
b3VsZEJlKCJjc3NSdWxlLnR5cGUiLCAiMSIpOwotCi0gICAgZGVjbGFyYXRpb24gPSBjc3NSdWxl
LnN0eWxlOwotICAgIHNob3VsZEJlKCJkZWNsYXJhdGlvbi5sZW5ndGgiLCAiMCIpOwotICAgIHNo
b3VsZEJlKCJkZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWZpbHRlcicpIiwg
Im51bGwiKTsKLX0KLQotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJFbXB0eSBmdW5jdGlvbiIsICJj
dXN0b20oKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyB2YWx1ZXMgMSIsICJjdXN0b20o
LCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gdmFsdWVzIDIiLCAiY3VzdG9tKCwsKSIp
OwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IHNoYWRlcnMgMSIsICJjdXN0b20o
dXJsKHNoYWRlcjEpIHVybChzaGFkZXIyKSB1cmwoc2hhZGVyMikpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIlRvbyBtYW55IHNoYWRlcnMgMiIsICJjdXN0b20obm9uZSBub25lIG5vbmUpIik7
Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IHNoYWRlcnMgMyIsICJjdXN0b20obm9u
ZSB1cmwoc2hhZGVyMSkgdXJsKHNoYWRlcjIpIHVybChzaGFkZXIyKSkiKTsKLQotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24gYXMgdmVydGV4IHNoYWRlciIsICJjdXN0b20obWl4
KHVybChzaGFkZXIpKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdp
dGggd3JvbmcgbmFtZSIsICJjdXN0b20obm9uZSBmbih1cmwoc2hhZGVyKSkpIik7Ci10ZXN0SW52
YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIDAgYXJncyIsICJjdXN0b20obm9uZSBt
aXgoKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggZmlyc3Qg
YXJnIG5vdCBhIFVSSSIsICJjdXN0b20obm9uZSBtaXgobm9uZSkpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIHNlY29uZCBhcmcgbm90IGEgYmxlbmQgbW9kZSBv
ciBhbHBoYSBjb21wb3NpdGluZyBtb2RlIiwgImN1c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSAw
KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdpdGggdGhpcmQgYXJn
IG5vdCBhIGJsZW5kIG1vZGUgb3IgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSIsICJjdXN0b20obm9u
ZSBtaXgodXJsKHNoYWRlcikgbm9ybWFsIDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJN
aXggZnVuY3Rpb24gd2l0aCB0d28gYmxlbmQgbW9kZXMiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChz
aGFkZXIpIG11bHRpcGx5IHNjcmVlbikpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBm
dW5jdGlvbiB3aXRoIHR3byBhbHBoYSBjb21wb3NpdGluZyBtb2RlcyIsICJjdXN0b20obm9uZSBt
aXgodXJsKHNoYWRlcikgc291cmNlLW92ZXIgZGVzdGluYXRpb24tb3ZlcikpIik7Ci10ZXN0SW52
YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlvbiB3aXRoIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUg
J3BsdXMtZGFya2VyJywgd2hpY2ggc2hvdWxkIG9ubHkgYXBwbHkgdG8gLXdlYmtpdC1iYWNrZ3Jv
dW5kLWNvbXBvc2l0ZSIsICJjdXN0b20obm9uZSBtaXgodXJsKHNoYWRlcikgcGx1cy1kYXJrZXIp
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24gd2l0aCBhbHBoYSBjb21w
b3NpdGluZyBtb2RlICdwbHVzLWxpZ2h0ZXInLCB3aGljaCBzaG91bGQgb25seSBhcHBseSB0byAt
d2Via2l0LWJhY2tncm91bmQtY29tcG9zaXRlIiwgImN1c3RvbShub25lIG1peCh1cmwoc2hhZGVy
KSBwbHVzLWxpZ2h0ZXIpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24g
d2l0aCBhbHBoYSBjb21wb3NpdGluZyBtb2RlICdoaWdobGlnaHQnLCB3aGljaCBzaG91bGQgb25s
eSBhcHBseSB0byAtd2Via2l0LWJhY2tncm91bmQtY29tcG9zaXRlIiwgImN1c3RvbShub25lIG1p
eCh1cmwoc2hhZGVyKSBoaWdobGlnaHQpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNaXgg
ZnVuY3Rpb24gd2l0aCA0IGFyZ3MiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpIG11bHRp
cGx5IGNsZWFyIG5vcm1hbCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk1peCBmdW5jdGlv
biB3aXRoIGNvbW1hIHNlcGFyYXRvcnMiLCAiY3VzdG9tKG5vbmUgbWl4KHVybChzaGFkZXIpLCBt
dWx0aXBseSwgY2xlYXIpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNaXggZnVuY3Rpb24g
d2l0aCBjb21tYSB0ZXJtaW5hdG9yIiwgImN1c3RvbShub25lIG1peCh1cmwoc2hhZGVyKSwgbXVs
dGlwbHkgY2xlYXIsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTWl4IGZ1bmN0aW9uIHdp
dGggb25lIGNvbW1hIiwgImN1c3RvbShub25lIG1peCgsKSkiKTsKLQotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJObyBzaGFkZXIiLCAiY3VzdG9tKG5vbmUsIDEwIDIwKSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJUb28gbWFueSBtZXNoIHNpemVzIiwgImN1c3RvbShub25lLCAxMCAyMCAzMCki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiV3JvbmcgbWVzaC1ib3ggdHlwZSAtICdwYWRkaW5n
JyIsICJjdXN0b20odXJsKHNoYWRlciksIHBhZGRpbmcpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1
bGUoIldyb25nIG1lc2gtYm94IHR5cGUgLSAnbm9uZSciLCAiY3VzdG9tKHVybChzaGFkZXIpLCBu
b25lKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNb3JlIG1lc2gtYm94IHR5cGVzIiwgImN1
c3RvbSh1cmwoc2hhZGVyKSwgcGFkZGluZy1ib3ggZmlsdGVyLWJveCkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiV3Jvbmcgb3JkZXIgZm9yIG1lc2gtZGV0YWNoZWQgYW5kIG1lc2gtYm94IHR5
cGUiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBkZXRhY2hlZCBwYWRkaW5nLWJveCkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiV3Jvbmcgb3JkZXIgZm9yIG1lc2ggc2l6ZSBhbmQgbWVzaC1ib3gg
dHlwZSIsICJjdXN0b20odXJsKHNoYWRlciksIHBhZGRpbmctYm94IDEwKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJUb28gbWFueSBtZXNoIHNpemVzIHdpdGggbWVzaC1ib3ggdHlwZSIsICJj
dXN0b20odXJsKHNoYWRlciksIDIwIDMwIDQwIHBhZGRpbmctYm94KSIpOwotdGVzdEludmFsaWRG
aWx0ZXJSdWxlKCJJbnZhbGlkIGNvbW1hIGJldHdlZW4gbWVzaC1zaXplcyIsICJjdXN0b20odXJs
KHNoYWRlciksIDIwLCA0MCBwYWRkaW5nLWJveCkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgi
SW52YWxpZCBjb21tYSBiZWZvcmUgbWVzaCB0eXBlIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwgMjAs
IHBhZGRpbmctYm94KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJObyBtZXNoIHBhcmFtZXRl
ciIsICJjdXN0b20odXJsKHNoYWRlciksICkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiV3Jv
bmcgbWVzaCB0eXBlIC0gY29ycmVjdCBpZGVudGlmaWVyIGlzICdkZXRhY2hlZCciLCAiY3VzdG9t
KHVybChzaGFkZXIpLCBkZXRhY2gpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5vIG1lc2gg
c2l6ZSIsICJjdXN0b20odXJsKHNoYWRlciksICwgcDEgMikiKTsKLQotdGVzdEludmFsaWRGaWx0
ZXJSdWxlKCJOZWdhdGl2ZSBzaW5nbGUgbWVzaCBzaXplIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwg
LTEwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJOZWdhdGl2ZSBib3RoIG1lc2ggc2l6ZXMi
LCAiY3VzdG9tKHVybChzaGFkZXIpLCAtMTAgLTEwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxl
KCJOZWdhdGl2ZSBhbmQgcG9zaXRpdmUgbWVzaCBzaXplIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwg
LTEwIDEwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJaZXJvIHNpbmdsZSBtZXNoIHNpemUi
LCAiY3VzdG9tKHVybChzaGFkZXIpLCAwKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJaZXJv
IGJvdGggbWVzaCBzaXplcyIsICJjdXN0b20odXJsKHNoYWRlciksIDAgMCkiKTsKLXRlc3RJbnZh
bGlkRmlsdGVyUnVsZSgiMCBhbmQgMSBtZXNoIHNpemVzIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwg
MCAxKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlRvbyBtYW55IHBhcmFtZXRlciB2YWx1
ZXMiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBwMSAxIDIgMyA0IDUpIik7Ci10ZXN0SW52YWxpZEZp
bHRlclJ1bGUoIkludmFsaWQgcGFyYW1ldGVyIHR5cGVzIiwgImN1c3RvbSh1cmwoc2hhZGVyKSwg
cDEgMS4wIDIuMCAndGV4dCcpIik7Ci0KLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTm8gcGFyYW1l
dGVyIHZhbHVlIDEiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBwMSkiKTsKLXRlc3RJbnZhbGlkRmls
dGVyUnVsZSgiTm8gcGFyYW1ldGVyIHZhbHVlIDIiLCAiY3VzdG9tKHVybChzaGFkZXIpLCBwMSwg
cDIsIHAzKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk9uZSBpbnZhbGlkIHRyYW5zZm9y
bSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIGludmFsaWRfcm90YXRlKDBkZWcp
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJNdWx0aXBsZSBpbnZhbGlkIHRyYW5zZm9ybXMi
LCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCBpbnZhbGlkX3JvdGF0ZSgwZGVnKSBp
bnZhbGlkX3BlcnNwZWN0aXZlKDApKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlk
IHRyYW5zZm9ybSBiZXR3ZWVuIHZhbGlkIG9uZXMiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciks
IHNvbWVJZCByb3RhdGUoMGRlZykgaW52YWxpZF9yb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSBiZXR3ZWVuIGludmFs
aWQgb25lcyIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgc29tZUlkIGludmFsaWRfcm90YXRl
KDBkZWcpIHBlcnNwZWN0aXZlKDApIGFub3RoZXJfaW52YWxpZCgwKSkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiVmFsaWQgdHJhbnNmb3JtIHdpdGhvdXQgbGVhZGluZyBjb21tYSIsICJjdXN0
b20obm9uZSB1cmwoc2hhZGVyKSBzb21lSWQgcGVyc3BlY3RpdmUoMCkpIik7Ci10ZXN0SW52YWxp
ZEZpbHRlclJ1bGUoIlZhbGlkIHRyYW5zZm9ybSB3aXRoIHRyYWlsaW5nIGNvbW1hIiwgImN1c3Rv
bShub25lIHVybChzaGFkZXIpLCBzb21lSWQgcGVyc3BlY3RpdmUoMCksKSIpOwotdGVzdEludmFs
aWRGaWx0ZXJSdWxlKCJWYWxpZCB0cmFuc2Zvcm0gd2l0aCB0cmFpbGluZyBjb21tYSBhbmQgd2l0
aG91dCBsZWFkaW5nIGNvbW1hIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpIHNvbWVJZCBwZXJz
cGVjdGl2ZSgwKSwpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQgdHJhbnNmb3Jt
IHdpdGggdHJhaWxpbmcgY29tbWEiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIHNvbWVJZCBp
bnZhbGlkX3JvdGF0ZSgwZGVnKSwpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQg
dHJhbnNmb3JtIHdpdGhvdXQgbGVhZGluZyBjb21tYSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVy
KSBzb21lSWQgaW52YWxpZF9yb3RhdGUoMGRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUo
IkVtcHR5IHRyYW5zZm9ybSAob25seSB0aGUgaWQpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIp
LCBzb21lSWQpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkVtcHR5IHRyYW5zZm9ybSAod2l0
aG91dCB0aGUgaWQpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCkiKTsKLXRlc3RJbnZhbGlk
RmlsdGVyUnVsZSgiRW1wdHkgdHJhbnNmb3JtICh0d28gZW1wdHkgY29tbWFzKSIsICJjdXN0b20o
bm9uZSB1cmwoc2hhZGVyKSwsKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJWYWxpZCB0cmFu
c2Zvcm0gd2l0aCBpbnZhbGlkIGNoYXJhY3RlcnMiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciks
c29tZUlkIHJvdGF0ZSgwZGVnKSAqLi0sKSIpOwotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkVt
cHR5IGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KCkpIik7Ci10
ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk9uZSBjb21tYSBpbiBhcnJheSgpIiwgImN1c3RvbShub25l
IHVybChzaGFkZXIpLCBpZCBhcnJheSgsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTXVs
dGlsZSBjb21tYXMgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJy
YXkoLCwsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTXVsdGlwbGUgY29tbWFzIHdpdGgg
YSB2YWx1ZSBpbiBhcnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgs
LDEsKSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiT25lIGNvbW1hIGZvbGxvd2VkIGJ5IGEg
bmVnYXRpdmUgdmFsdWUgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQg
YXJyYXkoLC00KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiT25lIGNvbW1hIGZvbGxvd2Vk
IGJ5IGEgdmFsdWUgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJy
YXkoLDQpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgbmVnYXRpdmUgdmFsdWUgZm9s
bG93ZWQgYnkgYSBjb21tYSBpbiBhcnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBp
ZCBhcnJheSgtNCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJPbmUgdmFsdWUgZm9sbG93
ZWQgYnkgYSBjb21tYSBpbiBhcnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBh
cnJheSg0LCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkEgc2VyaWVzIG9mIGNvcnJlY3Qg
dmFsdWVzIGZvbGxvd2VkIGJ5IGEgY29tbWEgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwo
c2hhZGVyKSwgaWQgYXJyYXkoMSwgMiwgMywgNCwpKSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxl
KCJBIHNlcmllcyBvZiBjb3JyZWN0IHZhbHVlcyBmb2xsb3dlZCBieSBhIGxldHRlciBpbiBhcnJh
eSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCAzLCA0LCB4KSki
KTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiVHdvIGNvbW1hcyBhcyBzZXBhcmF0b3IgYmV0d2Vl
biB2YWx1ZXMgaW4gYXJyYXkoKSIsICJjdXN0b20obm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXko
MSwgMiwgLCA0KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVsZSgiTGVhZGluZyBjb21tYSBpbiBh
cnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgsMSwgMiwgMywgNCkp
Iik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNlbWljb2xvbiBzZXBhcmF0ZWQgdmFsdWVzIGlu
IGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDE7IDI7IDM7IDQp
KSIpOwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJTcGFjZSBzZXBhcmF0ZWQgdmFsdWVzIGluIGFy
cmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEgMiAzIDQpKSIpOwot
dGVzdEludmFsaWRGaWx0ZXJSdWxlKCJTcGFjZSBzZXBhcmF0ZWQgdmFsdWVzIHdpdGggY29tbWEg
dGVybWluYXRvciBpbiBhcnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJh
eSgxIDIgMyA0LCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIlNwYWNlIHNlcGFyYXRlZCB2
YWx1ZXMgd2l0aCBsZWFkaW5nIGNvbW1hIGluIGFycmF5KCkiLCAiY3VzdG9tKG5vbmUgdXJsKHNo
YWRlciksIGlkIGFycmF5KCwgMSAyIDMgNCkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIk5h
TiBpbiBhcnJheSgpIiwgImN1c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheShOYU4pKSIp
OwotdGVzdEludmFsaWRGaWx0ZXJSdWxlKCJOYU4gYW5kIHZhbHVlcyBpbiBhcnJheSgpIiwgImN1
c3RvbShub25lIHVybChzaGFkZXIpLCBpZCBhcnJheSgxLCAyLCBOYU4sIDMpKSIpOwotdGVzdElu
dmFsaWRGaWx0ZXJSdWxlKCJJbnZhbGlkIHVuaXQgdmFsdWUgaW4gYXJyYXkoKSIsICJjdXN0b20o
bm9uZSB1cmwoc2hhZGVyKSwgaWQgYXJyYXkoMXB4KSkiKTsKLXRlc3RJbnZhbGlkRmlsdGVyUnVs
ZSgiSW52YWxpZCB1bml0IHZhbHVlIGluIGFycmF5KCksIHNlY29uZCIsICJjdXN0b20obm9uZSB1
cmwoc2hhZGVyKSwgaWQgYXJyYXkobm9uZSkpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIklu
dmFsaWQgdW5pdCB2YWx1ZSBpbiBhcnJheSgpLCB0aGlyZCIsICJjdXN0b20obm9uZSB1cmwoc2hh
ZGVyKSwgaWQgYXJyYXkoMWRlZykpIik7Ci10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkludmFsaWQg
dW5pdCB2YWx1ZSBpbiBhcnJheSgpLCBhdCB0aGUgZW5kIG9mIGEgcGFydGlhbGx5IHZhbGlkIHZh
bHVlIGxpc3QiLCAiY3VzdG9tKG5vbmUgdXJsKHNoYWRlciksIGlkIGFycmF5KDEsIDIsIDMsIDRw
eCkpIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3Rz
L2N1c3RvbS1maWx0ZXItcHJvcGVydHktcGFyc2luZy5qcyBiL0xheW91dFRlc3RzL2NzczMvZmls
dGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJzaW5nLmpzCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2YmM0ODE1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2NzczMvZmlsdGVycy9zY3JpcHQtdGVzdHMvY3VzdG9tLWZpbHRlci1wcm9wZXJ0eS1wYXJz
aW5nLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTg0ICswLDAgQEAKLWRlc2NyaXB0aW9uKCJUZXN0
IHRoZSBwYXJzaW5nIG9mIHRoZSBjdXN0b20oKSBmdW5jdGlvbiBvZiB0aGUgLXdlYmtpdC1maWx0
ZXIgcHJvcGVydHkuIik7Ci0KLS8vIFRoZXNlIGhhdmUgdG8gYmUgZ2xvYmFsIGZvciB0aGUgdGVz
dCBoZWxwZXJzIHRvIHNlZSB0aGVtLgotdmFyIGNzc1J1bGUsIGRlY2xhcmF0aW9uLCBmaWx0ZXJS
dWxlLCBzdWJSdWxlOwotCi1mdW5jdGlvbiB0ZXN0RmlsdGVyUnVsZShkZXNjcmlwdGlvbiwgcnVs
ZSwgZXhwZWN0ZWRWYWx1ZSwgZXhwZWN0ZWRUeXBlcywgZXhwZWN0ZWRUZXh0cykKLXsKLSAgICBk
ZWJ1ZygiIik7Ci0gICAgZGVidWcoZGVzY3JpcHRpb24gKyAiIDogIiArIHJ1bGUpOwotCi0gICAg
c3R5bGVzaGVldC5pbnNlcnRSdWxlKCJib2R5IHsgLXdlYmtpdC1maWx0ZXI6ICIgKyBydWxlICsg
IjsgfSIsIDApOwotICAgIGNzc1J1bGUgPSBzdHlsZXNoZWV0LmNzc1J1bGVzLml0ZW0oMCk7Ci0g
IAotICAgIHNob3VsZEJlKCJjc3NSdWxlLnR5cGUiLCAiMSIpOwotCi0gICAgZGVjbGFyYXRpb24g
PSBjc3NSdWxlLnN0eWxlOwotICAgIHNob3VsZEJlKCJkZWNsYXJhdGlvbi5sZW5ndGgiLCAiMSIp
OwotICAgIHNob3VsZEJlKCJyZW1vdmVCYXNlVVJMKGRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZmlsdGVyJykpIiwgIiciICsgZXhwZWN0ZWRWYWx1ZSArICInIik7Ci0KLSAg
ICBmaWx0ZXJSdWxlID0gZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlDU1NWYWx1ZSgnLXdlYmtpdC1m
aWx0ZXInKTsKLSAgICBzaG91bGRCZVR5cGUoImZpbHRlclJ1bGUiLCAiQ1NTVmFsdWVMaXN0Iik7
Ci0KLSAgICBpZiAoIWV4cGVjdGVkVHlwZXMpIHsKLSAgICAgICAgZXhwZWN0ZWRUeXBlcyA9IFsi
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00iXTsKLSAgICAgICAgZXhwZWN0
ZWRUZXh0cyA9IFtleHBlY3RlZFZhbHVlXTsKLSAgICB9Ci0gICAgCi0gICAgc2hvdWxkQmUoImZp
bHRlclJ1bGUubGVuZ3RoIiwgIiIgKyBleHBlY3RlZFR5cGVzLmxlbmd0aCk7IC8vIHNob3VsZEJl
IGV4cGVjdHMgc3RyaW5nIGFyZ3VtZW50cwotICAKLSAgICBpZiAoZmlsdGVyUnVsZSkgewotICAg
ICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGV4cGVjdGVkVHlwZXMubGVuZ3RoOyBpKyspIHsKLSAg
ICAgICAgICAgIHN1YlJ1bGUgPSBmaWx0ZXJSdWxlW2ldOwotICAgICAgICAgICAgc2hvdWxkQmUo
InN1YlJ1bGUub3BlcmF0aW9uVHlwZSIsIGV4cGVjdGVkVHlwZXNbaV0pOwotICAgICAgICAgICAg
c2hvdWxkQmUoInJlbW92ZUJhc2VVUkwoc3ViUnVsZS5jc3NUZXh0KSIsICInIiArIGV4cGVjdGVk
VGV4dHNbaV0gKyAiJyIpOwotICAgICAgICB9Ci0gICAgfQotfQotCi10ZXN0RmlsdGVyUnVsZSgi
Q3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciIsCi0gICAgICAgICAgICAgICAiY3VzdG9tKHVybCh2
ZXJ0ZXguc2hhZGVyKSkiLCAiY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSkiKTsKLQotdGVzdEZp
bHRlclJ1bGUoIkN1c3RvbSB3aXRoIGZyYWdtZW50IHNoYWRlciIsCi0gICAgICAgICAgICAgICJj
dXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSkiLCAiY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlcikpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBib3RoIHNoYWRl
cnMiLAotICAgICAgICAgICAgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgdXJsKGZyYWdtZW50
LnNoYWRlcikpIiwgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikgdXJsKGZyYWdtZW50LnNoYWRl
cikpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24iLAotICAg
ICAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIiwgImN1c3Rv
bShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIik7Ci0KLXZhciBibGVuZE1vZGVzID0g
WyJub3JtYWwiLCAibXVsdGlwbHkiLCAic2NyZWVuIiwgIm92ZXJsYXkiLCAiZGFya2VuIiwgImxp
Z2h0ZW4iLCAiY29sb3ItZG9kZ2UiLAotICAgICAgICAgICAgImNvbG9yLWJ1cm4iLCAiaGFyZC1s
aWdodCIsICJzb2Z0LWxpZ2h0IiwgImRpZmZlcmVuY2UiLCAiZXhjbHVzaW9uIiwgImh1ZSIsICJz
YXR1cmF0aW9uIiwKLSAgICAgICAgICAgICJjb2xvciIsICJsdW1pbm9zaXR5Il07Ci1mb3IgKHZh
ciBpID0gMDsgaSA8IGJsZW5kTW9kZXMubGVuZ3RoOyBpKyspIHsKLSAgICB2YXIgYmxlbmRNb2Rl
ID0gYmxlbmRNb2Rlc1tpXTsKLSAgICB0ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1
bmN0aW9uIGFuZCBibGVuZCBtb2RlICIgKyBibGVuZE1vZGUsCi0gICAgICAgICAgICAgICAgImN1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYmxlbmRNb2RlICsgIikpIiwg
ImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYmxlbmRNb2RlICsgIikp
Iik7Ci19Ci0KLXZhciBhbHBoYUNvbXBvc2l0aW5nTW9kZXMgPSBbImNsZWFyIiwgImNvcHkiLCAi
c291cmNlLW92ZXIiLCAiZGVzdGluYXRpb24tb3ZlciIsICJzb3VyY2UtaW4iLCAiZGVzdGluYXRp
b24taW4iLAotICAgICAgICAgICAgInNvdXJjZS1vdXQiLCAiZGVzdGluYXRpb24tb3V0IiwgInNv
dXJjZS1hdG9wIiwgImRlc3RpbmF0aW9uLWF0b3AiLCAieG9yIl07Ci1mb3IgKHZhciBpID0gMDsg
aSA8IGFscGhhQ29tcG9zaXRpbmdNb2Rlcy5sZW5ndGg7IGkrKykgewotICAgIHZhciBhbHBoYUNv
bXBvc2l0aW5nTW9kZSA9IGFscGhhQ29tcG9zaXRpbmdNb2Rlc1tpXTsKLSAgICB0ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFuZCBhbHBoYSBjb21wb3NpdGluZyBtb2Rl
ICIgKyBhbHBoYUNvbXBvc2l0aW5nTW9kZSwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSBtaXgo
dXJsKGZyYWdtZW50LnNoYWRlcikgIiArIGFscGhhQ29tcG9zaXRpbmdNb2RlICsgIikpIiwgImN1
c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSAiICsgYWxwaGFDb21wb3NpdGluZ01v
ZGUgKyAiKSkiKTsKLX0KLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1peCBmdW5jdGlv
biBhbmQgYmxlbmQgbW9kZSBmaXJzdCwgYWxwaGEgY29tcG9zaXRpbmcgbW9kZSBzZWNvbmQiLAot
ICAgICAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBs
eSBjbGVhcikpIiwgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSBtdWx0aXBs
eSBjbGVhcikpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBtaXggZnVuY3Rpb24g
YW5kIGFscGhhIGNvbXBvc2l0aW5nIG1vZGUgZmlyc3QsIGJsZW5kIG1vZGUgc2Vjb25kIiwKLSAg
ICAgICAgICAgICJjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY2xlYXIgbXVs
dGlwbHkpKSIsICJjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikgY2xlYXIgbXVs
dGlwbHkpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggdmVydGV4IHNoYWRlciBh
bmQgbWl4IGZ1bmN0aW9uIiwKLSAgICAgICAgICAgICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIp
IG1peCh1cmwoZnJhZ21lbnQuc2hhZGVyKSkpIiwgImN1c3RvbSh1cmwodmVydGV4LnNoYWRlcikg
bWl4KHVybChmcmFnbWVudC5zaGFkZXIpKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3
aXRoIG1peCBmdW5jdGlvbiBpbiBDQVBTIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSBNSVgo
dXJsKGZyYWdtZW50LnNoYWRlcikpKSIsICJjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNo
YWRlcikpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbWl4IGZ1bmN0aW9uIGFu
ZCBtZXNoIHNpemUiLAotICAgICAgICAgICAgImN1c3RvbShub25lIG1peCh1cmwoZnJhZ21lbnQu
c2hhZGVyKSksIDEwKSIsICJjdXN0b20obm9uZSBtaXgodXJsKGZyYWdtZW50LnNoYWRlcikpLCAx
MCkiKTsKLSAgICAgICAgICAgIAotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG1lc2ggc2l6
ZSIsCi0gICAgICAgICAgICAiY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSwgMTApIiwgImN1c3Rv
bSh1cmwodmVydGV4LnNoYWRlciksIDEwKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdp
dGggYm90aCBtZXNoIHNpemVzIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMTAgMjApIiwgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAx
MCAyMCkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGRldGFjaGVkIG1lc2giLAot
ICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBkZXRhY2hlZCki
LCAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGRldGFjaGVkKSIpOwotICAgICAg
ICAgICAgCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggZGV0YWNoZWQgYW5kIG1lc2ggc2l6
ZSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIw
IGRldGFjaGVkKSIsICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0
YWNoZWQpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBudW1iZXIgcGFyYW1ldGVy
cyIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHAxIDEs
IHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9u
ZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMSwgcDIgMiAzLCBwMyAzIDQgNSwgcDQgNCA1IDYg
NykiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIGZsb2F0IHBhcmFtZXRlcnMiLAot
ICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCBwMSAxLjEsIHAy
IDIuMiAzLjMsIHAzIDMuMSA0LjEgNS4xLCBwNCA0LjEgNS4yIDYuMyA3LjQpIiwKLSAgICAgICAg
ICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgcDEgMS4xLCBwMiAyLjIgMy4z
LCBwMyAzLjEgNC4xIDUuMSwgcDQgNC4xIDUuMiA2LjMgNy40KSIpOwotCi10ZXN0RmlsdGVyUnVs
ZSgiQ3VzdG9tIHdpdGggcGFyYW1ldGVyIG5hbWUgc2FtZSBhcyBDU1MgdmFsdWUga2V5d29yZCIs
Ci0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGJhY2tncm91
bmQgMCAxIDAgMSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCBiYWNrZ3JvdW5kIDAgMSAwIDEpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0
aCBtZXNoIHNpemUgYW5kIG51bWJlciBwYXJhbWV0ZXJzIiwKLSAgICAgICAgICAgICJjdXN0b20o
bm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUs
IHA0IDQgNSA2IDcpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgMTAgMjAsIHAxIDEsIHAyIDIgMywgcDMgMyA0IDUsIHA0IDQgNSA2IDcpIik7Ci0KLXRl
c3RGaWx0ZXJSdWxlKCJNdWx0aXBsZSB3aXRoIGZyYWdtZW50IHNoYWRlciIsCi0gICAgICAgICAg
ICAiZ3JheXNjYWxlKCkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIHNlcGlhKCki
LCAiZ3JheXNjYWxlKCkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIHNlcGlhKCki
LAotICAgICAgICAgICAgWyJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5DU1NfRklMVEVSX0dSQVlTQ0FM
RSIsCi0gICAgICAgICAgICAiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuQ1NTX0ZJTFRFUl9DVVNUT00i
LAotICAgICAgICAgICAgIldlYktpdENTU0ZpbHRlclZhbHVlLkNTU19GSUxURVJfU0VQSUEiXSwK
LSAgICAgICAgICAgIFsiZ3JheXNjYWxlKCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVy
bChmcmFnbWVudC5zaGFkZXIpKSIsCi0gICAgICAgICAgICAic2VwaWEoKSJdKTsKLQotdGVzdEZp
bHRlclJ1bGUoIkN1c3RvbSBpbiBDQVBTIiwKLSAgICAgICAgICAgICJDVVNUT00odXJsKHZlcnRl
eC5zaGFkZXIpKSIsICJjdXN0b20odXJsKHZlcnRleC5zaGFkZXIpKSIpOwotCi10ZXN0RmlsdGVy
UnVsZSgiQ3VzdG9tIHdpdGggb25lIHRyYW5zZm9ybSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5v
bmUgdXJsKGZyYWdtZW50LnNoYWRlciksIG9uZVRyYW5zZm9ybSByb3RhdGUoMGRlZykpIiwKLSAg
ICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgb25lVHJhbnNmb3Jt
IHJvdGF0ZSgwZGVnKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1c3RvbSB3aXRoIG11bHRpcGxl
IHRyYW5zZm9ybXMiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFk
ZXIpLCBtdWx0aXBsZVRyYW5zZm9ybSByb3RhdGUoMGRlZykgcGVyc3BlY3RpdmUoMCkgc2NhbGUo
MCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVy
bChmcmFnbWVudC5zaGFkZXIpLCBtdWx0aXBsZVRyYW5zZm9ybSByb3RhdGUoMGRlZykgcGVyc3Bl
Y3RpdmUoMCkgc2NhbGUoMCwgMCkgdHJhbnNsYXRlKDBweCwgMHB4KSkiKTsKLQotdGVzdEZpbHRl
clJ1bGUoIkN1c3RvbSB3aXRoIHR3byBzZXBhcmF0ZSB0cmFuc2Zvcm1zIiwKLSAgICAgICAgICAg
ICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgZmlyc3RUcmFuc2Zvcm0gcm90YXRl
KDBkZWcpLCBzZWNvbmRUcmFuc2Zvcm0gcm90YXRlKDBkZWcpKSIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIGZpcnN0VHJhbnNmb3JtIHJvdGF0ZSgwZGVn
KSwgc2Vjb25kVHJhbnNmb3JtIHJvdGF0ZSgwZGVnKSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkN1
c3RvbSB3aXRoIGEgc2luZ2xlIGVsZW1lbnQgYXJyYXkoKSIsCi0gICAgICAgICAgICAiY3VzdG9t
KG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQwIGFycmF5KDEpKSIsCi0gICAgICAgICAgICAi
Y3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQwIGFycmF5KDEpKSIpOwotCi0KLXRl
c3RGaWx0ZXJSdWxlKCJDdXN0b20gd2l0aCBhIHNpbmdsZSBuZWdhdGl2ZSBlbGVtZW50IGFycmF5
KCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCB0MSBh
cnJheSgtMS4wMSkpIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hh
ZGVyKSwgdDEgYXJyYXkoLTEuMDEpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGgg
bXVsdGlwbGUgZWxlbWVudHMgYXJyYXkoKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJs
KGZyYWdtZW50LnNoYWRlciksIHQyIGFycmF5KDEsIDIsIDMsIDQsIDUpKSIsCi0gICAgICAgICAg
ICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQyIGFycmF5KDEsIDIsIDMsIDQs
IDUpKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiQ3VzdG9tIHdpdGggbXVsdGlwbGUgc2lnbmVkIGZs
b2F0IGVsZW1lbnRzIGFycmF5KCkiLAotICAgICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFn
bWVudC5zaGFkZXIpLCB0MyBhcnJheSgxLCAtMi4yLCAzLjE0LCAwLjQsIDUpKSIsCi0gICAgICAg
ICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHQzIGFycmF5KDEsIC0yLjIs
IDMuMTQsIDAuNCwgNSkpIik7Ci0KLXRlc3RGaWx0ZXJSdWxlKCJNdWx0aXBsZSBhcnJheSgpIiwK
LSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDQgYXJyYXko
MSwgLTIuMiwgMy4xNCwgMC40LCA1KSwgdDUgYXJyYXkoMSwgMiwgMykpIiwKLSAgICAgICAgICAg
ICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgdDQgYXJyYXkoMSwgLTIuMiwgMy4x
NCwgMC40LCA1KSwgdDUgYXJyYXkoMSwgMiwgMykpIik7Ci0KLS8vIEZJWE1FOiBUaGUgZm9sbG93
aW5nIHRlc3RzIHdpbGwgYmUgcmVtb3ZlZCBhbG9uZyB3aXRoIHRoZSBtZXNoIGJveCB0eXBlcyBw
YXJzaW5nIGNvZGUuCi0vLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTAzNzc4Ci10ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdpdGggbWVzaCBib3ggc2l6
ZXMgYW5kIGNvbnRlbnQtYm94IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21l
bnQuc2hhZGVyKSwgMSAxIGNvbnRlbnQtYm94KSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUg
dXJsKGZyYWdtZW50LnNoYWRlciksIDEgMSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkxlZ2FjeSAt
IEN1c3RvbSB3aXRoIG1lc2ggYm94IHNpemVzIGFuZCBib3JkZXItYm94IiwKLSAgICAgICAgICAg
ICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxIGJvcmRlci1ib3gpIiwKLSAg
ICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMSAxKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdpdGggbWVzaCBib3ggc2l6ZXMgYW5kIHBh
ZGRpbmctYm94IiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVy
KSwgMSAxIHBhZGRpbmctYm94KSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdt
ZW50LnNoYWRlciksIDEgMSkiKTsKLQotdGVzdEZpbHRlclJ1bGUoIkxlZ2FjeSAtIEN1c3RvbSB3
aXRoIHBhcnRpYWwgbWVzaCBib3ggc2l6ZSBhbmQgcGFkZGluZy1ib3giLAotICAgICAgICAgICAg
ImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCBwYWRkaW5nLWJveCkiLAotICAg
ICAgICAgICAgImN1c3RvbShub25lIHVybChmcmFnbWVudC5zaGFkZXIpLCAxMCkiKTsKLQotdGVz
dEZpbHRlclJ1bGUoIkxlZ2FjeSAtIEN1c3RvbSB3aXRoIHBhZGRpbmctYm94IGFuZCBkZXRhY2hl
ZCIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIHBhZGRp
bmctYm94IGRldGFjaGVkKSIsCi0gICAgICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50
LnNoYWRlciksIGRldGFjaGVkKSIpOwotCi10ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9t
IHdpdGggYm90aCBtZXNoLXNpemVzIGFuZCBwYWRkaW5nLWJveCIsCi0gICAgICAgICAgICAiY3Vz
dG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwIHBhZGRpbmctYm94KSIsCi0gICAg
ICAgICAgICAiY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlciksIDEwIDIwKSIpOwotCi10
ZXN0RmlsdGVyUnVsZSgiTGVnYWN5IC0gQ3VzdG9tIHdpdGggbWVzaC1zaXplcywgcGFkZGluZy1i
b3ggYW5kIGRldGFjaGVkIiwKLSAgICAgICAgICAgICJjdXN0b20obm9uZSB1cmwoZnJhZ21lbnQu
c2hhZGVyKSwgMTAgMjAgcGFkZGluZy1ib3ggZGV0YWNoZWQpIiwKLSAgICAgICAgICAgICJjdXN0
b20obm9uZSB1cmwoZnJhZ21lbnQuc2hhZGVyKSwgMTAgMjAgZGV0YWNoZWQpIik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2VmZmVjdC1jdXN0b20t
ZGlzYWJsZWQuanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvc2NyaXB0LXRlc3RzL2VmZmVj
dC1jdXN0b20tZGlzYWJsZWQuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMzMzhk
MjQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL3NjcmlwdC10ZXN0cy9l
ZmZlY3QtY3VzdG9tLWRpc2FibGVkLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMjcgKzAsMCBAQAot
ZGVzY3JpcHRpb24oIlRlc3QgdGhhdCB0aGUgY3VzdG9tKCkgZnVuY3Rpb24gb2YgdGhlIC13ZWJr
aXQtZmlsdGVyIHByb3BlcnR5IGlzIG5vdCBwYXJzZWQgd2hlbiBDU1MgQ3VzdG9tIEZpbHRlciBp
cyBkaXNhYmxlZC4iKTsKLQotaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgIHdpbmRvdy50ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCIs
IGZhbHNlKTsKLQotLy8gVGhlc2UgaGF2ZSB0byBiZSBnbG9iYWwgZm9yIHRoZSB0ZXN0IGhlbHBl
cnMgdG8gc2VlIHRoZW0uCi12YXIgc3R5bGVzaGVldCwgY3NzUnVsZSwgZGVjbGFyYXRpb247Ci12
YXIgc3R5bGVFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKTsKLWRvY3Vt
ZW50LmhlYWQuYXBwZW5kQ2hpbGQoc3R5bGVFbGVtZW50KTsKLXN0eWxlc2hlZXQgPSBzdHlsZUVs
ZW1lbnQuc2hlZXQ7Ci0KLWZ1bmN0aW9uIHRlc3RJbnZhbGlkRmlsdGVyUnVsZShkZXNjcmlwdGlv
biwgcnVsZSkKLXsKLSAgICBkZWJ1ZyhkZXNjcmlwdGlvbiArICIgOiAiICsgcnVsZSk7Ci0KLSAg
ICBzdHlsZXNoZWV0Lmluc2VydFJ1bGUoImJvZHkgeyAtd2Via2l0LWZpbHRlcjogIiArIHJ1bGUg
KyAiOyB9IiwgMCk7Ci0gICAgY3NzUnVsZSA9IHN0eWxlc2hlZXQuY3NzUnVsZXMuaXRlbSgwKTsK
LSAgCi0gICAgc2hvdWxkQmUoImNzc1J1bGUudHlwZSIsICIxIik7Ci0KLSAgICBkZWNsYXJhdGlv
biA9IGNzc1J1bGUuc3R5bGU7Ci0gICAgc2hvdWxkQmUoImRlY2xhcmF0aW9uLmxlbmd0aCIsICIw
Iik7Ci0gICAgc2hvdWxkQmUoImRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
ZmlsdGVyJykiLCAibnVsbCIpOwotfQotCi10ZXN0SW52YWxpZEZpbHRlclJ1bGUoIkN1c3RvbSB3
aXRoIHZlcnRleCBzaGFkZXIiLCAiY3VzdG9tKHVybCh2ZXJ0ZXguc2hhZGVyKSkiKTsKLXRlc3RJ
bnZhbGlkRmlsdGVyUnVsZSgiTXVsdGlwbGUgd2l0aCBmcmFnbWVudCBzaGFkZXIiLCAiZ3JheXNj
YWxlKCkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIHNlcGlhKCkiLCAiZ3JheXNj
YWxlKCkgY3VzdG9tKG5vbmUgdXJsKGZyYWdtZW50LnNoYWRlcikpIHNlcGlhKCkiKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0
cmlidXRlcy1leHBlY3RlZC50eHQKaW5kZXggZTk4MzI4OC4uM2E3YWZhMSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmli
dXRlcy1leHBlY3RlZC50eHQKQEAgLTE4ODgsMTEgKzE4ODgsNiBAQCBQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5pbWF0aW9uRXZlbnQnKS5oYXNP
d25Qcm9wZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdEFuaW1hdGlvbkV2ZW50JykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5pbWF0aW9u
RXZlbnQnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5pbWF0aW9uRXZlbnQnKS5jb25maWd1cmFibGUgaXMg
dHJ1ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktp
dENTU0ZpbHRlclJ1bGUnKS52YWx1ZSBpcyBXZWJLaXRDU1NGaWx0ZXJSdWxlCi1QQVNTIE9iamVj
dC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScp
Lmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS5oYXNPd25Qcm9wZXJ0
eSgnc2V0JykgaXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihn
bG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuZW51bWVyYWJsZSBpcyBmYWxzZQotUEFTUyBP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1
bGUnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclZhbHVlJykudmFsdWUgaXMgV2ViS2l0Q1NT
RmlsdGVyVmFsdWUKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWws
ICdXZWJLaXRDU1NGaWx0ZXJWYWx1ZScpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQog
UEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0Zp
bHRlclZhbHVlJykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCkBAIC0xOTEzLDExICsx
OTA4LDYgQEAgUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dl
YktpdENTU01hdHJpeCcpLmhhc093blByb3BlcnR5KCcKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNYXRyaXgnKS5oYXNPd25Qcm9wZXJ0eSgn
c2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdXZWJLaXRDU1NNYXRyaXgnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWF0cml4JykuY29uZmln
dXJhYmxlIGlzIHRydWUKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJykudmFsdWUgaXMgV2ViS2l0Q1NTTWl4RnVu
Y3Rpb25WYWx1ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFs
c2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlJykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCi1QQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVu
Y3Rpb25WYWx1ZScpLmVudW1lcmFibGUgaXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJykuY29uZmln
dXJhYmxlIGlzIHRydWUKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9i
YWwsICdXZWJLaXRDU1NSZWdpb25SdWxlJykudmFsdWUgaXMgV2ViS2l0Q1NTUmVnaW9uUnVsZQog
UEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU1Jl
Z2lvblJ1bGUnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NSZWdpb25SdWxlJykuaGFz
T3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMtbW91bnRhaW5saW9uL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0
ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLW1vdW50YWlubGlvbi9q
cy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9ycy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dAppbmRleCBj
ZDZlODNiLi44NjY2OWU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtbW91
bnRhaW5saW9uL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy1tb3VudGFpbmxpb24vanMvZG9tL2ds
b2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQKQEAgLTE4OTMsMTEgKzE4
OTMsNiBAQCBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2Vi
S2l0QW5pbWF0aW9uRXZlbnQnKS5oYXNPd25Qcm9wZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdEFuaW1hdGlvbkV2ZW50JykuaGFzT3duUHJvcGVy
dHkoJ3NldCcpIGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0QW5pbWF0aW9uRXZlbnQnKS5lbnVtZXJhYmxlIGlzIGZhbHNlCiBQQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0QW5pbWF0aW9u
RXZlbnQnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS52YWx1ZSBpcyBXZWJLaXRD
U1NGaWx0ZXJSdWxlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFs
LCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQot
UEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0Zp
bHRlclJ1bGUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKLVBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJSdWxlJykuZW51
bWVyYWJsZSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGds
b2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS5jb25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclZh
bHVlJykudmFsdWUgaXMgV2ViS2l0Q1NTRmlsdGVyVmFsdWUKIFBBU1MgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0ZXJWYWx1ZScpLmhhc093blBy
b3BlcnR5KCdnZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclZhbHVlJykuaGFzT3duUHJvcGVydHkoJ3NldCcp
IGlzIGZhbHNlCkBAIC0xOTE4LDExICsxOTEzLDYgQEAgUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmhhc093blByb3BlcnR5KCcK
IFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NN
YXRyaXgnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNYXRyaXgnKS5lbnVtZXJhYmxl
IGlzIGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAn
V2ViS2l0Q1NTTWF0cml4JykuY29uZmlndXJhYmxlIGlzIHRydWUKLVBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJyku
dmFsdWUgaXMgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJv
cGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5oYXNP
d25Qcm9wZXJ0eSgnZ2V0JykgaXMgZmFsc2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJykuaGFzT3duUHJvcGVy
dHkoJ3NldCcpIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmVudW1lcmFibGUgaXMgZmFsc2UK
LVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlJykuY29uZmlndXJhYmxlIGlzIHRydWUKIFBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NSZWdpb25SdWxlJykudmFsdWUg
aXMgV2ViS2l0Q1NTUmVnaW9uUnVsZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ1dlYktpdENTU1JlZ2lvblJ1bGUnKS5oYXNPd25Qcm9wZXJ0eSgnZ2V0Jykg
aXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdX
ZWJLaXRDU1NSZWdpb25SdWxlJykuaGFzT3duUHJvcGVydHkoJ3NldCcpIGlzIGZhbHNlCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggYzA0Y2Nl
YS4uYzk0MjA1ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9UZXN0
RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVzdEV4cGVj
dGF0aW9ucwpAQCAtMjIyLDkgKzIyMiw2IEBAIGZhc3QvZG9tL1N0eWxlU2hlZXQvZGV0YWNoZWQt
c3R5bGVzaGVldC13aXRob3V0LXdyYXBwZXIuaHRtbAogIyBBbGwgc3BhdGlhbCBuYXZpZ2F0aW9u
IHRlc3RzIGZhaWwgb24gTWFjIFdLMgogd2Via2l0Lm9yZy9iLzk2NDM4IGZhc3Qvc3BhdGlhbC1u
YXZpZ2F0aW9uCiAKLSMgV0syIHRlc3RzIGZhaWwgaW1hZ2UgZGlmZgotd2Via2l0Lm9yZy9iLzk2
NTgwIFsgRGVidWcgXSBjc3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1mYWxsYmFjay10by1zb2Z0
d2FyZS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi0KICMgQ2F1c2VzIG5leHQgdGVzdCB0byBj
cmFzaAogd2Via2l0Lm9yZy9iLzk4OTYwIGZhc3QvcGFyc2VyL2RvY3VtZW50LW9wZW4taW4tdW5s
b2FkLmh0bWwgWyBTa2lwIF0KIApAQCAtMzIwLDcgKzMxNyw2IEBAIHdlYmtpdC5vcmcvYi8xMTg5
MjUgY29tcG9zaXRpbmcvYmFja2dyb3VuZHMvZml4ZWQtYmFja2dyb3VuZHMuaHRtbCAgWyBQYXNz
IEltYWdlCiB3ZWJraXQub3JnL2IvMTE4OTI1IGNvbXBvc2l0aW5nL2dlb21ldHJ5L2ZpeGVkLXBv
c2l0aW9uLWNvbXBvc2l0ZWQtcGFnZS1zY2FsZS1zbWFsbGVyLXRoYW4tdmlld3BvcnQuaHRtbCAg
WyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzExODkyNSBjb21wb3NpdGlu
Zy9vdmVybGFwLWJsZW5kaW5nL2NoaWxkcmVuLW9wYWNpdHktaHVnZS5odG1sICBbIFBhc3MgSW1h
Z2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTE4OTI1IGNvbXBvc2l0aW5nL292ZXJsYXAt
YmxlbmRpbmcvY2hpbGRyZW4tb3BhY2l0eS1uby1vdmVybGFwLmh0bWwgIFsgUGFzcyBJbWFnZU9u
bHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMTg5MjUgY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZl
Y3QtY3VzdG9tLXRyYW5zZm9ybS1wYXJhbWV0ZXJzLmh0bWwgIFsgUGFzcyBJbWFnZU9ubHlGYWls
dXJlIF0KIHdlYmtpdC5vcmcvYi8xMTg5MjUgZmFzdC9sYXllcnMvbm8tY2xpcHBpbmctb3ZlcmZs
b3ctaGlkZGVuLWFkZGVkLWFmdGVyLXRyYW5zaXRpb24uaHRtbCAgWyBQYXNzIEltYWdlT25seUZh
aWx1cmUgXQogd2Via2l0Lm9yZy9iLzExODkyNSBmYXN0L211bHRpY29sL21peGVkLW9wYWNpdHkt
Zml4ZWQtdGVzdC5odG1sICBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2Iv
MTE4OTI1IGZhc3QvcmVnaW9ucy9maXhlZC1wb3MtZWxlbS1pbi1yZWdpb24uaHRtbCAgWyBQYXNz
IEltYWdlT25seUZhaWx1cmUgXQpAQCAtMzQ2LDIzICszNDIsNiBAQCB3ZWJraXQub3JnL2IvMTIy
MjM0IHN2Zy9maWx0ZXJzL2ZpbHRlci1jeWNsZS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3
ZWJraXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9udWxsLWVmZmVjdC1jaGVjay5odG1sIFsg
SW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTIyMjM0IGZhc3QvaW1hZ2VzL3BkZi1h
cy1pbWFnZS13aXRoLWFubm90YXRpb25zLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQog
d2Via2l0Lm9yZy9iLzEyMjIzNCBmYXN0L2ltYWdlcy9wZGYtYXMtaW1hZ2UtY3JvcC1ib3guaHRt
bCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTIyMjM0IGNzczMvZmls
dGVycy9jdXN0b20vY29tcG9zaXRlZC9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwgWyBQ
YXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMv
Y3VzdG9tL2N1c3RvbS1maWx0ZXItYS10ZXgtY29vcmQtb3B0aW9uYWwuaHRtbCBbIFBhc3MgSW1h
Z2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20v
Y3VzdG9tLWZpbHRlci1hcnJheS11bmlmb3JtLWluZGlyZWN0LWluZGV4Lmh0bWwgWyBQYXNzIElt
YWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3VzdG9t
L2N1c3RvbS1maWx0ZXItYXJyYXkuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1ibGVuZC1t
b2Rlcy5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQg
Y3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNoYW5nZS1ibGVuZC1tb2RlLmh0bWwg
WyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRl
cnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY29sb3IuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVy
ZSBdCi13ZWJraXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci1kZXRhY2hlZC1tZXNoLXdpdGgtbWVzaC1ib3gtdHlwZS5odG1sIFsgUGFzcyBJbWFnZU9ubHlG
YWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20t
ZmlsdGVyLW1hdE4uaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2Iv
MTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1tZXNoLWNvbHVtbi1yb3ct
b3JkZXIuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTIyMjM0
IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci11LW1lc2gtYm94Lmh0bWwgWyBQYXNz
IEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3MzL2ZpbHRlcnMvY3Vz
dG9tL2N1c3RvbS1maWx0ZXItdS1tZXNoLXNpemUuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVy
ZSBdCi13ZWJraXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRl
ci11LXRleHR1cmUtc2l6ZS5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5v
cmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLXUtdGlsZS1zaXpl
Lmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMjIzNCBjc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItdW5hdmFpbGFibGUtdmFyeWluZy5odG1sIFsg
UGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xMjIyMzQgY3NzMy9maWx0ZXJz
L2N1c3RvbS9jdXN0b20tZmlsdGVyLWNsYW1wLWNzcy1jb2xvci1tYXRyaXguaHRtbCBbIFBhc3Mg
SW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTIyMjM0IGNzczMvZmlsdGVycy9jdXN0
b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtZnJhY3Rpb25hbC1zb3VyY2UtYWxwaGEuaHRtbCBb
IFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKICMgVGlsZWQgYmFja2dyb3VuZCBpbWFnZXMgdGhh
dCBpbnRlcnNlY3QgdGhlIHRpbGVzIGFyZSBnZXR0aW5nIHdlaXJkIGZyaW5naW5nLgogd2Via2l0
Lm9yZy9iLzEyMjIzNSBjc3MzL21hc2tpbmcvbWFzay1yZXBlYXQtc3BhY2UtYm9yZGVyLmh0bWwg
WyBJbWFnZU9ubHlGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3Rh
dGlvbnMKaW5kZXggZTllNTM2YS4uNWI3NTdjNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTY2MCwxNSArNjYwLDYgQEAgZmFzdC9jYW52YXMvY2FudmFz
LXF1YWRyYXRpYy1zYW1lLWVuZHBvaW50Lmh0bWwKIGNzczMvZmlsdGVycy9jb21wb3NpdGVkLWR1
cmluZy10cmFuc2l0aW9uLWxheWVydHJlZS5odG1sCiB3ZWJraXQub3JnL2IvOTU2MjIgY3NzMy9m
aWx0ZXJzL2NvbXBvc2l0ZWQtZHVyaW5nLWFuaW1hdGlvbi1sYXllcnRyZWUuaHRtbCBbIFBhc3Mg
RmFpbHVyZSBdCiAKLSMgLS0tIEN1c3RvbSBGaWx0ZXJzIC0tLQotIyBUaGUgZm9sbG93aW5nIDUg
dGVzdHMgYXJlIGN1cnJlbnRseSBza2lwcGVkIG9uIE1hYyBmb3Igc2xpZ2h0IGNvbG9yIGRpZmZl
cmVuY2VzLAotIyBwbGVhc2Ugc2VlIHRoZSByZWxldmFudCBidWc6IGh0dHA6Ly93ZWJraXQub3Jn
L2IvMTA3NDg3Ci13ZWJraXQub3JnL2IvMTA3NDg3IGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9t
LWZpbHRlci1ibGVuZC1mcmFjdGlvbmFsLWRlc3RpbmF0aW9uLWFscGhhLmh0bWwgWyBTa2lwIF0K
LXdlYmtpdC5vcmcvYi8xMDc0ODcgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5v
bnNlcGFyYWJsZS1ibGVuZC1tb2RlLWNvbG9yLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8x
MDc0ODcgY3NzMy9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVu
ZC1tb2RlLWx1bWlub3NpdHkuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwNzQ4NyBjc3Mz
L2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItbm9uc2VwYXJhYmxlLWJsZW5kLW1vZGUtaHVl
Lmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDc0ODcgY3NzMy9maWx0ZXJzL2N1c3RvbS9j
dXN0b20tZmlsdGVyLW5vbnNlcGFyYWJsZS1ibGVuZC1tb2RlLXNhdHVyYXRpb24uaHRtbCBbIFNr
aXAgXQotCiAjIC0tLSBUZXh0IC0tLQogZmFzdC9mb3Jtcy90ZXh0LWNvbnRyb2wtaW50cmluc2lj
LXdpZHRocy5odG1sCiBwbGF0Zm9ybS9tYWMvZmFzdC90ZXh0L2NvbWJpbmluZy1jaGFyYWN0ZXIt
c2VxdWVuY2UtZmFsbGJhY2suaHRtbApAQCAtMTE0OSw4ICsxMTQwLDYgQEAgd2Via2l0Lm9yZy9i
LzExNTI5MiBmYXN0L3dyaXRpbmctbW9kZS92ZXJ0aWNhbC1mb250LWZhbGxiYWNrLmh0bWwKICMg
RmFpbHMgd2l0aCBXZWJLaXQxIG9ubHkuCiBlZGl0aW5nL3NlY3VyZS1pbnB1dC9yZXNldC1zdGF0
ZS1vbi1uYXZpZ2F0aW9uLmh0bWwgWyBGYWlsdXJlIF0KIAotd2Via2l0Lm9yZy9iLzExNjIzOCBj
c3MzL2ZpbHRlcnMvY3VzdG9tL2ZpbHRlci1mYWxsYmFjay10by1zb2Z0d2FyZS5odG1sIFsgUGFz
cyBJbWFnZU9ubHlGYWlsdXJlIF0KLQogd2Via2l0Lm9yZy9iLzExNjI0NCBmYXN0L2V2ZW50cy9t
b3VzZS1jdXJzb3ItaW1hZ2Utc2V0Lmh0bWwgWyBGYWlsdXJlIFBhc3MgXQogCiB3ZWJraXQub3Jn
L2IvMTE2MjQ1IGNhbnZhcy9waGlsaXAvdGVzdHMvMmQudGV4dC5kcmF3LmZvbnRmYWNlLm5vdGlu
cGFnZS5odG1sIFsgUGFzcyBGYWlsdXJlIF0KQEAgLTEyNTgsMTIgKzEyNDcsNiBAQCB3ZWJraXQu
b3JnL2IvMTIzMjgyIGNvbXBvc2l0aW5nL3JlZ2lvbnMvcHJvcGFnYXRlLXJlZ2lvbi1ib3gtc2hh
ZG93LWJvcmRlci1wYWRkaQogCiB3ZWJraXQub3JnL2IvMTIzMjUwIHBsdWdpbnMvZGVzdHJveS1k
dXJpbmctbnBwLW5ldy1vYmplY3Qtd2l0aC1mYWxsYmFjay1jb250ZW50Lmh0bWwgWyBQYXNzIEZh
aWx1cmUgXQogCi13ZWJraXQub3JnL2IvMTIzMzcwIFsgTWF2ZXJpY2tzIF0gY3NzMy9maWx0ZXJz
L2N1c3RvbS9jb21wb3NpdGVkL2N1c3RvbS1maWx0ZXItYmxlbmQtbW9kZXMuaHRtbCBbIFBhc3Mg
SW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTIzMzcwIFsgTWF2ZXJpY2tzIF0gY3Nz
My9maWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWJsZW5kLW1vZGVzLmh0bWwgWyBQYXNzIElt
YWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMzM3MCBbIE1hdmVyaWNrcyBdIGNzczMv
ZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jbGFtcC1jc3MtY29sb3ItbWF0cml4Lmh0bWwg
WyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzEyMzM3MCBbIE1hdmVyaWNr
cyBdIGNzczMvZmlsdGVycy9jdXN0b20vY3VzdG9tLWZpbHRlci1jb21wb3NpdGUtZnJhY3Rpb25h
bC1zb3VyY2UtYWxwaGEuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3Jn
L2IvMTIzMzcwIFsgTWF2ZXJpY2tzIF0gY3NzMy9maWx0ZXJzL2N1c3RvbS9lZmZlY3QtY3VzdG9t
LXRyYW5zZm9ybS1wYXJhbWV0ZXJzLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQotCiB3
ZWJraXQub3JnL2IvMTIzMzY5IHN2Zy9jc3MvcGFyZW50LXNoYWRvdy1vZmZzY3JlZW4uc3ZnIFsg
SW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTIzMzY5IFsgTW91bnRhaW5MaW9uIF0g
c3ZnL2Nzcy9wYXJlbnQtc2hhZG93LW9mZnNjcmVlbi5zdmcgWyBQYXNzIF0KIHdlYmtpdC5vcmcv
Yi8xMjMzNjkgc3ZnL2Nzcy9yb290LXNoYWRvdy1vZmZzY3JlZW4uc3ZnIFsgSW1hZ2VPbmx5RmFp
bHVyZSBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvanMvZG9tL2dsb2Jh
bC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMvanMvZG9tL2dsb2JhbC1jb25zdHJ1Y3RvcnMtYXR0cmlidXRlcy1leHBlY3RlZC50
eHQKaW5kZXggMzRlOTI3ZS4uNDE2MmZmMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL2pzL2RvbS9nbG9iYWwtY29uc3RydWN0b3JzLWF0dHJpYnV0ZXMtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9qcy9kb20vZ2xvYmFsLWNvbnN0cnVjdG9y
cy1hdHRyaWJ1dGVzLWV4cGVjdGVkLnR4dApAQCAtMTkwMywxMSArMTkwMyw2IEBAIFBBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVu
dCcpLmhhc093blByb3BlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xv
YmFsLCAnV2ViS2l0QW5pbWF0aW9uRXZlbnQnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFs
c2UKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRB
bmltYXRpb25FdmVudCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1MgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRBbmltYXRpb25FdmVudCcpLmNvbmZpZ3Vy
YWJsZSBpcyB0cnVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFs
LCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLnZhbHVlIGlzIFdlYktpdENTU0ZpbHRlclJ1bGUKLVBB
U1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NGaWx0
ZXJSdWxlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlzIGZhbHNlCi1QQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyUnVsZScpLmhhc093
blByb3BlcnR5KCdzZXQnKSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclJ1bGUnKS5lbnVtZXJhYmxlIGlzIGZhbHNl
Ci1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NT
RmlsdGVyUnVsZScpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2ViS2l0Q1NTRmlsdGVyVmFsdWUnKS52YWx1ZSBpcyBX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KGdsb2JhbCwgJ1dlYktpdENTU0ZpbHRlclZhbHVlJykuaGFzT3duUHJvcGVydHkoJ2dldCcpIGlz
IGZhbHNlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKQEAgLTE5
MjgsMTEgKzE5MjMsNiBAQCBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xv
YmFsLCAnV2ViS2l0Q1NTTWF0cml4JykuaGFzT3duUHJvcGVydHkoJwogUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmhhc093blBy
b3BlcnR5KCdzZXQnKSBpcyBmYWxzZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ1dlYktpdENTU01hdHJpeCcpLmVudW1lcmFibGUgaXMgZmFsc2UKIFBBU1Mg
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRDU1NNYXRyaXgn
KS5jb25maWd1cmFibGUgaXMgdHJ1ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS52YWx1ZSBpcyBXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
Z2xvYmFsLCAnV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZScpLmhhc093blByb3BlcnR5KCdnZXQn
KSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwg
J1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFs
c2UKLVBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsICdXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlJykuZW51bWVyYWJsZSBpcyBmYWxzZQotUEFTUyBPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUn
KS5jb25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKGdsb2JhbCwgJ1dlYktpdENTU1JlZ2lvblJ1bGUnKS52YWx1ZSBpcyBXZWJLaXRDU1NSZWdp
b25SdWxlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCAnV2Vi
S2l0Q1NTUmVnaW9uUnVsZScpLmhhc093blByb3BlcnR5KCdnZXQnKSBpcyBmYWxzZQogUEFTUyBP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGdsb2JhbCwgJ1dlYktpdENTU1JlZ2lvblJ1
bGUnKS5oYXNPd25Qcm9wZXJ0eSgnc2V0JykgaXMgZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMWY4MzU3ZS4uYmQzMmQ1NCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTQyLDkgKzQyLDYgQEAgY3NzMy9m
aWx0ZXJzL2VmZmVjdC1vcGFjaXR5LWh3Lmh0bWwKIGNzczMvZmlsdGVycy9lZmZlY3Qtc2F0dXJh
dGUtaHcuaHRtbAogY3NzMy9maWx0ZXJzL2VmZmVjdC1zZXBpYS1ody5odG1sCiAKLSMgQ3VzdG9t
IGZpbHRlcnMgbm90IHlldCBzdXBwb3J0ZWQgb24gV2luZG93cwotY3NzMy9maWx0ZXJzL2N1c3Rv
bQotCiAjIFJlbW92ZSBmcm9tIGxpc3QgYWZ0ZXIgZW5hYmxpbmcgQ0FOVkFTX1BBVEgKIGZhc3Qv
Y2FudmFzL2NhbnZhcy1jdXJyZW50UGF0aC5odG1sCiBmYXN0L2NhbnZhcy9jYW52YXMtcGF0aC1j
b25zdHJ1Y3RvcnMuaHRtbApAQCAtMjQ0Myw3ICsyNDQwLDYgQEAgY29tcG9zaXRpbmcvZmlsdGVy
cy9zdy1uZXN0ZWQtc2hhZG93LW92ZXJsYXBzLWh3LW5lc3RlZC1zaGFkb3cuaHRtbAogY29tcG9z
aXRpbmcvaWZyYW1lcy9pZnJhbWUtc2l6ZS1mcm9tLXplcm8uaHRtbAogY29tcG9zaXRpbmcvaWZy
YW1lcy9vdmVybGFwcGVkLWlmcmFtZS1pZnJhbWUuaHRtbAogY29tcG9zaXRpbmcvdGlsaW5nL3Rp
bGVkLWxheWVyLXJlc2l6ZS5odG1sCi1jc3MzL2ZpbHRlcnMvY3VzdG9tLXdpdGgtYXQtcnVsZS1z
eW50YXgvcGFyc2luZy1jdXN0b20tZnVuY3Rpb24tdmFsaWQuaHRtbAogZWRpdGluZy9pbnB1dC9p
bWUtY29tcG9zaXRpb24tY2xlYXJwcmVlZGl0Lmh0bWwKIGZhc3QvY2FudmFzL2NhbnZhcy1jb21w
b3NpdGUtYWxwaGEuaHRtbAogZmFzdC9jYW52YXMvY2FudmFzLXF1YWRyYXRpYy1zYW1lLWVuZHBv
aW50Lmh0bWwKQEAgLTI0NzksOSArMjQ3NSw2IEBAIHdlYmtpdC5vcmcvYi82MTEzOCBodHRwL3Rl
c3RzL3czYy93ZWJwZXJmL3N1Ym1pc3Npb24vSW50ZWwvcmVzb3VyY2UtdGltaW5nCiAjIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NTQyOAogd2Via2l0Lm9yZy9iLzEw
MTY3MCBtZWRpYS92aWRlby1jb250cm9scy1jYXB0aW9ucy5odG1sIFsgU2tpcCBdCiAKLSMgYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTEyMzUKLWNzczMvZmlsdGVycy9jdXN0b20t
d2l0aC1hdC1ydWxlLXN5bnRheAotCiAjIGJ1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTEwNDQ3CiBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWNoYW5nZWQtdGV4dC5odG1sCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDA0
NDY0YTcuLjM0NDdmN2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJv
L1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVz
dEV4cGVjdGF0aW9ucwpAQCAtNTY1LDkgKzU2NSw2IEBAIGNzczMvZmlsdGVycy9lZmZlY3Qtb3Bh
Y2l0eS1ody5odG1sCiBjc3MzL2ZpbHRlcnMvZWZmZWN0LXNhdHVyYXRlLWh3Lmh0bWwKIGNzczMv
ZmlsdGVycy9lZmZlY3Qtc2VwaWEtaHcuaHRtbAogCi0jIEN1c3RvbSBmaWx0ZXJzIG5vdCB5ZXQg
c3VwcG9ydGVkIG9uIFdpbmRvd3MKLWNzczMvZmlsdGVycy9jdXN0b20KLQogIyBOZWVkcyByZWJh
c2VsaW5lIGFmdGVyIGJ1ZyA5NzIxNyBpcyBmaXhlZAogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9OTczMjUKIGNzczMvbWFza2luZy9jbGlwLXBhdGgtY2lyY2xlLXJl
bGF0aXZlLW92ZXJmbG93Lmh0bWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGQ3ZDRlNzYu
LmI4NDNhNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE0
LTAxLTIzICBNYXggVnVqb3ZpYyAgPG12dWpvdmljQGFkb2JlLmNvbT4KKworICAgICAgICBSZW1v
dmUgQ1NTIEN1c3RvbSBGaWx0ZXJzIGNvZGUgYW5kIHRlc3RzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjczODIKKworICAgICAgICBSZXZpZXdlZCBi
eSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5l
cy54Y2NvbmZpZzoKKwogMjAxNC0wMS0yMiAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxl
LmNvbT4KIAogICAgICAgICBbV2luXSBVcGRhdGUgcHJvamVjdCBhbmQgc29sdXRpb24gZmlsZXMg
Zm9yIDY0LWJpdCBidWlsZHMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29u
ZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggMWQyODNhMS4u
NWEzZjZhOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25z
L0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25m
aWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNTAsNyArNTAsNiBAQCBFTkFC
TEVfQ1NTX0ZJTFRFUlMgPSBFTkFCTEVfQ1NTX0ZJTFRFUlM7CiBFTkFCTEVfQ1NTX0lNQUdFX09S
SUVOVEFUSU9OID0gOwogRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OID0gOwogRU5BQkxFX0NT
U19SRUdJT05TID0gRU5BQkxFX0NTU19SRUdJT05TOwotRU5BQkxFX0NTU19TSEFERVJTID0gRU5B
QkxFX0NTU19TSEFERVJTOwogRU5BQkxFX0NTU19TSEFQRVMgPSBFTkFCTEVfQ1NTX1NIQVBFUzsK
IEVOQUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9OID0gRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT047
CiBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEID0gRU5BQkxFX0NT
U19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRDsKQEAgLTE5Nyw0ICsxOTYsNCBAQCBF
TkFCTEVfWFNMVCA9IEVOQUJMRV9YU0xUOwogRU5BQkxFX0ZUTF9KSVQgPSA7CiBFTkFCTEVfTExJ
TlRfQ19MT09QID0gOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcp
ICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZF
UkZMT1dfU0NST0xMSU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05J
TkcpICQoRU5BQkxFX0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxF
X0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9E
RUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19E
RVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19G
SUxURVJTKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFH
RV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQURFUlMp
ICQoRU5BQkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04pICQoRU5B
QkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCkgJChFTkFCTEVfQ1NTM19D
T05ESVRJT05BTF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DU1MzX1RFWFRf
TElORV9CUkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9T
Q0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFM
SVNUX0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJ
TFNfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RP
UllfVVBMT0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJB
R0dBQkxFX1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBU
RURfTUVESUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMp
ICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9M
T0NBVElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5B
QkxFX0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJB
TUVfU0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJ
KSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5B
QkxFX0lOUFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZ
UEVfREFURVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQ
TEFZKSAkKEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RF
QlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVH
QUNZX05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5B
QkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5L
X1BSRUZFVENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQ
VCkgJChFTkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVO
QUJMRV9NRVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09S
X1NDQUxFKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJ
Q0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BM
VUdJTikgJChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1Nf
RUxFTUVOVCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQo
RU5BQkxFX1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVF
U1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9S
RVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxF
X1NIQURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lO
VEhFU0lTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkg
JChFTkFCTEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMp
ICQoRU5BQkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChF
TkFCTEVfVE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxF
X1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQo
RU5BQkxFX1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJf
QU5JTUFUSU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVO
QUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykg
JChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQo
RU5BQkxFX0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7
CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VM
RVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5H
KSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NB
TlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FH
SU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFL
KSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElP
TikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJM
RV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAk
KEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NU
SUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJ
WEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQp
ICQoRU5BQkxFX0NTUzNfVEVYVF9MSU5FX0JSRUFLKSAkKEVOQUJMRV9DVVJTT1JfVklTSUJJTElU
WSkgJChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKSAkKEVOQUJMRV9EQVNIQk9BUkRfU1VQ
UE9SVCkgJChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9J
VEVNUykgJChFTkFCTEVfREVUQUlMU19FTEVNRU5UKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJ
T04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5BQkxFX0RPTTRfRVZFTlRTX0NPTlNU
UlVDVE9SKSAkKEVOQUJMRV9EUkFHR0FCTEVfUkVHSU9OKSAkKEVOQUJMRV9FTkNSWVBURURfTUVE
SUEpICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQV9WMikgJChFTkFCTEVfRklMVEVSUykgJChFTkFC
TEVfRk9OVF9MT0FEX0VWRU5UUykgJChFTkFCTEVfRlVMTFNDUkVFTl9BUEkpICQoRU5BQkxFX0dB
TUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9ISURERU5fUEFHRV9ET01fVElN
RVJfVEhST1RUTElORykgJChFTkFCTEVfSElHSF9EUElfQ0FOVkFTKSAkKEVOQUJMRV9JQ09OREFU
QUJBU0UpICQoRU5BQkxFX0lGUkFNRV9TRUFNTEVTUykgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFT
RSkgJChFTkFCTEVfSU5ESUVfVUkpICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9DT0xPUikgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUl9QT1BPVkVSKSAkKEVOQUJM
RV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVfSU5DT01QTEVU
RSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBF
X01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VF
SykgJChFTkFCTEVfSU9TX0FJUlBMQVkpICQoRU5BQkxFX0lPU19URVhUX0FVVE9TSVpJTkcpICQo
RU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BS
RUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfTEVHQUNZX1ZF
TkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX1dFQl9BVURJTykgJChFTkFCTEVfTEVUVEVS
UFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVf
TUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01F
RElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01IVE1MKSAk
KEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5BQkxFX05BVklHQVRPUl9DT05URU5UX1VU
SUxTKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJ
KSAkKEVOQUJMRV9QREZLSVRfUExVR0lOKSAkKEVOQUJMRV9QTFVHSU5fUFJPWFlfRk9SX1ZJREVP
KSAkKEVOQUJMRV9QUk9HUkVTU19FTEVNRU5UKSAkKEVOQUJMRV9QUk9NSVNFUykgJChFTkFCTEVf
UFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9R
VU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1JFTU9URV9J
TlNQRUNUT1IpICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFfUVVFUlkpICQoRU5BQkxFX1NDUklQ
VEVEX1NQRUVDSCkgJChFTkFCTEVfU0hBRE9XX0RPTSkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMp
ICQoRU5BQkxFX1NQRUVDSF9TWU5USEVTSVMpICQoRU5BQkxFX1NRTF9EQVRBQkFTRSkgJChFTkFC
TEVfU1VCUElYRUxfTEFZT1VUKSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAkKEVOQUJMRV9TVkcp
ICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVNUExBVEVfRUxFTUVOVCkgJChFTkFCTEVf
VEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9UT1VDSF9FVkVOVFMpICQoRU5BQkxFX1RPVUNIX0lD
T05fTE9BRElORykgJChFTkFCTEVfVVNFUlNFTEVDVF9BTEwpICQoRU5BQkxFX1ZJREVPKSAkKEVO
QUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVfVklFV19NT0RFX0NTU19NRURJQSkgJChFTkFCTEVf
V0VCR0wpICQoRU5BQkxFX1dFQl9BTklNQVRJT05TKSAkKEVOQUJMRV9XRUJfQVVESU8pICQoRU5B
QkxFX1dFQl9SRVBMQVkpICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5H
KSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFJfVElNRU9VVCkgJChFTkFCTEVfWFNMVCkg
JChFTkFCTEVfRlRMX0pJVCkgJChFTkFCTEVfTExJTlRfQ19MT09QKSAkKEZFQVRVUkVfREVGSU5F
U18kKFBMQVRGT1JNX05BTUUpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIv
U291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXggY2UwMDFkMS4uY2FmYzZmNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dURi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxMiBAQAorMjAxNC0wMS0yMyAgTWF4IFZ1am92aWMgIDxtdnVqb3ZpY0BhZG9iZS5jb20+CisK
KyAgICAgICAgUmVtb3ZlIENTUyBDdXN0b20gRmlsdGVycyBjb2RlIGFuZCB0ZXN0cworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI3MzgyCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorCisgICAgICAgICogd3RmL0ZlYXR1cmVEZWZp
bmVzLmg6CisKIDIwMTQtMDEtMjIgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+
CiAKICAgICAgICAgW1dpbl0gVXBkYXRlIHByb2plY3QgYW5kIHNvbHV0aW9uIGZpbGVzIGZvciA2
NC1iaXQgYnVpbGRzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvRmVhdHVyZURlZmluZXMu
aCBiL1NvdXJjZS9XVEYvd3RmL0ZlYXR1cmVEZWZpbmVzLmgKaW5kZXggZmZlNzk3OC4uMDdjODY5
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvRmVhdHVyZURlZmluZXMuaAorKysgYi9Tb3Vy
Y2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCkBAIC00MTYsMTAgKzQxNiw2IEBACiAjZGVmaW5l
IEVOQUJMRV9DU1NfSU1BR0VfU0VUIDAKICNlbmRpZgogCi0jaWYgIWRlZmluZWQoRU5BQkxFX0NT
U19TSEFERVJTKQotI2RlZmluZSBFTkFCTEVfQ1NTX1NIQURFUlMgMAotI2VuZGlmCi0KICNpZiAh
ZGVmaW5lZChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTikKICNkZWZpbmUgRU5BQkxFX0NTU19T
VElDS1lfUE9TSVRJT04gMAogI2VuZGlmCkBAIC04ODQsMTAgKzg4MCw2IEBACiAjZXJyb3IgIkVO
QUJMRShWSURFT19UUkFDSykgcmVxdWlyZXMgRU5BQkxFKFZJREVPKSIKICNlbmRpZgogCi0jaWYg
RU5BQkxFKENTU19TSEFERVJTKSAmJiAhRU5BQkxFKFdFQkdMKQotI2Vycm9yICJFTkFCTEUoQ1NT
X1NIQURFUlMpIHJlcXVpcmVzIEVOQUJMRShXRUJHTCkiCi0jZW5kaWYKLQogI2lmIEVOQUJMRShS
RU1PVEVfSU5TUEVDVE9SKSAmJiAhRU5BQkxFKElOU1BFQ1RPUikKICNlcnJvciAiRU5BQkxFKFJF
TU9URV9JTlNQRUNUT1IpIHJlcXVpcmVzIEVOQUJMRShJTlNQRUNUT1IpIgogI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CmluZGV4IDVmZWIwNzcuLjU5ZDA3ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0
CkBAIC0zMTksMTIgKzMxOSwxMCBAQCBzZXQoV2ViQ29yZV9JRExfRklMRVMKICAgICBjc3MvU3R5
bGVNZWRpYS5pZGwKICAgICBjc3MvU3R5bGVTaGVldC5pZGwKICAgICBjc3MvU3R5bGVTaGVldExp
c3QuaWRsCi0gICAgY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuaWRsCiAgICAgY3NzL1dlYktpdENT
U0ZpbHRlclZhbHVlLmlkbAogICAgIGNzcy9XZWJLaXRDU1NLZXlmcmFtZVJ1bGUuaWRsCiAgICAg
Y3NzL1dlYktpdENTU0tleWZyYW1lc1J1bGUuaWRsCiAgICAgY3NzL1dlYktpdENTU01hdHJpeC5p
ZGwKLSAgICBjc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5pZGwKICAgICBjc3MvV2ViS2l0
Q1NTUmVnaW9uUnVsZS5pZGwKICAgICBjc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaWRsCiAg
ICAgY3NzL1dlYktpdENTU1ZpZXdwb3J0UnVsZS5pZGwKQEAgLTExMTEsMTYgKzExMDksMTEgQEAg
c2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGNzcy9TdHlsZVNoZWV0TGlzdC5jcHAKICAgICBjc3Mv
VHJhbnNmb3JtRnVuY3Rpb25zLmNwcAogICAgIGNzcy9WaWV3cG9ydFN0eWxlUmVzb2x2ZXIuY3Bw
Ci0gICAgY3NzL1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5jcHAKLSAgICBjc3MvV2ViS2l0
Q1NTRmlsdGVyUnVsZS5jcHAKICAgICBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwCiAgICAg
Y3NzL1dlYktpdENTU0tleWZyYW1lUnVsZS5jcHAKICAgICBjc3MvV2ViS2l0Q1NTS2V5ZnJhbWVz
UnVsZS5jcHAKLSAgICBjc3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAKICAgICBjc3Mv
V2ViS2l0Q1NTTWF0cml4LmNwcAotICAgIGNzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNw
cAogICAgIGNzcy9XZWJLaXRDU1NSZWdpb25SdWxlLmNwcAotICAgIGNzcy9XZWJLaXRDU1NTaGFk
ZXJWYWx1ZS5jcHAKICAgICBjc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuY3BwCiAgICAgY3Nz
L1dlYktpdENTU1ZpZXdwb3J0UnVsZS5jcHAKIApAQCAtMTY5OCw3ICsxNjkxLDYgQEAgc2V0KFdl
YkNvcmVfU09VUkNFUwogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5jcHAKICAg
ICBsb2FkZXIvY2FjaGUvQ2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuY3BwCiAgICAgbG9hZGVy
L2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKLSAgICBsb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmNw
cAogICAgIGxvYWRlci9jYWNoZS9DYWNoZWRYU0xTdHlsZVNoZWV0LmNwcAogICAgIGxvYWRlci9j
YWNoZS9NZW1vcnlDYWNoZS5jcHAKIApAQCAtMTk0MSwyMyArMTkzMywxMiBAQCBzZXQoV2ViQ29y
ZV9TT1VSQ0VTCiAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9jcHUvYXJtL2ZpbHRlcnMvRkVMaWdo
dGluZ05FT04uY3BwCiAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
ckNvbXBpbGVkUHJvZ3JhbS5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3Rv
bUZpbHRlckdsb2JhbENvbnRleHQuY3BwCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJNZXNoLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9t
RmlsdGVyTWVzaEdlbmVyYXRvci5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJQcm9ncmFtLmNwcAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJSZW5kZXJlci5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9EaXN0YW50TGlnaHRTb3VyY2UuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmls
dGVycy9GRUJsZW5kLmNwcAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDb2xvck1h
dHJpeC5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ29tcG9uZW50VHJhbnNm
ZXIuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUNvbXBvc2l0ZS5jcHAKICAg
ICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ29udm9sdmVNYXRyaXguY3BwCi0gICAgcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5jcHAKICAgICBwbGF0Zm9ybS9n
cmFwaGljcy9maWx0ZXJzL0ZFRGlmZnVzZUxpZ2h0aW5nLmNwcAogICAgIHBsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvRkVEaXNwbGFjZW1lbnRNYXAuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9GRURyb3BTaGFkb3cuY3BwCkBAIC0xOTc3LDkgKzE5NTgsNiBAQCBzZXQoV2ViQ29y
ZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9Tb3VyY2VBbHBoYS5jcHAK
ICAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1NvdXJjZUdyYXBoaWMuY3BwCiAgICAgcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuY3BwCi0gICAgcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwCi0KLSAg
ICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL3RleG1hcC9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtVGV4dHVyZU1hcHBlci5jcHAKIAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9U
ZXh0dXJlTWFwcGVyLmNwcAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFw
cGVyQmFja2luZ1N0b3JlLmNwcApAQCAtMjI3Miw5ICsyMjUwLDYgQEAgc2V0KFdlYkNvcmVfU09V
UkNFUwogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUJveERhdGEuY3BwCiAgICAgcmVuZGVyaW5n
L3N0eWxlL1N0eWxlQ2FjaGVkSW1hZ2UuY3BwCiAgICAgcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2Fj
aGVkSW1hZ2VTZXQuY3BwCi0gICAgcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmNw
cAotICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uY3BwCi0gICAg
cmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcAogICAgIHJl
bmRlcmluZy9zdHlsZS9TdHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuY3BwCiAgICAgcmVu
ZGVyaW5nL3N0eWxlL1N0eWxlRmlsdGVyRGF0YS5jcHAKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5
bGVGbGV4aWJsZUJveERhdGEuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWY1ZDZkMy4uMWE3N2JjYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE4MiBAQAorMjAxNC0wMS0yMyAgTWF4IFZ1am92aWMgIDxtdnVq
b3ZpY0BhZG9iZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIENTUyBDdXN0b20gRmlsdGVycyBjb2Rl
IGFuZCB0ZXN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTI3MzgyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorCisgICAgICAg
IE5vIG5ldyB0ZXN0cy4gUmVtb3ZpbmcgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAqIENNYWtl
TGlzdHMudHh0OgorICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29u
ZmlnOgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKKyAgICAgICAgKiBEZXJpdmVkU291
cmNlcy5tYWtlOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06CisgICAgICAgICogV2Vi
Q29yZS5vcmRlcjoKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qOgor
ICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVyczoKKyAgICAg
ICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGlu
Z3MvanMvSlNDU1NSdWxlQ3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL0pTQ1NTVmFsdWVDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6dG9KUyk6CisgICAgICAgICogYmluZGluZ3Mvb2JqYy9ET01DU1MubW06CisgICAgICAgIChr
aXRDbGFzcyk6CisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvckZpbHRl
cik6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZh
bHVlKToKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmg6CisgICAg
ICAgICogY3NzL0NTU0dyYW1tYXIueS5pbjoKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlckNvbnRleHQ6OkNTU1BhcnNlckNvbnRleHQpOgor
ICAgICAgICAoV2ViQ29yZTo6b3BlcmF0b3I9PSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJz
ZXI6OkNTU1BhcnNlcik6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OnBhcnNlVmFsdWUp
OgorICAgICAgICAoV2ViQ29yZTo6ZmlsdGVySW5mb0Zvck5hbWUpOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTUGFyc2VyOjpwYXJzZUZpbHRlcik6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6
OmRldGVjdEF0VG9rZW4pOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuaDoKKyAgICAgICAgKiBj
c3MvQ1NTUGFyc2VyTW9kZS5oOgorICAgICAgICAqIGNzcy9DU1NQcm9wZXJ0eU5hbWVzLmluOgor
ICAgICAgICAqIGNzcy9DU1NQcm9wZXJ0eVNvdXJjZURhdGEuaDoKKyAgICAgICAgKiBjc3MvQ1NT
UnVsZS5oOgorICAgICAgICAqIGNzcy9DU1NSdWxlLmlkbDoKKyAgICAgICAgKiBjc3MvQ1NTVmFs
dWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmVxdWFscyk6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NWYWx1ZTo6Y3NzVGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6
ZGVzdHJveSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6Y2xvbmVGb3JDU1NPTSk6Cisg
ICAgICAgICogY3NzL0NTU1ZhbHVlLmg6CisgICAgICAgICogY3NzL0NTU1ZhbHVlS2V5d29yZHMu
aW46CisgICAgICAgICogY3NzL1N0eWxlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U3R5bGVSZXNvbHZlcjo6U3RhdGU6OmNsZWFyKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmVz
b2x2ZXI6OmFwcGx5UHJvcGVydHkpOgorICAgICAgICAoV2ViQ29yZTo6ZmlsdGVyT3BlcmF0aW9u
Rm9yVHlwZSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVyOjpjcmVhdGVGaWx0ZXJP
cGVyYXRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmVzb2x2ZXI6OmxvYWRQZW5kaW5n
UmVzb3VyY2VzKToKKyAgICAgICAgKiBjc3MvU3R5bGVSZXNvbHZlci5oOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGVSZXNvbHZlcjo6U3RhdGU6OlN0YXRlKToKKyAgICAgICAgKiBjc3MvU3R5bGVS
dWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUnVsZUJhc2U6OmRlc3Ryb3kpOgorICAg
ICAgICAoV2ViQ29yZTo6U3R5bGVSdWxlQmFzZTo6Y29weSk6CisgICAgICAgIChXZWJDb3JlOjpT
dHlsZVJ1bGVCYXNlOjpjcmVhdGVDU1NPTVdyYXBwZXIpOgorICAgICAgICAqIGNzcy9TdHlsZVJ1
bGUuaDoKKyAgICAgICAgKiBjc3MvU3R5bGVTaGVldENvbnRlbnRzLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OmNoaWxkUnVsZXNIYXZlRmFpbGVkT3JDYW5jZWxlZFN1YnJlc291cmNlcyk6CisgICAg
ICAgICogY3NzL1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5jcHA6IFJlbW92ZWQuCisgICAg
ICAgICogY3NzL1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5oOiBSZW1vdmVkLgorICAgICAg
ICAqIGNzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5oOiBSZW1vdmVkLgorICAgICAgICAqIGNzcy9XZWJLaXRDU1NG
aWx0ZXJSdWxlLmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViS2l0Q1NTRmlsdGVyVmFsdWU6OldlYktpdENT
U0ZpbHRlclZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OldlYktpdENTU0ZpbHRlclZhbHVlOjpj
dXN0b21DU1NUZXh0KToKKyAgICAgICAgKiBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaDoKKyAg
ICAgICAgKiBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsOgorICAgICAgICAqIGNzcy9XZWJL
aXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MvV2ViS2l0
Q1NTTWF0RnVuY3Rpb25WYWx1ZS5oOiBSZW1vdmVkLgorICAgICAgICAqIGNzcy9XZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlLmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MvV2ViS2l0Q1NTTWl4
RnVuY3Rpb25WYWx1ZS5oOiBSZW1vdmVkLgorICAgICAgICAqIGNzcy9XZWJLaXRDU1NNaXhGdW5j
dGlvblZhbHVlLmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBjc3MvV2ViS2l0Q1NTU2hhZGVyVmFs
dWUuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIGNzcy9XZWJLaXRDU1NTaGFkZXJWYWx1ZS5oOiBS
ZW1vdmVkLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpkZWZhdWx0UHJpb3JpdHlGb3JSZXNvdXJjZVR5cGUpOgorICAgICAgICAq
IGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVSZXNvdXJj
ZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2hlY2tJbnNlY3Vy
ZUNvbnRlbnQpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNhblJl
cXVlc3QpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oOgor
ICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuY3BwOiBSZW1vdmVkLgorICAgICAg
ICAqIGxvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBwYWdl
L1NldHRpbmdzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpTZXR0aW5ncyk6Cisg
ICAgICAgICogcGFnZS9TZXR0aW5ncy5oOgorICAgICAgICAqIHBhZ2UvYW5pbWF0aW9uL0NTU1By
b3BlcnR5QW5pbWF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmJsZW5kRmlsdGVyKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvUGxhdGZvcm1DQUxheWVyTWFjLm1tOgor
ICAgICAgICAoUGxhdGZvcm1DQUxheWVyTWFjOjpmaWx0ZXJzQ2FuQmVDb21wb3NpdGVkKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckFycmF5UGFyYW1l
dGVyLmg6IFJlbW92ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oOiBSZW1vdmVkLgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcDogUmVtb3ZlZC4K
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbXBpbGVk
UHJvZ3JhbS5oOiBSZW1vdmVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyQ29uc3RhbnRzLmg6IFJlbW92ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcDogUmVtb3ZlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckdsb2JhbENvbnRl
eHQuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3Rv
bUZpbHRlck1lc2guY3BwOiBSZW1vdmVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5oOiBSZW1vdmVkLgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHA6IFJlbW92ZWQuCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJh
dG9yLmg6IFJlbW92ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHA6IFJlbW92ZWQuCisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24uaDog
UmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
clBhcmFtZXRlci5oOiBSZW1vdmVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHA6IFJlbW92ZWQuCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0Lmg6IFJlbW92
ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9n
cmFtLmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1
c3RvbUZpbHRlclByb2dyYW0uaDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaDogUmVtb3ZlZC4KKyAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1JbmZvLmNwcDog
UmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
clByb2dyYW1JbmZvLmg6IFJlbW92ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmls
dGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5jcHA6IFJlbW92ZWQuCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5oOiBSZW1vdmVkLgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFy
YW1ldGVyLmg6IFJlbW92ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaDogUmVt
b3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmlsdGVy
LmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3Vz
dG9tRmlsdGVyLmg6IFJlbW92ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9GaWx0ZXJPcGVyYXRpb24uaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0ZpbHRlck9wZXJhdGlvbnMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RmlsdGVyT3BlcmF0aW9u
czo6b3V0c2V0cyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJP
cGVyYXRpb25zLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9WYWxpZGF0
ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwOiBSZW1vdmVkLgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmg6IFJlbW92
ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy90ZXhtYXAvQ3VzdG9tRmls
dGVyVmFsaWRhdGVkUHJvZ3JhbVRleHR1cmVNYXBwZXIuY3BwOiBSZW1vdmVkLgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvdGV4bWFwL1RleHR1cmVNYXBwZXJQbGF0Zm9ybUNv
bXBpbGVkUHJvZ3JhbS5oOiBSZW1vdmVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dw
dS9UZXh0dXJlLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVy
ZU1hcHBlci5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFw
cGVyR0wuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0UGFzc2VzUmVxdWlyZWRGb3JGaWx0ZXIp
OgorICAgICAgICAoV2ViQ29yZTo6Qml0bWFwVGV4dHVyZUdMOjphcHBseUZpbHRlcnMpOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wuaDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29tcG9zaXRpbmdDb29y
ZGluYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb21wb3NpdGluZ0Nvb3JkaW5hdG9yOjpj
bGVhclBlbmRpbmdTdGF0ZUNoYW5nZXMpOgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zaXRpbmdD
b29yZGluYXRvcjo6c3luY0xheWVyU3RhdGUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L3RleG1hcC9jb29yZGluYXRlZC9Db21wb3NpdGluZ0Nvb3JkaW5hdG9yLmg6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmls
dGVyT3BlcmF0aW9uLmg6IFJlbW92ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4
bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oOiBSZW1vdmVk
LgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGlu
YXRlZEdyYXBoaWNzU2NlbmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRHcmFw
aGljc1NjZW5lOjpzZXRMYXllckZpbHRlcnNJZk5lZWRlZCk6CisgICAgICAgIChXZWJDb3JlOjpD
b29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmNvbW1pdFNjZW5lU3RhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpzZXRMYXllckFuaW1hdGlvbnNJZk5lZWRl
ZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3Jk
aW5hdGVkR3JhcGhpY3NTY2VuZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU3RhdGUuaDoKKyAgICAgICAgKiByZW5k
ZXJpbmcvRmlsdGVyRWZmZWN0UmVuZGVyZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RmlsdGVy
RWZmZWN0UmVuZGVyZXI6OkZpbHRlckVmZmVjdFJlbmRlcmVyKToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbHRlckVmZmVjdFJlbmRlcmVyOjpidWlsZCk6CisgICAgICAgIChXZWJDb3JlOjpGaWx0ZXJF
ZmZlY3RSZW5kZXJlcjo6Y29tcHV0ZVNvdXJjZUltYWdlUmVjdEZvckRpcnR5UmVjdCk6CisgICAg
ICAgICogcmVuZGVyaW5nL0ZpbHRlckVmZmVjdFJlbmRlcmVyLmg6CisgICAgICAgICogcmVuZGVy
aW5nL1JlbmRlckxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjpzZXRG
aWx0ZXJCYWNrZW5kTmVlZHNSZXBhaW50aW5nSW5SZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckxheWVyOjpjYWxjdWxhdGVDbGlwUmVjdHMpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJMYXllci5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVGaWx0ZXJzKToKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckxheWVyOjpGaWx0ZXJJbmZvOjp+RmlsdGVySW5mbyk6CisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlckxheWVyRmlsdGVySW5mby5oOgorICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJWaWV3LmNwcDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVmlldy5oOgorICAgICAg
ICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZFNoYWRlci5jcHA6IFJlbW92ZWQuCisgICAg
ICAgICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmg6IFJlbW92ZWQuCisgICAg
ICAgICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHA6IFJlbW92
ZWQuCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5o
OiBSZW1vdmVkLgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW1DYWNoZS5jcHA6IFJlbW92ZWQuCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmg6IFJlbW92ZWQuCisgICAgICAgICogcmVuZGVyaW5n
L3N0eWxlL1N0eWxlUGVuZGluZ1NoYWRlci5oOiBSZW1vdmVkLgorICAgICAgICAqIHJlbmRlcmlu
Zy9zdHlsZS9TdHlsZVNoYWRlci5oOiBSZW1vdmVkLgorCiAyMDE0LTAxLTIzICBwZWF2b0BvdXRs
b29rLmNvbSAgPHBlYXZvQG91dGxvb2suY29tPgogCiAgICAgICAgIFtDdXJsXSBUaGVyZSBpcyBu
byB3YXkgdG8gc3BlY2lmeSBjYWNoZSBmb2xkZXIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL1NvdXJjZS9XZWJDb3Jl
L0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCmluZGV4IDFkMjgzYTEuLjVh
M2Y2YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVE
ZWZpbmVzLnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1
cmVEZWZpbmVzLnhjY29uZmlnCkBAIC01MCw3ICs1MCw2IEBAIEVOQUJMRV9DU1NfRklMVEVSUyA9
IEVOQUJMRV9DU1NfRklMVEVSUzsKIEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04gPSA7CiBF
TkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04gPSA7CiBFTkFCTEVfQ1NTX1JFR0lPTlMgPSBFTkFC
TEVfQ1NTX1JFR0lPTlM7Ci1FTkFCTEVfQ1NTX1NIQURFUlMgPSBFTkFCTEVfQ1NTX1NIQURFUlM7
CiBFTkFCTEVfQ1NTX1NIQVBFUyA9IEVOQUJMRV9DU1NfU0hBUEVTOwogRU5BQkxFX0NTU19TVElD
S1lfUE9TSVRJT04gPSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTjsKIEVOQUJMRV9DU1NfVFJB
TlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQgPSBFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5J
TUFUSU9OU19VTlBSRUZJWEVEOwpAQCAtMTk3LDQgKzE5Niw0IEBAIEVOQUJMRV9YU0xUID0gRU5B
QkxFX1hTTFQ7CiBFTkFCTEVfRlRMX0pJVCA9IDsKIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAK
LUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxF
UkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcp
ICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FO
VkFTX1BBVEgpICQoRU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJ
TkcpICQoRU5BQkxFX0NTUF9ORVhUKSAkKEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUsp
ICQoRU5BQkxFX0NTU19DT01QT1NJVElORykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9O
KSAkKEVOQUJMRV9DU1NfRVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxF
X0NTU19JTUFHRV9PUklFTlRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQo
RU5BQkxFX0NTU19SRUdJT05TKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfQ1NTX1NI
QVBFUykgJChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9S
TVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVT
KSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxFX0NTUzNfVEVYVF9MSU5FX0JSRUFLKSAkKEVO
QUJMRV9DVVJTT1JfVklTSUJJTElUWSkgJChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKSAk
KEVOQUJMRV9EQVNIQk9BUkRfU1VQUE9SVCkgJChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCkgJChF
TkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMU19FTEVNRU5UKSAkKEVO
QUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5B
QkxFX0RPTTRfRVZFTlRTX0NPTlNUUlVDVE9SKSAkKEVOQUJMRV9EUkFHR0FCTEVfUkVHSU9OKSAk
KEVOQUJMRV9FTkNSWVBURURfTUVESUEpICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQV9WMikgJChF
TkFCTEVfRklMVEVSUykgJChFTkFCTEVfRk9OVF9MT0FEX0VWRU5UUykgJChFTkFCTEVfRlVMTFND
UkVFTl9BUEkpICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJM
RV9ISURERU5fUEFHRV9ET01fVElNRVJfVEhST1RUTElORykgJChFTkFCTEVfSElHSF9EUElfQ0FO
VkFTKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lGUkFNRV9TRUFNTEVTUykgJChF
TkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5ESUVfVUkpICQoRU5BQkxFX0lOUFVU
X1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUikgJChFTkFCTEVfSU5QVVRfVFlQRV9D
T0xPUl9QT1BPVkVSKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxFX0lOUFVUX1RZ
UEVfREFURVRJTUVfSU5DT01QTEVURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FM
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQo
RU5BQkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSU9TX0FJUlBMQVkpICQoRU5BQkxFX0lP
U19URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxF
X0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9O
UykgJChFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX1dFQl9B
VURJTykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5B
QkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJ
QV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1F
TlQpICQoRU5BQkxFX01IVE1MKSAkKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5BQkxF
X05BVklHQVRPUl9DT05URU5UX1VUSUxTKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJM
RV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QREZLSVRfUExVR0lOKSAkKEVOQUJMRV9Q
TFVHSU5fUFJPWFlfRk9SX1ZJREVPKSAkKEVOQUJMRV9QUk9HUkVTU19FTEVNRU5UKSAkKEVOQUJM
RV9QUk9NSVNFUykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NV
RkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJB
TUUpICQoRU5BQkxFX1JFTU9URV9JTlNQRUNUT1IpICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFf
UVVFUlkpICQoRU5BQkxFX1NDUklQVEVEX1NQRUVDSCkgJChFTkFCTEVfU0hBRE9XX0RPTSkgJChF
TkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX1NQRUVDSF9TWU5USEVTSVMpICQoRU5BQkxF
X1NRTF9EQVRBQkFTRSkgJChFTkFCTEVfU1VCUElYRUxfTEFZT1VUKSAkKEVOQUJMRV9TVUJUTEVf
Q1JZUFRPKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVNUExB
VEVfRUxFTUVOVCkgJChFTkFCTEVfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9UT1VDSF9FVkVO
VFMpICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElORykgJChFTkFCTEVfVVNFUlNFTEVDVF9BTEwp
ICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChFTkFCTEVfVklFV19NT0RF
X0NTU19NRURJQSkgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxFX1dFQl9BTklNQVRJT05TKSAkKEVO
QUJMRV9XRUJfQVVESU8pICQoRU5BQkxFX1dFQl9SRVBMQVkpICQoRU5BQkxFX1dFQl9TT0NLRVRT
KSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFJfVElN
RU9VVCkgJChFTkFCTEVfWFNMVCkgJChFTkFCTEVfRlRMX0pJVCkgJChFTkFCTEVfTExJTlRfQ19M
T09QKSAkKEZFQVRVUkVfREVGSU5FU18kKFBMQVRGT1JNX05BTUUpKTsKK0ZFQVRVUkVfREVGSU5F
UyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FOVkFT
KSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF9PVkVSRkxPV19TQ1JPTExJTkcpICQoRU5BQkxFX0JMT0Ip
ICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5B
QkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NT
UF9ORVhUKSAkKEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19D
T01QT1NJVElORykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1Nf
RVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19JTUFHRV9PUklF
TlRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJ
T05TKSAkKEVOQUJMRV9DU1NfU0hBUEVTKSAkKEVOQUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9OKSAk
KEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VOUFJFRklYRUQpICQoRU5BQkxFX0NT
UzNfQ09ORElUSU9OQUxfUlVMRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1NTM19U
RVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNU
T01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9E
QVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9E
RVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRElS
RUNUT1JZX1VQTE9BRCkgJChFTkFCTEVfRE9NNF9FVkVOVFNfQ09OU1RSVUNUT1IpICQoRU5BQkxF
X0RSQUdHQUJMRV9SRUdJT04pICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRU5D
UllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GT05UX0xPQURfRVZF
TlRTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVf
R0VPTE9DQVRJT04pICQoRU5BQkxFX0hJRERFTl9QQUdFX0RPTV9USU1FUl9USFJPVFRMSU5HKSAk
KEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVf
SUZSQU1FX1NFQU1MRVNTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRJ
RV9VSSkgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFU
RSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBV
VF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxF
X0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JT1Nf
QUlSUExBWSkgJChFTkFCTEVfSU9TX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfSkFWQVNDUklQ
VF9ERUJVR0dFUikgJChFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxF
X0xFR0FDWV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTKSAk
KEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElPKSAkKEVOQUJMRV9MRVRURVJQUkVTUykgJChFTkFCTEVf
TElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9DT05UUk9MU19T
Q1JJUFQpICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykg
JChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01PVVNFX0NV
UlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFWSUdBVE9SX0NPTlRFTlRfVVRJTFMpICQoRU5BQkxFX05P
VElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BERktJ
VF9QTFVHSU4pICQoRU5BQkxFX1BMVUdJTl9QUk9YWV9GT1JfVklERU8pICQoRU5BQkxFX1BST0dS
RVNTX0VMRU1FTlQpICQoRU5BQkxFX1BST01JU0VTKSAkKEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRT
KSAkKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1QpICQoRU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9S
RVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfUkVNT1RFX0lOU1BFQ1RPUikgJChFTkFC
TEVfUkVTT0xVVElPTl9NRURJQV9RVUVSWSkgJChFTkFCTEVfU0NSSVBURURfU1BFRUNIKSAkKEVO
QUJMRV9TSEFET1dfRE9NKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1BFRUNI
X1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVUJQSVhFTF9MQVlP
VVQpICQoRU5BQkxFX1NVQlRMRV9DUllQVE8pICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0ZP
TlRTKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5UKSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcp
ICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVO
QUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNL
KSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVf
V0VCX0FOSU1BVElPTlMpICQoRU5BQkxFX1dFQl9BVURJTykgJChFTkFCTEVfV0VCX1JFUExBWSkg
JChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dFQl9USU1JTkcpICQoRU5BQkxFX1dPUktF
UlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVOQUJMRV9YU0xUKSAkKEVOQUJMRV9GVExfSklU
KSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRkVBVFVSRV9ERUZJTkVTXyQoUExBVEZPUk1fTkFN
RSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCmluZGV4IGEyZDUzZDYuLjA2ZmU5NzIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAgLTQ4NCw5ICs0ODQsNiBAQAogI2luY2x1ZGUg
IkpTVmFsaWRpdHlTdGF0ZS5jcHAiCiAjaW5jbHVkZSAiSlNWb2lkQ2FsbGJhY2suY3BwIgogI2lu
Y2x1ZGUgIkpTV2ViS2l0QW5pbWF0aW9uRXZlbnQuY3BwIgotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSNpbmNsdWRlICJKU1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwIgotI2VuZGlmCiAjaWYgRU5B
QkxFKENTU19GSUxURVJTKQogI2luY2x1ZGUgIkpTV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwIgog
I2VuZGlmCkBAIC00OTQsOSArNDkxLDYgQEAKICNpbmNsdWRlICJKU1dlYktpdENTU0tleWZyYW1l
c1J1bGUuY3BwIgogI2luY2x1ZGUgIkpTV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuY3BwIgogI2lu
Y2x1ZGUgIkpTV2ViS2l0Q1NTTWF0cml4LmNwcCIKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0j
aW5jbHVkZSAiSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCIKLSNlbmRpZgogI2luY2x1
ZGUgIkpTV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAiCiAjaW5jbHVkZSAiSlNXZWJLaXROYW1lZEZs
b3cuY3BwIgogI2luY2x1ZGUgIkpTV2ViS2l0UG9pbnQuY3BwIgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLm1ha2UKaW5kZXggNGY4OTRhYS4uMjcyYzcyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy5tYWtlCkBAIC0yMzYsMTEgKzIzNiw5IEBAIEJJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNv
cmUpL2Nzcy9TdHlsZVNoZWV0LmlkbCBcCiAgICAgJChXZWJDb3JlKS9jc3MvU3R5bGVTaGVldExp
c3QuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5pZGwgXAot
ICAgICQoV2ViQ29yZSkvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuaWRsIFwKICAgICAkKFdlYkNv
cmUpL2Nzcy9XZWJLaXRDU1NLZXlmcmFtZVJ1bGUuaWRsIFwKICAgICAkKFdlYkNvcmUpL2Nzcy9X
ZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NT
TWF0cml4LmlkbCBcCi0gICAgJChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1
ZS5pZGwgXAogICAgICQoV2ViQ29yZSkvY3NzL1dlYktpdENTU1JlZ2lvblJ1bGUuaWRsIFwKICAg
ICAkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5pZGwgXAogICAgICQoV2Vi
Q29yZSkvY3NzL1dlYktpdENTU1ZpZXdwb3J0UnVsZS5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbSBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxl
Lmxpc3QuYW0KaW5kZXggNWNlYmJjNi4uMDRkNGQxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvR05VbWFrZWZpbGUubGlzdC5hbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5s
aXN0LmFtCkBAIC03OTMsOCArNzkzLDYgQEAgd2ViY29yZV9idWlsdF9zb3VyY2VzICs9IFwKIAlE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5oIFwKIAlE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0QW5pbWF0aW9uRXZlbnQuY3BwIFwKIAlEZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0QW5pbWF0aW9uRXZlbnQuaCBcCi0JRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwIFwKLQlEZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTV2ViS2l0Q1NTRmlsdGVyUnVsZS5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dl
YktpdENTU0tleWZyYW1lUnVsZS5jcHAgXApAQCAtODAzLDggKzgwMSw2IEBAIHdlYmNvcmVfYnVp
bHRfc291cmNlcyArPSBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYktpdENTU0tleWZy
YW1lc1J1bGUuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYktpdENTU01hdHJpeC5j
cHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRDU1NNYXRyaXguaCBcCi0JRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwIFwKLQlE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIFwKIAlE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAgXAogCURlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNXZWJLaXRDU1NSZWdpb25SdWxlLmggXAogCURlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAgXApAQCAtMTMzMywxMiAr
MTMyOSwxMCBAQCBkb21fYmluZGluZ19pZGxzICs9IFwKIAkkKFdlYkNvcmUpL2Nzcy9TdHlsZU1l
ZGlhLmlkbCBcCiAJJChXZWJDb3JlKS9jc3MvU3R5bGVTaGVldC5pZGwgXAogCSQoV2ViQ29yZSkv
Y3NzL1N0eWxlU2hlZXRMaXN0LmlkbCBcCi0JJChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NTRmlsdGVy
UnVsZS5pZGwgXAogCSQoV2ViQ29yZSkvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmlkbCBcCiAJ
JChXZWJDb3JlKS9jc3MvV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmlkbCBcCiAJJChXZWJDb3JlKS9j
c3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5pZGwgXAogCSQoV2ViQ29yZSkvY3NzL1dlYktpdENT
U01hdHJpeC5pZGwgXAotCSQoV2ViQ29yZSkvY3NzL1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUu
aWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9XZWJLaXRDU1NSZWdpb25SdWxlLmlkbCBcCiAJJChXZWJD
b3JlKS9jc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9X
ZWJLaXRDU1NWaWV3cG9ydFJ1bGUuaWRsIFwKQEAgLTI3MTYsMTAgKzI3MTAsNiBAQCB3ZWJjb3Jl
X3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2Nzcy9UcmFuc2Zvcm1GdW5jdGlvbnMuaCBc
CiAJU291cmNlL1dlYkNvcmUvY3NzL1ZpZXdwb3J0U3R5bGVSZXNvbHZlci5jcHAgXAogCVNvdXJj
ZS9XZWJDb3JlL2Nzcy9WaWV3cG9ydFN0eWxlUmVzb2x2ZXIuaCBcCi0JU291cmNlL1dlYkNvcmUv
Y3NzL1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2Nz
cy9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuaCBcCi0JU291cmNlL1dlYkNvcmUvY3NzL1dl
YktpdENTU0ZpbHRlclJ1bGUuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmls
dGVyUnVsZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3Bw
IFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCBcCiAJU291cmNl
L1dlYkNvcmUvY3NzL1dlYktpdENTU0tleWZyYW1lUnVsZS5jcHAgXApAQCAtMjcyOCwxNCArMjcx
OCw4IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENT
U0tleWZyYW1lc1J1bGUuaCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01hdHJpeC5j
cHAgXAogCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNYXRyaXguaCBcCi0JU291cmNlL1dl
YkNvcmUvY3NzL1dlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwIFwKLQlTb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5oIFwKLQlTb3VyY2UvV2ViQ29yZS9jc3Mv
V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlLmggXAogCVNvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NS
ZWdpb25SdWxlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1JlZ2lvblJ1bGUu
aCBcCi0JU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmNwcCBcCi0JU291
cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1NoYWRlclZhbHVlLmggXAogCVNvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2Nzcy9X
ZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NT
Vmlld3BvcnRSdWxlLmNwcCBcCkBAIC0zOTQ1LDggKzM5MjksNiBAQCB3ZWJjb3JlX3NvdXJjZXMg
Kz0gXAogCVNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3RJ
bml0aWF0b3JzLmggXAogCVNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQu
Y3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmggXAotCVNv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuY3BwIFwKLQlTb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmggXAogCVNvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRTdHlsZVNoZWV0Q2xpZW50LmggXAogCVNvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRUZXh0VHJhY2suY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkVGV4dFRyYWNrLmggXApAQCAtNDYyNCwxMiArNDYwNiw2IEBAIHdlYmNvcmVfc291
cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkSW1h
Z2UuaCBcCiAJU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkSW1hZ2VT
ZXQuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFn
ZVNldC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFk
ZXIuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRTaGFk
ZXIuaCBcCi0JU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3Rv
bUZpbHRlclByb2dyYW0uaCBcCi0JU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmggXAogCVNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9TdHlsZURhc2hib2FyZFJlZ2lvbi5oIFwKIAlTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVEZXByZWNhdGVkRmxleGlibGVCb3hEYXRhLmNwcCBcCiAJ
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94
RGF0YS5oIFwKQEAgLTQ2NTEsMTMgKzQ2MjcsMTEgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVNdWx0aUNvbERhdGEuY3BwIFwKIAlT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVNdWx0aUNvbERhdGEuaCBcCiAJU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUGVuZGluZ0ltYWdlLmggXAotCVNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVBlbmRpbmdTaGFkZXIuaCBcCiAJU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwIFwKIAlT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oIFwK
IAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0
YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhl
cml0ZWREYXRhLmggXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJlZmxl
Y3Rpb24uaCBcCi0JU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlU2hhZGVyLmgg
XAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVN1cnJvdW5kRGF0YS5jcHAg
XAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVN1cnJvdW5kRGF0YS5oIFwK
IAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUcmFuc2Zvcm1EYXRhLmNwcCBc
CkBAIC01NjUwLDM1ICs1NjI0LDYgQEAgcGxhdGZvcm1fc291cmNlcyArPSBcCiAJU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0ZXJzL0ZFR2F1c3NpYW5CbHVyTkVP
Ti5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jcHUvYXJtL2ZpbHRlcnMv
RkVMaWdodGluZ05FT04uY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
cHUvYXJtL2ZpbHRlcnMvRkVMaWdodGluZ05FT04uaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlci5oIFwKLQlTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbG9yUGFy
YW1ldGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3Vz
dG9tRmlsdGVyQ29uc3RhbnRzLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHAgXAotCVNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIFwK
LQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1l
c2guY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3Rv
bUZpbHRlck1lc2guaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggXAotCVNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTnVtYmVyUGFy
YW1ldGVyLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24uaCBcCi0JU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3Bw
IFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1ZhbGlkYXRlZEN1
c3RvbUZpbHRlck9wZXJhdGlvbi5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlci5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwIFwKLQlT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3QuaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJQcm9ncmFtLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oIFwKLQlTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1J
bmZvLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJQcm9ncmFtSW5mby5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5oIFwKLQlTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbXBpbGVkUHJv
Z3JhbS5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3Vz
dG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmggXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmggXAotCVNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVk
UHJvZ3JhbS5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0Rpc3RhbnRMaWdodFNvdXJjZS5jcHAgXAogCVNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRGlzdGFudExpZ2h0U291cmNlLmggXAogCVNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVCbGVuZC5jcHAgXApAQCAt
NTY5MSw4ICs1NjM2LDYgQEAgcGxhdGZvcm1fc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUNvbXBvc2l0ZS5oIFwKIAlTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ29udm9sdmVNYXRyaXguY3BwIFwKIAlTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ29udm9sdmVNYXRyaXguaCBc
Ci0JU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRl
ci5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDdXN0
b21GaWx0ZXIuaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9G
RURpZmZ1c2VMaWdodGluZy5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvRkVEaWZmdXNlTGlnaHRpbmcuaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9GRURpc3BsYWNlbWVudE1hcC5jcHAgXApAQCAtNjQwNiw3ICs2MzQ5
LDYgQEAgZW5kaWYKIGlmIFVTRV9BQ0NFTEVSQVRFRF9DT01QT1NJVElORwogaWYgVVNFX1RFWFRV
UkVfTUFQUEVSX0dMCiB3ZWJjb3JlX3NvdXJjZXMgKz0gXAotCVNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvdGV4bWFwL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW1U
ZXh0dXJlTWFwcGVyLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmls
dGVycy90ZXhtYXAvVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtLmggXAogCVNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyR0wuY3Bw
IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBl
ckdMLmggXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5vcmRlciBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUub3JkZXIKaW5kZXggOTc1NGRkOS4uN2I4YjlkMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5vcmRlcgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLm9yZGVyCkBAIC0yNzQ3LDcgKzI3NDcsNiBAQCBfX1pON1dlYkNvcmUxOFJlbmRlckxheWVy
QmFja2luZzE1dXBkYXRlVHJhbnNmb3JtRVBLTlNfMTFSZW5kZXJTdHlsZUUKIF9fWk43V2ViQ29y
ZTE1R3JhcGhpY3NMYXllckNBMTJzZXRUcmFuc2Zvcm1FUktOU18yMFRyYW5zZm9ybWF0aW9uTWF0
cml4RQogX19aTks3V2ViQ29yZTIwVHJhbnNmb3JtYXRpb25NYXRyaXhlcUVSS1MwXwogX19aTjdX
ZWJDb3JlMThSZW5kZXJMYXllckJhY2tpbmcxM3VwZGF0ZUZpbHRlcnNFUEtOU18xMVJlbmRlclN0
eWxlRQotX19aTjdXZWJDb3JlMTFSZW5kZXJMYXllcjIzY29tcHV0ZUZpbHRlck9wZXJhdGlvbnNF
UEtOU18xMVJlbmRlclN0eWxlRQogX19aTjdXZWJDb3JlMTZGaWx0ZXJPcGVyYXRpb25zYVNFUktT
MF8KIF9fWk4zV1RGNlZlY3RvcklOU182UmVmUHRySU43V2ViQ29yZTE1RmlsdGVyT3BlcmF0aW9u
RUVFTG0wRU5TXzE1Q3Jhc2hPbk92ZXJmbG93RUVhU0VSS1M2XwogX19aTjdXZWJDb3JlMTVHcmFw
aGljc0xheWVyQ0ExMHNldEZpbHRlcnNFUktOU18xNkZpbHRlck9wZXJhdGlvbnNFCkBAIC0yMDY1
OSw3ICsyMDY1OCw2IEBAIF9fWlRWTjdXZWJDb3JlMTFDYWNoZWRJbWFnZUUKIF9fWlRWTjdXZWJD
b3JlMTdDYWNoZWRSYXdSZXNvdXJjZUUKIF9fWlRWTjdXZWJDb3JlMTRDYWNoZWRSZXNvdXJjZUUK
IF9fWlRWTjdXZWJDb3JlMTJDYWNoZWRTY3JpcHRFCi1fX1pUVk43V2ViQ29yZTEyQ2FjaGVkU2hh
ZGVyRQogX19aVFZON1dlYkNvcmUxN0NhY2hlZFNWR0RvY3VtZW50RQogX19aVFZON1dlYkNvcmUx
NUNhY2hlZFRleHRUcmFja0UKIF9fWlRWTjdXZWJDb3JlMTlDYWNoZWRYU0xTdHlsZVNoZWV0RQpA
QCAtMjA3MjEsOCArMjA3MTksNiBAQCBfX1pUVk43V2ViQ29yZTEzQ1NTU3R5bGVTaGVldEUKIF9f
WlpON1dlYkNvcmUyMENTU1ZhbHVlS2V5d29yZHNIYXNoMTNmaW5kVmFsdWVJbXBsRVBLY2pFMTV2
YWx1ZV93b3JkX2xpc3QKIF9fWk43V2ViQ29yZUw5dmFsdWVMaXN0RQogX19aVFZON1dlYkNvcmUx
MUN1c3RvbUV2ZW50RQotX19aVFZON1dlYkNvcmUyMUN1c3RvbUZpbHRlck9wZXJhdGlvbkUKLV9f
WlRWTjdXZWJDb3JlMTlDdXN0b21GaWx0ZXJQcm9ncmFtRQogX19aVFZON1dlYkNvcmU4RGF0YWJh
c2VFCiBfX1pUVk43V2ViQ29yZTE1RGF0YWJhc2VDb250ZXh0RQogX19aVFZON1dlYkNvcmUxMkRh
dGFiYXNlU3luY0UKQEAgLTIwODEwLDcgKzIwODA2LDYgQEAgX19aVFZON1dlYkNvcmUxM0ZFQ29s
b3JNYXRyaXhFCiBfX1pUVk43V2ViQ29yZTE5RkVDb21wb25lbnRUcmFuc2ZlckUKIF9fWlRWTjdX
ZWJDb3JlMTFGRUNvbXBvc2l0ZUUKIF9fWlRWTjdXZWJDb3JlMTZGRUNvbnZvbHZlTWF0cml4RQot
X19aVFZON1dlYkNvcmUxNEZFQ3VzdG9tRmlsdGVyRQogX19aVFZON1dlYkNvcmUxN0ZFRGlmZnVz
ZUxpZ2h0aW5nRQogX19aVFZON1dlYkNvcmUxN0ZFRGlzcGxhY2VtZW50TWFwRQogX19aVFZON1dl
YkNvcmUxMkZFRHJvcFNoYWRvd0UKQEAgLTIzNjA0LDcgKzIzNTk5LDYgQEAgX19aVFZON1dlYkNv
cmUxMlN0b3JhZ2VFdmVudEUKIF9fWlRWTjdXZWJDb3JlMjBTdG9yYWdlTmFtZXNwYWNlSW1wbEUK
IF9fWlRWTjdXZWJDb3JlMTZTdHlsZUNhY2hlZEltYWdlRQogX19aVFZON1dlYkNvcmUxOVN0eWxl
Q2FjaGVkSW1hZ2VTZXRFCi1fX1pUVk43V2ViQ29yZTE3U3R5bGVDYWNoZWRTaGFkZXJFCiBfX1pU
Vk43V2ViQ29yZTEzU3R5bGVkRWxlbWVudEUKIF9fWlRWTjdXZWJDb3JlMTJTdHlsZUVsZW1lbnRF
CiBfX1pUVk43V2ViQ29yZTE5U3R5bGVHZW5lcmF0ZWRJbWFnZUUKQEAgLTIzOTI4LDE2ICsyMzky
MiwxMSBAQCBfX1pUVk43V2ViQ29yZTVYUGF0aDE3VmFyaWFibGVSZWZlcmVuY2VFCiBfX1pUVk43
V2ViQ29yZTEzWFNMSW1wb3J0UnVsZUUKIF9fWlRWTjdXZWJDb3JlMTNYU0xTdHlsZVNoZWV0RQog
X19aVFZON1dlYkNvcmUxNExvYWRlclN0cmF0ZWd5RQotX19aVFZON1dlYkNvcmUzMFZhbGlkYXRl
ZEN1c3RvbUZpbHRlck9wZXJhdGlvbkUKIF9fWlRWTjdXZWJDb3JlMTJOb2RlUmFyZURhdGFFCiBf
X1pUVk43V2ViQ29yZTIzU2Nyb2xsaW5nU3RhdGVGaXhlZE5vZGVFCiBfX1pUVk43V2ViQ29yZTIy
U2Nyb2xsaW5nVHJlZUZpeGVkTm9kZUUKIF9fWlRWTjdXZWJDb3JlMjBSZW5kZXJUaGVtZU1hY1No
YXJlZEUKIF9fWlRWTjdXZWJDb3JlMjRXZWJDb3JlQVZGUmVzb3VyY2VMb2FkZXJFCi1fX1pON1dl
YkNvcmUzOEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZUNvbnN0cnVjdG9yNnNfaW5mb0UKLV9f
Wk43V2ViQ29yZTM2SlNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlUHJvdG90eXBlNnNfaW5mb0UK
LV9fWk43V2ViQ29yZTI3SlNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlNnNfaW5mb0UKLV9fWk43
V2ViQ29yZUwzOEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZVRhYmxlVmFsdWVzRQogX19aVFZO
N1dlYkNvcmUyNUluYmFuZFRleHRUcmFja1ByaXZhdGVBVkZFCiBfX1pUVk43V2ViQ29yZTI5SW5i
YW5kVGV4dFRyYWNrUHJpdmF0ZUFWRk9iakNFCiBfX1pUVk43V2ViQ29yZTE1SW5iYW5kVGV4dFRy
YWNrRQpAQCAtMjYyMzgsNyArMjYyMjcsNiBAQCBfX1pUVk43V2ViQ29yZTE1U2VjdXJlVGV4dFRp
bWVyRQogX19aWk43V2ViQ29yZUwyMG1lZGlhQ29udHJvbGxlclRoZW1lRXZFMTVjb250cm9sbGVy
VGhlbWUKIF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1lbnRhdGlvbjdXcmFwcGVySU43V2ViQ29y
ZTE2UE9ERnJlZUxpc3RBcmVuYUlOUzJfMTVQT0RSZWRCbGFja1RyZWVJTlMyXzExUE9ESW50ZXJ2
YWxJaVBOUzJfMTFSZW5kZXJCbG9jazE0RmxvYXRpbmdPYmplY3RFRUVFNE5vZGVFRUVFRQogX19a
VFZOM1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJDb3JlMjBGbG93VGhy
ZWFkQ29udHJvbGxlckVFRQotX19aVFZOM1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBw
ZXJJTjdXZWJDb3JlMjVDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0RUVFCiBfX1pUVk4zV1RGMjFN
ZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUyMVJlbmRlckxheWVyQ29tcG9z
aXRvckVFRQogX19aVFZOM1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJD
b3JlMTFMYXlvdXRTdGF0ZUVFRQogX19aVFZON1dlYkNvcmUxNlBPREZyZWVMaXN0QXJlbmFJTlNf
MTVQT0RSZWRCbGFja1RyZWVJTlNfMTFQT0RJbnRlcnZhbElpUE5TXzExUmVuZGVyQmxvY2sxNEZs
b2F0aW5nT2JqZWN0RUVFRTROb2RlRUVFCkBAIC0yNjM2NCwxMSArMjYzNTIsNiBAQCBfX1pUVk4z
V1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dlYkNvcmUxN1N0YXRpY0NTU1J1
bGVMaXN0RUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3JhcHBlcklON1dl
YkNvcmUxOFN0eWxlUnVsZUtleWZyYW1lc0VFRQogX19aVFZON1dlYkNvcmU1VGltZXJJTlNfMTNT
dHlsZVJlc29sdmVyRUVFCiBfX1pUVk43V2ViQ29yZTI0UmVmZXJlbmNlRmlsdGVyT3BlcmF0aW9u
RQotX19aVFZON1dlYkNvcmUyNFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUUKLV9fWlRWTjdXZWJD
b3JlMzBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXJFCi1fX1pUVk43V2ViQ29yZTIxQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyRQotX19aVFZON1dlYkNvcmUyN0N1c3RvbUZpbHRlck51bWJlclBh
cmFtZXRlckUKLV9fWlRWTjdXZWJDb3JlMjZDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlckUKIF9f
WlRWTjdXZWJDb3JlMjZDYWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZUUKIF9fWlpON1dlYkNvcmUx
MVJlbmRlclN0eWxlMTNpbml0aWFsRmlsdGVyRXZFM29wcwogX19aR1ZaTjdXZWJDb3JlMTFSZW5k
ZXJTdHlsZTEzaW5pdGlhbEZpbHRlckV2RTNvcHMKQEAgLTI2NTAwLDcgKzI2NDgzLDYgQEAgX19a
VFZOM1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJDb3JlMjJXZWJLaXRD
U1NLZXlmcmFtZXNSdWxlRUVFCiBfX1pUVk4zV1RGMjFNZW1vcnlJbnN0cnVtZW50YXRpb243V3Jh
cHBlcklON1dlYkNvcmUxNVN0eWxlUnVsZVJlZ2lvbkVFRQogX19aVFZON1dlYkNvcmUxNUxpdmVD
U1NSdWxlTGlzdElOU18xOVdlYktpdENTU1JlZ2lvblJ1bGVFRUUKIF9fWlRWTjNXVEYyMU1lbW9y
eUluc3RydW1lbnRhdGlvbjdXcmFwcGVySU43V2ViQ29yZTE5V2ViS2l0Q1NTUmVnaW9uUnVsZUVF
RQotX19aVFZON1dlYkNvcmUxOFN0eWxlUGVuZGluZ1NoYWRlckUKIF9fWlRWTjdXZWJDb3JlNVRp
bWVySU5TXzE2V2ViU29ja2V0Q2hhbm5lbEVFRQogX19aVFZON1dlYkNvcmUyN1dlYlNvY2tldEV4
dGVuc2lvblByb2Nlc3NvckUKIF9fWkwyMGdldFFUTW92aWVMYXllckNsYXNzCkBAIC0yNjU5NCw5
ICsyNjU3Niw2IEBAIF9fWlRWTjNXVEYyMU1lbW9yeUluc3RydW1lbnRhdGlvbjdXcmFwcGVySU43
V2ViQ29yZTEzRWxlbWVudFNoYWRvd0VFRQogX19aVFZOM1dURjIxTWVtb3J5SW5zdHJ1bWVudGF0
aW9uN1dyYXBwZXJJTjdXZWJDb3JlOUNsYXNzTGlzdEVFRQogX19aVFZOM1dURjIxTWVtb3J5SW5z
dHJ1bWVudGF0aW9uN1dyYXBwZXJJTjdXZWJDb3JlMTlEYXRhc2V0RE9NU3RyaW5nTWFwRUVFCiBf
X1pUVk43V2ViQ29yZTE5Vmlld3BvcnRDb25zdHJhaW50c0UKLV9fWk43V2ViQ29yZUw0M0pTV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZUNvbnN0cnVjdG9yVGFibGVFCi1fX1pON1dlYkNvcmVMNDFK
U1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWVQcm90b3R5cGVUYWJsZUUKLV9fWk43V2ViQ29yZUwz
MkpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZVRhYmxlRQogX19aVFZON1dlYkNvcmU1VGltZXJJ
TlNfOUxheWVyUG9vbEVFRQogX19aTDM1Z2V0a0NNVGV4dE1hcmt1cEF0dHJpYnV0ZV9BbGlnbm1l
bnQKIF9fWkwzNWdldGtDTVRleHRNYXJrdXBBbGlnbm1lbnRUeXBlX1N0YXJ0CkBAIC0yNzAwNiwx
MCArMjY5ODUsNiBAQCBfX1paTjdXZWJDb3JlMTBncmFiQ3Vyc29yRXZFMWMKIF9fWkdWWk43V2Vi
Q29yZTEwZ3JhYkN1cnNvckV2RTFjLmIKIF9fWlpON1dlYkNvcmUxNGdyYWJiaW5nQ3Vyc29yRXZF
MWMKIF9fWkdWWk43V2ViQ29yZTE0Z3JhYmJpbmdDdXJzb3JFdkUxYy5iCi1fX1paTjdXZWJDb3Jl
MjhDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtMjVkZWZhdWx0VmVydGV4U2hhZGVyU3RyaW5n
RXZFMTh2ZXJ0ZXhTaGFkZXJTdHJpbmcKLV9fWkdWWk43V2ViQ29yZTI4Q3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbTI1ZGVmYXVsdFZlcnRleFNoYWRlclN0cmluZ0V2RTE4dmVydGV4U2hhZGVy
U3RyaW5nLmIKLV9fWlpON1dlYkNvcmUyOEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0yN2Rl
ZmF1bHRGcmFnbWVudFNoYWRlclN0cmluZ0V2RTIwZnJhZ21lbnRTaGFkZXJTdHJpbmcKLV9fWkdW
Wk43V2ViQ29yZTI4Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTI3ZGVmYXVsdEZyYWdtZW50
U2hhZGVyU3RyaW5nRXZFMjBmcmFnbWVudFNoYWRlclN0cmluZy5iCiBfX1paTjdXZWJDb3JlTDI3
YnVpbHRJblVuaWZvcm1OYW1lVG9UeXBlTWFwRXZFMTNuYW1lVG9UeXBlTWFwCiBfX1paTjdXZWJD
b3JlTDI5YnVpbHRJbkF0dHJpYnV0ZU5hbWVUb1R5cGVNYXBFdkUxM25hbWVUb1R5cGVNYXAKIF9f
Wk43V2ViQ29yZUwyMW5vdGlmaWNhdGlvblNjaGVkdWxlZEUuYgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvaiBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKaW5kZXggMmM0OWJhNy4uMTNkZmRiMyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJv
agorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCkBA
IC02MTYxLDIwICs2MTYxLDYgQEAKICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVl
PC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249
IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwv
RXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlc
JChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVl
LmNwcCI+Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0
aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxk
PgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAg
ICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRm
b3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgot
ICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQ
bGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+
Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwk
KFBsYXRmb3JtKSc9PSdEZWJ1Z1N1ZmZpeHxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxk
PgotICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8
JChQbGF0Zm9ybSknPT0nRGVidWdTdWZmaXh8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+
Ci0gICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwk
KFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0g
ICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBs
YXRmb3JtKSc9PSdSZWxlYXNlfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAg
PEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9y
bSknPT0nUmVsZWFzZV9XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgot
ICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQ
bGF0Zm9ybSknPT0nUmVsZWFzZV9XaW5DYWlyb3x4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWls
ZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24p
fCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWls
ZD4KLSAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24p
fCQoUGxhdGZvcm0pJz09J1Byb2R1Y3Rpb258eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+
Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRp
b25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVy
aXZlZFNvdXJjZXNcSlNXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCI+CiAgICAgICA8RXhjbHVkZWRG
cm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1
Z3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1
aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0
JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CkBAIC03MjE5LDcgKzcyMDUsNiBAQAogICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENhY2hlZFJlc291cmNlUmVxdWVzdC5j
cHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIu
Llxsb2FkZXJcY2FjaGVcQ2FjaGVkU2NyaXB0LmNwcCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1
ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRTaGFkZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUg
SW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENhY2hlZFNWR0RvY3VtZW50LmNwcCIgLz4KICAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRTVkdEb2N1bWVudFJlZmVy
ZW5jZS5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2Fj
aGVkVGV4dFRyYWNrLmNwcCIgLz4KQEAgLTgxNDcsMjMgKzgxMzIsMTIgQEAKICAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNmb3JtT3Bl
cmF0aW9ucy5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1x0cmFuc2Zvcm1zXFRyYW5zZm9ybVN0YXRlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXNcVHJhbnNsYXRlVHJhbnNmb3Jt
T3BlcmF0aW9uLmNwcCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdy
YXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcCIgLz4KLSAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmls
dGVyR2xvYmFsQ29udGV4dC5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck1lc2guY3BwIiAvPgotICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJN
ZXNoR2VuZXJhdG9yLmNwcCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcCIgLz4KLSAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVy
UGFyYW1ldGVyTGlzdC5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9y
bVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW0uY3BwIiAvPgotICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mby5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxn
cmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCIgLz4KLSAgICA8Q2xDb21w
aWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbS5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9y
bVxncmFwaGljc1xmaWx0ZXJzXERpc3RhbnRMaWdodFNvdXJjZS5jcHAiIC8+CiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFQmxlbmQuY3BwIiAv
PgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xG
RUNvbG9yTWF0cml4LmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3Jt
XGdyYXBoaWNzXGZpbHRlcnNcRkVDb21wb25lbnRUcmFuc2Zlci5jcHAiIC8+CiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFQ29tcG9zaXRlLmNw
cCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnNcRkVDb252b2x2ZU1hdHJpeC5jcHAiIC8+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFQ3VzdG9tRmlsdGVyLmNwcCIgLz4KICAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVEaWZmdXNlTGln
aHRpbmcuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhp
Y3NcZmlsdGVyc1xGRURpc3BsYWNlbWVudE1hcC5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFRHJvcFNoYWRvdy5jcHAiIC8+CkBA
IC04MTg0LDcgKzgxNTgsNiBAQAogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcZmlsdGVyc1xTb3VyY2VBbHBoYS5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFNvdXJjZUdyYXBoaWMuY3BwIiAvPgog
ICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xTcG90
TGlnaHRTb3VyY2UuY3BwIiAvPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcZmlsdGVyc1xWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwIiAvPgog
ICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcY2FcR3JhcGhpY3NM
YXllckNBLmNwcCI+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25m
aWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z19XaW5DYWlyb3xXaW4zMiciPnRydWU8L0V4
Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQo
Q29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdfV2luQ2Fpcm98eDY0JyI+dHJ1ZTwv
RXhjbHVkZWRGcm9tQnVpbGQ+CkBAIC05NTY1LDE1ICs5NTM4LDExIEBACiAgICAgPENsQ29tcGls
ZSBJbmNsdWRlPSIuLlxjc3NcU1ZHQ1NTU3R5bGVTZWxlY3Rvci5jcHAiIC8+CiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlxjc3NcVHJhbnNmb3JtRnVuY3Rpb25zLmNwcCIgLz4KICAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXGNzc1xWaWV3cG9ydFN0eWxlUmVzb2x2ZXIuY3BwIiAvPgotICAg
IDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5j
cHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTRmlsdGVyVmFs
dWUuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU0tleWZy
YW1lUnVsZS5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NT
S2V5ZnJhbWVzUnVsZS5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2Vi
S2l0Q1NTTWF0cml4LmNwcCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJL
aXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCIgLz4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XGNzc1xXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCIgLz4KLSAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NTaGFkZXJWYWx1ZS5jcHAiIC8+CiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuY3BwIiAvPgogICAg
IDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU1ZpZXdwb3J0UnVsZS5jcHAiIC8+
CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NqaXRcU2VsZWN0b3JDb21waWxlci5jcHAi
IC8+CkBAIC0xMTQ0Myw3ICsxMTQxMiw2IEBACiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29u
ZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufFdpbjMy
JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29u
ZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdQcm9kdWN0aW9ufHg2NCci
PnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlQ2FjaGVkU2hhZGVyLmNwcCIgLz4K
ICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZURlcHJlY2F0
ZWRGbGV4aWJsZUJveERhdGEuY3BwIj4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRp
b249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+dHJ1ZTwv
RXhjbHVkZWRGcm9tQnVpbGQ+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSIn
JChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3x4NjQnIj50cnVlPC9FeGNsdWRl
ZEZyb21CdWlsZD4KQEAgLTE4NTMzLDcgKzE4NTAxLDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwk
KFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU0tleWZyYW1lUnVsZS5oIiAv
PgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQo
UGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2Vi
S2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25m
aWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5h
bWUpXERlcml2ZWRTb3VyY2VzXEpTV2ViS2l0Q1NTTWF0cml4LmgiIC8+Ci0gICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVj
dHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXRDU1NNaXhGdW5jdGlv
blZhbHVlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWls
ZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNv
dXJjZXNcSlNXZWJLaXRDU1NSZWdpb25SdWxlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQ
cm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oIiAv
PgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQo
UGxhdGZvcm1BcmNoaXRlY3R1cmUpXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTV2Vi
S2l0TmFtZWRGbG93LmgiIC8+CkBAIC0xOTA0MSw3ICsxOTAwOCw2IEBACiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmgiIC8+CiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0SW5pdGlhdG9ycy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNh
Y2hlXENhY2hlZFNjcmlwdC5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cbG9hZGVy
XGNhY2hlXENhY2hlZFNoYWRlci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cbG9h
ZGVyXGNhY2hlXENhY2hlZFN0eWxlU2hlZXRDbGllbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRTVkdEb2N1bWVudC5oIiAvPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNl
LmgiIC8+CkBAIC0xOTEzNSw4ICsxOTEwMSw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIu
LlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQXJlYUFsbG9jYXRvci5oIiAv
PgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcdGV4bWFwXGNv
b3JkaW5hdGVkXENvbXBvc2l0aW5nQ29vcmRpbmF0b3IuaCIgLz4KICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGluYXRl
ZEJhY2tpbmdTdG9yZS5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcdGV4bWFwXGNvb3JkaW5hdGVkXENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0
ZXhtYXBcY29vcmRpbmF0ZWRcQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQcm9ncmFtLmgiIC8+CiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRp
bmF0ZWRcQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQ29vcmRpbmF0ZWRH
cmFwaGljc1NjZW5lLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxn
cmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQ29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlLmgiIC8+
CkBAIC0xOTQ0NiwyMyArMTk0MTAsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxh
dGZvcm1cZ3JhcGhpY3NcdHJhbnNmb3Jtc1xUcmFuc2Zvcm1PcGVyYXRpb25zLmgiIC8+CiAgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0cmFuc2Zvcm1zXFRyYW5z
Zm9ybVN0YXRlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1x0cmFuc2Zvcm1zXFRyYW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbi5oIiAvPgotICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0
ZXJBcnJheVBhcmFtZXRlci5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oIiAvPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW0uaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmgiIC8+Ci0gICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZp
bHRlckdsb2JhbENvbnRleHQuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRm
b3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyTWVzaC5oIiAvPgotICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJNZXNo
R2VuZXJhdG9yLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oIiAvPgotICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJP
cGVyYXRpb24uaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclBhcmFtZXRl
ckxpc3QuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNz
XGZpbHRlcnNcQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50
LmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0
ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclJlbmRlcmVyLmgiIC8+
Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1
c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9n
cmFtLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xm
aWx0ZXJzXERpc3RhbnRMaWdodFNvdXJjZS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRUJsZW5kLmgiIC8+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjcHVcYXJtXGZpbHRlcnNcRkVCbGVuZE5F
T04uaCIgLz4KQEAgLTE5NDcxLDcgKzE5NDE4LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVDb21wb3NpdGUuaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGNwdVxhcm1cZmlsdGVyc1xGRUNv
bXBvc2l0ZUFyaXRobWV0aWNORU9OLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFQ29udm9sdmVNYXRyaXguaCIgLz4KLSAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVDdXN0b21GaWx0
ZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcRkVEaWZmdXNlTGlnaHRpbmcuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVEaXNwbGFjZW1lbnRNYXAuaCIgLz4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVEcm9wU2hh
ZG93LmgiIC8+CkBAIC0xOTQ5Niw3ICsxOTQ0Miw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFNvdXJjZUFscGhhLmgiIC8+CiAgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFNvdXJjZUdyYXBo
aWMuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcU3BvdExpZ2h0U291cmNlLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxw
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcY2FcR3Jh
cGhpY3NMYXllckNBLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxn
cmFwaGljc1xjYVxQbGF0Zm9ybUNBQW5pbWF0aW9uLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xjYVxQbGF0Zm9ybUNBTGF5ZXIuaCIgLz4KQEAgLTE5
ODc4LDE1ICsxOTgyMywxMSBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFN0eWxl
U2hlZXRMaXN0LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcVHJhbnNmb3Jt
RnVuY3Rpb25zLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcVmlld3BvcnRT
dHlsZVJlc29sdmVyLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxj
c3NcV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XGNzc1xXZWJLaXRDU1NLZXlmcmFtZVJ1bGUuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXGNzc1xXZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxjc3NcV2ViS2l0Q1NTTWF0cml4LmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxjc3NcV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5oIiAvPgotICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NSZWdpb25SdWxlLmgiIC8+Ci0gICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaCIgLz4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oIiAvPgog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU1ZpZXdwb3J0UnVsZS5oIiAv
PgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cY3Nzaml0XEZ1bmN0aW9uQ2FsbC5oIiAvPgpA
QCAtMjAwOTYsOCArMjAwMzcsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVy
aW5nXHN0eWxlXFN0eWxlQmFja2dyb3VuZERhdGEuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUJveERhdGEuaCIgLz4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZEltYWdlLmgiIC8+Ci0gICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVDYWNoZWRTaGFkZXIu
aCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUN1
c3RvbUZpbHRlclByb2dyYW0uaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRl
cmluZ1xzdHlsZVxTdHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuaCIgLz4KICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUZpbHRlckRhdGEuaCIgLz4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUZsZXhpYmxl
Qm94RGF0YS5oIiAvPgpAQCAtMjAxMDksMTEgKzIwMDQ4LDkgQEAKICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZU1hcnF1ZWVEYXRhLmgiIC8+CiAgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVNdWx0aUNvbERhdGEuaCIg
Lz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVBlbmRp
bmdJbWFnZS5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxl
XFN0eWxlUGVuZGluZ1NoYWRlci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVu
ZGVyaW5nXHN0eWxlXFN0eWxlUmFyZUluaGVyaXRlZERhdGEuaCIgLz4KICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmgi
IC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVSZWZs
ZWN0aW9uLmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVc
U3R5bGVTaGFkZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xz
dHlsZVxTdHlsZVN1cnJvdW5kRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
cmVuZGVyaW5nXHN0eWxlXFN0eWxlVHJhbnNmb3JtRGF0YS5oIiAvPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlVmFyaWFibGVEYXRhLmgiIC8+CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZp
bHRlcnMgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZp
bHRlcnMKaW5kZXggZWIyMDYwMy4uNjI3NDc5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtMTAxMSw5ICsx
MDExLDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRT
Y3JpcHQuY3BwIj4KICAgICAgIDxGaWx0ZXI+bG9hZGVyXGNhY2hlPC9GaWx0ZXI+CiAgICAgPC9D
bENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVk
U2hhZGVyLmNwcCI+Ci0gICAgICA8RmlsdGVyPmxvYWRlclxjYWNoZTwvRmlsdGVyPgotICAgIDwv
Q2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cbG9hZGVyXGNhY2hlXENhY2hl
ZFNWR0RvY3VtZW50LmNwcCI+CiAgICAgICA8RmlsdGVyPmxvYWRlclxjYWNoZTwvRmlsdGVyPgog
ICAgIDwvQ2xDb21waWxlPgpAQCAtMTYzNSwzNiArMTYzMiw2IEBACiAgICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0cmFuc2Zvcm1zXFRyYW5zbGF0ZVRyYW5zZm9y
bU9wZXJhdGlvbi5jcHAiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1x0cmFuc2Zv
cm1zPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIu
LlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5j
cHAiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0g
ICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3BwIj4KLSAgICAgIDxGaWx0
ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgot
ICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0
b21GaWx0ZXJNZXNoLmNwcCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRl
cnM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4u
XHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAi
PgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAg
PC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+Ci0gICAgPENs
Q29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRl
clBhcmFtZXRlckxpc3QuY3BwIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmls
dGVyczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCI+Ci0g
ICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0Ns
Q29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENv
bXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJS
ZW5kZXJlci5jcHAiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uY3BwIj4K
LSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwv
Q2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3Nc
ZmlsdGVyc1xEaXN0YW50TGlnaHRTb3VyY2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1c
Z3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtMTY4Myw5ICsx
NjUwLDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcRkVDb252b2x2ZU1hdHJpeC5jcHAiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJ
bmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEZFQ3VzdG9tRmlsdGVyLmNwcCI+
Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8
L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNz
XGZpbHRlcnNcRkVEaWZmdXNlTGlnaHRpbmcuY3BwIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1c
Z3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtMTc0Niw5ICsx
NzEwLDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZp
bHRlcnNcU3BvdExpZ2h0U291cmNlLmNwcCI+CiAgICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnM8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcVmFsaWRhdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmNwcCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8
L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXGdyYXBoaWNzXGNhXEdyYXBoaWNzTGF5ZXJDQS5jcHAiPgogICAgICAgPEZpbHRlcj5w
bGF0Zm9ybVxncmFwaGljc1xjYTwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtMjM0MCw5
ICsyMzAxLDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xWaWV3cG9ydFN0eWxl
UmVzb2x2ZXIuY3BwIj4KICAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBp
bGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlLmNwcCI+Ci0gICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxl
PgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU0ZpbHRlclZhbHVlLmNw
cCI+CiAgICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtMjM1
NSwxOCArMjMxMyw5IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NT
TWF0cml4LmNwcCI+CiAgICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxl
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUuY3BwIj4KLSAgICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+Ci0g
ICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5j
cHAiPgotICAgICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KICAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCI+CiAgICAg
ICA8RmlsdGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUg
SW5jbHVkZT0iLi5cY3NzXFdlYktpdENTU1NoYWRlclZhbHVlLmNwcCI+Ci0gICAgICA8RmlsdGVy
PmNzczwvRmlsdGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0i
Li5cY3NzXFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmNwcCI+CiAgICAgICA8RmlsdGVyPmNzczwv
RmlsdGVyPgogICAgIDwvQ2xDb21waWxlPgpAQCAtMjgzNSw5ICsyNzg0LDYgQEAKICAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXHJlbmRlcmluZ1xzdHlsZVxTdHlsZUNhY2hlZEltYWdlLmNwcCI+
CiAgICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHlsZTwvRmlsdGVyPgogICAgIDwvQ2xDb21waWxl
PgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlQ2FjaGVk
U2hhZGVyLmNwcCI+Ci0gICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHlsZTwvRmlsdGVyPgotICAg
IDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxl
XFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5jcHAiPgogICAgICAgPEZpbHRlcj5yZW5k
ZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KQEAgLTY0MzMsOSArNjM3OSw2
IEBACiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2Jq
JChQbGF0Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNX
ZWJLaXRDU1NNYXRyaXguY3BwIj4KICAgICAgIDxGaWx0ZXI+RGVyaXZlZFNvdXJjZXM8L0ZpbHRl
cj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJh
dGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxE
ZXJpdmVkU291cmNlc1xKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwIj4KLSAgICAgIDxG
aWx0ZXI+RGVyaXZlZFNvdXJjZXM8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xD
b21waWxlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJj
aGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU1JlZ2lv
blJ1bGUuY3BwIj4KICAgICAgIDxGaWx0ZXI+RGVyaXZlZFNvdXJjZXM8L0ZpbHRlcj4KICAgICA8
L0NsQ29tcGlsZT4KQEAgLTc5NzMsOSArNzkxNiw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxsb2FkZXJcY2FjaGVcQ2FjaGVkU2NyaXB0LmgiPgogICAgICAgPEZpbHRlcj5sb2FkZXJc
Y2FjaGU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9
Ii4uXGxvYWRlclxjYWNoZVxDYWNoZWRTaGFkZXIuaCI+Ci0gICAgICA8RmlsdGVyPmxvYWRlclxj
YWNoZTwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cbG9hZGVyXGNhY2hlXENhY2hlZFN0eWxlU2hlZXRDbGllbnQuaCI+CiAgICAgICA8RmlsdGVy
PmxvYWRlclxjYWNoZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtODUyMiw1NyArODQ2
Miw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0cmFu
c2Zvcm1zXFRyYW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbi5oIj4KICAgICAgIDxGaWx0ZXI+cGxh
dGZvcm1cZ3JhcGhpY3NcdHJhbnNmb3JtczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21G
aWx0ZXJBcnJheVBhcmFtZXRlci5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3Nc
ZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
ci5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgot
ICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3Jh
cGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaCI+Ci0gICAgICA8Rmls
dGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4K
LSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3Vz
dG9tRmlsdGVyQ29uc3RhbnRzLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xm
aWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQu
aCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAg
ICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBo
aWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyTWVzaC5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1c
Z3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJNZXNo
R2VuZXJhdG9yLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlci5oIj4KLSAg
ICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJ
bmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmls
dGVyc1xDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdy
YXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+
Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxn
cmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaCI+Ci0gICAgICA8Rmls
dGVyPnBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnM8L0ZpbHRlcj4KLSAgICA8L0NsSW5jbHVkZT4K
LSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcQ3Vz
dG9tRmlsdGVyUHJvZ3JhbS5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmls
dGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50Lmgi
PgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAg
PC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmgiPgotICAgICAgPEZpbHRlcj5wbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRl
clJlbmRlcmVyLmgiPgotICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9G
aWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0
Zm9ybVxncmFwaGljc1xmaWx0ZXJzXEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oIj4K
LSAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwv
Q2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3Nc
ZmlsdGVyc1xDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiPgotICAgICAgPEZpbHRlcj5w
bGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXERpc3RhbnRM
aWdodFNvdXJjZS5oIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwv
RmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtODU5Nyw5ICs4NDg2LDYgQEAKICAgICA8Q2xJ
bmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcRkVDb252b2x2ZU1h
dHJpeC5oIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVy
PgogICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcZmlsdGVyc1xGRUN1c3RvbUZpbHRlci5oIj4KLSAgICAgIDxGaWx0ZXI+cGxhdGZv
cm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbElu
Y2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xGRURpZmZ1c2VMaWdo
dGluZy5oIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVy
PgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtODY3Miw5ICs4NTU4LDYgQEAKICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcU3BvdExpZ2h0U291cmNlLmgi
PgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzPC9GaWx0ZXI+CiAgICAg
PC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGlj
c1xmaWx0ZXJzXFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIj4KLSAgICAgIDxGaWx0
ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcY2FcR3JhcGhpY3NM
YXllckNBLmgiPgogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVxncmFwaGljc1xjYTwvRmlsdGVyPgog
ICAgIDwvQ2xJbmNsdWRlPgpAQCAtOTI2Niw5ICs5MTQ5LDYgQEAKICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXGNzc1xWaWV3cG9ydFN0eWxlUmVzb2x2ZXIuaCI+CiAgICAgICA8RmlsdGVyPmNz
czwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
Y3NzXFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5oIj4KLSAgICAgIDxGaWx0ZXI+Y3NzPC9G
aWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxjc3Nc
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCI+CiAgICAgICA8RmlsdGVyPmNzczwvRmlsdGVyPgogICAg
IDwvQ2xJbmNsdWRlPgpAQCAtOTI4MSwxOCArOTE2MSw5IEBACiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxjc3NcV2ViS2l0Q1NTTWF0cml4LmgiPgogICAgICAgPEZpbHRlcj5jc3M8L0ZpbHRl
cj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJL
aXRDU1NNYXRGdW5jdGlvblZhbHVlLmgiPgotICAgICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KLSAg
ICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlLmgiPgotICAgICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KLSAgICA8L0Ns
SW5jbHVkZT4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NSZWdpb25S
dWxlLmgiPgogICAgICAgPEZpbHRlcj5jc3M8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAg
ICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGNzc1xXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIj4KLSAg
ICAgIDxGaWx0ZXI+Y3NzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxjc3NcV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaCI+CiAgICAgICA8Rmls
dGVyPmNzczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtOTgxOCwxMiArOTY4OSw2IEBA
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVDYWNoZWRJ
bWFnZS5oIj4KICAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CiAgICAgPC9D
bEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5
bGVDYWNoZWRTaGFkZXIuaCI+Ci0gICAgICA8RmlsdGVyPnJlbmRlcmluZ1xzdHlsZTwvRmlsdGVy
PgotICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5n
XHN0eWxlXFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIj4KLSAgICAgIDxGaWx0ZXI+cmVuZGVy
aW5nXHN0eWxlPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVEZXByZWNhdGVkRmxleGlibGVCb3hEYXRhLmgi
PgogICAgICAgPEZpbHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVk
ZT4KQEAgLTk4NTcsOSArOTcyMiw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5k
ZXJpbmdcc3R5bGVcU3R5bGVQZW5kaW5nSW1hZ2UuaCI+CiAgICAgICA8RmlsdGVyPnJlbmRlcmlu
Z1xzdHlsZTwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1ZGUgSW5jbHVk
ZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlUGVuZGluZ1NoYWRlci5oIj4KLSAgICAgIDxGaWx0
ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5j
bHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5o
Ij4KICAgICAgIDxGaWx0ZXI+cmVuZGVyaW5nXHN0eWxlPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1
ZGU+CkBAIC05ODY5LDkgKzk3MzEsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVu
ZGVyaW5nXHN0eWxlXFN0eWxlUmVmbGVjdGlvbi5oIj4KICAgICAgIDxGaWx0ZXI+cmVuZGVyaW5n
XHN0eWxlPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRl
PSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVTaGFkZXIuaCI+Ci0gICAgICA8RmlsdGVyPnJlbmRl
cmluZ1xzdHlsZTwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0eWxlU3Vycm91bmREYXRhLmgiPgogICAgICAgPEZp
bHRlcj5yZW5kZXJpbmdcc3R5bGU8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KQEAgLTE0Mjc4
LDkgKzE0MTM3LDYgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQoQ29uZmlndXJhdGlvbkJ1
aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2plY3ROYW1lKVxEZXJpdmVk
U291cmNlc1xKU1dlYktpdENTU01hdHJpeC5oIj4KICAgICAgIDxGaWx0ZXI+RGVyaXZlZFNvdXJj
ZXM8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9IiQo
Q29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRmb3JtQXJjaGl0ZWN0dXJlKVwkKFByb2pl
Y3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCI+Ci0g
ICAgICA8RmlsdGVyPkRlcml2ZWRTb3VyY2VzPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqJChQbGF0
Zm9ybUFyY2hpdGVjdHVyZSlcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNXZWJLaXRD
U1NSZWdpb25SdWxlLmgiPgogICAgICAgPEZpbHRlcj5EZXJpdmVkU291cmNlczwvRmlsdGVyPgog
ICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTQ4NTcsMTIgKzE0NzEzLDYgQEAKICAgICA8Q2xJbmNsdWRl
IEluY2x1ZGU9Ii4uXHBsYXRmb3JtXGdyYXBoaWNzXHRleG1hcFxjb29yZGluYXRlZFxDb29yZGlu
YXRlZEJhY2tpbmdTdG9yZS5oIj4KICAgICAgIDxGaWx0ZXI+cGxhdGZvcm1cZ3JhcGhpY3NcdGV4
bWFwXGNvb3JkaW5hdGVkPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVk
ZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWRcQ29vcmRp
bmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCI+Ci0gICAgICA8RmlsdGVyPnBsYXRmb3JtXGdy
YXBoaWNzXHRleG1hcFxjb29yZGluYXRlZDwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgotICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcdGV4bWFwXGNvb3JkaW5h
dGVkXENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIj4KLSAgICAgIDxGaWx0ZXI+cGxh
dGZvcm1cZ3JhcGhpY3NcdGV4bWFwXGNvb3JkaW5hdGVkPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1
ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxwbGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBc
Y29vcmRpbmF0ZWRcQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyLmgiPgogICAgICAgPEZpbHRlcj5w
bGF0Zm9ybVxncmFwaGljc1x0ZXhtYXBcY29vcmRpbmF0ZWQ8L0ZpbHRlcj4KICAgICA8L0NsSW5j
bHVkZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCBmYzAzMWNjLi45YzAxNmFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC02MTIsMTEgKzYxMiw2IEBACiAJCTE0
RTgzNzhFMDlGODVENEYwMEI4NUFFNCAvKiBKU0V2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNEU4Mzc4RDA5Rjg1RDRGMDBCODVBRTQgLyogSlNF
dmVudC5oICovOyB9OwogCQkxNEZGRTMxRDBBRTE5NjMzMDAxMzZCRjUgLyogSFRNTEZyYW1lRWxl
bWVudEJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDE0RkZFMzFCMEFFMTk2MzMwMDEzNkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50QmFzZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTE0RkZFMzFFMEFF
MTk2MzMwMDEzNkJGNSAvKiBIVE1MRnJhbWVFbGVtZW50QmFzZS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNEZGRTMxQzBBRTE5NjMzMDAxMzZCRjUg
LyogSFRNTEZyYW1lRWxlbWVudEJhc2UuY3BwICovOyB9OwotCQkxNTBCOTIzOTE1RjA4REM0MDBF
MTA5ODYgLyogV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE1MEI5MjM3MTVGMDhEQzQwMEUxMDk4NiAv
KiBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwICovOyB9OwotCQkxNTBCOTIzQTE1RjA4
REM0MDBFMTA5ODYgLyogV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNTBCOTIzODE1RjA4REM0MDBFMTA5
ODYgLyogV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmggKi87IH07Ci0JCTE1QjNGQzE5MTVG
QjIxNzgwMEE4MUJDQiAvKiBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTVCM0ZDMTcxNUZCMjE3ODAwQTgx
QkNCIC8qIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggKi87IH07Ci0JCTE1QjhCN0M4MTY1
MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTVCOEI3QzYxNjUyQzUyMjAw
MzZFRjU1IC8qIEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgKi87IH07Ci0JCTE1QjhC
N0M5MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE1QjhCN0M3MTY1MkM1
MjIwMDM2RUY1NSAvKiBKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCAqLzsgfTsKIAkJMTVD
NzcwOEQxMDBEM0M2QjAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE1Qzc3MDhBMTAwRDNDNkEwMDVCQTI2NyAv
KiBWYWxpZGl0eVN0YXRlLmggKi87IH07CiAJCTE1Qzc3MDkzMTAwRDNDQTgwMDVCQTI2NyAvKiBK
U1ZhbGlkaXR5U3RhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDE1Qzc3MDkxMTAwRDNDQTgwMDVCQTI2NyAvKiBKU1ZhbGlkaXR5U3RhdGUuaCAqLzsg
fTsKIAkJMTVDNzcwOTQxMDBEM0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNUM3NzA5MjEwMEQz
Q0E4MDA1QkEyNjcgLyogSlNWYWxpZGl0eVN0YXRlLmNwcCAqLzsgfTsKQEAgLTEwMzEsNyArMTAy
Niw2IEBACiAJCTI5QTgxMjRCMEZCQjlDQTkwMDUxMDI5MyAvKiBBWE9iamVjdENhY2hlTWFjLm1t
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjlBODEyNDcw
RkJCOUNBOTAwNTEwMjkzIC8qIEFYT2JqZWN0Q2FjaGVNYWMubW0gKi87IH07CiAJCTI5QUNCMjEy
MTQzRTcxMjgwMDZCQ0E1RiAvKiBBY2Nlc3NpYmlsaXR5TW9ja09iamVjdC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjlBQ0IyMTExNDNFNzEyODAwNkJD
QTVGIC8qIEFjY2Vzc2liaWxpdHlNb2NrT2JqZWN0LmggKi87IH07CiAJCTI5QUNCMjE0MTQzRTc0
OTgwMDZCQ0E1RiAvKiBBY2Nlc3NpYmlsaXR5TW9ja09iamVjdC5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyOUFDQjIxMzE0M0U3NDk4MDA2QkNBNUYg
LyogQWNjZXNzaWJpbGl0eU1vY2tPYmplY3QuY3BwICovOyB9OwotCQkyOUNENjFERTE0NkQwMjg5
MDA2OEU4MkEgLyogV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwQjQyMTU3MTQ2OTc2OTYwMDg3RTYwNCAvKiBXZWJL
aXRDU1NTaGFkZXJWYWx1ZS5oICovOyB9OwogCQkyOUQ3QkNGNjE0NDRBRjU4MDA3MDYxOUMgLyog
QWNjZXNzaWJpbGl0eVNwaW5CdXR0b24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMjlEN0JDRjUxNDQ0QUY1ODAwNzA2MTlDIC8qIEFjY2Vzc2liaWxp
dHlTcGluQnV0dG9uLmNwcCAqLzsgfTsKIAkJMjlEN0JDRkExNDQ0QUY3RDAwNzA2MTlDIC8qIEFj
Y2Vzc2liaWxpdHlTcGluQnV0dG9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAyOUQ3QkNGOTE0NDRBRjdEMDA3MDYxOUMgLyogQWNjZXNzaWJpbGl0eVNw
aW5CdXR0b24uaCAqLzsgfTsKIAkJMkIzNjVDODQxNTI1MTE5RTAwOTFEMjdCIC8qIFJlbmRlclNW
R0VsbGlwc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDJCNDIzNUEwMTUyNTBGNjAwMERCQkNEOCAvKiBSZW5kZXJTVkdFbGxpcHNlLmggKi87IH07CkBA
IC0xMTUyLDcgKzExNDYsNiBAQAogCQkzMTJENjdCMTE1MzU2OTFGMDA1NjNEMEQgLyogRGljdGlv
bmFyeS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAz
MTJENjdCMDE1MzU2OTFGMDA1NjNEMEQgLyogRGljdGlvbmFyeS5jcHAgKi87IH07CiAJCTMxMzEz
RjY1MTQ0M0IzNUYwMDZFMkE5MCAvKiBGaWx0ZXJFZmZlY3RSZW5kZXJlci5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTMxM0Y2MzE0NDNCMzVFMDA2
RTJBOTAgLyogRmlsdGVyRWZmZWN0UmVuZGVyZXIuY3BwICovOyB9OwogCQkzMTMxM0Y2NjE0NDNC
MzVGMDA2RTJBOTAgLyogRmlsdGVyRWZmZWN0UmVuZGVyZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxMzEzRjY0MTQ0M0IzNUUwMDZFMkE5MCAvKiBG
aWx0ZXJFZmZlY3RSZW5kZXJlci5oICovOyB9OwotCQkzMTM4QTlFNTE0NzQ0MzQ2MDBCMEVEMTIg
LyogU3R5bGVTaGFkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDMxMzhBOUU0MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNoYWRlci5oICovOyB9Owog
CQkzMTQwMzc5QjEyNEJFQTdGMDBBRjQwRTQgLyogV2ViQ29yZU1vdGlvbk1hbmFnZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNDAzNzk3MTI0QkVB
N0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5oICovOyB9OwogCQkzMTQwMzc5QzEy
NEJFQTdGMDBBRjQwRTQgLyogV2ViQ29yZU1vdGlvbk1hbmFnZXIubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTQwMzc5ODEyNEJFQTdGMDBBRjQwRTQg
LyogV2ViQ29yZU1vdGlvbk1hbmFnZXIubW0gKi87IH07CiAJCTMxNDAzNzlEMTI0QkVBN0YwMEFG
NDBFNCAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0MDM3OTkxMjRCRUE3RjAwQUY0MEU0IC8qIERl
dmljZU9yaWVudGF0aW9uQ2xpZW50SU9TLmggKi87IH07CkBAIC0xNzIxLDQ2ICsxNzE0LDE0IEBA
CiAJCTRGRkMwMjJCMTY0M0I3MTAwMDRFMTYzOCAvKiBOb2RlUmFyZURhdGEuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEZBQjQ4NjYxNjQzQTY3RTAw
RjcwQzA3IC8qIE5vZGVSYXJlRGF0YS5jcHAgKi87IH07CiAJCTRGRkMwMjJEMTY0M0I3MjYwMDRF
MTYzOCAvKiBFbGVtZW50UmFyZURhdGEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNEZBQjQ4NjQxNjQzQTY2RDAwRjcwQzA3IC8qIEVsZW1lbnRSYXJl
RGF0YS5jcHAgKi87IH07CiAJCTUwMUJBQUE5MTM5NTBFMkMwMEY3QUNFQiAvKiBXaW5kUnVsZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTAxQkFBQTgx
Mzk1MEUyQzAwRjdBQ0VCIC8qIFdpbmRSdWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJNTAzOEJDMDcxNDcxMUNEQjAwOTVFMEQxIC8qIFdlYktp
dENTU1NoYWRlclZhbHVlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUwMzhCQzA2MTQ3MTFDREIwMDk1RTBEMSAvKiBXZWJLaXRDU1NTaGFkZXJWYWx1
ZS5jcHAgKi87IH07Ci0JCTUwMzhCRTJGMTQ3MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNo
YWRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
MDM4QkUyRDE0NzJBRDIzMDA5NUUwRDEgLyogU3R5bGVDYWNoZWRTaGFkZXIuY3BwICovOyB9Owot
CQk1MDM4QkUzMDE0NzJBRDIzMDA5NUUwRDEgLyogU3R5bGVDYWNoZWRTaGFkZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwMzhCRTJFMTQ3MkFEMjMw
MDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5oICovOyB9OwotCQk1MDM4QkU0MDE0NzJBRDk4
MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUwMzhCRTNFMTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFk
ZXIuY3BwICovOyB9OwotCQk1MDM4QkU0MTE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDM4QkUz
RjE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmggKi87IH07Ci0JCTUwM0QwQ0FBMTRC
NUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwM0QwQ0E3MTRCNUIwODcwMEYzMkY1NyAv
KiBDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCAqLzsgfTsKLQkJNTAzRDBDQUExNEI1QjA4NzAwRjMy
RjU4IC8qIEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwM0QwQ0E3MTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0b21G
aWx0ZXJSZW5kZXJlci5jcHAgKi87IH07Ci0JCTUwM0QwQ0FCMTRCNUIwODcwMEYzMkY1NyAvKiBD
dXN0b21GaWx0ZXJQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MDNEMENBODE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3Jh
bS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKCk7IH07IH07Ci0JCTUwM0QwQ0FCMTRC
NUIwODcwMEYzMkY1OCAvKiBDdXN0b21GaWx0ZXJSZW5kZXJlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzRDBDQTgxNEI1QjA4NzAwRjMyRjU4IC8q
IEN1c3RvbUZpbHRlclJlbmRlcmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoKTsg
fTsgfTsKLQkJNTAzRDBDQUMxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW1D
bGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUw
M0QwQ0E5MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJNTAzRDBDQUUx
NEI1QjBCQTAwRjMyRjU3IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTAzRDBDQUQxNEI1QjBCQTAwRjMy
RjU3IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKCk7IH07IH07CiAJCTUwNEFBQ0NEMTgzNDQ1NTkwMEUzRDlCQyAvKiBJbnNwZWN0b3JO
b2RlRmluZGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDUwNEFBQ0NCMTgzNDQ1NTkwMEUzRDlCQyAvKiBJbnNwZWN0b3JOb2RlRmluZGVyLmNwcCAq
LzsgfTsKIAkJNTA0QUFDQ0UxODM0NDU1OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVGaW5kZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwNEFBQ0ND
MTgzNDQ1NTkwMEUzRDlCQyAvKiBJbnNwZWN0b3JOb2RlRmluZGVyLmggKi87IH07CiAJCTUwODFF
M0MzM0NFNTgwQzE2RUY4QjQ4QiAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA4MUUzREYzQ0ZDODBDMTZF
RjhCNDhCIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAgKi87IH07CiAJCTUwODFFM0UwM0NG
RjgwQzE2RUY4QjQ4QiAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3QuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwODFFM0UxM0QwMjgwQzE2RUY4QjQ4QiAv
KiBDYWNoZWRSZXNvdXJjZVJlcXVlc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQk1MDhDQ0E0RjEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRmxv
d1RocmVhZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTA4Q0NBNEQxM0NGMTA2QjAwMzE1MUYzIC8qIFJlbmRlckZsb3dUaHJlYWQuaCAqLzsgfTsKIAkJ
NTA4Q0NBNTAxM0NGMTA2QjAwMzE1MUYzIC8qIFJlbmRlckZsb3dUaHJlYWQuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA4Q0NBNEUxM0NGMTA2QjAw
MzE1MUYzIC8qIFJlbmRlckZsb3dUaHJlYWQuY3BwICovOyB9OwotCQk1MDkzMzM0RjE2M0IwRTQz
MDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDkzMzM0RDE2M0IwRTQzMDAwOTlBNjAg
LyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAgKi87IH07Ci0JCTUwOTMzMzUwMTYzQjBF
NDMwMDA5OUE2MCAvKiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDkzMzM0RTE2M0IwRTQzMDAwOTlBNjAg
LyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oICovOyB9OwotCQk1MDk4N0MyNjE1N0Q2NzZE
MDBCREE4MzUgLyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDk4N0MyNDE1N0Q2NzZEMDBCREE4MzUg
LyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHAgKi87IH07Ci0JCTUwOTg3QzI3MTU3RDY3
NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDk4N0MyNTE1N0Q2NzZEMDBCREE4MzUg
LyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oICovOyB9OwotCQk1MDlDQzlGQjE0QzA2OUVE
MDBCQkVDQkQgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MDlDQzlGQTE0QzA2OUVEMDBCQkVDQkQgLyogQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyLmggKi87IH07Ci0JCTUwQUNFMkNCMTRCNUQ3OTMwMDQ0NjY2NiAv
KiBDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUwQUNFMkNBMTRCNUQ3OTMwMDQ0NjY2NiAvKiBDdXN0b21GaWx0ZXJP
cGVyYXRpb24uaCAqLzsgfTsKLQkJNTBDQzA4OUExNEM2RTk5QzAwMTdBQjUxIC8qIEN1c3RvbUZp
bHRlck51bWJlclBhcmFtZXRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTBDQzA4OTkxNEM2RTk5QzAwMTdBQjUxIC8qIEN1c3RvbUZpbHRlck51bWJl
clBhcmFtZXRlci5oICovOyB9OwotCQk1MENDMEEzOTE0QzZGNUIxMDAxN0FCNTEgLyogQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUwQ0MwQTM4MTRDNkY1QjEwMDE3QUI1MSAvKiBDdXN0b21GaWx0ZXJPcGVyYXRp
b24uY3BwICovOyB9OwogCQk1MEQxMEQ5OTE1NDVGNTc2MDA5NkQyODggLyogUmVuZGVyTGF5ZXJG
aWx0ZXJJbmZvLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDUwRDEwRDk3MTU0NUY1NzYwMDk2RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uY3Bw
ICovOyB9OwogCQk1MEQxMEQ5QTE1NDVGNTc2MDA5NkQyODggLyogUmVuZGVyTGF5ZXJGaWx0ZXJJ
bmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQx
MEQ5ODE1NDVGNTc2MDA5NkQyODggLyogUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJNTBEMzI4NTcxNjNCMzEz
RjAwMTYxMTFFIC8qIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQzMjg1NTE2M0IzMTNGMDAx
NjExMUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcCAqLzsgfTsKLQkJNTBE
MzI4NTgxNjNCMzEzRjAwMTYxMTFFIC8qIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBEMzI4NTYx
NjNCMzEzRjAwMTYxMTFFIC8qIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oICovOyB9
OwotCQk1MEQ0MDNDNzE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0b21GaWx0ZXIuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBENDAzQzUxNDc2OEM5
NDAwRDMwQkI1IC8qIEZFQ3VzdG9tRmlsdGVyLmNwcCAqLzsgfTsKLQkJNTBENDAzQzgxNDc2OEM5
NDAwRDMwQkI1IC8qIEZFQ3VzdG9tRmlsdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDNDNjE0NzY4Qzk0MDBEMzBCQjUgLyogRkVDdXN0b21G
aWx0ZXIuaCAqLzsgfTsKLQkJNTBENDA1RjkxNDdEMzFGMzAwRDMwQkI1IC8qIEN1c3RvbUZpbHRl
ck1lc2guY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTBENDA1RjcxNDdEMzFGMzAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlck1lc2guY3BwICovOyB9Owot
CQk1MEQ0MDVGQTE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBENDA1RjgxNDdEMzFGMzAw
RDMwQkI1IC8qIEN1c3RvbUZpbHRlck1lc2guaCAqLzsgfTsKLQkJNTBENDA2MTExNDdENDlERTAw
RDMwQkI1IC8qIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ0MDYwRjE0N0Q0OURFMDBEMzBCQjUg
LyogQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcCAqLzsgfTsKLQkJNTBENDA2MTIxNDdE
NDlERTAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBENDA2MTAxNDdENDlERTAwRDMw
QkI1IC8qIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oICovOyB9OwotCQk1MEQ4OENCNTE1
QkRGREFBMDAxODA5RjQgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBEODhDQjMxNUJERkRBQTAwMTgw
OUY0IC8qIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmNwcCAqLzsgfTsKLQkJNTBEODhDQjYxNUJE
RkRBQTAwMTgwOUY0IC8qIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEQ4OENCNDE1QkRGREFBMDAxODA5RjQg
LyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCAqLzsgfTsKLQkJNTBFMThDRDgxNkY5Mjg1ODAw
QzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MEUxOENENTE2RjkyODU4MDBDNjU0ODYgLyog
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCAqLzsgfTsKLQkJNTBFMThDRDkxNkY5Mjg1ODAw
QzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUwRTE4Q0Q2MTZGOTI4NTgwMEM2NTQ4
NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5jcHAgKi87IH07Ci0JCTUwRTE4Q0RB
MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTBFMThDRDcxNkY5Mjg1
ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmggKi87IH07CiAJCTUx
MDE4NDY5MEIwODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTAxODQ2NzBCMDg2MDJBMDA0QTgyNUYgLyog
Q2FjaGVkUGFnZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCTUxMDE4NDZBMEIwODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxMDE4NDY4MEIwODYwMkEw
MDRBODI1RiAvKiBDYWNoZWRQYWdlLmNwcCAqLzsgfTsKIAkJNTEwMTk0NDAxODM2RDIwODAwOTI1
NTIzIC8qIElEQkluZGV4V3JpdGVyTGV2ZWxEQi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTAxOTQzRTE4MzZEMjA4MDA5MjU1MjMgLyogSURCSW5k
ZXhXcml0ZXJMZXZlbERCLmNwcCAqLzsgfTsKQEAgLTIzMzgsOCArMjI5OSw2IEBACiAJCTdDRTZD
QkZCMTg3RjM3MDcwMEQ0NkJGNSAvKiBGb3JtYXRDb252ZXJ0ZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDRTZDQkZBMTg3RjM3MDcwMEQ0NkJGNSAv
KiBGb3JtYXRDb252ZXJ0ZXIuaCAqLzsgfTsKIAkJN0NFNkNCRkQxODdGMzk0OTAwRDQ2QkY1IC8q
IEZvcm1hdENvbnZlcnRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3Q0U2Q0JGQzE4N0YzOTQ5MDBENDZCRjUgLyogRm9ybWF0Q29udmVydGVyLmNw
cCAqLzsgfTsKIAkJN0Q3NDFCREExNzcyMjZBQTAwODU5MTcwIC8qIENTU1ZhbHVlS2V5d29yZHMu
aCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDY1NjU4MTQ4MDlEMTMwNDMwMDBFNjFENyAvKiBDU1NWYWx1ZUtleXdvcmRzLmggKi87
IH07Ci0JCTdFMTJFOTBGMTVGQTVEM0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJh
dG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RTEy
RTkwRDE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oICovOyB9
OwotCQk3RTEyRTkxMDE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRv
ci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RTEy
RTkwRTE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAgKi87
IH07CiAJCTdFMzNDRDAxMTI3RjM0MEQwMEJFOEYxNyAvKiBQdXJnZVByaW9yaXR5LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RTMzQ0QwMDEyN0YzNDBE
MDBCRThGMTcgLyogUHVyZ2VQcmlvcml0eS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTdFMzdFRjJFMTMzOTIwODgwMEIyOTI1MCAvKiBTdWJyZXNv
dXJjZUxvYWRlckNGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDdFMzdFRjJEMTMzOTIwODgwMEIyOTI1MCAvKiBTdWJyZXNvdXJjZUxvYWRlckNGLmNw
cCAqLzsgfTsKIAkJN0U0MjhDRTUxM0UzNDA3RjAwM0I2NjFDIC8qIFJlc291cmNlSGFuZGxlSU9T
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0U0MjhD
RTQxM0UzNDA3RjAwM0I2NjFDIC8qIFJlc291cmNlSGFuZGxlSU9TLm1tICovOyB9OwpAQCAtMzYz
NSwxOSArMzU5NCw3IEBACiAJCUExRTExNTQ0MTMwMTVDM0QwMDU0QUM4QyAvKiBEaXN0YW50TGln
aHRTb3VyY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTFFMTE1NDMxMzAxNUMzRDAwNTRBQzhDIC8qIERpc3RhbnRMaWdodFNvdXJjZS5jcHAgKi87
IH07CiAJCUExRTExNTQ2MTMwMTVDNEUwMDU0QUM4QyAvKiBQb2ludExpZ2h0U291cmNlLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExRTExNTQ1MTMw
MTVDNEUwMDU0QUM4QyAvKiBQb2ludExpZ2h0U291cmNlLmNwcCAqLzsgfTsKIAkJQTFFMTE1NDgx
MzAxNUM1RDAwNTRBQzhDIC8qIFNwb3RMaWdodFNvdXJjZS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUUxMTU0NzEzMDE1QzVEMDA1NEFDOEMgLyog
U3BvdExpZ2h0U291cmNlLmNwcCAqLzsgfTsKLQkJQTI0QkY3N0IxNUNDM0JBRjAwMzE5MUYyIC8q
IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEEyNEJGNzc5MTVDQzNCQUYwMDMxOTFGMiAvKiBXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlLmggKi87IH07Ci0JCUEyNEJGNzdDMTVDQzNCQUYwMDMxOTFGMiAvKiBX
ZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEEyNEJGNzdBMTVDQzNCQUYwMDMxOTFGMiAvKiBXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlLmNwcCAqLzsgfTsKLQkJQTI5NTMyQ0YxNURENUUxNzAwNDY5RUJDIC8q
IEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTI5NTMyQ0QxNURENUUxNzAwNDY5RUJDIC8qIEN1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW0uY3BwICovOyB9OwotCQlBMjk1MzJEMDE1REQ1RTE3MDA0
NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTI5NTMyQ0UxNURENUUxNzAwNDY5RUJDIC8q
IEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCAqLzsgfTsKLQkJQTJCMkFFN0MxNjM3NUVF
NTAwQ0ZBNTBCIC8qIEN1c3RvbUZpbHRlckNvbnN0YW50cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTJCMkFFN0IxNjM3NUVFNTAwQ0ZBNTBCIC8qIEN1
c3RvbUZpbHRlckNvbnN0YW50cy5oICovOyB9OwogCQlBMkI5MjE3MzE2QzVDQzQyMDA0MURDRDkg
LyogSW50UmVjdEV4dGVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQTJCOTIxNzIxNkM1Q0M0MjAwNDFEQ0Q5IC8qIEludFJlY3RFeHRlbnQuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQlBMkU4QUUzMDE2
QTQ4RTFDMDA2QkIzQUEgLyogV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMkU4QUUyRTE2QTQ4RTFDMDA2QkIzQUEg
LyogV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgKi87IH07Ci0JCUEyRThBRTMxMTZBNDhFMUMwMDZC
QjNBQSAvKiBXZWJLaXRDU1NGaWx0ZXJSdWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBMkU4QUUyRjE2QTQ4RTFDMDA2QkIzQUEgLyogV2ViS2l0Q1NT
RmlsdGVyUnVsZS5oICovOyB9OwotCQlBMkU4QUUzNzE2QTQ5ODQwMDA2QkIzQUEgLyogSlNXZWJL
aXRDU1NGaWx0ZXJSdWxlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEEyRThBRTM1MTZBNDk4NDAwMDZCQjNBQSAvKiBKU1dlYktpdENTU0ZpbHRlclJ1
bGUuY3BwICovOyB9OwotCQlBMkU4QUUzODE2QTQ5ODQwMDA2QkIzQUEgLyogSlNXZWJLaXRDU1NG
aWx0ZXJSdWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMkU4QUUzNjE2QTQ5ODQwMDA2QkIzQUEgLyogSlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi87
IH07Ci0JCUEyRThBRTQwMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMkU4QUUz
RDE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5oICovOyB9OwotCQlB
MkU4QUU0MTE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEyRThBRTNFMTZBNDk4
Q0YwMDZCQjNBQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLm1tICovOyB9OwotCQlBMkU4QUU0
MjE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZUludGVybmFsLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMkU4QUUzRjE2QTQ5
OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZUludGVybmFsLmggKi87IH07CiAJ
CUEzMUM0RTREMTZFMDJBQTYwMDJGNzk1NyAvKiBPRVNUZXh0dXJlSGFsZkZsb2F0LmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzMUM0RTRDMTZFMDJB
QTYwMDJGNzk1NyAvKiBPRVNUZXh0dXJlSGFsZkZsb2F0LmNwcCAqLzsgfTsKIAkJQTMxQzRFNEYx
NkUwMkFCNDAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzMUM0RTRFMTZFMDJBQjQwMDJGNzk1NyAv
KiBPRVNUZXh0dXJlSGFsZkZsb2F0LmggKi87IH07CiAJCUEzMUM0RTUyMTZFMDJCMDgwMDJGNzk1
NyAvKiBKU09FU1RleHR1cmVIYWxmRmxvYXQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTMxQzRFNTExNkUwMkIwODAwMkY3OTU3IC8qIEpTT0VTVGV4
dHVyZUhhbGZGbG9hdC5jcHAgKi87IH07CkBAIC02MjE4LDggKzYxNjUsNiBAQAogCQlGQjQ4NEY0
QzE3MUY4MjFFMDAwNDA3NTUgLyogVHJhbnNmb3JtRnVuY3Rpb25zLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZCNDg0RjRBMTcxRjgyMUUwMDA0MDc1
NSAvKiBUcmFuc2Zvcm1GdW5jdGlvbnMuY3BwICovOyB9OwogCQlGQjQ4NEY0RDE3MUY4MjFFMDAw
NDA3NTUgLyogVHJhbnNmb3JtRnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBGQjQ4NEY0QjE3MUY4MjFFMDAwNDA3NTUgLyogVHJhbnNmb3Jt
RnVuY3Rpb25zLmggKi87IH07CiAJCUZCNDlDMzlEMTY3ODQ5NDcwMDdGRkI1RCAvKiBDU1NIb3N0
UnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkI0
OUMzOUMxNjc4NDk0NzAwN0ZGQjVEIC8qIENTU0hvc3RSdWxlLmggKi87IH07Ci0JCUZCNzE5QzNG
MTcyMzhDQTgwMDIyREUzNCAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQjBCNzVFRjE3MjM0Mjg1MDBG
MDVEMkEgLyogV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5oICovOyB9OwotCQlGQjcxOUM0MDE3
MjM4Q0FFMDAyMkRFMzQgLyogV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQjBCNzVFRTE3MjM0Mjg1MDBG
MDVEMkEgLyogV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAgKi87IH07CiAJCUZCNzhBRDJF
MTUxQkY1RTYwMEZFNTREMyAvKiBDU1NQYXJzZXJNb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQjc4QUQyQzE1MUJGNUQyMDBGRTU0RDMgLyogQ1NT
UGFyc2VyTW9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCUZCOTEzOTI0MTZBRTRDMTcwMDFGRTY4MiAvKiBET01QYXRoLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQjkxMzkyMDE2QUU0QjBCMDAxRkU2
ODIgLyogRE9NUGF0aC5oICovOyB9OwogCQlGQjkxMzkyNjE2QUU0QzJGMDAxRkU2ODIgLyogQ2Fu
dmFzUGF0aE1ldGhvZHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEZCOTEzOTFGMTZBRTRCMEIwMDFGRTY4MiAvKiBDYW52YXNQYXRoTWV0aG9kcy5oICov
OyB9OwpAQCAtNzQzNywxMSArNzM4Miw2IEBACiAJCTE0RTgzNzhEMDlGODVENEYwMEI4NUFFNCAv
KiBKU0V2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0V2ZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0RkZFMzFCMEFFMTk2MzMwMDEzNkJGNSAv
KiBIVE1MRnJhbWVFbGVtZW50QmFzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBIVE1MRnJhbWVFbGVtZW50QmFzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkx
NEZGRTMxQzBBRTE5NjMzMDAxMzZCRjUgLyogSFRNTEZyYW1lRWxlbWVudEJhc2UuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTEZyYW1lRWxlbWVudEJhc2UuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxNTBCOTIzNzE1RjA4REM0MDBFMTA5ODYg
LyogV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTE1MEI5MjM4MTVGMDhEQzQwMEUxMDk4NiAvKiBXZWJLaXRD
U1NBcnJheUZ1bmN0aW9uVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
V2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCTE1QjNGQzE3MTVGQjIxNzgwMEE4MUJDQiAvKiBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJBcnJheVBh
cmFtZXRlci5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxNUI4QjdDNjE2NTJDNTIyMDAzNkVGNTUgLyog
SlNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07Ci0JCTE1QjhCN0M3MTY1MkM1MjIwMDM2RUY1NSAvKiBKU1dlYktpdENT
U01peEZ1bmN0aW9uVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNX
ZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTE1Qzc3MDg5MTAwRDNDNkEwMDVCQTI2NyAvKiBWYWxpZGl0eVN0YXRlLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBWYWxpZGl0eVN0YXRlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMTVDNzcwOEExMDBEM0M2QTAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmFsaWRpdHlTdGF0ZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkxNUM3NzA5MTEwMEQzQ0E4MDA1QkEyNjcgLyogSlNWYWxpZGl0eVN0
YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVmFsaWRpdHlTdGF0ZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtODAyOSw3ICs3OTY5LDYgQEAKIAkJMzEy
RDY3QjAxNTM1NjkxRjAwNTYzRDBEIC8qIERpY3Rpb25hcnkuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRGljdGlvbmFyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTMxMzEzRjYzMTQ0M0IzNUUwMDZFMkE5MCAvKiBGaWx0ZXJFZmZlY3RSZW5kZXJl
ci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWx0ZXJFZmZlY3RS
ZW5kZXJlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMzEzRjY0MTQ0M0Iz
NUUwMDZFMkE5MCAvKiBGaWx0ZXJFZmZlY3RSZW5kZXJlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBGaWx0ZXJFZmZlY3RSZW5kZXJlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQkzMTM4QTlFNDE0NzQ0MzQ2MDBCMEVEMTIgLyogU3R5bGVTaGFkZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gU3R5bGVTaGFkZXIuaDsgcGF0aCA9IHN0eWxl
L1N0eWxlU2hhZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxNDAzNzk3MTI0
QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IG5hbWUgPSBXZWJDb3JlTW90aW9uTWFuYWdlci5oOyBwYXRoID0gaW9zL1dlYkNv
cmVNb3Rpb25NYW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxNDAzNzk4
MTI0QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IFdlYkNvcmVNb3Rpb25NYW5hZ2VyLm1tOyBwYXRo
ID0gaW9zL1dlYkNvcmVNb3Rpb25NYW5hZ2VyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQkzMTQwMzc5OTEyNEJFQTdGMDBBRjQwRTQgLyogRGV2aWNlT3JpZW50YXRpb25DbGllbnRJ
T1MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRGV2aWNlT3JpZW50YXRpb25D
bGllbnRJT1MuaDsgcGF0aCA9IGlvcy9EZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtODY3Myw0OCArODYxMiwxNCBAQAogCQk0RkFCNDg2
NjE2NDNBNjdFMDBGNzBDMDcgLyogTm9kZVJhcmVEYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IE5vZGVSYXJlRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTRGQjM5MEFDMTVFRjYxRjMwMDdBRDUxRiAvKiBHZW5lcmF0ZWRJbWFnZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHZW5lcmF0ZWRJbWFnZS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUwMUJBQUE4MTM5NTBFMkMwMEY3QUNFQiAv
KiBXaW5kUnVsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXaW5kUnVsZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MDM4QkMwNjE0NzExQ0RCMDA5NUUwRDEg
LyogV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQk1MDM4QkUyRDE0NzJBRDIzMDA5NUUwRDEgLyogU3R5bGVDYWNoZWRTaGFkZXIuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gU3R5bGVDYWNoZWRTaGFkZXIu
Y3BwOyBwYXRoID0gc3R5bGUvU3R5bGVDYWNoZWRTaGFkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk1MDM4QkUyRTE0NzJBRDIzMDA5NUUwRDEgLyogU3R5bGVDYWNoZWRTaGFk
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gU3R5bGVDYWNoZWRTaGFkZXIu
aDsgcGF0aCA9IHN0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTUwMzhCRTNFMTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkU2hhZGVyLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzOEJFM0YxNDcyQUQ5ODAwOTVFMEQxIC8qIENh
Y2hlZFNoYWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRTaGFk
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzRDBDQTcxNEI1QjA4NzAwRjMy
RjU3IC8qIEN1c3RvbUZpbHRlclByb2dyYW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1c3Rv
bUZpbHRlclByb2dyYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MDNEMENB
NzE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmlsdGVyUmVuZGVyZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ3VzdG9tRmlsdGVyUmVuZGVyZXIuY3BwOyBwYXRo
ID0gZmlsdGVycy9DdXN0b21GaWx0ZXJSZW5kZXJlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTUwM0QwQ0E4MTRCNUIwODcwMEYzMkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFt
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlclByb2dyYW0u
aDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk1MDNEMENBODE0QjVCMDg3MDBGMzJGNTggLyogQ3VzdG9tRmlsdGVyUmVu
ZGVyZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyUmVu
ZGVyZXIuaDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTAzRDBDQTkxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZp
bHRlclByb2dyYW1DbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9n
cmFtQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwM0QwQ0FEMTRCNUIw
QkEwMEYzMkY1NyAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmg7IHBhdGggPSBzdHls
ZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNTA0QUFDQ0IxODM0NDU1OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVGaW5kZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVjdG9yTm9kZUZpbmRlci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUwNEFBQ0NDMTgzNDQ1NTkwMEUzRDlC
QyAvKiBJbnNwZWN0b3JOb2RlRmluZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEluc3BlY3Rvck5vZGVGaW5kZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NTA4MUUzREYzQ0ZDODBDMTZFRjhCNDhCIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTA4MUUzRTEzRDAyODBDMTZFRjhC
NDhCIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTUwOENDQTREMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGbG93VGhyZWFkLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlckZsb3dUaHJlYWQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTA4Q0NBNEUxM0NGMTA2QjAwMzE1MUYzIC8qIFJlbmRl
ckZsb3dUaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVu
ZGVyRmxvd1RocmVhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwOTMzMzRE
MTYzQjBFNDMwMDA5OUE2MCAvKiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3Qu
Y3BwOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5MzMzNEUxNjNCMEU0MzAwMDk5QTYwIC8qIEN1c3Rv
bUZpbHRlclBhcmFtZXRlckxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0g
Q3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwOTg3QzI0MTU3
RDY3NkQwMEJEQTgzNSAvKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuY3Bw
OyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTA5ODdDMjUxNTdENjc2RDAwQkRBODM1IC8qIEN1c3RvbUZp
bHRlckdsb2JhbENvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ3Vz
dG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwOUNDOUZBMTRDMDY5
RUQwMEJCRUNCRCAvKiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBuYW1lID0gQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmg7IHBhdGggPSBmaWx0ZXJzL0N1
c3RvbUZpbHRlclBhcmFtZXRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk1MDlF
QzEwODE1RTg0OENBMDBFODI1ODEgLyogQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBh
cmFtZXRlci5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBBQ0UyQ0ExNEI1RDc5MzAwNDQ2NjY2
IC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5h
bWUgPSBDdXN0b21GaWx0ZXJPcGVyYXRpb24uaDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwQjQyMTU3MTQ2OTc2
OTYwMDg3RTYwNCAvKiBXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQk1MENDMDg5OTE0QzZFOTlDMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVyTnVtYmVy
UGFyYW1ldGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRl
ck51bWJlclBhcmFtZXRlci5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJOdW1iZXJQYXJh
bWV0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBDQzBBMzgxNEM2RjVCMTAw
MTdBQjUxIC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwOyBwYXRoID0gZmlsdGVy
cy9DdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk1MEQxMEQ5NzE1NDVGNTc2MDA5NkQyODggLyogUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlckxheWVyRmlsdGVySW5m
by5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUwRDEwRDk4MTU0NUY1NzYwMDk2
RDI4OCAvKiBSZW5kZXJMYXllckZpbHRlckluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCTUwRDMyODU1MTYzQjMxM0YwMDE2MTExRSAvKiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJP
cGVyYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcDsgcGF0aCA9IGZpbHRlcnMvVmFsaWRhdGVkQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBE
MzI4NTYxNjNCMzEzRjAwMTYxMTFFIC8qIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJP
cGVyYXRpb24uaDsgcGF0aCA9IGZpbHRlcnMvVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwRDQwM0M1MTQ3NjhDOTQwMEQzMEJC
NSAvKiBGRUN1c3RvbUZpbHRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBGRUN1c3RvbUZpbHRlci5jcHA7IHBhdGggPSBmaWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBENDAzQzYxNDc2OEM5NDAwRDMwQkI1
IC8qIEZFQ3VzdG9tRmlsdGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEZF
Q3VzdG9tRmlsdGVyLmg7IHBhdGggPSBmaWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwRDQwNUY3MTQ3RDMxRjMwMEQzMEJCNSAvKiBDdXN0b21G
aWx0ZXJNZXNoLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEN1c3Rv
bUZpbHRlck1lc2guY3BwOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTBENDA1RjgxNDdEMzFGMzAwRDMwQkI1IC8qIEN1
c3RvbUZpbHRlck1lc2guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ3VzdG9t
RmlsdGVyTWVzaC5oOyBwYXRoID0gZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwRDQwNjBGMTQ3RDQ5REUwMEQzMEJCNSAvKiBDdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcDsgcGF0aCA9IGZpbHRlcnMvQ3Vz
dG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJNTBENDA2MTAxNDdENDlERTAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJDb21waWxl
ZFByb2dyYW0uaDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwRDg4Q0IzMTVCREZEQUEwMDE4MDlGNCAv
KiBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1
c3RvbUZpbHRlclByb2dyYW1JbmZvLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJ
NTBEODhDQjQxNUJERkRBQTAwMTgwOUY0IC8qIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmg7
IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1JbmZvLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTUwRTE4Q0Q1MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZp
bHRlclByb2dyYW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcDsgcGF0aCA9IHN0eWxlL1N0eWxlQ3VzdG9tRmlsdGVy
UHJvZ3JhbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwRTE4Q0Q2MTZGOTI4
NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNo
ZS5jcHA7IHBhdGggPSBzdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUwRTE4Q0Q3MTZGOTI4NTgwMEM2NTQ4NiAvKiBT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZS5oOyBwYXRoID0gc3R5bGUvU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNTEwMTg0NjcwQjA4NjAyQTAwNEE4MjVGIC8qIENhY2hlZFBhZ2UuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FjaGVkUGFnZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk1MTAxODQ2ODBCMDg2MDJBMDA0QTgyNUYgLyogQ2FjaGVkUGFnZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYWNoZWRQYWdlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTEwMTk0M0UxODM2RDIwODAwOTI1NTIzIC8qIElEQkluZGV4
V3JpdGVyTGV2ZWxEQi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJ
REJJbmRleFdyaXRlckxldmVsREIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAt
OTM1MSw4ICs5MjU2LDYgQEAKIAkJN0NDN0UzRDYxNzIwOEMwRjAwM0M1Mjc3IC8qIElETlNjcmlw
dFdoaXRlTGlzdC50eHQgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSUROU2NyaXB0V2hpdGVMaXN0
LnR4dDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0NFNkNCRkExODdGMzcwNzAwRDQ2
QkY1IC8qIEZvcm1hdENvbnZlcnRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBGb3JtYXRDb252ZXJ0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0NFNkNC
RkMxODdGMzk0OTAwRDQ2QkY1IC8qIEZvcm1hdENvbnZlcnRlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGb3JtYXRDb252ZXJ0ZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwotCQk3RTEyRTkwRDE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmlsdGVy
TWVzaEdlbmVyYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21G
aWx0ZXJNZXNoR2VuZXJhdG9yLmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hHZW5l
cmF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJN0UxMkU5MEUxNUZBNUQzQTAw
NUU0MTI2IC8qIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHA7IHBhdGgg
PSBmaWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk3RTMzQ0QwMDEyN0YzNDBEMDBCRThGMTcgLyogUHVyZ2VQcmlvcml0eS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQdXJnZVByaW9yaXR5Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdFMzdFRjJEMTMzOTIwODgwMEIyOTI1MCAvKiBTdWJy
ZXNvdXJjZUxvYWRlckNGLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFN1YnJlc291cmNlTG9hZGVyQ0YuY3BwOyBwYXRoID0gY2YvU3VicmVzb3VyY2VMb2FkZXJDRi5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdFNDI4Q0U0MTNFMzQwN0YwMDNCNjYx
QyAvKiBSZXNvdXJjZUhhbmRsZUlPUy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IFJlc291cmNlSGFuZGxlSU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtMTA2NjQsMTkgKzEwNTY3LDcgQEAKIAkJQTFFMTE1NDMxMzAxNUMzRDAwNTRBQzhDIC8q
IERpc3RhbnRMaWdodFNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBEaXN0YW50TGlnaHRTb3VyY2UuY3BwOyBwYXRoID0gZmlsdGVycy9EaXN0YW50TGlnaHRT
b3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMUUxMTU0NTEzMDE1QzRF
MDA1NEFDOEMgLyogUG9pbnRMaWdodFNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBQb2ludExpZ2h0U291cmNlLmNwcDsgcGF0aCA9IGZpbHRlcnMvUG9pbnRM
aWdodFNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExRTExNTQ3MTMw
MTVDNUQwMDU0QUM4QyAvKiBTcG90TGlnaHRTb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gU3BvdExpZ2h0U291cmNlLmNwcDsgcGF0aCA9IGZpbHRlcnMvU3Bv
dExpZ2h0U291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQTI0QkY3Nzkx
NUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMjRCRjc3QTE1Q0MzQkFGMDAzMTkxRjIgLyogV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKLQkJQTI5NTMyQ0QxNURENUUxNzAwNDY5RUJDIC8qIEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ3Vz
dG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHA7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMjk1
MzJDRTE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9n
cmFtLmg7IHBhdGggPSBmaWx0ZXJzL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQTJCMkFFN0IxNjM3NUVFNTAwQ0ZBNTBCIC8qIEN1
c3RvbUZpbHRlckNvbnN0YW50cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBD
dXN0b21GaWx0ZXJDb25zdGFudHMuaDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29uc3Rh
bnRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUEyQjkyMTcyMTZDNUNDNDIwMDQx
RENEOSAvKiBJbnRSZWN0RXh0ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEludFJlY3RFeHRlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQTJFOEFFMkUx
NkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENTU0ZpbHRlclJ1bGUuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUEyRThBRTJGMTZBNDhFMUMwMDZCQjNBQSAvKiBXZWJLaXRD
U1NGaWx0ZXJSdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYktpdENT
U0ZpbHRlclJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQTJFOEFFMzUxNkE0
OTg0MDAwNkJCM0FBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyUnVsZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUzNjE2QTQ5ODQwMDA2QkIzQUEgLyogSlNXZWJL
aXRDU1NGaWx0ZXJSdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2Vi
S2l0Q1NTRmlsdGVyUnVsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMkU4QUUz
RDE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBET01XZWJLaXRDU1NGaWx0ZXJSdWxlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUEyRThBRTNFMTZBNDk4Q0YwMDZCQjNBQSAvKiBET01XZWJL
aXRDU1NGaWx0ZXJSdWxlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRo
ID0gRE9NV2ViS2l0Q1NTRmlsdGVyUnVsZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJQTJFOEFFM0YxNkE0OThDRjAwNkJCM0FBIC8qIERPTVdlYktpdENTU0ZpbHRlclJ1bGVJbnRl
cm5hbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01XZWJLaXRDU1NGaWx0
ZXJSdWxlSW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTMxQzRFNEMx
NkUwMkFBNjAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gT0VTVGV4dHVyZUhhbGZGbG9hdC5jcHA7IHBhdGggPSBj
YW52YXMvT0VTVGV4dHVyZUhhbGZGbG9hdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUEzMUM0RTRFMTZFMDJBQjQwMDJGNzk1NyAvKiBPRVNUZXh0dXJlSGFsZkZsb2F0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE9FU1RleHR1cmVIYWxmRmxvYXQuaDsgcGF0
aCA9IGNhbnZhcy9PRVNUZXh0dXJlSGFsZkZsb2F0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUEzMUM0RTUwMTZFMDJBQzUwMDJGNzk1NyAvKiBPRVNUZXh0dXJlSGFsZkZsb2F0Lmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IG5hbWUgPSBPRVNUZXh0dXJlSGFsZkZsb2F0LmlkbDsgcGF0aCA9IGNhbnZhcy9PRVNUZXh0dXJl
SGFsZkZsb2F0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzNjE2LDkgKzEz
NTA3LDYgQEAKIAkJRkFCRTcyRjMxMDU5QzFFQjAwRDk5OUREIC8qIG1hdGh0YWdzLmluICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IG1hdGh0YWdzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlGQUJFNzJGQjEwNTlDMjExMDBEOTk5REQgLyogTWF0aE1MRWxlbWVudEZhY3RvcnkuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWF0aE1MRWxlbWVudEZhY3Rv
cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGQUJFNzJGQzEwNTlDMjExMDBE
OTk5REQgLyogTWF0aE1MTmFtZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gTWF0aE1MTmFtZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlGQjBC
NzVFRTE3MjM0Mjg1MDBGMDVEMkEgLyogV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJLaXRDU1NNYXRGdW5jdGlvblZh
bHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJRkIwQjc1RUYxNzIzNDI4NTAw
RjA1RDJBIC8qIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwotCQlGQjFBNjZEOTE3MjI1QTY2MDBCQUE3QUYgLyogQ3VzdG9tRmlsdGVy
Q29sb3JQYXJhbWV0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ3VzdG9t
RmlsdGVyQ29sb3JQYXJhbWV0ZXIuaDsgcGF0aCA9IGZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29sb3JQ
YXJhbWV0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRkIyQzE1QzIxNjVENjQ5
MDAwMzlDOUY4IC8qIENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUZCMzA1NkMxMTY5RTVEQUMwMDk2QTIzMiAvKiBDU1NHcm91
cGluZ1J1bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTR3JvdXBpbmdS
dWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUZCNDg0RjRBMTcxRjgyMUUwMDA0
MDc1NSAvKiBUcmFuc2Zvcm1GdW5jdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gVHJhbnNmb3JtRnVuY3Rpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTE2NTQ1LDkgKzE2NDMzLDYgQEAKIAkJCQk4NThDMzhBNDBBQThGMjA0MDBCMTg3
QTQgLyogRE9NUmVjdC5tbSAqLywKIAkJCQk4NTVEMzU4OTBBRDcwNzMxMDAxOUFBQzcgLyogRE9N
UkdCQ29sb3IuaCAqLywKIAkJCQlCQ0FFRkNBRDEwMTZDRTRBMDA0MEQzNEUgLyogRE9NUkdCQ29s
b3IubW0gKi8sCi0JCQkJQTJFOEFFM0QxNkE0OThDRjAwNkJCM0FBIC8qIERPTVdlYktpdENTU0Zp
bHRlclJ1bGUuaCAqLywKLQkJCQlBMkU4QUUzRTE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0
Q1NTRmlsdGVyUnVsZS5tbSAqLywKLQkJCQlBMkU4QUUzRjE2QTQ5OENGMDA2QkIzQUEgLyogRE9N
V2ViS2l0Q1NTRmlsdGVyUnVsZUludGVybmFsLmggKi8sCiAJCQkJMzEwNjAzNzYxNDMyODFDRDAw
QUJGNEJBIC8qIERPTVdlYktpdENTU0ZpbHRlclZhbHVlLmggKi8sCiAJCQkJMzEwNjAzNzcxNDMy
ODFDRDAwQUJGNEJBIC8qIERPTVdlYktpdENTU0ZpbHRlclZhbHVlLm1tICovLAogCQkJCTMxMDYw
Mzc4MTQzMjgxQ0QwMEFCRjRCQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJWYWx1ZUludGVybmFsLmgg
Ki8sCkBAIC0xODEyMiwzMyArMTgwMDcsNiBAQAogCQlBNzVFOEI3RjBFMURFMkIwMDA3RjI0ODEg
LyogZmlsdGVycyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCi0J
CQkJMTVCM0ZDMTcxNUZCMjE3ODAwQTgxQkNCIC8qIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVy
LmggKi8sCi0JCQkJRkIxQTY2RDkxNzIyNUE2NjAwQkFBN0FGIC8qIEN1c3RvbUZpbHRlckNvbG9y
UGFyYW1ldGVyLmggKi8sCi0JCQkJNTBENDA2MEYxNDdENDlERTAwRDMwQkI1IC8qIEN1c3RvbUZp
bHRlckNvbXBpbGVkUHJvZ3JhbS5jcHAgKi8sCi0JCQkJNTBENDA2MTAxNDdENDlERTAwRDMwQkI1
IC8qIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oICovLAotCQkJCUEyQjJBRTdCMTYzNzVF
RTUwMENGQTUwQiAvKiBDdXN0b21GaWx0ZXJDb25zdGFudHMuaCAqLywKLQkJCQk1MDk4N0MyNDE1
N0Q2NzZEMDBCREE4MzUgLyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHAgKi8sCi0JCQkJ
NTA5ODdDMjUxNTdENjc2RDAwQkRBODM1IC8qIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaCAq
LywKLQkJCQk1MEQ0MDVGNzE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyTWVzaC5jcHAg
Ki8sCi0JCQkJNTBENDA1RjgxNDdEMzFGMzAwRDMwQkI1IC8qIEN1c3RvbUZpbHRlck1lc2guaCAq
LywKLQkJCQk3RTEyRTkwRTE1RkE1RDNBMDA1RTQxMjYgLyogQ3VzdG9tRmlsdGVyTWVzaEdlbmVy
YXRvci5jcHAgKi8sCi0JCQkJN0UxMkU5MEQxNUZBNUQzQTAwNUU0MTI2IC8qIEN1c3RvbUZpbHRl
ck1lc2hHZW5lcmF0b3IuaCAqLywKLQkJCQk1MENDMDg5OTE0QzZFOTlDMDAxN0FCNTEgLyogQ3Vz
dG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmggKi8sCi0JCQkJNTBDQzBBMzgxNEM2RjVCMTAwMTdB
QjUxIC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgKi8sCi0JCQkJNTBBQ0UyQ0ExNEI1RDc5
MzAwNDQ2NjY2IC8qIEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oICovLAotCQkJCTUwOUNDOUZBMTRD
MDY5RUQwMEJCRUNCRCAvKiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCAqLywKLQkJCQk1MDkzMzM0
RDE2M0IwRTQzMDAwOTlBNjAgLyogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAgKi8sCi0J
CQkJNTA5MzMzNEUxNjNCMEU0MzAwMDk5QTYwIC8qIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3Qu
aCAqLywKLQkJCQk1MDNEMENBNzE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3Jh
bS5jcHAgKi8sCi0JCQkJNTAzRDBDQTgxNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclBy
b2dyYW0uaCAqLywKLQkJCQk1MDNEMENBOTE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVy
UHJvZ3JhbUNsaWVudC5oICovLAotCQkJCTUwRDg4Q0IzMTVCREZEQUEwMDE4MDlGNCAvKiBDdXN0
b21GaWx0ZXJQcm9ncmFtSW5mby5jcHAgKi8sCi0JCQkJNTBEODhDQjQxNUJERkRBQTAwMTgwOUY0
IC8qIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmggKi8sCi0JCQkJNTAzRDBDQTcxNEI1QjA4NzAw
RjMyRjU4IC8qIEN1c3RvbUZpbHRlclJlbmRlcmVyLmNwcCAqLywKLQkJCQk1MDNEMENBODE0QjVC
MDg3MDBGMzJGNTggLyogQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCAqLywKLQkJCQk1MDlFQzEwODE1
RTg0OENBMDBFODI1ODEgLyogQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyLmggKi8sCi0J
CQkJQTI5NTMyQ0QxNURENUUxNzAwNDY5RUJDIC8qIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dy
YW0uY3BwICovLAotCQkJCUEyOTUzMkNFMTVERDVFMTcwMDQ2OUVCQyAvKiBDdXN0b21GaWx0ZXJW
YWxpZGF0ZWRQcm9ncmFtLmggKi8sCiAJCQkJQTFFMTE1NDMxMzAxNUMzRDAwNTRBQzhDIC8qIERp
c3RhbnRMaWdodFNvdXJjZS5jcHAgKi8sCiAJCQkJODQ3MzBENUExMjQ4RjBCMzAwRDNBOUM5IC8q
IERpc3RhbnRMaWdodFNvdXJjZS5oICovLAogCQkJCUE3NUU4QjgwMEUxREUyRDYwMDdGMjQ4MSAv
KiBGRUJsZW5kLmNwcCAqLywKQEAgLTE4MTYxLDggKzE4MDE5LDYgQEAKIAkJCQlBNzVFOEI4NzBF
MURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuaCAqLywKIAkJCQk4NDczMEQ1QjEyNDhGMEIz
MDBEM0E5QzkgLyogRkVDb252b2x2ZU1hdHJpeC5jcHAgKi8sCiAJCQkJODQ3MzBENUMxMjQ4RjBC
MzAwRDNBOUM5IC8qIEZFQ29udm9sdmVNYXRyaXguaCAqLywKLQkJCQk1MEQ0MDNDNTE0NzY4Qzk0
MDBEMzBCQjUgLyogRkVDdXN0b21GaWx0ZXIuY3BwICovLAotCQkJCTUwRDQwM0M2MTQ3NjhDOTQw
MEQzMEJCNSAvKiBGRUN1c3RvbUZpbHRlci5oICovLAogCQkJCTg0NzMwRDVEMTI0OEYwQjMwMEQz
QTlDOSAvKiBGRURpZmZ1c2VMaWdodGluZy5jcHAgKi8sCiAJCQkJODQ3MzBENUUxMjQ4RjBCMzAw
RDNBOUM5IC8qIEZFRGlmZnVzZUxpZ2h0aW5nLmggKi8sCiAJCQkJODQ3MzBENUYxMjQ4RjBCMzAw
RDNBOUM5IC8qIEZFRGlzcGxhY2VtZW50TWFwLmNwcCAqLywKQEAgLTE4MjAzLDggKzE4MDU5LDYg
QEAKIAkJCQk4NEE4MUY0MDBGQzdFMDI3MDA5NTUzMDAgLyogU291cmNlR3JhcGhpYy5oICovLAog
CQkJCUExRTExNTQ3MTMwMTVDNUQwMDU0QUM4QyAvKiBTcG90TGlnaHRTb3VyY2UuY3BwICovLAog
CQkJCTg0NzMwRDc2MTI0OEYwQjMwMEQzQTlDOSAvKiBTcG90TGlnaHRTb3VyY2UuaCAqLywKLQkJ
CQk1MEQzMjg1NTE2M0IzMTNGMDAxNjExMUUgLyogVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uLmNwcCAqLywKLQkJCQk1MEQzMjg1NjE2M0IzMTNGMDAxNjExMUUgLyogVmFsaWRhdGVkQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uLmggKi8sCiAJCQkpOwogCQkJbmFtZSA9IGZpbHRlcnM7CiAJCQlz
b3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAtMTg4NDksOCArMTg3MDMsNiBAQAogCQkJCUJDRTAx
Mzk5MEMwQkVGMTgwMDQzODYwQSAvKiBKU1N0eWxlU2hlZXQuaCAqLywKIAkJCQlBODRFQkQ4MjBD
QjhDOTc3MDAwNzk2MDkgLyogSlNTdHlsZVNoZWV0TGlzdC5jcHAgKi8sCiAJCQkJQTg0RUJEODEw
Q0I4Qzk3NzAwMDc5NjA5IC8qIEpTU3R5bGVTaGVldExpc3QuaCAqLywKLQkJCQlBMkU4QUUzNTE2
QTQ5ODQwMDA2QkIzQUEgLyogSlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcCAqLywKLQkJCQlBMkU4
QUUzNjE2QTQ5ODQwMDA2QkIzQUEgLyogSlNXZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi8sCiAJCQkJ
MzEwNjAzNzIxNDMyODE5QzAwQUJGNEJBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwICov
LAogCQkJCTMxMDYwMzczMTQzMjgxOUMwMEFCRjRCQSAvKiBKU1dlYktpdENTU0ZpbHRlclZhbHVl
LmggKi8sCiAJCQkJMzE2RkUwNkQwRTZDQ0JFRTAwQkY2MDg4IC8qIEpTV2ViS2l0Q1NTS2V5ZnJh
bWVSdWxlLmNwcCAqLywKQEAgLTE4ODU5LDggKzE4NzExLDYgQEAKIAkJCQkzMTZGRTA3MDBFNkND
QkVFMDBCRjYwODggLyogSlNXZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmggKi8sCiAJCQkJNDk4Mzkx
M0QwRjFFNzY3NTAwQzIzNzgyIC8qIEpTV2ViS2l0Q1NTTWF0cml4LmNwcCAqLywKIAkJCQk0OTgz
OTEzRTBGMUU3Njc1MDBDMjM3ODIgLyogSlNXZWJLaXRDU1NNYXRyaXguaCAqLywKLQkJCQkxNUI4
QjdDNjE2NTJDNTIyMDAzNkVGNTUgLyogSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCAq
LywKLQkJCQkxNUI4QjdDNzE2NTJDNTIyMDAzNkVGNTUgLyogSlNXZWJLaXRDU1NNaXhGdW5jdGlv
blZhbHVlLmggKi8sCiAJCQkJOEFDQzI0Q0QxNDhFMjRCMjAwRUZDQzBEIC8qIEpTV2ViS2l0Q1NT
UmVnaW9uUnVsZS5jcHAgKi8sCiAJCQkJOEFDQzI0Q0UxNDhFMjRCMjAwRUZDQzBEIC8qIEpTV2Vi
S2l0Q1NTUmVnaW9uUnVsZS5oICovLAogCQkJCTMxNjExRTU4MEUxQzRERTAwMEY2QTU3OSAvKiBK
U1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmNwcCAqLywKQEAgLTE5MTMwLDggKzE4OTgwLDYgQEAK
IAkJCQk2QzYzODg5M0E5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5p
dGlhdG9ycy5oICovLAogCQkJCUJDQjE2QzBBMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRTY3Jp
cHQuY3BwICovLAogCQkJCUJDQjE2QzBCMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRTY3JpcHQu
aCAqLywKLQkJCQk1MDM4QkUzRTE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmNwcCAq
LywKLQkJCQk1MDM4QkUzRjE0NzJBRDk4MDA5NUUwRDEgLyogQ2FjaGVkU2hhZGVyLmggKi8sCiAJ
CQkJRDBCQzU0NDgxNDQzQUM0QTAwRTEwNURBIC8qIENhY2hlZFN0eWxlU2hlZXRDbGllbnQuaCAq
LywKIAkJCQlBMTA0RjI0MTE0QzcxRjdBMDA5RTJDMjMgLyogQ2FjaGVkU1ZHRG9jdW1lbnQuY3Bw
ICovLAogCQkJCUExMDRGMjQyMTRDNzFGN0EwMDlFMkMyMyAvKiBDYWNoZWRTVkdEb2N1bWVudC5o
ICovLApAQCAtMjA2MDEsMTIgKzIwNDQ5LDYgQEAKIAkJCQlCQ0VGNDQ0QzBFNjc0NjI4MDAxQzEy
ODcgLyogU3R5bGVDYWNoZWRJbWFnZS5oICovLAogCQkJCTkzOTNFNjAyMTUxQTlBMTgwMDA2NkYw
NiAvKiBTdHlsZUNhY2hlZEltYWdlU2V0LmNwcCAqLywKIAkJCQk5MzkzRTYwMzE1MUE5QTE4MDAw
NjZGMDYgLyogU3R5bGVDYWNoZWRJbWFnZVNldC5oICovLAotCQkJCTUwMzhCRTJEMTQ3MkFEMjMw
MDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRlci5jcHAgKi8sCi0JCQkJNTAzOEJFMkUxNDcyQUQy
MzAwOTVFMEQxIC8qIFN0eWxlQ2FjaGVkU2hhZGVyLmggKi8sCi0JCQkJNTBFMThDRDUxNkY5Mjg1
ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgKi8sCi0JCQkJNTAzRDBD
QUQxNEI1QjBCQTAwRjMyRjU3IC8qIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oICovLAotCQkJ
CTUwRTE4Q0Q2MTZGOTI4NTgwMEM2NTQ4NiAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNo
ZS5jcHAgKi8sCi0JCQkJNTBFMThDRDcxNkY5Mjg1ODAwQzY1NDg2IC8qIFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbUNhY2hlLmggKi8sCiAJCQkJQkM1RUI2N0UwRTgxRDRBNzAwQjI1OTY1IC8qIFN0
eWxlRGFzaGJvYXJkUmVnaW9uLmggKi8sCiAJCQkJQkM1RUI4QjYwRTgyMDFCRDAwQjI1OTY1IC8q
IFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI4QjcwRTgy
MDFCRDAwQjI1OTY1IC8qIFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5oICovLApAQCAt
MjA2MzIsNyArMjA0NzQsNiBAQAogCQkJCUJDMjI3MkJBMEU4MkVBQUUwMEU3Rjk3NSAvKiBTdHls
ZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcCAqLywKIAkJCQlCQzIyNzJCQjBFODJFQUFFMDBFN0Y5
NzUgLyogU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oICovLAogCQkJCUJDMjI3Mjg2MEU4MkU3
MDcwMEU3Rjk3NSAvKiBTdHlsZVJlZmxlY3Rpb24uaCAqLywKLQkJCQkzMTM4QTlFNDE0NzQ0MzQ2
MDBCMEVEMTIgLyogU3R5bGVTaGFkZXIuaCAqLywKIAkJCQlCQzVFQjVFNjBFODFCRkVGMDBCMjU5
NjUgLyogU3R5bGVTdXJyb3VuZERhdGEuY3BwICovLAogCQkJCUJDNUVCNUU0MEU4MUJGNkQwMEIy
NTk2NSAvKiBTdHlsZVN1cnJvdW5kRGF0YS5oICovLAogCQkJCUJDNUVCODBEMEU4MUYyQ0UwMEIy
NTk2NSAvKiBTdHlsZVRyYW5zZm9ybURhdGEuY3BwICovLApAQCAtMjE3MzUsMTAgKzIxNTc2LDYg
QEAKIAkJCQlCQzVFQzE3NjBBNTA3RTNFMDA2MDA3RjUgLyogdmlldy1zb3VyY2UuY3NzICovLAog
CQkJCTNGRkZGOUFCMTU5RDlCMDYwMDIwQkJENSAvKiBWaWV3cG9ydFN0eWxlUmVzb2x2ZXIuY3Bw
ICovLAogCQkJCTNGRkZGOUFDMTU5RDlCMDYwMDIwQkJENSAvKiBWaWV3cG9ydFN0eWxlUmVzb2x2
ZXIuaCAqLywKLQkJCQkxNTBCOTIzNzE1RjA4REM0MDBFMTA5ODYgLyogV2ViS2l0Q1NTQXJyYXlG
dW5jdGlvblZhbHVlLmNwcCAqLywKLQkJCQkxNTBCOTIzODE1RjA4REM0MDBFMTA5ODYgLyogV2Vi
S2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmggKi8sCi0JCQkJQTJFOEFFMkUxNkE0OEUxQzAwNkJC
M0FBIC8qIFdlYktpdENTU0ZpbHRlclJ1bGUuY3BwICovLAotCQkJCUEyRThBRTJGMTZBNDhFMUMw
MDZCQjNBQSAvKiBXZWJLaXRDU1NGaWx0ZXJSdWxlLmggKi8sCiAJCQkJMzEwNjAzNkMxNDMyN0Qy
RTAwQUJGNEJBIC8qIFdlYktpdENTU0ZpbHRlclZhbHVlLmNwcCAqLywKIAkJCQkzMTA2MDM2RDE0
MzI3RDJFMDBBQkY0QkEgLyogV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCAqLywKIAkJCQkzMTA2MDM2
RTE0MzI3RDJFMDBBQkY0QkEgLyogV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsICovLApAQCAtMjE3
NDgsMTggKzIxNTg1LDEyIEBACiAJCQkJMzEyODhFNzAwRTMwMDVENjAwMzYxOUFFIC8qIFdlYktp
dENTU0tleWZyYW1lc1J1bGUuY3BwICovLAogCQkJCTMxMjg4RTcxMEUzMDA1RDYwMDM2MTlBRSAv
KiBXZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmggKi8sCiAJCQkJMzE2RkUwOTIwRTZDQ0Q3RjAwQkY2
MDg4IC8qIFdlYktpdENTU0tleWZyYW1lc1J1bGUuaWRsICovLAotCQkJCUZCMEI3NUVFMTcyMzQy
ODUwMEYwNUQyQSAvKiBXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcCAqLywKLQkJCQlGQjBC
NzVFRjE3MjM0Mjg1MDBGMDVEMkEgLyogV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5oICovLAog
CQkJCTQ5ODM5MTU1MEYxRTc3NjkwMEMyMzc4MiAvKiBXZWJLaXRDU1NNYXRyaXguY3BwICovLAog
CQkJCTQ5ODM5MTU2MEYxRTc3NjkwMEMyMzc4MiAvKiBXZWJLaXRDU1NNYXRyaXguaCAqLywKIAkJ
CQk0OTgzOTE1NzBGMUU3NzY5MDBDMjM3ODIgLyogV2ViS2l0Q1NTTWF0cml4LmlkbCAqLywKLQkJ
CQlBMjRCRjc3QTE1Q0MzQkFGMDAzMTkxRjIgLyogV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5j
cHAgKi8sCi0JCQkJQTI0QkY3NzkxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0
aW9uVmFsdWUuaCAqLywKIAkJCQk4QUE2MUNGRDE0NEQ1OTVCMDBGMzczNTAgLyogV2ViS2l0Q1NT
UmVnaW9uUnVsZS5jcHAgKi8sCiAJCQkJOEFBNjFDRkUxNDRENTk1QjAwRjM3MzUwIC8qIFdlYktp
dENTU1JlZ2lvblJ1bGUuaCAqLywKIAkJCQk4QUQwQTU1NjE0Qzg3NDI1MDAwRDgzQzUgLyogV2Vi
S2l0Q1NTUmVnaW9uUnVsZS5pZGwgKi8sCi0JCQkJNTAzOEJDMDYxNDcxMUNEQjAwOTVFMEQxIC8q
IFdlYktpdENTU1NoYWRlclZhbHVlLmNwcCAqLywKLQkJCQk1MEI0MjE1NzE0Njk3Njk2MDA4N0U2
MDQgLyogV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaCAqLywKIAkJCQlCQzlBREQ3RjBDQzQwOTIyMDAw
OThDNEMgLyogV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuY3BwICovLAogCQkJCUJDOUFERDIyMEND
NDAzMjYwMDA5OEM0QyAvKiBXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oICovLAogCQkJCTMxNjEx
RTU0MEUxQzRENEEwMEY2QTU3OSAvKiBXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5pZGwgKi8sCkBA
IC0yMzAyMSw3ICsyMjg1Miw2IEBACiAJCQkJNkM2Mzg4OTVBOTZDQ0VFNTBDOEM5NDZDIC8qIENh
Y2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQjE2
QzI0MDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRTY3JpcHQuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDRDUzMzY0MEVENjg0ODkwMDg4NzQ2OCAvKiBDYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5o
IGluIEhlYWRlcnMgKi8sCi0JCQkJNTAzOEJFNDExNDcyQUQ5ODAwOTVFMEQxIC8qIENhY2hlZFNo
YWRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRDBCQzU0NDkxNDQzQUM0QTAwRTEwNURBIC8qIENh
Y2hlZFN0eWxlU2hlZXRDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUExMDRGMjQ0MTRDNzFG
N0EwMDlFMkMyMyAvKiBDYWNoZWRTVkdEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUFF
RjRFNjkxNzBFMTc0ODAwQUIyNzk5IC8qIENhY2hlZFNWR0RvY3VtZW50Q2xpZW50LmggaW4gSGVh
ZGVycyAqLywKQEAgLTIzMjEwLDIzICsyMzA0MCw4IEBACiAJCQkJODY4MTYwRDYxODc2NkExMzAw
MjFFNzlEIC8qIFVzZXJBY3Rpdml0eS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkMyMjcyQUQwRTgy
RThGMzAwRTdGOTc1IC8qIEN1cnNvckxpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTYyQ0QzMjVB
MTE1N0U1N0MwMDYzQjBBNyAvKiBDdXN0b21FdmVudC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMTVC
M0ZDMTkxNUZCMjE3ODAwQTgxQkNCIC8qIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmggaW4g
SGVhZGVycyAqLywKIAkJCQlBNTg0MEUxRDE4N0I3NEQ1MDA4NDNCMTAgLyogSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uQ29va2llLmggaW4gSGVhZGVycyAqLywKLQkJCQk1MEQ0MDYxMjE0N0Q0OURF
MDBEMzBCQjUgLyogQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmggaW4gSGVhZGVycyAqLywK
LQkJCQlBMkIyQUU3QzE2Mzc1RUU1MDBDRkE1MEIgLyogQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmgg
aW4gSGVhZGVycyAqLywKLQkJCQk1MDk4N0MyNzE1N0Q2NzZEMDBCREE4MzUgLyogQ3VzdG9tRmls
dGVyR2xvYmFsQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNTBENDA1RkExNDdEMzFGMzAw
RDMwQkI1IC8qIEN1c3RvbUZpbHRlck1lc2guaCBpbiBIZWFkZXJzICovLAotCQkJCTdFMTJFOTBG
MTVGQTVEM0EwMDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggaW4gSGVhZGVy
cyAqLywKLQkJCQk1MENDMDg5QTE0QzZFOTlDMDAxN0FCNTEgLyogQ3VzdG9tRmlsdGVyTnVtYmVy
UGFyYW1ldGVyLmggaW4gSGVhZGVycyAqLywKLQkJCQk1MEFDRTJDQjE0QjVENzkzMDA0NDY2NjYg
LyogQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNEM5MUExNjE4
MDk5OUYxMDBBMTdGNkQgLyogUmVuZGVyVGV4dExpbmVCb3hlcy5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJNTA5Q0M5RkIxNEMwNjlFRDAwQkJFQ0JEIC8qIEN1c3RvbUZpbHRlclBhcmFtZXRlci5oIGlu
IEhlYWRlcnMgKi8sCi0JCQkJNTA5MzMzNTAxNjNCMEU0MzAwMDk5QTYwIC8qIEN1c3RvbUZpbHRl
clBhcmFtZXRlckxpc3QuaCBpbiBIZWFkZXJzICovLAotCQkJCTUwM0QwQ0FCMTRCNUIwODcwMEYz
MkY1NyAvKiBDdXN0b21GaWx0ZXJQcm9ncmFtLmggaW4gSGVhZGVycyAqLywKLQkJCQk1MDNEMENB
QzE0QjVCMDg3MDBGMzJGNTcgLyogQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oIGluIEhlYWRl
cnMgKi8sCi0JCQkJNTBEODhDQjYxNUJERkRBQTAwMTgwOUY0IC8qIEN1c3RvbUZpbHRlclByb2dy
YW1JbmZvLmggaW4gSGVhZGVycyAqLywKLQkJCQk1MDNEMENBQjE0QjVCMDg3MDBGMzJGNTggLyog
Q3VzdG9tRmlsdGVyUmVuZGVyZXIuaCBpbiBIZWFkZXJzICovLAotCQkJCUEyOTUzMkQwMTVERDVF
MTcwMDQ2OUVCQyAvKiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmggaW4gSGVhZGVycyAq
LywKIAkJCQlBOENCNDEzRTBFODYzM0ZEMDAzMkM0RjAgLyogRGFzaEFycmF5LmggaW4gSGVhZGVy
cyAqLywKIAkJCQlBODBFNkQwQjBBMTk4OUNBMDA3RkI4QzUgLyogRGFzaGJvYXJkUmVnaW9uLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk5N0JDNkEyMTE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2Uu
aCBpbiBIZWFkZXJzICovLApAQCAtMjM2NjksOSArMjM0ODQsNyBAQAogCQkJCUJDMUEzN0MwMDk3
QzcxNUYwMDE5RjNEOCAvKiBET01WaWV3cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDMEZGNDkw
RTRDRUZERDAwN0Q2RkU1IC8qIERPTVdlYktpdEFuaW1hdGlvbkV2ZW50LmggaW4gSGVhZGVycyAq
LywKIAkJCQkzMUMwRkY0QjBFNENFRkREMDA3RDZGRTUgLyogRE9NV2ViS2l0QW5pbWF0aW9uRXZl
bnRJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQTJFOEFFNDAxNkE0OThDRjAwNkJCM0FB
IC8qIERPTVdlYktpdENTU0ZpbHRlclJ1bGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxNUIzQTZF
MTdDQkUyNjcwMDBGQ0NFOCAvKiBBY2Nlc3NpYmlsaXR5U2VhcmNoRmllbGRCdXR0b25zLmggaW4g
SGVhZGVycyAqLywKLQkJCQlBMkU4QUU0MjE2QTQ5OENGMDA2QkIzQUEgLyogRE9NV2ViS2l0Q1NT
RmlsdGVyUnVsZUludGVybmFsLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTA2MDM3OTE0MzI4MUNE
MDBBQkY0QkEgLyogRE9NV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTMxMDYwMzdCMTQzMjgxQ0QwMEFCRjRCQSAvKiBET01XZWJLaXRDU1NGaWx0ZXJWYWx1ZUludGVy
bmFsLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTZGRTA3RDBFNkNDQzI4MDBCRjYwODggLyogRE9N
V2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLmggaW4gSGVhZGVycyAqLywKQEAgLTIzNzkwLDcgKzIzNjAz
LDYgQEAKIAkJCQlBNzVFOEI4RDBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb25lbnRUcmFuc2Zl
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTc1RThCOEYwRTFERTJENjAwN0YyNDgxIC8qIEZFQ29t
cG9zaXRlLmggaW4gSGVhZGVycyAqLywKIAkJCQk4NDczMEQ3OTEyNDhGMEIzMDBEM0E5QzkgLyog
RkVDb252b2x2ZU1hdHJpeC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNTBENDAzQzgxNDc2OEM5NDAw
RDMwQkI1IC8qIEZFQ3VzdG9tRmlsdGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk4NDczMEQ3QjEy
NDhGMEIzMDBEM0E5QzkgLyogRkVEaWZmdXNlTGlnaHRpbmcuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUNEQUI2RDMxMTdDOTI1OTUwMEM2MEIzNCAvKiBVc2VyQWdlbnRTY3JpcHRzLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk4NDczMEQ3RDEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaXNwbGFjZW1lbnRNYXAu
aCBpbiBIZWFkZXJzICovLApAQCAtMjQ3NTksMTIgKzI0NTcxLDEwIEBACiAJCQkJNzdFRjYyRjQx
MkY5REI3NDAwQzc3QkQyIC8qIEpTV2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQ0RDOEI1QUIxODA0N0ZGMTAwMTZFNjg1IC8qIFNvdXJjZUJ1ZmZlclByaXZh
dGVBVkZPYmpDLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUMwRkYzRTBFNENFRkFDMDA3RDZGRTUg
LyogSlNXZWJLaXRBbmltYXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQTJFOEFFMzgx
NkE0OTg0MDAwNkJCM0FBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyUnVsZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMzEwNjAzNzUxNDMyODE5QzAwQUJGNEJBIC8qIEpTV2ViS2l0Q1NTRmlsdGVyVmFsdWUu
aCBpbiBIZWFkZXJzICovLAogCQkJCTMxNkZFMDcyMEU2Q0NCRUUwMEJGNjA4OCAvKiBKU1dlYktp
dENTU0tleWZyYW1lUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE2RkUwNzQwRTZDQ0JFRTAw
QkY2MDg4IC8qIEpTV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NDk4MzkxNDAwRjFFNzY3NTAwQzIzNzgyIC8qIEpTV2ViS2l0Q1NTTWF0cml4LmggaW4gSGVhZGVy
cyAqLywKLQkJCQkxNUI4QjdDOTE2NTJDNTIyMDAzNkVGNTUgLyogSlNXZWJLaXRDU1NNaXhGdW5j
dGlvblZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQk4QUQwQTU5NTE0Qzg4MzM2MDAwRDgzQzUg
LyogSlNXZWJLaXRDU1NSZWdpb25SdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTYxMUU1QjBF
MUM0REUwMDBGNkE1NzkgLyogSlNXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJM0YyQjMzRUYxNjVBRjE1NjAwRTM5ODdDIC8qIEpTV2ViS2l0Q1NTVmlld3BvcnRS
dWxlLmggaW4gSGVhZGVycyAqLywKQEAgLTI1NTM4LDEwICsyNTM0OCw3IEBACiAJCQkJQkM1RUI2
N0IwRTgxRDNCRTAwQjI1OTY1IC8qIFN0eWxlQm94RGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QkNFRjQ0NEQwRTY3NDYyODAwMUMxMjg3IC8qIFN0eWxlQ2FjaGVkSW1hZ2UuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTkzOTNFNjA1MTUxQTlBMTgwMDA2NkYwNiAvKiBTdHlsZUNhY2hlZEltYWdlU2V0
LmggaW4gSGVhZGVycyAqLywKLQkJCQk1MDM4QkUzMDE0NzJBRDIzMDA5NUUwRDEgLyogU3R5bGVD
YWNoZWRTaGFkZXIuaCBpbiBIZWFkZXJzICovLAotCQkJCTUwM0QwQ0FFMTRCNUIwQkEwMEYzMkY1
NyAvKiBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaCBpbiBIZWFkZXJzICovLAogCQkJCTUxNjYw
QUMxMTgyOEM4NDYwMDA3NENBRCAvKiBJREJCYWNraW5nU3RvcmVDdXJzb3JMZXZlbERCLmggaW4g
SGVhZGVycyAqLywKLQkJCQk1MEUxOENEQTE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtQ2FjaGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNUVCNjdGMEU4MUQ0QTcw
MEIyNTk2NSAvKiBTdHlsZURhc2hib2FyZFJlZ2lvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQThD
NEE3RkQwOUQ1NjMyNzAwMDNBQzhEIC8qIFN0eWxlZEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAog
CQkJCUJDNUVCOEI5MEU4MjAxQkQwMEIyNTk2NSAvKiBTdHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJv
eERhdGEuaCBpbiBIZWFkZXJzICovLApAQCAtMjU1NzAsNyArMjUzNzcsNiBAQAogCQkJCUU0QkJF
RDREMTRGQ0RCQTEwMDNGMEI5OCAvKiBTdHlsZVJ1bGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUU0
OTQ2RUFGMTU2RTY0REQwMEQzMjk3RiAvKiBTdHlsZVJ1bGVJbXBvcnQuaCBpbiBIZWFkZXJzICov
LAogCQkJCUE3Qjc2MUExMTYxRUU1MjYwMDIwODNEMyAvKiBTdHlsZVNjb3BlUmVzb2x2ZXIuaCBp
biBIZWFkZXJzICovLAotCQkJCTMxMzhBOUU1MTQ3NDQzNDYwMEIwRUQxMiAvKiBTdHlsZVNoYWRl
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQThFQTgwMEMwQTE5NTE2RTAwQThFRjVGIC8qIFN0eWxl
U2hlZXQuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGNTREQ0U2MTg4MTA1MUQwMDNFRURCQiAvKiBU
ZXh0QXV0b1NpemluZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTRGOUVFRjMxNTZEQTAwNzAwRDIz
RTdFIC8qIFN0eWxlU2hlZXRDb250ZW50cy5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNTk3NSw3ICsy
NTc4MSw2IEBACiAJCQkJMUZBRkJGMTkxNUE1RkE3NDAwMDgzQTIwIC8qIFVUSVV0aWxpdGllcy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJMkUzQkJGMDgxMTYyREExMTAwQjk0MDlBIC8qIFVVSUQuaCBp
biBIZWFkZXJzICovLAogCQkJCUE1MDE5MjBFMTMyRUJGMkUwMDhCRkU1NSAvKiBBdXRvY2FwaXRh
bGl6ZS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNTBEMzI4NTgxNjNCMzEzRjAwMTYxMTFFIC8qIFZh
bGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjVBMTU0
MjgxMjc5NTM0RDAwRDBCMEMwIC8qIFZhbGlkYXRpb25NZXNzYWdlLmggaW4gSGVhZGVycyAqLywK
IAkJCQlGNTEzQTNFQTE1RkY0ODQxMDAxNTI2REIgLyogVmFsaWRhdGlvbk1lc3NhZ2VDbGllbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTE1Qzc3MDhEMTAwRDNDNkIwMDVCQTI2NyAvKiBWYWxpZGl0
eVN0YXRlLmggaW4gSGVhZGVycyAqLywKQEAgLTI2MDU1LDE3ICsyNTg2MCwxMiBAQAogCQkJCTc3
QTE3QTc4MTJGMjg2NDIwMDRFMDJGNiAvKiBXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggaW4g
SGVhZGVycyAqLywKIAkJCQkzMUMwRkYyMjBFNENFQjZFMDA3RDZGRTUgLyogV2ViS2l0QW5pbWF0
aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3NkQ2QzdDMTIyQjhBM0QwMDFGRDFGNyAv
KiBXZWJLaXRCbG9iQnVpbGRlci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMTUwQjkyM0ExNUYwOERD
NDAwRTEwOTg2IC8qIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8s
Ci0JCQkJQTJFOEFFMzExNkE0OEUxQzAwNkJCM0FBIC8qIFdlYktpdENTU0ZpbHRlclJ1bGUuaCBp
biBIZWFkZXJzICovLAogCQkJCTUxRDcxOUNEMTgxMTA2RTAwMDE2REM1MSAvKiBJREJEYXRhYmFz
ZUVycm9yLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTA2MDM3MDE0MzI3RDJFMDBBQkY0QkEgLyog
V2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxMjg4RTczMEUzMDA1
RDYwMDM2MTlBRSAvKiBXZWJLaXRDU1NLZXlmcmFtZVJ1bGUuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTMxMjg4RTc1MEUzMDA1RDYwMDM2MTlBRSAvKiBXZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmggaW4g
SGVhZGVycyAqLywKLQkJCQlGQjcxOUMzRjE3MjM4Q0E4MDAyMkRFMzQgLyogV2ViS2l0Q1NTTWF0
RnVuY3Rpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDk4MzkxNTkwRjFFNzc2OTAwQzIz
NzgyIC8qIFdlYktpdENTU01hdHJpeC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQTI0QkY3N0IxNUND
M0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICov
LAogCQkJCThBQTYxRDAwMTQ0RDU5NUIwMEYzNzM1MCAvKiBXZWJLaXRDU1NSZWdpb25SdWxlLmgg
aW4gSGVhZGVycyAqLywKLQkJCQkyOUNENjFERTE0NkQwMjg5MDA2OEU4MkEgLyogV2ViS2l0Q1NT
U2hhZGVyVmFsdWUuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3OEUwOTQyMTdEMTZFMUMwMDQyMEFB
MSAvKiBSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXJDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDOUFERDIzMENDNDAzMjYwMDA5OEM0QyAvKiBXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJM0ZGRkY5QTkxNTlEOUE1NTAwMjBCQkQ1IC8qIFdlYktpdENTU1Zp
ZXdwb3J0UnVsZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNjY2Nyw3ICsyNjQ2Nyw2IEBACiAJCQkJ
NTA4MUUzQzMzQ0U1ODBDMTZFRjhCNDhCIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQk2QzYzODg5NkE5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0SW5pdGlhdG9ycy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0IxNkMyMzA5NzlD
M0JEMDA0Njc3NDEgLyogQ2FjaGVkU2NyaXB0LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTUwMzhC
RTQwMTQ3MkFEOTgwMDk1RTBEMSAvKiBDYWNoZWRTaGFkZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQTEwNEYyNDMxNEM3MUY3QTAwOUUyQzIzIC8qIENhY2hlZFNWR0RvY3VtZW50LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUUxQjUzMzQ3MTcxN0QwQTEwMEYyMDVGOSAvKiBDYWNoZWRTVkdEb2N1
bWVudFJlZmVyZW5jZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwNzUzODYwMjE0NDg5RTk4MDBC
Nzg0NTIgLyogQ2FjaGVkVGV4dFRyYWNrLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjY4MzMsMTgg
KzI2NjMyLDggQEAKIAkJCQkyNjU1NDE1MjE0ODlCMjMzMDAwREZDNUQgLyogQ3Vyc29ySU9TLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTkzRjE5QTI2MDgyNDVFNTkwMDFFOUFCQyAvKiBDdXJzb3JN
YWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk2MkNEMzI1OTExNTdFNTdDMDA2M0IwQTcgLyogQ3Vz
dG9tRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTBENDA2MTExNDdENDlERTAwRDMwQkI1
IC8qIEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1
MDk4N0MyNjE1N0Q2NzZEMDBCREE4MzUgLyogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHAg
aW4gU291cmNlcyAqLywKLQkJCQk1MEQ0MDVGOTE0N0QzMUYzMDBEMzBCQjUgLyogQ3VzdG9tRmls
dGVyTWVzaC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUMyNjZERTE4MzE5RjMxMDAzRjhCMzMg
LyogQ3J5cHRvS2V5RGF0YVJTQUNvbXBvbmVudHMuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJN0Ux
MkU5MTAxNUZBNUQzQTAwNUU0MTI2IC8qIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJQTU4NEZFM0IxODY0RTJEODAwODQzQjEwIC8qIEpTQ29tbWFuZExp
bmVBUElIb3N0LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTUwQ0MwQTM5MTRDNkY1QjEwMDE3QUI1
MSAvKiBDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTA5MzMz
NEYxNjNCMEU0MzAwMDk5QTYwIC8qIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuY3BwIGluIFNv
dXJjZXMgKi8sCi0JCQkJNTAzRDBDQUExNEI1QjA4NzAwRjMyRjU3IC8qIEN1c3RvbUZpbHRlclBy
b2dyYW0uY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTBEODhDQjUxNUJERkRBQTAwMTgwOUY0IC8q
IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTUwM0QwQ0FB
MTRCNUIwODcwMEYzMkY1OCAvKiBDdXN0b21GaWx0ZXJSZW5kZXJlci5jcHAgaW4gU291cmNlcyAq
LywKLQkJCQlBMjk1MzJDRjE1REQ1RTE3MDA0NjlFQkMgLyogQ3VzdG9tRmlsdGVyVmFsaWRhdGVk
UHJvZ3JhbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5N0JDNkEyMDE1MDVGMDgxMDAxQjc0QUMg
LyogRGF0YWJhc2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTdCQzZBMjMxNTA1RjA4MTAwMUI3
NEFDIC8qIERhdGFiYXNlQXV0aG9yaXplci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMTI1Rjgz
NTE4MjJGMThBMDBEODRDRDkgLyogQ3J5cHRvS2V5SE1BQy5jcHAgaW4gU291cmNlcyAqLywKQEAg
LTI3MTEyLDcgKzI2OTAxLDYgQEAKIAkJCQlCQzFBMzdCRjA5N0M3MTVGMDAxOUYzRDggLyogRE9N
VXRpbGl0eS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTE1Qzc3MEE1MTAwRDQxQ0QwMDVCQTI2NyAv
KiBET01WYWxpZGl0eVN0YXRlLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDMEZGNEEwRTRDRUZE
RDAwN0Q2RkU1IC8qIERPTVdlYktpdEFuaW1hdGlvbkV2ZW50Lm1tIGluIFNvdXJjZXMgKi8sCi0J
CQkJQTJFOEFFNDExNkE0OThDRjAwNkJCM0FBIC8qIERPTVdlYktpdENTU0ZpbHRlclJ1bGUubW0g
aW4gU291cmNlcyAqLywKIAkJCQkzMTA2MDM3QTE0MzI4MUNEMDBBQkY0QkEgLyogRE9NV2ViS2l0
Q1NTRmlsdGVyVmFsdWUubW0gaW4gU291cmNlcyAqLywKIAkJCQlDREYyQjAxMDE4MjA1NDA2MDBG
MkI0MjQgLyogTW9ja0JveC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTZGRTA3RTBFNkNDQzI4
MDBCRjYwODggLyogRE9NV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlLm1tIGluIFNvdXJjZXMgKi8sCkBA
IC0yNzE5Niw3ICsyNjk4NCw2IEBACiAJCQkJQTc1RThCOEUwRTFERTJENjAwN0YyNDgxIC8qIEZF
Q29tcG9zaXRlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTg0NzMwRDc4MTI0OEYwQjMwMEQzQTlD
OSAvKiBGRUNvbnZvbHZlTWF0cml4LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNERDcwODk2MTgz
NTlGNkYwMDJCM0RDNiAvKiBTYW1wbGVNYXAuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTBENDAz
QzcxNDc2OEM5NDAwRDMwQkI1IC8qIEZFQ3VzdG9tRmlsdGVyLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTg0NzMwRDdBMTI0OEYwQjMwMEQzQTlDOSAvKiBGRURpZmZ1c2VMaWdodGluZy5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkwNzhFMDkwQjE3RDE0Q0VFMDA0MjBBQTEgLyogUlRDUGVlckNvbm5l
Y3Rpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODQ3MzBEN0MxMjQ4RjBCMzAwRDNBOUM5IC8q
IEZFRGlzcGxhY2VtZW50TWFwLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjgyMDMsMTIgKzI3OTkw
LDEwIEBACiAJCQkJMEM0NTM0MjcxMENEQkJGQTAwODY5MTU3IC8qIEpTV2ViR0xVbmlmb3JtTG9j
YXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNzdFRjYyRjMxMkY5REI3NDAwQzc3QkQyIC8q
IEpTV2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUMw
RkYzRDBFNENFRkFDMDA3RDZGRTUgLyogSlNXZWJLaXRBbmltYXRpb25FdmVudC5jcHAgaW4gU291
cmNlcyAqLywKLQkJCQlBMkU4QUUzNzE2QTQ5ODQwMDA2QkIzQUEgLyogSlNXZWJLaXRDU1NGaWx0
ZXJSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxMDYwMzc0MTQzMjgxOUMwMEFCRjRCQSAv
KiBKU1dlYktpdENTU0ZpbHRlclZhbHVlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNkZFMDcx
MEU2Q0NCRUUwMEJGNjA4OCAvKiBKU1dlYktpdENTU0tleWZyYW1lUnVsZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkzMTZGRTA3MzBFNkNDQkVFMDBCRjYwODggLyogSlNXZWJLaXRDU1NLZXlmcmFt
ZXNSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQ5ODM5MTNGMEYxRTc2NzUwMEMyMzc4MiAv
KiBKU1dlYktpdENTU01hdHJpeC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkxNUI4QjdDODE2NTJD
NTIyMDAzNkVGNTUgLyogSlNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCThBRDBBNTk0MTRDODgzMzYwMDBEODNDNSAvKiBKU1dlYktpdENTU1JlZ2lvblJ1
bGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzE2MTFFNUEwRTFDNERFMDAwRjZBNTc5IC8qIEpT
V2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJM0YyQjMzRUUx
NjVBRjE1NjAwRTM5ODdDIC8qIEpTV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmNwcCBpbiBTb3VyY2Vz
ICovLApAQCAtMjg4NjgsMTEgKzI4NjUzLDggQEAKIAkJCQlCQzVFQjY3RDBFODFENDIwMDBCMjU5
NjUgLyogU3R5bGVCb3hEYXRhLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDRUY0NDdBMEU2NzQ3
RDAwMDFDMTI4NyAvKiBTdHlsZUNhY2hlZEltYWdlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTkz
OTNFNjA0MTUxQTlBMTgwMDA2NkYwNiAvKiBTdHlsZUNhY2hlZEltYWdlU2V0LmNwcCBpbiBTb3Vy
Y2VzICovLAotCQkJCTUwMzhCRTJGMTQ3MkFEMjMwMDk1RTBEMSAvKiBTdHlsZUNhY2hlZFNoYWRl
ci5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk1MEUxOENEODE2RjkyODU4MDBDNjU0ODYgLyogU3R5
bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQTc5NUM4MTg4
OEJDQjUwMDM4MkY5MCAvKiBBTkdMRUluc3RhbmNlZEFycmF5cy5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlBNTg0MEUyNDE4N0I4QUMyMDA4NDNCMTAgLyogUGFnZUluamVjdGVkU2NyaXB0SG9zdC5j
cHAgaW4gU291cmNlcyAqLywKLQkJCQk1MEUxOENEOTE2RjkyODU4MDBDNjU0ODYgLyogU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQThDNEE3RkUw
OUQ1NjMyNzAwMDNBQzhEIC8qIFN0eWxlZEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QkM1RUI4QjgwRTgyMDFCRDAwQjI1OTY1IC8qIFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0
YS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBQTRDM0E3NjBCMkIxNjc5MDAyMzM0QTIgLyogSW5s
aW5lU3R5bGVTaGVldE93bmVyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjkyMTMsNyArMjg5OTUs
NiBAQAogCQkJCUJDREYzMTdCMTFGOEQ2ODMwMDNDNUJGOCAvKiBVc2VyVHlwaW5nR2VzdHVyZUlu
ZGljYXRvci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxRkFGQkYxODE1QTVGQTZFMDAwODNBMjAg
LyogVVRJVXRpbGl0aWVzLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkUzQkJGMDcxMTYyREExMTAw
Qjk0MDlBIC8qIFVVSUQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNTBEMzI4NTcxNjNCMzEzRjAw
MTYxMTFFIC8qIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlFMUZFMTM3NDE4NDAyQTY3MDA4OTJGMTMgLyogQ29tbW9uQ3J5cHRvVXRpbGl0aWVz
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUY1QTE1NDI3MTI3OTUzNEQwMEQwQjBDMCAvKiBWYWxp
ZGF0aW9uTWVzc2FnZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRDMxNjBBRTEyQjAyNkY3MDBD
MUEzNTkgLyogVmVjdG9yTWF0aC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTI5Mjg0LDE5ICsyOTA2
NSwxNCBAQAogCQkJCTMxQzBGRjIxMEU0Q0VCNkUwMDdENkZFNSAvKiBXZWJLaXRBbmltYXRpb25F
dmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwN0ZFOTlEQzE4ODA3QTdEMDAyNTY2NDggLyog
SFRNTE1lZGlhU2Vzc2lvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5NzZENkM3QjEyMkI4QTNE
MDAxRkQxRjcgLyogV2ViS2l0QmxvYkJ1aWxkZXIuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMTUw
QjkyMzkxNUYwOERDNDAwRTEwOTg2IC8qIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5jcHAg
aW4gU291cmNlcyAqLywKLQkJCQlBMkU4QUUzMDE2QTQ4RTFDMDA2QkIzQUEgLyogV2ViS2l0Q1NT
RmlsdGVyUnVsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDNTVDN0JBMTE3MThBRkJBMDAxMzI3
RTQgLyogUmVuZGVyVGhlbWVJT1MubW0gaW4gU291cmNlcyAqLywKIAkJCQkzMTA2MDM2RjE0MzI3
RDJFMDBBQkY0QkEgLyogV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMzEyODhFNzIwRTMwMDVENjAwMzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1lUnVsZS5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQkzMTI4OEU3NDBFMzAwNUQ2MDAzNjE5QUUgLyogV2ViS2l0Q1NT
S2V5ZnJhbWVzUnVsZS5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlGQjcxOUM0MDE3MjM4Q0FFMDAy
MkRFMzQgLyogV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQkwNzhFMDkxMTE3RDE0Q0VFMDA0MjBBQTEgLyogUlRDVm9pZFJlcXVlc3RJbXBsLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUUxRkUxMzY0MTgzNDM1MTEwMDg5MkYxMyAvKiBDcnlwdG9EaWdlc3RN
YWMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNDk4MzkxNTgwRjFFNzc2OTAwQzIzNzgyIC8qIFdl
YktpdENTU01hdHJpeC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlBMjRCRjc3QzE1Q0MzQkFGMDAz
MTkxRjIgLyogV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQk4QUE2MUNGRjE0NEQ1OTVCMDBGMzczNTAgLyogV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAgaW4g
U291cmNlcyAqLywKLQkJCQk1MDM4QkMwNzE0NzExQ0RCMDA5NUUwRDEgLyogV2ViS2l0Q1NTU2hh
ZGVyVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM5QUREODAwQ0M0MDkyMjAwMDk4QzRD
IC8qIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTNGRkZG
OUE4MTU5RDlBNTUwMDIwQkJENSAvKiBXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMUExNDE0QjUxM0EwRjA1MDAwMTk5OTZDIC8qIFdlYktpdEZvbnRGYW1pbHlO
YW1lcy5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTQ1NTUnVsZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0NTU1J1bGVDdXN0b20uY3BwCmluZGV4IGRjOTA1MzAuLjMwMDNhNzAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ1NTUnVsZUN1c3RvbS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNDU1NSdWxlQ3VzdG9tLmNwcApAQCAtNDMsMTIgKzQzLDEw
IEBACiAjaW5jbHVkZSAiSlNDU1NTdXBwb3J0c1J1bGUuaCIKICNpbmNsdWRlICJKU05vZGUuaCIK
ICNpbmNsdWRlICJKU1N0eWxlU2hlZXRDdXN0b20uaCIKLSNpbmNsdWRlICJKU1dlYktpdENTU0Zp
bHRlclJ1bGUuaCIKICNpbmNsdWRlICJKU1dlYktpdENTU0tleWZyYW1lUnVsZS5oIgogI2luY2x1
ZGUgIkpTV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIgogI2luY2x1ZGUgIkpTV2ViS2l0Q1NTUmVn
aW9uUnVsZS5oIgogI2luY2x1ZGUgIkpTV2ViS2l0Q1NTVmlld3BvcnRSdWxlLmgiCi0jaW5jbHVk
ZSAiV2ViS2l0Q1NTRmlsdGVyUnVsZS5oIgogI2luY2x1ZGUgIldlYktpdENTU0tleWZyYW1lUnVs
ZS5oIgogI2luY2x1ZGUgIldlYktpdENTU0tleWZyYW1lc1J1bGUuaCIKICNpbmNsdWRlICJXZWJL
aXRDU1NSZWdpb25SdWxlLmgiCkBAIC0xMjIsMTEgKzEyMCw2IEBAIEpTVmFsdWUgdG9KUyhFeGVj
U3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENTU1J1bGUqIHJ1
bGUpCiAgICAgICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9XUkFQUEVSKGV4ZWMsIGdsb2Jh
bE9iamVjdCwgQ1NTSG9zdFJ1bGUsIHJ1bGUpOwogICAgICAgICAgICAgYnJlYWs7CiAjZW5kaWYK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGNhc2UgQ1NTUnVsZTo6V0VCS0lUX0ZJ
TFRFUl9SVUxFOgotICAgICAgICAgICAgd3JhcHBlciA9IENSRUFURV9ET01fV1JBUFBFUihleGVj
LCBnbG9iYWxPYmplY3QsIFdlYktpdENTU0ZpbHRlclJ1bGUsIHJ1bGUpOwotICAgICAgICAgICAg
YnJlYWs7Ci0jZW5kaWYKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIHdyYXBwZXIgPSBD
UkVBVEVfRE9NX1dSQVBQRVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBDU1NSdWxlLCBydWxlKTsKICAg
ICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3Vz
dG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ1NTVmFsdWVDdXN0b20uY3Bw
CmluZGV4IGZlZWUwMTQuLjA1MGU0YjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTQ1NTVmFsdWVDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTQ1NTVmFsdWVDdXN0b20uY3BwCkBAIC0zOSwxMSArMzksNiBAQAogI2luY2x1ZGUgIldl
YktpdENTU0ZpbHRlclZhbHVlLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykK
LSNpbmNsdWRlICJKU1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCIKLSNpbmNsdWRlICJXZWJL
aXRDU1NNaXhGdW5jdGlvblZhbHVlLmgiCi0jZW5kaWYKLQogI2lmIEVOQUJMRShTVkcpCiAjaW5j
bHVkZSAiSlNTVkdDb2xvci5oIgogI2luY2x1ZGUgIkpTU1ZHUGFpbnQuaCIKQEAgLTk5LDEwICs5
NCw2IEBAIEpTVmFsdWUgdG9KUyhFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIENTU1ZhbHVlKiB2YWx1ZSkKICAgICBlbHNlIGlmICh2YWx1ZS0+aXNXZWJL
aXRDU1NGaWx0ZXJWYWx1ZSgpKQogICAgICAgICB3cmFwcGVyID0gQ1JFQVRFX0RPTV9XUkFQUEVS
KGV4ZWMsIGdsb2JhbE9iamVjdCwgV2ViS2l0Q1NTRmlsdGVyVmFsdWUsIHZhbHVlKTsKICNlbmRp
ZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBlbHNlIGlmICh2YWx1ZS0+aXNXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlKCkpCi0gICAgICAgIHdyYXBwZXIgPSBDUkVBVEVfRE9NX1dSQVBQ
RVIoZXhlYywgZ2xvYmFsT2JqZWN0LCBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLCB2YWx1ZSk7
Ci0jZW5kaWYKICAgICBlbHNlIGlmICh2YWx1ZS0+aXNWYWx1ZUxpc3QoKSkKICAgICAgICAgd3Jh
cHBlciA9IENSRUFURV9ET01fV1JBUFBFUihleGVjLCBnbG9iYWxPYmplY3QsIENTU1ZhbHVlTGlz
dCwgdmFsdWUpOwogI2lmIEVOQUJMRShTVkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9vYmpjL0RPTUNTUy5tbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL29iamMvRE9N
Q1NTLm1tCmluZGV4IDA3ZTllMWYuLjkwZTRkYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL29iamMvRE9NQ1NTLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL29i
amMvRE9NQ1NTLm1tCkBAIC01MiwxMCArNTIsNiBAQAogI2ltcG9ydCAiRE9NV2ViS2l0Q1NTS2V5
ZnJhbWVzUnVsZS5oIgogI2ltcG9ydCAiRE9NV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaCIKIAot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbXBvcnQgIkRPTVdlYktpdENTU0ZpbHRlclJ1bGUu
aCIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQogI2ltcG9ydCAiRE9NV2ViS2l0
Q1NTRmlsdGVyVmFsdWUuaCIKICNlbmRpZgpAQCAtMTIyLDEwICsxMTgsNiBAQCBDbGFzcyBraXRD
bGFzcyhXZWJDb3JlOjpDU1NSdWxlKiBpbXBsKQogICAgICAgICBjYXNlIERPTV9IT1NUX1JVTEU6
CiAgICAgICAgICAgICByZXR1cm4gW0RPTUNTU0hvc3RSdWxlIGNsYXNzXTsKICNlbmRpZgotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgY2FzZSBET01fV0VCS0lUX0ZJTFRFUl9SVUxF
OgotICAgICAgICAgICAgcmV0dXJuIFtET01XZWJLaXRDU1NGaWx0ZXJSdWxlIGNsYXNzXTsKLSNl
bmRpZgogICAgIH0KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICByZXR1cm4gbmlsOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlv
bi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNw
cAppbmRleCAyMDBmN2I1Li42NWIyZWYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcApAQCAtNzIsMjAgKzcyLDcgQEAKICNpbmNs
dWRlICJTaGFwZVZhbHVlLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNp
bmNsdWRlICJDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZp
bHRlckNvbG9yUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1l
dGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAiQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFy
YW1ldGVyLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmgiCi0jaW5j
bHVkZSAiV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUuaCIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQotI2lu
Y2x1ZGUgIlN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgogI2luY2x1ZGUgIldlYktpdENTU0Zp
bHRlclZhbHVlLmgiCiAjZW5kaWYKIApAQCAtODQ5LDcyICs4MzYsNiBAQCBzdGF0aWMgUGFzc1Jl
ZjxDU1NWYWx1ZT4gY29tcHV0ZWRUcmFuc2Zvcm0oUmVuZGVyT2JqZWN0KiByZW5kZXJlciwgY29u
c3QgUmVuZGVyUwogICAgIHJldHVybiBzdGQ6Om1vdmUobGlzdCk7CiB9CiAKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi1zdGF0aWMgUGFzc1JlZjxXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+
IHZhbHVlRm9yQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIoY29uc3QgQ3VzdG9tRmlsdGVyQXJy
YXlQYXJhbWV0ZXIqIGFycmF5UGFyYW1ldGVyKQotewotICAgIGF1dG8gYXJyYXlQYXJhbWV0ZXJW
YWx1ZSA9IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZTo6Y3JlYXRlKCk7Ci0gICAgZm9yICh1
bnNpZ25lZCBpID0gMCwgc2l6ZSA9IGFycmF5UGFyYW1ldGVyLT5zaXplKCk7IGkgPCBzaXplOyAr
K2kpCi0gICAgICAgIGFycmF5UGFyYW1ldGVyVmFsdWUuZ2V0KCkuYXBwZW5kKGNzc1ZhbHVlUG9v
bCgpLmNyZWF0ZVZhbHVlKGFycmF5UGFyYW1ldGVyLT52YWx1ZUF0KGkpLCBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTX05VTUJFUikpOwotICAgIHJldHVybiBhcnJheVBhcmFtZXRlclZhbHVlOwotfQot
Ci1zdGF0aWMgUGFzc1JlZjxXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlPiB2YWx1ZUZvckN1c3Rv
bUZpbHRlck1hdFBhcmFtZXRlcihjb25zdCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciogbWF0
cml4UGFyYW1ldGVyKQotewotICAgIGF1dG8gbWF0cml4UGFyYW1ldGVyVmFsdWUgPSBXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlOjpjcmVhdGUoKTsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwLCBz
aXplID0gbWF0cml4UGFyYW1ldGVyLT5zaXplKCk7IGkgPCBzaXplOyArK2kpCi0gICAgICAgIG1h
dHJpeFBhcmFtZXRlclZhbHVlLmdldCgpLmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1
ZShtYXRyaXhQYXJhbWV0ZXItPnZhbHVlQXQoaSksIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVN
QkVSKSk7Ci0gICAgcmV0dXJuIG1hdHJpeFBhcmFtZXRlclZhbHVlOwotfQotCi1zdGF0aWMgUGFz
c1JlZjxDU1NWYWx1ZUxpc3Q+IHZhbHVlRm9yQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIoY29u
c3QgQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIqIGNvbG9yUGFyYW1ldGVyKQotewotICAgIGF1
dG8gY29sb3JQYXJhbWV0ZXJWYWx1ZSA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0
ZWQoKTsKLSAgICBjb2xvclBhcmFtZXRlclZhbHVlLmdldCgpLmFwcGVuZChjc3NWYWx1ZVBvb2wo
KS5jcmVhdGVDb2xvclZhbHVlKGNvbG9yUGFyYW1ldGVyLT5jb2xvcigpLnJnYigpKSk7Ci0gICAg
cmV0dXJuIGNvbG9yUGFyYW1ldGVyVmFsdWU7Ci19Ci0KLXN0YXRpYyBQYXNzUmVmPENTU1ZhbHVl
TGlzdD4gdmFsdWVGb3JDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIoY29uc3QgQ3VzdG9tRmls
dGVyTnVtYmVyUGFyYW1ldGVyKiBudW1iZXJQYXJhbWV0ZXIpCi17Ci0gICAgYXV0byBudW1iZXJQ
YXJhbWV0ZXJWYWx1ZSA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAg
ICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtYmVyUGFyYW1ldGVyLT5zaXplKCk7ICsraSkK
LSAgICAgICAgbnVtYmVyUGFyYW1ldGVyVmFsdWUuZ2V0KCkuYXBwZW5kKGNzc1ZhbHVlUG9vbCgp
LmNyZWF0ZVZhbHVlKG51bWJlclBhcmFtZXRlci0+dmFsdWVBdChpKSwgQ1NTUHJpbWl0aXZlVmFs
dWU6OkNTU19OVU1CRVIpKTsKLSAgICByZXR1cm4gbnVtYmVyUGFyYW1ldGVyVmFsdWU7Ci19Ci0K
LXN0YXRpYyBQYXNzUmVmPFdlYktpdENTU1RyYW5zZm9ybVZhbHVlPiB2YWx1ZUZvckN1c3RvbUZp
bHRlclRyYW5zZm9ybVBhcmFtZXRlcihjb25zdCBSZW5kZXJPYmplY3QqIHJlbmRlcmVyLCBjb25z
dCBSZW5kZXJTdHlsZSogc3R5bGUsIGNvbnN0IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRl
ciogdHJhbnNmb3JtUGFyYW1ldGVyKQotewotICAgIEludFNpemUgc2l6ZTsKLSAgICBpZiAocmVu
ZGVyZXIgJiYgcmVuZGVyZXItPmlzQm94KCkpCi0gICAgICAgIHNpemUgPSBwaXhlbFNuYXBwZWRJ
bnRSZWN0KHRvUmVuZGVyQm94KHJlbmRlcmVyKS0+Ym9yZGVyQm94UmVjdCgpKS5zaXplKCk7Ci0K
LSAgICBUcmFuc2Zvcm1hdGlvbk1hdHJpeCB0cmFuc2Zvcm07Ci0gICAgdHJhbnNmb3JtUGFyYW1l
dGVyLT5hcHBseVRyYW5zZm9ybSh0cmFuc2Zvcm0sIHNpemUpOwotICAgIC8vIEZJWE1FOiBOZWVk
IHRvIHByaW50IG91dCBpbmRpdmlkdWFsIGZ1bmN0aW9ucyAoaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIzOTI0KQotICAgIHJldHVybiBtYXRyaXhUcmFuc2Zvcm1WYWx1
ZSh0cmFuc2Zvcm0sIHN0eWxlKTsKLX0KLQotc3RhdGljIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IHZh
bHVlRm9yQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKGNvbnN0IFJlbmRlck9iamVjdCogcmVuZGVyZXIs
IGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKiBw
YXJhbWV0ZXIpCi17Ci0gICAgLy8gRklYTUU6IEFkZCBoZXJlIGNvbXB1dGVkIHN0eWxlIGZvciB0
aGUgb3RoZXIgdHlwZXM6IGJvb2xlYW4sIHRyYW5zZm9ybSwgbWF0cml4LCB0ZXh0dXJlLgotICAg
IEFTU0VSVChwYXJhbWV0ZXIpOwotICAgIHN3aXRjaCAocGFyYW1ldGVyLT5wYXJhbWV0ZXJUeXBl
KCkpIHsKLSAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6QVJSQVk6Ci0gICAgICAgIHJl
dHVybiB2YWx1ZUZvckN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKHN0YXRpY19jYXN0PGNvbnN0
IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKj4ocGFyYW1ldGVyKSk7Ci0gICAgY2FzZSBDdXN0
b21GaWx0ZXJQYXJhbWV0ZXI6OkNPTE9SOgotICAgICAgICByZXR1cm4gdmFsdWVGb3JDdXN0b21G
aWx0ZXJDb2xvclBhcmFtZXRlcihzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJDb2xvclBh
cmFtZXRlcio+KHBhcmFtZXRlcikpOwotICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpN
QVRSSVg6Ci0gICAgICAgIHJldHVybiB2YWx1ZUZvckN1c3RvbUZpbHRlck1hdFBhcmFtZXRlcihz
dGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcio+KHBhcmFtZXRlcikp
OwotICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpOVU1CRVI6Ci0gICAgICAgIHJldHVy
biB2YWx1ZUZvckN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcihzdGF0aWNfY2FzdDxjb25zdCBD
dXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICBjYXNlIEN1c3Rv
bUZpbHRlclBhcmFtZXRlcjo6VFJBTlNGT1JNOgotICAgICAgICByZXR1cm4gdmFsdWVGb3JDdXN0
b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIocmVuZGVyZXIsIHN0eWxlLCBzdGF0aWNfY2FzdDxj
b25zdCBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICB9
Ci0gICAgCi0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIDA7Ci19Ci0jZW5k
aWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCiBzdGF0aWMgaW5saW5lIFBhc3NSZWY8Q1NTUHJp
bWl0aXZlVmFsdWU+IGFkanVzdExlbmd0aEZvclpvb20oZG91YmxlIGxlbmd0aCwgY29uc3QgUmVu
ZGVyU3R5bGUqIHN0eWxlLCBBZGp1c3RQaXhlbFZhbHVlc0ZvckNvbXB1dGVkU3R5bGUgYWRqdXN0
KQogewogICAgIHJldHVybiBhZGp1c3QgPT0gQWRqdXN0UGl4ZWxWYWx1ZXMgPyB6b29tQWRqdXN0
ZWRQaXhlbFZhbHVlKGxlbmd0aCwgc3R5bGUpIDogY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUo
bGVuZ3RoLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1BYKTsKQEAgLTk0NCwxMSArODY1LDggQEAg
UGFzc1JlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JTaGFk
b3coY29uc3QgU2hhZG93RGF0YSogc2gKIH0KIAogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKLVBh
c3NSZWY8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9yRmlsdGVyKGNv
bnN0IFJlbmRlck9iamVjdCogcmVuZGVyZXIsIGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSwgY29u
c3QgRmlsdGVyT3BlcmF0aW9ucyYgZmlsdGVyT3BlcmF0aW9ucywgQWRqdXN0UGl4ZWxWYWx1ZXNG
b3JDb21wdXRlZFN0eWxlIGFkanVzdCkKK1Bhc3NSZWY8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVF
eHRyYWN0b3I6OnZhbHVlRm9yRmlsdGVyKGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSwgY29uc3Qg
RmlsdGVyT3BlcmF0aW9ucyYgZmlsdGVyT3BlcmF0aW9ucywgQWRqdXN0UGl4ZWxWYWx1ZXNGb3JD
b21wdXRlZFN0eWxlIGFkanVzdCkKIHsKLSNpZiAhRU5BQkxFKENTU19TSEFERVJTKQotICAgIFVO
VVNFRF9QQVJBTShyZW5kZXJlcik7Ci0jZW5kaWYKICAgICBpZiAoZmlsdGVyT3BlcmF0aW9ucy5v
cGVyYXRpb25zKCkuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm4gY3NzVmFsdWVQb29sKCkuY3Jl
YXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlTm9uZSk7CiAKQEAgLTEwMjgsNzAgKzk0Niw2IEBA
IFBhc3NSZWY8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9yRmlsdGVy
KGNvbnN0IFJlbmRlck9iamVjdCogcmVuCiAgICAgICAgICAgICBmaWx0ZXJWYWx1ZS0+YXBwZW5k
KHZhbHVlRm9yU2hhZG93KCZzaGFkb3dEYXRhLCBDU1NQcm9wZXJ0eVRleHRTaGFkb3csIHN0eWxl
LCBhZGp1c3QpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RP
TToKLSAgICAgICAgICAgIC8vIFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbiBpcyBub3Qg
c3VwcG9zZWQgdG8gZW5kIHVwIGluIHRoZSBSZW5kZXJTdHlsZS4KLSAgICAgICAgICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgRmlsdGVy
T3BlcmF0aW9uOjpDVVNUT006IHsKLSAgICAgICAgICAgIEN1c3RvbUZpbHRlck9wZXJhdGlvbiog
Y3VzdG9tT3BlcmF0aW9uID0gc3RhdGljX2Nhc3Q8Q3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oZmls
dGVyT3BlcmF0aW9uKTsKLSAgICAgICAgICAgIGZpbHRlclZhbHVlID0gV2ViS2l0Q1NTRmlsdGVy
VmFsdWU6OmNyZWF0ZShXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6Q3VzdG9tRmlsdGVyT3BlcmF0aW9u
KTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgLy8gVGhlIG91dHB1dCBzaG91bGQgYmUgdmVy
Ym9zZSwgZXZlbiBpZiB0aGUgdmFsdWVzIGFyZSB0aGUgZGVmYXVsdCBvbmVzLgotICAgICAgICAg
ICAgCi0gICAgICAgICAgICBBU1NFUlQoY3VzdG9tT3BlcmF0aW9uLT5wcm9ncmFtKCkpOwotICAg
ICAgICAgICAgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKiBwcm9ncmFtID0gc3RhdGljX2Nhc3Q8
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKj4oY3VzdG9tT3BlcmF0aW9uLT5wcm9ncmFtKCkpOwot
ICAgICAgICAgICAgCi0gICAgICAgICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBzaGFkZXJzTGlz
dCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAgICAgICAgICAgIGlm
IChwcm9ncmFtLT52ZXJ0ZXhTaGFkZXIoKSkKLSAgICAgICAgICAgICAgICBzaGFkZXJzTGlzdC0+
YXBwZW5kKHByb2dyYW0tPnZlcnRleFNoYWRlcigpLT5jc3NWYWx1ZSgpKTsKLSAgICAgICAgICAg
IGVsc2UKLSAgICAgICAgICAgICAgICBzaGFkZXJzTGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgp
LmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpKTsKLQotICAgICAgICAgICAgY29u
c3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzIG1peFNldHRpbmdzID0gcHJvZ3JhbS0+
bWl4U2V0dGluZ3MoKTsKLSAgICAgICAgICAgIGlmIChwcm9ncmFtLT5mcmFnbWVudFNoYWRlcigp
KSB7Ci0gICAgICAgICAgICAgICAgaWYgKHByb2dyYW0tPnByb2dyYW1UeXBlKCkgPT0gUFJPR1JB
TV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUpIHsKLSAgICAgICAgICAgICAgICAgICAgUmVm
UHRyPFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU+IG1peEZ1bmN0aW9uID0gV2ViS2l0Q1NTTWl4
RnVuY3Rpb25WYWx1ZTo6Y3JlYXRlKCk7Ci0gICAgICAgICAgICAgICAgICAgIG1peEZ1bmN0aW9u
LT5hcHBlbmQocHJvZ3JhbS0+ZnJhZ21lbnRTaGFkZXIoKS0+Y3NzVmFsdWUoKSk7Ci0gICAgICAg
ICAgICAgICAgICAgIG1peEZ1bmN0aW9uLT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFs
dWUobWl4U2V0dGluZ3MuYmxlbmRNb2RlKSk7Ci0gICAgICAgICAgICAgICAgICAgIG1peEZ1bmN0
aW9uLT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUobWl4U2V0dGluZ3MuY29tcG9z
aXRlT3BlcmF0b3IpKTsKLSAgICAgICAgICAgICAgICAgICAgc2hhZGVyc0xpc3QtPmFwcGVuZCht
aXhGdW5jdGlvbi5yZWxlYXNlKCkpOwotICAgICAgICAgICAgICAgIH0gZWxzZQotICAgICAgICAg
ICAgICAgICAgICBzaGFkZXJzTGlzdC0+YXBwZW5kKHByb2dyYW0tPmZyYWdtZW50U2hhZGVyKCkt
PmNzc1ZhbHVlKCkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZWxzZQotICAgICAgICAg
ICAgICAgIHNoYWRlcnNMaXN0LT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlSWRlbnRpZmll
clZhbHVlKENTU1ZhbHVlTm9uZSkpOwotCi0gICAgICAgICAgICBmaWx0ZXJWYWx1ZS0+YXBwZW5k
KHNoYWRlcnNMaXN0LnJlbGVhc2UoKSk7Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIFJlZlB0
cjxDU1NWYWx1ZUxpc3Q+IG1lc2hQYXJhbWV0ZXJzID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFj
ZVNlcGFyYXRlZCgpOwotICAgICAgICAgICAgbWVzaFBhcmFtZXRlcnMtPmFwcGVuZChjc3NWYWx1
ZVBvb2woKS5jcmVhdGVWYWx1ZShjdXN0b21PcGVyYXRpb24tPm1lc2hDb2x1bW5zKCksIENTU1By
aW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKSk7Ci0gICAgICAgICAgICBtZXNoUGFyYW1ldGVycy0+
YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKGN1c3RvbU9wZXJhdGlvbi0+bWVzaFJv
d3MoKSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpKTsKLSAgICAgICAgICAgIAotICAg
ICAgICAgICAgLy8gRklYTUU6IFRoZSBzcGVjaWZpY2F0aW9uIGRvZXNuJ3QgaGF2ZSBhbnkgImF0
dGFjaGVkIiBpZGVudGlmaWVyLiBTaG91bGQgd2UgYWRkIG9uZT8KLSAgICAgICAgICAgIC8vIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MjcwMAotICAgICAgICAgICAg
aWYgKGN1c3RvbU9wZXJhdGlvbi0+bWVzaFR5cGUoKSA9PSBNZXNoVHlwZURldGFjaGVkKQotICAg
ICAgICAgICAgICAgIG1lc2hQYXJhbWV0ZXJzLT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRl
SWRlbnRpZmllclZhbHVlKENTU1ZhbHVlRGV0YWNoZWQpKTsKLSAgICAgICAgICAgIAotICAgICAg
ICAgICAgZmlsdGVyVmFsdWUtPmFwcGVuZChtZXNoUGFyYW1ldGVycy5yZWxlYXNlKCkpOwotICAg
ICAgICAgICAgCi0gICAgICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBw
YXJhbWV0ZXJzID0gY3VzdG9tT3BlcmF0aW9uLT5wYXJhbWV0ZXJzKCk7Ci0gICAgICAgICAgICBz
aXplX3QgcGFyYW1ldGVyc1NpemUgPSBwYXJhbWV0ZXJzLnNpemUoKTsKLSAgICAgICAgICAgIGlm
ICghcGFyYW1ldGVyc1NpemUpCi0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICBS
ZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJhbWV0ZXJzQ1NTVmFsdWUgPSBDU1NWYWx1ZUxpc3Q6OmNy
ZWF0ZUNvbW1hU2VwYXJhdGVkKCk7Ci0gICAgICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8
IHBhcmFtZXRlcnNTaXplOyArK2kpIHsKLSAgICAgICAgICAgICAgICBjb25zdCBDdXN0b21GaWx0
ZXJQYXJhbWV0ZXIqIHBhcmFtZXRlciA9IHBhcmFtZXRlcnMuYXQoaSkuZ2V0KCk7Ci0gICAgICAg
ICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyYW1ldGVyQ1NTTmFtZUFuZFZhbHVlID0g
Q1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOwotICAgICAgICAgICAgICAgIHBh
cmFtZXRlckNTU05hbWVBbmRWYWx1ZS0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVl
KHBhcmFtZXRlci0+bmFtZSgpLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1NUUklORykpOwotICAg
ICAgICAgICAgICAgIHBhcmFtZXRlckNTU05hbWVBbmRWYWx1ZS0+YXBwZW5kKHZhbHVlRm9yQ3Vz
dG9tRmlsdGVyUGFyYW1ldGVyKHJlbmRlcmVyLCBzdHlsZSwgcGFyYW1ldGVyKSk7Ci0gICAgICAg
ICAgICAgICAgcGFyYW1ldGVyc0NTU1ZhbHVlLT5hcHBlbmQocGFyYW1ldGVyQ1NTTmFtZUFuZFZh
bHVlLnJlbGVhc2UoKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAKLSAgICAgICAgICAg
IGZpbHRlclZhbHVlLT5hcHBlbmQocGFyYW1ldGVyc0NTU1ZhbHVlLnJlbGVhc2UoKSk7Ci0gICAg
ICAgICAgICBicmVhazsKLSAgICAgICAgfQotI2VuZGlmCiAgICAgICAgIGRlZmF1bHQ6CiAgICAg
ICAgICAgICBmaWx0ZXJWYWx1ZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpjcmVhdGUoV2ViS2l0
Q1NTRmlsdGVyVmFsdWU6OlVua25vd25GaWx0ZXJPcGVyYXRpb24pOwogICAgICAgICAgICAgYnJl
YWs7CkBAIC0yOTYzLDcgKzI4MTcsNyBAQCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0
eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydAogI2VuZGlm
CiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0
RmlsdGVyOgotICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yRmlsdGVyKHJlbmRlcmVyLCBzdHls
ZS5nZXQoKSwgc3R5bGUtPmZpbHRlcigpKTsKKyAgICAgICAgICAgIHJldHVybiB2YWx1ZUZvckZp
bHRlcihzdHlsZS5nZXQoKSwgc3R5bGUtPmZpbHRlcigpKTsKICNlbmRpZgogI2lmIEVOQUJMRShD
U1NfQ09NUE9TSVRJTkcpCiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCbGVuZE1vZGU6
CkBAIC0zMDg3LDkgKzI5NDEsNiBAQCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxl
RXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydAogICAgICAgICAg
ICAgYnJlYWs7CiAKICAgICAgICAgLyogT3RoZXIgdW5pbXBsZW1lbnRlZCBwcm9wZXJ0aWVzICov
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBjYXNlIENTU1Byb3BlcnR5R2VvbWV0
cnk6Ci0jZW5kaWYKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVBhZ2U6IC8vIGZvciBAcGFnZQog
ICAgICAgICBjYXNlIENTU1Byb3BlcnR5UXVvdGVzOiAvLyBGSVhNRTogbmVlZHMgaW1wbGVtZW50
YXRpb24KICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVNpemU6IC8vIGZvciBAcGFnZQpAQCAtMzEx
MCwxMCArMjk2MSw2IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0
b3I6OnByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0CiAgICAgICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRUcmFuc2Zvcm1PcmlnaW5YOgogICAgICAgICBjYXNlIENTU1Byb3BlcnR5
V2Via2l0VHJhbnNmb3JtT3JpZ2luWToKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRy
YW5zZm9ybU9yaWdpblo6Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICBjYXNlIENT
U1Byb3BlcnR5TWl4OgotICAgICAgICBjYXNlIENTU1Byb3BlcnR5UGFyYW1ldGVyczoKLSNlbmRp
ZgogICAgICAgICAgICAgYnJlYWs7CiAKICNpZiBFTkFCTEUoQ1NTX0RFVklDRV9BREFQVEFUSU9O
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJh
dGlvbi5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5o
CmluZGV4IGVmZmEwMzEuLjk5ODFjZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Q29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgKQEAgLTQxLDExICs0MSw2IEBAIGNsYXNzIFNoYWRv
d0RhdGE7CiBjbGFzcyBTdHlsZVByb3BlcnRpZXM7CiBjbGFzcyBTdHlsZVByb3BlcnR5U2hvcnRo
YW5kOwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotY2xhc3MgQ3VzdG9tRmlsdGVyTnVtYmVy
UGFyYW1ldGVyOwotY2xhc3MgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOwotI2VuZGlmCi0KIGVudW0g
RVVwZGF0ZUxheW91dCB7IERvTm90VXBkYXRlTGF5b3V0ID0gZmFsc2UsIFVwZGF0ZUxheW91dCA9
IHRydWUgfTsKIAogZW51bSBBZGp1c3RQaXhlbFZhbHVlc0ZvckNvbXB1dGVkU3R5bGUgeyBBZGp1
c3RQaXhlbFZhbHVlcywgRG9Ob3RBZGp1c3RQaXhlbFZhbHVlcyB9OwpAQCAtNjQsNyArNTksNyBA
QCBwdWJsaWM6CiAgICAgYm9vbCBwcm9wZXJ0eU1hdGNoZXMoQ1NTUHJvcGVydHlJRCwgY29uc3Qg
Q1NTVmFsdWUqKSBjb25zdDsKIAogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKLSAgICBzdGF0aWMg
UGFzc1JlZjxDU1NWYWx1ZT4gdmFsdWVGb3JGaWx0ZXIoY29uc3QgUmVuZGVyT2JqZWN0KiwgY29u
c3QgUmVuZGVyU3R5bGUqLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiwgQWRqdXN0UGl4ZWxWYWx1
ZXNGb3JDb21wdXRlZFN0eWxlID0gQWRqdXN0UGl4ZWxWYWx1ZXMpOworICAgIHN0YXRpYyBQYXNz
UmVmPENTU1ZhbHVlPiB2YWx1ZUZvckZpbHRlcihjb25zdCBSZW5kZXJTdHlsZSosIGNvbnN0IEZp
bHRlck9wZXJhdGlvbnMmLCBBZGp1c3RQaXhlbFZhbHVlc0ZvckNvbXB1dGVkU3R5bGUgPSBBZGp1
c3RQaXhlbFZhbHVlcyk7CiAjZW5kaWYKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkuaW4gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1h
ci55LmluCmluZGV4IDhhYTBiYzMuLmViMTFiZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NHcmFtbWFyLnkuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIu
eS5pbgpAQCAtMjkxLDE1ICsyOTEsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaXNDU1NUb2tlbkFT
dHJpbmcoaW50IHl5dHlwZSkKIAogI2VuZGlmCiAKLSNpZiBFTkFCTEVfQ1NTX1NIQURFUlMKLQot
JXRva2VuIFdFQktJVF9GSUxURVJfUlVMRV9TWU0KLQotJXR5cGUgPHJ1bGU+IGZpbHRlcgotJWRl
c3RydWN0b3IgeyBpZiAoJCQpICQkLT5kZXJlZigpOyB9IGZpbHRlcgotCi0jZW5kaWYKLQogI2lm
IEVOQUJMRV9TSEFET1dfRE9NCiAKICV0b2tlbiBIT1NUX1NZTQpAQCAtNDIxLDkgKzQxMiw2IEBA
IHZhbGlkX3J1bGU6CiAjaWYgRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTgogICB8IHZpZXdw
b3J0CiAjZW5kaWYKLSNpZiBFTkFCTEVfQ1NTX1NIQURFUlMKLSAgfCBmaWx0ZXIKLSNlbmRpZgog
ICA7CiAKIHJ1bGU6CkBAIC00NzIsOSArNDYwLDYgQEAgYmxvY2tfdmFsaWRfcnVsZToKICNpZiBF
TkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OCiAgIHwgdmlld3BvcnQKICNlbmRpZgotI2lmIEVO
QUJMRV9DU1NfU0hBREVSUwotICB8IGZpbHRlcgotI2VuZGlmCiAgIDsKIAogYmxvY2tfcnVsZTog
YmxvY2tfdmFsaWRfcnVsZSB8IGludmFsaWRfcnVsZSB7ICQkID0gbnVsbHB0cjsgfSB8IGludmFs
aWRfYXQgeyAkJCA9IG51bGxwdHI7IH0gfCBuYW1lc3BhY2UgeyAkJCA9IG51bGxwdHI7IH0gfCBp
bXBvcnQgfCByZWdpb24gOwpAQCAtOTY1LDI0ICs5NTAsNiBAQCByZWdpb246CiAgICAgfQogOwog
Ci0jaWYgRU5BQkxFX0NTU19TSEFERVJTCi0KLWJlZm9yZV9maWx0ZXJfcnVsZToKLSAgICAvKiBl
bXB0eSAqLyB7Ci0gICAgICAgIHBhcnNlci0+bWFya1J1bGVIZWFkZXJTdGFydChDU1NSdWxlU291
cmNlRGF0YTo6RklMVEVSX1JVTEUpOwotICAgICAgICBwYXJzZXItPm1faW5GaWx0ZXJSdWxlID0g
dHJ1ZTsKLSAgICB9Ci0gICAgOwotCi1maWx0ZXI6Ci0gICAgYmVmb3JlX2ZpbHRlcl9ydWxlIFdF
QktJVF9GSUxURVJfUlVMRV9TWU0gbWF5YmVfc3BhY2UgSURFTlQgYXRfcnVsZV9oZWFkZXJfZW5k
X21heWJlX3NwYWNlICd7JyBhdF9ydWxlX2JvZHlfc3RhcnQgbWF5YmVfc3BhY2VfYmVmb3JlX2Rl
Y2xhcmF0aW9uIGRlY2xhcmF0aW9uX2xpc3QgY2xvc2luZ19icmFjZSB7Ci0gICAgICAgIHBhcnNl
ci0+bV9pbkZpbHRlclJ1bGUgPSBmYWxzZTsKLSAgICAgICAgJCQgPSBwYXJzZXItPmNyZWF0ZUZp
bHRlclJ1bGUoJDQpLmxlYWtSZWYoKTsKLSAgICB9Ci0gICAgOwotCi0jZW5kaWYKLQogY29tYmlu
YXRvcjoKICAgICAnKycgbWF5YmVfc3BhY2UgeyAkJCA9IENTU1NlbGVjdG9yOjpEaXJlY3RBZGph
Y2VudDsgfQogICB8ICd+JyBtYXliZV9zcGFjZSB7ICQkID0gQ1NTU2VsZWN0b3I6OkluZGlyZWN0
QWRqYWNlbnQ7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKaW5kZXggYWE3ZjhkZS4uNzY4Yzgw
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKQEAgLTEwMSwxMyArMTAxLDYgQEAKICNpbmNs
dWRlICJXZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0jaW5jbHVkZSAiV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmgiCi0jaW5jbHVk
ZSAiV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIgotI2VuZGlm
Ci0KICNpZiBFTkFCTEUoREFTSEJPQVJEX1NVUFBPUlQpCiAjaW5jbHVkZSAiRGFzaGJvYXJkUmVn
aW9uLmgiCiAjZW5kaWYKQEAgLTI1Miw3ICsyNDUsNiBAQCBDU1NQYXJzZXJDb250ZXh0OjpDU1NQ
YXJzZXJDb250ZXh0KENTU1BhcnNlck1vZGUgbW9kZSwgY29uc3QgVVJMJiBiYXNlVVJMKQogICAg
IDogYmFzZVVSTChiYXNlVVJMKQogICAgICwgbW9kZShtb2RlKQogICAgICwgaXNIVE1MRG9jdW1l
bnQoZmFsc2UpCi0gICAgLCBpc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoZmFsc2UpCiAgICAgLCBp
c0NTU1N0aWNreVBvc2l0aW9uRW5hYmxlZChmYWxzZSkKICAgICAsIGlzQ1NTUmVnaW9uc0VuYWJs
ZWQoZmFsc2UpCiAgICAgLCBpc0NTU0NvbXBvc2l0aW5nRW5hYmxlZChmYWxzZSkKQEAgLTI3NCw3
ICsyNjYsNiBAQCBDU1NQYXJzZXJDb250ZXh0OjpDU1NQYXJzZXJDb250ZXh0KERvY3VtZW50JiBk
b2N1bWVudCwgY29uc3QgVVJMJiBiYXNlVVJMLCBjb25zdAogICAgICwgY2hhcnNldChjaGFyc2V0
KQogICAgICwgbW9kZShkb2N1bWVudC5pblF1aXJrc01vZGUoKSA/IENTU1F1aXJrc01vZGUgOiBD
U1NTdHJpY3RNb2RlKQogICAgICwgaXNIVE1MRG9jdW1lbnQoZG9jdW1lbnQuaXNIVE1MRG9jdW1l
bnQoKSkKLSAgICAsIGlzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChkb2N1bWVudC5zZXR0aW5ncygp
ID8gZG9jdW1lbnQuc2V0dGluZ3MoKS0+aXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKCkgOiBmYWxz
ZSkKICAgICAsIGlzQ1NTU3RpY2t5UG9zaXRpb25FbmFibGVkKGRvY3VtZW50LmNzc1N0aWNreVBv
c2l0aW9uRW5hYmxlZCgpKQogICAgICwgaXNDU1NSZWdpb25zRW5hYmxlZChkb2N1bWVudC5jc3NS
ZWdpb25zRW5hYmxlZCgpKQogICAgICwgaXNDU1NDb21wb3NpdGluZ0VuYWJsZWQoZG9jdW1lbnQu
Y3NzQ29tcG9zaXRpbmdFbmFibGVkKCkpCkBAIC0yOTcsNyArMjg4LDYgQEAgYm9vbCBvcGVyYXRv
cj09KGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGEsIGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGIp
CiAgICAgICAgICYmIGEuY2hhcnNldCA9PSBiLmNoYXJzZXQKICAgICAgICAgJiYgYS5tb2RlID09
IGIubW9kZQogICAgICAgICAmJiBhLmlzSFRNTERvY3VtZW50ID09IGIuaXNIVE1MRG9jdW1lbnQK
LSAgICAgICAgJiYgYS5pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQgPT0gYi5pc0NTU0N1c3RvbUZp
bHRlckVuYWJsZWQKICAgICAgICAgJiYgYS5pc0NTU1N0aWNreVBvc2l0aW9uRW5hYmxlZCA9PSBi
LmlzQ1NTU3RpY2t5UG9zaXRpb25FbmFibGVkCiAgICAgICAgICYmIGEuaXNDU1NSZWdpb25zRW5h
YmxlZCA9PSBiLmlzQ1NTUmVnaW9uc0VuYWJsZWQKICAgICAgICAgJiYgYS5pc0NTU0NvbXBvc2l0
aW5nRW5hYmxlZCA9PSBiLmlzQ1NTQ29tcG9zaXRpbmdFbmFibGVkCkBAIC0zMjQsOSArMzE0LDYg
QEAgQ1NTUGFyc2VyOjpDU1NQYXJzZXIoY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgY29udGV4dCkK
ICAgICAsIG1faGFkU3ludGFjdGljYWxseVZhbGlkQ1NTUnVsZShmYWxzZSkKICAgICAsIG1fbG9n
RXJyb3JzKGZhbHNlKQogICAgICwgbV9pZ25vcmVFcnJvcnNJbkRlY2xhcmF0aW9uKGZhbHNlKQot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAsIG1faW5GaWx0ZXJSdWxlKGZhbHNlKQotI2Vu
ZGlmCiAgICAgLCBtX2RlZmF1bHROYW1lc3BhY2Uoc3RhckF0b20pCiAgICAgLCBtX3BhcnNlZFRl
eHRQcmVmaXhMZW5ndGgoMCkKICAgICAsIG1fcHJvcGVydHlSYW5nZShVSU5UX01BWCwgVUlOVF9N
QVgpCkBAIC0yMjg4LDI1ICsyMjc1LDggQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoQ1NT
UHJvcGVydHlJRCBwcm9wSWQsIGJvb2wgaW1wb3J0YW50KQogICAgICAgICBicmVhazsKIAogICAg
IGNhc2UgQ1NTUHJvcGVydHlTcmM6IC8vIE9ubHkgdXNlZCB3aXRoaW4gQGZvbnQtZmFjZSBhbmQg
QC13ZWJraXQtZmlsdGVyLCBzbyBjYW5ub3QgdXNlIGluaGVyaXQgfCBpbml0aWFsIG9yIGJlICFp
bXBvcnRhbnQuIFRoaXMgaXMgYSBsaXN0IG9mIHVybHMgb3IgbG9jYWwgcmVmZXJlbmNlcy4KLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGlmIChtX2luRmlsdGVyUnVsZSkKLSAgICAg
ICAgICAgIHJldHVybiBwYXJzZUZpbHRlclJ1bGVTcmMoKTsKLSNlbmRpZgogICAgICAgICByZXR1
cm4gcGFyc2VGb250RmFjZVNyYygpOwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNh
c2UgQ1NTUHJvcGVydHlNaXg6Ci0gICAgICAgIC8vIFRoZSBtaXggcHJvcGVydHkgaXMganVzdCBz
dXBwb3J0ZWQgaW5zaWRlIG9mIGFuIEBmaWx0ZXIgcnVsZS4KLSAgICAgICAgaWYgKCFtX2luRmls
dGVyUnVsZSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgcmV0dXJuIHBhcnNl
RmlsdGVyUnVsZU1peCgpOwotICAgIGNhc2UgQ1NTUHJvcGVydHlQYXJhbWV0ZXJzOgotICAgICAg
ICAvLyBUaGUgcGFyYW1ldGVycyBwcm9wZXJ0eSBpcyBqdXN0IHN1cHBvcnRlZCBpbnNpZGUgb2Yg
YW4gQGZpbHRlciBydWxlLgotICAgICAgICBpZiAoIW1faW5GaWx0ZXJSdWxlKQotICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlOwotICAgICAgICByZXR1cm4gcGFyc2VGaWx0ZXJSdWxlUGFyYW1ldGVy
cygpOwotI2VuZGlmCi0KICAgICBjYXNlIENTU1Byb3BlcnR5VW5pY29kZVJhbmdlOgogICAgICAg
ICByZXR1cm4gcGFyc2VGb250RmFjZVVuaWNvZGVSYW5nZSgpOwogCkBAIC0yODkwLDEwICsyODYw
LDYgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wSWQsIGJv
b2wgaW1wb3J0YW50KQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVBhZ2U6CiAgICAgICAgIHJldHVybiBwYXJzZVBhZ2UocHJvcElkLCBpbXBvcnRhbnQpOwotI2lm
IEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIENTU1Byb3BlcnR5R2VvbWV0cnk6Ci0gICAg
ICAgIHJldHVybiBtX2luRmlsdGVyUnVsZSA/IHBhcnNlR2VvbWV0cnkocHJvcElkLCB2YWx1ZSwg
aW1wb3J0YW50KSA6IGZhbHNlOwotI2VuZGlmCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRTdHJl
dGNoOgogICAgIGNhc2UgQ1NTUHJvcGVydHlUZXh0TGluZVRocm91Z2g6CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eVRleHRPdmVybGluZToKQEAgLTkxMDUsNTg5ICs5MDcxLDggQEAgc3RhdGljIHZvaWQg
ZmlsdGVySW5mb0Zvck5hbWUoY29uc3QgQ1NTUGFyc2VyU3RyaW5nJiBuYW1lLCBXZWJLaXRDU1NG
aWx0ZXJWYWx1ZToKICAgICAgICAgZmlsdGVyVHlwZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpE
cm9wU2hhZG93RmlsdGVyT3BlcmF0aW9uOwogICAgICAgICBtYXhpbXVtQXJndW1lbnRDb3VudCA9
IDQ7ICAvLyB4LW9mZnNldCwgeS1vZmZzZXQsIGJsdXItcmFkaXVzLCBjb2xvciAtLSBzcHJlYWQg
YW5kIGluc2V0IHN0eWxlIG5vdCBhbGxvd2VkLgogICAgIH0KLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0gICAgZWxzZSBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UobmFtZSwgImN1c3RvbSgiKSkKLSAg
ICAgICAgZmlsdGVyVHlwZSA9IFdlYktpdENTU0ZpbHRlclZhbHVlOjpDdXN0b21GaWx0ZXJPcGVy
YXRpb247Ci0jZW5kaWYKLX0KLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLXN0YXRpYyBib29s
IGFjY2VwdENvbW1hT3BlcmF0b3IoQ1NTUGFyc2VyVmFsdWVMaXN0KiBhcmdzTGlzdCkKLXsKLSAg
ICBpZiAoQ1NTUGFyc2VyVmFsdWUqIGFyZyA9IGFyZ3NMaXN0LT5jdXJyZW50KCkpIHsKLSAgICAg
ICAgaWYgKCFpc0NvbW1hKGFyZykpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAg
IGFyZ3NMaXN0LT5uZXh0KCk7Ci0gICAgfQotICAgIHJldHVybiB0cnVlOwotfQotCi1QYXNzUmVm
UHRyPFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZT4gQ1NTUGFyc2VyOjpwYXJzZUN1c3RvbUZp
bHRlckFycmF5RnVuY3Rpb24oQ1NTUGFyc2VyVmFsdWUqIHZhbHVlKQotewotICAgIEFTU0VSVCh2
YWx1ZS0+dW5pdCA9PSBDU1NQYXJzZXJWYWx1ZTo6RnVuY3Rpb24gJiYgdmFsdWUtPmZ1bmN0aW9u
KTsKLQotICAgIGlmICghZXF1YWxJZ25vcmluZ0Nhc2UodmFsdWUtPmZ1bmN0aW9uLT5uYW1lLCAi
YXJyYXkoIikpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgQ1NTUGFyc2VyVmFsdWVMaXN0KiBh
cnJheUFyZ3NQYXJzZXJWYWx1ZUxpc3QgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0g
ICAgaWYgKCFhcnJheUFyZ3NQYXJzZXJWYWx1ZUxpc3QgfHwgIWFycmF5QXJnc1BhcnNlclZhbHVl
TGlzdC0+c2l6ZSgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIC8vIGFycmF5KCkgdmFsdWVz
IGFyZSBjb21tYSBzZXBhcmF0ZWQuCi0gICAgUmVmUHRyPFdlYktpdENTU0FycmF5RnVuY3Rpb25W
YWx1ZT4gYXJyYXlGdW5jdGlvbiA9IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZTo6Y3JlYXRl
KCk7Ci0gICAgd2hpbGUgKHRydWUpIHsKLSAgICAgICAgLy8gV2UgcGFyc2UgcGFpcnMgPFZhbHVl
LCBDb21tYT4gYXQgZWFjaCBzdGVwLgotICAgICAgICBDU1NQYXJzZXJWYWx1ZSogY3VycmVudFBh
cnNlclZhbHVlID0gYXJyYXlBcmdzUGFyc2VyVmFsdWVMaXN0LT5jdXJyZW50KCk7Ci0gICAgICAg
IGlmICghY3VycmVudFBhcnNlclZhbHVlIHx8ICF2YWxpZFVuaXQoY3VycmVudFBhcnNlclZhbHVl
LCBGTnVtYmVyLCBDU1NTdHJpY3RNb2RlKSkKLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAg
ICAgIFJlZlB0cjxDU1NWYWx1ZT4gYXJyYXlWYWx1ZSA9IGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZh
bHVlKGN1cnJlbnRQYXJzZXJWYWx1ZS0+ZlZhbHVlLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05V
TUJFUik7Ci0gICAgICAgIGFycmF5RnVuY3Rpb24tPmFwcGVuZChhcnJheVZhbHVlLnJlbGVhc2Uo
KSk7Ci0KLSAgICAgICAgQ1NTUGFyc2VyVmFsdWUqIG5leHRQYXJzZXJWYWx1ZSA9IGFycmF5QXJn
c1BhcnNlclZhbHVlTGlzdC0+bmV4dCgpOwotICAgICAgICBpZiAoIW5leHRQYXJzZXJWYWx1ZSkK
LSAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgIGlmICghaXNDb21tYShuZXh0UGFyc2VyVmFs
dWUpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgYXJyYXlBcmdzUGFyc2VyVmFs
dWVMaXN0LT5uZXh0KCk7Ci0gICAgfQotCi0gICAgcmV0dXJuIGFycmF5RnVuY3Rpb247Ci19Ci0K
LVBhc3NSZWZQdHI8V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZT4gQ1NTUGFyc2VyOjpwYXJzZU1h
dFZhbHVlKENTU1BhcnNlclZhbHVlKiB2YWx1ZSkKLXsKLSAgICBpZiAodmFsdWUtPnVuaXQgIT0g
Q1NTUGFyc2VyVmFsdWU6OkZ1bmN0aW9uIHx8ICF2YWx1ZS0+ZnVuY3Rpb24pCi0gICAgICAgIHJl
dHVybiAwOwotCi0gICAgdW5zaWduZWQgbnVtYmVyT2ZWYWx1ZXMgPSAwOwotICAgIGlmIChlcXVh
bElnbm9yaW5nQ2FzZSh2YWx1ZS0+ZnVuY3Rpb24tPm5hbWUsICJtYXQyKCIpKQotICAgICAgICBu
dW1iZXJPZlZhbHVlcyA9IDQ7Ci0gICAgZWxzZSBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UodmFsdWUt
PmZ1bmN0aW9uLT5uYW1lLCAibWF0MygiKSkKLSAgICAgICAgbnVtYmVyT2ZWYWx1ZXMgPSA5Owot
ICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKHZhbHVlLT5mdW5jdGlvbi0+bmFtZSwgIm1h
dDQoIikpCi0gICAgICAgIG51bWJlck9mVmFsdWVzID0gMTY7Ci0gICAgZWxzZQotICAgICAgICBy
ZXR1cm4gMDsKLQotICAgIENTU1BhcnNlclZhbHVlTGlzdCogYXJncyA9IHZhbHVlLT5mdW5jdGlv
bi0+YXJncy5nZXQoKTsKLSAgICBpZiAoIWFyZ3MgfHwgYXJncy0+c2l6ZSgpICE9IChudW1iZXJP
ZlZhbHVlcyAqIDIgLSAxKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBSZWZQdHI8V2ViS2l0
Q1NTTWF0RnVuY3Rpb25WYWx1ZT4gbWF0VmFsdWVMaXN0ID0gV2ViS2l0Q1NTTWF0RnVuY3Rpb25W
YWx1ZTo6Y3JlYXRlKCk7Ci0gICAgQ1NTUGFyc2VyVmFsdWUqIGFyZyA9IGFyZ3MtPmN1cnJlbnQo
KTsKLSAgICB3aGlsZSAoYXJnKSB7Ci0gICAgICAgIGlmICghdmFsaWRVbml0KGFyZywgRk51bWJl
ciwgQ1NTU3RyaWN0TW9kZSkpCi0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgbWF0VmFs
dWVMaXN0LT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoYXJnLT5mVmFsdWUsIENT
U1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKSk7Ci0gICAgICAgIGFyZyA9IGFyZ3MtPm5leHQo
KTsKLQotICAgICAgICBpZiAoIWFyZykKLSAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgIGlm
ICghaXNDb21tYShhcmcpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgYXJnID0g
YXJncy0+bmV4dCgpOwotICAgIH0KLQotICAgIGlmICghbWF0VmFsdWVMaXN0IHx8IG1hdFZhbHVl
TGlzdC0+bGVuZ3RoKCkgIT0gbnVtYmVyT2ZWYWx1ZXMpCi0gICAgICAgIHJldHVybiAwOwotCi0g
ICAgcmV0dXJuIG1hdFZhbHVlTGlzdC5yZWxlYXNlKCk7Ci19Ci0KLVBhc3NSZWZQdHI8V2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZT4gQ1NTUGFyc2VyOjpwYXJzZU1peEZ1bmN0aW9uKENTU1BhcnNl
clZhbHVlKiB2YWx1ZSkKLXsKLSAgICBBU1NFUlQodmFsdWUtPnVuaXQgPT0gQ1NTUGFyc2VyVmFs
dWU6OkZ1bmN0aW9uICYmIHZhbHVlLT5mdW5jdGlvbik7Ci0KLSAgICBpZiAoIWVxdWFsSWdub3Jp
bmdDYXNlKHZhbHVlLT5mdW5jdGlvbi0+bmFtZSwgIm1peCgiKSkKLSAgICAgICAgcmV0dXJuIDA7
Ci0KLSAgICBDU1NQYXJzZXJWYWx1ZUxpc3QqIGFyZ3NMaXN0ID0gdmFsdWUtPmZ1bmN0aW9uLT5h
cmdzLmdldCgpOwotICAgIGlmICghYXJnc0xpc3QpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAg
dW5zaWduZWQgbnVtQXJncyA9IGFyZ3NMaXN0LT5zaXplKCk7Ci0gICAgaWYgKG51bUFyZ3MgPCAx
IHx8IG51bUFyZ3MgPiAzKQotICAgICAgICByZXR1cm4gMDsKLSAgICAKLSAgICBSZWZQdHI8V2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZT4gbWl4RnVuY3Rpb24gPSBXZWJLaXRDU1NNaXhGdW5jdGlv
blZhbHVlOjpjcmVhdGUoKTsKLQotICAgIGJvb2wgaGFzQmxlbmRNb2RlID0gZmFsc2U7Ci0gICAg
Ym9vbCBoYXNBbHBoYUNvbXBvc2l0aW5nID0gZmFsc2U7Ci0KLSAgICBmb3IgKENTU1BhcnNlclZh
bHVlKiBhcmcgPSBhcmdzTGlzdC0+Y3VycmVudCgpOyBhcmc7IGFyZyA9IGFyZ3NMaXN0LT5uZXh0
KCkpIHsKLSAgICAgICAgUmVmUHRyPENTU1ZhbHVlPiB2YWx1ZTsKLQotICAgICAgICB1bnNpZ25l
ZCBhcmdOdW1iZXIgPSBhcmdzTGlzdC0+Y3VycmVudEluZGV4KCk7Ci0gICAgICAgIGlmICghYXJn
TnVtYmVyKSB7Ci0gICAgICAgICAgICBpZiAoYXJnLT51bml0ID09IENTU1ByaW1pdGl2ZVZhbHVl
OjpDU1NfVVJJKSB7Ci0gICAgICAgICAgICAgICAgVVJMIHNoYWRlclVSTCA9IGNvbXBsZXRlVVJM
KGFyZy0+c3RyaW5nKTsKLSAgICAgICAgICAgICAgICB2YWx1ZSA9IFdlYktpdENTU1NoYWRlclZh
bHVlOjpjcmVhdGUoc2hhZGVyVVJMLnN0cmluZygpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
fSBlbHNlIGlmIChhcmdOdW1iZXIgPT0gMSB8fCBhcmdOdW1iZXIgPT0gMikgewotICAgICAgICAg
ICAgaWYgKCFoYXNCbGVuZE1vZGUgJiYgaXNCbGVuZE1vZGUoYXJnLT5pZCkpIHsKLSAgICAgICAg
ICAgICAgICBoYXNCbGVuZE1vZGUgPSB0cnVlOwotICAgICAgICAgICAgICAgIHZhbHVlID0gY3Nz
VmFsdWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKGFyZy0+aWQpOwotICAgICAgICAgICAg
fSBlbHNlIGlmICghaGFzQWxwaGFDb21wb3NpdGluZyAmJiBpc0NvbXBvc2l0ZU9wZXJhdG9yKGFy
Zy0+aWQpKSB7Ci0gICAgICAgICAgICAgICAgaGFzQWxwaGFDb21wb3NpdGluZyA9IHRydWU7Ci0g
ICAgICAgICAgICAgICAgdmFsdWUgPSBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFs
dWUoYXJnLT5pZCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoIXZh
bHVlKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAgICAgbWl4RnVuY3Rpb24tPmFwcGVu
ZCh2YWx1ZS5yZWxlYXNlKCkpOwotICAgIH0KLQotICAgIHJldHVybiBtaXhGdW5jdGlvbjsKIH0K
IAotUGFzc1JlZlB0cjxDU1NWYWx1ZUxpc3Q+IENTU1BhcnNlcjo6cGFyc2VDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJzKENTU1BhcnNlclZhbHVlTGlzdCogYXJnc0xpc3QpCi17Ci0gICAgLy8KLSAgICAv
LyBwYXJhbXM6ICAgICAgWzxwYXJhbS1kZWY+Wyw8cGFyYW0tZGVmPipdXQotICAgIC8vIHBhcmFt
LWRlZjogICA8cGFyYW0tbmFtZT53c3A8cGFyYW0tdmFsdWU+Ci0gICAgLy8gcGFyYW0tbmFtZTog
IDxpZGVudD4KLSAgICAvLyBwYXJhbS12YWx1ZTogdHJ1ZXxmYWxzZVt3c3ArdHJ1ZXxmYWxzZV17
MC0zfSB8Ci0gICAgLy8gICAgICAgICAgICAgIDxudW1iZXI+W3dzcCs8bnVtYmVyPl17MC0zfSB8
Ci0gICAgLy8gICAgICAgICAgICAgIDxhcnJheT4gfAotICAgIC8vICAgICAgICAgICAgICA8dHJh
bnNmb3JtPiB8Ci0gICAgLy8gICAgICAgICAgICAgIDx0ZXh0dXJlKDx1cmk+KT4KLSAgICAvLyBh
cnJheTogJ2FycmF5KCc8bnVtYmVyPlt3c3A8bnVtYmVyPl0qJyknCi0gICAgLy8gY3NzLTNkLXRy
YW5zZm9ybTogPHRyYW5zZm9ybS1mdW5jdGlvbj47Wzx0cmFuc2Zvcm0tZnVuY3Rpb24+XSoKLSAg
ICAvLyB0cmFuc2Zvcm06ICAgPGNzcy0zZC10cmFuc2Zvcm0+IHwgPG1hdD4KLSAgICAvLyBtYXQ6
ICAgICAgICAgJ21hdDIoJzxudW1iZXI+KCw8bnVtYmVyPil7M30nKScgfCAKLSAgICAvLyAgICAg
ICAgICAgICAgJ21hdDMoJzxudW1iZXI+KCw8bnVtYmVyPil7OH0nKScgfCAKLSAgICAvLyAgICAg
ICAgICAgICAgJ21hdDQoJzxudW1iZXI+KCw8bnVtYmVyPil7MTV9JyknICkKLSAgICAvLwotCi0g
ICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyYW1MaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVD
b21tYVNlcGFyYXRlZCgpOwotCi0gICAgd2hpbGUgKENTU1BhcnNlclZhbHVlKiBhcmcgPSBhcmdz
TGlzdC0+Y3VycmVudCgpKSB7Ci0gICAgICAgIGlmIChhcmctPnVuaXQgIT0gQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU19JREVOVCkKLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAgICAgIFJlZlB0
cjxDU1NWYWx1ZUxpc3Q+IHBhcmFtZXRlciA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBh
cmF0ZWQoKTsKLSAgICAgICAgcGFyYW1ldGVyLT5hcHBlbmQoY3JlYXRlUHJpbWl0aXZlU3RyaW5n
VmFsdWUoYXJnKSk7Ci0KLSAgICAgICAgYXJnID0gYXJnc0xpc3QtPm5leHQoKTsKLSAgICAgICAg
aWYgKCFhcmcpCi0gICAgICAgICAgICByZXR1cm4gMDsKLQotICAgICAgICBSZWZQdHI8Q1NTVmFs
dWU+IHBhcmFtZXRlclZhbHVlOwotCi0gICAgICAgIGlmIChhcmctPnVuaXQgPT0gQ1NTUGFyc2Vy
VmFsdWU6OkZ1bmN0aW9uICYmIGFyZy0+ZnVuY3Rpb24pIHsKLSAgICAgICAgICAgIC8vIEZJWE1F
OiBJbXBsZW1lbnQgcGFyc2luZyBmb3IgdGhlIG90aGVyIHBhcmFtZXRlciB0eXBlcy4KLSAgICAg
ICAgICAgIC8vIHRleHR1cmVzOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzE0NDIKLSAgICAgICAgICAgIGlmIChlcXVhbElnbm9yaW5nQ2FzZShhcmctPmZ1bmN0aW9u
LT5uYW1lLCAiYXJyYXkoIikpIHsKLSAgICAgICAgICAgICAgICBwYXJhbWV0ZXJWYWx1ZSA9IHBh
cnNlQ3VzdG9tRmlsdGVyQXJyYXlGdW5jdGlvbihhcmcpOwotICAgICAgICAgICAgICAgIC8vIFRo
aXMgcGFyc2luZyBzdGVwIG9ubHkgY29uc3VtZXMgZnVuY3Rpb24gYXJndW1lbnRzLAotICAgICAg
ICAgICAgICAgIC8vIGFyZ3NMaXN0IGlzIHRoZXJlZm9yZSBtb3ZlZCBmb3J3YXJkIGV4cGxpY2l0
ZWx5LgotICAgICAgICAgICAgICAgIGFyZ3NMaXN0LT5uZXh0KCk7Ci0gICAgICAgICAgICB9IGVs
c2UgewotICAgICAgICAgICAgICAgIC8vIFBhcnNlIG1hdDIsIG1hdDMgYW5kIG1hdDQgZnVuY3Rp
b25zLgotICAgICAgICAgICAgICAgIHBhcmFtZXRlclZhbHVlID0gcGFyc2VNYXRWYWx1ZShhcmcp
OwotICAgICAgICAgICAgICAgIGlmICghcGFyYW1ldGVyVmFsdWUgJiYgYXJnKQotICAgICAgICAg
ICAgICAgICAgICBwYXJhbWV0ZXJWYWx1ZSA9IHBhcnNlQ3VzdG9tRmlsdGVyVHJhbnNmb3JtKGFy
Z3NMaXN0KTsKLSAgICAgICAgICAgICAgICBlbHNlIGlmIChwYXJhbWV0ZXJWYWx1ZSkKLSAgICAg
ICAgICAgICAgICAgICAgYXJnc0xpc3QtPm5leHQoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
fSBlbHNlIGlmICh2YWxpZFVuaXQoYXJnLCBGTnVtYmVyLCBDU1NTdHJpY3RNb2RlKSkgewotICAg
ICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyYW1WYWx1ZUxpc3QgPSBDU1NWYWx1ZUxp
c3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgICAgICAgICB3aGlsZSAoYXJnKSB7Ci0g
ICAgICAgICAgICAgICAgLy8gSWYgd2UgaGl0IGEgY29tbWEsIGl0IG1lYW5zIHRoYXQgd2UgZmlu
aXNoZWQgdGhpcyBwYXJhbWV0ZXIncyB2YWx1ZXMuCi0gICAgICAgICAgICAgICAgaWYgKGlzQ29t
bWEoYXJnKSkKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgaWYg
KCF2YWxpZFVuaXQoYXJnLCBGTnVtYmVyLCBDU1NTdHJpY3RNb2RlKSkKLSAgICAgICAgICAgICAg
ICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICAgICAgICAgcGFyYW1WYWx1ZUxpc3QtPmFwcGVuZChj
c3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShhcmctPmZWYWx1ZSwgQ1NTUHJpbWl0aXZlVmFsdWU6
OkNTU19OVU1CRVIpKTsKLSAgICAgICAgICAgICAgICBhcmcgPSBhcmdzTGlzdC0+bmV4dCgpOwot
ICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKCFwYXJhbVZhbHVlTGlzdC0+bGVuZ3RoKCkg
fHwgcGFyYW1WYWx1ZUxpc3QtPmxlbmd0aCgpID4gNCkKLSAgICAgICAgICAgICAgICByZXR1cm4g
MDsKLSAgICAgICAgICAgIHBhcmFtZXRlclZhbHVlID0gcGFyYW1WYWx1ZUxpc3QucmVsZWFzZSgp
OwotICAgICAgICB9Ci0gICAgICAgIGlmICghcGFyYW1ldGVyVmFsdWUgJiYgYXJnKSB7Ci0gICAg
ICAgICAgICAvLyBBbGwgcGFyYW1ldGVyIHZhbHVlcyBuZWVkIHRvIGJlIENTU1ZhbHVlTGlzdHMu
Ci0gICAgICAgICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJhbVZhbHVlTGlzdCA9IENTU1Zh
bHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAgICAgICAgICAgIFJlZlB0cjxDU1NQ
cmltaXRpdmVWYWx1ZT4gY29sb3JWYWx1ZSA9IHBhcnNlQ29sb3IoYXJnKTsKLSAgICAgICAgICAg
IGlmICghY29sb3JWYWx1ZSkKLSAgICAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgICAg
IHBhcmFtVmFsdWVMaXN0LT5hcHBlbmQoY29sb3JWYWx1ZS5yZWxlYXNlKCkpOwotICAgICAgICAg
ICAgcGFyYW1ldGVyVmFsdWUgPSBwYXJhbVZhbHVlTGlzdC5yZWxlYXNlKCk7Ci0gICAgICAgICAg
ICBhcmcgPSBhcmdzTGlzdC0+bmV4dCgpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKCFwYXJh
bWV0ZXJWYWx1ZSB8fCAhYWNjZXB0Q29tbWFPcGVyYXRvcihhcmdzTGlzdCkpCi0gICAgICAgICAg
ICByZXR1cm4gMDsKLQotICAgICAgICBwYXJhbWV0ZXItPmFwcGVuZChwYXJhbWV0ZXJWYWx1ZS5y
ZWxlYXNlKCkpOwotICAgICAgICBwYXJhbUxpc3QtPmFwcGVuZChwYXJhbWV0ZXIucmVsZWFzZSgp
KTsKLSAgICB9Ci0KLSAgICByZXR1cm4gcGFyYW1MaXN0OyAgIAotfQotCi1QYXNzUmVmUHRyPFdl
YktpdENTU0ZpbHRlclZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlQ3VzdG9tRmlsdGVyRnVuY3Rpb25X
aXRoQXRSdWxlUmVmZXJlbmNlU3ludGF4KENTU1BhcnNlclZhbHVlKiB2YWx1ZSkKLXsKLSAgICAv
LwotICAgIC8vIEN1c3RvbSBmaWx0ZXIgZnVuY3Rpb24gImF0LXJ1bGUgcmVmZXJlbmNlIiBzeW50
YXg6Ci0gICAgLy8KLSAgICAvLyBjdXN0b20oPGZpbHRlci1uYW1lPndzcFssd3NwPHBhcmFtcz5d
KQotICAgIC8vCi0gICAgLy8gZmlsdGVyLW5hbWU6IDxmaWx0ZXItbmFtZT4KLSAgICAvLyBwYXJh
bXM6IFNlZSB0aGUgY29tbWVudCBpbiBDU1NQYXJzZXI6OnBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1l
dGVycy4KLSAgICAvLwotCi0gICAgQVNTRVJUKHZhbHVlLT5mdW5jdGlvbik7Ci0KLSAgICBDU1NQ
YXJzZXJWYWx1ZUxpc3QqIGFyZ3NMaXN0ID0gdmFsdWUtPmZ1bmN0aW9uLT5hcmdzLmdldCgpOwot
ICAgIGlmICghYXJnc0xpc3QgfHwgIWFyZ3NMaXN0LT5zaXplKCkpCi0gICAgICAgIHJldHVybiAw
OwotCi0gICAgLy8gMS4gUGFyc2UgdGhlIGZpbHRlciBuYW1lLgotICAgIENTU1BhcnNlclZhbHVl
KiBhcmcgPSBhcmdzTGlzdC0+Y3VycmVudCgpOwotICAgIGlmIChhcmctPnVuaXQgIT0gQ1NTUHJp
bWl0aXZlVmFsdWU6OkNTU19JREVOVCkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBSZWZQdHI8
V2ViS2l0Q1NTRmlsdGVyVmFsdWU+IGZpbHRlclZhbHVlID0gV2ViS2l0Q1NTRmlsdGVyVmFsdWU6
OmNyZWF0ZShXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6Q3VzdG9tRmlsdGVyT3BlcmF0aW9uKTsKLQot
ICAgIFJlZlB0cjxDU1NWYWx1ZT4gZmlsdGVyTmFtZSA9IGNyZWF0ZVByaW1pdGl2ZVN0cmluZ1Zh
bHVlKGFyZyk7Ci0gICAgZmlsdGVyVmFsdWUtPmFwcGVuZChmaWx0ZXJOYW1lKTsKLSAgICBhcmdz
TGlzdC0+bmV4dCgpOwotCi0gICAgaWYgKCFhY2NlcHRDb21tYU9wZXJhdG9yKGFyZ3NMaXN0KSkK
LSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAvLyAyLiBQYXJzZSB0aGUgcGFyYW1ldGVycy4KLSAg
ICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJhbUxpc3QgPSBwYXJzZUN1c3RvbUZpbHRlclBhcmFt
ZXRlcnMoYXJnc0xpc3QpOwotICAgIGlmICghcGFyYW1MaXN0KQotICAgICAgICByZXR1cm4gMDsK
LQotICAgIGlmIChwYXJhbUxpc3QtPmxlbmd0aCgpKQotICAgICAgICBmaWx0ZXJWYWx1ZS0+YXBw
ZW5kKHBhcmFtTGlzdC5yZWxlYXNlKCkpOwotCi0gICAgcmV0dXJuIGZpbHRlclZhbHVlOwotfQot
Ci0vLyBGSVhNRTogVGhlIGN1c3RvbSBmaWx0ZXJzICJpbmxpbmUiIHN5bnRheCBpcyBkZXByZWNh
dGVkLiBXZSB3aWxsIHJlbW92ZSBpdCBldmVudHVhbGx5LgotUGFzc1JlZlB0cjxXZWJLaXRDU1NG
aWx0ZXJWYWx1ZT4gQ1NTUGFyc2VyOjpwYXJzZUN1c3RvbUZpbHRlckZ1bmN0aW9uV2l0aElubGlu
ZVN5bnRheChDU1NQYXJzZXJWYWx1ZSogdmFsdWUpCi17Ci0gICAgLy8KLSAgICAvLyBDdXN0b20g
ZmlsdGVyIGZ1bmN0aW9uICJpbmxpbmUiIHN5bnRheDoKLSAgICAvLwotICAgIC8vIGN1c3RvbSg8
dmVydGV4LXNoYWRlcj5bd3NwPGZyYWdtZW50LXNoYWRlcj5dWyw8dmVydGV4LW1lc2g+XVssPHBh
cmFtcz5dKQotICAgIC8vCi0gICAgLy8gdmVydGV4U2hhZGVyOiAgICA8dXJpPiB8IG5vbmUKLSAg
ICAvLyBmcmFnbWVudFNoYWRlcjogIDx1cmk+IHwgbm9uZSB8IG1peCg8dXJpPiBbIDxibGVuZC1t
b2RlPiB8fCA8YWxwaGEtY29tcG9zaXRpbmc+IF0/KQotICAgIC8vCi0gICAgLy8gYmxlbmQtbW9k
ZTogbm9ybWFsIHwgbXVsdGlwbHkgfCBzY3JlZW4gfCBvdmVybGF5IHwgZGFya2VuIHwgbGlnaHRl
biB8IGNvbG9yLWRvZGdlIHwKLSAgICAvLyAgICAgICAgICAgICBjb2xvci1idXJuIHwgaGFyZC1s
aWdodCB8IHNvZnQtbGlnaHQgfCBkaWZmZXJlbmNlIHwgZXhjbHVzaW9uIHwgaHVlIHwKLSAgICAv
LyAgICAgICAgICAgICBzYXR1cmF0aW9uIHwgY29sb3IgfCBsdW1pbm9zaXR5Ci0gICAgLy8gYWxw
aGEtY29tcG9zaXRpbmc6IGNsZWFyIHwgc3JjIHwgZHN0IHwgc3JjLW92ZXIgfCBkc3Qtb3ZlciB8
IHNyYy1pbiB8IGRzdC1pbiB8Ci0gICAgLy8gICAgICAgICAgICAgICAgICAgIHNyYy1vdXQgfCBk
c3Qtb3V0IHwgc3JjLWF0b3AgfCBkc3QtYXRvcCB8IHhvciB8IHBsdXMKLSAgICAvLwotICAgIC8v
IHZlcnRleE1lc2g6ICArPGludGVnZXI+ezEsMn1bd3NwPGJveD5dW3dzcCdkZXRhY2hlZCddCi0g
ICAgLy8gYm94OiBmaWx0ZXItYm94IHwgYm9yZGVyLWJveCB8IHBhZGRpbmctYm94IHwgY29udGVu
dC1ib3gKLSAgICAvLwotICAgIC8vIHBhcmFtczogU2VlIHRoZSBjb21tZW50IGluIENTU1BhcnNl
cjo6cGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzLgotICAgIC8vCi0KLSAgICBBU1NFUlQodmFs
dWUtPmZ1bmN0aW9uKTsKLQotICAgIENTU1BhcnNlclZhbHVlTGlzdCogYXJnc0xpc3QgPSB2YWx1
ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0gICAgaWYgKCFhcmdzTGlzdCkKLSAgICAgICAgcmV0
dXJuIDA7Ci0KLSAgICBSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+IGZpbHRlclZhbHVlID0g
V2ViS2l0Q1NTRmlsdGVyVmFsdWU6OmNyZWF0ZShXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6Q3VzdG9t
RmlsdGVyT3BlcmF0aW9uKTsKLQotICAgIC8vIDEuIFBhcnNlIHRoZSBzaGFkZXIgVVJMczogPHZl
cnRleC1zaGFkZXI+W3dzcDxmcmFnbWVudC1zaGFkZXI+XQotICAgIFJlZlB0cjxDU1NWYWx1ZUxp
c3Q+IHNoYWRlcnNMaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOwot
ICAgIGJvb2wgaGFkQXRMZWFzdE9uZUN1c3RvbVNoYWRlciA9IGZhbHNlOwotICAgIENTU1BhcnNl
clZhbHVlKiBhcmc7Ci0gICAgZm9yIChhcmcgPSBhcmdzTGlzdC0+Y3VycmVudCgpOyBhcmc7IGFy
ZyA9IGFyZ3NMaXN0LT5uZXh0KCkpIHsKLSAgICAgICAgUmVmUHRyPENTU1ZhbHVlPiB2YWx1ZTsK
LSAgICAgICAgaWYgKGFyZy0+aWQgPT0gQ1NTVmFsdWVOb25lKQotICAgICAgICAgICAgdmFsdWUg
PSBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25lKTsKLSAg
ICAgICAgZWxzZSBpZiAoYXJnLT51bml0ID09IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfVVJJKSB7
Ci0gICAgICAgICAgICBVUkwgc2hhZGVyVVJMID0gY29tcGxldGVVUkwoYXJnLT5zdHJpbmcpOwot
ICAgICAgICAgICAgdmFsdWUgPSBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y3JlYXRlKHNoYWRlclVS
TC5zdHJpbmcoKSk7Ci0gICAgICAgICAgICBoYWRBdExlYXN0T25lQ3VzdG9tU2hhZGVyID0gdHJ1
ZTsKLSAgICAgICAgfSBlbHNlIGlmIChhcmdzTGlzdC0+Y3VycmVudEluZGV4KCkgPT0gMSAmJiBh
cmctPnVuaXQgPT0gQ1NTUGFyc2VyVmFsdWU6OkZ1bmN0aW9uKSB7Ci0gICAgICAgICAgICBpZiAo
ISh2YWx1ZSA9IHBhcnNlTWl4RnVuY3Rpb24oYXJnKSkpCi0gICAgICAgICAgICAgICAgcmV0dXJu
IDA7Ci0gICAgICAgICAgICBoYWRBdExlYXN0T25lQ3VzdG9tU2hhZGVyID0gdHJ1ZTsKLSAgICAg
ICAgfQotCi0gICAgICAgIGlmICghdmFsdWUpCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAg
c2hhZGVyc0xpc3QtPmFwcGVuZCh2YWx1ZS5yZWxlYXNlKCkpOwotICAgIH0KLQotICAgIGlmICgh
c2hhZGVyc0xpc3QtPmxlbmd0aCgpIHx8ICFoYWRBdExlYXN0T25lQ3VzdG9tU2hhZGVyIHx8IHNo
YWRlcnNMaXN0LT5sZW5ndGgoKSA+IDIgfHwgIWFjY2VwdENvbW1hT3BlcmF0b3IoYXJnc0xpc3Qp
KQotICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgCi0gICAgZmlsdGVyVmFsdWUtPmFwcGVuZChz
aGFkZXJzTGlzdC5yZWxlYXNlKCkpOwotICAgIAotICAgIC8vIDIuIFBhcnNlIHRoZSBtZXNoIHNp
emUgPHZlcnRleC1tZXNoPgotICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IG1lc2hTaXplTGlzdCA9
IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAgICAKLSAgICBmb3IgKGFy
ZyA9IGFyZ3NMaXN0LT5jdXJyZW50KCk7IGFyZzsgYXJnID0gYXJnc0xpc3QtPm5leHQoKSkgewot
ICAgICAgICBpZiAoIXZhbGlkVW5pdChhcmcsIEZJbnRlZ2VyIHwgRk5vbk5lZywgQ1NTU3RyaWN0
TW9kZSkpCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgaW50IGludGVnZXJWYWx1ZSA9IGNs
YW1wVG9JbnRlZ2VyKGFyZy0+ZlZhbHVlKTsKLSAgICAgICAgLy8gQWNjb3JkaW5nIHRvIHRoZSBz
cGVjaWZpY2F0aW9uIHdlIGNhbiBvbmx5IGFjY2VwdCBwb3NpdGl2ZSBub24temVybyB2YWx1ZXMu
Ci0gICAgICAgIGlmIChpbnRlZ2VyVmFsdWUgPCAxKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0g
ICAgICAgIG1lc2hTaXplTGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKGlu
dGVnZXJWYWx1ZSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpKTsKLSAgICB9Ci0gICAg
Ci0gICAgaWYgKG1lc2hTaXplTGlzdC0+bGVuZ3RoKCkgPiAyKQotICAgICAgICByZXR1cm4gMDsK
LSAgICAKLSAgICAvLyBGSVhNRTogRm9yIGxlZ2FjeSBjb250ZW50LCB3ZSBhY2NlcHQgdGhlIG1l
c2ggYm94IHR5cGVzLiBXZSBkb24ndCBkbyBhbnl0aGluZyBlbHNlIHdpdGggdGhlbS4KLSAgICAv
LyBFdmVudHVhbGx5LCB3ZSdsbCByZW1vdmUgdGhlbSBjb21wbGV0ZWx5LgotICAgIC8vIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM3NzgKLSAgICBpZiAoKGFyZyA9
IGFyZ3NMaXN0LT5jdXJyZW50KCkpICYmIChhcmctPmlkID09IENTU1ZhbHVlQm9yZGVyQm94IHx8
IGFyZy0+aWQgPT0gQ1NTVmFsdWVQYWRkaW5nQm94Ci0gICAgICAgIHx8IGFyZy0+aWQgPT0gQ1NT
VmFsdWVDb250ZW50Qm94IHx8IGFyZy0+aWQgPT0gQ1NTVmFsdWVGaWx0ZXJCb3gpKQotICAgICAg
ICBhcmdzTGlzdC0+bmV4dCgpOwotICAgIAotICAgIGlmICgoYXJnID0gYXJnc0xpc3QtPmN1cnJl
bnQoKSkgJiYgYXJnLT5pZCA9PSBDU1NWYWx1ZURldGFjaGVkKSB7Ci0gICAgICAgIG1lc2hTaXpl
TGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShhcmctPmlk
KSk7Ci0gICAgICAgIGFyZ3NMaXN0LT5uZXh0KCk7Ci0gICAgfQotICAgIAotICAgIGlmIChtZXNo
U2l6ZUxpc3QtPmxlbmd0aCgpKSB7Ci0gICAgICAgIGlmICghYWNjZXB0Q29tbWFPcGVyYXRvcihh
cmdzTGlzdCkpCi0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgZmlsdGVyVmFsdWUtPmFw
cGVuZChtZXNoU2l6ZUxpc3QucmVsZWFzZSgpKTsKLSAgICB9Ci0gICAgCi0gICAgLy8gMy4gUGFy
c2UgdGhlIHBhcmFtZXRlcnMuCi0gICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyYW1MaXN0ID0g
cGFyc2VDdXN0b21GaWx0ZXJQYXJhbWV0ZXJzKGFyZ3NMaXN0KTsKLSAgICBpZiAoIXBhcmFtTGlz
dCkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBpZiAocGFyYW1MaXN0LT5sZW5ndGgoKSkKLSAg
ICAgICAgZmlsdGVyVmFsdWUtPmFwcGVuZChwYXJhbUxpc3QucmVsZWFzZSgpKTsKLSAgICAKLSAg
ICByZXR1cm4gZmlsdGVyVmFsdWU7Ci19Ci0KLVBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFs
dWU+IENTU1BhcnNlcjo6cGFyc2VDdXN0b21GaWx0ZXJGdW5jdGlvbihDU1NQYXJzZXJWYWx1ZSog
dmFsdWUpCi17Ci0gICAgQVNTRVJUKHZhbHVlLT5mdW5jdGlvbik7Ci0KLSAgICAvLyBMb29rIGFo
ZWFkIHRvIGRldGVybWluZSB3aGljaCBzeW50YXggdGhlIGN1c3RvbSBmdW5jdGlvbiBpcyB1c2lu
Zy4KLSAgICAvLyBCb3RoIHRoZSBhdC1ydWxlIHJlZmVyZW5jZSBzeW50YXggYW5kIHRoZSBpbmxp
bmUgc3ludGF4IHJlcXVpcmUgYXQgbGVhc3Qgb25lIGFyZ3VtZW50LgotICAgIENTU1BhcnNlclZh
bHVlTGlzdCogYXJnc0xpc3QgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0gICAgaWYg
KCFhcmdzTGlzdCB8fCAhYXJnc0xpc3QtPnNpemUoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAg
ICAvLyBUaGUgYXQtcnVsZSByZWZlcmVuY2Ugc3ludGF4IGV4cGVjdHMgYSBzaW5nbGUgaWRlbnQg
b3IgYW4gaWRlbnQgZm9sbG93ZWQgYnkgYSBjb21tYS4gCi0gICAgLy8gZS5nLiBjdXN0b20obXkt
ZmlsdGVyKSBvciBjdXN0b20obXktZmlsdGVyLCAuLi4pCi0gICAgLy8gSW4gY29udHJhc3QsIHdo
ZW4gdGhlIGlubGluZSBzeW50YXggc3RhcnRzIHdpdGggYW4gaWRlbnQgbGlrZSAibm9uZSIsIGl0
IGV4cGVjdHMgYSB1cmkgb3IgYSBtaXggZnVuY3Rpb24gbmV4dC4KLSAgICAvLyBlLmcuIGN1c3Rv
bShub25lIHVybCguLi4pKSBvciBjdXN0b20obm9uZSBtaXgoLi4uKQotICAgIGJvb2wgaXNBdFJ1
bGVSZWZlcmVuY2VTeW50YXggPSBhcmdzTGlzdC0+dmFsdWVBdCgwKS0+dW5pdCA9PSBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTX0lERU5UIAotICAgICAgICAmJiAoYXJnc0xpc3QtPnNpemUoKSA9PSAx
IHx8IGlzQ29tbWEoYXJnc0xpc3QtPnZhbHVlQXQoMSkpKTsKLSAgICByZXR1cm4gaXNBdFJ1bGVS
ZWZlcmVuY2VTeW50YXggPyBwYXJzZUN1c3RvbUZpbHRlckZ1bmN0aW9uV2l0aEF0UnVsZVJlZmVy
ZW5jZVN5bnRheCh2YWx1ZSkgOiBwYXJzZUN1c3RvbUZpbHRlckZ1bmN0aW9uV2l0aElubGluZVN5
bnRheCh2YWx1ZSk7Ci19Ci0KLVBhc3NSZWZQdHI8Q1NTVmFsdWVMaXN0PiBDU1NQYXJzZXI6OnBh
cnNlQ3VzdG9tRmlsdGVyVHJhbnNmb3JtKENTU1BhcnNlclZhbHVlTGlzdCogdmFsdWVMaXN0KQot
ewotICAgIGlmICghdmFsdWVMaXN0KQotICAgICAgICByZXR1cm4gMDsKLQotICAgIC8vIENTUyBT
aGFkZXJzJyBjdXN0b20oKSB0cmFuc2Zvcm1zIGFyZSBzcGFjZSBzZXBhcmF0ZWQgYW5kIGNvbW1h
IHRlcm1pbmF0ZWQuCi0gICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbGlzdCA9IENTU1ZhbHVlTGlz
dDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAgICBmb3IgKENTU1BhcnNlclZhbHVlKiB2YWx1
ZSA9IHZhbHVlTGlzdC0+Y3VycmVudCgpOyB2YWx1ZTsgdmFsdWUgPSB2YWx1ZUxpc3QtPm5leHQo
KSkgewotICAgICAgICBpZiAoaXNDb21tYSh2YWx1ZSkpCi0gICAgICAgICAgICBicmVhazsKLQot
ICAgICAgICBSZWZQdHI8Q1NTVmFsdWU+IHBhcnNlZFRyYW5zZm9ybVZhbHVlID0gcGFyc2VUcmFu
c2Zvcm1WYWx1ZSh2YWx1ZSk7Ci0gICAgICAgIGlmICghcGFyc2VkVHJhbnNmb3JtVmFsdWUpCi0g
ICAgICAgICAgICByZXR1cm4gMDsKLQotICAgICAgICBsaXN0LT5hcHBlbmQocGFyc2VkVHJhbnNm
b3JtVmFsdWUucmVsZWFzZSgpKTsKLSAgICB9Ci0KLSAgICByZXR1cm4gbGlzdC5yZWxlYXNlKCk7
Ci19Ci0KLVBhc3NSZWZQdHI8V2ViS2l0Q1NTU2hhZGVyVmFsdWU+IENTU1BhcnNlcjo6cGFyc2VG
aWx0ZXJSdWxlU3JjVXJpQW5kRm9ybWF0KENTU1BhcnNlclZhbHVlTGlzdCogdmFsdWVMaXN0KQot
ewotICAgIENTU1BhcnNlclZhbHVlKiB2YWx1ZSA9IHZhbHVlTGlzdC0+Y3VycmVudCgpOwotICAg
IEFTU0VSVCh2YWx1ZSAmJiB2YWx1ZS0+dW5pdCA9PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1VS
SSk7Ci0gICAgUmVmUHRyPFdlYktpdENTU1NoYWRlclZhbHVlPiBzaGFkZXJWYWx1ZSA9IFdlYktp
dENTU1NoYWRlclZhbHVlOjpjcmVhdGUoY29tcGxldGVVUkwodmFsdWUtPnN0cmluZykpOwotCi0g
ICAgdmFsdWUgPSB2YWx1ZUxpc3QtPm5leHQoKTsKLSAgICBpZiAodmFsdWUgJiYgdmFsdWUtPnVu
aXQgPT0gQ1NTUGFyc2VyVmFsdWU6OkZ1bmN0aW9uICYmIGVxdWFsSWdub3JpbmdDYXNlKHZhbHVl
LT5mdW5jdGlvbi0+bmFtZSwgImZvcm1hdCgiKSkgewotICAgICAgICBDU1NQYXJzZXJWYWx1ZUxp
c3QqIGFyZ3MgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3MuZ2V0KCk7Ci0gICAgICAgIGlmICghYXJn
cyB8fCBhcmdzLT5zaXplKCkgIT0gMSkKLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAgICAg
IENTU1BhcnNlclZhbHVlKiBhcmcgPSBhcmdzLT5jdXJyZW50KCk7Ci0gICAgICAgIGlmIChhcmct
PnVuaXQgIT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19TVFJJTkcpCi0gICAgICAgICAgICByZXR1
cm4gMDsKLQotICAgICAgICBzaGFkZXJWYWx1ZS0+c2V0Rm9ybWF0KGFyZy0+c3RyaW5nKTsKLSAg
ICAgICAgdmFsdWVMaXN0LT5uZXh0KCk7Ci0gICAgfQotCi0gICAgcmV0dXJuIHNoYWRlclZhbHVl
LnJlbGVhc2UoKTsKLX0KLQotYm9vbCBDU1NQYXJzZXI6OnBhcnNlRmlsdGVyUnVsZVNyYygpCi17
Ci0gICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gc3JjTGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRl
Q29tbWFTZXBhcmF0ZWQoKTsKLQotICAgIENTU1BhcnNlclZhbHVlKiB2YWx1ZSA9IG1fdmFsdWVM
aXN0LT5jdXJyZW50KCk7Ci0gICAgd2hpbGUgKHZhbHVlKSB7Ci0gICAgICAgIGlmICh2YWx1ZS0+
dW5pdCAhPSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1VSSSkKLSAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKLQotICAgICAgICBSZWZQdHI8V2ViS2l0Q1NTU2hhZGVyVmFsdWU+IHNoYWRlclZhbHVl
ID0gcGFyc2VGaWx0ZXJSdWxlU3JjVXJpQW5kRm9ybWF0KG1fdmFsdWVMaXN0LmdldCgpKTsKLSAg
ICAgICAgaWYgKCFzaGFkZXJWYWx1ZSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAg
ICAgc3JjTGlzdC0+YXBwZW5kKHNoYWRlclZhbHVlLnJlbGVhc2UoKSk7Ci0KLSAgICAgICAgaWYg
KCFhY2NlcHRDb21tYU9wZXJhdG9yKG1fdmFsdWVMaXN0LmdldCgpKSkKLSAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKLQotICAgICAgICB2YWx1ZSA9IG1fdmFsdWVMaXN0LT5jdXJyZW50KCk7Ci0g
ICAgfQotCi0gICAgaWYgKCFzcmNMaXN0LT5sZW5ndGgoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNl
OwotCi0gICAgYWRkUHJvcGVydHkoQ1NTUHJvcGVydHlTcmMsIHNyY0xpc3QucmVsZWFzZSgpLCBt
X2ltcG9ydGFudCk7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLWJvb2wgQ1NTUGFyc2VyOjpwYXJz
ZUZpbHRlclJ1bGVNaXgoKQotewotICAgIGlmIChtX3ZhbHVlTGlzdC0+c2l6ZSgpID4gMikKLSAg
ICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbWl4TGlzdCA9
IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKLQotICAgIGJvb2wgaGFzQmxl
bmRNb2RlID0gZmFsc2U7Ci0gICAgYm9vbCBoYXNBbHBoYUNvbXBvc2l0aW5nID0gZmFsc2U7Ci0g
ICAgQ1NTUGFyc2VyVmFsdWUqIHZhbHVlID0gbV92YWx1ZUxpc3QtPmN1cnJlbnQoKTsKLSAgICB3
aGlsZSAodmFsdWUpIHsKLSAgICAgICAgUmVmUHRyPENTU1ZhbHVlPiBtaXhWYWx1ZTsKLSAgICAg
ICAgaWYgKCFoYXNCbGVuZE1vZGUgJiYgaXNCbGVuZE1vZGUodmFsdWUtPmlkKSkgewotICAgICAg
ICAgICAgaGFzQmxlbmRNb2RlID0gdHJ1ZTsKLSAgICAgICAgICAgIG1peFZhbHVlID0gY3NzVmFs
dWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKHZhbHVlLT5pZCk7Ci0gICAgICAgIH0gZWxz
ZSBpZiAoIWhhc0FscGhhQ29tcG9zaXRpbmcgJiYgaXNDb21wb3NpdGVPcGVyYXRvcih2YWx1ZS0+
aWQpKSB7Ci0gICAgICAgICAgICBoYXNBbHBoYUNvbXBvc2l0aW5nID0gdHJ1ZTsKLSAgICAgICAg
ICAgIG1peFZhbHVlID0gY3NzVmFsdWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKHZhbHVl
LT5pZCk7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoIW1peFZhbHVlKQotICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwotCi0gICAgICAgIG1peExpc3QtPmFwcGVuZChtaXhWYWx1ZS5yZWxlYXNl
KCkpOwotICAgICAgICB2YWx1ZSA9IG1fdmFsdWVMaXN0LT5uZXh0KCk7Ci0gICAgfQotCi0gICAg
YWRkUHJvcGVydHkoQ1NTUHJvcGVydHlNaXgsIG1peExpc3QucmVsZWFzZSgpLCBtX2ltcG9ydGFu
dCk7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLWJvb2wgQ1NTUGFyc2VyOjpwYXJzZUdlb21ldHJ5
KENTU1Byb3BlcnR5SUQgcHJvcElkLCBDU1NQYXJzZXJWYWx1ZSogdmFsdWUsIGJvb2wgaW1wb3J0
YW50KQotewotICAgIEFTU0VSVChwcm9wSWQgPT0gQ1NTUHJvcGVydHlHZW9tZXRyeSk7Ci0KLSAg
ICAvLyA8Z2VvbWV0cnktc2hhcGU+ID0gZ3JpZCg8aW50ZWdlcj57MSwyfSB8fCBbIGRldGFjaGVk
IHwgYXR0YWNoZWQgXT8pCi0gICAgaWYgKHZhbHVlLT51bml0ICE9IENTU1BhcnNlclZhbHVlOjpG
dW5jdGlvbiB8fCAhZXF1YWxJZ25vcmluZ0Nhc2UodmFsdWUtPmZ1bmN0aW9uLT5uYW1lLCAiZ3Jp
ZCgiKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgQVNTRVJUKHZhbHVlLT5mdW5jdGlv
bi0+YXJncyk7Ci0KLSAgICAvLyBncmlkKCkgZnVuY3Rpb24gc2hvdWxkIGhhdmUgZnJvbSAxIHRv
IDMgYXJndW1lbnRzLgotICAgIHVuc2lnbmVkIHNpemUgPSB2YWx1ZS0+ZnVuY3Rpb24tPmFyZ3Mt
PnNpemUoKTsKLSAgICBpZiAoIXNpemUgfHwgc2l6ZSA+IDMpCi0gICAgICAgIHJldHVybiBmYWxz
ZTsKLQotICAgIENTU1BhcnNlclZhbHVlTGlzdCogZ3JpZFBhcnNlclZhbHVlTGlzdCA9IHZhbHVl
LT5mdW5jdGlvbi0+YXJncy5nZXQoKTsKLSAgICBDU1NQYXJzZXJWYWx1ZSogZ3JpZFBhcnNlclZh
bHVlID0gZ3JpZFBhcnNlclZhbHVlTGlzdC0+Y3VycmVudCgpOwotICAgIFJlZlB0cjxDU1NWYWx1
ZUxpc3Q+IGdlb21ldHJ5TGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQo
KTsKLQotICAgIGJvb2wgaGFzRGltZW5zaW9ucyA9IGZhbHNlOwotICAgIGJvb2wgaGFzQ29ubmVj
dGl2aXR5ID0gZmFsc2U7Ci0KLSAgICB3aGlsZSAoZ3JpZFBhcnNlclZhbHVlKSB7Ci0gICAgICAg
IGlmIChoYXNEaW1lbnNpb25zICYmIGhhc0Nvbm5lY3Rpdml0eSkgewotICAgICAgICAgICAgZ2Vv
bWV0cnlMaXN0LnJlbGVhc2UoKTsKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAg
fQotCi0gICAgICAgIGlmIChncmlkUGFyc2VyVmFsdWUtPmlkID09IENTU1ZhbHVlQXR0YWNoZWQg
fHwgZ3JpZFBhcnNlclZhbHVlLT5pZCA9PSBDU1NWYWx1ZURldGFjaGVkKSB7Ci0gICAgICAgICAg
ICBoYXNDb25uZWN0aXZpdHkgPSB0cnVlOwotICAgICAgICAgICAgZ2VvbWV0cnlMaXN0LT5hcHBl
bmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKGdyaWRQYXJzZXJWYWx1ZS0+
aWQpKTsKLSAgICAgICAgICAgIGdyaWRQYXJzZXJWYWx1ZSA9IGdyaWRQYXJzZXJWYWx1ZUxpc3Qt
Pm5leHQoKTsKLSAgICAgICAgfSBlbHNlIGlmICghaGFzRGltZW5zaW9ucyAmJiBwYXJzZUdyaWRE
aW1lbnNpb25zKGdyaWRQYXJzZXJWYWx1ZUxpc3QsIGdlb21ldHJ5TGlzdCkpIHsKLSAgICAgICAg
ICAgIGhhc0RpbWVuc2lvbnMgPSB0cnVlOwotICAgICAgICAgICAgZ3JpZFBhcnNlclZhbHVlID0g
Z3JpZFBhcnNlclZhbHVlTGlzdC0+Y3VycmVudCgpOwotICAgICAgICB9IGVsc2UgewotICAgICAg
ICAgICAgZ2VvbWV0cnlMaXN0LnJlbGVhc2UoKTsKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsK
LSAgICAgICAgfQotICAgIH0KLQotICAgIGFkZFByb3BlcnR5KHByb3BJZCwgZ2VvbWV0cnlMaXN0
LnJlbGVhc2UoKSwgaW1wb3J0YW50KTsKLSAgICByZXR1cm4gaGFzRGltZW5zaW9uczsKLX0KLQot
Ym9vbCBDU1NQYXJzZXI6OnBhcnNlR3JpZERpbWVuc2lvbnMoQ1NTUGFyc2VyVmFsdWVMaXN0KiBh
cmdzLCBSZWZQdHI8Q1NTVmFsdWVMaXN0PiYgZ3JpZFZhbHVlTGlzdCkKLXsKLSAgICBBU1NFUlQo
YXJncyk7Ci0KLSAgICAvLyBUaGVyZSBtdXN0IGJlIGF0IGxlYXN0IG9uZSB2YWxpZCBudW1lcmlj
IHZhbHVlLgotICAgIENTU1BhcnNlclZhbHVlKiBhcmcgPSBhcmdzLT5jdXJyZW50KCk7Ci0gICAg
aWYgKCFhcmcgfHwgIXZhbGlkVW5pdChhcmcsIEZQb3NpdGl2ZUludGVnZXIpKQotICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0KLSAgICAvLyBBIHZhbGlkIG51bWVyaWMgdmFsdWUgaXMgcGFyc2VkIGFu
ZCB0aGVuIHdlIG1vdmUgb24uCi0gICAgZ3JpZFZhbHVlTGlzdC0+YXBwZW5kKGNyZWF0ZVByaW1p
dGl2ZU51bWVyaWNWYWx1ZShhcmcpKTsKLSAgICBhcmcgPSBhcmdzLT5uZXh0KCk7Ci0KLSAgICAv
LyBJZiB0aGUgbmV4dCBhcmd1bWVudCBpcyBub3QgbnVtZXJpYywgd2UgYXJlIGRvbmUgcGFyc2lu
ZyB0aGUgZ3JpZCBkaW1lbnNpb25zLgotICAgIGlmICghYXJnIHx8ICF2YWxpZFVuaXQoYXJnLCBG
UG9zaXRpdmVJbnRlZ2VyKSkKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0KLSAgICAvLyBDb21taXQg
dGhlIHNlY29uZCBudW1lcmljIHZhbHVlIHdlIGZvdW5kLgotICAgIGdyaWRWYWx1ZUxpc3QtPmFw
cGVuZChjcmVhdGVQcmltaXRpdmVOdW1lcmljVmFsdWUoYXJnKSk7Ci0gICAgYXJncy0+bmV4dCgp
OwotICAgIHJldHVybiB0cnVlOwotfQotCi1ib29sIENTU1BhcnNlcjo6cGFyc2VGaWx0ZXJSdWxl
UGFyYW1ldGVycygpCi17Ci0gICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyYW1zTGlzdCA9IHBh
cnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVycyhtX3ZhbHVlTGlzdC5nZXQoKSk7Ci0gICAgaWYgKCFw
YXJhbXNMaXN0KQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBhZGRQcm9wZXJ0eShDU1NQ
cm9wZXJ0eVBhcmFtZXRlcnMsIHBhcmFtc0xpc3QucmVsZWFzZSgpLCBtX2ltcG9ydGFudCk7Ci0g
ICAgcmV0dXJuIHRydWU7Ci19Ci0KLVBhc3NSZWZQdHI8U3R5bGVSdWxlQmFzZT4gQ1NTUGFyc2Vy
OjpjcmVhdGVGaWx0ZXJSdWxlKGNvbnN0IENTU1BhcnNlclN0cmluZyYgZmlsdGVyTmFtZSkKLXsK
LSAgICBSZWZQdHI8U3R5bGVSdWxlRmlsdGVyPiBydWxlID0gU3R5bGVSdWxlRmlsdGVyOjpjcmVh
dGUoZmlsdGVyTmFtZSwgY3JlYXRlU3R5bGVQcm9wZXJ0aWVzKCkpOwotICAgIGNsZWFyUHJvcGVy
dGllcygpOwotICAgIHByb2Nlc3NBbmRBZGROZXdSdWxlVG9Tb3VyY2VUcmVlSWZOZWVkZWQoKTsK
LSAgICByZXR1cm4gcnVsZS5yZWxlYXNlKCk7Ci19Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KIFBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+IENTU1BhcnNlcjo6cGFy
c2VCdWlsdGluRmlsdGVyQXJndW1lbnRzKENTU1BhcnNlclZhbHVlTGlzdCogYXJncywgV2ViS2l0
Q1NTRmlsdGVyVmFsdWU6OkZpbHRlck9wZXJhdGlvblR5cGUgZmlsdGVyVHlwZSkKIHsKICAgICBS
ZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+IGZpbHRlclZhbHVlID0gV2ViS2l0Q1NTRmlsdGVy
VmFsdWU6OmNyZWF0ZShmaWx0ZXJUeXBlKTsKQEAgLTk4MDksMTkgKzkxOTQsNiBAQCBib29sIENT
U1BhcnNlcjo6cGFyc2VGaWx0ZXIoQ1NTUGFyc2VyVmFsdWVMaXN0KiB2YWx1ZUxpc3QsIFJlZlB0
cjxDU1NWYWx1ZT4mIHJlcwogICAgICAgICAgICAgaWYgKGZpbHRlclR5cGUgPT0gV2ViS2l0Q1NT
RmlsdGVyVmFsdWU6OlVua25vd25GaWx0ZXJPcGVyYXRpb24pCiAgICAgICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICAgICAgaWYgKGZp
bHRlclR5cGUgPT0gV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OkN1c3RvbUZpbHRlck9wZXJhdGlvbikg
ewotICAgICAgICAgICAgICAgIC8vIE1ha2Ugc3VyZSBwYXJzaW5nIGZhaWxzIGlmIGN1c3RvbSBm
aWx0ZXJzIGFyZSBkaXNhYmxlZC4KLSAgICAgICAgICAgICAgICBpZiAoIW1fY29udGV4dC5pc0NT
U0N1c3RvbUZpbHRlckVuYWJsZWQpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsK
LSAgICAgICAgICAgICAgICAKLSAgICAgICAgICAgICAgICBSZWZQdHI8V2ViS2l0Q1NTRmlsdGVy
VmFsdWU+IGZpbHRlclZhbHVlID0gcGFyc2VDdXN0b21GaWx0ZXJGdW5jdGlvbih2YWx1ZSk7Ci0g
ICAgICAgICAgICAgICAgaWYgKCFmaWx0ZXJWYWx1ZSkKLSAgICAgICAgICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgIGxpc3QtPmFwcGVuZChmaWx0ZXJWYWx1ZS5yZWxl
YXNlKCkpOwotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgfQotI2VuZGlm
CiAgICAgICAgICAgICBDU1NQYXJzZXJWYWx1ZUxpc3QqIGFyZ3MgPSB2YWx1ZS0+ZnVuY3Rpb24t
PmFyZ3MuZ2V0KCk7CiAgICAgICAgICAgICBpZiAoIWFyZ3MpCiAgICAgICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOwpAQCAtMTE0NzYsMTYgKzEwODQ4LDggQEAgaW5saW5lIHZvaWQgQ1NTUGFyc2Vy
OjpkZXRlY3RBdFRva2VuKGludCBsZW5ndGgsIGJvb2wgaGFzRXNjYXBlKQogICAgICAgICAgICAg
ICAgIHJldHVybjsKIAogI2lmIEVOQUJMRShDU1NfUkVHSU9OUykKLSAgICAgICAgICAgIGlmIChp
c0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFsKG5hbWVbMTRdLCAnbicpICYmIGlzRXF1YWxUb0NTU0lk
ZW50aWZpZXIobmFtZSArIDIsICJ3ZWJraXQtcmVnaW8iKSkgeworICAgICAgICAgICAgaWYgKGlz
QVNDSUlBbHBoYUNhc2VsZXNzRXF1YWwobmFtZVsxNF0sICduJykgJiYgaXNFcXVhbFRvQ1NTSWRl
bnRpZmllcihuYW1lICsgMiwgIndlYmtpdC1yZWdpbyIpKQogICAgICAgICAgICAgICAgIG1fdG9r
ZW4gPSBXRUJLSVRfUkVHSU9OX1JVTEVfU1lNOwotICAgICAgICAgICAgICAgIHJldHVybjsKLSAg
ICAgICAgICAgIH0KLSNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgICAg
IGlmIChpc0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFsKG5hbWVbMTRdLCAncicpICYmIGlzRXF1YWxU
b0NTU0lkZW50aWZpZXIobmFtZSArIDIsICJ3ZWJraXQtZmlsdGUiKSkgewotICAgICAgICAgICAg
ICAgIG1fdG9rZW4gPSBXRUJLSVRfRklMVEVSX1JVTEVfU1lNOwotICAgICAgICAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgICAgIH0KICNlbmRpZgogICAgICAgICAgICAgcmV0dXJuOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUGFyc2VyLmgKaW5kZXggY2ZkMjM0Yy4uMTMxNWUxNSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJz
ZXIuaApAQCAtNjcsMTMgKzY3LDYgQEAgY2xhc3MgU3R5bGVLZXlmcmFtZTsKIGNsYXNzIFN0eWxl
U2hlZXRDb250ZW50czsKIGNsYXNzIFN0eWxlZEVsZW1lbnQ7CiAKLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi1jbGFzcyBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU7Ci1jbGFzcyBXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlOwotY2xhc3MgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZTsKLWNs
YXNzIFdlYktpdENTU1NoYWRlclZhbHVlOwotI2VuZGlmCi0KIGNsYXNzIENTU1BhcnNlciB7CiAg
ICAgZnJpZW5kIGlubGluZSBpbnQgY3NzeXlsZXgodm9pZCosIENTU1BhcnNlciopOwogCkBAIC0y
NjAsMjIgKzI1Myw2IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgcGFyc2VGaWx0ZXIoQ1NTUGFyc2Vy
VmFsdWVMaXN0KiwgUmVmUHRyPENTU1ZhbHVlPiYpOwogICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NT
RmlsdGVyVmFsdWU+IHBhcnNlQnVpbHRpbkZpbHRlckFyZ3VtZW50cyhDU1NQYXJzZXJWYWx1ZUxp
c3QqLCBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6RmlsdGVyT3BlcmF0aW9uVHlwZSk7Ci0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1
ZT4gcGFyc2VNYXRWYWx1ZShDU1NQYXJzZXJWYWx1ZSopOwotICAgIFBhc3NSZWZQdHI8V2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZT4gcGFyc2VNaXhGdW5jdGlvbihDU1NQYXJzZXJWYWx1ZSopOwot
ICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlPiBwYXJzZUN1c3RvbUZp
bHRlckFycmF5RnVuY3Rpb24oQ1NTUGFyc2VyVmFsdWUqKTsKLSAgICBQYXNzUmVmUHRyPENTU1Zh
bHVlTGlzdD4gcGFyc2VDdXN0b21GaWx0ZXJUcmFuc2Zvcm0oQ1NTUGFyc2VyVmFsdWVMaXN0Kik7
Ci0gICAgUGFzc1JlZlB0cjxDU1NWYWx1ZUxpc3Q+IHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
cyhDU1NQYXJzZXJWYWx1ZUxpc3QqKTsKLSAgICBQYXNzUmVmUHRyPFdlYktpdENTU0ZpbHRlclZh
bHVlPiBwYXJzZUN1c3RvbUZpbHRlckZ1bmN0aW9uV2l0aEF0UnVsZVJlZmVyZW5jZVN5bnRheChD
U1NQYXJzZXJWYWx1ZSopOwotICAgIFBhc3NSZWZQdHI8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+IHBh
cnNlQ3VzdG9tRmlsdGVyRnVuY3Rpb25XaXRoSW5saW5lU3ludGF4KENTU1BhcnNlclZhbHVlKik7
Ci0gICAgUGFzc1JlZlB0cjxXZWJLaXRDU1NGaWx0ZXJWYWx1ZT4gcGFyc2VDdXN0b21GaWx0ZXJG
dW5jdGlvbihDU1NQYXJzZXJWYWx1ZSopOwotICAgIGJvb2wgcGFyc2VGaWx0ZXJSdWxlU3JjKCk7
Ci0gICAgYm9vbCBwYXJzZUZpbHRlclJ1bGVNaXgoKTsKLSAgICBib29sIHBhcnNlR2VvbWV0cnko
Q1NTUHJvcGVydHlJRCwgQ1NTUGFyc2VyVmFsdWUqLCBib29sKTsKLSAgICBib29sIHBhcnNlR3Jp
ZERpbWVuc2lvbnMoQ1NTUGFyc2VyVmFsdWVMaXN0KiwgUmVmUHRyPENTU1ZhbHVlTGlzdD4mKTsg
Ci0gICAgYm9vbCBwYXJzZUZpbHRlclJ1bGVQYXJhbWV0ZXJzKCk7Ci0gICAgUGFzc1JlZlB0cjxX
ZWJLaXRDU1NTaGFkZXJWYWx1ZT4gcGFyc2VGaWx0ZXJSdWxlU3JjVXJpQW5kRm9ybWF0KENTU1Bh
cnNlclZhbHVlTGlzdCopOwotI2VuZGlmCiAjZW5kaWYKIAogICAgIFBhc3NSZWZQdHI8Q1NTVmFs
dWU+IHBhcnNlQ2xpcFBhdGgoKTsKQEAgLTMzNiw5ICszMTMsNiBAQCBwdWJsaWM6CiAjaWYgRU5B
QkxFKFNIQURPV19ET00pCiAgICAgUGFzc1JlZlB0cjxTdHlsZVJ1bGVCYXNlPiBjcmVhdGVIb3N0
UnVsZShSdWxlTGlzdCopOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIFBh
c3NSZWZQdHI8U3R5bGVSdWxlQmFzZT4gY3JlYXRlRmlsdGVyUnVsZShjb25zdCBDU1NQYXJzZXJT
dHJpbmcmKTsKLSNlbmRpZgogCiAgICAgdm9pZCBzdGFydERlY2xhcmF0aW9uc0Zvck1hcmdpbkJv
eCgpOwogICAgIHZvaWQgZW5kRGVjbGFyYXRpb25zRm9yTWFyZ2luQm94KCk7CkBAIC0zODcsMTAg
KzM2MSw2IEBAIHB1YmxpYzoKICAgICBib29sIG1fbG9nRXJyb3JzOwogICAgIGJvb2wgbV9pZ25v
cmVFcnJvcnNJbkRlY2xhcmF0aW9uOwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGJv
b2wgbV9pbkZpbHRlclJ1bGU7Ci0jZW5kaWYKLQogICAgIEF0b21pY1N0cmluZyBtX2RlZmF1bHRO
YW1lc3BhY2U7CiAKICAgICAvLyB0b2tlbml6ZXIgbWV0aG9kcyBhbmQgZGF0YQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlck1vZGUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NQYXJzZXJNb2RlLmgKaW5kZXggNjk3YTgzNS4uMDJlMDUyOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlck1vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUGFyc2VyTW9kZS5oCkBAIC02NCw3ICs2NCw2IEBAIHB1YmxpYzoKICAgICBTdHJpbmcgY2hh
cnNldDsKICAgICBDU1NQYXJzZXJNb2RlIG1vZGU7CiAgICAgYm9vbCBpc0hUTUxEb2N1bWVudDsK
LSAgICBib29sIGlzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZDsKICAgICBib29sIGlzQ1NTU3RpY2t5
UG9zaXRpb25FbmFibGVkOwogICAgIGJvb2wgaXNDU1NSZWdpb25zRW5hYmxlZDsKICAgICBib29s
IGlzQ1NTQ29tcG9zaXRpbmdFbmFibGVkOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1Byb3BlcnR5TmFtZXMuaW4gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1l
cy5pbgppbmRleCBjOTliNWE1Li43ZWNhYmE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUHJvcGVydHlOYW1lcy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVy
dHlOYW1lcy5pbgpAQCAtMTA5LDkgKzEwOSw2IEBAIGN1cnNvciBbSW5oZXJpdGVkXQogZW1wdHkt
Y2VsbHMgW0luaGVyaXRlZF0KIGZsb2F0CiBmb250LXN0cmV0Y2gKLSNpZiBkZWZpbmVkKEVOQUJM
RV9DU1NfU0hBREVSUykgJiYgRU5BQkxFX0NTU19TSEFERVJTCi1nZW9tZXRyeQotI2VuZGlmCiBo
ZWlnaHQKICNpZiBkZWZpbmVkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICYmIEVOQUJM
RV9DU1NfSU1BR0VfT1JJRU5UQVRJT04KIGltYWdlLW9yaWVudGF0aW9uIFtJbmhlcml0ZWRdCkBA
IC0xMzUsMTAgKzEzMiw2IEBAIG1heC1oZWlnaHQKIG1heC13aWR0aAogbWluLWhlaWdodAogbWlu
LXdpZHRoCi0jaWYgZGVmaW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpICYmIEVOQUJMRV9DU1NfU0hB
REVSUwotbWl4Ci1wYXJhbWV0ZXJzCi0jZW5kaWYKIG9iamVjdC1maXQKIG9wYWNpdHkKIC8vIEhv
bm9yIC13ZWJraXQtb3BhY2l0eSBhcyBhIHN5bm9ueW0gZm9yIG9wYWNpdHkuIFRoaXMgd2FzIHRo
ZSBvbmx5IHN5bnRheCB0aGF0IHdvcmtlZCBpbiBTYWZhcmkgMS4xLApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5U291cmNlRGF0YS5oIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1Byb3BlcnR5U291cmNlRGF0YS5oCmluZGV4IGRhNzFiZWIuLmM5OTVhMDAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eVNvdXJjZURhdGEuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlTb3VyY2VEYXRhLmgKQEAgLTkzLDkgKzkzLDYg
QEAgc3RydWN0IENTU1J1bGVTb3VyY2VEYXRhIDogcHVibGljIFJlZkNvdW50ZWQ8Q1NTUnVsZVNv
dXJjZURhdGE+IHsKICAgICAgICAgSE9TVF9SVUxFLAogICAgICAgICBWSUVXUE9SVF9SVUxFLAog
ICAgICAgICBTVVBQT1JUU19SVUxFLAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAg
RklMVEVSX1JVTEUKLSNlbmRpZgogICAgIH07CiAKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxDU1NS
dWxlU291cmNlRGF0YT4gY3JlYXRlKFR5cGUgdHlwZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NSdWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUnVsZS5oCmluZGV4IDRj
N2ViZGIuLmE4MDM5OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGUuaApAQCAtNTksOSArNTksNiBAQCBwdWJs
aWM6CiAjaWYgRU5BQkxFKENTU19SRUdJT05TKQogICAgICAgICBXRUJLSVRfUkVHSU9OX1JVTEUg
PSAxNiwKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgV0VCS0lUX0ZJ
TFRFUl9SVUxFID0gMTcsCi0jZW5kaWYKICNpZiBFTkFCTEUoU0hBRE9XX0RPTSkKICAgICAgICAg
SE9TVF9SVUxFID0gMTAwMSwKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1J1bGUuaWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1J1bGUuaWRsCmluZGV4IGY0ZDRl
NmUuLjU4OWY4OTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSdWxlLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUnVsZS5pZGwKQEAgLTQ2LDkgKzQ2LDYgQEAKICNp
ZiBkZWZpbmVkKEVOQUJMRV9DU1NfUkVHSU9OUykgJiYgRU5BQkxFX0NTU19SRUdJT05TCiAgICAg
Y29uc3QgdW5zaWduZWQgc2hvcnQgV0VCS0lUX1JFR0lPTl9SVUxFID0gMTY7CiAjZW5kaWYKLSNp
ZiBkZWZpbmVkKEVOQUJMRV9DU1NfU0hBREVSUykgJiYgRU5BQkxFX0NTU19TSEFERVJTCi0gICAg
Y29uc3QgdW5zaWduZWQgc2hvcnQgV0VCS0lUX0ZJTFRFUl9SVUxFID0gMTc7Ci0jZW5kaWYKICNp
ZiBkZWZpbmVkKEVOQUJMRV9TSEFET1dfRE9NKSAmJiBFTkFCTEVfU0hBRE9XX0RPTQogICAgIGNv
bnN0IHVuc2lnbmVkIHNob3J0IEhPU1RfUlVMRSA9IDEwMDE7CiAjZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
VmFsdWUuY3BwCmluZGV4IGRjZGU3MzYuLjc2MGU4ZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNw
cApAQCAtNTQsMTEgKzU0LDcgQEAKICNpbmNsdWRlICJDU1NWYWx1ZUxpc3QuaCIKICNpbmNsdWRl
ICJTVkdDb2xvci5oIgogI2luY2x1ZGUgIlNWR1BhaW50LmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NT
QXJyYXlGdW5jdGlvblZhbHVlLmgiCiAjaW5jbHVkZSAiV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaCIK
LSNpbmNsdWRlICJXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmgiCi0jaW5jbHVkZSAiV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZS5oIgotI2luY2x1ZGUgIldlYktpdENTU1NoYWRlclZhbHVlLmgi
CiAjaW5jbHVkZSAiV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaCIKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewpAQCAtMjIyLDE2ICsyMTgsNiBAQCBib29sIENTU1ZhbHVlOjplcXVhbHMoY29uc3QgQ1NT
VmFsdWUmIG90aGVyKSBjb25zdAogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICAgICAgICAgY2Fz
ZSBXZWJLaXRDU1NGaWx0ZXJDbGFzczoKICAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFs
dWVzPFdlYktpdENTU0ZpbHRlclZhbHVlPigqdGhpcywgb3RoZXIpOwotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICAgICAgY2FzZSBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWVDbGFzczoK
LSAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPFdlYktpdENTU0FycmF5RnVuY3Rp
b25WYWx1ZT4oKnRoaXMsIG90aGVyKTsKLSAgICAgICAgY2FzZSBXZWJLaXRDU1NNYXRGdW5jdGlv
blZhbHVlQ2xhc3M6Ci0gICAgICAgICAgICByZXR1cm4gY29tcGFyZUNTU1ZhbHVlczxXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlPigqdGhpcywgb3RoZXIpOwotICAgICAgICBjYXNlIFdlYktpdENT
U01peEZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFs
dWVzPFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWU+KCp0aGlzLCBvdGhlcik7Ci0gICAgICAgIGNh
c2UgV2ViS2l0Q1NTU2hhZGVyQ2xhc3M6Ci0gICAgICAgICAgICByZXR1cm4gY29tcGFyZUNTU1Zh
bHVlczxXZWJLaXRDU1NTaGFkZXJWYWx1ZT4oKnRoaXMsIG90aGVyKTsKLSNlbmRpZgogI2VuZGlm
CiAjaWYgRU5BQkxFKFNWRykKICAgICAgICAgY2FzZSBTVkdDb2xvckNsYXNzOgpAQCAtMzIwLDE2
ICszMDYsNiBAQCBTdHJpbmcgQ1NTVmFsdWU6OmNzc1RleHQoKSBjb25zdAogI2lmIEVOQUJMRShD
U1NfRklMVEVSUykKICAgICBjYXNlIFdlYktpdENTU0ZpbHRlckNsYXNzOgogICAgICAgICByZXR1
cm4gdG9XZWJLaXRDU1NGaWx0ZXJWYWx1ZSh0aGlzKS0+Y3VzdG9tQ1NTVGV4dCgpOwotI2lmIEVO
QUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZUNs
YXNzOgotICAgICAgICByZXR1cm4gdG9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUodGhpcykt
PmN1c3RvbUNTU1RleHQoKTsKLSAgICBjYXNlIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVDbGFz
czoKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSh0aGlzKS0+Y3Vz
dG9tQ1NTVGV4dCgpOwotICAgIGNhc2UgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZUNsYXNzOgot
ICAgICAgICByZXR1cm4gdG9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKHRoaXMpLT5jdXN0b21D
U1NUZXh0KCk7Ci0gICAgY2FzZSBXZWJLaXRDU1NTaGFkZXJDbGFzczoKLSAgICAgICAgcmV0dXJu
IHRvV2ViS2l0Q1NTU2hhZGVyVmFsdWUodGhpcyktPmN1c3RvbUNTU1RleHQoKTsKLSNlbmRpZgog
I2VuZGlmCiAjaWYgRU5BQkxFKFNWRykKICAgICBjYXNlIFNWR0NvbG9yQ2xhc3M6CkBAIC00Mzks
MjAgKzQxNSw2IEBAIHZvaWQgQ1NTVmFsdWU6OmRlc3Ryb3koKQogICAgIGNhc2UgV2ViS2l0Q1NT
RmlsdGVyQ2xhc3M6CiAgICAgICAgIGRlbGV0ZSB0b1dlYktpdENTU0ZpbHRlclZhbHVlKHRoaXMp
OwogICAgICAgICByZXR1cm47Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2UgV2Vi
S2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIGRlbGV0ZSB0b1dlYktpdENT
U0FycmF5RnVuY3Rpb25WYWx1ZSh0aGlzKTsKLSAgICAgICAgcmV0dXJuOwotICAgIGNhc2UgV2Vi
S2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAgICAgICBkZWxldGUgdG9XZWJLaXRDU1NN
YXRGdW5jdGlvblZhbHVlKHRoaXMpOwotICAgICAgICByZXR1cm47Ci0gICAgY2FzZSBXZWJLaXRD
U1NNaXhGdW5jdGlvblZhbHVlQ2xhc3M6Ci0gICAgICAgIGRlbGV0ZSB0b1dlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUodGhpcyk7Ci0gICAgICAgIHJldHVybjsKLSAgICBjYXNlIFdlYktpdENTU1No
YWRlckNsYXNzOgotICAgICAgICBkZWxldGUgdG9XZWJLaXRDU1NTaGFkZXJWYWx1ZSh0aGlzKTsK
LSAgICAgICAgcmV0dXJuOwotI2VuZGlmCiAjZW5kaWYKICNpZiBFTkFCTEUoU1ZHKQogICAgIGNh
c2UgU1ZHQ29sb3JDbGFzczoKQEAgLTQ3OSwxNCArNDQxLDYgQEAgUGFzc1JlZlB0cjxDU1NWYWx1
ZT4gQ1NTVmFsdWU6OmNsb25lRm9yQ1NTT00oKSBjb25zdAogI2lmIEVOQUJMRShDU1NfRklMVEVS
UykKICAgICBjYXNlIFdlYktpdENTU0ZpbHRlckNsYXNzOgogICAgICAgICByZXR1cm4gdG9XZWJL
aXRDU1NGaWx0ZXJWYWx1ZSh0aGlzKS0+Y2xvbmVGb3JDU1NPTSgpOwotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSAgICBjYXNlIFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAg
ICAgICByZXR1cm4gdG9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUodGhpcyktPmNsb25lRm9y
Q1NTT00oKTsKLSAgICBjYXNlIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVDbGFzczoKLSAgICAg
ICAgcmV0dXJuIHRvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSh0aGlzKS0+Y2xvbmVGb3JDU1NP
TSgpOwotICAgIGNhc2UgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZUNsYXNzOgotICAgICAgICBy
ZXR1cm4gdG9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKHRoaXMpLT5jbG9uZUZvckNTU09NKCk7
Ci0jZW5kaWYKICNlbmRpZgogICAgIGNhc2UgV2ViS2l0Q1NTVHJhbnNmb3JtQ2xhc3M6CiAgICAg
ICAgIHJldHVybiB0b1dlYktpdENTU1RyYW5zZm9ybVZhbHVlKHRoaXMpLT5jbG9uZUZvckNTU09N
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NWYWx1ZS5oCmluZGV4IDYwMDU5ZDkuLjk0MmI3OTMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NWYWx1ZS5oCkBAIC05NiwxMiArOTYsNiBAQCBwdWJsaWM6CiAjaWYgRU5BQkxFKENTU19GSUxU
RVJTKQogICAgIGJvb2wgaXNGaWx0ZXJJbWFnZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFz
c1R5cGUgPT0gRmlsdGVySW1hZ2VDbGFzczsgfQogICAgIGJvb2wgaXNXZWJLaXRDU1NGaWx0ZXJW
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IFdlYktpdENTU0ZpbHRlckNsYXNz
OyB9Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGJvb2wgaXNXZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBXZWJLaXRDU1NBcnJh
eUZ1bmN0aW9uVmFsdWVDbGFzczsgfQotICAgIGJvb2wgaXNXZWJLaXRDU1NNYXRGdW5jdGlvblZh
bHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gV2ViS2l0Q1NTTWF0RnVuY3Rpb25W
YWx1ZUNsYXNzOyB9Ci0gICAgYm9vbCBpc1dlYktpdENTU01peEZ1bmN0aW9uVmFsdWUoKSBjb25z
dCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlQ2xhc3M7
IH0KLSAgICBib29sIGlzV2ViS2l0Q1NTU2hhZGVyVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2Ns
YXNzVHlwZSA9PSBXZWJLaXRDU1NTaGFkZXJDbGFzczsgfQotI2VuZGlmCiAjZW5kaWYgLy8gRU5B
QkxFKENTU19GSUxURVJTKQogICAgIGJvb2wgaXNHcmlkVGVtcGxhdGVWYWx1ZSgpIGNvbnN0IHsg
cmV0dXJuIG1fY2xhc3NUeXBlID09IEdyaWRUZW1wbGF0ZUNsYXNzOyB9CiAjaWYgRU5BQkxFKFNW
RykKQEAgLTE2Nyw5ICsxNjEsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgICAgIFVuaWNvZGVSYW5nZUNs
YXNzLAogICAgICAgICBMaW5lQm94Q29udGFpbkNsYXNzLAogICAgICAgICBDYWxjdWxhdGlvbkNs
YXNzLAotI2lmIEVOQUJMRShDU1NfRklMVEVSUykgJiYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
ICAgICBXZWJLaXRDU1NTaGFkZXJDbGFzcywKLSNlbmRpZgogICAgICAgICBHcmlkVGVtcGxhdGVD
bGFzcywKICNpZiBFTkFCTEUoU1ZHKQogICAgICAgICBTVkdDb2xvckNsYXNzLApAQCAtMTgzLDEx
ICsxNzQsNiBAQCBwcm90ZWN0ZWQ6CiAjZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAg
ICAgICAgIFdlYktpdENTU0ZpbHRlckNsYXNzLAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAg
ICAgICAgV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlQ2xhc3MsCi0gICAgICAgIFdlYktpdENT
U01hdEZ1bmN0aW9uVmFsdWVDbGFzcywKLSAgICAgICAgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1
ZUNsYXNzLAotI2VuZGlmCiAjZW5kaWYKICAgICAgICAgV2ViS2l0Q1NTVHJhbnNmb3JtQ2xhc3Ms
CiAgICAgICAgIC8vIERvIG5vdCBhcHBlbmQgbm9uLWxpc3QgY2xhc3MgdHlwZXMgaGVyZS4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4KaW5kZXggOWZjYWY4NC4uZTQyYWRhZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4KKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4KQEAgLTEwMDgsMTggKzEwMDgs
NiBAQCBhbHBoYWJldGljCiBjb2Fyc2UKIGZpbmUKIAotI2lmIChkZWZpbmVkKEVOQUJMRV9DU1Nf
RklMVEVSUykgJiYgRU5BQkxFX0NTU19GSUxURVJTKSB8fCAoZGVmaW5lZChFTkFCTEVfQ1NTX0NP
TVBPU0lUSU5HKSAmJiBFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKQotLy8gLXdlYmtpdC1maWx0ZXIK
LSNpZiBkZWZpbmVkKEVOQUJMRV9DU1NfU0hBREVSUykgJiYgRU5BQkxFX0NTU19TSEFERVJTCi0v
LyB2YWx1ZXMgZm9yIHRoZSBjdXN0b20oKSBmdW5jdGlvbgotLy8gYm9yZGVyLWJveAotLy8gcGFk
ZGluZy1ib3gKLS8vIGNvbnRlbnQtYm94Ci1hdHRhY2hlZAotZmlsdGVyLWJveAotZGV0YWNoZWQK
LSNlbmRpZiAvLyBDU1NfU0hBREVSUwotI2VuZGlmIC8vIENTU19GSUxURVJTCiAvLyBibGVuZCBt
b2RlcwogLy8gbm9ybWFsCiBtdWx0aXBseQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L1N0eWxlUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3Bw
CmluZGV4IGUzNjI3ZTguLjdhMzMzNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZVJlc29sdmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5j
cHAKQEAgLTE0MSwyNCArMTQxLDYgQEAKICNpbmNsdWRlICJTdHlsZUNhY2hlZEltYWdlU2V0Lmgi
CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0b21GaWx0
ZXJBcnJheVBhcmFtZXRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVy
LmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmgiCi0jaW5jbHVkZSAiQ3VzdG9t
RmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
LmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9t
RmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJh
bWV0ZXIuaCIKLSNpbmNsdWRlICJTdHlsZUNhY2hlZFNoYWRlci5oIgotI2luY2x1ZGUgIlN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotI2luY2x1ZGUgIlN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUNhY2hlLmgiCi0jaW5jbHVkZSAiU3R5bGVQZW5kaW5nU2hhZGVyLmgiCi0jaW5jbHVkZSAiU3R5
bGVTaGFkZXIuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgiCi0jaW5j
bHVkZSAiV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaCIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKERBU0hC
T0FSRF9TVVBQT1JUKQogI2luY2x1ZGUgIkRhc2hib2FyZFJlZ2lvbi5oIgogI2VuZGlmCkBAIC0y
NTYsOSArMjM4LDYgQEAgaW5saW5lIHZvaWQgU3R5bGVSZXNvbHZlcjo6U3RhdGU6OmNsZWFyKCkK
ICAgICBtX3BhcmVudE5vZGUgPSBudWxscHRyOwogICAgIG1fcmVnaW9uRm9yU3R5bGluZyA9IG51
bGxwdHI7CiAgICAgbV9wZW5kaW5nSW1hZ2VQcm9wZXJ0aWVzLmNsZWFyKCk7Ci0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotICAgIG1faGFzUGVuZGluZ1NoYWRlcnMgPSBmYWxzZTsKLSNlbmRpZgog
I2lmIEVOQUJMRShDU1NfRklMVEVSUykgJiYgRU5BQkxFKFNWRykKICAgICBtX3BlbmRpbmdTVkdE
b2N1bWVudHMuY2xlYXIoKTsKICNlbmRpZgpAQCAtMzEwMSwxMCArMzA4MCw2IEBAIHZvaWQgU3R5
bGVSZXNvbHZlcjo6YXBwbHlQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIGlkLCBDU1NWYWx1ZSogdmFs
dWUpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFdyYXBGbG93OgogICAgIGNhc2UgQ1NTUHJv
cGVydHlXZWJraXRXcmFwVGhyb3VnaDoKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykK
LSAgICBjYXNlIENTU1Byb3BlcnR5TWl4OgotICAgIGNhc2UgQ1NTUHJvcGVydHlQYXJhbWV0ZXJz
OgotI2VuZGlmCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdoaXRlU3BhY2U6CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eVdpZG93czoKICAgICBjYXNlIENTU1Byb3BlcnR5V2lkdGg6CkBAIC0zMzk2LDEwICsz
MzcxLDYgQEAgc3RhdGljIEZpbHRlck9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSBmaWx0ZXJPcGVy
YXRpb25Gb3JUeXBlKFdlYktpdENTU0ZpbHRlclZhbHUKICAgICAgICAgcmV0dXJuIEZpbHRlck9w
ZXJhdGlvbjo6QkxVUjsKICAgICBjYXNlIFdlYktpdENTU0ZpbHRlclZhbHVlOjpEcm9wU2hhZG93
RmlsdGVyT3BlcmF0aW9uOgogICAgICAgICByZXR1cm4gRmlsdGVyT3BlcmF0aW9uOjpEUk9QX1NI
QURPVzsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBXZWJLaXRDU1NGaWx0ZXJW
YWx1ZTo6Q3VzdG9tRmlsdGVyT3BlcmF0aW9uOgotICAgICAgICByZXR1cm4gRmlsdGVyT3BlcmF0
aW9uOjpDVVNUT007Ci0jZW5kaWYKICAgICBjYXNlIFdlYktpdENTU0ZpbHRlclZhbHVlOjpVbmtu
b3duRmlsdGVyT3BlcmF0aW9uOgogICAgICAgICByZXR1cm4gRmlsdGVyT3BlcmF0aW9uOjpOT05F
OwogICAgIH0KQEAgLTM0MjUsMzQwICszMzk2LDYgQEAgdm9pZCBTdHlsZVJlc29sdmVyOjpsb2Fk
UGVuZGluZ1NWR0RvY3VtZW50cygpCiB9CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLVN0eWxlU2hhZGVyKiBTdHlsZVJlc29sdmVyOjpzdHlsZVNoYWRlcihDU1NWYWx1ZSogdmFs
dWUpCi17Ci0gICAgaWYgKHZhbHVlLT5pc1dlYktpdENTU1NoYWRlclZhbHVlKCkpCi0gICAgICAg
IHJldHVybiBjYWNoZWRPclBlbmRpbmdTdHlsZVNoYWRlckZyb21WYWx1ZSh0b1dlYktpdENTU1No
YWRlclZhbHVlKHZhbHVlKSk7Ci0gICAgcmV0dXJuIDA7Ci19Ci0KLVN0eWxlU2hhZGVyKiBTdHls
ZVJlc29sdmVyOjpjYWNoZWRPclBlbmRpbmdTdHlsZVNoYWRlckZyb21WYWx1ZShXZWJLaXRDU1NT
aGFkZXJWYWx1ZSogdmFsdWUpCi17Ci0gICAgU3R5bGVTaGFkZXIqIHNoYWRlciA9IHZhbHVlLT5j
YWNoZWRPclBlbmRpbmdTaGFkZXIoKTsKLSAgICBpZiAoc2hhZGVyICYmIHNoYWRlci0+aXNQZW5k
aW5nU2hhZGVyKCkpCi0gICAgICAgIG1fc3RhdGUuc2V0SGFzUGVuZGluZ1NoYWRlcnModHJ1ZSk7
Ci0gICAgcmV0dXJuIHNoYWRlcjsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFt
PiBTdHlsZVJlc29sdmVyOjpsb29rdXBDdXN0b21GaWx0ZXJQcm9ncmFtKFdlYktpdENTU1NoYWRl
clZhbHVlKiB2ZXJ0ZXhTaGFkZXIsIFdlYktpdENTU1NoYWRlclZhbHVlKiBmcmFnbWVudFNoYWRl
ciwgCi0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3Rv
bUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyYgbWl4U2V0dGluZ3MsIEN1c3RvbUZpbHRlck1lc2hU
eXBlIG1lc2hUeXBlKQotewotICAgIENhY2hlZFJlc291cmNlTG9hZGVyKiBjYWNoZWRSZXNvdXJj
ZUxvYWRlciA9IG1fc3RhdGUuZG9jdW1lbnQoKS5jYWNoZWRSZXNvdXJjZUxvYWRlcigpOwotICAg
IFVSTCB2ZXJ0ZXhTaGFkZXJVUkwgPSB2ZXJ0ZXhTaGFkZXIgPyB2ZXJ0ZXhTaGFkZXItPmNvbXBs
ZXRlVVJMKGNhY2hlZFJlc291cmNlTG9hZGVyKSA6IFVSTCgpOwotICAgIFVSTCBmcmFnbWVudFNo
YWRlclVSTCA9IGZyYWdtZW50U2hhZGVyID8gZnJhZ21lbnRTaGFkZXItPmNvbXBsZXRlVVJMKGNh
Y2hlZFJlc291cmNlTG9hZGVyKSA6IFVSTCgpOwotICAgIFJlZlB0cjxTdHlsZUN1c3RvbUZpbHRl
clByb2dyYW0+IHByb2dyYW07Ci0gICAgaWYgKG1fY3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlKQot
ICAgICAgICBwcm9ncmFtID0gbV9jdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUtPmxvb2t1cChDdXN0
b21GaWx0ZXJQcm9ncmFtSW5mbyh2ZXJ0ZXhTaGFkZXJVUkwsIGZyYWdtZW50U2hhZGVyVVJMLCBw
cm9ncmFtVHlwZSwgbWl4U2V0dGluZ3MsIG1lc2hUeXBlKSk7Ci0gICAgaWYgKCFwcm9ncmFtKSB7
Ci0gICAgICAgIC8vIENyZWF0ZSBhIG5ldyBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0gdGhhdCB3
aWxsIGJlIHJlc29sdmVkIGR1cmluZyB0aGUgbG9hZFBlbmRpbmdTaGFkZXJzIGFuZCBhZGRlZCB0
byB0aGUgY2FjaGUuCi0gICAgICAgIHByb2dyYW0gPSBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW06
OmNyZWF0ZSh2ZXJ0ZXhTaGFkZXJVUkwsIHZlcnRleFNoYWRlciA/IHN0eWxlU2hhZGVyKHZlcnRl
eFNoYWRlcikgOiAwLCAKLSAgICAgICAgICAgIGZyYWdtZW50U2hhZGVyVVJMLCBmcmFnbWVudFNo
YWRlciA/IHN0eWxlU2hhZGVyKGZyYWdtZW50U2hhZGVyKSA6IDAsIHByb2dyYW1UeXBlLCBtaXhT
ZXR0aW5ncywgbWVzaFR5cGUpOwotICAgIH0KLSAgICByZXR1cm4gcHJvZ3JhbS5yZWxlYXNlKCk7
Ci19Ci0KLXZvaWQgU3R5bGVSZXNvbHZlcjo6bG9hZFBlbmRpbmdTaGFkZXJzKCkKLXsKLSAgICAv
LyBGSVhNRTogV2Ugc2hvdWxkbid0IGhhdmUgdG8gY2hlY2sgdGhhdCBzdHlsZSBpcyBub24tbnVs
bC4gVGhpcyBpcyBhIHNwZWN1bGF0aXZlIGZpeCBmb3I6Ci0gICAgLy8gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNzY2NQotICAgIGlmICghbV9zdGF0ZS5oYXNQZW5k
aW5nU2hhZGVycygpIHx8ICFtX3N0YXRlLnN0eWxlKCkgfHwgIW1fc3RhdGUuc3R5bGUoKS0+aGFz
RmlsdGVyKCkpCi0gICAgICAgIHJldHVybjsKLQotICAgIENhY2hlZFJlc291cmNlTG9hZGVyKiBj
YWNoZWRSZXNvdXJjZUxvYWRlciA9IG1fc3RhdGUuZG9jdW1lbnQoKS5jYWNoZWRSZXNvdXJjZUxv
YWRlcigpOwotCi0gICAgVmVjdG9yPFJlZlB0cjxGaWx0ZXJPcGVyYXRpb24+PiYgZmlsdGVyT3Bl
cmF0aW9ucyA9IG1fc3RhdGUuc3R5bGUoKS0+bXV0YWJsZUZpbHRlcigpLm9wZXJhdGlvbnMoKTsK
LSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgZmlsdGVyT3BlcmF0aW9ucy5zaXplKCk7ICsr
aSkgewotICAgICAgICBSZWZQdHI8RmlsdGVyT3BlcmF0aW9uPiBmaWx0ZXJPcGVyYXRpb24gPSBm
aWx0ZXJPcGVyYXRpb25zLmF0KGkpOwotICAgICAgICBpZiAoZmlsdGVyT3BlcmF0aW9uLT50eXBl
KCkgPT0gRmlsdGVyT3BlcmF0aW9uOjpDVVNUT00pIHsKLSAgICAgICAgICAgIEN1c3RvbUZpbHRl
ck9wZXJhdGlvbiogY3VzdG9tRmlsdGVyID0gc3RhdGljX2Nhc3Q8Q3VzdG9tRmlsdGVyT3BlcmF0
aW9uKj4oZmlsdGVyT3BlcmF0aW9uLmdldCgpKTsKLSAgICAgICAgICAgIEFTU0VSVChjdXN0b21G
aWx0ZXItPnByb2dyYW0oKSk7Ci0gICAgICAgICAgICBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0q
IHByb2dyYW0gPSBzdGF0aWNfY2FzdDxTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0qPihjdXN0b21G
aWx0ZXItPnByb2dyYW0oKSk7Ci0gICAgICAgICAgICAvLyBOb3RlIHRoYXQgdGhlIFN0eWxlUGVu
ZGluZ1NoYWRlcnMgY291bGQgYmUgYWxyZWFkeSByZXNvbHZlZCB0byBTdHlsZUNhY2hlZFNoYWRl
cnMuIFRoYXQncyBiZWNhdXNlIHRoZSBydWxlIHdhcyBtYXRjaGVkIGJlZm9yZS4KLSAgICAgICAg
ICAgIC8vIEhvd2V2ZXIsIHRoZSBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0gdGhhdCB3YXMgaW5p
dGlhbGx5IGNyZWF0ZWQgY291bGQgaGF2ZSBiZWVuIHJlbW92ZWQgZnJvbSB0aGUgY2FjaGUgaW4g
dGhlIG1lYW53aGlsZSwKLSAgICAgICAgICAgIC8vIG1lYW5pbmcgdGhhdCB3ZSBnZXQgYSBuZXcg
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtIGhlcmUgdGhhdCBpcyBub3QgeWV0IGluIHRoZSBjYWNo
ZSwgYnV0IGFscmVhZHkgaGFzIGxvYWRlZCBTdHlsZVNoYWRlcnMuCi0gICAgICAgICAgICBpZiAo
IXByb2dyYW0tPmhhc1BlbmRpbmdTaGFkZXJzKCkgJiYgcHJvZ3JhbS0+aW5DYWNoZSgpKQotICAg
ICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgaWYgKCFtX2N1c3RvbUZpbHRlclBy
b2dyYW1DYWNoZSkKLSAgICAgICAgICAgICAgICBtX2N1c3RvbUZpbHRlclByb2dyYW1DYWNoZSA9
IGFkb3B0UHRyKG5ldyBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZSgpKTsKLSAgICAgICAg
ICAgIFJlZlB0cjxTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0+IHN0eWxlUHJvZ3JhbSA9IG1fY3Vz
dG9tRmlsdGVyUHJvZ3JhbUNhY2hlLT5sb29rdXAocHJvZ3JhbSk7Ci0gICAgICAgICAgICBpZiAo
c3R5bGVQcm9ncmFtLmdldCgpKQotICAgICAgICAgICAgICAgIGN1c3RvbUZpbHRlci0+c2V0UHJv
Z3JhbShzdHlsZVByb2dyYW0ucmVsZWFzZSgpKTsKLSAgICAgICAgICAgIGVsc2UgewotICAgICAg
ICAgICAgICAgIGlmIChwcm9ncmFtLT52ZXJ0ZXhTaGFkZXIoKSAmJiBwcm9ncmFtLT52ZXJ0ZXhT
aGFkZXIoKS0+aXNQZW5kaW5nU2hhZGVyKCkpIHsKLSAgICAgICAgICAgICAgICAgICAgV2ViS2l0
Q1NTU2hhZGVyVmFsdWUqIHNoYWRlclZhbHVlID0gc3RhdGljX2Nhc3Q8U3R5bGVQZW5kaW5nU2hh
ZGVyKj4ocHJvZ3JhbS0+dmVydGV4U2hhZGVyKCkpLT5jc3NTaGFkZXJWYWx1ZSgpOwotICAgICAg
ICAgICAgICAgICAgICBwcm9ncmFtLT5zZXRWZXJ0ZXhTaGFkZXIoc2hhZGVyVmFsdWUtPmNhY2hl
ZFNoYWRlcihjYWNoZWRSZXNvdXJjZUxvYWRlcikpOwotICAgICAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgICAgICBpZiAocHJvZ3JhbS0+ZnJhZ21lbnRTaGFkZXIoKSAmJiBwcm9ncmFtLT5mcmFn
bWVudFNoYWRlcigpLT5pc1BlbmRpbmdTaGFkZXIoKSkgewotICAgICAgICAgICAgICAgICAgICBX
ZWJLaXRDU1NTaGFkZXJWYWx1ZSogc2hhZGVyVmFsdWUgPSBzdGF0aWNfY2FzdDxTdHlsZVBlbmRp
bmdTaGFkZXIqPihwcm9ncmFtLT5mcmFnbWVudFNoYWRlcigpKS0+Y3NzU2hhZGVyVmFsdWUoKTsK
LSAgICAgICAgICAgICAgICAgICAgcHJvZ3JhbS0+c2V0RnJhZ21lbnRTaGFkZXIoc2hhZGVyVmFs
dWUtPmNhY2hlZFNoYWRlcihjYWNoZWRSZXNvdXJjZUxvYWRlcikpOwotICAgICAgICAgICAgICAg
IH0KLSAgICAgICAgICAgICAgICBtX2N1c3RvbUZpbHRlclByb2dyYW1DYWNoZS0+YWRkKHByb2dy
YW0pOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfQotICAgIG1fc3RhdGUuc2V0SGFz
UGVuZGluZ1NoYWRlcnMoZmFsc2UpOwotfQotCi1zdGF0aWMgYm9vbCBzb3J0UGFyYW1ldGVyc0J5
TmFtZUNvbXBhcmF0b3IoY29uc3QgUmVmUHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4mIGEsIGNv
bnN0IFJlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+JiBiKQotewotICAgIHJldHVybiBjb2Rl
UG9pbnRDb21wYXJlTGVzc1RoYW4oYS0+bmFtZSgpLCBiLT5uYW1lKCkpOwotfQotCi1QYXNzUmVm
UHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gU3R5bGVSZXNvbHZlcjo6cGFyc2VDdXN0b21GaWx0
ZXJBcnJheVBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlzdCogdmFsdWVz
LCBib29sIGlzQXJyYXkpCi17Ci0gICAgUmVmUHRyPEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVy
PiBhcnJheVBhcmFtZXRlciA9IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyOjpjcmVhdGUobmFt
ZSwgaXNBcnJheSA/IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyOjpBUlJBWSA6IEN1c3RvbUZp
bHRlckFycmF5UGFyYW1ldGVyOjpNQVRSSVgpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDAsIGxl
bmd0aCA9IHZhbHVlcy0+bGVuZ3RoKCk7IGkgPCBsZW5ndGg7ICsraSkgewotICAgICAgICBDU1NW
YWx1ZSogdmFsdWUgPSB2YWx1ZXMtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soaSk7Ci0gICAgICAg
IGlmICghdmFsdWUtPmlzUHJpbWl0aXZlVmFsdWUoKSkKLSAgICAgICAgICAgIHJldHVybiAwOwot
ICAgICAgICBDU1NQcmltaXRpdmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2
ZVZhbHVlKHZhbHVlKTsKLSAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5wcmltaXRpdmVUeXBl
KCkgIT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpCi0gICAgICAgICAgICByZXR1cm4g
MDsKLSAgICAgICAgYXJyYXlQYXJhbWV0ZXItPmFkZFZhbHVlKHByaW1pdGl2ZVZhbHVlLT5nZXRE
b3VibGVWYWx1ZSgpKTsKLSAgICB9Ci0gICAgcmV0dXJuIGFycmF5UGFyYW1ldGVyLnJlbGVhc2Uo
KTsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IFN0eWxlUmVzb2x2ZXI6
OnBhcnNlQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIoY29uc3QgU3RyaW5nJiBuYW1lLCBDU1NW
YWx1ZUxpc3QqIHZhbHVlcykKLXsKLSAgICBBU1NFUlQodmFsdWVzLT5sZW5ndGgoKSk7Ci0gICAg
Q1NTUHJpbWl0aXZlVmFsdWUqIGZpcnN0UHJpbWl0aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2ZVZh
bHVlKHZhbHVlcy0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjaygwKSk7Ci0gICAgUmVmUHRyPEN1c3Rv
bUZpbHRlckNvbG9yUGFyYW1ldGVyPiBjb2xvclBhcmFtZXRlciA9IEN1c3RvbUZpbHRlckNvbG9y
UGFyYW1ldGVyOjpjcmVhdGUobmFtZSk7Ci0gICAgY29sb3JQYXJhbWV0ZXItPnNldENvbG9yKENv
bG9yKGZpcnN0UHJpbWl0aXZlVmFsdWUtPmdldFJHQkEzMlZhbHVlKCkpKTsKLSAgICByZXR1cm4g
Y29sb3JQYXJhbWV0ZXIucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlclBh
cmFtZXRlcj4gU3R5bGVSZXNvbHZlcjo6cGFyc2VDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIo
Y29uc3QgU3RyaW5nJiBuYW1lLCBDU1NWYWx1ZUxpc3QqIHZhbHVlcykKLXsKLSAgICBSZWZQdHI8
Q3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyPiBudW1iZXJQYXJhbWV0ZXIgPSBDdXN0b21GaWx0
ZXJOdW1iZXJQYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKTsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAw
OyBpIDwgdmFsdWVzLT5sZW5ndGgoKTsgKytpKSB7Ci0gICAgICAgIENTU1ZhbHVlKiB2YWx1ZSA9
IHZhbHVlcy0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjayhpKTsKLSAgICAgICAgaWYgKCF2YWx1ZS0+
aXNQcmltaXRpdmVWYWx1ZSgpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIENTU1By
aW1pdGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUodmFsdWUp
OwotICAgICAgICBpZiAocHJpbWl0aXZlVmFsdWUtPnByaW1pdGl2ZVR5cGUoKSAhPSBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikKLSAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBu
dW1iZXJQYXJhbWV0ZXItPmFkZFZhbHVlKHByaW1pdGl2ZVZhbHVlLT5nZXREb3VibGVWYWx1ZSgp
KTsKLSAgICB9Ci0gICAgcmV0dXJuIG51bWJlclBhcmFtZXRlci5yZWxlYXNlKCk7Ci19Ci0KLVBh
c3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBTdHlsZVJlc29sdmVyOjpwYXJzZUN1c3Rv
bUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlz
dCogdmFsdWVzKQotewotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXI+
IHRyYW5zZm9ybVBhcmFtZXRlciA9IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcjo6Y3Jl
YXRlKG5hbWUpOwotICAgIFRyYW5zZm9ybU9wZXJhdGlvbnMgb3BlcmF0aW9uczsKLSAgICB0cmFu
c2Zvcm1zRm9yVmFsdWUobV9zdGF0ZS5zdHlsZSgpLCBtX3N0YXRlLnJvb3RFbGVtZW50U3R5bGUo
KSwgdmFsdWVzLCBvcGVyYXRpb25zKTsKLSAgICB0cmFuc2Zvcm1QYXJhbWV0ZXItPnNldE9wZXJh
dGlvbnMob3BlcmF0aW9ucyk7Ci0gICAgcmV0dXJuIHRyYW5zZm9ybVBhcmFtZXRlci5yZWxlYXNl
KCk7Ci19Ci0KLVBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBTdHlsZVJlc29sdmVy
OjpwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVl
KiBwYXJhbWV0ZXJWYWx1ZSkKLXsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IG90aGVyIHBhcmFt
ZXRlcnMgdHlwZXMgcGFyc2luZy4KLSAgICAvLyB0ZXh0dXJlczogaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDQyCi0gICAgLy8gbWF0MiwgbWF0MywgbWF0NDogaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDQ0Ci0gICAgLy8gTnVtYmVy
IHBhcmFtZXRlcnMgYXJlIHdyYXBwZWQgaW5zaWRlIGEgQ1NTVmFsdWVMaXN0IGFuZCBhbGwKLSAg
ICAvLyB0aGUgb3RoZXIgZnVuY3Rpb25zIHZhbHVlcyBpbmhlcml0IGZyb20gQ1NTVmFsdWVMaXN0
LgotICAgIGlmICghcGFyYW1ldGVyVmFsdWUtPmlzVmFsdWVMaXN0KCkpCi0gICAgICAgIHJldHVy
biAwOwotCi0gICAgQ1NTVmFsdWVMaXN0KiB2YWx1ZXMgPSB0b0NTU1ZhbHVlTGlzdChwYXJhbWV0
ZXJWYWx1ZSk7Ci0gICAgaWYgKCF2YWx1ZXMtPmxlbmd0aCgpKQotICAgICAgICByZXR1cm4gMDsK
LQotICAgIGlmIChwYXJhbWV0ZXJWYWx1ZS0+aXNXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUo
KSkKLSAgICAgICAgcmV0dXJuIHBhcnNlQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIobmFtZSwg
dmFsdWVzLCB0cnVlKTsKLQotICAgIGlmIChwYXJhbWV0ZXJWYWx1ZS0+aXNXZWJLaXRDU1NNYXRG
dW5jdGlvblZhbHVlKCkpCi0gICAgICAgIHJldHVybiBwYXJzZUN1c3RvbUZpbHRlckFycmF5UGFy
YW1ldGVyKG5hbWUsIHZhbHVlcywgZmFsc2UpOwotCi0gICAgLy8gSWYgdGhlIGZpcnN0IHZhbHVl
IG9mIHRoZSBsaXN0IGlzIGEgdHJhbnNmb3JtIGZ1bmN0aW9uLAotICAgIC8vIHRoZW4gd2UgY291
bGQgc2FmZWx5IGFzc3VtZSB0aGF0IGFsbCB0aGUgcmVtYWluaW5nIGl0ZW1zCi0gICAgLy8gYXJl
IHRyYW5zZm9ybXMuIHBhcnNlQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyIHdpbGwKLSAg
ICAvLyByZXR1cm4gMCBpZiB0aGF0IGFzc3VtcHRpb24gaXMgaW5jb3JyZWN0LgotICAgIGlmICh2
YWx1ZXMtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMCktPmlzV2ViS2l0Q1NTVHJhbnNmb3JtVmFs
dWUoKSkKLSAgICAgICAgcmV0dXJuIHBhcnNlQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVy
KG5hbWUsIHZhbHVlcyk7Ci0KLSAgICAvLyBXZSBjYW4gb25seSBoYXZlIGFycmF5cyBvZiBjb2xv
cnMgb3IgbnVtYmVycywgc28gdXNlIHRoZSBmaXJzdCB2YWx1ZSB0byBjaG9vc2UgYmV0d2VlbiB0
aG9zZSB0d28uCi0gICAgLy8gV2UgbmVlZCB1cCB0byA0IHZhbHVlcyAoYWxsIGJvb2xlYW5zIG9y
IGFsbCBudW1iZXJzKS4KLSAgICBpZiAoIXZhbHVlcy0+aXRlbVdpdGhvdXRCb3VuZHNDaGVjaygw
KS0+aXNQcmltaXRpdmVWYWx1ZSgpIHx8IHZhbHVlcy0+bGVuZ3RoKCkgPiA0KQotICAgICAgICBy
ZXR1cm4gMDsKLSAgICAKLSAgICBDU1NQcmltaXRpdmVWYWx1ZSogZmlyc3RQcmltaXRpdmVWYWx1
ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUodmFsdWVzLT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDAp
KTsKLSAgICBpZiAoZmlyc3RQcmltaXRpdmVWYWx1ZS0+cHJpbWl0aXZlVHlwZSgpID09IENTU1By
aW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKQotICAgICAgICByZXR1cm4gcGFyc2VDdXN0b21GaWx0
ZXJOdW1iZXJQYXJhbWV0ZXIobmFtZSwgdmFsdWVzKTsKLQotICAgIGlmIChmaXJzdFByaW1pdGl2
ZVZhbHVlLT5wcmltaXRpdmVUeXBlKCkgPT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19SR0JDT0xP
UikKLSAgICAgICAgcmV0dXJuIHBhcnNlQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIobmFtZSwg
dmFsdWVzKTsKLQotICAgIHJldHVybiAwOwotfQotCi1ib29sIFN0eWxlUmVzb2x2ZXI6OnBhcnNl
Q3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdChDU1NWYWx1ZSogcGFyYW1ldGVyc1ZhbHVlLCBDdXN0
b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBwYXJhbWV0ZXJMaXN0KQotewotICAgIEhhc2hTZXQ8U3Ry
aW5nPiBrbm93blBhcmFtZXRlck5hbWVzOwotICAgIENTU1ZhbHVlTGlzdEl0ZXJhdG9yIHBhcmFt
ZXRlckl0ZXJhdG9yKHBhcmFtZXRlcnNWYWx1ZSk7Ci0gICAgZm9yICg7IHBhcmFtZXRlckl0ZXJh
dG9yLmhhc01vcmUoKTsgcGFyYW1ldGVySXRlcmF0b3IuYWR2YW5jZSgpKSB7Ci0gICAgICAgIGlm
ICghcGFyYW1ldGVySXRlcmF0b3IudmFsdWUoKS0+aXNWYWx1ZUxpc3QoKSkKLSAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKLSAgICAgICAgQ1NTVmFsdWVMaXN0SXRlcmF0b3IgaXRlcmF0b3IocGFy
YW1ldGVySXRlcmF0b3IudmFsdWUoKSk7Ci0gICAgICAgIGlmICghaXRlcmF0b3IuaXNQcmltaXRp
dmVWYWx1ZSgpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBDU1NQcmltaXRp
dmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2ZVZhbHVlKGl0ZXJhdG9yLnZh
bHVlKCkpOwotICAgICAgICBpZiAocHJpbWl0aXZlVmFsdWUtPnByaW1pdGl2ZVR5cGUoKSAhPSBD
U1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1NUUklORykKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsK
LSAgICAgICAgCi0gICAgICAgIFN0cmluZyBuYW1lID0gcHJpbWl0aXZlVmFsdWUtPmdldFN0cmlu
Z1ZhbHVlKCk7Ci0gICAgICAgIC8vIERvIG5vdCBhbGxvdyBkdXBsaWNhdGUgcGFyYW1ldGVyIG5h
bWVzLgotICAgICAgICBpZiAoa25vd25QYXJhbWV0ZXJOYW1lcy5jb250YWlucyhuYW1lKSkKLSAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAga25vd25QYXJhbWV0ZXJOYW1lcy5hZGQo
bmFtZSk7Ci0gICAgICAgIAotICAgICAgICBpdGVyYXRvci5hZHZhbmNlKCk7Ci0gICAgICAgIAot
ICAgICAgICBpZiAoIWl0ZXJhdG9yLmhhc01vcmUoKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICAgICAgCi0gICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IHBhcmFt
ZXRlciA9IHBhcnNlQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKG5hbWUsIGl0ZXJhdG9yLnZhbHVlKCkp
OwotICAgICAgICBpZiAoIXBhcmFtZXRlcikKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAg
ICAgICAgcGFyYW1ldGVyTGlzdC5hcHBlbmQocGFyYW1ldGVyLnJlbGVhc2UoKSk7Ci0gICAgfQot
ICAgIAotICAgIC8vIE1ha2Ugc3VyZSB3ZSBzb3J0IHRoZSBwYXJhbWV0ZXJzIGJlZm9yZSBwYXNz
aW5nIHRoZW0gZG93biB0byB0aGUgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLgotICAgIHN0ZDo6c29y
dChwYXJhbWV0ZXJMaXN0LmJlZ2luKCksIHBhcmFtZXRlckxpc3QuZW5kKCksIHNvcnRQYXJhbWV0
ZXJzQnlOYW1lQ29tcGFyYXRvcik7Ci0gICAgCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLVBhc3NS
ZWZQdHI8Q3VzdG9tRmlsdGVyT3BlcmF0aW9uPiBTdHlsZVJlc29sdmVyOjpjcmVhdGVDdXN0b21G
aWx0ZXJPcGVyYXRpb25XaXRoQXRSdWxlUmVmZXJlbmNlU3ludGF4KFdlYktpdENTU0ZpbHRlclZh
bHVlKiBmaWx0ZXJWYWx1ZSkKLXsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IHN0eWxlIHJlc29s
dXRpb24gZm9yIHRoZSBjdXN0b20gZmlsdGVyIGF0LXJ1bGUgcmVmZXJlbmNlIHN5bnRheC4KLSAg
ICBVTlVTRURfUEFSQU0oZmlsdGVyVmFsdWUpOwotICAgIHJldHVybiAwOwotfQotCi1QYXNzUmVm
UHRyPEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gU3R5bGVSZXNvbHZlcjo6Y3JlYXRlQ3VzdG9tRmls
dGVyT3BlcmF0aW9uV2l0aElubGluZVN5bnRheChXZWJLaXRDU1NGaWx0ZXJWYWx1ZSogZmlsdGVy
VmFsdWUpCi17Ci0gICAgQ1NTVmFsdWUqIHNoYWRlcnNWYWx1ZSA9IGZpbHRlclZhbHVlLT5pdGVt
V2l0aG91dEJvdW5kc0NoZWNrKDApOwotICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FU
SU9OKHNoYWRlcnNWYWx1ZS0+aXNWYWx1ZUxpc3QoKSk7Ci0gICAgQ1NTVmFsdWVMaXN0KiBzaGFk
ZXJzTGlzdCA9IHRvQ1NTVmFsdWVMaXN0KHNoYWRlcnNWYWx1ZSk7Ci0KLSAgICB1bnNpZ25lZCBz
aGFkZXJzTGlzdExlbmd0aCA9IHNoYWRlcnNMaXN0LT5sZW5ndGgoKTsKLSAgICBBU1NFUlQoc2hh
ZGVyc0xpc3RMZW5ndGgpOwotCi0KLSAgICBXZWJLaXRDU1NTaGFkZXJWYWx1ZSogdmVydGV4U2hh
ZGVyID0gMDsKLSAgICBXZWJLaXRDU1NTaGFkZXJWYWx1ZSogZnJhZ21lbnRTaGFkZXIgPSAwOwot
Ci0gICAgaWYgKHNoYWRlcnNMaXN0LT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDApLT5pc1dlYktp
dENTU1NoYWRlclZhbHVlKCkpCi0gICAgICAgIHZlcnRleFNoYWRlciA9IHRvV2ViS2l0Q1NTU2hh
ZGVyVmFsdWUoc2hhZGVyc0xpc3QtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soMCkpOwotCi0gICAg
Q3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUgPSBQUk9HUkFNX1RZUEVfQkxFTkRT
X0VMRU1FTlRfVEVYVFVSRTsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MgbWl4
U2V0dGluZ3M7Ci0KLSAgICBpZiAoc2hhZGVyc0xpc3RMZW5ndGggPiAxKSB7Ci0gICAgICAgIENT
U1ZhbHVlKiBmcmFnbWVudFNoYWRlck9yTWl4RnVuY3Rpb24gPSBzaGFkZXJzTGlzdC0+aXRlbVdp
dGhvdXRCb3VuZHNDaGVjaygxKTsKLSAgICAgICAgaWYgKGZyYWdtZW50U2hhZGVyT3JNaXhGdW5j
dGlvbi0+aXNXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKCkpIHsKLSAgICAgICAgICAgIFdlYktp
dENTU01peEZ1bmN0aW9uVmFsdWUqIG1peEZ1bmN0aW9uID0gdG9XZWJLaXRDU1NNaXhGdW5jdGlv
blZhbHVlKGZyYWdtZW50U2hhZGVyT3JNaXhGdW5jdGlvbik7Ci0gICAgICAgICAgICBDU1NWYWx1
ZUxpc3RJdGVyYXRvciBpdGVyYXRvcihtaXhGdW5jdGlvbik7Ci0KLSAgICAgICAgICAgIEFTU0VS
VChtaXhGdW5jdGlvbi0+bGVuZ3RoKCkpOwotICAgICAgICAgICAgaWYgKGl0ZXJhdG9yLnZhbHVl
KCktPmlzV2ViS2l0Q1NTU2hhZGVyVmFsdWUoKSkKLSAgICAgICAgICAgICAgICBmcmFnbWVudFNo
YWRlciA9IHRvV2ViS2l0Q1NTU2hhZGVyVmFsdWUoaXRlcmF0b3IudmFsdWUoKSk7Ci0KLSAgICAg
ICAgICAgIGl0ZXJhdG9yLmFkdmFuY2UoKTsKLQotICAgICAgICAgICAgQVNTRVJUKG1peEZ1bmN0
aW9uLT5sZW5ndGgoKSA8PSAzKTsKLSAgICAgICAgICAgIHdoaWxlIChpdGVyYXRvci5oYXNNb3Jl
KCkpIHsKLSAgICAgICAgICAgICAgICBDU1NQcmltaXRpdmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUg
PSB0b0NTU1ByaW1pdGl2ZVZhbHVlKGl0ZXJhdG9yLnZhbHVlKCkpOwotICAgICAgICAgICAgICAg
IGlmIChDU1NQYXJzZXI6OmlzQmxlbmRNb2RlKHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkp
KQotICAgICAgICAgICAgICAgICAgICBtaXhTZXR0aW5ncy5ibGVuZE1vZGUgPSAqcHJpbWl0aXZl
VmFsdWU7Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAoQ1NTUGFyc2VyOjppc0NvbXBvc2l0ZU9w
ZXJhdG9yKHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkpKQotICAgICAgICAgICAgICAgICAg
ICBtaXhTZXR0aW5ncy5jb21wb3NpdGVPcGVyYXRvciA9ICpwcmltaXRpdmVWYWx1ZTsKLSAgICAg
ICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OwotICAgICAgICAgICAgICAgIGl0ZXJhdG9yLmFkdmFuY2UoKTsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHByb2dyYW1UeXBlID0gUFJPR1JBTV9UWVBFX05P
X0VMRU1FTlRfVEVYVFVSRTsKLSAgICAgICAgICAgIGlmIChmcmFnbWVudFNoYWRlck9yTWl4RnVu
Y3Rpb24tPmlzV2ViS2l0Q1NTU2hhZGVyVmFsdWUoKSkKLSAgICAgICAgICAgICAgICBmcmFnbWVu
dFNoYWRlciA9IHRvV2ViS2l0Q1NTU2hhZGVyVmFsdWUoZnJhZ21lbnRTaGFkZXJPck1peEZ1bmN0
aW9uKTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmICghdmVydGV4U2hhZGVyICYmICFmcmFn
bWVudFNoYWRlcikKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICB1bnNpZ25lZCBtZXNoUm93cyA9
IDE7Ci0gICAgdW5zaWduZWQgbWVzaENvbHVtbnMgPSAxOwotICAgIEN1c3RvbUZpbHRlck1lc2hU
eXBlIG1lc2hUeXBlID0gTWVzaFR5cGVBdHRhY2hlZDsKLSAgICAKLSAgICBDU1NWYWx1ZSogcGFy
YW1ldGVyc1ZhbHVlID0gMDsKLSAgICAKLSAgICBpZiAoZmlsdGVyVmFsdWUtPmxlbmd0aCgpID4g
MSkgewotICAgICAgICBDU1NWYWx1ZUxpc3RJdGVyYXRvciBpdGVyYXRvcihmaWx0ZXJWYWx1ZS0+
aXRlbVdpdGhvdXRCb3VuZHNDaGVjaygxKSk7Ci0gICAgICAgIAotICAgICAgICAvLyBUaGUgc2Vj
b25kIHZhbHVlIG1pZ2h0IGJlIHRoZSBtZXNoIGJveCBvciB0aGUgbGlzdCBvZiBwYXJhbWV0ZXJz
OgotICAgICAgICAvLyBJZiBpdCBzdGFydHMgd2l0aCBhIG51bWJlciBvciBhbnkgb2YgdGhlIG1l
c2gtYm94IGlkZW50aWZpZXJzIGl0IGlzIAotICAgICAgICAvLyB0aGUgbWVzaC1ib3ggbGlzdCwg
aWYgbm90IGl0IG1lYW5zIGl0IGlzIHRoZSBwYXJhbWV0ZXJzIGxpc3QuCi0KLSAgICAgICAgaWYg
KGl0ZXJhdG9yLmhhc01vcmUoKSAmJiBpdGVyYXRvci5pc1ByaW1pdGl2ZVZhbHVlKCkpIHsKLSAg
ICAgICAgICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0
aXZlVmFsdWUoaXRlcmF0b3IudmFsdWUoKSk7Ci0gICAgICAgICAgICBpZiAocHJpbWl0aXZlVmFs
dWUtPmlzTnVtYmVyKCkpIHsKLSAgICAgICAgICAgICAgICAvLyBJZiBvbmx5IG9uZSBpbnRlZ2Vy
IHZhbHVlIGlzIHNwZWNpZmllZCwgaXQgd2lsbCBzZXQgYm90aAotICAgICAgICAgICAgICAgIC8v
IHRoZSByb3dzIGFuZCB0aGUgY29sdW1ucy4KLSAgICAgICAgICAgICAgICBtZXNoQ29sdW1ucyA9
IG1lc2hSb3dzID0gcHJpbWl0aXZlVmFsdWUtPmdldEludFZhbHVlKCk7Ci0gICAgICAgICAgICAg
ICAgaXRlcmF0b3IuYWR2YW5jZSgpOwotICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAg
IC8vIFRyeSB0byBtYXRjaCBhbm90aGVyIG51bWJlciBmb3IgdGhlIHJvd3MuCi0gICAgICAgICAg
ICAgICAgaWYgKGl0ZXJhdG9yLmhhc01vcmUoKSAmJiBpdGVyYXRvci5pc1ByaW1pdGl2ZVZhbHVl
KCkpIHsKLSAgICAgICAgICAgICAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1pdGl2ZVZh
bHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZShpdGVyYXRvci52YWx1ZSgpKTsKLSAgICAgICAgICAg
ICAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5pc051bWJlcigpKSB7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICBtZXNoUm93cyA9IHByaW1pdGl2ZVZhbHVlLT5nZXRJbnRWYWx1ZSgpOwotICAg
ICAgICAgICAgICAgICAgICAgICAgaXRlcmF0b3IuYWR2YW5jZSgpOwotICAgICAgICAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAg
ICAgIAotICAgICAgICBpZiAoaXRlcmF0b3IuaGFzTW9yZSgpICYmIGl0ZXJhdG9yLmlzUHJpbWl0
aXZlVmFsdWUoKSkgewotICAgICAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1pdGl2ZVZh
bHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZShpdGVyYXRvci52YWx1ZSgpKTsKLSAgICAgICAgICAg
IGlmIChwcmltaXRpdmVWYWx1ZS0+Z2V0VmFsdWVJRCgpID09IENTU1ZhbHVlRGV0YWNoZWQpIHsK
LSAgICAgICAgICAgICAgICBtZXNoVHlwZSA9IE1lc2hUeXBlRGV0YWNoZWQ7Ci0gICAgICAgICAg
ICAgICAgaXRlcmF0b3IuYWR2YW5jZSgpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAg
ICAgIAotICAgICAgICBpZiAoIWl0ZXJhdG9yLmluZGV4KCkpIHsKLSAgICAgICAgICAgIC8vIElm
IG5vIHZhbHVlIHdhcyBjb25zdW1lZCBmcm9tIHRoZSBtZXNoIHZhbHVlLCB0aGVuIGl0IGlzIGp1
c3QgYSBwYXJhbWV0ZXIgbGlzdCwgbWVhbmluZyB0aGF0IHdlIGVuZCB1cAotICAgICAgICAgICAg
Ly8gaGF2aW5nIGp1c3QgdHdvIENTU0xpc3RWYWx1ZXM6IGxpc3Qgb2Ygc2hhZGVycyBhbmQgbGlz
dCBvZiBwYXJhbWV0ZXJzLgotICAgICAgICAgICAgQVNTRVJUKGZpbHRlclZhbHVlLT5sZW5ndGgo
KSA9PSAyKTsKLSAgICAgICAgICAgIHBhcmFtZXRlcnNWYWx1ZSA9IGZpbHRlclZhbHVlLT5pdGVt
V2l0aG91dEJvdW5kc0NoZWNrKDEpOwotICAgICAgICB9Ci0gICAgfQotICAgIAotICAgIGlmIChm
aWx0ZXJWYWx1ZS0+bGVuZ3RoKCkgPiAyICYmICFwYXJhbWV0ZXJzVmFsdWUpCi0gICAgICAgIHBh
cmFtZXRlcnNWYWx1ZSA9IGZpbHRlclZhbHVlLT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDIpOwot
ICAgIAotICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QgcGFyYW1ldGVyTGlzdDsKLSAgICBp
ZiAocGFyYW1ldGVyc1ZhbHVlICYmICFwYXJzZUN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QocGFy
YW1ldGVyc1ZhbHVlLCBwYXJhbWV0ZXJMaXN0KSkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBS
ZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3JhbSA9IGxvb2t1cEN1c3RvbUZpbHRlclBy
b2dyYW0odmVydGV4U2hhZGVyLCBmcmFnbWVudFNoYWRlciwgcHJvZ3JhbVR5cGUsIG1peFNldHRp
bmdzLCBtZXNoVHlwZSk7Ci0gICAgcmV0dXJuIEN1c3RvbUZpbHRlck9wZXJhdGlvbjo6Y3JlYXRl
KHByb2dyYW0ucmVsZWFzZSgpLCBwYXJhbWV0ZXJMaXN0LCBtZXNoUm93cywgbWVzaENvbHVtbnMp
OwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlck9wZXJhdGlvbj4gU3R5bGVSZXNvbHZlcjo6
Y3JlYXRlQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKFdlYktpdENTU0ZpbHRlclZhbHVlKiBmaWx0ZXJW
YWx1ZSkKLXsKLSAgICBBU1NFUlQoZmlsdGVyVmFsdWUtPmxlbmd0aCgpKTsKLSAgICBib29sIGlz
QXRSdWxlUmVmZXJlbmNlU3ludGF4ID0gZmlsdGVyVmFsdWUtPml0ZW1XaXRob3V0Qm91bmRzQ2hl
Y2soMCktPmlzUHJpbWl0aXZlVmFsdWUoKTsKLSAgICByZXR1cm4gaXNBdFJ1bGVSZWZlcmVuY2VT
eW50YXggPyBjcmVhdGVDdXN0b21GaWx0ZXJPcGVyYXRpb25XaXRoQXRSdWxlUmVmZXJlbmNlU3lu
dGF4KGZpbHRlclZhbHVlKSA6IGNyZWF0ZUN1c3RvbUZpbHRlck9wZXJhdGlvbldpdGhJbmxpbmVT
eW50YXgoZmlsdGVyVmFsdWUpOwotfQotCi0jZW5kaWYKLQogYm9vbCBTdHlsZVJlc29sdmVyOjpj
cmVhdGVGaWx0ZXJPcGVyYXRpb25zKENTU1ZhbHVlKiBpblZhbHVlLCBGaWx0ZXJPcGVyYXRpb25z
JiBvdXRPcGVyYXRpb25zKQogewogICAgIFN0YXRlJiBzdGF0ZSA9IG1fc3RhdGU7CkBAIC0zNzg4
LDIxICszNDI1LDYgQEAgYm9vbCBTdHlsZVJlc29sdmVyOjpjcmVhdGVGaWx0ZXJPcGVyYXRpb25z
KENTU1ZhbHVlKiBpblZhbHVlLCBGaWx0ZXJPcGVyYXRpb25zJgogICAgICAgICBXZWJLaXRDU1NG
aWx0ZXJWYWx1ZSogZmlsdGVyVmFsdWUgPSB0b1dlYktpdENTU0ZpbHRlclZhbHVlKGkudmFsdWUo
KSk7CiAgICAgICAgIEZpbHRlck9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSBvcGVyYXRpb25UeXBl
ID0gZmlsdGVyT3BlcmF0aW9uRm9yVHlwZShmaWx0ZXJWYWx1ZS0+b3BlcmF0aW9uVHlwZSgpKTsK
IAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgaWYgKG9wZXJhdGlvblR5cGUgPT0g
RmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NKSB7Ci0gICAgICAgICAgICAvLyBWYWxp
ZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24gaXMgbm90IHN1cHBvc2VkIHRvIGVuZCB1cCBpbiB0
aGUgUmVuZGVyU3R5bGUuCi0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAg
ICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9Ci0gICAgICAgIGlmIChvcGVyYXRpb25UeXBlID09
IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NKSB7Ci0gICAgICAgICAgICBSZWZQdHI8Q3VzdG9tRmls
dGVyT3BlcmF0aW9uPiBvcGVyYXRpb24gPSBjcmVhdGVDdXN0b21GaWx0ZXJPcGVyYXRpb24oZmls
dGVyVmFsdWUpOwotICAgICAgICAgICAgaWYgKCFvcGVyYXRpb24pCi0gICAgICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgCi0gICAgICAgICAgICBvcGVyYXRpb25zLm9wZXJh
dGlvbnMoKS5hcHBlbmQob3BlcmF0aW9uKTsKLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAg
ICB9Ci0jZW5kaWYKICAgICAgICAgaWYgKG9wZXJhdGlvblR5cGUgPT0gRmlsdGVyT3BlcmF0aW9u
OjpSRUZFUkVOQ0UpIHsKICNpZiBFTkFCTEUoU1ZHKQogICAgICAgICAgICAgaWYgKGZpbHRlclZh
bHVlLT5sZW5ndGgoKSAhPSAxKQpAQCAtNDA4NCwxMSArMzcwNiw2IEBAIHZvaWQgU3R5bGVSZXNv
bHZlcjo6bG9hZFBlbmRpbmdSZXNvdXJjZXMoKQogICAgIC8vIFN0YXJ0IGxvYWRpbmcgaW1hZ2Vz
IHJlZmVyZW5jZWQgYnkgdGhpcyBzdHlsZS4KICAgICBsb2FkUGVuZGluZ0ltYWdlcygpOwogCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIC8vIFN0YXJ0IGxvYWRpbmcgdGhlIHNoYWRlcnMg
cmVmZXJlbmNlZCBieSB0aGlzIHN0eWxlLgotICAgIGxvYWRQZW5kaW5nU2hhZGVycygpOwotI2Vu
ZGlmCi0gICAgCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKSAmJiBFTkFCTEUoU1ZHKQogICAgIC8v
IFN0YXJ0IGxvYWRpbmcgdGhlIFNWRyBEb2N1bWVudHMgcmVmZXJlbmNlZCBieSB0aGlzIHN0eWxl
LgogICAgIGxvYWRQZW5kaW5nU1ZHRG9jdW1lbnRzKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVSZXNvbHZlci5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2
ZXIuaAppbmRleCBjYTU4NWZkLi5iMDVjYTc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU3R5bGVSZXNvbHZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVy
LmgKQEAgLTM4LDkgKzM4LDYgQEAKICNpbmNsdWRlICJTdHlsZUluaGVyaXRlZERhdGEuaCIKICNp
bmNsdWRlICJTdHlsZVNjb3BlUmVzb2x2ZXIuaCIKICNpbmNsdWRlICJWaWV3cG9ydFN0eWxlUmVz
b2x2ZXIuaCIKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVy
Q29uc3RhbnRzLmgiCi0jZW5kaWYKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUg
PHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgpAQCAtNjQsMTEgKzYxLDYg
QEAgY2xhc3MgQ1NTU2VsZWN0b3I7CiBjbGFzcyBDU1NTdHlsZVNoZWV0OwogY2xhc3MgQ1NTVmFs
dWU7CiBjbGFzcyBDb250YWluZXJOb2RlOwotY2xhc3MgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOwot
Y2xhc3MgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOwotY2xhc3MgQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
TGlzdDsKLWNsYXNzIEN1c3RvbUZpbHRlclByb2dyYW07Ci1zdHJ1Y3QgQ3VzdG9tRmlsdGVyUHJv
Z3JhbU1peFNldHRpbmdzOwogY2xhc3MgRG9jdW1lbnQ7CiBjbGFzcyBEZXByZWNhdGVkU3R5bGVC
dWlsZGVyOwogY2xhc3MgRWxlbWVudDsKQEAgLTg0LDcgKzc2LDYgQEAgY2xhc3MgUmVuZGVyU2Ny
b2xsYmFyOwogY2xhc3MgUnVsZURhdGE7CiBjbGFzcyBSdWxlU2V0OwogY2xhc3MgU2V0dGluZ3M7
Ci1jbGFzcyBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZTsKIGNsYXNzIFN0eWxlU2NvcGVS
ZXNvbHZlcjsKIGNsYXNzIFN0eWxlSW1hZ2U7CiBjbGFzcyBTdHlsZUtleWZyYW1lOwpAQCAtOTcs
MTMgKzg4LDExIEBAIGNsYXNzIFN0eWxlUnVsZUhvc3Q7CiBjbGFzcyBTdHlsZVJ1bGVLZXlmcmFt
ZXM7CiBjbGFzcyBTdHlsZVJ1bGVQYWdlOwogY2xhc3MgU3R5bGVSdWxlUmVnaW9uOwotY2xhc3Mg
U3R5bGVTaGFkZXI7CiBjbGFzcyBTdHlsZVNoZWV0OwogY2xhc3MgU3R5bGVTaGVldExpc3Q7CiBj
bGFzcyBTdHlsZWRFbGVtZW50OwogY2xhc3MgVmlld3BvcnRTdHlsZVJlc29sdmVyOwogY2xhc3Mg
V2ViS2l0Q1NTRmlsdGVyVmFsdWU7Ci1jbGFzcyBXZWJLaXRDU1NTaGFkZXJWYWx1ZTsKIAogY2xh
c3MgTWVkaWFRdWVyeVJlc3VsdCB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoTWVkaWFRdWVy
eVJlc3VsdCk7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwpAQCAtMjY0LDIyICsyNTMsNiBAQCBw
dWJsaWM6CiAKICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAgICAgYm9vbCBjcmVhdGVGaWx0ZXJP
cGVyYXRpb25zKENTU1ZhbHVlKiBpblZhbHVlLCBGaWx0ZXJPcGVyYXRpb25zJiBvdXRPcGVyYXRp
b25zKTsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgU3R5bGVTaGFkZXIqIHN0eWxlU2hh
ZGVyKENTU1ZhbHVlKik7Ci0gICAgU3R5bGVTaGFkZXIqIGNhY2hlZE9yUGVuZGluZ1N0eWxlU2hh
ZGVyRnJvbVZhbHVlKFdlYktpdENTU1NoYWRlclZhbHVlKik7Ci0gICAgYm9vbCBwYXJzZUN1c3Rv
bUZpbHRlclBhcmFtZXRlckxpc3QoQ1NTVmFsdWUqLCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0
Jik7Ci0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IHBhcnNlQ3VzdG9tRmls
dGVyUGFyYW1ldGVyKGNvbnN0IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWUqKTsKLSAgICBQYXNzUmVm
UHRyPEN1c3RvbUZpbHRlclBhcmFtZXRlcj4gcGFyc2VDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
cihjb25zdCBTdHJpbmcmIG5hbWUsIENTU1ZhbHVlTGlzdCopOwotICAgIFBhc3NSZWZQdHI8Q3Vz
dG9tRmlsdGVyUGFyYW1ldGVyPiBwYXJzZUN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKGNvbnN0
IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWVMaXN0KiwgYm9vbCk7Ci0gICAgUGFzc1JlZlB0cjxDdXN0
b21GaWx0ZXJQYXJhbWV0ZXI+IHBhcnNlQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKGNvbnN0
IFN0cmluZyYgbmFtZSwgQ1NTVmFsdWVMaXN0Kik7Ci0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0
ZXJQYXJhbWV0ZXI+IHBhcnNlQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKGNvbnN0IFN0
cmluZyYgbmFtZSwgQ1NTVmFsdWVMaXN0Kik7Ci0gICAgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJP
cGVyYXRpb24+IGNyZWF0ZUN1c3RvbUZpbHRlck9wZXJhdGlvbldpdGhBdFJ1bGVSZWZlcmVuY2VT
eW50YXgoV2ViS2l0Q1NTRmlsdGVyVmFsdWUqKTsKLSAgICBQYXNzUmVmUHRyPEN1c3RvbUZpbHRl
ck9wZXJhdGlvbj4gY3JlYXRlQ3VzdG9tRmlsdGVyT3BlcmF0aW9uV2l0aElubGluZVN5bnRheChX
ZWJLaXRDU1NGaWx0ZXJWYWx1ZSopOwotICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyT3BlcmF0
aW9uPiBjcmVhdGVDdXN0b21GaWx0ZXJPcGVyYXRpb24oV2ViS2l0Q1NTRmlsdGVyVmFsdWUqKTsK
LSAgICB2b2lkIGxvYWRQZW5kaW5nU2hhZGVycygpOwotICAgIFBhc3NSZWZQdHI8Q3VzdG9tRmls
dGVyUHJvZ3JhbT4gbG9va3VwQ3VzdG9tRmlsdGVyUHJvZ3JhbShXZWJLaXRDU1NTaGFkZXJWYWx1
ZSogdmVydGV4U2hhZGVyLCBXZWJLaXRDU1NTaGFkZXJWYWx1ZSogZnJhZ21lbnRTaGFkZXIsIAot
ICAgICAgICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3Jh
bU1peFNldHRpbmdzJiwgQ3VzdG9tRmlsdGVyTWVzaFR5cGUpOwotI2VuZGlmCiAjaWYgRU5BQkxF
KFNWRykKICAgICB2b2lkIGxvYWRQZW5kaW5nU1ZHRG9jdW1lbnRzKCk7CiAjZW5kaWYKQEAgLTM5
Miw5ICszNjUsNiBAQCBwdWJsaWM6CiAgICAgICAgICwgbV9lbGVtZW50QWZmZWN0ZWRCeUNsYXNz
UnVsZXMoZmFsc2UpCiAgICAgICAgICwgbV9hcHBseVByb3BlcnR5VG9SZWd1bGFyU3R5bGUodHJ1
ZSkKICAgICAgICAgLCBtX2FwcGx5UHJvcGVydHlUb1Zpc2l0ZWRMaW5rU3R5bGUoZmFsc2UpCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICAsIG1faGFzUGVuZGluZ1NoYWRlcnMoZmFs
c2UpCi0jZW5kaWYKICAgICAgICAgLCBtX2xpbmVIZWlnaHRWYWx1ZSgwKQogICAgICAgICAsIG1f
Zm9udERpcnR5KGZhbHNlKQogICAgICAgICAsIG1faGFzVUFBcHBlYXJhbmNlKGZhbHNlKQpAQCAt
NDMwLDEwICs0MDAsNiBAQCBwdWJsaWM6CiAjaWYgRU5BQkxFKENTU19GSUxURVJTKSAmJiBFTkFC
TEUoU1ZHKQogICAgICAgICBQZW5kaW5nU1ZHRG9jdW1lbnRTZXQmIHBlbmRpbmdTVkdEb2N1bWVu
dHMoKSB7IHJldHVybiBtX3BlbmRpbmdTVkdEb2N1bWVudHM7IH0KICNlbmRpZgotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICAgICAgdm9pZCBzZXRIYXNQZW5kaW5nU2hhZGVycyhib29sIGhh
c1BlbmRpbmdTaGFkZXJzKSB7IG1faGFzUGVuZGluZ1NoYWRlcnMgPSBoYXNQZW5kaW5nU2hhZGVy
czsgfQotICAgICAgICBib29sIGhhc1BlbmRpbmdTaGFkZXJzKCkgY29uc3QgeyByZXR1cm4gbV9o
YXNQZW5kaW5nU2hhZGVyczsgfQotI2VuZGlmCiAKICAgICAgICAgdm9pZCBzZXRMaW5lSGVpZ2h0
VmFsdWUoQ1NTVmFsdWUqIHZhbHVlKSB7IG1fbGluZUhlaWdodFZhbHVlID0gdmFsdWU7IH0KICAg
ICAgICAgQ1NTVmFsdWUqIGxpbmVIZWlnaHRWYWx1ZSgpIHsgcmV0dXJuIG1fbGluZUhlaWdodFZh
bHVlOyB9CkBAIC00NzgsOSArNDQ0LDYgQEAgcHVibGljOgogICAgICAgICBib29sIG1fYXBwbHlQ
cm9wZXJ0eVRvVmlzaXRlZExpbmtTdHlsZTsKIAogICAgICAgICBQZW5kaW5nSW1hZ2VQcm9wZXJ0
eU1hcCBtX3BlbmRpbmdJbWFnZVByb3BlcnRpZXM7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQot
ICAgICAgICBib29sIG1faGFzUGVuZGluZ1NoYWRlcnM7Ci0jZW5kaWYKICNpZiBFTkFCTEUoQ1NT
X0ZJTFRFUlMpICYmIEVOQUJMRShTVkcpCiAgICAgICAgIFBlbmRpbmdTVkdEb2N1bWVudFNldCBt
X3BlbmRpbmdTVkdEb2N1bWVudHM7CiAjZW5kaWYKQEAgLTU5MCwxMCArNTUzLDYgQEAgcHJpdmF0
ZToKIAogICAgIFN0YXRlIG1fc3RhdGU7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAg
T3duUHRyPFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlPiBtX2N1c3RvbUZpbHRlclByb2dy
YW1DYWNoZTsKLSNlbmRpZgotCiAgICAgZnJpZW5kIGNsYXNzIERlcHJlY2F0ZWRTdHlsZUJ1aWxk
ZXI7CiAgICAgZnJpZW5kIGJvb2wgb3BlcmF0b3I9PShjb25zdCBNYXRjaGVkUHJvcGVydGllcyYs
IGNvbnN0IE1hdGNoZWRQcm9wZXJ0aWVzJik7CiAgICAgZnJpZW5kIGJvb2wgb3BlcmF0b3IhPShj
b25zdCBNYXRjaGVkUHJvcGVydGllcyYsIGNvbnN0IE1hdGNoZWRQcm9wZXJ0aWVzJik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9TdHlsZVJ1bGUuY3BwCmluZGV4IDhiM2VmMDIuLmNlMTFhNjEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJ1bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZVJ1bGUuY3BwCkBAIC0zMyw3ICszMyw2IEBACiAjaW5jbHVkZSAiQ1NTVW5rbm93blJ1bGUu
aCIKICNpbmNsdWRlICJTdHlsZVByb3BlcnRpZXMuaCIKICNpbmNsdWRlICJTdHlsZVJ1bGVJbXBv
cnQuaCIKLSNpbmNsdWRlICJXZWJLaXRDU1NGaWx0ZXJSdWxlLmgiCiAjaW5jbHVkZSAiV2ViS2l0
Q1NTS2V5ZnJhbWVSdWxlLmgiCiAjaW5jbHVkZSAiV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5oIgog
I2luY2x1ZGUgIldlYktpdENTU1JlZ2lvblJ1bGUuaCIKQEAgLTk4LDExICs5Nyw2IEBAIHZvaWQg
U3R5bGVSdWxlQmFzZTo6ZGVzdHJveSgpCiAgICAgICAgIGRlbGV0ZSBzdGF0aWNfY2FzdDxTdHls
ZVJ1bGVWaWV3cG9ydCo+KHRoaXMpOwogICAgICAgICByZXR1cm47CiAjZW5kaWYKLSNpZiBFTkFC
TEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBGaWx0ZXI6Ci0gICAgICAgIGRlbGV0ZSBzdGF0aWNf
Y2FzdDxTdHlsZVJ1bGVGaWx0ZXIqPih0aGlzKTsKLSAgICAgICAgcmV0dXJuOwotI2VuZGlmCiAg
ICAgY2FzZSBVbmtub3duOgogICAgIGNhc2UgQ2hhcnNldDoKICAgICBjYXNlIEtleWZyYW1lOgpA
QCAtMTQ0LDEwICsxMzgsNiBAQCBQYXNzUmVmPFN0eWxlUnVsZUJhc2U+IFN0eWxlUnVsZUJhc2U6
OmNvcHkoKSBjb25zdAogICAgIGNhc2UgVmlld3BvcnQ6CiAgICAgICAgIHJldHVybiBzdGF0aWNf
Y2FzdDxjb25zdCBTdHlsZVJ1bGVWaWV3cG9ydCo+KHRoaXMpLT5jb3B5KCk7CiAjZW5kaWYKLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBGaWx0ZXI6Ci0gICAgICAgIHJldHVybiBz
dGF0aWNfY2FzdDxjb25zdCBTdHlsZVJ1bGVGaWx0ZXIqPih0aGlzKS0+Y29weSgpOwotI2VuZGlm
CiAgICAgY2FzZSBJbXBvcnQ6CiAgICAgICAgIC8vIEZJWE1FOiBDb3B5IGltcG9ydCBydWxlcy4K
ICAgICAgICAgYnJlYWs7CkBAIC0yMDcsMTEgKzE5Nyw2IEBAIFBhc3NSZWZQdHI8Q1NTUnVsZT4g
U3R5bGVSdWxlQmFzZTo6Y3JlYXRlQ1NTT01XcmFwcGVyKENTU1N0eWxlU2hlZXQqIHBhcmVudFNo
ZWV0CiAgICAgICAgIHJ1bGUgPSBDU1NIb3N0UnVsZTo6Y3JlYXRlKHN0YXRpY19jYXN0PFN0eWxl
UnVsZUhvc3QqPihzZWxmKSwgcGFyZW50U2hlZXQpOwogICAgICAgICBicmVhazsKICNlbmRpZgot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIEZpbHRlcjoKLSAgICAgICAgcnVsZSA9
IFdlYktpdENTU0ZpbHRlclJ1bGU6OmNyZWF0ZShzdGF0aWNfY2FzdDxTdHlsZVJ1bGVGaWx0ZXIq
PihzZWxmKSwgcGFyZW50U2hlZXQpOwotICAgICAgICBicmVhazsKLSNlbmRpZgogICAgIGNhc2Ug
VW5rbm93bjoKICAgICBjYXNlIENoYXJzZXQ6CiAgICAgY2FzZSBLZXlmcmFtZToKQEAgLTQzMiwz
MiArNDE3LDQgQEAgTXV0YWJsZVN0eWxlUHJvcGVydGllcyYgU3R5bGVSdWxlVmlld3BvcnQ6Om11
dGFibGVQcm9wZXJ0aWVzKCkKIH0KICNlbmRpZiAvLyBFTkFCTEUoQ1NTX0RFVklDRV9BREFQVEFU
SU9OKQogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotU3R5bGVSdWxlRmlsdGVyOjpTdHlsZVJ1
bGVGaWx0ZXIoY29uc3QgU3RyaW5nJiBmaWx0ZXJOYW1lLCBQYXNzUmVmPFN0eWxlUHJvcGVydGll
cz4gcHJvcGVydGllcykKLSAgICA6IFN0eWxlUnVsZUJhc2UoRmlsdGVyLCAwKQotICAgICwgbV9m
aWx0ZXJOYW1lKGZpbHRlck5hbWUpCi0gICAgLCBtX3Byb3BlcnRpZXMoc3RkOjptb3ZlKHByb3Bl
cnRpZXMpKQotewotfQotCi1TdHlsZVJ1bGVGaWx0ZXI6OlN0eWxlUnVsZUZpbHRlcihjb25zdCBT
dHlsZVJ1bGVGaWx0ZXImIG8pCi0gICAgOiBTdHlsZVJ1bGVCYXNlKG8pCi0gICAgLCBtX2ZpbHRl
ck5hbWUoby5tX2ZpbHRlck5hbWUpCi0gICAgLCBtX3Byb3BlcnRpZXMoby5tX3Byb3BlcnRpZXMt
Pm11dGFibGVDb3B5KCkpCi17Ci19Ci0KLVN0eWxlUnVsZUZpbHRlcjo6flN0eWxlUnVsZUZpbHRl
cigpCi17Ci19Ci0KLU11dGFibGVTdHlsZVByb3BlcnRpZXMmIFN0eWxlUnVsZUZpbHRlcjo6bXV0
YWJsZVByb3BlcnRpZXMoKQotewotICAgIGlmICghbV9wcm9wZXJ0aWVzLT5pc011dGFibGUoKSkK
LSAgICAgICAgbV9wcm9wZXJ0aWVzID0gbV9wcm9wZXJ0aWVzLT5tdXRhYmxlQ29weSgpOwotICAg
IHJldHVybiBzdGF0aWNfY2FzdDxNdXRhYmxlU3R5bGVQcm9wZXJ0aWVzJj4obV9wcm9wZXJ0aWVz
LmdldCgpKTsKLX0KLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5o
IGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5oCmluZGV4IDU0ZjVjMjYuLjkxZGY0YzMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJ1bGUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvU3R5bGVSdWxlLmgKQEAgLTU1LDkgKzU1LDYgQEAgcHVibGljOgogICAgICAg
ICBWaWV3cG9ydCA9IDE1LAogI2VuZGlmCiAgICAgICAgIFJlZ2lvbiA9IDE2LAotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykKLSAgICAgICAgRmlsdGVyID0gMTcsCi0jZW5kaWYKICNpZiBFTkFCTEUo
U0hBRE9XX0RPTSkKICAgICAgICAgSG9zdEludGVybmFsID0gMTgsIC8vIFNwZWMgc2F5cyBIb3N0
ID0gMTAwMSwgYnV0IHdlIGNhbiB1c2Ugb25seSA1IGJpdCBmb3IgdHlwZSgpLgogI2VuZGlmCkBA
IC04Miw5ICs3OSw2IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUoU0hBRE9XX0RPTSkKICAgICBib29s
IGlzSG9zdFJ1bGUoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gSG9zdEludGVybmFsOyB9CiAj
ZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgYm9vbCBpc0ZpbHRlclJ1bGUoKSBj
b25zdCB7IHJldHVybiB0eXBlKCkgPT0gRmlsdGVyOyB9Ci0jZW5kaWYKIAogICAgIFBhc3NSZWY8
U3R5bGVSdWxlQmFzZT4gY29weSgpIGNvbnN0OwogCkBAIC0zMjUsMzIgKzMxOSw2IEBAIGlubGlu
ZSBjb25zdCBTdHlsZVJ1bGVSZWdpb24qIHRvU3R5bGVSdWxlUmVnaW9uKGNvbnN0IFN0eWxlUnVs
ZUdyb3VwKiBydWxlKQogICAgIHJldHVybiBzdGF0aWNfY2FzdDxjb25zdCBTdHlsZVJ1bGVSZWdp
b24qPihydWxlKTsKIH0KIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLWNsYXNzIFN0eWxlUnVs
ZUZpbHRlciA6IHB1YmxpYyBTdHlsZVJ1bGVCYXNlIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFz
c1JlZjxTdHlsZVJ1bGVGaWx0ZXI+IGNyZWF0ZShjb25zdCBTdHJpbmcmIGZpbHRlck5hbWUsIFBh
c3NSZWY8U3R5bGVQcm9wZXJ0aWVzPiBwcm9wZXJ0aWVzKQotICAgIHsKLSAgICAgICAgcmV0dXJu
IGFkb3B0UmVmKCpuZXcgU3R5bGVSdWxlRmlsdGVyKGZpbHRlck5hbWUsIHN0ZDo6bW92ZShwcm9w
ZXJ0aWVzKSkpOwotICAgIH0KLQotICAgIH5TdHlsZVJ1bGVGaWx0ZXIoKTsKLQotICAgIGNvbnN0
IFN0cmluZyYgZmlsdGVyTmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fZmlsdGVyTmFtZTsgfQotCi0g
ICAgY29uc3QgU3R5bGVQcm9wZXJ0aWVzJiBwcm9wZXJ0aWVzKCkgY29uc3QgeyByZXR1cm4gbV9w
cm9wZXJ0aWVzLmdldCgpOyB9Ci0gICAgTXV0YWJsZVN0eWxlUHJvcGVydGllcyYgbXV0YWJsZVBy
b3BlcnRpZXMoKTsKLQotICAgIFBhc3NSZWY8U3R5bGVSdWxlRmlsdGVyPiBjb3B5KCkgY29uc3Qg
eyByZXR1cm4gYWRvcHRSZWYoKm5ldyBTdHlsZVJ1bGVGaWx0ZXIoKnRoaXMpKTsgfQotCi1wcml2
YXRlOgotICAgIFN0eWxlUnVsZUZpbHRlcihjb25zdCBTdHJpbmcmLCBQYXNzUmVmPFN0eWxlUHJv
cGVydGllcz4pOwotICAgIFN0eWxlUnVsZUZpbHRlcihjb25zdCBTdHlsZVJ1bGVGaWx0ZXImKTsK
LQotICAgIFN0cmluZyBtX2ZpbHRlck5hbWU7Ci0gICAgUmVmPFN0eWxlUHJvcGVydGllcz4gbV9w
cm9wZXJ0aWVzOwotfTsKLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIFN0eWxlUnVsZV9oCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENvbnRlbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZVNoZWV0Q29udGVudHMuY3BwCmluZGV4IDk5MTI3YTQuLjlhMzg0OWMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVNoZWV0Q29udGVudHMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9TdHlsZVNoZWV0Q29udGVudHMuY3BwCkBAIC00NjcsOSArNDY3LDYgQEAg
c3RhdGljIGJvb2wgY2hpbGRSdWxlc0hhdmVGYWlsZWRPckNhbmNlbGVkU3VicmVzb3VyY2VzKGNv
bnN0IFZlY3RvcjxSZWZQdHI8U3R5bGUKICNpZiBFTkFCTEUoQ1NTX0RFVklDRV9BREFQVEFUSU9O
KQogICAgICAgICBjYXNlIFN0eWxlUnVsZUJhc2U6OlZpZXdwb3J0OgogI2VuZGlmCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgICAgICBjYXNlIFN0eWxlUnVsZUJhc2U6OkZpbHRlcjoKLSNl
bmRpZgogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA4MTMwMTY5Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUuY3BwCisrKyAvZGV2L251bGwKQEAgLTEs
NjQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29y
cG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
IOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVS
IEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIldlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5oIgotCi0jaWYg
RU5BQkxFKENTU19TSEFERVJTKQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVdlYktpdENTU0Fy
cmF5RnVuY3Rpb25WYWx1ZTo6V2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlKCkKLSAgICA6IENT
U1ZhbHVlTGlzdChXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWVDbGFzcywgQ29tbWFTZXBhcmF0
b3IpCi17Ci19Ci0KLVdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZTo6V2ViS2l0Q1NTQXJyYXlG
dW5jdGlvblZhbHVlKGNvbnN0IFdlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSYgY2xvbmVGcm9t
KQotICAgIDogQ1NTVmFsdWVMaXN0KGNsb25lRnJvbSkKLXsKLX0KLQotU3RyaW5nIFdlYktpdENT
U0FycmF5RnVuY3Rpb25WYWx1ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJu
ICJhcnJheSgiICsgQ1NTVmFsdWVMaXN0OjpjdXN0b21DU1NUZXh0KCkgKyAnKSc7Ci19Ci0KLVBh
c3NSZWZQdHI8V2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlPiBXZWJLaXRDU1NBcnJheUZ1bmN0
aW9uVmFsdWU6OmNsb25lRm9yQ1NTT00oKSBjb25zdAotewotICAgIHJldHVybiBhZG9wdFJlZihu
ZXcgV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlKCp0aGlzKSk7Ci19Ci0KLWJvb2wgV2ViS2l0
Q1NTQXJyYXlGdW5jdGlvblZhbHVlOjplcXVhbHMoY29uc3QgV2ViS2l0Q1NTQXJyYXlGdW5jdGlv
blZhbHVlJiBvdGhlcikgY29uc3QKLXsKLSAgICByZXR1cm4gQ1NTVmFsdWVMaXN0OjplcXVhbHMo
b3RoZXIpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
Q1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTQXJy
YXlGdW5jdGlvblZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTQXJyYXlGdW5j
dGlvblZhbHVlLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFjMjM3MWUuLjAwMDAw
MDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5o
CisrKyAvZGV2L251bGwKQEAgLTEsNjQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
MiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0g
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwot
ICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0g
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0g
KiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0Uu
Ci0gKi8KLQotI2lmbmRlZiBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWVfaAotI2RlZmluZSBX
ZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWVfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQot
Ci0jaW5jbHVkZSAiQ1NTVmFsdWVMaXN0LmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4K
LQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFs
dWUgOiBwdWJsaWMgQ1NTVmFsdWVMaXN0IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZjxX
ZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWU+IGNyZWF0ZSgpCi0gICAgewotICAgICAgICByZXR1
cm4gYWRvcHRSZWYoKm5ldyBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUoKSk7Ci0gICAgfQot
Ci0gICAgU3RyaW5nIGN1c3RvbUNTU1RleHQoKSBjb25zdDsKLQotICAgIFBhc3NSZWZQdHI8V2Vi
S2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlPiBjbG9uZUZvckNTU09NKCkgY29uc3Q7Ci0KLSAgICBi
b29sIGVxdWFscyhjb25zdCBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUmKSBjb25zdDsKLQot
cHJpdmF0ZToKLSAgICBXZWJLaXRDU1NBcnJheUZ1bmN0aW9uVmFsdWUoKTsKLSAgICBXZWJLaXRD
U1NBcnJheUZ1bmN0aW9uVmFsdWUoY29uc3QgV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlJiBj
bG9uZUZyb20pOwotfTsKLQotQ1NTX1ZBTFVFX1RZUEVfQ0FTVFMoV2ViS2l0Q1NTQXJyYXlGdW5j
dGlvblZhbHVlLCBpc1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZSgpKQotCi19IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuY3BwCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAyN2YwYTRmLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDkwICswLDAgQEAK
LS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMiIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
Ci0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIldlYktpdENTU0ZpbHRlclJ1bGUuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQot
I2luY2x1ZGUgIlByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbi5oIgotI2luY2x1ZGUgIlN0
eWxlUHJvcGVydGllcy5oIgotI2luY2x1ZGUgIlN0eWxlUnVsZS5oIgotI2luY2x1ZGUgPHd0Zi90
ZXh0L1N0cmluZ0J1aWxkZXIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1XZWJLaXRDU1NG
aWx0ZXJSdWxlOjpXZWJLaXRDU1NGaWx0ZXJSdWxlKFN0eWxlUnVsZUZpbHRlciogZmlsdGVyUnVs
ZSwgQ1NTU3R5bGVTaGVldCogcGFyZW50KQotICAgIDogQ1NTUnVsZShwYXJlbnQpCi0gICAgLCBt
X2ZpbHRlclJ1bGUoZmlsdGVyUnVsZSkKLXsKLX0KLQotV2ViS2l0Q1NTRmlsdGVyUnVsZTo6fldl
YktpdENTU0ZpbHRlclJ1bGUoKQotewotICAgIGlmIChtX3Byb3BlcnRpZXNDU1NPTVdyYXBwZXIp
Ci0gICAgICAgIG1fcHJvcGVydGllc0NTU09NV3JhcHBlci0+Y2xlYXJQYXJlbnRSdWxlKCk7Ci19
Ci0KLUNTU1N0eWxlRGVjbGFyYXRpb24qIFdlYktpdENTU0ZpbHRlclJ1bGU6OnN0eWxlKCkKLXsK
LSAgICBpZiAoIW1fcHJvcGVydGllc0NTU09NV3JhcHBlcikKLSAgICAgICAgbV9wcm9wZXJ0aWVz
Q1NTT01XcmFwcGVyID0gU3R5bGVSdWxlQ1NTU3R5bGVEZWNsYXJhdGlvbjo6Y3JlYXRlKG1fZmls
dGVyUnVsZS0+bXV0YWJsZVByb3BlcnRpZXMoKSwgKnRoaXMpOwotICAgIHJldHVybiBtX3Byb3Bl
cnRpZXNDU1NPTVdyYXBwZXIuZ2V0KCk7Ci19Ci0KLVN0cmluZyBXZWJLaXRDU1NGaWx0ZXJSdWxl
Ojpjc3NUZXh0KCkgY29uc3QKLXsKLSAgICBTdHJpbmdCdWlsZGVyIHJlc3VsdDsKLSAgICByZXN1
bHQuYXBwZW5kTGl0ZXJhbCgiQC13ZWJraXQtZmlsdGVyICIpOwotCi0gICAgU3RyaW5nIGZpbHRl
ck5hbWUgPSBtX2ZpbHRlclJ1bGUtPmZpbHRlck5hbWUoKTsKLSAgICByZXN1bHQuYXBwZW5kKGZp
bHRlck5hbWUpOwotICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCIgeyAiKTsKLQotICAgIFN0cmlu
ZyBkZXNjcyA9IG1fZmlsdGVyUnVsZS0+cHJvcGVydGllcygpLmFzVGV4dCgpOwotICAgIHJlc3Vs
dC5hcHBlbmQoZGVzY3MpOwotICAgIGlmICghZGVzY3MuaXNFbXB0eSgpKQotICAgICAgICByZXN1
bHQuYXBwZW5kKCcgJyk7Ci0gICAgcmVzdWx0LmFwcGVuZCgnfScpOwotCi0gICAgcmV0dXJuIHJl
c3VsdC50b1N0cmluZygpOwotfQotCi12b2lkIFdlYktpdENTU0ZpbHRlclJ1bGU6OnJlYXR0YWNo
KFN0eWxlUnVsZUJhc2UqIHJ1bGUpCi17Ci0gICAgQVNTRVJUKHJ1bGUpOwotICAgIEFTU0VSVF9X
SVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKHJ1bGUtPmlzRmlsdGVyUnVsZSgpKTsKLSAgICBtX2Zp
bHRlclJ1bGUgPSBzdGF0aWNfY2FzdDxTdHlsZVJ1bGVGaWx0ZXIqPihydWxlKTsKLSAgICBpZiAo
bV9wcm9wZXJ0aWVzQ1NTT01XcmFwcGVyKQotICAgICAgICBtX3Byb3BlcnRpZXNDU1NPTVdyYXBw
ZXItPnJlYXR0YWNoKG1fZmlsdGVyUnVsZS0+bXV0YWJsZVByb3BlcnRpZXMoKSk7Ci19Ci0KLX0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJSdWxlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyUnVsZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAzNTVjNTUxLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJL
aXRDU1NGaWx0ZXJSdWxlLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2NiArMCwwIEBACi0vKgotICog
Q29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0Ogot
ICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAg
IGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwot
ICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0g
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAq
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAq
IFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgV2ViS2l0Q1NTRmlsdGVyUnVsZV9oCi0jZGVm
aW5lIFdlYktpdENTU0ZpbHRlclJ1bGVfaAotCi0jaW5jbHVkZSAiQ1NTUnVsZS5oIgotCi0jaWYg
RU5BQkxFKENTU19TSEFERVJTKQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIENTU1N0
eWxlRGVjbGFyYXRpb247Ci1jbGFzcyBTdHlsZVJ1bGVGaWx0ZXI7Ci1jbGFzcyBTdHlsZVJ1bGVD
U1NTdHlsZURlY2xhcmF0aW9uOwotCi1jbGFzcyBXZWJLaXRDU1NGaWx0ZXJSdWxlIDogcHVibGlj
IENTU1J1bGUgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYktpdENTU0ZpbHRl
clJ1bGU+IGNyZWF0ZShTdHlsZVJ1bGVGaWx0ZXIqIHJ1bGUsIENTU1N0eWxlU2hlZXQqIHNoZWV0
KSB7IHJldHVybiBhZG9wdFJlZihuZXcgV2ViS2l0Q1NTRmlsdGVyUnVsZShydWxlLCBzaGVldCkp
OyB9Ci0KLSAgICB2aXJ0dWFsIH5XZWJLaXRDU1NGaWx0ZXJSdWxlKCk7Ci0KLSAgICB2aXJ0dWFs
IENTU1J1bGU6OlR5cGUgdHlwZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIFdFQktJVF9GSUxU
RVJfUlVMRTsgfQotICAgIHZpcnR1YWwgU3RyaW5nIGNzc1RleHQoKSBjb25zdCBvdmVycmlkZTsK
LSAgICB2aXJ0dWFsIHZvaWQgcmVhdHRhY2goU3R5bGVSdWxlQmFzZSopIG92ZXJyaWRlOwotCi0g
ICAgQ1NTU3R5bGVEZWNsYXJhdGlvbiogc3R5bGUoKTsKLQotcHJpdmF0ZToKLSAgICBXZWJLaXRD
U1NGaWx0ZXJSdWxlKFN0eWxlUnVsZUZpbHRlciosIENTU1N0eWxlU2hlZXQqIHBhcmVudCk7Ci0K
LSAgICBSZWZQdHI8U3R5bGVSdWxlRmlsdGVyPiBtX2ZpbHRlclJ1bGU7Ci0gICAgbXV0YWJsZSBS
ZWZQdHI8U3R5bGVSdWxlQ1NTU3R5bGVEZWNsYXJhdGlvbj4gbV9wcm9wZXJ0aWVzQ1NTT01XcmFw
cGVyOwotfTsKLQotfQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYg
Ly8gV2ViS2l0Q1NTRmlsdGVyUnVsZV9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
V2ViS2l0Q1NTRmlsdGVyUnVsZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmls
dGVyUnVsZS5pZGwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI4ZThjNzYuLjAwMDAw
MDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclJ1bGUuaWRsCisrKyAv
ZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBBZG9i
ZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi1b
Ci0gICAgQ29uZGl0aW9uYWw9Q1NTX1NIQURFUlMsCi1dIGludGVyZmFjZSBXZWJLaXRDU1NGaWx0
ZXJSdWxlIDogQ1NTUnVsZSB7Ci0gICAgcmVhZG9ubHkgYXR0cmlidXRlIENTU1N0eWxlRGVjbGFy
YXRpb24gc3R5bGU7Ci0KLSAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGV4cG9zZSB0aGUgZmlsdGVy
IG5hbWUgb25jZSB0aGUgQ1NTT00gZm9yIHRoZSBAZmlsdGVyIHJ1bGUgaXMgc3BlY2lmaWVkLgot
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwCmluZGV4IDk5
NGQzMTYuLjU4YThhMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NG
aWx0ZXJWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZh
bHVlLmNwcApAQCAtMzUsMjEgKzM1LDExIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdlYktp
dENTU0ZpbHRlclZhbHVlOjpXZWJLaXRDU1NGaWx0ZXJWYWx1ZShGaWx0ZXJPcGVyYXRpb25UeXBl
IG9wZXJhdGlvblR5cGUpCi0gICAgOiBDU1NWYWx1ZUxpc3QoV2ViS2l0Q1NTRmlsdGVyQ2xhc3Ms
IHR5cGVVc2VzU3BhY2VTZXBhcmF0b3Iob3BlcmF0aW9uVHlwZSkgPyBTcGFjZVNlcGFyYXRvciA6
IENvbW1hU2VwYXJhdG9yKQorICAgIDogQ1NTVmFsdWVMaXN0KFdlYktpdENTU0ZpbHRlckNsYXNz
LCBTcGFjZVNlcGFyYXRvcikKICAgICAsIG1fdHlwZShvcGVyYXRpb25UeXBlKQogewogfQogCi1i
b29sIFdlYktpdENTU0ZpbHRlclZhbHVlOjp0eXBlVXNlc1NwYWNlU2VwYXJhdG9yKEZpbHRlck9w
ZXJhdGlvblR5cGUgb3BlcmF0aW9uVHlwZSkKLXsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0g
ICAgcmV0dXJuIG9wZXJhdGlvblR5cGUgIT0gQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOwotI2Vsc2UK
LSAgICBVTlVTRURfUEFSQU0ob3BlcmF0aW9uVHlwZSk7Ci0gICAgcmV0dXJuIHRydWU7Ci0jZW5k
aWYKLX0KLQogU3RyaW5nIFdlYktpdENTU0ZpbHRlclZhbHVlOjpjdXN0b21DU1NUZXh0KCkgY29u
c3QKIHsKICAgICBjb25zdCBjaGFyKiByZXN1bHQgPSAiIjsKQEAgLTg5LDExICs3OSw2IEBAIFN0
cmluZyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNvbnN0CiAgICAgY2Fz
ZSBEcm9wU2hhZG93RmlsdGVyT3BlcmF0aW9uOgogICAgICAgICByZXN1bHQgPSAiZHJvcC1zaGFk
b3coIjsKICAgICAgICAgYnJlYWs7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGNhc2Ug
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uOgotICAgICAgICByZXN1bHQgPSAiY3VzdG9tKCI7Ci0gICAg
ICAgIGJyZWFrOwotI2VuZGlmCiAgICAgfQogCiAgICAgcmV0dXJuIHJlc3VsdCArIENTU1ZhbHVl
TGlzdDo6Y3VzdG9tQ1NTVGV4dCgpICsgJyknOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NT
RmlsdGVyVmFsdWUuaAppbmRleCBiMDllODgyLi42YzA5YTVlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaApAQCAtNTAsMTMgKzUwLDggQEAgcHVibGljOgogICAg
ICAgICBDb250cmFzdEZpbHRlck9wZXJhdGlvbiwKICAgICAgICAgQmx1ckZpbHRlck9wZXJhdGlv
biwKICAgICAgICAgRHJvcFNoYWRvd0ZpbHRlck9wZXJhdGlvbgotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICAgICAgLCBDdXN0b21GaWx0ZXJPcGVyYXRpb24KLSNlbmRpZgogICAgIH07CiAK
LSAgICBzdGF0aWMgYm9vbCB0eXBlVXNlc1NwYWNlU2VwYXJhdG9yKEZpbHRlck9wZXJhdGlvblR5
cGUpOwotCiAgICAgc3RhdGljIFBhc3NSZWY8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+IGNyZWF0ZShG
aWx0ZXJPcGVyYXRpb25UeXBlIHR5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gYWRvcHRSZWYo
Km5ldyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZSh0eXBlKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsIGIvU291cmNlL1dlYkNvcmUvY3NzL1dl
YktpdENTU0ZpbHRlclZhbHVlLmlkbAppbmRleCA1Zjg0MTQ0Li45NmJhMWY3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5pZGwKQEAgLTQzLDEwICs0Myw2IEBA
CiAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgQ1NTX0ZJTFRFUl9CTFVSID0gMTA7CiAgICAgY29u
c3QgdW5zaWduZWQgc2hvcnQgQ1NTX0ZJTFRFUl9EUk9QX1NIQURPVyA9IDExOwogCi0jaWYgZGVm
aW5lZChFTkFCTEVfQ1NTX1NIQURFUlMpICYmIEVOQUJMRV9DU1NfU0hBREVSUwotICAgIGNvbnN0
IHVuc2lnbmVkIHNob3J0IENTU19GSUxURVJfQ1VTVE9NID0gMTI7Ci0jZW5kaWYKLQogICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBvcGVyYXRpb25UeXBlOwogCiAgICAgZ2V0
dGVyIENTU1ZhbHVlIChbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcg
aW5kZXgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01hdEZ1bmN0
aW9uVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWUuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1OWQ4NGE2Li4wMDAwMDAwCi0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmNwcAorKysg
L2Rldi9udWxsCkBAIC0xLDgxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQWRv
YmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBDb3B5cmln
aHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBk
aXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQot
ICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwot
Ci0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1
ZS5oIgotCi0jaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgotCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVdlYktpdENTU01hdEZ1bmN0
aW9uVmFsdWU6OldlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUoKQotICAgIDogQ1NTVmFsdWVMaXN0
KFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVDbGFzcywgQ29tbWFTZXBhcmF0b3IpCi17Ci19Ci0K
LVdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU6OldlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUoY29u
c3QgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSYgY2xvbmVGcm9tKQotICAgIDogQ1NTVmFsdWVM
aXN0KGNsb25lRnJvbSkKLXsKLX0KLQotU3RyaW5nIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWU6
OmN1c3RvbUNTU1RleHQoKSBjb25zdAotewotICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsKLSAg
ICBpZiAobGVuZ3RoKCkgPT0gNCkKLSAgICAgICAgYnVpbGRlci5hcHBlbmRMaXRlcmFsKCJtYXQy
KCIpOwotICAgIGVsc2UgaWYgKGxlbmd0aCgpID09IDkpCi0gICAgICAgIGJ1aWxkZXIuYXBwZW5k
TGl0ZXJhbCgibWF0MygiKTsKLSAgICBlbHNlIGlmIChsZW5ndGgoKSA9PSAxNikKLSAgICAgICAg
YnVpbGRlci5hcHBlbmRMaXRlcmFsKCJtYXQ0KCIpOwotICAgIGVsc2UgewotICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgcmV0dXJuIFN0cmluZygpOwotICAgIH0KLQotICAg
IGJ1aWxkZXIuYXBwZW5kKENTU1ZhbHVlTGlzdDo6Y3VzdG9tQ1NTVGV4dCgpKTsKLSAgICBidWls
ZGVyLmFwcGVuZCgnKScpOwotICAgIHJldHVybiBidWlsZGVyLnRvU3RyaW5nKCk7Ci19Ci0KLVBh
c3NSZWZQdHI8V2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZT4gV2ViS2l0Q1NTTWF0RnVuY3Rpb25W
YWx1ZTo6Y2xvbmVGb3JDU1NPTSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBX
ZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlKCp0aGlzKSk7Ci19Ci0KLWJvb2wgV2ViS2l0Q1NTTWF0
RnVuY3Rpb25WYWx1ZTo6ZXF1YWxzKGNvbnN0IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUmIG90
aGVyKSBjb25zdAotewotICAgIHJldHVybiBDU1NWYWx1ZUxpc3Q6OmVxdWFscyhvdGhlcik7Ci19
Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVS
UykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNYXRGdW5jdGlvblZh
bHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZS5oCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0OWE1YjkwLi4wMDAwMDAwCi0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlLmgKKysrIC9kZXYvbnVsbApA
QCAtMSw2NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5c3RlbXMg
SW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
LgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBI
T0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IK
LSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVm
IFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWVfaAotI2RlZmluZSBXZWJLaXRDU1NNYXRGdW5jdGlv
blZhbHVlX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkNTU1ZhbHVl
TGlzdC5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3Jl
IHsKLQotY2xhc3MgV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSA6IHB1YmxpYyBDU1NWYWx1ZUxp
c3QgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmPFdlYktpdENTU01hdEZ1bmN0aW9uVmFs
dWU+IGNyZWF0ZSgpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJLaXRD
U1NNYXRGdW5jdGlvblZhbHVlKTsKLSAgICB9Ci0KLSAgICBTdHJpbmcgY3VzdG9tQ1NTVGV4dCgp
IGNvbnN0OwotCi0gICAgUGFzc1JlZlB0cjxXZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVlPiBjbG9u
ZUZvckNTU09NKCkgY29uc3Q7Ci0KLSAgICBib29sIGVxdWFscyhjb25zdCBXZWJLaXRDU1NNYXRG
dW5jdGlvblZhbHVlJikgY29uc3Q7Ci0KLXByaXZhdGU6Ci0gICAgV2ViS2l0Q1NTTWF0RnVuY3Rp
b25WYWx1ZSgpOwotICAgIFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUoY29uc3QgV2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZSYgY2xvbmVGcm9tKTsKLX07Ci0KLUNTU19WQUxVRV9UWVBFX0NBU1RT
KFdlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUsIGlzV2ViS2l0Q1NTTWF0RnVuY3Rpb25WYWx1ZSgp
KQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01p
eEZ1bmN0aW9uVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0
aW9uVmFsdWUuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhZTU0NDExLi4wMDAw
MDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNw
cAorKysgL2Rldi9udWxsCkBAIC0xLDY1ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAq
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4K
LSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTTWl4RnVuY3Rp
b25WYWx1ZS5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0gICAgCi1XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlOjpXZWJLaXRDU1NNaXhGdW5jdGlv
blZhbHVlKCkKLSAgICA6IENTU1ZhbHVlTGlzdChXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlQ2xh
c3MsIFNwYWNlU2VwYXJhdG9yKQotewotfQotCi1XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlOjpX
ZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKGNvbnN0IFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUm
IGNsb25lRnJvbSkKLSAgICA6IENTU1ZhbHVlTGlzdChjbG9uZUZyb20pCi17Ci19Ci0KLVN0cmlu
ZyBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlOjpjdXN0b21DU1NUZXh0KCkgY29uc3QKLXsKLSAg
ICByZXR1cm4gIm1peCgiICsgQ1NTVmFsdWVMaXN0OjpjdXN0b21DU1NUZXh0KCkgKyAnKSc7Ci19
Ci0KLVBhc3NSZWZQdHI8V2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZT4gV2ViS2l0Q1NTTWl4RnVu
Y3Rpb25WYWx1ZTo6Y2xvbmVGb3JDU1NPTSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGFkb3B0UmVm
KG5ldyBXZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKCp0aGlzKSk7Ci19Ci0KLWJvb2wgV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZTo6ZXF1YWxzKGNvbnN0IFdlYktpdENTU01peEZ1bmN0aW9uVmFs
dWUmIG90aGVyKSBjb25zdAotewotICAgIHJldHVybiBDU1NWYWx1ZUxpc3Q6OmVxdWFscyhvdGhl
cik7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1Nf
U0hBREVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5j
dGlvblZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1
ZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhZTQzMzg5Li4wMDAwMDAwCi0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmgKKysrIC9kZXYv
bnVsbApAQCAtMSw2NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aWZuZGVmIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWVfaAotI2RlZmluZSBXZWJLaXRDU1NNaXhG
dW5jdGlvblZhbHVlX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkNT
U1ZhbHVlTGlzdC5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBX
ZWJDb3JlIHsKLQotY2xhc3MgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSA6IHB1YmxpYyBDU1NW
YWx1ZUxpc3QgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmPFdlYktpdENTU01peEZ1bmN0
aW9uVmFsdWU+IGNyZWF0ZSgpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBX
ZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlKCkpOwotICAgIH0KLQotICAgIFN0cmluZyBjdXN0b21D
U1NUZXh0KCkgY29uc3Q7Ci0KLSAgICBQYXNzUmVmUHRyPFdlYktpdENTU01peEZ1bmN0aW9uVmFs
dWU+IGNsb25lRm9yQ1NTT00oKSBjb25zdDsKLQotICAgIGJvb2wgZXF1YWxzKGNvbnN0IFdlYktp
dENTU01peEZ1bmN0aW9uVmFsdWUmKSBjb25zdDsKLQotcHJpdmF0ZToKLSAgICBXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlKCk7Ci0gICAgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZShjb25zdCBX
ZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlJiBjbG9uZUZyb20pOwotfTsKLQotQ1NTX1ZBTFVFX1RZ
UEVfQ0FTVFMoV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZSwgaXNXZWJLaXRDU1NNaXhGdW5jdGlv
blZhbHVlKCkpCi0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShD
U1NfU0hBREVSUykKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2Vi
S2l0Q1NTTWl4RnVuY3Rpb25WYWx1ZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NT
TWl4RnVuY3Rpb25WYWx1ZS5pZGwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNhN2Mw
MmYuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUuaWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFp
bWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERB
TUFHRS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9Q1NTX1NIQURFUlMsCi0gICAgSW1wbGVt
ZW50YXRpb25MYWNrc1ZUYWJsZQotXSBpbnRlcmZhY2UgV2ViS2l0Q1NTTWl4RnVuY3Rpb25WYWx1
ZSA6IENTU1ZhbHVlTGlzdCB7Ci19OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
V2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1No
YWRlclZhbHVlLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWM5NjJjNS4uMDAw
MDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuY3BwCisr
KyAvZGV2L251bGwKQEAgLTEsMTA4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEg
QWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAq
ICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNp
bmNsdWRlICJXZWJLaXRDU1NTaGFkZXJWYWx1ZS5oIgotCi0jaW5jbHVkZSAiQ1NTUGFyc2VyLmgi
Ci0jaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaCIKLSNpbmNsdWRlICJDYWNoZWRSZXNv
dXJjZVJlcXVlc3QuaCIKLSNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3Jz
LmgiCi0jaW5jbHVkZSAiRG9jdW1lbnQuaCIKLSNpbmNsdWRlICJVUkwuaCIKLSNpbmNsdWRlICJT
dHlsZUNhY2hlZFNoYWRlci5oIgotI2luY2x1ZGUgIlN0eWxlUGVuZGluZ1NoYWRlci5oIgotI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewot
Ci1XZWJLaXRDU1NTaGFkZXJWYWx1ZTo6V2ViS2l0Q1NTU2hhZGVyVmFsdWUoY29uc3QgU3RyaW5n
JiB1cmwpCi0gICAgOiBDU1NWYWx1ZShXZWJLaXRDU1NTaGFkZXJDbGFzcykKLSAgICAsIG1fdXJs
KHVybCkKLSAgICAsIG1fYWNjZXNzZWRTaGFkZXIoZmFsc2UpCi17Ci19Ci0KLVdlYktpdENTU1No
YWRlclZhbHVlOjp+V2ViS2l0Q1NTU2hhZGVyVmFsdWUoKQotewotfQotCi1VUkwgV2ViS2l0Q1NT
U2hhZGVyVmFsdWU6OmNvbXBsZXRlVVJMKENhY2hlZFJlc291cmNlTG9hZGVyKiBsb2FkZXIpIGNv
bnN0Ci17Ci0gICAgcmV0dXJuIGxvYWRlci0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwobV91cmwp
OwotfQotCi1TdHlsZUNhY2hlZFNoYWRlciogV2ViS2l0Q1NTU2hhZGVyVmFsdWU6OmNhY2hlZFNo
YWRlcihDYWNoZWRSZXNvdXJjZUxvYWRlciogbG9hZGVyKQotewotICAgIEFTU0VSVChsb2FkZXIp
OwotCi0gICAgaWYgKCFtX2FjY2Vzc2VkU2hhZGVyKSB7Ci0gICAgICAgIG1fYWNjZXNzZWRTaGFk
ZXIgPSB0cnVlOwotCi0gICAgICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291
cmNlUmVxdWVzdChjb21wbGV0ZVVSTChsb2FkZXIpKSk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SW5p
dGlhdG9yKGNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMoKS5jc3MpOwotICAgICAgICBp
ZiAoQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2hhZGVyPiBjYWNoZWRTaGFkZXIgPSBsb2Fk
ZXItPnJlcXVlc3RTaGFkZXIocmVxdWVzdCkpCi0gICAgICAgICAgICBtX3NoYWRlciA9IFN0eWxl
Q2FjaGVkU2hhZGVyOjpjcmVhdGUoY2FjaGVkU2hhZGVyLmdldCgpKTsKLSAgICB9Ci0KLSAgICBy
ZXR1cm4gKG1fc2hhZGVyICYmIG1fc2hhZGVyLT5pc0NhY2hlZFNoYWRlcigpKSA/IHN0YXRpY19j
YXN0PFN0eWxlQ2FjaGVkU2hhZGVyKj4obV9zaGFkZXIuZ2V0KCkpIDogMDsKLX0KLQotU3R5bGVT
aGFkZXIqIFdlYktpdENTU1NoYWRlclZhbHVlOjpjYWNoZWRPclBlbmRpbmdTaGFkZXIoKQotewot
ICAgIGlmICghbV9zaGFkZXIpCi0gICAgICAgIG1fc2hhZGVyID0gU3R5bGVQZW5kaW5nU2hhZGVy
OjpjcmVhdGUodGhpcyk7Ci0KLSAgICByZXR1cm4gbV9zaGFkZXIuZ2V0KCk7Ci19Ci0KLVN0cmlu
ZyBXZWJLaXRDU1NTaGFkZXJWYWx1ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNvbnN0Ci17Ci0gICAgU3Ry
aW5nQnVpbGRlciByZXN1bHQ7Ci0gICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoInVybCgiKTsKLSAg
ICByZXN1bHQuYXBwZW5kKHF1b3RlQ1NTVVJMSWZOZWVkZWQobV91cmwpKTsKLSAgICByZXN1bHQu
YXBwZW5kKCcpJyk7Ci0gICAgaWYgKCFtX2Zvcm1hdC5pc0VtcHR5KCkpIHsKLSAgICAgICAgcmVz
dWx0LmFwcGVuZExpdGVyYWwoIiBmb3JtYXQoJyIpOwotICAgICAgICByZXN1bHQuYXBwZW5kKG1f
Zm9ybWF0KTsKLSAgICAgICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoIicpIik7Ci0gICAgfQotICAg
IHJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKLX0KLQotYm9vbCBXZWJLaXRDU1NTaGFkZXJWYWx1
ZTo6ZXF1YWxzKGNvbnN0IFdlYktpdENTU1NoYWRlclZhbHVlJiBvdGhlcikgY29uc3QKLXsKLSAg
ICByZXR1cm4gbV91cmwgPT0gb3RoZXIubV91cmw7Ci19Ci0gICAgCi19IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9XZWJLaXRDU1NTaGFkZXJWYWx1ZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3
OWQzNTg5Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NTaGFkZXJW
YWx1ZS5oCisrKyAvZGV2L251bGwKQEAgLTEsNzUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBXZWJLaXRDU1NTaGFkZXJWYWx1ZV9oCi0jZGVmaW5lIFdl
YktpdENTU1NoYWRlclZhbHVlX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1
ZGUgIkNTU1ZhbHVlLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ2FjaGVkUmVz
b3VyY2VMb2FkZXI7Ci1jbGFzcyBVUkw7Ci1jbGFzcyBTdHlsZUNhY2hlZFNoYWRlcjsKLWNsYXNz
IFN0eWxlU2hhZGVyOwotCi1jbGFzcyBXZWJLaXRDU1NTaGFkZXJWYWx1ZSA6IHB1YmxpYyBDU1NW
YWx1ZSB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWY8V2ViS2l0Q1NTU2hhZGVyVmFsdWU+
IGNyZWF0ZShjb25zdCBTdHJpbmcmIHVybCkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJLaXRD
U1NTaGFkZXJWYWx1ZSh1cmwpKTsgfQotICAgIH5XZWJLaXRDU1NTaGFkZXJWYWx1ZSgpOwotCi0g
ICAgY29uc3QgU3RyaW5nJiBmb3JtYXQoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1hdDsgfQotICAg
IHZvaWQgc2V0Rm9ybWF0KGNvbnN0IFN0cmluZyYgZm9ybWF0KSB7IG1fZm9ybWF0ID0gZm9ybWF0
OyB9Ci0KLSAgICBVUkwgY29tcGxldGVVUkwoQ2FjaGVkUmVzb3VyY2VMb2FkZXIqKSBjb25zdDsK
LSAgICBTdHlsZUNhY2hlZFNoYWRlciogY2FjaGVkU2hhZGVyKENhY2hlZFJlc291cmNlTG9hZGVy
Kik7Ci0gICAgU3R5bGVTaGFkZXIqIGNhY2hlZE9yUGVuZGluZ1NoYWRlcigpOwotCi0gICAgU3Ry
aW5nIGN1c3RvbUNTU1RleHQoKSBjb25zdDsKLQotICAgIGJvb2wgZXF1YWxzKGNvbnN0IFdlYktp
dENTU1NoYWRlclZhbHVlJikgY29uc3Q7Ci0KLXByaXZhdGU6Ci0gICAgZXhwbGljaXQgV2ViS2l0
Q1NTU2hhZGVyVmFsdWUoY29uc3QgU3RyaW5nJiB1cmwpOwotCi0gICAgU3RyaW5nIG1fdXJsOwot
ICAgIFN0cmluZyBtX2Zvcm1hdDsKLSAgICBSZWZQdHI8U3R5bGVTaGFkZXI+IG1fc2hhZGVyOwot
ICAgIGJvb2wgbV9hY2Nlc3NlZFNoYWRlcjsKLX07Ci0KLUNTU19WQUxVRV9UWVBFX0NBU1RTKFdl
YktpdENTU1NoYWRlclZhbHVlLCBpc1dlYktpdENTU1NoYWRlclZhbHVlKCkpCi0KLX0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlm
IC8vIFdlYktpdENTU1NoYWRlclZhbHVlX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2UuY3BwCmluZGV4IDU2M2Q1MDYuLjVmMGJjNzYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcApAQCAtMTM1LDEwICsx
MzUsNiBAQCBzdGF0aWMgUmVzb3VyY2VMb2FkUHJpb3JpdHkgZGVmYXVsdFByaW9yaXR5Rm9yUmVz
b3VyY2VUeXBlKENhY2hlZFJlc291cmNlOjpUeXBlCiAgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6
VGV4dFRyYWNrUmVzb3VyY2U6CiAgICAgICAgIHJldHVybiBSZXNvdXJjZUxvYWRQcmlvcml0eUxv
dzsKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIENhY2hlZFJlc291
cmNlOjpTaGFkZXJSZXNvdXJjZToKLSAgICAgICAgcmV0dXJuIFJlc291cmNlTG9hZFByaW9yaXR5
TWVkaXVtOwotI2VuZGlmCiAgICAgfQogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJl
dHVybiBSZXNvdXJjZUxvYWRQcmlvcml0eUxvdzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlLmgKaW5kZXggOTE3OTRmMi4uOGRlNjljZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKQEAgLTgxLDkgKzgxLDYgQEAg
cHVibGljOgogI2lmIEVOQUJMRShWSURFT19UUkFDSykKICAgICAgICAgLCBUZXh0VHJhY2tSZXNv
dXJjZQogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgICAgICAsIFNoYWRlclJl
c291cmNlCi0jZW5kaWYKICAgICB9OwogCiAgICAgZW51bSBTdGF0dXMgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKaW5kZXgg
NTY2YTA3My4uMWM2NTkzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC02MiwxMCArNjIsNiBAQAogI2luY2x1ZGUg
IkNhY2hlZFRleHRUcmFjay5oIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0j
aW5jbHVkZSAiQ2FjaGVkU2hhZGVyLmgiCi0jZW5kaWYKLQogI2lmIEVOQUJMRShSRVNPVVJDRV9U
SU1JTkcpCiAjaW5jbHVkZSAiUGVyZm9ybWFuY2UuaCIKICNlbmRpZgpAQCAtMTA2LDEwICsxMDIs
NiBAQCBzdGF0aWMgQ2FjaGVkUmVzb3VyY2UqIGNyZWF0ZVJlc291cmNlKENhY2hlZFJlc291cmNl
OjpUeXBlIHR5cGUsIFJlc291cmNlUmVxdWVzdAogICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlRl
eHRUcmFja1Jlc291cmNlOgogICAgICAgICByZXR1cm4gbmV3IENhY2hlZFRleHRUcmFjayhyZXF1
ZXN0KTsKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIENhY2hlZFJl
c291cmNlOjpTaGFkZXJSZXNvdXJjZToKLSAgICAgICAgcmV0dXJuIG5ldyBDYWNoZWRTaGFkZXIo
cmVxdWVzdCk7Ci0jZW5kaWYKICAgICB9CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAg
cmV0dXJuIDA7CkBAIC0xODMsMTMgKzE3NSw2IEBAIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hl
ZFRleHRUcmFjaz4gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJlcXVlc3RUZXh0VHJhY2soQ2FjCiB9
CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLUNhY2hlZFJlc291cmNlSGFuZGxl
PENhY2hlZFNoYWRlcj4gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJlcXVlc3RTaGFkZXIoQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQotewotICAgIHJldHVybiBzdGF0aWNfY2FzdDxDYWNo
ZWRTaGFkZXIqPihyZXF1ZXN0UmVzb3VyY2UoQ2FjaGVkUmVzb3VyY2U6OlNoYWRlclJlc291cmNl
LCByZXF1ZXN0KS5nZXQoKSk7Ci19Ci0jZW5kaWYKLQogQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2Fj
aGVkQ1NTU3R5bGVTaGVldD4gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJlcXVlc3RDU1NTdHlsZVNo
ZWV0KENhY2hlZFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKICAgICByZXR1cm4gc3RhdGlj
X2Nhc3Q8Q2FjaGVkQ1NTU3R5bGVTaGVldCo+KHJlcXVlc3RSZXNvdXJjZShDYWNoZWRSZXNvdXJj
ZTo6Q1NTU3R5bGVTaGVldCwgcmVxdWVzdCkuZ2V0KCkpOwpAQCAtMjc5LDkgKzI2NCw2IEBAIGJv
b2wgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNoZWNrSW5zZWN1cmVDb250ZW50KENhY2hlZFJlc291
cmNlOjpUeXBlIHR5cGUsIGNvbnN0CiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogICAgIGNhc2Ug
Q2FjaGVkUmVzb3VyY2U6OlRleHRUcmFja1Jlc291cmNlOgogI2VuZGlmCi0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlNoYWRlclJlc291cmNlOgotI2Vu
ZGlmCiAgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6UmF3UmVzb3VyY2U6CiAgICAgY2FzZSBDYWNo
ZWRSZXNvdXJjZTo6SW1hZ2VSZXNvdXJjZToKICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpGb250
UmVzb3VyY2U6IHsKQEAgLTMzMyw5ICszMTUsNiBAQCBib29sIENhY2hlZFJlc291cmNlTG9hZGVy
OjpjYW5SZXF1ZXN0KENhY2hlZFJlc291cmNlOjpUeXBlIHR5cGUsIGNvbnN0IFVSTCYgdXJsLAog
I2lmIEVOQUJMRShWSURFT19UUkFDSykKICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpUZXh0VHJh
Y2tSZXNvdXJjZToKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBjYXNlIENh
Y2hlZFJlc291cmNlOjpTaGFkZXJSZXNvdXJjZToKLSNlbmRpZgogICAgICAgICBpZiAob3B0aW9u
cy5yZXF1ZXN0T3JpZ2luUG9saWN5ID09IFJlc3RyaWN0VG9TYW1lT3JpZ2luICYmICFtX2RvY3Vt
ZW50LT5zZWN1cml0eU9yaWdpbigpLT5jYW5SZXF1ZXN0KHVybCkpIHsKICAgICAgICAgICAgIHBy
aW50QWNjZXNzRGVuaWVkTWVzc2FnZSh1cmwpOwogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwpA
QCAtMzcwLDEwICszNDksNiBAQCBib29sIENhY2hlZFJlc291cmNlTG9hZGVyOjpjYW5SZXF1ZXN0
KENhY2hlZFJlc291cmNlOjpUeXBlIHR5cGUsIGNvbnN0IFVSTCYgdXJsLAogICAgICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogICAgICAgICBicmVhazsKLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6U2hhZGVyUmVzb3VyY2U6Ci0g
ICAgICAgIC8vIFNpbmNlIHNoYWRlcnMgYXJlIHJlZmVyZW5jZWQgZnJvbSBDU1MgU3R5bGVzIHVz
ZSB0aGUgc2FtZSBydWxlcyBoZXJlLgotI2VuZGlmCiAgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6
Q1NTU3R5bGVTaGVldDoKICAgICAgICAgaWYgKCFzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50
U2VjdXJpdHlQb2xpY3kgJiYgIW1fZG9jdW1lbnQtPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5h
bGxvd1N0eWxlRnJvbVNvdXJjZSh1cmwpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaApp
bmRleCA1OTdkNjEwLi5iY2M3OTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaApAQCAtNDYsNyArNDYsNiBAQCBjbGFzcyBDYWNo
ZWRGb250OwogY2xhc3MgQ2FjaGVkSW1hZ2U7CiBjbGFzcyBDYWNoZWRSYXdSZXNvdXJjZTsKIGNs
YXNzIENhY2hlZFNjcmlwdDsKLWNsYXNzIENhY2hlZFNoYWRlcjsKIGNsYXNzIENhY2hlZFRleHRU
cmFjazsKIGNsYXNzIENhY2hlZFhTTFN0eWxlU2hlZXQ7CiBjbGFzcyBEb2N1bWVudDsKQEAgLTky
LDkgKzkxLDYgQEAgcHVibGljOgogI2lmIEVOQUJMRShWSURFT19UUkFDSykKICAgICBDYWNoZWRS
ZXNvdXJjZUhhbmRsZTxDYWNoZWRUZXh0VHJhY2s+IHJlcXVlc3RUZXh0VHJhY2soQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0Jik7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgQ2Fj
aGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkU2hhZGVyPiByZXF1ZXN0U2hhZGVyKENhY2hlZFJlc291
cmNlUmVxdWVzdCYpOwotI2VuZGlmCiAKICAgICAvLyBMb2dzIGFuIGFjY2VzcyBkZW5pZWQgbWVz
c2FnZSB0byB0aGUgY29uc29sZSBmb3IgdGhlIHNwZWNpZmllZCBVUkwuCiAgICAgdm9pZCBwcmlu
dEFjY2Vzc0RlbmllZE1lc3NhZ2UoY29uc3QgVVJMJiB1cmwpIGNvbnN0OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggYTU3NDhmZS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkU2hhZGVyLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDcxICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6
Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICog
ICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
Ci0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQg
QU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAot
ICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVO
QUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkNhY2hlZFNoYWRlci5oIgotI2luY2x1ZGUg
IlJlc291cmNlQnVmZmVyLmgiCi0jaW5jbHVkZSAiVGV4dFJlc291cmNlRGVjb2Rlci5oIgotI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewot
Ci1DYWNoZWRTaGFkZXI6OkNhY2hlZFNoYWRlcihjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlc291
cmNlUmVxdWVzdCkKLSAgICA6IENhY2hlZFJlc291cmNlKHJlc291cmNlUmVxdWVzdCwgU2hhZGVy
UmVzb3VyY2UpCi0gICAgLCBtX2RlY29kZXIoVGV4dFJlc291cmNlRGVjb2Rlcjo6Y3JlYXRlKCJh
cHBsaWNhdGlvbi9zaGFkZXIiKSkKLXsKLX0KLQotQ2FjaGVkU2hhZGVyOjp+Q2FjaGVkU2hhZGVy
KCkKLXsKLX0KLQotY29uc3QgU3RyaW5nJiBDYWNoZWRTaGFkZXI6OnNoYWRlclN0cmluZygpCi17
Ci0gICAgaWYgKG1fc2hhZGVyU3RyaW5nLmlzTnVsbCgpICYmIG1fZGF0YSkgewotICAgICAgICBT
dHJpbmdCdWlsZGVyIGJ1aWxkZXI7Ci0gICAgICAgIGJ1aWxkZXIuYXBwZW5kKG1fZGVjb2Rlci0+
ZGVjb2RlKG1fZGF0YS0+ZGF0YSgpLCBtX2RhdGEtPnNpemUoKSkpOwotICAgICAgICBidWlsZGVy
LmFwcGVuZChtX2RlY29kZXItPmZsdXNoKCkpOwotICAgICAgICBtX3NoYWRlclN0cmluZyA9IGJ1
aWxkZXIudG9TdHJpbmcoKTsKLSAgICB9Ci0KLSAgICByZXR1cm4gbV9zaGFkZXJTdHJpbmc7Ci19
Ci0KLXZvaWQgQ2FjaGVkU2hhZGVyOjpmaW5pc2hMb2FkaW5nKFJlc291cmNlQnVmZmVyKiBkYXRh
KQotewotICAgIG1fZGF0YSA9IGRhdGE7Ci0gICAgQ2FjaGVkUmVzb3VyY2U6OmZpbmlzaExvYWRp
bmcoMCk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShD
U1NfU0hBREVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRTaGFkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuaApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjJiZDRmZC4uMDAwMDAwMAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmgKKysrIC9kZXYvbnVsbApAQCAt
MSw2MCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5j
b3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xE
RVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAq
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIENh
Y2hlZFNoYWRlcl9oCi0jZGVmaW5lIENhY2hlZFNoYWRlcl9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KLSNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLWNsYXNzIFRleHRSZXNvdXJjZURlY29kZXI7Ci0KLWNsYXNzIENhY2hlZFNoYWRlciBm
aW5hbCA6IHB1YmxpYyBDYWNoZWRSZXNvdXJjZSB7Ci1wdWJsaWM6Ci0gICAgQ2FjaGVkU2hhZGVy
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwotICAgIHZpcnR1YWwgfkNhY2hlZFNoYWRlcigpOwot
ICAgIAotICAgIGNvbnN0IFN0cmluZyYgc2hhZGVyU3RyaW5nKCk7Ci0KLXByaXZhdGU6Ci0gICAg
dmlydHVhbCBib29sIG1heVRyeVJlcGxhY2VFbmNvZGVkRGF0YSgpIGNvbnN0IG92ZXJyaWRlIHsg
cmV0dXJuIHRydWU7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZmluaXNoTG9hZGluZyhSZXNvdXJjZUJ1
ZmZlciopIG92ZXJyaWRlOwotCi0gICAgUmVmUHRyPFRleHRSZXNvdXJjZURlY29kZXI+IG1fZGVj
b2RlcjsKLSAgICBTdHJpbmcgbV9zaGFkZXJTdHJpbmc7Ci19OwotCi19Ci0KLSNlbmRpZiAvLyBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBDYWNoZWRTaGFkZXJfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1NldHRpbmdzLmNwcAppbmRleCA3MWM0YjdjLi4zYmEyM2I0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRp
bmdzLmNwcApAQCAtMTc4LDcgKzE3OCw2IEBAIFNldHRpbmdzOjpTZXR0aW5ncyhQYWdlKiBwYWdl
KQogICAgICwgbV9uZWVkc0Fkb2JlRnJhbWVSZWxvYWRpbmdRdWlyayhmYWxzZSkKICAgICAsIG1f
dXNlc1BhZ2VDYWNoZShmYWxzZSkKICAgICAsIG1fZm9udFJlbmRlcmluZ01vZGUoMCkKLSAgICAs
IG1faXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGZhbHNlKQogI2lmIFBMQVRGT1JNKElPUykKICAg
ICAsIG1fc3RhbmRhbG9uZShmYWxzZSkKICAgICAsIG1fdGVsZXBob25lTnVtYmVyUGFyc2luZ0Vu
YWJsZWQoZmFsc2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKaW5kZXggNTVmNmRlYi4uY2IyZWM5NyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaApAQCAtMjEzLDkgKzIxMyw2IEBAIHB1YmxpYzoKICAgICB2
b2lkIHNldEZvbnRSZW5kZXJpbmdNb2RlKEZvbnRSZW5kZXJpbmdNb2RlIG1vZGUpOwogICAgIEZv
bnRSZW5kZXJpbmdNb2RlIGZvbnRSZW5kZXJpbmdNb2RlKCkgY29uc3Q7CiAKLSAgICB2b2lkIHNl
dENTU0N1c3RvbUZpbHRlckVuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1faXNDU1NDdXN0b21GaWx0
ZXJFbmFibGVkID0gZW5hYmxlZDsgfQotICAgIGJvb2wgaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVk
KCkgY29uc3QgeyByZXR1cm4gbV9pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQ7IH0KLQogI2lmIEVO
QUJMRShDU1NfU1RJQ0tZX1BPU0lUSU9OKQogICAgIHZvaWQgc2V0Q1NTU3RpY2t5UG9zaXRpb25F
bmFibGVkKGJvb2wgZW5hYmxlZCkgeyBtX2Nzc1N0aWNreVBvc2l0aW9uRW5hYmxlZCA9IGVuYWJs
ZWQ7IH0KICAgICBib29sIGNzc1N0aWNreVBvc2l0aW9uRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJu
IG1fY3NzU3RpY2t5UG9zaXRpb25FbmFibGVkOyB9CkBAIC0zNDcsNyArMzQ0LDYgQEAgcHJpdmF0
ZToKICAgICBib29sIG1fbmVlZHNBZG9iZUZyYW1lUmVsb2FkaW5nUXVpcmsgOiAxOwogICAgIGJv
b2wgbV91c2VzUGFnZUNhY2hlIDogMTsKICAgICB1bnNpZ25lZCBtX2ZvbnRSZW5kZXJpbmdNb2Rl
IDogMTsKLSAgICBib29sIG1faXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkIDogMTsKICNpZiBQTEFU
Rk9STShJT1MpCiAgICAgYm9vbCBtX3N0YW5kYWxvbmUgOiAxOwogICAgIGJvb2wgbV90ZWxlcGhv
bmVOdW1iZXJQYXJzaW5nRW5hYmxlZCA6IDE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAKaW5kZXggYTM5OGE3YS4uMjkx
MTI5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVy
dHlBbmltYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NTU1By
b3BlcnR5QW5pbWF0aW9uLmNwcApAQCAtMjIzLDcgKzIyMyw3IEBAIHN0YXRpYyBpbmxpbmUgUGFz
c1JlZlB0cjxTdHlsZUltYWdlPiBibGVuZEZpbHRlcihjb25zdCBBbmltYXRpb25CYXNlKiBhbmlt
LCBDYWNoCiAKICAgICBSZWZQdHI8U3R5bGVDYWNoZWRJbWFnZT4gc3R5bGVkSW1hZ2UgPSBTdHls
ZUNhY2hlZEltYWdlOjpjcmVhdGUoaW1hZ2UpOwogICAgIGF1dG8gaW1hZ2VWYWx1ZSA9IENTU0lt
YWdlVmFsdWU6OmNyZWF0ZShpbWFnZS0+dXJsKCksIHN0eWxlZEltYWdlLmdldCgpKTsKLSAgICBh
dXRvIGZpbHRlclZhbHVlID0gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JGaWx0ZXIo
YW5pbS0+cmVuZGVyZXIoKSwgJmFuaW0tPnJlbmRlcmVyKCktPnN0eWxlKCksIGZpbHRlclJlc3Vs
dCwgRG9Ob3RBZGp1c3RQaXhlbFZhbHVlcyk7CisgICAgYXV0byBmaWx0ZXJWYWx1ZSA9IENvbXB1
dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9yRmlsdGVyKCZhbmltLT5yZW5kZXJlcigpLT5zdHls
ZSgpLCBmaWx0ZXJSZXN1bHQsIERvTm90QWRqdXN0UGl4ZWxWYWx1ZXMpOwogCiAgICAgYXV0byBy
ZXN1bHQgPSBDU1NGaWx0ZXJJbWFnZVZhbHVlOjpjcmVhdGUoc3RkOjptb3ZlKGltYWdlVmFsdWUp
LCBzdGQ6Om1vdmUoZmlsdGVyVmFsdWUpKTsKICAgICByZXN1bHQuZ2V0KCkuc2V0RmlsdGVyT3Bl
cmF0aW9ucyhmaWx0ZXJSZXN1bHQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2EvbWFjL1BsYXRmb3JtQ0FMYXllck1hYy5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9QbGF0Zm9ybUNBTGF5ZXJNYWMubW0KaW5kZXggODFk
YWFkOS4uNTY3ZGMyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2EvbWFjL1BsYXRmb3JtQ0FMYXllck1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jYS9tYWMvUGxhdGZvcm1DQUxheWVyTWFjLm1tCkBAIC02NjQsMTAgKzY2
NCw2IEBAIGJvb2wgUGxhdGZvcm1DQUxheWVyTWFjOjpmaWx0ZXJzQ2FuQmVDb21wb3NpdGVkKGNv
bnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlcnMpCiAgICAgICAgIGNvbnN0IEZpbHRlck9wZXJh
dGlvbiogZmlsdGVyT3BlcmF0aW9uID0gZmlsdGVycy5hdChpKTsKICAgICAgICAgc3dpdGNoIChm
aWx0ZXJPcGVyYXRpb24tPnR5cGUoKSkgewogICAgICAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRp
b246OlJFRkVSRU5DRToKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgICAgICAgICBjYXNl
IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOgotICAgICAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRp
b246OlZBTElEQVRFRF9DVVNUT006Ci0jZW5kaWYKICAgICAgICAgICAgICAgICByZXR1cm4gZmFs
c2U7CiAgICAgICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6RFJPUF9TSEFET1c6CiAgICAg
ICAgICAgICAgICAgLy8gRklYTUU6IEZvciBub3cgd2UgY2FuIG9ubHkgaGFuZGxlIGRyb3Atc2hh
ZG93IGlzIGlmIGl0J3MgbGFzdCBpbiB0aGUgbGlzdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlci5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJB
cnJheVBhcmFtZXRlci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkZjY5MGEwLi4w
MDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3Vz
dG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDkxICswLDAgQEAK
LS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KA
nSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0g
KiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyQXJy
YXlQYXJhbWV0ZXJfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcl9oCi0KLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQW5pbWF0aW9uVXRpbGl0aWVzLmgiCi0j
aW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5o
PgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlckFycmF5UGFyYW1l
dGVyIDogcHVibGljIEN1c3RvbUZpbHRlclBhcmFtZXRlciB7Ci1wdWJsaWM6Ci0gICAgc3RhdGlj
IFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI+IGNyZWF0ZShjb25zdCBTdHJp
bmcmIG5hbWUsIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6UGFyYW1ldGVyVHlwZSBwYXJhbWV0ZXJU
eXBlID0gQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpBUlJBWSkKLSAgICB7Ci0gICAgICAgIHJldHVy
biBhZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIocGFyYW1ldGVyVHlwZSwg
bmFtZSkpOwotICAgIH0KLQotICAgIHVuc2lnbmVkIHNpemUoKSBjb25zdCB7IHJldHVybiBtX2Rh
dGEuc2l6ZSgpOyB9Ci0gICAgZG91YmxlIHZhbHVlQXQodW5zaWduZWQgaW5kZXgpIGNvbnN0IHsg
cmV0dXJuIG1fZGF0YS5hdChpbmRleCk7IH0KLQotICAgIHZvaWQgYWRkVmFsdWUoZG91YmxlIHZh
bHVlKSB7IG1fZGF0YS5hcHBlbmQodmFsdWUpOyB9Ci0KLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8
Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBibGVuZChjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIq
IGZyb20sIGRvdWJsZSBwcm9ncmVzcywgY29uc3QgTGF5b3V0U2l6ZSYpCi0gICAgewotICAgICAg
ICBpZiAoIWZyb20gfHwgIWlzU2FtZVR5cGUoKmZyb20pKQotICAgICAgICAgICAgcmV0dXJuIHRo
aXM7Ci0KLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIqIGZyb21BcnJh
eSA9IHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKj4oZnJvbSk7
Ci0KLSAgICAgICAgaWYgKHNpemUoKSAhPSBmcm9tQXJyYXktPnNpemUoKSkKLSAgICAgICAgICAg
IHJldHVybiB0aGlzOwotCi0gICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRl
cj4gcmVzdWx0ID0gQ3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKCkpOwot
ICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemUoKTsgKytpKQotICAgICAgICAgICAg
cmVzdWx0LT5hZGRWYWx1ZShXZWJDb3JlOjpibGVuZChmcm9tQXJyYXktPnZhbHVlQXQoaSksIHZh
bHVlQXQoaSksIHByb2dyZXNzKSk7Ci0KLSAgICAgICAgcmV0dXJuIHJlc3VsdC5yZWxlYXNlKCk7
Ci0gICAgfQotCi0gICAgdmlydHVhbCBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVy
UGFyYW1ldGVyJiBvKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKCFpc1NhbWVUeXBlKG8pKQot
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlckFy
cmF5UGFyYW1ldGVyKiBvdGhlciA9IHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlckFycmF5
UGFyYW1ldGVyKj4oJm8pOwotICAgICAgICByZXR1cm4gbV9kYXRhID09IG90aGVyLT5tX2RhdGE7
Ci0gICAgfQotCi1wcml2YXRlOgotICAgIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKFBhcmFt
ZXRlclR5cGUgcGFyYW1ldGVyVHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lKQotICAgICAgICA6IEN1
c3RvbUZpbHRlclBhcmFtZXRlcihwYXJhbWV0ZXJUeXBlLCBuYW1lKQotICAgIHsKLSAgICB9Ci0K
LSAgICBWZWN0b3I8ZG91YmxlPiBtX2RhdGE7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0
ZXJBcnJheVBhcmFtZXRlcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVy
LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM2OTI0NWQuLjAwMDAwMDAKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb2xv
clBhcmFtZXRlci5oCisrKyAvZGV2L251bGwKQEAgLTEsODkgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMyBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcl9o
Ci0jZGVmaW5lIEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyX2gKLQotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSNpbmNsdWRlICJDb2xvci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFt
ZXRlci5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLXN0YXRpYyBpbmxpbmUgQ29sb3IgYmxl
bmRGdW5jKGNvbnN0IENvbG9yJiBmcm9tLCBjb25zdCBDb2xvciYgdG8sIGRvdWJsZSBwcm9ncmVz
cykKLXsKLSAgICByZXR1cm4gYmxlbmQoZnJvbSwgdG8sIHByb2dyZXNzKTsKLX0KLQotY2xhc3Mg
Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIgOiBwdWJsaWMgQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJDb2xvclBhcmFt
ZXRlcj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgbmFtZSkKLSAgICB7Ci0gICAgICAgIHJldHVybiBh
ZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIobmFtZSkpOwotICAgIH0KLQot
ICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IGJsZW5kKGNvbnN0
IEN1c3RvbUZpbHRlclBhcmFtZXRlciogZnJvbVBhcmFtZXRlciwgZG91YmxlIHByb2dyZXNzLCBj
b25zdCBMYXlvdXRTaXplJikKLSAgICB7Ci0gICAgICAgIGlmICghZnJvbVBhcmFtZXRlciB8fCAh
aXNTYW1lVHlwZSgqZnJvbVBhcmFtZXRlcikpCi0gICAgICAgICAgICByZXR1cm4gdGhpczsKLSAg
ICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIqIGZyb21Db2xvciA9IHN0YXRp
Y19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKj4oZnJvbVBhcmFtZXRlcik7
Ci0KLSAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyPiByZXN1bHQgPSBD
dXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUoKSk7Ci0gICAgICAgIHJlc3Vs
dC0+c2V0Q29sb3IoYmxlbmRGdW5jKGZyb21Db2xvci0+Y29sb3IoKSwgY29sb3IoKSwgcHJvZ3Jl
c3MpKTsKLSAgICAgICAgcmV0dXJuIHJlc3VsdDsKLSAgICB9Ci0KLSAgICBjb25zdCBDb2xvciYg
Y29sb3IoKSBjb25zdCB7IHJldHVybiBtX2NvbG9yOyB9Ci0gICAgdm9pZCBzZXRDb2xvcihjb25z
dCBDb2xvciYgY29sb3IpIHsgbV9jb2xvciA9IGNvbG9yOyB9Ci0KLSAgICB2aXJ0dWFsIGJvb2wg
b3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXImIG8pIGNvbnN0Ci0gICAgewot
ICAgICAgICBpZiAoIWlzU2FtZVR5cGUobykpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0g
ICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKiBvdGhlciA9IHN0YXRpY19j
YXN0PGNvbnN0IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKj4oJm8pOwotICAgICAgICByZXR1
cm4gbV9jb2xvciA9PSBvdGhlci0+bV9jb2xvcjsKLSAgICB9Ci0gICAgCi1wcml2YXRlOgotICAg
IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKGNvbnN0IFN0cmluZyYgbmFtZSkKLSAgICAgICAg
OiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIoQ09MT1IsIG5hbWUpCi0gICAgewotICAgIH0KLSAgICB2
aXJ0dWFsIH5DdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlcigpCi0gICAgewotICAgIH0KLSAgICAK
LSAgICBDb2xvciBtX2NvbG9yOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyQ29sb3JQ
YXJhbWV0ZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uY3Bw
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzNGI3NTYyLi4wMDAwMDAwCi0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29tcGls
ZWRQcm9ncmFtLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDE1NiArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoK
LSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICog
ICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0g
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0g
KiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJD
b21waWxlZFByb2dyYW0uaCIKLSAKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0
LmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
OjpDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0oUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQz
RD4gY29udGV4dCwgY29uc3QgU3RyaW5nJiB2YWxpZGF0ZWRWZXJ0ZXhTaGFkZXIsIGNvbnN0IFN0
cmluZyYgdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXIsIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHBy
b2dyYW1UeXBlKQotICAgIDogbV9jb250ZXh0KGNvbnRleHQpCi0gICAgLCBtX3Byb2dyYW0oMCkK
LSAgICAsIG1fcG9zaXRpb25BdHRyaWJMb2NhdGlvbigtMSkKLSAgICAsIG1fdGV4QXR0cmliTG9j
YXRpb24oLTEpCi0gICAgLCBtX21lc2hBdHRyaWJMb2NhdGlvbigtMSkKLSAgICAsIG1fdHJpYW5n
bGVBdHRyaWJMb2NhdGlvbigtMSkKLSAgICAsIG1fbWVzaEJveExvY2F0aW9uKC0xKQotICAgICwg
bV9wcm9qZWN0aW9uTWF0cml4TG9jYXRpb24oLTEpCi0gICAgLCBtX3RpbGVTaXplTG9jYXRpb24o
LTEpCi0gICAgLCBtX21lc2hTaXplTG9jYXRpb24oLTEpCi0gICAgLCBtX3NhbXBsZXJMb2NhdGlv
bigtMSkKLSAgICAsIG1fc2FtcGxlclNpemVMb2NhdGlvbigtMSkKLSAgICAsIG1fY29udGVudFNh
bXBsZXJMb2NhdGlvbigtMSkKLSAgICAsIG1faXNJbml0aWFsaXplZChmYWxzZSkKLXsKLSAgICBB
U1NFUlQoIXZhbGlkYXRlZFZlcnRleFNoYWRlci5pc051bGwoKSAmJiAhdmFsaWRhdGVkRnJhZ21l
bnRTaGFkZXIuaXNOdWxsKCkpOwotCi0gICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJlbnQo
KTsKLQotICAgIFBsYXRmb3JtM0RPYmplY3QgdmVydGV4U2hhZGVyID0gY29tcGlsZVNoYWRlcihH
cmFwaGljc0NvbnRleHQzRDo6VkVSVEVYX1NIQURFUiwgdmFsaWRhdGVkVmVydGV4U2hhZGVyKTsK
LSAgICBpZiAoIXZlcnRleFNoYWRlcikKLSAgICAgICAgcmV0dXJuOwotICAgIAotICAgIFBsYXRm
b3JtM0RPYmplY3QgZnJhZ21lbnRTaGFkZXIgPSBjb21waWxlU2hhZGVyKEdyYXBoaWNzQ29udGV4
dDNEOjpGUkFHTUVOVF9TSEFERVIsIHZhbGlkYXRlZEZyYWdtZW50U2hhZGVyKTsKLSAgICBpZiAo
IWZyYWdtZW50U2hhZGVyKSB7Ci0gICAgICAgIG1fY29udGV4dC0+ZGVsZXRlU2hhZGVyKHZlcnRl
eFNoYWRlcik7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgCi0gICAgbV9wcm9ncmFtID0g
bGlua1Byb2dyYW0odmVydGV4U2hhZGVyLCBmcmFnbWVudFNoYWRlcik7Ci0gICAgCi0gICAgbV9j
b250ZXh0LT5kZWxldGVTaGFkZXIodmVydGV4U2hhZGVyKTsKLSAgICBtX2NvbnRleHQtPmRlbGV0
ZVNoYWRlcihmcmFnbWVudFNoYWRlcik7Ci0gICAgCi0gICAgaWYgKCFtX3Byb2dyYW0pCi0gICAg
ICAgIHJldHVybjsKLSAgICAKLSAgICBpbml0aWFsaXplUGFyYW1ldGVyTG9jYXRpb25zKHByb2dy
YW1UeXBlKTsKLSAgICAKLSAgICBtX2lzSW5pdGlhbGl6ZWQgPSB0cnVlOwotfQotCi1QbGF0Zm9y
bTNET2JqZWN0IEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbTo6Y29tcGlsZVNoYWRlcihHQzNE
ZW51bSBzaGFkZXJUeXBlLCBjb25zdCBTdHJpbmcmIHNoYWRlclN0cmluZykKLXsKLSAgICBBU1NF
UlQoIXNoYWRlclN0cmluZy5pc051bGwoKSk7Ci0KLSAgICBQbGF0Zm9ybTNET2JqZWN0IHNoYWRl
ciA9IG1fY29udGV4dC0+Y3JlYXRlU2hhZGVyKHNoYWRlclR5cGUpOwotICAgIG1fY29udGV4dC0+
c2hhZGVyU291cmNlKHNoYWRlciwgc2hhZGVyU3RyaW5nKTsKLSAgICBtX2NvbnRleHQtPmNvbXBp
bGVTaGFkZXIoc2hhZGVyKTsKLSAgICAKLSAgICBpbnQgY29tcGlsZWQgPSAwOwotICAgIG1fY29u
dGV4dC0+Z2V0U2hhZGVyaXYoc2hhZGVyLCBHcmFwaGljc0NvbnRleHQzRDo6Q09NUElMRV9TVEFU
VVMsICZjb21waWxlZCk7Ci0gICAgaWYgKCFjb21waWxlZCkgewotICAgICAgICAvLyBGSVhNRTog
VGhpcyBpcyBhbiBpbnZhbGlkIHNoYWRlci4gVGhyb3cgc29tZSBlcnJvcnMuCi0gICAgICAgIC8v
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDQxNgotICAgICAgICBt
X2NvbnRleHQtPmRlbGV0ZVNoYWRlcihzaGFkZXIpOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9
Ci0gICAgCi0gICAgcmV0dXJuIHNoYWRlcjsKLX0KLQotUGxhdGZvcm0zRE9iamVjdCBDdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW06OmxpbmtQcm9ncmFtKFBsYXRmb3JtM0RPYmplY3QgdmVydGV4
U2hhZGVyLCBQbGF0Zm9ybTNET2JqZWN0IGZyYWdtZW50U2hhZGVyKQotewotICAgIFBsYXRmb3Jt
M0RPYmplY3QgcHJvZ3JhbSA9IG1fY29udGV4dC0+Y3JlYXRlUHJvZ3JhbSgpOwotICAgIG1fY29u
dGV4dC0+YXR0YWNoU2hhZGVyKHByb2dyYW0sIHZlcnRleFNoYWRlcik7Ci0gICAgbV9jb250ZXh0
LT5hdHRhY2hTaGFkZXIocHJvZ3JhbSwgZnJhZ21lbnRTaGFkZXIpOwotICAgIG1fY29udGV4dC0+
bGlua1Byb2dyYW0ocHJvZ3JhbSk7Ci0gICAgCi0gICAgaW50IGxpbmtlZCA9IDA7Ci0gICAgbV9j
b250ZXh0LT5nZXRQcm9ncmFtaXYocHJvZ3JhbSwgR3JhcGhpY3NDb250ZXh0M0Q6OkxJTktfU1RB
VFVTLCAmbGlua2VkKTsKLSAgICBpZiAoIWxpbmtlZCkgewotICAgICAgICAvLyBGSVhNRTogSW52
YWxpZCB2ZXJ0ZXgvZnJhZ21lbnQgc2hhZGVyIGNvbWJpbmF0aW9uLiBUaHJvdyBzb21lIGVycm9y
cyBoZXJlLgotICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzQ0MTYKLSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVQcm9ncmFtKHByb2dyYW0pOwotICAg
ICAgICByZXR1cm4gMDsKLSAgICB9Ci0gICAgCi0gICAgcmV0dXJuIHByb2dyYW07Ci19Ci0KLXZv
aWQgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOjppbml0aWFsaXplUGFyYW1ldGVyTG9jYXRp
b25zKEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlKQotewotICAgIG1fcG9zaXRp
b25BdHRyaWJMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0QXR0cmliTG9jYXRpb24obV9wcm9ncmFt
LCAiYV9wb3NpdGlvbiIpOwotICAgIG1fdGV4QXR0cmliTG9jYXRpb24gPSBtX2NvbnRleHQtPmdl
dEF0dHJpYkxvY2F0aW9uKG1fcHJvZ3JhbSwgImFfdGV4Q29vcmQiKTsKLSAgICBtX21lc2hBdHRy
aWJMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0QXR0cmliTG9jYXRpb24obV9wcm9ncmFtLCAiYV9t
ZXNoQ29vcmQiKTsKLSAgICBtX3RyaWFuZ2xlQXR0cmliTG9jYXRpb24gPSBtX2NvbnRleHQtPmdl
dEF0dHJpYkxvY2F0aW9uKG1fcHJvZ3JhbSwgImFfdHJpYW5nbGVDb29yZCIpOwotICAgIG1fbWVz
aEJveExvY2F0aW9uID0gbV9jb250ZXh0LT5nZXRVbmlmb3JtTG9jYXRpb24obV9wcm9ncmFtLCAi
dV9tZXNoQm94Iik7Ci0gICAgbV90aWxlU2l6ZUxvY2F0aW9uID0gbV9jb250ZXh0LT5nZXRVbmlm
b3JtTG9jYXRpb24obV9wcm9ncmFtLCAidV90aWxlU2l6ZSIpOwotICAgIG1fbWVzaFNpemVMb2Nh
dGlvbiA9IG1fY29udGV4dC0+Z2V0VW5pZm9ybUxvY2F0aW9uKG1fcHJvZ3JhbSwgInVfbWVzaFNp
emUiKTsKLSAgICBtX3Byb2plY3Rpb25NYXRyaXhMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0VW5p
Zm9ybUxvY2F0aW9uKG1fcHJvZ3JhbSwgInVfcHJvamVjdGlvbk1hdHJpeCIpOwotICAgIG1fc2Ft
cGxlclNpemVMb2NhdGlvbiA9IG1fY29udGV4dC0+Z2V0VW5pZm9ybUxvY2F0aW9uKG1fcHJvZ3Jh
bSwgInVfdGV4dHVyZVNpemUiKTsKLSAgICBtX2NvbnRlbnRTYW1wbGVyTG9jYXRpb24gPSBtX2Nv
bnRleHQtPmdldFVuaWZvcm1Mb2NhdGlvbihtX3Byb2dyYW0sICJ1X2NvbnRlbnRUZXh0dXJlIik7
Ci0gICAgaWYgKHByb2dyYW1UeXBlID09IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhU
VVJFKSB7Ci0gICAgICAgIC8vIFdoZW4gdGhlIGF1dGhvciB1c2VzIHRoZSBDU1MgbWl4IGZ1bmN0
aW9uIGluIGEgY3VzdG9tIGZpbHRlciwgV2ViS2l0IGFkZHMgdGhlIGludGVybmFsCi0gICAgICAg
IC8vIHN5bWJvbCBjc3NfdV90ZXh0dXJlIHRvIHRoZSBzaGFkZXIgY29kZSwgd2hpY2ggcmVmZXJl
bmNlcyB0aGUgdGV4dHVyZSBvZiB0aGUgZWxlbWVudC4KLSAgICAgICAgbV9zYW1wbGVyTG9jYXRp
b24gPSBtX2NvbnRleHQtPmdldFVuaWZvcm1Mb2NhdGlvbihtX3Byb2dyYW0sICJjc3NfdV90ZXh0
dXJlIik7Ci0gICAgfQotfQotCi1pbnQgQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOjp1bmlm
b3JtTG9jYXRpb25CeU5hbWUoY29uc3QgU3RyaW5nJiBuYW1lKQotewotICAgIEFTU0VSVChtX2lz
SW5pdGlhbGl6ZWQpOwotICAgIC8vIEZJWE1FOiBJbXByb3ZlIHRoaXMgYnkgY2FjaGluZyB0aGUg
dW5pZm9ybSBsb2NhdGlvbnMuCi0gICAgcmV0dXJuIG1fY29udGV4dC0+Z2V0VW5pZm9ybUxvY2F0
aW9uKG1fcHJvZ3JhbSwgbmFtZSk7Ci19Ci0gICAgCi1DdXN0b21GaWx0ZXJDb21waWxlZFByb2dy
YW06On5DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0oKQotewotICAgIGlmIChtX3Byb2dyYW0p
IHsKLSAgICAgICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJlbnQoKTsKLSAgICAgICAgbV9j
b250ZXh0LT5kZWxldGVQcm9ncmFtKG1fcHJvZ3JhbSk7Ci0gICAgfQotfQotCi19IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JB
UEhJQ1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0N1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWRiZjBkNC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bS5oCisrKyAvZGV2L251bGwKQEAgLTEsOTkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
Ci0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
Ci0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1B
R0UuCi0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW1faAotI2RlZmlu
ZSBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW1faAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJT
KSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtSW5m
by5oIgotI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCi0jaW5jbHVkZSA8d3RmL1JlZkNv
dW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1jbGFzcyBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0OwotCi1jbGFzcyBDdXN0
b21GaWx0ZXJDb21waWxlZFByb2dyYW06IHB1YmxpYyBSZWZDb3VudGVkPEN1c3RvbUZpbHRlckNv
bXBpbGVkUHJvZ3JhbT4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEN1c3RvbUZp
bHRlckNvbXBpbGVkUHJvZ3JhbT4gY3JlYXRlKFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+
IGNvbnRleHQsIGNvbnN0IFN0cmluZyYgdmFsaWRhdGVkVmVydGV4U2hhZGVyLCBjb25zdCBTdHJp
bmcmIHZhbGlkYXRlZEZyYWdtZW50U2hhZGVyLCBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9n
cmFtVHlwZSkKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVy
Q29tcGlsZWRQcm9ncmFtKGNvbnRleHQsIHZhbGlkYXRlZFZlcnRleFNoYWRlciwgdmFsaWRhdGVk
RnJhZ21lbnRTaGFkZXIsIHByb2dyYW1UeXBlKSk7Ci0gICAgfQotICAgIAotICAgIH5DdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW0oKTsKLSAgICAKLSAgICBpbnQgcG9zaXRpb25BdHRyaWJMb2Nh
dGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fcG9zaXRpb25BdHRyaWJMb2NhdGlvbjsgfQotICAgIGlu
dCB0ZXhBdHRyaWJMb2NhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fdGV4QXR0cmliTG9jYXRpb247
IH0KLSAgICBpbnQgbWVzaEF0dHJpYkxvY2F0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoQXR0
cmliTG9jYXRpb247IH0KLSAgICBpbnQgdHJpYW5nbGVBdHRyaWJMb2NhdGlvbigpIGNvbnN0IHsg
cmV0dXJuIG1fdHJpYW5nbGVBdHRyaWJMb2NhdGlvbjsgfQotICAgIGludCBtZXNoQm94TG9jYXRp
b24oKSBjb25zdCB7IHJldHVybiBtX21lc2hCb3hMb2NhdGlvbjsgfQotICAgIGludCBwcm9qZWN0
aW9uTWF0cml4TG9jYXRpb24oKSBjb25zdCB7IHJldHVybiBtX3Byb2plY3Rpb25NYXRyaXhMb2Nh
dGlvbjsgfQotICAgIGludCB0aWxlU2l6ZUxvY2F0aW9uKCkgY29uc3QgeyByZXR1cm4gbV90aWxl
U2l6ZUxvY2F0aW9uOyB9Ci0gICAgaW50IG1lc2hTaXplTG9jYXRpb24oKSBjb25zdCB7IHJldHVy
biBtX21lc2hTaXplTG9jYXRpb247IH0KLSAgICBpbnQgc2FtcGxlckxvY2F0aW9uKCkgY29uc3Qg
eyByZXR1cm4gbV9zYW1wbGVyTG9jYXRpb247IH0KLSAgICBpbnQgY29udGVudFNhbXBsZXJMb2Nh
dGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fY29udGVudFNhbXBsZXJMb2NhdGlvbjsgfQotICAgIGlu
dCBzYW1wbGVyU2l6ZUxvY2F0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9zYW1wbGVyU2l6ZUxvY2F0
aW9uOyB9Ci0KLSAgICBpbnQgdW5pZm9ybUxvY2F0aW9uQnlOYW1lKGNvbnN0IFN0cmluZyYpOwot
ICAgIAotICAgIGJvb2wgaXNJbml0aWFsaXplZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNJbml0aWFs
aXplZDsgfQotICAgIAotICAgIFBsYXRmb3JtM0RPYmplY3QgcHJvZ3JhbSgpIGNvbnN0IHsgcmV0
dXJuIG1fcHJvZ3JhbTsgfQotcHJpdmF0ZToKLSAgICBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dy
YW0oUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4sIGNvbnN0IFN0cmluZyYgdmFsaWRhdGVk
VmVydGV4U2hhZGVyLCBjb25zdCBTdHJpbmcmIHZhbGlkYXRlZEZyYWdtZW50U2hhZGVyLCBDdXN0
b21GaWx0ZXJQcm9ncmFtVHlwZSk7Ci0gICAgCi0gICAgUGxhdGZvcm0zRE9iamVjdCBjb21waWxl
U2hhZGVyKEdDM0RlbnVtIHNoYWRlclR5cGUsIGNvbnN0IFN0cmluZyYgc2hhZGVyU3RyaW5nKTsK
LSAgICBQbGF0Zm9ybTNET2JqZWN0IGxpbmtQcm9ncmFtKFBsYXRmb3JtM0RPYmplY3QgdmVydGV4
U2hhZGVyLCBQbGF0Zm9ybTNET2JqZWN0IGZyYWdtZW50U2hhZGVyKTsKLSAgICB2b2lkIGluaXRp
YWxpemVQYXJhbWV0ZXJMb2NhdGlvbnMoQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUpOwotICAgIAot
ICAgIFJlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gbV9jb250ZXh0OwotICAgIFBsYXRmb3JtM0RP
YmplY3QgbV9wcm9ncmFtOwotICAgIAotICAgIGludCBtX3Bvc2l0aW9uQXR0cmliTG9jYXRpb247
Ci0gICAgaW50IG1fdGV4QXR0cmliTG9jYXRpb247Ci0gICAgaW50IG1fbWVzaEF0dHJpYkxvY2F0
aW9uOwotICAgIGludCBtX3RyaWFuZ2xlQXR0cmliTG9jYXRpb247Ci0gICAgaW50IG1fbWVzaEJv
eExvY2F0aW9uOwotICAgIGludCBtX3Byb2plY3Rpb25NYXRyaXhMb2NhdGlvbjsKLSAgICBpbnQg
bV90aWxlU2l6ZUxvY2F0aW9uOwotICAgIGludCBtX21lc2hTaXplTG9jYXRpb247Ci0gICAgaW50
IG1fc2FtcGxlckxvY2F0aW9uOwotICAgIGludCBtX3NhbXBsZXJTaXplTG9jYXRpb247Ci0gICAg
aW50IG1fY29udGVudFNhbXBsZXJMb2NhdGlvbjsKLSAgICAKLSAgICBib29sIG1faXNJbml0aWFs
aXplZDsKLX07Ci0KLX0KLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNE
X0dSQVBISUNTKQotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlckNvbnN0YW50cy5oCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1NTlkYmM4Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmgK
KysrIC9kZXYvbnVsbApAQCAtMSw2MCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEy
IEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAq
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4K
LSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRlckNvbnN0YW50c19oCi0jZGVmaW5lIEN1c3RvbUZp
bHRlckNvbnN0YW50c19oCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotZW51bSBDdXN0b21GaWx0
ZXJNZXNoQ29uc3RhbnRzIHsKLSAgICAvLyBWZXJ0ZXggYXR0cmlidXRlIHNpemVzCi0gICAgUG9z
aXRpb25BdHRyaWJTaXplID0gNCwKLSAgICBUZXhBdHRyaWJTaXplID0gMiwKLSAgICBNZXNoQXR0
cmliU2l6ZSA9IDIsCi0gICAgVHJpYW5nbGVBdHRyaWJTaXplID0gMywKLSAgICAvLyBWZXJ0ZXgg
YXR0cmlidXRlIG9mZnNldHMKLSAgICBQb3NpdGlvbkF0dHJpYk9mZnNldCA9IDAsCi0gICAgVGV4
QXR0cmliT2Zmc2V0ID0gUG9zaXRpb25BdHRyaWJPZmZzZXQgKyBQb3NpdGlvbkF0dHJpYlNpemUg
KiBzaXplb2YoZmxvYXQpLAotICAgIE1lc2hBdHRyaWJPZmZzZXQgPSBUZXhBdHRyaWJPZmZzZXQg
KyBUZXhBdHRyaWJTaXplICogc2l6ZW9mKGZsb2F0KSwKLSAgICBUcmlhbmdsZUF0dHJpYk9mZnNl
dCA9IE1lc2hBdHRyaWJPZmZzZXQgKyBNZXNoQXR0cmliU2l6ZSAqIHNpemVvZihmbG9hdCkKLX07
Ci0KLWVudW0gQ3VzdG9tRmlsdGVyTWVzaFR5cGUgewotICAgIE1lc2hUeXBlQXR0YWNoZWQsCi0g
ICAgTWVzaFR5cGVEZXRhY2hlZAotfTsKLQotZW51bSBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSB7
Ci0gICAgUFJPR1JBTV9UWVBFX05PX0VMRU1FTlRfVEVYVFVSRSwKLSAgICBQUk9HUkFNX1RZUEVf
QkxFTkRTX0VMRU1FTlRfVEVYVFVSRQotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gQ3VzdG9tRmlsdGVyQ29uc3RhbnRzX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
ckdsb2JhbENvbnRleHQuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NzEzMjM4
Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw5MyArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVk
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICog
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMg
SVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAq
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgi
Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLSNpbmNsdWRl
ICJDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmgiCi0KLSNpbmNsdWRlICJHcmFwaGljc0NvbnRl
eHQzRC5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLUN1c3RvbUZpbHRlckdsb2JhbENvbnRl
eHQ6OkN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQoKQotewotfQotCi1DdXN0b21GaWx0ZXJHbG9i
YWxDb250ZXh0Ojp+Q3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCgpCi17Ci19Ci0KLUFOR0xFV2Vi
S2l0QnJpZGdlKiBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0Ojp3ZWJnbFNoYWRlclZhbGlkYXRv
cigpCi17Ci0gICAgaWYgKCFtX3dlYmdsU2hhZGVyVmFsaWRhdG9yKQotICAgICAgICBtX3dlYmds
U2hhZGVyVmFsaWRhdG9yID0gY3JlYXRlU2hhZGVyVmFsaWRhdG9yKFNIX1dFQkdMX1NQRUMpOwot
ICAgIHJldHVybiBtX3dlYmdsU2hhZGVyVmFsaWRhdG9yLmdldCgpOwotfQotCi1BTkdMRVdlYktp
dEJyaWRnZSogQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dDo6bWl4U2hhZGVyVmFsaWRhdG9yKCkK
LXsKLSAgICBpZiAoIW1fbWl4U2hhZGVyVmFsaWRhdG9yKQotICAgICAgICBtX21peFNoYWRlclZh
bGlkYXRvciA9IGNyZWF0ZVNoYWRlclZhbGlkYXRvcihTSF9DU1NfU0hBREVSU19TUEVDKTsKLSAg
ICByZXR1cm4gbV9taXhTaGFkZXJWYWxpZGF0b3IuZ2V0KCk7Ci19Ci0KLVBhc3NPd25QdHI8QU5H
TEVXZWJLaXRCcmlkZ2U+IEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQ6OmNyZWF0ZVNoYWRlclZh
bGlkYXRvcihTaFNoYWRlclNwZWMgc2hhZGVyU3BlYykKLXsKLSAgICBPd25QdHI8QU5HTEVXZWJL
aXRCcmlkZ2U+IHZhbGlkYXRvciA9IGFkb3B0UHRyKG5ldyBBTkdMRVdlYktpdEJyaWRnZShTSF9F
U1NMX09VVFBVVCwgc2hhZGVyU3BlYykpOwotICAgIFNoQnVpbHRJblJlc291cmNlcyByZXNvdXJj
ZXM7Ci0gICAgU2hJbml0QnVpbHRJblJlc291cmNlcygmcmVzb3VyY2VzKTsKLSAgICB2YWxpZGF0
b3ItPnNldFJlc291cmNlcyhyZXNvdXJjZXMpOwotICAgIHJldHVybiB2YWxpZGF0b3IucmVsZWFz
ZSgpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQ6OnByZXBhcmVDb250ZXh0
SWZOZWVkZWQoSG9zdFdpbmRvdyogaG9zdFdpbmRvdywgYm9vbCBmb3JjZVNvZnR3YXJlUmVuZGVy
aW5nKQotewotICAgIGlmIChtX2NvbnRleHQuZ2V0KCkpCi0gICAgICAgIHJldHVybjsKLQotICAg
IEdyYXBoaWNzQ29udGV4dDNEOjpBdHRyaWJ1dGVzIGF0dHJpYnV0ZXM7Ci0gICAgYXR0cmlidXRl
cy5wcmVzZXJ2ZURyYXdpbmdCdWZmZXIgPSB0cnVlOwotICAgIGF0dHJpYnV0ZXMucHJlbXVsdGlw
bGllZEFscGhhID0gZmFsc2U7Ci0gICAgYXR0cmlidXRlcy5zaGFyZVJlc291cmNlcyA9IHRydWU7
Ci0gICAgYXR0cmlidXRlcy5wcmVmZXJEaXNjcmV0ZUdQVSA9IHRydWU7Ci0KLSAgICBpZiAoZm9y
Y2VTb2Z0d2FyZVJlbmRlcmluZykKLSAgICAgICAgYXR0cmlidXRlcy5mb3JjZVNvZnR3YXJlUmVu
ZGVyZXIgPSB0cnVlOwotCi0gICAgbV9jb250ZXh0ID0gR3JhcGhpY3NDb250ZXh0M0Q6OmNyZWF0
ZShhdHRyaWJ1dGVzLCBob3N0V2luZG93LCBHcmFwaGljc0NvbnRleHQzRDo6UmVuZGVyT2Zmc2Ny
ZWVuKTsKLSAgICBpZiAoIW1fY29udGV4dCkKLSAgICAgICAgcmV0dXJuOwotICAgIG1fY29udGV4
dC0+bWFrZUNvbnRleHRDdXJyZW50KCk7Ci0gICAgbV9jb250ZXh0LT5lbmFibGUoR3JhcGhpY3ND
b250ZXh0M0Q6OkRFUFRIX1RFU1QpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVy
R2xvYmFsQ29udGV4dC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDFlOGY2YmQuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9DdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmgKKysrIC9kZXYvbnVsbApAQCAt
MSw3NyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5j
b3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xE
RVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAq
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1
c3RvbUZpbHRlckdsb2JhbENvbnRleHRfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJHbG9iYWxDb250
ZXh0X2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotI2lu
Y2x1ZGUgIkFOR0xFV2ViS2l0QnJpZGdlLmgiCi0jaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLSNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgSG9z
dFdpbmRvdzsKLWNsYXNzIEdyYXBoaWNzQ29udGV4dDNEOwotCi1jbGFzcyBDdXN0b21GaWx0ZXJH
bG9iYWxDb250ZXh0IHsKLXB1YmxpYzoKLSAgICBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0KCk7
Ci0gICAgfkN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQoKTsKLSAgICAKLSAgICBHcmFwaGljc0Nv
bnRleHQzRCogY29udGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGV4dC5nZXQoKTsgfQotCi0g
ICAgLy8gQ1NTIHNoYWRlcnMgbm90IHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlv
biBzaG91bGQgYmUgdmFsaWRhdGVkIGp1c3QgbGlrZSByZWd1bGFyIFdlYkdMIHNoYWRlcnMuCi0g
ICAgLy8gVGhpcyBBTkdMRSB2YWxpZGF0b3IgdXNlcyB0aGUgU0hfV0VCR0xfU1BFQyBmbGFnLgot
ICAgIEFOR0xFV2ViS2l0QnJpZGdlKiB3ZWJnbFNoYWRlclZhbGlkYXRvcigpOwotCi0gICAgLy8g
Q1NTIHNoYWRlcnMgcmVmZXJlbmNlZCBmcm9tIHRoZSBDU1MgbWl4IGZ1bmN0aW9uIHNob3VsZCBi
ZSB2YWxpZGF0ZWQgc2xpZ2h0bHkgZGlmZmVyZW50bHkgdGhhbiBXZWJHTCBzaGFkZXJzLgotICAg
IC8vIFRoaXMgQU5HTEUgdmFsaWRhdG9yIHVzZXMgdGhlIFNIX0NTU19TSEFERVJTX1NQRUMgZmxh
Zy4KLSAgICAvLyBVbmRlciB0aGlzIGZsYWcsIG1vc3Qgbm90YWJseToKLSAgICAvLyAtIFRoZSAi
Z2xfRnJhZ0NvbG9yIiBidWlsdC1pbiBpcyBub3QgYXZhaWxhYmxlLgotICAgIC8vIC0gSW5zdGVh
ZCwgdGhlICJjc3NfTWl4Q29sb3IiIGFuZCAiY3NzX0NvbG9yTWF0cml4IiBidWlsdC1pbnMgYXJl
IGF2YWlsYWJsZS4KLSAgICAvLyAtIFRoZSAiY3NzXyIgcHJlZml4IGlzIHJlc2VydmVkLgotICAg
IC8vIC0gSW4gdGhlIHRyYW5zbGF0ZWQgc291cmNlIHRoYXQgQU5HTEUgcmV0dXJucywgQU5HTEUg
cmVuYW1lcyB0aGUgYXV0aG9yJ3MgIm1haW4iIGZ1bmN0aW9uIHRvICJjc3NfbWFpbiIuCi0gICAg
Ly8gVGhlIGNvbXBsZXRlIGRldGFpbHMgYXJlIGRvY3VtZW50ZWQgaW4gQU5HTEUvU2hhZGVyTGFu
Zy5oLgotICAgIEFOR0xFV2ViS2l0QnJpZGdlKiBtaXhTaGFkZXJWYWxpZGF0b3IoKTsKLSAgICAK
LSAgICB2b2lkIHByZXBhcmVDb250ZXh0SWZOZWVkZWQoSG9zdFdpbmRvdyosIGJvb2wgZm9yY2VT
b2Z0d2FyZVJlbmRlcmluZyk7Ci1wcml2YXRlOgotICAgIHN0YXRpYyBQYXNzT3duUHRyPEFOR0xF
V2ViS2l0QnJpZGdlPiBjcmVhdGVTaGFkZXJWYWxpZGF0b3IoU2hTaGFkZXJTcGVjKTsKLQotICAg
IFJlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gbV9jb250ZXh0OwotICAgIE93blB0cjxBTkdMRVdl
YktpdEJyaWRnZT4gbV93ZWJnbFNoYWRlclZhbGlkYXRvcjsKLSAgICBPd25QdHI8QU5HTEVXZWJL
aXRCcmlkZ2U+IG1fbWl4U2hhZGVyVmFsaWRhdG9yOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1Mp
Ci0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0X2gKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
ck1lc2guY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZmYwNzg4Li4wMDAwMDAw
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyTWVzaC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw3MiArMCwwIEBACi0vKgotICogQ29weXJp
Z2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJNZXNo
LmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5oIgotI2luY2x1ZGUgIkdy
YXBoaWNzQ29udGV4dDNELmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotQ3VzdG9tRmlsdGVy
TWVzaDo6Q3VzdG9tRmlsdGVyTWVzaChHcmFwaGljc0NvbnRleHQzRCogY29udGV4dCwgdW5zaWdu
ZWQgY29sdW1ucywgdW5zaWduZWQgcm93cywKLSAgICBjb25zdCBGbG9hdFJlY3QmIG1lc2hCb3gs
IEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQotICAgIDogbV9jb250ZXh0KGNvbnRleHQp
Ci0gICAgLCBtX3ZlcnRpY2VzQnVmZmVyT2JqZWN0KDApCi0gICAgLCBtX2VsZW1lbnRzQnVmZmVy
T2JqZWN0KDApCi0gICAgLCBtX21lc2hCb3gobWVzaEJveCkKLSAgICAsIG1fbWVzaFR5cGUobWVz
aFR5cGUpCi17Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvciBnZW5lcmF0b3IoY29sdW1u
cywgcm93cywgbWVzaEJveCwgbWVzaFR5cGUpOwotICAgIG1faW5kaWNlc0NvdW50ID0gZ2VuZXJh
dG9yLmluZGljZXNDb3VudCgpOwotICAgIG1fYnl0ZXNQZXJWZXJ0ZXggPSBnZW5lcmF0b3IuZmxv
YXRzUGVyVmVydGV4KCkgKiBzaXplb2YoZmxvYXQpOyAgICAKLQotICAgIG1fY29udGV4dC0+bWFr
ZUNvbnRleHRDdXJyZW50KCk7Ci0KLSAgICBtX3ZlcnRpY2VzQnVmZmVyT2JqZWN0ID0gbV9jb250
ZXh0LT5jcmVhdGVCdWZmZXIoKTsKLSAgICBtX2NvbnRleHQtPmJpbmRCdWZmZXIoR3JhcGhpY3ND
b250ZXh0M0Q6OkFSUkFZX0JVRkZFUiwgbV92ZXJ0aWNlc0J1ZmZlck9iamVjdCk7Ci0gICAgbV9j
b250ZXh0LT5idWZmZXJEYXRhKEdyYXBoaWNzQ29udGV4dDNEOjpBUlJBWV9CVUZGRVIsIGdlbmVy
YXRvci52ZXJ0aWNlcygpLnNpemUoKSAqIHNpemVvZihmbG9hdCksIGdlbmVyYXRvci52ZXJ0aWNl
cygpLmRhdGEoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OlNUQVRJQ19EUkFXKTsKLSAgICAKLSAgICBt
X2VsZW1lbnRzQnVmZmVyT2JqZWN0ID0gbV9jb250ZXh0LT5jcmVhdGVCdWZmZXIoKTsKLSAgICBt
X2NvbnRleHQtPmJpbmRCdWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkVMRU1FTlRfQVJSQVlfQlVG
RkVSLCBtX2VsZW1lbnRzQnVmZmVyT2JqZWN0KTsKLSAgICBtX2NvbnRleHQtPmJ1ZmZlckRhdGEo
R3JhcGhpY3NDb250ZXh0M0Q6OkVMRU1FTlRfQVJSQVlfQlVGRkVSLCBnZW5lcmF0b3IuaW5kaWNl
cygpLnNpemUoKSAqIHNpemVvZih1aW50MTZfdCksIGdlbmVyYXRvci5pbmRpY2VzKCkuZGF0YSgp
LCBHcmFwaGljc0NvbnRleHQzRDo6U1RBVElDX0RSQVcpOwotfQotCi1DdXN0b21GaWx0ZXJNZXNo
Ojp+Q3VzdG9tRmlsdGVyTWVzaCgpCi17Ci0gICAgbV9jb250ZXh0LT5tYWtlQ29udGV4dEN1cnJl
bnQoKTsKLSAgICBtX2NvbnRleHQtPmRlbGV0ZUJ1ZmZlcihtX3ZlcnRpY2VzQnVmZmVyT2JqZWN0
KTsKLSAgICBtX2NvbnRleHQtPmRlbGV0ZUJ1ZmZlcihtX2VsZW1lbnRzQnVmZmVyT2JqZWN0KTsK
LX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFE
RVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaC5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoLmgKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJiYjNkNWEuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoLmgKKysrIC9kZXYv
bnVsbApAQCAtMSw4MCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aWZuZGVmIEN1c3RvbUZpbHRlck1lc2hfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJNZXNoX2gKLQot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAiRmxvYXRSZWN0LmgiCi0jaW5jbHVk
ZSAiR3JhcGhpY3NUeXBlczNELmgiCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFt
ZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBHcmFwaGljc0NvbnRleHQzRDsKLQotY2xhc3MgQ3Vz
dG9tRmlsdGVyTWVzaCA6IHB1YmxpYyBSZWZDb3VudGVkPEN1c3RvbUZpbHRlck1lc2g+IHsKLXB1
YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJNZXNoPiBjcmVhdGUoR3Jh
cGhpY3NDb250ZXh0M0QqIGNvbnRleHQsIHVuc2lnbmVkIGNvbHMsIHVuc2lnbmVkIHJvd3MsIGNv
bnN0IEZsb2F0UmVjdCYgbWVzaEJveCwgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0g
ICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEN1c3RvbUZpbHRlck1lc2goY29udGV4
dCwgY29scywgcm93cywgbWVzaEJveCwgbWVzaFR5cGUpKTsKLSAgICB9Ci0gICAgfkN1c3RvbUZp
bHRlck1lc2goKTsKLQotICAgIFBsYXRmb3JtM0RPYmplY3QgdmVydGljZXNCdWZmZXJPYmplY3Qo
KSBjb25zdCB7IHJldHVybiBtX3ZlcnRpY2VzQnVmZmVyT2JqZWN0OyB9Ci0gICAgdW5zaWduZWQg
Ynl0ZXNQZXJWZXJ0ZXgoKSBjb25zdCB7IHJldHVybiBtX2J5dGVzUGVyVmVydGV4OyB9Ci0gICAg
Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBlbGVtZW50c0J1ZmZlck9iamVjdCgpIGNvbnN0IHsgcmV0
dXJuIG1fZWxlbWVudHNCdWZmZXJPYmplY3Q7IH0KLSAgICB1bnNpZ25lZCBpbmRpY2VzQ291bnQo
KSBjb25zdCB7IHJldHVybiBtX2luZGljZXNDb3VudDsgfQotICAgIAotICAgIGNvbnN0IEZsb2F0
UmVjdCYgbWVzaEJveCgpIGNvbnN0IHsgcmV0dXJuIG1fbWVzaEJveDsgfQotICAgIEN1c3RvbUZp
bHRlck1lc2hUeXBlIG1lc2hUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoVHlwZTsgfQotCi1w
cml2YXRlOgotICAgIEN1c3RvbUZpbHRlck1lc2goR3JhcGhpY3NDb250ZXh0M0QqLCB1bnNpZ25l
ZCBjb2xzLCB1bnNpZ25lZCByb3dzLCBjb25zdCBGbG9hdFJlY3QmIG1lc2hCb3gsIEN1c3RvbUZp
bHRlck1lc2hUeXBlKTsKLSAgICAKLSAgICBHcmFwaGljc0NvbnRleHQzRCogbV9jb250ZXh0Owot
ICAgIAotICAgIFBsYXRmb3JtM0RPYmplY3QgbV92ZXJ0aWNlc0J1ZmZlck9iamVjdDsKLSAgICB1
bnNpZ25lZCBtX2J5dGVzUGVyVmVydGV4OwotICAgIAotICAgIFBsYXRmb3JtM0RPYmplY3QgbV9l
bGVtZW50c0J1ZmZlck9iamVjdDsKLSAgICB1bnNpZ25lZCBtX2luZGljZXNDb3VudDsKLSAgICAK
LSAgICBGbG9hdFJlY3QgbV9tZXNoQm94OwotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1fbWVz
aFR5cGU7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
Q1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2VuZGlmIC8vIEN1c3RvbUZpbHRl
ck1lc2hfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmls
dGVycy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc3NDY5MTQuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9y
LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDE3MyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERB
TUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpICYmIFVTRSgzRF9HUkFQSElDUykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJNZXNoR2VuZXJh
dG9yLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotI2lmbmRlZiBOREVCVUcKLS8vIFVzZSAi
Y2FsbCAnV2ViQ29yZTo6c19kdW1wQ3VzdG9tRmlsdGVyTWVzaEJ1ZmZlcnMnID0gMSIgaW4gR0RC
IHRvIGFjdGl2YXRlIHByaW50aW5nIG9mIHRoZSBtZXNoIGJ1ZmZlcnMuCi1zdGF0aWMgYm9vbCBz
X2R1bXBDdXN0b21GaWx0ZXJNZXNoQnVmZmVycyA9IGZhbHNlOwotI2VuZGlmCi0KLUN1c3RvbUZp
bHRlck1lc2hHZW5lcmF0b3I6OkN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IodW5zaWduZWQgY29s
dW1ucywgdW5zaWduZWQgcm93cywgY29uc3QgRmxvYXRSZWN0JiBtZXNoQm94LCBDdXN0b21GaWx0
ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAgICA6IG1fbWVzaFR5cGUobWVzaFR5cGUpCi0gICAgLCBt
X3BvaW50cyhjb2x1bW5zICsgMSwgcm93cyArIDEpCi0gICAgLCBtX3RpbGVzKGNvbHVtbnMsIHJv
d3MpCi0gICAgLCBtX3RpbGVTaXplSW5QaXhlbHMobWVzaEJveC53aWR0aCgpIC8gbV90aWxlcy53
aWR0aCgpLCBtZXNoQm94LmhlaWdodCgpIC8gbV90aWxlcy5oZWlnaHQoKSkKLSAgICAsIG1fdGls
ZVNpemVJbkRldmljZVNwYWNlKDEuMGYgLyBtX3RpbGVzLndpZHRoKCksIDEuMGYgLyBtX3RpbGVz
LmhlaWdodCgpKQotICAgICwgbV9tZXNoQm94KG1lc2hCb3gpCi17Ci0gICAgLy8gQnVpbGQgdGhl
IHR3byBidWZmZXJzIG5lZWRlZCB0byBkcmF3IHRyaWFuZ2xlczoKLSAgICAvLyAqIG1fdmVydGlj
ZXMgaGFzIGEgbnVtYmVyIG9mIGZsb2F0IGF0dHJpYnV0ZXMgdGhhdCB3aWxsIGJlIHBhc3NlZCB0
byB0aGUgdmVydGV4IHNoYWRlcgotICAgIC8vIGZvciBlYWNoIGNvbXB1dGVkIHZlcnRleC4gVGhp
cyBudW1iZXIgaXMgY2FsY3VsYXRlZCBpbiBmbG9hdHNQZXJWZXJ0ZXgoKSBiYXNlZCBvbiB0aGUg
bWVzaFR5cGUuCi0gICAgLy8gKiBtX2luZGljZXMgaXMgYSBidWZmZXIgdGhhdCB3aWxsIGhhdmUg
MyBpbmRpY2VzIHBlciB0cmlhbmdsZS4gRWFjaCBpbmRleCB3aWxsIHBvaW50IGluc2lkZQotICAg
IC8vIHRoZSBtX3ZlcnRpY2VzIGJ1ZmZlci4KLSAgICBtX3ZlcnRpY2VzLnJlc2VydmVDYXBhY2l0
eSh2ZXJ0aWNlc0NvdW50KCkgKiBmbG9hdHNQZXJWZXJ0ZXgoKSk7Ci0gICAgbV9pbmRpY2VzLnJl
c2VydmVDYXBhY2l0eShpbmRpY2VzQ291bnQoKSk7Ci0KLSAgICAvLyBCYXNlZCBvbiB0aGUgbWVz
aFR5cGUgdGhlcmUgY2FuIGJlIHR3byB0eXBlcyBvZiBtZXNoZXMuCi0gICAgLy8gKiBhdHRhY2hl
ZDogZWFjaCB0cmlhbmdsZSB1c2VzIHZlcnRpY2VzIGZyb20gdGhlIG5laWdoYm9yIHRyaWFuZ2xl
cy4gVGhpcyBpcyB1c2VmdWwgdG8gc2F2ZSBzb21lIEdQVSBtZW1vcnkKLSAgICAvLyB3aGVuIHRo
ZXJlJ3Mgbm8gbmVlZCB0byBleHBsb2RlIHRoZSB0aWxlcy4KLSAgICAvLyAqIGRldGFjaGVkOiBl
YWNoIHRyaWFuZ2xlIGhhcyBpdHMgb3duIHZlcnRpY2VzLiBUaGlzIG1lYW5zIGVhY2ggdHJpYW5n
bGUgY2FuIGJlIG1vdmVkIGluZGVwZW5kZW50bHkgYW5kIGEgdmVjMwotICAgIC8vIGF0dHJpYnV0
ZSBpcyBwYXNzZWQsIHNvIHRoYXQgZWFjaCB2ZXJ0ZXggY2FuIGJlIHVuaXF1ZWx5IGlkZW50aWZp
ZWQuCi0gICAgaWYgKG1fbWVzaFR5cGUgPT0gTWVzaFR5cGVBdHRhY2hlZCkKLSAgICAgICAgZ2Vu
ZXJhdGVBdHRhY2hlZE1lc2goKTsKLSAgICBlbHNlCi0gICAgICAgIGdlbmVyYXRlRGV0YWNoZWRN
ZXNoKCk7Ci0KLSNpZm5kZWYgTkRFQlVHCi0gICAgaWYgKHNfZHVtcEN1c3RvbUZpbHRlck1lc2hC
dWZmZXJzKQotICAgICAgICBkdW1wQnVmZmVycygpOwotI2VuZGlmCi19Ci0KLXZvaWQgQ3VzdG9t
RmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRkQXR0YWNoZWRNZXNoSW5kZXgoaW50IHF1YWRYLCBpbnQg
cXVhZFksIGludCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGludCB0cmlhbmdsZSkKLXsKLSAg
ICBVTlVTRURfUEFSQU0odHJpYW5nbGUpOwotICAgIG1faW5kaWNlcy5hcHBlbmQoKHF1YWRZICsg
dHJpYW5nbGVZKSAqIG1fcG9pbnRzLndpZHRoKCkgKyAocXVhZFggKyB0cmlhbmdsZVgpKTsKLX0K
LQotdm9pZCBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjpnZW5lcmF0ZUF0dGFjaGVkTWVzaCgp
Ci17Ci0gICAgZm9yIChpbnQgaiA9IDA7IGogPCBtX3BvaW50cy5oZWlnaHQoKTsgKytqKSB7Ci0g
ICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbV9wb2ludHMud2lkdGgoKTsgKytpKQotICAgICAg
ICAgICAgYWRkQXR0YWNoZWRNZXNoVmVydGV4QXR0cmlidXRlcyhpLCBqKTsKLSAgICB9Ci0KLSAg
ICBmb3IgKGludCBqID0gMDsgaiA8IG1fdGlsZXMuaGVpZ2h0KCk7ICsraikgewotICAgICAgICBm
b3IgKGludCBpID0gMDsgaSA8IG1fdGlsZXMud2lkdGgoKTsgKytpKQotICAgICAgICAgICAgYWRk
VGlsZTwmQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRkQXR0YWNoZWRNZXNoSW5kZXg+KGks
IGopOwotICAgIH0KLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjphZGREZXRh
Y2hlZE1lc2hWZXJ0ZXhBbmRJbmRleChpbnQgcXVhZFgsIGludCBxdWFkWSwgaW50IHRyaWFuZ2xl
WCwgaW50IHRyaWFuZ2xlWSwgaW50IHRyaWFuZ2xlKQotewotICAgIGFkZERldGFjaGVkTWVzaFZl
cnRleEF0dHJpYnV0ZXMocXVhZFgsIHF1YWRZLCB0cmlhbmdsZVgsIHRyaWFuZ2xlWSwgdHJpYW5n
bGUpOwotICAgIG1faW5kaWNlcy5hcHBlbmQobV9pbmRpY2VzLnNpemUoKSk7Ci19Ci0KLXZvaWQg
Q3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6Z2VuZXJhdGVEZXRhY2hlZE1lc2goKQotewotICAg
IGZvciAoaW50IGogPSAwOyBqIDwgbV90aWxlcy5oZWlnaHQoKTsgKytqKSB7Ci0gICAgICAgIGZv
ciAoaW50IGkgPSAwOyBpIDwgbV90aWxlcy53aWR0aCgpOyArK2kpCi0gICAgICAgICAgICBhZGRU
aWxlPCZDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjphZGREZXRhY2hlZE1lc2hWZXJ0ZXhBbmRJ
bmRleD4oaSwgaik7Ci0gICAgfQotfQotCi12b2lkIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3I6
OmFkZFBvc2l0aW9uQXR0cmlidXRlKGludCBxdWFkWCwgaW50IHF1YWRZKQotewotICAgIC8vIHZl
YzQgYV9wb3NpdGlvbgotICAgIG1fdmVydGljZXMuYXBwZW5kKG1fdGlsZVNpemVJblBpeGVscy53
aWR0aCgpICogcXVhZFggLSAwLjVmICsgbV9tZXNoQm94LngoKSk7Ci0gICAgbV92ZXJ0aWNlcy5h
cHBlbmQobV90aWxlU2l6ZUluUGl4ZWxzLmhlaWdodCgpICogcXVhZFkgLSAwLjVmICsgbV9tZXNo
Qm94LnkoKSk7Ci0gICAgbV92ZXJ0aWNlcy5hcHBlbmQoMC4wZik7IC8vIHoKLSAgICBtX3ZlcnRp
Y2VzLmFwcGVuZCgxLjBmKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjph
ZGRUZXhDb29yZEF0dHJpYnV0ZShpbnQgcXVhZFgsIGludCBxdWFkWSkKLXsKLSAgICAvLyB2ZWMy
IGFfdGV4Q29vcmQKLSAgICBtX3ZlcnRpY2VzLmFwcGVuZChtX3RpbGVTaXplSW5QaXhlbHMud2lk
dGgoKSAqIHF1YWRYICsgbV9tZXNoQm94LngoKSk7Ci0gICAgbV92ZXJ0aWNlcy5hcHBlbmQobV90
aWxlU2l6ZUluUGl4ZWxzLmhlaWdodCgpICogcXVhZFkgKyBtX21lc2hCb3gueSgpKTsKLX0KLQot
dm9pZCBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjphZGRNZXNoQ29vcmRBdHRyaWJ1dGUoaW50
IHF1YWRYLCBpbnQgcXVhZFkpCi17Ci0gICAgLy8gdmVjMiBhX21lc2hDb29yZAotICAgIG1fdmVy
dGljZXMuYXBwZW5kKG1fdGlsZVNpemVJbkRldmljZVNwYWNlLndpZHRoKCkgKiBxdWFkWCk7Ci0g
ICAgbV92ZXJ0aWNlcy5hcHBlbmQobV90aWxlU2l6ZUluRGV2aWNlU3BhY2UuaGVpZ2h0KCkgKiBx
dWFkWSk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRkVHJpYW5nbGVD
b29yZEF0dHJpYnV0ZShpbnQgcXVhZFgsIGludCBxdWFkWSwgaW50IHRyaWFuZ2xlKQotewotICAg
IC8vIHZlYzMgYV90cmlhbmdsZUNvb3JkCi0gICAgbV92ZXJ0aWNlcy5hcHBlbmQocXVhZFgpOwot
ICAgIG1fdmVydGljZXMuYXBwZW5kKHF1YWRZKTsKLSAgICBtX3ZlcnRpY2VzLmFwcGVuZCh0cmlh
bmdsZSk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRkQXR0YWNoZWRN
ZXNoVmVydGV4QXR0cmlidXRlcyhpbnQgcXVhZFgsIGludCBxdWFkWSkKLXsKLSAgICBhZGRQb3Np
dGlvbkF0dHJpYnV0ZShxdWFkWCwgcXVhZFkpOwotICAgIGFkZFRleENvb3JkQXR0cmlidXRlKHF1
YWRYLCBxdWFkWSk7Ci0gICAgYWRkTWVzaENvb3JkQXR0cmlidXRlKHF1YWRYLCBxdWFkWSk7Ci19
Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvcjo6YWRkRGV0YWNoZWRNZXNoVmVydGV4
QXR0cmlidXRlcyhpbnQgcXVhZFgsIGludCBxdWFkWSwgaW50IHRyaWFuZ2xlWCwgaW50IHRyaWFu
Z2xlWSwgaW50IHRyaWFuZ2xlKQotewotICAgIGFkZEF0dGFjaGVkTWVzaFZlcnRleEF0dHJpYnV0
ZXMocXVhZFggKyB0cmlhbmdsZVgsIHF1YWRZICsgdHJpYW5nbGVZKTsKLSAgICBhZGRUcmlhbmds
ZUNvb3JkQXR0cmlidXRlKHF1YWRYLCBxdWFkWSwgdHJpYW5nbGUpOwotfQotCi0jaWZuZGVmIE5E
RUJVRwotdm9pZCBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yOjpkdW1wQnVmZmVycygpIGNvbnN0
Ci17Ci0gICAgcHJpbnRmKCJNZXNoIGJ1ZmZlcnM6IFBvaW50cy53aWR0aCgpOiAlZCwgUG9pbnRz
LmhlaWdodCgpOiAlZCBtZXNoQm94OiAlZiwgJWYsICVmLCAlZiwgdHlwZTogJXNcbiIsCi0gICAg
ICAgIG1fcG9pbnRzLndpZHRoKCksIG1fcG9pbnRzLmhlaWdodCgpLCBtX21lc2hCb3gueCgpLCBt
X21lc2hCb3gueSgpLCBtX21lc2hCb3gud2lkdGgoKSwgbV9tZXNoQm94LmhlaWdodCgpLAotICAg
ICAgICAobV9tZXNoVHlwZSA9PSBNZXNoVHlwZUF0dGFjaGVkKSA/ICJBdHRhY2hlZCIgOiAiRGV0
YWNoZWQiKTsKLSAgICBwcmludGYoIi0tLVZlcnRleDpcblx0Iik7Ci0gICAgZm9yICh1bnNpZ25l
ZCBpID0gMDsgaSA8IG1fdmVydGljZXMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgcHJpbnRmKCIl
ZiAiLCBtX3ZlcnRpY2VzLmF0KGkpKTsKLSAgICAgICAgaWYgKCEoKGkgKyAxKSAlIGZsb2F0c1Bl
clZlcnRleCgpKSkKLSAgICAgICAgICAgIHByaW50ZigiXG5cdCIpOwotICAgIH0KLSAgICBwcmlu
dGYoIlxuLS0tSW5kaWNlczogIik7Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG1faW5k
aWNlcy5zaXplKCk7ICsraSkKLSAgICAgICAgcHJpbnRmKCIlZCAiLCBtX2luZGljZXMuYXQoaSkp
OwotICAgIHByaW50ZigiXG4iKTsKLX0KLSNlbmRpZgotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggN2Y5YWY2NC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaAorKysgL2Rldi9u
dWxsCkBAIC0xLDEyNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aWZuZGVmIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3JfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJN
ZXNoR2VuZXJhdG9yX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBI
SUNTKQotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29uc3RhbnRzLmgiCi0jaW5jbHVkZSAiQ3Vz
dG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAiRmxvYXRSZWN0LmgiCi0jaW5jbHVkZSA8
c3RkaW8uaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBDdXN0b21GaWx0ZXJNZXNo
R2VuZXJhdG9yIHsKLXB1YmxpYzoKLSAgICAvLyBMaW5lcyBhbmQgY29sdW1ucyBhcmUgdGhlIHZh
bHVlcyBwYXNzZWQgaW4gQ1NTLiBUaGUgcmVzdWx0IGlzIHZlcnRleCBtZXNoIHRoYXQgaGFzICdy
b3dzJyBudW1iZXJzIG9mIHJvd3MKLSAgICAvLyBhbmQgJ2NvbHVtbnMnIG51bWJlciBvZiBjb2x1
bW5zIHdpdGggYSB0b3RhbCBvZiAncm93cyArIDEnICogJ2NvbHVtbnMgKyAxJyB2ZXJ0aWNlcy4K
LSAgICAvLyBNZXNoQm94IGlzIHRoZSBmaWx0ZXJlZCBhcmVhIGNhbGN1bGF0ZWQgZGVmaW5lZCB1
c2luZyB0aGUgYm9yZGVyLWJveCwgcGFkZGluZy1ib3gsIGNvbnRlbnQtYm94IG9yIGZpbHRlci1i
b3gKLSAgICAvLyBhdHRyaWJ1dGVzLiBBIHZhbHVlIG9mICgwLCAwLCAxLCAxKSB3aWxsIGNvdmVy
IHRoZSBlbnRpcmUgb3V0cHV0IHN1cmZhY2UuCi0gICAgQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRv
cih1bnNpZ25lZCBjb2x1bW5zLCB1bnNpZ25lZCByb3dzLCBjb25zdCBGbG9hdFJlY3QmIG1lc2hC
b3gsIEN1c3RvbUZpbHRlck1lc2hUeXBlKTsKLQotICAgIGNvbnN0IFZlY3RvcjxmbG9hdD4mIHZl
cnRpY2VzKCkgY29uc3QgeyByZXR1cm4gbV92ZXJ0aWNlczsgfQotICAgIGNvbnN0IFZlY3Rvcjx1
aW50MTZfdD4mIGluZGljZXMoKSBjb25zdCB7IHJldHVybiBtX2luZGljZXM7IH0KLQotICAgIGNv
bnN0IEludFNpemUmIHBvaW50cygpIGNvbnN0IHsgcmV0dXJuIG1fcG9pbnRzOyB9Ci0gICAgdW5z
aWduZWQgcG9pbnRzQ291bnQoKSBjb25zdCB7IHJldHVybiBtX3BvaW50cy53aWR0aCgpICogbV9w
b2ludHMuaGVpZ2h0KCk7IH0KLQotICAgIGNvbnN0IEludFNpemUmIHRpbGVzKCkgY29uc3QgeyBy
ZXR1cm4gbV90aWxlczsgfQotICAgIHVuc2lnbmVkIHRpbGVzQ291bnQoKSBjb25zdCB7IHJldHVy
biBtX3RpbGVzLndpZHRoKCkgKiBtX3RpbGVzLmhlaWdodCgpOyB9Ci0KLSAgICB1bnNpZ25lZCBp
bmRpY2VzQ291bnQoKSBjb25zdAotICAgIHsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgdHJpYW5n
bGVzUGVyVGlsZSA9IDI7Ci0gICAgICAgIGNvbnN0IHVuc2lnbmVkIGluZGljZXNQZXJUcmlhbmds
ZSA9IDM7Ci0gICAgICAgIHJldHVybiB0aWxlc0NvdW50KCkgKiB0cmlhbmdsZXNQZXJUaWxlICog
aW5kaWNlc1BlclRyaWFuZ2xlOwotICAgIH0KLQotICAgIHVuc2lnbmVkIGZsb2F0c1BlclZlcnRl
eCgpIGNvbnN0Ci0gICAgewotICAgICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgQXR0YWNoZWRN
ZXNoVmVydGV4U2l6ZSA9IFBvc2l0aW9uQXR0cmliU2l6ZSArIFRleEF0dHJpYlNpemUgKyBNZXNo
QXR0cmliU2l6ZTsKLSAgICAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIERldGFjaGVkTWVzaFZl
cnRleFNpemUgPSBBdHRhY2hlZE1lc2hWZXJ0ZXhTaXplICsgVHJpYW5nbGVBdHRyaWJTaXplOwot
ICAgICAgICByZXR1cm4gbV9tZXNoVHlwZSA9PSBNZXNoVHlwZUF0dGFjaGVkID8gQXR0YWNoZWRN
ZXNoVmVydGV4U2l6ZSA6IERldGFjaGVkTWVzaFZlcnRleFNpemU7Ci0gICAgfQotCi0gICAgdW5z
aWduZWQgdmVydGljZXNDb3VudCgpIGNvbnN0Ci0gICAgewotICAgICAgICByZXR1cm4gbV9tZXNo
VHlwZSA9PSBNZXNoVHlwZUF0dGFjaGVkID8gcG9pbnRzQ291bnQoKSA6IGluZGljZXNDb3VudCgp
OwotICAgIH0KLQotcHJpdmF0ZToKLSAgICB0eXBlZGVmIHZvaWQgKEN1c3RvbUZpbHRlck1lc2hH
ZW5lcmF0b3I6OipBZGRUcmlhbmdsZVZlcnRleEZ1bmN0aW9uKShpbnQgcXVhZFgsIGludCBxdWFk
WSwgaW50IHRyaWFuZ2xlWCwgaW50IHRyaWFuZ2xlWSwgaW50IHRyaWFuZ2xlKTsKLQotICAgIHRl
bXBsYXRlIDxBZGRUcmlhbmdsZVZlcnRleEZ1bmN0aW9uIGFkZFRyaWFuZ2xlVmVydGV4PgotICAg
IHZvaWQgYWRkVGlsZShpbnQgcXVhZFgsIGludCBxdWFkWSkKLSAgICB7Ci0gICAgICAgICgoKnRo
aXMpLiooYWRkVHJpYW5nbGVWZXJ0ZXgpKShxdWFkWCwgcXVhZFksIDAsIDAsIDEpOwotICAgICAg
ICAoKCp0aGlzKS4qKGFkZFRyaWFuZ2xlVmVydGV4KSkocXVhZFgsIHF1YWRZLCAxLCAwLCAyKTsK
LSAgICAgICAgKCgqdGhpcykuKihhZGRUcmlhbmdsZVZlcnRleCkpKHF1YWRYLCBxdWFkWSwgMSwg
MSwgMyk7Ci0gICAgICAgICgoKnRoaXMpLiooYWRkVHJpYW5nbGVWZXJ0ZXgpKShxdWFkWCwgcXVh
ZFksIDAsIDAsIDQpOwotICAgICAgICAoKCp0aGlzKS4qKGFkZFRyaWFuZ2xlVmVydGV4KSkocXVh
ZFgsIHF1YWRZLCAxLCAxLCA1KTsKLSAgICAgICAgKCgqdGhpcykuKihhZGRUcmlhbmdsZVZlcnRl
eCkpKHF1YWRYLCBxdWFkWSwgMCwgMSwgNik7Ci0gICAgfQotCi0gICAgdm9pZCBhZGRBdHRhY2hl
ZE1lc2hJbmRleChpbnQgcXVhZFgsIGludCBxdWFkWSwgaW50IHRyaWFuZ2xlWCwgaW50IHRyaWFu
Z2xlWSwgaW50IHRyaWFuZ2xlKTsKLQotICAgIHZvaWQgZ2VuZXJhdGVBdHRhY2hlZE1lc2goKTsK
LQotICAgIHZvaWQgYWRkRGV0YWNoZWRNZXNoVmVydGV4QW5kSW5kZXgoaW50IHF1YWRYLCBpbnQg
cXVhZFksIGludCB0cmlhbmdsZVgsIGludCB0cmlhbmdsZVksIGludCB0cmlhbmdsZSk7Ci0KLSAg
ICB2b2lkIGdlbmVyYXRlRGV0YWNoZWRNZXNoKCk7Ci0gICAgdm9pZCBhZGRQb3NpdGlvbkF0dHJp
YnV0ZShpbnQgcXVhZFgsIGludCBxdWFkWSk7Ci0gICAgdm9pZCBhZGRUZXhDb29yZEF0dHJpYnV0
ZShpbnQgcXVhZFgsIGludCBxdWFkWSk7Ci0gICAgdm9pZCBhZGRNZXNoQ29vcmRBdHRyaWJ1dGUo
aW50IHF1YWRYLCBpbnQgcXVhZFkpOwotICAgIHZvaWQgYWRkVHJpYW5nbGVDb29yZEF0dHJpYnV0
ZShpbnQgcXVhZFgsIGludCBxdWFkWSwgaW50IHRyaWFuZ2xlKTsKLSAgICB2b2lkIGFkZEF0dGFj
aGVkTWVzaFZlcnRleEF0dHJpYnV0ZXMoaW50IHF1YWRYLCBpbnQgcXVhZFkpOwotICAgIHZvaWQg
YWRkRGV0YWNoZWRNZXNoVmVydGV4QXR0cmlidXRlcyhpbnQgcXVhZFgsIGludCBxdWFkWSwgaW50
IHRyaWFuZ2xlWCwgaW50IHRyaWFuZ2xlWSwgaW50IHRyaWFuZ2xlKTsKLQotI2lmbmRlZiBOREVC
VUcKLSAgICB2b2lkIGR1bXBCdWZmZXJzKCkgY29uc3Q7Ci0jZW5kaWYKLQotcHJpdmF0ZToKLSAg
ICBWZWN0b3I8ZmxvYXQ+IG1fdmVydGljZXM7Ci0gICAgVmVjdG9yPHVpbnQxNl90PiBtX2luZGlj
ZXM7Ci0KLSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtX21lc2hUeXBlOwotICAgIEludFNpemUg
bV9wb2ludHM7Ci0gICAgSW50U2l6ZSBtX3RpbGVzOwotICAgIEZsb2F0U2l6ZSBtX3RpbGVTaXpl
SW5QaXhlbHM7Ci0gICAgRmxvYXRTaXplIG1fdGlsZVNpemVJbkRldmljZVNwYWNlOwotICAgIEZs
b2F0UmVjdCBtX21lc2hCb3g7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2VuZGlmIC8v
IEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3JfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTnVt
YmVyUGFyYW1ldGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA5Mzc4NTguLjAw
MDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0
b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDg2ICswLDAgQEAK
LS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KA
nSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0g
KiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyTnVt
YmVyUGFyYW1ldGVyX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyX2gKLQot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJBbmltYXRpb25VdGlsaXRpZXMuaCIK
LSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlIDx3dGYvVmVjdG9y
Lmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyTnVtYmVyUGFy
YW1ldGVyIDogcHVibGljIEN1c3RvbUZpbHRlclBhcmFtZXRlciB7Ci1wdWJsaWM6Ci0gICAgc3Rh
dGljIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyPiBjcmVhdGUoY29uc3Qg
U3RyaW5nJiBuYW1lKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDdXN0b21G
aWx0ZXJOdW1iZXJQYXJhbWV0ZXIobmFtZSkpOwotICAgIH0KLSAgICAKLSAgICB1bnNpZ25lZCBz
aXplKCkgY29uc3QgeyByZXR1cm4gbV9kYXRhLnNpemUoKTsgfQotICAgIGRvdWJsZSB2YWx1ZUF0
KHVuc2lnbmVkIGluZGV4KSBjb25zdCB7IHJldHVybiBtX2RhdGEuYXQoaW5kZXgpOyB9Ci0KLSAg
ICB2b2lkIGFkZFZhbHVlKGRvdWJsZSB2YWx1ZSkgeyBtX2RhdGEuYXBwZW5kKHZhbHVlKTsgfQot
ICAgIAotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+IGJsZW5k
KGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlciogZnJvbSwgZG91YmxlIHByb2dyZXNzLCBjb25z
dCBMYXlvdXRTaXplJikKLSAgICB7Ci0gICAgICAgIGlmICghZnJvbSB8fCAhaXNTYW1lVHlwZSgq
ZnJvbSkpCi0gICAgICAgICAgICByZXR1cm4gdGhpczsKLSAgICAgICAgY29uc3QgQ3VzdG9tRmls
dGVyTnVtYmVyUGFyYW1ldGVyKiBmcm9tTnVtYmVyID0gc3RhdGljX2Nhc3Q8Y29uc3QgQ3VzdG9t
RmlsdGVyTnVtYmVyUGFyYW1ldGVyKj4oZnJvbSk7Ci0gICAgICAgIGlmIChzaXplKCkgIT0gZnJv
bU51bWJlci0+c2l6ZSgpKQotICAgICAgICAgICAgcmV0dXJuIHRoaXM7Ci0gICAgICAgIFJlZlB0
cjxDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXI+IHJlc3VsdCA9IEN1c3RvbUZpbHRlck51bWJl
clBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUoKSk7Ci0gICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBp
IDwgc2l6ZSgpOyArK2kpCi0gICAgICAgICAgICByZXN1bHQtPmFkZFZhbHVlKFdlYkNvcmU6OmJs
ZW5kKGZyb21OdW1iZXItPnZhbHVlQXQoaSksIHZhbHVlQXQoaSksIHByb2dyZXNzKSk7Ci0gICAg
ICAgIHJldHVybiByZXN1bHQucmVsZWFzZSgpOwotICAgIH0KLSAgICAKLSAgICB2aXJ0dWFsIGJv
b2wgb3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXImIG8pIGNvbnN0Ci0gICAg
ewotICAgICAgICBpZiAoIWlzU2FtZVR5cGUobykpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlciogb3RoZXIgPSBzdGF0
aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIqPigmbyk7Ci0gICAgICAg
IHJldHVybiBtX2RhdGEgPT0gb3RoZXItPm1fZGF0YTsKLSAgICB9Ci0gICAgCi1wcml2YXRlOgot
ICAgIEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcihjb25zdCBTdHJpbmcmIG5hbWUpCi0gICAg
ICAgIDogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyKE5VTUJFUiwgbmFtZSkKLSAgICB7Ci0gICAgfQot
ICAgIAotICAgIFZlY3Rvcjxkb3VibGUsIDQ+IG1fZGF0YTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIEN1
c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJhdGlvbi5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlck9wZXJhdGlv
bi5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUwOWE3NmMuLjAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJP
cGVyYXRpb24uY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNzcgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotCi0jaW5jbHVk
ZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3Jh
bS5oIgotI2luY2x1ZGUgIkZpbHRlck9wZXJhdGlvbi5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLUN1c3RvbUZpbHRlck9wZXJhdGlvbjo6Q3VzdG9tRmlsdGVyT3BlcmF0aW9uKFBhc3NSZWZQ
dHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3JhbSwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyTGlzdCYgc29ydGVkUGFyYW1ldGVycywgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1l
c2hDb2x1bW5zKQotICAgIDogRmlsdGVyT3BlcmF0aW9uKENVU1RPTSkKLSAgICAsIG1fcHJvZ3Jh
bShwcm9ncmFtKQotICAgICwgbV9wYXJhbWV0ZXJzKHNvcnRlZFBhcmFtZXRlcnMpCi0gICAgLCBt
X21lc2hSb3dzKG1lc2hSb3dzKQotICAgICwgbV9tZXNoQ29sdW1ucyhtZXNoQ29sdW1ucykKLXsK
LSAgICAvLyBNYWtlIHN1cmUgdGhhdCB0aGUgcGFyYW1ldGVycyBhcmUgYWx3eWFzIHNvcnRlZCBi
eSBuYW1lLiBXZSB1c2UgdGhhdCB0byBtZXJnZSB0d28gQ3VzdG9tRmlsdGVyT3BlcmF0aW9ucyBp
biBhbmltYXRpb25zLgotICAgIEFTU0VSVChtX3BhcmFtZXRlcnMuY2hlY2tBbHBoYWJldGljYWxP
cmRlcigpKTsKLX0KLSAgICAKLUN1c3RvbUZpbHRlck9wZXJhdGlvbjo6fkN1c3RvbUZpbHRlck9w
ZXJhdGlvbigpCi17Ci19Ci0KLVBhc3NSZWZQdHI8RmlsdGVyT3BlcmF0aW9uPiBDdXN0b21GaWx0
ZXJPcGVyYXRpb246OmJsZW5kKGNvbnN0IEZpbHRlck9wZXJhdGlvbiogZnJvbSwgZG91YmxlIHBy
b2dyZXNzLCBjb25zdCBMYXlvdXRTaXplJiBzaXplLCBib29sIGJsZW5kVG9QYXNzdGhyb3VnaCkK
LXsKLSAgICAvLyBGSVhNRTogVGhlcmUncyBubyB3YXkgdG8gZGVjaWRlIHdoYXQgaXMgdGhlICJw
YXNzdGhyb3VnaCBmaWx0ZXIiIGZvciBzaGFkZXJzIHVzaW5nIHRoZSBjdXJyZW50IENTUyBTeW50
YXguCi0gICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg0OTAz
Ci0gICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL0J1Z3MvUHVibGljL3Nob3dfYnVnLmNnaT9pZD0x
Njg2MQotICAgIGlmIChibGVuZFRvUGFzc3Rocm91Z2ggfHwgIWZyb20gfHwgIWZyb20tPmlzU2Ft
ZVR5cGUoKnRoaXMpKQotICAgICAgICByZXR1cm4gdGhpczsKLSAgICAKLSAgICBjb25zdCBDdXN0
b21GaWx0ZXJPcGVyYXRpb24qIGZyb21PcCA9IHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRl
ck9wZXJhdGlvbio+KGZyb20pOwotICAgIGlmIChtX3Byb2dyYW0uZ2V0KCkgIT0gZnJvbU9wLT5t
X3Byb2dyYW0uZ2V0KCkKLSAgICAgICAgfHwgbV9tZXNoUm93cyAhPSBmcm9tT3AtPm1fbWVzaFJv
d3MKLSAgICAgICAgfHwgbV9tZXNoQ29sdW1ucyAhPSBmcm9tT3AtPm1fbWVzaENvbHVtbnMpCi0g
ICAgICAgIHJldHVybiB0aGlzOwotICAgIAotICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3Qg
YW5pbWF0ZWRQYXJhbWV0ZXJzOwotICAgIG1fcGFyYW1ldGVycy5ibGVuZChmcm9tT3AtPm1fcGFy
YW1ldGVycywgcHJvZ3Jlc3MsIHNpemUsIGFuaW1hdGVkUGFyYW1ldGVycyk7Ci0gICAgcmV0dXJu
IEN1c3RvbUZpbHRlck9wZXJhdGlvbjo6Y3JlYXRlKG1fcHJvZ3JhbSwgYW5pbWF0ZWRQYXJhbWV0
ZXJzLCBtX21lc2hSb3dzLCBtX21lc2hDb2x1bW5zKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJPcGVyYXRpb24u
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ0N2M2MDUuLjAwMDAw
MDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21G
aWx0ZXJPcGVyYXRpb24uaAorKysgL2Rldi9udWxsCkBAIC0xLDk2ICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0g
KiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5Z
Ci0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICog
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
LSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YK
LSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uX2gK
LSNkZWZpbmUgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNpbmNsdWRlICJDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJMaXN0LmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgot
I2luY2x1ZGUgIkZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUgIkxheW91dFNpemUuaCIKLQot
bmFtZXNwYWNlIFdlYkNvcmUgewotCi0vLyBDU1MgU2hhZGVycwotCi1jbGFzcyBDdXN0b21GaWx0
ZXJPcGVyYXRpb24gOiBwdWJsaWMgRmlsdGVyT3BlcmF0aW9uIHsKLXB1YmxpYzoKLSAgICBzdGF0
aWMgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJPcGVyYXRpb24+IGNyZWF0ZShQYXNzUmVmUHRyPEN1
c3RvbUZpbHRlclByb2dyYW0+IHByb2dyYW0sIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3QmIHNvcnRlZFBhcmFtZXRlcnMsIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29s
dW1ucykKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVyT3Bl
cmF0aW9uKHByb2dyYW0sIHNvcnRlZFBhcmFtZXRlcnMsIG1lc2hSb3dzLCBtZXNoQ29sdW1ucykp
OwotICAgIH0KLSAgICAKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtKiBwcm9ncmFtKCkgY29uc3Qg
eyByZXR1cm4gbV9wcm9ncmFtLmdldCgpOyB9Ci0gICAgdm9pZCBzZXRQcm9ncmFtKFBhc3NSZWZQ
dHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3JhbSkgeyBtX3Byb2dyYW0gPSBwcm9ncmFtOyB9
Ci0gICAgCi0gICAgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVycygp
IGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1ldGVyczsgfQotICAgIAotICAgIHVuc2lnbmVkIG1lc2hS
b3dzKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoUm93czsgfQotICAgIHVuc2lnbmVkIG1lc2hDb2x1
bW5zKCkgY29uc3QgeyByZXR1cm4gbV9tZXNoQ29sdW1uczsgfQotCi0gICAgQ3VzdG9tRmlsdGVy
TWVzaFR5cGUgbWVzaFR5cGUoKSBjb25zdCB7IHJldHVybiBwcm9ncmFtKCkgPyBwcm9ncmFtKCkt
Pm1lc2hUeXBlKCkgOiBNZXNoVHlwZUF0dGFjaGVkOyB9Ci0gICAgCi0gICAgdmlydHVhbCB+Q3Vz
dG9tRmlsdGVyT3BlcmF0aW9uKCk7Ci0gICAgCi0gICAgdmlydHVhbCBib29sIGFmZmVjdHNPcGFj
aXR5KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotICAgIHZpcnR1YWwgYm9vbCBtb3Zlc1BpeGVs
cygpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KLSAgICB2aXJ0dWFsIGJvb2wgYmxlbmRpbmdOZWVk
c1JlbmRlcmVyU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KLSAgICAKLSAgICB2aXJ0dWFs
IFBhc3NSZWZQdHI8RmlsdGVyT3BlcmF0aW9uPiBibGVuZChjb25zdCBGaWx0ZXJPcGVyYXRpb24q
IGZyb20sIGRvdWJsZSBwcm9ncmVzcywgY29uc3QgTGF5b3V0U2l6ZSYsIGJvb2wgYmxlbmRUb1Bh
c3N0aHJvdWdoID0gZmFsc2UpOwotCi1wcm90ZWN0ZWQ6Ci0gICAgQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4sIGNvbnN0IEN1c3RvbUZpbHRlclBh
cmFtZXRlckxpc3QmLCB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMpOwot
ICAgIAotcHJpdmF0ZToKLSAgICB2aXJ0dWFsIGJvb2wgb3BlcmF0b3I9PShjb25zdCBGaWx0ZXJP
cGVyYXRpb24mIG8pIGNvbnN0Ci0gICAgewotICAgICAgICBpZiAoIWlzU2FtZVR5cGUobykpCi0g
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyT3Bl
cmF0aW9uKiBvdGhlciA9IHN0YXRpY19jYXN0PGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbio+
KCZvKTsKLSAgICAgICAgcmV0dXJuIG1fcHJvZ3JhbS5nZXQoKSA9PSBvdGhlci0+bV9wcm9ncmFt
LmdldCgpCi0gICAgICAgICAgICAmJiBtX21lc2hSb3dzID09IG90aGVyLT5tX21lc2hSb3dzCi0g
ICAgICAgICAgICAmJiBtX21lc2hDb2x1bW5zID09IG90aGVyLT5tX21lc2hDb2x1bW5zCi0gICAg
ICAgICAgICAmJiBtX3BhcmFtZXRlcnMgPT0gb3RoZXItPm1fcGFyYW1ldGVyczsKLSAgICB9Ci0K
LSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gbV9wcm9ncmFtOwotICAgIEN1c3RvbUZp
bHRlclBhcmFtZXRlckxpc3QgbV9wYXJhbWV0ZXJzOwotICAgIAotICAgIHVuc2lnbmVkIG1fbWVz
aFJvd3M7Ci0gICAgdW5zaWduZWQgbV9tZXNoQ29sdW1uczsKLX07Ci0KLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIEN1
c3RvbUZpbHRlck9wZXJhdGlvbl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlci5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQYXJhbWV0ZXIuaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2JhYjJkOC4uMDAwMDAwMAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlci5o
CisrKyAvZGV2L251bGwKQEAgLTEsNzggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
MiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0g
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwot
ICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0g
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0g
KiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0Uu
Ci0gKi8KLQotI2lmbmRlZiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJfaAotI2RlZmluZSBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgPHd0
Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3
dGYvdGV4dC9XVEZTdHJpbmcuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBDdXN0
b21GaWx0ZXJQYXJhbWV0ZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxDdXN0b21GaWx0ZXJQYXJhbWV0
ZXI+IHsKLXB1YmxpYzoKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IG90aGVyIHBhcmFtZXRlcnMg
dHlwZXM6Ci0gICAgLy8gdGV4dHVyZXM6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD03MTQ0MgotICAgIGVudW0gUGFyYW1ldGVyVHlwZSB7Ci0gICAgICAgIEFSUkFZLAot
ICAgICAgICBDT0xPUiwKLSAgICAgICAgTUFUUklYLAotICAgICAgICBOVU1CRVIsCi0gICAgICAg
IFRSQU5TRk9STQotICAgIH07Ci0gICAgCi0gICAgdmlydHVhbCB+Q3VzdG9tRmlsdGVyUGFyYW1l
dGVyKCkgeyB9Ci0gICAgCi0gICAgUGFyYW1ldGVyVHlwZSBwYXJhbWV0ZXJUeXBlKCkgY29uc3Qg
eyByZXR1cm4gbV90eXBlOyB9Ci0gICAgY29uc3QgU3RyaW5nJiBuYW1lKCkgY29uc3QgeyByZXR1
cm4gbV9uYW1lOyB9Ci0gICAgCi0gICAgYm9vbCBpc1NhbWVUeXBlKGNvbnN0IEN1c3RvbUZpbHRl
clBhcmFtZXRlciYgb3RoZXIpIGNvbnN0IHsgcmV0dXJuIHBhcmFtZXRlclR5cGUoKSA9PSBvdGhl
ci5wYXJhbWV0ZXJUeXBlKCk7IH0KLSAgICAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Q3VzdG9t
RmlsdGVyUGFyYW1ldGVyPiBibGVuZChjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIqLCBkb3Vi
bGUgcHJvZ3Jlc3MsIGNvbnN0IExheW91dFNpemUmKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIG9w
ZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyJikgY29uc3QgPSAwOwotICAgIGJv
b2wgb3BlcmF0b3IhPShjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXImIG8pIGNvbnN0IHsgcmV0
dXJuICEoKnRoaXMgPT0gbyk7IH0KLXByb3RlY3RlZDoKLSAgICBDdXN0b21GaWx0ZXJQYXJhbWV0
ZXIoUGFyYW1ldGVyVHlwZSB0eXBlLCBjb25zdCBTdHJpbmcmIG5hbWUpCi0gICAgICAgIDogbV9u
YW1lKG5hbWUpCi0gICAgICAgICwgbV90eXBlKHR5cGUpCi0gICAgewotICAgIH0KLQotcHJpdmF0
ZToKLSAgICBTdHJpbmcgbV9uYW1lOwotICAgIFBhcmFtZXRlclR5cGUgbV90eXBlOwotfTsKLQot
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQot
Ci0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyUGFyYW1ldGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlz
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlclBhcmFtZXRlckxpc3QuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzYz
M2U5Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwxMDQg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9y
YXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJB
UyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAq
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgi
Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyTGlzdC5oIgotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgiCi0jaW5jbHVk
ZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLUN1c3Rv
bUZpbHRlclBhcmFtZXRlckxpc3Q6OkN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QoKQotewotfQot
Ci1DdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0OjpDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0KHNp
emVfdCBzaXplKQotICAgIDogQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdEJhc2Uoc2l6ZSkgCi17
Ci19Ci0KLWJvb2wgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdDo6b3BlcmF0b3I9PShjb25zdCBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBvdGhlcikgY29uc3QKLXsKLSAgICBpZiAoc2l6ZSgp
ICE9IG90aGVyLnNpemUoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIGZvciAoc2l6ZV90
IGkgPSAwOyBpIDwgc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKGF0KGkpLmdldCgpICE9IG90
aGVyLmF0KGkpLmdldCgpIAotICAgICAgICAgICAgJiYgKmF0KGkpLmdldCgpICE9ICpvdGhlci5h
dChpKS5nZXQoKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0gICAgcmV0dXJu
IHRydWU7Ci19Ci0KLWJvb2wgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdDo6Y2hlY2tBbHBoYWJl
dGljYWxPcmRlcigpIGNvbnN0Ci17Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gMTsgaSA8IHNpemUo
KTsgKytpKSB7Ci0gICAgICAgIC8vIEJyZWFrIGZvciBlcXVhbCBvciBub3Qtc29ydGVkIHBhcmFt
ZXRlcnMuCi0gICAgICAgIGlmICghY29kZVBvaW50Q29tcGFyZUxlc3NUaGFuKGF0KGkgLSAxKS0+
bmFtZSgpLCBhdChpKS0+bmFtZSgpKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9
Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdDo6
YmxlbmQoY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgZnJvbUxpc3QsIAotICAgIGRv
dWJsZSBwcm9ncmVzcywgY29uc3QgTGF5b3V0U2l6ZSYgZnJhbWVTaXplLCBDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXJMaXN0JiByZXN1bHRMaXN0KSBjb25zdAotewotICAgIC8vIFRoaXMgbWV0aG9kIGV4
cGVjdHMgYm90aCBsaXN0cyB0byBiZSBzb3J0ZWQgYnkgcGFyYW1ldGVyIG5hbWUgYW5kIHRoZSBy
ZXN1bHQgbGlzdCBpcyBhbHNvIHNvcnRlZC4KLSAgICBBU1NFUlQoY2hlY2tBbHBoYWJldGljYWxP
cmRlcigpKTsKLSAgICBBU1NFUlQoZnJvbUxpc3QuY2hlY2tBbHBoYWJldGljYWxPcmRlcigpKTsK
LSAgICBzaXplX3QgZnJvbUxpc3RJbmRleCA9IDAsIHRvTGlzdEluZGV4ID0gMDsKLSAgICB3aGls
ZSAoZnJvbUxpc3RJbmRleCA8IGZyb21MaXN0LnNpemUoKSAmJiB0b0xpc3RJbmRleCA8IHNpemUo
KSkgewotICAgICAgICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIqIHBhcmFtRnJvbSA9IGZyb21MaXN0
LmF0KGZyb21MaXN0SW5kZXgpLmdldCgpOwotICAgICAgICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIq
IHBhcmFtVG8gPSBhdCh0b0xpc3RJbmRleCkuZ2V0KCk7Ci0gICAgICAgIGlmIChwYXJhbUZyb20t
Pm5hbWUoKSA9PSBwYXJhbVRvLT5uYW1lKCkpIHsKLSAgICAgICAgICAgIHJlc3VsdExpc3QuYXBw
ZW5kKHBhcmFtVG8tPmJsZW5kKHBhcmFtRnJvbSwgcHJvZ3Jlc3MsIGZyYW1lU2l6ZSkpOwotICAg
ICAgICAgICAgKytmcm9tTGlzdEluZGV4OwotICAgICAgICAgICAgKyt0b0xpc3RJbmRleDsKLSAg
ICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9Ci0gICAgICAgIGlmIChjb2RlUG9pbnRDb21w
YXJlTGVzc1RoYW4ocGFyYW1Gcm9tLT5uYW1lKCksIHBhcmFtVG8tPm5hbWUoKSkpIHsKLSAgICAg
ICAgICAgIHJlc3VsdExpc3QuYXBwZW5kKHBhcmFtRnJvbSk7Ci0gICAgICAgICAgICArK2Zyb21M
aXN0SW5kZXg7Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQotICAgICAgICByZXN1
bHRMaXN0LmFwcGVuZChwYXJhbVRvKTsKLSAgICAgICAgKyt0b0xpc3RJbmRleDsKLSAgICB9Ci0g
ICAgZm9yICg7IGZyb21MaXN0SW5kZXggPCBmcm9tTGlzdC5zaXplKCk7ICsrZnJvbUxpc3RJbmRl
eCkKLSAgICAgICAgcmVzdWx0TGlzdC5hcHBlbmQoZnJvbUxpc3QuYXQoZnJvbUxpc3RJbmRleCkp
OwotICAgIGZvciAoOyB0b0xpc3RJbmRleCA8IHNpemUoKTsgKyt0b0xpc3RJbmRleCkKLSAgICAg
ICAgcmVzdWx0TGlzdC5hcHBlbmQoYXQodG9MaXN0SW5kZXgpKTsKLSAgICBBU1NFUlQocmVzdWx0
TGlzdC5jaGVja0FscGhhYmV0aWNhbE9yZGVyKCkpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBhcmFtZXRlckxp
c3QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyUGFyYW1ldGVyTGlzdC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhOWJjMDFm
Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdC5oCisrKyAvZGV2L251bGwKQEAgLTEsNTYgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICog
YXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJBUyBJUyIg
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICog
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRlclBhcmFt
ZXRlckxpc3RfaAotI2RlZmluZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0X2gKLQotI2lmIEVO
QUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJMYXlvdXRTaXplLmgiCi0jaW5jbHVkZSA8d3Rm
L1ZlY3Rvci5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlclBh
cmFtZXRlcjsKLXR5cGVkZWYgVmVjdG9yPFJlZlB0cjxDdXN0b21GaWx0ZXJQYXJhbWV0ZXI+PiBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0QmFzZTsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyTGlzdCA6IHB1YmxpYyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0QmFzZSB7Ci1wdWJsaWM6
Ci0gICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCgpOwotICAgIGV4cGxpY2l0IEN1c3RvbUZp
bHRlclBhcmFtZXRlckxpc3Qoc2l6ZV90KTsKLQotICAgIGJvb2wgY2hlY2tBbHBoYWJldGljYWxP
cmRlcigpIGNvbnN0OwotICAgIHZvaWQgYmxlbmQoY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
TGlzdCYgZnJvbSwgZG91YmxlIHByb2dyZXNzLCBjb25zdCBMYXlvdXRTaXplJiwgQ3VzdG9tRmls
dGVyUGFyYW1ldGVyTGlzdCYgcmVzdWx0TGlzdCkgY29uc3Q7Ci0gICAgYm9vbCBvcGVyYXRvcj09
KGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmKSBjb25zdDsKLX07Ci0KLX0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlm
IC8vIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3RfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3Jh
bS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYyNzY5ZjcuLjAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQ
cm9ncmFtLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDEwMSArMCwwIEBACi0vKgotICogQ29weXJp
Z2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJv
Z3JhbUNsaWVudC5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmgiCi0jaW5j
bHVkZSAiQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oIgotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLUN1c3RvbUZpbHRlclByb2dyYW06OkN1c3RvbUZpbHRlclByb2dyYW0oQ3VzdG9tRmls
dGVyUHJvZ3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhT
ZXR0aW5ncyYgbWl4U2V0dGluZ3MsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQotICAg
IDogbV9wcm9ncmFtVHlwZShwcm9ncmFtVHlwZSkKLSAgICAsIG1fbWl4U2V0dGluZ3MobWl4U2V0
dGluZ3MpCi0gICAgLCBtX21lc2hUeXBlKG1lc2hUeXBlKQotewotICAgIC8vIEtlZXAgdGhlIGNv
bnN0cnVjdG9yIHByb3RlY3RlZCB0byBwcmV2ZW50IGNyZWF0aW5nIHRoaXMgb2JqZWN0IGRpcmVj
dGx5LgotfQotCi1DdXN0b21GaWx0ZXJQcm9ncmFtOjp+Q3VzdG9tRmlsdGVyUHJvZ3JhbSgpCi17
Ci0gICAgLy8gQWxsIHRoZSBjbGllbnRzIHNob3VsZCBrZWVwIGEgcmVmZXJlbmNlIHRvIHRoaXMg
b2JqZWN0LgotICAgIEFTU0VSVChtX2NsaWVudHMuaXNFbXB0eSgpKTsKLX0KLQotdm9pZCBDdXN0
b21GaWx0ZXJQcm9ncmFtOjphZGRDbGllbnQoQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudCogY2xp
ZW50KQotewotICAgIGlmIChtX2NsaWVudHMuaXNFbXB0eSgpKSB7Ci0gICAgICAgIC8vIE5vdGlm
eSB0aGUgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtIHRoYXQgd2Ugbm93IGhhdmUgYXQgbGVhc3Qg
YSBjbGllbnQKLSAgICAgICAgLy8gYW5kIHRoZSBsb2FkaW5nIGNhbiBiZWdpbi4KLSAgICAgICAg
Ly8gTm90ZTogSWYgdGhlIHNoYWRlciBpcyBhbHJlYWR5IGNhY2hlZCB0aGUgZmlyc3QgY2xpZW50
IHdpbGwgYmUgbm90aWZpZWQsCi0gICAgICAgIC8vIGV2ZW4gaWYgdGhlIGZpbHRlciB3YXMgYWxy
ZWFkeSBidWlsdC4gQWRkIHRoZSBjbGllbnQgb25seSBhZnRlciBub3RpZnlpbmcKLSAgICAgICAg
Ly8gdGhlIGNhY2hlIGFib3V0IHRoZW0sIHNvIHRoYXQgd2UgYXZvaWQgYSB1c2VsZXNzIHJlY3Jl
YXRpb24gb2YgdGhlIGZpbHRlcnMgY2hhaW4uCi0gICAgICAgIHdpbGxIYXZlQ2xpZW50cygpOwot
ICAgIH0KLSAgICBtX2NsaWVudHMuYWRkKGNsaWVudCk7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVy
UHJvZ3JhbTo6cmVtb3ZlQ2xpZW50KEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQqIGNsaWVudCkK
LXsKLSAgICBtX2NsaWVudHMucmVtb3ZlKGNsaWVudCk7Ci0gICAgaWYgKG1fY2xpZW50cy5pc0Vt
cHR5KCkpIHsKLSAgICAgICAgLy8gV2UgaGF2ZSBubyBjbGllbnRzIGFueW1vcmUsIHRoZSBjYWNo
ZWQgcmVzb3VyY2VzIGNhbiBiZSBwdXJnZWQgZnJvbSBtZW1vcnkuCi0gICAgICAgIGRpZFJlbW92
ZUxhc3RDbGllbnQoKTsKLSAgICB9Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUHJvZ3JhbTo6bm90
aWZ5Q2xpZW50cygpCi17Ci0gICAgZm9yIChDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50TGlzdDo6
aXRlcmF0b3IgaXRlciA9IG1fY2xpZW50cy5iZWdpbigpLCBlbmQgPSBtX2NsaWVudHMuZW5kKCk7
IGl0ZXIgIT0gZW5kOyArK2l0ZXIpCi0gICAgICAgIGl0ZXItPmtleS0+bm90aWZ5Q3VzdG9tRmls
dGVyUHJvZ3JhbUxvYWRlZCh0aGlzKTsKLX0KLQotQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8gQ3Vz
dG9tRmlsdGVyUHJvZ3JhbTo6cHJvZ3JhbUluZm8oKSBjb25zdAotewotICAgIEFTU0VSVChpc0xv
YWRlZCgpKTsKLSAgICByZXR1cm4gQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8odmVydGV4U2hhZGVy
U3RyaW5nKCksIGZyYWdtZW50U2hhZGVyU3RyaW5nKCksIG1fcHJvZ3JhbVR5cGUsIG1fbWl4U2V0
dGluZ3MsIG1fbWVzaFR5cGUpOwotfQotCi1QYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRl
ZFByb2dyYW0+IEN1c3RvbUZpbHRlclByb2dyYW06OnZhbGlkYXRlZFByb2dyYW0oKQotewotICAg
IHJldHVybiBtX3ZhbGlkYXRlZFByb2dyYW07Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUHJvZ3Jh
bTo6c2V0VmFsaWRhdGVkUHJvZ3JhbShQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFBy
b2dyYW0+IHZhbGlkYXRlZFByb2dyYW0pCi17Ci0gICAgbV92YWxpZGF0ZWRQcm9ncmFtID0gdmFs
aWRhdGVkUHJvZ3JhbTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotI2VuZGlmIC8vIEVO
QUJMRShDU1NfU0hBREVSUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtLmgKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IGFkODk2NWMuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtLmgKKysrIC9kZXYv
bnVsbApAQCAtMSw5OSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aWZuZGVmIEN1c3RvbUZpbHRlclByb2dyYW1faAotI2RlZmluZSBDdXN0b21GaWx0ZXJQcm9ncmFt
X2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBy
b2dyYW1JbmZvLmgiCi0KLSNpbmNsdWRlIDx3dGYvSGFzaENvdW50ZWRTZXQuaD4KLSNpbmNsdWRl
IDx3dGYvUmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgotCi1u
YW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEdyYXBoaWNzQ29udGV4dDNEOwotY2xhc3MgQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUNsaWVudDsKLWNsYXNzIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dy
YW07Ci0KLS8vIFRoaXMgaXMgdGhlIGJhc2UgY2xhc3MgZm9yIHRoZSBTdHlsZUN1c3RvbUZpbHRl
clByb2dyYW0gY2xhc3Mgd2hpY2gga25vd3MgaG93IHRvIGtlZXAKLS8vIHJlZmVyZW5jZXMgdG8g
dGhlIGNhY2hlZCBzaGFkZXJzLgotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbTogcHVibGljIFJl
ZkNvdW50ZWQ8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gewotcHVibGljOgotICAgIHZpcnR1YWwgfkN1
c3RvbUZpbHRlclByb2dyYW0oKTsKLQotICAgIHZpcnR1YWwgYm9vbCBpc0xvYWRlZCgpIGNvbnN0
ID0gMDsKLQotICAgIHZvaWQgYWRkQ2xpZW50KEN1c3RvbUZpbHRlclByb2dyYW1DbGllbnQqKTsK
LSAgICB2b2lkIHJlbW92ZUNsaWVudChDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50Kik7Ci0gICAg
Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8gcHJvZ3JhbUluZm8oKSBjb25zdDsKLQotICAg
IHZpcnR1YWwgU3RyaW5nIHZlcnRleFNoYWRlclN0cmluZygpIGNvbnN0ID0gMDsKLSAgICB2aXJ0
dWFsIFN0cmluZyBmcmFnbWVudFNoYWRlclN0cmluZygpIGNvbnN0ID0gMDsKLSAgICBDdXN0b21G
aWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fcHJvZ3JhbVR5
cGU7IH0KLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MgbWl4U2V0dGluZ3MoKSBj
b25zdCB7IHJldHVybiBtX21peFNldHRpbmdzOyB9Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUg
bWVzaFR5cGUoKSBjb25zdCB7IHJldHVybiBtX21lc2hUeXBlOyB9Ci0KLSAgICBQYXNzUmVmUHRy
PEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+IHZhbGlkYXRlZFByb2dyYW0oKTsKLSAgICB2
b2lkIHNldFZhbGlkYXRlZFByb2dyYW0oUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtPik7Ci0KLXByb3RlY3RlZDoKLSAgICAvLyBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0g
Y2FuIG5vdGlmeSB0aGUgY2xpZW50cyB0aGF0IHRoZSBjYWNoZWQgcmVzb3VyY2VzIGFyZQotICAg
IC8vIGxvYWRlZCBhbmQgaXQgaXMgcmVhZHkgdG8gY3JlYXRlIEN1c3RvbUZpbHRlckNvbXBpbGVk
UHJvZ3JhbSBvYmplY3RzLgotICAgIHZvaWQgbm90aWZ5Q2xpZW50cygpOwotCi0gICAgdmlydHVh
bCB2b2lkIHdpbGxIYXZlQ2xpZW50cygpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVtb3Zl
TGFzdENsaWVudCgpID0gMDsKLQotICAgIC8vIEtlZXAgdGhlIGNvbnN0cnVjdG9yIHByb3RlY3Rl
ZCB0byBwcmV2ZW50IGNyZWF0aW5nIHRoaXMgb2JqZWN0IGRpcmVjdGx5LgotICAgIEN1c3RvbUZp
bHRlclByb2dyYW0oQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclBy
b2dyYW1NaXhTZXR0aW5ncyYsIEN1c3RvbUZpbHRlck1lc2hUeXBlKTsKLQotcHJpdmF0ZToKLSAg
ICAvLyBDdXN0b21GaWx0ZXJQcm9ncmFtcyBhcmUgdW5pcXVlIGNvbWJpbmF0aW9ucyBvZiBzaGFk
ZXJzIGFuZCBjYW4gYmUgCi0gICAgLy8gY29tcGFyZWQgdXNpbmcganVzdCB0aGUgcG9pbnRlciB2
YWx1ZSBpbnN0ZWFkLgotICAgIC8vIFRoZXNlIHdpbGwgY2F0Y2ggYW55b25lIGRvaW5nIGEgdmFs
dWUgZXF1YWwgY29tcGFyaXNvbi4KLSAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmls
dGVyUHJvZ3JhbSYpIGNvbnN0OwotICAgIGJvb2wgb3BlcmF0b3IhPShjb25zdCBDdXN0b21GaWx0
ZXJQcm9ncmFtJikgY29uc3Q7Ci0KLSAgICB0eXBlZGVmIEhhc2hDb3VudGVkU2V0PEN1c3RvbUZp
bHRlclByb2dyYW1DbGllbnQqPiBDdXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50TGlzdDsKLSAgICBD
dXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50TGlzdCBtX2NsaWVudHM7Ci0gICAgQ3VzdG9tRmlsdGVy
UHJvZ3JhbVR5cGUgbV9wcm9ncmFtVHlwZTsKLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0
dGluZ3MgbV9taXhTZXR0aW5nczsKLSAgICBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtX21lc2hUeXBl
OwotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiBtX3ZhbGlkYXRlZFBy
b2dyYW07Ci19OwotCi19Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9D
dXN0b21GaWx0ZXJQcm9ncmFtQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggM2IwYjdjMC4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1DbGllbnQuaAorKysgL2Rl
di9udWxsCkBAIC0xLDUyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUg
U3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0g
KiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0K
LSNpZm5kZWYgQ3VzdG9tRmlsdGVyUHJvZ3JhbUNsaWVudF9oCi0jZGVmaW5lIEN1c3RvbUZpbHRl
clByb2dyYW1DbGllbnRfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi1uYW1lc3BhY2Ug
V2ViQ29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZpbHRlclByb2dyYW07Ci0KLWNsYXNzIEN1c3RvbUZp
bHRlclByb2dyYW1DbGllbnQgewotcHVibGljOgotICAgIHZpcnR1YWwgfkN1c3RvbUZpbHRlclBy
b2dyYW1DbGllbnQoKQotICAgIHsKLSAgICB9Ci0gICAgCi0gICAgdmlydHVhbCB2b2lkIG5vdGlm
eUN1c3RvbUZpbHRlclByb2dyYW1Mb2FkZWQoQ3VzdG9tRmlsdGVyUHJvZ3JhbSopID0gMDsKLX07
Ci0KLX0KLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIEN1c3Rv
bUZpbHRlclByb2dyYW1DbGllbnRfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1JbmZv
LmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZGRhYjlhNy4uMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclBy
b2dyYW1JbmZvLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDEwOSArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoK
LSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICog
ICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0g
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0g
KiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUo
Q1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLQotI2lu
Y2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFz
aC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLXN0YXRpYyB1bnNpZ25lZCBoYXNoUG9zc2li
bHlOdWxsU3RyaW5nKGNvbnN0IFN0cmluZyYgc3RyaW5nKQotewotICAgIHJldHVybiBzdHJpbmcu
aXNOdWxsKCkgPyAwIDogRGVmYXVsdEhhc2g8U3RyaW5nPjo6SGFzaDo6aGFzaChzdHJpbmcpOwot
fQotCi1DdXN0b21GaWx0ZXJQcm9ncmFtSW5mbzo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8oKQot
ewotfQotCi1ib29sIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvOjppc0VtcHR5VmFsdWUoKSBjb25z
dCAKLXsgCi0gICAgcmV0dXJuIG1fdmVydGV4U2hhZGVyU3RyaW5nLmlzTnVsbCgpIAotICAgICAg
ICAmJiBtX2ZyYWdtZW50U2hhZGVyU3RyaW5nLmlzTnVsbCgpOwotfQotCi1DdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mbzo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8oV1RGOjpIYXNoVGFibGVEZWxldGVk
VmFsdWVUeXBlKQotICAgIDogbV92ZXJ0ZXhTaGFkZXJTdHJpbmcoV1RGOjpIYXNoVGFibGVEZWxl
dGVkVmFsdWUpCi0gICAgLCBtX2ZyYWdtZW50U2hhZGVyU3RyaW5nKFdURjo6SGFzaFRhYmxlRGVs
ZXRlZFZhbHVlKQotewotfQotCi1ib29sIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvOjppc0hhc2hU
YWJsZURlbGV0ZWRWYWx1ZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fdmVydGV4U2hhZGVyU3Ry
aW5nLmlzSGFzaFRhYmxlRGVsZXRlZFZhbHVlKCkgCi0gICAgICAgICYmIG1fZnJhZ21lbnRTaGFk
ZXJTdHJpbmcuaXNIYXNoVGFibGVEZWxldGVkVmFsdWUoKTsKLX0KLQotQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm86OkN1c3RvbUZpbHRlclByb2dyYW1JbmZvKGNvbnN0IFN0cmluZyYgdmVydGV4U2hh
ZGVyLCBjb25zdCBTdHJpbmcmIGZyYWdtZW50U2hhZGVyLCBDdXN0b21GaWx0ZXJQcm9ncmFtVHlw
ZSBwcm9ncmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzJiBtaXhT
ZXR0aW5ncywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAgOiBtX3ZlcnRleFNo
YWRlclN0cmluZyh2ZXJ0ZXhTaGFkZXIpCi0gICAgLCBtX2ZyYWdtZW50U2hhZGVyU3RyaW5nKGZy
YWdtZW50U2hhZGVyKQotICAgICwgbV9wcm9ncmFtVHlwZShwcm9ncmFtVHlwZSkKLSAgICAsIG1f
bWl4U2V0dGluZ3MobWl4U2V0dGluZ3MpCi0gICAgLCBtX21lc2hUeXBlKG1lc2hUeXBlKQotewot
ICAgIC8vIEF0IGxlYXN0IG9uZSBvZiB0aGUgc2hhZGVycyBuZWVkcyB0byBiZSBub24tbnVsbC4K
LSAgICBBU1NFUlQoIW1fdmVydGV4U2hhZGVyU3RyaW5nLmlzTnVsbCgpIHx8ICFtX2ZyYWdtZW50
U2hhZGVyU3RyaW5nLmlzTnVsbCgpKTsKLX0KLQotdW5zaWduZWQgQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUluZm86Omhhc2goKSBjb25zdAotewotICAgIC8vIEF0IGxlYXN0IG9uZSBvZiB0aGUgc2hhZGVy
cyBuZWVkcyB0byBiZSBub24tbnVsbC4KLSAgICBBU1NFUlQoIW1fdmVydGV4U2hhZGVyU3RyaW5n
LmlzTnVsbCgpIHx8ICFtX2ZyYWdtZW50U2hhZGVyU3RyaW5nLmlzTnVsbCgpKTsKLQotICAgIGJv
b2wgYmxlbmRzRWxlbWVudFRleHR1cmUgPSAobV9wcm9ncmFtVHlwZSA9PSBQUk9HUkFNX1RZUEVf
QkxFTkRTX0VMRU1FTlRfVEVYVFVSRSk7Ci0gICAgdWludHB0cl90IGhhc2hDb2Rlc1s2XSA9IHsK
LSAgICAgICAgaGFzaFBvc3NpYmx5TnVsbFN0cmluZyhtX3ZlcnRleFNoYWRlclN0cmluZyksCi0g
ICAgICAgIGhhc2hQb3NzaWJseU51bGxTdHJpbmcobV9mcmFnbWVudFNoYWRlclN0cmluZyksCi0g
ICAgICAgIGJsZW5kc0VsZW1lbnRUZXh0dXJlLAotICAgICAgICBzdGF0aWNfY2FzdDx1aW50cHRy
X3Q+KGJsZW5kc0VsZW1lbnRUZXh0dXJlID8gbV9taXhTZXR0aW5ncy5ibGVuZE1vZGUgOiAwKSwK
LSAgICAgICAgc3RhdGljX2Nhc3Q8dWludHB0cl90PihibGVuZHNFbGVtZW50VGV4dHVyZSA/IG1f
bWl4U2V0dGluZ3MuY29tcG9zaXRlT3BlcmF0b3IgOiAwKSwKLSAgICAgICAgbV9tZXNoVHlwZQot
ICAgIH07Ci0gICAgcmV0dXJuIFN0cmluZ0hhc2hlcjo6aGFzaE1lbW9yeTxzaXplb2YoaGFzaENv
ZGVzKT4oJmhhc2hDb2Rlcyk7Ci19Ci0KLWJvb2wgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm86Om9w
ZXJhdG9yPT0oY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mIG8pIGNvbnN0IAotewotICAg
IEFTU0VSVCghaXNIYXNoVGFibGVEZWxldGVkVmFsdWUoKSk7Ci0gICAgQVNTRVJUKCFvLmlzSGFz
aFRhYmxlRGVsZXRlZFZhbHVlKCkpOwotCi0gICAgcmV0dXJuIG1fcHJvZ3JhbVR5cGUgPT0gby5t
X3Byb2dyYW1UeXBlCi0gICAgICAgICYmIChtX3Byb2dyYW1UeXBlICE9IFBST0dSQU1fVFlQRV9C
TEVORFNfRUxFTUVOVF9URVhUVVJFIHx8IG1fbWl4U2V0dGluZ3MgPT0gby5tX21peFNldHRpbmdz
KQotICAgICAgICAmJiBtX21lc2hUeXBlID09IG8ubV9tZXNoVHlwZQotICAgICAgICAmJiBtX3Zl
cnRleFNoYWRlclN0cmluZyA9PSBvLm1fdmVydGV4U2hhZGVyU3RyaW5nCi0gICAgICAgICYmIG1f
ZnJhZ21lbnRTaGFkZXJTdHJpbmcgPT0gby5tX2ZyYWdtZW50U2hhZGVyU3RyaW5nOwotfQotCi19
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3Rv
bUZpbHRlclByb2dyYW1JbmZvLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0N1c3RvbUZpbHRlclByb2dyYW1JbmZvLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDFlYjY4ZjIuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5oCisrKyAvZGV2L251bGwKQEAg
LTEsMTExICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJ
bmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIu
Ci0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhP
TERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgot
ICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYg
Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm9faAotI2RlZmluZSBDdXN0b21GaWx0ZXJQcm9ncmFtSW5m
b19oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyQ29u
c3RhbnRzLmgiCi0jaW5jbHVkZSAiR3JhcGhpY3NUeXBlcy5oIgotCi0jaW5jbHVkZSA8d3RmL0hh
c2hUcmFpdHMuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KLQotbmFtZXNwYWNl
IFdlYkNvcmUgewotCi0KLXN0cnVjdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3Mgewot
ICAgIEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncygpCi0gICAgICAgIDogYmxlbmRNb2Rl
KEJsZW5kTW9kZU5vcm1hbCkKLSAgICAgICAgLCBjb21wb3NpdGVPcGVyYXRvcihDb21wb3NpdGVT
b3VyY2VBdG9wKQotICAgIHsKLSAgICB9Ci0gICAgCi0gICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0
IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5ncyYgbykgY29uc3QKLSAgICB7Ci0gICAgICAg
IHJldHVybiBibGVuZE1vZGUgPT0gby5ibGVuZE1vZGUgJiYgY29tcG9zaXRlT3BlcmF0b3IgPT0g
by5jb21wb3NpdGVPcGVyYXRvcjsKLSAgICB9Ci0gICAgCi0gICAgQmxlbmRNb2RlIGJsZW5kTW9k
ZTsKLSAgICBDb21wb3NpdGVPcGVyYXRvciBjb21wb3NpdGVPcGVyYXRvcjsKLX07Ci0KLS8vIEN1
c3RvbUZpbHRlclByb2dyYW1JbmZvIGlzIHRoZSBrZXkgdXNlZCB0byBsaW5rIEN1c3RvbUZpbHRl
clByb2dyYW0gd2l0aCBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uCi0vLyBJdCBjYW4gYmUg
dXNlZCBhcyBhIGtleSBpbiBhIEhhc2hNYXAsIHdpdGggdGhlIG5vdGUgdGhhdCBhdCBsZWFzdCBv
bmUgb2YgU3RyaW5ncyBuZWVkcyB0byBiZSBub24tbnVsbC4gCi0vLyBOdWxsIHN0cmluZ3MgYXJl
IHBsYWNlaG9sZGVycyBmb3IgdGhlIGRlZmF1bHQgc2hhZGVyLgotY2xhc3MgQ3VzdG9tRmlsdGVy
UHJvZ3JhbUluZm8gewotcHVibGljOgotICAgIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvKGNvbnN0
IFN0cmluZyYsIGNvbnN0IFN0cmluZyYsIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlLCBjb25zdCBD
dXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSk7Ci0K
LSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbygpOwotICAgIGJvb2wgaXNFbXB0eVZhbHVlKCkg
Y29uc3Q7Ci0KLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyhXVEY6Okhhc2hUYWJsZURlbGV0
ZWRWYWx1ZVR5cGUpOwotICAgIGJvb2wgaXNIYXNoVGFibGVEZWxldGVkVmFsdWUoKSBjb25zdDsK
LSAgICAKLSAgICB1bnNpZ25lZCBoYXNoKCkgY29uc3Q7Ci0gICAgYm9vbCBvcGVyYXRvcj09KGNv
bnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJikgY29uc3Q7Ci0KLSAgICBjb25zdCBTdHJpbmcm
IHZlcnRleFNoYWRlclN0cmluZygpIGNvbnN0IHsgcmV0dXJuIG1fdmVydGV4U2hhZGVyU3RyaW5n
OyB9Ci0gICAgY29uc3QgU3RyaW5nJiBmcmFnbWVudFNoYWRlclN0cmluZygpIGNvbnN0IHsgcmV0
dXJuIG1fZnJhZ21lbnRTaGFkZXJTdHJpbmc7IH0KLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtVHlw
ZSBwcm9ncmFtVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fcHJvZ3JhbVR5cGU7IH0KLSAgICBjb25z
dCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG1peFNldHRpbmdzKCkgY29uc3QgeyBy
ZXR1cm4gbV9taXhTZXR0aW5nczsgfQotICAgIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBl
KCkgY29uc3QgeyByZXR1cm4gbV9tZXNoVHlwZTsgfQotcHJpdmF0ZToKLSAgICBTdHJpbmcgbV92
ZXJ0ZXhTaGFkZXJTdHJpbmc7Ci0gICAgU3RyaW5nIG1fZnJhZ21lbnRTaGFkZXJTdHJpbmc7Ci0g
ICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbVR5cGUgbV9wcm9ncmFtVHlwZTsKLSAgICBDdXN0b21GaWx0
ZXJQcm9ncmFtTWl4U2V0dGluZ3MgbV9taXhTZXR0aW5nczsKLSAgICBDdXN0b21GaWx0ZXJNZXNo
VHlwZSBtX21lc2hUeXBlOwotfTsKLQotc3RydWN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvSGFz
aCB7Ci0gICAgc3RhdGljIHVuc2lnbmVkIGhhc2goY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUlu
Zm8mIHByb2dyYW1JbmZvKSB7IHJldHVybiBwcm9ncmFtSW5mby5oYXNoKCk7IH0KLSAgICBzdGF0
aWMgYm9vbCBlcXVhbChjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYgYSwgY29uc3QgQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUluZm8mIGIpIHsgcmV0dXJuIGEgPT0gYjsgfQotICAgIHN0YXRpYyBj
b25zdCBib29sIHNhZmVUb0NvbXBhcmVUb0VtcHR5T3JEZWxldGVkID0gZmFsc2U7Ci19OwotCi1z
dHJ1Y3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm9IYXNoVHJhaXRzIDogV1RGOjpTaW1wbGVDbGFz
c0hhc2hUcmFpdHM8Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8+IHsKLSAgICBzdGF0aWMgY29uc3Qg
Ym9vbCBoYXNJc0VtcHR5VmFsdWVGdW5jdGlvbiA9IHRydWU7Ci0gICAgc3RhdGljIGJvb2wgaXNF
bXB0eVZhbHVlKGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBpbmZvKSB7IHJldHVybiBp
bmZvLmlzRW1wdHlWYWx1ZSgpOyB9Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLW5h
bWVzcGFjZSBXVEYgewotCi10ZW1wbGF0ZTw+IHN0cnVjdCBIYXNoVHJhaXRzPFdlYkNvcmU6OkN1
c3RvbUZpbHRlclByb2dyYW1JbmZvPiA6IFdlYkNvcmU6OkN1c3RvbUZpbHRlclByb2dyYW1JbmZv
SGFzaFRyYWl0cyB7IH07Ci10ZW1wbGF0ZTw+IHN0cnVjdCBEZWZhdWx0SGFzaDxXZWJDb3JlOjpD
dXN0b21GaWx0ZXJQcm9ncmFtSW5mbz4geyAKLSAgICB0eXBlZGVmIFdlYkNvcmU6OkN1c3RvbUZp
bHRlclByb2dyYW1JbmZvSGFzaCBIYXNoOyAKLX07Ci0KLX0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0KLSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mb19oCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRl
clJlbmRlcmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyUmVuZGVyZXIuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2
MmVkMzkzLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvQ3VzdG9tRmlsdGVyUmVuZGVyZXIuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMzM1ICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0
ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lz
dGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTIgQ29tcGFueSAxMDAsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
LSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0Uo
M0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCIKLQotI2luY2x1
ZGUgIkN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVy
Q29sb3JQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0u
aCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNpbmNsdWRlICJDdXN0b21G
aWx0ZXJNZXNoLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyLmgiCi0j
aW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVy
VHJhbnNmb3JtUGFyYW1ldGVyLmgiCi0jaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0M0QuaCIKLSNp
bmNsdWRlICJUcmFuc2Zvcm1hdGlvbk1hdHJpeC5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0K
LXN0YXRpYyB2b2lkIG9ydGhvZ29uYWxQcm9qZWN0aW9uTWF0cml4KFRyYW5zZm9ybWF0aW9uTWF0
cml4JiBtYXRyaXgsIGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCBib3R0b20sIGZsb2F0
IHRvcCkKLXsKLSAgICBBU1NFUlQobWF0cml4LmlzSWRlbnRpdHkoKSk7Ci0KLSAgICBmbG9hdCBk
ZWx0YVggPSByaWdodCAtIGxlZnQ7Ci0gICAgZmxvYXQgZGVsdGFZID0gdG9wIC0gYm90dG9tOwot
ICAgIGlmICghZGVsdGFYIHx8ICFkZWx0YVkpCi0gICAgICAgIHJldHVybjsKLSAgICBtYXRyaXgu
c2V0TTExKDIuMGYgLyBkZWx0YVgpOwotICAgIG1hdHJpeC5zZXRNNDEoLShyaWdodCArIGxlZnQp
IC8gZGVsdGFYKTsKLSAgICBtYXRyaXguc2V0TTIyKDIuMGYgLyBkZWx0YVkpOwotICAgIG1hdHJp
eC5zZXRNNDIoLSh0b3AgKyBib3R0b20pIC8gZGVsdGFZKTsKLQotICAgIC8vIFVzZSBiaWcgZW5v
dWdoIG5lYXIvZmFyIHZhbHVlcywgc28gdGhhdCBzaW1wbGUgcm90YXRpb25zIG9mIHJhdGhlciBs
YXJnZSBvYmplY3RzIHdpbGwgbm90Ci0gICAgLy8gZ2V0IGNsaXBwZWQuIDEwMDAwIHNob3VsZCBj
b3ZlciBtb3N0IG9mIHRoZSBzY3JlZW4gcmVzb2x1dGlvbnMuCi0gICAgY29uc3QgZmxvYXQgZmFy
VmFsdWUgPSAxMDAwMDsKLSAgICBjb25zdCBmbG9hdCBuZWFyVmFsdWUgPSAtMTAwMDA7Ci0gICAg
bWF0cml4LnNldE0zMygtMi4wZiAvIChmYXJWYWx1ZSAtIG5lYXJWYWx1ZSkpOwotICAgIG1hdHJp
eC5zZXRNNDMoLSAoZmFyVmFsdWUgKyBuZWFyVmFsdWUpIC8gKGZhclZhbHVlIC0gbmVhclZhbHVl
KSk7Ci0gICAgbWF0cml4LnNldE00NCgxLjBmKTsKLX0KLQotUGFzc1JlZlB0cjxDdXN0b21GaWx0
ZXJSZW5kZXJlcj4gQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmNyZWF0ZShQYXNzUmVmUHRyPEdyYXBo
aWNzQ29udGV4dDNEPiBjb250ZXh0LCBDdXN0b21GaWx0ZXJQcm9ncmFtVHlwZSBwcm9ncmFtVHlw
ZSwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVycywKLSAgICB1bnNp
Z25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1lc2hUeXBl
IG1lc2hUeXBlKQotewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVyUmVuZGVy
ZXIoY29udGV4dCwgcHJvZ3JhbVR5cGUsIHBhcmFtZXRlcnMsIG1lc2hSb3dzLCBtZXNoQ29sdW1u
cywgbWVzaFR5cGUpKTsKLX0KLQotQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OkN1c3RvbUZpbHRlclJl
bmRlcmVyKFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNvbnRleHQsIEN1c3RvbUZpbHRl
clByb2dyYW1UeXBlIHByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0
JiBwYXJhbWV0ZXJzLAotICAgIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1u
cywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAgOiBtX2NvbnRleHQoY29udGV4
dCkKLSAgICAsIG1fcHJvZ3JhbVR5cGUocHJvZ3JhbVR5cGUpCi0gICAgLCBtX3BhcmFtZXRlcnMo
cGFyYW1ldGVycykKLSAgICAsIG1fbWVzaFJvd3MobWVzaFJvd3MpCi0gICAgLCBtX21lc2hDb2x1
bW5zKG1lc2hDb2x1bW5zKQotICAgICwgbV9tZXNoVHlwZShtZXNoVHlwZSkKLXsKLX0KLQotQ3Vz
dG9tRmlsdGVyUmVuZGVyZXI6On5DdXN0b21GaWx0ZXJSZW5kZXJlcigpCi17Ci19Ci0KLWJvb2wg
Q3VzdG9tRmlsdGVyUmVuZGVyZXI6OnByZW11bHRpcGxpZWRBbHBoYSgpIGNvbnN0Ci17Ci0gICAg
cmV0dXJuIG1fcHJvZ3JhbVR5cGUgPT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRV
UkU7Ci19Ci0KLWJvb2wgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OnByb2dyYW1OZWVkc0lucHV0VGV4
dHVyZSgpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKG1fY29tcGlsZWRQcm9ncmFtLmdldCgpKTsKLSAg
ICByZXR1cm4gbV9jb21waWxlZFByb2dyYW0tPnNhbXBsZXJMb2NhdGlvbigpICE9IC0xOwotfQot
Ci12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpkcmF3KFBsYXRmb3JtM0RPYmplY3QgaW5wdXRU
ZXh0dXJlLCBjb25zdCBJbnRTaXplJiBzaXplKQotewotICAgIC8vIEZJWE1FOiBXZSB3b3VsZCBu
ZWVkIHNvbWV0aGluZyBsaWtlIEN1c3RvbUZpbHRlclJlbmRlcmVyU3RhdGUgdGhhdCB3aWxsIGNv
bnRhaW4gdGhlIHNpemUgYW5kIG90aGVyIHBhcmFtZXRlcnMgaW4gdGhlIGZ1dHVyZS4gV2Ugc2hv
dWxkIHBhc3MgdGhhdCB0byBiaW5kUHJvZ3JhbUJ1ZmZlcnMgaW5zdGVhZCBvZiBzdG9yaW5nIGl0
LgotICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDAxMDcK
LSAgICBtX2NvbnRleHRTaXplID0gc2l6ZTsKLQotICAgIGJpbmRQcm9ncmFtQW5kQnVmZmVycyhp
bnB1dFRleHR1cmUpOwotICAgIG1fY29udGV4dC0+ZHJhd0VsZW1lbnRzKEdyYXBoaWNzQ29udGV4
dDNEOjpUUklBTkdMRVMsIG1fbWVzaC0+aW5kaWNlc0NvdW50KCksIEdyYXBoaWNzQ29udGV4dDNE
OjpVTlNJR05FRF9TSE9SVCwgMCk7Ci0gICAgdW5iaW5kVmVydGV4QXR0cmlidXRlcygpOwotfQot
Ci12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpzZXRDb21waWxlZFByb2dyYW0oUGFzc1JlZlB0
cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IGNvbXBpbGVkUHJvZ3JhbSkKLXsKLSAgICBt
X2NvbXBpbGVkUHJvZ3JhbSA9IGNvbXBpbGVkUHJvZ3JhbTsKLX0KLQotYm9vbCBDdXN0b21GaWx0
ZXJSZW5kZXJlcjo6cHJlcGFyZUZvckRyYXdpbmcoKQotewotICAgIG1fY29udGV4dC0+bWFrZUNv
bnRleHRDdXJyZW50KCk7Ci0gICAgaWYgKCFtX2NvbXBpbGVkUHJvZ3JhbSB8fCAhbV9jb21waWxl
ZFByb2dyYW0tPmlzSW5pdGlhbGl6ZWQoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIGlu
aXRpYWxpemVNZXNoSWZOZWVkZWQoKTsKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotdm9pZCBDdXN0
b21GaWx0ZXJSZW5kZXJlcjo6aW5pdGlhbGl6ZU1lc2hJZk5lZWRlZCgpCi17Ci0gICAgaWYgKG1f
bWVzaC5nZXQoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgLy8gRklYTUU6IFNoYXJpbmcgdGhl
IG1lc2ggd291bGQganVzdCBzYXZlIHRoZSB0aW1lIG5lZWRlZCB0byB1cGxvYWQgaXQgdG8gdGhl
IEdQVSwgc28gSSBhc3N1bWUgd2UgY291bGQKLSAgICAvLyBiZW5jaG1hcmsgdGhhdCBmb3IgcGVy
Zm9ybWFuY2UuCi0gICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTg4NDI5Ci0gICAgbV9tZXNoID0gQ3VzdG9tRmlsdGVyTWVzaDo6Y3JlYXRlKG1fY29udGV4dC5n
ZXQoKSwgbV9tZXNoQ29sdW1ucywgbV9tZXNoUm93cywgRmxvYXRSZWN0KDAsIDAsIDEsIDEpLCBt
X21lc2hUeXBlKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6YmluZFZlcnRleEF0
dHJpYnV0ZShpbnQgYXR0cmlidXRlTG9jYXRpb24sIHVuc2lnbmVkIHNpemUsIHVuc2lnbmVkIG9m
ZnNldCkKLXsKLSAgICBpZiAoYXR0cmlidXRlTG9jYXRpb24gIT0gLTEpIHsKLSAgICAgICAgbV9j
b250ZXh0LT52ZXJ0ZXhBdHRyaWJQb2ludGVyKGF0dHJpYnV0ZUxvY2F0aW9uLCBzaXplLCBHcmFw
aGljc0NvbnRleHQzRDo6RkxPQVQsIGZhbHNlLCBtX21lc2gtPmJ5dGVzUGVyVmVydGV4KCksIG9m
ZnNldCk7Ci0gICAgICAgIG1fY29udGV4dC0+ZW5hYmxlVmVydGV4QXR0cmliQXJyYXkoYXR0cmli
dXRlTG9jYXRpb24pOwotICAgIH0KLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6dW5i
aW5kVmVydGV4QXR0cmlidXRlKGludCBhdHRyaWJ1dGVMb2NhdGlvbikKLXsKLSAgICBpZiAoYXR0
cmlidXRlTG9jYXRpb24gIT0gLTEpCi0gICAgICAgIG1fY29udGV4dC0+ZGlzYWJsZVZlcnRleEF0
dHJpYkFycmF5KGF0dHJpYnV0ZUxvY2F0aW9uKTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5k
ZXJlcjo6YmluZFByb2dyYW1BcnJheVBhcmFtZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3Vz
dG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIqIGFycmF5UGFyYW1ldGVyKQotewotICAgIHVuc2lnbmVk
IHBhcmFtZXRlclNpemUgPSBhcnJheVBhcmFtZXRlci0+c2l6ZSgpOwotICAgIFZlY3RvcjxHQzNE
ZmxvYXQ+IGZsb2F0VmVjdG9yOwotCi0gICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHBhcmFt
ZXRlclNpemU7ICsraSkKLSAgICAgICAgZmxvYXRWZWN0b3IuYXBwZW5kKGFycmF5UGFyYW1ldGVy
LT52YWx1ZUF0KGkpKTsKLQotICAgIG1fY29udGV4dC0+dW5pZm9ybTFmdih1bmlmb3JtTG9jYXRp
b24sIHBhcmFtZXRlclNpemUsIGZsb2F0VmVjdG9yLmRhdGEoKSk7Ci19Ci0KLXZvaWQgQ3VzdG9t
RmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9ncmFtQ29sb3JQYXJhbWV0ZXJzKGludCB1bmlmb3JtTG9j
YXRpb24sIEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyKiBjb2xvclBhcmFtZXRlcikKLXsKLSAg
ICBmbG9hdCByLCBnLCBiLCBhOwotICAgIGNvbG9yUGFyYW1ldGVyLT5jb2xvcigpLmdldFJHQkEo
ciwgZywgYiwgYSk7Ci0KLSAgICBtX2NvbnRleHQtPnVuaWZvcm00Zih1bmlmb3JtTG9jYXRpb24s
IHIsIGcsIGIsIGEpOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclJlbmRlcmVyOjpiaW5kUHJvZ3Jh
bU1hdHJpeFBhcmFtZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3VzdG9tRmlsdGVyQXJyYXlQ
YXJhbWV0ZXIqIG1hdHJpeFBhcmFtZXRlcikKLXsKLSAgICB1bnNpZ25lZCBwYXJhbWV0ZXJTaXpl
ID0gbWF0cml4UGFyYW1ldGVyLT5zaXplKCk7Ci0gICAgVmVjdG9yPEdDM0RmbG9hdCwgMTY+IGZs
b2F0VmVjdG9yOwotCi0gICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHBhcmFtZXRlclNpemU7
ICsraSkKLSAgICAgICAgZmxvYXRWZWN0b3IuYXBwZW5kKG1hdHJpeFBhcmFtZXRlci0+dmFsdWVB
dChpKSk7Ci0KLSAgICBzd2l0Y2ggKHBhcmFtZXRlclNpemUpIHsKLSAgICBjYXNlIDQ6Ci0gICAg
ICAgIG1fY29udGV4dC0+dW5pZm9ybU1hdHJpeDJmdih1bmlmb3JtTG9jYXRpb24sIDEsIGZhbHNl
LCBmbG9hdFZlY3Rvci5kYXRhKCkpOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIDk6Ci0gICAg
ICAgIG1fY29udGV4dC0+dW5pZm9ybU1hdHJpeDNmdih1bmlmb3JtTG9jYXRpb24sIDEsIGZhbHNl
LCBmbG9hdFZlY3Rvci5kYXRhKCkpOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIDE2OgotICAg
ICAgICBtX2NvbnRleHQtPnVuaWZvcm1NYXRyaXg0ZnYodW5pZm9ybUxvY2F0aW9uLCAxLCBmYWxz
ZSwgZmxvYXRWZWN0b3IuZGF0YSgpKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAg
ICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgfQotfQotCi12b2lkIEN1c3RvbUZpbHRl
clJlbmRlcmVyOjpiaW5kUHJvZ3JhbU51bWJlclBhcmFtZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlv
biwgQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyKiBudW1iZXJQYXJhbWV0ZXIpCi17Ci0gICAg
c3dpdGNoIChudW1iZXJQYXJhbWV0ZXItPnNpemUoKSkgewotICAgIGNhc2UgMToKLSAgICAgICAg
bV9jb250ZXh0LT51bmlmb3JtMWYodW5pZm9ybUxvY2F0aW9uLCBudW1iZXJQYXJhbWV0ZXItPnZh
bHVlQXQoMCkpOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIDI6Ci0gICAgICAgIG1fY29udGV4
dC0+dW5pZm9ybTJmKHVuaWZvcm1Mb2NhdGlvbiwgbnVtYmVyUGFyYW1ldGVyLT52YWx1ZUF0KDAp
LCBudW1iZXJQYXJhbWV0ZXItPnZhbHVlQXQoMSkpOwotICAgICAgICBicmVhazsKLSAgICBjYXNl
IDM6Ci0gICAgICAgIG1fY29udGV4dC0+dW5pZm9ybTNmKHVuaWZvcm1Mb2NhdGlvbiwgbnVtYmVy
UGFyYW1ldGVyLT52YWx1ZUF0KDApLCBudW1iZXJQYXJhbWV0ZXItPnZhbHVlQXQoMSksIG51bWJl
clBhcmFtZXRlci0+dmFsdWVBdCgyKSk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgNDoKLSAg
ICAgICAgbV9jb250ZXh0LT51bmlmb3JtNGYodW5pZm9ybUxvY2F0aW9uLCBudW1iZXJQYXJhbWV0
ZXItPnZhbHVlQXQoMCksIG51bWJlclBhcmFtZXRlci0+dmFsdWVBdCgxKSwgbnVtYmVyUGFyYW1l
dGVyLT52YWx1ZUF0KDIpLCBudW1iZXJQYXJhbWV0ZXItPnZhbHVlQXQoMykpOwotICAgICAgICBi
cmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICB9
Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9ncmFtVHJhbnNmb3JtUGFy
YW1ldGVyKGludCB1bmlmb3JtTG9jYXRpb24sIEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRl
ciogdHJhbnNmb3JtUGFyYW1ldGVyKQotewotICAgIFRyYW5zZm9ybWF0aW9uTWF0cml4IG1hdHJp
eDsKLSAgICBpZiAobV9jb250ZXh0U2l6ZS53aWR0aCgpICYmIG1fY29udGV4dFNpemUuaGVpZ2h0
KCkpIHsKLSAgICAgICAgLy8gVGhlIHZpZXdwb3J0IGlzIGEgYm94IHdpdGggdGhlIHNpemUgb2Yg
MSB1bml0LCBzbyB3ZSBhcmUgc2NhbGluZyB1cCBoZXJlIHRvIG1ha2Ugc3VyZSB0aGF0IHRyYW5z
bGF0aW9ucyBoYXBwZW4gdXNpbmcgcmVhbCBwaXhlbAotICAgICAgICAvLyB1bml0cy4gQXQgdGhl
IGVuZCB3ZSBzY2FsZSBiYWNrIGRvd24gaW4gb3JkZXIgdG8gbWFwIGl0IGJhY2sgdG8gdGhlIG9y
aWdpbmFsIGJveC4gTm90ZSB0aGF0IHRyYW5zZm9ybXMgY29tZSBpbiByZXZlcnNlIG9yZGVyLCBi
ZWNhdXNlIGl0IGlzCi0gICAgICAgIC8vIHN1cHBvc2VkIHRvIG11bHRpcGx5IHRvIHRoZSBsZWZ0
IG9mIHRoZSBjb29yZGluYXRlcyBvZiB0aGUgdmVydGljZXMuCi0gICAgICAgIC8vIE5vdGUgdGhh
dCB0aGUgb3JpZ2luICgwLCAwKSBvZiB0aGUgdmlld3BvcnQgaXMgaW4gdGhlIG1pZGRsZSBvZiB0
aGUgY29udGV4dCwgc28gdGhlcmUncyBubyBuZWVkIHRvIGNoYW5nZSB0aGUgb3JpZ2luIG9mIHRo
ZSB0cmFuc2Zvcm0KLSAgICAgICAgLy8gaW4gb3JkZXIgdG8gcm90YXRlIGFyb3VuZCB0aGUgbWlk
ZGxlIG9mIG1lc2guCi0gICAgICAgIG1hdHJpeC5zY2FsZTNkKDEuMCAvIG1fY29udGV4dFNpemUu
d2lkdGgoKSwgMS4wIC8gbV9jb250ZXh0U2l6ZS5oZWlnaHQoKSwgMSk7Ci0gICAgICAgIHRyYW5z
Zm9ybVBhcmFtZXRlci0+YXBwbHlUcmFuc2Zvcm0obWF0cml4LCBtX2NvbnRleHRTaXplKTsKLSAg
ICAgICAgbWF0cml4LnNjYWxlM2QobV9jb250ZXh0U2l6ZS53aWR0aCgpLCBtX2NvbnRleHRTaXpl
LmhlaWdodCgpLCAxKTsKLSAgICB9Ci0gICAgZmxvYXQgZ2xNYXRyaXhbMTZdOwotICAgIG1hdHJp
eC50b0NvbHVtbk1ham9yRmxvYXRBcnJheShnbE1hdHJpeCk7Ci0gICAgbV9jb250ZXh0LT51bmlm
b3JtTWF0cml4NGZ2KHVuaWZvcm1Mb2NhdGlvbiwgMSwgZmFsc2UsICZnbE1hdHJpeFswXSk7Ci19
Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyUmVuZGVyZXI6OmJpbmRQcm9ncmFtUGFyYW1ldGVycygpCi17
Ci0gICAgLy8gRklYTUU6IEZpbmQgYSB3YXkgdG8gcmVzZXQgdW5pZm9ybXMgdGhhdCBhcmUgbm90
IHNwZWNpZmllZCBpbiBDU1MuIFRoaXMgaXMgbmVlZGVkIHRvIGF2b2lkIHVzaW5nIHZhbHVlcwot
ICAgIC8vIHNldCBieSBvdGhlciBwcmV2aW91cyByZW5kZXJlZCBmaWx0ZXJzLgotICAgIC8vIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NjQ0MAotCi0gICAgc2l6ZV90
IHBhcmFtZXRlcnNTaXplID0gbV9wYXJhbWV0ZXJzLnNpemUoKTsKLSAgICBmb3IgKHNpemVfdCBp
ID0gMDsgaSA8IHBhcmFtZXRlcnNTaXplOyArK2kpIHsKLSAgICAgICAgQ3VzdG9tRmlsdGVyUGFy
YW1ldGVyKiBwYXJhbWV0ZXIgPSBtX3BhcmFtZXRlcnMuYXQoaSkuZ2V0KCk7Ci0gICAgICAgIGlu
dCB1bmlmb3JtTG9jYXRpb24gPSBtX2NvbXBpbGVkUHJvZ3JhbS0+dW5pZm9ybUxvY2F0aW9uQnlO
YW1lKHBhcmFtZXRlci0+bmFtZSgpKTsKLSAgICAgICAgaWYgKHVuaWZvcm1Mb2NhdGlvbiA9PSAt
MSkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBzd2l0Y2ggKHBhcmFtZXRlci0+cGFy
YW1ldGVyVHlwZSgpKSB7Ci0gICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpBUlJB
WToKLSAgICAgICAgICAgIGJpbmRQcm9ncmFtQXJyYXlQYXJhbWV0ZXJzKHVuaWZvcm1Mb2NhdGlv
biwgc3RhdGljX2Nhc3Q8Q3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0ZXIqPihwYXJhbWV0ZXIpKTsK
LSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6
Q09MT1I6ICAgICAgICAKLSAgICAgICAgICAgIGJpbmRQcm9ncmFtQ29sb3JQYXJhbWV0ZXJzKHVu
aWZvcm1Mb2NhdGlvbiwgc3RhdGljX2Nhc3Q8Q3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIqPihw
YXJhbWV0ZXIpKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIEN1c3RvbUZpbHRl
clBhcmFtZXRlcjo6TUFUUklYOgotICAgICAgICAgICAgYmluZFByb2dyYW1NYXRyaXhQYXJhbWV0
ZXJzKHVuaWZvcm1Mb2NhdGlvbiwgc3RhdGljX2Nhc3Q8Q3VzdG9tRmlsdGVyQXJyYXlQYXJhbWV0
ZXIqPihwYXJhbWV0ZXIpKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIEN1c3Rv
bUZpbHRlclBhcmFtZXRlcjo6TlVNQkVSOgotICAgICAgICAgICAgYmluZFByb2dyYW1OdW1iZXJQ
YXJhbWV0ZXJzKHVuaWZvcm1Mb2NhdGlvbiwgc3RhdGljX2Nhc3Q8Q3VzdG9tRmlsdGVyTnVtYmVy
UGFyYW1ldGVyKj4ocGFyYW1ldGVyKSk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2Fz
ZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OlRSQU5TRk9STToKLSAgICAgICAgICAgIGJpbmRQcm9n
cmFtVHJhbnNmb3JtUGFyYW1ldGVyKHVuaWZvcm1Mb2NhdGlvbiwgc3RhdGljX2Nhc3Q8Q3VzdG9t
RmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKj4ocGFyYW1ldGVyKSk7Ci0gICAgICAgICAgICBicmVh
azsKLSAgICAgICAgfQotICAgIH0KLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJSZW5kZXJlcjo6Ymlu
ZFByb2dyYW1BbmRCdWZmZXJzKFBsYXRmb3JtM0RPYmplY3QgaW5wdXRUZXh0dXJlKQotewotICAg
IEFTU0VSVChtX2NvbXBpbGVkUHJvZ3JhbS0+aXNJbml0aWFsaXplZCgpKTsKLQotICAgIG1fY29u
dGV4dC0+dXNlUHJvZ3JhbShtX2NvbXBpbGVkUHJvZ3JhbS0+cHJvZ3JhbSgpKTsKLQotICAgIGlm
IChwcm9ncmFtTmVlZHNJbnB1dFRleHR1cmUoKSkgewotICAgICAgICAvLyBXZSBzaG91bGQgYmUg
YmluZGluZyB0aGUgRE9NIGVsZW1lbnQgdGV4dHVyZSBzYW1wbGVyIG9ubHkgaWYgdGhlIGF1dGhv
ciBpcyB1c2luZyB0aGUgQ1NTIG1peCBmdW5jdGlvbi4KLSAgICAgICAgQVNTRVJUKG1fcHJvZ3Jh
bVR5cGUgPT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRVUkUpOwotICAgICAgICBB
U1NFUlQobV9jb21waWxlZFByb2dyYW0tPnNhbXBsZXJMb2NhdGlvbigpICE9IC0xKTsKLQotICAg
ICAgICBtX2NvbnRleHQtPmFjdGl2ZVRleHR1cmUoR3JhcGhpY3NDb250ZXh0M0Q6OlRFWFRVUkUw
KTsKLSAgICAgICAgbV9jb250ZXh0LT51bmlmb3JtMWkobV9jb21waWxlZFByb2dyYW0tPnNhbXBs
ZXJMb2NhdGlvbigpLCAwKTsKLSAgICAgICAgbV9jb250ZXh0LT5iaW5kVGV4dHVyZShHcmFwaGlj
c0NvbnRleHQzRDo6VEVYVFVSRV8yRCwgaW5wdXRUZXh0dXJlKTsKLSAgICAgICAgbV9jb250ZXh0
LT50ZXhQYXJhbWV0ZXJpKEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFXzJELCBHcmFwaGljc0Nv
bnRleHQzRDo6VEVYVFVSRV9NSU5fRklMVEVSLCBHcmFwaGljc0NvbnRleHQzRDo6TElORUFSKTsK
LSAgICAgICAgbV9jb250ZXh0LT50ZXhQYXJhbWV0ZXJpKEdyYXBoaWNzQ29udGV4dDNEOjpURVhU
VVJFXzJELCBHcmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV9NQUdfRklMVEVSLCBHcmFwaGljc0Nv
bnRleHQzRDo6TElORUFSKTsKLSAgICAgICAgbV9jb250ZXh0LT50ZXhQYXJhbWV0ZXJpKEdyYXBo
aWNzQ29udGV4dDNEOjpURVhUVVJFXzJELCBHcmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV9XUkFQ
X1MsIEdyYXBoaWNzQ29udGV4dDNEOjpDTEFNUF9UT19FREdFKTsKLSAgICAgICAgbV9jb250ZXh0
LT50ZXhQYXJhbWV0ZXJpKEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFXzJELCBHcmFwaGljc0Nv
bnRleHQzRDo6VEVYVFVSRV9XUkFQX1QsIEdyYXBoaWNzQ29udGV4dDNEOjpDTEFNUF9UT19FREdF
KTsKLSAgICB9Ci0KLSAgICBpZiAobV9jb21waWxlZFByb2dyYW0tPnByb2plY3Rpb25NYXRyaXhM
b2NhdGlvbigpICE9IC0xKSB7Ci0gICAgICAgIFRyYW5zZm9ybWF0aW9uTWF0cml4IHByb2plY3Rp
b25NYXRyaXg7Ci0gICAgICAgIG9ydGhvZ29uYWxQcm9qZWN0aW9uTWF0cml4KHByb2plY3Rpb25N
YXRyaXgsIC0wLjUsIDAuNSwgLTAuNSwgMC41KTsKLSAgICAgICAgZmxvYXQgZ2xQcm9qZWN0aW9u
TWF0cml4WzE2XTsKLSAgICAgICAgcHJvamVjdGlvbk1hdHJpeC50b0NvbHVtbk1ham9yRmxvYXRB
cnJheShnbFByb2plY3Rpb25NYXRyaXgpOwotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm1NYXRy
aXg0ZnYobV9jb21waWxlZFByb2dyYW0tPnByb2plY3Rpb25NYXRyaXhMb2NhdGlvbigpLCAxLCBm
YWxzZSwgJmdsUHJvamVjdGlvbk1hdHJpeFswXSk7Ci0gICAgfQotCi0gICAgQVNTRVJUKG1fbWVz
aENvbHVtbnMpOwotICAgIEFTU0VSVChtX21lc2hSb3dzKTsKLQotICAgIGlmIChtX2NvbXBpbGVk
UHJvZ3JhbS0+bWVzaFNpemVMb2NhdGlvbigpICE9IC0xKQotICAgICAgICBtX2NvbnRleHQtPnVu
aWZvcm0yZihtX2NvbXBpbGVkUHJvZ3JhbS0+bWVzaFNpemVMb2NhdGlvbigpLCBtX21lc2hDb2x1
bW5zLCBtX21lc2hSb3dzKTsKLQotICAgIGlmIChtX2NvbXBpbGVkUHJvZ3JhbS0+dGlsZVNpemVM
b2NhdGlvbigpICE9IC0xKQotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm0yZihtX2NvbXBpbGVk
UHJvZ3JhbS0+dGlsZVNpemVMb2NhdGlvbigpLCAxLjAgLyBtX21lc2hDb2x1bW5zLCAxLjAgLyBt
X21lc2hSb3dzKTsKLQotICAgIGlmIChtX2NvbXBpbGVkUHJvZ3JhbS0+bWVzaEJveExvY2F0aW9u
KCkgIT0gLTEpIHsKLSAgICAgICAgLy8gRklYTUU6IFRoaXMgd2lsbCBjaGFuZ2Ugd2hlbiBmaWx0
ZXIgbWFyZ2lucyB3aWxsIGJlIGltcGxlbWVudGVkLAotICAgICAgICAvLyBzZWUgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcxNDAwCi0gICAgICAgIG1fY29udGV4dC0+
dW5pZm9ybTRmKG1fY29tcGlsZWRQcm9ncmFtLT5tZXNoQm94TG9jYXRpb24oKSwgLTAuNSwgLTAu
NSwgMS4wLCAxLjApOwotICAgIH0KLQotICAgIGlmIChtX2NvbXBpbGVkUHJvZ3JhbS0+c2FtcGxl
clNpemVMb2NhdGlvbigpICE9IC0xKQotICAgICAgICBtX2NvbnRleHQtPnVuaWZvcm0yZihtX2Nv
bXBpbGVkUHJvZ3JhbS0+c2FtcGxlclNpemVMb2NhdGlvbigpLCBtX2NvbnRleHRTaXplLndpZHRo
KCksIG1fY29udGV4dFNpemUuaGVpZ2h0KCkpOwotCi0gICAgbV9jb250ZXh0LT5iaW5kQnVmZmVy
KEdyYXBoaWNzQ29udGV4dDNEOjpBUlJBWV9CVUZGRVIsIG1fbWVzaC0+dmVydGljZXNCdWZmZXJP
YmplY3QoKSk7Ci0gICAgbV9jb250ZXh0LT5iaW5kQnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpF
TEVNRU5UX0FSUkFZX0JVRkZFUiwgbV9tZXNoLT5lbGVtZW50c0J1ZmZlck9iamVjdCgpKTsKLQot
ICAgIGJpbmRWZXJ0ZXhBdHRyaWJ1dGUobV9jb21waWxlZFByb2dyYW0tPnBvc2l0aW9uQXR0cmli
TG9jYXRpb24oKSwgUG9zaXRpb25BdHRyaWJTaXplLCBQb3NpdGlvbkF0dHJpYk9mZnNldCk7Ci0g
ICAgYmluZFZlcnRleEF0dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3JhbS0+dGV4QXR0cmliTG9jYXRp
b24oKSwgVGV4QXR0cmliU2l6ZSwgVGV4QXR0cmliT2Zmc2V0KTsKLSAgICBiaW5kVmVydGV4QXR0
cmlidXRlKG1fY29tcGlsZWRQcm9ncmFtLT5tZXNoQXR0cmliTG9jYXRpb24oKSwgTWVzaEF0dHJp
YlNpemUsIE1lc2hBdHRyaWJPZmZzZXQpOwotICAgIGlmIChtX21lc2hUeXBlID09IE1lc2hUeXBl
RGV0YWNoZWQpCi0gICAgICAgIGJpbmRWZXJ0ZXhBdHRyaWJ1dGUobV9jb21waWxlZFByb2dyYW0t
PnRyaWFuZ2xlQXR0cmliTG9jYXRpb24oKSwgVHJpYW5nbGVBdHRyaWJTaXplLCBUcmlhbmdsZUF0
dHJpYk9mZnNldCk7Ci0KLSAgICBiaW5kUHJvZ3JhbVBhcmFtZXRlcnMoKTsKLX0KLQotdm9pZCBD
dXN0b21GaWx0ZXJSZW5kZXJlcjo6dW5iaW5kVmVydGV4QXR0cmlidXRlcygpCi17Ci0gICAgdW5i
aW5kVmVydGV4QXR0cmlidXRlKG1fY29tcGlsZWRQcm9ncmFtLT5wb3NpdGlvbkF0dHJpYkxvY2F0
aW9uKCkpOwotICAgIHVuYmluZFZlcnRleEF0dHJpYnV0ZShtX2NvbXBpbGVkUHJvZ3JhbS0+dGV4
QXR0cmliTG9jYXRpb24oKSk7Ci0gICAgdW5iaW5kVmVydGV4QXR0cmlidXRlKG1fY29tcGlsZWRQ
cm9ncmFtLT5tZXNoQXR0cmliTG9jYXRpb24oKSk7Ci0gICAgaWYgKG1fbWVzaFR5cGUgPT0gTWVz
aFR5cGVEZXRhY2hlZCkKLSAgICAgICAgdW5iaW5kVmVydGV4QXR0cmlidXRlKG1fY29tcGlsZWRQ
cm9ncmFtLT50cmlhbmdsZUF0dHJpYkxvY2F0aW9uKCkpOwotfQotCi19IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElD
UykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
Q3VzdG9tRmlsdGVyUmVuZGVyZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggY2NkYzI5Zi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclJlbmRlcmVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSwx
MDUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29y
cG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMSBBZG9i
ZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdo
dCAoQykgMjAxMiBDb21wYW55IDEwMCwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0g
KiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAq
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4K
LSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRlclJlbmRlcmVyX2gKLSNkZWZpbmUgQ3VzdG9tRmls
dGVyUmVuZGVyZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJ
Q1MpCi0KLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIKLSNpbmNsdWRlICJDdXN0
b21GaWx0ZXJQYXJhbWV0ZXJMaXN0LmgiCi0jaW5jbHVkZSAiR3JhcGhpY3NUeXBlczNELmgiCi0j
aW5jbHVkZSAiSW50U2l6ZS5oIgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0jaW5jbHVk
ZSA8d3RmL1JlZlB0ci5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEN1c3RvbUZp
bHRlckFycmF5UGFyYW1ldGVyOwotY2xhc3MgQ3VzdG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXI7Ci1j
bGFzcyBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW07Ci1jbGFzcyBDdXN0b21GaWx0ZXJNZXNo
OwotY2xhc3MgQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyOwotY2xhc3MgQ3VzdG9tRmlsdGVy
VHJhbnNmb3JtUGFyYW1ldGVyOwotY2xhc3MgR3JhcGhpY3NDb250ZXh0M0Q7Ci0KLWNsYXNzIEN1
c3RvbUZpbHRlclJlbmRlcmVyIDogcHVibGljIFJlZkNvdW50ZWQ8Q3VzdG9tRmlsdGVyUmVuZGVy
ZXI+IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJSZW5kZXJl
cj4gY3JlYXRlKFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+LCBDdXN0b21GaWx0ZXJQcm9n
cmFtVHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYsCi0gICAgICAgIHVuc2ln
bmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUp
OwotICAgIH5DdXN0b21GaWx0ZXJSZW5kZXJlcigpOwotCi0gICAgYm9vbCBwcmVtdWx0aXBsaWVk
QWxwaGEoKSBjb25zdDsKLSAgICBib29sIHByb2dyYW1OZWVkc0lucHV0VGV4dHVyZSgpIGNvbnN0
OwotCi0gICAgYm9vbCBwcmVwYXJlRm9yRHJhd2luZygpOwotCi0gICAgdm9pZCBkcmF3KFBsYXRm
b3JtM0RPYmplY3QsIGNvbnN0IEludFNpemUmKTsKLQotICAgIEN1c3RvbUZpbHRlckNvbXBpbGVk
UHJvZ3JhbSogY29tcGlsZWRQcm9ncmFtKCkgY29uc3QgeyByZXR1cm4gbV9jb21waWxlZFByb2dy
YW0uZ2V0KCk7IH0KLSAgICB2b2lkIHNldENvbXBpbGVkUHJvZ3JhbShQYXNzUmVmUHRyPEN1c3Rv
bUZpbHRlckNvbXBpbGVkUHJvZ3JhbT4pOwotCi1wcml2YXRlOgotICAgIEN1c3RvbUZpbHRlclJl
bmRlcmVyKFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+LCBDdXN0b21GaWx0ZXJQcm9ncmFt
VHlwZSwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYsCi0gICAgICAgIHVuc2lnbmVk
IG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUpOwot
Ci0gICAgdm9pZCBpbml0aWFsaXplQ29tcGlsZWRQcm9ncmFtSWZOZWVkZWQoKTsKLSAgICB2b2lk
IGluaXRpYWxpemVNZXNoSWZOZWVkZWQoKTsKLQotICAgIHZvaWQgYmluZFZlcnRleEF0dHJpYnV0
ZShpbnQgYXR0cmlidXRlTG9jYXRpb24sIHVuc2lnbmVkIHNpemUsIHVuc2lnbmVkIG9mZnNldCk7
Ci0gICAgdm9pZCB1bmJpbmRWZXJ0ZXhBdHRyaWJ1dGUoaW50IGF0dHJpYnV0ZUxvY2F0aW9uKTsK
LSAgICB2b2lkIGJpbmRQcm9ncmFtQXJyYXlQYXJhbWV0ZXJzKGludCB1bmlmb3JtTG9jYXRpb24s
IEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKik7Ci0gICAgdm9pZCBiaW5kUHJvZ3JhbUNvbG9y
UGFyYW1ldGVycyhpbnQgdW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJDb2xvclBhcmFtZXRl
ciopOwotICAgIHZvaWQgYmluZFByb2dyYW1NYXRyaXhQYXJhbWV0ZXJzKGludCB1bmlmb3JtTG9j
YXRpb24sIEN1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyKik7Ci0gICAgdm9pZCBiaW5kUHJvZ3Jh
bU51bWJlclBhcmFtZXRlcnMoaW50IHVuaWZvcm1Mb2NhdGlvbiwgQ3VzdG9tRmlsdGVyTnVtYmVy
UGFyYW1ldGVyKik7Ci0gICAgdm9pZCBiaW5kUHJvZ3JhbVRyYW5zZm9ybVBhcmFtZXRlcihpbnQg
dW5pZm9ybUxvY2F0aW9uLCBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqKTsKLSAgICB2
b2lkIGJpbmRQcm9ncmFtUGFyYW1ldGVycygpOwotICAgIHZvaWQgYmluZFByb2dyYW1BbmRCdWZm
ZXJzKFBsYXRmb3JtM0RPYmplY3QgaW5wdXRUZXh0dXJlKTsKLSAgICB2b2lkIHVuYmluZFZlcnRl
eEF0dHJpYnV0ZXMoKTsKLQotICAgIFJlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gbV9jb250ZXh0
OwotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IG1fY29tcGlsZWRQcm9n
cmFtOwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIG1fcHJvZ3JhbVR5cGU7Ci0gICAgUmVm
UHRyPEN1c3RvbUZpbHRlck1lc2g+IG1fbWVzaDsKLSAgICBJbnRTaXplIG1fY29udGV4dFNpemU7
Ci0KLSAgICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0IG1fcGFyYW1ldGVyczsKLQotICAgIHVu
c2lnbmVkIG1fbWVzaFJvd3M7Ci0gICAgdW5zaWduZWQgbV9tZXNoQ29sdW1uczsKLSAgICBDdXN0
b21GaWx0ZXJNZXNoVHlwZSBtX21lc2hUeXBlOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0K
LSNlbmRpZiAvLyBDdXN0b21GaWx0ZXJSZW5kZXJlcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFt
ZXRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21G
aWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
NWJkNjYxMS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0N1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlci5oCisrKyAvZGV2L251bGwKQEAg
LTEsMTAyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJ
bmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIu
Ci0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhP
TERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgot
ICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYg
Q3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyX2gKLSNkZWZpbmUgQ3VzdG9tRmlsdGVyVHJh
bnNmb3JtUGFyYW1ldGVyX2gKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJD
dXN0b21GaWx0ZXJQYXJhbWV0ZXIuaCIKLSNpbmNsdWRlICJGbG9hdFNpemUuaCIKLSNpbmNsdWRl
ICJUcmFuc2Zvcm1PcGVyYXRpb25zLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3Mg
RmxvYXRSZWN0OwotY2xhc3MgVHJhbnNmb3JtYXRpb25NYXRyaXg7Ci0KLWNsYXNzIEN1c3RvbUZp
bHRlclRyYW5zZm9ybVBhcmFtZXRlciA6IHB1YmxpYyBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIgewot
cHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFt
ZXRlcj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgbmFtZSkKLSAgICB7Ci0gICAgICAgIHJldHVybiBh
ZG9wdFJlZihuZXcgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKG5hbWUpKTsKLSAgICB9
Ci0KLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBibGVuZChj
b25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIqIGZyb21QYXJhbWV0ZXIsIGRvdWJsZSBwcm9ncmVz
cywgY29uc3QgTGF5b3V0U2l6ZSYgc2l6ZSkKLSAgICB7Ci0gICAgICAgIGlmICghZnJvbVBhcmFt
ZXRlciB8fCAhaXNTYW1lVHlwZSgqZnJvbVBhcmFtZXRlcikpCi0gICAgICAgICAgICByZXR1cm4g
dGhpczsKLQotICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqIGZy
b21UcmFuc2Zvcm1QYXJhbWV0ZXIgPSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJUcmFu
c2Zvcm1QYXJhbWV0ZXIqPihmcm9tUGFyYW1ldGVyKTsKLSAgICAgICAgY29uc3QgVHJhbnNmb3Jt
T3BlcmF0aW9ucyYgZnJvbSA9IGZyb21UcmFuc2Zvcm1QYXJhbWV0ZXItPm9wZXJhdGlvbnMoKTsK
LSAgICAgICAgY29uc3QgVHJhbnNmb3JtT3BlcmF0aW9ucyYgdG8gPSBvcGVyYXRpb25zKCk7Ci0g
ICAgICAgIGlmIChmcm9tID09IHRvKQotICAgICAgICAgICAgcmV0dXJuIHRoaXM7Ci0gICAgICAg
Ci0gICAgICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXI+IHJlc3VsdCA9
IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUoKSk7Ci0gICAgICAg
IGlmIChmcm9tLnNpemUoKSAmJiB0by5zaXplKCkpCi0gICAgICAgICAgICByZXN1bHQtPnNldE9w
ZXJhdGlvbnModG8uYmxlbmQoZnJvbSwgcHJvZ3Jlc3MsIHNpemUpKTsKLSAgICAgICAgZWxzZQot
ICAgICAgICAgICAgcmVzdWx0LT5zZXRPcGVyYXRpb25zKHByb2dyZXNzID4gMC41ID8gdG8gOiBm
cm9tKTsKLSAgICAgICAgcmV0dXJuIHJlc3VsdDsKLSAgICB9Ci0KLSAgICB2aXJ0dWFsIGJvb2wg
b3BlcmF0b3I9PShjb25zdCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXImIG8pIGNvbnN0Ci0gICAgewot
ICAgICAgICBpZiAoIWlzU2FtZVR5cGUobykpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0g
ICAgICAgIGNvbnN0IEN1c3RvbUZpbHRlclRyYW5zZm9ybVBhcmFtZXRlciogb3RoZXIgPSBzdGF0
aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJUcmFuc2Zvcm1QYXJhbWV0ZXIqPigmbyk7Ci0gICAg
ICAgIHJldHVybiBtX29wZXJhdGlvbnMgPT0gb3RoZXItPm1fb3BlcmF0aW9uczsKLSAgICB9Ci0K
LSAgICB2b2lkIGFwcGx5VHJhbnNmb3JtKFRyYW5zZm9ybWF0aW9uTWF0cml4JiB0cmFuc2Zvcm0s
IGNvbnN0IEZsb2F0U2l6ZSYgYm94U2l6ZSkgY29uc3QKLSAgICB7Ci0gICAgICAgIGZvciAodW5z
aWduZWQgaSA9IDAsIHNpemUgPSBtX29wZXJhdGlvbnMuc2l6ZSgpOyBpIDwgc2l6ZTsgKytpKQot
ICAgICAgICAgICAgbV9vcGVyYXRpb25zLmF0KGkpLT5hcHBseSh0cmFuc2Zvcm0sIGJveFNpemUp
OwotICAgIH0KLQotICAgIGNvbnN0IFRyYW5zZm9ybU9wZXJhdGlvbnMmIG9wZXJhdGlvbnMoKSBj
b25zdCB7IHJldHVybiBtX29wZXJhdGlvbnM7IH0KLSAgICB2b2lkIHNldE9wZXJhdGlvbnMoY29u
c3QgVHJhbnNmb3JtT3BlcmF0aW9ucyYgdmFsdWUpIHsgbV9vcGVyYXRpb25zID0gdmFsdWU7IH0K
LSAgICAKLXByaXZhdGU6Ci0gICAgQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKGNvbnN0
IFN0cmluZyYgbmFtZSkKLSAgICAgICAgOiBDdXN0b21GaWx0ZXJQYXJhbWV0ZXIoVFJBTlNGT1JN
LCBuYW1lKQotICAgIHsKLSAgICB9Ci0gICAgdmlydHVhbCB+Q3VzdG9tRmlsdGVyVHJhbnNmb3Jt
UGFyYW1ldGVyKCkKLSAgICB7Ci0gICAgfQotICAgIAotICAgIFRyYW5zZm9ybU9wZXJhdGlvbnMg
bV9vcGVyYXRpb25zOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFy
YW1ldGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uY3Bw
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhZGNlMWE4Li4wMDAwMDAwCi0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyVmFsaWRh
dGVkUHJvZ3JhbS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw2MjIgKzAsMCBAQAotLyoKLSAqIENv
cHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAq
Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBk
aXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAq
ICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkK
LSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAot
ICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgot
ICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5o
IgotCi0jaW5jbHVkZSAiQU5HTEVXZWJLaXRCcmlkZ2UuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0
ZXJDb21waWxlZFByb2dyYW0uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb25zdGFudHMuaCIK
LSNpbmNsdWRlICJDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmgiCi0jaW5jbHVkZSAiQ3VzdG9t
RmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgotI2luY2x1
ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgotI2luY2x1ZGUgPHd0
Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+
Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotI2RlZmluZSBTSEFERVIoU3JjKSAoI1NyYykgCi0K
LXR5cGVkZWYgSGFzaE1hcDxTdHJpbmcsIFNoRGF0YVR5cGU+IFN5bWJvbE5hbWVUb1R5cGVNYXA7
Ci0KLXN0YXRpYyBTeW1ib2xOYW1lVG9UeXBlTWFwKiBidWlsdEluQXR0cmlidXRlTmFtZVRvVHlw
ZU1hcCgpCi17Ci0gICAgc3RhdGljIFN5bWJvbE5hbWVUb1R5cGVNYXAqIG5hbWVUb1R5cGVNYXAg
PSAwOwotICAgIGlmICghbmFtZVRvVHlwZU1hcCkgewotICAgICAgICBuYW1lVG9UeXBlTWFwID0g
bmV3IFN5bWJvbE5hbWVUb1R5cGVNYXA7ICAgICAgICAKLSAgICAgICAgbmFtZVRvVHlwZU1hcC0+
c2V0KCJhX21lc2hDb29yZCIsIFNIX0ZMT0FUX1ZFQzIpOwotICAgICAgICBuYW1lVG9UeXBlTWFw
LT5zZXQoImFfcG9zaXRpb24iLCBTSF9GTE9BVF9WRUM0KTsKLSAgICAgICAgbmFtZVRvVHlwZU1h
cC0+c2V0KCJhX3RleENvb3JkIiwgU0hfRkxPQVRfVkVDMik7Ci0gICAgICAgIG5hbWVUb1R5cGVN
YXAtPnNldCgiYV90cmlhbmdsZUNvb3JkIiwgU0hfRkxPQVRfVkVDMyk7Ci0gICAgfQotICAgIHJl
dHVybiBuYW1lVG9UeXBlTWFwOwotfQotCi1zdGF0aWMgU3ltYm9sTmFtZVRvVHlwZU1hcCogYnVp
bHRJblVuaWZvcm1OYW1lVG9UeXBlTWFwKCkKLXsKLSAgICBzdGF0aWMgU3ltYm9sTmFtZVRvVHlw
ZU1hcCogbmFtZVRvVHlwZU1hcCA9IDA7Ci0gICAgaWYgKCFuYW1lVG9UeXBlTWFwKSB7Ci0gICAg
ICAgIG5hbWVUb1R5cGVNYXAgPSBuZXcgU3ltYm9sTmFtZVRvVHlwZU1hcDsKLSAgICAgICAgbmFt
ZVRvVHlwZU1hcC0+c2V0KCJ1X21lc2hCb3giLCBTSF9GTE9BVF9WRUM0KTsKLSAgICAgICAgbmFt
ZVRvVHlwZU1hcC0+c2V0KCJ1X21lc2hTaXplIiwgU0hfRkxPQVRfVkVDMik7Ci0gICAgICAgIG5h
bWVUb1R5cGVNYXAtPnNldCgidV9wcm9qZWN0aW9uTWF0cml4IiwgU0hfRkxPQVRfTUFUNCk7Ci0g
ICAgICAgIG5hbWVUb1R5cGVNYXAtPnNldCgidV90ZXh0dXJlU2l6ZSIsIFNIX0ZMT0FUX1ZFQzIp
OwotICAgICAgICBuYW1lVG9UeXBlTWFwLT5zZXQoInVfdGlsZVNpemUiLCBTSF9GTE9BVF9WRUMy
KTsKLSAgICB9Ci0gICAgcmV0dXJuIG5hbWVUb1R5cGVNYXA7Ci19Ci0KLXN0YXRpYyBib29sIHZh
bGlkYXRlU3ltYm9scyhjb25zdCBWZWN0b3I8QU5HTEVTaGFkZXJTeW1ib2w+JiBzeW1ib2xzLCBD
dXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLXsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsg
aSA8IHN5bWJvbHMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgY29uc3QgQU5HTEVTaGFkZXJTeW1i
b2wmIHN5bWJvbCA9IHN5bWJvbHNbaV07Ci0gICAgICAgIHN3aXRjaCAoc3ltYm9sLnN5bWJvbFR5
cGUpIHsKLSAgICAgICAgY2FzZSBTSEFERVJfU1lNQk9MX1RZUEVfQVRUUklCVVRFOiB7Ci0gICAg
ICAgICAgICBTeW1ib2xOYW1lVG9UeXBlTWFwKiBhdHRyaWJ1dGVOYW1lVG9UeXBlTWFwID0gYnVp
bHRJbkF0dHJpYnV0ZU5hbWVUb1R5cGVNYXAoKTsKLSAgICAgICAgICAgIFN5bWJvbE5hbWVUb1R5
cGVNYXA6Oml0ZXJhdG9yIGJ1aWx0SW5BdHRyaWJ1dGUgPSBhdHRyaWJ1dGVOYW1lVG9UeXBlTWFw
LT5maW5kKHN5bWJvbC5uYW1lKTsKLSAgICAgICAgICAgIGlmIChidWlsdEluQXR0cmlidXRlID09
IGF0dHJpYnV0ZU5hbWVUb1R5cGVNYXAtPmVuZCgpKSB7Ci0gICAgICAgICAgICAgICAgLy8gVGhl
IGF1dGhvciBkZWZpbmVkIGEgY3VzdG9tIGF0dHJpYnV0ZS4KLSAgICAgICAgICAgICAgICAvLyBG
SVhNRTogUmVwb3J0IHRoZSB2YWxpZGF0aW9uIGVycm9yLgotICAgICAgICAgICAgICAgIC8vIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDQxNgotICAgICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChtZXNoVHlw
ZSA9PSBNZXNoVHlwZUF0dGFjaGVkICYmIHN5bWJvbC5uYW1lID09ICJhX3RyaWFuZ2xlQ29vcmQi
KSB7Ci0gICAgICAgICAgICAgICAgLy8gYV90cmlhbmdsZUNvb3JkIGlzIG9ubHkgYXZhaWxhYmxl
IGZvciBkZXRhY2hlZCBtZXNoZXMuCi0gICAgICAgICAgICAgICAgLy8gRklYTUU6IFJlcG9ydCB0
aGUgdmFsaWRhdGlvbiBlcnJvci4KLSAgICAgICAgICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQ0MTYKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFs
c2U7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAoc3ltYm9sLmRhdGFUeXBlICE9IGJ1
aWx0SW5BdHRyaWJ1dGUtPnZhbHVlKSB7Ci0gICAgICAgICAgICAgICAgLy8gVGhlIGF1dGhvciBk
ZWZpbmVkIG9uZSBvZiB0aGUgYnVpbHQtaW4gYXR0cmlidXRlcyB3aXRoIHRoZSB3cm9uZyB0eXBl
LgotICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBSZXBvcnQgdGhlIHZhbGlkYXRpb24gZXJyb3Iu
Ci0gICAgICAgICAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTc0NDE2Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgfQot
ICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAgICAgICAgY2FzZSBTSEFERVJfU1lNQk9M
X1RZUEVfVU5JRk9STTogewotICAgICAgICAgICAgaWYgKHN5bWJvbC5pc1NhbXBsZXIoKSkgewot
ICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBGb3Igbm93LCB3ZSByZXN0cmljdCBzaGFkZXJzIHdp
dGggYW55IHNhbXBsZXIgZGVmaW5lZC4KLSAgICAgICAgICAgICAgICAvLyBXaGVuIHdlIGltcGxl
bWVudCB0ZXh0dXJlIHBhcmFtZXRlcnMsIHdlIHdpbGwgYWxsb3cgc2hhZGVycyB3aG9zZSBzYW1w
bGVycyBhcmUgYm91bmQgdG8gdmFsaWQgdGV4dHVyZXMuCi0gICAgICAgICAgICAgICAgLy8gV2Ug
bXVzdCBub3QgYWxsb3cgT3BlbkdMIHRvIGdpdmUgdW5ib3VuZCBzYW1wbGVycyBhIGRlZmF1bHQg
dmFsdWUgb2YgMCBiZWNhdXNlIHRoYXQgcmVmZXJlbmNlcyB0aGUgZWxlbWVudCB0ZXh0dXJlLAot
ICAgICAgICAgICAgICAgIC8vIHdoaWNoIHNob3VsZCBiZSBpbmFjY2Vzc2libGUgdG8gdGhlIGF1
dGhvcidzIHNoYWRlciBjb2RlLgotICAgICAgICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NjIzMAotICAgICAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgU3ltYm9sTmFtZVRvVHlwZU1hcCogdW5p
Zm9ybU5hbWVUb1R5cGVNYXAgPSBidWlsdEluVW5pZm9ybU5hbWVUb1R5cGVNYXAoKTsKLSAgICAg
ICAgICAgIFN5bWJvbE5hbWVUb1R5cGVNYXA6Oml0ZXJhdG9yIGJ1aWx0SW5Vbmlmb3JtID0gdW5p
Zm9ybU5hbWVUb1R5cGVNYXAtPmZpbmQoc3ltYm9sLm5hbWUpOwotICAgICAgICAgICAgaWYgKGJ1
aWx0SW5Vbmlmb3JtICE9IHVuaWZvcm1OYW1lVG9UeXBlTWFwLT5lbmQoKSAmJiAoc3ltYm9sLmlz
QXJyYXkgfHwgc3ltYm9sLmRhdGFUeXBlICE9IGJ1aWx0SW5Vbmlmb3JtLT52YWx1ZSkpIHsKLSAg
ICAgICAgICAgICAgICAvLyBUaGUgYXV0aG9yIGRlZmluZWQgb25lIG9mIHRoZSBidWlsdC1pbiB1
bmlmb3JtcyB3aXRoIHRoZSB3cm9uZyB0eXBlLgotICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBS
ZXBvcnQgdGhlIHZhbGlkYXRpb24gZXJyb3IuCi0gICAgICAgICAgICAgICAgLy8gaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NDE2Ci0gICAgICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0K
LSAgICAgICAgY2FzZSBTSEFERVJfU1lNQk9MX1RZUEVfVkFSWUlORzoKLSAgICAgICAgICAgIC8v
IE5vIHNwZWNpYWwgdmFsaWRhdGlvbiBmb3IgdmFyeWluZyB0eXBlcy4KLSAgICAgICAgICAgIGJy
ZWFrOwotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgIH0KLQotICAgIHJldHVybiB0cnVl
OwotfQotCi1TdHJpbmcgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6ZGVmYXVsdFZlcnRl
eFNoYWRlclN0cmluZygpCi17Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIHZlcnRl
eFNoYWRlclN0cmluZywgKEFTQ0lJTGl0ZXJhbChTSEFERVIoCi0gICAgICAgIGF0dHJpYnV0ZSBt
ZWRpdW1wIHZlYzQgYV9wb3NpdGlvbjsKLSAgICAgICAgdW5pZm9ybSBtZWRpdW1wIG1hdDQgdV9w
cm9qZWN0aW9uTWF0cml4OwotCi0gICAgICAgIHZvaWQgbWFpbigpCi0gICAgICAgIHsKLSAgICAg
ICAgICAgIGdsX1Bvc2l0aW9uID0gdV9wcm9qZWN0aW9uTWF0cml4ICogYV9wb3NpdGlvbjsKLSAg
ICAgICAgfQotICAgICkpKSk7Ci0gICAgcmV0dXJuIHZlcnRleFNoYWRlclN0cmluZzsKLX0KLQot
U3RyaW5nIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW06OmRlZmF1bHRGcmFnbWVudFNoYWRl
clN0cmluZygpCi17Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIGZyYWdtZW50U2hh
ZGVyU3RyaW5nLCAoQVNDSUlMaXRlcmFsKFNIQURFUigKLSAgICAgICAgdm9pZCBtYWluKCkKLSAg
ICAgICAgewotICAgICAgICB9Ci0gICAgKSkpKTsKLSAgICByZXR1cm4gZnJhZ21lbnRTaGFkZXJT
dHJpbmc7Ci19Ci0KLUN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW06OkN1c3RvbUZpbHRlclZh
bGlkYXRlZFByb2dyYW0oQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCogZ2xvYmFsQ29udGV4dCwg
Y29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvKQotICAgIDogbV9wcm9n
cmFtSW5mbyhwcm9ncmFtSW5mbykKLSAgICAsIG1faXNJbml0aWFsaXplZChmYWxzZSkKLXsKLSAg
ICBwbGF0Zm9ybUluaXQoKTsKLQotICAgIFN0cmluZyBvcmlnaW5hbFZlcnRleFNoYWRlciA9IHBy
b2dyYW1JbmZvLnZlcnRleFNoYWRlclN0cmluZygpOwotICAgIGlmIChvcmlnaW5hbFZlcnRleFNo
YWRlci5pc051bGwoKSkKLSAgICAgICAgb3JpZ2luYWxWZXJ0ZXhTaGFkZXIgPSBkZWZhdWx0VmVy
dGV4U2hhZGVyU3RyaW5nKCk7Ci0KLSAgICBTdHJpbmcgb3JpZ2luYWxGcmFnbWVudFNoYWRlciA9
IHByb2dyYW1JbmZvLmZyYWdtZW50U2hhZGVyU3RyaW5nKCk7Ci0gICAgaWYgKG9yaWdpbmFsRnJh
Z21lbnRTaGFkZXIuaXNOdWxsKCkpCi0gICAgICAgIG9yaWdpbmFsRnJhZ21lbnRTaGFkZXIgPSBk
ZWZhdWx0RnJhZ21lbnRTaGFkZXJTdHJpbmcoKTsKLQotICAgIC8vIFNoYWRlcnMgcmVmZXJlbmNl
ZCBmcm9tIHRoZSBDU1MgbWl4IGZ1bmN0aW9uIHVzZSBhIGRpZmZlcmVudCB2YWxpZGF0b3IgdGhh
biByZWd1bGFyIFdlYkdMIHNoYWRlcnMuIFNlZSBDdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0Lmgg
Zm9yIG1vcmUgZGV0YWlscy4KLSAgICBib29sIGJsZW5kc0VsZW1lbnRUZXh0dXJlID0gKHByb2dy
YW1JbmZvLnByb2dyYW1UeXBlKCkgPT0gUFJPR1JBTV9UWVBFX0JMRU5EU19FTEVNRU5UX1RFWFRV
UkUpOwotICAgIEFOR0xFV2ViS2l0QnJpZGdlKiB2YWxpZGF0b3IgPSBibGVuZHNFbGVtZW50VGV4
dHVyZSA/IGdsb2JhbENvbnRleHQtPm1peFNoYWRlclZhbGlkYXRvcigpIDogZ2xvYmFsQ29udGV4
dC0+d2ViZ2xTaGFkZXJWYWxpZGF0b3IoKTsKLSAgICBTdHJpbmcgdmVydGV4U2hhZGVyTG9nLCBm
cmFnbWVudFNoYWRlckxvZzsKLSAgICBWZWN0b3I8QU5HTEVTaGFkZXJTeW1ib2w+IHN5bWJvbHM7
Ci0gICAgYm9vbCB2ZXJ0ZXhTaGFkZXJWYWxpZCA9IHZhbGlkYXRvci0+Y29tcGlsZVNoYWRlclNv
dXJjZShvcmlnaW5hbFZlcnRleFNoYWRlci51dGY4KCkuZGF0YSgpLCBTSEFERVJfVFlQRV9WRVJU
RVgsIG1fdmFsaWRhdGVkVmVydGV4U2hhZGVyLCB2ZXJ0ZXhTaGFkZXJMb2csIHN5bWJvbHMpOwot
ICAgIGJvb2wgZnJhZ21lbnRTaGFkZXJWYWxpZCA9IHZhbGlkYXRvci0+Y29tcGlsZVNoYWRlclNv
dXJjZShvcmlnaW5hbEZyYWdtZW50U2hhZGVyLnV0ZjgoKS5kYXRhKCksIFNIQURFUl9UWVBFX0ZS
QUdNRU5ULCBtX3ZhbGlkYXRlZEZyYWdtZW50U2hhZGVyLCBmcmFnbWVudFNoYWRlckxvZywgc3lt
Ym9scyk7Ci0gICAgaWYgKCF2ZXJ0ZXhTaGFkZXJWYWxpZCB8fCAhZnJhZ21lbnRTaGFkZXJWYWxp
ZCkgewotICAgICAgICAvLyBGSVhNRTogUmVwb3J0IHRoZSB2YWxpZGF0aW9uIGVycm9ycy4KLSAg
ICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NDE2Ci0g
ICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBpZiAoIXZhbGlkYXRlU3ltYm9scyhzeW1ib2xz
LCBtX3Byb2dyYW1JbmZvLm1lc2hUeXBlKCkpKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBSZXBvcnQg
dmFsaWRhdGlvbiBlcnJvcnMuCi0gICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD03NDQxNgotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgLy8gV2Ug
bmVlZCB0byBhZGQgdGV4dHVyZSBhY2Nlc3MsIGJsZW5kaW5nLCBhbmQgY29tcG9zaXRpbmcgY29k
ZSB0byBzaGFkZXJzIHRoYXQgYXJlIHJlZmVyZW5jZWQgZnJvbSB0aGUgQ1NTIG1peCBmdW5jdGlv
bi4KLSAgICBpZiAoYmxlbmRzRWxlbWVudFRleHR1cmUpIHsKLSAgICAgICAgcmV3cml0ZU1peFZl
cnRleFNoYWRlcihzeW1ib2xzKTsKLSAgICAgICAgcmV3cml0ZU1peEZyYWdtZW50U2hhZGVyKCk7
Ci0gICAgfQotCi0gICAgbV9pc0luaXRpYWxpemVkID0gdHJ1ZTsKLX0KLQotUGFzc1JlZlB0cjxD
dXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0+IEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW06
OmNvbXBpbGVkUHJvZ3JhbSgpCi17Ci0gICAgcmV0dXJuIG1fY29tcGlsZWRQcm9ncmFtOwotfQot
Ci12b2lkIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW06OnNldENvbXBpbGVkUHJvZ3JhbShQ
YXNzUmVmUHRyPEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbT4gY29tcGlsZWRQcm9ncmFtKQot
ewotICAgIG1fY29tcGlsZWRQcm9ncmFtID0gY29tcGlsZWRQcm9ncmFtOwotfQotCi1ib29sIEN1
c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW06Om5lZWRzSW5wdXRUZXh0dXJlKCkgY29uc3QKLXsK
LSAgICByZXR1cm4gbV9wcm9ncmFtSW5mby5wcm9ncmFtVHlwZSgpID09IFBST0dSQU1fVFlQRV9C
TEVORFNfRUxFTUVOVF9URVhUVVJFCi0gICAgICAgICYmIG1fcHJvZ3JhbUluZm8ubWl4U2V0dGlu
Z3MoKS5jb21wb3NpdGVPcGVyYXRvciAhPSBDb21wb3NpdGVDbGVhcgotICAgICAgICAmJiBtX3By
b2dyYW1JbmZvLm1peFNldHRpbmdzKCkuY29tcG9zaXRlT3BlcmF0b3IgIT0gQ29tcG9zaXRlQ29w
eTsKLX0KLQotdm9pZCBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpyZXdyaXRlTWl4VmVy
dGV4U2hhZGVyKGNvbnN0IFZlY3RvcjxBTkdMRVNoYWRlclN5bWJvbD4mIHN5bWJvbHMpCi17Ci0g
ICAgQVNTRVJUKG1fcHJvZ3JhbUluZm8ucHJvZ3JhbVR5cGUoKSA9PSBQUk9HUkFNX1RZUEVfQkxF
TkRTX0VMRU1FTlRfVEVYVFVSRSk7Ci0KLSAgICAvLyBJZiB0aGUgYXV0aG9yIGRlZmluZWQgYV90
ZXhDb29yZCwgd2UgY2FuIHVzZSBpdCB0byBzaHV0dGxlIHRoZSB0ZXh0dXJlIGNvb3JkaW5hdGUg
dG8gdGhlIGZyYWdtZW50IHNoYWRlci4KLSAgICAvLyBOb3RlIHRoYXQgdmVydGV4IGF0dHJpYnV0
ZXMgYXJlIHJlYWQtb25seSBpbiBHTFNMLCBzbyB0aGUgYXV0aG9yIGNvdWxkIG5vdCBoYXZlIGNo
YW5nZWQgYV90ZXhDb29yZCdzIHZhbHVlLgotICAgIC8vIEFsc28sIG5vdGUgdGhhdCB3ZSB3b3Vs
ZCBoYXZlIGFscmVhZHkgcmVqZWN0ZWQgdGhlIHNoYWRlciBpZiB0aGUgYXV0aG9yIGRlZmluZWQg
YV90ZXhDb29yZCB3aXRoIHRoZSB3cm9uZyB0eXBlLgotICAgIGJvb2wgdGV4Q29vcmRBdHRyaWJ1
dGVEZWZpbmVkID0gZmFsc2U7Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzeW1ib2xzLnNp
emUoKTsgKytpKSB7Ci0gICAgICAgIGlmIChzeW1ib2xzW2ldLm5hbWUgPT0gImFfdGV4Q29vcmQi
KQotICAgICAgICAgICAgdGV4Q29vcmRBdHRyaWJ1dGVEZWZpbmVkID0gdHJ1ZTsKLSAgICB9Ci0K
LSAgICBpZiAoIXRleENvb3JkQXR0cmlidXRlRGVmaW5lZCkKLSAgICAgICAgbV92YWxpZGF0ZWRW
ZXJ0ZXhTaGFkZXIuYXBwZW5kKCJhdHRyaWJ1dGUgbWVkaXVtcCB2ZWMyIGFfdGV4Q29vcmQ7Iik7
Ci0KLSAgICAvLyBEdXJpbmcgdmFsaWRhdGlvbiwgQU5HTEUgcmVuYW1lZCB0aGUgYXV0aG9yJ3Mg
Im1haW4iIGZ1bmN0aW9uIHRvICJjc3NfbWFpbiIuCi0gICAgLy8gV2Ugd3JpdGUgb3VyIG93biAi
bWFpbiIgZnVuY3Rpb24gYW5kIGNhbGwgImNzc19tYWluIiBmcm9tIGl0LgotICAgIC8vIFRoaXMg
bWFrZXMgcmV3cml0aW5nIGVhc3kgYW5kIGVuc3VyZXMgdGhhdCBvdXIgY29kZSBydW5zIGFmdGVy
IGFsbCBhdXRob3IgY29kZS4KLSAgICBtX3ZhbGlkYXRlZFZlcnRleFNoYWRlci5hcHBlbmQoU0hB
REVSKAotICAgICAgICB2YXJ5aW5nIG1lZGl1bXAgdmVjMiBjc3Nfdl90ZXhDb29yZDsKLQotICAg
ICAgICB2b2lkIG1haW4oKQotICAgICAgICB7Ci0gICAgICAgICAgICBjc3NfbWFpbigpOwotICAg
ICAgICAgICAgY3NzX3ZfdGV4Q29vcmQgPSBhX3RleENvb3JkOwotICAgICAgICB9Ci0gICAgKSk7
Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6cmV3cml0ZU1peEZyYWdt
ZW50U2hhZGVyKCkKLXsKLSAgICBBU1NFUlQobV9wcm9ncmFtSW5mby5wcm9ncmFtVHlwZSgpID09
IFBST0dSQU1fVFlQRV9CTEVORFNfRUxFTUVOVF9URVhUVVJFKTsKLQotICAgIFN0cmluZ0J1aWxk
ZXIgYnVpbGRlcjsKLSAgICAvLyBBTkdMRSBjb25zaWRlcmVkIHRoZXNlIHN5bWJvbHMgYXMgYnVp
bHQtaW5zIGR1cmluZyB2YWxpZGF0aW9uIHVuZGVyIHRoZSBTSF9DU1NfU0hBREVSU19TUEVDIGZs
YWcuCi0gICAgLy8gTm93LCB3ZSBoYXZlIHRvIGRlZmluZSB0aGVzZSBzeW1ib2xzIGluIG9yZGVy
IHRvIG1ha2UgdGhpcyBzaGFkZXIgdmFsaWQgR0xTTC4KLSAgICAvLyBXZSBkZWZpbmUgdGhlc2Ug
c3ltYm9scyBiZWZvcmUgdGhlIGF1dGhvcidzIHNoYWRlciBjb2RlLCB3aGljaCBtYWtlcyB0aGVt
IGFjY2Vzc2libGUgdG8gYXV0aG9yIGNvZGUuCi0gICAgYnVpbGRlci5hcHBlbmQoU0hBREVSKAot
ICAgICAgICBtZWRpdW1wIHZlYzQgY3NzX01peENvbG9yID0gdmVjNCgwLjApOwotICAgICAgICBt
ZWRpdW1wIG1hdDQgY3NzX0NvbG9yTWF0cml4ID0gbWF0NCgxLjApOwotICAgICkpOwotICAgIGJ1
aWxkZXIuYXBwZW5kKG1fdmFsaWRhdGVkRnJhZ21lbnRTaGFkZXIpOwotICAgIGJ1aWxkZXIuYXBw
ZW5kKGJsZW5kRnVuY3Rpb25TdHJpbmcobV9wcm9ncmFtSW5mby5taXhTZXR0aW5ncygpLmJsZW5k
TW9kZSkpOwotICAgIGJ1aWxkZXIuYXBwZW5kKGNvbXBvc2l0ZUZ1bmN0aW9uU3RyaW5nKG1fcHJv
Z3JhbUluZm8ubWl4U2V0dGluZ3MoKS5jb21wb3NpdGVPcGVyYXRvcikpOwotICAgIC8vIFdlIGRl
ZmluZSBzeW1ib2xzIGxpa2UgImNzc191X3RleHR1cmUiIGFmdGVyIHRoZSBhdXRob3IncyBzaGFk
ZXIgY29kZSwgd2hpY2ggbWFrZXMgdGhlbSBpbmFjY2Vzc2libGUgdG8gYXV0aG9yIGNvZGUuCi0g
ICAgLy8gSW4gcGFydGljdWxhciwgImNzc191X3RleHR1cmUiIHJlcHJlc2VudHMgdGhlIERPTSBl
bGVtZW50IHRleHR1cmUsIHNvIGl0J3MgaW1wb3J0YW50IHRvIGtlZXAgaXQgaW5hY2Nlc3NpYmxl
IHRvCi0gICAgLy8gYXV0aG9yIGNvZGUgZm9yIHNlY3VyaXR5IHJlYXNvbnMuCi0gICAgYnVpbGRl
ci5hcHBlbmQoU0hBREVSKAotICAgICAgICB1bmlmb3JtIHNhbXBsZXIyRCBjc3NfdV90ZXh0dXJl
OwotICAgICAgICB2YXJ5aW5nIG1lZGl1bXAgdmVjMiBjc3Nfdl90ZXhDb29yZDsKLQotICAgICAg
ICB2b2lkIG1haW4oKQotICAgICAgICB7Ci0gICAgICAgICAgICBjc3NfbWFpbigpOwotICAgICAg
ICAgICAgbWVkaXVtcCB2ZWM0IG9yaWdpbmFsQ29sb3IgPSB0ZXh0dXJlMkQoY3NzX3VfdGV4dHVy
ZSwgY3NzX3ZfdGV4Q29vcmQpOwotICAgICAgICAgICAgbWVkaXVtcCB2ZWM0IG11bHRpcGxpZWRD
b2xvciA9IGNsYW1wKGNzc19Db2xvck1hdHJpeCAqIG9yaWdpbmFsQ29sb3IsIDAuMCwgMS4wKTsK
LSAgICAgICAgICAgIG1lZGl1bXAgdmVjNCBjbGFtcGVkTWl4Q29sb3IgPSBjbGFtcChjc3NfTWl4
Q29sb3IsIDAuMCwgMS4wKTsKLSAgICAgICAgICAgIG1lZGl1bXAgdmVjMyBibGVuZGVkQ29sb3Ig
PSBjc3NfQmxlbmRDb2xvcihtdWx0aXBsaWVkQ29sb3IucmdiLCBjbGFtcGVkTWl4Q29sb3Iucmdi
KTsKLSAgICAgICAgICAgIG1lZGl1bXAgdmVjMyB3ZWlnaHRlZENvbG9yID0gKDEuMCAtIG11bHRp
cGxpZWRDb2xvci5hKSAqIGNsYW1wZWRNaXhDb2xvci5yZ2IgKyBtdWx0aXBsaWVkQ29sb3IuYSAq
IGJsZW5kZWRDb2xvcjsKLSAgICAgICAgICAgIGdsX0ZyYWdDb2xvciA9IGNzc19Db21wb3NpdGUo
bXVsdGlwbGllZENvbG9yLnJnYiwgbXVsdGlwbGllZENvbG9yLmEsIHdlaWdodGVkQ29sb3Iucmdi
LCBjbGFtcGVkTWl4Q29sb3IuYSk7Ci0gICAgICAgIH0KLSAgICApKTsKLSAgICBtX3ZhbGlkYXRl
ZEZyYWdtZW50U2hhZGVyID0gYnVpbGRlci50b1N0cmluZygpOwotfQotCi1TdHJpbmcgQ3VzdG9t
RmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6YmxlbmRGdW5jdGlvblN0cmluZyhCbGVuZE1vZGUgYmxl
bmRNb2RlKQotewotICAgIC8vIEltcGxlbWVudGVkIHVzaW5nIHRoZSBzYW1lIHN5bWJvbCBuYW1l
cyBhcyB0aGUgQ29tcG9zaXRpbmcgYW5kIEJsZW5kaW5nIHNwZWM6Ci0gICAgLy8gaHR0cHM6Ly9k
dmNzLnczLm9yZy9oZy9GWFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwjYmxl
bmRpbmdub3JtYWwKLSAgICAvLyBDczogaXMgdGhlIHNvdXJjZSBjb2xvciBpbiBjc3NfQmxlbmRD
b2xvcigpIGFuZCB0aGUgc291cmNlIGNvbG9yIGNvbXBvbmVudCBpbiBjc3NfQmxlbmRDb21wb25l
bnQoKQotICAgIC8vIENiOiBpcyB0aGUgYmFja2Ryb3AgY29sb3IgaW4gY3NzX0JsZW5kQ29sb3Io
KSBhbmQgdGhlIGJhY2tkcm9wIGNvbG9yIGNvbXBvbmVudCBpbiBjc3NfQmxlbmRDb21wb25lbnQo
KQotICAgIGNvbnN0IGNoYXIqIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gInZlYzMoY3NzX0JsZW5k
Q29tcG9uZW50KENiLnIsIENzLnIpLCBjc3NfQmxlbmRDb21wb25lbnQoQ2IuZywgQ3MuZyksIGNz
c19CbGVuZENvbXBvbmVudChDYi5iLCBDcy5iKSkiOwotICAgIGNvbnN0IGNoYXIqIGJsZW5kQ29t
cG9uZW50RXhwcmVzc2lvbiA9ICJDbyA9IDAuMDsiOwotICAgIGJvb2wgbmVlZHNMdW1pbm9zaXR5
SGVscGVyRnVuY3Rpb25zID0gZmFsc2U7Ci0gICAgYm9vbCBuZWVkc1NhdHVyYXRpb25IZWxwZXJG
dW5jdGlvbnMgPSBmYWxzZTsKLSAgICBTdHJpbmcgYmxlbmRGdW5jdGlvblN0cmluZzsKLSAgICBz
d2l0Y2ggKGJsZW5kTW9kZSkgewotICAgIGNhc2UgQmxlbmRNb2RlTm9ybWFsOgotICAgICAgICBi
bGVuZENvbG9yRXhwcmVzc2lvbiA9ICJDcyI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxl
bmRNb2RlTXVsdGlwbHk6Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gIkNzICogQ2Ii
OwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZVNjcmVlbjoKLSAgICAgICAgYmxl
bmRDb2xvckV4cHJlc3Npb24gPSAiQ2IgKyBDcyAtIChDYiAqIENzKSI7Ci0gICAgICAgIGJyZWFr
OwotICAgIGNhc2UgQmxlbmRNb2RlRGFya2VuOgotICAgICAgICBibGVuZENvbG9yRXhwcmVzc2lv
biA9ICJtaW4oQ2IsIENzKSI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRNb2RlTGln
aHRlbjoKLSAgICAgICAgYmxlbmRDb2xvckV4cHJlc3Npb24gPSAibWF4KENiLCBDcykiOwotICAg
ICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZURpZmZlcmVuY2U6Ci0gICAgICAgIGJsZW5k
Q29sb3JFeHByZXNzaW9uID0gImFicyhDYiAtIENzKSI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNh
c2UgQmxlbmRNb2RlRXhjbHVzaW9uOgotICAgICAgICBibGVuZENvbG9yRXhwcmVzc2lvbiA9ICJD
YiArIENzIC0gMi4wICogQ2IgKiBDcyI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRN
b2RlT3ZlcmxheToKLSAgICAgICAgLyoKLSAgICAgICAgICAgIENvID0gSGFyZExpZ2h0KENzLCBD
YikKLSAgICAgICAgICAgICAgID0gaWYoQ2IgPD0gMC41KQotICAgICAgICAgICAgICAgICAgICAg
TXVsdGlwbHkoQ3MsIDIgeCBDYikKLSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAg
ICAgICAgICAgU2NyZWVuKENzLCAyIHggQ2IgLSAxKQotICAgICAgICAgICAgICAgPSBpZihDYiA8
PSAwLjUpCi0gICAgICAgICAgICAgICAgICAgICBDcyB4ICgyIHggQ2IpCi0gICAgICAgICAgICAg
ICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgIENzICsgKDIgeCBDYiAtIDEpIC0gKENzIHgg
KDIgeCBDYiAtIDEpKQotICAgICAgICAqLwotICAgICAgICBibGVuZENvbXBvbmVudEV4cHJlc3Np
b24gPSBTSEFERVIoCi0gICAgICAgICAgICBpZiAoQ2IgPD0gMC41KQotICAgICAgICAgICAgICAg
IENvID0gQ3MgKiAoMi4wICogQ2IpOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAg
IENvID0gQ3MgKyAoMi4wICogQ2IgLSAxLjApIC0gKENzICogKDIuMCAqIENiIC0gMS4wKSk7Ci0g
ICAgICAgICk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRNb2RlQ29sb3JEb2RnZToK
LSAgICAgICAgLyoKLSAgICAgICAgICAgIENvID0gaWYoQ3MgPCAxKQotICAgICAgICAgICAgICAg
ICAgICAgbWluKDEsIENiIC8gKDEgLSBDcykpCi0gICAgICAgICAgICAgICAgIGVsc2UKLSAgICAg
ICAgICAgICAgICAgICAgIDEKLSAgICAgICAgKi8KLSAgICAgICAgYmxlbmRDb21wb25lbnRFeHBy
ZXNzaW9uID0gU0hBREVSKAotICAgICAgICAgICAgaWYgKENzIDwgMS4wKQotICAgICAgICAgICAg
ICAgIENvID0gbWluKDEuMCwgQ2IgLyAoMS4wIC0gQ3MpKTsKLSAgICAgICAgICAgIGVsc2UKLSAg
ICAgICAgICAgICAgICBDbyA9IDEuMDsKLSAgICAgICAgKTsKLSAgICAgICAgYnJlYWs7Ci0gICAg
Y2FzZSBCbGVuZE1vZGVDb2xvckJ1cm46Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBDbyA9IGlm
KENzID4gMCkKLSAgICAgICAgICAgICAgICAgICAgIDEgLSBtaW4oMSwgKDEgLSBDYikgLyBDcykK
LSAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgMAotICAgICAgICAq
LwotICAgICAgICBibGVuZENvbXBvbmVudEV4cHJlc3Npb24gPSBTSEFERVIoCi0gICAgICAgICAg
ICBpZiAoQ3MgPiAwLjApCi0gICAgICAgICAgICAgICAgQ28gPSAxLjAgLSBtaW4oMS4wLCAoMS4w
IC0gQ2IpIC8gQ3MpOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIENvID0gMC4w
OwotICAgICAgICApOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEJsZW5kTW9kZUhhcmRMaWdo
dDoKLSAgICAgICAgLyoKLSAgICAgICAgICAgIENvID0gaWYoQ3MgPD0gMC41KQotICAgICAgICAg
ICAgICAgICAgICAgTXVsdGlwbHkoQ2IsIDIgeCBDcykKLSAgICAgICAgICAgICAgICAgZWxzZQot
ICAgICAgICAgICAgICAgICAgICAgU2NyZWVuKENiLCAyIHggQ3MgLTEpCi0gICAgICAgICAgICAg
ICA9IGlmKENzIDw9IDAuNSkKLSAgICAgICAgICAgICAgICAgICAgIENiIHggKDIgeCBDcykKLSAg
ICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgQ2IgKyAoMiB4IENzIC0g
MSkgLSAoQ2IgeCAoMiB4IENzIC0gMSkpCi0gICAgICAgICovCi0gICAgICAgIGJsZW5kQ29tcG9u
ZW50RXhwcmVzc2lvbiA9IFNIQURFUigKLSAgICAgICAgICAgIGlmIChDcyA8PSAwLjUpCi0gICAg
ICAgICAgICAgICAgQ28gPSBDYiAqICgyLjAgKiBDcyk7Ci0gICAgICAgICAgICBlbHNlCi0gICAg
ICAgICAgICAgICAgQ28gPSBDYiArICgyLjAgKiBDcyAtIDEuMCkgLSAoQ2IgKiAoMi4wICogQ3Mg
LSAxLjApKTsKLSAgICAgICAgKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVT
b2Z0TGlnaHQ6Ci0gICAgICAgIC8qCi0gICAgICAgICAgICBDbyA9IGlmKENzIDw9IDAuNSkKLSAg
ICAgICAgICAgICAgICAgICAgIENiIC0gKDEgLSAyIHggQ3MpIHggQ2IgeCAoMSAtIENiKQotICAg
ICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICBDYiArICgyIHggQ3MgLSAx
KSB4IChEKENiKSAtIENiKQotCi0gICAgICAgICAgICB3aXRoCi0KLSAgICAgICAgICAgIEQoQ2Ip
ID0gaWYoQ2IgPD0gMC4yNSkKLSAgICAgICAgICAgICAgICAgICAgICAgICgxNiAqIENiIC0gMTIp
IHggQ2IgKyA0KSB4IENiCi0gICAgICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAg
ICAgICAgICAgIHNxcnQoQ2IpCi0gICAgICAgICovCi0gICAgICAgIGJsZW5kQ29tcG9uZW50RXhw
cmVzc2lvbiA9IFNIQURFUigKLSAgICAgICAgICAgIG1lZGl1bXAgZmxvYXQgRDsKLSAgICAgICAg
ICAgIGlmIChDYiA8PSAwLjI1KQotICAgICAgICAgICAgICAgIEQgPSAoKDE2LjAgKiBDYiAtIDEy
LjApICogQ2IgKyA0LjApICogQ2I7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAg
RCA9IHNxcnQoQ2IpOwotCi0gICAgICAgICAgICBpZiAoQ3MgPD0gMC41KQotICAgICAgICAgICAg
ICAgIENvID0gQ2IgLSAoMS4wIC0gMi4wICogQ3MpICogQ2IgKiAoMS4wIC0gQ2IpOwotICAgICAg
ICAgICAgZWxzZQotICAgICAgICAgICAgICAgIENvID0gQ2IgKyAoMi4wICogQ3MgLSAxLjApICog
KEQgLSBDYik7Ci0gICAgICAgICk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRNb2Rl
Q29sb3I6Ci0gICAgICAgIG5lZWRzTHVtaW5vc2l0eUhlbHBlckZ1bmN0aW9ucyA9IHRydWU7Ci0g
ICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gImNzc19TZXRMdW0oQ3MsIGNzc19MdW0oQ2Ip
KSI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQmxlbmRNb2RlTHVtaW5vc2l0eToKLSAgICAg
ICAgbmVlZHNMdW1pbm9zaXR5SGVscGVyRnVuY3Rpb25zID0gdHJ1ZTsKLSAgICAgICAgYmxlbmRD
b2xvckV4cHJlc3Npb24gPSAiY3NzX1NldEx1bShDYiwgY3NzX0x1bShDcykpIjsKLSAgICAgICAg
YnJlYWs7Ci0gICAgY2FzZSBCbGVuZE1vZGVIdWU6Ci0gICAgICAgIG5lZWRzTHVtaW5vc2l0eUhl
bHBlckZ1bmN0aW9ucyA9IHRydWU7Ci0gICAgICAgIG5lZWRzU2F0dXJhdGlvbkhlbHBlckZ1bmN0
aW9ucyA9IHRydWU7Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gImNzc19TZXRMdW0o
Y3NzX1NldFNhdChDcywgY3NzX1NhdChDYikpLCBjc3NfTHVtKENiKSkiOwotICAgICAgICBicmVh
azsKLSAgICBjYXNlIEJsZW5kTW9kZVNhdHVyYXRpb246Ci0gICAgICAgIG5lZWRzTHVtaW5vc2l0
eUhlbHBlckZ1bmN0aW9ucyA9IHRydWU7Ci0gICAgICAgIG5lZWRzU2F0dXJhdGlvbkhlbHBlckZ1
bmN0aW9ucyA9IHRydWU7Ci0gICAgICAgIGJsZW5kQ29sb3JFeHByZXNzaW9uID0gImNzc19TZXRM
dW0oY3NzX1NldFNhdChDYiwgY3NzX1NhdChDcykpLCBjc3NfTHVtKENiKSkiOwotICAgICAgICBi
cmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICB9
Ci0KLSAgICBpZiAobmVlZHNMdW1pbm9zaXR5SGVscGVyRnVuY3Rpb25zKSB7Ci0gICAgICAgIGJs
ZW5kRnVuY3Rpb25TdHJpbmcuYXBwZW5kKFNIQURFUigKLSAgICAgICAgICAgIG1lZGl1bXAgZmxv
YXQgY3NzX0x1bShtZWRpdW1wIHZlYzMgQykKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAg
ICByZXR1cm4gMC4zICogQy5yICsgMC41OSAqIEMuZyArIDAuMTEgKiBDLmI7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgICAgICBtZWRpdW1wIHZlYzMgY3NzX0NsaXBDb2xvcihtZWRpdW1wIHZlYzMg
QykKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBtZWRpdW1wIGZsb2F0IEwgPSBjc3Nf
THVtKEMpOwotICAgICAgICAgICAgICAgIG1lZGl1bXAgZmxvYXQgbiA9IG1pbihtaW4oQy5yLCBD
LmcpLCBDLmIpOwotICAgICAgICAgICAgICAgIG1lZGl1bXAgZmxvYXQgeCA9IG1heChtYXgoQy5y
LCBDLmcpLCBDLmIpOwotICAgICAgICAgICAgICAgIGlmIChuIDwgMC4wKQotICAgICAgICAgICAg
ICAgICAgICBDID0gTCArICgoKEMgLSBMKSAqIEwpIC8gKEwgLSBuKSk7Ci0gICAgICAgICAgICAg
ICAgaWYgKHggPiAxLjApCi0gICAgICAgICAgICAgICAgICAgIEMgPSBMICsgKCgoQyAtIEwpICog
KDEuMCAtIEwpIC8gKHggLSBMKSkpOwotICAgICAgICAgICAgICAgIHJldHVybiBDOwotICAgICAg
ICAgICAgfQotICAgICAgICAgICAgbWVkaXVtcCB2ZWMzIGNzc19TZXRMdW0obWVkaXVtcCB2ZWMz
IEMsIG1lZGl1bXAgZmxvYXQgbCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBDICs9
IGwgLSBjc3NfTHVtKEMpOwotICAgICAgICAgICAgICAgIHJldHVybiBjc3NfQ2xpcENvbG9yKEMp
OwotICAgICAgICAgICAgfQotICAgICAgICApKTsKLSAgICB9Ci0KLSAgICBpZiAobmVlZHNTYXR1
cmF0aW9uSGVscGVyRnVuY3Rpb25zKSB7Ci0gICAgICAgIGJsZW5kRnVuY3Rpb25TdHJpbmcuYXBw
ZW5kKFNIQURFUigKLSAgICAgICAgICAgIG1lZGl1bXAgZmxvYXQgY3NzX1NhdChtZWRpdW1wIHZl
YzMgQykKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBtZWRpdW1wIGZsb2F0IGNNaW4g
PSBtaW4obWluKEMuciwgQy5nKSwgQy5iKTsKLSAgICAgICAgICAgICAgICBtZWRpdW1wIGZsb2F0
IGNNYXggPSBtYXgobWF4KEMuciwgQy5nKSwgQy5iKTsKLSAgICAgICAgICAgICAgICByZXR1cm4g
Y01heCAtIGNNaW47Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICB2b2lkIGNzc19TZXRTYXRI
ZWxwZXIoaW5vdXQgbWVkaXVtcCBmbG9hdCBjTWluLCBpbm91dCBtZWRpdW1wIGZsb2F0IGNNaWQs
IGlub3V0IG1lZGl1bXAgZmxvYXQgY01heCwgbWVkaXVtcCBmbG9hdCBzKQotICAgICAgICAgICAg
ewotICAgICAgICAgICAgICAgIGlmIChjTWF4ID4gY01pbikgewotICAgICAgICAgICAgICAgICAg
ICBjTWlkID0gKCgoY01pZCAtIGNNaW4pICogcykgLyAoY01heCAtIGNNaW4pKTsKLSAgICAgICAg
ICAgICAgICAgICAgY01heCA9IHM7Ci0gICAgICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAg
ICAgICAgICAgIGNNaWQgPSBjTWF4ID0gMC4wOwotICAgICAgICAgICAgICAgIGNNaW4gPSAwLjA7
Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBtZWRpdW1wIHZlYzMgY3NzX1NldFNhdChtZWRp
dW1wIHZlYzMgQywgbWVkaXVtcCBmbG9hdCBzKQotICAgICAgICAgICAgewotICAgICAgICAgICAg
ICAgIGlmIChDLnIgPD0gQy5nKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChDLmcgPD0gQy5i
KQotICAgICAgICAgICAgICAgICAgICAgICAgY3NzX1NldFNhdEhlbHBlcihDLnIsIEMuZywgQy5i
LCBzKTsKLSAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICBpZiAoQy5yIDw9IEMuYikKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjc3NfU2V0U2F0
SGVscGVyKEMuciwgQy5iLCBDLmcsIHMpOwotICAgICAgICAgICAgICAgICAgICAgICAgZWxzZQot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzc19TZXRTYXRIZWxwZXIoQy5iLCBDLnIsIEMu
Zywgcyk7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9IGVsc2Ugewot
ICAgICAgICAgICAgICAgICAgICBpZiAoQy5yIDw9IEMuYikKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGNzc19TZXRTYXRIZWxwZXIoQy5nLCBDLnIsIEMuYiwgcyk7Ci0gICAgICAgICAgICAgICAg
ICAgIGVsc2UgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEMuZyA8PSBDLmIpCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY3NzX1NldFNhdEhlbHBlcihDLmcsIEMuYiwgQy5yLCBz
KTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjc3NfU2V0U2F0SGVscGVyKEMuYiwgQy5nLCBDLnIsIHMpOwotICAgICAgICAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIHJldHVybiBDOwotICAg
ICAgICAgICAgfQotICAgICAgICApKTsKLSAgICB9Ci0KLSAgICBibGVuZEZ1bmN0aW9uU3RyaW5n
LmFwcGVuZChTdHJpbmc6OmZvcm1hdChTSEFERVIoCi0gICAgICAgIG1lZGl1bXAgZmxvYXQgY3Nz
X0JsZW5kQ29tcG9uZW50KG1lZGl1bXAgZmxvYXQgQ2IsIG1lZGl1bXAgZmxvYXQgQ3MpCi0gICAg
ICAgIHsKLSAgICAgICAgICAgIG1lZGl1bXAgZmxvYXQgQ287Ci0gICAgICAgICAgICAlcwotICAg
ICAgICAgICAgcmV0dXJuIENvOwotICAgICAgICB9Ci0gICAgICAgIG1lZGl1bXAgdmVjMyBjc3Nf
QmxlbmRDb2xvcihtZWRpdW1wIHZlYzMgQ2IsIG1lZGl1bXAgdmVjMyBDcykKLSAgICAgICAgewot
ICAgICAgICAgICAgcmV0dXJuICVzOwotICAgICAgICB9Ci0gICAgKSwgYmxlbmRDb21wb25lbnRF
eHByZXNzaW9uLCBibGVuZENvbG9yRXhwcmVzc2lvbikpOwotCi0gICAgcmV0dXJuIGJsZW5kRnVu
Y3Rpb25TdHJpbmc7Ci19Ci0KLVN0cmluZyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpj
b21wb3NpdGVGdW5jdGlvblN0cmluZyhDb21wb3NpdGVPcGVyYXRvciBjb21wb3NpdGVPcGVyYXRv
cikKLXsKLSAgICAvLyBVc2UgdGhlIHNhbWUgc3ltYm9sIG5hbWVzIGFzIHRoZSBDb21wb3NpdGlu
ZyBhbmQgQmxlbmRpbmcgc3BlYzoKLSAgICAvLyBodHRwczovL2R2Y3MudzMub3JnL2hnL0ZYVEYv
cmF3ZmlsZS90aXAvY29tcG9zaXRpbmcvaW5kZXguaHRtbCNibGVuZGluZ25vcm1hbAotICAgIC8v
IENzOiBpcyB0aGUgc291cmNlIGNvbG9yCi0gICAgLy8gQ2I6IGlzIHRoZSBiYWNrZHJvcCBjb2xv
cgotICAgIC8vIGFzOiBpcyB0aGUgc291cmNlIGFscGhhCi0gICAgLy8gYWI6IGlzIHRoZSBiYWNr
ZHJvcCBhbHBoYQotICAgIC8vIEZhOiBpcyBkZWZpbmVkIGJ5IHRoZSBQb3J0ZXIgRHVmZiBvcGVy
YXRvciBpbiB1c2UKLSAgICAvLyBGYjogaXMgZGVmaW5lZCBieSB0aGUgUG9ydGVyIER1ZmYgb3Bl
cmF0b3IgaW4gdXNlCi0gICAgY29uc3QgY2hhciogRmEgPSAwOwotICAgIGNvbnN0IGNoYXIqIEZi
ID0gMDsKLSAgICBzd2l0Y2ggKGNvbXBvc2l0ZU9wZXJhdG9yKSB7Ci0gICAgY2FzZSBDb21wb3Np
dGVTb3VyY2VBdG9wOgotICAgICAgICBGYSA9ICJhYiI7Ci0gICAgICAgIEZiID0gIjEuMCAtIGFz
IjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVDbGVhcjoKLSAgICAgICAgRmEg
PSAiMC4wIjsKLSAgICAgICAgRmIgPSAiMC4wIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBD
b21wb3NpdGVDb3B5OgotICAgICAgICBGYSA9ICIxLjAiOwotICAgICAgICBGYiA9ICIwLjAiOwot
ICAgICAgICBicmVhazsKLSAgICBjYXNlIENvbXBvc2l0ZVNvdXJjZU92ZXI6Ci0gICAgICAgIEZh
ID0gIjEuMCI7Ci0gICAgICAgIEZiID0gIjEuMCAtIGFzIjsKLSAgICAgICAgYnJlYWs7Ci0gICAg
Y2FzZSBDb21wb3NpdGVTb3VyY2VJbjoKLSAgICAgICAgRmEgPSAiYWIiOwotICAgICAgICBGYiA9
ICIwLjAiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIENvbXBvc2l0ZVNvdXJjZU91dDoKLSAg
ICAgICAgRmEgPSAiMS4wIC0gYWIiOwotICAgICAgICBGYiA9ICIwLjAiOwotICAgICAgICBicmVh
azsKLSAgICBjYXNlIENvbXBvc2l0ZURlc3RpbmF0aW9uT3ZlcjoKLSAgICAgICAgRmEgPSAiMS4w
IC0gYWIiOwotICAgICAgICBGYiA9ICIxLjAiOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIENv
bXBvc2l0ZURlc3RpbmF0aW9uSW46Ci0gICAgICAgIEZhID0gIjAuMCI7Ci0gICAgICAgIEZiID0g
ImFzIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVEZXN0aW5hdGlvbk91dDoK
LSAgICAgICAgRmEgPSAiMC4wIjsKLSAgICAgICAgRmIgPSAiMS4wIC0gYXMiOwotICAgICAgICBi
cmVhazsKLSAgICBjYXNlIENvbXBvc2l0ZURlc3RpbmF0aW9uQXRvcDoKLSAgICAgICAgRmEgPSAi
MS4wIC0gYWIiOwotICAgICAgICBGYiA9ICJhcyI7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2Ug
Q29tcG9zaXRlWE9SOgotICAgICAgICBGYSA9ICIxLjAgLSBhYiI7Ci0gICAgICAgIEZiID0gIjEu
MCAtIGFzIjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDb21wb3NpdGVQbHVzTGlnaHRlcjoK
LSAgICAgICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICAgICAgcmV0dXJuIFN0cmluZygpOwotICAg
IGRlZmF1bHQ6Ci0gICAgICAgIC8vIFRoZSBDU1MgcGFyc2VyIHNob3VsZCBub3QgaGF2ZSBhY2Nl
cHRlZCBhbnkgb3RoZXIgY29tcG9zaXRlIG9wZXJhdG9ycy4KLSAgICAgICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7Ci0gICAgICAgIHJldHVybiBTdHJpbmcoKTsKLSAgICB9Ci0KLSAgICBBU1NFUlQo
RmEgJiYgRmIpOwotICAgIC8vIFVzZSB0aGUgZ2VuZXJhbCBmb3JtdWxhIGZvciBjb21wb3NpdGlu
ZywgbGlmdGVkIGZyb20gdGhlIHNwZWM6Ci0gICAgLy8gaHR0cHM6Ly9kdmNzLnczLm9yZy9oZy9G
WFRGL3Jhd2ZpbGUvdGlwL2NvbXBvc2l0aW5nL2luZGV4Lmh0bWwjZ2VuZXJhbGZvcm11bGEKLSAg
ICByZXR1cm4gU3RyaW5nOjpmb3JtYXQoU0hBREVSKAotICAgICAgICBtZWRpdW1wIHZlYzQgY3Nz
X0NvbXBvc2l0ZShtZWRpdW1wIHZlYzMgQ2IsIG1lZGl1bXAgZmxvYXQgYWIsIG1lZGl1bXAgdmVj
MyBDcywgbWVkaXVtcCBmbG9hdCBhcykKLSAgICAgICAgewotICAgICAgICAgICAgbWVkaXVtcCBm
bG9hdCBGYSA9ICVzOwotICAgICAgICAgICAgbWVkaXVtcCBmbG9hdCBGYiA9ICVzOwotICAgICAg
ICAgICAgcmV0dXJuIHZlYzQoYXMgKiBGYSAqIENzICsgYWIgKiBGYiAqIENiLCBhcyAqIEZhICsg
YWIgKiBGYik7IAotICAgICAgICB9Ci0gICAgKSwgRmEsIEZiKTsKLX0KLSAgICAKLUN1c3RvbUZp
bHRlclZhbGlkYXRlZFByb2dyYW06On5DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtKCkKLXsK
LSAgICBwbGF0Zm9ybURlc3Ryb3koKTsKLX0KLQotQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8gQ3Vz
dG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6dmFsaWRhdGVkUHJvZ3JhbUluZm8oKSBjb25zdAot
ewotICAgIEFTU0VSVChtX2lzSW5pdGlhbGl6ZWQpOwotICAgIHJldHVybiBDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mbyhtX3ZhbGlkYXRlZFZlcnRleFNoYWRlciwgbV92YWxpZGF0ZWRGcmFnbWVudFNo
YWRlciwgbV9wcm9ncmFtSW5mby5wcm9ncmFtVHlwZSgpLCBtX3Byb2dyYW1JbmZvLm1peFNldHRp
bmdzKCksIG1fcHJvZ3JhbUluZm8ubWVzaFR5cGUoKSk7Ci19Ci0KLSNpZiAhVVNFKFRFWFRVUkVf
TUFQUEVSKQotdm9pZCBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOjpwbGF0Zm9ybUluaXQo
KQotewotfQotCi12b2lkIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW06OnBsYXRmb3JtRGVz
dHJveSgpCi17Ci19Ci0jZW5kaWYKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclZhbGlkYXRl
ZFByb2dyYW0uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjcwNDJmMi4uMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZp
bHRlclZhbGlkYXRlZFByb2dyYW0uaAorKysgL2Rldi9udWxsCkBAIC0xLDEyMyArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
LSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0g
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICog
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIEN1c3RvbUZpbHRlclZhbGlk
YXRlZFByb2dyYW1faAotI2RlZmluZSBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtX2gKLQot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1J
bmZvLmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291
bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZT
dHJpbmcuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1zdHJ1Y3QgQU5HTEVTaGFkZXJTeW1i
b2w7Ci1jbGFzcyBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW07Ci1jbGFzcyBDdXN0b21GaWx0
ZXJHbG9iYWxDb250ZXh0OwotCi0jaWYgVVNFKFRFWFRVUkVfTUFQUEVSKQotY2xhc3MgVGV4dHVy
ZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtOwotdHlwZWRlZiBUZXh0dXJlTWFwcGVyUGxh
dGZvcm1Db21waWxlZFByb2dyYW0gUGxhdGZvcm1Db21waWxlZFByb2dyYW07Ci0jZW5kaWYKLQot
Ly8KLS8vIEEgdW5pcXVlIGNvbWJpbmF0aW9uIG9mIHZlcnRleCBzaGFkZXIgYW5kIGZyYWdtZW50
IHNoYWRlciBpcyBvbmx5IHZhbGlkYXRlZCBhbmQgY29tcGlsZWQgb25jZS4KLS8vIEFsbCBzaGFk
ZXJzIGFyZSB2YWxpZGF0ZWQgdGhyb3VnaCBBTkdMRSBpbiBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtIGJlZm9yZSBiZWluZyBjb21waWxlZCBieSB0aGUgR3JhcGhpY3NDb250ZXh0M0QgaW4g
Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtLgotLy8gRm9yIHNoYWRlcnMgdGhhdCB1c2UgdGhl
IENTUyBtaXggZnVuY3Rpb24sIEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0gYWRkcyBzaGFk
ZXIgY29kZSB0byBwZXJmb3JtIERPTSB0ZXh0dXJlIGFjY2VzcywgYmxlbmRpbmcsIGFuZCBjb21w
b3NpdGluZy4KLS8vCi1jbGFzcyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtIDogcHVibGlj
IFJlZkNvdW50ZWQ8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gewotcHVibGljOgotICAg
IHN0YXRpYyBQYXNzUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+IGNyZWF0ZShD
dXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0KiBnbG9iYWxDb250ZXh0LCBjb25zdCBDdXN0b21GaWx0
ZXJQcm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8pCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0oZ2xvYmFsQ29udGV4dCwgcHJvZ3Jh
bUluZm8pKTsKLSAgICB9Ci0KLSAgICB+Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbSgpOwot
Ci0gICAgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvKCkgY29uc3Qg
eyByZXR1cm4gbV9wcm9ncmFtSW5mbzsgfQotICAgIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvIHZh
bGlkYXRlZFByb2dyYW1JbmZvKCkgY29uc3Q7Ci0gICAgCi0gICAgUGFzc1JlZlB0cjxDdXN0b21G
aWx0ZXJDb21waWxlZFByb2dyYW0+IGNvbXBpbGVkUHJvZ3JhbSgpOwotICAgIHZvaWQgc2V0Q29t
cGlsZWRQcm9ncmFtKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPik7Ci0K
LSAgICBjb25zdCBTdHJpbmcmIHZhbGlkYXRlZFZlcnRleFNoYWRlcigpIGNvbnN0IAotICAgIHsK
LSAgICAgICAgQVNTRVJUKG1faXNJbml0aWFsaXplZCk7IAotICAgICAgICByZXR1cm4gbV92YWxp
ZGF0ZWRWZXJ0ZXhTaGFkZXI7IAotICAgIH0KLQotICAgIGNvbnN0IFN0cmluZyYgdmFsaWRhdGVk
RnJhZ21lbnRTaGFkZXIoKSBjb25zdCAKLSAgICB7IAotICAgICAgICBBU1NFUlQobV9pc0luaXRp
YWxpemVkKTsgCi0gICAgICAgIHJldHVybiBtX3ZhbGlkYXRlZEZyYWdtZW50U2hhZGVyOyAKLSAg
ICB9Ci0KLSNpZiBVU0UoVEVYVFVSRV9NQVBQRVIpCi0gICAgUGxhdGZvcm1Db21waWxlZFByb2dy
YW0qIHBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKCk7Ci0jZW5kaWYKLQotICAgIGJvb2wgaXNJbml0
aWFsaXplZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNJbml0aWFsaXplZDsgfQotcHJpdmF0ZToKLSAg
ICBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtKEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQq
LCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYpOwotCi0gICAgdm9pZCBwbGF0Zm9ybUlu
aXQoKTsKLSAgICB2b2lkIHBsYXRmb3JtRGVzdHJveSgpOwotCi0gICAgc3RhdGljIFN0cmluZyBk
ZWZhdWx0VmVydGV4U2hhZGVyU3RyaW5nKCk7Ci0gICAgc3RhdGljIFN0cmluZyBkZWZhdWx0RnJh
Z21lbnRTaGFkZXJTdHJpbmcoKTsKLQotICAgIHN0YXRpYyBTdHJpbmcgYmxlbmRGdW5jdGlvblN0
cmluZyhCbGVuZE1vZGUpOwotICAgIHN0YXRpYyBTdHJpbmcgY29tcG9zaXRlRnVuY3Rpb25TdHJp
bmcoQ29tcG9zaXRlT3BlcmF0b3IpOwotCi0gICAgdm9pZCByZXdyaXRlTWl4VmVydGV4U2hhZGVy
KGNvbnN0IFZlY3RvcjxBTkdMRVNoYWRlclN5bWJvbD4mIHN5bWJvbHMpOwotICAgIHZvaWQgcmV3
cml0ZU1peEZyYWdtZW50U2hhZGVyKCk7Ci0KLSAgICBib29sIG5lZWRzSW5wdXRUZXh0dXJlKCkg
Y29uc3Q7Ci0KLSAgICBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyBtX3Byb2dyYW1JbmZvOwotCi0g
ICAgU3RyaW5nIG1fdmFsaWRhdGVkVmVydGV4U2hhZGVyOwotICAgIFN0cmluZyBtX3ZhbGlkYXRl
ZEZyYWdtZW50U2hhZGVyOwotCi0gICAgUmVmUHRyPEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3Jh
bT4gbV9jb21waWxlZFByb2dyYW07Ci0jaWYgVVNFKFRFWFRVUkVfTUFQUEVSKQotICAgIFBsYXRm
b3JtQ29tcGlsZWRQcm9ncmFtKiBtX3BsYXRmb3JtQ29tcGlsZWRQcm9ncmFtOwotI2VuZGlmCi0K
LSAgICBib29sIG1faXNJbml0aWFsaXplZDsKLX07Ci0KLX0KLQotI2VuZGlmIC8vIEVOQUJMRShD
U1NfU0hBREVSUykKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuY3BwCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBkYzU2MTFkLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuY3BwCisrKyAvZGV2L251bGwK
QEAgLTEsMzgzICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVt
cyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTEgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgot
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
LSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQot
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgot
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdF
LgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykg
JiYgVVNFKDNEX0dSQVBISUNTKQotI2luY2x1ZGUgIkZFQ3VzdG9tRmlsdGVyLmgiCi0KLSNpbmNs
dWRlICJDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0
ZXJSZW5kZXJlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uaCIK
LSNpbmNsdWRlICJFeHRlbnNpb25zM0QuaCIKLSNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5o
IgotI2luY2x1ZGUgIlRleHRTdHJlYW0uaCIKLQotI2luY2x1ZGUgPHJ1bnRpbWUvVWludDhDbGFt
cGVkQXJyYXkuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1GRUN1c3RvbUZpbHRlcjo6RkVD
dXN0b21GaWx0ZXIoRmlsdGVyKiBmaWx0ZXIsIFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+
IGNvbnRleHQsIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gdmFsaWRh
dGVkUHJvZ3JhbSwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCYgcGFyYW1ldGVycywK
LSAgICB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRl
ck1lc2hUeXBlIG1lc2hUeXBlKQotICAgIDogRmlsdGVyRWZmZWN0KGZpbHRlcikKLSAgICAsIG1f
Y29udGV4dChjb250ZXh0KQotICAgICwgbV92YWxpZGF0ZWRQcm9ncmFtKHZhbGlkYXRlZFByb2dy
YW0pCi0gICAgLCBtX2lucHV0VGV4dHVyZSgwKQotICAgICwgbV9mcmFtZUJ1ZmZlcigwKQotICAg
ICwgbV9kZXB0aEJ1ZmZlcigwKQotICAgICwgbV9kZXN0VGV4dHVyZSgwKQotICAgICwgbV90cmll
ZE11bHRpc2FtcGxlQnVmZmVyKGZhbHNlKQotICAgICwgbV9tdWx0aXNhbXBsZUZyYW1lQnVmZmVy
KDApCi0gICAgLCBtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyKDApCi0gICAgLCBtX211bHRpc2Ft
cGxlRGVwdGhCdWZmZXIoMCkKLXsKLSAgICAvLyBXZSB3aWxsIG5vdCBwYXNzIGEgQ3VzdG9tRmls
dGVyQ29tcGlsZWRQcm9ncmFtIGhlcmUsIGFzIHdlIG9ubHkgd2FudCB0byBjb21waWxlIGl0IHdo
ZW4gd2UgYWN0dWFsbHkgbmVlZCBpdCBpbiB0aGUgZmlyc3QgcGFpbnQuCi0gICAgbV9jdXN0b21G
aWx0ZXJSZW5kZXJlciA9IEN1c3RvbUZpbHRlclJlbmRlcmVyOjpjcmVhdGUobV9jb250ZXh0LCBt
X3ZhbGlkYXRlZFByb2dyYW0tPnByb2dyYW1JbmZvKCkucHJvZ3JhbVR5cGUoKSwgcGFyYW1ldGVy
cywgbWVzaFJvd3MsIG1lc2hDb2x1bW5zLCBtZXNoVHlwZSk7Ci19Ci0KLVBhc3NSZWZQdHI8RkVD
dXN0b21GaWx0ZXI+IEZFQ3VzdG9tRmlsdGVyOjpjcmVhdGUoRmlsdGVyKiBmaWx0ZXIsIFBhc3NS
ZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNvbnRleHQsIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVy
VmFsaWRhdGVkUHJvZ3JhbT4gdmFsaWRhdGVkUHJvZ3JhbSwgY29uc3QgQ3VzdG9tRmlsdGVyUGFy
YW1ldGVyTGlzdCYgcGFyYW1ldGVycywKLSAgICB1bnNpZ25lZCBtZXNoUm93cywgdW5zaWduZWQg
bWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQotewotICAgIHJldHVy
biBhZG9wdFJlZihuZXcgRkVDdXN0b21GaWx0ZXIoZmlsdGVyLCBjb250ZXh0LCB2YWxpZGF0ZWRQ
cm9ncmFtLCBwYXJhbWV0ZXJzLCBtZXNoUm93cywgbWVzaENvbHVtbnMsIG1lc2hUeXBlKSk7Ci19
Ci0KLUZFQ3VzdG9tRmlsdGVyOjp+RkVDdXN0b21GaWx0ZXIoKQotewotICAgIGRlbGV0ZVJlbmRl
ckJ1ZmZlcnMoKTsKLX0KLQotdm9pZCBGRUN1c3RvbUZpbHRlcjo6ZGVsZXRlUmVuZGVyQnVmZmVy
cygpCi17Ci0gICAgQVNTRVJUKG1fY29udGV4dCk7Ci0gICAgbV9jb250ZXh0LT5tYWtlQ29udGV4
dEN1cnJlbnQoKTsKLSAgICBpZiAobV9pbnB1dFRleHR1cmUpIHsKLSAgICAgICAgbV9jb250ZXh0
LT5kZWxldGVUZXh0dXJlKG1faW5wdXRUZXh0dXJlKTsKLSAgICAgICAgbV9pbnB1dFRleHR1cmUg
PSAwOwotICAgIH0KLSAgICBpZiAobV9mcmFtZUJ1ZmZlcikgewotICAgICAgICAvLyBNYWtlIHN1
cmUgdG8gdW5iaW5kIGFueSBmcmFtZWJ1ZmZlciBmcm9tIHRoZSBjb250ZXh0IGZpcnN0LCBvdGhl
cndpc2UKLSAgICAgICAgLy8gc29tZSBwbGF0Zm9ybXMgbWlnaHQgcmVmdXNlIHRvIGJpbmQgdGhl
IHNhbWUgYnVmZmVyIGlkIGFnYWluLgotICAgICAgICBtX2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZl
cihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVIsIDApOwotICAgICAgICBtX2NvbnRleHQt
PmRlbGV0ZUZyYW1lYnVmZmVyKG1fZnJhbWVCdWZmZXIpOwotICAgICAgICBtX2ZyYW1lQnVmZmVy
ID0gMDsKLSAgICB9Ci0gICAgaWYgKG1fZGVwdGhCdWZmZXIpIHsKLSAgICAgICAgbV9jb250ZXh0
LT5kZWxldGVSZW5kZXJidWZmZXIobV9kZXB0aEJ1ZmZlcik7Ci0gICAgICAgIG1fZGVwdGhCdWZm
ZXIgPSAwOwotICAgIH0KLSAgICBpZiAobV9kZXN0VGV4dHVyZSkgewotICAgICAgICBtX2NvbnRl
eHQtPmRlbGV0ZVRleHR1cmUobV9kZXN0VGV4dHVyZSk7Ci0gICAgICAgIG1fZGVzdFRleHR1cmUg
PSAwOwotICAgIH0KLSAgICBkZWxldGVNdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcnMoKTsKLX0KLQot
dm9pZCBGRUN1c3RvbUZpbHRlcjo6ZGVsZXRlTXVsdGlzYW1wbGVSZW5kZXJCdWZmZXJzKCkKLXsK
LSAgICBpZiAobV9tdWx0aXNhbXBsZUZyYW1lQnVmZmVyKSB7Ci0gICAgICAgIC8vIE1ha2Ugc3Vy
ZSB0byB1bmJpbmQgYW55IGZyYW1lYnVmZmVyIGZyb20gdGhlIGNvbnRleHQgZmlyc3QsIG90aGVy
d2lzZQotICAgICAgICAvLyBzb21lIHBsYXRmb3JtcyBtaWdodCByZWZ1c2UgdG8gYmluZCB0aGUg
c2FtZSBidWZmZXIgaWQgYWdhaW4uCi0gICAgICAgIG1fY29udGV4dC0+YmluZEZyYW1lYnVmZmVy
KEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUiwgMCk7Ci0gICAgICAgIG1fY29udGV4dC0+
ZGVsZXRlRnJhbWVidWZmZXIobV9tdWx0aXNhbXBsZUZyYW1lQnVmZmVyKTsKLSAgICAgICAgbV9t
dWx0aXNhbXBsZUZyYW1lQnVmZmVyID0gMDsKLSAgICB9Ci0gICAgaWYgKG1fbXVsdGlzYW1wbGVS
ZW5kZXJCdWZmZXIpIHsKLSAgICAgICAgbV9jb250ZXh0LT5kZWxldGVSZW5kZXJidWZmZXIobV9t
dWx0aXNhbXBsZVJlbmRlckJ1ZmZlcik7Ci0gICAgICAgIG1fbXVsdGlzYW1wbGVSZW5kZXJCdWZm
ZXIgPSAwOwotICAgIH0KLSAgICBpZiAobV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKSB7Ci0gICAg
ICAgIG1fY29udGV4dC0+ZGVsZXRlUmVuZGVyYnVmZmVyKG1fbXVsdGlzYW1wbGVEZXB0aEJ1ZmZl
cik7Ci0gICAgICAgIG1fbXVsdGlzYW1wbGVEZXB0aEJ1ZmZlciA9IDA7Ci0gICAgfQotfQotCi12
b2lkIEZFQ3VzdG9tRmlsdGVyOjpwbGF0Zm9ybUFwcGx5U29mdHdhcmUoKQotewotICAgIGlmICgh
YXBwbHlTaGFkZXIoKSkKLSAgICAgICAgY2xlYXJTaGFkZXJSZXN1bHQoKTsKLX0KLQotdm9pZCBG
RUN1c3RvbUZpbHRlcjo6Y2xlYXJTaGFkZXJSZXN1bHQoKQotewotICAgIGNsZWFyUmVzdWx0KCk7
Ci0gICAgVWludDhDbGFtcGVkQXJyYXkqIGRzdFBpeGVsQXJyYXkgPSBjcmVhdGVVbm11bHRpcGxp
ZWRJbWFnZVJlc3VsdCgpOwotICAgIGlmICghZHN0UGl4ZWxBcnJheSkKLSAgICAgICAgcmV0dXJu
OwotCi0gICAgRmlsdGVyRWZmZWN0KiBpbiA9IGlucHV0RWZmZWN0KDApOwotICAgIHNldElzQWxw
aGFJbWFnZShpbi0+aXNBbHBoYUltYWdlKCkpOwotICAgIEludFJlY3QgZWZmZWN0RHJhd2luZ1Jl
Y3QgPSByZXF1ZXN0ZWRSZWdpb25PZklucHV0SW1hZ2VEYXRhKGluLT5hYnNvbHV0ZVBhaW50UmVj
dCgpKTsKLSAgICBpbi0+Y29weVVubXVsdGlwbGllZEltYWdlKGRzdFBpeGVsQXJyYXksIGVmZmVj
dERyYXdpbmdSZWN0KTsKLX0KLQotdm9pZCBGRUN1c3RvbUZpbHRlcjo6ZHJhd0ZpbHRlck1lc2go
UGxhdGZvcm0zRE9iamVjdCBpbnB1dFRleHR1cmUpCi17Ci0gICAgYm9vbCBtdWx0aXNhbXBsZSA9
IGNhblVzZU11bHRpc2FtcGxlQnVmZmVycygpOwotICAgIG1fY29udGV4dC0+YmluZEZyYW1lYnVm
ZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUiwgbXVsdGlzYW1wbGUgPyBtX211bHRp
c2FtcGxlRnJhbWVCdWZmZXIgOiBtX2ZyYW1lQnVmZmVyKTsKLSAgICBtX2NvbnRleHQtPnZpZXdw
b3J0KDAsIDAsIG1fY29udGV4dFNpemUud2lkdGgoKSwgbV9jb250ZXh0U2l6ZS5oZWlnaHQoKSk7
Ci0KLSAgICBtX2NvbnRleHQtPmNsZWFyQ29sb3IoMCwgMCwgMCwgMCk7Ci0gICAgbV9jb250ZXh0
LT5jbGVhcihHcmFwaGljc0NvbnRleHQzRDo6Q09MT1JfQlVGRkVSX0JJVCB8IEdyYXBoaWNzQ29u
dGV4dDNEOjpERVBUSF9CVUZGRVJfQklUKTsKLQotICAgIG1fY3VzdG9tRmlsdGVyUmVuZGVyZXIt
PmRyYXcoaW5wdXRUZXh0dXJlLCBtX2NvbnRleHRTaXplKTsKLQotICAgIGlmIChtdWx0aXNhbXBs
ZSkKLSAgICAgICAgcmVzb2x2ZU11bHRpc2FtcGxlQnVmZmVyKCk7Ci19Ci0KLWJvb2wgRkVDdXN0
b21GaWx0ZXI6OnByZXBhcmVGb3JEcmF3aW5nKCkKLXsKLSAgICBtX2NvbnRleHQtPm1ha2VDb250
ZXh0Q3VycmVudCgpOwotCi0gICAgaWYgKCFtX2N1c3RvbUZpbHRlclJlbmRlcmVyLT5jb21waWxl
ZFByb2dyYW0oKSkgewotICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFt
PiBjb21waWxlZFByb2dyYW0gPSBtX3ZhbGlkYXRlZFByb2dyYW0tPmNvbXBpbGVkUHJvZ3JhbSgp
OwotICAgICAgICBpZiAoIWNvbXBpbGVkUHJvZ3JhbSkgewotICAgICAgICAgICAgLy8gTGF6aWx5
IGNyZWF0ZSBhIGNvbXBpbGVkIHByb2dyYW0gYW5kIGxldCBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtIGhvbGQgb24gdG8gaXQuCi0gICAgICAgICAgICBjb21waWxlZFByb2dyYW0gPSBDdXN0
b21GaWx0ZXJDb21waWxlZFByb2dyYW06OmNyZWF0ZShtX2NvbnRleHQsIG1fdmFsaWRhdGVkUHJv
Z3JhbS0+dmFsaWRhdGVkVmVydGV4U2hhZGVyKCksIG1fdmFsaWRhdGVkUHJvZ3JhbS0+dmFsaWRh
dGVkRnJhZ21lbnRTaGFkZXIoKSwgbV92YWxpZGF0ZWRQcm9ncmFtLT5wcm9ncmFtSW5mbygpLnBy
b2dyYW1UeXBlKCkpOwotICAgICAgICAgICAgbV92YWxpZGF0ZWRQcm9ncmFtLT5zZXRDb21waWxl
ZFByb2dyYW0oY29tcGlsZWRQcm9ncmFtKTsKLSAgICAgICAgfQotICAgICAgICAvLyBMYXppbHkg
aW5qZWN0IHRoZSBjb21waWxlZCBwcm9ncmFtIGludG8gdGhlIEN1c3RvbUZpbHRlclJlbmRlcmVy
LgotICAgICAgICBtX2N1c3RvbUZpbHRlclJlbmRlcmVyLT5zZXRDb21waWxlZFByb2dyYW0oY29t
cGlsZWRQcm9ncmFtLnJlbGVhc2UoKSk7Ci0gICAgfQotCi0gICAgaWYgKCFtX2N1c3RvbUZpbHRl
clJlbmRlcmVyLT5wcmVwYXJlRm9yRHJhd2luZygpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0K
LSAgICAvLyBPbmx5IGFsbG9jYXRlIGEgdGV4dHVyZSBpZiB0aGUgcHJvZ3JhbSBuZWVkcyBvbmUg
YW5kIHRoZSBjYWxsZXIgZG9lc24ndCBhbGxvY2F0ZSBvbmUgYnkgaXRzZWxmLgotICAgIGlmICgo
bV9jdXN0b21GaWx0ZXJSZW5kZXJlci0+cHJvZ3JhbU5lZWRzSW5wdXRUZXh0dXJlKCkgJiYgIWVu
c3VyZUlucHV0VGV4dHVyZSgpKSB8fCAhZW5zdXJlRnJhbWVCdWZmZXIoKSkKLSAgICAgICAgcmV0
dXJuIGZhbHNlOwotCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLWJvb2wgRkVDdXN0b21GaWx0ZXI6
OmFwcGx5U2hhZGVyKCkKLXsKLSAgICBVaW50OENsYW1wZWRBcnJheSogZHN0UGl4ZWxBcnJheSA9
IG1fY3VzdG9tRmlsdGVyUmVuZGVyZXItPnByZW11bHRpcGxpZWRBbHBoYSgpID8gY3JlYXRlUHJl
bXVsdGlwbGllZEltYWdlUmVzdWx0KCkgOiBjcmVhdGVVbm11bHRpcGxpZWRJbWFnZVJlc3VsdCgp
OwotICAgIGlmICghZHN0UGl4ZWxBcnJheSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAg
aWYgKCFwcmVwYXJlRm9yRHJhd2luZygpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBG
aWx0ZXJFZmZlY3QqIGluID0gaW5wdXRFZmZlY3QoMCk7Ci0gICAgSW50UmVjdCBlZmZlY3REcmF3
aW5nUmVjdCA9IHJlcXVlc3RlZFJlZ2lvbk9mSW5wdXRJbWFnZURhdGEoaW4tPmFic29sdXRlUGFp
bnRSZWN0KCkpOwotICAgIEludFNpemUgbmV3Q29udGV4dFNpemUoZWZmZWN0RHJhd2luZ1JlY3Qu
c2l6ZSgpKTsKLSAgICBpZiAoIXJlc2l6ZUNvbnRleHRJZk5lZWRlZChuZXdDb250ZXh0U2l6ZSkp
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGJvb2wgbmVlZHNJbnB1dFRleHR1cmUgPSBt
X2N1c3RvbUZpbHRlclJlbmRlcmVyLT5wcm9ncmFtTmVlZHNJbnB1dFRleHR1cmUoKTsKLSAgICBp
ZiAobmVlZHNJbnB1dFRleHR1cmUpIHsKLSAgICAgICAgUmVmUHRyPFVpbnQ4Q2xhbXBlZEFycmF5
PiBzcmNQaXhlbEFycmF5ID0gaW4tPmFzVW5tdWx0aXBsaWVkSW1hZ2UoZWZmZWN0RHJhd2luZ1Jl
Y3QpOwotICAgICAgICB1cGxvYWRJbnB1dFRleHR1cmUoc3JjUGl4ZWxBcnJheS5nZXQoKSk7Ci0g
ICAgfQotICAgIGRyYXdGaWx0ZXJNZXNoKG5lZWRzSW5wdXRUZXh0dXJlID8gbV9pbnB1dFRleHR1
cmUgOiAwKTsKLQotICAgIEFTU0VSVChzdGF0aWNfY2FzdDxzaXplX3Q+KG5ld0NvbnRleHRTaXpl
LndpZHRoKCkgKiBuZXdDb250ZXh0U2l6ZS5oZWlnaHQoKSAqIDQpID09IGRzdFBpeGVsQXJyYXkt
Pmxlbmd0aCgpKTsKLSAgICBtX2NvbnRleHQtPnJlYWRQaXhlbHMoMCwgMCwgbmV3Q29udGV4dFNp
emUud2lkdGgoKSwgbmV3Q29udGV4dFNpemUuaGVpZ2h0KCksIEdyYXBoaWNzQ29udGV4dDNEOjpS
R0JBLCBHcmFwaGljc0NvbnRleHQzRDo6VU5TSUdORURfQllURSwgZHN0UGl4ZWxBcnJheS0+ZGF0
YSgpKTsKLQotICAgIHJldHVybiB0cnVlOwotfQotCi1ib29sIEZFQ3VzdG9tRmlsdGVyOjplbnN1
cmVJbnB1dFRleHR1cmUoKQotewotICAgIGlmICghbV9pbnB1dFRleHR1cmUpCi0gICAgICAgIG1f
aW5wdXRUZXh0dXJlID0gbV9jb250ZXh0LT5jcmVhdGVUZXh0dXJlKCk7Ci0gICAgcmV0dXJuIG1f
aW5wdXRUZXh0dXJlOwotfQotCi12b2lkIEZFQ3VzdG9tRmlsdGVyOjp1cGxvYWRJbnB1dFRleHR1
cmUoVWludDhDbGFtcGVkQXJyYXkqIHNyY1BpeGVsQXJyYXkpCi17Ci0gICAgbV9jb250ZXh0LT5i
aW5kVGV4dHVyZShHcmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV8yRCwgbV9pbnB1dFRleHR1cmUp
OwotICAgIG1fY29udGV4dC0+dGV4SW1hZ2UyRChHcmFwaGljc0NvbnRleHQzRDo6VEVYVFVSRV8y
RCwgMCwgR3JhcGhpY3NDb250ZXh0M0Q6OlJHQkEsIG1fY29udGV4dFNpemUud2lkdGgoKSwgbV9j
b250ZXh0U2l6ZS5oZWlnaHQoKSwgMCwgR3JhcGhpY3NDb250ZXh0M0Q6OlJHQkEsIEdyYXBoaWNz
Q29udGV4dDNEOjpVTlNJR05FRF9CWVRFLCBzcmNQaXhlbEFycmF5LT5kYXRhKCkpOwotfQotCi1i
b29sIEZFQ3VzdG9tRmlsdGVyOjplbnN1cmVGcmFtZUJ1ZmZlcigpCi17Ci0gICAgaWYgKCFtX2Zy
YW1lQnVmZmVyKQotICAgICAgICBtX2ZyYW1lQnVmZmVyID0gbV9jb250ZXh0LT5jcmVhdGVGcmFt
ZWJ1ZmZlcigpOwotICAgIGlmICghbV9kZXB0aEJ1ZmZlcikKLSAgICAgICAgbV9kZXB0aEJ1ZmZl
ciA9IG1fY29udGV4dC0+Y3JlYXRlUmVuZGVyYnVmZmVyKCk7Ci0gICAgaWYgKCFtX2Rlc3RUZXh0
dXJlKQotICAgICAgICBtX2Rlc3RUZXh0dXJlID0gbV9jb250ZXh0LT5jcmVhdGVUZXh0dXJlKCk7
Ci0gICAgcmV0dXJuIG1fZnJhbWVCdWZmZXIgJiYgbV9kZXB0aEJ1ZmZlciAmJiBtX2Rlc3RUZXh0
dXJlOwotfQotCi1ib29sIEZFQ3VzdG9tRmlsdGVyOjpjcmVhdGVNdWx0aXNhbXBsZUJ1ZmZlcigp
Ci17Ci0gICAgQVNTRVJUKCFtX3RyaWVkTXVsdGlzYW1wbGVCdWZmZXIpOwotICAgIG1fdHJpZWRN
dWx0aXNhbXBsZUJ1ZmZlciA9IHRydWU7Ci0KLSAgICBFeHRlbnNpb25zM0QqIGV4dGVuc2lvbnMg
PSBtX2NvbnRleHQtPmdldEV4dGVuc2lvbnMoKTsKLSAgICBpZiAoIWV4dGVuc2lvbnMKLSAgICAg
ICAgfHwgIWV4dGVuc2lvbnMtPm1heVN1cHBvcnRNdWx0aXNhbXBsaW5nKCkKLSAgICAgICAgfHwg
IWV4dGVuc2lvbnMtPnN1cHBvcnRzKCJHTF9BTkdMRV9mcmFtZWJ1ZmZlcl9tdWx0aXNhbXBsZSIp
Ci0gICAgICAgIHx8ICFleHRlbnNpb25zLT5zdXBwb3J0cygiR0xfQU5HTEVfZnJhbWVidWZmZXJf
YmxpdCIpCi0gICAgICAgIHx8ICFleHRlbnNpb25zLT5zdXBwb3J0cygiR0xfT0VTX3JnYjhfcmdi
YTgiKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgZXh0ZW5zaW9ucy0+ZW5zdXJlRW5h
YmxlZCgiR0xfQU5HTEVfZnJhbWVidWZmZXJfYmxpdCIpOwotICAgIGV4dGVuc2lvbnMtPmVuc3Vy
ZUVuYWJsZWQoIkdMX0FOR0xFX2ZyYW1lYnVmZmVyX211bHRpc2FtcGxlIik7Ci0gICAgZXh0ZW5z
aW9ucy0+ZW5zdXJlRW5hYmxlZCgiR0xfT0VTX3JnYjhfcmdiYTgiKTsKLQotICAgIGlmICghbV9t
dWx0aXNhbXBsZUZyYW1lQnVmZmVyKQotICAgICAgICBtX211bHRpc2FtcGxlRnJhbWVCdWZmZXIg
PSBtX2NvbnRleHQtPmNyZWF0ZUZyYW1lYnVmZmVyKCk7Ci0gICAgaWYgKCFtX211bHRpc2FtcGxl
UmVuZGVyQnVmZmVyKQotICAgICAgICBtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyID0gbV9jb250
ZXh0LT5jcmVhdGVSZW5kZXJidWZmZXIoKTsKLSAgICBpZiAoIW1fbXVsdGlzYW1wbGVEZXB0aEJ1
ZmZlcikKLSAgICAgICAgbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyID0gbV9jb250ZXh0LT5jcmVh
dGVSZW5kZXJidWZmZXIoKTsKLQotICAgIHJldHVybiB0cnVlOwotfQotCi12b2lkIEZFQ3VzdG9t
RmlsdGVyOjpyZXNvbHZlTXVsdGlzYW1wbGVCdWZmZXIoKQotewotICAgIEFTU0VSVChtX3RyaWVk
TXVsdGlzYW1wbGVCdWZmZXIgJiYgbV9tdWx0aXNhbXBsZUZyYW1lQnVmZmVyICYmIG1fbXVsdGlz
YW1wbGVSZW5kZXJCdWZmZXIgJiYgbV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyKTsKLSAgICBtX2Nv
bnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihFeHRlbnNpb25zM0Q6OlJFQURfRlJBTUVCVUZGRVIsIG1f
bXVsdGlzYW1wbGVGcmFtZUJ1ZmZlcik7Ci0gICAgbV9jb250ZXh0LT5iaW5kRnJhbWVidWZmZXIo
RXh0ZW5zaW9uczNEOjpEUkFXX0ZSQU1FQlVGRkVSLCBtX2ZyYW1lQnVmZmVyKTsKLQotICAgIEFT
U0VSVChtX2NvbnRleHQtPmdldEV4dGVuc2lvbnMoKSk7Ci0gICAgbV9jb250ZXh0LT5nZXRFeHRl
bnNpb25zKCktPmJsaXRGcmFtZWJ1ZmZlcigwLCAwLCBtX2NvbnRleHRTaXplLndpZHRoKCksIG1f
Y29udGV4dFNpemUuaGVpZ2h0KCksIDAsIDAsIG1fY29udGV4dFNpemUud2lkdGgoKSwgbV9jb250
ZXh0U2l6ZS5oZWlnaHQoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OkNPTE9SX0JVRkZFUl9CSVQsIEdy
YXBoaWNzQ29udGV4dDNEOjpORUFSRVNUKTsKLQotICAgIG1fY29udGV4dC0+YmluZEZyYW1lYnVm
ZmVyKEV4dGVuc2lvbnMzRDo6UkVBRF9GUkFNRUJVRkZFUiwgMCk7Ci0gICAgbV9jb250ZXh0LT5i
aW5kRnJhbWVidWZmZXIoRXh0ZW5zaW9uczNEOjpEUkFXX0ZSQU1FQlVGRkVSLCAwKTsKLQotICAg
IG1fY29udGV4dC0+YmluZEZyYW1lYnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZF
UiwgbV9mcmFtZUJ1ZmZlcik7Ci19Ci0KLWJvb2wgRkVDdXN0b21GaWx0ZXI6OmNhblVzZU11bHRp
c2FtcGxlQnVmZmVycygpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fdHJpZWRNdWx0aXNhbXBsZUJ1
ZmZlciAmJiBtX211bHRpc2FtcGxlRnJhbWVCdWZmZXIgJiYgbV9tdWx0aXNhbXBsZVJlbmRlckJ1
ZmZlciAmJiBtX211bHRpc2FtcGxlRGVwdGhCdWZmZXI7Ci19Ci0KLWJvb2wgRkVDdXN0b21GaWx0
ZXI6OnJlc2l6ZU11bHRpc2FtcGxlQnVmZmVycyhjb25zdCBJbnRTaXplJiBuZXdDb250ZXh0U2l6
ZSkKLXsKLSAgICBpZiAoIW1fdHJpZWRNdWx0aXNhbXBsZUJ1ZmZlciAmJiAhY3JlYXRlTXVsdGlz
YW1wbGVCdWZmZXIoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgaWYgKCFjYW5Vc2VN
dWx0aXNhbXBsZUJ1ZmZlcnMoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgc3RhdGlj
IGNvbnN0IGludCBrTWF4U2FtcGxlQ291bnQgPSA0OwotICAgIGludCBtYXhTdXBwb3J0ZWRTYW1w
bGVDb3VudCA9IDA7Ci0gICAgbV9jb250ZXh0LT5nZXRJbnRlZ2VydihFeHRlbnNpb25zM0Q6Ok1B
WF9TQU1QTEVTLCAmbWF4U3VwcG9ydGVkU2FtcGxlQ291bnQpOwotICAgIGludCBzYW1wbGVDb3Vu
dCA9IHN0ZDo6bWluKGtNYXhTYW1wbGVDb3VudCwgbWF4U3VwcG9ydGVkU2FtcGxlQ291bnQpOwot
ICAgIGlmICghc2FtcGxlQ291bnQpIHsKLSAgICAgICAgZGVsZXRlTXVsdGlzYW1wbGVSZW5kZXJC
dWZmZXJzKCk7Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0KLSAgICBFeHRlbnNpb25z
M0QqIGV4dGVuc2lvbnMgPSBtX2NvbnRleHQtPmdldEV4dGVuc2lvbnMoKTsKLSAgICBBU1NFUlQo
ZXh0ZW5zaW9ucyk7Ci0KLSAgICBtX2NvbnRleHQtPmJpbmRGcmFtZWJ1ZmZlcihHcmFwaGljc0Nv
bnRleHQzRDo6RlJBTUVCVUZGRVIsIG1fbXVsdGlzYW1wbGVGcmFtZUJ1ZmZlcik7Ci0KLSAgICBt
X2NvbnRleHQtPmJpbmRSZW5kZXJidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OlJFTkRFUkJVRkZF
UiwgbV9tdWx0aXNhbXBsZVJlbmRlckJ1ZmZlcik7Ci0gICAgZXh0ZW5zaW9ucy0+cmVuZGVyYnVm
ZmVyU3RvcmFnZU11bHRpc2FtcGxlKEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIHNh
bXBsZUNvdW50LCBFeHRlbnNpb25zM0Q6OlJHQkE4X09FUywgbmV3Q29udGV4dFNpemUud2lkdGgo
KSwgbmV3Q29udGV4dFNpemUuaGVpZ2h0KCkpOwotICAgIG1fY29udGV4dC0+ZnJhbWVidWZmZXJS
ZW5kZXJidWZmZXIoR3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSLCBHcmFwaGljc0NvbnRl
eHQzRDo6Q09MT1JfQVRUQUNITUVOVDAsIEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIs
IG1fbXVsdGlzYW1wbGVSZW5kZXJCdWZmZXIpOwotCi0gICAgbV9jb250ZXh0LT5iaW5kUmVuZGVy
YnVmZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIG1fbXVsdGlzYW1wbGVEZXB0
aEJ1ZmZlcik7Ci0gICAgZXh0ZW5zaW9ucy0+cmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2FtcGxl
KEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIHNhbXBsZUNvdW50LCBHcmFwaGljc0Nv
bnRleHQzRDo6REVQVEhfQ09NUE9ORU5UMTYsIG5ld0NvbnRleHRTaXplLndpZHRoKCksIG5ld0Nv
bnRleHRTaXplLmhlaWdodCgpKTsKLSAgICBtX2NvbnRleHQtPmZyYW1lYnVmZmVyUmVuZGVyYnVm
ZmVyKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUiwgR3JhcGhpY3NDb250ZXh0M0Q6OkRF
UFRIX0FUVEFDSE1FTlQsIEdyYXBoaWNzQ29udGV4dDNEOjpSRU5ERVJCVUZGRVIsIG1fbXVsdGlz
YW1wbGVEZXB0aEJ1ZmZlcik7Ci0KLSAgICBtX2NvbnRleHQtPmJpbmRSZW5kZXJidWZmZXIoR3Jh
cGhpY3NDb250ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgMCk7Ci0KLSAgICBpZiAobV9jb250ZXh0LT5j
aGVja0ZyYW1lYnVmZmVyU3RhdHVzKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUikgIT0g
R3JhcGhpY3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSX0NPTVBMRVRFKSB7Ci0gICAgICAgIGRlbGV0
ZU11bHRpc2FtcGxlUmVuZGVyQnVmZmVycygpOwotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAg
fQotCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLWJvb2wgRkVDdXN0b21GaWx0ZXI6OnJlc2l6ZUNv
bnRleHRJZk5lZWRlZChjb25zdCBJbnRTaXplJiBuZXdDb250ZXh0U2l6ZSkKLXsKLSAgICBpZiAo
bmV3Q29udGV4dFNpemUuaXNFbXB0eSgpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgaWYg
KG1fY29udGV4dFNpemUgPT0gbmV3Q29udGV4dFNpemUpCi0gICAgICAgIHJldHVybiB0cnVlOwot
Ci0gICAgaW50IG1heFRleHR1cmVTaXplID0gMDsKLSAgICBtX2NvbnRleHQtPmdldEludGVnZXJ2
KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhfVEVYVFVSRV9TSVpFLCAmbWF4VGV4dHVyZVNpemUpOwot
ICAgIGlmIChuZXdDb250ZXh0U2l6ZS5oZWlnaHQoKSA+IG1heFRleHR1cmVTaXplIHx8IG5ld0Nv
bnRleHRTaXplLndpZHRoKCkgPiBtYXhUZXh0dXJlU2l6ZSkKLSAgICAgICAgcmV0dXJuIGZhbHNl
OwotCi0gICAgcmV0dXJuIHJlc2l6ZUNvbnRleHQobmV3Q29udGV4dFNpemUpOwotfQotCi1ib29s
IEZFQ3VzdG9tRmlsdGVyOjpyZXNpemVDb250ZXh0KGNvbnN0IEludFNpemUmIG5ld0NvbnRleHRT
aXplKQotewotICAgIGJvb2wgbXVsdGlzYW1wbGUgPSByZXNpemVNdWx0aXNhbXBsZUJ1ZmZlcnMo
bmV3Q29udGV4dFNpemUpOwotCi0gICAgbV9jb250ZXh0LT5iaW5kRnJhbWVidWZmZXIoR3JhcGhp
Y3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSLCBtX2ZyYW1lQnVmZmVyKTsKLSAgICBtX2NvbnRleHQt
PmJpbmRUZXh0dXJlKEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFXzJELCBtX2Rlc3RUZXh0dXJl
KTsKLSAgICAvLyBXZSBhcmUgZ29pbmcgdG8gY2xlYXIgdGhlIG91dHB1dCBidWZmZXIgYW55d2F5
LCBzbyB3ZSBjYW4gc2FmZWx5IGluaXRpYWxpemUgdGhlIGRlc3RpbmF0aW9uIHRleHR1cmUgd2l0
aCBnYXJiYWdlIGRhdGEuCi0gICAgbV9jb250ZXh0LT50ZXhJbWFnZTJERGlyZWN0KEdyYXBoaWNz
Q29udGV4dDNEOjpURVhUVVJFXzJELCAwLCBHcmFwaGljc0NvbnRleHQzRDo6UkdCQSwgbmV3Q29u
dGV4dFNpemUud2lkdGgoKSwgbmV3Q29udGV4dFNpemUuaGVpZ2h0KCksIDAsIEdyYXBoaWNzQ29u
dGV4dDNEOjpSR0JBLCBHcmFwaGljc0NvbnRleHQzRDo6VU5TSUdORURfQllURSwgMCk7Ci0gICAg
bV9jb250ZXh0LT5mcmFtZWJ1ZmZlclRleHR1cmUyRChHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVC
VUZGRVIsIEdyYXBoaWNzQ29udGV4dDNEOjpDT0xPUl9BVFRBQ0hNRU5UMCwgR3JhcGhpY3NDb250
ZXh0M0Q6OlRFWFRVUkVfMkQsIG1fZGVzdFRleHR1cmUsIDApOwotCi0gICAgLy8gV2UgZG9uJ3Qg
bmVlZCB0aGUgZGVwdGggYnVmZmVyIGZvciB0aGUgdGV4dHVyZSBmcmFtZWJ1ZmZlciwgaWYgd2Ug
YWxyZWFkeQotICAgIC8vIGhhdmUgYSBtdWx0aXNhbXBsZSBidWZmZXIuCi0gICAgaWYgKCFtdWx0
aXNhbXBsZSkgewotICAgICAgICBtX2NvbnRleHQtPmJpbmRSZW5kZXJidWZmZXIoR3JhcGhpY3ND
b250ZXh0M0Q6OlJFTkRFUkJVRkZFUiwgbV9kZXB0aEJ1ZmZlcik7Ci0gICAgICAgIG1fY29udGV4
dC0+cmVuZGVyYnVmZmVyU3RvcmFnZShHcmFwaGljc0NvbnRleHQzRDo6UkVOREVSQlVGRkVSLCBH
cmFwaGljc0NvbnRleHQzRDo6REVQVEhfQ09NUE9ORU5UMTYsIG5ld0NvbnRleHRTaXplLndpZHRo
KCksIG5ld0NvbnRleHRTaXplLmhlaWdodCgpKTsKLSAgICAgICAgbV9jb250ZXh0LT5mcmFtZWJ1
ZmZlclJlbmRlcmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVIsIEdyYXBoaWNz
Q29udGV4dDNEOjpERVBUSF9BVFRBQ0hNRU5ULCBHcmFwaGljc0NvbnRleHQzRDo6UkVOREVSQlVG
RkVSLCBtX2RlcHRoQnVmZmVyKTsKLSAgICB9Ci0KLSAgICBpZiAobV9jb250ZXh0LT5jaGVja0Zy
YW1lYnVmZmVyU3RhdHVzKEdyYXBoaWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUikgIT0gR3JhcGhp
Y3NDb250ZXh0M0Q6OkZSQU1FQlVGRkVSX0NPTVBMRVRFKQotICAgICAgICByZXR1cm4gZmFsc2U7
Ci0KLSAgICBpZiAobXVsdGlzYW1wbGUpIHsKLSAgICAgICAgLy8gQ2xlYXIgdGhlIGZyYW1lYnVm
ZmVyIGZpcnN0LCBvdGhlcndpc2UgdGhlIGZpcnN0IGJsaXQgd2lsbCBmYWlsLgotICAgICAgICBt
X2NvbnRleHQtPmNsZWFyQ29sb3IoMCwgMCwgMCwgMCk7Ci0gICAgICAgIG1fY29udGV4dC0+Y2xl
YXIoR3JhcGhpY3NDb250ZXh0M0Q6OkNPTE9SX0JVRkZFUl9CSVQpOwotICAgIH0KLQotICAgIG1f
Y29udGV4dC0+YmluZFJlbmRlcmJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6UkVOREVSQlVGRkVS
LCAwKTsKLQotICAgIG1fY29udGV4dFNpemUgPSBuZXdDb250ZXh0U2l6ZTsKLSAgICByZXR1cm4g
dHJ1ZTsKLX0KLQotdm9pZCBGRUN1c3RvbUZpbHRlcjo6ZHVtcCgpCi17Ci19Ci0KLVRleHRTdHJl
YW0mIEZFQ3VzdG9tRmlsdGVyOjpleHRlcm5hbFJlcHJlc2VudGF0aW9uKFRleHRTdHJlYW0mIHRz
LCBpbnQgaW5kZW50KSBjb25zdAotewotICAgIHdyaXRlSW5kZW50KHRzLCBpbmRlbnQpOwotICAg
IHRzIDw8ICJbZmVDdXN0b21GaWx0ZXIiOwotICAgIEZpbHRlckVmZmVjdDo6ZXh0ZXJuYWxSZXBy
ZXNlbnRhdGlvbih0cyk7Ci0gICAgdHMgPDwgIl1cbiI7Ci0gICAgaW5wdXRFZmZlY3QoMCktPmV4
dGVybmFsUmVwcmVzZW50YXRpb24odHMsIGluZGVudCArIDEpOwotICAgIHJldHVybiB0czsKLX0K
LQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJT
KSAmJiBVU0UoM0RfR1JBUEhJQ1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmlsdGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDc5OTZmNGQuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5oCisrKyAvZGV2L251bGwKQEAgLTEs
MTA2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQWRvYmUgU3lzdGVtcyBJbmNv
cnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERF
UiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICog
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgRkVD
dXN0b21GaWx0ZXJfaAotI2RlZmluZSBGRUN1c3RvbUZpbHRlcl9oCi0KLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpICYmIFVTRSgzRF9HUkFQSElDUykKLQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNv
bnN0YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgotI2luY2x1ZGUg
IkZpbHRlci5oIgotI2luY2x1ZGUgIkZpbHRlckVmZmVjdC5oIgotI2luY2x1ZGUgIkdyYXBoaWNz
VHlwZXMzRC5oIgotI2luY2x1ZGUgPHJ1bnRpbWUvVWludDhDbGFtcGVkQXJyYXkuaD4KLSNpbmNs
dWRlIDx3dGYvUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ3VzdG9t
RmlsdGVyUmVuZGVyZXI7Ci1jbGFzcyBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtOwotY2xh
c3MgR3JhcGhpY3NDb250ZXh0M0Q7Ci1jbGFzcyBJbnRTaXplOwotCi1jbGFzcyBGRUN1c3RvbUZp
bHRlciA6IHB1YmxpYyBGaWx0ZXJFZmZlY3QgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVm
UHRyPEZFQ3VzdG9tRmlsdGVyPiBjcmVhdGUoRmlsdGVyKiwgUGFzc1JlZlB0cjxHcmFwaGljc0Nv
bnRleHQzRD4sIFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4sIGNvbnN0
IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmLAotICAgICAgICB1bnNpZ25lZCBtZXNoUm93cywg
dW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1lc2hUeXBlKTsKLQotICAgIHZpcnR1
YWwgdm9pZCBwbGF0Zm9ybUFwcGx5U29mdHdhcmUoKTsKLSAgICB2aXJ0dWFsIHZvaWQgZHVtcCgp
OwotCi0gICAgdmlydHVhbCBUZXh0U3RyZWFtJiBleHRlcm5hbFJlcHJlc2VudGF0aW9uKFRleHRT
dHJlYW0mLCBpbnQgaW5kZW50aW9uKSBjb25zdDsKLQotcHJpdmF0ZToKLSAgICBGRUN1c3RvbUZp
bHRlcihGaWx0ZXIqLCBQYXNzUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiwgUGFzc1JlZlB0cjxD
dXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiwgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1ldGVy
TGlzdCYsCi0gICAgICAgIHVuc2lnbmVkIG1lc2hSb3dzLCB1bnNpZ25lZCBtZXNoQ29sdW1ucywg
Q3VzdG9tRmlsdGVyTWVzaFR5cGUpOwotICAgIH5GRUN1c3RvbUZpbHRlcigpOwotCi0gICAgYm9v
bCBhcHBseVNoYWRlcigpOwotICAgIHZvaWQgY2xlYXJTaGFkZXJSZXN1bHQoKTsKLSAgICBib29s
IGluaXRpYWxpemVDb250ZXh0KCk7Ci0KLSAgICBib29sIHByZXBhcmVGb3JEcmF3aW5nKCk7Ci0K
LSAgICB2b2lkIGRyYXdGaWx0ZXJNZXNoKFBsYXRmb3JtM0RPYmplY3QgaW5wdXRUZXh0dXJlKTsK
LSAgICBib29sIGVuc3VyZUlucHV0VGV4dHVyZSgpOwotICAgIHZvaWQgdXBsb2FkSW5wdXRUZXh0
dXJlKFVpbnQ4Q2xhbXBlZEFycmF5KiBzcmNQaXhlbEFycmF5KTsKLSAgICBib29sIHJlc2l6ZUNv
bnRleHRJZk5lZWRlZChjb25zdCBJbnRTaXplJik7Ci0gICAgYm9vbCByZXNpemVDb250ZXh0KGNv
bnN0IEludFNpemUmKTsKLQotICAgIGJvb2wgY2FuVXNlTXVsdGlzYW1wbGVCdWZmZXJzKCkgY29u
c3Q7Ci0gICAgYm9vbCBjcmVhdGVNdWx0aXNhbXBsZUJ1ZmZlcigpOwotICAgIGJvb2wgcmVzaXpl
TXVsdGlzYW1wbGVCdWZmZXJzKGNvbnN0IEludFNpemUmKTsKLSAgICB2b2lkIHJlc29sdmVNdWx0
aXNhbXBsZUJ1ZmZlcigpOwotICAgIHZvaWQgZGVsZXRlTXVsdGlzYW1wbGVSZW5kZXJCdWZmZXJz
KCk7Ci0KLSAgICBib29sIGVuc3VyZUZyYW1lQnVmZmVyKCk7Ci0gICAgdm9pZCBkZWxldGVSZW5k
ZXJCdWZmZXJzKCk7Ci0KLSAgICBSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IG1fY29udGV4dDsK
LSAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbT4gbV92YWxpZGF0ZWRQcm9n
cmFtOwotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJSZW5kZXJlcj4gbV9jdXN0b21GaWx0ZXJSZW5k
ZXJlcjsKLSAgICBJbnRTaXplIG1fY29udGV4dFNpemU7Ci0KLSAgICBQbGF0Zm9ybTNET2JqZWN0
IG1faW5wdXRUZXh0dXJlOwotICAgIFBsYXRmb3JtM0RPYmplY3QgbV9mcmFtZUJ1ZmZlcjsKLSAg
ICBQbGF0Zm9ybTNET2JqZWN0IG1fZGVwdGhCdWZmZXI7Ci0gICAgUGxhdGZvcm0zRE9iamVjdCBt
X2Rlc3RUZXh0dXJlOwotCi0gICAgYm9vbCBtX3RyaWVkTXVsdGlzYW1wbGVCdWZmZXI7Ci0gICAg
UGxhdGZvcm0zRE9iamVjdCBtX211bHRpc2FtcGxlRnJhbWVCdWZmZXI7Ci0gICAgUGxhdGZvcm0z
RE9iamVjdCBtX211bHRpc2FtcGxlUmVuZGVyQnVmZmVyOwotICAgIFBsYXRmb3JtM0RPYmplY3Qg
bV9tdWx0aXNhbXBsZURlcHRoQnVmZmVyOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0KLSNl
bmRpZiAvLyBGRUN1c3RvbUZpbHRlcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GaWx0ZXJPcGVyYXRpb24uaAppbmRleCBkNjVkNzQz
Li4wYzQxOWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0ZpbHRlck9wZXJhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3BlcmF0aW9uLmgKQEAgLTY0LDEwICs2NCw2IEBAIHB1Ymxp
YzoKICAgICAgICAgQ09OVFJBU1QsCiAgICAgICAgIEJMVVIsCiAgICAgICAgIERST1BfU0hBRE9X
LAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgQ1VTVE9NLAotICAgICAgICBWQUxJ
REFURURfQ1VTVE9NLAotI2VuZGlmCiAgICAgICAgIFBBU1NUSFJPVUdILAogICAgICAgICBOT05F
CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvRmlsdGVyT3BlcmF0aW9ucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9maWx0ZXJzL0ZpbHRlck9wZXJhdGlvbnMuY3BwCmluZGV4IGEyODUzOGEuLjQyNzkxNjcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmls
dGVyT3BlcmF0aW9ucy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9GaWx0ZXJPcGVyYXRpb25zLmNwcApAQCAtODcsMTggKzg3LDYgQEAgYm9vbCBGaWx0
ZXJPcGVyYXRpb25zOjpvcGVyYXRpb25zTWF0Y2goY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYgb3Ro
ZXIpIGNvbnN0CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMp
Ci1ib29sIEZpbHRlck9wZXJhdGlvbnM6Omhhc0N1c3RvbUZpbHRlcigpIGNvbnN0Ci17Ci0gICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX29wZXJhdGlvbnMuc2l6ZSgpOyArK2kpIHsKLSAgICAg
ICAgRmlsdGVyT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIHR5cGUgPSBtX29wZXJhdGlvbnMuYXQo
aSktPnR5cGUoKTsKLSAgICAgICAgaWYgKHR5cGUgPT0gRmlsdGVyT3BlcmF0aW9uOjpDVVNUT00g
fHwgdHlwZSA9PSBGaWx0ZXJPcGVyYXRpb246OlZBTElEQVRFRF9DVVNUT00pCi0gICAgICAgICAg
ICByZXR1cm4gdHJ1ZTsKLSAgICB9Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotI2VuZGlmCi0KIGJv
b2wgRmlsdGVyT3BlcmF0aW9uczo6aGFzUmVmZXJlbmNlRmlsdGVyKCkgY29uc3QKIHsKICAgICBm
b3IgKHNpemVfdCBpID0gMDsgaSA8IG1fb3BlcmF0aW9ucy5zaXplKCk7ICsraSkgewpAQCAtMTQ0
LDE0ICsxMzIsNiBAQCBGaWx0ZXJPdXRzZXRzIEZpbHRlck9wZXJhdGlvbnM6Om91dHNldHMoKSBj
b25zdAogICAgICAgICAgICAgdG90YWxPdXRzZXRzICs9IG91dHNldHM7CiAgICAgICAgICAgICBi
cmVhazsKICAgICAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgY2FzZSBG
aWx0ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OlZB
TElEQVRFRF9DVVNUT006IHsKLSAgICAgICAgICAgIC8vIEZJWE1FOiBOZWVkIHRvIGluY2x1ZGUg
dGhlIGZpbHRlciBtYXJnaW5zIGhlcmUuCi0gICAgICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzE0MDAKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAg
ICB9Ci0jZW5kaWYKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIGJyZWFrOwogICAgICAg
ICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L0ZpbHRlck9wZXJhdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvRmlsdGVyT3BlcmF0aW9ucy5oCmluZGV4IDc3YmYzZTguLmMzNzk5OGUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3BlcmF0
aW9ucy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmls
dGVyT3BlcmF0aW9ucy5oCkBAIC03MSw5ICs3MSw2IEBAIHB1YmxpYzoKICAgICBib29sIGhhc0Zp
bHRlclRoYXRBZmZlY3RzT3BhY2l0eSgpIGNvbnN0OwogICAgIGJvb2wgaGFzRmlsdGVyVGhhdE1v
dmVzUGl4ZWxzKCkgY29uc3Q7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgYm9vbCBo
YXNDdXN0b21GaWx0ZXIoKSBjb25zdDsKLSNlbmRpZgogICAgIGJvb2wgaGFzUmVmZXJlbmNlRmls
dGVyKCkgY29uc3Q7CiBwcml2YXRlOgogICAgIFZlY3RvcjxSZWZQdHI8RmlsdGVyT3BlcmF0aW9u
Pj4gbV9vcGVyYXRpb25zOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJP
cGVyYXRpb24uY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZjY0ZDU3Li4wMDAw
MDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDY4ICswLDAg
QEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAg
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMgSVMi
IEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAq
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0j
aWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIlZhbGlkYXRlZEN1c3RvbUZpbHRlck9w
ZXJhdGlvbi5oIgotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUGFyYW1ldGVyLmgiCi0jaW5jbHVk
ZSAiQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkxheW91dFNpemUu
aCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRp
b246OlZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbihQYXNzUmVmUHRyPEN1c3RvbUZpbHRl
clZhbGlkYXRlZFByb2dyYW0+IHZhbGlkYXRlZFByb2dyYW0sIAotICAgIGNvbnN0IEN1c3RvbUZp
bHRlclBhcmFtZXRlckxpc3QmIHNvcnRlZFBhcmFtZXRlcnMsIHVuc2lnbmVkIG1lc2hSb3dzLCB1
bnNpZ25lZCBtZXNoQ29sdW1ucywgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUpCi0gICAg
OiBGaWx0ZXJPcGVyYXRpb24oVkFMSURBVEVEX0NVU1RPTSkKLSAgICAsIG1fdmFsaWRhdGVkUHJv
Z3JhbSh2YWxpZGF0ZWRQcm9ncmFtKQotICAgICwgbV9wYXJhbWV0ZXJzKHNvcnRlZFBhcmFtZXRl
cnMpCi0gICAgLCBtX21lc2hSb3dzKG1lc2hSb3dzKQotICAgICwgbV9tZXNoQ29sdW1ucyhtZXNo
Q29sdW1ucykKLSAgICAsIG1fbWVzaFR5cGUobWVzaFR5cGUpCi17Ci19Ci0KLVZhbGlkYXRlZEN1
c3RvbUZpbHRlck9wZXJhdGlvbjo6flZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbigpCi17
Ci19Ci0KLVBhc3NSZWZQdHI8RmlsdGVyT3BlcmF0aW9uPiBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJP
cGVyYXRpb246OmJsZW5kKGNvbnN0IEZpbHRlck9wZXJhdGlvbiosIGRvdWJsZSBwcm9ncmVzcywg
Y29uc3QgTGF5b3V0U2l6ZSYgc2l6ZSwgYm9vbCBibGVuZFRvUGFzc3Rocm91Z2gpCi17Ci0gICAg
VU5VU0VEX1BBUkFNKHByb2dyZXNzKTsKLSAgICBVTlVTRURfUEFSQU0oc2l6ZSk7Ci0gICAgVU5V
U0VEX1BBUkFNKGJsZW5kVG9QYXNzdGhyb3VnaCk7Ci0KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKLSAgICByZXR1cm4gdGhpczsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvVmFsaWRhdGVkQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGVhYmIwZDUu
LjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9W
YWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaAorKysgL2Rldi9udWxsCkBAIC0xLDk1ICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0
ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0g
KiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiAiQVMg
SVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksCi0gKiBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YK
LSAqIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBWYWxpZGF0ZWRDdXN0
b21GaWx0ZXJPcGVyYXRpb25faAotI2RlZmluZSBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRp
b25faAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNv
bnN0YW50cy5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QuaCIKLSNpbmNs
dWRlICJGaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNsdWRlICJMYXlvdXRTaXplLmgiCi0KLW5hbWVz
cGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTsKLQot
Y2xhc3MgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIDogcHVibGljIEZpbHRlck9wZXJh
dGlvbiB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8VmFsaWRhdGVkQ3VzdG9tRmls
dGVyT3BlcmF0aW9uPiBjcmVhdGUoUGFzc1JlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9n
cmFtPiB2YWxpZGF0ZWRQcm9ncmFtLCAKLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyUGFyYW1l
dGVyTGlzdCYgc29ydGVkUGFyYW1ldGVycywgdW5zaWduZWQgbWVzaFJvd3MsIHVuc2lnbmVkIG1l
c2hDb2x1bW5zLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAgICB7Ci0gICAgICAg
IHJldHVybiBhZG9wdFJlZihuZXcgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKHZhbGlk
YXRlZFByb2dyYW0sIHNvcnRlZFBhcmFtZXRlcnMsIG1lc2hSb3dzLCBtZXNoQ29sdW1ucywgbWVz
aFR5cGUpKTsKLSAgICB9Ci0KLSAgICB2aXJ0dWFsIH5WYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24oKTsKLQotICAgIHZpcnR1YWwgYm9vbCBhZmZlY3RzT3BhY2l0eSgpIGNvbnN0IHsgcmV0
dXJuIHRydWU7IH0KLSAgICB2aXJ0dWFsIGJvb2wgbW92ZXNQaXhlbHMoKSBjb25zdCB7IHJldHVy
biB0cnVlOyB9Ci0gICAgdmlydHVhbCBib29sIGJsZW5kaW5nTmVlZHNSZW5kZXJlclNpemUoKSBj
b25zdCB7IHJldHVybiB0cnVlOyB9Ci0KLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8RmlsdGVyT3Bl
cmF0aW9uPiBibGVuZChjb25zdCBGaWx0ZXJPcGVyYXRpb24qIGZyb20sIGRvdWJsZSBwcm9ncmVz
cywgY29uc3QgTGF5b3V0U2l6ZSYsIGJvb2wgYmxlbmRUb1Bhc3N0aHJvdWdoID0gZmFsc2UpOwot
Ci0gICAgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbSogdmFsaWRhdGVkUHJvZ3JhbSgpIGNv
bnN0IHsgcmV0dXJuIG1fdmFsaWRhdGVkUHJvZ3JhbS5nZXQoKTsgfQotICAgIGNvbnN0IEN1c3Rv
bUZpbHRlclBhcmFtZXRlckxpc3QmIHBhcmFtZXRlcnMoKSBjb25zdCB7IHJldHVybiBtX3BhcmFt
ZXRlcnM7IH0KLQotICAgIHVuc2lnbmVkIG1lc2hSb3dzKCkgY29uc3QgeyByZXR1cm4gbV9tZXNo
Um93czsgfQotICAgIHVuc2lnbmVkIG1lc2hDb2x1bW5zKCkgY29uc3QgeyByZXR1cm4gbV9tZXNo
Q29sdW1uczsgfQotCi0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGUoKSBjb25zdCB7
IHJldHVybiBtX21lc2hUeXBlOyB9Ci0KLXByaXZhdGU6Ci0gICAgdmlydHVhbCBib29sIG9wZXJh
dG9yPT0oY29uc3QgRmlsdGVyT3BlcmF0aW9uJiBvKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYg
KCFpc1NhbWVUeXBlKG8pKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgIGNv
bnN0IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbiogb3RoZXIgPSBzdGF0aWNfY2FzdDxj
b25zdCBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qPigmbyk7Ci0gICAgICAgIHJldHVy
biBtX3ZhbGlkYXRlZFByb2dyYW0uZ2V0KCkgPT0gb3RoZXItPm1fdmFsaWRhdGVkUHJvZ3JhbS5n
ZXQoKQotICAgICAgICAgICAgJiYgbV9tZXNoUm93cyA9PSBvdGhlci0+bV9tZXNoUm93cwotICAg
ICAgICAgICAgJiYgbV9tZXNoQ29sdW1ucyA9PSBvdGhlci0+bV9tZXNoQ29sdW1ucwotICAgICAg
ICAgICAgJiYgbV9tZXNoVHlwZSA9PSBvdGhlci0+bV9tZXNoVHlwZQotICAgICAgICAgICAgJiYg
bV9wYXJhbWV0ZXJzID09IG90aGVyLT5tX3BhcmFtZXRlcnM7Ci0gICAgfQotCi0gICAgVmFsaWRh
dGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKFBhc3NSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVk
UHJvZ3JhbT4sIGNvbnN0IEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QmLCB1bnNpZ25lZCBtZXNo
Um93cywgdW5zaWduZWQgbWVzaENvbHVtbnMsIEN1c3RvbUZpbHRlck1lc2hUeXBlKTsKLQotICAg
IFJlZlB0cjxDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtPiBtX3ZhbGlkYXRlZFByb2dyYW07
Ci0KLSAgICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0IG1fcGFyYW1ldGVyczsKLSAgICB1bnNp
Z25lZCBtX21lc2hSb3dzOwotICAgIHVuc2lnbmVkIG1fbWVzaENvbHVtbnM7Ci0gICAgQ3VzdG9t
RmlsdGVyTWVzaFR5cGUgbV9tZXNoVHlwZTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
LQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIFZhbGlkYXRlZEN1
c3RvbUZpbHRlck9wZXJhdGlvbl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL3RleG1hcC9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtVGV4
dHVyZU1hcHBlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJz
L3RleG1hcC9DdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtVGV4dHVyZU1hcHBlci5jcHAKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJlZDBlNmUuLjAwMDAwMDAKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy90ZXhtYXAvQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbVRleHR1cmVNYXBwZXIuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNTggKzAs
MCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRl
ZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwot
ICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAq
ICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJBUyBJ
UyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgot
ICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0K
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpICYmIFVTRShURVhUVVJFX01BUFBFUikKLSNpbmNsdWRl
ICJDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiCi0KLSNpbmNsdWRlICJUZXh0dXJlTWFw
cGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0uaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1Q
bGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSogQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6cGxh
dGZvcm1Db21waWxlZFByb2dyYW0oKQotewotICAgIGlmICghbV9wbGF0Zm9ybUNvbXBpbGVkUHJv
Z3JhbSkKLSAgICAgICAgbV9wbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSA9IFRleHR1cmVNYXBwZXJQ
bGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbTo6Y3JlYXRlKCkubGVha1JlZigpOwotICAgIHJldHVybiBt
X3BsYXRmb3JtQ29tcGlsZWRQcm9ncmFtOwotfQotCi12b2lkIEN1c3RvbUZpbHRlclZhbGlkYXRl
ZFByb2dyYW06OnBsYXRmb3JtSW5pdCgpCi17Ci0gICAgbV9wbGF0Zm9ybUNvbXBpbGVkUHJvZ3Jh
bSA9IDA7Ci19Ci0KLXZvaWQgQ3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6cGxhdGZvcm1E
ZXN0cm95KCkKLXsKLSAgICBkZXJlZklmTm90TnVsbChtX3BsYXRmb3JtQ29tcGlsZWRQcm9ncmFt
KTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19T
SEFERVJTKSAmJiBVU0UoVEVYVFVSRV9NQVBQRVIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL3RleG1hcC9UZXh0dXJlTWFwcGVyUGxhdGZvcm1D
b21waWxlZFByb2dyYW0uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvdGV4bWFwL1RleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbS5oCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhZmE2Y2E1Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvdGV4bWFwL1RleHR1cmVNYXBwZXJQbGF0Zm9y
bUNvbXBpbGVkUHJvZ3JhbS5oCisrKyAvZGV2L251bGwKQEAgLTEsNzEgKzAsMCBAQAotLyoKLSAq
IENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoK
LSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAg
ICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMK
LSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0g
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0g
KiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBp
bGVkUHJvZ3JhbV9oCi0jZGVmaW5lIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3Jh
bV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIu
aD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4K
LQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21w
aWxlZFByb2dyYW1DbGllbnQgewotcHVibGljOgotICAgIHZvaWQgcmVmKCkgeyByZWZGcm9tVmFs
aWRhdGVkUHJvZ3JhbSgpOyB9Ci0gICAgdm9pZCBkZXJlZigpIHsgZGVyZWZGcm9tVmFsaWRhdGVk
UHJvZ3JhbSgpOyB9Ci0KLSAgICB2aXJ0dWFsIHZvaWQgcmVmRnJvbVZhbGlkYXRlZFByb2dyYW0o
KSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGRlcmVmRnJvbVZhbGlkYXRlZFByb2dyYW0oKSA9IDA7
Ci19OwotCi1jbGFzcyBUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0gOiBwdWJs
aWMgUmVmQ291bnRlZDxUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFByb2dyYW0+IHsKLXB1
YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxl
ZFByb2dyYW0+IGNyZWF0ZSgpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFRl
eHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbSgpKTsKLSAgICB9Ci0gICAgCi0gICAg
dm9pZCBzZXRDbGllbnQoUGFzc1JlZlB0cjxUZXh0dXJlTWFwcGVyUGxhdGZvcm1Db21waWxlZFBy
b2dyYW1DbGllbnQ+IGNsaWVudCkgeyBtX2NsaWVudCA9IGNsaWVudDsgfQotICAgIFRleHR1cmVN
YXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbUNsaWVudCogY2xpZW50KCkgY29uc3QgeyByZXR1
cm4gbV9jbGllbnQuZ2V0KCk7IH0KLQotcHJpdmF0ZToKLSAgICBUZXh0dXJlTWFwcGVyUGxhdGZv
cm1Db21waWxlZFByb2dyYW0oKQotICAgIHsKLSAgICB9Ci0KLSAgICBSZWZQdHI8VGV4dHVyZU1h
cHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtQ2xpZW50PiBtX2NsaWVudDsKLX07Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2Vu
ZGlmIC8vIFRleHR1cmVNYXBwZXJQbGF0Zm9ybUNvbXBpbGVkUHJvZ3JhbV9oCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHAKaW5kZXggNjQyYjBk
NS4uMzFhYWE2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3B1L1RleHR1cmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dw
dS9UZXh0dXJlLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAK
LSNpZiBFTkFCTEUoQUNDRUxFUkFURURfMkRfQ0FOVkFTKSB8fCBFTkFCTEUoQ1NTX1NIQURFUlMp
CisjaWYgRU5BQkxFKEFDQ0VMRVJBVEVEXzJEX0NBTlZBUykKIAogI2luY2x1ZGUgIlRleHR1cmUu
aCIKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFw
L1RleHR1cmVNYXBwZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9UZXh0dXJlTWFwcGVyLmgKaW5kZXggNGM4MGQxMy4uYTBhMTcxZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5o
CkBAIC0zOSw3ICszOSw2IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEJpdG1hcFRl
eHR1cmVQb29sOwotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbTsKIGNsYXNzIEdyYXBoaWNzTGF5
ZXI7CiBjbGFzcyBUZXh0dXJlTWFwcGVyOwogY2xhc3MgRmlsdGVyT3BlcmF0aW9uczsKQEAgLTE1
OSwxMCArMTU4LDYgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCBQYXNzUmVmUHRyPEJpdG1hcFRl
eHR1cmU+IGFjcXVpcmVUZXh0dXJlRnJvbVBvb2woY29uc3QgSW50U2l6ZSYpOwogCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgIHZpcnR1YWwgdm9pZCByZW1vdmVDYWNoZWRDdXN0b21GaWx0
ZXJQcm9ncmFtKEN1c3RvbUZpbHRlclByb2dyYW0qKSB7IH0KLSNlbmRpZgotCiAgICAgdm9pZCBz
ZXRQYXR0ZXJuVHJhbnNmb3JtKGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4JiBwKSB7IG1fcGF0
dGVyblRyYW5zZm9ybSA9IHA7IH0KICAgICB2b2lkIHNldFdyYXBNb2RlKFdyYXBNb2RlIG0pIHsg
bV93cmFwTW9kZSA9IG07IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckdMLmNwcAppbmRleCA4NGY3NWY3Li4w
NWI4ODRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXht
YXAvVGV4dHVyZU1hcHBlckdMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckdMLmNwcApAQCAtNDIsMTUgKzQyLDYgQEAKICNpbmNs
dWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW0uaCIKLSNpbmNsdWRlICJD
dXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJQcm9ncmFtLmgi
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUmVuZGVyZXIuaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0
ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3Bl
cmF0aW9uLmgiCi0jZW5kaWYKLQogI2lmICFVU0UoVEVYTUFQX09QRU5HTF9FU18yKQogLy8gRklY
TUU6IE1vdmUgdG8gRXh0ZW5zaW9uczNELmguCiAjZGVmaW5lIEdMX1VOU0lHTkVEX0lOVF84Xzhf
OF84X1JFViAweDgzNjcKQEAgLTQxOSwxMCArNDEwLDYgQEAgc3RhdGljIHVuc2lnbmVkIGdldFBh
c3Nlc1JlcXVpcmVkRm9yRmlsdGVyKEZpbHRlck9wZXJhdGlvbjo6T3BlcmF0aW9uVHlwZSB0eXBl
KQogICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpCUklHSFRORVNTOgogICAgIGNhc2UgRmlsdGVy
T3BlcmF0aW9uOjpDT05UUkFTVDoKICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6T1BBQ0lUWToK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkNVU1RP
TToKLSAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RPTToKLSNlbmRpZgog
ICAgICAgICByZXR1cm4gMTsKICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6QkxVUjoKICAgICBj
YXNlIEZpbHRlck9wZXJhdGlvbjo6RFJPUF9TSEFET1c6CkBAIC04NzAsNjUgKzg1Nyw2IEBAIHZv
aWQgQml0bWFwVGV4dHVyZUdMOjp1cGRhdGVDb250ZW50cyhJbWFnZSogaW1hZ2UsIGNvbnN0IElu
dFJlY3QmIHRhcmdldFJlY3QsIGNvCiAgICAgdXBkYXRlQ29udGVudHMoaW1hZ2VEYXRhLCB0YXJn
ZXRSZWN0LCBvZmZzZXQsIGJ5dGVzUGVyTGluZSwgdXBkYXRlQ29udGVudHNGbGFnKTsKIH0KIAot
I2lmIEVOQUJMRShDU1NfU0hBREVSUykKLXZvaWQgVGV4dHVyZU1hcHBlckdMOjpyZW1vdmVDYWNo
ZWRDdXN0b21GaWx0ZXJQcm9ncmFtKEN1c3RvbUZpbHRlclByb2dyYW0qIHByb2dyYW0pCi17Ci0g
ICAgbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5yZW1vdmUocHJvZ3JhbS0+cHJvZ3JhbUluZm8oKSk7
Ci19Ci0KLWJvb2wgVGV4dHVyZU1hcHBlckdMOjpkcmF3VXNpbmdDdXN0b21GaWx0ZXIoQml0bWFw
VGV4dHVyZSYgdGFyZ2V0LCBjb25zdCBCaXRtYXBUZXh0dXJlJiBzb3VyY2UsIGNvbnN0IEZpbHRl
ck9wZXJhdGlvbiYgZmlsdGVyKQotewotICAgIFJlZlB0cjxDdXN0b21GaWx0ZXJSZW5kZXJlcj4g
cmVuZGVyZXI7Ci0gICAgc3dpdGNoIChmaWx0ZXIudHlwZSgpKSB7Ci0gICAgY2FzZSBGaWx0ZXJP
cGVyYXRpb246OkNVU1RPTTogewotICAgICAgICAvLyBXZWJLaXQyIHBpcGVsaW5lIGlzIHVzaW5n
IHRoZSBDdXN0b21GaWx0ZXJPcGVyYXRpb24sIHRoYXQncyBiZWNhdXNlIG9mIHRoZSAiZGUtc2Vy
aWFsaXphdGlvbiIgdGhhdAotICAgICAgICAvLyBoYXBwZW5zIGluIENvb3JkaW5hdGVkR3JhcGhp
Y3NBcmd1bWVudENvZGVycy4KLSAgICAgICAgY29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKiBj
dXN0b21GaWx0ZXIgPSBzdGF0aWNfY2FzdDxjb25zdCBDdXN0b21GaWx0ZXJPcGVyYXRpb24qPigm
ZmlsdGVyKTsKLSAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+IHByb2dyYW0gPSBj
dXN0b21GaWx0ZXItPnByb2dyYW0oKTsKLSAgICAgICAgcmVuZGVyZXIgPSBDdXN0b21GaWx0ZXJS
ZW5kZXJlcjo6Y3JlYXRlKG1fY29udGV4dDNELCBwcm9ncmFtLT5wcm9ncmFtVHlwZSgpLCBjdXN0
b21GaWx0ZXItPnBhcmFtZXRlcnMoKSwgCi0gICAgICAgICAgICBjdXN0b21GaWx0ZXItPm1lc2hS
b3dzKCksIGN1c3RvbUZpbHRlci0+bWVzaENvbHVtbnMoKSwgY3VzdG9tRmlsdGVyLT5tZXNoVHlw
ZSgpKTsKLSAgICAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1hcDo6QWRkUmVzdWx0IHJlc3VsdCA9
IG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMuYWRkKHByb2dyYW0tPnByb2dyYW1JbmZvKCksIG51bGxw
dHIpOwotICAgICAgICBpZiAocmVzdWx0LmlzTmV3RW50cnkpCi0gICAgICAgICAgICByZXN1bHQu
aXRlcmF0b3ItPnZhbHVlID0gQ3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtOjpjcmVhdGUobV9j
b250ZXh0M0QsIHByb2dyYW0tPnZlcnRleFNoYWRlclN0cmluZygpLCBwcm9ncmFtLT5mcmFnbWVu
dFNoYWRlclN0cmluZygpLCBwcm9ncmFtLT5wcm9ncmFtVHlwZSgpKTsKLSAgICAgICAgcmVuZGVy
ZXItPnNldENvbXBpbGVkUHJvZ3JhbShyZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsKLSAgICAgICAg
YnJlYWs7Ci0gICAgfQotICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9N
OiB7Ci0gICAgICAgIC8vIFdlYktpdDEgdXNlcyB0aGUgVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3Bl
cmF0aW9uLgotICAgICAgICBjb25zdCBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1
c3RvbUZpbHRlciA9IHN0YXRpY19jYXN0PGNvbnN0IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJh
dGlvbio+KCZmaWx0ZXIpOwotICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyVmFsaWRhdGVkUHJv
Z3JhbT4gcHJvZ3JhbSA9IGN1c3RvbUZpbHRlci0+dmFsaWRhdGVkUHJvZ3JhbSgpOwotICAgICAg
ICByZW5kZXJlciA9IEN1c3RvbUZpbHRlclJlbmRlcmVyOjpjcmVhdGUobV9jb250ZXh0M0QsIHBy
b2dyYW0tPnByb2dyYW1JbmZvKCkucHJvZ3JhbVR5cGUoKSwgY3VzdG9tRmlsdGVyLT5wYXJhbWV0
ZXJzKCksCi0gICAgICAgICAgICBjdXN0b21GaWx0ZXItPm1lc2hSb3dzKCksIGN1c3RvbUZpbHRl
ci0+bWVzaENvbHVtbnMoKSwgY3VzdG9tRmlsdGVyLT5tZXNoVHlwZSgpKTsKLSAgICAgICAgUmVm
UHRyPEN1c3RvbUZpbHRlckNvbXBpbGVkUHJvZ3JhbT4gY29tcGlsZWRQcm9ncmFtOwotICAgICAg
ICBDdXN0b21GaWx0ZXJQcm9ncmFtTWFwOjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9jdXN0b21GaWx0
ZXJQcm9ncmFtcy5hZGQocHJvZ3JhbS0+cHJvZ3JhbUluZm8oKSwgbnVsbHB0cik7Ci0gICAgICAg
IGlmIChyZXN1bHQuaXNOZXdFbnRyeSkKLSAgICAgICAgICAgIHJlc3VsdC5pdGVyYXRvci0+dmFs
dWUgPSBDdXN0b21GaWx0ZXJDb21waWxlZFByb2dyYW06OmNyZWF0ZShtX2NvbnRleHQzRCwgcHJv
Z3JhbS0+dmFsaWRhdGVkVmVydGV4U2hhZGVyKCksIHByb2dyYW0tPnZhbGlkYXRlZEZyYWdtZW50
U2hhZGVyKCksIHByb2dyYW0tPnByb2dyYW1JbmZvKCkucHJvZ3JhbVR5cGUoKSk7Ci0gICAgICAg
IHJlbmRlcmVyLT5zZXRDb21waWxlZFByb2dyYW0ocmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSk7Ci0g
ICAgICAgIGJyZWFrOwotICAgIH0KLSAgICBkZWZhdWx0OgotICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLSAgICBpZiAoIXJlbmRlcmVy
IHx8ICFyZW5kZXJlci0+cHJlcGFyZUZvckRyYXdpbmcoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNl
OwotICAgIHN0YXRpY19jYXN0PEJpdG1hcFRleHR1cmVHTCY+KHRhcmdldCkuaW5pdGlhbGl6ZURl
cHRoQnVmZmVyKCk7Ci0gICAgbV9jb250ZXh0M0QtPmVuYWJsZShHcmFwaGljc0NvbnRleHQzRDo6
QkxFTkQpOwotICAgIG1fY29udGV4dDNELT5ibGVuZEZ1bmMoR3JhcGhpY3NDb250ZXh0M0Q6Ok9O
RSwgR3JhcGhpY3NDb250ZXh0M0Q6Ok9ORV9NSU5VU19TUkNfQUxQSEEpOwotICAgIG1fY29udGV4
dDNELT5lbmFibGUoR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX1RFU1QpOwotICAgIG1fY29udGV4
dDNELT5kZXB0aEZ1bmMoR3JhcGhpY3NDb250ZXh0M0Q6OkxFU1MpOwotICAgIG1fY29udGV4dDNE
LT5jbGVhckRlcHRoKDEpOwotICAgIG1fY29udGV4dDNELT5kZXB0aE1hc2soMSk7Ci0gICAgbV9j
b250ZXh0M0QtPmNsZWFyQ29sb3IoMCwgMCwgMCwgMCk7Ci0gICAgbV9jb250ZXh0M0QtPmNsZWFy
KEdyYXBoaWNzQ29udGV4dDNEOjpDT0xPUl9CVUZGRVJfQklUIHwgR3JhcGhpY3NDb250ZXh0M0Q6
OkRFUFRIX0JVRkZFUl9CSVQpOwotICAgIHJlbmRlcmVyLT5kcmF3KHN0YXRpY19jYXN0PGNvbnN0
IEJpdG1hcFRleHR1cmVHTCY+KHNvdXJjZSkuaWQoKSwgc291cmNlLnNpemUoKSk7Ci0gICAgbV9j
b250ZXh0M0QtPmRpc2FibGUoR3JhcGhpY3NDb250ZXh0M0Q6OkRFUFRIX1RFU1QpOwotICAgIG1f
Y29udGV4dDNELT5kaXNhYmxlKEdyYXBoaWNzQ29udGV4dDNEOjpCTEVORCk7Ci0gICAgbV9jb250
ZXh0M0QtPmRlcHRoTWFzaygwKTsKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLSNlbmRpZgotCiAjaWYg
RU5BQkxFKENTU19GSUxURVJTKQogdm9pZCBUZXh0dXJlTWFwcGVyR0w6OmRyYXdGaWx0ZXJlZChj
b25zdCBCaXRtYXBUZXh0dXJlJiBzYW1wbGVyLCBjb25zdCBCaXRtYXBUZXh0dXJlKiBjb250ZW50
VGV4dHVyZSwgY29uc3QgRmlsdGVyT3BlcmF0aW9uJiBmaWx0ZXIsIGludCBwYXNzKQogewpAQCAt
OTQyLDE1ICs4NzAsNiBAQCB2b2lkIFRleHR1cmVNYXBwZXJHTDo6ZHJhd0ZpbHRlcmVkKGNvbnN0
IEJpdG1hcFRleHR1cmUmIHNhbXBsZXIsIGNvbnN0IEJpdG1hcFRleAogICAgIGRyYXdUZXh0dXJl
ZFF1YWRXaXRoUHJvZ3JhbShwcm9ncmFtLmdldCgpLCBzdGF0aWNfY2FzdDxjb25zdCBCaXRtYXBU
ZXh0dXJlR0wmPihzYW1wbGVyKS5pZCgpLCAwLCBJbnRTaXplKDEsIDEpLCB0YXJnZXRSZWN0LCBU
cmFuc2Zvcm1hdGlvbk1hdHJpeCgpLCAxKTsKIH0KIAotc3RhdGljIGJvb2wgaXNDdXN0b21GaWx0
ZXIoRmlsdGVyT3BlcmF0aW9uOjpPcGVyYXRpb25UeXBlIHR5cGUpCi17Ci0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotICAgIHJldHVybiB0eXBlID09IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NIHx8
IHR5cGUgPT0gRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOwotI2Vsc2UKLSAgICBy
ZXR1cm4gZmFsc2U7Ci0jZW5kaWYKLX0KLQogUGFzc1JlZlB0cjxCaXRtYXBUZXh0dXJlPiBCaXRt
YXBUZXh0dXJlR0w6OmFwcGx5RmlsdGVycyhUZXh0dXJlTWFwcGVyKiB0ZXh0dXJlTWFwcGVyLCBj
b25zdCBGaWx0ZXJPcGVyYXRpb25zJiBmaWx0ZXJzKQogewogICAgIGlmIChmaWx0ZXJzLmlzRW1w
dHkoKSkKQEAgLTk2OCwyNCArODg3LDE1IEBAIFBhc3NSZWZQdHI8Qml0bWFwVGV4dHVyZT4gQml0
bWFwVGV4dHVyZUdMOjphcHBseUZpbHRlcnMoVGV4dHVyZU1hcHBlciogdGV4dHVyZU1hCiAgICAg
ICAgIFJlZlB0cjxGaWx0ZXJPcGVyYXRpb24+IGZpbHRlciA9IGZpbHRlcnMub3BlcmF0aW9ucygp
W2ldOwogICAgICAgICBBU1NFUlQoZmlsdGVyKTsKIAotICAgICAgICBib29sIGN1c3RvbSA9IGlz
Q3VzdG9tRmlsdGVyKGZpbHRlci0+dHlwZSgpKTsKLQogICAgICAgICBpbnQgbnVtUGFzc2VzID0g
Z2V0UGFzc2VzUmVxdWlyZWRGb3JGaWx0ZXIoZmlsdGVyLT50eXBlKCkpOwogICAgICAgICBmb3Ig
KGludCBqID0gMDsgaiA8IG51bVBhc3NlczsgKytqKSB7CiAgICAgICAgICAgICBib29sIGxhc3Qg
PSAoaSA9PSBmaWx0ZXJzLnNpemUoKSAtIDEpICYmIChqID09IG51bVBhc3NlcyAtIDEpOwotICAg
ICAgICAgICAgaWYgKGN1c3RvbSB8fCAhbGFzdCkgeworICAgICAgICAgICAgaWYgKCFsYXN0KSB7
CiAgICAgICAgICAgICAgICAgaWYgKCFpbnRlcm1lZGlhdGVTdXJmYWNlKQogICAgICAgICAgICAg
ICAgICAgICBpbnRlcm1lZGlhdGVTdXJmYWNlID0gdGV4bWFwR0wtPmFjcXVpcmVUZXh0dXJlRnJv
bVBvb2woY29udGVudFNpemUoKSk7CiAgICAgICAgICAgICAgICAgdGV4bWFwR0wtPmJpbmRTdXJm
YWNlKGludGVybWVkaWF0ZVN1cmZhY2UuZ2V0KCkpOwogICAgICAgICAgICAgfQogCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotICAgICAgICAgICAgaWYgKGN1c3RvbSkgewotICAgICAgICAgICAg
ICAgIGlmICh0ZXhtYXBHTC0+ZHJhd1VzaW5nQ3VzdG9tRmlsdGVyKCppbnRlcm1lZGlhdGVTdXJm
YWNlLmdldCgpLCAqcmVzdWx0U3VyZmFjZS5nZXQoKSwgKmZpbHRlcikpCi0gICAgICAgICAgICAg
ICAgICAgIHN0ZDo6c3dhcChyZXN1bHRTdXJmYWNlLCBpbnRlcm1lZGlhdGVTdXJmYWNlKTsKLSAg
ICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIH0KLSNlbmRpZgogICAgICAgICAg
ICAgaWYgKGxhc3QpIHsKICAgICAgICAgICAgICAgICB0b0JpdG1hcFRleHR1cmVHTChyZXN1bHRT
dXJmYWNlLmdldCgpKS0+bV9maWx0ZXJJbmZvID0gQml0bWFwVGV4dHVyZUdMOjpGaWx0ZXJJbmZv
KGZpbHRlciwgaiwgc3BhcmVTdXJmYWNlKTsKICAgICAgICAgICAgICAgICBicmVhazsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFw
cGVyR0wuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJl
TWFwcGVyR0wuaAppbmRleCA2MWNhMTRhLi4wODE0MDNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckdMLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJHTC5oCkBA
IC0yMiw3ICsyMiw2IEBACiAKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpICYmIFVT
RShURVhUVVJFX01BUFBFUikKIAotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW1JbmZvLmgi
CiAjaW5jbHVkZSAiRmlsdGVyT3BlcmF0aW9uLmgiCiAjaW5jbHVkZSAiRmxvYXRRdWFkLmgiCiAj
aW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0M0QuaCIKQEAgLTMyLDggKzMxLDYgQEAKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCi1jbGFzcyBDdXN0b21GaWx0ZXJQcm9ncmFtOwotY2xhc3MgQ3VzdG9t
RmlsdGVyQ29tcGlsZWRQcm9ncmFtOwogY2xhc3MgVGV4dHVyZU1hcHBlckdMRGF0YTsKIGNsYXNz
IFRleHR1cmVNYXBwZXJTaGFkZXJQcm9ncmFtOwogY2xhc3MgRmlsdGVyT3BlcmF0aW9uOwpAQCAt
NzMsMTAgKzcwLDYgQEAgcHVibGljOgogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICAgICB2b2lk
IGRyYXdGaWx0ZXJlZChjb25zdCBCaXRtYXBUZXh0dXJlJiBzb3VyY2VUZXh0dXJlLCBjb25zdCBC
aXRtYXBUZXh0dXJlKiBjb250ZW50VGV4dHVyZSwgY29uc3QgRmlsdGVyT3BlcmF0aW9uJiwgaW50
IHBhc3MpOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGJvb2wgZHJhd1Vz
aW5nQ3VzdG9tRmlsdGVyKEJpdG1hcFRleHR1cmUmIHRhcmdldFRleHR1cmUsIGNvbnN0IEJpdG1h
cFRleHR1cmUmIHNvdXJjZVRleHR1cmUsIGNvbnN0IEZpbHRlck9wZXJhdGlvbiYpOwotICAgIHZp
cnR1YWwgdm9pZCByZW1vdmVDYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtKEN1c3RvbUZpbHRlclBy
b2dyYW0qKTsKLSNlbmRpZgogCiAgICAgdm9pZCBzZXRFbmFibGVFZGdlRGlzdGFuY2VBbnRpYWxp
YXNpbmcoYm9vbCBlbmFibGVkKSB7IG1fZW5hYmxlRWRnZURpc3RhbmNlQW50aWFsaWFzaW5nID0g
ZW5hYmxlZDsgfQogCkBAIC0xNDQsMTEgKzEzNyw2IEBAIHByaXZhdGU6CiAgICAgQ2xpcFN0YWNr
IG1fY2xpcFN0YWNrOwogICAgIGJvb2wgbV9lbmFibGVFZGdlRGlzdGFuY2VBbnRpYWxpYXNpbmc7
CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgdHlwZWRlZiBIYXNoTWFwPEN1c3RvbUZp
bHRlclByb2dyYW1JbmZvLCBSZWZQdHI8Q3VzdG9tRmlsdGVyQ29tcGlsZWRQcm9ncmFtPiA+IEN1
c3RvbUZpbHRlclByb2dyYW1NYXA7Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1hcCBtX2N1c3Rv
bUZpbHRlclByb2dyYW1zOwotI2VuZGlmCi0KICAgICBmcmllbmQgY2xhc3MgQml0bWFwVGV4dHVy
ZUdMOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
dGV4bWFwL2Nvb3JkaW5hdGVkL0NvbXBvc2l0aW5nQ29vcmRpbmF0b3IuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0NvbXBvc2l0aW5nQ29v
cmRpbmF0b3IuY3BwCmluZGV4IDE4ZWM1ZWEuLjJiNWIxMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db21wb3NpdGluZ0Nv
b3JkaW5hdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXht
YXAvY29vcmRpbmF0ZWQvQ29tcG9zaXRpbmdDb29yZGluYXRvci5jcHAKQEAgLTE1OSwxMSArMTU5
LDYgQEAgdm9pZCBDb21wb3NpdGluZ0Nvb3JkaW5hdG9yOjpjbGVhclBlbmRpbmdTdGF0ZUNoYW5n
ZXMoKQogCiAgICAgbV9zdGF0ZS51cGRhdGVBdGxhc2VzVG9DcmVhdGUuY2xlYXIoKTsKICAgICBt
X3N0YXRlLnVwZGF0ZUF0bGFzZXNUb1JlbW92ZS5jbGVhcigpOwotCi0jaWYgRU5BQkxFKENTU19T
SEFERVJTKQotICAgIG1fc3RhdGUuY3VzdG9tRmlsdGVyc1RvQ3JlYXRlLmNsZWFyKCk7Ci0gICAg
bV9zdGF0ZS5jdXN0b21GaWx0ZXJzVG9SZW1vdmUuY2xlYXIoKTsKLSNlbmRpZgogfQogCiB2b2lk
IENvbXBvc2l0aW5nQ29vcmRpbmF0b3I6OmluaXRpYWxpemVSb290Q29tcG9zaXRpbmdMYXllcklm
TmVlZGVkKCkKQEAgLTE5MSw3ICsxODYsNiBAQCB2b2lkIENvbXBvc2l0aW5nQ29vcmRpbmF0b3I6
OmNyZWF0ZVJvb3RMYXllcihjb25zdCBJbnRTaXplJiBzaXplKQogdm9pZCBDb21wb3NpdGluZ0Nv
b3JkaW5hdG9yOjpzeW5jTGF5ZXJTdGF0ZShDb29yZGluYXRlZExheWVySUQgaWQsIENvb3JkaW5h
dGVkR3JhcGhpY3NMYXllclN0YXRlJiBzdGF0ZSkKIHsKICAgICBtX3Nob3VsZFN5bmNGcmFtZSA9
IHRydWU7Ci0gICAgbV9jbGllbnQtPndpbGxTeW5jTGF5ZXJTdGF0ZShzdGF0ZSk7CiAgICAgbV9z
dGF0ZS5sYXllcnNUb1VwZGF0ZS5hcHBlbmQoc3RkOjptYWtlX3BhaXIoaWQsIHN0YXRlKSk7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9j
b29yZGluYXRlZC9Db21wb3NpdGluZ0Nvb3JkaW5hdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29tcG9zaXRpbmdDb29yZGluYXRvci5o
CmluZGV4IDZmZDE5ZmQuLjg0Yjg1MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db21wb3NpdGluZ0Nvb3JkaW5hdG9yLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVk
L0NvbXBvc2l0aW5nQ29vcmRpbmF0b3IuaApAQCAtMzksMTAgKzM5LDYgQEAKICNpbmNsdWRlICJU
aW1lci5oIgogI2luY2x1ZGUgIlVwZGF0ZUF0bGFzLmgiCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0jaW5jbHVkZSAiRmlsdGVyT3BlcmF0aW9ucy5oIgotI2VuZGlmCi0KIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogY2xhc3MgUGFnZTsKQEAgLTYwLDcgKzU2LDYgQEAgcHVibGljOgogICAgIGNs
YXNzIENsaWVudCB7CiAgICAgcHVibGljOgogICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkRmx1c2hS
b290TGF5ZXIoKSA9IDA7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCB3aWxsU3luY0xheWVyU3RhdGUo
Q29vcmRpbmF0ZWRHcmFwaGljc0xheWVyU3RhdGUmKSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9p
ZCBub3RpZnlGbHVzaFJlcXVpcmVkKCkgPSAwOwogICAgICAgICB2aXJ0dWFsIHZvaWQgY29tbWl0
U2NlbmVTdGF0ZShjb25zdCBDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUmKSA9IDA7CiAgICAgICAg
IHZpcnR1YWwgdm9pZCBwYWludExheWVyQ29udGVudHMoY29uc3QgR3JhcGhpY3NMYXllciosIEdy
YXBoaWNzQ29udGV4dCYsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KSA9IDA7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29v
cmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJh
dGlvbi5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxN2E3MTgyLi4wMDAwMDAwCi0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9D
b29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbi5oCisrKyAvZGV2L251bGwKQEAgLTEsNjYg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0ZW1zIEluY29ycG9y
YXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
LSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSICJB
UyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAq
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIENvb3JkaW5hdGVk
Q3VzdG9tRmlsdGVyT3BlcmF0aW9uX2gKLSNkZWZpbmUgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJP
cGVyYXRpb25faAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkN1c3RvbUZp
bHRlck9wZXJhdGlvbi5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLS8vIFRoaXMgY2xhc3Mg
aXMgb25seSBhZGRpbmcgdGhlIHByb2dyYW1JZCBvbiB0b3Agb2YgQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uLiBUaGUgYXJndW1lbnQgZGVjb2RlciBoYXMgbm8KLS8vIGNvbnRleHQsIHNvIHdlIGNhbm5v
dCBzZWFyY2ggaW4gb3VyIGNhY2hlZCBDdXN0b21GaWx0ZXJQcm9ncmFtcyB3aGlsZSBkZWNvZGlu
Zy4gSW4gdGhhdCBjYXNlCi0vLyBpdCB3aWxsIGp1c3Qgc3RvcmUgdGhlIHByb2dyYW1JZCBhbmQg
bm8gQ3VzdG9tRmlsdGVyUHJvZ3JhbSBpbnN0YW5jZS4gVGhlIHJlY2VpdmVyIGlzIHN1cHBvc2Vk
IHRvCi0vLyBpdGVyYXRlIG9uIHRoaXMgc3RydWN0dXJlIGFuZCBpbmplY3QgdGhlIHJpZ2h0IEN1
c3RvbUZpbHRlclByb2dyYW1zLgotCi1jbGFzcyBDb29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJh
dGlvbiA6IHB1YmxpYyBDdXN0b21GaWx0ZXJPcGVyYXRpb24gewotcHVibGljOgotICAgIHN0YXRp
YyBQYXNzUmVmUHRyPENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uPiBjcmVhdGUoUGFz
c1JlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiBwcm9ncmFtLCBpbnQgcHJvZ3JhbUlELCBjb25z
dCBDdXN0b21GaWx0ZXJQYXJhbWV0ZXJMaXN0JiBzb3J0ZWRQYXJhbWV0ZXJzLCB1bnNpZ25lZCBt
ZXNoUm93cywgdW5zaWduZWQgbWVzaENvbHVtbnMpCi0gICAgewotICAgICAgICByZXR1cm4gYWRv
cHRSZWYobmV3IENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKHByb2dyYW0sIHByb2dy
YW1JRCwgc29ydGVkUGFyYW1ldGVycywgbWVzaFJvd3MsIG1lc2hDb2x1bW5zKSk7Ci0gICAgfQot
Ci0gICAgaW50IHByb2dyYW1JRCgpIGNvbnN0IHsgcmV0dXJuIG1fcHJvZ3JhbUlEOyB9Ci0KLXBy
aXZhdGU6Ci0gICAgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24oUGFzc1JlZlB0cjxD
dXN0b21GaWx0ZXJQcm9ncmFtPiBwcm9ncmFtLCBpbnQgcHJvZ3JhbUlELCBjb25zdCBDdXN0b21G
aWx0ZXJQYXJhbWV0ZXJMaXN0JiBzb3J0ZWRQYXJhbWV0ZXJzLCB1bnNpZ25lZCBtZXNoUm93cywg
dW5zaWduZWQgbWVzaENvbHVtbnMpCi0gICAgICAgIDogQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKHBy
b2dyYW0sIHNvcnRlZFBhcmFtZXRlcnMsIG1lc2hSb3dzLCBtZXNoQ29sdW1ucykKLSAgICAgICAg
LCBtX3Byb2dyYW1JRChwcm9ncmFtSUQpCi0gICAgewotICAgIH0KLQotICAgIGludCBtX3Byb2dy
YW1JRDsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShD
U1NfU0hBREVSUykKLQotI2VuZGlmIC8vIENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9u
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9j
b29yZGluYXRlZC9Db29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW0uaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEN1c3Rv
bUZpbHRlclByb2dyYW0uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjM0YWE1Ni4u
MDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29v
cmRpbmF0ZWQvQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQcm9ncmFtLmgKKysrIC9kZXYvbnVsbApA
QCAtMSw2NyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIENvbXBhbnkgMTAwLCBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwot
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ29vcmRpbmF0ZWRD
dXN0b21GaWx0ZXJQcm9ncmFtX2gKLSNkZWZpbmUgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQcm9n
cmFtX2gKLQotI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykgJiYgRU5BQkxFKENTU19TSEFE
RVJTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckNvbnN0YW50cy5oIgotI2luY2x1ZGUgIkN1c3Rv
bUZpbHRlclByb2dyYW0uaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBDb29yZGlu
YXRlZEN1c3RvbUZpbHRlclByb2dyYW0gOiBwdWJsaWMgQ3VzdG9tRmlsdGVyUHJvZ3JhbSB7Ci1w
dWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8Q29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQcm9n
cmFtPiBjcmVhdGUoY29uc3QgU3RyaW5nJiB2ZXJ0ZXhTaGFkZXJTdHJpbmcsIGNvbnN0IFN0cmlu
ZyYgZnJhZ21lbnRTaGFkZXJTdHJpbmcsIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1U
eXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG1peFNldHRpbmdzLCBD
dXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9w
dFJlZihuZXcgQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQcm9ncmFtKHZlcnRleFNoYWRlclN0cmlu
ZywgZnJhZ21lbnRTaGFkZXJTdHJpbmcsIHByb2dyYW1UeXBlLCBtaXhTZXR0aW5ncywgbWVzaFR5
cGUpKTsKLSAgICB9Ci0KLSAgICB2aXJ0dWFsIGJvb2wgaXNMb2FkZWQoKSBjb25zdCBvdmVycmlk
ZSB7IHJldHVybiB0cnVlOyB9Ci0KLXByb3RlY3RlZDoKLSAgICB2aXJ0dWFsIFN0cmluZyB2ZXJ0
ZXhTaGFkZXJTdHJpbmcoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX3ZlcnRleFNoYWRlclN0
cmluZzsgfQotICAgIHZpcnR1YWwgU3RyaW5nIGZyYWdtZW50U2hhZGVyU3RyaW5nKCkgY29uc3Qg
b3ZlcnJpZGUgeyByZXR1cm4gbV9mcmFnbWVudFNoYWRlclN0cmluZzsgfQotCi0gICAgdmlydHVh
bCB2b2lkIHdpbGxIYXZlQ2xpZW50cygpIG92ZXJyaWRlIHsgbm90aWZ5Q2xpZW50cygpOyB9Ci0g
ICAgdmlydHVhbCB2b2lkIGRpZFJlbW92ZUxhc3RDbGllbnQoKSBvdmVycmlkZSB7IH0KLQotcHJp
dmF0ZToKLSAgICBDb29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW0oY29uc3QgU3RyaW5nJiB2
ZXJ0ZXhTaGFkZXJTdHJpbmcsIGNvbnN0IFN0cmluZyYgZnJhZ21lbnRTaGFkZXJTdHJpbmcsIEN1
c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlLCBjb25zdCBDdXN0b21GaWx0ZXJQcm9n
cmFtTWl4U2V0dGluZ3MmIG1peFNldHRpbmdzLCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlw
ZSkKLSAgICAgICAgOiBDdXN0b21GaWx0ZXJQcm9ncmFtKHByb2dyYW1UeXBlLCBtaXhTZXR0aW5n
cywgbWVzaFR5cGUpCi0gICAgICAgICwgbV92ZXJ0ZXhTaGFkZXJTdHJpbmcodmVydGV4U2hhZGVy
U3RyaW5nKQotICAgICAgICAsIG1fZnJhZ21lbnRTaGFkZXJTdHJpbmcoZnJhZ21lbnRTaGFkZXJT
dHJpbmcpCi0gICAgewotICAgIH0KLQotICAgIFN0cmluZyBtX3ZlcnRleFNoYWRlclN0cmluZzsK
LSAgICBTdHJpbmcgbV9mcmFnbWVudFNoYWRlclN0cmluZzsKLX07Ci0KLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykgJiYgRU5BQkxF
KENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQcm9ncmFt
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9j
b29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NT
Y2VuZS5jcHAKaW5kZXggODY2Mjc4OC4uMzdjYzVkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhp
Y3NTY2VuZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFw
L2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5jcHAKQEAgLTMyLDEzICszMiw2
IEBACiAjaW5jbHVkZSA8d3RmL0F0b21pY3MuaD4KICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5o
PgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIkNvb3JkaW5hdGVkQ3VzdG9t
RmlsdGVyT3BlcmF0aW9uLmgiCi0jaW5jbHVkZSAiQ29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJQcm9n
cmFtLmgiCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIgotI2luY2x1ZGUgIkN1c3Rv
bUZpbHRlclByb2dyYW1JbmZvLmgiCi0jZW5kaWYKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiB2
b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6ZGlzcGF0Y2hPbk1haW5UaHJlYWQoY29uc3Qg
RnVuY3Rpb248dm9pZCgpPiYgZnVuY3Rpb24pCkBAIC0yMjksNTQgKzIyMiwxMCBAQCB2b2lkIENv
b3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6c2V0TGF5ZXJGaWx0ZXJzSWZOZWVkZWQoVGV4dHVyZU1h
cHBlckxheWVyKiBsYXllcgogICAgIGlmICghc3RhdGUuZmlsdGVyc0NoYW5nZWQpCiAgICAgICAg
IHJldHVybjsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBpbmplY3RDYWNoZWRDdXN0
b21GaWx0ZXJQcm9ncmFtcyhzdGF0ZS5maWx0ZXJzKTsKLSNlbmRpZgogICAgIGxheWVyLT5zZXRG
aWx0ZXJzKHN0YXRlLmZpbHRlcnMpOwogfQogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi12b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6c3luY0N1c3RvbUZpbHRlclByb2dy
YW1zKGNvbnN0IENvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZSYgc3RhdGUpCi17Ci0gICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBzdGF0ZS5jdXN0b21GaWx0ZXJzVG9DcmVhdGUuc2l6ZSgpOyArK2kp
Ci0gICAgICAgIGNyZWF0ZUN1c3RvbUZpbHRlclByb2dyYW0oc3RhdGUuY3VzdG9tRmlsdGVyc1Rv
Q3JlYXRlW2ldLmZpcnN0LCBzdGF0ZS5jdXN0b21GaWx0ZXJzVG9DcmVhdGVbaV0uc2Vjb25kKTsK
LQotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3RhdGUuY3VzdG9tRmlsdGVyc1RvUmVtb3Zl
LnNpemUoKTsgKytpKQotICAgICAgICByZW1vdmVDdXN0b21GaWx0ZXJQcm9ncmFtKHN0YXRlLmN1
c3RvbUZpbHRlcnNUb1JlbW92ZVtpXSk7Ci19Ci0KLXZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1Nj
ZW5lOjppbmplY3RDYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtcyhjb25zdCBGaWx0ZXJPcGVyYXRp
b25zJiBmaWx0ZXJzKSBjb25zdAotewotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZmlsdGVy
cy5zaXplKCk7ICsraSkgewotICAgICAgICBGaWx0ZXJPcGVyYXRpb24qIG9wZXJhdGlvbiA9IGZp
bHRlcnMub3BlcmF0aW9ucygpLmF0KGkpLmdldCgpOwotICAgICAgICBpZiAob3BlcmF0aW9uLT50
eXBlKCkgIT0gRmlsdGVyT3BlcmF0aW9uOjpDVVNUT00pCi0gICAgICAgICAgICBjb250aW51ZTsK
LQotICAgICAgICBDb29yZGluYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9tT3BlcmF0
aW9uID0gc3RhdGljX2Nhc3Q8Q29vcmRpbmF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qPihvcGVy
YXRpb24pOwotICAgICAgICBBU1NFUlQoIWN1c3RvbU9wZXJhdGlvbi0+cHJvZ3JhbSgpKTsKLSAg
ICAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1hcDo6Y29uc3RfaXRlcmF0b3IgaXRlciA9IG1fY3Vz
dG9tRmlsdGVyUHJvZ3JhbXMuZmluZChjdXN0b21PcGVyYXRpb24tPnByb2dyYW1JRCgpKTsKLSAg
ICAgICAgQVNTRVJUKGl0ZXIgIT0gbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5lbmQoKSk7Ci0gICAg
ICAgIGN1c3RvbU9wZXJhdGlvbi0+c2V0UHJvZ3JhbShpdGVyLT52YWx1ZS5nZXQoKSk7Ci0gICAg
fQotfQotCi12b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6Y3JlYXRlQ3VzdG9tRmlsdGVy
UHJvZ3JhbShpbnQgaWQsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1JbmZvJiBwcm9ncmFtSW5m
bykKLXsKLSAgICBBU1NFUlQoIW1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMuY29udGFpbnMoaWQpKTsK
LSAgICBtX2N1c3RvbUZpbHRlclByb2dyYW1zLnNldChpZCwgQ29vcmRpbmF0ZWRDdXN0b21GaWx0
ZXJQcm9ncmFtOjpjcmVhdGUocHJvZ3JhbUluZm8udmVydGV4U2hhZGVyU3RyaW5nKCksIHByb2dy
YW1JbmZvLmZyYWdtZW50U2hhZGVyU3RyaW5nKCksIHByb2dyYW1JbmZvLnByb2dyYW1UeXBlKCks
IHByb2dyYW1JbmZvLm1peFNldHRpbmdzKCksIHByb2dyYW1JbmZvLm1lc2hUeXBlKCkpKTsKLX0K
LQotdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnJlbW92ZUN1c3RvbUZpbHRlclByb2dy
YW0oaW50IGlkKQotewotICAgIEN1c3RvbUZpbHRlclByb2dyYW1NYXA6Oml0ZXJhdG9yIGl0ZXIg
PSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmZpbmQoaWQpOwotICAgIEFTU0VSVChpdGVyICE9IG1f
Y3VzdG9tRmlsdGVyUHJvZ3JhbXMuZW5kKCkpOwotICAgIGlmIChtX3RleHR1cmVNYXBwZXIpCi0g
ICAgICAgIG1fdGV4dHVyZU1hcHBlci0+cmVtb3ZlQ2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbShp
dGVyLT52YWx1ZS5nZXQoKSk7Ci0gICAgbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5yZW1vdmUoaXRl
cik7Ci19Ci0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCiB2b2lkIENvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZTo6c2V0TGF5ZXJTdGF0ZShDb29yZGluYXRlZExheWVySUQgaWQsIGNvbnN0
IENvb3JkaW5hdGVkR3JhcGhpY3NMYXllclN0YXRlJiBsYXllclN0YXRlKQogewogICAgIEFTU0VS
VChtX3Jvb3RMYXllcklEICE9IEludmFsaWRDb29yZGluYXRlZExheWVySUQpOwpAQCAtNjE5LDkg
KzU2OCw2IEBAIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpjb21taXRTY2VuZVN0YXRl
KGNvbnN0IENvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZSYKIAogICAgIHN5bmNJbWFnZUJhY2tpbmdz
KHN0YXRlKTsKICAgICBzeW5jVXBkYXRlQXRsYXNlcyhzdGF0ZSk7Ci0jaWYgRU5BQkxFKENTU19T
SEFERVJTKQotICAgIHN5bmNDdXN0b21GaWx0ZXJQcm9ncmFtcyhzdGF0ZSk7Ci0jZW5kaWYKIAog
ICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3RhdGUubGF5ZXJzVG9VcGRhdGUuc2l6ZSgpOyAr
K2kpCiAgICAgICAgIHNldExheWVyU3RhdGUoc3RhdGUubGF5ZXJzVG9VcGRhdGVbaV0uZmlyc3Qs
IHN0YXRlLmxheWVyc1RvVXBkYXRlW2ldLnNlY29uZCk7CkBAIC03MTUsMTcgKzY2MSw2IEBAIHZv
aWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpzZXRMYXllckFuaW1hdGlvbnNJZk5lZWRlZChU
ZXh0dXJlTWFwcGVyTGF5ZXIqIGxhCiAgICAgaWYgKCFzdGF0ZS5hbmltYXRpb25zQ2hhbmdlZCkK
ICAgICAgICAgcmV0dXJuOwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGZvciAoc2l6
ZV90IGkgPSAwOyBpIDwgc3RhdGUuYW5pbWF0aW9ucy5hbmltYXRpb25zKCkuc2l6ZSgpOyArK2kp
IHsKLSAgICAgICAgY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIGtleWZyYW1lcyA9IHN0YXRlLmFu
aW1hdGlvbnMuYW5pbWF0aW9ucygpLmF0KGkpLmtleWZyYW1lcygpOwotICAgICAgICBpZiAoa2V5
ZnJhbWVzLnByb3BlcnR5KCkgIT0gQW5pbWF0ZWRQcm9wZXJ0eVdlYmtpdEZpbHRlcikKLSAgICAg
ICAgICAgIGNvbnRpbnVlOwotICAgICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IGtleWZyYW1l
cy5zaXplKCk7ICsraikgewotICAgICAgICAgICAgY29uc3QgRmlsdGVyQW5pbWF0aW9uVmFsdWUm
IGZpbHRlclZhbHVlID0gc3RhdGljX2Nhc3Q8Y29uc3QgRmlsdGVyQW5pbWF0aW9uVmFsdWUmPihr
ZXlmcmFtZXMuYXQoaikpOwotICAgICAgICAgICAgaW5qZWN0Q2FjaGVkQ3VzdG9tRmlsdGVyUHJv
Z3JhbXMoZmlsdGVyVmFsdWUudmFsdWUoKSk7Ci0gICAgICAgIH0KLSAgICB9Ci0jZW5kaWYKICAg
ICBsYXllci0+c2V0QW5pbWF0aW9ucyhzdGF0ZS5hbmltYXRpb25zKTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nv
b3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oCmluZGV4IDA3
Y2Q1NjMuLjAyNWRkMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRp
bmF0ZWRHcmFwaGljc1NjZW5lLmgKQEAgLTQ3LDggKzQ3LDYgQEAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogY2xhc3MgQ29vcmRpbmF0ZWRCYWNraW5nU3RvcmU7Ci1jbGFzcyBDdXN0b21GaWx0ZXJQ
cm9ncmFtOwotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm87CiAKIGNsYXNzIENvb3JkaW5h
dGVkR3JhcGhpY3NTY2VuZUNsaWVudCB7CiBwdWJsaWM6CkBAIC0xMTUsMTMgKzExMyw2IEBAIHBy
aXZhdGU6CiAgICAgdm9pZCBjbGVhckltYWdlQmFja2luZ0NvbnRlbnRzKENvb3JkaW5hdGVkSW1h
Z2VCYWNraW5nSUQpOwogICAgIHZvaWQgcmVtb3ZlSW1hZ2VCYWNraW5nKENvb3JkaW5hdGVkSW1h
Z2VCYWNraW5nSUQpOwogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIHZvaWQgc3luY0N1
c3RvbUZpbHRlclByb2dyYW1zKGNvbnN0IENvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZSYpOwotICAg
IHZvaWQgaW5qZWN0Q2FjaGVkQ3VzdG9tRmlsdGVyUHJvZ3JhbXMoY29uc3QgRmlsdGVyT3BlcmF0
aW9ucyYgZmlsdGVycykgY29uc3Q7Ci0gICAgdm9pZCBjcmVhdGVDdXN0b21GaWx0ZXJQcm9ncmFt
KGludCBpZCwgY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8mKTsKLSAgICB2b2lkIHJlbW92
ZUN1c3RvbUZpbHRlclByb2dyYW0oaW50IGlkKTsKLSNlbmRpZgotCiAgICAgVGV4dHVyZU1hcHBl
ckxheWVyKiBsYXllckJ5SUQoQ29vcmRpbmF0ZWRMYXllcklEIGlkKQogICAgIHsKICAgICAgICAg
QVNTRVJUKG1fbGF5ZXJzLmNvbnRhaW5zKGlkKSk7CkBAIC0xOTMsMTEgKzE4NCw2IEBAIHByaXZh
dGU6CiAgICAgQ29sb3IgbV9iYWNrZ3JvdW5kQ29sb3I7CiAgICAgYm9vbCBtX3NldERyYXdzQmFj
a2dyb3VuZDsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICB0eXBlZGVmIEhhc2hNYXA8
aW50LCBSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gPiBDdXN0b21GaWx0ZXJQcm9ncmFtTWFw
OwotICAgIEN1c3RvbUZpbHRlclByb2dyYW1NYXAgbV9jdXN0b21GaWx0ZXJQcm9ncmFtczsKLSNl
bmRpZgotCiAgICAgVGV4dHVyZU1hcHBlckZQU0NvdW50ZXIgbV9mcHNDb3VudGVyOwogfTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3Jk
aW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZS5o
CmluZGV4IDU0NDVlNjIuLmMyYzJjZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU3RhdGUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0
ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlLmgKQEAgLTQyLDEwICs0Miw2IEBACiAjaW5jbHVk
ZSAiRmlsdGVyT3BlcmF0aW9ucy5oIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMp
Ci0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNlbmRpZgotCiAjaWYgVVNF
KEdSQVBISUNTX1NVUkZBQ0UpCiAjaW5jbHVkZSAiR3JhcGhpY3NTdXJmYWNlLmgiCiAjaW5jbHVk
ZSAiR3JhcGhpY3NTdXJmYWNlVG9rZW4uaCIKQEAgLTE5OCwxMSArMTk0LDYgQEAgc3RydWN0IENv
b3JkaW5hdGVkR3JhcGhpY3NTdGF0ZSB7CiAKICAgICBWZWN0b3I8c3RkOjpwYWlyPHVpbnQzMl90
IC8qIGF0bGFzSUQgKi8sIFJlZlB0cjxDb29yZGluYXRlZFN1cmZhY2U+ID4gPiB1cGRhdGVBdGxh
c2VzVG9DcmVhdGU7CiAgICAgVmVjdG9yPHVpbnQzMl90IC8qIGF0bGFzSUQgKi8+IHVwZGF0ZUF0
bGFzZXNUb1JlbW92ZTsKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBWZWN0b3I8c3Rk
OjpwYWlyPHVpbnQzMl90IC8qIEZpbHRlcklEICovLCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbz4g
PiBjdXN0b21GaWx0ZXJzVG9DcmVhdGU7Ci0gICAgVmVjdG9yPHVpbnQzMl90PiBjdXN0b21GaWx0
ZXJzVG9SZW1vdmU7Ci0jZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vQ2hhbmdlTG9nCmluZGV4IDc5YmM1N2UuLmE2YjdmN2Ug
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU3
IEBACisyMDE0LTAxLTIzICBNYXggVnVqb3ZpYyAgPG12dWpvdmljQGFkb2JlLmNvbT4KKworICAg
ICAgICBSZW1vdmUgQ1NTIEN1c3RvbSBGaWx0ZXJzIGNvZGUgYW5kIHRlc3RzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjczODIKKworICAgICAgICBS
ZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLiBSZW1vdmlu
ZyBmdW5jdGlvbmFsaXR5LgorCisgICAgICAgICogYXIucG86CisgICAgICAgICogYXMucG86Cisg
ICAgICAgICogYmcucG86CisgICAgICAgICogY3MucG86CisgICAgICAgICogZGUucG86CisgICAg
ICAgICogZWwucG86CisgICAgICAgICogZW5fQ0EucG86CisgICAgICAgICogZW5fR0IucG86Cisg
ICAgICAgICogZW8ucG86CisgICAgICAgICogZXMucG86CisgICAgICAgICogZXQucG86CisgICAg
ICAgICogZXUucG86CisgICAgICAgICogZnIucG86CisgICAgICAgICogZ2wucG86CisgICAgICAg
ICogZ3UucG86CisgICAgICAgICogaGUucG86CisgICAgICAgICogaGkucG86CisgICAgICAgICog
aHUucG86CisgICAgICAgICogaWQucG86CisgICAgICAgICogaXQucG86CisgICAgICAgICoga24u
cG86CisgICAgICAgICoga28ucG86CisgICAgICAgICogbHQucG86CisgICAgICAgICogbHYucG86
CisgICAgICAgICogbWwucG86CisgICAgICAgICogbXIucG86CisgICAgICAgICogbmIucG86Cisg
ICAgICAgICogbmwucG86CisgICAgICAgICogb3IucG86CisgICAgICAgICogcGEucG86CisgICAg
ICAgICogcGwucG86CisgICAgICAgICogcHQucG86CisgICAgICAgICogcHRfQlIucG86CisgICAg
ICAgICogcm8ucG86CisgICAgICAgICogcnUucG86CisgICAgICAgICogc2wucG86CisgICAgICAg
ICogc3IucG86CisgICAgICAgICogc3JAbGF0aW4ucG86CisgICAgICAgICogc3YucG86CisgICAg
ICAgICogdGEucG86CisgICAgICAgICogdGUucG86CisgICAgICAgICogdWsucG86CisgICAgICAg
ICogdmkucG86CisgICAgICAgICogemhfQ04ucG86CisKIDIwMTQtMDEtMDggIEVucmljbyBOaWNv
bGV0dG8gIDxsaXZlcmlnQGdtYWlsLmNvbT4KIAogICAgICAgICBVcGRhdGVkIEJyYXppbGlhbiBQ
b3J0dWd1ZXNlIHRyYW5zbGF0aW9uIG9mIFdlYktpdEdUSysgLSBEZWNlbWJlciAzMCwgMjAxMwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2FyLnBvIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2FyLnBvCmluZGV4IDVlNGFhZjAuLjU4NWVjYzkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9hci5wbworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYXIucG8KQEAgLTE3MzQsMTYgKzE3MzQsNiBAQCBt
c2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBt
c2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGlu
Z3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIg
ItmB2LnZkdmEINmF2LHYp9is2LkgWFNTIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8g
ZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICLZhdinINil2LDYpyDYs9mK2YHYudmEINmE2LXZ
giBET00iCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1z
Z3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2FzLnBv
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2FzLnBvCmluZGV4IGJjZDgyMjkuLjc4
NmY4NjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9hcy5wbwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vYXMucG8KQEAgLTE3MTcsMTQgKzE3
MTcsNiBAQCBtc2dzdHIgIuCmruCmvuCmp+CnjeCmr+CmriDgpqrgp43gprLgp4fgpqzgp4fgppXg
p4cg4KaH4Kao4Kay4Ka+4KaH4Kao4KewIOCmheCmqAogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxh
eWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAi4Kau4Ka+4Kan4KeN4Kav4KauIOCmquCnjeCm
suCnh+CmrOCnh+CmleCnhyDgpofgpqjgprLgpr7gpofgpqjgp7Ag4KaF4Kao4KeB4Kau4Kak4Ka/
IOCmpuCmv+Cnn+CnhyDgpqjgp4ciCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0
L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1t
c2dzdHIgIkNTUyDgprbgp4fgpofgpqHgpr7gp7Dgprjgpq7gp4Lgprkg4Ka44Ka+4Kau4Kew4KeN
4Kal4Kas4Ka+4KaoIOCmleCnsOCmlSIKLQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJr
aXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNz
cyBzaGFkZXJzIgotbXNnc3RyICJjc3Mg4Ka24KeH4KaH4Kah4Ka+4Kew4Ka44Kau4KeC4Ka5IOCm
uOCmvuCmruCnsOCnjeCmpeCmrOCmvuCmqCDgppXgp7Dgpr4g4Ka54KasIOCmqOCnhyIKLQogIzog
Li4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcK
IG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICLgpoXg
prjgp4Hgp7DgppXgp43gprfgpr/gpqQg4Ka44Kau4Kay4KewIOCmquCnjeCnsOCmpuCnsOCnjeCm
tuCmqCDgprjgpr7gpq7gp7Dgp43gpqXgpqzgpr7gpqgg4KaV4Kew4KaVIgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2JnLnBvIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2JnLnBvCmluZGV4IDMyYTJlZDQuLmMwM2YzZDEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9iZy5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vYmcucG8KQEAgLTE3NjAsMTYgKzE3NjAsNiBAQCBtc2dzdHIgIiIKIG1z
Z2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAot
IzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQot
IywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgItCS0LrQu9GO0YfQ
stCw0L3QtSDQvdCwINC/0YDQvtCy0LXRgNC60LAg0LfQsCBYU1MiCi0KLSM6IC4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dp
ZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgItCU0LDQu9C4INC00LAg
0YHQtSDQstC60LvRjtGH0Lgg0LLRitC30LzQvtC20L3QvtGB0YLRgtCwINC30LAg0L/QvtGB0YLQ
sNCy0Y/QvdC1INCyIERPTSIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBj
b250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vY3MucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vY3MucG8KaW5kZXgg
Yjg3YjFjOC4uMWI0Yjk5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL2NzLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9jcy5wbwpAQCAt
MTc0MywxNiArMTc0Myw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJh
Y2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBD
U1Mgc2hhZGVycyIKLW1zZ3N0ciAiUG92b2xpdCByZXZpemkgWFNTIgotCi0jOiAuLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNn
aWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJKZXN0bGkgcG92b2xp
dCB2a2zDoWTDoW7DrSBET00iCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUg
Y29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL2RlLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2RlLnBvCmluZGV4
IDBmOGNmNWEuLmNhMjhmODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9kZS5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZGUucG8KQEAg
LTE3NjEsMTQgKzE3NjEsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXli
YWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIkxlZ3QgZmVzdCwgb2IgIgogCi0jOiAuLi8uLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAi
RW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJDU1MtU2hhZGVyIGFrdGl2aWVyZW4iCi0KLSM6
IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIK
LW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiTGVndCBmZXN0
LCBvYiBDU1MtU2hhZGVyIGFrdGl2aWVydCB3ZXJkZW4gc29sbGVuIgotCiAjOiAuLi8uLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVu
YWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIkFuemVpZ2Ugdm9uIHVu
c2ljaGVyZW0gSW5oYWx0IGFrdGl2aWVyZW4iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vZWwucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZWwu
cG8KaW5kZXggODU0MTk0NC4uODdlZjVjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2VsLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9l
bC5wbwpAQCAtMTc0OSwxNSArMTc0OSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVk
aWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQg
IkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAizpXOvc61z4HOs86/z4DOv86vzrfPg863IM+D
zrXOvc6xz4HOr8+Jzr0iCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIK
LW1zZ3N0ciAiIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQi
CiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9l
bl9DQS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lbl9DQS5wbwppbmRleCAy
NmFhNGNiLi5iNWJhMmRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vZW5fQ0EucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VuX0NBLnBv
CkBAIC0xNzIzLDE2ICsxNzIzLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBw
bGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5h
YmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJFbmFibGUgWFNTIEF1ZGl0b3IiCi0KLSM6IC4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5
Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIldoZXRoZXIg
dG8gZW5hYmxlIERPTSBwYXN0ZSIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Vi
a2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3Vy
ZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vZW5fR0IucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW5fR0Iu
cG8KaW5kZXggMDA4YjE3Ni4uM2UwZjMwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2VuX0dCLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9lbl9HQi5wbwpAQCAtMTc1MCwxNCArMTc1MCw2IEBAIG1zZ3N0ciAiTWVkaWEgcGxheWJhY2sg
YWxsb3dzIGlubGluZSIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxp
bmUiCiBtc2dzdHIgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIAotIzog
Li4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQot
bXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiRW5hYmxlIENTUyBzaGFkZXJzIgot
Ci0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIldoZXRo
ZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9m
IGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNv
bnRlbnQiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW8ucG8g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZW8ucG8KaW5kZXggZmNlMjVmMy4uMzAx
NjA4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VvLnBvCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lby5wbwpAQCAtMTY5OSwxNSArMTY5
OSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlu
bGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3
ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICIi
Ci0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5
OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dz
dHIgIsSIdSBlbsWdYWx0aSBsYSBzdWJ0ZW5vbiBwb3IgbGEgSFRNTDUtZGF0dW1iYXpvPyIKLQog
IzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcK
IG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZXMucG8gYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZXMucG8KaW5kZXggNzg2ZGRkNS4uN2U5NjliNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2VzLnBvCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9lcy5wbwpAQCAtMTc3NywxNiArMTc3Nyw2IEBAIG1z
Z3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1z
Z3N0ciAiIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0
ciAiQWN0aXZhciBlbCBhdWRpdG9yIGRlIFhTUyIKLQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0
ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0
aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiSW5kaWNhIHNpIGRlYmUgYWN0aXZh
ciBlbCBwZWdhZG8gRE9NIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJl
IGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9wby9ldC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ldC5wbwppbmRl
eCA0ZDFlM2I3Li5hMThkYjk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vZXQucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2V0LnBvCkBA
IC0xNzQxLDE2ICsxNzQxLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5
YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxl
IENTUyBzaGFkZXJzIgotbXNnc3RyICJYU1MgYXVkaWl0b3JpIGx1YmFtaW5lIgotCi0jOiAuLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6
eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJLYXMgbHVi
YWRhIERPTS1ww7VoaW5lIGFzZXRhbWluZSIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJr
aXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBp
bnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vZXUucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZXUu
cG8KaW5kZXggNWEzMjMzZi4uZTNmNzZmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2V1LnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9l
dS5wbwpAQCAtMTc0NSwxNiArMTc0NSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVk
aWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQg
IkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiR2FpdHUgWFNTIGJlZ2lyYWxlYSIKLQotIzog
Li4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywg
ZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiRE9N
IGl0c2FzdGVhIGdhaXR1a28gZGVuIGFsYSBleiIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBv
ZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vZnIucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
ZnIucG8KaW5kZXggYzRlOTdjZC4uODA3NmEwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2ZyLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9mci5wbwpAQCAtMTcxNSwxNCArMTcxNSw2IEBAIG1zZ3N0ciAiTGEgbGVjdHVyZSBkdSBtw6lk
aWEgYXV0b3Jpc2UgbCdpbnTDqWdyYXRpb24iCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFj
ayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICJJbmRpcXVlIHNpIGxhIGxlY3R1cmUgZHUgbcOpZGlh
IGF1dG9yaXNlIGwnaW50w6lncmF0aW9uIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgot
bXNnc3RyICJBY3RpdmVyIGxlcyBvbWJyYWdlcyBDU1MiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVu
YWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiSW5kaXF1ZSBzJ2lsIGZhdXQgYWN0aXZlciBsZXMg
b21icmFnZXMgQ1NTIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRl
bnQiCiBtc2dzdHIgIkFjdGl2ZXIgbCdhZmZpY2hhZ2UgZGUgY29udGVudSBub24gc8OpY3VyaXRh
aXJlIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2dsLnBvIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2dsLnBvCmluZGV4IGE3MmMwNDUuLjBkODI2
NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9nbC5wbworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZ2wucG8KQEAgLTE3MzAsMTQgKzE3MzAs
NiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxp
bmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAi
QWN0aXZhciBzb21icmVhZG9yZXMgQ1NTIgotCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUg
Y3NzIHNoYWRlcnMiCi1tc2dzdHIgIkluZGljYSBzZSBhY3RpdmFyIG9zIHNvbWJyZWFkb3JlcyBD
U1MiCi0KICM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1z
Z3N0ciAiQWN0aXZhciB2aXN1YWxpemFjacOzbiBkZSBjb250aWRvIG5vbiBzZWd1cm8iCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vZ3UucG8gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vZ3UucG8KaW5kZXggMjYyOGE4Ny4uZWIzMWZiMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2d1LnBvCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ndS5wbwpAQCAtMTYyMSwxNCArMTYyMSw2IEBAIG1zZ3N0
ciAi4Kqu4KuA4Kqh4Kq/4Kqv4Kq+IOCqquCrjeCqsuCrh+Cqr+CqsOCqqOCrhyDgqofgqqjgqrLg
qr7gqofgqqjgqqjgq4Ag4KqcCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3Mg
aW5saW5lIgogbXNnc3RyICLgqrbgq4HgqoIg4Kqu4KuA4Kqh4Kq/4Kqv4Kq+IOCqquCrjeCqsuCr
h+CqrOCrh+CqleCqqOCrhyDgqofgqqjgqrLgqr7gqofgqqjgqqjgq4Ag4Kqq4Kqw4Kq14Kq+4Kqo
4KqX4KuAIOCqhuCqquCrh+CqsiDgqpvgq4ciCiAKLSM6IC4uL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHA6OTgxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJDU1Mg4Kq2
4KuF4Kqh4Kqw4Kqo4KuHIOCquOCqleCrjeCqsOCqv+CqryDgqpXgqrDgq4siCi0KLSM6IC4uL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTgyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUg
Y3NzIHNoYWRlcnMiCi1tc2dzdHIgIuCqtuCrgeCqgiBjc3Mg4Kq24KuF4Kqh4Kqw4Kqo4KuHIOCq
uOCqleCrjeCqsOCqv+CqryDgqpXgqrDgqrXgqr7gqqjgq4HgqoIg4Kqb4KuHIgotCiAjOiAuLi93
ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5NwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9m
IGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIuCqheCquOCrgeCqsOCqleCrjeCqt+Cqv+CqpCDg
qrjgqq7gqr7gqrXgqr/gqrfgq43gqp/gqqjgq4cg4Kqm4Kqw4KuN4Kq24Kq+4Kq14Kq14Kq+IOCq
uOCqleCrjeCqsOCqv+CqryDgqpXgqrDgq4siCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vaGUucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaGUu
cG8KaW5kZXggOTQ5NTQ3Ni4uYjhiZWM4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2hlLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9o
ZS5wbwpAQCAtMTczNywxNiArMTczNyw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVk
aWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQg
IkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAi15DXpNep16gg16rXodeo15nXmNeZ150iCi0K
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIK
LSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIg
IteU15DXnSDXqtee15XXoNeV16og15TXqNen16Ig16bXqNeZ15vXldeqINec15TXmdeV16og157X
ldeT16TXodeV16ouIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJz
ZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRl
bnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9oaS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9oaS5wbwppbmRleCBhYzk3
MjE4Li5lMTlhMTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
aGkucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2hpLnBvCkBAIC0xNzM5
LDE0ICsxNzM5LDYgQEAgbXNnc3RyICLgpK7gpYDgpKHgpL/gpK/gpL4g4KSq4KWN4KSy4KWH4KSs
4KWI4KSVIOCkh+CkqOCksuCkvuCkh+CkqCDgpJXgpYAg4KS4CiBtc2dpZCAiV2hldGhlciBtZWRp
YSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICLgpJXgpY3gpK/gpL4g4KSu4KWA4KSh
4KS/4KSv4KS+IOCkquCljeCksuClh+CkrOCliOCklSDgpIfgpKjgpLLgpL7gpIfgpKgg4KSV4KWA
IOCkuOCljeCkteClgOCkleClg+CkpOCkvyDgpKbgpYfgpKTgpL4g4KS54KWIIgogCi0jOiAuLi8u
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dp
ZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJDU1Mg4KS24KWH4KSh4KSwIOCkuOCkleCl
jeCkt+CkriDgpJXgpLDgpYfgpIIiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0
L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mg
c2hhZGVycyIKLW1zZ3N0ciAi4KSV4KWN4KSv4KS+IOCkuOClgOCkj+CkuOCkj+CkuCDgpLbgpYfg
pKHgpLAg4KSV4KWLIOCkuOCkleCljeCksOCkv+CkryDgpJXgpLDgpKjgpL4g4KS54KWIIgotCiAj
OiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAw
NwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIuCk
heCkuOClgeCksOCkleCljeCkt+Ckv+CkpCDgpJXgpILgpJ/gpYfgpILgpJ8g4KSV4KS+IOCkquCl
jeCksOCkpuCksOCljeCktuCkqCDgpLjgpJXgpY3gpLDgpL/gpK8g4KSV4KSw4KSo4KS+IOCkueCl
iCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9odS5wbyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9odS5wbwppbmRleCBkMWEyNjNiLi40MjE5ZjBm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaHUucG8KKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2h1LnBvCkBAIC0xNzUwLDE2ICsxNzUwLDYg
QEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5l
IgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNl
dHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNn
c3RyICJYU1MtYXVkaXTDoWzDsyBlbmdlZMOpbHllesOpc2UiCi0KLSM6IC4uLy4uLy4uL1dlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAi
V2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIkRPTSBiZWlsbGVzenTDqXMg
ZW5nZWTDqWx5ZXrDqXNlIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3
ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNv
bnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9wby9pZC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9pZC5wbwppbmRleCAz
NTEzNmI2Li4zODcxNTJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vaWQucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2lkLnBvCkBAIC0x
NjkyLDE0ICsxNjkyLDYgQEAgbXNnc3RyICJQZW11dGFyYW4gbWVkaWEgbWVuZ2lqaW5rYW4gaW5s
aW5lIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0
ciAiQXBha2FoIHBlbXV0YXJhbiBtZWRpYSBtZW5naWppbmthbiBpbmxpbmUiCiAKLSM6IC4uLy4u
Ly4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJF
bmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkZ1bmdzaWthbiBzaGFkZXIgQ1NTIgotCi0jOiAu
Li8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dp
ZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIkFwYWthaCBtZW1mdW5n
c2lrYW4gc2hhZGVyIENTUyIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBj
b250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvcG8vaXQucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vaXQucG8KaW5kZXgg
MmQxODQwNC4uNjZlZDlhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL2l0LnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9pdC5wbwpAQCAt
MTgyOSwxNiArMTgyOSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJh
Y2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBD
U1Mgc2hhZGVycyIKLW1zZ3N0ciAiQWJpbGl0YSBhdWRpdG9yIFhTUyIKLQotIzogLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1z
Z2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiSW5kaWNhIHNlIGFi
aWxpdGFyZSBpbCBET00gcGFzdGluZyIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNl
Y3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ndGsvcG8va24ucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8va24ucG8K
aW5kZXggM2MxYmM5ZS4uOTA1MDQwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL3BvL2tuLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9rbi5w
bwpAQCAtMTcyNCwxNCArMTcyNCw2IEBAIG1zZ3N0ciAi4LKu4LOA4LKh4LK/4LKvIOCyquCzjeCy
suCzh+CyrOCzjeCyr+CyvuCyleCzjSDgsrjgsr7gsrLgsr/gsqjgs4rgsrPgspcKIG1zZ2lkICJX
aGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIuCyruCzgOCyoeCy
v+CyryDgsqrgs43gsrLgs4fgsqzgs43gsq/gsr7gspXgs40g4LK44LK+4LKy4LK/4LKo4LOK4LKz
4LKX4LK/4LKw4LOB4LK14LOB4LKm4LKV4LON4LKV4LOGIOCyheCyqOCzgeCyruCypOCyv+CyuOCz
geCypOCzjeCypOCypuCzhuCyr+CzhiIKIAotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJr
aXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIK
LW1zZ3N0ciAiQ1NTIOCytuCzh+CyoeCysOCzgeCyl+Cys+CyqOCzjeCyqOCzgSDgsrjgspXgs43g
srDgsr/gsq/gspfgs4rgsrPgsr/gsrjgs4EiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJs
ZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCytuCzh+CyoeCysOCzgeCyl+Cys+CyqOCzjeCy
qOCzgSDgsrjgspXgs43gsrDgsr/gsq/gspfgs4rgsrPgsr/gsrjgsqzgs4fgspXgs4YiCi0KICM6
IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3
CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAi4LKF
4LK44LOB4LKw4LKV4LON4LK34LK/4LKkIOCyteCyv+Cyt+Cyr+CyteCyqOCzjeCyqOCzgSDgsqTg
s4vgsrDgsr/gsrjgs4HgsrXgs4Hgsqbgsqjgs43gsqjgs4Eg4LK44LKV4LON4LKw4LK/4LKv4LKX
4LOK4LKz4LK/4LK44LKs4LOH4LKV4LOGIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2tvLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL2tvLnBv
CmluZGV4IDQxYWY3ZDYuLjBhNzVkMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9rby5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8va28u
cG8KQEAgLTE3MjYsMTYgKzE3MjYsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlh
IHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0
L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJF
bmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIlhTUyDqsoDsgqwg6riw64qlIOyCrOyaqSIKLQot
IzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5Mgot
IywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
RE9NIOu2meyXrOuEo+q4sOulvCDsgqzsmqntlaDsp4Ag7Jes67aAIgotCiAjOiAuLi8uLi8uLi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJs
ZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9sdC5wbwppbmRleCBlNDdjM2M3Li5iYWFjZTJkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbHQucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL2x0LnBvCkBAIC0xNzQ4LDE2ICsxNzQ4LDYgQEAgbXNnc3RyICIiCiBtc2dp
ZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6
IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMs
IGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICLErmp1bmd0aSBYU1Mg
YXVkaXRhdmltxIUiCi0KLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNl
dHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNo
YWRlcnMiCi1tc2dzdHIgIkFyIMSvanVuZ3RpIERPTSDEr2TEl2ppbcSFIgotCiAjOiAuLi8uLi8u
Li9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVu
YWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9sdi5wbyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9wby9sdi5wbwppbmRleCAxM2FlNjdkLi4zNGNhYjE3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbHYucG8KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL3BvL2x2LnBvCkBAIC0xNzM1LDE1ICsxNzM1LDYgQEAgbXNnc3RyICIiCiBt
c2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAK
LSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEK
LSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJBa3Rpdml6xJN0
IHNrcmlwdHVzIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dz
dHIgIiIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNn
c3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbWwucG8g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbWwucG8KaW5kZXggZTZiZjhjMC4uNTI4
Y2YzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL21sLnBvCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9tbC5wbwpAQCAtMTcxNCwxNCArMTcx
NCw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlu
bGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3Ry
ICIiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi
IgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dz
dHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9tci5wbyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9tci5wbwppbmRleCBhNDQxZDQ3Li5mNGQ5
ZjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbXIucG8KKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL21yLnBvCkBAIC0xNzQwLDE0ICsxNzQw
LDYgQEAgbXNnc3RyICLgpK7gpL/gpKHgpYDgpK/gpL4g4KSq4KWN4KSy4KWH4KSs4KWF4KSVIOCk
h+CkguCksuCkvuCkh+CkqCDgpLjgpY3gpLXgpYAKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXli
YWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIgIuCkruCkv+CkoeClgOCkr+CkviDgpKrgpY3gpLLg
pYfgpKzgpYXgpJUg4KSH4KSC4KSy4KS+4KSH4KSoIOCkuOCljeCkteClgOCkleCkvuCksOCkvuCk
r+CkmuClhyIKIAotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0
dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAiQ1NTIOCk
tuClh+CkoeCksOCljeCkuOCljSDgpLjgpYHgpLDgpYIg4KSV4KSw4KS+IgotCi0jOiAuLi8uLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi1tc2dpZCAi
V2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgImNzcyDgpLbgpYfgpKHgpLDg
pY3gpLjgpY0g4KS44KWB4KSw4KWCIOCkleCksOCkvuCkr+CkmuClhyIKLQogIzogLi4vLi4vLi4v
Li4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJF
bmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICLgpIXgpLjgpYHgpLDg
pJXgpY3gpLfgpYDgpKQg4KSF4KSC4KSk4KSw4KWN4KSt4KWB4KSkIOCkruCkvuCkueCkv+CkpOCl
gCDgpKbgpL7gpJbgpLXgpKPgpYcg4KS44KSu4KSw4KWN4KSl4KWA4KSkIOCkleCksOCkviIKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9uYi5wbyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9uYi5wbwppbmRleCA2MmExNGVmLi5iZDgzNzQwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbmIucG8KKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL25iLnBvCkBAIC0xNzMxLDE2ICsxNzMxLDYgQEAgbXNn
c3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNn
c3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJT
bMOlIHDDpSBKYXZhU2NyaXB0IgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxl
IGNzcyBzaGFkZXJzIgotbXNnc3RyICJPbSBiYWtncnVubmVuIHNrYWwgc2tyaXZlcyB1dCIKLQog
IzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcK
IG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIiCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbmwucG8gYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vbmwucG8KaW5kZXggMTYxMTMyYi4uZmYxOGFmZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL25sLnBvCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9ubC5wbwpAQCAtMTczNSwxNCArMTczNSw2IEBAIG1z
Z3N0ciAiSW5saW5lIG1lZGlhIGFmc3BlbGVuIHRvZWdlc3RhYW4iCiBtc2dpZCAiV2hldGhlciBt
ZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICJPZiBoZXQgaW5saW5lIGFmc3Bl
bGVuIHZhbiBtZWRpYSBpcyB0b2VnZXN0YWFuIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3Rr
L3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwMwotbXNnaWQgIkVuYWJsZSBDU1Mgc2hh
ZGVycyIKLW1zZ3N0ciAiQ1NTLXNoYWRlcnMgaW5zY2hha2VsZW4iCi0KLSM6IC4uLy4uLy4uLy4u
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA0Ci1tc2dpZCAiV2hl
dGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIk9mIENTUy1zaGFkZXJzIG1vZXRl
biB3b3JkZW4gaW5nZXNjaGFrZWxkIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAxOQogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGlu
c2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIldlZXJnYXZlIHZhbiBvbnZlaWxpZ2UgaW5ob3VkIGlu
c2NoYWtlbGVuIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL29y
LnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL29yLnBvCmluZGV4IDQwNGFiYjcu
LjhmMGE1MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9vci5w
bworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vb3IucG8KQEAgLTE3MjYsMTQg
KzE3MjYsNiBAQCBtc2dzdHIgIuCsruCsv+CsoeCsv+CshiDgrKrgrY3grLLgrYfgrKzgrYfgrJXg
rY0g4KyH4Kyo4Kyy4Ky+4KyH4Kyo4Kyw4K2HIOCsheCsqAogbXNnaWQgIldoZXRoZXIgbWVkaWEg
cGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAi4Kyu4Ky/4Kyh4Ky/4KyGIOCsquCtjeCs
suCth+CsrOCth+CsleCtjSDgrIfgrKjgrLLgrL7grIfgrKjgrLDgrYcg4KyF4Kyo4K2B4Kyu4Kyk
4Ky/IOCspuCth+Csh+CspeCsvuCsjyDgrJXgrL8iCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNo
YWRlcnMiCi1tc2dzdHIgIkNTUyDgrLjgrYfgrKHgrLDgrJXgrYEg4Ky44KyV4K2N4Kyw4Ky/4K2f
IOCsleCssOCsqOCtjeCspOCtgSIKLQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBz
aGFkZXJzIgotbXNnc3RyICJjc3Mg4Ky44K2H4Kyh4Kyw4KyV4K2BIOCsuOCsleCtjeCssOCsv+Ct
nyDgrJXgrLDgrL/grKzgrL4g4KyJ4Kya4Ky/4KykIOCsleCsvyIKLQogIzogLi4vLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFi
bGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICLgrIXgrLjgrYHgrLDgrJXg
rY3grLfgrL/grKQg4Kys4Ky/4Ky34K2f4Kys4Ky44K2N4Kyk4K2B4KywIOCsquCtjeCssOCspuCs
sOCtjeCstuCsqOCsleCtgSDgrLjgrJXgrY3grLDgrL/grZ8g4KyV4Kyw4Kyo4K2N4Kyk4K2BIgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3BhLnBvIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3BhLnBvCmluZGV4IDllZTQwZTAuLjVjMzIzNjIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wYS5wbworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcGEucG8KQEAgLTE3MzYsMTYgKzE3MzYsNiBAQCBt
c2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBt
c2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGlu
Z3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIg
IuCouOColeCpjeCosOCov+CoquCon+CovuCogiDgqK/gqYvgqJciCi0KLSM6IC4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dp
ZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIuColeCpgCDgqKzgqYjg
qJXgqJfgqLDgqL7gqIrgqILgqKEg4Kia4Ki/4Kmx4Kik4Kiw4Ki+4KiCIOCoqOCpguCpsCDgqJvg
qL7gqKrgqKPgqL4g4Ki54KmI4KWkIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2Vj
dXJlIGNvbnRlbnQiCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9wbC5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wbC5wbwpp
bmRleCBjMzk4Y2ZmLi41YmMxNWU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ndGsvcG8vcGwucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3BsLnBv
CkBAIC0xNzY0LDE0ICsxNzY0LDYgQEAgbXNnc3RyICJPZHR3YXJ6YW5pZSBtdWx0aW1lZGnDs3cg
emV6d2FsYSBuYSB3c3Rhd2lhbmllIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxs
b3dzIGlubGluZSIKIG1zZ3N0ciAiT2tyZcWbbGEsIGN6eSBvZHR3YXJ6YW5pZSBtdWx0aW1lZGnD
s3cgemV6d2FsYSBuYSB3c3Rhd2lhbmllIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJz
IgotbXNnc3RyICJXxYLEhWN6ZW5pZSBjaWVuaW93YW5pYSBDU1MiCi0KLSM6IC4uLy4uLy4uLy4u
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0
aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiT2tyZcWbbGEsIGN6eSB3xYLEhWN6
YcSHIGNpZW5pb3dhbmllIENTUyIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNl
Y3VyZSBjb250ZW50IgogbXNnc3RyICJXxYLEhWN6ZW5pZSB3ecWbd2lldGxhbmlhIG5pZWJlenBp
ZWN6bmVqIHRyZcWbY2kiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vcHQucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcHQucG8KaW5kZXggMzNk
OWM3Yi4uMDg1MjQ3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3Bv
L3B0LnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9wdC5wbwpAQCAtMTc0
NSwxNiArMTc0NSw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sg
YWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtp
dC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mg
c2hhZGVycyIKLW1zZ3N0ciAiQWN0aXZhciBBdWRpdG9yIFhTUyIKLQotIzogLi4vLi4vLi4vV2Vi
S2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lk
ICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiU2UgZGV2ZSBzZXIgYWN0
aXZhZG8gbyBjb2xhciBET00iCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUg
Y29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL3BvL3B0X0JSLnBvIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3B0X0JSLnBv
CmluZGV4IDE4NzBjZDcuLjM5NTIwNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9wby9wdF9CUi5wbworKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
cHRfQlIucG8KQEAgLTE3MzIsMTQgKzE3MzIsNiBAQCBtc2dzdHIgIlBlcm1pdGlyIHJlcHJvZHXD
p8OjbyBkZSBtw61kaWEgc2VyIGVtYnV0aWRhIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJh
Y2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAiU2UgYSByZXByb2R1w6fDo28gZGUgbcOtZGlhIGRl
dmUgcGVybWl0aXIsIG91IG7Do28sIHNlciBlbWJ1dGlkYSIKIAotIzogLi4vLi4vLi4vLi4vV2Vi
S2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMDMKLW1zZ2lkICJFbmFibGUg
Q1NTIHNoYWRlcnMiCi1tc2dzdHIgIkhhYmlsaXRhciBzb21icmVhZG9yZXMgQ1NTIgotCi0jOiAu
Li8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNAot
bXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJTZSBzb21icmVh
bWVudG8gQ1NTIGRldmUgb3UgbsOjbyBzZXIgaGFiaWxpdGFkbyIKLQogIzogLi4vLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEwMTkKIG1zZ2lkICJFbmFi
bGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICJIYWJpbGl0YXIgZXhpYmnD
p8OjbyBkZSBjb250ZcO6ZG8gaW5zZWd1cm8iCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvcG8vcm8ucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vcm8u
cG8KaW5kZXggOWQ4MzgxMS4uMTMyYjk5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL3BvL3JvLnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9y
by5wbwpAQCAtMTcxNywxNCArMTcxNyw2IEBAIG1zZ3N0ciAiUmVkYXJlYSBtdWx0aW1lZGlhIGVz
dGUgw65uZ2xvYmF0xIMiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5s
aW5lIgogbXNnc3RyICJTcGVjaWZpY8SDIGRhY8SDIHJlZGFyZWEgbXVsdGltZWRpYSBzZSBmYWNl
IMOubiBjYWRydWwgcGFnaW5paSIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Vi
a2l0d2Vic2V0dGluZ3MuY3BwOjk5MQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0
ciAiQWN0aXZlYXrEgyBmaWx0cmVsZSBwZXJzb25hbGl6YXRlIENTUyIKLQotIzogLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRo
ZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICJTcGVjaWZpY8SDIGRhY8SDIHNlIGFj
dGl2ZWF6xIMgZmlsdHJlbGUgcGVyc29uYWxpemF0ZSBDU1MgKHNoYWRlcnMpIgotCiAjOiAuLi8u
Li8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6MTAwNwogbXNnaWQg
IkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dzdHIgIkFjdGl2ZWF6xIMg
YWZpyJlhcmVhIGNvbsibaW51dHVsdWkgbmVzaWd1ciIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9ydS5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9w
by9ydS5wbwppbmRleCBiZjQ0MjQ2Li5jNDgwNmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vcnUucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L3BvL3J1LnBvCkBAIC0xNzM0LDE2ICsxNzM0LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhl
ciBtZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4u
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1t
c2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICLQktGL0L/QvtC70L3Rj9GC0Ywg0YHR
htC10L3QsNGA0LjQuCIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vi
c2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mg
c2hhZGVycyIKLW1zZ3N0ciAi0JTQvtC70LbQvdGLINC70Lgg0LHRi9GC0Ywg0LLRi9Cy0LXQtNC1
0L3RiyDQvdCwINC/0LXRh9Cw0YLRjCDRhNC+0L3QvtCy0YvQtSDQuNC30L7QsdGA0LDQttC10L3Q
uNGPLiIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Mu
Y3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNn
c3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc2wucG8g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc2wucG8KaW5kZXggN2I3YjY4Mi4uOTQx
NjBkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3NsLnBvCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zbC5wbwpAQCAtMTc1MywxNCArMTc1
Myw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlu
bGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi1tc2dpZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3Ry
ICJPbW9nb8SNaSBzZW7EjWlsbmlrZSBDU1MiCi0KLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJs
ZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAiQWxpIG5haiBib2RvIHNlbsSNaWxuaWtpIENTUyBvbW9n
b8SNZW5pIgotCiAjOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQi
CiBtc2dzdHIgIk9tb2dvxI1pIHByaWtheiB2c2ViaW4sIGtpIG5pc28gdmFybmUiCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vc3IucG8gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvcG8vc3IucG8KaW5kZXggMGUyOWZiNy4uMzNlNWJmMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3NyLnBvCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9wby9zci5wbwpAQCAtMTc0MSwxNiArMTc0MSw2IEBAIG1zZ3N0ciAi
IgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxsb3dzIGlubGluZSIKIG1zZ3N0ciAi
IgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6
OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hhZGVycyIKLW1zZ3N0ciAi0J7QvNC+
0LPRg9Gb0Lgg0JjQutGB0KHQoSDRgNC10LLQuNC30LjRmNGDIgotCi0jOiAuLi8uLi8uLi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQg
IldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJzIgotbXNnc3RyICLQntC00YDQtdGS0YPRmNC1
INC00LAg0LvQuCDRmNC1INC+0LzQvtCz0YPRm9C10L3QviDQlNCe0Jwg0YPQsdCw0YbQuNCy0LDR
mtC1IgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5j
cHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBtc2dz
dHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zckBsYXRp
bi5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zckBsYXRpbi5wbwppbmRleCBh
NjBhZDUzLi5mMmEyNTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
cG8vc3JAbGF0aW4ucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3NyQGxh
dGluLnBvCkBAIC0xNzQyLDE2ICsxNzQyLDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBt
ZWRpYSBwbGF5YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dl
YktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dp
ZCAiRW5hYmxlIENTUyBzaGFkZXJzIgotbXNnc3RyICJPbW9ndcSHaSBJa3NTUyByZXZpemlqdSIK
LQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5
MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0
ciAiT2RyZcSRdWplIGRhIGxpIGplIG9tb2d1xIdlbm8gRE9NIHViYWNpdmFuamUiCi0KICM6IC4u
Ly4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBtc2dp
ZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAiIgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3N2LnBvIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL3BvL3N2LnBvCmluZGV4IDg2YWM4MGIuLjI5OTRiYjUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby9zdi5wbworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvcG8vc3YucG8KQEAgLTE3NDAsMTYgKzE3NDAsNiBAQCBtc2dzdHIg
IiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBpbmxpbmUiCiBtc2dzdHIg
IiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3Bw
Ojk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkFrdGl2
ZXJhIHNrcmlwdCIKLQotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0
dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1zZ2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hh
ZGVycyIKLW1zZ3N0ciAiSHVydXZpZGEgYmFrZ3J1bmRzYmlsZGVyIHNrYSBza3JpdmFzIHV0LiIK
LQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjEw
MDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50IgogbXNnc3RyICIi
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdGEucG8gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdGEucG8KaW5kZXggOTg4ZTExZC4uYjhmNzdjNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3RhLnBvCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby90YS5wbwpAQCAtMTcxMywxNCArMTcxMyw2IEBA
IG1zZ3N0ciAi4K6H4K6p4K+N4K6y4K+I4K6p4K6/4K6y4K+NIOCuruCvgOCun+Cuv+Cur+CuvuCu
teCviCDgrofgrq/grpXgr43grpUg4K6uCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBh
bGxvd3MgaW5saW5lIgogbXNnc3RyICLgrofgrqngr43grrLgr4jgrqngrr/grrLgr40g4K6u4K+A
4K6f4K6/4K6v4K6+4K614K+IIOCuh+Cur+CuleCvjeCulSDgrq7gr4Hgrp/grr/grq/gr4Hgrq7g
rr4iCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1tc2dzdHIgIkNTUyDgrrfgr4fg
rp/grrDgr43grpXgrrPgr4gg4K6a4K+G4K6v4K6y4K+N4K6q4K6f4K+B4K6k4K+N4K6kIOCuteCv
h+Cuo+CvjeCun+CvgeCuruCuviIKLQotIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBz
aGFkZXJzIgotbXNnc3RyICJjc3Mg4K634K+H4K6f4K6w4K+N4K6V4K6z4K+IIOCumuCvhuCur+Cu
suCvjeCuquCun+CvgeCupOCvjeCupCDgrrXgr4fgrqPgr43grp/gr4Hgrq7grr4iCi0KICM6IC4u
Ly4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoxMDA3CiBt
c2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVudCIKIG1zZ3N0ciAi4K6q4K6+
4K6k4K+B4K6V4K6+4K6q4K+N4K6q4K6x4K+N4K6xIOCuieCus+CvjeCus+Cun+CuleCvjeCuleCu
pOCvjeCupOCviOCuleCvjSDgrpXgrr7grp/gr43grprgrr/grqrgr43grqrgrp/gr4HgrqTgr43g
rqTgr4HgrrXgrqTgr4jgrprgr40g4K6a4K+G4K6v4K6y4K+N4K6q4K6f4K+B4K6k4K+N4K6k4K+B
IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3RlLnBvIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3RlLnBvCmluZGV4IGYzZTJlODcuLjFhNWZjNTUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby90ZS5wbworKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdGUucG8KQEAgLTE3MTcsMTQgKzE3MTcsNiBA
QCBtc2dzdHIgIuCwruCwvuCwp+CxjeCwr+CwriDgsKrgsY3gsLLgsYfgsKzgsL7gsJXgsY0g4LCv
4LC/4LCo4LGN4oCM4LCy4LGI4LCo4LGNCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5YmFjayBh
bGxvd3MgaW5saW5lIgogbXNnc3RyICLgsK7gsL7gsKfgsY3gsK/gsK4g4LCq4LGN4LCy4LGH4LCs
4LGN4LCv4LC+4LCV4LGNIOCwr+Cwv+CwqOCxjeKAjOCwsuCxiOCwqOCxjSDgsIXgsKjgsYHgsK7g
sKTgsL/gsILgsJrgsL7gsLLgsL4iCiAKLSM6IC4uLy4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0
L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMiCi1t
c2dzdHIgIkNTUyDgsLfgsYfgsKHgsLDgsY3gsLjgsY0g4LCa4LGH4LCk4LCo4LCC4LCa4LGH4LCv
4LC/IgotCi0jOiAuLi8uLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5n
cy5jcHA6OTkyCi1tc2dpZCAiV2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIg
ImNzcyDgsLfgsYfgsKHgsLDgsY3gsLjgsY0g4LCa4LGH4LCk4LCo4LCCIOCwmuCxh+Cwr+CwvuCw
suCwviIKLQogIzogLi4vLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGlu
Z3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50Igog
bXNnc3RyICLgsLjgsYHgsLDgsJXgsY3gsLfgsL/gsKTgsIIg4LCV4LC+4LCo4LC/IOCwteCwv+Cw
t+CwryDgsKrgsY3gsLDgsKbgsLDgsY3gsLbgsKjgsKjgsYEg4LCa4LGH4LCk4LCo4LCC4LCa4LGH
4LCv4LC/IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3VrLnBv
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3VrLnBvCmluZGV4IDFhNmY4ODEuLjFm
NzI4ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby91ay5wbwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdWsucG8KQEAgLTE3MzcsMTYgKzE3
MzcsNiBAQCBtc2dzdHIgIiIKIG1zZ2lkICJXaGV0aGVyIG1lZGlhIHBsYXliYWNrIGFsbG93cyBp
bmxpbmUiCiBtc2dzdHIgIiIKIAotIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vic2V0dGluZ3MuY3BwOjk5MQotIywgZnV6enkKLW1zZ2lkICJFbmFibGUgQ1NTIHNoYWRlcnMi
Ci1tc2dzdHIgItCj0LLRltC80LrQvdGD0YLQuCDRltC90YHRgtGA0YPQvNC10L3RgiDQv9C10YDQ
tdCy0ZbRgNC60LggWFNTIgotCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3
ZWJzZXR0aW5ncy5jcHA6OTkyCi0jLCBmdXp6eQotbXNnaWQgIldoZXRoZXIgdG8gZW5hYmxlIGNz
cyBzaGFkZXJzIgotbXNnc3RyICLQp9C4INGB0LvRltC0INCy0LzQuNC60LDRgtC4INCy0YHRgtCw
0LLQutGDIERPTSIKLQogIzogLi4vLi4vLi4vV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0
dGluZ3MuY3BwOjEwMDcKIG1zZ2lkICJFbmFibGUgZGlzcGxheSBvZiBpbnNlY3VyZSBjb250ZW50
IgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
dmkucG8gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8vdmkucG8KaW5kZXggYzZkOTZi
My4uOWRmYzc2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3Zp
LnBvCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby92aS5wbwpAQCAtMTczMywx
NiArMTczMyw2IEBAIG1zZ3N0ciAiIgogbXNnaWQgIldoZXRoZXIgbWVkaWEgcGxheWJhY2sgYWxs
b3dzIGlubGluZSIKIG1zZ3N0ciAiIgogCi0jOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJzZXR0aW5ncy5jcHA6OTkxCi0jLCBmdXp6eQotbXNnaWQgIkVuYWJsZSBDU1Mgc2hh
ZGVycyIKLW1zZ3N0ciAiQuG6rXQga2nhu4NtIHRyYSBYU1MiCi0KLSM6IC4uLy4uLy4uL1dlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTIKLSMsIGZ1enp5Ci1tc2dpZCAi
V2hldGhlciB0byBlbmFibGUgY3NzIHNoYWRlcnMiCi1tc2dzdHIgIkPDsyBjaG8gZMOhbiBET00g
a2jDtG5nIgotCiAjOiAuLi8uLi8uLi9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5n
cy5jcHA6MTAwNwogbXNnaWQgIkVuYWJsZSBkaXNwbGF5IG9mIGluc2VjdXJlIGNvbnRlbnQiCiBt
c2dzdHIgIiIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby96aF9D
Ti5wbyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9wby96aF9DTi5wbwppbmRleCBiNjA3
MzE2Li5hM2U5YWEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvcG8v
emhfQ04ucG8KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL3BvL3poX0NOLnBvCkBA
IC0xNzM1LDE2ICsxNzM1LDYgQEAgbXNnc3RyICIiCiBtc2dpZCAiV2hldGhlciBtZWRpYSBwbGF5
YmFjayBhbGxvd3MgaW5saW5lIgogbXNnc3RyICIiCiAKLSM6IC4uLy4uLy4uL1dlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnNldHRpbmdzLmNwcDo5OTEKLSMsIGZ1enp5Ci1tc2dpZCAiRW5hYmxl
IENTUyBzaGFkZXJzIgotbXNnc3RyICLlkK/nlKggWFNTIOWuoeiuoSIKLQotIzogLi4vLi4vLi4v
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwOjk5MgotIywgZnV6enkKLW1z
Z2lkICJXaGV0aGVyIHRvIGVuYWJsZSBjc3Mgc2hhZGVycyIKLW1zZ3N0ciAi5piv5ZCm5ZCv55So
IERPTSDnspjotLQiCi0KICM6IC4uLy4uLy4uL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNl
dHRpbmdzLmNwcDoxMDA3CiBtc2dpZCAiRW5hYmxlIGRpc3BsYXkgb2YgaW5zZWN1cmUgY29udGVu
dCIKIG1zZ3N0ciAiIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpbHRl
ckVmZmVjdFJlbmRlcmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaWx0ZXJFZmZl
Y3RSZW5kZXJlci5jcHAKaW5kZXggNGFjZTU3ZS4uNmVlYWYyNSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL0ZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvRmlsdGVyRWZmZWN0UmVuZGVyZXIuY3BwCkBAIC00NSwxNyArNDUs
NiBAQAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgog
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0jaW5jbHVkZSAi
Q3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dC5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJh
dGlvbi5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW0uaCIKLSNpbmNsdWRlICJDdXN0
b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAiRkVDdXN0b21GaWx0ZXIuaCIK
LSNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5oIgotI2luY2x1ZGUgIlJlbmRlclZpZXcuaCIK
LSNpbmNsdWRlICJWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNlbmRpZgotCiAj
aWYgRU5BQkxFKFNWRykKICNpbmNsdWRlICJDYWNoZWRTVkdEb2N1bWVudC5oIgogI2luY2x1ZGUg
IkNhY2hlZFNWR0RvY3VtZW50UmVmZXJlbmNlLmgiCkBAIC04OSwyOCArNzgsOSBAQCBpbmxpbmUg
Ym9vbCBpc0ZpbHRlclNpemVWYWxpZChGbG9hdFJlY3QgcmVjdCkKICAgICByZXR1cm4gdHJ1ZTsK
IH0KIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotc3RhdGlj
IFBhc3NSZWZQdHI8RkVDdXN0b21GaWx0ZXI+IGNyZWF0ZUN1c3RvbUZpbHRlckVmZmVjdChGaWx0
ZXIqIGZpbHRlciwgRG9jdW1lbnQqIGRvY3VtZW50LCBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24qIG9wZXJhdGlvbikKLXsKLSAgICBpZiAoIWRvY3VtZW50KQotICAgICAgICByZXR1cm4g
MDsKLQotICAgIEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQqIGdsb2JhbENvbnRleHQgPSBkb2N1
bWVudC0+cmVuZGVyVmlldygpLT5jdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0KCk7Ci0gICAgZ2xv
YmFsQ29udGV4dC0+cHJlcGFyZUNvbnRleHRJZk5lZWRlZChkb2N1bWVudC0+dmlldygpLT5ob3N0
V2luZG93KCksIGRvY3VtZW50LT5mcmFtZSgpLT5zZXR0aW5ncygpLmZvcmNlU29mdHdhcmVXZWJH
TFJlbmRlcmluZygpKTsKLSAgICBpZiAoIWdsb2JhbENvbnRleHQtPmNvbnRleHQoKSkKLSAgICAg
ICAgcmV0dXJuIDA7Ci0KLSAgICByZXR1cm4gRkVDdXN0b21GaWx0ZXI6OmNyZWF0ZShmaWx0ZXIs
IGdsb2JhbENvbnRleHQtPmNvbnRleHQoKSwgb3BlcmF0aW9uLT52YWxpZGF0ZWRQcm9ncmFtKCks
IG9wZXJhdGlvbi0+cGFyYW1ldGVycygpLAotICAgICAgICBvcGVyYXRpb24tPm1lc2hSb3dzKCks
IG9wZXJhdGlvbi0+bWVzaENvbHVtbnMoKSwgIG9wZXJhdGlvbi0+bWVzaFR5cGUoKSk7Ci19Ci0j
ZW5kaWYKLQogRmlsdGVyRWZmZWN0UmVuZGVyZXI6OkZpbHRlckVmZmVjdFJlbmRlcmVyKCkKICAg
ICA6IG1fZ3JhcGhpY3NCdWZmZXJBdHRhY2hlZChmYWxzZSkKICAgICAsIG1faGFzRmlsdGVyVGhh
dE1vdmVzUGl4ZWxzKGZhbHNlKQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAsIG1faGFz
Q3VzdG9tU2hhZGVyRmlsdGVyKGZhbHNlKQotI2VuZGlmCiB7CiAgICAgc2V0RmlsdGVyUmVzb2x1
dGlvbihGbG9hdFNpemUoMSwgMSkpOwogICAgIG1fc291cmNlR3JhcGhpYyA9IFNvdXJjZUdyYXBo
aWM6OmNyZWF0ZSh0aGlzKTsKQEAgLTE4MSwxNyArMTUxLDExIEBAIFBhc3NSZWZQdHI8RmlsdGVy
RWZmZWN0PiBGaWx0ZXJFZmZlY3RSZW5kZXJlcjo6YnVpbGRSZWZlcmVuY2VGaWx0ZXIoUmVuZGVy
RWxlbWVuCiAKIGJvb2wgRmlsdGVyRWZmZWN0UmVuZGVyZXI6OmJ1aWxkKFJlbmRlckVsZW1lbnQq
IHJlbmRlcmVyLCBjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiBvcGVyYXRpb25zLCBGaWx0ZXJDb25z
dW1lciBjb25zdW1lcikKIHsKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgbV9oYXNDdXN0
b21TaGFkZXJGaWx0ZXIgPSBmYWxzZTsKLSNlbmRpZgogICAgIG1faGFzRmlsdGVyVGhhdE1vdmVz
UGl4ZWxzID0gb3BlcmF0aW9ucy5oYXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHMoKTsKICAgICBpZiAo
bV9oYXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHMpCiAgICAgICAgIG1fb3V0c2V0cyA9IG9wZXJhdGlv
bnMub3V0c2V0cygpOwotICAgIAotICAgIC8vIEtlZXAgdGhlIG9sZCBlZmZlY3RzIG9uIHRoZSBz
dGFjayB1bnRpbCB3ZSd2ZSBjcmVhdGVkIHRoZSBuZXcgZWZmZWN0cy4KLSAgICAvLyBOZXcgRkVD
dXN0b21GaWx0ZXJzIGNhbiByZXVzZSBjYWNoZWQgcmVzb3VyY2VzIGZyb20gb2xkIEZFQ3VzdG9t
RmlsdGVycy4KLSAgICBGaWx0ZXJFZmZlY3RMaXN0IG9sZEVmZmVjdHM7Ci0gICAgbV9lZmZlY3Rz
LnN3YXAob2xkRWZmZWN0cyk7CisKKyAgICBtX2VmZmVjdHMuY2xlYXIoKTsKIAogICAgIFJlZlB0
cjxGaWx0ZXJFZmZlY3Q+IHByZXZpb3VzRWZmZWN0ID0gbV9zb3VyY2VHcmFwaGljOwogICAgIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgb3BlcmF0aW9ucy5vcGVyYXRpb25zKCkuc2l6ZSgpOyArK2kp
IHsKQEAgLTMzNSwyMSArMjk5LDYgQEAgYm9vbCBGaWx0ZXJFZmZlY3RSZW5kZXJlcjo6YnVpbGQo
UmVuZGVyRWxlbWVudCogcmVuZGVyZXIsIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRyb3BTaGFkb3dPcGVyYXRp
b24tPngoKSwgZHJvcFNoYWRvd09wZXJhdGlvbi0+eSgpLCBkcm9wU2hhZG93T3BlcmF0aW9uLT5j
b2xvcigpLCAxKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0jaWYgRU5BQkxFKENT
U19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJQ1MpCi0gICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0
aW9uOjpDVVNUT006Ci0gICAgICAgICAgICAvLyBDVVNUT00gb3BlcmF0aW9ucyBhcmUgYWx3YXlz
IGNvbnZlcnRlZCB0byBWQUxJREFURURfQ1VTVE9NIGJlZm9yZSBnZXR0aW5nIGhlcmUuCi0gICAg
ICAgICAgICAvLyBUaGUgY29udmVyc2lvbiBoYXBwZW5zIGluIFJlbmRlckxheWVyOjpjb21wdXRl
RmlsdGVyT3BlcmF0aW9ucy4KLSAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAg
ICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURf
Q1VTVE9NOiB7Ci0gICAgICAgICAgICBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1
c3RvbUZpbHRlck9wZXJhdGlvbiA9IHN0YXRpY19jYXN0PFZhbGlkYXRlZEN1c3RvbUZpbHRlck9w
ZXJhdGlvbio+KGZpbHRlck9wZXJhdGlvbik7Ci0gICAgICAgICAgICBEb2N1bWVudCogZG9jdW1l
bnQgPSByZW5kZXJlciA/ICZyZW5kZXJlci0+ZG9jdW1lbnQoKSA6IDA7Ci0gICAgICAgICAgICBl
ZmZlY3QgPSBjcmVhdGVDdXN0b21GaWx0ZXJFZmZlY3QodGhpcywgZG9jdW1lbnQsIGN1c3RvbUZp
bHRlck9wZXJhdGlvbik7Ci0gICAgICAgICAgICBpZiAoZWZmZWN0KQotICAgICAgICAgICAgICAg
IG1faGFzQ3VzdG9tU2hhZGVyRmlsdGVyID0gdHJ1ZTsKLSAgICAgICAgICAgIGJyZWFrOwotICAg
ICAgICB9Ci0jZW5kaWYKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICB9CkBAIC00MTgsMTMgKzM2Nyw2IEBAIHZvaWQgRmlsdGVyRWZmZWN0UmVuZGVyZXI6OmFw
cGx5KCkKIAogTGF5b3V0UmVjdCBGaWx0ZXJFZmZlY3RSZW5kZXJlcjo6Y29tcHV0ZVNvdXJjZUlt
YWdlUmVjdEZvckRpcnR5UmVjdChjb25zdCBMYXlvdXRSZWN0JiBmaWx0ZXJCb3hSZWN0LCBjb25z
dCBMYXlvdXRSZWN0JiBkaXJ0eVJlY3QpCiB7Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAg
IGlmIChoYXNDdXN0b21TaGFkZXJGaWx0ZXIoKSkgewotICAgICAgICAvLyBXaGVuIHdlIGhhdmUg
YXQgbGVhc3QgYSBjdXN0b20gc2hhZGVyIGluIHRoZSBjaGFpbiwgd2UgbmVlZCB0byBjb21wdXRl
IHRoZSB3aG9sZSBzb3VyY2UgaW1hZ2UsIGJlY2F1c2UgdGhlIHNoYWRlciBjYW4KLSAgICAgICAg
Ly8gcmVmZXJlbmNlIGFueSBwaXhlbCBhbmQgd2UgY2Fubm90IGNvbnRyb2wgdGhhdC4KLSAgICAg
ICAgcmV0dXJuIGZpbHRlckJveFJlY3Q7Ci0gICAgfQotI2VuZGlmCiAgICAgLy8gVGhlIHJlc3Vs
dCBvZiB0aGlzIGZ1bmN0aW9uIGlzIHRoZSBhcmVhIGluIHRoZSAiZmlsdGVyQm94UmVjdCIgdGhh
dCBuZWVkcyB0byBiZSByZXBhaW50ZWQsIHNvIHRoYXQgd2UgZnVsbHkgY292ZXIgdGhlICJkaXJ0
eVJlY3QiLgogICAgIExheW91dFJlY3QgcmVjdEZvclJlcGFpbnQgPSBkaXJ0eVJlY3Q7CiAgICAg
aWYgKGhhc0ZpbHRlclRoYXRNb3Zlc1BpeGVscygpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvRmlsdGVyRWZmZWN0UmVuZGVyZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5oCmluZGV4IDdjYTI3NTkuLjlkODhmYTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaWx0ZXJFZmZlY3RSZW5kZXJlci5oCkBA
IC00NCw4ICs0NCw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgQ2FjaGVkU2hh
ZGVyOwotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3JhbTsKIGNsYXNzIERvY3VtZW50OwogY2xhc3Mg
R3JhcGhpY3NDb250ZXh0OwogY2xhc3MgUmVuZGVyRWxlbWVudDsKQEAgLTEyMSwxMCArMTE5LDYg
QEAgcHVibGljOgogICAgIGJvb2wgaGFzRmlsdGVyVGhhdE1vdmVzUGl4ZWxzKCkgY29uc3QgeyBy
ZXR1cm4gbV9oYXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHM7IH0KICAgICBMYXlvdXRSZWN0IGNvbXB1
dGVTb3VyY2VJbWFnZVJlY3RGb3JEaXJ0eVJlY3QoY29uc3QgTGF5b3V0UmVjdCYgZmlsdGVyQm94
UmVjdCwgY29uc3QgTGF5b3V0UmVjdCYgZGlydHlSZWN0KTsKIAotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICBib29sIGhhc0N1c3RvbVNoYWRlckZpbHRlcigpIGNvbnN0IHsgcmV0dXJuIG1f
aGFzQ3VzdG9tU2hhZGVyRmlsdGVyOyB9Ci0jZW5kaWYKLQogcHJpdmF0ZToKICAgICB2b2lkIHNl
dE1heEVmZmVjdFJlY3RzKGNvbnN0IEZsb2F0UmVjdCYgZWZmZWN0UmVjdCkKICAgICB7CkBAIC0x
NTQsOSArMTQ4LDYgQEAgcHJpdmF0ZToKIAogICAgIGJvb2wgbV9ncmFwaGljc0J1ZmZlckF0dGFj
aGVkOwogICAgIGJvb2wgbV9oYXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHM7Ci0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotICAgIGJvb2wgbV9oYXNDdXN0b21TaGFkZXJGaWx0ZXI7Ci0jZW5kaWYKIH07
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXIuY3BwCmluZGV4IGJhZTZkMzguLjkzYjhmYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckxheWVyLmNwcApAQCAtMTI2LDEzICsxMjYsNiBAQAogI2luY2x1ZGUgIlNWR05h
bWVzLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBI
SUNTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQuaCIKLSNpbmNsdWRlICJD
dXN0b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQ
cm9ncmFtLmgiCi0jaW5jbHVkZSAiVmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0j
ZW5kaWYKLQogI2RlZmluZSBNSU5fSU5URVJTRUNUX0ZPUl9SRVZFQUwgMzIKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewpAQCAtMTUxMiwxNiArMTUwNSw2IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnNldEZp
bHRlckJhY2tlbmROZWVkc1JlcGFpbnRpbmdJblJlY3QoY29uc3QgTGF5b3V0UmVjdCYgcmVjdCwK
ICAgICBGaWx0ZXJJbmZvJiBmaWx0ZXJJbmZvID0gRmlsdGVySW5mbzo6Z2V0KCp0aGlzKTsKICAg
ICBmaWx0ZXJJbmZvLmV4cGFuZERpcnR5U291cmNlUmVjdChyZWN0Rm9yUmVwYWludCk7CiAgICAg
Ci0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIEFTU0VSVChmaWx0ZXJJbmZvLnJlbmRlcmVy
KCkpOwotICAgIGlmIChmaWx0ZXJJbmZvLnJlbmRlcmVyKCktPmhhc0N1c3RvbVNoYWRlckZpbHRl
cigpKSB7Ci0gICAgICAgIC8vIElmIHdlIGhhdmUgYXQgbGVhc3Qgb25lIGN1c3RvbSBzaGFkZXIs
IHdlIG5lZWQgdG8gdXBkYXRlIHRoZSB3aG9sZSBib3VuZGluZyBib3ggb2YgdGhlIGxheWVyLCBi
ZWNhdXNlIHRoZQotICAgICAgICAvLyBzaGFkZXIgY2FuIGFkZHJlc3MgYW55IG91cHV0IHBpeGVs
LgotICAgICAgICAvLyBOb3RlOiBUaGlzIGlzIG9ubHkgZm9yIG91dHB1dCByZWN0LCBzbyB0aGVy
ZSdzIG5vIG5lZWQgdG8gZXhwYW5kIHRoZSBkaXJ0eSBzb3VyY2UgcmVjdC4KLSAgICAgICAgcmVj
dEZvclJlcGFpbnQudW5pdGUoY2FsY3VsYXRlTGF5ZXJCb3VuZHModGhpcykpOwotICAgIH0KLSNl
bmRpZgotICAgIAogICAgIFJlbmRlckxheWVyKiBwYXJlbnRMYXllciA9IGVuY2xvc2luZ0ZpbHRl
clJlcGFpbnRMYXllcigpOwogICAgIEFTU0VSVChwYXJlbnRMYXllcik7CiAgICAgRmxvYXRRdWFk
IHJlcGFpbnRRdWFkKHJlY3RGb3JSZXBhaW50KTsKQEAgLTY4MDgsNjggKzY3OTEsOCBAQCBQYXNz
UmVmPFJlbmRlclN0eWxlPiBSZW5kZXJMYXllcjo6Y3JlYXRlUmVmbGVjdGlvblN0eWxlKCkKICAg
ICByZXR1cm4gbmV3U3R5bGU7CiB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLWJvb2wg
UmVuZGVyTGF5ZXI6OmlzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCgpIGNvbnN0Ci17Ci0gICAgLy8g
V2Ugb25seSB3YW50IHRvIGVuYWJsZSBzaGFkZXJzIGlmIFdlYkdMIGlzIGFsc28gZW5hYmxlZCBv
biB0aGlzIHBsYXRmb3JtLgotICAgIGNvbnN0IFNldHRpbmdzJiBzZXR0aW5ncyA9IHJlbmRlcmVy
KCkuZnJhbWUoKS5zZXR0aW5ncygpOwotICAgIHJldHVybiBzZXR0aW5ncy5pc0NTU0N1c3RvbUZp
bHRlckVuYWJsZWQoKSAmJiBzZXR0aW5ncy53ZWJHTEVuYWJsZWQoKTsKLX0KLQotI2VuZGlmCi0K
ICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCiAKLUZpbHRlck9wZXJhdGlvbnMgUmVuZGVyTGF5ZXI6
OmNvbXB1dGVGaWx0ZXJPcGVyYXRpb25zKGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSkKLXsKLSNp
ZiAhRU5BQkxFKENTU19TSEFERVJTKQotICAgIHJldHVybiBzdHlsZS0+ZmlsdGVyKCk7Ci0jZWxz
ZQotICAgIGNvbnN0IEZpbHRlck9wZXJhdGlvbnMmIGZpbHRlcnMgPSBzdHlsZS0+ZmlsdGVyKCk7
Ci0gICAgaWYgKCFmaWx0ZXJzLmhhc0N1c3RvbUZpbHRlcigpKQotICAgICAgICByZXR1cm4gZmls
dGVyczsKLQotICAgIGlmICghaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKCkpIHsKLSAgICAgICAg
Ly8gQ1NTIEN1c3RvbSBmaWx0ZXJzIHNob3VsZCBub3QgcGFyc2UgYXQgYWxsIGluIHRoaXMgY2Fz
ZSwgYnV0IHRoZXJlIG1pZ2h0IGJlCi0gICAgICAgIC8vIHJlbWFpbmluZyBzdHlsZXMgdGhhdCB3
ZXJlIHBhcnNlZCB3aGVuIHRoZSBmbGFnIHdhcyBlbmFibGVkLiBSZXByb2R1Y2VzIGluIER1bXBS
ZW5kZXJUcmVlCi0gICAgICAgIC8vIGJlY2F1c2UgaXQgcmVzZXRzIHRoZSBmbGFnIHdoaWxlIHRo
ZSBwcmV2aW91cyB0ZXN0IGlzIHN0aWxsIGxvYWRlZC4KLSAgICAgICAgcmV0dXJuIEZpbHRlck9w
ZXJhdGlvbnMoKTsKLSAgICB9Ci0KLSAgICBGaWx0ZXJPcGVyYXRpb25zIG91dHB1dEZpbHRlcnM7
Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBmaWx0ZXJzLnNpemUoKTsgKytpKSB7Ci0gICAg
ICAgIFJlZlB0cjxGaWx0ZXJPcGVyYXRpb24+IGZpbHRlck9wZXJhdGlvbiA9IGZpbHRlcnMub3Bl
cmF0aW9ucygpLmF0KGkpOwotICAgICAgICBpZiAoZmlsdGVyT3BlcmF0aW9uLT50eXBlKCkgPT0g
RmlsdGVyT3BlcmF0aW9uOjpDVVNUT00pIHsKLSAgICAgICAgICAgIC8vIFdlIGhhdmUgdG8gd2Fp
dCB1bnRpbCB0aGUgcHJvZ3JhbSBvZiBDU1MgU2hhZGVycyBpcyBsb2FkZWQgYmVmb3JlIHNldHRp
bmcgaXQgb24gdGhlIGxheWVyLgotICAgICAgICAgICAgLy8gTm90ZSB0aGF0IHdlIHdpbGwgaGFu
ZGxlIHRoZSBsb2FkaW5nIG9mIHRoZSBzaGFkZXJzIGFuZCByZXBhaW50aW5nIG9mIHRoZSBsYXll
ciBpbiB1cGRhdGVPclJlbW92ZUZpbHRlckNsaWVudHMuCi0gICAgICAgICAgICBjb25zdCBDdXN0
b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbU9wZXJhdGlvbiA9IHN0YXRpY19jYXN0PGNvbnN0IEN1
c3RvbUZpbHRlck9wZXJhdGlvbio+KGZpbHRlck9wZXJhdGlvbi5nZXQoKSk7Ci0gICAgICAgICAg
ICBSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gcHJvZ3JhbSA9IGN1c3RvbU9wZXJhdGlvbi0+
cHJvZ3JhbSgpOwotICAgICAgICAgICAgaWYgKCFwcm9ncmFtLT5pc0xvYWRlZCgpKQotICAgICAg
ICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgICAgICBSZWZQdHI8Q3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbT4gdmFsaWRhdGVkUHJvZ3JhbSA9IHByb2dyYW0tPnZhbGlkYXRlZFByb2dy
YW0oKTsKLSAgICAgICAgICAgIGlmICghdmFsaWRhdGVkUHJvZ3JhbSkgewotICAgICAgICAgICAg
ICAgIC8vIExhemlseSBjcmVhdGUgYSB2YWxpZGF0ZWQgcHJvZ3JhbSBhbmQgc3RvcmUgaXQgb24g
dGhlIEN1c3RvbUZpbHRlclByb2dyYW0uCi0gICAgICAgICAgICAgICAgQ3VzdG9tRmlsdGVyR2xv
YmFsQ29udGV4dCogZ2xvYmFsQ29udGV4dCA9IHJlbmRlcmVyKCkudmlldygpLmN1c3RvbUZpbHRl
ckdsb2JhbENvbnRleHQoKTsKLSAgICAgICAgICAgICAgICB2YWxpZGF0ZWRQcm9ncmFtID0gQ3Vz
dG9tRmlsdGVyVmFsaWRhdGVkUHJvZ3JhbTo6Y3JlYXRlKGdsb2JhbENvbnRleHQsIHByb2dyYW0t
PnByb2dyYW1JbmZvKCkpOwotICAgICAgICAgICAgICAgIHByb2dyYW0tPnNldFZhbGlkYXRlZFBy
b2dyYW0odmFsaWRhdGVkUHJvZ3JhbSk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGlm
ICghdmFsaWRhdGVkUHJvZ3JhbS0+aXNJbml0aWFsaXplZCgpKQotICAgICAgICAgICAgICAgIGNv
bnRpbnVlOwotCi0gICAgICAgICAgICBSZWZQdHI8VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0
aW9uPiB2YWxpZGF0ZWRPcGVyYXRpb24gPSBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb246
OmNyZWF0ZSh2YWxpZGF0ZWRQcm9ncmFtLnJlbGVhc2UoKSwgCi0gICAgICAgICAgICAgICAgY3Vz
dG9tT3BlcmF0aW9uLT5wYXJhbWV0ZXJzKCksIGN1c3RvbU9wZXJhdGlvbi0+bWVzaFJvd3MoKSwg
Y3VzdG9tT3BlcmF0aW9uLT5tZXNoQ29sdW1ucygpLCBjdXN0b21PcGVyYXRpb24tPm1lc2hUeXBl
KCkpOwotICAgICAgICAgICAgb3V0cHV0RmlsdGVycy5vcGVyYXRpb25zKCkuYXBwZW5kKHZhbGlk
YXRlZE9wZXJhdGlvbi5yZWxlYXNlKCkpOwotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAg
IH0KLSAgICAgICAgb3V0cHV0RmlsdGVycy5vcGVyYXRpb25zKCkuYXBwZW5kKGZpbHRlck9wZXJh
dGlvbi5yZWxlYXNlKCkpOwotICAgIH0KLSAgICByZXR1cm4gb3V0cHV0RmlsdGVyczsKLSNlbmRp
ZgotfQotCiB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVPclJlbW92ZUZpbHRlckNsaWVudHMoKQog
ewogICAgIGlmICghaGFzRmlsdGVyKCkpIHsKQEAgLTY4NzcsMTMgKzY4MDAsNiBAQCB2b2lkIFJl
bmRlckxheWVyOjp1cGRhdGVPclJlbW92ZUZpbHRlckNsaWVudHMoKQogICAgICAgICByZXR1cm47
CiAgICAgfQogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGlmIChyZW5kZXJlcigpLnN0
eWxlKCkuZmlsdGVyKCkuaGFzQ3VzdG9tRmlsdGVyKCkpCi0gICAgICAgIEZpbHRlckluZm86Omdl
dCgqdGhpcykudXBkYXRlQ3VzdG9tRmlsdGVyQ2xpZW50cyhyZW5kZXJlcigpLnN0eWxlKCkuZmls
dGVyKCkpOwotICAgIGVsc2UgaWYgKEZpbHRlckluZm8qIGZpbHRlckluZm8gPSBGaWx0ZXJJbmZv
OjpnZXRJZkV4aXN0cygqdGhpcykpCi0gICAgICAgIGZpbHRlckluZm8tPnJlbW92ZUN1c3RvbUZp
bHRlckNsaWVudHMoKTsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFNWRykKICAgICBpZiAocmVuZGVy
ZXIoKS5zdHlsZSgpLmZpbHRlcigpLmhhc1JlZmVyZW5jZUZpbHRlcigpKQogICAgICAgICBGaWx0
ZXJJbmZvOjpnZXQoKnRoaXMpLnVwZGF0ZVJlZmVyZW5jZUZpbHRlckNsaWVudHMocmVuZGVyZXIo
KS5zdHlsZSgpLmZpbHRlcigpKTsKQEAgLTY4OTksNyArNjgxNSw3IEBAIHZvaWQgUmVuZGVyTGF5
ZXI6OnVwZGF0ZU9yUmVtb3ZlRmlsdGVyRWZmZWN0UmVuZGVyZXIoKQogICAgIC8vIG1vZGUgbWln
aHQgaGF2ZSBjaGFuZ2VkIGZvciB0aGlzIGxheWVyLgogICAgIGlmICghcGFpbnRzV2l0aEZpbHRl
cnMoKSkgewogICAgICAgICAvLyBEb24ndCBkZWxldGUgdGhlIHdob2xlIGZpbHRlciBpbmZvIGhl
cmUsIGJlY2F1c2Ugd2UgbWlnaHQgdXNlIGl0Ci0gICAgICAgIC8vIGZvciBsb2FkaW5nIENTUyBz
aGFkZXIgZmlsZXMuCisgICAgICAgIC8vIGZvciBsb2FkaW5nIFNWRyByZWZlcmVuY2UgZmlsdGVy
IGZpbGVzLgogICAgICAgICBpZiAoRmlsdGVySW5mbyogZmlsdGVySW5mbyA9IEZpbHRlckluZm86
OmdldElmRXhpc3RzKCp0aGlzKSkKICAgICAgICAgICAgIGZpbHRlckluZm8tPnNldFJlbmRlcmVy
KDApOwogCkBAIC02OTIzLDcgKzY4MzksNyBAQCB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVPclJl
bW92ZUZpbHRlckVmZmVjdFJlbmRlcmVyKCkKIAogICAgIC8vIElmIHRoZSBmaWx0ZXIgZmFpbHMg
dG8gYnVpbGQsIHJlbW92ZSBpdCBmcm9tIHRoZSBsYXllci4gSXQgd2lsbCBzdGlsbCBhdHRlbXB0
IHRvCiAgICAgLy8gZ28gdGhyb3VnaCByZWd1bGFyIHByb2Nlc3NpbmcgKGUuZy4gY29tcG9zaXRp
bmcpLCBidXQgbmV2ZXIgYXBwbHkgYW55dGhpbmcuCi0gICAgaWYgKCFmaWx0ZXJJbmZvLnJlbmRl
cmVyKCktPmJ1aWxkKCZyZW5kZXJlcigpLCBjb21wdXRlRmlsdGVyT3BlcmF0aW9ucygmcmVuZGVy
ZXIoKS5zdHlsZSgpKSwgRmlsdGVyUHJvcGVydHkpKQorICAgIGlmICghZmlsdGVySW5mby5yZW5k
ZXJlcigpLT5idWlsZCgmcmVuZGVyZXIoKSwgcmVuZGVyZXIoKS5zdHlsZSgpLmZpbHRlcigpLCBG
aWx0ZXJQcm9wZXJ0eSkpCiAgICAgICAgIGZpbHRlckluZm8uc2V0UmVuZGVyZXIoMCk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5oIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgKaW5kZXggZDYwNmQ5YS4uZTU5ZDRk
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgKQEAgLTgyOCwxMiArODI4
LDcgQEAgcHVibGljOgogICAgIGJvb2wgY29udGFpbnNEaXJ0eU92ZXJsYXlTY3JvbGxiYXJzKCkg
Y29uc3QgeyByZXR1cm4gbV9jb250YWluc0RpcnR5T3ZlcmxheVNjcm9sbGJhcnM7IH0KICAgICB2
b2lkIHNldENvbnRhaW5zRGlydHlPdmVybGF5U2Nyb2xsYmFycyhib29sIGRpcnR5U2Nyb2xsYmFy
cykgeyBtX2NvbnRhaW5zRGlydHlPdmVybGF5U2Nyb2xsYmFycyA9IGRpcnR5U2Nyb2xsYmFyczsg
fQogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGJvb2wgaXNDU1NDdXN0b21GaWx0ZXJF
bmFibGVkKCkgY29uc3Q7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKLSAgICBG
aWx0ZXJPcGVyYXRpb25zIGNvbXB1dGVGaWx0ZXJPcGVyYXRpb25zKGNvbnN0IFJlbmRlclN0eWxl
Kik7CiAgICAgYm9vbCBwYWludHNXaXRoRmlsdGVycygpIGNvbnN0OwogICAgIGJvb2wgcmVxdWly
ZXNGdWxsTGF5ZXJJbWFnZUZvckZpbHRlcnMoKSBjb25zdDsKICAgICBGaWx0ZXJFZmZlY3RSZW5k
ZXJlciogZmlsdGVyUmVuZGVyZXIoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKaW5kZXggM2ZhYzI3NS4uNTFmZDE0OSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKQEAgLTY1
LDkgKzY1LDYgQEAKIAogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICNpbmNsdWRlICJGaWx0ZXJF
ZmZlY3RSZW5kZXJlci5oIgotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJDdXN0
b21GaWx0ZXJPcGVyYXRpb24uaCIKLSNlbmRpZgogI2VuZGlmCiAKICNpZiBFTkFCTEUoV0VCR0wp
IHx8IEVOQUJMRShBQ0NFTEVSQVRFRF8yRF9DQU5WQVMpCkBAIC00MDcsNyArNDA0LDcgQEAgdm9p
ZCBSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZVRyYW5zZm9ybShjb25zdCBSZW5kZXJTdHlsZSog
c3R5bGUpCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQogdm9pZCBSZW5kZXJMYXllckJhY2tpbmc6
OnVwZGF0ZUZpbHRlcnMoY29uc3QgUmVuZGVyU3R5bGUqIHN0eWxlKQogewotICAgIG1fY2FuQ29t
cG9zaXRlRmlsdGVycyA9IG1fZ3JhcGhpY3NMYXllci0+c2V0RmlsdGVycyhvd25pbmdMYXllcigp
LmNvbXB1dGVGaWx0ZXJPcGVyYXRpb25zKHN0eWxlKSk7CisgICAgbV9jYW5Db21wb3NpdGVGaWx0
ZXJzID0gbV9ncmFwaGljc0xheWVyLT5zZXRGaWx0ZXJzKHN0eWxlLT5maWx0ZXIoKSk7CiB9CiAj
ZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVy
RmlsdGVySW5mby5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJGaWx0
ZXJJbmZvLmNwcAppbmRleCA5MGExZTUxLi4zMTI1ZWY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJGaWx0ZXJJbmZvLmNwcApAQCAtMzUsOCArMzUsNiBA
QAogCiAjaW5jbHVkZSAiQ2FjaGVkU1ZHRG9jdW1lbnQuaCIKICNpbmNsdWRlICJDYWNoZWRTVkdE
b2N1bWVudFJlZmVyZW5jZS5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlck9wZXJhdGlvbi5oIgot
I2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW0uaCIKICNpbmNsdWRlICJGaWx0ZXJFZmZlY3RS
ZW5kZXJlci5oIgogI2luY2x1ZGUgIlNWR0VsZW1lbnQuaCIKICNpbmNsdWRlICJTVkdGaWx0ZXIu
aCIKQEAgLTg1LDkgKzgzLDYgQEAgUmVuZGVyTGF5ZXI6OkZpbHRlckluZm86OkZpbHRlckluZm8o
UmVuZGVyTGF5ZXImIGxheWVyKQogCiBSZW5kZXJMYXllcjo6RmlsdGVySW5mbzo6fkZpbHRlcklu
Zm8oKQogewotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICByZW1vdmVDdXN0b21GaWx0ZXJD
bGllbnRzKCk7Ci0jZW5kaWYKICNpZiBFTkFCTEUoU1ZHKQogICAgIHJlbW92ZVJlZmVyZW5jZUZp
bHRlckNsaWVudHMoKTsKICNlbmRpZgpAQCAtMTQ5LDQ0ICsxNDQsNiBAQCB2b2lkIFJlbmRlckxh
eWVyOjpGaWx0ZXJJbmZvOjpyZW1vdmVSZWZlcmVuY2VGaWx0ZXJDbGllbnRzKCkKIAogI2VuZGlm
CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLXZvaWQgUmVuZGVyTGF5ZXI6OkZpbHRlcklu
Zm86Om5vdGlmeUN1c3RvbUZpbHRlclByb2dyYW1Mb2FkZWQoQ3VzdG9tRmlsdGVyUHJvZ3JhbSop
Ci17Ci0gICAgbV9sYXllci5yZW5kZXJlcigpLmVsZW1lbnQoKS0+c2V0TmVlZHNTdHlsZVJlY2Fs
YyhTeW50aGV0aWNTdHlsZUNoYW5nZSk7Ci0gICAgbV9sYXllci5yZW5kZXJlcigpLnJlcGFpbnQo
KTsKLX0KLQotdm9pZCBSZW5kZXJMYXllcjo6RmlsdGVySW5mbzo6dXBkYXRlQ3VzdG9tRmlsdGVy
Q2xpZW50cyhjb25zdCBGaWx0ZXJPcGVyYXRpb25zJiBvcGVyYXRpb25zKQotewotICAgIGlmICgh
b3BlcmF0aW9ucy5zaXplKCkpIHsKLSAgICAgICAgcmVtb3ZlQ3VzdG9tRmlsdGVyQ2xpZW50cygp
OwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIFZlY3RvcjxSZWZQdHI8Q3VzdG9tRmlsdGVy
UHJvZ3JhbT4+IGNhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zOwotICAgIGZvciAoc2l6ZV90IGkg
PSAwLCBzaXplID0gb3BlcmF0aW9ucy5zaXplKCk7IGkgPCBzaXplOyArK2kpIHsKLSAgICAgICAg
Y29uc3QgRmlsdGVyT3BlcmF0aW9uKiBmaWx0ZXJPcGVyYXRpb24gPSBvcGVyYXRpb25zLm9wZXJh
dGlvbnMoKVtpXS5nZXQoKTsKLSAgICAgICAgaWYgKGZpbHRlck9wZXJhdGlvbi0+dHlwZSgpICE9
IEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NKQotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAg
IGNvbnN0IEN1c3RvbUZpbHRlck9wZXJhdGlvbiogY3VzdG9tRmlsdGVyT3BlcmF0aW9uID0gc3Rh
dGljX2Nhc3Q8Y29uc3QgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uKj4oZmlsdGVyT3BlcmF0aW9uKTsK
LSAgICAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSA9IGN1c3RvbUZpbHRlck9wZXJh
dGlvbi0+cHJvZ3JhbSgpOwotICAgICAgICBjYWNoZWRDdXN0b21GaWx0ZXJQcm9ncmFtcy5hcHBl
bmQocHJvZ3JhbSk7Ci0gICAgICAgIHByb2dyYW0tPmFkZENsaWVudCh0aGlzKTsKLSAgICB9Ci0g
ICAgLy8gUmVtb3ZlIHRoZSBvbGQgY2xpZW50cyBoZXJlLCBhZnRlciB3ZSd2ZSBhZGRlZCB0aGUg
bmV3IG9uZXMsIHNvIHRoYXQgd2UgZG9uJ3QgZmxpY2tlciBpZiBzb21lIHNoYWRlcnMgYXJlIHVu
Y2hhbmdlZC4KLSAgICByZW1vdmVDdXN0b21GaWx0ZXJDbGllbnRzKCk7Ci0gICAgbV9jYWNoZWRD
dXN0b21GaWx0ZXJQcm9ncmFtcy5zd2FwKGNhY2hlZEN1c3RvbUZpbHRlclByb2dyYW1zKTsKLX0K
LQotdm9pZCBSZW5kZXJMYXllcjo6RmlsdGVySW5mbzo6cmVtb3ZlQ3VzdG9tRmlsdGVyQ2xpZW50
cygpCi17Ci0gICAgZm9yIChzaXplX3QgaSA9IDAsIHNpemUgPSBtX2NhY2hlZEN1c3RvbUZpbHRl
clByb2dyYW1zLnNpemUoKTsgaSA8IHNpemU7ICsraSkKLSAgICAgICAgbV9jYWNoZWRDdXN0b21G
aWx0ZXJQcm9ncmFtc1tpXS0+cmVtb3ZlQ2xpZW50KHRoaXMpOwotICAgIG1fY2FjaGVkQ3VzdG9t
RmlsdGVyUHJvZ3JhbXMuY2xlYXIoKTsKLX0KLQotI2VuZGlmCi0KIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShDU1NfRklMVEVSUykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckZpbHRlckluZm8uaCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckZpbHRlckluZm8uaAppbmRleCAwZmY3MWYxLi4xYTZm
MmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJGaWx0
ZXJJbmZvLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyRmlsdGVy
SW5mby5oCkBAIC0zNSw3ICszNSw2IEBACiAKICNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUhhbmRs
ZS5oIgogI2luY2x1ZGUgIkNhY2hlZFNWR0RvY3VtZW50Q2xpZW50LmgiCi0jaW5jbHVkZSAiQ3Vz
dG9tRmlsdGVyUHJvZ3JhbUNsaWVudC5oIgogI2luY2x1ZGUgIlJlbmRlckxheWVyLmgiCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQzLDExICs0Miw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IGNsYXNzIEVsZW1lbnQ7CiAKIGNsYXNzIFJlbmRlckxheWVyOjpGaWx0ZXJJbmZvCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKSAmJiBFTkFCTEUoU1ZHKQotICAgIGZpbmFsIDogcHVibGljIEN1c3Rv
bUZpbHRlclByb2dyYW1DbGllbnQsIHB1YmxpYyBDYWNoZWRTVkdEb2N1bWVudENsaWVudAotI2Vs
aWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGZpbmFsIDogcHVibGljIEN1c3RvbUZpbHRlclBy
b2dyYW1DbGllbnQKLSNlbGlmIEVOQUJMRShTVkcpCisjaWYgRU5BQkxFKFNWRykKICAgICBmaW5h
bCA6IHB1YmxpYyBDYWNoZWRTVkdEb2N1bWVudENsaWVudAogI2VuZGlmCiB7CkBAIC02MywxMSAr
NTgsNiBAQCBwdWJsaWM6CiAgICAgRmlsdGVyRWZmZWN0UmVuZGVyZXIqIHJlbmRlcmVyKCkgY29u
c3QgeyByZXR1cm4gbV9yZW5kZXJlci5nZXQoKTsgfQogICAgIHZvaWQgc2V0UmVuZGVyZXIoUGFz
c1JlZlB0cjxGaWx0ZXJFZmZlY3RSZW5kZXJlcj4pOwogICAgIAotI2lmIEVOQUJMRShDU1NfU0hB
REVSUykKLSAgICB2b2lkIHVwZGF0ZUN1c3RvbUZpbHRlckNsaWVudHMoY29uc3QgRmlsdGVyT3Bl
cmF0aW9ucyYpOwotICAgIHZvaWQgcmVtb3ZlQ3VzdG9tRmlsdGVyQ2xpZW50cygpOwotI2VuZGlm
Ci0KICNpZiBFTkFCTEUoU1ZHKQogICAgIHZvaWQgdXBkYXRlUmVmZXJlbmNlRmlsdGVyQ2xpZW50
cyhjb25zdCBGaWx0ZXJPcGVyYXRpb25zJik7CiAgICAgdm9pZCByZW1vdmVSZWZlcmVuY2VGaWx0
ZXJDbGllbnRzKCk7CkBAIC03OSwxMCArNjksNiBAQCBwcml2YXRlOgogCiAgICAgZnJpZW5kIHZv
aWQgV1RGOjpkZWxldGVPd25lZFB0cjxGaWx0ZXJJbmZvPihGaWx0ZXJJbmZvKik7CiAKLSNpZiBF
TkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgdmlydHVhbCB2b2lkIG5vdGlmeUN1c3RvbUZpbHRlclBy
b2dyYW1Mb2FkZWQoQ3VzdG9tRmlsdGVyUHJvZ3JhbSopIG92ZXJyaWRlOwotI2VuZGlmCi0KICNp
ZiBFTkFCTEUoU1ZHKQogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNv
dXJjZSopIG92ZXJyaWRlOwogI2VuZGlmCkBAIC0xMDMsMTAgKzg5LDYgQEAgcHJpdmF0ZToKICAg
ICBSZWZQdHI8RmlsdGVyRWZmZWN0UmVuZGVyZXI+IG1fcmVuZGVyZXI7CiAgICAgTGF5b3V0UmVj
dCBtX2RpcnR5U291cmNlUmVjdDsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBWZWN0
b3I8UmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+PiBtX2NhY2hlZEN1c3RvbUZpbHRlclByb2dy
YW1zOwotI2VuZGlmCi0KICNpZiBFTkFCTEUoU1ZHKQogICAgIFZlY3RvcjxSZWZQdHI8RWxlbWVu
dD4+IG1faW50ZXJuYWxTVkdSZWZlcmVuY2VzOwogICAgIFZlY3RvcjxDYWNoZWRSZXNvdXJjZUhh
bmRsZTxDYWNoZWRTVkdEb2N1bWVudD4+IG1fZXh0ZXJuYWxTVkdSZWZlcmVuY2VzOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwCmluZGV4IDRhNGIzNWMuLjdiNjQ2YmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAKQEAgLTUxLDEwICs1MSw2IEBA
CiAjaW5jbHVkZSAiUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJM
RShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotI2luY2x1ZGUgIkN1c3RvbUZpbHRl
ckdsb2JhbENvbnRleHQuaCIKLSNlbmRpZgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFJlbmRl
clZpZXc6OlJlbmRlclZpZXcoRG9jdW1lbnQmIGRvY3VtZW50LCBQYXNzUmVmPFJlbmRlclN0eWxl
PiBzdHlsZSkKQEAgLTExODAsMTUgKzExNzYsNiBAQCB2b2lkIFJlbmRlclZpZXc6OnNldElzSW5X
aW5kb3coYm9vbCBpc0luV2luZG93KQogI2VuZGlmCiB9CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpICYmIFVTRSgzRF9HUkFQSElDUykKLUN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQqIFJlbmRl
clZpZXc6OmN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQoKQotewotICAgIGlmICghbV9jdXN0b21G
aWx0ZXJHbG9iYWxDb250ZXh0KQotICAgICAgICBtX2N1c3RvbUZpbHRlckdsb2JhbENvbnRleHQg
PSBhZG9wdFB0cihuZXcgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dCgpKTsKLSAgICByZXR1cm4g
bV9jdXN0b21GaWx0ZXJHbG9iYWxDb250ZXh0LmdldCgpOwotfQotI2VuZGlmCi0KIHZvaWQgUmVu
ZGVyVmlldzo6c3R5bGVEaWRDaGFuZ2UoU3R5bGVEaWZmZXJlbmNlIGRpZmYsIGNvbnN0IFJlbmRl
clN0eWxlKiBvbGRTdHlsZSkKIHsKICAgICBSZW5kZXJCbG9ja0Zsb3c6OnN0eWxlRGlkQ2hhbmdl
KGRpZmYsIG9sZFN0eWxlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJWaWV3LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5oCmluZGV4
IGM3NTVjMTIuLjJhZWVlYjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJWaWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaApA
QCAtMzgsMTAgKzM4LDYgQEAgY2xhc3MgUmVuZGVyUXVvdGU7CiBjbGFzcyBSZW5kZXJMYXllckNv
bXBvc2l0b3I7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dS
QVBISUNTKQotY2xhc3MgQ3VzdG9tRmlsdGVyR2xvYmFsQ29udGV4dDsKLSNlbmRpZgotCiBjbGFz
cyBSZW5kZXJWaWV3IGZpbmFsIDogcHVibGljIFJlbmRlckJsb2NrRmxvdyB7CiBwdWJsaWM6CiAg
ICAgUmVuZGVyVmlldyhEb2N1bWVudCYsIFBhc3NSZWY8UmVuZGVyU3R5bGU+KTsKQEAgLTE4OSwx
MCArMTg1LDYgQEAgcHVibGljOgogICAgIGJvb2wgdXNlc0NvbXBvc2l0aW5nKCkgY29uc3Q7CiAj
ZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykgJiYgVVNFKDNEX0dSQVBISUNTKQotICAg
IEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQqIGN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQoKTsK
LSNlbmRpZgotCiAgICAgSW50UmVjdCB1bnNjYWxlZERvY3VtZW50UmVjdCgpIGNvbnN0OwogICAg
IExheW91dFJlY3QgYmFja2dyb3VuZFJlY3QoUmVuZGVyQm94KiBiYWNrZ3JvdW5kUmVuZGVyZXIp
IGNvbnN0OwogCkBAIC0zNDEsOSArMzMzLDYgQEAgcHJpdmF0ZToKICNpZiBVU0UoQUNDRUxFUkFU
RURfQ09NUE9TSVRJTkcpCiAgICAgT3duUHRyPFJlbmRlckxheWVyQ29tcG9zaXRvcj4gbV9jb21w
b3NpdG9yOwogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKSAmJiBVU0UoM0RfR1JBUEhJ
Q1MpCi0gICAgT3duUHRyPEN1c3RvbUZpbHRlckdsb2JhbENvbnRleHQ+IG1fY3VzdG9tRmlsdGVy
R2xvYmFsQ29udGV4dDsKLSNlbmRpZgogICAgIE93blB0cjxGbG93VGhyZWFkQ29udHJvbGxlcj4g
bV9mbG93VGhyZWFkQ29udHJvbGxlcjsKICAgICBSZWZQdHI8SW50ZXJ2YWxBcmVuYT4gbV9pbnRl
cnZhbEFyZW5hOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U3R5bGVDYWNoZWRTaGFkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlQ2FjaGVkU2hhZGVyLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDkxMThh
MS4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNo
ZWRTaGFkZXIuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNTYgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAg
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSIOKAnEFTIElT4oCdIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksCi0gKiBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SCi0gKiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YKLSAqIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICog
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotCi0jaW5jbHVkZSAiU3R5bGVDYWNoZWRTaGFkZXIuaCIKLQotI2luY2x1ZGUg
IkNTU1ByaW1pdGl2ZVZhbHVlLmgiCi0jaW5jbHVkZSAiQ2FjaGVkU2hhZGVyLmgiCi0KLW5hbWVz
cGFjZSBXZWJDb3JlIHsKLQotCi1TdHlsZUNhY2hlZFNoYWRlcjo6U3R5bGVDYWNoZWRTaGFkZXIo
Q2FjaGVkU2hhZGVyKiBzaGFkZXIpCi0gICAgOiBtX3NoYWRlcihzaGFkZXIpCi17Ci0gICAgIG1f
aXNDYWNoZWRTaGFkZXIgPSB0cnVlOwotfQotCi1QYXNzUmVmUHRyPENTU1ZhbHVlPiBTdHlsZUNh
Y2hlZFNoYWRlcjo6Y3NzVmFsdWUoKSBjb25zdAotewotICAgIHJldHVybiBDU1NQcmltaXRpdmVW
YWx1ZTo6Y3JlYXRlKG1fc2hhZGVyLT51cmwoKSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19VUkkp
OwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NI
QURFUlMpCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHls
ZUNhY2hlZFNoYWRlci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2Fj
aGVkU2hhZGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE1MjM0MjkuLjAwMDAw
MDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVy
LmgKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDExIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
Ci0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
LSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
LSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaWZuZGVmIFN0eWxlQ2FjaGVkU2hhZGVyX2gKLSNkZWZpbmUgU3R5bGVDYWNo
ZWRTaGFkZXJfaAotCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotCi0jaW5jbHVkZSAiQ2FjaGVk
UmVzb3VyY2VIYW5kbGUuaCIKLSNpbmNsdWRlICJTdHlsZVNoYWRlci5oIgotI2luY2x1ZGUgPHd0
Zi9QYXNzUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgQ2FjaGVkU2hh
ZGVyOwotCi1jbGFzcyBTdHlsZUNhY2hlZFNoYWRlciA6IHB1YmxpYyBTdHlsZVNoYWRlciB7Ci1w
dWJsaWM6Ci0gICAgLy8gRklYTUU6IEtlZXAgYSByZWZlcmVuY2UgdG8gdGhlIGFjdHVhbCBDYWNo
ZWRTaGFkZXIgaW4gdGhpcyBjbGFzcy4KLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxTdHlsZUNhY2hl
ZFNoYWRlcj4gY3JlYXRlKENhY2hlZFNoYWRlciogc2hhZGVyKSB7IHJldHVybiBhZG9wdFJlZihu
ZXcgU3R5bGVDYWNoZWRTaGFkZXIoc2hhZGVyKSk7IH0KLSAgICAKLSAgICB2aXJ0dWFsIFBhc3NS
ZWZQdHI8Q1NTVmFsdWU+IGNzc1ZhbHVlKCkgY29uc3Q7Ci0gICAgCi0gICAgdmlydHVhbCBDYWNo
ZWRTaGFkZXIqIGNhY2hlZFNoYWRlcigpIGNvbnN0IHsgcmV0dXJuIG1fc2hhZGVyLmdldCgpOyB9
Ci0gICAgCi1wcml2YXRlOgotICAgIFN0eWxlQ2FjaGVkU2hhZGVyKENhY2hlZFNoYWRlciopOwot
ICAgIAotICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFNoYWRlcj4gbV9zaGFkZXI7Ci19
OwotCi19Ci0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gU3R5bGVD
YWNoZWRTaGFkZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNWY0MDEyZi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDQ5
ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUgU3lzdGVtcyBJbmNvcnBv
cmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIuCi0gKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
Ci0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0g
KgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUiDi
gJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBC
RQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotICogVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25m
aWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2luY2x1ZGUgIlN0eWxlQ3VzdG9t
RmlsdGVyUHJvZ3JhbS5oIgotCi0jaW5jbHVkZSAiU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2Fj
aGUuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1TdHlsZUN1c3RvbUZpbHRlclByb2dyYW06
On5TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0oKQotewotICAgIGlmIChtX2NhY2hlKQotICAgICAg
ICBtX2NhY2hlLT5yZW1vdmUodGhpcyk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQot
I2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmOGNiZWE4Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaAorKysgL2Rldi9u
dWxsCkBAIC0xLDE4NyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aWZuZGVmIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbV9oCi0jZGVmaW5lIFN0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5jbHVkZSAiQ2FjaGVk
UmVzb3VyY2VDbGllbnQuaCIKLSNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUhhbmRsZS5oIgotI2lu
Y2x1ZGUgIkNhY2hlZFNoYWRlci5oIgotI2luY2x1ZGUgIkN1c3RvbUZpbHRlclByb2dyYW0uaCIK
LSNpbmNsdWRlICJVUkwuaCIKLSNpbmNsdWRlICJTdHlsZVNoYWRlci5oIgotI2luY2x1ZGUgPHd0
Zi9GYXN0TWFsbG9jLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotLy8gQ1NTIFNoYWRlcnMK
LQotY2xhc3MgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGU7Ci0KLWNsYXNzIFN0eWxlQ3Vz
dG9tRmlsdGVyUHJvZ3JhbSA6IHB1YmxpYyBDdXN0b21GaWx0ZXJQcm9ncmFtLCBwdWJsaWMgQ2Fj
aGVkUmVzb3VyY2VDbGllbnQgewotICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwotcHVibGlj
OgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbT4gY3JlYXRl
KFVSTCB2ZXJ0ZXhTaGFkZXJVUkwsIFBhc3NSZWZQdHI8U3R5bGVTaGFkZXI+IHZlcnRleFNoYWRl
ciwgCi0gICAgICAgIFVSTCBmcmFnbWVudFNoYWRlclVSTCwgUGFzc1JlZlB0cjxTdHlsZVNoYWRl
cj4gZnJhZ21lbnRTaGFkZXIsIEN1c3RvbUZpbHRlclByb2dyYW1UeXBlIHByb2dyYW1UeXBlLAot
ICAgICAgICBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG1peFNldHRpbmdz
LCBDdXN0b21GaWx0ZXJNZXNoVHlwZSBtZXNoVHlwZSkKLSAgICB7Ci0gICAgICAgIHJldHVybiBh
ZG9wdFJlZihuZXcgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKHZlcnRleFNoYWRlclVSTCwgdmVy
dGV4U2hhZGVyLCBmcmFnbWVudFNoYWRlclVSTCwgZnJhZ21lbnRTaGFkZXIsIHByb2dyYW1UeXBl
LCBtaXhTZXR0aW5ncywgbWVzaFR5cGUpKTsKLSAgICB9Ci0gICAgCi0gICAgdm9pZCBzZXRWZXJ0
ZXhTaGFkZXIoUGFzc1JlZlB0cjxTdHlsZVNoYWRlcj4gc2hhZGVyKQotICAgIHsKLSAgICAgICAg
Ly8gVGhlIHNoYWRlciBpcyBpbW11dGFibGUgd2hpbGUgaW4gdGhlIGNhY2hlLgotICAgICAgICBB
U1NFUlQoIW1fY2FjaGUpOwotICAgICAgICBtX3ZlcnRleFNoYWRlciA9IHNoYWRlcjsgCi0gICAg
fQotICAgIFN0eWxlU2hhZGVyKiB2ZXJ0ZXhTaGFkZXIoKSBjb25zdCB7IHJldHVybiBtX3ZlcnRl
eFNoYWRlci5nZXQoKTsgfQotICAgIAotICAgIHZvaWQgc2V0RnJhZ21lbnRTaGFkZXIoUGFzc1Jl
ZlB0cjxTdHlsZVNoYWRlcj4gc2hhZGVyKQotICAgIHsKLSAgICAgICAgLy8gVGhlIHNoYWRlciBp
cyBpbW11dGFibGUgd2hpbGUgaW4gdGhlIGNhY2hlLgotICAgICAgICBBU1NFUlQoIW1fY2FjaGUp
OwotICAgICAgICBtX2ZyYWdtZW50U2hhZGVyID0gc2hhZGVyOyAKLSAgICB9Ci0gICAgU3R5bGVT
aGFkZXIqIGZyYWdtZW50U2hhZGVyKCkgY29uc3QgeyByZXR1cm4gbV9mcmFnbWVudFNoYWRlci5n
ZXQoKTsgfQotICAgIAotICAgIHZpcnR1YWwgU3RyaW5nIHZlcnRleFNoYWRlclN0cmluZygpIGNv
bnN0Ci0gICAgewotICAgICAgICBBU1NFUlQoaXNMb2FkZWQoKSk7Ci0gICAgICAgIHJldHVybiBt
X2NhY2hlZFZlcnRleFNoYWRlci5nZXQoKSA/IG1fY2FjaGVkVmVydGV4U2hhZGVyLT5zaGFkZXJT
dHJpbmcoKSA6IFN0cmluZygpOwotICAgIH0KLSAgICAKLSAgICB2aXJ0dWFsIFN0cmluZyBmcmFn
bWVudFNoYWRlclN0cmluZygpIGNvbnN0Ci0gICAgewotICAgICAgICBBU1NFUlQoaXNMb2FkZWQo
KSk7Ci0gICAgICAgIHJldHVybiBtX2NhY2hlZEZyYWdtZW50U2hhZGVyLmdldCgpID8gbV9jYWNo
ZWRGcmFnbWVudFNoYWRlci0+c2hhZGVyU3RyaW5nKCkgOiBTdHJpbmcoKTsKLSAgICB9Ci0KLSAg
ICB2aXJ0dWFsIGJvb2wgaXNMb2FkZWQoKSBjb25zdAotICAgIHsKLSAgICAgICAgLy8gRG8gbm90
IHVzZSB0aGUgQ2FjaGVkUmVzb3VyY2U6aXNMb2FkZWQgbWV0aG9kIGhlcmUsIGJlY2F1c2UgaXQg
YWN0dWFsbHkgbWVhbnMgIWlzTG9hZGluZygpLAotICAgICAgICAvLyBzbyBtaXNzaW5nIGFuZCBj
YW5jZWxlZCByZXNvdXJjZXMgd2lsbCBoYXZlIGlzTG9hZGVkIHNldCB0byB0cnVlLCBldmVuIGlm
IHRoZXkgYXJlIG5vdCBsb2FkZWQgeWV0LgotICAgICAgICBBU1NFUlQoIW1fdmVydGV4U2hhZGVy
IHx8IG1fdmVydGV4U2hhZGVyLT5pc0NhY2hlZFNoYWRlcigpKTsKLSAgICAgICAgQVNTRVJUKCFt
X2ZyYWdtZW50U2hhZGVyIHx8IG1fZnJhZ21lbnRTaGFkZXItPmlzQ2FjaGVkU2hhZGVyKCkpOwot
ICAgICAgICBBU1NFUlQobV9jYWNoZWRWZXJ0ZXhTaGFkZXIuZ2V0KCkgfHwgbV9jYWNoZWRGcmFn
bWVudFNoYWRlci5nZXQoKSk7Ci0gICAgICAgIHJldHVybiAoIW1fY2FjaGVkVmVydGV4U2hhZGVy
LmdldCgpIHx8IG1faXNWZXJ0ZXhTaGFkZXJMb2FkZWQpCi0gICAgICAgICAgICAmJiAoIW1fY2Fj
aGVkRnJhZ21lbnRTaGFkZXIuZ2V0KCkgfHwgbV9pc0ZyYWdtZW50U2hhZGVyTG9hZGVkKTsKLSAg
ICB9Ci0KLSAgICB2aXJ0dWFsIHZvaWQgd2lsbEhhdmVDbGllbnRzKCkKLSAgICB7Ci0gICAgICAg
IGlmIChtX3ZlcnRleFNoYWRlcikgewotICAgICAgICAgICAgbV9jYWNoZWRWZXJ0ZXhTaGFkZXIg
PSBtX3ZlcnRleFNoYWRlci0+Y2FjaGVkU2hhZGVyKCk7Ci0gICAgICAgICAgICBtX2NhY2hlZFZl
cnRleFNoYWRlci0+YWRkQ2xpZW50KHRoaXMpOwotICAgICAgICB9Ci0gICAgICAgIGlmIChtX2Zy
YWdtZW50U2hhZGVyKSB7Ci0gICAgICAgICAgICBtX2NhY2hlZEZyYWdtZW50U2hhZGVyID0gbV9m
cmFnbWVudFNoYWRlci0+Y2FjaGVkU2hhZGVyKCk7Ci0gICAgICAgICAgICBtX2NhY2hlZEZyYWdt
ZW50U2hhZGVyLT5hZGRDbGllbnQodGhpcyk7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgCi0gICAg
dmlydHVhbCB2b2lkIGRpZFJlbW92ZUxhc3RDbGllbnQoKQotICAgIHsKLSAgICAgICAgaWYgKG1f
Y2FjaGVkVmVydGV4U2hhZGVyLmdldCgpKSB7Ci0gICAgICAgICAgICBtX2NhY2hlZFZlcnRleFNo
YWRlci0+cmVtb3ZlQ2xpZW50KHRoaXMpOwotICAgICAgICAgICAgbV9jYWNoZWRWZXJ0ZXhTaGFk
ZXIgPSAwOwotICAgICAgICAgICAgbV9pc1ZlcnRleFNoYWRlckxvYWRlZCA9IGZhbHNlOwotICAg
ICAgICB9Ci0gICAgICAgIGlmIChtX2NhY2hlZEZyYWdtZW50U2hhZGVyLmdldCgpKSB7Ci0gICAg
ICAgICAgICBtX2NhY2hlZEZyYWdtZW50U2hhZGVyLT5yZW1vdmVDbGllbnQodGhpcyk7Ci0gICAg
ICAgICAgICBtX2NhY2hlZEZyYWdtZW50U2hhZGVyID0gMDsKLSAgICAgICAgICAgIG1faXNGcmFn
bWVudFNoYWRlckxvYWRlZCA9IGZhbHNlOwotICAgICAgICB9Ci0gICAgfQotICAgIAotICAgIHZp
cnR1YWwgdm9pZCBub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UpCi0gICAg
ewotICAgICAgICBpZiAocmVzb3VyY2UtPmVycm9yT2NjdXJyZWQoKSkKLSAgICAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgLy8gTm90ZSB0aGF0IG1fY2FjaGVkVmVydGV4U2hhZGVyIG1pZ2h0IGJl
IGVxdWFsIHRvIG1fY2FjaGVkRnJhZ21lbnRTaGFkZXIgYW5kIGl0IHdvdWxkIG9ubHkgZ2V0IG9u
ZSBldmVudCBpbiB0aGF0IGNhc2UuCi0gICAgICAgIGlmIChyZXNvdXJjZSA9PSBtX2NhY2hlZFZl
cnRleFNoYWRlci5nZXQoKSkKLSAgICAgICAgICAgIG1faXNWZXJ0ZXhTaGFkZXJMb2FkZWQgPSB0
cnVlOwotICAgICAgICBpZiAocmVzb3VyY2UgPT0gbV9jYWNoZWRGcmFnbWVudFNoYWRlci5nZXQo
KSkKLSAgICAgICAgICAgIG1faXNGcmFnbWVudFNoYWRlckxvYWRlZCA9IHRydWU7Ci0gICAgICAg
IGlmIChpc0xvYWRlZCgpKQotICAgICAgICAgICAgbm90aWZ5Q2xpZW50cygpOwotICAgIH0KLQot
ICAgIGJvb2wgaGFzUGVuZGluZ1NoYWRlcnMoKSBjb25zdAotICAgIHsKLSAgICAgICAgcmV0dXJu
IChtX3ZlcnRleFNoYWRlciAmJiBtX3ZlcnRleFNoYWRlci0+aXNQZW5kaW5nU2hhZGVyKCkpIAot
ICAgICAgICAgICAgfHwgKG1fZnJhZ21lbnRTaGFkZXIgJiYgbV9mcmFnbWVudFNoYWRlci0+aXNQ
ZW5kaW5nU2hhZGVyKCkpOwotICAgIH0KLQotICAgIC8vIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUNhY2hlIGlzIHJlc3BvbnNpYmxlIHdpdGggdXBkYXRpbmcgdGhlIHJlZmVyZW5jZSB0byB0aGUg
Y2FjaGUuCi0gICAgdm9pZCBzZXRDYWNoZShTdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZSog
Y2FjaGUpIHsgbV9jYWNoZSA9IGNhY2hlOyB9Ci0gICAgYm9vbCBpbkNhY2hlKCkgY29uc3QgeyBy
ZXR1cm4gbV9jYWNoZTsgfQotICAgIAotICAgIFVSTCB2ZXJ0ZXhTaGFkZXJVUkwoKSBjb25zdCB7
IHJldHVybiBtX3ZlcnRleFNoYWRlclVSTDsgfQotICAgIFVSTCBmcmFnbWVudFNoYWRlclVSTCgp
IGNvbnN0IHsgcmV0dXJuIG1fZnJhZ21lbnRTaGFkZXJVUkw7IH0KLQotcHJpdmF0ZToKLSAgICBT
dHlsZUN1c3RvbUZpbHRlclByb2dyYW0oVVJMIHZlcnRleFNoYWRlclVSTCwgUGFzc1JlZlB0cjxT
dHlsZVNoYWRlcj4gdmVydGV4U2hhZGVyLCBVUkwgZnJhZ21lbnRTaGFkZXJVUkwsIFBhc3NSZWZQ
dHI8U3R5bGVTaGFkZXI+IGZyYWdtZW50U2hhZGVyLCAKLSAgICAgICAgQ3VzdG9tRmlsdGVyUHJv
Z3JhbVR5cGUgcHJvZ3JhbVR5cGUsIGNvbnN0IEN1c3RvbUZpbHRlclByb2dyYW1NaXhTZXR0aW5n
cyYgbWl4U2V0dGluZ3MsIEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlKQotICAgICAgICA6
IEN1c3RvbUZpbHRlclByb2dyYW0ocHJvZ3JhbVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSkK
LSAgICAgICAgLCBtX3ZlcnRleFNoYWRlcih2ZXJ0ZXhTaGFkZXIpCi0gICAgICAgICwgbV9mcmFn
bWVudFNoYWRlcihmcmFnbWVudFNoYWRlcikKLSAgICAgICAgLCBtX3ZlcnRleFNoYWRlclVSTCh2
ZXJ0ZXhTaGFkZXJVUkwpCi0gICAgICAgICwgbV9mcmFnbWVudFNoYWRlclVSTChmcmFnbWVudFNo
YWRlclVSTCkKLSAgICAgICAgLCBtX2NhY2hlKDApCi0gICAgICAgICwgbV9pc1ZlcnRleFNoYWRl
ckxvYWRlZChmYWxzZSkKLSAgICAgICAgLCBtX2lzRnJhZ21lbnRTaGFkZXJMb2FkZWQoZmFsc2Up
Ci0gICAgewotICAgIH0KLQotICAgIH5TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0oKTsKLSAgICAK
LSAgICBSZWZQdHI8U3R5bGVTaGFkZXI+IG1fdmVydGV4U2hhZGVyOwotICAgIFJlZlB0cjxTdHls
ZVNoYWRlcj4gbV9mcmFnbWVudFNoYWRlcjsKLQotICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENh
Y2hlZFNoYWRlcj4gbV9jYWNoZWRWZXJ0ZXhTaGFkZXI7Ci0gICAgQ2FjaGVkUmVzb3VyY2VIYW5k
bGU8Q2FjaGVkU2hhZGVyPiBtX2NhY2hlZEZyYWdtZW50U2hhZGVyOwotCi0gICAgLy8gVGhlIFVS
THMgZm9ybSB0aGUga2V5IG9mIHRoZSBTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0gaW4gdGhlIGNh
Y2hlIGFuZCBhcmUgdXNlZAotICAgIC8vIHRvIGxvb2t1cCB0aGUgU3R5bGVDdXN0b21GaWx0ZXJQ
cm9ncmFtIHdoZW4gaXQncyByZW1vdmVkIGZyb20gdGhlIGNhY2hlLgotICAgIFVSTCBtX3ZlcnRl
eFNoYWRlclVSTDsKLSAgICBVUkwgbV9mcmFnbWVudFNoYWRlclVSTDsKLQotICAgIC8vIFRoZSBD
YWNoZSBpcyByZXNwb25zaWJsZSBvZiBpbnZhbGlkYXRpbmcgdGhpcyByZWZlcmVuY2UuCi0gICAg
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUqIG1fY2FjaGU7Ci0gICAgCi0gICAgYm9vbCBt
X2lzVmVydGV4U2hhZGVyTG9hZGVkOwotICAgIGJvb2wgbV9pc0ZyYWdtZW50U2hhZGVyTG9hZGVk
OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKENTU19T
SEFERVJTKQotCi0jZW5kaWYgLy8gU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtX2gKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dy
YW1DYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21G
aWx0ZXJQcm9ncmFtQ2FjaGUuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NmE3
MjRkLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUN1
c3RvbUZpbHRlclByb2dyYW1DYWNoZS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw4NCArMCwwIEBA
Ci0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFkb2JlIFN5c3RlbXMgSW5jb3Jwb3JhdGVkLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBh
cmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogICAg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVIg4oCcQVMgSVPi
gJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgQkUKLSAqIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IKLSAqIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRgot
ICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0K
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJTdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW1DYWNoZS5oIgotCi0jaW5jbHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNp
bmNsdWRlICJTdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUg
ewotCi1zdGF0aWMgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8gcHJvZ3JhbUNhY2hlS2V5KFN0eWxl
Q3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSkgCi17Ci0gICAgQVNTRVJUKHByb2dyYW0tPnZl
cnRleFNoYWRlclVSTCgpLmlzVmFsaWQoKSB8fCBwcm9ncmFtLT5mcmFnbWVudFNoYWRlclVSTCgp
LmlzVmFsaWQoKSk7Ci0gICAgcmV0dXJuIEN1c3RvbUZpbHRlclByb2dyYW1JbmZvKHByb2dyYW0t
PnZlcnRleFNoYWRlclVSTCgpLCBwcm9ncmFtLT5mcmFnbWVudFNoYWRlclVSTCgpLCAKLSAgICAg
ICAgcHJvZ3JhbS0+cHJvZ3JhbVR5cGUoKSwgcHJvZ3JhbS0+bWl4U2V0dGluZ3MoKSwgcHJvZ3Jh
bS0+bWVzaFR5cGUoKSk7Ci19Ci0KLVN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlOjpTdHls
ZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZSgpCi17Ci19Ci0KLVN0eWxlQ3VzdG9tRmlsdGVyUHJv
Z3JhbUNhY2hlOjp+U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUoKQotewotICAgIC8vIE1h
a2Ugc3VyZSB0aGUgcHJvZ3JhbXMgYXJlIG5vdCBjYWxsaW5nIGJhY2sgaW50byB0aGlzIG9iamVj
dC4KLSAgICBmb3IgKENhY2hlTWFwOjppdGVyYXRvciBpdGVyID0gbV9jYWNoZS5iZWdpbigpLCBl
bmQgPSBtX2NhY2hlLmVuZCgpOyBpdGVyICE9IGVuZDsgKytpdGVyKQotICAgICAgICBpdGVyLT52
YWx1ZS0+c2V0Q2FjaGUoMCk7Ci19Ci0KLVN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogU3R5bGVD
dXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGU6Omxvb2t1cChjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFt
SW5mbyYgcHJvZ3JhbUluZm8pIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fY2FjaGUuZ2V0KHByb2dy
YW1JbmZvKTsKLX0KLQotU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKiBTdHlsZUN1c3RvbUZpbHRl
clByb2dyYW1DYWNoZTo6bG9va3VwKFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSogcHJvZ3JhbSkg
Y29uc3QKLXsKLSAgICByZXR1cm4gbG9va3VwKHByb2dyYW1DYWNoZUtleShwcm9ncmFtKSk7Ci19
Ci0KLXZvaWQgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGU6OmFkZChTdHlsZUN1c3RvbUZp
bHRlclByb2dyYW0qIHByb2dyYW0pCi17Ci0gICAgQVNTRVJUKCFtX2NhY2hlLmNvbnRhaW5zKHBy
b2dyYW1DYWNoZUtleShwcm9ncmFtKSkpOwotICAgIG1fY2FjaGUuc2V0KHByb2dyYW1DYWNoZUtl
eShwcm9ncmFtKSwgcHJvZ3JhbSk7Ci0gICAgcHJvZ3JhbS0+c2V0Q2FjaGUodGhpcyk7Ci19Ci0K
LXZvaWQgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGU6OnJlbW92ZShTdHlsZUN1c3RvbUZp
bHRlclByb2dyYW0qIHByb2dyYW0pCi17Ci0gICAgQVNTRVJUKG1fY2FjaGUuY29udGFpbnMocHJv
Z3JhbUNhY2hlS2V5KHByb2dyYW0pKSk7Ci0gICAgbV9jYWNoZS5yZW1vdmUocHJvZ3JhbUNhY2hl
S2V5KHByb2dyYW0pKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKENTU19TSEFERVJTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmggYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMjlhNTE0My4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGUuaAorKysgL2Rl
di9udWxsCkBAIC0xLDY1ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQWRvYmUg
U3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCi0gKiAgICBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUiDigJxBUyBJU+KAnSBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIEhPTERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0g
KiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUgotICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0K
LSNpZm5kZWYgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtQ2FjaGVfaAotI2RlZmluZSBTdHlsZUN1
c3RvbUZpbHRlclByb2dyYW1DYWNoZV9oCi0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0jaW5j
bHVkZSAiQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaCIKLSNpbmNsdWRlIDx3dGYvRmFzdE1hbGxv
Yy5oPgotI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQot
Y2xhc3MgU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtOwotY2xhc3MgQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUluZm87Ci0KLWNsYXNzIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlIHsKLSAgICBXVEZf
TUFLRV9GQVNUX0FMTE9DQVRFRDsKLXB1YmxpYzoKLSAgICBTdHlsZUN1c3RvbUZpbHRlclByb2dy
YW1DYWNoZSgpOwotICAgIH5TdHlsZUN1c3RvbUZpbHRlclByb2dyYW1DYWNoZSgpOwotCi0gICAg
Ly8gTG9va3VwcyBhIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSB0aGF0IGhhcyBzaW1pbGFyIHBh
cmFtZXRlcnMgd2l0aCB0aGUgc3BlY2lmaWVkIHByb2dyYW0uCi0gICAgU3R5bGVDdXN0b21GaWx0
ZXJQcm9ncmFtKiBsb29rdXAoU3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKikgY29uc3Q7Ci0gICAg
U3R5bGVDdXN0b21GaWx0ZXJQcm9ncmFtKiBsb29rdXAoY29uc3QgQ3VzdG9tRmlsdGVyUHJvZ3Jh
bUluZm8mKSBjb25zdDsKLQotICAgIHZvaWQgYWRkKFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSop
OwotICAgIHZvaWQgcmVtb3ZlKFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbSopOwotCi1wcml2YXRl
OgotICAgIHR5cGVkZWYgSGFzaE1hcDxDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbywgU3R5bGVDdXN0
b21GaWx0ZXJQcm9ncmFtKj4gQ2FjaGVNYXA7Ci0gICAgQ2FjaGVNYXAgbV9jYWNoZTsKLX07Ci0K
LX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykK
LQotI2VuZGlmIC8vIFN0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlX2gKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVBlbmRpbmdTaGFkZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVBlbmRpbmdTaGFkZXIuaApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOThhZDkxYy4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVQZW5kaW5nU2hhZGVyLmgKKysrIC9kZXYvbnVsbApA
QCAtMSw2MyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5c3RlbXMg
SW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVy
LgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBI
T0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IK
LSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVm
IFN0eWxlUGVuZGluZ1NoYWRlcl9oCi0jZGVmaW5lIFN0eWxlUGVuZGluZ1NoYWRlcl9oCi0KLSNp
ZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNpbmNsdWRlICJDU1NWYWx1ZS5oIgotI2luY2x1ZGUg
IlN0eWxlU2hhZGVyLmgiCi0jaW5jbHVkZSAiV2ViS2l0Q1NTU2hhZGVyVmFsdWUuaCIKLSNpbmNs
dWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIFdl
YktpdENTU1NoYWRlclZhbHVlOwotCi1jbGFzcyBTdHlsZVBlbmRpbmdTaGFkZXIgOiBwdWJsaWMg
U3R5bGVTaGFkZXIgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFN0eWxlUGVuZGlu
Z1NoYWRlcj4gY3JlYXRlKFdlYktpdENTU1NoYWRlclZhbHVlKiB2YWx1ZSkgeyByZXR1cm4gYWRv
cHRSZWYobmV3IFN0eWxlUGVuZGluZ1NoYWRlcih2YWx1ZSkpOyB9Ci0gICAgCi0gICAgdmlydHVh
bCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBjc3NWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdmFsdWU7
IH0KLSAgICBXZWJLaXRDU1NTaGFkZXJWYWx1ZSogY3NzU2hhZGVyVmFsdWUoKSBjb25zdCB7IHJl
dHVybiBtX3ZhbHVlOyB9Ci1wcml2YXRlOgotICAgIFN0eWxlUGVuZGluZ1NoYWRlcihXZWJLaXRD
U1NTaGFkZXJWYWx1ZSogdmFsdWUpCi0gICAgICAgIDogbV92YWx1ZSh2YWx1ZSkKLSAgICB7Ci0g
ICAgICAgICBtX2lzUGVuZGluZ1NoYWRlciA9IHRydWU7Ci0gICAgfQotICAgIAotICAgIFdlYktp
dENTU1NoYWRlclZhbHVlKiBtX3ZhbHVlOyAvLyBOb3QgcmV0YWluZWQ7IGl0IG93bnMgdXMuCi19
OwotCi19Ci0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCi0jZW5kaWYgLy8gU3R5bGVQ
ZW5kaW5nU2hhZGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9TdHlsZVNoYWRlci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlU2hh
ZGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUzOGY5YmYuLjAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlU2hhZGVyLmgKKysrIC9kZXYv
bnVsbApAQCAtMSw2NyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFkb2JlIFN5
c3RlbXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVIg4oCcQVMgSVPigJ0gQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IKLSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0j
aWZuZGVmIFN0eWxlU2hhZGVyX2gKLSNkZWZpbmUgU3R5bGVTaGFkZXJfaAotCi0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNwYWNl
IFdlYkNvcmUgewotCi1jbGFzcyBDYWNoZWRTaGFkZXI7Ci1jbGFzcyBDU1NWYWx1ZTsKLQotY2xh
c3MgU3R5bGVTaGFkZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxTdHlsZVNoYWRlcj4gewotcHVibGlj
OgotICAgIHZpcnR1YWwgflN0eWxlU2hhZGVyKCkgeyB9Ci0KLSAgICBBTFdBWVNfSU5MSU5FIGJv
b2wgaXNDYWNoZWRTaGFkZXIoKSBjb25zdCB7IHJldHVybiBtX2lzQ2FjaGVkU2hhZGVyOyB9Ci0g
ICAgQUxXQVlTX0lOTElORSBib29sIGlzUGVuZGluZ1NoYWRlcigpIGNvbnN0IHsgcmV0dXJuIG1f
aXNQZW5kaW5nU2hhZGVyOyB9Ci0gICAgCi0gICAgdmlydHVhbCBQYXNzUmVmUHRyPENTU1ZhbHVl
PiBjc3NWYWx1ZSgpIGNvbnN0ID0gMDsKLSAgICAKLSAgICB2aXJ0dWFsIENhY2hlZFNoYWRlciog
Y2FjaGVkU2hhZGVyKCkgY29uc3QgeyByZXR1cm4gMDsgfQotICAgIAotcHJvdGVjdGVkOgotICAg
IFN0eWxlU2hhZGVyKCkKLSAgICAgICAgOiBtX2lzQ2FjaGVkU2hhZGVyKGZhbHNlKQotICAgICAg
ICAsIG1faXNQZW5kaW5nU2hhZGVyKGZhbHNlKQotICAgIHsKLSAgICB9Ci0gICAgYm9vbCBtX2lz
Q2FjaGVkU2hhZGVyIDogMTsKLSAgICBib29sIG1faXNQZW5kaW5nU2hhZGVyIDogMTsKLX07Ci0K
LX0KLQotI2VuZGlmIC8vIEVOQUJMRShDU1NfU0hBREVSUykKLQotI2VuZGlmIC8vIFN0eWxlU2hh
ZGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvZ3RrL0NoYW5nZUxvZwppbmRleCA1YjY5MjY2Li5jYmQ4MWZhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTQtMDEtMjMgIE1heCBWdWpvdmljICA8bXZ1am92aWNA
YWRvYmUuY29tPgorCisgICAgICAgIFJlbW92ZSBDU1MgQ3VzdG9tIEZpbHRlcnMgY29kZSBhbmQg
dGVzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEy
NzM4MgorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0ay5jcHA6CisgICAgICAgICogV2Vi
Q29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmg6CisgICAgICAgICogd2Via2l0
L3dlYmtpdHdlYnNldHRpbmdzLmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfc2V0dGluZ3NfY2xh
c3NfaW5pdCk6CisgICAgICAgICh3ZWJraXRfd2ViX3NldHRpbmdzX3NldF9wcm9wZXJ0eSk6Cisg
ICAgICAgICh3ZWJraXRfd2ViX3NldHRpbmdzX2dldF9wcm9wZXJ0eSk6CisgICAgICAgICogd2Vi
a2l0L3dlYmtpdHdlYnNldHRpbmdzcHJpdmF0ZS5oOgorICAgICAgICAqIHdlYmtpdC93ZWJraXR3
ZWJ2aWV3LmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld191cGRhdGVfc2V0dGluZ3MpOgor
ICAgICAgICAod2Via2l0X3dlYl92aWV3X3NldHRpbmdzX25vdGlmeSk6CisKIDIwMTQtMDEtMjIg
IENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtH
TElCXSBVc2UgR1VuaXF1ZVB0ciBpbnN0ZWFkIG9mIEdPd25QdHIKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0ay5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRH
dGsuY3BwCmluZGV4IGFmYTZhNWQuLjdhMzIwNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Z3RrL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0ay5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmNw
cApAQCAtNTc3LDEzICs1NzcsNiBAQCB2b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydEd0azo6c2V0
Q1NTUmVnaW9uc0VuYWJsZWQoV2ViS2l0V2ViVmlldyogd2ViVmlldywgYm9vbAogICAgIFJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0Q1NTUmVnaW9uc0VuYWJsZWQo
ZW5hYmxlZCk7CiB9CiAKLXZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRDU1NDdXN0
b21GaWx0ZXJFbmFibGVkKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcsIGJvb2wgZW5hYmxlZCkKLXsK
LSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAgY29yZSh3ZWJWaWV3KS0+c2V0dGluZ3MoKS5z
ZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGVuYWJsZWQpOwotI2VuZGlmCi19Ci0KIHZvaWQgRHVt
cFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRFeHBlcmltZW50YWxDb250ZW50U2VjdXJpdHlQb2xp
Y3lGZWF0dXJlc0VuYWJsZWQoYm9vbCBlbmFibGVkKQogewogI2lmIEVOQUJMRShDU1BfTkVYVCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJU
cmVlU3VwcG9ydEd0ay5oIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJl
bmRlclRyZWVTdXBwb3J0R3RrLmgKaW5kZXggNGZkNjI1NS4uNDAwYmEwZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3Rr
LmgKKysrIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVT
dXBwb3J0R3RrLmgKQEAgLTEwNCw3ICsxMDQsNiBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQg
c2V0UGFnZUNhY2hlU3VwcG9ydHNQbHVnaW5zKFdlYktpdFdlYlZpZXcqLCBib29sIGVuYWJsZWQp
OwogICAgIHN0YXRpYyB2b2lkIHNldENTU0dyaWRMYXlvdXRFbmFibGVkKFdlYktpdFdlYlZpZXcq
LCBib29sIGVuYWJsZWQpOwogICAgIHN0YXRpYyB2b2lkIHNldENTU1JlZ2lvbnNFbmFibGVkKFdl
YktpdFdlYlZpZXcqLCBib29sIGVuYWJsZWQpOwotICAgIHN0YXRpYyB2b2lkIHNldENTU0N1c3Rv
bUZpbHRlckVuYWJsZWQoV2ViS2l0V2ViVmlldyosIGJvb2wgZW5hYmxlZCk7CiAgICAgc3RhdGlj
IHZvaWQgc2V0RXhwZXJpbWVudGFsQ29udGVudFNlY3VyaXR5UG9saWN5RmVhdHVyZXNFbmFibGVk
KGJvb2wpOwogICAgIHN0YXRpYyB2b2lkIHNldFNlYW1sZXNzSUZyYW1lc0VuYWJsZWQoYm9vbCk7
CiAgICAgc3RhdGljIHZvaWQgc2V0U2hhZG93RE9NRW5hYmxlZChib29sKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5ncy5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3MuY3BwCmluZGV4IDNhY2VlYzAuLjI4
MTdlOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0
aW5ncy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdz
LmNwcApAQCAtMTIxLDcgKzEyMSw2IEBAIGVudW0gewogICAgIFBST1BfRU5BQkxFX1NNT09USF9T
Q1JPTExJTkcsCiAgICAgUFJPUF9NRURJQV9QTEFZQkFDS19SRVFVSVJFU19VU0VSX0dFU1RVUkUs
CiAgICAgUFJPUF9NRURJQV9QTEFZQkFDS19BTExPV1NfSU5MSU5FLAotICAgIFBST1BfRU5BQkxF
X0NTU19TSEFERVJTLAogICAgIFBST1BfRU5BQkxFX1JVTk5JTkdfT0ZfSU5TRUNVUkVfQ09OVEVO
VCwKICAgICBQUk9QX0VOQUJMRV9ESVNQTEFZX09GX0lOU0VDVVJFX0NPTlRFTlQsCiAgICAgUFJP
UF9FTkFCTEVfTUVESUFfU09VUkNFCkBAIC05ODcsMjUgKzk4Niw2IEBAIHN0YXRpYyB2b2lkIHdl
YmtpdF93ZWJfc2V0dGluZ3NfY2xhc3NfaW5pdChXZWJLaXRXZWJTZXR0aW5nc0NsYXNzKiBrbGFz
cykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGZsYWdzKSk7CiAKICAgICAvKioKLSAgICAqIFdlYktpdFdlYlNldHRpbmdzOmVuYWJsZS1j
c3Mtc2hhZGVyczoKLSAgICAqCi0gICAgKiBFbmFibGUgb3IgZGlzYWJsZSBzdXBwb3J0IGZvciBj
c3Mgc2hhZGVycyAoY3NzIGN1c3RvbSBmaWx0ZXJzKS4KLSAgICAqIEFjY2VsZXJhdGVkIGNvbXBv
c2l0aW5nIG5lZWRzIHRvIGJlIGVuYWJsZWQgYXQgY29tcGlsZSB0aW1lLCBidXQgbmVlZHMKLSAg
ICAqIG5vdCBiZSBlbmFibGVkIGF0IHJ1bnRpbWUuCi0gICAgKgotICAgICogU2VlIGFsc28gaHR0
cHM6Ly9kdmNzLnczLm9yZy9oZy9GWFRGL3Jhdy1maWxlL3RpcC9jdXN0b20vaW5kZXguaHRtbAot
ICAgICoKLSAgICAqIFNpbmNlOiAyLjAKLSAgICAqLwotICAgIGdfb2JqZWN0X2NsYXNzX2luc3Rh
bGxfcHJvcGVydHkoZ29iamVjdF9jbGFzcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFBST1BfRU5BQkxFX0NTU19TSEFERVJTLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZ19wYXJhbV9zcGVjX2Jvb2xlYW4oImVuYWJsZS1jc3Mtc2hhZGVycyIsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBf
KCJFbmFibGUgQ1NTIHNoYWRlcnMiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIF8oIldoZXRoZXIgdG8gZW5hYmxlIGNzcyBzaGFkZXJz
IiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBGQUxTRSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGZsYWdzKSk7Ci0KLSAgICAvKioKICAgICAqIFdlYktpdFdlYlNldHRpbmdz
OmVuYWJsZS1kaXNwbGF5LW9mLWluc2VjdXJlLWNvbnRlbnQ6CiAgICAgKgogICAgICogV2hldGhl
ciBwYWdlcyBsb2FkZWQgdmlhIEhUVFBTIHNob3VsZCBsb2FkIHN1YnJlc291cmNlcyBzdWNoIGFz
CkBAIC0xMjQwLDkgKzEyMjAsNiBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3NldHRpbmdzX3Nl
dF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BfaWQsIGNvbgogICAgIGNhc2Ug
UFJPUF9FTkFCTEVfU01PT1RIX1NDUk9MTElORzoKICAgICAgICAgcHJpdi0+ZW5hYmxlU21vb3Ro
U2Nyb2xsaW5nID0gZ192YWx1ZV9nZXRfYm9vbGVhbih2YWx1ZSk7CiAgICAgICAgIGJyZWFrOwot
ICAgIGNhc2UgUFJPUF9FTkFCTEVfQ1NTX1NIQURFUlM6Ci0gICAgICAgIHByaXYtPmVuYWJsZUNT
U1NoYWRlcnMgPSBnX3ZhbHVlX2dldF9ib29sZWFuKHZhbHVlKTsKLSAgICAgICAgYnJlYWs7CiAg
ICAgY2FzZSBQUk9QX01FRElBX1BMQVlCQUNLX1JFUVVJUkVTX1VTRVJfR0VTVFVSRToKICAgICAg
ICAgcHJpdi0+bWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgPSBnX3ZhbHVlX2dldF9i
b29sZWFuKHZhbHVlKTsKICAgICAgICAgYnJlYWs7CkBAIC0xNDMyLDkgKzE0MDksNiBAQCBzdGF0
aWMgdm9pZCB3ZWJraXRfd2ViX3NldHRpbmdzX2dldF9wcm9wZXJ0eShHT2JqZWN0KiBvYmplY3Qs
IGd1aW50IHByb3BfaWQsIEdWYQogICAgIGNhc2UgUFJPUF9FTkFCTEVfU01PT1RIX1NDUk9MTElO
RzoKICAgICAgICAgZ192YWx1ZV9zZXRfYm9vbGVhbih2YWx1ZSwgcHJpdi0+ZW5hYmxlU21vb3Ro
U2Nyb2xsaW5nKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBQUk9QX0VOQUJMRV9DU1NfU0hB
REVSUzoKLSAgICAgICAgZ192YWx1ZV9zZXRfYm9vbGVhbih2YWx1ZSwgcHJpdi0+ZW5hYmxlQ1NT
U2hhZGVycyk7Ci0gICAgICAgIGJyZWFrOwogICAgIGNhc2UgUFJPUF9NRURJQV9QTEFZQkFDS19S
RVFVSVJFU19VU0VSX0dFU1RVUkU6CiAgICAgICAgIGdfdmFsdWVfc2V0X2Jvb2xlYW4odmFsdWUs
IHByaXYtPm1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKTsKICAgICAgICAgYnJlYWs7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Nw
cml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vic2V0dGluZ3Nwcml2
YXRlLmgKaW5kZXggMmM2ZjMxNy4uYjVlNDZmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnNldHRpbmdzcHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJzZXR0aW5nc3ByaXZhdGUuaApAQCAtODMsNyArODMsNiBAQCBz
dHJ1Y3QgX1dlYktpdFdlYlNldHRpbmdzUHJpdmF0ZSB7CiAgICAgZ2Jvb2xlYW4gZW5hYmxlV2Vi
QXVkaW87CiAgICAgZ2Jvb2xlYW4gZW5hYmxlQWNjZWxlcmF0ZWRDb21wb3NpdGluZzsKICAgICBn
Ym9vbGVhbiBlbmFibGVTbW9vdGhTY3JvbGxpbmc7Ci0gICAgZ2Jvb2xlYW4gZW5hYmxlQ1NTU2hh
ZGVyczsKICAgICBnYm9vbGVhbiBtZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZTsKICAg
ICBnYm9vbGVhbiBtZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lOwogICAgIGdib29sZWFuIGVuYWJs
ZURpc3BsYXlPZkluc2VjdXJlQ29udGVudDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3Rr
L3dlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJ2aWV3LmNwcAppbmRleCBiYmZjMjk5Li5lYWRhYjA1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vidmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9n
dGsvd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwCkBAIC0zNjIxLDEwICszNjIxLDYgQEAgc3RhdGlj
IHZvaWQgd2Via2l0X3dlYl92aWV3X3VwZGF0ZV9zZXR0aW5ncyhXZWJLaXRXZWJWaWV3KiB3ZWJW
aWV3KQogICAgIGNvcmVTZXR0aW5ncy5zZXRTY3JvbGxBbmltYXRvckVuYWJsZWQoc2V0dGluZ3NQ
cml2YXRlLT5lbmFibGVTbW9vdGhTY3JvbGxpbmcpOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NT
X1NIQURFUlMpCi0gICAgY29yZVNldHRpbmdzLnNldENTU0N1c3RvbUZpbHRlckVuYWJsZWQoc2V0
dGluZ3NQcml2YXRlLT5lbmFibGVDU1NTaGFkZXJzKTsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKENT
U19SRUdJT05TKQogICAgIFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZl
YXR1cmVzKCkuc2V0Q1NTUmVnaW9uc0VuYWJsZWQodHJ1ZSk7CiAjZW5kaWYKQEAgLTM3NzYsMTEg
KzM3NzIsNiBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3ZpZXdfc2V0dGluZ3Nfbm90aWZ5KFdl
YktpdFdlYlNldHRpbmdzKiB3ZWJTZXR0aW5ncywgR1BhcgogICAgICAgICBzZXR0aW5ncy5zZXRT
Y3JvbGxBbmltYXRvckVuYWJsZWQoZ192YWx1ZV9nZXRfYm9vbGVhbigmdmFsdWUpKTsKICNlbmRp
ZgogCi0jaWYgRU5BQkxFKENTU19TSEFERVJTKQotICAgIGVsc2UgaWYgKG5hbWUgPT0gZ19pbnRl
cm5fc3RyaW5nKCJlbmFibGUtY3NzLXNoYWRlcnMiKSkKLSAgICAgICAgc2V0dGluZ3Muc2V0Q1NT
Q3VzdG9tRmlsdGVyRW5hYmxlZChnX3ZhbHVlX2dldF9ib29sZWFuKCZ2YWx1ZSkpOwotI2VuZGlm
Ci0KICNpZiBFTkFCTEUoTUVESUFfU09VUkNFKQogICAgIGVsc2UgaWYgKG5hbWUgPT0gZ19pbnRl
cm5fc3RyaW5nKCJlbmFibGUtbWVkaWFzb3VyY2UiKSkKICAgICAgICAgc2V0dGluZ3Muc2V0TWVk
aWFTb3VyY2VFbmFibGVkKGdfdmFsdWVfZ2V0X2Jvb2xlYW4oJnZhbHVlKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VM
b2cKaW5kZXggNzRiMTUwZi4uOWFhYTNiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4
IEBACisyMDE0LTAxLTIzICBNYXggVnVqb3ZpYyAgPG12dWpvdmljQGFkb2JlLmNvbT4KKworICAg
ICAgICBSZW1vdmUgQ1NTIEN1c3RvbSBGaWx0ZXJzIGNvZGUgYW5kIHRlc3RzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjczODIKKworICAgICAgICBS
ZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9GZWF0
dXJlRGVmaW5lcy54Y2NvbmZpZzoKKyAgICAgICAgKiBXZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlz
UHJpdmF0ZS5oOgorICAgICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW06CisgICAgICAg
ICgrW1dlYlByZWZlcmVuY2VzIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYlBy
ZWZlcmVuY2VzUHJpdmF0ZS5oOgorICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAg
ICAgKC1bV2ViVmlldyBfcHJlZmVyZW5jZXNDaGFuZ2VkOl0pOgorCiAyMDE0LTAxLTIyICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIENT
UzNfVEVYVF9ERUNPUkFUSU9OIGRlZmluZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
Q29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcgYi9Tb3VyY2UvV2ViS2l0L21h
Yy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwppbmRleCAxZDI4M2ExLi41
YTNmNmE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0
dXJlRGVmaW5lcy54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0aW9u
cy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNTAsNyArNTAsNiBAQCBFTkFCTEVfQ1NTX0ZJ
TFRFUlMgPSBFTkFCTEVfQ1NTX0ZJTFRFUlM7CiBFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9O
ID0gOwogRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OID0gOwogRU5BQkxFX0NTU19SRUdJT05T
ID0gRU5BQkxFX0NTU19SRUdJT05TOwotRU5BQkxFX0NTU19TSEFERVJTID0gRU5BQkxFX0NTU19T
SEFERVJTOwogRU5BQkxFX0NTU19TSEFQRVMgPSBFTkFCTEVfQ1NTX1NIQVBFUzsKIEVOQUJMRV9D
U1NfU1RJQ0tZX1BPU0lUSU9OID0gRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT047CiBFTkFCTEVf
Q1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEID0gRU5BQkxFX0NTU19UUkFOU0ZP
Uk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRDsKQEAgLTE5Nyw0ICsxOTYsNCBAQCBFTkFCTEVfWFNM
VCA9IEVOQUJMRV9YU0xUOwogRU5BQkxFX0ZUTF9KSVQgPSA7CiBFTkFCTEVfTExJTlRfQ19MT09Q
ID0gOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxF
X0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NS
T0xMSU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5B
QkxFX0NBTlZBU19QQVRIKSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxf
TUVTU0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9O
X0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURB
UFRBVElPTikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAk
KEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVU
SU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5BQkxF
X0NTU19TSEFQRVMpICQoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04pICQoRU5BQkxFX0NTU19U
UkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCkgJChFTkFCTEVfQ1NTM19DT05ESVRJT05B
TF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9CUkVB
SykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFO
RExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1F
TlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVO
VCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FE
KSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxFX1JF
R0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUFf
VjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxF
X0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikg
JChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hf
RFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxF
U1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJM
RV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVU
X1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJ
TUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9U
SU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVO
QUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAk
KEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElG
SUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FD
WV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENI
KSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChFTkFC
TEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9NRVRF
Ul9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKSAk
KEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykg
JChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChF
TkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkg
JChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxFX1BV
QkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFU
SU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9O
X01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19E
T00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lTKSAk
KEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFCTEVf
U1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxF
X1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVE9V
Q0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJTRUxF
Q1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1ZJ
RVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFUSU9O
UykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJf
U09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVf
WEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxFX0xM
SU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CitGRUFUVVJF
X0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJE
X0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJM
RV9CTE9CKSAkKEVOQUJMRV9DQUNIRV9QQVJUSVRJT05JTkcpICQoRU5BQkxFX0NBTlZBU19QQVRI
KSAkKEVOQUJMRV9DQU5WQVNfUFJPWFkpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVO
QUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJM
RV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFC
TEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfSU1B
R0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9D
U1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQVBFUykgJChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJ
VElPTikgJChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19VTlBSRUZJWEVEKSAkKEVO
QUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxF
X0NTUzNfVEVYVF9MSU5FX0JSRUFLKSAkKEVOQUJMRV9DVVJTT1JfVklTSUJJTElUWSkgJChFTkFC
TEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKSAkKEVOQUJMRV9EQVNIQk9BUkRfU1VQUE9SVCkgJChF
TkFCTEVfREFUQUxJU1RfRUxFTUVOVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChF
TkFCTEVfREVUQUlMU19FTEVNRU5UKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5B
QkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5BQkxFX0RPTTRfRVZFTlRTX0NPTlNUUlVDVE9SKSAk
KEVOQUJMRV9EUkFHR0FCTEVfUkVHSU9OKSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUEpICQoRU5B
QkxFX0VOQ1JZUFRFRF9NRURJQV9WMikgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRk9OVF9M
T0FEX0VWRU5UUykgJChFTkFCTEVfRlVMTFNDUkVFTl9BUEkpICQoRU5BQkxFX0dBTUVQQUQpICQo
RU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9ISURERU5fUEFHRV9ET01fVElNRVJfVEhST1RU
TElORykgJChFTkFCTEVfSElHSF9EUElfQ0FOVkFTKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQo
RU5BQkxFX0lGUkFNRV9TRUFNTEVTUykgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFC
TEVfSU5ESUVfVUkpICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9D
T0xPUikgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUl9QT1BPVkVSKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX0RBVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVfSU5DT01QTEVURSkgJChFTkFC
TEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFC
TEVfSU9TX0FJUlBMQVkpICQoRU5BQkxFX0lPU19URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX0pB
VkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTKSAk
KEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVG
SVhFUykgJChFTkFCTEVfTEVHQUNZX1dFQl9BVURJTykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQo
RU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfQ09O
VFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJ
U1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01IVE1MKSAkKEVOQUJMRV9N
T1VTRV9DVVJTT1JfU0NBTEUpICQoRU5BQkxFX05BVklHQVRPUl9DT05URU5UX1VUSUxTKSAkKEVO
QUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJM
RV9QREZLSVRfUExVR0lOKSAkKEVOQUJMRV9QTFVHSU5fUFJPWFlfRk9SX1ZJREVPKSAkKEVOQUJM
RV9QUk9HUkVTU19FTEVNRU5UKSAkKEVOQUJMRV9QUk9NSVNFUykgJChFTkFCTEVfUFJPWElNSVRZ
X0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChF
TkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1JFTU9URV9JTlNQRUNUT1Ip
ICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFfUVVFUlkpICQoRU5BQkxFX1NDUklQVEVEX1NQRUVD
SCkgJChFTkFCTEVfU0hBRE9XX0RPTSkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxF
X1NQRUVDSF9TWU5USEVTSVMpICQoRU5BQkxFX1NRTF9EQVRBQkFTRSkgJChFTkFCTEVfU1VCUElY
RUxfTEFZT1VUKSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxF
X1NWR19GT05UUykgJChFTkFCTEVfVEVNUExBVEVfRUxFTUVOVCkgJChFTkFCTEVfVEVYVF9BVVRP
U0laSU5HKSAkKEVOQUJMRV9UT1VDSF9FVkVOVFMpICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElO
RykgJChFTkFCTEVfVVNFUlNFTEVDVF9BTEwpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSURF
T19UUkFDSykgJChFTkFCTEVfVklFV19NT0RFX0NTU19NRURJQSkgJChFTkFCTEVfV0VCR0wpICQo
RU5BQkxFX1dFQl9BTklNQVRJT05TKSAkKEVOQUJMRV9XRUJfQVVESU8pICQoRU5BQkxFX1dFQl9S
RVBMQVkpICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJM
RV9XT1JLRVJTKSAkKEVOQUJMRV9YSFJfVElNRU9VVCkgJChFTkFCTEVfWFNMVCkgJChFTkFCTEVf
RlRMX0pJVCkgJChFTkFCTEVfTExJTlRfQ19MT09QKSAkKEZFQVRVUkVfREVGSU5FU18kKFBMQVRG
T1JNX05BTUUpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJl
ZmVyZW5jZUtleXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZl
cmVuY2VLZXlzUHJpdmF0ZS5oCmluZGV4IDg4YTQ0ZmQuLjZmNTYzOGIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmgKKysrIGIv
U291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaApAQCAt
MTAwLDcgKzEwMCw2IEBACiAjZGVmaW5lIFdlYktpdEFjY2VsZXJhdGVkRHJhd2luZ0VuYWJsZWRQ
cmVmZXJlbmNlS2V5IEAiV2ViS2l0QWNjZWxlcmF0ZWREcmF3aW5nRW5hYmxlZCIKICNkZWZpbmUg
V2ViS2l0Q2FudmFzVXNlc0FjY2VsZXJhdGVkRHJhd2luZ1ByZWZlcmVuY2VLZXkgQCJXZWJLaXRD
YW52YXNVc2VzQWNjZWxlcmF0ZWREcmF3aW5nIgogI2RlZmluZSBXZWJLaXRBY2NlbGVyYXRlZENv
bXBvc2l0aW5nRW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRBY2NlbGVyYXRlZENvbXBvc2l0
aW5nRW5hYmxlZCIKLSNkZWZpbmUgV2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZFByZWZlcmVu
Y2VLZXkgQCJXZWJLaXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkIgogI2RlZmluZSBXZWJLaXRDU1NS
ZWdpb25zRW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRDU1NSZWdpb25zRW5hYmxlZCIKICNk
ZWZpbmUgV2ViS2l0Q1NTQ29tcG9zaXRpbmdFbmFibGVkUHJlZmVyZW5jZUtleSBAIldlYktpdENT
U0NvbXBvc2l0aW5nRW5hYmxlZCIKICNkZWZpbmUgV2ViS2l0Q1NTR3JpZExheW91dEVuYWJsZWRQ
cmVmZXJlbmNlS2V5IEAiV2ViS2l0Q1NTR3JpZExheW91dEVuYWJsZWQiCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tIGIvU291cmNlL1dlYktp
dC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbQppbmRleCA1NmRmZGMyLi4yMTQ4ZGI4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KQEAgLTQ4Myw4
ICs0ODMsNiBAQCBwdWJsaWM6CiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpOT10s
ICAgV2ViS2l0SmF2YVNjcmlwdENhbkFjY2Vzc0NsaXBib2FyZFByZWZlcmVuY2VLZXksCiAgICAg
ICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpZRVNdLCAgV2ViS2l0WFNTQXVkaXRvckVuYWJs
ZWRQcmVmZXJlbmNlS2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwg
IFdlYktpdEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkUHJlZmVyZW5jZUtleSwKLSAgICAg
ICAgLy8gQ1NTIFNoYWRlcnMgYWxzbyBuZWVkIFdlYkdMIGVuYWJsZWQgKHdoaWNoIGlzIGRpc2Fi
bGVkIGJ5IGRlZmF1bHQpLCBzbyB3ZSBjYW4ga2VlcCBpdCBlbmFibGVkIGZvciBub3cuCi0gICAg
ICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpZRVNdLCBXZWJLaXRDU1NDdXN0b21GaWx0ZXJF
bmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOllF
U10sIFdlYktpdENTU1JlZ2lvbnNFbmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVt
YmVyIG51bWJlcldpdGhCb29sOllFU10sIFdlYktpdENTU0NvbXBvc2l0aW5nRW5hYmxlZFByZWZl
cmVuY2VLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpOT10sICBXZWJLaXRD
U1NHcmlkTGF5b3V0RW5hYmxlZFByZWZlcmVuY2VLZXksCkBAIC0xODc0LDE2ICsxODcyLDYgQEAg
c3RhdGljIE5TU3RyaW5nICpjbGFzc0lCQ3JlYXRvcklEID0gbmlsOwogICAgIFtzZWxmIF9zZXRC
b29sVmFsdWU6ZW5hYmxlZCBmb3JLZXk6V2ViS2l0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJs
ZWRQcmVmZXJlbmNlS2V5XTsKIH0KIAotLSAoQk9PTCljc3NDdXN0b21GaWx0ZXJFbmFibGVkCi17
Ci0gICAgcmV0dXJuIFtzZWxmIF9ib29sVmFsdWVGb3JLZXk6V2ViS2l0Q1NTQ3VzdG9tRmlsdGVy
RW5hYmxlZFByZWZlcmVuY2VLZXldOwotfQotCi0tICh2b2lkKXNldENTU0N1c3RvbUZpbHRlckVu
YWJsZWQ6KEJPT0wpZW5hYmxlZAotewotICAgIFtzZWxmIF9zZXRCb29sVmFsdWU6ZW5hYmxlZCBm
b3JLZXk6V2ViS2l0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZFByZWZlcmVuY2VLZXldOwotfQotCiAt
IChCT09MKWNzc1JlZ2lvbnNFbmFibGVkCiB7CiAgICAgcmV0dXJuIFtzZWxmIF9ib29sVmFsdWVG
b3JLZXk6V2ViS2l0Q1NTUmVnaW9uc0VuYWJsZWRQcmVmZXJlbmNlS2V5XTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmggYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCmluZGV4IGMxMjkx
OWYuLjc2MTNlNzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJl
ZmVyZW5jZXNQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVm
ZXJlbmNlc1ByaXZhdGUuaApAQCAtMTk5LDkgKzE5OSw2IEBAIGV4dGVybiBOU1N0cmluZyAqV2Vi
UHJlZmVyZW5jZXNDYWNoZU1vZGVsQ2hhbmdlZEludGVybmFsTm90aWZpY2F0aW9uOwogLSAoQk9P
TClhY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZDsKIC0gKHZvaWQpc2V0QWNjZWxlcmF0ZWRD
b21wb3NpdGluZ0VuYWJsZWQ6KEJPT0wpZW5hYmxlZDsKIAotLSAoQk9PTCljc3NDdXN0b21GaWx0
ZXJFbmFibGVkOwotLSAodm9pZClzZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkOihCT09MKWVuYWJs
ZWQ7Ci0KIC0gKEJPT0wpY3NzUmVnaW9uc0VuYWJsZWQ7CiAtICh2b2lkKXNldENTU1JlZ2lvbnNF
bmFibGVkOihCT09MKWVuYWJsZWQ7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YlZpZXcvV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpp
bmRleCA1ZmNlY2VhLi5mMWQzODc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1t
CkBAIC0yMzIzLDkgKzIzMjMsNiBAQCBzdGF0aWMgYm9vbCBuZWVkc1NlbGZSZXRhaW5XaGlsZUxv
YWRpbmdRdWlyaygpCiAgICAgc2V0dGluZ3Muc2V0RnJhbWVGbGF0dGVuaW5nRW5hYmxlZChbcHJl
ZmVyZW5jZXMgaXNGcmFtZUZsYXR0ZW5pbmdFbmFibGVkXSk7CiAgICAgc2V0dGluZ3Muc2V0U3Bh
dGlhbE5hdmlnYXRpb25FbmFibGVkKFtwcmVmZXJlbmNlcyBpc1NwYXRpYWxOYXZpZ2F0aW9uRW5h
YmxlZF0pOwogICAgIHNldHRpbmdzLnNldFBhZ2luYXRlRHVyaW5nTGF5b3V0RW5hYmxlZChbcHJl
ZmVyZW5jZXMgcGFnaW5hdGVEdXJpbmdMYXlvdXRFbmFibGVkXSk7Ci0jaWYgRU5BQkxFKENTU19T
SEFERVJTKQotICAgIHNldHRpbmdzLnNldENTU0N1c3RvbUZpbHRlckVuYWJsZWQoW3ByZWZlcmVu
Y2VzIGNzc0N1c3RvbUZpbHRlckVuYWJsZWRdKTsKLSNlbmRpZgogICAgIFJ1bnRpbWVFbmFibGVk
RmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0Q1NTUmVnaW9uc0VuYWJsZWQoW3ByZWZlcmVu
Y2VzIGNzc1JlZ2lvbnNFbmFibGVkXSk7CiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hh
cmVkRmVhdHVyZXMoKS5zZXRDU1NDb21wb3NpdGluZ0VuYWJsZWQoW3ByZWZlcmVuY2VzIGNzc0Nv
bXBvc2l0aW5nRW5hYmxlZF0pOwogI2lmIEVOQUJMRShXRUJfQVVESU8pCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJLaXQyL0NNYWtlTGlzdHMu
dHh0CmluZGV4IGIxN2Y2Y2MuLjNhZTRjNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NN
YWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQyL0NNYWtlTGlzdHMudHh0CkBAIC0yNzAs
NyArMjcwLDYgQEAgc2V0KFdlYktpdDJfU09VUkNFUwogCiAgICAgU2hhcmVkL0Nvb3JkaW5hdGVk
R3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLmNwcAogICAgIFNoYXJl
ZC9Db29yZGluYXRlZEdyYXBoaWNzL1dlYkNvb3JkaW5hdGVkU3VyZmFjZS5jcHAKLSAgICBTaGFy
ZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkuY3BwCiAK
ICAgICBTaGFyZWQvRG93bmxvYWRzL0Rvd25sb2FkLmNwcAogICAgIFNoYXJlZC9Eb3dubG9hZHMv
RG93bmxvYWRBdXRoZW50aWNhdGlvbkNsaWVudC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAwMjY1ZmRlLi5m
MzEwMjA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIwMTQtMDEtMjMgIE1heCBWdWpv
dmljICA8bXZ1am92aWNAYWRvYmUuY29tPgorCisgICAgICAgIFJlbW92ZSBDU1MgQ3VzdG9tIEZp
bHRlcnMgY29kZSBhbmQgdGVzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEyNzM4MgorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4K
KworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Zl
YXR1cmVEZWZpbmVzLnhjY29uZmlnOgorICAgICAgICAqIFNoYXJlZC9Db29yZGluYXRlZEdyYXBo
aWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5jcHA6CisgICAgICAgIChJUEM6
OkFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6RmlsdGVyT3BlcmF0aW9ucz46OmVuY29kZSk6CisgICAg
ICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6RmlsdGVyT3BlcmF0aW9ucz46OmRlY29k
ZSk6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Q29vcmRpbmF0ZWRHcmFwaGljc1N0YXRl
Pjo6ZW5jb2RlKToKKyAgICAgICAgKElQQzo6QXJndW1lbnRDb2RlcjxDb29yZGluYXRlZEdyYXBo
aWNzU3RhdGU+OjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNz
L0Nvb3JkaW5hdGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5oOgorICAgICAgICAqIFNoYXJlZC9D
b29yZGluYXRlZEdyYXBoaWNzL1dlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS5jcHA6IFJlbW92
ZWQuCisgICAgICAgICogU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViQ3VzdG9tRmlsdGVy
UHJvZ3JhbVByb3h5Lmg6IFJlbW92ZWQuCisgICAgICAgICogU2hhcmVkL1dlYkNvcmVBcmd1bWVu
dENvZGVycy5jcHA6CisgICAgICAgIChJUEM6OmVuY29kZUZpbHRlck9wZXJhdGlvbik6CisgICAg
ICAgIChJUEM6OmRlY29kZUZpbHRlck9wZXJhdGlvbik6CisgICAgICAgICogU2hhcmVkL1dlYlBy
ZWZlcmVuY2VzU3RvcmUuaDoKKyAgICAgICAgKiBTaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVRy
YW5zYWN0aW9uLm1tOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXllclRyZWVUZXh0U3RyZWFt
OjpvcGVyYXRvcjw8KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5j
cHA6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmg6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlOjpvdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9y
VGVzdFJ1bm5lcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3Jh
cGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmNwcDoKKyAgICAgICAgKFdlYktpdDo6Q29v
cmRpbmF0ZWRMYXllclRyZWVIb3N0Ojp+Q29vcmRpbmF0ZWRMYXllclRyZWVIb3N0KToKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExh
eWVyVHJlZUhvc3QuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVwZGF0ZVByZWZlcmVuY2VzKToKKyAgICAgICAg
KiBtYWMvV2ViS2l0Mi5vcmRlcjoKKwogMjAxNC0wMS0yMyAgVGltIEhvcnRvbiAgPHRpbW90aHlf
aG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBbV0syXSBXS0NvbnRlbnRWaWV3IGhh
cyBhIGJsYWNrIGJhY2tncm91bmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NvbmZpZ3Vy
YXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYktpdDIvQ29uZmlndXJh
dGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggMWQyODNhMS4uNWEzZjZhOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNj
b25maWcKKysrIGIvU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMu
eGNjb25maWcKQEAgLTUwLDcgKzUwLDYgQEAgRU5BQkxFX0NTU19GSUxURVJTID0gRU5BQkxFX0NT
U19GSUxURVJTOwogRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTiA9IDsKIEVOQUJMRV9DU1Nf
SU1BR0VfUkVTT0xVVElPTiA9IDsKIEVOQUJMRV9DU1NfUkVHSU9OUyA9IEVOQUJMRV9DU1NfUkVH
SU9OUzsKLUVOQUJMRV9DU1NfU0hBREVSUyA9IEVOQUJMRV9DU1NfU0hBREVSUzsKIEVOQUJMRV9D
U1NfU0hBUEVTID0gRU5BQkxFX0NTU19TSEFQRVM7CiBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElP
TiA9IEVOQUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9OOwogRU5BQkxFX0NTU19UUkFOU0ZPUk1TX0FO
SU1BVElPTlNfVU5QUkVGSVhFRCA9IEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1VO
UFJFRklYRUQ7CkBAIC0xOTcsNCArMTk2LDQgQEAgRU5BQkxFX1hTTFQgPSBFTkFCTEVfWFNMVDsK
IEVOQUJMRV9GVExfSklUID0gOwogRU5BQkxFX0xMSU5UX0NfTE9PUCA9IDsKIAotRkVBVFVSRV9E
RUZJTkVTID0gJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9D
QU5WQVMpICQoRU5BQkxFX0FDQ0VMRVJBVEVEX09WRVJGTE9XX1NDUk9MTElORykgJChFTkFCTEVf
QkxPQikgJChFTkFCTEVfQ0FDSEVfUEFSVElUSU9OSU5HKSAkKEVOQUJMRV9DQU5WQVNfUEFUSCkg
JChFTkFCTEVfQ0FOVkFTX1BST1hZKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFC
TEVfQ1NQX05FWFQpICQoRU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVf
Q1NTX0NPTVBPU0lUSU5HKSAkKEVOQUJMRV9DU1NfREVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxF
X0NTU19FWENMVVNJT05TKSAkKEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX0lNQUdF
X09SSUVOVEFUSU9OKSAkKEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NT
X1JFR0lPTlMpICQoRU5BQkxFX0NTU19TSEFERVJTKSAkKEVOQUJMRV9DU1NfU0hBUEVTKSAkKEVO
QUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9OKSAkKEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJ
T05TX1VOUFJFRklYRUQpICQoRU5BQkxFX0NTUzNfQ09ORElUSU9OQUxfUlVMRVMpICQoRU5BQkxF
X0NTUzNfVEVYVCkgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNP
Ul9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RB
U0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRB
X1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklD
RV9PUklFTlRBVElPTikgJChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFCTEVfRE9NNF9F
VkVOVFNfQ09OU1RSVUNUT1IpICQoRU5BQkxFX0RSQUdHQUJMRV9SRUdJT04pICQoRU5BQkxFX0VO
Q1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxU
RVJTKSAkKEVOQUJMRV9GT05UX0xPQURfRVZFTlRTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkg
JChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0hJRERFTl9Q
QUdFX0RPTV9USU1FUl9USFJPVFRMSU5HKSAkKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpICQoRU5B
QkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSUZSQU1FX1NFQU1MRVNTKSAkKEVOQUJMRV9JTkRF
WEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRJRV9VSSkgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9W
RVIpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElN
RV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxF
X0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JT1NfQUlSUExBWSkgJChFTkFCTEVfSU9TX1RFWFRfQVVU
T1NJWklORykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTEVHQUNZX0NT
U19WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TKSAkKEVOQUJM
RV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElPKSAkKEVO
QUJMRV9MRVRURVJQUkVTUykgJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfTUFUSE1M
KSAkKEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpICQoRU5BQkxFX01FRElBX1NPVVJDRSkg
JChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFC
TEVfTUhUTUwpICQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSkgJChFTkFCTEVfTkFWSUdBVE9S
X0NPTlRFTlRfVVRJTFMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklT
SUJJTElUWV9BUEkpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BMVUdJTl9QUk9Y
WV9GT1JfVklERU8pICQoRU5BQkxFX1BST0dSRVNTX0VMRU1FTlQpICQoRU5BQkxFX1BST01JU0VT
KSAkKEVOQUJMRV9QUk9YSU1JVFlfRVZFTlRTKSAkKEVOQUJMRV9QVUJMSUNfU1VGRklYX0xJU1Qp
ICQoRU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFC
TEVfUkVNT1RFX0lOU1BFQ1RPUikgJChFTkFCTEVfUkVTT0xVVElPTl9NRURJQV9RVUVSWSkgJChF
TkFCTEVfU0NSSVBURURfU1BFRUNIKSAkKEVOQUJMRV9TSEFET1dfRE9NKSAkKEVOQUJMRV9TSEFS
RURfV09SS0VSUykgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFC
QVNFKSAkKEVOQUJMRV9TVUJQSVhFTF9MQVlPVVQpICQoRU5BQkxFX1NVQlRMRV9DUllQVE8pICQo
RU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5U
KSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFC
TEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVf
VklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElB
KSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FOSU1BVElPTlMpICQoRU5BQkxFX1dFQl9B
VURJTykgJChFTkFCTEVfV0VCX1JFUExBWSkgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxF
X1dFQl9USU1JTkcpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVO
QUJMRV9YU0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRkVB
VFVSRV9ERUZJTkVTXyQoUExBVEZPUk1fTkFNRSkpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFC
TEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxF
X0FDQ0VMRVJBVEVEX09WRVJGTE9XX1NDUk9MTElORykgJChFTkFCTEVfQkxPQikgJChFTkFCTEVf
Q0FDSEVfUEFSVElUSU9OSU5HKSAkKEVOQUJMRV9DQU5WQVNfUEFUSCkgJChFTkFCTEVfQ0FOVkFT
X1BST1hZKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ1NQX05FWFQpICQo
RU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5H
KSAkKEVOQUJMRV9DU1NfREVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NTU19FWENMVVNJT05T
KSAkKEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OKSAk
KEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQoRU5B
QkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04pICQoRU5BQkxFX0NT
U19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRCkgJChFTkFCTEVfQ1NTM19DT05ESVRJ
T05BTF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DU1MzX1RFWFRfTElORV9C
UkVBSykgJChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVf
SEFORExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VM
RU1FTlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxF
TUVOVCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBM
T0FEKSAkKEVOQUJMRV9ET000X0VWRU5UU19DT05TVFJVQ1RPUikgJChFTkFCTEVfRFJBR0dBQkxF
X1JFR0lPTikgJChFTkFCTEVfRU5DUllQVEVEX01FRElBKSAkKEVOQUJMRV9FTkNSWVBURURfTUVE
SUFfVjIpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5B
QkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElP
TikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJ
R0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VB
TUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lORElFX1VJKSAkKEVO
QUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lO
UFVUX1RZUEVfQ09MT1JfUE9QT1ZFUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJM
RV9JTlBVVF9UWVBFX0RBVEVUSU1FX0lOQ09NUExFVEUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFU
RVRJTUVMT0NBTCkgJChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQ
RV9USU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0lPU19BSVJQTEFZKSAk
KEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VS
KSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05P
VElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xF
R0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xFVFRFUlBSRVNTKSAkKEVOQUJMRV9MSU5LX1BSRUZF
VENIKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCkgJChF
TkFCTEVfTUVESUFfU09VUkNFKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9N
RVRFUl9FTEVNRU5UKSAkKEVOQUJMRV9NSFRNTCkgJChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxF
KSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9O
UykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUERGS0lUX1BMVUdJTikg
JChFTkFCTEVfUExVR0lOX1BST1hZX0ZPUl9WSURFTykgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVO
VCkgJChFTkFCTEVfUFJPTUlTRVMpICQoRU5BQkxFX1BST1hJTUlUWV9FVkVOVFMpICQoRU5BQkxF
X1BVQkxJQ19TVUZGSVhfTElTVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5J
TUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVU
SU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURP
V19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUEVFQ0hfU1lOVEhFU0lT
KSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCkgJChFTkFC
TEVfU1VCVExFX0NSWVBUTykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5B
QkxFX1RFTVBMQVRFX0VMRU1FTlQpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVf
VE9VQ0hfRVZFTlRTKSAkKEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcpICQoRU5BQkxFX1VTRVJT
RUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChFTkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxF
X1ZJRVdfTU9ERV9DU1NfTUVESUEpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQU5JTUFU
SU9OUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9X
RUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFC
TEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpICQoRU5BQkxFX0ZUTF9KSVQpICQoRU5BQkxF
X0xMSU5UX0NfTE9PUCkgJChGRUFUVVJFX0RFRklORVNfJChQTEFURk9STV9OQU1FKSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGlu
YXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nv
b3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJzLmNwcApp
bmRleCAzMDczZGNlLi45MjhmZDcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
Q29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5h
dGVkR3JhcGhpY3NBcmd1bWVudENvZGVycy5jcHAKQEAgLTU0LDIyICs1NCw2IEBACiAjaW5jbHVk
ZSA8V2ViQ29yZS9GaWx0ZXJPcGVyYXRpb25zLmg+CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1Nf
U0hBREVSUykKLSNpbmNsdWRlICJXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkuaCIKLSNpbmNs
dWRlIDxXZWJDb3JlL0Nvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmg+Ci0jaW5jbHVk
ZSA8V2ViQ29yZS9Db29yZGluYXRlZEN1c3RvbUZpbHRlclByb2dyYW0uaD4KLSNpbmNsdWRlIDxX
ZWJDb3JlL0N1c3RvbUZpbHRlckFycmF5UGFyYW1ldGVyLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9D
dXN0b21GaWx0ZXJDb2xvclBhcmFtZXRlci5oPgotI2luY2x1ZGUgPFdlYkNvcmUvQ3VzdG9tRmls
dGVyQ29uc3RhbnRzLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9DdXN0b21GaWx0ZXJOdW1iZXJQYXJh
bWV0ZXIuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRlck9wZXJhdGlvbi5oPgotI2lu
Y2x1ZGUgPFdlYkNvcmUvQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oPgotI2luY2x1ZGUgPFdlYkNvcmUv
Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0N1c3RvbUZpbHRl
clRyYW5zZm9ybVBhcmFtZXRlci5oPgotI2luY2x1ZGUgPFdlYkNvcmUvQ3VzdG9tRmlsdGVyVmFs
aWRhdGVkUHJvZ3JhbS5oPgotI2luY2x1ZGUgPFdlYkNvcmUvVmFsaWRhdGVkQ3VzdG9tRmlsdGVy
T3BlcmF0aW9uLmg+Ci0jZW5kaWYKLQogI2lmIFVTRShHUkFQSElDU19TVVJGQUNFKQogI2luY2x1
ZGUgPFdlYkNvcmUvR3JhcGhpY3NTdXJmYWNlLmg+CiAjZW5kaWYKQEAgLTExMCw2NyArOTQsNiBA
QCB2b2lkIEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6RmlsdGVyT3BlcmF0aW9ucz46OmVuY29kZShB
cmd1bWVudEVuY29kZXImIGVuY29kZXIsCiAgICAgICAgICAgICBBcmd1bWVudENvZGVyPENvbG9y
Pjo6ZW5jb2RlKGVuY29kZXIsIHNoYWRvdy0+Y29sb3IoKSk7CiAgICAgICAgICAgICBicmVhazsK
ICAgICAgICAgfQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICAgICAgY2FzZSBGaWx0ZXJP
cGVyYXRpb246OkNVU1RPTToKLSAgICAgICAgICAgIC8vIEN1c3RvbSBGaWx0ZXJzIGFyZSBjb252
ZXJ0ZWQgdG8gVkFMSURBVEVEX0NVU1RPTSBiZWZvcmUgcmVhY2hpbmcgdGhpcyBwb2ludC4KLSAg
ICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAg
ICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpWQUxJREFURURfQ1VTVE9NOiB7Ci0gICAgICAgICAg
ICBjb25zdCBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVyYXRpb24qIGN1c3RvbU9wZXJhdGlvbiA9
IHN0YXRpY19jYXN0PGNvbnN0IFZhbGlkYXRlZEN1c3RvbUZpbHRlck9wZXJhdGlvbio+KGZpbHRl
cik7Ci0gICAgICAgICAgICBBU1NFUlQoY3VzdG9tT3BlcmF0aW9uLT52YWxpZGF0ZWRQcm9ncmFt
KCkpOwotICAgICAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0+IHBy
b2dyYW0gPSBjdXN0b21PcGVyYXRpb24tPnZhbGlkYXRlZFByb2dyYW0oKTsKLSAgICAgICAgICAg
IEFTU0VSVChwcm9ncmFtLT5pc0luaXRpYWxpemVkKCkpOwotICAgICAgICAgICAgQVNTRVJUKHBy
b2dyYW0tPnBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKCkpOwotICAgICAgICAgICAgQVNTRVJUKHBy
b2dyYW0tPnBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKCktPmNsaWVudCgpKTsKLSAgICAgICAgICAg
IFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSogY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5ID0g
c3RhdGljX2Nhc3Q8V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Kj4ocHJvZ3JhbS0+cGxhdGZv
cm1Db21waWxlZFByb2dyYW0oKS0+Y2xpZW50KCkpOwotICAgICAgICAgICAgY29uc3QgQ3VzdG9t
RmlsdGVyUHJvZ3JhbUluZm8mIHByb2dyYW1JbmZvID0gcHJvZ3JhbS0+cHJvZ3JhbUluZm8oKTsK
LSAgICAgICAgICAgIGVuY29kZXIuZW5jb2RlRW51bShwcm9ncmFtSW5mby5tZXNoVHlwZSgpKTsK
LSAgICAgICAgICAgIGVuY29kZXIgPDwgY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LT5pZCgpOwot
ICAgICAgICAgICAgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyTGlzdCBwYXJhbWV0ZXJzID0gY3VzdG9t
T3BlcmF0aW9uLT5wYXJhbWV0ZXJzKCk7Ci0gICAgICAgICAgICBlbmNvZGVyIDw8IHN0YXRpY19j
YXN0PHVpbnQzMl90PihwYXJhbWV0ZXJzLnNpemUoKSk7Ci0gICAgICAgICAgICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IHBhcmFtZXRlcnMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgICAgICAgICBS
ZWZQdHI8Q3VzdG9tRmlsdGVyUGFyYW1ldGVyPiBwYXJhbWV0ZXIgPSBwYXJhbWV0ZXJzW2ldOwot
ICAgICAgICAgICAgICAgIGVuY29kZXIgPDwgcGFyYW1ldGVyLT5uYW1lKCk7Ci0gICAgICAgICAg
ICAgICAgZW5jb2Rlci5lbmNvZGVFbnVtKHBhcmFtZXRlci0+cGFyYW1ldGVyVHlwZSgpKTsKLQot
ICAgICAgICAgICAgICAgIHN3aXRjaCAocGFyYW1ldGVyLT5wYXJhbWV0ZXJUeXBlKCkpIHsKLSAg
ICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6TUFUUklYOgotICAgICAg
ICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpBUlJBWTogewotICAgICAgICAg
ICAgICAgICAgICBDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlciogYXJyYXlQYXJhbWV0ZXIgPSBz
dGF0aWNfY2FzdDxDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcio+KHBhcmFtZXRlci5nZXQoKSk7
Ci0gICAgICAgICAgICAgICAgICAgIGVuY29kZXIgPDwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGFy
cmF5UGFyYW1ldGVyLT5zaXplKCkpOwotICAgICAgICAgICAgICAgICAgICBmb3IgKHNpemVfdCBq
ID0gMDsgaiA8IGFycmF5UGFyYW1ldGVyLT5zaXplKCk7ICsraikKLSAgICAgICAgICAgICAgICAg
ICAgICAgIGVuY29kZXIgPDwgYXJyYXlQYXJhbWV0ZXItPnZhbHVlQXQoaik7Ci0gICAgICAgICAg
ICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBjYXNl
IEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6Q09MT1I6IHsKLSAgICAgICAgICAgICAgICAgICAgQ3Vz
dG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIqIGNvbG9yUGFyYW1ldGVyID0gc3RhdGljX2Nhc3Q8Q3Vz
dG9tRmlsdGVyQ29sb3JQYXJhbWV0ZXIqPihwYXJhbWV0ZXIuZ2V0KCkpOwotICAgICAgICAgICAg
ICAgICAgICBlbmNvZGVyIDw8IGNvbG9yUGFyYW1ldGVyLT5jb2xvcigpOwotICAgICAgICAgICAg
ICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgY2FzZSBD
dXN0b21GaWx0ZXJQYXJhbWV0ZXI6Ok5VTUJFUjogewotICAgICAgICAgICAgICAgICAgICBDdXN0
b21GaWx0ZXJOdW1iZXJQYXJhbWV0ZXIqIG51Ym1lclBhcmFtZXRlciA9IHN0YXRpY19jYXN0PEN1
c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcio+KHBhcmFtZXRlci5nZXQoKSk7Ci0gICAgICAgICAg
ICAgICAgICAgIGVuY29kZXIgPDwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KG51Ym1lclBhcmFtZXRl
ci0+c2l6ZSgpKTsKLSAgICAgICAgICAgICAgICAgICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBu
dWJtZXJQYXJhbWV0ZXItPnNpemUoKTsgKytqKQotICAgICAgICAgICAgICAgICAgICAgICAgZW5j
b2RlciA8PCBudWJtZXJQYXJhbWV0ZXItPnZhbHVlQXQoaik7Ci0gICAgICAgICAgICAgICAgICAg
IGJyZWFrOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZp
bHRlclBhcmFtZXRlcjo6VFJBTlNGT1JNOiB7Ci0gICAgICAgICAgICAgICAgICAgIEN1c3RvbUZp
bHRlclRyYW5zZm9ybVBhcmFtZXRlciogdHJhbnNmb3JtUGFyYW1ldGVyID0gc3RhdGljX2Nhc3Q8
Q3VzdG9tRmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyKj4ocGFyYW1ldGVyLmdldCgpKTsKLSAgICAg
ICAgICAgICAgICAgICAgQXJndW1lbnRDb2RlcjxUcmFuc2Zvcm1PcGVyYXRpb25zPjo6ZW5jb2Rl
KGVuY29kZXIsIHRyYW5zZm9ybVBhcmFtZXRlci0+b3BlcmF0aW9ucygpKTsKLSAgICAgICAgICAg
ICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGRlZmF1
bHQ6IHsKLSAgICAgICAgICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAg
ICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9
Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGVuY29kZXIgPDwgY3VzdG9tT3BlcmF0aW9u
LT5tZXNoUm93cygpOwotICAgICAgICAgICAgZW5jb2RlciA8PCBjdXN0b21PcGVyYXRpb24tPm1l
c2hDb2x1bW5zKCk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotI2VuZGlmCiAgICAg
ICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQpAQCAtMjMyLDEwMSAr
MTU1LDYgQEAgYm9vbCBBcmd1bWVudENvZGVyPFdlYkNvcmU6OkZpbHRlck9wZXJhdGlvbnM+Ojpk
ZWNvZGUoQXJndW1lbnREZWNvZGVyJiBkZWNvZGVyLAogICAgICAgICAgICAgZmlsdGVyID0gRHJv
cFNoYWRvd0ZpbHRlck9wZXJhdGlvbjo6Y3JlYXRlKGxvY2F0aW9uLCBzdGREZXZpYXRpb24sIGNv
bG9yLCB0eXBlKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0jaWYgRU5BQkxFKENT
U19TSEFERVJTKQotICAgICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Q1VTVE9NOgotICAgICAg
ICAgICAgLy8gQ3VzdG9tIEZpbHRlcnMgYXJlIGNvbnZlcnRlZCB0byBWQUxJREFURURfQ1VTVE9N
IGJlZm9yZSByZWFjaGluZyB0aGlzIHBvaW50LgotICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246
OlZBTElEQVRFRF9DVVNUT006IHsKLSAgICAgICAgICAgIC8vIEZJWE1FOiBDdXN0b21GaWx0ZXJP
cGVyYXRpb24gc2hvdWxkIG5vdCBuZWVkIHRoZSBtZXNoVHlwZS4KLSAgICAgICAgICAgIC8vIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1MjkKLSAgICAgICAgICAg
IEN1c3RvbUZpbHRlck1lc2hUeXBlIG1lc2hUeXBlOwotICAgICAgICAgICAgaWYgKCFkZWNvZGVy
LmRlY29kZUVudW0obWVzaFR5cGUpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAg
ICAgICAgICAgIGludCBwcm9ncmFtSUQgPSAwOwotICAgICAgICAgICAgaWYgKCFkZWNvZGVyLmRl
Y29kZShwcm9ncmFtSUQpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgICAg
ICAgICAgdWludDMyX3QgcGFyYW1ldGVyc1NpemU7Ci0gICAgICAgICAgICBpZiAoIWRlY29kZXIu
ZGVjb2RlKHBhcmFtZXRlcnNTaXplKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0K
LSAgICAgICAgICAgIEN1c3RvbUZpbHRlclBhcmFtZXRlckxpc3QgcGFyYW1ldGVycyhwYXJhbWV0
ZXJzU2l6ZSk7Ci0gICAgICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHBhcmFtZXRlcnNT
aXplOyArK2kpIHsKLSAgICAgICAgICAgICAgICBTdHJpbmcgbmFtZTsKLSAgICAgICAgICAgICAg
ICBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OlBhcmFtZXRlclR5cGUgcGFyYW1ldGVyVHlwZTsKLSAg
ICAgICAgICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKG5hbWUpKQotICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgaWYgKCFkZWNvZGVyLmRlY29kZUVu
dW0ocGFyYW1ldGVyVHlwZSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQot
ICAgICAgICAgICAgICAgIHN3aXRjaCAocGFyYW1ldGVyVHlwZSkgewotICAgICAgICAgICAgICAg
IGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpNQVRSSVg6Ci0gICAgICAgICAgICAgICAgY2Fz
ZSBDdXN0b21GaWx0ZXJQYXJhbWV0ZXI6OkFSUkFZOiB7Ci0gICAgICAgICAgICAgICAgICAgIFJl
ZlB0cjxDdXN0b21GaWx0ZXJBcnJheVBhcmFtZXRlcj4gYXJyYXlQYXJhbWV0ZXIgPSBDdXN0b21G
aWx0ZXJBcnJheVBhcmFtZXRlcjo6Y3JlYXRlKG5hbWUsIHBhcmFtZXRlclR5cGUpOwotICAgICAg
ICAgICAgICAgICAgICB1aW50MzJfdCBhcnJheVBhcmFtZXRlclNpemU7Ci0gICAgICAgICAgICAg
ICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXJyYXlQYXJhbWV0ZXJTaXplKSkKLSAgICAgICAg
ICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgICAgICAgICAgZG91Ymxl
IGFycmF5UGFyYW1ldGVyVmFsdWU7Ci0gICAgICAgICAgICAgICAgICAgIGZvciAoc2l6ZV90IGog
PSAwOyBqIDwgYXJyYXlQYXJhbWV0ZXJTaXplOyArK2opIHsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXJyYXlQYXJhbWV0ZXJWYWx1ZSkpCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgICAgICAgICAgICAg
YXJyYXlQYXJhbWV0ZXItPmFkZFZhbHVlKGFycmF5UGFyYW1ldGVyVmFsdWUpOwotICAgICAgICAg
ICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnNbaV0gPSBhcnJheVBh
cmFtZXRlci5yZWxlYXNlKCk7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgICAgICBjYXNlIEN1c3RvbUZpbHRlclBhcmFtZXRlcjo6Q09M
T1I6IHsKLSAgICAgICAgICAgICAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlckNvbG9yUGFyYW1l
dGVyPiBjb2xvclBhcmFtZXRlciA9IEN1c3RvbUZpbHRlckNvbG9yUGFyYW1ldGVyOjpjcmVhdGUo
bmFtZSk7Ci0gICAgICAgICAgICAgICAgICAgIENvbG9yIGM7Ci0gICAgICAgICAgICAgICAgICAg
IGlmICghZGVjb2Rlci5kZWNvZGUoYykpCi0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgICAgICAgICAgICAgICAgIGNvbG9yUGFyYW1ldGVyLT5zZXRDb2xvcihjKTsK
LSAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyc1tpXSA9IGNvbG9yUGFyYW1ldGVyLnJlbGVh
c2UoKTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgICAgIGNhc2UgQ3VzdG9tRmlsdGVyUGFyYW1ldGVyOjpOVU1CRVI6IHsKLSAgICAg
ICAgICAgICAgICAgICAgUmVmUHRyPEN1c3RvbUZpbHRlck51bWJlclBhcmFtZXRlcj4gbnVtYmVy
UGFyYW1ldGVyID0gQ3VzdG9tRmlsdGVyTnVtYmVyUGFyYW1ldGVyOjpjcmVhdGUobmFtZSk7Ci0g
ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG51bWJlclBhcmFtZXRlclNpemU7Ci0gICAgICAg
ICAgICAgICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGUobnVtYmVyUGFyYW1ldGVyU2l6ZSkpCi0g
ICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgICAg
IGRvdWJsZSBudW1iZXJQYXJhbWV0ZXJWYWx1ZTsKLSAgICAgICAgICAgICAgICAgICAgZm9yIChz
aXplX3QgaiA9IDA7IGogPCBudW1iZXJQYXJhbWV0ZXJTaXplOyArK2opIHsKLSAgICAgICAgICAg
ICAgICAgICAgICAgIGlmICghZGVjb2Rlci5kZWNvZGUobnVtYmVyUGFyYW1ldGVyVmFsdWUpKQot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAgICAg
ICAgICAgICAgIG51bWJlclBhcmFtZXRlci0+YWRkVmFsdWUobnVtYmVyUGFyYW1ldGVyVmFsdWUp
OwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnNb
aV0gPSBudW1iZXJQYXJhbWV0ZXIucmVsZWFzZSgpOwotICAgICAgICAgICAgICAgICAgICBicmVh
azsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgY2FzZSBDdXN0b21GaWx0ZXJQ
YXJhbWV0ZXI6OlRSQU5TRk9STTogewotICAgICAgICAgICAgICAgICAgICBSZWZQdHI8Q3VzdG9t
RmlsdGVyVHJhbnNmb3JtUGFyYW1ldGVyPiB0cmFuc2Zvcm1QYXJhbWV0ZXIgPSBDdXN0b21GaWx0
ZXJUcmFuc2Zvcm1QYXJhbWV0ZXI6OmNyZWF0ZShuYW1lKTsKLSAgICAgICAgICAgICAgICAgICAg
VHJhbnNmb3JtT3BlcmF0aW9ucyBvcGVyYXRpb25zOwotICAgICAgICAgICAgICAgICAgICBpZiAo
IUFyZ3VtZW50Q29kZXI8VHJhbnNmb3JtT3BlcmF0aW9ucz46OmRlY29kZShkZWNvZGVyLCBvcGVy
YXRpb25zKSkKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAg
ICAgICAgICAgICAgdHJhbnNmb3JtUGFyYW1ldGVyLT5zZXRPcGVyYXRpb25zKG9wZXJhdGlvbnMp
OwotICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzW2ldID0gdHJhbnNmb3JtUGFyYW1ldGVy
LnJlbGVhc2UoKTsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAg
fQotICAgICAgICAgICAgICAgIGRlZmF1bHQ6IHsKLSAgICAgICAgICAgICAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAg
ICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotCi0gICAgICAg
ICAgICB1bnNpZ25lZCBtZXNoUm93czsKLSAgICAgICAgICAgIHVuc2lnbmVkIG1lc2hDb2x1bW5z
OwotICAgICAgICAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShtZXNoUm93cykpCi0gICAgICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShtZXNo
Q29sdW1ucykpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgICAgICAv
LyBBdCB0aGlzIHBvaW50IHRoZSBTaGFkZXJzIGFyZSBhbHJlYWR5IHZhbGlkYXRlZCwgc28gd2Ug
anVzdCB1c2UgV2ViQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIGZvciB0cmFuc3BvcnRhdGlvbi4KLSAg
ICAgICAgICAgIGZpbHRlciA9IENvb3JkaW5hdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uOjpjcmVh
dGUoMCwgcHJvZ3JhbUlELCBwYXJhbWV0ZXJzLCBtZXNoUm93cywgbWVzaENvbHVtbnMpOwotICAg
ICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSNlbmRpZgogICAgICAgICBkZWZhdWx0OgogICAg
ICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KQEAgLTMzOSw0MiArMTY3LDYgQEAgYm9vbCBBcmd1
bWVudENvZGVyPFdlYkNvcmU6OkZpbHRlck9wZXJhdGlvbnM+OjpkZWNvZGUoQXJndW1lbnREZWNv
ZGVyJiBkZWNvZGVyLAogfQogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi12b2lk
IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8+OjplbmNvZGUo
QXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbyYg
cHJvZ3JhbUluZm8pCi17Ci0gICAgZW5jb2RlciA8PCBwcm9ncmFtSW5mby52ZXJ0ZXhTaGFkZXJT
dHJpbmcoKTsKLSAgICBlbmNvZGVyIDw8IHByb2dyYW1JbmZvLmZyYWdtZW50U2hhZGVyU3RyaW5n
KCk7Ci0gICAgZW5jb2Rlci5lbmNvZGVFbnVtKHByb2dyYW1JbmZvLnByb2dyYW1UeXBlKCkpOwot
ICAgIGVuY29kZXIuZW5jb2RlRW51bShwcm9ncmFtSW5mby5tZXNoVHlwZSgpKTsKLSAgICBjb25z
dCBDdXN0b21GaWx0ZXJQcm9ncmFtTWl4U2V0dGluZ3MmIG1peFNldHRpbmdzID0gcHJvZ3JhbUlu
Zm8ubWl4U2V0dGluZ3MoKTsKLSAgICBlbmNvZGVyLmVuY29kZUVudW0obWl4U2V0dGluZ3MuYmxl
bmRNb2RlKTsKLSAgICBlbmNvZGVyLmVuY29kZUVudW0obWl4U2V0dGluZ3MuY29tcG9zaXRlT3Bl
cmF0b3IpOwotfQotCi1ib29sIEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6Q3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8+OjpkZWNvZGUoQXJndW1lbnREZWNvZGVyJiBkZWNvZGVyLCBDdXN0b21GaWx0ZXJQ
cm9ncmFtSW5mbyYgcHJvZ3JhbUluZm8pCi17Ci0gICAgU3RyaW5nIHZlcnRleFNoYWRlclN0cmlu
ZzsKLSAgICBTdHJpbmcgZnJhZ21lbnRTaGFkZXJTdHJpbmc7Ci0gICAgQ3VzdG9tRmlsdGVyUHJv
Z3JhbVR5cGUgcHJvZ3JhbVR5cGU7Ci0gICAgQ3VzdG9tRmlsdGVyTWVzaFR5cGUgbWVzaFR5cGU7
Ci0gICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1peFNldHRpbmdzIG1peFNldHRpbmdzOwotICAgIGlm
ICghZGVjb2Rlci5kZWNvZGUodmVydGV4U2hhZGVyU3RyaW5nKSkKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoZnJhZ21lbnRTaGFkZXJTdHJpbmcpKQotICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZUVudW0ocHJvZ3JhbVR5
cGUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZUVudW0o
bWVzaFR5cGUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29k
ZUVudW0obWl4U2V0dGluZ3MuYmxlbmRNb2RlKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAg
IGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKG1peFNldHRpbmdzLmNvbXBvc2l0ZU9wZXJhdG9yKSkK
LSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIHByb2dyYW1JbmZvID0gQ3VzdG9tRmlsdGVyUHJv
Z3JhbUluZm8odmVydGV4U2hhZGVyU3RyaW5nLCBmcmFnbWVudFNoYWRlclN0cmluZywgcHJvZ3Jh
bVR5cGUsIG1peFNldHRpbmdzLCBtZXNoVHlwZSk7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0jZW5k
aWYgLy8gRU5BQkxFKENTU19TSEFERVJTKQotCiB2b2lkIEFyZ3VtZW50Q29kZXI8VHJhbnNmb3Jt
T3BlcmF0aW9ucz46OmVuY29kZShBcmd1bWVudEVuY29kZXImIGVuY29kZXIsIGNvbnN0IFRyYW5z
Zm9ybU9wZXJhdGlvbnMmIHRyYW5zZm9ybU9wZXJhdGlvbnMpCiB7CiAgICAgZW5jb2RlciA8PCBz
dGF0aWNfY2FzdDx1aW50MzJfdD4odHJhbnNmb3JtT3BlcmF0aW9ucy5zaXplKCkpOwpAQCAtMTA4
NCwxNSArODc2LDYgQEAgdm9pZCBBcmd1bWVudENvZGVyPENvb3JkaW5hdGVkR3JhcGhpY3NTdGF0
ZT46OmVuY29kZShBcmd1bWVudEVuY29kZXImIGVuY29kZXIsIGMKICAgICAgICAgZW5jb2RlQ29v
cmRpbmF0ZWRTdXJmYWNlKGVuY29kZXIsIHN0YXRlLnVwZGF0ZUF0bGFzZXNUb0NyZWF0ZVtpXS5z
ZWNvbmQpOwogICAgIH0KICAgICBlbmNvZGVyIDw8IHN0YXRlLnVwZGF0ZUF0bGFzZXNUb1JlbW92
ZTsKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBlbmNvZGVyIDw8IHN0YXRpY19jYXN0
PHVpbnQ2NF90PihzdGF0ZS5jdXN0b21GaWx0ZXJzVG9DcmVhdGUuc2l6ZSgpKTsKLSAgICBmb3Ig
KHNpemVfdCBpID0gMDsgaSA8IHN0YXRlLmN1c3RvbUZpbHRlcnNUb0NyZWF0ZS5zaXplKCk7ICsr
aSkgewotICAgICAgICBlbmNvZGVyIDw8IHN0YXRlLmN1c3RvbUZpbHRlcnNUb0NyZWF0ZVtpXS5m
aXJzdDsKLSAgICAgICAgZW5jb2RlciA8PCBzdGF0ZS5jdXN0b21GaWx0ZXJzVG9DcmVhdGVbaV0u
c2Vjb25kOwotICAgIH0KLSAgICBlbmNvZGVyIDw8IHN0YXRlLmN1c3RvbUZpbHRlcnNUb1JlbW92
ZTsKLSNlbmRpZgogfQogCiBib29sIEFyZ3VtZW50Q29kZXI8Q29vcmRpbmF0ZWRHcmFwaGljc1N0
YXRlPjo6ZGVjb2RlKEFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwgQ29vcmRpbmF0ZWRHcmFwaGlj
c1N0YXRlJiBzdGF0ZSkKQEAgLTExNjIsMjUgKzk0NSw2IEBAIGJvb2wgQXJndW1lbnRDb2RlcjxD
b29yZGluYXRlZEdyYXBoaWNzU3RhdGU+OjpkZWNvZGUoQXJndW1lbnREZWNvZGVyJiBkZWNvZGVy
LCBDCiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShzdGF0ZS51cGRhdGVBdGxhc2VzVG9SZW1vdmUp
KQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0gICAg
dWludDY0X3Qgc2l6ZU9mQ3VzdG9tRmlsdGVyc1RvQ3JlYXRlOwotICAgIGlmICghZGVjb2Rlci5k
ZWNvZGUoc2l6ZU9mQ3VzdG9tRmlsdGVyc1RvQ3JlYXRlKSkKLSAgICAgICAgcmV0dXJuIGZhbHNl
OwotCi0gICAgZm9yICh1aW50NjRfdCBpID0gMDsgaSA8IHNpemVPZkN1c3RvbUZpbHRlcnNUb0Ny
ZWF0ZTsgKytpKSB7Ci0gICAgICAgIHVpbnQzMl90IGZpbHRlcklEOwotICAgICAgICBpZiAoIWRl
Y29kZXIuZGVjb2RlKGZpbHRlcklEKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAg
ICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8gZmlsdGVySW5mbzsKLSAgICAgICAgaWYgKCFkZWNv
ZGVyLmRlY29kZShmaWx0ZXJJbmZvKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAg
ICAgc3RhdGUuY3VzdG9tRmlsdGVyc1RvQ3JlYXRlLmFwcGVuZChzdGQ6Om1ha2VfcGFpcihmaWx0
ZXJJRCwgZmlsdGVySW5mbykpOwotICAgIH0KLQotICAgIGlmICghZGVjb2Rlci5kZWNvZGUoc3Rh
dGUuY3VzdG9tRmlsdGVyc1RvUmVtb3ZlKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotI2VuZGlm
Ci0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hh
cmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0FyZ3VtZW50Q29kZXJz
LmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRl
ZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuaAppbmRleCBhM2NkYzA0Li5lZGM0YzM4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRl
ZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29v
cmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZEdyYXBoaWNzQXJndW1lbnRDb2RlcnMuaApAQCAt
NDgsMTAgKzQ4LDYgQEAgc3RydWN0IExlbmd0aDsKIGNsYXNzIEZpbHRlck9wZXJhdGlvbnM7CiAj
ZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLWNsYXNzIEN1c3RvbUZpbHRlclByb2dy
YW1JbmZvOwotI2VuZGlmCi0KICNpZiBVU0UoR1JBUEhJQ1NfU1VSRkFDRSkKIHN0cnVjdCBHcmFw
aGljc1N1cmZhY2VUb2tlbjsKICNlbmRpZgpAQCAtNjYsMTMgKzYyLDYgQEAgdGVtcGxhdGU8PiBz
dHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpGaWx0ZXJPcGVyYXRpb25zPiB7CiB9OwogI2Vu
ZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi10ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVu
dENvZGVyPFdlYkNvcmU6OkN1c3RvbUZpbHRlclByb2dyYW1JbmZvPiB7Ci0gICAgc3RhdGljIHZv
aWQgZW5jb2RlKEFyZ3VtZW50RW5jb2RlciYsIGNvbnN0IFdlYkNvcmU6OkN1c3RvbUZpbHRlclBy
b2dyYW1JbmZvJik7Ci0gICAgc3RhdGljIGJvb2wgZGVjb2RlKEFyZ3VtZW50RGVjb2RlciYsIFdl
YkNvcmU6OkN1c3RvbUZpbHRlclByb2dyYW1JbmZvJik7Ci19OwotI2VuZGlmCi0KIHRlbXBsYXRl
PD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6VHJhbnNmb3JtT3BlcmF0aW9ucz4gewog
ICAgIHN0YXRpYyB2b2lkIGVuY29kZShBcmd1bWVudEVuY29kZXImLCBjb25zdCBXZWJDb3JlOjpU
cmFuc2Zvcm1PcGVyYXRpb25zJik7CiAgICAgc3RhdGljIGJvb2wgZGVjb2RlKEFyZ3VtZW50RGVj
b2RlciYsIFdlYkNvcmU6OlRyYW5zZm9ybU9wZXJhdGlvbnMmKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL1dlYkN1c3RvbUZpbHRlclByb2dy
YW1Qcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9X
ZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA1NmY3MDc2Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGlu
YXRlZEdyYXBoaWNzL1dlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS5jcHAKKysrIC9kZXYvbnVs
bApAQCAtMSw0OSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFkb2JlIFN5c3Rl
bXMgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFp
bWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZQotICogICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKLSAqICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscwotICogICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVIgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhP
TERFUiBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLAotICogT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgot
ICogVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GCi0gKiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRl
ICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSNpbmNsdWRlICJXZWJDdXN0
b21GaWx0ZXJQcm9ncmFtUHJveHkuaCIKLQotbmFtZXNwYWNlIFdlYktpdCB7Ci0KLWludCBXZWJD
dXN0b21GaWx0ZXJQcm9ncmFtUHJveHk6OnNfbmV4dElkID0gMTsKLQotV2ViQ3VzdG9tRmlsdGVy
UHJvZ3JhbVByb3h5Ojp+V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KCkKLXsKLSAgICBpZiAo
bV9jbGllbnQpIHsKLSAgICAgICAgbV9jbGllbnQtPnJlbW92ZUN1c3RvbUZpbHRlclByb2dyYW1Q
cm94eSh0aGlzKTsKLSAgICAgICAgbV9jbGllbnQgPSAwOwotICAgIH0KLX0KLQotfSAvLyBuYW1l
c3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX1NIQURFUlMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJDdXN0b21GaWx0
ZXJQcm9ncmFtUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBo
aWNzL1dlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA4YTA4N2EwLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29y
ZGluYXRlZEdyYXBoaWNzL1dlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS5oCisrKyAvZGV2L251
bGwKQEAgLTEsOTMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBZG9iZSBTeXN0
ZW1zIEluY29ycG9yYXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCi0gKiAgICBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwotICogICAgZGlzY2xh
aW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKLSAqICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKLSAqICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBI
T0xERVIgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwKLSAqIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IK
LSAqIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRgotICogVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVm
IFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eV9oCi0jZGVmaW5lIFdlYkN1c3RvbUZpbHRlclBy
b2dyYW1Qcm94eV9oCi0KLSNpZiBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpICYmIEVOQUJMRShD
U1NfU0hBREVSUykKLQotI2luY2x1ZGUgPFdlYkNvcmUvVGV4dHVyZU1hcHBlclBsYXRmb3JtQ29t
cGlsZWRQcm9ncmFtLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNwYWNl
IFdlYktpdCB7Ci0KLWNsYXNzIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eTsKLQotY2xhc3Mg
V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5Q2xpZW50IHsKLXB1YmxpYzoKLSAgICB2aXJ0dWFs
IHZvaWQgcmVtb3ZlQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KFdlYkN1c3RvbUZpbHRlclByb2dy
YW1Qcm94eSopID0gMDsKLX07Ci0KLS8vIFRoaXMgaXMgYSBwcm94eSBjbGFzcyB1c2VkIHRvIHN0
b3JlIHRoZSBJRCBvZiB0aGUgY3VzdG9tIGZpbHRlciBwcm9ncmFtIHNlcmlhbGl6ZWQgdG8gdGhl
IG90aGVyIHByb2Nlc3MuCi0vLyBJdCBsaXZlcyBpbiB0aGUgV2ViUHJvY2VzcyBhbmQgaXMgcmVm
ZXJlbmNlZCBmcm9tIHRoZSBDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtIG1lYW5pbmcgdGhh
dCBpdCB3aWxsIGJlIGtlcHQgYWxpdmUgYXMKLS8vIGxvbmcgYXMgYSBsYXllciBvbiB0aGUgcGFn
ZSB3aWxsIHJlbmRlciB3aXRoIHRoaXMgcHJvZ3JhbS4gSXQgd2lsbCBjYWxsIHJlbW92ZUN1c3Rv
bUZpbHRlclByb2dyYW1Qcm94eSBvbiB0aGUgbV9jbGllbnQKLS8vIHdoZW4gdGhlIHByb2dyYW0g
aXMgbm8gbG9uZ2VyIG5lZWRlZCB0byByZW5kZXIgdGhlIGZpbHRlci4gVGhlIGNsaWVudCBjYW4g
dGhlbiBzZW5kIGEgbWVzc2FnZSB0byB0aGUgVUkgcHJvY2VzcwotLy8gdG8gZGVzdHJveSB0aGUg
YXNzb2NpYXRlZCByZWZlcmVuY2UuIE5vdGUgdGhhdCBtb3JlIGxheWVycyBjYW4gc2hhcmUgdGhl
IHNhbWUgcHJvZ3JhbSBhbmQgdGhlcmUncwotLy8gbm8gbmVlZCB0byBpbXBsZW1lbnQgYSBjYWNo
aW5nIG1lY2hhbmlzbSBpbiB0aGUgY29tcG9zaXRvciBzaWRlLgotCi1jbGFzcyBXZWJDdXN0b21G
aWx0ZXJQcm9ncmFtUHJveHkgOiBwdWJsaWMgUmVmQ291bnRlZDxXZWJDdXN0b21GaWx0ZXJQcm9n
cmFtUHJveHk+LCBwdWJsaWMgV2ViQ29yZTo6VGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQ
cm9ncmFtQ2xpZW50IHsKLXB1YmxpYzoKLSAgICB1c2luZyBSZWZDb3VudGVkPFdlYkN1c3RvbUZp
bHRlclByb2dyYW1Qcm94eT46OnJlZjsKLSAgICB1c2luZyBSZWZDb3VudGVkPFdlYkN1c3RvbUZp
bHRlclByb2dyYW1Qcm94eT46OmRlcmVmOwotCi0gICAgc3RhdGljIFBhc3NSZWZQdHI8V2ViQ3Vz
dG9tRmlsdGVyUHJvZ3JhbVByb3h5PiBjcmVhdGUoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBXZWJDdXN0b21GaWx0ZXJQcm9ncmFtUHJveHkoKSk7Ci0gICAgfQotCi0gICAg
aW50IGlkKCkgY29uc3QgeyByZXR1cm4gbV9pZDsgfQotCi0gICAgLy8gTmVlZGVkIHRvIG1ha2Ug
VGV4dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtQ2xpZW50IGxvb2sgbGlrZSBhIFJl
ZkNvdW50ZWQgb2JqZWN0LgotICAgIHZpcnR1YWwgdm9pZCByZWZGcm9tVmFsaWRhdGVkUHJvZ3Jh
bSgpIHsgcmVmKCk7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZGVyZWZGcm9tVmFsaWRhdGVkUHJvZ3Jh
bSgpIHsgZGVyZWYoKTsgfQotCi0gICAgdmlydHVhbCB+V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5KCk7Ci0gICAgCi0gICAgdm9pZCBzZXRDbGllbnQoV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5Q2xpZW50KiBjbGllbnQpIHsgbV9jbGllbnQgPSBjbGllbnQ7IH0KLSAgICBXZWJDdXN0b21G
aWx0ZXJQcm9ncmFtUHJveHlDbGllbnQqIGNsaWVudCgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpZW50
OyB9Ci0KLXByaXZhdGU6Ci0gICAgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KCkKLSAgICAg
ICAgOiBtX2NsaWVudCgwKQotICAgICAgICAsIG1faWQoc19uZXh0SWQrKykKLSAgICB7Ci0gICAg
fQotICAgIAotICAgIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eUNsaWVudCogbV9jbGllbnQ7
Ci0gICAgaW50IG1faWQ7Ci0gICAgCi0gICAgc3RhdGljIGludCBzX25leHRJZDsKLX07Ci0KLX0g
Ly8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gVVNFKENPT1JESU5BVEVEX0dSQVBISUNT
KSAmJiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0KLSNlbmRpZiAvLyBXZWJDdXN0b21GaWx0ZXJQcm9n
cmFtUHJveHlfaAotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFy
Z3VtZW50Q29kZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJDb3JlQXJndW1lbnRD
b2RlcnMuY3BwCmluZGV4IDZmYmY4NDQuLmYxNWE2OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwCkBAIC0xNDYzLDEyICsxNDYzLDYgQEAg
c3RhdGljIHZvaWQgZW5jb2RlRmlsdGVyT3BlcmF0aW9uKEFyZ3VtZW50RW5jb2RlciYgZW5jb2Rl
ciwgY29uc3QgRmlsdGVyT3BlcmF0aW8KICAgICAgICAgZW5jb2RlciA8PCBkcm9wU2hhZG93Rmls
dGVyLmNvbG9yKCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KLSNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCi0gICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OkNVU1RPTToKLSAgICBjYXNlIEZpbHRlck9w
ZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RPTToKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
Ci0gICAgICAgIGJyZWFrOwotI2VuZGlmCiAgICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OlBBU1NU
SFJPVUdIOgogICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpOT05FOgogICAgICAgICBicmVhazsK
QEAgLTE1MzIsMTIgKzE1MjYsNiBAQCBzdGF0aWMgYm9vbCBkZWNvZGVGaWx0ZXJPcGVyYXRpb24o
QXJndW1lbnREZWNvZGVyJiBkZWNvZGVyLCBSZWZQdHI8RmlsdGVyT3BlcmF0aQogICAgICAgICBm
aWx0ZXIgPSBEcm9wU2hhZG93RmlsdGVyT3BlcmF0aW9uOjpjcmVhdGUobG9jYXRpb24sIHN0ZERl
dmlhdGlvbiwgY29sb3IsIHR5cGUpOwogICAgICAgICBicmVhazsKICAgICB9Ci0jaWYgRU5BQkxF
KENTU19TSEFERVJTKQotICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0gICAgY2Fz
ZSBGaWx0ZXJPcGVyYXRpb246OlZBTElEQVRFRF9DVVNUT006Ci0gICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwotICAgICAgICBicmVhazsKLSNlbmRpZgogICAgIGNhc2UgRmlsdGVyT3BlcmF0
aW9uOjpQQVNTVEhST1VHSDoKICAgICBjYXNlIEZpbHRlck9wZXJhdGlvbjo6Tk9ORToKICAgICAg
ICAgYnJlYWs7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5j
ZXNTdG9yZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaApp
bmRleCBlOWY3MTE0Li4yOTMyMmY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2ViUHJlZmVyZW5jZXNTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVm
ZXJlbmNlc1N0b3JlLmgKQEAgLTk3LDcgKzk3LDYgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAgICAg
bWFjcm8oQ29tcG9zaXRpbmdCb3JkZXJzVmlzaWJsZSwgY29tcG9zaXRpbmdCb3JkZXJzVmlzaWJs
ZSwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKICAgICBtYWNybyhDb21wb3NpdGluZ1JlcGFpbnRDb3Vu
dGVyc1Zpc2libGUsIGNvbXBvc2l0aW5nUmVwYWludENvdW50ZXJzVmlzaWJsZSwgQm9vbCwgYm9v
bCwgZmFsc2UpIFwKICAgICBtYWNybyhUaWxlZFNjcm9sbGluZ0luZGljYXRvclZpc2libGUsIHRp
bGVkU2Nyb2xsaW5nSW5kaWNhdG9yVmlzaWJsZSwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKLSAgICBt
YWNybyhDU1NDdXN0b21GaWx0ZXJFbmFibGVkLCBjc3NDdXN0b21GaWx0ZXJFbmFibGVkLCBCb29s
LCBib29sLCB0cnVlKSBcCiAgICAgbWFjcm8oV2ViR0xFbmFibGVkLCB3ZWJHTEVuYWJsZWQsIEJv
b2wsIGJvb2wsIHRydWUpIFwKICAgICBtYWNybyhNdWx0aXRocmVhZGVkV2ViR0xFbmFibGVkLCBt
dWx0aXRocmVhZGVkV2ViR0xFbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSkgXAogICAgIG1hY3Jv
KEZvcmNlU29mdHdhcmVXZWJHTFJlbmRlcmluZywgZm9yY2VTb2Z0d2FyZVdlYkdMUmVuZGVyaW5n
LCBCb29sLCBib29sLCBmYWxzZSkgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L21hYy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24ubW0KaW5kZXggZDk5M2VkMC4uNTE5N2Fi
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVU
cmFuc2FjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVy
VHJlZVRyYW5zYWN0aW9uLm1tCkBAIC00OTUsMTQgKzQ5NSw2IEBAIFJlbW90ZUxheWVyVHJlZVRl
eHRTdHJlYW0mIFJlbW90ZUxheWVyVHJlZVRleHRTdHJlYW06Om9wZXJhdG9yPDwoY29uc3QgRmls
dGVyT3BlCiAgICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpEUk9QX1NIQURPVzoKICAgICAg
ICAgICAgIHRzIDw8ICJkcm9wIHNoYWRvdyI7CiAgICAgICAgICAgICBicmVhazsKLSNpZiBFTkFC
TEUoQ1NTX1NIQURFUlMpCi0gICAgICAgIGNhc2UgRmlsdGVyT3BlcmF0aW9uOjpDVVNUT006Ci0g
ICAgICAgICAgICB0cyA8PCAiY3VzdG9tIjsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBj
YXNlIEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RPTToKLSAgICAgICAgICAgIHRzIDw8
ICJjdXN0b20gKHZhbGlkYXRlZCkiOwotICAgICAgICAgICAgYnJlYWs7Ci0jZW5kaWYKICAgICAg
ICAgY2FzZSBGaWx0ZXJPcGVyYXRpb246OlBBU1NUSFJPVUdIOgogICAgICAgICAgICAgdHMgPDwg
InBhc3N0aHJvdWdoIjsKICAgICAgICAgICAgIGJyZWFrOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4IGVkZTA5ZDkuLjhkMjVjNzAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2Vz
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5j
cHAKQEAgLTQ1OSwxNiArNDU5LDYgQEAgYm9vbCBXS1ByZWZlcmVuY2VzR2V0VGlsZWRTY3JvbGxp
bmdJbmRpY2F0b3JWaXNpYmxlKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMKICAgICByZXR1
cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+dGlsZWRTY3JvbGxpbmdJbmRpY2F0b3JWaXNpYmxl
KCk7CiB9CiAKLXZvaWQgV0tQcmVmZXJlbmNlc1NldENTU0N1c3RvbUZpbHRlckVuYWJsZWQoV0tQ
cmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBmbGFnKQotewotICAgIHRvSW1wbChw
cmVmZXJlbmNlc1JlZiktPnNldENTU0N1c3RvbUZpbHRlckVuYWJsZWQoZmxhZyk7Ci19Ci0KLWJv
b2wgV0tQcmVmZXJlbmNlc0dldENTU0N1c3RvbUZpbHRlckVuYWJsZWQoV0tQcmVmZXJlbmNlc1Jl
ZiBwcmVmZXJlbmNlc1JlZikKLXsKLSAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+
Y3NzQ3VzdG9tRmlsdGVyRW5hYmxlZCgpOwotfQotCiB2b2lkIFdLUHJlZmVyZW5jZXNTZXRXZWJH
TEVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBmbGFnKQogewog
ICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldFdlYkdMRW5hYmxlZChmbGFnKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUHJpdmF0
ZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRl
LmgKaW5kZXggODY3Yzk5Ny4uZThiYjExYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmgKQEAgLTg5LDEwICs4OSw2IEBA
IFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRUaWxlZFNjcm9sbGluZ0luZGljYXRvclZp
c2libGUoV0tQcmVmZXJlbmNlc1JlZiwKIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRU
aWxlZFNjcm9sbGluZ0luZGljYXRvclZpc2libGUoV0tQcmVmZXJlbmNlc1JlZik7CiAKIC8vIERl
ZmF1bHRzIHRvIHRydWUuCi1XS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0Q1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpOwotV0tfRVhQT1JUIGJv
b2wgV0tQcmVmZXJlbmNlc0dldENTU0N1c3RvbUZpbHRlckVuYWJsZWQoV0tQcmVmZXJlbmNlc1Jl
Zik7Ci0KLS8vIERlZmF1bHRzIHRvIHRydWUuCiBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2Vz
U2V0V2ViR0xFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYsIGJvb2wpOwogV0tfRVhQT1JUIGJvb2wg
V0tQcmVmZXJlbmNlc0dldFdlYkdMRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1
bmRsZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlLmNwcAppbmRleCBkYmYwY2YwLi5jMjNjZTRiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxl
LmNwcApAQCAtMjAzLDcgKzIwMyw2IEBAIHZvaWQgSW5qZWN0ZWRCdW5kbGU6Om92ZXJyaWRlQm9v
bFByZWZlcmVuY2VGb3JUZXN0UnVubmVyKFdlYlBhZ2VHcm91cFByb3h5KiBwYWdlCiAjZGVmaW5l
IEZPUl9FQUNIX09WRVJSSURFX0JPT0xfUFJFRkVSRU5DRShtYWNybykgXAogICAgIG1hY3JvKFdl
YktpdEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkLCBBY2NlbGVyYXRlZENvbXBvc2l0aW5n
RW5hYmxlZCwgYWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWQpIFwKICAgICBtYWNybyhXZWJL
aXRDYW52YXNVc2VzQWNjZWxlcmF0ZWREcmF3aW5nLCBDYW52YXNVc2VzQWNjZWxlcmF0ZWREcmF3
aW5nLCBjYW52YXNVc2VzQWNjZWxlcmF0ZWREcmF3aW5nKSBcCi0gICAgbWFjcm8oV2ViS2l0Q1NT
Q3VzdG9tRmlsdGVyRW5hYmxlZCwgQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCwgY3NzQ3VzdG9tRmls
dGVyRW5hYmxlZCkgXAogICAgIG1hY3JvKFdlYktpdENTU0dyaWRMYXlvdXRFbmFibGVkLCBDU1NH
cmlkTGF5b3V0RW5hYmxlZCwgY3NzR3JpZExheW91dEVuYWJsZWQpIFwKICAgICBtYWNybyhXZWJL
aXRGcmFtZUZsYXR0ZW5pbmdFbmFibGVkLCBGcmFtZUZsYXR0ZW5pbmdFbmFibGVkLCBmcmFtZUZs
YXR0ZW5pbmdFbmFibGVkKSBcCiAgICAgbWFjcm8oV2ViS2l0SmF2YUVuYWJsZWQsIEphdmFFbmFi
bGVkLCBqYXZhRW5hYmxlZCkgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNz
L0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5jcHAKaW5kZXggMjhlMDYzNS4uMjU3NDdhNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3Jh
cGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExheWVyVHJl
ZUhvc3QuY3BwCkBAIC00MywxMSArNDMsNiBAQAogI2luY2x1ZGUgPFdlYkNvcmUvU2V0dGluZ3Mu
aD4KICNpbmNsdWRlIDx3dGYvQ3VycmVudFRpbWUuaD4KIAotI2lmIEVOQUJMRShDU1NfU0hBREVS
UykKLSNpbmNsdWRlICJDdXN0b21GaWx0ZXJWYWxpZGF0ZWRQcm9ncmFtLmgiCi0jaW5jbHVkZSAi
VmFsaWRhdGVkQ3VzdG9tRmlsdGVyT3BlcmF0aW9uLmgiCi0jZW5kaWYKLQogdXNpbmcgbmFtZXNw
YWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewpAQCAtNTksOSArNTQsNiBAQCBQYXNz
UmVmUHRyPENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdD4gQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0
OjpjcmVhdGUoV2ViUGFnZSogdwogCiBDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6On5Db29yZGlu
YXRlZExheWVyVHJlZUhvc3QoKQogewotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBkaXNj
b25uZWN0Q3VzdG9tRmlsdGVyUHJvZ3JhbXMoKTsKLSNlbmRpZgogfQogCiBDb29yZGluYXRlZExh
eWVyVHJlZUhvc3Q6OkNvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdChXZWJQYWdlKiB3ZWJQYWdlKQpA
QCAtMjE1LDg1ICsyMDcsNiBAQCB2b2lkIENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6cHVyZ2VC
YWNraW5nU3RvcmVzKCkKICAgICBtX2Nvb3JkaW5hdG9yLT5wdXJnZUJhY2tpbmdTdG9yZXMoKTsK
IH0KIAotdm9pZCBDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6OndpbGxTeW5jTGF5ZXJTdGF0ZShD
b29yZGluYXRlZEdyYXBoaWNzTGF5ZXJTdGF0ZSYgc3RhdGUpCi17Ci0jaWYgRU5BQkxFKENTU19T
SEFERVJTKQotICAgIGlmIChzdGF0ZS5hbmltYXRpb25zQ2hhbmdlZCkKLSAgICAgICAgcHJlcGFy
ZUN1c3RvbUZpbHRlclByb3hpZXNGb3JBbmltYXRpb25zKHN0YXRlLmFuaW1hdGlvbnMpOwotCi0g
ICAgaWYgKHN0YXRlLmZpbHRlcnNDaGFuZ2VkKQotICAgICAgICBjaGVja0N1c3RvbUZpbHRlclBy
b2dyYW1Qcm94aWVzKHN0YXRlLmZpbHRlcnMpOwotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0oc3Rh
dGUpOwotI2VuZGlmCi19Ci0KLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi12b2lkIENvb3JkaW5h
dGVkTGF5ZXJUcmVlSG9zdDo6cHJlcGFyZUN1c3RvbUZpbHRlclByb3hpZXNGb3JBbmltYXRpb25z
KEdyYXBoaWNzTGF5ZXJBbmltYXRpb25zJiBhY3RpdmVBbmltYXRpb25zKQotewotICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgYWN0aXZlQW5pbWF0aW9ucy5hbmltYXRpb25zKCkuc2l6ZSgpOyAr
K2kpIHsKLSAgICAgICAgY29uc3QgS2V5ZnJhbWVWYWx1ZUxpc3QmIGtleWZyYW1lcyA9IGFjdGl2
ZUFuaW1hdGlvbnMuYW5pbWF0aW9ucygpLmF0KGkpLmtleWZyYW1lcygpOwotICAgICAgICBpZiAo
a2V5ZnJhbWVzLnByb3BlcnR5KCkgIT0gQW5pbWF0ZWRQcm9wZXJ0eVdlYmtpdEZpbHRlcikKLSAg
ICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IGtleWZy
YW1lcy5zaXplKCk7ICsraikgewotICAgICAgICAgICAgY29uc3QgRmlsdGVyQW5pbWF0aW9uVmFs
dWUmIGZpbHRlclZhbHVlID0gc3RhdGljX2Nhc3Q8Y29uc3QgRmlsdGVyQW5pbWF0aW9uVmFsdWUm
PihrZXlmcmFtZXMuYXQoaikpOwotICAgICAgICAgICAgY2hlY2tDdXN0b21GaWx0ZXJQcm9ncmFt
UHJveGllcyhmaWx0ZXJWYWx1ZS52YWx1ZSgpKTsKLSAgICAgICAgfQotICAgIH0KLX0KLQotdm9p
ZCBDb29yZGluYXRlZExheWVyVHJlZUhvc3Q6OmNoZWNrQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3hp
ZXMoY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYgZmlsdGVycykKLXsKLSAgICAvLyBXZSBuZWVkIHRv
IGNyZWF0ZSB0aGUgV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5IG9iamVjdHMgYmVmb3JlIHdl
IGdldCB0byBzZXJpYWxpemUgdGhlCi0gICAgLy8gY3VzdG9tIGZpbHRlcnMgdG8gdGhlIG90aGVy
IHByb2Nlc3MuIFRoYXQncyBiZWNhdXNlIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSBuZWVk
cwotICAgIC8vIHRvIGxpbmsgYmFjayB0byB0aGUgY29vcmRpbmF0b3IsIHNvIHRoYXQgd2UgY2Fu
IHNlbmQgYSBtZXNzYWdlIHRvIHRoZSBVSSBwcm9jZXNzIHdoZW4KLSAgICAvLyB0aGUgcHJvZ3Jh
bSBpcyBub3QgbmVlZGVkIGFueW1vcmUuCi0gICAgLy8gTm90ZSB0aGF0IHRoZSBzZXJpYWxpemF0
aW9uIHdpbGwgb25seSBoYXBwZW4gYXQgYSBsYXRlciB0aW1lIGluIEFyZ3VtZW50Q29kZXI8V2Vi
Q29yZTo6RmlsdGVyT3BlcmF0aW9ucz46OmVuY29kZS4KLSAgICAvLyBBdCB0aGF0IHBvaW50IHRo
ZSBwcm9ncmFtIHdpbGwgb25seSBiZSBzZXJpYWxpemVkIG9uY2UuIEFsbCB0aGUgb3RoZXIgdGlt
ZXMgaXQgd2lsbCBvbmx5IHVzZSB0aGUgSUQgb2YgdGhlIHByb2dyYW0uCi0gICAgZm9yIChzaXpl
X3QgaSA9IDA7IGkgPCBmaWx0ZXJzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGNvbnN0IEZpbHRl
ck9wZXJhdGlvbiogb3BlcmF0aW9uID0gZmlsdGVycy5hdChpKTsKLSAgICAgICAgaWYgKG9wZXJh
dGlvbi0+dHlwZSgpICE9IEZpbHRlck9wZXJhdGlvbjo6VkFMSURBVEVEX0NVU1RPTSkKLSAgICAg
ICAgICAgIGNvbnRpbnVlOwotICAgICAgICBjb25zdCBWYWxpZGF0ZWRDdXN0b21GaWx0ZXJPcGVy
YXRpb24qIGN1c3RvbU9wZXJhdGlvbiA9IHN0YXRpY19jYXN0PGNvbnN0IFZhbGlkYXRlZEN1c3Rv
bUZpbHRlck9wZXJhdGlvbio+KG9wZXJhdGlvbik7Ci0gICAgICAgIEFTU0VSVChjdXN0b21PcGVy
YXRpb24tPnZhbGlkYXRlZFByb2dyYW0oKS0+aXNJbml0aWFsaXplZCgpKTsKLSAgICAgICAgVGV4
dHVyZU1hcHBlclBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKiBwcm9ncmFtID0gY3VzdG9tT3BlcmF0
aW9uLT52YWxpZGF0ZWRQcm9ncmFtKCktPnBsYXRmb3JtQ29tcGlsZWRQcm9ncmFtKCk7Ci0KLSAg
ICAgICAgUmVmUHRyPFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eT4gY3VzdG9tRmlsdGVyUHJv
Z3JhbVByb3h5OwotICAgICAgICBpZiAocHJvZ3JhbS0+Y2xpZW50KCkpCi0gICAgICAgICAgICBj
dXN0b21GaWx0ZXJQcm9ncmFtUHJveHkgPSBzdGF0aWNfY2FzdDxXZWJDdXN0b21GaWx0ZXJQcm9n
cmFtUHJveHkqPihwcm9ncmFtLT5jbGllbnQoKSk7Ci0gICAgICAgIGVsc2UgewotICAgICAgICAg
ICAgY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5ID0gV2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5
OjpjcmVhdGUoKTsKLSAgICAgICAgICAgIHByb2dyYW0tPnNldENsaWVudChjdXN0b21GaWx0ZXJQ
cm9ncmFtUHJveHkpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKCFjdXN0b21GaWx0ZXJQcm9n
cmFtUHJveHktPmNsaWVudCgpKSB7Ci0gICAgICAgICAgICBjdXN0b21GaWx0ZXJQcm9ncmFtUHJv
eHktPnNldENsaWVudCh0aGlzKTsKLSAgICAgICAgICAgIG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXMu
YWRkKGN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS5nZXQoKSk7Ci0gICAgICAgICAgICBtX2Nvb3Jk
aW5hdG9yLT5zdGF0ZSgpLmN1c3RvbUZpbHRlcnNUb0NyZWF0ZS5hcHBlbmQoc3RkOjptYWtlX3Bh
aXIoY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LT5pZCgpLCBjdXN0b21PcGVyYXRpb24tPnZhbGlk
YXRlZFByb2dyYW0oKS0+dmFsaWRhdGVkUHJvZ3JhbUluZm8oKSkpOwotICAgICAgICB9IGVsc2Ug
ewotICAgICAgICAgICAgLy8gSWYgdGhlIGNsaWVudCB3YXMgbm90IGRpc2Nvbm5lY3RlZCB0aGVu
IHRoaXMgY29vcmRpbmF0b3IgbXVzdCBiZSB0aGUgY2xpZW50IGZvciBpdC4KLSAgICAgICAgICAg
IEFTU0VSVChjdXN0b21GaWx0ZXJQcm9ncmFtUHJveHktPmNsaWVudCgpID09IHRoaXMpOwotICAg
ICAgICB9Ci0gICAgfQotfQotCi12b2lkIENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6cmVtb3Zl
Q3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSogY3Vz
dG9tRmlsdGVyUHJvZ3JhbVByb3h5KQotewotICAgIC8vIEF0IHRoaXMgdGltZSB0aGUgc2hhZGVy
IGlzIG5vdCBuZWVkZWQgYW55bW9yZSwgc28gd2UgcmVtb3ZlIGl0IGZyb20gb3VyIHNldCBhbmQK
LSAgICAvLyBzZW5kIGEgbWVzc2FnZSB0byB0aGUgb3RoZXIgcHJvY2VzcyB0byBkZWxldGUgaXQu
Ci0gICAgbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5yZW1vdmUoY3VzdG9tRmlsdGVyUHJvZ3JhbVBy
b3h5KTsKLSAgICBtX2Nvb3JkaW5hdG9yLT5zdGF0ZSgpLmN1c3RvbUZpbHRlcnNUb1JlbW92ZS5h
cHBlbmQoY3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5LT5pZCgpKTsKLX0KLQotdm9pZCBDb29yZGlu
YXRlZExheWVyVHJlZUhvc3Q6OmRpc2Nvbm5lY3RDdXN0b21GaWx0ZXJQcm9ncmFtcygpCi17Ci0g
ICAgLy8gTWFrZSBzdXJlIHRoYXQgV2ViQ29yZSB3aWxsIG5vdCBjYWxsIGludG8gdGhpcyBjb29y
ZGluYXRvciBhbnltb3JlLgotICAgIEhhc2hTZXQ8V2ViQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5
Kj46Oml0ZXJhdG9yIGl0ZXIgPSBtX2N1c3RvbUZpbHRlclByb2dyYW1zLmJlZ2luKCk7Ci0gICAg
Zm9yICg7IGl0ZXIgIT0gbV9jdXN0b21GaWx0ZXJQcm9ncmFtcy5lbmQoKTsgKytpdGVyKQotICAg
ICAgICAoKml0ZXIpLT5zZXRDbGllbnQoMCk7Ci19Ci0jZW5kaWYgLy8gRU5BQkxFKENTU19TSEFE
RVJTKQotCiB2b2lkIENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdDo6ZGlkRmx1c2hSb290TGF5ZXIo
KQogewogICAgIGlmIChtX3BhZ2VPdmVybGF5TGF5ZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExh
eWVyVHJlZUhvc3QuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGlu
YXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5oCmluZGV4IDU0NGU4MjguLjUx
MjgxMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9Db29y
ZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdC5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVk
TGF5ZXJUcmVlSG9zdC5oCkBAIC0yOSwxMCArMjksNiBAQAogI2luY2x1ZGUgPFdlYkNvcmUvR3Jh
cGhpY3NMYXllckZhY3RvcnkuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogCi0jaWYgRU5B
QkxFKENTU19TSEFERVJTKQotI2luY2x1ZGUgIldlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eS5o
IgotI2VuZGlmCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIENvb3JkaW5hdGVkU3VyZmFj
ZTsKIH0KQEAgLTQyLDkgKzM4LDYgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiBjbGFzcyBXZWJQYWdl
OwogCiBjbGFzcyBDb29yZGluYXRlZExheWVyVHJlZUhvc3QgOiBwdWJsaWMgTGF5ZXJUcmVlSG9z
dCwgcHVibGljIFdlYkNvcmU6OkNvbXBvc2l0aW5nQ29vcmRpbmF0b3I6OkNsaWVudAotI2lmIEVO
QUJMRShDU1NfU0hBREVSUykKLSAgICAsIFdlYkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eUNsaWVu
dAotI2VuZGlmCiB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8Q29vcmRpbmF0ZWRM
YXllclRyZWVIb3N0PiBjcmVhdGUoV2ViUGFnZSopOwpAQCAtMTAzLDMxICs5NiwxNiBAQCBwcml2
YXRlOgogCiAgICAgLy8gQ29tcG9zaXRpbmdDb29yZGluYXRvcjo6Q2xpZW50CiAgICAgdmlydHVh
bCB2b2lkIGRpZEZsdXNoUm9vdExheWVyKCkgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIHdp
bGxTeW5jTGF5ZXJTdGF0ZShXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzTGF5ZXJTdGF0ZSYp
IG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlGbHVzaFJlcXVpcmVkKCkgb3ZlcnJp
ZGUgeyBzY2hlZHVsZUxheWVyRmx1c2goKTsgfTsKICAgICB2aXJ0dWFsIHZvaWQgY29tbWl0U2Nl
bmVTdGF0ZShjb25zdCBXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUmKSBvdmVycmlk
ZTsKICAgICB2aXJ0dWFsIHZvaWQgcGFpbnRMYXllckNvbnRlbnRzKGNvbnN0IFdlYkNvcmU6Okdy
YXBoaWNzTGF5ZXIqLCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQmLCBjb25zdCBXZWJDb3JlOjpJ
bnRSZWN0JiBjbGlwUmVjdCkgb3ZlcnJpZGU7CiAKLSNpZiBFTkFCTEUoQ1NTX1NIQURFUlMpCi0g
ICAgdm9pZCBwcmVwYXJlQ3VzdG9tRmlsdGVyUHJveGllc0ZvckFuaW1hdGlvbnMoV2ViQ29yZTo6
R3JhcGhpY3NMYXllckFuaW1hdGlvbnMmKTsKLQotICAgIC8vIFdlYkN1c3RvbUZpbHRlclByb2dy
YW1Qcm94eUNsaWVudAotICAgIHZvaWQgcmVtb3ZlQ3VzdG9tRmlsdGVyUHJvZ3JhbVByb3h5KFdl
YkN1c3RvbUZpbHRlclByb2dyYW1Qcm94eSopOwotCi0gICAgdm9pZCBjaGVja0N1c3RvbUZpbHRl
clByb2dyYW1Qcm94aWVzKGNvbnN0IFdlYkNvcmU6OkZpbHRlck9wZXJhdGlvbnMmKTsKLSAgICB2
b2lkIGRpc2Nvbm5lY3RDdXN0b21GaWx0ZXJQcm9ncmFtcygpOwotI2VuZGlmCi0KICAgICBzdGQ6
OnVuaXF1ZV9wdHI8V2ViQ29yZTo6Q29tcG9zaXRpbmdDb29yZGluYXRvcj4gbV9jb29yZGluYXRv
cjsKIAogICAgIC8vIFRoZSBwYWdlIG92ZXJsYXkgbGF5ZXIuIFdpbGwgYmUgbnVsbCBpZiB0aGVy
ZSdzIG5vIHBhZ2Ugb3ZlcmxheS4KICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6R3JhcGhp
Y3NMYXllcj4gbV9wYWdlT3ZlcmxheUxheWVyOwogICAgIFJlZlB0cjxQYWdlT3ZlcmxheT4gbV9w
YWdlT3ZlcmxheTsKIAotI2lmIEVOQUJMRShDU1NfU0hBREVSUykKLSAgICBIYXNoU2V0PFdlYkN1
c3RvbUZpbHRlclByb2dyYW1Qcm94eSo+IG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXM7Ci0jZW5kaWYK
LQogICAgIGJvb2wgbV9ub3RpZnlBZnRlclNjaGVkdWxlZExheWVyRmx1c2g7CiAgICAgYm9vbCBt
X2lzVmFsaWQ7CiAgICAgYm9vbCBtX2lzU3VzcGVuZGVkOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDY2ZGVlOGIuLmVkZjUxZDYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTI0ODEs
NyArMjQ4MSw2IEBAIHZvaWQgV2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJl
ZmVyZW5jZXNTdG9yZSYgc3RvcmUpCiAgICAgc2V0dGluZ3Muc2V0U2hvd1JlcGFpbnRDb3VudGVy
KHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6Y29tcG9zaXRpbmdS
ZXBhaW50Q291bnRlcnNWaXNpYmxlS2V5KCkpKTsKICAgICBzZXR0aW5ncy5zZXRTaG93VGlsZWRT
Y3JvbGxpbmdJbmRpY2F0b3Ioc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2Vz
S2V5Ojp0aWxlZFNjcm9sbGluZ0luZGljYXRvclZpc2libGVLZXkoKSkpOwogICAgIHNldHRpbmdz
LnNldEFnZ3Jlc3NpdmVUaWxlUmV0ZW50aW9uRW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JL
ZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmFnZ3Jlc3NpdmVUaWxlUmV0ZW50aW9uRW5hYmxlZEtleSgp
KSk7Ci0gICAgc2V0dGluZ3Muc2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChzdG9yZS5nZXRCb29s
VmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmNzc0N1c3RvbUZpbHRlckVuYWJsZWRLZXko
KSkpOwogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0Q1NT
UmVnaW9uc0VuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5
Ojpjc3NSZWdpb25zRW5hYmxlZEtleSgpKSk7CiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6
c2hhcmVkRmVhdHVyZXMoKS5zZXRDU1NDb21wb3NpdGluZ0VuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZh
bHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5Ojpjc3NDb21wb3NpdGluZ0VuYWJsZWRLZXkoKSkp
OwogICAgIHNldHRpbmdzLnNldENTU0dyaWRMYXlvdXRFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1
ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6Y3NzR3JpZExheW91dEVuYWJsZWRLZXkoKSkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvbWFjL1dlYktpdDIub3JkZXIgYi9Tb3VyY2UvV2Vi
S2l0Mi9tYWMvV2ViS2l0Mi5vcmRlcgppbmRleCA5ZGY5NDA1Li5lZjU1ZWU4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9tYWMvV2ViS2l0Mi5vcmRlcgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9t
YWMvV2ViS2l0Mi5vcmRlcgpAQCAtMTg5LDcgKzE4OSw2IEBAIF9fWk42V2ViS2l0MTdXZWJQcmVm
ZXJlbmNlc0tleTMxY2FudmFzVXNlc0FjY2VsZXJhdGVkRHJhd2luZ0tleUV2CiBfX1pONldlYktp
dDE3V2ViUHJlZmVyZW5jZXNLZXkyOGNvbXBvc2l0aW5nQm9yZGVyc1Zpc2libGVLZXlFdgogX19a
TjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5MzZjb21wb3NpdGluZ1JlcGFpbnRDb3VudGVyc1Zp
c2libGVLZXlFdgogX19aTjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5MzN0aWxlZFNjcm9sbGlu
Z0luZGljYXRvclZpc2libGVLZXlFdgotX19aTjZXZWJLaXQxN1dlYlByZWZlcmVuY2VzS2V5MjVj
c3NDdXN0b21GaWx0ZXJFbmFibGVkS2V5RXYKIF9fWk42V2ViS2l0MTdXZWJQcmVmZXJlbmNlc0tl
eTE1d2ViR0xFbmFibGVkS2V5RXYKIF9fWk42V2ViS2l0MTdXZWJQcmVmZXJlbmNlc0tleTI4bXVs
dGl0aHJlYWRlZFdlYkdMRW5hYmxlZEtleUV2CiBfX1pONldlYktpdDE3V2ViUHJlZmVyZW5jZXNL
ZXkzMGZvcmNlU29mdHdhcmVXZWJHTFJlbmRlcmluZ0tleUV2CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
YXV0b3Rvb2xzL0ZpbmREZXBlbmRlbmNpZXMubTQgYi9Tb3VyY2UvYXV0b3Rvb2xzL0ZpbmREZXBl
bmRlbmNpZXMubTQKaW5kZXggZWZjMmRiMy4uNGJlOGE4ZCAxMDA2NDQKLS0tIGEvU291cmNlL2F1
dG90b29scy9GaW5kRGVwZW5kZW5jaWVzLm00CisrKyBiL1NvdXJjZS9hdXRvdG9vbHMvRmluZERl
cGVuZGVuY2llcy5tNApAQCAtMzQwLDEzICszNDAsMTEgQEAgaWYgdGVzdCAiJGVuYWJsZV9vcGNv
ZGVfc3RhdHMiID0gInllcyI7IHRoZW4KICAgICBmaQogZmkKIAotIyBFbmFibGUgQ1NTIEZpbHRl
cnMgYW5kIFNoYWRlcnMgaWYgYWNjZWxlcmF0ZWRfY29tcG9zaXRpbmcgaXMgdHVybmVkIG9uLgor
IyBFbmFibGUgQ1NTIEZpbHRlcnMgaWYgYWNjZWxlcmF0ZWRfY29tcG9zaXRpbmcgaXMgdHVybmVk
IG9uLgogZW5hYmxlX2Nzc19maWx0ZXJzPW5vOwotZW5hYmxlX2Nzc19zaGFkZXJzPW5vOwotQUNf
TVNHX0NIRUNLSU5HKFt3aGV0aGVyIHRvIGVuYWJsZSBDU1MgRmlsdGVycyBhbmQgU2hhZGVyc10p
CitBQ19NU0dfQ0hFQ0tJTkcoW3doZXRoZXIgdG8gZW5hYmxlIENTUyBGaWx0ZXJzXSkKIGlmIHRl
c3QgIiRlbmFibGVfYWNjZWxlcmF0ZWRfY29tcG9zaXRpbmciID0gInllcyIgJiYgdGVzdCAiJGZv
dW5kX29wZW5nbCIgPSAieWVzIjsgdGhlbgogICAgIGVuYWJsZV9jc3NfZmlsdGVycz15ZXM7Ci0g
ICAgZW5hYmxlX2Nzc19zaGFkZXJzPXllczsKIGZpCiBBQ19NU0dfUkVTVUxUKFskZW5hYmxlX2Nz
c19maWx0ZXJzXSkKIApkaWZmIC0tZ2l0IGEvU291cmNlL2F1dG90b29scy9TZXR1cFdlYktpdEZl
YXR1cmVzLm00IGIvU291cmNlL2F1dG90b29scy9TZXR1cFdlYktpdEZlYXR1cmVzLm00CmluZGV4
IDllODUzYmEuLjlkNmFiNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9hdXRvdG9vbHMvU2V0dXBXZWJL
aXRGZWF0dXJlcy5tNAorKysgYi9Tb3VyY2UvYXV0b3Rvb2xzL1NldHVwV2ViS2l0RmVhdHVyZXMu
bTQKQEAgLTI5LDEyICsyOSw2IEBAIGVsc2UKICAgICBDT05GSUdVUkFCTEVfRkVBVFVSRV9ERUZJ
TkVTPSIkQ09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUyBFTkFCTEVfVklERU89MCIKIGZpCiAK
LWlmIHRlc3QgIiRlbmFibGVfY3NzX3NoYWRlcnMiID0gInllcyI7IHRoZW4KLSAgICBDT05GSUdV
UkFCTEVfRkVBVFVSRV9ERUZJTkVTPSIkQ09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUyBFTkFC
TEVfQ1NTX1NIQURFUlM9MSIKLWVsc2UKLSAgICBDT05GSUdVUkFCTEVfRkVBVFVSRV9ERUZJTkVT
PSIkQ09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUyBFTkFCTEVfQ1NTX1NIQURFUlM9MCIKLWZp
Ci0KIGlmIHRlc3QgIiRlbmFibGVfY3NzX2ZpbHRlcnMiID0gInllcyI7IHRoZW4KICAgICBDT05G
SUdVUkFCTEVfRkVBVFVSRV9ERUZJTkVTPSIkQ09ORklHVVJBQkxFX0ZFQVRVUkVfREVGSU5FUyBF
TkFCTEVfQ1NTX0ZJTFRFUlM9MSIKIGVsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9XZWJL
aXRGZWF0dXJlcy5jbWFrZSBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQppbmRl
eCA5MjM4MmJkLi5iMDY3Yjk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVy
ZXMuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCkBAIC0zNSw3
ICszNSw2IEBAIG1hY3JvKFdFQktJVF9PUFRJT05fQkVHSU4pCiAgICAgV0VCS0lUX09QVElPTl9E
RUZJTkUoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OICJUb2dnbGUgQ1NTIGltYWdlLXJlc29s
dXRpb24gc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9DU1Nf
SU1BR0VfU0VUICJUb2dnbGUgQ1NTIGltYWdlLXNldCBzdXBwb3J0IiBPRkYpCiAgICAgV0VCS0lU
X09QVElPTl9ERUZJTkUoRU5BQkxFX0NTU19SRUdJT05TICJUb2dnbGUgQ1NTIHJlZ2lvbnMgc3Vw
cG9ydCIgT0ZGKQotICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9DU1NfU0hBREVSUyAi
VG9nZ2xlIENTUyBTaGFkZXJzICh3aXRoaW4gQ1NTIEZpbHRlcnMpIHN1cHBvcnQiIE9GRikKICAg
ICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfQ1NTX1NIQVBFUyAiVG9nZ2xlIENTUyBTaGFw
ZXMgc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9DU1NfU1RJ
Q0tZX1BPU0lUSU9OICJUb2dnbGUgQ1NTIHN0aWNreSBwb3NpdGlvbiBzdXBwb3J0IiBPRkYpCiAg
ICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNf
VU5QUkVGSVhFRCAiVG9nZ2xlIHN1cHBvcnQgZm9yIHVucHJlZml4ZWQgQ1NTIGFuaW1hdGlvbnMg
YW5kIHRyYW5zZm9ybXMiIE9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlY29uZmlnLmguY21h
a2UgYi9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZQppbmRleCAwNjEyOTlhLi42NGUyNDZiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2Vj
b25maWcuaC5jbWFrZQpAQCAtMjQsNyArMjQsNiBAQAogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX0NT
U19JTUFHRV9SRVNPTFVUSU9OCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfQ1NTX0lNQUdFX1NFVAog
I2NtYWtlZGVmaW5lMDEgRU5BQkxFX0NTU19SRUdJT05TCi0jY21ha2VkZWZpbmUwMSBFTkFCTEVf
Q1NTX1NIQURFUlMKICNjbWFrZWRlZmluZTAxIEVOQUJMRV9DU1NfU0hBUEVTCiAjY21ha2VkZWZp
bmUwMSBFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTgogI2NtYWtlZGVmaW5lMDEgRU5BQkxFX0NT
U19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVU5QUkVGSVhFRApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hh
bmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGI3ZmNlOGMuLjQ5MDIwYTcgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBA
QAorMjAxNC0wMS0yMyAgTWF4IFZ1am92aWMgIDxtdnVqb3ZpY0BhZG9iZS5jb20+CisKKyAgICAg
ICAgUmVtb3ZlIENTUyBDdXN0b20gRmlsdGVycyBjb2RlIGFuZCB0ZXN0cworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI3MzgyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZ3RrL0R1
bXBSZW5kZXJUcmVlLmNwcDoKKyAgICAgICAgKHJlc2V0RGVmYXVsdHNUb0NvbnNpc3RlbnRWYWx1
ZXMpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2d0ay9UZXN0UnVubmVyR3RrLmNwcDoKKyAg
ICAgICAgKFRlc3RSdW5uZXI6Om92ZXJyaWRlUHJlZmVyZW5jZSk6CisKIDIwMTQtMDEtMjMgIHBl
YXZvQG91dGxvb2suY29tICA8cGVhdm9Ab3V0bG9vay5jb20+CiAKICAgICAgICAgW0N1cmxdIFRo
ZXJlIGlzIG5vIHdheSB0byBzcGVjaWZ5IGNhY2hlIGZvbGRlci4KZGlmZiAtLWdpdCBhL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL2d0ay9EdW1wUmVuZGVyVHJlZS5jcHAgYi9Ub29scy9EdW1wUmVuZGVy
VHJlZS9ndGsvRHVtcFJlbmRlclRyZWUuY3BwCmluZGV4IDA0MzMzNWEuLmY1NTc3YWEgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9EdW1wUmVuZGVyVHJlZS5jcHAKKysrIGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL0R1bXBSZW5kZXJUcmVlLmNwcApAQCAtNTQzLDcgKzU0
Myw2IEBAIHN0YXRpYyB2b2lkIHJlc2V0RGVmYXVsdHNUb0NvbnNpc3RlbnRWYWx1ZXMoKQogCiAg
ICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRDU1NHcmlkTGF5b3V0RW5hYmxlZCh3ZWJW
aWV3LCBmYWxzZSk7CiAgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpzZXRDU1NSZWdpb25z
RW5hYmxlZCh3ZWJWaWV3LCB0cnVlKTsKLSAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGs6OnNl
dENTU0N1c3RvbUZpbHRlckVuYWJsZWQod2ViVmlldywgZmFsc2UpOwogICAgIER1bXBSZW5kZXJU
cmVlU3VwcG9ydEd0azo6c2V0RXhwZXJpbWVudGFsQ29udGVudFNlY3VyaXR5UG9saWN5RmVhdHVy
ZXNFbmFibGVkKHRydWUpOwogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEd0azo6c2V0U2VhbWxl
c3NJRnJhbWVzRW5hYmxlZCh0cnVlKTsKICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGs6OnNl
dFNoYWRvd0RPTUVuYWJsZWQodHJ1ZSk7CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9ndGsvVGVzdFJ1bm5lckd0ay5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9ndGsvVGVzdFJ1
bm5lckd0ay5jcHAKaW5kZXggYTdjMzk3ZS4uYzBiMmRlYyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvZ3RrL1Rlc3RSdW5uZXJHdGsuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL2d0ay9UZXN0UnVubmVyR3RrLmNwcApAQCAtNzAzLDkgKzcwMyw2IEBAIHZvaWQgVGVzdFJ1
bm5lcjo6b3ZlcnJpZGVQcmVmZXJlbmNlKEpTU3RyaW5nUmVmIGtleSwgSlNTdHJpbmdSZWYgdmFs
dWUpCiAgICAgfSBlbHNlIGlmIChnX3N0cl9lcXVhbChvcmlnaW5hbE5hbWUuZ2V0KCksICJXZWJL
aXRDU1NSZWdpb25zRW5hYmxlZCIpKSB7CiAgICAgICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEd0
azo6c2V0Q1NTUmVnaW9uc0VuYWJsZWQod2Via2l0X3dlYl9mcmFtZV9nZXRfd2ViX3ZpZXcobWFp
bkZyYW1lKSwgYm9vbGVhbkZyb21WYWx1ZSh2YWx1ZUFzU3RyaW5nLmdldCgpKSk7CiAgICAgICAg
IHJldHVybjsKLSAgICB9IGVsc2UgaWYgKGdfc3RyX2VxdWFsKG9yaWdpbmFsTmFtZS5nZXQoKSwg
IldlYktpdENTU0N1c3RvbUZpbHRlckVuYWJsZWQiKSkgewotICAgICAgICBEdW1wUmVuZGVyVHJl
ZVN1cHBvcnRHdGs6OnNldENTU0N1c3RvbUZpbHRlckVuYWJsZWQod2Via2l0X3dlYl9mcmFtZV9n
ZXRfd2ViX3ZpZXcobWFpbkZyYW1lKSwgYm9vbGVhbkZyb21WYWx1ZSh2YWx1ZUFzU3RyaW5nLmdl
dCgpKSk7Ci0gICAgICAgIHJldHVybjsKICAgICB9IGVsc2UgewogICAgICAgICBmcHJpbnRmKHN0
ZGVyciwgIlRlc3RSdW5uZXI6Om92ZXJyaWRlUHJlZmVyZW5jZSB0cmllZCB0byBvdmVycmlkZSAi
CiAgICAgICAgICAgICAgICAgInVua25vd24gcHJlZmVyZW5jZSAnJXMnLlxuIiwgb3JpZ2luYWxO
YW1lLmdldCgpKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>